swagger-typescript-api icon indicating copy to clipboard operation
swagger-typescript-api copied to clipboard

Invalid doc block on --responses --extract-response-error

Open Nyholm opened this issue 2 years ago • 0 comments

I found a little bug today. When generating a client with --responses --extract-response-error, I get a doc block that does not look as I expect.

I would like it to use my error object instead of an anonymous definition.

Full generate command:

swagger-typescript-api -p ./swagger-api.json  -o ./src/MyApi -n myApi.ts --axios --sort-types --sort-routes  --extract-enums --add-readonly --route-types --extract-request-params --extract-request-body --extract-response-body --extract-response-error --responses --modular --unwrap-response-data

Here are the changes I would like to see in the generated output.

 /**
  * A good description
  *
  * @tags Brand
  * @name PostUpdateLogoInvoke
  * @request POST:/brands/{brandId}/logo
  * @response `200` `PostUpdateLogoInvokeData` Returns a brand
+ * @response `400` `PostUpdateLogoInvokeError` Bad request
- * @response `400` `{
-    errors?: ({
-  \** An application-specific error code *\
-    code?: string,
-  \** A human-readable explanation specific to this occurrence of the problem *\
-    detail?: string,
-    source?: {
-    message?: string,
-    parameter?: string,
-},
-  \** The HTTP status code applicable to this problem *\
-    status?: string,
-  \** A short, human-readable summary of the problem *\
-    title?: string,
-
-})[],
-
-}` Bad request
  */
 postUpdateLogoInvoke = ({ brandId, ...query }: PostUpdateLogoInvokeParams, data: any, params: RequestParams = {}) =>
     this.request<PostUpdateLogoInvokeData, PostUpdateLogoInvokeError>({
         path: `/brands/${brandId}/logo`,
		 method: 'POST',
		 query: query,
		 body: data,
		 type: ContentType.FormData,
		 ...params,
 	});

The PostUpdateLogoInvokeError is generated correctly.

Nyholm avatar Nov 20 '23 18:11 Nyholm