import React from 'react'; import { resolveReferences, resolveWidgetFieldValue } from '@/_helpers/utils'; export const Checkbox = function Checkbox({ id, height, component, onComponentClick, currentState, onComponentOptionChanged, onEvent, }) { const [checked, setChecked] = React.useState(false); const label = component.definition.properties.label.value; const textColorProperty = component.definition.styles.textColor; const textColor = textColorProperty ? textColorProperty.value : '#000'; const checkboxColorProperty = component.definition.styles.checkboxColor; const checkboxColor = checkboxColorProperty ? checkboxColorProperty.value : '#3c92dc'; const widgetVisibility = component.definition.styles?.visibility?.value ?? true; const disabledState = component.definition.styles?.disabledState?.value ?? false; const parsedDisabledState = typeof disabledState !== 'boolean' ? resolveWidgetFieldValue(disabledState, currentState) : disabledState; let parsedWidgetVisibility = widgetVisibility; try { parsedWidgetVisibility = resolveReferences(parsedWidgetVisibility, currentState, []); } catch (err) { console.log(err); } function toggleValue(e) { const isChecked = e.target.checked; setChecked(isChecked); onComponentOptionChanged(component, 'value', isChecked); if (isChecked) { onEvent('onCheck', { component }); } else { onEvent('onUnCheck', { component }); } } return (
{ event.stopPropagation(); onComponentClick(id, component, event); }} >
); };