PageSourceSearch

https://mooncloak.com/service-worker.js

js mooncloak.com collected 2026-09-24 14:49:02 UTC 7,890 bytes, 43 lines download raw bytes

1const s=location.pathname.split("/").slice(0,-1).join("/"),l=[s+"/_app/immutable/entry/start.BOABUI2o.js",s+"/_app/immutable/chunks/DX0toIYy.js",s+"/_app/immutable/chunks/CKwxe_gz.js",s+"/_app/immutable/entry/app.radnpuim.js",s+"/_app/immutable/nodes/0.BJW2-tKH.js",s+"/_app/immutable/assets/0.D9VO25ue.css",s+"/_app/immutable/nodes/1.BiKAzlWC.js",s+"/_app/immutable/assets/1.BeUknYjz.css",s+"/_app/immutable/nodes/10.CYTIesuz.js",s+"/_app/immutable/assets/10.imXMQHge.css",s+"/_app/immutable/nodes/11.DjAhRNDC.js",s+"/_app/immutable/assets/11.Ie_Y_XiL.css",s+"/_app/immutable/nodes/12.B9LDOHzR.js",s+"/_app/immutable/assets/12.yEI4biWV.css",s+"/_app/immutable/nodes/13.CfAyfqG_.js",s+"/_app/immutable/assets/13.BM1EG_hu.css",s+"/_app/immutable/nodes/14.CidvHD8h.js",s+"/_app/immutable/assets/14.Bdspvdnf.css",s+"/_app/immutable/nodes/15.ClthlL1s.js",s+"/_app/immutable/assets/15.CwlT02Lk.css",s+"/_app/immutable/nodes/16.D0XUc4_O.js",s+"/_app/immutable/assets/16.6v7M9LdG.css",s+"/_app/immutable/nodes/17.qAwb_pwj.js",s+"/_app/immutable/assets/17.DuLN9_gM.css",s+"/_app/immutable/nodes/18.VQFPFHvE.js",s+"/_app/immutable/assets/18.Ci8MzeFO.css",s+"/_app/immutable/nodes/19.BmEYgm7C.js",s+"/_app/immutable/assets/19.ET4A2eQ-.css",s+"/_app/immutable/nodes/2.BW09ZoI9.js",s+"/_app/immutable/assets/2.CrQxhLO7.css",s+"/_app/immutable/nodes/20.Bv1rnAtw.js",s+"/_app/immutable/assets/20.0MOqFVkP.css",s+"/_app/immutable/nodes/21.Bh5vS4Lm.js",s+"/_app/immutable/assets/21.5ers8Qzu.css",s+"/_app/immutable/nodes/22.CBKbpn_q.js",s+"/_app/immutable/assets/22.Br15d5rv.css",s+"/_app/immutable/nodes/23.TMu21uGs.js",s+"/_app/immutable/assets/23.DVZ01AQE.css",s+"/_app/immutable/nodes/24.CuC-uEfN.js",s+"/_app/immutable/assets/24.C5jQzm3O.css",s+"/_app/immutable/nodes/25.DGtiHXrj.js",s+"/_app/immutable/assets/25.HzoJZ_gN.css",s+"/_app/immutable/nodes/26.DZFPCx_T.js",s+"/_app/immutable/assets/26.B6QXRr_K.css",s+"/_app/immutable/nodes/27.CpWYs5ld.js",s+"/_app/immutable/assets/27.C3Aaayuy.css",s+"/_app/immutable/nodes/28.BqGCQeJE.js",s+"/_app/immutable/assets/28.EIN732j7.css",s+"/_app/immutable/nodes/3.B9pbrjGX.js",s+"/_app/immutable/assets/3.BCiioVK_.css",s+"/_app/immutable/nodes/4.B-VllnEE.js",s+"/_app/immutable/assets/4.CF6dPNN4.css",s+"/_app/immutable/nodes/5.BAmtVlcJ.js",s+"/_app/immutable/assets/5.ps34T7Wh.css",s+"/_app/immutable/nodes/6.C-CHcN7X.js",s+"/_app/immutable/assets/6.B3plhiTz.css",s+"/_app/immutable/nodes/7.CoUy2kxV.js",s+"/_app/immutable/assets/7.Kg_71DaD.css",s+"/_app/immutable/nodes/8.CTOVgVu4.js",s+"/_app/immutable/assets/8.C_4vUgP-.css",s+"/_app/immutable/nodes/9.DqtzM6Mf.js",s+"/_app/immutable/assets/9.hjWcFm-f.css",s+"/_app/immutable/assets/BiasMeter.O1lIV_pO.css",s+"/_app/immutable/assets/FeaturedBackground.BZC-Elmi.css",s+"/_app/immutable/assets/MfaInput.DpH6_uWe.css",s+"/_app/immutable/chunks/9oMDpo41.js",s+"/_app/immutable/chunks/BKAcNsqV.js",s+"/_app/immutable/chunks/BUApaBEI.js",s+"/_app/immutable/chunks/BZBDeXbN.js",s+"/_app/immutable/chunks/Bi_hBkD5.js",s+"/_app/immutable/chunks/C1FmrZbK.js",s+"/_app/immutable/chunks/C8L8rAxM.js",s+"/_app/immutable/chunks/C8O1we8Q.js",s+"/_app/immutable/chunks/CWZTHJqG.js",s+"/_app/immutable/chunks/CZbXoZu8.js",s+"/_app/immutable/chunks/Cpi8tHhV.js",s+"/_app/immutable/chunks/D-xhWByV.js",s+"/_app/immutable/chunks/DHb7wbpH.js",s+"/_app/immutable/chunks/DXt9wewo.js",s+"/_app/immutable/chunks/DaPqYeyi.js",s+"/_app/immutable/chunks/DnXNj3MZ.js",s+"/_app/immutable/chunks/WRShoR3F.js",s+"/_app/immutable/chunks/XAY_w4zK.js",s+"/_app/immutable/chunks/cocivOP_.js",s+"/_app/immutable/chunks/kt8enD8-.js",s+"/_app/immutable/chunks/ogozgDVj.js",s+"/_app/immutable/chunks/DR3f5N0_.js",s+"/_app/immutable/chunks/jgCtLwkp.js",s+"/_app/immutable/chunks/jufa2Rw-.js",s+"/_app/immutable/chunks/CCtBdLHD.js",s+"/_app/immutable/chunks/BGtm07wI.js",s+"/_app/immutable/chunks/pg1hh9jl.js"],u=[s+"/.well-known/apple-app-site-association",s+"/.well-known/assetlinks.json",s+"/.well-known/change-password",s+"/.well-known/security.txt",s+"/apple-touch-icon.png",s+"/backgrounds/us-flag.webm",s+"/branding/mooncloak-brand-assets.zip",s+"/branding/mooncloak-logo-192.png",s+"/branding/mooncloak-logo-512.png",s+"/branding/mooncloak-logo-android.png",s+"/favicon.ico",s+"/fonts/MoonCloak-Regular.otf",s+"/fonts/fonts.css",s+"/fonts/inter-variable.woff2",s+"/humans.txt",s+"/icon-192.png",s+"/icon-512.png",s+"/images/mooncloak-shield.svg",s+"/manifest.webmanifest",s+"/offline.html",s+"/opensearch.xml",s+"/robots.txt",s+"/sitemap.xml"],o="1788697543397",i=self,c=`mooncloak-search-${o}`,p=`mooncloak-static-${o}`,r=[...l,...u],b=["/api/"],h=["/api/news/"];i.addEventListener("install",e=>{e.waitUntil((async()=>
1{await(await caches.open(p)).addAll(r),await i.skipWaiting()})())});i.addEventListener("activate",e=>{e.waitUntil((async()=>{const a=await caches.keys();await Promise.all(a.filter(t=>t!==c&&t!==p).map(t=>caches.delete(t))),await i.clients.claim()})())});i.addEventListener("fetch",e=>{const{request:a}=e,t=new URL(a.url);if(a.method==="GET"&&t.origin===location.origin&&!h.some(n=>t.pathname.startsWith(n))){if(b.some(n=>t.pathname.startsWith(n))){e.respondWith(d(a));return}if(a.mode==="navigate"){e.respondWith((async()=>{try{return await fetch(a)}catch{const n=await caches.match(a);if(n)return n;const m=await caches.match("/offline.html");return m||new Response(`<!DOCTYPE html>
2            <html lang="en">
3              <head>
4                <meta charset="UTF-8" />
5                <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6                <title>Offline - mooncloak Search</title>
7                <style>
8                  body {
9                    font-family: system-ui, sans-serif;
10                    background: #0a0f1a;
11                    color: #f8fafc;
12                    display: flex;
13                    flex-direction: column;
14                    align-items: center;
15                    justify-content: center;
16                    min-height: 100vh;
17                    margin: 0;
18                    padding: 1rem;
19                    text-align: center;
20                  }
21                  h1 { margin-bottom: 0.5rem; }
22                  p { color: #94a3b8; margin-bottom: 1.5rem; }
23                  button {
24                    background: #6366F1;
25                    color: white;
26                    border: none;
27                    padding: 0.75rem 1.5rem;
28                    border-radius: 0.5rem;
29                    cursor: pointer;
30                    font-size: 1rem;
31                  }
32                  button:hover { background: #818CF8; }
33                </style>
34              </head>
35              <body>
36                <h1>You're offline</h1>
37                <p>Please check your internet connection and try again.</p>
38                <button onclick="window.location.reload()">Retry</button>
39              </body>
40            </html>`,{headers:{"Content-Type":"text/html"}})}})());return}e.respondWith(_(a))}});async function _(e){const a=await caches.match(e);if(a)return a;try{const t=await fetch(e);return t.ok&&(await caches.open(p)).put(e,t.clone()),t}catch{if(e.destination==="image")return new Response(`<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100">
41          <rect fill="#1f2937" width="100" height="100"/>
42          <text fill="#64748b" font-family="sans-serif" font-size="12" text-anchor="middle" x="50" y="55">Image unavailable</text>
43        </svg>`,{headers:{"Content-Type":"image/svg+xml"}});throw new Error("Network request failed")}}async function d(e){try{const a=await fetch(e);return a.ok&&(await caches.open(c)).put(e,a.clone()),a}catch{const a=await caches.match(e);return a||new Response(JSON.stringify({error:{type:"offline",title:"You are offline",detail:"Please check your internet connection",status:503}}),{status:503,headers:{"Content-Type":"application/json"}})}}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.