@e-group/material-formik
Version:
Custom react components for integrate redux-form.
34 lines (29 loc) • 1.28 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
import React from 'react';
import CheckboxInputGroup from '@e-group/material/CheckboxInputGroup';
import useFieldStatus from '../utils/useFieldStatus';
// Code below is refer to https://github.com/erikras/redux-form/issues/1037
const CheckboxInputGroupField = props => {
const field = props.field,
setFieldValue = props.form.setFieldValue,
errorProp = props.error,
helperText = props.helperText,
disabledProp = props.disabled,
other = _objectWithoutProperties(props, ["field", "form", "error", "helperText", "disabled"]);
const _useFieldStatus = useFieldStatus(field, props.form, disabledProp),
fieldError = _useFieldStatus.fieldError,
showError = _useFieldStatus.showError,
disabled = _useFieldStatus.disabled;
const handleChange = value => {
setFieldValue(field.name, value);
};
return /*#__PURE__*/React.createElement(CheckboxInputGroup, _extends({
error: showError,
disabled: disabled,
helperText: showError ? fieldError : helperText
}, field, {
onChange: handleChange
}, other));
};
export default CheckboxInputGroupField;