OpenAPITools / OpenAPITools/openapi-generator
[REQ][typescript] Support x-enum-varnames field
Open
Nobody has claimed this yet.
Enhancement: Feature
- Dominant language
- Java
- Stars
- 26.8k
- Forks
- 7.7k
- PR merge metrics
- PR metrics pending
Description
Is your feature request related to a problem? Please describe.
The typescript openapi generator does not seem to support the x-enum-varnames field:
{
"openapi": "3.0.1",
"info": {
"title": "test",
"description": "test",
"version": "v1"
},
"servers": [
{
"url": "",
"description": "Relative mount"
},
{
"url": "",
"description": "Production"
}
],
"paths": {},
"components": {
"schemas": {
"OperationStatus": {
"enum": [
0,
1,
2,
3,
4
],
"x-enum-varnames": [
"Pending",
"InProgress",
"Completed",
"Failed",
"Canceled"
],
"type": "integer",
"format": "int32"
}
}
}
}
Here OperationStatus has a typescript type of just "0" | "1" | "2" | "3" | "4".
Describe the solution you'd like
When x-enum-varnames appears, the type is declared as a named enum.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the TypeScript OpenAPI generator's enum-generation entry point and its current handling of x-enum-varnames. Trace any existing enum tests, then confirm that schemas with this field generate a named enum while existing enum generation remains unchanged.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, tooling
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100