feat(ui): turn the sidebar profile header into an account menu (LC-368) #379
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/lc-368-account-menu"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes LC-368. Part of the LC-364 redesign epic.
What
Turns the static sidebar profile block into the trigger for a discoverable account menu, and collapses the scattered account actions into it. Files:
partials/sidebar_self.html,partials/sidebar.html.hx-get /status/pickerinto the#status-pickerslot, so the status mechanism is unchanged.Accessibility
Follows the
room/notify_dropdown.htmldisclosure pattern and the WAI-ARIA menu-button spec:role=menuwith roving-tabindexmenuitems, ArrowUp/Down + Home/End navigation, a Tab/Shift-Tab focus trap within the open menu, Escape and click-outside to close (focus restored to the trigger).aria-haspopup/aria-expanded/aria-controlswired on the button.partials/sidebar_self.htmlOOB-swaps on profile edit (ws/own_profile_live.html), so the inline script uses the same wired-flag + cleanup-root teardown as notify_dropdown so the document-level click listener does not leak across swaps.Two new i18n keys (
sidebar-account-menu,sidebar-edit-profile) added toenandes. Edit profile deep-links to the existing#settings-sec-profileanchor (LC-345).Testing
./dev/cargo check -p lets-chat-server- clean.just build-css- clean.just testandjust test-saas- both green (incl.i18n_catalog).🤖 Generated with Claude Code