import clsx from 'clsx'; import type { ChangeEvent } from 'react'; import type { ForwardedRef } from 'react'; import { forwardRef, useId } from 'react'; type Props = Readonly<{ defaultValue?: boolean; description?: string; disabled?: boolean; errorMessage?: string; label: string; name?: string; onChange?: ( value: boolean, event: ChangeEvent, ) => undefined | void; value?: boolean; }>; function CheckboxInput( { defaultValue, description, disabled = false, errorMessage, label, name, value, onChange, }: Props, ref: ForwardedRef, ) { const id = useId(); const descriptionId = useId(); const errorId = useId(); return (
{ if (!onChange) { return; } onChange(event.target.checked, event); }} />
{description && (

{description}

)}
{errorMessage && (

{errorMessage}

)}
); } export default forwardRef(CheckboxInput);