@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
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { useTableRow, useTableExpand, util } from '@sheinx/hooks';
2
+ import { useTableRow, useTableExpand, util, useComponentMemo } from '@sheinx/hooks';
3
3
  import Tr from "./tr";
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
5
5
  export default (function (props) {
@@ -23,7 +23,6 @@ export default (function (props) {
23
23
  hover: hover
24
24
  }),
25
25
  rowData = _useTableRow.rowData,
26
- isCellHover = _useTableRow.isCellHover,
27
26
  handleCellHover = _useTableRow.handleCellHover,
28
27
  hoverIndex = _useTableRow.hoverIndex,
29
28
  rowSelectMergeStartData = _useTableRow.rowSelectMergeStartData;
@@ -31,9 +30,10 @@ export default (function (props) {
31
30
  return col.type === 'expand' || col.type === 'row-expand';
32
31
  });
33
32
  var renderRow = function renderRow(item, index) {
33
+ var _props$rowEvents;
34
34
  var rowIndex = index + currentIndex;
35
35
  var originKey = util.getKey(props.keygen, item, rowIndex);
36
- var trRenderKey = props.loader ? originKey : "".concat(originKey, "-").concat(rowIndex);
36
+ var trRenderKey = props.loader || (_props$rowEvents = props.rowEvents) !== null && _props$rowEvents !== void 0 && _props$rowEvents.draggable ? originKey : "".concat(originKey, "-").concat(rowIndex);
37
37
  return /*#__PURE__*/_jsx(Tr, {
38
38
  originKey: originKey,
39
39
  row: rowData[index],
@@ -60,7 +60,6 @@ export default (function (props) {
60
60
  setRowHeight: props.setRowHeight,
61
61
  striped: props.striped,
62
62
  radio: props.radio,
63
- isCellHover: isCellHover,
64
63
  hover: hover,
65
64
  isSelect: props.datum.check(rowSelectMergeStartData[index]),
66
65
  handleCellHover: handleCellHover
@@ -74,12 +73,21 @@ export default (function (props) {
74
73
  bodyScrollWidth: props.bodyScrollWidth,
75
74
  resizeFlag: props.resizeFlag,
76
75
  treeCheckAll: props.treeCheckAll,
77
- onCellClick: props.onCellClick
76
+ onCellClick: props.onCellClick,
77
+ virtual: props.virtual,
78
+ scrolling: props.scrolling
78
79
  }, trRenderKey);
79
80
  };
80
- return /*#__PURE__*/_jsx("tbody", {
81
- children: (props.data || []).map(function (item, index) {
82
- return renderRow(item, index);
83
- })
84
- });
81
+ var $tbody = useComponentMemo(function () {
82
+ return /*#__PURE__*/_jsx("tbody", {
83
+ children: (props.data || []).map(function (item, index) {
84
+ return renderRow(item, index);
85
+ })
86
+ });
87
+ }, [props.data, currentIndex], props.virtual === 'lazy' ? function (prev, next) {
88
+ return prev.some(function (_, index) {
89
+ return !util.shallowEqual(prev === null || prev === void 0 ? void 0 : prev[index], next === null || next === void 0 ? void 0 : next[index]);
90
+ }) || !props.scrolling;
91
+ } : undefined);
92
+ return $tbody;
85
93
  });
@@ -3,7 +3,7 @@ import { TableProps, ListDatum, UseTreeResult } from './table.type';
3
3
  import type { TableFormatColumn, OptionalToRequired } from '@sheinx/hooks';
4
4
  export type UseColumnsResult = ReturnType<typeof useTableColumns>;
5
5
  export type UseTableRowResult = ReturnType<typeof useTableRow>;
6
- export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>>, 'data' | 'jssStyle' | 'rowClassName' | 'expandKeys' | 'keygen' | 'treeEmptyExpand' | 'expandIcon' | 'treeExpandIcon' | 'loader' | 'striped' | 'radio' | 'onRowClick' | 'rowClickAttr' | 'rowEvents' | 'disabled' | 'hover' | 'treeCheckAll' | 'onCellClick'> {
6
+ export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>>, 'data' | 'jssStyle' | 'rowClassName' | 'expandKeys' | 'keygen' | 'treeEmptyExpand' | 'expandIcon' | 'treeExpandIcon' | 'loader' | 'striped' | 'radio' | 'onRowClick' | 'rowClickAttr' | 'rowEvents' | 'disabled' | 'hover' | 'treeCheckAll' | 'onCellClick' | 'virtual'> {
7
7
  columns: TableFormatColumn<any>[];
8
8
  data: any[];
9
9
  colgroup: (number | string | undefined)[];
@@ -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,CAChB;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,SAAS,CACZ;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/table/td.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { ShouldUpdate } from '@sheinx/hooks';
3
2
  import type { TableFormatColumn } from '@sheinx/hooks';
4
- interface TdProps {
3
+ import { TbodyProps } from './tbody.type';
4
+ interface TdProps extends Pick<TbodyProps, 'virtual'> {
5
5
  col: TableFormatColumn<any>;
6
6
  data: any[];
7
7
  colSpan: number;
@@ -13,8 +13,8 @@ interface TdProps {
13
13
  onMouseEnter?: () => void;
14
14
  onMouseLeave?: () => void;
15
15
  onClick?: () => void;
16
- shouldUpdate?: ShouldUpdate<any>;
17
16
  renderContent: (col: TableFormatColumn<any>, data: any[]) => React.ReactNode;
17
+ scrolling?: boolean;
18
18
  }
19
19
  export default function Td(props: TdProps): JSX.Element;
20
20
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"td.d.ts","sourceRoot":"","sources":["td.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAiB,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,UAAU,OAAO;IACf,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,aAAa,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC;CAC9E;AAED,MAAM,CAAC,OAAO,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG,CAAC,OAAO,CAmEtD"}
1
+ {"version":3,"file":"td.d.ts","sourceRoot":"","sources":["td.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,UAAU,OAAQ,SAAQ,IAAI,CAAC,UAAU,EAAI,SAAS,CAAC;IACrD,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,aAAa,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC;IAC7E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG,CAAC,OAAO,CAiEtD"}
package/esm/table/td.js CHANGED
@@ -1,28 +1,36 @@
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."); }
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ 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."); }
3
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
4
  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); }
8
- import React from 'react';
9
- import { useMemo, util } from '@sheinx/hooks';
5
+ 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; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import React, { useEffect } from 'react';
8
+ import { useComponentMemo, util } from '@sheinx/hooks';
10
9
  import { jsx as _jsx } from "react/jsx-runtime";
11
10
  export default function Td(props) {
11
+ var _React$useState = React.useState(),
12
+ _React$useState2 = _slicedToArray(_React$useState, 2),
13
+ style = _React$useState2[0],
14
+ setStyle = _React$useState2[1];
15
+ useEffect(function () {
16
+ if (!props.style) return;
17
+ if (util.shallowEqual(props.style, style)) {
18
+ return;
19
+ }
20
+ setStyle(props.style);
21
+ }, [props.style]);
12
22
  var col = props.col,
13
23
  colSpan = props.colSpan,
14
24
  rowSpan = props.rowSpan,
15
25
  className = props.className,
16
- style = props.style,
17
26
  direction = props.direction,
18
27
  role = props.role,
28
+ data = props.data,
19
29
  onClick = props.onClick,
20
30
  onMouseEnter = props.onMouseEnter,
21
31
  onMouseLeave = props.onMouseLeave,
22
32
  renderContent = props.renderContent;
23
- var externalDependencies = _typeof(props.shouldUpdate) === 'object' && props.shouldUpdate.dependencies ? props.shouldUpdate.dependencies : [];
24
- var updateFn = _typeof(props.shouldUpdate) === 'object' && 'update' in props.shouldUpdate ? props.shouldUpdate.update : props.shouldUpdate;
25
- var $td = useMemo(function () {
33
+ var $td = useComponentMemo(function () {
26
34
  var content = renderContent(props.col, props.data);
27
35
  return /*#__PURE__*/_jsx("td", {
28
36
  colSpan: colSpan,
@@ -36,17 +44,13 @@ export default function Td(props) {
36
44
  onClick: onClick,
37
45
  children: content
38
46
  }, col.key);
39
- }, [].concat(_toConsumableArray(externalDependencies), [className, style, col.type, col.treeColumnsName
40
- // onClick,
41
- // onMouseEnter,
42
- // onMouseLeave,
43
- ]), updateFn ? function (prev, next) {
47
+ }, [data, className, style, col.type, col.treeColumnsName], props.virtual === 'lazy' ? function (prev, next) {
44
48
  if (col.type || col.treeColumnsName) {
45
49
  return true;
46
50
  }
47
51
  return prev.some(function (_, index) {
48
- return !util.shallowEqual(prev[index], next[index]);
49
- });
52
+ return !util.shallowEqual(prev === null || prev === void 0 ? void 0 : prev[index], next === null || next === void 0 ? void 0 : next[index]);
53
+ }) || !props.scrolling;
50
54
  } : undefined);
51
55
  return $td;
52
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"thead.d.ts","sourceRoot":"","sources":["thead.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAWnB,UAAU;AAAjC,wBAuTE"}
1
+ {"version":3,"file":"thead.d.ts","sourceRoot":"","sources":["thead.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAWnB,UAAU;AAAjC,wBA+TE"}
@@ -152,13 +152,17 @@ export default (function (props) {
152
152
  });
153
153
  };
154
154
  var getFixedStyle = function getFixedStyle(fixed, index, colSpan, level) {
155
+ // 累加level 至 0 的所有高度
156
+ var top = context.trHeights.slice(0, level).reduce(function (a, b) {
157
+ return toNum(a) + toNum(b);
158
+ }, 0);
155
159
  if (fixed === 'left') {
156
160
  var left = colgroup.slice(0, index).reduce(function (a, b) {
157
161
  return toNum(a) + toNum(b);
158
162
  }, 0);
159
163
  return {
160
164
  left: left,
161
- top: context.trHeights[level - 1] || 0,
165
+ top: top,
162
166
  position: 'sticky'
163
167
  };
164
168
  }
@@ -168,16 +172,17 @@ export default (function (props) {
168
172
  }, 0);
169
173
  return {
170
174
  right: right,
171
- top: context.trHeights[level - 1] || 0,
175
+ top: top,
172
176
  position: 'sticky'
173
177
  };
174
178
  }
175
179
  return {
176
- top: context.trHeights[level - 1] || 0,
180
+ top: top,
177
181
  position: 'sticky'
178
182
  };
179
183
  };
180
184
  var createTh = function createTh(trs, col, level, isLast, columnIndex) {
185
+ var _colTemp2$groupProps, _colTemp2$groupProps2;
181
186
  var colTemp = col;
182
187
  var colTemp2 = col;
183
188
  var fixedStyle = getFixedStyle(col.fixed, col.index, colTemp2.colSpan || 1, level);
@@ -232,8 +237,11 @@ export default (function (props) {
232
237
  var style = typeof colTemp2.name === 'string' ? fixedStyle : _objectSpread({
233
238
  padding: 0
234
239
  }, fixedStyle);
240
+ if (colTemp2 !== null && colTemp2 !== void 0 && (_colTemp2$groupProps = colTemp2.groupProps) !== null && _colTemp2$groupProps !== void 0 && _colTemp2$groupProps.style) {
241
+ style = _objectSpread(_objectSpread({}, style), colTemp2.groupProps.style);
242
+ }
235
243
  trs[level].push( /*#__PURE__*/_jsx("th", {
236
- className: classNames(cellClassName, tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellGroup),
244
+ className: classNames(cellClassName, tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellGroup, colTemp2 === null || colTemp2 === void 0 || (_colTemp2$groupProps2 = colTemp2.groupProps) === null || _colTemp2$groupProps2 === void 0 ? void 0 : _colTemp2$groupProps2.className),
237
245
  style: style,
238
246
  colSpan: colTemp2.colSpan,
239
247
  dir: config.direction,
package/esm/table/tr.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { TableFormatColumn } from '@sheinx/hooks';
2
2
  import { TbodyProps, UseTableRowResult } from './tbody.type';
3
- interface TrProps extends Pick<TbodyProps, 'jssStyle' | 'rowClassName' | 'datum' | 'treeFunc' | 'treeExpandLevel' | 'treeEmptyExpand' | 'expandIcon' | 'treeExpandIcon' | 'loader' | 'isEmptyTree' | 'setRowHeight' | 'striped' | 'radio' | 'onRowClick' | 'rowClickAttr' | 'rowEvents' | 'bodyScrollWidth' | 'resizeFlag' | 'treeCheckAll' | 'onCellClick'> {
3
+ interface TrProps extends Pick<TbodyProps, 'jssStyle' | 'rowClassName' | 'datum' | 'treeFunc' | 'treeExpandLevel' | 'treeEmptyExpand' | 'expandIcon' | 'treeExpandIcon' | 'loader' | 'isEmptyTree' | 'setRowHeight' | 'striped' | 'radio' | 'onRowClick' | 'rowClickAttr' | 'rowEvents' | 'bodyScrollWidth' | 'resizeFlag' | 'treeCheckAll' | 'onCellClick' | 'virtual'> {
4
4
  row: {
5
5
  data: any[];
6
6
  colSpan: number;
@@ -17,12 +17,12 @@ interface TrProps extends Pick<TbodyProps, 'jssStyle' | 'rowClassName' | 'datum'
17
17
  handleExpandClick: (col: TableFormatColumn<any>, data: any, index: number) => void;
18
18
  treeColumnsName?: string;
19
19
  originKey: string | number;
20
- isCellHover: UseTableRowResult['isCellHover'];
21
20
  hover?: boolean;
22
21
  handleCellHover: UseTableRowResult['handleCellHover'];
23
22
  hoverIndex: UseTableRowResult['hoverIndex'];
24
23
  isSelect: boolean;
25
24
  disabled?: boolean;
25
+ scrolling?: boolean;
26
26
  }
27
27
  declare const Tr: (props: TrProps) => import("react/jsx-runtime").JSX.Element;
28
28
  export default Tr;
@@ -1 +1 @@
1
- {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["tr.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAQvD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAI7D,UAAU,OACR,SAAQ,IAAI,CACV,UAAU,EACR,UAAU,GACV,cAAc,GACd,OAAO,GACP,UAAU,GACV,iBAAiB,GACjB,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,aAAa,GACb,cAAc,GACd,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,iBAAiB,GACjB,YAAY,GACZ,cAAc,GACd,aAAa,CAChB;IACD,GAAG,EAAE;QACH,IAAI,EAAE,GAAG,EAAE,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,UAAU,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACnD,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,WAAW,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACtD,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC5C,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,QAAA,MAAM,EAAE,UAAW,OAAO,4CA4ZzB,CAAC;AAEF,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["tr.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAQvD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAI7D,UAAU,OACR,SAAQ,IAAI,CACV,UAAU,EACR,UAAU,GACV,cAAc,GACd,OAAO,GACP,UAAU,GACV,iBAAiB,GACjB,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,aAAa,GACb,cAAc,GACd,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,iBAAiB,GACjB,YAAY,GACZ,cAAc,GACd,aAAa,GACb,SAAS,CACZ;IACD,GAAG,EAAE;QACH,IAAI,EAAE,GAAG,EAAE,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,UAAU,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACnD,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACtD,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC5C,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,QAAA,MAAM,EAAE,UAAW,OAAO,4CAqazB,CAAC;AAEF,eAAe,EAAE,CAAC"}
package/esm/table/tr.js CHANGED
@@ -56,13 +56,14 @@ var Tr = function Tr(props) {
56
56
  right: right
57
57
  };
58
58
  }
59
- return {};
59
+ return undefined;
60
60
  };
61
- var getTdStyle = function getTdStyle(column, colSpan) {
61
+ var getTdStyle = usePersistFn(function (column, colSpan) {
62
62
  var index = column.index;
63
63
  var fixedStyle = getFixedStyle(column.fixed, index, colSpan);
64
+ if (!fixedStyle && !column.style) return;
64
65
  return _objectSpread(_objectSpread({}, column.style), fixedStyle);
65
- };
66
+ });
66
67
  var handleCellClick = usePersistFn(function (data, colIndex) {
67
68
  if (!props.onCellClick) return;
68
69
  props.onCellClick(data, {
@@ -73,6 +74,8 @@ var Tr = function Tr(props) {
73
74
  });
74
75
  var setVirtualRowHeight = usePersistFn(function () {
75
76
  if (props.setRowHeight && trRef.current) {
77
+ // 祖先元素不可见时(display: none)
78
+ if (!trRef.current.offsetParent) return;
76
79
  var expandHeight = expandRef.current ? expandRef.current.getBoundingClientRect().height : 0;
77
80
  props.setRowHeight(props.rowIndex, trRef.current.getBoundingClientRect().height + expandHeight);
78
81
  }
@@ -125,7 +128,7 @@ var Tr = function Tr(props) {
125
128
  return _ref.apply(this, arguments);
126
129
  };
127
130
  }());
128
- var renderTreeExpand = function renderTreeExpand(content) {
131
+ var renderTreeExpand = usePersistFn(function (content) {
129
132
  var treeIndent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 22;
130
133
  var level = props.treeExpandLevel.get(props.originKey) || 0;
131
134
  var className = tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.expandWrapper;
@@ -178,8 +181,8 @@ var Tr = function Tr(props) {
178
181
  },
179
182
  children: [$expandIconWrapper, content]
180
183
  });
181
- };
182
- var renderContent = function renderContent(col, data) {
184
+ });
185
+ var renderContent = usePersistFn(function (col, data) {
183
186
  if (col.type === 'expand' || col.type === 'row-expand') {
184
187
  var renderResult = typeof col.render === 'function' ? col.render(props.rawData, props.rowIndex) : undefined;
185
188
  if (typeof renderResult !== 'function') return null;
@@ -244,9 +247,10 @@ var Tr = function Tr(props) {
244
247
  if (col.treeColumnsName) {
245
248
  return renderTreeExpand(content, col.treeIndent);
246
249
  }
250
+ if (col.render === undefined) return null;
247
251
  return content;
248
- };
249
- var renderTds = function renderTds(cols, data) {
252
+ });
253
+ var renderTds = usePersistFn(function (cols, data) {
250
254
  var tds = [];
251
255
  var skip = 0;
252
256
  var lastRowIndex = data.length - 1;
@@ -262,27 +266,38 @@ var Tr = function Tr(props) {
262
266
  if (data[i]) {
263
267
  var last = cols[i + (data[i].colSpan || 1) - 1] || {};
264
268
  var isRowSpanTd = data[i].rowSpan > 1;
269
+ var shouldBindMouseEvent = props.hover && hasSiblingRowSpan || isRowSpanTd;
270
+ var showCellHover = props.hoverIndex.has(props.rowIndex);
271
+ if (!showCellHover && data[i].rowSpan > 1) {
272
+ for (var j = 0; j < data[i].rowSpan; j++) {
273
+ if (props.hoverIndex.has(props.rowIndex + j)) {
274
+ showCellHover = true;
275
+ break;
276
+ }
277
+ }
278
+ }
265
279
  var td = /*#__PURE__*/_jsx(Td, {
266
280
  col: col,
267
281
  data: data[i].data,
268
282
  colSpan: data[i].colSpan,
269
283
  rowSpan: data[i].rowSpan,
270
- onMouseEnter: props.hover && hasSiblingRowSpan || isRowSpanTd ? function () {
271
- props.handleCellHover(props.rowIndex, data[i].rowSpan);
284
+ onMouseEnter: shouldBindMouseEvent ? function () {
285
+ return props.handleCellHover(props.rowIndex, data[i].rowSpan);
272
286
  } : undefined,
273
- onMouseLeave: props.hover && hasSiblingRowSpan || isRowSpanTd ? function () {
274
- props.handleCellHover(-1, 0);
287
+ onMouseLeave: shouldBindMouseEvent ? function () {
288
+ return props.handleCellHover(-1, 0);
275
289
  } : undefined,
276
- className: classNames(col.className, col.type === 'checkbox' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellCheckbox), col.fixed === 'left' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLeft), col.fixed === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedRight), col.align === 'center' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignCenter), col.align === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignRight), (col.lastFixed || col.firstFixed || last.lastFixed) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLast), lastRowIndex === i && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellIgnoreBorder), props.hoverIndex.has(props.rowIndex) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellHover), isRowSpanTd && props.isCellHover(props.rowIndex, data[i].rowSpan) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellHover)),
290
+ className: classNames(col.className, col.type === 'checkbox' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellCheckbox), col.fixed === 'left' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLeft), col.fixed === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedRight), col.align === 'center' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignCenter), col.align === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignRight), (col.lastFixed || col.firstFixed || last.lastFixed) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLast), lastRowIndex === i && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellIgnoreBorder), showCellHover && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellHover)),
277
291
  style: getTdStyle(col, data[i].colSpan),
278
292
  direction: config.direction,
279
293
  "data-role": col.type === 'checkbox' ? 'checkbox' : undefined,
280
294
  onClick: props.onCellClick ? function () {
281
295
  return handleCellClick(data[i].data, i);
282
296
  } : undefined,
283
- shouldUpdate: col.shouldUpdate,
284
- renderContent: renderContent
285
- });
297
+ renderContent: renderContent,
298
+ virtual: props.virtual,
299
+ scrolling: props.scrolling
300
+ }, "".concat(col.key, "-").concat(props.rowIndex, "-").concat(i));
286
301
  tds.push(td);
287
302
  if (data[i].colSpan) skip = data[i].colSpan - 1;
288
303
  }
@@ -291,7 +306,7 @@ var Tr = function Tr(props) {
291
306
  if (_loop(i)) continue;
292
307
  }
293
308
  return tds;
294
- };
309
+ });
295
310
  var renderExpand = function renderExpand() {
296
311
  if (!props.expanded) return null;
297
312
  var expandCol = props.expandCol;
@@ -29,7 +29,8 @@ var TabsPanel = function TabsPanel(props) {
29
29
  active = _useTabsContext.active,
30
30
  lazy = _useTabsContext.lazy,
31
31
  setTabs = _useTabsContext.setTabs,
32
- color = _useTabsContext.color;
32
+ color = _useTabsContext.color,
33
+ shape = _useTabsContext.shape;
33
34
  var isActive = active === id;
34
35
  var keekAlive = useRef(false);
35
36
  useLayoutEffect(function () {
@@ -38,7 +39,7 @@ var TabsPanel = function TabsPanel(props) {
38
39
  tab: tab,
39
40
  disabled: props.disabled,
40
41
  jssStyle: jssStyle,
41
- background: background,
42
+ background: shape !== 'button' && shape !== 'fill' ? background : undefined,
42
43
  color: props.color || (active === id ? color : undefined)
43
44
  };
44
45
  setTabs(function (prev) {
@@ -67,7 +68,7 @@ var TabsPanel = function TabsPanel(props) {
67
68
  });
68
69
  });
69
70
  };
70
- }, [id, tab, color, active, props.disabled, props.jssStyle]);
71
+ }, [id, tab, color, active, shape, props.disabled, props.jssStyle]);
71
72
  if (!isActive && lazy && !keekAlive.current) {
72
73
  return null;
73
74
  }
@@ -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;;CA6Q7B,CAAC;AAIF,eAAe,IAAI,CAAC"}
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() {
@@ -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 +1 @@
1
- {"version":3,"file":"tag.d.ts","sourceRoot":"","sources":["tag.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,QAAQ,EAAE,MAAM,YAAY,CAAC;AASlD,QAAA,MAAM,GAAG;YAAW,QAAQ;;CAmI3B,CAAC;AAIF,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"tag.d.ts","sourceRoot":"","sources":["tag.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,QAAQ,EAAE,MAAM,YAAY,CAAC;AASlD,QAAA,MAAM,GAAG;YAAW,QAAQ;;CAsI3B,CAAC;AAIF,eAAe,GAAG,CAAC"}
package/esm/tag/tag.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", "className", "type", "color", "size", "disabled", "mode", "shape", "children", "onClick", "onClose", "style", "backgroundColor", "inlineStyle", "onKeyUp", "onCompleted", "onEnterPress", "closable"];
2
+ var _excluded = ["jssStyle", "className", "type", "color", "size", "disabled", "mode", "shape", "children", "onClick", "onClose", "style", "backgroundColor", "inlineStyle", "onKeyUp", "onCompleted", "onEnterPress", "closable", "onMouseDown"];
3
3
  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; }
4
4
  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; }
5
5
  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; }
@@ -37,6 +37,7 @@ var Tag = function Tag(props) {
37
37
  onCompleted = props.onCompleted,
38
38
  onEnterPress = props.onEnterPress,
39
39
  closable = props.closable,
40
+ onMouseDown = props.onMouseDown,
40
41
  rest = _objectWithoutProperties(props, _excluded);
41
42
  if (props.type) {
42
43
  devUseWarning.deprecated('type', 'color', 'Tag');
@@ -110,6 +111,7 @@ var Tag = function Tag(props) {
110
111
  return /*#__PURE__*/_jsx("div", {
111
112
  className: tagStyle.closeIcon,
112
113
  onClick: handleClose,
114
+ onMouseDown: onMouseDown,
113
115
  children: /*#__PURE__*/_jsx("span", {
114
116
  className: tagStyle.closeIconWrapper,
115
117
  children: Icons.tag.Close
@@ -111,6 +111,12 @@ export interface BaseTagProps extends Pick<CommonType, 'style' | 'className' | '
111
111
  * 内部属性,用于控制截断样式
112
112
  */
113
113
  inlineStyle?: boolean;
114
+ /**
115
+ * @en Trigger the mousedown event when deleting
116
+ * @cn 触发删除时的mousedown事件
117
+ * @private 内部属性
118
+ */
119
+ onMouseDown?: () => void;
114
120
  }
115
121
  export interface BaseTagInputProps extends Pick<CommonType, 'style' | 'className' | 'size'> {
116
122
  jssStyle: {
@@ -1 +1 @@
1
- {"version":3,"file":"tag.type.d.ts","sourceRoot":"","sources":["tag.type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tag.type.d.ts","sourceRoot":"","sources":["tag.type.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAQ9C,QAAA,MAAM,OAAO,UAAW,YAAY,mDAmInC,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAQ9C,QAAA,MAAM,OAAO,UAAW,YAAY,mDA6InC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -4,7 +4,13 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
4
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
5
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
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 { usePopup, util } from '@sheinx/hooks';
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ 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."); }
9
+ 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); }
10
+ 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; }
11
+ 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; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import { usePersistFn, usePopup, util } from '@sheinx/hooks';
8
14
  import classNames from 'classnames';
9
15
  import React, { cloneElement, isValidElement, useEffect } from 'react';
10
16
  import AbsoluteList from "../absolute-list";
@@ -53,14 +59,26 @@ var Tooltip = function Tooltip(props) {
53
59
  popupRef = _usePopup.popupRef,
54
60
  closePop = _usePopup.closePop;
55
61
  var events = getTargetProps();
62
+ var _React$useState = React.useState(0),
63
+ _React$useState2 = _slicedToArray(_React$useState, 2),
64
+ updateKey = _React$useState2[0],
65
+ setUpdateKey = _React$useState2[1];
66
+ var handleUpdateKey = usePersistFn(function () {
67
+ setUpdateKey(function (prev) {
68
+ return (prev + 1) % 2;
69
+ });
70
+ });
56
71
  var bindEvents = function bindEvents() {
72
+ var _window;
57
73
  var targetEl = targetRef.current;
58
74
  if (!targetEl) return;
59
75
  if (events.onMouseEnter) targetEl.addEventListener('mouseenter', events.onMouseEnter);
60
76
  if (events.onMouseLeave) targetEl.addEventListener('mouseleave', events.onMouseLeave);
61
77
  if (events.onClick) targetEl.addEventListener('click', events.onClick);
78
+ (_window = window) === null || _window === void 0 || _window.addEventListener('resize', handleUpdateKey);
62
79
  };
63
80
  var unbindEvents = function unbindEvents() {
81
+ var _window2;
64
82
  var targetEl = targetRef.current;
65
83
  if (!targetEl) return;
66
84
  var events = getTargetProps();
@@ -68,6 +86,7 @@ var Tooltip = function Tooltip(props) {
68
86
  if (events.onMouseLeave) targetEl.removeEventListener('mouseleave', events.onMouseLeave);
69
87
  if (events.onClick) targetEl.removeEventListener('click', events.onClick);
70
88
  targetEl.removeEventListener('click', closePop);
89
+ (_window2 = window) === null || _window2 === void 0 || _window2.removeEventListener('resize', handleUpdateKey);
71
90
  };
72
91
  useEffect(function () {
73
92
  if (!persistent) return;
@@ -111,6 +130,7 @@ var Tooltip = function Tooltip(props) {
111
130
  popupGap: 0,
112
131
  zIndex: zIndex,
113
132
  adjust: popsitionProps === 'auto',
133
+ updateKey: updateKey,
114
134
  children: /*#__PURE__*/_jsxs("div", _objectSpread(_objectSpread({
115
135
  className: classNames(className, tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.rootClass, tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.wrapper, open && (tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.wrapperOpen)),
116
136
  style: {