import classes from './WdCheckbox.module.scss'; import { Checkbox, CheckboxChangeEvent } from 'primereact/checkbox'; import { WithClassName } from '@/hooks/Mapper/types/common'; import clsx from 'clsx'; import React, { useMemo } from 'react'; let counter = 0; export interface WdCheckboxProps { label: React.ReactNode | string; classNameLabel?: string; value: boolean; labelSide?: 'left' | 'right'; onChange?: (event: CheckboxChangeEvent) => void; size?: 'xs' | 'm' | 'normal'; } export const WdCheckbox = ({ label, className, classNameLabel, value, onChange, labelSide = 'right', size = 'normal', }: WdCheckboxProps & WithClassName) => { const id = useMemo(() => (++counter).toString(), []); const labelElement = ( ); return (
{labelSide === 'left' && labelElement} {labelSide === 'right' && labelElement}
); };