fix: allow collapsing a SideNav menu when it is not active

It should be possible to collapse a parent item regardless of whether
or not it is the currently active item.  Prior to this fix, clicking
on a parent item's "fold" icon was ignored unless the item was the
currently active one.  With this fix, the parent node and its children
will be collapsed, as expected.
This commit is contained in:
David Mosberger-Tang 2024-12-19 09:49:55 -07:00
parent 2d461f41a9
commit b5c5436fac

View File

@ -38,8 +38,12 @@ export class SideMenu extends React.Component<{ menu: MenuStore; className?: str
} }
activate = (item: IMenuItem) => { activate = (item: IMenuItem) => {
if (item && item.active && this.context.menuToggle) { if (item && this.context.menuToggle) {
return item.expanded ? item.collapse() : item.expand(); if (item.expanded) {
item.collapse();
return;
}
if (item.active) item.expand();
} }
this.props.menu.activateAndScroll(item, true); this.props.menu.activateAndScroll(item, true);
setTimeout(() => { setTimeout(() => {