'use strict'; let preCache = [ './', './manifest.json', './sw.js', './bundle.js', './bundle.css', './favicon-512x512.png', './icons/air_conditioning_indoor.png', './icons/air_conditioning_outdoor.png', './icons/alarm.png', './icons/bulb.png', './icons/cold.png', './icons/dome_camera.png', './icons/door_handle.png', './icons/doorbell.png', './icons/drop.png', './icons/electric_range.png', './icons/eye.png', './icons/garage.png', './icons/heater.png', './icons/houseplant.png', './icons/ip_camera.png', './icons/key.png', './icons/lock_a.png', './icons/lock_b.png', './icons/loudspeakers.png', './icons/pet.png', './icons/plug.png', './icons/pool.png', './icons/power.png', './icons/power_button.png', './icons/recycling.png', './icons/remote_control.png', './icons/router.png', './icons/smartphone.png', './icons/socket_f.png', './icons/socket_g.png', './icons/socket_i.png', './icons/solar_panel.png', './icons/sun.png', './icons/temperature.png', './icons/thermostat.png', './icons/tv.png', './icons/vacuum_cleaning_robot.png', './icons/ventilation.png', './icons/washer.png', './icons/weather.png' ]; const CACHE = 'cache-v7'; self.addEventListener('install', function (evt) { self.skipWaiting(); evt.waitUntil(caches.open(CACHE).then(function (cache) { cache.addAll(preCache); })); }); self.addEventListener('fetch', function (evt) { evt.respondWith(fromCache(evt.request).then(function (match) { if (match) { return match; } else { return fetch(evt.request); } })); }); self.addEventListener('activate', function (event) { event.waitUntil(clients.claim()); event.waitUntil(clients.claim().then(function () { return caches.keys().then(function (cacheNames) { return Promise.all(cacheNames.filter(c => c !== CACHE).map(c => caches.delete(c))); }); })); }); function fromCache (request) { return caches.open(CACHE).then(function (cache) { return cache.match(request); }); }