@ant-design/pro-components 3.0.0-beta.1 → 3.0.0-beta.3

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 (784) hide show
  1. package/dist/pro-components.min.js +1 -1
  2. package/es/card/ProCard.d.ts +0 -1
  3. package/es/card/ProCard.js +11 -23
  4. package/es/card/components/Actions/index.js +33 -28
  5. package/es/card/components/Actions/style.js +72 -100
  6. package/es/card/components/Card/index.js +212 -258
  7. package/es/card/components/Card/style.js +192 -266
  8. package/es/card/components/CheckCard/Group.js +198 -208
  9. package/es/card/components/CheckCard/index.js +151 -160
  10. package/es/card/components/CheckCard/style.js +186 -212
  11. package/es/card/components/Divider/index.js +23 -18
  12. package/es/card/components/Divider/style.js +30 -54
  13. package/es/card/components/Loading/index.js +80 -13
  14. package/es/card/components/Loading/style.js +42 -63
  15. package/es/card/components/Operation/index.js +22 -17
  16. package/es/card/components/Operation/style.js +19 -43
  17. package/es/card/components/Statistic/index.js +79 -96
  18. package/es/card/components/Statistic/style.js +76 -115
  19. package/es/card/components/StatisticCard/index.d.ts +0 -2
  20. package/es/card/components/StatisticCard/index.js +59 -70
  21. package/es/card/components/StatisticCard/style.js +36 -55
  22. package/es/card/index.d.ts +2 -2
  23. package/es/card/index.js +2 -9
  24. package/es/card/typing.js +1 -0
  25. package/es/descriptions/index.js +363 -414
  26. package/es/descriptions/useFetchData.js +94 -73
  27. package/es/field/AllProField.js +438 -361
  28. package/es/field/FieldHOC/index.js +32 -28
  29. package/es/field/PureProField.js +129 -160
  30. package/es/field/ValueTypeToComponent.js +686 -396
  31. package/es/field/components/Cascader/index.d.ts +2 -2
  32. package/es/field/components/Cascader/index.js +124 -149
  33. package/es/field/components/Checkbox/index.d.ts +1 -1
  34. package/es/field/components/Checkbox/index.js +106 -128
  35. package/es/field/components/Code/index.js +67 -60
  36. package/es/field/components/ColorPicker/index.d.ts +1 -1
  37. package/es/field/components/ColorPicker/index.js +55 -78
  38. package/es/field/components/DatePicker/index.d.ts +2 -2
  39. package/es/field/components/DatePicker/index.js +100 -116
  40. package/es/field/components/Digit/index.js +84 -83
  41. package/es/field/components/DigitRange/index.js +102 -96
  42. package/es/field/components/FromNow/index.js +50 -62
  43. package/es/field/components/Image/index.js +46 -50
  44. package/es/field/components/IndexColumn/index.js +45 -43
  45. package/es/field/components/Money/index.js +244 -253
  46. package/es/field/components/Options/index.js +61 -71
  47. package/es/field/components/Password/index.js +62 -59
  48. package/es/field/components/Percent/index.js +74 -80
  49. package/es/field/components/Percent/util.js +23 -18
  50. package/es/field/components/Progress/index.js +53 -54
  51. package/es/field/components/Radio/index.d.ts +1 -1
  52. package/es/field/components/Radio/index.js +85 -107
  53. package/es/field/components/RangePicker/index.d.ts +2 -2
  54. package/es/field/components/RangePicker/index.js +122 -137
  55. package/es/field/components/Rate/index.js +39 -35
  56. package/es/field/components/Second/index.js +61 -59
  57. package/es/field/components/Segmented/index.d.ts +1 -1
  58. package/es/field/components/Segmented/index.js +68 -90
  59. package/es/field/components/Select/LightSelect/index.d.ts +1 -1
  60. package/es/field/components/Select/LightSelect/index.js +210 -256
  61. package/es/field/components/Select/SearchSelect/index.js +192 -225
  62. package/es/field/components/Select/index.d.ts +2 -2
  63. package/es/field/components/Select/index.js +299 -368
  64. package/es/field/components/Slider/index.js +39 -45
  65. package/es/field/components/Status/index.js +83 -23
  66. package/es/field/components/Switch/index.d.ts +1 -1
  67. package/es/field/components/Switch/index.js +60 -71
  68. package/es/field/components/Text/index.js +53 -48
  69. package/es/field/components/TextArea/index.js +39 -53
  70. package/es/field/components/TextArea/readonly.js +36 -50
  71. package/es/field/components/TimePicker/index.js +182 -190
  72. package/es/field/components/TreeSelect/index.d.ts +2 -2
  73. package/es/field/components/TreeSelect/index.js +178 -184
  74. package/es/field/index.js +3 -43
  75. package/es/form/BaseForm/BaseForm.js +581 -621
  76. package/es/form/BaseForm/EditOrReadOnlyContext.js +4 -8
  77. package/es/form/BaseForm/LightWrapper/index.js +104 -161
  78. package/es/form/BaseForm/LightWrapper/style.js +14 -41
  79. package/es/form/BaseForm/Submitter/index.js +69 -100
  80. package/es/form/BaseForm/index.js +1 -2
  81. package/es/form/FieldContext.js +4 -8
  82. package/es/form/components/Captcha/index.js +162 -169
  83. package/es/form/components/Cascader/index.js +46 -75
  84. package/es/form/components/Checkbox/index.js +73 -98
  85. package/es/form/components/ColorPicker/index.js +43 -64
  86. package/es/form/components/DatePicker/BaseDatePicker.js +45 -69
  87. package/es/form/components/DatePicker/DatePicker.js +26 -51
  88. package/es/form/components/DatePicker/DateTimePicker.js +26 -50
  89. package/es/form/components/DatePicker/MonthPicker.js +26 -51
  90. package/es/form/components/DatePicker/QuarterPicker.js +26 -51
  91. package/es/form/components/DatePicker/TimePicker.js +43 -72
  92. package/es/form/components/DatePicker/WeekPicker.js +26 -51
  93. package/es/form/components/DatePicker/YearPicker.js +26 -51
  94. package/es/form/components/DatePicker/index.js +4 -6
  95. package/es/form/components/DateRangePicker/BaseDateRanger.js +42 -70
  96. package/es/form/components/DateRangePicker/DateMonthRangePicker.js +29 -51
  97. package/es/form/components/DateRangePicker/DateQuarterRangePicker.js +29 -51
  98. package/es/form/components/DateRangePicker/DateTimeRangePicker.js +29 -51
  99. package/es/form/components/DateRangePicker/DateWeekRangePicker.js +29 -51
  100. package/es/form/components/DateRangePicker/DateYearRangePicker.js +29 -51
  101. package/es/form/components/DateRangePicker/TimeRangePicker.js +42 -67
  102. package/es/form/components/DateRangePicker/index.js +29 -51
  103. package/es/form/components/Dependency/index.js +56 -96
  104. package/es/form/components/Digit/DigitRange.d.ts +1 -1
  105. package/es/form/components/Digit/DigitRange.js +42 -75
  106. package/es/form/components/Digit/index.js +47 -78
  107. package/es/form/components/Field/index.js +80 -124
  108. package/es/form/components/FieldSet/index.js +95 -123
  109. package/es/form/components/FormItem/FormItemRender/index.js +135 -92
  110. package/es/form/components/FormItem/Group/index.js +134 -169
  111. package/es/form/components/FormItem/Group/style.js +41 -62
  112. package/es/form/components/FormItem/index.js +252 -293
  113. package/es/form/components/FormItem/warpField.js +218 -285
  114. package/es/form/components/List/ListContainer.js +221 -181
  115. package/es/form/components/List/ListItem.js +258 -350
  116. package/es/form/components/List/index.js +195 -252
  117. package/es/form/components/List/style.js +48 -95
  118. package/es/form/components/Money/index.js +50 -80
  119. package/es/form/components/Radio/index.js +52 -86
  120. package/es/form/components/Rate/index.js +37 -60
  121. package/es/form/components/SchemaForm/index.js +121 -167
  122. package/es/form/components/SchemaForm/layoutType/Embed.js +8 -5
  123. package/es/form/components/SchemaForm/layoutType/StepsForm.js +35 -68
  124. package/es/form/components/SchemaForm/layoutType/index.js +2 -7
  125. package/es/form/components/SchemaForm/typing.js +1 -0
  126. package/es/form/components/SchemaForm/valueType/dependency.js +19 -43
  127. package/es/form/components/SchemaForm/valueType/divider.js +11 -30
  128. package/es/form/components/SchemaForm/valueType/field.js +59 -100
  129. package/es/form/components/SchemaForm/valueType/formList.js +16 -42
  130. package/es/form/components/SchemaForm/valueType/formSet.js +16 -42
  131. package/es/form/components/SchemaForm/valueType/group.js +15 -37
  132. package/es/form/components/SchemaForm/valueType/ignore.js +4 -7
  133. package/es/form/components/SchemaForm/valueType/index.js +16 -17
  134. package/es/form/components/Segmented/index.js +43 -61
  135. package/es/form/components/Select/index.js +114 -151
  136. package/es/form/components/Slider/index.js +54 -91
  137. package/es/form/components/Switch/index.js +47 -71
  138. package/es/form/components/Text/index.js +132 -161
  139. package/es/form/components/TextArea/index.js +34 -57
  140. package/es/form/components/TreeSelect/index.js +42 -61
  141. package/es/form/components/UploadButton/index.js +125 -145
  142. package/es/form/components/UploadDragger/index.js +77 -92
  143. package/es/form/components/index.js +36 -88
  144. package/es/form/helpers/grid.js +77 -82
  145. package/es/form/helpers/index.js +1 -2
  146. package/es/form/index.js +6 -15
  147. package/es/form/layouts/DrawerForm/index.js +308 -315
  148. package/es/form/layouts/DrawerForm/style.js +26 -50
  149. package/es/form/layouts/LightFilter/index.js +208 -270
  150. package/es/form/layouts/LightFilter/style.js +49 -74
  151. package/es/form/layouts/LoginForm/index.js +85 -104
  152. package/es/form/layouts/LoginForm/style.js +68 -95
  153. package/es/form/layouts/LoginFormPage/index.js +141 -147
  154. package/es/form/layouts/LoginFormPage/style.js +129 -154
  155. package/es/form/layouts/ModalForm/index.js +247 -253
  156. package/es/form/layouts/ProForm/index.js +15 -32
  157. package/es/form/layouts/QueryFilter/Actions.js +52 -47
  158. package/es/form/layouts/QueryFilter/index.js +297 -359
  159. package/es/form/layouts/QueryFilter/style.js +38 -69
  160. package/es/form/layouts/StepsForm/StepForm.js +87 -119
  161. package/es/form/layouts/StepsForm/index.js +339 -353
  162. package/es/form/layouts/StepsForm/style.js +29 -50
  163. package/es/form/layouts/index.js +9 -20
  164. package/es/form/typing.js +1 -0
  165. package/es/index.js +1 -5
  166. package/es/layout/ProLayout.js +426 -497
  167. package/es/layout/WrapContent.js +26 -15
  168. package/es/layout/assert/Logo.js +107 -79
  169. package/es/layout/components/AppsLogoComponents/AppsLogo.js +13 -11
  170. package/es/layout/components/AppsLogoComponents/DefaultContent.js +50 -56
  171. package/es/layout/components/AppsLogoComponents/SimpleContent.js +73 -66
  172. package/es/layout/components/AppsLogoComponents/index.js +90 -73
  173. package/es/layout/components/AppsLogoComponents/style/default.js +31 -35
  174. package/es/layout/components/AppsLogoComponents/style/index.js +51 -77
  175. package/es/layout/components/AppsLogoComponents/style/simple.js +37 -40
  176. package/es/layout/components/CollapsedIcon/index.js +19 -55
  177. package/es/layout/components/CollapsedIcon/style.js +42 -66
  178. package/es/layout/components/Footer.js +27 -38
  179. package/es/layout/components/FooterToolbar/index.js +78 -102
  180. package/es/layout/components/FooterToolbar/style/index.js +38 -62
  181. package/es/layout/components/FooterToolbar/style/stylish.js +10 -38
  182. package/es/layout/components/GlobalFooter/index.js +37 -31
  183. package/es/layout/components/GlobalFooter/style.js +32 -53
  184. package/es/layout/components/GlobalHeader/ActionsContent.js +132 -181
  185. package/es/layout/components/GlobalHeader/index.d.ts +0 -5
  186. package/es/layout/components/GlobalHeader/index.js +76 -84
  187. package/es/layout/components/GlobalHeader/rightContentStyle.js +52 -76
  188. package/es/layout/components/GlobalHeader/style.js +57 -83
  189. package/es/layout/components/GridContent/index.js +35 -33
  190. package/es/layout/components/GridContent/style.js +14 -38
  191. package/es/layout/components/Header/index.js +95 -124
  192. package/es/layout/components/Header/style/header.js +48 -72
  193. package/es/layout/components/Header/style/stylish.js +12 -42
  194. package/es/layout/components/Help/AsyncContentPanel.js +53 -42
  195. package/es/layout/components/Help/HelpProvide.js +55 -6
  196. package/es/layout/components/Help/ProHelpContentPanel.js +128 -127
  197. package/es/layout/components/Help/ProHelpDrawer.js +48 -76
  198. package/es/layout/components/Help/ProHelpModal.js +47 -76
  199. package/es/layout/components/Help/ProHelpPanel.js +183 -224
  200. package/es/layout/components/Help/ProHelpPopover.js +37 -64
  201. package/es/layout/components/Help/RenderContentPanel.js +90 -103
  202. package/es/layout/components/Help/Search.js +124 -163
  203. package/es/layout/components/Help/index.js +19 -40
  204. package/es/layout/components/Help/style.js +90 -115
  205. package/es/layout/components/PageContainer/index.js +233 -280
  206. package/es/layout/components/PageContainer/style/index.js +78 -118
  207. package/es/layout/components/PageContainer/style/stylish.js +10 -38
  208. package/es/layout/components/PageHeader/index.js +144 -129
  209. package/es/layout/components/PageHeader/style/index.js +125 -172
  210. package/es/layout/components/PageLoading/index.js +23 -50
  211. package/es/layout/components/SettingDrawer/BlockCheckbox.js +42 -42
  212. package/es/layout/components/SettingDrawer/LayoutChange.js +108 -98
  213. package/es/layout/components/SettingDrawer/RegionalChange.js +31 -34
  214. package/es/layout/components/SettingDrawer/ThemeColor.js +50 -69
  215. package/es/layout/components/SettingDrawer/icon/group.js +109 -88
  216. package/es/layout/components/SettingDrawer/icon/sub.js +70 -116
  217. package/es/layout/components/SettingDrawer/index.js +405 -420
  218. package/es/layout/components/SettingDrawer/style/index.js +142 -146
  219. package/es/layout/components/SiderMenu/Arrow.js +12 -15
  220. package/es/layout/components/SiderMenu/BaseMenu.js +402 -451
  221. package/es/layout/components/SiderMenu/SiderMenu.js +246 -336
  222. package/es/layout/components/SiderMenu/index.js +72 -101
  223. package/es/layout/components/SiderMenu/style/index.js +171 -210
  224. package/es/layout/components/SiderMenu/style/menu.js +110 -173
  225. package/es/layout/components/SiderMenu/style/stylish.js +12 -42
  226. package/es/layout/components/TopNavHeader/index.js +106 -179
  227. package/es/layout/components/TopNavHeader/style.js +67 -95
  228. package/es/layout/context/RouteContext.js +2 -6
  229. package/es/layout/defaultSettings.js +6 -9
  230. package/es/layout/getPageTitle.js +46 -40
  231. package/es/layout/index.js +4 -27
  232. package/es/layout/locales/en-US/settingDrawer.js +43 -47
  233. package/es/layout/locales/en-US.js +2 -22
  234. package/es/layout/locales/index.js +13 -18
  235. package/es/layout/locales/it-IT/settingDrawer.js +34 -38
  236. package/es/layout/locales/it-IT.js +2 -22
  237. package/es/layout/locales/ko-KR/settingDrawer.js +39 -43
  238. package/es/layout/locales/ko-KR.js +2 -22
  239. package/es/layout/locales/zh-CN/settingDrawer.js +43 -47
  240. package/es/layout/locales/zh-CN.js +2 -22
  241. package/es/layout/locales/zh-TW/settingDrawer.js +35 -39
  242. package/es/layout/locales/zh-TW.js +2 -22
  243. package/es/layout/style/index.js +43 -73
  244. package/es/layout/typing.js +1 -0
  245. package/es/layout/utils/getBreadcrumbProps.js +111 -91
  246. package/es/layout/utils/getMenuData.js +18 -21
  247. package/es/layout/utils/pathTools.js +11 -12
  248. package/es/layout/utils/useCurrentMenuLayoutProps.js +21 -29
  249. package/es/layout/utils/utils.js +35 -51
  250. package/es/list/Item.js +222 -294
  251. package/es/list/ListView.js +188 -232
  252. package/es/list/constants.js +4 -17
  253. package/es/list/index.js +121 -178
  254. package/es/list/style/index.js +224 -287
  255. package/es/provider/index.js +228 -179
  256. package/es/provider/intl.js +100 -124
  257. package/es/provider/locale/ar_EG.js +47 -51
  258. package/es/provider/locale/ca_ES.js +45 -49
  259. package/es/provider/locale/cs_CZ.js +50 -54
  260. package/es/provider/locale/de_DE.js +47 -51
  261. package/es/provider/locale/en_GB.js +49 -53
  262. package/es/provider/locale/en_US.js +51 -55
  263. package/es/provider/locale/es_ES.js +47 -51
  264. package/es/provider/locale/fa_IR.js +47 -51
  265. package/es/provider/locale/fr_FR.js +47 -51
  266. package/es/provider/locale/he_IL.js +50 -54
  267. package/es/provider/locale/hr_HR.js +47 -51
  268. package/es/provider/locale/id_ID.js +47 -51
  269. package/es/provider/locale/it_IT.js +47 -51
  270. package/es/provider/locale/ja_JP.js +47 -51
  271. package/es/provider/locale/ko_KR.js +47 -51
  272. package/es/provider/locale/mn_MN.js +47 -51
  273. package/es/provider/locale/ms_MY.js +47 -51
  274. package/es/provider/locale/nl_NL.js +50 -54
  275. package/es/provider/locale/pl_PL.js +47 -51
  276. package/es/provider/locale/pt_BR.js +47 -51
  277. package/es/provider/locale/ro_RO.js +50 -54
  278. package/es/provider/locale/ru_RU.js +47 -51
  279. package/es/provider/locale/sk_SK.js +50 -54
  280. package/es/provider/locale/sr_RS.js +47 -51
  281. package/es/provider/locale/sv_SE.js +50 -54
  282. package/es/provider/locale/th_TH.js +50 -54
  283. package/es/provider/locale/tr_TR.js +47 -51
  284. package/es/provider/locale/uk_UA.js +50 -54
  285. package/es/provider/locale/uz_UZ.js +47 -51
  286. package/es/provider/locale/vi_VN.js +47 -51
  287. package/es/provider/locale/zh_CN.js +50 -54
  288. package/es/provider/locale/zh_HK.js +50 -54
  289. package/es/provider/locale/zh_TW.js +50 -54
  290. package/es/provider/typing/layoutToken.d.ts +0 -10
  291. package/es/provider/typing/layoutToken.js +19 -42
  292. package/es/provider/useStyle/index.d.ts +1 -1
  293. package/es/provider/useStyle/index.js +91 -78
  294. package/es/provider/utils/merge.js +13 -29
  295. package/es/skeleton/components/Descriptions/index.js +240 -252
  296. package/es/skeleton/components/List/index.js +217 -207
  297. package/es/skeleton/components/Result/index.js +57 -54
  298. package/es/skeleton/index.js +18 -62
  299. package/es/table/Store/Provide.d.ts +0 -1
  300. package/es/table/Store/Provide.js +141 -128
  301. package/es/table/Table.js +645 -698
  302. package/es/table/components/Alert/index.js +60 -37
  303. package/es/table/components/Alert/style.js +28 -52
  304. package/es/table/components/ColumnSetting/index.js +382 -387
  305. package/es/table/components/ColumnSetting/style.js +72 -108
  306. package/es/table/components/DragSortTable/index.js +101 -137
  307. package/es/table/components/DragSortTable/style.js +20 -44
  308. package/es/table/components/Dropdown/index.js +70 -83
  309. package/es/table/components/EditableTable/CellEditorTable.js +50 -65
  310. package/es/table/components/EditableTable/RowEditorTable.js +44 -62
  311. package/es/table/components/EditableTable/index.js +343 -347
  312. package/es/table/components/Form/FormRender.js +167 -173
  313. package/es/table/components/Form/index.js +123 -132
  314. package/es/table/components/ListToolBar/HeaderMenu.js +68 -102
  315. package/es/table/components/ListToolBar/index.js +254 -273
  316. package/es/table/components/ListToolBar/style.js +119 -134
  317. package/es/table/components/ToolBar/DensityIcon.js +36 -41
  318. package/es/table/components/ToolBar/FullscreenIcon.js +21 -14
  319. package/es/table/components/ToolBar/index.js +235 -267
  320. package/es/table/index.js +3 -50
  321. package/es/table/style/index.js +129 -175
  322. package/es/table/typing.d.ts +2 -2
  323. package/es/table/typing.js +1 -0
  324. package/es/table/useFetchData.js +432 -232
  325. package/es/table/utils/cellRenderToFromItem.js +186 -261
  326. package/es/table/utils/columnRender.js +116 -115
  327. package/es/table/utils/columnSort.js +23 -21
  328. package/es/table/utils/genProColumnToColumn.js +101 -129
  329. package/es/table/utils/index.js +197 -115
  330. package/es/table/utils/useDragSort.js +135 -174
  331. package/es/utils/components/DropdownFooter/index.js +48 -58
  332. package/es/utils/components/DropdownFooter/style.js +16 -40
  333. package/es/utils/components/ErrorBoundary/index.js +51 -25
  334. package/es/utils/components/FieldLabel/index.js +119 -146
  335. package/es/utils/components/FieldLabel/style.js +82 -128
  336. package/es/utils/components/FilterDropdown/index.js +54 -81
  337. package/es/utils/components/FilterDropdown/style.js +17 -38
  338. package/es/utils/components/InlineErrorFormItem/index.js +132 -167
  339. package/es/utils/components/InlineErrorFormItem/style.js +51 -79
  340. package/es/utils/components/LabelIconTip/index.js +58 -56
  341. package/es/utils/components/LabelIconTip/style.js +36 -57
  342. package/es/utils/components/ProFormContext/index.js +2 -6
  343. package/es/utils/conversionMomentValue/index.js +102 -83
  344. package/es/utils/dateArrayFormatter/index.js +31 -16
  345. package/es/utils/genCopyable/index.js +44 -38
  346. package/es/utils/getFieldPropsOrFormItemProps/index.js +10 -7
  347. package/es/utils/hooks/useDebounceFn/index.js +58 -48
  348. package/es/utils/hooks/useDebounceValue/index.js +29 -19
  349. package/es/utils/hooks/useDeepCompareEffect/index.js +29 -44
  350. package/es/utils/hooks/useDeepCompareMemo/index.js +12 -10
  351. package/es/utils/hooks/useDocumentTitle/index.js +5 -9
  352. package/es/utils/hooks/useFetchData/index.js +70 -63
  353. package/es/utils/hooks/useForceRender/index.js +12 -9
  354. package/es/utils/hooks/useLatest/index.js +8 -8
  355. package/es/utils/hooks/usePrevious/index.js +5 -9
  356. package/es/utils/hooks/useReactiveRef/index.js +4 -8
  357. package/es/utils/hooks/useRefCallback/index.js +6 -10
  358. package/es/utils/hooks/useRefFunction/index.js +11 -10
  359. package/es/utils/index.d.ts +1 -3
  360. package/es/utils/index.js +9 -84
  361. package/es/utils/isBrowser/index.js +14 -9
  362. package/es/utils/isDeepEqualReact/index.js +79 -53
  363. package/es/utils/isDropdownValueType/index.js +4 -8
  364. package/es/utils/isImg/index.js +3 -6
  365. package/es/utils/isNil/index.js +3 -5
  366. package/es/utils/isUrl/index.js +10 -10
  367. package/es/utils/merge/index.js +20 -27
  368. package/es/utils/nanoid/index.js +24 -18
  369. package/es/utils/omitBoolean/index.js +8 -7
  370. package/es/utils/omitUndefined/index.js +6 -10
  371. package/es/utils/omitUndefinedAndEmptyArr/index.js +7 -11
  372. package/es/utils/parseValueToMoment/index.js +16 -14
  373. package/es/utils/pickProFormItemProps/index.js +9 -42
  374. package/es/utils/pickProProps/index.js +9 -11
  375. package/es/utils/proFieldParsingText/index.js +141 -49
  376. package/es/utils/runFunction/index.js +8 -8
  377. package/es/utils/stringify/index.js +4 -9
  378. package/es/utils/transformKeySubmitValue/index.js +254 -130
  379. package/es/utils/typing.js +1 -0
  380. package/es/utils/useEditableArray/index.js +776 -611
  381. package/es/utils/useEditableMap/index.js +179 -161
  382. package/es/utils/useMediaQuery/index.js +47 -43
  383. package/es/utils/useMediaQuery/query.js +19 -15
  384. package/es/utils/useMountMergeState/index.d.ts +1 -1
  385. package/es/utils/useMountMergeState/index.js +2 -5
  386. package/es/version.js +3 -7
  387. package/lib/card/ProCard.d.ts +0 -1
  388. package/lib/card/ProCard.js +20 -52
  389. package/lib/card/components/Actions/index.js +39 -57
  390. package/lib/card/components/Actions/style.js +77 -115
  391. package/lib/card/components/Card/index.js +221 -287
  392. package/lib/card/components/Card/style.js +197 -281
  393. package/lib/card/components/CheckCard/Group.js +205 -230
  394. package/lib/card/components/CheckCard/index.js +160 -190
  395. package/lib/card/components/CheckCard/style.js +192 -227
  396. package/lib/card/components/Divider/index.js +30 -47
  397. package/lib/card/components/Divider/style.js +35 -69
  398. package/lib/card/components/Loading/index.js +85 -42
  399. package/lib/card/components/Loading/style.js +48 -78
  400. package/lib/card/components/Operation/index.js +29 -46
  401. package/lib/card/components/Operation/style.js +24 -58
  402. package/lib/card/components/Statistic/index.js +84 -117
  403. package/lib/card/components/Statistic/style.js +81 -130
  404. package/lib/card/components/StatisticCard/index.d.ts +0 -2
  405. package/lib/card/components/StatisticCard/index.js +72 -103
  406. package/lib/card/components/StatisticCard/style.js +41 -70
  407. package/lib/card/index.d.ts +2 -2
  408. package/lib/card/index.js +34 -41
  409. package/lib/card/typing.js +4 -16
  410. package/lib/descriptions/index.js +368 -436
  411. package/lib/descriptions/useFetchData.js +99 -100
  412. package/lib/field/AllProField.js +477 -415
  413. package/lib/field/FieldHOC/index.js +37 -56
  414. package/lib/field/PureProField.js +141 -187
  415. package/lib/field/ValueTypeToComponent.js +725 -454
  416. package/lib/field/components/Cascader/index.d.ts +2 -2
  417. package/lib/field/components/Cascader/index.js +132 -171
  418. package/lib/field/components/Checkbox/index.d.ts +1 -1
  419. package/lib/field/components/Checkbox/index.js +113 -155
  420. package/lib/field/components/Code/index.js +73 -86
  421. package/lib/field/components/ColorPicker/index.d.ts +1 -1
  422. package/lib/field/components/ColorPicker/index.js +61 -103
  423. package/lib/field/components/DatePicker/index.d.ts +2 -2
  424. package/lib/field/components/DatePicker/index.js +109 -145
  425. package/lib/field/components/Digit/index.js +92 -110
  426. package/lib/field/components/DigitRange/index.js +108 -122
  427. package/lib/field/components/FromNow/index.js +57 -90
  428. package/lib/field/components/Image/index.js +52 -76
  429. package/lib/field/components/IndexColumn/index.js +50 -72
  430. package/lib/field/components/Money/index.js +253 -281
  431. package/lib/field/components/Options/index.js +68 -98
  432. package/lib/field/components/Password/index.js +66 -85
  433. package/lib/field/components/Percent/index.js +80 -101
  434. package/lib/field/components/Percent/util.js +28 -33
  435. package/lib/field/components/Progress/index.js +61 -80
  436. package/lib/field/components/Radio/index.d.ts +1 -1
  437. package/lib/field/components/Radio/index.js +92 -134
  438. package/lib/field/components/RangePicker/index.d.ts +2 -2
  439. package/lib/field/components/RangePicker/index.js +129 -164
  440. package/lib/field/components/Rate/index.js +43 -60
  441. package/lib/field/components/Second/index.js +67 -84
  442. package/lib/field/components/Segmented/index.d.ts +1 -1
  443. package/lib/field/components/Segmented/index.js +74 -117
  444. package/lib/field/components/Select/LightSelect/index.d.ts +1 -1
  445. package/lib/field/components/Select/LightSelect/index.js +216 -282
  446. package/lib/field/components/Select/SearchSelect/index.js +195 -245
  447. package/lib/field/components/Select/index.d.ts +2 -2
  448. package/lib/field/components/Select/index.js +307 -379
  449. package/lib/field/components/Slider/index.js +43 -70
  450. package/lib/field/components/Status/index.js +89 -52
  451. package/lib/field/components/Switch/index.d.ts +1 -1
  452. package/lib/field/components/Switch/index.js +67 -98
  453. package/lib/field/components/Text/index.js +58 -74
  454. package/lib/field/components/TextArea/index.js +44 -80
  455. package/lib/field/components/TextArea/readonly.js +43 -76
  456. package/lib/field/components/TimePicker/index.js +188 -217
  457. package/lib/field/components/TreeSelect/index.d.ts +2 -2
  458. package/lib/field/components/TreeSelect/index.js +185 -206
  459. package/lib/field/index.js +240 -96
  460. package/lib/form/BaseForm/BaseForm.js +594 -634
  461. package/lib/form/BaseForm/EditOrReadOnlyContext.js +9 -36
  462. package/lib/form/BaseForm/LightWrapper/index.js +111 -182
  463. package/lib/form/BaseForm/LightWrapper/style.js +19 -56
  464. package/lib/form/BaseForm/Submitter/index.js +75 -126
  465. package/lib/form/BaseForm/index.js +37 -20
  466. package/lib/form/FieldContext.js +8 -36
  467. package/lib/form/components/Captcha/index.js +169 -196
  468. package/lib/form/components/Cascader/index.js +56 -104
  469. package/lib/form/components/Checkbox/index.js +83 -128
  470. package/lib/form/components/ColorPicker/index.js +51 -92
  471. package/lib/form/components/DatePicker/BaseDatePicker.js +54 -98
  472. package/lib/form/components/DatePicker/DatePicker.js +32 -77
  473. package/lib/form/components/DatePicker/DateTimePicker.js +32 -76
  474. package/lib/form/components/DatePicker/MonthPicker.js +32 -77
  475. package/lib/form/components/DatePicker/QuarterPicker.js +32 -77
  476. package/lib/form/components/DatePicker/TimePicker.js +55 -103
  477. package/lib/form/components/DatePicker/WeekPicker.js +32 -77
  478. package/lib/form/components/DatePicker/YearPicker.js +32 -77
  479. package/lib/form/components/DatePicker/index.js +19 -44
  480. package/lib/form/components/DateRangePicker/BaseDateRanger.js +53 -100
  481. package/lib/form/components/DateRangePicker/DateMonthRangePicker.js +36 -78
  482. package/lib/form/components/DateRangePicker/DateQuarterRangePicker.js +36 -78
  483. package/lib/form/components/DateRangePicker/DateTimeRangePicker.js +36 -78
  484. package/lib/form/components/DateRangePicker/DateWeekRangePicker.js +36 -78
  485. package/lib/form/components/DateRangePicker/DateYearRangePicker.js +36 -78
  486. package/lib/form/components/DateRangePicker/TimeRangePicker.js +53 -97
  487. package/lib/form/components/DateRangePicker/index.js +36 -78
  488. package/lib/form/components/Dependency/index.js +68 -127
  489. package/lib/form/components/Digit/DigitRange.d.ts +1 -1
  490. package/lib/form/components/Digit/DigitRange.js +50 -103
  491. package/lib/form/components/Digit/index.js +55 -106
  492. package/lib/form/components/Field/index.js +89 -153
  493. package/lib/form/components/FieldSet/index.js +107 -153
  494. package/lib/form/components/FormItem/FormItemRender/index.js +142 -114
  495. package/lib/form/components/FormItem/Group/index.js +143 -198
  496. package/lib/form/components/FormItem/Group/style.js +46 -77
  497. package/lib/form/components/FormItem/index.js +257 -316
  498. package/lib/form/components/FormItem/warpField.js +229 -308
  499. package/lib/form/components/List/ListContainer.js +227 -211
  500. package/lib/form/components/List/ListItem.js +267 -374
  501. package/lib/form/components/List/index.js +211 -277
  502. package/lib/form/components/List/style.js +53 -110
  503. package/lib/form/components/Money/index.js +58 -108
  504. package/lib/form/components/Radio/index.js +60 -114
  505. package/lib/form/components/Rate/index.js +45 -88
  506. package/lib/form/components/SchemaForm/index.js +154 -193
  507. package/lib/form/components/SchemaForm/layoutType/Embed.js +12 -24
  508. package/lib/form/components/SchemaForm/layoutType/StepsForm.js +43 -96
  509. package/lib/form/components/SchemaForm/layoutType/index.js +18 -35
  510. package/lib/form/components/SchemaForm/typing.js +4 -16
  511. package/lib/form/components/SchemaForm/valueType/dependency.js +25 -69
  512. package/lib/form/components/SchemaForm/valueType/divider.js +16 -45
  513. package/lib/form/components/SchemaForm/valueType/field.js +67 -128
  514. package/lib/form/components/SchemaForm/valueType/formList.js +22 -58
  515. package/lib/form/components/SchemaForm/valueType/formSet.js +22 -68
  516. package/lib/form/components/SchemaForm/valueType/group.js +21 -53
  517. package/lib/form/components/SchemaForm/valueType/ignore.js +8 -25
  518. package/lib/form/components/SchemaForm/valueType/index.js +27 -43
  519. package/lib/form/components/Segmented/index.js +50 -89
  520. package/lib/form/components/Select/index.js +125 -181
  521. package/lib/form/components/Slider/index.js +62 -119
  522. package/lib/form/components/Switch/index.js +55 -99
  523. package/lib/form/components/Text/index.js +141 -190
  524. package/lib/form/components/TextArea/index.js +42 -85
  525. package/lib/form/components/TreeSelect/index.js +50 -89
  526. package/lib/form/components/UploadButton/index.js +131 -172
  527. package/lib/form/components/UploadDragger/index.js +84 -119
  528. package/lib/form/components/index.js +294 -110
  529. package/lib/form/helpers/grid.js +82 -97
  530. package/lib/form/helpers/index.js +15 -18
  531. package/lib/form/index.js +78 -38
  532. package/lib/form/layouts/DrawerForm/index.js +317 -338
  533. package/lib/form/layouts/DrawerForm/style.js +31 -65
  534. package/lib/form/layouts/LightFilter/index.js +217 -293
  535. package/lib/form/layouts/LightFilter/style.js +54 -89
  536. package/lib/form/layouts/LoginForm/index.js +93 -133
  537. package/lib/form/layouts/LoginForm/style.js +73 -110
  538. package/lib/form/layouts/LoginFormPage/index.js +148 -174
  539. package/lib/form/layouts/LoginFormPage/style.js +133 -165
  540. package/lib/form/layouts/ModalForm/index.js +253 -273
  541. package/lib/form/layouts/ProForm/index.js +28 -68
  542. package/lib/form/layouts/QueryFilter/Actions.js +57 -77
  543. package/lib/form/layouts/QueryFilter/index.js +308 -390
  544. package/lib/form/layouts/QueryFilter/style.js +43 -84
  545. package/lib/form/layouts/StepsForm/StepForm.js +94 -146
  546. package/lib/form/layouts/StepsForm/index.js +351 -378
  547. package/lib/form/layouts/StepsForm/style.js +34 -65
  548. package/lib/form/layouts/index.js +62 -40
  549. package/lib/form/typing.js +4 -16
  550. package/lib/index.js +133 -34
  551. package/lib/layout/ProLayout.js +447 -528
  552. package/lib/layout/WrapContent.js +34 -46
  553. package/lib/layout/assert/Logo.js +110 -97
  554. package/lib/layout/components/AppsLogoComponents/AppsLogo.js +17 -29
  555. package/lib/layout/components/AppsLogoComponents/DefaultContent.js +55 -85
  556. package/lib/layout/components/AppsLogoComponents/SimpleContent.js +78 -95
  557. package/lib/layout/components/AppsLogoComponents/index.js +98 -105
  558. package/lib/layout/components/AppsLogoComponents/style/default.js +36 -55
  559. package/lib/layout/components/AppsLogoComponents/style/index.js +58 -94
  560. package/lib/layout/components/AppsLogoComponents/style/simple.js +41 -59
  561. package/lib/layout/components/CollapsedIcon/index.js +26 -82
  562. package/lib/layout/components/CollapsedIcon/style.js +47 -81
  563. package/lib/layout/components/Footer.js +33 -65
  564. package/lib/layout/components/FooterToolbar/index.js +87 -132
  565. package/lib/layout/components/FooterToolbar/style/index.js +43 -77
  566. package/lib/layout/components/FooterToolbar/style/stylish.js +16 -54
  567. package/lib/layout/components/GlobalFooter/index.js +43 -61
  568. package/lib/layout/components/GlobalFooter/style.js +37 -68
  569. package/lib/layout/components/GlobalHeader/ActionsContent.js +138 -208
  570. package/lib/layout/components/GlobalHeader/index.d.ts +0 -5
  571. package/lib/layout/components/GlobalHeader/index.js +86 -116
  572. package/lib/layout/components/GlobalHeader/rightContentStyle.js +57 -91
  573. package/lib/layout/components/GlobalHeader/style.js +62 -98
  574. package/lib/layout/components/GridContent/index.js +43 -64
  575. package/lib/layout/components/GridContent/style.js +19 -53
  576. package/lib/layout/components/Header/index.js +105 -156
  577. package/lib/layout/components/Header/style/header.js +53 -87
  578. package/lib/layout/components/Header/style/stylish.js +18 -58
  579. package/lib/layout/components/Help/AsyncContentPanel.js +59 -62
  580. package/lib/layout/components/Help/HelpProvide.js +59 -34
  581. package/lib/layout/components/Help/ProHelpContentPanel.js +139 -157
  582. package/lib/layout/components/Help/ProHelpDrawer.js +54 -102
  583. package/lib/layout/components/Help/ProHelpModal.js +53 -102
  584. package/lib/layout/components/Help/ProHelpPanel.js +192 -254
  585. package/lib/layout/components/Help/ProHelpPopover.js +46 -92
  586. package/lib/layout/components/Help/RenderContentPanel.js +97 -130
  587. package/lib/layout/components/Help/Search.js +130 -191
  588. package/lib/layout/components/Help/index.js +113 -74
  589. package/lib/layout/components/Help/style.js +96 -130
  590. package/lib/layout/components/PageContainer/index.js +245 -308
  591. package/lib/layout/components/PageContainer/style/index.js +83 -133
  592. package/lib/layout/components/PageContainer/style/stylish.js +16 -54
  593. package/lib/layout/components/PageHeader/index.js +149 -156
  594. package/lib/layout/components/PageHeader/style/index.js +129 -182
  595. package/lib/layout/components/PageLoading/index.js +28 -76
  596. package/lib/layout/components/SettingDrawer/BlockCheckbox.js +46 -71
  597. package/lib/layout/components/SettingDrawer/LayoutChange.js +114 -129
  598. package/lib/layout/components/SettingDrawer/RegionalChange.js +38 -65
  599. package/lib/layout/components/SettingDrawer/ThemeColor.js +55 -95
  600. package/lib/layout/components/SettingDrawer/icon/group.js +111 -105
  601. package/lib/layout/components/SettingDrawer/icon/sub.js +72 -133
  602. package/lib/layout/components/SettingDrawer/index.js +424 -447
  603. package/lib/layout/components/SettingDrawer/style/index.js +147 -161
  604. package/lib/layout/components/SiderMenu/Arrow.js +16 -34
  605. package/lib/layout/components/SiderMenu/BaseMenu.js +416 -487
  606. package/lib/layout/components/SiderMenu/SiderMenu.js +254 -367
  607. package/lib/layout/components/SiderMenu/index.js +81 -130
  608. package/lib/layout/components/SiderMenu/style/index.js +178 -226
  609. package/lib/layout/components/SiderMenu/style/menu.js +115 -188
  610. package/lib/layout/components/SiderMenu/style/stylish.js +18 -58
  611. package/lib/layout/components/TopNavHeader/index.js +117 -211
  612. package/lib/layout/components/TopNavHeader/style.js +72 -110
  613. package/lib/layout/context/RouteContext.js +6 -24
  614. package/lib/layout/defaultSettings.js +11 -29
  615. package/lib/layout/getPageTitle.js +53 -60
  616. package/lib/layout/index.js +145 -55
  617. package/lib/layout/locales/en-US/settingDrawer.js +47 -65
  618. package/lib/layout/locales/en-US.js +8 -48
  619. package/lib/layout/locales/index.js +24 -52
  620. package/lib/layout/locales/it-IT/settingDrawer.js +38 -56
  621. package/lib/layout/locales/it-IT.js +8 -48
  622. package/lib/layout/locales/ko-KR/settingDrawer.js +43 -61
  623. package/lib/layout/locales/ko-KR.js +8 -48
  624. package/lib/layout/locales/zh-CN/settingDrawer.js +47 -65
  625. package/lib/layout/locales/zh-CN.js +8 -48
  626. package/lib/layout/locales/zh-TW/settingDrawer.js +39 -57
  627. package/lib/layout/locales/zh-TW.js +8 -48
  628. package/lib/layout/style/index.js +48 -88
  629. package/lib/layout/typing.js +4 -16
  630. package/lib/layout/utils/getBreadcrumbProps.js +117 -107
  631. package/lib/layout/utils/getMenuData.js +23 -40
  632. package/lib/layout/utils/pathTools.js +14 -29
  633. package/lib/layout/utils/useCurrentMenuLayoutProps.js +27 -49
  634. package/lib/layout/utils/utils.js +40 -64
  635. package/lib/list/Item.js +229 -321
  636. package/lib/list/ListView.js +197 -260
  637. package/lib/list/constants.js +7 -35
  638. package/lib/list/index.js +132 -207
  639. package/lib/list/style/index.js +230 -302
  640. package/lib/provider/index.js +270 -215
  641. package/lib/provider/intl.js +140 -188
  642. package/lib/provider/locale/ar_EG.js +51 -69
  643. package/lib/provider/locale/ca_ES.js +49 -67
  644. package/lib/provider/locale/cs_CZ.js +54 -72
  645. package/lib/provider/locale/de_DE.js +51 -69
  646. package/lib/provider/locale/en_GB.js +53 -71
  647. package/lib/provider/locale/en_US.js +55 -73
  648. package/lib/provider/locale/es_ES.js +51 -69
  649. package/lib/provider/locale/fa_IR.js +51 -69
  650. package/lib/provider/locale/fr_FR.js +51 -69
  651. package/lib/provider/locale/he_IL.js +54 -72
  652. package/lib/provider/locale/hr_HR.js +51 -69
  653. package/lib/provider/locale/id_ID.js +51 -69
  654. package/lib/provider/locale/it_IT.js +51 -69
  655. package/lib/provider/locale/ja_JP.js +51 -69
  656. package/lib/provider/locale/ko_KR.js +51 -69
  657. package/lib/provider/locale/mn_MN.js +51 -69
  658. package/lib/provider/locale/ms_MY.js +51 -69
  659. package/lib/provider/locale/nl_NL.js +54 -72
  660. package/lib/provider/locale/pl_PL.js +51 -69
  661. package/lib/provider/locale/pt_BR.js +51 -69
  662. package/lib/provider/locale/ro_RO.js +54 -72
  663. package/lib/provider/locale/ru_RU.js +51 -69
  664. package/lib/provider/locale/sk_SK.js +54 -72
  665. package/lib/provider/locale/sr_RS.js +51 -69
  666. package/lib/provider/locale/sv_SE.js +54 -72
  667. package/lib/provider/locale/th_TH.js +54 -72
  668. package/lib/provider/locale/tr_TR.js +51 -69
  669. package/lib/provider/locale/uk_UA.js +54 -72
  670. package/lib/provider/locale/uz_UZ.js +51 -69
  671. package/lib/provider/locale/vi_VN.js +51 -69
  672. package/lib/provider/locale/zh_CN.js +54 -72
  673. package/lib/provider/locale/zh_HK.js +54 -72
  674. package/lib/provider/locale/zh_TW.js +54 -72
  675. package/lib/provider/typing/layoutToken.d.ts +0 -10
  676. package/lib/provider/typing/layoutToken.js +36 -69
  677. package/lib/provider/useStyle/index.d.ts +1 -1
  678. package/lib/provider/useStyle/index.js +98 -94
  679. package/lib/provider/utils/merge.js +18 -44
  680. package/lib/skeleton/components/Descriptions/index.js +246 -282
  681. package/lib/skeleton/components/List/index.js +221 -236
  682. package/lib/skeleton/components/Result/index.js +63 -84
  683. package/lib/skeleton/index.js +73 -79
  684. package/lib/table/Store/Provide.d.ts +0 -1
  685. package/lib/table/Store/Provide.js +147 -151
  686. package/lib/table/Table.js +664 -712
  687. package/lib/table/components/Alert/index.js +66 -67
  688. package/lib/table/components/Alert/style.js +33 -67
  689. package/lib/table/components/ColumnSetting/index.js +391 -404
  690. package/lib/table/components/ColumnSetting/style.js +77 -123
  691. package/lib/table/components/DragSortTable/index.js +110 -165
  692. package/lib/table/components/DragSortTable/style.js +25 -59
  693. package/lib/table/components/Dropdown/index.js +75 -108
  694. package/lib/table/components/EditableTable/CellEditorTable.js +55 -90
  695. package/lib/table/components/EditableTable/RowEditorTable.js +49 -87
  696. package/lib/table/components/EditableTable/index.js +351 -365
  697. package/lib/table/components/Form/FormRender.js +176 -201
  698. package/lib/table/components/Form/index.js +132 -161
  699. package/lib/table/components/ListToolBar/HeaderMenu.js +74 -128
  700. package/lib/table/components/ListToolBar/index.js +263 -302
  701. package/lib/table/components/ListToolBar/style.js +124 -149
  702. package/lib/table/components/ToolBar/DensityIcon.js +43 -71
  703. package/lib/table/components/ToolBar/FullscreenIcon.js +30 -45
  704. package/lib/table/components/ToolBar/index.js +247 -299
  705. package/lib/table/index.js +179 -71
  706. package/lib/table/style/index.js +135 -190
  707. package/lib/table/typing.d.ts +2 -2
  708. package/lib/table/typing.js +4 -16
  709. package/lib/table/useFetchData.js +437 -241
  710. package/lib/table/utils/cellRenderToFromItem.js +192 -277
  711. package/lib/table/utils/columnRender.js +126 -144
  712. package/lib/table/utils/columnSort.js +27 -39
  713. package/lib/table/utils/genProColumnToColumn.js +111 -141
  714. package/lib/table/utils/index.js +204 -128
  715. package/lib/table/utils/useDragSort.js +141 -188
  716. package/lib/utils/components/DropdownFooter/index.js +56 -89
  717. package/lib/utils/components/DropdownFooter/style.js +21 -55
  718. package/lib/utils/components/ErrorBoundary/index.js +55 -53
  719. package/lib/utils/components/FieldLabel/index.js +126 -176
  720. package/lib/utils/components/FieldLabel/style.js +87 -143
  721. package/lib/utils/components/FilterDropdown/index.js +61 -109
  722. package/lib/utils/components/FilterDropdown/style.js +22 -53
  723. package/lib/utils/components/InlineErrorFormItem/index.js +137 -193
  724. package/lib/utils/components/InlineErrorFormItem/style.js +56 -94
  725. package/lib/utils/components/LabelIconTip/index.js +62 -82
  726. package/lib/utils/components/LabelIconTip/style.js +41 -72
  727. package/lib/utils/components/ProFormContext/index.js +7 -34
  728. package/lib/utils/conversionMomentValue/index.js +112 -115
  729. package/lib/utils/dateArrayFormatter/index.js +38 -46
  730. package/lib/utils/genCopyable/index.js +49 -66
  731. package/lib/utils/getFieldPropsOrFormItemProps/index.js +15 -27
  732. package/lib/utils/hooks/useDebounceFn/index.js +63 -65
  733. package/lib/utils/hooks/useDebounceValue/index.js +35 -38
  734. package/lib/utils/hooks/useDeepCompareEffect/index.js +37 -61
  735. package/lib/utils/hooks/useDeepCompareMemo/index.js +17 -39
  736. package/lib/utils/hooks/useDocumentTitle/index.js +10 -28
  737. package/lib/utils/hooks/useFetchData/index.js +74 -89
  738. package/lib/utils/hooks/useForceRender/index.js +16 -26
  739. package/lib/utils/hooks/useLatest/index.js +11 -26
  740. package/lib/utils/hooks/usePrevious/index.js +9 -27
  741. package/lib/utils/hooks/useReactiveRef/index.js +10 -37
  742. package/lib/utils/hooks/useRefCallback/index.js +9 -27
  743. package/lib/utils/hooks/useRefFunction/index.js +16 -29
  744. package/lib/utils/index.d.ts +1 -3
  745. package/lib/utils/index.js +455 -138
  746. package/lib/utils/isBrowser/index.js +18 -27
  747. package/lib/utils/isDeepEqualReact/index.js +83 -70
  748. package/lib/utils/isDropdownValueType/index.js +8 -26
  749. package/lib/utils/isImg/index.js +6 -23
  750. package/lib/utils/isNil/index.js +7 -23
  751. package/lib/utils/isUrl/index.js +14 -28
  752. package/lib/utils/merge/index.js +26 -44
  753. package/lib/utils/nanoid/index.js +28 -36
  754. package/lib/utils/omitBoolean/index.js +12 -25
  755. package/lib/utils/omitUndefined/index.js +10 -28
  756. package/lib/utils/omitUndefinedAndEmptyArr/index.js +11 -29
  757. package/lib/utils/parseValueToMoment/index.js +26 -47
  758. package/lib/utils/pickProFormItemProps/index.js +12 -59
  759. package/lib/utils/pickProProps/index.js +13 -29
  760. package/lib/utils/proFieldParsingText/index.js +146 -77
  761. package/lib/utils/runFunction/index.js +12 -26
  762. package/lib/utils/stringify/index.js +14 -28
  763. package/lib/utils/transformKeySubmitValue/index.js +262 -160
  764. package/lib/utils/typing.js +4 -16
  765. package/lib/utils/useEditableArray/index.js +790 -630
  766. package/lib/utils/useEditableMap/index.js +188 -179
  767. package/lib/utils/useMediaQuery/index.js +53 -73
  768. package/lib/utils/useMediaQuery/query.js +23 -32
  769. package/lib/utils/useMountMergeState/index.d.ts +1 -1
  770. package/lib/utils/useMountMergeState/index.js +10 -33
  771. package/lib/version.js +7 -25
  772. package/package.json +4 -3
  773. package/es/card/components/TabPane/index.d.ts +0 -26
  774. package/es/card/components/TabPane/index.js +0 -84
  775. package/es/utils/compareVersions/coverToNewToken.d.ts +0 -2
  776. package/es/utils/compareVersions/coverToNewToken.js +0 -56
  777. package/es/utils/compareVersions/index.d.ts +0 -8
  778. package/es/utils/compareVersions/index.js +0 -48
  779. package/lib/card/components/TabPane/index.d.ts +0 -26
  780. package/lib/card/components/TabPane/index.js +0 -111
  781. package/lib/utils/compareVersions/coverToNewToken.d.ts +0 -2
  782. package/lib/utils/compareVersions/coverToNewToken.js +0 -73
  783. package/lib/utils/compareVersions/index.d.ts +0 -8
  784. package/lib/utils/compareVersions/index.js +0 -68
