UNPKG

dareway-rui

Version:

246 lines (200 loc) 9.29 kB
'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 _antd = require('antd'); var _propTypes = _interopRequireDefault(require('prop-types')); var _util = require('../../../common/util'); var _FrameConstants = require('../../../../constants/FrameConstants'); var _MsgBox = _interopRequireDefault(require('../../../../util/MsgBox')); var _CardMask = _interopRequireDefault(require('../../../../taglib/mask/string/CardMask')); var _YzbmMask = _interopRequireDefault(require('../../../../taglib/mask/string/YzbmMask')); var _generator = require('../../utils/generator'); var EditInput = /*#__PURE__*/ (function(_React$PureComponent) { (0, _inherits2.default)(EditInput, _React$PureComponent); function EditInput(props) { var _this; (0, _classCallCheck2.default)(this, EditInput); _this = (0, _possibleConstructorReturn2.default)( this, (0, _getPrototypeOf2.default)(EditInput).call(this, props) ); (0, _defineProperty2.default)( (0, _assertThisInitialized2.default)(_this), 'handleReactChangeWithMask', function(value) { var mask = _this.props.mask; if (mask === 'card') { return _CardMask.default.format(value); } else if (mask === 'yzbm') { return _YzbmMask.default.format(value); } } ); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'handleBlurWithMask', function( value ) { var _this$props = _this.props, name = _this$props.name, mask = _this$props.mask; if (mask === 'card' && !_CardMask.default.checkValid(value)) { var errormsg = '\u8EAB\u4EFD\u8BC1\u53F7\u7801\u3010'.concat( value, '\u3011\u4E0D\u6B63\u786E\uFF0C\u8BF7\u68C0\u67E5!' ); _MsgBox.default.error(errormsg); } else if (mask === 'yzbm' && !_YzbmMask.default.checkValid(value)) { var _errormsg = '\u90AE\u653F\u7F16\u7801\u3010'.concat( value, '\u3011\u4E0D\u6B63\u786E\uFF0C\u8BF7\u68C0\u67E5!' ); _MsgBox.default.error(_errormsg); } }); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'handleBlur', function(event) { var _this$props2 = _this.props, maxLength = _this$props2.maxLength, name = _this$props2.name, rowNum = _this$props2.rowNum, syncCellValue = _this$props2.syncCellValue, onBlur = _this$props2.onBlur, mask = _this$props2.mask; // 限制 maxlength var newValue = _this.state.value; if (mask) { _this.handleBlurWithMask(newValue); } else { newValue = (0, _util.filterValueByMaxLength)(_this.state.value, maxLength); } // 同步 model 数据 syncCellValue(rowNum, name, newValue); if (onBlur) { onBlur(newValue); } }); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'handleChange', function(event) { var _this$props3 = _this.props, maxLength = _this$props3.maxLength, mask = _this$props3.mask; var newValue = event.target.value; if (mask) { newValue = _this.handleReactChangeWithMask(newValue); } else { newValue = (0, _util.filterValueByMaxLength)(event.target.value, maxLength); } _this.setState({ value: newValue }); }); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'handleKeyDown', function( event ) { var key = event.which; if ( key === _FrameConstants.KEY_CODE.ENTER || key === _FrameConstants.KEY_CODE.TAB || key === _FrameConstants.KEY_CODE.DOWNARROW || key === _FrameConstants.KEY_CODE.UPARROW ) { _this.handleBlur(); } var onKeyDown = _this.props.onKeyDown; if (onKeyDown) { onKeyDown(event); } }); var _value = _this.props.value; _this.state = { value: _value }; _this.inputRef = _react.default.createRef(); return _this; } (0, _createClass2.default)(EditInput, [ { key: 'componentDidMount', value: function componentDidMount() { this.inputRef.current.focus(); } }, { key: 'render', value: function render() { var _this$props4 = this.props, name = _this$props4.name, bodyAlign = _this$props4.bodyAlign, bodyFontColor = _this$props4.bodyFontColor, bodyBold = _this$props4.bodyBold, bodyOblique = _this$props4.bodyOblique, bodyStyleFilter = _this$props4.bodyStyleFilter; var style = (0, _generator.generateEditCellStyle)({}); if (bodyAlign) { style['textAlign'] = bodyAlign; } if (bodyFontColor) { style['color'] = bodyFontColor; } if (bodyBold) { style['fontWeight'] = 'bold'; } if (bodyOblique) { style['fontStyle'] = 'oblique'; } if (bodyStyleFilter) { var extraStyles = bodyStyleFilter((0, _defineProperty2.default)({}, name, this.state.value)); if (extraStyles) { if (extraStyles.color) { style['color'] = extraStyles.color; } if (extraStyles.bold) { style['fontWeight'] = 'bold'; } if (extraStyles.oblique) { style['fontStyle'] = 'oblique'; } } } return _react.default.createElement( 'div', null, _react.default.createElement(_antd.Input, { ref: this.inputRef, style: style, value: this.state.value, onKeyDown: this.handleKeyDown, onChange: this.handleChange, onBlur: this.handleBlur }) ); } } ]); return EditInput; })(_react.default.PureComponent); exports.default = EditInput; (0, _defineProperty2.default)(EditInput, 'propTypes', { name: _propTypes.default.string, value: _propTypes.default.any, rowNum: _propTypes.default.number, maxLength: _propTypes.default.number, mask: _propTypes.default.string, onBlur: _propTypes.default.func, onKeyDown: _propTypes.default.func, syncCellValue: _propTypes.default.func, bodyAlign: _propTypes.default.string, bodyBold: _propTypes.default.bool, bodyFontColor: _propTypes.default.string, bodyOblique: _propTypes.default.bool, bodyStyleFilter: _propTypes.default.func }); //@ sourceMappingURL=EditInput.js.map