fix(modules): permit nested module params + dedupe form ID

Two fixes needed to make the live Investments toggle persist:

- Settings::PreferencesController: `permit(family: { modules: {} })`
  silently dropped all subkeys. Use explicit allowed-keys array
  derived from `Family::AVAILABLE_MODULES`.
- settings/preferences/show.html.erb: the explicit `hidden_field_tag`
  for the off-value collided IDs with DS::Toggle's checkbox; the
  resulting label/input mismatch broke click toggling. Pass `id: nil`
  to the hidden field.

Also includes db/schema.rb regenerated from the new migration, and
adds five screenshots under docs/screenshots/explore-feature-modules/
for the draft PR body.
This commit is contained in:
Guillem Arias
2026-05-22 15:18:53 +02:00
parent 7fdc205f25
commit e740fc973e
8 changed files with 6 additions and 4 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB