Data and Feedback Components
Data components
DataTable and Pagination are the foundation for list pages.
For table-heavy pages, use shared table helpers from ~/common/ui/table:
useTableStatefor URL query sync (filters,page,limit,sorting, and row selection).FiltersPanelfor compact, popover-based filter controls.TableChipFilterfor quick toggle filters (status/date presets).TableActionBarfor bulk actions on selected rows.
Typical handler responsibilities:
- Define columns in a dedicated
<feature>.column.tshook. - Maintain sorting/filter/page state with
useTableState. - Query paginated data from
data-access. - Derive client-side filtered rows when filters are not server-driven.
Example columns pattern:
Feedback components
Toasterandtoasterfor success/error notifications.DialogProvider+useDialogfor modal confirmation flows.Drawerfor embedded create/edit workflows.
Keep trigger and display wiring in page files; keep side effects and mutation flows in handlers.