async function broadcast(msg) { | |
for (const client of await clients.matchAll()) { | |
client.postMessage(msg); | |
} | |
} | |
self.addEventListener('fetch', event => { | |
event.waitUntil(broadcast(event.request.url)); | |
event.respondWith(fetch(event.request)); | |
}); | |
self.addEventListener('activate', event => { | |
self.clients.claim(); | |
}); |