ming-demo3
Version:
mdf metaui web
147 lines (123 loc) • 4.9 kB
JavaScript
"use strict";
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 = _interopRequireDefault(require("react"));
var _baseui = require("@mdf/baseui");
var _label = _interopRequireDefault(require("./label"));
var _text = _interopRequireDefault(require("./text"));
var _moment = _interopRequireDefault(require("moment"));
var RangePicker = _baseui.DatePicker.RangePicker;
var RangePickerControl = function (_React$Component) {
(0, _inherits2["default"])(RangePickerControl, _React$Component);
function RangePickerControl(props) {
var _this;
(0, _classCallCheck2["default"])(this, RangePickerControl);
_this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(RangePickerControl).call(this, props));
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (value, dataString) {
console.log('From :' + dataString[0] + ' to :' + dataString[1]);
if (_this.props.model) _this.props.model.setValue(dataString, true);
});
_this.state = {
format: props.format || 'YYYY-MM-DD',
visible: !props.bHidden,
readOnly: props.readOnly,
disabled: props.disabled || false,
err: '',
msg: ''
};
return _this;
}
(0, _createClass2["default"])(RangePickerControl, [{
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: "validate",
value: function validate(val) {
this.setState({
err: 'has-' + val.type,
msg: val.message
});
}
}, {
key: "baseControl",
value: function baseControl() {
var _this$state = this.state,
readOnly = _this$state.readOnly,
value = _this$state.value,
format = _this$state.format,
disabled = _this$state.disabled;
var newValue, textValue;
if (cb.utils.isArray(value)) {
newValue = [];
textValue = [];
value.forEach(function (item) {
newValue.push(item && (0, _moment["default"])(item, format));
if (!item) return;
textValue.push(item);
});
}
if (readOnly) return (0, _text["default"])(textValue && textValue.join('~'));
var control = _react["default"].createElement(RangePicker, {
value: newValue,
format: format,
disabled: disabled,
onChange: this.onChange
});
return control;
}
}, {
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(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"
};
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 RangePickerControl;
}(_react["default"].Component);
exports["default"] = RangePickerControl;
//# sourceMappingURL=rangepicker.js.map