@hi-ui/table 4.3.1 → 4.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/lib/cjs/BaseTable.js +136 -189
  3. package/lib/cjs/ColGroupContent.js +5 -28
  4. package/lib/cjs/SettingDrawer.js +76 -127
  5. package/lib/cjs/Table.js +107 -171
  6. package/lib/cjs/TableAdvancedFilter.js +49 -85
  7. package/lib/cjs/TableBody.js +33 -69
  8. package/lib/cjs/TableCell.js +56 -102
  9. package/lib/cjs/TableColumnMenu.js +39 -77
  10. package/lib/cjs/TableEmbedRow.js +11 -38
  11. package/lib/cjs/TableHeader.js +8 -33
  12. package/lib/cjs/TableRow.js +48 -88
  13. package/lib/cjs/TableSettingMenu.js +48 -94
  14. package/lib/cjs/TbodyContent.js +28 -56
  15. package/lib/cjs/TheadContent.js +20 -49
  16. package/lib/cjs/_virtual/index.js +0 -3
  17. package/lib/cjs/_virtual/index2.js +0 -3
  18. package/lib/cjs/_virtual/react-is.development.js +0 -3
  19. package/lib/cjs/_virtual/react-is.production.min.js +0 -3
  20. package/lib/cjs/context.js +0 -9
  21. package/lib/cjs/hooks/use-async-switch.js +13 -51
  22. package/lib/cjs/hooks/use-check.js +47 -77
  23. package/lib/cjs/hooks/use-col-hidden.js +16 -28
  24. package/lib/cjs/hooks/use-col-set.js +5 -18
  25. package/lib/cjs/hooks/use-col-sorter.js +18 -32
  26. package/lib/cjs/hooks/use-col-width.js +21 -57
  27. package/lib/cjs/hooks/use-colgroup.js +63 -85
  28. package/lib/cjs/hooks/use-drag.js +10 -31
  29. package/lib/cjs/hooks/use-embed-expand.js +23 -68
  30. package/lib/cjs/hooks/use-expand.js +32 -64
  31. package/lib/cjs/hooks/use-pagination.js +19 -50
  32. package/lib/cjs/hooks/use-queue.js +2 -14
  33. package/lib/cjs/icons/index.js +4 -21
  34. package/lib/cjs/index.js +0 -4
  35. package/lib/cjs/node_modules/classnames/index.js +2 -11
  36. package/lib/cjs/node_modules/perfect-scrollbar/dist/perfect-scrollbar.esm.js +31 -227
  37. package/lib/cjs/node_modules/rc-resize-observer/es/index.js +10 -68
  38. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +1 -17
  39. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/Dom/findDOMNode.js +1 -14
  40. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +1 -25
  41. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/warning.js +1 -5
  42. package/lib/cjs/node_modules/rc-util/es/Dom/canUseDom.js +0 -2
  43. package/lib/cjs/node_modules/rc-util/es/Dom/findDOMNode.js +1 -14
  44. package/lib/cjs/node_modules/rc-util/es/hooks/useLayoutEffect.js +2 -9
  45. package/lib/cjs/node_modules/rc-util/es/raf.js +0 -11
  46. package/lib/cjs/node_modules/rc-virtual-list/es/Filler.js +6 -25
  47. package/lib/cjs/node_modules/rc-virtual-list/es/Item.js +3 -14
  48. package/lib/cjs/node_modules/rc-virtual-list/es/List.js +103 -194
  49. package/lib/cjs/node_modules/rc-virtual-list/es/ScrollBar.js +16 -96
  50. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useChildren.js +2 -11
  51. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +8 -34
  52. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +0 -10
  53. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useHeights.js +6 -39
  54. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +0 -16
  55. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +4 -9
  56. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +3 -28
  57. package/lib/cjs/node_modules/rc-virtual-list/es/index.js +0 -2
  58. package/lib/cjs/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -9
  59. package/lib/cjs/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +0 -15
  60. package/lib/cjs/node_modules/rc-virtual-list/es/utils/isFirefox.js +0 -2
  61. package/lib/cjs/node_modules/react-is/cjs/react-is.development.js +3 -29
  62. package/lib/cjs/node_modules/react-is/cjs/react-is.production.min.js +19 -45
  63. package/lib/cjs/node_modules/react-is/index.js +0 -5
  64. package/lib/cjs/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +83 -248
  65. package/lib/cjs/packages/hooks/use-merge-refs/lib/esm/index.js +3 -14
  66. package/lib/cjs/packages/ui/scrollbar/lib/esm/Scrollbar.js +48 -86
  67. package/lib/cjs/packages/ui/scrollbar/lib/esm/styles/index.scss.js +1 -15
  68. package/lib/cjs/packages/ui/scrollbar/lib/esm/utils/index.js +0 -13
  69. package/lib/cjs/styles/index.scss.js +1 -4
  70. package/lib/cjs/use-table.js +268 -355
  71. package/lib/cjs/utils/index.js +11 -45
  72. package/lib/esm/BaseTable.js +117 -138
  73. package/lib/esm/ColGroupContent.js +3 -9
  74. package/lib/esm/SettingDrawer.js +64 -83
  75. package/lib/esm/Table.js +97 -124
  76. package/lib/esm/TableAdvancedFilter.js +37 -47
  77. package/lib/esm/TableBody.js +24 -34
  78. package/lib/esm/TableCell.js +48 -72
  79. package/lib/esm/TableColumnMenu.js +24 -38
  80. package/lib/esm/TableEmbedRow.js +8 -15
  81. package/lib/esm/TableHeader.js +5 -11
  82. package/lib/esm/TableRow.js +36 -51
  83. package/lib/esm/TableSettingMenu.js +33 -49
  84. package/lib/esm/TbodyContent.js +20 -27
  85. package/lib/esm/TheadContent.js +14 -21
  86. package/lib/esm/context.js +0 -4
  87. package/lib/esm/hooks/use-async-switch.js +9 -28
  88. package/lib/esm/hooks/use-check.js +42 -55
  89. package/lib/esm/hooks/use-col-hidden.js +16 -21
  90. package/lib/esm/hooks/use-col-set.js +5 -13
  91. package/lib/esm/hooks/use-col-sorter.js +18 -23
  92. package/lib/esm/hooks/use-col-width.js +14 -34
  93. package/lib/esm/hooks/use-colgroup.js +60 -66
  94. package/lib/esm/hooks/use-drag.js +9 -13
  95. package/lib/esm/hooks/use-embed-expand.js +20 -42
  96. package/lib/esm/hooks/use-expand.js +32 -56
  97. package/lib/esm/hooks/use-pagination.js +13 -25
  98. package/lib/esm/hooks/use-queue.js +2 -10
  99. package/lib/esm/node_modules/classnames/index.js +2 -9
  100. package/lib/esm/node_modules/perfect-scrollbar/dist/perfect-scrollbar.esm.js +31 -228
  101. package/lib/esm/node_modules/rc-resize-observer/es/index.js +3 -26
  102. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +0 -3
  103. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Dom/findDOMNode.js +1 -2
  104. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +0 -8
  105. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/warning.js +0 -5
  106. package/lib/esm/node_modules/rc-util/es/Dom/canUseDom.js +0 -1
  107. package/lib/esm/node_modules/rc-util/es/Dom/findDOMNode.js +1 -2
  108. package/lib/esm/node_modules/rc-util/es/hooks/useLayoutEffect.js +1 -0
  109. package/lib/esm/node_modules/rc-util/es/raf.js +0 -10
  110. package/lib/esm/node_modules/rc-virtual-list/es/Filler.js +4 -15
  111. package/lib/esm/node_modules/rc-virtual-list/es/Item.js +1 -3
  112. package/lib/esm/node_modules/rc-virtual-list/es/List.js +101 -174
  113. package/lib/esm/node_modules/rc-virtual-list/es/ScrollBar.js +14 -86
  114. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useChildren.js +0 -2
  115. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +6 -25
  116. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +0 -6
  117. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useHeights.js +4 -28
  118. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +0 -13
  119. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +4 -8
  120. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +1 -19
  121. package/lib/esm/node_modules/rc-virtual-list/es/index.js +1 -1
  122. package/lib/esm/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -8
  123. package/lib/esm/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +1 -12
  124. package/lib/esm/node_modules/rc-virtual-list/es/utils/isFirefox.js +0 -1
  125. package/lib/esm/node_modules/react-is/cjs/react-is.development.js +4 -27
  126. package/lib/esm/node_modules/react-is/cjs/react-is.production.min.js +20 -44
  127. package/lib/esm/node_modules/react-is/index.js +0 -1
  128. package/lib/esm/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +82 -248
  129. package/lib/esm/packages/hooks/use-merge-refs/lib/esm/index.js +3 -9
  130. package/lib/esm/packages/ui/scrollbar/lib/esm/Scrollbar.js +47 -64
  131. package/lib/esm/packages/ui/scrollbar/lib/esm/styles/index.scss.js +1 -3
  132. package/lib/esm/packages/ui/scrollbar/lib/esm/utils/index.js +0 -10
  133. package/lib/esm/styles/index.scss.js +1 -3
  134. package/lib/esm/use-table.js +261 -318
  135. package/lib/esm/utils/index.js +11 -41
  136. package/lib/types/BaseTable.d.ts +2 -2
  137. package/package.json +33 -33
