Skip to content

Commit 83fa8b6

Browse files
committed
[typescript-fetch] Fix OpenAPITools#1998: namespace reqs.
Fix OpenAPITools#1998 by namespacing the generated request object types used in the typescript-fetch client codegen.
1 parent 024f468 commit 83fa8b6

File tree

1 file changed

+17
-11
lines changed
  • modules/openapi-generator/src/main/resources/typescript-fetch

1 file changed

+17
-11
lines changed

modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache

+17-11
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,23 @@ import {
1313
{{/imports.0}}
1414

1515
{{#operations}}
16-
{{#operation}}
17-
{{#allParams.0}}
18-
export interface {{operationIdCamelCase}}Request {
19-
{{#allParams}}
20-
{{paramName}}{{^required}}?{{/required}}: {{#isEnum}}{{{datatypeWithEnum}}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{#isNullable}} | null{{/isNullable}}{{/isEnum}};
21-
{{/allParams}}
22-
}
16+
/**
17+
* The Requests namespace contains generated request parameter interface declarations.
18+
*/
19+
export namespace Requests {
20+
{{#operation}}
21+
{{#allParams.0}}
22+
export interface {{operationIdCamelCase}} {
23+
{{#allParams}}
24+
{{paramName}}{{^required}}?{{/required}}: {{#isEnum}}{{{datatypeWithEnum}}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{#isNullable}} | null{{/isNullable}}{{/isEnum}};
25+
{{/allParams}}
26+
}
2327

24-
{{/allParams.0}}
25-
{{/operation}}
28+
{{/allParams.0}}
29+
{{/operation}}
30+
}
2631
{{/operations}}
32+
2733
{{#operations}}
2834
/**
2935
* {{#description}}{{{description}}}{{/description}}{{^description}}no description{{/description}}
@@ -39,7 +45,7 @@ export class {{classname}} extends runtime.BaseAPI {
3945
* {{&summary}}
4046
{{/summary}}
4147
*/
42-
async {{nickname}}Raw({{#allParams.0}}requestParameters: {{operationIdCamelCase}}Request{{/allParams.0}}): Promise<runtime.ApiResponse<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}>> {
48+
async {{nickname}}Raw({{#allParams.0}}requestParameters: Requests.{{operationIdCamelCase}}{{/allParams.0}}): Promise<runtime.ApiResponse<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}>> {
4349
{{#allParams}}
4450
{{#required}}
4551
if (requestParameters.{{paramName}} === null || requestParameters.{{paramName}} === undefined) {
@@ -249,7 +255,7 @@ export class {{classname}} extends runtime.BaseAPI {
249255
}
250256
{{/useSingleRequestParameter}}
251257
{{#useSingleRequestParameter}}
252-
async {{nickname}}({{#allParams.0}}requestParameters: {{operationIdCamelCase}}Request{{/allParams.0}}): Promise<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> {
258+
async {{nickname}}({{#allParams.0}}requestParameters: Requests.{{operationIdCamelCase}}{{/allParams.0}}): Promise<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> {
253259
{{#returnType}}
254260
const response = await this.{{nickname}}Raw({{#allParams.0}}requestParameters{{/allParams.0}});
255261
return await response.value();

0 commit comments

Comments
 (0)