1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4 |
|
5 | exports.__esModule = true;
|
6 | exports.default = void 0;
|
7 |
|
8 | var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
9 |
|
10 | var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
|
11 |
|
12 | var _react = _interopRequireDefault(require("react"));
|
13 |
|
14 | var _uncontrollable = require("uncontrollable");
|
15 |
|
16 | var _TabContext = _interopRequireDefault(require("./TabContext"));
|
17 |
|
18 | var _SelectableContext = _interopRequireDefault(require("./SelectableContext"));
|
19 |
|
20 | var TabContainer =
|
21 |
|
22 | function (_React$Component) {
|
23 | (0, _inheritsLoose2.default)(TabContainer, _React$Component);
|
24 |
|
25 | function TabContainer(props) {
|
26 | var _this;
|
27 |
|
28 | _this = _React$Component.call(this, props) || this;
|
29 |
|
30 | _this.getControlledId = function (key) {
|
31 | return _this.getKey(key, 'tabpane');
|
32 | };
|
33 |
|
34 | _this.getControllerId = function (key) {
|
35 | return _this.getKey(key, 'tab');
|
36 | };
|
37 |
|
38 | _this.state = {
|
39 | tabContext: {
|
40 | onSelect: _this.props.onSelect,
|
41 | activeKey: _this.props.activeKey,
|
42 | transition: _this.props.transition,
|
43 | mountOnEnter: _this.props.mountOnEnter,
|
44 | unmountOnExit: _this.props.unmountOnExit,
|
45 | getControlledId: _this.getControlledId,
|
46 | getControllerId: _this.getControllerId
|
47 | }
|
48 | };
|
49 | return _this;
|
50 | }
|
51 |
|
52 | TabContainer.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {
|
53 | var activeKey = _ref.activeKey,
|
54 | mountOnEnter = _ref.mountOnEnter,
|
55 | unmountOnExit = _ref.unmountOnExit,
|
56 | transition = _ref.transition;
|
57 | return {
|
58 | tabContext: (0, _extends2.default)({}, prevState.tabContext, {
|
59 | activeKey: activeKey,
|
60 | mountOnEnter: mountOnEnter,
|
61 | unmountOnExit: unmountOnExit,
|
62 | transition: transition
|
63 | })
|
64 | };
|
65 | };
|
66 |
|
67 | var _proto = TabContainer.prototype;
|
68 |
|
69 | _proto.getKey = function getKey(key, type) {
|
70 | var _this$props = this.props,
|
71 | generateChildId = _this$props.generateChildId,
|
72 | id = _this$props.id;
|
73 | if (generateChildId) return generateChildId(key, type);
|
74 | return id ? id + "-" + type + "-" + key : null;
|
75 | };
|
76 |
|
77 | _proto.render = function render() {
|
78 | var _this$props2 = this.props,
|
79 | children = _this$props2.children,
|
80 | onSelect = _this$props2.onSelect;
|
81 | return _react.default.createElement(_TabContext.default.Provider, {
|
82 | value: this.state.tabContext
|
83 | }, _react.default.createElement(_SelectableContext.default.Provider, {
|
84 | value: onSelect
|
85 | }, children));
|
86 | };
|
87 |
|
88 | return TabContainer;
|
89 | }(_react.default.Component);
|
90 |
|
91 | var _default = (0, _uncontrollable.uncontrollable)(TabContainer, {
|
92 | activeKey: 'onSelect'
|
93 | });
|
94 |
|
95 | exports.default = _default;
|
96 | module.exports = exports["default"]; |
\ | No newline at end of file |