linkmore-design 1.1.1 → 1.1.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 (231) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/Affix/demos/basic.d.ts +0 -1
  3. package/dist/Alert/demos/basic.d.ts +0 -1
  4. package/dist/Alert/demos/visible.d.ts +0 -1
  5. package/dist/Approval/demos/basic.d.ts +0 -1
  6. package/dist/Avatar/demos/basic.d.ts +0 -1
  7. package/dist/Badge/SingleNumber.d.ts +0 -1
  8. package/dist/Badge/demos/basic.d.ts +0 -1
  9. package/dist/Breadcrumb/demos/basic.d.ts +0 -1
  10. package/dist/Breadcrumb/demos/basic1.d.ts +0 -1
  11. package/dist/Button/demos/basic.d.ts +0 -1
  12. package/dist/Button/demos/disabled.d.ts +0 -1
  13. package/dist/Button/demos/icon.d.ts +0 -1
  14. package/dist/Calendar/demos/basic.d.ts +0 -1
  15. package/dist/Card/demos/basic.d.ts +0 -1
  16. package/dist/Carousel/demos/basic.d.ts +0 -1
  17. package/dist/Cascader/demos/basic.d.ts +0 -1
  18. package/dist/Col/demos/basic.d.ts +0 -1
  19. package/dist/Collapse/demos/basic.d.ts +0 -1
  20. package/dist/Comment/demos/basic.d.ts +0 -1
  21. package/dist/ConfigProvider/demos/componentSize.d.ts +0 -1
  22. package/dist/CustomTableOption/demos/basic.d.ts +0 -1
  23. package/dist/DatePicker/PickerButton.d.ts +0 -1
  24. package/dist/DatePicker/PickerTag.d.ts +0 -1
  25. package/dist/DatePicker/demos/basic.d.ts +0 -1
  26. package/dist/Descriptions/demos/basic.d.ts +0 -1
  27. package/dist/Drawer/demos/basic.d.ts +0 -1
  28. package/dist/Drawer/demos/button.d.ts +0 -1
  29. package/dist/Drawer/demos/nested.d.ts +0 -1
  30. package/dist/Dropdown/demos/basic.d.ts +0 -1
  31. package/dist/Dropdown/demos/button.d.ts +0 -1
  32. package/dist/Dropdown/demos/icon.d.ts +0 -1
  33. package/dist/Dropdown/demos/local.d.ts +0 -1
  34. package/dist/Dropdown/demos/target.d.ts +0 -1
  35. package/dist/Empty/demos/basic.d.ts +0 -1
  36. package/dist/Empty/demos/custom.d.ts +0 -1
  37. package/dist/Empty/empty.d.ts +0 -1
  38. package/dist/Empty/simple.d.ts +0 -1
  39. package/dist/Form/demos/drawer1152-triple.d.ts +0 -1
  40. package/dist/Form/demos/drawer440-double.d.ts +0 -1
  41. package/dist/Form/demos/drawer440.d.ts +0 -1
  42. package/dist/Form/demos/drawer720-double.d.ts +0 -1
  43. package/dist/Form/demos/error-tip.d.ts +0 -1
  44. package/dist/Form/demos/formlist.d.ts +0 -1
  45. package/dist/Form/demos/horizontal.d.ts +0 -1
  46. package/dist/Form/demos/inline.d.ts +0 -1
  47. package/dist/Form/demos/modal416.d.ts +0 -1
  48. package/dist/Form/demos/modal552-double.d.ts +0 -1
  49. package/dist/Form/demos/responsive.d.ts +0 -1
  50. package/dist/Form/demos/vertical.d.ts +0 -1
  51. package/dist/FullScreen/demos/basic.d.ts +0 -1
  52. package/dist/FullScreen/demos/useInModal.d.ts +0 -1
  53. package/dist/Grid/demos/basic.d.ts +0 -1
  54. package/dist/Image/demos/basic.d.ts +0 -1
  55. package/dist/ImageViewer/components/Arrows.d.ts +0 -1
  56. package/dist/ImageViewer/components/Carousel.d.ts +0 -1
  57. package/dist/ImageViewer/components/Operate.d.ts +0 -1
  58. package/dist/ImageViewer/components/Thumb.d.ts +0 -1
  59. package/dist/ImageViewer/wrapeer/Container.d.ts +0 -1
  60. package/dist/ImageViewer/wrapeer/Wrapper.d.ts +0 -1
  61. package/dist/Input/demos/after.d.ts +0 -1
  62. package/dist/Input/demos/base.d.ts +0 -1
  63. package/dist/Input/demos/basic.d.ts +0 -1
  64. package/dist/Input/demos/color.d.ts +0 -1
  65. package/dist/Input/demos/combination.d.ts +0 -1
  66. package/dist/Input/demos/import.d.ts +0 -1
  67. package/dist/Input/demos/line.d.ts +0 -1
  68. package/dist/Input/demos/password.d.ts +0 -1
  69. package/dist/Input/demos/size.d.ts +0 -1
  70. package/dist/InputNumber/demos/basic.d.ts +0 -1
  71. package/dist/InputNumber/demos/format.d.ts +0 -1
  72. package/dist/InputNumber/demos/price.d.ts +0 -1
  73. package/dist/InputNumber/demos/status.d.ts +0 -1
  74. package/dist/InputNumber/demos/suffix.d.ts +0 -1
  75. package/dist/Layout/demos/basic.d.ts +0 -1
  76. package/dist/List/demos/basic.d.ts +0 -1
  77. package/dist/LmEditTable/DndContainer.d.ts +0 -1
  78. package/dist/LmEditTable/DragHandle.d.ts +0 -1
  79. package/dist/LmEditTable/demos/basic.d.ts +0 -1
  80. package/dist/LmEditTable/demos/colsort.d.ts +0 -1
  81. package/dist/LmEditTable/demos/group.d.ts +0 -1
  82. package/dist/LmEditTable/demos/sinleEdit.d.ts +0 -1
  83. package/dist/LmEditTable/demos/size.d.ts +0 -1
  84. package/dist/LmEditTable/sortableBox.d.ts +0 -1
  85. package/dist/LmEditTable/sortableBoxCol.d.ts +0 -1
  86. package/dist/LmEditTable/sortableItem.d.ts +0 -1
  87. package/dist/LmEditTable/sortableItemCol.d.ts +0 -1
  88. package/dist/LmSelect/GhostSelect.d.ts +0 -1
  89. package/dist/LmSelect/demos/basic.d.ts +0 -1
  90. package/dist/LmSelect/demos/checkbox.d.ts +0 -1
  91. package/dist/LmSelect/demos/ghost.d.ts +0 -1
  92. package/dist/LmSelect/useCheckboxOptions.d.ts +0 -1
  93. package/dist/LmTable/chartUtil.d.ts +46 -0
  94. package/dist/LmTable/components/DndContainer.d.ts +0 -1
  95. package/dist/LmTable/components/customRenderEmpty.d.ts +0 -1
  96. package/dist/LmTable/components/inputDataEdit.d.ts +0 -1
  97. package/dist/LmTable/components/tableChartsModal.d.ts +3 -2
  98. package/dist/LmTable/util.d.ts +18 -6
  99. package/dist/LmUpload/UploadList/ItemPicture.d.ts +0 -1
  100. package/dist/LmUpload/UploadList/ItemPictureCard.d.ts +0 -1
  101. package/dist/LmUpload/UploadList/ItemText.d.ts +0 -1
  102. package/dist/LmUpload/components/card.d.ts +0 -1
  103. package/dist/LmUpload/view/index.d.ts +0 -1
  104. package/dist/LmUpload/wrapper/Upload.d.ts +0 -1
  105. package/dist/Mentions/demos/basic.d.ts +0 -1
  106. package/dist/Menu/demos/basic.d.ts +0 -1
  107. package/dist/Modal/demos/basic.d.ts +0 -1
  108. package/dist/Modal/demos/info.d.ts +0 -1
  109. package/dist/PageHeader/demos/basic.d.ts +0 -1
  110. package/dist/Pagination/demos/basic.d.ts +0 -1
  111. package/dist/Popconfirm/demos/basic.d.ts +0 -1
  112. package/dist/Popover/demos/basic.d.ts +0 -1
  113. package/dist/Popover/demos/basic1.d.ts +0 -1
  114. package/dist/Popover/index.d.ts +1 -1
  115. package/dist/Progress/demos/basic.d.ts +0 -1
  116. package/dist/Progress/demos/circle.d.ts +0 -1
  117. package/dist/Progress/demos/dynamic.d.ts +0 -1
  118. package/dist/Progress/demos/small.d.ts +0 -1
  119. package/dist/QuickMenu/demos/basic.d.ts +0 -1
  120. package/dist/Rate/demos/basic.d.ts +0 -1
  121. package/dist/Result/demos/403.d.ts +0 -1
  122. package/dist/Result/demos/404.d.ts +0 -1
  123. package/dist/Result/demos/500.d.ts +0 -1
  124. package/dist/Result/demos/basic.d.ts +0 -1
  125. package/dist/Result/demos/customicon.d.ts +0 -1
  126. package/dist/Result/demos/error.d.ts +0 -1
  127. package/dist/Result/demos/info.d.ts +0 -1
  128. package/dist/Result/demos/success.d.ts +0 -1
  129. package/dist/Result/demos/warning.d.ts +0 -1
  130. package/dist/Result/noFound.d.ts +0 -1
  131. package/dist/Result/serverError.d.ts +0 -1
  132. package/dist/Result/unauthorized.d.ts +0 -1
  133. package/dist/Row/demos/basic.d.ts +0 -1
  134. package/dist/Segmented/demos/basic.d.ts +0 -1
  135. package/dist/Select/demos/basic.d.ts +0 -1
  136. package/dist/Select/demos/bordered.d.ts +0 -1
  137. package/dist/Skeleton/demos/basic.d.ts +0 -1
  138. package/dist/Slider/demos/basic.d.ts +0 -1
  139. package/dist/Space/demos/auto.d.ts +0 -1
  140. package/dist/Space/demos/basic.d.ts +0 -1
  141. package/dist/Space/demos/vertical.d.ts +0 -1
  142. package/dist/Spin/demos/basic.d.ts +0 -1
  143. package/dist/Spin/demos/size.d.ts +0 -1
  144. package/dist/Statistic/demos/basic.d.ts +0 -1
  145. package/dist/Steps/demos/basic.d.ts +0 -1
  146. package/dist/Switch/demos/basic.d.ts +0 -1
  147. package/dist/Switch/demos/table.d.ts +0 -1
  148. package/dist/Table/demos/basic.d.ts +0 -1
  149. package/dist/Tabs/demos/basic.d.ts +0 -1
  150. package/dist/Tabs/demos/nobroder.d.ts +0 -1
  151. package/dist/Tag/demos/CheckableTag.d.ts +0 -1
  152. package/dist/Tag/demos/ExigencyTag.d.ts +0 -1
  153. package/dist/Tag/demos/add.d.ts +0 -1
  154. package/dist/Tag/demos/basic.d.ts +0 -1
  155. package/dist/Tag/demos/border.d.ts +0 -1
  156. package/dist/Tag/demos/colors.d.ts +0 -1
  157. package/dist/Timeline/demos/basic.d.ts +0 -1
  158. package/dist/Tooltip/demos/basic.d.ts +0 -1
  159. package/dist/Tooltip/index.d.ts +1 -1
  160. package/dist/Transfer/demos/basic.d.ts +0 -1
  161. package/dist/Tree/demos/basic.d.ts +0 -1
  162. package/dist/Tree/demos/controlled.d.ts +0 -1
  163. package/dist/Tree/demos/search.d.ts +0 -1
  164. package/dist/Tree/demos/sort.d.ts +0 -1
  165. package/dist/Tree/utils/dropIndicator.d.ts +0 -1
  166. package/dist/TreeSelect/demos/basic.d.ts +0 -1
  167. package/dist/Typography/demos/basic.d.ts +0 -1
  168. package/dist/base.css +511 -0
  169. package/dist/hooks/useFullscreen/demos/basic.d.ts +0 -1
  170. package/dist/hooks/useFullscreen/demos/useInModal.d.ts +0 -1
  171. package/dist/index.umd.css +1224 -283
  172. package/dist/index.umd.js +193142 -193548
  173. package/dist/index.umd.min.css +2 -2
  174. package/dist/index.umd.min.js +47 -23
  175. package/dist/locale-provider/index.d.ts +2 -2
  176. package/dist/message/demos/basic.d.ts +0 -1
  177. package/dist/message/demos/other.d.ts +0 -1
  178. package/dist/notification/demos/basic.d.ts +0 -1
  179. package/dist/notification/demos/button.d.ts +0 -1
  180. package/dist/notification/demos/icon.d.ts +0 -1
  181. package/dist/variables.css +12511 -0
  182. package/es/Badge/SingleNumber.d.ts +0 -1
  183. package/es/Button/style/index.css +5 -0
  184. package/es/Button/style/variables.css +5 -0
  185. package/es/DatePicker/PickerButton.d.ts +0 -1
  186. package/es/DatePicker/PickerTag.d.ts +0 -1
  187. package/es/Empty/index.js +3 -2
  188. package/es/LmEditTable/EditTable.js +2 -2
  189. package/es/LmEditTable/sortableItemCol.d.ts +0 -1
  190. package/es/LmTable/Table.js +259 -153
  191. package/es/LmTable/chartUtil.js +167 -0
  192. package/es/LmTable/components/customRenderEmpty.js +6 -1
  193. package/es/LmTable/components/sheelTableCell.js +10 -6
  194. package/es/LmTable/components/sortableItemCol.js +3 -1
  195. package/es/LmTable/components/tableChartsModal.d.ts +3 -1
  196. package/es/LmTable/components/tableChartsModal.js +63 -89
  197. package/es/LmTable/util.js +94 -27
  198. package/es/Popover/index.d.ts +1 -1
  199. package/es/QuickMenu/style/index.css +2 -0
  200. package/es/QuickMenu/style/variables.css +2 -0
  201. package/es/Tooltip/index.d.ts +1 -1
  202. package/es/Tree/utils/dropIndicator.d.ts +0 -1
  203. package/es/locale-provider/index.d.ts +2 -2
  204. package/es/styles/variables.css +7 -0
  205. package/lib/Badge/SingleNumber.d.ts +0 -1
  206. package/lib/Button/style/index.css +5 -0
  207. package/lib/Button/style/variables.css +5 -0
  208. package/lib/DatePicker/PickerButton.d.ts +0 -1
  209. package/lib/DatePicker/PickerTag.d.ts +0 -1
  210. package/lib/Empty/index.js +4 -3
  211. package/lib/LmEditTable/EditTable.js +2 -2
  212. package/lib/LmEditTable/sortableItemCol.d.ts +0 -1
  213. package/lib/LmTable/Table.js +259 -153
  214. package/lib/LmTable/chartUtil.js +167 -0
  215. package/lib/LmTable/components/customRenderEmpty.js +8 -1
  216. package/lib/LmTable/components/sheelTableCell.js +10 -6
  217. package/lib/LmTable/components/sortableItemCol.js +3 -1
  218. package/lib/LmTable/components/tableChartsModal.d.ts +3 -1
  219. package/lib/LmTable/components/tableChartsModal.js +68 -91
  220. package/lib/LmTable/util.js +94 -27
  221. package/lib/Popover/index.d.ts +1 -1
  222. package/lib/QuickMenu/style/index.css +2 -0
  223. package/lib/QuickMenu/style/variables.css +2 -0
  224. package/lib/Tooltip/index.d.ts +1 -1
  225. package/lib/Tree/utils/dropIndicator.d.ts +0 -1
  226. package/lib/locale-provider/index.d.ts +2 -2
  227. package/lib/styles/variables.css +7 -0
  228. package/package.json +2 -1
  229. package/dist/LmTable/test/index.d.ts +0 -100
  230. package/es/LmTable/test/index.js +0 -254
  231. package/lib/LmTable/test/index.js +0 -254
