react-standalone-form-mui
Version:
The Material UI suite for react-standalone-form library.
53 lines (41 loc) • 1.68 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _FormGroup = _interopRequireDefault(require("@material-ui/core/FormGroup"));
var _FormControlLabel = _interopRequireDefault(require("@material-ui/core/FormControlLabel"));
var _Checkbox = _interopRequireDefault(require("@material-ui/core/Checkbox"));
var _FormControl = _interopRequireDefault(require("./FormControl"));
var _reactStandaloneForm = require("react-standalone-form");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const Checkbox = _ref => {
let {
name,
value,
options,
required,
setValue
} = _ref;
return /*#__PURE__*/_react.default.createElement(_FormGroup.default, null, options && options.map((option, index) => {
const optionLabel = typeof option === 'string' ? option : option.label;
const optionValue = typeof option === 'string' ? option : option.value;
const checked = !!(value && value.includes(optionValue));
return /*#__PURE__*/_react.default.createElement(_FormControlLabel.default, {
control: /*#__PURE__*/_react.default.createElement(_Checkbox.default, {
checked: checked,
onChange: () => {
const finalValue = (0, _reactStandaloneForm.checkboxHandler)(!checked, optionValue, value);
setValue(name, finalValue, required);
},
value: optionValue
}),
label: optionLabel,
key: index
});
}));
};
Checkbox.displayName = 'Checkbox';
var _default = (0, _FormControl.default)(Checkbox);
exports.default = _default;