Create sw.js

This commit is contained in:
2025-08-23 09:31:42 -07:00
committed by GitHub
parent 0fa4d0229a
commit 84f2946e6b

23
public/sw.js Normal file
View File

@@ -0,0 +1,23 @@
// /sw.js (simple test worker)
self.addEventListener('install', event => {
self.skipWaiting();
});
self.addEventListener('activate', event => {
event.waitUntil(self.clients.claim());
});
self.addEventListener('message', event => {
const data = event.data || {};
if (data?.type === 'PING') {
// prefer replying on the message port if provided
if (event.ports && event.ports[0]) {
event.ports[0].postMessage({type: 'PONG', ts: Date.now(), ok: true});
} else {
// fallback: broadcast to all clients
self.clients.matchAll().then(clients => {
clients.forEach(c => c.postMessage({type: 'PONG', ts: Date.now(), ok: true}));
});
}
}
});