UNPKG

@beisen/ethos

Version:

beisencloud pc react components

141 lines (107 loc) 4.86 kB
'use strict'; var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _class, _temp; var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _reactDom = require('react-dom'); var _toolTip = require('../tool-tip'); var _toolTip2 = _interopRequireDefault(_toolTip); var _commonLabel = require('../common-label'); var _commonLabel2 = _interopRequireDefault(_commonLabel); var _input = require('./input'); var _input2 = _interopRequireDefault(_input); var _list = require('./list'); var _list2 = _interopRequireDefault(_list); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var Edit = (_temp = _class = function (_Component) { (0, _inherits3.default)(Edit, _Component); function Edit(props) { (0, _classCallCheck3.default)(this, Edit); var _this = (0, _possibleConstructorReturn3.default)(this, (Edit.__proto__ || (0, _getPrototypeOf2.default)(Edit)).call(this, props)); _this.getMountSize = function () { var width = void 0, height = 0, heightCalc = void 0, listHeight = void 0; _this.inputDom = _this.refs.input.refs.wrapper.getElementsByClassName('list_horizontal list_wrap form-item__multi-list lookupv2__select-list')[0] || _this.refs.input.refs.wrapper; width = _this.inputDom.offsetWidth; heightCalc = _this.props.setListHeight(); return { width: width, height: heightCalc.listHeight, listHeight: heightCalc.itemHeight }; }; return _this; } (0, _createClass3.default)(Edit, [{ key: 'componentDidUpdate', value: function componentDidUpdate(prevProps, prevState) { var translation = this.props.translation; var props = (0, _extends3.default)({}, this.props); if (props.disabled || props.readOnly || props.onlyShowAdvanced) { return; } var self = this; if (props.isShowDoropList && Array.isArray(props.listValue) || props.isShowDoropList && props.isFetching || props.isShowDoropList && (props.isNotAllow || props.isNotInstall)) { var _size = this.getMountSize(); var dom = document.getElementsByClassName("BS_lookupV2__mountContainer")[0]; var height = dom && dom.offsetHeight ? dom.offsetHeight : _size.height; if (!props.isFetching) height = _size.height; this.props.commonMount.renderDom('BS_lookupV2_container__' + this.props.uid, _react2.default.createElement(_list2.default, { listValue: props.listValue, listHeight: _size.listHeight, value: props.value, isNotAllow: props.isNotAllow, isNotInstall: props.isNotInstall, isFetching: props.isFetching, multiple: props.multiple, isShowFindAll: props.isShowFindAll, commonMount: props.commonMount, handlerFindAll: props.handlerFindAll, listClick: props.listClick, setComState: props.setComState, translation: translation, onChange: props.onChange }), self.inputDom, [self.inputDom, { width: 340, height: height }], false, 0, //水平向左偏移量,为负数则向右 false, //弹层靠左靠右模式,默认为false 靠左模式 100, //window.onresize执行时间,默认100ms props.lablePos ? 33 : 50); } } }, { key: 'render', value: function render() { var props = (0, _extends3.default)({}, this.props); return _react2.default.createElement( 'div', { className: 'form-item form-item-lookupv2 ' }, _react2.default.createElement(_commonLabel2.default, this.props), _react2.default.createElement(_input2.default, (0, _extends3.default)({}, props, { handlerFindAll: props.handlerFindAll, setComState: props.setComState, ref: 'input' })) ); } }]); return Edit; }(_react.Component), _class.defaultProps = { title: "", hiddenTip: false, sideTip: false, isFocus: false, helpMsg: '', required: true, listValue: null, value: '' }, _temp); module.exports = Edit;