@sheinx/hooks 3.7.0-beta.3 → 3.7.0-beta.31

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 (155) hide show
  1. package/cjs/common/use-component-memo/index.d.ts +2 -0
  2. package/cjs/common/use-component-memo/index.d.ts.map +1 -0
  3. package/cjs/common/use-component-memo/index.js +13 -0
  4. package/cjs/common/use-component-memo/use-memo.d.ts +2 -0
  5. package/cjs/common/use-component-memo/use-memo.d.ts.map +1 -0
  6. package/cjs/common/{use-memo → use-component-memo}/use-memo.js +2 -2
  7. package/cjs/common/use-filter/index.d.ts +1 -0
  8. package/cjs/common/use-filter/index.d.ts.map +1 -1
  9. package/cjs/common/use-filter/index.js +7 -0
  10. package/cjs/common/use-filter/use-filter-context.d.ts +7 -0
  11. package/cjs/common/use-filter/use-filter-context.d.ts.map +1 -0
  12. package/cjs/common/use-filter/use-filter-context.js +10 -0
  13. package/cjs/common/use-filter/use-filter.d.ts +1 -0
  14. package/cjs/common/use-filter/use-filter.d.ts.map +1 -1
  15. package/cjs/common/use-filter/use-filter.js +2 -0
  16. package/cjs/common/use-position-style/check-element-size.d.ts +10 -0
  17. package/cjs/common/use-position-style/check-element-size.d.ts.map +1 -0
  18. package/cjs/common/use-position-style/check-element-size.js +65 -0
  19. package/cjs/common/use-position-style/index.d.ts.map +1 -1
  20. package/cjs/common/use-position-style/index.js +5 -8
  21. package/cjs/components/use-form/use-form-control/use-form-control.d.ts.map +1 -1
  22. package/cjs/components/use-form/use-form-control/use-form-control.js +15 -2
  23. package/cjs/components/use-form/use-form-control/use-form-control.type.d.ts +3 -0
  24. package/cjs/components/use-form/use-form-control/use-form-control.type.d.ts.map +1 -1
  25. package/cjs/components/use-form/use-form.d.ts +4 -4
  26. package/cjs/components/use-form/use-form.d.ts.map +1 -1
  27. package/cjs/components/use-form/use-form.js +38 -29
  28. package/cjs/components/use-form/use-form.type.d.ts +1 -0
  29. package/cjs/components/use-form/use-form.type.d.ts.map +1 -1
  30. package/cjs/components/use-image/use-image.d.ts +2 -0
  31. package/cjs/components/use-image/use-image.d.ts.map +1 -1
  32. package/cjs/components/use-image/use-image.js +40 -2
  33. package/cjs/components/use-popup/popup-context.d.ts +2 -0
  34. package/cjs/components/use-popup/popup-context.d.ts.map +1 -1
  35. package/cjs/components/use-popup/popup-context.js +2 -0
  36. package/cjs/components/use-popup/use-popup.d.ts +4 -0
  37. package/cjs/components/use-popup/use-popup.d.ts.map +1 -1
  38. package/cjs/components/use-popup/use-popup.js +33 -13
  39. package/cjs/components/use-table/index.d.ts +1 -1
  40. package/cjs/components/use-table/index.d.ts.map +1 -1
  41. package/cjs/components/use-table/use-table-group.d.ts.map +1 -1
  42. package/cjs/components/use-table/use-table-group.js +3 -1
  43. package/cjs/components/use-table/use-table-layout.d.ts.map +1 -1
  44. package/cjs/components/use-table/use-table-layout.js +29 -2
  45. package/cjs/components/use-table/use-table-row.d.ts +0 -1
  46. package/cjs/components/use-table/use-table-row.d.ts.map +1 -1
  47. package/cjs/components/use-table/use-table-row.js +0 -11
  48. package/cjs/components/use-table/use-table-virtual.d.ts +2 -2
  49. package/cjs/components/use-table/use-table-virtual.d.ts.map +1 -1
  50. package/cjs/components/use-table/use-table-virtual.js +16 -14
  51. package/cjs/components/use-table/use-table.type.d.ts +13 -10
  52. package/cjs/components/use-table/use-table.type.d.ts.map +1 -1
  53. package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
  54. package/cjs/components/use-tree/use-tree.js +25 -7
  55. package/cjs/components/use-tree/use-tree.type.d.ts +1 -0
  56. package/cjs/components/use-tree/use-tree.type.d.ts.map +1 -1
  57. package/cjs/components/use-upload/use-upload.d.ts.map +1 -1
  58. package/cjs/components/use-upload/use-upload.js +54 -34
  59. package/cjs/components/use-upload/use-upload.type.d.ts +7 -0
  60. package/cjs/components/use-upload/use-upload.type.d.ts.map +1 -1
  61. package/cjs/index.d.ts +1 -1
  62. package/cjs/index.d.ts.map +1 -1
  63. package/cjs/index.js +4 -4
  64. package/cjs/utils/highlight.d.ts +7 -0
  65. package/cjs/utils/highlight.d.ts.map +1 -0
  66. package/cjs/utils/highlight.js +67 -0
  67. package/cjs/utils/index.d.ts +1 -0
  68. package/cjs/utils/index.d.ts.map +1 -1
  69. package/cjs/utils/index.js +12 -0
  70. package/cjs/utils/string.d.ts +1 -0
  71. package/cjs/utils/string.d.ts.map +1 -1
  72. package/cjs/utils/string.js +13 -0
  73. package/esm/common/use-component-memo/index.d.ts +2 -0
  74. package/esm/common/use-component-memo/index.d.ts.map +1 -0
  75. package/esm/common/use-component-memo/index.js +2 -0
  76. package/esm/common/use-component-memo/use-memo.d.ts +2 -0
  77. package/esm/common/use-component-memo/use-memo.d.ts.map +1 -0
  78. package/esm/common/{use-memo → use-component-memo}/use-memo.js +1 -1
  79. package/esm/common/use-filter/index.d.ts +1 -0
  80. package/esm/common/use-filter/index.d.ts.map +1 -1
  81. package/esm/common/use-filter/index.js +2 -1
  82. package/esm/common/use-filter/use-filter-context.d.ts +7 -0
  83. package/esm/common/use-filter/use-filter-context.d.ts.map +1 -0
  84. package/esm/common/use-filter/use-filter-context.js +3 -0
  85. package/esm/common/use-filter/use-filter.d.ts +1 -0
  86. package/esm/common/use-filter/use-filter.d.ts.map +1 -1
  87. package/esm/common/use-filter/use-filter.js +2 -0
  88. package/esm/common/use-position-style/check-element-size.d.ts +10 -0
  89. package/esm/common/use-position-style/check-element-size.d.ts.map +1 -0
  90. package/esm/common/use-position-style/check-element-size.js +59 -0
  91. package/esm/common/use-position-style/index.d.ts.map +1 -1
  92. package/esm/common/use-position-style/index.js +5 -8
  93. package/esm/components/use-form/use-form-control/use-form-control.d.ts.map +1 -1
  94. package/esm/components/use-form/use-form-control/use-form-control.js +15 -2
  95. package/esm/components/use-form/use-form-control/use-form-control.type.d.ts +3 -0
  96. package/esm/components/use-form/use-form-control/use-form-control.type.d.ts.map +1 -1
  97. package/esm/components/use-form/use-form.d.ts +4 -4
  98. package/esm/components/use-form/use-form.d.ts.map +1 -1
  99. package/esm/components/use-form/use-form.js +38 -29
  100. package/esm/components/use-form/use-form.type.d.ts +1 -0
  101. package/esm/components/use-form/use-form.type.d.ts.map +1 -1
  102. package/esm/components/use-image/use-image.d.ts +2 -0
  103. package/esm/components/use-image/use-image.d.ts.map +1 -1
  104. package/esm/components/use-image/use-image.js +40 -2
  105. package/esm/components/use-popup/popup-context.d.ts +2 -0
  106. package/esm/components/use-popup/popup-context.d.ts.map +1 -1
  107. package/esm/components/use-popup/popup-context.js +2 -0
  108. package/esm/components/use-popup/use-popup.d.ts +4 -0
  109. package/esm/components/use-popup/use-popup.d.ts.map +1 -1
  110. package/esm/components/use-popup/use-popup.js +34 -14
  111. package/esm/components/use-table/index.d.ts +1 -1
  112. package/esm/components/use-table/index.d.ts.map +1 -1
  113. package/esm/components/use-table/use-table-group.d.ts.map +1 -1
  114. package/esm/components/use-table/use-table-group.js +3 -1
  115. package/esm/components/use-table/use-table-layout.d.ts.map +1 -1
  116. package/esm/components/use-table/use-table-layout.js +29 -2
  117. package/esm/components/use-table/use-table-row.d.ts +0 -1
  118. package/esm/components/use-table/use-table-row.d.ts.map +1 -1
  119. package/esm/components/use-table/use-table-row.js +0 -11
  120. package/esm/components/use-table/use-table-virtual.d.ts +2 -2
  121. package/esm/components/use-table/use-table-virtual.d.ts.map +1 -1
  122. package/esm/components/use-table/use-table-virtual.js +16 -14
  123. package/esm/components/use-table/use-table.type.d.ts +13 -10
  124. package/esm/components/use-table/use-table.type.d.ts.map +1 -1
  125. package/esm/components/use-tree/use-tree.d.ts.map +1 -1
  126. package/esm/components/use-tree/use-tree.js +26 -8
  127. package/esm/components/use-tree/use-tree.type.d.ts +1 -0
  128. package/esm/components/use-tree/use-tree.type.d.ts.map +1 -1
  129. package/esm/components/use-upload/use-upload.d.ts.map +1 -1
  130. package/esm/components/use-upload/use-upload.js +54 -34
  131. package/esm/components/use-upload/use-upload.type.d.ts +7 -0
  132. package/esm/components/use-upload/use-upload.type.d.ts.map +1 -1
  133. package/esm/index.d.ts +1 -1
  134. package/esm/index.d.ts.map +1 -1
  135. package/esm/index.js +1 -1
  136. package/esm/utils/highlight.d.ts +7 -0
  137. package/esm/utils/highlight.d.ts.map +1 -0
  138. package/esm/utils/highlight.js +59 -0
  139. package/esm/utils/index.d.ts +1 -0
  140. package/esm/utils/index.d.ts.map +1 -1
  141. package/esm/utils/index.js +1 -0
  142. package/esm/utils/string.d.ts +1 -0
  143. package/esm/utils/string.d.ts.map +1 -1
  144. package/esm/utils/string.js +12 -0
  145. package/package.json +1 -1
  146. package/cjs/common/use-memo/index.d.ts +0 -2
  147. package/cjs/common/use-memo/index.d.ts.map +0 -1
  148. package/cjs/common/use-memo/index.js +0 -20
  149. package/cjs/common/use-memo/use-memo.d.ts +0 -2
  150. package/cjs/common/use-memo/use-memo.d.ts.map +0 -1
  151. package/esm/common/use-memo/index.d.ts +0 -2
  152. package/esm/common/use-memo/index.d.ts.map +0 -1
  153. package/esm/common/use-memo/index.js +0 -2
  154. package/esm/common/use-memo/use-memo.d.ts +0 -2
  155. package/esm/common/use-memo/use-memo.d.ts.map +0 -1
