[842] chore: disable comments and reactions in archived issues. (#4101)

This commit is contained in:
Prateek Shourya 2024-04-03 18:02:07 +05:30 committed by GitHub
parent fed5916907
commit 68ebcfd04e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 77 additions and 36 deletions

View file

@ -13,10 +13,11 @@ type TIssueActivityCommentRoot = {
issueId: string;
activityOperations: TActivityOperations;
showAccessSpecifier?: boolean;
disabled?: boolean;
};
export const IssueActivityCommentRoot: FC<TIssueActivityCommentRoot> = observer((props) => {
const { workspaceSlug, issueId, activityOperations, showAccessSpecifier } = props;
const { workspaceSlug, issueId, activityOperations, showAccessSpecifier, disabled } = props;
// hooks
const {
activity: { getActivityCommentByIssueId },
@ -37,6 +38,7 @@ export const IssueActivityCommentRoot: FC<TIssueActivityCommentRoot> = observer(
activityOperations={activityOperations}
ends={index === 0 ? "top" : index === activityComments.length - 1 ? "bottom" : undefined}
showAccessSpecifier={showAccessSpecifier}
disabled={disabled}
/>
) : activityComment.activity_type === "ACTIVITY" ? (
<IssueActivityList

View file

@ -25,10 +25,11 @@ type TIssueCommentCard = {
activityOperations: TActivityOperations;
ends: "top" | "bottom" | undefined;
showAccessSpecifier?: boolean;
disabled?: boolean;
};
export const IssueCommentCard: FC<TIssueCommentCard> = (props) => {
const { workspaceSlug, commentId, activityOperations, ends, showAccessSpecifier = false } = props;
const { workspaceSlug, commentId, activityOperations, ends, showAccessSpecifier = false, disabled = false } = props;
// hooks
const {
comment: { getCommentById },
@ -81,7 +82,7 @@ export const IssueCommentCard: FC<TIssueCommentCard> = (props) => {
commentId={commentId}
quickActions={
<>
{currentUser?.id === comment.actor && (
{!disabled && currentUser?.id === comment.actor && (
<CustomMenu ellipsis>
<CustomMenu.MenuItem onClick={() => setIsEditing(true)} className="flex items-center gap-1">
<Pencil className="h-3 w-3" />
@ -184,6 +185,7 @@ export const IssueCommentCard: FC<TIssueCommentCard> = (props) => {
projectId={comment?.project_detail?.id}
commentId={comment.id}
currentUser={currentUser}
disabled={disabled}
/>
</div>
</>

View file

@ -12,10 +12,11 @@ type TIssueCommentRoot = {
issueId: string;
activityOperations: TActivityOperations;
showAccessSpecifier?: boolean;
disabled?: boolean;
};
export const IssueCommentRoot: FC<TIssueCommentRoot> = observer((props) => {
const { workspaceSlug, issueId, activityOperations, showAccessSpecifier } = props;
const { workspaceSlug, issueId, activityOperations, showAccessSpecifier, disabled } = props;
// hooks
const {
comment: { getCommentsByIssueId },
@ -34,6 +35,7 @@ export const IssueCommentRoot: FC<TIssueCommentRoot> = observer((props) => {
ends={index === 0 ? "top" : index === commentIds.length - 1 ? "bottom" : undefined}
activityOperations={activityOperations}
showAccessSpecifier={showAccessSpecifier}
disabled={disabled}
/>
))}
</div>

View file

@ -14,6 +14,7 @@ type TIssueActivity = {
workspaceSlug: string;
projectId: string;
issueId: string;
disabled?: boolean;
};
type TActivityTabs = "all" | "activity" | "comments";
@ -43,7 +44,7 @@ export type TActivityOperations = {
};
export const IssueActivity: FC<TIssueActivity> = observer((props) => {
const { workspaceSlug, projectId, issueId } = props;
const { workspaceSlug, projectId, issueId, disabled = false } = props;
// hooks
const { createComment, updateComment, removeComment } = useIssueDetail();
const { getProjectById } = useProject();
@ -145,12 +146,15 @@ export const IssueActivity: FC<TIssueActivity> = observer((props) => {
issueId={issueId}
activityOperations={activityOperations}
showAccessSpecifier={project.is_deployed}
disabled={disabled}
/>
<IssueCommentCreate
workspaceSlug={workspaceSlug}
activityOperations={activityOperations}
showAccessSpecifier={project.is_deployed}
/>
{!disabled && (
<IssueCommentCreate
workspaceSlug={workspaceSlug}
activityOperations={activityOperations}
showAccessSpecifier={project.is_deployed}
/>
)}
</div>
) : activityTab === "activity" ? (
<IssueActivityRoot issueId={issueId} />
@ -161,12 +165,15 @@ export const IssueActivity: FC<TIssueActivity> = observer((props) => {
issueId={issueId}
activityOperations={activityOperations}
showAccessSpecifier={project.is_deployed}
disabled={disabled}
/>
<IssueCommentCreate
workspaceSlug={workspaceSlug}
activityOperations={activityOperations}
showAccessSpecifier={project.is_deployed}
/>
{!disabled && (
<IssueCommentCreate
workspaceSlug={workspaceSlug}
activityOperations={activityOperations}
showAccessSpecifier={project.is_deployed}
/>
)}
</div>
)}
</div>