@ant-design/pro-components 3.1.12-0 → 3.1.13-0

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 (997) hide show
  1. package/README.es-PR.md +12 -0
  2. package/README.md +12 -0
  3. package/README.zh-CN.md +12 -0
  4. package/dist/pro-components.min.js +1 -1
  5. package/es/card/ProCard.d.ts +2 -2
  6. package/es/card/ProCard.js +7 -2
  7. package/es/card/components/Card/index.js +33 -25
  8. package/es/card/components/Card/style.js +44 -14
  9. package/es/card/components/CheckCard/Group.d.ts +22 -42
  10. package/es/card/components/CheckCard/Group.js +57 -47
  11. package/es/card/components/CheckCard/index.d.ts +3 -4
  12. package/es/card/components/CheckCard/index.js +19 -7
  13. package/es/card/components/CheckCard/style.d.ts +1 -1
  14. package/es/card/components/CheckCard/style.js +28 -27
  15. package/es/card/components/Loading/style.js +4 -3
  16. package/es/card/components/Operation/index.d.ts +1 -1
  17. package/es/card/components/Operation/style.js +4 -3
  18. package/es/card/components/Statistic/index.d.ts +1 -1
  19. package/es/card/components/Statistic/style.d.ts +1 -1
  20. package/es/card/components/Statistic/style.js +9 -6
  21. package/es/card/components/StatisticCard/style.d.ts +1 -1
  22. package/es/card/components/StatisticCard/style.js +5 -5
  23. package/es/card/typing.d.ts +1 -1
  24. package/es/descriptions/FieldRender.d.ts +16 -0
  25. package/es/descriptions/FieldRender.js +134 -0
  26. package/es/descriptions/ProDescriptions.d.ts +5 -0
  27. package/es/descriptions/ProDescriptions.js +139 -0
  28. package/es/descriptions/getDataFromConfig.d.ts +5 -0
  29. package/es/descriptions/getDataFromConfig.js +16 -0
  30. package/es/descriptions/index.d.ts +6 -98
  31. package/es/descriptions/index.js +4 -430
  32. package/es/descriptions/resolveValueType.d.ts +6 -0
  33. package/es/descriptions/resolveValueType.js +9 -0
  34. package/es/descriptions/schemaToDescriptionsItem.d.ts +8 -0
  35. package/es/descriptions/schemaToDescriptionsItem.js +90 -0
  36. package/es/descriptions/typing.d.ts +70 -0
  37. package/es/descriptions/typing.js +27 -0
  38. package/es/descriptions/useFetchData.d.ts +13 -12
  39. package/es/descriptions/useFetchData.js +23 -13
  40. package/es/field/AllProField.d.ts +8 -34
  41. package/es/field/AllProField.js +172 -274
  42. package/es/field/ProFieldCore.d.ts +23 -0
  43. package/es/field/ProFieldCore.js +74 -0
  44. package/es/field/PureProField.d.ts +9 -39
  45. package/es/field/PureProField.js +56 -110
  46. package/es/field/ValueTypeToComponent.d.ts +4 -1
  47. package/es/field/ValueTypeToComponent.js +257 -673
  48. package/es/field/components/Cascader/FieldCascaderEdit.d.ts +17 -0
  49. package/es/field/components/Cascader/FieldCascaderEdit.js +45 -0
  50. package/es/field/components/Cascader/FieldCascaderLightEdit.d.ts +17 -0
  51. package/es/field/components/Cascader/FieldCascaderLightEdit.js +68 -0
  52. package/es/field/components/Cascader/FieldCascaderRead.d.ts +6 -0
  53. package/es/field/components/Cascader/FieldCascaderRead.js +21 -0
  54. package/es/field/components/Cascader/index.d.ts +7 -13
  55. package/es/field/components/Cascader/index.js +40 -76
  56. package/es/field/components/Cascader/types.d.ts +8 -0
  57. package/es/field/components/Cascader/types.js +1 -0
  58. package/es/field/components/Checkbox/FieldCheckboxEdit.d.ts +16 -0
  59. package/es/field/components/Checkbox/FieldCheckboxEdit.js +41 -0
  60. package/es/field/components/Checkbox/FieldCheckboxRead.d.ts +6 -0
  61. package/es/field/components/Checkbox/FieldCheckboxRead.js +37 -0
  62. package/es/field/components/Checkbox/index.d.ts +5 -9
  63. package/es/field/components/Checkbox/index.js +33 -66
  64. package/es/field/components/Checkbox/types.d.ts +6 -0
  65. package/es/field/components/Checkbox/types.js +1 -0
  66. package/es/field/components/Code/FieldCodeEdit.d.ts +10 -0
  67. package/es/field/components/Code/FieldCodeEdit.js +28 -0
  68. package/es/field/components/Code/FieldCodeRead.d.ts +14 -0
  69. package/es/field/components/Code/FieldCodeRead.js +38 -0
  70. package/es/field/components/Code/index.js +22 -63
  71. package/es/field/components/Code/utils.d.ts +1 -0
  72. package/es/field/components/Code/utils.js +13 -0
  73. package/es/field/components/ColorPicker/FieldColorPickerEdit.d.ts +9 -0
  74. package/es/field/components/ColorPicker/FieldColorPickerEdit.js +41 -0
  75. package/es/field/components/ColorPicker/FieldColorPickerRead.d.ts +9 -0
  76. package/es/field/components/ColorPicker/FieldColorPickerRead.js +30 -0
  77. package/es/field/components/ColorPicker/index.d.ts +1 -1
  78. package/es/field/components/ColorPicker/index.js +11 -61
  79. package/es/field/components/DatePicker/FieldDatePickerEdit.d.ts +15 -0
  80. package/es/field/components/DatePicker/FieldDatePickerEdit.js +40 -0
  81. package/es/field/components/DatePicker/FieldDatePickerLightEdit.d.ts +17 -0
  82. package/es/field/components/DatePicker/FieldDatePickerLightEdit.js +63 -0
  83. package/es/field/components/DatePicker/FieldDatePickerRead.d.ts +13 -0
  84. package/es/field/components/DatePicker/FieldDatePickerRead.js +26 -0
  85. package/es/field/components/DatePicker/datePickerUtils.d.ts +3 -0
  86. package/es/field/components/DatePicker/datePickerUtils.js +32 -0
  87. package/es/field/components/DatePicker/index.d.ts +3 -3
  88. package/es/field/components/DatePicker/index.js +39 -91
  89. package/es/field/components/Digit/FieldDigitEdit.d.ts +8 -0
  90. package/es/field/components/Digit/FieldDigitEdit.js +25 -0
  91. package/es/field/components/Digit/FieldDigitRead.d.ts +4 -0
  92. package/es/field/components/Digit/FieldDigitRead.js +34 -0
  93. package/es/field/components/Digit/index.d.ts +2 -4
  94. package/es/field/components/Digit/index.js +23 -101
  95. package/es/field/components/Digit/types.d.ts +4 -0
  96. package/es/field/components/Digit/types.js +1 -0
  97. package/es/field/components/DigitRange/FieldDigitRangeEdit.d.ts +16 -0
  98. package/es/field/components/DigitRange/FieldDigitRangeEdit.js +87 -0
  99. package/es/field/components/DigitRange/FieldDigitRangeRead.d.ts +4 -0
  100. package/es/field/components/DigitRange/FieldDigitRangeRead.js +29 -0
  101. package/es/field/components/DigitRange/index.d.ts +2 -8
  102. package/es/field/components/DigitRange/index.js +30 -90
  103. package/es/field/components/DigitRange/types.d.ts +8 -0
  104. package/es/field/components/DigitRange/types.js +1 -0
  105. package/es/field/components/FromNow/FieldFromNowEdit.d.ts +12 -0
  106. package/es/field/components/FromNow/FieldFromNowEdit.js +32 -0
  107. package/es/field/components/FromNow/FieldFromNowRead.d.ts +9 -0
  108. package/es/field/components/FromNow/FieldFromNowRead.js +28 -0
  109. package/es/field/components/FromNow/index.d.ts +1 -1
  110. package/es/field/components/FromNow/index.js +15 -49
  111. package/es/field/components/Image/FieldImageEdit.d.ts +8 -0
  112. package/es/field/components/Image/FieldImageEdit.js +24 -0
  113. package/es/field/components/Image/FieldImageRead.d.ts +4 -0
  114. package/es/field/components/Image/FieldImageRead.js +25 -0
  115. package/es/field/components/Image/index.d.ts +3 -6
  116. package/es/field/components/Image/index.js +25 -34
  117. package/es/field/components/Image/types.d.ts +5 -0
  118. package/es/field/components/Image/types.js +1 -0
  119. package/es/field/components/Money/FieldMoneyEdit.d.ts +13 -0
  120. package/es/field/components/Money/FieldMoneyEdit.js +64 -0
  121. package/es/field/components/Money/FieldMoneyRead.d.ts +9 -0
  122. package/es/field/components/Money/FieldMoneyRead.js +26 -0
  123. package/es/field/components/Money/InputNumberPopover.d.ts +11 -0
  124. package/es/field/components/Money/InputNumberPopover.js +92 -0
  125. package/es/field/components/Money/index.d.ts +2 -69
  126. package/es/field/components/Money/index.js +43 -286
  127. package/es/field/components/Money/moneyFormat.d.ts +13 -0
  128. package/es/field/components/Money/moneyFormat.js +102 -0
  129. package/es/field/components/Money/types.d.ts +37 -0
  130. package/es/field/components/Money/types.js +1 -0
  131. package/es/field/components/Password/FieldPasswordEdit.d.ts +12 -0
  132. package/es/field/components/Password/FieldPasswordEdit.js +24 -0
  133. package/es/field/components/Password/FieldPasswordRead.d.ts +12 -0
  134. package/es/field/components/Password/FieldPasswordRead.js +37 -0
  135. package/es/field/components/Password/index.js +23 -43
  136. package/es/field/components/Percent/FieldPercentEdit.d.ts +8 -0
  137. package/es/field/components/Percent/FieldPercentEdit.js +32 -0
  138. package/es/field/components/Percent/FieldPercentRead.d.ts +9 -0
  139. package/es/field/components/Percent/FieldPercentRead.js +41 -0
  140. package/es/field/components/Percent/index.d.ts +2 -10
  141. package/es/field/components/Percent/index.js +26 -65
  142. package/es/field/components/Percent/types.d.ts +10 -0
  143. package/es/field/components/Percent/types.js +1 -0
  144. package/es/field/components/Percent/util.d.ts +1 -1
  145. package/es/field/components/Progress/FieldProgressEdit.d.ts +10 -0
  146. package/es/field/components/Progress/FieldProgressEdit.js +24 -0
  147. package/es/field/components/Progress/FieldProgressRead.d.ts +10 -0
  148. package/es/field/components/Progress/FieldProgressRead.js +31 -0
  149. package/es/field/components/Progress/index.d.ts +2 -1
  150. package/es/field/components/Progress/index.js +21 -57
  151. package/es/field/components/Progress/utils.d.ts +1 -0
  152. package/es/field/components/Progress/utils.js +12 -0
  153. package/es/field/components/Radio/FieldRadioEdit.d.ts +16 -0
  154. package/es/field/components/Radio/FieldRadioEdit.js +38 -0
  155. package/es/field/components/Radio/FieldRadioRead.d.ts +6 -0
  156. package/es/field/components/Radio/FieldRadioRead.js +21 -0
  157. package/es/field/components/Radio/index.d.ts +4 -8
  158. package/es/field/components/Radio/index.js +34 -49
  159. package/es/field/components/Radio/types.d.ts +6 -0
  160. package/es/field/components/Radio/types.js +1 -0
  161. package/es/field/components/RangePicker/FieldRangePickerEdit.d.ts +15 -0
  162. package/es/field/components/RangePicker/FieldRangePickerEdit.js +35 -0
  163. package/es/field/components/RangePicker/FieldRangePickerLightEdit.d.ts +17 -0
  164. package/es/field/components/RangePicker/FieldRangePickerLightEdit.js +67 -0
  165. package/es/field/components/RangePicker/FieldRangePickerRead.d.ts +14 -0
  166. package/es/field/components/RangePicker/FieldRangePickerRead.js +28 -0
  167. package/es/field/components/RangePicker/index.d.ts +3 -3
  168. package/es/field/components/RangePicker/index.js +47 -94
  169. package/es/field/components/Rate/FieldRateEdit.d.ts +5 -0
  170. package/es/field/components/Rate/FieldRateEdit.js +23 -0
  171. package/es/field/components/Rate/FieldRateRead.d.ts +5 -0
  172. package/es/field/components/Rate/FieldRateRead.js +28 -0
  173. package/es/field/components/Rate/index.js +12 -42
  174. package/es/field/components/Second/FieldSecondEdit.d.ts +8 -0
  175. package/es/field/components/Second/FieldSecondEdit.js +28 -0
  176. package/es/field/components/Second/FieldSecondRead.d.ts +4 -0
  177. package/es/field/components/Second/FieldSecondRead.js +23 -0
  178. package/es/field/components/Second/index.d.ts +4 -11
  179. package/es/field/components/Second/index.js +17 -77
  180. package/es/field/components/Second/types.d.ts +6 -0
  181. package/es/field/components/Second/types.js +1 -0
  182. package/es/field/components/Second/utils.d.ts +4 -0
  183. package/es/field/components/Second/utils.js +30 -0
  184. package/es/field/components/Segmented/FieldSegmentedEdit.d.ts +13 -0
  185. package/es/field/components/Segmented/FieldSegmentedEdit.js +29 -0
  186. package/es/field/components/Segmented/FieldSegmentedRead.d.ts +12 -0
  187. package/es/field/components/Segmented/FieldSegmentedRead.js +27 -0
  188. package/es/field/components/Segmented/index.d.ts +4 -4
  189. package/es/field/components/Segmented/index.js +22 -40
  190. package/es/field/components/Select/FieldSelectEdit.d.ts +2 -0
  191. package/es/field/components/Select/FieldSelectEdit.js +1 -0
  192. package/es/field/components/Select/FieldSelectLightEdit.d.ts +17 -0
  193. package/es/field/components/Select/FieldSelectLightEdit.js +46 -0
  194. package/es/field/components/Select/FieldSelectRead.d.ts +10 -0
  195. package/es/field/components/Select/FieldSelectRead.js +23 -0
  196. package/es/field/components/Select/FieldSelectSearchEdit.d.ts +17 -0
  197. package/es/field/components/Select/FieldSelectSearchEdit.js +50 -0
  198. package/es/field/components/Select/LightSelect/index.d.ts +3 -3
  199. package/es/field/components/Select/SearchSelect/index.d.ts +0 -8
  200. package/es/field/components/Select/SearchSelect/index.js +8 -22
  201. package/es/field/components/Select/index.d.ts +6 -28
  202. package/es/field/components/Select/index.js +49 -142
  203. package/es/field/components/Select/types.d.ts +19 -0
  204. package/es/field/components/Select/types.js +1 -0
  205. package/es/field/components/Slider/FieldSliderEdit.d.ts +5 -0
  206. package/es/field/components/Slider/FieldSliderEdit.js +26 -0
  207. package/es/field/components/Slider/FieldSliderRead.d.ts +5 -0
  208. package/es/field/components/Slider/FieldSliderRead.js +22 -0
  209. package/es/field/components/Slider/index.js +12 -41
  210. package/es/field/components/Switch/FieldSwitchEdit.d.ts +12 -0
  211. package/es/field/components/Switch/FieldSwitchEdit.js +24 -0
  212. package/es/field/components/Switch/FieldSwitchLightEdit.d.ts +12 -0
  213. package/es/field/components/Switch/FieldSwitchLightEdit.js +41 -0
  214. package/es/field/components/Switch/FieldSwitchRead.d.ts +10 -0
  215. package/es/field/components/Switch/FieldSwitchRead.js +21 -0
  216. package/es/field/components/Switch/index.d.ts +1 -1
  217. package/es/field/components/Switch/index.js +30 -56
  218. package/es/field/components/Text/FieldTextEdit.d.ts +12 -0
  219. package/es/field/components/Text/FieldTextEdit.js +27 -0
  220. package/es/field/components/Text/FieldTextRead.d.ts +10 -0
  221. package/es/field/components/Text/FieldTextRead.js +26 -0
  222. package/es/field/components/Text/index.js +25 -41
  223. package/es/field/components/TextArea/FieldTextAreaEdit.d.ts +10 -0
  224. package/es/field/components/TextArea/FieldTextAreaEdit.js +30 -0
  225. package/es/field/components/TextArea/FieldTextAreaRead.d.ts +7 -0
  226. package/es/field/components/TextArea/FieldTextAreaRead.js +24 -0
  227. package/es/field/components/TextArea/index.js +11 -43
  228. package/es/field/components/TimePicker/FieldTimePickerEdit.d.ts +12 -0
  229. package/es/field/components/TimePicker/FieldTimePickerEdit.js +33 -0
  230. package/es/field/components/TimePicker/FieldTimePickerLightEdit.d.ts +16 -0
  231. package/es/field/components/TimePicker/FieldTimePickerLightEdit.js +62 -0
  232. package/es/field/components/TimePicker/FieldTimePickerRead.d.ts +11 -0
  233. package/es/field/components/TimePicker/FieldTimePickerRead.js +26 -0
  234. package/es/field/components/TimePicker/FieldTimeRangePickerEdit.d.ts +12 -0
  235. package/es/field/components/TimePicker/FieldTimeRangePickerEdit.js +30 -0
  236. package/es/field/components/TimePicker/FieldTimeRangePickerLightEdit.d.ts +16 -0
  237. package/es/field/components/TimePicker/FieldTimeRangePickerLightEdit.js +63 -0
  238. package/es/field/components/TimePicker/FieldTimeRangePickerRead.d.ts +12 -0
  239. package/es/field/components/TimePicker/FieldTimeRangePickerRead.js +28 -0
  240. package/es/field/components/TimePicker/index.d.ts +3 -3
  241. package/es/field/components/TimePicker/index.js +77 -151
  242. package/es/field/components/TreeSelect/FieldTreeSelectEdit.d.ts +38 -0
  243. package/es/field/components/TreeSelect/FieldTreeSelectEdit.js +86 -0
  244. package/es/field/components/TreeSelect/FieldTreeSelectLightEdit.d.ts +35 -0
  245. package/es/field/components/TreeSelect/FieldTreeSelectLightEdit.js +121 -0
  246. package/es/field/components/TreeSelect/FieldTreeSelectRead.d.ts +7 -0
  247. package/es/field/components/TreeSelect/FieldTreeSelectRead.js +24 -0
  248. package/es/field/components/TreeSelect/index.d.ts +6 -13
  249. package/es/field/components/TreeSelect/index.js +50 -106
  250. package/es/field/components/TreeSelect/types.d.ts +9 -0
  251. package/es/field/components/TreeSelect/types.js +1 -0
  252. package/es/field/initDayjs.d.ts +1 -0
  253. package/es/field/initDayjs.js +13 -0
  254. package/es/field/internal/ProFieldLightWrapper.d.ts +16 -0
  255. package/es/field/{FieldHOC/index.js → internal/ProFieldLightWrapper.js} +20 -5
  256. package/es/field/internal/fieldMode.d.ts +14 -0
  257. package/es/field/internal/fieldMode.js +21 -0
  258. package/es/field/types.d.ts +30 -0
  259. package/es/field/types.js +1 -0
  260. package/es/form/BaseForm/BaseForm.d.ts +2 -2
  261. package/es/form/BaseForm/BaseForm.js +116 -257
  262. package/es/form/BaseForm/Submitter/index.d.ts +5 -6
  263. package/es/form/BaseForm/Submitter/index.js +27 -29
  264. package/es/form/BaseForm/index.d.ts +0 -1
  265. package/es/form/BaseForm/index.js +1 -2
  266. package/es/form/BaseForm/useUrlSync.d.ts +42 -0
  267. package/es/form/BaseForm/useUrlSync.js +92 -0
  268. package/es/form/FieldContext.d.ts +4 -3
  269. package/es/form/components/Checkbox/index.js +0 -20
  270. package/es/form/components/ColorPicker/index.d.ts +3 -22
  271. package/es/form/components/ColorPicker/index.js +2 -1
  272. package/es/form/components/DatePicker/BaseDatePicker.js +29 -1
  273. package/es/form/components/DateRangePicker/BaseDateRanger.js +30 -2
  274. package/es/form/components/DateRangePicker/DateMonthRangePicker.js +0 -6
  275. package/es/form/components/DateRangePicker/DateQuarterRangePicker.js +0 -6
  276. package/es/form/components/DateRangePicker/DateTimeRangePicker.js +0 -6
  277. package/es/form/components/DateRangePicker/DateWeekRangePicker.js +0 -6
  278. package/es/form/components/DateRangePicker/DateYearRangePicker.d.ts +1 -1
  279. package/es/form/components/DateRangePicker/DateYearRangePicker.js +1 -7
  280. package/es/form/components/DateRangePicker/index.js +0 -6
  281. package/es/form/components/Dependency/index.d.ts +1 -1
  282. package/es/form/components/Digit/DigitRange.d.ts +1 -1
  283. package/es/form/components/Field/index.js +1 -1
  284. package/es/form/components/FieldSet/index.d.ts +0 -2
  285. package/es/form/components/FieldSet/index.js +0 -1
  286. package/es/form/components/FormItem/FormItemRender/index.d.ts +1 -2
  287. package/es/form/components/FormItem/index.d.ts +4 -5
  288. package/es/form/components/FormItem/index.js +83 -100
  289. package/es/form/components/FormItem/warpField.js +38 -24
  290. package/es/form/components/List/ListContainer.js +18 -35
  291. package/es/form/components/List/ListItem.d.ts +2 -2
  292. package/es/form/components/List/ListItem.js +90 -90
  293. package/es/form/components/List/index.js +8 -8
  294. package/es/form/components/SchemaForm/index.d.ts +2 -1
  295. package/es/form/components/SchemaForm/index.js +1 -1
  296. package/es/form/components/SchemaForm/layoutType/StepsForm.d.ts +1 -1
  297. package/es/form/components/SchemaForm/valueType/dependency.d.ts +2 -1
  298. package/es/form/components/SchemaForm/valueType/divider.d.ts +2 -1
  299. package/es/form/components/Select/index.d.ts +0 -2
  300. package/es/form/components/UploadButton/index.d.ts +1 -1
  301. package/es/form/index.d.ts +5 -3
  302. package/es/form/index.js +2 -1
  303. package/es/form/layouts/DrawerForm/index.js +57 -173
  304. package/{lib/form/BaseForm → es/form/layouts/LightFilter}/LightWrapper/index.d.ts +1 -1
  305. package/es/form/{BaseForm → layouts/LightFilter}/LightWrapper/index.js +39 -21
  306. package/es/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.d.ts +1 -1
  307. package/es/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.js +1 -1
  308. package/es/form/layouts/LightFilter/index.d.ts +7 -33
  309. package/es/form/layouts/LightFilter/index.js +15 -14
  310. package/es/form/layouts/LightFilter/lightFilterFieldComponents.d.ts +104 -0
  311. package/es/form/layouts/LightFilter/lightFilterFieldComponents.js +69 -0
  312. package/es/form/layouts/LightFilter/style.js +2 -3
  313. package/es/form/layouts/LoginForm/index.js +8 -28
  314. package/es/form/layouts/LoginFormPage/index.js +8 -28
  315. package/es/form/layouts/ModalForm/index.d.ts +1 -1
  316. package/es/form/layouts/ModalForm/index.js +36 -142
  317. package/es/form/layouts/ProForm/index.d.ts +3 -3
  318. package/es/form/layouts/ProForm/index.js +5 -6
  319. package/es/form/layouts/QueryFilter/Actions.js +1 -12
  320. package/es/form/layouts/QueryFilter/index.js +26 -99
  321. package/es/form/layouts/QueryFilter/processQueryFilterItems.d.ts +63 -0
  322. package/es/form/layouts/QueryFilter/processQueryFilterItems.js +123 -0
  323. package/es/form/layouts/StepsForm/StepForm.d.ts +2 -1
  324. package/es/form/layouts/StepsForm/index.d.ts +60 -1
  325. package/es/form/layouts/StepsForm/index.js +97 -37
  326. package/es/form/layouts/_shared/LoginFormHeader.d.ts +16 -0
  327. package/es/form/layouts/_shared/LoginFormHeader.js +45 -0
  328. package/es/form/layouts/_shared/useOverlayForm.d.ts +60 -0
  329. package/es/form/layouts/_shared/useOverlayForm.js +155 -0
  330. package/es/form/layouts/index.d.ts +3 -2
  331. package/es/form/layouts/index.js +2 -1
  332. package/es/form/typing.d.ts +4 -1
  333. package/es/form/typing.js +7 -1
  334. package/es/layout/assert/Logo.d.ts +2 -1
  335. package/es/layout/components/AppsLogoComponents/AppsLogo.d.ts +2 -1
  336. package/es/layout/components/Help/index.d.ts +1 -1
  337. package/es/layout/components/PageContainer/index.d.ts +1 -1
  338. package/es/layout/components/PageHeader/style/index.d.ts +1 -1
  339. package/es/layout/components/SettingDrawer/LayoutChange.d.ts +1 -1
  340. package/es/layout/components/SettingDrawer/icon/group.d.ts +2 -1
  341. package/es/layout/components/SettingDrawer/icon/sub.d.ts +2 -1
  342. package/es/layout/components/SettingDrawer/index.js +1 -2
  343. package/es/layout/components/SiderMenu/Arrow.d.ts +2 -1
  344. package/es/list/Item.d.ts +3 -2
  345. package/es/list/Item.js +7 -5
  346. package/es/list/ListView.d.ts +2 -3
  347. package/es/list/ListView.js +79 -67
  348. package/es/list/ProListBase.d.ts +4 -0
  349. package/es/list/ProListBase.js +6 -2
  350. package/es/list/index.d.ts +4 -5
  351. package/es/list/index.js +35 -35
  352. package/es/provider/index.d.ts +7 -5
  353. package/es/provider/index.js +53 -15
  354. package/es/provider/intl.d.ts +47 -69
  355. package/es/provider/intl.js +128 -84
  356. package/es/provider/locale/ar_EG.d.ts +3 -72
  357. package/es/provider/locale/ar_EG.js +8 -3
  358. package/es/provider/locale/ca_ES.d.ts +3 -72
  359. package/es/provider/locale/ca_ES.js +7 -2
  360. package/es/provider/locale/cs_CZ.d.ts +3 -75
  361. package/es/provider/locale/cs_CZ.js +4 -2
  362. package/es/provider/locale/de_DE.d.ts +3 -72
  363. package/es/provider/locale/de_DE.js +8 -3
  364. package/es/provider/locale/en_GB.d.ts +3 -74
  365. package/es/provider/locale/en_GB.js +5 -2
  366. package/es/provider/locale/en_US.d.ts +3 -76
  367. package/es/provider/locale/en_US.js +3 -2
  368. package/es/provider/locale/es_ES.d.ts +3 -72
  369. package/es/provider/locale/es_ES.js +7 -2
  370. package/es/provider/locale/fa_IR.d.ts +3 -72
  371. package/es/provider/locale/fa_IR.js +8 -3
  372. package/es/provider/locale/fr_FR.d.ts +3 -72
  373. package/es/provider/locale/fr_FR.js +11 -6
  374. package/es/provider/locale/he_IL.d.ts +3 -75
  375. package/es/provider/locale/he_IL.js +4 -2
  376. package/es/provider/locale/hr_HR.d.ts +3 -72
  377. package/es/provider/locale/hr_HR.js +7 -2
  378. package/es/provider/locale/id_ID.d.ts +3 -72
  379. package/es/provider/locale/id_ID.js +7 -2
  380. package/es/provider/locale/it_IT.d.ts +3 -72
  381. package/es/provider/locale/it_IT.js +13 -8
  382. package/es/provider/locale/ja_JP.d.ts +3 -72
  383. package/es/provider/locale/ja_JP.js +8 -3
  384. package/es/provider/locale/ko_KR.d.ts +3 -72
  385. package/es/provider/locale/ko_KR.js +9 -4
  386. package/es/provider/locale/mn_MN.d.ts +3 -72
  387. package/es/provider/locale/mn_MN.js +7 -2
  388. package/es/provider/locale/ms_MY.d.ts +3 -72
  389. package/es/provider/locale/ms_MY.js +10 -5
  390. package/es/provider/locale/nl_NL.d.ts +3 -75
  391. package/es/provider/locale/nl_NL.js +4 -2
  392. package/es/provider/locale/pl_PL.d.ts +3 -72
  393. package/es/provider/locale/pl_PL.js +12 -7
  394. package/es/provider/locale/pt_BR.d.ts +3 -72
  395. package/es/provider/locale/pt_BR.js +7 -2
  396. package/es/provider/locale/ro_RO.d.ts +3 -75
  397. package/es/provider/locale/ro_RO.js +4 -2
  398. package/es/provider/locale/ru_RU.d.ts +3 -72
  399. package/es/provider/locale/ru_RU.js +9 -4
  400. package/es/provider/locale/sk_SK.d.ts +3 -75
  401. package/es/provider/locale/sk_SK.js +4 -2
  402. package/es/provider/locale/sr_RS.d.ts +3 -72
  403. package/es/provider/locale/sr_RS.js +9 -4
  404. package/es/provider/locale/sv_SE.d.ts +3 -75
  405. package/es/provider/locale/sv_SE.js +4 -2
  406. package/es/provider/locale/th_TH.d.ts +3 -75
  407. package/es/provider/locale/th_TH.js +4 -2
  408. package/es/provider/locale/tr_TR.d.ts +3 -72
  409. package/es/provider/locale/tr_TR.js +9 -4
  410. package/es/provider/locale/uk_UA.d.ts +3 -75
  411. package/es/provider/locale/uk_UA.js +6 -4
  412. package/es/provider/locale/uz_UZ.d.ts +3 -72
  413. package/es/provider/locale/uz_UZ.js +7 -2
  414. package/es/provider/locale/vi_VN.d.ts +3 -72
  415. package/es/provider/locale/vi_VN.js +10 -5
  416. package/es/provider/locale/zh_CN.d.ts +76 -62
  417. package/es/provider/locale/zh_CN.js +14 -2
  418. package/es/provider/locale/zh_HK.d.ts +3 -75
  419. package/es/provider/locale/zh_HK.js +4 -2
  420. package/es/provider/locale/zh_TW.d.ts +3 -75
  421. package/es/provider/locale/zh_TW.js +4 -2
  422. package/es/provider/typing/layoutToken.js +0 -1
  423. package/es/provider/useStyle/index.d.ts +5 -0
  424. package/es/provider/useStyle/index.js +30 -10
  425. package/es/provider/utils/merge.d.ts +22 -1
  426. package/es/provider/utils/merge.js +38 -19
  427. package/es/skeleton/components/Descriptions/index.d.ts +2 -2
  428. package/es/skeleton/components/List/index.d.ts +3 -3
  429. package/es/table/Store/Provide.d.ts +19 -12
  430. package/es/table/Store/Provide.js +90 -44
  431. package/es/table/Table.d.ts +1 -1
  432. package/es/table/Table.js +101 -75
  433. package/es/table/TableSearch.js +26 -28
  434. package/es/table/TableToolbar.d.ts +4 -1
  435. package/es/table/TableToolbar.js +24 -26
  436. package/es/table/components/Alert/index.js +9 -5
  437. package/es/table/components/ColumnSetting/index.d.ts +3 -1
  438. package/es/table/components/ColumnSetting/index.js +58 -21
  439. package/es/table/components/DragSortTable/index.js +27 -20
  440. package/es/table/components/Dropdown/index.d.ts +3 -6
  441. package/es/table/components/Dropdown/index.js +27 -26
  442. package/es/table/components/EditableTable/CellEditorTable.d.ts +2 -1
  443. package/es/table/components/EditableTable/CellEditorTable.js +60 -35
  444. package/es/table/components/EditableTable/RowEditorTable.d.ts +2 -1
  445. package/es/table/components/EditableTable/RowEditorTable.js +47 -33
  446. package/es/table/components/EditableTable/index.d.ts +1 -1
  447. package/es/table/components/EditableTable/index.js +130 -121
  448. package/es/table/components/Form/FormRender.d.ts +1 -1
  449. package/es/table/components/Form/FormRender.js +14 -23
  450. package/es/table/components/Form/index.d.ts +1 -1
  451. package/es/table/components/Form/index.js +20 -42
  452. package/es/table/components/ListToolBar/HeaderMenu.js +7 -8
  453. package/es/table/components/ListToolBar/index.js +79 -105
  454. package/es/table/components/ToolBar/DensityIcon.d.ts +3 -3
  455. package/es/table/components/ToolBar/DensityIcon.js +5 -7
  456. package/es/table/components/ToolBar/FullscreenIcon.d.ts +2 -2
  457. package/es/table/components/ToolBar/FullscreenIcon.js +18 -17
  458. package/es/table/components/ToolBar/index.d.ts +4 -2
  459. package/es/table/components/ToolBar/index.js +34 -40
  460. package/es/table/index.d.ts +3 -8
  461. package/es/table/index.js +2 -3
  462. package/es/table/typing.d.ts +5 -5
  463. package/es/table/useFetchData.js +72 -26
  464. package/es/table/utils/cellRenderToFromItem.d.ts +6 -0
  465. package/es/table/utils/cellRenderToFromItem.js +52 -27
  466. package/es/table/utils/columnRender.d.ts +1 -1
  467. package/es/table/utils/genProColumnToColumn.js +1 -1
  468. package/es/table/utils/index.d.ts +23 -1
  469. package/es/table/utils/index.js +59 -1
  470. package/es/table/utils/useDragSort.d.ts +1 -1
  471. package/es/table/utils/usePageInfo.js +2 -3
  472. package/es/utils/components/DropdownFooter/index.d.ts +1 -1
  473. package/es/utils/components/ErrorBoundary/index.d.ts +1 -1
  474. package/es/utils/components/InlineErrorFormItem/index.d.ts +2 -1
  475. package/es/utils/conversionMomentValue/index.d.ts +9 -4
  476. package/es/utils/conversionMomentValue/index.js +56 -21
  477. package/es/utils/dateArrayFormatter/index.js +12 -2
  478. package/es/utils/genCopyable/index.d.ts +1 -1
  479. package/es/utils/hooks/useUrlSearchParams/index.d.ts +6 -0
  480. package/es/utils/hooks/useUrlSearchParams/index.js +146 -0
  481. package/es/utils/index.d.ts +3 -2
  482. package/es/utils/index.js +4 -3
  483. package/es/utils/nanoid/index.js +3 -2
  484. package/es/utils/parseValueToMoment/index.d.ts +6 -1
  485. package/es/utils/parseValueToMoment/index.js +73 -6
  486. package/es/utils/proFieldParsingText/index.d.ts +7 -1
  487. package/es/utils/proFieldParsingText/index.js +8 -5
  488. package/es/utils/transformKeySubmitValue/index.d.ts +3 -1
  489. package/es/utils/transformKeySubmitValue/index.js +109 -81
  490. package/es/utils/typing.d.ts +29 -62
  491. package/es/utils/typing.js +88 -1
  492. package/es/utils/useEditableArray/index.d.ts +21 -5
  493. package/es/utils/useEditableArray/index.js +187 -106
  494. package/es/utils/useEditableMap/index.d.ts +10 -3
  495. package/es/utils/useEditableMap/index.js +133 -72
  496. package/es/utils/useMediaQuery/index.d.ts +29 -36
  497. package/es/utils/useMediaQuery/index.js +106 -91
  498. package/es/utils/useMediaQuery/query.d.ts +7 -0
  499. package/es/utils/useMediaQuery/query.js +33 -15
  500. package/lib/card/ProCard.d.ts +2 -2
  501. package/lib/card/ProCard.js +7 -2
  502. package/lib/card/components/Card/index.js +33 -25
  503. package/lib/card/components/Card/style.js +44 -14
  504. package/lib/card/components/CheckCard/Group.d.ts +22 -42
  505. package/lib/card/components/CheckCard/Group.js +57 -48
  506. package/lib/card/components/CheckCard/index.d.ts +3 -4
  507. package/lib/card/components/CheckCard/index.js +18 -6
  508. package/lib/card/components/CheckCard/style.d.ts +1 -1
  509. package/lib/card/components/CheckCard/style.js +28 -27
  510. package/lib/card/components/Loading/style.js +4 -3
  511. package/lib/card/components/Operation/index.d.ts +1 -1
  512. package/lib/card/components/Operation/style.js +4 -3
  513. package/lib/card/components/Statistic/index.d.ts +1 -1
  514. package/lib/card/components/Statistic/style.d.ts +1 -1
  515. package/lib/card/components/Statistic/style.js +9 -6
  516. package/lib/card/components/StatisticCard/style.d.ts +1 -1
  517. package/lib/card/components/StatisticCard/style.js +5 -5
  518. package/lib/card/typing.d.ts +1 -1
  519. package/lib/descriptions/FieldRender.d.ts +16 -0
  520. package/lib/descriptions/FieldRender.js +142 -0
  521. package/lib/descriptions/ProDescriptions.d.ts +5 -0
  522. package/lib/descriptions/ProDescriptions.js +146 -0
  523. package/lib/descriptions/getDataFromConfig.d.ts +5 -0
  524. package/lib/descriptions/getDataFromConfig.js +22 -0
  525. package/lib/descriptions/index.d.ts +6 -98
  526. package/lib/descriptions/index.js +23 -427
  527. package/lib/descriptions/resolveValueType.d.ts +6 -0
  528. package/lib/descriptions/resolveValueType.js +15 -0
  529. package/lib/descriptions/schemaToDescriptionsItem.d.ts +8 -0
  530. package/lib/descriptions/schemaToDescriptionsItem.js +95 -0
  531. package/lib/descriptions/typing.d.ts +70 -0
  532. package/lib/descriptions/typing.js +12 -0
  533. package/lib/descriptions/useFetchData.d.ts +13 -12
  534. package/lib/descriptions/useFetchData.js +21 -12
  535. package/lib/field/AllProField.d.ts +8 -34
  536. package/lib/field/AllProField.js +175 -275
  537. package/lib/field/ProFieldCore.d.ts +23 -0
  538. package/lib/field/ProFieldCore.js +83 -0
  539. package/lib/field/PureProField.d.ts +9 -39
  540. package/lib/field/PureProField.js +60 -112
  541. package/lib/field/ValueTypeToComponent.d.ts +4 -1
  542. package/lib/field/ValueTypeToComponent.js +255 -673
  543. package/lib/field/components/Cascader/FieldCascaderEdit.d.ts +17 -0
  544. package/lib/field/components/Cascader/FieldCascaderEdit.js +52 -0
  545. package/lib/field/components/Cascader/FieldCascaderLightEdit.d.ts +17 -0
  546. package/lib/field/components/Cascader/FieldCascaderLightEdit.js +75 -0
  547. package/lib/field/components/Cascader/FieldCascaderRead.d.ts +6 -0
  548. package/lib/field/components/Cascader/FieldCascaderRead.js +26 -0
  549. package/lib/field/components/Cascader/index.d.ts +7 -13
  550. package/lib/field/components/Cascader/index.js +39 -74
  551. package/lib/field/components/Cascader/types.d.ts +8 -0
  552. package/lib/field/components/Cascader/types.js +5 -0
  553. package/lib/field/components/Checkbox/FieldCheckboxEdit.d.ts +16 -0
  554. package/lib/field/components/Checkbox/FieldCheckboxEdit.js +48 -0
  555. package/lib/field/components/Checkbox/FieldCheckboxRead.d.ts +6 -0
  556. package/lib/field/components/Checkbox/FieldCheckboxRead.js +42 -0
  557. package/lib/field/components/Checkbox/index.d.ts +5 -9
  558. package/lib/field/components/Checkbox/index.js +31 -63
  559. package/lib/field/components/Checkbox/types.d.ts +6 -0
  560. package/lib/field/components/Checkbox/types.js +5 -0
  561. package/lib/field/components/Code/FieldCodeEdit.d.ts +10 -0
  562. package/lib/field/components/Code/FieldCodeEdit.js +35 -0
  563. package/lib/field/components/Code/FieldCodeRead.d.ts +14 -0
  564. package/lib/field/components/Code/FieldCodeRead.js +45 -0
  565. package/lib/field/components/Code/index.js +23 -65
  566. package/lib/field/components/Code/utils.d.ts +1 -0
  567. package/lib/field/components/Code/utils.js +19 -0
  568. package/lib/field/components/ColorPicker/FieldColorPickerEdit.d.ts +9 -0
  569. package/lib/field/components/ColorPicker/FieldColorPickerEdit.js +47 -0
  570. package/lib/field/components/ColorPicker/FieldColorPickerRead.d.ts +9 -0
  571. package/lib/field/components/ColorPicker/FieldColorPickerRead.js +36 -0
  572. package/lib/field/components/ColorPicker/index.d.ts +1 -1
  573. package/lib/field/components/ColorPicker/index.js +12 -63
  574. package/lib/field/components/DatePicker/FieldDatePickerEdit.d.ts +15 -0
  575. package/lib/field/components/DatePicker/FieldDatePickerEdit.js +47 -0
  576. package/lib/field/components/DatePicker/FieldDatePickerLightEdit.d.ts +17 -0
  577. package/lib/field/components/DatePicker/FieldDatePickerLightEdit.js +70 -0
  578. package/lib/field/components/DatePicker/FieldDatePickerRead.d.ts +13 -0
  579. package/lib/field/components/DatePicker/FieldDatePickerRead.js +31 -0
  580. package/lib/field/components/DatePicker/datePickerUtils.d.ts +3 -0
  581. package/lib/field/components/DatePicker/datePickerUtils.js +39 -0
  582. package/lib/field/components/DatePicker/index.d.ts +3 -3
  583. package/lib/field/components/DatePicker/index.js +39 -90
  584. package/lib/field/components/Digit/FieldDigitEdit.d.ts +8 -0
  585. package/lib/field/components/Digit/FieldDigitEdit.js +32 -0
  586. package/lib/field/components/Digit/FieldDigitRead.d.ts +4 -0
  587. package/lib/field/components/Digit/FieldDigitRead.js +41 -0
  588. package/lib/field/components/Digit/index.d.ts +2 -4
  589. package/lib/field/components/Digit/index.js +24 -102
  590. package/lib/field/components/Digit/types.d.ts +4 -0
  591. package/lib/field/components/Digit/types.js +5 -0
  592. package/lib/field/components/DigitRange/FieldDigitRangeEdit.d.ts +16 -0
  593. package/lib/field/components/DigitRange/FieldDigitRangeEdit.js +93 -0
  594. package/lib/field/components/DigitRange/FieldDigitRangeRead.d.ts +4 -0
  595. package/lib/field/components/DigitRange/FieldDigitRangeRead.js +36 -0
  596. package/lib/field/components/DigitRange/index.d.ts +2 -8
  597. package/lib/field/components/DigitRange/index.js +30 -89
  598. package/lib/field/components/DigitRange/types.d.ts +8 -0
  599. package/lib/field/components/DigitRange/types.js +5 -0
  600. package/lib/field/components/FromNow/FieldFromNowEdit.d.ts +12 -0
  601. package/lib/field/components/FromNow/FieldFromNowEdit.js +39 -0
  602. package/lib/field/components/FromNow/FieldFromNowRead.d.ts +9 -0
  603. package/lib/field/components/FromNow/FieldFromNowRead.js +34 -0
  604. package/lib/field/components/FromNow/index.d.ts +1 -1
  605. package/lib/field/components/FromNow/index.js +15 -48
  606. package/lib/field/components/Image/FieldImageEdit.d.ts +8 -0
  607. package/lib/field/components/Image/FieldImageEdit.js +31 -0
  608. package/lib/field/components/Image/FieldImageRead.d.ts +4 -0
  609. package/lib/field/components/Image/FieldImageRead.js +32 -0
  610. package/lib/field/components/Image/index.d.ts +3 -6
  611. package/lib/field/components/Image/index.js +25 -34
  612. package/lib/field/components/Image/types.d.ts +5 -0
  613. package/lib/field/components/Image/types.js +5 -0
  614. package/lib/field/components/Money/FieldMoneyEdit.d.ts +13 -0
  615. package/lib/field/components/Money/FieldMoneyEdit.js +71 -0
  616. package/lib/field/components/Money/FieldMoneyRead.d.ts +9 -0
  617. package/lib/field/components/Money/FieldMoneyRead.js +33 -0
  618. package/lib/field/components/Money/InputNumberPopover.d.ts +11 -0
  619. package/lib/field/components/Money/InputNumberPopover.js +99 -0
  620. package/lib/field/components/Money/index.d.ts +2 -69
  621. package/lib/field/components/Money/index.js +45 -288
  622. package/lib/field/components/Money/moneyFormat.d.ts +13 -0
  623. package/lib/field/components/Money/moneyFormat.js +109 -0
  624. package/lib/field/components/Money/types.d.ts +37 -0
  625. package/lib/field/components/Money/types.js +5 -0
  626. package/lib/field/components/Password/FieldPasswordEdit.d.ts +12 -0
  627. package/lib/field/components/Password/FieldPasswordEdit.js +31 -0
  628. package/lib/field/components/Password/FieldPasswordRead.d.ts +12 -0
  629. package/lib/field/components/Password/FieldPasswordRead.js +42 -0
  630. package/lib/field/components/Password/index.js +22 -41
  631. package/lib/field/components/Percent/FieldPercentEdit.d.ts +8 -0
  632. package/lib/field/components/Percent/FieldPercentEdit.js +39 -0
  633. package/lib/field/components/Percent/FieldPercentRead.d.ts +9 -0
  634. package/lib/field/components/Percent/FieldPercentRead.js +47 -0
  635. package/lib/field/components/Percent/index.d.ts +2 -10
  636. package/lib/field/components/Percent/index.js +24 -62
  637. package/lib/field/components/Percent/types.d.ts +10 -0
  638. package/lib/field/components/Percent/types.js +5 -0
  639. package/lib/field/components/Percent/util.d.ts +1 -1
  640. package/lib/field/components/Progress/FieldProgressEdit.d.ts +10 -0
  641. package/lib/field/components/Progress/FieldProgressEdit.js +31 -0
  642. package/lib/field/components/Progress/FieldProgressRead.d.ts +10 -0
  643. package/lib/field/components/Progress/FieldProgressRead.js +38 -0
  644. package/lib/field/components/Progress/index.d.ts +2 -1
  645. package/lib/field/components/Progress/index.js +26 -59
  646. package/lib/field/components/Progress/utils.d.ts +1 -0
  647. package/lib/field/components/Progress/utils.js +18 -0
  648. package/lib/field/components/Radio/FieldRadioEdit.d.ts +16 -0
  649. package/lib/field/components/Radio/FieldRadioEdit.js +45 -0
  650. package/lib/field/components/Radio/FieldRadioRead.d.ts +6 -0
  651. package/lib/field/components/Radio/FieldRadioRead.js +26 -0
  652. package/lib/field/components/Radio/index.d.ts +4 -8
  653. package/lib/field/components/Radio/index.js +32 -46
  654. package/lib/field/components/Radio/types.d.ts +6 -0
  655. package/lib/field/components/Radio/types.js +5 -0
  656. package/lib/field/components/RangePicker/FieldRangePickerEdit.d.ts +15 -0
  657. package/lib/field/components/RangePicker/FieldRangePickerEdit.js +42 -0
  658. package/lib/field/components/RangePicker/FieldRangePickerLightEdit.d.ts +17 -0
  659. package/lib/field/components/RangePicker/FieldRangePickerLightEdit.js +74 -0
  660. package/lib/field/components/RangePicker/FieldRangePickerRead.d.ts +14 -0
  661. package/lib/field/components/RangePicker/FieldRangePickerRead.js +35 -0
  662. package/lib/field/components/RangePicker/index.d.ts +3 -3
  663. package/lib/field/components/RangePicker/index.js +46 -94
  664. package/lib/field/components/Rate/FieldRateEdit.d.ts +5 -0
  665. package/lib/field/components/Rate/FieldRateEdit.js +30 -0
  666. package/lib/field/components/Rate/FieldRateRead.d.ts +5 -0
  667. package/lib/field/components/Rate/FieldRateRead.js +34 -0
  668. package/lib/field/components/Rate/index.js +11 -41
  669. package/lib/field/components/Second/FieldSecondEdit.d.ts +8 -0
  670. package/lib/field/components/Second/FieldSecondEdit.js +35 -0
  671. package/lib/field/components/Second/FieldSecondRead.d.ts +4 -0
  672. package/lib/field/components/Second/FieldSecondRead.js +30 -0
  673. package/lib/field/components/Second/index.d.ts +4 -11
  674. package/lib/field/components/Second/index.js +22 -78
  675. package/lib/field/components/Second/types.d.ts +6 -0
  676. package/lib/field/components/Second/types.js +5 -0
  677. package/lib/field/components/Second/utils.d.ts +4 -0
  678. package/lib/field/components/Second/utils.js +36 -0
  679. package/lib/field/components/Segmented/FieldSegmentedEdit.d.ts +13 -0
  680. package/lib/field/components/Segmented/FieldSegmentedEdit.js +36 -0
  681. package/lib/field/components/Segmented/FieldSegmentedRead.d.ts +12 -0
  682. package/lib/field/components/Segmented/FieldSegmentedRead.js +33 -0
  683. package/lib/field/components/Segmented/index.d.ts +4 -4
  684. package/lib/field/components/Segmented/index.js +21 -38
  685. package/lib/field/components/Select/FieldSelectEdit.d.ts +2 -0
  686. package/lib/field/components/Select/FieldSelectEdit.js +12 -0
  687. package/lib/field/components/Select/FieldSelectLightEdit.d.ts +17 -0
  688. package/lib/field/components/Select/FieldSelectLightEdit.js +53 -0
  689. package/lib/field/components/Select/FieldSelectRead.d.ts +10 -0
  690. package/lib/field/components/Select/FieldSelectRead.js +28 -0
  691. package/lib/field/components/Select/FieldSelectSearchEdit.d.ts +17 -0
  692. package/lib/field/components/Select/FieldSelectSearchEdit.js +57 -0
  693. package/lib/field/components/Select/LightSelect/index.d.ts +3 -3
  694. package/lib/field/components/Select/SearchSelect/index.d.ts +0 -8
  695. package/lib/field/components/Select/SearchSelect/index.js +8 -22
  696. package/lib/field/components/Select/index.d.ts +6 -28
  697. package/lib/field/components/Select/index.js +46 -138
  698. package/lib/field/components/Select/types.d.ts +19 -0
  699. package/lib/field/components/Select/types.js +5 -0
  700. package/lib/field/components/Slider/FieldSliderEdit.d.ts +5 -0
  701. package/lib/field/components/Slider/FieldSliderEdit.js +33 -0
  702. package/lib/field/components/Slider/FieldSliderRead.d.ts +5 -0
  703. package/lib/field/components/Slider/FieldSliderRead.js +27 -0
  704. package/lib/field/components/Slider/index.js +11 -40
  705. package/lib/field/components/Switch/FieldSwitchEdit.d.ts +12 -0
  706. package/lib/field/components/Switch/FieldSwitchEdit.js +31 -0
  707. package/lib/field/components/Switch/FieldSwitchLightEdit.d.ts +12 -0
  708. package/lib/field/components/Switch/FieldSwitchLightEdit.js +48 -0
  709. package/lib/field/components/Switch/FieldSwitchRead.d.ts +10 -0
  710. package/lib/field/components/Switch/FieldSwitchRead.js +27 -0
  711. package/lib/field/components/Switch/index.d.ts +1 -1
  712. package/lib/field/components/Switch/index.js +29 -56
  713. package/lib/field/components/Text/FieldTextEdit.d.ts +12 -0
  714. package/lib/field/components/Text/FieldTextEdit.js +34 -0
  715. package/lib/field/components/Text/FieldTextRead.d.ts +10 -0
  716. package/lib/field/components/Text/FieldTextRead.js +32 -0
  717. package/lib/field/components/Text/index.js +24 -40
  718. package/lib/field/components/TextArea/FieldTextAreaEdit.d.ts +10 -0
  719. package/lib/field/components/TextArea/FieldTextAreaEdit.js +37 -0
  720. package/lib/field/components/TextArea/FieldTextAreaRead.d.ts +7 -0
  721. package/lib/field/components/TextArea/FieldTextAreaRead.js +31 -0
  722. package/lib/field/components/TextArea/index.js +13 -44
  723. package/lib/field/components/TimePicker/FieldTimePickerEdit.d.ts +12 -0
  724. package/lib/field/components/TimePicker/FieldTimePickerEdit.js +40 -0
  725. package/lib/field/components/TimePicker/FieldTimePickerLightEdit.d.ts +16 -0
  726. package/lib/field/components/TimePicker/FieldTimePickerLightEdit.js +69 -0
  727. package/lib/field/components/TimePicker/FieldTimePickerRead.d.ts +11 -0
  728. package/lib/field/components/TimePicker/FieldTimePickerRead.js +33 -0
  729. package/lib/field/components/TimePicker/FieldTimeRangePickerEdit.d.ts +12 -0
  730. package/lib/field/components/TimePicker/FieldTimeRangePickerEdit.js +37 -0
  731. package/lib/field/components/TimePicker/FieldTimeRangePickerLightEdit.d.ts +16 -0
  732. package/lib/field/components/TimePicker/FieldTimeRangePickerLightEdit.js +70 -0
  733. package/lib/field/components/TimePicker/FieldTimeRangePickerRead.d.ts +12 -0
  734. package/lib/field/components/TimePicker/FieldTimeRangePickerRead.js +35 -0
  735. package/lib/field/components/TimePicker/index.d.ts +3 -3
  736. package/lib/field/components/TimePicker/index.js +76 -150
  737. package/lib/field/components/TreeSelect/FieldTreeSelectEdit.d.ts +38 -0
  738. package/lib/field/components/TreeSelect/FieldTreeSelectEdit.js +93 -0
  739. package/lib/field/components/TreeSelect/FieldTreeSelectLightEdit.d.ts +35 -0
  740. package/lib/field/components/TreeSelect/FieldTreeSelectLightEdit.js +126 -0
  741. package/lib/field/components/TreeSelect/FieldTreeSelectRead.d.ts +7 -0
  742. package/lib/field/components/TreeSelect/FieldTreeSelectRead.js +29 -0
  743. package/lib/field/components/TreeSelect/index.d.ts +6 -13
  744. package/lib/field/components/TreeSelect/index.js +49 -103
  745. package/lib/field/components/TreeSelect/types.d.ts +9 -0
  746. package/lib/field/components/TreeSelect/types.js +5 -0
  747. package/lib/field/initDayjs.d.ts +1 -0
  748. package/lib/field/initDayjs.js +16 -0
  749. package/lib/field/internal/ProFieldLightWrapper.d.ts +16 -0
  750. package/lib/field/{FieldHOC/index.js → internal/ProFieldLightWrapper.js} +21 -5
  751. package/lib/field/internal/fieldMode.d.ts +14 -0
  752. package/lib/field/internal/fieldMode.js +29 -0
  753. package/lib/field/types.d.ts +30 -0
  754. package/lib/field/types.js +5 -0
  755. package/lib/form/BaseForm/BaseForm.d.ts +2 -2
  756. package/lib/form/BaseForm/BaseForm.js +114 -255
  757. package/lib/form/BaseForm/Submitter/index.d.ts +5 -6
  758. package/lib/form/BaseForm/Submitter/index.js +27 -29
  759. package/lib/form/BaseForm/index.d.ts +0 -1
  760. package/lib/form/BaseForm/index.js +0 -11
  761. package/lib/form/BaseForm/useUrlSync.d.ts +42 -0
  762. package/lib/form/BaseForm/useUrlSync.js +100 -0
  763. package/lib/form/FieldContext.d.ts +4 -3
  764. package/lib/form/components/Checkbox/index.js +0 -20
  765. package/lib/form/components/ColorPicker/index.d.ts +3 -22
  766. package/lib/form/components/ColorPicker/index.js +2 -1
  767. package/lib/form/components/DatePicker/BaseDatePicker.js +29 -1
  768. package/lib/form/components/DateRangePicker/BaseDateRanger.js +30 -2
  769. package/lib/form/components/DateRangePicker/DateMonthRangePicker.js +0 -6
  770. package/lib/form/components/DateRangePicker/DateQuarterRangePicker.js +0 -6
  771. package/lib/form/components/DateRangePicker/DateTimeRangePicker.js +0 -6
  772. package/lib/form/components/DateRangePicker/DateWeekRangePicker.js +0 -6
  773. package/lib/form/components/DateRangePicker/DateYearRangePicker.d.ts +1 -1
  774. package/lib/form/components/DateRangePicker/DateYearRangePicker.js +1 -7
  775. package/lib/form/components/DateRangePicker/index.js +0 -6
  776. package/lib/form/components/Dependency/index.d.ts +1 -1
  777. package/lib/form/components/Digit/DigitRange.d.ts +1 -1
  778. package/lib/form/components/Field/index.js +1 -1
  779. package/lib/form/components/FieldSet/index.d.ts +0 -2
  780. package/lib/form/components/FieldSet/index.js +0 -1
  781. package/lib/form/components/FormItem/FormItemRender/index.d.ts +1 -2
  782. package/lib/form/components/FormItem/index.d.ts +4 -5
  783. package/lib/form/components/FormItem/index.js +81 -98
  784. package/lib/form/components/FormItem/warpField.js +37 -23
  785. package/lib/form/components/List/ListContainer.js +16 -35
  786. package/lib/form/components/List/ListItem.d.ts +2 -2
  787. package/lib/form/components/List/ListItem.js +90 -90
  788. package/lib/form/components/List/index.js +8 -8
  789. package/lib/form/components/SchemaForm/index.d.ts +2 -1
  790. package/lib/form/components/SchemaForm/index.js +2 -2
  791. package/lib/form/components/SchemaForm/layoutType/StepsForm.d.ts +1 -1
  792. package/lib/form/components/SchemaForm/valueType/dependency.d.ts +2 -1
  793. package/lib/form/components/SchemaForm/valueType/divider.d.ts +2 -1
  794. package/lib/form/components/Select/index.d.ts +0 -2
  795. package/lib/form/components/UploadButton/index.d.ts +1 -1
  796. package/lib/form/index.d.ts +5 -3
  797. package/lib/form/index.js +11 -3
  798. package/lib/form/layouts/DrawerForm/index.js +53 -169
  799. package/{es/form/BaseForm → lib/form/layouts/LightFilter}/LightWrapper/index.d.ts +1 -1
  800. package/lib/form/{BaseForm → layouts/LightFilter}/LightWrapper/index.js +38 -20
  801. package/lib/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.d.ts +1 -1
  802. package/lib/form/{BaseForm → layouts/LightFilter}/LightWrapper/style.js +1 -1
  803. package/lib/form/layouts/LightFilter/index.d.ts +7 -33
  804. package/lib/form/layouts/LightFilter/index.js +16 -15
  805. package/lib/form/layouts/LightFilter/lightFilterFieldComponents.d.ts +104 -0
  806. package/lib/form/layouts/LightFilter/lightFilterFieldComponents.js +76 -0
  807. package/lib/form/layouts/LightFilter/style.js +2 -3
  808. package/lib/form/layouts/LoginForm/index.js +7 -27
  809. package/lib/form/layouts/LoginFormPage/index.js +7 -27
  810. package/lib/form/layouts/ModalForm/index.d.ts +1 -1
  811. package/lib/form/layouts/ModalForm/index.js +34 -140
  812. package/lib/form/layouts/ProForm/index.d.ts +3 -3
  813. package/lib/form/layouts/ProForm/index.js +6 -7
  814. package/lib/form/layouts/QueryFilter/Actions.js +1 -12
  815. package/lib/form/layouts/QueryFilter/index.js +26 -99
  816. package/lib/form/layouts/QueryFilter/processQueryFilterItems.d.ts +63 -0
  817. package/lib/form/layouts/QueryFilter/processQueryFilterItems.js +133 -0
  818. package/lib/form/layouts/StepsForm/StepForm.d.ts +2 -1
  819. package/lib/form/layouts/StepsForm/index.d.ts +60 -1
  820. package/lib/form/layouts/StepsForm/index.js +99 -38
  821. package/lib/form/layouts/_shared/LoginFormHeader.d.ts +16 -0
  822. package/lib/form/layouts/_shared/LoginFormHeader.js +52 -0
  823. package/lib/form/layouts/_shared/useOverlayForm.d.ts +60 -0
  824. package/lib/form/layouts/_shared/useOverlayForm.js +160 -0
  825. package/lib/form/layouts/index.d.ts +3 -2
  826. package/lib/form/layouts/index.js +9 -2
  827. package/lib/form/typing.d.ts +4 -1
  828. package/lib/form/typing.js +8 -1
  829. package/lib/layout/assert/Logo.d.ts +2 -1
  830. package/lib/layout/components/AppsLogoComponents/AppsLogo.d.ts +2 -1
  831. package/lib/layout/components/Help/index.d.ts +1 -1
  832. package/lib/layout/components/PageContainer/index.d.ts +1 -1
  833. package/lib/layout/components/PageHeader/style/index.d.ts +1 -1
  834. package/lib/layout/components/SettingDrawer/LayoutChange.d.ts +1 -1
  835. package/lib/layout/components/SettingDrawer/icon/group.d.ts +2 -1
  836. package/lib/layout/components/SettingDrawer/icon/sub.d.ts +2 -1
  837. package/lib/layout/components/SettingDrawer/index.js +1 -2
  838. package/lib/layout/components/SiderMenu/Arrow.d.ts +2 -1
  839. package/lib/list/Item.d.ts +3 -2
  840. package/lib/list/Item.js +6 -4
  841. package/lib/list/ListView.d.ts +2 -3
  842. package/lib/list/ListView.js +79 -67
  843. package/lib/list/ProListBase.d.ts +4 -0
  844. package/lib/list/ProListBase.js +6 -2
  845. package/lib/list/index.d.ts +4 -5
  846. package/lib/list/index.js +35 -35
  847. package/lib/provider/index.d.ts +7 -5
  848. package/lib/provider/index.js +55 -15
  849. package/lib/provider/intl.d.ts +47 -69
  850. package/lib/provider/intl.js +129 -85
  851. package/lib/provider/locale/ar_EG.d.ts +3 -72
  852. package/lib/provider/locale/ar_EG.js +8 -3
  853. package/lib/provider/locale/ca_ES.d.ts +3 -72
  854. package/lib/provider/locale/ca_ES.js +7 -2
  855. package/lib/provider/locale/cs_CZ.d.ts +3 -75
  856. package/lib/provider/locale/cs_CZ.js +4 -2
  857. package/lib/provider/locale/de_DE.d.ts +3 -72
  858. package/lib/provider/locale/de_DE.js +8 -3
  859. package/lib/provider/locale/en_GB.d.ts +3 -74
  860. package/lib/provider/locale/en_GB.js +5 -2
  861. package/lib/provider/locale/en_US.d.ts +3 -76
  862. package/lib/provider/locale/en_US.js +3 -2
  863. package/lib/provider/locale/es_ES.d.ts +3 -72
  864. package/lib/provider/locale/es_ES.js +7 -2
  865. package/lib/provider/locale/fa_IR.d.ts +3 -72
  866. package/lib/provider/locale/fa_IR.js +8 -3
  867. package/lib/provider/locale/fr_FR.d.ts +3 -72
  868. package/lib/provider/locale/fr_FR.js +11 -6
  869. package/lib/provider/locale/he_IL.d.ts +3 -75
  870. package/lib/provider/locale/he_IL.js +4 -2
  871. package/lib/provider/locale/hr_HR.d.ts +3 -72
  872. package/lib/provider/locale/hr_HR.js +7 -2
  873. package/lib/provider/locale/id_ID.d.ts +3 -72
  874. package/lib/provider/locale/id_ID.js +7 -2
  875. package/lib/provider/locale/it_IT.d.ts +3 -72
  876. package/lib/provider/locale/it_IT.js +13 -8
  877. package/lib/provider/locale/ja_JP.d.ts +3 -72
  878. package/lib/provider/locale/ja_JP.js +8 -3
  879. package/lib/provider/locale/ko_KR.d.ts +3 -72
  880. package/lib/provider/locale/ko_KR.js +9 -4
  881. package/lib/provider/locale/mn_MN.d.ts +3 -72
  882. package/lib/provider/locale/mn_MN.js +7 -2
  883. package/lib/provider/locale/ms_MY.d.ts +3 -72
  884. package/lib/provider/locale/ms_MY.js +10 -5
  885. package/lib/provider/locale/nl_NL.d.ts +3 -75
  886. package/lib/provider/locale/nl_NL.js +4 -2
  887. package/lib/provider/locale/pl_PL.d.ts +3 -72
  888. package/lib/provider/locale/pl_PL.js +12 -7
  889. package/lib/provider/locale/pt_BR.d.ts +3 -72
  890. package/lib/provider/locale/pt_BR.js +7 -2
  891. package/lib/provider/locale/ro_RO.d.ts +3 -75
  892. package/lib/provider/locale/ro_RO.js +4 -2
  893. package/lib/provider/locale/ru_RU.d.ts +3 -72
  894. package/lib/provider/locale/ru_RU.js +9 -4
  895. package/lib/provider/locale/sk_SK.d.ts +3 -75
  896. package/lib/provider/locale/sk_SK.js +4 -2
  897. package/lib/provider/locale/sr_RS.d.ts +3 -72
  898. package/lib/provider/locale/sr_RS.js +9 -4
  899. package/lib/provider/locale/sv_SE.d.ts +3 -75
  900. package/lib/provider/locale/sv_SE.js +4 -2
  901. package/lib/provider/locale/th_TH.d.ts +3 -75
  902. package/lib/provider/locale/th_TH.js +4 -2
  903. package/lib/provider/locale/tr_TR.d.ts +3 -72
  904. package/lib/provider/locale/tr_TR.js +9 -4
  905. package/lib/provider/locale/uk_UA.d.ts +3 -75
  906. package/lib/provider/locale/uk_UA.js +6 -4
  907. package/lib/provider/locale/uz_UZ.d.ts +3 -72
  908. package/lib/provider/locale/uz_UZ.js +7 -2
  909. package/lib/provider/locale/vi_VN.d.ts +3 -72
  910. package/lib/provider/locale/vi_VN.js +10 -5
  911. package/lib/provider/locale/zh_CN.d.ts +76 -62
  912. package/lib/provider/locale/zh_CN.js +13 -2
  913. package/lib/provider/locale/zh_HK.d.ts +3 -75
  914. package/lib/provider/locale/zh_HK.js +4 -2
  915. package/lib/provider/locale/zh_TW.d.ts +3 -75
  916. package/lib/provider/locale/zh_TW.js +4 -2
  917. package/lib/provider/typing/layoutToken.js +0 -1
  918. package/lib/provider/useStyle/index.d.ts +5 -0
  919. package/lib/provider/useStyle/index.js +29 -9
  920. package/lib/provider/utils/merge.d.ts +22 -1
  921. package/lib/provider/utils/merge.js +39 -20
  922. package/lib/skeleton/components/Descriptions/index.d.ts +2 -2
  923. package/lib/skeleton/components/List/index.d.ts +3 -3
  924. package/lib/table/Store/Provide.d.ts +19 -12
  925. package/lib/table/Store/Provide.js +90 -44
  926. package/lib/table/Table.d.ts +1 -1
  927. package/lib/table/Table.js +100 -74
  928. package/lib/table/TableSearch.js +26 -29
  929. package/lib/table/TableToolbar.d.ts +4 -1
  930. package/lib/table/TableToolbar.js +24 -27
  931. package/lib/table/components/Alert/index.js +9 -5
  932. package/lib/table/components/ColumnSetting/index.d.ts +3 -1
  933. package/lib/table/components/ColumnSetting/index.js +57 -20
  934. package/lib/table/components/DragSortTable/index.js +26 -19
  935. package/lib/table/components/Dropdown/index.d.ts +3 -6
  936. package/lib/table/components/Dropdown/index.js +27 -26
  937. package/lib/table/components/EditableTable/CellEditorTable.d.ts +2 -1
  938. package/lib/table/components/EditableTable/CellEditorTable.js +59 -35
  939. package/lib/table/components/EditableTable/RowEditorTable.d.ts +2 -1
  940. package/lib/table/components/EditableTable/RowEditorTable.js +48 -33
  941. package/lib/table/components/EditableTable/index.d.ts +1 -1
  942. package/lib/table/components/EditableTable/index.js +129 -120
  943. package/lib/table/components/Form/FormRender.d.ts +1 -1
  944. package/lib/table/components/Form/FormRender.js +14 -23
  945. package/lib/table/components/Form/index.d.ts +1 -1
  946. package/lib/table/components/Form/index.js +20 -42
  947. package/lib/table/components/ListToolBar/HeaderMenu.js +6 -7
  948. package/lib/table/components/ListToolBar/index.js +78 -104
  949. package/lib/table/components/ToolBar/DensityIcon.d.ts +3 -3
  950. package/lib/table/components/ToolBar/DensityIcon.js +5 -7
  951. package/lib/table/components/ToolBar/FullscreenIcon.d.ts +2 -2
  952. package/lib/table/components/ToolBar/FullscreenIcon.js +18 -17
  953. package/lib/table/components/ToolBar/index.d.ts +4 -2
  954. package/lib/table/components/ToolBar/index.js +33 -39
  955. package/lib/table/index.d.ts +3 -8
  956. package/lib/table/index.js +3 -112
  957. package/lib/table/typing.d.ts +5 -5
  958. package/lib/table/useFetchData.js +71 -25
  959. package/lib/table/utils/cellRenderToFromItem.d.ts +6 -0
  960. package/lib/table/utils/cellRenderToFromItem.js +54 -28
  961. package/lib/table/utils/columnRender.d.ts +1 -1
  962. package/lib/table/utils/genProColumnToColumn.js +1 -1
  963. package/lib/table/utils/index.d.ts +23 -1
  964. package/lib/table/utils/index.js +62 -1
  965. package/lib/table/utils/useDragSort.d.ts +1 -1
  966. package/lib/table/utils/usePageInfo.js +2 -3
  967. package/lib/utils/components/DropdownFooter/index.d.ts +1 -1
  968. package/lib/utils/components/ErrorBoundary/index.d.ts +1 -1
  969. package/lib/utils/components/InlineErrorFormItem/index.d.ts +2 -1
  970. package/lib/utils/conversionMomentValue/index.d.ts +9 -4
  971. package/lib/utils/conversionMomentValue/index.js +57 -21
  972. package/lib/utils/dateArrayFormatter/index.js +12 -2
  973. package/lib/utils/genCopyable/index.d.ts +1 -1
  974. package/lib/utils/hooks/useUrlSearchParams/index.d.ts +6 -0
  975. package/lib/utils/hooks/useUrlSearchParams/index.js +151 -0
  976. package/lib/utils/index.d.ts +3 -2
  977. package/lib/utils/index.js +15 -0
  978. package/lib/utils/nanoid/index.js +3 -2
  979. package/lib/utils/parseValueToMoment/index.d.ts +6 -1
  980. package/lib/utils/parseValueToMoment/index.js +74 -6
  981. package/lib/utils/proFieldParsingText/index.d.ts +7 -1
  982. package/lib/utils/proFieldParsingText/index.js +8 -5
  983. package/lib/utils/transformKeySubmitValue/index.d.ts +3 -1
  984. package/lib/utils/transformKeySubmitValue/index.js +108 -80
  985. package/lib/utils/typing.d.ts +29 -62
  986. package/lib/utils/typing.js +90 -1
  987. package/lib/utils/useEditableArray/index.d.ts +21 -5
  988. package/lib/utils/useEditableArray/index.js +189 -107
  989. package/lib/utils/useEditableMap/index.d.ts +10 -3
  990. package/lib/utils/useEditableMap/index.js +133 -71
  991. package/lib/utils/useMediaQuery/index.d.ts +29 -36
  992. package/lib/utils/useMediaQuery/index.js +104 -90
  993. package/lib/utils/useMediaQuery/query.d.ts +7 -0
  994. package/lib/utils/useMediaQuery/query.js +32 -15
  995. package/package.json +45 -54
  996. package/es/field/FieldHOC/index.d.ts +0 -7
  997. package/lib/field/FieldHOC/index.d.ts +0 -7
