diff --git a/web/core/components/project/card.tsx b/web/core/components/project/card.tsx index b0444742a50..8ccf6694e5b 100644 --- a/web/core/components/project/card.tsx +++ b/web/core/components/project/card.tsx @@ -29,11 +29,11 @@ import { cn } from "@/helpers/common.helper"; import { renderFormattedDate } from "@/helpers/date-time.helper"; import { copyUrlToClipboard } from "@/helpers/string.helper"; // hooks -import { useProject } from "@/hooks/store"; +import { useProject, useUserPermissions } from "@/hooks/store"; import { useAppRouter } from "@/hooks/use-app-router"; import { usePlatformOS } from "@/hooks/use-platform-os"; // plane-web constants -import { EUserPermissions } from "@/plane-web/constants/user-permissions"; +import { EUserPermissions, EUserPermissionsLevel } from "@/plane-web/constants/user-permissions"; type Props = { project: IProject; @@ -52,11 +52,16 @@ export const ProjectCard: React.FC = observer((props) => { const { workspaceSlug } = useParams(); // store hooks const { addProjectToFavorites, removeProjectFromFavorites } = useProject(); + const { allowPermissions } = useUserPermissions(); // hooks const { isMobile } = usePlatformOS(); project.member_role; // derived values const projectMembersIds = project.members?.map((member) => member.member_id); + const shouldRenderFavorite = allowPermissions( + [EUserPermissions.ADMIN, EUserPermissions.MEMBER], + EUserPermissionsLevel.WORKSPACE + ); // auth const isOwner = project.member_role === EUserPermissions.ADMIN; const isMember = project.member_role === EUserPermissions.MEMBER; @@ -233,19 +238,21 @@ export const ProjectCard: React.FC = observer((props) => { > - { - e.preventDefault(); - e.stopPropagation(); - if (project.is_favorite) handleRemoveFromFavorites(); - else handleAddToFavorites(); - }} - selected={project.is_favorite} - /> + {shouldRenderFavorite && ( + { + e.preventDefault(); + e.stopPropagation(); + if (project.is_favorite) handleRemoveFromFavorites(); + else handleAddToFavorites(); + }} + selected={project.is_favorite} + /> + )} )}