@tanstack/react-query 4.39.0 → 4.39.2

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 (150) hide show
  1. package/build/lib/Hydrate.esm.js +32 -0
  2. package/build/lib/Hydrate.esm.js.map +1 -0
  3. package/build/lib/Hydrate.js +57 -0
  4. package/build/lib/Hydrate.js.map +1 -0
  5. package/build/lib/Hydrate.mjs +32 -0
  6. package/build/lib/Hydrate.mjs.map +1 -0
  7. package/build/lib/QueryClientProvider.esm.js +66 -0
  8. package/build/lib/QueryClientProvider.esm.js.map +1 -0
  9. package/build/lib/QueryClientProvider.js +92 -0
  10. package/build/lib/QueryClientProvider.js.map +1 -0
  11. package/build/lib/QueryClientProvider.mjs +66 -0
  12. package/build/lib/QueryClientProvider.mjs.map +1 -0
  13. package/build/lib/QueryErrorResetBoundary.esm.js +33 -0
  14. package/build/lib/QueryErrorResetBoundary.esm.js.map +1 -0
  15. package/build/lib/QueryErrorResetBoundary.js +58 -0
  16. package/build/lib/QueryErrorResetBoundary.js.map +1 -0
  17. package/build/lib/QueryErrorResetBoundary.mjs +33 -0
  18. package/build/lib/QueryErrorResetBoundary.mjs.map +1 -0
  19. package/build/lib/errorBoundaryUtils.esm.js +28 -0
  20. package/build/lib/errorBoundaryUtils.esm.js.map +1 -0
  21. package/build/lib/errorBoundaryUtils.js +54 -0
  22. package/build/lib/errorBoundaryUtils.js.map +1 -0
  23. package/build/lib/errorBoundaryUtils.mjs +28 -0
  24. package/build/lib/errorBoundaryUtils.mjs.map +1 -0
  25. package/build/lib/index.esm.js +16 -0
  26. package/build/lib/index.esm.js.map +1 -0
  27. package/build/lib/index.js +47 -0
  28. package/build/lib/index.js.map +1 -0
  29. package/build/lib/index.mjs +16 -0
  30. package/build/lib/index.mjs.map +1 -0
  31. package/build/lib/isRestoring.esm.js +9 -0
  32. package/build/lib/isRestoring.esm.js.map +1 -0
  33. package/build/lib/isRestoring.js +34 -0
  34. package/build/lib/isRestoring.js.map +1 -0
  35. package/build/lib/isRestoring.mjs +9 -0
  36. package/build/lib/isRestoring.mjs.map +1 -0
  37. package/build/lib/queryOptions.d.ts +2 -2
  38. package/build/lib/queryOptions.esm.js +6 -0
  39. package/build/lib/queryOptions.esm.js.map +1 -0
  40. package/build/lib/queryOptions.js +10 -0
  41. package/build/lib/queryOptions.js.map +1 -0
  42. package/build/lib/queryOptions.mjs +6 -0
  43. package/build/lib/queryOptions.mjs.map +1 -0
  44. package/build/lib/reactBatchedUpdates.esm.js +7 -0
  45. package/build/lib/reactBatchedUpdates.esm.js.map +1 -0
  46. package/build/lib/reactBatchedUpdates.js +31 -0
  47. package/build/lib/reactBatchedUpdates.js.map +1 -0
  48. package/build/lib/reactBatchedUpdates.mjs +7 -0
  49. package/build/lib/reactBatchedUpdates.mjs.map +1 -0
  50. package/build/lib/reactBatchedUpdates.native.esm.js +2 -0
  51. package/build/lib/reactBatchedUpdates.native.esm.js.map +1 -0
  52. package/build/lib/reactBatchedUpdates.native.js +13 -0
  53. package/build/lib/reactBatchedUpdates.native.js.map +1 -0
  54. package/build/lib/reactBatchedUpdates.native.mjs +2 -0
  55. package/build/lib/reactBatchedUpdates.native.mjs.map +1 -0
  56. package/build/lib/setBatchUpdatesFn.esm.js +5 -0
  57. package/build/lib/setBatchUpdatesFn.esm.js.map +1 -0
  58. package/build/lib/setBatchUpdatesFn.js +7 -0
  59. package/build/lib/setBatchUpdatesFn.js.map +1 -0
  60. package/build/lib/setBatchUpdatesFn.mjs +5 -0
  61. package/build/lib/setBatchUpdatesFn.mjs.map +1 -0
  62. package/build/lib/suspense.esm.js +24 -0
  63. package/build/lib/suspense.esm.js.map +1 -0
  64. package/build/lib/suspense.js +31 -0
  65. package/build/lib/suspense.js.map +1 -0
  66. package/build/lib/suspense.mjs +24 -0
  67. package/build/lib/suspense.mjs.map +1 -0
  68. package/build/lib/useBaseQuery.esm.js +72 -0
  69. package/build/lib/useBaseQuery.esm.js.map +1 -0
  70. package/build/lib/useBaseQuery.js +96 -0
  71. package/build/lib/useBaseQuery.js.map +1 -0
  72. package/build/lib/useBaseQuery.mjs +72 -0
  73. package/build/lib/useBaseQuery.mjs.map +1 -0
  74. package/build/lib/useInfiniteQuery.esm.js +11 -0
  75. package/build/lib/useInfiniteQuery.esm.js.map +1 -0
  76. package/build/lib/useInfiniteQuery.js +15 -0
  77. package/build/lib/useInfiniteQuery.js.map +1 -0
  78. package/build/lib/useInfiniteQuery.mjs +11 -0
  79. package/build/lib/useInfiniteQuery.mjs.map +1 -0
  80. package/build/lib/useIsFetching.esm.js +17 -0
  81. package/build/lib/useIsFetching.esm.js.map +1 -0
  82. package/build/lib/useIsFetching.js +41 -0
  83. package/build/lib/useIsFetching.js.map +1 -0
  84. package/build/lib/useIsFetching.mjs +17 -0
  85. package/build/lib/useIsFetching.mjs.map +1 -0
  86. package/build/lib/useIsMutating.esm.js +17 -0
  87. package/build/lib/useIsMutating.esm.js.map +1 -0
  88. package/build/lib/useIsMutating.js +41 -0
  89. package/build/lib/useIsMutating.js.map +1 -0
  90. package/build/lib/useIsMutating.mjs +17 -0
  91. package/build/lib/useIsMutating.mjs.map +1 -0
  92. package/build/lib/useMutation.esm.js +35 -0
  93. package/build/lib/useMutation.esm.js.map +1 -0
  94. package/build/lib/useMutation.js +59 -0
  95. package/build/lib/useMutation.js.map +1 -0
  96. package/build/lib/useMutation.mjs +35 -0
  97. package/build/lib/useMutation.mjs.map +1 -0
  98. package/build/lib/useQueries.esm.js +81 -0
  99. package/build/lib/useQueries.esm.js.map +1 -0
  100. package/build/lib/useQueries.js +105 -0
  101. package/build/lib/useQueries.js.map +1 -0
  102. package/build/lib/useQueries.mjs +81 -0
  103. package/build/lib/useQueries.mjs.map +1 -0
  104. package/build/lib/useQuery.d.ts +0 -3
  105. package/build/lib/useQuery.esm.js +12 -0
  106. package/build/lib/useQuery.esm.js.map +1 -0
  107. package/build/lib/useQuery.js +16 -0
  108. package/build/lib/useQuery.js.map +1 -0
  109. package/build/lib/useQuery.mjs +12 -0
  110. package/build/lib/useQuery.mjs.map +1 -0
  111. package/build/lib/useSuspenseQueries.esm.js +20 -0
  112. package/build/lib/useSuspenseQueries.esm.js.map +1 -0
  113. package/build/lib/useSuspenseQueries.js +24 -0
  114. package/build/lib/useSuspenseQueries.js.map +1 -0
  115. package/build/lib/useSuspenseQueries.mjs +20 -0
  116. package/build/lib/useSuspenseQueries.mjs.map +1 -0
  117. package/build/lib/useSuspenseQuery.d.ts +1 -3
  118. package/build/lib/useSuspenseQuery.esm.js +15 -0
  119. package/build/lib/useSuspenseQuery.esm.js.map +1 -0
  120. package/build/lib/useSuspenseQuery.js +19 -0
  121. package/build/lib/useSuspenseQuery.js.map +1 -0
  122. package/build/lib/useSuspenseQuery.mjs +15 -0
  123. package/build/lib/useSuspenseQuery.mjs.map +1 -0
  124. package/build/lib/useSyncExternalStore.esm.js +7 -0
  125. package/build/lib/useSyncExternalStore.esm.js.map +1 -0
  126. package/build/lib/useSyncExternalStore.js +11 -0
  127. package/build/lib/useSyncExternalStore.js.map +1 -0
  128. package/build/lib/useSyncExternalStore.mjs +7 -0
  129. package/build/lib/useSyncExternalStore.mjs.map +1 -0
  130. package/build/lib/useSyncExternalStore.native.esm.js +2 -0
  131. package/build/lib/useSyncExternalStore.native.esm.js.map +1 -0
  132. package/build/lib/useSyncExternalStore.native.js +13 -0
  133. package/build/lib/useSyncExternalStore.native.js.map +1 -0
  134. package/build/lib/useSyncExternalStore.native.mjs +2 -0
  135. package/build/lib/useSyncExternalStore.native.mjs.map +1 -0
  136. package/build/lib/utils.esm.js +11 -0
  137. package/build/lib/utils.esm.js.map +1 -0
  138. package/build/lib/utils.js +15 -0
  139. package/build/lib/utils.js.map +1 -0
  140. package/build/lib/utils.mjs +11 -0
  141. package/build/lib/utils.mjs.map +1 -0
  142. package/build/umd/index.development.js +4049 -0
  143. package/build/umd/index.development.js.map +1 -0
  144. package/build/umd/index.production.js +2 -0
  145. package/build/umd/index.production.js.map +1 -0
  146. package/package.json +2 -2
  147. package/src/__tests__/useQuery.types.test.tsx +35 -0
  148. package/src/queryOptions.ts +2 -2
  149. package/src/useQuery.ts +0 -20
  150. package/src/useSuspenseQuery.ts +1 -4
