import { useMemo } from 'react' import { FieldCheckboxGroupProps } from './types' import { Box, CheckboxButton, FormErrorMessage, FormLabel } from '@/design-system/components' export const FieldCheckboxGroup = ({ items, onSelectItem, isInvalid, isRequired, isDisabled, label, errorMessage, selectedItems, labelStyle, ...props }: FieldCheckboxGroupProps) => { const renderCheckboxes = useMemo(() => { return items.map((item, index) => { const handleChange = () => { if (Array.isArray(selectedItems)) { if (!selectedItems?.includes(item.value)) { const newArr = [...selectedItems, item.value] onSelectItem(newArr) } else { const newArr = selectedItems.filter((el) => el !== item.value) onSelectItem(newArr) } } } return ( ) }) }, [items, selectedItems, props, onSelectItem]) return ( {renderCheckboxes} ) }