Select
stableDropdown selection with Radix-powered accessible listbox
import { Select } from "@nodus/design-system"Loading demo…
Props
| Prop | Type | Default | Description |
|---|---|---|---|
variant | "default" | "ghost" | "outline" | "default" | Trigger border style |
size | "default" | "sm" | "lg" | "default" | Trigger height and text size |
placeholder | string | — | Placeholder text when no value selected |
optionsreq | Array<{ value: string; label: string }> | — | MultiSelect / SearchableSelect option list |
value | string[] | string | — | Selected value(s) |
onChangereq | (value) => void | — | Selection change handler |
disabled | boolean | false | Disable all interaction |
variantType
"default" | "ghost" | "outline"Default "default"Trigger border style
sizeType
"default" | "sm" | "lg"Default "default"Trigger height and text size
placeholderType
stringDefault —Placeholder text when no value selected
optionsrequiredType
Array<{ value: string; label: string }>Default —MultiSelect / SearchableSelect option list
valueType
string[] | stringDefault —Selected value(s)
onChangerequiredType
(value) => voidDefault —Selection change handler
disabledType
booleanDefault falseDisable all interaction
MobileTouch Target
Select triggers native OS picker on mobile — this is intentional and correct. Ensure the select row is at least 44px tall.
Design Rationale
This component was designed to express:
Explore Related
Was this helpful?