// <Root> — root of the Preact rewrite. Currently just `Header` +
// `StatusChips` wired to local component state as a first slice (real
// `/api/state` polling + the live SSE stream land in follow-up commits
// on this same PR, per mara's "one pr != one commit" note on the
// issue). Sample values below match the shapes in `types.ts`.
import { useState } from 'preact/hooks';
import { Header } from './components/Header.js';
import { StatusChips } from './components/StatusChips.js';

export function Root() {
  const [model, setModel] = useState('sonnet');
  const [effort, setEffort] = useState('high');
  const [paused, setPaused] = useState(false);

  return (
    <Header label="IRIS" hiveLabel="constellation / pr1ma">
      <StatusChips
        aliveLabel="alive"
        aliveTone="positive"
        stateLabel="idle · 6m 1s"
        stateTone="neutral"
        stateTooltip="turn loop running, no claude invocation in flight"
        model={model}
        availableModels={['haiku', 'sonnet', 'opus']}
        onSelectModel={setModel}
        effort={effort}
        availableEfforts={['low', 'medium', 'high', 'xhigh', 'max']}
        onSelectEffort={setEffort}
        ctxLabel="534k"
        costLabel="$1.6M"
        paused={paused}
        onTogglePause={() => setPaused((p) => !p)}
        lastTurnLabel="last turn 8.4s"
      />
    </Header>
  );
}