@@ -1,172 +1,113 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __objRest = (source, exclude) => {
25
- var target = {};
26
- for (var prop in source)
27
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
28
- target[prop] = source[prop];
29
- if (source != null && __getOwnPropSymbols)
30
- for (var prop of __getOwnPropSymbols(source)) {
31
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
32
- target[prop] = source[prop];
33
- }
34
- return target;
35
- };
36
- var __export = (target, all) => {
37
- for (var name in all)
38
- __defProp(target, name, { get: all[name], enumerable: true });
39
- };
40
- var __copyProps = (to, from, except, desc) => {
41
- if (from && typeof from === "object" || typeof from === "function") {
42
- for (let key of __getOwnPropNames(from))
43
- if (!__hasOwnProp.call(to, key) && key !== except)
44
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
45
- }
46
- return to;
47
- };
48
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
49
- // If the importer is in node compatibility mode or this is not an ESM
50
- // file that has been converted to a CommonJS file using a Babel-
51
- // compatible transform (i.e. "__esModule" has not been set), then set
52
- // "default" to the CommonJS "module.exports" for node compatibility.
53
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
54
- mod
55
- ));
56
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
57
- var __async = (__this, __arguments, generator) => {
58
- return new Promise((resolve, reject) => {
59
- var fulfilled = (value) => {
60
- try {
61
- step(generator.next(value));
62
- } catch (e) {
63
- reject(e);
64
- }
65
- };
66
- var rejected = (value) => {
67
- try {
68
- step(generator.throw(value));
69
- } catch (e) {
70
- reject(e);
71
- }
72
- };
73
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
74
- step((generator = generator.apply(__this, __arguments)).next());
75
- });
76
- };
1
+ "use strict";
77
2
 
