@kdcloudjs/table 1.2.1-canary.6 → 1.2.2-canary.3

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 (288) hide show
  1. package/LICENSE +568 -568
  2. package/README.md +111 -111
  3. package/dist/@kdcloudjs/table.css +1 -1
  4. package/dist/@kdcloudjs/table.js +5480 -6087
  5. package/dist/@kdcloudjs/table.js.map +1 -1
  6. package/dist/@kdcloudjs/table.min.css +1 -1
  7. package/dist/@kdcloudjs/table.min.js +18 -16
  8. package/dist/@kdcloudjs/table.min.js.map +1 -1
  9. package/dist/kd-ui-complete.less +777 -777
  10. package/es/_utils/arrayUtil.js +0 -3
  11. package/es/_utils/devwarning.js +0 -1
  12. package/es/_utils/formatUtil.js +36 -101
  13. package/es/_utils/hooks.js +21 -45
  14. package/es/_utils/index.js +0 -2
  15. package/es/_utils/numberUtil.js +32 -55
  16. package/es/_utils/omit.js +0 -2
  17. package/es/_utils/type.js +0 -2
  18. package/es/_utils/usePopper.js +81 -144
  19. package/es/config-provider/compDefaultProps.js +0 -1
  20. package/es/config-provider/configProvider.js +2 -7
  21. package/es/config-provider/defaultConfig.js +0 -1
  22. package/es/index.js +0 -2
  23. package/es/locale/locale.js +11 -50
  24. package/es/style/color/colors.less +1 -1
  25. package/es/style/core/index.less +1 -1
  26. package/es/style/core/motion/other.less +27 -27
  27. package/es/style/core/motion/slide.less +53 -53
  28. package/es/style/core/motion.less +1 -1
  29. package/es/style/core/reset.less +185 -185
  30. package/es/style/index.less +1 -1
  31. package/es/style/mixins/index.less +18 -18
  32. package/es/style/mixins/overlay.less +21 -21
  33. package/es/style/mixins/reset.less +12 -12
  34. package/es/style/themes/default.less +445 -445
  35. package/es/table/base/calculations.js +25 -75
  36. package/es/table/base/colgroup.js +0 -1
  37. package/es/table/base/empty.js +6 -6
  38. package/es/table/base/globalStyleComponent.d.ts +4 -0
  39. package/es/table/base/globalStyleComponent.js +24 -0
  40. package/es/table/base/header.js +21 -76
  41. package/es/table/base/helpers/SpanManager.js +4 -11
  42. package/es/table/base/helpers/TableDOMUtils.js +9 -34
  43. package/es/table/base/helpers/__test__/SpanManager.test.js +2 -2
  44. package/es/table/base/helpers/__test__/TableDOMUtils.test.js +0 -1
  45. package/es/table/base/helpers/getRichVisibleRectsStream.js +13 -45
  46. package/es/table/base/helpers/rowHeightManager.js +0 -28
  47. package/es/table/base/html-table.js +17 -39
  48. package/es/table/base/loading.js +8 -10
  49. package/es/table/base/renderTemplates.js +42 -60
  50. package/es/table/base/styles.d.ts +10 -0
  51. package/es/table/base/styles.js +17 -16
  52. package/es/table/base/table.js +113 -201
  53. package/es/table/base/utils.js +17 -57
  54. package/es/table/common-views.js +0 -7
  55. package/es/table/interfaces.d.ts +38 -0
  56. package/es/table/internals.js +0 -13
  57. package/es/table/pipeline/const.d.ts +3 -0
  58. package/es/table/pipeline/const.js +3 -0
  59. package/es/table/pipeline/features/autoFill.js +11 -40
  60. package/es/table/pipeline/features/autoRowSpan.js +1 -14
  61. package/es/table/pipeline/features/colGroupExtendable.js +4 -19
  62. package/es/table/pipeline/features/columnDrag.js +41 -97
  63. package/es/table/pipeline/features/columnFilter.js +12 -51
  64. package/es/table/pipeline/features/columnHover.js +1 -7
  65. package/es/table/pipeline/features/columnRangeHover.js +1 -8
  66. package/es/table/pipeline/features/columnResizeWidth.js +13 -39
  67. package/es/table/pipeline/features/contextMenu.js +22 -95
  68. package/es/table/pipeline/features/featureApi/RowDragApi.d.ts +15 -0
  69. package/es/table/pipeline/features/featureApi/RowDragApi.js +66 -0
  70. package/es/table/pipeline/features/featureApi/utils.d.ts +2 -0
  71. package/es/table/pipeline/features/featureApi/utils.js +10 -0
  72. package/es/table/pipeline/features/filter/DefaultFilterContent.js +14 -30
  73. package/es/table/pipeline/features/filter/DefaultFilterIcon.js +1 -1
  74. package/es/table/pipeline/features/filter/Filter.js +27 -51
  75. package/es/table/pipeline/features/filter/FilterPanel.js +11 -25
  76. package/es/table/pipeline/features/filter/util.js +0 -4
  77. package/es/table/pipeline/features/footerDataSource.js +0 -3
  78. package/es/table/pipeline/features/mergeCellHover.js +0 -1
  79. package/es/table/pipeline/features/multiSelect.js +15 -57
  80. package/es/table/pipeline/features/rangeSelection.js +73 -152
  81. package/es/table/pipeline/features/rowDetail.js +4 -43
  82. package/es/table/pipeline/features/rowDrag.d.ts +10 -12
  83. package/es/table/pipeline/features/rowDrag.js +491 -236
  84. package/es/table/pipeline/features/rowGrouping.js +4 -37
  85. package/es/table/pipeline/features/singleSelect.js +0 -24
  86. package/es/table/pipeline/features/sort.js +38 -96
  87. package/es/table/pipeline/features/tips.js +4 -10
  88. package/es/table/pipeline/features/treeMode.d.ts +1 -0
  89. package/es/table/pipeline/features/treeMode.js +38 -57
  90. package/es/table/pipeline/features/treeSelect.js +2 -28
  91. package/es/table/pipeline/pipeline.d.ts +3 -0
  92. package/es/table/pipeline/pipeline.js +35 -54
  93. package/es/table/pivot/cross-table/buildCrossTable.js +21 -72
  94. package/es/table/pivot/cross-table/cross-table.js +23 -31
  95. package/es/table/pivot/cross-tree-table/buildCrossTreeTable.js +22 -57
  96. package/es/table/pivot/cross-tree-table/cross-tree-table.js +36 -61
  97. package/es/table/pivot/pivot-utils/buildDrillTree.js +10 -23
  98. package/es/table/pivot/pivot-utils/builders.js +34 -74
  99. package/es/table/pivot/pivot-utils/convert-utils.js +16 -42
  100. package/es/table/pivot/pivot-utils/simpleEncode.js +0 -1
  101. package/es/table/style/index.less +1 -1
  102. package/es/table/transforms/autoRowSpan.js +1 -15
  103. package/es/table/transforms/autoWidth.js +13 -35
  104. package/es/table/transforms/buildTree.js +1 -2
  105. package/es/table/transforms/columnHover.js +9 -15
  106. package/es/table/transforms/columnRangeHover.js +12 -19
  107. package/es/table/transforms/columnResize.js +18 -42
  108. package/es/table/transforms/flatten.js +0 -3
  109. package/es/table/transforms/orderField.js +0 -3
  110. package/es/table/transforms/sort.js +42 -101
  111. package/es/table/transforms/tips.js +5 -10
  112. package/es/table/transforms/treeMode.js +36 -77
  113. package/es/table/transforms/visible.js +0 -2
  114. package/es/table/use/useResizeObserver.js +1 -4
  115. package/es/table/utils/applyTransforms.js +0 -1
  116. package/es/table/utils/browserType.js +12 -19
  117. package/es/table/utils/buildTree.js +7 -22
  118. package/es/table/utils/collectNodes.js +4 -13
  119. package/es/table/utils/console.js +0 -14
  120. package/es/table/utils/copyToClipboard.js +0 -4
  121. package/es/table/utils/element.js +14 -41
  122. package/es/table/utils/exportTableAsExcel.js +7 -43
  123. package/es/table/utils/getTreeDepth.js +4 -12
  124. package/es/table/utils/groupBy.js +4 -13
  125. package/es/table/utils/layeredFilter.js +0 -4
  126. package/es/table/utils/layeredSort.js +0 -5
  127. package/es/table/utils/makeRecursiveMapper.js +4 -15
  128. package/es/table/utils/mergeCellProps.js +6 -14
  129. package/es/table/utils/others.js +6 -19
  130. package/es/table/utils/proto.js +2 -30
  131. package/es/table/utils/smartCompare.js +4 -12
  132. package/es/table/utils/traverseColumn.js +5 -18
  133. package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.js +8 -30
  134. package/es/table/utils/tree-data-helpers/TreeDataHelper.js +19 -74
  135. package/es/table/utils/uiDegrade.js +0 -5
  136. package/lib/_utils/arrayUtil.js +2 -8
  137. package/lib/_utils/devwarning.js +0 -5
  138. package/lib/_utils/formatUtil.js +36 -105
  139. package/lib/_utils/hooks.js +21 -56
  140. package/lib/_utils/index.js +2 -9
  141. package/lib/_utils/numberUtil.js +32 -63
  142. package/lib/_utils/omit.js +0 -5
  143. package/lib/_utils/react-children.js +0 -5
  144. package/lib/_utils/type.js +3 -11
  145. package/lib/_utils/usePopper.js +86 -173
  146. package/lib/config-provider/ConfigContext.js +2 -6
  147. package/lib/config-provider/compDefaultProps.js +1 -3
  148. package/lib/config-provider/configProvider.js +6 -22
  149. package/lib/config-provider/defaultConfig.js +1 -7
  150. package/lib/config-provider/index.js +1 -8
  151. package/lib/index.js +2 -8
  152. package/lib/locale/index.js +3 -11
  153. package/lib/locale/locale.js +15 -71
  154. package/lib/locale/zh-CN.js +1 -2
  155. package/lib/style/color/colors.less +1 -1
  156. package/lib/style/components.less +1 -1
  157. package/lib/style/core/index.less +1 -1
  158. package/lib/style/core/motion/other.less +27 -27
  159. package/lib/style/core/motion/slide.less +53 -53
  160. package/lib/style/core/motion.less +1 -1
  161. package/lib/style/core/reset.less +185 -185
  162. package/lib/style/index.less +1 -1
  163. package/lib/style/mixins/index.less +18 -18
  164. package/lib/style/mixins/overlay.less +21 -21
  165. package/lib/style/mixins/reset.less +12 -12
  166. package/lib/style/themes/default.less +445 -445
  167. package/lib/table/base/calculations.js +25 -86
  168. package/lib/table/base/colgroup.js +0 -5
  169. package/lib/table/base/empty.js +8 -20
  170. package/lib/table/base/globalStyleComponent.d.ts +4 -0
  171. package/lib/table/base/globalStyleComponent.js +35 -0
  172. package/lib/table/base/header.js +21 -86
  173. package/lib/table/base/helpers/SpanManager.js +6 -16
  174. package/lib/table/base/helpers/TableDOMUtils.js +9 -37
  175. package/lib/table/base/helpers/__test__/SpanManager.test.js +2 -4
  176. package/lib/table/base/helpers/__test__/TableDOMUtils.test.js +0 -5
  177. package/lib/table/base/helpers/__test__/rowHeightManager.test.js +0 -1
  178. package/lib/table/base/helpers/getRichVisibleRectsStream.js +15 -65
  179. package/lib/table/base/helpers/rowHeightManager.js +0 -33
  180. package/lib/table/base/html-table.js +17 -49
  181. package/lib/table/base/index.js +0 -2
  182. package/lib/table/base/loading.js +8 -14
  183. package/lib/table/base/renderTemplates.js +45 -76
  184. package/lib/table/base/styles.d.ts +10 -0
  185. package/lib/table/base/styles.js +24 -42
  186. package/lib/table/base/table.js +125 -245
  187. package/lib/table/base/utils.js +27 -109
  188. package/lib/table/common-views.js +4 -24
  189. package/lib/table/index.js +0 -13
  190. package/lib/table/interfaces.d.ts +38 -0
  191. package/lib/table/internals.js +2 -17
  192. package/lib/table/pipeline/const.d.ts +3 -0
  193. package/lib/table/pipeline/const.js +9 -0
  194. package/lib/table/pipeline/features/autoFill.js +14 -53
  195. package/lib/table/pipeline/features/autoRowSpan.js +1 -19
  196. package/lib/table/pipeline/features/buildTree.js +0 -2
  197. package/lib/table/pipeline/features/colGroupExtendable.js +6 -35
  198. package/lib/table/pipeline/features/columnDrag.js +41 -103
  199. package/lib/table/pipeline/features/columnFilter.js +12 -65
  200. package/lib/table/pipeline/features/columnHover.js +1 -11
  201. package/lib/table/pipeline/features/columnRangeHover.js +1 -13
  202. package/lib/table/pipeline/features/columnResizeWidth.js +18 -63
  203. package/lib/table/pipeline/features/contextMenu.js +24 -121
  204. package/lib/table/pipeline/features/featureApi/RowDragApi.d.ts +15 -0
  205. package/lib/table/pipeline/features/featureApi/RowDragApi.js +72 -0
  206. package/lib/table/pipeline/features/featureApi/utils.d.ts +2 -0
  207. package/lib/table/pipeline/features/featureApi/utils.js +17 -0
  208. package/lib/table/pipeline/features/filter/DefaultFilterContent.js +17 -52
  209. package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +1 -4
  210. package/lib/table/pipeline/features/filter/Filter.js +30 -77
  211. package/lib/table/pipeline/features/filter/FilterPanel.js +14 -44
  212. package/lib/table/pipeline/features/filter/index.js +0 -5
  213. package/lib/table/pipeline/features/filter/util.js +2 -10
  214. package/lib/table/pipeline/features/footerDataSource.js +1 -12
  215. package/lib/table/pipeline/features/index.js +0 -23
  216. package/lib/table/pipeline/features/mergeCellHover.js +0 -5
  217. package/lib/table/pipeline/features/multiSelect.js +15 -71
  218. package/lib/table/pipeline/features/rangeSelection.js +75 -173
  219. package/lib/table/pipeline/features/rowDetail.js +4 -67
  220. package/lib/table/pipeline/features/rowDrag.d.ts +10 -12
  221. package/lib/table/pipeline/features/rowDrag.js +494 -252
  222. package/lib/table/pipeline/features/rowGrouping.js +4 -57
  223. package/lib/table/pipeline/features/singleSelect.js +0 -34
  224. package/lib/table/pipeline/features/sort.js +37 -115
  225. package/lib/table/pipeline/features/tips.js +4 -19
  226. package/lib/table/pipeline/features/treeMode.d.ts +1 -0
  227. package/lib/table/pipeline/features/treeMode.js +40 -80
  228. package/lib/table/pipeline/features/treeSelect.js +2 -36
  229. package/lib/table/pipeline/index.js +2 -10
  230. package/lib/table/pipeline/pipeline.d.ts +3 -0
  231. package/lib/table/pipeline/pipeline.js +36 -65
  232. package/lib/table/pivot/cross-table/buildCrossTable.js +21 -83
  233. package/lib/table/pivot/cross-table/constants.js +1 -2
  234. package/lib/table/pivot/cross-table/cross-table.js +25 -42
  235. package/lib/table/pivot/cross-table/index.js +0 -4
  236. package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.js +22 -70
  237. package/lib/table/pivot/cross-tree-table/cross-tree-table.js +37 -73
  238. package/lib/table/pivot/cross-tree-table/index.js +0 -3
  239. package/lib/table/pivot/pivot-utils/buildDrillTree.js +10 -29
  240. package/lib/table/pivot/pivot-utils/builders.js +34 -85
  241. package/lib/table/pivot/pivot-utils/convert-utils.js +16 -60
  242. package/lib/table/pivot/pivot-utils/index.js +0 -7
  243. package/lib/table/pivot/pivot-utils/simpleEncode.js +0 -2
  244. package/lib/table/style/css.js +0 -1
  245. package/lib/table/style/index.js +0 -1
  246. package/lib/table/style/index.less +1 -1
  247. package/lib/table/transforms/autoRowSpan.js +1 -21
  248. package/lib/table/transforms/autoWidth.js +15 -58
  249. package/lib/table/transforms/buildTree.js +1 -4
  250. package/lib/table/transforms/columnHover.js +9 -22
  251. package/lib/table/transforms/columnRangeHover.js +12 -27
  252. package/lib/table/transforms/columnResize.js +20 -63
  253. package/lib/table/transforms/flatten.js +0 -5
  254. package/lib/table/transforms/index.js +0 -12
  255. package/lib/table/transforms/orderField.js +0 -7
  256. package/lib/table/transforms/sort.js +44 -127
  257. package/lib/table/transforms/tips.js +5 -20
  258. package/lib/table/transforms/treeMode.js +38 -106
  259. package/lib/table/transforms/visible.js +0 -7
  260. package/lib/table/transforms/warnTransformsDeprecated.js +0 -4
  261. package/lib/table/use/useResizeObserver.js +2 -10
  262. package/lib/table/utils/applyTransforms.js +0 -2
  263. package/lib/table/utils/browserType.js +14 -23
  264. package/lib/table/utils/buildTree.js +7 -33
  265. package/lib/table/utils/collectNodes.js +4 -18
  266. package/lib/table/utils/console.js +2 -19
  267. package/lib/table/utils/copyToClipboard.js +1 -8
  268. package/lib/table/utils/element.js +14 -46
  269. package/lib/table/utils/exportTableAsExcel.js +7 -52
  270. package/lib/table/utils/getTreeDepth.js +4 -17
  271. package/lib/table/utils/groupBy.js +4 -17
  272. package/lib/table/utils/index.js +0 -22
  273. package/lib/table/utils/isGroupColumn.js +0 -3
  274. package/lib/table/utils/isLeafNode.js +0 -1
  275. package/lib/table/utils/keyCode.js +1 -2
  276. package/lib/table/utils/layeredFilter.js +0 -10
  277. package/lib/table/utils/layeredSort.js +0 -10
  278. package/lib/table/utils/makeRecursiveMapper.js +4 -24
  279. package/lib/table/utils/mergeCellProps.js +6 -18
  280. package/lib/table/utils/others.js +7 -36
  281. package/lib/table/utils/proto.js +3 -35
  282. package/lib/table/utils/selectColumn.js +2 -5
  283. package/lib/table/utils/smartCompare.js +4 -13
  284. package/lib/table/utils/traverseColumn.js +5 -25
  285. package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.js +10 -41
  286. package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +21 -90
  287. package/lib/table/utils/uiDegrade.js +1 -8
  288. package/package.json +218 -218
