@zat-design/sisyphus-react 4.5.9 → 4.5.10-beta.2

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 (280) hide show
  1. package/dist/index.esm.css +1 -1
  2. package/dist/less.esm.css +1 -1
  3. package/es/FormsProvider/index.js +14 -21
  4. package/es/ProAction/components/CheckModalContent/index.js +12 -26
  5. package/es/ProAction/index.js +79 -83
  6. package/es/ProAction/propsType.js +0 -1
  7. package/es/ProConfigProvider/index.js +63 -110
  8. package/es/ProConfigProvider/propsType.js +0 -1
  9. package/es/ProDownload/index.d.ts +2 -1
  10. package/es/ProDownload/index.js +74 -69
  11. package/es/ProDownload/propsType.js +0 -1
  12. package/es/ProDownload/utils.d.ts +10 -5
  13. package/es/ProDownload/utils.js +63 -95
  14. package/es/ProDrawerForm/components/ProDrawer/index.js +83 -113
  15. package/es/ProDrawerForm/components/ProModal/index.js +77 -108
  16. package/es/ProDrawerForm/components/index.js +6 -2
  17. package/es/ProDrawerForm/hooks/useConfirmClose.js +20 -39
  18. package/es/ProDrawerForm/index.js +29 -38
  19. package/es/ProDrawerForm/propsType.js +0 -1
  20. package/es/ProDrawerForm/utils/index.js +18 -36
  21. package/es/ProEditLabel/components/RenderProForm.js +45 -49
  22. package/es/ProEditLabel/index.js +126 -163
  23. package/es/ProEditLabel/propsType.js +0 -1
  24. package/es/ProEditLabel/utils/index.js +5 -8
  25. package/es/ProEditTable/components/ActionButton/index.js +111 -119
  26. package/es/ProEditTable/components/RcTable/BaseTable.js +38 -51
  27. package/es/ProEditTable/components/RcTable/DraggableTable.js +97 -129
  28. package/es/ProEditTable/components/RcTable/index.js +6 -4
  29. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +77 -95
  30. package/es/ProEditTable/components/RenderField/index.js +490 -587
  31. package/es/ProEditTable/components/RenderField/propsType.js +0 -1
  32. package/es/ProEditTable/components/RenderField/tools.js +115 -112
  33. package/es/ProEditTable/components/RenderToolbar/index.js +47 -73
  34. package/es/ProEditTable/components/Summary/index.js +38 -64
  35. package/es/ProEditTable/components/Validator/index.js +46 -46
  36. package/es/ProEditTable/components/index.js +12 -5
  37. package/es/ProEditTable/index.js +456 -378
  38. package/es/ProEditTable/propsType.js +0 -1
  39. package/es/ProEditTable/utils/config.js +60 -122
  40. package/es/ProEditTable/utils/diffOriginal.js +45 -82
  41. package/es/ProEditTable/utils/getDefaultProps.js +19 -24
  42. package/es/ProEditTable/utils/index.js +154 -235
  43. package/es/ProEditTable/utils/tools.js +149 -286
  44. package/es/ProEditTable/utils/transform.js +25 -30
  45. package/es/ProEditTable/utils/useEditTableError.js +30 -43
  46. package/es/ProEditTable/utils/useShouldUpdateForTable.js +42 -72
  47. package/es/ProEditTable/utils/validateAll.js +87 -154
  48. package/es/ProEnum/components/Group.js +38 -30
  49. package/es/ProEnum/components/Tag.js +22 -26
  50. package/es/ProEnum/hooks/useEnum.js +48 -116
  51. package/es/ProEnum/hooks/useEnumRequest.js +182 -212
  52. package/es/ProEnum/hooks/useFrequentEnumRequest.js +40 -48
  53. package/es/ProEnum/index.js +162 -172
  54. package/es/ProEnum/propsType.js +0 -1
  55. package/es/ProEnum/utils/eventCenter.js +10 -12
  56. package/es/ProEnum/utils/frequentEnum.js +35 -92
  57. package/es/ProEnum/utils/getEnum.js +32 -90
  58. package/es/ProEnum/utils/getEnumLabel.js +44 -49
  59. package/es/ProEnum/utils/index.js +93 -207
  60. package/es/ProForm/components/Container.js +13 -28
  61. package/es/ProForm/components/FormFooter/index.js +36 -44
  62. package/es/ProForm/components/FormFooter/propsType.js +0 -1
  63. package/es/ProForm/components/base/Checkbox/index.js +32 -59
  64. package/es/ProForm/components/base/DatePicker/index.js +49 -71
  65. package/es/ProForm/components/base/Input/index.js +63 -97
  66. package/es/ProForm/components/base/Input/propsType.js +0 -1
  67. package/es/ProForm/components/base/InputNumber/index.js +118 -172
  68. package/es/ProForm/components/base/Radio/index.js +39 -52
  69. package/es/ProForm/components/base/RangePicker/index.js +109 -127
  70. package/es/ProForm/components/base/RangePicker/useDateRange.js +20 -17
  71. package/es/ProForm/components/base/Select/index.js +63 -89
  72. package/es/ProForm/components/base/Switch/index.js +27 -35
  73. package/es/ProForm/components/base/SwitchCheckbox/index.js +36 -54
  74. package/es/ProForm/components/base/TextArea/index.js +30 -41
  75. package/es/ProForm/components/base/TimePicker/index.js +27 -37
  76. package/es/ProForm/components/combination/Container/index.js +37 -47
  77. package/es/ProForm/components/combination/Container/propsType.js +0 -1
  78. package/es/ProForm/components/combination/FormList/components/ActionButton.js +165 -237
  79. package/es/ProForm/components/combination/FormList/components/BlockFields.js +98 -102
  80. package/es/ProForm/components/combination/FormList/components/Empty.js +28 -55
  81. package/es/ProForm/components/combination/FormList/components/LineFields.js +57 -54
  82. package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +61 -109
  83. package/es/ProForm/components/combination/FormList/index.js +151 -161
  84. package/es/ProForm/components/combination/FormList/propsType.js +0 -1
  85. package/es/ProForm/components/combination/FormList/style/index.less +6 -0
  86. package/es/ProForm/components/combination/FormList/utils.js +22 -38
  87. package/es/ProForm/components/combination/Group/component/AddonWrapper/index.js +12 -28
  88. package/es/ProForm/components/combination/Group/component/ComRender.js +50 -111
  89. package/es/ProForm/components/combination/Group/component/FlexibleGroup.js +106 -213
  90. package/es/ProForm/components/combination/Group/hooks/index.js +69 -129
  91. package/es/ProForm/components/combination/Group/index.js +87 -126
  92. package/es/ProForm/components/combination/Group/propsType.js +0 -1
  93. package/es/ProForm/components/combination/Group/utils/index.js +124 -239
  94. package/es/ProForm/components/combination/ProCascader/index.js +156 -199
  95. package/es/ProForm/components/combination/ProCascader/propsType.js +0 -1
  96. package/es/ProForm/components/combination/ProCascader/utils/index.js +12 -21
  97. package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +72 -70
  98. package/es/ProForm/components/combination/ProModalSelect/index.js +309 -347
  99. package/es/ProForm/components/combination/ProModalSelect/propsType.js +0 -1
  100. package/es/ProForm/components/combination/ProModalSelect/utils/index.js +32 -39
  101. package/es/ProForm/components/combination/ProNumberRange/index.js +100 -156
  102. package/es/ProForm/components/combination/ProNumberRange/propsType.js +0 -1
  103. package/es/ProForm/components/combination/ProRangeLimit/index.js +104 -115
  104. package/es/ProForm/components/combination/ProRangeLimit/propsType.js +0 -1
  105. package/es/ProForm/components/combination/ProTimeLimit/hooks/useControlled.js +16 -16
  106. package/es/ProForm/components/combination/ProTimeLimit/index.js +75 -109
  107. package/es/ProForm/components/index.js +56 -34
  108. package/es/ProForm/components/render/ChangedWrapper.js +85 -94
  109. package/es/ProForm/components/render/ConfirmWrapper.js +27 -39
  110. package/es/ProForm/components/render/CustomComponentViewWrapper.js +65 -82
  111. package/es/ProForm/components/render/Render.js +223 -329
  112. package/es/ProForm/components/render/RenderFields.js +76 -113
  113. package/es/ProForm/components/render/propsType.js +0 -1
  114. package/es/ProForm/hooks/useControlled.js +8 -10
  115. package/es/ProForm/hooks/useDeepCompareMemo.js +11 -11
  116. package/es/ProForm/hooks/useFieldProps.js +8 -4
  117. package/es/ProForm/hooks/useForm.js +50 -110
  118. package/es/ProForm/hooks/useRules.js +17 -33
  119. package/es/ProForm/hooks/useShouldUpdate.js +77 -152
  120. package/es/ProForm/hooks/useWatch.js +62 -134
  121. package/es/ProForm/index.js +157 -194
  122. package/es/ProForm/propsType.js +15 -7
  123. package/es/ProForm/utils/buildFormItemProps.js +51 -58
  124. package/es/ProForm/utils/diffOriginal.js +43 -73
  125. package/es/ProForm/utils/getDefaultProps.js +18 -24
  126. package/es/ProForm/utils/index.js +160 -235
  127. package/es/ProForm/utils/processDependencies.js +21 -60
  128. package/es/ProForm/utils/reactiveValues.js +20 -34
  129. package/es/ProForm/utils/rulesCreator.js +42 -40
  130. package/es/ProForm/utils/transformNames.js +10 -13
  131. package/es/ProForm/utils/transformValue.js +16 -29
  132. package/es/ProForm/utils/valueType.js +96 -178
  133. package/es/ProIcon/config/index.js +340 -274
  134. package/es/ProIcon/index.js +135 -209
  135. package/es/ProIcon/propsTypes.js +0 -1
  136. package/es/ProIcon/utils/index.js +24 -39
  137. package/es/ProLayout/components/Layout/Header/index.js +108 -141
  138. package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +134 -190
  139. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +113 -139
  140. package/es/ProLayout/components/Layout/Menu/OpenMenu/propsType.js +0 -1
  141. package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +23 -31
  142. package/es/ProLayout/components/Layout/Menu/index.js +92 -89
  143. package/es/ProLayout/components/Layout/Notice/index.js +13 -27
  144. package/es/ProLayout/components/Layout/index.js +8 -3
  145. package/es/ProLayout/components/ProCollapse/PropTypes.js +0 -1
  146. package/es/ProLayout/components/ProCollapse/index.js +89 -111
  147. package/es/ProLayout/components/ProFooter/PropTypes.js +0 -1
  148. package/es/ProLayout/components/ProFooter/index.js +27 -24
  149. package/es/ProLayout/components/ProHeader/PropTypes.js +0 -1
  150. package/es/ProLayout/components/ProHeader/components/Copy/index.js +23 -21
  151. package/es/ProLayout/components/ProHeader/components/Describe/index.js +67 -84
  152. package/es/ProLayout/components/ProHeader/components/ProBackBtn/index.js +18 -21
  153. package/es/ProLayout/components/ProHeader/components/ProBackBtn/propsType.js +0 -1
  154. package/es/ProLayout/components/ProHeader/components/index.js +6 -2
  155. package/es/ProLayout/components/ProHeader/index.js +216 -356
  156. package/es/ProLayout/components/ProHeader/utils/index.js +19 -26
  157. package/es/ProLayout/components/TabsManager/components/TabContextMenu.js +92 -85
  158. package/es/ProLayout/components/TabsManager/components/TabItem.js +53 -63
  159. package/es/ProLayout/components/TabsManager/components/TabsContext.js +5 -5
  160. package/es/ProLayout/components/TabsManager/components/TabsHeader.js +42 -52
  161. package/es/ProLayout/components/TabsManager/hooks/useActiveTab.js +8 -9
  162. package/es/ProLayout/components/TabsManager/hooks/useIframeRoute.js +19 -32
  163. package/es/ProLayout/components/TabsManager/hooks/useProLayoutTabs.js +6 -20
  164. package/es/ProLayout/components/TabsManager/hooks/useTabsCache.js +25 -42
  165. package/es/ProLayout/components/TabsManager/hooks/useTabsState.js +320 -350
  166. package/es/ProLayout/components/TabsManager/hooks/useTabsUrlSync.d.ts +19 -0
  167. package/es/ProLayout/components/TabsManager/hooks/useTabsUrlSync.js +332 -0
  168. package/es/ProLayout/components/TabsManager/index.js +407 -351
  169. package/es/ProLayout/components/TabsManager/propTypes.d.ts +4 -0
  170. package/es/ProLayout/components/TabsManager/propTypes.js +7 -15
  171. package/es/ProLayout/components/TabsManager/style/index.less +1 -1
  172. package/es/ProLayout/components/TabsManager/utils/historyObserver.d.ts +7 -0
  173. package/es/ProLayout/components/TabsManager/utils/historyObserver.js +65 -0
  174. package/es/ProLayout/components/TabsManager/utils/index.d.ts +15 -2
  175. package/es/ProLayout/components/TabsManager/utils/index.js +156 -159
  176. package/es/ProLayout/components/index.js +8 -3
  177. package/es/ProLayout/index.js +173 -228
  178. package/es/ProLayout/propTypes.d.ts +28 -1
  179. package/es/ProLayout/propTypes.js +12 -52
  180. package/es/ProLayout/utils/index.js +48 -128
  181. package/es/ProSelect/components/AdaptiveTooltip.js +26 -25
  182. package/es/ProSelect/index.js +187 -223
  183. package/es/ProSelect/propsType.js +0 -1
  184. package/es/ProSelect/style/index.less +13 -0
  185. package/es/ProSelect/utils/index.js +100 -146
  186. package/es/ProStep/components/Anchor/index.js +71 -82
  187. package/es/ProStep/components/Item/index.js +49 -56
  188. package/es/ProStep/components/LazyLoad/index.js +23 -29
  189. package/es/ProStep/components/Listener/index.js +20 -33
  190. package/es/ProStep/components/Step/index.js +31 -38
  191. package/es/ProStep/constants.js +4 -1
  192. package/es/ProStep/index.js +166 -153
  193. package/es/ProStep/propsType.js +0 -1
  194. package/es/ProStep/style/index.less +1 -1
  195. package/es/ProStep/utils/index.js +29 -55
  196. package/es/ProStepTab/index.js +83 -138
  197. package/es/ProStepTab/propsType.js +0 -1
  198. package/es/ProTable/components/EditableCell/EditIcon.js +10 -14
  199. package/es/ProTable/components/EditableCell/index.js +37 -71
  200. package/es/ProTable/components/EditableCell/propsType.js +0 -1
  201. package/es/ProTable/components/FormatColumn/index.js +209 -340
  202. package/es/ProTable/components/FormatColumn/propsType.js +0 -1
  203. package/es/ProTable/components/RcTable/components/BaseTable/index.js +35 -39
  204. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +80 -107
  205. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/index.js +54 -48
  206. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/propsType.js +0 -1
  207. package/es/ProTable/components/RcTable/components/DraggableTable/index.js +47 -54
  208. package/es/ProTable/components/RcTable/index.js +6 -4
  209. package/es/ProTable/components/RenderColumn/index.js +158 -186
  210. package/es/ProTable/components/RenderEmptyText/index.js +12 -21
  211. package/es/ProTable/components/RenderFooter/index.js +15 -15
  212. package/es/ProTable/components/RenderSummary/index.js +33 -50
  213. package/es/ProTable/components/RenderTableHeader/index.js +44 -46
  214. package/es/ProTable/components/RenderTabs/index.js +47 -51
  215. package/es/ProTable/components/TableResizable/index.js +56 -72
  216. package/es/ProTable/components/TooltipTitle/index.js +13 -21
  217. package/es/ProTable/components/index.js +16 -36
  218. package/es/ProTable/hooks/useAntdTable.js +191 -224
  219. package/es/ProTable/index.js +232 -249
  220. package/es/ProTable/propsType.js +0 -1
  221. package/es/ProTable/utils/columnStorage.js +63 -88
  222. package/es/ProTable/utils/index.js +57 -90
  223. package/es/ProTabs/components/Card/index.js +20 -48
  224. package/es/ProTabs/components/index.js +4 -1
  225. package/es/ProTabs/index.js +41 -58
  226. package/es/ProTabs/propType.js +0 -1
  227. package/es/ProThemeTools/component/ProTools/index.js +106 -158
  228. package/es/ProThemeTools/component/index.js +4 -1
  229. package/es/ProThemeTools/context/ThemeContext.js +67 -146
  230. package/es/ProThemeTools/index.js +103 -156
  231. package/es/ProThemeTools/propsType.js +0 -1
  232. package/es/ProThemeTools/utils/index.js +60 -109
  233. package/es/ProTooltip/index.js +132 -168
  234. package/es/ProTooltip/propsType.js +0 -1
  235. package/es/ProTree/components/AdaptiveTooltip.js +15 -17
  236. package/es/ProTree/components/CloseIcon.js +18 -26
  237. package/es/ProTree/components/List.js +28 -47
  238. package/es/ProTree/components/ProTree.js +152 -211
  239. package/es/ProTree/components/ProTreeSelect/index.js +255 -459
  240. package/es/ProTree/components/ProTreeSelect/propsType.js +0 -1
  241. package/es/ProTree/components/SearchTitle.js +23 -42
  242. package/es/ProTree/components/Tree.js +147 -195
  243. package/es/ProTree/components/index.js +10 -5
  244. package/es/ProTree/index.js +12 -16
  245. package/es/ProTree/propsType.js +0 -1
  246. package/es/ProTree/utils.js +46 -118
  247. package/es/ProTreeModal/components/Cascader.js +56 -64
  248. package/es/ProTreeModal/components/CloseIcon.js +18 -26
  249. package/es/ProTreeModal/components/List.js +114 -180
  250. package/es/ProTreeModal/components/SearchTitle.js +15 -18
  251. package/es/ProTreeModal/components/SortableItem.js +29 -58
  252. package/es/ProTreeModal/components/Tree.js +99 -113
  253. package/es/ProTreeModal/components/Trigger.js +87 -121
  254. package/es/ProTreeModal/components/index.js +14 -6
  255. package/es/ProTreeModal/index.js +397 -438
  256. package/es/ProTreeModal/propsType.js +0 -1
  257. package/es/ProTreeModal/utils.js +52 -95
  258. package/es/ProUpload/components/ButtonRender.js +44 -54
  259. package/es/ProUpload/components/DragRender.js +94 -148
  260. package/es/ProUpload/components/DraggableUploadListItem.js +12 -25
  261. package/es/ProUpload/components/Example.js +27 -31
  262. package/es/ProUpload/components/FileItem.js +69 -163
  263. package/es/ProUpload/components/ImageRender.js +134 -170
  264. package/es/ProUpload/index.js +68 -100
  265. package/es/ProUpload/propsType.js +0 -1
  266. package/es/ProUpload/uitls.js +8 -4
  267. package/es/ProUtils/utils/index.js +17 -13
  268. package/es/ProViewer/index.js +154 -175
  269. package/es/ProViewer/propsType.js +0 -5
  270. package/es/ProWaterMark/index.js +9 -16
  271. package/es/ProWaterMark/propsType.js +0 -1
  272. package/es/hooks/useDraggableRow.js +25 -53
  273. package/es/index.js +57 -77
  274. package/es/locale/en_US.js +153 -142
  275. package/es/locale/index.js +23 -36
  276. package/es/locale/zh_CN.js +145 -142
  277. package/es/tokens.js +84 -83
  278. package/es/utils/index.js +24 -51
  279. package/package.json +4 -2
  280. package/es/ProConfigProvider/demo/locale.js +0 -58