@@ -1,87 +1,146 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.useEditableMap = useEditableMap;
7
8
  var _util = require("@rc-component/util");
8
9
  var _antd = require("antd");
10
+ var _set = _interopRequireDefault(require("lodash-es/set"));
9
11
  var _react = require("react");
10
12
  var _ = require("..");
11
13
  var _provider = require("../../provider");
12
14
  var _useEditableArray = require("../useEditableArray");
13
15
  /**
14
- * 显示警告信息
15
- * @param messageStr
16
+ * 把 RecordKey 规范成统一的 string 形式 key(用于 Map 索引 / Set 成员判断)。
17
+ * RecordKey = React.Key | React.Key[],统一转 string 避免 number/string 不一致。
18
+ */
19
+ const normalizeKeyToString = recordKey => String((0, _useEditableArray.recordKeyToString)(recordKey));
20
+
21
+ /**
22
+ * 把 RecordKey 转成 lodash set/get 用的路径数组,统一为 string 段。
23
+ * 例如:'name' → ['name'],['address','city'] → ['address','city'],123 → ['123']
24
+ */
25
+ const recordKeyToPath = recordKey => {
26
+ return Array.isArray(recordKey) ? recordKey.map(segment => String(segment)) : [String(recordKey)];
27
+ };
28
+
29
+ /**
30
+ * 显示警告信息(仅在 single 模式拦截重复编辑时调用)。
31
+ * NOTE: 使用 antd `message` 静态方法在 antd 5 下无法消费 ConfigProvider 的主题,
32
+ * 但替换为 `App.useApp()` 需要业务方在外层包裹 `<App />`,会有破坏性。
33
+ * 这里保留静态方法兼容历史调用,建议消费方自行包裹 `<App />` 以获得正确主题。
16
34
  */
