@kubb/plugin-react-query 5.0.0-beta.22 → 5.0.0-beta.27
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/{components-BTwB9V-K.js → components-CDmg-RPi.js} +82 -63
- package/dist/components-CDmg-RPi.js.map +1 -0
- package/dist/{components-D4SQmw7N.cjs → components-MPBTffPl.cjs} +82 -63
- package/dist/components-MPBTffPl.cjs.map +1 -0
- package/dist/components.cjs +1 -1
- package/dist/components.d.ts +1 -1
- package/dist/components.js +1 -1
- package/dist/{generators-BZ_sX2lp.js → generators-C-cwJah8.js} +97 -57
- package/dist/generators-C-cwJah8.js.map +1 -0
- package/dist/{generators-C4bV7v9Z.cjs → generators-DozEZKwy.cjs} +97 -57
- package/dist/generators-DozEZKwy.cjs.map +1 -0
- package/dist/generators.cjs +1 -1
- package/dist/generators.d.ts +41 -1
- package/dist/generators.js +1 -1
- package/dist/index.cjs +51 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +30 -1
- package/dist/index.js +51 -11
- package/dist/index.js.map +1 -1
- package/dist/{types-DG_OxOym.d.ts → types-DiZPLTXl.d.ts} +92 -55
- package/extension.yaml +904 -325
- package/package.json +7 -7
- package/src/components/InfiniteQuery.tsx +7 -6
- package/src/components/InfiniteQueryOptions.tsx +11 -10
- package/src/components/Mutation.tsx +7 -5
- package/src/components/MutationOptions.tsx +4 -3
- package/src/components/Query.tsx +6 -4
- package/src/components/QueryOptions.tsx +4 -3
- package/src/components/SuspenseInfiniteQuery.tsx +7 -6
- package/src/components/SuspenseInfiniteQueryOptions.tsx +11 -10
- package/src/components/SuspenseQuery.tsx +6 -4
- package/src/generators/customHookOptionsFileGenerator.tsx +7 -1
- package/src/generators/hookOptionsGenerator.tsx +14 -8
- package/src/generators/infiniteQueryGenerator.tsx +19 -10
- package/src/generators/mutationGenerator.tsx +17 -9
- package/src/generators/queryGenerator.tsx +17 -9
- package/src/generators/suspenseInfiniteQueryGenerator.tsx +19 -10
- package/src/generators/suspenseQueryGenerator.tsx +18 -9
- package/src/plugin.ts +34 -5
- package/src/resolvers/resolverReactQuery.ts +15 -4
- package/src/types.ts +89 -52
- package/src/utils.ts +8 -1
- package/dist/components-BTwB9V-K.js.map +0 -1
- package/dist/components-D4SQmw7N.cjs.map +0 -1
- package/dist/generators-BZ_sX2lp.js.map +0 -1
- package/dist/generators-C4bV7v9Z.cjs.map +0 -1
|
@@ -228,12 +228,12 @@ var URLPath = class {
|
|
|
228
228
|
get object() {
|
|
229
229
|
return this.toObject();
|
|
230
230
|
}
|
|
231
|
-
/** Returns a map of path parameter names, or `
|
|
231
|
+
/** Returns a map of path parameter names, or `null` when the path has no parameters.
|
|
232
232
|
*
|
|
233
233
|
* @example
|
|
234
234
|
* ```ts
|
|
235
235
|
* new URLPath('/pet/{petId}').params // { petId: 'petId' }
|
|
236
|
-
* new URLPath('/pet').params //
|
|
236
|
+
* new URLPath('/pet').params // null
|
|
237
237
|
* ```
|
|
238
238
|
*/
|
|
239
239
|
get params() {
|
|
@@ -296,7 +296,7 @@ var URLPath = class {
|
|
|
296
296
|
const key = replacer ? replacer(param) : param;
|
|
297
297
|
params[key] = key;
|
|
298
298
|
});
|
|
299
|
-
return Object.keys(params).length > 0 ? params :
|
|
299
|
+
return Object.keys(params).length > 0 ? params : null;
|
|
300
300
|
}
|
|
301
301
|
/** Converts the OpenAPI path to Express-style colon syntax.
|
|
302
302
|
*
|
|
@@ -315,10 +315,10 @@ const declarationPrinter$10 = functionPrinter({ mode: "declaration" });
|
|
|
315
315
|
const mutationKeyTransformer = ({ node, casing }) => {
|
|
316
316
|
return [`{ url: '${new URLPath(node.path, { casing }).toURLPath()}' }`];
|
|
317
317
|
};
|
|
318
|
-
function MutationKey({ name, paramsCasing, node, transformer
|
|
318
|
+
function MutationKey({ name, paramsCasing, node, transformer }) {
|
|
319
319
|
const paramsNode = ast.createFunctionParameters({ params: [] });
|
|
320
320
|
const paramsSignature = declarationPrinter$10.print(paramsNode) ?? "";
|
|
321
|
-
const keys = transformer({
|
|
321
|
+
const keys = (transformer ?? mutationKeyTransformer)({
|
|
322
322
|
node,
|
|
323
323
|
casing: paramsCasing
|
|
324
324
|
});
|
|
@@ -338,9 +338,9 @@ function MutationKey({ name, paramsCasing, node, transformer = mutationKeyTransf
|
|
|
338
338
|
//#endregion
|
|
339
339
|
//#region ../../internals/shared/src/operation.ts
|
|
340
340
|
function getOperationLink(node, link) {
|
|
341
|
-
if (!link) return;
|
|
342
|
-
if (typeof link === "function") return link(node);
|
|
343
|
-
if (link === "urlPath") return node.path ? `{@link ${new URLPath(node.path).URL}}` :
|
|
341
|
+
if (!link) return null;
|
|
342
|
+
if (typeof link === "function") return link(node) ?? null;
|
|
343
|
+
if (link === "urlPath") return node.path ? `{@link ${new URLPath(node.path).URL}}` : null;
|
|
344
344
|
return `{@link ${node.path.replaceAll("{", ":").replaceAll("}", "")}}`;
|
|
345
345
|
}
|
|
346
346
|
function getContentTypeInfo(node) {
|
|
@@ -355,9 +355,9 @@ function getContentTypeInfo(node) {
|
|
|
355
355
|
};
|
|
356
356
|
}
|
|
357
357
|
function buildRequestConfigType(node, resolver) {
|
|
358
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
358
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
359
359
|
const { isMultipleContentTypes, contentTypeUnion } = getContentTypeInfo(node);
|
|
360
|
-
return `${requestName ? `Partial<RequestConfig<${requestName}>>` : "Partial<RequestConfig>"} & { ${["client?: Client", isMultipleContentTypes ? `contentType?: ${contentTypeUnion}` :
|
|
360
|
+
return `${requestName ? `Partial<RequestConfig<${requestName}>>` : "Partial<RequestConfig>"} & { ${["client?: Client", isMultipleContentTypes ? `contentType?: ${contentTypeUnion}` : null].filter(Boolean).join("; ")} }`;
|
|
361
361
|
}
|
|
362
362
|
function buildOperationComments(node, options = {}) {
|
|
363
363
|
const { link = "pathTemplate", linkPosition = "afterDeprecated", splitLines = false } = options;
|
|
@@ -387,15 +387,22 @@ function getOperationParameters(node, options = {}) {
|
|
|
387
387
|
}
|
|
388
388
|
function getStatusCodeNumber(statusCode) {
|
|
389
389
|
const code = Number(statusCode);
|
|
390
|
-
return Number.isNaN(code) ?
|
|
390
|
+
return Number.isNaN(code) ? null : code;
|
|
391
|
+
}
|
|
392
|
+
function isSuccessStatusCode(statusCode) {
|
|
393
|
+
const code = getStatusCodeNumber(statusCode);
|
|
394
|
+
return code !== null && code >= 200 && code < 300;
|
|
391
395
|
}
|
|
392
396
|
function isErrorStatusCode(statusCode) {
|
|
393
397
|
const code = getStatusCodeNumber(statusCode);
|
|
394
|
-
return code !==
|
|
398
|
+
return code !== null && code >= 400;
|
|
395
399
|
}
|
|
396
400
|
function resolveErrorNames(node, resolver) {
|
|
397
401
|
return node.responses.filter((response) => isErrorStatusCode(response.statusCode)).map((response) => resolver.resolveResponseStatusName(node, response.statusCode));
|
|
398
402
|
}
|
|
403
|
+
function resolveSuccessNames(node, resolver) {
|
|
404
|
+
return node.responses.filter((response) => isSuccessStatusCode(response.statusCode)).map((response) => resolver.resolveResponseStatusName(node, response.statusCode));
|
|
405
|
+
}
|
|
399
406
|
function resolveStatusCodeNames(node, resolver) {
|
|
400
407
|
return node.responses.map((response) => resolver.resolveResponseStatusName(node, response.statusCode));
|
|
401
408
|
}
|
|
@@ -418,7 +425,7 @@ function resolveOperationTypeNames(node, resolver, options = {}) {
|
|
|
418
425
|
...query.map((param) => resolver.resolveQueryParamsName(node, param)),
|
|
419
426
|
...header.map((param) => resolver.resolveHeaderParamsName(node, param))
|
|
420
427
|
];
|
|
421
|
-
const bodyAndResponseNames = [node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
428
|
+
const bodyAndResponseNames = [node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null, resolver.resolveResponseName(node)];
|
|
422
429
|
const result = (options.order === "body-response-first" ? [
|
|
423
430
|
...bodyAndResponseNames,
|
|
424
431
|
...paramNames,
|
|
@@ -462,7 +469,7 @@ function resolveOperationOverrides(node, override) {
|
|
|
462
469
|
*/
|
|
463
470
|
function resolveZodSchemaNames(node, zodResolver) {
|
|
464
471
|
if (!zodResolver) return [];
|
|
465
|
-
return [zodResolver.resolveResponseName?.(node), node.requestBody?.content?.[0]?.schema ? zodResolver.resolveDataName?.(node) :
|
|
472
|
+
return [zodResolver.resolveResponseName?.(node), node.requestBody?.content?.[0]?.schema ? zodResolver.resolveDataName?.(node) : null].filter((n) => Boolean(n));
|
|
466
473
|
}
|
|
467
474
|
/**
|
|
468
475
|
* Resolve the type for a single path parameter.
|
|
@@ -486,14 +493,14 @@ function resolvePathParamType(node, param, resolver) {
|
|
|
486
493
|
}
|
|
487
494
|
/**
|
|
488
495
|
* Derive a query-params group type from the resolver.
|
|
489
|
-
* Returns `
|
|
496
|
+
* Returns `null` when no query params exist or when the group name
|
|
490
497
|
* equals the individual param name (no real group).
|
|
491
498
|
*/
|
|
492
499
|
function resolveQueryGroupType(node, params, resolver) {
|
|
493
|
-
if (!params.length) return
|
|
500
|
+
if (!params.length) return null;
|
|
494
501
|
const firstParam = params[0];
|
|
495
502
|
const groupName = resolver.resolveQueryParamsName(node, firstParam);
|
|
496
|
-
if (groupName === resolver.resolveParamName(node, firstParam)) return
|
|
503
|
+
if (groupName === resolver.resolveParamName(node, firstParam)) return null;
|
|
497
504
|
return {
|
|
498
505
|
type: ast.createParamsType({
|
|
499
506
|
variant: "reference",
|
|
@@ -543,7 +550,7 @@ function buildQueryKeyParams(node, options) {
|
|
|
543
550
|
const bodyType = node.requestBody?.content?.[0]?.schema ? ast.createParamsType({
|
|
544
551
|
variant: "reference",
|
|
545
552
|
name: resolver.resolveDataName(node)
|
|
546
|
-
}) :
|
|
553
|
+
}) : null;
|
|
547
554
|
const bodyRequired = node.requestBody?.required ?? false;
|
|
548
555
|
const params = [];
|
|
549
556
|
if (pathParams.length) {
|
|
@@ -590,18 +597,18 @@ const queryKeyTransformer = ({ node, casing }) => {
|
|
|
590
597
|
type: "path",
|
|
591
598
|
stringify: true
|
|
592
599
|
}),
|
|
593
|
-
hasQueryParams ? "...(params ? [params] : [])" :
|
|
594
|
-
hasRequestBody ? "...(data ? [data] : [])" :
|
|
600
|
+
hasQueryParams ? "...(params ? [params] : [])" : null,
|
|
601
|
+
hasRequestBody ? "...(data ? [data] : [])" : null
|
|
595
602
|
].filter(Boolean);
|
|
596
603
|
};
|
|
597
|
-
function QueryKey({ name, node, tsResolver, paramsCasing, pathParamsType, typeName, transformer
|
|
604
|
+
function QueryKey({ name, node, tsResolver, paramsCasing, pathParamsType, typeName, transformer }) {
|
|
598
605
|
const paramsNode = buildQueryKeyParams(node, {
|
|
599
606
|
pathParamsType,
|
|
600
607
|
paramsCasing,
|
|
601
608
|
resolver: tsResolver
|
|
602
609
|
});
|
|
603
610
|
const paramsSignature = declarationPrinter$9.print(paramsNode) ?? "";
|
|
604
|
-
const keys = transformer({
|
|
611
|
+
const keys = (transformer ?? queryKeyTransformer)({
|
|
605
612
|
node,
|
|
606
613
|
casing: paramsCasing
|
|
607
614
|
});
|
|
@@ -631,7 +638,7 @@ const declarationPrinter$8 = functionPrinter({ mode: "declaration" });
|
|
|
631
638
|
const callPrinter$8 = functionPrinter({ mode: "call" });
|
|
632
639
|
function getQueryOptionsParams(node, options) {
|
|
633
640
|
const { paramsType, paramsCasing, pathParamsType, resolver } = options;
|
|
634
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
641
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
635
642
|
return ast.createOperationParams(node, {
|
|
636
643
|
paramsType,
|
|
637
644
|
pathParamsType: paramsType === "object" ? "object" : pathParamsType === "object" ? "object" : "inline",
|
|
@@ -648,7 +655,8 @@ function getQueryOptionsParams(node, options) {
|
|
|
648
655
|
});
|
|
649
656
|
}
|
|
650
657
|
function QueryOptions({ name, clientName, dataReturnType, node, tsResolver, paramsCasing, paramsType, pathParamsType, queryKeyName }) {
|
|
651
|
-
const
|
|
658
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
659
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
652
660
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
653
661
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
654
662
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -695,7 +703,7 @@ const declarationPrinter$7 = functionPrinter({ mode: "declaration" });
|
|
|
695
703
|
const callPrinter$7 = functionPrinter({ mode: "call" });
|
|
696
704
|
function buildInfiniteQueryParamsNode(node, options) {
|
|
697
705
|
const { paramsType, paramsCasing, pathParamsType, resolver, pageParamGeneric } = options;
|
|
698
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
706
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
699
707
|
const optionsParam = ast.createFunctionParameter({
|
|
700
708
|
name: "options",
|
|
701
709
|
type: ast.createParamsType({
|
|
@@ -716,7 +724,8 @@ function buildInfiniteQueryParamsNode(node, options) {
|
|
|
716
724
|
});
|
|
717
725
|
}
|
|
718
726
|
function InfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, initialPageParam, queryParam, customOptions }) {
|
|
719
|
-
const
|
|
727
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
728
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
720
729
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
721
730
|
const responseType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
722
731
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -728,9 +737,9 @@ function InfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName,
|
|
|
728
737
|
const rawQueryParams = getOperationParameters(node).query;
|
|
729
738
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
730
739
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
731
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
732
|
-
})() :
|
|
733
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
740
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
741
|
+
})() : null;
|
|
742
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
734
743
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
735
744
|
const returnType = "UseInfiniteQueryResult<TData, TError> & { queryKey: TQueryKey }";
|
|
736
745
|
const generics = [
|
|
@@ -797,7 +806,8 @@ function InfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName,
|
|
|
797
806
|
const declarationPrinter$6 = functionPrinter({ mode: "declaration" });
|
|
798
807
|
const callPrinter$6 = functionPrinter({ mode: "call" });
|
|
799
808
|
function InfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam, nextParam, previousParam, node, tsResolver, paramsCasing, paramsType, dataReturnType, pathParamsType, queryParam, queryKeyName }) {
|
|
800
|
-
const
|
|
809
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
810
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
801
811
|
const queryFnDataType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
802
812
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
803
813
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -809,9 +819,9 @@ function InfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam,
|
|
|
809
819
|
const rawQueryParams = getOperationParameters(node).query;
|
|
810
820
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
811
821
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
812
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
813
|
-
})() :
|
|
814
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
822
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
823
|
+
})() : null;
|
|
824
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
815
825
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
816
826
|
const paramsNode = getQueryOptionsParams(node, {
|
|
817
827
|
paramsType,
|
|
@@ -829,12 +839,12 @@ function InfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam,
|
|
|
829
839
|
const queryKeyParamsCall = callPrinter$6.print(queryKeyParamsNode) ?? "";
|
|
830
840
|
const enabledSource = buildEnabledCheck(queryKeyParamsNode);
|
|
831
841
|
const enabledText = enabledSource ? `enabled: !!(${enabledSource}),` : "";
|
|
832
|
-
const hasNewParams = nextParam
|
|
842
|
+
const hasNewParams = nextParam != null || previousParam != null;
|
|
833
843
|
const [getNextPageParamExpr, getPreviousPageParamExpr] = (() => {
|
|
834
844
|
if (hasNewParams) {
|
|
835
|
-
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") :
|
|
836
|
-
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") :
|
|
837
|
-
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` :
|
|
845
|
+
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") : null;
|
|
846
|
+
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") : null;
|
|
847
|
+
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` : null, prevAccessor ? `getPreviousPageParam: (firstPage) => ${prevAccessor}` : null];
|
|
838
848
|
}
|
|
839
849
|
if (cursorParam) return [`getNextPageParam: (lastPage) => lastPage['${cursorParam}']`, `getPreviousPageParam: (firstPage) => firstPage['${cursorParam}']`];
|
|
840
850
|
return [dataReturnType === "full" ? "getNextPageParam: (lastPage, _allPages, lastPageParam) => Array.isArray(lastPage.data) && lastPage.data.length === 0 ? undefined : lastPageParam + 1" : "getNextPageParam: (lastPage, _allPages, lastPageParam) => Array.isArray(lastPage) && lastPage.length === 0 ? undefined : lastPageParam + 1", "getPreviousPageParam: (_firstPage, _allPages, firstPageParam) => firstPageParam <= 1 ? undefined : firstPageParam - 1"];
|
|
@@ -909,7 +919,8 @@ function buildMutationConfigParamsNode(node, resolver) {
|
|
|
909
919
|
})] });
|
|
910
920
|
}
|
|
911
921
|
function MutationOptions({ name, clientName, dataReturnType, node, tsResolver, paramsCasing, paramsType, pathParamsType, mutationKeyName }) {
|
|
912
|
-
const
|
|
922
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
923
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
913
924
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
914
925
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
915
926
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -950,7 +961,7 @@ function MutationOptions({ name, clientName, dataReturnType, node, tsResolver, p
|
|
|
950
961
|
generics: ["TContext = unknown"],
|
|
951
962
|
children: `
|
|
952
963
|
const mutationKey = ${mutationKeyName}()
|
|
953
|
-
return mutationOptions<${TData}, ${TError}, ${TRequest ? `{${TRequest}}` : "
|
|
964
|
+
return mutationOptions<${TData}, ${TError}, ${TRequest ? `{${TRequest}}` : "undefined"}, TContext>({
|
|
954
965
|
mutationKey,
|
|
955
966
|
mutationFn: async(${hasMutationParams ? `{ ${argKeysStr} }` : "_"}) => {
|
|
956
967
|
return ${clientName}(${clientCallStr})
|
|
@@ -974,7 +985,8 @@ function createMutationArgParams(node, options) {
|
|
|
974
985
|
}
|
|
975
986
|
function buildMutationParamsNode(node, options) {
|
|
976
987
|
const { paramsCasing, dataReturnType, resolver } = options;
|
|
977
|
-
const
|
|
988
|
+
const successNames = resolveSuccessNames(node, resolver);
|
|
989
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : resolver.resolveResponseName(node);
|
|
978
990
|
const errorNames = resolveErrorNames(node, resolver);
|
|
979
991
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
980
992
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -986,7 +998,7 @@ function buildMutationParamsNode(node, options) {
|
|
|
986
998
|
const generics = [
|
|
987
999
|
TData,
|
|
988
1000
|
TError,
|
|
989
|
-
TRequest ? `{${TRequest}}` : "
|
|
1001
|
+
TRequest ? `{${TRequest}}` : "undefined",
|
|
990
1002
|
"TContext"
|
|
991
1003
|
].join(", ");
|
|
992
1004
|
return ast.createFunctionParameters({ params: [ast.createFunctionParameter({
|
|
@@ -1002,7 +1014,8 @@ function buildMutationParamsNode(node, options) {
|
|
|
1002
1014
|
})] });
|
|
1003
1015
|
}
|
|
1004
1016
|
function Mutation({ name, mutationOptionsName, paramsCasing, dataReturnType, node, tsResolver, mutationKeyName, customOptions }) {
|
|
1005
|
-
const
|
|
1017
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1018
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1006
1019
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1007
1020
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1008
1021
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1014,7 +1027,7 @@ function Mutation({ name, mutationOptionsName, paramsCasing, dataReturnType, nod
|
|
|
1014
1027
|
const generics = [
|
|
1015
1028
|
TData,
|
|
1016
1029
|
TError,
|
|
1017
|
-
TRequest ? `{${TRequest}}` : "
|
|
1030
|
+
TRequest ? `{${TRequest}}` : "undefined",
|
|
1018
1031
|
"TContext"
|
|
1019
1032
|
].join(", ");
|
|
1020
1033
|
const returnType = `UseMutationResult<${generics}>`;
|
|
@@ -1059,8 +1072,9 @@ const declarationPrinter$3 = functionPrinter({ mode: "declaration" });
|
|
|
1059
1072
|
const callPrinter$3 = functionPrinter({ mode: "call" });
|
|
1060
1073
|
function buildQueryParamsNode(node, options) {
|
|
1061
1074
|
const { paramsType, paramsCasing, pathParamsType, dataReturnType, resolver } = options;
|
|
1062
|
-
const
|
|
1063
|
-
const
|
|
1075
|
+
const successNames = resolveSuccessNames(node, resolver);
|
|
1076
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : resolver.resolveResponseName(node);
|
|
1077
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
1064
1078
|
const errorNames = resolveErrorNames(node, resolver);
|
|
1065
1079
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1066
1080
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1090,7 +1104,8 @@ function buildQueryParamsNode(node, options) {
|
|
|
1090
1104
|
});
|
|
1091
1105
|
}
|
|
1092
1106
|
function Query({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, customOptions }) {
|
|
1093
|
-
const
|
|
1107
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1108
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1094
1109
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1095
1110
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1096
1111
|
const returnType = `UseQueryResult<TData, ${`ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`}> & { queryKey: TQueryKey }`;
|
|
@@ -1156,7 +1171,7 @@ const declarationPrinter$2 = functionPrinter({ mode: "declaration" });
|
|
|
1156
1171
|
const callPrinter$2 = functionPrinter({ mode: "call" });
|
|
1157
1172
|
function buildSuspenseInfiniteQueryParamsNode(node, options) {
|
|
1158
1173
|
const { paramsType, paramsCasing, pathParamsType, resolver, pageParamGeneric } = options;
|
|
1159
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
1174
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
1160
1175
|
const optionsParam = ast.createFunctionParameter({
|
|
1161
1176
|
name: "options",
|
|
1162
1177
|
type: ast.createParamsType({
|
|
@@ -1177,7 +1192,8 @@ function buildSuspenseInfiniteQueryParamsNode(node, options) {
|
|
|
1177
1192
|
});
|
|
1178
1193
|
}
|
|
1179
1194
|
function SuspenseInfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, customOptions, initialPageParam, queryParam }) {
|
|
1180
|
-
const
|
|
1195
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1196
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1181
1197
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1182
1198
|
const responseType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1183
1199
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1189,9 +1205,9 @@ function SuspenseInfiniteQuery({ name, queryKeyTypeName, queryOptionsName, query
|
|
|
1189
1205
|
const rawQueryParams = getOperationParameters(node).query;
|
|
1190
1206
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
1191
1207
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
1192
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
1193
|
-
})() :
|
|
1194
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
1208
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
1209
|
+
})() : null;
|
|
1210
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
1195
1211
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
1196
1212
|
const returnType = "UseSuspenseInfiniteQueryResult<TData, TError> & { queryKey: TQueryKey }";
|
|
1197
1213
|
const generics = [
|
|
@@ -1258,7 +1274,8 @@ function SuspenseInfiniteQuery({ name, queryKeyTypeName, queryOptionsName, query
|
|
|
1258
1274
|
const declarationPrinter$1 = functionPrinter({ mode: "declaration" });
|
|
1259
1275
|
const callPrinter$1 = functionPrinter({ mode: "call" });
|
|
1260
1276
|
function SuspenseInfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam, nextParam, previousParam, node, tsResolver, paramsCasing, paramsType, dataReturnType, pathParamsType, queryParam, queryKeyName }) {
|
|
1261
|
-
const
|
|
1277
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1278
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1262
1279
|
const queryFnDataType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1263
1280
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1264
1281
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1270,9 +1287,9 @@ function SuspenseInfiniteQueryOptions({ name, clientName, initialPageParam, curs
|
|
|
1270
1287
|
const rawQueryParams = getOperationParameters(node).query;
|
|
1271
1288
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
1272
1289
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
1273
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
1274
|
-
})() :
|
|
1275
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
1290
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
1291
|
+
})() : null;
|
|
1292
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
1276
1293
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
1277
1294
|
const paramsNode = getQueryOptionsParams(node, {
|
|
1278
1295
|
paramsType,
|
|
@@ -1290,12 +1307,12 @@ function SuspenseInfiniteQueryOptions({ name, clientName, initialPageParam, curs
|
|
|
1290
1307
|
const queryKeyParamsCall = callPrinter$1.print(queryKeyParamsNode) ?? "";
|
|
1291
1308
|
const enabledSource = buildEnabledCheck(queryKeyParamsNode);
|
|
1292
1309
|
const enabledText = enabledSource ? `enabled: !!(${enabledSource}),` : "";
|
|
1293
|
-
const hasNewParams = nextParam
|
|
1310
|
+
const hasNewParams = nextParam != null || previousParam != null;
|
|
1294
1311
|
const [getNextPageParamExpr, getPreviousPageParamExpr] = (() => {
|
|
1295
1312
|
if (hasNewParams) {
|
|
1296
|
-
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") :
|
|
1297
|
-
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") :
|
|
1298
|
-
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` :
|
|
1313
|
+
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") : null;
|
|
1314
|
+
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") : null;
|
|
1315
|
+
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` : null, prevAccessor ? `getPreviousPageParam: (firstPage) => ${prevAccessor}` : null];
|
|
1299
1316
|
}
|
|
1300
1317
|
if (cursorParam) return [`getNextPageParam: (lastPage) => lastPage['${cursorParam}']`, `getPreviousPageParam: (firstPage) => firstPage['${cursorParam}']`];
|
|
1301
1318
|
return [dataReturnType === "full" ? "getNextPageParam: (lastPage, _allPages, lastPageParam) => Array.isArray(lastPage.data) && lastPage.data.length === 0 ? undefined : lastPageParam + 1" : "getNextPageParam: (lastPage, _allPages, lastPageParam) => Array.isArray(lastPage) && lastPage.length === 0 ? undefined : lastPageParam + 1", "getPreviousPageParam: (_firstPage, _allPages, firstPageParam) => firstPageParam <= 1 ? undefined : firstPageParam - 1"];
|
|
@@ -1360,8 +1377,9 @@ const declarationPrinter = functionPrinter({ mode: "declaration" });
|
|
|
1360
1377
|
const callPrinter = functionPrinter({ mode: "call" });
|
|
1361
1378
|
function buildSuspenseQueryParamsNode(node, options) {
|
|
1362
1379
|
const { paramsType, paramsCasing, pathParamsType, dataReturnType, resolver } = options;
|
|
1363
|
-
const
|
|
1364
|
-
const
|
|
1380
|
+
const successNames = resolveSuccessNames(node, resolver);
|
|
1381
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : resolver.resolveResponseName(node);
|
|
1382
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
1365
1383
|
const errorNames = resolveErrorNames(node, resolver);
|
|
1366
1384
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1367
1385
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1390,7 +1408,8 @@ function buildSuspenseQueryParamsNode(node, options) {
|
|
|
1390
1408
|
});
|
|
1391
1409
|
}
|
|
1392
1410
|
function SuspenseQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, customOptions }) {
|
|
1393
|
-
const
|
|
1411
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1412
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1394
1413
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1395
1414
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1396
1415
|
const returnType = `UseSuspenseQueryResult<TData, ${`ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`}> & { queryKey: TQueryKey }`;
|
|
@@ -1449,4 +1468,4 @@ function SuspenseQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName,
|
|
|
1449
1468
|
//#endregion
|
|
1450
1469
|
export { mutationKeyTransformer as _, Mutation as a, InfiniteQuery as c, queryKeyTransformer as d, resolveOperationOverrides as f, MutationKey as g, resolveOperationTypeNames as h, Query as i, QueryOptions as l, getOperationParameters as m, SuspenseInfiniteQueryOptions as n, MutationOptions as o, resolveZodSchemaNames as p, SuspenseInfiniteQuery as r, InfiniteQueryOptions as s, SuspenseQuery as t, QueryKey as u, camelCase as v };
|
|
1451
1470
|
|
|
1452
|
-
//# sourceMappingURL=components-
|
|
1471
|
+
//# sourceMappingURL=components-CDmg-RPi.js.map
|