Skip to content

Commit 7c8046b

Browse files
committed
Fixes
1 parent bd52dcb commit 7c8046b

94 files changed

Lines changed: 594 additions & 542 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@povio/openapi-codegen-cli",
3-
"version": "2.0.8-rc.15",
3+
"version": "2.0.8-rc.16",
44
"keywords": [
55
"codegen",
66
"openapi",

src/generators/generate/generateQueries.ts

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ import { getNamespaceName } from "@/generators/utils/namespace.utils";
5858
import { isSchemaObject } from "@/generators/utils/openapi-schema.utils";
5959
import { isParamMediaTypeAllowed } from "@/generators/utils/openapi.utils";
6060
import { getDestructuredVariables, isInfiniteQuery, isMutation, isQuery } from "@/generators/utils/query.utils";
61-
import { shouldInlineEndpointsForTag } from "@/generators/utils/tag.utils";
61+
import { getEndpointTag, shouldInlineEndpointsForTag } from "@/generators/utils/tag.utils";
6262
import { isNamedZodSchema } from "@/generators/utils/zod-schema.utils";
6363
import { invalidVariableNameCharactersToCamel } from "@/generators/utils/js.utils";
6464

@@ -429,10 +429,12 @@ function renderQueryJsDocs({
429429
resolver,
430430
endpoint,
431431
mode,
432+
tag,
432433
}: {
433434
resolver: SchemaResolver;
434435
endpoint: Endpoint;
435436
mode: "query" | "mutation" | "infiniteQuery";
437+
tag: string;
436438
}) {
437439
const lines: string[] = ["/** "];
438440

@@ -460,6 +462,7 @@ function renderQueryJsDocs({
460462

461463
const params = getEndpointParamMapping(resolver, endpoint, {
462464
...(mode !== "infiniteQuery" ? { includeFileParam: true } : {}),
465+
modelNamespaceTag: tag,
463466
});
464467
for (const endpointParam of params) {
465468
lines.push(
@@ -481,6 +484,8 @@ function renderQueryJsDocs({
481484
const resultType = `${withAxiosResponse ? "AxiosResponse<" : ""}${getImportedZodSchemaInferedTypeName(
482485
resolver,
483486
endpoint.response,
487+
undefined,
488+
tag,
484489
)}${withAxiosResponse ? ">" : ""}`;
485490

486491
if (mode === "query") {
@@ -648,13 +653,15 @@ function renderQuery({
648653
}) {
649654
const hasAxiosRequestConfig = resolver.options.axiosRequestConfig;
650655
const hasAclCheck = resolver.options.checkAcl && endpoint.acl;
656+
const tag = getEndpointTag(endpoint, resolver.options);
651657
const workspaceParamReplacements = resolver.options.workspaceContext
652658
? getWorkspaceParamReplacements(resolver, endpoint)
653659
: {};
654660
const endpointArgs = renderEndpointArgs(resolver, endpoint, {});
655661
const resolvedEndpointArgs = renderEndpointArgs(resolver, endpoint, {}, workspaceParamReplacements);
656662
const endpointParams = renderEndpointParams(resolver, endpoint, {
657663
optionalPathParams: resolver.options.workspaceContext,
664+
modelNamespaceTag: tag,
658665
});
659666
const hasQueryFn = endpointArgs.length > 0 || hasAxiosRequestConfig || hasAclCheck;
660667
const hasQueryFnBody = Boolean(hasAclCheck) || Object.keys(workspaceParamReplacements).length > 0;
@@ -663,7 +670,7 @@ function renderQuery({
663670
: getImportedEndpointName(endpoint, resolver.options);
664671

665672
const lines: string[] = [];
666-
lines.push(renderQueryJsDocs({ resolver, endpoint, mode: "query" }));
673+
lines.push(renderQueryJsDocs({ resolver, endpoint, mode: "query", tag }));
667674
lines.push(
668675
`export const ${getQueryName(endpoint)} = <TData>(${endpointParams ? `{ ${endpointArgs} }: { ${endpointParams} }, ` : ""}options?: AppQueryOptions<typeof ${importedEndpoint}, TData>${hasAxiosRequestConfig ? `, ${AXIOS_REQUEST_CONFIG_NAME}?: ${AXIOS_REQUEST_CONFIG_TYPE}` : ""}) => {`,
669676
);
@@ -705,12 +712,14 @@ function renderMutation({
705712
const hasAclCheck = resolver.options.checkAcl && endpoint.acl;
706713
const hasMutationEffects = resolver.options.mutationEffects;
707714
const hasAxiosRequestConfig = resolver.options.axiosRequestConfig;
715+
const tag = getEndpointTag(endpoint, resolver.options);
708716
const workspaceParamReplacements = resolver.options.workspaceContext
709717
? getWorkspaceParamReplacements(resolver, endpoint)
710718
: {};
711719
const endpointParams = renderEndpointParams(resolver, endpoint, {
712720
includeFileParam: true,
713721
optionalPathParams: resolver.options.workspaceContext,
722+
modelNamespaceTag: tag,
714723
});
715724
const resolvedEndpointArgs = renderEndpointArgs(resolver, endpoint, {}, workspaceParamReplacements);
716725
const destructuredMutationArgs = renderEndpointArgs(resolver, endpoint, { includeFileParam: true });
@@ -728,7 +737,7 @@ function renderMutation({
728737
: endpointParams;
729738

730739
const lines: string[] = [];
731-
lines.push(renderQueryJsDocs({ resolver, endpoint, mode: "mutation" }));
740+
lines.push(renderQueryJsDocs({ resolver, endpoint, mode: "mutation", tag }));
732741
lines.push(
733742
`export const ${getQueryName(endpoint, true)} = (options?: AppMutationOptions<typeof ${endpointFunction}, { ${mutationVariablesType} }>${hasMutationEffects ? ` & ${MUTATION_EFFECTS.optionsType}` : ""}${hasAxiosRequestConfig ? `, ${AXIOS_REQUEST_CONFIG_NAME}?: ${AXIOS_REQUEST_CONFIG_TYPE}` : ""}) => {`,
734743
);
@@ -912,12 +921,14 @@ function renderInfiniteQuery({
912921
}) {
913922
const hasAclCheck = resolver.options.checkAcl && endpoint.acl;
914923
const hasAxiosRequestConfig = resolver.options.axiosRequestConfig;
924+
const tag = getEndpointTag(endpoint, resolver.options);
915925
const workspaceParamReplacements = resolver.options.workspaceContext
916926
? getWorkspaceParamReplacements(resolver, endpoint)
917927
: {};
918928
const endpointParams = renderEndpointParams(resolver, endpoint, {
919929
excludePageParam: true,
920930
optionalPathParams: resolver.options.workspaceContext,
931+
modelNamespaceTag: tag,
921932
});
922933
const endpointArgsWithoutPage = renderEndpointArgs(resolver, endpoint, { excludePageParam: true });
923934
const resolvedEndpointArgsWithoutPage = renderEndpointArgs(
@@ -926,7 +937,6 @@ function renderInfiniteQuery({
926937
{ excludePageParam: true },
927938
workspaceParamReplacements,
928939
);
929-
const endpointArgsWithPage = renderEndpointArgs(resolver, endpoint, { replacePageParam: true });
930940
const resolvedEndpointArgsWithPage = renderEndpointArgs(
931941
resolver,
932942
endpoint,
@@ -939,11 +949,10 @@ function renderInfiniteQuery({
939949
const hasQueryFnBody = Boolean(hasAclCheck) || Object.keys(workspaceParamReplacements).length > 0;
940950

941951
const lines: string[] = [];
942-
lines.push(renderQueryJsDocs({ resolver, endpoint, mode: "infiniteQuery" }));
952+
lines.push(renderQueryJsDocs({ resolver, endpoint, mode: "infiniteQuery", tag }));
943953
lines.push(
944954
`export const ${getInfiniteQueryName(endpoint)} = <TData>(${endpointParams ? `{ ${endpointArgsWithoutPage} }: { ${endpointParams} }, ` : ""}options?: AppInfiniteQueryOptions<typeof ${endpointFunction}, TData>${hasAxiosRequestConfig ? `, ${AXIOS_REQUEST_CONFIG_NAME}?: ${AXIOS_REQUEST_CONFIG_TYPE}` : ""}) => {`,
945955
);
946-
lines.push(" const queryConfig = OpenApiQueryConfig.useConfig();");
947956
if (hasAclCheck) {
948957
lines.push(` const { checkAcl } = ${ACL_CHECK_HOOK}();`);
949958
}
@@ -968,7 +977,6 @@ function renderInfiniteQuery({
968977
);
969978
lines.push(" },");
970979
lines.push(" ...options,");
971-
lines.push(" onError: options?.onError ?? queryConfig.onError,");
972980
lines.push(" });");
973981
lines.push("};");
974982
return lines.join("\n");

test/generated/tmp-localhost-models-inline-fresh/aWBStocks/aWBStocks.queries.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { AppRestClient } from "@/data/app-rest-client";
22
import { z } from "zod";
33
import { ZodExtended } from "@/data/zod.extended";
4-
import { useQuery, useInfiniteQuery, useMutation } from "@tanstack/react-query";
4+
import { useQuery, UseQueryResult, useInfiniteQuery, UseInfiniteQueryResult, useMutation, UseMutationResult } from "@tanstack/react-query";
55
import { QueryModule } from "@/data/queryModules";
66
import { MutationEffectsOptions, useMutationEffects } from "@/data/useMutationEffects";
77
import { useAclCheck } from "@/data/acl/useAclCheck";
@@ -102,7 +102,6 @@ export const keys = {
102102
* @statusCodes [200, 401]
103103
*/
104104
export const usePaginate = <TData>({ officeId, limit, order, filter, page, cursor }: { officeId: string, limit: number, order?: string, filter?: AWBStocksModels.AWBStockFilterDto, page?: number, cursor?: string }, options?: AppQueryOptions<typeof paginate, TData>) => {
105-
const queryConfig = OpenApiQueryConfig.useConfig();
106105
const { checkAcl } = useAclCheck();
107106

108107
return useQuery({
@@ -129,7 +128,6 @@ export const usePaginate = <TData>({ officeId, limit, order, filter, page, curso
129128
* @statusCodes [200, 401]
130129
*/
131130
export const usePaginateInfinite = <TData>({ officeId, limit, order, filter, cursor }: { officeId: string, limit: number, order?: string, filter?: AWBStocksModels.AWBStockFilterDto, cursor?: string }, options?: AppInfiniteQueryOptions<typeof paginate, TData>) => {
132-
const queryConfig = OpenApiQueryConfig.useConfig();
133131
const { checkAcl } = useAclCheck();
134132

135133
return useInfiniteQuery({
@@ -167,6 +165,7 @@ export const useCreate = (options?: AppMutationOptions<typeof create, { officeId
167165
return create(officeId, data)
168166
},
169167
...options,
168+
onError: options?.onError ?? queryConfig.onError,
170169
onSuccess: async (resData, variables, onMutateResult, context) => {
171170
await runMutationEffects(resData, variables, options);
172171
options?.onSuccess?.(resData, variables, onMutateResult, context);
@@ -185,7 +184,6 @@ export const useCreate = (options?: AppMutationOptions<typeof create, { officeId
185184
* @statusCodes [200, 401]
186185
*/
187186
export const useFindById = <TData>({ stockId, officeId }: { stockId: string, officeId: string }, options?: AppQueryOptions<typeof findById, TData>) => {
188-
const queryConfig = OpenApiQueryConfig.useConfig();
189187
const { checkAcl } = useAclCheck();
190188

191189
return useQuery({
@@ -219,6 +217,7 @@ export const useUpdate = (options?: AppMutationOptions<typeof update, { stockId:
219217
return update(stockId, officeId, data)
220218
},
221219
...options,
220+
onError: options?.onError ?? queryConfig.onError,
222221
onSuccess: async (resData, variables, onMutateResult, context) => {
223222
const { stockId, officeId } = variables;
224223
const updateKeys = [keys.findById(stockId, officeId)];
@@ -249,6 +248,7 @@ export const useArchive = (options?: AppMutationOptions<typeof archive, { stockI
249248
return archive(stockId, officeId)
250249
},
251250
...options,
251+
onError: options?.onError ?? queryConfig.onError,
252252
onSuccess: async (resData, variables, onMutateResult, context) => {
253253
const { stockId, officeId } = variables;
254254
const updateKeys = [keys.findById(stockId, officeId)];
@@ -279,6 +279,7 @@ export const useUnarchive = (options?: AppMutationOptions<typeof unarchive, { st
279279
return unarchive(stockId, officeId)
280280
},
281281
...options,
282+
onError: options?.onError ?? queryConfig.onError,
282283
onSuccess: async (resData, variables, onMutateResult, context) => {
283284
const { stockId, officeId } = variables;
284285
const updateKeys = [keys.findById(stockId, officeId)];
@@ -309,6 +310,7 @@ export const useGenerateNextNumber = (options?: AppMutationOptions<typeof genera
309310
return generateNextNumber(officeId, data)
310311
},
311312
...options,
313+
onError: options?.onError ?? queryConfig.onError,
312314
onSuccess: async (resData, variables, onMutateResult, context) => {
313315
await runMutationEffects(resData, variables, options);
314316
options?.onSuccess?.(resData, variables, onMutateResult, context);

test/generated/tmp-localhost-models-inline-fresh/airports/airports.queries.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { AppRestClient } from "@/data/app-rest-client";
22
import { z } from "zod";
33
import { ZodExtended } from "@/data/zod.extended";
4-
import { useQuery, useInfiniteQuery, useMutation } from "@tanstack/react-query";
4+
import { useQuery, UseQueryResult, useInfiniteQuery, UseInfiniteQueryResult, useMutation, UseMutationResult } from "@tanstack/react-query";
55
import { QueryModule } from "@/data/queryModules";
66
import { MutationEffectsOptions, useMutationEffects } from "@/data/useMutationEffects";
77
import { useAclCheck } from "@/data/acl/useAclCheck";
@@ -94,7 +94,6 @@ export const keys = {
9494
* @statusCodes [200, 401]
9595
*/
9696
export const usePaginate = <TData>({ limit, order, filter, page, cursor }: { limit: number, order?: string, filter?: AirportsModels.AirportPaginationFilterDto, page?: number, cursor?: string }, options?: AppQueryOptions<typeof paginate, TData>) => {
97-
const queryConfig = OpenApiQueryConfig.useConfig();
9897
const { checkAcl } = useAclCheck();
9998

10099
return useQuery({
@@ -120,7 +119,6 @@ export const usePaginate = <TData>({ limit, order, filter, page, cursor }: { lim
120119
* @statusCodes [200, 401]
121120
*/
122121
export const usePaginateInfinite = <TData>({ limit, order, filter, cursor }: { limit: number, order?: string, filter?: AirportsModels.AirportPaginationFilterDto, cursor?: string }, options?: AppInfiniteQueryOptions<typeof paginate, TData>) => {
123-
const queryConfig = OpenApiQueryConfig.useConfig();
124122
const { checkAcl } = useAclCheck();
125123

126124
return useInfiniteQuery({
@@ -157,6 +155,7 @@ export const useCreate = (options?: AppMutationOptions<typeof create, { data: Ai
157155
return create(data)
158156
},
159157
...options,
158+
onError: options?.onError ?? queryConfig.onError,
160159
onSuccess: async (resData, variables, onMutateResult, context) => {
161160
await runMutationEffects(resData, variables, options);
162161
options?.onSuccess?.(resData, variables, onMutateResult, context);
@@ -178,7 +177,6 @@ export const useCreate = (options?: AppMutationOptions<typeof create, { data: Ai
178177
* @statusCodes [200, 401]
179178
*/
180179
export const usePaginateLabels = <TData>({ limit, order, filter, page, cursor }: { limit: number, order?: string, filter?: AirportsModels.AirportLabelFilterDto, page?: number, cursor?: string }, options?: AppQueryOptions<typeof paginateLabels, TData>) => {
181-
const queryConfig = OpenApiQueryConfig.useConfig();
182180
const { checkAcl } = useAclCheck();
183181

184182
return useQuery({
@@ -204,7 +202,6 @@ export const usePaginateLabels = <TData>({ limit, order, filter, page, cursor }:
204202
* @statusCodes [200, 401]
205203
*/
206204
export const usePaginateLabelsInfinite = <TData>({ limit, order, filter, cursor }: { limit: number, order?: string, filter?: AirportsModels.AirportLabelFilterDto, cursor?: string }, options?: AppInfiniteQueryOptions<typeof paginateLabels, TData>) => {
207-
const queryConfig = OpenApiQueryConfig.useConfig();
208205
const { checkAcl } = useAclCheck();
209206

210207
return useInfiniteQuery({
@@ -242,6 +239,7 @@ export const useUpdate = (options?: AppMutationOptions<typeof update, { id: stri
242239
return update(id, data)
243240
},
244241
...options,
242+
onError: options?.onError ?? queryConfig.onError,
245243
onSuccess: async (resData, variables, onMutateResult, context) => {
246244
const { id } = variables;
247245
const updateKeys = [keys.findById(id)];
@@ -261,7 +259,6 @@ export const useUpdate = (options?: AppMutationOptions<typeof update, { id: stri
261259
* @statusCodes [200, 401]
262260
*/
263261
export const useFindById = <TData>({ id }: { id: string }, options?: AppQueryOptions<typeof findById, TData>) => {
264-
const queryConfig = OpenApiQueryConfig.useConfig();
265262
const { checkAcl } = useAclCheck();
266263

267264
return useQuery({

test/generated/tmp-localhost-models-inline-fresh/bankAccounts/bankAccounts.queries.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { AppRestClient } from "@/data/app-rest-client";
22
import { z } from "zod";
33
import { ZodExtended } from "@/data/zod.extended";
4-
import { useQuery, useInfiniteQuery } from "@tanstack/react-query";
4+
import { useQuery, UseQueryResult, useInfiniteQuery, UseInfiniteQueryResult } from "@tanstack/react-query";
55
import { QueryModule } from "@/data/queryModules";
66
import { useAclCheck } from "@/data/acl/useAclCheck";
77
import { BankAccountsAcl } from "./bankAccounts.acl";
@@ -59,7 +59,6 @@ export const keys = {
5959
* @statusCodes [200, 401]
6060
*/
6161
export const useFindAll = <TData>({ search, officeId }: { search?: string, officeId?: string }, options?: AppQueryOptions<typeof findAll, TData>) => {
62-
const queryConfig = OpenApiQueryConfig.useConfig();
6362
const { checkAcl } = useAclCheck();
6463

6564
return useQuery({
@@ -85,7 +84,6 @@ export const useFindAll = <TData>({ search, officeId }: { search?: string, offic
8584
* @statusCodes [200, 401]
8685
*/
8786
export const usePaginateLabels = <TData>({ limit, order, filter, page, cursor }: { limit: number, order?: string, filter?: BankAccountsModels.BankAccountFilterDto, page?: number, cursor?: string }, options?: AppQueryOptions<typeof paginateLabels, TData>) => {
88-
const queryConfig = OpenApiQueryConfig.useConfig();
8987
const { checkAcl } = useAclCheck();
9088

9189
return useQuery({
@@ -111,7 +109,6 @@ export const usePaginateLabels = <TData>({ limit, order, filter, page, cursor }:
111109
* @statusCodes [200, 401]
112110
*/
113111
export const usePaginateLabelsInfinite = <TData>({ limit, order, filter, cursor }: { limit: number, order?: string, filter?: BankAccountsModels.BankAccountFilterDto, cursor?: string }, options?: AppInfiniteQueryOptions<typeof paginateLabels, TData>) => {
114-
const queryConfig = OpenApiQueryConfig.useConfig();
115112
const { checkAcl } = useAclCheck();
116113

117114
return useInfiniteQuery({

0 commit comments

Comments
 (0)