Identities

Searchable, filterable identity table with row selection, bulk actions, and pagination. Built from live Canvas components.

The shape of a list

A list page is a toolbar + a table + a paginator. The toolbar holds search, filters, and bulk actions (which only appear when rows are selected).
Anatomy. PageHeader (title + primary action) -> Toolbar (search, filters, count / bulk-action slot) -> table -> footer (pagination).
Search and filters live on the left of the toolbar; the right slot shows the result count until rows are selected, then swaps to bulk actions. The table fills the middle, pagination anchors the footer, and pressing a row toggles its selection.

Live preview

Everything operates on the same demo data: search combines with the Status and Role filters, pressing rows selects them (swapping the toolbar to bulk actions), Add identity appends a row, and the footer pages the filtered set.
Anatomy. Page header with primary CTA, toolbar (search Input + filter Selects + swapping right slot), selectable DataTable, Pagination footer.

Identities

12 total
12 results
Identity
Email
Role
Status
Last sign-in
rachel.chen@example.com
Admin
Active
2 min ago
ada@example.com
Editor
Active
1 hour ago
kevin@example.com
Viewer
Pending
3 days ago
linus.berg@example.com
Editor
Locked
1 week ago
sofia@example.com
Viewer
Active
4 hours ago
Showing 1–5 of 12

Bulk-action toolbar swap

When rows are selected, the right-hand slot of the toolbar swaps from result count to bulk actions. Same toolbar height, no jank.
The count and the bulk actions share one toolbar slot, so selecting rows never reflows the table below it. Select a row in the live preview above to watch the result count give way to Export and Deactivate; deactivating locks the selected identities, clears the selection, and the count returns.