{"version":3,"file":"@tanstack-C8x0rzUY.js","sources":["../../node_modules/@tanstack/query-core/build/modern/subscribable.js","../../node_modules/@tanstack/query-core/build/modern/utils.js","../../node_modules/@tanstack/query-core/build/modern/focusManager.js","../../node_modules/@tanstack/query-core/build/modern/onlineManager.js","../../node_modules/@tanstack/query-core/build/modern/retryer.js","../../node_modules/@tanstack/query-core/build/modern/notifyManager.js","../../node_modules/@tanstack/query-core/build/modern/removable.js","../../node_modules/@tanstack/query-core/build/modern/query.js","../../node_modules/@tanstack/query-core/build/modern/queryCache.js","../../node_modules/@tanstack/query-core/build/modern/mutation.js","../../node_modules/@tanstack/query-core/build/modern/mutationCache.js","../../node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","../../node_modules/@tanstack/query-core/build/modern/queryClient.js","../../node_modules/@tanstack/query-core/build/modern/queryObserver.js","../../node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../../node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js","../../node_modules/@tanstack/react-query/build/modern/isRestoring.js","../../node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js","../../node_modules/@tanstack/react-query/build/modern/utils.js","../../node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js","../../node_modules/@tanstack/react-query/build/modern/suspense.js","../../node_modules/@tanstack/react-query/build/modern/useBaseQuery.js","../../node_modules/@tanstack/react-query/build/modern/useQuery.js","../../node_modules/@tanstack/react-query/build/modern/useMutation.js","../../node_modules/@tanstack/react-query-devtools/build/modern/index.js"],"sourcesContent":["// src/subscribable.ts\nvar Subscribable = class {\n constructor() {\n this.listeners = /* @__PURE__ */ new Set();\n this.subscribe = this.subscribe.bind(this);\n }\n subscribe(listener) {\n this.listeners.add(listener);\n this.onSubscribe();\n return () => {\n this.listeners.delete(listener);\n this.onUnsubscribe();\n };\n }\n hasListeners() {\n return this.listeners.size > 0;\n }\n onSubscribe() {\n }\n onUnsubscribe() {\n }\n};\nexport {\n Subscribable\n};\n//# sourceMappingURL=subscribable.js.map","// src/utils.ts\nvar isServer = typeof window === \"undefined\" || \"Deno\" in window;\nfunction noop() {\n return void 0;\n}\nfunction functionalUpdate(updater, input) {\n return typeof updater === \"function\" ? updater(input) : updater;\n}\nfunction isValidTimeout(value) {\n return typeof value === \"number\" && value >= 0 && value !== Infinity;\n}\nfunction timeUntilStale(updatedAt, staleTime) {\n return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);\n}\nfunction matchQuery(filters, query) {\n const {\n type = \"all\",\n exact,\n fetchStatus,\n predicate,\n queryKey,\n stale\n } = filters;\n if (queryKey) {\n if (exact) {\n if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {\n return false;\n }\n } else if (!partialMatchKey(query.queryKey, queryKey)) {\n return false;\n }\n }\n if (type !== \"all\") {\n const isActive = query.isActive();\n if (type === \"active\" && !isActive) {\n return false;\n }\n if (type === \"inactive\" && isActive) {\n return false;\n }\n }\n if (typeof stale === \"boolean\" && query.isStale() !== stale) {\n return false;\n }\n if (typeof fetchStatus !== \"undefined\" && fetchStatus !== query.state.fetchStatus) {\n return false;\n }\n if (predicate && !predicate(query)) {\n return false;\n }\n return true;\n}\nfunction matchMutation(filters, mutation) {\n const { exact, status, predicate, mutationKey } = filters;\n if (mutationKey) {\n if (!mutation.options.mutationKey) {\n return false;\n }\n if (exact) {\n if (hashKey(mutation.options.mutationKey) !== hashKey(mutationKey)) {\n return false;\n }\n } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {\n return false;\n }\n }\n if (status && mutation.state.status !== status) {\n return false;\n }\n if (predicate && !predicate(mutation)) {\n return false;\n }\n return true;\n}\nfunction hashQueryKeyByOptions(queryKey, options) {\n const hashFn = options?.queryKeyHashFn || hashKey;\n return hashFn(queryKey);\n}\nfunction hashKey(queryKey) {\n return JSON.stringify(\n queryKey,\n (_, val) => isPlainObject(val) ? Object.keys(val).sort().reduce((result, key) => {\n result[key] = val[key];\n return result;\n }, {}) : val\n );\n}\nfunction partialMatchKey(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (a && b && typeof a === \"object\" && typeof b === \"object\") {\n return !Object.keys(b).some((key) => !partialMatchKey(a[key], b[key]));\n }\n return false;\n}\nfunction replaceEqualDeep(a, b) {\n if (a === b) {\n return a;\n }\n const array = isPlainArray(a) && isPlainArray(b);\n if (array || isPlainObject(a) && isPlainObject(b)) {\n const aSize = array ? a.length : Object.keys(a).length;\n const bItems = array ? b : Object.keys(b);\n const bSize = bItems.length;\n const copy = array ? [] : {};\n let equalItems = 0;\n for (let i = 0; i < bSize; i++) {\n const key = array ? i : bItems[i];\n copy[key] = replaceEqualDeep(a[key], b[key]);\n if (copy[key] === a[key]) {\n equalItems++;\n }\n }\n return aSize === bSize && equalItems === aSize ? a : copy;\n }\n return b;\n}\nfunction shallowEqualObjects(a, b) {\n if (a && !b || b && !a) {\n return false;\n }\n for (const key in a) {\n if (a[key] !== b[key]) {\n return false;\n }\n }\n return true;\n}\nfunction isPlainArray(value) {\n return Array.isArray(value) && value.length === Object.keys(value).length;\n}\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n const ctor = o.constructor;\n if (typeof ctor === \"undefined\") {\n return true;\n }\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n if (!prot.hasOwnProperty(\"isPrototypeOf\")) {\n return false;\n }\n return true;\n}\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === \"[object Object]\";\n}\nfunction sleep(timeout) {\n return new Promise((resolve) => {\n setTimeout(resolve, timeout);\n });\n}\nfunction scheduleMicrotask(callback) {\n sleep(0).then(callback);\n}\nfunction replaceData(prevData, data, options) {\n if (typeof options.structuralSharing === \"function\") {\n return options.structuralSharing(prevData, data);\n } else if (options.structuralSharing !== false) {\n return replaceEqualDeep(prevData, data);\n }\n return data;\n}\nfunction keepPreviousData(previousData) {\n return previousData;\n}\nfunction addToEnd(items, item, max = 0) {\n const newItems = [...items, item];\n return max && newItems.length > max ? newItems.slice(1) : newItems;\n}\nfunction addToStart(items, item, max = 0) {\n const newItems = [item, ...items];\n return max && newItems.length > max ? newItems.slice(0, -1) : newItems;\n}\nexport {\n addToEnd,\n addToStart,\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n isPlainArray,\n isPlainObject,\n isServer,\n isValidTimeout,\n keepPreviousData,\n matchMutation,\n matchQuery,\n noop,\n partialMatchKey,\n replaceData,\n replaceEqualDeep,\n scheduleMicrotask,\n shallowEqualObjects,\n sleep,\n timeUntilStale\n};\n//# sourceMappingURL=utils.js.map","// src/focusManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar FocusManager = class extends Subscribable {\n #focused;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onFocus) => {\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus();\n window.addEventListener(\"visibilitychange\", listener, false);\n return () => {\n window.removeEventListener(\"visibilitychange\", listener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup((focused) => {\n if (typeof focused === \"boolean\") {\n this.setFocused(focused);\n } else {\n this.onFocus();\n }\n });\n }\n setFocused(focused) {\n const changed = this.#focused !== focused;\n if (changed) {\n this.#focused = focused;\n this.onFocus();\n }\n }\n onFocus() {\n this.listeners.forEach((listener) => {\n listener();\n });\n }\n isFocused() {\n if (typeof this.#focused === \"boolean\") {\n return this.#focused;\n }\n return globalThis.document?.visibilityState !== \"hidden\";\n }\n};\nvar focusManager = new FocusManager();\nexport {\n FocusManager,\n focusManager\n};\n//# sourceMappingURL=focusManager.js.map","// src/onlineManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar OnlineManager = class extends Subscribable {\n #online = true;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onOnline) => {\n if (!isServer && window.addEventListener) {\n const onlineListener = () => onOnline(true);\n const offlineListener = () => onOnline(false);\n window.addEventListener(\"online\", onlineListener, false);\n window.addEventListener(\"offline\", offlineListener, false);\n return () => {\n window.removeEventListener(\"online\", onlineListener);\n window.removeEventListener(\"offline\", offlineListener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup(this.setOnline.bind(this));\n }\n setOnline(online) {\n const changed = this.#online !== online;\n if (changed) {\n this.#online = online;\n this.listeners.forEach((listener) => {\n listener(online);\n });\n }\n }\n isOnline() {\n return this.#online;\n }\n};\nvar onlineManager = new OnlineManager();\nexport {\n OnlineManager,\n onlineManager\n};\n//# sourceMappingURL=onlineManager.js.map","// src/retryer.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { isServer, sleep } from \"./utils.js\";\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1e3 * 2 ** failureCount, 3e4);\n}\nfunction canFetch(networkMode) {\n return (networkMode ?? \"online\") === \"online\" ? onlineManager.isOnline() : true;\n}\nvar CancelledError = class {\n constructor(options) {\n this.revert = options?.revert;\n this.silent = options?.silent;\n }\n};\nfunction isCancelledError(value) {\n return value instanceof CancelledError;\n}\nfunction createRetryer(config) {\n let isRetryCancelled = false;\n let failureCount = 0;\n let isResolved = false;\n let continueFn;\n let promiseResolve;\n let promiseReject;\n const promise = new Promise((outerResolve, outerReject) => {\n promiseResolve = outerResolve;\n promiseReject = outerReject;\n });\n const cancel = (cancelOptions) => {\n if (!isResolved) {\n reject(new CancelledError(cancelOptions));\n config.abort?.();\n }\n };\n const cancelRetry = () => {\n isRetryCancelled = true;\n };\n const continueRetry = () => {\n isRetryCancelled = false;\n };\n const shouldPause = () => !focusManager.isFocused() || config.networkMode !== \"always\" && !onlineManager.isOnline();\n const resolve = (value) => {\n if (!isResolved) {\n isResolved = true;\n config.onSuccess?.(value);\n continueFn?.();\n promiseResolve(value);\n }\n };\n const reject = (value) => {\n if (!isResolved) {\n isResolved = true;\n config.onError?.(value);\n continueFn?.();\n promiseReject(value);\n }\n };\n const pause = () => {\n return new Promise((continueResolve) => {\n continueFn = (value) => {\n const canContinue = isResolved || !shouldPause();\n if (canContinue) {\n continueResolve(value);\n }\n return canContinue;\n };\n config.onPause?.();\n }).then(() => {\n continueFn = void 0;\n if (!isResolved) {\n config.onContinue?.();\n }\n });\n };\n const run = () => {\n if (isResolved) {\n return;\n }\n let promiseOrValue;\n try {\n promiseOrValue = config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n }\n Promise.resolve(promiseOrValue).then(resolve).catch((error) => {\n if (isResolved) {\n return;\n }\n const retry = config.retry ?? (isServer ? 0 : 3);\n const retryDelay = config.retryDelay ?? defaultRetryDelay;\n const delay = typeof retryDelay === \"function\" ? retryDelay(failureCount, error) : retryDelay;\n const shouldRetry = retry === true || typeof retry === \"number\" && failureCount < retry || typeof retry === \"function\" && retry(failureCount, error);\n if (isRetryCancelled || !shouldRetry) {\n reject(error);\n return;\n }\n failureCount++;\n config.onFail?.(failureCount, error);\n sleep(delay).then(() => {\n if (shouldPause()) {\n return pause();\n }\n return;\n }).then(() => {\n if (isRetryCancelled) {\n reject(error);\n } else {\n run();\n }\n });\n });\n };\n if (canFetch(config.networkMode)) {\n run();\n } else {\n pause().then(run);\n }\n return {\n promise,\n cancel,\n continue: () => {\n const didContinue = continueFn?.();\n return didContinue ? promise : Promise.resolve();\n },\n cancelRetry,\n continueRetry\n };\n}\nexport {\n CancelledError,\n canFetch,\n createRetryer,\n isCancelledError\n};\n//# sourceMappingURL=retryer.js.map","// src/notifyManager.ts\nimport { scheduleMicrotask } from \"./utils.js\";\nfunction createNotifyManager() {\n let queue = [];\n let transactions = 0;\n let notifyFn = (callback) => {\n callback();\n };\n let batchNotifyFn = (callback) => {\n callback();\n };\n const batch = (callback) => {\n let result;\n transactions++;\n try {\n result = callback();\n } finally {\n transactions--;\n if (!transactions) {\n flush();\n }\n }\n return result;\n };\n const schedule = (callback) => {\n if (transactions) {\n queue.push(callback);\n } else {\n scheduleMicrotask(() => {\n notifyFn(callback);\n });\n }\n };\n const batchCalls = (callback) => {\n return (...args) => {\n schedule(() => {\n callback(...args);\n });\n };\n };\n const flush = () => {\n const originalQueue = queue;\n queue = [];\n if (originalQueue.length) {\n scheduleMicrotask(() => {\n batchNotifyFn(() => {\n originalQueue.forEach((callback) => {\n notifyFn(callback);\n });\n });\n });\n }\n };\n const setNotifyFunction = (fn) => {\n notifyFn = fn;\n };\n const setBatchNotifyFunction = (fn) => {\n batchNotifyFn = fn;\n };\n return {\n batch,\n batchCalls,\n schedule,\n setNotifyFunction,\n setBatchNotifyFunction\n };\n}\nvar notifyManager = createNotifyManager();\nexport {\n createNotifyManager,\n notifyManager\n};\n//# sourceMappingURL=notifyManager.js.map","// src/removable.ts\nimport { isServer, isValidTimeout } from \"./utils.js\";\nvar Removable = class {\n #gcTimeout;\n destroy() {\n this.clearGcTimeout();\n }\n scheduleGc() {\n this.clearGcTimeout();\n if (isValidTimeout(this.gcTime)) {\n this.#gcTimeout = setTimeout(() => {\n this.optionalRemove();\n }, this.gcTime);\n }\n }\n updateGcTime(newGcTime) {\n this.gcTime = Math.max(\n this.gcTime || 0,\n newGcTime ?? (isServer ? Infinity : 5 * 60 * 1e3)\n );\n }\n clearGcTimeout() {\n if (this.#gcTimeout) {\n clearTimeout(this.#gcTimeout);\n this.#gcTimeout = void 0;\n }\n }\n};\nexport {\n Removable\n};\n//# sourceMappingURL=removable.js.map","// src/query.ts\nimport { noop, replaceData, timeUntilStale } from \"./utils.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { canFetch, createRetryer, isCancelledError } from \"./retryer.js\";\nimport { Removable } from \"./removable.js\";\nvar Query = class extends Removable {\n constructor(config) {\n super();\n this.#abortSignalConsumed = false;\n this.#defaultOptions = config.defaultOptions;\n this.#setOptions(config.options);\n this.#observers = [];\n this.#cache = config.cache;\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.#initialState = config.state || getDefaultState(this.options);\n this.state = this.#initialState;\n this.scheduleGc();\n }\n #initialState;\n #revertState;\n #cache;\n #promise;\n #retryer;\n #observers;\n #defaultOptions;\n #abortSignalConsumed;\n get meta() {\n return this.options.meta;\n }\n #setOptions(options) {\n this.options = { ...this.#defaultOptions, ...options };\n this.updateGcTime(this.options.gcTime);\n }\n optionalRemove() {\n if (!this.#observers.length && this.state.fetchStatus === \"idle\") {\n this.#cache.remove(this);\n }\n }\n setData(newData, options) {\n const data = replaceData(this.state.data, newData, this.options);\n this.#dispatch({\n data,\n type: \"success\",\n dataUpdatedAt: options?.updatedAt,\n manual: options?.manual\n });\n return data;\n }\n setState(state, setStateOptions) {\n this.#dispatch({ type: \"setState\", state, setStateOptions });\n }\n cancel(options) {\n const promise = this.#promise;\n this.#retryer?.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n }\n destroy() {\n super.destroy();\n this.cancel({ silent: true });\n }\n reset() {\n this.destroy();\n this.setState(this.#initialState);\n }\n isActive() {\n return this.#observers.some(\n (observer) => observer.options.enabled !== false\n );\n }\n isDisabled() {\n return this.getObserversCount() > 0 && !this.isActive();\n }\n isStale() {\n return this.state.isInvalidated || !this.state.dataUpdatedAt || this.#observers.some((observer) => observer.getCurrentResult().isStale);\n }\n isStaleByTime(staleTime = 0) {\n return this.state.isInvalidated || !this.state.dataUpdatedAt || !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n }\n onFocus() {\n const observer = this.#observers.find((x) => x.shouldFetchOnWindowFocus());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n onOnline() {\n const observer = this.#observers.find((x) => x.shouldFetchOnReconnect());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#cache.notify({ type: \"observerAdded\", query: this, observer });\n }\n }\n removeObserver(observer) {\n if (this.#observers.includes(observer)) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n if (!this.#observers.length) {\n if (this.#retryer) {\n if (this.#abortSignalConsumed) {\n this.#retryer.cancel({ revert: true });\n } else {\n this.#retryer.cancelRetry();\n }\n }\n this.scheduleGc();\n }\n this.#cache.notify({ type: \"observerRemoved\", query: this, observer });\n }\n }\n getObserversCount() {\n return this.#observers.length;\n }\n invalidate() {\n if (!this.state.isInvalidated) {\n this.#dispatch({ type: \"invalidate\" });\n }\n }\n fetch(options, fetchOptions) {\n if (this.state.fetchStatus !== \"idle\") {\n if (this.state.dataUpdatedAt && fetchOptions?.cancelRefetch) {\n this.cancel({ silent: true });\n } else if (this.#promise) {\n this.#retryer?.continueRetry();\n return this.#promise;\n }\n }\n if (options) {\n this.#setOptions(options);\n }\n if (!this.options.queryFn) {\n const observer = this.#observers.find((x) => x.options.queryFn);\n if (observer) {\n this.#setOptions(observer.options);\n }\n }\n if (process.env.NODE_ENV !== \"production\") {\n if (!Array.isArray(this.options.queryKey)) {\n console.error(\n `As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']`\n );\n }\n }\n const abortController = new AbortController();\n const queryFnContext = {\n queryKey: this.queryKey,\n meta: this.meta\n };\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n this.#abortSignalConsumed = true;\n return abortController.signal;\n }\n });\n };\n addSignalProperty(queryFnContext);\n const fetchFn = () => {\n if (!this.options.queryFn) {\n return Promise.reject(\n new Error(`Missing queryFn: '${this.options.queryHash}'`)\n );\n }\n this.#abortSignalConsumed = false;\n if (this.options.persister) {\n return this.options.persister(\n this.options.queryFn,\n queryFnContext,\n this\n );\n }\n return this.options.queryFn(\n queryFnContext\n );\n };\n const context = {\n fetchOptions,\n options: this.options,\n queryKey: this.queryKey,\n state: this.state,\n fetchFn\n };\n addSignalProperty(context);\n this.options.behavior?.onFetch(\n context,\n this\n );\n this.#revertState = this.state;\n if (this.state.fetchStatus === \"idle\" || this.state.fetchMeta !== context.fetchOptions?.meta) {\n this.#dispatch({ type: \"fetch\", meta: context.fetchOptions?.meta });\n }\n const onError = (error) => {\n if (!(isCancelledError(error) && error.silent)) {\n this.#dispatch({\n type: \"error\",\n error\n });\n }\n if (!isCancelledError(error)) {\n this.#cache.config.onError?.(\n error,\n this\n );\n this.#cache.config.onSettled?.(\n this.state.data,\n error,\n this\n );\n }\n if (!this.isFetchingOptimistic) {\n this.scheduleGc();\n }\n this.isFetchingOptimistic = false;\n };\n this.#retryer = createRetryer({\n fn: context.fetchFn,\n abort: abortController.abort.bind(abortController),\n onSuccess: (data) => {\n if (typeof data === \"undefined\") {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(\n `Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`\n );\n }\n onError(new Error(`${this.queryHash} data is undefined`));\n return;\n }\n this.setData(data);\n this.#cache.config.onSuccess?.(data, this);\n this.#cache.config.onSettled?.(\n data,\n this.state.error,\n this\n );\n if (!this.isFetchingOptimistic) {\n this.scheduleGc();\n }\n this.isFetchingOptimistic = false;\n },\n onError,\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue: () => {\n this.#dispatch({ type: \"continue\" });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay,\n networkMode: context.options.networkMode\n });\n this.#promise = this.#retryer.promise;\n return this.#promise;\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n fetchFailureCount: action.failureCount,\n fetchFailureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n fetchStatus: \"paused\"\n };\n case \"continue\":\n return {\n ...state,\n fetchStatus: \"fetching\"\n };\n case \"fetch\":\n return {\n ...state,\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchMeta: action.meta ?? null,\n fetchStatus: canFetch(this.options.networkMode) ? \"fetching\" : \"paused\",\n ...!state.dataUpdatedAt && {\n error: null,\n status: \"pending\"\n }\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n dataUpdateCount: state.dataUpdateCount + 1,\n dataUpdatedAt: action.dataUpdatedAt ?? Date.now(),\n error: null,\n isInvalidated: false,\n status: \"success\",\n ...!action.manual && {\n fetchStatus: \"idle\",\n fetchFailureCount: 0,\n fetchFailureReason: null\n }\n };\n case \"error\":\n const error = action.error;\n if (isCancelledError(error) && error.revert && this.#revertState) {\n return { ...this.#revertState, fetchStatus: \"idle\" };\n }\n return {\n ...state,\n error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n fetchFailureReason: error,\n fetchStatus: \"idle\",\n status: \"error\"\n };\n case \"invalidate\":\n return {\n ...state,\n isInvalidated: true\n };\n case \"setState\":\n return {\n ...state,\n ...action.state\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onQueryUpdate();\n });\n this.#cache.notify({ query: this, type: \"updated\", action });\n });\n }\n};\nfunction getDefaultState(options) {\n const data = typeof options.initialData === \"function\" ? options.initialData() : options.initialData;\n const hasData = typeof data !== \"undefined\";\n const initialDataUpdatedAt = hasData ? typeof options.initialDataUpdatedAt === \"function\" ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n return {\n data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt ?? Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchMeta: null,\n isInvalidated: false,\n status: hasData ? \"success\" : \"pending\",\n fetchStatus: \"idle\"\n };\n}\nexport {\n Query\n};\n//# sourceMappingURL=query.js.map","// src/queryCache.ts\nimport { hashQueryKeyByOptions, matchQuery } from \"./utils.js\";\nimport { Query } from \"./query.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar QueryCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = /* @__PURE__ */ new Map();\n }\n #queries;\n build(client, options, state) {\n const queryKey = options.queryKey;\n const queryHash = options.queryHash ?? hashQueryKeyByOptions(queryKey, options);\n let query = this.get(queryHash);\n if (!query) {\n query = new Query({\n cache: this,\n queryKey,\n queryHash,\n options: client.defaultQueryOptions(options),\n state,\n defaultOptions: client.getQueryDefaults(queryKey)\n });\n this.add(query);\n }\n return query;\n }\n add(query) {\n if (!this.#queries.has(query.queryHash)) {\n this.#queries.set(query.queryHash, query);\n this.notify({\n type: \"added\",\n query\n });\n }\n }\n remove(query) {\n const queryInMap = this.#queries.get(query.queryHash);\n if (queryInMap) {\n query.destroy();\n if (queryInMap === query) {\n this.#queries.delete(query.queryHash);\n }\n this.notify({ type: \"removed\", query });\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n this.remove(query);\n });\n });\n }\n get(queryHash) {\n return this.#queries.get(queryHash);\n }\n getAll() {\n return [...this.#queries.values()];\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (query) => matchQuery(defaultedFilters, query)\n );\n }\n findAll(filters = {}) {\n const queries = this.getAll();\n return Object.keys(filters).length > 0 ? queries.filter((query) => matchQuery(filters, query)) : queries;\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n onFocus() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onFocus();\n });\n });\n }\n onOnline() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onOnline();\n });\n });\n }\n};\nexport {\n QueryCache\n};\n//# sourceMappingURL=queryCache.js.map","// src/mutation.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Removable } from \"./removable.js\";\nimport { canFetch, createRetryer } from \"./retryer.js\";\nvar Mutation = class extends Removable {\n constructor(config) {\n super();\n this.mutationId = config.mutationId;\n this.#defaultOptions = config.defaultOptions;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.setOptions(config.options);\n this.scheduleGc();\n }\n #observers;\n #defaultOptions;\n #mutationCache;\n #retryer;\n setOptions(options) {\n this.options = { ...this.#defaultOptions, ...options };\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#mutationCache.notify({\n type: \"observerAdded\",\n mutation: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n this.scheduleGc();\n this.#mutationCache.notify({\n type: \"observerRemoved\",\n mutation: this,\n observer\n });\n }\n optionalRemove() {\n if (!this.#observers.length) {\n if (this.state.status === \"pending\") {\n this.scheduleGc();\n } else {\n this.#mutationCache.remove(this);\n }\n }\n }\n continue() {\n return this.#retryer?.continue() ?? // continuing a mutation assumes that variables are set, mutation must have been dehydrated before\n this.execute(this.state.variables);\n }\n async execute(variables) {\n const executeMutation = () => {\n this.#retryer = createRetryer({\n fn: () => {\n if (!this.options.mutationFn) {\n return Promise.reject(new Error(\"No mutationFn found\"));\n }\n return this.options.mutationFn(variables);\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue: () => {\n this.#dispatch({ type: \"continue\" });\n },\n retry: this.options.retry ?? 0,\n retryDelay: this.options.retryDelay,\n networkMode: this.options.networkMode\n });\n return this.#retryer.promise;\n };\n const restored = this.state.status === \"pending\";\n try {\n if (!restored) {\n this.#dispatch({ type: \"pending\", variables });\n await this.#mutationCache.config.onMutate?.(\n variables,\n this\n );\n const context = await this.options.onMutate?.(variables);\n if (context !== this.state.context) {\n this.#dispatch({\n type: \"pending\",\n context,\n variables\n });\n }\n }\n const data = await executeMutation();\n await this.#mutationCache.config.onSuccess?.(\n data,\n variables,\n this.state.context,\n this\n );\n await this.options.onSuccess?.(data, variables, this.state.context);\n await this.#mutationCache.config.onSettled?.(\n data,\n null,\n this.state.variables,\n this.state.context,\n this\n );\n await this.options.onSettled?.(data, null, variables, this.state.context);\n this.#dispatch({ type: \"success\", data });\n return data;\n } catch (error) {\n try {\n await this.#mutationCache.config.onError?.(\n error,\n variables,\n this.state.context,\n this\n );\n await this.options.onError?.(\n error,\n variables,\n this.state.context\n );\n await this.#mutationCache.config.onSettled?.(\n void 0,\n error,\n this.state.variables,\n this.state.context,\n this\n );\n await this.options.onSettled?.(\n void 0,\n error,\n variables,\n this.state.context\n );\n throw error;\n } finally {\n this.#dispatch({ type: \"error\", error });\n }\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n failureCount: action.failureCount,\n failureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n isPaused: true\n };\n case \"continue\":\n return {\n ...state,\n isPaused: false\n };\n case \"pending\":\n return {\n ...state,\n context: action.context,\n data: void 0,\n failureCount: 0,\n failureReason: null,\n error: null,\n isPaused: !canFetch(this.options.networkMode),\n status: \"pending\",\n variables: action.variables,\n submittedAt: Date.now()\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n failureCount: 0,\n failureReason: null,\n error: null,\n status: \"success\",\n isPaused: false\n };\n case \"error\":\n return {\n ...state,\n data: void 0,\n error: action.error,\n failureCount: state.failureCount + 1,\n failureReason: action.error,\n isPaused: false,\n status: \"error\"\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onMutationUpdate(action);\n });\n this.#mutationCache.notify({\n mutation: this,\n type: \"updated\",\n action\n });\n });\n }\n};\nfunction getDefaultState() {\n return {\n context: void 0,\n data: void 0,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: \"idle\",\n variables: void 0,\n submittedAt: 0\n };\n}\nexport {\n Mutation,\n getDefaultState\n};\n//# sourceMappingURL=mutation.js.map","// src/mutationCache.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Mutation } from \"./mutation.js\";\nimport { matchMutation, noop } from \"./utils.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar MutationCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = [];\n this.#mutationId = 0;\n }\n #mutations;\n #mutationId;\n #resuming;\n build(client, options, state) {\n const mutation = new Mutation({\n mutationCache: this,\n mutationId: ++this.#mutationId,\n options: client.defaultMutationOptions(options),\n state\n });\n this.add(mutation);\n return mutation;\n }\n add(mutation) {\n this.#mutations.push(mutation);\n this.notify({ type: \"added\", mutation });\n }\n remove(mutation) {\n this.#mutations = this.#mutations.filter((x) => x !== mutation);\n this.notify({ type: \"removed\", mutation });\n }\n clear() {\n notifyManager.batch(() => {\n this.#mutations.forEach((mutation) => {\n this.remove(mutation);\n });\n });\n }\n getAll() {\n return this.#mutations;\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.#mutations.find(\n (mutation) => matchMutation(defaultedFilters, mutation)\n );\n }\n findAll(filters = {}) {\n return this.#mutations.filter(\n (mutation) => matchMutation(filters, mutation)\n );\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n resumePausedMutations() {\n this.#resuming = (this.#resuming ?? Promise.resolve()).then(() => {\n const pausedMutations = this.#mutations.filter((x) => x.state.isPaused);\n return notifyManager.batch(\n () => pausedMutations.reduce(\n (promise, mutation) => promise.then(() => mutation.continue().catch(noop)),\n Promise.resolve()\n )\n );\n }).then(() => {\n this.#resuming = void 0;\n });\n return this.#resuming;\n }\n};\nexport {\n MutationCache\n};\n//# sourceMappingURL=mutationCache.js.map","// src/infiniteQueryBehavior.ts\nimport { addToEnd, addToStart } from \"./utils.js\";\nfunction infiniteQueryBehavior(pages) {\n return {\n onFetch: (context, query) => {\n const fetchFn = async () => {\n const options = context.options;\n const direction = context.fetchOptions?.meta?.fetchMore?.direction;\n const oldPages = context.state.data?.pages || [];\n const oldPageParams = context.state.data?.pageParams || [];\n const empty = { pages: [], pageParams: [] };\n let cancelled = false;\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n if (context.signal.aborted) {\n cancelled = true;\n } else {\n context.signal.addEventListener(\"abort\", () => {\n cancelled = true;\n });\n }\n return context.signal;\n }\n });\n };\n const queryFn = context.options.queryFn || (() => Promise.reject(\n new Error(`Missing queryFn: '${context.options.queryHash}'`)\n ));\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (param == null && data.pages.length) {\n return Promise.resolve(data);\n }\n const queryFnContext = {\n queryKey: context.queryKey,\n pageParam: param,\n direction: previous ? \"backward\" : \"forward\",\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext);\n const page = await queryFn(\n queryFnContext\n );\n const { maxPages } = context.options;\n const addTo = previous ? addToStart : addToEnd;\n return {\n pages: addTo(data.pages, page, maxPages),\n pageParams: addTo(data.pageParams, param, maxPages)\n };\n };\n let result;\n if (direction && oldPages.length) {\n const previous = direction === \"backward\";\n const pageParamFn = previous ? getPreviousPageParam : getNextPageParam;\n const oldData = {\n pages: oldPages,\n pageParams: oldPageParams\n };\n const param = pageParamFn(options, oldData);\n result = await fetchPage(oldData, param, previous);\n } else {\n result = await fetchPage(\n empty,\n oldPageParams[0] ?? options.initialPageParam\n );\n const remainingPages = pages ?? oldPages.length;\n for (let i = 1; i < remainingPages; i++) {\n const param = getNextPageParam(options, result);\n result = await fetchPage(result, param);\n }\n }\n return result;\n };\n if (context.options.persister) {\n context.fetchFn = () => {\n return context.options.persister?.(\n fetchFn,\n {\n queryKey: context.queryKey,\n meta: context.options.meta,\n signal: context.signal\n },\n query\n );\n };\n } else {\n context.fetchFn = fetchFn;\n }\n }\n };\n}\nfunction getNextPageParam(options, { pages, pageParams }) {\n const lastIndex = pages.length - 1;\n return options.getNextPageParam(\n pages[lastIndex],\n pages,\n pageParams[lastIndex],\n pageParams\n );\n}\nfunction getPreviousPageParam(options, { pages, pageParams }) {\n return options.getPreviousPageParam?.(\n pages[0],\n pages,\n pageParams[0],\n pageParams\n );\n}\nfunction hasNextPage(options, data) {\n if (!data)\n return false;\n return getNextPageParam(options, data) != null;\n}\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam)\n return false;\n return getPreviousPageParam(options, data) != null;\n}\nexport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n};\n//# sourceMappingURL=infiniteQueryBehavior.js.map","// src/queryClient.ts\nimport {\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n noop,\n partialMatchKey\n} from \"./utils.js\";\nimport { QueryCache } from \"./queryCache.js\";\nimport { MutationCache } from \"./mutationCache.js\";\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { infiniteQueryBehavior } from \"./infiniteQueryBehavior.js\";\nvar QueryClient = class {\n #queryCache;\n #mutationCache;\n #defaultOptions;\n #queryDefaults;\n #mutationDefaults;\n #mountCount;\n #unsubscribeFocus;\n #unsubscribeOnline;\n constructor(config = {}) {\n this.#queryCache = config.queryCache || new QueryCache();\n this.#mutationCache = config.mutationCache || new MutationCache();\n this.#defaultOptions = config.defaultOptions || {};\n this.#queryDefaults = /* @__PURE__ */ new Map();\n this.#mutationDefaults = /* @__PURE__ */ new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1)\n return;\n this.#unsubscribeFocus = focusManager.subscribe(() => {\n if (focusManager.isFocused()) {\n this.resumePausedMutations();\n this.#queryCache.onFocus();\n }\n });\n this.#unsubscribeOnline = onlineManager.subscribe(() => {\n if (onlineManager.isOnline()) {\n this.resumePausedMutations();\n this.#queryCache.onOnline();\n }\n });\n }\n unmount() {\n this.#mountCount--;\n if (this.#mountCount !== 0)\n return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = void 0;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = void 0;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({ ...filters, fetchStatus: \"fetching\" }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({ ...filters, status: \"pending\" }).length;\n }\n getQueryData(queryKey) {\n return this.#queryCache.find({ queryKey })?.state.data;\n }\n ensureQueryData(options) {\n const cachedData = this.getQueryData(options.queryKey);\n return cachedData ? Promise.resolve(cachedData) : this.fetchQuery(options);\n }\n getQueriesData(filters) {\n return this.getQueryCache().findAll(filters).map(({ queryKey, state }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const query = this.#queryCache.find({ queryKey });\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (typeof data === \"undefined\") {\n return void 0;\n }\n const defaultedOptions = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.build(this, defaultedOptions).setData(data, { ...options, manual: true });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(\n () => this.getQueryCache().findAll(filters).map(({ queryKey }) => [\n queryKey,\n this.setQueryData(queryKey, updater, options)\n ])\n );\n }\n getQueryState(queryKey) {\n return this.#queryCache.find({ queryKey })?.state;\n }\n removeQueries(filters) {\n const queryCache = this.#queryCache;\n notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n queryCache.remove(query);\n });\n });\n }\n resetQueries(filters, options) {\n const queryCache = this.#queryCache;\n const refetchFilters = {\n type: \"active\",\n ...filters\n };\n return notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n query.reset();\n });\n return this.refetchQueries(refetchFilters, options);\n });\n }\n cancelQueries(filters = {}, cancelOptions = {}) {\n const defaultedCancelOptions = { revert: true, ...cancelOptions };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).map((query) => query.cancel(defaultedCancelOptions))\n );\n return Promise.all(promises).then(noop).catch(noop);\n }\n invalidateQueries(filters = {}, options = {}) {\n return notifyManager.batch(() => {\n this.#queryCache.findAll(filters).forEach((query) => {\n query.invalidate();\n });\n if (filters.refetchType === \"none\") {\n return Promise.resolve();\n }\n const refetchFilters = {\n ...filters,\n type: filters.refetchType ?? filters.type ?? \"active\"\n };\n return this.refetchQueries(refetchFilters, options);\n });\n }\n refetchQueries(filters = {}, options) {\n const fetchOptions = {\n ...options,\n cancelRefetch: options?.cancelRefetch ?? true\n };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).filter((query) => !query.isDisabled()).map((query) => {\n let promise = query.fetch(void 0, fetchOptions);\n if (!fetchOptions.throwOnError) {\n promise = promise.catch(noop);\n }\n return query.state.fetchStatus === \"paused\" ? Promise.resolve() : promise;\n })\n );\n return Promise.all(promises).then(noop);\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n if (typeof defaultedOptions.retry === \"undefined\") {\n defaultedOptions.retry = false;\n }\n const query = this.#queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(defaultedOptions.staleTime) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n }\n prefetchQuery(options) {\n return this.fetchQuery(options).then(noop).catch(noop);\n }\n fetchInfiniteQuery(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.fetchQuery(options);\n }\n prefetchInfiniteQuery(options) {\n return this.fetchInfiniteQuery(options).then(noop).catch(noop);\n }\n resumePausedMutations() {\n return this.#mutationCache.resumePausedMutations();\n }\n getQueryCache() {\n return this.#queryCache;\n }\n getMutationCache() {\n return this.#mutationCache;\n }\n getDefaultOptions() {\n return this.#defaultOptions;\n }\n setDefaultOptions(options) {\n this.#defaultOptions = options;\n }\n setQueryDefaults(queryKey, options) {\n this.#queryDefaults.set(hashKey(queryKey), {\n queryKey,\n defaultOptions: options\n });\n }\n getQueryDefaults(queryKey) {\n const defaults = [...this.#queryDefaults.values()];\n let result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(queryKey, queryDefault.queryKey)) {\n result = { ...result, ...queryDefault.defaultOptions };\n }\n });\n return result;\n }\n setMutationDefaults(mutationKey, options) {\n this.#mutationDefaults.set(hashKey(mutationKey), {\n mutationKey,\n defaultOptions: options\n });\n }\n getMutationDefaults(mutationKey) {\n const defaults = [...this.#mutationDefaults.values()];\n let result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(mutationKey, queryDefault.mutationKey)) {\n result = { ...result, ...queryDefault.defaultOptions };\n }\n });\n return result;\n }\n defaultQueryOptions(options) {\n if (options?._defaulted) {\n return options;\n }\n const defaultedOptions = {\n ...this.#defaultOptions.queries,\n ...options?.queryKey && this.getQueryDefaults(options.queryKey),\n ...options,\n _defaulted: true\n };\n if (!defaultedOptions.queryHash) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(\n defaultedOptions.queryKey,\n defaultedOptions\n );\n }\n if (typeof defaultedOptions.refetchOnReconnect === \"undefined\") {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== \"always\";\n }\n if (typeof defaultedOptions.throwOnError === \"undefined\") {\n defaultedOptions.throwOnError = !!defaultedOptions.suspense;\n }\n if (typeof defaultedOptions.networkMode === \"undefined\" && defaultedOptions.persister) {\n defaultedOptions.networkMode = \"offlineFirst\";\n }\n return defaultedOptions;\n }\n defaultMutationOptions(options) {\n if (options?._defaulted) {\n return options;\n }\n return {\n ...this.#defaultOptions.mutations,\n ...options?.mutationKey && this.getMutationDefaults(options.mutationKey),\n ...options,\n _defaulted: true\n };\n }\n clear() {\n this.#queryCache.clear();\n this.#mutationCache.clear();\n }\n};\nexport {\n QueryClient\n};\n//# sourceMappingURL=queryClient.js.map","// src/queryObserver.ts\nimport {\n isServer,\n isValidTimeout,\n noop,\n replaceData,\n shallowEqualObjects,\n timeUntilStale\n} from \"./utils.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { focusManager } from \"./focusManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { canFetch } from \"./retryer.js\";\nvar QueryObserver = class extends Subscribable {\n constructor(client, options) {\n super();\n this.#currentQuery = void 0;\n this.#currentQueryInitialState = void 0;\n this.#currentResult = void 0;\n this.#trackedProps = /* @__PURE__ */ new Set();\n this.#client = client;\n this.options = options;\n this.#selectError = null;\n this.bindMethods();\n this.setOptions(options);\n }\n #client;\n #currentQuery;\n #currentQueryInitialState;\n #currentResult;\n #currentResultState;\n #currentResultOptions;\n #selectError;\n #selectFn;\n #selectResult;\n // This property keeps track of the last query with defined data.\n // It will be used to pass the previous data and query to the placeholder function between renders.\n #lastQueryWithDefinedData;\n #staleTimeoutId;\n #refetchIntervalId;\n #currentRefetchInterval;\n #trackedProps;\n bindMethods() {\n this.refetch = this.refetch.bind(this);\n }\n onSubscribe() {\n if (this.listeners.size === 1) {\n this.#currentQuery.addObserver(this);\n if (shouldFetchOnMount(this.#currentQuery, this.options)) {\n this.#executeFetch();\n }\n this.#updateTimers();\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.destroy();\n }\n }\n shouldFetchOnReconnect() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnReconnect\n );\n }\n shouldFetchOnWindowFocus() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnWindowFocus\n );\n }\n destroy() {\n this.listeners = /* @__PURE__ */ new Set();\n this.#clearStaleTimeout();\n this.#clearRefetchInterval();\n this.#currentQuery.removeObserver(this);\n }\n setOptions(options, notifyOptions) {\n const prevOptions = this.options;\n const prevQuery = this.#currentQuery;\n this.options = this.#client.defaultQueryOptions(options);\n if (!shallowEqualObjects(prevOptions, this.options)) {\n this.#client.getQueryCache().notify({\n type: \"observerOptionsUpdated\",\n query: this.#currentQuery,\n observer: this\n });\n }\n if (typeof this.options.enabled !== \"undefined\" && typeof this.options.enabled !== \"boolean\") {\n throw new Error(\"Expected enabled to be a boolean\");\n }\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey;\n }\n this.#updateQuery();\n const mounted = this.hasListeners();\n if (mounted && shouldFetchOptionally(\n this.#currentQuery,\n prevQuery,\n this.options,\n prevOptions\n )) {\n this.#executeFetch();\n }\n this.updateResult(notifyOptions);\n if (mounted && (this.#currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.staleTime !== prevOptions.staleTime)) {\n this.#updateStaleTimeout();\n }\n const nextRefetchInterval = this.#computeRefetchInterval();\n if (mounted && (this.#currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || nextRefetchInterval !== this.#currentRefetchInterval)) {\n this.#updateRefetchInterval(nextRefetchInterval);\n }\n }\n getOptimisticResult(options) {\n const query = this.#client.getQueryCache().build(this.#client, options);\n const result = this.createResult(query, options);\n if (shouldAssignObserverCurrentProperties(this, result)) {\n this.#currentResult = result;\n this.#currentResultOptions = this.options;\n this.#currentResultState = this.#currentQuery.state;\n }\n return result;\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n trackResult(result) {\n const trackedResult = {};\n Object.keys(result).forEach((key) => {\n Object.defineProperty(trackedResult, key, {\n configurable: false,\n enumerable: true,\n get: () => {\n this.#trackedProps.add(key);\n return result[key];\n }\n });\n });\n return trackedResult;\n }\n getCurrentQuery() {\n return this.#currentQuery;\n }\n refetch({ ...options } = {}) {\n return this.fetch({\n ...options\n });\n }\n fetchOptimistic(options) {\n const defaultedOptions = this.#client.defaultQueryOptions(options);\n const query = this.#client.getQueryCache().build(this.#client, defaultedOptions);\n query.isFetchingOptimistic = true;\n return query.fetch().then(() => this.createResult(query, defaultedOptions));\n }\n fetch(fetchOptions) {\n return this.#executeFetch({\n ...fetchOptions,\n cancelRefetch: fetchOptions.cancelRefetch ?? true\n }).then(() => {\n this.updateResult();\n return this.#currentResult;\n });\n }\n #executeFetch(fetchOptions) {\n this.#updateQuery();\n let promise = this.#currentQuery.fetch(\n this.options,\n fetchOptions\n );\n if (!fetchOptions?.throwOnError) {\n promise = promise.catch(noop);\n }\n return promise;\n }\n #updateStaleTimeout() {\n this.#clearStaleTimeout();\n if (isServer || this.#currentResult.isStale || !isValidTimeout(this.options.staleTime)) {\n return;\n }\n const time = timeUntilStale(\n this.#currentResult.dataUpdatedAt,\n this.options.staleTime\n );\n const timeout = time + 1;\n this.#staleTimeoutId = setTimeout(() => {\n if (!this.#currentResult.isStale) {\n this.updateResult();\n }\n }, timeout);\n }\n #computeRefetchInterval() {\n return (typeof this.options.refetchInterval === \"function\" ? this.options.refetchInterval(this.#currentQuery) : this.options.refetchInterval) ?? false;\n }\n #updateRefetchInterval(nextInterval) {\n this.#clearRefetchInterval();\n this.#currentRefetchInterval = nextInterval;\n if (isServer || this.options.enabled === false || !isValidTimeout(this.#currentRefetchInterval) || this.#currentRefetchInterval === 0) {\n return;\n }\n this.#refetchIntervalId = setInterval(() => {\n if (this.options.refetchIntervalInBackground || focusManager.isFocused()) {\n this.#executeFetch();\n }\n }, this.#currentRefetchInterval);\n }\n #updateTimers() {\n this.#updateStaleTimeout();\n this.#updateRefetchInterval(this.#computeRefetchInterval());\n }\n #clearStaleTimeout() {\n if (this.#staleTimeoutId) {\n clearTimeout(this.#staleTimeoutId);\n this.#staleTimeoutId = void 0;\n }\n }\n #clearRefetchInterval() {\n if (this.#refetchIntervalId) {\n clearInterval(this.#refetchIntervalId);\n this.#refetchIntervalId = void 0;\n }\n }\n createResult(query, options) {\n const prevQuery = this.#currentQuery;\n const prevOptions = this.options;\n const prevResult = this.#currentResult;\n const prevResultState = this.#currentResultState;\n const prevResultOptions = this.#currentResultOptions;\n const queryChange = query !== prevQuery;\n const queryInitialState = queryChange ? query.state : this.#currentQueryInitialState;\n const { state } = query;\n let { error, errorUpdatedAt, fetchStatus, status } = state;\n let isPlaceholderData = false;\n let data;\n if (options._optimisticResults) {\n const mounted = this.hasListeners();\n const fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n const fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n if (fetchOnMount || fetchOptionally) {\n fetchStatus = canFetch(query.options.networkMode) ? \"fetching\" : \"paused\";\n if (!state.dataUpdatedAt) {\n status = \"pending\";\n }\n }\n if (options._optimisticResults === \"isRestoring\") {\n fetchStatus = \"idle\";\n }\n }\n if (options.select && typeof state.data !== \"undefined\") {\n if (prevResult && state.data === prevResultState?.data && options.select === this.#selectFn) {\n data = this.#selectResult;\n } else {\n try {\n this.#selectFn = options.select;\n data = options.select(state.data);\n data = replaceData(prevResult?.data, data, options);\n this.#selectResult = data;\n this.#selectError = null;\n } catch (selectError) {\n this.#selectError = selectError;\n }\n }\n } else {\n data = state.data;\n }\n if (typeof options.placeholderData !== \"undefined\" && typeof data === \"undefined\" && status === \"pending\") {\n let placeholderData;\n if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {\n placeholderData = prevResult.data;\n } else {\n placeholderData = typeof options.placeholderData === \"function\" ? options.placeholderData(\n this.#lastQueryWithDefinedData?.state.data,\n this.#lastQueryWithDefinedData\n ) : options.placeholderData;\n if (options.select && typeof placeholderData !== \"undefined\") {\n try {\n placeholderData = options.select(placeholderData);\n this.#selectError = null;\n } catch (selectError) {\n this.#selectError = selectError;\n }\n }\n }\n if (typeof placeholderData !== \"undefined\") {\n status = \"success\";\n data = replaceData(\n prevResult?.data,\n placeholderData,\n options\n );\n isPlaceholderData = true;\n }\n }\n if (this.#selectError) {\n error = this.#selectError;\n data = this.#selectResult;\n errorUpdatedAt = Date.now();\n status = \"error\";\n }\n const isFetching = fetchStatus === \"fetching\";\n const isPending = status === \"pending\";\n const isError = status === \"error\";\n const isLoading = isPending && isFetching;\n const result = {\n status,\n fetchStatus,\n isPending,\n isSuccess: status === \"success\",\n isError,\n isInitialLoading: isLoading,\n isLoading,\n data,\n dataUpdatedAt: state.dataUpdatedAt,\n error,\n errorUpdatedAt,\n failureCount: state.fetchFailureCount,\n failureReason: state.fetchFailureReason,\n errorUpdateCount: state.errorUpdateCount,\n isFetched: state.dataUpdateCount > 0 || state.errorUpdateCount > 0,\n isFetchedAfterMount: state.dataUpdateCount > queryInitialState.dataUpdateCount || state.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching,\n isRefetching: isFetching && !isPending,\n isLoadingError: isError && state.dataUpdatedAt === 0,\n isPaused: fetchStatus === \"paused\",\n isPlaceholderData,\n isRefetchError: isError && state.dataUpdatedAt !== 0,\n isStale: isStale(query, options),\n refetch: this.refetch\n };\n return result;\n }\n updateResult(notifyOptions) {\n const prevResult = this.#currentResult;\n const nextResult = this.createResult(this.#currentQuery, this.options);\n this.#currentResultState = this.#currentQuery.state;\n this.#currentResultOptions = this.options;\n if (shallowEqualObjects(nextResult, prevResult)) {\n return;\n }\n if (this.#currentResultState.data !== void 0) {\n this.#lastQueryWithDefinedData = this.#currentQuery;\n }\n this.#currentResult = nextResult;\n const defaultNotifyOptions = {};\n const shouldNotifyListeners = () => {\n if (!prevResult) {\n return true;\n }\n const { notifyOnChangeProps } = this.options;\n const notifyOnChangePropsValue = typeof notifyOnChangeProps === \"function\" ? notifyOnChangeProps() : notifyOnChangeProps;\n if (notifyOnChangePropsValue === \"all\" || !notifyOnChangePropsValue && !this.#trackedProps.size) {\n return true;\n }\n const includedProps = new Set(\n notifyOnChangePropsValue ?? this.#trackedProps\n );\n if (this.options.throwOnError) {\n includedProps.add(\"error\");\n }\n return Object.keys(this.#currentResult).some((key) => {\n const typedKey = key;\n const changed = this.#currentResult[typedKey] !== prevResult[typedKey];\n return changed && includedProps.has(typedKey);\n });\n };\n if (notifyOptions?.listeners !== false && shouldNotifyListeners()) {\n defaultNotifyOptions.listeners = true;\n }\n this.#notify({ ...defaultNotifyOptions, ...notifyOptions });\n }\n #updateQuery() {\n const query = this.#client.getQueryCache().build(this.#client, this.options);\n if (query === this.#currentQuery) {\n return;\n }\n const prevQuery = this.#currentQuery;\n this.#currentQuery = query;\n this.#currentQueryInitialState = query.state;\n if (this.hasListeners()) {\n prevQuery?.removeObserver(this);\n query.addObserver(this);\n }\n }\n onQueryUpdate() {\n this.updateResult();\n if (this.hasListeners()) {\n this.#updateTimers();\n }\n }\n #notify(notifyOptions) {\n notifyManager.batch(() => {\n if (notifyOptions.listeners) {\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n }\n this.#client.getQueryCache().notify({\n query: this.#currentQuery,\n type: \"observerResultsUpdated\"\n });\n });\n }\n};\nfunction shouldLoadOnMount(query, options) {\n return options.enabled !== false && !query.state.dataUpdatedAt && !(query.state.status === \"error\" && options.retryOnMount === false);\n}\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || query.state.dataUpdatedAt > 0 && shouldFetchOn(query, options, options.refetchOnMount);\n}\nfunction shouldFetchOn(query, options, field) {\n if (options.enabled !== false) {\n const value = typeof field === \"function\" ? field(query) : field;\n return value === \"always\" || value !== false && isStale(query, options);\n }\n return false;\n}\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return options.enabled !== false && (query !== prevQuery || prevOptions.enabled === false) && (!options.suspense || query.state.status !== \"error\") && isStale(query, options);\n}\nfunction isStale(query, options) {\n return query.isStaleByTime(options.staleTime);\n}\nfunction shouldAssignObserverCurrentProperties(observer, optimisticResult) {\n if (!shallowEqualObjects(observer.getCurrentResult(), optimisticResult)) {\n return true;\n }\n return false;\n}\nexport {\n QueryObserver\n};\n//# sourceMappingURL=queryObserver.js.map","// src/mutationObserver.ts\nimport { getDefaultState } from \"./mutation.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { shallowEqualObjects } from \"./utils.js\";\nvar MutationObserver = class extends Subscribable {\n constructor(client, options) {\n super();\n this.#currentResult = void 0;\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\n #client;\n #currentResult;\n #currentMutation;\n #mutateOptions;\n bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n this.options = this.#client.defaultMutationOptions(options);\n if (!shallowEqualObjects(prevOptions, this.options)) {\n this.#client.getMutationCache().notify({\n type: \"observerOptionsUpdated\",\n mutation: this.#currentMutation,\n observer: this\n });\n }\n this.#currentMutation?.setOptions(this.options);\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#currentMutation?.removeObserver(this);\n }\n }\n onMutationUpdate(action) {\n this.#updateResult();\n this.#notify(action);\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n reset() {\n this.#currentMutation = void 0;\n this.#updateResult();\n this.#notify();\n }\n mutate(variables, options) {\n this.#mutateOptions = options;\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = this.#client.getMutationCache().build(this.#client, this.options);\n this.#currentMutation.addObserver(this);\n return this.#currentMutation.execute(variables);\n }\n #updateResult() {\n const state = this.#currentMutation?.state ?? getDefaultState();\n this.#currentResult = {\n ...state,\n isPending: state.status === \"pending\",\n isSuccess: state.status === \"success\",\n isError: state.status === \"error\",\n isIdle: state.status === \"idle\",\n mutate: this.mutate,\n reset: this.reset\n };\n }\n #notify(action) {\n notifyManager.batch(() => {\n if (this.#mutateOptions && this.hasListeners()) {\n if (action?.type === \"success\") {\n this.#mutateOptions.onSuccess?.(\n action.data,\n this.#currentResult.variables,\n this.#currentResult.context\n );\n this.#mutateOptions.onSettled?.(\n action.data,\n null,\n this.#currentResult.variables,\n this.#currentResult.context\n );\n } else if (action?.type === \"error\") {\n this.#mutateOptions.onError?.(\n action.error,\n this.#currentResult.variables,\n this.#currentResult.context\n );\n this.#mutateOptions.onSettled?.(\n void 0,\n action.error,\n this.#currentResult.variables,\n this.#currentResult.context\n );\n }\n }\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n });\n }\n};\nexport {\n MutationObserver\n};\n//# sourceMappingURL=mutationObserver.js.map","\"use client\";\n\n// src/QueryClientProvider.tsx\nimport * as React from \"react\";\nvar QueryClientContext = React.createContext(\n void 0\n);\nvar useQueryClient = (queryClient) => {\n const client = React.useContext(QueryClientContext);\n if (queryClient) {\n return queryClient;\n }\n if (!client) {\n throw new Error(\"No QueryClient set, use QueryClientProvider to set one\");\n }\n return client;\n};\nvar QueryClientProvider = ({\n client,\n children\n}) => {\n React.useEffect(() => {\n client.mount();\n return () => {\n client.unmount();\n };\n }, [client]);\n return /* @__PURE__ */ React.createElement(QueryClientContext.Provider, { value: client }, children);\n};\nexport {\n QueryClientContext,\n QueryClientProvider,\n useQueryClient\n};\n//# sourceMappingURL=QueryClientProvider.js.map","\"use client\";\n\n// src/isRestoring.ts\nimport * as React from \"react\";\nvar IsRestoringContext = React.createContext(false);\nvar useIsRestoring = () => React.useContext(IsRestoringContext);\nvar IsRestoringProvider = IsRestoringContext.Provider;\nexport {\n IsRestoringProvider,\n useIsRestoring\n};\n//# sourceMappingURL=isRestoring.js.map","\"use client\";\n\n// src/QueryErrorResetBoundary.tsx\nimport * as React from \"react\";\nfunction createValue() {\n let isReset = false;\n return {\n clearReset: () => {\n isReset = false;\n },\n reset: () => {\n isReset = true;\n },\n isReset: () => {\n return isReset;\n }\n };\n}\nvar QueryErrorResetBoundaryContext = React.createContext(createValue());\nvar useQueryErrorResetBoundary = () => React.useContext(QueryErrorResetBoundaryContext);\nvar QueryErrorResetBoundary = ({\n children\n}) => {\n const [value] = React.useState(() => createValue());\n return /* @__PURE__ */ React.createElement(QueryErrorResetBoundaryContext.Provider, { value }, typeof children === \"function\" ? children(value) : children);\n};\nexport {\n QueryErrorResetBoundary,\n useQueryErrorResetBoundary\n};\n//# sourceMappingURL=QueryErrorResetBoundary.js.map","// src/utils.ts\nfunction shouldThrowError(throwError, params) {\n if (typeof throwError === \"function\") {\n return throwError(...params);\n }\n return !!throwError;\n}\nexport {\n shouldThrowError\n};\n//# sourceMappingURL=utils.js.map","\"use client\";\n\n// src/errorBoundaryUtils.ts\nimport * as React from \"react\";\nimport { shouldThrowError } from \"./utils.js\";\nvar ensurePreventErrorBoundaryRetry = (options, errorResetBoundary) => {\n if (options.suspense || options.throwOnError) {\n if (!errorResetBoundary.isReset()) {\n options.retryOnMount = false;\n }\n }\n};\nvar useClearResetErrorBoundary = (errorResetBoundary) => {\n React.useEffect(() => {\n errorResetBoundary.clearReset();\n }, [errorResetBoundary]);\n};\nvar getHasError = ({\n result,\n errorResetBoundary,\n throwOnError,\n query\n}) => {\n return result.isError && !errorResetBoundary.isReset() && !result.isFetching && shouldThrowError(throwOnError, [result.error, query]);\n};\nexport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n};\n//# sourceMappingURL=errorBoundaryUtils.js.map","// src/suspense.ts\nvar defaultThrowOnError = (_error, query) => typeof query.state.data === \"undefined\";\nvar ensureStaleTime = (defaultedOptions) => {\n if (defaultedOptions.suspense) {\n if (typeof defaultedOptions.staleTime !== \"number\") {\n defaultedOptions.staleTime = 1e3;\n }\n }\n};\nvar willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;\nvar shouldSuspend = (defaultedOptions, result, isRestoring) => defaultedOptions?.suspense && willFetch(result, isRestoring);\nvar fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).catch(() => {\n errorResetBoundary.clearReset();\n});\nexport {\n defaultThrowOnError,\n ensureStaleTime,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n};\n//# sourceMappingURL=suspense.js.map","\"use client\";\n\n// src/useBaseQuery.ts\nimport * as React from \"react\";\nimport { notifyManager } from \"@tanstack/query-core\";\nimport { useQueryErrorResetBoundary } from \"./QueryErrorResetBoundary.js\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { useIsRestoring } from \"./isRestoring.js\";\nimport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n} from \"./errorBoundaryUtils.js\";\nimport { ensureStaleTime, fetchOptimistic, shouldSuspend } from \"./suspense.js\";\nfunction useBaseQuery(options, Observer, queryClient) {\n const client = useQueryClient(queryClient);\n const isRestoring = useIsRestoring();\n const errorResetBoundary = useQueryErrorResetBoundary();\n const defaultedOptions = client.defaultQueryOptions(options);\n defaultedOptions._optimisticResults = isRestoring ? \"isRestoring\" : \"optimistic\";\n ensureStaleTime(defaultedOptions);\n ensurePreventErrorBoundaryRetry(defaultedOptions, errorResetBoundary);\n useClearResetErrorBoundary(errorResetBoundary);\n const [observer] = React.useState(\n () => new Observer(\n client,\n defaultedOptions\n )\n );\n const result = observer.getOptimisticResult(defaultedOptions);\n React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => {\n const unsubscribe = isRestoring ? () => void 0 : observer.subscribe(notifyManager.batchCalls(onStoreChange));\n observer.updateResult();\n return unsubscribe;\n },\n [observer, isRestoring]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n React.useEffect(() => {\n observer.setOptions(defaultedOptions, { listeners: false });\n }, [defaultedOptions, observer]);\n if (shouldSuspend(defaultedOptions, result, isRestoring)) {\n throw fetchOptimistic(defaultedOptions, observer, errorResetBoundary);\n }\n if (getHasError({\n result,\n errorResetBoundary,\n throwOnError: defaultedOptions.throwOnError,\n query: observer.getCurrentQuery()\n })) {\n throw result.error;\n }\n return !defaultedOptions.notifyOnChangeProps ? observer.trackResult(result) : result;\n}\nexport {\n useBaseQuery\n};\n//# sourceMappingURL=useBaseQuery.js.map","\"use client\";\n\n// src/useQuery.ts\nimport { QueryObserver } from \"@tanstack/query-core\";\nimport { useBaseQuery } from \"./useBaseQuery.js\";\nfunction useQuery(options, queryClient) {\n return useBaseQuery(options, QueryObserver, queryClient);\n}\nexport {\n useQuery\n};\n//# sourceMappingURL=useQuery.js.map","\"use client\";\n\n// src/useMutation.ts\nimport * as React from \"react\";\nimport { MutationObserver, notifyManager } from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { shouldThrowError } from \"./utils.js\";\nfunction useMutation(options, queryClient) {\n const client = useQueryClient(queryClient);\n const [observer] = React.useState(\n () => new MutationObserver(\n client,\n options\n )\n );\n React.useEffect(() => {\n observer.setOptions(options);\n }, [observer, options]);\n const result = React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => observer.subscribe(notifyManager.batchCalls(onStoreChange)),\n [observer]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n const mutate = React.useCallback(\n (variables, mutateOptions) => {\n observer.mutate(variables, mutateOptions).catch(noop);\n },\n [observer]\n );\n if (result.error && shouldThrowError(observer.options.throwOnError, [result.error])) {\n throw result.error;\n }\n return { ...result, mutate, mutateAsync: result.mutate };\n}\nfunction noop() {\n}\nexport {\n useMutation\n};\n//# sourceMappingURL=useMutation.js.map","\"use client\";\n\n// src/index.ts\nimport * as devtools from \"./devtools.js\";\nvar ReactQueryDevtools2 = process.env.NODE_ENV !== \"development\" ? function() {\n return null;\n} : devtools.ReactQueryDevtools;\nexport {\n ReactQueryDevtools2 as ReactQueryDevtools\n};\n//# sourceMappingURL=index.js.map"],"names":["Subscribable","listener","isServer","noop","functionalUpdate","updater","input","isValidTimeout","value","timeUntilStale","updatedAt","staleTime","matchQuery","filters","query","type","exact","fetchStatus","predicate","queryKey","stale","hashQueryKeyByOptions","partialMatchKey","isActive","matchMutation","mutation","status","mutationKey","hashKey","options","_","val","isPlainObject","result","key","a","b","replaceEqualDeep","array","isPlainArray","aSize","bItems","bSize","copy","equalItems","i","shallowEqualObjects","o","hasObjectPrototype","ctor","prot","sleep","timeout","resolve","scheduleMicrotask","callback","replaceData","prevData","data","addToEnd","items","item","max","newItems","addToStart","FocusManager","_a","__privateAdd","_focused","_cleanup","_setup","__privateSet","onFocus","__privateGet","setup","focused","focusManager","OnlineManager","_online","onOnline","onlineListener","offlineListener","online","onlineManager","defaultRetryDelay","failureCount","canFetch","networkMode","CancelledError","isCancelledError","createRetryer","config","isRetryCancelled","isResolved","continueFn","promiseResolve","promiseReject","promise","outerResolve","outerReject","cancel","cancelOptions","reject","cancelRetry","continueRetry","shouldPause","pause","continueResolve","canContinue","run","promiseOrValue","error","retry","retryDelay","delay","shouldRetry","createNotifyManager","queue","transactions","notifyFn","batchNotifyFn","batch","flush","schedule","batchCalls","args","originalQueue","fn","notifyManager","Removable","_gcTimeout","newGcTime","Query","_Query_instances","_initialState","_revertState","_cache","_promise","_retryer","_observers","_defaultOptions","_abortSignalConsumed","__privateMethod","setOptions_fn","getDefaultState","newData","dispatch_fn","state","setStateOptions","observer","x","fetchOptions","abortController","queryFnContext","addSignalProperty","object","fetchFn","context","_b","_c","_d","onError","action","reducer","hasData","initialDataUpdatedAt","QueryCache","_queries","client","queryHash","queryInMap","defaultedFilters","queries","event","Mutation","_Mutation_instances","_mutationCache","variables","executeMutation","restored","_f","_e","_h","_g","_j","_i","_l","_k","_n","_m","_p","_o","_r","_q","_t","_s","MutationCache","_mutations","_mutationId","_resuming","__privateWrapper","pausedMutations","infiniteQueryBehavior","pages","direction","oldPages","oldPageParams","empty","cancelled","queryFn","fetchPage","param","previous","page","maxPages","addTo","pageParamFn","getPreviousPageParam","getNextPageParam","oldData","remainingPages","pageParams","lastIndex","QueryClient","_queryCache","_queryDefaults","_mutationDefaults","_mountCount","_unsubscribeFocus","_unsubscribeOnline","cachedData","defaultedOptions","queryCache","refetchFilters","defaultedCancelOptions","promises","defaults","queryDefault","QueryObserver","_QueryObserver_instances","_client","_currentQuery","_currentQueryInitialState","_currentResult","_currentResultState","_currentResultOptions","_selectError","_selectFn","_selectResult","_lastQueryWithDefinedData","_staleTimeoutId","_refetchIntervalId","_currentRefetchInterval","_trackedProps","shouldFetchOnMount","executeFetch_fn","updateTimers_fn","shouldFetchOn","clearStaleTimeout_fn","clearRefetchInterval_fn","notifyOptions","prevOptions","prevQuery","updateQuery_fn","mounted","shouldFetchOptionally","updateStaleTimeout_fn","nextRefetchInterval","computeRefetchInterval_fn","updateRefetchInterval_fn","shouldAssignObserverCurrentProperties","trackedResult","prevResult","prevResultState","prevResultOptions","queryInitialState","errorUpdatedAt","isPlaceholderData","fetchOnMount","fetchOptionally","selectError","placeholderData","isFetching","isPending","isError","isLoading","isStale","nextResult","defaultNotifyOptions","shouldNotifyListeners","notifyOnChangeProps","notifyOnChangePropsValue","includedProps","typedKey","notify_fn","nextInterval","shouldLoadOnMount","field","optimisticResult","MutationObserver","_MutationObserver_instances","_currentMutation","_mutateOptions","updateResult_fn","QueryClientContext","React.createContext","useQueryClient","queryClient","React.useContext","QueryClientProvider","children","React.useEffect","React.createElement","IsRestoringContext","useIsRestoring","createValue","isReset","QueryErrorResetBoundaryContext","useQueryErrorResetBoundary","shouldThrowError","throwError","params","ensurePreventErrorBoundaryRetry","errorResetBoundary","useClearResetErrorBoundary","getHasError","throwOnError","ensureStaleTime","willFetch","isRestoring","shouldSuspend","fetchOptimistic","useBaseQuery","Observer","React.useState","React.useSyncExternalStore","React.useCallback","onStoreChange","unsubscribe","useQuery","useMutation","mutate","mutateOptions","ReactQueryDevtools2"],"mappings":"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","debug_id":"15238f40-836b-53e7-b369-8bd2dbea2c32"}