@cleartrip/ct-design-tabs 1.1.0 → 1.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/dist/StyledCounter/StyledCounter.d.ts +2 -7
- package/dist/StyledCounter/index.d.ts +1 -1
- package/dist/StyledCounter/style.d.ts +4 -7
- package/dist/StyledCounter/style.d.ts.map +1 -1
- package/dist/StyledCounter/type.d.ts +2 -2
- package/dist/StyledCounter/type.d.ts.map +1 -1
- package/dist/TabItem/TabItem.d.ts +8 -15
- package/dist/TabItem/TabItem.d.ts.map +1 -1
- package/dist/TabItem/index.d.ts +1 -1
- package/dist/TabItem/type.d.ts +16 -15
- package/dist/TabItem/type.d.ts.map +1 -1
- package/dist/Tabs.d.ts +1 -1
- package/dist/Tabs.d.ts.map +1 -1
- package/dist/ct-design-tabs.browser.cjs.js +1 -231
- package/dist/ct-design-tabs.browser.cjs.js.map +1 -1
- package/dist/ct-design-tabs.browser.esm.js +1 -216
- package/dist/ct-design-tabs.browser.esm.js.map +1 -1
- package/dist/ct-design-tabs.cjs.js +107 -249
- package/dist/ct-design-tabs.cjs.js.map +1 -1
- package/dist/ct-design-tabs.esm.js +102 -237
- package/dist/ct-design-tabs.esm.js.map +1 -1
- package/dist/ct-design-tabs.umd.js +170 -363
- package/dist/ct-design-tabs.umd.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/stats.html +4835 -6300
- package/dist/style.d.ts +2 -8
- package/dist/type.d.ts +19 -18
- package/dist/type.d.ts.map +1 -1
- package/dist/useEventCallback.d.ts +2 -4
- package/dist/useEventCallback.d.ts.map +1 -1
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ct-design-tabs.browser.esm.js","sources":["../packages/components/Tabs/src/style.ts","../packages/components/Tabs/src/TabItem/TabItem.tsx","../packages/components/Tabs/src/Tabs.tsx"],"sourcesContent":[null,null,null],"names":["getLabelVariant","_a","size","TypographyVariant","B2","B1","getTabLabelColor","selected","theme","focusColor","color","tab","selectedPrimaryLabel","nonSelectedPrimaryLabel","TabItem","forwardRef","props","tabKey","onClick","tabIndex","label","disabled","_b","tabItemCSS","Root","css","children","useTheme","tabItemStyles","rest","__rest","__assign","backgroundColor","outline","border","getTabItemStyles","handleClick","useCallback","event","_c","_jsx","Button","Typography","variant","colorCode","StyledTab","styled","div","isHorizontal","width","height","display","flexDirection","justifyContent","borderBottomWidth","sm","borderColor","default","borderBottomStyle","style","solid","cursor","position","getTabStyles","StyledFlexContainer","Indicator","left","bottom","transition","background","primary","Tab","forwardedRef","tabList","selectedTabIndex","tabCSS","isMounted","useState","setIsMounted","useEffect","useMounted","_d","usePropState","selectedIndex","setSelectedIndex","_e","indicatorStyle","setIndicatorStyle","listRef","useRef","tabsRef","handleRef","useMergeRefs","current","undefined","tabMeta","getBoundingClientRect","rect","tabsMeta","scrollLeft","correction","newIndicatorStyle","dStart","Math","abs","dSize","updateIndicatorState","e","tabItem","tabItemList","map","item","index","TabItemCSS","indicatorStyles","IndicatorCSS","_jsxs","ref"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ct-design-tabs.browser.esm.js","sources":["../packages/components/Tabs/src/style.ts","../packages/components/Tabs/src/TabItem/TabItem.tsx","../packages/components/Tabs/src/Tabs.tsx"],"sourcesContent":[null,null,null],"names":["getLabelVariant","_a","size","TypographyVariant","B2","B1","getTabLabelColor","selected","theme","focusColor","color","tab","selectedPrimaryLabel","nonSelectedPrimaryLabel","TabItem","forwardRef","props","tabKey","onClick","tabIndex","label","disabled","_b","tabItemCSS","Root","css","children","useTheme","tabItemStyles","rest","__rest","__assign","backgroundColor","outline","border","getTabItemStyles","handleClick","useCallback","event","_c","_jsx","Button","Typography","variant","colorCode","StyledTab","styled","div","isHorizontal","width","height","display","flexDirection","justifyContent","borderBottomWidth","sm","borderColor","default","borderBottomStyle","style","solid","cursor","position","getTabStyles","StyledFlexContainer","Indicator","left","bottom","transition","background","primary","Tab","forwardedRef","tabList","selectedTabIndex","tabCSS","isMounted","useState","setIsMounted","useEffect","useMounted","_d","usePropState","selectedIndex","setSelectedIndex","_e","indicatorStyle","setIndicatorStyle","listRef","useRef","tabsRef","handleRef","useMergeRefs","current","undefined","tabMeta","getBoundingClientRect","rect","tabsMeta","scrollLeft","correction","newIndicatorStyle","dStart","Math","abs","dSize","updateIndicatorState","e","tabItem","tabItemList","map","item","index","TabItemCSS","indicatorStyles","IndicatorCSS","_jsxs","ref"],"mappings":"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"}
|
|
@@ -8,279 +8,137 @@ var ctDesignButton = require('@cleartrip/ct-design-button');
|
|
|
8
8
|
var useTheme = require('@cleartrip/ct-design-use-theme');
|
|
9
9
|
var ctDesignTypography = require('@cleartrip/ct-design-typography');
|
|
10
10
|
var useMergeRefs = require('@cleartrip/ct-design-use-merge-refs');
|
|
11
|
-
var usePropState = require('@cleartrip/ct-design-use-
|
|
11
|
+
var usePropState = require('@cleartrip/ct-design-use-prop-state');
|
|
12
12
|
|
|
13
|
-
function _interopDefault(e) {
|
|
14
|
-
return e && e.__esModule ? e : { default: e };
|
|
15
|
-
}
|
|
13
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
14
|
|
|
17
|
-
var styled__default = /*#__PURE__*/
|
|
18
|
-
var useTheme__default = /*#__PURE__*/
|
|
19
|
-
var useMergeRefs__default = /*#__PURE__*/
|
|
20
|
-
var usePropState__default = /*#__PURE__*/
|
|
15
|
+
var styled__default = /*#__PURE__*/_interopDefault(styled);
|
|
16
|
+
var useTheme__default = /*#__PURE__*/_interopDefault(useTheme);
|
|
17
|
+
var useMergeRefs__default = /*#__PURE__*/_interopDefault(useMergeRefs);
|
|
18
|
+
var usePropState__default = /*#__PURE__*/_interopDefault(usePropState);
|
|
21
19
|
|
|
22
20
|
var getTabStyles = function (_a) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
width = _a.width,
|
|
26
|
-
height = _a.height,
|
|
27
|
-
rest = tslib.__rest(_a, ['theme', 'isHorizontal', 'width', 'height']);
|
|
28
|
-
return tslib.__assign(
|
|
29
|
-
{
|
|
30
|
-
display: 'flex',
|
|
31
|
-
flexDirection: isHorizontal ? 'row' : 'column',
|
|
32
|
-
width: width || isHorizontal ? '100%' : '',
|
|
33
|
-
height: height || !isHorizontal ? '100%' : '',
|
|
34
|
-
justifyContent: 'space-between',
|
|
35
|
-
borderBottomWidth: theme.border.width.sm,
|
|
36
|
-
borderColor: theme.color.border.default,
|
|
37
|
-
borderBottomStyle: theme.border.style.solid,
|
|
38
|
-
cursor: 'pointer',
|
|
39
|
-
position: 'relative',
|
|
40
|
-
},
|
|
41
|
-
rest
|
|
42
|
-
);
|
|
21
|
+
var theme = _a.theme, isHorizontal = _a.isHorizontal, width = _a.width, height = _a.height, rest = tslib.__rest(_a, ["theme", "isHorizontal", "width", "height"]);
|
|
22
|
+
return (tslib.__assign({ display: 'flex', flexDirection: isHorizontal ? 'row' : 'column', width: width || isHorizontal ? '100%' : '', height: height || !isHorizontal ? '100%' : '', justifyContent: 'space-between', borderBottomWidth: theme.border.width.sm, borderColor: theme.color.border.default, borderBottomStyle: theme.border.style.solid, cursor: 'pointer', position: 'relative' }, rest));
|
|
43
23
|
};
|
|
44
24
|
|
|
45
25
|
var getTabItemStyles = function (_a) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
return tslib.__assign({ backgroundColor: 'transparent', outline: 0, border: 0 }, rest);
|
|
26
|
+
_a.theme; var rest = tslib.__rest(_a, ["theme"]);
|
|
27
|
+
return (tslib.__assign({ backgroundColor: 'transparent', outline: 0, border: 0 }, rest));
|
|
49
28
|
};
|
|
50
29
|
var getLabelVariant = function (_a) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
30
|
+
var size = _a.size;
|
|
31
|
+
switch (size) {
|
|
32
|
+
case 'small': {
|
|
33
|
+
return ctDesignTypography.TypographyVariant.B2;
|
|
34
|
+
}
|
|
35
|
+
case 'medium': {
|
|
36
|
+
return ctDesignTypography.TypographyVariant.B1;
|
|
37
|
+
}
|
|
38
|
+
case 'large': {
|
|
39
|
+
return ctDesignTypography.TypographyVariant.B1;
|
|
40
|
+
}
|
|
41
|
+
default: {
|
|
42
|
+
return ctDesignTypography.TypographyVariant.B2;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
66
45
|
};
|
|
67
46
|
var getTabLabelColor = function (_a) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
return color || theme.color.tab.nonSelectedPrimaryLabel;
|
|
76
|
-
}
|
|
47
|
+
var selected = _a.selected, theme = _a.theme, focusColor = _a.focusColor, color = _a.color;
|
|
48
|
+
if (selected) {
|
|
49
|
+
return focusColor || color || theme.color.tab.selectedPrimaryLabel;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
return color || theme.color.tab.nonSelectedPrimaryLabel;
|
|
53
|
+
}
|
|
77
54
|
};
|
|
78
55
|
var TabItem = react.forwardRef(function (props) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
css = props.css,
|
|
90
|
-
focusColor = props.focusColor,
|
|
91
|
-
children = props.children;
|
|
92
|
-
var theme = useTheme__default.default();
|
|
93
|
-
var tabItemStyles = getTabItemStyles(
|
|
94
|
-
tslib.__assign(
|
|
95
|
-
tslib.__assign({ theme: theme }, css),
|
|
96
|
-
tabItemCSS === null || tabItemCSS === void 0 ? void 0 : tabItemCSS.Root
|
|
97
|
-
)
|
|
98
|
-
);
|
|
99
|
-
var handleClick = react.useCallback(
|
|
100
|
-
function (event) {
|
|
101
|
-
if (!disabled) {
|
|
102
|
-
onClick(event, props);
|
|
103
|
-
}
|
|
104
|
-
},
|
|
105
|
-
[tabKey, onClick]
|
|
106
|
-
);
|
|
107
|
-
var _c = tabItemCSS.label,
|
|
108
|
-
color = _c.color;
|
|
109
|
-
tslib.__rest(_c, ['color']);
|
|
110
|
-
return jsxRuntime.jsx(
|
|
111
|
-
ctDesignButton.Button,
|
|
112
|
-
tslib.__assign(
|
|
113
|
-
{ disabled: disabled, css: tabItemStyles, onClick: handleClick, tabIndex: tabIndex },
|
|
114
|
-
{
|
|
115
|
-
children: label
|
|
116
|
-
? jsxRuntime.jsx(
|
|
117
|
-
ctDesignTypography.Typography,
|
|
118
|
-
tslib.__assign(
|
|
119
|
-
{
|
|
120
|
-
variant: getLabelVariant({ size: size }),
|
|
121
|
-
colorCode: getTabLabelColor({
|
|
122
|
-
selected: selected,
|
|
123
|
-
theme: theme,
|
|
124
|
-
focusColor: focusColor,
|
|
125
|
-
color: color,
|
|
126
|
-
}),
|
|
127
|
-
},
|
|
128
|
-
{ children: label }
|
|
129
|
-
)
|
|
130
|
-
)
|
|
131
|
-
: children,
|
|
132
|
-
}
|
|
133
|
-
)
|
|
134
|
-
);
|
|
56
|
+
var tabKey = props.tabKey, onClick = props.onClick, tabIndex = props.tabIndex, _a = props.selected, selected = _a === void 0 ? false : _a, label = props.label, disabled = props.disabled, size = props.size, _b = props.tabItemCSS, tabItemCSS = _b === void 0 ? { label: {}, Root: {} } : _b, css = props.css, focusColor = props.focusColor, children = props.children;
|
|
57
|
+
var theme = useTheme__default.default();
|
|
58
|
+
var tabItemStyles = getTabItemStyles(tslib.__assign(tslib.__assign({ theme: theme }, css), tabItemCSS === null || tabItemCSS === void 0 ? void 0 : tabItemCSS.Root));
|
|
59
|
+
var handleClick = react.useCallback(function (event) {
|
|
60
|
+
if (!disabled) {
|
|
61
|
+
onClick(event, props);
|
|
62
|
+
}
|
|
63
|
+
}, [tabKey, onClick]);
|
|
64
|
+
var _c = tabItemCSS.label, color = _c.color; tslib.__rest(_c, ["color"]);
|
|
65
|
+
return (jsxRuntime.jsx(ctDesignButton.Button, tslib.__assign({ disabled: disabled, css: tabItemStyles, onClick: handleClick, tabIndex: tabIndex }, { children: label ? (jsxRuntime.jsx(ctDesignTypography.Typography, tslib.__assign({ variant: getLabelVariant({ size: size }), colorCode: getTabLabelColor({ selected: selected, theme: theme, focusColor: focusColor, color: color }) }, { children: label }))) : (children) })));
|
|
135
66
|
});
|
|
136
67
|
|
|
137
68
|
var useMounted = function () {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}, []);
|
|
144
|
-
return isMounted;
|
|
69
|
+
var _a = react.useState(false), isMounted = _a[0], setIsMounted = _a[1];
|
|
70
|
+
react.useEffect(function () {
|
|
71
|
+
setIsMounted(true);
|
|
72
|
+
}, []);
|
|
73
|
+
return isMounted;
|
|
145
74
|
};
|
|
146
75
|
var StyledTab = styled__default.default.div(function (_a) {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
_b = _a.isHorizontal,
|
|
150
|
-
isHorizontal = _b === void 0 ? true : _b,
|
|
151
|
-
width = _a.width,
|
|
152
|
-
height = _a.height;
|
|
153
|
-
return getTabStyles(
|
|
154
|
-
tslib.__assign({ theme: theme, isHorizontal: isHorizontal, width: width, height: height }, css)
|
|
155
|
-
);
|
|
76
|
+
var css = _a.css, theme = _a.theme, _b = _a.isHorizontal, isHorizontal = _b === void 0 ? true : _b, width = _a.width, height = _a.height;
|
|
77
|
+
return getTabStyles(tslib.__assign({ theme: theme, isHorizontal: isHorizontal, width: width, height: height }, css));
|
|
156
78
|
});
|
|
157
79
|
var StyledFlexContainer = styled__default.default.div(function (_a) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
80
|
+
_a.theme;
|
|
81
|
+
return ({
|
|
82
|
+
display: 'flex',
|
|
83
|
+
flexDirection: 'row',
|
|
84
|
+
});
|
|
163
85
|
});
|
|
164
86
|
var Indicator = styled__default.default.div(function (_a) {
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
width: width,
|
|
176
|
-
left: left,
|
|
177
|
-
};
|
|
87
|
+
var theme = _a.theme, width = _a.width, left = _a.left, color = _a.color;
|
|
88
|
+
return ({
|
|
89
|
+
position: 'absolute',
|
|
90
|
+
height: '2px',
|
|
91
|
+
bottom: 0,
|
|
92
|
+
transition: 'all ease-in 0.3s',
|
|
93
|
+
backgroundColor: color || theme.color.background.primary,
|
|
94
|
+
width: width,
|
|
95
|
+
left: left,
|
|
96
|
+
});
|
|
178
97
|
});
|
|
179
98
|
var Tab = react.forwardRef(function (_a, forwardedRef) {
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
var startValue = tabMeta.left - tabsMeta.left + correction;
|
|
224
|
-
var newIndicatorStyle = { left: startValue, width: tabMeta.width };
|
|
225
|
-
var dStart = Math.abs(indicatorStyle.left - newIndicatorStyle.left);
|
|
226
|
-
var dSize = Math.abs(indicatorStyle.width - newIndicatorStyle.width);
|
|
227
|
-
if (dStart >= 1 || dSize >= 1) {
|
|
228
|
-
setIndicatorStyle(newIndicatorStyle);
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
};
|
|
232
|
-
react.useEffect(
|
|
233
|
-
function () {
|
|
234
|
-
updateIndicatorState();
|
|
235
|
-
},
|
|
236
|
-
[selectedIndex]
|
|
237
|
-
);
|
|
238
|
-
var handleClick = function (e, tabItem) {
|
|
239
|
-
setSelectedIndex(tabItem.tabIndex || 0);
|
|
240
|
-
if (onClick) {
|
|
241
|
-
onClick(e, tabItem);
|
|
242
|
-
}
|
|
243
|
-
};
|
|
244
|
-
var tabItemList = tabList.map(function (item, index) {
|
|
245
|
-
return jsxRuntime.jsx(
|
|
246
|
-
TabItem,
|
|
247
|
-
{
|
|
248
|
-
selected: index === selectedIndex,
|
|
249
|
-
tabIndex: index,
|
|
250
|
-
tabKey: index,
|
|
251
|
-
onClick: handleClick,
|
|
252
|
-
label: item.label,
|
|
253
|
-
tabItemCSS: tabCSS === null || tabCSS === void 0 ? void 0 : tabCSS.TabItemCSS,
|
|
254
|
-
focusColor: focusColor,
|
|
255
|
-
},
|
|
256
|
-
index
|
|
257
|
-
);
|
|
258
|
-
});
|
|
259
|
-
var indicatorStyles = tslib.__assign(
|
|
260
|
-
tslib.__assign({}, indicatorStyle),
|
|
261
|
-
tabCSS === null || tabCSS === void 0 ? void 0 : tabCSS.IndicatorCSS
|
|
262
|
-
);
|
|
263
|
-
return jsxRuntime.jsxs(
|
|
264
|
-
StyledTab,
|
|
265
|
-
tslib.__assign(
|
|
266
|
-
{
|
|
267
|
-
ref: handleRef,
|
|
268
|
-
theme: theme,
|
|
269
|
-
isHorizontal: isHorizontal,
|
|
270
|
-
css: tslib.__assign(
|
|
271
|
-
tslib.__assign({}, css),
|
|
272
|
-
tabCSS === null || tabCSS === void 0 ? void 0 : tabCSS.Root
|
|
273
|
-
),
|
|
274
|
-
},
|
|
275
|
-
props,
|
|
276
|
-
{
|
|
277
|
-
children: [
|
|
278
|
-
jsxRuntime.jsx(StyledFlexContainer, tslib.__assign({ ref: listRef }, { children: tabItemList })),
|
|
279
|
-
isMounted && jsxRuntime.jsx(Indicator, tslib.__assign({ color: focusColor }, indicatorStyles)),
|
|
280
|
-
],
|
|
281
|
-
}
|
|
282
|
-
)
|
|
283
|
-
);
|
|
99
|
+
_a.children; var tabList = _a.tabList, _b = _a.selectedTabIndex, selectedTabIndex = _b === void 0 ? 0 : _b, onClick = _a.onClick, _c = _a.isHorizontal, isHorizontal = _c === void 0 ? true : _c, css = _a.css, tabCSS = _a.tabCSS, focusColor = _a.focusColor, props = tslib.__rest(_a, ["children", "tabList", "selectedTabIndex", "onClick", "isHorizontal", "css", "tabCSS", "focusColor"]);
|
|
100
|
+
var theme = styled.useTheme();
|
|
101
|
+
var isMounted = useMounted();
|
|
102
|
+
var _d = usePropState__default.default(selectedTabIndex), selectedIndex = _d[0], setSelectedIndex = _d[1];
|
|
103
|
+
var _e = react.useState({ width: 0, left: 0 }), indicatorStyle = _e[0], setIndicatorStyle = _e[1];
|
|
104
|
+
var listRef = react.useRef(null);
|
|
105
|
+
var tabsRef = react.useRef(null);
|
|
106
|
+
var handleRef = useMergeRefs__default.default(react.forwardRef, tabsRef);
|
|
107
|
+
var updateIndicatorState = function () {
|
|
108
|
+
var _a, _b;
|
|
109
|
+
if (listRef.current && selectedIndex !== undefined) {
|
|
110
|
+
var children = listRef.current.children;
|
|
111
|
+
var tab = children[selectedIndex];
|
|
112
|
+
var tabMeta = tab ? tab.getBoundingClientRect() : { left: 0, width: 0 };
|
|
113
|
+
var rect = (_a = tabsRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
|
114
|
+
var tabsMeta = {
|
|
115
|
+
scrollLeft: ((_b = tabsRef.current) === null || _b === void 0 ? void 0 : _b.scrollLeft) || 0,
|
|
116
|
+
left: (rect === null || rect === void 0 ? void 0 : rect.left) || 0,
|
|
117
|
+
};
|
|
118
|
+
var correction = tabsMeta.scrollLeft;
|
|
119
|
+
var startValue = tabMeta.left - tabsMeta.left + correction;
|
|
120
|
+
var newIndicatorStyle = { left: startValue, width: tabMeta.width };
|
|
121
|
+
var dStart = Math.abs(indicatorStyle.left - newIndicatorStyle.left);
|
|
122
|
+
var dSize = Math.abs(indicatorStyle.width - newIndicatorStyle.width);
|
|
123
|
+
if (dStart >= 1 || dSize >= 1) {
|
|
124
|
+
setIndicatorStyle(newIndicatorStyle);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
react.useEffect(function () {
|
|
129
|
+
updateIndicatorState();
|
|
130
|
+
}, [selectedIndex]);
|
|
131
|
+
var handleClick = function (e, tabItem) {
|
|
132
|
+
setSelectedIndex(tabItem.tabIndex || 0);
|
|
133
|
+
if (onClick) {
|
|
134
|
+
onClick(e, tabItem);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
var tabItemList = tabList.map(function (item, index) {
|
|
138
|
+
return (jsxRuntime.jsx(TabItem, { selected: index === selectedIndex, tabIndex: index, tabKey: index, onClick: handleClick, label: item.label, tabItemCSS: tabCSS === null || tabCSS === void 0 ? void 0 : tabCSS.TabItemCSS, focusColor: focusColor }, index));
|
|
139
|
+
});
|
|
140
|
+
var indicatorStyles = tslib.__assign(tslib.__assign({}, indicatorStyle), tabCSS === null || tabCSS === void 0 ? void 0 : tabCSS.IndicatorCSS);
|
|
141
|
+
return (jsxRuntime.jsxs(StyledTab, tslib.__assign({ ref: handleRef, theme: theme, isHorizontal: isHorizontal, css: tslib.__assign(tslib.__assign({}, css), tabCSS === null || tabCSS === void 0 ? void 0 : tabCSS.Root) }, props, { children: [jsxRuntime.jsx(StyledFlexContainer, tslib.__assign({ ref: listRef }, { children: tabItemList })), isMounted && jsxRuntime.jsx(Indicator, tslib.__assign({ color: focusColor }, indicatorStyles))] })));
|
|
284
142
|
});
|
|
285
143
|
|
|
286
144
|
exports.TabItem = TabItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ct-design-tabs.cjs.js","sources":["../packages/components/Tabs/src/style.ts","../packages/components/Tabs/src/TabItem/TabItem.tsx","../packages/components/Tabs/src/Tabs.tsx"],"sourcesContent":[null,null,null],"names":["__rest","__assign","TypographyVariant","forwardRef","useTheme","useCallback","_jsx","Button","Typography","useState","useEffect","styled","usePropState","useRef","useMergeRefs","_jsxs"],"mappings":";;;;;;;;;;;;;;;;;;;AAIO,IAAM,YAAY,GAAG,UAAC,EAMmB,EAAA;
|
|
1
|
+
{"version":3,"file":"ct-design-tabs.cjs.js","sources":["../packages/components/Tabs/src/style.ts","../packages/components/Tabs/src/TabItem/TabItem.tsx","../packages/components/Tabs/src/Tabs.tsx"],"sourcesContent":[null,null,null],"names":["__rest","__assign","TypographyVariant","forwardRef","useTheme","useCallback","_jsx","Button","Typography","useState","useEffect","styled","usePropState","useRef","useMergeRefs","_jsxs"],"mappings":"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"}
|