Fix v2 self relation field creation (#15382)
# Introduction Fixing self relation field creation in v2 - When computing related flat field to delete on object metadata deletion that has self relation fields - On self relation creation validation name availability not searching for the relation target field of the current object field if it's the field being validated ## Coverage - added CUD integration testing on self relation fields close https://github.com/twentyhq/twenty/issues/15153
This commit is contained in:
+11
-7
@@ -79,13 +79,17 @@ export const validateFlatFieldMetadataNameAvailability = ({
|
||||
}
|
||||
|
||||
const targetFlatFieldMetadata =
|
||||
remainingFlatEntityMapsToValidate?.byId[
|
||||
existingFlatFieldMetadata.relationTargetFieldMetadataId
|
||||
] ??
|
||||
findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityId: existingFlatFieldMetadata.relationTargetFieldMetadataId,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
});
|
||||
flatFieldMetadata.id ===
|
||||
existingFlatFieldMetadata.relationTargetFieldMetadataId
|
||||
? flatFieldMetadata
|
||||
: (remainingFlatEntityMapsToValidate?.byId[
|
||||
existingFlatFieldMetadata.relationTargetFieldMetadataId
|
||||
] ??
|
||||
findFlatEntityByIdInFlatEntityMapsOrThrow({
|
||||
flatEntityId:
|
||||
existingFlatFieldMetadata.relationTargetFieldMetadataId,
|
||||
flatEntityMaps: flatFieldMetadataMaps,
|
||||
}));
|
||||
|
||||
if (!isMorphOrRelationFlatFieldMetadata(targetFlatFieldMetadata)) {
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user