@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,13 +1,11 @@
1
- import _isFunction from "lodash/isFunction";
2
- import _isEqual from "lodash/isEqual";
3
- import _cloneDeep from "lodash/cloneDeep";
4
- /* eslint-disable no-lonely-if */
5
- import { useRef, useEffect } from 'react';
1
+ import { useRef, useEffect } from "react";
2
+ import cloneDeep from "lodash/cloneDeep";
3
+ import isEqual from "lodash/isEqual";
4
+ import isFunction from "lodash/isFunction";
6
5
  import { useDeepCompareMemo } from "../../../../hooks/useDeepCompareMemo";
7
6
  import { difference } from "../../../../../ProEditTable/utils/tools";
8
7
  import { getReactiveProps, getValueTypeTrans, valueFromEventWrapper } from "../utils";
9
- /** 转换columns */
10
- export const useTransformColumns = params => {
8
+ const useTransformColumns = (params) => {
11
9
  const {
12
10
  form,
13
11
  columns,
@@ -20,7 +18,7 @@ export const useTransformColumns = params => {
20
18
  groupProps
21
19
  } = params;
22
20
  const timerRef = useRef([]);
23
- return columns?.flatMap((column, index) => {
21
+ return columns == null ? void 0 : columns.flatMap((column, index) => {
24
22
  const {
25
23
  type,
26
24
  valueType,
@@ -35,25 +33,18 @@ export const useTransformColumns = params => {
35
33
  clearNotShow,
36
34
  desensitization
37
35
  } = column;
38
- const {
39
- mode,
40
- onChange,
41
- disabled: comDisabled
42
- } = fieldProps || {};
36
+ const { mode, onChange, disabled: comDisabled } = fieldProps || {};
43
37
  const _disabled = disabled || comDisabled;
44
38
  const columnName = names ? names[index] : [].concat(name, index);
45
-
46
- // 响应式字段改变后的回调
47
39
  const changedCallback = (lastDependency, current) => {
48
- // 清值防抖 多次刷新时以最后一次为准
49
40
  if (clearNotShow !== false && (names || value)) {
50
- if (current?.show === false) {
41
+ if ((current == null ? void 0 : current.show) === false) {
51
42
  clearInterval(timerRef.current[index]);
52
43
  timerRef.current[index] = setTimeout(() => {
53
44
  if (names) {
54
45
  form.resetFields([columnName]);
55
46
  }
56
- if (!names && value?.length) {
47
+ if (!names && (value == null ? void 0 : value.length)) {
57
48
  value[index] = null;
58
49
  form.setFieldValue(columnName, [...value]);
59
50
  }
@@ -63,28 +54,25 @@ export const useTransformColumns = params => {
63
54
  }
64
55
  }
65
56
  };
66
-
67
- // 响应式字段
68
- const reactiveProps = useDeepCompareMemo(() => {
69
- return getReactiveProps({
70
- form,
71
- index,
72
- type,
73
- namePath,
74
- disabled: _disabled,
75
- show,
76
- component,
77
- fieldProps,
78
- name: columnName,
79
- desensitization
80
- });
81
- }, changedCallback, [value, show, fieldProps, _disabled, columnName, type]);
82
-
83
- // 从处理后的fieldProps中获取事件处理器
84
- const {
85
- onFieldChange,
86
- onBlur
87
- } = reactiveProps.fieldProps || {};
57
+ const reactiveProps = useDeepCompareMemo(
58
+ () => {
59
+ return getReactiveProps({
60
+ form,
61
+ index,
62
+ type,
63
+ namePath,
64
+ disabled: _disabled,
65
+ show,
66
+ component,
67
+ fieldProps,
68
+ name: columnName,
69
+ desensitization
70
+ });
71
+ },
72
+ changedCallback,
73
+ [value, show, fieldProps, _disabled, columnName, type]
74
+ );
75
+ const { onFieldChange, onBlur } = reactiveProps.fieldProps || {};
88
76
  if (reactiveProps.show === false) {
89
77
  return [];
90
78
  }
@@ -98,39 +86,33 @@ export const useTransformColumns = params => {
98
86
  });
99
87
  let newValue;
100
88
  const handleChange = (...args) => {
89
+ var _a, _b, _c;
101
90
  newValue = valueFromEventWrapper(column, args);
102
- if (transform?.normalize) {
103
- newValue = transform?.normalize?.(newValue);
91
+ if (transform == null ? void 0 : transform.normalize) {
92
+ newValue = (_a = transform == null ? void 0 : transform.normalize) == null ? void 0 : _a.call(transform, newValue);
104
93
  } else if (normalize) {
105
- // @ts-ignore
106
- newValue = normalize?.(newValue);
94
+ newValue = normalize == null ? void 0 : normalize(newValue);
107
95
  }
108
-
109
- // 根据模式选择值管理方式
110
96
  if (names) {
111
- // 独立字段模式:设置单个字段值 + 触发整体校验
112
97
  form.setFieldValue(columnName, newValue);
113
- // 确保触发Group整体的校验
114
- internalChange?.(newValue, args[1], index);
98
+ internalChange == null ? void 0 : internalChange(newValue, args[1], index);
115
99
  } else {
116
- // 数组值模式
117
- internalChange?.(newValue, args[1], index);
100
+ internalChange == null ? void 0 : internalChange(newValue, args[1], index);
118
101
  }
119
102
  const values = form.getFieldValue(namePath);
120
- const originRow = namePath?.length ? _cloneDeep(values) : undefined;
121
- onChange?.(...args);
122
- onFieldChange?.(newValue, values, {
103
+ const originRow = (namePath == null ? void 0 : namePath.length) ? cloneDeep(values) : void 0;
104
+ onChange == null ? void 0 : onChange(...args);
105
+ onFieldChange == null ? void 0 : onFieldChange(newValue, values, {
123
106
  index: outerIndex,
124
107
  namePath,
125
108
  form,
126
- option: args?.[1]
109
+ option: args == null ? void 0 : args[1]
127
110
  });
128
- // 如果是在可编辑表格或formList内部, 储存当前行的值, 并在变更后更新到表单里
129
- if (namePath?.length && !_isEqual(originRow, values)) {
111
+ if ((namePath == null ? void 0 : namePath.length) && !isEqual(originRow, values)) {
130
112
  form.setFieldValue(namePath, values);
131
113
  const diff = difference(originRow, values) || {};
132
- const validateFieldKeys = Object.keys(diff)?.map?.(key => [...namePath, key]);
133
- if (validateFieldKeys?.length) {
114
+ const validateFieldKeys = (_c = (_b = Object.keys(diff)) == null ? void 0 : _b.map) == null ? void 0 : _c.call(_b, (key) => [...namePath, key]);
115
+ if (validateFieldKeys == null ? void 0 : validateFieldKeys.length) {
134
116
  setTimeout(() => {
135
117
  form.validateFields([name, ...validateFieldKeys]);
136
118
  }, 100);
@@ -138,17 +120,16 @@ export const useTransformColumns = params => {
138
120
  }
139
121
  };
140
122
  const handleBlur = (...args) => {
141
- if (!onBlur) return;
123
+ if (!onBlur)
124
+ return;
142
125
  const values = form.getFieldValue(namePath);
143
- onBlur?.(args[0], values, {
126
+ onBlur == null ? void 0 : onBlur(args[0], values, {
144
127
  index: outerIndex,
145
128
  namePath,
146
129
  form,
147
- option: args?.[1]
130
+ option: args == null ? void 0 : args[1]
148
131
  });
149
132
  };
150
-
151
- // 内外一个为true则为true
152
133
  const getLastDisabled = () => {
153
134
  if (Array.isArray(groupProps.disabled)) {
154
135
  return reactiveProps.disabled || groupProps.disabled[index];
@@ -160,97 +141,55 @@ export const useTransformColumns = params => {
160
141
  name: columnName,
161
142
  ...reactiveProps,
162
143
  disabled: getLastDisabled(),
163
- getValueProps: transform?.getValueProps,
144
+ getValueProps: transform == null ? void 0 : transform.getValueProps,
164
145
  fieldProps: {
165
- ...column?.fieldProps,
166
- ...reactiveProps?.fieldProps,
146
+ ...column == null ? void 0 : column.fieldProps,
147
+ ...reactiveProps == null ? void 0 : reactiveProps.fieldProps,
167
148
  onChange: handleChange,
168
149
  onBlur: handleBlur,
169
- value: value?.[index]
150
+ value: value == null ? void 0 : value[index]
170
151
  }
171
152
  };
172
153
  });
173
154
  };
174
-
175
- /**
176
- * 检查子项是否应该显示(纯函数,不执行副作用)
177
- */
178
- export const checkShouldShow = (child, form, namePath, index) => {
179
- const {
180
- show
181
- } = child;
182
-
183
- // 如果没有配置 show,默认显示
184
- if (show === undefined || show === true) {
155
+ const checkShouldShow = (child, form, namePath, index) => {
156
+ const { show } = child;
157
+ if (show === void 0 || show === true) {
185
158
  return true;
186
159
  }
187
-
188
- // 如果 show 是 false,不显示
189
160
  if (show === false) {
190
161
  return false;
191
162
  }
192
-
193
- // 如果 show 是函数,需要获取表单值来评估
194
- if (_isFunction(show)) {
163
+ if (isFunction(show)) {
195
164
  let values = {};
196
165
  if (namePath) {
197
- // FormList 场景:取当前行数据
198
166
  values = form.getFieldValue(namePath) || {};
199
167
  } else {
200
- // 普通场景:取整个表单值
201
168
  values = form.getFieldsValue(true);
202
169
  }
203
- return Boolean(show(values, {
204
- form,
205
- index,
206
- namePath
207
- }));
170
+ return Boolean(show(values, { form, index, namePath }));
208
171
  }
209
172
  return true;
210
173
  };
211
- /**
212
- * ProEditTable 场景下,当字段的 show 从 true 变为 false 时,自动重置字段值
213
- * 使用 useEffect 在副作用中执行重置,避免在渲染过程中调用 setState
214
- */
215
- export const useResetProEditTable = params => {
216
- const {
217
- children,
218
- form,
219
- namePath,
220
- source
221
- } = params;
222
-
223
- // 用于跟踪每个子项的显示状态
224
- const showStateRef = useRef(new Map());
225
- // 用于存储重置定时器
226
- const resetTimersRef = useRef(new Map());
174
+ const useResetProEditTable = (params) => {
175
+ const { children, form, namePath, source } = params;
176
+ const showStateRef = useRef(/* @__PURE__ */ new Map());
177
+ const resetTimersRef = useRef(/* @__PURE__ */ new Map());
227
178
  useEffect(() => {
228
- // 只在 ProEditTable 场景下执行重置逻辑
229
- if (source !== 'ProEditTable') {
179
+ if (source !== "ProEditTable") {
230
180
  return;
231
181
  }
232
-
233
- // 检查每个子项的显示状态
234
- children.forEach(child => {
182
+ children.forEach((child) => {
235
183
  const childNamePath = child.namePath || namePath;
236
184
  const childIndex = child.index;
237
-
238
- // 生成唯一 key 用于跟踪状态
239
185
  const childKey = child.name ? Array.isArray(child.name) ? `${JSON.stringify(childNamePath)}-${JSON.stringify(child.name)}` : `${JSON.stringify(childNamePath)}-${child.name}` : `child-${children.indexOf(child)}`;
240
-
241
- // 计算当前显示状态
242
186
  const currentShow = checkShouldShow(child, form, childNamePath, childIndex);
243
187
  const previousShow = showStateRef.current.get(childKey);
244
-
245
- // 如果状态发生变化,且从显示变为隐藏,执行重置
246
- if (previousShow !== undefined && previousShow === true && currentShow === false) {
247
- // 清除之前的定时器
188
+ if (previousShow !== void 0 && previousShow === true && currentShow === false) {
248
189
  const existingTimer = resetTimersRef.current.get(childKey);
249
190
  if (existingTimer) {
250
191
  clearTimeout(existingTimer);
251
192
  }
252
-
253
- // 延迟执行重置,避免在渲染过程中调用
254
193
  const timer = setTimeout(() => {
255
194
  if (Array.isArray(child.name)) {
256
195
  form.resetFields([[...childNamePath, ...child.name]]);
@@ -261,17 +200,18 @@ export const useResetProEditTable = params => {
261
200
  }, 300);
262
201
  resetTimersRef.current.set(childKey, timer);
263
202
  }
264
-
265
- // 更新显示状态
266
203
  showStateRef.current.set(childKey, currentShow);
267
204
  });
268
-
269
- // 清理函数:组件卸载时清除所有定时器
270
205
  return () => {
271
- resetTimersRef.current.forEach(timer => {
206
+ resetTimersRef.current.forEach((timer) => {
272
207
  clearTimeout(timer);
273
208
  });
274
209
  resetTimersRef.current.clear();
275
210
  };
276
211
  }, [children, namePath, source, form]);
277
- };
212
+ };
213
+ export {
214
+ checkShouldShow,
215
+ useResetProEditTable,
216
+ useTransformColumns
217
+ };
@@ -1,19 +1,16 @@
1
- import _omit from "lodash/omit";
2
- import _isEmpty from "lodash/isEmpty";
3
- import { Space } from 'antd';
4
- import React from 'react';
5
- import classnames from 'classnames';
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Space } from "antd";
3
+ import React from "react";
4
+ import isEmpty from "lodash/isEmpty";
5
+ import omit from "lodash/omit";
6
+ import classnames from "classnames";
6
7
  import { insertSeparator } from "./utils";
7
8
  import { useTransformColumns } from "./hooks";
8
9
  import ProForm from "../../../../ProForm";
9
10
  import ComRender from "./component/ComRender";
10
11
  import FlexibleGroup from "./component/FlexibleGroup";
11
-
12
- /**
13
- * 传统数组模式Group组件(保持向后兼容)
14
- */
15
- import { jsx as _jsx } from "react/jsx-runtime";
16
- const LegacyGroup = props => {
12
+ const LegacyGroup = (props) => {
13
+ var _a;
17
14
  const {
18
15
  children,
19
16
  className,
@@ -27,32 +24,20 @@ const LegacyGroup = props => {
27
24
  isView: isParentView,
28
25
  disabled: formDisabled,
29
26
  separator,
30
- split // 弃用属性,保持向后兼容
27
+ split
28
+ // 弃用属性,保持向后兼容
31
29
  } = props;
32
-
33
- // 向后兼容处理:优先使用 separator,如果没有则使用 split,最后使用默认值
34
- const finalSeparator = separator ?? split ?? '/';
35
-
36
- // 支持从 fieldProps.space 获取 space 配置
37
- const fieldPropsSpace = props.fieldProps?.space;
30
+ const finalSeparator = separator ?? split ?? "/";
31
+ const fieldPropsSpace = (_a = props.fieldProps) == null ? void 0 : _a.space;
38
32
  const space = fieldPropsSpace || propsSpace;
39
33
  const contextProps = ProForm.useFieldProps() || {};
40
- const {
41
- names,
42
- name,
43
- form,
44
- namePath,
45
- index,
46
- isView
47
- } = contextProps;
34
+ const { names, name, form, namePath, index, isView } = contextProps;
48
35
  const nextOption = React.useRef([]);
49
36
  const nextIsView = isParentView || isView || otherProps.isView;
50
-
51
- // 组合onChange
52
- const handleChange = (value, option, index) => {
37
+ const handleChange = (value2, option, index2) => {
53
38
  const nextValue = props.value ? [...props.value] : [];
54
- nextValue[index] = value;
55
- nextOption.current[index] = option;
39
+ nextValue[index2] = value2;
40
+ nextOption.current[index2] = option;
56
41
  onChange(nextValue, nextOption.current);
57
42
  };
58
43
  const columnsProps = useTransformColumns({
@@ -69,132 +54,108 @@ const LegacyGroup = props => {
69
54
  });
70
55
  const columns = insertSeparator(columnsProps, space);
71
56
  const nextClassName = classnames({
72
- 'pro-group': true,
73
- 'pro-group-unflexible': true,
74
- 'pro-group-diy-width': columns.some(item => item?.fieldProps?.style?.width),
75
- 'pro-group-width-auto': columns.some(item => {
76
- return ['Radio', 'Checkbox', 'Switch'].includes(item.type);
57
+ "pro-group": true,
58
+ "pro-group-unflexible": true,
59
+ "pro-group-diy-width": columns.some((item) => {
60
+ var _a2, _b;
61
+ return (_b = (_a2 = item == null ? void 0 : item.fieldProps) == null ? void 0 : _a2.style) == null ? void 0 : _b.width;
62
+ }),
63
+ "pro-group-width-auto": columns.some((item) => {
64
+ return ["Radio", "Checkbox", "Switch"].includes(item.type);
77
65
  }),
78
- 'pro-group-view': nextIsView,
66
+ "pro-group-view": nextIsView,
79
67
  [`${className}`]: className
80
68
  });
81
- if (nextIsView && _isEmpty(value)) {
82
- return otherProps?.viewEmpty || '-';
69
+ if (nextIsView && isEmpty(value)) {
70
+ return (otherProps == null ? void 0 : otherProps.viewEmpty) || "-";
83
71
  }
84
-
85
- // compact模式专用:为每个字段创建可见的Form.Item,并应用宽度样式
86
72
  const renderCompactFormItems = () => {
87
73
  const elements = [];
88
- columns.forEach((column, index) => {
89
- // 检测是否有自定义宽度
90
- const childWidth = column?.fieldProps?.style?.width;
91
- const formItemStyle = childWidth ? {
92
- width: childWidth
93
- } : undefined;
94
- const formItemClassName = childWidth ? 'pro-group-form-item pro-group-form-item-has-width' : 'pro-group-form-item';
95
-
96
- // 创建新的 column 对象,避免直接修改原对象
97
- const newColumn = {
98
- ...column
99
- };
74
+ columns.forEach((column, index2) => {
75
+ var _a2, _b, _c;
76
+ const childWidth = (_b = (_a2 = column == null ? void 0 : column.fieldProps) == null ? void 0 : _a2.style) == null ? void 0 : _b.width;
77
+ const formItemStyle = childWidth ? { width: childWidth } : void 0;
78
+ const formItemClassName = childWidth ? "pro-group-form-item pro-group-form-item-has-width" : "pro-group-form-item";
79
+ const newColumn = { ...column };
100
80
  newColumn.otherProps = otherProps;
101
-
102
- // 如果子组件有自定义宽度,将子组件的宽度改为 100%,让它填充 Form.Item
103
81
  if (childWidth) {
104
82
  newColumn.fieldProps = {
105
83
  ...newColumn.fieldProps,
106
84
  style: {
107
- ...newColumn.fieldProps?.style,
108
- width: '100%'
85
+ ...(_c = newColumn.fieldProps) == null ? void 0 : _c.style,
86
+ width: "100%"
109
87
  }
110
88
  };
111
89
  }
112
-
113
- // 自定义间隔移除对应参数
114
- if (newColumn?.separator) {
90
+ if (newColumn == null ? void 0 : newColumn.separator) {
115
91
  delete newColumn.separator;
116
92
  delete newColumn.otherProps;
117
93
  }
118
-
119
- // 传统模式 compact 模式:将 Form.Item 相关的 props 传递给 ComRender
120
- // ComRender 内部会处理 Form.Item 的渲染,避免嵌套
121
- const dependencies = names && names.length > 0 ? names.filter(n => n !== newColumn.name) : undefined;
122
- const formElement = /*#__PURE__*/_jsx(ComRender, {
123
- contextProps: contextProps,
124
- isView: nextIsView,
125
- formItemClassName: formItemClassName,
126
- formItemStyle: formItemStyle,
127
- dependencies: dependencies,
128
- ...newColumn
129
- }, newColumn.name || index);
94
+ const dependencies = names && names.length > 0 ? names.filter((n) => n !== newColumn.name) : void 0;
95
+ const formElement = /* @__PURE__ */ jsx(
96
+ ComRender,
97
+ {
98
+ contextProps,
99
+ isView: nextIsView,
100
+ formItemClassName,
101
+ formItemStyle,
102
+ dependencies,
103
+ ...newColumn
104
+ },
105
+ newColumn.name || index2
106
+ );
130
107
  elements.push(formElement);
131
-
132
- // 添加分隔符
133
- if (newColumn?.separator && index < columns.length - 1) {
134
- elements.push( /*#__PURE__*/_jsx("span", {
135
- className: "pro-group-separator-compact",
136
- children: newColumn.separator
137
- }, `separator-${String(newColumn.name ?? index)}`));
108
+ if ((newColumn == null ? void 0 : newColumn.separator) && index2 < columns.length - 1) {
109
+ elements.push(
110
+ /* @__PURE__ */ jsx(
111
+ "span",
112
+ {
113
+ className: "pro-group-separator-compact",
114
+ children: newColumn.separator
115
+ },
116
+ `separator-${String(newColumn.name ?? index2)}`
117
+ )
118
+ );
138
119
  }
139
120
  });
140
- return /*#__PURE__*/_jsx("div", {
141
- className: "ant-space ant-space-horizontal ant-space-compact pro-group-compact-container",
142
- children: elements
143
- });
121
+ return /* @__PURE__ */ jsx("div", { className: "ant-space ant-space-horizontal ant-space-compact pro-group-compact-container", children: elements });
144
122
  };
145
- return /*#__PURE__*/_jsx("div", {
146
- className: nextClassName,
147
- id: id,
148
- children: (space.compact || space?.separator) && !nextIsView ? renderCompactFormItems() : /*#__PURE__*/_jsx(Space, {
123
+ return /* @__PURE__ */ jsx("div", { className: nextClassName, id, children: (space.compact || (space == null ? void 0 : space.separator)) && !nextIsView ? renderCompactFormItems() : /* @__PURE__ */ jsx(
124
+ Space,
125
+ {
149
126
  align: "start",
150
- ..._omit(space, ['separator', 'compact']),
127
+ ...omit(space, ["separator", "compact"]),
151
128
  separator: nextIsView ? finalSeparator : null,
152
129
  size: nextIsView ? 0 : space.size,
153
- children: columns.map((column, index) => {
130
+ children: columns.map((column, index2) => {
154
131
  column.otherProps = otherProps;
155
- if (column?.separator) {
132
+ if (column == null ? void 0 : column.separator) {
156
133
  delete column.separator;
157
134
  delete column.otherProps;
158
135
  }
159
- return /*#__PURE__*/_jsx(ComRender, {
160
- contextProps: contextProps,
161
- isView: nextIsView,
162
- ...column
163
- }, column.name || index);
136
+ return /* @__PURE__ */ jsx(
137
+ ComRender,
138
+ {
139
+ contextProps,
140
+ isView: nextIsView,
141
+ ...column
142
+ },
143
+ column.name || index2
144
+ );
164
145
  })
165
- })
166
- });
146
+ }
147
+ ) });
167
148
  };
168
-
169
- /**
170
- * Group组件 - 支持传统模式和灵活模式
171
- * - 有names属性 → 传统数组模式(保持向后兼容)
172
- * - 无names属性 → 新的灵活模式(子组件必须配置name)
173
- */
174
- const Group = props => {
175
- const {
176
- children,
177
- names,
178
- otherProps
179
- } = props;
180
-
181
- // names可能在props.names或props.otherProps.names中(来自ProForm的传递)
182
- const actualNames = names || otherProps?.names;
183
-
184
- // 模式检测:基于names属性判断使用哪种模式
185
- // 传统模式:有names属性且为非空数组
186
- // 灵活模式:无names属性或names为空,children中的子项必须配置name
149
+ const Group = (props) => {
150
+ const { children, names, otherProps } = props;
151
+ const actualNames = names || (otherProps == null ? void 0 : otherProps.names);
187
152
  const isLegacyMode = Array.isArray(actualNames) && actualNames.length > 0;
188
153
  if (isLegacyMode) {
189
- // 传统模式:使用names数组管理值,确保names被传递给LegacyGroup
190
- return /*#__PURE__*/_jsx(LegacyGroup, {
191
- ...props,
192
- names: actualNames
193
- });
154
+ return /* @__PURE__ */ jsx(LegacyGroup, { ...props, names: actualNames });
194
155
  }
195
- // 灵活模式:子组件独立管理name和rules
196
- return /*#__PURE__*/_jsx(FlexibleGroup, {
197
- ...props
198
- });
156
+ return /* @__PURE__ */ jsx(FlexibleGroup, { ...props });
157
+ };
158
+ var Group_default = Group;
159
+ export {
160
+ Group_default as default
199
161
  };
200
- export default Group;
@@ -1 +0,0 @@
1
- export {};