Commit Graph

12 Commits

Author SHA1 Message Date
Joseph Doherty 9e243493fb ui: Central UI density/consistency sweep + Theme 0.4.1
Applies the family-wide admin-UI cleanup playbook to the Central UI so the
Blazor surfaces stop diverging from the shared kit: buttons are grouped rather
than individually sized, long cell values are contained instead of widening
tables, and hard-coded colours give way to theme tokens.

The headline fix is that MainLayout passed Accent="#2f5fd0" to ThemeShell,
which the kit emits as an inline style on the shell root. Being a descendant of
<html>, it beat the [data-bs-theme="dark"] override for the entire app, so the
dark accent had never rendered. Declaring --accent in site.css :root instead
lets both schemes resolve; light is unchanged because the value already matched
the kit's light default.

Theme pins to 0.4.1, which upstreams the local .btn sizing block verbatim, so
that block is deleted here rather than duplicated. Verified byte-identical
before removal; the repo now declares no --bs-btn-* anywhere.

NOT purely cosmetic, contrary to the sweep's stated scope: four detail-modal
surfaces (NotificationReport, ConfigurationAuditLog, ParkedMessages,
SiteCallsReport) were additionally refactored from holding the selected record
to holding its id and re-resolving from the current page each render, with the
resolve doubling as the visibility gate. A background refresh that drops the
row now closes the modal instead of showing a stale snapshot. This is a
behaviour change and is called out rather than buried: a full-suite run turned
up one intermittent CentralUI failure, CloseButton_DismissesModal, whose stack
(GetRequiredEventBindingEntry during DispatchEventAsync) indicates the handler
was disposed between render and click — a window the previous field-held record
made structurally impossible. Treat the modal lifecycle here as unreviewed.

Build 0/0; suite green apart from that one intermittent failure.
2026-08-11 05:50:12 -04:00
Joseph Doherty 0efbb66bc3 test(playwright): LDAP missing-field + duplicate-group edge cases (Wave 4) 2026-06-07 03:50:05 -04:00
Joseph Doherty c6b682c82f test(playwright): make ApiKey name-commit deterministic under full-suite load (flake fix) 2026-06-06 16:06:24 -04:00
Joseph Doherty 8f63ef08eb test(playwright): flush ApiKey name @bind before Save to destabilize validation flake 2026-06-06 15:50:33 -04:00
Joseph Doherty 0700777e2f test(e2e): guard ApiSurfaceFixture partial-init delete + seal TransportImportTests (final review nits) 2026-06-06 12:37:21 -04:00
Joseph Doherty 79586ca5ad test(e2e): row-scope API-key kebab dropdown selectors + visibility-gate items (review fix) 2026-06-06 12:16:50 -04:00
Joseph Doherty 73b213442f test(e2e): tighten API-key validation locator to div.text-danger.small (review precision fix) 2026-06-06 12:10:12 -04:00
Joseph Doherty 89231e3245 test(e2e): API-key enable/disable badge transition + delete-with-confirm removes row 2026-06-06 12:08:53 -04:00
Joseph Doherty 9fe3ac30c9 test(e2e): API-key create→token reveal + name/method validation edges 2026-06-06 12:06:09 -04:00
Joseph Doherty 84edf5a134 test(e2e): add ApiSurfaceFixture (inbound api-method for API-key form checkboxes) 2026-06-06 12:00:42 -04:00
Joseph Doherty 3d9ef0a477 test(e2e): harden LDAP teardown + tighten nav/health selectors (review fixes) 2026-06-05 10:19:48 -04:00
Joseph Doherty 12bf08f64a test(e2e): cover LDAP mapping create/edit/delete round-trip 2026-06-05 10:09:15 -04:00