choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
69 lines (56 loc) • 2.86 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _createReactClass = _interopRequireDefault(require("create-react-class"));
var _classnames2 = _interopRequireDefault(require("classnames"));
var _utils = require("./utils");
var TabPane = (0, _createReactClass["default"])({
displayName: 'TabPane',
propTypes: {
className: _propTypes["default"].string,
active: _propTypes["default"].bool,
style: _propTypes["default"].any,
destroyInactiveTabPane: _propTypes["default"].bool,
forceRender: _propTypes["default"].bool,
placeholder: _propTypes["default"].node
},
getDefaultProps: function getDefaultProps() {
return {
placeholder: null
};
},
render: function render() {
var _classnames;
var _this$props = this.props,
className = _this$props.className,
destroyInactiveTabPane = _this$props.destroyInactiveTabPane,
active = _this$props.active,
forceRender = _this$props.forceRender,
rootPrefixCls = _this$props.rootPrefixCls,
style = _this$props.style,
children = _this$props.children,
placeholder = _this$props.placeholder,
restProps = (0, _objectWithoutProperties2["default"])(_this$props, ["className", "destroyInactiveTabPane", "active", "forceRender", "rootPrefixCls", "style", "children", "placeholder"]);
this._isActived = this._isActived || active;
var prefixCls = "".concat(rootPrefixCls, "-tabpane");
var cls = (0, _classnames2["default"])((_classnames = {}, (0, _defineProperty2["default"])(_classnames, prefixCls, 1), (0, _defineProperty2["default"])(_classnames, "".concat(prefixCls, "-inactive"), !active), (0, _defineProperty2["default"])(_classnames, "".concat(prefixCls, "-active"), active), (0, _defineProperty2["default"])(_classnames, className, className), _classnames));
var isRender = destroyInactiveTabPane ? active : this._isActived;
return _react["default"].createElement("div", (0, _extends2["default"])({
style: style,
role: "tabpanel",
"aria-hidden": active ? 'false' : 'true',
className: cls
}, (0, _utils.getDataAttr)(restProps)), isRender || forceRender ? children : placeholder);
}
});
var _default = TabPane;
exports["default"] = _default;
//# sourceMappingURL=TabPane.js.map