UNPKG

ming-demo3

Version:
178 lines (148 loc) 6.35 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); 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 = _interopRequireDefault(require("react")); var _baseui = require("@mdf/baseui"); var _reactDom = require("react-dom"); var _label = _interopRequireDefault(require("./label")); var _text = _interopRequireDefault(require("./text")); var _moment = _interopRequireDefault(require("moment")); var TimePickerControl = function (_React$Component) { (0, _inherits2["default"])(TimePickerControl, _React$Component); function TimePickerControl(props) { var _this; (0, _classCallCheck2["default"])(this, TimePickerControl); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(TimePickerControl).call(this, props)); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleBodyClick", function (e) { document.body.removeEventListener('click', _this.handleBodyClick); if (_this.contains(_this.refs.div, e.target)) return; if (e.target && cb.dom((0, _reactDom.findDOMNode)(e.target)).parents('div.ant-time-picker-panel').length) return; if (_this.props.model) _this.props.model.execute('blur'); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (time, timeString) { _this.timeString = timeString; _this.props.model.setValue(_this.timeString, true); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "validate", function (val) { _this.setState({ err: 'has-' + val.type, msg: val.message }); }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "baseControl", function () { var baseControl; var _this$state = _this.state, readOnly = _this$state.readOnly, value = _this$state.value, format = _this$state.format, disabled = _this$state.disabled; if (readOnly) { baseControl = (0, _text["default"])(value); } else { var pickerProps = { disabled: disabled, format: format }; if (value) { pickerProps.value = (0, _moment["default"])(value, format); } else {} var addon = function addon(panel) { return _react["default"].createElement(_baseui.Button, { size: "small", type: "primary", onClick: function onClick() { return _this.handleButtonClick(panel); } }, "\u786E\u5B9A"); }; baseControl = _react["default"].createElement(_baseui.TimePicker, (0, _extends2["default"])({}, pickerProps, { onChange: _this.onChange })); } return baseControl; }); (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getControl", function () { 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; }); _this.state = { bIsNull: props.bIsNull, format: props.cFormatData || 'HH:mm:ss', visible: !props.bHidden }; return _this; } (0, _createClass2["default"])(TimePickerControl, [{ key: "componentDidMount", value: function componentDidMount() { if (this.props.model) this.props.model.addListener(this); } }, { key: "componentDidUpdate", value: function componentDidUpdate() { if (this.props.model) this.props.model.addListener(this); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { if (this.props.model) this.props.model.removeListener(this); } }, { key: "contains", value: function contains(elem, target) { if (elem === target) return true; if (!elem.children || !elem.children.length) return false; for (var i = 0, len = elem.children.length; i < len; i++) { if (this.contains(elem.children[i], target)) return true; } return false; } }, { key: "handleButtonClick", value: function handleButtonClick(panel) { if (this.props.model) { this.props.model.setValue(this.timeString, true); this.props.model.execute('blur'); } panel.close(); } }, { key: "render", value: function render() { document.body.addEventListener('click', this.handleBodyClick); var control = this.getControl(); var style = this.state.visible ? {} : { display: "none" }; var className = this.state.err + ' ' + this.state.className; return _react["default"].createElement("div", { ref: "div", style: style, className: className }, control, _react["default"].createElement("div", { className: "ant-form-explain" }, this.state.msg)); } }]); return TimePickerControl; }(_react["default"].Component); exports["default"] = TimePickerControl; //# sourceMappingURL=timepicker.js.map