From 651f8193558a9d26f9109398b45dc32e42a3c2ae Mon Sep 17 00:00:00 2001 From: Gabriel Borges Date: Mon, 24 Apr 2023 13:13:44 -0300 Subject: [PATCH 1/2] feat(core): add optional flag to force number type instead of bigint --- packages/core/src/getters/scalar.ts | 6 +++++- packages/core/src/types.ts | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/core/src/getters/scalar.ts b/packages/core/src/getters/scalar.ts index 38585af37..d7228cc14 100644 --- a/packages/core/src/getters/scalar.ts +++ b/packages/core/src/getters/scalar.ts @@ -28,7 +28,11 @@ export const getScalar = ({ switch (item.type) { case 'number': case 'integer': { - let value = item.format === 'int64' ? 'bigint' : 'number'; + let value = context.override.useNumberTypeForBigInt + ? 'number' + : item.format === 'int64' + ? 'bigint' + : 'number'; let isEnum = false; if (item.enum) { diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 9cb452035..e8ba1e171 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -100,6 +100,7 @@ export type NormalizedOverrideOutput = { useDates?: boolean; useTypeOverInterfaces?: boolean; useDeprecatedOperations?: boolean; + useNumberTypeForBigInt?: boolean; }; export type NormalizedMutator = { @@ -278,6 +279,7 @@ export type OverrideOutput = { useDates?: boolean; useTypeOverInterfaces?: boolean; useDeprecatedOperations?: boolean; + useNumberTypeForBigInt?: boolean; }; export type OverrideOutputContentType = { From 057ef17ceae5a6e086fe04213e7404a2f7d809fc Mon Sep 17 00:00:00 2001 From: Gabriel Borges Date: Mon, 24 Apr 2023 13:38:12 -0300 Subject: [PATCH 2/2] refactor(core): rename flag to useBigInt and refactored the logic --- packages/core/src/getters/scalar.ts | 9 ++++----- packages/core/src/types.ts | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/packages/core/src/getters/scalar.ts b/packages/core/src/getters/scalar.ts index d7228cc14..1d217ab15 100644 --- a/packages/core/src/getters/scalar.ts +++ b/packages/core/src/getters/scalar.ts @@ -28,11 +28,10 @@ export const getScalar = ({ switch (item.type) { case 'number': case 'integer': { - let value = context.override.useNumberTypeForBigInt - ? 'number' - : item.format === 'int64' - ? 'bigint' - : 'number'; + let value = + item.format === 'int64' && context.override.useBigInt + ? 'bigint' + : 'number'; let isEnum = false; if (item.enum) { diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index e8ba1e171..df33b9d4d 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -100,7 +100,7 @@ export type NormalizedOverrideOutput = { useDates?: boolean; useTypeOverInterfaces?: boolean; useDeprecatedOperations?: boolean; - useNumberTypeForBigInt?: boolean; + useBigInt?: boolean; }; export type NormalizedMutator = { @@ -279,7 +279,7 @@ export type OverrideOutput = { useDates?: boolean; useTypeOverInterfaces?: boolean; useDeprecatedOperations?: boolean; - useNumberTypeForBigInt?: boolean; + useBigInt?: boolean; }; export type OverrideOutputContentType = {