UNPKG

ming-demo3

Version:
210 lines (177 loc) 6.83 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _react = _interopRequireWildcard(require("react")); var _baseui = require("@mdf/baseui"); var _label = _interopRequireDefault(require("./label")); var _text = _interopRequireDefault(require("./text")); var CheckGroup = _baseui.Checkbox.Group; var CheckboxEnum = function (_Component) { (0, _inherits2["default"])(CheckboxEnum, _Component); function CheckboxEnum(props) { var _this; (0, _classCallCheck2["default"])(this, CheckboxEnum); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(CheckboxEnum).call(this, props)); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onCheckAllChange", function (e) { if (_this.props.model) _this.props.model.select(e.target.checked ? _this.plainOptions : []); _this.setState({ indeterminate: false, checkAll: e.target.checked }); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleChange", function (checkedValues) { if (_this.props.model) _this.props.model.select(checkedValues); _this.setState({ indeterminate: !!checkedValues.length && checkedValues.length < _this.plainOptions.length, checkAll: checkedValues.length === _this.plainOptions.length }); }); var cStyle = props.cStyle; var config = null; if (cStyle) { try { config = JSON.parse(cStyle); } catch (e) { config = {}; } } _this.state = Object.assign({ bIsNull: props.bIsNull, indeterminate: false, checkAll: false, visible: true }, config); return _this; } (0, _createClass2["default"])(CheckboxEnum, [{ key: "componentDidMount", value: function componentDidMount() { if (this.props.model) this.props.model.addListener(this); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { if (this.props.model) this.props.model.removeListener(this); } }, { key: "setListenerState", value: function setListenerState(params) { var _this2 = this; var valueField = params.valueField, textField = params.textField, value = params.value, dataSource = params.dataSource; this.valueField = valueField; this.textField = textField; this.plainOptions = []; if (dataSource && dataSource.length) { dataSource.forEach(function (item) { _this2.plainOptions.push(item[valueField]); }); } delete params.valueField; delete params.textField; delete params.value; this.setState(params); this.setValue(value); } }, { key: "setValue", value: function setValue(value) { var _this3 = this; var keys = []; if (cb.utils.isArray(value)) { value.forEach(function (item) { if (!item) return; keys.push(item[_this3.valueField]); }); } else { if (value && !cb.utils.isEmpty(value[this.valueField])) keys.push(value[this.valueField]); } this.setState({ value: keys }); } }, { key: "baseControl", value: function baseControl() { var _this4 = this; var _this$state = this.state, dataSource = _this$state.dataSource, value = _this$state.value, readOnly = _this$state.readOnly, disabled = _this$state.disabled, indeterminate = _this$state.indeterminate, checkAll = _this$state.checkAll, after = _this$state.after, bottom = _this$state.bottom; var options = []; var labels = []; dataSource && dataSource.forEach(function (item, index) { var label = item[_this4.textField]; var itemValue = item[_this4.valueField]; options.push({ label: label, value: itemValue, disabled: item.disabled }); if (value && value.indexOf(itemValue) > -1) labels.push(label); }); if (readOnly) return (0, _text["default"])(labels.join('; ')); var com = _react["default"].createElement("div", null, _react["default"].createElement("div", { style: { "float": 'left' } }, _react["default"].createElement(CheckGroup, { value: value, options: options, disabled: disabled, onChange: this.handleChange }))); if (!after && !bottom) return com; return _react["default"].createElement("div", { className: "checkboxenum-placeholder" }, _react["default"].createElement("div", null, com, after && _react["default"].createElement("span", null, after)), bottom && _react["default"].createElement("div", { className: "checkboxenum-bottom" }, bottom)); } }, { key: "getControl", value: function getControl() { var cShowCaption = this.props.cShowCaption; var title = !this.state.readOnly && this.state.bIsNull === false && cShowCaption ? _react["default"].createElement("label", null, _react["default"].createElement(_baseui.Icon, { type: "star" }), cShowCaption) : _react["default"].createElement("label", null, cShowCaption); var control = cShowCaption ? _react["default"].createElement(_label["default"], { control: this.baseControl(), title: title }) : this.baseControl(); return control; } }, { key: "render", value: function render() { var control = this.getControl(); var style = this.state.visible ? {} : { display: "none" }; return _react["default"].createElement("div", { style: style }, control); } }]); return CheckboxEnum; }(_react.Component); exports["default"] = CheckboxEnum; //# sourceMappingURL=checkboxenum.js.map