From e1f7407b93d62410da4f277f318973fc03d70ecc Mon Sep 17 00:00:00 2001 From: rebelchris Date: Wed, 9 Sep 2026 11:41:08 +0000 Subject: [PATCH] fix(sidebar): hide collapsed dividers for empty sections --- .../shared/src/components/sidebar/Section.tsx | 10 ++- .../src/components/sidebar/Sidebar.spec.tsx | 77 ++++++++++++++++++- 2 files changed, 83 insertions(+), 4 deletions(-) diff --git a/packages/shared/src/components/sidebar/Section.tsx b/packages/shared/src/components/sidebar/Section.tsx index 258fa22e4e5..d6195129451 100644 --- a/packages/shared/src/components/sidebar/Section.tsx +++ b/packages/shared/src/components/sidebar/Section.tsx @@ -62,6 +62,10 @@ export function Section({ // persisted `flag` (e.g. the settings panel groups) — otherwise the // collapse never visibly happens. const [isVisible, setIsVisible] = useState(initialIsVisible); + const shouldRenderItems = !title || isVisible || shouldAlwaysBeVisible; + const hasVisibleItems = items.some((item) => !item.isSeparator); + const shouldRenderHeader = + !!title && (sidebarExpanded || (shouldRenderItems && hasVisibleItems)); const toggleFlag = () => { const nextIsVisible = !isVisible; @@ -75,9 +79,9 @@ export function Section({ return ( - {title && ( + {shouldRenderHeader && ( - {/* Divider shown when a collapsible (titled) section is collapsed */} + {/* Divider shown when a visible titled section is collapsed */}