17
35
  const warning = messageStr => {
18
- return _antd.message.warning(messageStr);
36
+ _antd.message.warning(messageStr);
19
37
  };
38
+
20
39
  /**
21
- * 使用map 来删除数据,性能一般 但是准确率比较高
22
- *
23
- * @param params
24
- * @param action
40
+ * recordKey 路径深度合并到 data 上:
41
+ * - 顶层 key(如 'name'):等价于 `{ ...data, ...{ name: row.name } }`,但只取该路径
42
+ * - 嵌套数组 key(如 ['address','city']):仅更新 data.address.city,不会把 data.address 整个替换掉
43
+ * 这避免了之前 `{ ...data, ...row }` 顶层合并导致兄弟字段(如 data.address.zipcode)被丢失的问题。
25
44
  */
26
45
  function editableRowByKey({
27
46
  data,
28
- row
47
+ row,
48
+ key
29
49
  }) {
30
- return {
31
- ...data,
32
- ...row
33
- };
50
+ const path = recordKeyToPath(key);
51
+ const value = (0, _util.get)(row, path);
52
+ // 当 row 路径上没有目标值时(典型场景:受控外部 form 直接 setFieldsValue),
53
+ // 退回到顶层合并语义,保持向后兼容。
54
+ if (value === undefined) {
55
+ return {
56
+ ...data,
57
+ ...row
58
+ };
59
+ }
60
+ // lodash set 会原地修改对象,先做浅拷贝避免污染调用方的引用。
61
+ return (0, _set.default)({
62
+ ...data
63
+ }, path, value);
34
64
  }
