[WEB-1691] fix: update ControlLink default target to _blank to avoid unwanted N-progress trigger. (#4927)

This commit is contained in:
Prateek Shourya 2024-06-25 12:32:51 +05:30 committed by GitHub
parent 0ce17ff212
commit 981a8e93ba
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 5 additions and 9 deletions

View file

@ -11,7 +11,7 @@ export type TControlLink = React.AnchorHTMLAttributes<HTMLAnchorElement> & {
};
export const ControlLink = React.forwardRef<HTMLAnchorElement, TControlLink>((props, ref) => {
const { href, onClick, children, target = "_self", disabled = false, className, draggable = false, ...rest } = props;
const { href, onClick, children, target = "_blank", disabled = false, className, draggable = false, ...rest } = props;
const LEFT_CLICK_EVENT_CODE = 0;
const handleOnClick = (event: React.MouseEvent<HTMLAnchorElement, MouseEvent>) => {

View file

@ -45,7 +45,7 @@ export const ListItem: FC<IListItemProps> = (props) => {
return (
<div ref={parentRef} className="relative">
<ControlLink href={itemLink} onClick={handleControlLinkClick} disabled={disableLink}>
<ControlLink href={itemLink} target="_self" onClick={handleControlLinkClick} disabled={disableLink}>
<div
className={cn(
"group h-24 sm:h-[52px] flex w-full flex-col items-center justify-between gap-3 sm:gap-5 px-6 py-4 sm:py-0 text-sm border-b border-custom-border-200 bg-custom-background-100 hover:bg-custom-background-90 sm:flex-row",

View file

@ -301,6 +301,7 @@ export const InboxIssueActionsHeader: FC<TInboxIssueActionsHeader> = observer((p
onClick={() =>
router.push(`/${workspaceSlug}/projects/${issue?.project_id}/issues/${currentInboxIssueId}`)
}
target="_self"
>
<Button variant="neutral-primary" prependIcon={<ExternalLink className="h-2.5 w-2.5" />} size="sm">
Open issue

View file

@ -173,6 +173,7 @@ export const InboxIssueContentProperties: React.FC<Props> = observer((props) =>
onClick={() => {
router.push(`/${workspaceSlug}/projects/${projectId}/issues/${duplicateIssueDetails?.id}`);
}}
target="_self"
>
<Tooltip tooltipContent={`${duplicateIssueDetails?.name}`}>
<span className="flex items-center gap-1 cursor-pointer text-xs rounded px-1.5 py-1 pb-0.5 bg-custom-background-80 text-custom-text-200">

View file

@ -71,7 +71,6 @@ export const CalendarIssueBlock = observer(
<ControlLink
id={`issue-${issue.id}`}
href={`/${workspaceSlug?.toString()}/projects/${projectId?.toString()}/issues/${issue.id}`}
target="_blank"
onClick={() => handleIssuePeekOverview(issue)}
className="block w-full text-sm text-custom-text-100 rounded border-b md:border-[1px] border-custom-border-200 hover:border-custom-border-400"
disabled={!!issue?.tempId || isMobile}

View file

@ -99,7 +99,6 @@ export const IssueGanttSidebarBlock: React.FC<Props> = observer((props) => {
return (
<ControlLink
href={`/${workspaceSlug}/projects/${issueDetails?.project_id}/issues/${issueDetails?.id}`}
target="_blank"
onClick={handleIssuePeekOverview}
className="line-clamp-1 w-full cursor-pointer text-sm text-custom-text-100"
disabled={!!issueDetails?.tempId}

View file

@ -217,7 +217,6 @@ export const KanbanIssueBlock: React.FC<IssueBlockProps> = observer((props) => {
{ "border border-custom-primary-70 hover:border-custom-primary-70": getIsIssuePeeked(issue.id) },
{ "bg-custom-background-80 z-[100]": isCurrentBlockDragging }
)}
target="_blank"
onClick={() => handleIssuePeekOverview(issue)}
disabled={!!issue?.tempId || isMobile}
>

View file

@ -229,8 +229,7 @@ export const IssueBlock = observer((props: IssueBlockProps) => {
id={`issue-${issue.id}`}
href={`/${workspaceSlug}/projects/${issue.project_id}/${issue.archived_at ? "archives/" : ""}issues/${
issue.id
}`}
target="_blank"
}`}
onClick={() => handleIssuePeekOverview(issue)}
className="w-full truncate cursor-pointer text-sm text-custom-text-100"
disabled={!!issue?.tempId}

View file

@ -242,7 +242,6 @@ const IssueRowDetails = observer((props: IssueRowDetailsProps) => {
>
<ControlLink
href={`/${workspaceSlug}/projects/${issueDetail.project_id}/issues/${issueId}`}
target="_blank"
onClick={() => handleIssuePeekOverview(issueDetail)}
className={cn(
"group clickable cursor-pointer h-11 w-[28rem] flex items-center text-sm after:absolute border-r-[0.5px] z-10 border-custom-border-200 bg-transparent group-[.selected-issue-row]:bg-custom-primary-100/5 group-[.selected-issue-row]:hover:bg-custom-primary-100/10",

View file

@ -131,7 +131,6 @@ export const IssueListItem: React.FC<ISubIssues> = observer((props) => {
<ControlLink
id={`issue-${issue.id}`}
href={`/${workspaceSlug}/projects/${issue.project_id}/issues/${issue.id}`}
target="_blank"
onClick={() => handleIssuePeekOverview(issue)}
className="w-full line-clamp-1 cursor-pointer text-sm text-custom-text-100"
>