linkmore-design 1.1.13-alpha.1 → 1.1.13-alpha.12

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 (285) hide show
  1. package/CHANGELOG.md +118 -0
  2. package/dist/Button/demos/ghost.d.ts +2 -0
  3. package/dist/ConfigProvider/context.d.ts +1 -0
  4. package/dist/Descriptions/Cell.d.ts +1 -0
  5. package/dist/Descriptions/Item.d.ts +1 -0
  6. package/dist/Descriptions/index.d.ts +1 -1
  7. package/dist/Form/FormWrapper.d.ts +3 -0
  8. package/dist/Form/WrapperItem.d.ts +4 -0
  9. package/dist/Form/demos/disabled.d.ts +2 -0
  10. package/dist/Form/demos/responsive.d.ts +0 -1
  11. package/dist/Form/index.d.ts +2 -0
  12. package/dist/Form/interface.d.ts +12 -0
  13. package/dist/IconFont/demos/ConfigProvider.d.ts +2 -0
  14. package/dist/IconFont/index.d.ts +1 -2
  15. package/dist/LmDrag/LmDrag.d.ts +4 -0
  16. package/dist/LmDrag/components/DndContainer.d.ts +3 -0
  17. package/dist/LmDrag/components/sortableBox.d.ts +5 -0
  18. package/dist/LmDrag/components/sortableItem.d.ts +7 -0
  19. package/dist/LmDrag/demos/basic.d.ts +2 -0
  20. package/dist/LmDrag/index.d.ts +10 -0
  21. package/dist/LmDrag/style/index.d.ts +1 -0
  22. package/dist/LmDrag/style/variables.d.ts +1 -0
  23. package/dist/LmDrag/wrapper/Root.d.ts +3 -0
  24. package/dist/LmEditTable/EditTable.d.ts +16 -3
  25. package/dist/LmEditTable/components/DraggableContainer.d.ts +4 -1
  26. package/dist/LmEditTable/components/QuickOpetate.d.ts +12 -0
  27. package/dist/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
  28. package/dist/LmEditTable/components/index.d.ts +7 -2
  29. package/dist/LmEditTable/hooks/useForkRef.d.ts +2 -0
  30. package/dist/LmEditTable/rowSort/DndContainerRow.d.ts +10 -0
  31. package/dist/LmEditTable/util.d.ts +5 -0
  32. package/dist/LmEditTable/virtual/VirtualRow.d.ts +1 -0
  33. package/dist/LmFilter/LmFilter.d.ts +2 -6
  34. package/dist/LmTable/demos/summuy.d.ts +2 -0
  35. package/dist/LmTable/expression.d.ts +1 -0
  36. package/dist/LmTable/hooks/useGroupDataSource.d.ts +7 -0
  37. package/dist/LmUpload/UploadList/ItemPictureCard.d.ts +2 -1
  38. package/dist/LmUpload/fns/index.d.ts +1 -0
  39. package/dist/QuickMenu/demos/useInDraw.d.ts +2 -0
  40. package/dist/QuickMenu/index.d.ts +3 -1
  41. package/dist/Select/index.d.ts +3 -0
  42. package/dist/TreeSelect/demos/treedata.d.ts +3 -0
  43. package/dist/index.d.ts +2 -0
  44. package/dist/index.umd.js +2811 -1527
  45. package/dist/index.umd.min.js +17 -17
  46. package/dist/variables.css +270 -120
  47. package/es/Button/index.js +4 -3
  48. package/es/Button/style/index.css +28 -25
  49. package/es/Button/style/variables.css +28 -25
  50. package/es/Cascader/index.js +31 -3
  51. package/es/Cascader/style/index.css +1 -0
  52. package/es/Cascader/style/variables.css +1 -0
  53. package/es/ConfigProvider/context.d.ts +1 -0
  54. package/es/ConfigProvider/index.js +5 -3
  55. package/es/Descriptions/Cell.d.ts +1 -0
  56. package/es/Descriptions/Cell.js +5 -2
  57. package/es/Descriptions/Item.d.ts +1 -0
  58. package/es/Descriptions/Row.js +6 -1
  59. package/es/Descriptions/index.d.ts +1 -1
  60. package/es/Descriptions/index.js +3 -3
  61. package/es/Descriptions/style/index.css +3 -0
  62. package/es/Descriptions/style/variables.css +3 -0
  63. package/es/Form/Form.js +13 -4
  64. package/es/Form/FormItem/ItemHolder.js +1 -10
  65. package/es/Form/FormWrapper.d.ts +3 -0
  66. package/es/Form/FormWrapper.js +22 -0
  67. package/es/Form/WrapperItem.d.ts +4 -0
  68. package/es/Form/WrapperItem.js +217 -0
  69. package/es/Form/container.js +1 -13
  70. package/es/Form/images/icon_collapse.svg +1 -0
  71. package/es/Form/index.d.ts +2 -0
  72. package/es/Form/index.js +2 -0
  73. package/es/Form/interface.d.ts +12 -0
  74. package/es/Form/style/index.css +34 -41
  75. package/es/Form/style/variables.css +34 -41
  76. package/es/IconFont/index.d.ts +1 -2
  77. package/es/IconFont/index.js +18 -4
  78. package/es/ImageViewer/components/Operate.js +4 -7
  79. package/es/Input/index.js +47 -10
  80. package/es/InputNumber/index.js +23 -11
  81. package/es/InputNumber/style/index.css +7 -0
  82. package/es/InputNumber/style/variables.css +7 -0
  83. package/es/LmDrag/LmDrag.d.ts +4 -0
  84. package/es/LmDrag/LmDrag.js +30 -0
  85. package/es/LmDrag/components/DndContainer.d.ts +3 -0
  86. package/es/LmDrag/components/DndContainer.js +121 -0
  87. package/es/LmDrag/components/sortableBox.d.ts +5 -0
  88. package/es/LmDrag/components/sortableBox.js +23 -0
  89. package/es/LmDrag/components/sortableItem.d.ts +7 -0
  90. package/es/LmDrag/components/sortableItem.js +41 -0
  91. package/es/LmDrag/index.d.ts +10 -0
  92. package/es/LmDrag/index.js +3 -0
  93. package/es/LmDrag/style/index.css +0 -0
  94. package/es/LmDrag/style/index.d.ts +1 -0
  95. package/es/LmDrag/style/index.js +1 -0
  96. package/es/LmDrag/style/variables.css +0 -0
  97. package/es/LmDrag/style/variables.d.ts +1 -0
  98. package/es/LmDrag/style/variables.js +1 -0
  99. package/es/LmDrag/wrapper/Root.d.ts +3 -0
  100. package/es/LmDrag/wrapper/Root.js +12 -0
  101. package/es/LmEditTable/DragHandle.js +1 -1
  102. package/es/LmEditTable/EditTable.d.ts +16 -3
  103. package/es/LmEditTable/EditTable.js +295 -240
  104. package/es/LmEditTable/components/DraggableContainer.d.ts +4 -1
  105. package/es/LmEditTable/components/DraggableContainer.js +10 -3
  106. package/es/LmEditTable/components/QuickOpetate.d.ts +12 -0
  107. package/es/LmEditTable/components/QuickOpetate.js +82 -0
  108. package/es/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
  109. package/es/LmEditTable/components/bottomOpetateComponent.js +23 -0
  110. package/es/LmEditTable/components/index.d.ts +7 -2
  111. package/es/LmEditTable/components/index.js +3 -1
  112. package/es/LmEditTable/hooks/useForkRef.d.ts +2 -0
  113. package/es/LmEditTable/hooks/useForkRef.js +22 -0
  114. package/es/LmEditTable/rowSort/DndContainerRow.d.ts +10 -0
  115. package/es/LmEditTable/rowSort/DndContainerRow.js +81 -0
  116. package/es/LmEditTable/sortableItem.js +1 -0
  117. package/es/LmEditTable/sortableItemCol.js +40 -10
  118. package/es/LmEditTable/style/index.css +27 -0
  119. package/es/LmEditTable/style/variables.css +27 -0
  120. package/es/LmEditTable/util.d.ts +5 -0
  121. package/es/LmEditTable/util.js +51 -12
  122. package/es/LmEditTable/virtual/VirtualRow.d.ts +1 -0
  123. package/es/LmEditTable/virtual/VirtualRow.js +5 -3
  124. package/es/LmEditTable/virtual/VirtualRowBack.js +12 -14
  125. package/es/LmFilter/LmFilter.js +6 -6
  126. package/es/LmFilter/components/CheckboxFilter.js +9 -4
  127. package/es/LmFilter/components/DropdownFIlter.js +186 -111
  128. package/es/LmFilter/components/SelectFilter.js +4 -3
  129. package/es/LmFilter/filterFns/index.js +5 -7
  130. package/es/LmFilter/index.js +0 -3
  131. package/es/LmFilter/style/index.css +82 -54
  132. package/es/LmFilter/style/variables.css +82 -54
  133. package/es/LmFilter/utils.js +6 -6
  134. package/es/LmSelect/style/index.css +1 -0
  135. package/es/LmSelect/style/variables.css +1 -0
  136. package/es/LmTable/Table.js +24 -15
  137. package/es/LmTable/expression.d.ts +1 -0
  138. package/es/LmTable/expression.js +31 -0
  139. package/es/LmTable/hooks/useGroupDataSource.js +50 -0
  140. package/es/LmTable/style/index.css +39 -0
  141. package/es/LmTable/style/variables.css +39 -0
  142. package/es/LmTable/virTual/VirtualRow.js +12 -14
  143. package/es/LmUpload/LmUpload.js +6 -3
  144. package/es/LmUpload/UploadList/ItemPicture.js +2 -1
  145. package/es/LmUpload/UploadList/ItemPictureCard.d.ts +2 -1
  146. package/es/LmUpload/UploadList/ItemPictureCard.js +15 -5
  147. package/es/LmUpload/UploadList/ItemText.js +7 -2
  148. package/es/LmUpload/UploadList/index.js +53 -2
  149. package/es/LmUpload/body/UploadCore.js +4 -1
  150. package/es/LmUpload/fns/index.d.ts +1 -0
  151. package/es/LmUpload/fns/index.js +27 -6
  152. package/es/LmUpload/style/index.css +17 -0
  153. package/es/LmUpload/style/variables.css +17 -0
  154. package/es/QuickMenu/index.d.ts +3 -1
  155. package/es/QuickMenu/index.js +22 -19
  156. package/es/Select/index.d.ts +3 -0
  157. package/es/Select/index.js +44 -7
  158. package/es/Select/style/index.css +28 -0
  159. package/es/Select/style/variables.css +28 -0
  160. package/es/TreeSelect/index.js +17 -2
  161. package/es/TreeSelect/style/index.css +3 -0
  162. package/es/TreeSelect/style/variables.css +3 -0
  163. package/es/index.d.ts +2 -0
  164. package/es/index.js +2 -1
  165. package/es/styles/variables.css +270 -120
  166. package/lib/Button/index.js +4 -3
  167. package/lib/Button/style/index.css +28 -25
  168. package/lib/Button/style/variables.css +28 -25
  169. package/lib/Cascader/index.js +35 -3
  170. package/lib/Cascader/style/index.css +1 -0
  171. package/lib/Cascader/style/variables.css +1 -0
  172. package/lib/ConfigProvider/context.d.ts +1 -0
  173. package/lib/ConfigProvider/index.js +5 -3
  174. package/lib/Descriptions/Cell.d.ts +1 -0
  175. package/lib/Descriptions/Cell.js +5 -2
  176. package/lib/Descriptions/Item.d.ts +1 -0
  177. package/lib/Descriptions/Row.js +6 -1
  178. package/lib/Descriptions/index.d.ts +1 -1
  179. package/lib/Descriptions/index.js +3 -3
  180. package/lib/Descriptions/style/index.css +3 -0
  181. package/lib/Descriptions/style/variables.css +3 -0
  182. package/lib/Form/Form.js +13 -4
  183. package/lib/Form/FormItem/ItemHolder.js +1 -10
  184. package/lib/Form/FormWrapper.d.ts +3 -0
  185. package/lib/Form/FormWrapper.js +34 -0
  186. package/lib/Form/WrapperItem.d.ts +4 -0
  187. package/lib/Form/WrapperItem.js +235 -0
  188. package/lib/Form/container.js +1 -13
  189. package/lib/Form/images/icon_collapse.svg +1 -0
  190. package/lib/Form/index.d.ts +2 -0
  191. package/lib/Form/index.js +3 -0
  192. package/lib/Form/interface.d.ts +12 -0
  193. package/lib/Form/style/index.css +34 -41
  194. package/lib/Form/style/variables.css +34 -41
  195. package/lib/IconFont/index.d.ts +1 -2
  196. package/lib/IconFont/index.js +25 -4
  197. package/lib/ImageViewer/components/Operate.js +4 -8
  198. package/lib/Input/index.js +52 -10
  199. package/lib/InputNumber/index.js +29 -11
  200. package/lib/InputNumber/style/index.css +7 -0
  201. package/lib/InputNumber/style/variables.css +7 -0
  202. package/lib/LmDrag/LmDrag.d.ts +4 -0
  203. package/lib/LmDrag/LmDrag.js +44 -0
  204. package/lib/LmDrag/components/DndContainer.d.ts +3 -0
  205. package/lib/LmDrag/components/DndContainer.js +138 -0
  206. package/lib/LmDrag/components/sortableBox.d.ts +5 -0
  207. package/lib/LmDrag/components/sortableBox.js +37 -0
  208. package/lib/LmDrag/components/sortableItem.d.ts +7 -0
  209. package/lib/LmDrag/components/sortableItem.js +54 -0
  210. package/lib/LmDrag/index.d.ts +10 -0
  211. package/lib/LmDrag/index.js +19 -0
  212. package/lib/LmDrag/style/index.css +0 -0
  213. package/lib/LmDrag/style/index.d.ts +1 -0
  214. package/lib/LmDrag/style/index.js +3 -0
  215. package/lib/LmDrag/style/variables.css +0 -0
  216. package/lib/LmDrag/style/variables.d.ts +1 -0
  217. package/lib/LmDrag/style/variables.js +3 -0
  218. package/lib/LmDrag/wrapper/Root.d.ts +3 -0
  219. package/lib/LmDrag/wrapper/Root.js +26 -0
  220. package/lib/LmEditTable/DragHandle.js +1 -1
  221. package/lib/LmEditTable/EditTable.d.ts +16 -3
  222. package/lib/LmEditTable/EditTable.js +290 -235
  223. package/lib/LmEditTable/components/DraggableContainer.d.ts +4 -1
  224. package/lib/LmEditTable/components/DraggableContainer.js +12 -5
  225. package/lib/LmEditTable/components/QuickOpetate.d.ts +12 -0
  226. package/lib/LmEditTable/components/QuickOpetate.js +96 -0
  227. package/lib/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
  228. package/lib/LmEditTable/components/bottomOpetateComponent.js +34 -0
  229. package/lib/LmEditTable/components/index.d.ts +7 -2
  230. package/lib/LmEditTable/components/index.js +16 -0
  231. package/lib/LmEditTable/hooks/useForkRef.d.ts +2 -0
  232. package/lib/LmEditTable/hooks/useForkRef.js +29 -0
  233. package/lib/LmEditTable/rowSort/DndContainerRow.d.ts +10 -0
  234. package/lib/LmEditTable/rowSort/DndContainerRow.js +99 -0
  235. package/lib/LmEditTable/sortableItem.js +1 -0
  236. package/lib/LmEditTable/sortableItemCol.js +37 -8
  237. package/lib/LmEditTable/style/index.css +27 -0
  238. package/lib/LmEditTable/style/variables.css +27 -0
  239. package/lib/LmEditTable/util.d.ts +5 -0
  240. package/lib/LmEditTable/util.js +52 -11
  241. package/lib/LmEditTable/virtual/VirtualRow.d.ts +1 -0
  242. package/lib/LmEditTable/virtual/VirtualRow.js +8 -3
  243. package/lib/LmEditTable/virtual/VirtualRowBack.js +12 -14
  244. package/lib/LmFilter/LmFilter.js +6 -6
  245. package/lib/LmFilter/components/CheckboxFilter.js +9 -4
  246. package/lib/LmFilter/components/DropdownFIlter.js +186 -111
  247. package/lib/LmFilter/components/SelectFilter.js +4 -3
  248. package/lib/LmFilter/filterFns/index.js +5 -7
  249. package/lib/LmFilter/index.js +0 -3
  250. package/lib/LmFilter/style/index.css +82 -54
  251. package/lib/LmFilter/style/variables.css +82 -54
  252. package/lib/LmFilter/utils.js +6 -6
  253. package/lib/LmSelect/style/index.css +1 -0
  254. package/lib/LmSelect/style/variables.css +1 -0
  255. package/lib/LmTable/Table.js +24 -15
  256. package/lib/LmTable/expression.d.ts +1 -0
  257. package/lib/LmTable/expression.js +41 -0
  258. package/lib/LmTable/hooks/useGroupDataSource.js +50 -0
  259. package/lib/LmTable/style/index.css +39 -0
  260. package/lib/LmTable/style/variables.css +39 -0
  261. package/lib/LmTable/virTual/VirtualRow.js +12 -14
  262. package/lib/LmUpload/LmUpload.js +9 -3
  263. package/lib/LmUpload/UploadList/ItemPicture.js +2 -1
  264. package/lib/LmUpload/UploadList/ItemPictureCard.d.ts +2 -1
  265. package/lib/LmUpload/UploadList/ItemPictureCard.js +15 -5
  266. package/lib/LmUpload/UploadList/ItemText.js +7 -2
  267. package/lib/LmUpload/UploadList/index.js +54 -2
  268. package/lib/LmUpload/body/UploadCore.js +5 -1
  269. package/lib/LmUpload/fns/index.d.ts +1 -0
  270. package/lib/LmUpload/fns/index.js +27 -6
  271. package/lib/LmUpload/style/index.css +17 -0
  272. package/lib/LmUpload/style/variables.css +17 -0
  273. package/lib/QuickMenu/index.d.ts +3 -1
  274. package/lib/QuickMenu/index.js +21 -18
  275. package/lib/Select/index.d.ts +3 -0
  276. package/lib/Select/index.js +47 -7
  277. package/lib/Select/style/index.css +28 -0
  278. package/lib/Select/style/variables.css +28 -0
  279. package/lib/TreeSelect/index.js +21 -2
  280. package/lib/TreeSelect/style/index.css +3 -0
  281. package/lib/TreeSelect/style/variables.css +3 -0
  282. package/lib/index.d.ts +2 -0
  283. package/lib/index.js +15 -1
  284. package/lib/styles/variables.css +270 -120
  285. package/package.json +5 -1