35
65
  /**
36
- * 一个方便的hooks 用于维护编辑的状态
66
+ * 单条记录场景下的"行内编辑"状态管理 hook(与 useEditableArray 平行设计,
67
+ * useEditableArray 服务于数组场景如 ProTable,本 hook 服务于 ProDescriptions 等单记录场景)。
68
+ *
69
+ * 设计要点:
70
+ * 1. `type='single'`(默认)下,已有任意字段处于编辑态时,再次发起 startEditable 会被拒绝并弹 toast,
71
+ * 用户必须先 cancel/save 当前编辑行才能编辑别的字段。这是产品刻意设计(受测试 `📝 单行模式下应该阻止同时编辑多个字段` 锁定),
72
+ * 与某些同类组件"切换式"行为不同;如需切换,需显式传 `type='multiple'` 并自行约束最多一行。
73
+ * 2. 多行模式(`type='multiple'`)支持任意多个字段同时编辑,每个字段进入编辑态前的快照按 key 存到 `preEditRowRefs` Map 中。
37
74
  *
38
75
  * @param props
39
76
  */
40
77
  function useEditableMap(props) {
41
78
  /**
42
- * 点击开始编辑之前的保存数据用的
79
+ * 多行编辑场景下,按 recordKey 缓存每一行进入编辑前的快照(允许 null 表示新建行)。
80
+ * NOTE: 旧版同时维护了 `preEditRowRef`(单引用),但在 multiple 模式下会被新行覆盖,
81
+ * 导致取消时还原成别人的数据,已删除。actionRender 透传 `preEditRowRef` 时按当前 key
82
+ * 从 Map 取最新快照临时构造一个 ref,保证 defaultActionRender 拿到的是正确的快照。
43
83
  */
44
- const preEditRowRef = (0, _react.useRef)(null);
45
84
  const preEditRowRefs = (0, _react.useRef)(new Map());
46
- const editableType = props.type || 'single';
85
+
86
+ // 用 ?? 而非 ||,更准确表达"undefined 时取默认"的语义(type 不会传 falsy 但合法的值)
87
+ const editableType = props.type ?? 'single';
47
88
 
48
89
  // Internationalization
49
90
  const intl = (0, _provider.useIntl)();
50
91
  const [editableKeys, setEditableRowKeysInner] = (0, _util.useControlledState)([], props.editableKeys);
92
+
93
+ /**
94
+ * 影子 ref,存放当前最新的 editableKeys。
95
+ * NOTE: 配合 useRefFunction 使用——后者保证函数引用稳定但闭包永远是渲染时最新的,
96
+ * 但我们需要"调用时最新"(例如 onSave 内连续调用 cancelEditable 时 React 还没 commit),
97
+ * 所以用 ref 保留同步影子。
98
+ */
99
+ const editableKeysRef = (0, _react.useRef)(editableKeys);
100
+ (0, _react.useEffect)(() => {
101
+ editableKeysRef.current = editableKeys;
102
+ }, [editableKeys]);
103
+
104
+ /**
105
+ * 把 onChange/dataSource 锁进 ref,避免每次 prop 变化都让 setEditableRowKeys 重建引用。
106
+ * 同时修正 onChange 第二参数语义:旧版直接传 props.dataSource(整条记录),
107
+ * 现在按 next keys 取出真正在编辑的字段值数组(与 useEditableArray 行为对齐)。
108
+ */
109
+ const triggerOnChange = (0, _.useRefFunction)(nextKeys => {
110
+ if (!props.onChange) return;
111
+ const editingRows = nextKeys.map(key => (0, _util.get)(props.dataSource, [String(key)]));
112
+ props.onChange(nextKeys, editingRows);
113
+ });
51
114
  const setEditableRowKeys = (0, _react.useCallback)(updater => {
52
115
  setEditableRowKeysInner(prev => {
53
- const next = typeof updater === 'function' ? updater(prev) : updater;
54
- props?.onChange?.(next, props.dataSource);
116
+ let next = typeof updater === 'function' ? updater(prev) : updater;
117
+ // single 模式下统一在入口截断,保证 state 与 editableKeysSet 一致。
118
+ // 旧版只在 editableKeysSet 里 slice(0,1),导致 state 里残留多余 key 但 isEditable 看不到。
119
+ if (editableType === 'single' && next.length > 1) {
120
+ next = next.slice(0, 1);
121
+ }
122
+ triggerOnChange(next);
55
123
  return next;
56
124
  });
57
- }, [props.onChange, props.dataSource]);
125
+ }, [setEditableRowKeysInner, triggerOnChange, editableType]);
58
126
 
