diff --git a/front/src/modules/activities/comment/CommentCounter.tsx b/front/src/modules/activities/comment/CommentCounter.tsx
new file mode 100644
index 000000000..52274fdf5
--- /dev/null
+++ b/front/src/modules/activities/comment/CommentCounter.tsx
@@ -0,0 +1,28 @@
+import React from 'react';
+import { useTheme } from '@emotion/react';
+import styled from '@emotion/styled';
+
+import { IconComment } from '@/ui/display/icon';
+
+const StyledCommentIcon = styled.div`
+ align-items: center;
+ color: ${({ theme }) => theme.font.color.light};
+ display: flex;
+ gap: ${({ theme }) => theme.spacing(1)};
+`;
+
+const CommentCounter = ({ commentCount }: { commentCount: number }) => {
+ const theme = useTheme();
+ return (
+
+ {commentCount > 0 && (
+
+
+ {commentCount}
+
+ )}
+
+ );
+};
+
+export default CommentCounter;
diff --git a/front/src/modules/activities/timeline/components/TimelineActivityCardFooter.tsx b/front/src/modules/activities/timeline/components/TimelineActivityCardFooter.tsx
index 600ae5bda..26ae24e95 100644
--- a/front/src/modules/activities/timeline/components/TimelineActivityCardFooter.tsx
+++ b/front/src/modules/activities/timeline/components/TimelineActivityCardFooter.tsx
@@ -1,11 +1,13 @@
+import { isNonEmptyArray } from '@apollo/client/utilities';
import styled from '@emotion/styled';
+import CommentCounter from '@/activities/comment/CommentCounter';
import { UserChip } from '@/users/components/UserChip';
import { Activity, User } from '~/generated/graphql';
import { beautifyExactDate } from '~/utils/date-utils';
type TimelineActivityCardFooterProps = {
- activity: Pick & {
+ activity: Pick & {
assignee?: Pick | null;
};
};
@@ -26,26 +28,39 @@ const StyledVerticalSeparator = styled.div`
height: 24px;
`;
+const StyledComment = styled.div`
+ margin-left: auto;
+`;
export const TimelineActivityCardFooter = ({
activity,
-}: TimelineActivityCardFooterProps) => (
- <>
- {(activity.assignee || activity.dueAt) && (
-
- {activity.assignee && (
-
- )}
- {activity.dueAt && (
- <>
- {activity.assignee && }
- {beautifyExactDate(activity.dueAt)}
- >
- )}
-
- )}
- >
-);
+}: TimelineActivityCardFooterProps) => {
+ const hasComments = isNonEmptyArray(activity.comments || []);
+
+ return (
+ <>
+ {(activity.assignee || activity.dueAt || hasComments) && (
+
+ {activity.assignee && (
+
+ )}
+
+ {activity.dueAt && (
+ <>
+ {activity.assignee && }
+ {beautifyExactDate(activity.dueAt)}
+ >
+ )}
+
+ {hasComments && (
+
+ )}
+
+
+ )}
+ >
+ );
+};