-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[TypeScript-Fetch] Invalid interface definition when using additionalProperties #4839
Comments
@ranma42 thanks for reporting the issue. Can you try the latest master, which uses swagger parser 1.0.26-snapshot with better support for reference? |
The latest master (d11d0f8) seems to have the same problem. |
@ranma42 thanks for testing the latest master, may I suggest defining the map inline instead of a reference as a workaround? |
I am already doing that for my project ;) |
👍 Looks like an issue that needs to be addressed in the Swagger Parser |
@wing328 should I close this and report against https://github.com/swagger-api/swagger-parser ? |
@ranma42 yes please open an issue there as well. |
This still seems to be an issue in the 2.2.3 release. |
Same thing happens on the typescript-node templates on the latest release. |
@ranma42 @wing328 Can I ask to clarify a bit how to make the workaround you mentioned.
But it's already inlined, not referenced. 👇 As the issue says, I have this input yaml: GenericMap:
additionalProperties:
type: integer And I want to have a generated result like this: export interface GenericMap {
[key: string]: number;
} But getting this instead: export interface GenericMap extends null<String, number> { } |
Any updates here? :) |
@ranma42 did you report this issue in swagger-api/swagger-parser? |
I found it myself swagger-api/swagger-parser#401 |
Hello 👋 |
Same issue |
1 similar comment
Same issue |
Description
Compiling the following spec into a TypeScript-Fetch client results in invalid code.
Specifically, the generated code contains
which the TypeScript compiler rejects.
Swagger-codegen version
I tested it on 2.2.1 (latest stable) and 2.3.0 (7aebcfa).
Swagger declaration file content or url
Command line used for generation
swagger-codegen generate -i test.yaml -l typescript-fetch
Steps to reproduce
Compile a swagger API containing the definitions mentioned above into a typescript-fetch client.
Suggest a Fix
The
Container
type shows thatadditionalProperties
are correctly handled in some cases (when used for the anonymous type of theworks
member), but not when they are used for a type which is basically a map. I believe it would be sufficient to emit the following type, without inheriting from any other type:The text was updated successfully, but these errors were encountered: