diff --git a/src/serviceworker/mod.ts b/src/serviceworker/mod.ts index 1706dbe..bbcee04 100644 --- a/src/serviceworker/mod.ts +++ b/src/serviceworker/mod.ts @@ -160,14 +160,9 @@ async function fetchHandler(event: FetchEvent) { FetchStrategy.fastestAndCacheRefresh(cache, event) } - // Network only - return FetchStrategy.networkOnly(event) -} - -async function getDynCache(): Promise { - const lifeTime = 1 * 24 * 3_600 * 1000 //1 day +async function getCache(name: string, lifeTime = 1 * 24 * 3_600 * 1000): Promise { const now = Date.now() - const version = await swStorage.getItem('$sw.dyn-cache.version') + const version = await swStorage.getItem(name) // Get "cache" from ram if (memory.has(version)) { @@ -176,15 +171,15 @@ async function getDynCache(): Promise { // Create cache if (version === null) { - await swStorage.setItem('$sw.dyn-cache.version', now + lifeTime) - return getDynCache() + await swStorage.setItem(name, now + lifeTime) + return getCache(name, lifeTime) } // Clean outdated cache if (version < Date.now()) { - await swStorage.setItem('$sw.dyn-cache.version', now + lifeTime) + await swStorage.setItem(name, now + lifeTime) await caches.delete(version.toString()) - return getDynCache() + return getCache(name, lifeTime) } // Get "cache" from fs