From 6b4c444e890be2a0a0b8bb4737a9dd6564ad3b10 Mon Sep 17 00:00:00 2001 From: Juan Henriquez Date: Tue, 19 Jul 2022 17:36:28 -0400 Subject: [PATCH 1/5] fix(react-query): allow passing options to useQuery without initialData --- packages/react-query/src/useQuery.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/react-query/src/useQuery.ts b/packages/react-query/src/useQuery.ts index eee97a3f4b..579f8ba878 100644 --- a/packages/react-query/src/useQuery.ts +++ b/packages/react-query/src/useQuery.ts @@ -59,6 +59,20 @@ export function useQuery< > & { initialData: TQueryFnData | (() => TQueryFnData) }, ): DefinedUseQueryResult +export function useQuery< + TQueryFnData = unknown, + TError = unknown, + TData = TQueryFnData, + TQueryKey extends QueryKey = QueryKey, +>( + queryKey: TQueryKey, + queryFn: QueryFunction, + options?: Omit< + UseQueryOptions, + 'queryKey' | 'queryFn' + >, +): DefinedUseQueryResult + export function useQuery< TQueryFnData = unknown, TError = unknown, From 06c1e3d6563e2da27d17d4a44a5c43defb6b58f9 Mon Sep 17 00:00:00 2001 From: Juan Henriquez Date: Tue, 19 Jul 2022 17:59:00 -0400 Subject: [PATCH 2/5] fix: switch DefinedUseQueryResult for UseQueryResult --- packages/react-query/src/useQuery.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-query/src/useQuery.ts b/packages/react-query/src/useQuery.ts index 579f8ba878..92db449c43 100644 --- a/packages/react-query/src/useQuery.ts +++ b/packages/react-query/src/useQuery.ts @@ -71,7 +71,7 @@ export function useQuery< UseQueryOptions, 'queryKey' | 'queryFn' >, -): DefinedUseQueryResult +): UseQueryResult export function useQuery< TQueryFnData = unknown, From b755ce2a8fe9bc2d42afbb59e7ebee94cfc304eb Mon Sep 17 00:00:00 2001 From: Juan Henriquez Date: Tue, 19 Jul 2022 18:42:40 -0400 Subject: [PATCH 3/5] fix: add function overload that returns DefinedUseQueryResult --- packages/react-query/src/useQuery.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/react-query/src/useQuery.ts b/packages/react-query/src/useQuery.ts index 92db449c43..abab06bdf8 100644 --- a/packages/react-query/src/useQuery.ts +++ b/packages/react-query/src/useQuery.ts @@ -73,6 +73,20 @@ export function useQuery< >, ): UseQueryResult +export function useQuery< + TQueryFnData = unknown, + TError = unknown, + TData = TQueryFnData, + TQueryKey extends QueryKey = QueryKey, +>( + queryKey: TQueryKey, + queryFn: QueryFunction, + options?: Omit< + UseQueryOptions, + 'queryKey' | 'queryFn' + >, +): DefinedUseQueryResult + export function useQuery< TQueryFnData = unknown, TError = unknown, From 8c7f1c89612086b946fd3cf0889798055f13ff70 Mon Sep 17 00:00:00 2001 From: Juan Henriquez Date: Wed, 20 Jul 2022 13:42:13 -0400 Subject: [PATCH 4/5] fix: move new overload functions to the end --- packages/react-query/src/useQuery.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/react-query/src/useQuery.ts b/packages/react-query/src/useQuery.ts index abab06bdf8..b23628985a 100644 --- a/packages/react-query/src/useQuery.ts +++ b/packages/react-query/src/useQuery.ts @@ -69,8 +69,8 @@ export function useQuery< queryFn: QueryFunction, options?: Omit< UseQueryOptions, - 'queryKey' | 'queryFn' - >, + 'queryKey' | 'queryFn' | 'initialData' + > & { initialData?: () => undefined }, ): UseQueryResult export function useQuery< @@ -83,8 +83,8 @@ export function useQuery< queryFn: QueryFunction, options?: Omit< UseQueryOptions, - 'queryKey' | 'queryFn' - >, + 'queryKey' | 'queryFn' | 'initialData' + > & { initialData: TQueryFnData | (() => TQueryFnData) }, ): DefinedUseQueryResult export function useQuery< @@ -97,8 +97,8 @@ export function useQuery< queryFn: QueryFunction, options?: Omit< UseQueryOptions, - 'queryKey' | 'queryFn' | 'initialData' - > & { initialData?: () => undefined }, + 'queryKey' | 'queryFn' + >, ): UseQueryResult export function useQuery< @@ -111,8 +111,8 @@ export function useQuery< queryFn: QueryFunction, options?: Omit< UseQueryOptions, - 'queryKey' | 'queryFn' | 'initialData' - > & { initialData: TQueryFnData | (() => TQueryFnData) }, + 'queryKey' | 'queryFn' + >, ): DefinedUseQueryResult export function useQuery< From 1d3b9ec22f6b7ccd8d92bb9bfe85c287fa559f55 Mon Sep 17 00:00:00 2001 From: Juan Henriquez Date: Wed, 20 Jul 2022 18:05:38 -0400 Subject: [PATCH 5/5] chore: add new overloads to the other versions of the useQuery hook --- packages/react-query/src/useQuery.ts | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/packages/react-query/src/useQuery.ts b/packages/react-query/src/useQuery.ts index b23628985a..624a9edd48 100644 --- a/packages/react-query/src/useQuery.ts +++ b/packages/react-query/src/useQuery.ts @@ -33,6 +33,15 @@ export function useQuery< > & { initialData: TQueryFnData | (() => TQueryFnData) }, ): DefinedUseQueryResult +export function useQuery< + TQueryFnData = unknown, + TError = unknown, + TData = TQueryFnData, + TQueryKey extends QueryKey = QueryKey, +>( + options: UseQueryOptions, +): UseQueryResult + export function useQuery< TQueryFnData = unknown, TError = unknown, @@ -66,11 +75,10 @@ export function useQuery< TQueryKey extends QueryKey = QueryKey, >( queryKey: TQueryKey, - queryFn: QueryFunction, options?: Omit< UseQueryOptions, - 'queryKey' | 'queryFn' | 'initialData' - > & { initialData?: () => undefined }, + 'queryKey' + >, ): UseQueryResult export function useQuery< @@ -84,8 +92,8 @@ export function useQuery< options?: Omit< UseQueryOptions, 'queryKey' | 'queryFn' | 'initialData' - > & { initialData: TQueryFnData | (() => TQueryFnData) }, -): DefinedUseQueryResult + > & { initialData?: () => undefined }, +): UseQueryResult export function useQuery< TQueryFnData = unknown, @@ -97,9 +105,9 @@ export function useQuery< queryFn: QueryFunction, options?: Omit< UseQueryOptions, - 'queryKey' | 'queryFn' - >, -): UseQueryResult + 'queryKey' | 'queryFn' | 'initialData' + > & { initialData: TQueryFnData | (() => TQueryFnData) }, +): DefinedUseQueryResult export function useQuery< TQueryFnData = unknown, @@ -113,7 +121,7 @@ export function useQuery< UseQueryOptions, 'queryKey' | 'queryFn' >, -): DefinedUseQueryResult +): UseQueryResult export function useQuery< TQueryFnData,