acacode / acacode/swagger-typescript-api
Enum with exactly opposite negative and positive integer values results in duplicate enum entries
- Lenguaje dominante
- TypeScript
- Estrellas
- 4.1k
- Forks
- 436
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
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
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Evaluación
Este issue todavía no se ha evaluado.