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
@@ -5,37 +5,116 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = calcExpression;
8
+ exports.default = calc;
9
+ exports.reset = void 0;
9
10
 
10
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
12
 
12
- // 分组求和计算
13
- function calcExpression(item, needCalcKeys) {
13
+ function getSum(item, dataIndex) {
14
+ var sum = 0;
15
+ item.children.forEach(function (subItem) {
16
+ var value;
17
+
18
+ if (/\%/.test("".concat(subItem[dataIndex]))) {
19
+ value = Number(subItem["".concat(dataIndex, "_sum")]);
20
+ } else {
21
+ value = Number(subItem[dataIndex]);
22
+ }
23
+
24
+ if (Number.isNaN(value)) {
25
+ return;
26
+ }
27
+
28
+ sum += value;
29
+ });
30
+ return sum;
31
+ } // 分组求和计算
32
+
33
+
34
+ function calc(item, needCalcKeys, history) {
14
35
  var _a;
15
36
 
16
37
  if ((_a = item === null || item === void 0 ? void 0 : item.children) === null || _a === void 0 ? void 0 : _a.length) {
17
38
  needCalcKeys.forEach(function (dkey) {
18
- var sum = 0;
39
+ if (!item.children || !item.children.length) {
40
+ return;
41
+ }
19
42
 
20
43
  var _dkey = (0, _slicedToArray2.default)(dkey, 2),
21
- key = _dkey[0],
44
+ dataIndex = _dkey[0],
22
45
  expression = _dkey[1];
23
46
 
24
- item.children.forEach(function (subItem) {
25
- if (key in subItem) {
26
- sum += Number(subItem[key]);
27
- }
28
- });
29
-
30
- if (!sum) {
31
- return;
32
- }
47
+ item["".concat(dataIndex, "_exp")] = expression;
33
48
 
34
49
  if (expression === 'sum') {
35
- item[key] = sum;
50
+ var sum = getSum(item, dataIndex);
51
+ item[dataIndex] = Number(sum).toFixed(2);
36
52
  } else if (expression === 'average') {
37
- item[key] = sum / item.children.length;
53
+ var _sum = getSum(item, dataIndex);
54
+
55
+ item[dataIndex] = (_sum / item.children.length).toFixed(2);
56
+ } else if (expression === 'max') {
57
+ var max = -Number.MAX_VALUE;
58
+ item.children.forEach(function (subItem) {
59
+ var value = Number(subItem[dataIndex]);
60
+
61
+ if (Number.isNaN(value)) {
62
+ return;
63
+ }
64
+
65
+ if (value > max) {
66
+ max = value;
67
+ }
68
+ });
69
+
70
+ if (max === -Number.MAX_VALUE) {
71
+ max = 0;
72
+ }
73
+
74
+ item[dataIndex] = max;
75
+ } else if (expression === 'min') {
76
+ var min = Number.MAX_VALUE;
77
+ item.children.forEach(function (subItem) {
78
+ var value = Number(subItem[dataIndex]);
79
+
80
+ if (Number.isNaN(value)) {
81
+ return;
82
+ }
83
+
84
+ if (value < min) {
85
+ min = value;
86
+ }
87
+ });
88
+
89
+ if (min === Number.MAX_VALUE) {
90
+ min = 0;
91
+ }
92
+
93
+ item[dataIndex] = min;
94
+ } else if (expression === 'percent') {
95
+ var _sum2 = getSum(item, dataIndex);
96
+
97
+ history.push({
98
+ item: item,
99
+ dataIndex: dataIndex,
100
+ sum: _sum2
101
+ });
38
102
  }
39
103
  });
40
104
  }
41
- }
105
+ }
106
+
107
+ var reset = function reset(arr, dataIndex) {
108
+ arr === null || arr === void 0 ? void 0 : arr.forEach(function (item) {
109
+ if (item === null || item === void 0 ? void 0 : item.children) {
110
+ reset(item === null || item === void 0 ? void 0 : item.children, dataIndex);
111
+ }
112
+
113
+ if (item.children) {
114
+ delete item[dataIndex];
115
+ delete item["".concat(dataIndex, "_exp")];
116
+ }
117
+ });
118
+ };
119
+
120
+ exports.reset = reset;
@@ -0,0 +1,13 @@
1
+ interface IdndItems {
2
+ row?: string[];
3
+ col?: string[];
4
+ tableHeader?: string[];
5
+ }
6
+ declare function useDndItems(props: any): {
7
+ dndColumns: any;
8
+ items: IdndItems;
9
+ groupRowKeys: any;
10
+ groupColKeys: any;
11
+ updateItems: (value: IdndItems, resume: string) => void;
12
+ };
13
+ export default useDndItems;
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _react = require("react");
15
+
16
+ var _index = require("../common/index");
17
+
18
+ function del(arr, target) {
19
+ if (!arr || !arr.length) {
20
+ return null;
21
+ }
22
+
23
+ var index = arr.findIndex(function (item) {
24
+ return item === target;
25
+ });
26
+
27
+ if (index !== -1) {
28
+ arr.splice(index, 1);
29
+ }
30
+ }
31
+
32
+ function getSortInsert(tableHeader, value, _ref) {
33
+ var columns = _ref.columns;
34
+
35
+ if (!tableHeader) {
36
+ return [];
37
+ }
38
+
39
+ var arr = new Array(columns.length);
40
+ tableHeader.push(value);
41
+ tableHeader.forEach(function (val) {
42
+ var index = columns.findIndex(function (item) {
43
+ return item.title === val;
44
+ });
45
+ columns[index].show = true;
46
+ arr.splice(index, 0, val);
47
+ });
48
+ return arr.filter(Boolean);
49
+ }
50
+
51
+ function getSortDndColumns(value, _ref2) {
52
+ var columns = _ref2.columns;
53
+ var tableHeader = value.tableHeader;
54
+ var hiddenArr = [];
55
+
56
+ if (value.row) {
57
+ hiddenArr = [].concat((0, _toConsumableArray2.default)(hiddenArr), (0, _toConsumableArray2.default)(value.row));
58
+ }
59
+
60
+ if (value.col) {
61
+ hiddenArr = [].concat((0, _toConsumableArray2.default)(hiddenArr), (0, _toConsumableArray2.default)(value.col));
62
+ }
63
+
64
+ if (!tableHeader || !tableHeader.length) {
65
+ return [];
66
+ }
67
+
68
+ var result = [];
69
+
70
+ var _loop = function _loop(i) {
71
+ var item = columns.find(function (item) {
72
+ return item.title === tableHeader[i];
73
+ });
74
+
75
+ if (item) {
76
+ item.order = i;
77
+ result.push(item);
78
+ }
79
+ };
80
+
81
+ for (var i = 0; i < tableHeader.length; i++) {
82
+ _loop(i);
83
+ }
84
+
85
+ var _loop2 = function _loop2(_i) {
86
+ var item = columns.find(function (item) {
87
+ return item.title === hiddenArr[_i];
88
+ });
89
+
90
+ if (item) {
91
+ item.show = false;
92
+ result.push(item);
93
+ }
94
+ };
95
+
96
+ for (var _i = 0; _i < hiddenArr.length; _i++) {
97
+ _loop2(_i);
98
+ }
99
+
100
+ return result;
101
+ }
102
+
103
+ function getDataIndexForTitle(row, columns) {
104
+ if (!row) {
105
+ return [];
106
+ }
107
+
108
+ return row.map(function (title) {
109
+ var col = columns.find(function (item) {
110
+ return item.title === title;
111
+ });
112
+
113
+ if (col) {
114
+ return col.dataIndex;
115
+ }
116
+ });
117
+ }
118
+
119
+ function useDndItems(props) {
120
+ var columns = props.columns,
121
+ colSortOpen = props.colSortOpen,
122
+ filterChange = props.filterChange,
123
+ openRowGroup = props.openRowGroup,
124
+ openColGroup = props.openColGroup,
125
+ customizeGroupRowKeys = props.customizeGroupRowKeys,
126
+ customizeGroupColKeys = props.customizeGroupColKeys;
127
+
128
+ var _useState = (0, _react.useState)(columns),
129
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
130
+ dndColumns = _useState2[0],
131
+ setDndColumns = _useState2[1];
132
+
133
+ var _useState3 = (0, _react.useState)(customizeGroupRowKeys || []),
134
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
135
+ groupRowKeys = _useState4[0],
136
+ setGroupRowKeys = _useState4[1];
137
+
138
+ var _useState5 = (0, _react.useState)(customizeGroupColKeys || []),
139
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
140
+ groupColKeys = _useState6[0],
141
+ setGroupColKeys = _useState6[1];
142
+
143
+ (0, _react.useEffect)(function () {
144
+ if (customizeGroupRowKeys) {
145
+ setGroupRowKeys(customizeGroupRowKeys);
146
+ }
147
+
148
+ if (customizeGroupColKeys) {
149
+ setGroupColKeys(customizeGroupColKeys);
150
+ }
151
+ }, [customizeGroupRowKeys, customizeGroupColKeys]); // 初始化
152
+
153
+ var defaultItems = {
154
+ tableHeader: []
155
+ };
156
+
157
+ if (openRowGroup) {
158
+ defaultItems.row = [];
159
+ }
160
+
161
+ if (openColGroup) {
162
+ defaultItems.col = [];
163
+ }
164
+
165
+ if (openColGroup || openRowGroup || colSortOpen) {
166
+ (0, _index.treeFind)(columns, function (node) {
167
+ if (openRowGroup && groupRowKeys.includes(node.dataIndex)) {
168
+ defaultItems.row && defaultItems.row.push(node.title);
169
+ } else if (groupColKeys.includes(node.dataIndex)) {
170
+ defaultItems.col && defaultItems.col.push(node.title);
171
+ } else {
172
+ defaultItems.tableHeader.push(node.title);
173
+ }
174
+
175
+ return false;
176
+ });
177
+ }
178
+
179
+ var _useState7 = (0, _react.useState)(defaultItems),
180
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
181
+ items = _useState8[0],
182
+ setItems = _useState8[1];
183
+
184
+ (0, _react.useEffect)(function () {
185
+ if (customizeGroupRowKeys || customizeGroupColKeys) {
186
+ columns.forEach(function (c) {
187
+ if (customizeGroupRowKeys.includes(c.dataIndex) || customizeGroupColKeys.includes(c.dataIndex)) {
188
+ c.show = false;
189
+ }
190
+ });
191
+ }
192
+
193
+ setDndColumns(columns);
194
+ setItems(defaultItems);
195
+ }, [columns]); // 更新
196
+
197
+ var updateItems = function updateItems(value, resume) {
198
+ var _a;
199
+
200
+ if (value.row) {
201
+ value.row = value === null || value === void 0 ? void 0 : value.row.filter(Boolean);
202
+ }
203
+
204
+ if (value.col) {
205
+ value.col = value.col.filter(Boolean);
206
+ }
207
+
208
+ if (resume) {
209
+ // 删除
210
+ del(value.row, resume);
211
+ del(value.col, resume);
212
+ value.tableHeader = getSortInsert(value.tableHeader, resume, {
213
+ columns: columns
214
+ });
215
+ } // 列分组进行覆盖,只允许存在一个
216
+
217
+
218
+ if (((_a = value === null || value === void 0 ? void 0 : value.col) === null || _a === void 0 ? void 0 : _a.length) >= 2) {
219
+ value.tableHeader = getSortInsert(value.tableHeader, items.col[0], {
220
+ columns: columns
221
+ });
222
+ value.col = value.col.filter(function (item) {
223
+ return item !== items.col[0];
224
+ });
225
+ }
226
+
227
+ setItems(value);
228
+ setGroupRowKeys(getDataIndexForTitle(value.row, columns));
229
+ setGroupColKeys(getDataIndexForTitle(value.col, columns));
230
+ var newColumns = getSortDndColumns(value, {
231
+ columns: columns
232
+ });
233
+ setDndColumns(newColumns);
234
+ filterChange === null || filterChange === void 0 ? void 0 : filterChange(newColumns);
235
+ };
236
+
237
+ return {
238
+ dndColumns: dndColumns,
239
+ items: items,
240
+ groupRowKeys: groupRowKeys,
241
+ groupColKeys: groupColKeys,
242
+ updateItems: updateItems
243
+ };
244
+ }
245
+
246
+ var _default = useDndItems;
247
+ exports.default = _default;
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -11,36 +9,16 @@ var _react = require("react");
11
9
 
