diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/activity/components/EventRowActivity.tsx b/packages/twenty-front/src/modules/activities/timeline-activities/rows/activity/components/EventRowActivity.tsx index 25a427b048..697aa33d82 100644 --- a/packages/twenty-front/src/modules/activities/timeline-activities/rows/activity/components/EventRowActivity.tsx +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/activity/components/EventRowActivity.tsx @@ -1,11 +1,8 @@ import { styled } from '@linaria/react'; import { t } from '@lingui/core/macro'; -import { - type EventRowDynamicComponentProps, - StyledEventRowItemAction, - StyledEventRowItemColumn, -} from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent'; +import { type EventRowDynamicComponentProps } from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent.types'; +import { EventRowItem } from '@/activities/timeline-activities/rows/components/EventRowItem'; import { isTimelineActivityWithLinkedRecord } from '@/activities/timeline-activities/types/TimelineActivity'; import { useOpenRecordInSidePanel } from '@/side-panel/hooks/useOpenRecordInSidePanel'; import { type CoreObjectNameSingular } from 'twenty-shared/types'; @@ -102,10 +99,10 @@ export const EventRowActivity = ({ - {authorFullName} - + {authorFullName} + {t`${eventAction} a related ${eventObject}`} - + openRecordInSidePanel({ diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/calendar/components/EventRowCalendarEvent.tsx b/packages/twenty-front/src/modules/activities/timeline-activities/rows/calendar/components/EventRowCalendarEvent.tsx index bd797d6913..4e4e545c8e 100644 --- a/packages/twenty-front/src/modules/activities/timeline-activities/rows/calendar/components/EventRowCalendarEvent.tsx +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/calendar/components/EventRowCalendarEvent.tsx @@ -5,11 +5,8 @@ import { useState } from 'react'; import { EventCardCalendarEvent } from '@/activities/timeline-activities/rows/calendar/components/EventCardCalendarEvent'; import { EventCard } from '@/activities/timeline-activities/rows/components/EventCard'; import { EventCardToggleButton } from '@/activities/timeline-activities/rows/components/EventCardToggleButton'; -import { - type EventRowDynamicComponentProps, - StyledEventRowItemAction, - StyledEventRowItemColumn, -} from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent'; +import { type EventRowDynamicComponentProps } from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent.types'; +import { EventRowItem } from '@/activities/timeline-activities/rows/components/EventRowItem'; import { isTimelineActivityWithLinkedRecord } from '@/activities/timeline-activities/types/TimelineActivity'; import { themeCssVariables } from 'twenty-ui/theme-constants'; @@ -43,10 +40,10 @@ export const EventRowCalendarEvent = ({ return ( - {authorFullName} - + {authorFullName} + {t`linked a calendar event with ${labelIdentifierValue}`} - + {isTimelineActivityWithLinkedRecord(event) && ( diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.tsx b/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.tsx index 39485c29af..557058185e 100644 --- a/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.tsx +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.tsx @@ -1,38 +1,9 @@ -import { styled } from '@linaria/react'; - import { EventRowActivity } from '@/activities/timeline-activities/rows/activity/components/EventRowActivity'; import { EventRowCalendarEvent } from '@/activities/timeline-activities/rows/calendar/components/EventRowCalendarEvent'; +import { type EventRowDynamicComponentProps } from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent.types'; import { EventRowMainObject } from '@/activities/timeline-activities/rows/main-object/components/EventRowMainObject'; import { EventRowMessage } from '@/activities/timeline-activities/rows/message/components/EventRowMessage'; -import { type TimelineActivity } from '@/activities/timeline-activities/types/TimelineActivity'; import { CoreObjectNameSingular } from 'twenty-shared/types'; -import { type EnrichedObjectMetadataItem } from '@/object-metadata/types/EnrichedObjectMetadataItem'; -import { themeCssVariables } from 'twenty-ui/theme-constants'; - -export interface EventRowDynamicComponentProps { - labelIdentifierValue: string; - event: TimelineActivity; - mainObjectMetadataItem: EnrichedObjectMetadataItem; - linkedObjectMetadataItem: EnrichedObjectMetadataItem | null; - authorFullName: string; - createdAt?: string; -} - -export const StyledEventRowItemColumn = styled.div` - align-items: center; - color: ${themeCssVariables.font.color.primary}; - display: flex; - flex-direction: row; - gap: ${themeCssVariables.spacing[1]}; -`; - -export const StyledEventRowItemAction = styled.div` - align-items: center; - color: ${themeCssVariables.font.color.secondary}; - display: flex; - flex-direction: row; - gap: ${themeCssVariables.spacing[1]}; -`; export const EventRowDynamicComponent = ({ labelIdentifierValue, diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.types.ts b/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.types.ts new file mode 100644 index 0000000000..a159dc17b2 --- /dev/null +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowDynamicComponent.types.ts @@ -0,0 +1,11 @@ +import { type TimelineActivity } from '@/activities/timeline-activities/types/TimelineActivity'; +import { type EnrichedObjectMetadataItem } from '@/object-metadata/types/EnrichedObjectMetadataItem'; + +export type EventRowDynamicComponentProps = { + labelIdentifierValue: string; + event: TimelineActivity; + mainObjectMetadataItem: EnrichedObjectMetadataItem; + linkedObjectMetadataItem: EnrichedObjectMetadataItem | null; + authorFullName: string; + createdAt?: string; +}; diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowItem.tsx b/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowItem.tsx new file mode 100644 index 0000000000..e3195e7a01 --- /dev/null +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/components/EventRowItem.tsx @@ -0,0 +1,36 @@ +import { styled } from '@linaria/react'; +import { type ReactNode } from 'react'; + +import { themeCssVariables } from 'twenty-ui/theme-constants'; + +type EventRowItemProps = { + children: ReactNode; + variant?: 'column' | 'action'; +}; + +const StyledColumn = styled.div` + align-items: center; + color: ${themeCssVariables.font.color.primary}; + display: flex; + flex-direction: row; + gap: ${themeCssVariables.spacing[1]}; +`; + +const StyledAction = styled.div` + align-items: center; + color: ${themeCssVariables.font.color.secondary}; + display: flex; + flex-direction: row; + gap: ${themeCssVariables.spacing[1]}; +`; + +export const EventRowItem = ({ + children, + variant = 'column', +}: EventRowItemProps) => { + if (variant === 'action') { + return {children}; + } + + return {children}; +}; diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObject.tsx b/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObject.tsx index 2d1e50796d..6853ba2d01 100644 --- a/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObject.tsx +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObject.tsx @@ -1,8 +1,5 @@ -import { - type EventRowDynamicComponentProps, - StyledEventRowItemAction, - StyledEventRowItemColumn, -} from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent'; +import { type EventRowDynamicComponentProps } from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent.types'; +import { EventRowItem } from '@/activities/timeline-activities/rows/components/EventRowItem'; import { EventRowMainObjectUpdated } from '@/activities/timeline-activities/rows/main-object/components/EventRowMainObjectUpdated'; import { styled } from '@linaria/react'; import { t } from '@lingui/core/macro'; @@ -54,15 +51,9 @@ export const EventRowMainObject = ({ - - {labelIdentifierValue} - - - {t`was created by`} - - - {authorFullName} - + {labelIdentifierValue} + {t`was created by`} + {authorFullName} {createdAt} @@ -85,15 +76,9 @@ export const EventRowMainObject = ({ - - {labelIdentifierValue} - - - {t`was deleted by`} - - - {authorFullName} - + {labelIdentifierValue} + {t`was deleted by`} + {authorFullName} {createdAt} @@ -105,15 +90,9 @@ export const EventRowMainObject = ({ - - {labelIdentifierValue} - - - {t`was restored by`} - - - {authorFullName} - + {labelIdentifierValue} + {t`was restored by`} + {authorFullName} {createdAt} diff --git a/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObjectUpdated.tsx b/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObjectUpdated.tsx index ab99fd3437..49a66687a8 100644 --- a/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObjectUpdated.tsx +++ b/packages/twenty-front/src/modules/activities/timeline-activities/rows/main-object/components/EventRowMainObjectUpdated.tsx @@ -4,7 +4,7 @@ import { useState } from 'react'; import { EventCard } from '@/activities/timeline-activities/rows/components/EventCard'; import { EventCardToggleButton } from '@/activities/timeline-activities/rows/components/EventCardToggleButton'; -import { StyledEventRowItemColumn } from '@/activities/timeline-activities/rows/components/EventRowDynamicComponent'; +import { EventRowItem } from '@/activities/timeline-activities/rows/components/EventRowItem'; import { EventFieldDiffContainer } from '@/activities/timeline-activities/rows/main-object/components/EventFieldDiffContainer'; import { type TimelineActivity } from '@/activities/timeline-activities/types/TimelineActivity'; import { type FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem'; @@ -79,7 +79,7 @@ export const EventRowMainObjectUpdated = ({ - {authorFullName} + {authorFullName} {t`updated`} {diffEntries.length === 1 && ( - {authorFullName} - - {t`linked an email with`} - - - {labelIdentifierValue} - + {authorFullName} + {t`linked an email with`} + {labelIdentifierValue}