@sheinx/base 3.7.0-beta.3 → 3.7.0-beta.30

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.
Files changed (271) hide show
  1. package/cjs/cascader/cascader.d.ts.map +1 -1
  2. package/cjs/cascader/cascader.js +8 -2
  3. package/cjs/cascader/cascader.type.d.ts +6 -1
  4. package/cjs/cascader/cascader.type.d.ts.map +1 -1
  5. package/cjs/date-picker/date-picker.js +1 -1
  6. package/cjs/form/form-flow.js +1 -1
  7. package/cjs/form/form-footer-context.d.ts +2 -1
  8. package/cjs/form/form-footer-context.d.ts.map +1 -1
  9. package/cjs/form/form.d.ts.map +1 -1
  10. package/cjs/form/form.js +4 -2
  11. package/cjs/form/form.type.d.ts +3 -0
  12. package/cjs/form/form.type.d.ts.map +1 -1
  13. package/cjs/icons/config.d.ts +3 -2
  14. package/cjs/icons/config.d.ts.map +1 -1
  15. package/cjs/icons/config.js +5 -4
  16. package/cjs/icons/icons.js +5 -1
  17. package/cjs/image/image.d.ts.map +1 -1
  18. package/cjs/image/image.js +3 -2
  19. package/cjs/index.d.ts +1 -0
  20. package/cjs/index.d.ts.map +1 -1
  21. package/cjs/index.js +12 -0
  22. package/cjs/modal/modal-content.d.ts.map +1 -1
  23. package/cjs/modal/modal-content.js +14 -3
  24. package/cjs/modal/modal-submit.d.ts.map +1 -1
  25. package/cjs/modal/modal-submit.js +10 -3
  26. package/cjs/modal/modal.d.ts.map +1 -1
  27. package/cjs/modal/modal.js +3 -0
  28. package/cjs/popover/popover.d.ts.map +1 -1
  29. package/cjs/popover/popover.js +29 -1
  30. package/cjs/select/list.d.ts.map +1 -1
  31. package/cjs/select/list.js +2 -1
  32. package/cjs/select/result-more.d.ts.map +1 -1
  33. package/cjs/select/result-more.js +1 -1
  34. package/cjs/select/result.d.ts.map +1 -1
  35. package/cjs/select/result.js +10 -1
  36. package/cjs/select/select.d.ts.map +1 -1
  37. package/cjs/select/select.js +3 -0
  38. package/cjs/select/select.type.d.ts +2 -1
  39. package/cjs/select/select.type.d.ts.map +1 -1
  40. package/cjs/skeleton/button.d.ts +8 -0
  41. package/cjs/skeleton/button.d.ts.map +1 -0
  42. package/cjs/skeleton/button.js +34 -0
  43. package/cjs/skeleton/image.d.ts +8 -0
  44. package/cjs/skeleton/image.d.ts.map +1 -0
  45. package/cjs/skeleton/image.js +27 -0
  46. package/cjs/skeleton/index.d.ts +3 -0
  47. package/cjs/skeleton/index.d.ts.map +1 -0
  48. package/cjs/skeleton/index.js +20 -0
  49. package/cjs/skeleton/skeleton.d.ts +5 -0
  50. package/cjs/skeleton/skeleton.d.ts.map +1 -0
  51. package/cjs/skeleton/skeleton.js +58 -0
  52. package/cjs/skeleton/skeleton.type.d.ts +125 -0
  53. package/cjs/skeleton/skeleton.type.d.ts.map +1 -0
  54. package/cjs/skeleton/skeleton.type.js +5 -0
  55. package/cjs/skeleton/text.d.ts +8 -0
  56. package/cjs/skeleton/text.d.ts.map +1 -0
  57. package/cjs/skeleton/text.js +53 -0
  58. package/cjs/sticky/sticky.d.ts.map +1 -1
  59. package/cjs/sticky/sticky.js +12 -3
  60. package/cjs/sticky/sticky.type.d.ts +2 -2
  61. package/cjs/sticky/sticky.type.d.ts.map +1 -1
  62. package/cjs/table/table.d.ts.map +1 -1
  63. package/cjs/table/table.js +203 -71
  64. package/cjs/table/table.type.d.ts +20 -4
  65. package/cjs/table/table.type.d.ts.map +1 -1
  66. package/cjs/table/tbody.d.ts +1 -1
  67. package/cjs/table/tbody.d.ts.map +1 -1
  68. package/cjs/table/tbody.js +17 -9
  69. package/cjs/table/tbody.type.d.ts +2 -1
  70. package/cjs/table/tbody.type.d.ts.map +1 -1
  71. package/cjs/table/td.d.ts +3 -3
  72. package/cjs/table/td.d.ts.map +1 -1
  73. package/cjs/table/td.js +24 -18
  74. package/cjs/table/thead.d.ts.map +1 -1
  75. package/cjs/table/thead.js +12 -4
  76. package/cjs/table/tr.d.ts +2 -2
  77. package/cjs/table/tr.d.ts.map +1 -1
  78. package/cjs/table/tr.js +32 -17
  79. package/cjs/tabs/tabs-panel.js +4 -3
  80. package/cjs/tabs/tabs.d.ts.map +1 -1
  81. package/cjs/tabs/tabs.js +10 -1
  82. package/cjs/tabs/tabs.type.d.ts +6 -0
  83. package/cjs/tabs/tabs.type.d.ts.map +1 -1
  84. package/cjs/tag/tag.d.ts.map +1 -1
  85. package/cjs/tag/tag.js +3 -1
  86. package/cjs/tag/tag.type.d.ts +6 -0
  87. package/cjs/tag/tag.type.d.ts.map +1 -1
  88. package/cjs/tooltip/tooltip.d.ts.map +1 -1
  89. package/cjs/tooltip/tooltip.js +21 -1
  90. package/cjs/transfer/transfer-list.type.d.ts +1 -1
  91. package/cjs/transfer/transfer-list.type.d.ts.map +1 -1
  92. package/cjs/transfer/transfer.d.ts.map +1 -1
  93. package/cjs/transfer/transfer.js +16 -2
  94. package/cjs/transfer/transfer.type.d.ts +1 -1
  95. package/cjs/transfer/transfer.type.d.ts.map +1 -1
  96. package/cjs/tree/tree-checkbox.d.ts.map +1 -1
  97. package/cjs/tree/tree-checkbox.js +4 -2
  98. package/cjs/tree/tree-checkbox.type.d.ts +1 -0
  99. package/cjs/tree/tree-checkbox.type.d.ts.map +1 -1
  100. package/cjs/tree/tree-content.d.ts.map +1 -1
  101. package/cjs/tree/tree-content.js +25 -4
  102. package/cjs/tree/tree-content.type.d.ts +1 -2
  103. package/cjs/tree/tree-content.type.d.ts.map +1 -1
  104. package/cjs/tree/tree-context.d.ts +3 -3
  105. package/cjs/tree/tree-context.d.ts.map +1 -1
  106. package/cjs/tree/tree-context.type.d.ts +2 -1
  107. package/cjs/tree/tree-context.type.d.ts.map +1 -1
  108. package/cjs/tree/tree-list.type.d.ts +1 -2
  109. package/cjs/tree/tree-list.type.d.ts.map +1 -1
  110. package/cjs/tree/tree-node.type.d.ts +2 -4
  111. package/cjs/tree/tree-node.type.d.ts.map +1 -1
  112. package/cjs/tree/tree-root.type.d.ts +1 -2
  113. package/cjs/tree/tree-root.type.d.ts.map +1 -1
  114. package/cjs/tree/tree-virtual-node.d.ts.map +1 -1
  115. package/cjs/tree/tree-virtual-node.js +20 -5
  116. package/cjs/tree/tree-virtual.d.ts.map +1 -1
  117. package/cjs/tree/tree-virtual.js +11 -4
  118. package/cjs/tree/tree.d.ts.map +1 -1
  119. package/cjs/tree/tree.js +11 -14
  120. package/cjs/tree/tree.type.d.ts +24 -6
  121. package/cjs/tree/tree.type.d.ts.map +1 -1
  122. package/cjs/tree-select/tree-select.d.ts.map +1 -1
  123. package/cjs/tree-select/tree-select.js +21 -6
  124. package/cjs/tree-select/tree-select.type.d.ts +30 -2
  125. package/cjs/tree-select/tree-select.type.d.ts.map +1 -1
  126. package/cjs/upload/drop.d.ts +1 -0
  127. package/cjs/upload/drop.d.ts.map +1 -1
  128. package/cjs/upload/drop.js +43 -12
  129. package/cjs/upload/upload.d.ts.map +1 -1
  130. package/cjs/upload/upload.js +3 -1
  131. package/cjs/upload/upload.type.d.ts +6 -0
  132. package/cjs/upload/upload.type.d.ts.map +1 -1
  133. package/cjs/virtual-scroll/scroll-table.d.ts +31 -0
  134. package/cjs/virtual-scroll/scroll-table.d.ts.map +1 -0
  135. package/cjs/virtual-scroll/scroll-table.js +182 -0
  136. package/esm/cascader/cascader.d.ts.map +1 -1
  137. package/esm/cascader/cascader.js +8 -2
  138. package/esm/cascader/cascader.type.d.ts +6 -1
  139. package/esm/cascader/cascader.type.d.ts.map +1 -1
  140. package/esm/date-picker/date-picker.js +1 -1
  141. package/esm/form/form-flow.js +1 -1
  142. package/esm/form/form-footer-context.d.ts +2 -1
  143. package/esm/form/form-footer-context.d.ts.map +1 -1
  144. package/esm/form/form.d.ts.map +1 -1
  145. package/esm/form/form.js +4 -2
  146. package/esm/form/form.type.d.ts +3 -0
  147. package/esm/form/form.type.d.ts.map +1 -1
  148. package/esm/icons/config.d.ts +3 -2
  149. package/esm/icons/config.d.ts.map +1 -1
  150. package/esm/icons/config.js +5 -4
  151. package/esm/icons/icons.js +5 -1
  152. package/esm/image/image.d.ts.map +1 -1
  153. package/esm/image/image.js +3 -2
  154. package/esm/index.d.ts +1 -0
  155. package/esm/index.d.ts.map +1 -1
  156. package/esm/index.js +1 -0
  157. package/esm/modal/modal-content.d.ts.map +1 -1
  158. package/esm/modal/modal-content.js +14 -3
  159. package/esm/modal/modal-submit.d.ts.map +1 -1
  160. package/esm/modal/modal-submit.js +10 -3
  161. package/esm/modal/modal.d.ts.map +1 -1
  162. package/esm/modal/modal.js +3 -0
  163. package/esm/popover/popover.d.ts.map +1 -1
  164. package/esm/popover/popover.js +29 -1
  165. package/esm/select/list.d.ts.map +1 -1
  166. package/esm/select/list.js +2 -1
  167. package/esm/select/result-more.d.ts.map +1 -1
  168. package/esm/select/result-more.js +1 -1
  169. package/esm/select/result.d.ts.map +1 -1
  170. package/esm/select/result.js +10 -1
  171. package/esm/select/select.d.ts.map +1 -1
  172. package/esm/select/select.js +3 -0
  173. package/esm/select/select.type.d.ts +2 -1
  174. package/esm/select/select.type.d.ts.map +1 -1
  175. package/esm/skeleton/button.d.ts +8 -0
  176. package/esm/skeleton/button.d.ts.map +1 -0
  177. package/esm/skeleton/button.js +27 -0
  178. package/esm/skeleton/image.d.ts +8 -0
  179. package/esm/skeleton/image.d.ts.map +1 -0
  180. package/esm/skeleton/image.js +20 -0
  181. package/esm/skeleton/index.d.ts +3 -0
  182. package/esm/skeleton/index.d.ts.map +1 -0
  183. package/esm/skeleton/index.js +2 -0
  184. package/esm/skeleton/skeleton.d.ts +5 -0
  185. package/esm/skeleton/skeleton.d.ts.map +1 -0
  186. package/esm/skeleton/skeleton.js +52 -0
  187. package/esm/skeleton/skeleton.type.d.ts +125 -0
  188. package/esm/skeleton/skeleton.type.d.ts.map +1 -0
  189. package/esm/skeleton/skeleton.type.js +1 -0
  190. package/esm/skeleton/text.d.ts +8 -0
  191. package/esm/skeleton/text.d.ts.map +1 -0
  192. package/esm/skeleton/text.js +46 -0
  193. package/esm/sticky/sticky.d.ts.map +1 -1
  194. package/esm/sticky/sticky.js +13 -4
  195. package/esm/sticky/sticky.type.d.ts +2 -2
  196. package/esm/sticky/sticky.type.d.ts.map +1 -1
  197. package/esm/table/table.d.ts.map +1 -1
  198. package/esm/table/table.js +204 -72
  199. package/esm/table/table.type.d.ts +20 -4
  200. package/esm/table/table.type.d.ts.map +1 -1
  201. package/esm/table/tbody.d.ts +1 -1
  202. package/esm/table/tbody.d.ts.map +1 -1
  203. package/esm/table/tbody.js +18 -10
  204. package/esm/table/tbody.type.d.ts +2 -1
  205. package/esm/table/tbody.type.d.ts.map +1 -1
  206. package/esm/table/td.d.ts +3 -3
  207. package/esm/table/td.d.ts.map +1 -1
  208. package/esm/table/td.js +22 -18
  209. package/esm/table/thead.d.ts.map +1 -1
  210. package/esm/table/thead.js +12 -4
  211. package/esm/table/tr.d.ts +2 -2
  212. package/esm/table/tr.d.ts.map +1 -1
  213. package/esm/table/tr.js +32 -17
  214. package/esm/tabs/tabs-panel.js +4 -3
  215. package/esm/tabs/tabs.d.ts.map +1 -1
  216. package/esm/tabs/tabs.js +10 -1
  217. package/esm/tabs/tabs.type.d.ts +6 -0
  218. package/esm/tabs/tabs.type.d.ts.map +1 -1
  219. package/esm/tag/tag.d.ts.map +1 -1
  220. package/esm/tag/tag.js +3 -1
  221. package/esm/tag/tag.type.d.ts +6 -0
  222. package/esm/tag/tag.type.d.ts.map +1 -1
  223. package/esm/tooltip/tooltip.d.ts.map +1 -1
  224. package/esm/tooltip/tooltip.js +21 -1
  225. package/esm/transfer/transfer-list.type.d.ts +1 -1
  226. package/esm/transfer/transfer-list.type.d.ts.map +1 -1
  227. package/esm/transfer/transfer.d.ts.map +1 -1
  228. package/esm/transfer/transfer.js +16 -2
  229. package/esm/transfer/transfer.type.d.ts +1 -1
  230. package/esm/transfer/transfer.type.d.ts.map +1 -1
  231. package/esm/tree/tree-checkbox.d.ts.map +1 -1
  232. package/esm/tree/tree-checkbox.js +4 -2
  233. package/esm/tree/tree-checkbox.type.d.ts +1 -0
  234. package/esm/tree/tree-checkbox.type.d.ts.map +1 -1
  235. package/esm/tree/tree-content.d.ts.map +1 -1
  236. package/esm/tree/tree-content.js +25 -4
  237. package/esm/tree/tree-content.type.d.ts +1 -2
  238. package/esm/tree/tree-content.type.d.ts.map +1 -1
  239. package/esm/tree/tree-context.d.ts +3 -3
  240. package/esm/tree/tree-context.d.ts.map +1 -1
  241. package/esm/tree/tree-context.type.d.ts +2 -1
  242. package/esm/tree/tree-context.type.d.ts.map +1 -1
  243. package/esm/tree/tree-list.type.d.ts +1 -2
  244. package/esm/tree/tree-list.type.d.ts.map +1 -1
  245. package/esm/tree/tree-node.type.d.ts +2 -4
  246. package/esm/tree/tree-node.type.d.ts.map +1 -1
  247. package/esm/tree/tree-root.type.d.ts +1 -2
  248. package/esm/tree/tree-root.type.d.ts.map +1 -1
  249. package/esm/tree/tree-virtual-node.d.ts.map +1 -1
  250. package/esm/tree/tree-virtual-node.js +21 -5
  251. package/esm/tree/tree-virtual.d.ts.map +1 -1
  252. package/esm/tree/tree-virtual.js +11 -4
  253. package/esm/tree/tree.d.ts.map +1 -1
  254. package/esm/tree/tree.js +11 -14
  255. package/esm/tree/tree.type.d.ts +24 -6
  256. package/esm/tree/tree.type.d.ts.map +1 -1
  257. package/esm/tree-select/tree-select.d.ts.map +1 -1
  258. package/esm/tree-select/tree-select.js +21 -6
  259. package/esm/tree-select/tree-select.type.d.ts +30 -2
  260. package/esm/tree-select/tree-select.type.d.ts.map +1 -1
  261. package/esm/upload/drop.d.ts +1 -0
  262. package/esm/upload/drop.d.ts.map +1 -1
  263. package/esm/upload/drop.js +43 -12
  264. package/esm/upload/upload.d.ts.map +1 -1
  265. package/esm/upload/upload.js +3 -1
  266. package/esm/upload/upload.type.d.ts +6 -0
  267. package/esm/upload/upload.type.d.ts.map +1 -1
  268. package/esm/virtual-scroll/scroll-table.d.ts +31 -0
  269. package/esm/virtual-scroll/scroll-table.d.ts.map +1 -0
  270. package/esm/virtual-scroll/scroll-table.js +175 -0
  271. package/package.json +2 -2
