import * as RadixCheckbox from '@radix-ui/react-checkbox'; import { CheckedState } from '@radix-ui/react-checkbox'; import { FunctionComponent, useCallback } from 'react'; import { Group } from './Checkbox.Group'; import { Item } from './Checkbox.Item'; import { ICheckboxChildren, ICheckboxProps } from './interfaces'; import { CheckSvg } from '../icons'; import { ctw } from '../../../utils/ctw/ctw'; export const Checkbox: FunctionComponent & ICheckboxChildren = ({ children, checked, value, onChange, className, checkboxProps = {}, ...props }) => { const { className: checkboxClassName, ...checkboxRest } = checkboxProps; const onCheckedChange = useCallback( (checked: CheckedState) => { onChange(value); }, [onChange, value], ); return ( ); }; Checkbox.Group = Group; Checkbox.Item = Item;