Fix default relation standard field deletion (#13975)

Authorize relation standard field deletion if targetObjectMetadata is
not present in existingFlatObjectMetadataMaps
This commit is contained in:
Paul Rastoin
2025-08-19 16:12:04 +02:00
committed by GitHub
parent 9d90a2e67f
commit 9eaede6e1e
6 changed files with 28 additions and 19 deletions
@@ -1,6 +1,6 @@
import { type FieldMetadataType } from 'twenty-shared/types';
import { isDefined } from 'twenty-shared/utils';
import { type RelationFieldMetadataType } from 'src/engine/metadata-modules/field-metadata/types/relation-field-metadata-type.type';
import { type FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type';
import { findRelationFlatFieldMetadataTargetFlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/utils/find-relation-flat-field-metadatas-target-flat-field-metadata.util';
import { type FlatObjectMetadataMaps } from 'src/engine/metadata-modules/flat-object-metadata-maps/types/flat-object-metadata-maps.type';
@@ -10,9 +10,7 @@ export const computeRelationTargetFlatObjectMetadataMaps = ({
flatFieldMetadata,
flatObjectMetadataMaps,
}: {
flatFieldMetadata: FlatFieldMetadata<
FieldMetadataType.RELATION | FieldMetadataType.MORPH_RELATION
>;
flatFieldMetadata: FlatFieldMetadata<RelationFieldMetadataType>;
flatObjectMetadataMaps: FlatObjectMetadataMaps;
}): FlatObjectMetadataMaps | undefined => {
const relationTargetFlatFieldMetadata =