@suspensive/react-query-4 3.2.3 → 3.3.1
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.
- package/dist/SuspenseInfiniteQuery.cjs.map +1 -1
- package/dist/SuspenseInfiniteQuery.d.cts +0 -1
- package/dist/SuspenseInfiniteQuery.d.ts +0 -1
- package/dist/SuspenseInfiniteQuery.js +2 -2
- package/dist/SuspenseQueries.cjs +1 -33
- package/dist/SuspenseQueries.cjs.map +1 -1
- package/dist/SuspenseQueries.d.cts +1 -4
- package/dist/SuspenseQueries.d.ts +1 -4
- package/dist/SuspenseQueries.js +1 -2
- package/dist/SuspenseQuery.cjs +1 -28
- package/dist/SuspenseQuery.cjs.map +1 -1
- package/dist/SuspenseQuery.d.cts +1 -3
- package/dist/SuspenseQuery.d.ts +1 -3
- package/dist/SuspenseQuery.js +1 -2
- package/dist/{chunk-MMV3JWIQ.js → chunk-7AETAPCD.js} +2 -4
- package/dist/chunk-7AETAPCD.js.map +1 -0
- package/dist/chunk-A6D2XGKX.js +12 -0
- package/dist/chunk-A6D2XGKX.js.map +1 -0
- package/dist/{chunk-ENNHXSGH.js → chunk-BOUCJMBU.js} +1 -1
- package/dist/chunk-BOUCJMBU.js.map +1 -0
- package/dist/{chunk-PKNFF4OT.js → chunk-CLWCIHTL.js} +2 -2
- package/dist/{chunk-3OKEPIW3.js → chunk-IJFXQRYI.js} +1 -1
- package/dist/chunk-IJFXQRYI.js.map +1 -0
- package/dist/{chunk-D5FKB2PY.js → chunk-QYGYB5UC.js} +4 -4
- package/dist/chunk-QYGYB5UC.js.map +1 -0
- package/dist/chunk-WCKC4M3O.js +12 -0
- package/dist/chunk-WCKC4M3O.js.map +1 -0
- package/dist/chunk-YFVQ7O2B.js +12 -0
- package/dist/chunk-YFVQ7O2B.js.map +1 -0
- package/dist/index.cjs +20 -36
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +0 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.js +12 -12
- package/dist/infiniteQueryOptions.cjs.map +1 -1
- package/dist/infiniteQueryOptions.d.cts +9 -5
- package/dist/infiniteQueryOptions.d.ts +9 -5
- package/dist/infiniteQueryOptions.js +1 -1
- package/dist/queryOptions.cjs +2 -3
- package/dist/queryOptions.cjs.map +1 -1
- package/dist/queryOptions.d.cts +17 -11
- package/dist/queryOptions.d.ts +17 -11
- package/dist/queryOptions.js +1 -1
- package/dist/useSuspenseInfiniteQuery.cjs.map +1 -1
- package/dist/useSuspenseInfiniteQuery.d.cts +1 -2
- package/dist/useSuspenseInfiniteQuery.d.ts +1 -2
- package/dist/useSuspenseInfiniteQuery.js +1 -1
- package/dist/useSuspenseQueries.cjs +1 -28
- package/dist/useSuspenseQueries.cjs.map +1 -1
- package/dist/useSuspenseQueries.d.cts +25 -46
- package/dist/useSuspenseQueries.d.ts +25 -46
- package/dist/useSuspenseQueries.js +1 -1
- package/dist/useSuspenseQuery.cjs +1 -25
- package/dist/useSuspenseQuery.cjs.map +1 -1
- package/dist/useSuspenseQuery.d.cts +29 -10
- package/dist/useSuspenseQuery.d.ts +29 -10
- package/dist/useSuspenseQuery.js +1 -1
- package/package.json +4 -4
- package/src/PrefetchQuery.test-d.tsx +1 -1
- package/src/SuspenseQueries.test-d.tsx +1 -3
- package/src/SuspenseQueries.tsx +1 -1
- package/src/SuspenseQuery.test-d.tsx +5 -6
- package/src/SuspenseQuery.tsx +6 -2
- package/src/infiniteQueryOptions.ts +9 -4
- package/src/queryOptions.test-d.tsx +25 -15
- package/src/queryOptions.ts +23 -29
- package/src/usePrefetchQuery.test-d.tsx +1 -1
- package/src/useSuspenseInfiniteQuery.ts +1 -1
- package/src/useSuspenseQueries.test-d.ts +4 -6
- package/src/useSuspenseQueries.ts +29 -114
- package/src/useSuspenseQuery.test-d.ts +5 -6
- package/src/useSuspenseQuery.ts +33 -32
- package/dist/OmitKeyof-CFsZLI4k.d.cts +0 -3
- package/dist/OmitKeyof-CFsZLI4k.d.ts +0 -3
- package/dist/RequiredKeyof-CHKtWddC.d.cts +0 -5
- package/dist/RequiredKeyof-CHKtWddC.d.ts +0 -5
- package/dist/chunk-3E4WCXHQ.js +0 -21
- package/dist/chunk-3E4WCXHQ.js.map +0 -1
- package/dist/chunk-3OKEPIW3.js.map +0 -1
- package/dist/chunk-D5FKB2PY.js.map +0 -1
- package/dist/chunk-ENNHXSGH.js.map +0 -1
- package/dist/chunk-MMV3JWIQ.js.map +0 -1
- package/dist/chunk-NIWB6JKL.js +0 -24
- package/dist/chunk-NIWB6JKL.js.map +0 -1
- package/dist/chunk-UVSCLLGR.js +0 -11
- package/dist/chunk-UVSCLLGR.js.map +0 -1
- package/src/utility-types/OmitKeyof.test-d.ts +0 -176
- package/src/utility-types/OmitKeyof.ts +0 -11
- package/src/utility-types/RequiredKeyof.ts +0 -3
- package/src/utility-types/index.ts +0 -2
- /package/dist/{chunk-PKNFF4OT.js.map → chunk-CLWCIHTL.js.map} +0 -0
|
@@ -1,55 +1,34 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { UseSuspenseQueryOptions, UseSuspenseQueryResult } from './useSuspenseQuery.js';
|
|
3
|
-
import './OmitKeyof-CFsZLI4k.js';
|
|
1
|
+
import { useSuspenseQueries as useSuspenseQueries$1, SuspenseQueriesOptions as SuspenseQueriesOptions$1, SuspenseQueriesResults as SuspenseQueriesResults$1 } from '@tanstack/react-query';
|
|
4
2
|
|
|
5
|
-
type MAXIMUM_DEPTH = 20;
|
|
6
|
-
type GetSuspenseOptions<T> = T extends {
|
|
7
|
-
queryFnData: infer TQueryFnData;
|
|
8
|
-
error?: infer TError;
|
|
9
|
-
data: infer TData;
|
|
10
|
-
} ? UseSuspenseQueryOptions<TQueryFnData, TError, TData> : T extends {
|
|
11
|
-
queryFnData: infer TQueryFnData;
|
|
12
|
-
error?: infer TError;
|
|
13
|
-
} ? UseSuspenseQueryOptions<TQueryFnData, TError> : T extends {
|
|
14
|
-
data: infer TData;
|
|
15
|
-
error?: infer TError;
|
|
16
|
-
} ? UseSuspenseQueryOptions<unknown, TError, TData> : T extends [infer TQueryFnData, infer TError, infer TData] ? UseSuspenseQueryOptions<TQueryFnData, TError, TData> : T extends [infer TQueryFnData, infer TError] ? UseSuspenseQueryOptions<TQueryFnData, TError> : T extends [infer TQueryFnData] ? UseSuspenseQueryOptions<TQueryFnData> : T extends {
|
|
17
|
-
queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>;
|
|
18
|
-
select?: (data: any) => infer TData;
|
|
19
|
-
} ? UseSuspenseQueryOptions<TQueryFnData, unknown, TData, TQueryKey> : T extends {
|
|
20
|
-
queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>;
|
|
21
|
-
} ? UseSuspenseQueryOptions<TQueryFnData, unknown, TQueryFnData, TQueryKey> : UseSuspenseQueryOptions;
|
|
22
|
-
type GetSuspenseResults<T> = T extends {
|
|
23
|
-
queryFnData: any;
|
|
24
|
-
error?: infer TError;
|
|
25
|
-
data: infer TData;
|
|
26
|
-
} ? UseSuspenseQueryResult<TData, TError> : T extends {
|
|
27
|
-
queryFnData: infer TQueryFnData;
|
|
28
|
-
error?: infer TError;
|
|
29
|
-
} ? UseSuspenseQueryResult<TQueryFnData, TError> : T extends {
|
|
30
|
-
data: infer TData;
|
|
31
|
-
error?: infer TError;
|
|
32
|
-
} ? UseSuspenseQueryResult<TData, TError> : T extends [any, infer TError, infer TData] ? UseSuspenseQueryResult<TData, TError> : T extends [infer TQueryFnData, infer TError] ? UseSuspenseQueryResult<TQueryFnData, TError> : T extends [infer TQueryFnData] ? UseSuspenseQueryResult<TQueryFnData> : T extends {
|
|
33
|
-
queryFn?: QueryFunction<infer TQueryFnData, any>;
|
|
34
|
-
select?: (data: any) => infer TData;
|
|
35
|
-
} ? UseSuspenseQueryResult<unknown extends TData ? TQueryFnData : TData> : T extends {
|
|
36
|
-
queryFn?: QueryFunction<infer TQueryFnData, any>;
|
|
37
|
-
} ? UseSuspenseQueryResult<TQueryFnData> : UseSuspenseQueryResult;
|
|
38
3
|
/**
|
|
39
|
-
*
|
|
4
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
5
|
+
* @deprecated Use `SuspenseQueriesOptions` from \@tanstack/react-query@^4.40.0
|
|
6
|
+
* @example
|
|
7
|
+
* ```diff
|
|
8
|
+
* - import type { SuspenseQueriesOptions } from '@suspensive/react-query'
|
|
9
|
+
* + import type { SuspenseQueriesOptions } from '@tanstack/react-query'
|
|
10
|
+
* ```
|
|
40
11
|
*/
|
|
41
|
-
type SuspenseQueriesOptions<T extends Array<any>, TResult extends Array<any> = [], TDepth extends ReadonlyArray<number> = []> =
|
|
12
|
+
type SuspenseQueriesOptions<T extends Array<any>, TResult extends Array<any> = [], TDepth extends ReadonlyArray<number> = []> = SuspenseQueriesOptions$1<T, TResult, TDepth>;
|
|
42
13
|
/**
|
|
43
|
-
*
|
|
14
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
15
|
+
* @deprecated Use `SuspenseQueriesResults` from \@tanstack/react-query@^4.40.0
|
|
16
|
+
* @example
|
|
17
|
+
* ```diff
|
|
18
|
+
* - import type { SuspenseQueriesResults } from '@suspensive/react-query'
|
|
19
|
+
* + import type { SuspenseQueriesResults } from '@tanstack/react-query'
|
|
20
|
+
* ```
|
|
44
21
|
*/
|
|
45
|
-
type SuspenseQueriesResults<T extends Array<any>, TResult extends Array<any> = [], TDepth extends ReadonlyArray<number> = []> =
|
|
22
|
+
type SuspenseQueriesResults<T extends Array<any>, TResult extends Array<any> = [], TDepth extends ReadonlyArray<number> = []> = SuspenseQueriesResults$1<T, TResult, TDepth>;
|
|
46
23
|
/**
|
|
47
|
-
* This
|
|
48
|
-
* @
|
|
24
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
25
|
+
* @deprecated Use `useSuspenseQueries` from \@tanstack/react-query@^4.40.0
|
|
26
|
+
* @example
|
|
27
|
+
* ```diff
|
|
28
|
+
* - import { useSuspenseQueries } from '@suspensive/react-query'
|
|
29
|
+
* + import { useSuspenseQueries } from '@tanstack/react-query'
|
|
30
|
+
* ```
|
|
49
31
|
*/
|
|
50
|
-
declare
|
|
51
|
-
queries: readonly [...SuspenseQueriesOptions<T>];
|
|
52
|
-
context?: UseQueryOptions['context'];
|
|
53
|
-
}): SuspenseQueriesResults<T>;
|
|
32
|
+
declare const useSuspenseQueries: typeof useSuspenseQueries$1;
|
|
54
33
|
|
|
55
34
|
export { type SuspenseQueriesOptions, type SuspenseQueriesResults, useSuspenseQueries };
|
|
@@ -1,26 +1,9 @@
|
|
|
1
1
|
"use client"
|
|
2
2
|
"use strict";
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
|
-
var __defProps = Object.defineProperties;
|
|
5
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
7
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
8
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
-
var __spreadValues = (a, b) => {
|
|
13
|
-
for (var prop in b || (b = {}))
|
|
14
|
-
if (__hasOwnProp.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
if (__getOwnPropSymbols)
|
|
17
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
-
if (__propIsEnum.call(b, prop))
|
|
19
|
-
__defNormalProp(a, prop, b[prop]);
|
|
20
|
-
}
|
|
21
|
-
return a;
|
|
22
|
-
};
|
|
23
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
24
7
|
var __export = (target, all) => {
|
|
25
8
|
for (var name in all)
|
|
26
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -42,14 +25,7 @@ __export(useSuspenseQuery_exports, {
|
|
|
42
25
|
});
|
|
43
26
|
module.exports = __toCommonJS(useSuspenseQuery_exports);
|
|
44
27
|
var import_react_query = require("@tanstack/react-query");
|
|
45
|
-
|
|
46
|
-
return (0, import_react_query.useQuery)(__spreadProps(__spreadValues({}, options), {
|
|
47
|
-
enabled: true,
|
|
48
|
-
useErrorBoundary: true,
|
|
49
|
-
suspense: true,
|
|
50
|
-
networkMode: "always"
|
|
51
|
-
}));
|
|
52
|
-
}
|
|
28
|
+
var useSuspenseQuery = import_react_query.useSuspenseQuery;
|
|
53
29
|
// Annotate the CommonJS export names for ESM import in node:
|
|
54
30
|
0 && (module.exports = {
|
|
55
31
|
useSuspenseQuery
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/useSuspenseQuery.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../src/useSuspenseQuery.ts"],"sourcesContent":["import {\n type UseSuspenseQueryOptions as original_UseSuspenseQueryOptions,\n type UseSuspenseQueryResult as original_UseSuspenseQueryResult,\n useSuspenseQuery as original_useSuspenseQuery,\n} from '@tanstack/react-query'\n\n/**\n * This feature is officially supported in \\@tanstack/react-query@^4.40.0, You can proceed with the migration.\n * @deprecated Use `UseSuspenseQueryOptions` from \\@tanstack/react-query@^4.40.0\n * @example\n * ```diff\n * - import type { UseSuspenseQueryOptions } from '@suspensive/react-query'\n * + import type { UseSuspenseQueryOptions } from '@tanstack/react-query'\n * ```\n */\nexport type UseSuspenseQueryOptions = original_UseSuspenseQueryOptions\n\n/**\n * This feature is officially supported in \\@tanstack/react-query@^4.40.0, You can proceed with the migration.\n * @deprecated Use `UseSuspenseQueryResult` from \\@tanstack/react-query@^4.40.0\n * @example\n * ```diff\n * - import type { UseSuspenseQueryResult } from '@suspensive/react-query'\n * + import type { UseSuspenseQueryResult } from '@tanstack/react-query'\n * ```\n */\nexport type UseSuspenseQueryResult = original_UseSuspenseQueryResult\n\n/**\n * This feature is officially supported in \\@tanstack/react-query@^4.40.0, You can proceed with the migration.\n * @deprecated Use `useSuspenseQuery` from \\@tanstack/react-query@^4.40.0\n * @example\n * ```diff\n * - import { useSuspenseQuery } from '@suspensive/react-query'\n * + import { useSuspenseQuery } from '@tanstack/react-query'\n * ```\n */\nexport const useSuspenseQuery = original_useSuspenseQuery\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAIO;AAiCA,IAAM,mBAAmB,mBAAAA;","names":["original_useSuspenseQuery"]}
|
|
@@ -1,15 +1,34 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { O as OmitKeyof } from './OmitKeyof-CFsZLI4k.cjs';
|
|
1
|
+
import { useSuspenseQuery as useSuspenseQuery$1, UseSuspenseQueryOptions as UseSuspenseQueryOptions$1, UseSuspenseQueryResult as UseSuspenseQueryResult$1 } from '@tanstack/react-query';
|
|
3
2
|
|
|
4
|
-
interface UseSuspenseQueryResult<TData = unknown, TError = unknown> extends OmitKeyof<UseQueryResult<TData, TError>, keyof Pick<UseQueryResult, 'isPlaceholderData'>> {
|
|
5
|
-
data: TData;
|
|
6
|
-
status: 'success';
|
|
7
|
-
}
|
|
8
|
-
type UseSuspenseQueryOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = OmitKeyof<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'suspense' | 'useErrorBoundary' | 'enabled' | 'placeholderData' | 'networkMode'>;
|
|
9
3
|
/**
|
|
10
|
-
* This
|
|
11
|
-
* @
|
|
4
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
5
|
+
* @deprecated Use `UseSuspenseQueryOptions` from \@tanstack/react-query@^4.40.0
|
|
6
|
+
* @example
|
|
7
|
+
* ```diff
|
|
8
|
+
* - import type { UseSuspenseQueryOptions } from '@suspensive/react-query'
|
|
9
|
+
* + import type { UseSuspenseQueryOptions } from '@tanstack/react-query'
|
|
10
|
+
* ```
|
|
12
11
|
*/
|
|
13
|
-
|
|
12
|
+
type UseSuspenseQueryOptions = UseSuspenseQueryOptions$1;
|
|
13
|
+
/**
|
|
14
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
15
|
+
* @deprecated Use `UseSuspenseQueryResult` from \@tanstack/react-query@^4.40.0
|
|
16
|
+
* @example
|
|
17
|
+
* ```diff
|
|
18
|
+
* - import type { UseSuspenseQueryResult } from '@suspensive/react-query'
|
|
19
|
+
* + import type { UseSuspenseQueryResult } from '@tanstack/react-query'
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
type UseSuspenseQueryResult = UseSuspenseQueryResult$1;
|
|
23
|
+
/**
|
|
24
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
25
|
+
* @deprecated Use `useSuspenseQuery` from \@tanstack/react-query@^4.40.0
|
|
26
|
+
* @example
|
|
27
|
+
* ```diff
|
|
28
|
+
* - import { useSuspenseQuery } from '@suspensive/react-query'
|
|
29
|
+
* + import { useSuspenseQuery } from '@tanstack/react-query'
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
declare const useSuspenseQuery: typeof useSuspenseQuery$1;
|
|
14
33
|
|
|
15
34
|
export { type UseSuspenseQueryOptions, type UseSuspenseQueryResult, useSuspenseQuery };
|
|
@@ -1,15 +1,34 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { O as OmitKeyof } from './OmitKeyof-CFsZLI4k.js';
|
|
1
|
+
import { useSuspenseQuery as useSuspenseQuery$1, UseSuspenseQueryOptions as UseSuspenseQueryOptions$1, UseSuspenseQueryResult as UseSuspenseQueryResult$1 } from '@tanstack/react-query';
|
|
3
2
|
|
|
4
|
-
interface UseSuspenseQueryResult<TData = unknown, TError = unknown> extends OmitKeyof<UseQueryResult<TData, TError>, keyof Pick<UseQueryResult, 'isPlaceholderData'>> {
|
|
5
|
-
data: TData;
|
|
6
|
-
status: 'success';
|
|
7
|
-
}
|
|
8
|
-
type UseSuspenseQueryOptions<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = OmitKeyof<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'suspense' | 'useErrorBoundary' | 'enabled' | 'placeholderData' | 'networkMode'>;
|
|
9
3
|
/**
|
|
10
|
-
* This
|
|
11
|
-
* @
|
|
4
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
5
|
+
* @deprecated Use `UseSuspenseQueryOptions` from \@tanstack/react-query@^4.40.0
|
|
6
|
+
* @example
|
|
7
|
+
* ```diff
|
|
8
|
+
* - import type { UseSuspenseQueryOptions } from '@suspensive/react-query'
|
|
9
|
+
* + import type { UseSuspenseQueryOptions } from '@tanstack/react-query'
|
|
10
|
+
* ```
|
|
12
11
|
*/
|
|
13
|
-
|
|
12
|
+
type UseSuspenseQueryOptions = UseSuspenseQueryOptions$1;
|
|
13
|
+
/**
|
|
14
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
15
|
+
* @deprecated Use `UseSuspenseQueryResult` from \@tanstack/react-query@^4.40.0
|
|
16
|
+
* @example
|
|
17
|
+
* ```diff
|
|
18
|
+
* - import type { UseSuspenseQueryResult } from '@suspensive/react-query'
|
|
19
|
+
* + import type { UseSuspenseQueryResult } from '@tanstack/react-query'
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
type UseSuspenseQueryResult = UseSuspenseQueryResult$1;
|
|
23
|
+
/**
|
|
24
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
25
|
+
* @deprecated Use `useSuspenseQuery` from \@tanstack/react-query@^4.40.0
|
|
26
|
+
* @example
|
|
27
|
+
* ```diff
|
|
28
|
+
* - import { useSuspenseQuery } from '@suspensive/react-query'
|
|
29
|
+
* + import { useSuspenseQuery } from '@tanstack/react-query'
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
declare const useSuspenseQuery: typeof useSuspenseQuery$1;
|
|
14
33
|
|
|
15
34
|
export { type UseSuspenseQueryOptions, type UseSuspenseQueryResult, useSuspenseQuery };
|
package/dist/useSuspenseQuery.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@suspensive/react-query-4",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.3.1",
|
|
4
4
|
"description": "Suspensive interfaces for @tanstack/react-query@4",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"suspensive",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"src"
|
|
40
40
|
],
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@tanstack/react-query": "
|
|
42
|
+
"@tanstack/react-query": "4.40.0",
|
|
43
43
|
"@types/react": "^19.1.6",
|
|
44
44
|
"react": "^19.1.0",
|
|
45
45
|
"@suspensive/eslint-config": "0.0.1",
|
|
@@ -58,9 +58,9 @@
|
|
|
58
58
|
"ci:attw": "attw --pack",
|
|
59
59
|
"ci:eslint": "eslint \"**/*.{ts,tsx,cts,mts}\"",
|
|
60
60
|
"ci:publint": "publint --strict",
|
|
61
|
-
"ci:test": "vitest run
|
|
61
|
+
"ci:test": "vitest run",
|
|
62
62
|
"ci:type": "tsc --noEmit",
|
|
63
63
|
"clean": "rimraf ./dist ./coverage ./node_modules",
|
|
64
|
-
"test:ui": "vitest --ui
|
|
64
|
+
"test:ui": "vitest --ui"
|
|
65
65
|
}
|
|
66
66
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { queryOptions } from '@tanstack/react-query'
|
|
1
2
|
import type { ReactNode } from 'react'
|
|
2
3
|
import { describe, expectTypeOf, it } from 'vitest'
|
|
3
4
|
import { PrefetchQuery } from './PrefetchQuery'
|
|
4
|
-
import { queryOptions } from './queryOptions'
|
|
5
5
|
import { queryFn, queryKey } from './test-utils'
|
|
6
6
|
|
|
7
7
|
describe('<PrefetchQuery/>', () => {
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
+
import { type UseSuspenseQueryResult, queryOptions } from '@tanstack/react-query'
|
|
1
2
|
import type { ReactNode } from 'react'
|
|
2
3
|
import { describe, expectTypeOf, it } from 'vitest'
|
|
3
|
-
import { queryOptions } from './queryOptions'
|
|
4
4
|
import { SuspenseQueries } from './SuspenseQueries'
|
|
5
5
|
import { queryFn, queryKey } from './test-utils'
|
|
6
|
-
import type { UseSuspenseQueryResult } from './useSuspenseQuery'
|
|
7
6
|
|
|
8
7
|
describe('<SuspenseQueries/>', () => {
|
|
9
8
|
it('type check', () => {
|
|
@@ -27,7 +26,6 @@ describe('<SuspenseQueries/>', () => {
|
|
|
27
26
|
<SuspenseQueries queries={[{ queryKey, queryFn }, queryOptions({ queryKey, queryFn })]}>
|
|
28
27
|
{([
|
|
29
28
|
query1,
|
|
30
|
-
|
|
31
29
|
query2,
|
|
32
30
|
// @ts-expect-error Tuple type '[UseSuspenseQueryResult<{ text: string; }, unknown>]' of length '1' has no element at index '2'.
|
|
33
31
|
query3,
|
package/src/SuspenseQueries.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { type SuspenseQueriesOptions, type SuspenseQueriesResults, useSuspenseQueries } from '@tanstack/react-query'
|
|
1
2
|
import type { ReactNode } from 'react'
|
|
2
|
-
import { type SuspenseQueriesOptions, type SuspenseQueriesResults, useSuspenseQueries } from './useSuspenseQueries'
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* We provide these components to clearly express what causes suspense at the same depth.
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
+
import { type UseSuspenseQueryResult, queryOptions } from '@tanstack/react-query'
|
|
1
2
|
import type { ReactNode } from 'react'
|
|
2
3
|
import { describe, expectTypeOf, it } from 'vitest'
|
|
3
|
-
import { queryOptions } from './queryOptions'
|
|
4
4
|
import { SuspenseQuery } from './SuspenseQuery'
|
|
5
5
|
import { queryFn, queryKey } from './test-utils'
|
|
6
|
-
import type { UseSuspenseQueryResult } from './useSuspenseQuery'
|
|
7
6
|
|
|
8
7
|
describe('<SuspenseQuery/>', () => {
|
|
9
8
|
it('type check', () => {
|
|
@@ -72,7 +71,7 @@ describe('<SuspenseQuery/>', () => {
|
|
|
72
71
|
{(query) => {
|
|
73
72
|
expectTypeOf(query).toEqualTypeOf<UseSuspenseQueryResult<{ text: string }>>()
|
|
74
73
|
expectTypeOf(query.data).toEqualTypeOf<{ text: string }>()
|
|
75
|
-
expectTypeOf(query.status).toEqualTypeOf<'success'>()
|
|
74
|
+
expectTypeOf(query.status).toEqualTypeOf<'success' | 'error'>()
|
|
76
75
|
return <></>
|
|
77
76
|
}}
|
|
78
77
|
</SuspenseQuery>
|
|
@@ -82,7 +81,7 @@ describe('<SuspenseQuery/>', () => {
|
|
|
82
81
|
{(selectedQuery) => {
|
|
83
82
|
expectTypeOf(selectedQuery).toEqualTypeOf<UseSuspenseQueryResult<string>>()
|
|
84
83
|
expectTypeOf(selectedQuery.data).toEqualTypeOf<string>()
|
|
85
|
-
expectTypeOf(selectedQuery.status).toEqualTypeOf<'success'>()
|
|
84
|
+
expectTypeOf(selectedQuery.status).toEqualTypeOf<'error' | 'success'>()
|
|
86
85
|
return <></>
|
|
87
86
|
}}
|
|
88
87
|
</SuspenseQuery>
|
|
@@ -98,7 +97,7 @@ describe('<SuspenseQuery/>', () => {
|
|
|
98
97
|
{(query) => {
|
|
99
98
|
expectTypeOf(query).toEqualTypeOf<UseSuspenseQueryResult<{ text: string }>>()
|
|
100
99
|
expectTypeOf(query.data).toEqualTypeOf<{ text: string }>()
|
|
101
|
-
expectTypeOf(query.status).toEqualTypeOf<'success'>()
|
|
100
|
+
expectTypeOf(query.status).toEqualTypeOf<'error' | 'success'>()
|
|
102
101
|
return <></>
|
|
103
102
|
}}
|
|
104
103
|
</SuspenseQuery>
|
|
@@ -108,7 +107,7 @@ describe('<SuspenseQuery/>', () => {
|
|
|
108
107
|
{(selectedQuery) => {
|
|
109
108
|
expectTypeOf(selectedQuery).toEqualTypeOf<UseSuspenseQueryResult<string>>()
|
|
110
109
|
expectTypeOf(selectedQuery.data).toEqualTypeOf<string>()
|
|
111
|
-
expectTypeOf(selectedQuery.status).toEqualTypeOf<'success'>()
|
|
110
|
+
expectTypeOf(selectedQuery.status).toEqualTypeOf<'error' | 'success'>()
|
|
112
111
|
return <></>
|
|
113
112
|
}}
|
|
114
113
|
</SuspenseQuery>
|
package/src/SuspenseQuery.tsx
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
|
+
type QueryKey,
|
|
3
|
+
type UseSuspenseQueryOptions,
|
|
4
|
+
type UseSuspenseQueryResult,
|
|
5
|
+
useSuspenseQuery,
|
|
6
|
+
} from '@tanstack/react-query'
|
|
2
7
|
import type { ReactNode } from 'react'
|
|
3
|
-
import { type UseSuspenseQueryOptions, type UseSuspenseQueryResult, useSuspenseQuery } from './useSuspenseQuery'
|
|
4
8
|
|
|
5
9
|
/**
|
|
6
10
|
* We provide these components to clearly express what causes suspense at the same depth.
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import type { InfiniteData, QueryKey, UseInfiniteQueryOptions } from '@tanstack/react-query'
|
|
2
|
-
import type { OmitKeyof, RequiredKeyof } from './utility-types'
|
|
1
|
+
import type { InfiniteData, OmitKeyof, QueryKey, UseInfiniteQueryOptions, WithRequired } from '@tanstack/react-query'
|
|
3
2
|
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated There is no `SelectedInfiniteOptions` in \@tanstack/react-query@^4.40.0.
|
|
5
|
+
*/
|
|
4
6
|
export type SelectedInfiniteOptions<
|
|
5
7
|
TQueryFnData,
|
|
6
8
|
TError = unknown,
|
|
7
9
|
TData = InfiniteData<TQueryFnData>,
|
|
8
10
|
TQueryKey extends QueryKey = QueryKey,
|
|
9
|
-
> =
|
|
11
|
+
> = WithRequired<
|
|
10
12
|
OmitKeyof<
|
|
11
13
|
UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>,
|
|
12
14
|
| 'queryKeyHashFn'
|
|
@@ -27,12 +29,15 @@ export type SelectedInfiniteOptions<
|
|
|
27
29
|
select: (data: InfiniteData<TQueryFnData>) => InfiniteData<TData>
|
|
28
30
|
}
|
|
29
31
|
|
|
32
|
+
/**
|
|
33
|
+
* @deprecated There is no `UnSelectedInfiniteOptions` in \@tanstack/react-query@^4.40.0.
|
|
34
|
+
*/
|
|
30
35
|
export type UnSelectedInfiniteOptions<
|
|
31
36
|
TQueryFnData,
|
|
32
37
|
TError = unknown,
|
|
33
38
|
TData = InfiniteData<TQueryFnData>,
|
|
34
39
|
TQueryKey extends QueryKey = QueryKey,
|
|
35
|
-
> =
|
|
40
|
+
> = WithRequired<
|
|
36
41
|
OmitKeyof<
|
|
37
42
|
UseInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>,
|
|
38
43
|
| 'queryKeyHashFn'
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
type UseQueryResult,
|
|
3
|
+
type UseSuspenseQueryResult,
|
|
4
|
+
queryOptions,
|
|
5
|
+
useQueries,
|
|
6
|
+
useQuery,
|
|
7
|
+
useQueryClient,
|
|
8
|
+
useSuspenseQueries,
|
|
9
|
+
useSuspenseQuery,
|
|
10
|
+
} from '@tanstack/react-query'
|
|
2
11
|
import { describe, expectTypeOf, it } from 'vitest'
|
|
3
|
-
import { queryOptions } from './queryOptions'
|
|
4
12
|
import { SuspenseQuery } from './SuspenseQuery'
|
|
5
13
|
import { queryKey } from './test-utils'
|
|
6
14
|
import { usePrefetchQuery } from './usePrefetchQuery'
|
|
7
|
-
import { useSuspenseQueries } from './useSuspenseQueries'
|
|
8
|
-
import { type UseSuspenseQueryResult, useSuspenseQuery } from './useSuspenseQuery'
|
|
9
15
|
|
|
10
16
|
const query = {
|
|
11
17
|
options1: () =>
|
|
@@ -58,26 +64,30 @@ describe('queryOptions', () => {
|
|
|
58
64
|
))()
|
|
59
65
|
})
|
|
60
66
|
it('should be used with useQueries', () => {
|
|
61
|
-
const [
|
|
67
|
+
const [
|
|
68
|
+
query1,
|
|
69
|
+
query2,
|
|
70
|
+
// query3
|
|
71
|
+
] = useQueries({
|
|
62
72
|
queries: [
|
|
63
73
|
query.options1(),
|
|
64
74
|
{ ...query.options2() },
|
|
65
|
-
queryOptions({
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}),
|
|
75
|
+
// queryOptions({
|
|
76
|
+
// queryKey: [...queryKey, 4] as const,
|
|
77
|
+
// queryFn: () => Promise.resolve({ field: 'success' }),
|
|
78
|
+
// select: (data) => {
|
|
79
|
+
// expectTypeOf(data).toEqualTypeOf<{ field: string }>()
|
|
80
|
+
// return data.field
|
|
81
|
+
// },
|
|
82
|
+
// }),
|
|
73
83
|
],
|
|
74
84
|
})
|
|
75
85
|
expectTypeOf(query1).toEqualTypeOf<UseQueryResult<{ field: string }>>()
|
|
76
86
|
expectTypeOf(query1.data).toEqualTypeOf<{ field: string } | undefined>()
|
|
77
87
|
expectTypeOf(query2).toEqualTypeOf<UseQueryResult<{ field: string }>>()
|
|
78
88
|
expectTypeOf(query2.data).toEqualTypeOf<{ field: string } | undefined>()
|
|
79
|
-
expectTypeOf(query3).toEqualTypeOf<UseQueryResult<string>>()
|
|
80
|
-
expectTypeOf(query3.data).toEqualTypeOf<string | undefined>()
|
|
89
|
+
// expectTypeOf(query3).toEqualTypeOf<UseQueryResult<string>>()
|
|
90
|
+
// expectTypeOf(query3.data).toEqualTypeOf<string | undefined>()
|
|
81
91
|
})
|
|
82
92
|
it('should be used with useSuspenseQueries', () => {
|
|
83
93
|
const [query1, query2, query3] = useSuspenseQueries({
|
package/src/queryOptions.ts
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import {
|
|
2
|
+
type OmitKeyof,
|
|
3
|
+
type QueryKey,
|
|
4
|
+
type UseQueryOptions,
|
|
5
|
+
type WithRequired,
|
|
6
|
+
queryOptions as original_queryOptions,
|
|
7
|
+
} from '@tanstack/react-query'
|
|
3
8
|
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated There is no `SelectedQueryOptions` in \@tanstack/react-query@^4.40.0.
|
|
11
|
+
*/
|
|
4
12
|
export type SelectedQueryOptions<
|
|
5
13
|
TQueryFnData = unknown,
|
|
6
14
|
TError = unknown,
|
|
7
15
|
TData = TQueryFnData,
|
|
8
16
|
TQueryKey extends QueryKey = QueryKey,
|
|
9
|
-
> =
|
|
17
|
+
> = WithRequired<
|
|
10
18
|
OmitKeyof<
|
|
11
19
|
UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
|
|
12
20
|
| 'getNextPageParam'
|
|
@@ -29,12 +37,15 @@ export type SelectedQueryOptions<
|
|
|
29
37
|
select: (data: TQueryFnData) => TData
|
|
30
38
|
}
|
|
31
39
|
|
|
40
|
+
/**
|
|
41
|
+
* @deprecated There is no `UnSelectedQueryOptions` in \@tanstack/react-query@^4.40.0.
|
|
42
|
+
*/
|
|
32
43
|
export type UnSelectedQueryOptions<
|
|
33
44
|
TQueryFnData = unknown,
|
|
34
45
|
TError = unknown,
|
|
35
46
|
TData = TQueryFnData,
|
|
36
47
|
TQueryKey extends QueryKey = QueryKey,
|
|
37
|
-
> =
|
|
48
|
+
> = WithRequired<
|
|
38
49
|
OmitKeyof<
|
|
39
50
|
UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
|
|
40
51
|
| 'getNextPageParam'
|
|
@@ -58,29 +69,12 @@ export type UnSelectedQueryOptions<
|
|
|
58
69
|
}
|
|
59
70
|
|
|
60
71
|
/**
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
72
|
+
* This feature is officially supported in \@tanstack/react-query@^4.40.0, You can proceed with the migration.
|
|
73
|
+
* @deprecated Use `queryOptions` from \@tanstack/react-query@^4.40.0
|
|
74
|
+
* @example
|
|
75
|
+
* ```diff
|
|
76
|
+
* - import { queryOptions } from '@suspensive/react-query'
|
|
77
|
+
* + import { queryOptions } from '@tanstack/react-query'
|
|
78
|
+
* ```
|
|
65
79
|
*/
|
|
66
|
-
export
|
|
67
|
-
TQueryFnData = unknown,
|
|
68
|
-
TError = unknown,
|
|
69
|
-
TData = TQueryFnData,
|
|
70
|
-
TQueryKey extends QueryKey = QueryKey,
|
|
71
|
-
>(
|
|
72
|
-
options: SelectedQueryOptions<TQueryFnData, TError, TData, TQueryKey>
|
|
73
|
-
): SelectedQueryOptions<TQueryFnData, TError, TData, TQueryKey>
|
|
74
|
-
|
|
75
|
-
export function queryOptions<
|
|
76
|
-
TQueryFnData = unknown,
|
|
77
|
-
TError = unknown,
|
|
78
|
-
TData = TQueryFnData,
|
|
79
|
-
TQueryKey extends QueryKey = QueryKey,
|
|
80
|
-
>(
|
|
81
|
-
options: UnSelectedQueryOptions<TQueryFnData, TError, TData, TQueryKey>
|
|
82
|
-
): UnSelectedQueryOptions<TQueryFnData, TError, TData, TQueryKey>
|
|
83
|
-
|
|
84
|
-
export function queryOptions(options: unknown) {
|
|
85
|
-
return options
|
|
86
|
-
}
|
|
80
|
+
export const queryOptions = original_queryOptions
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
type InfiniteData,
|
|
3
|
+
type OmitKeyof,
|
|
3
4
|
type QueryKey,
|
|
4
5
|
type UseInfiniteQueryOptions,
|
|
5
6
|
type UseInfiniteQueryResult,
|
|
6
7
|
useInfiniteQuery,
|
|
7
8
|
} from '@tanstack/react-query'
|
|
8
|
-
import type { OmitKeyof } from './utility-types'
|
|
9
9
|
|
|
10
10
|
export interface UseSuspenseInfiniteQueryResult<TData = unknown, TError = unknown>
|
|
11
11
|
extends OmitKeyof<
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
+
import { type UseSuspenseQueryResult, queryOptions, useSuspenseQueries } from '@tanstack/react-query'
|
|
1
2
|
import { describe, expectTypeOf, it } from 'vitest'
|
|
2
|
-
import { queryOptions } from './queryOptions'
|
|
3
3
|
import { queryFn, queryKey, select } from './test-utils'
|
|
4
|
-
import { useSuspenseQueries } from './useSuspenseQueries'
|
|
5
|
-
import type { UseSuspenseQueryResult } from './useSuspenseQuery'
|
|
6
4
|
|
|
7
5
|
describe('useSuspenseQueries', () => {
|
|
8
6
|
it('type check', () => {
|
|
@@ -66,15 +64,15 @@ describe('useSuspenseQueries', () => {
|
|
|
66
64
|
})
|
|
67
65
|
|
|
68
66
|
expectTypeOf(query).toEqualTypeOf<UseSuspenseQueryResult<{ text: string }>>()
|
|
69
|
-
expectTypeOf(query.status).toEqualTypeOf
|
|
67
|
+
expectTypeOf(query.status).toEqualTypeOf<'error' | 'success'>()
|
|
70
68
|
expectTypeOf(query.data).toEqualTypeOf<{ text: string }>()
|
|
71
69
|
|
|
72
70
|
expectTypeOf(selectedQuery).toEqualTypeOf<UseSuspenseQueryResult<string>>()
|
|
73
|
-
expectTypeOf(selectedQuery.status).toEqualTypeOf
|
|
71
|
+
expectTypeOf(selectedQuery.status).toEqualTypeOf<'error' | 'success'>()
|
|
74
72
|
expectTypeOf(selectedQuery.data).toEqualTypeOf<string>()
|
|
75
73
|
|
|
76
74
|
expectTypeOf(selectedQueryByQueryOptions).toEqualTypeOf<UseSuspenseQueryResult<string>>()
|
|
77
|
-
expectTypeOf(selectedQueryByQueryOptions.status).toEqualTypeOf
|
|
75
|
+
expectTypeOf(selectedQueryByQueryOptions.status).toEqualTypeOf<'error' | 'success'>()
|
|
78
76
|
expectTypeOf(selectedQueryByQueryOptions.data).toEqualTypeOf<string>()
|
|
79
77
|
})
|
|
80
78
|
})
|