linkmore-design 1.1.28 → 1.1.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (266) hide show
  1. package/dist/Form/FormItem/index.d.ts +1 -0
  2. package/dist/LmEditTable/DndContainer.d.ts +6 -3
  3. package/dist/LmEditTable/EditTable.d.ts +16 -5
  4. package/dist/LmEditTable/components/DraggableContainer.d.ts +10 -0
  5. package/dist/LmEditTable/components/QuickOpetate.d.ts +12 -0
  6. package/dist/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
  7. package/dist/LmEditTable/components/customRenderEmpty.d.ts +2 -0
  8. package/dist/LmEditTable/components/index.d.ts +17 -0
  9. package/dist/LmEditTable/hooks/useForkRef.d.ts +2 -0
  10. package/dist/LmEditTable/rowSort/DndContainerRow.d.ts +10 -0
  11. package/dist/LmEditTable/sortableItem.d.ts +3 -2
  12. package/dist/LmEditTable/util.d.ts +10 -0
  13. package/dist/LmEditTable/virtual/VirtualRow.d.ts +7 -0
  14. package/dist/LmEditTable/virtual/VirtualRow2.d.ts +7 -0
  15. package/dist/LmEditTable/virtual/VirtualTable.d.ts +3 -0
  16. package/dist/LmEditTable/virtual/VirtualWrapper.d.ts +3 -0
  17. package/dist/LmEditTable/virtual/context.d.ts +13 -0
  18. package/dist/LmEditTable/virtual/index.d.ts +4 -0
  19. package/dist/LmTable/common/index.d.ts +10 -0
  20. package/dist/LmTable/components/CalcExpression.d.ts +9 -0
  21. package/dist/LmTable/components/Container/Container.d.ts +20 -0
  22. package/dist/LmTable/components/Container/index.d.ts +2 -0
  23. package/dist/LmTable/components/DndContainer.d.ts +37 -5
  24. package/dist/LmTable/components/HeaderCol.d.ts +1 -0
  25. package/dist/LmTable/components/Item/Item.d.ts +37 -0
  26. package/dist/LmTable/components/Item/components/Action/Action.d.ts +10 -0
  27. package/dist/LmTable/components/Item/components/Action/index.d.ts +2 -0
  28. package/dist/LmTable/components/Item/components/Handle/index.d.ts +4 -0
  29. package/dist/LmTable/components/Item/components/Remove/index.d.ts +2 -0
  30. package/dist/LmTable/components/Item/components/index.d.ts +3 -0
  31. package/dist/LmTable/components/Item/index.d.ts +2 -0
  32. package/dist/LmTable/components/{sortableBoxCol.d.ts → SortableBox.d.ts} +0 -0
  33. package/dist/LmTable/demos/{excelGroup.d.ts → draggable.d.ts} +0 -0
  34. package/dist/LmTable/demos/resize.d.ts +2 -0
  35. package/dist/LmTable/expression.d.ts +2 -1
  36. package/dist/LmTable/hooks/useDndItems.d.ts +13 -0
  37. package/dist/LmTable/hooks/useGroupDataSource.d.ts +1 -2
  38. package/dist/LmTable/hooks/useResizeObserver.d.ts +13 -0
  39. package/dist/LmTable/multipleContainersKeyboardCoordinates.d.ts +3 -0
  40. package/dist/LmTable/testDemos/group.d.ts +2 -0
  41. package/dist/LmTable/util.d.ts +1 -1
  42. package/dist/LmTable/virTual/VirtualRow.d.ts +1 -1
  43. package/dist/index.d.ts +1 -2
  44. package/dist/index.umd.css +367 -0
  45. package/dist/index.umd.js +4362 -52840
  46. package/dist/index.umd.min.css +1 -1
  47. package/dist/index.umd.min.js +23 -47
  48. package/dist/variables.css +129 -6
  49. package/es/CardTable/style/index.css +3 -2
  50. package/es/CardTable/style/variables.css +3 -2
  51. package/es/CustomTableOption/columnsSort.js +41 -19
  52. package/es/CustomTableOption/filterSort.js +14 -6
  53. package/es/CustomTableOption/style/index.css +3 -0
  54. package/es/CustomTableOption/style/variables.css +3 -0
  55. package/es/Dropdown/style/index.css +1 -1
  56. package/es/Dropdown/style/variables.css +1 -1
  57. package/es/Empty/index.js +0 -1
  58. package/es/Form/FormItem/index.d.ts +1 -0
  59. package/es/Form/FormItem/index.js +31 -17
  60. package/es/Form/style/index.css +4 -0
  61. package/es/Form/style/variables.css +4 -0
  62. package/es/InputNumber/index.js +7 -9
  63. package/es/LmEditTable/DndContainer.d.ts +6 -3
  64. package/es/LmEditTable/DndContainer.js +70 -10
  65. package/es/LmEditTable/DragHandle.js +1 -1
  66. package/es/LmEditTable/EditTable.d.ts +16 -5
  67. package/es/LmEditTable/EditTable.js +855 -436
  68. package/es/LmEditTable/components/DraggableContainer.d.ts +10 -0
  69. package/es/LmEditTable/components/DraggableContainer.js +39 -0
  70. package/es/LmEditTable/components/QuickOpetate.d.ts +12 -0
  71. package/es/LmEditTable/components/QuickOpetate.js +82 -0
  72. package/es/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
  73. package/es/LmEditTable/components/bottomOpetateComponent.js +23 -0
  74. package/es/LmEditTable/components/customRenderEmpty.d.ts +2 -0
  75. package/es/LmEditTable/components/customRenderEmpty.js +20 -0
  76. package/es/LmEditTable/components/index.d.ts +17 -0
  77. package/es/LmEditTable/components/index.js +8 -0
  78. package/es/LmEditTable/hooks/useForkRef.d.ts +2 -0
  79. package/es/LmEditTable/hooks/useForkRef.js +22 -0
  80. package/es/LmEditTable/rowSort/DndContainerRow.d.ts +10 -0
  81. package/es/LmEditTable/rowSort/DndContainerRow.js +83 -0
  82. package/es/LmEditTable/sortableItem.d.ts +3 -2
  83. package/es/LmEditTable/sortableItem.js +16 -4
  84. package/es/LmEditTable/sortableItemCol.js +40 -10
  85. package/es/LmEditTable/style/index.css +105 -1
  86. package/es/LmEditTable/style/variables.css +105 -1
  87. package/es/LmEditTable/util.d.ts +10 -0
  88. package/es/LmEditTable/util.js +162 -9
  89. package/es/LmEditTable/virtual/VirtualRow.d.ts +7 -0
  90. package/es/LmEditTable/virtual/VirtualRow.js +148 -0
  91. package/es/LmEditTable/virtual/VirtualRow2.d.ts +7 -0
  92. package/es/LmEditTable/virtual/VirtualRow2.js +62 -0
  93. package/es/LmEditTable/virtual/VirtualTable.d.ts +3 -0
  94. package/es/LmEditTable/virtual/VirtualTable.js +64 -0
  95. package/es/LmEditTable/virtual/VirtualWrapper.d.ts +3 -0
  96. package/es/LmEditTable/virtual/VirtualWrapper.js +60 -0
  97. package/es/LmEditTable/virtual/context.d.ts +13 -0
  98. package/es/LmEditTable/virtual/context.js +66 -0
  99. package/es/LmEditTable/virtual/index.d.ts +4 -0
  100. package/es/LmEditTable/virtual/index.js +4 -0
  101. package/es/LmTable/Table.js +269 -163
  102. package/es/LmTable/common/index.d.ts +10 -0
  103. package/es/LmTable/common/index.js +38 -0
  104. package/es/LmTable/components/CalcExpression.d.ts +9 -0
  105. package/es/LmTable/components/CalcExpression.js +150 -0
  106. package/es/LmTable/components/Container/Container.css +94 -0
  107. package/es/LmTable/components/Container/Container.d.ts +20 -0
  108. package/es/LmTable/components/Container/Container.js +52 -0
  109. package/es/LmTable/components/Container/index.d.ts +2 -0
  110. package/es/LmTable/components/Container/index.js +1 -0
  111. package/es/LmTable/components/DndContainer.d.ts +37 -5
  112. package/es/LmTable/components/DndContainer.js +704 -24
  113. package/es/LmTable/components/HeaderCol.js +61 -0
  114. package/es/LmTable/components/Item/Item.css +113 -0
  115. package/es/LmTable/components/Item/Item.d.ts +37 -0
  116. package/es/LmTable/components/Item/Item.js +88 -0
  117. package/es/LmTable/components/Item/components/Action/Action.css +41 -0
  118. package/es/LmTable/components/Item/components/Action/Action.d.ts +10 -0
  119. package/es/LmTable/components/Item/components/Action/Action.js +35 -0
  120. package/es/LmTable/components/Item/components/Action/index.d.ts +2 -0
  121. package/es/LmTable/components/Item/components/Action/index.js +1 -0
  122. package/es/LmTable/components/Item/components/Handle/index.d.ts +4 -0
  123. package/es/LmTable/components/Item/components/Handle/index.js +15 -0
  124. package/es/LmTable/components/Item/components/Remove/index.d.ts +2 -0
  125. package/es/LmTable/components/Item/components/Remove/index.js +16 -0
  126. package/es/LmTable/components/Item/components/index.d.ts +3 -0
  127. package/es/LmTable/components/Item/components/index.js +3 -0
  128. package/es/LmTable/components/Item/index.d.ts +2 -0
  129. package/es/LmTable/components/Item/index.js +2 -0
  130. package/es/LmTable/components/{sortableBoxCol.js → SortableBox.js} +0 -0
  131. package/es/LmTable/expression.d.ts +2 -1
  132. package/es/LmTable/expression.js +92 -16
  133. package/es/LmTable/hooks/useDndItems.d.ts +13 -0
  134. package/es/LmTable/hooks/useDndItems.js +234 -0
  135. package/es/LmTable/hooks/useGroupDataSource.js +2 -24
  136. package/es/LmTable/hooks/useResizeObserver.d.ts +13 -0
  137. package/es/LmTable/hooks/useResizeObserver.js +49 -0
  138. package/es/LmTable/multipleContainersKeyboardCoordinates.d.ts +3 -0
  139. package/es/LmTable/multipleContainersKeyboardCoordinates.js +117 -0
  140. package/es/LmTable/style/index.css +13 -2
  141. package/es/LmTable/style/variables.css +13 -2
  142. package/es/LmTable/testDemos/group.js +131 -0
  143. package/es/LmTable/util.js +22 -2
  144. package/es/LmTable/virTual/VirtualRow.d.ts +1 -1
  145. package/es/LmTable/virTual/VirtualRow.js +82 -48
  146. package/es/LmTable/virTual/VirtualTable.js +43 -11
  147. package/es/LmTable/virTual/context.js +14 -2
  148. package/es/LmUpload/fns/index.js +1 -1
  149. package/es/Modal/index.js +10 -3
  150. package/es/Radio/index.js +9 -1
  151. package/es/Switch/index.js +7 -2
  152. package/es/hooks/useEvent/index.js +1 -1
  153. package/es/index.d.ts +1 -2
  154. package/es/locale-provider/index.js +1 -1
  155. package/es/styles/variables.css +129 -6
  156. package/lib/CardTable/style/index.css +3 -2
  157. package/lib/CardTable/style/variables.css +3 -2
  158. package/lib/CustomTableOption/columnsSort.js +48 -23
  159. package/lib/CustomTableOption/filterSort.js +19 -10
  160. package/lib/CustomTableOption/style/index.css +3 -0
  161. package/lib/CustomTableOption/style/variables.css +3 -0
  162. package/lib/Dropdown/style/index.css +1 -1
  163. package/lib/Dropdown/style/variables.css +1 -1
  164. package/lib/Empty/index.js +0 -1
  165. package/lib/Form/FormItem/index.d.ts +1 -0
  166. package/lib/Form/FormItem/index.js +32 -17
  167. package/lib/Form/style/index.css +4 -0
  168. package/lib/Form/style/variables.css +4 -0
  169. package/lib/InputNumber/index.js +9 -9
  170. package/lib/LmEditTable/DndContainer.d.ts +6 -3
  171. package/lib/LmEditTable/DndContainer.js +74 -9
  172. package/lib/LmEditTable/DragHandle.js +1 -1
  173. package/lib/LmEditTable/EditTable.d.ts +16 -5
  174. package/lib/LmEditTable/EditTable.js +853 -433
  175. package/lib/LmEditTable/components/DraggableContainer.d.ts +10 -0
  176. package/lib/LmEditTable/components/DraggableContainer.js +52 -0
  177. package/lib/LmEditTable/components/QuickOpetate.d.ts +12 -0
  178. package/lib/LmEditTable/components/QuickOpetate.js +96 -0
  179. package/lib/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
  180. package/lib/LmEditTable/components/bottomOpetateComponent.js +34 -0
  181. package/lib/LmEditTable/components/customRenderEmpty.d.ts +2 -0
  182. package/lib/LmEditTable/components/customRenderEmpty.js +32 -0
  183. package/lib/LmEditTable/components/index.d.ts +17 -0
  184. package/lib/LmEditTable/components/index.js +45 -0
  185. package/lib/LmEditTable/hooks/useForkRef.d.ts +2 -0
  186. package/lib/LmEditTable/hooks/useForkRef.js +29 -0
  187. package/lib/LmEditTable/rowSort/DndContainerRow.d.ts +10 -0
  188. package/lib/LmEditTable/rowSort/DndContainerRow.js +100 -0
  189. package/lib/LmEditTable/sortableItem.d.ts +3 -2
  190. package/lib/LmEditTable/sortableItem.js +19 -5
  191. package/lib/LmEditTable/sortableItemCol.js +37 -8
  192. package/lib/LmEditTable/style/index.css +105 -1
  193. package/lib/LmEditTable/style/variables.css +105 -1
  194. package/lib/LmEditTable/util.d.ts +10 -0
  195. package/lib/LmEditTable/util.js +171 -8
  196. package/lib/LmEditTable/virtual/VirtualRow.d.ts +7 -0
  197. package/lib/LmEditTable/virtual/VirtualRow.js +164 -0
  198. package/lib/LmEditTable/virtual/VirtualRow2.d.ts +7 -0
  199. package/lib/LmEditTable/virtual/VirtualRow2.js +78 -0
  200. package/lib/LmEditTable/virtual/VirtualTable.d.ts +3 -0
  201. package/lib/LmEditTable/virtual/VirtualTable.js +81 -0
  202. package/lib/LmEditTable/virtual/VirtualWrapper.d.ts +3 -0
  203. package/lib/LmEditTable/virtual/VirtualWrapper.js +73 -0
  204. package/lib/LmEditTable/virtual/context.d.ts +13 -0
  205. package/lib/LmEditTable/virtual/context.js +76 -0
  206. package/lib/LmEditTable/virtual/index.d.ts +4 -0
  207. package/lib/LmEditTable/virtual/index.js +31 -0
  208. package/lib/LmTable/Table.js +269 -163
  209. package/lib/LmTable/common/index.d.ts +10 -0
  210. package/lib/LmTable/common/index.js +48 -0
  211. package/lib/LmTable/components/CalcExpression.d.ts +9 -0
  212. package/lib/LmTable/components/CalcExpression.js +166 -0
  213. package/lib/LmTable/components/Container/Container.css +94 -0
  214. package/lib/LmTable/components/Container/Container.d.ts +20 -0
  215. package/lib/LmTable/components/Container/Container.js +66 -0
  216. package/lib/LmTable/components/Container/index.d.ts +2 -0
  217. package/lib/LmTable/components/Container/index.js +13 -0
  218. package/lib/LmTable/components/DndContainer.d.ts +37 -5
  219. package/lib/LmTable/components/DndContainer.js +714 -26
  220. package/lib/LmTable/components/HeaderCol.js +61 -0
  221. package/lib/LmTable/components/Item/Item.css +113 -0
  222. package/lib/LmTable/components/Item/Item.d.ts +37 -0
  223. package/lib/LmTable/components/Item/Item.js +104 -0
  224. package/lib/LmTable/components/Item/components/Action/Action.css +41 -0
  225. package/lib/LmTable/components/Item/components/Action/Action.d.ts +10 -0
  226. package/lib/LmTable/components/Item/components/Action/Action.js +50 -0
  227. package/lib/LmTable/components/Item/components/Action/index.d.ts +2 -0
  228. package/lib/LmTable/components/Item/components/Action/index.js +13 -0
  229. package/lib/LmTable/components/Item/components/Handle/index.d.ts +4 -0
  230. package/lib/LmTable/components/Item/components/Handle/index.js +27 -0
  231. package/lib/LmTable/components/Item/components/Remove/index.d.ts +2 -0
  232. package/lib/LmTable/components/Item/components/Remove/index.js +27 -0
  233. package/lib/LmTable/components/Item/components/index.d.ts +3 -0
  234. package/lib/LmTable/components/Item/components/index.js +31 -0
  235. package/lib/LmTable/components/Item/index.d.ts +2 -0
  236. package/lib/LmTable/components/Item/index.js +33 -0
  237. package/lib/LmTable/components/{sortableBoxCol.js → SortableBox.js} +0 -0
  238. package/lib/LmTable/expression.d.ts +2 -1
  239. package/lib/LmTable/expression.js +96 -17
  240. package/lib/LmTable/hooks/useDndItems.d.ts +13 -0
  241. package/lib/LmTable/hooks/useDndItems.js +247 -0
  242. package/lib/LmTable/hooks/useGroupDataSource.js +2 -24
  243. package/lib/LmTable/hooks/useResizeObserver.d.ts +13 -0
  244. package/lib/LmTable/hooks/useResizeObserver.js +61 -0
  245. package/lib/LmTable/multipleContainersKeyboardCoordinates.d.ts +3 -0
  246. package/lib/LmTable/multipleContainersKeyboardCoordinates.js +126 -0
  247. package/lib/LmTable/style/index.css +13 -2
  248. package/lib/LmTable/style/variables.css +13 -2
  249. package/lib/LmTable/testDemos/group.js +131 -0
  250. package/lib/LmTable/util.js +22 -2
  251. package/lib/LmTable/virTual/VirtualRow.d.ts +1 -1
  252. package/lib/LmTable/virTual/VirtualRow.js +81 -48
  253. package/lib/LmTable/virTual/VirtualTable.js +43 -10
  254. package/lib/LmTable/virTual/context.js +14 -2
  255. package/lib/LmUpload/fns/index.js +1 -1
  256. package/lib/Modal/index.js +10 -3
  257. package/lib/Radio/index.js +9 -1
  258. package/lib/Switch/index.js +9 -2
  259. package/lib/hooks/useEvent/index.js +1 -1
  260. package/lib/index.d.ts +1 -2
  261. package/lib/locale-provider/index.js +1 -1
  262. package/lib/styles/variables.css +129 -6
  263. package/package.json +3 -5
  264. package/dist/LmTable/components/sortableItemCol.d.ts +0 -1
  265. package/es/LmTable/components/sortableItemCol.js +0 -56
  266. package/lib/LmTable/components/sortableItemCol.js +0 -56
