UNPKG

tinper-bee

Version:

React Components living for enterprise-class pc backend application

1,824 lines (1,555 loc) 292 kB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(require("react"), require("prop-types"), require("react-dom")); else if(typeof define === 'function' && define.amd) define(["react", "prop-types", "react-dom"], factory); else { var a = typeof exports === 'object' ? factory(require("react"), require("prop-types"), require("react-dom")) : factory(root["React"], root["PropTypes"], root["ReactDOM"]); for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; } })(typeof self !== 'undefined' ? self : this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_3__) { return /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { /******/ configurable: false, /******/ enumerable: true, /******/ get: getter /******/ }); /******/ } /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 1740); /******/ }) /************************************************************************/ /******/ ({ /***/ 0: /***/ (function(module, exports) { module.exports = __WEBPACK_EXTERNAL_MODULE_0__; /***/ }), /***/ 1: /***/ (function(module, exports) { module.exports = __WEBPACK_EXTERNAL_MODULE_1__; /***/ }), /***/ 1009: /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; var _react = __webpack_require__(0); var _react2 = _interopRequireDefault(_react); var _reactDom = __webpack_require__(3); var _reactDom2 = _interopRequireDefault(_reactDom); var _classnames = __webpack_require__(4); var _classnames2 = _interopRequireDefault(_classnames); var _beeAnimate = __webpack_require__(201); var _beeAnimate2 = _interopRequireDefault(_beeAnimate); var _util = __webpack_require__(931); var _propTypes = __webpack_require__(1); var _propTypes2 = _interopRequireDefault(_propTypes); var _tinperBeeCore = __webpack_require__(41); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); } var browserUa = typeof window !== 'undefined' ? (0, _util.browser)(window.navigator) : ''; var ieOrEdge = /.*(IE|Edge).+/.test(browserUa); // const uaArray = browserUa.split(' '); // const gtIE8 = uaArray.length !== 2 || uaArray[0].indexOf('IE') === -1 || Number(uaArray[1]) > 8; var defaultTitle = '---'; var TreeNode = function (_React$Component) { _inherits(TreeNode, _React$Component); function TreeNode(props) { _classCallCheck(this, TreeNode); var _this2 = _possibleConstructorReturn(this, _React$Component.call(this, props)); _this2.getNodeChildren = function () { var children = _this2.props.children; var originList = (0, _util.toArray)(children).filter(function (node) { return node; }); var targetList = (0, _util.getNodeChildren)(originList); if (originList.length !== targetList.length) { (0, _util.warnOnlyTreeNode)(); } return targetList; }; ['onExpand', 'onCheck', 'onContextMenu', 'onMouseEnter', 'onMouseLeave', 'onDragStart', 'onDragEnter', 'onDragOver', 'onDragLeave', 'onDrop', 'onDragEnd', 'onDoubleClick', 'onKeyDown'].forEach(function (m) { _this2[m] = _this2[m].bind(_this2); }); _this2.state = { dataLoading: false, dragNodeHighlight: false }; return _this2; } TreeNode.prototype.componentDidMount = function componentDidMount() { if (!this.props.root._treeNodeInstances) { this.props.root._treeNodeInstances = []; } this.props.root._treeNodeInstances.push(this); }; // shouldComponentUpdate(nextProps) { // if (!nextProps.expanded) { // return false; // } // return true; // } TreeNode.prototype.onCheck = function onCheck() { this.props.root.onCheck(this); }; TreeNode.prototype.onSelect = function onSelect() { clearTimeout(this.doubleClickFlag); var _this = this; if (this.props.onDoubleClick) { //执行延时 this.doubleClickFlag = setTimeout(function () { //do function在此处写单击事件要执行的代码 _this.props.root.onSelect(_this); }, 300); } else { _this.props.root.onSelect(_this); } }; TreeNode.prototype.onDoubleClick = function onDoubleClick() { clearTimeout(this.doubleClickFlag); this.props.root.onDoubleClick(this); }; TreeNode.prototype.onMouseEnter = function onMouseEnter(e) { e.preventDefault(); this.props.root.onMouseEnter(e, this); }; TreeNode.prototype.onMouseLeave = function onMouseLeave(e) { e.preventDefault(); this.props.root.onMouseLeave(e, this); }; TreeNode.prototype.onContextMenu = function onContextMenu(e) { e.preventDefault(); this.props.root.onContextMenu(e, this); }; TreeNode.prototype.onDragStart = function onDragStart(e) { // console.log('dragstart', this.props.eventKey, e); // e.preventDefault(); e.stopPropagation(); this.setState({ dragNodeHighlight: true }); this.props.root.onDragStart(e, this); try { // ie throw error // firefox-need-it e.dataTransfer.setData('text/plain', ''); } finally { // empty } }; TreeNode.prototype.onDragEnter = function onDragEnter(e) { e.preventDefault(); e.stopPropagation(); this.props.root.onDragEnter(e, this); }; TreeNode.prototype.onDragOver = function onDragOver(e) { // todo disabled e.preventDefault(); e.stopPropagation(); this.props.root.onDragOver(e, this); return false; }; TreeNode.prototype.onDragLeave = function onDragLeave(e) { e.stopPropagation(); this.props.root.onDragLeave(e, this); }; TreeNode.prototype.onDrop = function onDrop(e) { e.preventDefault(); e.stopPropagation(); this.setState({ dragNodeHighlight: false }); this.props.root.onDrop(e, this); }; TreeNode.prototype.onDragEnd = function onDragEnd(e) { e.stopPropagation(); this.setState({ dragNodeHighlight: false }); this.props.root.onDragEnd(e, this); }; TreeNode.prototype.onExpand = function onExpand() { var _this3 = this; var callbackPromise = this.props.root.onExpand(this); if (callbackPromise && (typeof callbackPromise === 'undefined' ? 'undefined' : _typeof(callbackPromise)) === 'object') { var setLoading = function setLoading(dataLoading) { _this3.setState({ dataLoading: dataLoading }); }; setLoading(true); callbackPromise.then(function () { setLoading(false); }, function () { setLoading(false); }); } }; // keyboard event support TreeNode.prototype.onKeyDown = function onKeyDown(e) { this.props.root.onKeyDown(e, this); if (e.keyCode == _tinperBeeCore.KeyCode.SPACE || e.keyCode == _tinperBeeCore.KeyCode.DOWN || e.keyCode == _tinperBeeCore.KeyCode.LEFT || e.keyCode == _tinperBeeCore.KeyCode.RIGHT || e.keyCode == _tinperBeeCore.KeyCode.UP) { e.preventDefault(); } }; TreeNode.prototype.renderSwitcher = function renderSwitcher(props, expandedState) { var stateIcon = void 0; var prefixCls = props.prefixCls; var switcherCls = _defineProperty({}, prefixCls + '-switcher', true); if (!props.showLine) { switcherCls[prefixCls + '-noline_' + expandedState] = true; } else if (props.pos === '0-0') { switcherCls[prefixCls + '-roots_' + expandedState] = true; } else { switcherCls[prefixCls + '-center_' + expandedState] = !props.last; switcherCls[prefixCls + '-bottom_' + expandedState] = props.last; } if (expandedState === 'open' && props.openIcon) { stateIcon = props.openIcon; switcherCls['icon-none'] = true; } if (expandedState === 'close' && props.closeIcon) { stateIcon = props.closeIcon; switcherCls['icon-none'] = true; } //switcherCls[stateIcon] = stateIcon; props.switcherClass ? switcherCls['' + props.switcherClass] = true : ''; if (props.disabled && !props.mustExpandable) { switcherCls[prefixCls + '-switcher-disabled'] = true; return _react2["default"].createElement( 'span', { className: (0, _classnames2["default"])(switcherCls), style: props.switcherStyle }, stateIcon ); } return _react2["default"].createElement( 'span', { className: (0, _classnames2["default"])(switcherCls), style: props.switcherStyle, onClick: this.onExpand }, stateIcon ); }; TreeNode.prototype.renderCheckbox = function renderCheckbox(props) { var prefixCls = props.prefixCls; var checkboxCls = _defineProperty({}, prefixCls + '-checkbox', true); if (props.checked) { checkboxCls[prefixCls + '-checkbox-checked'] = true; } else if (props.halfChecked) { checkboxCls[prefixCls + '-checkbox-indeterminate'] = true; } var customEle = null; if (typeof props.checkable !== 'boolean') { customEle = props.checkable; } if (props.disabled || props.disableCheckbox) { checkboxCls[prefixCls + '-checkbox-disabled'] = true; return _react2["default"].createElement( 'span', { className: (0, _classnames2["default"])(checkboxCls) }, customEle ); } return _react2["default"].createElement( 'span', { className: (0, _classnames2["default"])(checkboxCls), onClick: this.onCheck }, customEle ); }; TreeNode.prototype.renderChildren = function renderChildren(props) { var renderFirst = this.renderFirst; this.renderFirst = 1; var transitionAppear = true; if (!renderFirst && props.expanded) { transitionAppear = false; } var children = props.children; var newChildren = children; // 确定所有子节点是否是TreeNode var allTreeNode = false; if (Array.isArray(children)) { for (var index = 0; index < children.length; index++) { var item = children[index]; allTreeNode = item.type.isTreeNode == 1; if (!allTreeNode) { //当检查到子节点中有不是 TreeNode 的,则直接结束检查。同时不会渲染所有子节点 break; } } } else if (children && children.type && children.type.isTreeNode == 1) { allTreeNode = true; } // 如果props.children的长度大于0才可以生成子对象 if (allTreeNode && _react2["default"].Children.count(children)) { var _cls; var cls = (_cls = {}, _defineProperty(_cls, props.prefixCls + '-child-tree', true), _defineProperty(_cls, props.prefixCls + '-child-tree-open', props.expanded), _cls); if (props.showLine) { cls[props.prefixCls + '-line'] = !props.last; } var animProps = {}; if (props.openTransitionName) { animProps.transitionName = props.openTransitionName; } else if (_typeof(props.openAnimation) === 'object') { animProps.animation = _extends({}, props.openAnimation); if (!transitionAppear) { delete animProps.animation.appear; } } newChildren = _react2["default"].createElement( _beeAnimate2["default"], _extends({}, animProps, { showProp: 'data-expanded', transitionAppear: transitionAppear, component: '' }), !props.expanded ? null : _react2["default"].createElement( 'ul', { className: (0, _classnames2["default"])(cls), 'data-expanded': props.expanded }, _react2["default"].Children.map(children, function (item, index) { return props.root.renderTreeNode(item, index, props.pos); }, props.root) ) ); } return newChildren; }; /** *判断是否为叶子节点,isLeaf的优先级>props.children。如果是异步加载是根据isLeaf的值进行判断的 * * @returns * @memberof TreeNode */ TreeNode.prototype.checkIsLeaf = function checkIsLeaf() { var _props = this.props, isLeaf = _props.isLeaf, loadData = _props.loadData; var rs = isLeaf; if (rs === false || rs === true) { return rs; } else { var hasChildren = this.getNodeChildren().length !== 0; return !loadData && !hasChildren; } }; TreeNode.prototype.render = function render() { var _iconEleCls, _this4 = this; var props = this.props; var prefixCls = props.prefixCls; var expandedState = props.expanded ? 'open' : 'close'; var iconState = expandedState; var canRenderSwitcher = true; var content = props.title; var newChildren = this.renderChildren(props); var openIconCls = false, closeIconCls = false; //以下变量控制是否鼠标单机双击方法中的变量 var timer = 0; var delay = 500; var prevent = false; // if (!newChildren || newChildren === props.children) { // // content = newChildren; // newChildren = null; // if (!props.loadData || props.isLeaf) { // canRenderSwitcher = false; // iconState = 'docu'; // } // } if (this.checkIsLeaf()) { canRenderSwitcher = false; iconState = 'docu'; } // For performance, does't render children into dom when `!props.expanded` (move to Animate) // if (!props.expanded) { // newChildren = null; // } var iconEleCls = (_iconEleCls = {}, _defineProperty(_iconEleCls, prefixCls + '-iconEle', true), _defineProperty(_iconEleCls, prefixCls + '-icon_loading', this.state.dataLoading), _defineProperty(_iconEleCls, prefixCls + '-icon__' + iconState, true), _iconEleCls); var selectHandle = function selectHandle() { var titleClass = props.titleClass ? prefixCls + '-title' + ' ' + props.className : prefixCls + '-title'; // const icon = (props.showIcon || props.loadData && this.state.dataLoading) ? // <span className={classNames(iconEleCls)}></span> : null; var icon = void 0; if (props.showIcon && props.icon) { icon = _react2["default"].createElement( 'span', { className: (0, _classnames2["default"])(prefixCls + '-iconEle', prefixCls + '-icon__customize') }, typeof currentIcon === 'function' ? _react2["default"].createElement(props.icon, _extends({}, _this4.props)) : props.icon ); } else if (props.showIcon || props.loadData && _this4.state.dataLoading) { icon = _react2["default"].createElement('span', { className: (0, _classnames2["default"])(iconEleCls) }); } var title = _react2["default"].createElement( 'span', { className: titleClass, style: props.titleStyle }, content ); var wrap = prefixCls + '-node-content-wrapper'; var domProps = { className: wrap + ' ' + wrap + '-' + (iconState === expandedState ? iconState : 'normal') }; if (!props.disabled) { if (props.selected || !props._dropTrigger && _this4.state.dragNodeHighlight) { domProps.className += ' ' + prefixCls + '-node-selected'; } domProps.onClick = function (e) { var _this = _this4; e.preventDefault(); if (props.selectable) { _this.onSelect(); } // not fire check event // if (props.checkable) { // this.onCheck(); // } }; if (props.onDoubleClick) { domProps.onDoubleClick = _this4.onDoubleClick; } if (props.onRightClick) { domProps.onContextMenu = _this4.onContextMenu; } if (props.onMouseEnter) { domProps.onMouseEnter = _this4.onMouseEnter; } if (props.onMouseLeave) { domProps.onMouseLeave = _this4.onMouseLeave; } if (props.draggable) { domProps.className += ' draggable'; if (ieOrEdge) { // ie bug! domProps.href = '#'; } domProps.draggable = true; domProps['aria-grabbed'] = true; domProps.onDragStart = _this4.onDragStart; } } //设置tabIndex if (props.focusable) { domProps.onKeyDown = _this4.onKeyDown; domProps.tabIndex = -1; if (props.tabIndexKey) { if (props.eventKey == props.tabIndexKey) { domProps.tabIndex = props.tabIndexValue; } } else if (props.pos == '0-0') { domProps.tabIndex = props.tabIndexValue; } } return _react2["default"].createElement( 'a', _extends({ ref: function ref(el) { _this4.selectHandle = el; }, pos: props.pos, title: typeof content === 'string' ? content : '' }, domProps), icon, title ); }; var liProps = {}; if (props.liAttr) { liProps = _extends({}, props.liAttr); } if (props.draggable) { liProps.onDragEnter = this.onDragEnter; liProps.onDragOver = this.onDragOver; liProps.onDragLeave = this.onDragLeave; liProps.onDrop = this.onDrop; liProps.onDragEnd = this.onDragEnd; } var disabledCls = ''; var dragOverCls = ''; if (props.disabled) { disabledCls = prefixCls + '-treenode-disabled'; } else if (props.dragOver) { dragOverCls = 'drag-over'; } else if (props.dragOverGapTop) { dragOverCls = 'drag-over-gap-top'; } else if (props.dragOverGapBottom) { dragOverCls = 'drag-over-gap-bottom'; } var filterCls = props.filterTreeNode ? props.filterTreeNode(this) ? 'filter-node' : '' : ''; var noopSwitcher = function noopSwitcher() { var _cls2; var cls = (_cls2 = {}, _defineProperty(_cls2, prefixCls + '-switcher', true), _defineProperty(_cls2, prefixCls + '-switcher-noop', true), _cls2); if (props.showLine) { // console.log('line---------'); cls[prefixCls + '-center_docu'] = !props.last; cls[prefixCls + '-bottom_docu'] = props.last; } else { cls[prefixCls + '-noline_docu'] = true; } return _react2["default"].createElement('span', { className: (0, _classnames2["default"])(cls) }); }; var selectedCls = props.selected ? prefixCls + '-treenode-selected' : ''; var focusedCls = props.focused ? prefixCls + '-treenode-focused' : ''; var expandedCls = prefixCls + '-treenode-' + expandedState; return _react2["default"].createElement( 'li', _extends({}, liProps, { style: props.style, className: (0, _classnames2["default"])(props.className, disabledCls, dragOverCls, filterCls, selectedCls, focusedCls, expandedCls) }), canRenderSwitcher ? this.renderSwitcher(props, expandedState) : noopSwitcher(), props.checkable ? this.renderCheckbox(props) : null, selectHandle(), newChildren ); }; return TreeNode; }(_react2["default"].Component); TreeNode.isTreeNode = 1; TreeNode.propTypes = { prefixCls: _propTypes2["default"].string, disabled: _propTypes2["default"].bool, disableCheckbox: _propTypes2["default"].bool, expanded: _propTypes2["default"].bool, isLeaf: _propTypes2["default"].bool, root: _propTypes2["default"].object, onSelect: _propTypes2["default"].func, openIcon: _propTypes2["default"].element, closeIcon: _propTypes2["default"].element, style: _propTypes2["default"].object, className: _propTypes2["default"].string, titleClass: _propTypes2["default"].string, titleStyle: _propTypes2["default"].object, switcherClass: _propTypes2["default"].string, switcherStyle: _propTypes2["default"].object }; TreeNode.defaultProps = { title: defaultTitle, tabIndexValue: 0, mustExpandable: false }; exports["default"] = TreeNode; module.exports = exports['default']; /***/ }), /***/ 1010: /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * 在此存储全局配置项 */ // 树懒加载功能,需要用到的变量 exports["default"] = { loadBuffer: 20, //懒加载时缓冲区数据量 defaultRowsInView: 20, //可视区数据量 rowDiff: 10 //行差值,需要重新截取数据的阈值 }; module.exports = exports["default"]; /***/ }), /***/ 102: /***/ (function(module, exports, __webpack_require__) { module.exports = { "default": __webpack_require__(68), __esModule: true }; /***/ }), /***/ 109: /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(12); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); function omit(obj, fields) { var shallowCopy = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, obj); for (var i = 0; i < fields.length; i++) { var key = fields[i]; delete shallowCopy[key]; } return shallowCopy; } /* harmony default export */ __webpack_exports__["default"] = (omit); /***/ }), /***/ 11: /***/ (function(module, exports) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self // eslint-disable-next-line no-new-func : Function('return this')(); if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef /***/ }), /***/ 110: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ function createChainedFunction() { for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { funcs[_key] = arguments[_key]; } return funcs.filter(function (f) { return f != null; }).reduce(function (acc, f) { if (typeof f !== 'function') { throw new Error('Invalid Argument Type, must only provide functions, undefined, or null.'); } if (acc === null) { return f; } return function chainedFunction() { for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } acc.apply(this, args); f.apply(this, args); }; }, null); } exports.default = createChainedFunction; /***/ }), /***/ 12: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _assign = __webpack_require__(102); var _assign2 = _interopRequireDefault(_assign); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = _assign2.default || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; /***/ }), /***/ 122: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = addEventListenerWrap; var _addDomEventListener = __webpack_require__(24); var _addDomEventListener2 = _interopRequireDefault(_addDomEventListener); var _reactDom = __webpack_require__(3); var _reactDom2 = _interopRequireDefault(_reactDom); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ function addEventListenerWrap(target, eventType, cb) { /* eslint camelcase: 2 */ var callback = _reactDom2.default.unstable_batchedUpdates ? function run(e) { _reactDom2.default.unstable_batchedUpdates(cb, e); } : cb; return (0, _addDomEventListener2.default)(target, eventType, callback); } /***/ }), /***/ 123: /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var util = { isAppearSupported: function isAppearSupported(props) { return props.transitionName && props.transitionAppear || props.animation.appear; }, isEnterSupported: function isEnterSupported(props) { return props.transitionName && props.transitionEnter || props.animation.enter; }, isLeaveSupported: function isLeaveSupported(props) { return props.transitionName && props.transitionLeave || props.animation.leave; }, allowAppearCallback: function allowAppearCallback(props) { return props.transitionAppear || props.animation.appear; }, allowEnterCallback: function allowEnterCallback(props) { return props.transitionEnter || props.animation.enter; }, allowLeaveCallback: function allowLeaveCallback(props) { return props.transitionLeave || props.animation.leave; } }; exports["default"] = util; module.exports = exports["default"]; /***/ }), /***/ 13: /***/ (function(module, exports, __webpack_require__) { var anObject = __webpack_require__(22); var IE8_DOM_DEFINE = __webpack_require__(56); var toPrimitive = __webpack_require__(43); var dP = Object.defineProperty; exports.f = __webpack_require__(8) ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); if (IE8_DOM_DEFINE) try { return dP(O, P, Attributes); } catch (e) { /* empty */ } if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; /***/ }), /***/ 137: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = splitComponentProps; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ function _objectEntries(obj) { var entries = []; var keys = Object.keys(obj); for (var k = 0; k < keys.length; ++k) { entries.push([keys[k], obj[keys[k]]]); }return entries; } /** * 分割要传入父元素和子元素的props * @param {[object]} props 传入的属性 * @param {[reactElement]} Component 组件 * @return {[array]} 返回数组,第一个元素为父元素props对象,第二个子元素props对象 */ function splitComponentProps(props, Component) { var componentPropTypes = Component.propTypes; var parentProps = {}; var childProps = {}; _objectEntries(props).forEach(function (_ref) { var propName = _ref[0], propValue = _ref[1]; if (componentPropTypes[propName]) { parentProps[propName] = propValue; } else { childProps[propName] = propValue; } }); return [parentProps, childProps]; } /***/ }), /***/ 14: /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; /***/ }), /***/ 15: /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(11); var core = __webpack_require__(6); var ctx = __webpack_require__(53); var hide = __webpack_require__(21); var has = __webpack_require__(14); var PROTOTYPE = 'prototype'; var $export = function (type, name, source) { var IS_FORCED = type & $export.F; var IS_GLOBAL = type & $export.G; var IS_STATIC = type & $export.S; var IS_PROTO = type & $export.P; var IS_BIND = type & $export.B; var IS_WRAP = type & $export.W; var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); var expProto = exports[PROTOTYPE]; var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; var key, own, out; if (IS_GLOBAL) source = name; for (key in source) { // contains in native own = !IS_FORCED && target && target[key] !== undefined; if (own && has(exports, key)) continue; // export native or passed out = own ? target[key] : source[key]; // prevent global pollution for namespaces exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] // bind timers to global for call from export context : IS_BIND && own ? ctx(out, global) // wrap global constructors for prevent change them in library : IS_WRAP && target[key] == out ? (function (C) { var F = function (a, b, c) { if (this instanceof C) { switch (arguments.length) { case 0: return new C(); case 1: return new C(a); case 2: return new C(a, b); } return new C(a, b, c); } return C.apply(this, arguments); }; F[PROTOTYPE] = C[PROTOTYPE]; return F; // make static versions for prototype methods })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% if (IS_PROTO) { (exports.virtual || (exports.virtual = {}))[key] = out; // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); } } }; // type bitmap $export.F = 1; // forced $export.G = 2; // global $export.S = 4; // static $export.P = 8; // proto $export.B = 16; // bind $export.W = 32; // wrap $export.U = 64; // safe $export.R = 128; // real proto method for `library` module.exports = $export; /***/ }), /***/ 16: /***/ (function(module, exports) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /***/ 162: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = all; var _createChainableTypeChecker = __webpack_require__(64); var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function all() { for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) { validators[_key] = arguments[_key]; } function allPropTypes() { for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } var error = null; validators.forEach(function (validator) { if (error != null) { return; } var result = validator.apply(undefined, args); if (result != null) { error = result; } }); return error; } return (0, _createChainableTypeChecker2.default)(allPropTypes); } /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ /***/ }), /***/ 163: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ var _react = __webpack_require__(0); var _react2 = _interopRequireDefault(_react); var _createChainableTypeChecker = __webpack_require__(64); var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function validate(props, propName, componentName, location, propFullName) { var propValue = props[propName]; var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue); if (_react2.default.isValidElement(propValue)) { return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement. You can usually obtain a ReactComponent or DOMElement ' + 'from a ReactElement by attaching a ref to it.'); } if ((propType !== 'object' || typeof propValue.render !== 'function') && propValue.nodeType !== 1) { return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement.'); } return null; } exports.default = (0, _createChainableTypeChecker2.default)(validate); /***/ }), /***/ 164: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = deprecated; var _warning = __webpack_require__(27); var _warning2 = _interopRequireDefault(_warning); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var warned = {}; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ function deprecated(validator, reason) { return function validate(props, propName, componentName, location, propFullName) { var componentNameSafe = componentName || '<<anonymous>>'; var propFullNameSafe = propFullName || propName; if (props[propName] != null) { var messageKey = componentName + '.' + propName; (0, _warning2.default)(warned[messageKey], 'The ' + location + ' `' + propFullNameSafe + '` of ' + ('`' + componentNameSafe + '` is deprecated. ' + reason + '.')); warned[messageKey] = true; } for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) { args[_key - 5] = arguments[_key]; } return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args)); }; } /* eslint-disable no-underscore-dangle */ function _resetWarned() { warned = {}; } deprecated._resetWarned = _resetWarned; /* eslint-enable no-underscore-dangle */ /***/ }), /***/ 165: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ var _react = __webpack_require__(0); var _react2 = _interopRequireDefault(_react); var _createChainableTypeChecker = __webpack_require__(64); var _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function elementType(props, propName, componentName, location, propFullName) { var propValue = props[propName]; var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue); if (_react2.default.isValidElement(propValue)) { return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).'); } if (propType !== 'function' && propType !== 'string') { return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).'); } return null; } exports.default = (0, _createChainableTypeChecker2.default)(elementType); /***/ }), /***/ 166: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = isRequiredForA11y; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ function isRequiredForA11y(validator) { return function validate(props, propName, componentName, location, propFullName) { var componentNameSafe = componentName || '<<anonymous>>'; var propFullNameSafe = propFullName || propName; if (props[propName] == null) { return new Error('The ' + location + ' `' + propFullNameSafe + '` is required to make ' + ('`' + componentNameSafe + '` accessible for users of assistive ') + 'technologies such as screen readers.'); } for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) { args[_key - 5] = arguments[_key]; } return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args)); }; } /***/ }), /***/ 167: /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ /** * @ignore * some key-codes definition and utils from closure-library * @author yiminghe@gmail.com */ var KeyCode = { /** * MAC_ENTER */ MAC_ENTER: 3, /** * BACKSPACE */ BACKSPACE: 8, /** * TAB */ TAB: 9, /** * NUMLOCK on FF/Safari Mac */ NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac /** * ENTER */ ENTER: 13, /** * SHIFT */ SHIFT: 16, /** * CTRL */ CTRL: 17, /** * ALT */ ALT: 18, /** * PAUSE */ PAUSE: 19, /** * CAPS_LOCK */ CAPS_LOCK: 20, /** * ESC */ ESC: 27, /** * SPACE */ SPACE: 32, /** * PAGE_UP */ PAGE_UP: 33, // also NUM_NORTH_EAST /** * PAGE_DOWN */ PAGE_DOWN: 34, // also NUM_SOUTH_EAST /** * END */ END: 35, // also NUM_SOUTH_WEST /** * HOME */ HOME: 36, // also NUM_NORTH_WEST /** * LEFT */ LEFT: 37, // also NUM_WEST /** * UP */ UP: 38, // also NUM_NORTH /** * RIGHT */ RIGHT: 39, // also NUM_EAST /** * DOWN */ DOWN: 40, // also NUM_SOUTH /** * PRINT_SCREEN */ PRINT_SCREEN: 44, /** * INSERT */ INSERT: 45, // also NUM_INSERT /** * DELETE */ DELETE: 46, // also NUM_DELETE /** * ZERO */ ZERO: 48, /** * ONE */ ONE: 49, /** * TWO */ TWO: 50, /** * THREE */ THREE: 51, /** * FOUR */ FOUR: 52, /** * FIVE */ FIVE: 53, /** * SIX */ SIX: 54, /** * SEVEN */ SEVEN: 55, /** * EIGHT */ EIGHT: 56, /** * NINE */ NINE: 57, /** * QUESTION_MARK */ QUESTION_MARK: 63, // needs localization /** * A */ A: 65, /** * B */ B: 66, /** * C */ C: 67, /** * D */ D: 68, /** * E */ E: 69, /** * F */ F: 70, /** * G */ G: 71, /** * H */ H: 72, /** * I */ I: 73, /** * J */ J: 74, /** * K */ K: 75, /** * L */ L: 76, /** * M */ M: 77, /** * N */ N: 78, /** * O */ O: 79, /** * P */ P: 80, /** * Q */ Q: 81, /** * R */ R: 82, /** * S */ S: 83, /** * T */ T: 84, /** * U */ U: 85, /** * V */ V: 86, /** * W */ W: 87, /** * X */ X: 88, /** * Y */ Y: 89, /** * Z */ Z: 90, /** * META */ META: 91, // WIN_KEY_LEFT /** * WIN_KEY_RIGHT */ WIN_KEY_RIGHT: 92, /** * CONTEXT_MENU */ CONTEXT_MENU: 93, /** * NUM_ZERO */ NUM_ZERO: 96, /** * NUM_ONE */ NUM_ONE: 97, /** * NUM_TWO */ NUM_TWO: 98, /** * NUM_THREE */ NUM_THREE: 99, /** * NUM_FOUR */ NUM_FOUR: 100, /** * NUM_FIVE */ NUM_FIVE: 101, /** * NUM_SIX */ NUM_SIX: 102, /** * NUM_SEVEN */ NUM_SEVEN: 103, /** * NUM_EIGHT */ NUM_EIGHT: 104, /** * NUM_NINE */ NUM_NINE: 105, /** * NUM_MULTIPLY */ NUM_MULTIPLY: 106, /** * NUM_PLUS */ NUM_PLUS: 107, /** * NUM_MINUS */ NUM_MINUS: 109, /** * NUM_PERIOD */ NUM_PERIOD: 110, /** * NUM_DIVISION */ NUM_DIVISION: 111, /** * F1 */ F1: 112, /** * F2 */ F2: 113, /** * F3 */ F3: 114, /** * F4 */ F4: 115, /** * F5 */ F5: 116, /** * F6 */ F6: 117, /** * F7 */ F7: 118, /** * F8 */ F8: 119, /** * F9 */ F9: 120, /** * F10 */ F10: 121, /** * F11 */ F11: 122, /** * F12 */ F12: 123, /** * NUMLOCK */ NUMLOCK: 144, /** * SEMICOLON */ SEMICOLON: 186, // needs localization /** * DASH */ DASH: 189, // needs localization /** * EQUALS */ EQUALS: 187, // needs localization /** * COMMA */ COMMA: 188, // needs localization /** * PERIOD */ PERIOD: 190, // needs localization /** * SLASH */ SLASH: 191, // needs localization /** * APOSTROPHE */ APOSTROPHE: 192, // needs localization /** * SINGLE_QUOTE */ SINGLE_QUOTE: 222, // needs localization /** * OPEN_SQUARE_BRACKET */ OPEN_SQUARE_BRACKET: 219, // needs localization /** * BACKSLASH */ BACKSLASH: 220, // needs localization /** * CLOSE_SQUARE_BRACKET */ CLOSE_SQUARE_BRACKET: 221, // needs localization /** * WIN_KEY */ WIN_KEY: 224, /** * MAC_FF_META */ MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91 /** * WIN_IME */ WIN_IME: 229 }; /* whether text and modified key is entered at the same time. */ KeyCode.isTextModifyingKeyEvent = function isTextModifyingKeyEvent(e) { var keyCode = e.keyCode; if (e.altKey && !e.ctrlKey || e.metaKey || // Function keys don't generate text keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) { return false; } // The following keys are quite harmless, even in combination with // CTRL, ALT or SHIFT. switch (keyCode) { case KeyCode.ALT: case KeyCode.CAPS_LOCK: case KeyCode.CONTEXT_MENU: case KeyCode.CTRL: case KeyCode.DOWN: case KeyCode.END: case KeyCode.ESC: case KeyCode.HOME: case KeyCode.INSERT: case KeyCode.LEFT: case KeyCode.MAC_FF_META: case KeyCode.META: case KeyCode.NUMLOCK: case KeyCode.NUM_CENTER: case KeyCode.PAGE_DOWN: case KeyCode.PAGE_UP: case KeyCode.PAUSE: case KeyCode.PRINT_SCREEN: case KeyCode.RIGHT: case KeyCode.SHIFT: case KeyCode.UP: case KeyCode.WIN_KEY: case KeyCode.WIN_KEY_RIGHT: return false; default: return true; } }; /* whether character is entered. */ KeyCode.isCharacterKey = function isCharacterKey(keyCode) { if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) { return true; } if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) { return true; } if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) { return true; } // Safari sends zero key code for non-latin characters. if (window.navigation.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) { return true; } switch (keyCode) { case KeyCode.SPACE: case KeyCode.QUESTION_MARK: case KeyCode.NUM_PLUS: case KeyCode.NUM_MINUS: case KeyCode.NUM_PERIOD: case KeyCode.NUM_DIVISION: case KeyCode.SEMICOLON: case KeyCode.DASH: case KeyCode.EQUALS: case KeyCode.COMMA: case KeyCode.PERIOD: case KeyCode.SLASH: case KeyCode.APOSTROPHE: case KeyCode.SINGLE_QUOTE: case KeyCode.OPEN_SQUARE_BRACKET: case KeyCode.BACKSLASH: case KeyCode.CLOSE_SQUARE_BRACKET: return true; default: return false; } }; module.exports = KeyCode; /***/ }), /***/ 168: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports.default = contains; /** * This source code is quoted from rc-util. * homepage: https://github.com/react-component/util */ function contains(root, n) { var node = n; while (node) { if (node === root) { return true; } node = node.parentNode; } return false; } /***/ }), /***/ 169: /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; /**