|
1 | 1 | "use client"; |
2 | 2 |
|
3 | | -import React, { FC, MouseEvent, useEffect } from "react"; |
| 3 | +import React, { FC, MouseEvent, useEffect, useMemo } from "react"; |
4 | 4 | import { observer } from "mobx-react"; |
5 | 5 | import { usePathname, useSearchParams } from "next/navigation"; |
6 | 6 | import { Controller, useForm } from "react-hook-form"; |
7 | 7 | import { Eye, Users } from "lucide-react"; |
8 | 8 | // types |
9 | 9 | import { ICycle, TCycleGroups } from "@plane/types"; |
10 | 10 | // 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"; |
12 | 21 | // components |
13 | 22 | import { CycleQuickActions } from "@/components/cycles"; |
14 | 23 | import { DateRangeDropdown } from "@/components/dropdowns"; |
@@ -66,6 +75,7 @@ export const CycleListItemAction: FC<Props> = observer((props) => { |
66 | 75 |
|
67 | 76 | // derived values |
68 | 77 | const cycleStatus = cycleDetails.status ? (cycleDetails.status.toLocaleLowerCase() as TCycleGroups) : "draft"; |
| 78 | + const showIssueCount = useMemo(() => cycleStatus === "draft" || cycleStatus === "upcoming", [cycleStatus]); |
69 | 79 | const isEditingAllowed = allowPermissions( |
70 | 80 | [EUserPermissions.ADMIN, EUserPermissions.MEMBER], |
71 | 81 | EUserPermissionsLevel.PROJECT, |
@@ -216,6 +226,13 @@ export const CycleListItemAction: FC<Props> = observer((props) => { |
216 | 226 | <span>More details</span> |
217 | 227 | </button> |
218 | 228 |
|
| 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 | + |
219 | 236 | {!isActive && ( |
220 | 237 | <Controller |
221 | 238 | control={control} |
|
0 commit comments