@@ -17,8 +17,6 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
17
17
 
18
18
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
19
 
20
- var _icons = require("@ant-design/icons");
21
-
22
20
  var _moment = _interopRequireDefault(require("moment"));
23
21
 
24
22
  var _sortable = require("@dnd-kit/sortable");
@@ -35,8 +33,6 @@ var _immer = require("immer");
35
33
 
36
34
  var _DndContainer = _interopRequireDefault(require("./DndContainer"));
37
35
 
38
- var _sortableBox = _interopRequireDefault(require("./sortableBox"));
39
-
40
36
  var _sortableBoxCol = _interopRequireDefault(require("./sortableBoxCol"));
41
37
 
42
38
  var _sortableItem = _interopRequireDefault(require("./sortableItem"));
@@ -49,8 +45,14 @@ var _UploadOss = _interopRequireDefault(require("../UploadOss"));
49
45
 
50
46
  var _util = require("./util");
51
47
 
48
+ var _components = require("./components");
49
+
52
50
  var _classnames = _interopRequireDefault(require("classnames"));
53
51
 
52
+ var _ConfigProvider = _interopRequireDefault(require("../ConfigProvider"));
53
+
54
+ var _virtual = require("./virtual");
55
+
54
56
  var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
55
57
  function adopt(value) {
56
58
  return value instanceof P ? value : new P(function (resolve) {
@@ -95,8 +97,6 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
95
97
  }
96
98
  return t;
97
99
  };
98
- /* eslint-disable no-unused-vars */
99
-
100
100
 
101
101
  var UploadBtn = _UploadOss.default.UploadBtn;
102
102
 
@@ -105,18 +105,23 @@ var EditableContext = /*#__PURE__*/_react.default.createContext(null); // 表格
105
105
 
106
106
  var EditableRow = function EditableRow(_a) {
107
107
  var index = _a.index,
108
- props = __rest(_a, ["index"]);
108
+ virtual = _a.virtual,
109
+ props = __rest(_a, ["index", "virtual"]);
109
110
 
110
111
  var _Form$useForm = _linkmoreDesign.Form.useForm(),
111
112
  _Form$useForm2 = (0, _slicedToArray2.default)(_Form$useForm, 1),
112
113
  form = _Form$useForm2[0];
113
114
 
115
+ var dataKey = props.dataKey,
116
+ pushAllForm = props.pushAllForm;
117
+ pushAllForm === null || pushAllForm === void 0 ? void 0 : pushAllForm(form, dataKey, index);
114
118
  return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form, {
115
119
  form: form,
120
+ disabled: props.disabled || false,
116
121
  component: false
117
122
  }, /*#__PURE__*/_react.default.createElement(EditableContext.Provider, {
118
123
  value: form
119
- }, /*#__PURE__*/_react.default.createElement("tr", Object.assign({}, props))));
124
+ }, virtual ? /*#__PURE__*/_react.default.createElement(_virtual.VirtualRow, Object.assign({}, props)) : /*#__PURE__*/_react.default.createElement("tr", Object.assign({}, props))));
120
125
  };
121
126
 
122
127
  var EditableSortRow = function EditableSortRow(_a) {
@@ -127,8 +132,12 @@ var EditableSortRow = function EditableSortRow(_a) {
127
132
  _Form$useForm4 = (0, _slicedToArray2.default)(_Form$useForm3, 1),
128
133
  form = _Form$useForm4[0];
129
134
 
135
+ var dataKey = props.dataKey,
136
+ pushAllForm = props.pushAllForm;
137
+ pushAllForm === null || pushAllForm === void 0 ? void 0 : pushAllForm(form, dataKey, index);
130
138
  return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form, {
131
139
  form: form,
140
+ disabled: props.disabled || false,
132
141
  component: false
133
142
  }, /*#__PURE__*/_react.default.createElement(EditableContext.Provider, {
134
143
  value: form
@@ -259,88 +268,7 @@ var InputRange = function InputRange(_a) {
259
268
  return handleInput(e, 'next');
260
269
  }
261
270
  }, editEnum))));
262
- }; // 操作列
263
-
264
-
265
- var Opetate = function Opetate(_ref) {
266
- var record = _ref.record,
267
- rowKey = _ref.rowKey,
268
- handleAdd = _ref.handleAdd,
269
- handleDelete = _ref.handleDelete,
270
- _ref$options = _ref.options,
271
- options = _ref$options === void 0 ? ['add', 'delete'] : _ref$options,
272
- getLength = _ref.getLength,
273
- quickOpetateClearAll = _ref.quickOpetateClearAll;
274
-
275
- var appendChildren = function appendChildren() {
276
- handleAdd === null || handleAdd === void 0 ? void 0 : handleAdd(record, true);
277
- };
278
-
279
- var appendAdd = function appendAdd() {
280
- handleAdd === null || handleAdd === void 0 ? void 0 : handleAdd(record);
281
- };
282
-
283
- return /*#__PURE__*/_react.default.createElement("div", {
284
- style: {
285
- display: 'flex',
286
- alignItems: 'center',
287
- justifyContent: 'flex-start',
288
- marginLeft: '-4px'
289
- }
290
- }, options.includes('delete') && /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
291
- type: "link",
292
- size: "small",
293
- disabled: !quickOpetateClearAll && getLength < 2,
294
- icon: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
295
- type: "lmweb-minus-circle",
296
- style: {
297
- fontSize: 16
298
- }
299
- }),
300
- onClick: function onClick() {
301
- return handleDelete(record[rowKey]);
302
- }
303
- }), (options === null || options === void 0 ? void 0 : options.includes('add')) && (options === null || options === void 0 ? void 0 : options.includes('addInChildren')) ? /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Popover, {
304
- placement: "bottom",
305
- overlayClassName: 'lm_table_append_add_popover',
306
- open: open,
307
- title: null,
308
- content: /*#__PURE__*/_react.default.createElement("ul", null, /*#__PURE__*/_react.default.createElement("li", {
309
- onClick: appendAdd
310
- }, "\u6DFB\u52A0\u5E73\u7EA7"), /*#__PURE__*/_react.default.createElement("li", {
311
- onClick: appendChildren
312
- }, "\u6DFB\u52A0\u5B50\u7EA7")),
313
- trigger: "hover"
314
- }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
315
- type: "link",
316
- size: "small",
317
- icon: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
318
- type: "lmweb-plus-circle-fill",
319
- style: {
320
- fontSize: 16
321
- }
322
- })
323
- })) : (options === null || options === void 0 ? void 0 : options.includes('add')) || (options === null || options === void 0 ? void 0 : options.includes('addInChildren')) ? /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
324
- type: "link",
325
- size: "small",
326
- icon: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
327
- type: "lmweb-plus-circle-fill",
328
- style: {
329
- fontSize: 16
330
- }
331
- }),
332
- onClick: function onClick() {
333
- return handleAdd(record, (options === null || options === void 0 ? void 0 : options.includes('addInChildren')) ? true : false);
334
- }
335
- }) : null);
336
- }; // const isValidValue = (verifyValue) => {
337
- // const toStringValue = JSON.stringify(verifyValue);
338
- // if (verifyValue === undefined || verifyValue === null || verifyValue === '' || toStringValue === '[]' || toStringValue === '{}') {
339
- // return false;
340
- // }
341
- // return true;
342
- // }
343
-
271
+ };
344
272
  /*
345
273
  表格单元格
346
274
  editEnum: 下拉框时的数据数组(非数组时是配置设置)
@@ -370,9 +298,8 @@ var EditableCell = function EditableCell(props) {
370
298
  handleDelete = props.handleDelete,
371
299
  handleCopy = props.handleCopy,
372
300
  itemProps = props.itemProps,
373
- setValid = props.setValid,
374
- reWriteOriginSource = props.reWriteOriginSource,
375
- restProps = __rest(props, ["record", "rowKey", "isEdit", "col", "rowIndex", "colIndex", "handleTableRowDelete", "handleTableRowAdd", "quickOpetateClearAll", "getLength", "isHoverEdit", "editEnum", "valueType", "children", "handleSave", "handleAdd", "handleDelete", "handleCopy", "itemProps", "setValid", "reWriteOriginSource"]);
301
+ initialiZindex = props.initialiZindex,
302
+ restProps = __rest(props, ["record", "rowKey", "isEdit", "col", "rowIndex", "colIndex", "handleTableRowDelete", "handleTableRowAdd", "quickOpetateClearAll", "getLength", "isHoverEdit", "editEnum", "valueType", "children", "handleSave", "handleAdd", "handleDelete", "handleCopy", "itemProps", "initialiZindex"]);
376
303
  /** 去除移入移出功能,保留最纯粹的功能,优化性能 */
