@tanstack/react-query 5.66.0 → 5.74.11

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.
Files changed (70) hide show
  1. package/build/legacy/HydrationBoundary.cjs +5 -1
  2. package/build/legacy/HydrationBoundary.cjs.map +1 -1
  3. package/build/legacy/HydrationBoundary.js +5 -1
  4. package/build/legacy/HydrationBoundary.js.map +1 -1
  5. package/build/legacy/index.cjs +5 -5
  6. package/build/legacy/index.cjs.map +1 -1
  7. package/build/legacy/infiniteQueryOptions.d.cts +1 -1
  8. package/build/legacy/infiniteQueryOptions.d.ts +1 -1
  9. package/build/legacy/queryOptions.cjs.map +1 -1
  10. package/build/legacy/queryOptions.d.cts +3 -2
  11. package/build/legacy/queryOptions.d.ts +3 -2
  12. package/build/legacy/queryOptions.js.map +1 -1
  13. package/build/legacy/suspense.d.cts +2 -2
  14. package/build/legacy/suspense.d.ts +2 -2
  15. package/build/legacy/types.d.cts +1 -1
  16. package/build/legacy/types.d.ts +1 -1
  17. package/build/legacy/useBaseQuery.cjs +8 -1
  18. package/build/legacy/useBaseQuery.cjs.map +1 -1
  19. package/build/legacy/useBaseQuery.js +8 -1
  20. package/build/legacy/useBaseQuery.js.map +1 -1
  21. package/build/legacy/useQueries.cjs +2 -6
  22. package/build/legacy/useQueries.cjs.map +1 -1
  23. package/build/legacy/useQueries.d.cts +8 -4
  24. package/build/legacy/useQueries.d.ts +8 -4
  25. package/build/legacy/useQueries.js +2 -6
  26. package/build/legacy/useQueries.js.map +1 -1
  27. package/build/legacy/useSuspenseQueries.cjs.map +1 -1
  28. package/build/legacy/useSuspenseQueries.d.cts +11 -3
  29. package/build/legacy/useSuspenseQueries.d.ts +11 -3
  30. package/build/legacy/useSuspenseQueries.js.map +1 -1
  31. package/build/modern/HydrationBoundary.cjs +5 -1
  32. package/build/modern/HydrationBoundary.cjs.map +1 -1
  33. package/build/modern/HydrationBoundary.js +5 -1
  34. package/build/modern/HydrationBoundary.js.map +1 -1
  35. package/build/modern/index.cjs +5 -5
  36. package/build/modern/index.cjs.map +1 -1
  37. package/build/modern/infiniteQueryOptions.d.cts +1 -1
  38. package/build/modern/infiniteQueryOptions.d.ts +1 -1
  39. package/build/modern/queryOptions.cjs.map +1 -1
  40. package/build/modern/queryOptions.d.cts +3 -2
  41. package/build/modern/queryOptions.d.ts +3 -2
  42. package/build/modern/queryOptions.js.map +1 -1
  43. package/build/modern/suspense.d.cts +2 -2
  44. package/build/modern/suspense.d.ts +2 -2
  45. package/build/modern/types.d.cts +1 -1
  46. package/build/modern/types.d.ts +1 -1
  47. package/build/modern/useBaseQuery.cjs +8 -1
  48. package/build/modern/useBaseQuery.cjs.map +1 -1
  49. package/build/modern/useBaseQuery.js +8 -1
  50. package/build/modern/useBaseQuery.js.map +1 -1
  51. package/build/modern/useQueries.cjs +2 -5
  52. package/build/modern/useQueries.cjs.map +1 -1
  53. package/build/modern/useQueries.d.cts +8 -4
  54. package/build/modern/useQueries.d.ts +8 -4
  55. package/build/modern/useQueries.js +2 -5
  56. package/build/modern/useQueries.js.map +1 -1
  57. package/build/modern/useSuspenseQueries.cjs.map +1 -1
  58. package/build/modern/useSuspenseQueries.d.cts +11 -3
  59. package/build/modern/useSuspenseQueries.d.ts +11 -3
  60. package/build/modern/useSuspenseQueries.js.map +1 -1
  61. package/build/query-codemods/package.json +2 -2
  62. package/build/query-codemods/tsconfig.json +1 -2
  63. package/build/query-codemods/vite.config.ts +9 -4
  64. package/package.json +6 -5
  65. package/src/HydrationBoundary.tsx +12 -1
  66. package/src/queryOptions.ts +3 -1
  67. package/src/useBaseQuery.ts +9 -3
  68. package/src/useQueries.ts +5 -24
  69. package/src/useSuspenseQueries.ts +19 -20
  70. package/build/query-codemods/root.vite.config.js +0 -17
package/src/useQueries.ts CHANGED
@@ -203,23 +203,7 @@ export type QueriesResults<
203
203
  [...TResults, GetUseQueryResult<Head>],
204
204
  [...TDepth, 1]
205
205
  >
