@tanstack/react-query 5.0.0-rc.6 → 5.0.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.
Files changed (40) hide show
  1. package/build/codemods/coverage/base.css +224 -0
  2. package/build/codemods/coverage/block-navigation.js +87 -0
  3. package/build/codemods/coverage/clover.xml +6 -0
  4. package/build/codemods/coverage/coverage-final.json +1 -0
  5. package/build/codemods/coverage/favicon.png +0 -0
  6. package/build/codemods/coverage/index.html +101 -0
  7. package/build/codemods/coverage/prettify.css +1 -0
  8. package/build/codemods/coverage/prettify.js +2 -0
  9. package/build/codemods/coverage/sort-arrow-sprite.png +0 -0
  10. package/build/codemods/coverage/sorter.js +196 -0
  11. package/build/legacy/types.cjs.map +1 -1
  12. package/build/legacy/types.d.cts +3 -3
  13. package/build/legacy/types.d.ts +3 -3
  14. package/build/legacy/useQueries.cjs.map +1 -1
  15. package/build/legacy/useQueries.d.cts +9 -5
  16. package/build/legacy/useQueries.d.ts +9 -5
  17. package/build/legacy/useQueries.js.map +1 -1
  18. package/build/legacy/useSuspenseQueries.cjs.map +1 -1
  19. package/build/legacy/useSuspenseQueries.d.cts +9 -5
  20. package/build/legacy/useSuspenseQueries.d.ts +9 -5
  21. package/build/legacy/useSuspenseQueries.js.map +1 -1
  22. package/build/modern/types.cjs.map +1 -1
  23. package/build/modern/types.d.cts +3 -3
  24. package/build/modern/types.d.ts +3 -3
  25. package/build/modern/useQueries.cjs.map +1 -1
  26. package/build/modern/useQueries.d.cts +9 -5
  27. package/build/modern/useQueries.d.ts +9 -5
  28. package/build/modern/useQueries.js.map +1 -1
  29. package/build/modern/useSuspenseQueries.cjs.map +1 -1
  30. package/build/modern/useSuspenseQueries.d.cts +9 -5
  31. package/build/modern/useSuspenseQueries.d.ts +9 -5
  32. package/build/modern/useSuspenseQueries.js.map +1 -1
  33. package/package.json +2 -3
  34. package/src/__tests__/suspense.types.test.tsx +146 -0
  35. package/src/__tests__/useQueries.test.tsx +53 -1
  36. package/src/__tests__/useQuery.test.tsx +1 -1
  37. package/src/__tests__/useQuery.types.test.tsx +9 -7
  38. package/src/types.ts +2 -4
  39. package/src/useQueries.ts +23 -6
  40. package/src/useSuspenseQueries.ts +21 -6
package/src/useQueries.ts CHANGED
@@ -24,6 +24,7 @@ import type {
24
24
  QueryClient,
25
25
  QueryFunction,
26
26
  QueryKey,
27
+ ThrowOnError,
27
28
  } from '@tanstack/query-core'
28
29
 
29
30
  // This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.
@@ -66,10 +67,19 @@ type GetOptions<T> =
66
67
  T extends {
67
68
  queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>
68
69
  select: (data: any) => infer TData
70
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
69
71
  }
70
- ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TData, TQueryKey>
71
- : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }
72
- ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TQueryFnData, TQueryKey>
72
+ ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>
73
+ : T extends {
74
+ queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>
75
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
76
+ }
77
+ ? UseQueryOptionsForUseQueries<
78
+ TQueryFnData,
79
+ TError,
80
+ TQueryFnData,
81
+ TQueryKey
82
+ >
73
83
  : // Fallback
74
84
  UseQueryOptionsForUseQueries
75
85
 
@@ -92,10 +102,17 @@ type GetResults<T> =
92
102
  T extends {
93
103
  queryFn?: QueryFunction<unknown, any>
94
104
  select: (data: any) => infer TData
105
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
95
106
  }
96
- ? UseQueryResult<TData>
97
- : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }
98
- ? UseQueryResult<TQueryFnData>
107
+ ? UseQueryResult<TData, unknown extends TError ? DefaultError : TError>
108
+ : T extends {
109
+ queryFn?: QueryFunction<infer TQueryFnData, any>
110
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
111
+ }
112
+ ? UseQueryResult<
113
+ TQueryFnData,
114
+ unknown extends TError ? DefaultError : TError
115
+ >
99
116
  : // Fallback
100
117
  UseQueryResult
101
118
 
@@ -6,6 +6,7 @@ import type {
6
6
  DefaultError,
7
7
  QueryClient,
8
8
  QueryFunction,
9
+ ThrowOnError,
9
10
  } from '@tanstack/query-core'
10
11
 
11
12
  // Avoid TS depth-limit error in case of large array literal
@@ -34,10 +35,14 @@ type GetSuspenseOptions<T> =
34
35
  T extends {
35
36
  queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>
36
37
  select: (data: any) => infer TData
38
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
37
39
  }
38
- ? UseSuspenseQueryOptions<TQueryFnData, Error, TData, TQueryKey>
39
- : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }
40
- ? UseSuspenseQueryOptions<TQueryFnData, Error, TQueryFnData, TQueryKey>
40
+ ? UseSuspenseQueryOptions<TQueryFnData, TError, TData, TQueryKey>
41
+ : T extends {
42
+ queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>
43
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
44
+ }
45
+ ? UseSuspenseQueryOptions<TQueryFnData, TError, TQueryFnData, TQueryKey>
41
46
  : // Fallback
42
47
  UseSuspenseQueryOptions
43
48
 
@@ -60,10 +65,20 @@ type GetSuspenseResults<T> =
60
65
  T extends {
61
66
  queryFn?: QueryFunction<unknown, any>
62
67
  select: (data: any) => infer TData
68
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
63
69
  }
64
- ? UseSuspenseQueryResult<TData>
65
- : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }
66
- ? UseSuspenseQueryResult<TQueryFnData>
70
+ ? UseSuspenseQueryResult<
71
+ TData,
72
+ unknown extends TError ? DefaultError : TError
73
+ >
74
+ : T extends {
75
+ queryFn?: QueryFunction<infer TQueryFnData, any>
76
+ throwOnError?: ThrowOnError<any, infer TError, any, any>
77
+ }
78
+ ? UseSuspenseQueryResult<
79
+ TQueryFnData,
80
+ unknown extends TError ? DefaultError : TError
81
+ >
67
82
  : // Fallback
68
83
  UseSuspenseQueryResult
69
84