/* eslint-disable no-undef */ const staticCacheName = 'ecolyo-v1' const urlsToCache = ['index.html', 'offline.html'] // Install SW self.addEventListener('install', event => { event.waitUntil( caches.open(staticCacheName).then(cache => { return cache.addAll(urlsToCache) }) ) }) // Listen for requests self.addEventListener('fetch', event => { if (event.request.url.indexOf('statweb') !== -1) { return false } event.respondWith( caches.match(event.request).then(() => { return fetch(event.request).catch(() => caches.match('offline.html')) }) ) }) // Activate the SW self.addEventListener('activate', event => { const cacheWhitelist = [] cacheWhitelist.push(staticCacheName) event.waitUntil( caches.keys().then(cacheNames => Promise.all( cacheNames.map(cacheName => { if (!cacheWhitelist.includes(cacheName)) { return caches.delete(cacheName) } }) ) ) ) })