UNPKG

es-grid-template

Version:

es-grid-template

48 lines (47 loc) 2.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireWildcard(require("react")); var _rcMasterUi = require("rc-master-ui"); function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } const CheckboxControl = props => { const { options, value, onChange } = props; const selected = (0, _react.useMemo)(() => { return value ? value : []; }, [value]); const list = (0, _react.useMemo)(() => { return options ? options : []; }, [options]); const onChangeValue = val => { const findIndex = selected.findIndex(it => it === val); if (findIndex > -1) { const newVal = selected.filter(it => it !== val); onChange?.(newVal); } else { const newVal = [...selected, val]; onChange?.(newVal); } }; return /*#__PURE__*/_react.default.createElement("div", { className: "d-flex flex-column gap-50", style: {} }, list.map((it, index) => { return /*#__PURE__*/_react.default.createElement("div", { key: index, className: "d-flex align-items-center" }, /*#__PURE__*/_react.default.createElement(_rcMasterUi.Checkbox, { checked: selected.includes(it.value), type: "checkbox", className: "cursor-pointer me-50", onChange: () => onChangeValue(it.value) }), /*#__PURE__*/_react.default.createElement("span", null, it.label)); })); }; var _default = exports.default = CheckboxControl;