diff --git a/cookbook/templates/sw.js b/cookbook/templates/sw.js index 3332d7b58..bce6b80a6 100644 --- a/cookbook/templates/sw.js +++ b/cookbook/templates/sw.js @@ -1 +1 @@ -(function(e){var t={};function n(r){if(t[r])return t[r].exports;var s=t[r]={i:r,l:!1,exports:{}};return e[r].call(s.exports,s,s.exports,n),s.l=!0,s.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)n.d(r,s,function(t){return e[t]}.bind(null,s));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="249e")})({"06cf":function(e,t,n){var r=n("83ab"),s=n("d1e7"),o=n("5c6c"),a=n("fc6a"),i=n("c04e"),c=n("5135"),u=n("0cfb"),l=Object.getOwnPropertyDescriptor;t.f=r?l:function(e,t){if(e=a(e),t=i(t,!0),u)try{return l(e,t)}catch(n){}if(c(e,t))return o(!s.f.call(e,t),e[t])}},"0cfb":function(e,t,n){var r=n("83ab"),s=n("d039"),o=n("cc12");e.exports=!r&&!s((function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},"1d80":function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},"23cb":function(e,t,n){var r=n("a691"),s=Math.max,o=Math.min;e.exports=function(e,t){var n=r(e);return n<0?s(n+t,0):o(n,t)}},"23e7":function(e,t,n){var r=n("da84"),s=n("06cf").f,o=n("9112"),a=n("6eeb"),i=n("ce4e"),c=n("e893"),u=n("94ca");e.exports=function(e,t){var n,l,f,h,p,d,g=e.target,y=e.global,w=e.stat;if(l=y?r:w?r[g]||i(g,{}):(r[g]||{}).prototype,l)for(f in t){if(p=t[f],e.noTargetGet?(d=s(l,f),h=d&&d.value):h=l[f],n=u(y?f:g+(w?".":"#")+f,e.forced),!n&&void 0!==h){if(typeof p===typeof h)continue;c(p,h)}(e.sham||h&&h.sham)&&o(p,"sham",!0),a(l,f,p,e)}}},"241c":function(e,t,n){var r=n("ca84"),s=n("7839"),o=s.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},"249e":function(e,t,n){"use strict";n.r(t);n("4d63"),n("ac1f"),n("25f0"),n("40b9");const r=(e,...t)=>{let n=e;return t.length>0&&(n+=" :: "+JSON.stringify(t)),n},s=r;class o extends Error{constructor(e,t){const n=s(e,t);super(n),this.name=e,this.details=t}}const a={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},i=e=>[a.prefix,e,a.suffix].filter(e=>e&&e.length>0).join("-"),c=e=>{for(const t of Object.keys(a))e(t)},u={updateDetails:e=>{c(t=>{"string"===typeof e[t]&&(a[t]=e[t])})},getGoogleAnalyticsName:e=>e||i(a.googleAnalytics),getPrecacheName:e=>e||i(a.precache),getPrefix:()=>a.prefix,getRuntimeName:e=>e||i(a.runtime),getSuffix:()=>a.suffix};function l(e,t){const n=t();return e.waitUntil(n),n}n("c700");const f="__WB_REVISION__";function h(e){if(!e)throw new o("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:n}=e;if(!n)throw new o("add-to-cache-list-unexpected-type",{entry:e});if(!t){const e=new URL(n,location.href);return{cacheKey:e.href,url:e.href}}const r=new URL(n,location.href),s=new URL(n,location.href);return r.searchParams.set(f,t),{cacheKey:r.href,url:s.href}}class p{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:n})=>{if("install"===e.type){const e=t.originalRequest.url;n?this.notUpdatedURLs.push(e):this.updatedURLs.push(e)}return n}}}class d{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:e,params:t})=>{const n=t&&t.cacheKey||this._precacheController.getCacheKeyForURL(e.url);return n?new Request(n):e},this._precacheController=e}}let g;function y(){if(void 0===g){const t=new Response("");if("body"in t)try{new Response(t.body),g=!0}catch(e){g=!1}g=!1}return g}async function w(e,t){let n=null;if(e.url){const t=new URL(e.url);n=t.origin}if(n!==self.location.origin)throw new o("cross-origin-copy-response",{origin:n});const r=e.clone(),s={headers:new Headers(r.headers),status:r.status,statusText:r.statusText},a=t?t(s):s,i=y()?r.body:await r.blob();return new Response(i,a)}n("741b");const m={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},v=e=>[m.prefix,e,m.suffix].filter(e=>e&&e.length>0).join("-"),b=e=>{for(const t of Object.keys(m))e(t)},x={updateDetails:e=>{b(t=>{"string"===typeof e[t]&&(m[t]=e[t])})},getGoogleAnalyticsName:e=>e||v(m.googleAnalytics),getPrecacheName:e=>e||v(m.precache),getPrefix:()=>m.prefix,getRuntimeName:e=>e||v(m.runtime),getSuffix:()=>m.suffix},_=(e,...t)=>{let n=e;return t.length>0&&(n+=" :: "+JSON.stringify(t)),n},R=_;class C extends Error{constructor(e,t){const n=R(e,t);super(n),this.name=e,this.details=t}}const S=e=>{const t=new URL(String(e),location.href);return t.href.replace(new RegExp("^"+location.origin),"")};function O(e,t){const n=new URL(e);for(const r of t)n.searchParams.delete(r);return n.href}async function T(e,t,n,r){const s=O(t.url,n);if(t.url===s)return e.match(t,r);const o={...r,ignoreSearch:!0},a=await e.keys(t,o);for(const i of a){const t=O(i.url,n);if(s===t)return e.match(i,r)}}class U{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const k=new Set;async function P(){for(const e of k)await e()}function L(e){return new Promise(t=>setTimeout(t,e))}n("6aa8");function q(e){return"string"===typeof e?new Request(e):e}class E{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new U,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)}fetch(e){return this.waitUntil((async()=>{const{event:t}=this;let n=q(e);if("navigate"===n.mode&&t instanceof FetchEvent&&t.preloadResponse){const e=await t.preloadResponse;if(e)return e}const r=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const e of this.iterateCallbacks("requestWillFetch"))n=await e({request:n.clone(),event:t})}catch(o){throw new C("plugin-error-request-will-fetch",{thrownError:o})}const s=n.clone();try{let e;e=await fetch(n,"navigate"===n.mode?void 0:this._strategy.fetchOptions);for(const n of this.iterateCallbacks("fetchDidSucceed"))e=await n({event:t,request:s,response:e});return e}catch(a){throw r&&await this.runCallbacks("fetchDidFail",{error:a,event:t,originalRequest:r.clone(),request:s.clone()}),a}})())}async fetchAndCachePut(e){const t=await this.fetch(e),n=t.clone();return this.waitUntil(this.cachePut(e,n)),t}cacheMatch(e){return this.waitUntil((async()=>{const t=q(e);let n;const{cacheName:r,matchOptions:s}=this._strategy,o=await this.getCacheKey(t,"read"),a={...s,cacheName:r};n=await caches.match(o,a);for(const e of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await e({cacheName:r,matchOptions:s,cachedResponse:n,request:o,event:this.event})||void 0;return n})())}async cachePut(e,t){const n=q(e);await L(0);const r=await this.getCacheKey(n,"write");if(!t)throw new C("cache-put-with-no-response",{url:S(r.url)});const s=await this._ensureResponseSafeToCache(t);if(!s)return void 0;const{cacheName:o,matchOptions:a}=this._strategy,i=await self.caches.open(o),c=this.hasCallback("cacheDidUpdate"),u=c?await T(i,r.clone(),["__WB_REVISION__"],a):null;try{await i.put(r,c?s.clone():s)}catch(l){throw"QuotaExceededError"===l.name&&await P(),l}for(const f of this.iterateCallbacks("cacheDidUpdate"))await f({cacheName:o,oldResponse:u,newResponse:s.clone(),request:r,event:this.event})}async getCacheKey(e,t){if(!this._cacheKeys[t]){let n=e;for(const e of this.iterateCallbacks("cacheKeyWillBeUsed"))n=q(await e({mode:t,request:n,event:this.event,params:this.params}));this._cacheKeys[t]=n}return this._cacheKeys[t]}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={...r,state:n};return t[e](s)};yield r}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;while(e=this._extendLifetimePromises.shift())await e}destroy(){this._handlerDeferred.resolve()}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 N{constructor(e={}){this.cacheName=x.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,n="string"===typeof e.request?new Request(e.request):e.request,r="params"in e?e.params:void 0,s=new E(this,{event:t,request:n,params:r}),o=this._getResponse(s,n,t),a=this._awaitComplete(o,s,n,t);return[o,a]}async _getResponse(e,t,n){await e.runCallbacks("handlerWillStart",{event:n,request:t});let r=void 0;try{if(r=await this._handle(t,e),!r||"error"===r.type)throw new C("no-response",{url:t.url})}catch(s){for(const o of e.iterateCallbacks("handlerDidError"))if(r=await o({error:s,event:n,request:t}),r)break;if(!r)throw s}for(const o of e.iterateCallbacks("handlerWillRespond"))r=await o({event:n,request:t,response:r});return r}async _awaitComplete(e,t,n,r){let s,o;try{s=await e}catch(o){}try{await t.runCallbacks("handlerDidRespond",{event:r,request:n,response:s}),await t.doneWaiting()}catch(a){o=a}if(await t.runCallbacks("handlerDidComplete",{event:r,request:n,response:s,error:o}),t.destroy(),o)throw o}}const j={async cacheWillUpdate({response:e}){return e.redirected?await w(e):e}};class M extends N{constructor(e={}){e.cacheName=u.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=!1!==e.fallbackToNetwork,this.plugins.push(j)}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,t){let n;if(!this._fallbackToNetwork)throw new o("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return n=await t.fetch(e),n}async _handleInstall(e,t){const n=await t.fetchAndCachePut(e);let r=Boolean(n);if(n&&n.status>=400&&!this._usesCustomCacheableResponseLogic()&&(r=!1),!r)throw new o("bad-precaching-response",{url:e.url,status:n.status});return n}_usesCustomCacheableResponseLogic(){return this.plugins.some(e=>e.cacheWillUpdate&&e!==j)}}class K{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:n=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new M({cacheName:u.getPrecacheName(e),plugins:[...t,new d({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 t=[];for(const n of e){"string"===typeof n?t.push(n):n&&void 0===n.revision&&t.push(n.url);const{cacheKey:e,url:r}=h(n),s="string"!==typeof n&&n.revision?"reload":"default";if(this._urlsToCacheKeys.has(r)&&this._urlsToCacheKeys.get(r)!==e)throw new o("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(r),secondEntry:e});if("string"!==typeof n&&n.integrity){if(this._cacheKeysToIntegrities.has(e)&&this._cacheKeysToIntegrities.get(e)!==n.integrity)throw new o("add-to-cache-list-conflicting-integrities",{url:r});this._cacheKeysToIntegrities.set(e,n.integrity)}if(this._urlsToCacheKeys.set(r,e),this._urlsToCacheModes.set(r,s),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 l(e,async()=>{const t=new p;this.strategy.plugins.push(t);for(const[s,o]of this._urlsToCacheKeys){const t=this._cacheKeysToIntegrities.get(o),n=this._urlsToCacheModes.get(s),r=new Request(s,{integrity:t,cache:n,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:o},request:r,event:e}))}const{updatedURLs:n,notUpdatedURLs:r}=t;return{updatedURLs:n,notUpdatedURLs:r}})}activate(e){return l(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)}async matchPrecache(e){const t=e instanceof Request?e.url:e,n=this.getCacheKeyForURL(t);if(n){const e=await self.caches.open(this.strategy.cacheName);return e.match(n)}}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new o("non-precached-url",{url:e});return n=>(n.request=new Request(e),n.params={cacheKey:t,...n.params},this.strategy.handle(n))}}let I;const A=()=>(I||(I=new K),I);n("95a8");const W=(e,...t)=>{let n=e;return t.length>0&&(n+=" :: "+JSON.stringify(t)),n},D=W;class F extends Error{constructor(e,t){const n=D(e,t);super(n),this.name=e,this.details=t}}n("e6d2");const H="GET",B=e=>e&&"object"===typeof e?e:{handle:e};class G{constructor(e,t,n=H){this.handler=B(t),this.match=e,this.method=n}}class Y extends G{constructor(e,t,n){const r=({url:t})=>{const n=e.exec(t.href);if(n&&(t.origin===location.origin||0===n.index))return n.slice(1)};super(r,t,n)}}class z{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({request:e,event:t}){const n=new URL(e.url,location.href);if(!n.protocol.startsWith("http"))return void 0;const r=n.origin===location.origin,{params:s,route:o}=this.findMatchingRoute({event:t,request:e,sameOrigin:r,url:n});let a=o&&o.handler;const i=e.method;if(!a&&this._defaultHandlerMap.has(i)&&(a=this._defaultHandlerMap.get(i)),!a)return void 0;let c;try{c=a.handle({url:n,request:e,event:t,params:s})}catch(u){c=Promise.reject(u)}return c instanceof Promise&&this._catchHandler&&(c=c.catch(r=>this._catchHandler.handle({url:n,request:e,event:t}))),c}findMatchingRoute({url:e,sameOrigin:t,request:n,event:r}){const s=this._routes.get(n.method)||[];for(const o of s){let s;const a=o.match({url:e,sameOrigin:t,request:n,event:r});if(a)return s=a,(Array.isArray(a)&&0===a.length||a.constructor===Object&&0===Object.keys(a).length||"boolean"===typeof a)&&(s=void 0),{route:o,params:s}}return{}}setDefaultHandler(e,t=H){this._defaultHandlerMap.set(t,B(e))}setCatchHandler(e){this._catchHandler=B(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 F("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(!(t>-1))throw new F("unregister-route-route-not-registered");this._routes.get(e.method).splice(t,1)}}let J;const V=()=>(J||(J=new z,J.addFetchListener(),J.addCacheListener()),J);function $(e,t,n){let r;if("string"===typeof e){const s=new URL(e,location.href);0;const o=({url:e})=>e.href===s.href;r=new G(o,t,n)}else if(e instanceof RegExp)r=new Y(e,t,n);else if("function"===typeof e)r=new G(e,t,n);else{if(!(e instanceof G))throw new F("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});r=e}const s=V();return s.registerRoute(r),r}function Q(e,t=[]){for(const n of[...e.searchParams.keys()])t.some(e=>e.test(n))&&e.searchParams.delete(n);return e}function*X(e,{ignoreURLParametersMatching:t=[/^utm_/,/^fbclid$/],directoryIndex:n="index.html",cleanURLs:r=!0,urlManipulation:s}={}){const o=new URL(e,location.href);o.hash="",yield o.href;const a=Q(o,t);if(yield a.href,n&&a.pathname.endsWith("/")){const e=new URL(a.href);e.pathname+=n,yield e.href}if(r){const e=new URL(a.href);e.pathname+=".html",yield e.href}if(s){const e=s({url:o});for(const t of e)yield t.href}}class Z extends G{constructor(e,t){const n=({request:n})=>{const r=e.getURLsToCacheKeys();for(const e of X(n.url,t)){const t=r.get(e);if(t)return{cacheKey:t}}};super(n,e.strategy)}}function ee(e){const t=A(),n=new Z(t,e);$(n)}function te(e){const t=A();t.precache(e)}function ne(e,t){te(e),ee(t)}class re extends N{async _handle(e,t){let n,r=await t.cacheMatch(e);if(r)0;else{0;try{r=await t.fetchAndCachePut(e)}catch(s){n=s}0}if(!r)throw new C("no-response",{url:e.url,error:n});return r}}const se={cacheWillUpdate:async({response:e})=>200===e.status||0===e.status?e:null};class oe extends N{constructor(e={}){super(e),this.plugins.some(e=>"cacheWillUpdate"in e)||this.plugins.unshift(se),this._networkTimeoutSeconds=e.networkTimeoutSeconds||0}async _handle(e,t){const n=[];const r=[];let s;if(this._networkTimeoutSeconds){const{id:o,promise:a}=this._getTimeoutPromise({request:e,logs:n,handler:t});s=o,r.push(a)}const o=this._getNetworkPromise({timeoutId:s,request:e,logs:n,handler:t});r.push(o);for(const i of r)t.waitUntil(i);let a=await Promise.race(r);if(a||(a=await o),!a)throw new C("no-response",{url:e.url});return a}_getTimeoutPromise({request:e,logs:t,handler:n}){let r;const s=new Promise(t=>{const s=async()=>{t(await n.cacheMatch(e))};r=setTimeout(s,1e3*this._networkTimeoutSeconds)});return{promise:s,id:r}}async _getNetworkPromise({timeoutId:e,request:t,logs:n,handler:r}){let s,o;try{o=await r.fetchAndCachePut(t)}catch(a){s=a}return e&&clearTimeout(e),!s&&o||(o=await r.cacheMatch(t)),o}}class ae extends N{constructor(e){super(e),this.plugins.some(e=>"cacheWillUpdate"in e)||this.plugins.unshift(se)}async _handle(e,t){const n=t.fetchAndCachePut(e).catch(()=>{});let r,s=await t.cacheMatch(e);if(s)0;else{0;try{s=await n}catch(o){r=o}}if(!s)throw new C("no-response",{url:e.url,error:r});return s}}ne([{'revision':'66c42acf5ec4142fa7fc226ed186ee50','url':'css/chunk-vendors.css'},{'revision':'b3c0d991ef9940863d1bafbcbe40ee57','url':'js/chunk-vendors.js'},{'revision':'0b4f0af04ae814f20490aab76e1b4ace','url':'js/recipe_view.js'},{'revision':'7ffb0d32c26b065a8bac007813308e6e','url':'manifest.json'},{'revision':'1606d2f696ffd86964c971c88467194a','url':'recipe_view.html'}]),$((function(e){var t=e.request;return"image"===t.destination}),new re({cacheName:"images"})),$((function(e){var t=e.request;return"script"===t.destination||"style"===t.destination}),new ae({cacheName:"assets"})),$(new RegExp("jsi18n/"),new ae({cacheName:"assets"})),$(new RegExp("api/*"),new oe({cacheName:"api"})),$((function(e){var t=e.request;return"document"===t.destination}),new oe({cacheName:"html"}))},"25f0":function(e,t,n){"use strict";var r=n("6eeb"),s=n("825a"),o=n("d039"),a=n("ad6d"),i="toString",c=RegExp.prototype,u=c[i],l=o((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),f=u.name!=i;(l||f)&&r(RegExp.prototype,i,(function(){var e=s(this),t=String(e.source),n=e.flags,r=String(void 0===n&&e instanceof RegExp&&!("flags"in c)?a.call(e):n);return"/"+t+"/"+r}),{unsafe:!0})},2626:function(e,t,n){"use strict";var r=n("d066"),s=n("9bf2"),o=n("b622"),a=n("83ab"),i=o("species");e.exports=function(e){var t=r(e),n=s.f;a&&t&&!t[i]&&n(t,i,{configurable:!0,get:function(){return this}})}},"3bbe":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},"40b9":function(e,t,n){"use strict";try{self["workbox:core:6.0.2"]&&_()}catch(r){}},"428f":function(e,t,n){var r=n("da84");e.exports=r},"44ad":function(e,t,n){var r=n("d039"),s=n("c6b6"),o="".split;e.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==s(e)?o.call(e,""):Object(e)}:Object},"44e7":function(e,t,n){var r=n("861d"),s=n("c6b6"),o=n("b622"),a=o("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[a])?!!t:"RegExp"==s(e))}},4930:function(e,t,n){var r=n("d039");e.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},"4d63":function(e,t,n){var r=n("83ab"),s=n("da84"),o=n("94ca"),a=n("7156"),i=n("9bf2").f,c=n("241c").f,u=n("44e7"),l=n("ad6d"),f=n("9f7f"),h=n("6eeb"),p=n("d039"),d=n("69f3").set,g=n("2626"),y=n("b622"),w=y("match"),m=s.RegExp,v=m.prototype,b=/a/g,x=/a/g,_=new m(b)!==b,R=f.UNSUPPORTED_Y,C=r&&o("RegExp",!_||R||p((function(){return x[w]=!1,m(b)!=b||m(x)==x||"/a/i"!=m(b,"i")})));if(C){var S=function(e,t){var n,r=this instanceof S,s=u(e),o=void 0===t;if(!r&&s&&e.constructor===S&&o)return e;_?s&&!o&&(e=e.source):e instanceof S&&(o&&(t=l.call(e)),e=e.source),R&&(n=!!t&&t.indexOf("y")>-1,n&&(t=t.replace(/y/g,"")));var i=a(_?new m(e,t):m(e,t),r?this:v,S);return R&&n&&d(i,{sticky:n}),i},O=function(e){e in S||i(S,e,{configurable:!0,get:function(){return m[e]},set:function(t){m[e]=t}})},T=c(m),U=0;while(T.length>U)O(T[U++]);v.constructor=S,S.prototype=v,h(s,"RegExp",S)}g("RegExp")},"4d64":function(e,t,n){var r=n("fc6a"),s=n("50c4"),o=n("23cb"),a=function(e){return function(t,n,a){var i,c=r(t),u=s(c.length),l=o(a,u);if(e&&n!=n){while(u>l)if(i=c[l++],i!=i)return!0}else for(;u>l;l++)if((e||l in c)&&c[l]===n)return e||l||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},"50c4":function(e,t,n){var r=n("a691"),s=Math.min;e.exports=function(e){return e>0?s(r(e),9007199254740991):0}},5135:function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},5692:function(e,t,n){var r=n("c430"),s=n("c6cd");(e.exports=function(e,t){return s[e]||(s[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.8.2",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(e,t,n){var r=n("d066"),s=n("241c"),o=n("7418"),a=n("825a");e.exports=r("Reflect","ownKeys")||function(e){var t=s.f(a(e)),n=o.f;return n?t.concat(n(e)):t}},"5c6c":function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"69f3":function(e,t,n){var r,s,o,a=n("7f9a"),i=n("da84"),c=n("861d"),u=n("9112"),l=n("5135"),f=n("c6cd"),h=n("f772"),p=n("d012"),d=i.WeakMap,g=function(e){return o(e)?s(e):r(e,{})},y=function(e){return function(t){var n;if(!c(t)||(n=s(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}};if(a){var w=f.state||(f.state=new d),m=w.get,v=w.has,b=w.set;r=function(e,t){return t.facade=e,b.call(w,e,t),t},s=function(e){return m.call(w,e)||{}},o=function(e){return v.call(w,e)}}else{var x=h("state");p[x]=!0,r=function(e,t){return t.facade=e,u(e,x,t),t},s=function(e){return l(e,x)?e[x]:{}},o=function(e){return l(e,x)}}e.exports={set:r,get:s,has:o,enforce:g,getterFor:y}},"6aa8":function(e,t,n){"use strict";try{self["workbox:strategies:6.0.2"]&&_()}catch(r){}},"6eeb":function(e,t,n){var r=n("da84"),s=n("9112"),o=n("5135"),a=n("ce4e"),i=n("8925"),c=n("69f3"),u=c.get,l=c.enforce,f=String(String).split("String");(e.exports=function(e,t,n,i){var c,u=!!i&&!!i.unsafe,h=!!i&&!!i.enumerable,p=!!i&&!!i.noTargetGet;"function"==typeof n&&("string"!=typeof t||o(n,"name")||s(n,"name",t),c=l(n),c.source||(c.source=f.join("string"==typeof t?t:""))),e!==r?(u?!p&&e[t]&&(h=!0):delete e[t],h?e[t]=n:s(e,t,n)):h?e[t]=n:a(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||i(this)}))},7156:function(e,t,n){var r=n("861d"),s=n("d2bb");e.exports=function(e,t,n){var o,a;return s&&"function"==typeof(o=t.constructor)&&o!==n&&r(a=o.prototype)&&a!==n.prototype&&s(e,a),e}},7418:function(e,t){t.f=Object.getOwnPropertySymbols},"741b":function(e,t,n){"use strict";try{self["workbox:core:6.0.2"]&&_()}catch(r){}},7839:function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7f9a":function(e,t,n){var r=n("da84"),s=n("8925"),o=r.WeakMap;e.exports="function"===typeof o&&/native code/.test(s(o))},"825a":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},"83ab":function(e,t,n){var r=n("d039");e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"861d":function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},8925:function(e,t,n){var r=n("c6cd"),s=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(e){return s.call(e)}),e.exports=r.inspectSource},"90e3":function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++n+r).toString(36)}},9112:function(e,t,n){var r=n("83ab"),s=n("9bf2"),o=n("5c6c");e.exports=r?function(e,t,n){return s.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},9263:function(e,t,n){"use strict";var r=n("ad6d"),s=n("9f7f"),o=RegExp.prototype.exec,a=String.prototype.replace,i=o,c=function(){var e=/a/,t=/b*/g;return o.call(e,"a"),o.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),u=s.UNSUPPORTED_Y||s.BROKEN_CARET,l=void 0!==/()??/.exec("")[1],f=c||l||u;f&&(i=function(e){var t,n,s,i,f=this,h=u&&f.sticky,p=r.call(f),d=f.source,g=0,y=e;return h&&(p=p.replace("y",""),-1===p.indexOf("g")&&(p+="g"),y=String(e).slice(f.lastIndex),f.lastIndex>0&&(!f.multiline||f.multiline&&"\n"!==e[f.lastIndex-1])&&(d="(?: "+d+")",y=" "+y,g++),n=new RegExp("^(?:"+d+")",p)),l&&(n=new RegExp("^"+d+"$(?!\\s)",p)),c&&(t=f.lastIndex),s=o.call(h?n:f,y),h?s?(s.input=s.input.slice(g),s[0]=s[0].slice(g),s.index=f.lastIndex,f.lastIndex+=s[0].length):f.lastIndex=0:c&&s&&(f.lastIndex=f.global?s.index+s[0].length:t),l&&s&&s.length>1&&a.call(s[0],n,(function(){for(i=1;i0?r:n)(e)}},ac1f:function(e,t,n){"use strict";var r=n("23e7"),s=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==s},{exec:s})},ad6d:function(e,t,n){"use strict";var r=n("825a");e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},b622:function(e,t,n){var r=n("da84"),s=n("5692"),o=n("5135"),a=n("90e3"),i=n("4930"),c=n("fdbf"),u=s("wks"),l=r.Symbol,f=c?l:l&&l.withoutSetter||a;e.exports=function(e){return o(u,e)||(i&&o(l,e)?u[e]=l[e]:u[e]=f("Symbol."+e)),u[e]}},c04e:function(e,t,n){var r=n("861d");e.exports=function(e,t){if(!r(e))return e;var n,s;if(t&&"function"==typeof(n=e.toString)&&!r(s=n.call(e)))return s;if("function"==typeof(n=e.valueOf)&&!r(s=n.call(e)))return s;if(!t&&"function"==typeof(n=e.toString)&&!r(s=n.call(e)))return s;throw TypeError("Can't convert object to primitive value")}},c430:function(e,t){e.exports=!1},c6b6:function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},c6cd:function(e,t,n){var r=n("da84"),s=n("ce4e"),o="__core-js_shared__",a=r[o]||s(o,{});e.exports=a},c700:function(e,t,n){"use strict";try{self["workbox:precaching:6.0.2"]&&_()}catch(r){}},c8ba:function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}e.exports=n},ca84:function(e,t,n){var r=n("5135"),s=n("fc6a"),o=n("4d64").indexOf,a=n("d012");e.exports=function(e,t){var n,i=s(e),c=0,u=[];for(n in i)!r(a,n)&&r(i,n)&&u.push(n);while(t.length>c)r(i,n=t[c++])&&(~o(u,n)||u.push(n));return u}},cc12:function(e,t,n){var r=n("da84"),s=n("861d"),o=r.document,a=s(o)&&s(o.createElement);e.exports=function(e){return a?o.createElement(e):{}}},ce4e:function(e,t,n){var r=n("da84"),s=n("9112");e.exports=function(e,t){try{s(r,e,t)}catch(n){r[e]=t}return t}},d012:function(e,t){e.exports={}},d039:function(e,t){e.exports=function(e){try{return!!e()}catch(t){return!0}}},d066:function(e,t,n){var r=n("428f"),s=n("da84"),o=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?o(r[e])||o(s[e]):r[e]&&r[e][t]||s[e]&&s[e][t]}},d1e7:function(e,t,n){"use strict";var r={}.propertyIsEnumerable,s=Object.getOwnPropertyDescriptor,o=s&&!r.call({1:2},1);t.f=o?function(e){var t=s(this,e);return!!t&&t.enumerable}:r},d2bb:function(e,t,n){var r=n("825a"),s=n("3bbe");e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,e.call(n,[]),t=n instanceof Array}catch(o){}return function(n,o){return r(n),s(o),t?e.call(n,o):n.__proto__=o,n}}():void 0)},da84:function(e,t,n){(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||function(){return this}()||Function("return this")()}).call(this,n("c8ba"))},e6d2:function(e,t,n){"use strict";try{self["workbox:routing:6.0.2"]&&_()}catch(r){}},e893:function(e,t,n){var r=n("5135"),s=n("56ef"),o=n("06cf"),a=n("9bf2");e.exports=function(e,t){for(var n=s(t),i=a.f,c=o.f,u=0;u{let n=t;return e.length>0&&(n+=" :: "+JSON.stringify(e)),n},a=i;class c extends Error{constructor(t,e){const n=a(t,e);super(n),this.name=t,this.details=e}}const s={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},u=t=>[s.prefix,t,s.suffix].filter(t=>t&&t.length>0).join("-"),l=t=>{for(const e of Object.keys(s))t(e)},f={updateDetails:t=>{l(e=>{"string"===typeof t[e]&&(s[e]=t[e])})},getGoogleAnalyticsName:t=>t||u(s.googleAnalytics),getPrecacheName:t=>t||u(s.precache),getPrefix:()=>s.prefix,getRuntimeName:t=>t||u(s.runtime),getSuffix:()=>s.suffix};function h(t,e){const n=e();return t.waitUntil(n),n}n("c700");const p="__WB_REVISION__";function d(t){if(!t)throw new c("add-to-cache-list-unexpected-type",{entry:t});if("string"===typeof t){const e=new URL(t,location.href);return{cacheKey:e.href,url:e.href}}const{revision:e,url:n}=t;if(!n)throw new c("add-to-cache-list-unexpected-type",{entry:t});if(!e){const t=new URL(n,location.href);return{cacheKey:t.href,url:t.href}}const r=new URL(n,location.href),o=new URL(n,location.href);return r.searchParams.set(p,e),{cacheKey:r.href,url:o.href}}class g{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:t,state:e})=>{e&&(e.originalRequest=t)},this.cachedResponseWillBeUsed=async({event:t,state:e,cachedResponse:n})=>{if("install"===t.type){const t=e.originalRequest.url;n?this.notUpdatedURLs.push(t):this.updatedURLs.push(t)}return n}}}class y{constructor({precacheController:t}){this.cacheKeyWillBeUsed=async({request:t,params:e})=>{const n=e&&e.cacheKey||this._precacheController.getCacheKeyForURL(t.url);return n?new Request(n):t},this._precacheController=t}}let v;function w(){if(void 0===v){const e=new Response("");if("body"in e)try{new Response(e.body),v=!0}catch(t){v=!1}v=!1}return v}async function m(t,e){let n=null;if(t.url){const e=new URL(t.url);n=e.origin}if(n!==self.location.origin)throw new c("cross-origin-copy-response",{origin:n});const r=t.clone(),o={headers:new Headers(r.headers),status:r.status,statusText:r.statusText},i=e?e(o):o,a=w()?r.body:await r.blob();return new Response(a,i)}n("741b");const b={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!==typeof registration?registration.scope:""},x=t=>[b.prefix,t,b.suffix].filter(t=>t&&t.length>0).join("-"),_=t=>{for(const e of Object.keys(b))t(e)},R={updateDetails:t=>{_(e=>{"string"===typeof t[e]&&(b[e]=t[e])})},getGoogleAnalyticsName:t=>t||x(b.googleAnalytics),getPrecacheName:t=>t||x(b.precache),getPrefix:()=>b.prefix,getRuntimeName:t=>t||x(b.runtime),getSuffix:()=>b.suffix},E=(t,...e)=>{let n=t;return e.length>0&&(n+=" :: "+JSON.stringify(e)),n},L=E;class S extends Error{constructor(t,e){const n=L(t,e);super(n),this.name=t,this.details=e}}const O=t=>{const e=new URL(String(t),location.href);return e.href.replace(new RegExp("^"+location.origin),"")};function C(t,e){const n=new URL(t);for(const r of e)n.searchParams.delete(r);return n.href}async function T(t,e,n,r){const o=C(e.url,n);if(e.url===o)return t.match(e,r);const i={...r,ignoreSearch:!0},a=await t.keys(e,i);for(const c of a){const e=C(c.url,n);if(o===e)return t.match(c,r)}}class P{constructor(){this.promise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}}const k=new Set;async function U(){for(const t of k)await t()}function N(t){return new Promise(e=>setTimeout(e,t))}n("6aa8");function j(t){return"string"===typeof t?new Request(t):t}class q{constructor(t,e){this._cacheKeys={},Object.assign(this,e),this.event=e.event,this._strategy=t,this._handlerDeferred=new P,this._extendLifetimePromises=[],this._plugins=[...t.plugins],this._pluginStateMap=new Map;for(const n of this._plugins)this._pluginStateMap.set(n,{});this.event.waitUntil(this._handlerDeferred.promise)}fetch(t){return this.waitUntil((async()=>{const{event:e}=this;let n=j(t);if("navigate"===n.mode&&e instanceof FetchEvent&&e.preloadResponse){const t=await e.preloadResponse;if(t)return t}const r=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const t of this.iterateCallbacks("requestWillFetch"))n=await t({request:n.clone(),event:e})}catch(i){throw new S("plugin-error-request-will-fetch",{thrownError:i})}const o=n.clone();try{let t;t=await fetch(n,"navigate"===n.mode?void 0:this._strategy.fetchOptions);for(const n of this.iterateCallbacks("fetchDidSucceed"))t=await n({event:e,request:o,response:t});return t}catch(a){throw r&&await this.runCallbacks("fetchDidFail",{error:a,event:e,originalRequest:r.clone(),request:o.clone()}),a}})())}async fetchAndCachePut(t){const e=await this.fetch(t),n=e.clone();return this.waitUntil(this.cachePut(t,n)),e}cacheMatch(t){return this.waitUntil((async()=>{const e=j(t);let n;const{cacheName:r,matchOptions:o}=this._strategy,i=await this.getCacheKey(e,"read"),a={...o,cacheName:r};n=await caches.match(i,a);for(const t of this.iterateCallbacks("cachedResponseWillBeUsed"))n=await t({cacheName:r,matchOptions:o,cachedResponse:n,request:i,event:this.event})||void 0;return n})())}async cachePut(t,e){const n=j(t);await N(0);const r=await this.getCacheKey(n,"write");if(!e)throw new S("cache-put-with-no-response",{url:O(r.url)});const o=await this._ensureResponseSafeToCache(e);if(!o)return void 0;const{cacheName:i,matchOptions:a}=this._strategy,c=await self.caches.open(i),s=this.hasCallback("cacheDidUpdate"),u=s?await T(c,r.clone(),["__WB_REVISION__"],a):null;try{await c.put(r,s?o.clone():o)}catch(l){throw"QuotaExceededError"===l.name&&await U(),l}for(const f of this.iterateCallbacks("cacheDidUpdate"))await f({cacheName:i,oldResponse:u,newResponse:o.clone(),request:r,event:this.event})}async getCacheKey(t,e){if(!this._cacheKeys[e]){let n=t;for(const t of this.iterateCallbacks("cacheKeyWillBeUsed"))n=j(await t({mode:e,request:n,event:this.event,params:this.params}));this._cacheKeys[e]=n}return this._cacheKeys[e]}hasCallback(t){for(const e of this._strategy.plugins)if(t in e)return!0;return!1}async runCallbacks(t,e){for(const n of this.iterateCallbacks(t))await n(e)}*iterateCallbacks(t){for(const e of this._strategy.plugins)if("function"===typeof e[t]){const n=this._pluginStateMap.get(e),r=r=>{const o={...r,state:n};return e[t](o)};yield r}}waitUntil(t){return this._extendLifetimePromises.push(t),t}async doneWaiting(){let t;while(t=this._extendLifetimePromises.shift())await t}destroy(){this._handlerDeferred.resolve()}async _ensureResponseSafeToCache(t){let e=t,n=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(e=await r({request:this.request,response:e,event:this.event})||void 0,n=!0,!e)break;return n||e&&200!==e.status&&(e=void 0),e}}class A{constructor(t={}){this.cacheName=R.getRuntimeName(t.cacheName),this.plugins=t.plugins||[],this.fetchOptions=t.fetchOptions,this.matchOptions=t.matchOptions}handle(t){const[e]=this.handleAll(t);return e}handleAll(t){t instanceof FetchEvent&&(t={event:t,request:t.request});const e=t.event,n="string"===typeof t.request?new Request(t.request):t.request,r="params"in t?t.params:void 0,o=new q(this,{event:e,request:n,params:r}),i=this._getResponse(o,n,e),a=this._awaitComplete(i,o,n,e);return[i,a]}async _getResponse(t,e,n){await t.runCallbacks("handlerWillStart",{event:n,request:e});let r=void 0;try{if(r=await this._handle(e,t),!r||"error"===r.type)throw new S("no-response",{url:e.url})}catch(o){for(const i of t.iterateCallbacks("handlerDidError"))if(r=await i({error:o,event:n,request:e}),r)break;if(!r)throw o}for(const i of t.iterateCallbacks("handlerWillRespond"))r=await i({event:n,request:e,response:r});return r}async _awaitComplete(t,e,n,r){let o,i;try{o=await t}catch(i){}try{await e.runCallbacks("handlerDidRespond",{event:r,request:n,response:o}),await e.doneWaiting()}catch(a){i=a}if(await e.runCallbacks("handlerDidComplete",{event:r,request:n,response:o,error:i}),e.destroy(),i)throw i}}const M={async cacheWillUpdate({response:t}){return t.redirected?await m(t):t}};class K extends A{constructor(t={}){t.cacheName=f.getPrecacheName(t.cacheName),super(t),this._fallbackToNetwork=!1!==t.fallbackToNetwork,this.plugins.push(M)}async _handle(t,e){const n=await e.cacheMatch(t);return n||(e.event&&"install"===e.event.type?await this._handleInstall(t,e):await this._handleFetch(t,e))}async _handleFetch(t,e){let n;if(!this._fallbackToNetwork)throw new c("missing-precache-entry",{cacheName:this.cacheName,url:t.url});return n=await e.fetch(t),n}async _handleInstall(t,e){const n=await e.fetchAndCachePut(t);let r=Boolean(n);if(n&&n.status>=400&&!this._usesCustomCacheableResponseLogic()&&(r=!1),!r)throw new c("bad-precaching-response",{url:t.url,status:n.status});return n}_usesCustomCacheableResponseLogic(){return this.plugins.some(t=>t.cacheWillUpdate&&t!==M)}}class I{constructor({cacheName:t,plugins:e=[],fallbackToNetwork:n=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new K({cacheName:f.getPrecacheName(t),plugins:[...e,new y({precacheController:this})],fallbackToNetwork:n}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(t){this.addToCacheList(t),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(t){const e=[];for(const n of t){"string"===typeof n?e.push(n):n&&void 0===n.revision&&e.push(n.url);const{cacheKey:t,url:r}=d(n),o="string"!==typeof n&&n.revision?"reload":"default";if(this._urlsToCacheKeys.has(r)&&this._urlsToCacheKeys.get(r)!==t)throw new c("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(r),secondEntry:t});if("string"!==typeof n&&n.integrity){if(this._cacheKeysToIntegrities.has(t)&&this._cacheKeysToIntegrities.get(t)!==n.integrity)throw new c("add-to-cache-list-conflicting-integrities",{url:r});this._cacheKeysToIntegrities.set(t,n.integrity)}if(this._urlsToCacheKeys.set(r,t),this._urlsToCacheModes.set(r,o),e.length>0){const t=`Workbox is precaching URLs without revision info: ${e.join(", ")}\nThis is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(t)}}}install(t){return h(t,async()=>{const e=new g;this.strategy.plugins.push(e);for(const[o,i]of this._urlsToCacheKeys){const e=this._cacheKeysToIntegrities.get(i),n=this._urlsToCacheModes.get(o),r=new Request(o,{integrity:e,cache:n,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:i},request:r,event:t}))}const{updatedURLs:n,notUpdatedURLs:r}=e;return{updatedURLs:n,notUpdatedURLs:r}})}activate(t){return h(t,async()=>{const t=await self.caches.open(this.strategy.cacheName),e=await t.keys(),n=new Set(this._urlsToCacheKeys.values()),r=[];for(const o of e)n.has(o.url)||(await t.delete(o),r.push(o.url));return{deletedURLs:r}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(t){const e=new URL(t,location.href);return this._urlsToCacheKeys.get(e.href)}async matchPrecache(t){const e=t instanceof Request?t.url:t,n=this.getCacheKeyForURL(e);if(n){const t=await self.caches.open(this.strategy.cacheName);return t.match(n)}}createHandlerBoundToURL(t){const e=this.getCacheKeyForURL(t);if(!e)throw new c("non-precached-url",{url:t});return n=>(n.request=new Request(t),n.params={cacheKey:e,...n.params},this.strategy.handle(n))}}let F;const W=()=>(F||(F=new I),F);n("95a8");const D=(t,...e)=>{let n=t;return e.length>0&&(n+=" :: "+JSON.stringify(e)),n},G=D;class H extends Error{constructor(t,e){const n=G(t,e);super(n),this.name=t,this.details=e}}n("e6d2");const B="GET",$=t=>t&&"object"===typeof t?t:{handle:t};class Y{constructor(t,e,n=B){this.handler=$(e),this.match=t,this.method=n}}class z extends Y{constructor(t,e,n){const r=({url:e})=>{const n=t.exec(e.href);if(n&&(e.origin===location.origin||0===n.index))return n.slice(1)};super(r,e,n)}}class J{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",t=>{const{request:e}=t,n=this.handleRequest({request:e,event:t});n&&t.respondWith(n)})}addCacheListener(){self.addEventListener("message",t=>{if(t.data&&"CACHE_URLS"===t.data.type){const{payload:e}=t.data;0;const n=Promise.all(e.urlsToCache.map(e=>{"string"===typeof e&&(e=[e]);const n=new Request(...e);return this.handleRequest({request:n,event:t})}));t.waitUntil(n),t.ports&&t.ports[0]&&n.then(()=>t.ports[0].postMessage(!0))}})}handleRequest({request:t,event:e}){const n=new URL(t.url,location.href);if(!n.protocol.startsWith("http"))return void 0;const r=n.origin===location.origin,{params:o,route:i}=this.findMatchingRoute({event:e,request:t,sameOrigin:r,url:n});let a=i&&i.handler;const c=t.method;if(!a&&this._defaultHandlerMap.has(c)&&(a=this._defaultHandlerMap.get(c)),!a)return void 0;let s;try{s=a.handle({url:n,request:t,event:e,params:o})}catch(u){s=Promise.reject(u)}return s instanceof Promise&&this._catchHandler&&(s=s.catch(r=>this._catchHandler.handle({url:n,request:t,event:e}))),s}findMatchingRoute({url:t,sameOrigin:e,request:n,event:r}){const o=this._routes.get(n.method)||[];for(const i of o){let o;const a=i.match({url:t,sameOrigin:e,request:n,event:r});if(a)return o=a,(Array.isArray(a)&&0===a.length||a.constructor===Object&&0===Object.keys(a).length||"boolean"===typeof a)&&(o=void 0),{route:i,params:o}}return{}}setDefaultHandler(t,e=B){this._defaultHandlerMap.set(e,$(t))}setCatchHandler(t){this._catchHandler=$(t)}registerRoute(t){this._routes.has(t.method)||this._routes.set(t.method,[]),this._routes.get(t.method).push(t)}unregisterRoute(t){if(!this._routes.has(t.method))throw new H("unregister-route-but-not-found-with-method",{method:t.method});const e=this._routes.get(t.method).indexOf(t);if(!(e>-1))throw new H("unregister-route-route-not-registered");this._routes.get(t.method).splice(e,1)}}let V;const Q=()=>(V||(V=new J,V.addFetchListener(),V.addCacheListener()),V);function X(t,e,n){let r;if("string"===typeof t){const o=new URL(t,location.href);0;const i=({url:t})=>t.href===o.href;r=new Y(i,e,n)}else if(t instanceof RegExp)r=new z(t,e,n);else if("function"===typeof t)r=new Y(t,e,n);else{if(!(t instanceof Y))throw new H("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});r=t}const o=Q();return o.registerRoute(r),r}function Z(t,e=[]){for(const n of[...t.searchParams.keys()])e.some(t=>t.test(n))&&t.searchParams.delete(n);return t}function*tt(t,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:n="index.html",cleanURLs:r=!0,urlManipulation:o}={}){const i=new URL(t,location.href);i.hash="",yield i.href;const a=Z(i,e);if(yield a.href,n&&a.pathname.endsWith("/")){const t=new URL(a.href);t.pathname+=n,yield t.href}if(r){const t=new URL(a.href);t.pathname+=".html",yield t.href}if(o){const t=o({url:i});for(const e of t)yield e.href}}class et extends Y{constructor(t,e){const n=({request:n})=>{const r=t.getURLsToCacheKeys();for(const t of tt(n.url,e)){const e=r.get(t);if(e)return{cacheKey:e}}};super(n,t.strategy)}}function nt(t){const e=W(),n=new et(e,t);X(n)}function rt(t){const e=W();e.precache(t)}function ot(t,e){rt(t),nt(e)}function it(t){const e=Q();e.setCatchHandler(t)}class at extends A{async _handle(t,e){let n,r=await e.cacheMatch(t);if(r)0;else{0;try{r=await e.fetchAndCachePut(t)}catch(o){n=o}0}if(!r)throw new S("no-response",{url:t.url,error:n});return r}}const ct={cacheWillUpdate:async({response:t})=>200===t.status||0===t.status?t:null};class st extends A{constructor(t={}){super(t),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(ct),this._networkTimeoutSeconds=t.networkTimeoutSeconds||0}async _handle(t,e){const n=[];const r=[];let o;if(this._networkTimeoutSeconds){const{id:i,promise:a}=this._getTimeoutPromise({request:t,logs:n,handler:e});o=i,r.push(a)}const i=this._getNetworkPromise({timeoutId:o,request:t,logs:n,handler:e});r.push(i);for(const c of r)e.waitUntil(c);let a=await Promise.race(r);if(a||(a=await i),!a)throw new S("no-response",{url:t.url});return a}_getTimeoutPromise({request:t,logs:e,handler:n}){let r;const o=new Promise(e=>{const o=async()=>{e(await n.cacheMatch(t))};r=setTimeout(o,1e3*this._networkTimeoutSeconds)});return{promise:o,id:r}}async _getNetworkPromise({timeoutId:t,request:e,logs:n,handler:r}){let o,i;try{i=await r.fetchAndCachePut(e)}catch(a){o=a}return t&&clearTimeout(t),!o&&i||(i=await r.cacheMatch(e)),i}}class ut extends A{constructor(t){super(t),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(ct)}async _handle(t,e){const n=e.fetchAndCachePut(t).catch(()=>{});let r,o=await e.cacheMatch(t);if(o)0;else{0;try{o=await n}catch(i){r=i}}if(!o)throw new S("no-response",{url:t.url,error:r});return o}}var lt="offline-html",ft="/offline/";self.addEventListener("install",function(){var t=o(regeneratorRuntime.mark((function t(e){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:e.waitUntil(caches.open(lt).then((function(t){return t.add(new Request(ft,{cache:"reload"}))})));case 1:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),it((function(t){var e=t.event;switch(e.request.destination){case"document":return console.log("Triggered fallback HTML"),caches.match(ft);default:return console.log("Triggered response ERROR"),Response.error()}})),ot([{'revision':'66c42acf5ec4142fa7fc226ed186ee50','url':'css/chunk-vendors.css'},{'revision':'b3c0d991ef9940863d1bafbcbe40ee57','url':'js/chunk-vendors.js'},{'revision':'0b4f0af04ae814f20490aab76e1b4ace','url':'js/recipe_view.js'},{'revision':'7ffb0d32c26b065a8bac007813308e6e','url':'manifest.json'},{'revision':'1606d2f696ffd86964c971c88467194a','url':'recipe_view.html'}]),X((function(t){var e=t.request;return"image"===e.destination}),new at({cacheName:"images"})),X((function(t){var e=t.request;return"script"===e.destination||"style"===e.destination}),new ut({cacheName:"assets"})),X(new RegExp("jsi18n/"),new ut({cacheName:"assets"})),X(new RegExp("api/*"),new st({cacheName:"api"})),X((function(t){var e=t.request;return"document"===e.destination}),new st({cacheName:"html"}))},"25f0":function(t,e,n){"use strict";var r=n("6eeb"),o=n("825a"),i=n("d039"),a=n("ad6d"),c="toString",s=RegExp.prototype,u=s[c],l=i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),f=u.name!=c;(l||f)&&r(RegExp.prototype,c,(function(){var t=o(this),e=String(t.source),n=t.flags,r=String(void 0===n&&t instanceof RegExp&&!("flags"in s)?a.call(t):n);return"/"+e+"/"+r}),{unsafe:!0})},2626:function(t,e,n){"use strict";var r=n("d066"),o=n("9bf2"),i=n("b622"),a=n("83ab"),c=i("species");t.exports=function(t){var e=r(t),n=o.f;a&&e&&!e[c]&&n(e,c,{configurable:!0,get:function(){return this}})}},"3bbe":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},"40b9":function(t,e,n){"use strict";try{self["workbox:core:6.0.2"]&&_()}catch(r){}},"428f":function(t,e,n){var r=n("da84");t.exports=r},"44ad":function(t,e,n){var r=n("d039"),o=n("c6b6"),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},"44e7":function(t,e,n){var r=n("861d"),o=n("c6b6"),i=n("b622"),a=i("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==o(t))}},"466d":function(t,e,n){"use strict";var r=n("d784"),o=n("825a"),i=n("50c4"),a=n("1d80"),c=n("8aa5"),s=n("14c3");r("match",1,(function(t,e,n){return[function(e){var n=a(this),r=void 0==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var r=n(e,t,this);if(r.done)return r.value;var a=o(t),u=String(this);if(!a.global)return s(a,u);var l=a.unicode;a.lastIndex=0;var f,h=[],p=0;while(null!==(f=s(a,u))){var d=String(f[0]);h[p]=d,""===d&&(a.lastIndex=c(u,i(a.lastIndex),l)),p++}return 0===p?null:h}]}))},4930:function(t,e,n){var r=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},"4d63":function(t,e,n){var r=n("83ab"),o=n("da84"),i=n("94ca"),a=n("7156"),c=n("9bf2").f,s=n("241c").f,u=n("44e7"),l=n("ad6d"),f=n("9f7f"),h=n("6eeb"),p=n("d039"),d=n("69f3").set,g=n("2626"),y=n("b622"),v=y("match"),w=o.RegExp,m=w.prototype,b=/a/g,x=/a/g,_=new w(b)!==b,R=f.UNSUPPORTED_Y,E=r&&i("RegExp",!_||R||p((function(){return x[v]=!1,w(b)!=b||w(x)==x||"/a/i"!=w(b,"i")})));if(E){var L=function(t,e){var n,r=this instanceof L,o=u(t),i=void 0===e;if(!r&&o&&t.constructor===L&&i)return t;_?o&&!i&&(t=t.source):t instanceof L&&(i&&(e=l.call(t)),t=t.source),R&&(n=!!e&&e.indexOf("y")>-1,n&&(e=e.replace(/y/g,"")));var c=a(_?new w(t,e):w(t,e),r?this:m,L);return R&&n&&d(c,{sticky:n}),c},S=function(t){t in L||c(L,t,{configurable:!0,get:function(){return w[t]},set:function(e){w[t]=e}})},O=s(w),C=0;while(O.length>C)S(O[C++]);m.constructor=L,L.prototype=m,h(o,"RegExp",L)}g("RegExp")},"4d64":function(t,e,n){var r=n("fc6a"),o=n("50c4"),i=n("23cb"),a=function(t){return function(e,n,a){var c,s=r(e),u=o(s.length),l=i(a,u);if(t&&n!=n){while(u>l)if(c=s[l++],c!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},"50c4":function(t,e,n){var r=n("a691"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},5135:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},5692:function(t,e,n){var r=n("c430"),o=n("c6cd");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.8.2",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"56ef":function(t,e,n){var r=n("d066"),o=n("241c"),i=n("7418"),a=n("825a");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},6547:function(t,e,n){var r=n("a691"),o=n("1d80"),i=function(t){return function(e,n){var i,a,c=String(o(e)),s=r(n),u=c.length;return s<0||s>=u?t?"":void 0:(i=c.charCodeAt(s),i<55296||i>56319||s+1===u||(a=c.charCodeAt(s+1))<56320||a>57343?t?c.charAt(s):i:t?c.slice(s,s+2):a-56320+(i-55296<<10)+65536)}};t.exports={codeAt:i(!1),charAt:i(!0)}},"69f3":function(t,e,n){var r,o,i,a=n("7f9a"),c=n("da84"),s=n("861d"),u=n("9112"),l=n("5135"),f=n("c6cd"),h=n("f772"),p=n("d012"),d=c.WeakMap,g=function(t){return i(t)?o(t):r(t,{})},y=function(t){return function(e){var n;if(!s(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}};if(a){var v=f.state||(f.state=new d),w=v.get,m=v.has,b=v.set;r=function(t,e){return e.facade=t,b.call(v,t,e),e},o=function(t){return w.call(v,t)||{}},i=function(t){return m.call(v,t)}}else{var x=h("state");p[x]=!0,r=function(t,e){return e.facade=t,u(t,x,e),e},o=function(t){return l(t,x)?t[x]:{}},i=function(t){return l(t,x)}}t.exports={set:r,get:o,has:i,enforce:g,getterFor:y}},"6aa8":function(t,e,n){"use strict";try{self["workbox:strategies:6.0.2"]&&_()}catch(r){}},"6eeb":function(t,e,n){var r=n("da84"),o=n("9112"),i=n("5135"),a=n("ce4e"),c=n("8925"),s=n("69f3"),u=s.get,l=s.enforce,f=String(String).split("String");(t.exports=function(t,e,n,c){var s,u=!!c&&!!c.unsafe,h=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),s=l(n),s.source||(s.source=f.join("string"==typeof e?e:""))),t!==r?(u?!p&&t[e]&&(h=!0):delete t[e],h?t[e]=n:o(t,e,n)):h?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},7156:function(t,e,n){var r=n("861d"),o=n("d2bb");t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},7418:function(t,e){e.f=Object.getOwnPropertySymbols},"741b":function(t,e,n){"use strict";try{self["workbox:core:6.0.2"]&&_()}catch(r){}},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"7f9a":function(t,e,n){var r=n("da84"),o=n("8925"),i=r.WeakMap;t.exports="function"===typeof i&&/native code/.test(o(i))},"825a":function(t,e,n){var r=n("861d");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},"83ab":function(t,e,n){var r=n("d039");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"861d":function(t,e){t.exports=function(t){return"object"===typeof t?null!==t:"function"===typeof t}},8925:function(t,e,n){var r=n("c6cd"),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"90e3":function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},9112:function(t,e,n){var r=n("83ab"),o=n("9bf2"),i=n("5c6c");t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},9263:function(t,e,n){"use strict";var r=n("ad6d"),o=n("9f7f"),i=RegExp.prototype.exec,a=String.prototype.replace,c=i,s=function(){var t=/a/,e=/b*/g;return i.call(t,"a"),i.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),u=o.UNSUPPORTED_Y||o.BROKEN_CARET,l=void 0!==/()??/.exec("")[1],f=s||l||u;f&&(c=function(t){var e,n,o,c,f=this,h=u&&f.sticky,p=r.call(f),d=f.source,g=0,y=t;return h&&(p=p.replace("y",""),-1===p.indexOf("g")&&(p+="g"),y=String(t).slice(f.lastIndex),f.lastIndex>0&&(!f.multiline||f.multiline&&"\n"!==t[f.lastIndex-1])&&(d="(?: "+d+")",y=" "+y,g++),n=new RegExp("^(?:"+d+")",p)),l&&(n=new RegExp("^"+d+"$(?!\\s)",p)),s&&(e=f.lastIndex),o=i.call(h?n:f,y),h?o?(o.input=o.input.slice(g),o[0]=o[0].slice(g),o.index=f.lastIndex,f.lastIndex+=o[0].length):f.lastIndex=0:s&&o&&(f.lastIndex=f.global?o.index+o[0].length:e),l&&o&&o.length>1&&a.call(o[0],n,(function(){for(c=1;c=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(s&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),C(n),g}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;C(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:P(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}(t.exports);try{regeneratorRuntime=r}catch(o){Function("r","regeneratorRuntime = r")(r)}},"9bf2":function(t,e,n){var r=n("83ab"),o=n("0cfb"),i=n("825a"),a=n("c04e"),c=Object.defineProperty;e.f=r?c:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return c(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},"9f7f":function(t,e,n){"use strict";var r=n("d039");function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},a691:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},ac1f:function(t,e,n){"use strict";var r=n("23e7"),o=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},ad6d:function(t,e,n){"use strict";var r=n("825a");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},b041:function(t,e,n){"use strict";var r=n("00ee"),o=n("f5df");t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},b622:function(t,e,n){var r=n("da84"),o=n("5692"),i=n("5135"),a=n("90e3"),c=n("4930"),s=n("fdbf"),u=o("wks"),l=r.Symbol,f=s?l:l&&l.withoutSetter||a;t.exports=function(t){return i(u,t)||(c&&i(l,t)?u[t]=l[t]:u[t]=f("Symbol."+t)),u[t]}},c04e:function(t,e,n){var r=n("861d");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},c430:function(t,e){t.exports=!1},c6b6:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},c6cd:function(t,e,n){var r=n("da84"),o=n("ce4e"),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},c700:function(t,e,n){"use strict";try{self["workbox:precaching:6.0.2"]&&_()}catch(r){}},c8ba:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}t.exports=n},ca84:function(t,e,n){var r=n("5135"),o=n("fc6a"),i=n("4d64").indexOf,a=n("d012");t.exports=function(t,e){var n,c=o(t),s=0,u=[];for(n in c)!r(a,n)&&r(c,n)&&u.push(n);while(e.length>s)r(c,n=e[s++])&&(~i(u,n)||u.push(n));return u}},cc12:function(t,e,n){var r=n("da84"),o=n("861d"),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},ce4e:function(t,e,n){var r=n("da84"),o=n("9112");t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},d012:function(t,e){t.exports={}},d039:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},d066:function(t,e,n){var r=n("428f"),o=n("da84"),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},d1e7:function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},d2bb:function(t,e,n){var r=n("825a"),o=n("3bbe");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,t.call(n,[]),e=n instanceof Array}catch(i){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},d3b7:function(t,e,n){var r=n("00ee"),o=n("6eeb"),i=n("b041");r||o(Object.prototype,"toString",i,{unsafe:!0})},d784:function(t,e,n){"use strict";n("ac1f");var r=n("6eeb"),o=n("d039"),i=n("b622"),a=n("9263"),c=n("9112"),s=i("species"),u=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),l=function(){return"$0"==="a".replace(/./,"$0")}(),f=i("replace"),h=function(){return!!/./[f]&&""===/./[f]("a","$0")}(),p=!o((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,f){var d=i(t),g=!o((function(){var e={};return e[d]=function(){return 7},7!=""[t](e)})),y=g&&!o((function(){var e=!1,n=/a/;return"split"===t&&(n={},n.constructor={},n.constructor[s]=function(){return n},n.flags="",n[d]=/./[d]),n.exec=function(){return e=!0,null},n[d](""),!e}));if(!g||!y||"replace"===t&&(!u||!l||h)||"split"===t&&!p){var v=/./[d],w=n(d,""[t],(function(t,e,n,r,o){return e.exec===a?g&&!o?{done:!0,value:v.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:l,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:h}),m=w[0],b=w[1];r(String.prototype,t,m),r(RegExp.prototype,d,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}f&&c(RegExp.prototype[d],"sham",!0)}},da84:function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||function(){return this}()||Function("return this")()}).call(this,n("c8ba"))},e6d2:function(t,e,n){"use strict";try{self["workbox:routing:6.0.2"]&&_()}catch(r){}},e893:function(t,e,n){var r=n("5135"),o=n("56ef"),i=n("06cf"),a=n("9bf2");t.exports=function(t,e){for(var n=o(e),c=a.f,s=i.f,u=0;u { + event.waitUntil( + caches.open(CACHE_NAME) + .then((cache) => cache.add(new Request(FALLBACK_HTML_URL, {cache: "reload"}))) + ); +}); + +// default handler if everything else fails +setCatchHandler(({event}) => { + // The FALLBACK_URL entries must be added to the cache ahead of time, either + // via runtime or precaching. If they are precached, then call + // `matchPrecache(FALLBACK_URL)` (from the `workbox-precaching` package) + // to get the response from the correct cache. + // + // Use event, request, and url to figure out how to respond. + // One approach would be to use request.destination, see + // https://medium.com/dev-channel/service-worker-caching-strategies-based-on-request-types-57411dd7652c + switch (event.request.destination) { + case 'document': + // If using precached URLs: + // return matchPrecache(FALLBACK_HTML_URL); + console.log('Triggered fallback HTML') + return caches.match(FALLBACK_HTML_URL); + + default: + // If we don't have a fallback, just return an error response. + console.log('Triggered response ERROR') + return Response.error(); + } +}); + precacheAndRoute(self.__WB_MANIFEST); registerRoute( @@ -36,4 +74,5 @@ registerRoute( new NetworkFirst({ cacheName: 'html' }) -) \ No newline at end of file +) + diff --git a/vue/yarn.lock b/vue/yarn.lock index 7a8fe8c9f..813f23f3f 100644 --- a/vue/yarn.lock +++ b/vue/yarn.lock @@ -8882,6 +8882,13 @@ workbox-navigation-preload@^5.1.4: dependencies: workbox-core "^5.1.4" +workbox-navigation-preload@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/workbox-navigation-preload/-/workbox-navigation-preload-6.0.2.tgz#bfd9c61096be921b830153a3004b7212220748dc" + integrity sha512-7+ojLrjXmTFZBfGmUQIcBWB+xrFgXLMJGNQAtxT7Ta9A23rEWo8jqAgeuwAylebcORUlM+ztgYTV7eGp+AD+Yg== + dependencies: + workbox-core "^6.0.2" + workbox-precaching@^5.1.4: version "5.1.4" resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-5.1.4.tgz#874f7ebdd750dd3e04249efae9a1b3f48285fe6b"