@@ -64,6 +64,7 @@ var _excluded = ["columns", "dataSource", "autoSize", "rowClick", "onDoubleClick
64
64
  _excluded3 = ["onResize", "width", "onResizeStop"];
65
65
  var Summary = _proTable.default.Summary;
66
66
  exports.Summary = Summary;
67
+ var ConfigContext = _ConfigProvider.default.ConfigContext;
67
68
 
68
69
  var isEmpty = function isEmpty(obj) {
69
70
  var _Object$keys;
@@ -138,6 +139,9 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
138
139
  var _resetProps$rowKey = resetProps.rowKey,
139
140
  rowKey = _resetProps$rowKey === void 0 ? 'id' : _resetProps$rowKey;
140
141
 
142
+ var _React$useContext = _react.default.useContext(ConfigContext),
143
+ locale = _React$useContext.locale;
144
+
141
145
  var _useState = (0, _react.useState)({
142
146
  selectedRows: []
143
147
  }),
@@ -159,6 +163,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
159
163
 
160
164
  var tableWarpRef = (0, _react.useRef)(null);
161
165
  var dataSourceRef = (0, _react.useRef)(null);
166
+ var columnsRef = (0, _react.useRef)(null);
162
167
  /** 右键的ref */
163
168
 
164
169
  var contentMenuRef = (0, _react.useRef)(null);
@@ -170,18 +175,17 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
170
175
  setExpandedRowKeys = _useState8[1];
171
176
 
172
177
  var deepDataSourceRef = (0, _react.useRef)([]);
173
- var deepColumnsRef = (0, _react.useRef)([]);
174
- /** 行分组表格对应数据的隐藏数列表 */
175
-
176
- var hideListRef = (0, _react.useRef)([]);
177
- /** 行分组的空行列表数据 */
178
+ var deepColumnsRef = (0, _react.useRef)([]); //
178
179
 
179
- var skipListRef = (0, _react.useRef)([]);
180
+ var copyAllData = (0, _react.useRef)(null);
180
181
  /** 记录最原始数据 */
181
182
 
182
183
  (0, _react.useEffect)(function () {
183
184
  dataSourceRef.current = customizeDataSource;
184
185
  }, [customizeDataSource]);
186
+ (0, _react.useEffect)(function () {
187
+ columnsRef.current = customizeColumns;
188
+ }, [customizeColumns]);
185
189
  /** 行分组 */
186
190
 
187
191
  var groupDataSource = (0, _react.useMemo)(function () {
@@ -210,8 +214,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
210
214
  setExpandedRowKeys([]);
211
215
  deepDataSourceRef.current = [];
212
216
  deepColumnsRef.current = [];
213
- hideListRef.current = [];
214
- }, [groupRowKeys]);
217
+ }, [groupRowKeys, groupColKeys]);
215
218
  /** sheel数据的表格 */
