@sheinx/base 3.7.0-beta.7 → 3.7.0-beta.9
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/cjs/table/table.d.ts.map +1 -1
- package/cjs/table/table.js +87 -19
- package/cjs/table/tbody.d.ts +1 -1
- package/cjs/table/tbody.d.ts.map +1 -1
- package/cjs/table/tbody.js +26 -5
- package/cjs/table/tbody.type.d.ts +1 -0
- package/cjs/table/tbody.type.d.ts.map +1 -1
- package/cjs/tabs/tabs.d.ts.map +1 -1
- package/cjs/tabs/tabs.js +10 -1
- package/cjs/tabs/tabs.type.d.ts +6 -0
- package/cjs/tabs/tabs.type.d.ts.map +1 -1
- package/cjs/virtual-scroll/scroll-table.d.ts +1 -2
- package/cjs/virtual-scroll/scroll-table.d.ts.map +1 -1
- package/cjs/virtual-scroll/scroll-table.js +29 -31
- package/esm/table/table.d.ts.map +1 -1
- package/esm/table/table.js +88 -20
- package/esm/table/tbody.d.ts +1 -1
- package/esm/table/tbody.d.ts.map +1 -1
- package/esm/table/tbody.js +27 -6
- package/esm/table/tbody.type.d.ts +1 -0
- package/esm/table/tbody.type.d.ts.map +1 -1
- package/esm/tabs/tabs.d.ts.map +1 -1
- package/esm/tabs/tabs.js +10 -1
- package/esm/tabs/tabs.type.d.ts +6 -0
- package/esm/tabs/tabs.type.d.ts.map +1 -1
- package/esm/virtual-scroll/scroll-table.d.ts +1 -2
- package/esm/virtual-scroll/scroll-table.d.ts.map +1 -1
- package/esm/virtual-scroll/scroll-table.js +29 -31
- package/package.json +2 -2
package/cjs/table/table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AAyBA,OAAO,
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAmoBE"}
|
package/cjs/table/table.js
CHANGED
|
@@ -33,6 +33,12 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
|
33
33
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
34
34
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
35
35
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
36
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
37
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
38
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
39
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
40
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
41
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
36
42
|
var devUseWarning = _hooks.util.devUseWarning;
|
|
37
43
|
var emptyArr = [];
|
|
38
44
|
var emptyRef = {
|
|
@@ -56,6 +62,10 @@ var _default = exports.default = function _default(props) {
|
|
|
56
62
|
var headMirrorScrollRef = (0, _react.useRef)(null);
|
|
57
63
|
var bottomMirrorScrollRef = (0, _react.useRef)(null);
|
|
58
64
|
var tableRef = (0, _react.useRef)(null);
|
|
65
|
+
var _useState = (0, _react.useState)(false),
|
|
66
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
67
|
+
scrolling = _useState2[0],
|
|
68
|
+
setScrolling = _useState2[1];
|
|
59
69
|
var browserScrollbarWidth = (0, _hooks.useScrollbarWidth)();
|
|
60
70
|
if (props.fixed) {
|
|
61
71
|
devUseWarning.deprecated('fixed', 'virtual', 'Table');
|
|
@@ -78,7 +88,8 @@ var _default = exports.default = function _default(props) {
|
|
|
78
88
|
};
|
|
79
89
|
var _useRef = (0, _react.useRef)({
|
|
80
90
|
emptyHeight: 0,
|
|
81
|
-
theadAndTfootHeight: 0
|
|
91
|
+
theadAndTfootHeight: 0,
|
|
92
|
+
scrollingTimer: null
|
|
82
93
|
}),
|
|
83
94
|
context = _useRef.current;
|
|
84
95
|
var virtual = ((_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length) && props.rowsInView !== 0 && (!!props.virtual || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
@@ -227,6 +238,12 @@ var _default = exports.default = function _default(props) {
|
|
|
227
238
|
isRtl: isRtl,
|
|
228
239
|
theadAndTfootHeight: context.theadAndTfootHeight
|
|
229
240
|
});
|
|
241
|
+
var syncHeaderScroll = (0, _hooks.usePersistFn)(function (left) {
|
|
242
|
+
var _theadRef$current2;
|
|
243
|
+
if (props.hideHeader || !props.sticky) return;
|
|
244
|
+
if (!(theadRef !== null && theadRef !== void 0 && (_theadRef$current2 = theadRef.current) !== null && _theadRef$current2 !== void 0 && _theadRef$current2.parentElement)) return;
|
|
245
|
+
theadRef.current.parentElement.scrollLeft = left;
|
|
246
|
+
});
|
|
230
247
|
|
|
231
248
|
// 简单表格的滚动事件
|
|
232
249
|
var handleBodyScroll = (0, _hooks.usePersistFn)(function (e) {
|
|
@@ -246,6 +263,7 @@ var _default = exports.default = function _default(props) {
|
|
|
246
263
|
var y = Math.min(target.scrollTop / maxHeight, 1);
|
|
247
264
|
props.onScroll(x, y, target.scrollLeft, target.scrollTop);
|
|
248
265
|
}
|
|
266
|
+
syncHeaderScroll(target.scrollLeft);
|
|
249
267
|
});
|
|
250
268
|
|
|
251
269
|
// 虚拟表格的滚动事件
|
|
@@ -261,6 +279,14 @@ var _default = exports.default = function _default(props) {
|
|
|
261
279
|
if (props.onScroll && typeof props.onScroll === 'function') {
|
|
262
280
|
props.onScroll(info.x, info.y, info.scrollLeft, info.scrollTop);
|
|
263
281
|
}
|
|
282
|
+
syncHeaderScroll(info.scrollLeft);
|
|
283
|
+
if (context.scrollingTimer) {
|
|
284
|
+
clearTimeout(context.scrollingTimer);
|
|
285
|
+
}
|
|
286
|
+
setScrolling(true);
|
|
287
|
+
context.scrollingTimer = setTimeout(function () {
|
|
288
|
+
setScrolling(false);
|
|
289
|
+
}, 100);
|
|
264
290
|
});
|
|
265
291
|
var renderEmpty = function renderEmpty() {
|
|
266
292
|
var _props$data2;
|
|
@@ -435,30 +461,41 @@ var _default = exports.default = function _default(props) {
|
|
|
435
461
|
})
|
|
436
462
|
}));
|
|
437
463
|
};
|
|
464
|
+
var $headTable = /*#__PURE__*/(0, _jsxRuntime.jsxs)("table", {
|
|
465
|
+
style: {
|
|
466
|
+
width: width
|
|
467
|
+
},
|
|
468
|
+
ref: theadRef,
|
|
469
|
+
children: [Group, /*#__PURE__*/(0, _jsxRuntime.jsx)(_thead.default, _objectSpread({}, headCommonProps))]
|
|
470
|
+
});
|
|
438
471
|
if (isRenderVirtualTable) {
|
|
439
|
-
var _props$data4
|
|
472
|
+
var _props$data4;
|
|
440
473
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
441
|
-
children: [renderHeadMirrorScroller(), /*#__PURE__*/(0, _jsxRuntime.
|
|
474
|
+
children: [renderHeadMirrorScroller(), !props.hideHeader && props.sticky && /*#__PURE__*/(0, _jsxRuntime.jsx)(StickyWrapper, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
475
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
476
|
+
className: headWrapperClass,
|
|
477
|
+
style: {
|
|
478
|
+
overflow: 'hidden'
|
|
479
|
+
},
|
|
480
|
+
children: $headTable
|
|
481
|
+
})
|
|
482
|
+
})), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_scrollTable.default, {
|
|
483
|
+
style: {
|
|
484
|
+
display: 'flex',
|
|
485
|
+
minWidth: 0,
|
|
486
|
+
minHeight: 0,
|
|
487
|
+
flex: 1
|
|
488
|
+
},
|
|
442
489
|
wrapperRef: scrollRef,
|
|
443
490
|
scrollWidth: width || 1,
|
|
444
491
|
scrollHeight: virtual ? virtualInfo.scrollHeight : tbodyHeight,
|
|
445
492
|
onScroll: handleVirtualScroll,
|
|
446
493
|
defaultHeight: context.emptyHeight,
|
|
447
494
|
isScrollY: isScrollY,
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
className: headWrapperClass,
|
|
453
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("table", {
|
|
454
|
-
style: {
|
|
455
|
-
width: width
|
|
456
|
-
},
|
|
457
|
-
ref: theadRef,
|
|
458
|
-
children: [Group, /*#__PURE__*/(0, _jsxRuntime.jsx)(_thead.default, _objectSpread({}, headCommonProps))]
|
|
459
|
-
})
|
|
460
|
-
})
|
|
461
|
-
})), !!((_props$data5 = props.data) !== null && _props$data5 !== void 0 && _props$data5.length) && /*#__PURE__*/(0, _jsxRuntime.jsxs)("table", {
|
|
495
|
+
children: [!props.hideHeader && !props.sticky && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
496
|
+
className: headWrapperClass,
|
|
497
|
+
children: $headTable
|
|
498
|
+
}), !!((_props$data4 = props.data) !== null && _props$data4 !== void 0 && _props$data4.length) && /*#__PURE__*/(0, _jsxRuntime.jsxs)("table", {
|
|
462
499
|
style: {
|
|
463
500
|
width: width,
|
|
464
501
|
transform: virtualInfo.translateStyle
|
|
@@ -467,7 +504,8 @@ var _default = exports.default = function _default(props) {
|
|
|
467
504
|
children: [Group, /*#__PURE__*/(0, _jsxRuntime.jsx)(_tbody.default, _objectSpread(_objectSpread({}, bodyCommonProps), {}, {
|
|
468
505
|
currentIndex: virtualInfo.startIndex,
|
|
469
506
|
data: virtualInfo.data,
|
|
470
|
-
setRowHeight: virtualInfo.setRowHeight
|
|
507
|
+
setRowHeight: virtualInfo.setRowHeight,
|
|
508
|
+
scrolling: scrolling
|
|
471
509
|
}))]
|
|
472
510
|
}), showFoot ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
473
511
|
className: footWrapperClass,
|
|
@@ -516,6 +554,36 @@ var _default = exports.default = function _default(props) {
|
|
|
516
554
|
align: "right"
|
|
517
555
|
}, pagination), paginationInfo));
|
|
518
556
|
};
|
|
557
|
+
|
|
558
|
+
// handle head and foot scroll
|
|
559
|
+
var handleHeaderWheel = (0, _hooks.usePersistFn)(function (e) {
|
|
560
|
+
var _theadRef$current3;
|
|
561
|
+
var scrollEl = scrollRef.current;
|
|
562
|
+
if (!scrollEl) return;
|
|
563
|
+
if (!(theadRef !== null && theadRef !== void 0 && (_theadRef$current3 = theadRef.current) !== null && _theadRef$current3 !== void 0 && _theadRef$current3.parentElement)) return;
|
|
564
|
+
var max = scrollEl.scrollWidth - scrollEl.clientWidth;
|
|
565
|
+
var scrollLeft = scrollEl.scrollLeft + e.deltaX;
|
|
566
|
+
if (scrollLeft === scrollEl.scrollLeft) {
|
|
567
|
+
return;
|
|
568
|
+
}
|
|
569
|
+
e.preventDefault();
|
|
570
|
+
var left = Math.min(Math.max(scrollLeft, 0), max);
|
|
571
|
+
scrollEl.scrollLeft = left;
|
|
572
|
+
theadRef.current.parentElement.scrollLeft = left;
|
|
573
|
+
});
|
|
574
|
+
(0, _react.useEffect)(function () {
|
|
575
|
+
// 绑定 wheel 事件
|
|
576
|
+
if (props.sticky && theadRef.current && theadRef.current.parentElement) {
|
|
577
|
+
theadRef.current.parentElement.addEventListener('wheel', handleHeaderWheel, {
|
|
578
|
+
passive: false
|
|
579
|
+
});
|
|
580
|
+
}
|
|
581
|
+
return function () {
|
|
582
|
+
if (props.sticky && theadRef.current && theadRef.current.parentElement) {
|
|
583
|
+
theadRef.current.parentElement.removeEventListener('wheel', handleHeaderWheel);
|
|
584
|
+
}
|
|
585
|
+
};
|
|
586
|
+
}, [theadRef.current, props.sticky, isScrollY]);
|
|
519
587
|
var getRenderIndexByData = function getRenderIndexByData(data) {
|
|
520
588
|
var originKey = typeof data === 'string' ? data : _hooks.util.getKey(props.keygen, data);
|
|
521
589
|
var index = treeData.findIndex(function (item) {
|
|
@@ -551,7 +619,7 @@ var _default = exports.default = function _default(props) {
|
|
|
551
619
|
});
|
|
552
620
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
553
621
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({
|
|
554
|
-
className: (0, _classnames.default)(tableWrapperClass,
|
|
622
|
+
className: (0, _classnames.default)(tableWrapperClass, _defineProperty(_defineProperty(_defineProperty({}, tableClasses.sticky, props.sticky), tableClasses.floatLeft, floatLeft), tableClasses.floatRight, floatRight)),
|
|
555
623
|
style: _objectSpread({
|
|
556
624
|
height: defaultHeight
|
|
557
625
|
}, props.style)
|
package/cjs/table/tbody.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TbodyProps } from './tbody.type';
|
|
2
|
-
declare const _default: (props: TbodyProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const _default: (props: TbodyProps) => import("react/jsx-runtime").JSX.Element | undefined;
|
|
3
3
|
export default _default;
|
|
4
4
|
//# sourceMappingURL=tbody.d.ts.map
|
package/cjs/table/tbody.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tbody.d.ts","sourceRoot":"","sources":["tbody.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAEnB,UAAU;AAAjC,
|
|
1
|
+
{"version":3,"file":"tbody.d.ts","sourceRoot":"","sources":["tbody.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAEnB,UAAU;AAAjC,wBAoGE"}
|
package/cjs/table/tbody.js
CHANGED
|
@@ -9,6 +9,13 @@ var _hooks = require("@sheinx/hooks");
|
|
|
9
9
|
var _tr = _interopRequireDefault(require("./tr"));
|
|
10
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
13
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
14
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
15
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
16
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
17
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
18
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
12
19
|
var _default = exports.default = function _default(props) {
|
|
13
20
|
var _props$columns = props.columns,
|
|
14
21
|
columns = _props$columns === void 0 ? [] : _props$columns,
|
|
@@ -84,9 +91,23 @@ var _default = exports.default = function _default(props) {
|
|
|
84
91
|
shouldCellUpdate: props.shouldCellUpdate
|
|
85
92
|
}, trRenderKey);
|
|
86
93
|
};
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
94
|
+
var externalDependencies = _typeof(props.shouldCellUpdate) === 'object' && props.shouldCellUpdate.dependencies ? props.shouldCellUpdate.dependencies : [];
|
|
95
|
+
var updateFn = _typeof(props.shouldCellUpdate) === 'object' && 'update' in props.shouldCellUpdate ? props.shouldCellUpdate.update : props.shouldCellUpdate;
|
|
96
|
+
var $tbody = (0, _hooks.useComponentMemo)(function () {
|
|
97
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("tbody", {
|
|
98
|
+
children: (props.data || []).map(function (item, index) {
|
|
99
|
+
return renderRow(item, index);
|
|
100
|
+
})
|
|
101
|
+
});
|
|
102
|
+
}, [props.data, currentIndex].concat(_toConsumableArray(externalDependencies)), updateFn ? function (prev, next) {
|
|
103
|
+
return prev.some(function (_, index) {
|
|
104
|
+
if (index === 0) {
|
|
105
|
+
return prev[index].some(function (item, idx) {
|
|
106
|
+
return updateFn(item, next[index][idx]);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
return !_hooks.util.shallowEqual(prev[index], next[index]);
|
|
110
|
+
}) || !props.scrolling;
|
|
111
|
+
} : undefined);
|
|
112
|
+
return $tbody;
|
|
92
113
|
};
|
|
@@ -18,5 +18,6 @@ export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>
|
|
|
18
18
|
setRowHeight?: (index: number, height: number) => void;
|
|
19
19
|
bodyScrollWidth?: number;
|
|
20
20
|
resizeFlag?: number;
|
|
21
|
+
scrolling?: boolean;
|
|
21
22
|
}
|
|
22
23
|
//# sourceMappingURL=tbody.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tbody.type.d.ts","sourceRoot":"","sources":["tbody.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,MAAM,WAAW,UACf,SAAQ,IAAI,CACV,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACtC,MAAM,GACN,UAAU,GACV,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,UAAU,GACV,OAAO,GACP,cAAc,GACd,aAAa,GACb,kBAAkB,CACrB;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAClD,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
1
|
+
{"version":3,"file":"tbody.type.d.ts","sourceRoot":"","sources":["tbody.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,MAAM,WAAW,UACf,SAAQ,IAAI,CACV,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACtC,MAAM,GACN,UAAU,GACV,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,UAAU,GACV,OAAO,GACP,cAAc,GACd,aAAa,GACb,kBAAkB,CACrB;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAClD,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
package/cjs/tabs/tabs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,SAAS,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOnD,QAAA,MAAM,IAAI;YAAW,SAAS;;
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,SAAS,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOnD,QAAA,MAAM,IAAI;YAAW,SAAS;;CAwR7B,CAAC;AAIF,eAAe,IAAI,CAAC"}
|
package/cjs/tabs/tabs.js
CHANGED
|
@@ -12,7 +12,7 @@ var _tabsPanel = _interopRequireDefault(require("./tabs-panel"));
|
|
|
12
12
|
var _tabsHeader = _interopRequireDefault(require("./tabs-header"));
|
|
13
13
|
var _sticky = _interopRequireDefault(require("../sticky"));
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
-
var _excluded = ["jssStyle", "align", "children", "shape", "position", "lazy", "autoFill", "hideSplit", "collapsible", "defaultCollapsed", "onChange", "extra", "border", "splitColor", "tabBarExtraContent", "background", "activeBackground", "inactiveBackground", "defaultActive", "tabBarStyle", "color", "sticky", "allowNonPanel", "className"];
|
|
15
|
+
var _excluded = ["jssStyle", "align", "children", "shape", "position", "lazy", "autoFill", "hideSplit", "collapsible", "defaultCollapsed", "onChange", "extra", "border", "splitColor", "tabBarExtraContent", "background", "activeBackground", "inactiveBackground", "defaultActive", "tabBarStyle", "color", "sticky", "allowNonPanel", "renderTabsHeader", "className"];
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
18
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -76,6 +76,7 @@ var Tabs = function Tabs(props) {
|
|
|
76
76
|
color = props.color,
|
|
77
77
|
sticky = props.sticky,
|
|
78
78
|
allowNonPanel = props.allowNonPanel,
|
|
79
|
+
renderTabsHeader = props.renderTabsHeader,
|
|
79
80
|
tabsClassName = props.className,
|
|
80
81
|
rest = _objectWithoutProperties(props, _excluded);
|
|
81
82
|
var shape = shapeProps && shapeProps !== 'bordered' ? shapeProps : 'card';
|
|
@@ -236,10 +237,18 @@ var Tabs = function Tabs(props) {
|
|
|
236
237
|
className: (0, _classnames.default)(stickyClassName, sticky.className)
|
|
237
238
|
});
|
|
238
239
|
}
|
|
240
|
+
if (renderTabsHeader) {
|
|
241
|
+
return renderTabsHeader( /*#__PURE__*/(0, _jsxRuntime.jsx)(_sticky.default, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
242
|
+
children: header
|
|
243
|
+
})), props);
|
|
244
|
+
}
|
|
239
245
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_sticky.default, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
240
246
|
children: header
|
|
241
247
|
}));
|
|
242
248
|
}
|
|
249
|
+
if (renderTabsHeader) {
|
|
250
|
+
return renderTabsHeader(header, props);
|
|
251
|
+
}
|
|
243
252
|
return header;
|
|
244
253
|
};
|
|
245
254
|
var renderTabs = function renderTabs() {
|
package/cjs/tabs/tabs.type.d.ts
CHANGED
|
@@ -155,5 +155,11 @@ export interface TabsProps extends BaseTabsProps, Pick<CommonType, 'className' |
|
|
|
155
155
|
* @version 3.5.3
|
|
156
156
|
*/
|
|
157
157
|
allowNonPanel?: boolean;
|
|
158
|
+
/**
|
|
159
|
+
* @en Custom render header content
|
|
160
|
+
* @cn 自定义渲染 header 内容
|
|
161
|
+
* @version 3.7.0
|
|
162
|
+
*/
|
|
163
|
+
renderTabsHeader?: (header: React.ReactNode, props: Omit<TabsProps, 'renderTabsHeader'>) => React.ReactNode;
|
|
158
164
|
}
|
|
159
165
|
//# sourceMappingURL=tabs.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.type.d.ts","sourceRoot":"","sources":["tabs.type.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tabs.type.d.ts","sourceRoot":"","sources":["tabs.type.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface scrollProps {
|
|
3
|
+
style?: React.CSSProperties;
|
|
3
4
|
scrollHeight: number;
|
|
4
5
|
scrollWidth: number | string;
|
|
5
6
|
height?: number | string;
|
|
@@ -21,8 +22,6 @@ interface scrollProps {
|
|
|
21
22
|
childrenStyle?: React.CSSProperties;
|
|
22
23
|
defaultHeight?: number;
|
|
23
24
|
isScrollY?: boolean;
|
|
24
|
-
isEmptyContent?: boolean;
|
|
25
|
-
isHeaderSticky?: boolean;
|
|
26
25
|
}
|
|
27
26
|
declare const Scroll: (props: scrollProps) => import("react/jsx-runtime").JSX.Element;
|
|
28
27
|
export default Scroll;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAI/C,UAAU,WAAW;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAI/C,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAWD,QAAA,MAAM,MAAM,UAAW,WAAW,4CA2HjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -25,7 +25,6 @@ var extractHeightValue = function extractHeightValue(num) {
|
|
|
25
25
|
return undefined;
|
|
26
26
|
};
|
|
27
27
|
var Scroll = function Scroll(props) {
|
|
28
|
-
var _scrollRef$current, _scrollRef$current2;
|
|
29
28
|
var containerRef = (0, _react.useRef)(null);
|
|
30
29
|
var scrollRef = (0, _react.useRef)(null);
|
|
31
30
|
var wrapperRef = (0, _hooks.useForkRef)(scrollRef, props.wrapperRef);
|
|
@@ -56,10 +55,7 @@ var Scroll = function Scroll(props) {
|
|
|
56
55
|
flex: 1,
|
|
57
56
|
minWidth: 0,
|
|
58
57
|
minHeight: 0,
|
|
59
|
-
|
|
60
|
-
// isHeaderSticky: 这种场景非内滚的时候,设置scroll元素的overflow为initial
|
|
61
|
-
// isEmptyContent: 这种场景,把scroll元素的overflow设置为hidden,把overflow: auto转交给下面的container元素
|
|
62
|
-
overflow: props.isEmptyContent ? 'hidden' : props.isHeaderSticky && (scrollRef === null || scrollRef === void 0 || (_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollHeight) === (scrollRef === null || scrollRef === void 0 || (_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientHeight) ? 'initial' : 'auto',
|
|
58
|
+
overflow: 'auto',
|
|
63
59
|
width: '100%'
|
|
64
60
|
};
|
|
65
61
|
var containerStyle = {
|
|
@@ -68,9 +64,7 @@ var Scroll = function Scroll(props) {
|
|
|
68
64
|
display: 'flex',
|
|
69
65
|
position: 'sticky',
|
|
70
66
|
flexDirection: 'column',
|
|
71
|
-
top: 0
|
|
72
|
-
// isEmptyContent: overflow设置为auto是为了让empty元素可以sticky left:0 生效
|
|
73
|
-
overflow: props.isEmptyContent ? 'auto' : undefined
|
|
67
|
+
top: 0
|
|
74
68
|
};
|
|
75
69
|
|
|
76
70
|
// 当滚动容器的高度为 0 时,paddingTop 为 0,避免滚动条抖动现象
|
|
@@ -129,29 +123,33 @@ var Scroll = function Scroll(props) {
|
|
|
129
123
|
scrollRef.current.scrollTop += scrollTop;
|
|
130
124
|
}
|
|
131
125
|
});
|
|
132
|
-
return /*#__PURE__*/(0, _jsxRuntime.
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
ref: wrapperRef,
|
|
138
|
-
onMouseDown: function onMouseDown() {
|
|
139
|
-
context.isMouseDown = true;
|
|
140
|
-
},
|
|
141
|
-
onMouseUp: function onMouseUp() {
|
|
142
|
-
context.isMouseDown = false;
|
|
143
|
-
},
|
|
144
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({}, _hooks.util.getDataAttribute({
|
|
145
|
-
role: 'scroll-container'
|
|
126
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
127
|
+
className: props.className,
|
|
128
|
+
style: props.style,
|
|
129
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", _objectSpread(_objectSpread({}, _hooks.util.getDataAttribute({
|
|
130
|
+
role: 'scroll'
|
|
146
131
|
})), {}, {
|
|
147
|
-
style:
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
132
|
+
style: scrollerStyle,
|
|
133
|
+
onScroll: handleScroll,
|
|
134
|
+
ref: wrapperRef,
|
|
135
|
+
onMouseDown: function onMouseDown() {
|
|
136
|
+
context.isMouseDown = true;
|
|
137
|
+
},
|
|
138
|
+
onMouseUp: function onMouseUp() {
|
|
139
|
+
context.isMouseDown = false;
|
|
140
|
+
},
|
|
141
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({}, _hooks.util.getDataAttribute({
|
|
142
|
+
role: 'scroll-container'
|
|
143
|
+
})), {}, {
|
|
144
|
+
style: containerStyle,
|
|
145
|
+
ref: containerRef,
|
|
146
|
+
onScroll: handleInnerScroll,
|
|
147
|
+
children: props.children
|
|
148
|
+
})), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
149
|
+
style: placeStyle,
|
|
150
|
+
children: "\xA0"
|
|
151
|
+
})]
|
|
152
|
+
}))
|
|
153
|
+
});
|
|
156
154
|
};
|
|
157
155
|
var _default = exports.default = Scroll;
|
package/esm/table/table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AAyBA,OAAO,
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAmoBE"}
|
package/esm/table/table.js
CHANGED
|
@@ -7,7 +7,13 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
|
7
7
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
8
8
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
9
9
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
10
|
-
|
|
10
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
11
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
12
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
13
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
14
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
15
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
16
|
+
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
11
17
|
import Scroll from "../virtual-scroll/scroll-table";
|
|
12
18
|
import classNames from 'classnames';
|
|
13
19
|
import Spin from "../spin";
|
|
@@ -49,6 +55,10 @@ export default (function (props) {
|
|
|
49
55
|
var headMirrorScrollRef = useRef(null);
|
|
50
56
|
var bottomMirrorScrollRef = useRef(null);
|
|
51
57
|
var tableRef = useRef(null);
|
|
58
|
+
var _useState = useState(false),
|
|
59
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
60
|
+
scrolling = _useState2[0],
|
|
61
|
+
setScrolling = _useState2[1];
|
|
52
62
|
var browserScrollbarWidth = useScrollbarWidth();
|
|
53
63
|
if (props.fixed) {
|
|
54
64
|
devUseWarning.deprecated('fixed', 'virtual', 'Table');
|
|
@@ -71,7 +81,8 @@ export default (function (props) {
|
|
|
71
81
|
};
|
|
72
82
|
var _useRef = useRef({
|
|
73
83
|
emptyHeight: 0,
|
|
74
|
-
theadAndTfootHeight: 0
|
|
84
|
+
theadAndTfootHeight: 0,
|
|
85
|
+
scrollingTimer: null
|
|
75
86
|
}),
|
|
76
87
|
context = _useRef.current;
|
|
77
88
|
var virtual = ((_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length) && props.rowsInView !== 0 && (!!props.virtual || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
@@ -220,6 +231,12 @@ export default (function (props) {
|
|
|
220
231
|
isRtl: isRtl,
|
|
221
232
|
theadAndTfootHeight: context.theadAndTfootHeight
|
|
222
233
|
});
|
|
234
|
+
var syncHeaderScroll = usePersistFn(function (left) {
|
|
235
|
+
var _theadRef$current2;
|
|
236
|
+
if (props.hideHeader || !props.sticky) return;
|
|
237
|
+
if (!(theadRef !== null && theadRef !== void 0 && (_theadRef$current2 = theadRef.current) !== null && _theadRef$current2 !== void 0 && _theadRef$current2.parentElement)) return;
|
|
238
|
+
theadRef.current.parentElement.scrollLeft = left;
|
|
239
|
+
});
|
|
223
240
|
|
|
224
241
|
// 简单表格的滚动事件
|
|
225
242
|
var handleBodyScroll = usePersistFn(function (e) {
|
|
@@ -239,6 +256,7 @@ export default (function (props) {
|
|
|
239
256
|
var y = Math.min(target.scrollTop / maxHeight, 1);
|
|
240
257
|
props.onScroll(x, y, target.scrollLeft, target.scrollTop);
|
|
241
258
|
}
|
|
259
|
+
syncHeaderScroll(target.scrollLeft);
|
|
242
260
|
});
|
|
243
261
|
|
|
244
262
|
// 虚拟表格的滚动事件
|
|
@@ -254,6 +272,14 @@ export default (function (props) {
|
|
|
254
272
|
if (props.onScroll && typeof props.onScroll === 'function') {
|
|
255
273
|
props.onScroll(info.x, info.y, info.scrollLeft, info.scrollTop);
|
|
256
274
|
}
|
|
275
|
+
syncHeaderScroll(info.scrollLeft);
|
|
276
|
+
if (context.scrollingTimer) {
|
|
277
|
+
clearTimeout(context.scrollingTimer);
|
|
278
|
+
}
|
|
279
|
+
setScrolling(true);
|
|
280
|
+
context.scrollingTimer = setTimeout(function () {
|
|
281
|
+
setScrolling(false);
|
|
282
|
+
}, 100);
|
|
257
283
|
});
|
|
258
284
|
var renderEmpty = function renderEmpty() {
|
|
259
285
|
var _props$data2;
|
|
@@ -428,30 +454,41 @@ export default (function (props) {
|
|
|
428
454
|
})
|
|
429
455
|
}));
|
|
430
456
|
};
|
|
457
|
+
var $headTable = /*#__PURE__*/_jsxs("table", {
|
|
458
|
+
style: {
|
|
459
|
+
width: width
|
|
460
|
+
},
|
|
461
|
+
ref: theadRef,
|
|
462
|
+
children: [Group, /*#__PURE__*/_jsx(Thead, _objectSpread({}, headCommonProps))]
|
|
463
|
+
});
|
|
431
464
|
if (isRenderVirtualTable) {
|
|
432
|
-
var _props$data4
|
|
465
|
+
var _props$data4;
|
|
433
466
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
434
|
-
children: [renderHeadMirrorScroller(), /*#__PURE__*/
|
|
467
|
+
children: [renderHeadMirrorScroller(), !props.hideHeader && props.sticky && /*#__PURE__*/_jsx(StickyWrapper, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
468
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
469
|
+
className: headWrapperClass,
|
|
470
|
+
style: {
|
|
471
|
+
overflow: 'hidden'
|
|
472
|
+
},
|
|
473
|
+
children: $headTable
|
|
474
|
+
})
|
|
475
|
+
})), /*#__PURE__*/_jsxs(Scroll, {
|
|
476
|
+
style: {
|
|
477
|
+
display: 'flex',
|
|
478
|
+
minWidth: 0,
|
|
479
|
+
minHeight: 0,
|
|
480
|
+
flex: 1
|
|
481
|
+
},
|
|
435
482
|
wrapperRef: scrollRef,
|
|
436
483
|
scrollWidth: width || 1,
|
|
437
484
|
scrollHeight: virtual ? virtualInfo.scrollHeight : tbodyHeight,
|
|
438
485
|
onScroll: handleVirtualScroll,
|
|
439
486
|
defaultHeight: context.emptyHeight,
|
|
440
487
|
isScrollY: isScrollY,
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
className: headWrapperClass,
|
|
446
|
-
children: /*#__PURE__*/_jsxs("table", {
|
|
447
|
-
style: {
|
|
448
|
-
width: width
|
|
449
|
-
},
|
|
450
|
-
ref: theadRef,
|
|
451
|
-
children: [Group, /*#__PURE__*/_jsx(Thead, _objectSpread({}, headCommonProps))]
|
|
452
|
-
})
|
|
453
|
-
})
|
|
454
|
-
})), !!((_props$data5 = props.data) !== null && _props$data5 !== void 0 && _props$data5.length) && /*#__PURE__*/_jsxs("table", {
|
|
488
|
+
children: [!props.hideHeader && !props.sticky && /*#__PURE__*/_jsx("div", {
|
|
489
|
+
className: headWrapperClass,
|
|
490
|
+
children: $headTable
|
|
491
|
+
}), !!((_props$data4 = props.data) !== null && _props$data4 !== void 0 && _props$data4.length) && /*#__PURE__*/_jsxs("table", {
|
|
455
492
|
style: {
|
|
456
493
|
width: width,
|
|
457
494
|
transform: virtualInfo.translateStyle
|
|
@@ -460,7 +497,8 @@ export default (function (props) {
|
|
|
460
497
|
children: [Group, /*#__PURE__*/_jsx(Tbody, _objectSpread(_objectSpread({}, bodyCommonProps), {}, {
|
|
461
498
|
currentIndex: virtualInfo.startIndex,
|
|
462
499
|
data: virtualInfo.data,
|
|
463
|
-
setRowHeight: virtualInfo.setRowHeight
|
|
500
|
+
setRowHeight: virtualInfo.setRowHeight,
|
|
501
|
+
scrolling: scrolling
|
|
464
502
|
}))]
|
|
465
503
|
}), showFoot ? /*#__PURE__*/_jsx("div", {
|
|
466
504
|
className: footWrapperClass,
|
|
@@ -509,6 +547,36 @@ export default (function (props) {
|
|
|
509
547
|
align: "right"
|
|
510
548
|
}, pagination), paginationInfo));
|
|
511
549
|
};
|
|
550
|
+
|
|
551
|
+
// handle head and foot scroll
|
|
552
|
+
var handleHeaderWheel = usePersistFn(function (e) {
|
|
553
|
+
var _theadRef$current3;
|
|
554
|
+
var scrollEl = scrollRef.current;
|
|
555
|
+
if (!scrollEl) return;
|
|
556
|
+
if (!(theadRef !== null && theadRef !== void 0 && (_theadRef$current3 = theadRef.current) !== null && _theadRef$current3 !== void 0 && _theadRef$current3.parentElement)) return;
|
|
557
|
+
var max = scrollEl.scrollWidth - scrollEl.clientWidth;
|
|
558
|
+
var scrollLeft = scrollEl.scrollLeft + e.deltaX;
|
|
559
|
+
if (scrollLeft === scrollEl.scrollLeft) {
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
e.preventDefault();
|
|
563
|
+
var left = Math.min(Math.max(scrollLeft, 0), max);
|
|
564
|
+
scrollEl.scrollLeft = left;
|
|
565
|
+
theadRef.current.parentElement.scrollLeft = left;
|
|
566
|
+
});
|
|
567
|
+
useEffect(function () {
|
|
568
|
+
// 绑定 wheel 事件
|
|
569
|
+
if (props.sticky && theadRef.current && theadRef.current.parentElement) {
|
|
570
|
+
theadRef.current.parentElement.addEventListener('wheel', handleHeaderWheel, {
|
|
571
|
+
passive: false
|
|
572
|
+
});
|
|
573
|
+
}
|
|
574
|
+
return function () {
|
|
575
|
+
if (props.sticky && theadRef.current && theadRef.current.parentElement) {
|
|
576
|
+
theadRef.current.parentElement.removeEventListener('wheel', handleHeaderWheel);
|
|
577
|
+
}
|
|
578
|
+
};
|
|
579
|
+
}, [theadRef.current, props.sticky, isScrollY]);
|
|
512
580
|
var getRenderIndexByData = function getRenderIndexByData(data) {
|
|
513
581
|
var originKey = typeof data === 'string' ? data : util.getKey(props.keygen, data);
|
|
514
582
|
var index = treeData.findIndex(function (item) {
|
|
@@ -544,7 +612,7 @@ export default (function (props) {
|
|
|
544
612
|
});
|
|
545
613
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
546
614
|
children: [/*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
|
|
547
|
-
className: classNames(tableWrapperClass,
|
|
615
|
+
className: classNames(tableWrapperClass, _defineProperty(_defineProperty(_defineProperty({}, tableClasses.sticky, props.sticky), tableClasses.floatLeft, floatLeft), tableClasses.floatRight, floatRight)),
|
|
548
616
|
style: _objectSpread({
|
|
549
617
|
height: defaultHeight
|
|
550
618
|
}, props.style)
|
package/esm/table/tbody.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TbodyProps } from './tbody.type';
|
|
2
|
-
declare const _default: (props: TbodyProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const _default: (props: TbodyProps) => import("react/jsx-runtime").JSX.Element | undefined;
|
|
3
3
|
export default _default;
|
|
4
4
|
//# sourceMappingURL=tbody.d.ts.map
|
package/esm/table/tbody.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tbody.d.ts","sourceRoot":"","sources":["tbody.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAEnB,UAAU;AAAjC,
|
|
1
|
+
{"version":3,"file":"tbody.d.ts","sourceRoot":"","sources":["tbody.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAEnB,UAAU;AAAjC,wBAoGE"}
|
package/esm/table/tbody.js
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
2
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
5
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
6
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
7
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
1
8
|
import React from 'react';
|
|
2
|
-
import { useTableRow, useTableExpand, util } from '@sheinx/hooks';
|
|
9
|
+
import { useTableRow, useTableExpand, util, useComponentMemo } from '@sheinx/hooks';
|
|
3
10
|
import Tr from "./tr";
|
|
4
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
12
|
export default (function (props) {
|
|
@@ -77,9 +84,23 @@ export default (function (props) {
|
|
|
77
84
|
shouldCellUpdate: props.shouldCellUpdate
|
|
78
85
|
}, trRenderKey);
|
|
79
86
|
};
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
87
|
+
var externalDependencies = _typeof(props.shouldCellUpdate) === 'object' && props.shouldCellUpdate.dependencies ? props.shouldCellUpdate.dependencies : [];
|
|
88
|
+
var updateFn = _typeof(props.shouldCellUpdate) === 'object' && 'update' in props.shouldCellUpdate ? props.shouldCellUpdate.update : props.shouldCellUpdate;
|
|
89
|
+
var $tbody = useComponentMemo(function () {
|
|
90
|
+
return /*#__PURE__*/_jsx("tbody", {
|
|
91
|
+
children: (props.data || []).map(function (item, index) {
|
|
92
|
+
return renderRow(item, index);
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
}, [props.data, currentIndex].concat(_toConsumableArray(externalDependencies)), updateFn ? function (prev, next) {
|
|
96
|
+
return prev.some(function (_, index) {
|
|
97
|
+
if (index === 0) {
|
|
98
|
+
return prev[index].some(function (item, idx) {
|
|
99
|
+
return updateFn(item, next[index][idx]);
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
return !util.shallowEqual(prev[index], next[index]);
|
|
103
|
+
}) || !props.scrolling;
|
|
104
|
+
} : undefined);
|
|
105
|
+
return $tbody;
|
|
85
106
|
});
|
|
@@ -18,5 +18,6 @@ export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>
|
|
|
18
18
|
setRowHeight?: (index: number, height: number) => void;
|
|
19
19
|
bodyScrollWidth?: number;
|
|
20
20
|
resizeFlag?: number;
|
|
21
|
+
scrolling?: boolean;
|
|
21
22
|
}
|
|
22
23
|
//# sourceMappingURL=tbody.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tbody.type.d.ts","sourceRoot":"","sources":["tbody.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,MAAM,WAAW,UACf,SAAQ,IAAI,CACV,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACtC,MAAM,GACN,UAAU,GACV,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,UAAU,GACV,OAAO,GACP,cAAc,GACd,aAAa,GACb,kBAAkB,CACrB;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAClD,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
1
|
+
{"version":3,"file":"tbody.type.d.ts","sourceRoot":"","sources":["tbody.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,MAAM,WAAW,UACf,SAAQ,IAAI,CACV,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACtC,MAAM,GACN,UAAU,GACV,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,UAAU,GACV,OAAO,GACP,cAAc,GACd,aAAa,GACb,kBAAkB,CACrB;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAClD,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
package/esm/tabs/tabs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,SAAS,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOnD,QAAA,MAAM,IAAI;YAAW,SAAS;;
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,SAAS,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOnD,QAAA,MAAM,IAAI;YAAW,SAAS;;CAwR7B,CAAC;AAIF,eAAe,IAAI,CAAC"}
|
package/esm/tabs/tabs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
-
var _excluded = ["jssStyle", "align", "children", "shape", "position", "lazy", "autoFill", "hideSplit", "collapsible", "defaultCollapsed", "onChange", "extra", "border", "splitColor", "tabBarExtraContent", "background", "activeBackground", "inactiveBackground", "defaultActive", "tabBarStyle", "color", "sticky", "allowNonPanel", "className"];
|
|
2
|
+
var _excluded = ["jssStyle", "align", "children", "shape", "position", "lazy", "autoFill", "hideSplit", "collapsible", "defaultCollapsed", "onChange", "extra", "border", "splitColor", "tabBarExtraContent", "background", "activeBackground", "inactiveBackground", "defaultActive", "tabBarStyle", "color", "sticky", "allowNonPanel", "renderTabsHeader", "className"];
|
|
3
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
4
4
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
5
5
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -69,6 +69,7 @@ var Tabs = function Tabs(props) {
|
|
|
69
69
|
color = props.color,
|
|
70
70
|
sticky = props.sticky,
|
|
71
71
|
allowNonPanel = props.allowNonPanel,
|
|
72
|
+
renderTabsHeader = props.renderTabsHeader,
|
|
72
73
|
tabsClassName = props.className,
|
|
73
74
|
rest = _objectWithoutProperties(props, _excluded);
|
|
74
75
|
var shape = shapeProps && shapeProps !== 'bordered' ? shapeProps : 'card';
|
|
@@ -229,10 +230,18 @@ var Tabs = function Tabs(props) {
|
|
|
229
230
|
className: classNames(stickyClassName, sticky.className)
|
|
230
231
|
});
|
|
231
232
|
}
|
|
233
|
+
if (renderTabsHeader) {
|
|
234
|
+
return renderTabsHeader( /*#__PURE__*/_jsx(Sticky, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
235
|
+
children: header
|
|
236
|
+
})), props);
|
|
237
|
+
}
|
|
232
238
|
return /*#__PURE__*/_jsx(Sticky, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
233
239
|
children: header
|
|
234
240
|
}));
|
|
235
241
|
}
|
|
242
|
+
if (renderTabsHeader) {
|
|
243
|
+
return renderTabsHeader(header, props);
|
|
244
|
+
}
|
|
236
245
|
return header;
|
|
237
246
|
};
|
|
238
247
|
var renderTabs = function renderTabs() {
|
package/esm/tabs/tabs.type.d.ts
CHANGED
|
@@ -155,5 +155,11 @@ export interface TabsProps extends BaseTabsProps, Pick<CommonType, 'className' |
|
|
|
155
155
|
* @version 3.5.3
|
|
156
156
|
*/
|
|
157
157
|
allowNonPanel?: boolean;
|
|
158
|
+
/**
|
|
159
|
+
* @en Custom render header content
|
|
160
|
+
* @cn 自定义渲染 header 内容
|
|
161
|
+
* @version 3.7.0
|
|
162
|
+
*/
|
|
163
|
+
renderTabsHeader?: (header: React.ReactNode, props: Omit<TabsProps, 'renderTabsHeader'>) => React.ReactNode;
|
|
158
164
|
}
|
|
159
165
|
//# sourceMappingURL=tabs.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.type.d.ts","sourceRoot":"","sources":["tabs.type.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IAEb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IAEd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAC7F,MAAM,MAAM,gBAAgB,GACxB,UAAU,GACV,WAAW,GACX,aAAa,GACb,cAAc,GACd,UAAU,GACV,aAAa,GACb,WAAW,GACX,cAAc,CAAC;AAEnB,MAAM,WAAW,SAAU,SAAQ,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,CAAC;IACvF,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,WAAW,CAAC;QACxB,MAAM,EAAE,MAAM,aAAa,CAAC;KAC7B,CAAC;IACF;;;;OAIG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAErC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC1C;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"tabs.type.d.ts","sourceRoot":"","sources":["tabs.type.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface scrollProps {
|
|
3
|
+
style?: React.CSSProperties;
|
|
3
4
|
scrollHeight: number;
|
|
4
5
|
scrollWidth: number | string;
|
|
5
6
|
height?: number | string;
|
|
@@ -21,8 +22,6 @@ interface scrollProps {
|
|
|
21
22
|
childrenStyle?: React.CSSProperties;
|
|
22
23
|
defaultHeight?: number;
|
|
23
24
|
isScrollY?: boolean;
|
|
24
|
-
isEmptyContent?: boolean;
|
|
25
|
-
isHeaderSticky?: boolean;
|
|
26
25
|
}
|
|
27
26
|
declare const Scroll: (props: scrollProps) => import("react/jsx-runtime").JSX.Element;
|
|
28
27
|
export default Scroll;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAI/C,UAAU,WAAW;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAI/C,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAWD,QAAA,MAAM,MAAM,UAAW,WAAW,4CA2HjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -18,7 +18,6 @@ var extractHeightValue = function extractHeightValue(num) {
|
|
|
18
18
|
return undefined;
|
|
19
19
|
};
|
|
20
20
|
var Scroll = function Scroll(props) {
|
|
21
|
-
var _scrollRef$current, _scrollRef$current2;
|
|
22
21
|
var containerRef = useRef(null);
|
|
23
22
|
var scrollRef = useRef(null);
|
|
24
23
|
var wrapperRef = useForkRef(scrollRef, props.wrapperRef);
|
|
@@ -49,10 +48,7 @@ var Scroll = function Scroll(props) {
|
|
|
49
48
|
flex: 1,
|
|
50
49
|
minWidth: 0,
|
|
51
50
|
minHeight: 0,
|
|
52
|
-
|
|
53
|
-
// isHeaderSticky: 这种场景非内滚的时候,设置scroll元素的overflow为initial
|
|
54
|
-
// isEmptyContent: 这种场景,把scroll元素的overflow设置为hidden,把overflow: auto转交给下面的container元素
|
|
55
|
-
overflow: props.isEmptyContent ? 'hidden' : props.isHeaderSticky && (scrollRef === null || scrollRef === void 0 || (_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollHeight) === (scrollRef === null || scrollRef === void 0 || (_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientHeight) ? 'initial' : 'auto',
|
|
51
|
+
overflow: 'auto',
|
|
56
52
|
width: '100%'
|
|
57
53
|
};
|
|
58
54
|
var containerStyle = {
|
|
@@ -61,9 +57,7 @@ var Scroll = function Scroll(props) {
|
|
|
61
57
|
display: 'flex',
|
|
62
58
|
position: 'sticky',
|
|
63
59
|
flexDirection: 'column',
|
|
64
|
-
top: 0
|
|
65
|
-
// isEmptyContent: overflow设置为auto是为了让empty元素可以sticky left:0 生效
|
|
66
|
-
overflow: props.isEmptyContent ? 'auto' : undefined
|
|
60
|
+
top: 0
|
|
67
61
|
};
|
|
68
62
|
|
|
69
63
|
// 当滚动容器的高度为 0 时,paddingTop 为 0,避免滚动条抖动现象
|
|
@@ -122,29 +116,33 @@ var Scroll = function Scroll(props) {
|
|
|
122
116
|
scrollRef.current.scrollTop += scrollTop;
|
|
123
117
|
}
|
|
124
118
|
});
|
|
125
|
-
return /*#__PURE__*/
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
ref: wrapperRef,
|
|
131
|
-
onMouseDown: function onMouseDown() {
|
|
132
|
-
context.isMouseDown = true;
|
|
133
|
-
},
|
|
134
|
-
onMouseUp: function onMouseUp() {
|
|
135
|
-
context.isMouseDown = false;
|
|
136
|
-
},
|
|
137
|
-
children: [/*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({}, util.getDataAttribute({
|
|
138
|
-
role: 'scroll-container'
|
|
119
|
+
return /*#__PURE__*/_jsx("div", {
|
|
120
|
+
className: props.className,
|
|
121
|
+
style: props.style,
|
|
122
|
+
children: /*#__PURE__*/_jsxs("div", _objectSpread(_objectSpread({}, util.getDataAttribute({
|
|
123
|
+
role: 'scroll'
|
|
139
124
|
})), {}, {
|
|
140
|
-
style:
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
125
|
+
style: scrollerStyle,
|
|
126
|
+
onScroll: handleScroll,
|
|
127
|
+
ref: wrapperRef,
|
|
128
|
+
onMouseDown: function onMouseDown() {
|
|
129
|
+
context.isMouseDown = true;
|
|
130
|
+
},
|
|
131
|
+
onMouseUp: function onMouseUp() {
|
|
132
|
+
context.isMouseDown = false;
|
|
133
|
+
},
|
|
134
|
+
children: [/*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({}, util.getDataAttribute({
|
|
135
|
+
role: 'scroll-container'
|
|
136
|
+
})), {}, {
|
|
137
|
+
style: containerStyle,
|
|
138
|
+
ref: containerRef,
|
|
139
|
+
onScroll: handleInnerScroll,
|
|
140
|
+
children: props.children
|
|
141
|
+
})), /*#__PURE__*/_jsx("div", {
|
|
142
|
+
style: placeStyle,
|
|
143
|
+
children: "\xA0"
|
|
144
|
+
})]
|
|
145
|
+
}))
|
|
146
|
+
});
|
|
149
147
|
};
|
|
150
148
|
export default Scroll;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sheinx/base",
|
|
3
|
-
"version": "3.7.0-beta.
|
|
3
|
+
"version": "3.7.0-beta.9",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"license": "MIT",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"module": "./esm/index.js",
|
|
11
11
|
"typings": "./cjs/index.d.ts",
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@sheinx/hooks": "3.7.0-beta.
|
|
13
|
+
"@sheinx/hooks": "3.7.0-beta.9",
|
|
14
14
|
"immer": "^10.0.0",
|
|
15
15
|
"classnames": "^2.0.0",
|
|
16
16
|
"@shined/reactive": "^0.1.3-alpha.0"
|