diff --git a/packages/twenty-server/src/engine/metadata-modules/flat-field-metadata/utils/merge-flat-field-metadatas-in-flat-object-metadata.util.ts b/packages/twenty-server/src/engine/metadata-modules/flat-field-metadata/utils/merge-flat-field-metadatas-in-flat-object-metadata.util.ts deleted file mode 100644 index 54c44a8c132..00000000000 --- a/packages/twenty-server/src/engine/metadata-modules/flat-field-metadata/utils/merge-flat-field-metadatas-in-flat-object-metadata.util.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { type FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type'; -import { mergeTwoFlatFieldMetadatas } from 'src/engine/metadata-modules/flat-field-metadata/utils/merge-two-flat-field-metadatas.util'; -import { type FlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type'; - -export const mergeFlatFieldMetadatasInFlatObjectMetadata = ({ - flatFieldMetadatas, - flatObjectMetadata, -}: { - flatObjectMetadata: FlatObjectMetadata; - flatFieldMetadatas: FlatFieldMetadata[]; -}) => { - return { - ...flatObjectMetadata, - flatFieldMetadatas: mergeTwoFlatFieldMetadatas({ - destFlatFieldMetadatas: flatObjectMetadata.flatFieldMetadatas, - toMergeFlatFieldMetadatas: flatFieldMetadatas, - }), - }; -}; diff --git a/packages/twenty-server/src/engine/metadata-modules/flat-field-metadata/utils/merge-two-flat-field-metadatas.util.ts b/packages/twenty-server/src/engine/metadata-modules/flat-field-metadata/utils/merge-two-flat-field-metadatas.util.ts deleted file mode 100644 index 94a77f659d7..00000000000 --- a/packages/twenty-server/src/engine/metadata-modules/flat-field-metadata/utils/merge-two-flat-field-metadatas.util.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { - deepMerge, - fromArrayToUniqueKeyRecord, - isDefined, -} from 'twenty-shared/utils'; - -import { type FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type'; -import { type ToMerge } from 'src/engine/workspace-manager/workspace-migration-v2/workspace-migration-builder-v2/types/to-merge.type'; - -export const mergeTwoFlatFieldMetadatas = ({ - destFlatFieldMetadatas, - toMergeFlatFieldMetadatas, -}: ToMerge): FlatFieldMetadata[] => { - const initialRecordAccumulator = fromArrayToUniqueKeyRecord({ - array: destFlatFieldMetadatas, - uniqueKey: 'universalIdentifier', - }); - - const mergedUniversalIdentifierFlatFieldMetadataRecord = - toMergeFlatFieldMetadatas.reduce((acc, flatFieldToMerge) => { - const fieldUniversalIdentifier = flatFieldToMerge.universalIdentifier; - const destFieldMetadata: FlatFieldMetadata | undefined = - acc[fieldUniversalIdentifier]; - - return { - ...acc, - [fieldUniversalIdentifier]: isDefined(destFieldMetadata) - ? deepMerge(destFieldMetadata, flatFieldToMerge) - : flatFieldToMerge, - }; - }, initialRecordAccumulator); - - return Object.values(mergedUniversalIdentifierFlatFieldMetadataRecord); -}; diff --git a/packages/twenty-server/src/engine/metadata-modules/flat-object-metadata/utils/dispatch-and-merge-flat-field-metadatas-in-flat-object-metadatas.util.ts b/packages/twenty-server/src/engine/metadata-modules/flat-object-metadata/utils/dispatch-and-merge-flat-field-metadatas-in-flat-object-metadatas.util.ts deleted file mode 100644 index 252c477d523..00000000000 --- a/packages/twenty-server/src/engine/metadata-modules/flat-object-metadata/utils/dispatch-and-merge-flat-field-metadatas-in-flat-object-metadatas.util.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { fromArrayToValuesByKeyRecord, isDefined } from 'twenty-shared/utils'; - -import { type FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type'; -import { mergeFlatFieldMetadatasInFlatObjectMetadata } from 'src/engine/metadata-modules/flat-field-metadata/utils/merge-flat-field-metadatas-in-flat-object-metadata.util'; -import { type FlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type'; - -type DispatchAndMergeFlatFieldMetadatasInFlatObjectMetadatasArgs = { - flatObjectMetadatas: FlatObjectMetadata[]; - flatFieldMetadatas: FlatFieldMetadata[]; -}; -export const dispatchAndMergeFlatFieldMetadatasInFlatObjectMetadatas = ({ - flatFieldMetadatas, - flatObjectMetadatas, -}: DispatchAndMergeFlatFieldMetadatasInFlatObjectMetadatasArgs): FlatObjectMetadata[] => { - if (flatFieldMetadatas.length === 0) { - return flatObjectMetadatas; - } - - const flatFieldMetadataGroupedByFlatObjectMetadataId = - fromArrayToValuesByKeyRecord({ - array: flatFieldMetadatas, - key: 'objectMetadataId', - }); - - return flatObjectMetadatas.map((flatObjectMetadata) => { - const toMergeFlatFieldMetadatas = - flatFieldMetadataGroupedByFlatObjectMetadataId[flatObjectMetadata.id]; - - if (!isDefined(toMergeFlatFieldMetadatas)) { - return flatObjectMetadata; - } - - return mergeFlatFieldMetadatasInFlatObjectMetadata({ - flatFieldMetadatas: toMergeFlatFieldMetadatas, - flatObjectMetadata, - }); - }); -}; diff --git a/packages/twenty-server/src/engine/metadata-modules/flat-object-metadata/utils/merge-two-flat-object-metadatas.util.ts b/packages/twenty-server/src/engine/metadata-modules/flat-object-metadata/utils/merge-two-flat-object-metadatas.util.ts deleted file mode 100644 index 98d2de78c34..00000000000 --- a/packages/twenty-server/src/engine/metadata-modules/flat-object-metadata/utils/merge-two-flat-object-metadatas.util.ts +++ /dev/null @@ -1,67 +0,0 @@ -import { - deepMerge, - fromArrayToUniqueKeyRecord, - isDefined, -} from 'twenty-shared/utils'; - -import { mergeTwoFlatFieldMetadatas } from 'src/engine/metadata-modules/flat-field-metadata/utils/merge-two-flat-field-metadatas.util'; -import { type FlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type'; -import { type ToMerge } from 'src/engine/workspace-manager/workspace-migration-v2/workspace-migration-builder-v2/types/to-merge.type'; - -export const mergeTwoFlatObjectMetadatas = ({ - destFlatObjectMetadatas, - toMergeFlatObjectMetadatas, -}: ToMerge< - FlatObjectMetadata[], - 'FlatObjectMetadatas' ->): FlatObjectMetadata[] => { - const initialObjectAccumulator = fromArrayToUniqueKeyRecord({ - array: destFlatObjectMetadatas, - uniqueKey: 'universalIdentifier', - }); - - const mergedUniversalIdentifierFlatObjectMetadataRecord = - toMergeFlatObjectMetadatas.reduce>( - (acc, toMergeFlatObjectMetadata) => { - const flatObjectUniversalIdentifier = - toMergeFlatObjectMetadata.universalIdentifier; - const accumulatorCurrentOccurrence: FlatObjectMetadata | undefined = - initialObjectAccumulator[flatObjectUniversalIdentifier]; - - if (!isDefined(accumulatorCurrentOccurrence)) { - return { - ...acc, - [flatObjectUniversalIdentifier]: toMergeFlatObjectMetadata, - }; - } - - const { - flatFieldMetadatas: destFlatFieldMetadatas, - ...destFlatObjectMetadataRest - } = accumulatorCurrentOccurrence; - const { - flatFieldMetadatas: toMergeFlatFieldMetadatas, - ...toMergeFlatObjectMetadataRest - } = toMergeFlatObjectMetadata; - const mergedFlatObjectMetadata: FlatObjectMetadata = { - ...deepMerge( - destFlatObjectMetadataRest, - toMergeFlatObjectMetadataRest, - ), - // TODO prastoin handle indexes - flatFieldMetadatas: mergeTwoFlatFieldMetadatas({ - destFlatFieldMetadatas, - toMergeFlatFieldMetadatas, - }), - }; - - return { - ...acc, - [flatObjectUniversalIdentifier]: mergedFlatObjectMetadata, - }; - }, - initialObjectAccumulator, - ); - - return Object.values(mergedUniversalIdentifierFlatObjectMetadataRecord); -};