diff --git a/packages/twenty-server/src/engine/metadata-modules/field-metadata/types/__tests__/field-metadata-entity.test-type.ts b/packages/twenty-server/src/engine/metadata-modules/field-metadata/types/__tests__/field-metadata-entity.test-type.ts index 41aa24e022..4aac61d93a 100644 --- a/packages/twenty-server/src/engine/metadata-modules/field-metadata/types/__tests__/field-metadata-entity.test-type.ts +++ b/packages/twenty-server/src/engine/metadata-modules/field-metadata/types/__tests__/field-metadata-entity.test-type.ts @@ -114,7 +114,6 @@ type NotDefinedSettings = { // oxlint-disable-next-line unused-imports/no-unused-vars type SettingsAssertions = [ - Expect>, Expect>, Expect>, Expect>, @@ -145,6 +144,16 @@ type SettingsAssertions = [ } > >, + Expect< + HasAllProperties< + CurrencyFieldMetadata, + { + settings: JsonbProperty< + FieldMetadataSettingsMapping[FieldMetadataType.CURRENCY] + >; + } + > + >, Expect< HasAllProperties< DateFieldMetadata, diff --git a/packages/twenty-shared/src/types/FieldMetadataSettings.ts b/packages/twenty-shared/src/types/FieldMetadataSettings.ts index cee9334ef2..1e122a2f28 100644 --- a/packages/twenty-shared/src/types/FieldMetadataSettings.ts +++ b/packages/twenty-shared/src/types/FieldMetadataSettings.ts @@ -20,12 +20,19 @@ export enum DateDisplayFormat { export type FieldNumberVariant = 'number' | 'percentage'; +export type FieldCurrencyFormat = 'short' | 'full'; + type FieldMetadataNumberSettings = { dataType?: NumberDataType; decimals?: number; type?: FieldNumberVariant; }; +type FieldMetadataCurrencySettings = { + format?: FieldCurrencyFormat; + decimals?: number; +}; + type FieldMetadataTextSettings = { displayedMaxRows?: number; }; @@ -62,6 +69,7 @@ type FieldMetadataTsVectorSettings = { export type FieldMetadataSettingsMapping = { [FieldMetadataType.NUMBER]: FieldMetadataNumberSettings | null; + [FieldMetadataType.CURRENCY]: FieldMetadataCurrencySettings | null; [FieldMetadataType.DATE]: FieldMetadataDateSettings | null; [FieldMetadataType.DATE_TIME]: FieldMetadataDateTimeSettings | null; [FieldMetadataType.TEXT]: FieldMetadataTextSettings | null; diff --git a/packages/twenty-shared/src/types/index.ts b/packages/twenty-shared/src/types/index.ts index 647a90a57b..ade278d81b 100644 --- a/packages/twenty-shared/src/types/index.ts +++ b/packages/twenty-shared/src/types/index.ts @@ -106,6 +106,7 @@ export { } from './FieldMetadataOptions'; export type { FieldNumberVariant, + FieldCurrencyFormat, FieldMetadataSettingsMapping, AllFieldMetadataSettings, FieldMetadataSettings,