377
304
 
378
305
 
@@ -392,6 +319,12 @@ var EditableCell = function EditableCell(props) {
392
319
 
393
320
  var inputRef = (0, _react.useRef)(null);
394
321
  var form = (0, _react.useContext)(EditableContext);
322
+
323
+ var _useState5 = (0, _react.useState)(false),
324
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
325
+ hoverStatus = _useState6[0],
326
+ setHoverStatus = _useState6[1];
327
+
395
328
  (0, _react.useEffect)(function () {
396
329
  var _a;
397
330
 
@@ -402,13 +335,7 @@ var EditableCell = function EditableCell(props) {
402
335
 
403
336
  var toggleEdit = function toggleEdit() {
404
337
  setEditing(!editing); // form.setFieldsValue({ [dataIndex]: record[dataIndex] });
405
- }; // const checkCellRef = useRef(null)
406
- // const focusCapturedRef = useRef(false);
407
- // const curValue = useMemo(() => {
408
- // return record?.dataIndex
409
- // }, [record])
410
- // const curValueIsValid = isValidValue(curValue);
411
- // 校验保存
338
+ }; // 校验保存
412
339
 
413
340
 
414
341
  var save = function save(row) {
@@ -460,13 +387,7 @@ var EditableCell = function EditableCell(props) {
460
387
  case 13:
461
388
  if (col === null || col === void 0 ? void 0 : col.hoverEdit) {
462
389
  toggleEdit();
463
- } // // 清空异常校验
464
- // setValid((old) => {
465
- // const obj = { ...old }
466
- // delete obj[record[rowKey]]
467
- // return obj
468
- // })
469
-
390
+ }
470
391
 
471
392
  _context.next = 18;
472
393
  break;
@@ -491,15 +412,14 @@ var EditableCell = function EditableCell(props) {
491
412
  /** 快捷刷子,把当前的所有列的值,刷成当前的选中的列 */
492
413
 
493
414
 
494
- var copyKey = function copyKey(e) {
415
+ var copyKey = function copyKey(e, type) {
495
416
  e === null || e === void 0 ? void 0 : e.stopPropagation();
496
417
  var dataIndex = col.dataIndex;
497
- handleCopy === null || handleCopy === void 0 ? void 0 : handleCopy(dataIndex, record[dataIndex]);
418
+ handleCopy === null || handleCopy === void 0 ? void 0 : handleCopy(dataIndex, record[dataIndex], type, props.rowIndex);
498
419
  };
499
420
 
500
421
  var Control = function Control(con) {
501
- var _a; // const resultComponentProps = isFunction(componentProps) ? componentProps?.(record, col) : componentProps
502
-
422
+ var _a;
503
423
 
504
424
  var resultComponentProps = (0, _lodash.isFunction)(componentProps) ? componentProps === null || componentProps === void 0 ? void 0 : componentProps(record, col) : componentProps;
505
425
 
@@ -509,7 +429,7 @@ var EditableCell = function EditableCell(props) {
509
429
  });
510
430
  }
511
431
 
512
- var clearAttrComponentProps = (0, _lodash.omit)(resultComponentProps, ['optionOnly', 'isOnlyValue']);
432
+ var clearAttrComponentProps = (0, _lodash.omit)(resultComponentProps, ['optionOnly', 'isOnlyValue', 'quickcopy']);
513
433
 
514
434
  switch (con) {
515
435
  case 'input':
@@ -530,19 +450,12 @@ var EditableCell = function EditableCell(props) {
530
450
  noStyle: true
531
451
  }, /*#__PURE__*/_react.default.cloneElement(resultComponentProps.addonAfter, {
532
452
  onChange: handleFormItemChange
533
- })) : null,
534
- suffix: resultComponentProps.quickcopy ? /*#__PURE__*/_react.default.createElement("span", {
535
- className: 'lm_table_quickcopy'
536
- }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
537
- onClick: copyKey,
538
- type: 'lmweb-icon_m_brush'
539
453
  })) : null
540
454
  }));
541
455
 
542
456
  case 'inputRange':
543
457
  return /*#__PURE__*/_react.default.createElement(InputRange, Object.assign({
544
- onChange: handleFormItemChange,
545
- ref: inputRef
458
+ onChange: handleFormItemChange
546
459
  }, resultComponentProps, {
547
460
  record: record,
548
461
  rowIndex: rowIndex,
@@ -606,8 +519,7 @@ var EditableCell = function EditableCell(props) {
606
519
 
607
520
  case 'radio':
608
521
  return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio, Object.assign({
609
- onChange: handleFormItemChange,
610
- ref: inputRef
522
+ onChange: handleFormItemChange
611
523
  }, clearAttrComponentProps));
612
524
 
613
525
  case 'radioGroup':
@@ -618,7 +530,7 @@ var EditableCell = function EditableCell(props) {
618
530
 
619
531
  case 'switch':
620
532
  return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Switch, Object.assign({
621
- size: 'small'
533
+ size: "small"
622
534
  }, clearAttrComponentProps, {
623
535
  onChange: handleFormItemChange
624
536
  }));
@@ -632,10 +544,9 @@ var EditableCell = function EditableCell(props) {
632
544
 
633
545
  case 'operate':
634
546
  case 'lm_edit_opetate':
635
- return /*#__PURE__*/_react.default.createElement(Opetate, Object.assign({
547
+ return /*#__PURE__*/_react.default.createElement(_components.QuickOpetate, Object.assign({
636
548
  record: record,
637
549
  rowKey: rowKey,
638
- ref: inputRef,
639
550
  handleAdd: handleTableRowAdd,
640
551
  handleDelete: handleTableRowDelete,
641
552
  getLength: getLength,
@@ -649,7 +560,7 @@ var EditableCell = function EditableCell(props) {
649
560
  var fromData = form.getFieldsValue();
650
561
  return render === null || render === void 0 ? void 0 : render(Object.assign(Object.assign({}, !(0, _util.isObjEmpty)(fromData) ? Object.assign(Object.assign({}, record), (0, _defineProperty2.default)({}, dataIndex, fromData[dataIndex])) : record), {
651
562
  onChange: save
652
- }));
563
+ }), rowIndex);
653
564
  }
654
565
 
655
566
  default:
@@ -681,25 +592,56 @@ var EditableCell = function EditableCell(props) {
681
592
  onClick: toggleEdit
682
593
  }, childNode);
683
594
  } else if (isEdit && editable) {
684
- childNode = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _util.isExpandRow)(childNode) && childNode[0], /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
595
+ childNode = (0, _util.isExpandRow)(childNode) ? /*#__PURE__*/_react.default.createElement("div", {
596
+ style: {
597
+ display: 'flex',
598
+ flexDirection: 'row',
599
+ flexWrap: 'nowrap'
600
+ }
601
+ }, (0, _util.isExpandRow)(childNode) && childNode[0], /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
685
602
  errorPlacement: "right",
686
603
  valuePropName: editable === 'switch' ? 'checked' : 'value',
687
604
  style: {
688
605
  margin: 0
689
- }
606
+ },
607
+ noStyle: formProps ? false : true
608
+ }, formProps, {
609
+ name: dataIndex
610
+ }), Control(editable))) : /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
611
+ errorPlacement: "right",
612
+ valuePropName: editable === 'switch' ? 'checked' : 'value',
613
+ style: {
614
+ margin: 0
615
+ },
616
+ noStyle: formProps ? false : true
690
617
  }, formProps, {
691
618
  name: dataIndex
692
- }), Control(editable)));
619
+ }), Control(editable));
693
620
 
694
621
  if (editable === 'input' && ((resultComponentProps === null || resultComponentProps === void 0 ? void 0 : resultComponentProps.addonBefore) || (resultComponentProps === null || resultComponentProps === void 0 ? void 0 : resultComponentProps.addonAfter))) {
695
- childNode = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _util.isExpandRow)(childNode) && childNode[0], /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
622
+ childNode = (0, _util.isExpandRow)(childNode) ? /*#__PURE__*/_react.default.createElement("div", {
623
+ style: {
624
+ display: 'flex',
625
+ flexDirection: 'row',
626
+ flexWrap: 'nowrap'
627
+ }
628
+ }, (0, _util.isExpandRow)(childNode) && childNode[0], /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
696
629
  errorPlacement: "right",
697
630
  style: {
698
631
  margin: 0
699
632
  }
700
633
  }, formProps, {
634
+ noStyle: formProps ? false : true,
701
635
  name: [dataIndex, 'value']
702
- }), Control(editable)));
636
+ }), Control(editable))) : /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
637
+ errorPlacement: "right",
638
+ style: {
639
+ margin: 0
640
+ }
641
+ }, formProps, {
642
+ noStyle: formProps ? false : true,
643
+ name: [dataIndex, 'value']
644
+ }), Control(editable));
703
645
  }
704
646
  } else if (!isEdit && (componentProps === null || componentProps === void 0 ? void 0 : componentProps.options)) {
705
647
  return ((_b = (_a = componentProps === null || componentProps === void 0 ? void 0 : componentProps.options) === null || _a === void 0 ? void 0 : _a.find(function (item) {
@@ -708,31 +650,71 @@ var EditableCell = function EditableCell(props) {
708
650
  }
709
651
 
710
652
  return childNode;
711
- }, [col, isEdit, editing, getLength]); // const [childNode, setChildNode] = useState(getMemoChildNode);
712
- // 出现死循环找我
653
+ }, [col, isEdit, editing, getLength, record]); // 出现死循环找我
713
654
 
714
655
  (0, _react.useEffect)(function () {
715
656
  var editable = col.editable,
716
657
  dataIndex = col.dataIndex;
717
658
 
718
659
  if (isEdit && editable) {
719
- form.setFieldsValue((0, _defineProperty2.default)({}, dataIndex, editable === 'date' ? (0, _moment.default)(record[dataIndex]) : record[dataIndex]));
720
- } // if (
721
- // (isEdit && editable && record[dataIndex]) ||
722
- // (isHoverEdit && editable && record[dataIndex])
723
- // ) {
724
- // form.setFieldsValue({
725
- // [dataIndex]: editable === 'date' ? moment(record[dataIndex]) : record[dataIndex],
726
- // })
727
- // }
728
-
660
+ form.setFieldsValue((0, _defineProperty2.default)({}, dataIndex, editable === 'date' && record[dataIndex] ? (0, _moment.default)(record[dataIndex]) : record[dataIndex]));
661
+ }
729
662
  }, [record]);
