-
-
Notifications
You must be signed in to change notification settings - Fork 39
/
Copy pathserviceworker-cache.min.js
2 lines (2 loc) · 1.81 KB
/
serviceworker-cache.min.js
1
2
"use strict";!function(){var n=self.location.hostname,e=n.replace("www.",""),i="v2::",u=[],s=(u.push(n),u.push(e),["","de","es"]),h="pages";self.addEventListener("install",function(e){var t;e.waitUntil((t=[],s.forEach(function(e){t.push("https://"+n+(e=""!=e?"/"+e:e)+"/"),t.push("https://"+n+e+"/offline/")}),caches.open(i+h).then(function(e){return e.addAll(t)}).then(function(){return self.skipWaiting()})))}),self.addEventListener("activate",function(e){e.waitUntil(caches.keys().then(function(e){return Promise.all(e.filter(function(e){return 0!==e.indexOf(i)}).map(function(e){return caches.delete(e)}))}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(e){var t,n,c,r=e.request;"only-if-cached"===r.cache&&"same-origin"!==r.mode||307!=r.cache&&!0!==r.url.includes("purge/directus_cache")&&!0!==r.url.includes("rebuild/directus_cache")&&(t="",c=r.url.split("/"),n=(t=3<c.length&&void 0!==c[3]&&null!==c[3]&&""!==c[3]&&s.includes(c[3])?"/"+c[3]:t)+"/offline/","GET"!==r.method?e.respondWith(fetch(r).catch(function(){return caches.open(i+h).then(function(e){return e.match(n)})})):-1!==r.headers.get("Accept").indexOf("text/html")?("navigate"!==r.mode&&(r=new Request(r.url,{method:"GET",headers:r.headers,mode:r.mode,credentials:r.credentials,redirect:r.redirect})),e.respondWith(fetch(r).then(function(t){return caches.open(i+h).then(function(e){return e.put(r,t.clone()),t})}).catch(function(){return caches.open(i+h).then(t=>t.match(r).then(e=>e||t.match(n)))}))):(c=r.url.replace("http://","").replace("https://","").replace("www.","").split(/[/?#]/)[0],!1!==u.includes(c)&&e.respondWith(caches.open(i+"assets").then(function(n){return n.match(r).then(function(e){var t=fetch(r).then(function(e){return n.put(r,e.clone()),e});return e||t})}))))})}();
//# sourceMappingURL=serviceworker-cache.min.js.map