PWA (neue Dateien): - Vollständige Progressive Web App mit Token-basierter Auth - 4 Swipe-Panels: Alle STZ, Stundenzettel, Produktliste, Lieferauflistung - Kundensuche, Leistungen-Accordion, Mehraufwand-Sektion - Produkt-Übernahme aus Auftrag + Mehraufwand in STZ - Service Worker, Manifest, App-Icons für Installation Desktop-Änderungen: - Produktliste: Checkboxen immer sichtbar (außer bereits auf STZ) - Lieferauflistung: Vereinfachte Ansicht (nur Verbaut-Spalte) - Admin: PWA-Link in Einstellungen - Sprachdatei: PWA-Übersetzungen Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
777 B
JavaScript
30 lines
777 B
JavaScript
/**
|
|
* Stundenzettel PWA - Minimaler Service Worker
|
|
* Nur fuer Installierbarkeit, kein Offline-Caching
|
|
*/
|
|
|
|
const CACHE_VERSION = 'stundenzettel-pwa-v1.0';
|
|
|
|
self.addEventListener('install', function(event) {
|
|
// Sofort aktivieren, nicht auf andere Tabs warten
|
|
self.skipWaiting();
|
|
});
|
|
|
|
self.addEventListener('activate', function(event) {
|
|
// Alte Caches loeschen
|
|
event.waitUntil(
|
|
caches.keys().then(function(cacheNames) {
|
|
return Promise.all(
|
|
cacheNames.filter(function(name) {
|
|
return name.startsWith('stundenzettel-pwa-') && name !== CACHE_VERSION;
|
|
}).map(function(name) {
|
|
return caches.delete(name);
|
|
})
|
|
);
|
|
}).then(function() {
|
|
return self.clients.claim();
|
|
})
|
|
);
|
|
});
|
|
|
|
// Kein Fetch-Intercepting - alle Requests gehen direkt ans Netzwerk
|