@tanstack/vue-query 5.48.1 → 5.49.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/legacy/infiniteQueryOptions.cjs.map +1 -1
- package/build/legacy/infiniteQueryOptions.js.map +1 -1
- package/build/legacy/queryClient.cjs.map +1 -1
- package/build/legacy/queryClient.js.map +1 -1
- package/build/legacy/useQueries.cjs.map +1 -1
- package/build/legacy/useQueries.d.cts +21 -17
- package/build/legacy/useQueries.d.ts +21 -17
- package/build/legacy/useQueries.js.map +1 -1
- package/build/modern/infiniteQueryOptions.cjs.map +1 -1
- package/build/modern/infiniteQueryOptions.js.map +1 -1
- package/build/modern/queryClient.cjs.map +1 -1
- package/build/modern/queryClient.js.map +1 -1
- package/build/modern/useQueries.cjs.map +1 -1
- package/build/modern/useQueries.d.cts +21 -17
- package/build/modern/useQueries.d.ts +21 -17
- package/build/modern/useQueries.js.map +1 -1
- package/package.json +3 -2
- package/src/__tests__/useQueries.test-d.ts +77 -0
- package/src/infiniteQueryOptions.ts +6 -3
- package/src/queryClient.ts +1 -1
- package/src/useQueries.ts +41 -24
package/src/useQueries.ts
CHANGED
|
@@ -15,7 +15,6 @@ import type {
|
|
|
15
15
|
DefaultError,
|
|
16
16
|
DefinedQueryObserverResult,
|
|
17
17
|
QueriesObserverOptions,
|
|
18
|
-
QueriesPlaceholderDataFunction,
|
|
19
18
|
QueryFunction,
|
|
20
19
|
QueryKey,
|
|
21
20
|
QueryObserverResult,
|
|
@@ -23,7 +22,7 @@ import type {
|
|
|
23
22
|
} from '@tanstack/query-core'
|
|
24
23
|
import type { UseQueryOptions } from './useQuery'
|
|
25
24
|
import type { QueryClient } from './queryClient'
|
|
26
|
-
import type { DeepUnwrapRef,
|
|
25
|
+
import type { DeepUnwrapRef, MaybeRefDeep } from './types'
|
|
27
26
|
|
|
28
27
|
// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.
|
|
29
28
|
// `placeholderData` function does not have a parameter
|
|
@@ -32,12 +31,7 @@ type UseQueryOptionsForUseQueries<
|
|
|
32
31
|
TError = unknown,
|
|
33
32
|
TData = TQueryFnData,
|
|
34
33
|
TQueryKey extends QueryKey = QueryKey,
|
|
35
|
-
> =
|
|
36
|
-
UseQueryOptions<TQueryFnData, TError, TData, unknown, TQueryKey>,
|
|
37
|
-
'placeholderData'
|
|
38
|
-
> & {
|
|
39
|
-
placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>
|
|
40
|
-
}
|
|
34
|
+
> = UseQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>
|
|
41
35
|
|
|
42
36
|
// Avoid TS depth-limit error in case of large array literal
|
|
43
37
|
type MAXIMUM_DEPTH = 20
|
|
@@ -45,7 +39,7 @@ type MAXIMUM_DEPTH = 20
|
|
|
45
39
|
// Widen the type of the symbol to enable type inference even if skipToken is not immutable.
|
|
46
40
|
type SkipTokenForUseQueries = symbol
|
|
47
41
|
|
|
48
|
-
type
|
|
42
|
+
type GetUseQueryOptionsForUseQueries<T> =
|
|
49
43
|
// Part 1: if UseQueryOptions are already being sent through, then just return T
|
|
50
44
|
T extends UseQueryOptions
|
|
51
45
|
? DeepUnwrapRef<T>
|
|
@@ -81,8 +75,20 @@ type GetOptions<T> =
|
|
|
81
75
|
unknown extends TData ? TQueryFnData : TData,
|
|
82
76
|
TQueryKey
|
|
83
77
|
>
|
|
84
|
-
:
|
|
85
|
-
|
|
78
|
+
: T extends {
|
|
79
|
+
queryFn?:
|
|
80
|
+
| QueryFunction<infer TQueryFnData, infer TQueryKey>
|
|
81
|
+
| SkipTokenForUseQueries
|
|
82
|
+
throwOnError?: ThrowOnError<any, infer TError, any, any>
|
|
83
|
+
}
|
|
84
|
+
? UseQueryOptionsForUseQueries<
|
|
85
|
+
TQueryFnData,
|
|
86
|
+
TError,
|
|
87
|
+
TQueryFnData,
|
|
88
|
+
TQueryKey
|
|
89
|
+
>
|
|
90
|
+
: // Fallback
|
|
91
|
+
UseQueryOptionsForUseQueries
|
|
86
92
|
|
|
87
93
|
// A defined initialData setting should return a DefinedQueryObserverResult rather than QueryObserverResult
|
|
88
94
|
type GetDefinedOrUndefinedQueryResult<T, TData, TError = unknown> = T extends {
|
|
@@ -101,7 +107,7 @@ type GetDefinedOrUndefinedQueryResult<T, TData, TError = unknown> = T extends {
|
|
|
101
107
|
: QueryObserverResult<TData, TError>
|
|
102
108
|
: QueryObserverResult<TData, TError>
|
|
103
109
|
|
|
104
|
-
type
|
|
110
|
+
type GetUseQueryResult<T> =
|
|
105
111
|
// Part 1: if using UseQueryOptions then the types are already set
|
|
106
112
|
T extends UseQueryOptions<
|
|
107
113
|
infer TQueryFnData,
|
|
@@ -142,26 +148,37 @@ type GetResults<T> =
|
|
|
142
148
|
unknown extends TData ? TQueryFnData : TData,
|
|
143
149
|
unknown extends TError ? DefaultError : TError
|
|
144
150
|
>
|
|
145
|
-
:
|
|
146
|
-
|
|
151
|
+
: T extends {
|
|
152
|
+
queryFn?:
|
|
153
|
+
| QueryFunction<infer TQueryFnData, any>
|
|
154
|
+
| SkipTokenForUseQueries
|
|
155
|
+
throwOnError?: ThrowOnError<any, infer TError, any, any>
|
|
156
|
+
}
|
|
157
|
+
? GetDefinedOrUndefinedQueryResult<
|
|
158
|
+
T,
|
|
159
|
+
TQueryFnData,
|
|
160
|
+
unknown extends TError ? DefaultError : TError
|
|
161
|
+
>
|
|
162
|
+
: // Fallback
|
|
163
|
+
QueryObserverResult
|
|
147
164
|
|
|
148
165
|
/**
|
|
149
166
|
* UseQueriesOptions reducer recursively unwraps function arguments to infer/enforce type param
|
|
150
167
|
*/
|
|
151
168
|
export type UseQueriesOptions<
|
|
152
169
|
T extends Array<any>,
|
|
153
|
-
|
|
170
|
+
TResults extends Array<any> = [],
|
|
154
171
|
TDepth extends ReadonlyArray<number> = [],
|
|
155
172
|
> = TDepth['length'] extends MAXIMUM_DEPTH
|
|
156
173
|
? Array<UseQueryOptionsForUseQueries>
|
|
157
174
|
: T extends []
|
|
158
175
|
? []
|
|
159
176
|
: T extends [infer Head]
|
|
160
|
-
? [...
|
|
161
|
-
: T extends [infer Head, ...infer
|
|
177
|
+
? [...TResults, GetUseQueryOptionsForUseQueries<Head>]
|
|
178
|
+
: T extends [infer Head, ...infer Tails]
|
|
162
179
|
? UseQueriesOptions<
|
|
163
|
-
[...
|
|
164
|
-
[...
|
|
180
|
+
[...Tails],
|
|
181
|
+
[...TResults, GetUseQueryOptionsForUseQueries<Head>],
|
|
165
182
|
[...TDepth, 1]
|
|
166
183
|
>
|
|
167
184
|
: ReadonlyArray<unknown> extends T
|
|
@@ -192,18 +209,18 @@ export type UseQueriesOptions<
|
|
|
192
209
|
*/
|
|
193
210
|
export type UseQueriesResults<
|
|
194
211
|
T extends Array<any>,
|
|
195
|
-
|
|
212
|
+
TResults extends Array<any> = [],
|
|
196
213
|
TDepth extends ReadonlyArray<number> = [],
|
|
197
214
|
> = TDepth['length'] extends MAXIMUM_DEPTH
|
|
198
215
|
? Array<QueryObserverResult>
|
|
199
216
|
: T extends []
|
|
200
217
|
? []
|
|
201
218
|
: T extends [infer Head]
|
|
202
|
-
? [...
|
|
203
|
-
: T extends [infer Head, ...infer
|
|
219
|
+
? [...TResults, GetUseQueryResult<Head>]
|
|
220
|
+
: T extends [infer Head, ...infer Tails]
|
|
204
221
|
? UseQueriesResults<
|
|
205
|
-
[...
|
|
206
|
-
[...
|
|
222
|
+
[...Tails],
|
|
223
|
+
[...TResults, GetUseQueryResult<Head>],
|
|
207
224
|
[...TDepth, 1]
|
|
208
225
|
>
|
|
209
226
|
: T extends Array<
|