All files / app/ui/form CheckboxInput.tsx

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42113x 113x   113x 113x                 113x   219x 219x 219x 219x     219x                                     113x  
import classNames from 'classnames';
import React, { forwardRef, ReactNode, Ref } from 'react';
 
import Input, { InputProps } from './Input';
import Label from './Label';
 
export interface CheckboxInputProps extends InputProps {
    additionalClassName?: string;
    label: ReactNode;
    value: string;
    checked: boolean;
}
 
const CheckboxInput = forwardRef((
    {
        additionalClassName,
        label,
        id,
        ...rest
    }: CheckboxInputProps,
    ref: Ref<HTMLInputElement>
) => (
    <>
        <Input
            { ...rest }
            className={ classNames(
                'form-checkbox',
                'optimizedCheckout-form-checkbox',
                additionalClassName
            ) }
            id={ id }
            ref={ ref }
            type="checkbox"
        />
        <Label htmlFor={ id }>
            { label }
        </Label>
    </>
));
 
export default CheckboxInput;