@hi-ui/tabs 4.0.0-alpha.9 → 4.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -33,7 +33,9 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
33
33
  itemRef = _ref.itemRef,
34
34
  draggable = _ref.draggable,
35
35
  _ref$type = _ref.type,
36
- type = _ref$type === void 0 ? 'default' : _ref$type,
36
+ type = _ref$type === void 0 ? 'line' : _ref$type,
37
+ _ref$closeable = _ref.closeable,
38
+ closeable = _ref$closeable === void 0 ? true : _ref$closeable,
37
39
  _ref$direction = _ref.direction,
38
40
  layout = _ref$direction === void 0 ? 'horizontal' : _ref$direction;
39
41
 
@@ -47,7 +49,7 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
47
49
 
48
50
  var _onClick = useCallback(function (e) {
49
51
  if (onTabClick) {
50
- onTabClick(tabId);
52
+ onTabClick(tabId, e);
51
53
  }
52
54
  }, [onTabClick, tabId]);
53
55
 
@@ -68,8 +70,10 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
68
70
 
69
71
  if (_onDragStart) {
70
72
  _onDragStart(e, {
71
- tabId: tabId,
72
- tabTitle: tabTitle
73
+ dragNode: {
74
+ tabId: tabId,
75
+ tabTitle: tabTitle
76
+ }
73
77
  });
74
78
  }
75
79
  },
@@ -81,8 +85,10 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
81
85
 
82
86
  if (_onDragEnd) {
83
87
  _onDragEnd(e, {
84
- tabId: tabId,
85
- tabTitle: tabTitle
88
+ dragNode: {
89
+ tabId: tabId,
90
+ tabTitle: tabTitle
91
+ }
86
92
  });
87
93
  }
88
94
  },
@@ -120,8 +126,10 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
120
126
 
121
127
  if (_onDragOver) {
122
128
  _onDragOver(e, {
123
- tabId: tabId,
124
- tabTitle: tabTitle
129
+ targetNode: {
130
+ tabId: tabId,
131
+ tabTitle: tabTitle
132
+ }
125
133
  });
126
134
  }
127
135
  },
@@ -138,7 +146,7 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
138
146
  tabId: tabId,
139
147
  tabTitle: tabTitle
140
148
  },
141
- dropNode: {
149
+ targetNode: {
142
150
  tabId: passedData.tabId,
143
151
  tabTitle: passedData.tabTitle
144
152
  },
@@ -150,7 +158,7 @@ var TabItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
150
158
  className: prefixCls + "-item__title"
151
159
  }, tabTitle), type === 'desc' && /*#__PURE__*/React.createElement("span", {
152
160
  className: prefixCls + "-item__desc"
153
- }, tabDesc), editable && /*#__PURE__*/React.createElement("span", {
161
+ }, tabDesc), editable && closeable && /*#__PURE__*/React.createElement("span", {
154
162
  className: prefixCls + "__close-btn",
155
163
  onClick: function onClick(e) {
156
164
  e.stopPropagation();
@@ -170,4 +178,3 @@ if (__DEV__) {
170
178
  }
171
179
 
172
180
  export { TabItem };
173
- //# sourceMappingURL=TabItem.js.map
@@ -14,6 +14,8 @@ import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
14
14
  import { getPrefixCls, cx } from '@hi-ui/classname';
15
15
  import { TabInk } from './TabInk.js';
16
16
  import { LeftOutlined, UpOutlined, RightOutlined, DownOutlined, PlusOutlined } from '@hi-ui/icons';
17
+ import { isUndef } from '@hi-ui/type-assertion';
18
+ import { IconButton } from '@hi-ui/icon-button';
17
19
  var _role = 'tabs';
18
20
 
19
21
  var _prefix = getPrefixCls(_role);
@@ -41,13 +43,20 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
41
43
  onDrop = _ref.onDrop,
42
44
  onDragEnd = _ref.onDragEnd,
43
45
  _ref$type = _ref.type,
44
- type = _ref$type === void 0 ? 'default' : _ref$type;
46
+ type = _ref$type === void 0 ? 'line' : _ref$type,
47
+ extra = _ref.extra;
45
48
 
46
- var _a, _b;
49
+ var _a;
47
50
 
48
- var _useUncontrolledState = useUncontrolledState(defaultActiveId || ((_a = data[0]) === null || _a === void 0 ? void 0 : _a.tabId), activeId, onChange),
49
- activeTab = _useUncontrolledState[0],
50
- setActiveTab = _useUncontrolledState[1];
51
+ var _useUncontrolledState = useUncontrolledState(function () {
52
+ if (isUndef(defaultActiveId)) {
53
+ return data[0] ? data[0].tabId : '';
54
+ }
55
+
56
+ return defaultActiveId;
57
+ }, activeId, onChange),
58
+ activeTabId = _useUncontrolledState[0],
59
+ setActiveTabId = _useUncontrolledState[1];
51
60
 
52
61
  var _useState = useState(null),
53
62
  innerRef = _useState[0],
@@ -71,21 +80,23 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
71
80
  return direction === 'horizontal' ? (scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.clientWidth) > (innerRef === null || innerRef === void 0 ? void 0 : innerRef.clientWidth) : (scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.clientHeight) > (innerRef === null || innerRef === void 0 ? void 0 : innerRef.clientHeight);
72
81
  }
73
82
  }, [scrollRef, innerRef, direction]);