12
10
  var _util = require("../util");
13
11
 
14
- var _expression = _interopRequireDefault(require("../expression"));
15
-
16
12
  /** 行分组 */
17
13
  function useGroupDataSource(_ref) {
18
14
  var groupRowKeys = _ref.groupRowKeys,
19
- customizeDataSource = _ref.customizeDataSource,
20
- columnsRef = _ref.columnsRef;
15
+ customizeDataSource = _ref.customizeDataSource;
21
16
  var groupDataSource = (0, _react.useMemo)(function () {
22
17
  if (!(groupRowKeys === null || groupRowKeys === void 0 ? void 0 : groupRowKeys.length)) {
23
18
  return customizeDataSource;
24
19
  }
25
20
 
26
- var source = (0, _util.transformWithRowGroup)(customizeDataSource, groupRowKeys); // 获取需要计算的key,生成数组
27
-
28
- var needCalcKeys = columnsRef.current.filter(function (col) {
29
- return col.expression;
30
- }).map(function (col) {
31
- return [col.dataIndex, col.expression];
32
- });
33
-
34
- var deepChildren = function deepChildren(arr) {
35
- arr === null || arr === void 0 ? void 0 : arr.forEach(function (item) {
36
- if (item === null || item === void 0 ? void 0 : item.children) {
37
- deepChildren(item === null || item === void 0 ? void 0 : item.children);
38
- (0, _expression.default)(item, needCalcKeys);
39
- }
40
- });
41
- };
42
-
43
- deepChildren(source);
21
+ var source = (0, _util.transformWithRowGroup)(customizeDataSource, groupRowKeys);
44
22
  return source;
45
23
  }, [customizeDataSource, groupRowKeys]);
46
24
  return [groupDataSource];
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ interface Rect {
3
+ x: number;
4
+ y: number;
5
+ width: number;
6
+ height: number;
7
+ left: number;
8
+ right: number;
9
+ bottom: number;
10
+ top: number;
11
+ }
12
+ export default function useResizeObserver(): (import("react").MutableRefObject<undefined> | Rect)[];
13
+ export {};
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = useResizeObserver;
9
+
10
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
11
+
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+
14
+ var _react = require("react");
15
+
16
+ function useResizeObserver() {
17
+ var ref = (0, _react.useRef)();
18
+
19
+ var _useState = (0, _react.useState)({
20
+ x: 0,
21
+ y: 0,
22
+ width: 0,
23
+ height: 0,
24
+ left: 0,
25
+ right: 0,
26
+ bottom: 0,
27
+ top: 0
28
+ }),
29
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
30
+ rect = _useState2[0],
31
+ setRect = _useState2[1];
32
+
33
+ console.log('useResizeObserver');
34
+ (0, _react.useEffect)(function () {
35
+ var ro = new ResizeObserver(function (entries) {
36
+ // 遍历改变的元素属性
37
+ var _iterator = (0, _createForOfIteratorHelper2.default)(entries),
38
+ _step;
39
+
40
+ try {
41
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
42
+ var entry = _step.value;
43
+ setRect(entry.target.getBoundingClientRect());
44
+ }
45
+ } catch (err) {
46
+ _iterator.e(err);
47
+ } finally {
48
+ _iterator.f();
49
+ }
50
+ });
51
+
52
+ if (ref.current) {
53
+ ro.observe(ref.current);
54
+ }
55
+
56
+ return function () {
57
+ ro.disconnect();
58
+ };
59
+ }, []);
60
+ return [ref, rect];
61
+ }
@@ -0,0 +1,3 @@
1
+ import { KeyboardCoordinateGetter } from '@dnd-kit/core';
2
+ declare const coordinateGetter: KeyboardCoordinateGetter;
3
+ export default coordinateGetter;
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _core = require("@dnd-kit/core");
9
+
10
+ var directions = [_core.KeyboardCode.Down, _core.KeyboardCode.Right, _core.KeyboardCode.Up, _core.KeyboardCode.Left];
11
+
12
+ var coordinateGetter = function coordinateGetter(event, _ref) {
13
+ var _ref$context = _ref.context,
14
+ active = _ref$context.active,
15
+ droppableRects = _ref$context.droppableRects,
16
+ droppableContainers = _ref$context.droppableContainers,
17
+ collisionRect = _ref$context.collisionRect;
18
+
19
+ var _a;
20
+
21
+ if (directions.includes(event.code)) {
22
+ event.preventDefault();
23
+
24
+ if (!active || !collisionRect) {
25
+ return null;
26
+ }
27
+
28
+ var filteredContainers = [];
29
+ droppableContainers.getEnabled().forEach(function (entry) {
30
+ var _a;
31
+
32
+ if (!entry || (entry === null || entry === void 0 ? void 0 : entry.disabled)) {
33
+ return;
34
+ }
35
+
36
+ var rect = droppableRects.get(entry.id);
37
+
38
+ if (!rect) {
39
+ return;
40
+ }
41
+
42
+ var data = entry.data.current;
43
+
44
+ if (data) {
45
+ var type = data.type,
46
+ children = data.children;
47
+
48
+ if (type === 'container' && (children === null || children === void 0 ? void 0 : children.length) > 0) {
49
+ if (((_a = active.data.current) === null || _a === void 0 ? void 0 : _a.type) !== 'container') {
50
+ return;
51
+ }
52
+ }
53
+ }
54
+
55
+ switch (event.code) {
56
+ case _core.KeyboardCode.Down:
57
+ if (collisionRect.top < rect.top) {
58
+ filteredContainers.push(entry);
59
+ }
60
+
61
+ break;
62
+
63
+ case _core.KeyboardCode.Up:
64
+ if (collisionRect.top > rect.top) {
65
+ filteredContainers.push(entry);
66
+ }
67
+
68
+ break;
69
+
70
+ case _core.KeyboardCode.Left:
71
+ if (collisionRect.left >= rect.left + rect.width) {
72
+ filteredContainers.push(entry);
73
+ }
74
+
75
+ break;
76
+
77
+ case _core.KeyboardCode.Right:
78
+ if (collisionRect.left + collisionRect.width <= rect.left) {
79
+ filteredContainers.push(entry);
80
+ }
81
+
82
+ break;
83
+ }
84
+ });
85
+ var collisions = (0, _core.closestCorners)({
86
+ active: active,
87
+ collisionRect: collisionRect,
88
+ droppableRects: droppableRects,
89
+ droppableContainers: filteredContainers,
90
+ pointerCoordinates: null
91
+ });
92
+ var closestId = (0, _core.getFirstCollision)(collisions, 'id');
93
+
94
+ if (closestId != null) {
95
+ var newDroppable = droppableContainers.get(closestId);
96
+ var newNode = newDroppable === null || newDroppable === void 0 ? void 0 : newDroppable.node.current;
97
+ var newRect = newDroppable === null || newDroppable === void 0 ? void 0 : newDroppable.rect.current;
98
+
99
+ if (newNode && newRect) {
100
+ if (newDroppable.id === 'placeholder') {
101
+ return {
102
+ x: newRect.left + (newRect.width - collisionRect.width) / 2,
103
+ y: newRect.top + (newRect.height - collisionRect.height) / 2
104
+ };
105
+ }
106
+
107
+ if (((_a = newDroppable.data.current) === null || _a === void 0 ? void 0 : _a.type) === 'container') {
108
+ return {
109
+ x: newRect.left + 20,
110
+ y: newRect.top + 74
111
+ };
112
+ }
113
+
114
+ return {
115
+ x: newRect.left,
116
+ y: newRect.top
117
+ };
118
+ }
119
+ }
120
+ }
121
+
122
+ return null;
123
+ };
124
+
125
+ var _default = coordinateGetter;
126
+ exports.default = _default;
@@ -870,10 +870,15 @@ p {
870
870
  #lm_protable_warp .ant-table-wrapper,
871
871
  #lm_protable_warp .ant-spin-nested-loading,
872
872
  #lm_protable_warp .ant-spin-container,
873
- #lm_protable_warp .ant-table-container,
874
- #lm_protable_warp .ant-table-body {
873
+ #lm_protable_warp .ant-table-container {
875
874
  height: 100%;
876
875
  }
