- Data table · Table
The admin's main list: a white card with a muted 36px header row and 44px body rows in Plex 13px, typed columns (product, cloth, status, money, date, code, version) and a row menu. Wide tables freeze their first columns and scroll sideways. - Sortable header · Table
Header cells that sort on click: a quiet up-down icon at 45% until hovered, then an arrow for the active direction. One sort at a time. - Filter bar · Input, Popover, ToggleGroup
The toolbar above a table: search (300px), status filter chips with counts, a Filters popover for the rest, and view options on the right. Counts always add up to the total. - Saved views · Tabs
Named filter sets as a tab-like strip above the table (All, Needs cloth, Draft this week…), with counts and a dot when the current view has unsaved changes. - Density · ToggleGroup
Comfortable (44px rows) or compact (36px) for long lists like the audit log. A small segmented control in the table toolbar; the phone has no density (lists). - Sticky header · Table
On long tables (the audit log) the header row sticks under the top bar while the body scrolls, and the toolbar sticks above it. Needs the kit v2 `overflow:clip` shell so sticky works on a real page. - Row and row actions · DropdownMenu, Table
Each row opens its record on click; the end of the row holds a quiet Edit (opens quick edit) and the ⋯ menu for the rest. Rows can expand to show detail. - Bulk select and bulk bar · Checkbox, Table
Select rows with checkboxes (header tick = all on the page, indeterminate when some); a navy bar rises at the bottom with the count and the bulk actions. Not-wired actions are shown as such. - Pagination · Pagination
Under the table: "1–25 of 214", rows per page, and previous / page numbers / next. The phone uses Load more at the end of the list. - Column types · Table
The typed cells every table reuses: image + product, cloth swatch + code, status chip, money (multi-currency), date, code / handle, version, ERP state with a reason. - Table states · Table, Skeleton
Empty, no results, loading skeleton rows, error, partial and not wired: the table frame and toolbar stay; only the body changes.