216
219
 
217
220
  var _useState9 = (0, _react.useState)({
@@ -295,46 +298,18 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
295
298
  (0, _react.useEffect)(function () {
296
299
  var source = [];
297
300
 
298
- var dfs = function dfs(children) {
299
- var num = 0;
300
- children.forEach(function (item) {
301
- if (item.children) {
302
- num += dfs(item.children);
303
- } else {
304
- num += 1;
305
- }
306
- });
307
- return num;
308
- };
309
-
310
- var hideList = [];
311
-
312
301
  var deepChildren = function deepChildren(arr) {
313
302
  arr.forEach(function (item) {
314
- source.push((0, _lodash.omit)(item, 'children'));
315
- var prev = hideList.length ? hideList[hideList.length - 1] : 0; // 展开
303
+ source.push((0, _lodash.omit)(item, 'children')); // 展开
316
304
 
317
305
  if ((item === null || item === void 0 ? void 0 : item.children) && expandedRowKeys.includes(item.key)) {
318
- hideList.push(prev);
319
306
  deepChildren(item === null || item === void 0 ? void 0 : item.children);
320
- } // 隐藏
321
-
322
-
323
- if ((item === null || item === void 0 ? void 0 : item.children) && !expandedRowKeys.includes(item.key)) {
324
- var count = dfs(item.children);
325
- hideList.push(count + prev);
326
- }
327
-
328
- if (!(item === null || item === void 0 ? void 0 : item.children)) {
329
- hideList.push(prev);
330
307
  }
331
308
  });
332
309
  };
333
310
 
334
311
  deepChildren(dataSource);
335
312
  deepDataSourceRef.current = source;
336
- hideListRef.current = hideList;
337
- skipListRef.current = (0, _util.getSkipList)((groupRowKeys === null || groupRowKeys === void 0 ? void 0 : groupRowKeys.length) ? deepDataSourceRef.current : dataSource);
338
313
  }, [dataSource, expandedRowKeys]); // 列分组数据铺平,在框选时获取数据使用
339
314
 
340
315
  (0, _react.useEffect)(function () {
@@ -444,7 +419,11 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
444
419
  isEditing: (editing === null || editing === void 0 ? void 0 : editing.i) === i && (editing === null || editing === void 0 ? void 0 : editing.j) === j,
445
420
 
446
421
  /** 是否有效拉伸 */
447
- isVaildCommit: isEmpty(commiting) ? false : isSelected && !(0, _util.checkIsSelectd)(i, j, commiting === null || commiting === void 0 ? void 0 : commiting.start, commiting === null || commiting === void 0 ? void 0 : commiting.end)
422
+ isVaildCommit: isEmpty(commiting) ? false : isSelected && !(0, _util.checkIsSelectd)(i, j, commiting === null || commiting === void 0 ? void 0 : commiting.start, commiting === null || commiting === void 0 ? void 0 : commiting.end),
423
+
424
+ /** 是否选中只读框 */
425
+ // TODO
426
+ selectedReadonly: true
448
427
  };
449
428
  };
450
429
  /** 获取框选的数据 */
@@ -469,44 +448,74 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
469
448
  }).join('\t');
