@clerk/clerk-js
Version:
Clerk JS library
1 lines • 24 kB
JavaScript
"use strict";(globalThis.rspackChunk_clerk_clerk_js=globalThis.rspackChunk_clerk_clerk_js||[]).push([[462],{6125(t,e,s){let i,r,n,a,o,u,h;s.d(e,{QueryClient:()=>$});var c={setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t),setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t)},l=new class{#t=c;#e=!1;setTimeoutProvider(t){this.#t=t}setTimeout(t,e){return this.#t.setTimeout(t,e)}clearTimeout(t){this.#t.clearTimeout(t)}setInterval(t,e){return this.#t.setInterval(t,e)}clearInterval(t){this.#t.clearInterval(t)}},d="u"<typeof window||"Deno"in globalThis;function f(){}function p(t,e){return"function"==typeof t?t(e):t}function y(t,e){let{type:s="all",exact:i,fetchStatus:r,predicate:n,queryKey:a,stale:o}=t;if(a){if(i){if(e.queryHash!==v(a,e.options))return!1}else if(!g(e.queryKey,a))return!1}if("all"!==s){let t=e.isActive();if("active"===s&&!t||"inactive"===s&&t)return!1}return("boolean"!=typeof o||e.isStale()===o)&&(!r||r===e.state.fetchStatus)&&(!n||!!n(e))}function m(t,e){let{exact:s,status:i,predicate:r,mutationKey:n}=t;if(n){if(!e.options.mutationKey)return!1;if(s){if(b(e.options.mutationKey)!==b(n))return!1}else if(!g(e.options.mutationKey,n))return!1}return(!i||e.state.status===i)&&(!r||!!r(e))}function v(t,e){return(e?.queryKeyHashFn||b)(t)}function b(t){return JSON.stringify(t,(t,e)=>O(e)?Object.keys(e).sort().reduce((t,s)=>(t[s]=e[s],t),{}):e)}function g(t,e){return t===e||typeof t==typeof e&&!!t&&!!e&&"object"==typeof t&&"object"==typeof e&&Object.keys(e).every(s=>g(t[s],e[s]))}var C=Object.prototype.hasOwnProperty;function w(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function O(t){if(!q(t))return!1;let e=t.constructor;if(void 0===e)return!0;let s=e.prototype;return!!q(s)&&!!s.hasOwnProperty("isPrototypeOf")&&Object.getPrototypeOf(t)===Object.prototype}function q(t){return"[object Object]"===Object.prototype.toString.call(t)}function S(t,e,s=0){let i=[...t,e];return s&&i.length>s?i.slice(1):i}function P(t,e,s=0){let i=[e,...t];return s&&i.length>s?i.slice(0,-1):i}var F=Symbol();function T(t,e){return!t.queryFn&&e?.initialPromise?()=>e.initialPromise:t.queryFn&&t.queryFn!==F?t.queryFn:()=>Promise.reject(Error(`Missing queryFn: '${t.queryHash}'`))}var D=(i=[],r=0,n=t=>{t()},a=t=>{t()},o=function(t){setTimeout(t,0)},{batch:t=>{let e;r++;try{e=t()}finally{let t;--r||(t=i,i=[],t.length&&o(()=>{a(()=>{t.forEach(t=>{n(t)})})}))}return e},batchCalls:t=>(...e)=>{u(()=>{t(...e)})},schedule:u=t=>{r?i.push(t):o(()=>{n(t)})},setNotifyFunction:t=>{n=t},setBatchNotifyFunction:t=>{a=t},setScheduler:t=>{o=t}}),A=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(){}},E=new class extends A{#s;#i;#r;constructor(){super(),this.#r=t=>{if("u">typeof window&&window.addEventListener){let e=()=>t();return window.addEventListener("visibilitychange",e,!1),()=>{window.removeEventListener("visibilitychange",e)}}}}onSubscribe(){this.#i||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#i?.(),this.#i=void 0)}setEventListener(t){this.#r=t,this.#i?.(),this.#i=t(t=>{"boolean"==typeof t?this.setFocused(t):this.onFocus()})}setFocused(t){this.#s!==t&&(this.#s=t,this.onFocus())}onFocus(){let t=this.isFocused();this.listeners.forEach(e=>{e(t)})}isFocused(){return"boolean"==typeof this.#s?this.#s:globalThis.document?.visibilityState!=="hidden"}},Q=new class extends A{#n=!0;#i;#r;constructor(){super(),this.#r=t=>{if("u">typeof window&&window.addEventListener){let 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.#i||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#i?.(),this.#i=void 0)}setEventListener(t){this.#r=t,this.#i?.(),this.#i=t(this.setOnline.bind(this))}setOnline(t){this.#n!==t&&(this.#n=t,this.listeners.forEach(e=>{e(t)}))}isOnline(){return this.#n}},M=(h=()=>d,{isServer:()=>h(),setIsServer(t){h=t}});function j(t){return Math.min(1e3*2**t,3e4)}function R(t){return(t??"online")!=="online"||Q.isOnline()}var x=class extends Error{constructor(t){super("CancelledError"),this.revert=t?.revert,this.silent=t?.silent}};function I(t){let e,s=!1,i=0,r=function(){let t,e,s=new Promise((s,i)=>{t=s,e=i});function i(t){Object.assign(s,t),delete s.resolve,delete s.reject}return s.status="pending",s.catch(()=>{}),s.resolve=e=>{i({status:"fulfilled",value:e}),t(e)},s.reject=t=>{i({status:"rejected",reason:t}),e(t)},s}(),n=()=>E.isFocused()&&("always"===t.networkMode||Q.isOnline())&&t.canRun(),a=()=>R(t.networkMode)&&t.canRun(),o=t=>{"pending"===r.status&&(e?.(),r.resolve(t))},u=t=>{"pending"===r.status&&(e?.(),r.reject(t))},h=()=>new Promise(s=>{e=t=>{("pending"!==r.status||n())&&s(t)},t.onPause?.()}).then(()=>{e=void 0,"pending"===r.status&&t.onContinue?.()}),c=()=>{let e;if("pending"!==r.status)return;let a=0===i?t.initialPromise:void 0;try{e=a??t.fn()}catch(t){e=Promise.reject(t)}Promise.resolve(e).then(o).catch(e=>{if("pending"!==r.status)return;let a=t.retry??3*!M.isServer(),o=t.retryDelay??j,d="function"==typeof o?o(i,e):o,f=!0===a||"number"==typeof a&&i<a||"function"==typeof a&&a(i,e);s||!f?u(e):(i++,t.onFail?.(i,e),new Promise(t=>{l.setTimeout(t,d)}).then(()=>n()?void 0:h()).then(()=>{s?u(e):c()}))})};return{promise:r,status:()=>r.status,cancel:e=>{if("pending"===r.status){let s=new x(e);u(s),t.onCancel?.(s)}},continue:()=>(e?.(),r),cancelRetry:()=>{s=!0},continueRetry:()=>{s=!1},canStart:a,start:()=>(a()?c():h().then(c),r)}}var k=class{#a;destroy(){this.clearGcTimeout()}scheduleGc(){var t;this.clearGcTimeout(),"number"==typeof(t=this.gcTime)&&t>=0&&t!==1/0&&(this.#a=l.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(M.isServer()?1/0:3e5))}clearGcTimeout(){void 0!==this.#a&&(l.clearTimeout(this.#a),this.#a=void 0)}};function U(t,{pages:e,pageParams:s}){let i=e.length-1;return e.length>0?t.getNextPageParam(e[i],e,s[i],s):void 0}var K=class extends k{#o;#u;#h;#c;#l;#d;#f;#p;constructor(t){super(),this.#p=!1,this.#f=t.defaultOptions,this.setOptions(t.options),this.observers=[],this.#l=t.client,this.#c=this.#l.getQueryCache(),this.queryKey=t.queryKey,this.queryHash=t.queryHash,this.#u=L(this.options),this.state=t.state??this.#u,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#o}get promise(){return this.#d?.promise}setOptions(t){if(this.options={...this.#f,...t},t?._type&&(this.#o=t._type),this.updateGcTime(this.options.gcTime),this.state&&void 0===this.state.data){let t=L(this.options);void 0!==t.data&&(this.setState(H(t.data,t.dataUpdatedAt)),this.#u=t)}}optionalRemove(){this.observers.length||"idle"!==this.state.fetchStatus||this.#c.remove(this)}setData(t,e){var s,i;let r=(s=this.state.data,"function"==typeof(i=this.options).structuralSharing?i.structuralSharing(s,t):!1!==i.structuralSharing?function t(e,s,i=0){if(e===s)return e;if(i>500)return s;let r=w(e)&&w(s);if(!r&&!(O(e)&&O(s)))return s;let n=(r?e:Object.keys(e)).length,a=r?s:Object.keys(s),o=a.length,u=r?Array(o):{},h=0;for(let c=0;c<o;c++){let o=r?c:a[c],l=e[o],d=s[o];if(l===d){u[o]=l,(r?c<n:C.call(e,o))&&h++;continue}if(null===l||null===d||"object"!=typeof l||"object"!=typeof d){u[o]=d;continue}let f=t(l,d,i+1);u[o]=f,f===l&&h++}return n===o&&h===n?e:u}(s,t):t);return this.#y({data:r,type:"success",dataUpdatedAt:e?.updatedAt,manual:e?.manual}),r}setState(t){this.#y({type:"setState",state:t})}cancel(t){let e=this.#d?.promise;return this.#d?.cancel(t),e?e.then(f).catch(f):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#u}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>{var e;return!1!==(e=t.options.enabled,"function"==typeof e?e(this):e)})}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===F||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(t=>"static"===p(t.options.staleTime,this))}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):void 0===this.state.data||this.state.isInvalidated}isStaleByTime(t=0){return void 0===this.state.data||"static"!==t&&(!!this.state.isInvalidated||!Math.max(this.state.dataUpdatedAt+(t||0)-Date.now(),0))}onFocus(){let t=this.observers.find(t=>t.shouldFetchOnWindowFocus());t?.refetch({cancelRefetch:!1}),this.#d?.continue()}onOnline(){let t=this.observers.find(t=>t.shouldFetchOnReconnect());t?.refetch({cancelRefetch:!1}),this.#d?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),this.#c.notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(e=>e!==t),this.observers.length||(this.#d&&(this.#p||this.#m()?this.#d.cancel({revert:!0}):this.#d.cancelRetry()),this.scheduleGc()),this.#c.notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}#m(){return"paused"===this.state.fetchStatus&&"pending"===this.state.status}invalidate(){this.state.isInvalidated||this.#y({type:"invalidate"})}async fetch(t,e){var s;let i;if("idle"!==this.state.fetchStatus&&this.#d?.status()!=="rejected"){if(void 0!==this.state.data&&e?.cancelRefetch)this.cancel({silent:!0});else if(this.#d)return this.#d.continueRetry(),this.#d.promise}if(t&&this.setOptions(t),!this.options.queryFn){let t=this.observers.find(t=>t.options.queryFn);t&&this.setOptions(t.options)}let r=new AbortController,n=t=>{Object.defineProperty(t,"signal",{enumerable:!0,get:()=>(this.#p=!0,r.signal)})},a=()=>{let t,s=T(this.options,e),i=(n(t={client:this.#l,queryKey:this.queryKey,meta:this.meta}),t);return(this.#p=!1,this.options.persister)?this.options.persister(s,i,this):s(i)},o=(n(i={fetchOptions:e,options:this.options,queryKey:this.queryKey,client:this.#l,state:this.state,fetchFn:a}),i),u="infinite"===this.#o?(s=this.options.pages,{onFetch:(t,e)=>{let i=t.options,r=t.fetchOptions?.meta?.fetchMore?.direction,n=t.state.data?.pages||[],a=t.state.data?.pageParams||[],o={pages:[],pageParams:[]},u=0,h=async()=>{let e=!1,h=T(t.options,t.fetchOptions),c=async(s,i,r)=>{if(e)return Promise.reject(t.signal.reason);if(null==i&&s.pages.length)return Promise.resolve(s);let n=(()=>{var s,n;let a,o,u={client:t.client,queryKey:t.queryKey,pageParam:i,direction:r?"backward":"forward",meta:t.options.meta};return s=()=>t.signal,n=()=>e=!0,o=!1,Object.defineProperty(u,"signal",{enumerable:!0,get:()=>(a??=s(),o||(o=!0,a.aborted?n():a.addEventListener("abort",n,{once:!0})),a)}),u})(),a=await h(n),{maxPages:o}=t.options,u=r?P:S;return{pages:u(s.pages,a,o),pageParams:u(s.pageParams,i,o)}};if(r&&n.length){let t="backward"===r,e={pages:n,pageParams:a},s=(t?function(t,{pages:e,pageParams:s}){return e.length>0?t.getPreviousPageParam?.(e[0],e,s[0],s):void 0}:U)(i,e);o=await c(e,s,t)}else{let t=s??n.length;do{let t=0===u?a[0]??i.initialPageParam:U(i,o);if(u>0&&null==t)break;o=await c(o,t),u++}while(u<t)}return o};t.options.persister?t.fetchFn=()=>t.options.persister?.(h,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},e):t.fetchFn=h}}):this.options.behavior;u?.onFetch(o,this),this.#h=this.state,("idle"===this.state.fetchStatus||this.state.fetchMeta!==o.fetchOptions?.meta)&&this.#y({type:"fetch",meta:o.fetchOptions?.meta}),this.#d=I({initialPromise:e?.initialPromise,fn:o.fetchFn,onCancel:t=>{t instanceof x&&t.revert&&this.setState({...this.#h,fetchStatus:"idle"}),r.abort()},onFail:(t,e)=>{this.#y({type:"failed",failureCount:t,error:e})},onPause:()=>{this.#y({type:"pause"})},onContinue:()=>{this.#y({type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0});try{let t=await this.#d.start();if(void 0===t)throw Error(`${this.queryHash} data is undefined`);return this.setData(t),this.#c.config.onSuccess?.(t,this),this.#c.config.onSettled?.(t,this.state.error,this),t}catch(t){if(t instanceof x){if(t.silent)return this.#d.promise;else if(t.revert){if(void 0===this.state.data)throw t;return this.state.data}}throw this.#y({type:"error",error:t}),this.#c.config.onError?.(t,this),this.#c.config.onSettled?.(this.state.data,t,this),t}finally{this.scheduleGc()}}#y(t){let e=e=>{switch(t.type){case"failed":return{...e,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...e,fetchStatus:"paused"};case"continue":return{...e,fetchStatus:"fetching"};case"fetch":var s;return{...e,...(s=e.data,{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:R(this.options.networkMode)?"fetching":"paused",...void 0===s&&{error:null,status:"pending"}}),fetchMeta:t.meta??null};case"success":let i={...e,...H(t.data,t.dataUpdatedAt),dataUpdateCount:e.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#h=t.manual?i:void 0,i;case"error":let r=t.error;return{...e,error:r,errorUpdateCount:e.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:e.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...e,isInvalidated:!0};case"setState":return{...e,...t.state}}};this.state=e(this.state),D.batch(()=>{this.observers.forEach(t=>{t.onQueryUpdate()}),this.#c.notify({query:this,type:"updated",action:t})})}};function H(t,e){return{data:t,dataUpdatedAt:e??Date.now(),error:null,isInvalidated:!1,status:"success"}}function L(t){let e="function"==typeof t.initialData?t.initialData():t.initialData,s=void 0!==e,i=s?"function"==typeof t.initialDataUpdatedAt?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 G=class extends A{constructor(t={}){super(),this.config=t,this.#v=new Map}#v;build(t,e,s){let i=e.queryKey,r=e.queryHash??v(i,e),n=this.get(r);return n||(n=new K({client:t,queryKey:i,queryHash:r,options:t.defaultQueryOptions(e),state:s,defaultOptions:t.getQueryDefaults(i)}),this.add(n)),n}add(t){this.#v.has(t.queryHash)||(this.#v.set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){let e=this.#v.get(t.queryHash);e&&(t.destroy(),e===t&&this.#v.delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){D.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return this.#v.get(t)}getAll(){return[...this.#v.values()]}find(t){let e={exact:!0,...t};return this.getAll().find(t=>y(e,t))}findAll(t={}){let e=this.getAll();return Object.keys(t).length>0?e.filter(e=>y(t,e)):e}notify(t){D.batch(()=>{this.listeners.forEach(e=>{e(t)})})}onFocus(){D.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){D.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},_=class extends k{#l;#b;#g;#d;constructor(t){super(),this.#l=t.client,this.mutationId=t.mutationId,this.#g=t.mutationCache,this.#b=[],this.state=t.state||{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0},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.#b.includes(t)||(this.#b.push(t),this.clearGcTimeout(),this.#g.notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){this.#b=this.#b.filter(e=>e!==t),this.scheduleGc(),this.#g.notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){this.#b.length||("pending"===this.state.status?this.scheduleGc():this.#g.remove(this))}continue(){return this.#d?.continue()??this.execute(this.state.variables)}async execute(t){let e=()=>{this.#y({type:"continue"})},s={client:this.#l,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#d=I({fn:()=>this.options.mutationFn?this.options.mutationFn(t,s):Promise.reject(Error("No mutationFn found")),onFail:(t,e)=>{this.#y({type:"failed",failureCount:t,error:e})},onPause:()=>{this.#y({type:"pause"})},onContinue:e,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#g.canRun(this)});let i="pending"===this.state.status,r=!this.#d.canStart();try{if(i)e();else{this.#y({type:"pending",variables:t,isPaused:r}),this.#g.config.onMutate&&await this.#g.config.onMutate(t,this,s);let e=await this.options.onMutate?.(t,s);e!==this.state.context&&this.#y({type:"pending",context:e,variables:t,isPaused:r})}let n=await this.#d.start();return await this.#g.config.onSuccess?.(n,t,this.state.context,this,s),await this.options.onSuccess?.(n,t,this.state.context,s),await this.#g.config.onSettled?.(n,null,this.state.variables,this.state.context,this,s),await this.options.onSettled?.(n,null,t,this.state.context,s),this.#y({type:"success",data:n}),n}catch(e){try{await this.#g.config.onError?.(e,t,this.state.context,this,s)}catch(t){Promise.reject(t)}try{await this.options.onError?.(e,t,this.state.context,s)}catch(t){Promise.reject(t)}try{await this.#g.config.onSettled?.(void 0,e,this.state.variables,this.state.context,this,s)}catch(t){Promise.reject(t)}try{await this.options.onSettled?.(void 0,e,t,this.state.context,s)}catch(t){Promise.reject(t)}throw this.#y({type:"error",error:e}),e}finally{this.#g.runNext(this)}}#y(t){this.state=(e=>{switch(t.type){case"failed":return{...e,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...e,isPaused:!0};case"continue":return{...e,isPaused:!1};case"pending":return{...e,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{...e,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...e,data:void 0,error:t.error,failureCount:e.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}})(this.state),D.batch(()=>{this.#b.forEach(e=>{e.onMutationUpdate(t)}),this.#g.notify({mutation:this,type:"updated",action:t})})}},N=class extends A{constructor(t={}){super(),this.config=t,this.#C=new Set,this.#w=new Map,this.#O=0}#C;#w;#O;build(t,e,s){let i=new _({client:t,mutationCache:this,mutationId:++this.#O,options:t.defaultMutationOptions(e),state:s});return this.add(i),i}add(t){this.#C.add(t);let e=B(t);if("string"==typeof e){let s=this.#w.get(e);s?s.push(t):this.#w.set(e,[t])}this.notify({type:"added",mutation:t})}remove(t){if(this.#C.delete(t)){let e=B(t);if("string"==typeof e){let s=this.#w.get(e);if(s)if(s.length>1){let e=s.indexOf(t);-1!==e&&s.splice(e,1)}else s[0]===t&&this.#w.delete(e)}}this.notify({type:"removed",mutation:t})}canRun(t){let e=B(t);if("string"!=typeof e)return!0;{let s=this.#w.get(e),i=s?.find(t=>"pending"===t.state.status);return!i||i===t}}runNext(t){let e=B(t);if("string"!=typeof e)return Promise.resolve();{let s=this.#w.get(e)?.find(e=>e!==t&&e.state.isPaused);return s?.continue()??Promise.resolve()}}clear(){D.batch(()=>{this.#C.forEach(t=>{this.notify({type:"removed",mutation:t})}),this.#C.clear(),this.#w.clear()})}getAll(){return Array.from(this.#C)}find(t){let e={exact:!0,...t};return this.getAll().find(t=>m(e,t))}findAll(t={}){return this.getAll().filter(e=>m(t,e))}notify(t){D.batch(()=>{this.listeners.forEach(e=>{e(t)})})}resumePausedMutations(){let t=this.getAll().filter(t=>t.state.isPaused);return D.batch(()=>Promise.all(t.map(t=>t.continue().catch(f))))}};function B(t){return t.options.scope?.id}var $=class{#q;#g;#f;#S;#P;#F;#T;#D;constructor(t={}){this.#q=t.queryCache||new G,this.#g=t.mutationCache||new N,this.#f=t.defaultOptions||{},this.#S=new Map,this.#P=new Map,this.#F=0}mount(){this.#F++,1===this.#F&&(this.#T=E.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#q.onFocus())}),this.#D=Q.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#q.onOnline())}))}unmount(){this.#F--,0===this.#F&&(this.#T?.(),this.#T=void 0,this.#D?.(),this.#D=void 0)}isFetching(t){return this.#q.findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return this.#g.findAll({...t,status:"pending"}).length}getQueryData(t){let e=this.defaultQueryOptions({queryKey:t});return this.#q.get(e.queryHash)?.state.data}ensureQueryData(t){let e=this.defaultQueryOptions(t),s=this.#q.build(this,e),i=s.state.data;return void 0===i?this.fetchQuery(t):(t.revalidateIfStale&&s.isStaleByTime(p(e.staleTime,s))&&this.prefetchQuery(e),Promise.resolve(i))}getQueriesData(t){return this.#q.findAll(t).map(({queryKey:t,state:e})=>[t,e.data])}setQueryData(t,e,s){let i=this.defaultQueryOptions({queryKey:t}),r=this.#q.get(i.queryHash),n=r?.state.data,a="function"==typeof e?e(n):e;if(void 0!==a)return this.#q.build(this,i).setData(a,{...s,manual:!0})}setQueriesData(t,e,s){return D.batch(()=>this.#q.findAll(t).map(({queryKey:t})=>[t,this.setQueryData(t,e,s)]))}getQueryState(t){let e=this.defaultQueryOptions({queryKey:t});return this.#q.get(e.queryHash)?.state}removeQueries(t){let e=this.#q;D.batch(()=>{e.findAll(t).forEach(t=>{e.remove(t)})})}resetQueries(t,e){let s=this.#q;return D.batch(()=>(s.findAll(t).forEach(t=>{t.reset()}),this.refetchQueries({type:"active",...t},e)))}cancelQueries(t,e={}){let s={revert:!0,...e};return Promise.all(D.batch(()=>this.#q.findAll(t).map(t=>t.cancel(s)))).then(f).catch(f)}invalidateQueries(t,e={}){return D.batch(()=>(this.#q.findAll(t).forEach(t=>{t.invalidate()}),t?.refetchType==="none")?Promise.resolve():this.refetchQueries({...t,type:t?.refetchType??t?.type??"active"},e))}refetchQueries(t,e={}){let s={...e,cancelRefetch:e.cancelRefetch??!0};return Promise.all(D.batch(()=>this.#q.findAll(t).filter(t=>!t.isDisabled()&&!t.isStatic()).map(t=>{let e=t.fetch(void 0,s);return s.throwOnError||(e=e.catch(f)),"paused"===t.state.fetchStatus?Promise.resolve():e}))).then(f)}fetchQuery(t){let e=this.defaultQueryOptions(t);void 0===e.retry&&(e.retry=!1);let s=this.#q.build(this,e);return s.isStaleByTime(p(e.staleTime,s))?s.fetch(e):Promise.resolve(s.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(f).catch(f)}fetchInfiniteQuery(t){return t._type="infinite",this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(f).catch(f)}ensureInfiniteQueryData(t){return t._type="infinite",this.ensureQueryData(t)}resumePausedMutations(){return Q.isOnline()?this.#g.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#q}getMutationCache(){return this.#g}getDefaultOptions(){return this.#f}setDefaultOptions(t){this.#f=t}setQueryDefaults(t,e){this.#S.set(b(t),{queryKey:t,defaultOptions:e})}getQueryDefaults(t){let e=[...this.#S.values()],s={};return e.forEach(e=>{g(t,e.queryKey)&&Object.assign(s,e.defaultOptions)}),s}setMutationDefaults(t,e){this.#P.set(b(t),{mutationKey:t,defaultOptions:e})}getMutationDefaults(t){let e=[...this.#P.values()],s={};return e.forEach(e=>{g(t,e.mutationKey)&&Object.assign(s,e.defaultOptions)}),s}defaultQueryOptions(t){if(t._defaulted)return t;let e={...this.#f.queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return e.queryHash||(e.queryHash=v(e.queryKey,e)),void 0===e.refetchOnReconnect&&(e.refetchOnReconnect="always"!==e.networkMode),void 0===e.throwOnError&&(e.throwOnError=!!e.suspense),!e.networkMode&&e.persister&&(e.networkMode="offlineFirst"),e.queryFn===F&&(e.enabled=!1),e}defaultMutationOptions(t){return t?._defaulted?t:{...this.#f.mutations,...t?.mutationKey&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){this.#q.clear(),this.#g.clear()}}}}]);