@@ -9,52 +9,22 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var tslib = require('tslib');
19
-
20
13
  var React = require('react');
21
-
22
14
  var treeUtils = require('@hi-ui/tree-utils');
23
-
24
15
  var useUncontrolledState = require('@hi-ui/use-uncontrolled-state');
25
-
26
16
  var typeAssertion = require('@hi-ui/type-assertion');
27
-
28
17
  var useCheck = require('@hi-ui/use-check');
29
-
30
18
  var env = require('@hi-ui/env');
31
-
32
19
  var domUtils = require('@hi-ui/dom-utils');
33
-
34
20
  var useCache = require('@hi-ui/use-cache');
35
-
36
21
  var useLatest = require('@hi-ui/use-latest');
37
-
38
22
  var index = require('./utils/index.js');
39
-
40
23
  var useAsyncSwitch = require('./hooks/use-async-switch.js');
41
-
42
24
  var useExpand = require('./hooks/use-expand.js');
43
-
44
25
  var useColWidth = require('./hooks/use-col-width.js');
45
-
46
26
  var useColgroup = require('./hooks/use-colgroup.js');
47
-
48
27
  var useDrag = require('./hooks/use-drag.js');
49
-
50
- function _interopDefaultLegacy(e) {
51
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
52
- 'default': e
53
- };
54
- }
55
-
56
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
57
-
58
28
  var DEFAULT_COLUMNS = [];
59
29
  var DEFAULT_DATA = [];
60
30
  var DEFAULT_ERROR_ROW_KEYS = [];
@@ -62,75 +32,69 @@ var DEFAULT_HIGHLIGHTED_ROW_KEYS = [];
62
32
  var DEFAULT_HIGHLIGHTED_COL_KEYS = [];
63
33
  var DEFAULT_EXPAND_ROW_KEYS = [];
64
34
  var DEFAULT_FIXED_TO_COLUMN = {};
