@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
|
@@ -253,12 +253,12 @@ var URLPath = class {
|
|
|
253
253
|
get object() {
|
|
254
254
|
return this.toObject();
|
|
255
255
|
}
|
|
256
|
-
/** Returns a map of path parameter names, or `
|
|
256
|
+
/** Returns a map of path parameter names, or `null` when the path has no parameters.
|
|
257
257
|
*
|
|
258
258
|
* @example
|
|
259
259
|
* ```ts
|
|
260
260
|
* new URLPath('/pet/{petId}').params // { petId: 'petId' }
|
|
261
|
-
* new URLPath('/pet').params //
|
|
261
|
+
* new URLPath('/pet').params // null
|
|
262
262
|
* ```
|
|
263
263
|
*/
|
|
264
264
|
get params() {
|
|
@@ -321,7 +321,7 @@ var URLPath = class {
|
|
|
321
321
|
const key = replacer ? replacer(param) : param;
|
|
322
322
|
params[key] = key;
|
|
323
323
|
});
|
|
324
|
-
return Object.keys(params).length > 0 ? params :
|
|
324
|
+
return Object.keys(params).length > 0 ? params : null;
|
|
325
325
|
}
|
|
326
326
|
/** Converts the OpenAPI path to Express-style colon syntax.
|
|
327
327
|
*
|
|
@@ -340,10 +340,10 @@ const declarationPrinter$10 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "decl
|
|
|
340
340
|
const mutationKeyTransformer = ({ node, casing }) => {
|
|
341
341
|
return [`{ url: '${new URLPath(node.path, { casing }).toURLPath()}' }`];
|
|
342
342
|
};
|
|
343
|
-
function MutationKey({ name, paramsCasing, node, transformer
|
|
343
|
+
function MutationKey({ name, paramsCasing, node, transformer }) {
|
|
344
344
|
const paramsNode = _kubb_core.ast.createFunctionParameters({ params: [] });
|
|
345
345
|
const paramsSignature = declarationPrinter$10.print(paramsNode) ?? "";
|
|
346
|
-
const keys = transformer({
|
|
346
|
+
const keys = (transformer ?? mutationKeyTransformer)({
|
|
347
347
|
node,
|
|
348
348
|
casing: paramsCasing
|
|
349
349
|
});
|
|
@@ -363,9 +363,9 @@ function MutationKey({ name, paramsCasing, node, transformer = mutationKeyTransf
|
|
|
363
363
|
//#endregion
|
|
364
364
|
//#region ../../internals/shared/src/operation.ts
|
|
365
365
|
function getOperationLink(node, link) {
|
|
366
|
-
if (!link) return;
|
|
367
|
-
if (typeof link === "function") return link(node);
|
|
368
|
-
if (link === "urlPath") return node.path ? `{@link ${new URLPath(node.path).URL}}` :
|
|
366
|
+
if (!link) return null;
|
|
367
|
+
if (typeof link === "function") return link(node) ?? null;
|
|
368
|
+
if (link === "urlPath") return node.path ? `{@link ${new URLPath(node.path).URL}}` : null;
|
|
369
369
|
return `{@link ${node.path.replaceAll("{", ":").replaceAll("}", "")}}`;
|
|
370
370
|
}
|
|
371
371
|
function getContentTypeInfo(node) {
|
|
@@ -380,9 +380,9 @@ function getContentTypeInfo(node) {
|
|
|
380
380
|
};
|
|
381
381
|
}
|
|
382
382
|
function buildRequestConfigType(node, resolver) {
|
|
383
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
383
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
384
384
|
const { isMultipleContentTypes, contentTypeUnion } = getContentTypeInfo(node);
|
|
385
|
-
return `${requestName ? `Partial<RequestConfig<${requestName}>>` : "Partial<RequestConfig>"} & { ${["client?: Client", isMultipleContentTypes ? `contentType?: ${contentTypeUnion}` :
|
|
385
|
+
return `${requestName ? `Partial<RequestConfig<${requestName}>>` : "Partial<RequestConfig>"} & { ${["client?: Client", isMultipleContentTypes ? `contentType?: ${contentTypeUnion}` : null].filter(Boolean).join("; ")} }`;
|
|
386
386
|
}
|
|
387
387
|
function buildOperationComments(node, options = {}) {
|
|
388
388
|
const { link = "pathTemplate", linkPosition = "afterDeprecated", splitLines = false } = options;
|
|
@@ -412,15 +412,22 @@ function getOperationParameters(node, options = {}) {
|
|
|
412
412
|
}
|
|
413
413
|
function getStatusCodeNumber(statusCode) {
|
|
414
414
|
const code = Number(statusCode);
|
|
415
|
-
return Number.isNaN(code) ?
|
|
415
|
+
return Number.isNaN(code) ? null : code;
|
|
416
|
+
}
|
|
417
|
+
function isSuccessStatusCode(statusCode) {
|
|
418
|
+
const code = getStatusCodeNumber(statusCode);
|
|
419
|
+
return code !== null && code >= 200 && code < 300;
|
|
416
420
|
}
|
|
417
421
|
function isErrorStatusCode(statusCode) {
|
|
418
422
|
const code = getStatusCodeNumber(statusCode);
|
|
419
|
-
return code !==
|
|
423
|
+
return code !== null && code >= 400;
|
|
420
424
|
}
|
|
421
425
|
function resolveErrorNames(node, resolver) {
|
|
422
426
|
return node.responses.filter((response) => isErrorStatusCode(response.statusCode)).map((response) => resolver.resolveResponseStatusName(node, response.statusCode));
|
|
423
427
|
}
|
|
428
|
+
function resolveSuccessNames(node, resolver) {
|
|
429
|
+
return node.responses.filter((response) => isSuccessStatusCode(response.statusCode)).map((response) => resolver.resolveResponseStatusName(node, response.statusCode));
|
|
430
|
+
}
|
|
424
431
|
function resolveStatusCodeNames(node, resolver) {
|
|
425
432
|
return node.responses.map((response) => resolver.resolveResponseStatusName(node, response.statusCode));
|
|
426
433
|
}
|
|
@@ -443,7 +450,7 @@ function resolveOperationTypeNames(node, resolver, options = {}) {
|
|
|
443
450
|
...query.map((param) => resolver.resolveQueryParamsName(node, param)),
|
|
444
451
|
...header.map((param) => resolver.resolveHeaderParamsName(node, param))
|
|
445
452
|
];
|
|
446
|
-
const bodyAndResponseNames = [node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
453
|
+
const bodyAndResponseNames = [node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null, resolver.resolveResponseName(node)];
|
|
447
454
|
const result = (options.order === "body-response-first" ? [
|
|
448
455
|
...bodyAndResponseNames,
|
|
449
456
|
...paramNames,
|
|
@@ -487,7 +494,7 @@ function resolveOperationOverrides(node, override) {
|
|
|
487
494
|
*/
|
|
488
495
|
function resolveZodSchemaNames(node, zodResolver) {
|
|
489
496
|
if (!zodResolver) return [];
|
|
490
|
-
return [zodResolver.resolveResponseName?.(node), node.requestBody?.content?.[0]?.schema ? zodResolver.resolveDataName?.(node) :
|
|
497
|
+
return [zodResolver.resolveResponseName?.(node), node.requestBody?.content?.[0]?.schema ? zodResolver.resolveDataName?.(node) : null].filter((n) => Boolean(n));
|
|
491
498
|
}
|
|
492
499
|
/**
|
|
493
500
|
* Resolve the type for a single path parameter.
|
|
@@ -511,14 +518,14 @@ function resolvePathParamType(node, param, resolver) {
|
|
|
511
518
|
}
|
|
512
519
|
/**
|
|
513
520
|
* Derive a query-params group type from the resolver.
|
|
514
|
-
* Returns `
|
|
521
|
+
* Returns `null` when no query params exist or when the group name
|
|
515
522
|
* equals the individual param name (no real group).
|
|
516
523
|
*/
|
|
517
524
|
function resolveQueryGroupType(node, params, resolver) {
|
|
518
|
-
if (!params.length) return
|
|
525
|
+
if (!params.length) return null;
|
|
519
526
|
const firstParam = params[0];
|
|
520
527
|
const groupName = resolver.resolveQueryParamsName(node, firstParam);
|
|
521
|
-
if (groupName === resolver.resolveParamName(node, firstParam)) return
|
|
528
|
+
if (groupName === resolver.resolveParamName(node, firstParam)) return null;
|
|
522
529
|
return {
|
|
523
530
|
type: _kubb_core.ast.createParamsType({
|
|
524
531
|
variant: "reference",
|
|
@@ -568,7 +575,7 @@ function buildQueryKeyParams(node, options) {
|
|
|
568
575
|
const bodyType = node.requestBody?.content?.[0]?.schema ? _kubb_core.ast.createParamsType({
|
|
569
576
|
variant: "reference",
|
|
570
577
|
name: resolver.resolveDataName(node)
|
|
571
|
-
}) :
|
|
578
|
+
}) : null;
|
|
572
579
|
const bodyRequired = node.requestBody?.required ?? false;
|
|
573
580
|
const params = [];
|
|
574
581
|
if (pathParams.length) {
|
|
@@ -615,18 +622,18 @@ const queryKeyTransformer = ({ node, casing }) => {
|
|
|
615
622
|
type: "path",
|
|
616
623
|
stringify: true
|
|
617
624
|
}),
|
|
618
|
-
hasQueryParams ? "...(params ? [params] : [])" :
|
|
619
|
-
hasRequestBody ? "...(data ? [data] : [])" :
|
|
625
|
+
hasQueryParams ? "...(params ? [params] : [])" : null,
|
|
626
|
+
hasRequestBody ? "...(data ? [data] : [])" : null
|
|
620
627
|
].filter(Boolean);
|
|
621
628
|
};
|
|
622
|
-
function QueryKey({ name, node, tsResolver, paramsCasing, pathParamsType, typeName, transformer
|
|
629
|
+
function QueryKey({ name, node, tsResolver, paramsCasing, pathParamsType, typeName, transformer }) {
|
|
623
630
|
const paramsNode = buildQueryKeyParams(node, {
|
|
624
631
|
pathParamsType,
|
|
625
632
|
paramsCasing,
|
|
626
633
|
resolver: tsResolver
|
|
627
634
|
});
|
|
628
635
|
const paramsSignature = declarationPrinter$9.print(paramsNode) ?? "";
|
|
629
|
-
const keys = transformer({
|
|
636
|
+
const keys = (transformer ?? queryKeyTransformer)({
|
|
630
637
|
node,
|
|
631
638
|
casing: paramsCasing
|
|
632
639
|
});
|
|
@@ -656,7 +663,7 @@ const declarationPrinter$8 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "decla
|
|
|
656
663
|
const callPrinter$8 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
657
664
|
function getQueryOptionsParams(node, options) {
|
|
658
665
|
const { paramsType, paramsCasing, pathParamsType, resolver } = options;
|
|
659
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
666
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
660
667
|
return _kubb_core.ast.createOperationParams(node, {
|
|
661
668
|
paramsType,
|
|
662
669
|
pathParamsType: paramsType === "object" ? "object" : pathParamsType === "object" ? "object" : "inline",
|
|
@@ -673,7 +680,8 @@ function getQueryOptionsParams(node, options) {
|
|
|
673
680
|
});
|
|
674
681
|
}
|
|
675
682
|
function QueryOptions({ name, clientName, dataReturnType, node, tsResolver, paramsCasing, paramsType, pathParamsType, queryKeyName }) {
|
|
676
|
-
const
|
|
683
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
684
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
677
685
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
678
686
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
679
687
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -720,7 +728,7 @@ const declarationPrinter$7 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "decla
|
|
|
720
728
|
const callPrinter$7 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
721
729
|
function buildInfiniteQueryParamsNode(node, options) {
|
|
722
730
|
const { paramsType, paramsCasing, pathParamsType, resolver, pageParamGeneric } = options;
|
|
723
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
731
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
724
732
|
const optionsParam = _kubb_core.ast.createFunctionParameter({
|
|
725
733
|
name: "options",
|
|
726
734
|
type: _kubb_core.ast.createParamsType({
|
|
@@ -741,7 +749,8 @@ function buildInfiniteQueryParamsNode(node, options) {
|
|
|
741
749
|
});
|
|
742
750
|
}
|
|
743
751
|
function InfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, initialPageParam, queryParam, customOptions }) {
|
|
744
|
-
const
|
|
752
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
753
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
745
754
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
746
755
|
const responseType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
747
756
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -753,9 +762,9 @@ function InfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName,
|
|
|
753
762
|
const rawQueryParams = getOperationParameters(node).query;
|
|
754
763
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
755
764
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
756
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
757
|
-
})() :
|
|
758
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
765
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
766
|
+
})() : null;
|
|
767
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
759
768
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
760
769
|
const returnType = "UseInfiniteQueryResult<TData, TError> & { queryKey: TQueryKey }";
|
|
761
770
|
const generics = [
|
|
@@ -822,7 +831,8 @@ function InfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName,
|
|
|
822
831
|
const declarationPrinter$6 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "declaration" });
|
|
823
832
|
const callPrinter$6 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
824
833
|
function InfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam, nextParam, previousParam, node, tsResolver, paramsCasing, paramsType, dataReturnType, pathParamsType, queryParam, queryKeyName }) {
|
|
825
|
-
const
|
|
834
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
835
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
826
836
|
const queryFnDataType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
827
837
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
828
838
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -834,9 +844,9 @@ function InfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam,
|
|
|
834
844
|
const rawQueryParams = getOperationParameters(node).query;
|
|
835
845
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
836
846
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
837
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
838
|
-
})() :
|
|
839
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
847
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
848
|
+
})() : null;
|
|
849
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
840
850
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
841
851
|
const paramsNode = getQueryOptionsParams(node, {
|
|
842
852
|
paramsType,
|
|
@@ -854,12 +864,12 @@ function InfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam,
|
|
|
854
864
|
const queryKeyParamsCall = callPrinter$6.print(queryKeyParamsNode) ?? "";
|
|
855
865
|
const enabledSource = buildEnabledCheck(queryKeyParamsNode);
|
|
856
866
|
const enabledText = enabledSource ? `enabled: !!(${enabledSource}),` : "";
|
|
857
|
-
const hasNewParams = nextParam
|
|
867
|
+
const hasNewParams = nextParam != null || previousParam != null;
|
|
858
868
|
const [getNextPageParamExpr, getPreviousPageParamExpr] = (() => {
|
|
859
869
|
if (hasNewParams) {
|
|
860
|
-
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") :
|
|
861
|
-
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") :
|
|
862
|
-
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` :
|
|
870
|
+
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") : null;
|
|
871
|
+
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") : null;
|
|
872
|
+
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` : null, prevAccessor ? `getPreviousPageParam: (firstPage) => ${prevAccessor}` : null];
|
|
863
873
|
}
|
|
864
874
|
if (cursorParam) return [`getNextPageParam: (lastPage) => lastPage['${cursorParam}']`, `getPreviousPageParam: (firstPage) => firstPage['${cursorParam}']`];
|
|
865
875
|
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"];
|
|
@@ -934,7 +944,8 @@ function buildMutationConfigParamsNode(node, resolver) {
|
|
|
934
944
|
})] });
|
|
935
945
|
}
|
|
936
946
|
function MutationOptions({ name, clientName, dataReturnType, node, tsResolver, paramsCasing, paramsType, pathParamsType, mutationKeyName }) {
|
|
937
|
-
const
|
|
947
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
948
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
938
949
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
939
950
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
940
951
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -975,7 +986,7 @@ function MutationOptions({ name, clientName, dataReturnType, node, tsResolver, p
|
|
|
975
986
|
generics: ["TContext = unknown"],
|
|
976
987
|
children: `
|
|
977
988
|
const mutationKey = ${mutationKeyName}()
|
|
978
|
-
return mutationOptions<${TData}, ${TError}, ${TRequest ? `{${TRequest}}` : "
|
|
989
|
+
return mutationOptions<${TData}, ${TError}, ${TRequest ? `{${TRequest}}` : "undefined"}, TContext>({
|
|
979
990
|
mutationKey,
|
|
980
991
|
mutationFn: async(${hasMutationParams ? `{ ${argKeysStr} }` : "_"}) => {
|
|
981
992
|
return ${clientName}(${clientCallStr})
|
|
@@ -999,7 +1010,8 @@ function createMutationArgParams(node, options) {
|
|
|
999
1010
|
}
|
|
1000
1011
|
function buildMutationParamsNode(node, options) {
|
|
1001
1012
|
const { paramsCasing, dataReturnType, resolver } = options;
|
|
1002
|
-
const
|
|
1013
|
+
const successNames = resolveSuccessNames(node, resolver);
|
|
1014
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : resolver.resolveResponseName(node);
|
|
1003
1015
|
const errorNames = resolveErrorNames(node, resolver);
|
|
1004
1016
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1005
1017
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1011,7 +1023,7 @@ function buildMutationParamsNode(node, options) {
|
|
|
1011
1023
|
const generics = [
|
|
1012
1024
|
TData,
|
|
1013
1025
|
TError,
|
|
1014
|
-
TRequest ? `{${TRequest}}` : "
|
|
1026
|
+
TRequest ? `{${TRequest}}` : "undefined",
|
|
1015
1027
|
"TContext"
|
|
1016
1028
|
].join(", ");
|
|
1017
1029
|
return _kubb_core.ast.createFunctionParameters({ params: [_kubb_core.ast.createFunctionParameter({
|
|
@@ -1027,7 +1039,8 @@ function buildMutationParamsNode(node, options) {
|
|
|
1027
1039
|
})] });
|
|
1028
1040
|
}
|
|
1029
1041
|
function Mutation({ name, mutationOptionsName, paramsCasing, dataReturnType, node, tsResolver, mutationKeyName, customOptions }) {
|
|
1030
|
-
const
|
|
1042
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1043
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1031
1044
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1032
1045
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1033
1046
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1039,7 +1052,7 @@ function Mutation({ name, mutationOptionsName, paramsCasing, dataReturnType, nod
|
|
|
1039
1052
|
const generics = [
|
|
1040
1053
|
TData,
|
|
1041
1054
|
TError,
|
|
1042
|
-
TRequest ? `{${TRequest}}` : "
|
|
1055
|
+
TRequest ? `{${TRequest}}` : "undefined",
|
|
1043
1056
|
"TContext"
|
|
1044
1057
|
].join(", ");
|
|
1045
1058
|
const returnType = `UseMutationResult<${generics}>`;
|
|
@@ -1084,8 +1097,9 @@ const declarationPrinter$3 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "decla
|
|
|
1084
1097
|
const callPrinter$3 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
1085
1098
|
function buildQueryParamsNode(node, options) {
|
|
1086
1099
|
const { paramsType, paramsCasing, pathParamsType, dataReturnType, resolver } = options;
|
|
1087
|
-
const
|
|
1088
|
-
const
|
|
1100
|
+
const successNames = resolveSuccessNames(node, resolver);
|
|
1101
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : resolver.resolveResponseName(node);
|
|
1102
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
1089
1103
|
const errorNames = resolveErrorNames(node, resolver);
|
|
1090
1104
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1091
1105
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1115,7 +1129,8 @@ function buildQueryParamsNode(node, options) {
|
|
|
1115
1129
|
});
|
|
1116
1130
|
}
|
|
1117
1131
|
function Query({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, customOptions }) {
|
|
1118
|
-
const
|
|
1132
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1133
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1119
1134
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1120
1135
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1121
1136
|
const returnType = `UseQueryResult<TData, ${`ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`}> & { queryKey: TQueryKey }`;
|
|
@@ -1181,7 +1196,7 @@ const declarationPrinter$2 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "decla
|
|
|
1181
1196
|
const callPrinter$2 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
1182
1197
|
function buildSuspenseInfiniteQueryParamsNode(node, options) {
|
|
1183
1198
|
const { paramsType, paramsCasing, pathParamsType, resolver, pageParamGeneric } = options;
|
|
1184
|
-
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) :
|
|
1199
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
1185
1200
|
const optionsParam = _kubb_core.ast.createFunctionParameter({
|
|
1186
1201
|
name: "options",
|
|
1187
1202
|
type: _kubb_core.ast.createParamsType({
|
|
@@ -1202,7 +1217,8 @@ function buildSuspenseInfiniteQueryParamsNode(node, options) {
|
|
|
1202
1217
|
});
|
|
1203
1218
|
}
|
|
1204
1219
|
function SuspenseInfiniteQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, customOptions, initialPageParam, queryParam }) {
|
|
1205
|
-
const
|
|
1220
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1221
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1206
1222
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1207
1223
|
const responseType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1208
1224
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1214,9 +1230,9 @@ function SuspenseInfiniteQuery({ name, queryKeyTypeName, queryOptionsName, query
|
|
|
1214
1230
|
const rawQueryParams = getOperationParameters(node).query;
|
|
1215
1231
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
1216
1232
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
1217
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
1218
|
-
})() :
|
|
1219
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
1233
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
1234
|
+
})() : null;
|
|
1235
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
1220
1236
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
1221
1237
|
const returnType = "UseSuspenseInfiniteQueryResult<TData, TError> & { queryKey: TQueryKey }";
|
|
1222
1238
|
const generics = [
|
|
@@ -1283,7 +1299,8 @@ function SuspenseInfiniteQuery({ name, queryKeyTypeName, queryOptionsName, query
|
|
|
1283
1299
|
const declarationPrinter$1 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "declaration" });
|
|
1284
1300
|
const callPrinter$1 = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
1285
1301
|
function SuspenseInfiniteQueryOptions({ name, clientName, initialPageParam, cursorParam, nextParam, previousParam, node, tsResolver, paramsCasing, paramsType, dataReturnType, pathParamsType, queryParam, queryKeyName }) {
|
|
1286
|
-
const
|
|
1302
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1303
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1287
1304
|
const queryFnDataType = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1288
1305
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1289
1306
|
const errorType = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1295,9 +1312,9 @@ function SuspenseInfiniteQueryOptions({ name, clientName, initialPageParam, curs
|
|
|
1295
1312
|
const rawQueryParams = getOperationParameters(node).query;
|
|
1296
1313
|
const queryParamsTypeName = rawQueryParams.length > 0 ? (() => {
|
|
1297
1314
|
const groupName = tsResolver.resolveQueryParamsName(node, rawQueryParams[0]);
|
|
1298
|
-
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName :
|
|
1299
|
-
})() :
|
|
1300
|
-
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` :
|
|
1315
|
+
return groupName !== tsResolver.resolveParamName(node, rawQueryParams[0]) ? groupName : null;
|
|
1316
|
+
})() : null;
|
|
1317
|
+
const queryParamType = queryParam && queryParamsTypeName ? `${queryParamsTypeName}['${queryParam}']` : null;
|
|
1301
1318
|
const pageParamType = queryParamType ? isInitialPageParamDefined ? `NonNullable<${queryParamType}>` : queryParamType : fallbackPageParamType;
|
|
1302
1319
|
const paramsNode = getQueryOptionsParams(node, {
|
|
1303
1320
|
paramsType,
|
|
@@ -1315,12 +1332,12 @@ function SuspenseInfiniteQueryOptions({ name, clientName, initialPageParam, curs
|
|
|
1315
1332
|
const queryKeyParamsCall = callPrinter$1.print(queryKeyParamsNode) ?? "";
|
|
1316
1333
|
const enabledSource = buildEnabledCheck(queryKeyParamsNode);
|
|
1317
1334
|
const enabledText = enabledSource ? `enabled: !!(${enabledSource}),` : "";
|
|
1318
|
-
const hasNewParams = nextParam
|
|
1335
|
+
const hasNewParams = nextParam != null || previousParam != null;
|
|
1319
1336
|
const [getNextPageParamExpr, getPreviousPageParamExpr] = (() => {
|
|
1320
1337
|
if (hasNewParams) {
|
|
1321
|
-
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") :
|
|
1322
|
-
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") :
|
|
1323
|
-
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` :
|
|
1338
|
+
const nextAccessor = nextParam ? getNestedAccessor(nextParam, "lastPage") : null;
|
|
1339
|
+
const prevAccessor = previousParam ? getNestedAccessor(previousParam, "firstPage") : null;
|
|
1340
|
+
return [nextAccessor ? `getNextPageParam: (lastPage) => ${nextAccessor}` : null, prevAccessor ? `getPreviousPageParam: (firstPage) => ${prevAccessor}` : null];
|
|
1324
1341
|
}
|
|
1325
1342
|
if (cursorParam) return [`getNextPageParam: (lastPage) => lastPage['${cursorParam}']`, `getPreviousPageParam: (firstPage) => firstPage['${cursorParam}']`];
|
|
1326
1343
|
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"];
|
|
@@ -1385,8 +1402,9 @@ const declarationPrinter = (0, _kubb_plugin_ts.functionPrinter)({ mode: "declara
|
|
|
1385
1402
|
const callPrinter = (0, _kubb_plugin_ts.functionPrinter)({ mode: "call" });
|
|
1386
1403
|
function buildSuspenseQueryParamsNode(node, options) {
|
|
1387
1404
|
const { paramsType, paramsCasing, pathParamsType, dataReturnType, resolver } = options;
|
|
1388
|
-
const
|
|
1389
|
-
const
|
|
1405
|
+
const successNames = resolveSuccessNames(node, resolver);
|
|
1406
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : resolver.resolveResponseName(node);
|
|
1407
|
+
const requestName = node.requestBody?.content?.[0]?.schema ? resolver.resolveDataName(node) : null;
|
|
1390
1408
|
const errorNames = resolveErrorNames(node, resolver);
|
|
1391
1409
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1392
1410
|
const TError = `ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`;
|
|
@@ -1415,7 +1433,8 @@ function buildSuspenseQueryParamsNode(node, options) {
|
|
|
1415
1433
|
});
|
|
1416
1434
|
}
|
|
1417
1435
|
function SuspenseQuery({ name, queryKeyTypeName, queryOptionsName, queryKeyName, paramsType, paramsCasing, pathParamsType, dataReturnType, node, tsResolver, customOptions }) {
|
|
1418
|
-
const
|
|
1436
|
+
const successNames = resolveSuccessNames(node, tsResolver);
|
|
1437
|
+
const responseName = successNames.length > 0 ? successNames.join(" | ") : tsResolver.resolveResponseName(node);
|
|
1419
1438
|
const errorNames = resolveErrorNames(node, tsResolver);
|
|
1420
1439
|
const TData = dataReturnType === "data" ? responseName : `ResponseConfig<${responseName}>`;
|
|
1421
1440
|
const returnType = `UseSuspenseQueryResult<TData, ${`ResponseErrorConfig<${errorNames.length > 0 ? errorNames.join(" | ") : "Error"}>`}> & { queryKey: TQueryKey }`;
|
|
@@ -1593,4 +1612,4 @@ Object.defineProperty(exports, "resolveZodSchemaNames", {
|
|
|
1593
1612
|
}
|
|
1594
1613
|
});
|
|
1595
1614
|
|
|
1596
|
-
//# sourceMappingURL=components-
|
|
1615
|
+
//# sourceMappingURL=components-MPBTffPl.cjs.map
|