@@ -714,6 +714,45 @@
714
714
  #lm_protable_warp .lm_protable .ant-table-empty table .ant-table-cell {
715
715
  border-bottom: 0;
716
716
  }
717
+ #lm_protable_warp .lm_protable .ant-table-summary {
718
+ height: 48px;
719
+ }
720
+ #lm_protable_warp .lm_protable .ant-table-summary > table {
721
+ height: 100%;
722
+ }
723
+ #lm_protable_warp .lm_protable .ant-table-summary td {
724
+ padding: 0 8px;
725
+ text-align: right;
726
+ background-color: var(--table-background-color);
727
+ }
728
+ #lm_protable_warp .lm_protable .ant-table-summary td:first-of-type {
729
+ padding: 0 0 0 8px;
730
+ text-align: left;
731
+ }
732
+ #lm_protable_warp .lm_protable .ant-table-summary td.number {
733
+ border-right: 1px solid #eee;
734
+ border-left: 1px solid #eee;
735
+ }
736
+ #lm_protable_warp .lm_protable .ant-table-summary td.money {
737
+ color: var(--error-color);
738
+ border-right: 1px solid #eee;
739
+ border-left: 1px solid #eee;
740
+ }
741
+ #lm_protable_warp .lm_protable .ant-table-summary td.money-color {
742
+ color: var(--error-color);
743
+ }
744
+ #lm_protable_warp .lm_protable .ant-table-summary td > div {
745
+ overflow: hidden;
746
+ white-space: nowrap;
747
+ text-overflow: ellipsis;
748
+ }
749
+ #lm_protable_warp .lm_protable .ant-table-summary td > div:last-of-type {
750
+ font-weight: bold;
751
+ }
752
+ #lm_protable_warp .lm_protable .ant-table-summary .total_title {
753
+ position: relative;
754
+ white-space: nowrap;
755
+ }
717
756
  #lm_protable_warp .ant-table-expand-icon-col {
