Components
Loading preview...
A Select dropdown from the Flexnative UI registry with 10 variants: basic, grouped options, disabled, leading icons, object values, description items, disabled items, avatar user-picker, labelled field, and an icon-in-trigger. Built on Radix Select.
@reapollo
npx shadcn@latest add https://21st.dev/r/larsen66/flexnative-select'use client'
import {
Select,
SelectContent,
SelectGroup,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/components/ui/flexnative-select'
import {
CircleIcon,
TriangleAlertIcon,
CheckCircleIcon,
XCircleIcon,
ClockIcon,
} from 'lucide-react'
const items = [
{
value: 'none',
label: 'None',
icon: CircleIcon,
},
{
value: 'low',
label: 'Low',
icon: ClockIcon,
},
{
value: 'medium',
label: 'Medium',
icon: TriangleAlertIcon,
},
{
value: 'high',
label: 'High',
icon: XCircleIcon,
},
{
value: 'done',
label: 'Done',
icon: CheckCircleIcon,
},
]
export function Select04() {
return (
<Select defaultValue="done">
<SelectTrigger className="w-full max-w-56">
<SelectValue placeholder="Select a priority" />
</SelectTrigger>
<SelectContent>
<SelectGroup>
{items.map((item) => (
<SelectItem key={item.value} value={item.value}>
<item.icon className="size-3.5" />
<span>{item.label}</span>
</SelectItem>
))}
</SelectGroup>
</SelectContent>
</Select>
)
}
export default function Default() {
return (
<div className="flex min-h-screen w-full items-center justify-center bg-background p-10">
<Select04 />
</div>
)
}