470
449
  }).join('\n');
471
450
  };
472
- /** 复制功能 */
451
+ /** 复制选中内容 */
473
452
 
474
453
 
475
454
  var handleCopy = function handleCopy(e) {
476
- var _shellStatusRef$curre2;
477
-
478
- if (isEmpty((_shellStatusRef$curre2 = shellStatusRef.current) === null || _shellStatusRef$curre2 === void 0 ? void 0 : _shellStatusRef$curre2.editing)) {
479
- var _e$clipboardData;
455
+ var _e$clipboardData;
480
456
 
481
- e === null || e === void 0 ? void 0 : e.preventDefault();
482
- var _shellStatusRef$curre3 = shellStatusRef.current,
483
- start = _shellStatusRef$curre3.start,
484
- end = _shellStatusRef$curre3.end;
485
- var text = getSelectDatas(start, end);
457
+ e === null || e === void 0 ? void 0 : e.preventDefault();
458
+ var _shellStatusRef$curre2 = shellStatusRef.current,
459
+ start = _shellStatusRef$curre2.start,
460
+ end = _shellStatusRef$curre2.end;
461
+ var text = copyAllData.current || getSelectDatas(start, end);
486
462
 
487
- if (window.clipboardData && window.clipboardData.setData) {
488
- window.clipboardData.setData('Text', text);
489
- } else if ((_e$clipboardData = e.clipboardData) === null || _e$clipboardData === void 0 ? void 0 : _e$clipboardData.setData) {
490
- e.clipboardData.setData('text/plain', text);
491
- } else {
492
- var _document;
463
+ if (window.clipboardData && window.clipboardData.setData) {
464
+ window.clipboardData.setData('Text', text);
465
+ document.removeEventListener('copy', handleCopy);
466
+ } else if ((_e$clipboardData = e.clipboardData) === null || _e$clipboardData === void 0 ? void 0 : _e$clipboardData.setData) {
467
+ e.clipboardData.setData('text/plain', text);
468
+ document.removeEventListener('copy', handleCopy);
469
+ } else if (!copyAllData.current) {
470
+ var _document;
493
471
 
494
- (_document = document) === null || _document === void 0 ? void 0 : _document.execCommand('copy');
472
+ (_document = document) === null || _document === void 0 ? void 0 : _document.execCommand('copy');
495
473
 
496
- if (contextMenuStatus) {
497
- setContextMenuStatus(false);
498
- }
474
+ if (contextMenuStatus) {
475
+ setContextMenuStatus(false);
499
476
  }
500
477
  }
478
+
479
+ copyAllData.current = null;
480
+ };
481
+ /** 复制所有数据 */
482
+
483
+
484
+ var handleCopyAll = function handleCopyAll(e) {
485
+ var _document2;
486
+
487
+ e === null || e === void 0 ? void 0 : e.preventDefault();
488
+ var source = dataSourceRef.current;
489
+ var columns = columnsRef.current;
490
+ var text = source.map(function (rItem, i) {
491
+ return columns.map(function (cItem, j) {
492
+ var _columns$j4, _columns$j5;
493
+
494
+ var columnKey = (_columns$j4 = columns[j]) === null || _columns$j4 === void 0 ? void 0 : _columns$j4.dataIndex;
495
+ var dataItem = dataSource[i];
496
+ var cell = dataItem === null || dataItem === void 0 ? void 0 : dataItem[columnKey];
497
+
498
+ if ((_columns$j5 = columns[j]) === null || _columns$j5 === void 0 ? void 0 : _columns$j5.render) {
499
+ var _columns$j6, _columns$j6$render;
500
+
501
+ return (_columns$j6 = columns[j]) === null || _columns$j6 === void 0 ? void 0 : (_columns$j6$render = _columns$j6.render) === null || _columns$j6$render === void 0 ? void 0 : _columns$j6$render.call(_columns$j6, cell, dataItem, i);
502
+ }
503
+
504
+ return cell;
505
+ }).join('\t');
506
+ }).join('\n');
507
+ copyAllData.current = text;
508
+ (_document2 = document) === null || _document2 === void 0 ? void 0 : _document2.execCommand('copy');
509
+ setContextMenuStatus(false);
501
510
  };
502
511
 
503
512
  var onMouseOver = function onMouseOver(i, j) {
504
- var _shellStatusRef$curre4, _shellStatusRef$curre7, _checkStatus, _shellStatusRef$curre8;
513
+ var _shellStatusRef$curre3, _shellStatusRef$curre6, _checkStatus, _shellStatusRef$curre7;
505
514
 
506
- if (isEmpty(shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre4 = shellStatusRef.current) === null || _shellStatusRef$curre4 === void 0 ? void 0 : _shellStatusRef$curre4.commiting)) {
507
- var _shellStatusRef$curre5, _shellStatusRef$curre6;
515
+ if (isEmpty(shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre3 = shellStatusRef.current) === null || _shellStatusRef$curre3 === void 0 ? void 0 : _shellStatusRef$curre3.commiting)) {
516
+ var _shellStatusRef$curre4, _shellStatusRef$curre5;
508
517
 
509
- if ((shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre5 = shellStatusRef.current) === null || _shellStatusRef$curre5 === void 0 ? void 0 : _shellStatusRef$curre5.selecting) && isEmpty(shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre6 = shellStatusRef.current) === null || _shellStatusRef$curre6 === void 0 ? void 0 : _shellStatusRef$curre6.editing)) {
518
+ if ((shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre4 = shellStatusRef.current) === null || _shellStatusRef$curre4 === void 0 ? void 0 : _shellStatusRef$curre4.selecting) && isEmpty(shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre5 = shellStatusRef.current) === null || _shellStatusRef$curre5 === void 0 ? void 0 : _shellStatusRef$curre5.editing)) {
510
519
  shellStatusRef.current = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, shellStatusRef.current), {}, {
511
520
  end: {
512
521
  i: i,
@@ -520,7 +529,15 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
520
529
  }
521
530
  }));
