@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/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, DistributiveOmit, MaybeRefDeep } from './types'
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
- > = DistributiveOmit<
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 GetOptions<T> =
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
- : // Fallback
85
- UseQueryOptionsForUseQueries
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 GetResults<T> =
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
- : // Fallback
146
- QueryObserverResult
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
- TResult extends Array<any> = [],
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
- ? [...TResult, GetOptions<Head>]
161
- : T extends [infer Head, ...infer Tail]
177
+ ? [...TResults, GetUseQueryOptionsForUseQueries<Head>]
178
+ : T extends [infer Head, ...infer Tails]
162
179
  ? UseQueriesOptions<
163
- [...Tail],
164
- [...TResult, GetOptions<Head>],
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
- TResult extends Array<any> = [],
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
- ? [...TResult, GetResults<Head>]
203
- : T extends [infer Head, ...infer Tail]
219
+ ? [...TResults, GetUseQueryResult<Head>]
220
+ : T extends [infer Head, ...infer Tails]
204
221
  ? UseQueriesResults<
205
- [...Tail],
206
- [...TResult, GetResults<Head>],
222
+ [...Tails],
223
+ [...TResults, GetUseQueryResult<Head>],
207
224
  [...TDepth, 1]
208
225
  >
209
226
  : T extends Array<