65
-
66
35
  var useTable = function useTable(_a) {
67
36
  var _a$data = _a.data,
68
- data = _a$data === void 0 ? DEFAULT_DATA : _a$data,
69
- _a$columns = _a.columns,
70
- columnsProp = _a$columns === void 0 ? DEFAULT_COLUMNS : _a$columns,
71
- _a$defaultFixedToColu = _a.defaultFixedToColumn,
72
- defaultFixedToColumn = _a$defaultFixedToColu === void 0 ? DEFAULT_FIXED_TO_COLUMN : _a$defaultFixedToColu,
73
- fixedToColumnProp = _a.fixedToColumn,
74
- onFixedToColumn = _a.onFixedToColumn,
75
- scrollWidth = _a.scrollWidth,
76
- _a$resizable = _a.resizable,
77
- resizable = _a$resizable === void 0 ? false : _a$resizable,
78
- _a$errorRowKeys = _a.errorRowKeys,
79
- errorRowKeys = _a$errorRowKeys === void 0 ? DEFAULT_ERROR_ROW_KEYS : _a$errorRowKeys,
80
- highlightedColKeysProp = _a.highlightedColKeys,
81
- highlightedRowKeysProp = _a.highlightedRowKeys,
82
- _a$showColHighlight = _a.showColHighlight,
83
- showColHighlight = _a$showColHighlight === void 0 ? false : _a$showColHighlight,
84
- _a$showRowHighlight = _a.showRowHighlight,
85
- showRowHighlight = _a$showRowHighlight === void 0 ? true : _a$showRowHighlight,
86
- _a$highlightRowOnDoub = _a.highlightRowOnDoubleClick,
87
- highlightRowOnDoubleClick = _a$highlightRowOnDoub === void 0 ? true : _a$highlightRowOnDoub,
88
- _a$defaultExpandedRow = _a.defaultExpandedRowKeys,
89
- defaultExpandedRowKeys = _a$defaultExpandedRow === void 0 ? DEFAULT_EXPAND_ROW_KEYS : _a$defaultExpandedRow,
90
- expandRowKeysProp = _a.expandedRowKeys,
91
- onExpand = _a.onExpand,
92
- _a$defaultExpandAll = _a.defaultExpandAll,
93
- defaultExpandAll = _a$defaultExpandAll === void 0 ? false : _a$defaultExpandAll,
94
- onLoadChildren = _a.onLoadChildren,
95
- maxHeight = _a.maxHeight,
96
- sticky = _a.sticky,
97
- _a$stickyTop = _a.stickyTop,
98
- stickyTop = _a$stickyTop === void 0 ? 0 : _a$stickyTop,
99
- _a$draggable = _a.draggable,
100
- draggable = _a$draggable === void 0 ? false : _a$draggable,
101
- onDropProp = _a.onDrop,
102
- onDropEnd = _a.onDropEnd,
103
- showColMenu = _a.showColMenu,
104
- rowSelection = _a.rowSelection,
105
- cellRender = _a.cellRender,
106
- footerRender = _a.footerRender,
107
- _a$fieldKey = _a.fieldKey,
108
- fieldKey = _a$fieldKey === void 0 ? 'key' : _a$fieldKey,
109
- virtual = _a.virtual,
110
- scrollbar = _a.scrollbar,
111
- rootProps = tslib.__rest(_a, ["data", "columns", "defaultFixedToColumn", "fixedToColumn", "onFixedToColumn", "scrollWidth", "resizable", "errorRowKeys", "highlightedColKeys", "highlightedRowKeys", "showColHighlight", "showRowHighlight", "highlightRowOnDoubleClick", "defaultExpandedRowKeys", "expandedRowKeys", "onExpand", "defaultExpandAll", "onLoadChildren", "maxHeight", "sticky", "stickyTop", "draggable", "onDragStart", "onDrop", "onDropEnd", "showColMenu", "rowSelection", "cellRender", "footerRender", "fieldKey", "virtual", "scrollbar"]);
37
+ data = _a$data === void 0 ? DEFAULT_DATA : _a$data,
38
+ _a$columns = _a.columns,
39
+ columnsProp = _a$columns === void 0 ? DEFAULT_COLUMNS : _a$columns,
40
+ _a$defaultFixedToColu = _a.defaultFixedToColumn,
41
+ defaultFixedToColumn = _a$defaultFixedToColu === void 0 ? DEFAULT_FIXED_TO_COLUMN : _a$defaultFixedToColu,
42
+ fixedToColumnProp = _a.fixedToColumn,
43
+ onFixedToColumn = _a.onFixedToColumn,
44
+ scrollWidth = _a.scrollWidth,
45
+ _a$resizable = _a.resizable,
46
+ resizable = _a$resizable === void 0 ? false : _a$resizable,
47
+ _a$errorRowKeys = _a.errorRowKeys,
48
+ errorRowKeys = _a$errorRowKeys === void 0 ? DEFAULT_ERROR_ROW_KEYS : _a$errorRowKeys,
49
+ highlightedColKeysProp = _a.highlightedColKeys,
50
+ highlightedRowKeysProp = _a.highlightedRowKeys,
51
+ _a$showColHighlight = _a.showColHighlight,
52
+ showColHighlight = _a$showColHighlight === void 0 ? false : _a$showColHighlight,
53
+ _a$showRowHighlight = _a.showRowHighlight,
54
+ showRowHighlight = _a$showRowHighlight === void 0 ? true : _a$showRowHighlight,
55
+ _a$highlightRowOnDoub = _a.highlightRowOnDoubleClick,
56
+ highlightRowOnDoubleClick = _a$highlightRowOnDoub === void 0 ? true : _a$highlightRowOnDoub,
57
+ _a$defaultExpandedRow = _a.defaultExpandedRowKeys,
58
+ defaultExpandedRowKeys = _a$defaultExpandedRow === void 0 ? DEFAULT_EXPAND_ROW_KEYS : _a$defaultExpandedRow,
59
+ expandRowKeysProp = _a.expandedRowKeys,
60
+ onExpand = _a.onExpand,
61
+ _a$defaultExpandAll = _a.defaultExpandAll,
62
+ defaultExpandAll = _a$defaultExpandAll === void 0 ? false : _a$defaultExpandAll,
63
+ onLoadChildren = _a.onLoadChildren,
64
+ maxHeight = _a.maxHeight,
65
+ sticky = _a.sticky,
66
+ _a$stickyTop = _a.stickyTop,
67
+ stickyTop = _a$stickyTop === void 0 ? 0 : _a$stickyTop,
68
+ _a$draggable = _a.draggable,
69
+ draggable = _a$draggable === void 0 ? false : _a$draggable,
70
+ onDropProp = _a.onDrop,
71
+ onDropEnd = _a.onDropEnd,
72
+ showColMenu = _a.showColMenu,
73
+ rowSelection = _a.rowSelection,
74
+ cellRender = _a.cellRender,
75
+ footerRender = _a.footerRender,
76
+ _a$fieldKey = _a.fieldKey,
77
+ fieldKey = _a$fieldKey === void 0 ? 'key' : _a$fieldKey,
78
+ virtual = _a.virtual,
79
+ scrollbar = _a.scrollbar,
80
+ rootProps = tslib.__rest(_a, ["data", "columns", "defaultFixedToColumn", "fixedToColumn", "onFixedToColumn", "scrollWidth", "resizable", "errorRowKeys", "highlightedColKeys", "highlightedRowKeys", "showColHighlight", "showRowHighlight", "highlightRowOnDoubleClick", "defaultExpandedRowKeys", "expandedRowKeys", "onExpand", "defaultExpandAll", "onLoadChildren", "maxHeight", "sticky", "stickyTop", "draggable", "onDragStart", "onDrop", "onDropEnd", "showColMenu", "rowSelection", "cellRender", "footerRender", "fieldKey", "virtual", "scrollbar"]);
112
81
  /**
113
82
  * 获取 key 字段值
114
83
  */
115
-
116
-
117
- var getRowKeyField = React__default["default"].useCallback(function (item) {
84
+ var getRowKeyField = React.useCallback(function (item) {
118
85
  var val = item[fieldKey];
119
86
  env.invariant(!typeAssertion.isNullish(val), 'Not found for the unique %s attribute in each row of data prop.', fieldKey);
120
87
  return val;
121
- }, [fieldKey]); // ********************** cache *********************** //
122
-
88
+ }, [fieldKey]);
89
+ // ********************** cache *********************** //
123
90
  var _useCache = useCache.useCache(data),
124
- cacheData = _useCache[0],
125
- setCacheData = _useCache[1];
126
-
91
+ cacheData = _useCache[0],
92
+ setCacheData = _useCache[1];
127
93
  var _useCache2 = useCache.useCache(columnsProp),
128
- columns = _useCache2[0];
94
+ columns = _useCache2[0];
129
95
  /**
130
96
  * 扁平化数据,支持树形 table
131
97
  */
132
-
133
-
134
98
  var flattedData = React.useMemo(function () {
135
99
  var clonedData = treeUtils.cloneTree(cacheData);
136
100
  return treeUtils.flattenTree(clonedData, function (node) {
@@ -138,92 +102,81 @@ var useTable = function useTable(_a) {
138
102
  id: getRowKeyField(node.raw)
139
103
  });
140
104
  });
141
- }, [cacheData, getRowKeyField]); // ********************** 树形表格 *********************** //
142
-
105
+ }, [cacheData, getRowKeyField]);
106
+ // ********************** 树形表格 *********************** //
143
107
  var _useExpand = useExpand.useExpand(flattedData, defaultExpandedRowKeys, expandRowKeysProp, onExpand, defaultExpandAll),
