Support x-enumNames
for BackedEnum
s
#1724
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, in the OpenAPI spec, there's no standardized way to persist the name of enums when the value of the enum is stored in the
enum
value. There are competing implementations for providing this data in the form of extensions, but one with widespread support isx-enumNames
, used by NSwag,swagger-api-typescript
, and SwaggerUI via a plugin.This PR specifically expands the enum processing to automatically generate the
x-enumNames
values in cases where the enum name isn't used as the value. This ensures that we're able to use this data in other libraries.I figured I'd offer it as a PR since it may be of utility to more than just me, but I realize that it's using an extension and I can also implement it via directly modifying the pipeline myself. Either way, perhaps it's helpful for folks!