feat: Settings is one page per section down a left rail, Account first, every setting a row; the profile form no longer saves blanks over your name and email (M503 #5595 #5596 #5597)
release / govulncheck (push) Successful in 18s
release / web (push) Successful in 1m45s
release / go (push) Successful in 1m58s
release / integration (push) Successful in 5m39s
release / android (push) Successful in 5m43s
release / Build signed APK (releases and dev) (push) Successful in 5m58s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 26s
release / Verify release artifacts (tag releases only) (push) Skipped

- /settings lands on Account: the Android app, profile, password, signed-in
  devices. Then Playback, Appearance, Notifications, Connections, About.
- Each setting is a row (name, one short line, control at the end) in a
  capped-width column; one-of-N choices are a shared Segmented control.
- Collection and Settings share one SectionRail.
- Connections leads ListenBrainz with a status line: not connected,
  connected and not sending, or sending with the last scrobble's age.
- Notifications prints its column labels once; the digest email's
  settings link points at /settings/notifications.
- #5596: the profile form now loads what is stored and sends only the
  fields that changed. It used to start blank, and the server reads a
  blank as "clear", so one Save wiped the display name and email.
- Recommendation metrics moves to Library › Your listening, and Hidden
  tracks gets a Library tab.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-10 23:34:51 -04:00
co-authored by Claude Opus 5.5
parent c0c0f8a71f
commit c94c09aeae
32 changed files with 1552 additions and 1408 deletions
+8 -6
View File
@@ -119,12 +119,14 @@
}
</script>
<section class="space-y-3 rounded border border-border bg-surface p-4">
<h2 class="text-lg font-semibold">Active sessions</h2>
<p class="text-sm text-text-secondary">
Every device signed in to your account. If you see one you don't recognise — especially
one marked as having moved — sign it out and change your password.
</p>
<!-- Settings › Account's last group (#5595), styled as SettingsGroup is. -->
<section class="space-y-3 rounded-lg border border-border bg-surface px-4 pt-3 pb-4">
<header>
<h2 class="text-base font-medium text-text-primary">Signed-in devices</h2>
<p class="text-xs text-text-secondary">
One you don't recognise? Sign it out and change your password.
</p>
</header>
{#if loadError}
<p class="text-sm text-action-destructive">