1 | "use strict";
|
2 |
|
3 | var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
4 |
|
5 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
6 |
|
7 | Object.defineProperty(exports, "__esModule", {
|
8 | value: true
|
9 | });
|
10 | exports["default"] = void 0;
|
11 |
|
12 | var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
13 |
|
14 | var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
15 |
|
16 | var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
17 |
|
18 | var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
19 |
|
20 | var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
21 |
|
22 | var _react = _interopRequireWildcard(require("react"));
|
23 |
|
24 | var _propTypes = _interopRequireDefault(require("prop-types"));
|
25 |
|
26 | var _noop = _interopRequireDefault(require("lodash/noop"));
|
27 |
|
28 | var _configure = require("../configure");
|
29 |
|
30 | var _enum = require("./enum");
|
31 |
|
32 | var _TabPane = _interopRequireDefault(require("./TabPane"));
|
33 |
|
34 | var _TabGroup = _interopRequireDefault(require("./TabGroup"));
|
35 |
|
36 | var _TabsWithContext = _interopRequireDefault(require("./TabsWithContext"));
|
37 |
|
38 | var Tabs = function Tabs(props) {
|
39 | var customizedCode = props.customizedCode,
|
40 | _props$customizable = props.customizable,
|
41 | customizable = _props$customizable === void 0 ? customizedCode ? (0, _configure.getCustomizable)('Tabs') : undefined : _props$customizable;
|
42 | var $customizable = customizedCode ? customizable : false;
|
43 |
|
44 | var _useState = (0, _react.useState)(!$customizable),
|
45 | _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
46 | loaded = _useState2[0],
|
47 | setLoaded = _useState2[1];
|
48 |
|
49 | var _useState3 = (0, _react.useState)(),
|
50 | _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
51 | customized = _useState4[0],
|
52 | setCustomized = _useState4[1];
|
53 |
|
54 | var loadCustomized = (0, _react.useCallback)(
|
55 |
|
56 | (0, _asyncToGenerator2["default"])(
|
57 |
|
58 | _regenerator["default"].mark(function _callee() {
|
59 | var customizedLoad, remoteCustomized;
|
60 | return _regenerator["default"].wrap(function _callee$(_context) {
|
61 | while (1) {
|
62 | switch (_context.prev = _context.next) {
|
63 | case 0:
|
64 | if (!customizedCode) {
|
65 | _context.next = 11;
|
66 | break;
|
67 | }
|
68 |
|
69 | setLoaded(false);
|
70 | customizedLoad = (0, _configure.getConfig)('customizedLoad');
|
71 | _context.prev = 3;
|
72 | _context.next = 6;
|
73 | return customizedLoad(customizedCode, 'Tabs');
|
74 |
|
75 | case 6:
|
76 | remoteCustomized = _context.sent;
|
77 | setCustomized((0, _objectSpread2["default"])({
|
78 | panes: {}
|
79 | }, remoteCustomized));
|
80 |
|
81 | case 8:
|
82 | _context.prev = 8;
|
83 | setLoaded(true);
|
84 | return _context.finish(8);
|
85 |
|
86 | case 11:
|
87 | case "end":
|
88 | return _context.stop();
|
89 | }
|
90 | }
|
91 | }, _callee, null, [[3,, 8, 11]]);
|
92 | })), [customizedCode]);
|
93 | (0, _react.useEffect)(function () {
|
94 | if ($customizable) {
|
95 | loadCustomized();
|
96 | }
|
97 | }, [$customizable, loadCustomized]);
|
98 | return loaded ? _react["default"].createElement(_TabsWithContext["default"], (0, _extends2["default"])({}, props, {
|
99 | customized: customized,
|
100 | setCustomized: setCustomized,
|
101 | customizable: $customizable
|
102 | })) : null;
|
103 | };
|
104 |
|
105 | Tabs.displayName = 'Tabs';
|
106 | Tabs.propTypes = {
|
107 | destroyInactiveTabPane: _propTypes["default"].bool,
|
108 | onChange: _propTypes["default"].func,
|
109 | children: _propTypes["default"].any,
|
110 | prefixCls: _propTypes["default"].string,
|
111 | className: _propTypes["default"].string,
|
112 | style: _propTypes["default"].object,
|
113 | activeKey: _propTypes["default"].string,
|
114 | defaultActiveKey: _propTypes["default"].string,
|
115 | keyboard: _propTypes["default"].bool,
|
116 | hideAdd: _propTypes["default"].bool,
|
117 | tabPosition: _propTypes["default"].oneOf([_enum.TabsPosition.top, _enum.TabsPosition.right, _enum.TabsPosition.bottom, _enum.TabsPosition.left]),
|
118 | type: _propTypes["default"].oneOf([_enum.TabsType.card, _enum.TabsType.line, _enum.TabsType['editable-card']])
|
119 | };
|
120 | Tabs.defaultProps = {
|
121 | hideAdd: false,
|
122 | destroyInactiveTabPane: false,
|
123 | onChange: _noop["default"],
|
124 | keyboard: true,
|
125 | tabPosition: _enum.TabsPosition.top,
|
126 | type: _enum.TabsType.line
|
127 | };
|
128 | Tabs.TabPane = _TabPane["default"];
|
129 | Tabs.TabGroup = _TabGroup["default"];
|
130 | var _default = Tabs;
|
131 | exports["default"] = _default;
|
132 |
|