@openapi-qraft/react 1.1.4 → 1.2.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 +14 -0
- package/README.md +83 -31
- package/dist/QraftContext.d.ts +16 -5
- package/dist/QraftContext.d.ts.map +1 -1
- package/dist/QraftContext.js.map +1 -1
- package/dist/RequestClient.d.ts +2 -18
- package/dist/RequestClient.d.ts.map +1 -1
- package/dist/ServiceOperation.d.ts +41 -2
- 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/getInfiniteQueryData.d.ts +2 -2
- package/dist/callbacks/getInfiniteQueryData.d.ts.map +1 -1
- 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 +2 -2
- package/dist/callbacks/getQueryData.d.ts.map +1 -1
- 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 +5 -0
- package/dist/callbacks/isFetching.d.ts.map +1 -0
- package/dist/callbacks/isFetching.js +5 -0
- package/dist/callbacks/isFetching.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/refetchQueries.d.ts +5 -0
- package/dist/callbacks/refetchQueries.d.ts.map +1 -0
- package/dist/callbacks/refetchQueries.js +5 -0
- package/dist/callbacks/refetchQueries.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.map +1 -1
- package/dist/callbacks/setQueryData.d.ts +2 -2
- package/dist/callbacks/setQueryData.d.ts.map +1 -1
- package/dist/callbacks/setQueryData.js.map +1 -1
- package/dist/callbacks/useInfiniteQuery.d.ts +2 -2
- package/dist/callbacks/useInfiniteQuery.d.ts.map +1 -1
- package/dist/callbacks/useInfiniteQuery.js +7 -6
- package/dist/callbacks/useInfiniteQuery.js.map +1 -1
- package/dist/callbacks/useIsFetching.d.ts +5 -0
- package/dist/callbacks/useIsFetching.d.ts.map +1 -0
- package/dist/callbacks/useIsFetching.js +12 -0
- package/dist/callbacks/useIsFetching.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 +8 -7
- 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 +3 -7
- 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 +7 -6
- 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 +7 -6
- package/dist/callbacks/useQuery.js.map +1 -1
- package/dist/callbacks/useSuspenseInfiniteQuery.d.ts +2 -2
- package/dist/callbacks/useSuspenseInfiniteQuery.d.ts.map +1 -1
- package/dist/callbacks/useSuspenseInfiniteQuery.js +7 -6
- 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 +7 -6
- package/dist/callbacks/useSuspenseQueries.js.map +1 -1
- package/dist/callbacks/useSuspenseQuery.d.ts +2 -2
- package/dist/callbacks/useSuspenseQuery.d.ts.map +1 -1
- package/dist/callbacks/useSuspenseQuery.js +7 -6
- package/dist/callbacks/useSuspenseQuery.js.map +1 -1
- package/dist/index.d.ts +3 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/callQueryClientMethodWithQueryFilters.d.ts +2 -2
- package/dist/lib/callQueryClientMethodWithQueryFilters.d.ts.map +1 -1
- package/dist/lib/callQueryClientMethodWithQueryFilters.js +2 -29
- package/dist/lib/callQueryClientMethodWithQueryFilters.js.map +1 -1
- package/dist/lib/composeInfiniteQueryKey.d.ts +3 -3
- package/dist/lib/composeInfiniteQueryKey.d.ts.map +1 -1
- package/dist/lib/composeMutationKey.d.ts +4 -4
- package/dist/lib/composeMutationKey.d.ts.map +1 -1
- package/dist/lib/composeQueryFilters.d.ts +11 -0
- package/dist/lib/composeQueryFilters.d.ts.map +1 -0
- package/dist/lib/composeQueryFilters.js +32 -0
- package/dist/lib/composeQueryFilters.js.map +1 -0
- package/dist/lib/composeQueryKey.d.ts +3 -3
- package/dist/lib/composeQueryKey.d.ts.map +1 -1
- package/dist/lib/composeQueryKey.js.map +1 -1
- package/dist/lib/request.d.ts +50 -17
- package/dist/lib/request.d.ts.map +1 -1
- package/dist/lib/request.js +42 -31
- package/dist/lib/request.js.map +1 -1
- package/dist/lib/useQueryClient.d.ts +9 -0
- package/dist/lib/useQueryClient.d.ts.map +1 -0
- package/dist/lib/useQueryClient.js +15 -0
- package/dist/lib/useQueryClient.js.map +1 -0
- package/dist/qraftAPIClient.d.ts +7 -7
- package/dist/qraftAPIClient.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/QraftContext.ts +24 -9
- package/src/RequestClient.ts +10 -31
- package/src/ServiceOperation.ts +93 -1
- package/src/callbacks/cancelQueries.ts +3 -3
- package/src/callbacks/getInfiniteQueryData.ts +3 -3
- package/src/callbacks/getInfiniteQueryKey.ts +3 -3
- package/src/callbacks/getMutationKey.ts +3 -3
- package/src/callbacks/getQueryData.ts +7 -3
- package/src/callbacks/getQueryKey.ts +7 -3
- package/src/callbacks/invalidateQueries.ts +3 -3
- package/src/callbacks/isFetching.ts +22 -0
- package/src/callbacks/mutationFn.ts +3 -3
- package/src/callbacks/refetchQueries.ts +22 -0
- package/src/callbacks/resetQueries.ts +3 -3
- package/src/callbacks/setInfiniteQueryData.ts +4 -4
- package/src/callbacks/setQueryData.ts +8 -4
- package/src/callbacks/useInfiniteQuery.ts +17 -15
- package/src/callbacks/useIsFetching.ts +35 -0
- package/src/callbacks/useMutation.ts +23 -17
- package/src/callbacks/useMutationState.ts +5 -11
- package/src/callbacks/useQueries.ts +20 -14
- package/src/callbacks/useQuery.ts +22 -17
- package/src/callbacks/useSuspenseInfiniteQuery.ts +17 -15
- package/src/callbacks/useSuspenseQueries.ts +16 -14
- package/src/callbacks/useSuspenseQuery.ts +17 -15
- package/src/index.ts +12 -7
- package/src/lib/callQueryClientMethodWithQueryFilters.ts +4 -40
- package/src/lib/composeInfiniteQueryKey.ts +3 -3
- package/src/lib/composeMutationKey.ts +5 -5
- package/src/lib/composeQueryFilters.ts +44 -0
- package/src/lib/composeQueryKey.ts +6 -3
- package/src/lib/request.ts +136 -74
- package/src/lib/useQueryClient.ts +26 -0
- package/src/qraftAPIClient.ts +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSuspenseQueries.js","sourceRoot":"","sources":["../../src/callbacks/useSuspenseQueries.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAEL,
|
|
1
|
+
{"version":3,"file":"useSuspenseQueries.js","sourceRoot":"","sources":["../../src/callbacks/useSuspenseQueries.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAEL,kBAAkB,IAAI,0BAA0B,GACjD,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,MAAM,CAAC,MAAM,kBAAkB,GAUM,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAClE,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAAC;IAEzC,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,IAAI,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,YAAY,EAAE,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAE9E,OAAO,0BAA0B,CAC/B;QACE,GAAG,OAAO;QACV,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;YAC5C,MAAM,mBAAmB,GACvB,YAAY,IAAI,YAAY;gBAC1B,CAAC,CAAC,CAAC,GAAG,EAAE;oBACJ,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CACpC;wBACE,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC;qBAC3D,EACD,YAAY,CACb,CAAC;oBACF,OAAO,gBAAgB,CAAC,UAAU,CAAC;oBACnC,OAAO,gBAAgB,CAAC;gBAC1B,CAAC,CAAC,EAAE;gBACN,CAAC,CAAC,YAAY,CAAC;YAEnB,OAAO;gBACL,GAAG,mBAAmB;gBACtB,OAAO,EACL,mBAAmB,CAAC,OAAO;oBAC3B,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;wBACnD,OAAO,YAAY,CAAC,OAAO,CACzB,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EACjC,MAAM,EACN;4BACE,UAAU,EAAE,WAAoB;4BAChC,MAAM;4BACN,IAAI;yBACL,CACF,CAAC;oBACJ,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC;KACH,EACD,cAAc,CAAC,YAAY,EAAE,gBAAgB,CAAC,CACtC,CAAC;AACb,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DefaultError } from '@tanstack/query-core';
|
|
2
2
|
import { UseQueryResult } from '@tanstack/react-query';
|
|
3
|
+
import type { OperationRequestSchema } from '../lib/request.js';
|
|
3
4
|
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
4
|
-
import type { RequestClientSchema } from '../RequestClient.js';
|
|
5
5
|
import { ServiceOperationQuery } from '../ServiceOperation.js';
|
|
6
|
-
export declare const useSuspenseQuery: <TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData>(qraftOptions: QraftClientOptions | undefined, schema:
|
|
6
|
+
export declare const useSuspenseQuery: <TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData>(qraftOptions: QraftClientOptions | undefined, schema: OperationRequestSchema, args: Parameters<ServiceOperationQuery<OperationRequestSchema, unknown, unknown>['useSuspenseQuery']>) => UseQueryResult<TData, TError>;
|
|
7
7
|
//# sourceMappingURL=useSuspenseQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSuspenseQuery.d.ts","sourceRoot":"","sources":["../../src/callbacks/useSuspenseQuery.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"useSuspenseQuery.d.ts","sourceRoot":"","sources":["../../src/callbacks/useSuspenseQuery.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,cAAc,EAEf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EACL,qBAAqB,EAEtB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,gBAAgB,EAAE,CAC7B,YAAY,GAAG,OAAO,EACtB,MAAM,GAAG,YAAY,EACrB,KAAK,GAAG,YAAY,EAEpB,YAAY,EAAE,kBAAkB,GAAG,SAAS,EAC5C,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,UAAU,CACd,qBAAqB,CACnB,sBAAsB,EACtB,OAAO,EACP,OAAO,CACR,CAAC,kBAAkB,CAAC,CACtB,KACE,cAAc,CAAC,KAAK,EAAE,MAAM,CA+BhC,CAAC"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useContext } from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { useSuspenseQuery as useSuspenseQueryTanstack, } from '@tanstack/react-query';
|
|
4
4
|
import { composeQueryKey } from '../lib/composeQueryKey.js';
|
|
5
|
+
import { useQueryClient } from '../lib/useQueryClient.js';
|
|
5
6
|
import { QraftContext } from '../QraftContext.js';
|
|
6
7
|
export const useSuspenseQuery = (qraftOptions, schema, args) => {
|
|
7
8
|
const [parameters, options, queryClientByArg] = args;
|
|
8
|
-
const
|
|
9
|
-
if (!
|
|
10
|
-
throw new Error(`QraftContext.
|
|
9
|
+
const contextValue = useContext(qraftOptions?.context ?? QraftContext);
|
|
10
|
+
if (!contextValue?.request)
|
|
11
|
+
throw new Error(`QraftContext.request not found`);
|
|
11
12
|
const queryKey = Array.isArray(parameters)
|
|
12
13
|
? parameters
|
|
13
14
|
: composeQueryKey(schema, parameters);
|
|
@@ -16,12 +17,12 @@ export const useSuspenseQuery = (qraftOptions, schema, args) => {
|
|
|
16
17
|
queryKey,
|
|
17
18
|
queryFn: options?.queryFn ??
|
|
18
19
|
function ({ queryKey: [, queryParams], signal, meta }) {
|
|
19
|
-
return
|
|
20
|
+
return contextValue.request({ baseUrl: contextValue.baseUrl }, schema, {
|
|
20
21
|
parameters: queryParams,
|
|
21
22
|
signal,
|
|
22
23
|
meta,
|
|
23
24
|
});
|
|
24
25
|
},
|
|
25
|
-
}, useQueryClient(queryClientByArg
|
|
26
|
+
}, useQueryClient(qraftOptions, queryClientByArg));
|
|
26
27
|
};
|
|
27
28
|
//# sourceMappingURL=useSuspenseQuery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSuspenseQuery.js","sourceRoot":"","sources":["../../src/callbacks/useSuspenseQuery.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,OAAO,
|
|
1
|
+
{"version":3,"file":"useSuspenseQuery.js","sourceRoot":"","sources":["../../src/callbacks/useSuspenseQuery.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,OAAO,EAEL,gBAAgB,IAAI,wBAAwB,GAC7C,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,MAAM,CAAC,MAAM,gBAAgB,GAcQ,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAClE,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAAC;IAErD,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,IAAI,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,YAAY,EAAE,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAE9E,MAAM,QAAQ,GACZ,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QACvB,CAAC,CAAE,UAAoB;QACvB,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAE1C,OAAO,wBAAwB,CAC7B;QACE,GAAG,OAAO;QACV,QAAQ;QACR,OAAO,EACL,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;gBACnD,OAAO,YAAY,CAAC,OAAO,CACzB,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EACjC,MAAM,EACN;oBACE,UAAU,EAAE,WAAoB;oBAChC,MAAM;oBACN,IAAI;iBACL,CACF,CAAC;YACJ,CAAC;KACJ,EACD,cAAc,CAAC,YAAY,EAAE,gBAAgB,CAAC,CACtC,CAAC;AACb,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
export { qraftAPIClient } from './qraftAPIClient.js';
|
|
2
|
-
export type
|
|
3
|
-
export {
|
|
4
|
-
export type { QraftContextValue } from './QraftContext.js';
|
|
5
|
-
export { request, urlSerializer, bodySerializer } from './lib/request.js';
|
|
6
|
-
export type { APIRequestInit, HeadersOptions } from './lib/request.js';
|
|
1
|
+
export { qraftAPIClient, type QraftClientOptions } from './qraftAPIClient.js';
|
|
2
|
+
export { QraftContext, type QraftContextValue } from './QraftContext.js';
|
|
3
|
+
export { request, baseRequest, urlSerializer, bodySerializer, type OperationRequestInfo, type OperationRequestSchema, type RequestOptions, type HeadersOptions, } from './lib/request.js';
|
|
7
4
|
export type { ServiceOperationQuery, ServiceOperationMutation, } from './ServiceOperation.js';
|
|
8
|
-
export type { RequestClient } from './RequestClient.js';
|
|
9
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EACL,OAAO,EACP,WAAW,EACX,aAAa,EACb,cAAc,EACd,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { qraftAPIClient } from './qraftAPIClient.js';
|
|
2
2
|
export { QraftContext } from './QraftContext.js';
|
|
3
|
-
export { request, urlSerializer, bodySerializer } from './lib/request.js';
|
|
3
|
+
export { request, baseRequest, urlSerializer, bodySerializer, } from './lib/request.js';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAA2B,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAA0B,MAAM,mBAAmB,CAAC;AACzE,OAAO,EACL,OAAO,EACP,WAAW,EACX,aAAa,EACb,cAAc,GAKf,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { QueryClient } from '@tanstack/query-core';
|
|
2
|
-
import type {
|
|
2
|
+
import type { OperationRequestSchema } from './request.js';
|
|
3
3
|
/**
|
|
4
4
|
* Calls a query client method with query filters and options,
|
|
5
5
|
* and automatically composes the `QueryKey` based on the schema and parameters.
|
|
6
6
|
*/
|
|
7
|
-
export declare function callQueryClientMethodWithQueryFilters<QFMethod extends QueryFilterMethods>(queryFilterMethod: QFMethod, schema:
|
|
7
|
+
export declare function callQueryClientMethodWithQueryFilters<QFMethod extends QueryFilterMethods>(queryFilterMethod: QFMethod, schema: OperationRequestSchema, args: [QueryClient, ...Parameters<(typeof QueryClient.prototype)[QFMethod]>]): ReturnType<(typeof QueryClient.prototype)[QFMethod]>;
|
|
8
8
|
type QueryFiltersMethod<QFMethod extends keyof typeof QueryClient.prototype> = QFMethod;
|
|
9
9
|
type QueryFilterMethods = QueryFiltersMethod<'isFetching'> | QueryFiltersMethod<'getQueriesData'> | QueryFiltersMethod<'setQueriesData'> | QueryFiltersMethod<'removeQueries'> | QueryFiltersMethod<'resetQueries'> | QueryFiltersMethod<'cancelQueries'> | QueryFiltersMethod<'invalidateQueries'> | QueryFiltersMethod<'refetchQueries'>;
|
|
10
10
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callQueryClientMethodWithQueryFilters.d.ts","sourceRoot":"","sources":["../../src/lib/callQueryClientMethodWithQueryFilters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"callQueryClientMethodWithQueryFilters.d.ts","sourceRoot":"","sources":["../../src/lib/callQueryClientMethodWithQueryFilters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,qCAAqC,CACnD,QAAQ,SAAS,kBAAkB,EAEnC,iBAAiB,EAAE,QAAQ,EAC3B,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,CAAC,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAC3E,UAAU,CAAC,CAAC,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CA6BtD;AAED,KAAK,kBAAkB,CAAC,QAAQ,SAAS,MAAM,OAAO,WAAW,CAAC,SAAS,IACzE,QAAQ,CAAC;AAEX,KAAK,kBAAkB,GACnB,kBAAkB,CAAC,YAAY,CAAC,GAChC,kBAAkB,CAAC,gBAAgB,CAAC,GACpC,kBAAkB,CAAC,gBAAgB,CAAC,GACpC,kBAAkB,CAAC,eAAe,CAAC,GACnC,kBAAkB,CAAC,cAAc,CAAC,GAClC,kBAAkB,CAAC,eAAe,CAAC,GACnC,kBAAkB,CAAC,mBAAmB,CAAC,GACvC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { composeQueryFilters } from './composeQueryFilters.js';
|
|
2
2
|
/**
|
|
3
3
|
* Calls a query client method with query filters and options,
|
|
4
4
|
* and automatically composes the `QueryKey` based on the schema and parameters.
|
|
@@ -11,7 +11,7 @@ export function callQueryClientMethodWithQueryFilters(queryFilterMethod, schema,
|
|
|
11
11
|
: args.length === 3
|
|
12
12
|
? args[2]
|
|
13
13
|
: undefined);
|
|
14
|
-
const filters =
|
|
14
|
+
const filters = composeQueryFilters(schema, args.length === 1 ? undefined : args[0]);
|
|
15
15
|
const options = args.length === 3 ? args[1] : undefined;
|
|
16
16
|
if (!queryClient)
|
|
17
17
|
throw new Error('queryClient is required');
|
|
@@ -23,31 +23,4 @@ export function callQueryClientMethodWithQueryFilters(queryFilterMethod, schema,
|
|
|
23
23
|
// @ts-expect-error
|
|
24
24
|
return queryClient[queryFilterMethod](filters);
|
|
25
25
|
}
|
|
26
|
-
/**
|
|
27
|
-
* Replaces the `parameters` field in the filters with a `queryKey` field based on the schema.
|
|
28
|
-
* If no filters are provided, a `queryKey` will be composed schema's base query key.
|
|
29
|
-
* @param schema
|
|
30
|
-
* @param filters
|
|
31
|
-
*/
|
|
32
|
-
function composeFilters(schema, filters) {
|
|
33
|
-
if (!filters) {
|
|
34
|
-
return {
|
|
35
|
-
queryKey: composeQueryKey(schema, undefined),
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
if ('queryKey' in filters) {
|
|
39
|
-
return filters;
|
|
40
|
-
}
|
|
41
|
-
if ('parameters' in filters) {
|
|
42
|
-
const { parameters, ...filtersWithoutParameters } = filters;
|
|
43
|
-
Object.assign(filtersWithoutParameters, {
|
|
44
|
-
queryKey: composeQueryKey(schema, parameters),
|
|
45
|
-
});
|
|
46
|
-
return filtersWithoutParameters;
|
|
47
|
-
}
|
|
48
|
-
return {
|
|
49
|
-
...filters,
|
|
50
|
-
queryKey: composeQueryKey(schema, undefined),
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
26
|
//# sourceMappingURL=callQueryClientMethodWithQueryFilters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callQueryClientMethodWithQueryFilters.js","sourceRoot":"","sources":["../../src/lib/callQueryClientMethodWithQueryFilters.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"callQueryClientMethodWithQueryFilters.js","sourceRoot":"","sources":["../../src/lib/callQueryClientMethodWithQueryFilters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D;;;GAGG;AACH,MAAM,UAAU,qCAAqC,CAGnD,iBAA2B,EAC3B,MAA8B,EAC9B,IAA4E;IAE5E,MAAM,WAAW,GAAG,CAClB,IAAI,CAAC,MAAM,KAAK,CAAC;QACf,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACT,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YACjB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACT,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;gBACjB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBACT,CAAC,CAAC,SAAS,CACS,CAAC;IAE7B,MAAM,OAAO,GAAG,mBAAmB,CACjC,MAAM,EACN,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxC,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAExD,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7D,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,2BAA2B,iBAAiB,wBAAwB,CACrE,CAAC;IAEJ,IAAI,OAAO;QACT,mBAAmB;QACnB,OAAO,WAAW,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAE1D,mBAAmB;IACnB,OAAO,WAAW,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
3
|
-
export declare function composeInfiniteQueryKey<TSchema extends
|
|
1
|
+
import type { ServiceOperationInfiniteQueryKey } from '../ServiceOperation.js';
|
|
2
|
+
import type { OperationRequestSchema } from './request.js';
|
|
3
|
+
export declare function composeInfiniteQueryKey<TSchema extends OperationRequestSchema, TParams>(schema: TSchema, parameters: TParams | undefined): ServiceOperationInfiniteQueryKey<TSchema, TParams>;
|
|
4
4
|
//# sourceMappingURL=composeInfiniteQueryKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composeInfiniteQueryKey.d.ts","sourceRoot":"","sources":["../../src/lib/composeInfiniteQueryKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"composeInfiniteQueryKey.d.ts","sourceRoot":"","sources":["../../src/lib/composeInfiniteQueryKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,wBAAgB,uBAAuB,CACrC,OAAO,SAAS,sBAAsB,EACtC,OAAO,EAEP,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,OAAO,GAAG,SAAS,GAC9B,gCAAgC,CAAC,OAAO,EAAE,OAAO,CAAC,CAEpD"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ServiceOperationMutationKey } from '../ServiceOperation.js';
|
|
2
|
+
import type { OperationRequestSchema } from './request.js';
|
|
3
3
|
/**
|
|
4
4
|
* Omit `body` or `requestBody` from mutation parameters if exists
|
|
5
5
|
* and return the rest of the parameters
|
|
6
6
|
*/
|
|
7
|
-
export declare function composeMutationKey<TSchema extends
|
|
8
|
-
export declare function composeMutationKey<TSchema extends
|
|
7
|
+
export declare function composeMutationKey<TSchema extends OperationRequestSchema, TParams = undefined>(schema: TSchema, parameters: undefined): ServiceOperationMutationKey<TSchema, undefined>;
|
|
8
|
+
export declare function composeMutationKey<TSchema extends OperationRequestSchema, TParams>(schema: TSchema, parameters: TParams): ServiceOperationMutationKey<TSchema, TParams>;
|
|
9
9
|
export declare function omitMutationPayload<T>(params: T): {};
|
|
10
10
|
//# sourceMappingURL=composeMutationKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composeMutationKey.d.ts","sourceRoot":"","sources":["../../src/lib/composeMutationKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"composeMutationKey.d.ts","sourceRoot":"","sources":["../../src/lib/composeMutationKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,SAAS,sBAAsB,EACtC,OAAO,GAAG,SAAS,EAEnB,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,SAAS,GACpB,2BAA2B,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AACnD,wBAAgB,kBAAkB,CAChC,OAAO,SAAS,sBAAsB,EACtC,OAAO,EAEP,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,OAAO,GAClB,2BAA2B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAgBjD,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,MAa/C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { OperationRequestSchema } from './request.js';
|
|
2
|
+
/**
|
|
3
|
+
* Replaces the `parameters` field in the filters with a `queryKey` field based on the schema.
|
|
4
|
+
* If no filters are provided, a `queryKey` will be composed schema's base query key.
|
|
5
|
+
* @param schema
|
|
6
|
+
* @param filters
|
|
7
|
+
*/
|
|
8
|
+
export declare function composeQueryFilters<Filters extends object>(schema: OperationRequestSchema, filters: Filters | undefined): (Filters & Record<"queryKey", unknown>) | Omit<Filters & Record<"parameters", unknown>, "parameters"> | {
|
|
9
|
+
queryKey: import("../ServiceOperation.js").ServiceOperationQueryKey<OperationRequestSchema, undefined>;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=composeQueryFilters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composeQueryFilters.d.ts","sourceRoot":"","sources":["../../src/lib/composeQueryFilters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,SAAS,MAAM,EACxD,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,OAAO,GAAG,SAAS;;EAgC7B"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { composeQueryKey } from './composeQueryKey.js';
|
|
2
|
+
/**
|
|
3
|
+
* Replaces the `parameters` field in the filters with a `queryKey` field based on the schema.
|
|
4
|
+
* If no filters are provided, a `queryKey` will be composed schema's base query key.
|
|
5
|
+
* @param schema
|
|
6
|
+
* @param filters
|
|
7
|
+
*/
|
|
8
|
+
export function composeQueryFilters(schema, filters) {
|
|
9
|
+
if (!filters) {
|
|
10
|
+
return {
|
|
11
|
+
queryKey: composeQueryKey(schema, undefined),
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
if (filters && 'queryKey' in filters && 'parameters' in filters) {
|
|
15
|
+
throw new Error(`'composeQueryFilters': 'queryKey' and 'parameters' cannot be used together`);
|
|
16
|
+
}
|
|
17
|
+
if ('queryKey' in filters) {
|
|
18
|
+
return filters;
|
|
19
|
+
}
|
|
20
|
+
if ('parameters' in filters) {
|
|
21
|
+
const { parameters, ...filtersWithoutParameters } = filters;
|
|
22
|
+
Object.assign(filtersWithoutParameters, {
|
|
23
|
+
queryKey: composeQueryKey(schema, parameters),
|
|
24
|
+
});
|
|
25
|
+
return filtersWithoutParameters;
|
|
26
|
+
}
|
|
27
|
+
return {
|
|
28
|
+
...filters,
|
|
29
|
+
queryKey: composeQueryKey(schema, undefined),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=composeQueryFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composeQueryFilters.js","sourceRoot":"","sources":["../../src/lib/composeQueryFilters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAA8B,EAC9B,OAA4B;IAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC;SAC7C,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,IAAI,UAAU,IAAI,OAAO,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,IAAI,OAAO,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,EAAE,UAAU,EAAE,GAAG,wBAAwB,EAAE,GAAG,OAAO,CAAC;QAE5D,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE;YACtC,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC;SAC9C,CAAC,CAAC;QAEH,OAAO,wBAAwB,CAAC;IAClC,CAAC;IAED,OAAO;QACL,GAAG,OAAO;QACV,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC;KAC7C,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
3
|
-
export declare function composeQueryKey<TSchema extends
|
|
1
|
+
import type { ServiceOperationQueryKey } from '../ServiceOperation.js';
|
|
2
|
+
import type { OperationRequestSchema } from './request.js';
|
|
3
|
+
export declare function composeQueryKey<TSchema extends OperationRequestSchema, TParams>(schema: TSchema, parameters: TParams | undefined): ServiceOperationQueryKey<TSchema, TParams>;
|
|
4
4
|
//# sourceMappingURL=composeQueryKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composeQueryKey.d.ts","sourceRoot":"","sources":["../../src/lib/composeQueryKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"composeQueryKey.d.ts","sourceRoot":"","sources":["../../src/lib/composeQueryKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,wBAAgB,eAAe,CAC7B,OAAO,SAAS,sBAAsB,EACtC,OAAO,EAEP,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,OAAO,GAAG,SAAS,GAC9B,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,CAE5C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composeQueryKey.js","sourceRoot":"","sources":["../../src/lib/composeQueryKey.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,eAAe,
|
|
1
|
+
{"version":3,"file":"composeQueryKey.js","sourceRoot":"","sources":["../../src/lib/composeQueryKey.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,eAAe,CAI7B,MAAe,EACf,UAA+B;IAE/B,OAAO,CAAC,MAAM,EAAE,UAAU,IAAK,EAAc,CAAC,CAAC;AACjD,CAAC"}
|
package/dist/lib/request.d.ts
CHANGED
|
@@ -1,32 +1,65 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @throws {error: object|string, response: Response} if the request fails
|
|
3
3
|
*/
|
|
4
|
-
export declare function request<T>(
|
|
4
|
+
export declare function request<T>(options: RequestOptions, schema: OperationRequestSchema, requestInfo: OperationRequestInfo): Promise<T>;
|
|
5
|
+
export interface RequestOptions {
|
|
5
6
|
baseUrl: string;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}): string | Blob | FormData | undefined;
|
|
7
|
+
urlSerializer?: URLSerializer;
|
|
8
|
+
bodySerializer?: BodySerializer;
|
|
9
|
+
}
|
|
10
|
+
type URLSerializer = typeof urlSerializer;
|
|
11
|
+
type BodySerializer = typeof bodySerializer;
|
|
12
|
+
/**
|
|
13
|
+
* @throws {error: object|string, response: Response} if the request fails
|
|
14
|
+
*/
|
|
15
|
+
export declare function baseRequest<T>(options: Required<RequestOptions>, schema: OperationRequestSchema, requestInfo: OperationRequestInfo, customFetch?: typeof fetch): Promise<T>;
|
|
16
|
+
export declare function urlSerializer(baseUrl: string, schema: OperationRequestSchema, info: OperationRequestInfo): string;
|
|
17
|
+
export declare function bodySerializer(schema: OperationRequestSchema, info: OperationRequestInfo): string | Blob | FormData | undefined;
|
|
18
18
|
export type HeadersOptions = HeadersInit | Record<string, string | number | boolean | null | undefined>;
|
|
19
|
-
export
|
|
20
|
-
|
|
19
|
+
export interface OperationRequestSchema {
|
|
20
|
+
/**
|
|
21
|
+
* Operation path
|
|
22
|
+
* @example /user/{id}
|
|
23
|
+
*/
|
|
21
24
|
readonly url: string;
|
|
25
|
+
/**
|
|
26
|
+
* Operation method
|
|
27
|
+
*/
|
|
28
|
+
readonly method: 'get' | 'put' | 'post' | 'patch' | 'delete' | 'options' | 'head' | 'trace';
|
|
29
|
+
/**
|
|
30
|
+
* Media type of the request body
|
|
31
|
+
* @example application/json
|
|
32
|
+
*/
|
|
33
|
+
readonly mediaType?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface OperationRequestInfo extends Omit<RequestInit, 'headers' | 'method' | 'body'> {
|
|
36
|
+
/**
|
|
37
|
+
* OpenAPI parameters
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* { path: {id: 1}, query: {search: 'hello'} }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
22
43
|
readonly parameters?: {
|
|
23
44
|
readonly path?: Record<string, any>;
|
|
24
45
|
readonly cookie?: Record<string, any>;
|
|
25
46
|
readonly header?: Record<string, any>;
|
|
26
47
|
readonly query?: Record<string, any>;
|
|
27
48
|
};
|
|
49
|
+
/**
|
|
50
|
+
* Request body
|
|
51
|
+
* @example { name: 'John' }
|
|
52
|
+
*/
|
|
28
53
|
readonly body?: BodyInit | Record<string, unknown> | null;
|
|
29
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Request headers
|
|
56
|
+
* @example { 'X-Auth': '123' }
|
|
57
|
+
*/
|
|
30
58
|
readonly headers?: HeadersOptions;
|
|
31
|
-
|
|
59
|
+
/**
|
|
60
|
+
* Tanstack Query Meta
|
|
61
|
+
*/
|
|
62
|
+
meta?: Record<string, unknown>;
|
|
63
|
+
}
|
|
64
|
+
export {};
|
|
32
65
|
//# sourceMappingURL=request.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/lib/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAC7B,
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/lib/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAC7B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,sBAAsB,EAC9B,WAAW,EAAE,oBAAoB,GAChC,OAAO,CAAC,CAAC,CAAC,CAYZ;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,KAAK,aAAa,GAAG,OAAO,aAAa,CAAC;AAC1C,KAAK,cAAc,GAAG,OAAO,cAAc,CAAC;AAE5C;;GAEG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,EACjC,MAAM,EAAE,sBAAsB,EAC9B,WAAW,EAAE,oBAAoB,EACjC,WAAW,eAAQ,GAClB,OAAO,CAAC,CAAC,CAAC,CAkCZ;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,oBAAoB,GACzB,MAAM,CAgBR;AA6DD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,oBAAoB,wCAwB3B;AAyFD,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AAEjE,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,MAAM,EACX,KAAK,GACL,KAAK,GACL,MAAM,GACN,OAAO,GACP,QAAQ,GACR,SAAS,GACT,MAAM,GACN,OAAO,CAAC;IAEZ;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxD;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KACtC,CAAC;IACF;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1D;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAElC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC"}
|
package/dist/lib/request.js
CHANGED
|
@@ -1,24 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @throws {error: object|string, response: Response} if the request fails
|
|
3
3
|
*/
|
|
4
|
-
export async function request(
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
export async function request(options, schema, requestInfo) {
|
|
5
|
+
return baseRequest(isRequiredRequestOptions(options)
|
|
6
|
+
? options
|
|
7
|
+
: {
|
|
8
|
+
urlSerializer,
|
|
9
|
+
bodySerializer,
|
|
10
|
+
...options,
|
|
11
|
+
}, schema, requestInfo);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @throws {error: object|string, response: Response} if the request fails
|
|
15
|
+
*/
|
|
16
|
+
export async function baseRequest(options, schema, requestInfo, customFetch = fetch) {
|
|
17
|
+
const { parameters, headers, body, ...requestInfoRest } = requestInfo;
|
|
18
|
+
const requestBody = options.bodySerializer(schema, requestInfo);
|
|
19
|
+
const response = await customFetch(options.urlSerializer(options.baseUrl, schema, requestInfo), {
|
|
20
|
+
method: schema.method.toUpperCase(),
|
|
13
21
|
body: requestBody,
|
|
14
22
|
headers: mergeHeaders({
|
|
15
23
|
Accept: 'application/json',
|
|
16
|
-
'Content-Type': mediaType ?? getBodyContentType(body),
|
|
24
|
+
'Content-Type': schema.mediaType ?? getBodyContentType(body),
|
|
17
25
|
}, headers, parameters?.header, requestBody instanceof FormData
|
|
18
26
|
? // remove `Content-Type` if serialized body is FormData; browser will correctly set Content-Type & boundary expression
|
|
19
27
|
{ 'Content-Type': null }
|
|
20
28
|
: undefined),
|
|
21
|
-
...
|
|
29
|
+
...requestInfoRest,
|
|
22
30
|
});
|
|
23
31
|
// clone response to allow multiple reads
|
|
24
32
|
const clonedResponse = response.clone();
|
|
@@ -27,17 +35,17 @@ export async function request(config, requestInit, { urlSerializer: urlSerialize
|
|
|
27
35
|
}
|
|
28
36
|
return (await getResponseBody(clonedResponse));
|
|
29
37
|
}
|
|
30
|
-
export function urlSerializer(
|
|
31
|
-
const path = url.replace(/{(.*?)}/g, (substring, group) => {
|
|
32
|
-
if (parameters?.path?.hasOwnProperty(group)) {
|
|
33
|
-
return encodeURI(String(parameters?.path[group]));
|
|
38
|
+
export function urlSerializer(baseUrl, schema, info) {
|
|
39
|
+
const path = schema.url.replace(/{(.*?)}/g, (substring, group) => {
|
|
40
|
+
if (info.parameters?.path?.hasOwnProperty(group)) {
|
|
41
|
+
return encodeURI(String(info.parameters?.path[group]));
|
|
34
42
|
}
|
|
35
43
|
return substring;
|
|
36
44
|
});
|
|
37
|
-
if (parameters?.query) {
|
|
38
|
-
return `${
|
|
45
|
+
if (info.parameters?.query) {
|
|
46
|
+
return `${baseUrl}${path}${getQueryString(info.parameters.query)}`;
|
|
39
47
|
}
|
|
40
|
-
return `${
|
|
48
|
+
return `${baseUrl}${path}`;
|
|
41
49
|
}
|
|
42
50
|
function getQueryString(params) {
|
|
43
51
|
const qs = [];
|
|
@@ -89,22 +97,22 @@ function mergeHeaders(...allHeaders) {
|
|
|
89
97
|
}
|
|
90
98
|
return headers;
|
|
91
99
|
}
|
|
92
|
-
export function bodySerializer(
|
|
93
|
-
if (
|
|
100
|
+
export function bodySerializer(schema, info) {
|
|
101
|
+
if (info.body === undefined)
|
|
94
102
|
return;
|
|
95
|
-
if (
|
|
96
|
-
|
|
97
|
-
|
|
103
|
+
if (schema.method === 'get' ||
|
|
104
|
+
schema.method === 'head' ||
|
|
105
|
+
schema.method === 'options')
|
|
98
106
|
return;
|
|
99
|
-
if (
|
|
100
|
-
return getRequestBodyFormData(
|
|
101
|
-
if (!
|
|
102
|
-
(typeof
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
return
|
|
107
|
+
if (schema.mediaType?.includes('/form-data'))
|
|
108
|
+
return getRequestBodyFormData(info);
|
|
109
|
+
if (!schema.mediaType?.includes('/json') &&
|
|
110
|
+
(typeof info.body === 'string' ||
|
|
111
|
+
info.body instanceof Blob ||
|
|
112
|
+
info.body instanceof FormData)) {
|
|
113
|
+
return info.body;
|
|
106
114
|
}
|
|
107
|
-
return JSON.stringify(
|
|
115
|
+
return JSON.stringify(info.body);
|
|
108
116
|
}
|
|
109
117
|
function getRequestBodyFormData({ body, }) {
|
|
110
118
|
if (body instanceof FormData)
|
|
@@ -176,4 +184,7 @@ async function getResponseBody(response) {
|
|
|
176
184
|
}
|
|
177
185
|
return response.text();
|
|
178
186
|
}
|
|
187
|
+
function isRequiredRequestOptions(options) {
|
|
188
|
+
return Boolean(options.urlSerializer && options.bodySerializer);
|
|
189
|
+
}
|
|
179
190
|
//# sourceMappingURL=request.js.map
|
package/dist/lib/request.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/lib/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/lib/request.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { QueryClient } from '@tanstack/react-query';
|
|
2
|
+
import type { QraftClientOptions } from '../qraftAPIClient.js';
|
|
3
|
+
/**
|
|
4
|
+
* Get the QueryClient from the QraftContext or the provided QueryClient argument.
|
|
5
|
+
* @param qraftOptions if `queryClient` is not provided, will be taken from context
|
|
6
|
+
* @param queryClient If not provided, will be taken this instance
|
|
7
|
+
*/
|
|
8
|
+
export declare function useQueryClient(qraftOptions: QraftClientOptions | undefined, queryClient: QueryClient | undefined): QueryClient;
|
|
9
|
+
//# sourceMappingURL=useQueryClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useQueryClient.d.ts","sourceRoot":"","sources":["../../src/lib/useQueryClient.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,EAEZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,kBAAkB,GAAG,SAAS,EAC5C,WAAW,EAAE,WAAW,GAAG,SAAS,eAMrC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useContext } from 'react';
|
|
3
|
+
import { useQueryClient as useQueryClientTanstack, } from '@tanstack/react-query';
|
|
4
|
+
import { QraftContext } from '../QraftContext.js';
|
|
5
|
+
/**
|
|
6
|
+
* Get the QueryClient from the QraftContext or the provided QueryClient argument.
|
|
7
|
+
* @param qraftOptions if `queryClient` is not provided, will be taken from context
|
|
8
|
+
* @param queryClient If not provided, will be taken this instance
|
|
9
|
+
*/
|
|
10
|
+
export function useQueryClient(qraftOptions, queryClient) {
|
|
11
|
+
const queryClientByContext = useContext(qraftOptions?.context ?? QraftContext)
|
|
12
|
+
?.queryClient;
|
|
13
|
+
return useQueryClientTanstack(queryClient ?? queryClientByContext);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=useQueryClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useQueryClient.js","sourceRoot":"","sources":["../../src/lib/useQueryClient.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAEL,cAAc,IAAI,sBAAsB,GACzC,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,YAA4C,EAC5C,WAAoC;IAEpC,MAAM,oBAAoB,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,IAAI,YAAY,CAAC;QAC5E,EAAE,WAAW,CAAC;IAEhB,OAAO,sBAAsB,CAAC,WAAW,IAAI,oBAAoB,CAAC,CAAC;AACrE,CAAC"}
|