@@ -14,23 +14,18 @@ export function multiSelect() {
14
14
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
15
15
  return function multiSelectStep(pipeline) {
16
16
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
17
-
18
17
  var stateKey = 'multiSelect';
19
18
  var Checkbox = pipeline.ctx.components.Checkbox;
20
-
21
19
  if (Checkbox == null) {
22
20
  throw new Error('使用 multiSelect 之前需要设置 pipeline.ctx.components.Checkbox');
23
21
  }
24
-
25
22
  var primaryKey = pipeline.ensurePrimaryKey('multiSelect');
26
23
  var isDisabled = (_a = opts.isDisabled) !== null && _a !== void 0 ? _a : always(false);
27
24
  var clickArea = (_b = opts.clickArea) !== null && _b !== void 0 ? _b : 'checkbox';
28
25
  var value = (_f = (_e = (_c = opts.value) !== null && _c !== void 0 ? _c : (_d = pipeline.getStateAtKey(stateKey)) === null || _d === void 0 ? void 0 : _d.value) !== null && _e !== void 0 ? _e : opts.defaultValue) !== null && _f !== void 0 ? _f : [];
29
26
  var lastKey = (_k = (_j = (_g = opts.lastKey) !== null && _g !== void 0 ? _g : (_h = pipeline.getStateAtKey(stateKey)) === null || _h === void 0 ? void 0 : _h.lastKey) !== null && _j !== void 0 ? _j : opts.defaultLastKey) !== null && _k !== void 0 ? _k : '';
30
-
31
27
  var _onChange = function onChange(nextValue, key, keys, action) {
32
28
  var _a;
33
-
34
29
  (_a = opts.onChange) === null || _a === void 0 ? void 0 : _a.call(opts, nextValue, key, keys, action);
35
30
  pipeline.setStateAtKey(stateKey, {
36
31
  value: nextValue,
@@ -41,46 +36,38 @@ export function multiSelect() {
41
36
  });
42
37
  };
43
38
  /** dataSource 中包含的所有 keys */
44
-
45
-
46
39
  var fullKeySet = new _Set();
47
40
  /** 所有有效的 keys(disable 状态为 false) */
48
-
49
41
  var allKeys = [];
50
42
  var set = new _Set(value);
51
43
  var isAllChecked = set.size !== 0; // 当前不存在选中则默认为false
52
-
53
44
  var isAnyChecked = false;
54
45
  var flatDataSource = collectNodes(pipeline.getDataSource());
55
46
  flatDataSource.forEach(function (row, rowIndex) {
56
47
  var rowKey = internals.safeGetRowKey(primaryKey, row, rowIndex);
57
- fullKeySet.add(rowKey); // 在 allKeys 中排除被禁用的 key
58
-
48
+ fullKeySet.add(rowKey);
49
+ // 在 allKeys 中排除被禁用的 key
59
50
  if (!isDisabled(row, rowIndex)) {
60
- allKeys.push(rowKey); // 存在一个非选中,则不再进行判断
61
-
51
+ allKeys.push(rowKey);
52
+ // 存在一个非选中,则不再进行判断
62
53
  if (isAllChecked) {
63
54
  isAllChecked = set.has(rowKey);
64
- } // 存在一个选中,则不再进行判断
65
-
66
-
55
+ }
56
+ // 存在一个选中,则不再进行判断
67
57
  if (!isAnyChecked) {
68
58
  isAnyChecked = set.has(rowKey);
69
59
  }
70
60
  }
71
- }); // todo: 暂使用hidden隐藏选择列 后续增加配置
72
-
61
+ });
62
+ // todo: 暂使用hidden隐藏选择列 后续增加配置
73
63
  var hiddenSelectColumn = opts.checkboxColumn && opts.checkboxColumn.hidden === true;
