ФУНКЦИИ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: web-доступ к внешним контурам и исправление модалки запроса

This commit is contained in:
DCCONSTRUCTIONS
2026-04-19 00:07:10 +03:00
parent 6d67571b27
commit 3fe3539614
21 changed files with 707 additions and 42 deletions
@@ -25,13 +25,22 @@ type Props = {
workspaceSlug: string;
sourceProjectId: string;
contourRequest: TExternalContourRequest;
hasDirectTargetAccess: boolean;
isSubmitting: TNameDescriptionLoader;
isMobileSidebar: boolean;
setIsMobileSidebar: (value: boolean) => void;
};
export const ExternalContoursIssueActionsHeader = observer(function ExternalContoursIssueActionsHeader(props: Props) {
const { workspaceSlug, sourceProjectId, contourRequest, isSubmitting, isMobileSidebar, setIsMobileSidebar } = props;
const {
workspaceSlug,
sourceProjectId,
contourRequest,
hasDirectTargetAccess,
isSubmitting,
isMobileSidebar,
setIsMobileSidebar,
} = props;
const { t } = useTranslation();
const router = useAppRouter();
const { currentTab, filteredRequestIds } = useProjectExternalContours();
@@ -108,11 +117,13 @@ export const ExternalContoursIssueActionsHeader = observer(function ExternalCont
<Button variant="secondary" size="lg" prependIcon={<LinkIcon className="h-2.5 w-2.5" />} onClick={handleCopyLink}>
{t("external_contours_page.actions.copy")}
</Button>
<ControlLink href={workItemLink} onClick={() => router.push(workItemLink)} target="_self">
<Button variant="secondary" size="lg" prependIcon={<NewTabIcon className="h-2.5 w-2.5" />}>
{t("external_contours_page.actions.open")}
</Button>
</ControlLink>
{hasDirectTargetAccess && (
<ControlLink href={workItemLink} onClick={() => router.push(workItemLink)} target="_self">
<Button variant="secondary" size="lg" prependIcon={<NewTabIcon className="h-2.5 w-2.5" />}>
{t("external_contours_page.actions.open")}
</Button>
</ControlLink>
)}
</div>
</div>
</Row>
@@ -125,11 +136,13 @@ export const ExternalContoursIssueActionsHeader = observer(function ExternalCont
<div className="flex w-full items-center gap-2">
<ExternalContourStatePill request={contourRequest} />
<div className="ml-auto flex items-center gap-2">
<ControlLink href={workItemLink} onClick={() => router.push(workItemLink)} target="_self">
<Button variant="secondary" size="sm">
{t("external_contours_page.actions.open")}
</Button>
</ControlLink>
{hasDirectTargetAccess && (
<ControlLink href={workItemLink} onClick={() => router.push(workItemLink)} target="_self">
<Button variant="secondary" size="sm">
{t("external_contours_page.actions.open")}
</Button>
</ControlLink>
)}
</div>
</div>
</Header>