@depup/tanstack__react-query 5.91.0-depup.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 (330) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +25 -0
  3. package/build/codemods/src/utils/index.cjs +208 -0
  4. package/build/codemods/src/utils/transformers/query-cache-transformer.cjs +124 -0
  5. package/build/codemods/src/utils/transformers/query-client-transformer.cjs +53 -0
  6. package/build/codemods/src/utils/transformers/use-query-like-transformer.cjs +38 -0
  7. package/build/codemods/src/v4/key-transformation.cjs +181 -0
  8. package/build/codemods/src/v4/replace-import-specifier.cjs +25 -0
  9. package/build/codemods/src/v4/utils/replacers/key-replacer.cjs +164 -0
  10. package/build/codemods/src/v5/is-loading/is-loading.cjs +244 -0
  11. package/build/codemods/src/v5/keep-previous-data/README.md +32 -0
  12. package/build/codemods/src/v5/keep-previous-data/keep-previous-data.cjs +271 -0
  13. package/build/codemods/src/v5/keep-previous-data/utils/already-has-placeholder-data-property.cjs +26 -0
  14. package/build/codemods/src/v5/remove-overloads/remove-overloads.cjs +58 -0
  15. package/build/codemods/src/v5/remove-overloads/transformers/filter-aware-usage-transformer.cjs +271 -0
  16. package/build/codemods/src/v5/remove-overloads/transformers/query-fn-aware-usage-transformer.cjs +185 -0
  17. package/build/codemods/src/v5/remove-overloads/utils/index.cjs +123 -0
  18. package/build/codemods/src/v5/remove-overloads/utils/unknown-usage-error.cjs +27 -0
  19. package/build/codemods/src/v5/rename-hydrate/rename-hydrate.cjs +55 -0
  20. package/build/codemods/src/v5/rename-properties/rename-properties.cjs +41 -0
  21. package/build/legacy/HydrationBoundary.cjs +91 -0
  22. package/build/legacy/HydrationBoundary.cjs.map +1 -0
  23. package/build/legacy/HydrationBoundary.d.cts +2 -0
  24. package/build/legacy/HydrationBoundary.d.ts +2 -0
  25. package/build/legacy/HydrationBoundary.js +57 -0
  26. package/build/legacy/HydrationBoundary.js.map +1 -0
  27. package/build/legacy/IsRestoringProvider.cjs +47 -0
  28. package/build/legacy/IsRestoringProvider.cjs.map +1 -0
  29. package/build/legacy/IsRestoringProvider.d.cts +2 -0
  30. package/build/legacy/IsRestoringProvider.d.ts +2 -0
  31. package/build/legacy/IsRestoringProvider.js +12 -0
  32. package/build/legacy/IsRestoringProvider.js.map +1 -0
  33. package/build/legacy/QueryClientProvider.cjs +72 -0
  34. package/build/legacy/QueryClientProvider.cjs.map +1 -0
  35. package/build/legacy/QueryClientProvider.d.cts +4 -0
  36. package/build/legacy/QueryClientProvider.d.ts +4 -0
  37. package/build/legacy/QueryClientProvider.js +36 -0
  38. package/build/legacy/QueryClientProvider.js.map +1 -0
  39. package/build/legacy/QueryErrorResetBoundary.cjs +67 -0
  40. package/build/legacy/QueryErrorResetBoundary.cjs.map +1 -0
  41. package/build/legacy/QueryErrorResetBoundary.d.cts +8 -0
  42. package/build/legacy/QueryErrorResetBoundary.d.ts +8 -0
  43. package/build/legacy/QueryErrorResetBoundary.js +32 -0
  44. package/build/legacy/QueryErrorResetBoundary.js.map +1 -0
  45. package/build/legacy/_tsup-dts-rollup.d.cts +993 -0
  46. package/build/legacy/_tsup-dts-rollup.d.ts +993 -0
  47. package/build/legacy/errorBoundaryUtils.cjs +69 -0
  48. package/build/legacy/errorBoundaryUtils.cjs.map +1 -0
  49. package/build/legacy/errorBoundaryUtils.d.cts +3 -0
  50. package/build/legacy/errorBoundaryUtils.d.ts +3 -0
  51. package/build/legacy/errorBoundaryUtils.js +33 -0
  52. package/build/legacy/errorBoundaryUtils.js.map +1 -0
  53. package/build/legacy/index.cjs +97 -0
  54. package/build/legacy/index.cjs.map +1 -0
  55. package/build/legacy/index.d.cts +206 -0
  56. package/build/legacy/index.d.ts +206 -0
  57. package/build/legacy/index.js +54 -0
  58. package/build/legacy/index.js.map +1 -0
  59. package/build/legacy/infiniteQueryOptions.cjs +33 -0
  60. package/build/legacy/infiniteQueryOptions.cjs.map +1 -0
  61. package/build/legacy/infiniteQueryOptions.d.cts +4 -0
  62. package/build/legacy/infiniteQueryOptions.d.ts +4 -0
  63. package/build/legacy/infiniteQueryOptions.js +8 -0
  64. package/build/legacy/infiniteQueryOptions.js.map +1 -0
  65. package/build/legacy/mutationOptions.cjs +33 -0
  66. package/build/legacy/mutationOptions.cjs.map +1 -0
  67. package/build/legacy/mutationOptions.d.cts +1 -0
  68. package/build/legacy/mutationOptions.d.ts +1 -0
  69. package/build/legacy/mutationOptions.js +8 -0
  70. package/build/legacy/mutationOptions.js.map +1 -0
  71. package/build/legacy/queryOptions.cjs +33 -0
  72. package/build/legacy/queryOptions.cjs.map +1 -0
  73. package/build/legacy/queryOptions.d.cts +4 -0
  74. package/build/legacy/queryOptions.d.ts +4 -0
  75. package/build/legacy/queryOptions.js +8 -0
  76. package/build/legacy/queryOptions.js.map +1 -0
  77. package/build/legacy/suspense.cjs +58 -0
  78. package/build/legacy/suspense.cjs.map +1 -0
  79. package/build/legacy/suspense.d.cts +5 -0
  80. package/build/legacy/suspense.d.ts +5 -0
  81. package/build/legacy/suspense.js +29 -0
  82. package/build/legacy/suspense.js.map +1 -0
  83. package/build/legacy/types.cjs +19 -0
  84. package/build/legacy/types.cjs.map +1 -0
  85. package/build/legacy/types.d.cts +24 -0
  86. package/build/legacy/types.d.ts +24 -0
  87. package/build/legacy/types.js +1 -0
  88. package/build/legacy/types.js.map +1 -0
  89. package/build/legacy/useBaseQuery.cjs +133 -0
  90. package/build/legacy/useBaseQuery.cjs.map +1 -0
  91. package/build/legacy/useBaseQuery.d.cts +1 -0
  92. package/build/legacy/useBaseQuery.d.ts +1 -0
  93. package/build/legacy/useBaseQuery.js +108 -0
  94. package/build/legacy/useBaseQuery.js.map +1 -0
  95. package/build/legacy/useInfiniteQuery.cjs +40 -0
  96. package/build/legacy/useInfiniteQuery.cjs.map +1 -0
  97. package/build/legacy/useInfiniteQuery.d.cts +1 -0
  98. package/build/legacy/useInfiniteQuery.d.ts +1 -0
  99. package/build/legacy/useInfiniteQuery.js +16 -0
  100. package/build/legacy/useInfiniteQuery.js.map +1 -0
  101. package/build/legacy/useIsFetching.cjs +56 -0
  102. package/build/legacy/useIsFetching.cjs.map +1 -0
  103. package/build/legacy/useIsFetching.d.cts +1 -0
  104. package/build/legacy/useIsFetching.d.ts +1 -0
  105. package/build/legacy/useIsFetching.js +22 -0
  106. package/build/legacy/useIsFetching.js.map +1 -0
  107. package/build/legacy/useMutation.cjs +74 -0
  108. package/build/legacy/useMutation.cjs.map +1 -0
  109. package/build/legacy/useMutation.d.cts +1 -0
  110. package/build/legacy/useMutation.d.ts +1 -0
  111. package/build/legacy/useMutation.js +45 -0
  112. package/build/legacy/useMutation.js.map +1 -0
  113. package/build/legacy/useMutationState.cjs +86 -0
  114. package/build/legacy/useMutationState.cjs.map +1 -0
  115. package/build/legacy/useMutationState.d.cts +2 -0
  116. package/build/legacy/useMutationState.d.ts +2 -0
  117. package/build/legacy/useMutationState.js +51 -0
  118. package/build/legacy/useMutationState.js.map +1 -0
  119. package/build/legacy/usePrefetchInfiniteQuery.cjs +37 -0
  120. package/build/legacy/usePrefetchInfiniteQuery.cjs.map +1 -0
  121. package/build/legacy/usePrefetchInfiniteQuery.d.cts +1 -0
  122. package/build/legacy/usePrefetchInfiniteQuery.d.ts +1 -0
  123. package/build/legacy/usePrefetchInfiniteQuery.js +12 -0
  124. package/build/legacy/usePrefetchInfiniteQuery.js.map +1 -0
  125. package/build/legacy/usePrefetchQuery.cjs +37 -0
  126. package/build/legacy/usePrefetchQuery.cjs.map +1 -0
  127. package/build/legacy/usePrefetchQuery.d.cts +1 -0
  128. package/build/legacy/usePrefetchQuery.d.ts +1 -0
  129. package/build/legacy/usePrefetchQuery.js +12 -0
  130. package/build/legacy/usePrefetchQuery.js.map +1 -0
  131. package/build/legacy/useQueries.cjs +128 -0
  132. package/build/legacy/useQueries.cjs.map +1 -0
  133. package/build/legacy/useQueries.d.cts +3 -0
  134. package/build/legacy/useQueries.d.ts +3 -0
  135. package/build/legacy/useQueries.js +107 -0
  136. package/build/legacy/useQueries.js.map +1 -0
  137. package/build/legacy/useQuery.cjs +36 -0
  138. package/build/legacy/useQuery.cjs.map +1 -0
  139. package/build/legacy/useQuery.d.cts +1 -0
  140. package/build/legacy/useQuery.d.ts +1 -0
  141. package/build/legacy/useQuery.js +12 -0
  142. package/build/legacy/useQuery.js.map +1 -0
  143. package/build/legacy/useSuspenseInfiniteQuery.cjs +51 -0
  144. package/build/legacy/useSuspenseInfiniteQuery.cjs.map +1 -0
  145. package/build/legacy/useSuspenseInfiniteQuery.d.cts +1 -0
  146. package/build/legacy/useSuspenseInfiniteQuery.d.ts +1 -0
  147. package/build/legacy/useSuspenseInfiniteQuery.js +27 -0
  148. package/build/legacy/useSuspenseInfiniteQuery.js.map +1 -0
  149. package/build/legacy/useSuspenseQueries.cjs +56 -0
  150. package/build/legacy/useSuspenseQueries.cjs.map +1 -0
  151. package/build/legacy/useSuspenseQueries.d.cts +3 -0
  152. package/build/legacy/useSuspenseQueries.d.ts +3 -0
  153. package/build/legacy/useSuspenseQueries.js +32 -0
  154. package/build/legacy/useSuspenseQueries.js.map +1 -0
  155. package/build/legacy/useSuspenseQuery.cjs +52 -0
  156. package/build/legacy/useSuspenseQuery.cjs.map +1 -0
  157. package/build/legacy/useSuspenseQuery.d.cts +1 -0
  158. package/build/legacy/useSuspenseQuery.d.ts +1 -0
  159. package/build/legacy/useSuspenseQuery.js +28 -0
  160. package/build/legacy/useSuspenseQuery.js.map +1 -0
  161. package/build/modern/HydrationBoundary.cjs +91 -0
  162. package/build/modern/HydrationBoundary.cjs.map +1 -0
  163. package/build/modern/HydrationBoundary.d.cts +2 -0
  164. package/build/modern/HydrationBoundary.d.ts +2 -0
  165. package/build/modern/HydrationBoundary.js +57 -0
  166. package/build/modern/HydrationBoundary.js.map +1 -0
  167. package/build/modern/IsRestoringProvider.cjs +47 -0
  168. package/build/modern/IsRestoringProvider.cjs.map +1 -0
  169. package/build/modern/IsRestoringProvider.d.cts +2 -0
  170. package/build/modern/IsRestoringProvider.d.ts +2 -0
  171. package/build/modern/IsRestoringProvider.js +12 -0
  172. package/build/modern/IsRestoringProvider.js.map +1 -0
  173. package/build/modern/QueryClientProvider.cjs +72 -0
  174. package/build/modern/QueryClientProvider.cjs.map +1 -0
  175. package/build/modern/QueryClientProvider.d.cts +4 -0
  176. package/build/modern/QueryClientProvider.d.ts +4 -0
  177. package/build/modern/QueryClientProvider.js +36 -0
  178. package/build/modern/QueryClientProvider.js.map +1 -0
  179. package/build/modern/QueryErrorResetBoundary.cjs +67 -0
  180. package/build/modern/QueryErrorResetBoundary.cjs.map +1 -0
  181. package/build/modern/QueryErrorResetBoundary.d.cts +8 -0
  182. package/build/modern/QueryErrorResetBoundary.d.ts +8 -0
  183. package/build/modern/QueryErrorResetBoundary.js +32 -0
  184. package/build/modern/QueryErrorResetBoundary.js.map +1 -0
  185. package/build/modern/_tsup-dts-rollup.d.cts +993 -0
  186. package/build/modern/_tsup-dts-rollup.d.ts +993 -0
  187. package/build/modern/errorBoundaryUtils.cjs +69 -0
  188. package/build/modern/errorBoundaryUtils.cjs.map +1 -0
  189. package/build/modern/errorBoundaryUtils.d.cts +3 -0
  190. package/build/modern/errorBoundaryUtils.d.ts +3 -0
  191. package/build/modern/errorBoundaryUtils.js +33 -0
  192. package/build/modern/errorBoundaryUtils.js.map +1 -0
  193. package/build/modern/index.cjs +97 -0
  194. package/build/modern/index.cjs.map +1 -0
  195. package/build/modern/index.d.cts +206 -0
  196. package/build/modern/index.d.ts +206 -0
  197. package/build/modern/index.js +54 -0
  198. package/build/modern/index.js.map +1 -0
  199. package/build/modern/infiniteQueryOptions.cjs +33 -0
  200. package/build/modern/infiniteQueryOptions.cjs.map +1 -0
  201. package/build/modern/infiniteQueryOptions.d.cts +4 -0
  202. package/build/modern/infiniteQueryOptions.d.ts +4 -0
  203. package/build/modern/infiniteQueryOptions.js +8 -0
  204. package/build/modern/infiniteQueryOptions.js.map +1 -0
  205. package/build/modern/mutationOptions.cjs +33 -0
  206. package/build/modern/mutationOptions.cjs.map +1 -0
  207. package/build/modern/mutationOptions.d.cts +1 -0
  208. package/build/modern/mutationOptions.d.ts +1 -0
  209. package/build/modern/mutationOptions.js +8 -0
  210. package/build/modern/mutationOptions.js.map +1 -0
  211. package/build/modern/queryOptions.cjs +33 -0
  212. package/build/modern/queryOptions.cjs.map +1 -0
  213. package/build/modern/queryOptions.d.cts +4 -0
  214. package/build/modern/queryOptions.d.ts +4 -0
  215. package/build/modern/queryOptions.js +8 -0
  216. package/build/modern/queryOptions.js.map +1 -0
  217. package/build/modern/suspense.cjs +58 -0
  218. package/build/modern/suspense.cjs.map +1 -0
  219. package/build/modern/suspense.d.cts +5 -0
  220. package/build/modern/suspense.d.ts +5 -0
  221. package/build/modern/suspense.js +29 -0
  222. package/build/modern/suspense.js.map +1 -0
  223. package/build/modern/types.cjs +19 -0
  224. package/build/modern/types.cjs.map +1 -0
  225. package/build/modern/types.d.cts +24 -0
  226. package/build/modern/types.d.ts +24 -0
  227. package/build/modern/types.js +1 -0
  228. package/build/modern/types.js.map +1 -0
  229. package/build/modern/useBaseQuery.cjs +130 -0
  230. package/build/modern/useBaseQuery.cjs.map +1 -0
  231. package/build/modern/useBaseQuery.d.cts +1 -0
  232. package/build/modern/useBaseQuery.d.ts +1 -0
  233. package/build/modern/useBaseQuery.js +105 -0
  234. package/build/modern/useBaseQuery.js.map +1 -0
  235. package/build/modern/useInfiniteQuery.cjs +40 -0
  236. package/build/modern/useInfiniteQuery.cjs.map +1 -0
  237. package/build/modern/useInfiniteQuery.d.cts +1 -0
  238. package/build/modern/useInfiniteQuery.d.ts +1 -0
  239. package/build/modern/useInfiniteQuery.js +16 -0
  240. package/build/modern/useInfiniteQuery.js.map +1 -0
  241. package/build/modern/useIsFetching.cjs +56 -0
  242. package/build/modern/useIsFetching.cjs.map +1 -0
  243. package/build/modern/useIsFetching.d.cts +1 -0
  244. package/build/modern/useIsFetching.d.ts +1 -0
  245. package/build/modern/useIsFetching.js +22 -0
  246. package/build/modern/useIsFetching.js.map +1 -0
  247. package/build/modern/useMutation.cjs +74 -0
  248. package/build/modern/useMutation.cjs.map +1 -0
  249. package/build/modern/useMutation.d.cts +1 -0
  250. package/build/modern/useMutation.d.ts +1 -0
  251. package/build/modern/useMutation.js +45 -0
  252. package/build/modern/useMutation.js.map +1 -0
  253. package/build/modern/useMutationState.cjs +86 -0
  254. package/build/modern/useMutationState.cjs.map +1 -0
  255. package/build/modern/useMutationState.d.cts +2 -0
  256. package/build/modern/useMutationState.d.ts +2 -0
  257. package/build/modern/useMutationState.js +51 -0
  258. package/build/modern/useMutationState.js.map +1 -0
  259. package/build/modern/usePrefetchInfiniteQuery.cjs +37 -0
  260. package/build/modern/usePrefetchInfiniteQuery.cjs.map +1 -0
  261. package/build/modern/usePrefetchInfiniteQuery.d.cts +1 -0
  262. package/build/modern/usePrefetchInfiniteQuery.d.ts +1 -0
  263. package/build/modern/usePrefetchInfiniteQuery.js +12 -0
  264. package/build/modern/usePrefetchInfiniteQuery.js.map +1 -0
  265. package/build/modern/usePrefetchQuery.cjs +37 -0
  266. package/build/modern/usePrefetchQuery.cjs.map +1 -0
  267. package/build/modern/usePrefetchQuery.d.cts +1 -0
  268. package/build/modern/usePrefetchQuery.d.ts +1 -0
  269. package/build/modern/usePrefetchQuery.js +12 -0
  270. package/build/modern/usePrefetchQuery.js.map +1 -0
  271. package/build/modern/useQueries.cjs +128 -0
  272. package/build/modern/useQueries.cjs.map +1 -0
  273. package/build/modern/useQueries.d.cts +3 -0
  274. package/build/modern/useQueries.d.ts +3 -0
  275. package/build/modern/useQueries.js +107 -0
  276. package/build/modern/useQueries.js.map +1 -0
  277. package/build/modern/useQuery.cjs +36 -0
  278. package/build/modern/useQuery.cjs.map +1 -0
  279. package/build/modern/useQuery.d.cts +1 -0
  280. package/build/modern/useQuery.d.ts +1 -0
  281. package/build/modern/useQuery.js +12 -0
  282. package/build/modern/useQuery.js.map +1 -0
  283. package/build/modern/useSuspenseInfiniteQuery.cjs +51 -0
  284. package/build/modern/useSuspenseInfiniteQuery.cjs.map +1 -0
  285. package/build/modern/useSuspenseInfiniteQuery.d.cts +1 -0
  286. package/build/modern/useSuspenseInfiniteQuery.d.ts +1 -0
  287. package/build/modern/useSuspenseInfiniteQuery.js +27 -0
  288. package/build/modern/useSuspenseInfiniteQuery.js.map +1 -0
  289. package/build/modern/useSuspenseQueries.cjs +56 -0
  290. package/build/modern/useSuspenseQueries.cjs.map +1 -0
  291. package/build/modern/useSuspenseQueries.d.cts +3 -0
  292. package/build/modern/useSuspenseQueries.d.ts +3 -0
  293. package/build/modern/useSuspenseQueries.js +32 -0
  294. package/build/modern/useSuspenseQueries.js.map +1 -0
  295. package/build/modern/useSuspenseQuery.cjs +52 -0
  296. package/build/modern/useSuspenseQuery.cjs.map +1 -0
  297. package/build/modern/useSuspenseQuery.d.cts +1 -0
  298. package/build/modern/useSuspenseQuery.d.ts +1 -0
  299. package/build/modern/useSuspenseQuery.js +28 -0
  300. package/build/modern/useSuspenseQuery.js.map +1 -0
  301. package/build/query-codemods/eslint.config.js +18 -0
  302. package/build/query-codemods/package.json +38 -0
  303. package/build/query-codemods/root.eslint.config.js +64 -0
  304. package/build/query-codemods/tsconfig.json +8 -0
  305. package/build/query-codemods/vite.config.ts +30 -0
  306. package/changes.json +5 -0
  307. package/package.json +104 -0
  308. package/src/HydrationBoundary.tsx +111 -0
  309. package/src/IsRestoringProvider.ts +7 -0
  310. package/src/QueryClientProvider.tsx +45 -0
  311. package/src/QueryErrorResetBoundary.tsx +56 -0
  312. package/src/errorBoundaryUtils.ts +82 -0
  313. package/src/index.ts +56 -0
  314. package/src/infiniteQueryOptions.ts +149 -0
  315. package/src/mutationOptions.ts +41 -0
  316. package/src/queryOptions.ts +87 -0
  317. package/src/suspense.ts +80 -0
  318. package/src/types.ts +242 -0
  319. package/src/useBaseQuery.ts +170 -0
  320. package/src/useInfiniteQuery.ts +81 -0
  321. package/src/useIsFetching.ts +24 -0
  322. package/src/useMutation.ts +69 -0
  323. package/src/useMutationState.ts +75 -0
  324. package/src/usePrefetchInfiniteQuery.tsx +30 -0
  325. package/src/usePrefetchQuery.tsx +19 -0
  326. package/src/useQueries.ts +328 -0
  327. package/src/useQuery.ts +52 -0
  328. package/src/useSuspenseInfiniteQuery.ts +50 -0
  329. package/src/useSuspenseQueries.ts +211 -0
  330. package/src/useSuspenseQuery.ts +34 -0
