diff --git a/web/core/components/issues/issue-detail/issue-activity/root.tsx b/web/core/components/issues/issue-detail/issue-activity/root.tsx index 8bb15b9731..3f2723c06d 100644 --- a/web/core/components/issues/issue-detail/issue-activity/root.tsx +++ b/web/core/components/issues/issue-detail/issue-activity/root.tsx @@ -10,11 +10,12 @@ import { TOAST_TYPE, setToast } from "@plane/ui"; import { IssueCommentCreate } from "@/components/issues"; import { IssueActivityCommentRoot } from "@/components/issues/issue-detail"; // hooks -import { useIssueDetail, useProject } from "@/hooks/store"; +import { useIssueDetail, useProject, useUserPermissions } from "@/hooks/store"; // plane web components import { ActivityFilterRoot, IssueActivityWorklogCreateButton } from "@/plane-web/components/issues/worklog"; // plane web constants import { TActivityFilters, defaultActivityFilters } from "@/plane-web/constants/issues"; +import { EUserPermissions } from "@/plane-web/constants/user-permissions"; type TIssueActivity = { workspaceSlug: string; @@ -34,7 +35,11 @@ export const IssueActivity: FC = observer((props) => { const { workspaceSlug, projectId, issueId, disabled = false, isIntakeIssue = false } = props; // hooks const { createComment, updateComment, removeComment } = useIssueDetail(); + const { projectPermissionsByWorkspaceSlugAndProjectId } = useUserPermissions(); const { getProjectById } = useProject(); + //derived values + const isGuest = projectPermissionsByWorkspaceSlugAndProjectId(workspaceSlug, projectId) === EUserPermissions.GUEST; + const isWorklogButtonEnabled = !isIntakeIssue && !isGuest; // state const [selectedFilters, setSelectedFilters] = useState(defaultActivityFilters); // toggle filter @@ -115,7 +120,7 @@ export const IssueActivity: FC = observer((props) => {
Activity
- {!isIntakeIssue && ( + {isWorklogButtonEnabled && (