diff --git a/packages/twenty-front/src/modules/activities/timelineActivities/rows/main-object/components/EventFieldDiff.tsx b/packages/twenty-front/src/modules/activities/timelineActivities/rows/main-object/components/EventFieldDiff.tsx index 1cebf7e5e..94726465f 100644 --- a/packages/twenty-front/src/modules/activities/timelineActivities/rows/main-object/components/EventFieldDiff.tsx +++ b/packages/twenty-front/src/modules/activities/timelineActivities/rows/main-object/components/EventFieldDiff.tsx @@ -23,6 +23,10 @@ const StyledEventFieldDiffContainer = styled.div` width: 380px; `; +const StyledEmptyValue = styled.div` + color: ${({ theme }) => theme.font.color.tertiary}; +`; + export const EventFieldDiff = ({ diffRecord, mainObjectMetadataItem, @@ -33,21 +37,39 @@ export const EventFieldDiff = ({ throw new Error('fieldMetadataItem is required'); } + const isValueEmpty = (value: unknown): boolean => + value === null || value === undefined || value === ''; + + const isObjectEmpty = (obj: Record): boolean => + Object.values(obj).every(isValueEmpty); + + const isUpdatedToEmpty = + isValueEmpty(diffRecord) || + (typeof diffRecord === 'object' && + diffRecord !== null && + isObjectEmpty(diffRecord)); + return ( → - - + {isUpdatedToEmpty ? ( + Empty + ) : ( + <> + + + + )} );