78
- // src/form/BaseForm/BaseForm.tsx
79
- var BaseForm_exports = {};
80
- __export(BaseForm_exports, {
81
- BaseForm: () => BaseForm
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
82
7
  });
83
- module.exports = __toCommonJS(BaseForm_exports);
84
- var import_use_params = require("@umijs/use-params");
85
- var import_antd = require("antd");
86
- var import_classnames = __toESM(require("classnames"));
87
- var import_omit = __toESM(require("rc-util/lib/omit"));
88
- var import_get = __toESM(require("rc-util/lib/utils/get"));
89
- var import_set = __toESM(require("rc-util/lib/utils/set"));
90
- var import_warning = require("rc-util/lib/warning");
91
- var import_react = __toESM(require("react"));
92
- var import_provider = require("../../provider");
93
- var import_utils = require("../../utils");
94
- var import_List = require("../components/List");
95
- var import_FieldContext = __toESM(require("../FieldContext"));
96
- var import_helpers = require("../helpers");
97
- var import_EditOrReadOnlyContext = require("./EditOrReadOnlyContext");
98
- var import_Submitter = __toESM(require("./Submitter"));
99
- var genParams = (syncUrl, params, type) => {
8
+ exports.BaseForm = BaseForm;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
13
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
14
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+ var _util = require("@rc-component/util");
18
+ var _useParams = require("@umijs/use-params");
19
+ var _antd = require("antd");
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+ var _react = _interopRequireWildcard(require("react"));
22
+ var _provider = require("../../provider");
23
+ var _utils = require("../../utils");
24
+ var _List = require("../components/List");
25
+ var _FieldContext = _interopRequireDefault(require("../FieldContext"));
26
+ var _helpers = require("../helpers");
27
+ var _EditOrReadOnlyContext = require("./EditOrReadOnlyContext");
28
+ var _Submitter = _interopRequireDefault(require("./Submitter"));
29
+ var _jsxRuntime = require("react/jsx-runtime");
30
+ var _excluded = ["children", "contentRender", "submitter", "fieldProps", "formItemProps", "groupProps", "transformKey", "formRef", "onInit", "form", "loading", "formComponentType", "extraUrlParams", "syncToUrl", "onUrlSearchChange", "onReset", "omitNil", "isKeyPressSubmit", "autoFocusFirstInput", "grid", "rowProps", "colProps"],
31
+ _excluded2 = ["extraUrlParams", "syncToUrl", "isKeyPressSubmit", "syncToUrlAsImportant", "syncToInitialValues", "children", "contentRender", "submitter", "fieldProps", "proFieldProps", "formItemProps", "groupProps", "dateFormatter", "formRef", "onInit", "form", "formComponentType", "onReset", "grid", "rowProps", "colProps", "omitNil", "request", "params", "initialValues", "formKey", "readonly", "onLoadingChange", "loading"];
32
+ /* eslint-disable react-hooks/exhaustive-deps */
33
+ var noteOnce = _util.warning.noteOnce;
34
+
35
+ // Define ProFormInstance and ProFormRef
36
+
37
+ var genParams = function genParams(syncUrl, params, type) {
100
38
  if (syncUrl === true) {
101
39
  return params;
102
40
  }
103
- return (0, import_utils.runFunction)(syncUrl, params, type);
41
+ return (0, _utils.runFunction)(syncUrl, params, type);
104
42
  };
105
- var covertFormName = (name) => {
106
- if (!name)
107
- return name;
108
- if (Array.isArray(name))
109
- return name;
43
+
44
+ /**
45
+ * It takes a name path and converts it to an array.
46
+ * @param {NamePath} name - The name of the form.
47
+ * @returns string[]
48
+ *
49
+ * a-> [a]
50
+ * [a] -> [a]
51
+ */
52
+ var covertFormName = function covertFormName(name) {
53
+ if (!name) return name;
54
+ if (Array.isArray(name)) return name;
110
55
  return [name];
111
56
  };
112
57
  function BaseFormComponents(props) {
113
- var _b, _c;
114
- const _a = props, {
115
- children,
116
- contentRender,
117
- submitter,
118
- fieldProps,
119
- formItemProps,
120
- groupProps,
121
- transformKey,
122
- formRef: propsFormRef,
123
- onInit,
124
- form,
125
- loading,
126
- formComponentType,
127
- extraUrlParams = {},
128
- syncToUrl,
129
- onUrlSearchChange,
130
- onReset,
131
- omitNil = true,
132
- isKeyPressSubmit,
133
- autoFocusFirstInput = true,
134
- grid,
135
- rowProps,
136
- colProps
137
- } = _a, rest = __objRest(_a, [
138
- "children",
139
- "contentRender",
140
- "submitter",
141
- "fieldProps",
142
- "formItemProps",
143
- "groupProps",
144
- "transformKey",
145
- "formRef",
146
- "onInit",
147
- "form",
148
- "loading",
149
- "formComponentType",
150
- "extraUrlParams",
151
- "syncToUrl",
152
- "onUrlSearchChange",
153
- "onReset",
154
- "omitNil",
155
- "isKeyPressSubmit",
156
- "autoFocusFirstInput",
157
- "grid",
158
- "rowProps",
159
- "colProps"
160
- ]);
161
- const formInstance = import_antd.Form.useFormInstance();
162
- const { componentSize } = ((_c = (_b = import_antd.ConfigProvider) == null ? void 0 : _b.useConfig) == null ? void 0 : _c.call(_b)) || {
163
- componentSize: "middle"
164
- };
165
- const formRef = (0, import_react.useRef)(form || formInstance);
166
- const { RowWrapper } = (0, import_helpers.useGridHelpers)({ grid, rowProps });
167
- const getFormInstance = (0, import_utils.useRefFunction)(() => formInstance);
168
- const formatValues = (0, import_react.useMemo)(
169
- () => ({
58
+ var _ConfigProvider$useCo;
59
+ var children = props.children,
60
+ contentRender = props.contentRender,
61
+ submitter = props.submitter,
62
+ fieldProps = props.fieldProps,
63
+ formItemProps = props.formItemProps,
64
+ groupProps = props.groupProps,
65
+ transformKey = props.transformKey,
66
+ propsFormRef = props.formRef,
67
+ onInit = props.onInit,
68
+ form = props.form,
69
+ loading = props.loading,
70
+ formComponentType = props.formComponentType,
71
+ _props$extraUrlParams = props.extraUrlParams,
72
+ extraUrlParams = _props$extraUrlParams === void 0 ? {} : _props$extraUrlParams,
73
+ syncToUrl = props.syncToUrl,
74
+ onUrlSearchChange = props.onUrlSearchChange,
75
+ _onReset = props.onReset,
76
+ _props$omitNil = props.omitNil,
77
+ omitNil = _props$omitNil === void 0 ? true : _props$omitNil,
78
+ isKeyPressSubmit = props.isKeyPressSubmit,
79
+ _props$autoFocusFirst = props.autoFocusFirstInput,
80
+ autoFocusFirstInput = _props$autoFocusFirst === void 0 ? true : _props$autoFocusFirst,
81
+ grid = props.grid,
82
+ rowProps = props.rowProps,
83
+ colProps = props.colProps,
84
+ rest = (0, _objectWithoutProperties2.default)(props, _excluded);
85
+
86
+ /**
87
+ * 获取 form 实例
88
+ */
89
+ var formInstance = _antd.Form.useFormInstance();
90
+ var _ref = (_antd.ConfigProvider === null || _antd.ConfigProvider === void 0 || (_ConfigProvider$useCo = _antd.ConfigProvider.useConfig) === null || _ConfigProvider$useCo === void 0 ? void 0 : _ConfigProvider$useCo.call(_antd.ConfigProvider)) || {
91
+ componentSize: 'middle'
92
+ },
93
+ componentSize = _ref.componentSize;
94
+
95
+ /** 同步 url 上的参数 */
96
+ var formRef = (0, _react.useRef)(form || formInstance);
97
+
98
+ /**
99
+ * 获取布局
100
+ */
101
+ var _useGridHelpers = (0, _helpers.useGridHelpers)({
102
+ grid: grid,
103
+ rowProps: rowProps
104
+ }),
105
+ RowWrapper = _useGridHelpers.RowWrapper;
106
+ var getFormInstance = (0, _utils.useRefFunction)(function () {
107
+ return formInstance;
108
+ });
109
+ var formatValues = (0, _react.useMemo)(function () {
110
+ return {
170
111
  /**
171
112
  * 获取被 ProForm 格式化后的所有数据
172
113
  * @param allData boolean
@@ -175,16 +116,13 @@ function BaseFormComponents(props) {
175
116
  *
176
117
  * @example getFieldsFormatValue(true) ->返回所有数据,即使没有被 form 托管的
177
118
  */
178
- getFieldsFormatValue: (allData, omitNilParam) => {
179
- const formInstance2 = getFormInstance();
180
- if (!formInstance2) {
119
+ getFieldsFormatValue: function getFieldsFormatValue(allData, omitNilParam) {
120
+ var formInstance = getFormInstance();
121
+ if (!formInstance) {
181
122
  return {};
182
123
  }
183
- const values = formInstance2.getFieldsValue(allData);
184
- return transformKey(
185
- values,
186
- omitNilParam !== void 0 ? omitNilParam : omitNil
187
- );
124
+ var values = formInstance.getFieldsValue(allData);
125
+ return transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
188
126
  },
189
127
  /**
190
128
  * 获取被 ProForm 格式化后的单个数据
@@ -195,26 +133,26 @@ function BaseFormComponents(props) {
195
133
  * @example {a:{b:value}} -> getFieldFormatValue(['a', 'b']) -> value
196
134
  */
197
135
  /** 获取格式化之后的单个数据 */
198
- getFieldFormatValue: (paramsNameList = [], omitNilParam) => {
199
- const formInstance2 = getFormInstance();
200
- if (!formInstance2) {
201
- return void 0;
136
+ getFieldFormatValue: function getFieldFormatValue() {
137
+ var paramsNameList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
138
+ var omitNilParam = arguments.length > 1 ? arguments[1] : undefined;
139
+ var formInstance = getFormInstance();
140
+ if (!formInstance) {
141
+ return undefined;
202
142
  }
203
- const nameList = covertFormName(paramsNameList);
204
- if (!nameList)
205
- throw new Error("nameList is require");
206
- const value = formInstance2.getFieldValue(nameList);
207
- const obj = nameList ? (0, import_set.default)({}, nameList, value) : value;
208
- const newNameList = [...nameList];
143
+ var nameList = covertFormName(paramsNameList);
144
+ if (!nameList) throw new Error('nameList is require');
145
+ var value = formInstance.getFieldValue(nameList);
146
+ var obj = nameList ? (0, _util.set)({}, nameList, value) : value;
147
+ //transformKey会将keys重新和nameList拼接,所以这里要将nameList的首个元素弹出
148
+ var newNameList = (0, _toConsumableArray2.default)(nameList);
209
149
  newNameList.shift();
210
- const transformed = transformKey(
211
- obj,
212
- omitNilParam !== void 0 ? omitNilParam : omitNil,
213
- newNameList
214
- );
215
- const result = (0, import_get.default)(transformed, nameList);
216
- if (result && typeof result === "object" && !Array.isArray(result)) {
217
- const objValue = Object.values(result)[0];
150
+ var transformed = transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, newNameList);
151
+ var result = (0, _util.get)(transformed, nameList);
152
+ // 如果结果是对象,返回对象的值
153
+ if (result && (0, _typeof2.default)(result) === 'object' && !Array.isArray(result)) {
154
+ var objValue = Object.values(result)[0];
155
+ // 如果对象的值是数组,返回数组
218
156
  if (Array.isArray(objValue)) {
219
157
  return objValue;
220
158
  }
@@ -231,19 +169,15 @@ function BaseFormComponents(props) {
231
169
  * @example {a:{b:value}} -> getFieldFormatValueObject(['a', 'b']) -> {a:{b:value}}
232
170
  */
233
171
  /** 获取格式化之后的单个数据 */
234
- getFieldFormatValueObject: (paramsNameList, omitNilParam) => {
235
- const formInstance2 = getFormInstance();
236
- if (!formInstance2) {
172
+ getFieldFormatValueObject: function getFieldFormatValueObject(paramsNameList, omitNilParam) {
173
+ var formInstance = getFormInstance();
174
+ if (!formInstance) {
237
175
  return {};
238
176
  }
239
- const nameList = covertFormName(paramsNameList);
240
- const value = formInstance2.getFieldValue(nameList);
241
- const obj = nameList ? (0, import_set.default)({}, nameList, value) : value;
242
- return transformKey(
243
- obj,
244
- omitNilParam !== void 0 ? omitNilParam : omitNil,
245
- nameList
246
- );
177
+ var nameList = covertFormName(paramsNameList);
178
+ var value = formInstance.getFieldValue(nameList);
179
+ var obj = nameList ? (0, _util.set)({}, nameList, value) : value;
180
+ return transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, nameList);
247
181
  },
248
182
  /**
249
183
  /**
@@ -254,134 +188,137 @@ function BaseFormComponents(props) {
254
188
  *
255
189
  * @example validateFieldsReturnFormatValue -> {a:{b:value}}
256
190
  */
257
- validateFieldsReturnFormatValue: (nameList, omitNilParam) => __async(this, null, function* () {
258
- const formInstance2 = getFormInstance();
259
- if (!formInstance2) {
260
- return {};
191
+ validateFieldsReturnFormatValue: function () {
192
+ var _validateFieldsReturnFormatValue = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(nameList, omitNilParam) {
193
+ var formInstance, values, transformedKey;
194
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
195
+ while (1) switch (_context.prev = _context.next) {
196
+ case 0:
197
+ formInstance = getFormInstance();
198
+ if (formInstance) {
199
+ _context.next = 3;
200
+ break;
201
+ }
202
+ return _context.abrupt("return", {});
203
+ case 3:
204
+ if (!(!Array.isArray(nameList) && nameList)) {
205
+ _context.next = 5;
206
+ break;
207
+ }
208
+ throw new Error('nameList must be array');
209
+ case 5:
210
+ _context.next = 7;
211
+ return formInstance.validateFields(nameList);
212
+ case 7:
213
+ values = _context.sent;
214
+ transformedKey = transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
215
+ return _context.abrupt("return", transformedKey ? transformedKey : {});
216
+ case 10:
217
+ case "end":
218
+ return _context.stop();
219
+ }
220
+ }, _callee);
221
+ }));
222
+ function validateFieldsReturnFormatValue(_x, _x2) {
223
+ return _validateFieldsReturnFormatValue.apply(this, arguments);
261
224
  }
262
- if (!Array.isArray(nameList) && nameList)
263
- throw new Error("nameList must be array");
264
- const values = yield formInstance2.validateFields(nameList);
265
- const transformedKey = transformKey(
266
- values,
267
- omitNilParam !== void 0 ? omitNilParam : omitNil
268
- );
269
- return transformedKey ? transformedKey : {};
270
- })
271
- }),
272
- [omitNil, transformKey, getFormInstance]
273
- );
274
- const items = (0, import_react.useMemo)(() => {
275
- return import_react.default.Children.toArray(children).map((item, index) => {
276
- if (index === 0 && import_react.default.isValidElement(item) && autoFocusFirstInput) {
277
- return import_react.default.cloneElement(item, __spreadProps(__spreadValues({}, item.props), {
225
+ return validateFieldsReturnFormatValue;
226
+ }()
227
+ };
228
+ }, [omitNil, transformKey, getFormInstance]);
229
+ var items = (0, _react.useMemo)(function () {
230
+ return _react.default.Children.toArray(children).map(function (item, index) {
231
+ if (index === 0 && /*#__PURE__*/_react.default.isValidElement(item) && autoFocusFirstInput) {
232
+ return /*#__PURE__*/_react.default.cloneElement(item, (0, _objectSpread4.default)((0, _objectSpread4.default)({}, item.props), {}, {
278
233
  autoFocus: autoFocusFirstInput
279
234
  }));
280
235
  }
281
236
  return item;
282
237
  });
283
238
  }, [autoFocusFirstInput, children]);
284
- const submitterProps = (0, import_react.useMemo)(
285
- () => typeof submitter === "boolean" || !submitter ? {} : submitter,
286
- [submitter]
287
- );
288
- const submitterNode = (0, import_react.useMemo)(() => {
289
- if (submitter === false)
290
- return void 0;
291
- return /* @__PURE__ */ import_react.default.createElement(
292
- import_Submitter.default,
293
- __spreadProps(__spreadValues({
294
- key: "submitter"
295
- }, submitterProps), {
296
- onReset: () => {
297
- var _a2, _b2, _c2;
298
- const finalValues = transformKey(
299
- (_a2 = formRef.current) == null ? void 0 : _a2.getFieldsValue(),
300
- omitNil
301
- );
302
- (_b2 = submitterProps == null ? void 0 : submitterProps.onReset) == null ? void 0 : _b2.call(submitterProps, finalValues);
303
- onReset == null ? void 0 : onReset(finalValues);
304
- if (syncToUrl) {
305
- const params = Object.keys(
306
- transformKey((_c2 = formRef.current) == null ? void 0 : _c2.getFieldsValue(), false)
307
- ).reduce((pre, next) => {
308
- return __spreadProps(__spreadValues({}, pre), {
309
- [next]: finalValues[next] || void 0
310
- });
311
- }, extraUrlParams);
312
- onUrlSearchChange(genParams(syncToUrl, params || {}, "set"));
313
- }
314
- },
315
- submitButtonProps: __spreadValues({
316
- loading
317
- }, submitterProps.submitButtonProps)
318
- })
319
- );
320
- }, [
321
- submitter,
322
- submitterProps,
323
- loading,
324
- transformKey,
325
- omitNil,
326
- onReset,
327
- syncToUrl,
328
- extraUrlParams,
329
- onUrlSearchChange
330
- ]);
331
- const content = (0, import_react.useMemo)(() => {
332
- const wrapItems = grid ? /* @__PURE__ */ import_react.default.createElement(RowWrapper, null, items) : items;
239
+
240
+ /** 计算 props 的对象 */
241
+ var submitterProps = (0, _react.useMemo)(function () {
242
+ return typeof submitter === 'boolean' || !submitter ? {} : submitter;
243
+ }, [submitter]);
244
+
245
+ /** 渲染提交按钮与重置按钮 */
246
+ var submitterNode = (0, _react.useMemo)(function () {
247
+ if (submitter === false) return undefined;
248
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Submitter.default, (0, _objectSpread4.default)((0, _objectSpread4.default)({}, submitterProps), {}, {
249
+ onReset: function onReset() {
250
+ var _formRef$current, _submitterProps$onRes;
251
+ var finalValues = transformKey((_formRef$current = formRef.current) === null || _formRef$current === void 0 ? void 0 : _formRef$current.getFieldsValue(), omitNil);
252
+ submitterProps === null || submitterProps === void 0 || (_submitterProps$onRes = submitterProps.onReset) === null || _submitterProps$onRes === void 0 || _submitterProps$onRes.call(submitterProps, finalValues);
253
+ _onReset === null || _onReset === void 0 || _onReset(finalValues);
254
+ // 如果 syncToUrl,清空一下数据
255
+ if (syncToUrl) {
256
+ var _formRef$current2;
257
+ // 把没有的值设置为未定义可以删掉 url 的参数
258
+ var params = Object.keys(transformKey((_formRef$current2 = formRef.current) === null || _formRef$current2 === void 0 ? void 0 : _formRef$current2.getFieldsValue(), false)).reduce(function (pre, next) {
259
+ return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, pre), {}, (0, _defineProperty2.default)({}, next, finalValues[next] || undefined));
260
+ }, extraUrlParams);
261
+
262
+ /** 在同步到 url 上时对参数进行转化 */
263
+ onUrlSearchChange(genParams(syncToUrl, params || {}, 'set'));
264
+ }
265
+ },
266
+ submitButtonProps: (0, _objectSpread4.default)({
267
+ loading: loading
268
+ }, submitterProps.submitButtonProps)
269
+ }), "submitter");
270
+ }, [submitter, submitterProps, loading, transformKey, omitNil, _onReset, syncToUrl, extraUrlParams, onUrlSearchChange]);
271
+ var content = (0, _react.useMemo)(function () {
272
+ var wrapItems = grid ? /*#__PURE__*/(0, _jsxRuntime.jsx)(RowWrapper, {
273
+ children: items
274
+ }) : items;
333
275
  if (contentRender) {
334
276
  return contentRender(wrapItems, submitterNode, formRef.current);
335
277
  }
336
278
  return wrapItems;
337
279
  }, [grid, RowWrapper, items, contentRender, submitterNode]);
338
- const preInitialValues = (0, import_utils.usePrevious)(props.initialValues);
339
- (0, import_react.useEffect)(() => {
340
- if (syncToUrl || !props.initialValues || !preInitialValues || rest.request)
341
- return;
342
- const isEqual = (0, import_utils.isDeepEqualReact)(props.initialValues, preInitialValues);
343
- (0, import_warning.noteOnce)(
344
- isEqual,
345
- `initialValues 只在 form 初始化时生效,如果你需要异步加载推荐使用 request,或者 initialValues ? <Form/> : null `
346
- );
347
- (0, import_warning.noteOnce)(
348
- isEqual,
349
- `The initialValues only take effect when the form is initialized, if you need to load asynchronously recommended request, or the initialValues ? <Form/> : null `
350
- );
280
+ var preInitialValues = (0, _utils.usePrevious)(props.initialValues);
281
+
282
+ // 提示一个 initialValues ,问的人实在是太多了
283
+ (0, _react.useEffect)(function () {
284
+ if (syncToUrl || !props.initialValues || !preInitialValues || rest.request) return;
285
+ var isEqual = (0, _utils.isDeepEqualReact)(props.initialValues, preInitialValues);
286
+ noteOnce(isEqual, "initialValues \u53EA\u5728 form \u521D\u59CB\u5316\u65F6\u751F\u6548\uFF0C\u5982\u679C\u4F60\u9700\u8981\u5F02\u6B65\u52A0\u8F7D\u63A8\u8350\u4F7F\u7528 request\uFF0C\u6216\u8005 initialValues ? <Form/> : null ");
287
+ noteOnce(isEqual, "The initialValues only take effect when the form is initialized, if you need to load asynchronously recommended request, or the initialValues ? <Form/> : null ");
288
+ // eslint-disable-next-line react-hooks/exhaustive-deps
351
289
  }, [props.initialValues]);
352
- (0, import_react.useImperativeHandle)(propsFormRef, () => {
353
- return __spreadProps(__spreadValues({}, formRef.current), {
354
- getFieldsFormatValue: (allData, omitNilParam) => {
355
- const formInstance2 = formRef.current;
356
- if (!formInstance2) {
290
+
291
+ // 初始化给一个默认的 form
292
+ (0, _react.useImperativeHandle)(propsFormRef, function () {
293
+ return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, formRef.current), {}, {
294
+ getFieldsFormatValue: function getFieldsFormatValue(allData, omitNilParam) {
295
+ var formInstance = formRef.current;
296
+ if (!formInstance) {
357
297
  return {};
358
298
  }
359
- const values = formInstance2.getFieldsValue(allData);
360
- return transformKey(
361
- values,
362
- omitNilParam !== void 0 ? omitNilParam : omitNil
363
- );
299
+ var values = formInstance.getFieldsValue(allData);
300
+ return transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
364
301
  },
365
- getFieldFormatValue: (paramsNameList = [], omitNilParam) => {
366
- const formInstance2 = formRef.current;
367
- if (!formInstance2) {
368
- return void 0;
302
+ getFieldFormatValue: function getFieldFormatValue() {
303
+ var paramsNameList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
304
+ var omitNilParam = arguments.length > 1 ? arguments[1] : undefined;
305
+ var formInstance = formRef.current;
306
+ if (!formInstance) {
307
+ return undefined;
369
308
  }
370
- const nameList = covertFormName(paramsNameList);
371
- if (!nameList)
372
- throw new Error("nameList is require");
373
- const value = formInstance2.getFieldValue(nameList);
374
- const obj = nameList ? (0, import_set.default)({}, nameList, value) : value;
375
- const newNameList = [...nameList];
309
+ var nameList = covertFormName(paramsNameList);
310
+ if (!nameList) throw new Error('nameList is require');
311
+ var value = formInstance.getFieldValue(nameList);
312
+ var obj = nameList ? (0, _util.set)({}, nameList, value) : value;
313
+ //transformKey会将keys重新和nameList拼接,所以这里要将nameList的首个元素弹出
314
+ var newNameList = (0, _toConsumableArray2.default)(nameList);
376
315
  newNameList.shift();
377
- const transformed = transformKey(
378
- obj,
379
- omitNilParam !== void 0 ? omitNilParam : omitNil,
380
- newNameList
381
- );
382
- const result = (0, import_get.default)(transformed, nameList);
383
- if (result && typeof result === "object" && !Array.isArray(result)) {
384
- const objValue = Object.values(result)[0];
316
+ var transformed = transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, newNameList);
317
+ var result = (0, _util.get)(transformed, nameList);
318
+ // 如果结果是对象,返回对象的值
319
+ if (result && (0, _typeof2.default)(result) === 'object' && !Array.isArray(result)) {
320
+ var objValue = Object.values(result)[0];
321
+ // 如果对象的值是数组,返回数组
385
322
  if (Array.isArray(objValue)) {
386
323
  return objValue;
387
324
  }
@@ -389,372 +326,395 @@ function BaseFormComponents(props) {
389
326
  }
390
327
  return result;
391
328
  },
392
- getFieldFormatValueObject: (paramsNameList, omitNilParam) => {
393
- const formInstance2 = formRef.current;
394
- if (!formInstance2) {
329
+ getFieldFormatValueObject: function getFieldFormatValueObject(paramsNameList, omitNilParam) {
330
+ var formInstance = formRef.current;
331
+ if (!formInstance) {
395
332
  return {};
396
333
  }
397
- const nameList = covertFormName(paramsNameList);
398
- const value = formInstance2.getFieldValue(nameList);
399
- const obj = nameList ? (0, import_set.default)({}, nameList, value) : value;
400
- return transformKey(
401
- obj,
402
- omitNilParam !== void 0 ? omitNilParam : omitNil,
403
- nameList
404
- );
334
+ var nameList = covertFormName(paramsNameList);
335
+ var value = formInstance.getFieldValue(nameList);
336
+ var obj = nameList ? (0, _util.set)({}, nameList, value) : value;
337
+ return transformKey(obj, omitNilParam !== undefined ? omitNilParam : omitNil, nameList);
405
338
  },
406
- validateFieldsReturnFormatValue: (nameList, omitNilParam) => __async(this, null, function* () {
407
- const formInstance2 = formRef.current;
408
- if (!formInstance2) {
409
- return {};
339
+ validateFieldsReturnFormatValue: function () {
340
+ var _validateFieldsReturnFormatValue2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(nameList, omitNilParam) {
341
+ var formInstance, values, transformedKey;
342
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
343
+ while (1) switch (_context2.prev = _context2.next) {
344
+ case 0:
345
+ formInstance = formRef.current;
346
+ if (formInstance) {
347
+ _context2.next = 3;
348
+ break;
349
+ }
350
+ return _context2.abrupt("return", {});
351
+ case 3:
352
+ if (!(!Array.isArray(nameList) && nameList)) {
353
+ _context2.next = 5;
354
+ break;
355
+ }
356
+ throw new Error('nameList must be array');
357
+ case 5:
358
+ _context2.next = 7;
359
+ return formInstance.validateFields(nameList);
360
+ case 7:
361
+ values = _context2.sent;
362
+ transformedKey = transformKey(values, omitNilParam !== undefined ? omitNilParam : omitNil);
363
+ return _context2.abrupt("return", transformedKey ? transformedKey : {});
364
+ case 10:
365
+ case "end":
366
+ return _context2.stop();
367
+ }
368
+ }, _callee2);
369
+ }));
370
+ function validateFieldsReturnFormatValue(_x3, _x4) {
371
+ return _validateFieldsReturnFormatValue2.apply(this, arguments);
410
372
  }
411
- if (!Array.isArray(nameList) && nameList)
412
- throw new Error("nameList must be array");
413
- const values = yield formInstance2.validateFields(nameList);
414
- const transformedKey = transformKey(
415
- values,
416
- omitNilParam !== void 0 ? omitNilParam : omitNil
417
- );
418
- return transformedKey ? transformedKey : {};
419
- })
373
+ return validateFieldsReturnFormatValue;
374
+ }()
420
375
  });
421
376
  }, [omitNil, transformKey, formRef.current]);
422
- (0, import_react.useEffect)(() => {
423
- var _a2, _b2;
424
- const finalValues = transformKey(
425
- (_b2 = (_a2 = formRef.current) == null ? void 0 : _a2.getFieldsValue) == null ? void 0 : _b2.call(_a2, true),
426
- omitNil
427
- );
428
- onInit == null ? void 0 : onInit(finalValues, __spreadValues(__spreadValues({}, formRef.current), formatValues));
377
+ (0, _react.useEffect)(function () {
378
+ var _formRef$current3, _formRef$current3$get;
379
+ var finalValues = transformKey((_formRef$current3 = formRef.current) === null || _formRef$current3 === void 0 || (_formRef$current3$get = _formRef$current3.getFieldsValue) === null || _formRef$current3$get === void 0 ? void 0 : _formRef$current3$get.call(_formRef$current3, true), omitNil);
380
+ onInit === null || onInit === void 0 || onInit(finalValues, (0, _objectSpread4.default)((0, _objectSpread4.default)({}, formRef.current), formatValues));
429
381
  }, []);
430
- return /* @__PURE__ */ import_react.default.createElement(
431
- import_utils.ProFormContext.Provider,
432
- {
433
- value: __spreadProps(__spreadValues({}, formatValues), {
434
- formRef
382
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_utils.ProFormContext.Provider, {
383
+ value: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, formatValues), {}, {
384
+ formRef: formRef
385
+ }),
386
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.ConfigProvider, {
387
+ componentSize: rest.size || componentSize,
388
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_helpers.GridContext.Provider, {
389
+ value: {
390
+ grid: grid,
391
+ colProps: colProps
392
+ },
393
+ children: [rest.component !== false && /*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
394
+ type: "text",
395
+ style: {
396
+ display: 'none'
397
+ }
398
+ }), content]
435
399
  })
436
- },
437
- /* @__PURE__ */ import_react.default.createElement(import_antd.ConfigProvider, { componentSize: rest.size || componentSize }, /* @__PURE__ */ import_react.default.createElement(import_helpers.GridContext.Provider, { value: { grid, colProps } }, rest.component !== false && /* @__PURE__ */ import_react.default.createElement(
438
- "input",
439
- {
440
- type: "text",
441
- style: {
442
- display: "none"
443
- }
444
- }
445
- ), content))
446
- );
400
+ })
401
+ });
447
402
  }
403
+
404
+ /** 自动的formKey 防止重复 */
448
405
  var requestFormCacheId = 0;
449
406
  function BaseForm(props) {
450
- const _a = props, {
451
- extraUrlParams = {},
452
- syncToUrl,
453
- isKeyPressSubmit,
454
- syncToUrlAsImportant = false,
455
- syncToInitialValues = true,
456
- children,
457
- contentRender,
458
- submitter,
459
- fieldProps,
460
- proFieldProps,
461
- formItemProps,
462
- groupProps,
463
- dateFormatter = "string",
464
- formRef: propsFormRef,
465
- onInit,
466
- form,
467
- formComponentType,
468
- onReset,
469
- grid,
470
- rowProps,
471
- colProps,
472
- omitNil = true,
473
- request,
474
- params,
475
- initialValues,
476
- formKey = requestFormCacheId,
477
- readonly,
478
- onLoadingChange,
479
- loading: propsLoading
480
- } = _a, propRest = __objRest(_a, [
481
- "extraUrlParams",
482
- "syncToUrl",
483
- "isKeyPressSubmit",
484
- "syncToUrlAsImportant",
485
- "syncToInitialValues",
486
- "children",
487
- "contentRender",
488
- "submitter",
489
- "fieldProps",
490
- "proFieldProps",
491
- "formItemProps",
492
- "groupProps",
493
- "dateFormatter",
494
- "formRef",
495
- "onInit",
496
- "form",
497
- "formComponentType",
498
- "onReset",
499
- "grid",
500
- "rowProps",
501
- "colProps",
502
- "omitNil",
503
- "request",
504
- "params",
505
- "initialValues",
506
- "formKey",
507
- "readonly",
508
- "onLoadingChange",
509
- "loading"
510
- ]);
511
- const formRef = (0, import_react.useRef)({});
512
- const [loading, setLoading] = (0, import_utils.useMountMergeState)(false, {
513
- onChange: onLoadingChange,
514
- value: propsLoading
515
- });
516
- const [urlSearch, setUrlSearch] = (0, import_use_params.useUrlSearchParams)(
517
- {},
518
- { disabled: !syncToUrl }
519
- );
520
- const curFormKey = (0, import_react.useRef)((0, import_utils.nanoid)());
521
- (0, import_react.useEffect)(() => {
407
+ var _props$extraUrlParams2 = props.extraUrlParams,
408
+ extraUrlParams = _props$extraUrlParams2 === void 0 ? {} : _props$extraUrlParams2,
409
+ syncToUrl = props.syncToUrl,
410
+ isKeyPressSubmit = props.isKeyPressSubmit,
411
+ _props$syncToUrlAsImp = props.syncToUrlAsImportant,
412
+ syncToUrlAsImportant = _props$syncToUrlAsImp === void 0 ? false : _props$syncToUrlAsImp,
413
+ _props$syncToInitialV = props.syncToInitialValues,
414
+ syncToInitialValues = _props$syncToInitialV === void 0 ? true : _props$syncToInitialV,
415
+ children = props.children,
416
+ contentRender = props.contentRender,
417
+ submitter = props.submitter,
418
+ fieldProps = props.fieldProps,
419
+ proFieldProps = props.proFieldProps,
420
+ formItemProps = props.formItemProps,
421
+ groupProps = props.groupProps,
422
+ _props$dateFormatter = props.dateFormatter,
423
+ dateFormatter = _props$dateFormatter === void 0 ? 'string' : _props$dateFormatter,
424
+ propsFormRef = props.formRef,
425
+ onInit = props.onInit,
426
+ form = props.form,
427
+ formComponentType = props.formComponentType,
428
+ onReset = props.onReset,
429
+ grid = props.grid,
430
+ rowProps = props.rowProps,
431
+ colProps = props.colProps,
432
+ _props$omitNil2 = props.omitNil,
433
+ omitNil = _props$omitNil2 === void 0 ? true : _props$omitNil2,
434
+ request = props.request,
435
+ params = props.params,
436
+ initialValues = props.initialValues,
437
+ _props$formKey = props.formKey,
438
+ formKey = _props$formKey === void 0 ? requestFormCacheId : _props$formKey,
439
+ readonly = props.readonly,
440
+ onLoadingChange = props.onLoadingChange,
441
+ propsLoading = props.loading,
442
+ propRest = (0, _objectWithoutProperties2.default)(props, _excluded2);
443
+ var formRef = (0, _react.useRef)({});
444
+ var _useMountMergeState = (0, _utils.useMountMergeState)(false, {
445
+ onChange: onLoadingChange,
446
+ value: propsLoading
447
+ }),
448
+ _useMountMergeState2 = (0, _slicedToArray2.default)(_useMountMergeState, 2),
449
+ loading = _useMountMergeState2[0],
450
+ setLoading = _useMountMergeState2[1];
451
+ var _useUrlSearchParams = (0, _useParams.useUrlSearchParams)({}, {
452
+ disabled: !syncToUrl
453
+ }),
454
+ _useUrlSearchParams2 = (0, _slicedToArray2.default)(_useUrlSearchParams, 2),
455
+ urlSearch = _useUrlSearchParams2[0],
456
+ setUrlSearch = _useUrlSearchParams2[1];
457
+ var curFormKey = (0, _react.useRef)((0, _utils.nanoid)());
458
+ (0, _react.useEffect)(function () {
522
459
  requestFormCacheId += 0;
523
460
  }, []);
524
- const [initialData, initialDataLoading] = (0, import_utils.useFetchData)({
525
- request,
526
- params,
527
- proFieldKey: formKey
528
- });
529
- const { getPrefixCls } = (0, import_react.useContext)(import_antd.ConfigProvider.ConfigContext);
530
- const prefixCls = getPrefixCls("pro-form");
531
- const { wrapSSR, hashId } = (0, import_utils.useStyle)("ProForm", (token) => {
532
- return {
533
- [`.${prefixCls}`]: {
534
- [`> div:not(${token.proComponentsCls}-form-light-filter)`]: {
535
- ".pro-field": {
536
- maxWidth: "100%",
537
- "@media screen and (max-width: 575px)": {
538
- // 减少了 form 的 padding
539
- maxWidth: "calc(93vw - 48px)"
540
- },
541
- // 适用于短数字,短文本或者选项
542
- "&-xs": {
543
- width: 104
544
- },
545
- "&-s": {
546
- width: 216
547
- },
548
- // 适用于较短字段录入、如姓名、电话、ID 等。
549
- "&-sm": {
550
- width: 216
551
- },
552
- "&-m": {
553
- width: 328
554
- },
555
- // 标准宽度,适用于大部分字段长度
556
- "&-md": {
557
- width: 328
558
- },
559
- "&-l": {
560
- width: 440
561
- },
562
- // 适用于较长字段录入,如长网址、标签组、文件路径等。
563
- "&-lg": {
564
- width: 440
565
- },
566
- // 适用于长文本录入,如长链接、描述、备注等,通常搭配自适应多行输入框或定高文本域使用。
567
- "&-xl": {
568
- width: 552
569
- }
461
+ var _useFetchData = (0, _utils.useFetchData)({
462
+ request: request,
463
+ params: params,
464
+ proFieldKey: formKey
465
+ }),
466
+ _useFetchData2 = (0, _slicedToArray2.default)(_useFetchData, 2),
467
+ initialData = _useFetchData2[0],
468
+ initialDataLoading = _useFetchData2[1];
469
+ var _useContext = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext),
470
+ getPrefixCls = _useContext.getPrefixCls;
471
+ var prefixCls = getPrefixCls('pro-form');
472
+ // css
473
+ var _useStyle = (0, _utils.useStyle)('ProForm', function (token) {
474
+ return (0, _defineProperty2.default)({}, ".".concat(prefixCls), (0, _defineProperty2.default)({}, "> div:not(".concat(token.proComponentsCls, "-form-light-filter)"), {
475
+ '.pro-field': {
476
+ maxWidth: '100%',
477
+ '@media screen and (max-width: 575px)': {
478
+ // 减少了 form 的 padding
479
+ maxWidth: 'calc(93vw - 48px)'
480
+ },
481
+ // 适用于短数字,短文本或者选项
482
+ '&-xs': {
483
+ width: 104
484
+ },
485
+ '&-s': {
486
+ width: 216
487
+ },
488
+ // 适用于较短字段录入、如姓名、电话、ID 等。
489
+ '&-sm': {
490
+ width: 216
491
+ },
492
+ '&-m': {
493
+ width: 328
494
+ },
495
+ // 标准宽度,适用于大部分字段长度
496
+ '&-md': {
497
+ width: 328
498
+ },
499
+ '&-l': {
500
+ width: 440
501
+ },
502
+ // 适用于较长字段录入,如长网址、标签组、文件路径等。
503
+ '&-lg': {
504
+ width: 440
505
+ },
506
+ // 适用于长文本录入,如长链接、描述、备注等,通常搭配自适应多行输入框或定高文本域使用。
507
+ '&-xl': {
508
+ width: 552
570
509
  }
571
510
  }
511
+ }));
512
+ }),
513
+ wrapSSR = _useStyle.wrapSSR,
514
+ hashId = _useStyle.hashId;
515
+
516
+ // 如果为 false,不需要触发设置进去
517
+ var _useState = (0, _react.useState)(function () {
518
+ if (!syncToUrl) {
519
+ return {};
572
520
  }
573
- };
574
- });
575
- const [urlParamsMergeInitialValues, setUrlParamsMergeInitialValues] = (0, import_react.useState)(() => {
576
- if (!syncToUrl) {
577
- return {};
521
+ return genParams(syncToUrl, urlSearch, 'get');
522
+ }),
523
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
524
+ urlParamsMergeInitialValues = _useState2[0],
525
+ setUrlParamsMergeInitialValues = _useState2[1];
526
+
527
+ /** 保存 transformKeyRef,用于对表单key transform */
528
+ var transformKeyRef = (0, _react.useRef)({});
529
+ var fieldsValueType = (0, _react.useRef)({});
530
+
531
+ /** 使用 callback 的类型 */
532
+ var transformKey = (0, _utils.useRefFunction)(function (values, paramsOmitNil, parentKey) {
533
+ if (!values || (0, _typeof2.default)(values) !== 'object') {
534
+ return values;
578
535
  }
579
- return genParams(syncToUrl, urlSearch, "get");
536
+ return (0, _utils.transformKeySubmitValue)((0, _utils.conversionMomentValue)(values, dateFormatter, fieldsValueType.current, paramsOmitNil, parentKey), transformKeyRef.current);
580
537
  });
581
- const transformKeyRef = (0, import_react.useRef)({});
582
- const fieldsValueType = (0, import_react.useRef)({});
583
- const transformKey = (0, import_utils.useRefFunction)(
584
- (values, paramsOmitNil, parentKey) => {
585
- if (!values || typeof values !== "object") {
586
- return values;
587
- }
588
- return (0, import_utils.transformKeySubmitValue)(
589
- (0, import_utils.conversionMomentValue)(
590
- values,
591
- dateFormatter,
592
- fieldsValueType.current,
593
- paramsOmitNil,
594
- parentKey
595
- ),
596
- transformKeyRef.current
597
- );
598
- }
599
- );
600
- (0, import_react.useEffect)(() => {
601
- if (syncToInitialValues)
602
- return;
538
+ (0, _react.useEffect)(function () {
539
+ if (syncToInitialValues) return;
603
540
  setUrlParamsMergeInitialValues({});
604
541
  }, [syncToInitialValues]);
605
- const getGenParams = (0, import_utils.useRefFunction)(() => {
606
- return __spreadValues(__spreadValues({}, urlSearch), extraUrlParams);
542
+ var getGenParams = (0, _utils.useRefFunction)(function () {
543
+ return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, urlSearch), extraUrlParams);
607
544
  });
608
- (0, import_react.useEffect)(() => {
609
- if (!syncToUrl)
610
- return;
611
- setUrlSearch(genParams(syncToUrl, getGenParams(), "set"));
545
+ (0, _react.useEffect)(function () {
546
+ if (!syncToUrl) return;
547
+ setUrlSearch(genParams(syncToUrl, getGenParams(), 'set'));
548
+ // eslint-disable-next-line react-hooks/exhaustive-deps
612
549
  }, [extraUrlParams, getGenParams, syncToUrl]);
613
- const getPopupContainer = (0, import_react.useMemo)(() => {
614
- if (typeof window === "undefined")
615
- return void 0;
616
- if (formComponentType && ["DrawerForm"].includes(formComponentType)) {
617
- return (e) => e.parentNode || document.body;
550
+ var getPopupContainer = (0, _react.useMemo)(function () {
551
+ if (typeof window === 'undefined') return undefined;
552
+ // 如果在 drawerForm 和 modalForm 里就渲染dom到父节点里
553
+ // modalForm 可能高度太小不适合
554
+ if (formComponentType && ['DrawerForm'].includes(formComponentType)) {
555
+ return function (e) {
556
+ return e.parentNode || document.body;
557
+ };
618
558
  }
619
- return void 0;
559
+ return undefined;
620
560
  }, [formComponentType]);
621
- const onFinish = (0, import_utils.useRefFunction)(() => __async(this, null, function* () {
622
- var _a2, _b, _c, _d;
623
- if (!propRest.onFinish)
624
- return;
625
- if (loading)
626
- return;
627
- try {
628
- setLoading(true);
629
- const finalValues = ((_b = (_a2 = formRef == null ? void 0 : formRef.current) == null ? void 0 : _a2.getFieldsFormatValue) == null ? void 0 : _b.call(_a2)) || {};
630
- const response = propRest.onFinish(finalValues);
631
- if (response && typeof response === "object" && typeof response.then === "function") {
632
- try {
633
- yield response;
634
- } catch (error) {
561
+ var onFinish = (0, _utils.useRefFunction)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee3() {
562
+ var _formRef$current4, _formRef$current4$get, finalValues, response, _formRef$current5, _formRef$current5$get, syncToUrlParams;
563
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee3$(_context3) {
564
+ while (1) switch (_context3.prev = _context3.next) {
565
+ case 0:
566
+ if (propRest.onFinish) {
567
+ _context3.next = 2;
568
+ break;
569
+ }
570
+ return _context3.abrupt("return");
571
+ case 2:
572
+ if (!loading) {
573
+ _context3.next = 4;
574
+ break;
575
+ }
576
+ return _context3.abrupt("return");
577
+ case 4:
578
+ _context3.prev = 4;
579
+ setLoading(true);
580
+ finalValues = (formRef === null || formRef === void 0 || (_formRef$current4 = formRef.current) === null || _formRef$current4 === void 0 || (_formRef$current4$get = _formRef$current4.getFieldsFormatValue) === null || _formRef$current4$get === void 0 ? void 0 : _formRef$current4$get.call(_formRef$current4)) || {};
581
+ response = propRest.onFinish(finalValues);
582
+ if (!(response && (0, _typeof2.default)(response) === 'object' && typeof response.then === 'function')) {
583
+ _context3.next = 21;
584
+ break;
585
+ }
586
+ _context3.prev = 9;
587
+ _context3.next = 12;
588
+ return response;
589
+ case 12:
590
+ _context3.next = 18;
591
+ break;
592
+ case 14:
593
+ _context3.prev = 14;
594
+ _context3.t0 = _context3["catch"](9);
595
+ // 确保在 Promise 被拒绝时也重置 loading 状态
635
596
  setLoading(false);
636
- throw error;
637
- }
638
- setLoading(false);
639
- } else {
640
- setLoading(false);
641
- }
642
- if (syncToUrl) {
643
- const syncToUrlParams = Object.keys(
644
- ((_d = (_c = formRef == null ? void 0 : formRef.current) == null ? void 0 : _c.getFieldsFormatValue) == null ? void 0 : _d.call(_c, true, false)) || {}
645
- ).reduce((pre, next) => {
646
- var _a3;
647
- return __spreadProps(__spreadValues({}, pre), {
648
- [next]: (_a3 = finalValues[next]) != null ? _a3 : void 0
649
- });
650
- }, extraUrlParams);
651
- Object.keys(urlSearch).forEach((key) => {
652
- if (syncToUrlParams[key] !== false && syncToUrlParams[key] !== 0 && !syncToUrlParams[key]) {
653
- syncToUrlParams[key] = void 0;
597
+ throw _context3.t0;
598
+ case 18:
599
+ // 只有在 Promise 成功完成时才重置 loading 状态
600
+ setLoading(false);
601
+ _context3.next = 22;
602
+ break;
603
+ case 21:
604
+ setLoading(false);
605
+ case 22:
606
+ if (syncToUrl) {
607
+ // 把没有的值设置为未定义可以删掉 url 的参数
608
+ syncToUrlParams = Object.keys((formRef === null || formRef === void 0 || (_formRef$current5 = formRef.current) === null || _formRef$current5 === void 0 || (_formRef$current5$get = _formRef$current5.getFieldsFormatValue) === null || _formRef$current5$get === void 0 ? void 0 : _formRef$current5$get.call(_formRef$current5, true, false)) || {}).reduce(function (pre, next) {
609
+ var _finalValues$next;
610
+ return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, pre), {}, (0, _defineProperty2.default)({}, next, (_finalValues$next = finalValues[next]) !== null && _finalValues$next !== void 0 ? _finalValues$next : undefined));
611
+ }, extraUrlParams); // fix #3547: 当原先在url中存在的字段被删除时,应该将 params 中的该字段设置为 undefined,以便触发url同步删除
612
+ Object.keys(urlSearch).forEach(function (key) {
613
+ if (syncToUrlParams[key] !== false && syncToUrlParams[key] !== 0 && !syncToUrlParams[key]) {
614
+ syncToUrlParams[key] = undefined;
615
+ }
616
+ });
617
+ /** 在同步到 url 上时对参数进行转化 */
618
+ setUrlSearch(genParams(syncToUrl, syncToUrlParams, 'set'));
654
619
  }
655
- });
656
- setUrlSearch(genParams(syncToUrl, syncToUrlParams, "set"));
620
+ _context3.next = 28;
621
+ break;
622
+ case 25:
623
+ _context3.prev = 25;
624
+ _context3.t1 = _context3["catch"](4);
625
+ setLoading(false);
626
+ case 28:
627
+ case "end":
628
+ return _context3.stop();
657
629
  }
658
- } catch (error) {
659
- setLoading(false);
660
- }
661
- }));
662
- (0, import_react.useImperativeHandle)(propsFormRef, () => {
630
+ }, _callee3, null, [[4, 25], [9, 14]]);
631
+ })));
632
+
633
+ // 初始化给一个默认的 form
634
+ (0, _react.useImperativeHandle)(propsFormRef, function () {
663
635
  return formRef.current;
664
636
  }, [!initialData]);
665
637
  if (request && initialDataLoading) {
666
- return /* @__PURE__ */ import_react.default.createElement("div", { style: { paddingTop: 50, paddingBottom: 50, textAlign: "center" } }, /* @__PURE__ */ import_react.default.createElement(import_antd.Spin, null));
638
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
639
+ style: {
640
+ paddingTop: 50,
641
+ paddingBottom: 50,
642
+ textAlign: 'center'
643
+ },
644
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Spin, {})
645
+ });
667
646
  }
668
- return wrapSSR(
669
- /* @__PURE__ */ import_react.default.createElement(
670
- import_EditOrReadOnlyContext.EditOrReadOnlyContext.Provider,
671
- {
647
+ return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditOrReadOnlyContext.EditOrReadOnlyContext.Provider, {
648
+ value: {
649
+ mode: props.readonly ? 'read' : 'edit'
650
+ },
651
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_provider.ProConfigProvider, {
652
+ needDeps: true,
653
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FieldContext.default.Provider, {
672
654
  value: {
673
- mode: props.readonly ? "read" : "edit"
674
- }
675
- },
676
- /* @__PURE__ */ import_react.default.createElement(import_provider.ProConfigProvider, { needDeps: true }, /* @__PURE__ */ import_react.default.createElement(
677
- import_FieldContext.default.Provider,
678
- {
679
- value: {
680
- formRef,
681
- fieldProps,
682
- proFieldProps,
683
- formItemProps,
684
- groupProps,
685
- formComponentType,
686
- getPopupContainer,
687
- formKey: curFormKey.current,
688
- setFieldValueType: (name, { valueType = "text", dateFormat, transform }) => {
689
- if (!Array.isArray(name))
690
- return;
691
- if (transform) {
692
- transformKeyRef.current = (0, import_set.default)(
693
- transformKeyRef.current,
694
- name,
695
- transform
696
- );
697
- }
698
- fieldsValueType.current = (0, import_set.default)(
699
- fieldsValueType.current,
700
- name,
701
- {
702
- valueType,
703
- dateFormat
704
- }
705
- );
655
+ formRef: formRef,
656
+ fieldProps: fieldProps,
657
+ proFieldProps: proFieldProps,
658
+ formItemProps: formItemProps,
659
+ groupProps: groupProps,
660
+ formComponentType: formComponentType,
661
+ getPopupContainer: getPopupContainer,
662
+ formKey: curFormKey.current,
663
+ setFieldValueType: function setFieldValueType(name, _ref4) {
664
+ var _ref4$valueType = _ref4.valueType,
665
+ valueType = _ref4$valueType === void 0 ? 'text' : _ref4$valueType,
666
+ dateFormat = _ref4.dateFormat,
667
+ transform = _ref4.transform;
668
+ if (!Array.isArray(name)) return;
669
+
670
+ // Store transform function in the correct nested structure
671
+ if (transform) {
672
+ transformKeyRef.current = (0, _util.set)(transformKeyRef.current, name, transform);
706
673
  }
674
+ fieldsValueType.current = (0, _util.set)(fieldsValueType.current, name, {
675
+ valueType: valueType,
676
+ dateFormat: dateFormat
677
+ });
707
678
  }
708
679
  },
709
- /* @__PURE__ */ import_react.default.createElement(import_List.FormListContext.Provider, { value: {} }, /* @__PURE__ */ import_react.default.createElement(
710
- import_antd.Form,
711
- __spreadProps(__spreadValues({
712
- onKeyPress: (event) => {
713
- var _a2;
714
- if (!isKeyPressSubmit)
715
- return;
716
- if (event.key === "Enter") {
717
- (_a2 = formRef.current) == null ? void 0 : _a2.submit();
680
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_List.FormListContext.Provider, {
681
+ value: {},
682
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Form, (0, _objectSpread4.default)((0, _objectSpread4.default)({
683
+ onKeyPress: function onKeyPress(event) {
684
+ if (!isKeyPressSubmit) return;
685
+ if (event.key === 'Enter') {
686
+ var _formRef$current6;
687
+ (_formRef$current6 = formRef.current) === null || _formRef$current6 === void 0 || _formRef$current6.submit();
718
688
  }
719
689
  },
720
690
  autoComplete: "off",
721
- form
722
- }, (0, import_omit.default)(propRest, [
723
- "ref",
724
- "labelWidth",
725
- "autoFocusFirstInput"
726
- ])), {
727
- ref: (instance) => {
728
- if (!formRef.current)
729
- return;
730
- formRef.current.nativeElement = instance == null ? void 0 : instance.nativeElement;
731
- },
732
- initialValues: syncToUrlAsImportant ? __spreadValues(__spreadValues(__spreadValues({}, initialValues), initialData), urlParamsMergeInitialValues) : __spreadValues(__spreadValues(__spreadValues({}, urlParamsMergeInitialValues), initialValues), initialData),
733
- onValuesChange: (changedValues, values) => {
734
- var _a2;
735
- (_a2 = propRest == null ? void 0 : propRest.onValuesChange) == null ? void 0 : _a2.call(
736
- propRest,
737
- transformKey(changedValues, !!omitNil),
738
- transformKey(values, !!omitNil)
739
- );
691
+ form: form
692
+ }, (0, _util.omit)(propRest, ['ref', 'labelWidth', 'autoFocusFirstInput'])), {}, {
693
+ ref: function ref(instance) {
694
+ if (!formRef.current) return;
695
+ formRef.current.nativeElement = instance === null || instance === void 0 ? void 0 : instance.nativeElement;
696
+ }
697
+ // 组合 urlSearch 和 initialValues
698
+ ,
699
+ initialValues: syncToUrlAsImportant ? (0, _objectSpread4.default)((0, _objectSpread4.default)((0, _objectSpread4.default)({}, initialValues), initialData), urlParamsMergeInitialValues) : (0, _objectSpread4.default)((0, _objectSpread4.default)((0, _objectSpread4.default)({}, urlParamsMergeInitialValues), initialValues), initialData),
700
+ onValuesChange: function onValuesChange(changedValues, values) {
701
+ var _propRest$onValuesCha;
702
+ propRest === null || propRest === void 0 || (_propRest$onValuesCha = propRest.onValuesChange) === null || _propRest$onValuesCha === void 0 || _propRest$onValuesCha.call(propRest, transformKey(changedValues, !!omitNil), transformKey(values, !!omitNil));
740
703
  },
741
- className: (0, import_classnames.default)(props.className, prefixCls, hashId),
742
- onFinish
743
- }),
744
- /* @__PURE__ */ import_react.default.createElement(
745
- BaseFormComponents,
746
- __spreadProps(__spreadValues({
747
- transformKey,
704
+ className: (0, _classnames.default)(props.className, prefixCls, hashId),
705
+ onFinish: onFinish,
706
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(BaseFormComponents, (0, _objectSpread4.default)((0, _objectSpread4.default)({
707
+ transformKey: transformKey,
748
708
  autoComplete: "off",
749
709
  loading: loading || !!(request && !initialData && initialDataLoading),
750
710
  onUrlSearchChange: setUrlSearch
751
- }, props), {
752
- formRef,
753
- initialValues: __spreadValues(__spreadValues({}, initialValues), initialData)
754
- })
755
- )
756
- ))
757
- ))
758
- )
759
- );
760
- }
711
+ }, props), {}, {
712
+ formRef: formRef,
713
+ initialValues: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, initialValues), initialData)
714
+ }))
715
+ }))
716
+ })
717
+ })
718
+ })
719
+ }));
720
+ }