Files
astrolabe/src/app/components/InspectorSplitHandle.module.css
T
oleh efb5a9bbe0 Data inspector: input/resolved rows below the chart, with a resizable divider
A collapsible Data panel under the Live Preview and Chart Builder charts shows the rows the chart actually uses, switching between Input (parsed source) and Resolved (post-transform) views read from the live Vega view. Collapsed by default; the open-state and a draggable height divider persist.

Rows come through a new RenderHandle.inspectData() accessor, so no component touches the view: core/result-data picks the most-upstream source and most-downstream result from the compiled dataflow, read lazily. The divider reuses the window-splitter pattern (horizontal variant).

Consolidations: a shared DataTable primitive replaces the inspector's and the builder's duplicate read-only tables; useResizeDrag merges the col/row drag-gesture twins.

Docs: spec 04/06 and arch 05/10 updated; the now-shipped exploration memo removed.
2026-06-18 02:22:03 +03:00

37 lines
940 B
CSS

/*
* Horizontal splitter between the chart and the data inspector. The row-axis
* mirror of ResizeHandle: a 6px-tall full-width hit target with a thin centered
* grip, tracking the design tokens so it reads identically to the pane handles.
*/
.handle {
flex: 0 0 6px;
position: relative;
cursor: row-resize;
background: var(--border);
touch-action: none; /* let pointer drags own the gesture, not scroll */
transition: background var(--dur-fast) var(--ease);
}
.handle:hover,
.handle:focus-visible {
background: var(--accent);
outline: none;
}
/* A short centered grip line (horizontal), so the handle reads as a draggable divider. */
.grip {
position: absolute;
top: 50%;
left: 50%;
width: 24px;
height: 2px;
transform: translate(-50%, -50%);
background: var(--border-strong);
border-radius: var(--radius);
}
.handle:hover .grip,
.handle:focus-visible .grip {
background: var(--accent-contrast);
}