From fb832072a40767536ca83825d859d85ae79f9f65 Mon Sep 17 00:00:00 2001 From: "Carlos R. L. Rodrigues" <37986729+carlos-r-l-rodrigues@users.noreply.github.com> Date: Wed, 4 Sep 2024 07:40:31 -0300 Subject: [PATCH] fix(utils): graphql enum options (#8985) --- .../utils/src/dml/__tests__/create-graphql.spec.ts | 11 +++++++---- .../src/dml/helpers/graphql-builder/get-attribute.ts | 3 ++- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/core/utils/src/dml/__tests__/create-graphql.spec.ts b/packages/core/utils/src/dml/__tests__/create-graphql.spec.ts index 88b026df39..5ed1d84594 100644 --- a/packages/core/utils/src/dml/__tests__/create-graphql.spec.ts +++ b/packages/core/utils/src/dml/__tests__/create-graphql.spec.ts @@ -20,7 +20,9 @@ describe("GraphQL builder", () => { spend_limit: model.bigNumber(), phones: model.array(), group: model.belongsTo(() => group, { mappedBy: "users" }), - role: model.enum(["moderator", "admin", "guest"]).default("guest"), + role: model + .enum(["moderator", "admin", "guest", "new_user"]) + .default("guest"), tags: model.manyToMany(() => tag, { pivotTable: "custom_user_tags", }), @@ -56,9 +58,10 @@ describe("GraphQL builder", () => { } enum UserRoleEnum { - moderator - admin - guest + MODERATOR + ADMIN + GUEST + NEW_USER } type User { diff --git a/packages/core/utils/src/dml/helpers/graphql-builder/get-attribute.ts b/packages/core/utils/src/dml/helpers/graphql-builder/get-attribute.ts index 2938fa0689..b89e412484 100644 --- a/packages/core/utils/src/dml/helpers/graphql-builder/get-attribute.ts +++ b/packages/core/utils/src/dml/helpers/graphql-builder/get-attribute.ts @@ -43,7 +43,8 @@ export function getGraphQLAttributeFromDMLPropety( const enumName = toPascalCase(modelName + "_" + field.fieldName + "Enum") const enumValues = field.dataType .options!.choices.map((value) => { - return ` ${value}` + const enumValue = value.replace(/[^a-z0-9_]/gi, "_").toUpperCase() + return ` ${enumValue}` }) .join("\n")