@hi-ui/tabs 4.1.0 → 4.1.2
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.
- package/CHANGELOG.md +29 -0
- package/lib/cjs/TabInk.js +6 -28
- package/lib/cjs/TabItem.js +34 -67
- package/lib/cjs/TabList.js +67 -120
- package/lib/cjs/TabPane.js +11 -38
- package/lib/cjs/Tabs.js +43 -73
- package/lib/cjs/hooks/index.js +5 -17
- package/lib/cjs/index.js +0 -5
- package/lib/cjs/styles/index.scss.js +1 -4
- package/lib/cjs/utils/index.js +0 -8
- package/lib/esm/TabInk.js +5 -11
- package/lib/esm/TabItem.js +29 -44
- package/lib/esm/TabList.js +56 -82
- package/lib/esm/TabPane.js +8 -17
- package/lib/esm/Tabs.js +37 -46
- package/lib/esm/hooks/index.js +5 -10
- package/lib/esm/index.js +1 -3
- package/lib/esm/styles/index.scss.js +1 -3
- package/lib/esm/utils/index.js +0 -4
- package/package.json +13 -13
package/lib/esm/TabList.js
CHANGED
|
@@ -21,88 +21,71 @@ import { useResizeObserver } from './hooks/index.js';
|
|
|
21
21
|
import { useLatestCallback } from '@hi-ui/use-latest';
|
|
22
22
|
import { getNextTabId } from './utils/index.js';
|
|
23
23
|
var _role = 'tabs';
|
|
24
|
-
|
|
25
24
|
var _prefix = getPrefixCls(_role);
|
|
26
|
-
|
|
27
25
|
var TabList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
28
26
|
var _cx;
|
|
29
|
-
|
|
30
27
|
var _b;
|
|
31
|
-
|
|
32
28
|
var data = _a.data,
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
29
|
+
className = _a.className,
|
|
30
|
+
style = _a.style,
|
|
31
|
+
activeId = _a.activeId,
|
|
32
|
+
defaultActiveId = _a.defaultActiveId,
|
|
33
|
+
onChange = _a.onChange,
|
|
34
|
+
onTabClick = _a.onTabClick,
|
|
35
|
+
_a$prefixCls = _a.prefixCls,
|
|
36
|
+
prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
|
|
37
|
+
directionProp = _a.direction,
|
|
38
|
+
_a$placement = _a.placement,
|
|
39
|
+
placement = _a$placement === void 0 ? 'horizontal' : _a$placement,
|
|
40
|
+
editable = _a.editable,
|
|
41
|
+
onAdd = _a.onAdd,
|
|
42
|
+
onDelete = _a.onDelete,
|
|
43
|
+
draggable = _a.draggable,
|
|
44
|
+
onDragStart = _a.onDragStart,
|
|
45
|
+
onDragOver = _a.onDragOver,
|
|
46
|
+
onDrop = _a.onDrop,
|
|
47
|
+
onDragEnd = _a.onDragEnd,
|
|
48
|
+
_a$type = _a.type,
|
|
49
|
+
type = _a$type === void 0 ? 'line' : _a$type,
|
|
50
|
+
extra = _a.extra,
|
|
51
|
+
rest = __rest(_a, ["data", "className", "style", "activeId", "defaultActiveId", "onChange", "onTabClick", "prefixCls", "direction", "placement", "editable", "onAdd", "onDelete", "draggable", "onDragStart", "onDragOver", "onDrop", "onDragEnd", "type", "extra"]);
|
|
57
52
|
var direction = (_b = placement !== null && placement !== void 0 ? placement : directionProp) !== null && _b !== void 0 ? _b : 'horizontal';
|
|
58
|
-
|
|
59
53
|
var _useUncontrolledState = useUncontrolledState(function () {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
setActiveTabId = _useUncontrolledState[1];
|
|
68
|
-
|
|
54
|
+
if (isUndef(defaultActiveId)) {
|
|
55
|
+
return data[0] ? data[0].tabId : '';
|
|
56
|
+
}
|
|
57
|
+
return defaultActiveId;
|
|
58
|
+
}, activeId, onChange, Object.is),
|
|
59
|
+
activeTabId = _useUncontrolledState[0],
|
|
60
|
+
setActiveTabId = _useUncontrolledState[1];
|
|
69
61
|
var _useState = useState(null),
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
62
|
+
innerElement = _useState[0],
|
|
63
|
+
setInnerElement = _useState[1];
|
|
73
64
|
var _useState2 = useState(null),
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
65
|
+
scrollElement = _useState2[0],
|
|
66
|
+
setScrollElement = _useState2[1];
|
|
77
67
|
var showHorizontal = direction === 'horizontal';
|
|
78
68
|
var getClientSize = useCallback(function (element) {
|
|
79
69
|
return showHorizontal ? element.clientWidth : element.clientHeight;
|
|
80
70
|
}, [showHorizontal]);
|
|
81
|
-
|
|
82
71
|
var _useState3 = useState(0),
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
72
|
+
translatePos = _useState3[0],
|
|
73
|
+
setTranslatePos = _useState3[1];
|
|
86
74
|
var _useState4 = useState(0),
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
75
|
+
translateBoundPos = _useState4[0],
|
|
76
|
+
setTranslateBoundPos = _useState4[1];
|
|
90
77
|
var itemsRef = useRef({});
|
|
91
|
-
|
|
92
78
|
var _useState5 = useState(false),
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
79
|
+
showScrollBtn = _useState5[0],
|
|
80
|
+
setShowScrollBtn = _useState5[1];
|
|
96
81
|
var resizeScroll = function resizeScroll(scrollSize, innerSize) {
|
|
97
82
|
var showScrollBtn = scrollSize > innerSize;
|
|
98
83
|
setShowScrollBtn(showScrollBtn);
|
|
99
|
-
|
|
100
84
|
if (showScrollBtn) {
|
|
101
85
|
setTranslateBoundPos(scrollSize - innerSize);
|
|
102
86
|
}
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
|
|
87
|
+
};
|
|
88
|
+
// 响应式滚动按钮展示
|
|
106
89
|
useResizeObserver({
|
|
107
90
|
element: innerElement,
|
|
108
91
|
getSize: getClientSize,
|
|
@@ -119,36 +102,32 @@ var TabList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
119
102
|
onResize: function onResize(_, scrollSize) {
|
|
120
103
|
if (innerElement) {
|
|
121
104
|
var innerSize = getClientSize(innerElement);
|
|
122
|
-
resizeScroll(scrollSize, innerSize);
|
|
123
|
-
|
|
105
|
+
resizeScroll(scrollSize, innerSize);
|
|
106
|
+
// 每次滚动容器大小改变后,需要同步更新滚动位置
|
|
124
107
|
initScrollPosition(activeId);
|
|
125
108
|
}
|
|
126
109
|
}
|
|
127
110
|
});
|
|
128
111
|
var getTabPos = useCallback(function (tabId) {
|
|
129
|
-
var target = 0;
|
|
130
|
-
|
|
112
|
+
var target = 0;
|
|
113
|
+
// 获取目标元素的位置
|
|
131
114
|
var targetElement = itemsRef.current[tabId];
|
|
132
|
-
|
|
133
115
|
if (targetElement) {
|
|
134
116
|
var rect = targetElement.getBoundingClientRect();
|
|
135
117
|
target = showHorizontal ? rect.left : rect.top;
|
|
136
118
|
}
|
|
137
|
-
|
|
138
119
|
return target;
|
|
139
120
|
}, [showHorizontal]);
|
|
140
121
|
var getTabOffset = useCallback(function (tabId) {
|
|
141
122
|
// 获取目标元素的位置
|
|
142
|
-
var targetPos = getTabPos(tabId);
|
|
143
|
-
|
|
123
|
+
var targetPos = getTabPos(tabId);
|
|
124
|
+
// 获取基准元素的位置(第一个)
|
|
144
125
|
var basePos = 0;
|
|
145
|
-
|
|
146
126
|
if (isArrayNonEmpty(data)) {
|
|
147
127
|
var baseItem = data[0];
|
|
148
128
|
basePos = getTabPos(baseItem.tabId);
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
|
|
129
|
+
}
|
|
130
|
+
// 返回目标元素相对基准元素的偏移量
|
|
152
131
|
return targetPos ? targetPos - basePos : 0;
|
|
153
132
|
}, [data, getTabPos]);
|
|
154
133
|
var syncScrollPosition = useCallback(function (tabId) {
|
|
@@ -156,19 +135,16 @@ var TabList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
156
135
|
if (!scrollElement) return;
|
|
157
136
|
var scrollSize = getClientSize(scrollElement);
|
|
158
137
|
var innerSize = getClientSize(innerElement);
|
|
159
|
-
var offsetValue = getTabOffset(tabId);
|
|
160
|
-
|
|
138
|
+
var offsetValue = getTabOffset(tabId);
|
|
139
|
+
// 左边或上半部内容展示不全
|
|
161
140
|
var currentOffset = -translatePos;
|
|
162
|
-
|
|
163
141
|
if (offsetValue < currentOffset) {
|
|
164
142
|
setTranslatePos(-offsetValue);
|
|
165
143
|
} else {
|
|
166
144
|
// 右边或下半部内容展示不全
|
|
167
145
|
var nextTabId = getNextTabId(data, tabId);
|
|
168
146
|
var nextOffsetValue = nextTabId !== null ? getTabOffset(nextTabId) : scrollSize;
|
|
169
|
-
|
|
170
147
|
var _currentOffset = -translatePos + innerSize;
|
|
171
|
-
|
|
172
148
|
if (nextOffsetValue > _currentOffset) {
|
|
173
149
|
setTranslatePos(translatePos - (nextOffsetValue - _currentOffset));
|
|
174
150
|
}
|
|
@@ -197,8 +173,8 @@ var TabList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
197
173
|
icon: showHorizontal ? /*#__PURE__*/React.createElement(LeftOutlined, null) : /*#__PURE__*/React.createElement(UpOutlined, null),
|
|
198
174
|
onClick: function onClick() {
|
|
199
175
|
if (!scrollElement) return;
|
|
200
|
-
if (!innerElement) return;
|
|
201
|
-
|
|
176
|
+
if (!innerElement) return;
|
|
177
|
+
// 向前面滚动
|
|
202
178
|
var clientSize = getClientSize(innerElement);
|
|
203
179
|
var canScroll = -translatePos - clientSize;
|
|
204
180
|
var moveWidth = canScroll >= 0 ? clientSize : -translatePos;
|
|
@@ -250,8 +226,8 @@ var TabList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
250
226
|
icon: showHorizontal ? /*#__PURE__*/React.createElement(RightOutlined, null) : /*#__PURE__*/React.createElement(DownOutlined, null),
|
|
251
227
|
onClick: function onClick() {
|
|
252
228
|
if (!scrollElement) return;
|
|
253
|
-
if (!innerElement) return;
|
|
254
|
-
|
|
229
|
+
if (!innerElement) return;
|
|
230
|
+
// 向后面滚动
|
|
255
231
|
var scrollSize = getClientSize(scrollElement);
|
|
256
232
|
var innerSize = getClientSize(innerElement);
|
|
257
233
|
var canScrollWidth = scrollSize - innerSize + translatePos;
|
|
@@ -266,9 +242,7 @@ var TabList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
266
242
|
onClick: onAdd
|
|
267
243
|
}) : null, extra);
|
|
268
244
|
});
|
|
269
|
-
|
|
270
245
|
if (__DEV__) {
|
|
271
246
|
TabList.displayName = 'TabList';
|
|
272
247
|
}
|
|
273
|
-
|
|
274
248
|
export { TabList };
|
package/lib/esm/TabPane.js
CHANGED
|
@@ -12,39 +12,31 @@ import React from 'react';
|
|
|
12
12
|
import { filterProps } from '@hi-ui/react-utils';
|
|
13
13
|
import { getPrefixCls, cx } from '@hi-ui/classname';
|
|
14
14
|
var _role = 'tabs-tab-pane';
|
|
15
|
-
|
|
16
15
|
var _prefix = getPrefixCls(_role);
|
|
17
|
-
|
|
18
16
|
var omitProps = ['tabId', 'tabTitle', 'disabled', 'tabDesc', 'closeable'];
|
|
19
|
-
|
|
20
17
|
var TabPane = function TabPane(_a) {
|
|
21
18
|
var children = _a.children,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
19
|
+
className = _a.className,
|
|
20
|
+
style = _a.style,
|
|
21
|
+
active = _a.active,
|
|
22
|
+
_a$unmountOnInactive = _a.unmountOnInactive,
|
|
23
|
+
unmountOnInactive = _a$unmountOnInactive === void 0 ? true : _a$unmountOnInactive,
|
|
24
|
+
rest = __rest(_a, ["children", "className", "style", "active", "unmountOnInactive"]);
|
|
29
25
|
var htmlProps = filterProps(rest, omitProps);
|
|
30
|
-
|
|
31
26
|
var _React$useState = React.useState(false),
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
27
|
+
isLoaded = _React$useState[0],
|
|
28
|
+
setIsLoaded = _React$useState[1];
|
|
35
29
|
var childrenContentMemo = React.useMemo(function () {
|
|
36
30
|
if (!unmountOnInactive) {
|
|
37
31
|
if (active && !isLoaded) {
|
|
38
32
|
setIsLoaded(true);
|
|
39
33
|
}
|
|
40
|
-
|
|
41
34
|
if (isLoaded) {
|
|
42
35
|
return children;
|
|
43
36
|
}
|
|
44
37
|
} else if (active) {
|
|
45
38
|
return children;
|
|
46
39
|
}
|
|
47
|
-
|
|
48
40
|
return null;
|
|
49
41
|
}, [active, children, isLoaded, unmountOnInactive]);
|
|
50
42
|
return /*#__PURE__*/React.createElement("div", Object.assign({
|
|
@@ -52,5 +44,4 @@ var TabPane = function TabPane(_a) {
|
|
|
52
44
|
className: cx(className, !unmountOnInactive && !active && _prefix + "--hide")
|
|
53
45
|
}, htmlProps), childrenContentMemo);
|
|
54
46
|
};
|
|
55
|
-
|
|
56
47
|
export { TabPane };
|
package/lib/esm/Tabs.js
CHANGED
|
@@ -15,51 +15,47 @@ import { TabList } from './TabList.js';
|
|
|
15
15
|
import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
|
|
16
16
|
import { isUndef } from '@hi-ui/type-assertion';
|
|
17
17
|
var _role = 'tabs';
|
|
18
|
-
|
|
19
18
|
var _prefix = getPrefixCls(_role);
|
|
20
19
|
/**
|
|
21
20
|
* Tabs 标签页
|
|
22
21
|
*/
|
|
23
|
-
|
|
24
|
-
|
|
25
22
|
var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
26
23
|
var _a$prefixCls = _a.prefixCls,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
24
|
+
prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
|
|
25
|
+
_a$role = _a.role,
|
|
26
|
+
role = _a$role === void 0 ? _role : _a$role,
|
|
27
|
+
className = _a.className,
|
|
28
|
+
children = _a.children,
|
|
29
|
+
defaultActiveId = _a.defaultActiveId,
|
|
30
|
+
activeId = _a.activeId,
|
|
31
|
+
onChange = _a.onChange,
|
|
32
|
+
onTabClick = _a.onTabClick,
|
|
33
|
+
editable = _a.editable,
|
|
34
|
+
_a$placement = _a.placement,
|
|
35
|
+
placement = _a$placement === void 0 ? 'horizontal' : _a$placement,
|
|
36
|
+
onAdd = _a.onAdd,
|
|
37
|
+
onDelete = _a.onDelete,
|
|
38
|
+
_a$draggable = _a.draggable,
|
|
39
|
+
draggable = _a$draggable === void 0 ? false : _a$draggable,
|
|
40
|
+
onDragStart = _a.onDragStart,
|
|
41
|
+
onDragOver = _a.onDragOver,
|
|
42
|
+
onDragEnd = _a.onDragEnd,
|
|
43
|
+
onDrop = _a.onDrop,
|
|
44
|
+
style = _a.style,
|
|
45
|
+
_a$type = _a.type,
|
|
46
|
+
type = _a$type === void 0 ? 'line' : _a$type,
|
|
47
|
+
extra = _a.extra,
|
|
48
|
+
rest = __rest(_a, ["prefixCls", "role", "className", "children", "defaultActiveId", "activeId", "onChange", "onTabClick", "editable", "placement", "onAdd", "onDelete", "draggable", "onDragStart", "onDragOver", "onDragEnd", "onDrop", "style", "type", "extra"]);
|
|
53
49
|
var tabList = useMemo(function () {
|
|
54
50
|
var list = [];
|
|
55
51
|
React.Children.map(children, function (child) {
|
|
56
52
|
if (child) {
|
|
57
53
|
var _child$props = child.props,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
54
|
+
tabTitle = _child$props.tabTitle,
|
|
55
|
+
tabId = _child$props.tabId,
|
|
56
|
+
tabDesc = _child$props.tabDesc,
|
|
57
|
+
closeable = _child$props.closeable,
|
|
58
|
+
disabled = _child$props.disabled;
|
|
63
59
|
var item = {
|
|
64
60
|
tabTitle: tabTitle,
|
|
65
61
|
tabId: tabId,
|
|
@@ -72,17 +68,14 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
72
68
|
});
|
|
73
69
|
return list;
|
|
74
70
|
}, [children]);
|
|
75
|
-
|
|
76
71
|
var _useUncontrolledState = useUncontrolledState(function () {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
setActiveTabId = _useUncontrolledState[1];
|
|
85
|
-
|
|
72
|
+
if (isUndef(defaultActiveId)) {
|
|
73
|
+
return tabList[0] ? tabList[0].tabId : '';
|
|
74
|
+
}
|
|
75
|
+
return defaultActiveId;
|
|
76
|
+
}, activeId, onChange),
|
|
77
|
+
activeTabId = _useUncontrolledState[0],
|
|
78
|
+
setActiveTabId = _useUncontrolledState[1];
|
|
86
79
|
var cls = cx(prefixCls, className, placement && prefixCls + "--placement-" + placement, type && prefixCls + "--type-" + type);
|
|
87
80
|
return /*#__PURE__*/React.createElement("div", Object.assign({
|
|
88
81
|
ref: ref,
|
|
@@ -116,9 +109,7 @@ var Tabs = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
116
109
|
}) : null;
|
|
117
110
|
})));
|
|
118
111
|
});
|
|
119
|
-
|
|
120
112
|
if (__DEV__) {
|
|
121
113
|
Tabs.displayName = 'Tabs';
|
|
122
114
|
}
|
|
123
|
-
|
|
124
115
|
export { Tabs };
|
package/lib/esm/hooks/index.js
CHANGED
|
@@ -10,16 +10,16 @@
|
|
|
10
10
|
import { useRef, useEffect } from 'react';
|
|
11
11
|
import { useLatestRef, useLatestCallback } from '@hi-ui/use-latest';
|
|
12
12
|
import { useUnmountEffect } from '@hi-ui/use-unmount-effect';
|
|
13
|
+
|
|
13
14
|
/**
|
|
14
15
|
* 响应式监听元素的 size 变化
|
|
15
16
|
*/
|
|
16
|
-
|
|
17
17
|
var useResizeObserver = function useResizeObserver(_ref) {
|
|
18
18
|
var element = _ref.element,
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
onResize = _ref.onResize,
|
|
20
|
+
_ref$initialSize = _ref.initialSize,
|
|
21
|
+
initialSize = _ref$initialSize === void 0 ? 0 : _ref$initialSize,
|
|
22
|
+
getSize = _ref.getSize;
|
|
23
23
|
var getSizeLatestRef = useLatestRef(getSize);
|
|
24
24
|
var onResizeLatest = useLatestCallback(onResize);
|
|
25
25
|
var prevSizeRef = useRef(initialSize);
|
|
@@ -29,11 +29,9 @@ var useResizeObserver = function useResizeObserver(_ref) {
|
|
|
29
29
|
var _resizeObserver = new ResizeObserver(function () {
|
|
30
30
|
if (unmountRef.current) return;
|
|
31
31
|
var getSize = getSizeLatestRef.current;
|
|
32
|
-
|
|
33
32
|
if (element) {
|
|
34
33
|
if (getSize) {
|
|
35
34
|
var nextSize = getSize(element);
|
|
36
|
-
|
|
37
35
|
if (prevSizeRef.current !== nextSize) {
|
|
38
36
|
prevSizeRef.current = nextSize;
|
|
39
37
|
onResizeLatest(element, nextSize);
|
|
@@ -43,12 +41,9 @@ var useResizeObserver = function useResizeObserver(_ref) {
|
|
|
43
41
|
}
|
|
44
42
|
}
|
|
45
43
|
});
|
|
46
|
-
|
|
47
44
|
_resizeObserver.observe(element);
|
|
48
45
|
}
|
|
49
|
-
|
|
50
46
|
return function () {};
|
|
51
47
|
}, [element, getSizeLatestRef, onResizeLatest, unmountRef]);
|
|
52
48
|
};
|
|
53
|
-
|
|
54
49
|
export { useResizeObserver };
|
package/lib/esm/index.js
CHANGED
|
@@ -9,11 +9,9 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import './styles/index.scss.js';
|
|
11
11
|
import { Tabs as Tabs$1 } from './Tabs.js';
|
|
12
|
-
export { Tabs } from './Tabs.js';
|
|
13
12
|
import { TabPane } from './TabPane.js';
|
|
14
|
-
export { TabPane } from './TabPane.js';
|
|
15
13
|
export { TabList } from './TabList.js';
|
|
16
14
|
var Tabs = Object.assign(Tabs$1, {
|
|
17
15
|
Pane: TabPane
|
|
18
16
|
});
|
|
19
|
-
export { Tabs as default };
|
|
17
|
+
export { TabPane, Tabs$1 as Tabs, Tabs as default };
|
|
@@ -8,8 +8,6 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import __styleInject__ from 'style-inject';
|
|
11
|
-
var css_248z = ".hi-v4-tabs__add-btn.hi-v4-icon-button {font-size: var(--hi-v4-text-size-md, 0.875rem); }.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 {margin: var(--hi-v4-spacing-1, 2px); }.hi-v4-tabs__close-btn {cursor: pointer;color: var(--hi-v4-color-gray-500, #929aa6);margin-left: var(--hi-v4-spacing-2, 4px);-webkit-transition: color 0.3s;transition: color 0.3s; }.hi-v4-tabs__close-btn:hover {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs--type-card .hi-v4-tabs__content {background-color: var(--hi-v4-color-static-white, #fff); }.hi-v4-tabs__list {position: relative;font-size: var(--hi-v4-text-size-md, 0.875rem);color: var(--hi-v4-color-gray-500, #929aa6);display: -webkit-box;display: -ms-flexbox;display: flex;overflow: hidden;-webkit-box-align: center;-ms-flex-align: center;align-items: center; }.hi-v4-tabs__list--card .hi-v4-tabs__item {background-color: var(--hi-v4-color-gray-200, #ebedf0);margin: 0;padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);border-radius: 0;-webkit-transition: all 0.3s;transition: all 0.3s; }.hi-v4-tabs__list--card .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-static-white, #fff);border-radius: var(--hi-v4-border-radius-md, 4px) 0 0 var(--hi-v4-border-radius-md, 4px); }.hi-v4-tabs__list--button .hi-v4-tabs__item {margin: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) 0;padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-10, 20px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s; }.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6); }.hi-v4-tabs__list--button .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }.hi-v4-tabs__list--desc {padding: 0 var(--hi-v4-spacing-10, 20px); }.hi-v4-tabs__list--desc .hi-v4-tabs-item__title {color: var(--hi-v4-color-gray-700, #1f2733); }.hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {color: var(--hi-v4-color-gray-500, #929aa6);font-size: var(--hi-v4-text-size-sm, 0.75rem);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }.hi-v4-tabs__list--desc .hi-v4-tabs__item {background: var(--hi-v4-color-gray-50, #f5f7fa);display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;-webkit-box-align: center;-ms-flex-align: center;align-items: center;margin: var(--hi-v4-spacing-10, 20px) var(--hi-v4-spacing-6, 12px) var(--hi-v4-spacing-10, 20px) 0;padding: var(--hi-v4-spacing-8, 16px) var(--hi-v4-spacing-10, 20px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s; }.hi-v4-tabs__list--desc .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6); }.hi-v4-tabs__list--desc .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__list--inner {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-flex: 1;-ms-flex: 1 1;flex: 1 1;position: relative;overflow: hidden; }.hi-v4-tabs__list--scroll {display: -webkit-box;display: -ms-flexbox;display: flex;position: relative;-ms-flex-negative: 0;flex-shrink: 0;-webkit-transition-property: -webkit-transform;transition-property: -webkit-transform;transition-property: transform;transition-property: transform, -webkit-transform;-webkit-transition-duration: var(--hi-v4-motion-duration-slow, 300ms);transition-duration: var(--hi-v4-motion-duration-slow, 300ms);-webkit-transition-timing-function: var(--hi-v4-motion-bezier-easing, cubic-bezier(0.37, 0.02, 0.34, 1));transition-timing-function: var(--hi-v4-motion-bezier-easing, cubic-bezier(0.37, 0.02, 0.34, 1));will-change: transform; }.hi-v4-tabs__list--placement-vertical > .hi-v4-tabs__list--inner > .hi-v4-tabs__list--scroll {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column; }.hi-v4-tabs__list--placement-vertical {display: -webkit-inline-box;display: -ms-inline-flexbox;display: inline-flex; }.hi-v4-tabs--placement-vertical {display: -webkit-box;display: -ms-flexbox;display: flex; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__content {padding-left: 16px;padding-top: 0; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list {-ms-flex-negative: 0;flex-shrink: 0;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__list--scroll {row-gap: var(--hi-v4-spacing-6, 12px); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--card .hi-v4-tabs__item--active {border-radius: var(--hi-v4-border-radius-md, 4px) 0 0 var(--hi-v4-border-radius-md, 4px); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--button .hi-v4-tabs__list--scroll {row-gap: var(--hi-v4-spacing-2, 4px); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--inner {width: auto;display: block;position: relative; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--scroll {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;position: relative; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item {line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);margin: 0;-webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item--prev {border-top: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));border-left: none; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item--next {border-bottom: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));border-right: none; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__ink {position: absolute;left: 0;bottom: auto;width: 2px;background-color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));-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);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); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--card .hi-v4-tabs__item {margin: 0;padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);background-color: var(--hi-v4-color-gray-200, #ebedf0);border-radius: 0;-webkit-transition: all 0.3s;transition: all 0.3s; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--card .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-static-white, #fff);border-radius: var(--hi-v4-border-radius-md, 4px) 0 0 var(--hi-v4-border-radius-md, 4px); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--button .hi-v4-tabs__item {margin: 0 0 var(--hi-v4-spacing-2, 4px) 0;padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-10, 20px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s; }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--button .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs-item__title {color: var(--hi-v4-color-gray-700, #1f2733); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {color: var(--hi-v4-color-gray-500, #929aa6);font-size: var(--hi-v4-text-size-sm, 0.75rem);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;-webkit-box-align: center;-ms-flex-align: center;align-items: center;margin: 0 0 var(--hi-v4-spacing-6, 12px) 0;padding: var(--hi-v4-spacing-8, 16px) var(--hi-v4-spacing-10, 20px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s;background: var(--hi-v4-color-gray-50, #f5f7fa); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe)); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__ink {position: absolute;bottom: 0;right: auto;top: auto;height: 2px;background-color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));-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);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); }.hi-v4-tabs__item {line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);margin: 0;cursor: pointer;-ms-flex-negative: 0;flex-shrink: 0;-webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }.hi-v4-tabs__item:focus {outline: 0; }.hi-v4-tabs__item:not(.hi-v4-tabs__item--disabled):hover {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__item--prev {border-left: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__item--next {border-right: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa)); }.hi-v4-tabs__item--disabled, .hi-v4-tabs__item--disabled .hi-v4-tabs__close-btn {color: var(--hi-v4-color-gray-400, #c9ced6);cursor: not-allowed; }.hi-v4-tabs__item:not(.hi-v4-tabs__item--active) {overflow: hidden;white-space: nowrap;text-overflow: ellipsis; }.hi-v4-tabs__content {width: 100%;overflow: hidden;padding-top: var(--hi-v4-spacing-8, 16px);-webkit-box-sizing: border-box;box-sizing: border-box; }.hi-v4-tabs-tab-pane--hide {display: none; }";
|
|
12
|
-
|
|
11
|
+
var css_248z = ".hi-v4-tabs__add-btn.hi-v4-icon-button {font-size: var(--hi-v4-text-size-md, 0.875rem);}.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 {margin: var(--hi-v4-spacing-1, 2px);}.hi-v4-tabs__close-btn {cursor: pointer;color: var(--hi-v4-color-gray-500, #929aa6);margin-left: var(--hi-v4-spacing-2, 4px);-webkit-transition: color 0.3s;transition: color 0.3s;}.hi-v4-tabs__close-btn:hover {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs--type-card .hi-v4-tabs__content {background-color: var(--hi-v4-color-static-white, #fff);}.hi-v4-tabs__list {position: relative;font-size: var(--hi-v4-text-size-md, 0.875rem);color: var(--hi-v4-color-gray-500, #929aa6);display: -webkit-box;display: -ms-flexbox;display: flex;overflow: hidden;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}.hi-v4-tabs__list--card .hi-v4-tabs__item {background-color: var(--hi-v4-color-gray-200, #ebedf0);margin: 0;padding: var(--hi-v4-spacing-5, 10px) var(--hi-v4-spacing-8, 16px);border-radius: 0;-webkit-transition: all 0.3s;transition: all 0.3s;line-height: var(--hi-v4-text-lineheight-sm, 1.25rem);}.hi-v4-tabs__list--card .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-static-white, #fff);border-radius: var(--hi-v4-border-radius-md, 4px) 0 0 var(--hi-v4-border-radius-md, 4px);}.hi-v4-tabs__list--button .hi-v4-tabs__item {position: relative;margin: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-2, 4px) 0;padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-6, 12px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s;}.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6);}.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover::after {display: none;}.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover + .hi-v4-tabs__item::after {display: none;}.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled))::after {content: \"\";position: absolute;width: 1px;height: var(--hi-v4-height-4, 16px);background-color: var(--hi-v4-color-gray-300, #dfe2e8);left: 0;top: 50%;-webkit-transform: translateY(-50%);transform: translateY(-50%);}.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):first-child::after {display: none;}.hi-v4-tabs__list--button .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe));}.hi-v4-tabs__list--button .hi-v4-tabs__item--active + .hi-v4-tabs__item::after {display: none;}.hi-v4-tabs__list--desc .hi-v4-tabs-item__title {color: var(--hi-v4-color-gray-700, #1f2733);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem);}.hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {color: var(--hi-v4-color-gray-500, #929aa6);font-size: var(--hi-v4-text-size-sm, 0.75rem);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem);}.hi-v4-tabs__list--desc .hi-v4-tabs__item {background: var(--hi-v4-color-gray-50, #f5f7fa);display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;-webkit-box-align: center;-ms-flex-align: center;align-items: center;margin: 0 var(--hi-v4-spacing-6, 12px) 0 0;padding: var(--hi-v4-spacing-8, 16px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s;}.hi-v4-tabs__list--desc .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6);}.hi-v4-tabs__list--desc .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe));}.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs__list--inner {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-flex: 1;-ms-flex: 1 1;flex: 1 1;position: relative;overflow: hidden;}.hi-v4-tabs__list--scroll {display: -webkit-box;display: -ms-flexbox;display: flex;position: relative;-ms-flex-negative: 0;flex-shrink: 0;-webkit-transition-property: -webkit-transform;transition-property: -webkit-transform;transition-property: transform;transition-property: transform, -webkit-transform;-webkit-transition-duration: var(--hi-v4-motion-duration-slow, 300ms);transition-duration: var(--hi-v4-motion-duration-slow, 300ms);-webkit-transition-timing-function: var(--hi-v4-motion-bezier-easing, cubic-bezier(0.37, 0.02, 0.34, 1));transition-timing-function: var(--hi-v4-motion-bezier-easing, cubic-bezier(0.37, 0.02, 0.34, 1));will-change: transform;}.hi-v4-tabs__list--placement-vertical > .hi-v4-tabs__list--inner > .hi-v4-tabs__list--scroll {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}.hi-v4-tabs__list--placement-vertical {display: -webkit-inline-box;display: -ms-inline-flexbox;display: inline-flex;}.hi-v4-tabs--placement-vertical {display: -webkit-box;display: -ms-flexbox;display: flex;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__content {padding-left: 16px;padding-top: 0;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list {-ms-flex-negative: 0;flex-shrink: 0;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs-item__title {color: var(--hi-v4-color-gray-700, #1f2733);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs-item__desc {color: var(--hi-v4-color-gray-500, #929aa6);font-size: var(--hi-v4-text-size-sm, 0.75rem);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__item {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;-webkit-box-align: center;-ms-flex-align: center;align-items: center;padding: var(--hi-v4-spacing-8, 16px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s;background: var(--hi-v4-color-gray-50, #f5f7fa);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe));}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__title {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__item--active .hi-v4-tabs-item__desc {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--desc .hi-v4-tabs__list--scroll {row-gap: var(--hi-v4-spacing-6, 12px);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--card .hi-v4-tabs__item {margin: 0;padding: var(--hi-v4-spacing-5, 10px) var(--hi-v4-spacing-8, 16px);background-color: var(--hi-v4-color-gray-200, #ebedf0);border-radius: 0;-webkit-transition: all 0.3s;transition: all 0.3s;line-height: var(--hi-v4-text-lineheight-sm, 1.25rem);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--card .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-static-white, #fff);border-radius: var(--hi-v4-border-radius-md, 4px) 0 0 var(--hi-v4-border-radius-md, 4px);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--button .hi-v4-tabs__item {margin: 0 0 var(--hi-v4-spacing-2, 4px) 0;padding: var(--hi-v4-spacing-2, 4px) var(--hi-v4-spacing-6, 12px);border-radius: var(--hi-v4-border-radius-md, 4px);-webkit-transition: all 0.3s;transition: all 0.3s;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--button .hi-v4-tabs__item:not(:where(.hi-v4-tabs__item--active, .hi-v4-tabs__item--disabled)):hover {background-color: var(--hi-v4-color-gray-200, #ebedf0);color: var(--hi-v4-color-gray-500, #929aa6);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--button .hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));background-color: var(--hi-v4-color-primary-50, var(--hi-v4-color-brandblue-50, #e2f3fe));}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list.hi-v4-tabs__list--button .hi-v4-tabs__list--scroll {row-gap: var(--hi-v4-spacing-2, 4px);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--inner {width: auto;display: block;position: relative;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__list--scroll {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;position: relative;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item {line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);margin: 0;-webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item::after {display: none;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item--prev {border-top: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));border-left: none;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__item--next {border-bottom: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));border-right: none;}.hi-v4-tabs--placement-vertical > .hi-v4-tabs__list .hi-v4-tabs__ink {position: absolute;left: 0;bottom: auto;width: 2px;background-color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));-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);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);}.hi-v4-tabs__ink {position: absolute;bottom: 0;right: auto;top: auto;height: 2px;background-color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));-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);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);}.hi-v4-tabs__item {line-height: var(--hi-v4-text-lineheight-lg, 1.5rem);padding: var(--hi-v4-spacing-4, 8px) var(--hi-v4-spacing-10, 20px);margin: 0;cursor: pointer;-ms-flex-negative: 0;flex-shrink: 0;-webkit-transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);transition: all 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);}.hi-v4-tabs__item:focus {outline: 0;}.hi-v4-tabs__item:not(.hi-v4-tabs__item--disabled):hover {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs__item--active {color: var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs__item--prev {border-left: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs__item--next {border-right: 1px dashed var(--hi-v4-color-primary-500, var(--hi-v4-color-brandblue-500, #237ffa));}.hi-v4-tabs__item--disabled, .hi-v4-tabs__item--disabled .hi-v4-tabs__close-btn {color: var(--hi-v4-color-gray-400, #b5bcc7);cursor: not-allowed;}.hi-v4-tabs__item:not(.hi-v4-tabs__item--active) {overflow: hidden;white-space: nowrap;text-overflow: ellipsis;}.hi-v4-tabs__content {width: 100%;overflow: hidden;padding-top: var(--hi-v4-spacing-8, 16px);-webkit-box-sizing: border-box;box-sizing: border-box;}.hi-v4-tabs-tab-pane--hide {display: none;}";
|
|
13
12
|
__styleInject__(css_248z);
|
|
14
|
-
|
|
15
13
|
export { css_248z as default };
|
package/lib/esm/utils/index.js
CHANGED
|
@@ -8,19 +8,15 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import { isArrayNonEmpty } from '@hi-ui/type-assertion';
|
|
11
|
-
|
|
12
11
|
var getNextTabId = function getNextTabId(data, tabId) {
|
|
13
12
|
if (isArrayNonEmpty(data)) {
|
|
14
13
|
var itemIndex = data.findIndex(function (item) {
|
|
15
14
|
return item.tabId === tabId;
|
|
16
15
|
});
|
|
17
|
-
|
|
18
16
|
if (itemIndex !== -1 && data[itemIndex + 1]) {
|
|
19
17
|
return data[itemIndex + 1].tabId;
|
|
20
18
|
}
|
|
21
19
|
}
|
|
22
|
-
|
|
23
20
|
return null;
|
|
24
21
|
};
|
|
25
|
-
|
|
26
22
|
export { getNextTabId };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hi-ui/tabs",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.2",
|
|
4
4
|
"description": "A sub-package for @hi-ui/hiui.",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "HiUI <mi-hiui@xiaomi.com>",
|
|
@@ -43,24 +43,24 @@
|
|
|
43
43
|
"url": "https://github.com/XiaoMi/hiui/issues"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@hi-ui/classname": "^4.0.
|
|
47
|
-
"@hi-ui/env": "^4.0.
|
|
48
|
-
"@hi-ui/icon-button": "^4.0.
|
|
49
|
-
"@hi-ui/icons": "^4.0.
|
|
50
|
-
"@hi-ui/react-utils": "^4.0.
|
|
51
|
-
"@hi-ui/type-assertion": "^4.0.
|
|
52
|
-
"@hi-ui/use-latest": "^4.0.
|
|
53
|
-
"@hi-ui/use-uncontrolled-state": "^4.0.
|
|
54
|
-
"@hi-ui/use-unmount-effect": "^4.0.
|
|
46
|
+
"@hi-ui/classname": "^4.0.2",
|
|
47
|
+
"@hi-ui/env": "^4.0.2",
|
|
48
|
+
"@hi-ui/icon-button": "^4.0.6",
|
|
49
|
+
"@hi-ui/icons": "^4.0.16",
|
|
50
|
+
"@hi-ui/react-utils": "^4.0.2",
|
|
51
|
+
"@hi-ui/type-assertion": "^4.0.2",
|
|
52
|
+
"@hi-ui/use-latest": "^4.0.2",
|
|
53
|
+
"@hi-ui/use-uncontrolled-state": "^4.0.2",
|
|
54
|
+
"@hi-ui/use-unmount-effect": "^4.0.2"
|
|
55
55
|
},
|
|
56
56
|
"peerDependencies": {
|
|
57
|
-
"@hi-ui/core": ">=4.0.
|
|
57
|
+
"@hi-ui/core": ">=4.0.6",
|
|
58
58
|
"react": ">=16.8.6",
|
|
59
59
|
"react-dom": ">=16.8.6"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@hi-ui/core": "^4.0.
|
|
63
|
-
"@hi-ui/core-css": "^4.
|
|
62
|
+
"@hi-ui/core": "^4.0.6",
|
|
63
|
+
"@hi-ui/core-css": "^4.1.3",
|
|
64
64
|
"react": "^17.0.1",
|
|
65
65
|
"react-dom": "^17.0.1"
|
|
66
66
|
}
|