Components
ReUI Radio Group with the first 10 official ReUI examples, preserved from the MIT-licensed source registry.

import { MailIcon, SmartphoneIcon, MessageCircleIcon } from "lucide-react"
import { Card } from "@/components/ui/reui-radio-group-utils/card"
import {
Field,
FieldGroup,
FieldLabel,
FieldTitle,
} from "@/components/ui/reui-radio-group-utils/field"
import {
RadioGroup,
RadioGroupItem,
} from "@/components/ui/reui-radio-group"
import { Separator } from "@/components/ui/reui-radio-group-utils/separator"
export default function Pattern() {
return (
<Card className="w-full max-w-xs p-0">
<RadioGroup defaultValue="email">
<FieldGroup className="gap-0">
<Field>
<FieldLabel className="justify-between px-4 py-3">
<FieldTitle className="flex items-center gap-2">
<MailIcon className="size-4 opacity-60" aria-hidden="true" />
Email
</FieldTitle>
<RadioGroupItem value="email" id="contact-email" />
</FieldLabel>
</Field>
<Separator />
<Field>
<FieldLabel className="justify-between px-4 py-3">
<FieldTitle className="flex items-center gap-2">
<SmartphoneIcon className="size-4 opacity-60" aria-hidden="true" />
Phone
</FieldTitle>
<RadioGroupItem value="phone" id="contact-phone" />
</FieldLabel>
</Field>
<Separator />
<Field>
<FieldLabel className="justify-between px-4 py-3">
<FieldTitle className="flex items-center gap-2">
<MessageCircleIcon className="size-4 opacity-60" aria-hidden="true" />
Chat
</FieldTitle>
<RadioGroupItem value="chat" id="contact-chat" />
</FieldLabel>
</Field>
</FieldGroup>
</RadioGroup>
</Card>
)
}







