import * as CheckboxPrimitive from "@radix-ui/react-checkbox"; import type { ComponentProps } from "react"; import clsx from "clsx"; import { CheckIcon } from "lucide-react"; interface CheckboxProps extends Omit, "onCheckedChange" | "onChange"> { indeterminate?: boolean; onChange?: (checked: boolean) => void; } const Checkbox = (props: CheckboxProps) => { const { indeterminate, className, onChange, checked, ...rest } = props; return ( onChange?.(v === true)} className={clsx( "group h-4 w-4 rounded-sm border border-black/30 dark:border-white/30 data-[state=checked]:bg-[#2F54EB] data-[state=checked]:border-[#2F54EB] transition cursor-pointer inline-flex items-center justify-center", className )} > {indeterminate && (
)}
); }; export default Checkbox;