From 11aeb1557ad64932d72e7f9394617ef0fab51b7e Mon Sep 17 00:00:00 2001 From: Mihir <82092317+Jimmycutie@users.noreply.github.com> Date: Wed, 28 Aug 2024 19:45:51 +0530 Subject: [PATCH 1/3] chore: added copy button for intake issues --- .../inbox/content/inbox-issue-header.tsx | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/web/core/components/inbox/content/inbox-issue-header.tsx b/web/core/components/inbox/content/inbox-issue-header.tsx index 6384b4e9b8b..ce2221588b1 100644 --- a/web/core/components/inbox/content/inbox-issue-header.tsx +++ b/web/core/components/inbox/content/inbox-issue-header.tsx @@ -13,6 +13,7 @@ import { Link, Trash2, MoveRight, + Copy } from "lucide-react"; import { Button, ControlLink, CustomMenu, TOAST_TYPE, setToast } from "@plane/ui"; // components @@ -93,6 +94,7 @@ export const InboxIssueActionsHeader: FC = observer((p const currentInboxIssueId = inboxIssue?.issue?.id; const issueLink = `${workspaceSlug}/projects/${issue?.project_id}/issues/${currentInboxIssueId}`; + const intakeIssueLink = `${workspaceSlug}/projects/${issue?.project_id}/inbox/?currentTab=${currentTab}&inboxIssueId=${currentInboxIssueId}`; const redirectIssue = (): string | undefined => { let nextOrPreviousIssueId: string | undefined = undefined; @@ -166,6 +168,15 @@ export const InboxIssueActionsHeader: FC = observer((p }) ); + const handleCopyIntakeIssueLink = () => + copyUrlToClipboard(intakeIssueLink).then(() => + setToast({ + type: TOAST_TYPE.SUCCESS, + title: "Link copied", + message: "Issue link copied to clipboard", + }) + ); + const currentIssueIndex = filteredInboxIssueIds.findIndex((issueId) => issueId === currentInboxIssueId) ?? 0; const handleInboxIssueNavigation = useCallback( @@ -362,6 +373,12 @@ export const InboxIssueActionsHeader: FC = observer((p )} + +
+ + Copy +
+
)} From 16e2d7ba96cb4bca6430f607af99aac31e86294f Mon Sep 17 00:00:00 2001 From: Mihir <82092317+Jimmycutie@users.noreply.github.com> Date: Thu, 29 Aug 2024 14:54:44 +0530 Subject: [PATCH 2/3] Updated button UX Updated button UX and handleCopyIssue function --- .../inbox/content/inbox-issue-header.tsx | 37 ++++++++++--------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/web/core/components/inbox/content/inbox-issue-header.tsx b/web/core/components/inbox/content/inbox-issue-header.tsx index ce2221588b1..4f67f77f541 100644 --- a/web/core/components/inbox/content/inbox-issue-header.tsx +++ b/web/core/components/inbox/content/inbox-issue-header.tsx @@ -159,8 +159,8 @@ export const InboxIssueActionsHeader: FC = observer((p } }; - const handleCopyIssueLink = () => - copyUrlToClipboard(issueLink).then(() => + const handleCopyIssueLink = (path: string) => + copyUrlToClipboard(path).then(() => setToast({ type: TOAST_TYPE.SUCCESS, title: "Link copied", @@ -168,14 +168,14 @@ export const InboxIssueActionsHeader: FC = observer((p }) ); - const handleCopyIntakeIssueLink = () => - copyUrlToClipboard(intakeIssueLink).then(() => - setToast({ - type: TOAST_TYPE.SUCCESS, - title: "Link copied", - message: "Issue link copied to clipboard", - }) - ); + // const handleCopyIntakeIssueLink = () => + // copyUrlToClipboard(intakeIssueLink).then(() => + // setToast({ + // type: TOAST_TYPE.SUCCESS, + // title: "Link copied", + // message: "Issue link copied to clipboard", + // }) + // ); const currentIssueIndex = filteredInboxIssueIds.findIndex((issueId) => issueId === currentInboxIssueId) ?? 0; @@ -327,7 +327,7 @@ export const InboxIssueActionsHeader: FC = observer((p variant="neutral-primary" prependIcon={} size="sm" - onClick={handleCopyIssueLink} + onClick={() => handleCopyIssueLink(issueLink)} > Copy issue link @@ -365,6 +365,12 @@ export const InboxIssueActionsHeader: FC = observer((p )} + handleCopyIssueLink(intakeIssueLink)}> +
+ + Copy issue link +
+
{canDelete && ( setDeleteIssueModal(true)}>
@@ -373,12 +379,7 @@ export const InboxIssueActionsHeader: FC = observer((p
)} - -
- - Copy -
-
+ )} @@ -391,7 +392,7 @@ export const InboxIssueActionsHeader: FC = observer((p handleCopyIssueLink(issueLink)} setAcceptIssueModal={setAcceptIssueModal} setDeclineIssueModal={setDeclineIssueModal} handleIssueSnoozeAction={handleIssueSnoozeAction} From f53306ef2d1752c5d94cc9cc3aaa428325c7c198 Mon Sep 17 00:00:00 2001 From: Mihir <82092317+Jimmycutie@users.noreply.github.com> Date: Thu, 29 Aug 2024 15:03:11 +0530 Subject: [PATCH 3/3] Removed commented code --- web/core/components/inbox/content/inbox-issue-header.tsx | 9 --------- 1 file changed, 9 deletions(-) diff --git a/web/core/components/inbox/content/inbox-issue-header.tsx b/web/core/components/inbox/content/inbox-issue-header.tsx index 4f67f77f541..6a7978bd403 100644 --- a/web/core/components/inbox/content/inbox-issue-header.tsx +++ b/web/core/components/inbox/content/inbox-issue-header.tsx @@ -168,15 +168,6 @@ export const InboxIssueActionsHeader: FC = observer((p }) ); - // const handleCopyIntakeIssueLink = () => - // copyUrlToClipboard(intakeIssueLink).then(() => - // setToast({ - // type: TOAST_TYPE.SUCCESS, - // title: "Link copied", - // message: "Issue link copied to clipboard", - // }) - // ); - const currentIssueIndex = filteredInboxIssueIds.findIndex((issueId) => issueId === currentInboxIssueId) ?? 0; const handleInboxIssueNavigation = useCallback(