718
757
  width: 32px;
719
758
  }
@@ -36,12 +36,16 @@ var VirtualRow = /*#__PURE__*/_react.default.memo(function (_a, ref) {
36
36
  var rowHeight = state.rowHeight,
37
37
  totalLen = state.totalLen;
38
38
  var virtualItems = instance.columnVirtual.virtualItems;
39
- var trRef = (0, _react.useRef)(null); // 列长度
39
+ var trRef = (0, _react.useRef)(null); // 非固定列长度
40
40
 
41
41
  var columnsLen = (0, _react.useMemo)(function () {
42
42
  var _a;
43
43
 
44
- return (_a = children === null || children === void 0 ? void 0 : children.length) !== null && _a !== void 0 ? _a : 0;
44
+ return (_a = children === null || children === void 0 ? void 0 : children.filter(function (v) {
45
+ var _a, _b;
46
+
47
+ return typeof ((_a = v.props) === null || _a === void 0 ? void 0 : _a.fixLeft) !== 'number' && typeof ((_b = v.props) === null || _b === void 0 ? void 0 : _b.fixRight) !== 'number';
48
+ }).length) !== null && _a !== void 0 ? _a : 0; // return children?.length ?? 0
45
49
  }, [children]);
46
50
  (0, _react.useEffect)(function () {
47
51
  if (state.columnsLen !== columnsLen) {
@@ -88,26 +92,20 @@ var VirtualRow = /*#__PURE__*/_react.default.memo(function (_a, ref) {
88
92
  fixedRight: [],
89
93
  columns: []
90
94
  });
91
- }, [children]); // 截取非固定列
92
-
93
- var resetVirtualItems = (0, _react.useMemo)(function () {
94
- var fixedLeft = fixedColumns.fixedLeft,
95
- columns = fixedColumns.columns;
96
- return virtualItems.slice(fixedLeft.length, fixedLeft.length + columns.length);
97
- }, [fixedColumns, virtualItems]); // 横线单元格合并
95
+ }, [children]); // 横线单元格合并
98
96
 
99
97
  var colSpan = (0, _react.useMemo)(function () {
100
98
  var _a;
101
99
 
102
- var startIndex = ((_a = resetVirtualItems === null || resetVirtualItems === void 0 ? void 0 : resetVirtualItems[0]) === null || _a === void 0 ? void 0 : _a.index) || 0;
103
- return startIndex ? startIndex - fixedColumns.fixedLeft.length : startIndex;
104
- }, [fixedColumns, resetVirtualItems]);
100
+ return (_a = virtualItems[0]) === null || _a === void 0 ? void 0 : _a.index;
101
+ }, [virtualItems]);
102
+ console.log('virtualItems', virtualItems);
105
103
  return /*#__PURE__*/_react.default.createElement("tr", Object.assign({}, resetProps, {
106
104
  ref: Object.prototype.hasOwnProperty.call(ref, 'current') ? ref : trRef
107
105
  }), fixedColumns.fixedLeft, !!colSpan && /*#__PURE__*/_react.default.createElement("td", {
108
106
  colSpan: colSpan
109
- }), resetVirtualItems.map(function (virtualCol) {
110
- return children[virtualCol.index];
107
+ }), virtualItems.map(function (virtualCol) {
108
+ return fixedColumns.columns[virtualCol.index];
111
109
  }), fixedColumns.fixedRight);
