feat(web): read-write configuration from admin UI #124

Merged
forbes merged 1 commits from feat-admin-config-ui into main 2026-02-15 23:12:07 +00:00
Owner

Convert all module settings from read-only to editable fields in the admin settings page.

Now editable:

  • Core: host, port, base_url (read-only flag stays read-only)
  • Schemas: directory, default (count stays read-only)
  • Database: host, port, name, user, password, sslmode (dropdown), max_connections
  • Storage: endpoint, bucket, use_ssl (checkbox), region
  • Auth: local/ldap/oidc sub-sections with enabled checkboxes, connection fields, and secret fields

New components: SelectField (dropdown for sslmode), CheckboxField (boolean toggles for use_ssl, auth enabled flags)

Secret handling: Redacted fields (****) now render as password inputs with •••••••• placeholder — editing replaces the value.

Auth nested keys: Sub-sections (local, ldap, oidc) use nested object payloads so all fields within a section are sent together.

Backend already persists overrides via settings_overrides table and flags restart-required changes (database, storage, server, schemas namespaces). SSE settings.changed event broadcasts to other admin sessions (from #101).

Closes #117

Convert all module settings from read-only to editable fields in the admin settings page. **Now editable:** - **Core:** host, port, base_url (read-only flag stays read-only) - **Schemas:** directory, default (count stays read-only) - **Database:** host, port, name, user, password, sslmode (dropdown), max_connections - **Storage:** endpoint, bucket, use_ssl (checkbox), region - **Auth:** local/ldap/oidc sub-sections with enabled checkboxes, connection fields, and secret fields **New components:** `SelectField` (dropdown for sslmode), `CheckboxField` (boolean toggles for use_ssl, auth enabled flags) **Secret handling:** Redacted fields (`****`) now render as password inputs with `••••••••` placeholder — editing replaces the value. **Auth nested keys:** Sub-sections (local, ldap, oidc) use nested object payloads so all fields within a section are sent together. Backend already persists overrides via `settings_overrides` table and flags restart-required changes (database, storage, server, schemas namespaces). SSE `settings.changed` event broadcasts to other admin sessions (from #101). Closes #117
forbes added 1 commit 2026-02-15 19:34:03 +00:00
Convert all module settings from read-only to editable fields in the
admin settings page:

- Core: host, port, base_url (read-only stays read-only)
- Schemas: directory, default (count stays read-only)
- Database: host, port, name, user, password, sslmode (dropdown),
  max_connections
- Storage: endpoint, bucket, use_ssl (checkbox), region
- Auth: local/ldap/oidc sub-sections with enabled checkboxes,
  connection fields, and secret fields (password input for redacted)

New field components: SelectField (dropdown), CheckboxField (toggle).
Redacted fields now render as password inputs with placeholder.
Auth uses nested key handling to send sub-section objects.

Backend already persists overrides and flags restart-required changes.

Closes #117
forbes merged commit 906277149e into main 2026-02-15 23:12:07 +00:00
forbes deleted branch feat-admin-config-ui 2026-02-15 23:12:08 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kindred/silo#124