144
- transitionData = _useExpand[0],
145
- onExpandTreeRowsChange = _useExpand[1],
146
- isExpandTreeRows = _useExpand[2]; // 异步展开子树
147
-
148
-
108
+ transitionData = _useExpand[0],
109
+ onExpandTreeRowsChange = _useExpand[1],
110
+ isExpandTreeRows = _useExpand[2];
111
+ // 异步展开子树
149
112
  var _useAsyncSwitch = useAsyncSwitch.useAsyncSwitch({
150
- setCascaderData: setCacheData,
151
- onExpand: onExpandTreeRowsChange,
152
- onLoadChildren: onLoadChildren,
153
- fieldKey: fieldKey
154
- }),
155
- isLoadingTreeNodeId = _useAsyncSwitch[0],
156
- onTreeNodeSwitch = _useAsyncSwitch[1]; // ************************ 拖拽 ************************ //
157
-
158
-
113
+ setCascaderData: setCacheData,
114
+ onExpand: onExpandTreeRowsChange,
115
+ onLoadChildren: onLoadChildren,
116
+ fieldKey: fieldKey
117
+ }),
118
+ isLoadingTreeNodeId = _useAsyncSwitch[0],
119
+ onTreeNodeSwitch = _useAsyncSwitch[1];
120
+ // ************************ 拖拽 ************************ //
159
121
  var _useTableDrag = useDrag.useTableDrag({
160
- cacheData: cacheData,
161
- setCacheData: setCacheData,
162
- draggable: draggable,
163
- flattedData: flattedData,
164
- onDropEnd: onDropEnd,
165
- onDrop: onDropProp,
166
- fieldKey: fieldKey
167
- }),
168
- onDrop = _useTableDrag.onDrop,
169
- dragRowRef = _useTableDrag.dragRowRef; // ************************ colgroup ************************ //
170
-
171
-
122
+ cacheData: cacheData,
123
+ setCacheData: setCacheData,
124
+ draggable: draggable,
125
+ flattedData: flattedData,
126
+ onDropEnd: onDropEnd,
127
+ onDrop: onDropProp,
128
+ fieldKey: fieldKey
129
+ }),
130
+ onDrop = _useTableDrag.onDrop,
131
+ dragRowRef = _useTableDrag.dragRowRef;
132
+ // ************************ colgroup ************************ //
172
133
  var _useColumns = useColgroup.useColumns({
173
- columns: columns
174
- }),
175
- flattedColumns = _useColumns.flattedColumns,
176
- mergedColumns2 = _useColumns.mergedColumns,
177
- leafColumns = _useColumns.leafColumns; // ************************ 列高亮 ************************ //
178
-
134
+ columns: columns
135
+ }),
136
+ flattedColumns = _useColumns.flattedColumns,
137
+ mergedColumns2 = _useColumns.mergedColumns,
138
+ leafColumns = _useColumns.leafColumns;
139
+ // ************************ 列高亮 ************************ //
179
140
  /**
180
141
  * 控制列高亮,依据 column 中的 dataKey 控制
181
142
  */
182
-
183
-
184
143
  var _useUncontrolledState = useUncontrolledState.useUncontrolledState(DEFAULT_HIGHLIGHTED_COL_KEYS, highlightedColKeysProp),
185
- highlightedColKeys = _useUncontrolledState[0],
186
- trySetHighlightedColKeys = _useUncontrolledState[1];
187
-
144
+ highlightedColKeys = _useUncontrolledState[0],
145
+ trySetHighlightedColKeys = _useUncontrolledState[1];
188
146
  var _useCheck = useCheck.useCheck({
189
- checkedIds: highlightedColKeys,
190
- onCheck: trySetHighlightedColKeys,
191
- idFieldName: 'dataKey'
192
- }),
193
- onHighlightedColChange = _useCheck[0],
194
- isHighlightedCol = _useCheck[1];
147
+ checkedIds: highlightedColKeys,
148
+ onCheck: trySetHighlightedColKeys,
149
+ idFieldName: 'dataKey'
150
+ }),
151
+ onHighlightedColChange = _useCheck[0],
152
+ isHighlightedCol = _useCheck[1];
195
153
  /**
196
154
  * 设置列 hover 时高亮,依据 column 中的 dataKey 控制
197
155
  * 与 highlightedColKeys 互不影响
198
156
  */
199
-
200
-
201
157
  var _useState = React.useState(''),
202
- hoveredColKey = _useState[0],
203
- setHoveredColKey = _useState[1];
204
-
158
+ hoveredColKey = _useState[0],
159
+ setHoveredColKey = _useState[1];
205
160
  var _useSelect = useCheck.useSelect({
206
- disabled: !showColHighlight,
207
- selectedId: hoveredColKey,
208
- onSelect: setHoveredColKey
209
- }),
210
- onHoveredColChange = _useSelect[0],
211
- isHoveredHighlightCol = _useSelect[1]; // ************************ 列宽 resizable ************************ //
212
-
213
-
161
+ disabled: !showColHighlight,
162
+ selectedId: hoveredColKey,
163
+ onSelect: setHoveredColKey
164
+ }),
165
+ onHoveredColChange = _useSelect[0],
166
+ isHoveredHighlightCol = _useSelect[1];
167
+ // ************************ 列宽 resizable ************************ //
214
168
  var _useColWidth = useColWidth.useColWidth({
215
- data: data,
216
- columns: columns,
217
- resizable: resizable,
218
- virtual: virtual
219
- }),
220
- measureRowElementRef = _useColWidth.measureRowElementRef,
221
- getColgroupProps = _useColWidth.getColgroupProps,
222
- onColumnResizable = _useColWidth.onColumnResizable,
223
- colWidths = _useColWidth.colWidths,
224
- setHeaderTableElement = _useColWidth.setHeaderTableElement; // ************************ 列冻结 ************************ //
225
-
226
-
169
+ data: data,
170
+ columns: columns,
171
+ resizable: resizable,
172
+ virtual: virtual
173
+ }),
174
+ measureRowElementRef = _useColWidth.measureRowElementRef,
175
+ getColgroupProps = _useColWidth.getColgroupProps,
176
+ onColumnResizable = _useColWidth.onColumnResizable,
177
+ colWidths = _useColWidth.colWidths,
178
+ setHeaderTableElement = _useColWidth.setHeaderTableElement;
179
+ // ************************ 列冻结 ************************ //
227
180
  var bodyTableRef = React.useRef(null);