@@ -43,6 +43,10 @@ var useImage = function useImage() {
43
43
  _React$useState2 = _slicedToArray(_React$useState, 2),
44
44
  status = _React$useState2[0],
45
45
  setStatus = _React$useState2[1];
46
+ var _React$useState3 = _react.default.useState({}),
47
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
48
+ imgCoverStyle = _React$useState4[0],
49
+ setImgCoverStyle = _React$useState4[1];
46
50
  var elementRef = _react.default.useRef(null);
47
51
  var getUrl = function getUrl(url) {
48
52
  var auto = 'autoSSL' in props ? autoSSL : config.autoSSL;
@@ -77,6 +81,35 @@ var useImage = function useImage() {
77
81
  };
78
82
  img.src = getUrl(alt);
79
83
  };
84
+ var handleCoverStyle = function handleCoverStyle(img) {
85
+ var container = elementRef === null || elementRef === void 0 ? void 0 : elementRef.current;
86
+ if (!container) return;
87
+
88
+ // 根据容器的宽高获取宽高比
89
+ var containerWidth = container.clientWidth;
90
+ var containerHeight = container.clientHeight;
91
+ var containerRatio = containerWidth / containerHeight;
92
+
93
+ // 根据图片的自然尺寸获取宽高比
94
+ var imageWidth = img.naturalWidth;
95
+ var imageHeight = img.naturalHeight;
96
+ var imageRatio = imageWidth / imageHeight;
97
+
98
+ // 判断宽高比,决定图片填充策略
99
+ if (imageRatio > containerRatio) {
100
+ // 图片更宽,宽度占满容器,高度自适应
101
+ setImgCoverStyle({
102
+ height: '100%',
103
+ width: 'auto'
104
+ });
105
+ } else {
106
+ // 图片更高,填满容器高度
107
+ setImgCoverStyle({
108
+ width: '100%',
109
+ height: 'auto'
110
+ });
111
+ }
112
+ };
80
113
  var markToRender = function markToRender() {
81
114
  if (!src) {
82
115
  handleAlt();
@@ -84,7 +117,10 @@ var useImage = function useImage() {
84
117
  }
85
118
  var img = new window.Image();
86
119
  img.onload = function () {
87
- return setStatus(SRC);
120
+ setStatus(SRC);
121
+ if (props.fit === 'fill') {
122
+ handleCoverStyle(img);
123
+ }
88
124
  };
89
125
  img.onerror = function (e) {
90
126
  return handleError(SRC, e);
@@ -113,7 +149,9 @@ var useImage = function useImage() {
113
149
  alt: alt,
114
150
  draggable: !noImgDrag
115
151
  });
116
- return _objectSpread({}, mergedEventHandlers);
152
+ return _objectSpread({
153
+ style: imgCoverStyle
154
+ }, mergedEventHandlers);
117
155
  };
118
156
  var getImageDivProps = function getImageDivProps() {
119
157
  var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -1,5 +1,7 @@
1
1
  import React from 'react';
2
2
  declare const context: React.Context<{
3
+ addParent: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
4
+ removeParent: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
3
5
  bindChild: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
4
6
  removeChild: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
5
7
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"popup-context.d.ts","sourceRoot":"","sources":["popup-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAO7C,QAAA,MAAM,OAAO;sBAJO,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;wBACxC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;EAGnB,CAAC;AAE9C,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"popup-context.d.ts","sourceRoot":"","sources":["popup-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAS7C,QAAA,MAAM,OAAO;sBANO,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;yBACvC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;sBAC7C,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;wBACxC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;EAGnB,CAAC;AAE9C,eAAe,OAAO,CAAC"}
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _react = require("react");
9
9
  var defaultContext = {
10
+ addParent: function addParent(_ref) {},
11
+ removeParent: function removeParent(_ref) {},
10
12
  bindChild: function bindChild(_ref) {},
11
13
  removeChild: function removeChild(_ref) {}
12
14
  };
@@ -39,10 +39,14 @@ declare const usePopup: (props: BasePopupProps) => {
39
39
  openPop: () => void;
40
40
  closePop: () => void;
41
41
  Provider: React.Provider<{
42
+ addParent: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
43
+ removeParent: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
42
44
  bindChild: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
43
45
  removeChild: (_ref: React.MutableRefObject<HTMLElement | null>) => void;
44
46
  }>;
45
47
  providerValue: {
48
+ addParent: (elRef: React.MutableRefObject<HTMLElement | null>) => void;
49
+ removeParent: (elRef: React.MutableRefObject<HTMLElement | null>) => void;
46
50
  bindChild: (elRef: React.MutableRefObject<HTMLElement | null>) => void;
47
51
  removeChild: (elRef: React.MutableRefObject<HTMLElement | null>) => void;
48
52
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-popup.d.ts","sourceRoot":"","sources":["use-popup.ts"],"names":[],"mappings":"AAAA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOhE,QAAA,MAAM,QAAQ,UAAW,cAAc;;;;;;0BA6HK;YAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;SAAE;0BAM9B;YAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;SAAE;;;;;qBA5B7B;YAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;;;2BA6ElD,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;6BAGxC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;;CAqBpE,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"use-popup.d.ts","sourceRoot":"","sources":["use-popup.ts"],"names":[],"mappings":"AAAA,OAAO,KAA4E,MAAM,OAAO,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOhE,QAAA,MAAM,QAAQ,UAAW,cAAc;;;;;;0BAkIK;YAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;SAAE;0BAM9B;YAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;SAAE;;;;;qBA5B7B;YAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;2BApFzC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;8BAOvC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;2BA2JxD,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;6BAMxC,MAAM,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;;CA8BlE,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -34,21 +34,32 @@ var usePopup = function usePopup(props) {
34
34
  setOpenState = _useState2[1];
35
35
  var _useContext = (0, _react.useContext)(_popupContext.default),
36
36
  bindChild = _useContext.bindChild,
37
- removeChild = _useContext.removeChild;
37
+ removeChild = _useContext.removeChild,
38
+ addParent = _useContext.addParent,
39
+ removeParent = _useContext.removeParent;
38
40
  var targetRef = (0, _react.useRef)(null);
39
41
  var popupRef = (0, _react.useRef)(null);
40
- (0, _react.useEffect)(function () {
41
- bindChild(popupRef);
42
- return function () {
43
- removeChild(popupRef);
44
- };
45
- }, []);
46
42
  var _useRef = (0, _react.useRef)({
47
43
  triggerTimer: null,
48
44
  // 记录所有的子popup 点击子 popup 不关闭弹窗
49
45
  chain: [targetRef, popupRef]
50
46
  }),
51
47
  context = _useRef.current;
48
+ var handleAddParent = function handleAddParent(elRef) {
49
+ context.chain.push(elRef);
50
+
51
+ // 继续向上添加当前的 popupRef 到父级
52
+ addParent(elRef);
53
+ };
54
+ var handleRemoveParent = function handleRemoveParent(elRef) {
55
+ var index = context.chain.findIndex(function (item) {
56
+ return item === elRef;
57
+ });
58
+ if (index > -1) {
59
+ context.chain.splice(index, 1);
60
+ removeParent(elRef);
61
+ }
62
+ };
52
63
  var open = openState;
53
64
  var changeOpen = function changeOpen(openIn, delay) {
54
65
  if (context.triggerTimer) clearTimeout(context.triggerTimer);
@@ -78,11 +89,6 @@ var usePopup = function usePopup(props) {
78
89
  updatePosition();
79
90
  }
80
91
  setOpenState(!!props.open);
81
-
82
- // 外部传了open时,需要正常的触发onCollapse;触发了onCollapse才能让组件内部的edit状态正确,否则可能会出现弹出层打开了但是用户却无法选择的情况
83
- if (props.open !== undefined) {
84
- changeOpen(!!props.open);
85
- }
86
92
  }, [props.open]);
87
93
 
88
94
  // const getPopUpHeight = () => {
@@ -187,8 +193,13 @@ var usePopup = function usePopup(props) {
187
193
  });
188
194
  var providerValue = (0, _react.useMemo)(function () {
189
195
  return {
196
+ addParent: handleAddParent,
197
+ removeParent: handleRemoveParent,
190
198
  bindChild: function bindChild(elRef) {
191
- context.chain.push(elRef);
199
+ if (elRef.current) {
200
+ addParent(elRef);
201
+ context.chain.push(elRef);
202
+ }
192
203
  },
193
204
  removeChild: function removeChild(elRef) {
194
205
  var index = context.chain.findIndex(function (item) {
@@ -196,10 +207,19 @@ var usePopup = function usePopup(props) {
196
207
  });
197
208
  if (index > -1) {
198
209
  context.chain.splice(index, 1);
210
+ removeParent(elRef);
199
211
  }
200
212
  }
201
213
  };
202
214
  }, []);
215
+ (0, _react.useLayoutEffect)(function () {
216
+ if (open) {
217
+ bindChild(popupRef);
218
+ }
219
+ return function () {
220
+ removeChild(popupRef);
221
+ };
222
+ }, [open]);
203
223
  return {
204
224
  open: open,
205
225
  position: position,
@@ -7,5 +7,5 @@ export { default as useTableRow } from './use-table-row';
7
7
  export { default as useTableExpand } from './use-table-expand';
8
8
  export { default as useTableTree } from './use-table-tree';
9
9
  export { default as useTableVirtual } from './use-table-virtual';
10
- export type { TableFormatColumn, TableColumnItem, TableHeadColumn, TableGroupColumn, TableSorterInfo, BaseTableProps, TableColumnFilter, TableFilterData, ShouldUpdate, } from './use-table.type';
10
+ export type { TableFormatColumn, TableColumnItem, TableHeadColumn, TableGroupColumn, TableSorterInfo, BaseTableProps, TableColumnFilter, TableFilterData, } from './use-table.type';
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEjE,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEjE,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,eAAe,GAChB,MAAM,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-table-group.d.ts","sourceRoot":"","sources":["use-table-group.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAoB,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxF,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,QAAA,MAAM,aAAa,UAAW,kBAAkB;;;CAsE/C,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"use-table-group.d.ts","sourceRoot":"","sources":["use-table-group.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAoB,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxF,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,QAAA,MAAM,aAAa,UAAW,kBAAkB;;;CAwE/C,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -33,6 +33,7 @@ var useTableGroup = function useTableGroup(props) {
33
33
  last.colSpan += colSpan;
34
34
  if (col.fixed) last.fixed = col.fixed;
35
35
  if (col.lastFixed) last.lastFixed = true;
36
+ if (col.groupProps) last.groupProps = col.groupProps;
36
37
  } else {
37
38
  var sub = [];
38
39
  colSpan = setColumns(sub, col, level + 1, index);
@@ -45,7 +46,8 @@ var useTableGroup = function useTableGroup(props) {
45
46
  fixed: col.fixed,
46
47
  firstFixed: col.firstFixed,
47
48
  index: index,
48
- columns: sub
49
+ columns: sub,
50
+ groupProps: col.groupProps
49
51
  };
50
52
  columns.push(groupCol);
51
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-table-layout.d.ts","sourceRoot":"","sources":["use-table-layout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAKlE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAerE,MAAM,WAAW,mBACf,SAAQ,IAAI,CACV,cAAc,CAAC,GAAG,CAAC,EACnB,MAAM,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,OAAO,CAC7E;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,QAAA,MAAM,cAAc,UAAW,mBAAmB;;;;;;;;;;;yBA+CX,MAAM,UAAU,MAAM;;;;;;;CA+O5D,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"use-table-layout.d.ts","sourceRoot":"","sources":["use-table-layout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAKlE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AA0CrE,MAAM,WAAW,mBACf,SAAQ,IAAI,CACV,cAAc,CAAC,GAAG,CAAC,EACnB,MAAM,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,OAAO,CAC7E;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,QAAA,MAAM,cAAc,UAAW,mBAAmB;;;;;;;;;;;yBA+CX,MAAM,UAAU,MAAM;;;;;;;CA8O5D,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -30,6 +30,34 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
30
30
  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; }
31
31
  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; } }
32
32
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
33
+ function getDecimalAndIntegerPart(num) {
34
+ if (!num) return [0, 0];
35
+ var str = num.toString();
36
+ var dotIndex = str.indexOf('.');
37
+ if (dotIndex === -1) return [parseInt(str), 0];
38
+ var integerPart = parseInt(str.slice(0, dotIndex));
39
+ var decimalPart = parseFloat("0.".concat(str.slice(dotIndex + 1)));
40
+ return [integerPart, decimalPart];
41
+ }
42
+
43
+ // 将所有的小数部分转移到最后一列
44
+ function shiftDecimalToLastColumn(cols) {
45
+ var decimalSum = 0;
46
+ cols.forEach(function (v, i) {
47
+ var _getDecimalAndInteger = getDecimalAndIntegerPart(v),
48
+ _getDecimalAndInteger2 = _slicedToArray(_getDecimalAndInteger, 2),
49
+ inter = _getDecimalAndInteger2[0],
50
+ decimal = _getDecimalAndInteger2[1];
51
+ if (decimal > 0) {
52
+ decimalSum += decimal;
53
+ cols[i] = inter;
54
+ }
55
+ });
56
+ if (decimalSum > 0) {
57
+ cols[cols.length - 1] = Number(cols[cols.length - 1]) + decimalSum;
58
+ }
59
+ return cols;
60
+ }
33
61
  var MIN_RESIZABLE_WIDTH = 20;
34
62
  function compareColumnWidth(curCols, preCols) {
35
63
  if (curCols.length !== preCols.length) return false;
@@ -151,7 +179,7 @@ var useTableLayout = function useTableLayout(props) {
151
179
  if (cols && cols.every(function (v) {
152
180
  return v === 0;
153
181
  })) return;
154
- setColgroup(cols);
182
+ setColgroup(shiftDecimalToLastColumn(cols));
155
183
  setAdjust(adjust);
156
184
  if (!adjust) {
157
185
  updateResizeFlag();
@@ -368,7 +396,6 @@ var useTableLayout = function useTableLayout(props) {
368
396
  width: tableWidth,
369
397
  shouldLastColAuto: props.columnResizable && !adjust,
370
398
  scrollWidth: scrollWidth,
371
- // maxScrollLeft: scrollWidth - context.clientWidth,
372
399
  resizeFlag: resizeFlag
373
400
  };
374
401
  };
@@ -24,7 +24,6 @@ export interface Row {
24
24
  declare const useTableRow: (props: TableRowProps) => {
25
25
  rowData: Row[][];
26
26
  handleCellHover: (rowIndex: number, colSpan?: any) => void;
27
- isCellHover: (rowIndex: number, colSpan?: any) => boolean;
28
27
  hoverIndex: Set<number>;
29
28
  rowSelectMergeStartData: any[];
30
29
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-table-row.d.ts","sourceRoot":"","sources":["use-table-row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKjD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtE,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AA4CD;;;;GAIG;AACH,QAAA,MAAM,WAAW,UAAW,aAAa;;gCASS,MAAM;4BASV,MAAM;;;CAiDnD,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"use-table-row.d.ts","sourceRoot":"","sources":["use-table-row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKjD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtE,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AA4CD;;;;GAIG;AACH,QAAA,MAAM,WAAW,UAAW,aAAa;;gCASS,MAAM;;;CAgDvD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -71,16 +71,6 @@ var useTableRow = function useTableRow(props) {
71
71
  }
72
72
  setHoverIndex(hoverIndex);
73
73
  });
74
- var isCellHover = (0, _usePersistFn.usePersistFn)(function (rowIndex) {
75
- var colSpan = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
76
- if (!props.hover) return false;
77
- var isHover = false;
78
- for (var i = 0; i < colSpan; i++) {
79
- isHover = hoverIndex.has(rowIndex + i);
80
- if (isHover) break;
81
- }
82
- return isHover;
83
- });
84
74
  var rowData = (0, _react.useMemo)(function () {
85
75
  var rows = [];
86
76
  context.rowSelectMergeStartData = [];
@@ -114,7 +104,6 @@ var useTableRow = function useTableRow(props) {
114
104
  return {
115
105
  rowData: rowData,
116
106
  handleCellHover: handleCellHover,
117
- isCellHover: isCellHover,
118
107
  hoverIndex: hoverIndex,
119
108
  rowSelectMergeStartData: context.rowSelectMergeStartData
120
109
  };
@@ -11,11 +11,12 @@ interface UseTableVirtualProps {
11
11
  isRtl?: boolean;
12
12
  columns: TableFormatColumn<any>[];
13
13
  colgroup: (number | string | undefined)[];
14
+ theadAndTfootHeight: number;
14
15
  }
15
16
  declare const useTableVirtual: (props: UseTableVirtualProps) => {
16
17
  scrollHeight: number;
17
18
  startIndex: number;
18
- innerTop: number;
19
+ translateStyle: string;
19
20
  data: any[];
20
21
  handleScroll: (info: {
21
22
  scrollLeft: number;
@@ -25,7 +26,6 @@ declare const useTableVirtual: (props: UseTableVirtualProps) => {
25
26
  fromDrag: boolean;
26
27
  }) => void;
27
28
  setRowHeight: (index: number, height: number) => void;
28
- getTranslate: (left?: number, top?: number) => string;
29
29
  scrollToIndex: (index: number, callback?: () => void) => void;
30
30
  scrollColumnByLeft: (targetLeft: number) => void;
31
31
  scrollColumnIntoView: (colKey: string | number) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"use-table-virtual.d.ts","sourceRoot":"","sources":["use-table-virtual.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAWrD,UAAU,oBAAoB;IAC5B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;CAC3C;AACD,QAAA,MAAM,eAAe,UAAW,oBAAoB;;;;;;oBA6LpC,MAAM;mBACP,MAAM;WACd,MAAM;gBACD,MAAM;kBACJ,OAAO;;0BAnGuB,MAAM,UAAU,MAAM;0BAjBtB,MAAM,QAAQ,MAAM;2BAuJnB,MAAM,aAAa,MAAM,IAAI;qCAoBnB,MAAM;mCAUR,MAAM,GAAG,MAAM;CAgGnE,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"use-table-virtual.d.ts","sourceRoot":"","sources":["use-table-virtual.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAWrD,UAAU,oBAAoB;IAC5B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AACD,QAAA,MAAM,eAAe,UAAW,oBAAoB;;;;;;oBAqLpC,MAAM;mBACP,MAAM;WACd,MAAM;gBACD,MAAM;kBACJ,OAAO;;0BAnGuB,MAAM,UAAU,MAAM;2BAsIrB,MAAM,aAAa,MAAM,IAAI;qCAoBnB,MAAM;mCAUR,MAAM,GAAG,MAAM;CA0GnE,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -123,20 +123,13 @@ var useTableVirtual = function useTableVirtual(props) {
123
123
  autoAddRows: 0
124
124
  }),
125
125
  context = _useRef.current;
126
- var getTranslate = (0, _usePersistFn.usePersistFn)(function (left, top) {
127
- var t = top === undefined ? innerTop + offsetY : top;
128
- if (t < 0) {
129
- t = 0;
130
- }
131
- return "translate3d(0, ".concat(0 - t, "px, 0)");
132
- });
133
126
  var getContentHeight = function getContentHeight(index) {
134
127
  if (props.disabled) return 0;
135
128
  var sum = 0;
136
129
  for (var i = 0; i <= index; i++) {
137
130
  sum += context.cachedHeight[i] || props.rowHeight;
138
131
  }
139
- return sum;
132
+ return sum + props.theadAndTfootHeight;
140
133
  };
141
134
  var setRowHeight = (0, _usePersistFn.usePersistFn)(function (index, height) {
142
135
  if (props.disabled) return;
@@ -229,7 +222,7 @@ var useTableVirtual = function useTableVirtual(props) {
229
222
  };
230
223
  setHeight(sumHeight);
231
224
  });
232
- var handleScroll = function handleScroll(info) {
225
+ var handleScroll = (0, _usePersistFn.usePersistFn)(function (info) {
233
226
  var height = info.height,
234
227
  y = info.y,
235
228
  fromDrag = info.fromDrag;
@@ -263,7 +256,7 @@ var useTableVirtual = function useTableVirtual(props) {
263
256
  } else {
264
257
  updateIndexAndTopFromTop(scrollTop);
265
258
  }
266
- };
259
+ });
267
260
  var scrollToIndex = (0, _usePersistFn.usePersistFn)(function (index, callback) {
268
261
  if (props.disabled) return;
269
262
  if (props.scrollRef.current) {
@@ -356,7 +349,7 @@ var useTableVirtual = function useTableVirtual(props) {
356
349
  (0, _react.useEffect)(function () {
357
350
  if (props.disabled) return;
358
351
  setHeight(getContentHeight(props.data.length - 1));
359
- }, [props.data.length]);
352
+ }, [props.data.length, props.theadAndTfootHeight]);
360
353
  (0, _react.useEffect)(function () {
361
354
  if (props.disabled) return;
362
355
  if (context.heightCallback) {
@@ -368,15 +361,24 @@ var useTableVirtual = function useTableVirtual(props) {
368
361
  }
369
362
  }, [scrollHeight]);
370
363
  var finalRowsInView = rowsInView + context.rowSpanRows + context.autoAddRows;
371
- var renderData = props.disabled ? props.data : _toConsumableArray(props.data).slice(startIndex, startIndex + finalRowsInView);
364
+ var renderData = (0, _react.useMemo)(function () {
365
+ if (props.disabled) return props.data;
366
+ return _toConsumableArray(props.data).slice(startIndex, startIndex + finalRowsInView);
367
+ }, [props.data, props.disabled, startIndex, finalRowsInView]);
368
+ var translateStyle = (0, _react.useMemo)(function () {
369
+ var t = innerTop + offsetY;
370
+ if (t < 0) {
371
+ t = 0;
372
+ }
373
+ return "translate3d(0, ".concat(0 - t, "px, 0)");
374
+ }, [innerTop]);
372
375
  return {
373
376
  scrollHeight: scrollHeight,
374
377
  startIndex: startIndex,
375
- innerTop: innerTop + offsetY,
378
+ translateStyle: translateStyle,
376
379
  data: renderData,
377
380
  handleScroll: handleScroll,
378
381
  setRowHeight: setRowHeight,
379
- getTranslate: getTranslate,
380
382
  scrollToIndex: scrollToIndex,
381
383
  scrollColumnByLeft: scrollColumnByLeft,
382
384
  scrollColumnIntoView: scrollColumnIntoView
@@ -257,6 +257,15 @@ export interface TableColumnItem<DataItem> {
257
257
  * @cn 表头分组,相邻的相同 group 会生成一个新的表头
258
258
  */
259
259
  group?: string | React.ReactNode | Array<string | React.ReactNode>;
260
+ /**
261
+ * @en The group of header column, the extra props
262
+ * @cn 表头分组的额外属性
263
+ * @version 3.7.0
264
+ */
265
+ groupProps?: {
266
+ className?: string;
267
+ style?: React.CSSProperties;
268
+ };
260
269
  /**
261
270
  * @en hide the column, only work on row-expand column
262
271
  * @cn 只针对行展开列有效,表示是否隐藏该列
@@ -373,17 +382,7 @@ export interface TableColumnItem<DataItem> {
373
382
  * @en Separately set a column not to be draggable
374
383
  */
375
384
  columnResizable?: false;
376
- /**
377
- * @cn 是否需要更新单元格,dependencies是外部更新依赖项
378
- * @en Whether the cell needs to be updated, the third parameter is the external dependency
379
- * @version 3.7.0
380
- */
381
- shouldUpdate?: ShouldUpdate<DataItem>;
382
385
  }
383
- export type ShouldUpdate<T> = ((prev: T, next: T) => boolean) | {
384
- update: (prev: T, next: T) => boolean;
385
- dependencies: any[];
386
- };
387
386
  export interface TableFormatColumn<DataItem> extends TableColumnItem<DataItem> {
388
387
  index: number;
389
388
  key: string | number;
@@ -400,6 +399,10 @@ export interface TableGroupColumn {
400
399
  columns: TableHeadColumn[];
401
400
  lastFixed?: boolean;
402
401
  index: number;
402
+ groupProps?: {
403
+ className?: string;
404
+ style?: React.CSSProperties;
405
+ };
403
406
  }
404
407
  export type TableHeadColumn = TableGroupColumn | TableFormatColumn<any>;
405
408
  //# sourceMappingURL=use-table.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-table.type.d.ts","sourceRoot":"","sources":["use-table.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,CAAC;AAC9C,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,CAAC;AAEnE,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB;AACD,MAAM,WAAW,cAAc,CAAC,IAAI;IAClC;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,YAAY,EAAE,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9F;;;OAGG;IACH,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC;IAEhC;;;;OAIG;IACH,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC;IAErF;;;;OAIG;IACH,UAAU,CAAC,EAAE,CACX,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,OAAO,EACnB,cAAc,EAAE,KAAK,CAAC,SAAS,EAC/B,UAAU,CAAC,EAAE,MAAM,IAAI,KACpB,KAAK,CAAC,SAAS,CAAC;IAErB;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;;OAIG;IACH,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACd;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,CACP,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,KAAK,GAAG,MAAM,EACtB,UAAU,EAAE,KAAK,CAAC,eAAe,CAAC,KAC/B,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC;IACvD;;;OAGG;IACH,YAAY,CAAC,EAAE,CACb,OAAO,EAAE,KAAK,GAAG,MAAM,EACvB,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,QAAQ,EAAE,EAClB,MAAM,EAAE,MAAM,KACX,IAAI,CAAC;IAEV;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;IAEpC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC;IAC5D;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B;;;;;;;;OAQG;IACH,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;CAChC;AACD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,gBAAgB,CAAC;IACxB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,gBAAgB,CAAC,QAAQ;IACxC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAC5E,KAAK,CAAC,SAAS,GACf,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB,CAAC,QAAQ;IAC7C;;;OAGG;IACH,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAE1B;;;;;;OAMG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC;IAEjD;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;IACX,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;CAC9B,CAAC;AACF,MAAM,WAAW,sBAAsB,CAAC,QAAQ,CAAE,SAAQ,qBAAqB,CAAC,QAAQ,CAAC;IACvF;;;OAGG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE;QACN;;;WAGG;QACH,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QAE7B;;;;WAIG;QACH,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,eAAe,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;QAEvF;;;WAGG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;QAEnB;;;WAGG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;QAEjB;;;WAGG;QACH,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;IAEF;;;;;;OAMG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC;CAClD;AAED,MAAM,WAAW,sBAAsB,CAAC,QAAQ,CAAE,SAAQ,qBAAqB,CAAC,QAAQ,CAAC;IACvF;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,IAClC,sBAAsB,CAAC,QAAQ,CAAC,GAChC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,QAAQ;IACvC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAEpC;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAEnD;;;OAGG;IACH,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAEhC;;;OAGG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC;IAEvB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IAEnE;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,CAAC;IAE7C;;;;;OAKG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAE1D;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,KAAK,OAAO,CAAC;IAEpE;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,EACH,CAAC,CACC,KAAK,EAAE,gBAAgB,KACpB,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,KAAK,MAAM,CAAC,GAAG,IAAI,CAAC,GACvE,MAAM,GACN,iBAAiB,CAAC;IAEtB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;IAEpC;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAErC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAE9E;;;OAGG;IACH,eAAe,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEtC;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;IAEvB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAE5B;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAEnD;;;OAGG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;IAExB;;;;OAIG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;CACvC;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,IACtB,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAC/B;IACE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC;IACtC,YAAY,EAAE,GAAG,EAAE,CAAC;CACrB,CAAC;AAEN,MAAM,WAAW,iBAAiB,CAAC,QAAQ,CAAE,SAAQ,eAAe,CAAC,QAAQ,CAAC;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"use-table.type.d.ts","sourceRoot":"","sources":["use-table.type.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-tree.d.ts","sourceRoot":"","sources":["use-tree.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,aAAa,EAKb,SAAS,EAGV,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiBjD,eAAO,MAAM,IAAI;IACf;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEJ,CAAC;AAEF,QAAA,MAAM,OAAO;;;;;CAurBZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"use-tree.d.ts","sourceRoot":"","sources":["use-tree.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,aAAa,EAKb,SAAS,EAGV,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiBjD,eAAO,MAAM,IAAI;IACf;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEJ,CAAC;AAEF,QAAA,MAAM,OAAO;;;;;CA4sBZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -132,9 +132,10 @@ var useTree = function useTree(props) {
132
132
  };
133
133
  }
134
134
  if (virtual) {
135
+ var _context$dataFlatStat;
135
136
  return {
136
137
  active: isActive,
137
- expanded: context.dataFlatStatusMap.get(id).expanded
138
+ expanded: !!((_context$dataFlatStat = context.dataFlatStatusMap.get(id)) !== null && _context$dataFlatStat !== void 0 && _context$dataFlatStat.expanded)
138
139
  };
139
140
  }
140
141
  return {
@@ -145,11 +146,12 @@ var useTree = function useTree(props) {
145
146
 
146
147
  // 注册节点
147
148
  var bindVirtualNode = function bindVirtualNode(id, update) {
149
+ var _context$dataFlatStat2;
148
150
  context.updateMap.set(id, update);
149
151
  var isActive = activeProp === id;
150
152
  return {
151
153
  active: isActive,
152
- expanded: context.dataFlatStatusMap.get(id).expanded
154
+ expanded: !!((_context$dataFlatStat2 = context.dataFlatStatusMap.get(id)) !== null && _context$dataFlatStat2 !== void 0 && _context$dataFlatStat2.expanded)
153
155
  };
154
156
  };
155
157
  var get = function get(id) {
@@ -521,7 +523,7 @@ var useTree = function useTree(props) {
521
523
  var appendChildrenExpanded = function appendChildrenExpanded(child, level, pid, insertData) {
522
524
  if (!child) return;
523
525
  child.forEach(function (item, i) {
524
- var _context$dataFlatStat;
526
+ var _context$dataFlatStat3;
525
527
  var childId = getKey(item, pid, i);
526
528
  var node = {
527
529
  id: childId,
@@ -530,7 +532,7 @@ var useTree = function useTree(props) {
530
532
  pid: pid
531
533
  };
532
534
  insertData.push(node);
533
- if ((_context$dataFlatStat = context.dataFlatStatusMap.get(childId)) !== null && _context$dataFlatStat !== void 0 && _context$dataFlatStat.expanded && item[childrenKey]) {
535
+ if ((_context$dataFlatStat3 = context.dataFlatStatusMap.get(childId)) !== null && _context$dataFlatStat3 !== void 0 && _context$dataFlatStat3.expanded && item[childrenKey]) {
534
536
  appendChildrenExpanded(item[childrenKey], level + 1, childId, insertData);
535
537
  }
536
538
  });
@@ -613,6 +615,16 @@ var useTree = function useTree(props) {
613
615
  var getFlatData = function getFlatData() {
614
616
  return context.dataFlat;
615
617
  };
618
+ var updateExpanded = (0, _usePersistFn.usePersistFn)(function (expanded) {
619
+ var tempExpandMap = new Set(expanded);
620
+ if (!expanded) return;
621
+ if (virtual) {
622
+ expandedFlat(expanded);
623
+ }
624
+ context.updateMap.forEach(function (update, id) {
625
+ update('expanded', tempExpandMap.has(id));
626
+ });
627
+ });
616
628
  (0, _react.useEffect)(function () {
617
629
  if (defaultExpandAll) {
618
630
  var nextExpanded = [];
@@ -628,8 +640,13 @@ var useTree = function useTree(props) {
628
640
  if (props.datum) return;
629
641
  if (!dataUpdate) return;
630
642
  setData(data);
643
+ var nextExpanded = props.expanded || props.defaultExpanded || [];
644
+ if (!(0, _utils.shallowEqual)(nextExpanded, expanded)) {
645
+ onExpand(nextExpanded);
646
+ updateExpanded(nextExpanded);
647
+ }
631
648
  updateInnerCheckStatus();
632
- }, [data]);
649
+ }, [props.data]);
633
650
  (0, _react.useEffect)(function () {
634
651
  if (props.datum) return;
635
652
  setValue(value);
@@ -654,16 +671,17 @@ var useTree = function useTree(props) {
654
671
  getChecked: getChecked,
655
672
  getKey: getKey,
656
673
  getFlatData: getFlatData,
674
+ getDataById: getDataById,
657
675
  getDataByValues: getDataByValues,
658
676
  setValue: setValue,
659
677
  setData: setData,
660
678
  isDisabled: isDisabled,
679
+ isUnMatched: isUnMatched,
661
680
  bindNode: bindNode,
662
681
  bindVirtualNode: bindVirtualNode,
663
- getDataById: getDataById,
664
682
  bindUpdate: bindUpdate,
665
683
  unBindUpdate: unBindUpdate,
666
- isUnMatched: isUnMatched,
684
+ updateExpanded: updateExpanded,
667
685
  childrenKey: childrenKey,
668
686
  data: data,
669
687
  dataFlat: dataFlat,
@@ -169,5 +169,6 @@ export interface TreeDatum<DataItem> {
169
169
  dataMap: Map<KeygenResult, DataItem>;
170
170
  valueMap: Map<KeygenResult, CheckedStatusType>;
171
171
  dataFlatStatusMap: Map<KeygenResult, FlatMapType>;
172
+ updateExpanded: (expanded?: KeygenResult[]) => void;
172
173
  }
173
174
  //# sourceMappingURL=use-tree.type.d.ts.map