74
- var onClickTab = useCallback(function (key) {
83
+ var onClickTab = useCallback(function (key, event) {
75
84
  if (onTabClick) {
76
- onTabClick(key);
85
+ onTabClick(key, event);
77
86
  }
78
87
 
79
- if (key !== activeTab && setActiveTab) {
80
- setActiveTab(key);
88
+ if (key !== activeTabId && setActiveTabId) {
89
+ setActiveTabId(key);
81
90
  }
82
- }, [activeTab, onTabClick, setActiveTab]);
91
+ }, [activeTabId, onTabClick, setActiveTabId]);
83
92
  return /*#__PURE__*/React.createElement("div", {
84
93
  style: style,
85
94
  className: cx(prefixCls + "__list", (_cx = {}, _cx[prefixCls + "__list--" + type] = type, _cx), className),
86
95
  ref: ref
87
- }, showScrollBtn && direction === 'horizontal' && /*#__PURE__*/React.createElement("div", {
88
- className: prefixCls + "__add-btn",
96
+ }, showScrollBtn && direction === 'horizontal' && /*#__PURE__*/React.createElement(IconButton, {
97
+ className: prefixCls + "__left-btn",
98
+ effect: true,
99
+ icon: /*#__PURE__*/React.createElement(LeftOutlined, null),
89
100
  onClick: function onClick() {
90
101
  if (scrollRef && innerRef) {
91
102
  var canScroll = -translateX - innerRef.clientWidth;
@@ -100,8 +111,10 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
100
111
  setTranslateX(translateX + moveWidth);
101
112
  }
102
113
  }
103
- }, /*#__PURE__*/React.createElement(LeftOutlined, null)), showScrollBtn && direction === 'vertical' && /*#__PURE__*/React.createElement("div", {
104
- className: prefixCls + "__add-btn",
114
+ }), showScrollBtn && direction === 'vertical' && /*#__PURE__*/React.createElement(IconButton, {
115
+ className: prefixCls + "__up-btn",
116
+ effect: true,
117
+ icon: /*#__PURE__*/React.createElement(UpOutlined, null),
105
118
  onClick: function onClick() {
106
119
  if (scrollRef && innerRef) {
107
120
  var canScroll = -translateY - innerRef.clientHeight;
@@ -116,7 +129,7 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
116
129
  setTranslateY(translateY + moveWidth);
117
130
  }
118
131
  }
119
- }, /*#__PURE__*/React.createElement(UpOutlined, null)), /*#__PURE__*/React.createElement("div", {
132
+ }), /*#__PURE__*/React.createElement("div", {
120
133
  className: cx(prefixCls + "__list--inner"),
121
134
  ref: setInnerRef
122
135
  }, /*#__PURE__*/React.createElement("div", {
@@ -135,7 +148,7 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
135
148
  type: type,
136
149
  itemRef: itemsRef.current["" + d.tabId],
137
150
  index: index,
138
- active: activeTab === d.tabId,
151
+ active: activeTabId === d.tabId,
139
152
  prefixCls: prefixCls,
140
153
  draggable: draggable,
141
154
  onTabClick: onClickTab,
@@ -147,14 +160,16 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
147
160
  onDragEnd: onDragEnd,
148
161
  direction: direction
149
162
  }));
150
- }), type === 'default' && /*#__PURE__*/React.createElement(TabInk, {
163
+ }), type === 'line' && /*#__PURE__*/React.createElement(TabInk, {
151
164
  translate: direction === 'horizontal' ? translateX : translateY,
152
165
  prefixCls: prefixCls,
153
166
  direction: direction,
154
167
  tabListRef: innerRef,
155
- itemRef: (_b = itemsRef.current) === null || _b === void 0 ? void 0 : _b[activeTab]
156
- }))), showScrollBtn && direction === 'horizontal' && /*#__PURE__*/React.createElement("div", {
157
- className: prefixCls + "__add-btn",
168
+ itemRef: (_a = itemsRef.current) === null || _a === void 0 ? void 0 : _a[activeTabId]
169
+ }))), showScrollBtn && direction === 'horizontal' && /*#__PURE__*/React.createElement(IconButton, {
170
+ effect: true,
171
+ className: prefixCls + "__right-btn",
172
+ icon: /*#__PURE__*/React.createElement(RightOutlined, null),
158
173
  onClick: function onClick() {
159
174
  if (scrollRef && innerRef) {
160
175
  var canScroll = scrollRef.clientWidth - innerRef.clientWidth + translateX;
@@ -169,8 +184,10 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
169
184
  setTranslateX(translateX - moveWidth);
170
185
  }
171
186
  }
172
- }, /*#__PURE__*/React.createElement(RightOutlined, null)), showScrollBtn && direction === 'vertical' && /*#__PURE__*/React.createElement("div", {
173
- className: prefixCls + "__add-btn",
187
+ }), showScrollBtn && direction === 'vertical' && /*#__PURE__*/React.createElement(IconButton, {
188
+ effect: true,
189
+ className: prefixCls + "__down-btn",
190
+ icon: /*#__PURE__*/React.createElement(DownOutlined, null),
174
191
  onClick: function onClick() {
175
192
  if (scrollRef && innerRef) {
176
193
  var canScroll = scrollRef.clientHeight - innerRef.clientHeight + translateY;
@@ -185,10 +202,11 @@ var TabList = /*#__PURE__*/forwardRef(function (_ref, ref) {
185
202
  setTranslateY(translateY - moveWidth);
186
203
  }
187
204
  }
188
- }, /*#__PURE__*/React.createElement(DownOutlined, null)), editable && /*#__PURE__*/React.createElement("div", {
205
+ }), editable ? /*#__PURE__*/React.createElement(IconButton, {
206
+ icon: /*#__PURE__*/React.createElement(PlusOutlined, null),
189
207
  className: prefixCls + "__add-btn",
190
208
  onClick: onAdd
191
- }, /*#__PURE__*/React.createElement(PlusOutlined, null)));
209
+ }) : null, extra);
192
210
  });