228
181
  var scrollBodyElementRef = React.useRef(null);
229
182
  /**
@@ -231,173 +184,155 @@ var useTable = function useTable(_a) {
231
184
  *
232
185
  * TODO: 支持 2 种模式:从左往右冻结到指定列、只抽离并冻结指定列
233
186
  */
234
-
235
187
  var _useUncontrolledState2 = useUncontrolledState.useUncontrolledState(defaultFixedToColumn, fixedToColumnProp, onFixedToColumn),
236
- fixedToColumn = _useUncontrolledState2[0],
237
- setFixedToColumn = _useUncontrolledState2[1];
238
-
188
+ fixedToColumn = _useUncontrolledState2[0],
189
+ setFixedToColumn = _useUncontrolledState2[1];
239
190
  var leftFreezeColumn = fixedToColumn.left;
240
191
  var rightFreezeColumn = fixedToColumn.right;
241
192
  var setLeftFreezeColumn = React.useCallback(function (columnKey) {
242
193
  setFixedToColumn(function (prev) {
243
194
  var next = Object.assign({}, prev);
244
195
  next.left = columnKey;
245
-
246
196
  if (next.right === columnKey) {
247
197
  next.right = '';
248
198
  }
249
-
250
199
  return next;
251
200
  });
252
201
  }, [setFixedToColumn]);
