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
@@ -43,6 +43,7 @@ var range = function range(start, end) {
43
43
  * @param {Array} data
44
44
  * @param {string} key
45
45
  * @return {Object}
46
+ * 时间复杂度O(n), 空间复杂度O(n)
46
47
  */
47
48
 
48
49
 
@@ -75,7 +76,7 @@ function dataGroup(data, key) {
75
76
  */
76
77
 
77
78
 
78
- function transformWithColGroup(columns, dataSource, groupColKeys) {
79
+ function transformWithColGroup(columns, dataSource, groupColKeys, groupRowKeys) {
79
80
  if (!Array.isArray(groupColKeys) || !groupColKeys.length) {
80
81
  return {
81
82
  columns: columns,
@@ -83,7 +84,19 @@ function transformWithColGroup(columns, dataSource, groupColKeys) {
83
84
  };
84
85
  }
85
86
 
86
- var columnsCopy = _lodash.default.cloneDeep(columns);
87
+ columns.forEach(function (c) {
88
+ if (groupRowKeys.includes(c.dataIndex)) {
89
+ c.show = false;
90
+ }
91
+ });
92
+
93
+ var columnsCopy = _lodash.default.cloneDeep(columns.filter(function (item) {
94
+ return item.joinCol;
95
+ }));
96
+
97
+ var unColumns = _lodash.default.cloneDeep(columns.filter(function (item) {
98
+ return !item.joinCol;
99
+ }));
87
100
 
88
101
  var dataSourceCopy = _lodash.default.cloneDeep(dataSource); // 去重
89
102
 
@@ -95,6 +108,7 @@ function transformWithColGroup(columns, dataSource, groupColKeys) {
95
108
  * @param {Array<string>} oGroup 数组,列分组的keys值
96
109
  * @param {string} markStr
97
110
  * @returns
111
+ * 2万条数据 393ms
98
112
  */
99
113
 
100
114
  var groupBy = function groupBy(source, columns, oGroup, markStr) {
@@ -131,6 +145,7 @@ function transformWithColGroup(columns, dataSource, groupColKeys) {
131
145
  };
132
146
 
133
147
  var tempColumns = groupBy(dataSourceCopy, columnsCopy, groupColKeysCopy, null);
148
+ tempColumns = unColumns.concat(tempColumns);
134
149
  var keyMap = new Map();
135
150
  var __index = 0;
136
151
 
@@ -210,6 +225,11 @@ function transformWithRowGroup(dataSource, groupRowKeys) {
210
225
  var i = 0;
211
226
  var map = lastFilter.reduce(function (acc, el) {
212
227
  var value = el[filterKey];
228
+
229
+ if (value === undefined) {
230
+ value = '-';
231
+ }
232
+
213
233
  acc[value] = [].concat((0, _toConsumableArray2.default)(acc[value] || []), [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, el), {}, {
214
234
  __index: i
215
235
  })]);
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  interface rowProps {
3
- children: any;
3
+ children?: any;
4
4
  }
5
5
  declare const VirtualRow: React.NamedExoticComponent<rowProps>;
6
6
  export default VirtualRow;
@@ -13,33 +13,63 @@ var __rest = this && this.__rest || function (s, e) {
13
13
 
14
14
  import React, { useRef, useMemo, useEffect } from 'react';
15
15
  import { useStore } from './context';
16
- var VirtualRow = /*#__PURE__*/React.memo(function (_a, ref) {
17
- var children = _a.children,
18
- resetProps = __rest(_a, ["children"]);
16
+
17
+ var useOptions = function useOptions(_ref) {
18
+ var children = _ref.children,
19
+ ref = _ref.ref,
20
+ trRef = _ref.trRef;
19
21
 
20
22
  var _useStore = useStore(),
21
23
  state = _useStore.state,
22
24
  dispatch = _useStore.dispatch,
23
25
  instance = _useStore.instance;
24
26
 
27
+ var virtualItems = instance.columnVirtual.virtualItems;
25
28
  var rowHeight = state.rowHeight,
26
29
  totalLen = state.totalLen;
27
- var virtualItems = instance.columnVirtual.virtualItems;
28
- var trRef = useRef(null); // 列长度
30
+ var sliceColumns = useMemo(function () {
31
+ return children === null || children === void 0 ? void 0 : children.reduce(function (pre, cur) {
32
+ var _a, _b;
29
33
 
30
- var columnsLen = useMemo(function () {
31
- var _a;
34
+ if (typeof ((_a = cur.props) === null || _a === void 0 ? void 0 : _a.fixLeft) === 'number') {
35
+ pre.leftColumns.push(cur);
36
+ return pre;
37
+ }
38
+
39
+ if (typeof ((_b = cur.props) === null || _b === void 0 ? void 0 : _b.fixRight) === 'number') {
40
+ pre.rightColumns.push(cur);
41
+ return pre;
42
+ }
32
43
 
33
- return (_a = children === null || children === void 0 ? void 0 : children.length) !== null && _a !== void 0 ? _a : 0;
44
+ pre.centerColumns.push(cur);
45
+ return pre;
46
+ }, {
47
+ leftColumns: [],
48
+ rightColumns: [],
49
+ centerColumns: []
50
+ });
34
51
  }, [children]);
35
52
  useEffect(function () {
36
- if (state.columnsLen !== columnsLen) {
53
+ dispatch({
54
+ type: 'changeSliceColumns',
55
+ sliceColumns: sliceColumns
56
+ });
57
+ }, [sliceColumns]); // 非固定列长度
58
+
59
+ var centerColumnsLen = useMemo(function () {
60
+ var _a;
61
+
62
+ return (_a = sliceColumns.centerColumns.length) !== null && _a !== void 0 ? _a : 0;
63
+ }, [sliceColumns]);
64
+ useEffect(function () {
65
+ if (state.columnsLen !== centerColumnsLen) {
37
66
  dispatch({
38
67
  type: 'changeColumnsLen',
39
- columnsLen: columnsLen !== null && columnsLen !== void 0 ? columnsLen : 0
68
+ columnsLen: centerColumnsLen !== null && centerColumnsLen !== void 0 ? centerColumnsLen : 0
40
69
  });
41
70
  }
42
- }, [columnsLen, dispatch, state.columnsLen]);
71
+ }, [centerColumnsLen, dispatch, state.columnsLen]); // 获取行的高度
72
+
43
73
  useEffect(function () {
44
74
  var initHeight = function initHeight(tempRef) {
45
75
  var _a, _b, _c;
@@ -48,55 +78,59 @@ var VirtualRow = /*#__PURE__*/React.memo(function (_a, ref) {
48
78
  var tempRowHeight = (_c = (_b = tempRef === null || tempRef === void 0 ? void 0 : tempRef.current) === null || _b === void 0 ? void 0 : _b.offsetHeight) !== null && _c !== void 0 ? _c : 0;
49
79
  dispatch({
50
80
  type: 'initHeight',
51
- rowHeight: tempRowHeight
81
+ rowHeight: tempRowHeight + 1
52
82
  });
53
83
  }
54
84
  };
55
85
 
56
86
  initHeight(Object.prototype.hasOwnProperty.call(ref, 'current') ? ref : trRef);
57
- }, [trRef, dispatch, rowHeight, totalLen, ref]); // return {fixedLeft: [], fixedRight: [], columns: []}
58
-
59
- var fixedColumns = useMemo(function () {
60
- return children === null || children === void 0 ? void 0 : children.reduce(function (pre, cur) {
61
- var _a, _b;
87
+ }, [trRef, dispatch, rowHeight, totalLen, ref]); // 横向单元格合并
62
88
 
63
- if (typeof ((_a = cur.props) === null || _a === void 0 ? void 0 : _a.fixLeft) === 'number') {
64
- pre.fixedLeft.push(cur);
65
- return pre;
66
- }
89
+ var leftColSpan = useMemo(function () {
90
+ var _a;
67
91
 
68
- if (typeof ((_b = cur.props) === null || _b === void 0 ? void 0 : _b.fixRight) === 'number') {
69
- pre.fixedRight.push(cur);
70
- return pre;
71
- }
92
+ return (_a = virtualItems[0]) === null || _a === void 0 ? void 0 : _a.index;
93
+ }, [virtualItems]); // 右侧隐藏数量
94
+
95
+ var rightColSpan = useMemo(function () {
96
+ return sliceColumns.centerColumns.length - virtualItems.length - leftColSpan || 0;
97
+ }, [sliceColumns.centerColumns.length, virtualItems.length, leftColSpan]);
98
+ return Object.assign(Object.assign({
99
+ virtualItems: virtualItems
100
+ }, sliceColumns), {
101
+ leftColSpan: leftColSpan,
102
+ rightColSpan: rightColSpan
103
+ });
104
+ };
72
105
 
73
- pre.columns.push(cur);
74
- return pre;
75
- }, {
76
- fixedLeft: [],
77
- fixedRight: [],
78
- columns: []
79
- });
80
- }, [children]); // 截取非固定列
106
+ var VirtualRow = /*#__PURE__*/React.memo(function (_a, ref) {
107
+ var children = _a.children,
108
+ resetProps = __rest(_a, ["children"]);
81
109
 
82
- var resetVirtualItems = useMemo(function () {
83
- var fixedLeft = fixedColumns.fixedLeft,
84
- columns = fixedColumns.columns;
85
- return virtualItems.slice(fixedLeft.length, fixedLeft.length + columns.length);
86
- }, [fixedColumns, virtualItems]); // 横线单元格合并
110
+ var trRef = useRef(null);
87
111
 
88
- var colSpan = useMemo(function () {
89
- var _a;
112
+ var _useOptions = useOptions({
113
+ children: children,
114
+ ref: ref,
115
+ trRef: trRef
116
+ }),
117
+ virtualItems = _useOptions.virtualItems,
118
+ leftColumns = _useOptions.leftColumns,
119
+ centerColumns = _useOptions.centerColumns,
120
+ rightColumns = _useOptions.rightColumns,
121
+ leftColSpan = _useOptions.leftColSpan,
122
+ rightColSpan = _useOptions.rightColSpan;
90
123
 
91
- var startIndex = ((_a = resetVirtualItems === null || resetVirtualItems === void 0 ? void 0 : resetVirtualItems[0]) === null || _a === void 0 ? void 0 : _a.index) || 0;
92
- return startIndex ? startIndex - fixedColumns.fixedLeft.length : startIndex;
93
- }, [fixedColumns, resetVirtualItems]);
94
124
  return /*#__PURE__*/React.createElement("tr", Object.assign({}, resetProps, {
95
125
  ref: Object.prototype.hasOwnProperty.call(ref, 'current') ? ref : trRef
96
- }), fixedColumns.fixedLeft, !!colSpan && /*#__PURE__*/React.createElement("td", {
97
- colSpan: colSpan
98
- }), resetVirtualItems.map(function (virtualCol) {
99
- return children[virtualCol.index];
100
- }), fixedColumns.fixedRight);
126
+ }), leftColumns, !!leftColSpan && /*#__PURE__*/React.createElement("td", {
127
+ key: "leftColSpan",
128
+ colSpan: leftColSpan
129
+ }), virtualItems.map(function (virtualCol) {
130
+ return centerColumns[virtualCol.index];
131
+ }), !!rightColSpan && /*#__PURE__*/React.createElement("td", {
132
+ key: "rightColSpan",
133
+ colSpan: rightColSpan
134
+ }), rightColumns);
101
135
  });
102
136
  export default VirtualRow;
@@ -1,16 +1,36 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import React, { useRef } from 'react';
2
+
3
+ var __rest = this && this.__rest || function (s, e) {
4
+ var t = {};
5
+
6
+ for (var p in s) {
7
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
8
+ }
9
+
10
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
11
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
12
+ }
13
+ return t;
14
+ };
15
+
16
+ import React, { useCallback, useRef } from 'react';
3
17
  import { useVirtual } from 'react-virtual';
18
+ import cls from 'classnames';
4
19
  import { TableContext, useRealive } from './context';
20
+ import CustomizeRenderEmpty from '../components/customRenderEmpty';
5
21
  var VirtualTable = /*#__PURE__*/React.memo(function (tableProps) {
6
22
  var _a, _b, _c, _d;
7
23
 
24
+ var className = tableProps.className,
25
+ isEmpty = tableProps.isEmpty,
26
+ rest = __rest(tableProps, ["className", "isEmpty"]);
27
+
8
28
  var bodyRef = useRef(null);
9
29
 
10
30
  var _useRealive = useRealive(),
11
31
  _useRealive2 = _slicedToArray(_useRealive, 2),
12
32
  state = _useRealive2[0],
13
- dispatch = _useRealive2[1]; // { totalSize, virtualItems }
33
+ dispatch = _useRealive2[1]; // 行虚拟化 { totalSize, virtualItems }
14
34
 
15
35
 
16
36
  var rowVirtual = useVirtual({
@@ -23,18 +43,26 @@ var VirtualTable = /*#__PURE__*/React.memo(function (tableProps) {
23
43
  return state.rowHeight;
24
44
  }, [state.rowHeight]),
25
45
  overscan: 5
26
- });
46
+ }); // 列动态宽度
47
+
48
+ var columnEstimateSize = useCallback(function (i) {
49
+ var _a, _b;
50
+
51
+ var colWidths = (_b = (_a = tableProps === null || tableProps === void 0 ? void 0 : tableProps.children[0]) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.colWidths;
52
+ var leftColumnsLen = state.sliceColumns.leftColumns.length;
53
+ var centerColumnsLen = state.sliceColumns.centerColumns.length; // 获取非固定列
54
+
55
+ var virList = colWidths.slice(leftColumnsLen, leftColumnsLen + centerColumnsLen);
56
+ return virList[i] || 0;
57
+ }, [(_c = (_b = tableProps.children[0]) === null || _b === void 0 ? void 0 : _b.props) === null || _c === void 0 ? void 0 : _c.colWidths, state.sliceColumns.leftColumns.length, state.sliceColumns.centerColumns.length]); // 列虚拟化
58
+
27
59
  var columnVirtual = useVirtual({
28
60
  horizontal: true,
29
61
  size: state.columnsLen,
30
62
  parentRef: {
31
- current: (_b = bodyRef === null || bodyRef === void 0 ? void 0 : bodyRef.current) === null || _b === void 0 ? void 0 : _b.parentNode
63
+ current: (_d = bodyRef === null || bodyRef === void 0 ? void 0 : bodyRef.current) === null || _d === void 0 ? void 0 : _d.parentNode
32
64
  },
33
- estimateSize: React.useCallback(function (i) {
34
- var _a, _b;
35
-
36
- return (_b = (_a = tableProps === null || tableProps === void 0 ? void 0 : tableProps.children[0]) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.colWidths[i];
37
- }, [(_d = (_c = tableProps.children[0]) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.colWidths]),
65
+ estimateSize: columnEstimateSize,
38
66
  overscan: 5
39
67
  });
40
68
  var instance = {
@@ -47,8 +75,12 @@ var VirtualTable = /*#__PURE__*/React.memo(function (tableProps) {
47
75
  dispatch: dispatch,
48
76
  instance: instance
49
77
  }
50
- }, /*#__PURE__*/React.createElement("table", Object.assign({
78
+ }, isEmpty ? /*#__PURE__*/React.createElement("table", Object.assign({
79
+ className: cls('lm_virtual_table', className),
80
+ ref: bodyRef
81
+ }, rest), /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement(CustomizeRenderEmpty, null))))) : /*#__PURE__*/React.createElement("table", Object.assign({
82
+ className: cls('lm_virtual_table', className),
51
83
  ref: bodyRef
52
- }, tableProps)));
84
+ }, rest)));
53
85
  });
54
86
  export default VirtualTable;
@@ -15,13 +15,20 @@ var initialState = {
15
15
  rowHeight: 0,
16
16
  columnsLen: 0,
17
17
  // 总行数
18
- totalLen: 0
18
+ totalLen: 0,
19
+ // 分割后的列数组
20
+ sliceColumns: {
21
+ leftColumns: [],
22
+ centerColumns: [],
23
+ rightColumns: []
24
+ }
19
25
  };
20
26
 
21
27
  var reducer = function reducer(state, action) {
22
28
  var totalLen = action.totalLen,
23
29
  columnsLen = action.columnsLen,
24
- rowHeight = action.rowHeight;
30
+ rowHeight = action.rowHeight,
31
+ sliceColumns = action.sliceColumns;
25
32
 
26
33
  switch (action.type) {
27
34
  // 数据数量
@@ -42,6 +49,11 @@ var reducer = function reducer(state, action) {
42
49
  rowHeight: rowHeight
43
50
  });
44
51
 
52
+ case 'changeSliceColumns':
53
+ return Object.assign(Object.assign({}, state), {
54
+ sliceColumns: sliceColumns
55
+ });
56
+
45
57
  default:
46
58
  throw new Error();
47
59
  }
@@ -370,7 +370,7 @@ var useCoreOptions = function useCoreOptions(_ref) {
370
370
 
371
371
  var filesLoopCheck = useCallback(function (files) {
372
372
  return Promise.all(files.map(fileCheckAsync));
373
- }, []);
373
+ }, [fileCheckAsync]);
374
374
  /*
375
375
  * 上传前: 先校验 => 全部校验通过后开始上传
376
376
  * 事件执行顺序:
package/es/Modal/index.js CHANGED
@@ -41,12 +41,12 @@ var CLMModal = function CLMModal(props) {
41
41
  cancelText = props.cancelText;
42
42
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, Object.assign({
43
43
  onClick: onCancel,
44
- key: 'canncel_button',
44
+ key: "canncel_button",
45
45
  size: defaultFooterSize
46
46
  }, props.cancelButtonProps), cancelText || contextLocale.cancelText), /*#__PURE__*/React.createElement(Button, Object.assign({
47
47
  type: "primary",
48
48
  onClick: onOk,
49
- key: 'ok_button',
49
+ key: "ok_button",
50
50
  size: defaultFooterSize
51
51
  }, props.okButtonProps), okText !== null && okText !== void 0 ? okText : contextLocale.okText));
52
52
  });
