Gloss UIv4.4
Architecture
Style Guide
Primitives
Input
TextNumberTextareaSelectCheckboxRadioToggle
Output7
Actions4
Forms2
Dashboard10
Composites
Compositions
Planning
Applications

Prototypes

Gloss UIv4.4
Architecture
Style Guide
Primitives
Input
TextNumberTextareaSelectCheckboxRadioToggle
Output7
Actions4
Forms2
Dashboard10
Composites
Compositions
Planning
Applications

Prototypes

Select

Advanced select component with support for rich content, multi-line options, icons, search, multi-select, and custom renderers. Replaces the basic Dropdown for complex use cases.

Select States
Default
Success
Error
Disabled
Default
Selected

Physics: Select uses convex shadows creating a raised, pressable appearance. On hover, the component lifts slightly with enhanced shadow. On open (focus), a halo appears around the trigger while the dropdown menu floats above with its own shadow layer.

Select an option from the dropdown
Current State: default

Best Practices

Do

Use searchable for lists with 7+ options
Choose the current account status
Provide labels and helper text for context

Don't

Don't use Select for 2-3 options—use Radio buttons instead
Don't omit labels—they're essential for accessibility

Examples

Simple String Options

Rich Content with Icons

Options can contain any React content including icons, badges, and formatted text.

Multi-line Options

Support for variable height options with multiple lines.

Searchable Select

Enable search filtering for long option lists. Users can type to filter options.

Multi-Select

Allow selecting multiple options. Selected items display as chips.

Props Reference

PropTypeDefaultDescription
optionsSelectOption[]requiredArray of options with value, label, and optional triggerLabel
valueT | T[]-Currently selected value(s)
onChange(value, option) => void-Selection change callback
placeholderReactNode'Select...'Placeholder text when nothing selected
variant'default' | 'error' | 'success''default'Visual variant styling
size'sm' | 'md' | 'lg''md'Size variant
disabledbooleanfalseDisabled state
clearablebooleanfalseShow clear button when value selected
multiplebooleanfalseEnable multi-select mode
multiDisplayMode'chips' | 'count' | 'text''chips'How to display multiple selections
searchablebooleanfalseEnable search/filter in dropdown
searchPlaceholderstring'Search...'Placeholder for search input
creatablebooleanfalseAllow creating new options
loadingbooleanfalseShow loading state
renderTrigger(props) => ReactNode-Custom trigger renderer for full control
renderOption(props) => ReactNode-Custom option renderer for full control