From 4b5cd14abb68b02504c297e7ec6f6af99f94d998 Mon Sep 17 00:00:00 2001 From: Sol Lee Date: Sat, 26 Apr 2025 18:57:42 +0900 Subject: [PATCH 1/4] fix(vue-query): update `initialData` type to allow InitialDataFunction and NonUndefinedGuard, similar to react-query --- packages/vue-query/src/useQuery.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/vue-query/src/useQuery.ts b/packages/vue-query/src/useQuery.ts index a27258c2aaa..1f6c293fe40 100644 --- a/packages/vue-query/src/useQuery.ts +++ b/packages/vue-query/src/useQuery.ts @@ -3,6 +3,7 @@ import { useBaseQuery } from './useBaseQuery' import type { DefaultError, DefinedQueryObserverResult, + InitialDataFunction, QueryKey, QueryObserverOptions, } from '@tanstack/query-core' @@ -64,7 +65,10 @@ export type UndefinedInitialQueryOptions< TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, > = UseQueryOptions & { - initialData?: undefined + initialData?: + | undefined + | InitialDataFunction> + | NonUndefinedGuard } export type DefinedInitialQueryOptions< From 7a193282c1a54d5372a4ff5c0f5866af82cf58f5 Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 10:01:27 +0000 Subject: [PATCH 2/4] ci: apply automated fixes --- packages/vue-query/src/useQuery.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/vue-query/src/useQuery.ts b/packages/vue-query/src/useQuery.ts index 1f6c293fe40..c767f54207b 100644 --- a/packages/vue-query/src/useQuery.ts +++ b/packages/vue-query/src/useQuery.ts @@ -66,9 +66,9 @@ export type UndefinedInitialQueryOptions< TQueryKey extends QueryKey = QueryKey, > = UseQueryOptions & { initialData?: - | undefined - | InitialDataFunction> - | NonUndefinedGuard + | undefined + | InitialDataFunction> + | NonUndefinedGuard } export type DefinedInitialQueryOptions< From 61cdbc4fb14c14deb80df0f785b61ee1f8bd7e15 Mon Sep 17 00:00:00 2001 From: Sol Lee Date: Sat, 26 Apr 2025 19:26:48 +0900 Subject: [PATCH 3/4] test: update types to include `undefined` in useQueries and useQuery tests in vue-query --- packages/vue-query/src/__tests__/useQueries.test-d.ts | 4 ++-- packages/vue-query/src/__tests__/useQuery.test-d.ts | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/vue-query/src/__tests__/useQueries.test-d.ts b/packages/vue-query/src/__tests__/useQueries.test-d.ts index c67de7b1a93..692be3f43e8 100644 --- a/packages/vue-query/src/__tests__/useQueries.test-d.ts +++ b/packages/vue-query/src/__tests__/useQueries.test-d.ts @@ -35,7 +35,7 @@ describe('UseQueries config object overload', () => { }) expectTypeOf(queriesState[0].data).toEqualTypeOf<{ wow: boolean }>() - expectTypeOf(queriesState[1].data).toEqualTypeOf() + expectTypeOf(queriesState[1].data).toEqualTypeOf() expectTypeOf(queriesState[2].data).toEqualTypeOf() }) @@ -54,7 +54,7 @@ describe('UseQueries config object overload', () => { const { value: queriesState } = useQueries({ queries: [options] }) - expectTypeOf(queriesState[0].data).toEqualTypeOf<{ wow: boolean }>() + expectTypeOf(queriesState[0].data).toEqualTypeOf<{ wow: boolean } | undefined>() }) it('should be possible to define a different TData than TQueryFnData using select with queryOptions spread into useQueries', () => { diff --git a/packages/vue-query/src/__tests__/useQuery.test-d.ts b/packages/vue-query/src/__tests__/useQuery.test-d.ts index a02ee4b638c..21ebfa8d6ec 100644 --- a/packages/vue-query/src/__tests__/useQuery.test-d.ts +++ b/packages/vue-query/src/__tests__/useQuery.test-d.ts @@ -23,7 +23,7 @@ describe('useQuery', () => { }), ) - expectTypeOf(data).toEqualTypeOf<{ wow: boolean }>() + expectTypeOf(data).toEqualTypeOf<{ wow: boolean } | undefined>() }) it('TData should be defined when passed through queryOptions', () => { @@ -40,7 +40,7 @@ describe('useQuery', () => { }) const { data } = reactive(useQuery(options)) - expectTypeOf(data).toEqualTypeOf<{ wow: boolean }>() + expectTypeOf(data).toEqualTypeOf<{ wow: boolean } | undefined>() }) it('should be possible to define a different TData than TQueryFnData using select with queryOptions spread into useQuery', () => { @@ -74,7 +74,7 @@ describe('useQuery', () => { }), ) - expectTypeOf(data).toEqualTypeOf<{ wow: boolean }>() + expectTypeOf(data).toEqualTypeOf<{ wow: boolean } | undefined>() }) it('TData should have undefined in the union when initialData is NOT provided', () => { From 39910e7aae71d0496caf20b843c7fdb7f9d8063a Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 10:29:14 +0000 Subject: [PATCH 4/4] ci: apply automated fixes --- packages/vue-query/src/__tests__/useQueries.test-d.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/vue-query/src/__tests__/useQueries.test-d.ts b/packages/vue-query/src/__tests__/useQueries.test-d.ts index 692be3f43e8..9e13e2f4651 100644 --- a/packages/vue-query/src/__tests__/useQueries.test-d.ts +++ b/packages/vue-query/src/__tests__/useQueries.test-d.ts @@ -54,7 +54,9 @@ describe('UseQueries config object overload', () => { const { value: queriesState } = useQueries({ queries: [options] }) - expectTypeOf(queriesState[0].data).toEqualTypeOf<{ wow: boolean } | undefined>() + expectTypeOf(queriesState[0].data).toEqualTypeOf< + { wow: boolean } | undefined + >() }) it('should be possible to define a different TData than TQueryFnData using select with queryOptions spread into useQueries', () => {