diff --git a/src/pages/main/GroupItem.tsx b/src/pages/main/GroupItem.tsx index f4323aa..eb953c5 100644 --- a/src/pages/main/GroupItem.tsx +++ b/src/pages/main/GroupItem.tsx @@ -1,13 +1,15 @@ import { GroupInfoWithPresidentUuid } from "src/types/interfaces"; import ArrowRight from "@/assets/icons/arrow-right.svg?react"; -import Crown from "@/assets/icons/crown.svg?react"; +import { Crown } from "iconoir-react"; import Settings from "@/assets/icons/settings.svg?react"; import GroupProfileDefault from "@/assets/icons/group-profile-default.webp"; import Card from "@/components/card/Card"; import { Link } from "react-router-dom"; import useSWR from "swr"; import { getUserRole } from "@/apis/group"; +import useAuth from "@/hooks/useAuth"; +import { cn } from "@/utils/clsx"; const GroupItem = ({ groupParams, @@ -17,6 +19,7 @@ const GroupItem = ({ }; }) => { const group = groupParams.group; + const { userInfo } = useAuth(); const { data: userRole } = useSWR( ["userRole", group.uuid || ""], @@ -26,26 +29,34 @@ const GroupItem = ({ if (!userRole) return <>; const isAdmin = userRole.name === "admin"; + const isManager = userRole.name === "manager"; + const isPresident = userInfo?.uuid === group.presidentUuid; + + const getCrownColor = () => { + if (isPresident) return "text-yellow-500"; + if (isAdmin) return "text-slate-400"; + if (isManager) return "text-amber-700"; + return null; + }; + + const crownColor = getCrownColor(); return ( -
- group-default-profile -
- -

+

+ group-default-profile +
+ +

{group.name} + {crownColor && }

- {isAdmin && ( - - )} -
{isAdmin && ( diff --git a/src/pages/manage/pages/members/sections/memberManagement/MemberTableRow.tsx b/src/pages/manage/pages/members/sections/memberManagement/MemberTableRow.tsx index f2cfdbe..4664abc 100644 --- a/src/pages/manage/pages/members/sections/memberManagement/MemberTableRow.tsx +++ b/src/pages/manage/pages/members/sections/memberManagement/MemberTableRow.tsx @@ -63,7 +63,10 @@ const MemberTableRow = ({ {/* 이름 */}
- {member.name} {isThisMemberPresident && } + {member.name} +
+ {isThisMemberPresident && } +
{/* 이메일 */}