253
-
254
- var _React$useMemo = React__default["default"].useMemo(function () {
255
- if (!leftFreezeColumn && !rightFreezeColumn) {
256
- return {
257
- leftFrozenColKeys: [],
258
- rightFrozenColKeys: [],
259
- columns: mergedColumns2
260
- };
261
- }
262
-
263
- var leftFrozenColKey = leftFreezeColumn;
264
- var rightFrozenKey = rightFreezeColumn; // 获取左右冻结列的下标
265
- // 获取左右冻结列的下标
266
-
267
- var leftFrozenColIndex;
268
- var rightFrozenColIndex;
269
- mergedColumns2.some(function (column, index) {
270
- if (typeof leftFrozenColKey === 'string' && leftFrozenColKey === column.dataKey) {
271
- leftFrozenColIndex = index;
272
- }
273
-
274
- if (typeof rightFrozenKey === 'string' && rightFrozenKey === column.dataKey) {
275
- rightFrozenColIndex = index;
202
+ var _React$useMemo = React.useMemo(function () {
203
+ if (!leftFreezeColumn && !rightFreezeColumn) {
204
+ return {
205
+ leftFrozenColKeys: [],
206
+ rightFrozenColKeys: [],
207
+ columns: mergedColumns2
208
+ };
276
209
  }
277
-
278
- return leftFrozenColIndex !== undefined && rightFrozenColIndex !== undefined;
279
- }); // 保持内部循环引用关系,如果 cloneTree,将破坏关系
280
- // 保持内部循环引用关系,如果 cloneTree,将破坏关系
281
-
282
- var nextColumns = [].concat(mergedColumns2);
283
-
284
- if (typeof leftFrozenColIndex === 'number' || typeof rightFrozenColIndex === 'number' || scrollWidth) {
285
- var lastColumns = mergedColumns2;
286
- nextColumns = index.setColumnsDefaultWidth(nextColumns, scrollWidth ? scrollWidth / lastColumns.length : 100);
287
-
288
- if (colWidths) {
289
- // colWidths 记录的是最新的列宽,当它有值时,重置一下列宽,否则会导致冻结列动态调整宽度后定位不准
290
- nextColumns = nextColumns.map(function (item, index) {
291
- return Object.assign(Object.assign({}, item), {
292
- width: colWidths[index]
210
+ var leftFrozenColKey = leftFreezeColumn;
211
+ var rightFrozenKey = rightFreezeColumn;
212
+ // 获取左右冻结列的下标
213
+ // 获取左右冻结列的下标
214
+ var leftFrozenColIndex;
215
+ var rightFrozenColIndex;
216
+ mergedColumns2.some(function (column, index) {
217
+ if (typeof leftFrozenColKey === 'string' && leftFrozenColKey === column.dataKey) {
218
+ leftFrozenColIndex = index;
219
+ }
220
+ if (typeof rightFrozenKey === 'string' && rightFrozenKey === column.dataKey) {
221
+ rightFrozenColIndex = index;
222
+ }
223
+ return leftFrozenColIndex !== undefined && rightFrozenColIndex !== undefined;
224
+ });
225
+ // 保持内部循环引用关系,如果 cloneTree,将破坏关系
226
+ // 保持内部循环引用关系,如果 cloneTree,将破坏关系
227
+ var nextColumns = [].concat(mergedColumns2);
228
+ if (typeof leftFrozenColIndex === 'number' || typeof rightFrozenColIndex === 'number' || scrollWidth) {
229
+ var lastColumns = mergedColumns2;
230
+ nextColumns = index.setColumnsDefaultWidth(nextColumns, scrollWidth ? scrollWidth / lastColumns.length : 100);
231
+ if (colWidths) {
232
+ // colWidths 记录的是最新的列宽,当它有值时,重置一下列宽,否则会导致冻结列动态调整宽度后定位不准
233
+ nextColumns = nextColumns.map(function (item, index) {
234
+ return Object.assign(Object.assign({}, item), {
235
+ width: colWidths[index]
236
+ });
293
237
  });
238
+ }
239
+ }
240
+ var leftColumns = [];
241
+ // 左侧
242
+ // 左侧
243
+ if (typeof leftFrozenColIndex === 'number') {
244
+ // TODO: 支持嵌套冻结列
245
+ // const targetColumn = nextColumns[leftFrozenColIndex]
246
+ // const beforeColumns = nextColumns.filter((_, idx) => idx < leftFrozenColIndex!)
247
+ // // @ts-ignore
248
+ // const afterColumns = fFindNestedChildNodesByIndex(nextColumns, leftFrozenColIndex)
249
+ // // @ts-ignore
250
+ // leftColumns = beforeColumns.concat(targetColumn).concat(afterColumns)
251
+ leftColumns = nextColumns.filter(function (item, index) {
252
+ return index <= leftFrozenColIndex && item.depth === 0;
253
+ });
254
+ leftColumns.forEach(function (currentItem, index$1) {
255
+ var item = index.parseFixedColumns(currentItem, index$1, nextColumns, leftColumns, 'leftStickyWidth');
256
+ leftColumns[index$1] = item;
257
+ nextColumns[item.index] = item;
294
258
  });
295
259
  }
296
- }
297
-
298
- var leftColumns = []; // 左侧
299
- // 左侧
300
-
301
- if (typeof leftFrozenColIndex === 'number') {
302
- // TODO: 支持嵌套冻结列
303
- // const targetColumn = nextColumns[leftFrozenColIndex]
304
- // const beforeColumns = nextColumns.filter((_, idx) => idx < leftFrozenColIndex!)
305
- // // @ts-ignore
306
- // const afterColumns = fFindNestedChildNodesByIndex(nextColumns, leftFrozenColIndex)
307
- // // @ts-ignore
308
- // leftColumns = beforeColumns.concat(targetColumn).concat(afterColumns)
309
- leftColumns = nextColumns.filter(function (item, index) {
310
- return index <= leftFrozenColIndex && item.depth === 0;
311
- });
312
- leftColumns.forEach(function (currentItem, index$1) {
313
- var item = index.parseFixedColumns(currentItem, index$1, nextColumns, leftColumns, 'leftStickyWidth');
314
- leftColumns[index$1] = item;
315
- nextColumns[item.index] = item;
316
- });
317
- } // @TODO: resizable 和 列冻结宽兼容,统一宽度设置来源
318
- // const leftFixedColumnsWidth = colWidths.reduce(
319
- // (acc, width, index) => (acc += index <= leftFrozenColIndex! ? width : 0),
320
- // 0
321
- // )
322
- // @TODO: resizable 列冻结宽兼容,统一宽度设置来源
323
- // const leftFixedColumnsWidth = colWidths.reduce(
324
- // (acc, width, index) => (acc += index <= leftFrozenColIndex! ? width : 0),
325
- // 0
326
- // )
327
-
328
-
329
- var getLeafNodes = function getLeafNodes(columns) {
330
- return columns.reduce(function (acc, column) {
331
- return acc.concat(treeUtils.getLeafChildren(column));
332
- }, []);
333
- };
334
-
335
- var leftLeafNodes = getLeafNodes(leftColumns);
336
- var leftColIndex = leftLeafNodes.length;
337
- var leftFixedColumnsWidth = colWidths.reduce(function (acc, width, index) {
338
- return acc += index < leftColIndex ? width : 0;
339
- }, 0); // 右侧
340
- // 右侧
341
-
342
- var rightColumns = [];
343
-
344
- if (typeof rightFrozenColIndex === 'number') {
345
- var targetColumn = nextColumns[rightFrozenColIndex]; // const beforeColumns = getNodeAncestors(targetColumn)
346
- // const afterColumns = nextColumns.filter((_, idx) => idx > rightFrozenColIndex!)
347
- // // @ts-ignore
348
- // rightColumns = beforeColumns.concat(targetColumn).concat(afterColumns)
349
- // const beforeColumns = getNodeAncestors(targetColumn)
350
- // const afterColumns = nextColumns.filter((_, idx) => idx > rightFrozenColIndex!)
351
- // // @ts-ignore
352
- // rightColumns = beforeColumns.concat(targetColumn).concat(afterColumns)
353
-
354
- var root = treeUtils.getNodeRootParent(targetColumn);
355
- rightColumns = [root].concat(nextColumns.filter(function (item, index) {
356
- return index > rightFrozenColIndex && item.depth === 0;
357
- })).reverse();
358
- rightColumns.forEach(function (currentItem, index$1) {
359
- var item = index.parseFixedColumns(currentItem, index$1, nextColumns, rightColumns, 'rightStickyWidth');
360
- rightColumns[index$1] = item;
361
- nextColumns[item.index] = item;
362
- });
363
- }
364
-
365
- var rightLeafNodes = getLeafNodes(rightColumns);
366
- var rightColIndex = rightLeafNodes.length;
367
- var rightFixedColumnsWidth = [].concat(colWidths).reverse().reduce(function (acc, width, index) {
368
- return acc += index < rightColIndex ? width : 0;
369
- }, 0);
370
- return {
371
- leftFrozenColKeys: leftColumns,
372
- rightFrozenColKeys: rightColumns,
373
- columns: nextColumns,
374
- leftFixedColumnsWidth: leftFixedColumnsWidth,
375
- rightFixedColumnsWidth: rightFixedColumnsWidth
376
- };
377
- }, [mergedColumns2, scrollWidth, colWidths, leftFreezeColumn, rightFreezeColumn]),
378
- leftFrozenColKeys = _React$useMemo.leftFrozenColKeys,
379
- rightFrozenColKeys = _React$useMemo.rightFrozenColKeys,
380
- mergedColumns1 = _React$useMemo.columns,
381
- leftFixedColumnsWidth = _React$useMemo.leftFixedColumnsWidth,
382
- rightFixedColumnsWidth = _React$useMemo.rightFixedColumnsWidth;
383
-
260
+ // @TODO: resizable 和 列冻结宽兼容,统一宽度设置来源
261
+ // const leftFixedColumnsWidth = colWidths.reduce(
262
+ // (acc, width, index) => (acc += index <= leftFrozenColIndex! ? width : 0),
263
+ // 0
264
+ // )
265
+ // @TODO: resizable 列冻结宽兼容,统一宽度设置来源
266
+ // const leftFixedColumnsWidth = colWidths.reduce(
267
+ // (acc, width, index) => (acc += index <= leftFrozenColIndex! ? width : 0),
268
+ // 0
269
+ // )
270
+ var getLeafNodes = function getLeafNodes(columns) {
271
+ return columns.reduce(function (acc, column) {
272
+ return acc.concat(treeUtils.getLeafChildren(column));
273
+ }, []);
274
+ };
275
+ var leftLeafNodes = getLeafNodes(leftColumns);
276
+ var leftColIndex = leftLeafNodes.length;
277
+ var leftFixedColumnsWidth = colWidths.reduce(function (acc, width, index) {
278
+ return acc += index < leftColIndex ? width : 0;
279
+ }, 0);
280
+ // 右侧
281
+ // 右侧
282
+ var rightColumns = [];
283
+ if (typeof rightFrozenColIndex === 'number') {
284
+ var targetColumn = nextColumns[rightFrozenColIndex];
285
+ // const beforeColumns = getNodeAncestors(targetColumn)
286
+ // const afterColumns = nextColumns.filter((_, idx) => idx > rightFrozenColIndex!)
287
+ // // @ts-ignore
288
+ // rightColumns = beforeColumns.concat(targetColumn).concat(afterColumns)
289
+ // const beforeColumns = getNodeAncestors(targetColumn)
290
+ // const afterColumns = nextColumns.filter((_, idx) => idx > rightFrozenColIndex!)
291
+ // // @ts-ignore
292
+ // rightColumns = beforeColumns.concat(targetColumn).concat(afterColumns)
293
+ var root = treeUtils.getNodeRootParent(targetColumn);
294
+ rightColumns = [root].concat(nextColumns.filter(function (item, index) {
295
+ return index > rightFrozenColIndex && item.depth === 0;
296
+ })).reverse();
297
+ rightColumns.forEach(function (currentItem, index$1) {
298
+ var item = index.parseFixedColumns(currentItem, index$1, nextColumns, rightColumns, 'rightStickyWidth');
299
+ rightColumns[index$1] = item;
300
+ nextColumns[item.index] = item;
301
+ });
302
+ }
303
+ var rightLeafNodes = getLeafNodes(rightColumns);
304
+ var rightColIndex = rightLeafNodes.length;
305
+ var rightFixedColumnsWidth = [].concat(colWidths).reverse().reduce(function (acc, width, index) {
306
+ return acc += index < rightColIndex ? width : 0;
307
+ }, 0);
308
+ return {
309
+ leftFrozenColKeys: leftColumns,
310
+ rightFrozenColKeys: rightColumns,
311
+ columns: nextColumns,
312
+ leftFixedColumnsWidth: leftFixedColumnsWidth,
313
+ rightFixedColumnsWidth: rightFixedColumnsWidth
314
+ };
315
+ }, [mergedColumns2, scrollWidth, colWidths, leftFreezeColumn, rightFreezeColumn]),
316
+ leftFrozenColKeys = _React$useMemo.leftFrozenColKeys,
317
+ rightFrozenColKeys = _React$useMemo.rightFrozenColKeys,
318
+ mergedColumns1 = _React$useMemo.columns,
319
+ leftFixedColumnsWidth = _React$useMemo.leftFixedColumnsWidth,
320
+ rightFixedColumnsWidth = _React$useMemo.rightFixedColumnsWidth;
384
321
  var _useState2 = React.useState({
385
- scrollLeft: 0,
386
- scrollRight: 1
387
- }),
388
- scrollSize = _useState2[0],
389
- setScrollSize = _useState2[1];
390
-
322
+ scrollLeft: 0,
323
+ scrollRight: 1
324
+ }),
325
+ scrollSize = _useState2[0],
326
+ setScrollSize = _useState2[1];
391
327
  React.useEffect(function () {
392
328
  var _a, _b, _c, _d, _e, _f;
393
-
394
329
  if (leftFrozenColKeys.length > 0 || rightFrozenColKeys.length > 0) {
395
330
  // 计算冻结列的宽度
396
331
  // mutationObserver
397
332
  var tableWidth = (_c = (_b = (_a = bodyTableRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect) === null || _b === void 0 ? void 0 : _b.call(_a).width) !== null && _c !== void 0 ? _c : 0;
398
333
  var tableBodyWidth = (_f = (_e = (_d = scrollBodyElementRef.current) === null || _d === void 0 ? void 0 : _d.getBoundingClientRect) === null || _e === void 0 ? void 0 : _e.call(_d).width) !== null && _f !== void 0 ? _f : 0;
399
- var scrollRight = tableWidth - tableBodyWidth; // const scrollLeft = 0
400
-
334
+ var scrollRight = tableWidth - tableBodyWidth;
335
+ // const scrollLeft = 0
401
336
  setScrollSize(function (prev) {
402
337
  return {
403
338
  scrollLeft: prev.scrollLeft,
@@ -405,114 +340,100 @@ var useTable = function useTable(_a) {
405
340
  };
406
341
  });
407
342
  }
408
- }, [leftFrozenColKeys, rightFrozenColKeys]); // const canScroll = scrollSize.scrollRight > 0
343
+ }, [leftFrozenColKeys, rightFrozenColKeys]);
344
+ // const canScroll = scrollSize.scrollRight > 0
409
345
  // 实时计算
410
-
411
346
  var canScroll = bodyTableRef.current && scrollBodyElementRef.current ? scrollBodyElementRef.current.clientWidth < bodyTableRef.current.clientWidth : false;
412
347
  /**
413
348
  * 同步 双 table 左右滚动偏移
414
349
  */
415
-
416
- var syncScrollLeft = React__default["default"].useCallback(function (scrollLeft, syncTarget) {
350
+ var syncScrollLeft = React.useCallback(function (scrollLeft, syncTarget) {
417
351
  var scrollRight = scrollSize.scrollRight;
418
-
419
352
  if (syncTarget && syncTarget.scrollLeft !== scrollLeft) {
420
353
  syncTarget.scrollLeft = scrollLeft;
421
354
  }
422
-
423
355
  if (bodyTableRef && bodyTableRef.current && scrollBodyElementRef && scrollBodyElementRef.current && typeAssertion.isArrayNonEmpty(rightFrozenColKeys)) {
424
356
  var _bodyTableRef$current = bodyTableRef.current.getBoundingClientRect(),
425
- tableTefRight = _bodyTableRef$current.right;
426
-
357
+ tableTefRight = _bodyTableRef$current.right;
427
358
  var _scrollBodyElementRef = scrollBodyElementRef.current.getBoundingClientRect(),
428
- right = _scrollBodyElementRef.right;
429
-
359
+ right = _scrollBodyElementRef.right;
430
360
  scrollRight = tableTefRight - right;
431
361
  }
432
-
433
362
  setScrollSize({
434
363
  scrollLeft: scrollLeft,
435
364
  scrollRight: scrollRight
436
365
  });
437
366
  }, [rightFrozenColKeys, scrollSize]);
438
367
  var scrollHeaderElementRef = React.useRef(null);
439
- var onTableBodyScroll = React__default["default"].useCallback(function (evt) {
368
+ var onTableBodyScroll = React.useCallback(function (evt) {
440
369
  evt.stopPropagation();
441
-
442
370
  if (scrollBodyElementRef.current) {
443
371
  syncScrollLeft(scrollBodyElementRef.current.scrollLeft, scrollHeaderElementRef.current);
444
372
  }
445
- }, [syncScrollLeft]); // 1. 对于 sticky 的元素,触发滚轮滚动,需要模拟 onScroll 触发,比如 tableHeader 固定吸顶时
373
+ }, [syncScrollLeft]);
374
+ // 1. 对于 sticky 的元素,触发滚轮滚动,需要模拟 onScroll 触发,比如 tableHeader 固定吸顶时
446
375
  // 2. 同时不允许其出现滚动条
447
-
448
- var onTableBodyScrollMock = React__default["default"].useCallback(function (evt) {
376
+ var onTableBodyScrollMock = React.useCallback(function (evt) {
449
377
  if (!scrollHeaderElementRef.current) return;
450
378
  evt.stopPropagation();
451
379
  var deltaX = evt.deltaX;
452
380
  scrollHeaderElementRef.current.scrollLeft = scrollHeaderElementRef.current.scrollLeft + deltaX;
453
381
  syncScrollLeft(scrollHeaderElementRef.current.scrollLeft, scrollBodyElementRef.current);
454
- }, [syncScrollLeft]); // ************************ 行高亮 ************************ //
455
-
382
+ }, [syncScrollLeft]);
383
+ // ************************ 行高亮 ************************ //
456
384
  /**
457
385
  * 控制行高亮,依据 data 中的 key 控制
458
386
  */
459
-
460
387
  var _useUncontrolledState3 = useUncontrolledState.useUncontrolledState(DEFAULT_HIGHLIGHTED_ROW_KEYS, highlightedRowKeysProp),
461
- highlightedRowKeys = _useUncontrolledState3[0],
462
- trySetHighlightedRowKeys = _useUncontrolledState3[1];
463
-
388
+ highlightedRowKeys = _useUncontrolledState3[0],
389
+ trySetHighlightedRowKeys = _useUncontrolledState3[1];
464
390
  var _useCheck2 = useCheck.useCheck({
465
- disabled: !highlightRowOnDoubleClick,
466
- checkedIds: highlightedRowKeys,
467
- onCheck: trySetHighlightedRowKeys
468
- }),
469
- onHighlightedRowChange = _useCheck2[0],
470
- isHighlightedRow = _useCheck2[1];
471
-
391
+ disabled: !highlightRowOnDoubleClick,
392
+ checkedIds: highlightedRowKeys,
393
+ onCheck: trySetHighlightedRowKeys
394
+ }),
395
+ onHighlightedRowChange = _useCheck2[0],
396
+ isHighlightedRow = _useCheck2[1];
472
397
  var isErrorRow = React.useCallback(function (key) {
473
398
  return errorRowKeys.includes(key);
474
- }, [errorRowKeys]); // 末级 column
475
-
476
- var flattedColumnsWithoutChildren = React__default["default"].useMemo(function () {
399
+ }, [errorRowKeys]);
400
+ // 末级 column
401
+ var flattedColumnsWithoutChildren = React.useMemo(function () {
477
402
  return mergedColumns1.filter(function (col) {
478
403
  return !typeAssertion.isArrayNonEmpty(col.children);
479
404
  });
480
405
  }, [mergedColumns1]);
481
- var groupedColumns = React__default["default"].useMemo(function () {
406
+ var groupedColumns = React.useMemo(function () {
482
407
  return mergedColumns1.reduce(function (acc, cur) {
483
408
  var depth = cur.depth;
484
-
485
409
  if (!acc[depth]) {
486
410
  acc[depth] = [];
487
411
  }
488
-
489
412
  acc[depth].push(cur);
490
413
  return acc;
491
414
  }, []);
492
415
  }, [mergedColumns1]);
493
416
  var getStickyColProps = useLatest.useLatestCallback(function (column) {
494
417
  var rightStickyWidth = column.rightStickyWidth,
495
- leftStickyWidth = column.leftStickyWidth,
496
- align = column.align;
418
+ leftStickyWidth = column.leftStickyWidth,
419
+ align = column.align;
497
420
  var sticky = canScroll && (typeof rightStickyWidth !== 'undefined' || typeof leftStickyWidth !== 'undefined');
498
421
  var style = {
499
422
  textAlign: align
500
423
  };
501
-
502
424
  if (sticky) {
503
425
  style.position = 'sticky';
504
426
  style.right = rightStickyWidth + 'px';
505
- style.left = leftStickyWidth + 'px'; // the value is same with v3
506
-
427
+ style.left = leftStickyWidth + 'px';
428
+ // the value is same with v3
507
429
  style.zIndex = 5;
508
430
  }
509
-
510
431
  return {
511
432
  style: style,
512
433
  'data-sticky': domUtils.setAttrStatus(sticky)
513
434
  };
514
435
  });
515
- var getTableHeaderProps = React__default["default"].useCallback(function () {
436
+ var getTableHeaderProps = React.useCallback(function () {
516
437
  var style = {
517
438
  position: sticky ? 'sticky' : 'relative',
518
439
  top: sticky ? stickyTop : undefined,
@@ -531,29 +452,23 @@ var useTable = function useTable(_a) {
531
452
  return row.children && row.children.length || onLoadChildren && !row.isLeaf;
532
453
  }) : false;
533
454
  }, [data, onLoadChildren]);
534
-
535
455
  var _useState3 = React.useState(null),
536
- activeSorterColumn = _useState3[0],
537
- setActiveSorterColumn = _useState3[1];
538
-
456
+ activeSorterColumn = _useState3[0],
457
+ setActiveSorterColumn = _useState3[1];
539
458
  var _useState4 = React.useState(null),
540
- activeSorterType = _useState4[0],
541
- setActiveSorterType = _useState4[1]; //* *************** 根据排序列处理数据 ************** *//
542
-
543
-
459
+ activeSorterType = _useState4[0],
460
+ setActiveSorterType = _useState4[1];
461
+ //* *************** 根据排序列处理数据 ************** *//
544
462
  var showData = React.useMemo(function () {
545
463
  var _a;
546
-
547
464
  var _data = [].concat(transitionData);
548
-
549
465
  if (activeSorterColumn) {
550
466
  var sorter = (_a = columns.filter(function (d) {
551
467
  return d.dataKey === activeSorterColumn;
552
468
  })[0]) === null || _a === void 0 ? void 0 : _a.sorter;
553
-
554
469
  if (sorter) {
555
- activeSorterType === 'ascend' ? _data.sort(sorter) : _data.sort(sorter).reverse(); // 平铺的树形结构排序
556
-
470
+ activeSorterType === 'ascend' ? _data.sort(sorter) : _data.sort(sorter).reverse();
471
+ // 平铺的树形结构排序
557
472
  if (_data.some(function (d) {
558
473
  return d.depth !== 0;
559
474
  })) {
@@ -561,7 +476,6 @@ var useTable = function useTable(_a) {
561
476
  }
562
477
  }
563
478
  }
564
-
565
479
  return _data;
566
480
  }, [activeSorterColumn, activeSorterType, transitionData, columns]);
567
481
  return Object.assign(Object.assign({
@@ -645,5 +559,4 @@ var useTable = function useTable(_a) {
645
559
  scrollbar: scrollbar
646
560
  });
647
561
  };
648
-
649
562
  exports.useTable = useTable;