@serifpersia/dango 3.3.9 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/client/dist/assets/{AnimeCard-URCiiy5W.js → AnimeCard-CJy1SXH3.js} +1 -1
- package/client/dist/assets/{AnimeInfo-e3z3er9t.js → AnimeInfo-BoXlVvZ-.js} +1 -1
- package/client/dist/assets/{AnimeInfoPage-B7Djlmy_.js → AnimeInfoPage-BxbA_7AV.js} +2 -2
- package/client/dist/assets/Asmr--Zc8G9zv.js +2 -0
- package/client/dist/assets/AsmrResetProgressModal-CKYm-8cp.js +1 -0
- package/client/dist/assets/AvSyncCalibrator-3yjZS7s6.js +10 -0
- package/client/dist/assets/Home-rrhOGQcg.js +1 -0
- package/client/dist/assets/Insights-Bay90Yeg.js +1 -0
- package/client/dist/assets/{LibraryListPage-B0qWqhb_.js → LibraryListPage-HzuDavbb.js} +1 -1
- package/client/dist/assets/{ListeningList-CSqD8j1C.js → ListeningList-DYcQnnsG.js} +1 -1
- package/client/dist/assets/{Manga-Cg2YuObF.js → Manga-D8CT9aO0.js} +1 -1
- package/client/dist/assets/{MangaInfoPage-DcArhEsy.js → MangaInfoPage-DGK6CYp1.js} +1 -1
- package/client/dist/assets/MangaReadPage-B9XoDKF9.js +1 -0
- package/client/dist/assets/{MangaResetProgressModal-D_yT3d1v.js → MangaResetProgressModal-QjZyIAjl.js} +1 -1
- package/client/dist/assets/Mature-CHt_-Hz5.js +1 -0
- package/client/dist/assets/MediaCard-B5584Cq9.js +1 -0
- package/client/dist/assets/Music-HeLrEZ2d.js +1 -0
- package/client/dist/assets/OptionListMenu-CJ90CdwI.js +1 -0
- package/client/dist/assets/Player-BYtEax_z.js +56 -0
- package/client/dist/assets/PlayerSettings-4-cUAY4B.js +1 -0
- package/client/dist/assets/QueueOptionsButton-Ba0dg_82.js +1 -0
- package/client/dist/assets/{QueueRail-B7f1-e6i.js → QueueRail-O7f4RqjB.js} +1 -1
- package/client/dist/assets/Radio-DPZxQnyD.js +1 -0
- package/client/dist/assets/{ReadingList-BaIem8H1.js → ReadingList-n6rr8ygy.js} +1 -1
- package/client/dist/assets/{ResetProgressModal-DES5Y-Fl.js → ResetProgressModal-CcStlbhP.js} +1 -1
- package/client/dist/assets/Search-C2wrWOdy.js +1 -0
- package/client/dist/assets/Settings-CluUYs8U.js +21 -0
- package/client/dist/assets/{SkeletonGrid-BxfgjP4i.js → SkeletonGrid-CLEPY9nP.js} +1 -1
- package/client/dist/assets/Trackers-CTGPxs0V.js +2 -0
- package/client/dist/assets/Tv-BwHlDdi8.js +4 -0
- package/client/dist/assets/Tv-ZEA45gXK.css +1 -0
- package/client/dist/assets/TvInfo-CXnrLekr.js +1 -0
- package/client/dist/assets/TvPopup-BekfiNcX.js +1 -0
- package/client/dist/assets/{TvSearch-BWDwWnHe.js → TvSearch-DuqR-z3v.js} +1 -1
- package/client/dist/assets/{TvWatchlist-D3n5_4MI.js → TvWatchlist-CBvgFrA0.js} +1 -1
- package/client/dist/assets/Watchlist-mj8mTOam.js +1 -0
- package/client/dist/assets/{hls-BO_L1WoN.js → hls-Boje3IOE.js} +1 -1
- package/client/dist/assets/index-BXwhFWB_.js +178 -0
- package/client/dist/assets/useAnimeInfoData-DJ7A4B4T.js +1 -0
- package/client/dist/assets/useAsmr-DIwIsJXF.js +1 -0
- package/client/dist/assets/{useAsmrPopup-D_o9-QlR.js → useAsmrPopup-e4zNN9ig.js} +1 -1
- package/client/dist/assets/useMangaLibrary-C9Lci5N4.js +1 -0
- package/client/dist/assets/{useMangaPopup-TFzkC-tG.js → useMangaPopup-B8nnpvyi.js} +1 -1
- package/client/dist/assets/useProviders-B5Qr4I1y.js +1 -0
- package/client/dist/assets/useTv-Dm8MCYlL.js +1 -0
- package/client/dist/assets/useTvLibrary-B7jEk2Q7.js +1 -0
- package/client/dist/assets/{vendor-query-BXRECSI6.js → vendor-query-BUTye89G.js} +1 -1
- package/client/dist/index.html +2 -2
- package/orchestrator.js +1 -2
- package/package.json +2 -6
- package/server/dist/app-auth.js +9 -29
- package/server/dist/app-hono.js +621 -0
- package/server/dist/config.js +0 -1
- package/server/dist/db/drizzle.js +32 -0
- package/server/dist/db/schema-anime.js +64 -0
- package/server/dist/db/schema-asmr.js +25 -0
- package/server/dist/db/schema-manga.js +31 -0
- package/server/dist/db/schema-tv.js +33 -0
- package/server/dist/db.js +75 -4
- package/server/dist/discord-gateway.js +1 -1
- package/server/dist/google.js +0 -7
- package/server/dist/hono/asmr.js +1 -0
- package/server/dist/hono/auth.js +56 -0
- package/server/dist/hono/music.js +419 -0
- package/server/dist/{controllers/proxy.controller.js → hono/proxy.js} +390 -394
- package/server/dist/hono/tv.js +197 -0
- package/server/dist/hono/watchlist.js +733 -0
- package/server/dist/lib/anilist.js +3 -3
- package/server/dist/lib/insights.js +185 -0
- package/server/dist/lib/ipc.js +1 -2
- package/server/dist/lib/kitsu.js +1 -28
- package/server/dist/lib/mal-import.js +291 -0
- package/server/dist/lib/migration.js +20 -34
- package/server/dist/lib/offline-db.js +36 -36
- package/server/dist/lib/tracker/manga-sync.service.js +21 -21
- package/server/dist/lib/tracker/sync.service.js +20 -20
- package/server/dist/lib/translate.js +79 -0
- package/server/dist/lib/ytmusic.js +0 -2
- package/server/dist/providers/title-matching.js +0 -1
- package/server/dist/repositories/asmr.repository.js +90 -87
- package/server/dist/repositories/insights.repository.js +24 -13
- package/server/dist/repositories/library.repository.js +33 -93
- package/server/dist/repositories/manga.repository.js +108 -116
- package/server/dist/repositories/notifications.repository.js +50 -31
- package/server/dist/repositories/queue.repository.js +36 -25
- package/server/dist/repositories/settings.repository.js +18 -8
- package/server/dist/repositories/shows-meta.repository.js +54 -41
- package/server/dist/repositories/temp-show-ids.repository.js +43 -31
- package/server/dist/repositories/tv.repository.js +98 -115
- package/server/dist/repositories/watched-episodes.repository.js +52 -20
- package/server/dist/repositories/watchlist.repository.js +36 -48
- package/server/dist/server.js +59 -151
- package/server/dist/sync.js +41 -4
- package/server/dist/trpc/context.js +7 -0
- package/server/dist/trpc/errors.js +21 -0
- package/server/dist/trpc/index.js +19 -0
- package/server/dist/trpc/router.js +49 -0
- package/server/dist/trpc/routers/asmr-library.js +122 -0
- package/server/dist/trpc/routers/asmr-progress.js +133 -0
- package/server/dist/trpc/routers/asmr.js +87 -0
- package/server/dist/trpc/routers/auth.js +247 -0
- package/server/dist/trpc/routers/continue-watching.js +83 -0
- package/server/dist/trpc/routers/data.js +1039 -0
- package/server/dist/trpc/routers/discord.js +288 -0
- package/server/dist/trpc/routers/discovery.js +15 -0
- package/server/dist/trpc/routers/insights.js +45 -0
- package/server/dist/trpc/routers/manga-library.js +280 -0
- package/server/dist/trpc/routers/manga-progress.js +181 -0
- package/server/dist/trpc/routers/manga.js +201 -0
- package/server/dist/{controllers/music.controller.js → trpc/routers/music.js} +155 -288
- package/server/dist/trpc/routers/notifications.js +80 -0
- package/server/dist/trpc/routers/progress.js +15 -0
- package/server/dist/trpc/routers/queue.js +95 -0
- package/server/dist/{routes/radio.routes.js → trpc/routers/radio.js} +30 -23
- package/server/dist/trpc/routers/settings.js +105 -0
- package/server/dist/trpc/routers/tracker.js +219 -0
- package/server/dist/trpc/routers/tv-library.js +145 -0
- package/server/dist/trpc/routers/tv-progress.js +171 -0
- package/server/dist/trpc/routers/tv.js +565 -0
- package/server/dist/trpc/routers/watchlist.js +564 -0
- package/server/dist/trpc/validation.js +159 -0
- package/server/dist/utils/security.utils.js +0 -18
- package/server/package.json +5 -10
- package/client/dist/assets/Asmr-C28TfSvX.js +0 -2
- package/client/dist/assets/AsmrResetProgressModal-6Xh71AgR.js +0 -1
- package/client/dist/assets/AvSyncCalibrator-BwCtRW0P.js +0 -10
- package/client/dist/assets/Home-BJdbHYja.js +0 -1
- package/client/dist/assets/Insights-CjRy42YE.js +0 -1
- package/client/dist/assets/MangaReadPage-YCETZRte.js +0 -1
- package/client/dist/assets/Mature-BGxRWkV5.js +0 -1
- package/client/dist/assets/MediaCard-CAzoxsRS.js +0 -1
- package/client/dist/assets/Music-Cgo-yQ7E.js +0 -1
- package/client/dist/assets/OptionListMenu--Owe9Jle.js +0 -1
- package/client/dist/assets/Player-yRXG2BrP.js +0 -56
- package/client/dist/assets/PlayerSettings-DrZLa0CC.js +0 -1
- package/client/dist/assets/QueueOptionsButton-BVZyPyKf.js +0 -1
- package/client/dist/assets/Radio-BFjxlzuF.js +0 -1
- package/client/dist/assets/Search-BOBo0Ogh.js +0 -1
- package/client/dist/assets/Settings-DOvNQ0gX.js +0 -21
- package/client/dist/assets/Trackers-DZ9KqOWv.js +0 -2
- package/client/dist/assets/Tv-5mATEU4p.js +0 -4
- package/client/dist/assets/Tv-C2SWcVzN.css +0 -1
- package/client/dist/assets/TvInfo-CF-5C5Fs.js +0 -1
- package/client/dist/assets/TvPopup-Dfqifj3s.js +0 -1
- package/client/dist/assets/Watchlist-B8MHNsAU.js +0 -1
- package/client/dist/assets/index-D2RkUJIN.js +0 -178
- package/client/dist/assets/useAnimeInfoData-BWShDHqE.js +0 -1
- package/client/dist/assets/useAsmr-FyfD9G7b.js +0 -1
- package/client/dist/assets/useMangaLibrary-BJU5x8Vz.js +0 -1
- package/client/dist/assets/useProviders-DDRxa8vl.js +0 -1
- package/client/dist/assets/useTv-Bh6WmNnZ.js +0 -1
- package/client/dist/assets/useTvLibrary-_Pqm8re1.js +0 -1
- package/server/dist/controllers/asmr-library.controller.js +0 -288
- package/server/dist/controllers/auth.controller.js +0 -225
- package/server/dist/controllers/data.controller.js +0 -767
- package/server/dist/controllers/insights.controller.js +0 -203
- package/server/dist/controllers/manga-library.controller.js +0 -350
- package/server/dist/controllers/settings.controller.js +0 -609
- package/server/dist/controllers/tv-library.controller.js +0 -314
- package/server/dist/controllers/watchlist.controller.js +0 -1069
- package/server/dist/request-logger.js +0 -16
- package/server/dist/routes/asmr-library.routes.js +0 -23
- package/server/dist/routes/asmr.routes.js +0 -81
- package/server/dist/routes/auth.routes.js +0 -25
- package/server/dist/routes/data.routes.js +0 -47
- package/server/dist/routes/discord-gateway.routes.js +0 -51
- package/server/dist/routes/insights.routes.js +0 -35
- package/server/dist/routes/lan-auth.routes.js +0 -46
- package/server/dist/routes/manga-library.routes.js +0 -25
- package/server/dist/routes/manga.routes.js +0 -141
- package/server/dist/routes/music.routes.js +0 -20
- package/server/dist/routes/providers.routes.js +0 -17
- package/server/dist/routes/proxy.routes.js +0 -12
- package/server/dist/routes/settings.routes.js +0 -24
- package/server/dist/routes/tracker.routes.js +0 -287
- package/server/dist/routes/translate.routes.js +0 -88
- package/server/dist/routes/tv-library.routes.js +0 -23
- package/server/dist/routes/tv.routes.js +0 -629
- package/server/dist/routes/watchlist.routes.js +0 -341
|
@@ -1 +1 @@
|
|
|
1
|
-
import{X as H,h as I,u as Tt,x as B,T as It,d as G,C as z,q as x}from"./vendor-core-8R2fFbyN.js";const ct=H(void 0),V=t=>{const e=B(ct);if(!e)throw new Error("No QueryClient set, use QueryClientProvider to set one");return e},ue=({client:t,children:e})=>(I(()=>(t.mount(),()=>{t.unmount()}),[t]),Tt(ct.Provider,{value:t,children:e})),Dt={setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t),setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t)};var xt=class{#e=Dt;#t=!1;setTimeoutProvider(t){this.#e=t}setTimeout(t,e){return this.#e.setTimeout(t,e)}clearTimeout(t){this.#e.clearTimeout(t)}setInterval(t,e){return this.#e.setInterval(t,e)}clearInterval(t){this.#e.clearInterval(t)}};const F=new xt;function At(t){setTimeout(t,0)}const qt=typeof window>"u"||"Deno"in globalThis;function P(){}function Ut(t,e){return typeof t=="function"?t(e):t}function lt(t){return typeof t=="number"&&t>=0&&t!==1/0}function ft(t,e){return Math.max(t+(e||0)-Date.now(),0)}function m(t,e){return typeof t=="function"?t(e):t}function et(t,e){const{type:s="all",exact:i,fetchStatus:r,predicate:o,queryKey:n,stale:u}=t;if(n){if(i){if(e.queryHash!==W(n,e.options))return!1}else if(!M(e.queryKey,n))return!1}if(s!=="all"){const a=e.isActive();if(s==="active"&&!a||s==="inactive"&&a)return!1}return!(typeof u=="boolean"&&e.isStale()!==u||r&&r!==e.state.fetchStatus||o&&!o(e))}function st(t,e){const{exact:s,status:i,predicate:r,mutationKey:o}=t;if(o){if(!e.options.mutationKey)return!1;if(s){if(Q(e.options.mutationKey)!==Q(o))return!1}else if(!M(e.options.mutationKey,o))return!1}return!(i&&e.state.status!==i||r&&!r(e))}function W(t,e){return(e?.queryKeyHashFn||Q)(t)}function Q(t){return JSON.stringify(t,(e,s)=>k(s)?Object.keys(s).sort().reduce((i,r)=>(i[r]=s[r],i),{}):s)}function M(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(Array.isArray(t)&&Array.isArray(e)){for(let i=0;i<e.length;i++)if(!M(t[i],e[i]))return!1;return!0}const s=Object.keys(e);for(const i of s)if(!M(t[i],e[i]))return!1;return!0}return!1}const kt=Object.prototype.hasOwnProperty;function $(t,e,s=0){if(t===e)return t;if(s>500)return e;const i=it(t)&&it(e);if(!i&&!(k(t)&&k(e)))return e;const r=(i?t:Object.keys(t)).length,o=i?e:Object.keys(e),n=o.length,u=i?new Array(n):{};let a=0;for(let h=0;h<n;h++){const c=i?h:o[h],l=t[c],d=e[c];if(l===d){u[c]=l,(i?h<r:kt.call(t,c))&&a++;continue}if(l===null||d===null||typeof l!="object"||typeof d!="object"){u[c]=d;continue}const w=$(l,d,s+1);u[c]=w,w===l&&a++}return r===n&&a===r?t:u}function T(t,e){if(!e||Object.keys(t).length!==Object.keys(e).length)return!1;for(const s in t)if(t[s]!==e[s])return!1;return!0}function it(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function k(t){if(!rt(t))return!1;const e=t.constructor;if(e===void 0)return!0;const s=e.prototype;return!(!rt(s)||!s.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(t)!==Object.prototype)}function rt(t){return Object.prototype.toString.call(t)==="[object Object]"}function jt(t){return new Promise(e=>{F.setTimeout(e,t)})}function j(t,e,s){return typeof s.structuralSharing=="function"?s.structuralSharing(t,e):s.structuralSharing!==!1?$(t,e):e}function Kt(t,e,s=0){const i=[...t,e];return s&&i.length>s?i.slice(1):i}function Lt(t,e,s=0){const i=[e,...t];return s&&i.length>s?i.slice(0,-1):i}const J=Symbol();function dt(t,e){return!t.queryFn&&e?.initialPromise?()=>e.initialPromise:!t.queryFn||t.queryFn===J?()=>Promise.reject(new Error(`Missing queryFn: '${t.queryHash}'`)):t.queryFn}function X(t,e){return typeof t=="function"?t(...e):!!t}function Nt(t,e,s){let i=!1,r;return Object.defineProperty(t,"signal",{enumerable:!0,get:()=>(r??=e(),i||(i=!0,r.aborted?s():r.addEventListener("abort",s,{once:!0})),r)}),t}let _t=()=>qt;const Z=()=>_t();var E=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Ht=class extends E{#e;#t;#s;constructor(){super(),this.#s=t=>{if(typeof window<"u"&&window.addEventListener){const e=()=>t();return window.addEventListener("visibilitychange",e,!1),()=>{window.removeEventListener("visibilitychange",e)}}}}onSubscribe(){this.#t||this.setEventListener(this.#s)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(t){this.#s=t,this.#t?.(),this.#t=t(e=>{typeof e=="boolean"?this.setFocused(e):this.onFocus()})}setFocused(t){this.#e!==t&&(this.#e=t,this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(e=>{e(t)})}isFocused(){return typeof this.#e=="boolean"?this.#e:globalThis.document?.visibilityState!=="hidden"}};const Y=new Ht,Bt=At;function Gt(){let t=[],e=0,s=u=>{u()},i=u=>{u()},r=Bt;const o=u=>{e?t.push(u):r(()=>{s(u)})},n=()=>{const u=t;t=[],u.length&&r(()=>{i(()=>{u.forEach(a=>{s(a)})})})};return{batch:u=>{let a;e++;try{a=u()}finally{e--,e||n()}return a},batchCalls:u=>(...a)=>{o(()=>{u(...a)})},schedule:o,setNotifyFunction:u=>{s=u},setBatchNotifyFunction:u=>{i=u},setScheduler:u=>{r=u}}}const v=Gt();var zt=class extends E{#e=!0;#t;#s;constructor(){super(),this.#s=t=>{if(typeof window<"u"&&window.addEventListener){const e=()=>t(!0),s=()=>t(!1);return window.addEventListener("online",e,!1),window.addEventListener("offline",s,!1),()=>{window.removeEventListener("online",e),window.removeEventListener("offline",s)}}}}onSubscribe(){this.#t||this.setEventListener(this.#s)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(t){this.#s=t,this.#t?.(),this.#t=t(this.setOnline.bind(this))}setOnline(t){this.#e!==t&&(this.#e=t,this.listeners.forEach(e=>{e(t)}))}isOnline(){return this.#e}};const A=new zt;function Vt(t){return Math.min(1e3*2**t,3e4)}function pt(t){return(t??"online")==="online"?A.isOnline():!0}var K=class extends Error{constructor(t){super("CancelledError"),this.revert=t?.revert,this.silent=t?.silent}};function yt(t){let e=!1,s=0,i,r="pending",o,n;const u=new Promise((g,R)=>{o=g,n=R});u.catch(P);const a=()=>r!=="pending",h=g=>{if(!a()){const R=new K(g);f(R),t.onCancel?.(R)}},c=()=>{e=!0},l=()=>{e=!1},d=()=>Y.isFocused()&&(t.networkMode==="always"||A.isOnline())&&t.canRun(),w=()=>pt(t.networkMode)&&t.canRun(),p=g=>{a()||(i?.(),r="resolved",o(g))},f=g=>{a()||(i?.(),r="rejected",n(g))},y=()=>new Promise(g=>{i=R=>{(a()||d())&&g(R)},t.onPause?.()}).then(()=>{i=void 0,a()||t.onContinue?.()}),b=()=>{if(a())return;let g;const R=s===0?t.initialPromise:void 0;try{g=R??t.fn()}catch(S){g=Promise.reject(S)}Promise.resolve(g).then(p).catch(S=>{if(a())return;const O=t.retry??(Z()?0:3),C=t.retryDelay??Vt,U=typeof C=="function"?C(s,S):C,Mt=O===!0||typeof O=="number"&&s<O||typeof O=="function"&&O(s,S);if(e||!Mt){f(S);return}s++,t.onFail?.(s,S),jt(U).then(()=>d()?void 0:y()).then(()=>{e?f(S):b()})})};return{promise:u,status:()=>r,cancel:h,continue:()=>(i?.(),u),cancelRetry:c,continueRetry:l,canStart:w,start:()=>(w()?b():y().then(b),u)}}var mt=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),lt(this.gcTime)&&(this.#e=F.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(Z()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(F.clearTimeout(this.#e),this.#e=void 0)}};function Wt(t){return{onFetch:(e,s)=>{const i=e.options,r=e.fetchOptions?.meta?.fetchMore?.direction,o=e.state.data?.pages||[],n=e.state.data?.pageParams||[];let u={pages:[],pageParams:[]},a=0;const h=async()=>{let c=!1;const l=p=>{Nt(p,()=>e.signal,()=>c=!0)},d=dt(e.options,e.fetchOptions),w=async(p,f,y)=>{if(c)return Promise.reject(e.signal.reason);if(f==null&&p.pages.length)return Promise.resolve(p);const g=(()=>{const C={client:e.client,queryKey:e.queryKey,pageParam:f,direction:y?"backward":"forward",meta:e.options.meta};return l(C),C})(),R=await d(g),{maxPages:S}=e.options,O=y?Lt:Kt;return{pages:O(p.pages,R,S),pageParams:O(p.pageParams,f,S)}};if(r&&o.length){const p=r==="backward",f=p?vt:L,y={pages:o,pageParams:n};u=await w(y,f(i,y),p)}else{const p=t??o.length;do{const f=a===0?n[0]??i.initialPageParam:L(i,u);if(a>0&&f==null)break;u=await w(u,f),a++}while(a<p)}return u};e.options.persister?e.fetchFn=()=>e.options.persister?.(h,{client:e.client,queryKey:e.queryKey,meta:e.options.meta,signal:e.signal},s):e.fetchFn=h}}}function L(t,{pages:e,pageParams:s}){const i=e.length-1;return e.length>0?t.getNextPageParam(e[i],e,s[i],s):void 0}function vt(t,{pages:e,pageParams:s}){return e.length>0?t.getPreviousPageParam?.(e[0],e,s[0],s):void 0}function $t(t,e){return e?L(t,e)!=null:!1}function Jt(t,e){return!e||!t.getPreviousPageParam?!1:vt(t,e)!=null}var Xt=class extends mt{#e;#t;#s;#i;#r;#n;#a;#u;constructor(t){super(),this.#u=!1,this.#a=t.defaultOptions,this.setOptions(t.options),this.observers=[],this.#r=t.client,this.#i=this.#r.getQueryCache(),this.queryKey=t.queryKey,this.queryHash=t.queryHash,this.#t=at(this.options),this.state=t.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#n?.promise}setOptions(t){if(this.options={...this.#a,...t},t?._type&&(this.#e=t._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const e=at(this.options);e.data!==void 0&&(this.setState(nt(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#i.remove(this)}setData(t,e){const s=j(this.state.data,t,this.options);return this.#o({data:s,type:"success",dataUpdatedAt:e?.updatedAt,manual:e?.manual}),s}setState(t){this.#o({type:"setState",state:t})}cancel(t){const e=this.#n?.promise;return this.#n?.cancel(t),e?e.then(P).catch(P):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>m(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===J||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>m(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!ft(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(t=>t.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#n?.continue()}onOnline(){this.observers.find(t=>t.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#n?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),this.#i.notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){const e=this.observers.indexOf(t);e!==-1&&(this.observers.splice(e,1),this.observers.length||(this.#n&&(this.#u||this.state.fetchStatus==="paused"&&this.state.status==="pending"?this.#n.cancel({revert:!0}):this.#n.cancelRetry()),this.scheduleGc()),this.#i.notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#o({type:"invalidate"})}async fetch(t,e){if(this.state.fetchStatus!=="idle"&&this.#n?.status()!=="rejected"){if(this.state.data!==void 0&&e?.cancelRefetch)this.cancel({silent:!0});else if(this.#n)return this.#n.continueRetry(),this.#n.promise}if(t&&this.setOptions(t),!this.options.queryFn){const a=this.observers.find(h=>h.options.queryFn);a&&this.setOptions(a.options)}const s=new AbortController,i=a=>{Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(this.#u=!0,s.signal)})},r=()=>{const a=dt(this.options,e),c=(()=>{const l={client:this.#r,queryKey:this.queryKey,meta:this.meta};return i(l),l})();return this.#u=!1,this.options.persister?this.options.persister(a,c,this):a(c)},n=(()=>{const a={fetchOptions:e,options:this.options,queryKey:this.queryKey,client:this.#r,state:this.state,fetchFn:r};return i(a),a})();(this.#e==="infinite"?Wt(this.options.pages):this.options.behavior)?.onFetch(n,this),this.#s=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==n.fetchOptions?.meta)&&this.#o({type:"fetch",meta:n.fetchOptions?.meta});const u=this.#n=yt({initialPromise:e?.initialPromise,fn:n.fetchFn,onCancel:a=>{a instanceof K&&a.revert&&this.setState({...this.#s,fetchStatus:"idle"}),s.abort()},onFail:(a,h)=>{this.#o({type:"failed",failureCount:a,error:h})},onPause:()=>{this.#o({type:"pause"})},onContinue:()=>{this.#o({type:"continue"})},retry:n.options.retry,retryDelay:n.options.retryDelay,networkMode:n.options.networkMode,canRun:()=>!0});try{const a=await u.start();if(a===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(a),this.#i.config.onSuccess?.(a,this),this.#i.config.onSettled?.(a,this.state.error,this),a}catch(a){if(a instanceof K){if(a.silent)return this.#n.promise;if(a.revert){if(this.state.data===void 0)throw a;return this.state.data}}throw this.#o({type:"error",error:a}),this.#i.config.onError?.(a,this),this.#i.config.onSettled?.(this.state.data,a,this),a}finally{this.#n===u&&(this.#n=void 0),this.scheduleGc()}}#o(t){const e=s=>{switch(t.type){case"failed":return{...s,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...s,fetchStatus:"paused"};case"continue":return{...s,fetchStatus:"fetching"};case"fetch":return{...s,...gt(s.data,this.options),fetchMeta:t.meta??null};case"success":const i={...s,...nt(t.data,t.dataUpdatedAt),dataUpdateCount:s.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#s=t.manual?i:void 0,i;case"error":const r=t.error;return{...s,error:r,errorUpdateCount:s.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:s.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...s,isInvalidated:!0};case"setState":return{...s,...t.state}}};this.state=e(this.state),v.batch(()=>{this.observers.slice().forEach(s=>{s.onQueryUpdate()}),this.#i.notify({query:this,type:"updated",action:t})})}};function gt(t,e){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:pt(e.networkMode)?"fetching":"paused",...t===void 0&&{error:null,status:"pending"}}}function nt(t,e){return{data:t,dataUpdatedAt:e??Date.now(),error:null,isInvalidated:!1,status:"success"}}function at(t){const e=typeof t.initialData=="function"?t.initialData():t.initialData,s=e!==void 0,i=s?typeof t.initialDataUpdatedAt=="function"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:e,dataUpdateCount:0,dataUpdatedAt:s?i??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:s?"success":"pending",fetchStatus:"idle"}}var q=class extends E{#e;#t=void 0;#s=void 0;#i=void 0;#r;#n;#a;#u;#o;#d;#h;#c;#l;#p=new Set;constructor(t,e){super(),this.options=e,this.#e=t,this.#a=null,this.bindMethods(),this.setOptions(e)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),ot(this.#t,this.options)?this.#f():this.updateResult(),this.#b())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return N(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return N(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#O(),this.#w(),this.#t.removeObserver(this)}setOptions(t){const e=this.options,s=this.#t;if(this.options=this.#e.defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof m(this.options.enabled,this.#t)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#P(),this.#t.setOptions(this.options),e._defaulted&&!T(this.options,e)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});const i=this.hasListeners();i&&ut(this.#t,s,this.options,e)&&this.#f(),this.updateResult(),i&&(this.#t!==s||m(this.options.enabled,this.#t)!==m(e.enabled,this.#t)||m(this.options.staleTime,this.#t)!==m(e.staleTime,this.#t))&&this.#m();const r=this.#v();i&&(this.#t!==s||m(this.options.enabled,this.#t)!==m(e.enabled,this.#t)||r!==this.#l)&&this.#g(r)}getOptimisticResult(t){const e=this.#e.getQueryCache().build(this.#e,t),s=this.createResult(e,t);return T(this.getCurrentResult(),s)||(this.#i=s,this.#n=this.options,this.#r=this.#t.state),s}getCurrentResult(){return this.#i}trackResult(t,e){return new Proxy(t,{get:(s,i)=>(this.trackProp(i),e?.(i),Reflect.get(s,i))})}trackProp(t){this.#p.add(t)}getCurrentQuery(){return this.#t}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const e=this.#e.defaultQueryOptions(t),s=this.#e.getQueryCache().build(this.#e,e);let i=()=>{},r;const o=new Promise(n=>{r=n,i=this.#e.getQueryCache().subscribe(u=>{u.type==="updated"&&u.query.queryHash===s.queryHash&&s.state.data!==void 0&&(i(),n(this.createResult(s,e)))})});return Promise.race([s.fetch().then(()=>{const n=this.createResult(s,e);return r?.(n),n}).finally(()=>{i()}),o])}fetch(t){return this.#f({...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#i))}#f(t){this.#P();let e=this.#t.fetch(this.options,t);return t?.throwOnError||(e=e.catch(P)),e}#y(t){return!Z()&&m(this.options.enabled,this.#t)!==!1&<(t)}#m(){this.#O();const t=m(this.options.staleTime,this.#t);if(this.#i.isStale||!this.#y(t))return;const e=ft(this.#i.dataUpdatedAt,t)+1;this.#h=F.setTimeout(()=>{this.#i.isStale||this.updateResult()},e)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#g(t){this.#w(),this.#l=t,!(this.#l===0||!this.#y(this.#l))&&(this.#c=F.setInterval(()=>{(this.options.refetchIntervalInBackground||Y.isFocused())&&this.#f()},this.#l))}#b(){this.#m(),this.#g(this.#v())}#O(){this.#h!==void 0&&(F.clearTimeout(this.#h),this.#h=void 0)}#w(){this.#c!==void 0&&(F.clearInterval(this.#c),this.#c=void 0)}createResult(t,e){const s=this.#t,i=this.options,r=this.#i,o=this.#r,n=this.#n,u=t!==s?t.state:this.#s,{state:a}=t;let h={...a},c=!1,l;if(e._optimisticResults){const O=this.hasListeners(),C=!O&&ot(t,e),U=O&&ut(t,s,e,i);(C||U)&&(h={...h,...gt(a.data,t.options)}),e._optimisticResults==="isRestoring"&&(h.fetchStatus="idle")}let{error:d,errorUpdatedAt:w,status:p}=h;l=h.data;let f=!1;if(e.placeholderData!==void 0&&l===void 0&&p==="pending"){let O;r?.isPlaceholderData&&e.placeholderData===n?.placeholderData?(O=r.data,f=!0):O=typeof e.placeholderData=="function"?e.placeholderData(this.#d?.state.data,this.#d):e.placeholderData,O!==void 0&&(p="success",l=j(r?.data,O,e),c=!0)}if(e.select&&l!==void 0&&!f)if(r&&l===o?.data&&e.select===this.#u)l=this.#o;else try{this.#u=e.select,l=e.select(l),l=j(r?.data,l,e),this.#o=l,this.#a=null}catch(O){this.#a=O}else l===void 0&&(this.#a=null);this.#a&&(d=this.#a,l=this.#o,w=Date.now(),p="error",c=!1);const y=h.fetchStatus==="fetching",b=p==="pending",g=p==="error",R=b&&y,S=l!==void 0;return{status:p,fetchStatus:h.fetchStatus,isPending:b,isSuccess:p==="success",isError:g,isInitialLoading:R,isLoading:R,data:l,dataUpdatedAt:h.dataUpdatedAt,error:d,errorUpdatedAt:w,failureCount:h.fetchFailureCount,failureReason:h.fetchFailureReason,errorUpdateCount:h.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:h.dataUpdateCount>u.dataUpdateCount||h.errorUpdateCount>u.errorUpdateCount,isFetching:y,isRefetching:y&&!b,isLoadingError:g&&!S,isPaused:h.fetchStatus==="paused",isPlaceholderData:c,isRefetchError:g&&S,isStale:tt(t,e),refetch:this.refetch,isEnabled:m(e.enabled,t)!==!1}}updateResult(){const t=this.#i,e=this.createResult(this.#t,this.options);if(this.#r=this.#t.state,this.#n=this.options,this.#r.data!==void 0&&(this.#d=this.#t),T(e,t))return;this.#i=e;const i=(()=>{if(!t)return!0;const{notifyOnChangeProps:r}=this.options,o=typeof r=="function"?r():r;if(o==="all"||!o&&!this.#p.size)return!0;const n=new Set(o??this.#p);return this.options.throwOnError&&n.add("error"),Object.keys(this.#i).some(u=>{const a=u;return this.#i[a]!==t[a]&&n.has(a)})})();v.batch(()=>{i&&this.listeners.forEach(r=>{r(this.#i)}),this.#e.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}#P(){const t=this.#e.getQueryCache().build(this.#e,this.options);if(t===this.#t)return;const e=this.#t;this.#t=t,this.#s=t.state,this.hasListeners()&&(e?.removeObserver(this),t.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#b()}};function Zt(t,e){return m(e.enabled,t)!==!1&&t.state.data===void 0&&!(t.state.status==="error"&&m(e.retryOnMount,t)===!1)}function ot(t,e){return Zt(t,e)||t.state.data!==void 0&&N(t,e,e.refetchOnMount)}function N(t,e,s){if(m(e.enabled,t)!==!1&&m(e.staleTime,t)!=="static"){const i=typeof s=="function"?s(t):s;return i==="always"||i!==!1&&tt(t,e)}return!1}function ut(t,e,s,i){return(t!==e||m(i.enabled,t)===!1)&&(!s.suspense||t.state.status!=="error")&&tt(t,s)}function tt(t,e){return m(e.enabled,t)!==!1&&t.isStaleByTime(m(e.staleTime,t))}var Yt=class extends q{constructor(t,e){super(t,e)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(t){t._type="infinite",super.setOptions(t)}getOptimisticResult(t){return t._type="infinite",super.getOptimisticResult(t)}fetchNextPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"backward"}}})}createResult(t,e){const{state:s}=t,i=super.createResult(t,e),{isFetching:r,isRefetching:o,isError:n,isRefetchError:u}=i,a=s.fetchMeta?.fetchMore?.direction,h=n&&a==="forward",c=r&&a==="forward",l=n&&a==="backward",d=r&&a==="backward";return{...i,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:$t(e,s.data),hasPreviousPage:Jt(e,s.data),isFetchNextPageError:h,isFetchingNextPage:c,isFetchPreviousPageError:l,isFetchingPreviousPage:d,isRefetchError:u&&!h&&!l,isRefetching:o&&!c&&!d}}},te=class extends mt{#e;#t;#s;#i;constructor(t){super(),this.#e=t.client,this.mutationId=t.mutationId,this.#s=t.mutationCache,this.#t=[],this.state=t.state||bt(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){this.#t.includes(t)||(this.#t.push(t),this.clearGcTimeout(),this.#s.notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){this.#t=this.#t.filter(e=>e!==t),this.scheduleGc(),this.#s.notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#s.remove(this))}continue(){return this.#i?.continue()??(this.state.status==="pending"?this.execute(this.state.variables):Promise.resolve())}async execute(t){const e=()=>{this.#r({type:"continue"})},s={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey},i=this.#i=yt({fn:()=>this.options.mutationFn?this.options.mutationFn(t,s):Promise.reject(new Error("No mutationFn found")),onFail:(n,u)=>{this.#r({type:"failed",failureCount:n,error:u})},onPause:()=>{this.#r({type:"pause"})},onContinue:e,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#s.canRun(this)}),r=this.state.status==="pending",o=!i.canStart();try{if(r)e();else{this.#r({type:"pending",variables:t,isPaused:o}),this.#s.config.onMutate&&await this.#s.config.onMutate(t,this,s);const u=await this.options.onMutate?.(t,s);u!==this.state.context&&this.#r({type:"pending",context:u,variables:t,isPaused:o})}const n=await i.start();return await this.#s.config.onSuccess?.(n,t,this.state.context,this,s),await this.options.onSuccess?.(n,t,this.state.context,s),await this.#s.config.onSettled?.(n,null,this.state.variables,this.state.context,this,s),await this.options.onSettled?.(n,null,t,this.state.context,s),this.#r({type:"success",data:n}),n}catch(n){try{await this.#s.config.onError?.(n,t,this.state.context,this,s)}catch(u){Promise.reject(u)}try{await this.options.onError?.(n,t,this.state.context,s)}catch(u){Promise.reject(u)}try{await this.#s.config.onSettled?.(void 0,n,this.state.variables,this.state.context,this,s)}catch(u){Promise.reject(u)}try{await this.options.onSettled?.(void 0,n,t,this.state.context,s)}catch(u){Promise.reject(u)}throw this.#r({type:"error",error:n}),n}finally{this.#i===i&&(this.#i=void 0),this.#s.runNext(this)}}#r(t){const e=s=>{switch(t.type){case"failed":return{...s,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...s,isPaused:!0};case"continue":return{...s,isPaused:!1};case"pending":return{...s,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...s,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...s,data:void 0,error:t.error,failureCount:s.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=e(this.state),v.batch(()=>{this.#t.forEach(s=>{s.onMutationUpdate(t)}),this.#s.notify({mutation:this,type:"updated",action:t})})}};function bt(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var ee=class extends E{#e;#t;#s;constructor(t={}){super(),this.config=t,this.#e=new Set,this.#t=new Map,this.#s=0}build(t,e,s){const i=new te({client:t,mutationCache:this,mutationId:++this.#s,options:t.defaultMutationOptions(e),state:s});return this.add(i),i}add(t){this.#e.add(t);const e=D(t);if(typeof e=="string"){const s=this.#t.get(e);s?s.push(t):this.#t.set(e,[t])}this.notify({type:"added",mutation:t})}remove(t){if(this.#e.delete(t)){const e=D(t);if(typeof e=="string"){const s=this.#t.get(e);if(s)if(s.length>1){const i=s.indexOf(t);i!==-1&&s.splice(i,1)}else s[0]===t&&this.#t.delete(e)}}this.notify({type:"removed",mutation:t})}canRun(t){const e=D(t);if(typeof e=="string"){const s=this.#t.get(e)?.find(i=>i.state.status==="pending");return!s||s===t}else return!0}runNext(t){const e=D(t);return typeof e=="string"?this.#t.get(e)?.find(s=>s!==t&&s.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){v.batch(()=>{this.#e.forEach(t=>{this.notify({type:"removed",mutation:t})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(t){const e={exact:!0,...t};return this.getAll().find(s=>st(e,s))}findAll(t={}){return this.getAll().filter(e=>st(t,e))}notify(t){v.batch(()=>{this.listeners.forEach(e=>{e(t)})})}resumePausedMutations(){const t=this.getAll().filter(e=>e.state.isPaused);return v.batch(()=>Promise.all(t.map(e=>e.continue().catch(P))))}};function D(t){return t.options.scope?.id}var se=class extends E{#e;#t=void 0;#s;#i;constructor(t,e){super(),this.#e=t,this.setOptions(e),this.bindMethods(),this.#r()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(t){const e=this.options;this.options=this.#e.defaultMutationOptions(t),T(this.options,e)||this.#e.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#s,observer:this}),e?.mutationKey&&this.options.mutationKey&&Q(e.mutationKey)!==Q(this.options.mutationKey)?this.reset():this.#s?.state.status==="pending"&&this.#s.setOptions(this.options)}onSubscribe(){this.listeners.size===1&&this.#s&&(this.#s.addObserver(this),this.#r())}onUnsubscribe(){this.hasListeners()||this.#s?.removeObserver(this)}onMutationUpdate(t){this.#r(),this.#n(t)}getCurrentResult(){return this.#t}reset(){this.#s?.removeObserver(this),this.#s=void 0,this.#r(),this.#n()}mutate(t,e){return this.#i=e,this.#s?.removeObserver(this),this.#s=this.#e.getMutationCache().build(this.#e,this.options),this.#s.addObserver(this),this.#s.execute(t)}#r(){const t=this.#s?.state??bt();this.#t={...t,isPending:t.status==="pending",isSuccess:t.status==="success",isError:t.status==="error",isIdle:t.status==="idle",mutate:this.mutate,reset:this.reset}}#n(t){v.batch(()=>{if(this.#i&&this.hasListeners()){const e=this.#t.variables,s=this.#t.context,i={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(t?.type==="success"){try{this.#i.onSuccess?.(t.data,e,s,i)}catch(r){Promise.reject(r)}try{this.#i.onSettled?.(t.data,null,e,s,i)}catch(r){Promise.reject(r)}}else if(t?.type==="error"){try{this.#i.onError?.(t.error,e,s,i)}catch(r){Promise.reject(r)}try{this.#i.onSettled?.(void 0,t.error,e,s,i)}catch(r){Promise.reject(r)}}}this.listeners.forEach(e=>{e(this.#t)})})}};function ht(t,e){const s=new Set(e);return t.filter(i=>!s.has(i))}var ie=class extends E{#e;#t;#s;#i;#r;#n;#a;#u;#o;#d=[];constructor(t,e,s){super(),this.#e=t,this.#i=s,this.#s=[],this.#r=[],this.#t=[],this.setQueries(e)}onSubscribe(){this.listeners.size===1&&this.#r.forEach(t=>{t.subscribe(e=>{this.#f(t,e)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#r.forEach(t=>{t.destroy()})}setQueries(t,e){this.#s=t,this.#i=e,v.batch(()=>{const s=this.#r,i=this.#p(this.#s);i.forEach(c=>c.observer.setOptions(c.defaultedQueryOptions));const r=i.map(c=>c.observer),o=r.map(c=>c.getCurrentResult()),n=s.length!==r.length,u=r.some((c,l)=>c!==s[l]),a=n||u,h=a?!0:o.some((c,l)=>{const d=this.#t[l];return!d||!T(c,d)});!a&&!h||(a&&(this.#d=i,this.#r=r),this.#t=o,this.hasListeners()&&(a&&(ht(s,r).forEach(c=>{c.destroy()}),ht(r,s).forEach(c=>{c.subscribe(l=>{this.#f(c,l)})})),this.#y()))})}getCurrentResult(){return this.#t}getQueries(){return this.#r.map(t=>t.getCurrentQuery())}getObservers(){return this.#r}getOptimisticResult(t,e){const s=this.#p(t),i=s.map(o=>o.observer.getOptimisticResult(o.defaultedQueryOptions)),r=s.map(o=>o.defaultedQueryOptions.queryHash);return[i,o=>this.#c(o??i,e,r),()=>this.#h(i,s)]}#h(t,e){const s=new Set;return e.map((i,r)=>{const o=t[r];return i.defaultedQueryOptions.notifyOnChangeProps?o:i.observer.trackResult(o,n=>{s.has(n)||(s.add(n),e.forEach(u=>{u.observer.trackProp(n)}))})})}#c(t,e,s){if(e){const i=this.#o,r=s!==void 0&&i!==void 0&&(i.length!==s.length||s.some((o,n)=>o!==i[n]));return(this.#t!==this.#u||r||e!==this.#a)&&(this.#a=e,this.#u=this.#t,s!==void 0&&(this.#o=s),this.#n=$(this.#n,e(t))),this.#n}return t}#l(){return!this.#i?.combine||this.#r.some((t,e)=>t.options.suspense&&this.#t[e]?.data===void 0)}#p(t){const e=new Map;this.#r.forEach(i=>{const r=i.options.queryHash;if(!r)return;const o=e.get(r);o?o.push(i):e.set(r,[i])});const s=[];return t.forEach(i=>{const r=this.#e.defaultQueryOptions(i),o=e.get(r.queryHash)?.shift()??new q(this.#e,r);s.push({defaultedQueryOptions:r,observer:o})}),s}#f(t,e){const s=this.#r.indexOf(t);s!==-1&&(this.#t=this.#t.slice(),this.#t[s]=e,this.#y())}#y(){if(this.hasListeners()){const t=this.#l(),e=this.#n,s=t?e:this.#c(this.#h(this.#t,this.#d),this.#i?.combine);(t||e!==s)&&v.batch(()=>{this.listeners.forEach(i=>{i(this.#t)})})}}},re=class extends E{#e;constructor(t={}){super(),this.config=t,this.#e=new Map}build(t,e,s){const i=e.queryKey,r=e.queryHash??W(i,e);let o=this.get(r);return o||(o=new Xt({client:t,queryKey:i,queryHash:r,options:t.defaultQueryOptions(e),state:s,defaultOptions:t.getQueryDefaults(i)}),this.add(o)),o}add(t){this.#e.has(t.queryHash)||(this.#e.set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const e=this.#e.get(t.queryHash);e&&(t.destroy(),e===t&&this.#e.delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){v.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return this.#e.get(t)}getAll(){return[...this.#e.values()]}find(t){const e={exact:!0,...t};return this.getAll().find(s=>et(e,s))}findAll(t={}){const e=this.getAll();return Object.keys(t).length>0?e.filter(s=>et(t,s)):e}notify(t){v.batch(()=>{this.listeners.forEach(e=>{e(t)})})}onFocus(){v.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){v.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},he=class{#e;#t;#s;#i;#r;#n;#a;#u;constructor(t={}){this.#e=t.queryCache||new re,this.#t=t.mutationCache||new ee,this.#s=t.defaultOptions||{},this.#i=new Map,this.#r=new Map,this.#n=0}mount(){this.#n++,this.#n===1&&(this.#a=Y.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#u=A.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#n--,this.#n===0&&(this.#a?.(),this.#a=void 0,this.#u?.(),this.#u=void 0)}isFetching(t){return this.#e.findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return this.#t.findAll({...t,status:"pending"}).length}getQueryData(t){const e=this.defaultQueryOptions({queryKey:t});return this.#e.get(e.queryHash)?.state.data}ensureQueryData(t){const e=this.defaultQueryOptions(t),s=this.#e.build(this,e),i=s.state.data;return i===void 0?this.fetchQuery(t):(t.revalidateIfStale&&s.isStaleByTime(m(e.staleTime,s))&&this.prefetchQuery(e),Promise.resolve(i))}getQueriesData(t){return this.#e.findAll(t).map(({queryKey:e,state:s})=>[e,s.data])}setQueryData(t,e,s){const i=this.defaultQueryOptions({queryKey:t}),r=this.#e.get(i.queryHash)?.state.data,o=Ut(e,r);if(o!==void 0)return this.#e.build(this,i).setData(o,{...s,manual:!0})}setQueriesData(t,e,s){return v.batch(()=>this.#e.findAll(t).map(({queryKey:i})=>[i,this.setQueryData(i,e,s)]))}getQueryState(t){const e=this.defaultQueryOptions({queryKey:t});return this.#e.get(e.queryHash)?.state}removeQueries(t){const e=this.#e;v.batch(()=>{e.findAll(t).forEach(s=>{e.remove(s)})})}resetQueries(t,e){const s=this.#e;return v.batch(()=>{const i=s.findAll(t),r=new Set(i);return i.forEach(o=>{o.reset()}),this.refetchQueries({type:"active",predicate:o=>r.has(o)},e)})}cancelQueries(t,e={}){const s={revert:!0,...e},i=v.batch(()=>this.#e.findAll(t).map(r=>r.cancel(s)));return Promise.all(i).then(P).catch(P)}invalidateQueries(t,e={}){return v.batch(()=>(this.#e.findAll(t).forEach(s=>{s.invalidate()}),t?.refetchType==="none"?Promise.resolve():this.refetchQueries({...t,type:t?.refetchType??t?.type??"active"},e)))}refetchQueries(t,e={}){const s={...e,cancelRefetch:e.cancelRefetch??!0},i=v.batch(()=>this.#e.findAll(t).filter(r=>!r.isDisabled()&&!r.isStatic()).map(r=>{let o=r.fetch(void 0,s);return s.throwOnError||(o=o.catch(P)),r.state.fetchStatus==="paused"?Promise.resolve():o}));return Promise.all(i).then(P)}async query(t){const e=this.defaultQueryOptions(t);e.retry===void 0&&(e.retry=!1);const s=this.#e.build(this,e),i=s.isStaleByTime(m(e.staleTime,s))?await s.fetch(e):s.state.data,r=e.select;return r?r(i):i}fetchQuery(t){const e=this.defaultQueryOptions(t);e.retry===void 0&&(e.retry=!1);const s=this.#e.build(this,e);return s.isStaleByTime(m(e.staleTime,s))?s.fetch(e):Promise.resolve(s.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(P).catch(P)}infiniteQuery(t){return t._type="infinite",this.query(t)}fetchInfiniteQuery(t){return t._type="infinite",this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(P).catch(P)}ensureInfiniteQueryData(t){return t._type="infinite",this.ensureQueryData(t)}resumePausedMutations(){return A.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#s}setDefaultOptions(t){this.#s=t}setQueryDefaults(t,e){this.#i.set(Q(t),{queryKey:t,defaultOptions:e})}getQueryDefaults(t){const e=[...this.#i.values()],s={};return e.forEach(i=>{M(t,i.queryKey)&&Object.assign(s,i.defaultOptions)}),s}setMutationDefaults(t,e){this.#r.set(Q(t),{mutationKey:t,defaultOptions:e})}getMutationDefaults(t){const e=[...this.#r.values()],s={};return e.forEach(i=>{M(t,i.mutationKey)&&Object.assign(s,i.defaultOptions)}),s}defaultQueryOptions(t){if(t._defaulted)return t;const e={...this.#s.queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return e.queryHash||(e.queryHash=W(e.queryKey,e)),e.refetchOnReconnect===void 0&&(e.refetchOnReconnect=e.networkMode!=="always"),e.throwOnError===void 0&&(e.throwOnError=!!e.suspense),!e.networkMode&&e.persister&&(e.networkMode="offlineFirst"),e.queryFn===J&&(e.enabled=!1),e}defaultMutationOptions(t){return t?._defaulted?t:{...this.#s.mutations,...t?.mutationKey&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}};const Ot=H(!1),wt=()=>B(Ot);Ot.Provider;function ne(){let t=!1;return{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t}}const ae=H(ne()),Pt=()=>B(ae),Rt=(t,e,s)=>{const i=s?.state.error&&typeof t.throwOnError=="function"?X(t.throwOnError,[s.state.error,s]):t.throwOnError;(t.suspense||i)&&(e.isReset()||(t.retryOnMount=!1))},St=t=>{I(()=>{t.clearReset()},[t])},Ct=({result:t,errorResetBoundary:e,throwOnError:s,query:i,suspense:r})=>t.isError&&!e.isReset()&&!t.isFetching&&i&&(r&&t.data===void 0||X(s,[t.error,i])),Ft=t=>{if(t.suspense){const s=r=>r==="static"?r:Math.max(r??1e3,1e3),i=t.staleTime;t.staleTime=typeof i=="function"?(...r)=>s(i(...r)):s(i),typeof t.gcTime=="number"&&(t.gcTime=Math.max(t.gcTime,1e3))}},_=(t,e)=>t?.suspense&&e.isPending,Qt=(t,e,s)=>e.fetchOptimistic(t).catch(()=>{s.clearReset()});function ce({queries:t,...e},s){const i=V(),r=wt(),o=Pt(),n=e.subscribed!==!1,u=It(()=>t.map(f=>{const y=i.defaultQueryOptions(f);return y._optimisticResults=r?"isRestoring":n?"optimistic":void 0,y}),[t,i,r,n]);u.forEach(f=>{Ft(f);const y=i.getQueryCache().get(f.queryHash);Rt(f,o,y)}),St(o);const[a]=G(()=>new ie(i,u,e)),[h,c,l]=a.getOptimisticResult(u,e.combine),d=!r&&n;z(x(f=>d?a.subscribe(v.batchCalls(f)):P,[a,d]),()=>a.getCurrentResult()),I(()=>{a.setQueries(u,e)},[u,e,a]);const w=h.some((f,y)=>_(u[y],f))?h.flatMap((f,y)=>{const b=u[y];if(b&&_(b,f)){const g=new q(i,b);return Qt(b,g,o)}return[]}):[];if(w.length>0)throw Promise.all(w);const p=h.find((f,y)=>{const b=u[y];return b&&Ct({result:f,errorResetBoundary:o,throwOnError:b.throwOnError,query:i.getQueryCache().get(b.queryHash),suspense:b.suspense})});if(p)throw p.error;return c(l())}function Et(t,e,s){const i=wt(),r=Pt(),o=V(),n=o.defaultQueryOptions(t),u=o.getQueryCache().get(n.queryHash),a=t.subscribed!==!1;n._optimisticResults=i?"isRestoring":a?"optimistic":void 0,Ft(n),Rt(n,r,u),St(r);const[h]=G(()=>new e(o,n)),c=h.getOptimisticResult(n),l=!i&&a;if(z(x(d=>{const w=l?h.subscribe(v.batchCalls(d)):P;return h.updateResult(),w},[h,l]),()=>h.getCurrentResult()),I(()=>{h.setOptions(n)},[n,h]),_(n,c))throw Qt(n,h,r);if(Ct({result:c,errorResetBoundary:r,throwOnError:n.throwOnError,query:u,suspense:n.suspense}))throw c.error;return n.notifyOnChangeProps?c:h.trackResult(c)}function le(t,e){return Et(t,q)}function fe(t,e){const s=V(),[i]=G(()=>new se(s,t));I(()=>{i.setOptions(t)},[i,t]);const r=z(x(n=>i.subscribe(v.batchCalls(n)),[i]),()=>i.getCurrentResult()),o=x((...n)=>{i.mutate(n[0],n[1]).catch(P)},[i]);if(r.error&&X(i.options.throwOnError,[r.error]))throw r.error;return{...r,mutate:o,mutateAsync:r.mutate}}function de(t,e){return Et(t,Yt)}export{he as Q,fe as a,le as b,de as c,ue as d,ce as e,V as u};
|
|
1
|
+
import{X as H,h as I,u as Tt,x as B,T as It,d as G,C as z,q as x}from"./vendor-core-8R2fFbyN.js";const ct=H(void 0),V=t=>{const e=B(ct);if(!e)throw new Error("No QueryClient set, use QueryClientProvider to set one");return e},ue=({client:t,children:e})=>(I(()=>(t.mount(),()=>{t.unmount()}),[t]),Tt(ct.Provider,{value:t,children:e})),Dt={setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t),setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t)};var xt=class{#e=Dt;#t=!1;setTimeoutProvider(t){this.#e=t}setTimeout(t,e){return this.#e.setTimeout(t,e)}clearTimeout(t){this.#e.clearTimeout(t)}setInterval(t,e){return this.#e.setInterval(t,e)}clearInterval(t){this.#e.clearInterval(t)}};const Q=new xt;function At(t){setTimeout(t,0)}const qt=typeof window>"u"||"Deno"in globalThis;function P(){}function Ut(t,e){return typeof t=="function"?t(e):t}function lt(t){return typeof t=="number"&&t>=0&&t!==1/0}function ft(t,e){return Math.max(t+(e||0)-Date.now(),0)}function m(t,e){return typeof t=="function"?t(e):t}function et(t,e){const{type:s="all",exact:i,fetchStatus:r,predicate:o,queryKey:n,stale:u}=t;if(n){if(i){if(e.queryHash!==W(n,e.options))return!1}else if(!M(e.queryKey,n))return!1}if(s!=="all"){const a=e.isActive();if(s==="active"&&!a||s==="inactive"&&a)return!1}return!(typeof u=="boolean"&&e.isStale()!==u||r&&r!==e.state.fetchStatus||o&&!o(e))}function st(t,e){const{exact:s,status:i,predicate:r,mutationKey:o}=t;if(o){if(!e.options.mutationKey)return!1;if(s){if(F(e.options.mutationKey)!==F(o))return!1}else if(!M(e.options.mutationKey,o))return!1}return!(i&&e.state.status!==i||r&&!r(e))}function W(t,e){return(e?.queryKeyHashFn||F)(t)}function F(t){return JSON.stringify(t,(e,s)=>k(s)?Object.keys(s).sort().reduce((i,r)=>(i[r]=s[r],i),{}):s)}function M(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(Array.isArray(t)&&Array.isArray(e)){for(let i=0;i<e.length;i++)if(!M(t[i],e[i]))return!1;return!0}const s=Object.keys(e);for(const i of s)if(!M(t[i],e[i]))return!1;return!0}return!1}const kt=Object.prototype.hasOwnProperty;function $(t,e,s=0){if(t===e)return t;if(s>500)return e;const i=it(t)&&it(e);if(!i&&!(k(t)&&k(e)))return e;const r=(i?t:Object.keys(t)).length,o=i?e:Object.keys(e),n=o.length,u=i?new Array(n):{};let a=0;for(let h=0;h<n;h++){const c=i?h:o[h],l=t[c],d=e[c];if(l===d){u[c]=l,(i?h<r:kt.call(t,c))&&a++;continue}if(l===null||d===null||typeof l!="object"||typeof d!="object"){u[c]=d;continue}const w=$(l,d,s+1);u[c]=w,w===l&&a++}return r===n&&a===r?t:u}function T(t,e){if(!e||Object.keys(t).length!==Object.keys(e).length)return!1;for(const s in t)if(t[s]!==e[s])return!1;return!0}function it(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function k(t){if(!rt(t))return!1;const e=t.constructor;if(e===void 0)return!0;const s=e.prototype;return!(!rt(s)||!s.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(t)!==Object.prototype)}function rt(t){return Object.prototype.toString.call(t)==="[object Object]"}function jt(t){return new Promise(e=>{Q.setTimeout(e,t)})}function j(t,e,s){return typeof s.structuralSharing=="function"?s.structuralSharing(t,e):s.structuralSharing!==!1?$(t,e):e}function Kt(t,e,s=0){const i=[...t,e];return s&&i.length>s?i.slice(1):i}function Lt(t,e,s=0){const i=[e,...t];return s&&i.length>s?i.slice(0,-1):i}const J=Symbol();function dt(t,e){return!t.queryFn&&e?.initialPromise?()=>e.initialPromise:!t.queryFn||t.queryFn===J?()=>Promise.reject(new Error(`Missing queryFn: '${t.queryHash}'`)):t.queryFn}function X(t,e){return typeof t=="function"?t(...e):!!t}function Nt(t,e,s){let i=!1,r;return Object.defineProperty(t,"signal",{enumerable:!0,get:()=>(r??=e(),i||(i=!0,r.aborted?s():r.addEventListener("abort",s,{once:!0})),r)}),t}let _t=()=>qt;const Z=()=>_t();var E=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Ht=class extends E{#e;#t;#s;constructor(){super(),this.#s=t=>{if(typeof window<"u"&&window.addEventListener){const e=()=>t();return window.addEventListener("visibilitychange",e,!1),()=>{window.removeEventListener("visibilitychange",e)}}}}onSubscribe(){this.#t||this.setEventListener(this.#s)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(t){this.#s=t,this.#t?.(),this.#t=t(e=>{typeof e=="boolean"?this.setFocused(e):this.onFocus()})}setFocused(t){this.#e!==t&&(this.#e=t,this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(e=>{e(t)})}isFocused(){return typeof this.#e=="boolean"?this.#e:globalThis.document?.visibilityState!=="hidden"}};const Y=new Ht,Bt=At;function Gt(){let t=[],e=0,s=u=>{u()},i=u=>{u()},r=Bt;const o=u=>{e?t.push(u):r(()=>{s(u)})},n=()=>{const u=t;t=[],u.length&&r(()=>{i(()=>{u.forEach(a=>{s(a)})})})};return{batch:u=>{let a;e++;try{a=u()}finally{e--,e||n()}return a},batchCalls:u=>(...a)=>{o(()=>{u(...a)})},schedule:o,setNotifyFunction:u=>{s=u},setBatchNotifyFunction:u=>{i=u},setScheduler:u=>{r=u}}}const v=Gt();var zt=class extends E{#e=!0;#t;#s;constructor(){super(),this.#s=t=>{if(typeof window<"u"&&window.addEventListener){const e=()=>t(!0),s=()=>t(!1);return window.addEventListener("online",e,!1),window.addEventListener("offline",s,!1),()=>{window.removeEventListener("online",e),window.removeEventListener("offline",s)}}}}onSubscribe(){this.#t||this.setEventListener(this.#s)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(t){this.#s=t,this.#t?.(),this.#t=t(this.setOnline.bind(this))}setOnline(t){this.#e!==t&&(this.#e=t,this.listeners.forEach(e=>{e(t)}))}isOnline(){return this.#e}};const A=new zt;function Vt(t){return Math.min(1e3*2**t,3e4)}function pt(t){return(t??"online")==="online"?A.isOnline():!0}var K=class extends Error{constructor(t){super("CancelledError"),this.revert=t?.revert,this.silent=t?.silent}};function yt(t){let e=!1,s=0,i,r="pending",o,n;const u=new Promise((g,R)=>{o=g,n=R});u.catch(P);const a=()=>r!=="pending",h=g=>{if(!a()){const R=new K(g);f(R),t.onCancel?.(R)}},c=()=>{e=!0},l=()=>{e=!1},d=()=>Y.isFocused()&&(t.networkMode==="always"||A.isOnline())&&t.canRun(),w=()=>pt(t.networkMode)&&t.canRun(),p=g=>{a()||(i?.(),r="resolved",o(g))},f=g=>{a()||(i?.(),r="rejected",n(g))},y=()=>new Promise(g=>{i=R=>{(a()||d())&&g(R)},t.onPause?.()}).then(()=>{i=void 0,a()||t.onContinue?.()}),b=()=>{if(a())return;let g;const R=s===0?t.initialPromise:void 0;try{g=R??t.fn()}catch(S){g=Promise.reject(S)}Promise.resolve(g).then(p).catch(S=>{if(a())return;const O=t.retry??(Z()?0:3),C=t.retryDelay??Vt,U=typeof C=="function"?C(s,S):C,Mt=O===!0||typeof O=="number"&&s<O||typeof O=="function"&&O(s,S);if(e||!Mt){f(S);return}s++,t.onFail?.(s,S),jt(U).then(()=>d()?void 0:y()).then(()=>{e?f(S):b()})})};return{promise:u,status:()=>r,cancel:h,continue:()=>(i?.(),u),cancelRetry:c,continueRetry:l,canStart:w,start:()=>(w()?b():y().then(b),u)}}var mt=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),lt(this.gcTime)&&(this.#e=Q.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(Z()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(Q.clearTimeout(this.#e),this.#e=void 0)}};function Wt(t){return{onFetch:(e,s)=>{const i=e.options,r=e.fetchOptions?.meta?.fetchMore?.direction,o=e.state.data?.pages||[],n=e.state.data?.pageParams||[];let u={pages:[],pageParams:[]},a=0;const h=async()=>{let c=!1;const l=p=>{Nt(p,()=>e.signal,()=>c=!0)},d=dt(e.options,e.fetchOptions),w=async(p,f,y)=>{if(c)return Promise.reject(e.signal.reason);if(f==null&&p.pages.length)return Promise.resolve(p);const g=(()=>{const C={client:e.client,queryKey:e.queryKey,pageParam:f,direction:y?"backward":"forward",meta:e.options.meta};return l(C),C})(),R=await d(g),{maxPages:S}=e.options,O=y?Lt:Kt;return{pages:O(p.pages,R,S),pageParams:O(p.pageParams,f,S)}};if(r&&o.length){const p=r==="backward",f=p?vt:L,y={pages:o,pageParams:n};u=await w(y,f(i,y),p)}else{const p=t??o.length;do{const f=a===0?n[0]??i.initialPageParam:L(i,u);if(a>0&&f==null)break;u=await w(u,f),a++}while(a<p)}return u};e.options.persister?e.fetchFn=()=>e.options.persister?.(h,{client:e.client,queryKey:e.queryKey,meta:e.options.meta,signal:e.signal},s):e.fetchFn=h}}}function L(t,{pages:e,pageParams:s}){const i=e.length-1;return e.length>0?t.getNextPageParam(e[i],e,s[i],s):void 0}function vt(t,{pages:e,pageParams:s}){return e.length>0?t.getPreviousPageParam?.(e[0],e,s[0],s):void 0}function $t(t,e){return e?L(t,e)!=null:!1}function Jt(t,e){return!e||!t.getPreviousPageParam?!1:vt(t,e)!=null}var Xt=class extends mt{#e;#t;#s;#i;#r;#n;#a;#u;constructor(t){super(),this.#u=!1,this.#a=t.defaultOptions,this.setOptions(t.options),this.observers=[],this.#r=t.client,this.#i=this.#r.getQueryCache(),this.queryKey=t.queryKey,this.queryHash=t.queryHash,this.#t=at(this.options),this.state=t.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#n?.promise}setOptions(t){if(this.options={...this.#a,...t},t?._type&&(this.#e=t._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const e=at(this.options);e.data!==void 0&&(this.setState(nt(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#i.remove(this)}setData(t,e){const s=j(this.state.data,t,this.options);return this.#o({data:s,type:"success",dataUpdatedAt:e?.updatedAt,manual:e?.manual}),s}setState(t){this.#o({type:"setState",state:t})}cancel(t){const e=this.#n?.promise;return this.#n?.cancel(t),e?e.then(P).catch(P):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>m(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===J||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>m(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!ft(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(t=>t.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#n?.continue()}onOnline(){this.observers.find(t=>t.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#n?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),this.#i.notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){const e=this.observers.indexOf(t);e!==-1&&(this.observers.splice(e,1),this.observers.length||(this.#n&&(this.#u||this.state.fetchStatus==="paused"&&this.state.status==="pending"?this.#n.cancel({revert:!0}):this.#n.cancelRetry()),this.scheduleGc()),this.#i.notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#o({type:"invalidate"})}async fetch(t,e){if(this.state.fetchStatus!=="idle"&&this.#n?.status()!=="rejected"){if(this.state.data!==void 0&&e?.cancelRefetch)this.cancel({silent:!0});else if(this.#n)return this.#n.continueRetry(),this.#n.promise}if(t&&this.setOptions(t),!this.options.queryFn){const a=this.observers.find(h=>h.options.queryFn);a&&this.setOptions(a.options)}const s=new AbortController,i=a=>{Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(this.#u=!0,s.signal)})},r=()=>{const a=dt(this.options,e),c=(()=>{const l={client:this.#r,queryKey:this.queryKey,meta:this.meta};return i(l),l})();return this.#u=!1,this.options.persister?this.options.persister(a,c,this):a(c)},n=(()=>{const a={fetchOptions:e,options:this.options,queryKey:this.queryKey,client:this.#r,state:this.state,fetchFn:r};return i(a),a})();(this.#e==="infinite"?Wt(this.options.pages):this.options.behavior)?.onFetch(n,this),this.#s=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==n.fetchOptions?.meta)&&this.#o({type:"fetch",meta:n.fetchOptions?.meta});const u=this.#n=yt({initialPromise:e?.initialPromise,fn:n.fetchFn,onCancel:a=>{a instanceof K&&a.revert&&this.setState({...this.#s,fetchStatus:"idle"}),s.abort()},onFail:(a,h)=>{this.#o({type:"failed",failureCount:a,error:h})},onPause:()=>{this.#o({type:"pause"})},onContinue:()=>{this.#o({type:"continue"})},retry:n.options.retry,retryDelay:n.options.retryDelay,networkMode:n.options.networkMode,canRun:()=>!0});try{const a=await u.start();if(a===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(a),this.#i.config.onSuccess?.(a,this),this.#i.config.onSettled?.(a,this.state.error,this),a}catch(a){if(a instanceof K){if(a.silent)return this.#n.promise;if(a.revert){if(this.state.data===void 0)throw a;return this.state.data}}throw this.#o({type:"error",error:a}),this.#i.config.onError?.(a,this),this.#i.config.onSettled?.(this.state.data,a,this),a}finally{this.#n===u&&(this.#n=void 0),this.scheduleGc()}}#o(t){const e=s=>{switch(t.type){case"failed":return{...s,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...s,fetchStatus:"paused"};case"continue":return{...s,fetchStatus:"fetching"};case"fetch":return{...s,...gt(s.data,this.options),fetchMeta:t.meta??null};case"success":const i={...s,...nt(t.data,t.dataUpdatedAt),dataUpdateCount:s.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#s=t.manual?i:void 0,i;case"error":const r=t.error;return{...s,error:r,errorUpdateCount:s.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:s.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...s,isInvalidated:!0};case"setState":return{...s,...t.state}}};this.state=e(this.state),v.batch(()=>{this.observers.slice().forEach(s=>{s.onQueryUpdate()}),this.#i.notify({query:this,type:"updated",action:t})})}};function gt(t,e){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:pt(e.networkMode)?"fetching":"paused",...t===void 0&&{error:null,status:"pending"}}}function nt(t,e){return{data:t,dataUpdatedAt:e??Date.now(),error:null,isInvalidated:!1,status:"success"}}function at(t){const e=typeof t.initialData=="function"?t.initialData():t.initialData,s=e!==void 0,i=s?typeof t.initialDataUpdatedAt=="function"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:e,dataUpdateCount:0,dataUpdatedAt:s?i??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:s?"success":"pending",fetchStatus:"idle"}}var q=class extends E{#e;#t=void 0;#s=void 0;#i=void 0;#r;#n;#a;#u;#o;#d;#h;#c;#l;#p=new Set;constructor(t,e){super(),this.options=e,this.#e=t,this.#a=null,this.bindMethods(),this.setOptions(e)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),ot(this.#t,this.options)?this.#f():this.updateResult(),this.#b())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return N(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return N(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#O(),this.#w(),this.#t.removeObserver(this)}setOptions(t){const e=this.options,s=this.#t;if(this.options=this.#e.defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof m(this.options.enabled,this.#t)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#P(),this.#t.setOptions(this.options),e._defaulted&&!T(this.options,e)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});const i=this.hasListeners();i&&ut(this.#t,s,this.options,e)&&this.#f(),this.updateResult(),i&&(this.#t!==s||m(this.options.enabled,this.#t)!==m(e.enabled,this.#t)||m(this.options.staleTime,this.#t)!==m(e.staleTime,this.#t))&&this.#m();const r=this.#v();i&&(this.#t!==s||m(this.options.enabled,this.#t)!==m(e.enabled,this.#t)||r!==this.#l)&&this.#g(r)}getOptimisticResult(t){const e=this.#e.getQueryCache().build(this.#e,t),s=this.createResult(e,t);return T(this.getCurrentResult(),s)||(this.#i=s,this.#n=this.options,this.#r=this.#t.state),s}getCurrentResult(){return this.#i}trackResult(t,e){return new Proxy(t,{get:(s,i)=>(this.trackProp(i),e?.(i),Reflect.get(s,i))})}trackProp(t){this.#p.add(t)}getCurrentQuery(){return this.#t}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const e=this.#e.defaultQueryOptions(t),s=this.#e.getQueryCache().build(this.#e,e);let i=()=>{},r;const o=new Promise(n=>{r=n,i=this.#e.getQueryCache().subscribe(u=>{u.type==="updated"&&u.query.queryHash===s.queryHash&&s.state.data!==void 0&&(i(),n(this.createResult(s,e)))})});return Promise.race([s.fetch().then(()=>{const n=this.createResult(s,e);return r?.(n),n}).finally(()=>{i()}),o])}fetch(t){return this.#f({...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#i))}#f(t){this.#P();let e=this.#t.fetch(this.options,t);return t?.throwOnError||(e=e.catch(P)),e}#y(t){return!Z()&&m(this.options.enabled,this.#t)!==!1&<(t)}#m(){this.#O();const t=m(this.options.staleTime,this.#t);if(this.#i.isStale||!this.#y(t))return;const e=ft(this.#i.dataUpdatedAt,t)+1;this.#h=Q.setTimeout(()=>{this.#i.isStale||this.updateResult()},e)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#g(t){this.#w(),this.#l=t,!(this.#l===0||!this.#y(this.#l))&&(this.#c=Q.setInterval(()=>{(this.options.refetchIntervalInBackground||Y.isFocused())&&this.#f()},this.#l))}#b(){this.#m(),this.#g(this.#v())}#O(){this.#h!==void 0&&(Q.clearTimeout(this.#h),this.#h=void 0)}#w(){this.#c!==void 0&&(Q.clearInterval(this.#c),this.#c=void 0)}createResult(t,e){const s=this.#t,i=this.options,r=this.#i,o=this.#r,n=this.#n,u=t!==s?t.state:this.#s,{state:a}=t;let h={...a},c=!1,l;if(e._optimisticResults){const O=this.hasListeners(),C=!O&&ot(t,e),U=O&&ut(t,s,e,i);(C||U)&&(h={...h,...gt(a.data,t.options)}),e._optimisticResults==="isRestoring"&&(h.fetchStatus="idle")}let{error:d,errorUpdatedAt:w,status:p}=h;l=h.data;let f=!1;if(e.placeholderData!==void 0&&l===void 0&&p==="pending"){let O;r?.isPlaceholderData&&e.placeholderData===n?.placeholderData?(O=r.data,f=!0):O=typeof e.placeholderData=="function"?e.placeholderData(this.#d?.state.data,this.#d):e.placeholderData,O!==void 0&&(p="success",l=j(r?.data,O,e),c=!0)}if(e.select&&l!==void 0&&!f)if(r&&l===o?.data&&e.select===this.#u)l=this.#o;else try{this.#u=e.select,l=e.select(l),l=j(r?.data,l,e),this.#o=l,this.#a=null}catch(O){this.#a=O}else l===void 0&&(this.#a=null);this.#a&&(d=this.#a,l=this.#o,w=Date.now(),p="error",c=!1);const y=h.fetchStatus==="fetching",b=p==="pending",g=p==="error",R=b&&y,S=l!==void 0;return{status:p,fetchStatus:h.fetchStatus,isPending:b,isSuccess:p==="success",isError:g,isInitialLoading:R,isLoading:R,data:l,dataUpdatedAt:h.dataUpdatedAt,error:d,errorUpdatedAt:w,failureCount:h.fetchFailureCount,failureReason:h.fetchFailureReason,errorUpdateCount:h.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:h.dataUpdateCount>u.dataUpdateCount||h.errorUpdateCount>u.errorUpdateCount,isFetching:y,isRefetching:y&&!b,isLoadingError:g&&!S,isPaused:h.fetchStatus==="paused",isPlaceholderData:c,isRefetchError:g&&S,isStale:tt(t,e),refetch:this.refetch,isEnabled:m(e.enabled,t)!==!1}}updateResult(){const t=this.#i,e=this.createResult(this.#t,this.options);if(this.#r=this.#t.state,this.#n=this.options,this.#r.data!==void 0&&(this.#d=this.#t),T(e,t))return;this.#i=e;const i=(()=>{if(!t)return!0;const{notifyOnChangeProps:r}=this.options,o=typeof r=="function"?r():r;if(o==="all"||!o&&!this.#p.size)return!0;const n=new Set(o??this.#p);return this.options.throwOnError&&n.add("error"),Object.keys(this.#i).some(u=>{const a=u;return this.#i[a]!==t[a]&&n.has(a)})})();v.batch(()=>{i&&this.listeners.forEach(r=>{r(this.#i)}),this.#e.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}#P(){const t=this.#e.getQueryCache().build(this.#e,this.options);if(t===this.#t)return;const e=this.#t;this.#t=t,this.#s=t.state,this.hasListeners()&&(e?.removeObserver(this),t.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#b()}};function Zt(t,e){return m(e.enabled,t)!==!1&&t.state.data===void 0&&!(t.state.status==="error"&&m(e.retryOnMount,t)===!1)}function ot(t,e){return Zt(t,e)||t.state.data!==void 0&&N(t,e,e.refetchOnMount)}function N(t,e,s){if(m(e.enabled,t)!==!1&&m(e.staleTime,t)!=="static"){const i=typeof s=="function"?s(t):s;return i==="always"||i!==!1&&tt(t,e)}return!1}function ut(t,e,s,i){return(t!==e||m(i.enabled,t)===!1)&&(!s.suspense||t.state.status!=="error")&&tt(t,s)}function tt(t,e){return m(e.enabled,t)!==!1&&t.isStaleByTime(m(e.staleTime,t))}var Yt=class extends q{constructor(t,e){super(t,e)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(t){t._type="infinite",super.setOptions(t)}getOptimisticResult(t){return t._type="infinite",super.getOptimisticResult(t)}fetchNextPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(t){return this.fetch({...t,meta:{fetchMore:{direction:"backward"}}})}createResult(t,e){const{state:s}=t,i=super.createResult(t,e),{isFetching:r,isRefetching:o,isError:n,isRefetchError:u}=i,a=s.fetchMeta?.fetchMore?.direction,h=n&&a==="forward",c=r&&a==="forward",l=n&&a==="backward",d=r&&a==="backward";return{...i,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:$t(e,s.data),hasPreviousPage:Jt(e,s.data),isFetchNextPageError:h,isFetchingNextPage:c,isFetchPreviousPageError:l,isFetchingPreviousPage:d,isRefetchError:u&&!h&&!l,isRefetching:o&&!c&&!d}}},te=class extends mt{#e;#t;#s;#i;constructor(t){super(),this.#e=t.client,this.mutationId=t.mutationId,this.#s=t.mutationCache,this.#t=[],this.state=t.state||bt(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){this.#t.includes(t)||(this.#t.push(t),this.clearGcTimeout(),this.#s.notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){this.#t=this.#t.filter(e=>e!==t),this.scheduleGc(),this.#s.notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#s.remove(this))}continue(){return this.#i?.continue()??(this.state.status==="pending"?this.execute(this.state.variables):Promise.resolve())}async execute(t){const e=()=>{this.#r({type:"continue"})},s={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey},i=this.#i=yt({fn:()=>this.options.mutationFn?this.options.mutationFn(t,s):Promise.reject(new Error("No mutationFn found")),onFail:(n,u)=>{this.#r({type:"failed",failureCount:n,error:u})},onPause:()=>{this.#r({type:"pause"})},onContinue:e,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#s.canRun(this)}),r=this.state.status==="pending",o=!i.canStart();try{if(r)e();else{this.#r({type:"pending",variables:t,isPaused:o}),this.#s.config.onMutate&&await this.#s.config.onMutate(t,this,s);const u=await this.options.onMutate?.(t,s);u!==this.state.context&&this.#r({type:"pending",context:u,variables:t,isPaused:o})}const n=await i.start();return await this.#s.config.onSuccess?.(n,t,this.state.context,this,s),await this.options.onSuccess?.(n,t,this.state.context,s),await this.#s.config.onSettled?.(n,null,this.state.variables,this.state.context,this,s),await this.options.onSettled?.(n,null,t,this.state.context,s),this.#r({type:"success",data:n}),n}catch(n){try{await this.#s.config.onError?.(n,t,this.state.context,this,s)}catch(u){Promise.reject(u)}try{await this.options.onError?.(n,t,this.state.context,s)}catch(u){Promise.reject(u)}try{await this.#s.config.onSettled?.(void 0,n,this.state.variables,this.state.context,this,s)}catch(u){Promise.reject(u)}try{await this.options.onSettled?.(void 0,n,t,this.state.context,s)}catch(u){Promise.reject(u)}throw this.#r({type:"error",error:n}),n}finally{this.#i===i&&(this.#i=void 0),this.#s.runNext(this)}}#r(t){const e=s=>{switch(t.type){case"failed":return{...s,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...s,isPaused:!0};case"continue":return{...s,isPaused:!1};case"pending":return{...s,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...s,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...s,data:void 0,error:t.error,failureCount:s.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=e(this.state),v.batch(()=>{this.#t.forEach(s=>{s.onMutationUpdate(t)}),this.#s.notify({mutation:this,type:"updated",action:t})})}};function bt(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var ee=class extends E{#e;#t;#s;constructor(t={}){super(),this.config=t,this.#e=new Set,this.#t=new Map,this.#s=0}build(t,e,s){const i=new te({client:t,mutationCache:this,mutationId:++this.#s,options:t.defaultMutationOptions(e),state:s});return this.add(i),i}add(t){this.#e.add(t);const e=D(t);if(typeof e=="string"){const s=this.#t.get(e);s?s.push(t):this.#t.set(e,[t])}this.notify({type:"added",mutation:t})}remove(t){if(this.#e.delete(t)){const e=D(t);if(typeof e=="string"){const s=this.#t.get(e);if(s)if(s.length>1){const i=s.indexOf(t);i!==-1&&s.splice(i,1)}else s[0]===t&&this.#t.delete(e)}}this.notify({type:"removed",mutation:t})}canRun(t){const e=D(t);if(typeof e=="string"){const s=this.#t.get(e)?.find(i=>i.state.status==="pending");return!s||s===t}else return!0}runNext(t){const e=D(t);return typeof e=="string"?this.#t.get(e)?.find(s=>s!==t&&s.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){v.batch(()=>{this.#e.forEach(t=>{this.notify({type:"removed",mutation:t})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(t){const e={exact:!0,...t};return this.getAll().find(s=>st(e,s))}findAll(t={}){return this.getAll().filter(e=>st(t,e))}notify(t){v.batch(()=>{this.listeners.forEach(e=>{e(t)})})}resumePausedMutations(){const t=this.getAll().filter(e=>e.state.isPaused);return v.batch(()=>Promise.all(t.map(e=>e.continue().catch(P))))}};function D(t){return t.options.scope?.id}var se=class extends E{#e;#t=void 0;#s;#i;constructor(t,e){super(),this.#e=t,this.setOptions(e),this.bindMethods(),this.#r()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(t){const e=this.options;this.options=this.#e.defaultMutationOptions(t),T(this.options,e)||this.#e.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#s,observer:this}),e?.mutationKey&&this.options.mutationKey&&F(e.mutationKey)!==F(this.options.mutationKey)?this.reset():this.#s?.state.status==="pending"&&this.#s.setOptions(this.options)}onSubscribe(){this.listeners.size===1&&this.#s&&(this.#s.addObserver(this),this.#r())}onUnsubscribe(){this.hasListeners()||this.#s?.removeObserver(this)}onMutationUpdate(t){this.#r(),this.#n(t)}getCurrentResult(){return this.#t}reset(){this.#s?.removeObserver(this),this.#s=void 0,this.#r(),this.#n()}mutate(t,e){return this.#i=e,this.#s?.removeObserver(this),this.#s=this.#e.getMutationCache().build(this.#e,this.options),this.#s.addObserver(this),this.#s.execute(t)}#r(){const t=this.#s?.state??bt();this.#t={...t,isPending:t.status==="pending",isSuccess:t.status==="success",isError:t.status==="error",isIdle:t.status==="idle",mutate:this.mutate,reset:this.reset}}#n(t){v.batch(()=>{if(this.#i&&this.hasListeners()){const e=this.#t.variables,s=this.#t.context,i={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(t?.type==="success"){try{this.#i.onSuccess?.(t.data,e,s,i)}catch(r){Promise.reject(r)}try{this.#i.onSettled?.(t.data,null,e,s,i)}catch(r){Promise.reject(r)}}else if(t?.type==="error"){try{this.#i.onError?.(t.error,e,s,i)}catch(r){Promise.reject(r)}try{this.#i.onSettled?.(void 0,t.error,e,s,i)}catch(r){Promise.reject(r)}}}this.listeners.forEach(e=>{e(this.#t)})})}};function ht(t,e){const s=new Set(e);return t.filter(i=>!s.has(i))}var ie=class extends E{#e;#t;#s;#i;#r;#n;#a;#u;#o;#d=[];constructor(t,e,s){super(),this.#e=t,this.#i=s,this.#s=[],this.#r=[],this.#t=[],this.setQueries(e)}onSubscribe(){this.listeners.size===1&&this.#r.forEach(t=>{t.subscribe(e=>{this.#f(t,e)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#r.forEach(t=>{t.destroy()})}setQueries(t,e){this.#s=t,this.#i=e,v.batch(()=>{const s=this.#r,i=this.#p(this.#s);i.forEach(c=>c.observer.setOptions(c.defaultedQueryOptions));const r=i.map(c=>c.observer),o=r.map(c=>c.getCurrentResult()),n=s.length!==r.length,u=r.some((c,l)=>c!==s[l]),a=n||u,h=a?!0:o.some((c,l)=>{const d=this.#t[l];return!d||!T(c,d)});!a&&!h||(a&&(this.#d=i,this.#r=r),this.#t=o,this.hasListeners()&&(a&&(ht(s,r).forEach(c=>{c.destroy()}),ht(r,s).forEach(c=>{c.subscribe(l=>{this.#f(c,l)})})),this.#y()))})}getCurrentResult(){return this.#t}getQueries(){return this.#r.map(t=>t.getCurrentQuery())}getObservers(){return this.#r}getOptimisticResult(t,e){const s=this.#p(t),i=s.map(o=>o.observer.getOptimisticResult(o.defaultedQueryOptions)),r=s.map(o=>o.defaultedQueryOptions.queryHash);return[i,o=>this.#c(o??i,e,r),()=>this.#h(i,s)]}#h(t,e){const s=new Set;return e.map((i,r)=>{const o=t[r];return i.defaultedQueryOptions.notifyOnChangeProps?o:i.observer.trackResult(o,n=>{s.has(n)||(s.add(n),e.forEach(u=>{u.observer.trackProp(n)}))})})}#c(t,e,s){if(e){const i=this.#o,r=s!==void 0&&i!==void 0&&(i.length!==s.length||s.some((o,n)=>o!==i[n]));return(this.#t!==this.#u||r||e!==this.#a)&&(this.#a=e,this.#u=this.#t,s!==void 0&&(this.#o=s),this.#n=$(this.#n,e(t))),this.#n}return t}#l(){return!this.#i?.combine||this.#r.some((t,e)=>t.options.suspense&&this.#t[e]?.data===void 0)}#p(t){const e=new Map;this.#r.forEach(i=>{const r=i.options.queryHash;if(!r)return;const o=e.get(r);o?o.push(i):e.set(r,[i])});const s=[];return t.forEach(i=>{const r=this.#e.defaultQueryOptions(i),o=e.get(r.queryHash)?.shift()??new q(this.#e,r);s.push({defaultedQueryOptions:r,observer:o})}),s}#f(t,e){const s=this.#r.indexOf(t);s!==-1&&(this.#t=this.#t.slice(),this.#t[s]=e,this.#y())}#y(){if(this.hasListeners()){const t=this.#l(),e=this.#n,s=t?e:this.#c(this.#h(this.#t,this.#d),this.#i?.combine);(t||e!==s)&&v.batch(()=>{this.listeners.forEach(i=>{i(this.#t)})})}}},re=class extends E{#e;constructor(t={}){super(),this.config=t,this.#e=new Map}build(t,e,s){const i=e.queryKey,r=e.queryHash??W(i,e);let o=this.get(r);return o||(o=new Xt({client:t,queryKey:i,queryHash:r,options:t.defaultQueryOptions(e),state:s,defaultOptions:t.getQueryDefaults(i)}),this.add(o)),o}add(t){this.#e.has(t.queryHash)||(this.#e.set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const e=this.#e.get(t.queryHash);e&&(t.destroy(),e===t&&this.#e.delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){v.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return this.#e.get(t)}getAll(){return[...this.#e.values()]}find(t){const e={exact:!0,...t};return this.getAll().find(s=>et(e,s))}findAll(t={}){const e=this.getAll();return Object.keys(t).length>0?e.filter(s=>et(t,s)):e}notify(t){v.batch(()=>{this.listeners.forEach(e=>{e(t)})})}onFocus(){v.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){v.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},he=class{#e;#t;#s;#i;#r;#n;#a;#u;constructor(t={}){this.#e=t.queryCache||new re,this.#t=t.mutationCache||new ee,this.#s=t.defaultOptions||{},this.#i=new Map,this.#r=new Map,this.#n=0}mount(){this.#n++,this.#n===1&&(this.#a=Y.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#u=A.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#n--,this.#n===0&&(this.#a?.(),this.#a=void 0,this.#u?.(),this.#u=void 0)}isFetching(t){return this.#e.findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return this.#t.findAll({...t,status:"pending"}).length}getQueryData(t){const e=this.defaultQueryOptions({queryKey:t});return this.#e.get(e.queryHash)?.state.data}ensureQueryData(t){const e=this.defaultQueryOptions(t),s=this.#e.build(this,e),i=s.state.data;return i===void 0?this.fetchQuery(t):(t.revalidateIfStale&&s.isStaleByTime(m(e.staleTime,s))&&this.prefetchQuery(e),Promise.resolve(i))}getQueriesData(t){return this.#e.findAll(t).map(({queryKey:e,state:s})=>[e,s.data])}setQueryData(t,e,s){const i=this.defaultQueryOptions({queryKey:t}),r=this.#e.get(i.queryHash)?.state.data,o=Ut(e,r);if(o!==void 0)return this.#e.build(this,i).setData(o,{...s,manual:!0})}setQueriesData(t,e,s){return v.batch(()=>this.#e.findAll(t).map(({queryKey:i})=>[i,this.setQueryData(i,e,s)]))}getQueryState(t){const e=this.defaultQueryOptions({queryKey:t});return this.#e.get(e.queryHash)?.state}removeQueries(t){const e=this.#e;v.batch(()=>{e.findAll(t).forEach(s=>{e.remove(s)})})}resetQueries(t,e){const s=this.#e;return v.batch(()=>{const i=s.findAll(t),r=new Set(i);return i.forEach(o=>{o.reset()}),this.refetchQueries({type:"active",predicate:o=>r.has(o)},e)})}cancelQueries(t,e={}){const s={revert:!0,...e},i=v.batch(()=>this.#e.findAll(t).map(r=>r.cancel(s)));return Promise.all(i).then(P).catch(P)}invalidateQueries(t,e={}){return v.batch(()=>(this.#e.findAll(t).forEach(s=>{s.invalidate()}),t?.refetchType==="none"?Promise.resolve():this.refetchQueries({...t,type:t?.refetchType??t?.type??"active"},e)))}refetchQueries(t,e={}){const s={...e,cancelRefetch:e.cancelRefetch??!0},i=v.batch(()=>this.#e.findAll(t).filter(r=>!r.isDisabled()&&!r.isStatic()).map(r=>{let o=r.fetch(void 0,s);return s.throwOnError||(o=o.catch(P)),r.state.fetchStatus==="paused"?Promise.resolve():o}));return Promise.all(i).then(P)}async query(t){const e=this.defaultQueryOptions(t);e.retry===void 0&&(e.retry=!1);const s=this.#e.build(this,e),i=s.isStaleByTime(m(e.staleTime,s))?await s.fetch(e):s.state.data,r=e.select;return r?r(i):i}fetchQuery(t){const e=this.defaultQueryOptions(t);e.retry===void 0&&(e.retry=!1);const s=this.#e.build(this,e);return s.isStaleByTime(m(e.staleTime,s))?s.fetch(e):Promise.resolve(s.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(P).catch(P)}infiniteQuery(t){return t._type="infinite",this.query(t)}fetchInfiniteQuery(t){return t._type="infinite",this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(P).catch(P)}ensureInfiniteQueryData(t){return t._type="infinite",this.ensureQueryData(t)}resumePausedMutations(){return A.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#s}setDefaultOptions(t){this.#s=t}setQueryDefaults(t,e){this.#i.set(F(t),{queryKey:t,defaultOptions:e})}getQueryDefaults(t){const e=[...this.#i.values()],s={};return e.forEach(i=>{M(t,i.queryKey)&&Object.assign(s,i.defaultOptions)}),s}setMutationDefaults(t,e){this.#r.set(F(t),{mutationKey:t,defaultOptions:e})}getMutationDefaults(t){const e=[...this.#r.values()],s={};return e.forEach(i=>{M(t,i.mutationKey)&&Object.assign(s,i.defaultOptions)}),s}defaultQueryOptions(t){if(t._defaulted)return t;const e={...this.#s.queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return e.queryHash||(e.queryHash=W(e.queryKey,e)),e.refetchOnReconnect===void 0&&(e.refetchOnReconnect=e.networkMode!=="always"),e.throwOnError===void 0&&(e.throwOnError=!!e.suspense),!e.networkMode&&e.persister&&(e.networkMode="offlineFirst"),e.queryFn===J&&(e.enabled=!1),e}defaultMutationOptions(t){return t?._defaulted?t:{...this.#s.mutations,...t?.mutationKey&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}};const Ot=H(!1),wt=()=>B(Ot);Ot.Provider;function ne(){let t=!1;return{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t}}const ae=H(ne()),Pt=()=>B(ae),Rt=(t,e,s)=>{const i=s?.state.error&&typeof t.throwOnError=="function"?X(t.throwOnError,[s.state.error,s]):t.throwOnError;(t.suspense||i)&&(e.isReset()||(t.retryOnMount=!1))},St=t=>{I(()=>{t.clearReset()},[t])},Ct=({result:t,errorResetBoundary:e,throwOnError:s,query:i,suspense:r})=>t.isError&&!e.isReset()&&!t.isFetching&&i&&(r&&t.data===void 0||X(s,[t.error,i])),Qt=t=>{if(t.suspense){const s=r=>r==="static"?r:Math.max(r??1e3,1e3),i=t.staleTime;t.staleTime=typeof i=="function"?(...r)=>s(i(...r)):s(i),typeof t.gcTime=="number"&&(t.gcTime=Math.max(t.gcTime,1e3))}},_=(t,e)=>t?.suspense&&e.isPending,Ft=(t,e,s)=>e.fetchOptimistic(t).catch(()=>{s.clearReset()});function ce({queries:t,...e},s){const i=V(),r=wt(),o=Pt(),n=e.subscribed!==!1,u=It(()=>t.map(f=>{const y=i.defaultQueryOptions(f);return y._optimisticResults=r?"isRestoring":n?"optimistic":void 0,y}),[t,i,r,n]);u.forEach(f=>{Qt(f);const y=i.getQueryCache().get(f.queryHash);Rt(f,o,y)}),St(o);const[a]=G(()=>new ie(i,u,e)),[h,c,l]=a.getOptimisticResult(u,e.combine),d=!r&&n;z(x(f=>d?a.subscribe(v.batchCalls(f)):P,[a,d]),()=>a.getCurrentResult()),I(()=>{a.setQueries(u,e)},[u,e,a]);const w=h.some((f,y)=>_(u[y],f))?h.flatMap((f,y)=>{const b=u[y];if(b&&_(b,f)){const g=new q(i,b);return Ft(b,g,o)}return[]}):[];if(w.length>0)throw Promise.all(w);const p=h.find((f,y)=>{const b=u[y];return b&&Ct({result:f,errorResetBoundary:o,throwOnError:b.throwOnError,query:i.getQueryCache().get(b.queryHash),suspense:b.suspense})});if(p)throw p.error;return c(l())}function Et(t,e,s){const i=wt(),r=Pt(),o=V(),n=o.defaultQueryOptions(t),u=o.getQueryCache().get(n.queryHash),a=t.subscribed!==!1;n._optimisticResults=i?"isRestoring":a?"optimistic":void 0,Qt(n),Rt(n,r,u),St(r);const[h]=G(()=>new e(o,n)),c=h.getOptimisticResult(n),l=!i&&a;if(z(x(d=>{const w=l?h.subscribe(v.batchCalls(d)):P;return h.updateResult(),w},[h,l]),()=>h.getCurrentResult()),I(()=>{h.setOptions(n)},[n,h]),_(n,c))throw Ft(n,h,r);if(Ct({result:c,errorResetBoundary:r,throwOnError:n.throwOnError,query:u,suspense:n.suspense}))throw c.error;return n.notifyOnChangeProps?c:h.trackResult(c)}function le(t,e){return Et(t,q)}function fe(t){return t}function de(t){return t}function pe(t,e){const s=V(),[i]=G(()=>new se(s,t));I(()=>{i.setOptions(t)},[i,t]);const r=z(x(n=>i.subscribe(v.batchCalls(n)),[i]),()=>i.getCurrentResult()),o=x((...n)=>{i.mutate(n[0],n[1]).catch(P)},[i]);if(r.error&&X(i.options.throwOnError,[r.error]))throw r.error;return{...r,mutate:o,mutateAsync:r.mutate}}function ye(t,e){return Et(t,Yt)}export{he as Q,pe as a,le as b,ye as c,ue as d,ce as e,de as i,fe as q,J as s,V as u};
|
package/client/dist/index.html
CHANGED
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
background-color: #0c0d12;
|
|
34
34
|
}
|
|
35
35
|
</style>
|
|
36
|
-
<script type="module" crossorigin src="/assets/index-
|
|
36
|
+
<script type="module" crossorigin src="/assets/index-BXwhFWB_.js"></script>
|
|
37
37
|
<link rel="modulepreload" crossorigin href="/assets/vendor-core-8R2fFbyN.js">
|
|
38
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-query-
|
|
38
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-query-BUTye89G.js">
|
|
39
39
|
<link rel="modulepreload" crossorigin href="/assets/vendor-icons-CDMuNDeL.js">
|
|
40
40
|
<link rel="stylesheet" crossorigin href="/assets/index-CUm1meqr.css">
|
|
41
41
|
</head>
|
package/orchestrator.js
CHANGED
|
@@ -339,10 +339,10 @@ const log = (prefix, color, data) => {
|
|
|
339
339
|
}
|
|
340
340
|
|
|
341
341
|
const spawnOpts = (cwd, extraEnv, withIpc = false) => ({
|
|
342
|
-
// 'ipc' gives the child a structured message channel (see server/src/lib/ipc.ts).
|
|
343
342
|
// It only works for directly spawned node processes (prod); under a
|
|
344
343
|
// package-manager runner (dev) there is no IPC forwarding, so stdout tags remain the fallback signal.
|
|
345
344
|
stdio: withIpc ? ['pipe', 'pipe', 'pipe', 'ipc'] : 'pipe',
|
|
345
|
+
stdio: withIpc ? ['ignore', 'pipe', 'pipe', 'ipc'] : ['ignore', 'pipe', 'pipe'],
|
|
346
346
|
shell: false,
|
|
347
347
|
cwd,
|
|
348
348
|
detached: !isWin,
|
|
@@ -384,7 +384,6 @@ const terminateProcess = (proc, signal = 'SIGTERM') => {
|
|
|
384
384
|
try {
|
|
385
385
|
process.kill(-proc.pid, signal)
|
|
386
386
|
} catch (err) {
|
|
387
|
-
// ESRCH just means the process group is already gone — not an error.
|
|
388
387
|
if (err.code !== 'ESRCH') {
|
|
389
388
|
console.error(
|
|
390
389
|
`${colors.system}[System]${colors.reset} Failed to signal ${proc.pid} (${signal}): ${err.message}`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serifpersia/dango",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "A web application for watching anime.",
|
|
5
5
|
"main": "orchestrator.js",
|
|
6
6
|
"repository": {
|
|
@@ -58,14 +58,10 @@
|
|
|
58
58
|
"@octokit/rest": "^22.0.1",
|
|
59
59
|
"@xhayper/discord-rpc": "^1.3.4",
|
|
60
60
|
"cheerio": "^1.2.0",
|
|
61
|
-
"compression": "^1.8.1",
|
|
62
|
-
"cors": "^2.8.5",
|
|
63
61
|
"dotenv": "^17.4.2",
|
|
64
|
-
"express": "^5.1.0",
|
|
65
62
|
"fast-xml-parser": "^5.11.1",
|
|
66
63
|
"got-scraping": "^3.2.9",
|
|
67
64
|
"lru-cache": "^11.5.2",
|
|
68
|
-
"multer": "^2.0.2",
|
|
69
65
|
"pino": "^10.3.1",
|
|
70
66
|
"ws": "^8.18.0",
|
|
71
67
|
"youtubei.js": "^18.1.0"
|
|
@@ -81,5 +77,5 @@
|
|
|
81
77
|
"allowScripts": {
|
|
82
78
|
"esbuild@0.28.2": true
|
|
83
79
|
},
|
|
84
|
-
"versionDate": "2026-09-
|
|
80
|
+
"versionDate": "2026-09-26T19:42:52.715Z"
|
|
85
81
|
}
|
package/server/dist/app-auth.js
CHANGED
|
@@ -35,7 +35,7 @@ function saveSessions(sessions) {
|
|
|
35
35
|
fs.writeFileSync(sessionsFile(), JSON.stringify(sessions));
|
|
36
36
|
}
|
|
37
37
|
catch {
|
|
38
|
-
//
|
|
38
|
+
// ignore
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
export function getAppPasswordHash() {
|
|
@@ -113,23 +113,21 @@ export function revokeLanSession(token) {
|
|
|
113
113
|
export function clearAllLanSessions() {
|
|
114
114
|
saveSessions({});
|
|
115
115
|
}
|
|
116
|
-
function
|
|
116
|
+
export function normalizeClientIp(ip) {
|
|
117
117
|
if (!ip)
|
|
118
118
|
return '';
|
|
119
119
|
if (ip.startsWith('::ffff:'))
|
|
120
120
|
return ip.slice('::ffff:'.length);
|
|
121
121
|
return ip;
|
|
122
122
|
}
|
|
123
|
-
export function
|
|
124
|
-
const
|
|
125
|
-
return
|
|
123
|
+
export function isLoopbackIp(ip) {
|
|
124
|
+
const normalized = normalizeClientIp(ip);
|
|
125
|
+
return normalized === '127.0.0.1' || normalized === '::1';
|
|
126
126
|
}
|
|
127
|
-
export function
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
return auth.slice(7).trim() || null;
|
|
127
|
+
export function getTokenFromHeaders(authorization, cookieHeader) {
|
|
128
|
+
if (authorization && authorization.toLowerCase().startsWith('bearer ')) {
|
|
129
|
+
return authorization.slice(7).trim() || null;
|
|
131
130
|
}
|
|
132
|
-
const cookieHeader = req.headers.cookie;
|
|
133
131
|
if (cookieHeader) {
|
|
134
132
|
const parts = cookieHeader.split(';');
|
|
135
133
|
for (const part of parts) {
|
|
@@ -144,30 +142,12 @@ export function getRequestToken(req) {
|
|
|
144
142
|
}
|
|
145
143
|
return null;
|
|
146
144
|
}
|
|
147
|
-
export
|
|
148
|
-
if (!hasAppPassword())
|
|
149
|
-
return true;
|
|
150
|
-
return validateLanSession(getRequestToken(req));
|
|
151
|
-
}
|
|
152
|
-
const PUBLIC_PATHS = new Set([
|
|
145
|
+
export const LAN_AUTH_PUBLIC_PATHS = new Set([
|
|
153
146
|
'/api/auth/app-status',
|
|
154
147
|
'/api/auth/app-login',
|
|
155
148
|
'/api/auth/app-logout',
|
|
156
149
|
'/api/internal/shutdown',
|
|
157
150
|
]);
|
|
158
|
-
export function lanAuthMiddleware(req, res, next) {
|
|
159
|
-
if (!req.path.startsWith('/api/'))
|
|
160
|
-
return next();
|
|
161
|
-
if (PUBLIC_PATHS.has(req.path))
|
|
162
|
-
return next();
|
|
163
|
-
if (req.path.startsWith('/api/internal/') && isLoopbackRequest(req))
|
|
164
|
-
return next();
|
|
165
|
-
if (!hasAppPassword())
|
|
166
|
-
return next();
|
|
167
|
-
if (validateLanSession(getRequestToken(req)))
|
|
168
|
-
return next();
|
|
169
|
-
return res.status(401).json({ error: 'LAN_AUTH_REQUIRED' });
|
|
170
|
-
}
|
|
171
151
|
export function buildLanCookie(token, expiry) {
|
|
172
152
|
const maxAge = Math.max(1, Math.floor((expiry - Date.now()) / 1000));
|
|
173
153
|
return `${LAN_AUTH_COOKIE}=${encodeURIComponent(token)}; HttpOnly; Path=/; Max-Age=${maxAge}; SameSite=Lax`;
|