Spaces:
Running
Running
const CACHE_NAME = "my-cache-v1"; | |
self.addEventListener("install", (event) => { | |
event.waitUntil( | |
caches.open(CACHE_NAME).then((cache) => { | |
return cache.addAll([ | |
"/", | |
"/static/css/portal.css", | |
"/static/js/app.js", | |
"/static/images/favicon.png", | |
]); | |
}) | |
); | |
self.skipWaiting(); | |
}); | |
self.addEventListener("activate", (event) => { | |
const cacheWhitelist = [CACHE_NAME]; | |
event.waitUntil( | |
caches.keys().then((cacheNames) => { | |
return Promise.all( | |
cacheNames.map((cacheName) => { | |
if (!cacheWhitelist.includes(cacheName)) { | |
return caches.delete(cacheName); | |
} | |
}) | |
); | |
}) | |
); | |
self.clients.claim(); | |
}); | |
self.addEventListener("fetch", (event) => { | |
event.respondWith( | |
caches.match(event.request).then((response) => { | |
return response || fetch(event.request); | |
}) | |
); | |
}); | |