From ba8b0f596f1a3a6cd614a60d4cf82a68d6198f75 Mon Sep 17 00:00:00 2001 From: Alexander Polyankin <alexander.polyankin@metabase.com> Date: Thu, 7 Apr 2022 17:08:56 +0400 Subject: [PATCH] Count only non-archived events (#21496) --- .../collections/components/TimelineCard/TimelineCard.tsx | 6 +++++- .../components/TimelineCard/TimelineCard.unit.spec.tsx | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.tsx b/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.tsx index 0f8eab24122..3c5b333ab0a 100644 --- a/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.tsx +++ b/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.tsx @@ -26,7 +26,7 @@ const TimelineCard = ({ }: TimelineCardProps): JSX.Element => { const timelineUrl = Urls.timelineInCollection(timeline, collection); const menuItems = getMenuItems(timeline, collection, onUnarchive); - const eventCount = timeline.events?.length; + const eventCount = getEventCount(timeline); const hasDescription = Boolean(timeline.description); const hasMenuItems = menuItems.length > 0; const hasEventCount = !hasMenuItems && eventCount != null; @@ -58,6 +58,10 @@ const TimelineCard = ({ ); }; +const getEventCount = (timeline: Timeline) => { + return timeline.events ? timeline.events.filter(e => !e.archived).length : 0; +}; + const getMenuItems = ( timeline: Timeline, collection: Collection, diff --git a/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.unit.spec.tsx b/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.unit.spec.tsx index 50901b8be6c..c05a1292459 100644 --- a/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.unit.spec.tsx +++ b/frontend/src/metabase/timelines/collections/components/TimelineCard/TimelineCard.unit.spec.tsx @@ -11,7 +11,11 @@ describe("TimelineCard", () => { it("should render timeline", () => { const props = getProps({ timeline: createMockTimeline({ - events: [createMockTimelineEvent(), createMockTimelineEvent()], + events: [ + createMockTimelineEvent(), + createMockTimelineEvent(), + createMockTimelineEvent({ archived: true }), + ], }), }); -- GitLab