From 2cccb4899ef932e952bee4e46100897ebf748d94 Mon Sep 17 00:00:00 2001 From: Charles Bochet Date: Fri, 24 Oct 2025 14:27:17 +0200 Subject: [PATCH] Fix on Morph RelationFieldDisplay (#15333) --- .../MorphRelationOneToManyFieldDisplay.tsx | 44 ++++++++++--------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/packages/twenty-front/src/modules/object-record/record-field/ui/meta-types/display/components/MorphRelationOneToManyFieldDisplay.tsx b/packages/twenty-front/src/modules/object-record/record-field/ui/meta-types/display/components/MorphRelationOneToManyFieldDisplay.tsx index 64d75cdab9..1a21f98847 100644 --- a/packages/twenty-front/src/modules/object-record/record-field/ui/meta-types/display/components/MorphRelationOneToManyFieldDisplay.tsx +++ b/packages/twenty-front/src/modules/object-record/record-field/ui/meta-types/display/components/MorphRelationOneToManyFieldDisplay.tsx @@ -3,9 +3,9 @@ import { FieldContext } from '@/object-record/record-field/ui/contexts/FieldCont import { useFieldFocus } from '@/object-record/record-field/ui/hooks/useFieldFocus'; import { useMorphRelationFromManyFieldDisplay } from '@/object-record/record-field/ui/meta-types/hooks/useMorphRelationFromManyFieldDisplay'; -import { type ObjectRecord } from '@/object-record/types/ObjectRecord'; import { ExpandableList } from '@/ui/layout/expandable-list/components/ExpandableList'; -import { Fragment, useContext } from 'react'; +import { useContext } from 'react'; +import { type ObjectRecord } from 'twenty-shared/types'; import { isDefined } from 'twenty-shared/utils'; export const MorphRelationOneToManyFieldDisplay = () => { @@ -17,38 +17,40 @@ export const MorphRelationOneToManyFieldDisplay = () => { if (!isDefined(morphValuesWithObjectNameSingular)) { return null; } + const areMorphValuesWithObjectNameSingularEmpty = morphValuesWithObjectNameSingular.every( (morphValueWithObjectNameSingular) => morphValueWithObjectNameSingular.value.length === 0, ); + if (areMorphValuesWithObjectNameSingularEmpty) { return null; } + const flattenMorphValuesWithObjectNameSingular = + morphValuesWithObjectNameSingular.flatMap( + (morphValueWithObjectNameSingular) => + morphValueWithObjectNameSingular.value.map((record: ObjectRecord) => ({ + objectNameSingular: + morphValueWithObjectNameSingular.objectNameSingular, + record, + })), + ); + return ( - {morphValuesWithObjectNameSingular + {flattenMorphValuesWithObjectNameSingular .filter(isDefined) - .map((morphValueWithObjectNameSingular) => { + .map(({ objectNameSingular, record }) => { return ( - - {morphValueWithObjectNameSingular.value.map( - (record: ObjectRecord) => { - return ( - - ); - }, - )} - + ); })}