663
+
664
+ var handleTdHover = function handleTdHover() {
665
+ setHoverStatus(true);
666
+ };
667
+
668
+ var handleTdMouseOut = function handleTdMouseOut() {
669
+ setHoverStatus(false);
670
+ };
671
+
730
672
  return /*#__PURE__*/_react.default.createElement("td", Object.assign({}, (0, _lodash.omit)(clearProps, ['dataIndex']), {
731
673
  className: (0, _classnames.default)(clearProps === null || clearProps === void 0 ? void 0 : clearProps.className, 'lm_custom_cell_td'),
674
+ onMouseEnter: componentProps.quickcopy ? handleTdHover : undefined,
675
+ onMouseLeave: componentProps.quickcopy ? handleTdMouseOut : undefined,
676
+ style: (col === null || col === void 0 ? void 0 : col.fixed) ? {
677
+ zIndex: (initialiZindex || 0) - (Number(col === null || col === void 0 ? void 0 : col.order) || 0)
678
+ } : Object.assign({}, clearProps === null || clearProps === void 0 ? void 0 : clearProps.style),
732
679
  key: "r".concat(rowIndex, "_c").concat(colIndex)
733
- }), getMemoChildNode);
680
+ }), hoverStatus && props.rowIndex > 0 && /*#__PURE__*/_react.default.createElement("span", {
681
+ className: 'quick_copy_warp quick_copy_up',
682
+ onClick: function onClick(e) {
683
+ return copyKey(e, 'up');
684
+ }
685
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
686
+ type: 'lmweb-icon_up'
687
+ })), getMemoChildNode, hoverStatus && props.rowIndex < props.getLength - 1 && /*#__PURE__*/_react.default.createElement("span", {
688
+ className: 'quick_copy_warp quick_copy_down',
689
+ onClick: function onClick(e) {
690
+ return copyKey(e, 'down');
691
+ }
692
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
693
+ type: 'lmweb-icon_down'
694
+ })));
734
695
  };
696
+ /** true 不刷新, false 刷新 */
697
+
698
+
699
+ var MemoEditableCell = /*#__PURE__*/(0, _react.memo)(EditableCell, function (prev, next) {
700
+ var pickProps = ['record', 'colIndex'];
701
+ var p = (0, _lodash.pick)(prev, pickProps);
702
+ var n = (0, _lodash.pick)(next, pickProps);
703
+
704
+ if (next === null || next === void 0 ? void 0 : next.shouldUpdate) {
705
+ return false;
706
+ } // console.log(!checkMemoShouldUploadSpecialFun(prev, next), isEqual(p, n), '22', prev.record, next.record)
707
+ // console.log('333', checkMemoShouldUploadSpecialFun(prev, next), isEqual(p, n))
708
+
709
+ /** TODO: 在record中带有children,子列表数据修改之后,会导致父级的record对比不一样 */
710
+
711
+
712
+ if (!(0, _util.checkMemoShouldUploadSpecialFun)(prev, next)) {
713
+ return false;
714
+ }
735
715
 
716
+ return (0, _lodash.isEqual)(p, n);
717
+ });
736
718
  var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
737
719
  var _a, _b;
738
720
 
@@ -752,16 +734,26 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
752
734
  _props$quickOpetateCl = props.quickOpetateClearAll,
753
735
  quickOpetateClearAll = _props$quickOpetateCl === void 0 ? true : _props$quickOpetateCl,
754
736
  rowSelection = props.rowSelection,
737
+ rowDisabled = props.rowDisabled,
738
+ virtual = props.virtual,
755
739
  sortOpen = props.sortOpen,
740
+ disabled = props.disabled,
756
741
  colSortOpen = props.colSortOpen,
742
+ _props$indexCol = props.indexCol,
743
+ indexCol = _props$indexCol === void 0 ? false : _props$indexCol,
757
744
  filterChange = props.filterChange,
758
745
  _props$size = props.size,
759
746
  size = _props$size === void 0 ? 'small' : _props$size,
760
747
  recordCreatorProps = props.recordCreatorProps,
761
748
  _props$shouldUpdate = props.shouldUpdate,
762
749
  shouldUpdate = _props$shouldUpdate === void 0 ? false : _props$shouldUpdate,
763
- resetProps = __rest(props, ["value", "columns", "isEdit", "isAdd", "onChange", "rowKey", "rowHoverEdit", "isUseForm", "isHoverEdit", "useQuickOpetate", "quickOpetateClearAll", "rowSelection", "sortOpen", "colSortOpen", "filterChange", "size", "recordCreatorProps", "shouldUpdate"]); // const [dataSource, setDataSource] = useState([]);
764
-
750
+ _props$loading = props.loading,
751
+ loading = _props$loading === void 0 ? false : _props$loading,
752
+ _props$autoSizer = props.autoSizer,
753
+ autoSizer = _props$autoSizer === void 0 ? false : _props$autoSizer,
754
+ _props$initialiZindex = props.initialiZindex,
755
+ initialiZindex = _props$initialiZindex === void 0 ? 100 : _props$initialiZindex,
756
+ resetProps = __rest(props, ["value", "columns", "isEdit", "isAdd", "onChange", "rowKey", "rowHoverEdit", "isUseForm", "isHoverEdit", "useQuickOpetate", "quickOpetateClearAll", "rowSelection", "rowDisabled", "virtual", "sortOpen", "disabled", "colSortOpen", "indexCol", "filterChange", "size", "recordCreatorProps", "shouldUpdate", "loading", "autoSizer", "initialiZindex"]);
765
757
 
766
758
  var _useControllableValue = (0, _ahooks.useControllableValue)({
767
759
  value: (0, _util.checkRowKeyByDataSource)(props.value, _rowKey),
@@ -769,14 +761,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
769
761
  }),
770
762
  _useControllableValue2 = (0, _slicedToArray2.default)(_useControllableValue, 2),
771
763
  dataSource = _useControllableValue2[0],
772
- setDataSource = _useControllableValue2[1]; // const [count, setCount] = useState(0);
773
-
774
-
775
- var _useState5 = (0, _react.useState)({}),
776
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
777
- _valid = _useState6[0],
778
- setValid = _useState6[1]; // const [localRowSelectList, setLocalRowSelectList] = useState([])
779
-
764
+ setDataSource = _useControllableValue2[1];
780
765
 
781
766
  var transformRowSelect = function transformRowSelect(selectedRowKeys, selectedRows, info) {
782
767
  var _a;
@@ -794,41 +779,44 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
794
779
  localRowSelectList = _useControllableValue4[0],
795
780
  setLocalRowSelectList = _useControllableValue4[1];
796
781
 
797
- var _useState7 = (0, _react.useState)([]),
798
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
799
- sortEditTable = _useState8[0],
800
- setCallBackFalg = _useState8[1];
801
- /** 当前展开的列 */
802
-
803
-
804
- var _useState9 = (0, _react.useState)([]),
805
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
806
- expandedRowKeys = _useState10[0],
807
- setExpandedRowKeys = _useState10[1];
782
+ var _useControllableValue5 = (0, _ahooks.useControllableValue)({
783
+ value: {
784
+ disabledRows: (rowDisabled === null || rowDisabled === void 0 ? void 0 : rowDisabled.disabledRows) || []
785
+ }
786
+ }),
787
+ _useControllableValue6 = (0, _slicedToArray2.default)(_useControllableValue5, 1),
788
+ localDisabledRows = _useControllableValue6[0];
789
+ /** TODO: 当前展开的列 */
808
790
 
809
- var dataSourceRef = (0, _react.useRef)([]);
810
- var sortDataSorceRef = (0, _react.useRef)([]);
811
- var deepDataSourceRef = (0, _react.useRef)([]);
812
791
 
813
- var onSortEnd = function onSortEnd(active, over) {
814
- var cloneArr = (0, _toConsumableArray2.default)(dataSourceRef.current);
815
- var oldIndex = cloneArr.findIndex(function (v) {
816
- return v[_rowKey] === active;
817
- });
818
- var newIndex = cloneArr.findIndex(function (v) {
819
- return v[_rowKey] === over;
820
- });
821
- setDataSource((0, _sortable.arrayMove)(cloneArr, oldIndex, newIndex));
822
- };
792
+ var _useState7 = (0, _react.useState)([]),
793
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
794
+ expandedRowKeys = _useState8[0],
795
+ setExpandedRowKeys = _useState8[1];
796
+
797
+ var dataSourceRef = (0, _react.useRef)(dataSource);
798
+ var deepDataSourceRef = (0, _react.useRef)((0, _util.deepDataSourcePreKeys)(dataSource, _rowKey));
799
+ dataSourceRef.current = dataSource;
800
+ deepDataSourceRef.current = (0, _util.deepDataSourcePreKeys)(dataSource, _rowKey);
801
+ var disabledDataSourceRowKeys = (0, _react.useRef)((0, _util.checkTableRowIsDisable)(deepDataSourceRef.current, localDisabledRows.disabledRows, _rowKey));
802
+ disabledDataSourceRowKeys.current = (0, _util.checkTableRowIsDisable)(deepDataSourceRef.current, localDisabledRows.disabledRows, _rowKey);
803
+ var tableWarpRef = (0, _react.useRef)(null);
804
+ var autoSizerRef = (0, _react.useRef)(null);
805
+ var allFormListRef = (0, _react.useRef)({});
806
+ var scrollToIndexRef = (0, _react.useRef)(null);
807
+
808
+ var _Form$useForm5 = _linkmoreDesign.Form.useForm(),
809
+ _Form$useForm6 = (0, _slicedToArray2.default)(_Form$useForm5, 1),
810
+ checkForm = _Form$useForm6[0];
823
811
 
824
812
  var onColSortEnd = function onColSortEnd(active, over) {
825
813
  var _a;
826
814
 
827
815
  var oldIndex = columns.findIndex(function (item) {
828
- return item['dataIndex'] === active;
816
+ return item.dataIndex === active;
829
817
  });
830
818
  var newIndex = columns.findIndex(function (item) {
831
- return item['dataIndex'] === over;
819
+ return item.dataIndex === over;
832
820
  });
833
821
  filterChange === null || filterChange === void 0 ? void 0 : filterChange((_a = (0, _sortable.arrayMove)(columns, oldIndex, newIndex)) === null || _a === void 0 ? void 0 : _a.map(function (item, index) {
834
822
  return Object.assign(Object.assign({}, item), {
@@ -841,146 +829,39 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
841
829
  var handleDelete = function handleDelete(key) {
842
830
  var nValue = dataSource.filter(function (item) {
843
831
  return item[_rowKey] !== key;
844
- }); // onChange?.(nValue)
845
-
832
+ });
846
833
  setDataSource(nValue);
847
834
  };
848
- /** 点击添加按钮添加 */
835
+ /** 点击底部添加按钮添加 */
849
836
 
850
837
 
851
- var handleAdd = function handleAdd(row) {
838
+ var handleAdd = (0, _lodash.debounce)(function (row) {
852
839
  var _a;
853
840
 
854
841
  var addDataInfo = (0, _lodash.isFunction)(recordCreatorProps === null || recordCreatorProps === void 0 ? void 0 : recordCreatorProps.initData) ? (_a = recordCreatorProps === null || recordCreatorProps === void 0 ? void 0 : recordCreatorProps.initData) === null || _a === void 0 ? void 0 : _a.call(recordCreatorProps) : recordCreatorProps === null || recordCreatorProps === void 0 ? void 0 : recordCreatorProps.initData;
855
842
  var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
856
843
  draft.push(Object.assign((0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())), addDataInfo || {}));
857
844
  });
858
- setDataSource(res); // onChange?.(res)
859
- };
860
-
861
- (0, _react.useEffect)(function () {
862
- var _a;
863
-
864
- dataSourceRef.current = dataSource;
865
- deepDataSourceRef.current = (0, _util.deepDataSourcePreKeys)(dataSource, _rowKey);
866
-
867
- if (sortOpen) {
868
- var dataSourceKeys = dataSource === null || dataSource === void 0 ? void 0 : dataSource.map(function (item) {
869
- return item[_rowKey];
870
- }).join(',');
871
- var setCallBackFalgKeys = ((_a = sortDataSorceRef.current) === null || _a === void 0 ? void 0 : _a.map(function (item) {
872
- return item[_rowKey];
873
- }).join(',')) || '';
874
-
875
- if (dataSourceKeys !== setCallBackFalgKeys) {
876
- setCallBackFalg(dataSource);
877
- sortDataSorceRef.current = dataSource;
878
- }
879
- }
880
- }, [dataSource]); // /** 本地缓存一个选择数据 */
881
- // useEffect(() => {
882
- // if (rowSelection) {
883
- // const { selectedRowKeys } = rowSelection
884
- // if (selectedRowKeys) {
885
- // setLocalRowSelectList(localRowSelectList || [])
886
- // }
887
- // }
888
- // }, [rowSelection])
889
- // const editTableRowChange = (selectRows) => {
890
- // setLocalRowSelectList(selectRows);
891
- // // (rowSelection?.onChange as any)?.(selectRows)
892
- // }
893
-
894
- var handleSave = function handleSave(row, options) {
895
- var _a, _b;
896
-
897
- var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[row[_rowKey]]) === null || _b === void 0 ? void 0 : _b.preKeys;
898
- var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
899
- if (options === null || options === void 0 ? void 0 : options.only) {
900
- var _ref2 = options === null || options === void 0 ? void 0 : options.only,
901
- key = _ref2.key,
902
- value = _ref2.value;
903
-
904
- if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
905
- var deeps = function deeps(children) {
906
- children === null || children === void 0 ? void 0 : children.forEach(function (item) {
907
- var _a;
908
-
909
- if (preKeys.includes(item[_rowKey])) {
910
- if (item[_rowKey] === row[_rowKey]) {
911
- children === null || children === void 0 ? void 0 : children.forEach(function (c) {
912
- c[key] = value;
913
- });
914
- (_a = Object.keys(item)) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
915
- item[v] = row[v] || item[v];
916
- });
917
- } else if (item.children) {
918
- deeps(item.children);
919
- }
920
- }
921
- });
922
- };
923
-
924
- deeps(draft);
925
- } else {
926
- draft === null || draft === void 0 ? void 0 : draft.forEach(function (item, index) {
927
- if (row[_rowKey] === item[_rowKey]) {
928
- draft[index] = row;
929
- } else {
930
- draft[index][key] = value;
931
- }
932
- });
933
- }
934
- } else {
935
- if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
936
- var _deeps = function _deeps(children) {
937
- children === null || children === void 0 ? void 0 : children.forEach(function (item) {
938
- var _a;
939
-
940
- if (preKeys.includes(item[_rowKey])) {
941
- if (item[_rowKey] === row[_rowKey]) {
942
- (_a = Object.keys(row)) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
943
- item[v] = row[v] || item[v];
944
- });
945
- } else if (item.children) {
946
- _deeps(item.children);
947
- }
948
- }
949
- });
950
- };
951
-
952
- _deeps(draft);
953
- } else {
954
- var index = draft.findIndex(function (item) {
955
- return row[_rowKey] === item[_rowKey];
956
- });
957
-
958
- if (index !== -1) {
959
- draft[index] = row;
960
- }
961
- }
962
- }
963
- });
964
845
  setDataSource(res);
