UNPKG

ming-demo3

Version:
135 lines (111 loc) 4.28 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 _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _react = _interopRequireWildcard(require("react")); var _baseui = require("@mdf/baseui"); var _SvgIcon = _interopRequireDefault(require("@mdf/metaui-web/lib/components/common/SvgIcon")); var MenuItem = _baseui.Menu.Item; var DropdownControl = function (_Component) { (0, _inherits2["default"])(DropdownControl, _Component); function DropdownControl(props) { var _this; (0, _classCallCheck2["default"])(this, DropdownControl); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(DropdownControl).call(this, props)); _this.valueField = props.valueField || ''; _this.textField = props.textField || ''; _this.state = { visible: !props.bHidden }; return _this; } (0, _createClass2["default"])(DropdownControl, [{ 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 valueField = params.valueField, textField = params.textField; this.valueField = valueField; this.textField = textField; delete params.valueField; delete params.textField; this.setState(params); if (this.props.onVisibleChange) { var visible = params.visible; if (visible == null) visible = true; this.props.onVisibleChange(visible); } } }, { key: "handleMenuClick", value: function handleMenuClick(e) { if (this.props.model) { this.props.model.select(e.key); this.props.model.fireEvent('click', e.key); } } }, { key: "setVisible", value: function setVisible(visible) { this.setState({ visible: visible }); if (this.props.onVisibleChange) this.props.onVisibleChange(visible); } }, { key: "render", value: function render() { var _this2 = this; if (!this.state.visible) return null; var valueField = this.valueField; var textField = this.textField; var loop = function loop(data) { return data.map(function (item) { return _react["default"].createElement(MenuItem, { key: item[valueField] }, item[textField]); }); }; var menu = _react["default"].createElement(_baseui.Menu, { onClick: function onClick(e) { return _this2.handleMenuClick(e); } }, loop(this.state.dataSource || [])); var icon = this.props.iStyle === 1 ? null : this.props.icon; var text = this.props.iStyle === 2 ? null : this.props.value; var iconCom = icon ? _react["default"].createElement(_SvgIcon["default"], { className: "icon-" + icon, type: icon + (this.state.disabled ? "-disabled" : "") }) : null; var control = _react["default"].createElement(_baseui.Dropdown, { overlay: menu }, _react["default"].createElement(_baseui.Button, { className: this.props.className, disabled: this.state.disabled }, iconCom, text, _react["default"].createElement(_baseui.Icon, { type: "down" }))); return control; } }]); return DropdownControl; }(_react.Component); exports["default"] = DropdownControl; //# sourceMappingURL=dropdown.js.map