@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,15 +1,27 @@
1
- import _omit from "lodash/omit";
2
- import _merge from "lodash/merge";
3
- import _isObject from "lodash/isObject";
4
- import { DoubleLeftOutlined } from '@ant-design/icons';
5
- import { Col, Form, Row, Space } from 'antd';
6
- import classnames from 'classnames';
7
- import React, { forwardRef, useImperativeHandle, useMemo, useEffect } from 'react';
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { DoubleLeftOutlined } from "@ant-design/icons";
3
+ import { Col, Form, Row, Space } from "antd";
4
+ import classnames from "classnames";
5
+ import React, {
6
+ forwardRef,
7
+ useImperativeHandle,
8
+ useMemo,
9
+ useEffect
10
+ } from "react";
11
+ import isObject from "lodash/isObject";
12
+ import merge from "lodash/merge";
13
+ import omit from "lodash/omit";
8
14
  import { FormFooter } from "./components";
9
15
  import RenderFields from "./components/render/RenderFields";
10
16
  import { useProConfig } from "../ProConfigProvider";
11
17
  import { useProDrawerFormContext } from "../ProDrawerForm";
12
- import { getLayout, splitNameStr, initialValuesToNames, filterInternalFields, getFormFieldPaths } from "./utils/index";
18
+ import {
19
+ getLayout,
20
+ splitNameStr,
21
+ initialValuesToNames,
22
+ filterInternalFields,
23
+ getFormFieldPaths
24
+ } from "./utils/index";
13
25
  import { useControlled } from "./hooks/useControlled";
14
26
  import { useForm } from "./hooks/useForm";
15
27
  import { useFieldProps } from "./hooks/useFieldProps";
@@ -17,10 +29,9 @@ import locale from "../locale";
17
29
  import useWatch from "./hooks/useWatch";
18
30
  import FormsProvider, { useContextForms, useForms } from "../FormsProvider";
19
31
  import { useStep } from "../ProStep";
