-
Notifications
You must be signed in to change notification settings - Fork 2
/
service-worker.js
2 lines (2 loc) · 47.4 KB
/
service-worker.js
1
2
!function(){"use strict";var e={110:function(e){var t,n="object"===typeof Reflect?Reflect:null,r=n&&"function"===typeof n.apply?n.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};t=n&&"function"===typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!==e};function i(){i.init.call(this)}e.exports=i,e.exports.once=function(e,t){return new Promise((function(n,r){function s(n){e.removeListener(t,i),r(n)}function i(){"function"===typeof e.removeListener&&e.removeListener("error",s),n([].slice.call(arguments))}g(e,t,i,{once:!0}),"error"!==t&&function(e,t,n){"function"===typeof e.on&&g(e,"error",t,n)}(e,s,{once:!0})}))},i.EventEmitter=i,i.prototype._events=void 0,i.prototype._eventsCount=0,i.prototype._maxListeners=void 0;var o=10;function a(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?i.defaultMaxListeners:e._maxListeners}function l(e,t,n,r){var s,i,o,l;if(a(n),void 0===(i=e._events)?(i=e._events=Object.create(null),e._eventsCount=0):(void 0!==i.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),i=e._events),o=i[t]),void 0===o)o=i[t]=n,++e._eventsCount;else if("function"===typeof o?o=i[t]=r?[n,o]:[o,n]:r?o.unshift(n):o.push(n),(s=c(e))>0&&o.length>s&&!o.warned){o.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=o.length,l=u,console&&console.warn&&console.warn(l)}return e}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},s=u.bind(r);return s.listener=n,r.wrapFn=s,s}function d(e,t,n){var r=e._events;if(void 0===r)return[];var s=r[t];return void 0===s?[]:"function"===typeof s?n?[s.listener||s]:[s]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(s):p(s,s.length)}function f(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"===typeof n)return 1;if(void 0!==n)return n.length}return 0}function p(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}function g(e,t,n,r){if("function"===typeof e.on)r.once?e.once(t,n):e.on(t,n);else{if("function"!==typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function s(i){r.once&&e.removeEventListener(t,s),n(i)}))}}Object.defineProperty(i,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(e){if("number"!==typeof e||e<0||s(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");o=e}}),i.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},i.prototype.setMaxListeners=function(e){if("number"!==typeof e||e<0||s(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},i.prototype.getMaxListeners=function(){return c(this)},i.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var s="error"===e,i=this._events;if(void 0!==i)s=s&&void 0===i.error;else if(!s)return!1;if(s){var o;if(t.length>0&&(o=t[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var c=i[e];if(void 0===c)return!1;if("function"===typeof c)r(c,this,t);else{var l=c.length,u=p(c,l);for(n=0;n<l;++n)r(u[n],this,t)}return!0},i.prototype.addListener=function(e,t){return l(this,e,t,!1)},i.prototype.on=i.prototype.addListener,i.prototype.prependListener=function(e,t){return l(this,e,t,!0)},i.prototype.once=function(e,t){return a(t),this.on(e,h(this,e,t)),this},i.prototype.prependOnceListener=function(e,t){return a(t),this.prependListener(e,h(this,e,t)),this},i.prototype.removeListener=function(e,t){var n,r,s,i,o;if(a(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0===--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!==typeof n){for(s=-1,i=n.length-1;i>=0;i--)if(n[i]===t||n[i].listener===t){o=n[i].listener,s=i;break}if(s<0)return this;0===s?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,s),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,o||t)}return this},i.prototype.off=i.prototype.removeListener,i.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var s,i=Object.keys(n);for(r=0;r<i.length;++r)"removeListener"!==(s=i[r])&&this.removeAllListeners(s);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"===typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},i.prototype.listeners=function(e){return d(this,e,!0)},i.prototype.rawListeners=function(e){return d(this,e,!1)},i.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},i.prototype.listenerCount=f,i.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},838:function(){try{self["workbox:core:6.5.3"]&&_()}catch(e){}},362:function(){try{self["workbox:precaching:6.5.3"]&&_()}catch(e){}},161:function(){try{self["workbox:routing:6.5.3"]&&_()}catch(e){}},880:function(){try{self["workbox:strategies:6.5.3"]&&_()}catch(e){}}},t={};function n(r){var s=t[r];if(void 0!==s)return s.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}!function(){n(838);const e=function(e){let t=e;for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];return r.length>0&&(t+=` :: ${JSON.stringify(r)}`),t};class t extends Error{constructor(t,n){super(e(t,n)),this.name=t,this.details=n}}const r={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},s=e=>[r.prefix,e,r.suffix].filter((e=>e&&e.length>0)).join("-"),i=e=>e||s(r.precache),o=e=>e||s(r.runtime);function a(e,t){const n=t();return e.waitUntil(n),n}n(362);const c="__WB_REVISION__";function l(e){if(!e)throw new t("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:n,url:r}=e;if(!r)throw new t("add-to-cache-list-unexpected-type",{entry:e});if(!n){const e=new URL(r,location.href);return{cacheKey:e.href,url:e.href}}const s=new URL(r,location.href),i=new URL(r,location.href);return s.searchParams.set(c,n),{cacheKey:s.href,url:i.href}}class u{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async e=>{let{request:t,state:n}=e;n&&(n.originalRequest=t)},this.cachedResponseWillBeUsed=async e=>{let{event:t,state:n,cachedResponse:r}=e;if("install"===t.type&&n&&n.originalRequest&&n.originalRequest instanceof Request){const e=n.originalRequest.url;r?this.notUpdatedURLs.push(e):this.updatedURLs.push(e)}return r}}}class h{constructor(e){let{precacheController:t}=e;this.cacheKeyWillBeUsed=async e=>{let{request:t,params:n}=e;const r=(null===n||void 0===n?void 0:n.cacheKey)||this._precacheController.getCacheKeyForURL(t.url);return r?new Request(r,{headers:t.headers}):t},this._precacheController=t}}let d;async function f(e,n){let r=null;if(e.url){r=new URL(e.url).origin}if(r!==self.location.origin)throw new t("cross-origin-copy-response",{origin:r});const s=e.clone(),i={headers:new Headers(s.headers),status:s.status,statusText:s.statusText},o=n?n(i):i,a=function(){if(void 0===d){const t=new Response("");if("body"in t)try{new Response(t.body),d=!0}catch(e){d=!1}d=!1}return d}()?s.body:await s.blob();return new Response(a,o)}const p=e=>new URL(String(e),location.href).href.replace(new RegExp(`^${location.origin}`),"");function g(e,t){const n=new URL(e);for(const r of t)n.searchParams.delete(r);return n.href}class _{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}const y=new Set;n(880);function m(e){return"string"===typeof e?new Request(e):e}class v{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new _,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:n}=this;let r=m(e);if("navigate"===r.mode&&n instanceof FetchEvent&&n.preloadResponse){const e=await n.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:n})}catch(o){if(o instanceof Error)throw new t("plugin-error-request-will-fetch",{thrownErrorMessage:o.message})}const i=r.clone();try{let e;e=await fetch(r,"navigate"===r.mode?void 0:this._strategy.fetchOptions);for(const t of this.iterateCallbacks("fetchDidSucceed"))e=await t({event:n,request:i,response:e});return e}catch(a){throw s&&await this.runCallbacks("fetchDidFail",{error:a,event:n,originalRequest:s.clone(),request:i.clone()}),a}}async fetchAndCachePut(e){const t=await this.fetch(e),n=t.clone();return this.waitUntil(this.cachePut(e,n)),t}async cacheMatch(e){const t=m(e);let n;const{cacheName:r,matchOptions:s}=this._strategy,i=await this.getCacheKey(t,"read"),o=Object.assign(Object.assign({},s),{cacheName:r});n=await caches.match(i,o);for(const a of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await a({cacheName:r,matchOptions:s,cachedResponse:n,request:i,event:this.event})||void 0;return n}async cachePut(e,n){const r=m(e);var s;await(s=0,new Promise((e=>setTimeout(e,s))));const i=await this.getCacheKey(r,"write");if(!n)throw new t("cache-put-with-no-response",{url:p(i.url)});const o=await this._ensureResponseSafeToCache(n);if(!o)return!1;const{cacheName:a,matchOptions:c}=this._strategy,l=await self.caches.open(a),u=this.hasCallback("cacheDidUpdate"),h=u?await async function(e,t,n,r){const s=g(t.url,n);if(t.url===s)return e.match(t,r);const i=Object.assign(Object.assign({},r),{ignoreSearch:!0}),o=await e.keys(t,i);for(const a of o)if(s===g(a.url,n))return e.match(a,r)}(l,i.clone(),["__WB_REVISION__"],c):null;try{await l.put(i,u?o.clone():o)}catch(d){if(d instanceof Error)throw"QuotaExceededError"===d.name&&await async function(){for(const e of y)await e()}(),d}for(const t of this.iterateCallbacks("cacheDidUpdate"))await t({cacheName:a,oldResponse:h,newResponse:o.clone(),request:i,event:this.event});return!0}async getCacheKey(e,t){const n=`${e.url} | ${t}`;if(!this._cacheKeys[n]){let r=e;for(const e of this.iterateCallbacks("cacheKeyWillBeUsed"))r=m(await e({mode:t,request:r,event:this.event,params:this.params}));this._cacheKeys[n]=r}return this._cacheKeys[n]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const n of this.iterateCallbacks(e))await n(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if("function"===typeof t[e]){const n=this._pluginStateMap.get(t),r=r=>{const s=Object.assign(Object.assign({},r),{state:n});return t[e](s)};yield r}}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,n=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(t=await r({request:this.request,response:t,event:this.event})||void 0,n=!0,!t)break;return n||t&&200!==t.status&&(t=void 0),t}}class w{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.cacheName=o(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,n="string"===typeof e.request?new Request(e.request):e.request,r="params"in e?e.params:void 0,s=new v(this,{event:t,request:n,params:r}),i=this._getResponse(s,n,t);return[i,this._awaitComplete(i,s,n,t)]}async _getResponse(e,n,r){let s;await e.runCallbacks("handlerWillStart",{event:r,request:n});try{if(s=await this._handle(n,e),!s||"error"===s.type)throw new t("no-response",{url:n.url})}catch(i){if(i instanceof Error)for(const t of e.iterateCallbacks("handlerDidError"))if(s=await t({error:i,event:r,request:n}),s)break;if(!s)throw i}for(const t of e.iterateCallbacks("handlerWillRespond"))s=await t({event:r,request:n,response:s});return s}async _awaitComplete(e,t,n,r){let s,i;try{s=await e}catch(i){}try{await t.runCallbacks("handlerDidRespond",{event:r,request:n,response:s}),await t.doneWaiting()}catch(o){o instanceof Error&&(i=o)}if(await t.runCallbacks("handlerDidComplete",{event:r,request:n,response:s,error:i}),t.destroy(),i)throw i}}class R extends w{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.cacheName=i(e.cacheName),super(e),this._fallbackToNetwork=!1!==e.fallbackToNetwork,this.plugins.push(R.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const n=await t.cacheMatch(e);return n||(t.event&&"install"===t.event.type?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,n){let r;const s=n.params||{};if(!this._fallbackToNetwork)throw new t("missing-precache-entry",{cacheName:this.cacheName,url:e.url});{0;const t=s.integrity,i=e.integrity,o=!i||i===t;if(r=await n.fetch(new Request(e,{integrity:"no-cors"!==e.mode?i||t:void 0})),t&&o&&"no-cors"!==e.mode){this._useDefaultCacheabilityPluginIfNeeded();await n.cachePut(e,r.clone());0}}return r}async _handleInstall(e,n){this._useDefaultCacheabilityPluginIfNeeded();const r=await n.fetch(e);if(!await n.cachePut(e,r.clone()))throw new t("bad-precaching-response",{url:e.url,status:r.status});return r}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[n,r]of this.plugins.entries())r!==R.copyRedirectedCacheableResponsesPlugin&&(r===R.defaultPrecacheCacheabilityPlugin&&(e=n),r.cacheWillUpdate&&t++);0===t?this.plugins.push(R.defaultPrecacheCacheabilityPlugin):t>1&&null!==e&&this.plugins.splice(e,1)}}R.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate(e){let{response:t}=e;return!t||t.status>=400?null:t}},R.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate(e){let{response:t}=e;return t.redirected?await f(t):t}};class E{constructor(){let{cacheName:e,plugins:t=[],fallbackToNetwork:n=!0}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new R({cacheName:i(e),plugins:[...t,new h({precacheController:this})],fallbackToNetwork:n}),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 n=[];for(const r of e){"string"===typeof r?n.push(r):r&&void 0===r.revision&&n.push(r.url);const{cacheKey:e,url:s}=l(r),i="string"!==typeof r&&r.revision?"reload":"default";if(this._urlsToCacheKeys.has(s)&&this._urlsToCacheKeys.get(s)!==e)throw new t("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 t("add-to-cache-list-conflicting-integrities",{url:s});this._cacheKeysToIntegrities.set(e,r.integrity)}if(this._urlsToCacheKeys.set(s,e),this._urlsToCacheModes.set(s,i),n.length>0){const e=`Workbox is precaching URLs without revision info: ${n.join(", ")}\nThis is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(e)}}}install(e){return a(e,(async()=>{const t=new u;this.strategy.plugins.push(t);for(const[s,i]of this._urlsToCacheKeys){const t=this._cacheKeysToIntegrities.get(i),n=this._urlsToCacheModes.get(s),r=new Request(s,{integrity:t,cache:n,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:i},request:r,event:e}))}const{updatedURLs:n,notUpdatedURLs:r}=t;return{updatedURLs:n,notUpdatedURLs:r}}))}activate(e){return a(e,(async()=>{const e=await self.caches.open(this.strategy.cacheName),t=await e.keys(),n=new Set(this._urlsToCacheKeys.values()),r=[];for(const s of t)n.has(s.url)||(await e.delete(s),r.push(s.url));return{deletedURLs:r}}))}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,n=this.getCacheKeyForURL(t);if(n){return(await self.caches.open(this.strategy.cacheName)).match(n)}}createHandlerBoundToURL(e){const n=this.getCacheKeyForURL(e);if(!n)throw new t("non-precached-url",{url:e});return t=>(t.request=new Request(e),t.params=Object.assign({cacheKey:n},t.params),this.strategy.handle(t))}}let P;const C=()=>(P||(P=new E),P);n(161);const T=e=>e&&"object"===typeof e?e:{handle:e};class S{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"GET";this.handler=T(t),this.match=e,this.method=n}setCatchHandler(e){this.catchHandler=T(e)}}class A extends S{constructor(e,t,n){super((t=>{let{url:n}=t;const r=e.exec(n.href);if(r&&(n.origin===location.origin||0===r.index))return r.slice(1)}),t,n)}}class L{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",(e=>{const{request:t}=e,n=this.handleRequest({request:t,event:e});n&&e.respondWith(n)}))}addCacheListener(){self.addEventListener("message",(e=>{if(e.data&&"CACHE_URLS"===e.data.type){const{payload:t}=e.data;0;const n=Promise.all(t.urlsToCache.map((t=>{"string"===typeof t&&(t=[t]);const n=new Request(...t);return this.handleRequest({request:n,event:e})})));e.waitUntil(n),e.ports&&e.ports[0]&&n.then((()=>e.ports[0].postMessage(!0)))}}))}handleRequest(e){let{request:t,event:n}=e;const r=new URL(t.url,location.href);if(!r.protocol.startsWith("http"))return void 0;const s=r.origin===location.origin,{params:i,route:o}=this.findMatchingRoute({event:n,request:t,sameOrigin:s,url:r});let a=o&&o.handler;const c=t.method;if(!a&&this._defaultHandlerMap.has(c)&&(a=this._defaultHandlerMap.get(c)),!a)return void 0;let l;try{l=a.handle({url:r,request:t,event:n,params:i})}catch(h){l=Promise.reject(h)}const u=o&&o.catchHandler;return l instanceof Promise&&(this._catchHandler||u)&&(l=l.catch((async e=>{if(u){0;try{return await u.handle({url:r,request:t,event:n,params:i})}catch(s){s instanceof Error&&(e=s)}}if(this._catchHandler)return this._catchHandler.handle({url:r,request:t,event:n});throw e}))),l}findMatchingRoute(e){let{url:t,sameOrigin:n,request:r,event:s}=e;const i=this._routes.get(r.method)||[];for(const o of i){let e;const i=o.match({url:t,sameOrigin:n,request:r,event:s});if(i)return e=i,(Array.isArray(e)&&0===e.length||i.constructor===Object&&0===Object.keys(i).length||"boolean"===typeof i)&&(e=void 0),{route:o,params:e}}return{}}setDefaultHandler(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"GET";this._defaultHandlerMap.set(t,T(e))}setCatchHandler(e){this._catchHandler=T(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 t("unregister-route-but-not-found-with-method",{method:e.method});const n=this._routes.get(e.method).indexOf(e);if(!(n>-1))throw new t("unregister-route-route-not-registered");this._routes.get(e.method).splice(n,1)}}let b;const I=()=>(b||(b=new L,b.addFetchListener(),b.addCacheListener()),b);function O(e,n,r){let s;if("string"===typeof e){const t=new URL(e,location.href);0;s=new S((e=>{let{url:n}=e;return n.href===t.href}),n,r)}else if(e instanceof RegExp)s=new A(e,n,r);else if("function"===typeof e)s=new S(e,n,r);else{if(!(e instanceof S))throw new t("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});s=e}return I().registerRoute(s),s}class D extends S{constructor(e,t){super((n=>{let{request:r}=n;const s=e.getURLsToCacheKeys();for(const i of function(e){let{ignoreURLParametersMatching:t=[/^utm_/,/^fbclid$/],directoryIndex:n="index.html",cleanURLs:r=!0,urlManipulation:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){const i=new URL(e,location.href);i.hash="",yield i.href;const o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];for(const n of[...e.searchParams.keys()])t.some((e=>e.test(n)))&&e.searchParams.delete(n);return e}(i,t);if(yield o.href,n&&o.pathname.endsWith("/")){const e=new URL(o.href);e.pathname+=n,yield e.href}if(r){const e=new URL(o.href);e.pathname+=".html",yield e.href}if(s){const e=s({url:i});for(const t of e)yield t.href}}()}(r.url,t)){const t=s.get(i);if(t){return{cacheKey:t,integrity:e.getIntegrityForCacheKey(t)}}}}),e.strategy)}}function N(e){return C().matchPrecache(e)}function U(e){C().precache(e)}function k(e,t){U(e),function(e){const t=C();O(new D(t,e))}(t)}const W={cacheWillUpdate:async e=>{let{response:t}=e;return 200===t.status||0===t.status?t:null}};class q extends w{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super(e),this.plugins.some((e=>"cacheWillUpdate"in e))||this.plugins.unshift(W),this._networkTimeoutSeconds=e.networkTimeoutSeconds||0}async _handle(e,n){const r=[];const s=[];let i;if(this._networkTimeoutSeconds){const{id:t,promise:o}=this._getTimeoutPromise({request:e,logs:r,handler:n});i=t,s.push(o)}const o=this._getNetworkPromise({timeoutId:i,request:e,logs:r,handler:n});s.push(o);const a=await n.waitUntil((async()=>await n.waitUntil(Promise.race(s))||await o)());if(!a)throw new t("no-response",{url:e.url});return a}_getTimeoutPromise(e){let t,{request:n,logs:r,handler:s}=e;return{promise:new Promise((e=>{t=setTimeout((async()=>{e(await s.cacheMatch(n))}),1e3*this._networkTimeoutSeconds)})),id:t}}async _getNetworkPromise(e){let t,n,{timeoutId:r,request:s,logs:i,handler:o}=e;try{n=await o.fetchAndCachePut(s)}catch(a){a instanceof Error&&(t=a)}return r&&clearTimeout(r),!t&&n||(n=await o.cacheMatch(s)),n}}class x extends w{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),this.plugins.some((e=>"cacheWillUpdate"in e))||this.plugins.unshift(W)}async _handle(e,n){const r=n.fetchAndCachePut(e).catch((()=>{}));n.waitUntil(r);let s,i=await n.cacheMatch(e);if(i)0;else{0;try{i=await r}catch(o){o instanceof Error&&(s=o)}}if(!i)throw new t("no-response",{url:e.url,error:s});return i}}const M=Object.freeze({getClientsInfo:"GET_CLIENTS_INFO",clientsInfo:"CLIENTS_INFO",claimClients:"CLAIM_CLIENTS",skipWaiting:"SKIP_WAITING",startRecording:"START_RECORDING",recordingStarted:"RECORDING_STARTED",recordingError:"RECORDING_ERROR",confirmRecordingCompletion:"CONFIRM_RECORDING_COMPLETION",completeRecording:"COMPLETE_RECORDING",recordingCompleted:"RECORDING_COMPLETED"}),H=(e,t)=>t.some((t=>e instanceof t));let K,B;const F=new WeakMap,j=new WeakMap,G=new WeakMap,V=new WeakMap,$=new WeakMap;let J={get(e,t,n){if(e instanceof IDBTransaction){if("done"===t)return j.get(e);if("objectStoreNames"===t)return e.objectStoreNames||G.get(e);if("store"===t)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return X(e[t])},set(e,t,n){return e[t]=n,!0},has(e,t){return e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e}};function Q(e){return e!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(B||(B=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(e)?function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e.apply(Y(this),n),X(F.get(this))}:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return X(e.apply(Y(this),n))}:function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];const i=e.call(Y(this),t,...r);return G.set(i,t.sort?t.sort():[t]),X(i)}}function z(e){return"function"===typeof e?Q(e):(e instanceof IDBTransaction&&function(e){if(j.has(e))return;const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener("complete",s),e.removeEventListener("error",i),e.removeEventListener("abort",i)},s=()=>{t(),r()},i=()=>{n(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",s),e.addEventListener("error",i),e.addEventListener("abort",i)}));j.set(e,t)}(e),H(e,K||(K=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(e,J):e)}function X(e){if(e instanceof IDBRequest)return function(e){const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener("success",s),e.removeEventListener("error",i)},s=()=>{t(X(e.result)),r()},i=()=>{n(e.error),r()};e.addEventListener("success",s),e.addEventListener("error",i)}));return t.then((t=>{t instanceof IDBCursor&&F.set(t,e)})).catch((()=>{})),$.set(t,e),t}(e);if(V.has(e))return V.get(e);const t=z(e);return t!==e&&(V.set(e,t),$.set(t,e)),t}const Y=e=>$.get(e);const Z=["get","getKey","getAll","getAllKeys","count"],ee=["put","add","delete","clear"],te=new Map;function ne(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!==typeof t)return;if(te.get(t))return te.get(t);const n=t.replace(/FromIndex$/,""),r=t!==n,s=ee.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!s&&!Z.includes(n))return;const i=async function(e){const t=this.transaction(e,s?"readwrite":"readonly");let i=t.store;for(var o=arguments.length,a=new Array(o>1?o-1:0),c=1;c<o;c++)a[c-1]=arguments[c];return r&&(i=i.index(a.shift())),(await Promise.all([i[n](...a),s&&t.done]))[0]};return te.set(t,i),i}J=(e=>({...e,get:(t,n,r)=>ne(t,n)||e.get(t,n,r),has:(t,n)=>!!ne(t,n)||e.has(t,n)}))(J);const re="sections-db",se="sections-store",ie=1;function oe(){return function(e,t){let{blocked:n,upgrade:r,blocking:s,terminated:i}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=indexedDB.open(e,t),a=X(o);return r&&o.addEventListener("upgradeneeded",(e=>{r(X(o.result),e.oldVersion,e.newVersion,X(o.transaction))})),n&&o.addEventListener("blocked",(()=>n())),a.then((e=>{i&&e.addEventListener("close",(()=>i())),s&&e.addEventListener("versionchange",(()=>s()))})).catch((()=>{})),a}(re,ie,{upgrade(e,t){0===t&&e.createObjectStore(se,{keyPath:"sectionId"}),console.debug("[sections-db] Done upgrading DB")}})}function ae(){return function(e){let{blocked:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=indexedDB.deleteDatabase(e);return t&&n.addEventListener("blocked",(()=>t())),X(n).then((()=>{}))}(re)}const ce=JSON.parse({NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_DHIS2_APP_VERSION:"100.2.0",REACT_APP_DHIS2_APP_NAME:"User Profile",REACT_APP_DHIS2_BASE_URL:".."}.REACT_APP_DHIS2_APP_PWA_CACHING_PATTERNS_TO_OMIT_FROM_CACHEABLE_SECTIONS||"[]").map((e=>new RegExp(e)));function le(e){return e in self.clientRecordingStates}function ue(e){let{url:t,event:n}=e;const r=n.clientId;if(!le(r))return!1;if(void 0!==self.clientRecordingStates[r].confirmationTimeout)return!1;return!ce.some((e=>e.test(t.href)))}function he(e){let{request:t,event:n}=e;const r=self.clientRecordingStates[n.clientId];clearTimeout(r.recordingTimeout),r.pendingRequests.add(t),fetch(t).then((e=>function(e,t,n){const r=self.clientRecordingStates[n];if(!r)return t;(function(e,t,n){if(n.ok){const r=n.clone();caches.open(e).then((e=>e.put(t,r)))}})(fe("temp",n),e,t),r.fulfilledRequests+=1,r.pendingRequests.delete(e),0===r.pendingRequests.size&&function(e){const t=self.clientRecordingStates[e];t.recordingTimeout=setTimeout((()=>de(null,e)),t.recordingTimeoutDelay)}(n);return t}(t,e,n.clientId))).catch((e=>{de(e,n.clientId)}))}function de(e,t){const n=self.clientRecordingStates[t];if(n&&(console.debug("[SW] Stopping recording",{clientId:t,recordingState:n}),clearTimeout(n.recordingTimeout)),e)return self.clients.get(t).then((t=>{t.postMessage({type:M.recordingError,payload:{msg:e.message}})})),void pe(t);!async function(e){const t=await self.clients.get(e);if(!t)return console.debug("[SW] Client not found for ID",e),void pe(e);t.postMessage({type:M.confirmRecordingCompletion}),function(e){const t=self.clientRecordingStates[e];t.confirmationTimeout=setTimeout((()=>{console.warn("[SW] Completion confirmation timed out. Clearing recording for client",e),pe(e)}),1e4)}(e)}(t)}function fe(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.join("-")}function pe(e){delete self.clientRecordingStates[e];const t=fe("temp",e);return caches.delete(t)}const ge=["other-assets","app-shell"],_e=[/\/api(\/\d+)?\/system\/info/,/\/api(\/\d+)?\/userSettings/,/\/api(\/\d+)?\/me\?fields=id$/],ye=JSON.parse({NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_DHIS2_APP_VERSION:"100.2.0",REACT_APP_DHIS2_APP_NAME:"User Profile",REACT_APP_DHIS2_BASE_URL:".."}.REACT_APP_DHIS2_APP_PWA_CACHING_PATTERNS_TO_OMIT_FROM_APP_SHELL||{NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_DHIS2_APP_VERSION:"100.2.0",REACT_APP_DHIS2_APP_NAME:"User Profile",REACT_APP_DHIS2_BASE_URL:".."}.REACT_APP_DHIS2_APP_PWA_CACHING_PATTERNS_TO_OMIT||"[]").map((e=>new RegExp(e))),me="true"==={NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_DHIS2_APP_VERSION:"100.2.0",REACT_APP_DHIS2_APP_NAME:"User Profile",REACT_APP_DHIS2_BASE_URL:".."}.REACT_APP_DHIS2_APP_PWA_CACHING_OMIT_EXTERNAL_REQUESTS_FROM_APP_SHELL||"true"==={NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_DHIS2_APP_VERSION:"100.2.0",REACT_APP_DHIS2_APP_NAME:"User Profile",REACT_APP_DHIS2_BASE_URL:".."}.REACT_APP_DHIS2_APP_PWA_CACHING_OMIT_EXTERNAL_REQUESTS;function ve(e){if(_e.some((t=>t.test(e.href))))return!0;if(me&&e.origin!==self.location.origin)return!1;return!ye.some((t=>t.test(e.href)))}async function we(){const e=await caches.keys();return Promise.all(e.map((async e=>{const t=/workbox/.test(e),n=!!ge.find((t=>t===e)),r=await self.dbPromise,s=!!await r.get(se,e);if(!t&&!n&&!s)return console.debug(`[SW] Cache with key ${e} is unused and will be deleted`),caches.delete(e)})))}n(110);!function(){if(!("true"==={NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_DHIS2_APP_VERSION:"100.2.0",REACT_APP_DHIS2_APP_NAME:"User Profile",REACT_APP_DHIS2_BASE_URL:".."}.REACT_APP_DHIS2_APP_PWA_ENABLED))return self.addEventListener("install",(()=>{self.skipWaiting()})),void self.addEventListener("activate",(async()=>{console.log("Removing previous service worker"),self.registration.unregister();const e=await self.caches.keys();await Promise.all(e.map((e=>self.caches.delete(e)))),await ae(),(await self.clients.matchAll({type:"window"})).forEach((e=>e.navigate(e.url)))}));self.__WB_DISABLE_DEV_LOGS=!0,self.clientRecordingStates={};const e=new RegExp("/[^/?]+\\.[^/]+$");{const t=[{'revision':'eef1891142a2a68a469cb6766d240550','url':'./index.html'},{'revision':null,'url':'./static/css/4067.ce55fb93.chunk.css'},{'revision':null,'url':'./static/css/app.947bca70.chunk.css'},{'revision':null,'url':'./static/css/main.4536e618.css'},{'revision':null,'url':'./static/js/4067.c0ba9caf.chunk.js'},{'revision':null,'url':'./static/js/app.e1872a3f.chunk.js'},{'revision':null,'url':'./static/js/main.9b15791a.js'},{'revision':null,'url':'./static/js/moment-locales/af.7fda3a9e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar-dz.d22790aa.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar-kw.67e38e5c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar-ly.4e291e7b.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar-ma.1ddfe936.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar-sa.35714f0f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar-tn.667e8c1a.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ar.fcbfeade.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/az.ba91b73d.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/be.24942b7d.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/bg.da59c61e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/bm.773dab3b.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/bn-bd.ee902898.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/bn.7da99991.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/bo.136f07d5.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/br.9e147165.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/bs.27525ce8.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ca.07f3e9ee.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/cs.2f97fe73.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/cv.5e9b3833.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/cy.514578f5.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/da.dedd4c80.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/de-at.aa6a5569.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/de-ch.697d93dc.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/de.dde9a031.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/dv.7c8bd6a0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/el.3abaece0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-au.e1eb5192.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-ca.53aaeb40.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-gb.957b01e7.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-ie.de616a70.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-il.660cc4f0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-in.0301ecef.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-nz.214c4d06.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/en-sg.98f2d7f5.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/eo.39c0614b.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/es-do.1dfa9cd3.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/es-mx.03dcad09.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/es-us.715be5e7.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/es.8c13f5d0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/et.f2838fa6.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/eu.8ed811f0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fa.bdca86cf.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fi.21643010.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fil.974178e4.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fo.e6422a30.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fr-ca.23d8457c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fr-ch.e06dda04.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fr.4933bdda.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/fy.f68cfd6b.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ga.9f17bcfb.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/gd.4220589c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/gl.f5ad1e87.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/gom-deva.21e266ba.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/gom-latn.2d56bce0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/gu.516abba9.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/he.2de885ec.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/hi.9890d168.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/hr.f4f8a907.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/hu.fc8963ec.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/hy-am.0f471352.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/id.d62f3a1e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/is.05726543.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/it-ch.f48160a5.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/it.e30c992c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ja.d2a0dd0f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/jv.05552a5e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ka.ad4ca391.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/kk.98fa7ebc.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/km.cb0ce21f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/kn.07cf988a.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ko.0e9e1a20.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ku.b8a8c061.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ky.cc6aa2ca.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/lb.da6205c0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/lo.6bc2f20f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/lt.53ed38c8.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/lv.d46cff4f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/me.61df2a93.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/mi.d5e6c550.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/mk.0b73ce31.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ml.4f9ebc74.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/mn.ce516e7f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/mr.fd1ef93a.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ms-my.44c5c09e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ms.3de51675.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/mt.ef0e01e0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/my.22c352ee.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/nb.81a3e088.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ne.63098f3e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/nl-be.3a45fa17.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/nl.008d798f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/nn.a08a1917.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/oc-lnc.db03e5e8.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/pa-in.8ad3a9bd.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/pl.544f0005.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/pt-br.4520371a.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/pt.9ffb1426.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ro.03ba2f78.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ru.2e6fa56f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sd.e1c5331a.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/se.322b1e4c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/si.22c81bf6.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sk.b5e1d3ac.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sl.03ec0cb0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sq.3633e156.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sr-cyrl.e1290c6c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sr.3c39454c.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ss.15138d78.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sv.1b62bac4.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/sw.8b00beb8.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ta.867b4df9.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/te.8f1e6357.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tet.37e521c4.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tg.1b54016e.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/th.aa268d33.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tk.edd14851.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tl-ph.2e4bc3a6.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tlh.258e0b2b.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tr.7f923fc8.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tzl.a30cd8fe.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tzm-latn.fbb7e4a1.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/tzm.ffc51f7f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ug-cn.a8d4646b.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/uk.d2d99122.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/ur.957adaeb.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/uz-latn.53f016ae.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/uz.18ad560f.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/vi.44c2a211.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/x-pseudo.05c33cb0.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/yo.59d422ea.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/zh-cn.bf74a168.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/zh-hk.155bbb6d.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/zh-mo.2f678a39.chunk.js'},{'revision':null,'url':'./static/js/moment-locales/zh-tw.4f662522.chunk.js'},{'revision':null,'url':'./static/media/MaterialIcons-Regular.08cefa1bc6566a650da7.woff'},{'revision':null,'url':'./static/media/MaterialIcons-Regular.2d8017489da689caedc1.woff2'},{'revision':null,'url':'./static/media/MaterialIcons-Regular.698bd8550d863c20a3e1.ttf'},{'revision':null,'url':'./static/media/MaterialIcons-Regular.af9a28e7f261a412f581.eot'},{'revision':null,'url':'./static/media/roboto-latin-100.a45108d3b34af91f9113.woff'},{'revision':null,'url':'./static/media/roboto-latin-100.c2aa4ab115bf9c6057cb.woff2'},{'revision':null,'url':'./static/media/roboto-latin-100italic.451d4e559d6f57cdf6a1.woff'},{'revision':null,'url':'./static/media/roboto-latin-100italic.7f839a8652da29745ce4.woff2'},{'revision':null,'url':'./static/media/roboto-latin-300.37a7069dc30fc663c878.woff2'},{'revision':null,'url':'./static/media/roboto-latin-300.865f928cbabcc9f8f2b5.woff'},{'revision':null,'url':'./static/media/roboto-latin-300italic.bd5b7a13f2c52b531a2a.woff'},{'revision':null,'url':'./static/media/roboto-latin-300italic.c64e7e354c88e613c77c.woff2'},{'revision':null,'url':'./static/media/roboto-latin-400.176f8f5bd5f02b3abfcf.woff2'},{'revision':null,'url':'./static/media/roboto-latin-400.49ae34d4cc6b98c00c69.woff'},{'revision':null,'url':'./static/media/roboto-latin-400italic.b1d9d9904bfca8802a63.woff'},{'revision':null,'url':'./static/media/roboto-latin-400italic.d022bc70dc1bf7b3425d.woff2'},{'revision':null,'url':'./static/media/roboto-latin-500.cea99d3e3e13a3a599a0.woff'},{'revision':null,'url':'./static/media/roboto-latin-500.f5b74d7ffcdf85b9dd60.woff2'},{'revision':null,'url':'./static/media/roboto-latin-500italic.0d8bb5b3ee5f5dac9e44.woff2'},{'revision':null,'url':'./static/media/roboto-latin-500italic.18d00f739ff1e1c52db1.woff'},{'revision':null,'url':'./static/media/roboto-latin-700.2267169ee7270a22a963.woff'},{'revision':null,'url':'./static/media/roboto-latin-700.c18ee39fb002ad58b6dc.woff2'},{'revision':null,'url':'./static/media/roboto-latin-700italic.7d8125ff7f707231fd89.woff2'},{'revision':null,'url':'./static/media/roboto-latin-700italic.9360531f9bb817f917f0.woff'},{'revision':null,'url':'./static/media/roboto-latin-900.870c8c1486f76054301a.woff2'},{'revision':null,'url':'./static/media/roboto-latin-900.bac8362e7a6ea60b6983.woff'},{'revision':null,'url':'./static/media/roboto-latin-900italic.c20d916c1a1b094c1cec.woff'},{'revision':null,'url':'./static/media/roboto-latin-900italic.cb5ad999740e9d8a8bd1.woff2'}]||[];k(self.__WB_PLUGIN_MANIFEST||[]);const n=t.find((e=>{let{url:t}=e;return t.endsWith("index.html")}));U([n]);const r="./index.html";O((t=>{let{request:n,url:r}=t;return"navigate"===n.mode&&(!r.pathname.startsWith("/_")&&!(e.test(r.pathname)&&!r.pathname.endsWith("index.html")))}),(e=>{let{request:t}=e;return fetch(t).then((e=>"opaqueredirect"!==e.type&&e.ok?N(r):e)).catch((()=>N(r)))}));k(t.filter((e=>e!==n)));k(self.__WB_BUILD_MANIFEST||[])}var t;O(ue,he),O((e=>{let{url:t}=e;return ve(t)&&/\.(jpg|gif|png|bmp|tiff|ico|woff)$/.test(t.pathname)}),new x({cacheName:"other-assets"})),O((e=>{let{url:t}=e;return ve(t)||!1}),new q({cacheName:"app-shell"})),t=new class extends w{_handle(e,t){return t.fetch(e).catch((t=>caches.match(e).then((e=>{if(!e)throw t;return e}))))}},I().setDefaultHandler(t),self.addEventListener("message",(e=>{e.data&&(e.data.type===M.getClientsInfo&&async function(e){const t=e.source.id,n=await self.clients.matchAll({includeUncontrolled:!0}).then((e=>e.filter((e=>e.url.startsWith(self.registration.scope)))));self.clients.get(t).then((e=>{e.postMessage({type:M.clientsInfo,payload:{clientsCount:n.length}})}))}(e),e.data.type===M.claimClients&&async function(){self.clients.claim(),(await self.clients.matchAll({includeUncontrolled:!0})).forEach((e=>e.navigate(e.url)))}(),e.data.type===M.skipWaiting&&self.skipWaiting(),e.data.type===M.startRecording&&function(e){var t,n,r;if(console.debug("[SW] Starting recording"),null===(t=e.data.payload)||void 0===t||!t.sectionId)throw new Error("[SW] No section ID specified to record");const s=e.source.id;if(le(s))throw new Error("[SW] Can't start a new recording; a recording is already in process");const i={sectionId:null===(n=e.data.payload)||void 0===n?void 0:n.sectionId,pendingRequests:new Set,fulfilledRequests:0,recordingTimeout:void 0,recordingTimeoutDelay:(null===(r=e.data.payload)||void 0===r?void 0:r.recordingTimeoutDelay)||1e3,confirmationTimeout:void 0};self.clientRecordingStates[s]=i,self.clients.get(s).then((e=>{e.postMessage({type:M.recordingStarted})}))}(e),e.data.type===M.completeRecording&&async function(e){try{const t=self.clientRecordingStates[e];console.debug("[SW] Completing recording",{clientId:e,recordingState:t}),clearTimeout(t.confirmationTimeout),void 0===self.dbPromise&&(self.dbPromise=oe()),(await self.dbPromise).put(se,{sectionId:t.sectionId,lastUpdated:new Date,requests:t.fulfilledRequests}).catch(console.error);const n=await caches.open(t.sectionId),r=await caches.open(fe("temp",e));(await r.keys()).forEach((async e=>{const t=await r.match(e);n.put(e,t)})),pe(e),self.clients.get(e).then((e=>{e.postMessage({type:M.recordingCompleted})}))}catch(t){de(t,e)}}(e.source.id))})),self.addEventListener("activate",(e=>{e.waitUntil(function(){const e=oe();return self.dbPromise=e,e}().then(we))}))}()}()}();
//# sourceMappingURL=service-worker.js.map