feffery_antd_components 0.3.15 → 0.4.0-rc5

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 (438) hide show
  1. package/DESCRIPTION +1 -1
  2. package/NAMESPACE +2 -2
  3. package/Project.toml +1 -1
  4. package/README-en_US.md +8 -1
  5. package/README.md +22 -1
  6. package/feffery_antd_components/AntdAccordion.py +71 -21
  7. package/feffery_antd_components/AntdAffix.py +38 -21
  8. package/feffery_antd_components/AntdAlert.py +39 -21
  9. package/feffery_antd_components/AntdAnchor.py +38 -21
  10. package/feffery_antd_components/AntdAvatar.py +53 -21
  11. package/feffery_antd_components/AntdAvatarGroup.py +81 -30
  12. package/feffery_antd_components/AntdBackTop.py +35 -21
  13. package/feffery_antd_components/AntdBadge.py +59 -21
  14. package/feffery_antd_components/AntdBreadcrumb.py +81 -23
  15. package/feffery_antd_components/AntdButton.py +70 -23
  16. package/feffery_antd_components/AntdCalendar.py +66 -24
  17. package/feffery_antd_components/AntdCard.py +134 -29
  18. package/feffery_antd_components/AntdCardGrid.py +33 -21
  19. package/feffery_antd_components/AntdCardMeta.py +33 -21
  20. package/feffery_antd_components/AntdCarousel.py +56 -23
  21. package/feffery_antd_components/AntdCascader.py +72 -26
  22. package/feffery_antd_components/AntdCenter.py +33 -21
  23. package/feffery_antd_components/AntdCheckCard.py +47 -22
  24. package/feffery_antd_components/AntdCheckCardGroup.py +48 -22
  25. package/feffery_antd_components/AntdCheckableTag.py +34 -21
  26. package/feffery_antd_components/AntdCheckbox.py +47 -22
  27. package/feffery_antd_components/AntdCheckboxGroup.py +53 -22
  28. package/feffery_antd_components/AntdCol.py +108 -21
  29. package/feffery_antd_components/AntdCollapse.py +60 -22
  30. package/feffery_antd_components/AntdColorPicker.py +67 -23
  31. package/feffery_antd_components/AntdComment.py +67 -7
  32. package/feffery_antd_components/AntdCompact.py +33 -21
  33. package/feffery_antd_components/AntdConfigProvider.py +54 -19
  34. package/feffery_antd_components/AntdContent.py +31 -21
  35. package/feffery_antd_components/AntdCopyText.py +38 -23
  36. package/feffery_antd_components/AntdCountdown.py +53 -21
  37. package/feffery_antd_components/AntdCustomSkeleton.py +39 -21
  38. package/feffery_antd_components/AntdDatePicker.py +117 -28
  39. package/feffery_antd_components/AntdDateRangePicker.py +117 -28
  40. package/feffery_antd_components/AntdDescriptionItem.py +72 -27
  41. package/feffery_antd_components/AntdDescriptions.py +132 -33
  42. package/feffery_antd_components/AntdDivider.py +42 -21
  43. package/feffery_antd_components/AntdDraggerUpload.py +133 -23
  44. package/feffery_antd_components/AntdDrawer.py +71 -21
  45. package/feffery_antd_components/AntdDropdown.py +87 -22
  46. package/feffery_antd_components/AntdEmpty.py +90 -25
  47. package/feffery_antd_components/AntdFlex.py +37 -21
  48. package/feffery_antd_components/AntdFloatButton.py +38 -21
  49. package/feffery_antd_components/AntdFloatButtonGroup.py +44 -20
  50. package/feffery_antd_components/AntdFooter.py +31 -21
  51. package/feffery_antd_components/AntdForm.py +58 -21
  52. package/feffery_antd_components/AntdFormItem.py +61 -21
  53. package/feffery_antd_components/AntdFormRender.py +266 -6
  54. package/feffery_antd_components/AntdHeader.py +31 -21
  55. package/feffery_antd_components/AntdIcon.py +35 -21
  56. package/feffery_antd_components/AntdImage.py +56 -23
  57. package/feffery_antd_components/AntdImageGroup.py +54 -23
  58. package/feffery_antd_components/AntdInput.py +103 -24
  59. package/feffery_antd_components/AntdInputNumber.py +65 -22
  60. package/feffery_antd_components/AntdLayout.py +31 -21
  61. package/feffery_antd_components/AntdMentions.py +69 -23
  62. package/feffery_antd_components/AntdMenu.py +59 -22
  63. package/feffery_antd_components/AntdMessage.py +37 -24
  64. package/feffery_antd_components/AntdModal.py +183 -30
  65. package/feffery_antd_components/AntdNotification.py +59 -22
  66. package/feffery_antd_components/AntdOTP.py +49 -24
  67. package/feffery_antd_components/AntdPageHeader.py +37 -21
  68. package/feffery_antd_components/AntdPagination.py +56 -24
  69. package/feffery_antd_components/AntdParagraph.py +53 -23
  70. package/feffery_antd_components/AntdPictureUpload.py +146 -23
  71. package/feffery_antd_components/AntdPopconfirm.py +129 -18
  72. package/feffery_antd_components/AntdPopover.py +83 -30
  73. package/feffery_antd_components/AntdPopupCard.py +114 -24
  74. package/feffery_antd_components/AntdProgress.py +95 -26
  75. package/feffery_antd_components/AntdQRCode.py +53 -23
  76. package/feffery_antd_components/AntdRadioGroup.py +59 -22
  77. package/feffery_antd_components/AntdRate.py +47 -20
  78. package/feffery_antd_components/AntdResult.py +35 -21
  79. package/feffery_antd_components/AntdRibbon.py +34 -21
  80. package/feffery_antd_components/AntdRow.py +46 -21
  81. package/feffery_antd_components/AntdSegmented.py +69 -11
  82. package/feffery_antd_components/AntdSegmentedColoring.py +62 -23
  83. package/feffery_antd_components/AntdSelect.py +99 -27
  84. package/feffery_antd_components/AntdSider.py +39 -21
  85. package/feffery_antd_components/AntdSkeleton.py +66 -21
  86. package/feffery_antd_components/AntdSkeletonAvatar.py +33 -21
  87. package/feffery_antd_components/AntdSkeletonButton.py +34 -21
  88. package/feffery_antd_components/AntdSkeletonImage.py +30 -21
  89. package/feffery_antd_components/AntdSkeletonInput.py +32 -21
  90. package/feffery_antd_components/AntdSlider.py +99 -27
  91. package/feffery_antd_components/AntdSpace.py +52 -21
  92. package/feffery_antd_components/AntdSpin.py +45 -22
  93. package/feffery_antd_components/AntdSplitter.py +59 -21
  94. package/feffery_antd_components/AntdSpoiler.py +42 -23
  95. package/feffery_antd_components/AntdStatistic.py +44 -5
  96. package/feffery_antd_components/AntdSteps.py +52 -21
  97. package/feffery_antd_components/AntdSwitch.py +58 -9
  98. package/feffery_antd_components/AntdTable.py +384 -26
  99. package/feffery_antd_components/AntdTabs.py +98 -22
  100. package/feffery_antd_components/AntdTag.py +38 -21
  101. package/feffery_antd_components/AntdText.py +51 -23
  102. package/feffery_antd_components/AntdTimePicker.py +79 -13
  103. package/feffery_antd_components/AntdTimeRangePicker.py +70 -28
  104. package/feffery_antd_components/AntdTimeline.py +45 -21
  105. package/feffery_antd_components/AntdTitle.py +45 -23
  106. package/feffery_antd_components/AntdTooltip.py +91 -16
  107. package/feffery_antd_components/AntdTour.py +101 -23
  108. package/feffery_antd_components/AntdTransfer.py +85 -11
  109. package/feffery_antd_components/AntdTree.py +99 -22
  110. package/feffery_antd_components/AntdTreeSelect.py +95 -14
  111. package/feffery_antd_components/AntdUpload.py +152 -9
  112. package/feffery_antd_components/AntdWatermark.py +47 -21
  113. package/feffery_antd_components/Fragment.py +30 -18
  114. package/feffery_antd_components/__init__.py +0 -3
  115. package/feffery_antd_components/_icons.py +12 -0
  116. package/feffery_antd_components/_imports_.py +1 -5
  117. package/feffery_antd_components/alias.py +0 -4
  118. package/feffery_antd_components/async-antd_table.js +2 -2
  119. package/feffery_antd_components/async-data_display.js +1 -1
  120. package/feffery_antd_components/async-data_entry.js +4 -4
  121. package/feffery_antd_components/async-upload.js +2 -2
  122. package/feffery_antd_components/feffery_antd_components.min.js +10 -14
  123. package/feffery_antd_components/metadata.json +1 -1
  124. package/feffery_antd_components/package-info.json +4 -5
  125. package/images//345/205/254/344/274/227/345/217/267.png +0 -0
  126. package/images//347/237/245/350/257/206/346/230/237/347/220/203.jpg +0 -0
  127. package/package.json +4 -5
  128. package/setup.py +1 -1
  129. package/src/jl/'feffery'_antdaccordion.jl +1 -6
  130. package/src/jl/'feffery'_antdaffix.jl +2 -6
  131. package/src/jl/'feffery'_antdalert.jl +1 -6
  132. package/src/jl/'feffery'_antdanchor.jl +1 -6
  133. package/src/jl/'feffery'_antdavatar.jl +1 -6
  134. package/src/jl/'feffery'_antdavatargroup.jl +8 -9
  135. package/src/jl/'feffery'_antdbacktop.jl +1 -6
  136. package/src/jl/'feffery'_antdbadge.jl +1 -6
  137. package/src/jl/'feffery'_antdbreadcrumb.jl +8 -10
  138. package/src/jl/'feffery'_antdbutton.jl +2 -7
  139. package/src/jl/'feffery'_antdcalendar.jl +4 -7
  140. package/src/jl/'feffery'_antdcard.jl +19 -10
  141. package/src/jl/'feffery'_antdcardgrid.jl +1 -6
  142. package/src/jl/'feffery'_antdcardmeta.jl +1 -6
  143. package/src/jl/'feffery'_antdcarousel.jl +5 -8
  144. package/src/jl/'feffery'_antdcascader.jl +5 -8
  145. package/src/jl/'feffery'_antdcenter.jl +1 -6
  146. package/src/jl/'feffery'_antdcheckabletag.jl +1 -6
  147. package/src/jl/'feffery'_antdcheckbox.jl +3 -6
  148. package/src/jl/'feffery'_antdcheckboxgroup.jl +3 -6
  149. package/src/jl/'feffery'_antdcheckcard.jl +3 -6
  150. package/src/jl/'feffery'_antdcheckcardgroup.jl +3 -6
  151. package/src/jl/'feffery'_antdcol.jl +1 -6
  152. package/src/jl/'feffery'_antdcollapse.jl +1 -6
  153. package/src/jl/'feffery'_antdcolorpicker.jl +4 -7
  154. package/src/jl/'feffery'_antdcomment.jl +1 -1
  155. package/src/jl/'feffery'_antdcompact.jl +1 -6
  156. package/src/jl/'feffery'_antdconfigprovider.jl +2 -7
  157. package/src/jl/'feffery'_antdcontent.jl +1 -6
  158. package/src/jl/'feffery'_antdcopytext.jl +2 -7
  159. package/src/jl/'feffery'_antdcountdown.jl +4 -6
  160. package/src/jl/'feffery'_antdcustomskeleton.jl +1 -6
  161. package/src/jl/'feffery'_antddatepicker.jl +5 -8
  162. package/src/jl/'feffery'_antddaterangepicker.jl +5 -8
  163. package/src/jl/'feffery'_antddescriptionitem.jl +9 -8
  164. package/src/jl/'feffery'_antddescriptions.jl +18 -11
  165. package/src/jl/'feffery'_antddivider.jl +1 -6
  166. package/src/jl/'feffery'_antddraggerupload.jl +4 -7
  167. package/src/jl/'feffery'_antddrawer.jl +1 -6
  168. package/src/jl/'feffery'_antddropdown.jl +3 -7
  169. package/src/jl/'feffery'_antdempty.jl +14 -8
  170. package/src/jl/'feffery'_antdflex.jl +1 -6
  171. package/src/jl/'feffery'_antdfloatbutton.jl +1 -6
  172. package/src/jl/'feffery'_antdfloatbuttongroup.jl +4 -7
  173. package/src/jl/'feffery'_antdfooter.jl +1 -6
  174. package/src/jl/'feffery'_antdform.jl +1 -6
  175. package/src/jl/'feffery'_antdformitem.jl +1 -6
  176. package/src/jl/'feffery'_antdformrender.jl +1 -1
  177. package/src/jl/'feffery'_antdheader.jl +1 -6
  178. package/src/jl/'feffery'_antdicon.jl +1 -6
  179. package/src/jl/'feffery'_antdimage.jl +2 -7
  180. package/src/jl/'feffery'_antdimagegroup.jl +2 -7
  181. package/src/jl/'feffery'_antdinput.jl +4 -7
  182. package/src/jl/'feffery'_antdinputnumber.jl +4 -7
  183. package/src/jl/'feffery'_antdlayout.jl +1 -6
  184. package/src/jl/'feffery'_antdmentions.jl +4 -7
  185. package/src/jl/'feffery'_antdmenu.jl +1 -6
  186. package/src/jl/'feffery'_antdmessage.jl +1 -7
  187. package/src/jl/'feffery'_antdmodal.jl +27 -11
  188. package/src/jl/'feffery'_antdnotification.jl +7 -7
  189. package/src/jl/'feffery'_antdotp.jl +4 -7
  190. package/src/jl/'feffery'_antdpageheader.jl +1 -6
  191. package/src/jl/'feffery'_antdpagination.jl +2 -7
  192. package/src/jl/'feffery'_antdparagraph.jl +2 -7
  193. package/src/jl/'feffery'_antdpictureupload.jl +4 -7
  194. package/src/jl/'feffery'_antdpopconfirm.jl +10 -5
  195. package/src/jl/'feffery'_antdpopover.jl +9 -9
  196. package/src/jl/'feffery'_antdpopupcard.jl +17 -7
  197. package/src/jl/'feffery'_antdprogress.jl +6 -10
  198. package/src/jl/'feffery'_antdqrcode.jl +2 -7
  199. package/src/jl/'feffery'_antdradiogroup.jl +3 -6
  200. package/src/jl/'feffery'_antdrate.jl +3 -6
  201. package/src/jl/'feffery'_antdresult.jl +1 -6
  202. package/src/jl/'feffery'_antdribbon.jl +1 -6
  203. package/src/jl/'feffery'_antdrow.jl +1 -6
  204. package/src/jl/'feffery'_antdsegmented.jl +4 -2
  205. package/src/jl/'feffery'_antdsegmentedcoloring.jl +2 -7
  206. package/src/jl/'feffery'_antdselect.jl +5 -8
  207. package/src/jl/'feffery'_antdsider.jl +1 -6
  208. package/src/jl/'feffery'_antdskeleton.jl +1 -6
  209. package/src/jl/'feffery'_antdskeletonavatar.jl +1 -6
  210. package/src/jl/'feffery'_antdskeletonbutton.jl +1 -6
  211. package/src/jl/'feffery'_antdskeletonimage.jl +1 -6
  212. package/src/jl/'feffery'_antdskeletoninput.jl +1 -6
  213. package/src/jl/'feffery'_antdslider.jl +13 -11
  214. package/src/jl/'feffery'_antdspace.jl +1 -6
  215. package/src/jl/'feffery'_antdspin.jl +2 -7
  216. package/src/jl/'feffery'_antdsplitter.jl +3 -6
  217. package/src/jl/'feffery'_antdspoiler.jl +2 -7
  218. package/src/jl/'feffery'_antdsteps.jl +1 -6
  219. package/src/jl/'feffery'_antdswitch.jl +3 -1
  220. package/src/jl/'feffery'_antdtable.jl +5 -8
  221. package/src/jl/'feffery'_antdtabs.jl +1 -6
  222. package/src/jl/'feffery'_antdtag.jl +1 -6
  223. package/src/jl/'feffery'_antdtext.jl +2 -7
  224. package/src/jl/'feffery'_antdtimeline.jl +1 -6
  225. package/src/jl/'feffery'_antdtimepicker.jl +5 -3
  226. package/src/jl/'feffery'_antdtimerangepicker.jl +5 -8
  227. package/src/jl/'feffery'_antdtitle.jl +2 -7
  228. package/src/jl/'feffery'_antdtooltip.jl +9 -4
  229. package/src/jl/'feffery'_antdtour.jl +2 -7
  230. package/src/jl/'feffery'_antdtransfer.jl +4 -2
  231. package/src/jl/'feffery'_antdtree.jl +1 -6
  232. package/src/jl/'feffery'_antdtreeselect.jl +5 -4
  233. package/src/jl/'feffery'_antdupload.jl +4 -2
  234. package/src/jl/'feffery'_antdwatermark.jl +3 -6
  235. package/src/jl/'feffery'_fragment.jl +1 -6
  236. package/src/lib/components/dataDisplay/AntdAccordion.react.js +42 -28
  237. package/src/lib/components/dataDisplay/AntdAvatar.react.js +42 -25
  238. package/src/lib/components/dataDisplay/AntdAvatarGroup.react.js +50 -43
  239. package/src/lib/components/dataDisplay/AntdBadge.react.js +46 -26
  240. package/src/lib/components/dataDisplay/AntdCarousel.react.js +54 -35
  241. package/src/lib/components/dataDisplay/AntdCheckableTag.react.js +26 -22
  242. package/src/lib/components/dataDisplay/AntdCollapse.react.js +26 -51
  243. package/src/lib/components/dataDisplay/AntdComment.react.js +58 -18
  244. package/src/lib/components/dataDisplay/AntdCountdown.react.js +44 -22
  245. package/src/lib/components/dataDisplay/AntdEmpty.react.js +76 -30
  246. package/src/lib/components/dataDisplay/AntdImage.react.js +40 -26
  247. package/src/lib/components/dataDisplay/AntdImageGroup.react.js +38 -26
  248. package/src/lib/components/dataDisplay/AntdPopover.react.js +78 -48
  249. package/src/lib/components/dataDisplay/AntdQRCode.react.js +48 -34
  250. package/src/lib/components/dataDisplay/AntdRibbon.react.js +26 -22
  251. package/src/lib/components/dataDisplay/AntdSegmented.react.js +81 -37
  252. package/src/lib/components/dataDisplay/AntdSpoiler.react.js +40 -28
  253. package/src/lib/components/dataDisplay/AntdStatistic.react.js +19 -26
  254. package/src/lib/components/dataDisplay/AntdTable.react.js +140 -64
  255. package/src/lib/components/dataDisplay/AntdTabs.react.js +61 -28
  256. package/src/lib/components/dataDisplay/AntdTag.react.js +34 -25
  257. package/src/lib/components/dataDisplay/AntdTimeline.react.js +28 -23
  258. package/src/lib/components/dataDisplay/AntdTooltip.react.js +76 -33
  259. package/src/lib/components/dataDisplay/AntdTree.react.js +103 -45
  260. package/src/lib/components/dataDisplay/card/AntdCard.react.js +105 -38
  261. package/src/lib/components/dataDisplay/card/AntdCardGrid.react.js +24 -23
  262. package/src/lib/components/dataDisplay/card/AntdCardMeta.react.js +24 -20
  263. package/src/lib/components/dataDisplay/descriptions/AntdDescriptionItem.react.js +55 -31
  264. package/src/lib/components/dataDisplay/descriptions/AntdDescriptions.react.js +98 -43
  265. package/src/lib/components/dataEntry/AntdCalendar.react.js +50 -25
  266. package/src/lib/components/dataEntry/AntdCascader.react.js +96 -38
  267. package/src/lib/components/dataEntry/AntdCheckbox.react.js +50 -26
  268. package/src/lib/components/dataEntry/AntdCheckboxGroup.react.js +46 -23
  269. package/src/lib/components/dataEntry/AntdColorPicker.react.js +60 -33
  270. package/src/lib/components/dataEntry/AntdDatePicker.react.js +98 -40
  271. package/src/lib/components/dataEntry/AntdDateRangePicker.react.js +98 -39
  272. package/src/lib/components/dataEntry/AntdInput.react.js +96 -37
  273. package/src/lib/components/dataEntry/AntdInputNumber.react.js +86 -32
  274. package/src/lib/components/dataEntry/AntdMentions.react.js +60 -31
  275. package/src/lib/components/dataEntry/AntdOTP.react.js +53 -26
  276. package/src/lib/components/dataEntry/AntdRadioGroup.react.js +58 -30
  277. package/src/lib/components/dataEntry/AntdRate.react.js +54 -27
  278. package/src/lib/components/dataEntry/AntdSegmentedColoring.react.js +60 -33
  279. package/src/lib/components/dataEntry/AntdSelect.react.js +110 -44
  280. package/src/lib/components/dataEntry/AntdSlider.react.js +100 -41
  281. package/src/lib/components/dataEntry/AntdSwitch.react.js +54 -11
  282. package/src/lib/components/dataEntry/AntdTimePicker.react.js +92 -25
  283. package/src/lib/components/dataEntry/AntdTimeRangePicker.react.js +92 -42
  284. package/src/lib/components/dataEntry/AntdTransfer.react.js +70 -18
  285. package/src/lib/components/dataEntry/AntdTreeSelect.react.js +122 -31
  286. package/src/lib/components/dataEntry/check-card/AntdCheckCard.react.js +51 -23
  287. package/src/lib/components/dataEntry/check-card/AntdCheckCardGroup.react.js +53 -25
  288. package/src/lib/components/dataEntry/form/AntdForm.react.js +40 -26
  289. package/src/lib/components/dataEntry/form/AntdFormItem.react.js +46 -24
  290. package/src/lib/components/dataEntry/upload/AntdDraggerUpload.react.js +92 -39
  291. package/src/lib/components/dataEntry/upload/AntdPictureUpload.react.js +84 -39
  292. package/src/lib/components/dataEntry/upload/AntdUpload.react.js +88 -25
  293. package/src/lib/components/feedback/AntdAlert.react.js +24 -49
  294. package/src/lib/components/feedback/AntdDrawer.react.js +31 -63
  295. package/src/lib/components/feedback/AntdMessage.react.js +29 -82
  296. package/src/lib/components/feedback/AntdModal.react.js +133 -97
  297. package/src/lib/components/feedback/AntdNotification.react.js +49 -74
  298. package/src/lib/components/feedback/AntdPopconfirm.react.js +68 -85
  299. package/src/lib/components/feedback/AntdPopupCard.react.js +89 -62
  300. package/src/lib/components/feedback/AntdProgress.react.js +36 -61
  301. package/src/lib/components/feedback/AntdResult.react.js +16 -38
  302. package/src/lib/components/feedback/AntdSpin.react.js +45 -74
  303. package/src/lib/components/feedback/skeleton/AntdCustomSkeleton.react.js +36 -61
  304. package/src/lib/components/feedback/skeleton/AntdSkeleton.react.js +40 -72
  305. package/src/lib/components/feedback/skeleton/AntdSkeletonAvatar.react.js +14 -38
  306. package/src/lib/components/feedback/skeleton/AntdSkeletonButton.react.js +15 -40
  307. package/src/lib/components/feedback/skeleton/AntdSkeletonImage.react.js +11 -32
  308. package/src/lib/components/feedback/skeleton/AntdSkeletonInput.react.js +13 -36
  309. package/src/lib/components/formRender/AntdFormRender.react.js +1 -1
  310. package/src/lib/components/general/AntdButton.react.js +38 -72
  311. package/src/lib/components/general/AntdFloatButton.react.js +19 -44
  312. package/src/lib/components/general/AntdFloatButtonGroup.react.js +32 -43
  313. package/src/lib/components/general/AntdIcon.react.js +18 -44
  314. package/src/lib/components/general/typography/AntdParagraph.react.js +25 -49
  315. package/src/lib/components/general/typography/AntdText.react.js +26 -50
  316. package/src/lib/components/general/typography/AntdTitle.react.js +26 -51
  317. package/src/lib/components/icons.react.js +25 -1
  318. package/src/lib/components/layout/AntdCenter.react.js +14 -38
  319. package/src/lib/components/layout/AntdCompact.react.js +14 -38
  320. package/src/lib/components/layout/AntdContent.react.js +12 -34
  321. package/src/lib/components/layout/AntdDivider.react.js +24 -54
  322. package/src/lib/components/layout/AntdFlex.react.js +18 -45
  323. package/src/lib/components/layout/AntdFooter.react.js +12 -34
  324. package/src/lib/components/layout/AntdHeader.react.js +12 -34
  325. package/src/lib/components/layout/AntdLayout.react.js +12 -34
  326. package/src/lib/components/layout/AntdSider.react.js +20 -47
  327. package/src/lib/components/layout/AntdSpace.react.js +24 -54
  328. package/src/lib/components/layout/AntdSplitter.react.js +21 -34
  329. package/src/lib/components/layout/grid/AntdCol.react.js +24 -51
  330. package/src/lib/components/layout/grid/AntdRow.react.js +16 -42
  331. package/src/lib/components/locales.react.js +43 -2
  332. package/src/lib/components/navigation/AntdAnchor.react.js +18 -42
  333. package/src/lib/components/navigation/AntdBreadcrumb.react.js +105 -100
  334. package/src/lib/components/navigation/AntdDropdown.react.js +40 -70
  335. package/src/lib/components/navigation/AntdMenu.react.js +32 -59
  336. package/src/lib/components/navigation/AntdPageHeader.react.js +18 -44
  337. package/src/lib/components/navigation/AntdPagination.react.js +37 -69
  338. package/src/lib/components/navigation/AntdSteps.react.js +22 -51
  339. package/src/lib/components/other/AntdAffix.react.js +21 -38
  340. package/src/lib/components/other/AntdBackTop.react.js +19 -41
  341. package/src/lib/components/other/AntdConfigProvider.react.js +21 -51
  342. package/src/lib/components/other/AntdCopyText.react.js +19 -43
  343. package/src/lib/components/other/AntdTour.react.js +22 -51
  344. package/src/lib/components/other/AntdWatermark.react.js +31 -49
  345. package/src/lib/components/other/Fragment.react.js +0 -20
  346. package/src/lib/components/styles.css +0 -5
  347. package/src/lib/components/utils.js +24 -18
  348. package/src/lib/fragments/AntdTable.react.js +1807 -1801
  349. package/src/lib/fragments/dataDisplay/AntdAccordion.react.js +5 -6
  350. package/src/lib/fragments/dataDisplay/AntdAvatar.react.js +9 -14
  351. package/src/lib/fragments/dataDisplay/AntdAvatarGroup.react.js +7 -14
  352. package/src/lib/fragments/dataDisplay/AntdBadge.react.js +5 -6
  353. package/src/lib/fragments/dataDisplay/AntdCarousel.react.js +5 -6
  354. package/src/lib/fragments/dataDisplay/AntdCheckableTag.react.js +4 -5
  355. package/src/lib/fragments/dataDisplay/AntdComment.react.js +5 -7
  356. package/src/lib/fragments/dataDisplay/AntdCountdown.react.js +5 -5
  357. package/src/lib/fragments/dataDisplay/AntdEmpty.react.js +8 -7
  358. package/src/lib/fragments/dataDisplay/AntdImage.react.js +5 -4
  359. package/src/lib/fragments/dataDisplay/AntdImageGroup.react.js +3 -2
  360. package/src/lib/fragments/dataDisplay/AntdPopover.react.js +8 -16
  361. package/src/lib/fragments/dataDisplay/AntdQRCode.react.js +12 -7
  362. package/src/lib/fragments/dataDisplay/AntdRibbon.react.js +5 -6
  363. package/src/lib/fragments/dataDisplay/AntdSegmented.react.js +29 -25
  364. package/src/lib/fragments/dataDisplay/AntdSpoiler.react.js +5 -6
  365. package/src/lib/fragments/dataDisplay/AntdTabs.react.js +4 -5
  366. package/src/lib/fragments/dataDisplay/AntdTag.react.js +4 -5
  367. package/src/lib/fragments/dataDisplay/AntdTimeline.react.js +4 -5
  368. package/src/lib/fragments/dataDisplay/AntdTooltip.react.js +8 -16
  369. package/src/lib/fragments/dataDisplay/AntdTree.react.js +5 -7
  370. package/src/lib/fragments/dataDisplay/card/AntdCard.react.js +29 -17
  371. package/src/lib/fragments/dataDisplay/card/AntdCardGrid.react.js +4 -6
  372. package/src/lib/fragments/dataDisplay/card/AntdCardMeta.react.js +4 -5
  373. package/src/lib/fragments/dataDisplay/descriptions/AntdDescriptionItem.react.js +8 -10
  374. package/src/lib/fragments/dataDisplay/descriptions/AntdDescriptions.react.js +16 -22
  375. package/src/lib/fragments/dataEntry/AntdCalendar.react.js +10 -10
  376. package/src/lib/fragments/dataEntry/AntdCascader.react.js +14 -17
  377. package/src/lib/fragments/dataEntry/AntdCheckbox.react.js +9 -9
  378. package/src/lib/fragments/dataEntry/AntdCheckboxGroup.react.js +9 -9
  379. package/src/lib/fragments/dataEntry/AntdColorPicker.react.js +9 -9
  380. package/src/lib/fragments/dataEntry/AntdDatePicker.react.js +11 -11
  381. package/src/lib/fragments/dataEntry/AntdDateRangePicker.react.js +11 -11
  382. package/src/lib/fragments/dataEntry/AntdInput.react.js +23 -29
  383. package/src/lib/fragments/dataEntry/AntdInputNumber.react.js +10 -10
  384. package/src/lib/fragments/dataEntry/AntdMentions.react.js +10 -10
  385. package/src/lib/fragments/dataEntry/AntdOTP.react.js +10 -10
  386. package/src/lib/fragments/dataEntry/AntdRadioGroup.react.js +14 -16
  387. package/src/lib/fragments/dataEntry/AntdRate.react.js +9 -9
  388. package/src/lib/fragments/dataEntry/AntdSegmentedColoring.react.js +5 -6
  389. package/src/lib/fragments/dataEntry/AntdSelect.react.js +14 -12
  390. package/src/lib/fragments/dataEntry/AntdSlider.react.js +10 -12
  391. package/src/lib/fragments/dataEntry/AntdSwitch.react.js +9 -9
  392. package/src/lib/fragments/dataEntry/AntdTimePicker.react.js +10 -10
  393. package/src/lib/fragments/dataEntry/AntdTimeRangePicker.react.js +10 -10
  394. package/src/lib/fragments/dataEntry/AntdTransfer.react.js +9 -9
  395. package/src/lib/fragments/dataEntry/AntdTreeSelect.react.js +11 -12
  396. package/src/lib/fragments/dataEntry/check-card/AntdCheckCard.react.js +8 -8
  397. package/src/lib/fragments/dataEntry/check-card/AntdCheckCardGroup.react.js +8 -9
  398. package/src/lib/fragments/dataEntry/form/AntdForm.react.js +4 -5
  399. package/src/lib/fragments/dataEntry/form/AntdFormItem.react.js +4 -5
  400. package/src/lib/fragments/upload/AntdDraggerUpload.react.js +22 -18
  401. package/src/lib/fragments/upload/AntdPictureUpload.react.js +25 -20
  402. package/src/lib/fragments/upload/AntdUpload.react.js +22 -19
  403. package/src/lib/index.js +0 -6
  404. package/tests/dash3.0tests/AntdQRCode/347/273/204/344/273/266loading/347/212/266/346/200/201/351/207/215/346/236/204/test.py +51 -0
  405. package/tests/dash3.0tests/AntdTable/345/207/275/346/225/260/345/274/217/346/224/271/351/200/240/test.py +62 -0
  406. package/tests/dash3.0tests/_dashprivate_layout/346/224/271/345/212/250/346/265/213/350/257/225/test.py +50 -0
  407. package/tests/dash3.0tests/loading_state/346/224/271/345/212/250/346/265/213/350/257/225/test.py +38 -0
  408. package/tests/dash3.0tests//345/207/275/346/225/260/345/274/217/347/273/204/344/273/266/351/273/230/350/256/244/345/200/274/351/207/215/346/236/204/test.py +30 -0
  409. package/tests/dash3.0tests//345/212/240/350/275/275/345/212/250/347/224/273/347/261/273/347/273/204/344/273/266/351/207/215/346/236/204/346/265/213/350/257/225/test.py +62 -0
  410. package/tests/dash3.0tests//347/273/204/344/273/266/345/261/236/346/200/247/345/237/272/347/241/200/346/214/201/344/271/205/345/214/226/351/207/215/346/236/204/346/265/213/350/257/225/test.py +25 -0
  411. package/tests/dataDisplay/AntdCard/refactor_delete_props.py +83 -0
  412. package/tests/dataDisplay/AntdCarousel/feat_auto_play_dot_duration.py +34 -0
  413. package/tests/dataDisplay/AntdCountdown/feat_finish_event.py +41 -0
  414. package/tests/dataDisplay/AntdSegmented/feat_shape.py +39 -0
  415. package/tests/dataDisplay/AntdSegmented/feat_simple_options.py +43 -0
  416. package/tests/dataDisplay/AntdTable/feat_row_class_name_func.py +41 -0
  417. package/tests/dataDisplay/AntdTable/fix_context_locale.py +37 -0
  418. package/tests/dataEntry/AntdForm/feat_optional_batch_control.py +62 -0
  419. package/tests/dataEntry/AntdSelect/feat_locale_ru.py +24 -0
  420. package/tests/dataEntry/AntdUpload/fix_follow_theme.py +28 -0
  421. package/tests/feat_variant_underlined.py +100 -0
  422. package/tests/feedback/AntdMessage/fix_follow_config_provider.py +44 -0
  423. package/tests/feedback/AntdModal/feat_responsive_width.py +31 -0
  424. package/tests/feedback/AntdNotification/feat_show_progress.py +40 -0
  425. package/tests/feedback/AntdNotification/fix_follow_config_provider.py +46 -0
  426. package/tests/general/AntdButton/feat_preset_color.py +46 -0
  427. package/tests/layout/AntdSplitter/feat_lazy.py +56 -0
  428. package/tests/navigation/AntdBreadcrumb/feat_menu_item_event.py +64 -0
  429. package/tests/navigation/AntdBreadcrumb/refactor_items.py +140 -0
  430. package/tests/other/AntdAffix/feat_listen_affixed.py +41 -0
  431. package/tests/other/AntdBackTop/refactor.py +18 -0
  432. package/usage.py +23 -17
  433. package/feffery_antd_components/AntdDraggablePanel.py +0 -125
  434. package/feffery_antd_components/AntdEditorLayout.py +0 -237
  435. package/src/lib/components/proEditor/AntdDraggablePanel.react.js +0 -181
  436. package/src/lib/components/proEditor/AntdEditorLayout.react.js +0 -336
  437. package/src/lib/fragments/proEditor/AntdDraggablePanel.react.js +0 -70
  438. package/src/lib/fragments/proEditor/AntdEditorLayout.react.js +0 -79
