@tanstack/vue-query 5.0.0-alpha.2 → 5.0.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/__mocks__/useBaseQuery.d.ts +1 -2
- package/build/lib/__mocks__/useQueryClient.d.ts +1 -2
- package/build/lib/devtools/devtools.esm.js +50 -9
- package/build/lib/devtools/devtools.esm.js.map +1 -1
- package/build/lib/devtools/devtools.js +50 -9
- package/build/lib/devtools/devtools.js.map +1 -1
- package/build/lib/devtools/devtools.mjs +46 -7
- package/build/lib/devtools/devtools.mjs.map +1 -1
- package/build/lib/devtools/utils.esm.js +0 -1
- package/build/lib/devtools/utils.esm.js.map +1 -1
- package/build/lib/devtools/utils.js +0 -1
- package/build/lib/devtools/utils.js.map +1 -1
- package/build/lib/devtools/utils.mjs +0 -1
- package/build/lib/devtools/utils.mjs.map +1 -1
- package/build/lib/index.d.ts +2 -2
- package/build/lib/index.esm.js +1 -1
- package/build/lib/index.js +3 -2
- package/build/lib/index.js.map +1 -1
- package/build/lib/index.mjs +1 -1
- package/build/lib/queryClient.esm.js +1 -1
- package/build/lib/queryClient.esm.js.map +1 -1
- package/build/lib/queryClient.js +1 -1
- package/build/lib/queryClient.js.map +1 -1
- package/build/lib/useBaseQuery.esm.js.map +1 -1
- package/build/lib/useBaseQuery.js.map +1 -1
- package/build/lib/useBaseQuery.mjs.map +1 -1
- package/build/lib/useMutationState.d.ts +12 -0
- package/build/lib/useMutationState.esm.js +33 -0
- package/build/lib/useMutationState.esm.js.map +1 -0
- package/build/lib/useMutationState.js +36 -0
- package/build/lib/useMutationState.js.map +1 -0
- package/build/lib/useMutationState.mjs +33 -0
- package/build/lib/useMutationState.mjs.map +1 -0
- package/build/lib/useQueries.d.ts +2 -3
- package/build/lib/useQueries.esm.js +4 -5
- package/build/lib/useQueries.esm.js.map +1 -1
- package/build/lib/useQueries.js +4 -5
- package/build/lib/useQueries.js.map +1 -1
- package/build/lib/useQueries.mjs +4 -5
- package/build/lib/useQueries.mjs.map +1 -1
- package/build/lib/useQueryClient.esm.js +2 -1
- package/build/lib/useQueryClient.esm.js.map +1 -1
- package/build/lib/useQueryClient.js +2 -1
- package/build/lib/useQueryClient.js.map +1 -1
- package/build/lib/vueQueryPlugin.esm.js +0 -2
- package/build/lib/vueQueryPlugin.esm.js.map +1 -1
- package/build/lib/vueQueryPlugin.js +0 -2
- package/build/lib/vueQueryPlugin.js.map +1 -1
- package/build/lib/vueQueryPlugin.mjs +0 -2
- package/build/lib/vueQueryPlugin.mjs.map +1 -1
- package/build/umd/index.development.js +167 -135
- package/build/umd/index.development.js.map +1 -1
- package/build/umd/index.production.js +1 -1
- package/build/umd/index.production.js.map +1 -1
- package/package.json +6 -6
- package/build/lib/useIsMutating.d.ts +0 -6
- package/build/lib/useIsMutating.esm.js +0 -24
- package/build/lib/useIsMutating.esm.js.map +0 -1
- package/build/lib/useIsMutating.js +0 -26
- package/build/lib/useIsMutating.js.map +0 -1
- package/build/lib/useIsMutating.mjs +0 -24
- package/build/lib/useIsMutating.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.development.js","sources":["../../../query-core/build/lib/subscribable.mjs","../../../query-core/build/lib/utils.mjs","../../../query-core/build/lib/focusManager.mjs","../../../query-core/build/lib/onlineManager.mjs","../../../query-core/build/lib/retryer.mjs","../../../query-core/build/lib/notifyManager.mjs","../../../query-core/build/lib/removable.mjs","../../../query-core/build/lib/query.mjs","../../../query-core/build/lib/queryCache.mjs","../../../query-core/build/lib/mutation.mjs","../../../query-core/build/lib/mutationCache.mjs","../../../query-core/build/lib/infiniteQueryBehavior.mjs","../../../query-core/build/lib/queryClient.mjs","../../../query-core/build/lib/queryObserver.mjs","../../../query-core/build/lib/queriesObserver.mjs","../../../query-core/build/lib/infiniteQueryObserver.mjs","../../../query-core/build/lib/mutationObserver.mjs","../../../query-core/build/lib/hydration.mjs","../../src/utils.ts","../../src/useQueryClient.ts","../../src/queryCache.ts","../../src/mutationCache.ts","../../src/queryClient.ts","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/env.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/const.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/time.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/proxy.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/index.js","../../../../node_modules/.pnpm/@tanstack+match-sorter-utils@8.7.6/node_modules/@tanstack/match-sorter-utils/build/lib/index.mjs","../../src/devtools/utils.ts","../../src/devtools/devtools.ts","../../src/vueQueryPlugin.ts","../../src/useBaseQuery.ts","../../src/useQuery.ts","../../src/useQueries.ts","../../src/useInfiniteQuery.ts","../../src/useMutation.ts","../../src/useIsFetching.ts","../../src/useIsMutating.ts"],"sourcesContent":["class Subscribable {\n constructor() {\n this.listeners = [];\n this.subscribe = this.subscribe.bind(this);\n }\n subscribe(listener) {\n this.listeners.push(listener);\n this.onSubscribe();\n return () => {\n this.listeners = this.listeners.filter(x => x !== listener);\n this.onUnsubscribe();\n };\n }\n hasListeners() {\n return this.listeners.length > 0;\n }\n onSubscribe() {\n // Do nothing\n }\n onUnsubscribe() {\n // Do nothing\n }\n}\n\nexport { Subscribable };\n//# sourceMappingURL=subscribable.mjs.map\n","// TYPES\n\n// UTILS\n\nconst isServer = typeof window === 'undefined' || 'Deno' in window;\nfunction noop() {\n return undefined;\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 {\n exact,\n status,\n predicate,\n mutationKey\n } = 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}\n\n/**\n * Default query & mutation keys hash function.\n * Hashes the value into a stable hash.\n */\nfunction hashKey(queryKey) {\n return JSON.stringify(queryKey, (_, val) => isPlainObject(val) ? Object.keys(val).sort().reduce((result, key) => {\n result[key] = val[key];\n return result;\n }, {}) : val);\n}\n\n/**\n * Checks if key `b` partially matches with key `a`.\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}\n\n/**\n * This function returns `a` if `b` is deeply equal.\n * If not, it will replace any deeply equal children of `b` with those of `a`.\n * This can be used for structural sharing between JSON values for example.\n */\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}\n\n/**\n * Shallow compare objects. Only works with objects that always have the same properties.\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}\n\n// Copied from: https://github.com/jonschlinkert/is-plain-object\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n\n // If has modified constructor\n const ctor = o.constructor;\n if (typeof ctor === 'undefined') {\n return true;\n }\n\n // If has modified prototype\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n\n // If constructor does not have an Object-specific method\n if (!prot.hasOwnProperty('isPrototypeOf')) {\n return false;\n }\n\n // Most likely a plain Object\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}\n\n/**\n * Schedules a microtask.\n * This can be useful to schedule state updates after rendering.\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 // Structurally share data between prev and new data if needed\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}\n\nexport { addToEnd, addToStart, functionalUpdate, hashKey, hashQueryKeyByOptions, isPlainArray, isPlainObject, isServer, isValidTimeout, keepPreviousData, matchMutation, matchQuery, noop, partialMatchKey, replaceData, replaceEqualDeep, scheduleMicrotask, shallowEqualObjects, sleep, timeUntilStale };\n//# sourceMappingURL=utils.mjs.map\n","import { Subscribable } from './subscribable.mjs';\nimport { isServer } from './utils.mjs';\n\nclass FocusManager extends Subscribable {\n #focused;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = onFocus => {\n // addEventListener does not exist in React Native, but window does\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus();\n // Listen to visibilitychange\n window.addEventListener('visibilitychange', listener, false);\n return () => {\n // Be sure to unsubscribe if a new handler is set\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 = undefined;\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 this.#focused = focused;\n if (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\n // document global can be unavailable in react native\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n return globalThis.document?.visibilityState !== 'hidden';\n }\n}\nconst focusManager = new FocusManager();\n\nexport { FocusManager, focusManager };\n//# sourceMappingURL=focusManager.mjs.map\n","import { Subscribable } from './subscribable.mjs';\nimport { isServer } from './utils.mjs';\n\nclass OnlineManager extends Subscribable {\n #online;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = onOnline => {\n // addEventListener does not exist in React Native, but window does\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isServer && window.addEventListener) {\n const listener = () => onOnline();\n // Listen to online\n window.addEventListener('online', listener, false);\n window.addEventListener('offline', listener, false);\n return () => {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('online', listener);\n window.removeEventListener('offline', 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 = undefined;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup(online => {\n if (typeof online === 'boolean') {\n this.setOnline(online);\n } else {\n this.onOnline();\n }\n });\n }\n setOnline(online) {\n this.#online = online;\n if (online) {\n this.onOnline();\n }\n }\n onOnline() {\n this.listeners.forEach(listener => {\n listener();\n });\n }\n isOnline() {\n if (typeof this.#online === 'boolean') {\n return this.#online;\n }\n if (typeof navigator === 'undefined' || typeof navigator.onLine === 'undefined') {\n return true;\n }\n return navigator.onLine;\n }\n}\nconst onlineManager = new OnlineManager();\n\nexport { OnlineManager, onlineManager };\n//# sourceMappingURL=onlineManager.mjs.map\n","import { focusManager } from './focusManager.mjs';\nimport { onlineManager } from './onlineManager.mjs';\nimport { sleep } from './utils.mjs';\n\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1000 * 2 ** failureCount, 30000);\n}\nfunction canFetch(networkMode) {\n return (networkMode ?? 'online') === 'online' ? onlineManager.isOnline() : true;\n}\nclass CancelledError {\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 = undefined;\n if (!isResolved) {\n config.onContinue?.();\n }\n });\n };\n\n // Create loop function\n const run = () => {\n // Do nothing if already resolved\n if (isResolved) {\n return;\n }\n let promiseOrValue;\n\n // Execute query\n try {\n promiseOrValue = config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n }\n Promise.resolve(promiseOrValue).then(resolve).catch(error => {\n // Stop if the fetch is already resolved\n if (isResolved) {\n return;\n }\n\n // Do we need to retry the request?\n const retry = config.retry ?? 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 // We are done if the query does not need to be retried\n reject(error);\n return;\n }\n failureCount++;\n\n // Notify on fail\n config.onFail?.(failureCount, error);\n\n // Delay\n sleep(delay)\n // Pause if the document is not visible or when the device is offline\n .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\n // Start loop\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}\n\nexport { CancelledError, canFetch, createRetryer, isCancelledError };\n//# sourceMappingURL=retryer.mjs.map\n","import { scheduleMicrotask } from './utils.mjs';\n\n// TYPES\n\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\n /**\n * All calls to the wrapped function will be batched.\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\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n const setNotifyFunction = fn => {\n notifyFn = fn;\n };\n\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n const setBatchNotifyFunction = fn => {\n batchNotifyFn = fn;\n };\n return {\n batch,\n batchCalls,\n schedule,\n setNotifyFunction,\n setBatchNotifyFunction\n };\n}\n\n// SINGLETON\nconst notifyManager = createNotifyManager();\n\nexport { createNotifyManager, notifyManager };\n//# sourceMappingURL=notifyManager.mjs.map\n","import { isValidTimeout, isServer } from './utils.mjs';\n\nclass Removable {\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 // Default to 5 minutes (Infinity for server-side) if no gcTime is set\n this.gcTime = Math.max(this.gcTime || 0, newGcTime ?? (isServer ? Infinity : 5 * 60 * 1000));\n }\n clearGcTimeout() {\n if (this.#gcTimeout) {\n clearTimeout(this.#gcTimeout);\n this.#gcTimeout = undefined;\n }\n }\n}\n\nexport { Removable };\n//# sourceMappingURL=removable.mjs.map\n","import { replaceData, noop, timeUntilStale } from './utils.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { createRetryer, isCancelledError, canFetch } from './retryer.mjs';\nimport { Removable } from './removable.mjs';\n\n// TYPES\n\n// CLASS\n\nclass Query extends Removable {\n #initialState;\n #revertState;\n #cache;\n #promise;\n #retryer;\n #observers;\n #defaultOptions;\n #abortSignalConsumed;\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 get meta() {\n return this.options.meta;\n }\n #setOptions(options) {\n this.options = {\n ...this.#defaultOptions,\n ...options\n };\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\n // Set data and mark it as cached\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({\n type: 'setState',\n state,\n setStateOptions\n });\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({\n silent: true\n });\n }\n reset() {\n this.destroy();\n this.setState(this.#initialState);\n }\n isActive() {\n return this.#observers.some(observer => observer.options.enabled !== false);\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({\n cancelRefetch: false\n });\n\n // Continue fetch if currently paused\n this.#retryer?.continue();\n }\n onOnline() {\n const observer = this.#observers.find(x => x.shouldFetchOnReconnect());\n observer?.refetch({\n cancelRefetch: false\n });\n\n // Continue fetch if currently paused\n this.#retryer?.continue();\n }\n addObserver(observer) {\n if (this.#observers.indexOf(observer) === -1) {\n this.#observers.push(observer);\n\n // Stop the query from being garbage collected\n this.clearGcTimeout();\n this.#cache.notify({\n type: 'observerAdded',\n query: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n if (this.#observers.indexOf(observer) !== -1) {\n this.#observers = this.#observers.filter(x => x !== observer);\n if (!this.#observers.length) {\n // If the transport layer does not support cancellation\n // we'll let the query continue so the result can be cached\n if (this.#retryer) {\n if (this.#abortSignalConsumed) {\n this.#retryer.cancel({\n revert: true\n });\n } else {\n this.#retryer.cancelRetry();\n }\n }\n this.scheduleGc();\n }\n this.#cache.notify({\n type: 'observerRemoved',\n query: this,\n observer\n });\n }\n }\n getObserversCount() {\n return this.#observers.length;\n }\n invalidate() {\n if (!this.state.isInvalidated) {\n this.#dispatch({\n type: 'invalidate'\n });\n }\n }\n fetch(options, fetchOptions) {\n if (this.state.fetchStatus !== 'idle') {\n if (this.state.dataUpdatedAt && fetchOptions?.cancelRefetch) {\n // Silently cancel current fetch if the user wants to cancel refetches\n this.cancel({\n silent: true\n });\n } else if (this.#promise) {\n // make sure that retries that were potentially cancelled due to unmounts can continue\n this.#retryer?.continueRetry();\n // Return current promise if we are already fetching\n return this.#promise;\n }\n }\n\n // Update config if passed, otherwise the config from the last execution is used\n if (options) {\n this.#setOptions(options);\n }\n\n // Use the options from the first observer with a query function if no function is found.\n // This can happen when the query is hydrated or created with setQueryData.\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(`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 const abortController = new AbortController();\n\n // Create query function context\n const queryFnContext = {\n queryKey: this.queryKey,\n meta: this.meta\n };\n\n // Adds an enumerable signal property to the object that\n // which sets abortSignalConsumed to true when the signal\n // is read.\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\n // Create fetch function\n const fetchFn = () => {\n if (!this.options.queryFn) {\n return Promise.reject(new Error('Missing queryFn'));\n }\n this.#abortSignalConsumed = false;\n return this.options.queryFn(queryFnContext);\n };\n\n // Trigger behavior hook\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(context);\n\n // Store state in case the current fetch needs to be reverted\n this.#revertState = this.state;\n\n // Set to fetching state if not already in it\n if (this.state.fetchStatus === 'idle' || this.state.fetchMeta !== context.fetchOptions?.meta) {\n this.#dispatch({\n type: 'fetch',\n meta: context.fetchOptions?.meta\n });\n }\n const onError = error => {\n // Optimistically update state if needed\n if (!(isCancelledError(error) && error.silent)) {\n this.#dispatch({\n type: 'error',\n error: error\n });\n }\n if (!isCancelledError(error)) {\n // Notify cache callback\n this.#cache.config.onError?.(error, this);\n this.#cache.config.onSettled?.(this.state.data, error, this);\n }\n if (!this.isFetchingOptimistic) {\n // Schedule query gc after fetching\n this.scheduleGc();\n }\n this.isFetchingOptimistic = false;\n };\n\n // Try to fetch the data\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(`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 onError(new Error('undefined'));\n return;\n }\n this.setData(data);\n\n // Notify cache callback\n this.#cache.config.onSuccess?.(data, this);\n this.#cache.config.onSettled?.(data, this.state.error, this);\n if (!this.isFetchingOptimistic) {\n // Schedule query gc after fetching\n this.scheduleGc();\n }\n this.isFetchingOptimistic = false;\n },\n onError,\n onFail: (failureCount, error) => {\n this.#dispatch({\n type: 'failed',\n failureCount,\n error\n });\n },\n onPause: () => {\n this.#dispatch({\n type: 'pause'\n });\n },\n onContinue: () => {\n this.#dispatch({\n type: 'continue'\n });\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 {\n ...this.#revertState\n };\n }\n return {\n ...state,\n error: 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(action);\n });\n this.#cache.notify({\n query: this,\n type: 'updated',\n action\n });\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}\n\nexport { Query };\n//# sourceMappingURL=query.mjs.map\n","import { hashQueryKeyByOptions, matchQuery } from './utils.mjs';\nimport { Query } from './query.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { Subscribable } from './subscribable.mjs';\n\n// CLASS\n\nclass QueryCache extends Subscribable {\n #queries;\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = config.createStore?.() ?? new Map();\n }\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({\n type: 'removed',\n query\n });\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 if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n return this.getAll().find(query => matchQuery(filters, query));\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}\n\nexport { QueryCache };\n//# sourceMappingURL=queryCache.mjs.map\n","import { notifyManager } from './notifyManager.mjs';\nimport { Removable } from './removable.mjs';\nimport { createRetryer, canFetch } from './retryer.mjs';\n\n// TYPES\n\n// CLASS\n\nclass Mutation extends Removable {\n #observers;\n #mutationCache;\n #retryer;\n constructor(config) {\n super();\n this.options = config.options;\n this.mutationId = config.mutationId;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.updateGcTime(this.options.gcTime);\n this.scheduleGc();\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (this.#observers.indexOf(observer) === -1) {\n this.#observers.push(observer);\n\n // Stop the mutation from being garbage collected\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() ??\n // 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({\n type: 'failed',\n failureCount,\n error\n });\n },\n onPause: () => {\n this.#dispatch({\n type: 'pause'\n });\n },\n onContinue: () => {\n this.#dispatch({\n type: 'continue'\n });\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({\n type: 'pending',\n variables\n });\n // Notify cache callback\n await this.#mutationCache.config.onMutate?.(variables, this);\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\n // Notify cache callback\n await this.#mutationCache.config.onSuccess?.(data, variables, this.state.context, this);\n await this.options.onSuccess?.(data, variables, this.state.context);\n\n // Notify cache callback\n await this.#mutationCache.config.onSettled?.(data, null, this.state.variables, this.state.context, this);\n await this.options.onSettled?.(data, null, variables, this.state.context);\n this.#dispatch({\n type: 'success',\n data\n });\n return data;\n } catch (error) {\n try {\n // Notify cache callback\n await this.#mutationCache.config.onError?.(error, variables, this.state.context, this);\n await this.options.onError?.(error, variables, this.state.context);\n\n // Notify cache callback\n await this.#mutationCache.config.onSettled?.(undefined, error, this.state.variables, this.state.context, this);\n await this.options.onSettled?.(undefined, error, variables, this.state.context);\n throw error;\n } finally {\n this.#dispatch({\n type: 'error',\n error: error\n });\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: undefined,\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: undefined,\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: undefined,\n data: undefined,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: 'idle',\n variables: undefined,\n submittedAt: 0\n };\n}\n\nexport { Mutation, getDefaultState };\n//# sourceMappingURL=mutation.mjs.map\n","import { notifyManager } from './notifyManager.mjs';\nimport { Mutation } from './mutation.mjs';\nimport { matchMutation, noop } from './utils.mjs';\nimport { Subscribable } from './subscribable.mjs';\n\n// TYPES\n\n// CLASS\n\nclass MutationCache extends Subscribable {\n #mutations;\n #mutationId;\n #resuming;\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = [];\n this.#mutationId = 0;\n }\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({\n type: 'added',\n mutation\n });\n }\n remove(mutation) {\n this.#mutations = this.#mutations.filter(x => x !== mutation);\n this.notify({\n type: 'removed',\n mutation\n });\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 if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n return this.#mutations.find(mutation => matchMutation(filters, mutation));\n }\n findAll(filters = {}) {\n return this.#mutations.filter(mutation => matchMutation(filters, mutation));\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(() => pausedMutations.reduce((promise, mutation) => promise.then(() => mutation.continue().catch(noop)), Promise.resolve()));\n }).then(() => {\n this.#resuming = undefined;\n });\n return this.#resuming;\n }\n}\n\nexport { MutationCache };\n//# sourceMappingURL=mutationCache.mjs.map\n","import { addToStart, addToEnd } from './utils.mjs';\n\nfunction infiniteQueryBehavior() {\n return {\n onFetch: context => {\n context.fetchFn = () => {\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 let newPageParams = oldPageParams;\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\n // Get query function\n const queryFn = context.options.queryFn || (() => Promise.reject(new Error('Missing queryFn')));\n const buildNewPages = (pages, param, page, previous) => {\n const {\n maxPages\n } = context.options;\n if (previous) {\n newPageParams = addToStart(newPageParams, param, maxPages);\n return addToStart(pages, page, maxPages);\n }\n newPageParams = addToEnd(newPageParams, param, maxPages);\n return addToEnd(pages, page, maxPages);\n };\n\n // Create function to fetch a page\n const fetchPage = (pages, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (typeof param === 'undefined' && pages.length) {\n return Promise.resolve(pages);\n }\n const queryFnContext = {\n queryKey: context.queryKey,\n pageParam: param,\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext);\n const queryFnResult = queryFn(queryFnContext);\n const promise = Promise.resolve(queryFnResult).then(page => buildNewPages(pages, param, page, previous));\n return promise;\n };\n let promise;\n\n // Fetch first page?\n if (!oldPages.length) {\n promise = fetchPage([], options.defaultPageParam);\n }\n\n // fetch next / previous page?\n else if (direction) {\n const previous = direction === 'backward';\n const param = previous ? getPreviousPageParam(options, oldPages) : getNextPageParam(options, oldPages);\n promise = fetchPage(oldPages, param, previous);\n }\n\n // Refetch pages\n else {\n newPageParams = [];\n\n // Fetch first page\n promise = fetchPage([], oldPageParams[0]);\n\n // Fetch remaining pages\n for (let i = 1; i < oldPages.length; i++) {\n promise = promise.then(pages => {\n const param = getNextPageParam(options, pages);\n return fetchPage(pages, param);\n });\n }\n }\n const finalPromise = promise.then(pages => ({\n pages,\n pageParams: newPageParams\n }));\n return finalPromise;\n };\n }\n };\n}\nfunction getNextPageParam(options, pages) {\n return options.getNextPageParam(pages[pages.length - 1], pages);\n}\nfunction getPreviousPageParam(options, pages) {\n return options.getPreviousPageParam?.(pages[0], pages);\n}\n\n/**\n * Checks if there is a next page.\n */\nfunction hasNextPage(options, pages) {\n if (!pages) return false;\n return typeof getNextPageParam(options, pages) !== 'undefined';\n}\n\n/**\n * Checks if there is a previous page.\n */\nfunction hasPreviousPage(options, pages) {\n if (!pages || !options.getPreviousPageParam) return false;\n return typeof getPreviousPageParam(options, pages) !== 'undefined';\n}\n\nexport { hasNextPage, hasPreviousPage, infiniteQueryBehavior };\n//# sourceMappingURL=infiniteQueryBehavior.mjs.map\n","import { functionalUpdate, noop, hashKey, partialMatchKey, hashQueryKeyByOptions } from './utils.mjs';\nimport { QueryCache } from './queryCache.mjs';\nimport { MutationCache } from './mutationCache.mjs';\nimport { focusManager } from './focusManager.mjs';\nimport { onlineManager } from './onlineManager.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { infiniteQueryBehavior } from './infiniteQueryBehavior.mjs';\n\n// CLASS\n\nclass QueryClient {\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 = new Map();\n this.#mutationDefaults = new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1) 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) return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = undefined;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = undefined;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({\n ...filters,\n fetchStatus: 'fetching'\n }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({\n ...filters,\n status: 'pending'\n }).length;\n }\n getQueryData(queryKey) {\n return this.#queryCache.find({\n queryKey\n })?.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(({\n queryKey,\n state\n }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const query = this.#queryCache.find({\n queryKey\n });\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (typeof data === 'undefined') {\n return undefined;\n }\n const defaultedOptions = this.defaultQueryOptions({\n queryKey\n });\n return this.#queryCache.build(this, defaultedOptions).setData(data, {\n ...options,\n manual: true\n });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(() => this.getQueryCache().findAll(filters).map(({\n queryKey\n }) => [queryKey, this.setQueryData(queryKey, updater, options)]));\n }\n getQueryState(queryKey) {\n return this.#queryCache.find({\n queryKey\n })?.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 if (typeof cancelOptions.revert === 'undefined') {\n cancelOptions.revert = true;\n }\n const promises = notifyManager.batch(() => this.#queryCache.findAll(filters).map(query => query.cancel(cancelOptions)));\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 promises = notifyManager.batch(() => this.#queryCache.findAll(filters).filter(query => !query.isDisabled()).map(query => query.fetch(undefined, {\n ...options,\n cancelRefetch: options?.cancelRefetch ?? true\n })));\n let promise = Promise.all(promises).then(noop);\n if (!options?.throwOnError) {\n promise = promise.catch(noop);\n }\n return promise;\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n\n // https://github.com/tannerlinsley/react-query/issues/652\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();\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 = {\n ...result,\n ...queryDefault.defaultOptions\n };\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 = {\n ...result,\n ...queryDefault.defaultOptions\n };\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(defaultedOptions.queryKey, defaultedOptions);\n }\n\n // dependent default values\n if (typeof defaultedOptions.refetchOnReconnect === 'undefined') {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== 'always';\n }\n if (typeof defaultedOptions.throwErrors === 'undefined') {\n defaultedOptions.throwErrors = !!defaultedOptions.suspense;\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}\n\nexport { QueryClient };\n//# sourceMappingURL=queryClient.mjs.map\n","import { shallowEqualObjects, noop, isServer, isValidTimeout, timeUntilStale, replaceData } from './utils.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { focusManager } from './focusManager.mjs';\nimport { Subscribable } from './subscribable.mjs';\nimport { canFetch, isCancelledError } from './retryer.mjs';\n\nclass QueryObserver extends Subscribable {\n #client;\n #currentQuery = undefined;\n #currentQueryInitialState = undefined;\n #currentResult = undefined;\n #currentResultState;\n #currentResultOptions;\n #previousQueryResult;\n #selectError;\n #selectFn;\n #selectResult;\n #staleTimeoutId;\n #refetchIntervalId;\n #currentRefetchInterval;\n #trackedProps = new Set();\n constructor(client, options) {\n super();\n this.#client = client;\n this.options = options;\n this.#selectError = null;\n this.bindMethods();\n this.setOptions(options);\n }\n bindMethods() {\n this.refetch = this.refetch.bind(this);\n }\n onSubscribe() {\n if (this.listeners.length === 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.listeners.length) {\n this.destroy();\n }\n }\n shouldFetchOnReconnect() {\n return shouldFetchOn(this.#currentQuery, this.options, this.options.refetchOnReconnect);\n }\n shouldFetchOnWindowFocus() {\n return shouldFetchOn(this.#currentQuery, this.options, this.options.refetchOnWindowFocus);\n }\n destroy() {\n this.listeners = [];\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\n // Keep previous query key if the user does not supply one\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey;\n }\n this.#updateQuery();\n const mounted = this.hasListeners();\n\n // Fetch if there are subscribers\n if (mounted && shouldFetchOptionally(this.#currentQuery, prevQuery, this.options, prevOptions)) {\n this.#executeFetch();\n }\n\n // Update result\n this.#updateResult(notifyOptions);\n\n // Update stale interval if needed\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\n // Update refetch interval if needed\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 return this.createResult(query, options);\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({\n ...options\n } = {}) {\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 // Make sure we reference the latest query as the current one might have been removed\n this.#updateQuery();\n\n // Fetch\n let promise = this.#currentQuery.fetch(this.options, fetchOptions);\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(this.#currentResult.dataUpdatedAt, this.options.staleTime);\n\n // The timeout is sometimes triggered 1 ms before the stale time expiration.\n // To mitigate this issue we always add 1 ms to the timeout.\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.#currentResult.data, 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 = undefined;\n }\n }\n #clearRefetchInterval() {\n if (this.#refetchIntervalId) {\n clearInterval(this.#refetchIntervalId);\n this.#refetchIntervalId = undefined;\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 prevQueryResult = queryChange ? this.#currentResult : this.#previousQueryResult;\n const {\n state\n } = query;\n let {\n error,\n errorUpdatedAt,\n fetchStatus,\n status\n } = state;\n let isPlaceholderData = false;\n let data;\n\n // Optimistically set result in fetching state if needed\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\n // Select data if needed\n if (options.select && typeof state.data !== 'undefined') {\n // Memoize select result\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 }\n // Use query data\n else {\n data = state.data;\n }\n\n // Show placeholder data if needed\n if (typeof options.placeholderData !== 'undefined' && typeof data === 'undefined' && status === 'pending') {\n let placeholderData;\n\n // Memoize placeholder data\n if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {\n placeholderData = prevResult.data;\n } else {\n placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData(prevQueryResult?.data) : 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(prevResult?.data, placeholderData, options);\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\n // Only notify and update result if something has changed\n if (shallowEqualObjects(nextResult, prevResult)) {\n return;\n }\n this.#currentResult = nextResult;\n\n // Determine which callbacks to trigger\n const defaultNotifyOptions = {};\n const shouldNotifyListeners = () => {\n if (!prevResult) {\n return true;\n }\n const {\n notifyOnChangeProps\n } = this.options;\n if (notifyOnChangeProps === 'all' || !notifyOnChangeProps && !this.#trackedProps.size) {\n return true;\n }\n const includedProps = new Set(notifyOnChangeProps ?? this.#trackedProps);\n if (this.options.throwErrors) {\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({\n ...defaultNotifyOptions,\n ...notifyOptions\n });\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 this.#previousQueryResult = this.#currentResult;\n if (this.hasListeners()) {\n prevQuery?.removeObserver(this);\n query.addObserver(this);\n }\n }\n onQueryUpdate(action) {\n const notifyOptions = {};\n if (action.type === 'success') {\n notifyOptions.onSuccess = !action.manual;\n } else if (action.type === 'error' && !isCancelledError(action.error)) {\n notifyOptions.onError = true;\n }\n this.#updateResult(notifyOptions);\n if (this.hasListeners()) {\n this.#updateTimers();\n }\n }\n #notify(notifyOptions) {\n notifyManager.batch(() => {\n // First trigger the configuration callbacks\n if (notifyOptions.onSuccess) {\n this.options.onSuccess?.(this.#currentResult.data);\n this.options.onSettled?.(this.#currentResult.data, null);\n } else if (notifyOptions.onError) {\n this.options.onError?.(this.#currentResult.error);\n this.options.onSettled?.(undefined, this.#currentResult.error);\n }\n\n // Then trigger the listeners\n if (notifyOptions.listeners) {\n this.listeners.forEach(listener => {\n listener(this.#currentResult);\n });\n }\n\n // Then the cache listeners\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}\n\nexport { QueryObserver };\n//# sourceMappingURL=queryObserver.mjs.map\n","import { notifyManager } from './notifyManager.mjs';\nimport { QueryObserver } from './queryObserver.mjs';\nimport { Subscribable } from './subscribable.mjs';\n\nfunction difference(array1, array2) {\n return array1.filter(x => array2.indexOf(x) === -1);\n}\nfunction replaceAt(array, index, value) {\n const copy = array.slice(0);\n copy[index] = value;\n return copy;\n}\nclass QueriesObserver extends Subscribable {\n #client;\n #result;\n #queries;\n #observers;\n constructor(client, queries) {\n super();\n this.#client = client;\n this.#queries = [];\n this.#result = [];\n this.#observers = [];\n if (queries) {\n this.setQueries(queries);\n }\n }\n onSubscribe() {\n if (this.listeners.length === 1) {\n this.#observers.forEach(observer => {\n observer.subscribe(result => {\n this.#onUpdate(observer, result);\n });\n });\n }\n }\n onUnsubscribe() {\n if (!this.listeners.length) {\n this.destroy();\n }\n }\n destroy() {\n this.listeners = [];\n this.#observers.forEach(observer => {\n observer.destroy();\n });\n }\n setQueries(queries, notifyOptions) {\n this.#queries = queries;\n notifyManager.batch(() => {\n const prevObservers = this.#observers;\n const newObserverMatches = this.#findMatchingObservers(this.#queries);\n\n // set options for the new observers to notify of changes\n newObserverMatches.forEach(match => match.observer.setOptions(match.defaultedQueryOptions, notifyOptions));\n const newObservers = newObserverMatches.map(match => match.observer);\n const newResult = newObservers.map(observer => observer.getCurrentResult());\n const hasIndexChange = newObservers.some((observer, index) => observer !== prevObservers[index]);\n if (prevObservers.length === newObservers.length && !hasIndexChange) {\n return;\n }\n this.#observers = newObservers;\n this.#result = newResult;\n if (!this.hasListeners()) {\n return;\n }\n difference(prevObservers, newObservers).forEach(observer => {\n observer.destroy();\n });\n difference(newObservers, prevObservers).forEach(observer => {\n observer.subscribe(result => {\n this.#onUpdate(observer, result);\n });\n });\n this.#notify();\n });\n }\n getCurrentResult() {\n return this.#result;\n }\n getQueries() {\n return this.#observers.map(observer => observer.getCurrentQuery());\n }\n getObservers() {\n return this.#observers;\n }\n getOptimisticResult(queries) {\n return this.#findMatchingObservers(queries).map(match => match.observer.getOptimisticResult(match.defaultedQueryOptions));\n }\n #findMatchingObservers(queries) {\n const prevObservers = this.#observers;\n const defaultedQueryOptions = queries.map(options => this.#client.defaultQueryOptions(options));\n const matchingObservers = defaultedQueryOptions.flatMap(defaultedOptions => {\n const match = prevObservers.find(observer => observer.options.queryHash === defaultedOptions.queryHash);\n if (match != null) {\n return [{\n defaultedQueryOptions: defaultedOptions,\n observer: match\n }];\n }\n return [];\n });\n const matchedQueryHashes = matchingObservers.map(match => match.defaultedQueryOptions.queryHash);\n const unmatchedQueries = defaultedQueryOptions.filter(defaultedOptions => !matchedQueryHashes.includes(defaultedOptions.queryHash));\n const getObserver = options => {\n const defaultedOptions = this.#client.defaultQueryOptions(options);\n const currentObserver = this.#observers.find(o => o.options.queryHash === defaultedOptions.queryHash);\n return currentObserver ?? new QueryObserver(this.#client, defaultedOptions);\n };\n const newOrReusedObservers = unmatchedQueries.map(options => {\n return {\n defaultedQueryOptions: options,\n observer: getObserver(options)\n };\n });\n const sortMatchesByOrderOfQueries = (a, b) => defaultedQueryOptions.indexOf(a.defaultedQueryOptions) - defaultedQueryOptions.indexOf(b.defaultedQueryOptions);\n return matchingObservers.concat(newOrReusedObservers).sort(sortMatchesByOrderOfQueries);\n }\n #onUpdate(observer, result) {\n const index = this.#observers.indexOf(observer);\n if (index !== -1) {\n this.#result = replaceAt(this.#result, index, result);\n this.#notify();\n }\n }\n #notify() {\n notifyManager.batch(() => {\n this.listeners.forEach(listener => {\n listener(this.#result);\n });\n });\n }\n}\n\nexport { QueriesObserver };\n//# sourceMappingURL=queriesObserver.mjs.map\n","import { QueryObserver } from './queryObserver.mjs';\nimport { infiniteQueryBehavior, hasNextPage, hasPreviousPage } from './infiniteQueryBehavior.mjs';\n\nclass InfiniteQueryObserver extends QueryObserver {\n // Type override\n\n // Type override\n\n // Type override\n\n // eslint-disable-next-line @typescript-eslint/no-useless-constructor\n constructor(client, options) {\n super(client, options);\n }\n bindMethods() {\n super.bindMethods();\n this.fetchNextPage = this.fetchNextPage.bind(this);\n this.fetchPreviousPage = this.fetchPreviousPage.bind(this);\n }\n setOptions(options, notifyOptions) {\n super.setOptions({\n ...options,\n behavior: infiniteQueryBehavior()\n }, notifyOptions);\n }\n getOptimisticResult(options) {\n options.behavior = infiniteQueryBehavior();\n return super.getOptimisticResult(options);\n }\n fetchNextPage(options = {}) {\n return this.fetch({\n ...options,\n meta: {\n fetchMore: {\n direction: 'forward'\n }\n }\n });\n }\n fetchPreviousPage({\n ...options\n } = {}) {\n return this.fetch({\n ...options,\n meta: {\n fetchMore: {\n direction: 'backward'\n }\n }\n });\n }\n createResult(query, options) {\n const {\n state\n } = query;\n const result = super.createResult(query, options);\n const {\n isFetching,\n isRefetching\n } = result;\n const isFetchingNextPage = isFetching && state.fetchMeta?.fetchMore?.direction === 'forward';\n const isFetchingPreviousPage = isFetching && state.fetchMeta?.fetchMore?.direction === 'backward';\n return {\n ...result,\n fetchNextPage: this.fetchNextPage,\n fetchPreviousPage: this.fetchPreviousPage,\n hasNextPage: hasNextPage(options, state.data?.pages),\n hasPreviousPage: hasPreviousPage(options, state.data?.pages),\n isFetchingNextPage,\n isFetchingPreviousPage,\n isRefetching: isRefetching && !isFetchingNextPage && !isFetchingPreviousPage\n };\n }\n}\n\nexport { InfiniteQueryObserver };\n//# sourceMappingURL=infiniteQueryObserver.mjs.map\n","import { getDefaultState } from './mutation.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { Subscribable } from './subscribable.mjs';\nimport { shallowEqualObjects } from './utils.mjs';\n\n// TYPES\n\n// CLASS\n\nclass MutationObserver extends Subscribable {\n #client;\n #currentResult = undefined;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\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 }\n onUnsubscribe() {\n if (!this.listeners.length) {\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 = undefined;\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 // First trigger the mutate callbacks\n if (this.#mutateOptions && this.hasListeners()) {\n if (action?.type === 'success') {\n this.#mutateOptions.onSuccess?.(action.data, this.#currentResult.variables, this.#currentResult.context);\n this.#mutateOptions.onSettled?.(action.data, null, this.#currentResult.variables, this.#currentResult.context);\n } else if (action?.type === 'error') {\n this.#mutateOptions.onError?.(action.error, this.#currentResult.variables, this.#currentResult.context);\n this.#mutateOptions.onSettled?.(undefined, action.error, this.#currentResult.variables, this.#currentResult.context);\n }\n }\n\n // Then trigger the listeners\n this.listeners.forEach(listener => {\n listener(this.#currentResult);\n });\n });\n }\n}\n\nexport { MutationObserver };\n//# sourceMappingURL=mutationObserver.mjs.map\n","// TYPES\n\n// FUNCTIONS\n\nfunction dehydrateMutation(mutation) {\n return {\n mutationKey: mutation.options.mutationKey,\n state: mutation.state\n };\n}\n\n// Most config is not dehydrated but instead meant to configure again when\n// consuming the de/rehydrated data, typically with useQuery on the client.\n// Sometimes it might make sense to prefetch data on the server and include\n// in the html-payload, but not consume it on the initial render.\nfunction dehydrateQuery(query) {\n return {\n state: query.state,\n queryKey: query.queryKey,\n queryHash: query.queryHash\n };\n}\nfunction defaultShouldDehydrateMutation(mutation) {\n return mutation.state.isPaused;\n}\nfunction defaultShouldDehydrateQuery(query) {\n return query.state.status === 'success';\n}\nfunction dehydrate(client, options = {}) {\n const mutations = [];\n const queries = [];\n if (options.dehydrateMutations !== false) {\n const shouldDehydrateMutation = options.shouldDehydrateMutation || defaultShouldDehydrateMutation;\n client.getMutationCache().getAll().forEach(mutation => {\n if (shouldDehydrateMutation(mutation)) {\n mutations.push(dehydrateMutation(mutation));\n }\n });\n }\n if (options.dehydrateQueries !== false) {\n const shouldDehydrateQuery = options.shouldDehydrateQuery || defaultShouldDehydrateQuery;\n client.getQueryCache().getAll().forEach(query => {\n if (shouldDehydrateQuery(query)) {\n queries.push(dehydrateQuery(query));\n }\n });\n }\n return {\n mutations,\n queries\n };\n}\nfunction hydrate(client, dehydratedState, options) {\n if (typeof dehydratedState !== 'object' || dehydratedState === null) {\n return;\n }\n const mutationCache = client.getMutationCache();\n const queryCache = client.getQueryCache();\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const mutations = dehydratedState.mutations || [];\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const queries = dehydratedState.queries || [];\n mutations.forEach(dehydratedMutation => {\n mutationCache.build(client, {\n ...options?.defaultOptions?.mutations,\n mutationKey: dehydratedMutation.mutationKey\n }, dehydratedMutation.state);\n });\n queries.forEach(dehydratedQuery => {\n const query = queryCache.get(dehydratedQuery.queryHash);\n\n // Reset fetch status to idle in the dehydrated state to avoid\n // query being stuck in fetching state upon hydration\n const dehydratedQueryState = {\n ...dehydratedQuery.state,\n fetchStatus: 'idle'\n };\n\n // Do not hydrate if an existing query exists with newer data\n if (query) {\n if (query.state.dataUpdatedAt < dehydratedQueryState.dataUpdatedAt) {\n query.setState(dehydratedQueryState);\n }\n return;\n }\n\n // Restore query\n queryCache.build(client, {\n ...options?.defaultOptions?.queries,\n queryKey: dehydratedQuery.queryKey,\n queryHash: dehydratedQuery.queryHash\n }, dehydratedQueryState);\n });\n}\n\nexport { defaultShouldDehydrateMutation, defaultShouldDehydrateQuery, dehydrate, hydrate };\n//# sourceMappingURL=hydration.mjs.map\n","import { isRef, unref } from 'vue-demi'\nimport type { MaybeRefDeep } from './types'\n\nexport const VUE_QUERY_CLIENT = 'VUE_QUERY_CLIENT'\n\nexport function getClientKey(key?: string) {\n const suffix = key ? `:${key}` : ''\n return `${VUE_QUERY_CLIENT}${suffix}`\n}\n\nexport function updateState(\n state: Record<string, unknown>,\n update: Record<string, any>,\n): void {\n Object.keys(state).forEach((key) => {\n state[key] = update[key]\n })\n}\n\nexport function cloneDeep<T>(\n value: MaybeRefDeep<T>,\n customizer?: (val: MaybeRefDeep<T>) => T | undefined,\n): T {\n if (customizer) {\n const result = customizer(value)\n // If it's a ref of undefined, return undefined\n if (result === undefined && isRef(value)) {\n return result as T\n }\n if (result !== undefined) {\n return result\n }\n }\n\n if (Array.isArray(value)) {\n return value.map((val) => cloneDeep(val, customizer)) as unknown as T\n }\n\n if (typeof value === 'object' && isPlainObject(value)) {\n const entries = Object.entries(value).map(([key, val]) => [\n key,\n cloneDeep(val, customizer),\n ])\n return Object.fromEntries(entries)\n }\n\n return value as T\n}\n\nexport function cloneDeepUnref<T>(obj: MaybeRefDeep<T>): T {\n return cloneDeep(obj, (val) => {\n if (isRef(val)) {\n return cloneDeepUnref(unref(val))\n }\n\n return undefined\n })\n}\n\nfunction isPlainObject(value: unknown): value is Object {\n if (Object.prototype.toString.call(value) !== '[object Object]') {\n return false\n }\n\n const prototype = Object.getPrototypeOf(value)\n return prototype === null || prototype === Object.prototype\n}\n","import { getCurrentInstance, inject } from 'vue-demi'\n\nimport type { QueryClient } from './queryClient'\nimport { getClientKey } from './utils'\n\nexport function useQueryClient(id = ''): QueryClient {\n const vm = getCurrentInstance()?.proxy\n\n if (!vm) {\n throw new Error('vue-query hooks can only be used inside setup() function.')\n }\n\n const key = getClientKey(id)\n const queryClient = inject<QueryClient>(key)\n\n if (!queryClient) {\n throw new Error(\n \"No 'queryClient' found in Vue context, use 'VueQueryPlugin' to properly initialize the library.\",\n )\n }\n\n return queryClient\n}\n","import { QueryCache as QC } from '@tanstack/query-core'\nimport type {\n Query,\n QueryFilters,\n WithRequired,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep } from './types'\nimport { cloneDeepUnref } from './utils'\n\nexport class QueryCache extends QC {\n find<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData>(\n filters: MaybeRefDeep<WithRequired<QueryFilters, 'queryKey'>>,\n ): Query<TQueryFnData, TError, TData> | undefined {\n return super.find(cloneDeepUnref(filters))\n }\n\n findAll(filters: MaybeRefDeep<QueryFilters> = {}): Query[] {\n return super.findAll(cloneDeepUnref(filters))\n }\n}\n","import { MutationCache as MC } from '@tanstack/query-core'\nimport type {\n Mutation,\n MutationFilters,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep } from './types'\nimport { cloneDeepUnref } from './utils'\n\nexport class MutationCache extends MC {\n find<\n TData = unknown,\n TError = DefaultError,\n TVariables = any,\n TContext = unknown,\n >(\n filters: MaybeRefDeep<MutationFilters>,\n ): Mutation<TData, TError, TVariables, TContext> | undefined {\n return super.find(cloneDeepUnref(filters))\n }\n\n findAll(filters: MaybeRefDeep<MutationFilters> = {}): Mutation[] {\n return super.findAll(cloneDeepUnref(filters))\n }\n}\n","import { ref } from 'vue-demi'\nimport { QueryClient as QC } from '@tanstack/query-core'\nimport type {\n QueryKey,\n QueryClientConfig,\n SetDataOptions,\n ResetOptions,\n CancelOptions,\n InvalidateQueryFilters,\n InvalidateOptions,\n RefetchQueryFilters,\n RefetchOptions,\n FetchQueryOptions,\n FetchInfiniteQueryOptions,\n InfiniteData,\n DefaultOptions,\n QueryObserverOptions,\n MutationKey,\n MutationObserverOptions,\n QueryFilters,\n MutationFilters,\n QueryState,\n Updater,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep } from './types'\nimport { cloneDeepUnref } from './utils'\nimport { QueryCache } from './queryCache'\nimport { MutationCache } from './mutationCache'\n\nexport class QueryClient extends QC {\n constructor(config: MaybeRefDeep<QueryClientConfig> = {}) {\n const unreffedConfig = cloneDeepUnref(config)\n const vueQueryConfig: QueryClientConfig = {\n defaultOptions: unreffedConfig.defaultOptions,\n queryCache: unreffedConfig.queryCache || new QueryCache(),\n mutationCache: unreffedConfig.mutationCache || new MutationCache(),\n }\n super(vueQueryConfig)\n }\n\n isRestoring = ref(false)\n\n isFetching(filters: MaybeRefDeep<QueryFilters> = {}): number {\n return super.isFetching(cloneDeepUnref(filters))\n }\n\n isMutating(filters: MaybeRefDeep<MutationFilters> = {}): number {\n return super.isMutating(cloneDeepUnref(filters))\n }\n\n getQueryData<TData = unknown>(\n queryKey: MaybeRefDeep<QueryKey>,\n ): TData | undefined {\n return super.getQueryData(cloneDeepUnref(queryKey))\n }\n\n getQueriesData<TData = unknown>(\n filters: MaybeRefDeep<QueryFilters>,\n ): [QueryKey, TData | undefined][] {\n return super.getQueriesData(cloneDeepUnref(filters))\n }\n\n setQueryData<TData>(\n queryKey: MaybeRefDeep<QueryKey>,\n updater: Updater<TData | undefined, TData | undefined>,\n options: MaybeRefDeep<SetDataOptions> = {},\n ): TData | undefined {\n return super.setQueryData(\n cloneDeepUnref(queryKey),\n updater,\n cloneDeepUnref(options),\n )\n }\n\n setQueriesData<TData>(\n filters: MaybeRefDeep<QueryFilters>,\n updater: Updater<TData | undefined, TData | undefined>,\n options: MaybeRefDeep<SetDataOptions> = {},\n ): [QueryKey, TData | undefined][] {\n return super.setQueriesData(\n cloneDeepUnref(filters),\n updater,\n cloneDeepUnref(options),\n )\n }\n\n getQueryState<TData = unknown, TError = DefaultError>(\n queryKey: MaybeRefDeep<QueryKey>,\n ): QueryState<TData, TError> | undefined {\n return super.getQueryState(cloneDeepUnref(queryKey))\n }\n\n removeQueries(filters: MaybeRefDeep<QueryFilters> = {}): void {\n return super.removeQueries(cloneDeepUnref(filters))\n }\n\n resetQueries(\n filters: MaybeRefDeep<QueryFilters> = {},\n options: MaybeRefDeep<ResetOptions> = {},\n ): Promise<void> {\n return super.resetQueries(cloneDeepUnref(filters), cloneDeepUnref(options))\n }\n\n cancelQueries(\n filters: MaybeRefDeep<QueryFilters> = {},\n options: MaybeRefDeep<CancelOptions> = {},\n ): Promise<void> {\n return super.cancelQueries(cloneDeepUnref(filters), cloneDeepUnref(options))\n }\n\n invalidateQueries(\n filters: MaybeRefDeep<InvalidateQueryFilters> = {},\n options: MaybeRefDeep<InvalidateOptions> = {},\n ): Promise<void> {\n return super.invalidateQueries(\n cloneDeepUnref(filters),\n cloneDeepUnref(options),\n )\n }\n\n refetchQueries(\n filters: MaybeRefDeep<RefetchQueryFilters> = {},\n options: MaybeRefDeep<RefetchOptions> = {},\n ): Promise<void> {\n return super.refetchQueries(\n cloneDeepUnref(filters),\n cloneDeepUnref(options),\n )\n }\n\n fetchQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n ): Promise<TData>\n fetchQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: MaybeRefDeep<\n FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n >,\n ): Promise<TData> {\n return super.fetchQuery(cloneDeepUnref(options))\n }\n\n prefetchQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n ): Promise<void>\n prefetchQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: MaybeRefDeep<\n FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n >,\n ): Promise<void> {\n return super.prefetchQuery(cloneDeepUnref(options))\n }\n\n fetchInfiniteQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n ): Promise<InfiniteData<TData>>\n fetchInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: MaybeRefDeep<\n FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >\n >,\n ): Promise<InfiniteData<TData>> {\n return super.fetchInfiniteQuery(cloneDeepUnref(options))\n }\n\n prefetchInfiniteQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n ): Promise<void>\n prefetchInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: MaybeRefDeep<\n FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >\n >,\n ): Promise<void> {\n return super.prefetchInfiniteQuery(cloneDeepUnref(options))\n }\n\n setDefaultOptions(options: MaybeRefDeep<DefaultOptions>): void {\n super.setDefaultOptions(cloneDeepUnref(options))\n }\n\n setQueryDefaults(\n queryKey: MaybeRefDeep<QueryKey>,\n options: MaybeRefDeep<\n Omit<QueryObserverOptions<unknown, any, any, any>, 'queryKey'>\n >,\n ): void {\n super.setQueryDefaults(cloneDeepUnref(queryKey), cloneDeepUnref(options))\n }\n\n getQueryDefaults(\n queryKey: MaybeRefDeep<QueryKey>,\n ): QueryObserverOptions<any, any, any, any, any> {\n return super.getQueryDefaults(cloneDeepUnref(queryKey))\n }\n\n setMutationDefaults(\n mutationKey: MaybeRefDeep<MutationKey>,\n options: MaybeRefDeep<MutationObserverOptions<any, any, any, any>>,\n ): void {\n super.setMutationDefaults(\n cloneDeepUnref(mutationKey),\n cloneDeepUnref(options),\n )\n }\n\n getMutationDefaults(\n mutationKey: MaybeRefDeep<MutationKey>,\n ): MutationObserverOptions<any, any, any, any> {\n return super.getMutationDefaults(cloneDeepUnref(mutationKey))\n }\n}\n","export function getDevtoolsGlobalHook() {\n return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;\n}\nexport function getTarget() {\n // @ts-ignore\n return (typeof navigator !== 'undefined' && typeof window !== 'undefined')\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n}\nexport const isProxyAvailable = typeof Proxy === 'function';\n","export const HOOK_SETUP = 'devtools-plugin:setup';\nexport const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';\n","let supported;\nlet perf;\nexport function isPerformanceSupported() {\n var _a;\n if (supported !== undefined) {\n return supported;\n }\n if (typeof window !== 'undefined' && window.performance) {\n supported = true;\n perf = window.performance;\n }\n else if (typeof global !== 'undefined' && ((_a = global.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {\n supported = true;\n perf = global.perf_hooks.performance;\n }\n else {\n supported = false;\n }\n return supported;\n}\nexport function now() {\n return isPerformanceSupported() ? perf.now() : Date.now();\n}\n","import { HOOK_PLUGIN_SETTINGS_SET } from './const.js';\nimport { now } from './time.js';\nexport class ApiProxy {\n constructor(plugin, hook) {\n this.target = null;\n this.targetQueue = [];\n this.onQueue = [];\n this.plugin = plugin;\n this.hook = hook;\n const defaultSettings = {};\n if (plugin.settings) {\n for (const id in plugin.settings) {\n const item = plugin.settings[id];\n defaultSettings[id] = item.defaultValue;\n }\n }\n const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;\n let currentSettings = Object.assign({}, defaultSettings);\n try {\n const raw = localStorage.getItem(localSettingsSaveId);\n const data = JSON.parse(raw);\n Object.assign(currentSettings, data);\n }\n catch (e) {\n // noop\n }\n this.fallbacks = {\n getSettings() {\n return currentSettings;\n },\n setSettings(value) {\n try {\n localStorage.setItem(localSettingsSaveId, JSON.stringify(value));\n }\n catch (e) {\n // noop\n }\n currentSettings = value;\n },\n now() {\n return now();\n },\n };\n if (hook) {\n hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {\n if (pluginId === this.plugin.id) {\n this.fallbacks.setSettings(value);\n }\n });\n }\n this.proxiedOn = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target.on[prop];\n }\n else {\n return (...args) => {\n this.onQueue.push({\n method: prop,\n args,\n });\n };\n }\n },\n });\n this.proxiedTarget = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target[prop];\n }\n else if (prop === 'on') {\n return this.proxiedOn;\n }\n else if (Object.keys(this.fallbacks).includes(prop)) {\n return (...args) => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve: () => { },\n });\n return this.fallbacks[prop](...args);\n };\n }\n else {\n return (...args) => {\n return new Promise(resolve => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve,\n });\n });\n };\n }\n },\n });\n }\n async setRealTarget(target) {\n this.target = target;\n for (const item of this.onQueue) {\n this.target.on[item.method](...item.args);\n }\n for (const item of this.targetQueue) {\n item.resolve(await this.target[item.method](...item.args));\n }\n }\n}\n","import { getTarget, getDevtoolsGlobalHook, isProxyAvailable } from './env.js';\nimport { HOOK_SETUP } from './const.js';\nimport { ApiProxy } from './proxy.js';\nexport * from './api/index.js';\nexport * from './plugin.js';\nexport * from './time.js';\nexport function setupDevtoolsPlugin(pluginDescriptor, setupFn) {\n const descriptor = pluginDescriptor;\n const target = getTarget();\n const hook = getDevtoolsGlobalHook();\n const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;\n if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {\n hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);\n }\n else {\n const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;\n const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];\n list.push({\n pluginDescriptor: descriptor,\n setupFn,\n proxy,\n });\n if (proxy)\n setupFn(proxy.proxiedTarget);\n }\n}\n","/**\n * match-sorter-utils\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nconst characterMap = {\n À: 'A',\n Á: 'A',\n Â: 'A',\n Ã: 'A',\n Ä: 'A',\n Å: 'A',\n Ấ: 'A',\n Ắ: 'A',\n Ẳ: 'A',\n Ẵ: 'A',\n Ặ: 'A',\n Æ: 'AE',\n Ầ: 'A',\n Ằ: 'A',\n Ȃ: 'A',\n Ç: 'C',\n Ḉ: 'C',\n È: 'E',\n É: 'E',\n Ê: 'E',\n Ë: 'E',\n Ế: 'E',\n Ḗ: 'E',\n Ề: 'E',\n Ḕ: 'E',\n Ḝ: 'E',\n Ȇ: 'E',\n Ì: 'I',\n Í: 'I',\n Î: 'I',\n Ï: 'I',\n Ḯ: 'I',\n Ȋ: 'I',\n Ð: 'D',\n Ñ: 'N',\n Ò: 'O',\n Ó: 'O',\n Ô: 'O',\n Õ: 'O',\n Ö: 'O',\n Ø: 'O',\n Ố: 'O',\n Ṍ: 'O',\n Ṓ: 'O',\n Ȏ: 'O',\n Ù: 'U',\n Ú: 'U',\n Û: 'U',\n Ü: 'U',\n Ý: 'Y',\n à: 'a',\n á: 'a',\n â: 'a',\n ã: 'a',\n ä: 'a',\n å: 'a',\n ấ: 'a',\n ắ: 'a',\n ẳ: 'a',\n ẵ: 'a',\n ặ: 'a',\n æ: 'ae',\n ầ: 'a',\n ằ: 'a',\n ȃ: 'a',\n ç: 'c',\n ḉ: 'c',\n è: 'e',\n é: 'e',\n ê: 'e',\n ë: 'e',\n ế: 'e',\n ḗ: 'e',\n ề: 'e',\n ḕ: 'e',\n ḝ: 'e',\n ȇ: 'e',\n ì: 'i',\n í: 'i',\n î: 'i',\n ï: 'i',\n ḯ: 'i',\n ȋ: 'i',\n ð: 'd',\n ñ: 'n',\n ò: 'o',\n ó: 'o',\n ô: 'o',\n õ: 'o',\n ö: 'o',\n ø: 'o',\n ố: 'o',\n ṍ: 'o',\n ṓ: 'o',\n ȏ: 'o',\n ù: 'u',\n ú: 'u',\n û: 'u',\n ü: 'u',\n ý: 'y',\n ÿ: 'y',\n Ā: 'A',\n ā: 'a',\n Ă: 'A',\n ă: 'a',\n Ą: 'A',\n ą: 'a',\n Ć: 'C',\n ć: 'c',\n Ĉ: 'C',\n ĉ: 'c',\n Ċ: 'C',\n ċ: 'c',\n Č: 'C',\n č: 'c',\n C̆: 'C',\n c̆: 'c',\n Ď: 'D',\n ď: 'd',\n Đ: 'D',\n đ: 'd',\n Ē: 'E',\n ē: 'e',\n Ĕ: 'E',\n ĕ: 'e',\n Ė: 'E',\n ė: 'e',\n Ę: 'E',\n ę: 'e',\n Ě: 'E',\n ě: 'e',\n Ĝ: 'G',\n Ǵ: 'G',\n ĝ: 'g',\n ǵ: 'g',\n Ğ: 'G',\n ğ: 'g',\n Ġ: 'G',\n ġ: 'g',\n Ģ: 'G',\n ģ: 'g',\n Ĥ: 'H',\n ĥ: 'h',\n Ħ: 'H',\n ħ: 'h',\n Ḫ: 'H',\n ḫ: 'h',\n Ĩ: 'I',\n ĩ: 'i',\n Ī: 'I',\n ī: 'i',\n Ĭ: 'I',\n ĭ: 'i',\n Į: 'I',\n į: 'i',\n İ: 'I',\n ı: 'i',\n IJ: 'IJ',\n ij: 'ij',\n Ĵ: 'J',\n ĵ: 'j',\n Ķ: 'K',\n ķ: 'k',\n Ḱ: 'K',\n ḱ: 'k',\n K̆: 'K',\n k̆: 'k',\n Ĺ: 'L',\n ĺ: 'l',\n Ļ: 'L',\n ļ: 'l',\n Ľ: 'L',\n ľ: 'l',\n Ŀ: 'L',\n ŀ: 'l',\n Ł: 'l',\n ł: 'l',\n Ḿ: 'M',\n ḿ: 'm',\n M̆: 'M',\n m̆: 'm',\n Ń: 'N',\n ń: 'n',\n Ņ: 'N',\n ņ: 'n',\n Ň: 'N',\n ň: 'n',\n ʼn: 'n',\n N̆: 'N',\n n̆: 'n',\n Ō: 'O',\n ō: 'o',\n Ŏ: 'O',\n ŏ: 'o',\n Ő: 'O',\n ő: 'o',\n Œ: 'OE',\n œ: 'oe',\n P̆: 'P',\n p̆: 'p',\n Ŕ: 'R',\n ŕ: 'r',\n Ŗ: 'R',\n ŗ: 'r',\n Ř: 'R',\n ř: 'r',\n R̆: 'R',\n r̆: 'r',\n Ȓ: 'R',\n ȓ: 'r',\n Ś: 'S',\n ś: 's',\n Ŝ: 'S',\n ŝ: 's',\n Ş: 'S',\n Ș: 'S',\n ș: 's',\n ş: 's',\n Š: 'S',\n š: 's',\n Ţ: 'T',\n ţ: 't',\n ț: 't',\n Ț: 'T',\n Ť: 'T',\n ť: 't',\n Ŧ: 'T',\n ŧ: 't',\n T̆: 'T',\n t̆: 't',\n Ũ: 'U',\n ũ: 'u',\n Ū: 'U',\n ū: 'u',\n Ŭ: 'U',\n ŭ: 'u',\n Ů: 'U',\n ů: 'u',\n Ű: 'U',\n ű: 'u',\n Ų: 'U',\n ų: 'u',\n Ȗ: 'U',\n ȗ: 'u',\n V̆: 'V',\n v̆: 'v',\n Ŵ: 'W',\n ŵ: 'w',\n Ẃ: 'W',\n ẃ: 'w',\n X̆: 'X',\n x̆: 'x',\n Ŷ: 'Y',\n ŷ: 'y',\n Ÿ: 'Y',\n Y̆: 'Y',\n y̆: 'y',\n Ź: 'Z',\n ź: 'z',\n Ż: 'Z',\n ż: 'z',\n Ž: 'Z',\n ž: 'z',\n ſ: 's',\n ƒ: 'f',\n Ơ: 'O',\n ơ: 'o',\n Ư: 'U',\n ư: 'u',\n Ǎ: 'A',\n ǎ: 'a',\n Ǐ: 'I',\n ǐ: 'i',\n Ǒ: 'O',\n ǒ: 'o',\n Ǔ: 'U',\n ǔ: 'u',\n Ǖ: 'U',\n ǖ: 'u',\n Ǘ: 'U',\n ǘ: 'u',\n Ǚ: 'U',\n ǚ: 'u',\n Ǜ: 'U',\n ǜ: 'u',\n Ứ: 'U',\n ứ: 'u',\n Ṹ: 'U',\n ṹ: 'u',\n Ǻ: 'A',\n ǻ: 'a',\n Ǽ: 'AE',\n ǽ: 'ae',\n Ǿ: 'O',\n ǿ: 'o',\n Þ: 'TH',\n þ: 'th',\n Ṕ: 'P',\n ṕ: 'p',\n Ṥ: 'S',\n ṥ: 's',\n X́: 'X',\n x́: 'x',\n Ѓ: 'Г',\n ѓ: 'г',\n Ќ: 'К',\n ќ: 'к',\n A̋: 'A',\n a̋: 'a',\n E̋: 'E',\n e̋: 'e',\n I̋: 'I',\n i̋: 'i',\n Ǹ: 'N',\n ǹ: 'n',\n Ồ: 'O',\n ồ: 'o',\n Ṑ: 'O',\n ṑ: 'o',\n Ừ: 'U',\n ừ: 'u',\n Ẁ: 'W',\n ẁ: 'w',\n Ỳ: 'Y',\n ỳ: 'y',\n Ȁ: 'A',\n ȁ: 'a',\n Ȅ: 'E',\n ȅ: 'e',\n Ȉ: 'I',\n ȉ: 'i',\n Ȍ: 'O',\n ȍ: 'o',\n Ȑ: 'R',\n ȑ: 'r',\n Ȕ: 'U',\n ȕ: 'u',\n B̌: 'B',\n b̌: 'b',\n Č̣: 'C',\n č̣: 'c',\n Ê̌: 'E',\n ê̌: 'e',\n F̌: 'F',\n f̌: 'f',\n Ǧ: 'G',\n ǧ: 'g',\n Ȟ: 'H',\n ȟ: 'h',\n J̌: 'J',\n ǰ: 'j',\n Ǩ: 'K',\n ǩ: 'k',\n M̌: 'M',\n m̌: 'm',\n P̌: 'P',\n p̌: 'p',\n Q̌: 'Q',\n q̌: 'q',\n Ř̩: 'R',\n ř̩: 'r',\n Ṧ: 'S',\n ṧ: 's',\n V̌: 'V',\n v̌: 'v',\n W̌: 'W',\n w̌: 'w',\n X̌: 'X',\n x̌: 'x',\n Y̌: 'Y',\n y̌: 'y',\n A̧: 'A',\n a̧: 'a',\n B̧: 'B',\n b̧: 'b',\n Ḑ: 'D',\n ḑ: 'd',\n Ȩ: 'E',\n ȩ: 'e',\n Ɛ̧: 'E',\n ɛ̧: 'e',\n Ḩ: 'H',\n ḩ: 'h',\n I̧: 'I',\n i̧: 'i',\n Ɨ̧: 'I',\n ɨ̧: 'i',\n M̧: 'M',\n m̧: 'm',\n O̧: 'O',\n o̧: 'o',\n Q̧: 'Q',\n q̧: 'q',\n U̧: 'U',\n u̧: 'u',\n X̧: 'X',\n x̧: 'x',\n Z̧: 'Z',\n z̧: 'z'\n};\nconst chars = Object.keys(characterMap).join('|');\nconst allAccents = new RegExp(chars, 'g');\nfunction removeAccents(str) {\n return str.replace(allAccents, match => {\n return characterMap[match];\n });\n}\n\n/**\n * @name match-sorter\n * @license MIT license.\n * @copyright (c) 2099 Kent C. Dodds\n * @author Kent C. Dodds <me@kentcdodds.com> (https://kentcdodds.com)\n */\nconst rankings = {\n CASE_SENSITIVE_EQUAL: 7,\n EQUAL: 6,\n STARTS_WITH: 5,\n WORD_STARTS_WITH: 4,\n CONTAINS: 3,\n ACRONYM: 2,\n MATCHES: 1,\n NO_MATCH: 0\n};\n/**\n * Gets the highest ranking for value for the given item based on its values for the given keys\n * @param {*} item - the item to rank\n * @param {Array} keys - the keys to get values from the item for the ranking\n * @param {String} value - the value to rank against\n * @param {Object} options - options to control the ranking\n * @return {{rank: Number, accessorIndex: Number, accessorThreshold: Number}} - the highest ranking\n */\nfunction rankItem(item, value, options) {\n var _options$threshold;\n options = options || {};\n options.threshold = (_options$threshold = options.threshold) != null ? _options$threshold : rankings.MATCHES;\n if (!options.accessors) {\n // if keys is not specified, then we assume the item given is ready to be matched\n const rank = getMatchRanking(item, value, options);\n return {\n // ends up being duplicate of 'item' in matches but consistent\n rankedValue: item,\n rank,\n accessorIndex: -1,\n accessorThreshold: options.threshold,\n passed: rank >= options.threshold\n };\n }\n const valuesToRank = getAllValuesToRank(item, options.accessors);\n const rankingInfo = {\n rankedValue: item,\n rank: rankings.NO_MATCH,\n accessorIndex: -1,\n accessorThreshold: options.threshold,\n passed: false\n };\n for (let i = 0; i < valuesToRank.length; i++) {\n const rankValue = valuesToRank[i];\n let newRank = getMatchRanking(rankValue.itemValue, value, options);\n const {\n minRanking,\n maxRanking,\n threshold = options.threshold\n } = rankValue.attributes;\n if (newRank < minRanking && newRank >= rankings.MATCHES) {\n newRank = minRanking;\n } else if (newRank > maxRanking) {\n newRank = maxRanking;\n }\n newRank = Math.min(newRank, maxRanking);\n if (newRank >= threshold && newRank > rankingInfo.rank) {\n rankingInfo.rank = newRank;\n rankingInfo.passed = true;\n rankingInfo.accessorIndex = i;\n rankingInfo.accessorThreshold = threshold;\n rankingInfo.rankedValue = rankValue.itemValue;\n }\n }\n return rankingInfo;\n}\n\n/**\n * Gives a rankings score based on how well the two strings match.\n * @param {String} testString - the string to test against\n * @param {String} stringToRank - the string to rank\n * @param {Object} options - options for the match (like keepDiacritics for comparison)\n * @returns {Number} the ranking for how well stringToRank matches testString\n */\nfunction getMatchRanking(testString, stringToRank, options) {\n testString = prepareValueForComparison(testString, options);\n stringToRank = prepareValueForComparison(stringToRank, options);\n\n // too long\n if (stringToRank.length > testString.length) {\n return rankings.NO_MATCH;\n }\n\n // case sensitive equals\n if (testString === stringToRank) {\n return rankings.CASE_SENSITIVE_EQUAL;\n }\n\n // Lower casing before further comparison\n testString = testString.toLowerCase();\n stringToRank = stringToRank.toLowerCase();\n\n // case insensitive equals\n if (testString === stringToRank) {\n return rankings.EQUAL;\n }\n\n // starts with\n if (testString.startsWith(stringToRank)) {\n return rankings.STARTS_WITH;\n }\n\n // word starts with\n if (testString.includes(` ${stringToRank}`)) {\n return rankings.WORD_STARTS_WITH;\n }\n\n // contains\n if (testString.includes(stringToRank)) {\n return rankings.CONTAINS;\n } else if (stringToRank.length === 1) {\n // If the only character in the given stringToRank\n // isn't even contained in the testString, then\n // it's definitely not a match.\n return rankings.NO_MATCH;\n }\n\n // acronym\n if (getAcronym(testString).includes(stringToRank)) {\n return rankings.ACRONYM;\n }\n\n // will return a number between rankings.MATCHES and\n // rankings.MATCHES + 1 depending on how close of a match it is.\n return getClosenessRanking(testString, stringToRank);\n}\n\n/**\n * Generates an acronym for a string.\n *\n * @param {String} string the string for which to produce the acronym\n * @returns {String} the acronym\n */\nfunction getAcronym(string) {\n let acronym = '';\n const wordsInString = string.split(' ');\n wordsInString.forEach(wordInString => {\n const splitByHyphenWords = wordInString.split('-');\n splitByHyphenWords.forEach(splitByHyphenWord => {\n acronym += splitByHyphenWord.substr(0, 1);\n });\n });\n return acronym;\n}\n\n/**\n * Returns a score based on how spread apart the\n * characters from the stringToRank are within the testString.\n * A number close to rankings.MATCHES represents a loose match. A number close\n * to rankings.MATCHES + 1 represents a tighter match.\n * @param {String} testString - the string to test against\n * @param {String} stringToRank - the string to rank\n * @returns {Number} the number between rankings.MATCHES and\n * rankings.MATCHES + 1 for how well stringToRank matches testString\n */\nfunction getClosenessRanking(testString, stringToRank) {\n let matchingInOrderCharCount = 0;\n let charNumber = 0;\n function findMatchingCharacter(matchChar, string, index) {\n for (let j = index, J = string.length; j < J; j++) {\n const stringChar = string[j];\n if (stringChar === matchChar) {\n matchingInOrderCharCount += 1;\n return j + 1;\n }\n }\n return -1;\n }\n function getRanking(spread) {\n const spreadPercentage = 1 / spread;\n const inOrderPercentage = matchingInOrderCharCount / stringToRank.length;\n const ranking = rankings.MATCHES + inOrderPercentage * spreadPercentage;\n return ranking;\n }\n const firstIndex = findMatchingCharacter(stringToRank[0], testString, 0);\n if (firstIndex < 0) {\n return rankings.NO_MATCH;\n }\n charNumber = firstIndex;\n for (let i = 1, I = stringToRank.length; i < I; i++) {\n const matchChar = stringToRank[i];\n charNumber = findMatchingCharacter(matchChar, testString, charNumber);\n const found = charNumber > -1;\n if (!found) {\n return rankings.NO_MATCH;\n }\n }\n const spread = charNumber - firstIndex;\n return getRanking(spread);\n}\n\n/**\n * Sorts items that have a rank, index, and accessorIndex\n * @param {Object} a - the first item to sort\n * @param {Object} b - the second item to sort\n * @return {Number} -1 if a should come first, 1 if b should come first, 0 if equal\n */\nfunction compareItems(a, b) {\n return a.rank === b.rank ? 0 : a.rank > b.rank ? -1 : 1;\n}\n\n/**\n * Prepares value for comparison by stringifying it, removing diacritics (if specified)\n * @param {String} value - the value to clean\n * @param {Object} options - {keepDiacritics: whether to remove diacritics}\n * @return {String} the prepared value\n */\nfunction prepareValueForComparison(value, _ref) {\n let {\n keepDiacritics\n } = _ref;\n // value might not actually be a string at this point (we don't get to choose)\n // so part of preparing the value for comparison is ensure that it is a string\n value = `${value}`; // toString\n if (!keepDiacritics) {\n value = removeAccents(value);\n }\n return value;\n}\n\n/**\n * Gets value for key in item at arbitrarily nested keypath\n * @param {Object} item - the item\n * @param {Object|Function} key - the potentially nested keypath or property callback\n * @return {Array} - an array containing the value(s) at the nested keypath\n */\nfunction getItemValues(item, accessor) {\n let accessorFn = accessor;\n if (typeof accessor === 'object') {\n accessorFn = accessor.accessor;\n }\n const value = accessorFn(item);\n\n // because `value` can also be undefined\n if (value == null) {\n return [];\n }\n if (Array.isArray(value)) {\n return value;\n }\n return [String(value)];\n}\n\n/**\n * Gets all the values for the given keys in the given item and returns an array of those values\n * @param item - the item from which the values will be retrieved\n * @param keys - the keys to use to retrieve the values\n * @return objects with {itemValue, attributes}\n */\nfunction getAllValuesToRank(item, accessors) {\n const allValues = [];\n for (let j = 0, J = accessors.length; j < J; j++) {\n const accessor = accessors[j];\n const attributes = getAccessorAttributes(accessor);\n const itemValues = getItemValues(item, accessor);\n for (let i = 0, I = itemValues.length; i < I; i++) {\n allValues.push({\n itemValue: itemValues[i],\n attributes\n });\n }\n }\n return allValues;\n}\nconst defaultKeyAttributes = {\n maxRanking: Infinity,\n minRanking: -Infinity\n};\n/**\n * Gets all the attributes for the given accessor\n * @param accessor - the accessor from which the attributes will be retrieved\n * @return object containing the accessor's attributes\n */\nfunction getAccessorAttributes(accessor) {\n if (typeof accessor === 'function') {\n return defaultKeyAttributes;\n }\n return {\n ...defaultKeyAttributes,\n ...accessor\n };\n}\n\nexport { compareItems, rankItem, rankings };\n//# sourceMappingURL=index.mjs.map\n","/* istanbul ignore file */\n\nimport type { Query } from '@tanstack/query-core'\n\ntype SortFn = (a: Query, b: Query) => number\n\n// eslint-disable-next-line no-shadow\nenum QueryState {\n Fetching = 0,\n Fresh,\n Stale,\n Inactive,\n Paused,\n}\n\nexport function getQueryState(query: Query): QueryState {\n if (query.state.fetchStatus === 'fetching') {\n return QueryState.Fetching\n }\n if (query.state.fetchStatus === 'paused') {\n return QueryState.Paused\n }\n if (!query.getObserversCount()) {\n return QueryState.Inactive\n }\n if (query.isStale()) {\n return QueryState.Stale\n }\n\n return QueryState.Fresh\n}\n\nexport function getQueryStateLabel(query: Query): string {\n const queryState = getQueryState(query)\n\n if (queryState === QueryState.Fetching) {\n return 'fetching'\n }\n if (queryState === QueryState.Paused) {\n return 'paused'\n }\n if (queryState === QueryState.Stale) {\n return 'stale'\n }\n if (queryState === QueryState.Inactive) {\n return 'inactive'\n }\n\n return 'fresh'\n}\n\nexport function getQueryStatusFg(query: Query): number {\n const queryState = getQueryState(query)\n\n if (queryState === QueryState.Stale) {\n return 0x000000\n }\n\n return 0xffffff\n}\n\nexport function getQueryStatusBg(query: Query): number {\n const queryState = getQueryState(query)\n\n if (queryState === QueryState.Fetching) {\n return 0x006bff\n }\n if (queryState === QueryState.Paused) {\n return 0x8c49eb\n }\n if (queryState === QueryState.Stale) {\n return 0xffb200\n }\n if (queryState === QueryState.Inactive) {\n return 0x3f4e60\n }\n\n return 0x008327\n}\n\nconst queryHashSort: SortFn = (a, b) => a.queryHash.localeCompare(b.queryHash)\n\nconst dateSort: SortFn = (a, b) =>\n a.state.dataUpdatedAt < b.state.dataUpdatedAt ? 1 : -1\n\nconst statusAndDateSort: SortFn = (a, b) => {\n if (getQueryState(a) === getQueryState(b)) {\n return dateSort(a, b)\n }\n\n return getQueryState(a) > getQueryState(b) ? 1 : -1\n}\n\nexport const sortFns: Record<string, SortFn> = {\n 'Status > Last Updated': statusAndDateSort,\n 'Query Hash': queryHashSort,\n 'Last Updated': dateSort,\n}\n","/* istanbul ignore file */\n\nimport { setupDevtoolsPlugin } from '@vue/devtools-api'\nimport type { CustomInspectorNode } from '@vue/devtools-api'\nimport { rankItem } from '@tanstack/match-sorter-utils'\nimport type { Query } from '@tanstack/query-core'\nimport type { QueryClient } from '../queryClient'\nimport {\n getQueryStateLabel,\n getQueryStatusBg,\n getQueryStatusFg,\n sortFns,\n} from './utils'\n\nconst pluginId = 'vue-query'\nconst pluginName = 'Vue Query'\n\nexport function setupDevtools(app: any, queryClient: QueryClient) {\n setupDevtoolsPlugin(\n {\n id: pluginId,\n label: pluginName,\n packageName: 'vue-query',\n homepage: 'https://tanstack.com/query/v4',\n logo: 'https://vue-query.vercel.app/vue-query.svg',\n app,\n settings: {\n baseSort: {\n type: 'choice',\n component: 'button-group',\n label: 'Sort Cache Entries',\n options: [\n {\n label: 'ASC',\n value: 1,\n },\n {\n label: 'DESC',\n value: -1,\n },\n ],\n defaultValue: 1,\n },\n sortFn: {\n type: 'choice',\n label: 'Sort Function',\n options: Object.keys(sortFns).map((key) => ({\n label: key,\n value: key,\n })),\n defaultValue: Object.keys(sortFns)[0]!,\n },\n },\n },\n (api) => {\n const queryCache = queryClient.getQueryCache()\n\n api.addInspector({\n id: pluginId,\n label: pluginName,\n icon: 'api',\n nodeActions: [\n {\n icon: 'cloud_download',\n tooltip: 'Refetch',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.fetch()\n },\n },\n {\n icon: 'alarm',\n tooltip: 'Invalidate',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryClient.invalidateQueries(query)\n },\n },\n {\n icon: 'settings_backup_restore',\n tooltip: 'Reset',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.reset()\n },\n },\n {\n icon: 'delete',\n tooltip: 'Remove',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryCache.remove(query)\n },\n },\n ],\n })\n\n api.addTimelineLayer({\n id: pluginId,\n label: pluginName,\n color: 0xffd94c,\n })\n\n queryCache.subscribe((event) => {\n api.sendInspectorTree(pluginId)\n api.sendInspectorState(pluginId)\n\n if (\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n event &&\n ['queryAdded', 'queryRemoved', 'queryUpdated'].includes(event.type)\n ) {\n api.addTimelineEvent({\n layerId: pluginId,\n event: {\n title: event.type,\n subtitle: event.query.queryHash,\n time: api.now(),\n data: {\n queryHash: event.query.queryHash,\n ...event,\n },\n },\n })\n }\n })\n\n api.on.getInspectorTree((payload) => {\n if (payload.inspectorId === pluginId) {\n const queries = queryCache.getAll()\n const settings = api.getSettings()\n\n const filtered = payload.filter\n ? queries.filter(\n (item) => rankItem(item.queryHash, payload.filter).passed,\n )\n : [...queries]\n\n const sorted = filtered.sort(\n (a, b) => sortFns[settings.sortFn]!(a, b) * settings.baseSort,\n )\n\n const nodes: CustomInspectorNode[] = sorted.map((query) => {\n const stateLabel = getQueryStateLabel(query)\n\n return {\n id: query.queryHash,\n label: query.queryHash,\n tags: [\n {\n label: `${stateLabel} [${query.getObserversCount()}]`,\n textColor: getQueryStatusFg(query),\n backgroundColor: getQueryStatusBg(query),\n },\n ],\n }\n })\n payload.rootNodes = nodes\n }\n })\n\n api.on.getInspectorState((payload) => {\n if (payload.inspectorId === pluginId) {\n const query = queryCache.get(payload.nodeId)\n\n if (!query) {\n return\n }\n\n payload.state = {\n ' Query Details': [\n {\n key: 'Query key',\n value: query.queryHash as string,\n },\n {\n key: 'Query status',\n value: getQueryStateLabel(query),\n },\n {\n key: 'Observers',\n value: query.getObserversCount(),\n },\n {\n key: 'Last Updated',\n value: new Date(query.state.dataUpdatedAt).toLocaleTimeString(),\n },\n ],\n 'Data Explorer': [\n {\n key: 'Data',\n value: query.state.data,\n },\n ],\n 'Query Explorer': [\n {\n key: 'Query',\n value: query,\n },\n ],\n }\n }\n })\n },\n )\n}\n","import { isVue2 } from 'vue-demi'\nimport { isServer } from '@tanstack/query-core'\nimport type { QueryClientConfig } from '@tanstack/query-core'\n\nimport { QueryClient } from './queryClient'\nimport { getClientKey } from './utils'\nimport { setupDevtools } from './devtools/devtools'\nimport type { MaybeRefDeep } from './types'\n\ntype ClientPersister = (client: QueryClient) => [() => void, Promise<void>]\n\ninterface CommonOptions {\n queryClientKey?: string\n clientPersister?: ClientPersister\n}\n\ninterface ConfigOptions extends CommonOptions {\n queryClientConfig?: MaybeRefDeep<QueryClientConfig>\n}\n\ninterface ClientOptions extends CommonOptions {\n queryClient?: QueryClient\n}\n\nexport type VueQueryPluginOptions = ConfigOptions | ClientOptions\n\nexport const VueQueryPlugin = {\n install: (app: any, options: VueQueryPluginOptions = {}) => {\n const clientKey = getClientKey(options.queryClientKey)\n let client: QueryClient\n\n if ('queryClient' in options && options.queryClient) {\n client = options.queryClient\n } else {\n const clientConfig =\n 'queryClientConfig' in options ? options.queryClientConfig : undefined\n client = new QueryClient(clientConfig)\n }\n\n if (!isServer) {\n client.mount()\n }\n\n let persisterUnmount = () => {\n // noop\n }\n\n if (options.clientPersister) {\n client.isRestoring.value = true\n const [unmount, promise] = options.clientPersister(client)\n persisterUnmount = unmount\n promise.then(() => {\n client.isRestoring.value = false\n })\n }\n\n const cleanup = () => {\n client.unmount()\n persisterUnmount()\n }\n\n if (app.onUnmount) {\n app.onUnmount(cleanup)\n } else {\n const originalUnmount = app.unmount\n app.unmount = function vueQueryUnmount() {\n cleanup()\n originalUnmount()\n }\n }\n\n /* istanbul ignore next */\n if (isVue2) {\n app.mixin({\n beforeCreate() {\n // HACK: taken from provide(): https://github.com/vuejs/composition-api/blob/master/src/apis/inject.ts#L30\n if (!this._provided) {\n const provideCache = {}\n Object.defineProperty(this, '_provided', {\n get: () => provideCache,\n set: (v) => Object.assign(provideCache, v),\n })\n }\n\n this._provided[clientKey] = client\n\n if (process.env.NODE_ENV === 'development') {\n if (this === this.$root) {\n setupDevtools(this, client)\n }\n }\n },\n })\n } else {\n app.provide(clientKey, client)\n\n if (process.env.NODE_ENV === 'development') {\n setupDevtools(app, client)\n }\n }\n },\n}\n","import {\n onScopeDispose,\n toRefs,\n readonly,\n reactive,\n watch,\n ref,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryObserver,\n QueryKey,\n QueryObserverResult,\n DefaultedQueryObserverOptions,\n} from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { updateState, cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseBaseQueryReturnType<\n TData,\n TError,\n Result = QueryObserverResult<TData, TError>,\n> = ToRefs<Readonly<Result>> & {\n suspense: () => Promise<Result>\n}\n\ntype UseQueryOptionsGeneric<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n | UseInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n TPageParam,\n>(\n Observer: typeof QueryObserver,\n options: UseQueryOptionsGeneric<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): UseBaseQueryReturnType<TData, TError> {\n const client = queryClient || useQueryClient()\n\n const defaultedOptions = computed(() => {\n const defaulted = client.defaultQueryOptions(\n cloneDeepUnref(options as any),\n ) as DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >\n\n defaulted._optimisticResults = client.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(client, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = ref(() => {\n // noop\n })\n\n watch(\n client.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe.value()\n unsubscribe.value = observer.subscribe((result) => {\n updateState(state, result)\n })\n }\n },\n { immediate: true },\n )\n\n watch(\n defaultedOptions,\n () => {\n observer.setOptions(defaultedOptions.value)\n updateState(state, observer.getCurrentResult())\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe.value()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>((resolve) => {\n let stopWatch = () => {\n //noop\n }\n const run = () => {\n if (defaultedOptions.value.enabled !== false) {\n const optimisticResult = observer.getOptimisticResult(\n defaultedOptions.value,\n )\n if (optimisticResult.isStale) {\n stopWatch()\n resolve(observer.fetchOptimistic(defaultedOptions.value))\n } else {\n stopWatch()\n resolve(optimisticResult)\n }\n }\n }\n\n run()\n\n stopWatch = watch(defaultedOptions, run, { deep: true })\n })\n }\n\n return {\n ...(toRefs(readonly(state)) as ToRefs<\n Readonly<QueryObserverResult<TData, TError>>\n >),\n suspense,\n }\n}\n","import type { ToRefs, UnwrapRef } from 'vue-demi'\nimport { QueryObserver } from '@tanstack/query-core'\nimport type {\n QueryKey,\n QueryObserverResult,\n DefinedQueryObserverResult,\n WithRequired,\n QueryObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport { useBaseQuery } from './useBaseQuery'\nimport type { UseBaseQueryReturnType } from './useBaseQuery'\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\n\nexport type UseQueryOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = {\n [Property in keyof QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >]: Property extends 'queryFn'\n ? QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n UnwrapRef<TQueryKey>\n >[Property]\n : MaybeRefDeep<\n WithRequired<\n QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n 'queryKey'\n >[Property]\n >\n}\n\nexport type UseQueryReturnType<TData, TError> = DistributiveOmit<\n UseBaseQueryReturnType<TData, TError>,\n 'refetch'\n> & {\n refetch: QueryObserverResult<TData, TError>['refetch']\n}\n\nexport type UseQueryDefinedReturnType<TData, TError> = DistributiveOmit<\n ToRefs<Readonly<DefinedQueryObserverResult<TData, TError>>>,\n 'refetch'\n> & {\n suspense: () => Promise<QueryObserverResult<TData, TError>>\n refetch: QueryObserverResult<TData, TError>['refetch']\n}\n\nexport function useQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey\n > & {\n initialData?: undefined\n },\n queryClient?: QueryClient,\n): UseQueryReturnType<TData, TError>\n\nexport function useQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey\n > & {\n initialData: TQueryFnData | (() => TQueryFnData)\n },\n queryClient?: QueryClient,\n): UseQueryDefinedReturnType<TData, TError>\n\nexport function useQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey\n >,\n queryClient?: QueryClient,\n):\n | UseQueryReturnType<TData, TError>\n | UseQueryDefinedReturnType<TData, TError> {\n const result = useBaseQuery(QueryObserver, options, queryClient)\n\n return {\n ...result,\n refetch: result.refetch.value,\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { QueriesObserver } from '@tanstack/query-core'\nimport type {\n QueriesPlaceholderDataFunction,\n QueryKey,\n} from '@tanstack/query-core'\nimport type { Ref } from 'vue-demi'\nimport { computed, onScopeDispose, readonly, ref, watch } from 'vue-demi'\n\nimport type { QueryFunction, QueryObserverResult } from '@tanstack/query-core'\n\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { UseQueryOptions } from './useQuery'\nimport type { QueryClient } from './queryClient'\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype UseQueryOptionsForUseQueries<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = DistributiveOmit<\n UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? UseQueryOptionsForUseQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? UseQueryOptionsForUseQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TQueryFnData, TQueryKey>\n : // Fallback\n UseQueryOptionsForUseQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? QueryObserverResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? QueryObserverResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? QueryObserverResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? QueryObserverResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? QueryObserverResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? QueryObserverResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? QueryObserverResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? QueryObserverResult<TQueryFnData>\n : // Fallback\n QueryObserverResult\n\n/**\n * UseQueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type UseQueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? UseQueryOptionsForUseQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? UseQueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends UseQueryOptionsForUseQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n UseQueryOptionsForUseQueries[]\n\n/**\n * UseQueriesResults reducer recursively maps type param to results\n */\nexport type UseQueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? QueryObserverResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? UseQueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends UseQueryOptionsForUseQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n QueryObserverResult<unknown extends TData ? TQueryFnData : TData, TError>[]\n : // Fallback\n QueryObserverResult[]\n\ntype UseQueriesOptionsArg<T extends any[]> = readonly [...UseQueriesOptions<T>]\n\nexport function useQueries<T extends any[]>({\n queries,\n queryClient,\n}: {\n queries: MaybeRefDeep<UseQueriesOptionsArg<T>>\n queryClient?: QueryClient\n}): Readonly<Ref<UseQueriesResults<T>>> {\n const client = queryClient || useQueryClient()\n\n const defaultedQueries = computed(() =>\n cloneDeepUnref(queries).map((options) => {\n const defaulted = client.defaultQueryOptions(options)\n defaulted._optimisticResults = client.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n }),\n )\n\n const observer = new QueriesObserver(client, defaultedQueries.value)\n const state = ref(observer.getCurrentResult())\n\n const unsubscribe = ref(() => {\n // noop\n })\n\n watch(\n client.isRestoring,\n (isRestoring) => {\n if (!isRestoring) {\n unsubscribe.value()\n unsubscribe.value = observer.subscribe((result) => {\n state.value.splice(0, result.length, ...result)\n })\n // Subscription would not fire for persisted results\n state.value.splice(\n 0,\n state.value.length,\n ...observer.getOptimisticResult(defaultedQueries.value),\n )\n }\n },\n { immediate: true },\n )\n\n watch(\n defaultedQueries,\n () => {\n observer.setQueries(defaultedQueries.value)\n state.value.splice(0, state.value.length, ...observer.getCurrentResult())\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe.value()\n })\n\n return readonly(state) as Readonly<Ref<UseQueriesResults<T>>>\n}\n","import { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n InfiniteData,\n QueryObserver,\n WithRequired,\n QueryKey,\n InfiniteQueryObserverResult,\n InfiniteQueryObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\n\nimport { useBaseQuery } from './useBaseQuery'\nimport type { UseBaseQueryReturnType } from './useBaseQuery'\n\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\nimport type { UnwrapRef } from 'vue-demi'\n\nexport type UseInfiniteQueryOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n> = {\n [Property in keyof InfiniteQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >]: Property extends 'queryFn'\n ? InfiniteQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n UnwrapRef<TQueryKey>,\n TPageParam\n >[Property]\n : MaybeRefDeep<\n WithRequired<\n InfiniteQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >,\n 'queryKey'\n >[Property]\n >\n}\n\ntype InfiniteQueryReturnType<TData, TError> = UseBaseQueryReturnType<\n TData,\n TError,\n InfiniteQueryObserverResult<TData, TError>\n>\nexport type UseInfiniteQueryReturnType<TData, TError> = DistributiveOmit<\n InfiniteQueryReturnType<TData, TError>,\n 'fetchNextPage' | 'fetchPreviousPage' | 'refetch'\n> & {\n fetchNextPage: InfiniteQueryObserverResult<TData, TError>['fetchNextPage']\n fetchPreviousPage: InfiniteQueryObserverResult<\n TData,\n TError\n >['fetchPreviousPage']\n refetch: InfiniteQueryObserverResult<TData, TError>['refetch']\n}\n\nexport function useInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: UseInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): UseInfiniteQueryReturnType<TData, TError> {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n const result = useBaseQuery(\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n options,\n queryClient,\n ) as InfiniteQueryReturnType<TData, TError>\n return {\n ...result,\n fetchNextPage: result.fetchNextPage.value,\n fetchPreviousPage: result.fetchPreviousPage.value,\n refetch: result.refetch.value,\n }\n}\n","import {\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n watch,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n MutateOptions,\n MutateFunction,\n MutationObserverResult,\n MutationObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep, DistributiveOmit } from './types'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { cloneDeepUnref, updateState } from './utils'\nimport { useQueryClient } from './useQueryClient'\nimport type { QueryClient } from './queryClient'\n\ntype MutationResult<TData, TError, TVariables, TContext> = DistributiveOmit<\n MutationObserverResult<TData, TError, TVariables, TContext>,\n 'mutate' | 'reset'\n>\n\nexport type UseMutationOptions<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = MaybeRefDeep<MutationObserverOptions<TData, TError, TVariables, TContext>>\n\ntype MutateSyncFunction<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = (\n ...options: Parameters<MutateFunction<TData, TError, TVariables, TContext>>\n) => void\n\nexport type UseMutationReturnType<\n TData,\n TError,\n TVariables,\n TContext,\n Result = MutationResult<TData, TError, TVariables, TContext>,\n> = ToRefs<Readonly<Result>> & {\n mutate: MutateSyncFunction<TData, TError, TVariables, TContext>\n mutateAsync: MutateFunction<TData, TError, TVariables, TContext>\n reset: MutationObserverResult<TData, TError, TVariables, TContext>['reset']\n}\n\nexport function useMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n mutationOptions: MaybeRefDeep<\n MutationObserverOptions<TData, TError, TVariables, TContext>\n >,\n queryClient?: QueryClient,\n): UseMutationReturnType<TData, TError, TVariables, TContext> {\n const client = queryClient || useQueryClient()\n const options = computed(() => {\n return client.defaultMutationOptions(cloneDeepUnref(mutationOptions))\n })\n const observer = new MutationObserver(client, options.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = observer.subscribe((result) => {\n updateState(state, result)\n })\n\n const mutate = (\n variables: TVariables,\n mutateOptions?: MutateOptions<TData, TError, TVariables, TContext>,\n ) => {\n observer.mutate(variables, mutateOptions).catch(() => {\n // This is intentional\n })\n }\n\n watch(\n options,\n () => {\n observer.setOptions(options.value)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const resultRefs = toRefs(readonly(state)) as unknown as ToRefs<\n Readonly<MutationResult<TData, TError, TVariables, TContext>>\n >\n\n return {\n ...resultRefs,\n mutate,\n mutateAsync: state.mutate,\n reset: state.reset,\n }\n}\n","import { computed, onScopeDispose, ref, watch } from 'vue-demi'\nimport type { Ref } from 'vue-demi'\nimport type { QueryFilters as QF } from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\n\nexport type QueryFilters = MaybeRefDeep<QF>\n\nexport function useIsFetching(\n fetchingFilters: MaybeRefDeep<QF> = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const filters = computed(() => cloneDeepUnref(fetchingFilters))\n const client = queryClient || useQueryClient()\n\n const isFetching = ref(client.isFetching(filters))\n\n const unsubscribe = client.getQueryCache().subscribe(() => {\n isFetching.value = client.isFetching(filters)\n })\n\n watch(\n filters,\n () => {\n isFetching.value = client.isFetching(filters)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return isFetching\n}\n","import { computed, onScopeDispose, ref, watch } from 'vue-demi'\nimport type { Ref } from 'vue-demi'\nimport type { MutationFilters as MF } from '@tanstack/query-core'\n\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n mutationFilters: MaybeRefDeep<MF> = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const filters = computed(() => cloneDeepUnref(mutationFilters))\n const client = queryClient || useQueryClient()\n\n const isMutating = ref(client.isMutating(filters))\n\n const unsubscribe = client.getMutationCache().subscribe(() => {\n isMutating.value = client.isMutating(filters)\n })\n\n watch(\n filters,\n () => {\n isMutating.value = client.isMutating(filters)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return isMutating\n}\n"],"names":["isPlainObject","getDefaultState","QueryCache","MutationCache","VUE_QUERY_CLIENT","getClientKey","key","suffix","updateState","state","update","Object","keys","forEach","cloneDeep","value","customizer","result","undefined","isRef","Array","isArray","map","val","entries","fromEntries","cloneDeepUnref","obj","unref","prototype","toString","call","getPrototypeOf","useQueryClient","id","vm","getCurrentInstance","proxy","Error","queryClient","inject","QC","find","filters","findAll","MC","QueryClient","constructor","config","unreffedConfig","vueQueryConfig","defaultOptions","queryCache","mutationCache","isRestoring","ref","isFetching","isMutating","getQueryData","queryKey","getQueriesData","setQueryData","updater","options","setQueriesData","getQueryState","removeQueries","resetQueries","cancelQueries","invalidateQueries","refetchQueries","fetchQuery","prefetchQuery","fetchInfiniteQuery","prefetchInfiniteQuery","setDefaultOptions","setQueryDefaults","getQueryDefaults","setMutationDefaults","mutationKey","getMutationDefaults","QueryState","query","fetchStatus","Fetching","Paused","getObserversCount","Inactive","isStale","Stale","Fresh","getQueryStateLabel","queryState","getQueryStatusFg","getQueryStatusBg","queryHashSort","a","b","queryHash","localeCompare","dateSort","dataUpdatedAt","statusAndDateSort","sortFns","pluginId","pluginName","setupDevtools","app","setupDevtoolsPlugin","label","packageName","homepage","logo","settings","baseSort","type","component","defaultValue","sortFn","api","getQueryCache","addInspector","icon","nodeActions","tooltip","action","get","fetch","reset","remove","addTimelineLayer","color","subscribe","event","sendInspectorTree","sendInspectorState","includes","addTimelineEvent","layerId","title","subtitle","time","now","data","on","getInspectorTree","payload","inspectorId","queries","getAll","getSettings","filtered","filter","item","rankItem","passed","sorted","sort","nodes","stateLabel","tags","textColor","backgroundColor","rootNodes","getInspectorState","nodeId","Date","toLocaleTimeString","VueQueryPlugin","install","clientKey","queryClientKey","client","clientConfig","queryClientConfig","isServer","mount","persisterUnmount","clientPersister","unmount","promise","then","cleanup","onUnmount","originalUnmount","vueQueryUnmount","isVue2","mixin","beforeCreate","_provided","provideCache","defineProperty","set","v","assign","$root","provide","useBaseQuery","Observer","defaultedOptions","computed","defaulted","defaultQueryOptions","_optimisticResults","observer","reactive","getCurrentResult","unsubscribe","watch","immediate","setOptions","deep","onScopeDispose","suspense","Promise","resolve","stopWatch","run","enabled","optimisticResult","getOptimisticResult","fetchOptimistic","toRefs","readonly","useQuery","QueryObserver","refetch","useQueries","defaultedQueries","QueriesObserver","splice","length","setQueries","useInfiniteQuery","InfiniteQueryObserver","fetchNextPage","fetchPreviousPage","useMutation","mutationOptions","defaultMutationOptions","MutationObserver","mutate","variables","mutateOptions","catch","resultRefs","mutateAsync","useIsFetching","fetchingFilters","useIsMutating","mutationFilters","getMutationCache"],"mappings":"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EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,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"}
|
|
1
|
+
{"version":3,"file":"index.development.js","sources":["../../../query-core/build/lib/subscribable.mjs","../../../query-core/build/lib/utils.mjs","../../../query-core/build/lib/focusManager.mjs","../../../query-core/build/lib/onlineManager.mjs","../../../query-core/build/lib/retryer.mjs","../../../query-core/build/lib/notifyManager.mjs","../../../query-core/build/lib/removable.mjs","../../../query-core/build/lib/query.mjs","../../../query-core/build/lib/queryCache.mjs","../../../query-core/build/lib/mutation.mjs","../../../query-core/build/lib/mutationCache.mjs","../../../query-core/build/lib/infiniteQueryBehavior.mjs","../../../query-core/build/lib/queryClient.mjs","../../../query-core/build/lib/queryObserver.mjs","../../../query-core/build/lib/queriesObserver.mjs","../../../query-core/build/lib/infiniteQueryObserver.mjs","../../../query-core/build/lib/mutationObserver.mjs","../../../query-core/build/lib/hydration.mjs","../../src/utils.ts","../../src/useQueryClient.ts","../../src/queryCache.ts","../../src/mutationCache.ts","../../src/queryClient.ts","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/env.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/const.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/time.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/proxy.js","../../../../node_modules/.pnpm/@vue+devtools-api@6.5.0/node_modules/@vue/devtools-api/lib/esm/index.js","../../../../node_modules/.pnpm/@tanstack+match-sorter-utils@8.7.6/node_modules/@tanstack/match-sorter-utils/build/lib/index.mjs","../../src/devtools/utils.ts","../../src/devtools/devtools.ts","../../src/vueQueryPlugin.ts","../../src/useBaseQuery.ts","../../src/useQuery.ts","../../src/useQueries.ts","../../src/useInfiniteQuery.ts","../../src/useMutation.ts","../../src/useIsFetching.ts","../../src/useMutationState.ts"],"sourcesContent":["class Subscribable {\n constructor() {\n this.listeners = [];\n this.subscribe = this.subscribe.bind(this);\n }\n subscribe(listener) {\n this.listeners.push(listener);\n this.onSubscribe();\n return () => {\n this.listeners = this.listeners.filter(x => x !== listener);\n this.onUnsubscribe();\n };\n }\n hasListeners() {\n return this.listeners.length > 0;\n }\n onSubscribe() {\n // Do nothing\n }\n onUnsubscribe() {\n // Do nothing\n }\n}\n\nexport { Subscribable };\n//# sourceMappingURL=subscribable.mjs.map\n","// TYPES\n\n// UTILS\n\nconst isServer = typeof window === 'undefined' || 'Deno' in window;\nfunction noop() {\n return undefined;\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 {\n exact,\n status,\n predicate,\n mutationKey\n } = 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}\n\n/**\n * Default query & mutation keys hash function.\n * Hashes the value into a stable hash.\n */\nfunction hashKey(queryKey) {\n return JSON.stringify(queryKey, (_, val) => isPlainObject(val) ? Object.keys(val).sort().reduce((result, key) => {\n result[key] = val[key];\n return result;\n }, {}) : val);\n}\n\n/**\n * Checks if key `b` partially matches with key `a`.\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}\n\n/**\n * This function returns `a` if `b` is deeply equal.\n * If not, it will replace any deeply equal children of `b` with those of `a`.\n * This can be used for structural sharing between JSON values for example.\n */\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}\n\n/**\n * Shallow compare objects. Only works with objects that always have the same properties.\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}\n\n// Copied from: https://github.com/jonschlinkert/is-plain-object\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n\n // If has modified constructor\n const ctor = o.constructor;\n if (typeof ctor === 'undefined') {\n return true;\n }\n\n // If has modified prototype\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n\n // If constructor does not have an Object-specific method\n if (!prot.hasOwnProperty('isPrototypeOf')) {\n return false;\n }\n\n // Most likely a plain Object\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}\n\n/**\n * Schedules a microtask.\n * This can be useful to schedule state updates after rendering.\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 // Structurally share data between prev and new data if needed\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}\n\nexport { addToEnd, addToStart, functionalUpdate, hashKey, hashQueryKeyByOptions, isPlainArray, isPlainObject, isServer, isValidTimeout, keepPreviousData, matchMutation, matchQuery, noop, partialMatchKey, replaceData, replaceEqualDeep, scheduleMicrotask, shallowEqualObjects, sleep, timeUntilStale };\n//# sourceMappingURL=utils.mjs.map\n","import { Subscribable } from './subscribable.mjs';\nimport { isServer } from './utils.mjs';\n\nclass FocusManager extends Subscribable {\n #focused;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = onFocus => {\n // addEventListener does not exist in React Native, but window does\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus();\n // Listen to visibilitychange\n window.addEventListener('visibilitychange', listener, false);\n return () => {\n // Be sure to unsubscribe if a new handler is set\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 = undefined;\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 this.#focused = focused;\n if (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\n // document global can be unavailable in react native\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n return globalThis.document?.visibilityState !== 'hidden';\n }\n}\nconst focusManager = new FocusManager();\n\nexport { FocusManager, focusManager };\n//# sourceMappingURL=focusManager.mjs.map\n","import { Subscribable } from './subscribable.mjs';\nimport { isServer } from './utils.mjs';\n\nclass OnlineManager extends Subscribable {\n #online;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = onOnline => {\n // addEventListener does not exist in React Native, but window does\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isServer && window.addEventListener) {\n const listener = () => onOnline();\n // Listen to online\n window.addEventListener('online', listener, false);\n window.addEventListener('offline', listener, false);\n return () => {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('online', listener);\n window.removeEventListener('offline', 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 = undefined;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup(online => {\n if (typeof online === 'boolean') {\n this.setOnline(online);\n } else {\n this.onOnline();\n }\n });\n }\n setOnline(online) {\n this.#online = online;\n if (online) {\n this.onOnline();\n }\n }\n onOnline() {\n this.listeners.forEach(listener => {\n listener();\n });\n }\n isOnline() {\n if (typeof this.#online === 'boolean') {\n return this.#online;\n }\n if (typeof navigator === 'undefined' || typeof navigator.onLine === 'undefined') {\n return true;\n }\n return navigator.onLine;\n }\n}\nconst onlineManager = new OnlineManager();\n\nexport { OnlineManager, onlineManager };\n//# sourceMappingURL=onlineManager.mjs.map\n","import { focusManager } from './focusManager.mjs';\nimport { onlineManager } from './onlineManager.mjs';\nimport { sleep } from './utils.mjs';\n\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1000 * 2 ** failureCount, 30000);\n}\nfunction canFetch(networkMode) {\n return (networkMode ?? 'online') === 'online' ? onlineManager.isOnline() : true;\n}\nclass CancelledError {\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 = undefined;\n if (!isResolved) {\n config.onContinue?.();\n }\n });\n };\n\n // Create loop function\n const run = () => {\n // Do nothing if already resolved\n if (isResolved) {\n return;\n }\n let promiseOrValue;\n\n // Execute query\n try {\n promiseOrValue = config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n }\n Promise.resolve(promiseOrValue).then(resolve).catch(error => {\n // Stop if the fetch is already resolved\n if (isResolved) {\n return;\n }\n\n // Do we need to retry the request?\n const retry = config.retry ?? 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 // We are done if the query does not need to be retried\n reject(error);\n return;\n }\n failureCount++;\n\n // Notify on fail\n config.onFail?.(failureCount, error);\n\n // Delay\n sleep(delay)\n // Pause if the document is not visible or when the device is offline\n .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\n // Start loop\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}\n\nexport { CancelledError, canFetch, createRetryer, isCancelledError };\n//# sourceMappingURL=retryer.mjs.map\n","import { scheduleMicrotask } from './utils.mjs';\n\n// TYPES\n\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\n /**\n * All calls to the wrapped function will be batched.\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\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n const setNotifyFunction = fn => {\n notifyFn = fn;\n };\n\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n const setBatchNotifyFunction = fn => {\n batchNotifyFn = fn;\n };\n return {\n batch,\n batchCalls,\n schedule,\n setNotifyFunction,\n setBatchNotifyFunction\n };\n}\n\n// SINGLETON\nconst notifyManager = createNotifyManager();\n\nexport { createNotifyManager, notifyManager };\n//# sourceMappingURL=notifyManager.mjs.map\n","import { isValidTimeout, isServer } from './utils.mjs';\n\nclass Removable {\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 // Default to 5 minutes (Infinity for server-side) if no gcTime is set\n this.gcTime = Math.max(this.gcTime || 0, newGcTime ?? (isServer ? Infinity : 5 * 60 * 1000));\n }\n clearGcTimeout() {\n if (this.#gcTimeout) {\n clearTimeout(this.#gcTimeout);\n this.#gcTimeout = undefined;\n }\n }\n}\n\nexport { Removable };\n//# sourceMappingURL=removable.mjs.map\n","import { replaceData, noop, timeUntilStale } from './utils.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { createRetryer, isCancelledError, canFetch } from './retryer.mjs';\nimport { Removable } from './removable.mjs';\n\n// TYPES\n\n// CLASS\n\nclass Query extends Removable {\n #initialState;\n #revertState;\n #cache;\n #promise;\n #retryer;\n #observers;\n #defaultOptions;\n #abortSignalConsumed;\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 get meta() {\n return this.options.meta;\n }\n #setOptions(options) {\n this.options = {\n ...this.#defaultOptions,\n ...options\n };\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\n // Set data and mark it as cached\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({\n type: 'setState',\n state,\n setStateOptions\n });\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({\n silent: true\n });\n }\n reset() {\n this.destroy();\n this.setState(this.#initialState);\n }\n isActive() {\n return this.#observers.some(observer => observer.options.enabled !== false);\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({\n cancelRefetch: false\n });\n\n // Continue fetch if currently paused\n this.#retryer?.continue();\n }\n onOnline() {\n const observer = this.#observers.find(x => x.shouldFetchOnReconnect());\n observer?.refetch({\n cancelRefetch: false\n });\n\n // Continue fetch if currently paused\n this.#retryer?.continue();\n }\n addObserver(observer) {\n if (this.#observers.indexOf(observer) === -1) {\n this.#observers.push(observer);\n\n // Stop the query from being garbage collected\n this.clearGcTimeout();\n this.#cache.notify({\n type: 'observerAdded',\n query: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n if (this.#observers.indexOf(observer) !== -1) {\n this.#observers = this.#observers.filter(x => x !== observer);\n if (!this.#observers.length) {\n // If the transport layer does not support cancellation\n // we'll let the query continue so the result can be cached\n if (this.#retryer) {\n if (this.#abortSignalConsumed) {\n this.#retryer.cancel({\n revert: true\n });\n } else {\n this.#retryer.cancelRetry();\n }\n }\n this.scheduleGc();\n }\n this.#cache.notify({\n type: 'observerRemoved',\n query: this,\n observer\n });\n }\n }\n getObserversCount() {\n return this.#observers.length;\n }\n invalidate() {\n if (!this.state.isInvalidated) {\n this.#dispatch({\n type: 'invalidate'\n });\n }\n }\n fetch(options, fetchOptions) {\n if (this.state.fetchStatus !== 'idle') {\n if (this.state.dataUpdatedAt && fetchOptions?.cancelRefetch) {\n // Silently cancel current fetch if the user wants to cancel refetches\n this.cancel({\n silent: true\n });\n } else if (this.#promise) {\n // make sure that retries that were potentially cancelled due to unmounts can continue\n this.#retryer?.continueRetry();\n // Return current promise if we are already fetching\n return this.#promise;\n }\n }\n\n // Update config if passed, otherwise the config from the last execution is used\n if (options) {\n this.#setOptions(options);\n }\n\n // Use the options from the first observer with a query function if no function is found.\n // This can happen when the query is hydrated or created with setQueryData.\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(`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 const abortController = new AbortController();\n\n // Create query function context\n const queryFnContext = {\n queryKey: this.queryKey,\n meta: this.meta\n };\n\n // Adds an enumerable signal property to the object that\n // which sets abortSignalConsumed to true when the signal\n // is read.\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\n // Create fetch function\n const fetchFn = () => {\n if (!this.options.queryFn) {\n return Promise.reject(new Error('Missing queryFn'));\n }\n this.#abortSignalConsumed = false;\n return this.options.queryFn(queryFnContext);\n };\n\n // Trigger behavior hook\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(context);\n\n // Store state in case the current fetch needs to be reverted\n this.#revertState = this.state;\n\n // Set to fetching state if not already in it\n if (this.state.fetchStatus === 'idle' || this.state.fetchMeta !== context.fetchOptions?.meta) {\n this.#dispatch({\n type: 'fetch',\n meta: context.fetchOptions?.meta\n });\n }\n const onError = error => {\n // Optimistically update state if needed\n if (!(isCancelledError(error) && error.silent)) {\n this.#dispatch({\n type: 'error',\n error: error\n });\n }\n if (!isCancelledError(error)) {\n // Notify cache callback\n this.#cache.config.onError?.(error, this);\n this.#cache.config.onSettled?.(this.state.data, error, this);\n }\n if (!this.isFetchingOptimistic) {\n // Schedule query gc after fetching\n this.scheduleGc();\n }\n this.isFetchingOptimistic = false;\n };\n\n // Try to fetch the data\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(`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 onError(new Error('undefined'));\n return;\n }\n this.setData(data);\n\n // Notify cache callback\n this.#cache.config.onSuccess?.(data, this);\n this.#cache.config.onSettled?.(data, this.state.error, this);\n if (!this.isFetchingOptimistic) {\n // Schedule query gc after fetching\n this.scheduleGc();\n }\n this.isFetchingOptimistic = false;\n },\n onError,\n onFail: (failureCount, error) => {\n this.#dispatch({\n type: 'failed',\n failureCount,\n error\n });\n },\n onPause: () => {\n this.#dispatch({\n type: 'pause'\n });\n },\n onContinue: () => {\n this.#dispatch({\n type: 'continue'\n });\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 {\n ...this.#revertState\n };\n }\n return {\n ...state,\n error: 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({\n query: this,\n type: 'updated',\n action\n });\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}\n\nexport { Query };\n//# sourceMappingURL=query.mjs.map\n","import { hashQueryKeyByOptions, matchQuery } from './utils.mjs';\nimport { Query } from './query.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { Subscribable } from './subscribable.mjs';\n\n// CLASS\n\nclass QueryCache extends Subscribable {\n #queries;\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = config.createStore?.() ?? new Map();\n }\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({\n type: 'removed',\n query\n });\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 = {\n exact: true,\n ...filters\n };\n return this.getAll().find(query => matchQuery(defaultedFilters, query));\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}\n\nexport { QueryCache };\n//# sourceMappingURL=queryCache.mjs.map\n","import { notifyManager } from './notifyManager.mjs';\nimport { Removable } from './removable.mjs';\nimport { createRetryer, canFetch } from './retryer.mjs';\n\n// TYPES\n\n// CLASS\n\nclass Mutation extends Removable {\n #observers;\n #defaultOptions;\n #mutationCache;\n #retryer;\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 setOptions(options) {\n this.options = {\n ...this.#defaultOptions,\n ...options\n };\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (this.#observers.indexOf(observer) === -1) {\n this.#observers.push(observer);\n\n // Stop the mutation from being garbage collected\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() ??\n // 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({\n type: 'failed',\n failureCount,\n error\n });\n },\n onPause: () => {\n this.#dispatch({\n type: 'pause'\n });\n },\n onContinue: () => {\n this.#dispatch({\n type: 'continue'\n });\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({\n type: 'pending',\n variables\n });\n // Notify cache callback\n await this.#mutationCache.config.onMutate?.(variables, this);\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\n // Notify cache callback\n await this.#mutationCache.config.onSuccess?.(data, variables, this.state.context, this);\n await this.options.onSuccess?.(data, variables, this.state.context);\n\n // Notify cache callback\n await this.#mutationCache.config.onSettled?.(data, null, this.state.variables, this.state.context, this);\n await this.options.onSettled?.(data, null, variables, this.state.context);\n this.#dispatch({\n type: 'success',\n data\n });\n return data;\n } catch (error) {\n try {\n // Notify cache callback\n await this.#mutationCache.config.onError?.(error, variables, this.state.context, this);\n await this.options.onError?.(error, variables, this.state.context);\n\n // Notify cache callback\n await this.#mutationCache.config.onSettled?.(undefined, error, this.state.variables, this.state.context, this);\n await this.options.onSettled?.(undefined, error, variables, this.state.context);\n throw error;\n } finally {\n this.#dispatch({\n type: 'error',\n error: error\n });\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: undefined,\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: undefined,\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: undefined,\n data: undefined,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: 'idle',\n variables: undefined,\n submittedAt: 0\n };\n}\n\nexport { Mutation, getDefaultState };\n//# sourceMappingURL=mutation.mjs.map\n","import { notifyManager } from './notifyManager.mjs';\nimport { Mutation } from './mutation.mjs';\nimport { matchMutation, noop } from './utils.mjs';\nimport { Subscribable } from './subscribable.mjs';\n\n// TYPES\n\n// CLASS\n\nclass MutationCache extends Subscribable {\n #mutations;\n #mutationId;\n #resuming;\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = [];\n this.#mutationId = 0;\n }\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({\n type: 'added',\n mutation\n });\n }\n remove(mutation) {\n this.#mutations = this.#mutations.filter(x => x !== mutation);\n this.notify({\n type: 'removed',\n mutation\n });\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 = {\n exact: true,\n ...filters\n };\n return this.#mutations.find(mutation => matchMutation(defaultedFilters, mutation));\n }\n findAll(filters = {}) {\n return this.#mutations.filter(mutation => matchMutation(filters, mutation));\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(() => pausedMutations.reduce((promise, mutation) => promise.then(() => mutation.continue().catch(noop)), Promise.resolve()));\n }).then(() => {\n this.#resuming = undefined;\n });\n return this.#resuming;\n }\n}\n\nexport { MutationCache };\n//# sourceMappingURL=mutationCache.mjs.map\n","import { addToStart, addToEnd } from './utils.mjs';\n\nfunction infiniteQueryBehavior() {\n return {\n onFetch: context => {\n context.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 = {\n pages: [],\n pageParams: []\n };\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\n // Get query function\n const queryFn = context.options.queryFn || (() => Promise.reject(new Error('Missing queryFn')));\n\n // Create function to fetch a page\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (typeof param === 'undefined' && 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(queryFnContext);\n const {\n maxPages\n } = 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\n // Fetch first page?\n if (!oldPages.length) {\n result = await fetchPage(empty, options.defaultPageParam);\n }\n\n // fetch next / previous page?\n else if (direction) {\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 }\n\n // Refetch pages\n else {\n // Fetch first page\n result = await fetchPage(empty, oldPageParams[0]);\n\n // Fetch remaining pages\n for (let i = 1; i < oldPages.length; i++) {\n const param = getNextPageParam(options, result);\n result = await fetchPage(result, param);\n }\n }\n return result;\n };\n }\n };\n}\nfunction getNextPageParam(options, {\n pages,\n pageParams\n}) {\n const lastIndex = pages.length - 1;\n return options.getNextPageParam(pages[lastIndex], pages, pageParams[lastIndex], pageParams);\n}\nfunction getPreviousPageParam(options, {\n pages,\n pageParams\n}) {\n return options.getPreviousPageParam?.(pages[0], pages, pageParams[0], pageParams);\n}\n\n/**\n * Checks if there is a next page.\n */\nfunction hasNextPage(options, data) {\n if (!data) return false;\n return typeof getNextPageParam(options, data) !== 'undefined';\n}\n\n/**\n * Checks if there is a previous page.\n */\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam) return false;\n return typeof getPreviousPageParam(options, data) !== 'undefined';\n}\n\nexport { hasNextPage, hasPreviousPage, infiniteQueryBehavior };\n//# sourceMappingURL=infiniteQueryBehavior.mjs.map\n","import { functionalUpdate, noop, hashKey, partialMatchKey, hashQueryKeyByOptions } from './utils.mjs';\nimport { QueryCache } from './queryCache.mjs';\nimport { MutationCache } from './mutationCache.mjs';\nimport { focusManager } from './focusManager.mjs';\nimport { onlineManager } from './onlineManager.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { infiniteQueryBehavior } from './infiniteQueryBehavior.mjs';\n\n// CLASS\n\nclass QueryClient {\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 = new Map();\n this.#mutationDefaults = new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1) 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) return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = undefined;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = undefined;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({\n ...filters,\n fetchStatus: 'fetching'\n }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({\n ...filters,\n status: 'pending'\n }).length;\n }\n getQueryData(queryKey) {\n return this.#queryCache.find({\n queryKey\n })?.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(({\n queryKey,\n state\n }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const query = this.#queryCache.find({\n queryKey\n });\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (typeof data === 'undefined') {\n return undefined;\n }\n const defaultedOptions = this.defaultQueryOptions({\n queryKey\n });\n return this.#queryCache.build(this, defaultedOptions).setData(data, {\n ...options,\n manual: true\n });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(() => this.getQueryCache().findAll(filters).map(({\n queryKey\n }) => [queryKey, this.setQueryData(queryKey, updater, options)]));\n }\n getQueryState(queryKey) {\n return this.#queryCache.find({\n queryKey\n })?.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 = {\n revert: true,\n ...cancelOptions\n };\n const promises = notifyManager.batch(() => this.#queryCache.findAll(filters).map(query => query.cancel(defaultedCancelOptions)));\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 promises = notifyManager.batch(() => this.#queryCache.findAll(filters).filter(query => !query.isDisabled()).map(query => query.fetch(undefined, {\n ...options,\n cancelRefetch: options?.cancelRefetch ?? true\n })));\n let promise = Promise.all(promises).then(noop);\n if (!options?.throwOnError) {\n promise = promise.catch(noop);\n }\n return promise;\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n\n // https://github.com/tannerlinsley/react-query/issues/652\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();\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 = {\n ...result,\n ...queryDefault.defaultOptions\n };\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 = {\n ...result,\n ...queryDefault.defaultOptions\n };\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(defaultedOptions.queryKey, defaultedOptions);\n }\n\n // dependent default values\n if (typeof defaultedOptions.refetchOnReconnect === 'undefined') {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== 'always';\n }\n if (typeof defaultedOptions.throwErrors === 'undefined') {\n defaultedOptions.throwErrors = !!defaultedOptions.suspense;\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}\n\nexport { QueryClient };\n//# sourceMappingURL=queryClient.mjs.map\n","import { shallowEqualObjects, noop, isServer, isValidTimeout, timeUntilStale, replaceData } from './utils.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { focusManager } from './focusManager.mjs';\nimport { Subscribable } from './subscribable.mjs';\nimport { canFetch } from './retryer.mjs';\n\nclass QueryObserver extends Subscribable {\n #client;\n #currentQuery = undefined;\n #currentQueryInitialState = undefined;\n #currentResult = undefined;\n #currentResultState;\n #currentResultOptions;\n #selectError;\n #selectFn;\n #selectResult;\n // This property keeps track of the last defined query data.\n // It will be used to pass the previous data to the placeholder function between renders.\n #lastDefinedQueryData;\n #staleTimeoutId;\n #refetchIntervalId;\n #currentRefetchInterval;\n #trackedProps = new Set();\n constructor(client, options) {\n super();\n this.#client = client;\n this.options = options;\n this.#selectError = null;\n this.bindMethods();\n this.setOptions(options);\n }\n bindMethods() {\n this.refetch = this.refetch.bind(this);\n }\n onSubscribe() {\n if (this.listeners.length === 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.listeners.length) {\n this.destroy();\n }\n }\n shouldFetchOnReconnect() {\n return shouldFetchOn(this.#currentQuery, this.options, this.options.refetchOnReconnect);\n }\n shouldFetchOnWindowFocus() {\n return shouldFetchOn(this.#currentQuery, this.options, this.options.refetchOnWindowFocus);\n }\n destroy() {\n this.listeners = [];\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\n // Keep previous query key if the user does not supply one\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey;\n }\n this.#updateQuery();\n const mounted = this.hasListeners();\n\n // Fetch if there are subscribers\n if (mounted && shouldFetchOptionally(this.#currentQuery, prevQuery, this.options, prevOptions)) {\n this.#executeFetch();\n }\n\n // Update result\n this.#updateResult(notifyOptions);\n\n // Update stale interval if needed\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\n // Update refetch interval if needed\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 return this.createResult(query, options);\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({\n ...options\n } = {}) {\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 // Make sure we reference the latest query as the current one might have been removed\n this.#updateQuery();\n\n // Fetch\n let promise = this.#currentQuery.fetch(this.options, fetchOptions);\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(this.#currentResult.dataUpdatedAt, this.options.staleTime);\n\n // The timeout is sometimes triggered 1 ms before the stale time expiration.\n // To mitigate this issue we always add 1 ms to the timeout.\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.#currentResult.data, 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 = undefined;\n }\n }\n #clearRefetchInterval() {\n if (this.#refetchIntervalId) {\n clearInterval(this.#refetchIntervalId);\n this.#refetchIntervalId = undefined;\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 {\n state\n } = query;\n let {\n error,\n errorUpdatedAt,\n fetchStatus,\n status\n } = state;\n let isPlaceholderData = false;\n let data;\n\n // Optimistically set result in fetching state if needed\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\n // Select data if needed\n if (options.select && typeof state.data !== 'undefined') {\n // Memoize select result\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 }\n // Use query data\n else {\n data = state.data;\n }\n\n // Show placeholder data if needed\n if (typeof options.placeholderData !== 'undefined' && typeof data === 'undefined' && status === 'pending') {\n let placeholderData;\n\n // Memoize placeholder data\n if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {\n placeholderData = prevResult.data;\n } else {\n placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData(this.#lastDefinedQueryData) : 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(prevResult?.data, placeholderData, options);\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\n // Only notify and update result if something has changed\n if (shallowEqualObjects(nextResult, prevResult)) {\n return;\n }\n if (this.#currentResultState.data !== undefined) {\n this.#lastDefinedQueryData = this.#currentResultState.data;\n }\n this.#currentResult = nextResult;\n\n // Determine which callbacks to trigger\n const defaultNotifyOptions = {};\n const shouldNotifyListeners = () => {\n if (!prevResult) {\n return true;\n }\n const {\n notifyOnChangeProps\n } = this.options;\n if (notifyOnChangeProps === 'all' || !notifyOnChangeProps && !this.#trackedProps.size) {\n return true;\n }\n const includedProps = new Set(notifyOnChangeProps ?? this.#trackedProps);\n if (this.options.throwErrors) {\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({\n ...defaultNotifyOptions,\n ...notifyOptions\n });\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 // First, trigger the listeners\n if (notifyOptions.listeners) {\n this.listeners.forEach(listener => {\n listener(this.#currentResult);\n });\n }\n\n // Then the cache listeners\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}\n\nexport { QueryObserver };\n//# sourceMappingURL=queryObserver.mjs.map\n","import { notifyManager } from './notifyManager.mjs';\nimport { QueryObserver } from './queryObserver.mjs';\nimport { Subscribable } from './subscribable.mjs';\n\nfunction difference(array1, array2) {\n return array1.filter(x => array2.indexOf(x) === -1);\n}\nfunction replaceAt(array, index, value) {\n const copy = array.slice(0);\n copy[index] = value;\n return copy;\n}\nclass QueriesObserver extends Subscribable {\n #client;\n #result;\n #queries;\n #observers;\n constructor(client, queries) {\n super();\n this.#client = client;\n this.#queries = [];\n this.#result = [];\n this.#observers = [];\n if (queries) {\n this.setQueries(queries);\n }\n }\n onSubscribe() {\n if (this.listeners.length === 1) {\n this.#observers.forEach(observer => {\n observer.subscribe(result => {\n this.#onUpdate(observer, result);\n });\n });\n }\n }\n onUnsubscribe() {\n if (!this.listeners.length) {\n this.destroy();\n }\n }\n destroy() {\n this.listeners = [];\n this.#observers.forEach(observer => {\n observer.destroy();\n });\n }\n setQueries(queries, notifyOptions) {\n this.#queries = queries;\n notifyManager.batch(() => {\n const prevObservers = this.#observers;\n const newObserverMatches = this.#findMatchingObservers(this.#queries);\n\n // set options for the new observers to notify of changes\n newObserverMatches.forEach(match => match.observer.setOptions(match.defaultedQueryOptions, notifyOptions));\n const newObservers = newObserverMatches.map(match => match.observer);\n const newResult = newObservers.map(observer => observer.getCurrentResult());\n const hasIndexChange = newObservers.some((observer, index) => observer !== prevObservers[index]);\n if (prevObservers.length === newObservers.length && !hasIndexChange) {\n return;\n }\n this.#observers = newObservers;\n this.#result = newResult;\n if (!this.hasListeners()) {\n return;\n }\n difference(prevObservers, newObservers).forEach(observer => {\n observer.destroy();\n });\n difference(newObservers, prevObservers).forEach(observer => {\n observer.subscribe(result => {\n this.#onUpdate(observer, result);\n });\n });\n this.#notify();\n });\n }\n getCurrentResult() {\n return this.#result;\n }\n getQueries() {\n return this.#observers.map(observer => observer.getCurrentQuery());\n }\n getObservers() {\n return this.#observers;\n }\n getOptimisticResult(queries) {\n return this.#findMatchingObservers(queries).map(match => match.observer.getOptimisticResult(match.defaultedQueryOptions));\n }\n #findMatchingObservers(queries) {\n const prevObservers = this.#observers;\n const prevObserversMap = new Map(prevObservers.map(observer => [observer.options.queryHash, observer]));\n const defaultedQueryOptions = queries.map(options => this.#client.defaultQueryOptions(options));\n const matchingObservers = defaultedQueryOptions.flatMap(defaultedOptions => {\n const match = prevObserversMap.get(defaultedOptions.queryHash);\n if (match != null) {\n return [{\n defaultedQueryOptions: defaultedOptions,\n observer: match\n }];\n }\n return [];\n });\n const matchedQueryHashes = new Set(matchingObservers.map(match => match.defaultedQueryOptions.queryHash));\n const unmatchedQueries = defaultedQueryOptions.filter(defaultedOptions => !matchedQueryHashes.has(defaultedOptions.queryHash));\n const getObserver = options => {\n const defaultedOptions = this.#client.defaultQueryOptions(options);\n const currentObserver = this.#observers.find(o => o.options.queryHash === defaultedOptions.queryHash);\n return currentObserver ?? new QueryObserver(this.#client, defaultedOptions);\n };\n const newOrReusedObservers = unmatchedQueries.map(options => {\n return {\n defaultedQueryOptions: options,\n observer: getObserver(options)\n };\n });\n const sortMatchesByOrderOfQueries = (a, b) => defaultedQueryOptions.indexOf(a.defaultedQueryOptions) - defaultedQueryOptions.indexOf(b.defaultedQueryOptions);\n return matchingObservers.concat(newOrReusedObservers).sort(sortMatchesByOrderOfQueries);\n }\n #onUpdate(observer, result) {\n const index = this.#observers.indexOf(observer);\n if (index !== -1) {\n this.#result = replaceAt(this.#result, index, result);\n this.#notify();\n }\n }\n #notify() {\n notifyManager.batch(() => {\n this.listeners.forEach(listener => {\n listener(this.#result);\n });\n });\n }\n}\n\nexport { QueriesObserver };\n//# sourceMappingURL=queriesObserver.mjs.map\n","import { QueryObserver } from './queryObserver.mjs';\nimport { infiniteQueryBehavior, hasNextPage, hasPreviousPage } from './infiniteQueryBehavior.mjs';\n\nclass InfiniteQueryObserver extends QueryObserver {\n // Type override\n\n // Type override\n\n // Type override\n\n // eslint-disable-next-line @typescript-eslint/no-useless-constructor\n constructor(client, options) {\n super(client, options);\n }\n bindMethods() {\n super.bindMethods();\n this.fetchNextPage = this.fetchNextPage.bind(this);\n this.fetchPreviousPage = this.fetchPreviousPage.bind(this);\n }\n setOptions(options, notifyOptions) {\n super.setOptions({\n ...options,\n behavior: infiniteQueryBehavior()\n }, notifyOptions);\n }\n getOptimisticResult(options) {\n options.behavior = infiniteQueryBehavior();\n return super.getOptimisticResult(options);\n }\n fetchNextPage(options) {\n return this.fetch({\n ...options,\n meta: {\n fetchMore: {\n direction: 'forward'\n }\n }\n });\n }\n fetchPreviousPage(options) {\n return this.fetch({\n ...options,\n meta: {\n fetchMore: {\n direction: 'backward'\n }\n }\n });\n }\n createResult(query, options) {\n const {\n state\n } = query;\n const result = super.createResult(query, options);\n const {\n isFetching,\n isRefetching\n } = result;\n const isFetchingNextPage = isFetching && state.fetchMeta?.fetchMore?.direction === 'forward';\n const isFetchingPreviousPage = isFetching && state.fetchMeta?.fetchMore?.direction === 'backward';\n return {\n ...result,\n fetchNextPage: this.fetchNextPage,\n fetchPreviousPage: this.fetchPreviousPage,\n hasNextPage: hasNextPage(options, state.data),\n hasPreviousPage: hasPreviousPage(options, state.data),\n isFetchingNextPage,\n isFetchingPreviousPage,\n isRefetching: isRefetching && !isFetchingNextPage && !isFetchingPreviousPage\n };\n }\n}\n\nexport { InfiniteQueryObserver };\n//# sourceMappingURL=infiniteQueryObserver.mjs.map\n","import { getDefaultState } from './mutation.mjs';\nimport { notifyManager } from './notifyManager.mjs';\nimport { Subscribable } from './subscribable.mjs';\nimport { shallowEqualObjects } from './utils.mjs';\n\n// TYPES\n\n// CLASS\n\nclass MutationObserver extends Subscribable {\n #client;\n #currentResult = undefined;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\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.listeners.length) {\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 = undefined;\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 // First trigger the mutate callbacks\n if (this.#mutateOptions && this.hasListeners()) {\n if (action?.type === 'success') {\n this.#mutateOptions.onSuccess?.(action.data, this.#currentResult.variables, this.#currentResult.context);\n this.#mutateOptions.onSettled?.(action.data, null, this.#currentResult.variables, this.#currentResult.context);\n } else if (action?.type === 'error') {\n this.#mutateOptions.onError?.(action.error, this.#currentResult.variables, this.#currentResult.context);\n this.#mutateOptions.onSettled?.(undefined, action.error, this.#currentResult.variables, this.#currentResult.context);\n }\n }\n\n // Then trigger the listeners\n this.listeners.forEach(listener => {\n listener(this.#currentResult);\n });\n });\n }\n}\n\nexport { MutationObserver };\n//# sourceMappingURL=mutationObserver.mjs.map\n","// TYPES\n\n// FUNCTIONS\n\nfunction dehydrateMutation(mutation) {\n return {\n mutationKey: mutation.options.mutationKey,\n state: mutation.state\n };\n}\n\n// Most config is not dehydrated but instead meant to configure again when\n// consuming the de/rehydrated data, typically with useQuery on the client.\n// Sometimes it might make sense to prefetch data on the server and include\n// in the html-payload, but not consume it on the initial render.\nfunction dehydrateQuery(query) {\n return {\n state: query.state,\n queryKey: query.queryKey,\n queryHash: query.queryHash\n };\n}\nfunction defaultShouldDehydrateMutation(mutation) {\n return mutation.state.isPaused;\n}\nfunction defaultShouldDehydrateQuery(query) {\n return query.state.status === 'success';\n}\nfunction dehydrate(client, options = {}) {\n const filterMutation = options.shouldDehydrateMutation ?? defaultShouldDehydrateMutation;\n const mutations = client.getMutationCache().getAll().flatMap(mutation => filterMutation(mutation) ? [dehydrateMutation(mutation)] : []);\n const filterQuery = options.shouldDehydrateQuery ?? defaultShouldDehydrateQuery;\n const queries = client.getQueryCache().getAll().flatMap(query => filterQuery(query) ? [dehydrateQuery(query)] : []);\n return {\n mutations,\n queries\n };\n}\nfunction hydrate(client, dehydratedState, options) {\n if (typeof dehydratedState !== 'object' || dehydratedState === null) {\n return;\n }\n const mutationCache = client.getMutationCache();\n const queryCache = client.getQueryCache();\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const mutations = dehydratedState.mutations || [];\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const queries = dehydratedState.queries || [];\n mutations.forEach(dehydratedMutation => {\n mutationCache.build(client, {\n ...options?.defaultOptions?.mutations,\n mutationKey: dehydratedMutation.mutationKey\n }, dehydratedMutation.state);\n });\n queries.forEach(dehydratedQuery => {\n const query = queryCache.get(dehydratedQuery.queryHash);\n\n // Reset fetch status to idle in the dehydrated state to avoid\n // query being stuck in fetching state upon hydration\n const dehydratedQueryState = {\n ...dehydratedQuery.state,\n fetchStatus: 'idle'\n };\n\n // Do not hydrate if an existing query exists with newer data\n if (query) {\n if (query.state.dataUpdatedAt < dehydratedQueryState.dataUpdatedAt) {\n query.setState(dehydratedQueryState);\n }\n return;\n }\n\n // Restore query\n queryCache.build(client, {\n ...options?.defaultOptions?.queries,\n queryKey: dehydratedQuery.queryKey,\n queryHash: dehydratedQuery.queryHash\n }, dehydratedQueryState);\n });\n}\n\nexport { defaultShouldDehydrateMutation, defaultShouldDehydrateQuery, dehydrate, hydrate };\n//# sourceMappingURL=hydration.mjs.map\n","import { isRef, unref } from 'vue-demi'\nimport type { MaybeRefDeep } from './types'\n\nexport const VUE_QUERY_CLIENT = 'VUE_QUERY_CLIENT'\n\nexport function getClientKey(key?: string) {\n const suffix = key ? `:${key}` : ''\n return `${VUE_QUERY_CLIENT}${suffix}`\n}\n\nexport function updateState(\n state: Record<string, unknown>,\n update: Record<string, any>,\n): void {\n Object.keys(state).forEach((key) => {\n state[key] = update[key]\n })\n}\n\nexport function cloneDeep<T>(\n value: MaybeRefDeep<T>,\n customizer?: (val: MaybeRefDeep<T>) => T | undefined,\n): T {\n if (customizer) {\n const result = customizer(value)\n // If it's a ref of undefined, return undefined\n if (result === undefined && isRef(value)) {\n return result as T\n }\n if (result !== undefined) {\n return result\n }\n }\n\n if (Array.isArray(value)) {\n return value.map((val) => cloneDeep(val, customizer)) as unknown as T\n }\n\n if (typeof value === 'object' && isPlainObject(value)) {\n const entries = Object.entries(value).map(([key, val]) => [\n key,\n cloneDeep(val, customizer),\n ])\n return Object.fromEntries(entries)\n }\n\n return value as T\n}\n\nexport function cloneDeepUnref<T>(obj: MaybeRefDeep<T>): T {\n return cloneDeep(obj, (val) => {\n if (isRef(val)) {\n return cloneDeepUnref(unref(val))\n }\n\n return undefined\n })\n}\n\nfunction isPlainObject(value: unknown): value is Object {\n if (Object.prototype.toString.call(value) !== '[object Object]') {\n return false\n }\n\n const prototype = Object.getPrototypeOf(value)\n return prototype === null || prototype === Object.prototype\n}\n","import { getCurrentInstance, inject } from 'vue-demi'\n\nimport type { QueryClient } from './queryClient'\nimport { getClientKey } from './utils'\n\nexport function useQueryClient(id = ''): QueryClient {\n const vm = getCurrentInstance()?.proxy\n\n if (!vm) {\n throw new Error('vue-query hooks can only be used inside setup() function.')\n }\n\n const key = getClientKey(id)\n const queryClient = inject<QueryClient>(key)\n\n if (!queryClient) {\n throw new Error(\n \"No 'queryClient' found in Vue context, use 'VueQueryPlugin' to properly initialize the library.\",\n )\n }\n\n return queryClient\n}\n","import { QueryCache as QC } from '@tanstack/query-core'\nimport type {\n Query,\n QueryFilters,\n WithRequired,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep } from './types'\nimport { cloneDeepUnref } from './utils'\n\nexport class QueryCache extends QC {\n find<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData>(\n filters: MaybeRefDeep<WithRequired<QueryFilters, 'queryKey'>>,\n ): Query<TQueryFnData, TError, TData> | undefined {\n return super.find(cloneDeepUnref(filters))\n }\n\n findAll(filters: MaybeRefDeep<QueryFilters> = {}): Query[] {\n return super.findAll(cloneDeepUnref(filters))\n }\n}\n","import { MutationCache as MC } from '@tanstack/query-core'\nimport type {\n Mutation,\n MutationFilters,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep } from './types'\nimport { cloneDeepUnref } from './utils'\n\nexport class MutationCache extends MC {\n find<\n TData = unknown,\n TError = DefaultError,\n TVariables = any,\n TContext = unknown,\n >(\n filters: MaybeRefDeep<MutationFilters>,\n ): Mutation<TData, TError, TVariables, TContext> | undefined {\n return super.find(cloneDeepUnref(filters))\n }\n\n findAll(filters: MaybeRefDeep<MutationFilters> = {}): Mutation[] {\n return super.findAll(cloneDeepUnref(filters))\n }\n}\n","import { ref } from 'vue-demi'\nimport { QueryClient as QC } from '@tanstack/query-core'\nimport type {\n QueryKey,\n QueryClientConfig,\n SetDataOptions,\n ResetOptions,\n CancelOptions,\n InvalidateQueryFilters,\n InvalidateOptions,\n RefetchQueryFilters,\n RefetchOptions,\n FetchQueryOptions,\n FetchInfiniteQueryOptions,\n InfiniteData,\n DefaultOptions,\n QueryObserverOptions,\n MutationKey,\n MutationObserverOptions,\n QueryFilters,\n MutationFilters,\n QueryState,\n Updater,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep } from './types'\nimport { cloneDeepUnref } from './utils'\nimport { QueryCache } from './queryCache'\nimport { MutationCache } from './mutationCache'\n\nexport class QueryClient extends QC {\n constructor(config: MaybeRefDeep<QueryClientConfig> = {}) {\n const unreffedConfig = cloneDeepUnref(config)\n const vueQueryConfig: QueryClientConfig = {\n defaultOptions: unreffedConfig.defaultOptions,\n queryCache: unreffedConfig.queryCache || new QueryCache(),\n mutationCache: unreffedConfig.mutationCache || new MutationCache(),\n }\n super(vueQueryConfig)\n }\n\n isRestoring = ref(false)\n\n isFetching(filters: MaybeRefDeep<QueryFilters> = {}): number {\n return super.isFetching(cloneDeepUnref(filters))\n }\n\n isMutating(filters: MaybeRefDeep<MutationFilters> = {}): number {\n return super.isMutating(cloneDeepUnref(filters))\n }\n\n getQueryData<TData = unknown>(\n queryKey: MaybeRefDeep<QueryKey>,\n ): TData | undefined {\n return super.getQueryData(cloneDeepUnref(queryKey))\n }\n\n getQueriesData<TData = unknown>(\n filters: MaybeRefDeep<QueryFilters>,\n ): [QueryKey, TData | undefined][] {\n return super.getQueriesData(cloneDeepUnref(filters))\n }\n\n setQueryData<TData>(\n queryKey: MaybeRefDeep<QueryKey>,\n updater: Updater<TData | undefined, TData | undefined>,\n options: MaybeRefDeep<SetDataOptions> = {},\n ): TData | undefined {\n return super.setQueryData(\n cloneDeepUnref(queryKey),\n updater,\n cloneDeepUnref(options),\n )\n }\n\n setQueriesData<TData>(\n filters: MaybeRefDeep<QueryFilters>,\n updater: Updater<TData | undefined, TData | undefined>,\n options: MaybeRefDeep<SetDataOptions> = {},\n ): [QueryKey, TData | undefined][] {\n return super.setQueriesData(\n cloneDeepUnref(filters),\n updater,\n cloneDeepUnref(options),\n )\n }\n\n getQueryState<TData = unknown, TError = DefaultError>(\n queryKey: MaybeRefDeep<QueryKey>,\n ): QueryState<TData, TError> | undefined {\n return super.getQueryState(cloneDeepUnref(queryKey))\n }\n\n removeQueries(filters: MaybeRefDeep<QueryFilters> = {}): void {\n return super.removeQueries(cloneDeepUnref(filters))\n }\n\n resetQueries(\n filters: MaybeRefDeep<QueryFilters> = {},\n options: MaybeRefDeep<ResetOptions> = {},\n ): Promise<void> {\n return super.resetQueries(cloneDeepUnref(filters), cloneDeepUnref(options))\n }\n\n cancelQueries(\n filters: MaybeRefDeep<QueryFilters> = {},\n options: MaybeRefDeep<CancelOptions> = {},\n ): Promise<void> {\n return super.cancelQueries(cloneDeepUnref(filters), cloneDeepUnref(options))\n }\n\n invalidateQueries(\n filters: MaybeRefDeep<InvalidateQueryFilters> = {},\n options: MaybeRefDeep<InvalidateOptions> = {},\n ): Promise<void> {\n return super.invalidateQueries(\n cloneDeepUnref(filters),\n cloneDeepUnref(options),\n )\n }\n\n refetchQueries(\n filters: MaybeRefDeep<RefetchQueryFilters> = {},\n options: MaybeRefDeep<RefetchOptions> = {},\n ): Promise<void> {\n return super.refetchQueries(\n cloneDeepUnref(filters),\n cloneDeepUnref(options),\n )\n }\n\n fetchQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n ): Promise<TData>\n fetchQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: MaybeRefDeep<\n FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n >,\n ): Promise<TData> {\n return super.fetchQuery(cloneDeepUnref(options))\n }\n\n prefetchQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n ): Promise<void>\n prefetchQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n >(\n options: MaybeRefDeep<\n FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n >,\n ): Promise<void> {\n return super.prefetchQuery(cloneDeepUnref(options))\n }\n\n fetchInfiniteQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n ): Promise<InfiniteData<TData>>\n fetchInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: MaybeRefDeep<\n FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >\n >,\n ): Promise<InfiniteData<TData>> {\n return super.fetchInfiniteQuery(cloneDeepUnref(options))\n }\n\n prefetchInfiniteQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n ): Promise<void>\n prefetchInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n >(\n options: MaybeRefDeep<\n FetchInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >\n >,\n ): Promise<void> {\n return super.prefetchInfiniteQuery(cloneDeepUnref(options))\n }\n\n setDefaultOptions(options: MaybeRefDeep<DefaultOptions>): void {\n super.setDefaultOptions(cloneDeepUnref(options))\n }\n\n setQueryDefaults(\n queryKey: MaybeRefDeep<QueryKey>,\n options: MaybeRefDeep<\n Omit<QueryObserverOptions<unknown, any, any, any>, 'queryKey'>\n >,\n ): void {\n super.setQueryDefaults(cloneDeepUnref(queryKey), cloneDeepUnref(options))\n }\n\n getQueryDefaults(\n queryKey: MaybeRefDeep<QueryKey>,\n ): QueryObserverOptions<any, any, any, any, any> {\n return super.getQueryDefaults(cloneDeepUnref(queryKey))\n }\n\n setMutationDefaults(\n mutationKey: MaybeRefDeep<MutationKey>,\n options: MaybeRefDeep<MutationObserverOptions<any, any, any, any>>,\n ): void {\n super.setMutationDefaults(\n cloneDeepUnref(mutationKey),\n cloneDeepUnref(options),\n )\n }\n\n getMutationDefaults(\n mutationKey: MaybeRefDeep<MutationKey>,\n ): MutationObserverOptions<any, any, any, any> {\n return super.getMutationDefaults(cloneDeepUnref(mutationKey))\n }\n}\n","export function getDevtoolsGlobalHook() {\n return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;\n}\nexport function getTarget() {\n // @ts-ignore\n return (typeof navigator !== 'undefined' && typeof window !== 'undefined')\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n}\nexport const isProxyAvailable = typeof Proxy === 'function';\n","export const HOOK_SETUP = 'devtools-plugin:setup';\nexport const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';\n","let supported;\nlet perf;\nexport function isPerformanceSupported() {\n var _a;\n if (supported !== undefined) {\n return supported;\n }\n if (typeof window !== 'undefined' && window.performance) {\n supported = true;\n perf = window.performance;\n }\n else if (typeof global !== 'undefined' && ((_a = global.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {\n supported = true;\n perf = global.perf_hooks.performance;\n }\n else {\n supported = false;\n }\n return supported;\n}\nexport function now() {\n return isPerformanceSupported() ? perf.now() : Date.now();\n}\n","import { HOOK_PLUGIN_SETTINGS_SET } from './const.js';\nimport { now } from './time.js';\nexport class ApiProxy {\n constructor(plugin, hook) {\n this.target = null;\n this.targetQueue = [];\n this.onQueue = [];\n this.plugin = plugin;\n this.hook = hook;\n const defaultSettings = {};\n if (plugin.settings) {\n for (const id in plugin.settings) {\n const item = plugin.settings[id];\n defaultSettings[id] = item.defaultValue;\n }\n }\n const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;\n let currentSettings = Object.assign({}, defaultSettings);\n try {\n const raw = localStorage.getItem(localSettingsSaveId);\n const data = JSON.parse(raw);\n Object.assign(currentSettings, data);\n }\n catch (e) {\n // noop\n }\n this.fallbacks = {\n getSettings() {\n return currentSettings;\n },\n setSettings(value) {\n try {\n localStorage.setItem(localSettingsSaveId, JSON.stringify(value));\n }\n catch (e) {\n // noop\n }\n currentSettings = value;\n },\n now() {\n return now();\n },\n };\n if (hook) {\n hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {\n if (pluginId === this.plugin.id) {\n this.fallbacks.setSettings(value);\n }\n });\n }\n this.proxiedOn = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target.on[prop];\n }\n else {\n return (...args) => {\n this.onQueue.push({\n method: prop,\n args,\n });\n };\n }\n },\n });\n this.proxiedTarget = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target[prop];\n }\n else if (prop === 'on') {\n return this.proxiedOn;\n }\n else if (Object.keys(this.fallbacks).includes(prop)) {\n return (...args) => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve: () => { },\n });\n return this.fallbacks[prop](...args);\n };\n }\n else {\n return (...args) => {\n return new Promise(resolve => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve,\n });\n });\n };\n }\n },\n });\n }\n async setRealTarget(target) {\n this.target = target;\n for (const item of this.onQueue) {\n this.target.on[item.method](...item.args);\n }\n for (const item of this.targetQueue) {\n item.resolve(await this.target[item.method](...item.args));\n }\n }\n}\n","import { getTarget, getDevtoolsGlobalHook, isProxyAvailable } from './env.js';\nimport { HOOK_SETUP } from './const.js';\nimport { ApiProxy } from './proxy.js';\nexport * from './api/index.js';\nexport * from './plugin.js';\nexport * from './time.js';\nexport function setupDevtoolsPlugin(pluginDescriptor, setupFn) {\n const descriptor = pluginDescriptor;\n const target = getTarget();\n const hook = getDevtoolsGlobalHook();\n const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;\n if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {\n hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);\n }\n else {\n const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;\n const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];\n list.push({\n pluginDescriptor: descriptor,\n setupFn,\n proxy,\n });\n if (proxy)\n setupFn(proxy.proxiedTarget);\n }\n}\n","/**\n * match-sorter-utils\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nconst characterMap = {\n À: 'A',\n Á: 'A',\n Â: 'A',\n Ã: 'A',\n Ä: 'A',\n Å: 'A',\n Ấ: 'A',\n Ắ: 'A',\n Ẳ: 'A',\n Ẵ: 'A',\n Ặ: 'A',\n Æ: 'AE',\n Ầ: 'A',\n Ằ: 'A',\n Ȃ: 'A',\n Ç: 'C',\n Ḉ: 'C',\n È: 'E',\n É: 'E',\n Ê: 'E',\n Ë: 'E',\n Ế: 'E',\n Ḗ: 'E',\n Ề: 'E',\n Ḕ: 'E',\n Ḝ: 'E',\n Ȇ: 'E',\n Ì: 'I',\n Í: 'I',\n Î: 'I',\n Ï: 'I',\n Ḯ: 'I',\n Ȋ: 'I',\n Ð: 'D',\n Ñ: 'N',\n Ò: 'O',\n Ó: 'O',\n Ô: 'O',\n Õ: 'O',\n Ö: 'O',\n Ø: 'O',\n Ố: 'O',\n Ṍ: 'O',\n Ṓ: 'O',\n Ȏ: 'O',\n Ù: 'U',\n Ú: 'U',\n Û: 'U',\n Ü: 'U',\n Ý: 'Y',\n à: 'a',\n á: 'a',\n â: 'a',\n ã: 'a',\n ä: 'a',\n å: 'a',\n ấ: 'a',\n ắ: 'a',\n ẳ: 'a',\n ẵ: 'a',\n ặ: 'a',\n æ: 'ae',\n ầ: 'a',\n ằ: 'a',\n ȃ: 'a',\n ç: 'c',\n ḉ: 'c',\n è: 'e',\n é: 'e',\n ê: 'e',\n ë: 'e',\n ế: 'e',\n ḗ: 'e',\n ề: 'e',\n ḕ: 'e',\n ḝ: 'e',\n ȇ: 'e',\n ì: 'i',\n í: 'i',\n î: 'i',\n ï: 'i',\n ḯ: 'i',\n ȋ: 'i',\n ð: 'd',\n ñ: 'n',\n ò: 'o',\n ó: 'o',\n ô: 'o',\n õ: 'o',\n ö: 'o',\n ø: 'o',\n ố: 'o',\n ṍ: 'o',\n ṓ: 'o',\n ȏ: 'o',\n ù: 'u',\n ú: 'u',\n û: 'u',\n ü: 'u',\n ý: 'y',\n ÿ: 'y',\n Ā: 'A',\n ā: 'a',\n Ă: 'A',\n ă: 'a',\n Ą: 'A',\n ą: 'a',\n Ć: 'C',\n ć: 'c',\n Ĉ: 'C',\n ĉ: 'c',\n Ċ: 'C',\n ċ: 'c',\n Č: 'C',\n č: 'c',\n C̆: 'C',\n c̆: 'c',\n Ď: 'D',\n ď: 'd',\n Đ: 'D',\n đ: 'd',\n Ē: 'E',\n ē: 'e',\n Ĕ: 'E',\n ĕ: 'e',\n Ė: 'E',\n ė: 'e',\n Ę: 'E',\n ę: 'e',\n Ě: 'E',\n ě: 'e',\n Ĝ: 'G',\n Ǵ: 'G',\n ĝ: 'g',\n ǵ: 'g',\n Ğ: 'G',\n ğ: 'g',\n Ġ: 'G',\n ġ: 'g',\n Ģ: 'G',\n ģ: 'g',\n Ĥ: 'H',\n ĥ: 'h',\n Ħ: 'H',\n ħ: 'h',\n Ḫ: 'H',\n ḫ: 'h',\n Ĩ: 'I',\n ĩ: 'i',\n Ī: 'I',\n ī: 'i',\n Ĭ: 'I',\n ĭ: 'i',\n Į: 'I',\n į: 'i',\n İ: 'I',\n ı: 'i',\n IJ: 'IJ',\n ij: 'ij',\n Ĵ: 'J',\n ĵ: 'j',\n Ķ: 'K',\n ķ: 'k',\n Ḱ: 'K',\n ḱ: 'k',\n K̆: 'K',\n k̆: 'k',\n Ĺ: 'L',\n ĺ: 'l',\n Ļ: 'L',\n ļ: 'l',\n Ľ: 'L',\n ľ: 'l',\n Ŀ: 'L',\n ŀ: 'l',\n Ł: 'l',\n ł: 'l',\n Ḿ: 'M',\n ḿ: 'm',\n M̆: 'M',\n m̆: 'm',\n Ń: 'N',\n ń: 'n',\n Ņ: 'N',\n ņ: 'n',\n Ň: 'N',\n ň: 'n',\n ʼn: 'n',\n N̆: 'N',\n n̆: 'n',\n Ō: 'O',\n ō: 'o',\n Ŏ: 'O',\n ŏ: 'o',\n Ő: 'O',\n ő: 'o',\n Œ: 'OE',\n œ: 'oe',\n P̆: 'P',\n p̆: 'p',\n Ŕ: 'R',\n ŕ: 'r',\n Ŗ: 'R',\n ŗ: 'r',\n Ř: 'R',\n ř: 'r',\n R̆: 'R',\n r̆: 'r',\n Ȓ: 'R',\n ȓ: 'r',\n Ś: 'S',\n ś: 's',\n Ŝ: 'S',\n ŝ: 's',\n Ş: 'S',\n Ș: 'S',\n ș: 's',\n ş: 's',\n Š: 'S',\n š: 's',\n Ţ: 'T',\n ţ: 't',\n ț: 't',\n Ț: 'T',\n Ť: 'T',\n ť: 't',\n Ŧ: 'T',\n ŧ: 't',\n T̆: 'T',\n t̆: 't',\n Ũ: 'U',\n ũ: 'u',\n Ū: 'U',\n ū: 'u',\n Ŭ: 'U',\n ŭ: 'u',\n Ů: 'U',\n ů: 'u',\n Ű: 'U',\n ű: 'u',\n Ų: 'U',\n ų: 'u',\n Ȗ: 'U',\n ȗ: 'u',\n V̆: 'V',\n v̆: 'v',\n Ŵ: 'W',\n ŵ: 'w',\n Ẃ: 'W',\n ẃ: 'w',\n X̆: 'X',\n x̆: 'x',\n Ŷ: 'Y',\n ŷ: 'y',\n Ÿ: 'Y',\n Y̆: 'Y',\n y̆: 'y',\n Ź: 'Z',\n ź: 'z',\n Ż: 'Z',\n ż: 'z',\n Ž: 'Z',\n ž: 'z',\n ſ: 's',\n ƒ: 'f',\n Ơ: 'O',\n ơ: 'o',\n Ư: 'U',\n ư: 'u',\n Ǎ: 'A',\n ǎ: 'a',\n Ǐ: 'I',\n ǐ: 'i',\n Ǒ: 'O',\n ǒ: 'o',\n Ǔ: 'U',\n ǔ: 'u',\n Ǖ: 'U',\n ǖ: 'u',\n Ǘ: 'U',\n ǘ: 'u',\n Ǚ: 'U',\n ǚ: 'u',\n Ǜ: 'U',\n ǜ: 'u',\n Ứ: 'U',\n ứ: 'u',\n Ṹ: 'U',\n ṹ: 'u',\n Ǻ: 'A',\n ǻ: 'a',\n Ǽ: 'AE',\n ǽ: 'ae',\n Ǿ: 'O',\n ǿ: 'o',\n Þ: 'TH',\n þ: 'th',\n Ṕ: 'P',\n ṕ: 'p',\n Ṥ: 'S',\n ṥ: 's',\n X́: 'X',\n x́: 'x',\n Ѓ: 'Г',\n ѓ: 'г',\n Ќ: 'К',\n ќ: 'к',\n A̋: 'A',\n a̋: 'a',\n E̋: 'E',\n e̋: 'e',\n I̋: 'I',\n i̋: 'i',\n Ǹ: 'N',\n ǹ: 'n',\n Ồ: 'O',\n ồ: 'o',\n Ṑ: 'O',\n ṑ: 'o',\n Ừ: 'U',\n ừ: 'u',\n Ẁ: 'W',\n ẁ: 'w',\n Ỳ: 'Y',\n ỳ: 'y',\n Ȁ: 'A',\n ȁ: 'a',\n Ȅ: 'E',\n ȅ: 'e',\n Ȉ: 'I',\n ȉ: 'i',\n Ȍ: 'O',\n ȍ: 'o',\n Ȑ: 'R',\n ȑ: 'r',\n Ȕ: 'U',\n ȕ: 'u',\n B̌: 'B',\n b̌: 'b',\n Č̣: 'C',\n č̣: 'c',\n Ê̌: 'E',\n ê̌: 'e',\n F̌: 'F',\n f̌: 'f',\n Ǧ: 'G',\n ǧ: 'g',\n Ȟ: 'H',\n ȟ: 'h',\n J̌: 'J',\n ǰ: 'j',\n Ǩ: 'K',\n ǩ: 'k',\n M̌: 'M',\n m̌: 'm',\n P̌: 'P',\n p̌: 'p',\n Q̌: 'Q',\n q̌: 'q',\n Ř̩: 'R',\n ř̩: 'r',\n Ṧ: 'S',\n ṧ: 's',\n V̌: 'V',\n v̌: 'v',\n W̌: 'W',\n w̌: 'w',\n X̌: 'X',\n x̌: 'x',\n Y̌: 'Y',\n y̌: 'y',\n A̧: 'A',\n a̧: 'a',\n B̧: 'B',\n b̧: 'b',\n Ḑ: 'D',\n ḑ: 'd',\n Ȩ: 'E',\n ȩ: 'e',\n Ɛ̧: 'E',\n ɛ̧: 'e',\n Ḩ: 'H',\n ḩ: 'h',\n I̧: 'I',\n i̧: 'i',\n Ɨ̧: 'I',\n ɨ̧: 'i',\n M̧: 'M',\n m̧: 'm',\n O̧: 'O',\n o̧: 'o',\n Q̧: 'Q',\n q̧: 'q',\n U̧: 'U',\n u̧: 'u',\n X̧: 'X',\n x̧: 'x',\n Z̧: 'Z',\n z̧: 'z'\n};\nconst chars = Object.keys(characterMap).join('|');\nconst allAccents = new RegExp(chars, 'g');\nfunction removeAccents(str) {\n return str.replace(allAccents, match => {\n return characterMap[match];\n });\n}\n\n/**\n * @name match-sorter\n * @license MIT license.\n * @copyright (c) 2099 Kent C. Dodds\n * @author Kent C. Dodds <me@kentcdodds.com> (https://kentcdodds.com)\n */\nconst rankings = {\n CASE_SENSITIVE_EQUAL: 7,\n EQUAL: 6,\n STARTS_WITH: 5,\n WORD_STARTS_WITH: 4,\n CONTAINS: 3,\n ACRONYM: 2,\n MATCHES: 1,\n NO_MATCH: 0\n};\n/**\n * Gets the highest ranking for value for the given item based on its values for the given keys\n * @param {*} item - the item to rank\n * @param {Array} keys - the keys to get values from the item for the ranking\n * @param {String} value - the value to rank against\n * @param {Object} options - options to control the ranking\n * @return {{rank: Number, accessorIndex: Number, accessorThreshold: Number}} - the highest ranking\n */\nfunction rankItem(item, value, options) {\n var _options$threshold;\n options = options || {};\n options.threshold = (_options$threshold = options.threshold) != null ? _options$threshold : rankings.MATCHES;\n if (!options.accessors) {\n // if keys is not specified, then we assume the item given is ready to be matched\n const rank = getMatchRanking(item, value, options);\n return {\n // ends up being duplicate of 'item' in matches but consistent\n rankedValue: item,\n rank,\n accessorIndex: -1,\n accessorThreshold: options.threshold,\n passed: rank >= options.threshold\n };\n }\n const valuesToRank = getAllValuesToRank(item, options.accessors);\n const rankingInfo = {\n rankedValue: item,\n rank: rankings.NO_MATCH,\n accessorIndex: -1,\n accessorThreshold: options.threshold,\n passed: false\n };\n for (let i = 0; i < valuesToRank.length; i++) {\n const rankValue = valuesToRank[i];\n let newRank = getMatchRanking(rankValue.itemValue, value, options);\n const {\n minRanking,\n maxRanking,\n threshold = options.threshold\n } = rankValue.attributes;\n if (newRank < minRanking && newRank >= rankings.MATCHES) {\n newRank = minRanking;\n } else if (newRank > maxRanking) {\n newRank = maxRanking;\n }\n newRank = Math.min(newRank, maxRanking);\n if (newRank >= threshold && newRank > rankingInfo.rank) {\n rankingInfo.rank = newRank;\n rankingInfo.passed = true;\n rankingInfo.accessorIndex = i;\n rankingInfo.accessorThreshold = threshold;\n rankingInfo.rankedValue = rankValue.itemValue;\n }\n }\n return rankingInfo;\n}\n\n/**\n * Gives a rankings score based on how well the two strings match.\n * @param {String} testString - the string to test against\n * @param {String} stringToRank - the string to rank\n * @param {Object} options - options for the match (like keepDiacritics for comparison)\n * @returns {Number} the ranking for how well stringToRank matches testString\n */\nfunction getMatchRanking(testString, stringToRank, options) {\n testString = prepareValueForComparison(testString, options);\n stringToRank = prepareValueForComparison(stringToRank, options);\n\n // too long\n if (stringToRank.length > testString.length) {\n return rankings.NO_MATCH;\n }\n\n // case sensitive equals\n if (testString === stringToRank) {\n return rankings.CASE_SENSITIVE_EQUAL;\n }\n\n // Lower casing before further comparison\n testString = testString.toLowerCase();\n stringToRank = stringToRank.toLowerCase();\n\n // case insensitive equals\n if (testString === stringToRank) {\n return rankings.EQUAL;\n }\n\n // starts with\n if (testString.startsWith(stringToRank)) {\n return rankings.STARTS_WITH;\n }\n\n // word starts with\n if (testString.includes(` ${stringToRank}`)) {\n return rankings.WORD_STARTS_WITH;\n }\n\n // contains\n if (testString.includes(stringToRank)) {\n return rankings.CONTAINS;\n } else if (stringToRank.length === 1) {\n // If the only character in the given stringToRank\n // isn't even contained in the testString, then\n // it's definitely not a match.\n return rankings.NO_MATCH;\n }\n\n // acronym\n if (getAcronym(testString).includes(stringToRank)) {\n return rankings.ACRONYM;\n }\n\n // will return a number between rankings.MATCHES and\n // rankings.MATCHES + 1 depending on how close of a match it is.\n return getClosenessRanking(testString, stringToRank);\n}\n\n/**\n * Generates an acronym for a string.\n *\n * @param {String} string the string for which to produce the acronym\n * @returns {String} the acronym\n */\nfunction getAcronym(string) {\n let acronym = '';\n const wordsInString = string.split(' ');\n wordsInString.forEach(wordInString => {\n const splitByHyphenWords = wordInString.split('-');\n splitByHyphenWords.forEach(splitByHyphenWord => {\n acronym += splitByHyphenWord.substr(0, 1);\n });\n });\n return acronym;\n}\n\n/**\n * Returns a score based on how spread apart the\n * characters from the stringToRank are within the testString.\n * A number close to rankings.MATCHES represents a loose match. A number close\n * to rankings.MATCHES + 1 represents a tighter match.\n * @param {String} testString - the string to test against\n * @param {String} stringToRank - the string to rank\n * @returns {Number} the number between rankings.MATCHES and\n * rankings.MATCHES + 1 for how well stringToRank matches testString\n */\nfunction getClosenessRanking(testString, stringToRank) {\n let matchingInOrderCharCount = 0;\n let charNumber = 0;\n function findMatchingCharacter(matchChar, string, index) {\n for (let j = index, J = string.length; j < J; j++) {\n const stringChar = string[j];\n if (stringChar === matchChar) {\n matchingInOrderCharCount += 1;\n return j + 1;\n }\n }\n return -1;\n }\n function getRanking(spread) {\n const spreadPercentage = 1 / spread;\n const inOrderPercentage = matchingInOrderCharCount / stringToRank.length;\n const ranking = rankings.MATCHES + inOrderPercentage * spreadPercentage;\n return ranking;\n }\n const firstIndex = findMatchingCharacter(stringToRank[0], testString, 0);\n if (firstIndex < 0) {\n return rankings.NO_MATCH;\n }\n charNumber = firstIndex;\n for (let i = 1, I = stringToRank.length; i < I; i++) {\n const matchChar = stringToRank[i];\n charNumber = findMatchingCharacter(matchChar, testString, charNumber);\n const found = charNumber > -1;\n if (!found) {\n return rankings.NO_MATCH;\n }\n }\n const spread = charNumber - firstIndex;\n return getRanking(spread);\n}\n\n/**\n * Sorts items that have a rank, index, and accessorIndex\n * @param {Object} a - the first item to sort\n * @param {Object} b - the second item to sort\n * @return {Number} -1 if a should come first, 1 if b should come first, 0 if equal\n */\nfunction compareItems(a, b) {\n return a.rank === b.rank ? 0 : a.rank > b.rank ? -1 : 1;\n}\n\n/**\n * Prepares value for comparison by stringifying it, removing diacritics (if specified)\n * @param {String} value - the value to clean\n * @param {Object} options - {keepDiacritics: whether to remove diacritics}\n * @return {String} the prepared value\n */\nfunction prepareValueForComparison(value, _ref) {\n let {\n keepDiacritics\n } = _ref;\n // value might not actually be a string at this point (we don't get to choose)\n // so part of preparing the value for comparison is ensure that it is a string\n value = `${value}`; // toString\n if (!keepDiacritics) {\n value = removeAccents(value);\n }\n return value;\n}\n\n/**\n * Gets value for key in item at arbitrarily nested keypath\n * @param {Object} item - the item\n * @param {Object|Function} key - the potentially nested keypath or property callback\n * @return {Array} - an array containing the value(s) at the nested keypath\n */\nfunction getItemValues(item, accessor) {\n let accessorFn = accessor;\n if (typeof accessor === 'object') {\n accessorFn = accessor.accessor;\n }\n const value = accessorFn(item);\n\n // because `value` can also be undefined\n if (value == null) {\n return [];\n }\n if (Array.isArray(value)) {\n return value;\n }\n return [String(value)];\n}\n\n/**\n * Gets all the values for the given keys in the given item and returns an array of those values\n * @param item - the item from which the values will be retrieved\n * @param keys - the keys to use to retrieve the values\n * @return objects with {itemValue, attributes}\n */\nfunction getAllValuesToRank(item, accessors) {\n const allValues = [];\n for (let j = 0, J = accessors.length; j < J; j++) {\n const accessor = accessors[j];\n const attributes = getAccessorAttributes(accessor);\n const itemValues = getItemValues(item, accessor);\n for (let i = 0, I = itemValues.length; i < I; i++) {\n allValues.push({\n itemValue: itemValues[i],\n attributes\n });\n }\n }\n return allValues;\n}\nconst defaultKeyAttributes = {\n maxRanking: Infinity,\n minRanking: -Infinity\n};\n/**\n * Gets all the attributes for the given accessor\n * @param accessor - the accessor from which the attributes will be retrieved\n * @return object containing the accessor's attributes\n */\nfunction getAccessorAttributes(accessor) {\n if (typeof accessor === 'function') {\n return defaultKeyAttributes;\n }\n return {\n ...defaultKeyAttributes,\n ...accessor\n };\n}\n\nexport { compareItems, rankItem, rankings };\n//# sourceMappingURL=index.mjs.map\n","import type { Query } from '@tanstack/query-core'\n\ntype SortFn = (a: Query, b: Query) => number\n\n// eslint-disable-next-line no-shadow\nenum QueryState {\n Fetching = 0,\n Fresh,\n Stale,\n Inactive,\n Paused,\n}\n\nexport function getQueryState(query: Query): QueryState {\n if (query.state.fetchStatus === 'fetching') {\n return QueryState.Fetching\n }\n if (query.state.fetchStatus === 'paused') {\n return QueryState.Paused\n }\n if (!query.getObserversCount()) {\n return QueryState.Inactive\n }\n if (query.isStale()) {\n return QueryState.Stale\n }\n\n return QueryState.Fresh\n}\n\nexport function getQueryStateLabel(query: Query): string {\n const queryState = getQueryState(query)\n\n if (queryState === QueryState.Fetching) {\n return 'fetching'\n }\n if (queryState === QueryState.Paused) {\n return 'paused'\n }\n if (queryState === QueryState.Stale) {\n return 'stale'\n }\n if (queryState === QueryState.Inactive) {\n return 'inactive'\n }\n\n return 'fresh'\n}\n\nexport function getQueryStatusFg(query: Query): number {\n const queryState = getQueryState(query)\n\n if (queryState === QueryState.Stale) {\n return 0x000000\n }\n\n return 0xffffff\n}\n\nexport function getQueryStatusBg(query: Query): number {\n const queryState = getQueryState(query)\n\n if (queryState === QueryState.Fetching) {\n return 0x006bff\n }\n if (queryState === QueryState.Paused) {\n return 0x8c49eb\n }\n if (queryState === QueryState.Stale) {\n return 0xffb200\n }\n if (queryState === QueryState.Inactive) {\n return 0x3f4e60\n }\n\n return 0x008327\n}\n\nconst queryHashSort: SortFn = (a, b) => a.queryHash.localeCompare(b.queryHash)\n\nconst dateSort: SortFn = (a, b) =>\n a.state.dataUpdatedAt < b.state.dataUpdatedAt ? 1 : -1\n\nconst statusAndDateSort: SortFn = (a, b) => {\n if (getQueryState(a) === getQueryState(b)) {\n return dateSort(a, b)\n }\n\n return getQueryState(a) > getQueryState(b) ? 1 : -1\n}\n\nexport const sortFns: Record<string, SortFn> = {\n 'Status > Last Updated': statusAndDateSort,\n 'Query Hash': queryHashSort,\n 'Last Updated': dateSort,\n}\n","import { setupDevtoolsPlugin } from '@vue/devtools-api'\nimport type { CustomInspectorNode } from '@vue/devtools-api'\nimport { rankItem } from '@tanstack/match-sorter-utils'\nimport { onlineManager } from '@tanstack/query-core'\nimport type { Query } from '@tanstack/query-core'\nimport type { QueryClient } from '../queryClient'\nimport {\n getQueryStateLabel,\n getQueryStatusBg,\n getQueryStatusFg,\n sortFns,\n} from './utils'\n\nconst pluginId = 'vue-query'\nconst pluginName = 'Vue Query'\n\nexport function setupDevtools(app: any, queryClient: QueryClient) {\n setupDevtoolsPlugin(\n {\n id: pluginId,\n label: pluginName,\n packageName: 'vue-query',\n homepage: 'https://tanstack.com/query/latest',\n logo: 'https://raw.githubusercontent.com/TanStack/query/main/packages/vue-query/media/vue-query.svg',\n app,\n settings: {\n baseSort: {\n type: 'choice',\n component: 'button-group',\n label: 'Sort Cache Entries',\n options: [\n {\n label: 'ASC',\n value: 1,\n },\n {\n label: 'DESC',\n value: -1,\n },\n ],\n defaultValue: 1,\n },\n sortFn: {\n type: 'choice',\n label: 'Sort Function',\n options: Object.keys(sortFns).map((key) => ({\n label: key,\n value: key,\n })),\n defaultValue: Object.keys(sortFns)[0]!,\n },\n onlineMode: {\n type: 'choice',\n component: 'button-group',\n label: 'Online mode',\n options: [\n {\n label: 'Online',\n value: 1,\n },\n {\n label: 'Offline',\n value: 0,\n },\n ],\n defaultValue: 1,\n },\n },\n },\n (api) => {\n const initialSettings = api.getSettings()\n onlineManager.setOnline(Boolean(initialSettings.onlineMode.valueOf()))\n\n const queryCache = queryClient.getQueryCache()\n\n api.addInspector({\n id: pluginId,\n label: pluginName,\n icon: 'api',\n nodeActions: [\n {\n icon: 'file_download',\n tooltip: 'Refetch',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.fetch()\n },\n },\n {\n icon: 'alarm',\n tooltip: 'Invalidate',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryClient.invalidateQueries(query)\n },\n },\n {\n icon: 'settings_backup_restore',\n tooltip: 'Reset',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.reset()\n },\n },\n {\n icon: 'delete',\n tooltip: 'Remove',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryCache.remove(query)\n },\n },\n {\n icon: 'hourglass_empty',\n tooltip: 'Force loading',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n\n query.setState({\n data: undefined,\n status: 'pending',\n })\n },\n },\n {\n icon: 'error_outline',\n tooltip: 'Force error',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n\n query.setState({\n data: undefined,\n status: 'error',\n error: new Error('Unknown error from devtools'),\n })\n },\n },\n ],\n })\n\n api.addTimelineLayer({\n id: pluginId,\n label: pluginName,\n color: 0xffd94c,\n })\n\n queryCache.subscribe((event) => {\n api.sendInspectorTree(pluginId)\n api.sendInspectorState(pluginId)\n\n if (['added', 'removed', 'updated'].includes(event.type)) {\n api.addTimelineEvent({\n layerId: pluginId,\n event: {\n title: event.type,\n subtitle: event.query.queryHash,\n time: api.now(),\n data: {\n queryHash: event.query.queryHash,\n ...event,\n },\n },\n })\n }\n })\n\n api.on.setPluginSettings((payload) => {\n if (payload.key === 'onlineMode') {\n onlineManager.setOnline(Boolean(payload.newValue))\n }\n })\n\n api.on.getInspectorTree((payload) => {\n if (payload.inspectorId === pluginId) {\n const queries = queryCache.getAll()\n const settings = api.getSettings()\n\n const filtered = payload.filter\n ? queries.filter(\n (item) => rankItem(item.queryHash, payload.filter).passed,\n )\n : [...queries]\n\n const sorted = filtered.sort(\n (a, b) => sortFns[settings.sortFn]!(a, b) * settings.baseSort,\n )\n\n const nodes: CustomInspectorNode[] = sorted.map((query) => {\n const stateLabel = getQueryStateLabel(query)\n\n return {\n id: query.queryHash,\n label: query.queryHash,\n tags: [\n {\n label: `${stateLabel} [${query.getObserversCount()}]`,\n textColor: getQueryStatusFg(query),\n backgroundColor: getQueryStatusBg(query),\n },\n ],\n }\n })\n payload.rootNodes = nodes\n }\n })\n\n api.on.getInspectorState((payload) => {\n if (payload.inspectorId === pluginId) {\n const query = queryCache.get(payload.nodeId)\n\n if (!query) {\n return\n }\n\n payload.state = {\n ' Query Details': [\n {\n key: 'Query key',\n value: query.queryHash,\n },\n {\n key: 'Query status',\n value: getQueryStateLabel(query),\n },\n {\n key: 'Observers',\n value: query.getObserversCount(),\n },\n {\n key: 'Last Updated',\n value: new Date(query.state.dataUpdatedAt).toLocaleTimeString(),\n },\n ],\n 'Data Explorer': [\n {\n key: 'Data',\n value: query.state.data,\n },\n ],\n 'Query Explorer': [\n {\n key: 'Query',\n value: query,\n },\n ],\n }\n }\n })\n },\n )\n}\n","import { isVue2 } from 'vue-demi'\nimport { isServer } from '@tanstack/query-core'\nimport type { QueryClientConfig } from '@tanstack/query-core'\n\nimport { QueryClient } from './queryClient'\nimport { getClientKey } from './utils'\nimport { setupDevtools } from './devtools/devtools'\nimport type { MaybeRefDeep } from './types'\n\ntype ClientPersister = (client: QueryClient) => [() => void, Promise<void>]\n\ninterface CommonOptions {\n queryClientKey?: string\n clientPersister?: ClientPersister\n}\n\ninterface ConfigOptions extends CommonOptions {\n queryClientConfig?: MaybeRefDeep<QueryClientConfig>\n}\n\ninterface ClientOptions extends CommonOptions {\n queryClient?: QueryClient\n}\n\nexport type VueQueryPluginOptions = ConfigOptions | ClientOptions\n\nexport const VueQueryPlugin = {\n install: (app: any, options: VueQueryPluginOptions = {}) => {\n const clientKey = getClientKey(options.queryClientKey)\n let client: QueryClient\n\n if ('queryClient' in options && options.queryClient) {\n client = options.queryClient\n } else {\n const clientConfig =\n 'queryClientConfig' in options ? options.queryClientConfig : undefined\n client = new QueryClient(clientConfig)\n }\n\n if (!isServer) {\n client.mount()\n }\n\n let persisterUnmount = () => {\n // noop\n }\n\n if (options.clientPersister) {\n client.isRestoring.value = true\n const [unmount, promise] = options.clientPersister(client)\n persisterUnmount = unmount\n promise.then(() => {\n client.isRestoring.value = false\n })\n }\n\n const cleanup = () => {\n client.unmount()\n persisterUnmount()\n }\n\n if (app.onUnmount) {\n app.onUnmount(cleanup)\n } else {\n const originalUnmount = app.unmount\n app.unmount = function vueQueryUnmount() {\n cleanup()\n originalUnmount()\n }\n }\n\n if (isVue2) {\n app.mixin({\n beforeCreate() {\n // HACK: taken from provide(): https://github.com/vuejs/composition-api/blob/master/src/apis/inject.ts#L30\n if (!this._provided) {\n const provideCache = {}\n Object.defineProperty(this, '_provided', {\n get: () => provideCache,\n set: (v) => Object.assign(provideCache, v),\n })\n }\n\n this._provided[clientKey] = client\n\n if (process.env.NODE_ENV === 'development') {\n if (this === this.$root) {\n setupDevtools(this, client)\n }\n }\n },\n })\n } else {\n app.provide(clientKey, client)\n\n if (process.env.NODE_ENV === 'development') {\n setupDevtools(app, client)\n }\n }\n },\n}\n","import {\n onScopeDispose,\n toRefs,\n readonly,\n reactive,\n watch,\n ref,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryObserver,\n QueryKey,\n QueryObserverResult,\n DefaultedQueryObserverOptions,\n} from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { updateState, cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseBaseQueryReturnType<\n TData,\n TError,\n Result = QueryObserverResult<TData, TError>,\n> = ToRefs<Readonly<Result>> & {\n suspense: () => Promise<Result>\n}\n\ntype UseQueryOptionsGeneric<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n | UseInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n TPageParam,\n>(\n Observer: typeof QueryObserver,\n options: UseQueryOptionsGeneric<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): UseBaseQueryReturnType<TData, TError> {\n const client = queryClient || useQueryClient()\n\n const defaultedOptions = computed(() => {\n const defaulted: DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n > = client.defaultQueryOptions(cloneDeepUnref(options as any))\n\n defaulted._optimisticResults = client.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(client, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = ref(() => {\n // noop\n })\n\n watch(\n client.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe.value()\n unsubscribe.value = observer.subscribe((result) => {\n updateState(state, result)\n })\n }\n },\n { immediate: true },\n )\n\n watch(\n defaultedOptions,\n () => {\n observer.setOptions(defaultedOptions.value)\n updateState(state, observer.getCurrentResult())\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe.value()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>((resolve) => {\n let stopWatch = () => {\n //noop\n }\n const run = () => {\n if (defaultedOptions.value.enabled !== false) {\n const optimisticResult = observer.getOptimisticResult(\n defaultedOptions.value,\n )\n if (optimisticResult.isStale) {\n stopWatch()\n resolve(observer.fetchOptimistic(defaultedOptions.value))\n } else {\n stopWatch()\n resolve(optimisticResult)\n }\n }\n }\n\n run()\n\n stopWatch = watch(defaultedOptions, run, { deep: true })\n })\n }\n\n return {\n ...(toRefs(readonly(state)) as ToRefs<\n Readonly<QueryObserverResult<TData, TError>>\n >),\n suspense,\n }\n}\n","import type { ToRefs, UnwrapRef } from 'vue-demi'\nimport { QueryObserver } from '@tanstack/query-core'\nimport type {\n QueryKey,\n QueryObserverResult,\n DefinedQueryObserverResult,\n WithRequired,\n QueryObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport { useBaseQuery } from './useBaseQuery'\nimport type { UseBaseQueryReturnType } from './useBaseQuery'\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\n\nexport type UseQueryOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = {\n [Property in keyof QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >]: Property extends 'queryFn'\n ? QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n UnwrapRef<TQueryKey>\n >[Property]\n : MaybeRefDeep<\n WithRequired<\n QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n 'queryKey'\n >[Property]\n >\n}\n\nexport type UseQueryReturnType<TData, TError> = DistributiveOmit<\n UseBaseQueryReturnType<TData, TError>,\n 'refetch'\n> & {\n refetch: QueryObserverResult<TData, TError>['refetch']\n}\n\nexport type UseQueryDefinedReturnType<TData, TError> = DistributiveOmit<\n ToRefs<Readonly<DefinedQueryObserverResult<TData, TError>>>,\n 'refetch'\n> & {\n suspense: () => Promise<QueryObserverResult<TData, TError>>\n refetch: QueryObserverResult<TData, TError>['refetch']\n}\n\nexport function useQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey\n > & {\n initialData?: undefined\n },\n queryClient?: QueryClient,\n): UseQueryReturnType<TData, TError>\n\nexport function useQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey\n > & {\n initialData: TQueryFnData | (() => TQueryFnData)\n },\n queryClient?: QueryClient,\n): UseQueryDefinedReturnType<TData, TError>\n\nexport function useQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey\n >,\n queryClient?: QueryClient,\n):\n | UseQueryReturnType<TData, TError>\n | UseQueryDefinedReturnType<TData, TError> {\n const result = useBaseQuery(QueryObserver, options, queryClient)\n\n return {\n ...result,\n refetch: result.refetch.value,\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { QueriesObserver } from '@tanstack/query-core'\nimport type {\n QueriesPlaceholderDataFunction,\n QueryKey,\n} from '@tanstack/query-core'\nimport type { Ref } from 'vue-demi'\nimport { computed, onScopeDispose, readonly, ref, watch } from 'vue-demi'\n\nimport type { QueryFunction, QueryObserverResult } from '@tanstack/query-core'\n\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { UseQueryOptions } from './useQuery'\nimport type { QueryClient } from './queryClient'\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype UseQueryOptionsForUseQueries<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = DistributiveOmit<\n UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? UseQueryOptionsForUseQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? UseQueryOptionsForUseQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TQueryFnData, TQueryKey>\n : // Fallback\n UseQueryOptionsForUseQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? QueryObserverResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? QueryObserverResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? QueryObserverResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? QueryObserverResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? QueryObserverResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? QueryObserverResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? QueryObserverResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? QueryObserverResult<TQueryFnData>\n : // Fallback\n QueryObserverResult\n\n/**\n * UseQueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type UseQueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? UseQueryOptionsForUseQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? UseQueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends UseQueryOptionsForUseQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n UseQueryOptionsForUseQueries[]\n\n/**\n * UseQueriesResults reducer recursively maps type param to results\n */\nexport type UseQueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? QueryObserverResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? UseQueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends UseQueryOptionsForUseQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n QueryObserverResult<unknown extends TData ? TQueryFnData : TData, TError>[]\n : // Fallback\n QueryObserverResult[]\n\ntype UseQueriesOptionsArg<T extends any[]> = readonly [...UseQueriesOptions<T>]\n\nexport function useQueries<T extends any[]>(\n {\n queries,\n }: {\n queries: MaybeRefDeep<UseQueriesOptionsArg<T>>\n },\n queryClient?: QueryClient,\n): Readonly<Ref<UseQueriesResults<T>>> {\n const client = queryClient || useQueryClient()\n\n const defaultedQueries = computed(() =>\n cloneDeepUnref(queries).map((options) => {\n const defaulted = client.defaultQueryOptions(options)\n defaulted._optimisticResults = client.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n }),\n )\n\n const observer = new QueriesObserver(client, defaultedQueries.value)\n const state = ref(observer.getCurrentResult())\n\n const unsubscribe = ref(() => {\n // noop\n })\n\n watch(\n client.isRestoring,\n (isRestoring) => {\n if (!isRestoring) {\n unsubscribe.value()\n unsubscribe.value = observer.subscribe((result) => {\n state.value.splice(0, result.length, ...result)\n })\n // Subscription would not fire for persisted results\n state.value = observer.getOptimisticResult(defaultedQueries.value)\n }\n },\n { immediate: true },\n )\n\n watch(\n defaultedQueries,\n () => {\n observer.setQueries(defaultedQueries.value)\n state.value = observer.getCurrentResult()\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe.value()\n })\n\n return readonly(state) as Readonly<Ref<UseQueriesResults<T>>>\n}\n","import { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n InfiniteData,\n QueryObserver,\n WithRequired,\n QueryKey,\n InfiniteQueryObserverResult,\n InfiniteQueryObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\n\nimport { useBaseQuery } from './useBaseQuery'\nimport type { UseBaseQueryReturnType } from './useBaseQuery'\n\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\nimport type { UnwrapRef } from 'vue-demi'\n\nexport type UseInfiniteQueryOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n> = {\n [Property in keyof InfiniteQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >]: Property extends 'queryFn'\n ? InfiniteQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n UnwrapRef<TQueryKey>,\n TPageParam\n >[Property]\n : MaybeRefDeep<\n WithRequired<\n InfiniteQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey,\n TPageParam\n >,\n 'queryKey'\n >[Property]\n >\n}\n\ntype InfiniteQueryReturnType<TData, TError> = UseBaseQueryReturnType<\n TData,\n TError,\n InfiniteQueryObserverResult<TData, TError>\n>\nexport type UseInfiniteQueryReturnType<TData, TError> = DistributiveOmit<\n InfiniteQueryReturnType<TData, TError>,\n 'fetchNextPage' | 'fetchPreviousPage' | 'refetch'\n> & {\n fetchNextPage: InfiniteQueryObserverResult<TData, TError>['fetchNextPage']\n fetchPreviousPage: InfiniteQueryObserverResult<\n TData,\n TError\n >['fetchPreviousPage']\n refetch: InfiniteQueryObserverResult<TData, TError>['refetch']\n}\n\nexport function useInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: UseInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): UseInfiniteQueryReturnType<TData, TError> {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n const result = useBaseQuery(\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n options,\n queryClient,\n ) as InfiniteQueryReturnType<TData, TError>\n return {\n ...result,\n fetchNextPage: result.fetchNextPage.value,\n fetchPreviousPage: result.fetchPreviousPage.value,\n refetch: result.refetch.value,\n }\n}\n","import {\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n watch,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n MutateOptions,\n MutateFunction,\n MutationObserverResult,\n MutationObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep, DistributiveOmit } from './types'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { cloneDeepUnref, updateState } from './utils'\nimport { useQueryClient } from './useQueryClient'\nimport type { QueryClient } from './queryClient'\n\ntype MutationResult<TData, TError, TVariables, TContext> = DistributiveOmit<\n MutationObserverResult<TData, TError, TVariables, TContext>,\n 'mutate' | 'reset'\n>\n\nexport type UseMutationOptions<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = MaybeRefDeep<MutationObserverOptions<TData, TError, TVariables, TContext>>\n\ntype MutateSyncFunction<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = (\n ...options: Parameters<MutateFunction<TData, TError, TVariables, TContext>>\n) => void\n\nexport type UseMutationReturnType<\n TData,\n TError,\n TVariables,\n TContext,\n Result = MutationResult<TData, TError, TVariables, TContext>,\n> = ToRefs<Readonly<Result>> & {\n mutate: MutateSyncFunction<TData, TError, TVariables, TContext>\n mutateAsync: MutateFunction<TData, TError, TVariables, TContext>\n reset: MutationObserverResult<TData, TError, TVariables, TContext>['reset']\n}\n\nexport function useMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n mutationOptions: MaybeRefDeep<\n MutationObserverOptions<TData, TError, TVariables, TContext>\n >,\n queryClient?: QueryClient,\n): UseMutationReturnType<TData, TError, TVariables, TContext> {\n const client = queryClient || useQueryClient()\n const options = computed(() => {\n return client.defaultMutationOptions(cloneDeepUnref(mutationOptions))\n })\n const observer = new MutationObserver(client, options.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = observer.subscribe((result) => {\n updateState(state, result)\n })\n\n const mutate = (\n variables: TVariables,\n mutateOptions?: MutateOptions<TData, TError, TVariables, TContext>,\n ) => {\n observer.mutate(variables, mutateOptions).catch(() => {\n // This is intentional\n })\n }\n\n watch(\n options,\n () => {\n observer.setOptions(options.value)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const resultRefs = toRefs(readonly(state)) as unknown as ToRefs<\n Readonly<MutationResult<TData, TError, TVariables, TContext>>\n >\n\n return {\n ...resultRefs,\n mutate,\n mutateAsync: state.mutate,\n reset: state.reset,\n }\n}\n","import { computed, onScopeDispose, ref, watch } from 'vue-demi'\nimport type { Ref } from 'vue-demi'\nimport type { QueryFilters as QF } from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { MaybeRefDeep } from './types'\nimport type { QueryClient } from './queryClient'\n\nexport type QueryFilters = MaybeRefDeep<QF>\n\nexport function useIsFetching(\n fetchingFilters: MaybeRefDeep<QF> = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const filters = computed(() => cloneDeepUnref(fetchingFilters))\n const client = queryClient || useQueryClient()\n\n const isFetching = ref(client.isFetching(filters))\n\n const unsubscribe = client.getQueryCache().subscribe(() => {\n isFetching.value = client.isFetching(filters)\n })\n\n watch(\n filters,\n () => {\n isFetching.value = client.isFetching(filters)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return isFetching\n}\n","import { onScopeDispose, readonly, computed, ref } from 'vue-demi'\nimport type { Ref, DeepReadonly } from 'vue-demi'\nimport type {\n MutationFilters as MF,\n Mutation,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MutationState } from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { MaybeRefDeep } from './types'\nimport type { MutationCache } from './mutationCache'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n filters: MutationFilters = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const client = queryClient || useQueryClient()\n const unreffedFilters = computed(() => ({\n ...cloneDeepUnref(filters),\n status: 'pending' as const,\n }))\n\n const length = computed(\n () => useMutationState({ filters: unreffedFilters }, client).value.length,\n )\n\n return length\n}\n\nexport type MutationStateOptions<TResult = MutationState> = {\n filters?: MutationFilters\n select?: (\n mutation: Mutation<unknown, DefaultError, unknown, unknown>,\n ) => TResult\n}\n\nfunction getResult<TResult = MutationState>(\n mutationCache: MutationCache,\n options: MutationStateOptions<TResult>,\n): Array<TResult> {\n return mutationCache\n .findAll(options.filters)\n .map(\n (mutation): TResult =>\n (options.select\n ? options.select(\n mutation as Mutation<unknown, DefaultError, unknown, unknown>,\n )\n : mutation.state) as TResult,\n )\n}\n\nexport function useMutationState<TResult = MutationState>(\n options: MutationStateOptions<TResult> = {},\n queryClient?: QueryClient,\n): DeepReadonly<Ref<Array<TResult>>> {\n const mutationCache = (queryClient || useQueryClient()).getMutationCache()\n const state = ref(getResult(mutationCache, options)) as Ref<TResult[]>\n const unsubscribe = mutationCache.subscribe(() => {\n const result = getResult(mutationCache, options)\n state.value = result\n })\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state)\n}\n"],"names":["isPlainObject","getDefaultState","QueryCache","MutationCache","VUE_QUERY_CLIENT","getClientKey","key","suffix","updateState","state","update","Object","keys","forEach","cloneDeep","value","customizer","result","undefined","isRef","Array","isArray","map","val","entries","fromEntries","cloneDeepUnref","obj","unref","prototype","toString","call","getPrototypeOf","useQueryClient","id","vm","getCurrentInstance","proxy","Error","queryClient","inject","QC","find","filters","findAll","MC","QueryClient","constructor","config","unreffedConfig","vueQueryConfig","defaultOptions","queryCache","mutationCache","isRestoring","ref","isFetching","isMutating","getQueryData","queryKey","getQueriesData","setQueryData","updater","options","setQueriesData","getQueryState","removeQueries","resetQueries","cancelQueries","invalidateQueries","refetchQueries","fetchQuery","prefetchQuery","fetchInfiniteQuery","prefetchInfiniteQuery","setDefaultOptions","setQueryDefaults","getQueryDefaults","setMutationDefaults","mutationKey","getMutationDefaults","QueryState","query","fetchStatus","Fetching","Paused","getObserversCount","Inactive","isStale","Stale","Fresh","getQueryStateLabel","queryState","getQueryStatusFg","getQueryStatusBg","queryHashSort","a","b","queryHash","localeCompare","dateSort","dataUpdatedAt","statusAndDateSort","sortFns","pluginId","pluginName","setupDevtools","app","setupDevtoolsPlugin","label","packageName","homepage","logo","settings","baseSort","type","component","defaultValue","sortFn","onlineMode","api","initialSettings","getSettings","onlineManager","setOnline","Boolean","valueOf","getQueryCache","addInspector","icon","nodeActions","tooltip","action","get","fetch","reset","remove","setState","data","status","error","addTimelineLayer","color","subscribe","event","sendInspectorTree","sendInspectorState","includes","addTimelineEvent","layerId","title","subtitle","time","now","on","setPluginSettings","payload","newValue","getInspectorTree","inspectorId","queries","getAll","filtered","filter","item","rankItem","passed","sorted","sort","nodes","stateLabel","tags","textColor","backgroundColor","rootNodes","getInspectorState","nodeId","Date","toLocaleTimeString","VueQueryPlugin","install","clientKey","queryClientKey","client","clientConfig","queryClientConfig","isServer","mount","persisterUnmount","clientPersister","unmount","promise","then","cleanup","onUnmount","originalUnmount","vueQueryUnmount","isVue2","mixin","beforeCreate","_provided","provideCache","defineProperty","set","v","assign","$root","provide","useBaseQuery","Observer","defaultedOptions","computed","defaulted","defaultQueryOptions","_optimisticResults","observer","reactive","getCurrentResult","unsubscribe","watch","immediate","setOptions","deep","onScopeDispose","suspense","Promise","resolve","stopWatch","run","enabled","optimisticResult","getOptimisticResult","fetchOptimistic","toRefs","readonly","useQuery","QueryObserver","refetch","useQueries","defaultedQueries","QueriesObserver","splice","length","setQueries","useInfiniteQuery","InfiniteQueryObserver","fetchNextPage","fetchPreviousPage","useMutation","mutationOptions","defaultMutationOptions","MutationObserver","mutate","variables","mutateOptions","catch","resultRefs","mutateAsync","useIsFetching","fetchingFilters","useIsMutating","unreffedFilters","useMutationState","getResult","mutation","select","getMutationCache"],"mappings":"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GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,IAAI;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,CAAC,EAAE,GAAG;EACR,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,GAAG;EACT,EAAE,EAAE,EAAE,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"}
|