fix: skipWaiting + clients.claim pour forcer le remplacement du SW
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,8 +1,19 @@
|
||||
// Service Worker — Sargasse-Sentry
|
||||
// fetch handler requis par Chrome pour le critère d'installabilité PWA
|
||||
|
||||
// Force l'activation immédiate sans attendre la fermeture des onglets.
|
||||
// Critique : tant que l'ancien SW (sans fetch handler) reste actif,
|
||||
// Chrome ne considère pas l'app comme installable.
|
||||
self.addEventListener('install', () => {
|
||||
self.skipWaiting();
|
||||
});
|
||||
|
||||
self.addEventListener('activate', (event) => {
|
||||
event.waitUntil(clients.claim());
|
||||
});
|
||||
|
||||
// Fetch handler vide — requis par Chrome pour l'installabilité PWA.
|
||||
// Pas de mise en cache : les données sont temps-réel.
|
||||
// On ne fait PAS de respondWith pour éviter les erreurs sur les tiles cross-origin.
|
||||
// Pas de respondWith pour éviter les erreurs sur les tiles cross-origin.
|
||||
self.addEventListener('fetch', () => {});
|
||||
|
||||
self.addEventListener('push', (event) => {
|
||||
@@ -18,8 +29,8 @@ self.addEventListener('push', (event) => {
|
||||
const title = payload.title ?? 'Alerte sargasses';
|
||||
const options = {
|
||||
body: payload.body ?? '',
|
||||
icon: '/icons.svg',
|
||||
badge: '/icons.svg',
|
||||
icon: '/icon-192.png',
|
||||
badge: '/icon-192.png',
|
||||
tag: payload.spotId ? `sargasse-${payload.spotId}` : 'sargasse-alert',
|
||||
renotify: true,
|
||||
data: { url: payload.url ?? '/' },
|
||||
|
||||
Reference in New Issue
Block a user