Skip to content

Commit 70f72a2

Browse files
[WEB-2699]chore: added issue count for upcoming cycles (#6273)
* chore: added issue count for upcoming cycles * chore: memoized show issue count
1 parent c0b5e0e commit 70f72a2

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

web/core/components/cycles/list/cycle-list-item-action.tsx

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,23 @@
11
"use client";
22

3-
import React, { FC, MouseEvent, useEffect } from "react";
3+
import React, { FC, MouseEvent, useEffect, useMemo } from "react";
44
import { observer } from "mobx-react";
55
import { usePathname, useSearchParams } from "next/navigation";
66
import { Controller, useForm } from "react-hook-form";
77
import { Eye, Users } from "lucide-react";
88
// types
99
import { ICycle, TCycleGroups } from "@plane/types";
1010
// ui
11-
import { Avatar, AvatarGroup, FavoriteStar, TOAST_TYPE, Tooltip, setPromiseToast, setToast } from "@plane/ui";
11+
import {
12+
Avatar,
13+
AvatarGroup,
14+
FavoriteStar,
15+
LayersIcon,
16+
TOAST_TYPE,
17+
Tooltip,
18+
setPromiseToast,
19+
setToast,
20+
} from "@plane/ui";
1221
// components
1322
import { CycleQuickActions } from "@/components/cycles";
1423
import { DateRangeDropdown } from "@/components/dropdowns";
@@ -66,6 +75,7 @@ export const CycleListItemAction: FC<Props> = observer((props) => {
6675

6776
// derived values
6877
const cycleStatus = cycleDetails.status ? (cycleDetails.status.toLocaleLowerCase() as TCycleGroups) : "draft";
78+
const showIssueCount = useMemo(() => cycleStatus === "draft" || cycleStatus === "upcoming", [cycleStatus]);
6979
const isEditingAllowed = allowPermissions(
7080
[EUserPermissions.ADMIN, EUserPermissions.MEMBER],
7181
EUserPermissionsLevel.PROJECT,
@@ -216,6 +226,13 @@ export const CycleListItemAction: FC<Props> = observer((props) => {
216226
<span>More details</span>
217227
</button>
218228

229+
{showIssueCount && (
230+
<div className="flex items-center gap-1">
231+
<LayersIcon className="h-4 w-4 text-custom-text-300" />
232+
<span className="text-xs text-custom-text-300">{cycleDetails.total_issues}</span>
233+
</div>
234+
)}
235+
219236
{!isActive && (
220237
<Controller
221238
control={control}

0 commit comments

Comments
 (0)