@tanstack/vue-query 5.0.0-alpha.8 → 5.0.0-alpha.81

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 (271) hide show
  1. package/README.md +18 -14
  2. package/build/lib/__mocks__/useBaseQuery.d.ts +1 -0
  3. package/build/lib/__mocks__/useBaseQuery.d.ts.map +1 -0
  4. package/build/lib/__mocks__/useQueryClient.d.ts +1 -0
  5. package/build/lib/__mocks__/useQueryClient.d.ts.map +1 -0
  6. package/build/lib/__tests__/mutationCache.test.d.ts +1 -0
  7. package/build/lib/__tests__/mutationCache.test.d.ts.map +1 -0
  8. package/build/lib/__tests__/queryCache.test.d.ts +1 -0
  9. package/build/lib/__tests__/queryCache.test.d.ts.map +1 -0
  10. package/build/lib/__tests__/queryClient.test.d.ts +1 -0
  11. package/build/lib/__tests__/queryClient.test.d.ts.map +1 -0
  12. package/build/lib/__tests__/test-utils.d.ts +3 -2
  13. package/build/lib/__tests__/test-utils.d.ts.map +1 -0
  14. package/build/lib/__tests__/useInfiniteQuery.test.d.ts +1 -0
  15. package/build/lib/__tests__/useInfiniteQuery.test.d.ts.map +1 -0
  16. package/build/lib/__tests__/useInfiniteQuery.types.test.d.ts +1 -0
  17. package/build/lib/__tests__/useInfiniteQuery.types.test.d.ts.map +1 -0
  18. package/build/lib/__tests__/useIsFetching.test.d.ts +1 -0
  19. package/build/lib/__tests__/useIsFetching.test.d.ts.map +1 -0
  20. package/build/lib/__tests__/useIsMutating.test.d.ts +1 -0
  21. package/build/lib/__tests__/useIsMutating.test.d.ts.map +1 -0
  22. package/build/lib/__tests__/useMutation.test.d.ts +1 -0
  23. package/build/lib/__tests__/useMutation.test.d.ts.map +1 -0
  24. package/build/lib/__tests__/useMutation.types.test.d.ts +1 -0
  25. package/build/lib/__tests__/useMutation.types.test.d.ts.map +1 -0
  26. package/build/lib/__tests__/useQueries.test.d.ts +1 -0
  27. package/build/lib/__tests__/useQueries.test.d.ts.map +1 -0
  28. package/build/lib/__tests__/useQuery.test.d.ts +1 -0
  29. package/build/lib/__tests__/useQuery.test.d.ts.map +1 -0
  30. package/build/lib/__tests__/useQuery.types.test.d.ts +1 -0
  31. package/build/lib/__tests__/useQuery.types.test.d.ts.map +1 -0
  32. package/build/lib/__tests__/useQueryClient.test.d.ts +1 -0
  33. package/build/lib/__tests__/useQueryClient.test.d.ts.map +1 -0
  34. package/build/lib/__tests__/utils.test.d.ts +1 -0
  35. package/build/lib/__tests__/utils.test.d.ts.map +1 -0
  36. package/build/lib/__tests__/vueQueryPlugin.test.d.ts +1 -0
  37. package/build/lib/__tests__/vueQueryPlugin.test.d.ts.map +1 -0
  38. package/build/lib/devtools/{devtools.mjs → devtools.cjs} +21 -18
  39. package/build/lib/devtools/devtools.cjs.map +1 -0
  40. package/build/lib/devtools/devtools.d.ts +1 -0
  41. package/build/lib/devtools/devtools.d.ts.map +1 -0
  42. package/build/lib/devtools/devtools.js +20 -23
  43. package/build/lib/devtools/devtools.js.map +1 -1
  44. package/build/lib/devtools/devtools.legacy.cjs +199 -0
  45. package/build/lib/devtools/devtools.legacy.cjs.map +1 -0
  46. package/build/lib/devtools/{devtools.esm.js → devtools.legacy.js} +4 -3
  47. package/build/lib/devtools/devtools.legacy.js.map +1 -0
  48. package/build/lib/devtools/{utils.mjs → utils.cjs} +11 -5
  49. package/build/lib/devtools/{utils.mjs.map → utils.cjs.map} +1 -1
  50. package/build/lib/devtools/utils.d.ts +2 -1
  51. package/build/lib/devtools/utils.d.ts.map +1 -0
  52. package/build/lib/devtools/utils.js +4 -10
  53. package/build/lib/devtools/utils.js.map +1 -1
  54. package/build/lib/devtools/utils.legacy.cjs +85 -0
  55. package/build/lib/devtools/utils.legacy.cjs.map +1 -0
  56. package/build/lib/devtools/{utils.esm.js → utils.legacy.js} +4 -4
  57. package/build/lib/devtools/utils.legacy.js.map +1 -0
  58. package/build/lib/index.cjs +38 -0
  59. package/build/lib/index.cjs.map +1 -0
  60. package/build/lib/index.d.ts +1 -0
  61. package/build/lib/index.d.ts.map +1 -0
  62. package/build/lib/index.js +13 -37
  63. package/build/lib/index.js.map +1 -1
  64. package/build/lib/index.legacy.cjs +38 -0
  65. package/build/lib/index.legacy.cjs.map +1 -0
  66. package/build/lib/index.legacy.js +14 -0
  67. package/build/lib/index.legacy.js.map +1 -0
  68. package/build/lib/mutationCache.cjs +16 -0
  69. package/build/lib/{mutationCache.mjs.map → mutationCache.cjs.map} +1 -1
  70. package/build/lib/mutationCache.d.ts +1 -0
  71. package/build/lib/mutationCache.d.ts.map +1 -0
  72. package/build/lib/mutationCache.js +6 -8
  73. package/build/lib/mutationCache.js.map +1 -1
  74. package/build/lib/mutationCache.legacy.cjs +16 -0
  75. package/build/lib/mutationCache.legacy.cjs.map +1 -0
  76. package/build/lib/{mutationCache.esm.js → mutationCache.legacy.js} +2 -2
  77. package/build/lib/mutationCache.legacy.js.map +1 -0
  78. package/build/lib/queryCache.cjs +16 -0
  79. package/build/lib/{queryCache.mjs.map → queryCache.cjs.map} +1 -1
  80. package/build/lib/queryCache.d.ts +1 -0
  81. package/build/lib/queryCache.d.ts.map +1 -0
  82. package/build/lib/queryCache.js +6 -8
  83. package/build/lib/queryCache.js.map +1 -1
  84. package/build/lib/queryCache.legacy.cjs +16 -0
  85. package/build/lib/queryCache.legacy.cjs.map +1 -0
  86. package/build/lib/{queryCache.esm.js → queryCache.legacy.js} +2 -2
  87. package/build/lib/queryCache.legacy.js.map +1 -0
  88. package/build/lib/queryClient.cjs +86 -0
  89. package/build/lib/{queryClient.mjs.map → queryClient.cjs.map} +1 -1
  90. package/build/lib/queryClient.d.ts +1 -0
  91. package/build/lib/queryClient.d.ts.map +1 -0
  92. package/build/lib/queryClient.js +32 -34
  93. package/build/lib/queryClient.js.map +1 -1
  94. package/build/lib/queryClient.legacy.cjs +86 -0
  95. package/build/lib/queryClient.legacy.cjs.map +1 -0
  96. package/build/lib/{queryClient.esm.js → queryClient.legacy.js} +4 -4
  97. package/build/lib/queryClient.legacy.js.map +1 -0
  98. package/build/lib/types.d.ts +4 -3
  99. package/build/lib/types.d.ts.map +1 -0
  100. package/build/lib/{useBaseQuery.esm.js → useBaseQuery.cjs} +23 -21
  101. package/build/lib/useBaseQuery.cjs.map +1 -0
  102. package/build/lib/useBaseQuery.d.ts +3 -2
  103. package/build/lib/useBaseQuery.d.ts.map +1 -0
  104. package/build/lib/useBaseQuery.js +20 -22
  105. package/build/lib/useBaseQuery.js.map +1 -1
  106. package/build/lib/useBaseQuery.legacy.cjs +69 -0
  107. package/build/lib/useBaseQuery.legacy.cjs.map +1 -0
  108. package/build/lib/{useBaseQuery.mjs → useBaseQuery.legacy.js} +9 -9
  109. package/build/lib/useBaseQuery.legacy.js.map +1 -0
  110. package/build/lib/{useInfiniteQuery.mjs → useInfiniteQuery.cjs} +8 -6
  111. package/build/lib/{useInfiniteQuery.mjs.map → useInfiniteQuery.cjs.map} +1 -1
  112. package/build/lib/useInfiniteQuery.d.ts +4 -3
  113. package/build/lib/useInfiniteQuery.d.ts.map +1 -0
  114. package/build/lib/useInfiniteQuery.js +5 -7
  115. package/build/lib/useInfiniteQuery.js.map +1 -1
  116. package/build/lib/useInfiniteQuery.legacy.cjs +20 -0
  117. package/build/lib/useInfiniteQuery.legacy.cjs.map +1 -0
  118. package/build/lib/{useInfiniteQuery.esm.js → useInfiniteQuery.legacy.js} +2 -2
  119. package/build/lib/useInfiniteQuery.legacy.js.map +1 -0
  120. package/build/lib/useIsFetching.cjs +26 -0
  121. package/build/lib/{useIsFetching.mjs.map → useIsFetching.cjs.map} +1 -1
  122. package/build/lib/useIsFetching.d.ts +2 -1
  123. package/build/lib/useIsFetching.d.ts.map +1 -0
  124. package/build/lib/useIsFetching.js +9 -11
  125. package/build/lib/useIsFetching.js.map +1 -1
  126. package/build/lib/useIsFetching.legacy.cjs +26 -0
  127. package/build/lib/useIsFetching.legacy.cjs.map +1 -0
  128. package/build/lib/{useIsFetching.mjs → useIsFetching.legacy.js} +3 -3
  129. package/build/lib/useIsFetching.legacy.js.map +1 -0
  130. package/build/lib/useMutation.cjs +41 -0
  131. package/build/lib/{useMutation.mjs.map → useMutation.cjs.map} +1 -1
  132. package/build/lib/useMutation.d.ts +5 -4
  133. package/build/lib/useMutation.d.ts.map +1 -0
  134. package/build/lib/useMutation.js +14 -16
  135. package/build/lib/useMutation.js.map +1 -1
  136. package/build/lib/useMutation.legacy.cjs +41 -0
  137. package/build/lib/useMutation.legacy.cjs.map +1 -0
  138. package/build/lib/{useMutation.esm.js → useMutation.legacy.js} +3 -3
  139. package/build/lib/useMutation.legacy.js.map +1 -0
  140. package/build/lib/useMutationState.cjs +43 -0
  141. package/build/lib/useMutationState.cjs.map +1 -0
  142. package/build/lib/useMutationState.d.ts +5 -4
  143. package/build/lib/useMutationState.d.ts.map +1 -0
  144. package/build/lib/useMutationState.js +20 -16
  145. package/build/lib/useMutationState.js.map +1 -1
  146. package/build/lib/useMutationState.legacy.cjs +43 -0
  147. package/build/lib/useMutationState.legacy.cjs.map +1 -0
  148. package/build/lib/{useMutationState.esm.js → useMutationState.legacy.js} +13 -6
  149. package/build/lib/useMutationState.legacy.js.map +1 -0
  150. package/build/lib/useQueries.cjs +63 -0
  151. package/build/lib/useQueries.cjs.map +1 -0
  152. package/build/lib/useQueries.d.ts +12 -11
  153. package/build/lib/useQueries.d.ts.map +1 -0
  154. package/build/lib/useQueries.js +39 -26
  155. package/build/lib/useQueries.js.map +1 -1
  156. package/build/lib/useQueries.legacy.cjs +63 -0
  157. package/build/lib/useQueries.legacy.cjs.map +1 -0
  158. package/build/lib/useQueries.legacy.js +61 -0
  159. package/build/lib/useQueries.legacy.js.map +1 -0
  160. package/build/lib/useQuery.cjs +15 -0
  161. package/build/lib/{useQuery.mjs.map → useQuery.cjs.map} +1 -1
  162. package/build/lib/useQuery.d.ts +4 -3
  163. package/build/lib/useQuery.d.ts.map +1 -0
  164. package/build/lib/useQuery.js +4 -6
  165. package/build/lib/useQuery.js.map +1 -1
  166. package/build/lib/useQuery.legacy.cjs +15 -0
  167. package/build/lib/useQuery.legacy.cjs.map +1 -0
  168. package/build/lib/{useQuery.esm.js → useQuery.legacy.js} +2 -2
  169. package/build/lib/useQuery.legacy.js.map +1 -0
  170. package/build/lib/{useQueryClient.mjs → useQueryClient.cjs} +9 -7
  171. package/build/lib/{useQueryClient.mjs.map → useQueryClient.cjs.map} +1 -1
  172. package/build/lib/useQueryClient.d.ts +1 -0
  173. package/build/lib/useQueryClient.d.ts.map +1 -0
  174. package/build/lib/useQueryClient.js +6 -9
  175. package/build/lib/useQueryClient.js.map +1 -1
  176. package/build/lib/useQueryClient.legacy.cjs +21 -0
  177. package/build/lib/useQueryClient.legacy.cjs.map +1 -0
  178. package/build/lib/{useQueryClient.esm.js → useQueryClient.legacy.js} +2 -2
  179. package/build/lib/useQueryClient.legacy.js.map +1 -0
  180. package/build/lib/{utils.mjs → utils.cjs} +12 -6
  181. package/build/lib/{utils.mjs.map → utils.cjs.map} +1 -1
  182. package/build/lib/utils.d.ts +1 -0
  183. package/build/lib/utils.d.ts.map +1 -0
  184. package/build/lib/utils.js +5 -11
  185. package/build/lib/utils.js.map +1 -1
  186. package/build/lib/utils.legacy.cjs +56 -0
  187. package/build/lib/utils.legacy.cjs.map +1 -0
  188. package/build/lib/{utils.esm.js → utils.legacy.js} +1 -1
  189. package/build/lib/utils.legacy.js.map +1 -0
  190. package/build/lib/{vueQueryPlugin.esm.js → vueQueryPlugin.cjs} +15 -13
  191. package/build/lib/{vueQueryPlugin.mjs.map → vueQueryPlugin.cjs.map} +1 -1
  192. package/build/lib/vueQueryPlugin.d.ts +3 -2
  193. package/build/lib/vueQueryPlugin.d.ts.map +1 -0
  194. package/build/lib/vueQueryPlugin.js +12 -14
  195. package/build/lib/vueQueryPlugin.js.map +1 -1
  196. package/build/lib/vueQueryPlugin.legacy.cjs +75 -0
  197. package/build/lib/vueQueryPlugin.legacy.cjs.map +1 -0
  198. package/build/lib/{vueQueryPlugin.mjs → vueQueryPlugin.legacy.js} +4 -4
  199. package/build/lib/vueQueryPlugin.legacy.js.map +1 -0
  200. package/package.json +29 -15
  201. package/src/__mocks__/useBaseQuery.ts +8 -0
  202. package/src/__mocks__/useQueryClient.ts +10 -0
  203. package/src/__tests__/mutationCache.test.ts +40 -0
  204. package/src/__tests__/queryCache.test.ts +48 -0
  205. package/src/__tests__/queryClient.test.ts +365 -0
  206. package/src/__tests__/test-utils.ts +62 -0
  207. package/src/__tests__/useInfiniteQuery.test.ts +37 -0
  208. package/src/__tests__/useInfiniteQuery.types.test.tsx +102 -0
  209. package/src/__tests__/useIsFetching.test.ts +77 -0
  210. package/src/__tests__/useIsMutating.test.ts +123 -0
  211. package/src/__tests__/useMutation.test.ts +335 -0
  212. package/src/__tests__/useMutation.types.test.tsx +97 -0
  213. package/src/__tests__/useQueries.test.ts +256 -0
  214. package/src/__tests__/useQuery.test.ts +290 -0
  215. package/src/__tests__/useQuery.types.test.tsx +88 -0
  216. package/src/__tests__/useQueryClient.test.ts +51 -0
  217. package/src/__tests__/utils.test.ts +148 -0
  218. package/src/__tests__/vueQueryPlugin.test.ts +367 -0
  219. package/src/devtools/devtools.ts +255 -0
  220. package/src/devtools/utils.ts +96 -0
  221. package/src/index.ts +30 -0
  222. package/src/mutationCache.ts +25 -0
  223. package/src/queryCache.ts +21 -0
  224. package/src/queryClient.ts +278 -0
  225. package/src/types.ts +17 -0
  226. package/src/useBaseQuery.ts +151 -0
  227. package/src/useInfiniteQuery.ts +105 -0
  228. package/src/useIsFetching.ts +37 -0
  229. package/src/useMutation.ts +109 -0
  230. package/src/useMutationState.ts +81 -0
  231. package/src/useQueries.ts +230 -0
  232. package/src/useQuery.ts +125 -0
  233. package/src/useQueryClient.ts +23 -0
  234. package/src/utils.ts +67 -0
  235. package/src/vueQueryPlugin.ts +101 -0
  236. package/build/lib/devtools/devtools.esm.js.map +0 -1
  237. package/build/lib/devtools/devtools.mjs.map +0 -1
  238. package/build/lib/devtools/utils.esm.js.map +0 -1
  239. package/build/lib/index.esm.js +0 -14
  240. package/build/lib/index.esm.js.map +0 -1
  241. package/build/lib/index.mjs +0 -14
  242. package/build/lib/index.mjs.map +0 -1
  243. package/build/lib/mutationCache.esm.js.map +0 -1
  244. package/build/lib/mutationCache.mjs +0 -14
  245. package/build/lib/queryCache.esm.js.map +0 -1
  246. package/build/lib/queryCache.mjs +0 -14
  247. package/build/lib/queryClient.esm.js.map +0 -1
  248. package/build/lib/queryClient.mjs +0 -84
  249. package/build/lib/useBaseQuery.esm.js.map +0 -1
  250. package/build/lib/useBaseQuery.mjs.map +0 -1
  251. package/build/lib/useInfiniteQuery.esm.js.map +0 -1
  252. package/build/lib/useIsFetching.esm.js +0 -24
  253. package/build/lib/useIsFetching.esm.js.map +0 -1
  254. package/build/lib/useMutation.esm.js.map +0 -1
  255. package/build/lib/useMutation.mjs +0 -39
  256. package/build/lib/useMutationState.esm.js.map +0 -1
  257. package/build/lib/useMutationState.mjs +0 -33
  258. package/build/lib/useMutationState.mjs.map +0 -1
  259. package/build/lib/useQueries.esm.js +0 -46
  260. package/build/lib/useQueries.esm.js.map +0 -1
  261. package/build/lib/useQueries.mjs +0 -46
  262. package/build/lib/useQueries.mjs.map +0 -1
  263. package/build/lib/useQuery.esm.js.map +0 -1
  264. package/build/lib/useQuery.mjs +0 -13
  265. package/build/lib/useQueryClient.esm.js.map +0 -1
  266. package/build/lib/utils.esm.js.map +0 -1
  267. package/build/lib/vueQueryPlugin.esm.js.map +0 -1
  268. package/build/umd/index.development.js +0 -4238
  269. package/build/umd/index.development.js.map +0 -1
  270. package/build/umd/index.production.js +0 -2
  271. package/build/umd/index.production.js.map +0 -1