@@ -95,7 +95,14 @@ LMModal.warn = function (props) {
95
95
  };
96
96
 
97
97
  LMModal.confirm = function (props) {
98
- return _Modal.confirm(Object.assign(Object.assign({}, props), {
98
+ var okText = props.okText,
99
+ cancelText = props.cancelText,
100
+ resetProps = __rest(props, ["okText", "cancelText"]);
101
+
102
+ var runtimeLocale = getConfirmLocale();
103
+ return _Modal.confirm(Object.assign(Object.assign({}, resetProps), {
104
+ okText: okText || (props.okCancel ? runtimeLocale.okText : runtimeLocale.justOkText),
105
+ cancelText: cancelText || runtimeLocale.cancelText,
99
106
  wrapClassName: classNames(props.wrapClassName, prefixCls, 'lm_modal_info')
100
107
  }));
101
108
  };
package/es/Radio/index.js CHANGED
@@ -19,13 +19,21 @@ var _classnames = _interopRequireDefault(require("classnames"));
19
19
 
20
20
  var _react = _interopRequireDefault(require("react"));
21
21
 
22
- var _excluded = ["children"],
22
+ var _DisabledContext = _interopRequireDefault(require("../ConfigProvider/DisabledContext"));
23
+
24
+ var _excluded = ["children", "disabled"],
23
25
  _excluded2 = ["children", "size", "buttonStyle", "direction", "className"];
24
26
 
25
27
  var LMRadio = function LMRadio(props) {
26
28
  var children = props.children,
29
+ customDisabled = props.disabled,
27
30
  restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
31
+
32
+ var disabled = _react.default.useContext(_DisabledContext.default);
33
+
34
+ var mergedDisabled = customDisabled || disabled;
28
35
  return /*#__PURE__*/_react.default.createElement(_radio.default, (0, _extends2.default)({
36
+ disabled: mergedDisabled,
29
37
  className: "lm-radio"
30
38
  }, restProps), children);
31
39
  };
@@ -17,16 +17,21 @@ var __rest = this && this.__rest || function (s, e) {
17
17
 
18
18
  import React from 'react';
19
19
  import cls from 'classnames';
20
+ import DisabledContext from '../ConfigProvider/DisabledContext';
20
21
 
21
22
  var Switch = function Switch(props) {
22
23
  var _props$size = props.size,
23
24
  size = _props$size === void 0 ? 'default' : _props$size,
24
25
  className = props.className,
25
- restProps = __rest(props, ["size", "className"]);
26
+ customDisabled = props.disabled,
27
+ restProps = __rest(props, ["size", "className", "disabled"]);
26
28
 
29
+ var disabled = React.useContext(DisabledContext);
30
+ var mergedDisabled = customDisabled || disabled;
27
31
  var classs = cls('lm-switch', className, _defineProperty({}, "lm-switch-".concat(size), size));
28
32
  return /*#__PURE__*/React.createElement(_Switch, Object.assign({
29
- className: classs
33
+ className: classs,
34
+ disabled: mergedDisabled
30
35
  }, restProps, {
31
36
  size: size
32
37
  }));
@@ -9,7 +9,7 @@ function useEvent(handler) {
9
9
 
10
10
  return useCallback(function () {
11
11
  var fn = handlerRef.current;
12
- return fn.apply(void 0, arguments);
12
+ return fn === null || fn === void 0 ? void 0 : fn.apply(void 0, arguments);
13
13
  }, []);
14
14
  }
15
15
 
package/es/index.d.ts CHANGED
@@ -51,10 +51,9 @@ export type { TooltipProps } from './Tooltip';
51
51
  export { default as Form } from './Form';
52
52
  export { default as Spin } from './Spin';
53
53
  export { default as LmEditTable } from './LmEditTable';
54
- export type { CountdownHandle, TLmEditTable } from './LmEditTable/EditTable';
54
+ export type { TLmEditTable, CountdownHandle } from './LmEditTable/EditTable';
55
55
  export { default as List } from './List';
56
56
  export { default as LMQuickMenu } from './QuickMenu';
57
- export type { IMenuData, IQuickMenuProps } from './QuickMenu';
58
57
  export { default as DatePicker } from './DatePicker';
59
58
  export type { DatePickerProps, MonthPickerProps, WeekPickerProps, RangePickerProps } from './DatePicker';
60
59
  export { default as Popover } from './Popover';
@@ -4,7 +4,7 @@ import _inherits from "@babel/runtime/helpers/esm/inherits";
4
4
  import _createSuper from "@babel/runtime/helpers/esm/createSuper";
5
5
  import memoizeOne from 'memoize-one';
6
6
  import * as React from 'react';
7
- import { changeConfirmLocale } from 'antd/es/modal/locale';
7
+ import { changeConfirmLocale } from '../Modal/locale';
8
8
  import warning from '../_util/warning';
9
9
  import LocaleContext from './context';
10
10
  export var ANT_MARK = 'internalMark';