Component gallery

DataTable

The feature layer over Table: sort, search, the filter registry, selection, row menus, column visibility, and pagination, each a standalone hook named in features.

Uncontrolled: features self-own their state

Sort (tri-state carets), search, pagination, an auto checkbox column, and a row menu, all from one prop
Validate batch #129ValidateFay NgPaused4,813P5
Enhance batch #114EnhanceCarmen DiazPaused4,758P5
Extract batch #128ExtractEfe SolFailed4,476P4
Validate batch #113ValidateBen ChoFailed4,421P4
ImageGen batch #127ImageGenDev PatelQueued4,139P3
Showing 1-5 of 42

Filter registry

Per-column filter kinds → key:value chips with disable-toggle + remove. AND across, OR within.
Module
Rows
Extract batch #104ExtractEfe SolPaused1,388P5
Enhance batch #106EnhanceAda ReyesRunning2,062P2
Extract batch #108ExtractCarmen DiazFailed2,736P4
Enhance batch #110EnhanceEfe SolDone3,410P1
Extract batch #112ExtractAda ReyesQueued4,084P3
Enhance batch #114EnhanceCarmen DiazPaused4,758P5
Showing 1-6 of 16

Uncheck a chip to grey it out without losing it; the “Add filter” picker offers every registered column. Match kinds render value chips (Module) or a single select (Status); range kinds get an operator + number/date.

FacetBar

The standing-facets toolbar, the union of both product apps: checkbox dropdowns with counts, a single-select facet behind an all-sentinel, helper tooltips, and applied values as removable chips behind the chips knob
Filter
Module: Extract
1 filter value applied
FilterableCell, the click-to-filter cell:

Model-driven: selection bulk bar + column visibility

Build the model yourself with useDataTable, then compose a custom toolbar off its live state
Columns:

Tick rows to reveal the bulk bar. The header checkbox selects the visible page and shows an indeterminate state for a partial selection.

Extract batch #104ExtractEfe SolPaused1,388P5
Validate batch #109ValidateDev PatelPaused3,073P5
Enhance batch #114EnhanceCarmen DiazPaused4,758P5
ImageGen batch #119ImageGenBen ChoPaused1,443P5
Extract batch #124ExtractAda ReyesPaused3,128P5
Validate batch #129ValidateFay NgPaused4,813P5
Showing 1-6 of 42

URL-sync seam (live)

Both tables share the real qsync adapter: sort or page one and the other follows, and a reload restores both from the URL

The URL adapter mounts client-side.

Selection primitives

The cells DataTable composes, exported for custom tables
SelectAllCell: header checkbox, indeterminate-aware
Brake pads
Air filter
SelectionCheckbox: the raw control, indeterminate shown

RowMenu

The kebab menu a row's trailing cell carries

Styling slots

DataTable's own slots, on top of the core Table slots documented on the Table page
wrapperClassName
the outer toolbar+table+footer column
toolbarClassName
the default toolbar
selectCellClassName
the auto checkbox cell
menuTriggerClassName
the row-menu kebab trigger
filterBarClassName
the auto-rendered FilterBar
@versable-git/ui · all states, both themes