112
110
  });
113
111
 
@@ -13,6 +13,8 @@ var _react = _interopRequireWildcard(require("react"));
13
13
 
14
14
  var _UploadRoot = _interopRequireDefault(require("./wrapper/UploadRoot"));
15
15
 
16
+ var _DisabledContext = _interopRequireDefault(require("../ConfigProvider/DisabledContext"));
17
+
16
18
  var __rest = void 0 && (void 0).__rest || function (s, e) {
17
19
  var t = {};
18
20
 
@@ -33,7 +35,10 @@ var LmUpload = function LmUpload(_a, ref) {
33
35
  _ossConfig = _a.ossConfig,
34
36
  resetProps = __rest(_a, ["fileConfig", "fileNames", "components", "ossConfig"]);
35
37
 
36
- var defaultRef = (0, _react.useRef)(null); // 仅在初始化触发一次
38
+ var defaultRef = (0, _react.useRef)(null);
39
+
40
+ var disabled = _react.default.useContext(_DisabledContext.default); // 仅在初始化触发一次
41
+
37
42
 
38
43
  var initConfig = (0, _react.useMemo)(function () {
39
44
  return {
@@ -85,12 +90,12 @@ var LmUpload = function LmUpload(_a, ref) {
85
90
  size: 100,
86
91
  fileSize: 10,
87
92
  fileSizeType: 'M',
88
- uid: 'uid',
93
+ uid: 'fileName',
89
94
  accept: '',
90
95
  type: ['jpg', 'jpeg', 'png'],
91
96
  listType: 'card',
92
97
  readOnly: false,
93
- disabled: false,
98
+ disabled: disabled || false,
94
99
  showUploadList: true,
95
100
  fileList: null,
96
101
  defaultFileList: [],
@@ -100,6 +105,7 @@ var LmUpload = function LmUpload(_a, ref) {
100
105
  itemRender: null,
101
106
  enabledPreview: true,
102
107
  enabledCrop: false,
108
+ enableDrag: false,
103
109
  enabledOss: false,
104
110
  // oss配置
105
111
  ossConfig: function ossConfig() {
@@ -20,6 +20,7 @@ var PictureItem = function PictureItem(_ref) {
20
20
  var file = _ref.file,
21
21
  instance = _ref.instance;
22
22
  var readOnly = instance.readOnly,
23
+ disabled = instance.disabled,
23
24
  remove = instance.remove,
24
25
  preview = instance.preview,
25
26
  download = instance.download,
@@ -41,7 +42,7 @@ var PictureItem = function PictureItem(_ref) {
41
42
  onClick: function onClick() {
42
43
  return download(file);
43
44
  }
44
- }, file[fileNames.fileName])), !readOnly && /*#__PURE__*/React.createElement("div", {
45
+ }, file[fileNames.fileName])), !readOnly && !disabled && /*#__PURE__*/React.createElement("div", {
45
46
  className: "picture_right lm_upload_item_action"
46
47
  }, /*#__PURE__*/React.createElement("div", {
47
48
  className: "action_delete",
@@ -1,6 +1,7 @@
1
- declare const PictureItem: ({ file, index, instance }: {
1
+ declare const PictureItem: ({ file, index, instance, listeners }: {
2
2
  file: any;
3
3
  index: any;
4
4
  instance: any;
5
+ listeners: any;
5
6
  }) => JSX.Element;
6
7
  export default PictureItem;
@@ -78,8 +78,10 @@ var renderThumb = function renderThumb(file) {
78
78
  var PictureItem = function PictureItem(_ref) {
79
79
  var file = _ref.file,
80
80
  index = _ref.index,
81
- instance = _ref.instance;
81
+ instance = _ref.instance,
82
+ listeners = _ref.listeners;
82
83
  var dispatch = instance.dispatch,
84
+ disabled = instance.disabled,
83
85
  readOnly = instance.readOnly,
84
86
  size = instance.size,
85
87
  remove = instance.remove,
@@ -135,13 +137,13 @@ var PictureItem = function PictureItem(_ref) {
135
137
  });
136
138
  };
137
139
 
138
- return /*#__PURE__*/_react.default.createElement("div", {
140
+ return /*#__PURE__*/_react.default.createElement("div", Object.assign({
139
141
  className: (0, _classnames.default)('lm_upload_item', 'lm_upload_item_card', isError && 'lm_upload_item_error'),
140
142
  style: {
141
143
  height: size,
142
144
  width: size
143
145
  }
144
- }, /*#__PURE__*/_react.default.createElement("div", {
146
+ }, listeners || {}), /*#__PURE__*/_react.default.createElement("div", {
145
147
  className: "lm_upload_item_thumb"
146
148
  }, isError || !isImg ? renderThumb(resetFile) : /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Image, {
147
149
  width: resetSize.width,
@@ -153,7 +155,15 @@ var PictureItem = function PictureItem(_ref) {
153
155
  })), /*#__PURE__*/_react.default.createElement("div", {
154
156
  className: "lm_upload_item_mask"
155
157
  }, /*#__PURE__*/_react.default.createElement("div", {
156
- className: "lm_upload_item_action"
158
+ className: "lm_upload_item_action",
159
+ onKeyDown: function onKeyDown(e) {
160
+ e.stopPropagation();
161
+ e.preventDefault();
162
+ },
163
+ onPointerDown: function onPointerDown(e) {
164
+ e.stopPropagation();
165
+ e.preventDefault();
166
+ }
157
167
  }, /*#__PURE__*/_react.default.createElement("div", {
158
168
  className: "action_preview",
159
169
  onClick: handlePreview
@@ -162,7 +172,7 @@ var PictureItem = function PictureItem(_ref) {
162
172
  style: {
163
173
  fontSize: resetSize.fontSize
164
174
  }
165
- })), !readOnly && /*#__PURE__*/_react.default.createElement("div", {
175
+ })), !readOnly && !disabled && /*#__PURE__*/_react.default.createElement("div", {
166
176
  className: "action_delete",
167
177
  onClick: function onClick() {
168
178
  return remove(file);
@@ -19,7 +19,9 @@ var TextItem = function TextItem(_ref) {
19
19
  var file = _ref.file,
20
20
  instance = _ref.instance;
21
21
  var readOnly = instance.readOnly,
22
+ disabled = instance.disabled,
22
23
  remove = instance.remove,
24
+ download = instance.download,
23
25
  fileNames = instance.fileNames;
24
26
  return /*#__PURE__*/React.createElement("div", {
25
27
  className: (0, _classnames.default)('lm_upload_item lm_upload_item_text', file[fileNames.status] === 'error' && 'lm_upload_item_error')
@@ -30,8 +32,11 @@ var TextItem = function TextItem(_ref) {
30
32
  }, /*#__PURE__*/React.createElement(_linkmoreDesign.IconFont, {
31
33
  type: "lmweb-attachment"
32
34
  })), /*#__PURE__*/React.createElement("div", {
33
- className: "lm_upload_item_name"
34
- }, file[fileNames.fileName])), !readOnly && /*#__PURE__*/React.createElement("div", {
35
+ className: "lm_upload_item_name",
36
+ onClick: function onClick() {
37
+ return download(file);
38
+ }
39
+ }, file[fileNames.fileName])), !readOnly && !disabled && /*#__PURE__*/React.createElement("div", {
35
40
  className: "text_right lm_upload_item_text_action"
36
41
  }, /*#__PURE__*/React.createElement("div", {
37
42
  className: "action_delete",
@@ -11,17 +11,24 @@ exports.default = void 0;
11
11
 
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
 
14
+ var _linkmoreDesign = require("linkmore-design");
15
+
14
16
  var _utils = require("../utils");
15
17
 
16
18
  var _RenderItem = _interopRequireDefault(require("./RenderItem"));
17
19
 
18
20
  var LmUploadList = function LmUploadList(_ref) {
19
21
  var instance = _ref.instance;
20
- var getFileHasValue = instance.getFileHasValue,
22
+ var uid = instance.uid,
23
+ getFileHasValue = instance.getFileHasValue,
21
24
  getFileList = instance.getFileList,
22
25
  itemRender = instance.itemRender,
23
26
  listType = instance.listType,
24
- showUploadList = instance.showUploadList;
27
+ showUploadList = instance.showUploadList,
28
+ disabled = instance.disabled,
29
+ enableDrag = instance.enableDrag,
30
+ fileNames = instance.fileNames,
31
+ move = instance.move;
25
32
  if (!showUploadList) return null;
26
33
  var fileList = (0, _react.useMemo)(function () {
27
34
  var _a;
@@ -30,6 +37,51 @@ var LmUploadList = function LmUploadList(_ref) {
30
37
  return a.seq - b.seq;
31
38
  });
32
39
  }, [getFileList]);
40
+
41
+ var handleMove = function handleMove(active, over, fileList) {
42
+ try {
43
+ var fileMap = fileList.map(function (v) {
44
+ if (getFileHasValue(v) === getFileHasValue(active)) {
45
+ return Object.assign(Object.assign({}, v), {
46
+ seq: over[fileNames.seq]
47
+ });
48
+ }
49
+
50
+ if (getFileHasValue(v) === getFileHasValue(over)) {
51
+ return Object.assign(Object.assign({}, v), {
52
+ seq: active[fileNames.seq]
53
+ });
54
+ }
55
+
56
+ return v;
57
+ });
58
+ move(active, over, fileMap);
59
+ } catch (error) {
60
+ console.log('移动出现了错误', error);
61
+ }
62
+ };
63
+
64
+ if (!disabled && enableDrag) {
65
+ return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.LmDrag, {
66
+ options: fileList,
67
+ rowKey: uid,
68
+ move: handleMove
69
+ }, function (_ref2) {
70
+ var item = _ref2.item,
71
+ listeners = _ref2.listeners,
72
+ index = _ref2.index;
73
+ return (0, _utils.render)(itemRender || _RenderItem.default, {
74
+ type: listType,
75
+ key: getFileHasValue(item) || index,
76
+ index: index,
77
+ file: item,
78
+ fileList: fileList,
79
+ instance: instance,
80
+ listeners: listeners
81
+ });
82
+ });
83
+ }
84
+
33
85
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, fileList === null || fileList === void 0 ? void 0 : fileList.map(function (file, idx) {
34
86
  return (0, _utils.render)(itemRender || _RenderItem.default, {
35
87
  type: listType,
@@ -11,6 +11,8 @@ exports.default = void 0;
11
11
 
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
 
14
+ var _classnames = _interopRequireDefault(require("classnames"));
15
+
14
16
  var _UploadPicture = _interopRequireDefault(require("./UploadPicture"));
15
17
 
16
18
  // 上传核心
@@ -24,6 +26,7 @@ var UploadCore = function UploadCore(_ref) {
24
26
  var inputRef = _react.default.useRef(null);
25
27
 
26
28
  var accept = instance.accept,
29
+ disabled = instance.disabled,
27
30
  children = instance.children,
28
31
  beforeUpload = instance.beforeUpload,
29
32
  getUploadStatus = instance.getUploadStatus,
@@ -32,6 +35,7 @@ var UploadCore = function UploadCore(_ref) {
32
35
  var handleClick = (0, _react.useCallback)(function () {
33
36
  var _a;
34
37
 
38
+ if (disabled) return;
35
39
  var isUploading = getUploadStatus().uploading;
36
40
  if (isUploading) return;
37
41
  (_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.click();
@@ -57,7 +61,7 @@ var UploadCore = function UploadCore(_ref) {
57
61
  };
58
62
  return !getIsMaxCount() && /*#__PURE__*/_react.default.createElement("div", {
59
63
  onClick: handleClick,
60
- className: "lm_upload_core"
64
+ className: (0, _classnames.default)('lm_upload_core', disabled && 'disabled')
61
65
  }, children || /*#__PURE__*/_react.default.createElement(_UploadPicture.default, {
62
66
  instance: instance
63
67
  }), /*#__PURE__*/_react.default.createElement("input", Object.assign({
@@ -15,6 +15,7 @@ declare const useCoreOptions: ({ state, dispatch, props }: {
15
15
  remove: (file: any) => Promise<void>;
16
16
  preview: (file: any) => void;
17
17
  download: (file: any) => void;
18
+ move: (active: any, over: any, fileList: any) => void;
18
19
  };
19
20
  RefMethods: {
20
21
  getState: () => any;
@@ -61,22 +61,28 @@ var useCoreOptions = function useCoreOptions(_ref) {
61
61
  fileAreaSize = props.fileAreaSize,
62
62
  enabledOss = props.enabledOss,
63
63
  enableCrop = props.enableCrop,
64
- ossConfig = props.ossConfig; // 获取两个对象是否存在指定值相等
64
+ ossConfig = props.ossConfig;
65
+ /* 获取两个对象是否存在指定值相等
66
+ * 取用户定义的列字段,如果读取不到则取'fileName'对比
67
+ */
65
68
 
66
69
  var getHasEqual = (0, _react.useCallback)(function (obj1, obj2) {
67
70
  var extend = [uid, 'fileName'];
68
71
  var flag = false;
69
72
  extend.forEach(function (v) {
70
- if (!flag) flag = obj1[v] === obj2[v];
73
+ if (!flag && obj1[v] && obj2[v]) {
74
+ flag = obj1[v] === obj2[v];
75
+ }
71
76
  });
72
77
  return flag;
73
- }, []); // 从对象中读取存在的指定属性
78
+ }, [uid]); // 从对象中读取存在的指定属性
74
79
 
75
80
  var getFileHasValue = (0, _react.useCallback)(function (obj) {
81
+ if (!obj) return '';
76
82
  var extend = [uid, 'fileName'];
77
83
  var val = '';
78
84
  extend.forEach(function (v) {
79
- if (!val) val = obj[v];
85
+ if (!val && obj[v]) val = obj[v];
80
86
  });
81
87
  return val;
82
88
  }, [uid]); // 获取当前的文件列表
@@ -478,7 +484,21 @@ var useCoreOptions = function useCoreOptions(_ref) {
478
484
  var _a;
479
485
 
480
486
  (_a = props.onDownload) === null || _a === void 0 ? void 0 : _a.call(props, file);
481
- }, [props.onDownload]);
487
+ }, [props.onDownload]); // 拖拽移动事件
488
+
489
+ var move = (0, _react.useCallback)(function (active, over, fileList) {
490
+ var _a;
491
+
492
+ (_a = props.onMove) === null || _a === void 0 ? void 0 : _a.call(props, active, over, fileList);
493
+ onChange === null || onChange === void 0 ? void 0 : onChange({
494
+ file: active,
495
+ fileList: fileList
496
+ });
497
+ dispatch({
498
+ type: 'changeFileList',
499
+ fileList: fileList
500
+ });
501
+ }, [props.onMove, onChange, dispatch]);
482
502
  var CoreMethods = {
483
503
  getIsMaxCount: getIsMaxCount,
484
504
  getFileHasValue: getFileHasValue,
@@ -488,7 +508,8 @@ var useCoreOptions = function useCoreOptions(_ref) {
488
508
  getUploadStatus: getUploadStatus,
489
509
  remove: remove,
490
510
  preview: preview,
491
- download: download
511
+ download: download,
512
+ move: move
492
513
  };
493
514
  var RefMethods = {
494
515
  getState: function getState() {
@@ -122,6 +122,7 @@
122
122
  gap: 8px;
123
123
  }
124
124
  .lm_upload_wrapper .lm_upload_core {
125
+ position: relative;
125
126
  display: inline-flex;
126
127
  vertical-align: middle;
127
128
  }
@@ -136,6 +137,12 @@
136
137
  cursor: pointer;
137
138
  transition: all 0.3s;
138
139
  }
140
+ .lm_upload_wrapper .lm_upload_core .lm_upload_core_picture::after {
141
+ position: absolute;
142
+ background-color: var(--disabled-bg-color);
143
+ cursor: not-allowed;
144
+ inset: 0;
145
+ }
139
146
  .lm_upload_wrapper .lm_upload_core .lm_upload_core_picture:hover {
140
147
  border-color: var(--primary-color);
141
148
  }
@@ -151,6 +158,16 @@
151
158
  margin-top: var(--gap);
152
159
  color: var(--color-45);
153
160
  }
161
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture {
162
+ border-color: var(--disabled-border-color);
163
+ }
164
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture::after {
165
+ content: '';
166
+ }
167
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .action_plus,
168
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .tip {
169
+ color: var(--disabled-font-color);
170
+ }
154
171
  .lm_upload_wrapper .lm_upload_progress {
155
172
  width: 100%;
156
173
  height: 2px;
@@ -122,6 +122,7 @@
122
122
  gap: 8px;
123
123
  }
124
124
  .lm_upload_wrapper .lm_upload_core {
125
+ position: relative;
125
126
  display: inline-flex;
126
127
  vertical-align: middle;
127
128
  }
@@ -136,6 +137,12 @@
136
137
  cursor: pointer;
137
138
  transition: all 0.3s;
138
139
  }
140
+ .lm_upload_wrapper .lm_upload_core .lm_upload_core_picture::after {
141
+ position: absolute;
142
+ background-color: var(--disabled-bg-color);
143
+ cursor: not-allowed;
144
+ inset: 0;
145
+ }
139
146
  .lm_upload_wrapper .lm_upload_core .lm_upload_core_picture:hover {
140
147
  border-color: var(--primary-color);
141
148
  }
@@ -151,6 +158,16 @@
151
158
  margin-top: var(--gap);
152
159
  color: var(--color-45);
153
160
  }
161
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture {
162
+ border-color: var(--disabled-border-color);
163
+ }
164
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture::after {
165
+ content: '';
166
+ }
167
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .action_plus,
168
+ .lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .tip {
169
+ color: var(--disabled-font-color);
170
+ }
154
171
  .lm_upload_wrapper .lm_upload_progress {
155
172
  width: 100%;
156
173
  height: 2px;
@@ -1,7 +1,8 @@
1
1
  import React from 'react';
2
- interface IMenuData {
2
+ export interface IMenuData {
3
3
  menuId: string;
4
4
  title: string | React.ReactNode;
5
+ hidden?: boolean;
5
6
  }
6
7
  export interface IQuickMenuProps {
7
8
  className?: string;
@@ -9,6 +10,7 @@ export interface IQuickMenuProps {
9
10
  top?: number;
10
11
  menuData: IMenuData[];
11
12
  warpElement: any;
13
+ root?: IntersectionObserver['root'] | undefined;
12
14
  }
13
15
  declare const LMQuickMenu: React.FC<IQuickMenuProps>;
14
16
  export default LMQuickMenu;
@@ -29,7 +29,8 @@ var LMQuickMenu = function LMQuickMenu(props) {
29
29
  top = _props$top === void 0 ? '104px' : _props$top,
30
30
  _props$menuData = props.menuData,
31
31
  menuData = _props$menuData === void 0 ? [] : _props$menuData,
32
- warpElement = props.warpElement;
32
+ warpElement = props.warpElement,
33
+ root = props.root;
33
34
  var idTopInfo = (0, _react.useRef)({});
34
35
 
35
36
  var _useState = (0, _react.useState)(false),
@@ -48,6 +49,11 @@ var LMQuickMenu = function LMQuickMenu(props) {
48
49
  var scroll = (0, _ahooks.useScroll)((0, _domTarget.getTargetElement)(warpElement || document), function () {
49
50
  return scrollOpenStatus;
50
51
  });
52
+ var filterMenuData = (0, _react.useMemo)(function () {
53
+ return menuData === null || menuData === void 0 ? void 0 : menuData.filter(function (item) {
54
+ return item.hidden !== true;
55
+ });
56
+ }, [menuData]);
51
57
 
52
58
  function clearActiveToc() {
53
59
  [].forEach.call(document.querySelectorAll('.lm_menu_list li a'), function (node) {
@@ -71,7 +77,7 @@ var LMQuickMenu = function LMQuickMenu(props) {
71
77
  (_a = menuTimeEventRef.current) === null || _a === void 0 ? void 0 : _a.destroy();
72
78
  }
73
79
 
74
- if (!menuData.length) {
80
+ if (!filterMenuData.length) {
75
81
  return;
76
82
  } // eslint-disable-next-line global-require
77
83
 
@@ -82,12 +88,13 @@ var LMQuickMenu = function LMQuickMenu(props) {
82
88
  var scrollama = require('scrollama');
83
89
 
84
90
  menuTimeEventRef.current = scrollama();
91
+ console.log((0, _domTarget.getTargetElement)(warpElement || document), '--getTargetElement(warpElement || document)');
85
92
  (_c = (_b = menuTimeEventRef.current) === null || _b === void 0 ? void 0 : _b.setup({
86
- step: menuData.map(function (item) {
93
+ step: filterMenuData.map(function (item) {
87
94
  return document.getElementById("".concat(item.menuId));
88
- }).filter(Boolean) // required
89
- // offset: '10px',
90
-
95
+ }).filter(Boolean),
96
+ container: (0, _domTarget.getTargetElement)(warpElement || document),
97
+ root: root ? (0, _domTarget.getTargetElement)(root) : undefined
91
98
  })) === null || _c === void 0 ? void 0 : _c.onStepEnter(function (_ref) {
92
99
  var element = _ref.element;
93
100
  updateActiveToc(element.id);
@@ -95,7 +102,7 @@ var LMQuickMenu = function LMQuickMenu(props) {
95
102
  };
96
103
 
97
104
  function setKeysDom() {
98
- menuData.forEach(function (item) {
105
+ filterMenuData.forEach(function (item) {
99
106
  var _a, _b;
100
107
 
101
108
  var warpTop = ((_a = (0, _domTarget.getTargetElement)(warpElement || document)) === null || _a === void 0 ? void 0 : _a.offsetTop) || 0;
@@ -119,12 +126,6 @@ var LMQuickMenu = function LMQuickMenu(props) {
119
126
  wait: 50
120
127
  });
121
128
 
122
- var bindDom = function bindDom() {
123
- if (!Object.keys(idTopInfo.current).length) {
124
- setKeysDom();
125
- }
126
- };
127
-
128
129
  var handleScroll = function handleScroll() {
129
130
  setScrollOpenStatus(true);
130
131
  };
@@ -139,10 +140,6 @@ var LMQuickMenu = function LMQuickMenu(props) {
139
140
  var _a; // bindScroller();
140
141
 
141
142
 
142
- setTimeout(function () {
143
- bindDom();
144
- bindScroller();
145
- }, 200);
146
143
  (_a = (0, _domTarget.getTargetElement)(warpElement || document)) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', handleScroll, {
147
144
  once: true
148
145
  });
@@ -152,6 +149,12 @@ var LMQuickMenu = function LMQuickMenu(props) {
152
149
  (_a = (0, _domTarget.getTargetElement)(warpElement || document)) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', handleScroll);
153
150
  };
154
151
  }, []);
152
+ (0, _react.useEffect)(function () {
153
+ setTimeout(function () {
154
+ setKeysDom();
155
+ bindScroller();
156
+ }, 200);
157
+ }, [filterMenuData]);
155
158
  return /*#__PURE__*/_react.default.createElement("div", {
156
159
  className: (0, _classnames.default)(prefixCls),
157
160
  onMouseEnter: function onMouseEnter() {
@@ -173,7 +176,7 @@ var LMQuickMenu = function LMQuickMenu(props) {
173
176
  })
174
177
  }), /*#__PURE__*/_react.default.createElement("ul", {
175
178
  className: (0, _classnames.default)('lm_menu_list', hovering && 'show', className)
176
- }, menuData.map(function (item) {
179
+ }, filterMenuData.map(function (item) {
177
180
  return /*#__PURE__*/_react.default.createElement("li", {
178
181
  key: item.menuId,
179
182
  onClick: function onClick() {
@@ -6,6 +6,9 @@ export interface ISelectProps extends SelectProps {
6
6
  Option?: typeof Select.Option;
7
7
  OptGroup?: typeof Select.OptGroup;
8
8
  defaultLabel?: string;
9
+ suffix?: React.ReactNode;
10
+ icon?: React.ReactNode;
11
+ iconClick?: () => void;
9
12
  }
10
13
  declare type SelectType = typeof Select & typeof Select.Option & typeof Select.OptGroup;
11
14
  declare const LMSelect: SelectType;