@openapi-qraft/react 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -0
- package/README.md +118 -38
- package/dist/QraftContext.d.ts +8 -10
- package/dist/QraftContext.d.ts.map +1 -1
- package/dist/QraftContext.js.map +1 -1
- package/dist/ServiceOperation.d.ts +152 -5
- package/dist/ServiceOperation.d.ts.map +1 -1
- package/dist/callbacks/cancelQueries.d.ts +2 -2
- package/dist/callbacks/cancelQueries.d.ts.map +1 -1
- package/dist/callbacks/cancelQueries.js.map +1 -1
- package/dist/callbacks/fetchInfiniteQuery.d.ts +7 -0
- package/dist/callbacks/fetchInfiniteQuery.d.ts.map +1 -0
- package/dist/callbacks/fetchInfiniteQuery.js +5 -0
- package/dist/callbacks/fetchInfiniteQuery.js.map +1 -0
- package/dist/callbacks/fetchQuery.d.ts +7 -0
- package/dist/callbacks/fetchQuery.d.ts.map +1 -0
- package/dist/callbacks/fetchQuery.js +5 -0
- package/dist/callbacks/fetchQuery.js.map +1 -0
- package/dist/callbacks/getInfiniteQueryData.d.ts +4 -4
- package/dist/callbacks/getInfiniteQueryData.d.ts.map +1 -1
- package/dist/callbacks/getInfiniteQueryData.js +3 -6
- package/dist/callbacks/getInfiniteQueryData.js.map +1 -1
- package/dist/callbacks/getInfiniteQueryKey.d.ts +2 -2
- package/dist/callbacks/getInfiniteQueryKey.d.ts.map +1 -1
- package/dist/callbacks/getInfiniteQueryKey.js.map +1 -1
- package/dist/callbacks/getMutationKey.d.ts +2 -2
- package/dist/callbacks/getMutationKey.d.ts.map +1 -1
- package/dist/callbacks/getMutationKey.js.map +1 -1
- package/dist/callbacks/getQueryData.d.ts +3 -3
- package/dist/callbacks/getQueryData.d.ts.map +1 -1
- package/dist/callbacks/getQueryData.js +3 -4
- package/dist/callbacks/getQueryData.js.map +1 -1
- package/dist/callbacks/getQueryKey.d.ts +2 -2
- package/dist/callbacks/getQueryKey.d.ts.map +1 -1
- package/dist/callbacks/getQueryKey.js.map +1 -1
- package/dist/callbacks/invalidateQueries.d.ts +2 -2
- package/dist/callbacks/invalidateQueries.d.ts.map +1 -1
- package/dist/callbacks/invalidateQueries.js.map +1 -1
- package/dist/callbacks/isFetching.d.ts +2 -2
- package/dist/callbacks/isFetching.d.ts.map +1 -1
- package/dist/callbacks/isFetching.js.map +1 -1
- package/dist/callbacks/isMutating.d.ts +5 -0
- package/dist/callbacks/isMutating.d.ts.map +1 -0
- package/dist/callbacks/isMutating.js +5 -0
- package/dist/callbacks/isMutating.js.map +1 -0
- package/dist/callbacks/mutationFn.d.ts +2 -2
- package/dist/callbacks/mutationFn.d.ts.map +1 -1
- package/dist/callbacks/mutationFn.js.map +1 -1
- package/dist/callbacks/prefetchInfiniteQuery.d.ts +7 -0
- package/dist/callbacks/prefetchInfiniteQuery.d.ts.map +1 -0
- package/dist/callbacks/prefetchInfiniteQuery.js +5 -0
- package/dist/callbacks/prefetchInfiniteQuery.js.map +1 -0
- package/dist/callbacks/prefetchQuery.d.ts +7 -0
- package/dist/callbacks/prefetchQuery.d.ts.map +1 -0
- package/dist/callbacks/prefetchQuery.js +5 -0
- package/dist/callbacks/prefetchQuery.js.map +1 -0
- package/dist/callbacks/queryFn.js.map +1 -1
- package/dist/callbacks/refetchQueries.d.ts +2 -2
- package/dist/callbacks/refetchQueries.d.ts.map +1 -1
- package/dist/callbacks/refetchQueries.js.map +1 -1
- package/dist/callbacks/removeQueries.d.ts +5 -0
- package/dist/callbacks/removeQueries.d.ts.map +1 -0
- package/dist/callbacks/removeQueries.js +5 -0
- package/dist/callbacks/removeQueries.js.map +1 -0
- package/dist/callbacks/resetQueries.d.ts +2 -2
- package/dist/callbacks/resetQueries.d.ts.map +1 -1
- package/dist/callbacks/resetQueries.js.map +1 -1
- package/dist/callbacks/setInfiniteQueryData.d.ts +2 -2
- package/dist/callbacks/setInfiniteQueryData.d.ts.map +1 -1
- package/dist/callbacks/setInfiniteQueryData.js +2 -6
- package/dist/callbacks/setInfiniteQueryData.js.map +1 -1
- package/dist/callbacks/setQueryData.d.ts +3 -3
- package/dist/callbacks/setQueryData.d.ts.map +1 -1
- package/dist/callbacks/setQueryData.js +3 -7
- package/dist/callbacks/setQueryData.js.map +1 -1
- package/dist/callbacks/useInfiniteQuery.d.ts +4 -4
- package/dist/callbacks/useInfiniteQuery.d.ts.map +1 -1
- package/dist/callbacks/useInfiniteQuery.js +4 -24
- package/dist/callbacks/useInfiniteQuery.js.map +1 -1
- package/dist/callbacks/useIsFetching.d.ts +2 -2
- package/dist/callbacks/useIsFetching.d.ts.map +1 -1
- package/dist/callbacks/useIsFetching.js +0 -3
- package/dist/callbacks/useIsFetching.js.map +1 -1
- package/dist/callbacks/useIsMutating.d.ts +7 -0
- package/dist/callbacks/useIsMutating.d.ts.map +1 -0
- package/dist/callbacks/useIsMutating.js +9 -0
- package/dist/callbacks/useIsMutating.js.map +1 -0
- package/dist/callbacks/useMutation.d.ts +2 -2
- package/dist/callbacks/useMutation.d.ts.map +1 -1
- package/dist/callbacks/useMutation.js +6 -4
- package/dist/callbacks/useMutation.js.map +1 -1
- package/dist/callbacks/useMutationState.d.ts +2 -2
- package/dist/callbacks/useMutationState.d.ts.map +1 -1
- package/dist/callbacks/useMutationState.js +2 -15
- package/dist/callbacks/useMutationState.js.map +1 -1
- package/dist/callbacks/useQueries.d.ts +2 -2
- package/dist/callbacks/useQueries.d.ts.map +1 -1
- package/dist/callbacks/useQueries.js +5 -3
- package/dist/callbacks/useQueries.js.map +1 -1
- package/dist/callbacks/useQuery.d.ts +3 -3
- package/dist/callbacks/useQuery.d.ts.map +1 -1
- package/dist/callbacks/useQuery.js +4 -23
- package/dist/callbacks/useQuery.js.map +1 -1
- package/dist/callbacks/useSuspenseInfiniteQuery.d.ts +4 -4
- package/dist/callbacks/useSuspenseInfiniteQuery.d.ts.map +1 -1
- package/dist/callbacks/useSuspenseInfiniteQuery.js +4 -24
- package/dist/callbacks/useSuspenseInfiniteQuery.js.map +1 -1
- package/dist/callbacks/useSuspenseQueries.d.ts +2 -2
- package/dist/callbacks/useSuspenseQueries.d.ts.map +1 -1
- package/dist/callbacks/useSuspenseQueries.js +5 -3
- package/dist/callbacks/useSuspenseQueries.js.map +1 -1
- package/dist/callbacks/useSuspenseQuery.d.ts +4 -4
- package/dist/callbacks/useSuspenseQuery.d.ts.map +1 -1
- package/dist/callbacks/useSuspenseQuery.js +4 -23
- package/dist/callbacks/useSuspenseQuery.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/callQueryClientFetchMethod.d.ts +20 -0
- package/dist/lib/callQueryClientFetchMethod.d.ts.map +1 -0
- package/dist/lib/callQueryClientFetchMethod.js +48 -0
- package/dist/lib/callQueryClientFetchMethod.js.map +1 -0
- package/dist/lib/callQueryClientMethodWithMutationFilters.d.ts +11 -0
- package/dist/lib/callQueryClientMethodWithMutationFilters.d.ts.map +1 -0
- package/dist/lib/callQueryClientMethodWithMutationFilters.js +18 -0
- package/dist/lib/callQueryClientMethodWithMutationFilters.js.map +1 -0
- package/dist/lib/callQueryClientMethodWithQueryFilters.d.ts +2 -2
- package/dist/lib/callQueryClientMethodWithQueryFilters.d.ts.map +1 -1
- package/dist/lib/callQueryClientMethodWithQueryFilters.js +5 -13
- package/dist/lib/callQueryClientMethodWithQueryFilters.js.map +1 -1
- package/dist/lib/callQueryClientMethodWithQueryKey.d.ts +11 -0
- package/dist/lib/callQueryClientMethodWithQueryKey.d.ts.map +1 -0
- package/dist/lib/callQueryClientMethodWithQueryKey.js +22 -0
- package/dist/lib/callQueryClientMethodWithQueryKey.js.map +1 -0
- package/dist/lib/composeInfiniteQueryKey.d.ts +2 -2
- package/dist/lib/composeInfiniteQueryKey.d.ts.map +1 -1
- package/dist/lib/composeMutationFilters.d.ts +11 -0
- package/dist/lib/composeMutationFilters.d.ts.map +1 -0
- package/dist/lib/composeMutationFilters.js +32 -0
- package/dist/lib/composeMutationFilters.js.map +1 -0
- package/dist/lib/composeMutationKey.d.ts +3 -3
- package/dist/lib/composeMutationKey.d.ts.map +1 -1
- package/dist/lib/composeMutationKey.js +1 -1
- package/dist/lib/composeMutationKey.js.map +1 -1
- package/dist/lib/composeQueryFilters.d.ts +3 -3
- package/dist/lib/composeQueryFilters.d.ts.map +1 -1
- package/dist/lib/composeQueryFilters.js.map +1 -1
- package/dist/lib/composeQueryKey.d.ts +2 -2
- package/dist/lib/composeQueryKey.d.ts.map +1 -1
- package/dist/lib/composeQueryKey.js.map +1 -1
- package/dist/lib/{request.d.ts → requestFn.d.ts} +28 -18
- package/dist/lib/requestFn.d.ts.map +1 -0
- package/dist/lib/{request.js → requestFn.js} +16 -21
- package/dist/lib/requestFn.js.map +1 -0
- package/dist/lib/useComposeUseQueryOptions.d.ts +16 -0
- package/dist/lib/useComposeUseQueryOptions.d.ts.map +1 -0
- package/dist/lib/useComposeUseQueryOptions.js +40 -0
- package/dist/lib/useComposeUseQueryOptions.js.map +1 -0
- package/dist/qraftAPIClient.d.ts +3 -3
- package/dist/qraftAPIClient.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/QraftContext.ts +13 -16
- package/src/ServiceOperation.ts +360 -6
- package/src/callbacks/cancelQueries.ts +3 -3
- package/src/callbacks/fetchInfiniteQuery.ts +22 -0
- package/src/callbacks/fetchQuery.ts +20 -0
- package/src/callbacks/getInfiniteQueryData.ts +13 -16
- package/src/callbacks/getInfiniteQueryKey.ts +3 -3
- package/src/callbacks/getMutationKey.ts +3 -3
- package/src/callbacks/getQueryData.ts +12 -14
- package/src/callbacks/getQueryKey.ts +3 -7
- package/src/callbacks/invalidateQueries.ts +3 -3
- package/src/callbacks/isFetching.ts +3 -3
- package/src/callbacks/isMutating.ts +22 -0
- package/src/callbacks/mutationFn.ts +3 -3
- package/src/callbacks/prefetchInfiniteQuery.ts +22 -0
- package/src/callbacks/prefetchQuery.ts +22 -0
- package/src/callbacks/queryFn.ts +2 -2
- package/src/callbacks/refetchQueries.ts +3 -3
- package/src/callbacks/removeQueries.ts +22 -0
- package/src/callbacks/resetQueries.ts +3 -3
- package/src/callbacks/setInfiniteQueryData.ts +11 -18
- package/src/callbacks/setQueryData.ts +13 -18
- package/src/callbacks/useInfiniteQuery.ts +8 -48
- package/src/callbacks/useIsFetching.ts +3 -9
- package/src/callbacks/useIsMutating.ts +42 -0
- package/src/callbacks/useMutation.ts +15 -20
- package/src/callbacks/useMutationState.ts +5 -30
- package/src/callbacks/useQueries.ts +12 -17
- package/src/callbacks/useQuery.ts +7 -43
- package/src/callbacks/useSuspenseInfiniteQuery.ts +8 -44
- package/src/callbacks/useSuspenseQueries.ts +12 -13
- package/src/callbacks/useSuspenseQuery.ts +8 -45
- package/src/index.ts +6 -6
- package/src/lib/callQueryClientFetchMethod.ts +90 -0
- package/src/lib/callQueryClientMethodWithMutationFilters.ts +37 -0
- package/src/lib/callQueryClientMethodWithQueryFilters.ts +10 -23
- package/src/lib/callQueryClientMethodWithQueryKey.ts +46 -0
- package/src/lib/composeInfiniteQueryKey.ts +2 -2
- package/src/lib/composeMutationFilters.ts +44 -0
- package/src/lib/composeMutationKey.ts +5 -8
- package/src/lib/composeQueryFilters.ts +2 -2
- package/src/lib/composeQueryKey.ts +2 -5
- package/src/lib/{request.ts → requestFn.ts} +61 -59
- package/src/lib/useComposeUseQueryOptions.ts +64 -0
- package/src/qraftAPIClient.ts +4 -4
- package/dist/RequestClient.d.ts +0 -3
- package/dist/RequestClient.d.ts.map +0 -1
- package/dist/RequestClient.js +0 -2
- package/dist/RequestClient.js.map +0 -1
- package/dist/lib/request.d.ts.map +0 -1
- package/dist/lib/request.js.map +0 -1
- package/src/RequestClient.ts +0 -11
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { callQueryClientMethodWithQueryFilters } from '../lib/callQueryClientMethodWithQueryFilters.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
3
3
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
4
|
import { ServiceOperationIsFetchingQueriesCallback } from '../ServiceOperation.js';
|
|
5
5
|
|
|
6
6
|
export function isFetching<TData>(
|
|
7
7
|
qraftOptions: QraftClientOptions | undefined,
|
|
8
|
-
schema:
|
|
8
|
+
schema: OperationSchema,
|
|
9
9
|
args: Parameters<
|
|
10
10
|
ServiceOperationIsFetchingQueriesCallback<
|
|
11
|
-
|
|
11
|
+
OperationSchema,
|
|
12
12
|
unknown,
|
|
13
13
|
TData
|
|
14
14
|
>['isFetching']
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { callQueryClientMethodWithMutationFilters } from '../lib/callQueryClientMethodWithMutationFilters.js';
|
|
2
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
3
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
|
+
import { ServiceOperationIsMutatingQueriesCallback } from '../ServiceOperation.js';
|
|
5
|
+
|
|
6
|
+
export function isMutating<TData>(
|
|
7
|
+
_: QraftClientOptions | undefined,
|
|
8
|
+
schema: OperationSchema,
|
|
9
|
+
args: Parameters<
|
|
10
|
+
ServiceOperationIsMutatingQueriesCallback<
|
|
11
|
+
OperationSchema,
|
|
12
|
+
unknown,
|
|
13
|
+
TData
|
|
14
|
+
>['isMutating']
|
|
15
|
+
>
|
|
16
|
+
): Promise<void> {
|
|
17
|
+
return callQueryClientMethodWithMutationFilters(
|
|
18
|
+
'isMutating',
|
|
19
|
+
schema,
|
|
20
|
+
args as never
|
|
21
|
+
) as never;
|
|
22
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
2
2
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
3
3
|
import { ServiceOperationMutation } from '../ServiceOperation.js';
|
|
4
4
|
|
|
5
5
|
export const mutationFn = (
|
|
6
6
|
qraftOptions: QraftClientOptions | undefined,
|
|
7
|
-
schema:
|
|
7
|
+
schema: OperationSchema,
|
|
8
8
|
args: unknown
|
|
9
9
|
) => {
|
|
10
10
|
const [client, options] = args as Parameters<
|
|
11
11
|
ServiceOperationMutation<
|
|
12
|
-
|
|
12
|
+
OperationSchema,
|
|
13
13
|
unknown,
|
|
14
14
|
unknown,
|
|
15
15
|
never
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { callQueryClientMethodWithQueryKey } from '../lib/callQueryClientFetchMethod.js';
|
|
2
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
3
|
+
import { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
4
|
+
|
|
5
|
+
export const prefetchInfiniteQuery: <
|
|
6
|
+
TSchema extends { url: string; method: 'get' | 'head' | 'options' },
|
|
7
|
+
TData,
|
|
8
|
+
TParams,
|
|
9
|
+
>(
|
|
10
|
+
_: QraftClientOptions | undefined,
|
|
11
|
+
schema: TSchema,
|
|
12
|
+
args: Parameters<
|
|
13
|
+
ServiceOperationQuery<TSchema, TData, TParams>['prefetchInfiniteQuery']
|
|
14
|
+
>
|
|
15
|
+
) => Promise<TData> = (_, schema, args) => {
|
|
16
|
+
return callQueryClientMethodWithQueryKey(
|
|
17
|
+
'prefetchInfiniteQuery',
|
|
18
|
+
schema,
|
|
19
|
+
true,
|
|
20
|
+
args as never
|
|
21
|
+
) as never;
|
|
22
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { callQueryClientMethodWithQueryKey } from '../lib/callQueryClientFetchMethod.js';
|
|
2
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
3
|
+
import { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
4
|
+
|
|
5
|
+
export const prefetchQuery: <
|
|
6
|
+
TSchema extends { url: string; method: 'get' | 'head' | 'options' },
|
|
7
|
+
TData,
|
|
8
|
+
TParams,
|
|
9
|
+
>(
|
|
10
|
+
_: QraftClientOptions | undefined,
|
|
11
|
+
schema: TSchema,
|
|
12
|
+
args: Parameters<
|
|
13
|
+
ServiceOperationQuery<TSchema, TData, TParams>['prefetchQuery']
|
|
14
|
+
>
|
|
15
|
+
) => Promise<TData> = (_, schema, args) => {
|
|
16
|
+
return callQueryClientMethodWithQueryKey(
|
|
17
|
+
'prefetchQuery',
|
|
18
|
+
schema,
|
|
19
|
+
false,
|
|
20
|
+
args as never
|
|
21
|
+
) as never;
|
|
22
|
+
};
|
package/src/callbacks/queryFn.ts
CHANGED
|
@@ -12,9 +12,9 @@ export const queryFn: <
|
|
|
12
12
|
) => Promise<TData> = (_, schema, args) => {
|
|
13
13
|
const [options, client] = args;
|
|
14
14
|
|
|
15
|
-
return client('queryKey' in options ? options.queryKey[0] : schema, {
|
|
15
|
+
return client('queryKey' in options ? options.queryKey![0] : schema, {
|
|
16
16
|
parameters:
|
|
17
|
-
'queryKey' in options ? options.queryKey[1] : options.parameters,
|
|
17
|
+
'queryKey' in options ? options.queryKey![1] : options.parameters,
|
|
18
18
|
meta: options.meta,
|
|
19
19
|
signal: options.signal,
|
|
20
20
|
}) as Promise<never>;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { callQueryClientMethodWithQueryFilters } from '../lib/callQueryClientMethodWithQueryFilters.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
3
3
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
4
|
import type { ServiceOperationResetQueriesCallback } from '../ServiceOperation.js';
|
|
5
5
|
|
|
6
6
|
export function refetchQueries<TData>(
|
|
7
7
|
qraftOptions: QraftClientOptions | undefined,
|
|
8
|
-
schema:
|
|
8
|
+
schema: OperationSchema,
|
|
9
9
|
args: Parameters<
|
|
10
10
|
ServiceOperationResetQueriesCallback<
|
|
11
|
-
|
|
11
|
+
OperationSchema,
|
|
12
12
|
unknown,
|
|
13
13
|
TData
|
|
14
14
|
>['refetchQueries']
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { callQueryClientMethodWithQueryFilters } from '../lib/callQueryClientMethodWithQueryFilters.js';
|
|
2
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
3
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
|
+
import { ServiceOperationRemoveQueriesCallback } from '../ServiceOperation.js';
|
|
5
|
+
|
|
6
|
+
export function removeQueries<TData>(
|
|
7
|
+
_: QraftClientOptions | undefined,
|
|
8
|
+
schema: OperationSchema,
|
|
9
|
+
args: Parameters<
|
|
10
|
+
ServiceOperationRemoveQueriesCallback<
|
|
11
|
+
OperationSchema,
|
|
12
|
+
unknown,
|
|
13
|
+
TData
|
|
14
|
+
>['removeQueries']
|
|
15
|
+
>
|
|
16
|
+
): Promise<void> {
|
|
17
|
+
return callQueryClientMethodWithQueryFilters(
|
|
18
|
+
'removeQueries',
|
|
19
|
+
schema,
|
|
20
|
+
args as never
|
|
21
|
+
) as never;
|
|
22
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { callQueryClientMethodWithQueryFilters } from '../lib/callQueryClientMethodWithQueryFilters.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
3
3
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
4
|
import type { ServiceOperationResetQueriesCallback } from '../ServiceOperation.js';
|
|
5
5
|
|
|
6
6
|
export function resetQueries<TData>(
|
|
7
7
|
qraftOptions: QraftClientOptions | undefined,
|
|
8
|
-
schema:
|
|
8
|
+
schema: OperationSchema,
|
|
9
9
|
args: Parameters<
|
|
10
10
|
ServiceOperationResetQueriesCallback<
|
|
11
|
-
|
|
11
|
+
OperationSchema,
|
|
12
12
|
unknown,
|
|
13
13
|
TData
|
|
14
14
|
>['resetQueries']
|
|
@@ -1,32 +1,25 @@
|
|
|
1
1
|
import { InfiniteData } from '@tanstack/query-core';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import type {
|
|
3
|
+
import { callQueryClientMethodWithQueryKey } from '../lib/callQueryClientMethodWithQueryKey.js';
|
|
4
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
5
5
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
6
|
-
import type {
|
|
7
|
-
ServiceOperationInfiniteQueryKey,
|
|
8
|
-
ServiceOperationQuery,
|
|
9
|
-
} from '../ServiceOperation.js';
|
|
6
|
+
import type { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
10
7
|
|
|
11
8
|
export function setInfiniteQueryData<TData>(
|
|
12
9
|
qraftOptions: QraftClientOptions | undefined,
|
|
13
|
-
schema:
|
|
10
|
+
schema: OperationSchema,
|
|
14
11
|
args: Parameters<
|
|
15
12
|
ServiceOperationQuery<
|
|
16
|
-
|
|
13
|
+
OperationSchema,
|
|
17
14
|
unknown,
|
|
18
15
|
TData
|
|
19
16
|
>['setInfiniteQueryData']
|
|
20
17
|
>
|
|
21
18
|
): InfiniteData<TData> | undefined {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
? parameters
|
|
29
|
-
: composeInfiniteQueryKey(schema, parameters);
|
|
30
|
-
|
|
31
|
-
return queryClient.setQueryData(queryKey, updater as never, options);
|
|
19
|
+
return callQueryClientMethodWithQueryKey(
|
|
20
|
+
'setQueryData',
|
|
21
|
+
schema,
|
|
22
|
+
true,
|
|
23
|
+
args as never
|
|
24
|
+
) as never;
|
|
32
25
|
}
|
|
@@ -1,28 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type {
|
|
1
|
+
import { callQueryClientMethodWithQueryKey } from '../lib/callQueryClientMethodWithQueryKey.js';
|
|
2
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
3
3
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
|
-
import {
|
|
5
|
-
ServiceOperationQuery,
|
|
6
|
-
ServiceOperationQueryKey,
|
|
7
|
-
} from '../ServiceOperation.js';
|
|
4
|
+
import type { ServiceOperationSetQueryDataCallback } from '../ServiceOperation.js';
|
|
8
5
|
|
|
9
6
|
export function setQueryData<TData>(
|
|
10
|
-
|
|
11
|
-
schema:
|
|
7
|
+
_: QraftClientOptions | undefined,
|
|
8
|
+
schema: OperationSchema,
|
|
12
9
|
args: Parameters<
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
ServiceOperationSetQueryDataCallback<
|
|
11
|
+
OperationSchema,
|
|
15
12
|
unknown,
|
|
16
13
|
TData
|
|
17
14
|
>['setQueryData']
|
|
18
15
|
>
|
|
19
16
|
): TData | undefined {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return queryClient.setQueryData(queryKey, updater as never, options);
|
|
17
|
+
return callQueryClientMethodWithQueryKey(
|
|
18
|
+
'setQueryData',
|
|
19
|
+
schema,
|
|
20
|
+
false,
|
|
21
|
+
args as never
|
|
22
|
+
) as never;
|
|
28
23
|
}
|
|
@@ -1,23 +1,15 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import { useContext } from 'react';
|
|
4
|
-
|
|
5
3
|
import type { DefaultError, InfiniteData } from '@tanstack/query-core';
|
|
6
4
|
import {
|
|
7
5
|
useInfiniteQuery as useInfiniteQueryBase,
|
|
8
|
-
UseInfiniteQueryResult,
|
|
6
|
+
type UseInfiniteQueryResult,
|
|
9
7
|
} from '@tanstack/react-query';
|
|
10
8
|
|
|
11
|
-
import {
|
|
12
|
-
import
|
|
13
|
-
import { shelfMerge } from '../lib/shelfMerge.js';
|
|
14
|
-
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
9
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
10
|
+
import { useComposeUseQueryOptions } from '../lib/useComposeUseQueryOptions.js';
|
|
15
11
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
ServiceOperationInfiniteQueryKey,
|
|
19
|
-
ServiceOperationQuery,
|
|
20
|
-
} from '../ServiceOperation.js';
|
|
12
|
+
import type { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
21
13
|
|
|
22
14
|
export const useInfiniteQuery: <
|
|
23
15
|
TQueryFnData,
|
|
@@ -25,45 +17,13 @@ export const useInfiniteQuery: <
|
|
|
25
17
|
TData = InfiniteData<TQueryFnData>,
|
|
26
18
|
>(
|
|
27
19
|
qraftOptions: QraftClientOptions | undefined,
|
|
28
|
-
schema:
|
|
20
|
+
schema: OperationSchema,
|
|
29
21
|
args: Parameters<
|
|
30
|
-
ServiceOperationQuery<
|
|
31
|
-
OperationRequestSchema,
|
|
32
|
-
unknown,
|
|
33
|
-
unknown
|
|
34
|
-
>['useInfiniteQuery']
|
|
22
|
+
ServiceOperationQuery<OperationSchema, unknown, unknown>['useInfiniteQuery']
|
|
35
23
|
>
|
|
36
24
|
) => UseInfiniteQueryResult<TData, TError> = (qraftOptions, schema, args) => {
|
|
37
|
-
const [parameters, options, queryClientByArg] = args;
|
|
38
|
-
|
|
39
|
-
const contextValue = useContext(qraftOptions?.context ?? QraftContext);
|
|
40
|
-
if (!contextValue?.request) throw new Error(`QraftContext.request not found`);
|
|
41
|
-
|
|
42
|
-
const queryKey: ServiceOperationInfiniteQueryKey<
|
|
43
|
-
OperationRequestSchema,
|
|
44
|
-
unknown
|
|
45
|
-
> = Array.isArray(parameters)
|
|
46
|
-
? (parameters as never)
|
|
47
|
-
: composeInfiniteQueryKey(schema, parameters);
|
|
48
|
-
|
|
49
25
|
return useInfiniteQueryBase(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
queryKey,
|
|
53
|
-
queryFn:
|
|
54
|
-
options?.queryFn ??
|
|
55
|
-
function ({ queryKey: [, queryParams], signal, meta, pageParam }) {
|
|
56
|
-
return contextValue.request(
|
|
57
|
-
{ baseUrl: contextValue.baseUrl },
|
|
58
|
-
schema,
|
|
59
|
-
{
|
|
60
|
-
parameters: shelfMerge(2, queryParams, pageParam) as never,
|
|
61
|
-
signal,
|
|
62
|
-
meta,
|
|
63
|
-
}
|
|
64
|
-
);
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
useQueryClient(qraftOptions, queryClientByArg)
|
|
26
|
+
// @ts-expect-error
|
|
27
|
+
...useComposeUseQueryOptions(qraftOptions, schema, args, true)
|
|
68
28
|
) as never;
|
|
69
29
|
};
|
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
import { useIsFetching as useIsFetchingTanstack } from '@tanstack/react-query';
|
|
4
4
|
|
|
5
5
|
import { composeQueryFilters } from '../lib/composeQueryFilters.js';
|
|
6
|
-
import type {
|
|
6
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
7
7
|
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
8
8
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
9
9
|
import type { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
10
10
|
|
|
11
11
|
export const useIsFetching: <TVariables = unknown>(
|
|
12
12
|
qraftOptions: QraftClientOptions | undefined,
|
|
13
|
-
schema:
|
|
13
|
+
schema: OperationSchema,
|
|
14
14
|
args: Parameters<
|
|
15
15
|
ServiceOperationQuery<
|
|
16
|
-
|
|
16
|
+
OperationSchema,
|
|
17
17
|
object | undefined,
|
|
18
18
|
TVariables,
|
|
19
19
|
unknown
|
|
@@ -22,12 +22,6 @@ export const useIsFetching: <TVariables = unknown>(
|
|
|
22
22
|
) => number = (qraftOptions, schema, args) => {
|
|
23
23
|
const [filters, queryClientByArg] = args;
|
|
24
24
|
|
|
25
|
-
if (filters && 'parameters' in filters && 'mutationKey' in filters) {
|
|
26
|
-
throw new Error(
|
|
27
|
-
`'useMutationState': 'parameters' and 'mutationKey' cannot be used together`
|
|
28
|
-
);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
25
|
return useIsFetchingTanstack(
|
|
32
26
|
composeQueryFilters(schema, filters) as never,
|
|
33
27
|
useQueryClient(qraftOptions, queryClientByArg)
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import type { DefaultError } from '@tanstack/query-core';
|
|
4
|
+
import {
|
|
5
|
+
UseMutationResult,
|
|
6
|
+
useIsMutating as useIsMutatingStateTanstack,
|
|
7
|
+
} from '@tanstack/react-query';
|
|
8
|
+
|
|
9
|
+
import { composeMutationFilters } from '../lib/composeMutationFilters.js';
|
|
10
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
11
|
+
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
12
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
13
|
+
import { ServiceOperationMutation } from '../ServiceOperation.js';
|
|
14
|
+
|
|
15
|
+
export const useIsMutating: <
|
|
16
|
+
TData = unknown,
|
|
17
|
+
TError = DefaultError,
|
|
18
|
+
TVariables = unknown,
|
|
19
|
+
TContext = unknown,
|
|
20
|
+
>(
|
|
21
|
+
_: QraftClientOptions | undefined,
|
|
22
|
+
schema: OperationSchema,
|
|
23
|
+
args: Parameters<
|
|
24
|
+
ServiceOperationMutation<
|
|
25
|
+
OperationSchema,
|
|
26
|
+
object | undefined,
|
|
27
|
+
TVariables,
|
|
28
|
+
TData
|
|
29
|
+
>['useIsMutating']
|
|
30
|
+
>
|
|
31
|
+
) => UseMutationResult<TData, TError, TVariables, TContext> = (
|
|
32
|
+
qraftOptions,
|
|
33
|
+
schema,
|
|
34
|
+
args
|
|
35
|
+
) => {
|
|
36
|
+
const [filters, queryClientByArg] = args;
|
|
37
|
+
|
|
38
|
+
return useIsMutatingStateTanstack(
|
|
39
|
+
composeMutationFilters(schema, filters) as never,
|
|
40
|
+
useQueryClient(qraftOptions, queryClientByArg)
|
|
41
|
+
) as never;
|
|
42
|
+
};
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from '@tanstack/react-query';
|
|
10
10
|
|
|
11
11
|
import { composeMutationKey } from '../lib/composeMutationKey.js';
|
|
12
|
-
import type {
|
|
12
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
13
13
|
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
14
14
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
15
15
|
import { QraftContext } from '../QraftContext.js';
|
|
@@ -25,10 +25,10 @@ export const useMutation: <
|
|
|
25
25
|
TContext = unknown,
|
|
26
26
|
>(
|
|
27
27
|
qraftOptions: QraftClientOptions | undefined,
|
|
28
|
-
schema:
|
|
28
|
+
schema: OperationSchema,
|
|
29
29
|
args: Parameters<
|
|
30
30
|
ServiceOperationMutation<
|
|
31
|
-
|
|
31
|
+
OperationSchema,
|
|
32
32
|
object | undefined,
|
|
33
33
|
TVariables,
|
|
34
34
|
TData
|
|
@@ -52,7 +52,8 @@ export const useMutation: <
|
|
|
52
52
|
);
|
|
53
53
|
|
|
54
54
|
const contextValue = useContext(qraftOptions?.context ?? QraftContext);
|
|
55
|
-
if (!contextValue?.
|
|
55
|
+
if (!contextValue?.requestFn)
|
|
56
|
+
throw new Error(`QraftContext.request not found`);
|
|
56
57
|
|
|
57
58
|
const mutationKey =
|
|
58
59
|
options && 'mutationKey' in options
|
|
@@ -70,28 +71,22 @@ export const useMutation: <
|
|
|
70
71
|
options?.mutationFn ??
|
|
71
72
|
(parameters
|
|
72
73
|
? function (bodyPayload) {
|
|
73
|
-
return contextValue.
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
body: bodyPayload as never,
|
|
79
|
-
}
|
|
80
|
-
);
|
|
74
|
+
return contextValue.requestFn(schema, {
|
|
75
|
+
parameters,
|
|
76
|
+
baseUrl: contextValue.baseUrl,
|
|
77
|
+
body: bodyPayload as never,
|
|
78
|
+
});
|
|
81
79
|
}
|
|
82
80
|
: function (parametersAndBodyPayload) {
|
|
83
81
|
const { body, ...parameters } = parametersAndBodyPayload as {
|
|
84
82
|
body: unknown;
|
|
85
83
|
};
|
|
86
84
|
|
|
87
|
-
return contextValue.
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
parameters,
|
|
93
|
-
} as never
|
|
94
|
-
);
|
|
85
|
+
return contextValue.requestFn(schema, {
|
|
86
|
+
parameters,
|
|
87
|
+
baseUrl: contextValue.baseUrl,
|
|
88
|
+
body,
|
|
89
|
+
} as never);
|
|
95
90
|
}),
|
|
96
91
|
},
|
|
97
92
|
useQueryClient(qraftOptions, queryClientByArg)
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import { useContext } from 'react';
|
|
4
|
-
|
|
5
3
|
import type { DefaultError } from '@tanstack/query-core';
|
|
6
4
|
import {
|
|
7
5
|
UseMutationResult,
|
|
8
6
|
useMutationState as useMutationStateTanstack,
|
|
9
7
|
} from '@tanstack/react-query';
|
|
10
8
|
|
|
11
|
-
import {
|
|
12
|
-
import type {
|
|
9
|
+
import { composeMutationFilters } from '../lib/composeMutationFilters.js';
|
|
10
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
13
11
|
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
14
12
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
15
13
|
import { ServiceOperationMutation } from '../ServiceOperation.js';
|
|
@@ -21,10 +19,10 @@ export const useMutationState: <
|
|
|
21
19
|
TContext = unknown,
|
|
22
20
|
>(
|
|
23
21
|
qraftOptions: QraftClientOptions | undefined,
|
|
24
|
-
schema:
|
|
22
|
+
schema: OperationSchema,
|
|
25
23
|
args: Parameters<
|
|
26
24
|
ServiceOperationMutation<
|
|
27
|
-
|
|
25
|
+
OperationSchema,
|
|
28
26
|
object | undefined,
|
|
29
27
|
TVariables,
|
|
30
28
|
TData
|
|
@@ -37,33 +35,10 @@ export const useMutationState: <
|
|
|
37
35
|
) => {
|
|
38
36
|
const [options, queryClientByArg] = args;
|
|
39
37
|
|
|
40
|
-
if (
|
|
41
|
-
options?.filters &&
|
|
42
|
-
'parameters' in options.filters &&
|
|
43
|
-
'mutationKey' in options.filters
|
|
44
|
-
) {
|
|
45
|
-
throw new Error(
|
|
46
|
-
`'useMutationState': 'parameters' and 'mutationKey' cannot be used together`
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const filters = options?.filters;
|
|
51
|
-
|
|
52
38
|
return useMutationStateTanstack(
|
|
53
39
|
{
|
|
54
40
|
...options,
|
|
55
|
-
filters:
|
|
56
|
-
filters && 'mutationKey' in filters
|
|
57
|
-
? filters
|
|
58
|
-
: {
|
|
59
|
-
...filters,
|
|
60
|
-
mutationKey: composeMutationKey(
|
|
61
|
-
schema,
|
|
62
|
-
filters && 'parameters' in filters
|
|
63
|
-
? filters.parameters
|
|
64
|
-
: undefined
|
|
65
|
-
),
|
|
66
|
-
},
|
|
41
|
+
filters: composeMutationFilters(schema, options?.filters),
|
|
67
42
|
} as never,
|
|
68
43
|
useQueryClient(qraftOptions, queryClientByArg)
|
|
69
44
|
) as never;
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
} from '@tanstack/react-query';
|
|
9
9
|
|
|
10
10
|
import { composeQueryKey } from '../lib/composeQueryKey.js';
|
|
11
|
-
import type {
|
|
11
|
+
import type { OperationSchema } from '../lib/requestFn.js';
|
|
12
12
|
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
13
13
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
14
14
|
import { QraftContext } from '../QraftContext.js';
|
|
@@ -16,19 +16,16 @@ import { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
|
16
16
|
|
|
17
17
|
export const useQueries: (
|
|
18
18
|
qraftOptions: QraftClientOptions | undefined,
|
|
19
|
-
schema:
|
|
19
|
+
schema: OperationSchema,
|
|
20
20
|
args: Parameters<
|
|
21
|
-
ServiceOperationQuery<
|
|
22
|
-
OperationRequestSchema,
|
|
23
|
-
unknown,
|
|
24
|
-
unknown
|
|
25
|
-
>['useQueries']
|
|
21
|
+
ServiceOperationQuery<OperationSchema, unknown, unknown>['useQueries']
|
|
26
22
|
>
|
|
27
23
|
) => QueriesResults<never> = (qraftOptions, schema, args) => {
|
|
28
24
|
const [options, queryClientByArg] = args;
|
|
29
25
|
|
|
30
26
|
const contextValue = useContext(qraftOptions?.context ?? QraftContext);
|
|
31
|
-
if (!contextValue?.
|
|
27
|
+
if (!contextValue?.requestFn)
|
|
28
|
+
throw new Error(`QraftContext.requestFn not found`);
|
|
32
29
|
|
|
33
30
|
return useQueriesTanstack(
|
|
34
31
|
{
|
|
@@ -43,6 +40,7 @@ export const useQueries: (
|
|
|
43
40
|
},
|
|
44
41
|
queryOptions
|
|
45
42
|
);
|
|
43
|
+
// @ts-expect-error
|
|
46
44
|
delete queryOptionsCopy.parameters;
|
|
47
45
|
return queryOptionsCopy;
|
|
48
46
|
})()
|
|
@@ -53,15 +51,12 @@ export const useQueries: (
|
|
|
53
51
|
queryFn:
|
|
54
52
|
optionsWithQueryKey.queryFn ??
|
|
55
53
|
function ({ queryKey: [, queryParams], signal, meta }) {
|
|
56
|
-
return contextValue.
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
meta,
|
|
63
|
-
}
|
|
64
|
-
);
|
|
54
|
+
return contextValue.requestFn(schema, {
|
|
55
|
+
parameters: queryParams as never,
|
|
56
|
+
baseUrl: contextValue.baseUrl,
|
|
57
|
+
signal,
|
|
58
|
+
meta,
|
|
59
|
+
});
|
|
65
60
|
},
|
|
66
61
|
};
|
|
67
62
|
}),
|