Skip to content

Commit 20bd649

Browse files
authored
Add enum name mapping feature to typescript generators (#18064)
* feat: add enum mapping for typescript * revert unnecessary change
1 parent 0bc979e commit 20bd649

File tree

3 files changed

+7
-1
lines changed

3 files changed

+7
-1
lines changed

bin/configs/typescript-angular-v16-provided-in-root.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/typescript-angular
55
additionalProperties:
66
ngVersion: 16.1.2
77
supportsES6: true
8+
enumNameMappings:
9+
delivered: SHIPPED

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java

+4
Original file line numberDiff line numberDiff line change
@@ -888,6 +888,10 @@ public String toEnumDefaultValue(String value, String datatype) {
888888

889889
@Override
890890
public String toEnumVarName(String name, String datatype) {
891+
if (enumNameMapping.containsKey(name)) {
892+
return enumNameMapping.get(name);
893+
}
894+
891895
if (name.length() == 0) {
892896
return getNameUsingEnumPropertyNaming("empty");
893897
}

samples/client/petstore/typescript-angular-v16-provided-in-root/builds/default/model/order.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export namespace Order {
3030
export const StatusEnum = {
3131
Placed: 'placed' as StatusEnum,
3232
Approved: 'approved' as StatusEnum,
33-
Delivered: 'delivered' as StatusEnum
33+
SHIPPED: 'delivered' as StatusEnum
3434
};
3535
}
3636

0 commit comments

Comments
 (0)