????
Current Path : C:/inetpub/vhost/dbadm.gdtsolutions.vn/web/ |
Current File : C:/inetpub/vhost/dbadm.gdtsolutions.vn/web/service-worker.js |
/*! For license information please see license.txt */ (()=>{"use strict";var e={222:()=>{try{self["workbox:cacheable-response:7.0.0"]&&_()}catch(e){}},181:()=>{try{self["workbox:core:7.0.0"]&&_()}catch(e){}},379:()=>{try{self["workbox:expiration:7.0.0"]&&_()}catch(e){}},626:()=>{try{self["workbox:precaching:7.0.0"]&&_()}catch(e){}},576:()=>{try{self["workbox:routing:7.0.0"]&&_()}catch(e){}},775:()=>{try{self["workbox:strategies:7.0.0"]&&_()}catch(e){}}},t={};function __webpack_require__(r){var s=t[r];if(void 0!==s)return s.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,__webpack_require__),a.exports}(()=>{__webpack_require__(181);const messageGenerator=(e,...t)=>{let r=e;return t.length>0&&(r+=` :: ${JSON.stringify(t)}`),r};class WorkboxError_WorkboxError extends Error{constructor(e,t){super(messageGenerator(e,t)),this.name=e,this.details=t}}const getFriendlyURL=e=>new URL(String(e),location.href).href.replace(new RegExp(`^${location.origin}`),"");__webpack_require__(222);class CacheableResponse{constructor(e={}){this._statuses=e.statuses,this._headers=e.headers}isResponseCacheable(e){let t=!0;return this._statuses&&(t=this._statuses.includes(e.status)),this._headers&&t&&(t=Object.keys(this._headers).some((t=>e.headers.get(t)===this._headers[t]))),t}}class CacheableResponsePlugin{constructor(e){this.cacheWillUpdate=async({response:e})=>this._cacheableResponse.isResponseCacheable(e)?e:null,this._cacheableResponse=new CacheableResponse(e)}}const e=new Set;const t={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!=typeof registration?registration.scope:""},_createCacheName=e=>[t.prefix,e,t.suffix].filter((e=>e&&e.length>0)).join("-"),cacheNames_cacheNames_getGoogleAnalyticsName=e=>e||_createCacheName(t.googleAnalytics),cacheNames_cacheNames_getPrecacheName=e=>e||_createCacheName(t.precache),cacheNames_cacheNames_getPrefix=()=>t.prefix,cacheNames_cacheNames_getRuntimeName=e=>e||_createCacheName(t.runtime),cacheNames_cacheNames_getSuffix=()=>t.suffix;function stripParams(e,t){const r=new URL(e);for(const e of t)r.searchParams.delete(e);return r.href}let r;function dontWaitFor(e){e.then((()=>{}))}class Deferred{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}function timeout_timeout(e){return new Promise((t=>setTimeout(t,e)))}function waitUntil(e,t){const r=t();return e.waitUntil(r),r}const s={get googleAnalytics(){return cacheNames_cacheNames_getGoogleAnalyticsName()},get precache(){return cacheNames_cacheNames_getPrecacheName()},get prefix(){return cacheNames_cacheNames_getPrefix()},get runtime(){return cacheNames_cacheNames_getRuntimeName()},get suffix(){return cacheNames_cacheNames_getSuffix()}};async function copyResponse(e,t){let s=null;if(e.url){s=new URL(e.url).origin}if(s!==self.location.origin)throw new WorkboxError_WorkboxError("cross-origin-copy-response",{origin:s});const a=e.clone(),n={headers:new Headers(a.headers),status:a.status,statusText:a.statusText},i=t?t(n):n,o=function canConstructResponseFromBodyStream(){if(void 0===r){const e=new Response("");if("body"in e)try{new Response(e.body),r=!0}catch(e){r=!1}r=!1}return r}()?a.body:await a.blob();return new Response(o,i)}const instanceOfAny=(e,t)=>t.some((t=>e instanceof t));let a,n;const i=new WeakMap,o=new WeakMap,c=new WeakMap,h=new WeakMap,l=new WeakMap;let u={get(e,t,r){if(e instanceof IDBTransaction){if("done"===t)return o.get(e);if("objectStoreNames"===t)return e.objectStoreNames||c.get(e);if("store"===t)return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return wrap(e[t])},set:(e,t,r)=>(e[t]=r,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function wrapFunction(e){return e!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?function getCursorAdvanceMethods(){return n||(n=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}().includes(e)?function(...t){return e.apply(unwrap(this),t),wrap(i.get(this))}:function(...t){return wrap(e.apply(unwrap(this),t))}:function(t,...r){const s=e.call(unwrap(this),t,...r);return c.set(s,t.sort?t.sort():[t]),wrap(s)}}function transformCachableValue(e){return"function"==typeof e?wrapFunction(e):(e instanceof IDBTransaction&&function cacheDonePromiseForTransaction(e){if(o.has(e))return;const t=new Promise(((t,r)=>{const unlisten=()=>{e.removeEventListener("complete",complete),e.removeEventListener("error",error),e.removeEventListener("abort",error)},complete=()=>{t(),unlisten()},error=()=>{r(e.error||new DOMException("AbortError","AbortError")),unlisten()};e.addEventListener("complete",complete),e.addEventListener("error",error),e.addEventListener("abort",error)}));o.set(e,t)}(e),instanceOfAny(e,function getIdbProxyableTypes(){return a||(a=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}())?new Proxy(e,u):e)}function wrap(e){if(e instanceof IDBRequest)return function promisifyRequest(e){const t=new Promise(((t,r)=>{const unlisten=()=>{e.removeEventListener("success",success),e.removeEventListener("error",error)},success=()=>{t(wrap(e.result)),unlisten()},error=()=>{r(e.error),unlisten()};e.addEventListener("success",success),e.addEventListener("error",error)}));return t.then((t=>{t instanceof IDBCursor&&i.set(t,e)})).catch((()=>{})),l.set(t,e),t}(e);if(h.has(e))return h.get(e);const t=transformCachableValue(e);return t!==e&&(h.set(e,t),l.set(t,e)),t}const unwrap=e=>l.get(e);const d=["get","getKey","getAll","getAllKeys","count"],p=["put","add","delete","clear"],f=new Map;function getMethod(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(f.get(t))return f.get(t);const r=t.replace(/FromIndex$/,""),s=t!==r,a=p.includes(r);if(!(r in(s?IDBIndex:IDBObjectStore).prototype)||!a&&!d.includes(r))return;const method=async function(e,...t){const n=this.transaction(e,a?"readwrite":"readonly");let i=n.store;return s&&(i=i.index(t.shift())),(await Promise.all([i[r](...t),a&&n.done]))[0]};return f.set(t,method),method}!function replaceTraps(e){u=e(u)}((e=>({...e,get:(t,r,s)=>getMethod(t,r)||e.get(t,r,s),has:(t,r)=>!!getMethod(t,r)||e.has(t,r)})));__webpack_require__(379);const g="cache-entries",normalizeURL=e=>{const t=new URL(e,location.href);return t.hash="",t.href};class CacheTimestampsModel{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(g,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&function deleteDB(e,{blocked:t}={}){const r=indexedDB.deleteDatabase(e);return t&&r.addEventListener("blocked",(e=>t(e.oldVersion,e))),wrap(r).then((()=>{}))}(this._cacheName)}async setTimestamp(e,t){const r={url:e=normalizeURL(e),timestamp:t,cacheName:this._cacheName,id:this._getId(e)},s=(await this.getDb()).transaction(g,"readwrite",{durability:"relaxed"});await s.store.put(r),await s.done}async getTimestamp(e){const t=await this.getDb(),r=await t.get(g,this._getId(e));return null==r?void 0:r.timestamp}async expireEntries(e,t){const r=await this.getDb();let s=await r.transaction(g).store.index("timestamp").openCursor(null,"prev");const a=[];let n=0;for(;s;){const r=s.value;r.cacheName===this._cacheName&&(e&&r.timestamp<e||t&&n>=t?a.push(s.value):n++),s=await s.continue()}const i=[];for(const e of a)await r.delete(g,e.id),i.push(e.url);return i}_getId(e){return this._cacheName+"|"+normalizeURL(e)}async getDb(){return this._db||(this._db=await function openDB(e,t,{blocked:r,upgrade:s,blocking:a,terminated:n}={}){const i=indexedDB.open(e,t),o=wrap(i);return s&&i.addEventListener("upgradeneeded",(e=>{s(wrap(i.result),e.oldVersion,e.newVersion,wrap(i.transaction),e)})),r&&i.addEventListener("blocked",(e=>r(e.oldVersion,e.newVersion,e))),o.then((e=>{n&&e.addEventListener("close",(()=>n())),a&&e.addEventListener("versionchange",(e=>a(e.oldVersion,e.newVersion,e)))})).catch((()=>{})),o}("workbox-expiration",1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class CacheExpiration{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new CacheTimestampsModel(e)}async expireEntries(){if(this._isRunning)return void(this._rerunRequested=!0);this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-1e3*this._maxAgeSeconds:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),r=await self.caches.open(this._cacheName);for(const e of t)await r.delete(e,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,dontWaitFor(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),r=Date.now()-1e3*this._maxAgeSeconds;return void 0===t||t<r}return!1}async delete(){this._rerunRequested=!1,await this._timestampModel.expireEntries(1/0)}}class ExpirationPlugin{constructor(t={}){this.cachedResponseWillBeUsed=async({event:e,request:t,cacheName:r,cachedResponse:s})=>{if(!s)return null;const a=this._isResponseDateFresh(s),n=this._getCacheExpiration(r);dontWaitFor(n.expireEntries());const i=n.updateTimestamp(t.url);if(e)try{e.waitUntil(i)}catch(e){0}return a?s:null},this.cacheDidUpdate=async({cacheName:e,request:t})=>{const r=this._getCacheExpiration(e);await r.updateTimestamp(t.url),await r.expireEntries()},this._config=t,this._maxAgeSeconds=t.maxAgeSeconds,this._cacheExpirations=new Map,t.purgeOnQuotaError&&function registerQuotaErrorCallback(t){e.add(t)}((()=>this.deleteCacheAndMetadata()))}_getCacheExpiration(e){if(e===cacheNames_cacheNames_getRuntimeName())throw new WorkboxError_WorkboxError("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new CacheExpiration(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);if(null===t)return!0;return t>=Date.now()-1e3*this._maxAgeSeconds}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),r=new Date(t).getTime();return isNaN(r)?null:r}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}__webpack_require__(626);function createCacheKey(e){if(!e)throw new WorkboxError_WorkboxError("add-to-cache-list-unexpected-type",{entry:e});if("string"==typeof e){const t=new URL(e,location.href);return{cacheKey:t.href,url:t.href}}const{revision:t,url:r}=e;if(!r)throw new WorkboxError_WorkboxError("add-to-cache-list-unexpected-type",{entry:e});if(!t){const e=new URL(r,location.href);return{cacheKey:e.href,url:e.href}}const s=new URL(r,location.href),a=new URL(r,location.href);return s.searchParams.set("__WB_REVISION__",t),{cacheKey:s.href,url:a.href}}class PrecacheInstallReportPlugin{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:r})=>{if("install"===e.type&&t&&t.originalRequest&&t.originalRequest instanceof Request){const e=t.originalRequest.url;r?this.notUpdatedURLs.push(e):this.updatedURLs.push(e)}return r}}}class PrecacheCacheKeyPlugin{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:e,params:t})=>{const r=(null==t?void 0:t.cacheKey)||this._precacheController.getCacheKeyForURL(e.url);return r?new Request(r,{headers:e.headers}):e},this._precacheController=e}}__webpack_require__(775);function toRequest(e){return"string"==typeof e?new Request(e):e}class StrategyHandler{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new Deferred,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const e of this._plugins)this._pluginStateMap.set(e,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let r=toRequest(e);if("navigate"===r.mode&&t instanceof FetchEvent&&t.preloadResponse){const e=await t.preloadResponse;if(e)return e}const s=this.hasCallback("fetchDidFail")?r.clone():null;try{for(const e of this.iterateCallbacks("requestWillFetch"))r=await e({request:r.clone(),event:t})}catch(e){if(e instanceof Error)throw new WorkboxError_WorkboxError("plugin-error-request-will-fetch",{thrownErrorMessage:e.message})}const a=r.clone();try{let e;e=await fetch(r,"navigate"===r.mode?void 0:this._strategy.fetchOptions);for(const r of this.iterateCallbacks("fetchDidSucceed"))e=await r({event:t,request:a,response:e});return e}catch(e){throw s&&await this.runCallbacks("fetchDidFail",{error:e,event:t,originalRequest:s.clone(),request:a.clone()}),e}}async fetchAndCachePut(e){const t=await this.fetch(e),r=t.clone();return this.waitUntil(this.cachePut(e,r)),t}async cacheMatch(e){const t=toRequest(e);let r;const{cacheName:s,matchOptions:a}=this._strategy,n=await this.getCacheKey(t,"read"),i=Object.assign(Object.assign({},a),{cacheName:s});r=await caches.match(n,i);for(const e of this.iterateCallbacks("cachedResponseWillBeUsed"))r=await e({cacheName:s,matchOptions:a,cachedResponse:r,request:n,event:this.event})||void 0;return r}async cachePut(t,r){const s=toRequest(t);await timeout_timeout(0);const a=await this.getCacheKey(s,"write");if(!r)throw new WorkboxError_WorkboxError("cache-put-with-no-response",{url:getFriendlyURL(a.url)});const n=await this._ensureResponseSafeToCache(r);if(!n)return!1;const{cacheName:i,matchOptions:o}=this._strategy,c=await self.caches.open(i),h=this.hasCallback("cacheDidUpdate"),l=h?await async function cacheMatchIgnoreParams(e,t,r,s){const a=stripParams(t.url,r);if(t.url===a)return e.match(t,s);const n=Object.assign(Object.assign({},s),{ignoreSearch:!0}),i=await e.keys(t,n);for(const t of i)if(a===stripParams(t.url,r))return e.match(t,s)}(c,a.clone(),["__WB_REVISION__"],o):null;try{await c.put(a,h?n.clone():n)}catch(t){if(t instanceof Error)throw"QuotaExceededError"===t.name&&await async function executeQuotaErrorCallbacks(){for(const t of e)await t()}(),t}for(const e of this.iterateCallbacks("cacheDidUpdate"))await e({cacheName:i,oldResponse:l,newResponse:n.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const r=`${e.url} | ${t}`;if(!this._cacheKeys[r]){let s=e;for(const e of this.iterateCallbacks("cacheKeyWillBeUsed"))s=toRequest(await e({mode:t,request:s,event:this.event,params:this.params}));this._cacheKeys[r]=s}return this._cacheKeys[r]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const r of this.iterateCallbacks(e))await r(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if("function"==typeof t[e]){const r=this._pluginStateMap.get(t),statefulCallback=s=>{const a=Object.assign(Object.assign({},s),{state:r});return t[e](a)};yield statefulCallback}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,r=!1;for(const e of this.iterateCallbacks("cacheWillUpdate"))if(t=await e({request:this.request,response:t,event:this.event})||void 0,r=!0,!t)break;return r||t&&200!==t.status&&(t=void 0),t}}class Strategy_Strategy{constructor(e={}){this.cacheName=cacheNames_cacheNames_getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,r="string"==typeof e.request?new Request(e.request):e.request,s="params"in e?e.params:void 0,a=new StrategyHandler(this,{event:t,request:r,params:s}),n=this._getResponse(a,r,t);return[n,this._awaitComplete(n,a,r,t)]}async _getResponse(e,t,r){let s;await e.runCallbacks("handlerWillStart",{event:r,request:t});try{if(s=await this._handle(t,e),!s||"error"===s.type)throw new WorkboxError_WorkboxError("no-response",{url:t.url})}catch(a){if(a instanceof Error)for(const n of e.iterateCallbacks("handlerDidError"))if(s=await n({error:a,event:r,request:t}),s)break;if(!s)throw a}for(const a of e.iterateCallbacks("handlerWillRespond"))s=await a({event:r,request:t,response:s});return s}async _awaitComplete(e,t,r,s){let a,n;try{a=await e}catch(n){}try{await t.runCallbacks("handlerDidRespond",{event:s,request:r,response:a}),await t.doneWaiting()}catch(e){e instanceof Error&&(n=e)}if(await t.runCallbacks("handlerDidComplete",{event:s,request:r,response:a,error:n}),t.destroy(),n)throw n}}class PrecacheStrategy extends Strategy_Strategy{constructor(e={}){e.cacheName=cacheNames_cacheNames_getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=!1!==e.fallbackToNetwork,this.plugins.push(PrecacheStrategy.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const r=await t.cacheMatch(e);return r||(t.event&&"install"===t.event.type?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let r;const s=t.params||{};if(!this._fallbackToNetwork)throw new WorkboxError_WorkboxError("missing-precache-entry",{cacheName:this.cacheName,url:e.url});{0;const a=s.integrity,n=e.integrity,i=!n||n===a;if(r=await t.fetch(new Request(e,{integrity:"no-cors"!==e.mode?n||a:void 0})),a&&i&&"no-cors"!==e.mode){this._useDefaultCacheabilityPluginIfNeeded();await t.cachePut(e,r.clone());0}}return r}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const r=await t.fetch(e);if(!await t.cachePut(e,r.clone()))throw new WorkboxError_WorkboxError("bad-precaching-response",{url:e.url,status:r.status});return r}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[r,s]of this.plugins.entries())s!==PrecacheStrategy.copyRedirectedCacheableResponsesPlugin&&(s===PrecacheStrategy.defaultPrecacheCacheabilityPlugin&&(e=r),s.cacheWillUpdate&&t++);0===t?this.plugins.push(PrecacheStrategy.defaultPrecacheCacheabilityPlugin):t>1&&null!==e&&this.plugins.splice(e,1)}}PrecacheStrategy.defaultPrecacheCacheabilityPlugin={cacheWillUpdate:async({response:e})=>!e||e.status>=400?null:e},PrecacheStrategy.copyRedirectedCacheableResponsesPlugin={cacheWillUpdate:async({response:e})=>e.redirected?await copyResponse(e):e};class PrecacheController{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:r=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new PrecacheStrategy({cacheName:cacheNames_cacheNames_getPrecacheName(e),plugins:[...t,new PrecacheCacheKeyPlugin({precacheController:this})],fallbackToNetwork:r}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const r of e){"string"==typeof r?t.push(r):r&&void 0===r.revision&&t.push(r.url);const{cacheKey:e,url:s}=createCacheKey(r),a="string"!=typeof r&&r.revision?"reload":"default";if(this._urlsToCacheKeys.has(s)&&this._urlsToCacheKeys.get(s)!==e)throw new WorkboxError_WorkboxError("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(s),secondEntry:e});if("string"!=typeof r&&r.integrity){if(this._cacheKeysToIntegrities.has(e)&&this._cacheKeysToIntegrities.get(e)!==r.integrity)throw new WorkboxError_WorkboxError("add-to-cache-list-conflicting-integrities",{url:s});this._cacheKeysToIntegrities.set(e,r.integrity)}if(this._urlsToCacheKeys.set(s,e),this._urlsToCacheModes.set(s,a),t.length>0){const e=`Workbox is precaching URLs without revision info: ${t.join(", ")}\nThis is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(e)}}}install(e){return waitUntil(e,(async()=>{const t=new PrecacheInstallReportPlugin;this.strategy.plugins.push(t);for(const[t,r]of this._urlsToCacheKeys){const s=this._cacheKeysToIntegrities.get(r),a=this._urlsToCacheModes.get(t),n=new Request(t,{integrity:s,cache:a,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:r},request:n,event:e}))}const{updatedURLs:r,notUpdatedURLs:s}=t;return{updatedURLs:r,notUpdatedURLs:s}}))}activate(e){return waitUntil(e,(async()=>{const e=await self.caches.open(this.strategy.cacheName),t=await e.keys(),r=new Set(this._urlsToCacheKeys.values()),s=[];for(const a of t)r.has(a.url)||(await e.delete(a),s.push(a.url));return{deletedURLs:s}}))}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,r=this.getCacheKeyForURL(t);if(r){return(await self.caches.open(this.strategy.cacheName)).match(r)}}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new WorkboxError_WorkboxError("non-precached-url",{url:e});return r=>(r.request=new Request(e),r.params=Object.assign({cacheKey:t},r.params),this.strategy.handle(r))}}let w;const getOrCreatePrecacheController_getOrCreatePrecacheController=()=>(w||(w=new PrecacheController),w);__webpack_require__(576);const normalizeHandler=e=>e&&"object"==typeof e?e:{handle:e};class Route{constructor(e,t,r="GET"){this.handler=normalizeHandler(t),this.match=e,this.method=r}setCatchHandler(e){this.catchHandler=normalizeHandler(e)}}class RegExpRoute extends Route{constructor(e,t,r){super((({url:t})=>{const r=e.exec(t.href);if(r&&(t.origin===location.origin||0===r.index))return r.slice(1)}),t,r)}}class Router{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",(e=>{const{request:t}=e,r=this.handleRequest({request:t,event:e});r&&e.respondWith(r)}))}addCacheListener(){self.addEventListener("message",(e=>{if(e.data&&"CACHE_URLS"===e.data.type){const{payload:t}=e.data;0;const r=Promise.all(t.urlsToCache.map((t=>{"string"==typeof t&&(t=[t]);const r=new Request(...t);return this.handleRequest({request:r,event:e})})));e.waitUntil(r),e.ports&&e.ports[0]&&r.then((()=>e.ports[0].postMessage(!0)))}}))}handleRequest({request:e,event:t}){const r=new URL(e.url,location.href);if(!r.protocol.startsWith("http"))return void 0;const s=r.origin===location.origin,{params:a,route:n}=this.findMatchingRoute({event:t,request:e,sameOrigin:s,url:r});let i=n&&n.handler;const o=e.method;if(!i&&this._defaultHandlerMap.has(o)&&(i=this._defaultHandlerMap.get(o)),!i)return void 0;let c;try{c=i.handle({url:r,request:e,event:t,params:a})}catch(e){c=Promise.reject(e)}const h=n&&n.catchHandler;return c instanceof Promise&&(this._catchHandler||h)&&(c=c.catch((async s=>{if(h){0;try{return await h.handle({url:r,request:e,event:t,params:a})}catch(e){e instanceof Error&&(s=e)}}if(this._catchHandler)return this._catchHandler.handle({url:r,request:e,event:t});throw s}))),c}findMatchingRoute({url:e,sameOrigin:t,request:r,event:s}){const a=this._routes.get(r.method)||[];for(const n of a){let a;const i=n.match({url:e,sameOrigin:t,request:r,event:s});if(i)return a=i,(Array.isArray(a)&&0===a.length||i.constructor===Object&&0===Object.keys(i).length||"boolean"==typeof i)&&(a=void 0),{route:n,params:a}}return{}}setDefaultHandler(e,t="GET"){this._defaultHandlerMap.set(t,normalizeHandler(e))}setCatchHandler(e){this._catchHandler=normalizeHandler(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new WorkboxError_WorkboxError("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(!(t>-1))throw new WorkboxError_WorkboxError("unregister-route-route-not-registered");this._routes.get(e.method).splice(t,1)}}let y;const getOrCreateDefaultRouter_getOrCreateDefaultRouter=()=>(y||(y=new Router,y.addFetchListener(),y.addCacheListener()),y);function registerRoute(e,t,r){let s;if("string"==typeof e){const a=new URL(e,location.href);0;s=new Route((({url:e})=>e.href===a.href),t,r)}else if(e instanceof RegExp)s=new RegExpRoute(e,t,r);else if("function"==typeof e)s=new Route(e,t,r);else{if(!(e instanceof Route))throw new WorkboxError_WorkboxError("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});s=e}return getOrCreateDefaultRouter_getOrCreateDefaultRouter().registerRoute(s),s}class PrecacheRoute extends Route{constructor(e,t){super((({request:r})=>{const s=e.getURLsToCacheKeys();for(const a of function*generateURLVariations(e,{ignoreURLParametersMatching:t=[/^utm_/,/^fbclid$/],directoryIndex:r="index.html",cleanURLs:s=!0,urlManipulation:a}={}){const n=new URL(e,location.href);n.hash="",yield n.href;const i=function removeIgnoredSearchParams(e,t=[]){for(const r of[...e.searchParams.keys()])t.some((e=>e.test(r)))&&e.searchParams.delete(r);return e}(n,t);if(yield i.href,r&&i.pathname.endsWith("/")){const e=new URL(i.href);e.pathname+=r,yield e.href}if(s){const e=new URL(i.href);e.pathname+=".html",yield e.href}if(a){const e=a({url:n});for(const t of e)yield t.href}}(r.url,t)){const t=s.get(a);if(t){return{cacheKey:t,integrity:e.getIntegrityForCacheKey(t)}}}}),e.strategy)}}class CacheFirst extends Strategy_Strategy{async _handle(e,t){let r,s=await t.cacheMatch(e);if(s)0;else{0;try{s=await t.fetchAndCachePut(e)}catch(e){e instanceof Error&&(r=e)}0}if(!s)throw new WorkboxError_WorkboxError("no-response",{url:e.url,error:r});return s}}const m=[{'revision':'60cb4decb2dc209d250fec90409a74b9','url':'favicon.ico'},{'revision':'e5ce812cdf3bf9cb3ec32748ba44ded2','url':'index.html'},{'revision':null,'url':'js/commons-async-e55b6db2828bccc850ce.js'},{'revision':null,'url':'js/core-administration-08557f995fab40cf6908.js'},{'revision':null,'url':'js/core-authentication-a79298fda8d6ac61d20e.js'},{'revision':null,'url':'js/core-blocks-6585accd515a7a3a6a87.js'},{'revision':null,'url':'js/core-connections-55a962b9106d0b2fadda.js'},{'revision':null,'url':'js/core-navigation-tree-e53397fb57c0b4534aef.js'},{'revision':null,'url':'js/core-resource-manager-ce26f67e4958f13854a2.js'},{'revision':null,'url':'js/core-root-9440a7bc684550bff8b0.js'},{'revision':null,'url':'js/core-ui-a8bf1b578cd188258ceb.js'},{'revision':null,'url':'js/core-utils-0772e185dc8b9536788d.js'},{'revision':null,'url':'js/core-view-518a4ac6df18f1ff1950.js'},{'revision':null,'url':'js/d-i18n-map/locales/en/zod.json-5ea51a086df054daaa2a.js'},{'revision':null,'url':'js/d-i18n-map/locales/it/zod.json-67c4ec7c2daaaeaf8ac6.js'},{'revision':null,'url':'js/d-i18n-map/locales/ru/zod.json-619a210310292c6de689.js'},{'revision':null,'url':'js/d-i18n-map/locales/zh-CN/zod.json-97423a472deee3b2f158.js'},{'revision':null,'url':'js/extended-vendor-async-96234119ae67eb8fb493.js'},{'revision':null,'url':'js/locales/de-8d7199848647c3ab39e7.js'},{'revision':null,'url':'js/locales/en-3f120d2197e0703bdfba.js'},{'revision':null,'url':'js/locales/fr-8aba28f5d4d959f0050d.js'},{'revision':null,'url':'js/locales/it-67a9a7fe5c1083d31cb1.js'},{'revision':null,'url':'js/locales/ru-59a45433a8a216c6125b.js'},{'revision':null,'url':'js/locales/zh-e9ec7d925a007a2311bb.js'},{'revision':null,'url':'js/main-f74b57078c0bfa8d8f1d.js'},{'revision':null,'url':'js/packages-27f98f6b5c154a31cd5c.js'},{'revision':null,'url':'js/plugin-administration-d80b098b61b1ec6828a0.js'},{'revision':null,'url':'js/plugin-authentication-ad594adff363e93b41bb.js'},{'revision':null,'url':'js/plugin-authentication-administration-cef403a81c35a2e918fc.js'},{'revision':null,'url':'js/plugin-codemirror6-dea7c5e5bd28f5128820.js'},{'revision':null,'url':'js/plugin-connection-template-73cc503961eba251e3e3.js'},{'revision':null,'url':'js/plugin-connections-80ae91f131268f8b281e.js'},{'revision':null,'url':'js/plugin-connections-administration-2501a1a925d5c277facc.js'},{'revision':null,'url':'js/plugin-data-export-753cb28231788afbcb24.js'},{'revision':null,'url':'js/plugin-data-import-0413ae4585bc1326ed98.js'},{'revision':null,'url':'js/plugin-data-spreadsheet-new-57eb76ebb3ae0a48cd25.js'},{'revision':null,'url':'js/plugin-data-viewer-cc98f2b55febef7eea2d.js'},{'revision':null,'url':'js/plugin-data-viewer-result-set-grouping-10bcc45cd255ccd8882c.js'},{'revision':null,'url':'js/plugin-datasource-context-switch-b19911db48e686f06154.js'},{'revision':null,'url':'js/plugin-log-viewer-8d088c8a25e46f7c2e78.js'},{'revision':null,'url':'js/plugin-navigation-tabs-a88e99b7e1558c846873.js'},{'revision':null,'url':'js/plugin-navigation-tree-ab101be564a6e8a79c81.js'},{'revision':null,'url':'js/plugin-navigation-tree-rm-9f34f236dfa400814a5b.js'},{'revision':null,'url':'js/plugin-object-viewer-3fef75908fe6a745bfdf.js'},{'revision':null,'url':'js/plugin-sql-editor-511b5c90d623574ae817.js'},{'revision':null,'url':'js/plugin-sql-editor-navigation-tab-4af34877a9cc0547a9f4.js'},{'revision':null,'url':'js/plugin-sql-editor-navigation-tab-script-4df5dc5f1735c67ac181.js'},{'revision':null,'url':'js/plugin-sql-editor-new-a35743504a407e959c9d.js'},{'revision':null,'url':'js/plugin-sql-generator-57a790bf3a9c3cce675a.js'},{'revision':null,'url':'js/plugin-user-profile-a6a4534fc1d9879f9141.js'},{'revision':null,'url':'js/runtime~main-a288368e6dbfc9a64cf2.js'},{'revision':null,'url':'js/sso-21a31a55149f669b9c84.js'},{'revision':null,'url':'js/sso-runtime-f32e7b2e6ef4aa189108.js'},{'revision':null,'url':'js/vendor-a182ace81451e1a1ff82.js'},{'revision':null,'url':'js/vendor-async-862d3dfc323249e52c7d.js'},{'revision':'58471518102a50b87057954215cfd944','url':'manifest.webmanifest'},{'revision':'16f875775e035398c5323560532a98d1','url':'sso.html'},{'revision':'0aa4dff4348344fa3cf1325f72b548cf','url':'ssoError.html'},{'revision':null,'url':'styles/styles-880785131413c4ca74ba.css'},{'revision':null,'url':'styles/styles-async-e3e49fe949a645fa07fa.css'}];async function broadcastMessage(e){(await self.clients.matchAll({includeUncontrolled:!0})).forEach((t=>{t.postMessage(e)}))}addEventListener("fetch",(async e=>{if(!(e instanceof FetchEvent))return;const{request:t}=e;"/"==new URL(t.url).pathname&&e.respondWith((async()=>{const e=function matchPrecache(e){return getOrCreatePrecacheController_getOrCreatePrecacheController().matchPrecache(e)}("/index.html"),r=fetch(t,{cache:"no-cache",method:"HEAD"});try{const e=await r;if("opaqueredirect"==e.type)return e}catch{}return await e??await fetch(t)})())})),self.addEventListener("install",(()=>{self.skipWaiting()})),function addPlugins(e){getOrCreatePrecacheController_getOrCreatePrecacheController().strategy.plugins.push(...e)}([function createUpdateProgressPlugin(){const e=getOrCreatePrecacheController_getOrCreatePrecacheController();let t=0,r=null;return{handlerWillStart:async({request:e,state:t})=>{t&&(t.originalRequest=e),null===r&&(r=await caches.has(s.precache),await broadcastMessage({type:"mode",isUpdate:r}))},cachedResponseWillBeUsed:async({event:r,cachedResponse:a,cacheName:n})=>{if("install"===r.type&&n===s.precache){const r=Math.max(e.getURLsToCacheKeys().size,1);t++,await broadcastMessage({type:"progress",progress:t/r})}return a}}}()]),function clientsClaim(){self.addEventListener("activate",(()=>self.clients.claim()))}(),function precacheAndRoute(e,t){!function precache(e){getOrCreatePrecacheController_getOrCreatePrecacheController().precache(e)}(e),function addRoute(e){const t=getOrCreatePrecacheController_getOrCreatePrecacheController();registerRoute(new PrecacheRoute(t,e))}(t)}(m),registerRoute((({request:e})=>"font"===e.destination),new CacheFirst({cacheName:"fonts",plugins:[new CacheableResponsePlugin({statuses:[0,200]}),new ExpirationPlugin({maxEntries:1e3,maxAgeSeconds:604800})]})),registerRoute((({request:e})=>"image"===e.destination),new CacheFirst({cacheName:"images",plugins:[new CacheableResponsePlugin({statuses:[0,200]}),new ExpirationPlugin({maxEntries:1e3,maxAgeSeconds:604800})]}))})()})();