74
-
75
64
  if (!hiddenSelectColumn) {
76
65
  var _context;
77
-
78
66
  var defaultCheckboxColumnTitle = /*#__PURE__*/React.createElement(Checkbox, {
79
67
  checked: isAllChecked,
80
68
  indeterminate: !isAllChecked && isAnyChecked,
81
69
  onChange: function onChange(_) {
82
70
  var allKeys = pipeline.getFeatureOptions(allEnableKeys);
83
-
84
71
  if (isAllChecked) {
85
72
  _onChange(arrayUtils.diff(value, allKeys), '', allKeys, 'uncheck-all');
86
73
  } else {
@@ -88,7 +75,6 @@ export function multiSelect() {
88
75
  }
89
76
  }
90
77
  });
91
-
92
78
  var checkboxColumn = _extends(_extends({
93
79
  name: '是否选中',
94
80
  title: defaultCheckboxColumnTitle,
@@ -97,13 +83,11 @@ export function multiSelect() {
97
83
  }, opts.checkboxColumn), {
98
84
  getCellProps: function getCellProps(value, row, rowIndex) {
99
85
  var _a, _b;
100
-
101
86
  var rowKey = internals.safeGetRowKey(primaryKey, row, rowIndex);
102
87
  var checkboxCellProps = {};
103
88
  var preCellProps = (_b = (_a = opts.checkboxColumn) === null || _a === void 0 ? void 0 : _a.getCellProps) === null || _b === void 0 ? void 0 : _b.call(_a, value, row, rowIndex);
104
89
  var fullRowsSet = pipeline.getFeatureOptions(fullRowsSetKey) || new _Set();
105
90
  var selectValueSet = pipeline.getFeatureOptions(selectValueSetKey) || new _Set();
106
-
107
91
  if (fullRowsSet.has(rowKey) && clickArea === 'cell') {
108
92
  var prevChecked = selectValueSet.has(rowKey);
109
93
  var disabled = isDisabled(row, rowIndex);
@@ -115,19 +99,16 @@ export function multiSelect() {
115
99
  if (opts.stopClickEventPropagation) {
116
100
  e.stopPropagation();
117
101
  }
118
-
119
102
  onCheckboxChange(prevChecked, rowKey, e.shiftKey);
120
103
  }
121
104
  };
122
105
  }
123
-
124
106
  return mergeCellProps(preCellProps, checkboxCellProps);
125
107
  },
126
108
  render: function render(_, row, rowIndex) {
127
109
  if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
128
110
  return null;
129
111
  }
130
-
131
112
  var key = internals.safeGetRowKey(primaryKey, row, rowIndex);
132
113
  var selectValueSet = pipeline.getFeatureOptions(selectValueSetKey) || new _Set();
133
114
  var checked = selectValueSet.has(key);
@@ -135,18 +116,15 @@ export function multiSelect() {
135
116
  checked: checked,
136
117
  disabled: isDisabled(row, rowIndex),
137
118
  onChange: clickArea === 'checkbox' ? function (arg1, arg2) {
138
- var _a; // 这里要同时兼容 antd 和 fusion 的用法
119
+ var _a;
120
+ // 这里要同时兼容 antd 和 fusion 的用法
139
121
  // fusion: arg2?.nativeEvent
140
122
  // antd: arg1.nativeEvent
141
-
142
-
143
123
  var nativeEvent = (_a = arg2 === null || arg2 === void 0 ? void 0 : arg2.nativeEvent) !== null && _a !== void 0 ? _a : arg1.nativeEvent;
144
-
145
124
  if (nativeEvent) {
146
125
  if (opts.stopClickEventPropagation) {
147
126
  nativeEvent.stopPropagation();
148
127
  }
149
-
150
128
  onCheckboxChange(checked, key, nativeEvent.shiftKey);
151
129
  }
152
130
  } : undefined
@@ -154,62 +132,49 @@ export function multiSelect() {
154
132
  },
155
133
  features: _extends(_extends({}, (_l = opts.checkboxColumn) === null || _l === void 0 ? void 0 : _l.features), _defineProperty({}, MULTI_SELECT_MARK_PROPNAME, true))
156
134
  });
157
-
158
135
  var nextColumns = _sliceInstanceProperty(_context = pipeline.getColumns()).call(_context);
159
-
160
136
  var checkboxPlacement = (_m = opts.checkboxPlacement) !== null && _m !== void 0 ? _m : 'start';
161
-
162
137
  if (checkboxPlacement === 'start') {
163
138
  nextColumns.unshift(checkboxColumn);
164
139
  } else {
165
140
  nextColumns.push(checkboxColumn);
166
141
  }
167
-
168
142
  pipeline.columns(nextColumns);
169
143
  }
170
-
171
144
  pipeline.appendRowPropsGetter(function (row, rowIndex) {
172
145
  var rowKey = internals.safeGetRowKey(primaryKey, row, rowIndex);
173
146
  var fullRowsSet = pipeline.getFeatureOptions(fullRowsSetKey) || new _Set();
174
-
175
147
  if (!fullRowsSet.has(rowKey)) {
176
148
  // rowKey 不在 fullKeySet 中说明这一行是在 multiSelect 之后才生成的,multiSelect 不对之后生成的行进行处理
177
149
  return;
178
150
  }
179
-
180
151
  var style = {};
181
152
  var className;
182
153
  var onClick;
183
154
  var selectValueSet = pipeline.getFeatureOptions(selectValueSetKey) || new _Set();
184
155
  var checked = selectValueSet.has(rowKey);
185
-
186
156
  if (opts.highlightRowWhenSelected && checked) {
187
157
  className = 'highlight';
188
158
  }
189
-
190
159
  if (clickArea === 'row') {
191
160
  var disabled = isDisabled(row, rowIndex);
192
-
193
161
  if (!disabled) {
194
162
  style.cursor = 'pointer';
195
-
196
163
  onClick = function onClick(e) {
197
164
  if (opts.stopClickEventPropagation) {
198
165
  e.stopPropagation();
199
166
  }
200
-
201
167
  onCheckboxChange(checked, rowKey, e.shiftKey);
202
168
  };
203
169
  }
204
170
  }
205
-
206
171
  return {
207
172
  className: className,
208
173
  style: style,
209
174
  onClick: onClick
210
175
  };
211
- }); // 只保留一份到pipeline, 避免行数据过多时内容被握住
212
-
176
+ });
177
+ // 只保留一份到pipeline, 避免行数据过多时内容被握住
213
178
  pipeline.setFeatureOptions(fullRowsSetKey, fullKeySet);