package/package.json ADDED
@@ -0,0 +1,104 @@
1
+ {
2
+ "name": "@depup/tanstack__react-query",
3
+ "version": "5.91.0-depup.0",
4
+ "description": "Hooks for managing, caching and syncing asynchronous and remote data in React (with updated dependencies)",
5
+ "author": "tannerlinsley",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/TanStack/query.git",
10
+ "directory": "packages/react-query"
11
+ },
12
+ "homepage": "https://tanstack.com/query",
13
+ "funding": {
14
+ "type": "github",
15
+ "url": "https://github.com/sponsors/tannerlinsley"
16
+ },
17
+ "type": "module",
18
+ "types": "build/legacy/index.d.ts",
19
+ "main": "build/legacy/index.cjs",
20
+ "module": "build/legacy/index.js",
21
+ "react-native": "src/index.ts",
22
+ "exports": {
23
+ ".": {
24
+ "@tanstack/custom-condition": "./src/index.ts",
25
+ "import": {
26
+ "types": "./build/modern/index.d.ts",
27
+ "default": "./build/modern/index.js"
28
+ },
29
+ "require": {
30
+ "types": "./build/modern/index.d.cts",
31
+ "default": "./build/modern/index.cjs"
32
+ }
33
+ },
34
+ "./package.json": "./package.json"
35
+ },
36
+ "sideEffects": false,
37
+ "files": [
38
+ "build",
39
+ "src",
40
+ "!src/__tests__",
41
+ "!build/codemods/node_modules",
42
+ "!build/codemods/vite.config.ts",
43
+ "!build/codemods/**/__testfixtures__",
44
+ "!build/codemods/**/__tests__",
45
+ "changes.json",
46
+ "README.md"
47
+ ],
48
+ "dependencies": {
49
+ "@tanstack/query-core": "5.91.0"
50
+ },
51
+ "devDependencies": {
52
+ "@testing-library/react": "^16.1.0",
53
+ "@testing-library/react-render-stream": "^2.0.2",
54
+ "@types/react": "^19.2.7",
55
+ "@types/react-dom": "^19.2.3",
56
+ "@vitejs/plugin-react": "^4.3.4",
57
+ "cpy-cli": "^5.0.0",
58
+ "npm-run-all2": "^5.0.0",
59
+ "react": "^19.2.1",
60
+ "react-dom": "^19.2.1",
61
+ "react-error-boundary": "^4.1.2",
62
+ "@tanstack/query-persist-client-core": "5.92.2",
63
+ "@tanstack/query-test-utils": "0.0.0"
64
+ },
65
+ "peerDependencies": {
66
+ "react": "^18 || ^19"
67
+ },
68
+ "scripts": {
69
+ "clean": "premove ./build ./coverage ./dist-ts",
70
+ "compile": "tsc --build",
71
+ "test:eslint": "eslint --concurrency=auto ./src",
72
+ "test:types": "npm-run-all --serial test:types:*",
73
+ "test:types:ts54": "node ../../node_modules/typescript54/lib/tsc.js --build tsconfig.legacy.json",
74
+ "test:types:ts55": "node ../../node_modules/typescript55/lib/tsc.js --build tsconfig.legacy.json",
75
+ "test:types:ts56": "node ../../node_modules/typescript56/lib/tsc.js --build tsconfig.legacy.json",
76
+ "test:types:ts57": "node ../../node_modules/typescript57/lib/tsc.js --build tsconfig.legacy.json",
77
+ "test:types:ts58": "node ../../node_modules/typescript58/lib/tsc.js --build tsconfig.legacy.json",
78
+ "test:types:ts59": "node ../../node_modules/typescript59/lib/tsc.js --build tsconfig.legacy.json",
79
+ "test:types:tscurrent": "tsc --build",
80
+ "test:types:ts60": "node ../../node_modules/typescript60/lib/tsc.js --build",
81
+ "test:lib": "vitest",
82
+ "test:lib:dev": "pnpm run test:lib --watch",
83
+ "test:build": "publint --strict && attw --pack",
84
+ "build": "pnpm build:tsup && pnpm build:codemods",
85
+ "build:tsup": "tsup --tsconfig tsconfig.prod.json",
86
+ "build:codemods": "cpy ../query-codemods/* ./build/codemods"
87
+ },
88
+ "keywords": [
89
+ "@tanstack/react-query",
90
+ "depup",
91
+ "updated-dependencies",
92
+ "security",
93
+ "latest",
94
+ "patched"
95
+ ],
96
+ "depup": {
97
+ "changes": {},
98
+ "depsUpdated": 0,
99
+ "originalPackage": "@tanstack/react-query",
100
+ "originalVersion": "5.91.0",
101
+ "processedAt": "2026-03-18T16:34:20.152Z",
102
+ "smokeTest": "failed"
103
+ }
104
+ }
@@ -0,0 +1,111 @@
1
+ 'use client'
2
+ import * as React from 'react'
3
+
4
+ import { hydrate } from '@tanstack/query-core'
5
+ import { useQueryClient } from './QueryClientProvider'
6
+ import type {
7
+ DehydratedState,
8
+ HydrateOptions,
9
+ OmitKeyof,
10
+ QueryClient,
11
+ } from '@tanstack/query-core'
12
+
13
+ export interface HydrationBoundaryProps {
14
+ state: DehydratedState | null | undefined
15
+ options?: OmitKeyof<HydrateOptions, 'defaultOptions'> & {
16
+ defaultOptions?: OmitKeyof<
17
+ Exclude<HydrateOptions['defaultOptions'], undefined>,
18
+ 'mutations'
19
+ >
20
+ }
21
+ children?: React.ReactNode
22
+ queryClient?: QueryClient
23
+ }
24
+
25
+ export const HydrationBoundary = ({
26
+ children,
27
+ options = {},
28
+ state,
29
+ queryClient,
30
+ }: HydrationBoundaryProps) => {
31
+ const client = useQueryClient(queryClient)
32
+
33
+ const optionsRef = React.useRef(options)
34
+ React.useEffect(() => {
35
+ optionsRef.current = options
36
+ })
37
+
38
+ // This useMemo is for performance reasons only, everything inside it must
39
+ // be safe to run in every render and code here should be read as "in render".
40
+ //
41
+ // This code needs to happen during the render phase, because after initial
42
+ // SSR, hydration needs to happen _before_ children render. Also, if hydrating
43
+ // during a transition, we want to hydrate as much as is safe in render so
44
+ // we can prerender as much as possible.
45
+ //
46
+ // For any queries that already exist in the cache, we want to hold back on
47
+ // hydrating until _after_ the render phase. The reason for this is that during
48
+ // transitions, we don't want the existing queries and observers to update to
49
+ // the new data on the current page, only _after_ the transition is committed.
50
+ // If the transition is aborted, we will have hydrated any _new_ queries, but
51
+ // we throw away the fresh data for any existing ones to avoid unexpectedly
52
+ // updating the UI.
53
+ const hydrationQueue: DehydratedState['queries'] | undefined =
54
+ React.useMemo(() => {
55
+ if (state) {
56
+ if (typeof state !== 'object') {
57
+ return
58
+ }
59
+
60
+ const queryCache = client.getQueryCache()
61
+ // State is supplied from the outside and we might as well fail
62
+ // gracefully if it has the wrong shape, so while we type `queries`
63
+ // as required, we still provide a fallback.
64
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
65
+ const queries = state.queries || []
66
+
67
+ const newQueries: DehydratedState['queries'] = []
68
+ const existingQueries: DehydratedState['queries'] = []
69
+ for (const dehydratedQuery of queries) {
70
+ const existingQuery = queryCache.get(dehydratedQuery.queryHash)
71
+
72
+ if (!existingQuery) {
73
+ newQueries.push(dehydratedQuery)
74
+ } else {
75
+ const hydrationIsNewer =
76
+ dehydratedQuery.state.dataUpdatedAt >
77
+ existingQuery.state.dataUpdatedAt ||
78
+ (dehydratedQuery.promise &&
79
+ existingQuery.state.status !== 'pending' &&
80
+ existingQuery.state.fetchStatus !== 'fetching' &&
81
+ dehydratedQuery.dehydratedAt !== undefined &&
82
+ dehydratedQuery.dehydratedAt >
83
+ existingQuery.state.dataUpdatedAt)
84
+
85
+ if (hydrationIsNewer) {
86
+ existingQueries.push(dehydratedQuery)
87
+ }
88
+ }
89
+ }
90
+
91
+ if (newQueries.length > 0) {
92
+ // It's actually fine to call this with queries/state that already exists
93
+ // in the cache, or is older. hydrate() is idempotent for queries.
94
+ // eslint-disable-next-line react-hooks/refs
95
+ hydrate(client, { queries: newQueries }, optionsRef.current)
96
+ }
97
+ if (existingQueries.length > 0) {
98
+ return existingQueries
99
+ }
100
+ }
101
+ return undefined
102
+ }, [client, state])
103
+
104
+ React.useEffect(() => {
105
+ if (hydrationQueue) {
106
+ hydrate(client, { queries: hydrationQueue }, optionsRef.current)
107
+ }
108
+ }, [client, hydrationQueue])
109
+
110
+ return children as React.ReactElement
111
+ }
@@ -0,0 +1,7 @@
1
+ 'use client'
2
+ import * as React from 'react'
3
+
4
+ const IsRestoringContext = React.createContext(false)
5
+
6
+ export const useIsRestoring = () => React.useContext(IsRestoringContext)
7
+ export const IsRestoringProvider = IsRestoringContext.Provider
@@ -0,0 +1,45 @@
1
+ 'use client'
2
+ import * as React from 'react'
3
+
4
+ import type { QueryClient } from '@tanstack/query-core'
5
+
6
+ export const QueryClientContext = React.createContext<QueryClient | undefined>(
7
+ undefined,
8
+ )
9
+
10
+ export const useQueryClient = (queryClient?: QueryClient) => {
11
+ const client = React.useContext(QueryClientContext)
12
+
13
+ if (queryClient) {
14
+ return queryClient
15
+ }
16
+
17
+ if (!client) {
18
+ throw new Error('No QueryClient set, use QueryClientProvider to set one')
19
+ }
20
+
21
+ return client
22
+ }
23
+
24
+ export type QueryClientProviderProps = {
25
+ client: QueryClient
26
+ children?: React.ReactNode
27
+ }
28
+
29
+ export const QueryClientProvider = ({
30
+ client,
31
+ children,
32
+ }: QueryClientProviderProps): React.JSX.Element => {
33
+ React.useEffect(() => {
34
+ client.mount()
35
+ return () => {
36
+ client.unmount()
37
+ }
38
+ }, [client])
39
+
40
+ return (
41
+ <QueryClientContext.Provider value={client}>
42
+ {children}
43
+ </QueryClientContext.Provider>
44
+ )
45
+ }
@@ -0,0 +1,56 @@
1
+ 'use client'
2
+ import * as React from 'react'
3
+
4
+ // CONTEXT
5
+ export type QueryErrorResetFunction = () => void
6
+ export type QueryErrorIsResetFunction = () => boolean
7
+ export type QueryErrorClearResetFunction = () => void
8
+
9
+ export interface QueryErrorResetBoundaryValue {
10
+ clearReset: QueryErrorClearResetFunction
11
+ isReset: QueryErrorIsResetFunction
12
+ reset: QueryErrorResetFunction
13
+ }
14
+
15
+ function createValue(): QueryErrorResetBoundaryValue {
16
+ let isReset = false
17
+ return {
18
+ clearReset: () => {
19
+ isReset = false
20
+ },
21
+ reset: () => {
22
+ isReset = true
23
+ },
24
+ isReset: () => {
25
+ return isReset
26
+ },
27
+ }
28
+ }
29
+
30
+ const QueryErrorResetBoundaryContext = React.createContext(createValue())
31
+
32
+ // HOOK
33
+
34
+ export const useQueryErrorResetBoundary = () =>
35
+ React.useContext(QueryErrorResetBoundaryContext)
36
+
37
+ // COMPONENT
38
+
39
+ export type QueryErrorResetBoundaryFunction = (
40
+ value: QueryErrorResetBoundaryValue,
41
+ ) => React.ReactNode
42
+
43
+ export interface QueryErrorResetBoundaryProps {
44
+ children: QueryErrorResetBoundaryFunction | React.ReactNode
45
+ }
46
+
47
+ export const QueryErrorResetBoundary = ({
48
+ children,
49
+ }: QueryErrorResetBoundaryProps) => {
50
+ const [value] = React.useState(() => createValue())
51
+ return (
52
+ <QueryErrorResetBoundaryContext.Provider value={value}>
53
+ {typeof children === 'function' ? children(value) : children}
54
+ </QueryErrorResetBoundaryContext.Provider>
55
+ )
56
+ }
@@ -0,0 +1,82 @@
1
+ 'use client'
2
+ import * as React from 'react'
3
+ import { shouldThrowError } from '@tanstack/query-core'
4
+ import type {
5
+ DefaultedQueryObserverOptions,
6
+ Query,
7
+ QueryKey,
8
+ QueryObserverResult,
9
+ ThrowOnError,
10
+ } from '@tanstack/query-core'
11
+ import type { QueryErrorResetBoundaryValue } from './QueryErrorResetBoundary'
12
+
13
+ export const ensurePreventErrorBoundaryRetry = <
14
+ TQueryFnData,
15
+ TError,
16
+ TData,
17
+ TQueryData,
18
+ TQueryKey extends QueryKey,
19
+ >(
20
+ options: DefaultedQueryObserverOptions<
21
+ TQueryFnData,
22
+ TError,
23
+ TData,
24
+ TQueryData,
25
+ TQueryKey
26
+ >,
27
+ errorResetBoundary: QueryErrorResetBoundaryValue,
28
+ query: Query<TQueryFnData, TError, TQueryData, TQueryKey> | undefined,
29
+ ) => {
30
+ const throwOnError =
31
+ query?.state.error && typeof options.throwOnError === 'function'
32
+ ? shouldThrowError(options.throwOnError, [query.state.error, query])
33
+ : options.throwOnError
34
+
35
+ if (
36
+ options.suspense ||
37
+ options.experimental_prefetchInRender ||
38
+ throwOnError
39
+ ) {
40
+ // Prevent retrying failed query if the error boundary has not been reset yet
41
+ if (!errorResetBoundary.isReset()) {
42
+ options.retryOnMount = false
43
+ }
44
+ }
45
+ }
46
+
47
+ export const useClearResetErrorBoundary = (
48
+ errorResetBoundary: QueryErrorResetBoundaryValue,
49
+ ) => {
50
+ React.useEffect(() => {
51
+ errorResetBoundary.clearReset()
52
+ }, [errorResetBoundary])
53
+ }
54
+
55
+ export const getHasError = <
56
+ TData,
57
+ TError,
58
+ TQueryFnData,
59
+ TQueryData,
60
+ TQueryKey extends QueryKey,
61
+ >({
62
+ result,
63
+ errorResetBoundary,
64
+ throwOnError,
65
+ query,
66
+ suspense,
67
+ }: {
68
+ result: QueryObserverResult<TData, TError>
69
+ errorResetBoundary: QueryErrorResetBoundaryValue
70
+ throwOnError: ThrowOnError<TQueryFnData, TError, TQueryData, TQueryKey>
71
+ query: Query<TQueryFnData, TError, TQueryData, TQueryKey> | undefined
72
+ suspense: boolean | undefined
73
+ }) => {
74
+ return (
75
+ result.isError &&
76
+ !errorResetBoundary.isReset() &&
77
+ !result.isFetching &&
78
+ query &&
79
+ ((suspense && result.data === undefined) ||
80
+ shouldThrowError(throwOnError, [result.error, query]))
81
+ )
82
+ }
package/src/index.ts ADDED
@@ -0,0 +1,56 @@
1
+ /* istanbul ignore file */
2
+
3
+ // Re-export core
4
+ export * from '@tanstack/query-core'
5
+
6
+ // React Query
7
+ export * from './types'
8
+ export { useQueries } from './useQueries'
9
+ export type { QueriesResults, QueriesOptions } from './useQueries'
10
+ export { useQuery } from './useQuery'
11
+ export { useSuspenseQuery } from './useSuspenseQuery'
12
+ export { useSuspenseInfiniteQuery } from './useSuspenseInfiniteQuery'
13
+ export { useSuspenseQueries } from './useSuspenseQueries'
14
+ export type {
15
+ SuspenseQueriesResults,
16
+ SuspenseQueriesOptions,
17
+ } from './useSuspenseQueries'
18
+ export { usePrefetchQuery } from './usePrefetchQuery'
19
+ export { usePrefetchInfiniteQuery } from './usePrefetchInfiniteQuery'
20
+ export { queryOptions } from './queryOptions'
21
+ export type {
22
+ DefinedInitialDataOptions,
23
+ UndefinedInitialDataOptions,
24
+ UnusedSkipTokenOptions,
25
+ } from './queryOptions'
26
+ export { infiniteQueryOptions } from './infiniteQueryOptions'
27
+ export type {
28
+ DefinedInitialDataInfiniteOptions,
29
+ UndefinedInitialDataInfiniteOptions,
30
+ UnusedSkipTokenInfiniteOptions,
31
+ } from './infiniteQueryOptions'
32
+ export {
33
+ QueryClientContext,
34
+ QueryClientProvider,
35
+ useQueryClient,
36
+ } from './QueryClientProvider'
37
+ export type { QueryClientProviderProps } from './QueryClientProvider'
38
+ export type { QueryErrorResetBoundaryProps } from './QueryErrorResetBoundary'
39
+ export { HydrationBoundary } from './HydrationBoundary'
40
+ export type { HydrationBoundaryProps } from './HydrationBoundary'
41
+ export type {
42
+ QueryErrorClearResetFunction,
43
+ QueryErrorIsResetFunction,
44
+ QueryErrorResetBoundaryFunction,
45
+ QueryErrorResetFunction,
46
+ } from './QueryErrorResetBoundary'
47
+ export {
48
+ QueryErrorResetBoundary,
49
+ useQueryErrorResetBoundary,
50
+ } from './QueryErrorResetBoundary'
51
+ export { useIsFetching } from './useIsFetching'
52
+ export { useIsMutating, useMutationState } from './useMutationState'
53
+ export { useMutation } from './useMutation'
54
+ export { mutationOptions } from './mutationOptions'
55
+ export { useInfiniteQuery } from './useInfiniteQuery'
56
+ export { useIsRestoring, IsRestoringProvider } from './IsRestoringProvider'
@@ -0,0 +1,149 @@
1
+ import type {
2
+ DataTag,
3
+ DefaultError,
4
+ InfiniteData,
5
+ InitialDataFunction,
6
+ NonUndefinedGuard,
7
+ OmitKeyof,
8
+ QueryKey,
9
+ SkipToken,
10
+ } from '@tanstack/query-core'
11
+ import type { UseInfiniteQueryOptions } from './types'
12
+
13
+ export type UndefinedInitialDataInfiniteOptions<
14
+ TQueryFnData,
15
+ TError = DefaultError,
16
+ TData = InfiniteData<TQueryFnData>,
17
+ TQueryKey extends QueryKey = QueryKey,
18
+ TPageParam = unknown,
19
+ > = UseInfiniteQueryOptions<
20
+ TQueryFnData,
21
+ TError,
22
+ TData,
23
+ TQueryKey,
24
+ TPageParam
25
+ > & {
26
+ initialData?:
27
+ | undefined
28
+ | NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>
29
+ | InitialDataFunction<
30
+ NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>
31
+ >
32
+ }
33
+
34
+ export type UnusedSkipTokenInfiniteOptions<
35
+ TQueryFnData,
36
+ TError = DefaultError,
37
+ TData = InfiniteData<TQueryFnData>,
38
+ TQueryKey extends QueryKey = QueryKey,
39
+ TPageParam = unknown,
40
+ > = OmitKeyof<
41
+ UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey, TPageParam>,
42
+ 'queryFn'
43
+ > & {
44
+ queryFn?: Exclude<
45
+ UseInfiniteQueryOptions<
46
+ TQueryFnData,
47
+ TError,
48
+ TData,
49
+ TQueryKey,
50
+ TPageParam
51
+ >['queryFn'],
52
+ SkipToken | undefined
53
+ >
54
+ }
55
+
56
+ export type DefinedInitialDataInfiniteOptions<
57
+ TQueryFnData,
58
+ TError = DefaultError,
59
+ TData = InfiniteData<TQueryFnData>,
60
+ TQueryKey extends QueryKey = QueryKey,
61
+ TPageParam = unknown,
62
+ > = UseInfiniteQueryOptions<
63
+ TQueryFnData,
64
+ TError,
65
+ TData,
66
+ TQueryKey,
67
+ TPageParam
68
+ > & {
69
+ initialData:
70
+ | NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>
71
+ | (() => NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>)
72
+ | undefined
73
+ }
74
+
75
+ export function infiniteQueryOptions<
76
+ TQueryFnData,
77
+ TError = DefaultError,
78
+ TData = InfiniteData<TQueryFnData>,
79
+ TQueryKey extends QueryKey = QueryKey,
80
+ TPageParam = unknown,
81
+ >(
82
+ options: DefinedInitialDataInfiniteOptions<
83
+ TQueryFnData,
84
+ TError,
85
+ TData,
86
+ TQueryKey,
87
+ TPageParam
88
+ >,
89
+ ): DefinedInitialDataInfiniteOptions<
90
+ TQueryFnData,
91
+ TError,
92
+ TData,
93
+ TQueryKey,
94
+ TPageParam
95
+ > & {
96
+ queryKey: DataTag<TQueryKey, InfiniteData<TQueryFnData>, TError>
97
+ }
98
+
99
+ export function infiniteQueryOptions<
100
+ TQueryFnData,
101
+ TError = DefaultError,
102
+ TData = InfiniteData<TQueryFnData>,
103
+ TQueryKey extends QueryKey = QueryKey,
104
+ TPageParam = unknown,
105
+ >(
106
+ options: UnusedSkipTokenInfiniteOptions<
107
+ TQueryFnData,
108
+ TError,
109
+ TData,
110
+ TQueryKey,
111
+ TPageParam
112
+ >,
113
+ ): UnusedSkipTokenInfiniteOptions<
114
+ TQueryFnData,
115
+ TError,
116
+ TData,
117
+ TQueryKey,
118
+ TPageParam
119
+ > & {
120
+ queryKey: DataTag<TQueryKey, InfiniteData<TQueryFnData>, TError>
121
+ }
122
+
123
+ export function infiniteQueryOptions<
124
+ TQueryFnData,
125
+ TError = DefaultError,
126
+ TData = InfiniteData<TQueryFnData>,
127
+ TQueryKey extends QueryKey = QueryKey,
128
+ TPageParam = unknown,
129
+ >(
130
+ options: UndefinedInitialDataInfiniteOptions<
131
+ TQueryFnData,
132
+ TError,
133
+ TData,
134
+ TQueryKey,
135
+ TPageParam
136
+ >,
137
+ ): UndefinedInitialDataInfiniteOptions<
138
+ TQueryFnData,
139
+ TError,
140
+ TData,
141
+ TQueryKey,
142
+ TPageParam
143
+ > & {
144
+ queryKey: DataTag<TQueryKey, InfiniteData<TQueryFnData>, TError>
145
+ }
146
+
147
+ export function infiniteQueryOptions(options: unknown) {
148
+ return options
149
+ }
@@ -0,0 +1,41 @@
1
+ import type { DefaultError, WithRequired } from '@tanstack/query-core'
2
+ import type { UseMutationOptions } from './types'
3
+
4
+ export function mutationOptions<
5
+ TData = unknown,
6
+ TError = DefaultError,
7
+ TVariables = void,
8
+ TOnMutateResult = unknown,
9
+ >(
10
+ options: WithRequired<
11
+ UseMutationOptions<TData, TError, TVariables, TOnMutateResult>,
12
+ 'mutationKey'
13
+ >,
14
+ ): WithRequired<
15
+ UseMutationOptions<TData, TError, TVariables, TOnMutateResult>,
16
+ 'mutationKey'
17
+ >
18
+ export function mutationOptions<
19
+ TData = unknown,
20
+ TError = DefaultError,
21
+ TVariables = void,
22
+ TOnMutateResult = unknown,
23
+ >(
24
+ options: Omit<
25
+ UseMutationOptions<TData, TError, TVariables, TOnMutateResult>,
26
+ 'mutationKey'
27
+ >,
28
+ ): Omit<
29
+ UseMutationOptions<TData, TError, TVariables, TOnMutateResult>,
30
+ 'mutationKey'
31
+ >
32
+ export function mutationOptions<
33
+ TData = unknown,
34
+ TError = DefaultError,
35
+ TVariables = void,
36
+ TOnMutateResult = unknown,
37
+ >(
38
+ options: UseMutationOptions<TData, TError, TVariables, TOnMutateResult>,
39
+ ): UseMutationOptions<TData, TError, TVariables, TOnMutateResult> {
40
+ return options
41
+ }