Skip to content

Commit 2376b95

Browse files
authored
feat: ability for collapsible sidebar to open if page is active (#353)
1 parent f426bfe commit 2376b95

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/app/components/Sidebar.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,12 +147,17 @@ function SidebarItem(props: {
147147
)
148148

149149
const [collapsed, setCollapsed] = useState(() => {
150-
if (item.link && match) return false
151150
if (!item.items) return false
152151
if (hasActiveChildItem) return false
153152
return Boolean(item.collapsed)
154153
})
155154

155+
useEffect(() => {
156+
if (hasActiveChildItem) {
157+
setCollapsed(false)
158+
}
159+
}, [hasActiveChildItem])
160+
156161
const isCollapsable = item.collapsed !== undefined && item.items !== undefined
157162
const onCollapseInteraction = useCallback((event: KeyboardEvent | MouseEvent) => {
158163
if ('key' in event && event.key !== 'Enter') return

0 commit comments

Comments
 (0)