feat: add Offline Mode Indicator (Bunker Status)

This commit is contained in:
2025-12-20 23:51:16 +01:00
parent 7d5091a139
commit b0a79541b6
2 changed files with 77 additions and 5 deletions

View File

@@ -43,10 +43,19 @@ self.addEventListener('install', (event) => {
});
await Promise.all(promises);
console.log('✅ PWA: Bunker build finished');
// Signal to clients that pre-caching is complete
broadcast({ type: 'PRECACHE_COMPLETE', version: CACHE_NAME });
})
);
});
// Helper: Broadcast to all clients
async function broadcast(message) {
const clients = await self.clients.matchAll();
clients.forEach(client => client.postMessage(message));
}
// Activate: Alte Bunker räumen
self.addEventListener('activate', (event) => {
event.waitUntil(
@@ -64,6 +73,17 @@ self.addEventListener('activate', (event) => {
self.clients.claim();
});
// Communication: Listen for status checks
self.addEventListener('message', (event) => {
if (event.data?.type === 'CHECK_BUNKER_STATUS') {
event.source.postMessage({
type: 'BUNKER_STATUS',
isReady: true,
version: CACHE_NAME
});
}
});
self.addEventListener('fetch', (event) => {
// Nur GET-Requests cachen
if (event.request.method !== 'GET') return;