diff --git a/web/src/service-worker/cache.ts b/web/src/service-worker/cache.ts index 7dda0c77d9..e400ae6542 100644 --- a/web/src/service-worker/cache.ts +++ b/web/src/service-worker/cache.ts @@ -1,9 +1,6 @@ import { build, files, version } from '$service-worker'; -const pendingLoads = new Map(); - const useCache = true; -// Create a unique cache name for this deployment const CACHE = `cache-${version}`; export const APP_RESOURCES = [ @@ -11,6 +8,9 @@ export const APP_RESOURCES = [ ...files, // everything in `static` ]; +export const isURL = (request: URL | RequestInfo): request is URL => (request as URL).href !== undefined; +export const isRequest = (request: RequestInfo): request is Request => (request as Request).url !== undefined; + export async function deleteOldCaches() { for (const key of await caches.keys()) { if (key !== CACHE) { @@ -24,8 +24,15 @@ export async function addFilesToCache() { await cache.addAll(APP_RESOURCES); } -export const isURL = (request: URL | RequestInfo): request is URL => (request as URL).href !== undefined; -export const isRequest = (request: RequestInfo): request is Request => (request as Request).url !== undefined; +const pendingLoads = new Map(); + +export async function cancelLoad(urlString: string) { + const pending = pendingLoads.get(urlString); + if (pending) { + pending.abort(); + pendingLoads.delete(urlString); + } +} export async function getCachedOrFetch(request: URL | Request | string, cancelable: boolean = false) { const cached = await checkCache(request); @@ -42,7 +49,6 @@ export async function getCachedOrFetch(request: URL | Request | string, cancelab return await fetchWithCancellation(request, cached.cache); } catch { - console.log('getCachedOrFetch error', request); return new Response(undefined, { status: 499, statusText: 'Request canceled: Instructions unclear, accidentally interrupted myself', @@ -50,14 +56,6 @@ export async function getCachedOrFetch(request: URL | Request | string, cancelab } } -export async function cancelLoad(urlString: string) { - const pending = pendingLoads.get(urlString); - if (pending) { - pending.abort(); - pendingLoads.delete(urlString); - } -} - async function fetchWithCancellation(request: URL | Request | string, cache: Cache) { const cacheKey = getCacheKey(request); const cancelToken = new AbortController(); diff --git a/web/src/service-worker/index.ts b/web/src/service-worker/index.ts index c1b67ff050..796b06b7df 100644 --- a/web/src/service-worker/index.ts +++ b/web/src/service-worker/index.ts @@ -4,7 +4,7 @@ /// import { installBroadcastChannelListener } from './broadcast-channel'; import { addFilesToCache, deleteOldCaches } from './cache'; -import { handleFetchEvent } from './fetchEvent'; +import { handleFetchEvent } from './fetch-event'; const sw = globalThis as unknown as ServiceWorkerGlobalScope;