@@ -0,0 +1,175 @@
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
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ 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); }
7
+ import React, { useLayoutEffect, useRef } from 'react';
8
+ import { useForkRef, usePersistFn, useResize, util } from '@sheinx/hooks';
9
+ import { useConfig } from "../config";
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { jsxs as _jsxs } from "react/jsx-runtime";
12
+ var extractHeightValue = function extractHeightValue(num) {
13
+ if (util.isNumber(num)) return num;
14
+ var match = num.match(/(\d+)/);
15
+ if (match) {
16
+ return parseInt(match[0], 10);
17
+ }
18
+ return undefined;
19
+ };
20
+ var Scroll = function Scroll(props) {
21
+ var containerRef = useRef(null);
22
+ var scrollRef = useRef(null);
23
+ var wrapperRef = useForkRef(scrollRef, props.wrapperRef);
24
+ var _useRef = useRef({
25
+ isMouseDown: false,
26
+ lastTableHeight: 0
27
+ }),
28
+ context = _useRef.current;
29
+ var _props$scrollHeight = props.scrollHeight,
30
+ scrollHeight = _props$scrollHeight === void 0 ? 0 : _props$scrollHeight,
31
+ _props$scrollWidth = props.scrollWidth,
32
+ scrollWidth = _props$scrollWidth === void 0 ? 0 : _props$scrollWidth,
33
+ _props$defaultHeight = props.defaultHeight,
34
+ defaultHeight = _props$defaultHeight === void 0 ? 0 : _props$defaultHeight;
35
+ var _useResize = useResize({
36
+ targetRef: containerRef,
37
+ timer: 100
38
+ }),
39
+ width = _useResize.width,
40
+ h = _useResize.height;
41
+ var height = h || defaultHeight;
42
+ var config = useConfig();
43
+ var isRtl = config.direction === 'rtl';
44
+ var scrollerStyle = {
45
+ flex: 1,
46
+ minWidth: 0,
47
+ minHeight: 0,
48
+ overflow: 'auto',
49
+ width: '100%'
50
+ };
51
+ var containerStyle = {
52
+ height: '100%',
53
+ width: '100%',
54
+ display: 'flex',
55
+ position: 'sticky',
56
+ flexDirection: 'column',
57
+ overflow: props.isScrollX ? 'initial' : 'hidden',
58
+ top: 0
59
+ };
60
+ var paddingTop = Math.max(0, Math.floor(scrollHeight - height));
61
+ if (props.isEmpty) {
62
+ paddingTop = 0;
63
+ Object.assign(scrollerStyle, {
64
+ display: 'flex',
65
+ flexDirection: 'column'
66
+ });
67
+ }
68
+ var placeStyle = {
69
+ paddingTop: paddingTop,
70
+ width: scrollWidth,
71
+ overflow: props.isScrollY ? 'hidden' : 'auto hidden',
72
+ height: props.isScrollY ? 0 : 1,
73
+ marginTop: props.isScrollY ? 0 : -1,
74
+ lineHeight: 0
75
+ };
76
+ var handleScroll = usePersistFn(function (e) {
77
+ var onScrollToBottom = props.onScrollToBottom;
78
+ var target = e.currentTarget;
79
+ var scrollLeft = target.scrollLeft,
80
+ scrollTop = target.scrollTop;
81
+ if (props.height && onScrollToBottom) {
82
+ var realHeight = extractHeightValue(props.height);
83
+ if (realHeight !== undefined) {
84
+ var touchBottom = target.scrollHeight === scrollTop + realHeight;
85
+ if (touchBottom) onScrollToBottom();
86
+ }
87
+ }
88
+ var maxY = target.scrollHeight - target.clientHeight;
89
+ var maxX = target.scrollWidth - target.clientWidth;
90
+ if (!isRtl) {
91
+ // 解决浏览器缩放以后导致滚动条长度出现小数
92
+ if (maxX - scrollLeft < 0 || maxX - scrollLeft < 1) scrollLeft = maxX;
93
+ if (scrollLeft < 0) scrollLeft = 0;
94
+ } else {
95
+ if (maxX + scrollLeft < 0 || maxX + scrollLeft < 1) scrollLeft = 0 - maxX;
96
+ if (scrollLeft > 0) scrollLeft = 0;
97
+ }
98
+ if (scrollTop > maxY || maxY - scrollTop < 1) scrollTop = maxY;
99
+ if (scrollTop < 0) scrollTop = 0;
100
+ var x = maxX === 0 ? 0 : Math.min(Math.abs(scrollLeft) / maxX, 1);
101
+ var y = maxY === 0 ? 0 : Math.min(scrollTop / maxY, 1);
102
+ if (props.onScroll) props.onScroll({
103
+ scrollLeft: scrollLeft,
104
+ scrollTop: scrollTop,
105
+ x: x,
106
+ y: y,
107
+ height: height,
108
+ width: width,
109
+ fromDrag: context.isMouseDown
110
+ });
111
+ });
112
+ var handleInnerScroll = usePersistFn(function (e) {
113
+ var scrollTop = e.currentTarget.scrollTop;
114
+ if (scrollRef.current) {
115
+ e.currentTarget.scrollTop = 0;
116
+ scrollRef.current.scrollTop += scrollTop;
117
+ }
118
+ });
119
+ var scrollRoleProps = _objectSpread(_objectSpread({}, util.getDataAttribute({
120
+ role: 'scroll'
121
+ })), {}, {
122
+ style: scrollerStyle,
123
+ onScroll: handleScroll,
124
+ ref: wrapperRef,
125
+ onMouseDown: function onMouseDown() {
126
+ context.isMouseDown = true;
127
+ },
128
+ onMouseUp: function onMouseUp() {
129
+ context.isMouseDown = false;
130
+ }
131
+ });
132
+
133
+ // 非定高的Table但依旧采用了virtual渲染方式,需要渲染出全部的data
134
+ useLayoutEffect(function () {
135
+ if (!props.tableRef.current) return;
136
+ var rootTableHeight = props.tableRef.current.clientHeight;
137
+ var container = containerRef.current;
138
+ // 判断内容滚动高度是否真的超过了容器高度
139
+ var isRealScroll = (container === null || container === void 0 ? void 0 : container.scrollHeight) !== undefined && container.scrollHeight > rootTableHeight;
140
+ // 判断Table的根节点dom高度是否发生变化,如果变化了,则是因为不定高,被内部元素撑高了导致的
141
+ if (paddingTop > 0 && context.lastTableHeight > 0 && context.lastTableHeight !== rootTableHeight && !isRealScroll) {
142
+ props.setFakeVirtual(true);
143
+ context.lastTableHeight = 0;
144
+ } else {
145
+ context.lastTableHeight = rootTableHeight;
146
+ }
147
+ }, [paddingTop]);
148
+ if (props.isEmpty) {
149
+ return /*#__PURE__*/_jsxs("div", _objectSpread(_objectSpread({}, scrollRoleProps), {}, {
150
+ children: [/*#__PURE__*/_jsx("div", {
151
+ style: {
152
+ width: scrollWidth
153
+ }
154
+ }), props.children]
155
+ }));
156
+ }
157
+ return /*#__PURE__*/_jsx("div", {
158
+ className: props.className,
159
+ style: props.style,
160
+ children: /*#__PURE__*/_jsxs("div", _objectSpread(_objectSpread({}, scrollRoleProps), {}, {
161
+ children: [/*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({}, util.getDataAttribute({
162
+ role: 'scroll-container'
163
+ })), {}, {
164
+ style: containerStyle,
165
+ ref: containerRef,
166
+ onScroll: handleInnerScroll,
167
+ children: props.children
168
+ })), /*#__PURE__*/_jsx("div", {
169
+ style: placeStyle,
170
+ children: "\xA0"
171
+ })]
172
+ }))
173
+ });
174
+ };
175
+ 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",
3
+ "version": "3.7.0-beta.30",
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.3",
13
+ "@sheinx/hooks": "3.7.0-beta.30",
14
14
  "immer": "^10.0.0",
15
15
  "classnames": "^2.0.0",
16
16
  "@shined/reactive": "^0.1.3-alpha.0"