20
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
21
32
  const ProForm = (props, ref) => {
22
33
  const {
23
- mode = 'search',
34
+ mode = "search",
24
35
  span,
25
36
  disabled,
26
37
  isView,
@@ -38,7 +49,7 @@ const ProForm = (props, ref) => {
38
49
  expand,
39
50
  expandOpen,
40
51
  expandOpenChange,
41
- viewEmpty = '-',
52
+ viewEmpty = "-",
42
53
  labelAlign,
43
54
  labelWidth,
44
55
  onValuesChange,
@@ -58,23 +69,15 @@ const ProForm = (props, ref) => {
58
69
  shouldUpdateDebounce = 200,
59
70
  ...otherProps
60
71
  } = props;
61
- const config = useProConfig('ProForm');
62
- // source: 用于区分是哪个组件调用,用于错误提示
63
- const {
64
- source = ''
65
- } = useProDrawerFormContext() || {};
66
- // stepSource: 用于区分是哪个组件调用,用于错误提示
67
- const {
68
- source: stepSource = ''
69
- } = useStep() || {};
72
+ const config = useProConfig("ProForm");
73
+ const { source = "" } = useProDrawerFormContext() || {};
74
+ const { source: stepSource = "" } = useStep() || {};
70
75
  const [form] = useForm(originForm, {
71
76
  scrollToError,
72
77
  optimize,
73
78
  formKey,
74
- source: source || stepSource || 'ProForm'
79
+ source: source || stepSource || "ProForm"
75
80
  });
76
-
77
- // 保存内部配置
78
81
  useEffect(() => {
79
82
  if (!form.__INTERNAL_CONFIG__) {
80
83
  form.__INTERNAL_CONFIG__ = {};
@@ -86,210 +89,167 @@ const ProForm = (props, ref) => {
86
89
  value: expandOpen,
87
90
  onChange: expandOpenChange
88
91
  });
89
- const {
90
- formProps,
91
- colProps,
92
- onOk: _onOk,
93
- onCancel: _onCancel
94
- } = getLayout({
95
- span,
96
- form
97
- });
98
-
99
- // 初始值names转换
92
+ const { formProps, colProps, onOk: _onOk, onCancel: _onCancel } = getLayout({ span, form });
100
93
  const _initialValues = useMemo(() => {
101
94
  const values = initialValuesToNames(initialValues, columns);
102
95
  return values;
103
96
  }, []);
104
-
105
- /**
106
- * 展开&收起函数
107
- */
108
97
  const expandHandle = () => {
109
- setOpenState?.(!openState);
98
+ setOpenState == null ? void 0 : setOpenState(!openState);
110
99
  };
111
100
  const expandRender = () => {
112
- return !!expand && columns.length > Number(expand) && /*#__PURE__*/_jsx("div", {
113
- className: "expand-button",
114
- onClick: expandHandle,
115
- children: !openState ? /*#__PURE__*/_jsxs(Space, {
116
- align: "center",
117
- children: [locale.ProForm.unfold, /*#__PURE__*/_jsx(DoubleLeftOutlined, {
118
- className: "rotate-to-bottom"
119
- })]
120
- }) : /*#__PURE__*/_jsxs(Space, {
121
- align: "center",
122
- children: [locale.ProForm.packUp, /*#__PURE__*/_jsx(DoubleLeftOutlined, {
123
- className: "rotate-to-top"
124
- })]
125
- })
126
- });
101
+ return !!expand && columns.length > Number(expand) && /* @__PURE__ */ jsx("div", { className: "expand-button", onClick: expandHandle, children: !openState ? /* @__PURE__ */ jsxs(Space, { align: "center", children: [
102
+ locale.ProForm.unfold,
103
+ /* @__PURE__ */ jsx(DoubleLeftOutlined, { className: "rotate-to-bottom" })
104
+ ] }) : /* @__PURE__ */ jsxs(Space, { align: "center", children: [
105
+ locale.ProForm.packUp,
106
+ /* @__PURE__ */ jsx(DoubleLeftOutlined, { className: "rotate-to-top" })
107
+ ] }) });
127
108
  };
128
- const defaultFooter = footerConfig => {
129
- return /*#__PURE__*/_jsx(FormFooter, {
130
- formId: formId,
131
- onOk: onOk || _onOk,
132
- okText: okText,
133
- confirmLoading: confirmLoading,
134
- onCancel: onCancel || _onCancel,
135
- cancelText: cancelText,
136
- footer: footerConfig,
137
- form: form
138
- });
109
+ const defaultFooter = (footerConfig) => {
110
+ return /* @__PURE__ */ jsx(
111
+ FormFooter,
112
+ {
113
+ formId,
114
+ onOk: onOk || _onOk,
115
+ okText,
116
+ confirmLoading,
117
+ onCancel: onCancel || _onCancel,
118
+ cancelText,
119
+ footer: footerConfig,
120
+ form
121
+ }
122
+ );
139
123
  };
140
-
141
- // 暴露form出去给类组件使用
142
124
  useImperativeHandle(ref, () => form);
143
-
144
- // 解决平铺后的值拿不到的问题
145
- const handleValuesChange = changedValue => {
146
- if (!onValuesChange) return;
147
-
148
- // 暂时通过'-'区分组合组件字段和普通字段
125
+ const handleValuesChange = (changedValue) => {
126
+ if (!onValuesChange)
127
+ return;
149
128
  const keys = Object.keys(changedValue);
150
129
  if (!keys.length) {
151
130
  onValuesChange(filterInternalFields(changedValue, optimize), form.getFieldsValue());
152
131
  } else {
153
- const values = keys.map(key => {
154
- if (key.includes('-')) {
132
+ const values = keys.map((key) => {
133
+ if (key.includes("-")) {
155
134
  let comKeys = [];
156
- comKeys = key.split('-').map(keyStr => keyStr.split('_'));
135
+ comKeys = key.split("-").map((keyStr) => keyStr.split("_"));
157
136
  return form.getFieldsValue(comKeys);
158
137
  }
159
138
  return {};
160
139
  });
161
- onValuesChange(filterInternalFields(_merge(changedValue, ...values), optimize), form.getFieldsValue());
140
+ onValuesChange(
141
+ filterInternalFields(merge(changedValue, ...values), optimize),
142
+ form.getFieldsValue()
143
+ );
162
144
  }
163
145
  };
164
-
165
- // 包装一层兼容 names 改变
166
146
  const handleFinish = () => {
167
- onFinish?.(form.getFieldsValue());
147
+ onFinish == null ? void 0 : onFinish(form.getFieldsValue());
168
148
  };
169
149
  const cls = classnames({
170
- 'pro-form': true,
171
- 'pro-form-view': isView,
150
+ "pro-form": true,
151
+ "pro-form-view": isView,
172
152
  [className]: className
173
153
  });
174
154
  const footerCls = classnames({
175
- 'pro-form-custom-footer': true
155
+ "pro-form-custom-footer": true
176
156
  });
177
157
  const footerRender = () => {
178
158
  let footerEle = null;
179
159
  if (isView || disabled) {
180
- // 查看或禁用模式
181
160
  footerEle = null;
182
- } else if ( /*#__PURE__*/React.isValidElement(footer)) {
183
- // 传入组件渲染组件
161
+ } else if (React.isValidElement(footer)) {
184
162
  footerEle = footer;
185
- } else if (footer === undefined || footer || _isObject(footer)) {
186
- // 不传或者传入对象 渲染默认
163
+ } else if (footer === void 0 || footer || isObject(footer)) {
187
164
  footerEle = defaultFooter(footer);
188
165
  }
189
-
190
- // 展开折叠按钮
191
166
  const expandEle = expandRender();
192
167
  const hasElement = footerEle || expandEle;
193
- return hasElement ? /*#__PURE__*/_jsx(Col, {
194
- ...colProps,
195
- className: footerCls,
196
- children: /*#__PURE__*/_jsxs(Space, {
197
- align: "center",
198
- children: [footerEle, expandEle]
199
- })
200
- }) : null;
168
+ return hasElement ? /* @__PURE__ */ jsx(Col, { ...colProps, className: footerCls, children: /* @__PURE__ */ jsxs(Space, { align: "center", children: [
169
+ footerEle,
170
+ expandEle
171
+ ] }) }) : null;
201
172
  };
202
-
203
- // 国际化,非中文时默认上下布局
204
- if (localStorage?.locale && localStorage.locale !== 'zh-CN') {
205
- // 一行布局时,左右布局
173
+ if ((localStorage == null ? void 0 : localStorage.locale) && localStorage.locale !== "zh-CN") {
206
174
  if (span === 24) {
207
- otherProps.layout = otherProps.layout || 'horizontal';
175
+ otherProps.layout = otherProps.layout || "horizontal";
208
176
  } else {
209
- // 其他布局时,上下布局
210
- otherProps.layout = otherProps.layout || 'vertical';
177
+ otherProps.layout = otherProps.layout || "vertical";
211
178
  }
212
179
  }
213
-
214
- // 过滤掉自定义 props,避免传递到 DOM 元素
215
- const filteredOtherProps = _omit(otherProps, ['desensitizationKey']);
216
- return /*#__PURE__*/_jsxs(Form, {
217
- onKeyPress: event => {
218
- if (!submitOnEnter) return;
219
- if (event.key === 'Enter') {
220
- form.submit();
221
- }
222
- },
223
- className: cls,
224
- form: form,
225
- ...formProps,
226
- ..._omit(config, ['isDiffAll']),
227
- ...filteredOtherProps,
228
- labelAlign: labelAlign ?? config.labelAlign ?? 'left',
229
- onValuesChange: handleValuesChange,
230
- onFinish: handleFinish,
231
- onFinishFailed: ({
232
- errorFields
233
- }) => {
234
- if (scrollToError && errorFields?.length) {
235
- form.scrollToField(errorFields[0]?.name, {
236
- block: 'center',
237
- behavior: 'smooth'
238
- });
239
- }
240
- },
241
- initialValues: _initialValues,
242
- children: [/*#__PURE__*/_jsxs(Row, {
243
- gutter: 24,
244
- ...rowProps,
245
- children: [/*#__PURE__*/_jsx(RenderFields, {
246
- form: form,
247
- isView: isView,
248
- columns: columns,
249
- disabled: disabled,
250
- expand: expand // 展示条数
251
- ,
252
- openState: openState // 展开折叠状态
253
- ,
254
- colProps: colProps,
255
- viewEmpty: viewEmpty,
256
- labelWidth: labelWidth,
257
- diffConfig: diffConfig,
258
- clearNotShow: clearNotShow,
259
- requiredOnView: requiredOnView,
260
- required: required,
261
- globalControl: globalControl,
262
- shouldUpdateDebounce: shouldUpdateDebounce
263
- }), footerRender()]
264
- }), children]
265
- });
180
+ const filteredOtherProps = omit(otherProps, ["desensitizationKey"]);
181
+ return /* @__PURE__ */ jsxs(
182
+ Form,
183
+ {
184
+ onKeyPress: (event) => {
185
+ if (!submitOnEnter)
186
+ return;
187
+ if (event.key === "Enter") {
188
+ form.submit();
189
+ }
190
+ },
191
+ className: cls,
192
+ form,
193
+ ...formProps,
194
+ ...omit(config, ["isDiffAll"]),
195
+ ...filteredOtherProps,
196
+ labelAlign: labelAlign ?? config.labelAlign ?? "left",
197
+ onValuesChange: handleValuesChange,
198
+ onFinish: handleFinish,
199
+ onFinishFailed: ({ errorFields }) => {
200
+ var _a;
201
+ if (scrollToError && (errorFields == null ? void 0 : errorFields.length)) {
202
+ form.scrollToField((_a = errorFields[0]) == null ? void 0 : _a.name, {
203
+ block: "center",
204
+ behavior: "smooth"
205
+ });
206
+ }
207
+ },
208
+ initialValues: _initialValues,
209
+ children: [
210
+ /* @__PURE__ */ jsxs(Row, { gutter: 24, ...rowProps, children: [
211
+ /* @__PURE__ */ jsx(
212
+ RenderFields,
213
+ {
214
+ form,
215
+ isView,
216
+ columns,
217
+ disabled,
218
+ expand,
219
+ openState,
220
+ colProps,
221
+ viewEmpty,
222
+ labelWidth,
223
+ diffConfig,
224
+ clearNotShow,
225
+ requiredOnView,
226
+ required,
227
+ globalControl,
228
+ shouldUpdateDebounce
229
+ }
230
+ ),
231
+ footerRender()
232
+ ] }),
233
+ children
234
+ ]
235
+ }
236
+ );
266
237
  };
267
- const ProFormForward = /*#__PURE__*/forwardRef(ProForm);
238
+ const ProFormForward = forwardRef(ProForm);
268
239
  ProFormForward.useForm = useForm;
269
240
  ProFormForward.useWatch = useWatch;
270
- export const ProFormProvider = props => {
271
- const {
272
- onFormChange,
273
- onFormFinish,
274
- children
275
- } = props;
241
+ const ProFormProvider = (props) => {
242
+ const { onFormChange, onFormFinish, children } = props;
276
243
  const handleFormChange = (formName, info) => {
277
- const {
278
- changedFields
279
- } = info;
280
- const _changedFields = changedFields.flatMap(item => {
281
- const {
282
- value = []
283
- } = item;
244
+ const { changedFields } = info;
245
+ const _changedFields = changedFields.flatMap((item) => {
246
+ const { value = [] } = item;
284
247
  const name = item.name;
285
248
  const namesStr = name[name.length - 1];
286
-
287
- // name中的最后一位如果包含 '-' 则是names组件
288
- const isNames = String(namesStr).includes('-');
289
- if (!isNames) return item; // 不是names组件直接返回
290
-
291
- const namesList = splitNameStr(String(namesStr)); // 拆解出name列表
292
-
249
+ const isNames = String(namesStr).includes("-");
250
+ if (!isNames)
251
+ return item;
252
+ const namesList = splitNameStr(String(namesStr));
293
253
  const prefix = name.slice(0, name.length - 1);
294
254
  return namesList.map((nameItem, index) => {
295
255
  return {
@@ -301,21 +261,24 @@ export const ProFormProvider = props => {
301
261
  });
302
262
  });
303
263
  info.changedFields = _changedFields;
304
-
305
- // @ts-ignore
306
264
  onFormChange(formName, info);
307
265
  };
308
- return /*#__PURE__*/_jsx(Form.Provider, {
309
- onFormChange: onFormChange ? handleFormChange : undefined,
310
- onFormFinish: onFormFinish,
311
- children: children
312
- });
266
+ return /* @__PURE__ */ jsx(
267
+ Form.Provider,
268
+ {
269
+ onFormChange: onFormChange ? handleFormChange : void 0,
270
+ onFormFinish,
271
+ children
272
+ }
273
+ );
274
+ };
275
+ ProFormForward.Provider = ProFormProvider;
276
+ ProFormForward.useFieldProps = useFieldProps;
277
+ ProFormForward.FormsProvider = FormsProvider;
278
+ ProFormForward.useForms = useForms;
279
+ ProFormForward.useContextForms = useContextForms;
280
+ var ProForm_default = ProFormForward;
281
+ export {
282
+ ProFormProvider,
283
+ ProForm_default as default
313
284
  };
314
- ProFormForward.Provider = ProFormProvider; // 包装Provider
315
- ProFormForward.useFieldProps = useFieldProps; // 获取每个字段的其他参数 -otherProps
316
- // 表单实例共享
317
- ProFormForward.FormsProvider = FormsProvider; // 表单实例共享Provider
318
- ProFormForward.useForms = useForms; // 获取上下文中的共享的表单实例map
319
- ProFormForward.useContextForms = useContextForms; // 获取上下文中的共享的表单实例map
320
-
321
- export default ProFormForward;
@@ -1,7 +1,15 @@
1
- export const otherKeys = ['isView', 'viewEmpty', 'label', 'valueType', 'viewType', 'name', 'names', 'form', 'type', 'hiddenNames'];
2
-
3
- /**
4
- * ProForm 组件接口类型
5
- * 用于定义 ProForm 组件及其静态方法的类型
6
- * 注意:此接口的具体实现方法类型在组件文件中定义,这里只提供基础结构
7
- */
1
+ const otherKeys = [
2
+ "isView",
3
+ "viewEmpty",
4
+ "label",
5
+ "valueType",
6
+ "viewType",
7
+ "name",
8
+ "names",
9
+ "form",
10
+ "type",
11
+ "hiddenNames"
12
+ ];
13
+ export {
14
+ otherKeys
15
+ };
@@ -1,16 +1,20 @@
1
- import _omit from "lodash/omit";
2
- import _isFunction from "lodash/isFunction";
1
+ import isFunction from "lodash/isFunction";
2
+ import omit from "lodash/omit";
3
3
  import { isTrim, isUpperCase } from "./index";
4
4
  import transformNames from "./transformNames";
5
5
  import valueTypeMap from "./valueType";
6
-
7
- /** 整理 lastFormItemProps 时需要剔除、防止透传给 Form.Item 报错的 key */
8
- const OMIT_FORM_ITEM_KEYS = ['component', 'names', 'format', 'toISOString', 'toCSTString', 'switchValue', 'precision', 'clearNotShow', 'dependNames'];
9
- /**
10
- * 将列配置整理为最终透传给 Form.Item 的 props(纯函数)
11
- * 聚合 valueType transform / transformNames / 校验规则 / disabled 优先级 / omit
12
- */
13
- export const buildFormItemProps = params => {
6
+ const OMIT_FORM_ITEM_KEYS = [
7
+ "component",
8
+ "names",
9
+ "format",
10
+ "toISOString",
11
+ "toCSTString",
12
+ "switchValue",
13
+ "precision",
14
+ "clearNotShow",
15
+ "dependNames"
16
+ ];
17
+ const buildFormItemProps = (params) => {
14
18
  const {
15
19
  baseFormItemProps,
16
20
  otherProps,
@@ -29,22 +33,14 @@ export const buildFormItemProps = params => {
29
33
  lastDisabled,
30
34
  labelWidth
31
35
  } = params;
32
-
33
- /**
34
- * 基于formItem的normalize与getValueProps进行值类型转换
35
- */
36
36
  const valueTypeTransform = () => {
37
- let {
38
- valueType
39
- } = otherProps || {};
40
- // SwitchCheckbox默认YN, 兼容已有组件
41
- if (type === 'SwitchCheckbox') {
42
- valueType = 'switch';
37
+ let { valueType } = otherProps || {};
38
+ if (type === "SwitchCheckbox") {
39
+ valueType = "switch";
43
40
  }
44
- if (type === 'Input') {
45
- valueType = valueType || 'trim';
41
+ if (type === "Input") {
42
+ valueType = valueType || "trim";
46
43
  }
47
- // 不存在valueType返回空
48
44
  if (!valueType) {
49
45
  return {};
50
46
  }
@@ -52,39 +48,36 @@ export const buildFormItemProps = params => {
52
48
  ...otherProps,
53
49
  ...baseFormItemProps
54
50
  };
55
- return _isFunction(valueTypeMap[valueType]) ? valueTypeMap[valueType](valueTypeParams) : {};
51
+ return isFunction(valueTypeMap[valueType]) ? valueTypeMap[valueType](valueTypeParams) : {};
56
52
  };
57
-
58
- /**
59
- * transform对象
60
- * 存在names通过transformNames转换平铺处理, 没有默认走valueType的处理
61
- */
62
- const transforms = Array.isArray(otherProps?.names) ? transformNames({
63
- ...baseFormItemProps,
64
- ...valueTypeTransform()
65
- },
66
- // 合并valueType的transform
67
- form, otherProps.names, namesStr, otherProps.type) : valueTypeTransform();
68
- return _omit({
69
- ...baseFormItemProps,
70
- ...transforms,
71
- names: otherProps.names,
72
- ...internalRule,
73
- required: resolvedRequired || Array.isArray(rules) && rules?.some(item => item?.required) || (typeof labelRequired === 'boolean' ? labelRequired : false),
74
- ...(otherProps.isView && !requiredOnView ? {
75
- required: false
76
- } : null),
77
- ...isTrim(type, trim, proConfig),
78
- // 优先取传进来的,其次取ProConfigProvider配置的
79
- ...isUpperCase(type, upperCase),
80
- validateFirst,
81
- // 当某一规则校验不通过时,是否停止剩下的规则的校验
82
- disabled: lastDisabled,
83
- // 添加label宽度
84
- ...(labelWidth ? {
85
- labelCol: {
86
- flex: `${labelWidth}px`
87
- }
88
- } : null)
89
- }, OMIT_FORM_ITEM_KEYS);
90
- };
53
+ const transforms = Array.isArray(otherProps == null ? void 0 : otherProps.names) ? transformNames(
54
+ { ...baseFormItemProps, ...valueTypeTransform() },
55
+ // 合并valueType的transform
56
+ form,
57
+ otherProps.names,
58
+ namesStr,
59
+ otherProps.type
60
+ ) : valueTypeTransform();
61
+ return omit(
62
+ {
63
+ ...baseFormItemProps,
64
+ ...transforms,
65
+ names: otherProps.names,
66
+ ...internalRule,
67
+ required: resolvedRequired || Array.isArray(rules) && (rules == null ? void 0 : rules.some((item) => item == null ? void 0 : item.required)) || (typeof labelRequired === "boolean" ? labelRequired : false),
68
+ ...otherProps.isView && !requiredOnView ? { required: false } : null,
69
+ ...isTrim(type, trim, proConfig),
70
+ // 优先取传进来的,其次取ProConfigProvider配置的
71
+ ...isUpperCase(type, upperCase),
72
+ validateFirst,
73
+ // 当某一规则校验不通过时,是否停止剩下的规则的校验
74
+ disabled: lastDisabled,
75
+ // 添加label宽度
76
+ ...labelWidth ? { labelCol: { flex: `${labelWidth}px` } } : null
77
+ },
78
+ OMIT_FORM_ITEM_KEYS
79
+ );
80
+ };
81
+ export {
82
+ buildFormItemProps
83
+ };