Select
A custom, fully-styled single-select dropdown, not a native <select>.
Built as a real listbox rather than wrapping the native element, since a native dropdown renders an OS-level popup that can't be styled to match the design.
Select a country
Error state
Select an option
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| options | { label: string; value: string; disabled?: boolean }[] | The list of selectable options. | |
| label | string | Field label. | |
| description | string | Help text under the field. | |
| error | string | Sets the error state and shows this message. | |
| size | 'sm' | 'md' | 'lg' | 'md' | Field height. |
| value | string | Controlled selected value. | |
| defaultValue | string | Uncontrolled initial value. | |
| onChange | (value: string) => void | Fires with the new value on selection. | |
| disabled | boolean | false | Disables the field. |