522
531
  }
523
- } else if (!isEmpty((shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre7 = shellStatusRef.current) === null || _shellStatusRef$curre7 === void 0 ? void 0 : _shellStatusRef$curre7.commiting) || {}) && ((_checkStatus = (0, _util.checkStatus)(i, j, shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre8 = shellStatusRef.current) === null || _shellStatusRef$curre8 === void 0 ? void 0 : _shellStatusRef$curre8.commiting)) === null || _checkStatus === void 0 ? void 0 : _checkStatus.isVaildCommit)) {
532
+ } else if (!isEmpty((shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre6 = shellStatusRef.current) === null || _shellStatusRef$curre6 === void 0 ? void 0 : _shellStatusRef$curre6.commiting) || {}) && ((_checkStatus = (0, _util.checkStatus)(i, j, shellStatusRef === null || shellStatusRef === void 0 ? void 0 : (_shellStatusRef$curre7 = shellStatusRef.current) === null || _shellStatusRef$curre7 === void 0 ? void 0 : _shellStatusRef$curre7.commiting)) === null || _checkStatus === void 0 ? void 0 : _checkStatus.isVaildCommit)) {
533
+ if ((0, _util.isSelectCrossRowGroup)(i, shellStatusRef, deepDataSourceRef)) {
534
+ return;
535
+ }
536
+
537
+ if ((0, _util.isSelectCrossInvalidCol)(i, j, shellStatusRef, deepDataSourceRef, deepColumnsRef)) {
538
+ return;
539
+ }
540
+
524
541
  shellStatusRef.current = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, shellStatusRef.current), {}, {
525
542
  end: {
526
543
  i: i,
@@ -534,6 +551,49 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
534
551
  }
535
552
  }));
536
553
  }
554
+ }; // 通过表格的行列索引,获取对应的原始数据的item信息
555
+
556
+
557
+ var getSourceItemInfo = function getSourceItemInfo(trIndex, tdIndex) {
558
+ var innerColumns = (groupColKeys === null || groupColKeys === void 0 ? void 0 : groupColKeys.length) ? deepColumnsRef.current : columns;
559
+ var columnsKeysList = innerColumns.map(function (item) {
560
+ return item.dataIndex;
561
+ });
562
+ var key = columnsKeysList[tdIndex];
563
+ var index;
564
+ var nil = {
565
+ index: -1,
566
+ key: undefined
567
+ };
568
+
569
+ if (key === undefined) {
570
+ return nil;
571
+ } // 列分组的情况下
572
+
573
+
574
+ if (groupColKeys === null || groupColKeys === void 0 ? void 0 : groupColKeys.length) {
575
+ var _deepDataSourceRef$cu;
576
+
577
+ if ((groupRowKeys === null || groupRowKeys === void 0 ? void 0 : groupRowKeys.length) && (deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : (_deepDataSourceRef$cu = deepDataSourceRef.current) === null || _deepDataSourceRef$cu === void 0 ? void 0 : _deepDataSourceRef$cu[trIndex]._group)) {
578
+ return nil;
579
+ }
580
+
581
+ index = (0, _util.getDataSourceIndex)({
582
+ key: key,
583
+ dataSource: dataSource
584
+ });
585
+ var arr = key.split('_');
586
+ key = arr[arr.length - 2];
587
+ } else if (groupRowKeys.length) {
588
+ index = deepDataSourceRef.current[trIndex].__index;
589
+ } else {
590
+ index = trIndex;
591
+ }
592
+
593
+ return {
594
+ index: index,
595
+ key: key
596
+ };
537
597
  };
538
598
  /** sheel 表格 鼠标松开 */
539
599
 
@@ -541,28 +601,29 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
541
601
 
542
602
 
