Founding price: $35, then $79.99 after 23:59 UTC on 4 November, then $79.99
Get ProA tree of checkboxes where a branch is checked, unchecked or partly checked from its leaves, with full keyboard support.
This item has no props to tune. Use the lens above to change theme, density, direction and more.
Use it to grant permissions, choose categories, pick files to include, or filter by nested facets.
Do not use it when one choice is enough (use tree-view or tree-select). Without nesting, a plain checkbox group is simpler.
It uses tree-view, which the CLI installs for you.
| Prop | Type | Default | Description |
|---|---|---|---|
nodes | TreeNode[] | - | The tree. |
checked / defaultChecked / onCheckedChange | string[] | [] | Ids of the checked leaves (every checked node when cascade is false). |
cascade | boolean | true | A branch follows its leaves and toggles them. |
renderLabel / renderTrailing | (row, state) => ReactNode | - | Customise the row. state is true, false or "mixed". |
... | - | - | All TreeView props except selection. |
tree-view (arrows, Home, End, typeahead, *).Motion respects prefers-reduced-motion: the only animation is the loading spinner, which is switched off. Layout uses logical properties, so the component works in right-to-left languages.
CheckMark is exported for rows you draw yourself.
The component ships with a Testing Library test (checkbox-tree.test.tsx) that covers its keyboard paths, roles and states.