diff --git a/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts b/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts index 1a687b8b9..fc323dba1 100644 --- a/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts +++ b/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts @@ -6,8 +6,9 @@ import type { OpenApiReference } from './OpenApiReference'; * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#requestBodyObject */ export interface OpenApiRequestBody extends OpenApiReference { - description?: string; + 'x-body-name'?: string; content: Dictionary; - required?: boolean; + description?: string; nullable?: boolean; + required?: boolean; } diff --git a/src/openApi/v3/parser/getOperationRequestBody.ts b/src/openApi/v3/parser/getOperationRequestBody.ts index 9f9cca241..b27ab1284 100644 --- a/src/openApi/v3/parser/getOperationRequestBody.ts +++ b/src/openApi/v3/parser/getOperationRequestBody.ts @@ -10,8 +10,8 @@ export const getOperationRequestBody = (openApi: OpenApi, body: OpenApiRequestBo const requestBody: OperationParameter = { in: 'body', export: 'interface', - prop: 'requestBody', - name: 'requestBody', + prop: body['x-body-name'] ?? 'requestBody', + name: body['x-body-name'] ?? 'requestBody', type: 'any', base: 'any', template: null, diff --git a/src/utils/writeClient.ts b/src/utils/writeClient.ts index 06b1e0b72..c1c06ba39 100644 --- a/src/utils/writeClient.ts +++ b/src/utils/writeClient.ts @@ -28,7 +28,6 @@ import { writeClientServices } from './writeClientServices'; * @param exportServices Generate services * @param exportModels Generate models * @param exportSchemas Generate schemas - * @param exportSchemas Generate schemas * @param indent Indentation options (4, 2 or tab) * @param postfixServices Service name postfix * @param postfixModels Model name postfix diff --git a/test/__snapshots__/index.spec.ts.snap b/test/__snapshots__/index.spec.ts.snap index a2b043972..91bb40356 100644 --- a/test/__snapshots__/index.spec.ts.snap +++ b/test/__snapshots__/index.spec.ts.snap @@ -7583,12 +7583,12 @@ import { request as __request } from '../core/request'; export class RequestBodyService { /** * @param parameter This is a reusable parameter - * @param requestBody A reusable request body + * @param foo A reusable request body * @throws ApiError */ public static postApiRequestBody( parameter?: string, - requestBody?: ModelWithString, + foo?: ModelWithString, ): CancelablePromise { return __request(OpenAPI, { method: 'POST', @@ -7596,7 +7596,7 @@ export class RequestBodyService { query: { 'parameter': parameter, }, - body: requestBody, + body: foo, mediaType: 'application/json', }); } diff --git a/test/spec/v3.json b/test/spec/v3.json index f1bb32e34..5dd4eccf9 100644 --- a/test/spec/v3.json +++ b/test/spec/v3.json @@ -1493,6 +1493,7 @@ "components": { "requestBodies": { "SimpleRequestBody": { + "x-body-name": "foo", "description": "A reusable request body", "required": false, "content": {