Founding price: $35, then $79.99 after 23:59 UTC on 4 November, then $79.99
Get ProA select whose options are a tree, with search that opens the matching branches, single or multiple choice and a combobox popup that follows the ARIA pattern.
This item has no props to tune. Use the lens above to change theme, density, direction and more.
Use it for a form field that picks a node from a hierarchy: a category, region, team or folder.
Do not use it for a short flat list (use a select) or when people must see the whole tree at once (use tree-view).
It uses popover, input, tree-view, checkbox-tree, filterable-tree, which the CLI installs for you.
| Prop | Type | Default | Description |
|---|---|---|---|
nodes | TreeNode[] | - | The options. |
value / defaultValue / onValueChange | string[] | [] | Selected ids. One at most unless multiple. |
multiple | boolean | false | Use checkboxes; a branch selects its leaves. |
selectable | "any" | "leaf" | "any" | Single mode: whether a branch can be chosen. |
placeholder / searchPlaceholder / emptyText | string | - | Texts. |
defaultExpanded | string[] | [] | Branches open before a search. |
aria-label / aria-labelledby | string | - | Names the button. |
aria-describedby / aria-invalid / aria-required | - | - | Helper text, error state and required state from a form field. |
selectable="leaf" a branch only opens and closes.tree-view; Enter or Space chooses (single) or checks (multiple).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.
The component ships with a Testing Library test (tree-select.test.tsx) that covers its keyboard paths, roles and states.