acacode / acacode/swagger-typescript-api
Enum with exactly opposite negative and positive integer values results in duplicate enum entries
- Vorherrschende Sprache
- TypeScript
- Sterne
- 4.1k
- Forks
- 436
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
When schema contains enums with integer values, their member names are generated as `Value${absoluteValueOfActualValue}`, which causes `Value${absoluteValueOfActualValue}` == `Value${actualValue}`, so when enums have negative and positive values of the same absolute value, they are generated with identical names.
This swagger.json entry:
```
"AddressFamily": {
"enum": [
0,
1,
2,
3,
4,
<...>
29,
65536,
65537,
-1,
],
"type": "integer",
"format": "int32"
},
```
results in this incorrect typescript enum, since `Value1` is duplicate enum member name:
```
export enum AddressFamily {
Value0 = 0,
Value1 = 1,
Value2 = 2,
Value3 = 3,
Value4 = 4,
<...>
Value29 = 29,
Value65536 = 65536,
Value65537 = 65537,
Value1 = -1,
}
```
It broke after release of v12, as previously these were generated as `type` and worked fine:
```
export type AddressFamily =
| 0
| 1
| 2
| 3
| 4
<...>
| 29
| 65536
| 65537
| -1;
```
latest tested: v12.0.2
Thanks and let me know if you need any extra info
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Bewertung
Dieses Issue wurde noch nicht bewertet.