tinper-bee
Version:
React Components living for enterprise-class pc backend application
1,287 lines (1,009 loc) • 187 kB
JavaScript
(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 = 1626);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_0__;
/***/ }),
/***/ 1:
/***/ (function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_1__;
/***/ }),
/***/ 103:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*/
var React = __webpack_require__(0);
var factory = __webpack_require__(428);
if (typeof React === 'undefined') {
throw Error(
'create-react-class could not find the React object. If you are using script tags, ' +
'make sure that React is being loaded before create-react-class.'
);
}
// Hack to grab NoopUpdateQueue from isomorphic React
var ReactNoopUpdateQueue = new React.Component().updater;
module.exports = factory(
React.Component,
React.isValidElement,
ReactNoopUpdateQueue
);
/***/ }),
/***/ 1626:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(1627);
/***/ }),
/***/ 1627:
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(1628);
module.exports = __webpack_require__(1629);
/***/ }),
/***/ 1628:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 1629:
/***/ (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; }; // export default from './Tabs';
// 20181211animated,scrollAnimated(ScrollableTabBarMixin),inkBarAnimated(InkTabBarMixin)都是默认为true的
// 去掉所有的动画
var _createReactClass = __webpack_require__(103);
var _createReactClass2 = _interopRequireDefault(_createReactClass);
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _Tabs = __webpack_require__(1630);
var _SearchTabs = __webpack_require__(1646);
var _SearchTabs2 = _interopRequireDefault(_SearchTabs);
var _Tab = __webpack_require__(1647);
var _Tab2 = _interopRequireDefault(_Tab);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var Tabs = (0, _createReactClass2["default"])({
render: function render() {
var disableProps = {
animated: false,
scrollAnimated: false, // scrollableBar的class
inkBarAnimated: false, // inkBar的class
useTransform3d: false //是否使用translate3d來实现线条
};
return _react2["default"].createElement(_Tabs.Tabs, _extends({}, this.props, disableProps));
}
});
Tabs.TabPane = _Tabs.Tabs.TabPane;
Tabs.SearchTabs = _SearchTabs2["default"];
Tabs.SearchTabs.Item = _Tab2["default"];
exports["default"] = Tabs;
module.exports = exports['default'];
/***/ }),
/***/ 1630:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Tabs = undefined;
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 _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _KeyCode = __webpack_require__(1631);
var _KeyCode2 = _interopRequireDefault(_KeyCode);
var _TabPane = __webpack_require__(1632);
var _TabPane2 = _interopRequireDefault(_TabPane);
var _classnames2 = __webpack_require__(4);
var _classnames3 = _interopRequireDefault(_classnames2);
var _TabContent = __webpack_require__(1633);
var _TabContent2 = _interopRequireDefault(_TabContent);
var _ScrollableInkTabBar = __webpack_require__(1634);
var _ScrollableInkTabBar2 = _interopRequireDefault(_ScrollableInkTabBar);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _createReactClass = __webpack_require__(103);
var _createReactClass2 = _interopRequireDefault(_createReactClass);
var _beeIcon = __webpack_require__(1644);
var _beeIcon2 = _interopRequireDefault(_beeIcon);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": 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 _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } /**
* This source code is quoted from rc-tabs.
* homepage: https://github.com/react-component/tabs
*/
function noop() {}
function getDefaultActiveKey(props) {
var activeKey = void 0;
_react2["default"].Children.forEach(props.children, function (child) {
if (child && !activeKey && !child.props.disabled) {
activeKey = child.key;
}
});
return activeKey;
}
var Tabs = (0, _createReactClass2["default"])({
propTypes: {
destroyInactiveTabPane: _propTypes2["default"].bool,
renderTabBar: _propTypes2["default"].func.isRequired,
renderTabContent: _propTypes2["default"].func.isRequired,
onChange: _propTypes2["default"].func,
children: _propTypes2["default"].any,
clsPrefix: _propTypes2["default"].string,
className: _propTypes2["default"].string,
tabBarPosition: _propTypes2["default"].string,
style: _propTypes2["default"].object,
tabBarStyle: _propTypes2["default"].oneOf(["simple", "fill", "primary", "upborder", "fade", "downborder", "trapezoid", "editable-card"])
},
getDefaultProps: function getDefaultProps() {
return {
clsPrefix: "u-tabs",
destroyInactiveTabPane: false,
onChange: noop,
tabBarPosition: "top",
style: {},
renderTabContent: function renderTabContent() {
return _react2["default"].createElement(_TabContent2["default"], null);
},
renderTabBar: function renderTabBar() {
return _react2["default"].createElement(_ScrollableInkTabBar2["default"], null);
},
tabBarStyle: "simple",
animated: true
};
},
getInitialState: function getInitialState() {
var props = this.props;
var activeKey = void 0;
if ("activeKey" in props) {
activeKey = props.activeKey;
} else if ("defaultActiveKey" in props) {
activeKey = props.defaultActiveKey;
} else {
activeKey = getDefaultActiveKey(props);
}
return {
activeKey: activeKey
};
},
componentWillReceiveProps: function componentWillReceiveProps(nextProps) {
if ("activeKey" in nextProps && nextProps.activeKey != this.state.activeKey) {
this.setState({
activeKey: nextProps.activeKey
});
}
},
onTabClick: function onTabClick(activeKey) {
this.props.onTabClick && this.props.onTabClick(activeKey);
if (this.tabBar.props.onTabClick) {
this.tabBar.props.onTabClick(activeKey);
}
this.setActiveKey(activeKey);
},
onNavKeyDown: function onNavKeyDown(e) {
var eventKeyCode = e.keyCode;
if (eventKeyCode === _KeyCode2["default"].RIGHT || eventKeyCode === _KeyCode2["default"].DOWN) {
e.preventDefault();
var nextKey = this.getNextActiveKey(true);
this.onTabClick(nextKey);
} else if (eventKeyCode === _KeyCode2["default"].LEFT || eventKeyCode === _KeyCode2["default"].UP) {
e.preventDefault();
var previousKey = this.getNextActiveKey(false);
this.onTabClick(previousKey);
}
},
setActiveKey: function setActiveKey(activeKey) {
if (this.state.activeKey !== activeKey) {
if (!("activeKey" in this.props)) {
this.setState({
activeKey: activeKey
});
}
this.props.onChange(activeKey);
}
},
getNextActiveKey: function getNextActiveKey(next) {
var activeKey = this.state.activeKey;
var children = [];
_react2["default"].Children.forEach(this.props.children, function (c) {
if (c && !c.props.disabled) {
if (next) {
children.push(c);
} else {
children.unshift(c);
}
}
});
var length = children.length;
var ret = length && children[0].key;
children.forEach(function (child, i) {
if (child.key === activeKey) {
if (i === length - 1) {
ret = children[0].key;
} else {
ret = children[i + 1].key;
}
}
});
return ret;
},
onPrevClick: function onPrevClick(e) {
this.props.onPrevClick && this.props.onPrevClick(e);
},
onNextClick: function onNextClick(e) {
this.props.onNextClick && this.props.onNextClick(e);
},
createNewTab: function createNewTab(targetKey) {
var onEdit = this.props.onEdit;
if (onEdit) {
onEdit(targetKey, 'add');
}
},
removeTab: function removeTab(targetKey, e) {
e.stopPropagation();
if (!targetKey) {
return;
}
var onEdit = this.props.onEdit;
if (onEdit) {
onEdit(targetKey, 'remove');
}
},
render: function render() {
var _classnames,
_this = this;
var props = this.props;
var activeKey = props.activeKey,
defaultActiveKey = props.defaultActiveKey,
clsPrefix = props.clsPrefix,
tabBarPosition = props.tabBarPosition,
className = props.className,
renderTabContent = props.renderTabContent,
renderTabBar = props.renderTabBar,
tabBarStyle = props.tabBarStyle,
extraContent = props.extraContent,
animated = props.animated,
tabIndex = props.tabIndex,
children = props.children,
hideAdd = props.hideAdd,
scrollAnimated = props.scrollAnimated,
inkBarAnimated = props.inkBarAnimated,
useTransform3d = props.useTransform3d,
destroyInactiveTabPane = props.destroyInactiveTabPane,
onTabClick = props.onTabClick,
onEdit = props.onEdit,
onNextClick = props.onNextClick,
onPrevClick = props.onPrevClick,
onChange = props.onChange,
others = _objectWithoutProperties(props, ["activeKey", "defaultActiveKey", "clsPrefix", "tabBarPosition", "className", "renderTabContent", "renderTabBar", "tabBarStyle", "extraContent", "animated", "tabIndex", "children", "hideAdd", "scrollAnimated", "inkBarAnimated", "useTransform3d", "destroyInactiveTabPane", "onTabClick", "onEdit", "onNextClick", "onPrevClick", "onChange"]);
var cls = (0, _classnames3["default"])((_classnames = {}, _defineProperty(_classnames, clsPrefix, true), _defineProperty(_classnames, clsPrefix + "-" + tabBarPosition, true), _defineProperty(_classnames, className, !!className), _defineProperty(_classnames, clsPrefix + "-" + tabBarStyle, true), _classnames));
var renderProps = _extends({}, this.props, {
children: null,
inkBarAnimated: inkBarAnimated,
extraContent: extraContent,
className: cls
});
if (renderTabBar) {
this.tabBar = renderTabBar(renderProps, _ScrollableInkTabBar2["default"]);
} else {
this.tabBar = _react2["default"].createElement(_ScrollableInkTabBar2["default"], renderProps);
}
// only card type tabs can be added and closed
var childrenWithClose = [],
tabBarExtraContent = extraContent;
if (tabBarStyle === 'editable-card') {
childrenWithClose = [];
_react2["default"].Children.forEach(children, function (child, index) {
if (!_react2["default"].isValidElement(child)) return child;
var closable = child.props.closable;
closable = typeof closable === 'undefined' ? true : closable;
var closeIcon = closable ? _react2["default"].createElement(_beeIcon2["default"], {
type: "uf-close",
className: clsPrefix + "-close-x",
onClick: function onClick(e) {
return _this.removeTab(child.key, e);
}
}) : null;
childrenWithClose.push(_react2["default"].cloneElement(child, {
tab: _react2["default"].createElement(
"div",
{ className: closable ? undefined : clsPrefix + "-tab-unclosable" },
child.props.tab,
closeIcon
),
key: child.key || index
}));
});
// Add new tab handler
if (!hideAdd) {
tabBarExtraContent = _react2["default"].createElement(
"span",
null,
_react2["default"].createElement(_beeIcon2["default"], { type: "uf-add-s-o", className: clsPrefix + "-new-tab", onClick: this.createNewTab }),
extraContent
);
}
}
var contents = [_react2["default"].cloneElement(this.tabBar, {
clsPrefix: clsPrefix,
key: "tabBar",
onKeyDown: this.onNavKeyDown,
tabBarPosition: tabBarPosition,
extraContent: tabBarExtraContent,
onTabClick: this.onTabClick,
panels: childrenWithClose.length > 0 ? childrenWithClose : children,
activeKey: this.state.activeKey,
tabIndex: tabIndex,
onPrevClick: this.onPrevClick,
onNextClick: this.onNextClick
}), _react2["default"].cloneElement(renderTabContent(), {
clsPrefix: clsPrefix,
tabBarPosition: tabBarPosition,
animated: animated,
activeKey: this.state.activeKey,
destroyInactiveTabPane: props.destroyInactiveTabPane,
children: props.children,
// style: { height: '100%' },
onChange: this.setActiveKey,
key: "tabContent"
})];
if (tabBarPosition === "bottom") {
contents.reverse();
}
return _react2["default"].createElement(
"div",
_extends({ className: cls, style: props.style }, others),
contents
);
}
});
Tabs.TabPane = _TabPane2["default"];
exports.Tabs = Tabs;
/***/ }),
/***/ 1631:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
/**
* This source code is quoted from rc-tabs.
* homepage: https://github.com/react-component/tabs
*/
exports["default"] = {
/**
* LEFT
*/
LEFT: 37, // also NUM_WEST
/**
* UP
*/
UP: 38, // also NUM_NORTH
/**
* RIGHT
*/
RIGHT: 39, // also NUM_EAST
/**
* DOWN
*/
DOWN: 40 // also NUM_SOUTH
};
module.exports = exports["default"];
/***/ }),
/***/ 1632:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _classnames2 = __webpack_require__(4);
var _classnames3 = _interopRequireDefault(_classnames2);
var _createReactClass = __webpack_require__(103);
var _createReactClass2 = _interopRequireDefault(_createReactClass);
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); } /**
* This source code is quoted from rc-tabs.
* homepage: https://github.com/react-component/tabs
*/
var propTypes = {
className: _propTypes2["default"].string,
active: _propTypes2["default"].bool,
style: _propTypes2["default"].any,
destroyInactiveTabPane: _propTypes2["default"].bool,
forceRender: _propTypes2["default"].bool,
placeholder: _propTypes2["default"].node
};
var defaultProps = {
placeholder: null
};
var TabPane = function (_Component) {
_inherits(TabPane, _Component);
function TabPane() {
_classCallCheck(this, TabPane);
return _possibleConstructorReturn(this, _Component.apply(this, arguments));
}
TabPane.prototype.render = function render() {
var _classnames;
var props = this.props;
var className = props.className,
destroyInactiveTabPane = props.destroyInactiveTabPane,
active = props.active,
forceRender = props.forceRender;
this._isActived = this._isActived || active;
var clsPrefix = props.rootclsPrefix + "-tabpane";
var cls = (0, _classnames3["default"])((_classnames = {}, _defineProperty(_classnames, clsPrefix, 1), _defineProperty(_classnames, clsPrefix + "-inactive", !active), _defineProperty(_classnames, clsPrefix + "-active", active), _defineProperty(_classnames, className, className), _classnames));
var isRender = destroyInactiveTabPane ? active : this._isActived;
return _react2["default"].createElement(
"div",
{
style: props.style,
role: "tabpanel",
"aria-hidden": props.active ? "false" : "true",
className: cls
},
isRender || forceRender ? props.children : props.placeholder
);
};
return TabPane;
}(_react.Component);
TabPane.propTypes = propTypes;
TabPane.defaultProps = defaultProps;
exports["default"] = TabPane;
module.exports = exports["default"];
/***/ }),
/***/ 1633:
/***/ (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 _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _classnames2 = __webpack_require__(4);
var _classnames3 = _interopRequireDefault(_classnames2);
var _utils = __webpack_require__(673);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _createReactClass = __webpack_require__(103);
var _createReactClass2 = _interopRequireDefault(_createReactClass);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": 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; } /**
* This source code is quoted from rc-tabs.
* homepage: https://github.com/react-component/tabs
*/
var TabContent = (0, _createReactClass2["default"])({
propTypes: {
animated: _propTypes2["default"].bool,
animatedWithMargin: _propTypes2["default"].bool,
clsPrefix: _propTypes2["default"].string,
children: _propTypes2["default"].any,
activeKey: _propTypes2["default"].string,
style: _propTypes2["default"].any,
tabBarPosition: _propTypes2["default"].string
},
getDefaultProps: function getDefaultProps() {
return {
animated: true
};
},
getTabPanes: function getTabPanes() {
var props = this.props;
var activeKey = props.activeKey;
var children = props.children;
var newChildren = [];
_react2["default"].Children.forEach(children, function (child) {
if (!child) {
return;
}
var key = child.key;
var active = activeKey === key;
newChildren.push(_react2["default"].cloneElement(child, {
active: active,
destroyInactiveTabPane: props.destroyInactiveTabPane,
rootclsPrefix: props.clsPrefix
}));
});
return newChildren;
},
render: function render() {
var _classnames;
var props = this.props;
var clsPrefix = props.clsPrefix,
children = props.children,
activeKey = props.activeKey,
tabBarPosition = props.tabBarPosition,
animated = props.animated,
animatedWithMargin = props.animatedWithMargin;
var style = props.style;
var classes = (0, _classnames3["default"])((_classnames = {}, _defineProperty(_classnames, clsPrefix + '-content', true), _defineProperty(_classnames, animated ? clsPrefix + '-content-animated' : clsPrefix + '-content-no-animated', true), _classnames));
if (animated) {
var activeIndex = (0, _utils.getActiveIndex)(children, activeKey);
if (activeIndex !== -1) {
var animatedStyle = animatedWithMargin ? (0, _utils.getMarginStyle)(activeIndex, tabBarPosition) : (0, _utils.getTransformPropValue)((0, _utils.getTransformByIndex)(activeIndex, tabBarPosition));
style = _extends({}, style, animatedStyle);
} else {
style = _extends({}, style, {
display: 'none'
});
}
}
return _react2["default"].createElement(
'div',
{
className: classes,
style: style
},
this.getTabPanes()
);
}
});
exports["default"] = TabContent;
module.exports = exports['default'];
/***/ }),
/***/ 1634:
/***/ (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 _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _reactDom = __webpack_require__(3);
var _reactDom2 = _interopRequireDefault(_reactDom);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _InkTabBarNode = __webpack_require__(1635);
var _InkTabBarNode2 = _interopRequireDefault(_InkTabBarNode);
var _TabBarTabsNode = __webpack_require__(1636);
var _TabBarTabsNode2 = _interopRequireDefault(_TabBarTabsNode);
var _TabBarRootNode = __webpack_require__(1638);
var _TabBarRootNode2 = _interopRequireDefault(_TabBarRootNode);
var _ScrollableTabBarNode = __webpack_require__(1639);
var _ScrollableTabBarNode2 = _interopRequireDefault(_ScrollableTabBarNode);
var _SaveRef = __webpack_require__(1643);
var _SaveRef2 = _interopRequireDefault(_SaveRef);
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 _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
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); } /**
* This source code is quoted from rc-tabs.
* homepage: https://github.com/react-component/tabs
*/
var ScrollableInkTabBar = function (_React$Component) {
_inherits(ScrollableInkTabBar, _React$Component);
function ScrollableInkTabBar() {
_classCallCheck(this, ScrollableInkTabBar);
return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));
}
ScrollableInkTabBar.prototype.componentDidMount = function componentDidMount() {
var _this2 = this;
_reactDom2["default"].findDOMNode(this).addEventListener('DNDclick', function (e) {
if (e && e.detail && e.detail.key) {
_this2.onTabClick.call(_this2, e.detail.key);
}
});
};
ScrollableInkTabBar.prototype.componentWillUnmount = function componentWillUnmount() {
var _this3 = this;
_reactDom2["default"].findDOMNode(this).removeEventListener('DNDclick', function (e) {
if (e && e.detail && e.detail.key) {
_this3.onTabClick.call(_this3, e.detail.key);
}
});
};
ScrollableInkTabBar.prototype.render = function render() {
var _props = this.props,
renderTabBarNode = _props.children,
restProps = _objectWithoutProperties(_props, ['children']);
return _react2["default"].createElement(
_SaveRef2["default"],
null,
function (saveRef, getRef) {
return _react2["default"].createElement(
_TabBarRootNode2["default"],
_extends({ saveRef: saveRef }, restProps),
_react2["default"].createElement(
_ScrollableTabBarNode2["default"],
_extends({ saveRef: saveRef, getRef: getRef }, restProps),
_react2["default"].createElement(_TabBarTabsNode2["default"], _extends({ saveRef: saveRef, renderTabBarNode: renderTabBarNode }, restProps)),
_react2["default"].createElement(_InkTabBarNode2["default"], _extends({ saveRef: saveRef, getRef: getRef }, restProps))
)
);
}
);
};
return ScrollableInkTabBar;
}(_react2["default"].Component);
exports["default"] = ScrollableInkTabBar;
ScrollableInkTabBar.propTypes = {
children: _propTypes2["default"].func
};
module.exports = exports['default'];
/***/ }),
/***/ 1635:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _classnames2 = __webpack_require__(4);
var _classnames3 = _interopRequireDefault(_classnames2);
var _utils = __webpack_require__(673);
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); } /**
* This source code is quoted from rc-tabs.
* homepage: https://github.com/react-component/tabs
*/
function _componentDidUpdate(component, init) {
var _component$props = component.props,
styles = _component$props.styles,
panels = _component$props.panels,
activeKey = _component$props.activeKey,
direction = _component$props.direction;
var rootNode = component.props.getRef('root');
var wrapNode = component.props.getRef('nav') || rootNode;
var inkBarNode = component.props.getRef('inkBar');
var activeTab = component.props.getRef('activeTab');
var inkBarNodeStyle = inkBarNode.style;
var tabBarPosition = component.props.tabBarPosition;
var activeIndex = (0, _utils.getActiveIndex)(panels, activeKey);
if (init) {
// prevent mount animation
inkBarNodeStyle.display = 'none';
}
if (activeTab) {
var tabNode = activeTab;
var transformSupported = (0, _utils.isTransformSupported)(inkBarNodeStyle);
// Reset current style
(0, _utils.setTransform)(inkBarNodeStyle, '');
inkBarNodeStyle.width = '';
inkBarNodeStyle.height = '';
inkBarNodeStyle.left = '';
inkBarNodeStyle.top = '';
inkBarNodeStyle.bottom = '';
inkBarNodeStyle.right = '';
if (tabBarPosition === 'top' || tabBarPosition === 'bottom') {
var left = (0, _utils.getLeft)(tabNode, wrapNode);
var width = tabNode.offsetWidth;
// If tabNode'width width equal to wrapNode'width when tabBarPosition is top or bottom
// It means no css working, then ink bar should not have width until css is loaded
// Fix https://github.com/ant-design/ant-design/issues/7564
if (width === rootNode.offsetWidth) {
width = 0;
} else if (styles.inkBar && styles.inkBar.width !== undefined) {
width = parseFloat(styles.inkBar.width, 10);
if (width) {
left += (tabNode.offsetWidth - width) / 2;
}
}
if (direction === 'rtl') {
left = (0, _utils.getStyle)(tabNode, 'margin-left') - left;
}
// use 3d gpu to optimize render
if (transformSupported) {
(0, _utils.setTransform)(inkBarNodeStyle, 'translate3d(' + left + 'px,0,0)');
} else {
inkBarNodeStyle.left = left + 'px';
}
inkBarNodeStyle.width = width + 'px';
} else {
var top = (0, _utils.getTop)(tabNode, wrapNode, true);
var height = tabNode.offsetHeight;
if (styles.inkBar && styles.inkBar.height !== undefined) {
height = parseFloat(styles.inkBar.height, 10);
if (height) {
top += (tabNode.offsetHeight - height) / 2;
}
}
if (transformSupported) {
(0, _utils.setTransform)(inkBarNodeStyle, 'translate3d(0,' + top + 'px,0)');
inkBarNodeStyle.top = '0';
} else {
inkBarNodeStyle.top = top + 'px';
}
inkBarNodeStyle.height = height + 'px';
}
}
inkBarNodeStyle.display = activeIndex !== -1 ? 'block' : 'none';
}
var InkTabBarNode = function (_React$Component) {
_inherits(InkTabBarNode, _React$Component);
function InkTabBarNode() {
_classCallCheck(this, InkTabBarNode);
return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));
}
InkTabBarNode.prototype.componentDidMount = function componentDidMount() {
var _this2 = this;
this.timeout = setTimeout(function () {
_componentDidUpdate(_this2, true);
}, 0);
};
InkTabBarNode.prototype.componentDidUpdate = function componentDidUpdate() {
_componentDidUpdate(this);
};
InkTabBarNode.prototype.componentWillUnmount = function componentWillUnmount() {
clearTimeout(this.timeout);
};
InkTabBarNode.prototype.render = function render() {
var _classnames;
var _props = this.props,
clsPrefix = _props.clsPrefix,
styles = _props.styles,
inkBarAnimated = _props.inkBarAnimated;
var className = clsPrefix + '-ink-bar';
var classes = (0, _classnames3["default"])((_classnames = {}, _defineProperty(_classnames, className, true), _defineProperty(_classnames, inkBarAnimated ? className + '-animated' : className + '-no-animated', true), _classnames));
return _react2["default"].createElement('div', {
style: styles.inkBar,
className: classes,
key: 'inkBar',
ref: this.props.saveRef('inkBar')
});
};
return InkTabBarNode;
}(_react2["default"].Component);
exports["default"] = InkTabBarNode;
InkTabBarNode.propTypes = {
clsPrefix: _propTypes2["default"].string,
styles: _propTypes2["default"].object,
inkBarAnimated: _propTypes2["default"].bool,
saveRef: _propTypes2["default"].func,
direction: _propTypes2["default"].string
};
InkTabBarNode.defaultProps = {
clsPrefix: '',
inkBarAnimated: true,
styles: {},
saveRef: function saveRef() {}
};
module.exports = exports['default'];
/***/ }),
/***/ 1636:
/***/ (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 _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _warning = __webpack_require__(1637);
var _warning2 = _interopRequireDefault(_warning);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _utils = __webpack_require__(673);
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 TabBarTabsNode = function (_React$Component) {
_inherits(TabBarTabsNode, _React$Component);
function TabBarTabsNode(props) {
_classCallCheck(this, TabBarTabsNode);
return _possibleConstructorReturn(this, _React$Component.call(this, props));
}
TabBarTabsNode.prototype.onTabClick = function onTabClick(key) {
this.props.onTabClick(key);
};
TabBarTabsNode.prototype.render = function render() {
var _this2 = this;
var _props = this.props,
children = _props.panels,
activeKey = _props.activeKey,
clsPrefix = _props.clsPrefix,
tabBarGutter = _props.tabBarGutter,
saveRef = _props.saveRef,
tabBarPosition = _props.tabBarPosition,
renderTabBarNode = _props.renderTabBarNode,
direction = _props.direction;
var rst = [];
_react2["default"].Children.forEach(children, function (child, index) {
if (!child) {
return;
}
var key = child.key;
var cls = activeKey === key ? clsPrefix + '-tab-active' : '';
cls += ' ' + clsPrefix + '-tab';
var events = {};
if (child.props.disabled) {
cls += ' ' + clsPrefix + '-tab-disabled';
} else {
events = {
onClick: _this2.onTabClick.bind(_this2, key)
};
}
var ref = {};
if (activeKey === key) {
ref.ref = saveRef('activeTab');
}
var gutter = tabBarGutter && index === children.length - 1 ? 0 : tabBarGutter;
var marginProperty = direction === 'rtl' ? 'marginLeft' : 'marginRight';
var style = _defineProperty({}, (0, _utils.isVertical)(tabBarPosition) ? 'marginBottom' : marginProperty, gutter);
(0, _warning2["default"])('tab' in child.props, 'There must be `tab` property on children of Tabs.');
var node = _react2["default"].createElement(
'div',
_extends({
role: 'tab',
'aria-disabled': child.props.disabled ? 'true' : 'false',
'aria-selected': activeKey === key ? 'true' : 'false'
}, events, {
className: cls,
key: key,
style: style
}, ref, {
nid: child.props.nid,
uitype: child.props.uitype,
nodekey: key
}),
child.props.tab
);
if (renderTabBarNode) {
node = renderTabBarNode(node);
}
rst.push(node);
});
return _react2["default"].createElement(
'div',
{ ref: saveRef('navTabsContainer') },
rst
);
};
return TabBarTabsNode;
}(_react2["default"].Component);
exports["default"] = TabBarTabsNode;
TabBarTabsNode.propTypes = {
activeKey: _propTypes2["default"].string,
panels: _propTypes2["default"].node,
clsPrefix: _propTypes2["default"].string,
tabBarGutter: _propTypes2["default"].number,
onTabClick: _propTypes2["default"].func,
saveRef: _propTypes2["default"].func,
renderTabBarNode: _propTypes2["default"].func,
tabBarPosition: _propTypes2["default"].string,
direction: _propTypes2["default"].string
};
TabBarTabsNode.defaultProps = {
panels: [],
clsPrefix: [],
tabBarGutter: null,
onTabClick: function onTabClick() {},
saveRef: function saveRef() {}
};
module.exports = exports['default'];
/***/ }),
/***/ 1637:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(process) {/**
* Copyright (c) 2014-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* Similar to invariant but only logs a warning if the condition is not met.
* This can be used to log issues in development environments in critical
* paths. Removing the logging code for production environments will keep the
* same logic and follow the same code paths.
*/
var __DEV__ = process.env.NODE_ENV !== 'production';
var warning = function() {};
if (__DEV__) {
var printWarning = function printWarning(format, args) {
var len = arguments.length;
args = new Array(len > 1 ? len - 1 : 0);
for (var key = 1; key < len; key++) {
args[key - 1] = arguments[key];
}
var argIndex = 0;
var message = 'Warning: ' +
format.replace(/%s/g, function() {
return args[argIndex++];
});
if (typeof console !== 'undefined') {
console.error(message);
}
try {
// --- Welcome to debugging React ---
// This error was thrown as a convenience so that you can use this stack
// to find the callsite that caused this warning to fire.
throw new Error(message);
} catch (x) {}