@sheinx/base 3.8.4-beta.1 → 3.8.4-beta.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/cjs/table/table.d.ts.map +1 -1
- package/cjs/table/table.js +17 -5
- package/cjs/virtual-scroll/scroll-table.d.ts +1 -1
- package/cjs/virtual-scroll/scroll-table.d.ts.map +1 -1
- package/cjs/virtual-scroll/scroll-table.js +3 -4
- package/esm/table/table.d.ts.map +1 -1
- package/esm/table/table.js +18 -6
- package/esm/virtual-scroll/scroll-table.d.ts +1 -1
- package/esm/virtual-scroll/scroll-table.d.ts.map +1 -1
- package/esm/virtual-scroll/scroll-table.js +3 -4
- 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":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAitBE"}
|
package/cjs/table/table.js
CHANGED
|
@@ -65,12 +65,16 @@ var _default = exports.default = function _default(props) {
|
|
|
65
65
|
var tableRef = (0, _react.useRef)(null);
|
|
66
66
|
var _useState = (0, _react.useState)(false),
|
|
67
67
|
_useState2 = _slicedToArray(_useState, 2),
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
scrollAble = _useState2[0],
|
|
69
|
+
setScrollAble = _useState2[1];
|
|
70
70
|
var _useState3 = (0, _react.useState)(false),
|
|
71
71
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
scrolling = _useState4[0],
|
|
73
|
+
setScrolling = _useState4[1];
|
|
74
|
+
var _useState5 = (0, _react.useState)(false),
|
|
75
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
76
|
+
fakeVirtual = _useState6[0],
|
|
77
|
+
setFakeVirtual = _useState6[1];
|
|
74
78
|
var browserScrollbarWidth = (0, _hooks.useScrollbarWidth)();
|
|
75
79
|
if (props.fixed) {
|
|
76
80
|
devUseWarning.deprecated('fixed', 'virtual', 'Table');
|
|
@@ -99,6 +103,14 @@ var _default = exports.default = function _default(props) {
|
|
|
99
103
|
}),
|
|
100
104
|
context = _useRef.current;
|
|
101
105
|
var virtual = !fakeVirtual && props.rowsInView !== 0 && (!!props.virtual || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
106
|
+
(0, _react.useLayoutEffect)(function () {
|
|
107
|
+
if (!virtual) return;
|
|
108
|
+
if (!tableRef.current) return;
|
|
109
|
+
var maxHeight = tableRef.current.style.maxHeight;
|
|
110
|
+
if (!maxHeight) return;
|
|
111
|
+
var isScrollAble = _hooks.util.isScrollAble(tableRef.current);
|
|
112
|
+
setScrollAble(isScrollAble);
|
|
113
|
+
}, [virtual]);
|
|
102
114
|
|
|
103
115
|
// 虚拟列表高度另外计算
|
|
104
116
|
var _useResize = (0, _hooks.useResize)({
|
|
@@ -552,7 +564,7 @@ var _default = exports.default = function _default(props) {
|
|
|
552
564
|
isScrollX: isScrollX,
|
|
553
565
|
isEmpty: !!$empty,
|
|
554
566
|
tableRef: tableRef,
|
|
555
|
-
setFakeVirtual: setFakeVirtual,
|
|
567
|
+
setFakeVirtual: scrollAble ? undefined : setFakeVirtual,
|
|
556
568
|
children: [!props.hideHeader && !props.sticky && $headTable, !!((_props$data3 = props.data) !== null && _props$data3 !== void 0 && _props$data3.length) && /*#__PURE__*/(0, _jsxRuntime.jsxs)("table", {
|
|
557
569
|
style: _objectSpread(_objectSpread({}, tableStyle), {}, {
|
|
558
570
|
transform: virtualInfo.translateStyle
|
|
@@ -17,7 +17,7 @@ interface ScrollProps {
|
|
|
17
17
|
width: number;
|
|
18
18
|
}) => void;
|
|
19
19
|
onScrollToBottom?: (options?: any) => void;
|
|
20
|
-
setFakeVirtual
|
|
20
|
+
setFakeVirtual?: (v: boolean) => void;
|
|
21
21
|
tableRef: React.RefObject<HTMLDivElement>;
|
|
22
22
|
className?: string;
|
|
23
23
|
childrenStyle?: React.CSSProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,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,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,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,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,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,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC1C,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;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD,QAAA,MAAM,MAAM,UAAW,WAAW,4CAwJjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -139,12 +139,11 @@ var Scroll = function Scroll(props) {
|
|
|
139
139
|
|
|
140
140
|
// 非定高的Table但依旧采用了virtual渲染方式,需要渲染出全部的data
|
|
141
141
|
(0, _react.useLayoutEffect)(function () {
|
|
142
|
-
if (!props.tableRef.current) return;
|
|
143
|
-
var rootTableHeight = props.tableRef.current.clientHeight;
|
|
142
|
+
if (!props.tableRef.current || !props.setFakeVirtual) return;
|
|
144
143
|
var container = containerRef.current;
|
|
145
144
|
var isContainerVisible = (container === null || container === void 0 ? void 0 : container.offsetParent) !== null;
|
|
146
145
|
if (!isContainerVisible) return;
|
|
147
|
-
|
|
146
|
+
var rootTableHeight = props.tableRef.current.clientHeight;
|
|
148
147
|
// 判断内容滚动高度是否真的超过了容器高度
|
|
149
148
|
var isRealScroll = (container === null || container === void 0 ? void 0 : container.scrollHeight) !== undefined && container.scrollHeight > rootTableHeight;
|
|
150
149
|
// 判断Table的根节点dom高度是否发生变化,如果变化了,则是因为不定高,被内部元素撑高了导致的
|
|
@@ -154,7 +153,7 @@ var Scroll = function Scroll(props) {
|
|
|
154
153
|
} else {
|
|
155
154
|
context.lastTableHeight = rootTableHeight;
|
|
156
155
|
}
|
|
157
|
-
}, [paddingTop]);
|
|
156
|
+
}, [paddingTop, props.setFakeVirtual]);
|
|
158
157
|
if (props.isEmpty) {
|
|
159
158
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", _objectSpread(_objectSpread({}, scrollRoleProps), {}, {
|
|
160
159
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
package/esm/table/table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAitBE"}
|
package/esm/table/table.js
CHANGED
|
@@ -13,7 +13,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
13
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
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
15
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
16
|
-
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
16
|
+
import React, { useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';
|
|
17
17
|
import Scroll from "../virtual-scroll/scroll-table";
|
|
18
18
|
import classNames from 'classnames';
|
|
19
19
|
import Spin from "../spin";
|
|
@@ -58,12 +58,16 @@ export default (function (props) {
|
|
|
58
58
|
var tableRef = useRef(null);
|
|
59
59
|
var _useState = useState(false),
|
|
60
60
|
_useState2 = _slicedToArray(_useState, 2),
|
|
61
|
-
|
|
62
|
-
|
|
61
|
+
scrollAble = _useState2[0],
|
|
62
|
+
setScrollAble = _useState2[1];
|
|
63
63
|
var _useState3 = useState(false),
|
|
64
64
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
scrolling = _useState4[0],
|
|
66
|
+
setScrolling = _useState4[1];
|
|
67
|
+
var _useState5 = useState(false),
|
|
68
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
69
|
+
fakeVirtual = _useState6[0],
|
|
70
|
+
setFakeVirtual = _useState6[1];
|
|
67
71
|
var browserScrollbarWidth = useScrollbarWidth();
|
|
68
72
|
if (props.fixed) {
|
|
69
73
|
devUseWarning.deprecated('fixed', 'virtual', 'Table');
|
|
@@ -92,6 +96,14 @@ export default (function (props) {
|
|
|
92
96
|
}),
|
|
93
97
|
context = _useRef.current;
|
|
94
98
|
var virtual = !fakeVirtual && props.rowsInView !== 0 && (!!props.virtual || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
99
|
+
useLayoutEffect(function () {
|
|
100
|
+
if (!virtual) return;
|
|
101
|
+
if (!tableRef.current) return;
|
|
102
|
+
var maxHeight = tableRef.current.style.maxHeight;
|
|
103
|
+
if (!maxHeight) return;
|
|
104
|
+
var isScrollAble = util.isScrollAble(tableRef.current);
|
|
105
|
+
setScrollAble(isScrollAble);
|
|
106
|
+
}, [virtual]);
|
|
95
107
|
|
|
96
108
|
// 虚拟列表高度另外计算
|
|
97
109
|
var _useResize = useResize({
|
|
@@ -545,7 +557,7 @@ export default (function (props) {
|
|
|
545
557
|
isScrollX: isScrollX,
|
|
546
558
|
isEmpty: !!$empty,
|
|
547
559
|
tableRef: tableRef,
|
|
548
|
-
setFakeVirtual: setFakeVirtual,
|
|
560
|
+
setFakeVirtual: scrollAble ? undefined : setFakeVirtual,
|
|
549
561
|
children: [!props.hideHeader && !props.sticky && $headTable, !!((_props$data3 = props.data) !== null && _props$data3 !== void 0 && _props$data3.length) && /*#__PURE__*/_jsxs("table", {
|
|
550
562
|
style: _objectSpread(_objectSpread({}, tableStyle), {}, {
|
|
551
563
|
transform: virtualInfo.translateStyle
|
|
@@ -17,7 +17,7 @@ interface ScrollProps {
|
|
|
17
17
|
width: number;
|
|
18
18
|
}) => void;
|
|
19
19
|
onScrollToBottom?: (options?: any) => void;
|
|
20
|
-
setFakeVirtual
|
|
20
|
+
setFakeVirtual?: (v: boolean) => void;
|
|
21
21
|
tableRef: React.RefObject<HTMLDivElement>;
|
|
22
22
|
className?: string;
|
|
23
23
|
childrenStyle?: React.CSSProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,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,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,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"scroll-table.d.ts","sourceRoot":"","sources":["scroll-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,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,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,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC1C,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;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD,QAAA,MAAM,MAAM,UAAW,WAAW,4CAwJjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -132,12 +132,11 @@ var Scroll = function Scroll(props) {
|
|
|
132
132
|
|
|
133
133
|
// 非定高的Table但依旧采用了virtual渲染方式,需要渲染出全部的data
|
|
134
134
|
useLayoutEffect(function () {
|
|
135
|
-
if (!props.tableRef.current) return;
|
|
136
|
-
var rootTableHeight = props.tableRef.current.clientHeight;
|
|
135
|
+
if (!props.tableRef.current || !props.setFakeVirtual) return;
|
|
137
136
|
var container = containerRef.current;
|
|
138
137
|
var isContainerVisible = (container === null || container === void 0 ? void 0 : container.offsetParent) !== null;
|
|
139
138
|
if (!isContainerVisible) return;
|
|
140
|
-
|
|
139
|
+
var rootTableHeight = props.tableRef.current.clientHeight;
|
|
141
140
|
// 判断内容滚动高度是否真的超过了容器高度
|
|
142
141
|
var isRealScroll = (container === null || container === void 0 ? void 0 : container.scrollHeight) !== undefined && container.scrollHeight > rootTableHeight;
|
|
143
142
|
// 判断Table的根节点dom高度是否发生变化,如果变化了,则是因为不定高,被内部元素撑高了导致的
|
|
@@ -147,7 +146,7 @@ var Scroll = function Scroll(props) {
|
|
|
147
146
|
} else {
|
|
148
147
|
context.lastTableHeight = rootTableHeight;
|
|
149
148
|
}
|
|
150
|
-
}, [paddingTop]);
|
|
149
|
+
}, [paddingTop, props.setFakeVirtual]);
|
|
151
150
|
if (props.isEmpty) {
|
|
152
151
|
return /*#__PURE__*/_jsxs("div", _objectSpread(_objectSpread({}, scrollRoleProps), {}, {
|
|
153
152
|
children: [/*#__PURE__*/_jsx("div", {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sheinx/base",
|
|
3
|
-
"version": "3.8.4-beta.
|
|
3
|
+
"version": "3.8.4-beta.2",
|
|
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.8.4-beta.
|
|
13
|
+
"@sheinx/hooks": "3.8.4-beta.2",
|
|
14
14
|
"immer": "^10.0.0",
|
|
15
15
|
"classnames": "^2.0.0",
|
|
16
16
|
"@shined/reactive": "^0.1.3-alpha.0"
|