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
@@ -13,35 +13,36 @@ import Draggable from "react-draggable";
13
13
  import { isString } from 'lodash';
14
14
  import { pickBy } from 'ramda';
15
15
  import { v4 as uuidv4 } from 'uuid';
16
+ import { useLoading } from '../utils';
16
17
  // 自定义hooks
17
18
  import useCss from '../../hooks/useCss';
18
19
 
19
20
  /**
20
21
  * 弹出式卡片组件AntdPopupCard
21
22
  */
22
- const AntdPopupCard = (props) => {
23
- const {
24
- id,
25
- children,
26
- className,
27
- key,
28
- style,
29
- visible,
30
- title,
31
- width,
32
- transitionType,
33
- forceRender,
34
- destroyOnClose,
35
- closable,
36
- closeIconType,
37
- draggable,
38
- dragClassName,
39
- zIndex,
40
- bodyStyle,
41
- loading,
42
- setProps,
43
- loading_state
44
- } = props;
23
+ const AntdPopupCard = ({
24
+ id,
25
+ children,
26
+ className,
27
+ key,
28
+ style,
29
+ styles,
30
+ classNames,
31
+ visible = true,
32
+ title,
33
+ width,
34
+ transitionType = 'fade',
35
+ forceRender = false,
36
+ destroyOnClose = true,
37
+ closable = true,
38
+ closeIconType = 'default',
39
+ draggable = false,
40
+ dragClassName,
41
+ zIndex = 1000,
42
+ loading = false,
43
+ setProps,
44
+ ...others
45
+ }) => {
45
46
 
46
47
  const [handleId, setHandleId] = useState(uuidv4().replace(/\d+/g, ""));
47
48
  const [disabled, setDisabled] = useState(false);
@@ -72,7 +73,7 @@ const AntdPopupCard = (props) => {
72
73
  return (
73
74
  <Modal
74
75
  // 提取具有data-*或aria-*通配格式的属性
75
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
76
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
76
77
  id={id}
77
78
  className={
78
79
  isString(className) ?
@@ -80,6 +81,8 @@ const AntdPopupCard = (props) => {
80
81
  (className ? useCss(className) : undefined)
81
82
  }
82
83
  style={style}
84
+ styles={styles}
85
+ classNames={classNames}
83
86
  key={key}
84
87
  title={
85
88
  <div
@@ -151,7 +154,6 @@ const AntdPopupCard = (props) => {
151
154
  width={width}
152
155
  open={visible}
153
156
  zIndex={zIndex}
154
- bodyStyle={bodyStyle}
155
157
  mask={false}
156
158
  maskClosable={false}
157
159
  closable={false}
@@ -169,9 +171,7 @@ const AntdPopupCard = (props) => {
169
171
  </Draggable>
170
172
  ) : undefined}
171
173
  loading={loading}
172
- data-dash-is-loading={
173
- (loading_state && loading_state.is_loading) || undefined
174
- }
174
+ data-dash-is-loading={useLoading()}
175
175
  >{children}</Modal>
176
176
  );
177
177
  }
@@ -205,6 +205,66 @@ AntdPopupCard.propTypes = {
205
205
  PropTypes.object
206
206
  ]),
207
207
 
208
+ /**
209
+ * 细分控制子元素css样式
210
+ */
211
+ styles: PropTypes.exact({
212
+ /**
213
+ * 遮罩层元素css样式
214
+ */
215
+ mask: PropTypes.object,
216
+ /**
217
+ * 容器元素css样式
218
+ */
219
+ content: PropTypes.object,
220
+ /**
221
+ * 包裹层元素css样式
222
+ */
223
+ wrapper: PropTypes.object,
224
+ /**
225
+ * 头部元素css样式
226
+ */
227
+ header: PropTypes.object,
228
+ /**
229
+ * 内容元素css样式
230
+ */
231
+ body: PropTypes.object,
232
+ /**
233
+ * 底部元素css样式
234
+ */
235
+ footer: PropTypes.object
236
+ }),
237
+
238
+ /**
239
+ * 细分控制子元素css类名
240
+ */
241
+ classNames: PropTypes.exact({
242
+ /**
243
+ * 遮罩层元素css类名
244
+ */
245
+ mask: PropTypes.string,
246
+ /**
247
+ * 容器元素css类名
248
+ */
249
+ content: PropTypes.string,
250
+ /**
251
+ * 包裹层元素css类名
252
+ */
253
+ wrapper: PropTypes.string,
254
+ /**
255
+ * 头部元素css类名
256
+ */
257
+ header: PropTypes.string,
258
+ /**
259
+ * 内容元素css类名
260
+ */
261
+ body: PropTypes.string,
262
+ /**
263
+ * 底部元素css类名
264
+ */
265
+ footer: PropTypes.string
266
+ }),
267
+
208
268
  /**
209
269
  * 组件型,标题内容
210
270
  */
@@ -277,11 +337,6 @@ AntdPopupCard.propTypes = {
277
337
  */
278
338
  zIndex: PropTypes.number,
279
339
 
280
- /**
281
- * 内容区域css样式
282
- */
283
- bodyStyle: PropTypes.object,
284
-
285
340
  /**
286
341
  * 是否整体渲染为加载中状态
287
342
  * 默认值:`false`
@@ -302,35 +357,7 @@ AntdPopupCard.propTypes = {
302
357
  * Dash-assigned callback that should be called to report property changes
303
358
  * to Dash, to make them available for callbacks.
304
359
  */
305
- setProps: PropTypes.func,
306
-
307
- loading_state: PropTypes.shape({
308
- /**
309
- * Determines if the component is loading or not
310
- */
311
- is_loading: PropTypes.bool,
312
- /**
313
- * Holds which property is loading
314
- */
315
- prop_name: PropTypes.string,
316
- /**
317
- * Holds the name of the component that is loading
318
- */
319
- component_name: PropTypes.string
320
- })
360
+ setProps: PropTypes.func
321
361
  };
322
362
 
323
- // 设置默认参数
324
- AntdPopupCard.defaultProps = {
325
- transitionType: 'fade',
326
- closeIconType: 'default',
327
- draggable: false,
328
- visible: true,
329
- closable: true,
330
- zIndex: 1000,
331
- loading: false,
332
- forceRender: false,
333
- destroyOnClose: true
334
- }
335
-
336
363
  export default AntdPopupCard;
@@ -6,41 +6,40 @@ import { Progress } from 'antd';
6
6
  // 辅助库
7
7
  import { isString } from 'lodash';
8
8
  import { pickBy } from 'ramda';
9
+ import { useLoading } from '../utils';
9
10
  // 自定义hooks
10
11
  import useCss from '../../hooks/useCss';
11
12
 
12
13
  /**
13
14
  * 进度条组件AntdProgress
14
15
  */
15
- const AntdProgress = (props) => {
16
- let {
17
- id,
18
- className,
19
- style,
20
- key,
21
- type,
22
- size,
23
- percent,
24
- success,
25
- format,
26
- status,
27
- showInfo,
28
- strokeColor,
29
- strokeLinecap,
30
- strokeWidth,
31
- trailColor,
32
- width,
33
- gapDegree,
34
- gapPosition,
35
- steps,
36
- loading_state,
37
- setProps
38
- } = props;
16
+ const AntdProgress = ({
17
+ id,
18
+ className,
19
+ style,
20
+ key,
21
+ type = 'line',
22
+ size = 'default',
23
+ percent = 0,
24
+ success,
25
+ format,
26
+ status,
27
+ showInfo = true,
28
+ strokeColor,
29
+ strokeLinecap,
30
+ strokeWidth,
31
+ trailColor,
32
+ gapDegree,
33
+ gapPosition = 'bottom',
34
+ steps,
35
+ setProps,
36
+ ...others
37
+ }) => {
39
38
 
40
39
  return (
41
40
  <Progress
42
41
  // 提取具有data-*或aria-*通配格式的属性
43
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
42
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
44
43
  id={id}
45
44
  className={
46
45
  isString(className) ?
@@ -73,13 +72,10 @@ const AntdProgress = (props) => {
73
72
  strokeLinecap={strokeLinecap}
74
73
  strokeWidth={strokeWidth}
75
74
  trailColor={trailColor}
76
- width={width}
77
75
  gapDegree={gapDegree}
78
76
  gapPosition={gapPosition}
79
77
  steps={steps}
80
- data-dash-is-loading={
81
- (loading_state && loading_state.is_loading) || undefined
82
- }
78
+ data-dash-is-loading={useLoading()}
83
79
  ></Progress>
84
80
  );
85
81
  }
@@ -115,13 +111,23 @@ AntdProgress.propTypes = {
115
111
  type: PropTypes.oneOf(['line', 'circle', 'dashboard']),
116
112
 
117
113
  /**
118
- * 进度条尺寸规格,可选项有`'small'`、`'default'`、`'large'`,传入数值型表示像素尺寸
114
+ * 进度条尺寸规格,可选项有`'small'`、`'default'`、`'large'`,传入数值型表示像素尺寸,传入字典型可分别控制宽度和高度
119
115
  * 默认值:`'default'`
120
116
  */
121
117
  size: PropTypes.oneOfType([
122
118
  PropTypes.number,
123
119
  PropTypes.arrayOf(PropTypes.number),
124
120
  PropTypes.oneOf(['small', 'default']),
121
+ PropTypes.shape({
122
+ /**
123
+ * 像素宽度
124
+ */
125
+ width: PropTypes.number,
126
+ /**
127
+ * 像素高度
128
+ */
129
+ height: PropTypes.number
130
+ })
125
131
  ]),
126
132
 
127
133
  /**
@@ -224,12 +230,6 @@ AntdProgress.propTypes = {
224
230
  */
225
231
  trailColor: PropTypes.string,
226
232
 
227
- /**
228
- * 进度条画布宽度,`type='circle'`或`type='dashboard'`时有效
229
- * 默认值:`132`
230
- */
231
- width: PropTypes.number,
232
-
233
233
  /**
234
234
  * 进度条缺口角度,取值应在`0`到`295`之间,仅`type='dashboard'`时可用
235
235
  * 默认值:`75`
@@ -257,21 +257,6 @@ AntdProgress.propTypes = {
257
257
  */
258
258
  'aria-*': PropTypes.string,
259
259
 
260
- loading_state: PropTypes.shape({
261
- /**
262
- * Determines if the component is loading or not
263
- */
264
- is_loading: PropTypes.bool,
265
- /**
266
- * Holds which property is loading
267
- */
268
- prop_name: PropTypes.string,
269
- /**
270
- * Holds the name of the component that is loading
271
- */
272
- component_name: PropTypes.string
273
- }),
274
-
275
260
  /**
276
261
  * Dash-assigned callback that should be called to report property changes
277
262
  * to Dash, to make them available for callbacks.
@@ -279,14 +264,4 @@ AntdProgress.propTypes = {
279
264
  setProps: PropTypes.func
280
265
  };
281
266
 
282
- // 设置默认参数
283
- AntdProgress.defaultProps = {
284
- type: 'line',
285
- size: 'default',
286
- percent: 0,
287
- showInfo: true,
288
- width: 132,
289
- gapPosition: 'bottom'
290
- }
291
-
292
267
  export default AntdProgress;
@@ -7,31 +7,31 @@ import { LoadingOutlined } from '@ant-design/icons';
7
7
  // 辅助库
8
8
  import { isString } from 'lodash';
9
9
  import { pickBy } from 'ramda';
10
+ import { useLoading } from '../utils';
10
11
  // 自定义hooks
11
12
  import useCss from '../../hooks/useCss';
12
13
 
13
14
  /**
14
15
  * 结果组件AntdResult
15
16
  */
16
- const AntdResult = (props) => {
17
- let {
18
- id,
19
- className,
20
- style,
21
- key,
22
- extra,
23
- status,
24
- title,
25
- subTitle,
26
- icon,
27
- loading_state,
28
- setProps
29
- } = props;
17
+ const AntdResult = ({
18
+ id,
19
+ className,
20
+ style,
21
+ key,
22
+ extra,
23
+ status = 'info',
24
+ title,
25
+ subTitle,
26
+ icon,
27
+ setProps,
28
+ ...others
29
+ }) => {
30
30
 
31
31
  return (
32
32
  <Result
33
33
  // 提取具有data-*或aria-*通配格式的属性
34
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
34
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
35
35
  id={id}
36
36
  className={
37
37
  isString(className) ?
@@ -51,9 +51,7 @@ const AntdResult = (props) => {
51
51
  status={status}
52
52
  title={title}
53
53
  subTitle={subTitle}
54
- data-dash-is-loading={
55
- (loading_state && loading_state.is_loading) || undefined
56
- }>
54
+ data-dash-is-loading={useLoading()}>
57
55
  </Result>
58
56
  );
59
57
  }
@@ -118,21 +116,6 @@ AntdResult.propTypes = {
118
116
  */
119
117
  'aria-*': PropTypes.string,
120
118
 
121
- loading_state: PropTypes.shape({
122
- /**
123
- * Determines if the component is loading or not
124
- */
125
- is_loading: PropTypes.bool,
126
- /**
127
- * Holds which property is loading
128
- */
129
- prop_name: PropTypes.string,
130
- /**
131
- * Holds the name of the component that is loading
132
- */
133
- component_name: PropTypes.string
134
- }),
135
-
136
119
  /**
137
120
  * Dash-assigned callback that should be called to report property changes
138
121
  * to Dash, to make them available for callbacks.
@@ -140,9 +123,4 @@ AntdResult.propTypes = {
140
123
  setProps: PropTypes.func
141
124
  };
142
125
 
143
- // 设置默认参数
144
- AntdResult.defaultProps = {
145
- status: 'info'
146
- }
147
-
148
126
  export default AntdResult;
@@ -5,36 +5,40 @@ import PropTypes from 'prop-types';
5
5
  import { Spin } from 'antd';
6
6
  // 辅助库
7
7
  import { isString, isNumber } from 'lodash';
8
- import { pickBy } from 'ramda';
8
+ import { pickBy, equals } from 'ramda';
9
+ import { useLoading, loadingSelector } from '../utils';
9
10
  // 自定义hooks
10
11
  import useCss from '../../hooks/useCss'
11
12
 
12
13
  /**
13
- * 加载动画组件AntdSpid
14
+ * 加载动画组件AntdSpin
14
15
  */
15
- const AntdSpin = (props) => {
16
- let {
17
- id,
18
- className,
19
- wrapperClassName,
20
- style,
21
- key,
22
- children,
23
- spinning,
24
- size,
25
- delay,
26
- fullscreen,
27
- loading_state,
28
- text,
29
- listenPropsMode,
30
- excludeProps,
31
- includeProps,
32
- debug,
33
- indicator,
34
- manual,
35
- percent,
36
- setProps
37
- } = props;
16
+ const AntdSpin = ({
17
+ id,
18
+ className,
19
+ wrapperClassName,
20
+ style,
21
+ key,
22
+ children,
23
+ spinning = false,
24
+ size = 'middle',
25
+ delay,
26
+ fullscreen = false,
27
+ text,
28
+ listenPropsMode = 'default',
29
+ excludeProps = [],
30
+ includeProps = [],
31
+ debug = false,
32
+ indicator,
33
+ manual = false,
34
+ percent,
35
+ setProps,
36
+ ...others
37
+ }) => {
38
+
39
+ const ctx = window.dash_component_api.useDashContext();
40
+ // 获取内部加载中组件信息
41
+ const loading_info = ctx.useSelector(loadingSelector(ctx.componentPath), equals);
38
42
 
39
43
  useEffect(() => {
40
44
  // 检查数值型percent参数是否取值在合法的0到100之间
@@ -49,42 +53,42 @@ const AntdSpin = (props) => {
49
53
 
50
54
  useEffect(() => {
51
55
  // 非手动控制模式下
52
- if (!manual && loading_state) {
56
+ if (!manual && loading_info) {
53
57
  if (timer.current) {
54
58
  clearTimeout(timer.current);
55
59
  }
56
- if (loading_state.is_loading && !showSpinning) {
57
- // 当listenPropsMode为'default'时-
60
+ if (loading_info.length > 0 && !showSpinning) {
61
+ // 当listenPropsMode为'default'
58
62
  if (listenPropsMode === 'default') {
59
63
  if (debug) {
60
- console.log(loading_state.component_name + '.' + loading_state.prop_name.split('@')[0])
64
+ loading_info.forEach(item => console.log(item.id + '.' + item.property))
61
65
  }
62
66
  setShowSpinning(true);
63
67
  } else if (listenPropsMode === 'exclude') {
64
68
  // 当listenPropsMode为'exclude'模式时
65
- // 当前触发loading_state的组件+属性组合不在排除列表中时,激活动画
66
- if (excludeProps.indexOf(loading_state.component_name + '.' + loading_state.prop_name.split('@')[0]) === -1) {
69
+ // 当前触发加载状态的组件+属性组合均不在排除列表中时,激活动画
70
+ if (loading_info.every(item => excludeProps.indexOf(item.id + '.' + item.property) === -1)) {
67
71
  if (debug) {
68
- console.log(loading_state.component_name + '.' + loading_state.prop_name.split('@')[0])
72
+ loading_info.forEach(item => console.log(item.id + '.' + item.property))
69
73
  }
70
74
  setShowSpinning(true);
71
75
  }
72
76
  } else if (listenPropsMode === 'include') {
73
77
  // 当listenPropsMode为'include'模式时
74
- // 当前触发loading_state的组件+属性组合在包含列表中时,激活动画
75
- if (includeProps.indexOf(loading_state.component_name + '.' + loading_state.prop_name.split('@')[0]) !== -1) {
78
+ // 当前触发加载状态的组件+属性组合至少有一个在包含列表中时,激活动画
79
+ if (loading_info.some(item => includeProps.indexOf(item.id + '.' + item.property) !== -1)) {
76
80
  if (debug) {
77
- console.log(loading_state.component_name + '.' + loading_state.prop_name.split('@')[0])
81
+ loading_info.forEach(item => console.log(item.id + '.' + item.property))
78
82
  }
79
83
  setShowSpinning(true);
80
84
  }
81
85
  }
82
86
 
83
- } else if (!loading_state.is_loading && showSpinning) {
87
+ } else if (loading_info.length === 0 && showSpinning) {
84
88
  timer.current = setTimeout(() => setShowSpinning(false));
85
89
  }
86
90
  }
87
- }, [loading_state]);
91
+ }, [loading_info]);
88
92
 
89
93
  // 修复设置全屏后子元素无法渲染的问题
90
94
  if (fullscreen) {
@@ -92,7 +96,7 @@ const AntdSpin = (props) => {
92
96
  <>
93
97
  <Spin
94
98
  // 提取具有data-*或aria-*通配格式的属性
95
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
99
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
96
100
  id={id}
97
101
  className={
98
102
  isString(className) ?
@@ -113,9 +117,7 @@ const AntdSpin = (props) => {
113
117
  tip={text}
114
118
  indicator={indicator}
115
119
  percent={percent}
116
- data-dash-is-loading={
117
- (loading_state && loading_state.is_loading) || undefined
118
- } />
120
+ data-dash-is-loading={useLoading()} />
119
121
  {children}
120
122
  </>
121
123
  );
@@ -124,7 +126,7 @@ const AntdSpin = (props) => {
124
126
  return (
125
127
  <Spin
126
128
  // 提取具有data-*或aria-*通配格式的属性
127
- {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), props)}
129
+ {...pickBy((_, k) => k.startsWith('data-') || k.startsWith('aria-'), others)}
128
130
  id={id}
129
131
  className={
130
132
  isString(className) ?
@@ -145,14 +147,10 @@ const AntdSpin = (props) => {
145
147
  tip={text}
146
148
  indicator={indicator}
147
149
  percent={percent}
148
- data-dash-is-loading={
149
- (loading_state && loading_state.is_loading) || undefined
150
- } > {children} </Spin>
150
+ data-dash-is-loading={useLoading()} > {children} </Spin>
151
151
  );
152
152
  }
153
153
 
154
- AntdSpin._dashprivate_isLoadingComponent = true;
155
-
156
154
  AntdSpin.propTypes = {
157
155
  /**
158
156
  * 组件唯一id
@@ -266,21 +264,6 @@ AntdSpin.propTypes = {
266
264
  */
267
265
  'aria-*': PropTypes.string,
268
266
 
269
- loading_state: PropTypes.shape({
270
- /**
271
- * Determines if the component is loading or not
272
- */
273
- is_loading: PropTypes.bool,
274
- /**
275
- * Holds which property is loading
276
- */
277
- prop_name: PropTypes.string,
278
- /**
279
- * Holds the name of the component that is loading
280
- */
281
- component_name: PropTypes.string
282
- }),
283
-
284
267
  /**
285
268
  * Dash-assigned callback that should be called to report property changes
286
269
  * to Dash, to make them available for callbacks.
@@ -288,16 +271,4 @@ AntdSpin.propTypes = {
288
271
  setProps: PropTypes.func
289
272
  };
290
273
 
291
- // 设置默认参数
292
- AntdSpin.defaultProps = {
293
- size: 'middle',
294
- spinning: false,
295
- fullscreen: false,
296
- listenPropsMode: 'default',
297
- excludeProps: [],
298
- includeProps: [],
299
- debug: false,
300
- manual: false
301
- }
302
-
303
274
  export default AntdSpin;