Remove relations for remotes (#5455)

For remotes, we will only create the foreign key, without the relation
metadata. Expected behavior will be:
- possible to create an activity. But the remote object will not be
displayed in the relations of the activity
- the remote objects should not be available in the search for relations

Also switched the number settings to an enum, since we now have to
handle `BigInt` case.

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
This commit is contained in:
Thomas Trompette
2024-05-20 16:37:35 +02:00
committed by GitHub
parent b098027174
commit 4d479ee8ea
12 changed files with 461 additions and 486 deletions

View File

@ -1,4 +1,7 @@
import { FieldMetadataSettings } from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata-settings.interface';
import {
FieldMetadataSettings,
NumberDataType,
} from 'src/engine/metadata-modules/field-metadata/interfaces/field-metadata-settings.interface';
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
@ -8,8 +11,6 @@ export const mapUdtNameToFieldType = (udtName: string): FieldMetadataType => {
return FieldMetadataType.UUID;
case 'varchar':
case 'text':
case 'bigint':
case 'int8':
return FieldMetadataType.TEXT;
case 'bool':
return FieldMetadataType.BOOLEAN;
@ -19,6 +20,8 @@ export const mapUdtNameToFieldType = (udtName: string): FieldMetadataType => {
case 'integer':
case 'int2':
case 'int4':
case 'int8':
case 'bigint':
return FieldMetadataType.NUMBER;
default:
return FieldMetadataType.TEXT;
@ -33,7 +36,12 @@ export const mapUdtNameToFieldSettings = (
case 'int2':
case 'int4':
return {
precision: 0,
dataType: NumberDataType.INT,
} satisfies FieldMetadataSettings<FieldMetadataType.NUMBER>;
case 'int8':
case 'bigint':
return {
dataType: NumberDataType.BIGINT,
} satisfies FieldMetadataSettings<FieldMetadataType.NUMBER>;
default:
return undefined;