@zat-design/sisyphus-react 4.5.10-beta.1 → 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 (266) hide show
  1. package/es/FormsProvider/index.js +14 -21
  2. package/es/ProAction/components/CheckModalContent/index.js +12 -26
  3. package/es/ProAction/index.js +79 -83
  4. package/es/ProAction/propsType.js +0 -1
  5. package/es/ProConfigProvider/index.js +63 -110
  6. package/es/ProConfigProvider/propsType.js +0 -1
  7. package/es/ProDownload/index.js +55 -65
  8. package/es/ProDownload/propsType.js +0 -1
  9. package/es/ProDownload/utils.js +61 -95
  10. package/es/ProDrawerForm/components/ProDrawer/index.js +83 -113
  11. package/es/ProDrawerForm/components/ProModal/index.js +77 -108
  12. package/es/ProDrawerForm/components/index.js +6 -2
  13. package/es/ProDrawerForm/hooks/useConfirmClose.js +20 -39
  14. package/es/ProDrawerForm/index.js +29 -38
  15. package/es/ProDrawerForm/propsType.js +0 -1
  16. package/es/ProDrawerForm/utils/index.js +18 -36
  17. package/es/ProEditLabel/components/RenderProForm.js +45 -49
  18. package/es/ProEditLabel/index.js +126 -163
  19. package/es/ProEditLabel/propsType.js +0 -1
  20. package/es/ProEditLabel/utils/index.js +5 -8
  21. package/es/ProEditTable/components/ActionButton/index.js +111 -119
  22. package/es/ProEditTable/components/RcTable/BaseTable.js +38 -51
  23. package/es/ProEditTable/components/RcTable/DraggableTable.js +97 -129
  24. package/es/ProEditTable/components/RcTable/index.js +6 -4
  25. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +77 -95
  26. package/es/ProEditTable/components/RenderField/index.js +490 -587
  27. package/es/ProEditTable/components/RenderField/propsType.js +0 -1
  28. package/es/ProEditTable/components/RenderField/tools.js +115 -112
  29. package/es/ProEditTable/components/RenderToolbar/index.js +47 -73
  30. package/es/ProEditTable/components/Summary/index.js +38 -64
  31. package/es/ProEditTable/components/Validator/index.js +46 -46
  32. package/es/ProEditTable/components/index.js +12 -5
  33. package/es/ProEditTable/index.js +456 -378
  34. package/es/ProEditTable/propsType.js +0 -1
  35. package/es/ProEditTable/utils/config.js +60 -122
  36. package/es/ProEditTable/utils/diffOriginal.js +45 -82
  37. package/es/ProEditTable/utils/getDefaultProps.js +19 -24
  38. package/es/ProEditTable/utils/index.js +150 -236
  39. package/es/ProEditTable/utils/tools.js +149 -286
  40. package/es/ProEditTable/utils/transform.js +25 -30
  41. package/es/ProEditTable/utils/useEditTableError.js +30 -43
  42. package/es/ProEditTable/utils/useShouldUpdateForTable.js +42 -72
  43. package/es/ProEditTable/utils/validateAll.js +87 -154
  44. package/es/ProEnum/components/Group.js +38 -30
  45. package/es/ProEnum/components/Tag.js +22 -26
  46. package/es/ProEnum/hooks/useEnum.js +48 -116
  47. package/es/ProEnum/hooks/useEnumRequest.js +128 -179
  48. package/es/ProEnum/hooks/useFrequentEnumRequest.js +40 -48
  49. package/es/ProEnum/index.js +162 -172
  50. package/es/ProEnum/propsType.js +0 -1
  51. package/es/ProEnum/utils/eventCenter.js +10 -12
  52. package/es/ProEnum/utils/frequentEnum.js +35 -92
  53. package/es/ProEnum/utils/getEnum.js +32 -90
  54. package/es/ProEnum/utils/getEnumLabel.js +44 -49
  55. package/es/ProEnum/utils/index.js +93 -207
  56. package/es/ProForm/components/Container.js +13 -28
  57. package/es/ProForm/components/FormFooter/index.js +36 -44
  58. package/es/ProForm/components/FormFooter/propsType.js +0 -1
  59. package/es/ProForm/components/base/Checkbox/index.js +32 -59
  60. package/es/ProForm/components/base/DatePicker/index.js +49 -71
  61. package/es/ProForm/components/base/Input/index.js +63 -97
  62. package/es/ProForm/components/base/Input/propsType.js +0 -1
  63. package/es/ProForm/components/base/InputNumber/index.js +118 -172
  64. package/es/ProForm/components/base/Radio/index.js +39 -52
  65. package/es/ProForm/components/base/RangePicker/index.js +109 -127
  66. package/es/ProForm/components/base/RangePicker/useDateRange.js +20 -17
  67. package/es/ProForm/components/base/Select/index.js +63 -89
  68. package/es/ProForm/components/base/Switch/index.js +27 -35
  69. package/es/ProForm/components/base/SwitchCheckbox/index.js +36 -54
  70. package/es/ProForm/components/base/TextArea/index.js +30 -41
  71. package/es/ProForm/components/base/TimePicker/index.js +27 -37
  72. package/es/ProForm/components/combination/Container/index.js +37 -47
  73. package/es/ProForm/components/combination/Container/propsType.js +0 -1
  74. package/es/ProForm/components/combination/FormList/components/ActionButton.js +165 -237
  75. package/es/ProForm/components/combination/FormList/components/BlockFields.js +98 -103
  76. package/es/ProForm/components/combination/FormList/components/Empty.js +27 -54
  77. package/es/ProForm/components/combination/FormList/components/LineFields.js +57 -54
  78. package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +61 -109
  79. package/es/ProForm/components/combination/FormList/index.js +151 -161
  80. package/es/ProForm/components/combination/FormList/propsType.js +0 -1
  81. package/es/ProForm/components/combination/FormList/utils.js +22 -38
  82. package/es/ProForm/components/combination/Group/component/AddonWrapper/index.js +12 -28
  83. package/es/ProForm/components/combination/Group/component/ComRender.js +50 -111
  84. package/es/ProForm/components/combination/Group/component/FlexibleGroup.js +105 -206
  85. package/es/ProForm/components/combination/Group/hooks/index.js +68 -128
  86. package/es/ProForm/components/combination/Group/index.js +87 -126
  87. package/es/ProForm/components/combination/Group/propsType.js +0 -1
  88. package/es/ProForm/components/combination/Group/utils/index.js +124 -239
  89. package/es/ProForm/components/combination/ProCascader/index.js +156 -199
  90. package/es/ProForm/components/combination/ProCascader/propsType.js +0 -1
  91. package/es/ProForm/components/combination/ProCascader/utils/index.js +12 -21
  92. package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +63 -75
  93. package/es/ProForm/components/combination/ProModalSelect/index.js +290 -348
  94. package/es/ProForm/components/combination/ProModalSelect/propsType.js +0 -1
  95. package/es/ProForm/components/combination/ProModalSelect/utils/index.js +32 -39
  96. package/es/ProForm/components/combination/ProNumberRange/index.js +100 -156
  97. package/es/ProForm/components/combination/ProNumberRange/propsType.js +0 -1
  98. package/es/ProForm/components/combination/ProRangeLimit/index.js +104 -115
  99. package/es/ProForm/components/combination/ProRangeLimit/propsType.js +0 -1
  100. package/es/ProForm/components/combination/ProTimeLimit/hooks/useControlled.js +16 -16
  101. package/es/ProForm/components/combination/ProTimeLimit/index.js +75 -109
  102. package/es/ProForm/components/index.js +56 -34
  103. package/es/ProForm/components/render/ChangedWrapper.js +85 -94
  104. package/es/ProForm/components/render/ConfirmWrapper.js +27 -39
  105. package/es/ProForm/components/render/CustomComponentViewWrapper.js +65 -82
  106. package/es/ProForm/components/render/Render.js +223 -329
  107. package/es/ProForm/components/render/RenderFields.js +76 -113
  108. package/es/ProForm/components/render/propsType.js +0 -1
  109. package/es/ProForm/hooks/useControlled.js +8 -10
  110. package/es/ProForm/hooks/useDeepCompareMemo.js +11 -11
  111. package/es/ProForm/hooks/useFieldProps.js +8 -4
  112. package/es/ProForm/hooks/useForm.js +50 -110
  113. package/es/ProForm/hooks/useRules.js +17 -33
  114. package/es/ProForm/hooks/useShouldUpdate.js +77 -152
  115. package/es/ProForm/hooks/useWatch.js +58 -129
  116. package/es/ProForm/index.js +157 -194
  117. package/es/ProForm/propsType.js +15 -7
  118. package/es/ProForm/utils/buildFormItemProps.js +51 -58
  119. package/es/ProForm/utils/diffOriginal.js +43 -73
  120. package/es/ProForm/utils/getDefaultProps.js +18 -24
  121. package/es/ProForm/utils/index.js +159 -234
  122. package/es/ProForm/utils/processDependencies.js +21 -60
  123. package/es/ProForm/utils/reactiveValues.js +20 -34
  124. package/es/ProForm/utils/rulesCreator.js +42 -40
  125. package/es/ProForm/utils/transformNames.js +10 -13
  126. package/es/ProForm/utils/transformValue.js +16 -29
  127. package/es/ProForm/utils/valueType.js +96 -178
  128. package/es/ProIcon/config/index.js +340 -274
  129. package/es/ProIcon/index.js +135 -209
  130. package/es/ProIcon/propsTypes.js +0 -1
  131. package/es/ProIcon/utils/index.js +24 -39
  132. package/es/ProLayout/components/Layout/Header/index.js +108 -141
  133. package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +134 -190
  134. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +111 -137
  135. package/es/ProLayout/components/Layout/Menu/OpenMenu/propsType.js +0 -1
  136. package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +23 -31
  137. package/es/ProLayout/components/Layout/Menu/index.js +92 -89
  138. package/es/ProLayout/components/Layout/Notice/index.js +13 -27
  139. package/es/ProLayout/components/Layout/index.js +8 -3
  140. package/es/ProLayout/components/ProCollapse/PropTypes.js +0 -1
  141. package/es/ProLayout/components/ProCollapse/index.js +89 -111
  142. package/es/ProLayout/components/ProFooter/PropTypes.js +0 -1
  143. package/es/ProLayout/components/ProFooter/index.js +27 -25
  144. package/es/ProLayout/components/ProHeader/PropTypes.js +0 -1
  145. package/es/ProLayout/components/ProHeader/components/Copy/index.js +23 -21
  146. package/es/ProLayout/components/ProHeader/components/Describe/index.js +67 -86
  147. package/es/ProLayout/components/ProHeader/components/ProBackBtn/index.js +18 -21
  148. package/es/ProLayout/components/ProHeader/components/ProBackBtn/propsType.js +0 -1
  149. package/es/ProLayout/components/ProHeader/components/index.js +6 -2
  150. package/es/ProLayout/components/ProHeader/index.js +216 -356
  151. package/es/ProLayout/components/ProHeader/utils/index.js +19 -26
  152. package/es/ProLayout/components/TabsManager/components/TabContextMenu.js +92 -85
  153. package/es/ProLayout/components/TabsManager/components/TabItem.js +53 -64
  154. package/es/ProLayout/components/TabsManager/components/TabsContext.js +5 -5
  155. package/es/ProLayout/components/TabsManager/components/TabsHeader.js +42 -52
  156. package/es/ProLayout/components/TabsManager/hooks/useActiveTab.js +8 -9
  157. package/es/ProLayout/components/TabsManager/hooks/useIframeRoute.js +19 -32
  158. package/es/ProLayout/components/TabsManager/hooks/useProLayoutTabs.js +6 -20
  159. package/es/ProLayout/components/TabsManager/hooks/useTabsCache.js +25 -42
  160. package/es/ProLayout/components/TabsManager/hooks/useTabsState.js +290 -408
  161. package/es/ProLayout/components/TabsManager/hooks/useTabsUrlSync.js +132 -95
  162. package/es/ProLayout/components/TabsManager/index.js +406 -390
  163. package/es/ProLayout/components/TabsManager/propTypes.js +7 -15
  164. package/es/ProLayout/components/TabsManager/utils/historyObserver.js +26 -23
  165. package/es/ProLayout/components/TabsManager/utils/index.js +127 -184
  166. package/es/ProLayout/components/index.js +8 -3
  167. package/es/ProLayout/index.js +171 -229
  168. package/es/ProLayout/propTypes.js +12 -52
  169. package/es/ProLayout/utils/index.js +48 -128
  170. package/es/ProSelect/components/AdaptiveTooltip.js +26 -25
  171. package/es/ProSelect/index.js +184 -229
  172. package/es/ProSelect/propsType.js +0 -1
  173. package/es/ProSelect/utils/index.js +100 -146
  174. package/es/ProStep/components/Anchor/index.js +71 -82
  175. package/es/ProStep/components/Item/index.js +49 -56
  176. package/es/ProStep/components/LazyLoad/index.js +23 -29
  177. package/es/ProStep/components/Listener/index.js +20 -33
  178. package/es/ProStep/components/Step/index.js +31 -38
  179. package/es/ProStep/constants.js +4 -1
  180. package/es/ProStep/index.js +166 -153
  181. package/es/ProStep/propsType.js +0 -1
  182. package/es/ProStep/utils/index.js +29 -55
  183. package/es/ProStepTab/index.js +83 -138
  184. package/es/ProStepTab/propsType.js +0 -1
  185. package/es/ProTable/components/EditableCell/EditIcon.js +10 -14
  186. package/es/ProTable/components/EditableCell/index.js +37 -71
  187. package/es/ProTable/components/EditableCell/propsType.js +0 -1
  188. package/es/ProTable/components/FormatColumn/index.js +209 -340
  189. package/es/ProTable/components/FormatColumn/propsType.js +0 -1
  190. package/es/ProTable/components/RcTable/components/BaseTable/index.js +35 -39
  191. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +80 -107
  192. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/index.js +54 -48
  193. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/propsType.js +0 -1
  194. package/es/ProTable/components/RcTable/components/DraggableTable/index.js +47 -54
  195. package/es/ProTable/components/RcTable/index.js +6 -4
  196. package/es/ProTable/components/RenderColumn/index.js +158 -186
  197. package/es/ProTable/components/RenderEmptyText/index.js +12 -21
  198. package/es/ProTable/components/RenderFooter/index.js +15 -15
  199. package/es/ProTable/components/RenderSummary/index.js +33 -50
  200. package/es/ProTable/components/RenderTableHeader/index.js +44 -46
  201. package/es/ProTable/components/RenderTabs/index.js +47 -51
  202. package/es/ProTable/components/TableResizable/index.js +56 -72
  203. package/es/ProTable/components/TooltipTitle/index.js +13 -21
  204. package/es/ProTable/components/index.js +16 -36
  205. package/es/ProTable/hooks/useAntdTable.js +185 -219
  206. package/es/ProTable/index.js +232 -249
  207. package/es/ProTable/propsType.js +0 -1
  208. package/es/ProTable/utils/columnStorage.js +63 -88
  209. package/es/ProTable/utils/index.js +57 -90
  210. package/es/ProTabs/components/Card/index.js +20 -48
  211. package/es/ProTabs/components/index.js +4 -1
  212. package/es/ProTabs/index.js +39 -56
  213. package/es/ProTabs/propType.js +0 -1
  214. package/es/ProThemeTools/component/ProTools/index.js +106 -158
  215. package/es/ProThemeTools/component/index.js +4 -1
  216. package/es/ProThemeTools/context/ThemeContext.js +67 -146
  217. package/es/ProThemeTools/index.js +103 -156
  218. package/es/ProThemeTools/propsType.js +0 -1
  219. package/es/ProThemeTools/utils/index.js +60 -109
  220. package/es/ProTooltip/index.js +132 -165
  221. package/es/ProTooltip/propsType.js +0 -1
  222. package/es/ProTree/components/AdaptiveTooltip.js +15 -17
  223. package/es/ProTree/components/CloseIcon.js +18 -26
  224. package/es/ProTree/components/List.js +28 -47
  225. package/es/ProTree/components/ProTree.js +152 -211
  226. package/es/ProTree/components/ProTreeSelect/index.js +254 -458
  227. package/es/ProTree/components/ProTreeSelect/propsType.js +0 -1
  228. package/es/ProTree/components/SearchTitle.js +23 -42
  229. package/es/ProTree/components/Tree.js +147 -195
  230. package/es/ProTree/components/index.js +10 -5
  231. package/es/ProTree/index.js +12 -16
  232. package/es/ProTree/propsType.js +0 -1
  233. package/es/ProTree/utils.js +46 -118
  234. package/es/ProTreeModal/components/Cascader.js +56 -64
  235. package/es/ProTreeModal/components/CloseIcon.js +18 -26
  236. package/es/ProTreeModal/components/List.js +114 -180
  237. package/es/ProTreeModal/components/SearchTitle.js +15 -18
  238. package/es/ProTreeModal/components/SortableItem.js +29 -58
  239. package/es/ProTreeModal/components/Tree.js +99 -113
  240. package/es/ProTreeModal/components/Trigger.js +87 -121
  241. package/es/ProTreeModal/components/index.js +14 -6
  242. package/es/ProTreeModal/index.js +397 -435
  243. package/es/ProTreeModal/propsType.js +0 -1
  244. package/es/ProTreeModal/utils.js +52 -95
  245. package/es/ProUpload/components/ButtonRender.js +44 -54
  246. package/es/ProUpload/components/DragRender.js +94 -134
  247. package/es/ProUpload/components/DraggableUploadListItem.js +12 -25
  248. package/es/ProUpload/components/Example.js +27 -31
  249. package/es/ProUpload/components/FileItem.js +69 -163
  250. package/es/ProUpload/components/ImageRender.js +134 -170
  251. package/es/ProUpload/index.js +68 -100
  252. package/es/ProUpload/propsType.js +0 -1
  253. package/es/ProUpload/uitls.js +8 -4
  254. package/es/ProUtils/utils/index.js +17 -13
  255. package/es/ProViewer/index.js +154 -175
  256. package/es/ProViewer/propsType.js +0 -5
  257. package/es/ProWaterMark/index.js +9 -16
  258. package/es/ProWaterMark/propsType.js +0 -1
  259. package/es/hooks/useDraggableRow.js +25 -53
  260. package/es/index.js +57 -77
  261. package/es/locale/en_US.js +153 -142
  262. package/es/locale/index.js +23 -36
  263. package/es/locale/zh_CN.js +145 -142
  264. package/es/tokens.js +84 -83
  265. package/es/utils/index.js +24 -51
  266. package/package.json +4 -3
@@ -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', 'show'];
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 !== undefined) {
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 !== undefined) {
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);
@@ -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
+ };