2.4 KiB
UX second pass — batched council review
A running parking lot of small UX / interaction decisions deferred for a batched
/council review, rather than gating each one the
moment it surfaces. Append quirks here as they come up; resolve them together in one pass,
record the resolution into the contract (docs/architecture/09+10 and the relevant
docs/spec/), then delete the row.
Open
-
Chart theme picker placement & header crowding (
LivePreview.tsx— ChartThemeControl). The picker sits in the preview header because nesting a SelectControl inside the PreviewSettings popover is impossible today (one-open-popover registry: the select would close/unmount its own parent). Header now holds Fit + theme + export + gear; at narrow pane widths the long trigger labels ("FiveThirtyEight", "Urban Institute") may crowd it. Council questions: does the picker deserve header prominence (the "transform your chart" showcase) or settings-cluster placement (a persistent global pref); should the popover registry learn nesting; 16 flat options — group presets under a heading? -
"Edit themes…" action row inside the value picker (
LivePreview.tsx— ChartThemeControl). A non-value action lives inside a single-select disclosure (the VS Code theme-picker pattern), placed after the custom-themes block and before the preset roster (first-use feedback: at the very bottom it was invisible without scrolling). Council questions: should an action be visually separated from the values (divider, distinct styling); is a mid-list row that opens a modal instead of selecting surprising to AT users? -
Theme Builder config editor is a plain textarea (
ThemeBuilderModal.tsx). Monaco (with the Vega-Lite config schema for completions) would match the main editor but is heavy inside a modal and untested in that mounting. Revisit whether the builder deserves a Monaco instance, and whether the gallery's canvas charts need text alternatives beyond the per-card captions.
Deferred (not design debts, revisit on demand)
- Drag-and-drop field assignment — chips are click/keyboard-first by design; drag would be a progressive enhancement on top of the chooser model, not a replacement. Revisit if real usage asks for it (likely alongside Phase 4 faceting, where drag-to-shelf reads most naturally).