{"version":3,"file":"sw-entry-worker.mjs","names":["self","WorkerGlobalScope","globalThis","MessageType","type","url","URL","onmessage","ev","MessageEvent","data","response","fetch","redirected","startUrlCache","caches","open","put","Promise","resolve","pagesCache","isPageCached","match","ignoreSearch","page","ok","clone"],"sources":["../src/sw-entry-worker.ts"],"sourcesContent":["declare const self: WorkerGlobalScope & typeof globalThis;\n\nexport type MessageType =\n  | {\n      type: \"__FRONTEND_NAV_CACHE__\";\n      url: URL | string;\n    }\n  | {\n      type: \"__START_URL_CACHE__\";\n      url: URL | string;\n    };\n\nself.onmessage = async (ev: MessageEvent<MessageType>) => {\n  switch (ev.data.type) {\n    case \"__START_URL_CACHE__\": {\n      const url = ev.data.url;\n      const response = await fetch(url);\n      if (!response.redirected) {\n        const startUrlCache = await caches.open(\"start-url\");\n        return startUrlCache.put(url, response);\n      }\n      return Promise.resolve();\n    }\n    case \"__FRONTEND_NAV_CACHE__\": {\n      const url = ev.data.url;\n      const pagesCache = await caches.open(\"pages\");\n\n      const isPageCached = !!(await pagesCache.match(url, {\n        ignoreSearch: true,\n      }));\n      if (isPageCached) {\n        return;\n      }\n\n      const page = await fetch(url);\n      if (!page.ok) {\n        return;\n      }\n      pagesCache.put(url, page.clone());\n\n      return Promise.resolve();\n    }\n    default:\n      return Promise.resolve();\n  }\n};\n"],"mappings":";AAYAA,KAAKO,YAAY,OAAOC,OAAkC;AACxD,SAAQA,GAAGE,KAAKN,MAAhB;EACE,KAAK,uBAAuB;GAC1B,MAAMC,MAAMG,GAAGE,KAAKL;GACpB,MAAMM,WAAW,MAAMC,MAAMP,IAAI;AACjC,OAAI,CAACM,SAASE,WAEZ,SAAOC,MADqBC,OAAOC,KAAK,YAAY,EAC/BC,IAAIZ,KAAKM,SAAS;AAEzC,UAAOO,QAAQC,SAAS;;EAE1B,KAAK,0BAA0B;GAC7B,MAAMd,MAAMG,GAAGE,KAAKL;GACpB,MAAMe,aAAa,MAAML,OAAOC,KAAK,QAAQ;AAK7C,OAAIK,CAHkB,CAAE,MAAMD,WAAWE,MAAMjB,KAAK,EAClDkB,cAAc,MACf,CAAC,CAEA;GAGF,MAAMC,OAAO,MAAMZ,MAAMP,IAAI;AAC7B,OAAI,CAACmB,KAAKC,GACR;AAEFL,cAAWH,IAAIZ,KAAKmB,KAAKE,OAAO,CAAC;AAEjC,UAAOR,QAAQC,SAAS;;EAE1B,QACE,QAAOD,QAAQC,SAAS"}