Back to Dropdown
Dropdown

Controlled

Value driven from external buttons.

Selected: medium

API

PropTypeDefaultDescription
options*{ value: string; label: string; disabled?: boolean }[]The list of selectable options.
value / defaultValuestring | string[]Controlled / uncontrolled selection (array when `multiple`).
onValueChange(value: string | string[], option?: DropdownOption | DropdownOption[] | null) => voidFires on selection change with resolved option object(s).
multiplebooleanfalseAllow selecting more than one option.
filter / searchablebooleanfalseEnables filtering — single mode filters via trigger input; multi mode shows a panel filter.
filterAtBeginningbooleanfalseMatch options by prefix instead of contains.
onFilterChange(text: string) => voidFires when the filter text changes.
clearablebooleanShows a clear-selection affordance in the trigger.
loadingbooleanShows a spinner and disables interaction.
hideOnScrollbooleanCloses the menu when a scroll parent moves.
dropdownHeight / dropdownWidthnumber | stringOverride list max-height or menu width.
placeholder / searchPlaceholderstringCopy for the trigger and search field.
emptyTextstringNo matching options.Copy shown when no options match the current filter.
fullWidthbooleantrueStretch the trigger and menu to the container width.
size"sm" | "md" | "lg"mdTrigger height and text scale.
disabledbooleanDisables the trigger.
showDisabledIconbooleanShows a lock icon when disabled.
onClear() => voidFires after the selection is cleared.
classNamestringMerged onto the combobox trigger.
contentClassNamestringMerged onto the popover content panel.
onOpenChange(open: boolean) => voidFires when the popover opens or closes.
View full API on Dropdown

More Dropdown examples