214
179
  pipeline.setFeatureOptions(allEnableKeys, allKeys);
215
180
  pipeline.setFeatureOptions(selectValueSetKey, set);
@@ -217,25 +182,18 @@ export function multiSelect() {
217
182
  allKeys = null;
218
183
  set = null;
219
184
  return pipeline;
220
-
221
185
  function onCheckboxChange(prevChecked, key, batch) {
222
186
  var batchKeys = [key];
223
-
224
187
  if (batch && lastKey) {
225
188
  var _allKeys = pipeline.getFeatureOptions(allEnableKeys);
226
-
227
189
  var lastIdx = _allKeys.indexOf(lastKey);
228
-
229
190
  var cntIdx = _allKeys.indexOf(key);
230
-
231
191
  var _ref = lastIdx < cntIdx ? [lastIdx, cntIdx] : [cntIdx, lastIdx],
232
- _ref2 = _slicedToArray(_ref, 2),
233
- start = _ref2[0],
234
- end = _ref2[1];
235
-
192
+ _ref2 = _slicedToArray(_ref, 2),
193
+ start = _ref2[0],
194
+ end = _ref2[1];
236
195
  batchKeys = _sliceInstanceProperty(_allKeys).call(_allKeys, start, end + 1);
237
196
  }
238
-
239
197
  if (prevChecked) {
240
198
  _onChange(arrayUtils.diff(value, batchKeys), key, batchKeys, 'uncheck');
241
199
  } else {