@@ -1,155 +1,107 @@
1
- import _omit from "lodash/omit";
2
- import _isFunction from "lodash/isFunction";
3
- import { Space, Button } from 'antd';
4
- import { PlusOutlined } from '@ant-design/icons';
5
- import React, { useMemo } from 'react';
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ import { Space, Button } from "antd";
3
+ import { PlusOutlined } from "@ant-design/icons";
4
+ import isFunction from "lodash/isFunction";
5
+ import omit from "lodash/omit";
6
+ import { useMemo } from "react";
6
7
  import locale from "../../../../../locale";
7
- import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
8
8
  const actions = {
9
9
  add: {
10
- onClick: (value, {
11
- operation
12
- }) => {
10
+ onClick: (value, { operation }) => {
13
11
  operation.add({});
14
12
  },
15
13
  label: `${locale.ProForm.formListActions[5]}`,
16
14
  // 新增一行
17
- icon: /*#__PURE__*/_jsx(PlusOutlined, {})
15
+ icon: /* @__PURE__ */ jsx(PlusOutlined, {})
18
16
  }
19
17
  };
20
- const defaultActionProps = [{
21
- type: 'add'
22
- }];
23
- const filterKeys = ['actionType', 'addIndex'];
24
- const ToolbarButton = props => {
25
- const {
26
- namePath,
27
- form,
28
- operation,
29
- length,
30
- fields,
31
- min,
32
- max,
33
- disabled,
34
- isView
35
- } = props;
36
-
37
- // 默认显示一个delete
18
+ const defaultActionProps = [{ type: "add" }];
19
+ const filterKeys = ["actionType", "addIndex", "show"];
20
+ const ToolbarButton = (props) => {
21
+ const { namePath, form, operation, length, fields, min, max, disabled, isView } = props;
38
22
  const toolbarProps = useMemo(() => {
39
- // 兼容 actionType 和 type
40
- const _toolbarProps = props.toolbarProps?.map(item => {
23
+ var _a;
24
+ const _toolbarProps = (_a = props.toolbarProps) == null ? void 0 : _a.map((item) => {
41
25
  return {
42
26
  ...item,
43
27
  type: item.actionType || item.type
44
28
  };
45
29
  });
46
- if (!_toolbarProps?.find(item => item.type === 'add')) {
30
+ if (!(_toolbarProps == null ? void 0 : _toolbarProps.find((item) => item.type === "add"))) {
47
31
  return _toolbarProps ? [..._toolbarProps, ...defaultActionProps] : defaultActionProps;
48
32
  }
49
33
  return _toolbarProps;
50
34
  }, [props.toolbarProps]);
51
35
  const handleClick = async (defaultCallback, callback, item) => {
52
36
  const value = form.getFieldValue(namePath);
53
- const data = await callback?.(value, {
54
- operation,
55
- form,
56
- namePath,
57
- index: value?.length || 0
58
- });
37
+ const data = await (callback == null ? void 0 : callback(value, { operation, form, namePath, index: (value == null ? void 0 : value.length) || 0 }));
59
38
  if (!callback || data === true) {
60
- if (item?.type === 'add') {
61
- // 如果有 addIndex 配置,使用它计算插入位置
62
- if (item.addIndex) {
63
- const insertIndex = typeof item.addIndex === 'function' ? item.addIndex(value, {
64
- namePath,
65
- form,
66
- operation,
67
- index: value?.length || 0
68
- }) : item.addIndex;
39
+ if ((item == null ? void 0 : item.type) === "add") {
40
+ if (item.addIndex !== void 0) {
41
+ const insertIndex = typeof item.addIndex === "function" ? item.addIndex(value, { namePath, form, operation, index: (value == null ? void 0 : value.length) || 0 }) : item.addIndex;
69
42
  operation.add(data, insertIndex);
70
43
  } else {
71
- operation.add(data); // 默认插入到末尾
44
+ operation.add(data);
72
45
  }
73
46
  } else {
74
- defaultCallback?.(value, {
75
- operation,
76
- form,
77
- namePath,
78
- index: value?.length || 0
79
- });
47
+ defaultCallback == null ? void 0 : defaultCallback(value, { operation, form, namePath, index: (value == null ? void 0 : value.length) || 0 });
80
48
  }
81
49
  return;
82
50
  }
83
- if (item?.type === 'add' && data) {
84
- // 如果有 addIndex 配置,使用它计算插入位置
85
- if (item.addIndex) {
86
- const insertIndex = typeof item.addIndex === 'function' ? item.addIndex(value, {
87
- namePath,
88
- form,
89
- operation,
90
- index: value?.length || 0
91
- }) : item.addIndex;
51
+ if ((item == null ? void 0 : item.type) === "add" && data) {
52
+ if (item.addIndex !== void 0) {
53
+ const insertIndex = typeof item.addIndex === "function" ? item.addIndex(value, { namePath, form, operation, index: (value == null ? void 0 : value.length) || 0 }) : item.addIndex;
92
54
  operation.add(data, insertIndex);
93
55
  } else {
94
- operation.add(data); // 默认插入到末尾
56
+ operation.add(data);
95
57
  }
96
58
  }
97
59
  };
98
60
  const customClick = (callback, item) => {
99
61
  const value = form.getFieldValue(namePath);
100
- callback?.(value, {
101
- operation,
102
- form,
103
- namePath,
104
- index: 0
105
- });
62
+ callback == null ? void 0 : callback(value, { operation, form, namePath, index: 0 });
106
63
  };
107
- return /*#__PURE__*/_jsx(Space, {
108
- align: "start",
109
- className: "pro-form-list-toolbar",
110
- children: toolbarProps?.map(item => {
111
- if (item.show === false) return /*#__PURE__*/_jsx(_Fragment, {});
112
- if (_isFunction(item.show) && !item.show(form.getFieldValue(namePath), {
113
- namePath,
114
- form
115
- })) {
116
- return /*#__PURE__*/_jsx(_Fragment, {});
64
+ return /* @__PURE__ */ jsx(Space, { align: "start", className: "pro-form-list-toolbar", children: toolbarProps == null ? void 0 : toolbarProps.map((item) => {
65
+ if (item.show === false)
66
+ return /* @__PURE__ */ jsx(Fragment, {});
67
+ if (isFunction(item.show) && !item.show(form.getFieldValue(namePath), { namePath, form })) {
68
+ return /* @__PURE__ */ jsx(Fragment, {});
69
+ }
70
+ const { label, onClick, onHandle, type, ...rest } = item;
71
+ const toolbarKey = `${namePath.join(".")}-${type ?? "custom"}-${label ?? ""}`;
72
+ const _onClick = onClick || onHandle;
73
+ if (type === "add") {
74
+ if (disabled || isView)
75
+ return /* @__PURE__ */ jsx(Fragment, {});
76
+ const { onClick: internalOnClick, label: defaultLabel, ...defaultRest } = actions[type];
77
+ if (max && max <= fields.length && type === "add") {
78
+ return false;
117
79
  }
118
- const {
119
- label,
120
- onClick,
121
- onHandle,
122
- type,
123
- ...rest
124
- } = item;
125
- const toolbarKey = `${namePath.join('.')}-${type ?? 'custom'}-${label ?? ''}`;
126
- const _onClick = onClick || onHandle;
127
- if (type === 'add') {
128
- if (disabled || isView) return /*#__PURE__*/_jsx(_Fragment, {});
129
- const {
130
- onClick: internalOnClick,
131
- label: defaultLabel,
132
- ...defaultRest
133
- } = actions[type];
134
- // 大于等于max不可新增
135
- if (max && max <= fields.length && type === 'add') {
136
- return false;
137
- }
138
- return /*#__PURE__*/_jsx(Button, {
80
+ return /* @__PURE__ */ jsx(
81
+ Button,
82
+ {
139
83
  ...actions[type],
140
- ..._omit(rest, filterKeys),
84
+ ...omit(rest, filterKeys),
141
85
  type: "link",
142
86
  onClick: () => handleClick(internalOnClick, _onClick, item),
143
87
  children: label || defaultLabel
144
- }, toolbarKey);
145
- }
146
- return /*#__PURE__*/_jsx(Button, {
147
- ..._omit(rest, filterKeys),
88
+ },
89
+ toolbarKey
90
+ );
91
+ }
92
+ return /* @__PURE__ */ jsx(
93
+ Button,
94
+ {
95
+ ...omit(rest, filterKeys),
148
96
  type: "link",
149
97
  onClick: () => customClick(onClick, item),
150
98
  children: label
151
- }, toolbarKey);
152
- })
153
- });
99
+ },
100
+ toolbarKey
101
+ );
102
+ }) });
103
+ };
104
+ var ToolbarButton_default = ToolbarButton;
105
+ export {
106
+ ToolbarButton_default as default
154
107
  };
155
- export default ToolbarButton;
@@ -1,8 +1,9 @@
1
- import _get from "lodash/get";
2
- import React, { forwardRef, useCallback, useImperativeHandle } from 'react';
3
- import { Form } from 'antd';
4
- import { DndContext } from '@dnd-kit/core';
5
- import { SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { forwardRef, useCallback, useImperativeHandle } from "react";
3
+ import { Form } from "antd";
4
+ import { DndContext } from "@dnd-kit/core";
5
+ import get from "lodash/get";
6
+ import { SortableContext, verticalListSortingStrategy } from "@dnd-kit/sortable";
6
7
  import { toArray } from "../../../utils";
7
8
  import { namesPathTransform, isLegacyMode } from "./utils";
8
9
  import ToolbarButton from "./components/ToolbarButton";
@@ -11,7 +12,6 @@ import LineFields from "./components/LineFields";
11
12
  import Empty from "./components/Empty";
12
13
  import ProForm from "../../../../ProForm";
13
14
  import { useProConfig } from "../../../../ProConfigProvider";
14
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  const FormList = (props, ref) => {
16
16
  const {
17
17
  columns,
@@ -20,7 +20,7 @@ const FormList = (props, ref) => {
20
20
  toolbarProps,
21
21
  fields,
22
22
  operation,
23
- mode = 'line',
23
+ mode = "line",
24
24
  meta,
25
25
  span = 8,
26
26
  disabled,
@@ -29,175 +29,165 @@ const FormList = (props, ref) => {
29
29
  titlePosition,
30
30
  className
31
31
  } = props;
32
- const _fields = fields.map(item => ({
33
- ...item,
34
- key: String(item.key)
35
- }));
36
- const {
37
- form,
38
- name,
39
- isView,
40
- diffConfig,
41
- namePath,
42
- source
43
- } = ProForm.useFieldProps() || {};
44
- const {
45
- isDiffAll
46
- } = useProConfig('ProForm');
47
- const {
48
- errors
49
- } = meta;
50
-
51
- // 当 FormList 作为 ProEditTable 的列时,otherProps 中的 name 是完整绝对路径(如 ['bindClauseCategoryList', 0, 'test'])
52
- // 此时直接使用 toArray(name) 作为 _namePath,避免公式拼接导致前缀重复
53
- const _namePath = source === 'ProEditTable' ? toArray(name) : namePath ? [...namePath.slice(0, -1), ...toArray(name)] : toArray(name);
54
- const orgValues = _get(diffConfig?.originalValues, name);
32
+ const _fields = fields.map((item) => ({ ...item, key: String(item.key) }));
33
+ const { form, name, isView, diffConfig, namePath, source } = ProForm.useFieldProps() || {};
34
+ const { isDiffAll } = useProConfig("ProForm");
35
+ const { errors } = meta;
36
+ const _namePath = source === "ProEditTable" ? toArray(name) : namePath ? [...namePath.slice(0, -1), ...toArray(name)] : toArray(name);
37
+ const orgValues = get(diffConfig == null ? void 0 : diffConfig.originalValues, name);
55
38
  const _diffConfig = {
56
39
  ...diffConfig,
57
- originalValues: diffConfig?.originalValues && isDiffAll ? orgValues || [] : orgValues
40
+ originalValues: (diffConfig == null ? void 0 : diffConfig.originalValues) && isDiffAll ? orgValues || [] : orgValues
58
41
  };
59
- const processColumns = useCallback((fieldName, namePath) => {
60
- return columns.map(item => {
61
- // 如果是灵活模式的 Group,需要给 children 添加参数
62
- if (!isLegacyMode(item) && item?.type === 'Group') {
63
- const fieldProps = item?.fieldProps;
64
- const children = fieldProps?.children;
65
- if (children) {
66
- const childrenArray = Array.isArray(children) ? children : [children];
67
- // 给每个 child 添加 index、name、namePath、listName 参数
68
- const processedChildren = childrenArray.map(child => {
69
- const childName = child?.name;
70
- return {
71
- ...child,
42
+ const processColumns = useCallback(
43
+ (fieldName, namePath2) => {
44
+ return columns.map((item) => {
45
+ if (!isLegacyMode(item) && (item == null ? void 0 : item.type) === "Group") {
46
+ const fieldProps = item == null ? void 0 : item.fieldProps;
47
+ const children = fieldProps == null ? void 0 : fieldProps.children;
48
+ if (children) {
49
+ const childrenArray = Array.isArray(children) ? children : [children];
50
+ const processedChildren = childrenArray.map((child) => {
51
+ const childName = child == null ? void 0 : child.name;
52
+ return {
53
+ ...child,
54
+ index: fieldName,
55
+ name: [fieldName, ...toArray(childName)],
56
+ namePath: namePath2,
57
+ listName: childName ? [...namePath2, ...toArray(childName)] : void 0,
58
+ source: "FormList"
59
+ };
60
+ });
61
+ const newFieldProps = {
62
+ ...fieldProps,
63
+ children: Array.isArray(children) ? processedChildren : processedChildren[0]
64
+ };
65
+ const column2 = {
66
+ ...item,
67
+ fieldProps: newFieldProps,
72
68
  index: fieldName,
73
- name: [fieldName, ...toArray(childName)],
74
- namePath,
75
- listName: childName ? [...namePath, ...toArray(childName)] : undefined,
76
- source: 'FormList'
69
+ label: mode === "less" ? void 0 : item.label
77
70
  };
78
- });
79
-
80
- // 创建新的 fieldProps,包含处理后的 children
81
- const newFieldProps = {
82
- ...fieldProps,
83
- children: Array.isArray(children) ? processedChildren : processedChildren[0]
84
- };
85
-
86
- // 创建新的 column,使用新的 fieldProps
87
- const column = {
88
- ...item,
89
- fieldProps: newFieldProps,
90
- index: fieldName,
91
- label: mode === 'less' ? undefined : item.label
92
- };
93
- return column;
71
+ return column2;
72
+ }
94
73
  }
95
- }
96
-
97
- // names的name处理
98
- const _name = Array.isArray(item?.names) ? [fieldName, namesPathTransform({
99
- names: item?.names,
100
- prefixNamePath: namePath,
101
- type: item.type
102
- })] : [fieldName, ...toArray(item.name)];
103
- const column = {
104
- ...item,
105
- name: _name,
106
- names: item?.names ? item.names.map(nameItem => {
107
- // 传给Group的names会被渲染成真实FormItem 不能传完整name
108
- return [...namePath, ...toArray(nameItem)];
109
- }) : item.names,
110
- index: fieldName,
111
- namePath,
112
- listName: item.name ? [...namePath, ...toArray(item.name)] : undefined,
113
- label: mode === 'less' ? undefined : item.label
114
- };
115
- return column;
116
- });
117
- }, [columns, mode]);
74
+ const _name = Array.isArray(item == null ? void 0 : item.names) ? [
75
+ fieldName,
76
+ namesPathTransform({
77
+ names: item == null ? void 0 : item.names,
78
+ prefixNamePath: namePath2,
79
+ type: item.type
80
+ })
81
+ ] : [fieldName, ...toArray(item.name)];
82
+ const column = {
83
+ ...item,
84
+ name: _name,
85
+ names: (item == null ? void 0 : item.names) ? item.names.map((nameItem) => {
86
+ return [...namePath2, ...toArray(nameItem)];
87
+ }) : item.names,
88
+ index: fieldName,
89
+ namePath: namePath2,
90
+ listName: item.name ? [...namePath2, ...toArray(item.name)] : void 0,
91
+ label: mode === "less" ? void 0 : item.label
92
+ };
93
+ return column;
94
+ });
95
+ },
96
+ [columns, mode]
97
+ );
118
98
  useImperativeHandle(ref, () => {
119
99
  return {
120
100
  operation
121
101
  };
122
102
  });
123
- const handleDragEnd = drag => {
124
- const {
125
- active,
126
- over
127
- } = drag;
103
+ const handleDragEnd = (drag) => {
104
+ const { active, over } = drag;
128
105
  if (_fields.length > 1 && active.id !== over.id) {
129
- const activeIndex = _fields.findIndex(item => item.key === active.id);
130
- const overIndex = _fields.findIndex(item => item.key === over.id);
106
+ const activeIndex = _fields.findIndex((item) => item.key === active.id);
107
+ const overIndex = _fields.findIndex((item) => item.key === over.id);
131
108
  props.operation.move(activeIndex, overIndex);
132
109
  }
133
110
  };
134
- return /*#__PURE__*/_jsx("div", {
135
- className: className,
136
- children: /*#__PURE__*/_jsx(DndContext, {
137
- onDragEnd: handleDragEnd,
138
- children: /*#__PURE__*/_jsxs(SortableContext, {
139
- items: _fields.map(item => ({
140
- id: item.key
141
- })),
142
- strategy: verticalListSortingStrategy,
143
- children: [_fields.map((field, index) => {
144
- const namePath = [..._namePath, field.name];
145
- const _columns = processColumns(index, namePath);
146
- return mode === 'block' ? /*#__PURE__*/_jsx(BlockFields, {
147
- ...props,
148
- columns: _columns,
149
- disabled: disabled,
150
- isView: isView,
151
- namePath: namePath,
152
- index: index,
153
- field: field,
154
- colProps: {
155
- span
111
+ return /* @__PURE__ */ jsx("div", { className, children: /* @__PURE__ */ jsx(DndContext, { onDragEnd: handleDragEnd, children: /* @__PURE__ */ jsxs(
112
+ SortableContext,
113
+ {
114
+ items: _fields.map((item) => ({
115
+ id: item.key
116
+ })),
117
+ strategy: verticalListSortingStrategy,
118
+ children: [
119
+ _fields.map((field, index) => {
120
+ const namePath2 = [..._namePath, field.name];
121
+ const _columns = processColumns(index, namePath2);
122
+ return mode === "block" ? /* @__PURE__ */ jsx(
123
+ BlockFields,
124
+ {
125
+ ...props,
126
+ columns: _columns,
127
+ disabled,
128
+ isView,
129
+ namePath: namePath2,
130
+ index,
131
+ field,
132
+ colProps: { span },
133
+ form,
134
+ diffConfig: _diffConfig,
135
+ hideStartEndActionProps,
136
+ titlePosition
156
137
  },
157
- form: form,
158
- diffConfig: _diffConfig,
159
- hideStartEndActionProps: hideStartEndActionProps,
160
- titlePosition: titlePosition
161
- }, field.key) : /*#__PURE__*/_jsx(LineFields, {
162
- className: _fields.length === index + 1 ? 'pro-form-list-last' : '',
163
- ...props,
164
- mode: mode,
165
- columns: _columns,
166
- disabled: disabled,
167
- isView: isView,
168
- namePath: namePath,
169
- index: index,
170
- field: field,
171
- colProps: {
172
- span: mode === 'less' ? 24 : span
138
+ field.key
139
+ ) : /* @__PURE__ */ jsx(
140
+ LineFields,
141
+ {
142
+ className: _fields.length === index + 1 ? "pro-form-list-last" : "",
143
+ ...props,
144
+ mode,
145
+ columns: _columns,
146
+ disabled,
147
+ isView,
148
+ namePath: namePath2,
149
+ index,
150
+ field,
151
+ colProps: { span: mode === "less" ? 24 : span },
152
+ form,
153
+ diffConfig: _diffConfig,
154
+ hideStartEndActionProps
173
155
  },
174
- form: form,
175
- diffConfig: _diffConfig,
176
- hideStartEndActionProps: hideStartEndActionProps
177
- }, field.key);
178
- }), _fields.length === 0 && /*#__PURE__*/_jsx(Empty, {
179
- disabled: disabled,
180
- toolbarProps: toolbarProps,
181
- operation: operation,
182
- form: form,
183
- namePath: _namePath,
184
- emptyBtnText: emptyBtnText
185
- }), /*#__PURE__*/_jsx(Form.ErrorList, {
186
- errors: errors
187
- }), toolbarProps !== false && _fields.length > 0 && /*#__PURE__*/_jsx(ToolbarButton, {
188
- disabled: disabled,
189
- isView: isView,
190
- min: min,
191
- max: max,
192
- length: fields.length,
193
- operation: operation,
194
- namePath: _namePath,
195
- form: form,
196
- fields: fields,
197
- toolbarProps: toolbarProps
198
- })]
199
- })
200
- })
201
- });
156
+ field.key
157
+ );
158
+ }),
159
+ _fields.length === 0 && /* @__PURE__ */ jsx(
160
+ Empty,
161
+ {
162
+ disabled,
163
+ toolbarProps,
164
+ operation,
165
+ form,
166
+ namePath: _namePath,
167
+ emptyBtnText
168
+ }
169
+ ),
170
+ /* @__PURE__ */ jsx(Form.ErrorList, { errors }),
171
+ toolbarProps !== false && _fields.length > 0 && /* @__PURE__ */ jsx(
172
+ ToolbarButton,
173
+ {
174
+ disabled,
175
+ isView,
176
+ min,
177
+ max,
178
+ length: fields.length,
179
+ operation,
180
+ namePath: _namePath,
181
+ form,
182
+ fields,
183
+ toolbarProps
184
+ }
185
+ )
186
+ ]
187
+ }
188
+ ) }) });
189
+ };
190
+ var FormList_default = forwardRef(FormList);
191
+ export {
192
+ FormList_default as default
202
193
  };
203
- export default /*#__PURE__*/forwardRef(FormList);
@@ -158,6 +158,12 @@
158
158
  }
159
159
  }
160
160
 
161
+ .pro-form-list-left-action-right {
162
+ .@{ant-prefix}-collapse-extra {
163
+ margin-inline-start: auto;
164
+ }
165
+ }
166
+
161
167
  // 移动端响应式
162
168
  @media (max-width: 768px) {
163
169
  .pro-form-list-left-title-wrapper {
@@ -1,51 +1,35 @@
1
- import _isEqualWith from "lodash/isEqualWith";
2
- import React from 'react';
3
-
4
- /**
5
- * 判断 Group 组件是否为传统模式(LegacyMode)
6
- * @param item column 配置项
7
- * @returns true 表示传统模式,false 表示灵活模式
8
- */
9
- export const isLegacyMode = item => {
10
- if (item?.type !== 'Group') {
11
- return true; // 非 Group 类型,不需要特殊处理,返回 true 表示按原样处理
1
+ import isEqualWith from "lodash/isEqualWith";
2
+ import React from "react";
3
+ const isLegacyMode = (item) => {
4
+ var _a;
5
+ if ((item == null ? void 0 : item.type) !== "Group") {
6
+ return true;
12
7
  }
13
- // names 可能在 item.names item.otherProps.names 中(参考 Group/index.tsx 的实现)
14
- const names = item?.names || item?.otherProps?.names;
15
- // 传统模式:有 names 属性且为非空数组
16
- // 灵活模式:无 names 属性或 names 为空
8
+ const names = (item == null ? void 0 : item.names) || ((_a = item == null ? void 0 : item.otherProps) == null ? void 0 : _a.names);
17
9
  return Array.isArray(names) && names.length > 0;
18
10
  };
19
-
20
- /**
21
- * namesPath生产 [['list', 0, 'min'], ['list', 0, 'max']] => list_0_min-list_0_max
22
- * @param names name的集合
23
- * @param prefixNamePath formList的name前缀
24
- * @returns list_0_min-list_0_max
25
- */
26
- export const namesPathTransform = ({
11
+ const namesPathTransform = ({
27
12
  names,
28
13
  prefixNamePath,
29
14
  type
30
15
  }) => {
31
16
  if (!Array.isArray(names) || !Array.isArray(prefixNamePath)) {
32
- return '';
17
+ return "";
33
18
  }
34
- const newNamePath = names.map(val => prefixNamePath.concat(val));
35
- return newNamePath?.map(name => {
36
- return Array.isArray(name) ? name.join('_') : name;
37
- }).join('-');
19
+ const newNamePath = names.map((val) => prefixNamePath.concat(val));
20
+ return newNamePath == null ? void 0 : newNamePath.map((name) => {
21
+ return Array.isArray(name) ? name.join("_") : name;
22
+ }).join("-");
38
23
  };
39
-
40
- // 比较memo
41
- export const memoWith = (pre, next) => {
42
- return _isEqualWith(pre, next, (objValue, othValue) => {
43
- if ( /*#__PURE__*/React.isValidElement(objValue) && /*#__PURE__*/React.isValidElement(othValue)) {
24
+ const memoWith = (pre, next) => {
25
+ return isEqualWith(pre, next, (objValue, othValue) => {
26
+ if (React.isValidElement(objValue) && React.isValidElement(othValue)) {
44
27
  return true;
45
28
  }
46
- // 移除解决formlist函数里不更新问题
47
- // if (isFunction(objValue) && isFunction(othValue)) {
48
- // return true;
49
- // }
50
29
  });
51
- };
30
+ };
31
+ export {
32
+ isLegacyMode,
33
+ memoWith,
34
+ namesPathTransform
35
+ };