@@ -0,0 +1,28 @@
1
+ 'use client';
2
+ import * as React from 'react';
3
+ import { shouldThrowError } from './utils.mjs';
4
+
5
+ const ensurePreventErrorBoundaryRetry = (options, errorResetBoundary) => {
6
+ if (options.suspense || options.useErrorBoundary) {
7
+ // Prevent retrying failed query if the error boundary has not been reset yet
8
+ if (!errorResetBoundary.isReset()) {
9
+ options.retryOnMount = false;
10
+ }
11
+ }
12
+ };
13
+ const useClearResetErrorBoundary = errorResetBoundary => {
14
+ React.useEffect(() => {
15
+ errorResetBoundary.clearReset();
16
+ }, [errorResetBoundary]);
17
+ };
18
+ const getHasError = ({
19
+ result,
20
+ errorResetBoundary,
21
+ useErrorBoundary,
22
+ query
23
+ }) => {
24
+ return result.isError && !errorResetBoundary.isReset() && !result.isFetching && shouldThrowError(useErrorBoundary, [result.error, query]);
25
+ };
26
+
27
+ export { ensurePreventErrorBoundaryRetry, getHasError, useClearResetErrorBoundary };
28
+ //# sourceMappingURL=errorBoundaryUtils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorBoundaryUtils.mjs","sources":["../../src/errorBoundaryUtils.ts"],"sourcesContent":["'use client'\nimport * as React from 'react'\nimport { shouldThrowError } from './utils'\nimport type {\n DefaultedQueryObserverOptions,\n Query,\n QueryKey,\n QueryObserverResult,\n UseErrorBoundary,\n} from '@tanstack/query-core'\nimport type { QueryErrorResetBoundaryValue } from './QueryErrorResetBoundary'\n\nexport const ensurePreventErrorBoundaryRetry = <\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n errorResetBoundary: QueryErrorResetBoundaryValue,\n) => {\n if (options.suspense || options.useErrorBoundary) {\n // Prevent retrying failed query if the error boundary has not been reset yet\n if (!errorResetBoundary.isReset()) {\n options.retryOnMount = false\n }\n }\n}\n\nexport const useClearResetErrorBoundary = (\n errorResetBoundary: QueryErrorResetBoundaryValue,\n) => {\n React.useEffect(() => {\n errorResetBoundary.clearReset()\n }, [errorResetBoundary])\n}\n\nexport const getHasError = <\n TData,\n TError,\n TQueryFnData,\n TQueryData,\n TQueryKey extends QueryKey,\n>({\n result,\n errorResetBoundary,\n useErrorBoundary,\n query,\n}: {\n result: QueryObserverResult<TData, TError>\n errorResetBoundary: QueryErrorResetBoundaryValue\n useErrorBoundary: UseErrorBoundary<\n TQueryFnData,\n TError,\n TQueryData,\n TQueryKey\n >\n query: Query<TQueryFnData, TError, TQueryData, TQueryKey>\n}) => {\n return (\n result.isError &&\n !errorResetBoundary.isReset() &&\n !result.isFetching &&\n shouldThrowError(useErrorBoundary, [result.error, query])\n )\n}\n"],"names":["useClearResetErrorBoundary","errorResetBoundary","query"],"mappings":";;;;;AA4BE;AACE;AACA;;AAEC;AACF;AACF;AAEYA;;AAITC;;AAEH;AAEM;;;;AAULC;AAJA;;AAsBD;;"}
@@ -0,0 +1,16 @@
1
+ import './setBatchUpdatesFn.esm.js';
2
+ export * from '@tanstack/query-core';
3
+ export { useQueries } from './useQueries.esm.js';
4
+ export { useQuery } from './useQuery.esm.js';
5
+ export { useSuspenseQuery } from './useSuspenseQuery.esm.js';
6
+ export { useSuspenseQueries } from './useSuspenseQueries.esm.js';
7
+ export { QueryClientProvider, defaultContext, useQueryClient } from './QueryClientProvider.esm.js';
8
+ export { Hydrate, useHydrate } from './Hydrate.esm.js';
9
+ export { QueryErrorResetBoundary, useQueryErrorResetBoundary } from './QueryErrorResetBoundary.esm.js';
10
+ export { useIsFetching } from './useIsFetching.esm.js';
11
+ export { useIsMutating } from './useIsMutating.esm.js';
12
+ export { useMutation } from './useMutation.esm.js';
13
+ export { useInfiniteQuery } from './useInfiniteQuery.esm.js';
14
+ export { IsRestoringProvider, useIsRestoring } from './isRestoring.esm.js';
15
+ export { queryOptions } from './queryOptions.esm.js';
16
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('./setBatchUpdatesFn.js');
6
+ var queryCore = require('@tanstack/query-core');
7
+ var useQueries = require('./useQueries.js');
8
+ var useQuery = require('./useQuery.js');
9
+ var useSuspenseQuery = require('./useSuspenseQuery.js');
10
+ var useSuspenseQueries = require('./useSuspenseQueries.js');
11
+ var QueryClientProvider = require('./QueryClientProvider.js');
12
+ var Hydrate = require('./Hydrate.js');
13
+ var QueryErrorResetBoundary = require('./QueryErrorResetBoundary.js');
14
+ var useIsFetching = require('./useIsFetching.js');
15
+ var useIsMutating = require('./useIsMutating.js');
16
+ var useMutation = require('./useMutation.js');
17
+ var useInfiniteQuery = require('./useInfiniteQuery.js');
18
+ var isRestoring = require('./isRestoring.js');
19
+ var queryOptions = require('./queryOptions.js');
20
+
21
+
22
+
23
+ exports.useQueries = useQueries.useQueries;
24
+ exports.useQuery = useQuery.useQuery;
25
+ exports.useSuspenseQuery = useSuspenseQuery.useSuspenseQuery;
26
+ exports.useSuspenseQueries = useSuspenseQueries.useSuspenseQueries;
27
+ exports.QueryClientProvider = QueryClientProvider.QueryClientProvider;
28
+ exports.defaultContext = QueryClientProvider.defaultContext;
29
+ exports.useQueryClient = QueryClientProvider.useQueryClient;
30
+ exports.Hydrate = Hydrate.Hydrate;
31
+ exports.useHydrate = Hydrate.useHydrate;
32
+ exports.QueryErrorResetBoundary = QueryErrorResetBoundary.QueryErrorResetBoundary;
33
+ exports.useQueryErrorResetBoundary = QueryErrorResetBoundary.useQueryErrorResetBoundary;
34
+ exports.useIsFetching = useIsFetching.useIsFetching;
35
+ exports.useIsMutating = useIsMutating.useIsMutating;
36
+ exports.useMutation = useMutation.useMutation;
37
+ exports.useInfiniteQuery = useInfiniteQuery.useInfiniteQuery;
38
+ exports.IsRestoringProvider = isRestoring.IsRestoringProvider;
39
+ exports.useIsRestoring = isRestoring.useIsRestoring;
40
+ exports.queryOptions = queryOptions.queryOptions;
41
+ Object.keys(queryCore).forEach(function (k) {
42
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
43
+ enumerable: true,
44
+ get: function () { return queryCore[k]; }
45
+ });
46
+ });
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,16 @@
1
+ import './setBatchUpdatesFn.mjs';
2
+ export * from '@tanstack/query-core';
3
+ export { useQueries } from './useQueries.mjs';
4
+ export { useQuery } from './useQuery.mjs';
5
+ export { useSuspenseQuery } from './useSuspenseQuery.mjs';
6
+ export { useSuspenseQueries } from './useSuspenseQueries.mjs';
7
+ export { QueryClientProvider, defaultContext, useQueryClient } from './QueryClientProvider.mjs';
8
+ export { Hydrate, useHydrate } from './Hydrate.mjs';
9
+ export { QueryErrorResetBoundary, useQueryErrorResetBoundary } from './QueryErrorResetBoundary.mjs';
10
+ export { useIsFetching } from './useIsFetching.mjs';
11
+ export { useIsMutating } from './useIsMutating.mjs';
12
+ export { useMutation } from './useMutation.mjs';
13
+ export { useInfiniteQuery } from './useInfiniteQuery.mjs';
14
+ export { IsRestoringProvider, useIsRestoring } from './isRestoring.mjs';
15
+ export { queryOptions } from './queryOptions.mjs';
16
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import * as React from 'react';
3
+
4
+ const IsRestoringContext = /*#__PURE__*/React.createContext(false);
5
+ const useIsRestoring = () => React.useContext(IsRestoringContext);
6
+ const IsRestoringProvider = IsRestoringContext.Provider;
7
+
8
+ export { IsRestoringProvider, useIsRestoring };
9
+ //# sourceMappingURL=isRestoring.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isRestoring.esm.js","sources":["../../src/isRestoring.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nconst IsRestoringContext = React.createContext(false)\n\nexport const useIsRestoring = () => React.useContext(IsRestoringContext)\nexport const IsRestoringProvider = IsRestoringContext.Provider\n"],"names":["IsRestoringProvider"],"mappings":";;;AAGA;AAEO;AACMA;;"}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var React = require('react');
7
+
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n["default"] = e;
23
+ return Object.freeze(n);
24
+ }
25
+
26
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
27
+
28
+ const IsRestoringContext = /*#__PURE__*/React__namespace.createContext(false);
29
+ const useIsRestoring = () => React__namespace.useContext(IsRestoringContext);
30
+ const IsRestoringProvider = IsRestoringContext.Provider;
31
+
32
+ exports.IsRestoringProvider = IsRestoringProvider;
33
+ exports.useIsRestoring = useIsRestoring;
34
+ //# sourceMappingURL=isRestoring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isRestoring.js","sources":["../../src/isRestoring.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nconst IsRestoringContext = React.createContext(false)\n\nexport const useIsRestoring = () => React.useContext(IsRestoringContext)\nexport const IsRestoringProvider = IsRestoringContext.Provider\n"],"names":["IsRestoringProvider"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AAEO;AACMA;;;"}
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import * as React from 'react';
3
+
4
+ const IsRestoringContext = /*#__PURE__*/React.createContext(false);
5
+ const useIsRestoring = () => React.useContext(IsRestoringContext);
6
+ const IsRestoringProvider = IsRestoringContext.Provider;
7
+
8
+ export { IsRestoringProvider, useIsRestoring };
9
+ //# sourceMappingURL=isRestoring.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isRestoring.mjs","sources":["../../src/isRestoring.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nconst IsRestoringContext = React.createContext(false)\n\nexport const useIsRestoring = () => React.useContext(IsRestoringContext)\nexport const IsRestoringProvider = IsRestoringContext.Provider\n"],"names":["IsRestoringProvider"],"mappings":";;;AAGA;AAEO;AACMA;;"}
@@ -2,10 +2,10 @@ import type { InitialDataFunction, NonUndefinedGuard, OmitKeyof, QueryKey, WithR
2
2
  import type { UseQueryOptions } from './types';
3
3
  declare type UseQueryOptionsOmitted<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = OmitKeyof<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'onSuccess' | 'onError' | 'onSettled' | 'refetchInterval'>;
4
4
  declare type ProhibitedQueryOptionsKeyInV5 = keyof Pick<UseQueryOptionsOmitted, 'useErrorBoundary' | 'suspense' | 'getNextPageParam' | 'getPreviousPageParam'>;
5
- export declare type UndefinedInitialDataOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {
5
+ declare type UndefinedInitialDataOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {
6
6
  initialData?: undefined | InitialDataFunction<NonUndefinedGuard<TQueryFnData>> | NonUndefinedGuard<TQueryFnData>;
7
7
  };
8
- export declare type DefinedInitialDataOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {
8
+ declare type DefinedInitialDataOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {
9
9
  initialData: NonUndefinedGuard<TQueryFnData> | (() => NonUndefinedGuard<TQueryFnData>);
10
10
  };
11
11
  export declare function queryOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: WithRequired<OmitKeyof<DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>, ProhibitedQueryOptionsKeyInV5>, 'queryKey'>): WithRequired<DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>, 'queryKey'>;
@@ -0,0 +1,6 @@
1
+ function queryOptions(options) {
2
+ return options;
3
+ }
4
+
5
+ export { queryOptions };
6
+ //# sourceMappingURL=queryOptions.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryOptions.esm.js","sources":["../../src/queryOptions.ts"],"sourcesContent":["import type {\n InitialDataFunction,\n NonUndefinedGuard,\n OmitKeyof,\n QueryKey,\n WithRequired,\n} from '@tanstack/query-core'\nimport type { UseQueryOptions } from './types'\n\ntype UseQueryOptionsOmitted<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = OmitKeyof<\n UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'onSuccess' | 'onError' | 'onSettled' | 'refetchInterval'\n>\n\ntype ProhibitedQueryOptionsKeyInV5 = keyof Pick<\n UseQueryOptionsOmitted,\n 'useErrorBoundary' | 'suspense' | 'getNextPageParam' | 'getPreviousPageParam'\n>\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?:\n | undefined\n | InitialDataFunction<NonUndefinedGuard<TQueryFnData>>\n | NonUndefinedGuard<TQueryFnData>\n}\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {\n initialData:\n | NonUndefinedGuard<TQueryFnData>\n | (() => NonUndefinedGuard<TQueryFnData>)\n}\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: WithRequired<\n OmitKeyof<\n DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n ProhibitedQueryOptionsKeyInV5\n >,\n 'queryKey'\n >,\n): WithRequired<\n DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'queryKey'\n>\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: WithRequired<\n OmitKeyof<\n UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n ProhibitedQueryOptionsKeyInV5\n >,\n 'queryKey'\n >,\n): WithRequired<\n UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'queryKey'\n>\n\nexport function queryOptions(options: unknown) {\n return options\n}\n"],"names":["queryOptions","options"],"mappings":"AAmFO,SAASA,YAAT,CAAsBC,OAAtB,EAAwC;AAC7C,EAAA,OAAOA,OAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ function queryOptions(options) {
6
+ return options;
7
+ }
8
+
9
+ exports.queryOptions = queryOptions;
10
+ //# sourceMappingURL=queryOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryOptions.js","sources":["../../src/queryOptions.ts"],"sourcesContent":["import type {\n InitialDataFunction,\n NonUndefinedGuard,\n OmitKeyof,\n QueryKey,\n WithRequired,\n} from '@tanstack/query-core'\nimport type { UseQueryOptions } from './types'\n\ntype UseQueryOptionsOmitted<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = OmitKeyof<\n UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'onSuccess' | 'onError' | 'onSettled' | 'refetchInterval'\n>\n\ntype ProhibitedQueryOptionsKeyInV5 = keyof Pick<\n UseQueryOptionsOmitted,\n 'useErrorBoundary' | 'suspense' | 'getNextPageParam' | 'getPreviousPageParam'\n>\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?:\n | undefined\n | InitialDataFunction<NonUndefinedGuard<TQueryFnData>>\n | NonUndefinedGuard<TQueryFnData>\n}\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {\n initialData:\n | NonUndefinedGuard<TQueryFnData>\n | (() => NonUndefinedGuard<TQueryFnData>)\n}\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: WithRequired<\n OmitKeyof<\n DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n ProhibitedQueryOptionsKeyInV5\n >,\n 'queryKey'\n >,\n): WithRequired<\n DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'queryKey'\n>\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: WithRequired<\n OmitKeyof<\n UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n ProhibitedQueryOptionsKeyInV5\n >,\n 'queryKey'\n >,\n): WithRequired<\n UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'queryKey'\n>\n\nexport function queryOptions(options: unknown) {\n return options\n}\n"],"names":["queryOptions","options"],"mappings":";;;;AAmFO,SAASA,YAAT,CAAsBC,OAAtB,EAAwC;AAC7C,EAAA,OAAOA,OAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,6 @@
1
+ function queryOptions(options) {
2
+ return options;
3
+ }
4
+
5
+ export { queryOptions };
6
+ //# sourceMappingURL=queryOptions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryOptions.mjs","sources":["../../src/queryOptions.ts"],"sourcesContent":["import type {\n InitialDataFunction,\n NonUndefinedGuard,\n OmitKeyof,\n QueryKey,\n WithRequired,\n} from '@tanstack/query-core'\nimport type { UseQueryOptions } from './types'\n\ntype UseQueryOptionsOmitted<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = OmitKeyof<\n UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'onSuccess' | 'onError' | 'onSettled' | 'refetchInterval'\n>\n\ntype ProhibitedQueryOptionsKeyInV5 = keyof Pick<\n UseQueryOptionsOmitted,\n 'useErrorBoundary' | 'suspense' | 'getNextPageParam' | 'getPreviousPageParam'\n>\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?:\n | undefined\n | InitialDataFunction<NonUndefinedGuard<TQueryFnData>>\n | NonUndefinedGuard<TQueryFnData>\n}\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = UseQueryOptionsOmitted<TQueryFnData, TError, TData, TQueryKey> & {\n initialData:\n | NonUndefinedGuard<TQueryFnData>\n | (() => NonUndefinedGuard<TQueryFnData>)\n}\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: WithRequired<\n OmitKeyof<\n DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n ProhibitedQueryOptionsKeyInV5\n >,\n 'queryKey'\n >,\n): WithRequired<\n DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'queryKey'\n>\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: WithRequired<\n OmitKeyof<\n UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n ProhibitedQueryOptionsKeyInV5\n >,\n 'queryKey'\n >,\n): WithRequired<\n UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'queryKey'\n>\n\nexport function queryOptions(options: unknown) {\n return options\n}\n"],"names":["queryOptions","options"],"mappings":"AAmFO,SAASA,YAAT,CAAsBC,OAAtB,EAAwC;AAC7C,EAAA,OAAOA,OAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import * as ReactDOM from 'react-dom';
3
+
4
+ const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates;
5
+
6
+ export { unstable_batchedUpdates };
7
+ //# sourceMappingURL=reactBatchedUpdates.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactBatchedUpdates.esm.js","sources":["../../src/reactBatchedUpdates.ts"],"sourcesContent":["'use client'\nimport * as ReactDOM from 'react-dom'\n\nexport const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates\n"],"names":["unstable_batchedUpdates"],"mappings":";;;AAGaA;;"}
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var ReactDOM = require('react-dom');
7
+
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n["default"] = e;
23
+ return Object.freeze(n);
24
+ }
25
+
26
+ var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
27
+
28
+ const unstable_batchedUpdates = ReactDOM__namespace.unstable_batchedUpdates;
29
+
30
+ exports.unstable_batchedUpdates = unstable_batchedUpdates;
31
+ //# sourceMappingURL=reactBatchedUpdates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactBatchedUpdates.js","sources":["../../src/reactBatchedUpdates.ts"],"sourcesContent":["'use client'\nimport * as ReactDOM from 'react-dom'\n\nexport const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates\n"],"names":["unstable_batchedUpdates"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGaA;;"}
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import * as ReactDOM from 'react-dom';
3
+
4
+ const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates;
5
+
6
+ export { unstable_batchedUpdates };
7
+ //# sourceMappingURL=reactBatchedUpdates.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactBatchedUpdates.mjs","sources":["../../src/reactBatchedUpdates.ts"],"sourcesContent":["'use client'\nimport * as ReactDOM from 'react-dom'\n\nexport const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates\n"],"names":["unstable_batchedUpdates"],"mappings":";;;AAGaA;;"}
@@ -0,0 +1,2 @@
1
+ export { unstable_batchedUpdates } from 'react-native';
2
+ //# sourceMappingURL=reactBatchedUpdates.native.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactBatchedUpdates.native.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var reactNative = require('react-native');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, 'unstable_batchedUpdates', {
10
+ enumerable: true,
11
+ get: function () { return reactNative.unstable_batchedUpdates; }
12
+ });
13
+ //# sourceMappingURL=reactBatchedUpdates.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactBatchedUpdates.native.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ export { unstable_batchedUpdates } from 'react-native';
2
+ //# sourceMappingURL=reactBatchedUpdates.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactBatchedUpdates.native.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { notifyManager } from '@tanstack/query-core';
2
+ import { unstable_batchedUpdates } from './reactBatchedUpdates.esm.js';
3
+
4
+ notifyManager.setBatchNotifyFunction(unstable_batchedUpdates);
5
+ //# sourceMappingURL=setBatchUpdatesFn.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setBatchUpdatesFn.esm.js","sources":["../../src/setBatchUpdatesFn.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { unstable_batchedUpdates } from './reactBatchedUpdates'\n\nnotifyManager.setBatchNotifyFunction(unstable_batchedUpdates)\n"],"names":["notifyManager","setBatchNotifyFunction","unstable_batchedUpdates"],"mappings":";;;AAGAA,aAAa,CAACC,sBAAd,CAAqCC,uBAArC,CAAA"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ var queryCore = require('@tanstack/query-core');
4
+ var reactBatchedUpdates = require('./reactBatchedUpdates');
5
+
6
+ queryCore.notifyManager.setBatchNotifyFunction(reactBatchedUpdates.unstable_batchedUpdates);
7
+ //# sourceMappingURL=setBatchUpdatesFn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setBatchUpdatesFn.js","sources":["../../src/setBatchUpdatesFn.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { unstable_batchedUpdates } from './reactBatchedUpdates'\n\nnotifyManager.setBatchNotifyFunction(unstable_batchedUpdates)\n"],"names":["notifyManager","setBatchNotifyFunction","unstable_batchedUpdates"],"mappings":";;;;;AAGAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAd,CAAqCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAArC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { notifyManager } from '@tanstack/query-core';
2
+ import { unstable_batchedUpdates } from './reactBatchedUpdates.mjs';
3
+
4
+ notifyManager.setBatchNotifyFunction(unstable_batchedUpdates);
5
+ //# sourceMappingURL=setBatchUpdatesFn.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setBatchUpdatesFn.mjs","sources":["../../src/setBatchUpdatesFn.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { unstable_batchedUpdates } from './reactBatchedUpdates'\n\nnotifyManager.setBatchNotifyFunction(unstable_batchedUpdates)\n"],"names":["notifyManager","setBatchNotifyFunction","unstable_batchedUpdates"],"mappings":";;;AAGAA,aAAa,CAACC,sBAAd,CAAqCC,uBAArC,CAAA"}
@@ -0,0 +1,24 @@
1
+ const ensureStaleTime = defaultedOptions => {
2
+ if (defaultedOptions.suspense) {
3
+ // Always set stale time when using suspense to prevent
4
+ // fetching again when directly mounting after suspending
5
+ if (typeof defaultedOptions.staleTime !== 'number') {
6
+ defaultedOptions.staleTime = 1000;
7
+ }
8
+ }
9
+ };
10
+ const willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;
11
+ const shouldSuspend = (defaultedOptions, result, isRestoring) => (defaultedOptions == null ? void 0 : defaultedOptions.suspense) && willFetch(result, isRestoring);
12
+ const fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).then(({
13
+ data
14
+ }) => {
15
+ defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);
16
+ defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);
17
+ }).catch(error => {
18
+ errorResetBoundary.clearReset();
19
+ defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);
20
+ defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);
21
+ });
22
+
23
+ export { ensureStaleTime, fetchOptimistic, shouldSuspend, willFetch };
24
+ //# sourceMappingURL=suspense.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suspense.esm.js","sources":["../../src/suspense.ts"],"sourcesContent":["import type { DefaultedQueryObserverOptions } from '@tanstack/query-core'\nimport type { QueryObserver } from '@tanstack/query-core'\nimport type { QueryErrorResetBoundaryValue } from './QueryErrorResetBoundary'\nimport type { QueryObserverResult } from '@tanstack/query-core'\nimport type { QueryKey } from '@tanstack/query-core'\n\nexport const ensureStaleTime = (\n defaultedOptions: DefaultedQueryObserverOptions<any, any, any, any, any>,\n) => {\n if (defaultedOptions.suspense) {\n // Always set stale time when using suspense to prevent\n // fetching again when directly mounting after suspending\n if (typeof defaultedOptions.staleTime !== 'number') {\n defaultedOptions.staleTime = 1000\n }\n }\n}\n\nexport const willFetch = (\n result: QueryObserverResult<any, any>,\n isRestoring: boolean,\n) => result.isLoading && result.isFetching && !isRestoring\n\nexport const shouldSuspend = (\n defaultedOptions:\n | DefaultedQueryObserverOptions<any, any, any, any, any>\n | undefined,\n result: QueryObserverResult<any, any>,\n isRestoring: boolean,\n) => defaultedOptions?.suspense && willFetch(result, isRestoring)\n\nexport const fetchOptimistic = <\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n defaultedOptions: DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n observer: QueryObserver<TQueryFnData, TError, TData, TQueryData, TQueryKey>,\n errorResetBoundary: QueryErrorResetBoundaryValue,\n) =>\n observer\n .fetchOptimistic(defaultedOptions)\n .then(({ data }) => {\n defaultedOptions.onSuccess?.(data as TData)\n defaultedOptions.onSettled?.(data, null)\n })\n .catch((error) => {\n errorResetBoundary.clearReset()\n defaultedOptions.onError?.(error)\n defaultedOptions.onSettled?.(undefined, error)\n })\n"],"names":["ensureStaleTime","defaultedOptions","suspense","staleTime","willFetch","result","isRestoring","isLoading","isFetching","shouldSuspend","fetchOptimistic","observer","errorResetBoundary","then","data","onSuccess","onSettled","catch","error","clearReset","onError","undefined"],"mappings":"AAMaA,MAAAA,eAAe,GAC1BC,gBAD6B,IAE1B;EACH,IAAIA,gBAAgB,CAACC,QAArB,EAA+B;AAC7B;AACA;AACA,IAAA,IAAI,OAAOD,gBAAgB,CAACE,SAAxB,KAAsC,QAA1C,EAAoD;MAClDF,gBAAgB,CAACE,SAAjB,GAA6B,IAA7B,CAAA;AACD,KAAA;AACF,GAAA;AACF,EAVM;MAYMC,SAAS,GAAG,CACvBC,MADuB,EAEvBC,WAFuB,KAGpBD,MAAM,CAACE,SAAP,IAAoBF,MAAM,CAACG,UAA3B,IAAyC,CAACF,YAHxC;AAKA,MAAMG,aAAa,GAAG,CAC3BR,gBAD2B,EAI3BI,MAJ2B,EAK3BC,WAL2B,KAMxB,CAAAL,gBAAgB,IAAhB,IAAA,GAAA,KAAA,CAAA,GAAAA,gBAAgB,CAAEC,QAAlB,KAA8BE,SAAS,CAACC,MAAD,EAASC,WAAT,EANrC;MAQMI,eAAe,GAAG,CAO7BT,gBAP6B,EAc7BU,QAd6B,EAe7BC,kBAf6B,KAiB7BD,QAAQ,CACLD,eADH,CACmBT,gBADnB,CAEGY,CAAAA,IAFH,CAEQ,CAAC;AAAEC,EAAAA,IAAAA;AAAF,CAAD,KAAc;AAClBb,EAAAA,gBAAgB,CAACc,SAAjB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAd,gBAAgB,CAACc,SAAjB,CAA6BD,IAA7B,CAAA,CAAA;EACAb,gBAAgB,CAACe,SAAjB,IAAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAACe,SAAjB,CAA6BF,IAA7B,EAAmC,IAAnC,CAAA,CAAA;AACD,CALH,CAMGG,CAAAA,KANH,CAMUC,KAAD,IAAW;AAChBN,EAAAA,kBAAkB,CAACO,UAAnB,EAAA,CAAA;AACAlB,EAAAA,gBAAgB,CAACmB,OAAjB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAnB,gBAAgB,CAACmB,OAAjB,CAA2BF,KAA3B,CAAA,CAAA;EACAjB,gBAAgB,CAACe,SAAjB,IAAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAACe,SAAjB,CAA6BK,SAA7B,EAAwCH,KAAxC,CAAA,CAAA;AACD,CAVH;;;;"}
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const ensureStaleTime = defaultedOptions => {
6
+ if (defaultedOptions.suspense) {
7
+ // Always set stale time when using suspense to prevent
8
+ // fetching again when directly mounting after suspending
9
+ if (typeof defaultedOptions.staleTime !== 'number') {
10
+ defaultedOptions.staleTime = 1000;
11
+ }
12
+ }
13
+ };
14
+ const willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;
15
+ const shouldSuspend = (defaultedOptions, result, isRestoring) => (defaultedOptions == null ? void 0 : defaultedOptions.suspense) && willFetch(result, isRestoring);
16
+ const fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).then(({
17
+ data
18
+ }) => {
19
+ defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);
20
+ defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);
21
+ }).catch(error => {
22
+ errorResetBoundary.clearReset();
23
+ defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);
24
+ defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);
25
+ });
26
+
27
+ exports.ensureStaleTime = ensureStaleTime;
28
+ exports.fetchOptimistic = fetchOptimistic;
29
+ exports.shouldSuspend = shouldSuspend;
30
+ exports.willFetch = willFetch;
31
+ //# sourceMappingURL=suspense.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suspense.js","sources":["../../src/suspense.ts"],"sourcesContent":["import type { DefaultedQueryObserverOptions } from '@tanstack/query-core'\nimport type { QueryObserver } from '@tanstack/query-core'\nimport type { QueryErrorResetBoundaryValue } from './QueryErrorResetBoundary'\nimport type { QueryObserverResult } from '@tanstack/query-core'\nimport type { QueryKey } from '@tanstack/query-core'\n\nexport const ensureStaleTime = (\n defaultedOptions: DefaultedQueryObserverOptions<any, any, any, any, any>,\n) => {\n if (defaultedOptions.suspense) {\n // Always set stale time when using suspense to prevent\n // fetching again when directly mounting after suspending\n if (typeof defaultedOptions.staleTime !== 'number') {\n defaultedOptions.staleTime = 1000\n }\n }\n}\n\nexport const willFetch = (\n result: QueryObserverResult<any, any>,\n isRestoring: boolean,\n) => result.isLoading && result.isFetching && !isRestoring\n\nexport const shouldSuspend = (\n defaultedOptions:\n | DefaultedQueryObserverOptions<any, any, any, any, any>\n | undefined,\n result: QueryObserverResult<any, any>,\n isRestoring: boolean,\n) => defaultedOptions?.suspense && willFetch(result, isRestoring)\n\nexport const fetchOptimistic = <\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n defaultedOptions: DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n observer: QueryObserver<TQueryFnData, TError, TData, TQueryData, TQueryKey>,\n errorResetBoundary: QueryErrorResetBoundaryValue,\n) =>\n observer\n .fetchOptimistic(defaultedOptions)\n .then(({ data }) => {\n defaultedOptions.onSuccess?.(data as TData)\n defaultedOptions.onSettled?.(data, null)\n })\n .catch((error) => {\n errorResetBoundary.clearReset()\n defaultedOptions.onError?.(error)\n defaultedOptions.onSettled?.(undefined, error)\n })\n"],"names":["ensureStaleTime","defaultedOptions","suspense","staleTime","willFetch","result","isRestoring","isLoading","isFetching","shouldSuspend","fetchOptimistic","observer","errorResetBoundary","then","data","onSuccess","onSettled","catch","error","clearReset","onError","undefined"],"mappings":";;;;AAMaA,MAAAA,eAAe,GAC1BC,gBAD6B,IAE1B;EACH,IAAIA,gBAAgB,CAACC,QAArB,EAA+B;AAC7B;AACA;AACA,IAAA,IAAI,OAAOD,gBAAgB,CAACE,SAAxB,KAAsC,QAA1C,EAAoD;MAClDF,gBAAgB,CAACE,SAAjB,GAA6B,IAA7B,CAAA;AACD,KAAA;AACF,GAAA;AACF,EAVM;MAYMC,SAAS,GAAG,CACvBC,MADuB,EAEvBC,WAFuB,KAGpBD,MAAM,CAACE,SAAP,IAAoBF,MAAM,CAACG,UAA3B,IAAyC,CAACF,YAHxC;AAKA,MAAMG,aAAa,GAAG,CAC3BR,gBAD2B,EAI3BI,MAJ2B,EAK3BC,WAL2B,KAMxB,CAAAL,gBAAgB,IAAhB,IAAA,GAAA,KAAA,CAAA,GAAAA,gBAAgB,CAAEC,QAAlB,KAA8BE,SAAS,CAACC,MAAD,EAASC,WAAT,EANrC;MAQMI,eAAe,GAAG,CAO7BT,gBAP6B,EAc7BU,QAd6B,EAe7BC,kBAf6B,KAiB7BD,QAAQ,CACLD,eADH,CACmBT,gBADnB,CAEGY,CAAAA,IAFH,CAEQ,CAAC;AAAEC,EAAAA,IAAAA;AAAF,CAAD,KAAc;AAClBb,EAAAA,gBAAgB,CAACc,SAAjB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAd,gBAAgB,CAACc,SAAjB,CAA6BD,IAA7B,CAAA,CAAA;EACAb,gBAAgB,CAACe,SAAjB,IAAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAACe,SAAjB,CAA6BF,IAA7B,EAAmC,IAAnC,CAAA,CAAA;AACD,CALH,CAMGG,CAAAA,KANH,CAMUC,KAAD,IAAW;AAChBN,EAAAA,kBAAkB,CAACO,UAAnB,EAAA,CAAA;AACAlB,EAAAA,gBAAgB,CAACmB,OAAjB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAnB,gBAAgB,CAACmB,OAAjB,CAA2BF,KAA3B,CAAA,CAAA;EACAjB,gBAAgB,CAACe,SAAjB,IAAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAACe,SAAjB,CAA6BK,SAA7B,EAAwCH,KAAxC,CAAA,CAAA;AACD,CAVH;;;;;;;"}
@@ -0,0 +1,24 @@
1
+ const ensureStaleTime = defaultedOptions => {
2
+ if (defaultedOptions.suspense) {
3
+ // Always set stale time when using suspense to prevent
4
+ // fetching again when directly mounting after suspending
5
+ if (typeof defaultedOptions.staleTime !== 'number') {
6
+ defaultedOptions.staleTime = 1000;
7
+ }
8
+ }
9
+ };
10
+ const willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;
11
+ const shouldSuspend = (defaultedOptions, result, isRestoring) => (defaultedOptions == null ? void 0 : defaultedOptions.suspense) && willFetch(result, isRestoring);
12
+ const fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).then(({
13
+ data
14
+ }) => {
15
+ defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);
16
+ defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);
17
+ }).catch(error => {
18
+ errorResetBoundary.clearReset();
19
+ defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);
20
+ defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);
21
+ });
22
+
23
+ export { ensureStaleTime, fetchOptimistic, shouldSuspend, willFetch };
24
+ //# sourceMappingURL=suspense.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suspense.mjs","sources":["../../src/suspense.ts"],"sourcesContent":["import type { DefaultedQueryObserverOptions } from '@tanstack/query-core'\nimport type { QueryObserver } from '@tanstack/query-core'\nimport type { QueryErrorResetBoundaryValue } from './QueryErrorResetBoundary'\nimport type { QueryObserverResult } from '@tanstack/query-core'\nimport type { QueryKey } from '@tanstack/query-core'\n\nexport const ensureStaleTime = (\n defaultedOptions: DefaultedQueryObserverOptions<any, any, any, any, any>,\n) => {\n if (defaultedOptions.suspense) {\n // Always set stale time when using suspense to prevent\n // fetching again when directly mounting after suspending\n if (typeof defaultedOptions.staleTime !== 'number') {\n defaultedOptions.staleTime = 1000\n }\n }\n}\n\nexport const willFetch = (\n result: QueryObserverResult<any, any>,\n isRestoring: boolean,\n) => result.isLoading && result.isFetching && !isRestoring\n\nexport const shouldSuspend = (\n defaultedOptions:\n | DefaultedQueryObserverOptions<any, any, any, any, any>\n | undefined,\n result: QueryObserverResult<any, any>,\n isRestoring: boolean,\n) => defaultedOptions?.suspense && willFetch(result, isRestoring)\n\nexport const fetchOptimistic = <\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n defaultedOptions: DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n observer: QueryObserver<TQueryFnData, TError, TData, TQueryData, TQueryKey>,\n errorResetBoundary: QueryErrorResetBoundaryValue,\n) =>\n observer\n .fetchOptimistic(defaultedOptions)\n .then(({ data }) => {\n defaultedOptions.onSuccess?.(data as TData)\n defaultedOptions.onSettled?.(data, null)\n })\n .catch((error) => {\n errorResetBoundary.clearReset()\n defaultedOptions.onError?.(error)\n defaultedOptions.onSettled?.(undefined, error)\n })\n"],"names":["ensureStaleTime","defaultedOptions","suspense","staleTime","willFetch","result","isRestoring","isLoading","isFetching","shouldSuspend","fetchOptimistic","observer","errorResetBoundary","then","data","onSuccess","onSettled","catch","error","clearReset","onError","undefined"],"mappings":"AAMaA,MAAAA,eAAe,GAC1BC,gBAD6B,IAE1B;EACH,IAAIA,gBAAgB,CAACC,QAArB,EAA+B;AAC7B;AACA;AACA,IAAA,IAAI,OAAOD,gBAAgB,CAACE,SAAxB,KAAsC,QAA1C,EAAoD;MAClDF,gBAAgB,CAACE,SAAjB,GAA6B,IAA7B,CAAA;AACD,KAAA;AACF,GAAA;AACF,EAVM;MAYMC,SAAS,GAAG,CACvBC,MADuB,EAEvBC,WAFuB,KAGpBD,MAAM,CAACE,SAAP,IAAoBF,MAAM,CAACG,UAA3B,IAAyC,CAACF,YAHxC;AAKA,MAAMG,aAAa,GAAG,CAC3BR,gBAD2B,EAI3BI,MAJ2B,EAK3BC,WAL2B,KAMxB,CAAAL,gBAAgB,IAAhB,IAAA,GAAA,KAAA,CAAA,GAAAA,gBAAgB,CAAEC,QAAlB,KAA8BE,SAAS,CAACC,MAAD,EAASC,WAAT,EANrC;MAQMI,eAAe,GAAG,CAO7BT,gBAP6B,EAc7BU,QAd6B,EAe7BC,kBAf6B,KAiB7BD,QAAQ,CACLD,eADH,CACmBT,gBADnB,CAEGY,CAAAA,IAFH,CAEQ,CAAC;AAAEC,EAAAA,IAAAA;AAAF,CAAD,KAAc;AAClBb,EAAAA,gBAAgB,CAACc,SAAjB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAd,gBAAgB,CAACc,SAAjB,CAA6BD,IAA7B,CAAA,CAAA;EACAb,gBAAgB,CAACe,SAAjB,IAAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAACe,SAAjB,CAA6BF,IAA7B,EAAmC,IAAnC,CAAA,CAAA;AACD,CALH,CAMGG,CAAAA,KANH,CAMUC,KAAD,IAAW;AAChBN,EAAAA,kBAAkB,CAACO,UAAnB,EAAA,CAAA;AACAlB,EAAAA,gBAAgB,CAACmB,OAAjB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAnB,gBAAgB,CAACmB,OAAjB,CAA2BF,KAA3B,CAAA,CAAA;EACAjB,gBAAgB,CAACe,SAAjB,IAAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAACe,SAAjB,CAA6BK,SAA7B,EAAwCH,KAAxC,CAAA,CAAA;AACD,CAVH;;;;"}
@@ -0,0 +1,72 @@
1
+ 'use client';
2
+ import * as React from 'react';
3
+ import { notifyManager } from '@tanstack/query-core';
4
+ import { useSyncExternalStore } from './useSyncExternalStore.esm.js';
5
+ import { useQueryErrorResetBoundary } from './QueryErrorResetBoundary.esm.js';
6
+ import { useQueryClient } from './QueryClientProvider.esm.js';
7
+ import { useIsRestoring } from './isRestoring.esm.js';
8
+ import { ensurePreventErrorBoundaryRetry, useClearResetErrorBoundary, getHasError } from './errorBoundaryUtils.esm.js';
9
+ import { ensureStaleTime, shouldSuspend, fetchOptimistic } from './suspense.esm.js';
10
+
11
+ function useBaseQuery(options, Observer) {
12
+ const queryClient = useQueryClient({
13
+ context: options.context
14
+ });
15
+ const isRestoring = useIsRestoring();
16
+ const errorResetBoundary = useQueryErrorResetBoundary();
17
+ const defaultedOptions = queryClient.defaultQueryOptions(options); // Make sure results are optimistically set in fetching state before subscribing or updating options
18
+
19
+ defaultedOptions._optimisticResults = isRestoring ? 'isRestoring' : 'optimistic'; // Include callbacks in batch renders
20
+
21
+ if (defaultedOptions.onError) {
22
+ defaultedOptions.onError = notifyManager.batchCalls(defaultedOptions.onError);
23
+ }
24
+
25
+ if (defaultedOptions.onSuccess) {
26
+ defaultedOptions.onSuccess = notifyManager.batchCalls(defaultedOptions.onSuccess);
27
+ }
28
+
29
+ if (defaultedOptions.onSettled) {
30
+ defaultedOptions.onSettled = notifyManager.batchCalls(defaultedOptions.onSettled);
31
+ }
32
+
33
+ ensureStaleTime(defaultedOptions);
34
+ ensurePreventErrorBoundaryRetry(defaultedOptions, errorResetBoundary);
35
+ useClearResetErrorBoundary(errorResetBoundary);
36
+ const [observer] = React.useState(() => new Observer(queryClient, defaultedOptions));
37
+ const result = observer.getOptimisticResult(defaultedOptions);
38
+ useSyncExternalStore(React.useCallback(onStoreChange => {
39
+ const unsubscribe = isRestoring ? () => undefined : observer.subscribe(notifyManager.batchCalls(onStoreChange)); // Update result to make sure we did not miss any query updates
40
+ // between creating the observer and subscribing to it.
41
+
42
+ observer.updateResult();
43
+ return unsubscribe;
44
+ }, [observer, isRestoring]), () => observer.getCurrentResult(), () => observer.getCurrentResult());
45
+ React.useEffect(() => {
46
+ // Do not notify on updates because of changes in the options because
47
+ // these changes should already be reflected in the optimistic result.
48
+ observer.setOptions(defaultedOptions, {
49
+ listeners: false
50
+ });
51
+ }, [defaultedOptions, observer]); // Handle suspense
52
+
53
+ if (shouldSuspend(defaultedOptions, result, isRestoring)) {
54
+ throw fetchOptimistic(defaultedOptions, observer, errorResetBoundary);
55
+ } // Handle error boundary
56
+
57
+
58
+ if (getHasError({
59
+ result,
60
+ errorResetBoundary,
61
+ useErrorBoundary: defaultedOptions.useErrorBoundary,
62
+ query: observer.getCurrentQuery()
63
+ })) {
64
+ throw result.error;
65
+ } // Handle result property usage tracking
66
+
67
+
68
+ return !defaultedOptions.notifyOnChangeProps ? observer.trackResult(result) : result;
69
+ }
70
+
71
+ export { useBaseQuery };
72
+ //# sourceMappingURL=useBaseQuery.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBaseQuery.esm.js","sources":["../../src/useBaseQuery.ts"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport { notifyManager } from '@tanstack/query-core'\nimport { useSyncExternalStore } from './useSyncExternalStore'\nimport { useQueryErrorResetBoundary } from './QueryErrorResetBoundary'\nimport { useQueryClient } from './QueryClientProvider'\nimport { useIsRestoring } from './isRestoring'\nimport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary,\n} from './errorBoundaryUtils'\nimport { ensureStaleTime, fetchOptimistic, shouldSuspend } from './suspense'\nimport type { QueryKey, QueryObserver } from '@tanstack/query-core'\nimport type { UseBaseQueryOptions } from './types'\n\nexport function useBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: UseBaseQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n Observer: typeof QueryObserver,\n) {\n const queryClient = useQueryClient({ context: options.context })\n const isRestoring = useIsRestoring()\n const errorResetBoundary = useQueryErrorResetBoundary()\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n\n // Make sure results are optimistically set in fetching state before subscribing or updating options\n defaultedOptions._optimisticResults = isRestoring\n ? 'isRestoring'\n : 'optimistic'\n\n // Include callbacks in batch renders\n if (defaultedOptions.onError) {\n defaultedOptions.onError = notifyManager.batchCalls(\n defaultedOptions.onError,\n )\n }\n\n if (defaultedOptions.onSuccess) {\n defaultedOptions.onSuccess = notifyManager.batchCalls(\n defaultedOptions.onSuccess,\n )\n }\n\n if (defaultedOptions.onSettled) {\n defaultedOptions.onSettled = notifyManager.batchCalls(\n defaultedOptions.onSettled,\n )\n }\n\n ensureStaleTime(defaultedOptions)\n ensurePreventErrorBoundaryRetry(defaultedOptions, errorResetBoundary)\n\n useClearResetErrorBoundary(errorResetBoundary)\n\n const [observer] = React.useState(\n () =>\n new Observer<TQueryFnData, TError, TData, TQueryData, TQueryKey>(\n queryClient,\n defaultedOptions,\n ),\n )\n\n const result = observer.getOptimisticResult(defaultedOptions)\n\n useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => {\n const unsubscribe = isRestoring\n ? () => undefined\n : observer.subscribe(notifyManager.batchCalls(onStoreChange))\n\n // Update result to make sure we did not miss any query updates\n // between creating the observer and subscribing to it.\n observer.updateResult()\n\n return unsubscribe\n },\n [observer, isRestoring],\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult(),\n )\n\n React.useEffect(() => {\n // Do not notify on updates because of changes in the options because\n // these changes should already be reflected in the optimistic result.\n observer.setOptions(defaultedOptions, { listeners: false })\n }, [defaultedOptions, observer])\n\n // Handle suspense\n if (shouldSuspend(defaultedOptions, result, isRestoring)) {\n throw fetchOptimistic(defaultedOptions, observer, errorResetBoundary)\n }\n\n // Handle error boundary\n if (\n getHasError({\n result,\n errorResetBoundary,\n useErrorBoundary: defaultedOptions.useErrorBoundary,\n query: observer.getCurrentQuery(),\n })\n ) {\n throw result.error\n }\n\n // Handle result property usage tracking\n return !defaultedOptions.notifyOnChangeProps\n ? observer.trackResult(result)\n : result\n}\n"],"names":["ensurePreventErrorBoundaryRetry","useSyncExternalStore","observer","listeners"],"mappings":";;;;;;;;;;AAiBO;;;AAgB8B;;;;;;;;;AAelC;;;;AAMA;;;;AAMA;;;AAGDA;;AAIA;AAQA;AAEAC;AAGM;AAKA;;AACAC;AAEA;AACD;;AAQH;AACA;AACAA;AAAwCC;;AACzC;;;AAIC;AACD;;;AAGD;;;;;AACc;;AAQb;;;AAGD;AAGD;;"}