mirror of
https://github.com/we-promise/sure.git
synced 2026-08-04 16:12:14 +00:00
fix(layout): persist sidebar collapse preference across reloads (#2764)
The app-layout Stimulus controller read this.userIdValue when saving
sidebar state but never declared a static values block, so Stimulus
did not bind data-app-layout-user-id-value. this.userIdValue was
undefined, and every toggle PATCHed /users/undefined, which could not
update show_sidebar or show_ai_sidebar. The preference was never
stored, so the layout reset on the next load.
Declare static values = { userId: String }. String is correct for
both UUID and integer ids since the value is only interpolated into
the request URL. The layout already renders the attribute and
UsersController#user_params already permits both fields, so the
update now completes.
Fixes #2473
Co-authored-by: agentloop <agentloop@localhost>
This commit is contained in:
@@ -3,6 +3,7 @@ import { Controller } from "@hotwired/stimulus";
|
||||
// Connects to data-controller="dialog"
|
||||
export default class extends Controller {
|
||||
static targets = ["leftSidebar", "rightSidebar", "mobileSidebar"];
|
||||
static values = { userId: String };
|
||||
static classes = [
|
||||
"expandedSidebar",
|
||||
"collapsedSidebar",
|
||||
|
||||
Reference in New Issue
Block a user