@openapi-qraft/react 1.1.2 → 1.1.4
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 +12 -0
- package/README.md +8 -2
- package/dist/QraftContext.d.ts +11 -0
- package/dist/QraftContext.d.ts.map +1 -0
- package/dist/QraftContext.js +4 -0
- package/dist/QraftContext.js.map +1 -0
- package/dist/RequestClient.d.ts +19 -0
- package/dist/RequestClient.d.ts.map +1 -0
- package/dist/RequestClient.js +2 -0
- package/dist/RequestClient.js.map +1 -0
- package/dist/ServiceOperation.d.ts +329 -0
- package/dist/ServiceOperation.d.ts.map +1 -0
- package/dist/ServiceOperation.js +2 -0
- package/dist/ServiceOperation.js.map +1 -0
- package/dist/callbacks/cancelQueries.d.ts +5 -0
- package/dist/callbacks/cancelQueries.d.ts.map +1 -0
- package/dist/callbacks/cancelQueries.js +5 -0
- package/dist/callbacks/cancelQueries.js.map +1 -0
- package/dist/callbacks/getInfiniteQueryData.d.ts +6 -0
- package/dist/callbacks/getInfiniteQueryData.d.ts.map +1 -0
- package/dist/callbacks/getInfiniteQueryData.js +8 -0
- package/dist/callbacks/getInfiniteQueryData.js.map +1 -0
- package/dist/callbacks/getInfiniteQueryKey.d.ts +5 -0
- package/dist/callbacks/getInfiniteQueryKey.d.ts.map +1 -0
- package/dist/callbacks/getInfiniteQueryKey.js +5 -0
- package/dist/callbacks/getInfiniteQueryKey.js.map +1 -0
- package/dist/callbacks/getMutationKey.d.ts +5 -0
- package/dist/callbacks/getMutationKey.d.ts.map +1 -0
- package/dist/callbacks/getMutationKey.js +5 -0
- package/dist/callbacks/getMutationKey.js.map +1 -0
- package/dist/callbacks/getQueryData.d.ts +5 -0
- package/dist/callbacks/getQueryData.d.ts.map +1 -0
- package/dist/callbacks/getQueryData.js +6 -0
- package/dist/callbacks/getQueryData.js.map +1 -0
- package/dist/callbacks/getQueryKey.d.ts +5 -0
- package/dist/callbacks/getQueryKey.d.ts.map +1 -0
- package/dist/callbacks/getQueryKey.js +5 -0
- package/dist/callbacks/getQueryKey.js.map +1 -0
- package/dist/callbacks/invalidateQueries.d.ts +5 -0
- package/dist/callbacks/invalidateQueries.d.ts.map +1 -0
- package/dist/callbacks/invalidateQueries.js +5 -0
- package/dist/callbacks/invalidateQueries.js.map +1 -0
- package/dist/callbacks/mutationFn.d.ts +4 -0
- package/dist/callbacks/mutationFn.d.ts.map +1 -0
- package/dist/callbacks/mutationFn.js +8 -0
- package/dist/callbacks/mutationFn.js.map +1 -0
- package/dist/callbacks/queryFn.d.ts +7 -0
- package/dist/callbacks/queryFn.d.ts.map +1 -0
- package/dist/callbacks/queryFn.js +9 -0
- package/dist/callbacks/queryFn.js.map +1 -0
- package/dist/callbacks/resetQueries.d.ts +5 -0
- package/dist/callbacks/resetQueries.d.ts.map +1 -0
- package/dist/callbacks/resetQueries.js +5 -0
- package/dist/callbacks/resetQueries.js.map +1 -0
- package/dist/callbacks/setInfiniteQueryData.d.ts +6 -0
- package/dist/callbacks/setInfiniteQueryData.d.ts.map +1 -0
- package/dist/callbacks/setInfiniteQueryData.js +9 -0
- package/dist/callbacks/setInfiniteQueryData.js.map +1 -0
- package/dist/callbacks/setQueryData.d.ts +5 -0
- package/dist/callbacks/setQueryData.d.ts.map +1 -0
- package/dist/callbacks/setQueryData.js +9 -0
- package/dist/callbacks/setQueryData.js.map +1 -0
- package/dist/callbacks/useInfiniteQuery.d.ts +7 -0
- package/dist/callbacks/useInfiniteQuery.d.ts.map +1 -0
- package/dist/callbacks/useInfiniteQuery.js +28 -0
- package/dist/callbacks/useInfiniteQuery.js.map +1 -0
- package/dist/callbacks/useMutation.d.ts +7 -0
- package/dist/callbacks/useMutation.d.ts.map +1 -0
- package/dist/callbacks/useMutation.js +39 -0
- package/dist/callbacks/useMutation.js.map +1 -0
- package/dist/callbacks/useMutationState.d.ts +7 -0
- package/dist/callbacks/useMutationState.d.ts.map +1 -0
- package/dist/callbacks/useMutationState.js +29 -0
- package/dist/callbacks/useMutationState.js.map +1 -0
- package/dist/callbacks/useQueries.d.ts +6 -0
- package/dist/callbacks/useQueries.d.ts.map +1 -0
- package/dist/callbacks/useQueries.js +37 -0
- package/dist/callbacks/useQueries.js.map +1 -0
- package/dist/callbacks/useQuery.d.ts +7 -0
- package/dist/callbacks/useQuery.d.ts.map +1 -0
- package/dist/callbacks/useQuery.js +27 -0
- package/dist/callbacks/useQuery.js.map +1 -0
- package/dist/callbacks/useSuspenseInfiniteQuery.d.ts +7 -0
- package/dist/callbacks/useSuspenseInfiniteQuery.d.ts.map +1 -0
- package/dist/callbacks/useSuspenseInfiniteQuery.js +28 -0
- package/dist/callbacks/useSuspenseInfiniteQuery.js.map +1 -0
- package/dist/callbacks/useSuspenseQueries.d.ts +6 -0
- package/dist/callbacks/useSuspenseQueries.d.ts.map +1 -0
- package/dist/callbacks/useSuspenseQueries.js +37 -0
- package/dist/callbacks/useSuspenseQueries.js.map +1 -0
- package/dist/callbacks/useSuspenseQuery.d.ts +7 -0
- package/dist/callbacks/useSuspenseQuery.d.ts.map +1 -0
- package/dist/callbacks/useSuspenseQuery.js +27 -0
- package/dist/callbacks/useSuspenseQuery.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/callQueryClientMethodWithQueryFilters.d.ts +11 -0
- package/dist/lib/callQueryClientMethodWithQueryFilters.d.ts.map +1 -0
- package/dist/lib/callQueryClientMethodWithQueryFilters.js +53 -0
- package/dist/lib/callQueryClientMethodWithQueryFilters.js.map +1 -0
- package/dist/lib/composeInfiniteQueryKey.d.ts +4 -0
- package/dist/lib/composeInfiniteQueryKey.d.ts.map +1 -0
- package/dist/lib/composeInfiniteQueryKey.js +4 -0
- package/dist/lib/composeInfiniteQueryKey.js.map +1 -0
- package/dist/lib/composeMutationKey.d.ts +10 -0
- package/dist/lib/composeMutationKey.d.ts.map +1 -0
- package/dist/lib/composeMutationKey.js +21 -0
- package/dist/lib/composeMutationKey.js.map +1 -0
- package/dist/lib/composeQueryKey.d.ts +4 -0
- package/dist/lib/composeQueryKey.d.ts.map +1 -0
- package/dist/lib/composeQueryKey.js +4 -0
- package/dist/lib/composeQueryKey.js.map +1 -0
- package/dist/lib/createRecursiveProxy.d.ts +9 -0
- package/dist/lib/createRecursiveProxy.d.ts.map +1 -0
- package/dist/lib/createRecursiveProxy.js +29 -0
- package/dist/lib/createRecursiveProxy.js.map +1 -0
- package/dist/lib/request.d.ts +32 -0
- package/dist/lib/request.d.ts.map +1 -0
- package/dist/lib/request.js +179 -0
- package/dist/lib/request.js.map +1 -0
- package/dist/lib/shelfMerge.d.ts +7 -0
- package/dist/lib/shelfMerge.d.ts.map +1 -0
- package/dist/lib/shelfMerge.js +28 -0
- package/dist/lib/shelfMerge.js.map +1 -0
- package/dist/qraftAPIClient.d.ts +36 -0
- package/dist/qraftAPIClient.d.ts.map +1 -0
- package/dist/qraftAPIClient.js +31 -0
- package/dist/qraftAPIClient.js.map +1 -0
- package/package.json +2 -2
- package/src/ServiceOperation.ts +45 -2
- package/src/callbacks/resetQueries.ts +22 -0
- package/src/lib/callQueryClientMethodWithQueryFilters.ts +36 -26
package/src/ServiceOperation.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
2
|
CancelOptions,
|
|
3
3
|
DefaultError,
|
|
4
4
|
FetchStatus,
|
|
@@ -12,6 +12,7 @@ import type {
|
|
|
12
12
|
QueriesPlaceholderDataFunction,
|
|
13
13
|
Query,
|
|
14
14
|
QueryClient,
|
|
15
|
+
ResetOptions,
|
|
15
16
|
SetDataOptions,
|
|
16
17
|
Updater,
|
|
17
18
|
} from '@tanstack/query-core';
|
|
@@ -65,7 +66,8 @@ export interface ServiceOperationQuery<
|
|
|
65
66
|
ServiceOperationSetQueryData<TSchema, TData, TParams>,
|
|
66
67
|
ServiceOperationSetInfiniteQueryData<TSchema, TData, TParams>,
|
|
67
68
|
ServiceOperationInvalidateQueries<TSchema, TData, TParams, TError>,
|
|
68
|
-
ServiceOperationCancelQueries<TSchema, TData, TParams, TError
|
|
69
|
+
ServiceOperationCancelQueries<TSchema, TData, TParams, TError>,
|
|
70
|
+
ServiceOperationResetQueries<TSchema, TData, TParams, TError> {
|
|
69
71
|
schema: TSchema;
|
|
70
72
|
types: {
|
|
71
73
|
parameters: TParams;
|
|
@@ -296,6 +298,47 @@ export interface ServiceOperationCancelQueriesCallback<
|
|
|
296
298
|
): Promise<void>;
|
|
297
299
|
}
|
|
298
300
|
|
|
301
|
+
interface ServiceOperationResetQueries<
|
|
302
|
+
TSchema extends { url: string; method: string },
|
|
303
|
+
TData,
|
|
304
|
+
TParams = {},
|
|
305
|
+
TError = DefaultError,
|
|
306
|
+
> {
|
|
307
|
+
resetQueries(
|
|
308
|
+
filters:
|
|
309
|
+
| QueryFiltersByParameters<TSchema, TData, TParams, TError>
|
|
310
|
+
| QueryFiltersByQueryKey<TSchema, TData, TParams, TError>,
|
|
311
|
+
options: ResetOptions,
|
|
312
|
+
queryClient: QueryClient
|
|
313
|
+
): Promise<void>;
|
|
314
|
+
resetQueries(
|
|
315
|
+
filters:
|
|
316
|
+
| QueryFiltersByParameters<TSchema, TData, TParams, TError>
|
|
317
|
+
| QueryFiltersByQueryKey<TSchema, TData, TParams, TError>,
|
|
318
|
+
queryClient: QueryClient
|
|
319
|
+
): Promise<void>;
|
|
320
|
+
resetQueries(queryClient: QueryClient): Promise<void>;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* @internal
|
|
325
|
+
*/
|
|
326
|
+
export interface ServiceOperationResetQueriesCallback<
|
|
327
|
+
TSchema extends { url: string; method: string },
|
|
328
|
+
TData,
|
|
329
|
+
TParams = {},
|
|
330
|
+
TError = DefaultError,
|
|
331
|
+
> extends ServiceOperationResetQueries<TSchema, TData, TParams, TError> {
|
|
332
|
+
resetQueries(
|
|
333
|
+
filters:
|
|
334
|
+
| QueryFiltersByParameters<TSchema, TData, TParams, TError>
|
|
335
|
+
| QueryFiltersByQueryKey<TSchema, TData, TParams, TError>
|
|
336
|
+
| QueryClient,
|
|
337
|
+
options?: ResetOptions | QueryClient,
|
|
338
|
+
queryClient?: QueryClient
|
|
339
|
+
): Promise<void>;
|
|
340
|
+
}
|
|
341
|
+
|
|
299
342
|
interface ServiceOperationUseSuspenseQueries<
|
|
300
343
|
TSchema extends { url: string; method: string },
|
|
301
344
|
TData,
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { callQueryClientMethodWithQueryFilters } from '../lib/callQueryClientMethodWithQueryFilters.js';
|
|
2
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
3
|
+
import type { RequestClientSchema } from '../RequestClient.js';
|
|
4
|
+
import type { ServiceOperationResetQueriesCallback } from '../ServiceOperation.js';
|
|
5
|
+
|
|
6
|
+
export function resetQueries<TData>(
|
|
7
|
+
qraftOptions: QraftClientOptions | undefined,
|
|
8
|
+
schema: RequestClientSchema,
|
|
9
|
+
args: Parameters<
|
|
10
|
+
ServiceOperationResetQueriesCallback<
|
|
11
|
+
RequestClientSchema,
|
|
12
|
+
unknown,
|
|
13
|
+
TData
|
|
14
|
+
>['resetQueries']
|
|
15
|
+
>
|
|
16
|
+
): Promise<void> {
|
|
17
|
+
return callQueryClientMethodWithQueryFilters(
|
|
18
|
+
'resetQueries',
|
|
19
|
+
schema,
|
|
20
|
+
args as never
|
|
21
|
+
) as never;
|
|
22
|
+
}
|
|
@@ -24,7 +24,10 @@ export function callQueryClientMethodWithQueryFilters<
|
|
|
24
24
|
: undefined
|
|
25
25
|
) as QueryClient | undefined;
|
|
26
26
|
|
|
27
|
-
const filters =
|
|
27
|
+
const filters = composeFilters(
|
|
28
|
+
schema,
|
|
29
|
+
args.length === 1 ? undefined : args[0]
|
|
30
|
+
);
|
|
28
31
|
const options = args.length === 3 ? args[1] : undefined;
|
|
29
32
|
|
|
30
33
|
if (!queryClient) throw new Error('queryClient is required');
|
|
@@ -33,41 +36,48 @@ export function callQueryClientMethodWithQueryFilters<
|
|
|
33
36
|
`queryClient is invalid, ${queryFilterMethod} method does not exist`
|
|
34
37
|
);
|
|
35
38
|
|
|
39
|
+
if (options)
|
|
40
|
+
// @ts-expect-error
|
|
41
|
+
return queryClient[queryFilterMethod](filters, options);
|
|
42
|
+
|
|
43
|
+
// @ts-expect-error
|
|
44
|
+
return queryClient[queryFilterMethod](filters);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Replaces the `parameters` field in the filters with a `queryKey` field based on the schema.
|
|
49
|
+
* If no filters are provided, a `queryKey` will be composed schema's base query key.
|
|
50
|
+
* @param schema
|
|
51
|
+
* @param filters
|
|
52
|
+
*/
|
|
53
|
+
function composeFilters<Filters extends object>(
|
|
54
|
+
schema: RequestClientSchema,
|
|
55
|
+
filters: Filters | undefined
|
|
56
|
+
) {
|
|
36
57
|
if (!filters) {
|
|
37
|
-
return
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
},
|
|
41
|
-
options as never
|
|
42
|
-
) as never;
|
|
58
|
+
return {
|
|
59
|
+
queryKey: composeQueryKey(schema, undefined),
|
|
60
|
+
};
|
|
43
61
|
}
|
|
44
62
|
|
|
45
63
|
if ('queryKey' in filters) {
|
|
46
|
-
return
|
|
47
|
-
filters as never,
|
|
48
|
-
options as never
|
|
49
|
-
) as never;
|
|
64
|
+
return filters;
|
|
50
65
|
}
|
|
51
66
|
|
|
52
67
|
if ('parameters' in filters) {
|
|
53
|
-
const { parameters, ...
|
|
68
|
+
const { parameters, ...filtersWithoutParameters } = filters;
|
|
54
69
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
options as never
|
|
61
|
-
) as never;
|
|
70
|
+
Object.assign(filtersWithoutParameters, {
|
|
71
|
+
queryKey: composeQueryKey(schema, parameters),
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
return filtersWithoutParameters;
|
|
62
75
|
}
|
|
63
76
|
|
|
64
|
-
return
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
} as never,
|
|
69
|
-
options as never
|
|
70
|
-
) as never;
|
|
77
|
+
return {
|
|
78
|
+
...filters,
|
|
79
|
+
queryKey: composeQueryKey(schema, undefined),
|
|
80
|
+
};
|
|
71
81
|
}
|
|
72
82
|
|
|
73
83
|
type QueryFiltersMethod<QFMethod extends keyof typeof QueryClient.prototype> =
|