'use strict';
var base_cache_ver = 'base-cache-1';
var assets = ['/','/pwa/offline'];
self.addEventListener('install', function(event) {
self.skipWaiting();
event.waitUntil(
caches.open(base_cache_ver).then(cache =>{
cache.addAll(assets);
})
)
});
self.addEventListener('activate', function(event) {
event.waitUntil(
caches.keys().then(function(keys) {
return Promise.all(keys.map(function(key) {
if (key !== base_cache_ver) {
return caches.delete(key);
}
}));
})
);
});
self.addEventListener('fetch', function(event) {
event.respondWith(
fetch(event.request).then(function (response) {
return response;
})
.catch(error => {
return caches.match('/pwa/offline');
}));
});