@loke/design-system
Version:
A design system with individually importable components
2 lines (1 loc) • 1.21 kB
JavaScript
import{cn}from"@loke/design-system/cn";import{CheckIcon}from"@loke/icons";import*as CheckboxPrimitive from"@loke/ui/checkbox";import{jsx}from"react/jsx-runtime";function Checkbox({className,...props}){return jsx(CheckboxPrimitive.Root,{className:cn("peer relative flex size-4 shrink-0 items-center justify-center rounded-sm border border-input outline-none transition-colors after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 group-has-disabled/field:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:bg-input/30 dark:data-[state=checked]:bg-primary dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",className),"data-slot":"checkbox",...props,children:jsx(CheckboxPrimitive.Indicator,{className:"grid place-content-center text-current transition-none [&>svg]:size-3.5","data-slot":"checkbox-indicator",children:jsx(CheckIcon,{})})})}export{Checkbox};