diff --git a/apps/app/components/core/board-view/board-header.tsx b/apps/app/components/core/board-view/board-header.tsx index 6b8986093..b9aab7bb4 100644 --- a/apps/app/components/core/board-view/board-header.tsx +++ b/apps/app/components/core/board-view/board-header.tsx @@ -9,9 +9,11 @@ import issuesService from "services/issues.service"; import projectService from "services/project.service"; // hooks import useIssuesView from "hooks/use-issues-view"; +// component +import { Avatar } from "components/ui"; // icons import { ArrowsPointingInIcon, ArrowsPointingOutIcon, PlusIcon } from "@heroicons/react/24/outline"; -import { getStateGroupIcon } from "components/icons"; +import { getPriorityIcon, getStateGroupIcon } from "components/icons"; // helpers import { addSpaceIfCamelCase } from "helpers/string.helper"; // types @@ -89,9 +91,39 @@ export const BoardHeader: React.FC = ({ return title; }; + const getGroupIcon = () => { + let icon; + + switch (selectedGroup) { + case "state": + icon = currentState && getStateGroupIcon(currentState.group, "18", "18", bgColor); + break; + case "priority": + icon = getPriorityIcon(groupTitle, "h-[18px] w-[18px] flex items-center"); + break; + case "labels": + const labelColor = + issueLabels?.find((label) => label.id === groupTitle)?.color ?? "#000000"; + icon = ( + + ); + break; + case "created_by": + const member = members?.find((member) => member.member.id === groupTitle)?.member; + icon = ; + + break; + } + + return icon; + }; + return (
@@ -101,7 +133,7 @@ export const BoardHeader: React.FC = ({ !isCollapsed ? "mb-2 flex-col gap-y-2 py-2" : "" }`} > - {currentState && getStateGroupIcon(currentState.group, "18", "18", bgColor)} + {getGroupIcon()}

= ({ return title; }; + const getGroupIcon = () => { + let icon; + + switch (selectedGroup) { + case "state": + icon = currentState && getStateGroupIcon(currentState.group, "18", "18", bgColor); + break; + case "priority": + icon = getPriorityIcon(groupTitle, "h-[18px] w-[18px] flex items-center"); + break; + case "labels": + const labelColor = + issueLabels?.find((label) => label.id === groupTitle)?.color ?? "#000000"; + icon = ( + + ); + break; + case "created_by": + const member = members?.find((member) => member.member.id === groupTitle)?.member; + icon = ; + + break; + } + + return icon; + }; + return ( {({ open }) => ( @@ -110,12 +140,8 @@ export const SingleList: React.FC = ({ >
- {selectedGroup !== null && selectedGroup === "state" ? ( - - {currentState && getStateGroupIcon(currentState.group, "16", "16", bgColor)} - - ) : ( - "" + {selectedGroup !== null && ( + {getGroupIcon()} )} {selectedGroup !== null ? (