59
127
  /** 一个用来标志的set 提供了方便的 api 来去重什么的 */
60
128
  const editableKeysSet = (0, _react.useMemo)(() => {
61
- const keys = editableType === 'single' ? editableKeys?.slice(0, 1) || [] : editableKeys || [];
62
- return new Set(keys.map(key => String(key)));
63
- }, [editableKeys, editableType]);
129
+ return new Set((editableKeys || []).map(key => String(key)));
130
+ }, [editableKeys]);
64
131
 
65
- /**
66
- * 检查 key 是否在编辑列表中
67
- * 使用 editableKeysSet 进行快速查找,性能更好
68
- */
69
- const checkKeyInEditableList = (0, _.useRefFunction)(recordKey => {
70
- const keyStr = String((0, _useEditableArray.recordKeyToString)(recordKey));
71
- return editableKeysSet.has(keyStr);
132
+ /** 这行是不是编辑状态。useRefFunction 保证引用稳定且闭包永远最新。 */
133
+ const isEditable = (0, _.useRefFunction)(recordKey => {
134
+ return editableKeysSet.has(normalizeKeyToString(recordKey));
72
135
  });
73
136
 
74
- /** 这行是不是编辑状态 */
75
- const isEditable = (0, _react.useCallback)(recordKey => {
76
- return checkKeyInEditableList(recordKey);
77
- }, [checkKeyInEditableList]);
78
-
79
137
  /**
80
- * 验证是否可以开始编辑
138
+ * 验证是否可以开始编辑(仅 single 模式下生效)。
139
+ * 用 editableKeysRef 读最新值,避免连续调用时拿到陈旧快照。
81
140
  */
82
141
  const validateCanStartEdit = (0, _.useRefFunction)(() => {
83
- // 如果是单行模式,检查是否已有编辑中的行
84
- if (editableType === 'single' && editableKeys && editableKeys.length > 0) {
142
+ const currentKeys = editableKeysRef.current;
143
+ if (editableType === 'single' && currentKeys && currentKeys.length > 0) {
85
144
  warning(props.onlyOneLineEditorAlertMessage || intl.getMessage('editableTable.onlyOneLineEditor', '只能同时编辑一行'));
86
145
  return false;
87
146
  }
@@ -92,26 +151,24 @@ function useEditableMap(props) {
92
151
  * 进入编辑状态
93
152
  *
94
153
  * @param recordKey
95
- * @param recordValue
154
+ * @param recordValue 显式传入的"编辑前快照",未传则从 dataSource 按 key 路径取
96
155
  */
97
156
  const startEditable = (0, _.useRefFunction)((recordKey, recordValue) => {
98
- // 验证是否可以开始编辑
99
157
  if (!validateCanStartEdit()) {
100
158
  return false;
101
159
  }
102
- const keyStr = String((0, _useEditableArray.recordKeyToString)(recordKey));
160
+ const keyStr = normalizeKeyToString(recordKey);
103
161
 
104
- // 检查是否已经在编辑列表中,避免重复添加
105
- if (checkKeyInEditableList(recordKey)) {
162
+ // 已经在编辑列表中,幂等返回成功
163
+ if (isEditable(recordKey)) {
106
164
  return true;
107
165
  }
108
166
 
109
- // 保存编辑前的数据
110
- preEditRowRef.current = recordValue ?? (0, _util.get)(props.dataSource, Array.isArray(recordKey) ? recordKey : [recordKey]) ?? null;
111
- preEditRowRefs.current.set(String((0, _useEditableArray.recordKeyToString)(recordKey)), preEditRowRef.current);
112
-
113
- // 更新编辑 keys(不直接修改 editableKeysSet)
114
- const newKeys = editableType === 'single' ? [keyStr] : [...(editableKeys || []), keyStr];
167
+ // 保存编辑前的数据到 Map(按 recordKey 索引,多行场景互不干扰)
168
+ const snapshot = recordValue ?? (0, _util.get)(props.dataSource, recordKeyToPath(recordKey)) ?? null;
169
+ preEditRowRefs.current.set(keyStr, snapshot);
170
+ const currentKeys = editableKeysRef.current;
171
+ const newKeys = editableType === 'single' ? [keyStr] : [...(currentKeys || []), keyStr];
115
172
  setEditableRowKeys(newKeys);
116
173
  return true;
117
174
  });
@@ -122,32 +179,30 @@ function useEditableMap(props) {
122
179
  * @param recordKey
123
180
  */
124
181
  const cancelEditable = (0, _.useRefFunction)(recordKey => {
125
- const keyStr = String((0, _useEditableArray.recordKeyToString)(recordKey));
126
-
127
- // 检查是否在编辑列表中
128
- if (!checkKeyInEditableList(recordKey)) {
182
+ const keyStr = normalizeKeyToString(recordKey);
183
+ if (!isEditable(recordKey)) {
129
184
  return true;
130
185
  }
131
186
 
132
- // 更新编辑 keys(不直接修改 editableKeysSet)
133
- const newKeys = (editableKeys || []).filter(key => String(key) !== keyStr);
187
+ // editableKeysRef 读最新值,避免快速连续调用时基于陈旧 editableKeys 计算
188
+ const newKeys = (editableKeysRef.current || []).filter(key => String(key) !== keyStr);
134
189
  setEditableRowKeys(newKeys);
135
190
  return true;
136
191
  });
137
192
 
138
193
  /**
139
- * 取消编辑的回调
194
+ * 取消编辑的回调(透传给 props.onCancel,后者返回 false 视为失败、其他视为成功)。
195
+ * NOTE: "false 即失败" 是与 RowEditableConfig 共用的隐式协议,类型上是 `Promise<any | void>`,
196
+ * 这里在文档里显式说明便于消费方理解。
140
197
  */
141
198
  const onCancel = (0, _.useRefFunction)(async (recordKey, editRow, originRow, newLine) => {
142
199
  const success = await props?.onCancel?.(recordKey, editRow, originRow, newLine);
143
- if (success === false) {
144
- return false;
145
- }
146
- return true;
200
+ return success !== false;
147
201
  });
148
202
 
149
203
  /**
150
- * 保存编辑的回调
204
+ * 保存编辑的回调(透传给 props.onSave,后者返回 false 视为失败、其他视为成功)。
205
+ * 成功后:1) 退出编辑态 2) 清掉 preEditRowRefs Map 缓存 3) 按 recordKey 路径更新 dataSource。
151
206
  */
152
207
  const onSave = (0, _.useRefFunction)(async (recordKey, editRow, originRow) => {
153
208
  const success = await props?.onSave?.(recordKey, editRow, originRow);
@@ -157,26 +212,33 @@ function useEditableMap(props) {
157
212
 
158
213
  // 先退出编辑状态
159
214
  await cancelEditable(recordKey);
160
- preEditRowRefs.current.delete(String((0, _useEditableArray.recordKeyToString)(recordKey)));
215
+ preEditRowRefs.current.delete(normalizeKeyToString(recordKey));
161
216
 
162
- // 更新数据源
163
- const actionProps = {
217
+ // 按 key 路径深度合并到 dataSource,避免顶层合并把兄弟字段冲掉
218
+ props.setDataSource(editableRowByKey({
164
219
  data: props.dataSource,
165
220
  row: editRow,
166
- key: recordKey,
167
- childrenColumnName: props.childrenColumnName || 'children'
168
- };
169
- props.setDataSource(editableRowByKey(actionProps));
221
+ key: recordKey
222
+ }));
170
223
  return true;
171
224
  });
172
225
  const saveText = intl.getMessage('editableTable.action.save', '保存');
173
226
  const deleteText = intl.getMessage('editableTable.action.delete', '删除');
174
227
  const cancelText = intl.getMessage('editableTable.action.cancel', '取消');
228
+ // 提到外部,避免每次 actionRender 都重新拼模板字符串
229
+ const deletePopconfirmMessage = `${intl.getMessage('deleteThisLine', '删除此项')}?`;
175
230
 
176
231
  /**
177
- * 渲染操作按钮
232
+ * 渲染操作按钮。
233
+ * useCallback 依赖只列真正会变的:editableKeys / dataSource / props.actionRender / 文案 token。
234
+ * cancelEditable / onCancel / onSave 都是 useRefFunction 引用永远稳定,不必列。
178
235
  */
179
236
  const actionRender = (0, _react.useCallback)((key, config) => {
237
+ // 按当前 recordKey 从 Map 取真正的快照,构造一个临时 ref 透传给 defaultActionRender。
238
+ // 这避免了旧版用全局单引用 preEditRowRef 在多行场景被覆盖的 bug。
239
+ const snapshotRef = {
240
+ current: preEditRowRefs.current.get(normalizeKeyToString(key)) ?? null
241
+ };
180
242
  const renderConfig = {
181
243
  recordKey: key,
182
244
  cancelEditable,
@@ -186,10 +248,10 @@ function useEditableMap(props) {
186
248
  setEditableRowKeys,
187
249
  saveText,
188
250
  cancelText,
189
- preEditRowRef,
251
+ preEditRowRef: snapshotRef,
190
252
  preEditRowRefs,
191
253
  deleteText,
192
- deletePopconfirmMessage: `${intl.getMessage('deleteThisLine', '删除此项')}?`,
254
+ deletePopconfirmMessage,
193
255
  editorType: 'Map',
194
256
  ...config
195
257
  };
@@ -202,7 +264,7 @@ function useEditableMap(props) {
202
264
  });
203
265
  }
204
266
  return [renderResult.save, renderResult.delete, renderResult.cancel];
205
- }, [editableKeys, props.dataSource, cancelEditable, onCancel, onSave]);
267
+ }, [editableKeys, props.dataSource, props.actionRender, setEditableRowKeys, saveText, cancelText, deleteText, deletePopconfirmMessage, cancelEditable, onCancel, onSave]);
206
268
  return {
207
269
  editableKeys,
208
270
  setEditableRowKeys,
@@ -1,40 +1,33 @@
1
- export declare const MediaQueryEnum: {
2
- xs: {
3
- maxWidth: number;
4
- matchMedia: string;
5
- };
6
- sm: {
7
- minWidth: number;
8
- maxWidth: number;
9
- matchMedia: string;
10
- };
11
- md: {
12
- minWidth: number;
13
- maxWidth: number;
14
- matchMedia: string;
15
- };
16
- lg: {
17
- minWidth: number;
18
- maxWidth: number;
19
- matchMedia: string;
20
- };
21
- xl: {
22
- minWidth: number;
23
- maxWidth: number;
24
- matchMedia: string;
25
- };
26
- xxl: {
27
- minWidth: number;
28
- matchMedia: string;
29
- };
1
+ /**
2
+ * 单个断点描述:可选的 minWidth/maxWidth + 必须的 matchMedia 字符串。
3
+ */
4
+ type MediaQueryItem = {
5
+ minWidth?: number;
6
+ maxWidth?: number;
7
+ matchMedia: string;
30
8
  };
31
- export type MediaQueryKey = keyof typeof MediaQueryEnum;
9
+ type MediaQueryEnumShape = {
10
+ xs: MediaQueryItem;
11
+ sm: MediaQueryItem;
12
+ md: MediaQueryItem;
13
+ lg: MediaQueryItem;
14
+ xl: MediaQueryItem;
15
+ xxl: MediaQueryItem;
16
+ };
17
+ export type MediaQueryKey = keyof MediaQueryEnumShape;
18
+ /**
19
+ * 历史导出:保留 `MediaQueryEnum.xx.matchMedia` 直接访问的形状,但底层走懒初始化。
20
+ * 用 Proxy 把每次属性访问都转发到 `getMediaQueryEnum()`,外部代码无需感知。
21
+ */
22
+ export declare const MediaQueryEnum: MediaQueryEnumShape;
23
+ /**
24
+ * 同步读取当前屏幕命中的最大断点。SSR 下返回 undefined(无 window)。
25
+ * 仅用于类组件 / 非 React 环境的一次性查询;React 函数组件请使用 `useBreakpoint`。
26
+ */
27
+ export declare const getScreenClassName: () => MediaQueryKey | undefined;
32
28
  /**
33
- * loop query screen className
34
- * Array.find will throw a error
35
- * `Rendered more hooks than during the previous render.`
36
- * So should use Array.forEach
29
+ * 订阅当前屏幕的断点。返回 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl',
30
+ * 在所有断点都未命中(理论上不会发生)的兜底场景下返回 'md'。
37
31
  */
38
- export declare const getScreenClassName: () => "xxl" | "xl" | "lg" | "md" | "sm" | "xs" | undefined;
39
- declare const useBreakpoint: () => "xxl" | "xl" | "lg" | "md" | "sm" | "xs" | undefined;
32
+ declare const useBreakpoint: () => MediaQueryKey;
40
33
  export { useBreakpoint };
@@ -8,104 +8,118 @@ exports.useBreakpoint = exports.getScreenClassName = exports.MediaQueryEnum = vo
8
8
  var _antd = require("antd");
9
9
  var _react = require("react");
10
10
  var _query = _interopRequireDefault(require("./query"));
11
- const {
12
- getDesignToken
13
- } = _antd.theme;
14
- const token = getDesignToken();
15
- const MediaQueryEnum = exports.MediaQueryEnum = {
16
- xs: {
17
- maxWidth: token.screenXSMax,
18
- matchMedia: `(max-width: ${token.screenXSMax}px)`
19
- },
20
- sm: {
21
- minWidth: token.screenSMMin,
22
- maxWidth: token.screenSMMax,
23
- matchMedia: `(min-width: ${token.screenSMMin}px) and (max-width: ${token.screenSMMax}px)`
24
- },
25
- md: {
26
- minWidth: token.screenMDMin,
27
- maxWidth: token.screenMDMax,
28
- matchMedia: `(min-width: ${token.screenMDMin}px) and (max-width: ${token.screenMDMax}px)`
29
- },
30
- lg: {
31
- minWidth: token.screenLGMin,
32
- maxWidth: token.screenLGMax,
33
- matchMedia: `(min-width: ${token.screenLGMin}px) and (max-width: ${token.screenLGMax}px)`
11
+ /**
12
+ * 单个断点描述:可选的 minWidth/maxWidth + 必须的 matchMedia 字符串。
13
+ */
14
+
15
+ /**
16
+ * 按断点优先级从大到小排列,方便 useBreakpoint / getScreenClassName 用同一份顺序匹配。
17
+ */
18
+ const BREAKPOINT_PRIORITY = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];
19
+ let cachedMediaQueryEnum;
20
+
21
+ /**
22
+ * 懒求值的 MediaQueryEnum 工厂。
23
+ *
24
+ * 不能再像旧实现那样 `const token = theme.getDesignToken()` 写在模块顶层 ——
25
+ * 1. SSR 环境下模块 import 即触发 antd cssinjs 计算,可能产生 SSR warning;
26
+ * 2. 用户用 ConfigProvider 自定义 token 时,外层 token 修改后 MediaQueryEnum
27
+ * 仍是模块加载时的旧值,断点完全失效;
28
+ * 3. 测试环境下若 antd 还未初始化(mock 时序问题)会直接抛错。
29
+ *
30
+ * 改成首次访问时才求值并缓存:浏览器一次会话一般不会改 ConfigProvider token,
31
+ * 缓存命中即等价于模块顶层常量;SSR 也只会在真正用到时才触发求值。
32
+ */
33
+ const getMediaQueryEnum = () => {
34
+ if (cachedMediaQueryEnum) return cachedMediaQueryEnum;
35
+ const token = _antd.theme.getDesignToken();
36
+ cachedMediaQueryEnum = {
37
+ xs: {
38
+ maxWidth: token.screenXSMax,
39
+ matchMedia: `(max-width: ${token.screenXSMax}px)`
40
+ },
41
+ sm: {
42
+ minWidth: token.screenSMMin,
43
+ maxWidth: token.screenSMMax,
44
+ matchMedia: `(min-width: ${token.screenSMMin}px) and (max-width: ${token.screenSMMax}px)`
45
+ },
46
+ md: {
47
+ minWidth: token.screenMDMin,
48
+ maxWidth: token.screenMDMax,
49
+ matchMedia: `(min-width: ${token.screenMDMin}px) and (max-width: ${token.screenMDMax}px)`
50
+ },
51
+ lg: {
52
+ minWidth: token.screenLGMin,
53
+ maxWidth: token.screenLGMax,
54
+ matchMedia: `(min-width: ${token.screenLGMin}px) and (max-width: ${token.screenLGMax}px)`
55
+ },
56
+ xl: {
57
+ minWidth: token.screenXLMin,
58
+ maxWidth: token.screenXLMax,
59
+ matchMedia: `(min-width: ${token.screenXLMin}px) and (max-width: ${token.screenXLMax}px)`
60
+ },
61
+ xxl: {
62
+ minWidth: token.screenXXLMin,
63
+ matchMedia: `(min-width: ${token.screenXXLMin}px)`
64
+ }
65
+ };
66
+ return cachedMediaQueryEnum;
67
+ };
68
+
69
+ /**
70
+ * 历史导出:保留 `MediaQueryEnum.xx.matchMedia` 直接访问的形状,但底层走懒初始化。
71
+ * 用 Proxy 把每次属性访问都转发到 `getMediaQueryEnum()`,外部代码无需感知。
72
+ */
73
+ const MediaQueryEnum = exports.MediaQueryEnum = new Proxy({}, {
74
+ get(_target, prop) {
75
+ return getMediaQueryEnum()[prop];
34
76
  },
35
- xl: {
36
- minWidth: token.screenXLMin,
37
- maxWidth: token.screenXLMax,
38
- matchMedia: `(min-width: ${token.screenXLMin}px) and (max-width: ${token.screenXLMax}px)`
77
+ ownKeys() {
78
+ return Object.keys(getMediaQueryEnum());
39
79
  },
40
- xxl: {
41
- minWidth: token.screenXXLMin,
42
- matchMedia: `(min-width: ${token.screenXXLMin}px)`
80
+ getOwnPropertyDescriptor(_target, prop) {
81
+ const value = getMediaQueryEnum()[prop];
82
+ return value ? {
83
+ configurable: true,
84
+ enumerable: true,
85
+ value,
86
+ writable: false
87
+ } : undefined;
43
88
  }
44
- };
89
+ });
90
+
45
91
  /**
46
- * loop query screen className
47
- * Array.find will throw a error
48
- * `Rendered more hooks than during the previous render.`
49
- * So should use Array.forEach
92
+ * 同步读取当前屏幕命中的最大断点。SSR 下返回 undefined(无 window)。
93
+ * 仅用于类组件 / React 环境的一次性查询;React 函数组件请使用 `useBreakpoint`。
50
94
  */
51
95
  const getScreenClassName = () => {
52
- let queryKey = undefined;
53
- // support ssr
54
- if (typeof window === 'undefined') {
55
- return queryKey;
56
- }
57
- const mediaQueryKey = Object.keys(MediaQueryEnum).find(key => {
58
- const {
59
- matchMedia
60
- } = MediaQueryEnum[key];
61
- if (window.matchMedia(matchMedia).matches) {
62
- return true;
63
- }
64
- return false;
65
- });
66
- queryKey = mediaQueryKey;
67
- return queryKey;
96
+ if (typeof window === 'undefined') return undefined;
97
+ const enumValue = getMediaQueryEnum();
98
+ return BREAKPOINT_PRIORITY.find(key => window.matchMedia(enumValue[key].matchMedia).matches);
68
99
  };
100
+
101
+ /**
102
+ * 订阅当前屏幕的断点。返回 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl',
103
+ * 在所有断点都未命中(理论上不会发生)的兜底场景下返回 'md'。
104
+ */
69
105
  exports.getScreenClassName = getScreenClassName;
70
106
  const useBreakpoint = () => {
71
- const isMd = (0, _query.default)(MediaQueryEnum.md.matchMedia);
72
- const isLg = (0, _query.default)(MediaQueryEnum.lg.matchMedia);
73
- const isXxl = (0, _query.default)(MediaQueryEnum.xxl.matchMedia);
74
- const isXl = (0, _query.default)(MediaQueryEnum.xl.matchMedia);
75
- const isSm = (0, _query.default)(MediaQueryEnum.sm.matchMedia);
76
- const isXs = (0, _query.default)(MediaQueryEnum.xs.matchMedia);
77
- const [colSpan, setColSpan] = (0, _react.useState)(getScreenClassName());
78
- (0, _react.useEffect)(() => {
79
- if (process.env.NODE_ENV === 'TEST') {
80
- setColSpan(process.env.USE_MEDIA || 'md');
81
- return;
82
- }
83
- if (isXxl) {
84
- setColSpan('xxl');
85
- return;
86
- }
87
- if (isXl) {
88
- setColSpan('xl');
89
- return;
90
- }
91
- if (isLg) {
92
- setColSpan('lg');
93
- return;
94
- }
95
- if (isMd) {
96
- setColSpan('md');
97
- return;
98
- }
99
- if (isSm) {
100
- setColSpan('sm');
101
- return;
102
- }
103
- if (isXs) {
104
- setColSpan('xs');
105
- return;
106
- }
107
- setColSpan('md');
108
- }, [isMd, isLg, isXxl, isXl, isSm, isXs]);
109
- return colSpan;
107
+ const enumValue = getMediaQueryEnum();
108
+ // 6 useMediaQuery 调用顺序必须稳定,不能放到循环/条件里
109
+ const isXs = (0, _query.default)(enumValue.xs.matchMedia);
110
+ const isSm = (0, _query.default)(enumValue.sm.matchMedia);
111
+ const isMd = (0, _query.default)(enumValue.md.matchMedia);
112
+ const isLg = (0, _query.default)(enumValue.lg.matchMedia);
113
+ const isXl = (0, _query.default)(enumValue.xl.matchMedia);
114
+ const isXxl = (0, _query.default)(enumValue.xxl.matchMedia);
115
+ return (0, _react.useMemo)(() => {
116
+ if (isXxl) return 'xxl';
117
+ if (isXl) return 'xl';
118
+ if (isLg) return 'lg';
119
+ if (isMd) return 'md';
120
+ if (isSm) return 'sm';
121
+ if (isXs) return 'xs';
122
+ return 'md';
123
+ }, [isXxl, isXl, isLg, isMd, isSm, isXs]);
110
124
  };
111
125
  exports.useBreakpoint = useBreakpoint;
@@ -1 +1,8 @@
1
+ /**
2
+ * 订阅一个 CSS media query,返回当前是否匹配。
3
+ *
4
+ * SSR 行为:
5
+ * - 服务端首次渲染恒定返回 false(避免 hydration mismatch,但首屏可能闪一下)。
6
+ * - 客户端 mount 后立即拿到真实值并触发一次 setState 更新。
7
+ */
1
8
  export default function useMediaQuery(mediaQuery: string): boolean;