965
- };
966
-
967
- var reWriteOriginSource = function reWriteOriginSource(rowKey, rowValue, dataIndex, nextValue) {
968
- setDataSource(function (prevDataSource) {
969
- return prevDataSource === null || prevDataSource === void 0 ? void 0 : prevDataSource.map(function (item) {
970
- if ((0, _lodash.get)(item, rowKey) === rowValue) {
971
- (0, _lodash.set)(item, dataIndex, nextValue);
972
- }
973
-
974
- return item;
975
- });
976
- });
977
- }; // @ts-ignore
846
+ }, 40); // const reWriteOriginSource = (rowKey: string, rowValue, dataIndex: number, nextValue) => {
847
+ // setDataSource((prevDataSource) => {
848
+ // return prevDataSource?.map((item) => {
849
+ // if (get(item, rowKey) === rowValue) {
850
+ // set(item, dataIndex, nextValue)
851
+ // }
852
+ // return item
853
+ // })
854
+ // })
855
+ // }
856
+ // @ts-ignore
978
857
 
858
+ /** 删除当前行 */
979
859
 
980
- var handleTableRowDelete = function handleTableRowDelete(key) {
860
+ var handleTableRowDelete = (0, _lodash.debounce)(function (key) {
981
861
  var _a, _b, _c;
982
862
 
983
- var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[key]) === null || _b === void 0 ? void 0 : _b.preKeys;
863
+ var rkey = (0, _lodash.isObject)(key) ? key[_rowKey] : key;
864
+ var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[rkey]) === null || _b === void 0 ? void 0 : _b.preKeys;
984
865
 
985
866
  if (preKeys.length > 1) {
986
867
  /** 说明删除的是children中的数据 */
@@ -1001,7 +882,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1001
882
  return newData;
1002
883
  };
1003
884
 
1004
- var res = filter(dataSource, key);
885
+ var res = filter(dataSourceRef.current, key);
1005
886
  setDataSource(res);
1006
887
  } else {
1007
888
  if (((_c = dataSourceRef.current) === null || _c === void 0 ? void 0 : _c.length) === 1 && !quickOpetateClearAll) {
@@ -1020,34 +901,76 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1020
901
 
1021
902
  setDataSource(_res);
1022
903
  }
1023
- };
1024
- /** 快捷添加 */
1025
904
 
905
+ return null;
906
+ }, 40);
907
+ /** 替换当前行 */
908
+
909
+ var handleTableRowReplace = (0, _lodash.debounce)(function (record, defaultRecord) {
910
+ var _a, _b;
911
+
912
+ var rkey = (0, _lodash.isObject)(record) ? record[_rowKey] : record;
913
+ var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[rkey]) === null || _b === void 0 ? void 0 : _b.preKeys; // const res = cloneDeep(dataSourceRef.current)
914
+
915
+ var deep = function deep(children) {
916
+ return children.map(function (item) {
917
+ if (item[_rowKey] === rkey) {
918
+ return defaultRecord;
919
+ } else if (preKeys.includes(item[_rowKey]) && item.children) {
920
+ var child = deep(item.children);
921
+ return Object.assign(Object.assign({}, item), {
922
+ children: child
923
+ });
924
+ } else {
925
+ return item;
926
+ }
927
+ });
928
+ };
929
+
930
+ var res = deep(dataSourceRef.current);
931
+ setDataSource(res);
932
+ }, 20);
933
+ /** 快捷添加 */
1026
934
 
