Notice: load_plugin_textdomain was called with an argument that is deprecated since version 2.7.0 with no alternative available. in /home/graphkds/public_html/wp-includes/functions.php on line 4874
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/graphkds/public_html/wp-includes/functions.php:4874) in /home/graphkds/public_html/wp-content/plugins/wordpress-newsletter/newsletter.php on line 29
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/graphkds/public_html/wp-includes/functions.php:4874) in /home/graphkds/public_html/wp-content/plugins/wordpress-newsletter/newsletter.php on line 29
Notice: register_sidebar_widget is deprecated since version 2.8.0! Use wp_register_sidebar_widget() instead. in /home/graphkds/public_html/wp-includes/functions.php on line 4654
Notice: register_widget_control is deprecated since version 2.8.0! Use wp_register_widget_control() instead. in /home/graphkds/public_html/wp-includes/functions.php on line 4654
Notice: The called constructor method for WP_Widget in mycategoryorder_Widget is deprecated since version 4.3.0! Use __construct()
instead. in /home/graphkds/public_html/wp-includes/functions.php on line 4724
/* PWA v0.4.0-front */
/* Source wp-base-config: */
!function(){"use strict";try{self["workbox:sw:5.1.2"]&&_()}catch(t){}const t={backgroundSync:"background-sync",broadcastUpdate:"broadcast-update",cacheableResponse:"cacheable-response",core:"core",expiration:"expiration",googleAnalytics:"offline-ga",navigationPreload:"navigation-preload",precaching:"precaching",rangeRequests:"range-requests",routing:"routing",strategies:"strategies",streams:"streams"};self.workbox=new class{constructor(){return this.v={},this.t={debug:"localhost"===self.location.hostname,modulePathPrefix:null,modulePathCb:null},this.s=this.t.debug?"dev":"prod",this.o=!1,new Proxy(this,{get(e,s){if(e[s])return e[s];const o=t[s];return o&&e.loadModule(`workbox-${o}`),e[s]}})}setConfig(t={}){if(this.o)throw new Error("Config must be set before accessing workbox.* modules");Object.assign(this.t,t),this.s=this.t.debug?"dev":"prod"}loadModule(t){const e=this.i(t);try{importScripts(e),this.o=!0}catch(s){throw console.error(`Unable to import module '${t}' from '${e}'.`),s}}i(t){if(this.t.modulePathCb)return this.t.modulePathCb(t,this.t.debug);let e=["https://storage.googleapis.com/workbox-cdn/releases/5.1.2"];const s=`${t}.${this.s}.js`,o=this.t.modulePathPrefix;return o&&(e=o.split("/"),""===e[e.length-1]&&e.splice(e.length-1,1)),e.push(s),e.join("/")}}}();
workbox.setConfig( {
"debug": false,
"modulePathPrefix": "https://www.kdsgraphics.in/wp-content/plugins/pwa/wp-includes/js/workbox-v5.1.2/"
} );
workbox.core.setCacheNameDetails( {
"prefix": "wp-/",
"precache": "precache-front",
"suffix": "v1"
} );
workbox.core.skipWaiting();
/* global workbox */
/**
* Handle registering caching strategies.
*/
if (!self.wp) {
self.wp = {};
}
wp.serviceWorker = workbox;
// Skip the waiting phase for the Service Worker.
self.addEventListener("message", function (event) {
if ("skipWaiting" === event.data.action) {
self.skipWaiting();
}
});
/* Source wp-precaching-routes: */
// IIFE is used for lexical scoping instead of just a braces block due to bug in Safari.
(() => {
wp.serviceWorker.precaching.precache([
{
"url": "https://www.kdsgraphics.in/?wp_error_template=offline",
"revision": "0.4.0;Avada=6.2.2;Avada-Child-Theme=1.0.0;user=0;options=b244107a547c65621d518cb7942ade6e;nav=2e1e52a238543fe49be7f6d93e005b6e;deps=30ab1d7b905b6ab39f2c9b3b6eeccd24;3190ee06a2a2aee9c8dd099d1c8836aa"
},
{
"url": "https://www.kdsgraphics.in/?wp_error_template=500",
"revision": "0.4.0;Avada=6.2.2;Avada-Child-Theme=1.0.0;user=0;options=b244107a547c65621d518cb7942ade6e;nav=2e1e52a238543fe49be7f6d93e005b6e;deps=30ab1d7b905b6ab39f2c9b3b6eeccd24;bd3033014f89642bd4a2e5ddd9211ec2"
}
]);
// @todo Should not these parameters be specific to each entry as opposed to all entries?
// @todo Should not the strategy be tied to each entry as well?
// @todo Use networkFirst instead of cacheFirst when WP_DEBUG.
wp.serviceWorker.precaching.addRoute({
ignoreUrlParametersMatching: [/^utm_/, /^wp-mce-/, /^ver$/],
// @todo Add urlManipulation which allows for the list of ignoreUrlParametersMatching to be supplied with each entry.
});
})();
/* Source amp-cdn-runtime-caching: */
// See AMP_Service_Workers::add_amp_runtime_caching() and .
{
self.addEventListener( 'install', ( event ) => {
event.waitUntil(
caches.open( wp.serviceWorker.core.cacheNames.runtime ).then( ( cache ) => cache.addAll( ["https:\/\/cdn.ampproject.org\/v0.js","https:\/\/cdn.ampproject.org\/v0\/amp-bind-0.1.js","https:\/\/cdn.ampproject.org\/v0\/amp-form-0.1.js","https:\/\/cdn.ampproject.org\/v0\/amp-install-serviceworker-0.1.js"] ) ),
);
} );
}
/* Source wp-offline-commenting: */
// IIFE is used for lexical scoping instead of just a braces block due to bug with const in Safari.
(() => {
const queue = new wp.serviceWorker.backgroundSync.Queue("wpPendingComments");
const errorMessages = {
"clientOffline": "It seems you are offline. Please check your internet connection and try again.",
"serverOffline": "The server appears to be down. Please try again later.",
"error": "Something prevented the page from being rendered. Please try again.",
"comment": "Your comment will be submitted once you are back online!"
};
const commentHandler = ({ event }) => {
const clone = event.request.clone();
return fetch(event.request)
.then((response) => {
if (response.status < 500) {
return response;
}
// @todo This is duplicated with code in service-worker-navigation-routing.js.
return response.text().then(function (errorText) {
return caches
.match(wp.serviceWorker.precaching.getCacheKeyForURL("https://www.kdsgraphics.in/?wp_error_template=500"))
.then(function (errorResponse) {
if (!errorResponse) {
return response;
}
return errorResponse.text().then(function (text) {
const init = {
status: errorResponse.status,
statusText: errorResponse.statusText,
headers: errorResponse.headers,
};
let body = text.replace(
/[<]!--WP_SERVICE_WORKER_ERROR_MESSAGE-->/,
errorMessages.error
);
body = body.replace(
/([<]!--WP_SERVICE_WORKER_ERROR_TEMPLATE_BEGIN-->)((?:.|\n)+?)([<]!--WP_SERVICE_WORKER_ERROR_TEMPLATE_END-->)/,
(details) => {
if (!errorText) {
return ""; // Remove the details from the document entirely.
}
const src = "data:text/html;base64," + btoa(errorText); // The errorText encoded as a text/html data URL.
const srcdoc = errorText
.replace(/&/g, "&")
.replace(/'/g, "'")
.replace(/"/g, """)
.replace(//g, ">");
const iframe = ``;
details = details.replace(
"{{{error_details_iframe}}}",
iframe
);
// The following are in case the user wants to include the