543
603
  var sheelOnMouseUp = function sheelOnMouseUp() {
544
- var _shellStatusRef$curre9;
604
+ var _shellStatusRef$curre8;
545
605
 
546
- if (!isEmpty((_shellStatusRef$curre9 = shellStatusRef.current) === null || _shellStatusRef$curre9 === void 0 ? void 0 : _shellStatusRef$curre9.commiting)) {
606
+ if (!isEmpty((_shellStatusRef$curre8 = shellStatusRef.current) === null || _shellStatusRef$curre8 === void 0 ? void 0 : _shellStatusRef$curre8.commiting)) {
547
607
  var _commiting$start, _commiting$end, _commiting$start2, _commiting$end2, _difference, _difference2, _obj$i;
548
608
 
549
- var _shellStatusRef$curre10 = shellStatusRef.current,
550
- start = _shellStatusRef$curre10.start,
551
- end = _shellStatusRef$curre10.end,
552
- commiting = _shellStatusRef$curre10.commiting; //
609
+ var _shellStatusRef$curre9 = shellStatusRef.current,
610
+ start = _shellStatusRef$curre9.start,
611
+ end = _shellStatusRef$curre9.end,
612
+ commiting = _shellStatusRef$curre9.commiting; //
553
613
 
554
614
  var innerColumns = (groupColKeys === null || groupColKeys === void 0 ? void 0 : groupColKeys.length) ? deepColumnsRef.current : columns;
555
615
  var innerDataSource = (groupRowKeys === null || groupRowKeys === void 0 ? void 0 : groupRowKeys.length) ? deepDataSourceRef.current : dataSource; //
556
616
 
557
617
  var columnsKeysList = innerColumns.map(function (item) {
558
618
  return item.dataIndex;
559
- }); // 空行值数组
619
+ }); // 行文本
560
620
 
561
621
  var rowtext = (0, _util.getSelectionRowText)({
562
622
  selection: commiting,
563
623
  columnsKeysList: columnsKeysList,
564
624
  dataSource: innerDataSource
565
- });
625
+ }); // 列文本
626
+
566
627
  var coltext = (0, _util.getSelectionColText)({
567
628
  selection: commiting,
568
629
  columns: innerColumns,
@@ -609,20 +670,17 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
609
670
  var _isSelected;
610
671
 
611
672
  if ((_isSelected = isSelected(tri, tdj)) === null || _isSelected === void 0 ? void 0 : _isSelected.isSelected) {
612
- var key = columnsKeysList[tdj];
613
- var sourceIndex; // 列分组的情况下
614
-
615
- if (groupColKeys === null || groupColKeys === void 0 ? void 0 : groupColKeys.length) {
616
- sourceIndex = (0, _util.getDataSourceIndex)({
617
- key: key,
618
- dataSource: dataSource
619
- });
620
- var arr = key.split('_');
621
- key = arr[arr.length - 2];
622
- } else {
623
- sourceIndex = tri - skipListRef.current[tri] + hideListRef.current[tri];
673
+ var _deepColumnsRef$curre, _deepColumnsRef$curre2;
674
+
675
+ // 只读列无法修改其内容
676
+ if (deepColumnsRef === null || deepColumnsRef === void 0 ? void 0 : (_deepColumnsRef$curre = deepColumnsRef.current) === null || _deepColumnsRef$curre === void 0 ? void 0 : (_deepColumnsRef$curre2 = _deepColumnsRef$curre[tdj]) === null || _deepColumnsRef$curre2 === void 0 ? void 0 : _deepColumnsRef$curre2.readOnly) {
677
+ return;
624
678
  }
625
679
 
680
+ var _getSourceItemInfo = getSourceItemInfo(tri, tdj),
681
+ sourceIndex = _getSourceItemInfo.index,
682
+ key = _getSourceItemInfo.key;
683
+
626
684
  if (sourceIndex < 0 || sourceIndex >= data.length) {
627
685
  return;
628
686
  } // 行替换
@@ -670,9 +728,9 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
670
728
 
671
729
 
672
730
  var handleCut = function handleCut(e) {
673
- var _shellStatusRef$curre11;
731
+ var _shellStatusRef$curre10;
674
732
 
675
- if (isEmpty((_shellStatusRef$curre11 = shellStatusRef.current) === null || _shellStatusRef$curre11 === void 0 ? void 0 : _shellStatusRef$curre11.editing)) {
733
+ if (isEmpty((_shellStatusRef$curre10 = shellStatusRef.current) === null || _shellStatusRef$curre10 === void 0 ? void 0 : _shellStatusRef$curre10.editing)) {
676
734
  e.preventDefault();
677
735
  handleCopy(e);
678
736
  /** 暂时先不隐藏 */
@@ -685,42 +743,70 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
685
743
  /** TODO: 在分组的情况,需要排除_group行的数据转换 */
686
744
 
687
745
 
688
- var handlePaste = function handlePaste(e) {// if (isEmpty(shellStatusRef.current?.editing)) {
689
- // let { start, end } = shellStatusRef.current
690
- // start = { i: Math.min(start.i, end.i), j: Math.min(start.j, end.j) }
691
- // end = { i: Math.max(start.i, end.i), j: Math.max(start.j, end.j) }
692
- // const parse = defaultParsePaste
693
- // let pasteData = []
694
- // if (window.clipboardData && window.clipboardData.getData) {
695
- // // IE
696
- // pasteData = parse(window.clipboardData.getData('Text'))
697
- // } else if (e.clipboardData && e.clipboardData.getData) {
698
- // pasteData = parse(e.clipboardData.getData('text/plain'))
699
- // }
700
- // // in order of preference
701
- // const resultEnd = []
702
- // pasteData.forEach((row, i) => {
703
- // row.forEach((value, j) => {
704
- // resultEnd.push({
705
- // i: start.i + i,
706
- // j: start.j + j,
707
- // value,
708
- // })
709
- // })
710
- // })
711
- // const columnsKeysList = columns.map((item) => item.dataIndex)
712
- // const res = produce(dataSourceRef.current, (draft) => {
713
- // resultEnd.forEach((item) => {
714
- // if (isSelected(item.i, item.j)?.isSelected) {
715
- // draft[item.i][columnsKeysList[item.j]] = item.value
716
- // }
717
- // })
718
- // })
719
- // /** 只有开通了编辑权限之后才可以 */
720
- // if (editSheet) {
721
- // dataChange?.(res)
722
- // }
723
- // }
746
+ var handlePaste = function handlePaste(e) {
747
+ var _shellStatusRef$curre11;
748
+
749
+ if (isEmpty((_shellStatusRef$curre11 = shellStatusRef.current) === null || _shellStatusRef$curre11 === void 0 ? void 0 : _shellStatusRef$curre11.editing)) {
750
+ var _shellStatusRef$curre12 = shellStatusRef.current,
751
+ start = _shellStatusRef$curre12.start,
752
+ end = _shellStatusRef$curre12.end;
753
+ start = {
754
+ i: Math.min(start.i, end.i),
755
+ j: Math.min(start.j, end.j)
756
+ };
757
+ end = {
758
+ i: Math.max(start.i, end.i),
759
+ j: Math.max(start.j, end.j)
760
+ };
761
+ var parse = defaultParsePaste;
762
+ var pasteData = [];
763
+
764
+ if (window.clipboardData && window.clipboardData.getData) {
765
+ // IE
766
+ pasteData = parse(window.clipboardData.getData('Text'));
767
+ } else if (e.clipboardData && e.clipboardData.getData) {
768
+ pasteData = parse(e.clipboardData.getData('text/plain'));
769
+ } // in order of preference
770
+
771
+
772
+ var resultEnd = [];
773
+ pasteData.forEach(function (row, i) {
774
+ row.forEach(function (value, j) {
775
+ resultEnd.push({
776
+ i: start.i + i,
777
+ j: start.j + j,
778
+ value: value
779
+ });
780
+ });
781
+ });
782
+ var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
783
+ resultEnd.forEach(function (item) {
784
+ var _isSelected2;
785
+
786
+ if ((_isSelected2 = isSelected(item.i, item.j)) === null || _isSelected2 === void 0 ? void 0 : _isSelected2.isSelected) {
787
+ var _getSourceItemInfo2 = getSourceItemInfo(item.i, item.j),
788
+ index = _getSourceItemInfo2.index,
789
+ key = _getSourceItemInfo2.key;
790
+
791
+ if (index < 0 || index >= draft.length) {
792
+ return;
793
+ }
794
+
795
+ draft[index][key] = item.value;
796
+ }
797
+ });
798
+ });
799
+ /** 只有开通了编辑权限之后才可以 */
800
+
801
+ if (editSheet) {
802
+ dataChange === null || dataChange === void 0 ? void 0 : dataChange(res);
803
+ }
804
+ } // 修复重复问题
805
+
806
+
807
+ document.removeEventListener('paste', handlePaste);
808
+ document.removeEventListener('copy', handleCopy);
809
+ document.removeEventListener('cut', handleCut);
724
810
  };
725
811
 
726
812
  var pageClick = function pageClick(e) {
@@ -764,13 +850,13 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
764
850
 
765
851
 
766
852
  var sheelMouseDown = function sheelMouseDown(i, j, e, commitStatus) {
767
- var _shellStatusRef$curre12, _shellStatusRef$curre13, _shellStatusRef$curre14, _shellStatusRef$curre15, _shellStatusRef$curre16, _shellStatusRef$curre17, _shellStatusRef$curre18, _shellStatusRef$curre19, _shellStatusRef$curre20, _shellStatusRef$curre21;
853
+ var _shellStatusRef$curre13, _shellStatusRef$curre14, _shellStatusRef$curre15, _shellStatusRef$curre16, _shellStatusRef$curre17, _shellStatusRef$curre18, _shellStatusRef$curre19, _shellStatusRef$curre20, _shellStatusRef$curre21, _shellStatusRef$curre22;
768
854
 
769
- var isNowEditingSameCell = !isEmpty((_shellStatusRef$curre12 = shellStatusRef.current) === null || _shellStatusRef$curre12 === void 0 ? void 0 : _shellStatusRef$curre12.editing) && ((_shellStatusRef$curre13 = shellStatusRef.current) === null || _shellStatusRef$curre13 === void 0 ? void 0 : _shellStatusRef$curre13.editing.i) === i && ((_shellStatusRef$curre14 = shellStatusRef.current) === null || _shellStatusRef$curre14 === void 0 ? void 0 : _shellStatusRef$curre14.editing.j) === j;
770
- var editing = isEmpty((_shellStatusRef$curre15 = shellStatusRef.current) === null || _shellStatusRef$curre15 === void 0 ? void 0 : _shellStatusRef$curre15.editing) || ((_shellStatusRef$curre16 = shellStatusRef.current) === null || _shellStatusRef$curre16 === void 0 ? void 0 : _shellStatusRef$curre16.editing.i) !== i || ((_shellStatusRef$curre17 = shellStatusRef.current) === null || _shellStatusRef$curre17 === void 0 ? void 0 : _shellStatusRef$curre17.editing.j) !== j ? {} : (_shellStatusRef$curre18 = shellStatusRef.current) === null || _shellStatusRef$curre18 === void 0 ? void 0 : _shellStatusRef$curre18.editing;
855
+ var isNowEditingSameCell = !isEmpty((_shellStatusRef$curre13 = shellStatusRef.current) === null || _shellStatusRef$curre13 === void 0 ? void 0 : _shellStatusRef$curre13.editing) && ((_shellStatusRef$curre14 = shellStatusRef.current) === null || _shellStatusRef$curre14 === void 0 ? void 0 : _shellStatusRef$curre14.editing.i) === i && ((_shellStatusRef$curre15 = shellStatusRef.current) === null || _shellStatusRef$curre15 === void 0 ? void 0 : _shellStatusRef$curre15.editing.j) === j;
856
+ var editing = isEmpty((_shellStatusRef$curre16 = shellStatusRef.current) === null || _shellStatusRef$curre16 === void 0 ? void 0 : _shellStatusRef$curre16.editing) || ((_shellStatusRef$curre17 = shellStatusRef.current) === null || _shellStatusRef$curre17 === void 0 ? void 0 : _shellStatusRef$curre17.editing.i) !== i || ((_shellStatusRef$curre18 = shellStatusRef.current) === null || _shellStatusRef$curre18 === void 0 ? void 0 : _shellStatusRef$curre18.editing.j) !== j ? {} : (_shellStatusRef$curre19 = shellStatusRef.current) === null || _shellStatusRef$curre19 === void 0 ? void 0 : _shellStatusRef$curre19.editing;
771
857
  shellStatusRef.current = {
772
858
  selecting: !isNowEditingSameCell,
773
- start: (e === null || e === void 0 ? void 0 : e.shiftKey) || commitStatus ? (_shellStatusRef$curre19 = shellStatusRef.current) === null || _shellStatusRef$curre19 === void 0 ? void 0 : _shellStatusRef$curre19.start : {
859
+ start: (e === null || e === void 0 ? void 0 : e.shiftKey) || commitStatus ? (_shellStatusRef$curre20 = shellStatusRef.current) === null || _shellStatusRef$curre20 === void 0 ? void 0 : _shellStatusRef$curre20.start : {
774
860
  i: i,
775
861
  j: j
776
862
  },
@@ -781,7 +867,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
781
867
  editing: editing,
782
868
  forceEdit: !!isNowEditingSameCell,
783
869
  commiting: commitStatus ? {
784
- start: (_shellStatusRef$curre20 = shellStatusRef.current) === null || _shellStatusRef$curre20 === void 0 ? void 0 : _shellStatusRef$curre20.start,
870
+ start: (_shellStatusRef$curre21 = shellStatusRef.current) === null || _shellStatusRef$curre21 === void 0 ? void 0 : _shellStatusRef$curre21.start,
785
871
  end: {
786
872
  i: i,
787
873
  j: j
@@ -794,7 +880,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
794
880
  setCommitIng(true);
795
881
  }
796
882
 
797
- if (isEmpty((_shellStatusRef$curre21 = shellStatusRef.current) === null || _shellStatusRef$curre21 === void 0 ? void 0 : _shellStatusRef$curre21.editing)) {
883
+ if (isEmpty((_shellStatusRef$curre22 = shellStatusRef.current) === null || _shellStatusRef$curre22 === void 0 ? void 0 : _shellStatusRef$curre22.editing)) {
798
884
  setEditIng(false);
799
885
  }
800
886
 
@@ -809,9 +895,9 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
809
895
 
810
896
  var onContextMenu = function onContextMenu(evt, i, j) {
811
897
  evt.preventDefault();
812
- var _shellStatusRef$curre22 = shellStatusRef.current,
813
- start = _shellStatusRef$curre22.start,
814
- end = _shellStatusRef$curre22.end;
898
+ var _shellStatusRef$curre23 = shellStatusRef.current,
899
+ start = _shellStatusRef$curre23.start,
900
+ end = _shellStatusRef$curre23.end;
815
901
  /** 如果表格当前没有选择,则把当前的右击的td块默认选中 */
816
902
 
817
903
  if (isEmpty(start) && isEmpty(end)) {
@@ -863,11 +949,18 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
863
949
  }
864
950
  };
865
951
 
866
- var dataSourceChange = function dataSourceChange(i, j, newRecord) {
867
- // 表格中的行数 转化为 对应的数据源索引
868
- var rowIndex = i - skipListRef.current[i] + hideListRef.current[i];
952
+ var dataSourceChange = function dataSourceChange(i, j, value) {
953
+ var _getSourceItemInfo3 = getSourceItemInfo(i, j),
954
+ index = _getSourceItemInfo3.index,
955
+ key = _getSourceItemInfo3.key;
956
+
957
+ if (index < 0 || index >= dataSourceRef.current.length) {
958
+ return;
959
+ } // 表格中的行数 转化为 对应的数据源索引
960
+
961
+
869
962
  var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
870
- draft[rowIndex] = newRecord;
963
+ draft[index][key] = value;
871
964
  });
872
965
  dataChange === null || dataChange === void 0 ? void 0 : dataChange(res);
873
966
  shellStatusRef.current = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, shellStatusRef.current), {}, {
@@ -897,6 +990,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
897
990
 
898
991
  if (col.children && col.children.length) {
899
992
  traverseColumns(col.children);
993
+ return;
900
994
  } else {
901
995
  // $_ 开头表示私有属性
902
996
  col.$_colIndex = colIndex;
@@ -1026,13 +1120,13 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1026
1120
  showSizeChanger: true,
1027
1121
  showQuickJumper: true,
1028
1122
  showTotal: function showTotal(total) {
1029
- return "\u5171 ".concat(total, " \u6761");
1123
+ return (locale === null || locale === void 0 ? void 0 : locale.locale) === 'zh-cn' ? "\u5171 ".concat(total, " \u6761") : "total ".concat(total, " Page");
1030
1124
  },
1031
- locale: {
1125
+ locale: (locale === null || locale === void 0 ? void 0 : locale.locale) === 'zh-cn' ? {
1032
1126
  items_per_page: '/条',
1033
1127
  jump_to: '前往',
1034
1128
  page: '页'
1035
- },
1129
+ } : locale.Pagination || {},
1036
1130
  size: 'small'
1037
1131
  }, pagination),
1038
1132
  rowSelection: rowSelection === false ? undefined : (0, _objectSpread2.default)({
@@ -1045,12 +1139,33 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1045
1139
 
1046
1140
  /** 如果开启了行分组,则需要把checkStrictly关闭,变成受控模式 */
1047
1141
  checkStrictly: !(groupRowKeys === null || groupRowKeys === void 0 ? void 0 : groupRowKeys.length),
1048
- onChange: function onChange(selectedRowKeys, selectedRows) {
1142
+ onChange: !(rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.selectedRows) ? function (selectedRowKeys, selectedRows) {
1049
1143
  setSelectedRows({
1050
1144
  selectedRows: selectedRows
1051
1145
  });
1052
1146
  rowClick === null || rowClick === void 0 ? void 0 : rowClick(selectedRows);
1053
- }
1147
+ } : undefined,
1148
+ onSelectAll: (rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.selectedRows) ? function (selected, selectedRows, changeRows) {
1149
+ var changeRowKeys = changeRows === null || changeRows === void 0 ? void 0 : changeRows.map(function (item) {
1150
+ return item[rowKey];
1151
+ });
1152
+ var reulstSelect = selected ? (0, _lodash.uniqBy)([].concat((0, _toConsumableArray2.default)(rowSelection.selectedRows), (0, _toConsumableArray2.default)(changeRows)), rowKey) : rowSelection.selectedRows.filter(function (item) {
1153
+ return !changeRowKeys.includes(item[rowKey]);
1154
+ });
1155
+ setSelectedRows({
1156
+ selectedRows: reulstSelect
1157
+ });
1158
+ rowClick === null || rowClick === void 0 ? void 0 : rowClick(reulstSelect);
1159
+ } : undefined,
1160
+ onSelect: (rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.selectedRows) ? function (record, selected) {
1161
+ var reulstSelect = selected ? (0, _lodash.uniqBy)([].concat((0, _toConsumableArray2.default)(rowSelection.selectedRows), [record]), rowKey) : rowSelection.selectedRows.filter(function (item) {
1162
+ return item[rowKey] !== record[rowKey];
1163
+ });
1164
+ setSelectedRows({
1165
+ selectedRows: reulstSelect
1166
+ });
1167
+ rowClick === null || rowClick === void 0 ? void 0 : rowClick(reulstSelect);
1168
+ } : undefined
1054
1169
  }, rowSelection),
1055
1170
  onRow: function onRow(record) {
1056
1171
  return {
@@ -1237,6 +1352,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1237
1352
  },
1238
1353
  ref: tableWarpRef
1239
1354
  }, /*#__PURE__*/_react.default.createElement(_ConfigProvider.default, {
1355
+ locale: locale,
1240
1356
  renderEmpty: loading ? function () {
1241
1357
  return null;
1242
1358
  } : emptyProps ? function () {
@@ -1311,20 +1427,8 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1311
1427
  onClick: handleCopy
1312
1428
  }, "\u590D\u5236"), /*#__PURE__*/_react.default.createElement("div", {
1313
1429
  className: "rightClickItems",
1314
- onClick: function onClick() {
1315
- return setChartsModalStatus('column');
1316
- }
1317
- }, "\u751F\u6210\u67F1\u72B6\u56FE"), /*#__PURE__*/_react.default.createElement("div", {
1318
- className: "rightClickItems",
1319
- onClick: function onClick() {
1320
- return setChartsModalStatus('pie');
1321
- }
1322
- }, "\u751F\u6210\u997C\u56FE"), /*#__PURE__*/_react.default.createElement("div", {
1323
- className: "rightClickItems",
1324
- onClick: function onClick() {
1325
- return setChartsModalStatus('line');
1326
- }
1327
- }, "\u751F\u6210\u6298\u7EBF\u56FE")), chartsModalStatus && /*#__PURE__*/_react.default.createElement(_tableChartsModal.default, {
1430
+ onClick: handleCopyAll
1431
+ }, "\u590D\u5236\u5168\u90E8")), chartsModalStatus && /*#__PURE__*/_react.default.createElement(_tableChartsModal.default, {
1328
1432
  type: chartsModalStatus,
1329
1433
  onCancel: function onCancel() {
1330
1434
  return setChartsModalStatus(false);
@@ -1333,6 +1437,8 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1333
1437
  return setChartsModalStatus(false);
1334
1438
  },
1335
1439
  data: dataSource,
1440
+ deepDataSource: deepDataSourceRef.current,
1441
+ rowKey: rowKey,
1336
1442
  columns: columns,
1337
1443
  selectInfo: (0, _lodash.pick)(shellStatusRef.current, ['start', 'end'])
1338
1444
  }));