1027
- var handleTableRowAdd = function handleTableRowAdd(record, isAppendInChindren) {
935
+ var handleTableRowAdd = (0, _lodash.debounce)(function (record, isAppendInChindren, defaultRecord) {
1028
936
  var _a, _b;
1029
937
 
1030
- var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[record[_rowKey]]) === null || _b === void 0 ? void 0 : _b.preKeys;
938
+ var rkey = (0, _lodash.isObject)(record) ? record[_rowKey] : record;
939
+ var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[rkey]) === null || _b === void 0 ? void 0 : _b.preKeys;
1031
940
  var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
1032
- var _a, _b, _c, _d;
941
+ var _a, _b, _c, _d, _e;
1033
942
 
1034
- if (preKeys.length > 1) {
943
+ if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
1035
944
  var deeps = function deeps(children) {
1036
945
  children === null || children === void 0 ? void 0 : children.forEach(function (item, index) {
1037
- var _a;
946
+ var _a, _b;
1038
947
 
1039
948
  if (preKeys === null || preKeys === void 0 ? void 0 : preKeys.includes(item[_rowKey])) {
1040
- if (item[_rowKey] === record[_rowKey]) {
949
+ if (item[_rowKey] === rkey) {
1041
950
  if (isAppendInChindren) {
1042
951
  if (item === null || item === void 0 ? void 0 : item.children) {
1043
- (_a = item === null || item === void 0 ? void 0 : item.children) === null || _a === void 0 ? void 0 : _a.push((0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
952
+ if (Array.isArray(defaultRecord)) {
953
+ var _a2;
954
+
955
+ (_a = item === null || item === void 0 ? void 0 : item.children) === null || _a === void 0 ? void 0 : (_a2 = _a).push.apply(_a2, (0, _toConsumableArray2.default)(defaultRecord));
956
+ } else {
957
+ (_b = item === null || item === void 0 ? void 0 : item.children) === null || _b === void 0 ? void 0 : _b.push(defaultRecord || (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
958
+ }
1044
959
  } else {
1045
- item.children = [(0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now()))];
960
+ if (Array.isArray(defaultRecord)) {
961
+ item.children = (0, _toConsumableArray2.default)(defaultRecord);
962
+ } else {
963
+ item.children = [defaultRecord || (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now()))];
964
+ }
1046
965
  }
1047
966
 
1048
967
  !expandedRowKeys.includes(item[_rowKey]) && setExpandedRowKeys([].concat((0, _toConsumableArray2.default)(expandedRowKeys), [item[_rowKey]]));
1049
968
  } else {
1050
- children.splice(index + 1, 0, (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
969
+ if (Array.isArray(defaultRecord)) {
970
+ children.splice.apply(children, [index + 1, 0].concat((0, _toConsumableArray2.default)(defaultRecord)));
971
+ } else {
972
+ children.splice(index + 1, 0, defaultRecord || (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
973
+ }
1051
974
  }
1052
975
  } else if (item.children) {
1053
976
  deeps(item.children);
@@ -1059,31 +982,123 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1059
982
  deeps(draft);
1060
983
  } else {
1061
984
  var index = draft.findIndex(function (item) {
1062
- return record[_rowKey] === item[_rowKey];
985
+ return rkey === item[_rowKey];
1063
986
  });
1064
987
 
1065
988
  if (index !== -1) {
1066
989
  if (isAppendInChindren) {
1067
990
  if ((_a = draft[index].children) === null || _a === void 0 ? void 0 : _a.length) {
1068
- (_b = draft[index].children) === null || _b === void 0 ? void 0 : _b.push((0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
991
+ if (Array.isArray(defaultRecord)) {
992
+ var _b2;
993
+
994
+ (_b = draft[index].children) === null || _b === void 0 ? void 0 : (_b2 = _b).push.apply(_b2, (0, _toConsumableArray2.default)(defaultRecord));
995
+ } else {
996
+ (_c = draft[index].children) === null || _c === void 0 ? void 0 : _c.push(defaultRecord || (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
997
+ }
1069
998
  } else {
1070
- draft[index].children = [(0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now()))];
999
+ draft[index].children = Array.isArray(defaultRecord) ? (0, _toConsumableArray2.default)(defaultRecord) : [defaultRecord || (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now()))];
1071
1000
  }
1072
1001
 
1073
- !expandedRowKeys.includes((_c = draft[index]) === null || _c === void 0 ? void 0 : _c[_rowKey]) && setExpandedRowKeys([].concat((0, _toConsumableArray2.default)(expandedRowKeys), [(_d = draft[index]) === null || _d === void 0 ? void 0 : _d[_rowKey]]));
1002
+ !expandedRowKeys.includes((_d = draft[index]) === null || _d === void 0 ? void 0 : _d[_rowKey]) && setExpandedRowKeys([].concat((0, _toConsumableArray2.default)(expandedRowKeys), [(_e = draft[index]) === null || _e === void 0 ? void 0 : _e[_rowKey]]));
1074
1003
  } else {
1075
- draft.splice(index + 1, 0, (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
1004
+ if (Array.isArray(defaultRecord)) {
1005
+ draft.splice.apply(draft, [index + 1, 0].concat((0, _toConsumableArray2.default)(defaultRecord)));
1006
+ } else {
1007
+ draft.splice(index + 1, 0, defaultRecord || (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
1008
+ }
1076
1009
  }
1077
1010
  }
1078
1011
  }
1079
1012
  });
1080
1013
  setDataSource(res);
1014
+ }, 50);
1015
+
1016
+ var handleSave = function handleSave(row, options) {
1017
+ var _a, _b;
1018
+
1019
+ var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[row[_rowKey]]) === null || _b === void 0 ? void 0 : _b.preKeys;
1020
+
1021
+ if (options === null || options === void 0 ? void 0 : options.only) {
1022
+ var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
1023
+ if (options === null || options === void 0 ? void 0 : options.only) {
1024
+ var _ref7 = options === null || options === void 0 ? void 0 : options.only,
1025
+ key = _ref7.key,
1026
+ value = _ref7.value;
1027
+
1028
+ if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
1029
+ var deeps = function deeps(children) {
1030
+ children === null || children === void 0 ? void 0 : children.forEach(function (item) {
1031
+ var _a;
1032
+
1033
+ if (preKeys.includes(item[_rowKey])) {
1034
+ if (item[_rowKey] === row[_rowKey]) {
1035
+ children === null || children === void 0 ? void 0 : children.forEach(function (c) {
1036
+ c[key] = value;
1037
+ });
1038
+ (_a = Object.keys(item)) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
1039
+ item[v] = row[v] || item[v];
1040
+ });
1041
+ } else if (item.children) {
1042
+ deeps(item.children);
1043
+ }
1044
+ }
1045
+ });
1046
+ };
1047
+
1048
+ deeps(draft);
1049
+ } else {
1050
+ draft === null || draft === void 0 ? void 0 : draft.forEach(function (item, index) {
1051
+ if (row[_rowKey] === item[_rowKey]) {
1052
+ draft[index] = row;
1053
+ } else {
1054
+ draft[index][key] = value;
1055
+ }
1056
+ });
1057
+ }
1058
+ } else {
1059
+ if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
1060
+ var _deeps = function _deeps(children) {
1061
+ children === null || children === void 0 ? void 0 : children.forEach(function (item) {
1062
+ var _a;
1063
+
1064
+ if (preKeys.includes(item[_rowKey])) {
1065
+ if (item[_rowKey] === row[_rowKey]) {
1066
+ (_a = Object.keys(row)) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
1067
+ item[v] = row[v] || item[v];
1068
+ });
1069
+ } else if (item.children) {
1070
+ _deeps(item.children);
1071
+ }
1072
+ }
1073
+ });
1074
+ };
1075
+
1076
+ _deeps(draft);
1077
+ } else {
1078
+ var index = draft.findIndex(function (item) {
1079
+ return row[_rowKey] === item[_rowKey];
1080
+ });
1081
+
1082
+ if (index !== -1) {
1083
+ draft[index] = row;
1084
+ }
1085
+ }
1086
+ }
1087
+ });
1088
+ setDataSource(res);
1089
+ } else {
1090
+ handleTableRowReplace(row[_rowKey], row);
1091
+ }
1081
1092
  };
1093
+ /** 快捷刷子功能 */
1094
+
1082
1095
 
1083
- var handleCopy = function handleCopy(key, value) {
1096
+ var handleCopy = function handleCopy(key, value, type, rowIndex) {
1084
1097
  var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
1085
- draft === null || draft === void 0 ? void 0 : draft.forEach(function (item) {
1086
- return item[key] = value;
1098
+ draft === null || draft === void 0 ? void 0 : draft.forEach(function (item, index) {
1099
+ if (type === 'up' && index < rowIndex || type === 'down' && index > rowIndex) {
1100
+ item[key] = value;
1101
+ }
1087
1102
  });
1088
1103
  });
1089
1104
  setDataSource(res);
@@ -1092,17 +1107,16 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1092
1107
 
1093
1108
 
1094
1109
  var hasDisableOptions = (0, _react.useMemo)(function () {
1095
- // const hasOnlyOptionsDatas = columns.filter(item => item?.['componentProps']?.optionOnly)
1096
1110
  var hasOnlyOptionsDatas = columns.filter(function (item) {
1097
1111
  var _a;
1098
1112
 
1099
1113
  var resultComponentProps = (0, _lodash.isFunction)(item === null || item === void 0 ? void 0 : item.componentProps) ? (_a = item === null || item === void 0 ? void 0 : item.componentProps) === null || _a === void 0 ? void 0 : _a.call(item, {}, item) : item === null || item === void 0 ? void 0 : item.componentProps;
1100
1114
  return resultComponentProps === null || resultComponentProps === void 0 ? void 0 : resultComponentProps.optionOnly;
1101
- });
1115
+ }); // const hasOnlyOptionsDatas = columns.filter((item) => item?.componentProps?.optionOnly)
1102
1116
 
1103
1117
  if (hasOnlyOptionsDatas.length) {
1104
1118
  return hasOnlyOptionsDatas === null || hasOnlyOptionsDatas === void 0 ? void 0 : hasOnlyOptionsDatas.map(function (item) {
1105
- return item['dataIndex'];
1119
+ return item.dataIndex;
1106
1120
  });
1107
1121
  }
1108
1122
 
@@ -1114,12 +1128,11 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1114
1128
  var newColumns = columns === null || columns === void 0 ? void 0 : columns.map(function (item) {
1115
1129
  var _a;
1116
1130
 
1117
- var resultComponentProps = (0, _lodash.isFunction)(item.componentProps) ? (_a = item === null || item === void 0 ? void 0 : item.componentProps) === null || _a === void 0 ? void 0 : _a.call(item, {}, item) : item === null || item === void 0 ? void 0 : item.componentProps;
1118
-
1119
- var _ref5 = resultComponentProps || {},
1120
- optionOnly = _ref5.optionOnly,
1121
- options = _ref5.options; // const { optionOnly, options } = item['componentProps'] || {}
1131
+ var resultComponentProps = (0, _lodash.isFunction)(item.componentProps) ? (_a = item.componentProps) === null || _a === void 0 ? void 0 : _a.call(item, {}, item) : item.componentProps;
1122
1132
 
1133
+ var _ref8 = resultComponentProps || {},
1134
+ optionOnly = _ref8.optionOnly,
1135
+ options = _ref8.options;
1123
1136
 
1124
1137
  if (optionOnly && options) {
1125
1138
  var dataIndex = item.dataIndex;
@@ -1139,7 +1152,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1139
1152
  }
1140
1153
 
1141
1154
  return Object.assign(Object.assign({}, item), {
1142
- componentProps: Object.assign(Object.assign({}, item['componentProps']), {
1155
+ componentProps: Object.assign(Object.assign({}, item.componentProps), {
1143
1156
  options: newOptions
1144
1157
  })
1145
1158
  });
@@ -1158,16 +1171,49 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1158
1171
  var rColumns = hasDisableOptions ? DisableOptions : columns;
1159
1172
  var localColumns = [sortOpen ? {
1160
1173
  title: '排序',
1161
- dataIndex: 'sort',
1174
+ dataIndex: '_sort',
1162
1175
  width: 48,
1163
1176
  maxWidth: 48,
1164
1177
  className: 'drag-visible',
1178
+ fixed: 'left',
1179
+ order: -2,
1165
1180
  render: function render(_, record) {
1166
1181
  return /*#__PURE__*/_react.default.createElement(_DragHandle.default, {
1167
- id: record[_rowKey] || record.id
1182
+ id: (record === null || record === void 0 ? void 0 : record[_rowKey]) || (record === null || record === void 0 ? void 0 : record.id)
1168
1183
  });
1169
1184
  }
1170
- } : null].concat((0, _toConsumableArray2.default)(rColumns), [useQuickOpetate ? {
1185
+ } : null, indexCol ? (0, _lodash.isBoolean)(indexCol) ? {
1186
+ title: '',
1187
+ dataIndex: '_index',
1188
+ width: 48,
1189
+ maxWidth: 48,
1190
+ ellipsis: true,
1191
+ fixed: 'left',
1192
+ order: -1,
1193
+ render: function render(_, record, index) {
1194
+ var _a, _b, _c;
1195
+
1196
+ return ((_c = (_b = (_a = deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[record[_rowKey]]) === null || _b === void 0 ? void 0 : _b['_deepIds']) === null || _c === void 0 ? void 0 : _c.join('-')) || "".concat(index + 1);
1197
+ }
1198
+ } : Object.assign(Object.assign({
1199
+ title: '',
1200
+ dataIndex: '_index',
1201
+ width: 48,
1202
+ ellipsis: true,
1203
+ maxWidth: 48,
1204
+ order: -1,
1205
+ fixed: 'left'
1206
+ }, indexCol || {}), {
1207
+ render: function render(_, record, index) {
1208
+ var _a, _b, _c, _d, _e, _f;
1209
+
1210
+ if ((0, _lodash.isFunction)(indexCol === null || indexCol === void 0 ? void 0 : indexCol.render)) {
1211
+ return (_a = indexCol === null || indexCol === void 0 ? void 0 : indexCol.render) === null || _a === void 0 ? void 0 : _a.call(indexCol, record, (_c = (_b = deepDataSourceRef.current) === null || _b === void 0 ? void 0 : _b[record[_rowKey]]) === null || _c === void 0 ? void 0 : _c['_deepIds']);
1212
+ }
1213
+
1214
+ return ((_f = (_e = (_d = deepDataSourceRef.current) === null || _d === void 0 ? void 0 : _d[record[_rowKey]]) === null || _e === void 0 ? void 0 : _e['_deepIds']) === null || _f === void 0 ? void 0 : _f.join('-')) || "".concat(index + 1);
1215
+ }
1216
+ }) : null].concat((0, _toConsumableArray2.default)(rColumns), [useQuickOpetate ? {
1171
1217
  title: '操作',
1172
1218
  dataIndex: 'lm_edit_opetate',
1173
1219
  width: 68,
@@ -1178,11 +1224,11 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1178
1224
  options: Array.isArray(useQuickOpetate) ? useQuickOpetate : ['add', 'delete']
1179
1225
  }
1180
1226
  } : null]).filter(function (item) {
1181
- return item && item.show !== false;
1227
+ return item && (item === null || item === void 0 ? void 0 : item.show) !== false;
1182
1228
  });
1183
- localColumns = localColumns.map(function (item, index) {
1229
+ localColumns = localColumns === null || localColumns === void 0 ? void 0 : localColumns.map(function (item, index) {
1184
1230
  return Object.assign(Object.assign({}, item), {
1185
- order: [null, undefined].includes(item['order']) ? index : item['order']
1231
+ order: [null, undefined].includes(item.order) ? index : item.order
1186
1232
  });
1187
1233
  }).sort(function (a, b) {
1188
1234
  return a.order - b.order;
@@ -1191,7 +1237,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1191
1237
  var mainColumns = [];
1192
1238
  var rightColumns = [];
1193
1239
  localColumns === null || localColumns === void 0 ? void 0 : localColumns.forEach(function (item) {
1194
- if ((item === null || item === void 0 ? void 0 : item.fixed) === 'left') {
1240
+ if ((item === null || item === void 0 ? void 0 : item.fixed) === 'left' || (item === null || item === void 0 ? void 0 : item.fixed) === true) {
1195
1241
  leftColumns.push(item);
1196
1242
  } else if ((item === null || item === void 0 ? void 0 : item.fixed) === 'right') {
1197
1243
  rightColumns.push(item);
@@ -1205,29 +1251,22 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1205
1251
  var mapColumns = function mapColumns(col, index) {
1206
1252
  var _a, _b;
1207
1253
 
1208
- if (!col.editable && !((_a = col.children) === null || _a === void 0 ? void 0 : _a.length)) {
1209
- return col;
1210
- }
1211
-
1212
- var newCol = Object.assign(Object.assign({}, col), {
1213
- shouldCellUpdate: function shouldCellUpdate(record, prevRecord) {
1214
- var _a;
1215
-
1216
- var dataIndex = col.dataIndex,
1217
- editable = col.editable,
1218
- relevanceCols = col.relevanceCols,
1219
- componentProps = col.componentProps;
1254
+ if (!col.editable && !((_a = col.children) === null || _a === void 0 ? void 0 : _a.length) && (col === null || col === void 0 ? void 0 : col.dataIndex) === '_sort') {
1255
+ var fn = col === null || col === void 0 ? void 0 : col.render;
1256
+ return Object.assign(Object.assign({}, col), {
1257
+ render: function render(text, record, i) {
1258
+ var _a;
1220
1259
 
1221
- if (componentProps && (0, _lodash.isFunction)(componentProps)) {
1222
- return true;
1260
+ return fn === null || fn === void 0 ? void 0 : fn((_a = dataSource[i]) === null || _a === void 0 ? void 0 : _a[col.dataIndex], dataSource[i], i);
1223
1261
  }
1262
+ });
1263
+ }
1224
1264
 
1225
- if ((col === null || col === void 0 ? void 0 : col.fixed) || hasDisableOptions && hasDisableOptions.includes(dataIndex) || ((_a = col.componentProps) === null || _a === void 0 ? void 0 : _a.options) || editable === 'render' || !!relevanceCols || !!shouldUpdate || !!record.children) {
1226
- return true;
1227
- }
1265
+ if (isEdit && (col === null || col === void 0 ? void 0 : col.render) && (col === null || col === void 0 ? void 0 : col.editable) === 'render') {
1266
+ delete col.render;
1267
+ }
1228
1268
 
1229
- return record[dataIndex] !== prevRecord[dataIndex];
1230
- },
1269
+ var newCol = Object.assign({
1231
1270
  onCell: function onCell(record, rowIndex) {
1232
1271
  return {
1233
1272
  getLength: dataSource.length,
@@ -1236,13 +1275,14 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1236
1275
  col: col,
1237
1276
  rowIndex: rowIndex,
1238
1277
  colIndex: index,
1278
+ initialiZindex: initialiZindex,
1239
1279
  quickOpetateClearAll: quickOpetateClearAll,
1240
1280
  handleTableRowDelete: handleTableRowDelete,
1241
1281
  handleTableRowAdd: handleTableRowAdd,
1242
1282
  editable: col.editable,
1243
1283
  dataIndex: col.dataIndex,
1244
1284
  itemProps: col.itemProps,
1245
- setValid: setValid,
1285
+ shouldUpdate: shouldUpdate,
1246
1286
  isEdit: isEdit,
1247
1287
  isHoverEdit: isHoverEdit,
1248
1288
  handleAdd: handleAdd,
@@ -1250,11 +1290,10 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1250
1290
  handleCopy: handleCopy,
1251
1291
  editEnum: typeof col.editEnum === 'function' ? col.editEnum(record) : col.editEnum,
1252
1292
  valueType: typeof col.valueType === 'function' ? col.valueType(record) : col.valueType,
1253
- handleSave: handleSave,
1254
- reWriteOriginSource: reWriteOriginSource
1293
+ handleSave: handleSave
1255
1294
  };
1256
1295
  }
1257
- });
1296
+ }, col);
1258
1297
 
1259
1298
  if (col === null || col === void 0 ? void 0 : col.children) {
1260
1299
  newCol.children = (_b = col.children) === null || _b === void 0 ? void 0 : _b.map(mapColumns);
@@ -1263,24 +1302,23 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1263
1302
  return newCol;
1264
1303
  };
1265
1304
 
1266
- var res = localColumns.map(function (col, index) {
1305
+ var res = localColumns === null || localColumns === void 0 ? void 0 : localColumns.map(function (col, index) {
1267
1306
  return mapColumns(col, index);
1268
1307
  });
1269
1308
  return res;
1270
- }, [columns, isAdd, sortOpen, useQuickOpetate, sortEditTable, dataSource, (0, _toConsumableArray2.default)(memoOptions)]);
1271
- var DraggableContainer = (0, _react.useCallback)(function (_a) {
1272
- var _b;
1309
+ }, [columns, isAdd, sortOpen, useQuickOpetate, dataSource, (0, _toConsumableArray2.default)(memoOptions)]);
1273
1310
 
1274
- var props = __rest(_a, []);
1311
+ var onSortEnd = function onSortEnd(active, over) {
1312
+ var cloneArr = (0, _toConsumableArray2.default)(dataSourceRef.current);
1313
+ var oldIndex = cloneArr.findIndex(function (v) {
1314
+ return v[_rowKey] === active;
1315
+ });
1316
+ var newIndex = cloneArr.findIndex(function (v) {
1317
+ return v[_rowKey] === over;
1318
+ });
1319
+ setDataSource((0, _sortable.arrayMove)(cloneArr, oldIndex, newIndex));
1320
+ };
1275
1321
 
1276
- return /*#__PURE__*/_react.default.createElement(_DndContainer.default, {
1277
- move: onSortEnd
1278
- }, /*#__PURE__*/_react.default.createElement(_sortableBox.default, {
1279
- items: (_b = dataSourceRef.current) === null || _b === void 0 ? void 0 : _b.map(function (item) {
1280
- return item[_rowKey];
1281
- })
1282
- }, /*#__PURE__*/_react.default.createElement("tbody", Object.assign({}, props))));
1283
- }, [sortEditTable]);
1284
1322
  var colDraggableContainer = (0, _react.useCallback)(function (_a) {
1285
1323
  var _b;
1286
1324
 
@@ -1298,40 +1336,18 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1298
1336
  }, child);
1299
1337
  }));
1300
1338
  }, [columns]);
1301
- var config = (0, _react.useMemo)(function () {
1302
- var component = {
1303
- body: Object.assign({
1304
- row: sortOpen ? EditableSortRow : EditableRow,
1305
- cell: EditableCell
1306
- }, sortOpen ? {
1307
- wrapper: DraggableContainer
1308
- } : {})
1309
- };
1310
-
1311
- if (colSortOpen) {
1312
- component['header'] = {
1313
- row: colDraggableContainer
1314
- };
1315
- }
1316
-
1317
- return Object.assign({
1318
- pagination: false,
1319
- tableLayout: 'fixed',
1320
- scroll: {
1321
- x: '100%'
1322
- },
1323
- rowKey: function rowKey(record) {
1324
- return record[_rowKey] || record.index || Math.random();
1325
- },
1326
- components: component
1327
- }, resetProps);
1328
- }, [resultColumns, dataSource, sortOpen, colSortOpen, size]);
1329
1339
  (0, _react.useImperativeHandle)(ref, function () {
1330
1340
  return {
1331
1341
  setRow: handleSave,
1332
1342
  getCheckboxRecords: function getCheckboxRecords() {
1333
1343
  return localRowSelectList.selectedRows;
1334
1344
  },
1345
+ deleteRowData: function deleteRowData(data) {
1346
+ return handleTableRowDelete(data);
1347
+ },
1348
+ addRowData: function addRowData(data, defaultValue, addInChild) {
1349
+ return addInChild === 'replace' ? handleTableRowReplace(data, defaultValue) : handleTableRowAdd(data, addInChild, defaultValue);
1350
+ },
1335
1351
  clearSelect: function clearSelect() {
1336
1352
  setLocalRowSelectList({
1337
1353
  selectedRows: []
@@ -1342,8 +1358,257 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1342
1358
  selectedRows: value
1343
1359
  });
1344
1360
  },
1345
- valid: function valid() {
1346
- return _valid;
1361
+ columns: columns.map(function (item) {
1362
+ return (0, _lodash.omit)(item, ['render', 'sorter', 'onFilter', 'filters', 'componentProps', 'formProps', 'editable']);
1363
+ }),
1364
+ // verify: async () => {
1365
+ // let allRule = {}
1366
+ // let time
1367
+ // let fullNum = 0
1368
+ // columns.forEach((col: any) => {
1369
+ // if (col?.formProps?.rules) {
1370
+ // allRule[col.dataIndex] = col?.formProps?.rules || []
1371
+ // }
1372
+ // })
1373
+ // const validator = new AsyncValidator(allRule);
1374
+ // let flag = true
1375
+ // let messageIndex = null
1376
+ // let errorRowKey = null
1377
+ // let errorInfo = null
1378
+ // const deepValidator = async (data, index) => {
1379
+ // for (let i = 0; i < data.length; i++) {
1380
+ // if (flag) {
1381
+ // try {
1382
+ // await validator.validate(data[i], (errors, fields) => {
1383
+ // if (errors) {
1384
+ // errorInfo = { errors, fields, value: data[i] };
1385
+ // flag = false
1386
+ // messageIndex = index === null ? i : index
1387
+ // errorRowKey = data?.[i]?.[rowKey]
1388
+ // } else if (data[i].children) {
1389
+ // deepValidator(data[i].children, i)
1390
+ // }
1391
+ // })
1392
+ // } catch (error) {
1393
+ // break;
1394
+ // }
1395
+ // }
1396
+ // }
1397
+ // }
1398
+ // await deepValidator(dataSource, null)
1399
+ // console.log(flag, 'fff')
1400
+ // if (flag) {
1401
+ // return Promise.resolve(dataSource)
1402
+ // } else {
1403
+ // setTimeout(() => {
1404
+ // if (messageIndex !== null) {
1405
+ // scrollToIndexRef.current?.(messageIndex, { align: 'center' })
1406
+ // time = setInterval(async () => {
1407
+ // fullNum++
1408
+ // if (fullNum > 5) {
1409
+ // clearInterval(time)
1410
+ // } else {
1411
+ // const form = (Object.values(allFormListRef.current || []).find((item: any) => item.key === errorRowKey) as any)?.form
1412
+ // if (form) {
1413
+ // try {
1414
+ // await form.validateFields()
1415
+ // console.log('验证成功')
1416
+ // } catch (error) {
1417
+ // console.log('验证失败', error)
1418
+ // return error
1419
+ // } finally {
1420
+ // clearInterval(time)
1421
+ // }
1422
+ // }
1423
+ // }
1424
+ // }, 500)
1425
+ // }
1426
+ // }, 100)
1427
+ // return Promise.reject(errorInfo)
1428
+ // }
1429
+ // },
1430
+ verify: function verify() {
1431
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee4() {
1432
+ var time, fullNum, flag, messageIndex, errorRowKey, errorInfo, deepValidator;
1433
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee4$(_context4) {
1434
+ while (1) {
1435
+ switch (_context4.prev = _context4.next) {
1436
+ case 0:
1437
+ if (!virtual) {
1438
+ _context4.next = 17;
1439
+ break;
1440
+ }
1441
+
1442
+ fullNum = 0;
1443
+ flag = true;
1444
+ messageIndex = null;
1445
+ errorRowKey = null;
1446
+ errorInfo = null;
1447
+
1448
+ deepValidator = function deepValidator(data, index) {
1449
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2() {
1450
+ var _c, i;
1451
+
1452
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
1453
+ while (1) {
1454
+ switch (_context2.prev = _context2.next) {
1455
+ case 0:
1456
+ i = 0;
1457
+
1458
+ case 1:
1459
+ if (!(i < data.length)) {
1460
+ _context2.next = 23;
1461
+ break;
1462
+ }
1463
+
1464
+ if (!flag) {
1465
+ _context2.next = 20;
1466
+ break;
1467
+ }
1468
+
1469
+ _context2.prev = 3;
1470
+ checkForm.resetFields();
1471
+ checkForm.setFieldsValue(data[i]);
1472
+ _context2.next = 8;
1473
+ return checkForm.validateFields();
1474
+
1475
+ case 8:
1476
+ if (!data[i].children) {
1477
+ _context2.next = 11;
1478
+ break;
1479
+ }
1480
+
1481
+ _context2.next = 11;
1482
+ return deepValidator(data[i].children, i);
1483
+
1484
+ case 11:
1485
+ _context2.next = 20;
1486
+ break;
1487
+
1488
+ case 13:
1489
+ _context2.prev = 13;
1490
+ _context2.t0 = _context2["catch"](3);
1491
+ errorInfo = {
1492
+ error: _context2.t0,
1493
+ value: data[i]
1494
+ };
1495
+ flag = false;
1496
+ messageIndex = index === null ? i : index;
1497
+ errorRowKey = (_c = data === null || data === void 0 ? void 0 : data[i]) === null || _c === void 0 ? void 0 : _c[_rowKey];
1498
+ return _context2.abrupt("break", 23);
1499
+
1500
+ case 20:
1501
+ i++;
1502
+ _context2.next = 1;
1503
+ break;
1504
+
1505
+ case 23:
1506
+ case "end":
1507
+ return _context2.stop();
1508
+ }
1509
+ }
1510
+ }, _callee2, null, [[3, 13]]);
1511
+ }));
1512
+ };
1513
+
1514
+ _context4.next = 9;
1515
+ return deepValidator(dataSource, null);
1516
+
1517
+ case 9:
1518
+ if (!flag) {
1519
+ _context4.next = 13;
1520
+ break;
1521
+ }
1522
+
1523
+ return _context4.abrupt("return", Promise.resolve(dataSource));
1524
+
1525
+ case 13:
1526
+ setTimeout(function () {
1527
+ var _a;
1528
+
1529
+ if (messageIndex !== null) {
1530
+ (_a = scrollToIndexRef.current) === null || _a === void 0 ? void 0 : _a.call(scrollToIndexRef, messageIndex, {
1531
+ align: 'center'
1532
+ });
1533
+ time = setInterval(function () {
1534
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee3() {
1535
+ var _b, form;
1536
+
1537
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee3$(_context3) {
1538
+ while (1) {
1539
+ switch (_context3.prev = _context3.next) {
1540
+ case 0:
1541
+ fullNum++;
1542
+
1543
+ if (!(fullNum > 5)) {
1544
+ _context3.next = 5;
1545
+ break;
1546
+ }
1547
+
1548
+ clearInterval(time);
1549
+ _context3.next = 20;
1550
+ break;
1551
+
1552
+ case 5:
1553
+ form = (_b = Object.values(allFormListRef.current || []).find(function (item) {
1554
+ return item.key === errorRowKey;
1555
+ })) === null || _b === void 0 ? void 0 : _b.form;
1556
+
1557
+ if (!form) {
1558
+ _context3.next = 20;
1559
+ break;
1560
+ }
1561
+
1562
+ _context3.prev = 7;
1563
+ _context3.next = 10;
1564
+ return form.validateFields();
1565
+
1566
+ case 10:
1567
+ console.log('验证成功');
1568
+ _context3.next = 17;
1569
+ break;
1570
+
1571
+ case 13:
1572
+ _context3.prev = 13;
1573
+ _context3.t0 = _context3["catch"](7);
1574
+ console.log('验证失败', _context3.t0);
1575
+ return _context3.abrupt("return", _context3.t0);
1576
+
1577
+ case 17:
1578
+ _context3.prev = 17;
1579
+ clearInterval(time);
1580
+ return _context3.finish(17);
1581
+
1582
+ case 20:
1583
+ case "end":
1584
+ return _context3.stop();
1585
+ }
1586
+ }
1587
+ }, _callee3, null, [[7, 13, 17, 20]]);
1588
+ }));
1589
+ }, 300);
1590
+ }
1591
+ }, 100);
1592
+ return _context4.abrupt("return", Promise.reject(errorInfo));
1593
+
1594
+ case 15:
1595
+ _context4.next = 18;
1596
+ break;
1597
+
1598
+ case 17:
1599
+ return _context4.abrupt("return", Promise.all(Object.values(allFormListRef.current || []).map(function (item) {
1600
+ var _a;
1601
+
1602
+ return (_a = item === null || item === void 0 ? void 0 : item.form) === null || _a === void 0 ? void 0 : _a.validateFields();
1603
+ })));
1604
+
1605
+ case 18:
1606
+ case "end":
1607
+ return _context4.stop();
1608
+ }
1609
+ }
1610
+ }, _callee4);
1611
+ }));
1347
1612
  }
1348
1613
  };
1349
1614
  });
@@ -1351,22 +1616,157 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1351
1616
  return isEdit && isAdd || isHoverEdit && isAdd;
1352
1617
  }, [isEdit, isAdd, isHoverEdit]);
1353
1618
 
1619
+ var pushAllForm = function pushAllForm(form, key, index) {
1620
+ allFormListRef.current[key] = {
1621
+ form: form,
1622
+ key: key,
1623
+ index: index
1624
+ };
1625
+ };
1626
+
1627
+ var config = (0, _react.useRef)(Object.assign({
1628
+ pagination: false,
1629
+ tableLayout: 'fixed',
1630
+ scroll: {
1631
+ x: '100%'
1632
+ },
1633
+ rowKey: function rowKey(record) {
1634
+ return record[_rowKey] || record.index || Math.random();
1635
+ },
1636
+ components: {
1637
+ table: virtual ? function (props) {
1638
+ return /*#__PURE__*/_react.default.createElement(_virtual.VirtualTable, Object.assign({}, props, {
1639
+ fn: scrollToIndexRef
1640
+ }));
1641
+ } : null,
1642
+ body: Object.assign({
1643
+ row: function row(rowProps) {
1644
+ return sortOpen ? EditableSortRow(Object.assign(Object.assign({}, rowProps), {
1645
+ virtual: virtual
1646
+ })) : EditableRow(Object.assign(Object.assign({}, rowProps), {
1647
+ virtual: virtual
1648
+ }));
1649
+ },
1650
+ cell: props.shouldUpdate ? EditableCell : MemoEditableCell
1651
+ }, sortOpen ? {
1652
+ wrapper: function wrapper(wrapperProps) {
1653
+ var _a, _b, _c;
1654
+
1655
+ return (0, _components.DraggableContainer)(Object.assign(Object.assign({}, wrapperProps), {
1656
+ virtual: virtual,
1657
+ keys: (_a = dataSourceRef.current) === null || _a === void 0 ? void 0 : _a.map(function (item) {
1658
+ return item[_rowKey];
1659
+ }),
1660
+ options: dataSourceRef.current,
1661
+ rowKey: _rowKey,
1662
+ onSortEnd: onSortEnd,
1663
+ tableWidth: (_c = (_b = tableWarpRef === null || tableWarpRef === void 0 ? void 0 : tableWarpRef.current) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect()) === null || _c === void 0 ? void 0 : _c.width
1664
+ }));
1665
+ }
1666
+ } : virtual ? {
1667
+ wrapper: _virtual.VirtualWrapper
1668
+ } : {}),
1669
+ header: {
1670
+ row: colSortOpen ? colDraggableContainer : null
1671
+ }
1672
+ },
1673
+ onRow: function onRow(record, index) {
1674
+ var _a;
1675
+
1676
+ return {
1677
+ disabled: disabled || !!((_a = disabledDataSourceRowKeys.current) === null || _a === void 0 ? void 0 : _a.includes(record[_rowKey])),
1678
+ dataKey: record[_rowKey],
1679
+ index: index,
1680
+ pushAllForm: pushAllForm
1681
+ };
1682
+ }
1683
+ }, resetProps));
1684
+ (0, _react.useEffect)(function () {
1685
+ var _a;
1686
+
1687
+ if (autoSizer) {
1688
+ var tableClient = (_a = tableWarpRef === null || tableWarpRef === void 0 ? void 0 : tableWarpRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
1689
+ var height = (tableClient === null || tableClient === void 0 ? void 0 : tableClient.height) || '100%';
1690
+ var TailorHeight = size === 'middle' ? 48 : 40;
1691
+
1692
+ if (isAdd) {
1693
+ TailorHeight += 48;
1694
+ }
1695
+
1696
+ if (props.summary) {
1697
+ TailorHeight += 48;
1698
+ }
1699
+
1700
+ if (props.pagination) {
1701
+ TailorHeight += 48;
1702
+ }
1703
+
1704
+ autoSizerRef.current = {
1705
+ width: tableClient === null || tableClient === void 0 ? void 0 : tableClient.width,
1706
+ height: typeof height === 'string' ? "calc(".concat(height, " - ").concat(TailorHeight, "px)") : height - TailorHeight
1707
+ };
1708
+ }
1709
+ }, []);
1710
+ var checkFormItem = (0, _react.useMemo)(function () {
1711
+ var arr = [];
1712
+ columns.forEach(function (item) {
1713
+ var _a;
1714
+
1715
+ if (item.children) {
1716
+ (_a = item.children) === null || _a === void 0 ? void 0 : _a.forEach(function (c) {
1717
+ arr.push( /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
1718
+ noStyle: true,
1719
+ key: c.dataIndex,
1720
+ name: c.dataIndex
1721
+ }, (c === null || c === void 0 ? void 0 : c['formProps']) || {}), c.dataIndex || 'text'));
1722
+ });
1723
+ } else {
1724
+ arr.push( /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form.Item, Object.assign({
1725
+ noStyle: true,
1726
+ key: item.dataIndex,
1727
+ name: item.dataIndex
1728
+ }, (item === null || item === void 0 ? void 0 : item['formProps']) || {}), item.dataIndex || 'text'));
1729
+ }
1730
+ });
1731
+ return arr;
1732
+ }, [columns]);
1733
+
1354
1734
  if (colSortOpen) {
1355
1735
  return /*#__PURE__*/_react.default.createElement("div", {
1356
- className: "lm_editTable_warpper"
1736
+ className: "lm_editTable_warpper",
1737
+ ref: tableWarpRef
1738
+ }, /*#__PURE__*/_react.default.createElement(_ConfigProvider.default, {
1739
+ renderEmpty: loading ? function () {
1740
+ return null;
1741
+ } : _components.CustomizeRenderEmpty
1357
1742
  }, /*#__PURE__*/_react.default.createElement(_DndContainer.default, {
1743
+ rowKey: _rowKey,
1744
+ options: resultColumns,
1358
1745
  move: onColSortEnd
1359
1746
  }, /*#__PURE__*/_react.default.createElement(_sortableBoxCol.default, {
1360
1747
  items: columns.reduce(function (acc, item) {
1361
1748
  return [].concat((0, _toConsumableArray2.default)(acc), [item.dataIndex]);
1362
1749
  }, [])
1363
- }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config, {
1750
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, (0, _util.checkDataSourceIsEmpty)(config.current, dataSourceRef.current, autoSizerRef.current), {
1751
+ loading: loading,
1364
1752
  size: size || 'small',
1365
1753
  columns: resultColumns,
1366
1754
  rowClassName: "editable-row",
1367
1755
  bordered: true,
1368
1756
  pagination: false,
1369
- // components={tableComponents}
1757
+ expandable: Object.assign({
1758
+ expandedRowKeys: expandedRowKeys,
1759
+ fixed: true,
1760
+ indentSize: 0,
1761
+ expandIconColumnIndex: (0, _util.checkExpandIconColumnIndex)({
1762
+ rowSelection: rowSelection,
1763
+ sortOpen: sortOpen,
1764
+ indexCol: indexCol
1765
+ }) || 0,
1766
+ onExpandedRowsChange: function onExpandedRowsChange(expandedRows) {
1767
+ return setExpandedRowKeys(expandedRows);
1768
+ }
1769
+ }, resetProps === null || resetProps === void 0 ? void 0 : resetProps.expandable),
1370
1770
  rowSelection: !rowSelection ? undefined : Object.assign(Object.assign({
1371
1771
  fixed: true,
1372
1772
  type: 'checkbox',
@@ -1376,40 +1776,57 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1376
1776
  return (0, _lodash.isObject)(v) ? v[_rowKey] : v;
1377
1777
  }),
1378
1778
  onChange: function onChange(selectedRowKeys, selectedRows, info) {
1379
- // editTableRowChange(selectedRowKeys, selectedRows, info)
1380
1779
  setLocalRowSelectList(selectedRowKeys, selectedRows, info);
1381
1780
  }
1382
1781
  }),
1383
1782
  dataSource: dataSource
1384
- })))), isShowAddAction && /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
1385
- className: "lm_editTable_add_bar",
1386
- type: "dashed",
1387
- onClick: handleAdd,
1783
+ }))))), /*#__PURE__*/_react.default.createElement(_components.BottomOpetateComponent, {
1784
+ disabled: disabled,
1785
+ isShowAddAction: isShowAddAction,
1786
+ recordCreatorProps: recordCreatorProps,
1787
+ handleAdd: handleAdd
1788
+ }), /*#__PURE__*/_react.default.createElement("div", {
1388
1789
  style: {
1389
- marginTop: 8
1790
+ display: 'none'
1390
1791
  }
1391
- }, /*#__PURE__*/_react.default.createElement(_icons.PlusCircleOutlined, {
1392
- className: "lmweb-plus"
1393
- }), "\u65B0\u589E"));
1792
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form, {
1793
+ form: checkForm,
1794
+ component: false
1795
+ }, checkFormItem)));
1394
1796
  } // @ts-ignore
