Adds a new Preact/TSX build alongside the existing app.js (esbuild
entry `main.tsx` → dist/static/main.{js,css}, same jsx/tsconfig shape
swarm-ui already uses) and the first real page slice: Header +
StatusChips, composing the Badge/Dropdown components from the prior
commit's PR. Not wired into index.html yet — app.js keeps rendering
the live page untouched while this fills in component by component
(state polling, the live SSE stream, login flow, inbox/todos, term
input) in follow-up commits on this branch.
StatusChips folds the model/effort pickers and pause into the badge
row itself (each badge IS its own control), replacing the old
overflow-menu-only pickers — the concrete fix the design guide already
names this page as needing. Presentational only for now (props, not
live data) so it's reviewable against sample data before being wired
to /api/state.
Screenshot-verified against the real agent.css/theme.css/colors.css
(headless chromium, sample data) — renders correctly.
Builds + tsc --noEmit clean.
16 lines
368 B
CSS
16 lines
368 B
CSS
/* <StatusChips> layout. Colours all come from Badge/Dropdown's own CSS
|
|
(@hive/shared) — nothing here overrides a base16 slot. */
|
|
.status-chips {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
gap: 0.5em;
|
|
}
|
|
.status-chip-anchor {
|
|
position: relative;
|
|
display: inline-block;
|
|
}
|
|
.status-chips-last-turn {
|
|
font-size: 0.8em;
|
|
color: var(--muted);
|
|
}
|