Select
Carbon-spec form-control select. Wraps Radix Select for ARIA and keyboard. Carbon's surrounding label / helper-text / state structure applied via a top-level wrapper component.
Live playground
Edit the JSX below — preview updates instantly. Switch brand × tone in the toolbar to see the same component re-themed in place.
Edit JSX — preview updates livereact-live
import { Select, SelectContent, SelectGroup, SelectItem } from "@avala/design"; <Select> <SelectContent /> <SelectGroup /> <SelectItem /> </Select>
All variants
The Storybook stories file rendered as an iframe — every variant, every size, every state, baselined for visual regression.
primitives-select--defaultOpen in Storybook →
When to use
- Single-choice form input with > 7 options where inline radios stop scaling.
- Form rows that want Carbon's label / helper / error scaffolding ("Country", "Project").
When not to use
- Free-text or filterable lists → use the
ComboBoxpattern. - Multi-select → use the
MultiSelectpattern. - Action menus (logout / settings) → use `DropdownMenu`. ARIA semantics differ.
- Tab-style content switching → use `Tabs`.