1395
1797
 
1396
1798
 
1397
1799
  return /*#__PURE__*/_react.default.createElement("div", {
1398
- className: "lm_editTable_warpper"
1399
- }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config, {
1800
+ className: (0, _classnames.default)('lm_editTable_warpper', autoSizer && 'lm_editable_autosize'),
1801
+ ref: tableWarpRef
1802
+ }, /*#__PURE__*/_react.default.createElement(_ConfigProvider.default, {
1803
+ renderEmpty: loading ? function () {
1804
+ return null;
1805
+ } : _components.CustomizeRenderEmpty
1806
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, (0, _util.checkDataSourceIsEmpty)(config.current, dataSourceRef.current, autoSizerRef.current), {
1400
1807
  size: size || 'small',
1401
1808
  columns: resultColumns,
1402
1809
  rowClassName: "editable-row",
1403
1810
  bordered: true,
1811
+ loading: loading,
1812
+ style: autoSizer ? {
1813
+ height: isAdd ? "calc(100% - ".concat(48, "px)") : '100%'
1814
+ } : undefined,
1404
1815
  pagination: false,
1405
1816
  // components={tableComponents}
1406
- expandable: (resetProps === null || resetProps === void 0 ? void 0 : resetProps.expandable) || {
1817
+ expandable: Object.assign({
1407
1818
  expandedRowKeys: expandedRowKeys,
1408
1819
  fixed: true,
1820
+ indentSize: 0,
1821
+ expandIconColumnIndex: (0, _util.checkExpandIconColumnIndex)({
1822
+ rowSelection: rowSelection,
1823
+ sortOpen: sortOpen,
1824
+ indexCol: indexCol
1825
+ }) || 0,
1409
1826
  onExpandedRowsChange: function onExpandedRowsChange(expandedRows) {
1410
1827
  return setExpandedRowKeys(expandedRows);
1411
1828
  }
1412
- },
1829
+ }, resetProps === null || resetProps === void 0 ? void 0 : resetProps.expandable),
1413
1830
  rowSelection: !rowSelection ? undefined : Object.assign(Object.assign({
1414
1831
  fixed: true,
1415
1832
  type: 'checkbox',
@@ -1423,16 +1840,19 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1423
1840
  }
1424
1841
  }),
1425
1842
  dataSource: dataSource
1426
- })), isShowAddAction && /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
1427
- className: "lm_editTable_add_bar",
1428
- type: "dashed",
1429
- onClick: (recordCreatorProps === null || recordCreatorProps === void 0 ? void 0 : recordCreatorProps.customAddClick) || handleAdd,
1430
- style: Object.assign({
1431
- marginTop: 8
1432
- }, (recordCreatorProps === null || recordCreatorProps === void 0 ? void 0 : recordCreatorProps.style) || {})
1433
- }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
1434
- type: "lmweb-plus"
1435
- }), (recordCreatorProps === null || recordCreatorProps === void 0 ? void 0 : recordCreatorProps.creatorButtonText) || '新增'));
1843
+ }))), /*#__PURE__*/_react.default.createElement(_components.BottomOpetateComponent, {
1844
+ disabled: disabled,
1845
+ isShowAddAction: isShowAddAction,
1846
+ recordCreatorProps: recordCreatorProps,
1847
+ handleAdd: handleAdd
1848
+ }), /*#__PURE__*/_react.default.createElement("div", {
1849
+ style: {
1850
+ display: 'none'
1851
+ }
1852
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Form, {
1853
+ form: checkForm,
1854
+ component: false
1855
+ }, checkFormItem)));
1436
1856
  });
1437
1857
 
1438
1858
  var _default = /*#__PURE__*/(0, _react.memo)(EditTable);