Select custom

Enhanced select with custom dropdown menu, separators, labels, and groups

Installation

Usage

import {
  SelectCustom,
  SelectCustomTrigger,
  SelectCustomContent,
  SelectCustomItem,
} from '@/components/ui/select-custom'

<SelectCustom name='role' defaultValue='viewer'>
  <SelectCustomTrigger placeholder='Select role...' />
  <SelectCustomContent>
    <SelectCustomItem value='viewer'>Viewer</SelectCustomItem>
    <SelectCustomItem value='editor'>Editor</SelectCustomItem>
    <SelectCustomItem value='admin'>Admin</SelectCustomItem>
  </SelectCustomContent>
</SelectCustom>

Interactivity

This component is SSR-first and works without client JavaScript. Add @kiwa-ui/enhance for interactive behavior like toggling, keyboard navigation, and ARIA state management.

Add to your layout

<script type="module">
  import { select } from '@kiwa-ui/enhance'
  select()
</script>