Skip to Content

Select

A customizable dropdown select component with support for icons, avatars, status indicators, and search.

Import

import { Select, SelectOption } from "@raydenui/ui";

Usage

Basic

<Select placeholder="Select an option"> <SelectOption value="option1">Option 1</SelectOption> <SelectOption value="option2">Option 2</SelectOption> <SelectOption value="option3">Option 3</SelectOption> </Select>

With Label

<Select label="Country" placeholder="Select a country"> <SelectOption value="us">United States</SelectOption> <SelectOption value="uk">United Kingdom</SelectOption> <SelectOption value="ca">Canada</SelectOption> </Select>

With Icons

<Select label="Payment Method" placeholder="Select payment"> <SelectOption value="card" icon={<Icon name="card" />}> Credit Card </SelectOption> <SelectOption value="bank" icon={<Icon name="bank" />}> Bank Transfer </SelectOption> </Select>

With Avatars

<Select label="Assignee" placeholder="Select team member"> <SelectOption value="john" avatar="/avatars/john.jpg"> John Doe </SelectOption> <SelectOption value="jane" avatar="/avatars/jane.jpg"> Jane Smith </SelectOption> </Select>

With Status Indicators

<Select label="Status" placeholder="Select status"> <SelectOption value="active" status="success"> Active </SelectOption> <SelectOption value="pending" status="warning"> Pending </SelectOption> <SelectOption value="inactive" status="error"> Inactive </SelectOption> </Select>

Controlled

const [value, setValue] = useState(""); <Select label="Category" value={value} onChange={setValue}> <SelectOption value="tech">Technology</SelectOption> <SelectOption value="design">Design</SelectOption> <SelectOption value="business">Business</SelectOption> </Select>;

Props

Select

PropTypeDefaultDescription
labelstring—Select label
placeholderstring—Placeholder text
valuestring—Controlled value
onChange(value: string) => void—Change handler
disabledbooleanfalseDisables the select
searchablebooleanfalseEnable search filtering
classNamestring—Additional CSS classes

SelectOption

PropTypeDefaultDescription
valuestring—Option value (required)
iconReactNode—Leading icon
avatarstring—Avatar image URL
status"success" | "warning" | "error"—Status indicator color
disabledbooleanfalseDisables the option

Accessibility

  • Uses proper ARIA attributes for combobox pattern
  • Keyboard navigation with arrow keys
  • Enter to select, Escape to close
  • Search filtering with typeahead
Last updated on