193
211
 
194
212
  if (__DEV__) {
@@ -196,4 +214,3 @@ if (__DEV__) {
196
214
  }
197
215
 
198
216
  export { TabList };
199
- //# sourceMappingURL=TabList.js.map
@@ -21,4 +21,3 @@ var TabPane = function TabPane(_ref) {
21
21
  };
22
22
 
23
23
  export { TabPane };
24
- //# sourceMappingURL=TabPane.js.map
package/lib/esm/Tabs.js CHANGED
@@ -8,10 +8,12 @@
8
8
  * LICENSE file in the root directory of this source tree.
9
9
  */
10
10
  import { __rest } from 'tslib';
11
- import React, { forwardRef, useMemo, useState, useCallback } from 'react';
11
+ import React, { forwardRef, useMemo } from 'react';
12
12
  import { getPrefixCls, cx } from '@hi-ui/classname';
13
13
  import { __DEV__ } from '@hi-ui/env';
14
14
  import { TabList } from './TabList.js';
15
+ import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
16
+ import { isUndef } from '@hi-ui/type-assertion';
15
17
  var _role = 'tabs';
16
18
 
17
19
  var _prefix = getPrefixCls(_role);
@@ -21,10 +23,6 @@ var _prefix = getPrefixCls(_role);
21
23
 
22
24
 
23
25
  var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
24
- var _cx;
25
-
26
- var _b;
27
-
28
26
  var _a$prefixCls = _a.prefixCls,
29
27
  prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
30
28
  _a$role = _a.role,
@@ -36,8 +34,8 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
36
34
  onChange = _a.onChange,
37
35
  onTabClick = _a.onTabClick,
38
36
  editable = _a.editable,
39
- _a$direction = _a.direction,
40
- direction = _a$direction === void 0 ? 'horizontal' : _a$direction,
37
+ _a$placement = _a.placement,
38
+ placement = _a$placement === void 0 ? 'horizontal' : _a$placement,
41
39
  onAdd = _a.onAdd,
42
40
  onDelete = _a.onDelete,
43
41
  _a$draggable = _a.draggable,
@@ -48,10 +46,10 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
48
46
  onDrop = _a.onDrop,
49
47
  style = _a.style,
50
48
  _a$type = _a.type,
51
- type = _a$type === void 0 ? 'default' : _a$type,
52
- rest = __rest(_a, ["prefixCls", "role", "className", "children", "defaultActiveId", "activeId", "onChange", "onTabClick", "editable", "direction", "onAdd", "onDelete", "draggable", "onDragStart", "onDragOver", "onDragEnd", "onDrop", "style", "type"]);
49
+ type = _a$type === void 0 ? 'line' : _a$type,
50
+ extra = _a.extra,
51
+ rest = __rest(_a, ["prefixCls", "role", "className", "children", "defaultActiveId", "activeId", "onChange", "onTabClick", "editable", "placement", "onAdd", "onDelete", "draggable", "onDragStart", "onDragOver", "onDragEnd", "onDrop", "style", "type", "extra"]);
53
52
 
54
- var cls = cx(prefixCls, className, (_cx = {}, _cx[prefixCls + "--vertical"] = direction === 'vertical', _cx[prefixCls + "--" + type] = type, _cx));
55
53
  var tabList = useMemo(function () {
56
54
  var list = [];
57
55
  React.Children.map(children, function (child) {
@@ -75,18 +73,17 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
75
73
  return list;
76
74
  }, [children]);
77
75
 
78
- var _useState = useState(activeId || defaultActiveId || ((_b = tabList[0]) === null || _b === void 0 ? void 0 : _b.tabId)),
79
- activePane = _useState[0],
80
- setActivePane = _useState[1];
81
-
82
- var _onChange = useCallback(function (tabId) {
83
- if (onChange) {
84
- onChange(tabId);
76
+ var _useUncontrolledState = useUncontrolledState(function () {
77
+ if (isUndef(defaultActiveId)) {
78
+ return tabList[0] ? tabList[0].tabId : '';
85
79
  }
86
80
 
87
- setActivePane(tabId);
88
- }, [onChange]);
81
+ return defaultActiveId;
82
+ }, activeId, onChange),
83
+ activeTabId = _useUncontrolledState[0],
84
+ setActiveTabId = _useUncontrolledState[1];
89
85
 
86
+ var cls = cx(prefixCls, className, placement && prefixCls + "--placement-" + placement, type && prefixCls + "--type-" + type);
90
87
  return /*#__PURE__*/React.createElement("div", Object.assign({
91
88
  ref: ref,
92
89
  role: role,
@@ -96,9 +93,9 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
96
93
  prefixCls: prefixCls,
97
94
  data: tabList,
98
95
  activeId: activeId,
99
- onChange: _onChange,
96
+ onChange: setActiveTabId,
100
97
  onTabClick: onTabClick,
101
- direction: direction,
98
+ direction: placement,
102
99
  editable: editable,
103
100
  onAdd: onAdd,
104
101
  onDelete: onDelete,
@@ -107,13 +104,16 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
107
104
  onDragOver: onDragOver,
108
105
  onDrop: onDrop,
109
106
  type: type,
110
- onDragStart: onDragStart
107
+ onDragStart: onDragStart,
108
+ extra: extra
111
109
  }), /*#__PURE__*/React.createElement("div", {
112
110
  className: _prefix + "__content"
113
111
  }, React.Children.map(children, function (child) {
114
- return child && /*#__PURE__*/React.cloneElement(child, {
115
- active: activePane === child.props.tabId
116
- });
112
+ return child ? /*#__PURE__*/React.cloneElement(child, {
113
+ key: child.props.tabId,
114
+ className: cx(_prefix + "-tab-pane", child.props.className),
115
+ active: activeTabId === child.props.tabId
116
+ }) : null;
117
117
  })));
118
118
  });
119
119
 
@@ -122,4 +122,3 @@ if (__DEV__) {
122
122
  }
123
123
 
124
124
  export { Tabs };
125
- //# sourceMappingURL=Tabs.js.map
package/lib/esm/index.js CHANGED
@@ -8,7 +8,12 @@
8
8
  * LICENSE file in the root directory of this source tree.
9
9
  */
10
10
  import './styles/index.scss.js';
11
- export { Tabs, Tabs as default } from './Tabs.js';
11
+ import { Tabs as Tabs$1 } from './Tabs.js';
12
+ export { Tabs } from './Tabs.js';
13
+ import { TabPane } from './TabPane.js';
12
14
  export { TabPane } from './TabPane.js';
13
15
  export { TabList } from './TabList.js';
14
- //# sourceMappingURL=index.js.map
16
+ var Tabs = Object.assign(Tabs$1, {
17
+ Pane: TabPane
18
+ });
19
+ export { Tabs as default };
@@ -7,11 +7,10 @@
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
9
  */
10
- var css_248z = "@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n.hi-v4-tabs__add-btn {\n cursor: pointer; }\n.hi-v4-tabs__close-btn {\n cursor: pointer;\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6);\n margin-left: 4px;\n margin-left: var(--hi-v4-spacing-2, 4px);\n -webkit-transition: color 0.3s;\n transition: color 0.3s; }\n.hi-v4-tabs__close-btn:hover {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__list {\n position: relative;\n font-size: 0.875rem;\n font-size: var(--hi-v4-text-size-normal, 0.875rem);\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n overflow: hidden;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center; }\n.hi-v4-tabs__list--card .hi-v4-tabs__item {\n background-color: #ebedf0;\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n margin: 0;\n padding: 8px 20px;\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n border-radius: 4px 4px 0 0;\n border-radius: var(--hi-v4-border-radius-normal, 4px) var(--hi-v4-border-radius-normal, 4px) 0 0;\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs__list--card .hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa);\n background-color: #fff;\n background-color: var(--hi-v4-color-static-white, #fff); }\n.hi-v4-tabs__list--button .hi-v4-tabs__item {\n margin: 4px 4px 4px 0;\n margin: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) 0;\n padding: 4px 20px;\n padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-10, 20px);\n border-radius: 4px;\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs__list--button .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: #ebedf0;\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs__list--button .hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa);\n background-color: #e2f3fe;\n background-color: var(--hi-v4-color-brandblue-50, #e2f3fe); }\n.hi-v4-tabs__list--desc {\n padding: 0 20px;\n padding: 0 var(--hi-v4-spacing-10, 20px); }\n.hi-v4-tabs__list--desc .hi-v4-tabs-item__title {\n color: #1f2733;\n color: var(--hi-v4-color-gray-700, #1f2733); }\n.hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6);\n font-size: 0.75rem;\n font-size: var(--hi-v4-text-size-sm, 0.75rem);\n line-height: 1.25rem;\n line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item {\n background: #f5f7fa;\n background: var(--hi-v4-color-gray-50, #f5f7fa);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n margin: 20px 12px 20px 0;\n margin: var(--hi-v4-spacing-10, 20px) var(--hi-v4-spacing-6, 12px) var(--hi-v4-spacing-10, 20px) 0;\n padding: 16px 20px;\n padding: var(--hi-v4-spacing-8, 16px) var(--hi-v4-spacing-10, 20px);\n border-radius: 4px;\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: #ebedf0;\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa);\n background-color: #e2f3fe;\n background-color: var(--hi-v4-color-brandblue-50, #e2f3fe); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__list--inner {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1;\n flex: 1 1;\n position: relative;\n overflow: hidden; }\n.hi-v4-tabs__list--scroll {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: relative;\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs--vertical {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex; }\n.hi-v4-tabs--vertical .hi-v4-tabs__list {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column; }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--card .hi-v4-tabs__item {\n margin: 0;\n padding: 8px 20px;\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n background-color: #ebedf0;\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n border-radius: 4px 0 0 4px;\n border-radius: var(--hi-v4-border-radius-normal, 4px) 0 0 var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--card .hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa);\n background-color: #fff;\n background-color: var(--hi-v4-color-static-white, #fff); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--button .hi-v4-tabs__item {\n margin: 0 0 4px 0;\n margin: 0 0 var(--hi-v4-spacing-2, 4px) 0;\n padding: 4px 20px;\n padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-10, 20px);\n border-radius: 4px;\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--button .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: #ebedf0;\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--button .hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa);\n background-color: #e2f3fe;\n background-color: var(--hi-v4-color-brandblue-50, #e2f3fe); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs-item__title {\n color: #1f2733;\n color: var(--hi-v4-color-gray-700, #1f2733); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6);\n font-size: 0.75rem;\n font-size: var(--hi-v4-text-size-sm, 0.75rem);\n line-height: 1.25rem;\n line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs__item {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n margin: 0 0 12px 0;\n margin: 0 0 var(--hi-v4-spacing-6, 12px) 0;\n padding: 16px 20px;\n padding: var(--hi-v4-spacing-8, 16px) var(--hi-v4-spacing-10, 20px);\n border-radius: 4px;\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s;\n background: #f5f7fa;\n background: var(--hi-v4-color-gray-50, #f5f7fa); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: #ebedf0;\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa);\n background-color: #e2f3fe;\n background-color: var(--hi-v4-color-brandblue-50, #e2f3fe); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--inner {\n width: auto;\n display: block;\n position: relative; }\n.hi-v4-tabs--vertical .hi-v4-tabs__list--scroll {\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n position: relative; }\n.hi-v4-tabs--vertical .hi-v4-tabs__item {\n line-height: 1.5rem;\n line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);\n padding: 8px 20px;\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n margin: 0;\n -webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs--vertical .hi-v4-tabs__item--prev {\n border-top: 1px dashed #237ffa;\n border-top: 1px dashed var(--hi-v4-color-brandblue-500, #237ffa);\n border-left: none; }\n.hi-v4-tabs--vertical .hi-v4-tabs__item--next {\n border-bottom: 1px dashed #237ffa;\n border-bottom: 1px dashed var(--hi-v4-color-brandblue-500, #237ffa);\n border-right: none; }\n.hi-v4-tabs--vertical .hi-v4-tabs__content {\n padding-left: 16px;\n padding-top: 0; }\n.hi-v4-tabs--vertical .hi-v4-tabs__ink {\n position: absolute;\n left: 0;\n bottom: auto;\n width: 2px;\n background-color: #237ffa;\n background-color: var(--hi-v4-color-brandblue-500, #237ffa);\n -webkit-transition: top 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), height 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: top 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), height 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs__ink {\n position: absolute;\n bottom: 0;\n right: auto;\n top: auto;\n height: 2px;\n background-color: #237ffa;\n background-color: var(--hi-v4-color-brandblue-500, #237ffa);\n -webkit-transition: left 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), width 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: left 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), width 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs__item {\n line-height: 1.5rem;\n line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);\n padding: 8px 20px;\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n margin: 0;\n cursor: pointer;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs__item:not(.hi-v4-tabs__item--disabled):hover {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__item--active {\n color: #237ffa;\n color: var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__item--prev {\n border-left: 1px dashed #237ffa;\n border-left: 1px dashed var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__item--next {\n border-right: 1px dashed #237ffa;\n border-right: 1px dashed var(--hi-v4-color-brandblue-500, #237ffa); }\n.hi-v4-tabs__item--disabled {\n color: #929aa6 !important;\n color: var(--hi-v4-color-gray-500, #929aa6) !important;\n cursor: not-allowed; }\n.hi-v4-tabs__item:not(.hi-v4-tabs__item--active) {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis; }\n.hi-v4-tabs__content {\n width: 100%;\n overflow: hidden;\n padding-top: 16px;\n padding-top: var(--hi-v4-spacing-8, 16px);\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n";
10
+ var css_248z = "@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n.hi-v4-tabs__add-btn.hi-v4-icon-button {\n font-size: var(--hi-v4-text-size-normal, 0.875rem); }\n.hi-v4-tabs__up-btn.hi-v4-icon-button, .hi-v4-tabs__down-btn.hi-v4-icon-button, .hi-v4-tabs__left-btn.hi-v4-icon-button, .hi-v4-tabs__right-btn.hi-v4-icon-button {\n margin: var(--hi-v4-spacing-1, 2px); }\n.hi-v4-tabs__close-btn {\n cursor: pointer;\n color: var(--hi-v4-color-gray-500, #929aa6);\n margin-left: var(--hi-v4-spacing-2, 4px);\n -webkit-transition: color 0.3s;\n transition: color 0.3s; }\n.hi-v4-tabs__close-btn:hover {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs--card .hi-v4-tabs__content {\n background-color: var(--hi-v4-color-static-white, #fff); }\n.hi-v4-tabs__list {\n position: relative;\n font-size: var(--hi-v4-text-size-normal, 0.875rem);\n color: var(--hi-v4-color-gray-500, #929aa6);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n overflow: hidden;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center; }\n.hi-v4-tabs__list--card .hi-v4-tabs__item {\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n margin: 0;\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n border-radius: var(--hi-v4-border-radius-normal, 4px) var(--hi-v4-border-radius-normal, 4px) 0 0;\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs__list--card .hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n background-color: var(--hi-v4-color-static-white, #fff); }\n.hi-v4-tabs__list--button .hi-v4-tabs__item {\n margin: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) 0;\n padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-10, 20px);\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs__list--button .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs__list--button .hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }\n.hi-v4-tabs__list--desc {\n padding: 0 var(--hi-v4-spacing-10, 20px); }\n.hi-v4-tabs__list--desc .hi-v4-tabs-item__title {\n color: var(--hi-v4-color-gray-700, #1f2733); }\n.hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {\n color: var(--hi-v4-color-gray-500, #929aa6);\n font-size: var(--hi-v4-text-size-sm, 0.75rem);\n line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item {\n background: var(--hi-v4-color-gray-50, #f5f7fa);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n margin: var(--hi-v4-spacing-10, 20px) var(--hi-v4-spacing-6, 12px) var(--hi-v4-spacing-10, 20px) 0;\n padding: var(--hi-v4-spacing-8, 16px) var(--hi-v4-spacing-10, 20px);\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__list--inner {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1;\n flex: 1 1;\n position: relative;\n overflow: hidden; }\n.hi-v4-tabs__list--scroll {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: relative;\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs--placement-vertical {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__content {\n padding-left: 16px;\n padding-top: 0; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--inner {\n width: auto;\n display: block;\n position: relative; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--scroll {\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n position: relative; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item {\n line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n margin: 0;\n -webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item--prev {\n border-top: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n border-left: none; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item--next {\n border-bottom: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n border-right: none; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__ink {\n position: absolute;\n left: 0;\n bottom: auto;\n width: 2px;\n background-color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n -webkit-transition: top 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), height 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: top 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), height 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--card .hi-v4-tabs__item {\n margin: 0;\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n border-radius: var(--hi-v4-border-radius-normal, 4px) 0 0 var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--card .hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n background-color: var(--hi-v4-color-static-white, #fff); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--button .hi-v4-tabs__item {\n margin: 0 0 var(--hi-v4-spacing-2, 4px) 0;\n padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-10, 20px);\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s; }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--button .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--button .hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs-item__title {\n color: var(--hi-v4-color-gray-700, #1f2733); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {\n color: var(--hi-v4-color-gray-500, #929aa6);\n font-size: var(--hi-v4-text-size-sm, 0.75rem);\n line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n margin: 0 0 var(--hi-v4-spacing-6, 12px) 0;\n padding: var(--hi-v4-spacing-8, 16px) var(--hi-v4-spacing-10, 20px);\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n -webkit-transition: all 0.3s;\n transition: all 0.3s;\n background: var(--hi-v4-color-gray-50, #f5f7fa); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item:not(.hi-v4-tabs__item--active):hover {\n background-color: var(--hi-v4-color-gray-200, #ebedf0);\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__ink {\n position: absolute;\n bottom: 0;\n right: auto;\n top: auto;\n height: 2px;\n background-color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));\n -webkit-transition: left 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), width 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: left 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), width 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs__item {\n line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);\n padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);\n margin: 0;\n cursor: pointer;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);\n transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }\n.hi-v4-tabs__item:not(.hi-v4-tabs__item--disabled):hover {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__item--active {\n color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__item--prev {\n border-left: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__item--next {\n border-right: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }\n.hi-v4-tabs__item--disabled {\n color: var(--hi-v4-color-gray-500, #929aa6) !important;\n cursor: not-allowed; }\n.hi-v4-tabs__item:not(.hi-v4-tabs__item--active) {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis; }\n.hi-v4-tabs__content {\n width: 100%;\n overflow: hidden;\n padding-top: var(--hi-v4-spacing-8, 16px);\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n";
11
11
 
12
12
  var __styleInject__ = require('style-inject/dist/style-inject.es.js')["default"];
13
13
 
14
14
  __styleInject__(css_248z);
15
15
 
16
- export default css_248z;
17
- //# sourceMappingURL=index.scss.js.map
16
+ export { css_248z as default };
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ export declare const TabInk: React.FC<TabInkProps>;
2
3
  interface TabInkProps {
3
4
  disabled?: boolean;
4
5
  prefixCls?: string;
@@ -7,5 +8,4 @@ interface TabInkProps {
7
8
  direction: 'vertical' | 'horizontal';
8
9
  translate: number;
9
10
  }
10
- export declare const TabInk: React.FC<TabInkProps>;
11
- export default TabInk;
11
+ export {};
@@ -1,24 +1,30 @@
1
1
  import React from 'react';
2
2
  import { TabPaneProps } from './TabPane';
3
+ export declare const TabItem: React.ForwardRefExoticComponent<TabItemProps & React.RefAttributes<HTMLDivElement | null>>;
3
4
  interface TabItemProps extends TabPaneProps {
4
5
  active: boolean;
5
6
  draggable?: boolean;
6
- onTabClick: (key: string) => void;
7
+ onTabClick: (key: React.ReactText, event: React.MouseEvent) => void;
7
8
  prefixCls?: string;
8
9
  editable?: boolean;
9
10
  onDelete?: (deletedNode: TabPaneProps, index: number) => void;
10
11
  index: number;
11
- onDragStart?: (e: React.DragEvent<HTMLDivElement>, dragNode: TabPaneProps) => void;
12
- onDragOver?: (e: React.DragEvent<HTMLDivElement>, dragNode: TabPaneProps) => void;
13
- onDrop?: (e: React.DragEvent<HTMLDivElement>, { dragNode, dropNode, direction, }: {
12
+ onDragStart?: (e: React.DragEvent<HTMLDivElement>, { dragNode }: {
13
+ dragNode: TabPaneProps;
14
+ }) => void;
15
+ onDragOver?: (e: React.DragEvent<HTMLDivElement>, { targetNode }: {
16
+ targetNode: TabPaneProps;
17
+ }) => void;
18
+ onDrop?: (e: React.DragEvent<HTMLDivElement>, { dragNode, targetNode, direction, }: {
14
19
  dragNode: TabPaneProps;
15
- dropNode: TabPaneProps;
20
+ targetNode: TabPaneProps;
16
21
  direction: 'prev' | 'next' | null;
17
22
  }) => void;
18
- onDragEnd?: (e: React.DragEvent<HTMLDivElement>, dragNode: TabPaneProps) => void;
23
+ onDragEnd?: (e: React.DragEvent<HTMLDivElement>, { dragNode }: {
24
+ dragNode: TabPaneProps;
25
+ }) => void;
19
26
  itemRef: HTMLDivElement | null;
20
27
  direction: 'horizontal' | 'vertical';
21
- type: 'desc' | 'default' | 'button' | 'card';
28
+ type: 'desc' | 'line' | 'button' | 'card';
22
29
  }
23
- export declare const TabItem: React.ForwardRefExoticComponent<TabItemProps & React.RefAttributes<HTMLDivElement | null>>;
24
30
  export {};
@@ -7,19 +7,23 @@ export interface TabListProps {
7
7
  prefixCls?: string;
8
8
  data: TabPaneProps[];
9
9
  direction?: 'horizontal' | 'vertical';
10
- onChange?: (tabId: string) => void;
11
- onTabClick?: (tabId: string) => void;
10
+ onChange?: (tabId: React.ReactText) => void;
11
+ onTabClick?: (tabId: React.ReactText, event: React.MouseEvent) => void;
12
12
  /**
13
13
  * 默认高亮id
14
14
  */
15
- defaultActiveId?: string;
15
+ defaultActiveId?: React.ReactText;
16
16
  /**
17
17
  * 高亮id
18
18
  */
19
- activeId?: string;
19
+ activeId?: React.ReactText;
20
20
  editable?: boolean;
21
21
  draggable?: boolean;
22
- type?: 'desc' | 'card' | 'button' | 'default';
22
+ type?: 'desc' | 'card' | 'button' | 'line';
23
+ /**
24
+ * 右侧的拓展区域
25
+ */
26
+ extra?: React.ReactNode;
23
27
  /**
24
28
  * 节点增加时触发
25
29
  */
@@ -28,12 +32,18 @@ export interface TabListProps {
28
32
  * 节点删除时时触发
29
33
  */
30
34
  onDelete?: (deletedNode: TabPaneProps, index: number) => void;
31
- onDragStart?: (e: React.DragEvent<HTMLDivElement>) => void;
32
- onDragOver?: (e: React.DragEvent<HTMLDivElement>) => void;
33
- onDrop?: (e: React.DragEvent<HTMLDivElement>, { dragNode, dropNode, direction, }: {
35
+ onDragStart?: (e: React.DragEvent<HTMLDivElement>, { dragNode }: {
36
+ dragNode: TabPaneProps;
37
+ }) => void;
38
+ onDragOver?: (e: React.DragEvent<HTMLDivElement>, { targetNode }: {
39
+ targetNode: TabPaneProps;
40
+ }) => void;
41
+ onDrop?: (e: React.DragEvent<HTMLDivElement>, { dragNode, targetNode, direction, }: {
42
+ dragNode: TabPaneProps;
43
+ targetNode: TabPaneProps;
44
+ direction: 'prev' | 'next' | null;
45
+ }) => void;
46
+ onDragEnd?: (e: React.DragEvent<HTMLDivElement>, { dragNode }: {
34
47
  dragNode: TabPaneProps;
35
- dropNode: TabPaneProps;
36
- direction: string | null;
37
48
  }) => void;
38
- onDragEnd?: (e: React.DragEvent<HTMLDivElement>) => void;
39
49
  }
@@ -4,7 +4,7 @@ export interface TabPaneProps {
4
4
  style?: React.CSSProperties;
5
5
  className?: string;
6
6
  disabled?: boolean;
7
- tabId: string;
7
+ tabId: React.ReactText;
8
8
  tabTitle: React.ReactNode;
9
9
  tabDesc?: React.ReactNode;
10
10
  closeable?: boolean;
@@ -36,27 +36,31 @@ export interface TabsProps {
36
36
  /**
37
37
  * 默认高亮id
38
38
  */
39
- defaultActiveId?: string;
39
+ defaultActiveId?: React.ReactText;
40
40
  /**
41
41
  * 高亮id
42
42
  */
43
- activeId?: string;
43
+ activeId?: React.ReactText;
44
44
  /**
45
45
  * 布局方向
46
46
  */
47
- direction?: 'horizontal' | 'vertical';
47
+ placement?: 'horizontal' | 'vertical';
48
48
  /**
49
49
  * 布局类型
50
50
  */
51
- type?: 'desc' | 'card' | 'button' | 'default';
51
+ type?: 'desc' | 'card' | 'button' | 'line';
52
52
  /**
53
53
  * `activeId` 改变的回调
54
54
  */
55
- onChange?: (tabId: string) => void;
55
+ onChange?: (tabId: React.ReactText) => void;
56
56
  /**
57
57
  * 标签点击触发回调
58
58
  */
59
- onTabClick?: (tabId: string) => void;
59
+ onTabClick?: (tabId: React.ReactText) => void;
60
+ /**
61
+ * 右侧的拓展区域
62
+ */
63
+ extra?: React.ReactNode;
60
64
  /**
61
65
  * 节点增加时触发
62
66
  */
@@ -65,12 +69,18 @@ export interface TabsProps {
65
69
  * 节点删除时时触发
66
70
  */
67
71
  onDelete?: (deletedNode: TabPaneProps, index: number) => void;
68
- onDragStart?: (e: React.DragEvent<HTMLDivElement>) => void;
69
- onDragOver?: (e: React.DragEvent<HTMLDivElement>) => void;
70
- onDrop?: (e: React.DragEvent<HTMLDivElement>, { dragNode, dropNode, direction, }: {
72
+ onDragStart?: (e: React.DragEvent<HTMLDivElement>, { dragNode }: {
73
+ dragNode: TabPaneProps;
74
+ }) => void;
75
+ onDragOver?: (e: React.DragEvent<HTMLDivElement>, { targetNode }: {
76
+ targetNode: TabPaneProps;
77
+ }) => void;
78
+ onDrop?: (e: React.DragEvent<HTMLDivElement>, { dragNode, targetNode, direction, }: {
79
+ dragNode: TabPaneProps;
80
+ targetNode: TabPaneProps;
81
+ direction: 'prev' | 'next' | null;
82
+ }) => void;
83
+ onDragEnd?: (e: React.DragEvent<HTMLDivElement>, { dragNode }: {
71
84
  dragNode: TabPaneProps;
72
- dropNode: TabPaneProps;
73
- direction: string | null;
74
85
  }) => void;
75
- onDragEnd?: (e: React.DragEvent<HTMLDivElement>) => void;
76
86
  }
@@ -1,5 +1,9 @@
1
+ /// <reference types="react" />
1
2
  import './styles/index.scss';
3
+ declare const Tabs: import("react").ForwardRefExoticComponent<import("./Tabs").TabsProps & import("react").RefAttributes<HTMLDivElement | null>> & {
4
+ Pane: import("react").FC<import("./TabPane").TabPaneProps>;
5
+ };
6
+ export default Tabs;
2
7
  export * from './Tabs';
3
8
  export * from './TabPane';
4
9
  export * from './TabList';
5
- export { Tabs as default } from './Tabs';