Components
Multi Select
A multi-value dropdown built on Popover + Checkbox — a real checkbox per option, not a custom listbox.
Selecting a few of many options — the trigger shows the selected label(s) while there are few, then
collapses to "N selected" past maxDisplay. For a single choice, reach for Select instead.
Props
Prop
Type
Accessibility
- Each option is a real
<Checkbox>inside arole="group", notrole="option"inside a listbox — a screen reader announces each one's checked state directly, which a fully custom listbox role would have to reimplement by hand. - Pass
aria-label(oraria-labelledby, if a visible label already exists) — the trigger has no visible label of its own beyond the collapsed summary text.
Do / Don't
- Do keep
value/onValueChangecontrolled from the consumer — this component holds no selection state of its own, so it composes cleanly with a filter panel's existing state or a URL search param. - Don't use this for a small, fixed either/or choice — a
SegmentedControlor a plainSelectreads faster when there's no real "select several" need.