@tanstack/vue-query 4.35.2 → 4.35.3

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.
@@ -65,9 +65,7 @@ function useBaseQuery(Observer, arg1, arg2 = {}, arg3 = {}) {
65
65
  };
66
66
 
67
67
  run();
68
- stopWatch = watch(defaultedOptions, run, {
69
- deep: true
70
- });
68
+ stopWatch = watch(defaultedOptions, run);
71
69
  });
72
70
  }; // Handle error boundary
73
71
 
@@ -1 +1 @@
1
- {"version":3,"file":"useBaseQuery.esm.js","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["import {\n computed,\n getCurrentScope,\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n unref,\n watch,\n} from 'vue-demi'\nimport { useQueryClient } from './useQueryClient'\nimport {\n cloneDeepUnref,\n isQueryKey,\n shouldThrowError,\n updateState,\n} from './utils'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryFunction,\n QueryKey,\n QueryObserver,\n QueryObserverOptions,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { DeepUnwrapRef, MaybeRef, WithQueryClientKey } from './types'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseQueryReturnType<\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 TQueryKey extends QueryKey = QueryKey,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n | UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryKey extends QueryKey,\n>(\n Observer: typeof QueryObserver,\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): UseQueryReturnType<TData, TError> {\n if (process.env.NODE_ENV === 'development') {\n if (!getCurrentScope()) {\n console.warn(\n 'vue-query composables like \"uesQuery()\" should only be used inside a \"setup()\" function or a running effect scope. They might otherwise lead to memory leaks.',\n )\n }\n }\n\n const options = computed(() => parseQueryArgs(arg1, arg2, arg3))\n\n const queryClient =\n options.value.queryClient ?? useQueryClient(options.value.queryClientKey)\n\n const defaultedOptions = computed(() => {\n const defaulted = queryClient.defaultQueryOptions(options.value)\n defaulted._optimisticResults = queryClient.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(queryClient, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n queryClient.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = 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 { flush: 'sync' },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>(\n (resolve, reject) => {\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 observer\n .fetchOptimistic(defaultedOptions.value)\n .then(resolve, reject)\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\n // Handle error boundary\n watch(\n () => state.error,\n (error) => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(defaultedOptions.value.useErrorBoundary, [\n error as TError,\n observer.getCurrentQuery(),\n ])\n ) {\n throw error\n }\n },\n )\n\n return {\n ...(toRefs(readonly(state)) as UseQueryReturnType<TData, TError>),\n suspense,\n }\n}\n\nexport function parseQueryArgs<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n> {\n const plainArg1 = unref(arg1)\n const plainArg2 = unref(arg2)\n const plainArg3 = unref(arg3)\n\n let options = plainArg1\n\n if (!isQueryKey(plainArg1)) {\n options = plainArg1\n } else if (typeof plainArg2 === 'function') {\n options = { ...plainArg3, queryKey: plainArg1, queryFn: plainArg2 }\n } else {\n options = { ...plainArg2, queryKey: plainArg1 }\n }\n\n return cloneDeepUnref(options) as WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >\n}\n"],"names":["useBaseQuery","Observer","arg1","arg2","arg3","process","env","NODE_ENV","getCurrentScope","console","warn","options","computed","parseQueryArgs","queryClient","value","useQueryClient","queryClientKey","defaultedOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","observer","state","reactive","getCurrentResult","unsubscribe","watch","subscribe","result","updateState","immediate","setOptions","flush","onScopeDispose","suspense","Promise","resolve","reject","stopWatch","run","enabled","optimisticResult","getOptimisticResult","isStale","fetchOptimistic","then","deep","error","isError","isFetching","shouldThrowError","useErrorBoundary","getCurrentQuery","toRefs","readonly","plainArg1","unref","plainArg2","plainArg3","isQueryKey","queryKey","queryFn","cloneDeepUnref"],"mappings":"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"}
1
+ {"version":3,"file":"useBaseQuery.esm.js","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["import {\n computed,\n getCurrentScope,\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n unref,\n watch,\n} from 'vue-demi'\nimport { useQueryClient } from './useQueryClient'\nimport {\n cloneDeepUnref,\n isQueryKey,\n shouldThrowError,\n updateState,\n} from './utils'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryFunction,\n QueryKey,\n QueryObserver,\n QueryObserverOptions,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { DeepUnwrapRef, MaybeRef, WithQueryClientKey } from './types'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseQueryReturnType<\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 TQueryKey extends QueryKey = QueryKey,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n | UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryKey extends QueryKey,\n>(\n Observer: typeof QueryObserver,\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): UseQueryReturnType<TData, TError> {\n if (process.env.NODE_ENV === 'development') {\n if (!getCurrentScope()) {\n console.warn(\n 'vue-query composables like \"uesQuery()\" should only be used inside a \"setup()\" function or a running effect scope. They might otherwise lead to memory leaks.',\n )\n }\n }\n\n const options = computed(() => parseQueryArgs(arg1, arg2, arg3))\n\n const queryClient =\n options.value.queryClient ?? useQueryClient(options.value.queryClientKey)\n\n const defaultedOptions = computed(() => {\n const defaulted = queryClient.defaultQueryOptions(options.value)\n defaulted._optimisticResults = queryClient.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(queryClient, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n queryClient.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = 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 { flush: 'sync' },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>(\n (resolve, reject) => {\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 observer\n .fetchOptimistic(defaultedOptions.value)\n .then(resolve, reject)\n } else {\n stopWatch()\n resolve(optimisticResult)\n }\n }\n }\n\n run()\n\n stopWatch = watch(defaultedOptions, run)\n },\n )\n }\n\n // Handle error boundary\n watch(\n () => state.error,\n (error) => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(defaultedOptions.value.useErrorBoundary, [\n error as TError,\n observer.getCurrentQuery(),\n ])\n ) {\n throw error\n }\n },\n )\n\n return {\n ...(toRefs(readonly(state)) as UseQueryReturnType<TData, TError>),\n suspense,\n }\n}\n\nexport function parseQueryArgs<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n> {\n const plainArg1 = unref(arg1)\n const plainArg2 = unref(arg2)\n const plainArg3 = unref(arg3)\n\n let options = plainArg1\n\n if (!isQueryKey(plainArg1)) {\n options = plainArg1\n } else if (typeof plainArg2 === 'function') {\n options = { ...plainArg3, queryKey: plainArg1, queryFn: plainArg2 }\n } else {\n options = { ...plainArg2, queryKey: plainArg1 }\n }\n\n return cloneDeepUnref(options) as WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >\n}\n"],"names":["useBaseQuery","Observer","arg1","arg2","arg3","process","env","NODE_ENV","getCurrentScope","console","warn","options","computed","parseQueryArgs","queryClient","value","useQueryClient","queryClientKey","defaultedOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","observer","state","reactive","getCurrentResult","unsubscribe","watch","subscribe","result","updateState","immediate","setOptions","flush","onScopeDispose","suspense","Promise","resolve","reject","stopWatch","run","enabled","optimisticResult","getOptimisticResult","isStale","fetchOptimistic","then","error","isError","isFetching","shouldThrowError","useErrorBoundary","getCurrentQuery","toRefs","readonly","plainArg1","unref","plainArg2","plainArg3","isQueryKey","queryKey","queryFn","cloneDeepUnref"],"mappings":"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"}
@@ -69,9 +69,7 @@ function useBaseQuery(Observer, arg1, arg2 = {}, arg3 = {}) {
69
69
  };
70
70
 
71
71
  run();
72
- stopWatch = vueDemi.watch(defaultedOptions, run, {
73
- deep: true
74
- });
72
+ stopWatch = vueDemi.watch(defaultedOptions, run);
75
73
  });
76
74
  }; // Handle error boundary
77
75
 
@@ -1 +1 @@
1
- {"version":3,"file":"useBaseQuery.js","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["import {\n computed,\n getCurrentScope,\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n unref,\n watch,\n} from 'vue-demi'\nimport { useQueryClient } from './useQueryClient'\nimport {\n cloneDeepUnref,\n isQueryKey,\n shouldThrowError,\n updateState,\n} from './utils'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryFunction,\n QueryKey,\n QueryObserver,\n QueryObserverOptions,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { DeepUnwrapRef, MaybeRef, WithQueryClientKey } from './types'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseQueryReturnType<\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 TQueryKey extends QueryKey = QueryKey,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n | UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryKey extends QueryKey,\n>(\n Observer: typeof QueryObserver,\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): UseQueryReturnType<TData, TError> {\n if (process.env.NODE_ENV === 'development') {\n if (!getCurrentScope()) {\n console.warn(\n 'vue-query composables like \"uesQuery()\" should only be used inside a \"setup()\" function or a running effect scope. They might otherwise lead to memory leaks.',\n )\n }\n }\n\n const options = computed(() => parseQueryArgs(arg1, arg2, arg3))\n\n const queryClient =\n options.value.queryClient ?? useQueryClient(options.value.queryClientKey)\n\n const defaultedOptions = computed(() => {\n const defaulted = queryClient.defaultQueryOptions(options.value)\n defaulted._optimisticResults = queryClient.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(queryClient, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n queryClient.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = 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 { flush: 'sync' },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>(\n (resolve, reject) => {\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 observer\n .fetchOptimistic(defaultedOptions.value)\n .then(resolve, reject)\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\n // Handle error boundary\n watch(\n () => state.error,\n (error) => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(defaultedOptions.value.useErrorBoundary, [\n error as TError,\n observer.getCurrentQuery(),\n ])\n ) {\n throw error\n }\n },\n )\n\n return {\n ...(toRefs(readonly(state)) as UseQueryReturnType<TData, TError>),\n suspense,\n }\n}\n\nexport function parseQueryArgs<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n> {\n const plainArg1 = unref(arg1)\n const plainArg2 = unref(arg2)\n const plainArg3 = unref(arg3)\n\n let options = plainArg1\n\n if (!isQueryKey(plainArg1)) {\n options = plainArg1\n } else if (typeof plainArg2 === 'function') {\n options = { ...plainArg3, queryKey: plainArg1, queryFn: plainArg2 }\n } else {\n options = { ...plainArg2, queryKey: plainArg1 }\n }\n\n return cloneDeepUnref(options) as WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >\n}\n"],"names":["useBaseQuery","Observer","arg1","arg2","arg3","process","env","NODE_ENV","getCurrentScope","console","warn","options","computed","parseQueryArgs","queryClient","value","useQueryClient","queryClientKey","defaultedOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","observer","state","reactive","getCurrentResult","unsubscribe","watch","subscribe","result","updateState","immediate","setOptions","flush","onScopeDispose","suspense","Promise","resolve","reject","stopWatch","run","enabled","optimisticResult","getOptimisticResult","isStale","fetchOptimistic","then","deep","error","isError","isFetching","shouldThrowError","useErrorBoundary","getCurrentQuery","toRefs","readonly","plainArg1","unref","plainArg2","plainArg3","isQueryKey","queryKey","queryFn","cloneDeepUnref"],"mappings":"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"}
1
+ {"version":3,"file":"useBaseQuery.js","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["import {\n computed,\n getCurrentScope,\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n unref,\n watch,\n} from 'vue-demi'\nimport { useQueryClient } from './useQueryClient'\nimport {\n cloneDeepUnref,\n isQueryKey,\n shouldThrowError,\n updateState,\n} from './utils'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryFunction,\n QueryKey,\n QueryObserver,\n QueryObserverOptions,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { DeepUnwrapRef, MaybeRef, WithQueryClientKey } from './types'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseQueryReturnType<\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 TQueryKey extends QueryKey = QueryKey,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n | UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryKey extends QueryKey,\n>(\n Observer: typeof QueryObserver,\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): UseQueryReturnType<TData, TError> {\n if (process.env.NODE_ENV === 'development') {\n if (!getCurrentScope()) {\n console.warn(\n 'vue-query composables like \"uesQuery()\" should only be used inside a \"setup()\" function or a running effect scope. They might otherwise lead to memory leaks.',\n )\n }\n }\n\n const options = computed(() => parseQueryArgs(arg1, arg2, arg3))\n\n const queryClient =\n options.value.queryClient ?? useQueryClient(options.value.queryClientKey)\n\n const defaultedOptions = computed(() => {\n const defaulted = queryClient.defaultQueryOptions(options.value)\n defaulted._optimisticResults = queryClient.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(queryClient, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n queryClient.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = 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 { flush: 'sync' },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>(\n (resolve, reject) => {\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 observer\n .fetchOptimistic(defaultedOptions.value)\n .then(resolve, reject)\n } else {\n stopWatch()\n resolve(optimisticResult)\n }\n }\n }\n\n run()\n\n stopWatch = watch(defaultedOptions, run)\n },\n )\n }\n\n // Handle error boundary\n watch(\n () => state.error,\n (error) => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(defaultedOptions.value.useErrorBoundary, [\n error as TError,\n observer.getCurrentQuery(),\n ])\n ) {\n throw error\n }\n },\n )\n\n return {\n ...(toRefs(readonly(state)) as UseQueryReturnType<TData, TError>),\n suspense,\n }\n}\n\nexport function parseQueryArgs<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n> {\n const plainArg1 = unref(arg1)\n const plainArg2 = unref(arg2)\n const plainArg3 = unref(arg3)\n\n let options = plainArg1\n\n if (!isQueryKey(plainArg1)) {\n options = plainArg1\n } else if (typeof plainArg2 === 'function') {\n options = { ...plainArg3, queryKey: plainArg1, queryFn: plainArg2 }\n } else {\n options = { ...plainArg2, queryKey: plainArg1 }\n }\n\n return cloneDeepUnref(options) as WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >\n}\n"],"names":["useBaseQuery","Observer","arg1","arg2","arg3","process","env","NODE_ENV","getCurrentScope","console","warn","options","computed","parseQueryArgs","queryClient","value","useQueryClient","queryClientKey","defaultedOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","observer","state","reactive","getCurrentResult","unsubscribe","watch","subscribe","result","updateState","immediate","setOptions","flush","onScopeDispose","suspense","Promise","resolve","reject","stopWatch","run","enabled","optimisticResult","getOptimisticResult","isStale","fetchOptimistic","then","error","isError","isFetching","shouldThrowError","useErrorBoundary","getCurrentQuery","toRefs","readonly","plainArg1","unref","plainArg2","plainArg3","isQueryKey","queryKey","queryFn","cloneDeepUnref"],"mappings":"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"}
@@ -65,9 +65,7 @@ function useBaseQuery(Observer, arg1, arg2 = {}, arg3 = {}) {
65
65
  };
66
66
 
67
67
  run();
68
- stopWatch = watch(defaultedOptions, run, {
69
- deep: true
70
- });
68
+ stopWatch = watch(defaultedOptions, run);
71
69
  });
72
70
  }; // Handle error boundary
73
71
 
@@ -1 +1 @@
1
- {"version":3,"file":"useBaseQuery.mjs","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["import {\n computed,\n getCurrentScope,\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n unref,\n watch,\n} from 'vue-demi'\nimport { useQueryClient } from './useQueryClient'\nimport {\n cloneDeepUnref,\n isQueryKey,\n shouldThrowError,\n updateState,\n} from './utils'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryFunction,\n QueryKey,\n QueryObserver,\n QueryObserverOptions,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { DeepUnwrapRef, MaybeRef, WithQueryClientKey } from './types'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseQueryReturnType<\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 TQueryKey extends QueryKey = QueryKey,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n | UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryKey extends QueryKey,\n>(\n Observer: typeof QueryObserver,\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): UseQueryReturnType<TData, TError> {\n if (process.env.NODE_ENV === 'development') {\n if (!getCurrentScope()) {\n console.warn(\n 'vue-query composables like \"uesQuery()\" should only be used inside a \"setup()\" function or a running effect scope. They might otherwise lead to memory leaks.',\n )\n }\n }\n\n const options = computed(() => parseQueryArgs(arg1, arg2, arg3))\n\n const queryClient =\n options.value.queryClient ?? useQueryClient(options.value.queryClientKey)\n\n const defaultedOptions = computed(() => {\n const defaulted = queryClient.defaultQueryOptions(options.value)\n defaulted._optimisticResults = queryClient.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(queryClient, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n queryClient.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = 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 { flush: 'sync' },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>(\n (resolve, reject) => {\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 observer\n .fetchOptimistic(defaultedOptions.value)\n .then(resolve, reject)\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\n // Handle error boundary\n watch(\n () => state.error,\n (error) => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(defaultedOptions.value.useErrorBoundary, [\n error as TError,\n observer.getCurrentQuery(),\n ])\n ) {\n throw error\n }\n },\n )\n\n return {\n ...(toRefs(readonly(state)) as UseQueryReturnType<TData, TError>),\n suspense,\n }\n}\n\nexport function parseQueryArgs<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n> {\n const plainArg1 = unref(arg1)\n const plainArg2 = unref(arg2)\n const plainArg3 = unref(arg3)\n\n let options = plainArg1\n\n if (!isQueryKey(plainArg1)) {\n options = plainArg1\n } else if (typeof plainArg2 === 'function') {\n options = { ...plainArg3, queryKey: plainArg1, queryFn: plainArg2 }\n } else {\n options = { ...plainArg2, queryKey: plainArg1 }\n }\n\n return cloneDeepUnref(options) as WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >\n}\n"],"names":["useBaseQuery","Observer","arg1","arg2","arg3","process","env","NODE_ENV","getCurrentScope","console","warn","options","computed","parseQueryArgs","queryClient","value","useQueryClient","queryClientKey","defaultedOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","observer","state","reactive","getCurrentResult","unsubscribe","watch","subscribe","result","updateState","immediate","setOptions","flush","onScopeDispose","suspense","Promise","resolve","reject","stopWatch","run","enabled","optimisticResult","getOptimisticResult","isStale","fetchOptimistic","then","deep","error","isError","isFetching","shouldThrowError","useErrorBoundary","getCurrentQuery","toRefs","readonly","plainArg1","unref","plainArg2","plainArg3","isQueryKey","queryKey","queryFn","cloneDeepUnref"],"mappings":"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"}
1
+ {"version":3,"file":"useBaseQuery.mjs","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["import {\n computed,\n getCurrentScope,\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n unref,\n watch,\n} from 'vue-demi'\nimport { useQueryClient } from './useQueryClient'\nimport {\n cloneDeepUnref,\n isQueryKey,\n shouldThrowError,\n updateState,\n} from './utils'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n QueryFunction,\n QueryKey,\n QueryObserver,\n QueryObserverOptions,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { DeepUnwrapRef, MaybeRef, WithQueryClientKey } from './types'\nimport type { UseQueryOptions } from './useQuery'\nimport type { UseInfiniteQueryOptions } from './useInfiniteQuery'\n\nexport type UseQueryReturnType<\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 TQueryKey extends QueryKey = QueryKey,\n> =\n | UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n | UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryKey extends QueryKey,\n>(\n Observer: typeof QueryObserver,\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): UseQueryReturnType<TData, TError> {\n if (process.env.NODE_ENV === 'development') {\n if (!getCurrentScope()) {\n console.warn(\n 'vue-query composables like \"uesQuery()\" should only be used inside a \"setup()\" function or a running effect scope. They might otherwise lead to memory leaks.',\n )\n }\n }\n\n const options = computed(() => parseQueryArgs(arg1, arg2, arg3))\n\n const queryClient =\n options.value.queryClient ?? useQueryClient(options.value.queryClientKey)\n\n const defaultedOptions = computed(() => {\n const defaulted = queryClient.defaultQueryOptions(options.value)\n defaulted._optimisticResults = queryClient.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n })\n\n const observer = new Observer(queryClient, defaultedOptions.value)\n const state = reactive(observer.getCurrentResult())\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n queryClient.isRestoring,\n (isRestoring) => {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = 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 { flush: 'sync' },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const suspense = () => {\n return new Promise<QueryObserverResult<TData, TError>>(\n (resolve, reject) => {\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 observer\n .fetchOptimistic(defaultedOptions.value)\n .then(resolve, reject)\n } else {\n stopWatch()\n resolve(optimisticResult)\n }\n }\n }\n\n run()\n\n stopWatch = watch(defaultedOptions, run)\n },\n )\n }\n\n // Handle error boundary\n watch(\n () => state.error,\n (error) => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(defaultedOptions.value.useErrorBoundary, [\n error as TError,\n observer.getCurrentQuery(),\n ])\n ) {\n throw error\n }\n },\n )\n\n return {\n ...(toRefs(readonly(state)) as UseQueryReturnType<TData, TError>),\n suspense,\n }\n}\n\nexport function parseQueryArgs<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n arg1:\n | MaybeRef<TQueryKey>\n | MaybeRef<UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>>,\n arg2:\n | MaybeRef<QueryFunction<TQueryFnData, DeepUnwrapRef<TQueryKey>>>\n | MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n arg3: MaybeRef<\n UseQueryOptionsGeneric<TQueryFnData, TError, TData, TQueryKey>\n > = {},\n): WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n> {\n const plainArg1 = unref(arg1)\n const plainArg2 = unref(arg2)\n const plainArg3 = unref(arg3)\n\n let options = plainArg1\n\n if (!isQueryKey(plainArg1)) {\n options = plainArg1\n } else if (typeof plainArg2 === 'function') {\n options = { ...plainArg3, queryKey: plainArg1, queryFn: plainArg2 }\n } else {\n options = { ...plainArg2, queryKey: plainArg1 }\n }\n\n return cloneDeepUnref(options) as WithQueryClientKey<\n QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >\n}\n"],"names":["useBaseQuery","Observer","arg1","arg2","arg3","process","env","NODE_ENV","getCurrentScope","console","warn","options","computed","parseQueryArgs","queryClient","value","useQueryClient","queryClientKey","defaultedOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","observer","state","reactive","getCurrentResult","unsubscribe","watch","subscribe","result","updateState","immediate","setOptions","flush","onScopeDispose","suspense","Promise","resolve","reject","stopWatch","run","enabled","optimisticResult","getOptimisticResult","isStale","fetchOptimistic","then","error","isError","isFetching","shouldThrowError","useErrorBoundary","getCurrentQuery","toRefs","readonly","plainArg1","unref","plainArg2","plainArg3","isQueryKey","queryKey","queryFn","cloneDeepUnref"],"mappings":"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"}
@@ -1218,7 +1218,8 @@
1218
1218
  const error = action.error;
1219
1219
 
1220
1220
  if (isCancelledError(error) && error.revert && this.revertState) {
1221
- return { ...this.revertState
1221
+ return { ...this.revertState,
1222
+ fetchStatus: 'idle'
1222
1223
  };
1223
1224
  }
1224
1225
 
@@ -4852,9 +4853,7 @@
4852
4853
  };
4853
4854
 
4854
4855
  run();
4855
- stopWatch = vueDemi.watch(defaultedOptions, run, {
4856
- deep: true
4857
- });
4856
+ stopWatch = vueDemi.watch(defaultedOptions, run);
4858
4857
  });
4859
4858
  }; // Handle error boundary
4860
4859