feat(dashboard): the sidebar keeps its open groups and can be hidden

The menu's groups stay open or closed from page to page
(localStorage "dash.sidebar", this browser only), applied by an inline
script right after the menu so the first paint already shows them. The
group of the current page opens and stays open until it is closed. A
new top bar button hides the menu on wide screens; that choice is
applied in <head>, also before the first paint.

Check: open and close a few menu groups, switch pages and reload; the
groups stay as left, with no flicker. On a wide window the menu button
left of the user menu hides the menu, and it stays hidden across pages
and reloads. Narrow screens: the Menu button still slides the menu out.
Test: SidebarStateJs (ctest, needs node).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aaron Kimbrell
2026-09-29 01:14:13 -05:00
parent da90a36be6
commit f13d15b4dd
6 changed files with 178 additions and 1 deletions

View File

@@ -366,6 +366,9 @@ unless you're typing, in which case they offer a refresh instead.
View choices you make on the pages (show staff, filters, the 3D viewer's switches, ...) are saved to your account, so
they follow you to other browsers.
The menu's groups stay open or closed from page to page (kept in this browser): the group of the page you're on opens
and stays open until you close it. On wide screens the &#9776; button in the top bar hides the menu, and it stays hidden until you show it again.
On narrow screens the menu folds into a **Menu** button, and the moderation queues and online players show as cards
with their buttons, so you can approve names or kick someone from a phone.