From 1b542518450ba9c71bf54bc1f78f798c18ed9e7e Mon Sep 17 00:00:00 2001 From: Dominik Dorfmeister Date: Mon, 3 Mar 2025 16:42:36 +0100 Subject: [PATCH 1/3] feat(types): typed query filters (#8670) * feat: typed query filters * refactor: use util types to extract from dataTag * chore: try to fix vue types with overloads * chore: vue types * test: from #8691 * fix: make options a MaybeRefDeep * feat: types for filters on other queryClient methods * fix: add a test for 8684 --- .../src/__tests__/queryClient.test-d.tsx | 110 +++++++++++++ packages/query-core/src/queryCache.ts | 2 +- packages/query-core/src/queryClient.ts | 146 ++++++++++-------- packages/query-core/src/types.ts | 12 ++ packages/vue-query/src/queryClient.ts | 128 ++++++++++++--- 5 files changed, 315 insertions(+), 83 deletions(-) diff --git a/packages/query-core/src/__tests__/queryClient.test-d.tsx b/packages/query-core/src/__tests__/queryClient.test-d.tsx index 04a8f26a37..94cef6ff9b 100644 --- a/packages/query-core/src/__tests__/queryClient.test-d.tsx +++ b/packages/query-core/src/__tests__/queryClient.test-d.tsx @@ -497,3 +497,113 @@ describe('fully typed usage', () => { queryClient.getMutationDefaults(mutationKey) }) }) + +describe('invalidateQueries', () => { + it('shows type error when queryKey is a wrong type in invalidateQueries', () => { + const queryClient = new QueryClient() + + queryClient.invalidateQueries() + + queryClient.invalidateQueries({ + queryKey: ['1'], + }) + + queryClient.invalidateQueries({ + // @ts-expect-error + queryKey: '1', + }) + + queryClient.invalidateQueries({ + // @ts-expect-error + queryKey: {}, + }) + }) + it('needs queryKey to be an array (#8684)', () => { + new QueryClient().invalidateQueries({ + // @ts-expect-error key is not an array + queryKey: { foo: true }, + }) + }) + it('predicate should be typed if key is tagged', () => { + const queryKey = ['key'] as DataTag, number> + const queryClient = new QueryClient() + queryClient.invalidateQueries({ + queryKey, + predicate: (query) => { + expectTypeOf(query.state.data).toEqualTypeOf() + expectTypeOf(query.queryKey).toEqualTypeOf< + DataTag, number> + >() + return true + }, + }) + }) +}) + +describe('cancelQueries', () => { + it('predicate should be typed if key is tagged', () => { + const queryKey = ['key'] as DataTag, number> + const queryClient = new QueryClient() + queryClient.cancelQueries({ + queryKey, + predicate: (query) => { + expectTypeOf(query.state.data).toEqualTypeOf() + expectTypeOf(query.queryKey).toEqualTypeOf< + DataTag, number> + >() + return true + }, + }) + }) +}) + +describe('removeQueries', () => { + it('predicate should be typed if key is tagged', () => { + const queryKey = ['key'] as DataTag, number> + const queryClient = new QueryClient() + queryClient.removeQueries({ + queryKey, + predicate: (query) => { + expectTypeOf(query.state.data).toEqualTypeOf() + expectTypeOf(query.queryKey).toEqualTypeOf< + DataTag, number> + >() + return true + }, + }) + }) +}) + +describe('refetchQueries', () => { + it('predicate should be typed if key is tagged', () => { + const queryKey = ['key'] as DataTag, number> + const queryClient = new QueryClient() + queryClient.refetchQueries({ + queryKey, + predicate: (query) => { + expectTypeOf(query.state.data).toEqualTypeOf() + expectTypeOf(query.queryKey).toEqualTypeOf< + DataTag, number> + >() + return true + }, + }) + }) +}) + +describe('resetQueries', () => { + it('predicate should be typed if key is tagged', () => { + const queryKey = ['key'] as DataTag, number> + const queryClient = new QueryClient() + queryClient.resetQueries({ + queryKey, + predicate: (query) => { + expectTypeOf(query.state.data).toEqualTypeOf() + expectTypeOf(query.queryKey).toEqualTypeOf< + DataTag, number> + >() + return true + }, + }) + }) +}) diff --git a/packages/query-core/src/queryCache.ts b/packages/query-core/src/queryCache.ts index 3c597610bc..b7772fe03d 100644 --- a/packages/query-core/src/queryCache.ts +++ b/packages/query-core/src/queryCache.ts @@ -190,7 +190,7 @@ export class QueryCache extends Subscribable { ) as Query | undefined } - findAll(filters: QueryFilters = {}): Array { + findAll(filters: QueryFilters = {}): Array { const queries = this.getAll() return Object.keys(filters).length > 0 ? queries.filter((query) => matchQuery(filters, query)) diff --git a/packages/query-core/src/queryClient.ts b/packages/query-core/src/queryClient.ts index 72c3a42cbf..a675b58f04 100644 --- a/packages/query-core/src/queryClient.ts +++ b/packages/query-core/src/queryClient.ts @@ -15,7 +15,6 @@ import { notifyManager } from './notifyManager' import { infiniteQueryBehavior } from './infiniteQueryBehavior' import type { CancelOptions, - DataTag, DefaultError, DefaultOptions, DefaultedQueryObserverOptions, @@ -23,6 +22,8 @@ import type { EnsureQueryDataOptions, FetchInfiniteQueryOptions, FetchQueryOptions, + InferDataFromTag, + InferErrorFromTag, InfiniteData, InvalidateOptions, InvalidateQueryFilters, @@ -39,7 +40,6 @@ import type { RefetchQueryFilters, ResetOptions, SetDataOptions, - UnsetMarker, } from './types' import type { QueryState } from './query' import type { MutationFilters, QueryFilters, Updater } from './utils' @@ -122,13 +122,7 @@ export class QueryClient { getQueryData< TQueryFnData = unknown, TTaggedQueryKey extends QueryKey = QueryKey, - TInferredQueryFnData = TTaggedQueryKey extends DataTag< - unknown, - infer TaggedValue, - unknown - > - ? TaggedValue - : TQueryFnData, + TInferredQueryFnData = InferDataFromTag, >(queryKey: TTaggedQueryKey): TInferredQueryFnData | undefined { const options = this.defaultQueryOptions({ queryKey }) @@ -191,13 +185,7 @@ export class QueryClient { setQueryData< TQueryFnData = unknown, TTaggedQueryKey extends QueryKey = QueryKey, - TInferredQueryFnData = TTaggedQueryKey extends DataTag< - unknown, - infer TaggedValue, - unknown - > - ? TaggedValue - : TQueryFnData, + TInferredQueryFnData = InferDataFromTag, >( queryKey: TTaggedQueryKey, updater: Updater< @@ -267,22 +255,8 @@ export class QueryClient { TQueryFnData = unknown, TError = DefaultError, TTaggedQueryKey extends QueryKey = QueryKey, - TInferredQueryFnData = TTaggedQueryKey extends DataTag< - unknown, - infer TaggedValue, - unknown - > - ? TaggedValue - : TQueryFnData, - TInferredError = TTaggedQueryKey extends DataTag< - unknown, - unknown, - infer TaggedError - > - ? TaggedError extends UnsetMarker - ? TError - : TaggedError - : TError, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, >( queryKey: TTaggedQueryKey, ): QueryState | undefined { @@ -293,8 +267,19 @@ export class QueryClient { } removeQueries< - TQueryFilters extends QueryFilters = QueryFilters, - >(filters?: TQueryFilters): void { + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: QueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + ): void { const queryCache = this.#queryCache notifyManager.batch(() => { queryCache.findAll(filters).forEach((query) => { @@ -304,26 +289,51 @@ export class QueryClient { } resetQueries< - TQueryFilters extends QueryFilters = QueryFilters, - >(filters?: TQueryFilters, options?: ResetOptions): Promise { + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: QueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + options?: ResetOptions, + ): Promise { const queryCache = this.#queryCache - const refetchFilters: RefetchQueryFilters = { - type: 'active', - ...filters, - } - return notifyManager.batch(() => { queryCache.findAll(filters).forEach((query) => { query.reset() }) - return this.refetchQueries(refetchFilters, options) + return this.refetchQueries( + { + type: 'active', + ...filters, + }, + options, + ) }) } cancelQueries< - TQueryFilters extends QueryFilters = QueryFilters, - >(filters?: TQueryFilters, cancelOptions: CancelOptions = {}): Promise { + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: QueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + cancelOptions: CancelOptions = {}, + ): Promise { const defaultedCancelOptions = { revert: true, ...cancelOptions } const promises = notifyManager.batch(() => @@ -336,14 +346,18 @@ export class QueryClient { } invalidateQueries< - TInvalidateQueryFilters extends InvalidateQueryFilters< - any, - any, - any, - any - > = InvalidateQueryFilters, + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, >( - filters?: TInvalidateQueryFilters, + filters?: InvalidateQueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, options: InvalidateOptions = {}, ): Promise { return notifyManager.batch(() => { @@ -354,23 +368,29 @@ export class QueryClient { if (filters?.refetchType === 'none') { return Promise.resolve() } - const refetchFilters: RefetchQueryFilters = { - ...filters, - type: filters?.refetchType ?? filters?.type ?? 'active', - } - return this.refetchQueries(refetchFilters, options) + return this.refetchQueries( + { + ...filters, + type: filters?.refetchType ?? filters?.type ?? 'active', + }, + options, + ) }) } refetchQueries< - TRefetchQueryFilters extends RefetchQueryFilters< - any, - any, - any, - any - > = RefetchQueryFilters, + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, >( - filters?: TRefetchQueryFilters, + filters?: RefetchQueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, options: RefetchOptions = {}, ): Promise { const fetchOptions = { diff --git a/packages/query-core/src/types.ts b/packages/query-core/src/types.ts index 6d94daabc0..c973b6a758 100644 --- a/packages/query-core/src/types.ts +++ b/packages/query-core/src/types.ts @@ -74,6 +74,18 @@ export type DataTag< [dataTagErrorSymbol]: TError } +export type InferDataFromTag = + TTaggedQueryKey extends DataTag + ? TaggedValue + : TQueryFnData + +export type InferErrorFromTag = + TTaggedQueryKey extends DataTag + ? TaggedError extends UnsetMarker + ? TError + : TaggedError + : TError + export type QueryFunction< T = unknown, TQueryKey extends QueryKey = QueryKey, diff --git a/packages/vue-query/src/queryClient.ts b/packages/vue-query/src/queryClient.ts index 7712268bb7..c7e02bbdf0 100644 --- a/packages/vue-query/src/queryClient.ts +++ b/packages/vue-query/src/queryClient.ts @@ -3,17 +3,15 @@ import { QueryClient as QC } from '@tanstack/query-core' import { cloneDeepUnref } from './utils' import { QueryCache } from './queryCache' import { MutationCache } from './mutationCache' -import type { UseQueryOptions } from './useQuery' -import type { Ref } from 'vue-demi' -import type { MaybeRefDeep, NoUnknown } from './types' import type { CancelOptions, - DataTag, DefaultError, DefaultOptions, EnsureQueryDataOptions, FetchInfiniteQueryOptions, FetchQueryOptions, + InferDataFromTag, + InferErrorFromTag, InfiniteData, InvalidateOptions, InvalidateQueryFilters, @@ -33,6 +31,9 @@ import type { SetDataOptions, Updater, } from '@tanstack/query-core' +import type { UseQueryOptions } from './useQuery' +import type { Ref } from 'vue-demi' +import type { MaybeRefDeep, NoUnknown } from './types' export class QueryClient extends QC { constructor(config: QueryClientConfig = {}) { @@ -56,11 +57,7 @@ export class QueryClient extends QC { getQueryData( queryKey: TTaggedQueryKey, - ): - | (TTaggedQueryKey extends DataTag - ? TaggedValue - : TData) - | undefined + ): InferDataFromTag | undefined getQueryData( queryKey: MaybeRefDeep, ): TData | undefined @@ -108,16 +105,17 @@ export class QueryClient extends QC { } setQueryData< - TQueryFnData, - TTaggedQueryKey extends QueryKey, - TData = TTaggedQueryKey extends DataTag - ? TaggedValue - : TQueryFnData, + TQueryFnData = unknown, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, >( queryKey: TTaggedQueryKey, - updater: Updater | undefined, NoInfer | undefined>, + updater: Updater< + NoInfer | undefined, + NoInfer | undefined + >, options?: MaybeRefDeep, - ): TData | undefined + ): TInferredQueryFnData | undefined setQueryData>( queryKey: MaybeRefDeep, updater: Updater | undefined, NoInfer | undefined>, @@ -153,10 +151,39 @@ export class QueryClient extends QC { return super.getQueryState(cloneDeepUnref(queryKey)) } + removeQueries< + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: QueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + ): void removeQueries(filters: MaybeRefDeep = {}): void { return super.removeQueries(cloneDeepUnref(filters)) } + resetQueries< + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: QueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + options?: MaybeRefDeep, + ): Promise resetQueries( filters: MaybeRefDeep = {}, options: MaybeRefDeep = {}, @@ -164,6 +191,21 @@ export class QueryClient extends QC { return super.resetQueries(cloneDeepUnref(filters), cloneDeepUnref(options)) } + cancelQueries< + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: QueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + options?: MaybeRefDeep, + ): Promise cancelQueries( filters: MaybeRefDeep = {}, options: MaybeRefDeep = {}, @@ -171,8 +213,36 @@ export class QueryClient extends QC { return super.cancelQueries(cloneDeepUnref(filters), cloneDeepUnref(options)) } - invalidateQueries( - filters: MaybeRefDeep = {}, + invalidateQueries< + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: InvalidateQueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + options?: MaybeRefDeep, + ): Promise + invalidateQueries< + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters: MaybeRefDeep< + InvalidateQueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + > + > = {}, options: MaybeRefDeep = {}, ): Promise { const filtersCloned = cloneDeepUnref(filters) @@ -187,7 +257,12 @@ export class QueryClient extends QC { return Promise.resolve() } - const refetchFilters: RefetchQueryFilters = { + const refetchFilters: RefetchQueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + > = { ...filtersCloned, type: filtersCloned.refetchType ?? filtersCloned.type ?? 'active', } @@ -199,6 +274,21 @@ export class QueryClient extends QC { }) } + refetchQueries< + TQueryFnData = unknown, + TError = DefaultError, + TTaggedQueryKey extends QueryKey = QueryKey, + TInferredQueryFnData = InferDataFromTag, + TInferredError = InferErrorFromTag, + >( + filters?: RefetchQueryFilters< + TInferredQueryFnData, + TInferredError, + TInferredQueryFnData, + TTaggedQueryKey + >, + options?: MaybeRefDeep, + ): Promise refetchQueries( filters: MaybeRefDeep = {}, options: MaybeRefDeep = {}, From c0f27f692171b664f0e5e612c04fa3deea2624ab Mon Sep 17 00:00:00 2001 From: Tanner Linsley Date: Mon, 3 Mar 2025 15:45:24 +0000 Subject: [PATCH 2/3] release: v5.67.0 --- examples/angular/auto-refetching/package.json | 2 +- examples/angular/basic/package.json | 2 +- examples/angular/devtools-panel/package.json | 4 +- .../package.json | 2 +- .../angular/optimistic-updates/package.json | 2 +- examples/angular/pagination/package.json | 2 +- .../query-options-from-a-service/package.json | 2 +- examples/angular/router/package.json | 2 +- examples/angular/rxjs/package.json | 2 +- examples/angular/simple/package.json | 2 +- examples/react/algolia/package.json | 4 +- examples/react/auto-refetching/package.json | 4 +- .../react/basic-graphql-request/package.json | 4 +- examples/react/basic/package.json | 8 +- .../react/default-query-function/package.json | 4 +- examples/react/devtools-panel/package.json | 4 +- .../package.json | 4 +- .../load-more-infinite-scroll/package.json | 4 +- .../react/nextjs-app-prefetching/package.json | 4 +- .../nextjs-suspense-streaming/package.json | 6 +- examples/react/nextjs/package.json | 4 +- examples/react/offline/package.json | 8 +- .../optimistic-updates-cache/package.json | 4 +- .../react/optimistic-updates-ui/package.json | 4 +- examples/react/pagination/package.json | 4 +- examples/react/playground/package.json | 4 +- examples/react/prefetching/package.json | 4 +- examples/react/react-native/package.json | 4 +- examples/react/react-router/package.json | 4 +- examples/react/rick-morty/package.json | 4 +- examples/react/shadow-dom/package.json | 4 +- examples/react/simple/package.json | 4 +- examples/react/star-wars/package.json | 4 +- examples/react/suspense/package.json | 4 +- examples/solid/astro/package.json | 4 +- .../solid/basic-graphql-request/package.json | 4 +- examples/solid/basic/package.json | 4 +- .../solid/default-query-function/package.json | 4 +- examples/solid/simple/package.json | 4 +- .../solid/solid-start-streaming/package.json | 4 +- examples/svelte/auto-refetching/package.json | 4 +- examples/svelte/basic/package.json | 8 +- .../load-more-infinite-scroll/package.json | 4 +- .../svelte/optimistic-updates/package.json | 4 +- examples/svelte/playground/package.json | 4 +- examples/svelte/simple/package.json | 4 +- examples/svelte/ssr/package.json | 4 +- examples/svelte/star-wars/package.json | 4 +- examples/vue/2.6-basic/package.json | 2 +- examples/vue/2.7-basic/package.json | 2 +- examples/vue/basic/package.json | 4 +- examples/vue/dependent-queries/package.json | 2 +- examples/vue/nuxt3/package.json | 2 +- examples/vue/persister/package.json | 8 +- examples/vue/simple/package.json | 4 +- .../package.json | 2 +- .../angular-query-experimental/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- packages/query-core/package.json | 2 +- .../query-persist-client-core/package.json | 2 +- .../query-sync-storage-persister/package.json | 2 +- packages/react-query-devtools/package.json | 2 +- .../package.json | 2 +- .../react-query-persist-client/package.json | 2 +- packages/react-query/package.json | 2 +- packages/solid-query-devtools/package.json | 2 +- .../solid-query-persist-client/package.json | 2 +- packages/solid-query/package.json | 2 +- packages/svelte-query-devtools/package.json | 2 +- .../svelte-query-persist-client/package.json | 2 +- packages/svelte-query/package.json | 2 +- packages/vue-query-devtools/package.json | 2 +- packages/vue-query/package.json | 2 +- pnpm-lock.yaml | 206 +++++++++--------- 75 files changed, 228 insertions(+), 228 deletions(-) diff --git a/examples/angular/auto-refetching/package.json b/examples/angular/auto-refetching/package.json index 40e685e125..9c7552a878 100644 --- a/examples/angular/auto-refetching/package.json +++ b/examples/angular/auto-refetching/package.json @@ -14,7 +14,7 @@ "@angular/core": "^19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/basic/package.json b/examples/angular/basic/package.json index c9d67ec4e9..5eb7230447 100644 --- a/examples/angular/basic/package.json +++ b/examples/angular/basic/package.json @@ -14,7 +14,7 @@ "@angular/core": "^19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/devtools-panel/package.json b/examples/angular/devtools-panel/package.json index 8ff18f7ba1..7d9a439feb 100644 --- a/examples/angular/devtools-panel/package.json +++ b/examples/angular/devtools-panel/package.json @@ -15,8 +15,8 @@ "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", "@angular/router": "^19.1.0-next.0", - "@tanstack/angular-query-devtools-experimental": "^5.66.11", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-devtools-experimental": "^5.67.0", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/infinite-query-with-max-pages/package.json b/examples/angular/infinite-query-with-max-pages/package.json index ed09acef54..8dad6896aa 100644 --- a/examples/angular/infinite-query-with-max-pages/package.json +++ b/examples/angular/infinite-query-with-max-pages/package.json @@ -14,7 +14,7 @@ "@angular/core": "^19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/optimistic-updates/package.json b/examples/angular/optimistic-updates/package.json index bf1f0bffb3..2515bfcd3d 100644 --- a/examples/angular/optimistic-updates/package.json +++ b/examples/angular/optimistic-updates/package.json @@ -15,7 +15,7 @@ "@angular/forms": "19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/pagination/package.json b/examples/angular/pagination/package.json index b196bda0d8..9a29698eb4 100644 --- a/examples/angular/pagination/package.json +++ b/examples/angular/pagination/package.json @@ -14,7 +14,7 @@ "@angular/core": "^19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/query-options-from-a-service/package.json b/examples/angular/query-options-from-a-service/package.json index 10069b9c21..6f27c73be0 100644 --- a/examples/angular/query-options-from-a-service/package.json +++ b/examples/angular/query-options-from-a-service/package.json @@ -15,7 +15,7 @@ "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", "@angular/router": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/router/package.json b/examples/angular/router/package.json index 1e78efc5f0..907141720e 100644 --- a/examples/angular/router/package.json +++ b/examples/angular/router/package.json @@ -15,7 +15,7 @@ "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", "@angular/router": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/rxjs/package.json b/examples/angular/rxjs/package.json index 0530439486..33df23bf78 100644 --- a/examples/angular/rxjs/package.json +++ b/examples/angular/rxjs/package.json @@ -15,7 +15,7 @@ "@angular/forms": "19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/angular/simple/package.json b/examples/angular/simple/package.json index c0dd912838..4f1515b7d9 100644 --- a/examples/angular/simple/package.json +++ b/examples/angular/simple/package.json @@ -14,7 +14,7 @@ "@angular/core": "^19.1.0-next.0", "@angular/platform-browser": "^19.1.0-next.0", "@angular/platform-browser-dynamic": "^19.1.0-next.0", - "@tanstack/angular-query-experimental": "^5.66.11", + "@tanstack/angular-query-experimental": "^5.67.0", "rxjs": "^7.8.1", "tslib": "^2.6.3", "zone.js": "^0.15.0" diff --git a/examples/react/algolia/package.json b/examples/react/algolia/package.json index b3b5818d52..e84655d689 100644 --- a/examples/react/algolia/package.json +++ b/examples/react/algolia/package.json @@ -9,8 +9,8 @@ }, "dependencies": { "@algolia/client-search": "5.2.1", - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/auto-refetching/package.json b/examples/react/auto-refetching/package.json index dc20b70975..663f4a9d6c 100644 --- a/examples/react/auto-refetching/package.json +++ b/examples/react/auto-refetching/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/basic-graphql-request/package.json b/examples/react/basic-graphql-request/package.json index ab7db30d7d..356330f457 100644 --- a/examples/react/basic-graphql-request/package.json +++ b/examples/react/basic-graphql-request/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "graphql": "^16.9.0", "graphql-request": "^7.1.2", "react": "^19.0.0", diff --git a/examples/react/basic/package.json b/examples/react/basic/package.json index eef79bc116..ea5779c0e7 100644 --- a/examples/react/basic/package.json +++ b/examples/react/basic/package.json @@ -8,10 +8,10 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/query-sync-storage-persister": "^5.66.11", - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", - "@tanstack/react-query-persist-client": "^5.66.11", + "@tanstack/query-sync-storage-persister": "^5.67.0", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", + "@tanstack/react-query-persist-client": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/default-query-function/package.json b/examples/react/default-query-function/package.json index 720e913e43..8be923e35d 100644 --- a/examples/react/default-query-function/package.json +++ b/examples/react/default-query-function/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/devtools-panel/package.json b/examples/react/devtools-panel/package.json index 2791183b7b..eaf3fce890 100644 --- a/examples/react/devtools-panel/package.json +++ b/examples/react/devtools-panel/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/infinite-query-with-max-pages/package.json b/examples/react/infinite-query-with-max-pages/package.json index 9c28220618..7fab014c0d 100644 --- a/examples/react/infinite-query-with-max-pages/package.json +++ b/examples/react/infinite-query-with-max-pages/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/load-more-infinite-scroll/package.json b/examples/react/load-more-infinite-scroll/package.json index df683ccc62..3a9602b733 100644 --- a/examples/react/load-more-infinite-scroll/package.json +++ b/examples/react/load-more-infinite-scroll/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/examples/react/nextjs-app-prefetching/package.json b/examples/react/nextjs-app-prefetching/package.json index dd4ab23118..b011562b44 100644 --- a/examples/react/nextjs-app-prefetching/package.json +++ b/examples/react/nextjs-app-prefetching/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^15.1.0", "react": "^19.0.0", "react-dom": "^19.0.0" diff --git a/examples/react/nextjs-suspense-streaming/package.json b/examples/react/nextjs-suspense-streaming/package.json index 396328418f..49f7e33873 100644 --- a/examples/react/nextjs-suspense-streaming/package.json +++ b/examples/react/nextjs-suspense-streaming/package.json @@ -8,9 +8,9 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", - "@tanstack/react-query-next-experimental": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", + "@tanstack/react-query-next-experimental": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/nextjs/package.json b/examples/react/nextjs/package.json index 2b26ed4dc1..e071d10661 100644 --- a/examples/react/nextjs/package.json +++ b/examples/react/nextjs/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/offline/package.json b/examples/react/offline/package.json index c627a3df87..0adfd46b97 100644 --- a/examples/react/offline/package.json +++ b/examples/react/offline/package.json @@ -8,11 +8,11 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/query-sync-storage-persister": "^5.66.11", + "@tanstack/query-sync-storage-persister": "^5.67.0", "@tanstack/react-location": "^3.7.4", - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", - "@tanstack/react-query-persist-client": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", + "@tanstack/react-query-persist-client": "^5.67.0", "msw": "^2.6.6", "react": "^19.0.0", "react-dom": "^19.0.0", diff --git a/examples/react/optimistic-updates-cache/package.json b/examples/react/optimistic-updates-cache/package.json index 528d86655b..2645269f3e 100755 --- a/examples/react/optimistic-updates-cache/package.json +++ b/examples/react/optimistic-updates-cache/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/optimistic-updates-ui/package.json b/examples/react/optimistic-updates-ui/package.json index b8c13b3086..ad9dbbbc67 100755 --- a/examples/react/optimistic-updates-ui/package.json +++ b/examples/react/optimistic-updates-ui/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/pagination/package.json b/examples/react/pagination/package.json index 3b779f009d..680b799d76 100644 --- a/examples/react/pagination/package.json +++ b/examples/react/pagination/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/playground/package.json b/examples/react/playground/package.json index 1294d6af83..c152625301 100644 --- a/examples/react/playground/package.json +++ b/examples/react/playground/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/prefetching/package.json b/examples/react/prefetching/package.json index ee7ec37912..3623a436ad 100644 --- a/examples/react/prefetching/package.json +++ b/examples/react/prefetching/package.json @@ -8,8 +8,8 @@ "start": "next start" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "next": "^14.2.20", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/examples/react/react-native/package.json b/examples/react/react-native/package.json index 6937fc0017..e7b004d2ff 100644 --- a/examples/react/react-native/package.json +++ b/examples/react/react-native/package.json @@ -14,8 +14,8 @@ "@react-native-community/netinfo": "^11.4.1", "@react-navigation/native": "^6.1.18", "@react-navigation/stack": "^6.4.1", - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "expo": "^52.0.11", "expo-constants": "^17.0.3", "expo-status-bar": "^2.0.0", diff --git a/examples/react/react-router/package.json b/examples/react/react-router/package.json index 23fa1c39e3..2b23b38e8b 100644 --- a/examples/react/react-router/package.json +++ b/examples/react/react-router/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "localforage": "^1.10.0", "match-sorter": "^6.3.4", "react": "^19.0.0", diff --git a/examples/react/rick-morty/package.json b/examples/react/rick-morty/package.json index b6ffe9624b..8c0d15c439 100644 --- a/examples/react/rick-morty/package.json +++ b/examples/react/rick-morty/package.json @@ -12,8 +12,8 @@ "@emotion/styled": "^11.13.5", "@mui/material": "^6.1.8", "@mui/styles": "^6.1.8", - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0", "react-router": "^6.25.1", diff --git a/examples/react/shadow-dom/package.json b/examples/react/shadow-dom/package.json index 266eb8528c..616887ca3b 100644 --- a/examples/react/shadow-dom/package.json +++ b/examples/react/shadow-dom/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/simple/package.json b/examples/react/simple/package.json index 1dba8c83a9..72567a0b6b 100644 --- a/examples/react/simple/package.json +++ b/examples/react/simple/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/examples/react/star-wars/package.json b/examples/react/star-wars/package.json index 538088b0b5..8727a7bd12 100644 --- a/examples/react/star-wars/package.json +++ b/examples/react/star-wars/package.json @@ -12,8 +12,8 @@ "@emotion/styled": "^11.13.5", "@mui/material": "^6.1.8", "@mui/styles": "^6.1.8", - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "react": "^19.0.0", "react-dom": "^19.0.0", "react-router": "^6.25.1", diff --git a/examples/react/suspense/package.json b/examples/react/suspense/package.json index 6090477c4a..94a9fb2ddb 100644 --- a/examples/react/suspense/package.json +++ b/examples/react/suspense/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/react-query": "^5.66.11", - "@tanstack/react-query-devtools": "^5.66.11", + "@tanstack/react-query": "^5.67.0", + "@tanstack/react-query-devtools": "^5.67.0", "font-awesome": "^4.7.0", "react": "^19.0.0", "react-dom": "^19.0.0", diff --git a/examples/solid/astro/package.json b/examples/solid/astro/package.json index 79b8826f92..50db6f9427 100644 --- a/examples/solid/astro/package.json +++ b/examples/solid/astro/package.json @@ -15,8 +15,8 @@ "@astrojs/solid-js": "^4.4.4", "@astrojs/tailwind": "^5.1.2", "@astrojs/vercel": "^7.8.2", - "@tanstack/solid-query": "^5.66.11", - "@tanstack/solid-query-devtools": "^5.66.11", + "@tanstack/solid-query": "^5.67.0", + "@tanstack/solid-query-devtools": "^5.67.0", "astro": "^4.16.18", "solid-js": "^1.9.3", "tailwindcss": "^3.4.7", diff --git a/examples/solid/basic-graphql-request/package.json b/examples/solid/basic-graphql-request/package.json index ee3f912153..6f00ea13a2 100644 --- a/examples/solid/basic-graphql-request/package.json +++ b/examples/solid/basic-graphql-request/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/solid-query": "^5.66.11", - "@tanstack/solid-query-devtools": "^5.66.11", + "@tanstack/solid-query": "^5.67.0", + "@tanstack/solid-query-devtools": "^5.67.0", "graphql": "^16.9.0", "graphql-request": "^7.1.2", "solid-js": "^1.9.3" diff --git a/examples/solid/basic/package.json b/examples/solid/basic/package.json index 6f5472e950..8996770dea 100644 --- a/examples/solid/basic/package.json +++ b/examples/solid/basic/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/solid-query": "^5.66.11", - "@tanstack/solid-query-devtools": "^5.66.11", + "@tanstack/solid-query": "^5.67.0", + "@tanstack/solid-query-devtools": "^5.67.0", "solid-js": "^1.9.3" }, "devDependencies": { diff --git a/examples/solid/default-query-function/package.json b/examples/solid/default-query-function/package.json index 3daedd5db6..9504bb0e0c 100644 --- a/examples/solid/default-query-function/package.json +++ b/examples/solid/default-query-function/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/solid-query": "^5.66.11", - "@tanstack/solid-query-devtools": "^5.66.11", + "@tanstack/solid-query": "^5.67.0", + "@tanstack/solid-query-devtools": "^5.67.0", "solid-js": "^1.9.3" }, "devDependencies": { diff --git a/examples/solid/simple/package.json b/examples/solid/simple/package.json index 40205f4a69..177c1cc7c4 100644 --- a/examples/solid/simple/package.json +++ b/examples/solid/simple/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/solid-query": "^5.66.11", - "@tanstack/solid-query-devtools": "^5.66.11", + "@tanstack/solid-query": "^5.67.0", + "@tanstack/solid-query-devtools": "^5.67.0", "solid-js": "^1.9.3" }, "devDependencies": { diff --git a/examples/solid/solid-start-streaming/package.json b/examples/solid/solid-start-streaming/package.json index 1efff7b5c3..69a772649f 100644 --- a/examples/solid/solid-start-streaming/package.json +++ b/examples/solid/solid-start-streaming/package.json @@ -12,8 +12,8 @@ "@solidjs/meta": "^0.29.4", "@solidjs/router": "^0.15.2", "@solidjs/start": "^1.0.10", - "@tanstack/solid-query": "^5.66.11", - "@tanstack/solid-query-devtools": "^5.66.11", + "@tanstack/solid-query": "^5.67.0", + "@tanstack/solid-query-devtools": "^5.67.0", "solid-js": "^1.9.3", "vinxi": "^0.4.1" }, diff --git a/examples/svelte/auto-refetching/package.json b/examples/svelte/auto-refetching/package.json index 90390bb517..f985346b32 100644 --- a/examples/svelte/auto-refetching/package.json +++ b/examples/svelte/auto-refetching/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/svelte/basic/package.json b/examples/svelte/basic/package.json index 5e77c81caf..1cee4ca1a3 100644 --- a/examples/svelte/basic/package.json +++ b/examples/svelte/basic/package.json @@ -8,10 +8,10 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/query-sync-storage-persister": "^5.66.11", - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11", - "@tanstack/svelte-query-persist-client": "^5.66.11" + "@tanstack/query-sync-storage-persister": "^5.67.0", + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0", + "@tanstack/svelte-query-persist-client": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/svelte/load-more-infinite-scroll/package.json b/examples/svelte/load-more-infinite-scroll/package.json index b65a0a9914..b9d577d7d5 100644 --- a/examples/svelte/load-more-infinite-scroll/package.json +++ b/examples/svelte/load-more-infinite-scroll/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/svelte/optimistic-updates/package.json b/examples/svelte/optimistic-updates/package.json index 3e90530fac..f4ff3af595 100644 --- a/examples/svelte/optimistic-updates/package.json +++ b/examples/svelte/optimistic-updates/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/svelte/playground/package.json b/examples/svelte/playground/package.json index 32c8e870a7..b01a4e7f04 100644 --- a/examples/svelte/playground/package.json +++ b/examples/svelte/playground/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/svelte/simple/package.json b/examples/svelte/simple/package.json index 01dbe23bed..f4852c82da 100644 --- a/examples/svelte/simple/package.json +++ b/examples/svelte/simple/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/vite-plugin-svelte": "^3.1.2", diff --git a/examples/svelte/ssr/package.json b/examples/svelte/ssr/package.json index fb65da75ce..80a384cab5 100644 --- a/examples/svelte/ssr/package.json +++ b/examples/svelte/ssr/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/svelte/star-wars/package.json b/examples/svelte/star-wars/package.json index e5901d1d2d..b180328ef9 100644 --- a/examples/svelte/star-wars/package.json +++ b/examples/svelte/star-wars/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/svelte-query": "^5.66.11", - "@tanstack/svelte-query-devtools": "^5.66.11" + "@tanstack/svelte-query": "^5.67.0", + "@tanstack/svelte-query-devtools": "^5.67.0" }, "devDependencies": { "@sveltejs/adapter-auto": "^3.3.1", diff --git a/examples/vue/2.6-basic/package.json b/examples/vue/2.6-basic/package.json index a247a4b807..b13d1c2be7 100644 --- a/examples/vue/2.6-basic/package.json +++ b/examples/vue/2.6-basic/package.json @@ -8,7 +8,7 @@ "_preview": "vite preview" }, "dependencies": { - "@tanstack/vue-query": "^5.66.11", + "@tanstack/vue-query": "^5.67.0", "@vue/composition-api": "1.7.2", "vue": "2.6.14", "vue-template-compiler": "2.6.14" diff --git a/examples/vue/2.7-basic/package.json b/examples/vue/2.7-basic/package.json index 115ae0baa9..ff93d63802 100644 --- a/examples/vue/2.7-basic/package.json +++ b/examples/vue/2.7-basic/package.json @@ -8,7 +8,7 @@ "_serve": "vite preview" }, "dependencies": { - "@tanstack/vue-query": "^5.66.11", + "@tanstack/vue-query": "^5.67.0", "vue": "2.7.16", "vue-template-compiler": "2.7.16" }, diff --git a/examples/vue/basic/package.json b/examples/vue/basic/package.json index f69b8ba779..32993f9294 100644 --- a/examples/vue/basic/package.json +++ b/examples/vue/basic/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/vue-query": "^5.66.11", - "@tanstack/vue-query-devtools": "^5.66.11", + "@tanstack/vue-query": "^5.67.0", + "@tanstack/vue-query-devtools": "^5.67.0", "vue": "^3.4.27" }, "devDependencies": { diff --git a/examples/vue/dependent-queries/package.json b/examples/vue/dependent-queries/package.json index ff8afc52d2..e0f9a24e23 100644 --- a/examples/vue/dependent-queries/package.json +++ b/examples/vue/dependent-queries/package.json @@ -8,7 +8,7 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/vue-query": "^5.66.11", + "@tanstack/vue-query": "^5.67.0", "vue": "^3.4.27" }, "devDependencies": { diff --git a/examples/vue/nuxt3/package.json b/examples/vue/nuxt3/package.json index 7ff60364c0..36117e9659 100644 --- a/examples/vue/nuxt3/package.json +++ b/examples/vue/nuxt3/package.json @@ -7,7 +7,7 @@ "_start": "node .output/server/index.mjs" }, "dependencies": { - "@tanstack/vue-query": "^5.66.11" + "@tanstack/vue-query": "^5.67.0" }, "devDependencies": { "nuxt": "^3.12.4" diff --git a/examples/vue/persister/package.json b/examples/vue/persister/package.json index 1acbeb6e04..1dff5f2dd5 100644 --- a/examples/vue/persister/package.json +++ b/examples/vue/persister/package.json @@ -8,10 +8,10 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/query-core": "^5.66.11", - "@tanstack/query-persist-client-core": "^5.66.11", - "@tanstack/query-sync-storage-persister": "^5.66.11", - "@tanstack/vue-query": "^5.66.11", + "@tanstack/query-core": "^5.67.0", + "@tanstack/query-persist-client-core": "^5.67.0", + "@tanstack/query-sync-storage-persister": "^5.67.0", + "@tanstack/vue-query": "^5.67.0", "idb-keyval": "^6.2.1", "vue": "^3.4.27" }, diff --git a/examples/vue/simple/package.json b/examples/vue/simple/package.json index f242e1266e..3f3935f318 100644 --- a/examples/vue/simple/package.json +++ b/examples/vue/simple/package.json @@ -8,8 +8,8 @@ "preview": "vite preview" }, "dependencies": { - "@tanstack/vue-query": "^5.66.11", - "@tanstack/vue-query-devtools": "^5.66.11", + "@tanstack/vue-query": "^5.67.0", + "@tanstack/vue-query-devtools": "^5.67.0", "vue": "^3.4.27" }, "devDependencies": { diff --git a/packages/angular-query-devtools-experimental/package.json b/packages/angular-query-devtools-experimental/package.json index d95eb8009c..178d787d92 100644 --- a/packages/angular-query-devtools-experimental/package.json +++ b/packages/angular-query-devtools-experimental/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/angular-query-devtools-experimental", - "version": "5.66.11", + "version": "5.67.0", "description": "Developer tools to interact with and visualize the TanStack/angular-query cache", "author": "Arnoud de Vries", "license": "MIT", diff --git a/packages/angular-query-experimental/package.json b/packages/angular-query-experimental/package.json index 38870a4094..bb1c6944a1 100644 --- a/packages/angular-query-experimental/package.json +++ b/packages/angular-query-experimental/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/angular-query-experimental", - "version": "5.66.11", + "version": "5.67.0", "description": "Signals for managing, caching and syncing asynchronous and remote data in Angular", "author": "Arnoud de Vries", "license": "MIT", diff --git a/packages/query-async-storage-persister/package.json b/packages/query-async-storage-persister/package.json index 347a5c9d7b..c41e34990d 100644 --- a/packages/query-async-storage-persister/package.json +++ b/packages/query-async-storage-persister/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/query-async-storage-persister", - "version": "5.66.11", + "version": "5.67.0", "description": "A persister for asynchronous storages, to be used with TanStack/Query", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/query-broadcast-client-experimental/package.json b/packages/query-broadcast-client-experimental/package.json index cf38a275f6..3d0d81f06a 100644 --- a/packages/query-broadcast-client-experimental/package.json +++ b/packages/query-broadcast-client-experimental/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/query-broadcast-client-experimental", - "version": "5.66.11", + "version": "5.67.0", "description": "An experimental plugin to for broadcasting the state of your queryClient between browser tabs/windows", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/query-core/package.json b/packages/query-core/package.json index 1b5facf4c4..a120fe9a0b 100644 --- a/packages/query-core/package.json +++ b/packages/query-core/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/query-core", - "version": "5.66.11", + "version": "5.67.0", "description": "The framework agnostic core that powers TanStack Query", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/query-persist-client-core/package.json b/packages/query-persist-client-core/package.json index 0972e46ce3..457d1b86b5 100644 --- a/packages/query-persist-client-core/package.json +++ b/packages/query-persist-client-core/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/query-persist-client-core", - "version": "5.66.11", + "version": "5.67.0", "description": "Set of utilities for interacting with persisters, which can save your queryClient for later use", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/query-sync-storage-persister/package.json b/packages/query-sync-storage-persister/package.json index 3416075e91..747d3d31dc 100644 --- a/packages/query-sync-storage-persister/package.json +++ b/packages/query-sync-storage-persister/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/query-sync-storage-persister", - "version": "5.66.11", + "version": "5.67.0", "description": "A persister for synchronous storages, to be used with TanStack/Query", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/react-query-devtools/package.json b/packages/react-query-devtools/package.json index cf919f450d..68520a75ff 100644 --- a/packages/react-query-devtools/package.json +++ b/packages/react-query-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/react-query-devtools", - "version": "5.66.11", + "version": "5.67.0", "description": "Developer tools to interact with and visualize the TanStack/react-query cache", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/react-query-next-experimental/package.json b/packages/react-query-next-experimental/package.json index 599604d1bc..c9dbf5cda5 100644 --- a/packages/react-query-next-experimental/package.json +++ b/packages/react-query-next-experimental/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/react-query-next-experimental", - "version": "5.66.11", + "version": "5.67.0", "description": "Hydration utils for React Query in the NextJs app directory", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/react-query-persist-client/package.json b/packages/react-query-persist-client/package.json index a9b3a89ff2..3944642b11 100644 --- a/packages/react-query-persist-client/package.json +++ b/packages/react-query-persist-client/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/react-query-persist-client", - "version": "5.66.11", + "version": "5.67.0", "description": "React bindings to work with persisters in TanStack/react-query", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/react-query/package.json b/packages/react-query/package.json index f7e413b96b..001359efb8 100644 --- a/packages/react-query/package.json +++ b/packages/react-query/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/react-query", - "version": "5.66.11", + "version": "5.67.0", "description": "Hooks for managing, caching and syncing asynchronous and remote data in React", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/solid-query-devtools/package.json b/packages/solid-query-devtools/package.json index 103912e92b..9fab664cad 100644 --- a/packages/solid-query-devtools/package.json +++ b/packages/solid-query-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/solid-query-devtools", - "version": "5.66.11", + "version": "5.67.0", "description": "Developer tools to interact with and visualize the TanStack/solid-query Query cache", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/solid-query-persist-client/package.json b/packages/solid-query-persist-client/package.json index b3349b616d..31bc0f6c1a 100644 --- a/packages/solid-query-persist-client/package.json +++ b/packages/solid-query-persist-client/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/solid-query-persist-client", - "version": "5.66.11", + "version": "5.67.0", "description": "Solid.js bindings to work with persisters in TanStack/solid-query", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/solid-query/package.json b/packages/solid-query/package.json index 58b686175f..55f541aefb 100644 --- a/packages/solid-query/package.json +++ b/packages/solid-query/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/solid-query", - "version": "5.66.11", + "version": "5.67.0", "description": "Primitives for managing, caching and syncing asynchronous and remote data in Solid", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/svelte-query-devtools/package.json b/packages/svelte-query-devtools/package.json index 8c17ef4601..6311a0f4d0 100644 --- a/packages/svelte-query-devtools/package.json +++ b/packages/svelte-query-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/svelte-query-devtools", - "version": "5.66.11", + "version": "5.67.0", "description": "Developer tools to interact with and visualize the TanStack/svelte-query cache", "author": "Lachlan Collins", "license": "MIT", diff --git a/packages/svelte-query-persist-client/package.json b/packages/svelte-query-persist-client/package.json index d95a672067..5ed8c470d3 100644 --- a/packages/svelte-query-persist-client/package.json +++ b/packages/svelte-query-persist-client/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/svelte-query-persist-client", - "version": "5.66.11", + "version": "5.67.0", "description": "Svelte bindings to work with persisters in TanStack/svelte-query", "author": "Lachlan Collins", "license": "MIT", diff --git a/packages/svelte-query/package.json b/packages/svelte-query/package.json index 3a6e1da9ea..e44af2a939 100644 --- a/packages/svelte-query/package.json +++ b/packages/svelte-query/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/svelte-query", - "version": "5.66.11", + "version": "5.67.0", "description": "Primitives for managing, caching and syncing asynchronous and remote data in Svelte", "author": "Lachlan Collins", "license": "MIT", diff --git a/packages/vue-query-devtools/package.json b/packages/vue-query-devtools/package.json index 2f0c971273..700ef6d8d6 100644 --- a/packages/vue-query-devtools/package.json +++ b/packages/vue-query-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/vue-query-devtools", - "version": "5.66.11", + "version": "5.67.0", "description": "Developer tools to interact with and visualize the TanStack/vue-query cache", "author": "tannerlinsley", "license": "MIT", diff --git a/packages/vue-query/package.json b/packages/vue-query/package.json index 9f84d675e9..84b6dc52cc 100644 --- a/packages/vue-query/package.json +++ b/packages/vue-query/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/vue-query", - "version": "5.66.11", + "version": "5.67.0", "description": "Hooks for managing, caching and syncing asynchronous and remote data in Vue", "author": "Damian Osipiuk", "license": "MIT", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9505094331..204bf413e1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -143,7 +143,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -186,7 +186,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -232,10 +232,10 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(rxjs@7.8.2) '@tanstack/angular-query-devtools-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-devtools-experimental '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -278,7 +278,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -324,7 +324,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -367,7 +367,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -413,7 +413,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(rxjs@7.8.2) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -459,7 +459,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(rxjs@7.8.2) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -505,7 +505,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -548,7 +548,7 @@ importers: specifier: ^19.1.0-next.0 version: 19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/compiler@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0)))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(@angular/platform-browser@19.1.0-next.0(@angular/common@19.1.0-next.0(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))(rxjs@7.8.2))(@angular/core@19.1.0-next.0(rxjs@7.8.2)(zone.js@0.15.0))) '@tanstack/angular-query-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/angular-query-experimental rxjs: specifier: ^7.8.1 @@ -579,10 +579,10 @@ importers: specifier: 5.2.1 version: 5.2.1 '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -613,10 +613,10 @@ importers: examples/react/auto-refetching: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -641,16 +641,16 @@ importers: examples/react/basic: dependencies: '@tanstack/query-sync-storage-persister': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/query-sync-storage-persister '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools '@tanstack/react-query-persist-client': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-persist-client react: specifier: ^19.0.0 @@ -681,10 +681,10 @@ importers: examples/react/basic-graphql-request: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools graphql: specifier: ^16.9.0 @@ -709,10 +709,10 @@ importers: examples/react/default-query-function: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -734,10 +734,10 @@ importers: examples/react/devtools-panel: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -759,10 +759,10 @@ importers: examples/react/infinite-query-with-max-pages: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -787,10 +787,10 @@ importers: examples/react/load-more-infinite-scroll: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -818,10 +818,10 @@ importers: examples/react/nextjs: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -846,10 +846,10 @@ importers: examples/react/nextjs-app-prefetching: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^15.1.0 @@ -874,13 +874,13 @@ importers: examples/react/nextjs-suspense-streaming: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools '@tanstack/react-query-next-experimental': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-next-experimental next: specifier: ^14.2.20 @@ -902,19 +902,19 @@ importers: examples/react/offline: dependencies: '@tanstack/query-sync-storage-persister': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/query-sync-storage-persister '@tanstack/react-location': specifier: ^3.7.4 version: 3.7.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools '@tanstack/react-query-persist-client': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-persist-client msw: specifier: ^2.6.6 @@ -942,10 +942,10 @@ importers: examples/react/optimistic-updates-cache: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -970,10 +970,10 @@ importers: examples/react/optimistic-updates-ui: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -998,10 +998,10 @@ importers: examples/react/pagination: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -1026,10 +1026,10 @@ importers: examples/react/playground: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -1051,10 +1051,10 @@ importers: examples/react/prefetching: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools next: specifier: ^14.2.20 @@ -1088,10 +1088,10 @@ importers: specifier: ^6.4.1 version: 6.4.1(ps2gcw7wsvqo7jgjw47ug7eu24) '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools expo: specifier: ^52.0.11 @@ -1140,10 +1140,10 @@ importers: examples/react/react-router: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools localforage: specifier: ^1.10.0 @@ -1204,10 +1204,10 @@ importers: specifier: ^6.1.8 version: 6.1.8(@types/react@19.0.1)(react@19.0.0) '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -1235,10 +1235,10 @@ importers: examples/react/shadow-dom: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -1266,10 +1266,10 @@ importers: examples/react/simple: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -1303,10 +1303,10 @@ importers: specifier: ^6.1.8 version: 6.1.8(@types/react@19.0.1)(react@19.0.0) '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools react: specifier: ^19.0.0 @@ -1334,10 +1334,10 @@ importers: examples/react/suspense: dependencies: '@tanstack/react-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query '@tanstack/react-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/react-query-devtools font-awesome: specifier: ^4.7.0 @@ -1380,10 +1380,10 @@ importers: specifier: ^7.8.2 version: 7.8.2(astro@4.16.18(@types/node@22.13.5)(less@4.2.2)(lightningcss@1.27.0)(rollup@4.34.8)(sass@1.85.1)(terser@5.31.6)(typescript@5.7.2))(encoding@0.1.13)(next@15.1.2(@babel/core@7.26.0)(babel-plugin-react-compiler@0.0.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.85.1))(react@19.0.0) '@tanstack/solid-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query '@tanstack/solid-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query-devtools astro: specifier: ^4.16.18 @@ -1401,10 +1401,10 @@ importers: examples/solid/basic: dependencies: '@tanstack/solid-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query '@tanstack/solid-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query-devtools solid-js: specifier: ^1.9.3 @@ -1423,10 +1423,10 @@ importers: examples/solid/basic-graphql-request: dependencies: '@tanstack/solid-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query '@tanstack/solid-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query-devtools graphql: specifier: ^16.9.0 @@ -1451,10 +1451,10 @@ importers: examples/solid/default-query-function: dependencies: '@tanstack/solid-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query '@tanstack/solid-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query-devtools solid-js: specifier: ^1.9.3 @@ -1473,10 +1473,10 @@ importers: examples/solid/simple: dependencies: '@tanstack/solid-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query '@tanstack/solid-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query-devtools solid-js: specifier: ^1.9.3 @@ -1507,10 +1507,10 @@ importers: specifier: ^1.0.10 version: 1.0.10(@testing-library/jest-dom@6.6.3)(solid-js@1.9.4)(vinxi@0.4.1(@types/node@22.13.5)(idb-keyval@6.2.1)(ioredis@5.4.1)(less@4.2.2)(lightningcss@1.27.0)(magicast@0.3.5)(sass@1.85.1)(terser@5.31.6))(vite@5.4.14(@types/node@22.13.5)(less@4.2.2)(lightningcss@1.27.0)(sass@1.85.1)(terser@5.31.6)) '@tanstack/solid-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query '@tanstack/solid-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/solid-query-devtools solid-js: specifier: ^1.9.3 @@ -1522,10 +1522,10 @@ importers: examples/svelte/auto-refetching: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/adapter-auto': @@ -1553,16 +1553,16 @@ importers: examples/svelte/basic: dependencies: '@tanstack/query-sync-storage-persister': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/query-sync-storage-persister '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools '@tanstack/svelte-query-persist-client': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-persist-client devDependencies: '@sveltejs/adapter-auto': @@ -1590,10 +1590,10 @@ importers: examples/svelte/load-more-infinite-scroll: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/adapter-auto': @@ -1621,10 +1621,10 @@ importers: examples/svelte/optimistic-updates: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/adapter-auto': @@ -1652,10 +1652,10 @@ importers: examples/svelte/playground: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/adapter-auto': @@ -1683,10 +1683,10 @@ importers: examples/svelte/simple: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/vite-plugin-svelte': @@ -1711,10 +1711,10 @@ importers: examples/svelte/ssr: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/adapter-auto': @@ -1742,10 +1742,10 @@ importers: examples/svelte/star-wars: dependencies: '@tanstack/svelte-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query '@tanstack/svelte-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/svelte-query-devtools devDependencies: '@sveltejs/adapter-auto': @@ -1782,10 +1782,10 @@ importers: examples/vue/basic: dependencies: '@tanstack/vue-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/vue-query '@tanstack/vue-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/vue-query-devtools vue: specifier: ^3.4.27 @@ -1804,7 +1804,7 @@ importers: examples/vue/dependent-queries: dependencies: '@tanstack/vue-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/vue-query vue: specifier: ^3.4.27 @@ -1823,16 +1823,16 @@ importers: examples/vue/persister: dependencies: '@tanstack/query-core': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/query-core '@tanstack/query-persist-client-core': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/query-persist-client-core '@tanstack/query-sync-storage-persister': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/query-sync-storage-persister '@tanstack/vue-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/vue-query idb-keyval: specifier: ^6.2.1 @@ -1854,10 +1854,10 @@ importers: examples/vue/simple: dependencies: '@tanstack/vue-query': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/vue-query '@tanstack/vue-query-devtools': - specifier: ^5.66.11 + specifier: ^5.67.0 version: link:../../../packages/vue-query-devtools vue: specifier: ^3.4.27 From 4d8c27b4487b0fd637fdfe2ad208f5f5d055b3a6 Mon Sep 17 00:00:00 2001 From: yusheng chen <55658154+samuel871211@users.noreply.github.com> Date: Mon, 3 Mar 2025 23:52:43 +0800 Subject: [PATCH 3/3] refactor(query-core): improve type safety and performance in `getMutationDefaults` (#8669) - Change return type to exclude mutationKey using OmitKeyof - Replace spread operator with Object.assign for better performance Co-authored-by: Dominik Dorfmeister --- packages/query-core/src/queryClient.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/query-core/src/queryClient.ts b/packages/query-core/src/queryClient.ts index a675b58f04..f9f15543dc 100644 --- a/packages/query-core/src/queryClient.ts +++ b/packages/query-core/src/queryClient.ts @@ -605,14 +605,17 @@ export class QueryClient { getMutationDefaults( mutationKey: MutationKey, - ): MutationObserverOptions { + ): OmitKeyof, 'mutationKey'> { const defaults = [...this.#mutationDefaults.values()] - let result: MutationObserverOptions = {} + const result: OmitKeyof< + MutationObserverOptions, + 'mutationKey' + > = {} defaults.forEach((queryDefault) => { if (partialMatchKey(mutationKey, queryDefault.mutationKey)) { - result = { ...result, ...queryDefault.defaultOptions } + Object.assign(result, queryDefault.defaultOptions) } })