@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.
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAssBE"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAitBE"}
@@ -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
- scrolling = _useState2[0],
69
- setScrolling = _useState2[1];
68
+ scrollAble = _useState2[0],
69
+ setScrollAble = _useState2[1];
70
70
  var _useState3 = (0, _react.useState)(false),
71
71
  _useState4 = _slicedToArray(_useState3, 2),
72
- fakeVirtual = _useState4[0],
73
- setFakeVirtual = _useState4[1];
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: (v: boolean) => void;
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;IACrC,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"}
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", {
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAssBE"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["table.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;;AAexD,wBAitBE"}
@@ -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
- scrolling = _useState2[0],
62
- setScrolling = _useState2[1];
61
+ scrollAble = _useState2[0],
62
+ setScrollAble = _useState2[1];
63
63
  var _useState3 = useState(false),
64
64
  _useState4 = _slicedToArray(_useState3, 2),
65
- fakeVirtual = _useState4[0],
66
- setFakeVirtual = _useState4[1];
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: (v: boolean) => void;
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;IACrC,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"}
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.1",
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.1",
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"