@@ -6,7 +6,7 @@ import { TreeSelect, ConfigProvider } from 'antd';
6
6
  import { str2Locale } from '../../components/locales.react';
7
7
  import { isUndefined, isString, cloneDeep } from 'lodash';
8
8
  import { pickBy } from 'ramda';
9
- import { flatToTree } from '../../components/utils';
9
+ import { flatToTree, useLoading } from '../../components/utils';
10
10
  // 自定义hooks
11
11
  import useCss from '../../hooks/useCss';
12
12
  // 上下文
@@ -63,6 +63,7 @@ const AntdTreeSelect = (props) => {
63
63
  popupClassName,
64
64
  key,
65
65
  name,
66
+ enableBatchControl,
66
67
  locale,
67
68
  treeData,
68
69
  treeNodeKeyToTitle,
@@ -106,8 +107,8 @@ const AntdTreeSelect = (props) => {
106
107
  persistence,
107
108
  persisted_props,
108
109
  persistence_type,
109
- loading_state,
110
- batchPropsNames
110
+ batchPropsNames,
111
+ ...others
111
112
  } = props;
112
113
 
113
114
  // 异步数据加载标识
@@ -148,7 +149,7 @@ const AntdTreeSelect = (props) => {
148
149
  useEffect(() => {
149
150
  return () => {
150
151
  // 若上文中存在有效表单id
151
- if (formId && (name || id)) {
152
+ if (formId && (name || id) && enableBatchControl) {
152
153
  // 表单值更新
153
154
  deleteItemValue(formId, name || id)
154
155
  }
@@ -172,14 +173,14 @@ const AntdTreeSelect = (props) => {
172
173
  const updateSelectedValue = (e) => {
173
174
  if (treeCheckStrictly) {
174
175
  // AntdForm表单批量控制
175
- if (formId && (name || id)) {
176
+ if (formId && (name || id) && enableBatchControl) {
176
177
  // 表单值更新
177
178
  updateItemValue(formId, name || id, e.map(item => item.value))
178
179
  }
179
180
  setProps({ value: e.map(item => item.value) })
180
181
  } else {
181
182
  // AntdForm表单批量控制
182
- if (formId && (name || id)) {
183
+ if (formId && (name || id) && enableBatchControl) {
183
184
  // 表单值更新
184
185
  updateItemValue(formId, name || id, e)
185
186
  }
@@ -191,7 +192,7 @@ const AntdTreeSelect = (props) => {
191
192
  <ConfigProvider locale={str2Locale.get(locale)}>
192
193
  <TreeSelect
193
194
  // 提取具有data-*或aria-*通配格式的属性
194
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
195
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
195
196
  id={id}
196
197
  className={
197
198
  isString(className) ?
@@ -226,12 +227,12 @@ const AntdTreeSelect = (props) => {
226
227
  listHeight={listHeight}
227
228
  placeholder={placeholder}
228
229
  defaultValue={
229
- formId && (name || id) ?
230
+ formId && (name || id) && enableBatchControl ?
230
231
  undefined :
231
232
  defaultValue
232
233
  }
233
234
  value={
234
- formId && (name || id) ?
235
+ formId && (name || id) && enableBatchControl ?
235
236
  currentFormValue :
236
237
  value
237
238
  }
@@ -310,9 +311,7 @@ const AntdTreeSelect = (props) => {
310
311
  persistence={persistence}
311
312
  persisted_props={persisted_props}
312
313
  persistence_type={persistence_type}
313
- data-dash-is-loading={
314
- (loading_state && loading_state.is_loading) || undefined
315
- }
314
+ data-dash-is-loading={useLoading()}
316
315
  getPopupContainer={
317
316
  popupContainer === 'parent' ?
318
317
  (triggerNode) => triggerNode.parentNode :
@@ -5,6 +5,7 @@ import { CheckCard } from '@ant-design/pro-components';
5
5
  // 辅助库
6
6
  import { isUndefined, isString } from 'lodash';
7
7
  import { pickBy } from 'ramda';
8
+ import { useLoading } from '../../../components/utils';
8
9
  // 自定义hooks
9
10
  import useCss from '../../../hooks/useCss';
10
11
  // 上下文
@@ -26,6 +27,7 @@ const AntdCheckCard = (props) => {
26
27
  style,
27
28
  key,
28
29
  name,
30
+ enableBatchControl,
29
31
  checked,
30
32
  bordered,
31
33
  value,
@@ -34,10 +36,10 @@ const AntdCheckCard = (props) => {
34
36
  size,
35
37
  readOnly,
36
38
  setProps,
37
- loading_state,
38
39
  persistence,
39
40
  persisted_props,
40
- persistence_type
41
+ persistence_type,
42
+ ...others
41
43
  } = props;
42
44
 
43
45
  const context = useContext(PropsContext)
@@ -49,7 +51,7 @@ const AntdCheckCard = (props) => {
49
51
  // 处理AntdForm表单值搜集功能
50
52
  useEffect(() => {
51
53
  // 若上文中存在有效表单id
52
- if (formId && (name || id)) {
54
+ if (formId && (name || id) && enableBatchControl) {
53
55
  // 表单值更新
54
56
  updateItemValue(formId, name || id, checked)
55
57
  }
@@ -59,7 +61,7 @@ const AntdCheckCard = (props) => {
59
61
  useEffect(() => {
60
62
  return () => {
61
63
  // 若上文中存在有效表单id
62
- if (formId && (name || id)) {
64
+ if (formId && (name || id) && enableBatchControl) {
63
65
  // 表单值更新
64
66
  deleteItemValue(formId, name || id)
65
67
  }
@@ -75,7 +77,7 @@ const AntdCheckCard = (props) => {
75
77
  return (
76
78
  <CheckCard
77
79
  // 提取具有data-*或aria-*通配格式的属性
78
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
80
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
79
81
  id={id}
80
82
  className={
81
83
  isString(className) ?
@@ -103,9 +105,7 @@ const AntdCheckCard = (props) => {
103
105
  persistence={persistence}
104
106
  persisted_props={persisted_props}
105
107
  persistence_type={persistence_type}
106
- data-dash-is-loading={
107
- (loading_state && loading_state.is_loading) || undefined
108
- } />
108
+ data-dash-is-loading={useLoading()} />
109
109
  );
110
110
  }
111
111
 
@@ -3,7 +3,7 @@ import React, { useEffect, useContext } from 'react';
3
3
  // antd核心
4
4
  import { CheckCard } from '@ant-design/pro-components';
5
5
  // 辅助库
6
- import { parseChildrenToArray } from '../../../components/utils';
6
+ import { parseChildrenToArray, useLoading } from '../../../components/utils';
7
7
  import { isString, isUndefined } from 'lodash';
8
8
  import { pickBy } from 'ramda';
9
9
  // 自定义hooks
@@ -27,6 +27,7 @@ const AntdCheckCardGroup = (props) => {
27
27
  style,
28
28
  key,
29
29
  name,
30
+ enableBatchControl,
30
31
  multiple,
31
32
  allowNoValue,
32
33
  bordered,
@@ -36,10 +37,10 @@ const AntdCheckCardGroup = (props) => {
36
37
  size,
37
38
  readOnly,
38
39
  setProps,
39
- loading_state,
40
40
  persistence,
41
41
  persisted_props,
42
- persistence_type
42
+ persistence_type,
43
+ ...others
43
44
  } = props;
44
45
 
45
46
  const context = useContext(PropsContext)
@@ -51,7 +52,7 @@ const AntdCheckCardGroup = (props) => {
51
52
  // 处理AntdForm表单值搜集功能
52
53
  useEffect(() => {
53
54
  // 若上文中存在有效表单id
54
- if (formId && (name || id)) {
55
+ if (formId && (name || id) && enableBatchControl) {
55
56
  // 表单值更新
56
57
  updateItemValue(formId, name || id, value)
57
58
  }
@@ -61,7 +62,7 @@ const AntdCheckCardGroup = (props) => {
61
62
  useEffect(() => {
62
63
  return () => {
63
64
  // 若上文中存在有效表单id
64
- if (formId && (name || id)) {
65
+ if (formId && (name || id) && enableBatchControl) {
65
66
  // 表单值更新
66
67
  deleteItemValue(formId, name || id)
67
68
  }
@@ -79,7 +80,7 @@ const AntdCheckCardGroup = (props) => {
79
80
  return (
80
81
  <CheckCard.Group
81
82
  // 提取具有data-*或aria-*通配格式的属性
82
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
83
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
83
84
  id={id}
84
85
  className={
85
86
  isString(className) ?
@@ -113,9 +114,7 @@ const AntdCheckCardGroup = (props) => {
113
114
  persistence={persistence}
114
115
  persisted_props={persisted_props}
115
116
  persistence_type={persistence_type}
116
- data-dash-is-loading={
117
- (loading_state && loading_state.is_loading) || undefined
118
- } >
117
+ data-dash-is-loading={useLoading()} >
119
118
  {children}
120
119
  </ CheckCard.Group>
121
120
  );
@@ -6,6 +6,7 @@ import { Form } from 'antd';
6
6
  import { isString, isUndefined, isEmpty } from 'lodash';
7
7
  import { useUnmount } from 'ahooks';
8
8
  import { pickBy } from 'ramda';
9
+ import { useLoading } from '../../../components/utils';
9
10
  // 自定义hooks
10
11
  import useCss from '../../../hooks/useCss';
11
12
  // 上下文
@@ -36,7 +37,7 @@ const AntdForm = (props) => {
36
37
  validateStatuses,
37
38
  helps,
38
39
  setProps,
39
- loading_state
40
+ ...others
40
41
  } = props;
41
42
 
42
43
  // 订阅当前表单值搜集状态的变动
@@ -92,7 +93,7 @@ const AntdForm = (props) => {
92
93
  >
93
94
  <Form
94
95
  // 提取具有data-*或aria-*通配格式的属性
95
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
96
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
96
97
  id={id}
97
98
  className={
98
99
  isString(className) ?
@@ -107,9 +108,7 @@ const AntdForm = (props) => {
107
108
  labelAlign={labelAlign}
108
109
  labelWrap={labelWrap}
109
110
  layout={layout}
110
- data-dash-is-loading={
111
- (loading_state && loading_state.is_loading) || undefined
112
- }>
111
+ data-dash-is-loading={useLoading()}>
113
112
  {children}
114
113
  </Form>
115
114
  </FormContext.Provider >
@@ -5,6 +5,7 @@ import { Form } from 'antd';
5
5
  // 辅助库
6
6
  import { isString } from 'lodash';
7
7
  import { pickBy } from 'ramda';
8
+ import { useLoading } from '../../../components/utils';
8
9
  // 自定义hooks
9
10
  import useCss from '../../../hooks/useCss';
10
11
  // 上下文
@@ -40,7 +41,7 @@ const AntdFormItem = (props) => {
40
41
  hasFeedback,
41
42
  layout,
42
43
  setProps,
43
- loading_state
44
+ ...others
44
45
  } = props;
45
46
 
46
47
  const formId = useContext(FormContext);
@@ -50,7 +51,7 @@ const AntdFormItem = (props) => {
50
51
  return (
51
52
  <Item
52
53
  // 提取具有data-*或aria-*通配格式的属性
53
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
54
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
54
55
  id={id}
55
56
  className={
56
57
  isString(className) ?
@@ -72,9 +73,7 @@ const AntdFormItem = (props) => {
72
73
  required={required}
73
74
  validateStatus={validateStatus || (formId && _validateStatus)}
74
75
  layout={layout}
75
- data-dash-is-loading={
76
- (loading_state && loading_state.is_loading) || undefined
77
- }>
76
+ data-dash-is-loading={useLoading()}>
78
77
  {children}
79
78
  </Item>
80
79
  );
@@ -9,6 +9,7 @@ import { v4 as uuidv4 } from 'uuid';
9
9
  import { pickBy } from 'ramda';
10
10
  import { pick } from 'ramda';
11
11
  import { str2Locale, locale2text } from '../../components/locales.react';
12
+ import { useLoading } from '../../components/utils';
12
13
  // 自定义hooks
13
14
  import useCss from '../../hooks/useCss';
14
15
  // 上下文
@@ -57,6 +58,7 @@ const AntdDraggerUpload = (props) => {
57
58
  draggerStyle,
58
59
  key,
59
60
  name,
61
+ enableBatchControl,
60
62
  locale,
61
63
  apiUrl,
62
64
  apiUrlExtraParams,
@@ -86,10 +88,13 @@ const AntdDraggerUpload = (props) => {
86
88
  defaultFileList,
87
89
  disabled,
88
90
  status,
89
- loading_state,
90
- setProps
91
+ setProps,
92
+ ...others
91
93
  } = props;
92
94
 
95
+ const [messageApi, messageContextHolder] = message.useMessage();
96
+ const [modalApi, modalContextHolder] = Modal.useModal();
97
+
93
98
  const context = useContext(PropsContext)
94
99
  const formId = useContext(FormContext)
95
100
 
@@ -105,7 +110,7 @@ const AntdDraggerUpload = (props) => {
105
110
  // 针对上传类组件,特殊处理由表单值控制上传列表的清空
106
111
  useEffect(() => {
107
112
  // 若上文中存在有效表单id
108
- if (formId && (name || id)) {
113
+ if (formId && (name || id) && enableBatchControl) {
109
114
  if (!currentFormValue || currentFormValue.length === 0) {
110
115
  // 清空上传列表
111
116
  updateFileList([])
@@ -121,7 +126,7 @@ const AntdDraggerUpload = (props) => {
121
126
  useEffect(() => {
122
127
  return () => {
123
128
  // 若上文中存在有效表单id
124
- if (formId && (name || id)) {
129
+ if (formId && (name || id) && enableBatchControl) {
125
130
  // 表单值更新
126
131
  deleteItemValue(formId, name || id)
127
132
  }
@@ -169,12 +174,12 @@ const AntdDraggerUpload = (props) => {
169
174
  beforeUpload: (file) => {
170
175
  const sizeCheck = file.size / 1024 / 1024 < fileMaxSize;
171
176
  if (!sizeCheck) {
172
- message.error(`${file.name}${locale2text.Upload[locale].sizeError[0]}${fileMaxSize}${locale2text.Upload[locale].sizeError[1]}`);
177
+ messageApi.error(`${file.name}${locale2text.Upload[locale].sizeError[0]}${fileMaxSize}${locale2text.Upload[locale].sizeError[1]}`);
173
178
  }
174
179
 
175
180
  if (fileTypes) {
176
181
  if (fileTypes.indexOf(file.name.split('.')[file.name.split('.').length - 1]) === -1) {
177
- message.error(`${locale2text.Upload[locale].typeError[0]}${file.name}${locale2text.Upload[locale].typeError[1]}`);
182
+ messageApi.error(`${locale2text.Upload[locale].typeError[0]}${file.name}${locale2text.Upload[locale].typeError[1]}`);
178
183
  }
179
184
 
180
185
  return sizeCheck && fileTypes.indexOf(file.name.split('.')[file.name.split('.').length - 1]) !== -1;
@@ -235,7 +240,7 @@ const AntdDraggerUpload = (props) => {
235
240
  )
236
241
 
237
242
  // AntdForm表单批量控制
238
- if (formId && (name || id)) {
243
+ if (formId && (name || id) && enableBatchControl) {
239
244
  // 表单值更新
240
245
  updateItemValue(formId, name || id, _listUploadTaskRecord)
241
246
  }
@@ -290,7 +295,7 @@ const AntdDraggerUpload = (props) => {
290
295
  )
291
296
 
292
297
  // AntdForm表单批量控制
293
- if (formId && (name || id)) {
298
+ if (formId && (name || id) && enableBatchControl) {
294
299
  // 表单值更新
295
300
  updateItemValue(formId, name || id, _listUploadTaskRecord)
296
301
  }
@@ -375,7 +380,7 @@ const AntdDraggerUpload = (props) => {
375
380
  )
376
381
 
377
382
  // AntdForm表单批量控制
378
- if (formId && (name || id)) {
383
+ if (formId && (name || id) && enableBatchControl) {
379
384
  // 表单值更新
380
385
  updateItemValue(formId, name || id, _listUploadTaskRecord)
381
386
  }
@@ -422,7 +427,7 @@ const AntdDraggerUpload = (props) => {
422
427
  )
423
428
 
424
429
  // AntdForm表单批量控制
425
- if (formId && (name || id)) {
430
+ if (formId && (name || id) && enableBatchControl) {
426
431
  // 表单值更新
427
432
  updateItemValue(formId, name || id, _listUploadTaskRecord)
428
433
  }
@@ -456,9 +461,9 @@ const AntdDraggerUpload = (props) => {
456
461
  }
457
462
 
458
463
  if ((info.file.status === 'done' || info.file.status === 'success') && showSuccessMessage) {
459
- message.success(`${info.file.name} ${locale2text.Upload[locale].uploadSuccess}`);
464
+ messageApi.success(`${info.file.name} ${locale2text.Upload[locale].uploadSuccess}`);
460
465
  } else if (info.file.status === 'error' && showErrorMessage) {
461
- message.error(`${info.file.name} ${locale2text.Upload[locale].uploadFailed}`);
466
+ messageApi.error(`${info.file.name} ${locale2text.Upload[locale].uploadFailed}`);
462
467
  }
463
468
 
464
469
  // 获取当前上传文件列表
@@ -526,7 +531,6 @@ const AntdDraggerUpload = (props) => {
526
531
 
527
532
  // 添加accept参数
528
533
  if (fileTypes && fileTypes.length != 0) {
529
-
530
534
  Object.assign(uploadProps, { accept: '.' + fileTypes.join(',.') })
531
535
  }
532
536
 
@@ -534,7 +538,7 @@ const AntdDraggerUpload = (props) => {
534
538
  <ConfigProvider locale={str2Locale.get(locale)}>
535
539
  <div
536
540
  // 提取具有data-*或aria-*通配格式的属性
537
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
541
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
538
542
  id={id}
539
543
  className={
540
544
  isString(className) ?
@@ -548,9 +552,9 @@ const AntdDraggerUpload = (props) => {
548
552
  ...style
549
553
  }}
550
554
  key={key}
551
- data-dash-is-loading={
552
- (loading_state && loading_state.is_loading) || undefined
553
- }>
555
+ data-dash-is-loading={useLoading()}>
556
+ {messageContextHolder}
557
+ {modalContextHolder}
554
558
  <Dragger
555
559
  draggerStyle={draggerStyle}
556
560
  draggerClassName={
@@ -585,7 +589,7 @@ const AntdDraggerUpload = (props) => {
585
589
  confirmBeforeDelete ?
586
590
  () => {
587
591
  return new Promise((resolve, reject) => {
588
- Modal.confirm({
592
+ modalApi.confirm({
589
593
  title: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteTitle,
590
594
  okText: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteOkText,
591
595
  cancelText: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteCancelText,
@@ -9,6 +9,7 @@ import { str2Locale, locale2text } from '../../components/locales.react';
9
9
  import { isUndefined, isString } from 'lodash';
10
10
  import { v4 as uuidv4 } from 'uuid';
11
11
  import { pickBy } from 'ramda';
12
+ import { useLoading } from '../../components/utils';
12
13
  // 自定义hooks
13
14
  import useCss from '../../hooks/useCss';
14
15
  // 上下文
@@ -62,6 +63,7 @@ const AntdPictureUpload = (props) => {
62
63
  style,
63
64
  key,
64
65
  name,
66
+ enableBatchControl,
65
67
  locale,
66
68
  apiUrl,
67
69
  apiUrlExtraParams,
@@ -89,10 +91,13 @@ const AntdPictureUpload = (props) => {
89
91
  defaultFileList,
90
92
  disabled,
91
93
  status,
92
- loading_state,
93
- setProps
94
+ setProps,
95
+ ...others
94
96
  } = props;
95
97
 
98
+ const [messageApi, messageContextHolder] = message.useMessage();
99
+ const [modalApi, modalContextHolder] = Modal.useModal();
100
+
96
101
  const context = useContext(PropsContext)
97
102
  const formId = useContext(FormContext)
98
103
 
@@ -108,7 +113,7 @@ const AntdPictureUpload = (props) => {
108
113
  // 针对上传类组件,特殊处理由表单值控制上传列表的清空
109
114
  useEffect(() => {
110
115
  // 若上文中存在有效表单id
111
- if (formId && (name || id)) {
116
+ if (formId && (name || id) && enableBatchControl) {
112
117
  if (!currentFormValue || currentFormValue.length === 0) {
113
118
  // 清空上传列表
114
119
  updateFileList([])
@@ -124,7 +129,7 @@ const AntdPictureUpload = (props) => {
124
129
  useEffect(() => {
125
130
  return () => {
126
131
  // 若上文中存在有效表单id
127
- if (formId && (name || id)) {
132
+ if (formId && (name || id) && enableBatchControl) {
128
133
  // 表单值更新
129
134
  deleteItemValue(formId, name || id)
130
135
  }
@@ -195,12 +200,12 @@ const AntdPictureUpload = (props) => {
195
200
  beforeUpload: (file) => {
196
201
  const sizeCheck = file.size / 1024 / 1024 < fileMaxSize;
197
202
  if (!sizeCheck) {
198
- message.error(`${file.name}${locale2text.Upload[locale].sizeError[0]}${fileMaxSize}${locale2text.Upload[locale].sizeError[1]}`);
203
+ messageApi.error(`${file.name}${locale2text.Upload[locale].sizeError[0]}${fileMaxSize}${locale2text.Upload[locale].sizeError[1]}`);
199
204
  }
200
205
 
201
206
  if (fileTypes) {
202
207
  if (fileTypes.indexOf(file.name.split('.')[file.name.split('.').length - 1]) === -1) {
203
- message.error(`${locale2text.Upload[locale].typeError[0]}${file.name}${locale2text.Upload[locale].typeError[1]}`);
208
+ messageApi.error(`${locale2text.Upload[locale].typeError[0]}${file.name}${locale2text.Upload[locale].typeError[1]}`);
204
209
  }
205
210
 
206
211
  return sizeCheck && fileTypes.indexOf(file.name.split('.')[file.name.split('.').length - 1]) !== -1;
@@ -252,7 +257,7 @@ const AntdPictureUpload = (props) => {
252
257
  )
253
258
 
254
259
  // AntdForm表单批量控制
255
- if (formId && (name || id)) {
260
+ if (formId && (name || id) && enableBatchControl) {
256
261
  // 表单值更新
257
262
  updateItemValue(formId, name || id, _listUploadTaskRecord)
258
263
  }
@@ -291,7 +296,7 @@ const AntdPictureUpload = (props) => {
291
296
  )
292
297
 
293
298
  // AntdForm表单批量控制
294
- if (formId && (name || id)) {
299
+ if (formId && (name || id) && enableBatchControl) {
295
300
  // 表单值更新
296
301
  updateItemValue(formId, name || id, _listUploadTaskRecord)
297
302
  }
@@ -324,9 +329,9 @@ const AntdPictureUpload = (props) => {
324
329
  }
325
330
 
326
331
  if ((info.file.status === 'done' || info.file.status === 'success') && showSuccessMessage) {
327
- message.success(`${info.file.name} ${locale2text.Upload[locale].uploadSuccess}`);
332
+ messageApi.success(`${info.file.name} ${locale2text.Upload[locale].uploadSuccess}`);
328
333
  } else if (info.file.status === 'error' && showErrorMessage) {
329
- message.error(`${info.file.name} ${locale2text.Upload[locale].uploadFailed}`);
334
+ messageApi.error(`${info.file.name} ${locale2text.Upload[locale].uploadFailed}`);
330
335
  }
331
336
 
332
337
  // 获取当前上传文件列表
@@ -404,7 +409,7 @@ const AntdPictureUpload = (props) => {
404
409
  <ConfigProvider locale={str2Locale.get(locale)}>
405
410
  <div
406
411
  // 提取具有data-*或aria-*通配格式的属性
407
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
412
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
408
413
  id={id}
409
414
  className={
410
415
  isString(className) ?
@@ -418,6 +423,8 @@ const AntdPictureUpload = (props) => {
418
423
  ...style
419
424
  }}
420
425
  key={key}>
426
+ {messageContextHolder}
427
+ {modalContextHolder}
421
428
  <ImgCrop modalOk={locale === 'zh-cn' ? '确定' : 'OK'}
422
429
  modalCancel={locale === 'zh-cn' ? '取消' : 'Cancel'}
423
430
  {...editConfig}>
@@ -452,7 +459,7 @@ const AntdPictureUpload = (props) => {
452
459
  confirmBeforeDelete ?
453
460
  () => {
454
461
  return new Promise((resolve, reject) => {
455
- Modal.confirm({
462
+ modalApi.confirm({
456
463
  title: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteTitle,
457
464
  okText: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteOkText,
458
465
  cancelText: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteCancelText,
@@ -465,9 +472,7 @@ const AntdPictureUpload = (props) => {
465
472
  } :
466
473
  undefined
467
474
  }
468
- data-dash-is-loading={
469
- (loading_state && loading_state.is_loading) || undefined
470
- }>
475
+ data-dash-is-loading={useLoading()}>
471
476
  {uploadButton}
472
477
  </Upload>
473
478
  </ImgCrop>
@@ -488,7 +493,7 @@ const AntdPictureUpload = (props) => {
488
493
  <ConfigProvider locale={str2Locale.get(locale)}>
489
494
  <div
490
495
  // 提取具有data-*或aria-*通配格式的属性
491
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
496
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
492
497
  id={id}
493
498
  className={
494
499
  isString(className) ?
@@ -502,6 +507,8 @@ const AntdPictureUpload = (props) => {
502
507
  ...style
503
508
  }}
504
509
  key={key}>
510
+ {messageContextHolder}
511
+ {modalContextHolder}
505
512
  <Upload {...uploadProps}
506
513
  fileList={fileList}
507
514
  listType="picture-card"
@@ -533,7 +540,7 @@ const AntdPictureUpload = (props) => {
533
540
  confirmBeforeDelete ?
534
541
  () => {
535
542
  return new Promise((resolve, reject) => {
536
- Modal.confirm({
543
+ modalApi.confirm({
537
544
  title: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteTitle,
538
545
  okText: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteOkText,
539
546
  cancelText: locale2text.AntdPictureUpload[locale].confirmBeforeDeleteCancelText,
@@ -546,9 +553,7 @@ const AntdPictureUpload = (props) => {
546
553
  } :
547
554
  undefined
548
555
  }
549
- data-dash-is-loading={
550
- (loading_state && loading_state.is_loading) || undefined
551
- }>
556
+ data-dash-is-loading={useLoading()}>
552
557
  {uploadButton}
553
558
  </Upload>
554
559
  <Modal