876
+ #lm_protable_warp.lm_protable_with_footer .ant-table-container {
877
+ height: auto;
878
+ }
879
+ #lm_protable_warp.lm_protable_with_footer .ant-table-footer {
880
+ background-color: #fff;
881
+ }
877
882
  #lm_protable_warp .ant-card-body,
878
883
  #lm_protable_warp .ant-pro-card-body {
879
884
  padding: 0;
@@ -1661,3 +1666,9 @@ button.ant-table-row-expand-icon::after {
1661
1666
  .WeChatContactsAvatarTools .rightClickItems:last-child {
1662
1667
  border-bottom: 0;
1663
1668
  }
1669
+ .calc-select .ant-select-selection-item {
1670
+ font-size: 12px !important;
1671
+ }
1672
+ .calc-select .ant-select-selection-placeholder {
1673
+ font-size: 12px;
1674
+ }
@@ -358,10 +358,15 @@
358
358
  #lm_protable_warp .ant-table-wrapper,
359
359
  #lm_protable_warp .ant-spin-nested-loading,
360
360
  #lm_protable_warp .ant-spin-container,
361
- #lm_protable_warp .ant-table-container,
362
- #lm_protable_warp .ant-table-body {
361
+ #lm_protable_warp .ant-table-container {
363
362
  height: 100%;
364
363
  }
364
+ #lm_protable_warp.lm_protable_with_footer .ant-table-container {
365
+ height: auto;
366
+ }
367
+ #lm_protable_warp.lm_protable_with_footer .ant-table-footer {
368
+ background-color: #fff;
369
+ }
365
370
  #lm_protable_warp .ant-card-body,
366
371
  #lm_protable_warp .ant-pro-card-body {
367
372
  padding: 0;
@@ -1149,3 +1154,9 @@ button.ant-table-row-expand-icon::after {
1149
1154
  .WeChatContactsAvatarTools .rightClickItems:last-child {
1150
1155
  border-bottom: 0;
1151
1156
  }
1157
+ .calc-select .ant-select-selection-item {
1158
+ font-size: 12px !important;
1159
+ }
1160
+ .calc-select .ant-select-selection-placeholder {
1161
+ font-size: 12px;
1162
+ }