206
- : T extends Array<
207
- UseQueryOptionsForUseQueries<
208
- infer TQueryFnData,
209
- infer TError,
210
- infer TData,
211
- any
212
- >
213
- >
214
- ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results
215
- Array<
216
- UseQueryResult<
217
- unknown extends TData ? TQueryFnData : TData,
218
- unknown extends TError ? DefaultError : TError
219
- >
220
- >
221
- : // Fallback
222
- Array<UseQueryResult>
206
+ : { [K in keyof T]: GetUseQueryResult<T[K]> }
223
207
 
224
208
  export function useQueries<
225
209
  T extends Array<any>,
@@ -229,7 +213,9 @@ export function useQueries<
229
213
  queries,
230
214
  ...options
231
215
  }: {
232
- queries: readonly [...QueriesOptions<T>]
216
+ queries:
217
+ | readonly [...QueriesOptions<T>]
218
+ | readonly [...{ [K in keyof T]: GetUseQueryOptionsForUseQueries<T[K]> }]
233
219
  combine?: (result: QueriesResults<T>) => TCombinedResult
234
220
  subscribed?: boolean
235
221
  },
@@ -293,14 +279,9 @@ export function useQueries<
293
279
  )
294
280
 
295
281
  React.useEffect(() => {
296
- // Do not notify on updates because of changes in the options because
297
- // these changes should already be reflected in the optimistic result.
298
282
  observer.setQueries(
299
283
  defaultedQueries,
300
284
  options as QueriesObserverOptions<TCombinedResult>,
301
- {
302
- listeners: false,
303
- },
304
285
  )
305
286
  }, [defaultedQueries, options, observer])
306
287
 
@@ -337,7 +318,7 @@ export function useQueries<
337
318
  errorResetBoundary,
338
319
  throwOnError: query.throwOnError,
339
320
  query: client.getQueryCache().get(query.queryHash),
340
- suspense: defaultedQueries[index]?.suspense,
321
+ suspense: query.suspense,
341
322
  })
342
323
  )
343
324
  },
@@ -160,23 +160,20 @@ export type SuspenseQueriesResults<
160
160
  [...TResults, GetUseSuspenseQueryResult<Head>],
161
161
  [...TDepth, 1]
162
162
  >
163
- : T extends Array<
164
- UseSuspenseQueryOptions<
165
- infer TQueryFnData,
166
- infer TError,
167
- infer TData,
168
- any
169
- >
170
- >
171
- ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results
172
- Array<
173
- UseSuspenseQueryResult<
174
- unknown extends TData ? TQueryFnData : TData,
175
- unknown extends TError ? DefaultError : TError
176
- >
177
- >
178
- : // Fallback
179
- Array<UseSuspenseQueryResult>
163
+ : { [K in keyof T]: GetUseSuspenseQueryResult<T[K]> }
164
+
165
+ export function useSuspenseQueries<
166
+ T extends Array<any>,
167
+ TCombinedResult = SuspenseQueriesResults<T>,
168
+ >(
169
+ options: {
170
+ queries:
171
+ | readonly [...SuspenseQueriesOptions<T>]
172
+ | readonly [...{ [K in keyof T]: GetUseSuspenseQueryOptions<T[K]> }]
173
+ combine?: (result: SuspenseQueriesResults<T>) => TCombinedResult
174
+ },
175
+ queryClient?: QueryClient,
176
+ ): TCombinedResult
180
177
 
181
178
  export function useSuspenseQueries<
182
179
  T extends Array<any>,
@@ -187,11 +184,13 @@ export function useSuspenseQueries<
187
184
  combine?: (result: SuspenseQueriesResults<T>) => TCombinedResult
188
185
  },
189
186
  queryClient?: QueryClient,
190
- ): TCombinedResult {
187
+ ): TCombinedResult
188
+
189
+ export function useSuspenseQueries(options: any, queryClient?: QueryClient) {
191
190
  return useQueries(
192
191
  {
193
192
  ...options,
194
- queries: options.queries.map((query) => {
193
+ queries: options.queries.map((query: any) => {
195
194
  if (process.env.NODE_ENV !== 'production') {
196
195
  if (query.queryFn === skipToken) {
197
196
  console.error('skipToken is not allowed for useSuspenseQueries')
@@ -206,7 +205,7 @@ export function useSuspenseQueries<
206
205
  placeholderData: undefined,
207
206
  }
208
207
  }),
209
- } as any,
208
+ },
210
209
  queryClient,
211
210
  )
212
211
  }
@@ -1,17 +0,0 @@
1
- // @ts-check
2
-
3
- import path from 'node:path'
4
- import ts from 'typescript'
5
-
6
- const tsconfig = ts.readConfigFile(
7
- path.resolve(__dirname, '..', 'tsconfig.json'),
8
- ts.sys.readFile,
9
- ).config
10
-
11
- export const dynamicAliases = Object.entries(
12
- tsconfig.compilerOptions.paths || {},
13
- ).reduce((aliases, [key, [value]]) => {
14
- const aliasKey = key.replace('/*', '')
15
- aliases[aliasKey] = path.resolve(value.replace('/*', ''))
16
- return aliases
17
- }, /** @type {Record<string, string>} */ ({}))