SPB Git forge
38commits 1branches 0releases
338.7 MBsize
maindefault branch
4 h agolast push
HTML 53.9% TypeScript 44.5% JavaScript 0.6% SQL 0.5%
1.1 KB · 28 lines tsx
Raw Blame History
1"use client";23import { Tab, TabList, TabPanel, Tabs } from "@/components/ui";4import type { TraceResult } from "@/lib/admin-api";5import { DocumentInspectView } from "./document-inspect";6import { ExtractionDebugger } from "./extraction-debugger";7import { useUrlState } from "./use-url-state";89/** Document page: Inspect (registry, versions, raw body, provenance) | Trace (extraction debugger, worker dry run). */10export function DocumentWorkbench({ id, fixture }: { id: string; fixture: TraceResult | null }) {11  const [params, setParams] = useUrlState();12  const tab = params.tab === "trace" || fixture ? "trace" : "inspect";13  return (14    <Tabs value={tab} onValueChange={(v) => setParams({ tab: v === "inspect" ? null : v })}>15      <TabList label="Document views" className="mb-3">16        <Tab value="inspect">Inspect</Tab>17        <Tab value="trace">Trace · extraction debugger</Tab>18      </TabList>19      <TabPanel value="inspect" className="pt-0">20        <DocumentInspectView id={id} />21      </TabPanel>22      <TabPanel value="trace" className="pt-0">23        <ExtractionDebugger id={id} fixture={fixture} />24      </TabPanel>25    </Tabs>26  );27}28