Fix on Morph RelationFieldDisplay (#15333)

This commit is contained in:
Charles Bochet
2025-10-24 14:27:17 +02:00
committed by GitHub
parent b46dc44a95
commit 2cccb4899e
@@ -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 (
<ExpandableList isChipCountDisplayed={isFocused}>
{morphValuesWithObjectNameSingular
{flattenMorphValuesWithObjectNameSingular
.filter(isDefined)
.map((morphValueWithObjectNameSingular) => {
.map(({ objectNameSingular, record }) => {
return (
<Fragment key={morphValueWithObjectNameSingular.objectNameSingular}>
{morphValueWithObjectNameSingular.value.map(
(record: ObjectRecord) => {
return (
<RecordChip
key={record.id}
objectNameSingular={
morphValueWithObjectNameSingular.objectNameSingular
}
record={record}
forceDisableClick={disableChipClick}
triggerEvent={triggerEvent}
/>
);
},
)}
</Fragment>
<RecordChip
key={record.id}
objectNameSingular={objectNameSingular}
record={record}
forceDisableClick={disableChipClick}
triggerEvent={triggerEvent}
/>
);
})}
</ExpandableList>