UNPKG

2.31 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
5var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
7exports.__esModule = true;
8exports.default = void 0;
9
10var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
12var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
13
14var _react = _interopRequireWildcard(require("react"));
15
16var _propTypes = _interopRequireDefault(require("prop-types"));
17
18var _classnames = _interopRequireDefault(require("classnames"));
19
20var _TabContext = require("./TabContext");
21
22var _utils = require("./utils");
23
24var propTypes = {
25 tag: _utils.tagPropType,
26 activeTab: _propTypes.default.any,
27 className: _propTypes.default.string,
28 cssModule: _propTypes.default.object
29};
30var defaultProps = {
31 tag: 'div'
32};
33
34var TabContent = /*#__PURE__*/function (_Component) {
35 (0, _inheritsLoose2.default)(TabContent, _Component);
36
37 TabContent.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {
38 if (prevState.activeTab !== nextProps.activeTab) {
39 return {
40 activeTab: nextProps.activeTab
41 };
42 }
43
44 return null;
45 };
46
47 function TabContent(props) {
48 var _this;
49
50 _this = _Component.call(this, props) || this;
51 _this.state = {
52 activeTab: _this.props.activeTab
53 };
54 return _this;
55 }
56
57 var _proto = TabContent.prototype;
58
59 _proto.render = function render() {
60 var _this$props = this.props,
61 className = _this$props.className,
62 cssModule = _this$props.cssModule,
63 Tag = _this$props.tag;
64 var attributes = (0, _utils.omit)(this.props, Object.keys(propTypes));
65 var classes = (0, _utils.mapToCssModules)((0, _classnames.default)('tab-content', className), cssModule);
66 return /*#__PURE__*/_react.default.createElement(_TabContext.TabContext.Provider, {
67 value: {
68 activeTabId: this.state.activeTab
69 }
70 }, /*#__PURE__*/_react.default.createElement(Tag, (0, _extends2.default)({}, attributes, {
71 className: classes
72 })));
73 };
74
75 return TabContent;
76}(_react.Component);
77
78var _default = TabContent;
79exports.default = _default;
80TabContent.propTypes = propTypes;
81TabContent.defaultProps = defaultProps;
\No newline at end of file