From ece91d6b0746e6cfa43b11390c2b9ef94a57d132 Mon Sep 17 00:00:00 2001 From: Gustavo Bueno Date: Tue, 13 Oct 2026 10:03:51 +0200 Subject: [PATCH] feat: introduce isForcedToUseTemplates for sign (SIGN-75147) --- src/elements/content-sidebar/SidebarNav.js | 4 ++-- src/elements/content-sidebar/SidebarNavSign.tsx | 1 + .../content-sidebar/__tests__/SidebarNav.test.js | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/elements/content-sidebar/SidebarNav.js b/src/elements/content-sidebar/SidebarNav.js index c25e3e40e2..ac24baf613 100644 --- a/src/elements/content-sidebar/SidebarNav.js +++ b/src/elements/content-sidebar/SidebarNav.js @@ -173,7 +173,7 @@ const SidebarNav = ({ routerDisabled, signSidebarProps, }: Props) => { - const { enabled: hasBoxSign } = signSidebarProps || {}; + const { enabled: hasBoxSign, isForcedToUseTemplates } = signSidebarProps || {}; const { disabledTooltip: boxAIDisabledTooltip, showOnlyNavButton: showOnlyBoxAINavButton } = useFeatureConfig('boxai.sidebar'); const { enabled: isPreviewModernizationEnabled } = useFeatureConfig('previewModernization'); @@ -351,7 +351,7 @@ const SidebarNav = ({ {allVisibleTabs} - {hasBoxSign && ( + {hasBoxSign && !isForcedToUseTemplates && (
diff --git a/src/elements/content-sidebar/SidebarNavSign.tsx b/src/elements/content-sidebar/SidebarNavSign.tsx index 5e532ffe75..59a6bb5ca5 100644 --- a/src/elements/content-sidebar/SidebarNavSign.tsx +++ b/src/elements/content-sidebar/SidebarNavSign.tsx @@ -21,6 +21,7 @@ import type { TargetingApi } from '../../features/targeting/types'; export interface SignSidebarProps { blockedReason: string; enabled: boolean; + isForcedToUseTemplates?: boolean; onClick: () => void; onClickSignMyself: () => void; targetingApi?: TargetingApi; diff --git a/src/elements/content-sidebar/__tests__/SidebarNav.test.js b/src/elements/content-sidebar/__tests__/SidebarNav.test.js index 700da37847..b23b06e54f 100644 --- a/src/elements/content-sidebar/__tests__/SidebarNav.test.js +++ b/src/elements/content-sidebar/__tests__/SidebarNav.test.js @@ -211,6 +211,20 @@ describe('elements/content-sidebar/SidebarNav', () => { expect(boxSignSection).toBeInTheDocument(); }); + test('should not render the Box Sign entry point when isForcedToUseTemplates is true', () => { + renderSidebarNav({ + props: { + signSidebarProps: { + enabled: true, + isForcedToUseTemplates: true, + onClick: () => {}, + }, + }, + }); + + expect(screen.queryByRole('button', { name: /sign/i })).not.toBeInTheDocument(); + }); + describe('hasNativeBoxAISidebar and customSidebarPanels interaction', () => { test('should render native Box AI when hasNativeBoxAISidebar is true, ignoring custom boxai tab', () => { const boxAiPanel = createBoxAIPanel({ title: 'Custom Box AI' });