@@ -1,34 +1,32 @@
1
- 'use strict';
2
-
3
- var vueDemi = require('vue-demi');
4
- var queryCore = require('@tanstack/query-core');
5
- var utils = require('./utils.js');
6
- var useQueryClient = require('./useQueryClient.js');
1
+ import { computed, reactive, watch, onScopeDispose, toRefs, readonly } from 'vue-demi';
2
+ import { MutationObserver } from '@tanstack/query-core';
3
+ import { cloneDeepUnref, updateState } from './utils.js';
4
+ import { useQueryClient } from './useQueryClient.js';
7
5
 
8
6
  function useMutation(mutationOptions, queryClient) {
9
- const client = queryClient || useQueryClient.useQueryClient();
10
- const options = vueDemi.computed(() => {
11
- return client.defaultMutationOptions(utils.cloneDeepUnref(mutationOptions));
7
+ const client = queryClient || useQueryClient();
8
+ const options = computed(() => {
9
+ return client.defaultMutationOptions(cloneDeepUnref(mutationOptions));
12
10
  });
13
- const observer = new queryCore.MutationObserver(client, options.value);
14
- const state = vueDemi.reactive(observer.getCurrentResult());
11
+ const observer = new MutationObserver(client, options.value);
12
+ const state = reactive(observer.getCurrentResult());
15
13
  const unsubscribe = observer.subscribe(result => {
16
- utils.updateState(state, result);
14
+ updateState(state, result);
17
15
  });
18
16
  const mutate = (variables, mutateOptions) => {
19
17
  observer.mutate(variables, mutateOptions).catch(() => {
20
18
  // This is intentional
21
19
  });
22
20
  };
23
- vueDemi.watch(options, () => {
21
+ watch(options, () => {
24
22
  observer.setOptions(options.value);
25
23
  }, {
26
24
  deep: true
27
25
  });
28
- vueDemi.onScopeDispose(() => {
26
+ onScopeDispose(() => {
29
27
  unsubscribe();
30
28
  });
31
- const resultRefs = vueDemi.toRefs(vueDemi.readonly(state));
29
+ const resultRefs = toRefs(readonly(state));
32
30
  return {
33
31
  ...resultRefs,
34
32
  mutate,
@@ -37,5 +35,5 @@ function useMutation(mutationOptions, queryClient) {
37
35
  };
38
36
  }
39
37
 
40
- exports.useMutation = useMutation;
38
+ export { useMutation };
41
39
  //# sourceMappingURL=useMutation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMutation.js","sources":["../../src/useMutation.ts"],"sourcesContent":["import {\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n watch,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n MutateOptions,\n MutateFunction,\n MutationObserverResult,\n MutationObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep, DistributiveOmit } from './types'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { cloneDeepUnref, updateState } from './utils'\nimport { useQueryClient } from './useQueryClient'\nimport type { QueryClient } from './queryClient'\n\ntype MutationResult<TData, TError, TVariables, TContext> = DistributiveOmit<\n MutationObserverResult<TData, TError, TVariables, TContext>,\n 'mutate' | 'reset'\n>\n\nexport type UseMutationOptions<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = MaybeRefDeep<MutationObserverOptions<TData, TError, TVariables, TContext>>\n\ntype MutateSyncFunction<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = (\n ...options: Parameters<MutateFunction<TData, TError, TVariables, TContext>>\n) => void\n\nexport type UseMutationReturnType<\n TData,\n TError,\n TVariables,\n TContext,\n Result = MutationResult<TData, TError, TVariables, TContext>,\n> = ToRefs<Readonly<Result>> & {\n mutate: MutateSyncFunction<TData, TError, TVariables, TContext>\n mutateAsync: MutateFunction<TData, TError, TVariables, TContext>\n reset: MutationObserverResult<TData, TError, TVariables, TContext>['reset']\n}\n\nexport function useMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n mutationOptions: MaybeRefDeep<\n MutationObserverOptions<TData, TError, TVariables, TContext>\n >,\n queryClient?: QueryClient,\n): UseMutationReturnType<TData, TError, TVariables, TContext> {\n const client = queryClient || useQueryClient()\n const options = computed(() => {\n return client.defaultMutationOptions(cloneDeepUnref(mutationOptions))\n })\n const observer = new MutationObserver(client, options.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = observer.subscribe((result) => {\n updateState(state, result)\n })\n\n const mutate = (\n variables: TVariables,\n mutateOptions?: MutateOptions<TData, TError, TVariables, TContext>,\n ) => {\n observer.mutate(variables, mutateOptions).catch(() => {\n // This is intentional\n })\n }\n\n watch(\n options,\n () => {\n observer.setOptions(options.value)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const resultRefs = toRefs(readonly(state)) as unknown as ToRefs<\n Readonly<MutationResult<TData, TError, TVariables, TContext>>\n >\n\n return {\n ...resultRefs,\n mutate,\n mutateAsync: state.mutate,\n reset: state.reset,\n }\n}\n"],"names":["useMutation","mutationOptions","queryClient","client","useQueryClient","options","computed","defaultMutationOptions","cloneDeepUnref","observer","MutationObserver","value","state","reactive","getCurrentResult","unsubscribe","subscribe","result","updateState","mutate","variables","mutateOptions","catch","watch","setOptions","deep","onScopeDispose","resultRefs","toRefs","readonly","mutateAsync","reset"],"mappings":";;;;;;;AAuDO,SAASA,WAAW,CAMzBC,eAEC,EACDC,WAAyB,EACmC;AAC5D,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,6BAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,OAAO,GAAGC,gBAAQ,CAAC,MAAM;IAC7B,OAAOH,MAAM,CAACI,sBAAsB,CAACC,oBAAc,CAACP,eAAe,CAAC,CAAC,CAAA;AACvE,GAAC,CAAC,CAAA;EACF,MAAMQ,QAAQ,GAAG,IAAIC,0BAAgB,CAACP,MAAM,EAAEE,OAAO,CAACM,KAAK,CAAC,CAAA;EAC5D,MAAMC,KAAK,GAAGC,gBAAQ,CAACJ,QAAQ,CAACK,gBAAgB,EAAE,CAAC,CAAA;AAEnD,EAAA,MAAMC,WAAW,GAAGN,QAAQ,CAACO,SAAS,CAAEC,MAAM,IAAK;AACjDC,IAAAA,iBAAW,CAACN,KAAK,EAAEK,MAAM,CAAC,CAAA;AAC5B,GAAC,CAAC,CAAA;AAEF,EAAA,MAAME,MAAM,GAAG,CACbC,SAAqB,EACrBC,aAAkE,KAC/D;IACHZ,QAAQ,CAACU,MAAM,CAACC,SAAS,EAAEC,aAAa,CAAC,CAACC,KAAK,CAAC,MAAM;AACpD;AAAA,KACD,CAAC,CAAA;GACH,CAAA;EAEDC,aAAK,CACHlB,OAAO,EACP,MAAM;AACJI,IAAAA,QAAQ,CAACe,UAAU,CAACnB,OAAO,CAACM,KAAK,CAAC,CAAA;AACpC,GAAC,EACD;AAAEc,IAAAA,IAAI,EAAE,IAAA;AAAK,GAAC,CACf,CAAA;AAEDC,EAAAA,sBAAc,CAAC,MAAM;AACnBX,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,MAAMY,UAAU,GAAGC,cAAM,CAACC,gBAAQ,CAACjB,KAAK,CAAC,CAExC,CAAA;EAED,OAAO;AACL,IAAA,GAAGe,UAAU;IACbR,MAAM;IACNW,WAAW,EAAElB,KAAK,CAACO,MAAM;IACzBY,KAAK,EAAEnB,KAAK,CAACmB,KAAAA;GACd,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"useMutation.js","sources":["../../src/useMutation.ts"],"sourcesContent":["import {\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n watch,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n MutateOptions,\n MutateFunction,\n MutationObserverResult,\n MutationObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep, DistributiveOmit } from './types'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { cloneDeepUnref, updateState } from './utils'\nimport { useQueryClient } from './useQueryClient'\nimport type { QueryClient } from './queryClient'\n\ntype MutationResult<TData, TError, TVariables, TContext> = DistributiveOmit<\n MutationObserverResult<TData, TError, TVariables, TContext>,\n 'mutate' | 'reset'\n>\n\nexport type UseMutationOptions<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = MaybeRefDeep<MutationObserverOptions<TData, TError, TVariables, TContext>>\n\ntype MutateSyncFunction<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = (\n ...options: Parameters<MutateFunction<TData, TError, TVariables, TContext>>\n) => void\n\nexport type UseMutationReturnType<\n TData,\n TError,\n TVariables,\n TContext,\n Result = MutationResult<TData, TError, TVariables, TContext>,\n> = ToRefs<Readonly<Result>> & {\n mutate: MutateSyncFunction<TData, TError, TVariables, TContext>\n mutateAsync: MutateFunction<TData, TError, TVariables, TContext>\n reset: MutationObserverResult<TData, TError, TVariables, TContext>['reset']\n}\n\nexport function useMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n mutationOptions: MaybeRefDeep<\n MutationObserverOptions<TData, TError, TVariables, TContext>\n >,\n queryClient?: QueryClient,\n): UseMutationReturnType<TData, TError, TVariables, TContext> {\n const client = queryClient || useQueryClient()\n const options = computed(() => {\n return client.defaultMutationOptions(cloneDeepUnref(mutationOptions))\n })\n const observer = new MutationObserver(client, options.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = observer.subscribe((result) => {\n updateState(state, result)\n })\n\n const mutate = (\n variables: TVariables,\n mutateOptions?: MutateOptions<TData, TError, TVariables, TContext>,\n ) => {\n observer.mutate(variables, mutateOptions).catch(() => {\n // This is intentional\n })\n }\n\n watch(\n options,\n () => {\n observer.setOptions(options.value)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const resultRefs = toRefs(readonly(state)) as unknown as ToRefs<\n Readonly<MutationResult<TData, TError, TVariables, TContext>>\n >\n\n return {\n ...resultRefs,\n mutate,\n mutateAsync: state.mutate,\n reset: state.reset,\n }\n}\n"],"names":["useMutation","mutationOptions","queryClient","client","useQueryClient","options","computed","defaultMutationOptions","cloneDeepUnref","observer","MutationObserver","value","state","reactive","getCurrentResult","unsubscribe","subscribe","result","updateState","mutate","variables","mutateOptions","catch","watch","setOptions","deep","onScopeDispose","resultRefs","toRefs","readonly","mutateAsync","reset"],"mappings":";;;;;AAuDO,SAASA,WAAWA,CAMzBC,eAEC,EACDC,WAAyB,EACmC;AAC5D,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,cAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,OAAO,GAAGC,QAAQ,CAAC,MAAM;IAC7B,OAAOH,MAAM,CAACI,sBAAsB,CAACC,cAAc,CAACP,eAAe,CAAC,CAAC,CAAA;AACvE,GAAC,CAAC,CAAA;EACF,MAAMQ,QAAQ,GAAG,IAAIC,gBAAgB,CAACP,MAAM,EAAEE,OAAO,CAACM,KAAK,CAAC,CAAA;EAC5D,MAAMC,KAAK,GAAGC,QAAQ,CAACJ,QAAQ,CAACK,gBAAgB,EAAE,CAAC,CAAA;AAEnD,EAAA,MAAMC,WAAW,GAAGN,QAAQ,CAACO,SAAS,CAAEC,MAAM,IAAK;AACjDC,IAAAA,WAAW,CAACN,KAAK,EAAEK,MAAM,CAAC,CAAA;AAC5B,GAAC,CAAC,CAAA;AAEF,EAAA,MAAME,MAAM,GAAGA,CACbC,SAAqB,EACrBC,aAAkE,KAC/D;IACHZ,QAAQ,CAACU,MAAM,CAACC,SAAS,EAAEC,aAAa,CAAC,CAACC,KAAK,CAAC,MAAM;AACpD;AAAA,KACD,CAAC,CAAA;GACH,CAAA;EAEDC,KAAK,CACHlB,OAAO,EACP,MAAM;AACJI,IAAAA,QAAQ,CAACe,UAAU,CAACnB,OAAO,CAACM,KAAK,CAAC,CAAA;AACpC,GAAC,EACD;AAAEc,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,cAAc,CAAC,MAAM;AACnBX,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,MAAMY,UAAU,GAAGC,MAAM,CAACC,QAAQ,CAACjB,KAAK,CAAC,CAExC,CAAA;EAED,OAAO;AACL,IAAA,GAAGe,UAAU;IACbR,MAAM;IACNW,WAAW,EAAElB,KAAK,CAACO,MAAM;IACzBY,KAAK,EAAEnB,KAAK,CAACmB,KAAAA;GACd,CAAA;AACH;;;;"}
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ var vueDemi = require('vue-demi');
4
+ var queryCore = require('@tanstack/query-core');
5
+ var utils = require('./utils.legacy.cjs');
6
+ var useQueryClient = require('./useQueryClient.legacy.cjs');
7
+
8
+ function useMutation(mutationOptions, queryClient) {
9
+ const client = queryClient || useQueryClient.useQueryClient();
10
+ const options = vueDemi.computed(() => {
11
+ return client.defaultMutationOptions(utils.cloneDeepUnref(mutationOptions));
12
+ });
13
+ const observer = new queryCore.MutationObserver(client, options.value);
14
+ const state = vueDemi.reactive(observer.getCurrentResult());
15
+ const unsubscribe = observer.subscribe(result => {
16
+ utils.updateState(state, result);
17
+ });
18
+ const mutate = (variables, mutateOptions) => {
19
+ observer.mutate(variables, mutateOptions).catch(() => {
20
+ // This is intentional
21
+ });
22
+ };
23
+ vueDemi.watch(options, () => {
24
+ observer.setOptions(options.value);
25
+ }, {
26
+ deep: true
27
+ });
28
+ vueDemi.onScopeDispose(() => {
29
+ unsubscribe();
30
+ });
31
+ const resultRefs = vueDemi.toRefs(vueDemi.readonly(state));
32
+ return {
33
+ ...resultRefs,
34
+ mutate,
35
+ mutateAsync: state.mutate,
36
+ reset: state.reset
37
+ };
38
+ }
39
+
40
+ exports.useMutation = useMutation;
41
+ //# sourceMappingURL=useMutation.legacy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMutation.legacy.cjs","sources":["../../src/useMutation.ts"],"sourcesContent":["import {\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n watch,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n MutateOptions,\n MutateFunction,\n MutationObserverResult,\n MutationObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep, DistributiveOmit } from './types'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { cloneDeepUnref, updateState } from './utils'\nimport { useQueryClient } from './useQueryClient'\nimport type { QueryClient } from './queryClient'\n\ntype MutationResult<TData, TError, TVariables, TContext> = DistributiveOmit<\n MutationObserverResult<TData, TError, TVariables, TContext>,\n 'mutate' | 'reset'\n>\n\nexport type UseMutationOptions<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = MaybeRefDeep<MutationObserverOptions<TData, TError, TVariables, TContext>>\n\ntype MutateSyncFunction<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = (\n ...options: Parameters<MutateFunction<TData, TError, TVariables, TContext>>\n) => void\n\nexport type UseMutationReturnType<\n TData,\n TError,\n TVariables,\n TContext,\n Result = MutationResult<TData, TError, TVariables, TContext>,\n> = ToRefs<Readonly<Result>> & {\n mutate: MutateSyncFunction<TData, TError, TVariables, TContext>\n mutateAsync: MutateFunction<TData, TError, TVariables, TContext>\n reset: MutationObserverResult<TData, TError, TVariables, TContext>['reset']\n}\n\nexport function useMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n mutationOptions: MaybeRefDeep<\n MutationObserverOptions<TData, TError, TVariables, TContext>\n >,\n queryClient?: QueryClient,\n): UseMutationReturnType<TData, TError, TVariables, TContext> {\n const client = queryClient || useQueryClient()\n const options = computed(() => {\n return client.defaultMutationOptions(cloneDeepUnref(mutationOptions))\n })\n const observer = new MutationObserver(client, options.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = observer.subscribe((result) => {\n updateState(state, result)\n })\n\n const mutate = (\n variables: TVariables,\n mutateOptions?: MutateOptions<TData, TError, TVariables, TContext>,\n ) => {\n observer.mutate(variables, mutateOptions).catch(() => {\n // This is intentional\n })\n }\n\n watch(\n options,\n () => {\n observer.setOptions(options.value)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const resultRefs = toRefs(readonly(state)) as unknown as ToRefs<\n Readonly<MutationResult<TData, TError, TVariables, TContext>>\n >\n\n return {\n ...resultRefs,\n mutate,\n mutateAsync: state.mutate,\n reset: state.reset,\n }\n}\n"],"names":["useMutation","mutationOptions","queryClient","client","useQueryClient","options","computed","defaultMutationOptions","cloneDeepUnref","observer","MutationObserver","value","state","reactive","getCurrentResult","unsubscribe","subscribe","result","updateState","mutate","variables","mutateOptions","catch","watch","setOptions","deep","onScopeDispose","resultRefs","toRefs","readonly","mutateAsync","reset"],"mappings":";;;;;;;AAuDO,SAASA,WAAWA,CAMzBC,eAEC,EACDC,WAAyB,EACmC;AAC5D,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,6BAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,OAAO,GAAGC,gBAAQ,CAAC,MAAM;IAC7B,OAAOH,MAAM,CAACI,sBAAsB,CAACC,oBAAc,CAACP,eAAe,CAAC,CAAC,CAAA;AACvE,GAAC,CAAC,CAAA;EACF,MAAMQ,QAAQ,GAAG,IAAIC,0BAAgB,CAACP,MAAM,EAAEE,OAAO,CAACM,KAAK,CAAC,CAAA;EAC5D,MAAMC,KAAK,GAAGC,gBAAQ,CAACJ,QAAQ,CAACK,gBAAgB,EAAE,CAAC,CAAA;AAEnD,EAAA,MAAMC,WAAW,GAAGN,QAAQ,CAACO,SAAS,CAAEC,MAAM,IAAK;AACjDC,IAAAA,iBAAW,CAACN,KAAK,EAAEK,MAAM,CAAC,CAAA;AAC5B,GAAC,CAAC,CAAA;AAEF,EAAA,MAAME,MAAM,GAAGA,CACbC,SAAqB,EACrBC,aAAkE,KAC/D;IACHZ,QAAQ,CAACU,MAAM,CAACC,SAAS,EAAEC,aAAa,CAAC,CAACC,KAAK,CAAC,MAAM;AACpD;AAAA,KACD,CAAC,CAAA;GACH,CAAA;EAEDC,aAAK,CACHlB,OAAO,EACP,MAAM;AACJI,IAAAA,QAAQ,CAACe,UAAU,CAACnB,OAAO,CAACM,KAAK,CAAC,CAAA;AACpC,GAAC,EACD;AAAEc,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,sBAAc,CAAC,MAAM;AACnBX,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,MAAMY,UAAU,GAAGC,cAAM,CAACC,gBAAQ,CAACjB,KAAK,CAAC,CAExC,CAAA;EAED,OAAO;AACL,IAAA,GAAGe,UAAU;IACbR,MAAM;IACNW,WAAW,EAAElB,KAAK,CAACO,MAAM;IACzBY,KAAK,EAAEnB,KAAK,CAACmB,KAAAA;GACd,CAAA;AACH;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { computed, reactive, watch, onScopeDispose, toRefs, readonly } from 'vue-demi';
2
2
  import { MutationObserver } from '@tanstack/query-core';
3
- import { cloneDeepUnref, updateState } from './utils.esm.js';
4
- import { useQueryClient } from './useQueryClient.esm.js';
3
+ import { cloneDeepUnref, updateState } from './utils.legacy.js';
4
+ import { useQueryClient } from './useQueryClient.legacy.js';
5
5
 
6
6
  function useMutation(mutationOptions, queryClient) {
7
7
  const client = queryClient || useQueryClient();
@@ -36,4 +36,4 @@ function useMutation(mutationOptions, queryClient) {
36
36
  }
37
37
 
38
38
  export { useMutation };
39
- //# sourceMappingURL=useMutation.esm.js.map
39
+ //# sourceMappingURL=useMutation.legacy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMutation.legacy.js","sources":["../../src/useMutation.ts"],"sourcesContent":["import {\n onScopeDispose,\n reactive,\n readonly,\n toRefs,\n watch,\n computed,\n} from 'vue-demi'\nimport type { ToRefs } from 'vue-demi'\nimport type {\n MutateOptions,\n MutateFunction,\n MutationObserverResult,\n MutationObserverOptions,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MaybeRefDeep, DistributiveOmit } from './types'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { cloneDeepUnref, updateState } from './utils'\nimport { useQueryClient } from './useQueryClient'\nimport type { QueryClient } from './queryClient'\n\ntype MutationResult<TData, TError, TVariables, TContext> = DistributiveOmit<\n MutationObserverResult<TData, TError, TVariables, TContext>,\n 'mutate' | 'reset'\n>\n\nexport type UseMutationOptions<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = MaybeRefDeep<MutationObserverOptions<TData, TError, TVariables, TContext>>\n\ntype MutateSyncFunction<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n> = (\n ...options: Parameters<MutateFunction<TData, TError, TVariables, TContext>>\n) => void\n\nexport type UseMutationReturnType<\n TData,\n TError,\n TVariables,\n TContext,\n Result = MutationResult<TData, TError, TVariables, TContext>,\n> = ToRefs<Readonly<Result>> & {\n mutate: MutateSyncFunction<TData, TError, TVariables, TContext>\n mutateAsync: MutateFunction<TData, TError, TVariables, TContext>\n reset: MutationObserverResult<TData, TError, TVariables, TContext>['reset']\n}\n\nexport function useMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n mutationOptions: MaybeRefDeep<\n MutationObserverOptions<TData, TError, TVariables, TContext>\n >,\n queryClient?: QueryClient,\n): UseMutationReturnType<TData, TError, TVariables, TContext> {\n const client = queryClient || useQueryClient()\n const options = computed(() => {\n return client.defaultMutationOptions(cloneDeepUnref(mutationOptions))\n })\n const observer = new MutationObserver(client, options.value)\n const state = reactive(observer.getCurrentResult())\n\n const unsubscribe = observer.subscribe((result) => {\n updateState(state, result)\n })\n\n const mutate = (\n variables: TVariables,\n mutateOptions?: MutateOptions<TData, TError, TVariables, TContext>,\n ) => {\n observer.mutate(variables, mutateOptions).catch(() => {\n // This is intentional\n })\n }\n\n watch(\n options,\n () => {\n observer.setOptions(options.value)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n const resultRefs = toRefs(readonly(state)) as unknown as ToRefs<\n Readonly<MutationResult<TData, TError, TVariables, TContext>>\n >\n\n return {\n ...resultRefs,\n mutate,\n mutateAsync: state.mutate,\n reset: state.reset,\n }\n}\n"],"names":["useMutation","mutationOptions","queryClient","client","useQueryClient","options","computed","defaultMutationOptions","cloneDeepUnref","observer","MutationObserver","value","state","reactive","getCurrentResult","unsubscribe","subscribe","result","updateState","mutate","variables","mutateOptions","catch","watch","setOptions","deep","onScopeDispose","resultRefs","toRefs","readonly","mutateAsync","reset"],"mappings":";;;;;AAuDO,SAASA,WAAWA,CAMzBC,eAEC,EACDC,WAAyB,EACmC;AAC5D,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,cAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,OAAO,GAAGC,QAAQ,CAAC,MAAM;IAC7B,OAAOH,MAAM,CAACI,sBAAsB,CAACC,cAAc,CAACP,eAAe,CAAC,CAAC,CAAA;AACvE,GAAC,CAAC,CAAA;EACF,MAAMQ,QAAQ,GAAG,IAAIC,gBAAgB,CAACP,MAAM,EAAEE,OAAO,CAACM,KAAK,CAAC,CAAA;EAC5D,MAAMC,KAAK,GAAGC,QAAQ,CAACJ,QAAQ,CAACK,gBAAgB,EAAE,CAAC,CAAA;AAEnD,EAAA,MAAMC,WAAW,GAAGN,QAAQ,CAACO,SAAS,CAAEC,MAAM,IAAK;AACjDC,IAAAA,WAAW,CAACN,KAAK,EAAEK,MAAM,CAAC,CAAA;AAC5B,GAAC,CAAC,CAAA;AAEF,EAAA,MAAME,MAAM,GAAGA,CACbC,SAAqB,EACrBC,aAAkE,KAC/D;IACHZ,QAAQ,CAACU,MAAM,CAACC,SAAS,EAAEC,aAAa,CAAC,CAACC,KAAK,CAAC,MAAM;AACpD;AAAA,KACD,CAAC,CAAA;GACH,CAAA;EAEDC,KAAK,CACHlB,OAAO,EACP,MAAM;AACJI,IAAAA,QAAQ,CAACe,UAAU,CAACnB,OAAO,CAACM,KAAK,CAAC,CAAA;AACpC,GAAC,EACD;AAAEc,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,cAAc,CAAC,MAAM;AACnBX,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,MAAMY,UAAU,GAAGC,MAAM,CAACC,QAAQ,CAACjB,KAAK,CAAC,CAExC,CAAA;EAED,OAAO;AACL,IAAA,GAAGe,UAAU;IACbR,MAAM;IACNW,WAAW,EAAElB,KAAK,CAACO,MAAM;IACzBY,KAAK,EAAEnB,KAAK,CAACmB,KAAAA;GACd,CAAA;AACH;;;;"}
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ var vueDemi = require('vue-demi');
4
+ var useQueryClient = require('./useQueryClient.cjs');
5
+ var utils = require('./utils.cjs');
6
+
7
+ function useIsMutating(filters = {}, queryClient) {
8
+ const client = queryClient || useQueryClient.useQueryClient();
9
+ const unreffedFilters = vueDemi.computed(() => ({
10
+ ...utils.cloneDeepUnref(filters),
11
+ status: 'pending'
12
+ }));
13
+ const mutationState = useMutationState({
14
+ filters: unreffedFilters
15
+ }, client);
16
+ const length = vueDemi.computed(() => mutationState.value.length);
17
+ return length;
18
+ }
19
+ function getResult(mutationCache, options) {
20
+ return mutationCache.findAll(options.filters).map(mutation => options.select ? options.select(mutation) : mutation.state);
21
+ }
22
+ function useMutationState(options = {}, queryClient) {
23
+ const filters = vueDemi.computed(() => utils.cloneDeepUnref(options.filters));
24
+ const mutationCache = (queryClient || useQueryClient.useQueryClient()).getMutationCache();
25
+ const state = vueDemi.ref(getResult(mutationCache, options));
26
+ const unsubscribe = mutationCache.subscribe(() => {
27
+ const result = getResult(mutationCache, options);
28
+ state.value = result;
29
+ });
30
+ vueDemi.watch(filters, () => {
31
+ state.value = getResult(mutationCache, options);
32
+ }, {
33
+ deep: true
34
+ });
35
+ vueDemi.onScopeDispose(() => {
36
+ unsubscribe();
37
+ });
38
+ return vueDemi.readonly(state);
39
+ }
40
+
41
+ exports.useIsMutating = useIsMutating;
42
+ exports.useMutationState = useMutationState;
43
+ //# sourceMappingURL=useMutationState.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMutationState.cjs","sources":["../../src/useMutationState.ts"],"sourcesContent":["import { onScopeDispose, readonly, computed, ref, watch } from 'vue-demi'\nimport type { Ref, DeepReadonly } from 'vue-demi'\nimport type {\n MutationFilters as MF,\n Mutation,\n DefaultError,\n MutationState,\n} from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { MaybeRefDeep } from './types'\nimport type { MutationCache } from './mutationCache'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n filters: MutationFilters = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const client = queryClient || useQueryClient()\n const unreffedFilters = computed(() => ({\n ...cloneDeepUnref(filters),\n status: 'pending' as const,\n }))\n\n const mutationState = useMutationState({ filters: unreffedFilters }, client)\n const length = computed(() => mutationState.value.length)\n\n return length\n}\n\nexport type MutationStateOptions<TResult = MutationState> = {\n filters?: MutationFilters\n select?: (\n mutation: Mutation<unknown, DefaultError, unknown, unknown>,\n ) => TResult\n}\n\nfunction getResult<TResult = MutationState>(\n mutationCache: MutationCache,\n options: MutationStateOptions<TResult>,\n): Array<TResult> {\n return mutationCache\n .findAll(options.filters)\n .map(\n (mutation): TResult =>\n (options.select\n ? options.select(\n mutation as Mutation<unknown, DefaultError, unknown, unknown>,\n )\n : mutation.state) as TResult,\n )\n}\n\nexport function useMutationState<TResult = MutationState>(\n options: MutationStateOptions<TResult> = {},\n queryClient?: QueryClient,\n): DeepReadonly<Ref<Array<TResult>>> {\n const filters = computed(() => cloneDeepUnref(options.filters))\n const mutationCache = (queryClient || useQueryClient()).getMutationCache()\n const state = ref(getResult(mutationCache, options)) as Ref<TResult[]>\n const unsubscribe = mutationCache.subscribe(() => {\n const result = getResult(mutationCache, options)\n state.value = result\n })\n\n watch(\n filters,\n () => {\n state.value = getResult(mutationCache, options)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state)\n}\n"],"names":["useIsMutating","filters","queryClient","client","useQueryClient","unreffedFilters","computed","cloneDeepUnref","status","mutationState","useMutationState","length","value","getResult","mutationCache","options","findAll","map","mutation","select","state","getMutationCache","ref","unsubscribe","subscribe","result","watch","deep","onScopeDispose","readonly"],"mappings":";;;;;;AAgBO,SAASA,aAAaA,CAC3BC,OAAwB,GAAG,EAAE,EAC7BC,WAAyB,EACZ;AACb,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,6BAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,eAAe,GAAGC,gBAAQ,CAAC,OAAO;IACtC,GAAGC,oBAAc,CAACN,OAAO,CAAC;AAC1BO,IAAAA,MAAM,EAAE,SAAA;AACV,GAAC,CAAC,CAAC,CAAA;EAEH,MAAMC,aAAa,GAAGC,gBAAgB,CAAC;AAAET,IAAAA,OAAO,EAAEI,eAAAA;GAAiB,EAAEF,MAAM,CAAC,CAAA;EAC5E,MAAMQ,MAAM,GAAGL,gBAAQ,CAAC,MAAMG,aAAa,CAACG,KAAK,CAACD,MAAM,CAAC,CAAA;AAEzD,EAAA,OAAOA,MAAM,CAAA;AACf,CAAA;AASA,SAASE,SAASA,CAChBC,aAA4B,EAC5BC,OAAsC,EACtB;EAChB,OAAOD,aAAa,CACjBE,OAAO,CAACD,OAAO,CAACd,OAAO,CAAC,CACxBgB,GAAG,CACDC,QAAQ,IACNH,OAAO,CAACI,MAAM,GACXJ,OAAO,CAACI,MAAM,CACZD,QACF,CAAC,GACDA,QAAQ,CAACE,KACjB,CAAC,CAAA;AACL,CAAA;AAEO,SAASV,gBAAgBA,CAC9BK,OAAsC,GAAG,EAAE,EAC3Cb,WAAyB,EACU;EACnC,MAAMD,OAAO,GAAGK,gBAAQ,CAAC,MAAMC,oBAAc,CAACQ,OAAO,CAACd,OAAO,CAAC,CAAC,CAAA;EAC/D,MAAMa,aAAa,GAAG,CAACZ,WAAW,IAAIE,6BAAc,EAAE,EAAEiB,gBAAgB,EAAE,CAAA;EAC1E,MAAMD,KAAK,GAAGE,WAAG,CAACT,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAmB,CAAA;AACtE,EAAA,MAAMQ,WAAW,GAAGT,aAAa,CAACU,SAAS,CAAC,MAAM;AAChD,IAAA,MAAMC,MAAM,GAAGZ,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;IAChDK,KAAK,CAACR,KAAK,GAAGa,MAAM,CAAA;AACtB,GAAC,CAAC,CAAA;EAEFC,aAAK,CACHzB,OAAO,EACP,MAAM;IACJmB,KAAK,CAACR,KAAK,GAAGC,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;AACjD,GAAC,EACD;AAAEY,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,sBAAc,CAAC,MAAM;AACnBL,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,OAAOM,gBAAQ,CAACT,KAAK,CAAC,CAAA;AACxB;;;;;"}
@@ -1,11 +1,12 @@
1
1
  import type { Ref, DeepReadonly } from 'vue-demi';
2
- import type { MutationFilters as MF, Mutation, DefaultError } from '@tanstack/query-core';
2
+ import type { MutationFilters as MF, Mutation, DefaultError, MutationState } from '@tanstack/query-core';
3
3
  import type { QueryClient } from './queryClient';
4
4
  import type { MaybeRefDeep } from './types';
5
- export declare type MutationFilters = MaybeRefDeep<MF>;
5
+ export type MutationFilters = MaybeRefDeep<MF>;
6
6
  export declare function useIsMutating(filters?: MutationFilters, queryClient?: QueryClient): Ref<number>;
7
- export declare type MutationStateOptions<TResult> = {
7
+ export type MutationStateOptions<TResult = MutationState> = {
8
8
  filters?: MutationFilters;
9
9
  select?: (mutation: Mutation<unknown, DefaultError, unknown, unknown>) => TResult;
10
10
  };
11
- export declare function useMutationState<TResult = unknown>(options?: MutationStateOptions<TResult>, queryClient?: QueryClient): DeepReadonly<Ref<Array<TResult>>>;
11
+ export declare function useMutationState<TResult = MutationState>(options?: MutationStateOptions<TResult>, queryClient?: QueryClient): DeepReadonly<Ref<Array<TResult>>>;
12
+ //# sourceMappingURL=useMutationState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMutationState.d.ts","sourceRoot":"","sources":["../../src/useMutationState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,KAAK,EACV,eAAe,IAAI,EAAE,EACrB,QAAQ,EACR,YAAY,EACZ,aAAa,EACd,MAAM,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;AAE9C,wBAAgB,aAAa,CAC3B,OAAO,GAAE,eAAoB,EAC7B,WAAW,CAAC,EAAE,WAAW,GACxB,GAAG,CAAC,MAAM,CAAC,CAWb;AAED,MAAM,MAAM,oBAAoB,CAAC,OAAO,GAAG,aAAa,IAAI;IAC1D,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,MAAM,CAAC,EAAE,CACP,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,KACxD,OAAO,CAAA;CACb,CAAA;AAkBD,wBAAgB,gBAAgB,CAAC,OAAO,GAAG,aAAa,EACtD,OAAO,GAAE,oBAAoB,CAAC,OAAO,CAAM,EAC3C,WAAW,CAAC,EAAE,WAAW,GACxB,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAsBnC"}
@@ -1,36 +1,40 @@
1
- 'use strict';
2
-
3
- var vueDemi = require('vue-demi');
4
- var useQueryClient = require('./useQueryClient.js');
5
- var utils = require('./utils.js');
1
+ import { computed, ref, watch, onScopeDispose, readonly } from 'vue-demi';
2
+ import { useQueryClient } from './useQueryClient.js';
3
+ import { cloneDeepUnref } from './utils.js';
6
4
 
7
5
  function useIsMutating(filters = {}, queryClient) {
8
- const client = queryClient || useQueryClient.useQueryClient();
9
- const unreffedFilters = vueDemi.computed(() => ({
10
- ...utils.cloneDeepUnref(filters),
6
+ const client = queryClient || useQueryClient();
7
+ const unreffedFilters = computed(() => ({
8
+ ...cloneDeepUnref(filters),
11
9
  status: 'pending'
12
10
  }));
13
- const length = vueDemi.computed(() => useMutationState({
11
+ const mutationState = useMutationState({
14
12
  filters: unreffedFilters
15
- }, client).value.length);
13
+ }, client);
14
+ const length = computed(() => mutationState.value.length);
16
15
  return length;
17
16
  }
18
17
  function getResult(mutationCache, options) {
19
18
  return mutationCache.findAll(options.filters).map(mutation => options.select ? options.select(mutation) : mutation.state);
20
19
  }
21
20
  function useMutationState(options = {}, queryClient) {
22
- const mutationCache = (queryClient || useQueryClient.useQueryClient()).getMutationCache();
23
- const state = vueDemi.ref(getResult(mutationCache, options));
21
+ const filters = computed(() => cloneDeepUnref(options.filters));
22
+ const mutationCache = (queryClient || useQueryClient()).getMutationCache();
23
+ const state = ref(getResult(mutationCache, options));
24
24
  const unsubscribe = mutationCache.subscribe(() => {
25
25
  const result = getResult(mutationCache, options);
26
26
  state.value = result;
27
27
  });
28
- vueDemi.onScopeDispose(() => {
28
+ watch(filters, () => {
29
+ state.value = getResult(mutationCache, options);
30
+ }, {
31
+ deep: true
32
+ });
33
+ onScopeDispose(() => {
29
34
  unsubscribe();
30
35
  });
31
- return vueDemi.readonly(state);
36
+ return readonly(state);
32
37
  }
33
38
 
34
- exports.useIsMutating = useIsMutating;
35
- exports.useMutationState = useMutationState;
39
+ export { useIsMutating, useMutationState };
36
40
  //# sourceMappingURL=useMutationState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMutationState.js","sources":["../../src/useMutationState.ts"],"sourcesContent":["import { onScopeDispose, readonly, computed, ref } from 'vue-demi'\nimport type { Ref, DeepReadonly } from 'vue-demi'\nimport type {\n MutationFilters as MF,\n Mutation,\n DefaultError,\n} from '@tanstack/query-core'\nimport type { MutationState } from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { MaybeRefDeep } from './types'\nimport type { MutationCache } from './mutationCache'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n filters: MutationFilters = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const client = queryClient || useQueryClient()\n const unreffedFilters = computed(() => ({\n ...cloneDeepUnref(filters),\n status: 'pending' as const,\n }))\n\n const length = computed(\n () => useMutationState({ filters: unreffedFilters }, client).value.length,\n )\n\n return length\n}\n\nexport type MutationStateOptions<TResult> = {\n filters?: MutationFilters\n select?: (\n mutation: Mutation<unknown, DefaultError, unknown, unknown>,\n ) => TResult\n}\n\nfunction getResult<TResult = MutationState>(\n mutationCache: MutationCache,\n options: MutationStateOptions<TResult>,\n): Array<TResult> {\n return mutationCache\n .findAll(options.filters)\n .map(\n (mutation): TResult =>\n (options.select\n ? options.select(\n mutation as Mutation<unknown, DefaultError, unknown, unknown>,\n )\n : mutation.state) as TResult,\n )\n}\n\nexport function useMutationState<TResult = unknown>(\n options: MutationStateOptions<TResult> = {},\n queryClient?: QueryClient,\n): DeepReadonly<Ref<Array<TResult>>> {\n const mutationCache = (queryClient || useQueryClient()).getMutationCache()\n const state = ref(getResult(mutationCache, options)) as Ref<TResult[]>\n const unsubscribe = mutationCache.subscribe(() => {\n const result = getResult(mutationCache, options)\n state.value = result\n })\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state)\n}\n"],"names":["useIsMutating","filters","queryClient","client","useQueryClient","unreffedFilters","computed","cloneDeepUnref","status","length","useMutationState","value","getResult","mutationCache","options","findAll","map","mutation","select","state","getMutationCache","ref","unsubscribe","subscribe","result","onScopeDispose","readonly"],"mappings":";;;;;;AAgBO,SAASA,aAAa,CAC3BC,OAAwB,GAAG,EAAE,EAC7BC,WAAyB,EACZ;AACb,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,6BAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,eAAe,GAAGC,gBAAQ,CAAC,OAAO;IACtC,GAAGC,oBAAc,CAACN,OAAO,CAAC;AAC1BO,IAAAA,MAAM,EAAE,SAAA;AACV,GAAC,CAAC,CAAC,CAAA;AAEH,EAAA,MAAMC,MAAM,GAAGH,gBAAQ,CACrB,MAAMI,gBAAgB,CAAC;AAAET,IAAAA,OAAO,EAAEI,eAAAA;AAAgB,GAAC,EAAEF,MAAM,CAAC,CAACQ,KAAK,CAACF,MAAM,CAC1E,CAAA;AAED,EAAA,OAAOA,MAAM,CAAA;AACf,CAAA;AASA,SAASG,SAAS,CAChBC,aAA4B,EAC5BC,OAAsC,EACtB;EAChB,OAAOD,aAAa,CACjBE,OAAO,CAACD,OAAO,CAACb,OAAO,CAAC,CACxBe,GAAG,CACDC,QAAQ,IACNH,OAAO,CAACI,MAAM,GACXJ,OAAO,CAACI,MAAM,CACZD,QAAQ,CACT,GACDA,QAAQ,CAACE,KAAiB,CACjC,CAAA;AACL,CAAA;AAEO,SAAST,gBAAgB,CAC9BI,OAAsC,GAAG,EAAE,EAC3CZ,WAAyB,EACU;EACnC,MAAMW,aAAa,GAAG,CAACX,WAAW,IAAIE,6BAAc,EAAE,EAAEgB,gBAAgB,EAAE,CAAA;EAC1E,MAAMD,KAAK,GAAGE,WAAG,CAACT,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAmB,CAAA;AACtE,EAAA,MAAMQ,WAAW,GAAGT,aAAa,CAACU,SAAS,CAAC,MAAM;AAChD,IAAA,MAAMC,MAAM,GAAGZ,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;IAChDK,KAAK,CAACR,KAAK,GAAGa,MAAM,CAAA;AACtB,GAAC,CAAC,CAAA;AAEFC,EAAAA,sBAAc,CAAC,MAAM;AACnBH,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,OAAOI,gBAAQ,CAACP,KAAK,CAAC,CAAA;AACxB;;;;;"}
1
+ {"version":3,"file":"useMutationState.js","sources":["../../src/useMutationState.ts"],"sourcesContent":["import { onScopeDispose, readonly, computed, ref, watch } from 'vue-demi'\nimport type { Ref, DeepReadonly } from 'vue-demi'\nimport type {\n MutationFilters as MF,\n Mutation,\n DefaultError,\n MutationState,\n} from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { MaybeRefDeep } from './types'\nimport type { MutationCache } from './mutationCache'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n filters: MutationFilters = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const client = queryClient || useQueryClient()\n const unreffedFilters = computed(() => ({\n ...cloneDeepUnref(filters),\n status: 'pending' as const,\n }))\n\n const mutationState = useMutationState({ filters: unreffedFilters }, client)\n const length = computed(() => mutationState.value.length)\n\n return length\n}\n\nexport type MutationStateOptions<TResult = MutationState> = {\n filters?: MutationFilters\n select?: (\n mutation: Mutation<unknown, DefaultError, unknown, unknown>,\n ) => TResult\n}\n\nfunction getResult<TResult = MutationState>(\n mutationCache: MutationCache,\n options: MutationStateOptions<TResult>,\n): Array<TResult> {\n return mutationCache\n .findAll(options.filters)\n .map(\n (mutation): TResult =>\n (options.select\n ? options.select(\n mutation as Mutation<unknown, DefaultError, unknown, unknown>,\n )\n : mutation.state) as TResult,\n )\n}\n\nexport function useMutationState<TResult = MutationState>(\n options: MutationStateOptions<TResult> = {},\n queryClient?: QueryClient,\n): DeepReadonly<Ref<Array<TResult>>> {\n const filters = computed(() => cloneDeepUnref(options.filters))\n const mutationCache = (queryClient || useQueryClient()).getMutationCache()\n const state = ref(getResult(mutationCache, options)) as Ref<TResult[]>\n const unsubscribe = mutationCache.subscribe(() => {\n const result = getResult(mutationCache, options)\n state.value = result\n })\n\n watch(\n filters,\n () => {\n state.value = getResult(mutationCache, options)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state)\n}\n"],"names":["useIsMutating","filters","queryClient","client","useQueryClient","unreffedFilters","computed","cloneDeepUnref","status","mutationState","useMutationState","length","value","getResult","mutationCache","options","findAll","map","mutation","select","state","getMutationCache","ref","unsubscribe","subscribe","result","watch","deep","onScopeDispose","readonly"],"mappings":";;;;AAgBO,SAASA,aAAaA,CAC3BC,OAAwB,GAAG,EAAE,EAC7BC,WAAyB,EACZ;AACb,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,cAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,eAAe,GAAGC,QAAQ,CAAC,OAAO;IACtC,GAAGC,cAAc,CAACN,OAAO,CAAC;AAC1BO,IAAAA,MAAM,EAAE,SAAA;AACV,GAAC,CAAC,CAAC,CAAA;EAEH,MAAMC,aAAa,GAAGC,gBAAgB,CAAC;AAAET,IAAAA,OAAO,EAAEI,eAAAA;GAAiB,EAAEF,MAAM,CAAC,CAAA;EAC5E,MAAMQ,MAAM,GAAGL,QAAQ,CAAC,MAAMG,aAAa,CAACG,KAAK,CAACD,MAAM,CAAC,CAAA;AAEzD,EAAA,OAAOA,MAAM,CAAA;AACf,CAAA;AASA,SAASE,SAASA,CAChBC,aAA4B,EAC5BC,OAAsC,EACtB;EAChB,OAAOD,aAAa,CACjBE,OAAO,CAACD,OAAO,CAACd,OAAO,CAAC,CACxBgB,GAAG,CACDC,QAAQ,IACNH,OAAO,CAACI,MAAM,GACXJ,OAAO,CAACI,MAAM,CACZD,QACF,CAAC,GACDA,QAAQ,CAACE,KACjB,CAAC,CAAA;AACL,CAAA;AAEO,SAASV,gBAAgBA,CAC9BK,OAAsC,GAAG,EAAE,EAC3Cb,WAAyB,EACU;EACnC,MAAMD,OAAO,GAAGK,QAAQ,CAAC,MAAMC,cAAc,CAACQ,OAAO,CAACd,OAAO,CAAC,CAAC,CAAA;EAC/D,MAAMa,aAAa,GAAG,CAACZ,WAAW,IAAIE,cAAc,EAAE,EAAEiB,gBAAgB,EAAE,CAAA;EAC1E,MAAMD,KAAK,GAAGE,GAAG,CAACT,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAmB,CAAA;AACtE,EAAA,MAAMQ,WAAW,GAAGT,aAAa,CAACU,SAAS,CAAC,MAAM;AAChD,IAAA,MAAMC,MAAM,GAAGZ,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;IAChDK,KAAK,CAACR,KAAK,GAAGa,MAAM,CAAA;AACtB,GAAC,CAAC,CAAA;EAEFC,KAAK,CACHzB,OAAO,EACP,MAAM;IACJmB,KAAK,CAACR,KAAK,GAAGC,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;AACjD,GAAC,EACD;AAAEY,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,cAAc,CAAC,MAAM;AACnBL,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,OAAOM,QAAQ,CAACT,KAAK,CAAC,CAAA;AACxB;;;;"}
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ var vueDemi = require('vue-demi');
4
+ var useQueryClient = require('./useQueryClient.legacy.cjs');
5
+ var utils = require('./utils.legacy.cjs');
6
+
7
+ function useIsMutating(filters = {}, queryClient) {
8
+ const client = queryClient || useQueryClient.useQueryClient();
9
+ const unreffedFilters = vueDemi.computed(() => ({
10
+ ...utils.cloneDeepUnref(filters),
11
+ status: 'pending'
12
+ }));
13
+ const mutationState = useMutationState({
14
+ filters: unreffedFilters
15
+ }, client);
16
+ const length = vueDemi.computed(() => mutationState.value.length);
17
+ return length;
18
+ }
19
+ function getResult(mutationCache, options) {
20
+ return mutationCache.findAll(options.filters).map(mutation => options.select ? options.select(mutation) : mutation.state);
21
+ }
22
+ function useMutationState(options = {}, queryClient) {
23
+ const filters = vueDemi.computed(() => utils.cloneDeepUnref(options.filters));
24
+ const mutationCache = (queryClient || useQueryClient.useQueryClient()).getMutationCache();
25
+ const state = vueDemi.ref(getResult(mutationCache, options));
26
+ const unsubscribe = mutationCache.subscribe(() => {
27
+ const result = getResult(mutationCache, options);
28
+ state.value = result;
29
+ });
30
+ vueDemi.watch(filters, () => {
31
+ state.value = getResult(mutationCache, options);
32
+ }, {
33
+ deep: true
34
+ });
35
+ vueDemi.onScopeDispose(() => {
36
+ unsubscribe();
37
+ });
38
+ return vueDemi.readonly(state);
39
+ }
40
+
41
+ exports.useIsMutating = useIsMutating;
42
+ exports.useMutationState = useMutationState;
43
+ //# sourceMappingURL=useMutationState.legacy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMutationState.legacy.cjs","sources":["../../src/useMutationState.ts"],"sourcesContent":["import { onScopeDispose, readonly, computed, ref, watch } from 'vue-demi'\nimport type { Ref, DeepReadonly } from 'vue-demi'\nimport type {\n MutationFilters as MF,\n Mutation,\n DefaultError,\n MutationState,\n} from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { MaybeRefDeep } from './types'\nimport type { MutationCache } from './mutationCache'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n filters: MutationFilters = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const client = queryClient || useQueryClient()\n const unreffedFilters = computed(() => ({\n ...cloneDeepUnref(filters),\n status: 'pending' as const,\n }))\n\n const mutationState = useMutationState({ filters: unreffedFilters }, client)\n const length = computed(() => mutationState.value.length)\n\n return length\n}\n\nexport type MutationStateOptions<TResult = MutationState> = {\n filters?: MutationFilters\n select?: (\n mutation: Mutation<unknown, DefaultError, unknown, unknown>,\n ) => TResult\n}\n\nfunction getResult<TResult = MutationState>(\n mutationCache: MutationCache,\n options: MutationStateOptions<TResult>,\n): Array<TResult> {\n return mutationCache\n .findAll(options.filters)\n .map(\n (mutation): TResult =>\n (options.select\n ? options.select(\n mutation as Mutation<unknown, DefaultError, unknown, unknown>,\n )\n : mutation.state) as TResult,\n )\n}\n\nexport function useMutationState<TResult = MutationState>(\n options: MutationStateOptions<TResult> = {},\n queryClient?: QueryClient,\n): DeepReadonly<Ref<Array<TResult>>> {\n const filters = computed(() => cloneDeepUnref(options.filters))\n const mutationCache = (queryClient || useQueryClient()).getMutationCache()\n const state = ref(getResult(mutationCache, options)) as Ref<TResult[]>\n const unsubscribe = mutationCache.subscribe(() => {\n const result = getResult(mutationCache, options)\n state.value = result\n })\n\n watch(\n filters,\n () => {\n state.value = getResult(mutationCache, options)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state)\n}\n"],"names":["useIsMutating","filters","queryClient","client","useQueryClient","unreffedFilters","computed","cloneDeepUnref","status","mutationState","useMutationState","length","value","getResult","mutationCache","options","findAll","map","mutation","select","state","getMutationCache","ref","unsubscribe","subscribe","result","watch","deep","onScopeDispose","readonly"],"mappings":";;;;;;AAgBO,SAASA,aAAaA,CAC3BC,OAAwB,GAAG,EAAE,EAC7BC,WAAyB,EACZ;AACb,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,6BAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,eAAe,GAAGC,gBAAQ,CAAC,OAAO;IACtC,GAAGC,oBAAc,CAACN,OAAO,CAAC;AAC1BO,IAAAA,MAAM,EAAE,SAAA;AACV,GAAC,CAAC,CAAC,CAAA;EAEH,MAAMC,aAAa,GAAGC,gBAAgB,CAAC;AAAET,IAAAA,OAAO,EAAEI,eAAAA;GAAiB,EAAEF,MAAM,CAAC,CAAA;EAC5E,MAAMQ,MAAM,GAAGL,gBAAQ,CAAC,MAAMG,aAAa,CAACG,KAAK,CAACD,MAAM,CAAC,CAAA;AAEzD,EAAA,OAAOA,MAAM,CAAA;AACf,CAAA;AASA,SAASE,SAASA,CAChBC,aAA4B,EAC5BC,OAAsC,EACtB;EAChB,OAAOD,aAAa,CACjBE,OAAO,CAACD,OAAO,CAACd,OAAO,CAAC,CACxBgB,GAAG,CACDC,QAAQ,IACNH,OAAO,CAACI,MAAM,GACXJ,OAAO,CAACI,MAAM,CACZD,QACF,CAAC,GACDA,QAAQ,CAACE,KACjB,CAAC,CAAA;AACL,CAAA;AAEO,SAASV,gBAAgBA,CAC9BK,OAAsC,GAAG,EAAE,EAC3Cb,WAAyB,EACU;EACnC,MAAMD,OAAO,GAAGK,gBAAQ,CAAC,MAAMC,oBAAc,CAACQ,OAAO,CAACd,OAAO,CAAC,CAAC,CAAA;EAC/D,MAAMa,aAAa,GAAG,CAACZ,WAAW,IAAIE,6BAAc,EAAE,EAAEiB,gBAAgB,EAAE,CAAA;EAC1E,MAAMD,KAAK,GAAGE,WAAG,CAACT,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAmB,CAAA;AACtE,EAAA,MAAMQ,WAAW,GAAGT,aAAa,CAACU,SAAS,CAAC,MAAM;AAChD,IAAA,MAAMC,MAAM,GAAGZ,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;IAChDK,KAAK,CAACR,KAAK,GAAGa,MAAM,CAAA;AACtB,GAAC,CAAC,CAAA;EAEFC,aAAK,CACHzB,OAAO,EACP,MAAM;IACJmB,KAAK,CAACR,KAAK,GAAGC,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;AACjD,GAAC,EACD;AAAEY,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,sBAAc,CAAC,MAAM;AACnBL,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,OAAOM,gBAAQ,CAACT,KAAK,CAAC,CAAA;AACxB;;;;;"}
@@ -1,6 +1,6 @@
1
- import { computed, ref, onScopeDispose, readonly } from 'vue-demi';
2
- import { useQueryClient } from './useQueryClient.esm.js';
3
- import { cloneDeepUnref } from './utils.esm.js';
1
+ import { computed, ref, watch, onScopeDispose, readonly } from 'vue-demi';
2
+ import { useQueryClient } from './useQueryClient.legacy.js';
3
+ import { cloneDeepUnref } from './utils.legacy.js';
4
4
 
5
5
  function useIsMutating(filters = {}, queryClient) {
6
6
  const client = queryClient || useQueryClient();
@@ -8,21 +8,28 @@ function useIsMutating(filters = {}, queryClient) {
8
8
  ...cloneDeepUnref(filters),
9
9
  status: 'pending'
10
10
  }));
11
- const length = computed(() => useMutationState({
11
+ const mutationState = useMutationState({
12
12
  filters: unreffedFilters
13
- }, client).value.length);
13
+ }, client);
14
+ const length = computed(() => mutationState.value.length);
14
15
  return length;
15
16
  }
16
17
  function getResult(mutationCache, options) {
17
18
  return mutationCache.findAll(options.filters).map(mutation => options.select ? options.select(mutation) : mutation.state);
18
19
  }
19
20
  function useMutationState(options = {}, queryClient) {
21
+ const filters = computed(() => cloneDeepUnref(options.filters));
20
22
  const mutationCache = (queryClient || useQueryClient()).getMutationCache();
21
23
  const state = ref(getResult(mutationCache, options));
22
24
  const unsubscribe = mutationCache.subscribe(() => {
23
25
  const result = getResult(mutationCache, options);
24
26
  state.value = result;
25
27
  });
28
+ watch(filters, () => {
29
+ state.value = getResult(mutationCache, options);
30
+ }, {
31
+ deep: true
32
+ });
26
33
  onScopeDispose(() => {
27
34
  unsubscribe();
28
35
  });
@@ -30,4 +37,4 @@ function useMutationState(options = {}, queryClient) {
30
37
  }
31
38
 
32
39
  export { useIsMutating, useMutationState };
33
- //# sourceMappingURL=useMutationState.esm.js.map
40
+ //# sourceMappingURL=useMutationState.legacy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMutationState.legacy.js","sources":["../../src/useMutationState.ts"],"sourcesContent":["import { onScopeDispose, readonly, computed, ref, watch } from 'vue-demi'\nimport type { Ref, DeepReadonly } from 'vue-demi'\nimport type {\n MutationFilters as MF,\n Mutation,\n DefaultError,\n MutationState,\n} from '@tanstack/query-core'\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { QueryClient } from './queryClient'\nimport type { MaybeRefDeep } from './types'\nimport type { MutationCache } from './mutationCache'\n\nexport type MutationFilters = MaybeRefDeep<MF>\n\nexport function useIsMutating(\n filters: MutationFilters = {},\n queryClient?: QueryClient,\n): Ref<number> {\n const client = queryClient || useQueryClient()\n const unreffedFilters = computed(() => ({\n ...cloneDeepUnref(filters),\n status: 'pending' as const,\n }))\n\n const mutationState = useMutationState({ filters: unreffedFilters }, client)\n const length = computed(() => mutationState.value.length)\n\n return length\n}\n\nexport type MutationStateOptions<TResult = MutationState> = {\n filters?: MutationFilters\n select?: (\n mutation: Mutation<unknown, DefaultError, unknown, unknown>,\n ) => TResult\n}\n\nfunction getResult<TResult = MutationState>(\n mutationCache: MutationCache,\n options: MutationStateOptions<TResult>,\n): Array<TResult> {\n return mutationCache\n .findAll(options.filters)\n .map(\n (mutation): TResult =>\n (options.select\n ? options.select(\n mutation as Mutation<unknown, DefaultError, unknown, unknown>,\n )\n : mutation.state) as TResult,\n )\n}\n\nexport function useMutationState<TResult = MutationState>(\n options: MutationStateOptions<TResult> = {},\n queryClient?: QueryClient,\n): DeepReadonly<Ref<Array<TResult>>> {\n const filters = computed(() => cloneDeepUnref(options.filters))\n const mutationCache = (queryClient || useQueryClient()).getMutationCache()\n const state = ref(getResult(mutationCache, options)) as Ref<TResult[]>\n const unsubscribe = mutationCache.subscribe(() => {\n const result = getResult(mutationCache, options)\n state.value = result\n })\n\n watch(\n filters,\n () => {\n state.value = getResult(mutationCache, options)\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state)\n}\n"],"names":["useIsMutating","filters","queryClient","client","useQueryClient","unreffedFilters","computed","cloneDeepUnref","status","mutationState","useMutationState","length","value","getResult","mutationCache","options","findAll","map","mutation","select","state","getMutationCache","ref","unsubscribe","subscribe","result","watch","deep","onScopeDispose","readonly"],"mappings":";;;;AAgBO,SAASA,aAAaA,CAC3BC,OAAwB,GAAG,EAAE,EAC7BC,WAAyB,EACZ;AACb,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,cAAc,EAAE,CAAA;AAC9C,EAAA,MAAMC,eAAe,GAAGC,QAAQ,CAAC,OAAO;IACtC,GAAGC,cAAc,CAACN,OAAO,CAAC;AAC1BO,IAAAA,MAAM,EAAE,SAAA;AACV,GAAC,CAAC,CAAC,CAAA;EAEH,MAAMC,aAAa,GAAGC,gBAAgB,CAAC;AAAET,IAAAA,OAAO,EAAEI,eAAAA;GAAiB,EAAEF,MAAM,CAAC,CAAA;EAC5E,MAAMQ,MAAM,GAAGL,QAAQ,CAAC,MAAMG,aAAa,CAACG,KAAK,CAACD,MAAM,CAAC,CAAA;AAEzD,EAAA,OAAOA,MAAM,CAAA;AACf,CAAA;AASA,SAASE,SAASA,CAChBC,aAA4B,EAC5BC,OAAsC,EACtB;EAChB,OAAOD,aAAa,CACjBE,OAAO,CAACD,OAAO,CAACd,OAAO,CAAC,CACxBgB,GAAG,CACDC,QAAQ,IACNH,OAAO,CAACI,MAAM,GACXJ,OAAO,CAACI,MAAM,CACZD,QACF,CAAC,GACDA,QAAQ,CAACE,KACjB,CAAC,CAAA;AACL,CAAA;AAEO,SAASV,gBAAgBA,CAC9BK,OAAsC,GAAG,EAAE,EAC3Cb,WAAyB,EACU;EACnC,MAAMD,OAAO,GAAGK,QAAQ,CAAC,MAAMC,cAAc,CAACQ,OAAO,CAACd,OAAO,CAAC,CAAC,CAAA;EAC/D,MAAMa,aAAa,GAAG,CAACZ,WAAW,IAAIE,cAAc,EAAE,EAAEiB,gBAAgB,EAAE,CAAA;EAC1E,MAAMD,KAAK,GAAGE,GAAG,CAACT,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAmB,CAAA;AACtE,EAAA,MAAMQ,WAAW,GAAGT,aAAa,CAACU,SAAS,CAAC,MAAM;AAChD,IAAA,MAAMC,MAAM,GAAGZ,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;IAChDK,KAAK,CAACR,KAAK,GAAGa,MAAM,CAAA;AACtB,GAAC,CAAC,CAAA;EAEFC,KAAK,CACHzB,OAAO,EACP,MAAM;IACJmB,KAAK,CAACR,KAAK,GAAGC,SAAS,CAACC,aAAa,EAAEC,OAAO,CAAC,CAAA;AACjD,GAAC,EACD;AAAEY,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,cAAc,CAAC,MAAM;AACnBL,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,OAAOM,QAAQ,CAACT,KAAK,CAAC,CAAA;AACxB;;;;"}
@@ -0,0 +1,63 @@
1
+ 'use strict';
2
+
3
+ var queryCore = require('@tanstack/query-core');
4
+ var vueDemi = require('vue-demi');
5
+ var useQueryClient = require('./useQueryClient.cjs');
6
+ var utils = require('./utils.cjs');
7
+
8
+ /* eslint-disable @typescript-eslint/no-explicit-any */
9
+
10
+ // This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.
11
+ // `placeholderData` function does not have a parameter
12
+ // Avoid TS depth-limit error in case of large array literal
13
+ /**
14
+ * UseQueriesOptions reducer recursively unwraps function arguments to infer/enforce type param
15
+ */
16
+ /**
17
+ * UseQueriesResults reducer recursively maps type param to results
18
+ */
19
+ function useQueries({
20
+ queries,
21
+ ...options
22
+ }, queryClient) {
23
+ const client = queryClient || useQueryClient.useQueryClient();
24
+ const defaultedQueries = vueDemi.computed(() => utils.cloneDeepUnref(queries).map(queryOptions => {
25
+ const defaulted = client.defaultQueryOptions(queryOptions);
26
+ defaulted._optimisticResults = client.isRestoring.value ? 'isRestoring' : 'optimistic';
27
+ return defaulted;
28
+ }));
29
+ const observer = new queryCore.QueriesObserver(client, defaultedQueries.value, options);
30
+ const [, getCombinedResult] = observer.getOptimisticResult(defaultedQueries.value);
31
+ const state = vueDemi.ref(getCombinedResult());
32
+ let unsubscribe = () => {
33
+ // noop
34
+ };
35
+ vueDemi.watch(client.isRestoring, isRestoring => {
36
+ if (!isRestoring) {
37
+ unsubscribe();
38
+ unsubscribe = observer.subscribe(() => {
39
+ const [, getCombinedResultRestoring] = observer.getOptimisticResult(defaultedQueries.value);
40
+ state.value = getCombinedResultRestoring();
41
+ });
42
+ // Subscription would not fire for persisted results
43
+ const [, getCombinedResultPersisted] = observer.getOptimisticResult(defaultedQueries.value);
44
+ state.value = getCombinedResultPersisted();
45
+ }
46
+ }, {
47
+ immediate: true
48
+ });
49
+ vueDemi.watch([defaultedQueries], () => {
50
+ observer.setQueries(defaultedQueries.value, options);
51
+ const [, getCombinedResultPersisted] = observer.getOptimisticResult(defaultedQueries.value);
52
+ state.value = getCombinedResultPersisted();
53
+ }, {
54
+ deep: true
55
+ });
56
+ vueDemi.onScopeDispose(() => {
57
+ unsubscribe();
58
+ });
59
+ return vueDemi.readonly(state);
60
+ }
61
+
62
+ exports.useQueries = useQueries;
63
+ //# sourceMappingURL=useQueries.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useQueries.cjs","sources":["../../src/useQueries.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { QueriesObserver } from '@tanstack/query-core'\nimport type {\n QueriesPlaceholderDataFunction,\n QueryKey,\n QueriesObserverOptions,\n QueryFunction,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport type { Ref } from 'vue-demi'\nimport { computed, onScopeDispose, readonly, ref, watch } from 'vue-demi'\n\nimport { useQueryClient } from './useQueryClient'\nimport { cloneDeepUnref } from './utils'\nimport type { UseQueryOptions } from './useQuery'\nimport type { QueryClient } from './queryClient'\nimport type { DistributiveOmit, MaybeRefDeep } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype UseQueryOptionsForUseQueries<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = DistributiveOmit<\n UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? UseQueryOptionsForUseQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? UseQueryOptionsForUseQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TQueryFnData, TQueryKey>\n : // Fallback\n UseQueryOptionsForUseQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? QueryObserverResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? QueryObserverResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? QueryObserverResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? QueryObserverResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? QueryObserverResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? QueryObserverResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? QueryObserverResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? QueryObserverResult<TQueryFnData>\n : // Fallback\n QueryObserverResult\n\n/**\n * UseQueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type UseQueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? UseQueryOptionsForUseQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? UseQueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends UseQueryOptionsForUseQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n UseQueryOptionsForUseQueries[]\n\n/**\n * UseQueriesResults reducer recursively maps type param to results\n */\nexport type UseQueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? QueryObserverResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? UseQueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends UseQueryOptionsForUseQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n QueryObserverResult<unknown extends TData ? TQueryFnData : TData, TError>[]\n : // Fallback\n QueryObserverResult[]\n\ntype UseQueriesOptionsArg<T extends any[]> = readonly [...UseQueriesOptions<T>]\n\nexport function useQueries<\n T extends any[],\n TCombinedResult = UseQueriesResults<T>,\n>(\n {\n queries,\n ...options\n }: {\n queries: MaybeRefDeep<UseQueriesOptionsArg<T>>\n combine?: (result: UseQueriesResults<T>) => TCombinedResult\n },\n queryClient?: QueryClient,\n): Readonly<Ref<TCombinedResult>> {\n const client = queryClient || useQueryClient()\n\n const defaultedQueries = computed(() =>\n cloneDeepUnref(queries).map((queryOptions) => {\n const defaulted = client.defaultQueryOptions(queryOptions)\n defaulted._optimisticResults = client.isRestoring.value\n ? 'isRestoring'\n : 'optimistic'\n\n return defaulted\n }),\n )\n\n const observer = new QueriesObserver<TCombinedResult>(\n client,\n defaultedQueries.value,\n options as QueriesObserverOptions<TCombinedResult>,\n )\n const [, getCombinedResult] = observer.getOptimisticResult(\n defaultedQueries.value,\n )\n const state = ref(getCombinedResult()) as Ref<TCombinedResult>\n\n let unsubscribe = () => {\n // noop\n }\n\n watch(\n client.isRestoring,\n (isRestoring) => {\n if (!isRestoring) {\n unsubscribe()\n unsubscribe = observer.subscribe(() => {\n const [, getCombinedResultRestoring] = observer.getOptimisticResult(\n defaultedQueries.value,\n )\n state.value = getCombinedResultRestoring()\n })\n // Subscription would not fire for persisted results\n const [, getCombinedResultPersisted] = observer.getOptimisticResult(\n defaultedQueries.value,\n )\n state.value = getCombinedResultPersisted()\n }\n },\n { immediate: true },\n )\n\n watch(\n [defaultedQueries],\n () => {\n observer.setQueries(\n defaultedQueries.value,\n options as QueriesObserverOptions<TCombinedResult>,\n )\n const [, getCombinedResultPersisted] = observer.getOptimisticResult(\n defaultedQueries.value,\n )\n state.value = getCombinedResultPersisted()\n },\n { deep: true },\n )\n\n onScopeDispose(() => {\n unsubscribe()\n })\n\n return readonly(state) as Readonly<Ref<TCombinedResult>>\n}\n"],"names":["useQueries","queries","options","queryClient","client","useQueryClient","defaultedQueries","computed","cloneDeepUnref","map","queryOptions","defaulted","defaultQueryOptions","_optimisticResults","isRestoring","value","observer","QueriesObserver","getCombinedResult","getOptimisticResult","state","ref","unsubscribe","watch","subscribe","getCombinedResultRestoring","getCombinedResultPersisted","immediate","setQueries","deep","onScopeDispose","readonly"],"mappings":";;;;;;;AAAA;;AAkBA;AACA;AAaA;AA2DA;AACA;AACA;AA2BA;AACA;AACA;AA0BO,SAASA,UAAUA,CAIxB;EACEC,OAAO;EACP,GAAGC,OAAAA;AAIL,CAAC,EACDC,WAAyB,EACO;AAChC,EAAA,MAAMC,MAAM,GAAGD,WAAW,IAAIE,6BAAc,EAAE,CAAA;AAE9C,EAAA,MAAMC,gBAAgB,GAAGC,gBAAQ,CAAC,MAChCC,oBAAc,CAACP,OAAO,CAAC,CAACQ,GAAG,CAAEC,YAAY,IAAK;AAC5C,IAAA,MAAMC,SAAS,GAAGP,MAAM,CAACQ,mBAAmB,CAACF,YAAY,CAAC,CAAA;IAC1DC,SAAS,CAACE,kBAAkB,GAAGT,MAAM,CAACU,WAAW,CAACC,KAAK,GACnD,aAAa,GACb,YAAY,CAAA;AAEhB,IAAA,OAAOJ,SAAS,CAAA;AAClB,GAAC,CACH,CAAC,CAAA;AAED,EAAA,MAAMK,QAAQ,GAAG,IAAIC,yBAAe,CAClCb,MAAM,EACNE,gBAAgB,CAACS,KAAK,EACtBb,OACF,CAAC,CAAA;EACD,MAAM,GAAGgB,iBAAiB,CAAC,GAAGF,QAAQ,CAACG,mBAAmB,CACxDb,gBAAgB,CAACS,KACnB,CAAC,CAAA;AACD,EAAA,MAAMK,KAAK,GAAGC,WAAG,CAACH,iBAAiB,EAAE,CAAyB,CAAA;EAE9D,IAAII,WAAW,GAAGA,MAAM;AACtB;GACD,CAAA;AAEDC,EAAAA,aAAK,CACHnB,MAAM,CAACU,WAAW,EACjBA,WAAW,IAAK;IACf,IAAI,CAACA,WAAW,EAAE;AAChBQ,MAAAA,WAAW,EAAE,CAAA;AACbA,MAAAA,WAAW,GAAGN,QAAQ,CAACQ,SAAS,CAAC,MAAM;QACrC,MAAM,GAAGC,0BAA0B,CAAC,GAAGT,QAAQ,CAACG,mBAAmB,CACjEb,gBAAgB,CAACS,KACnB,CAAC,CAAA;AACDK,QAAAA,KAAK,CAACL,KAAK,GAAGU,0BAA0B,EAAE,CAAA;AAC5C,OAAC,CAAC,CAAA;AACF;MACA,MAAM,GAAGC,0BAA0B,CAAC,GAAGV,QAAQ,CAACG,mBAAmB,CACjEb,gBAAgB,CAACS,KACnB,CAAC,CAAA;AACDK,MAAAA,KAAK,CAACL,KAAK,GAAGW,0BAA0B,EAAE,CAAA;AAC5C,KAAA;AACF,GAAC,EACD;AAAEC,IAAAA,SAAS,EAAE,IAAA;AAAK,GACpB,CAAC,CAAA;AAEDJ,EAAAA,aAAK,CACH,CAACjB,gBAAgB,CAAC,EAClB,MAAM;IACJU,QAAQ,CAACY,UAAU,CACjBtB,gBAAgB,CAACS,KAAK,EACtBb,OACF,CAAC,CAAA;IACD,MAAM,GAAGwB,0BAA0B,CAAC,GAAGV,QAAQ,CAACG,mBAAmB,CACjEb,gBAAgB,CAACS,KACnB,CAAC,CAAA;AACDK,IAAAA,KAAK,CAACL,KAAK,GAAGW,0BAA0B,EAAE,CAAA;AAC5C,GAAC,EACD;AAAEG,IAAAA,IAAI,EAAE,IAAA;AAAK,GACf,CAAC,CAAA;AAEDC,EAAAA,sBAAc,CAAC,MAAM;AACnBR,IAAAA,WAAW,EAAE,CAAA;AACf,GAAC,CAAC,CAAA;EAEF,OAAOS,gBAAQ,CAACX,KAAK,CAAC,CAAA;AACxB;;;;"}
@@ -1,14 +1,13 @@
1
- import type { QueriesPlaceholderDataFunction, QueryKey } from '@tanstack/query-core';
1
+ import type { QueriesPlaceholderDataFunction, QueryKey, QueryFunction, QueryObserverResult } from '@tanstack/query-core';
2
2
  import type { Ref } from 'vue-demi';
3
- import type { QueryFunction, QueryObserverResult } from '@tanstack/query-core';
4
3
  import type { UseQueryOptions } from './useQuery';
5
4
  import type { QueryClient } from './queryClient';
6
5
  import type { DistributiveOmit, MaybeRefDeep } from './types';
7
- declare type UseQueryOptionsForUseQueries<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = DistributiveOmit<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'placeholderData'> & {
6
+ type UseQueryOptionsForUseQueries<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = DistributiveOmit<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'placeholderData'> & {
8
7
  placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>;
9
8
  };
10
- declare type MAXIMUM_DEPTH = 20;
11
- declare type GetOptions<T> = T extends {
9
+ type MAXIMUM_DEPTH = 20;
10
+ type GetOptions<T> = T extends {
12
11
  queryFnData: infer TQueryFnData;
13
12
  error?: infer TError;
14
13
  data: infer TData;
@@ -24,7 +23,7 @@ declare type GetOptions<T> = T extends {
24
23
  } ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TData, TQueryKey> : T extends {
25
24
  queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>;
26
25
  } ? UseQueryOptionsForUseQueries<TQueryFnData, Error, TQueryFnData, TQueryKey> : UseQueryOptionsForUseQueries;
27
- declare type GetResults<T> = T extends {
26
+ type GetResults<T> = T extends {
28
27
  queryFnData: any;
29
28
  error?: infer TError;
30
29
  data: infer TData;
@@ -43,13 +42,15 @@ declare type GetResults<T> = T extends {
43
42
  /**
44
43
  * UseQueriesOptions reducer recursively unwraps function arguments to infer/enforce type param
45
44
  */
46
- export declare type UseQueriesOptions<T extends any[], Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? UseQueryOptionsForUseQueries[] : T extends [] ? [] : T extends [infer Head] ? [...Result, GetOptions<Head>] : T extends [infer Head, ...infer Tail] ? UseQueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]> : unknown[] extends T ? T : T extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, infer TQueryKey>[] ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>[] : UseQueryOptionsForUseQueries[];
45
+ export type UseQueriesOptions<T extends any[], Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? UseQueryOptionsForUseQueries[] : T extends [] ? [] : T extends [infer Head] ? [...Result, GetOptions<Head>] : T extends [infer Head, ...infer Tail] ? UseQueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]> : unknown[] extends T ? T : T extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, infer TQueryKey>[] ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>[] : UseQueryOptionsForUseQueries[];
47
46
  /**
48
47
  * UseQueriesResults reducer recursively maps type param to results
49
48
  */
50
- export declare type UseQueriesResults<T extends any[], Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? QueryObserverResult[] : T extends [] ? [] : T extends [infer Head] ? [...Result, GetResults<Head>] : T extends [infer Head, ...infer Tail] ? UseQueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]> : T extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, any>[] ? QueryObserverResult<unknown extends TData ? TQueryFnData : TData, TError>[] : QueryObserverResult[];
51
- declare type UseQueriesOptionsArg<T extends any[]> = readonly [...UseQueriesOptions<T>];
52
- export declare function useQueries<T extends any[]>({ queries, }: {
49
+ export type UseQueriesResults<T extends any[], Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? QueryObserverResult[] : T extends [] ? [] : T extends [infer Head] ? [...Result, GetResults<Head>] : T extends [infer Head, ...infer Tail] ? UseQueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]> : T extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, any>[] ? QueryObserverResult<unknown extends TData ? TQueryFnData : TData, TError>[] : QueryObserverResult[];
50
+ type UseQueriesOptionsArg<T extends any[]> = readonly [...UseQueriesOptions<T>];
51
+ export declare function useQueries<T extends any[], TCombinedResult = UseQueriesResults<T>>({ queries, ...options }: {
53
52
  queries: MaybeRefDeep<UseQueriesOptionsArg<T>>;
54
- }, queryClient?: QueryClient): Readonly<Ref<UseQueriesResults<T>>>;
53
+ combine?: (result: UseQueriesResults<T>) => TCombinedResult;
54
+ }, queryClient?: QueryClient): Readonly<Ref<TCombinedResult>>;
55
55
  export {};
56
+ //# sourceMappingURL=useQueries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useQueries.d.ts","sourceRoot":"","sources":["../../src/useQueries.ts"],"names":[],"mappings":"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"}