docs: remove historic framing, state what JobqGraph is now

This commit is contained in:
iris 2026-08-16 15:02:57 +02:00 committed by mara
commit ecf01f5e87
3 changed files with 14 additions and 18 deletions

View file

@ -1,18 +1,16 @@
// JobqGraph.js — <JobqGraph>, a Preact component rendering any
// hive_jobq graph from the wire shape GET /api/jobq/graph serves (any
// endpoint serving `Vec<hive_jobq_wire::GraphNode>` works — see
// hive-jobq-wire's README). Preact port of the former shadow-DOM
// `<hive-jobq-graph>` custom element, same contract (indented state
// tree, `payload.label` verbatim, `payload.data` as a generic key/value
// list) — light DOM now, since both the dashboard (no JSX pipeline) and
// swarm-ui (JSX) consume it. Written with plain `h()` calls, not JSX, so
// one file compiles unmodified under both consumers' esbuild configs.
// hive-jobq-wire's README). Renders an indented state tree:
// `payload.label` verbatim, `payload.data` as a generic key/value list.
// Light DOM, since both the dashboard (no JSX pipeline) and swarm-ui
// (JSX) consume it. Written with plain `h()` calls, not JSX, so one file
// compiles unmodified under both consumers' esbuild configs.
//
// `cancellable` adds a per-node cancel button calling `onCancel(id)`
// directly (a plain prop, not a DOM CustomEvent — no shadow boundary to
// cross anymore). `onUpdate(nodes)` fires after every fetch, for a host
// needing the raw list (a count badge, a live-log panel) without its own
// parallel fetch.
// directly (a plain prop). `onUpdate(nodes)` fires after every fetch,
// for a host needing the raw list (a count badge, a live-log panel)
// without its own parallel fetch.
//
// Two ways to use this: JSX (swarm-ui) — `<JobqGraph endpoint="..."
// cancellable onCancel={...} onUpdate={...} />`, a normal component. Or