feffery_antd_components 0.4.3-rc6 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/CONTRIBUTING.md +4 -4
  2. package/DESCRIPTION +1 -1
  3. package/LICENSE +21 -21
  4. package/MANIFEST.in +6 -6
  5. package/Project.toml +1 -1
  6. package/README-en_US.md +73 -73
  7. package/README.md +87 -87
  8. package/bug_fix.py +21 -36
  9. package/fac-logo.svg +151 -151
  10. package/feffery_antd_components/AntdAccordion.py +7 -7
  11. package/feffery_antd_components/AntdAffix.py +2 -2
  12. package/feffery_antd_components/AntdAlert.py +5 -5
  13. package/feffery_antd_components/AntdAnchor.py +5 -5
  14. package/feffery_antd_components/AntdAvatar.py +4 -4
  15. package/feffery_antd_components/AntdAvatarGroup.py +1 -1
  16. package/feffery_antd_components/AntdBackTop.py +4 -4
  17. package/feffery_antd_components/AntdBadge.py +5 -5
  18. package/feffery_antd_components/AntdBreadcrumb.py +4 -4
  19. package/feffery_antd_components/AntdButton.py +14 -14
  20. package/feffery_antd_components/AntdCalendar.py +4 -4
  21. package/feffery_antd_components/AntdCard.py +5 -5
  22. package/feffery_antd_components/AntdCardGrid.py +3 -3
  23. package/feffery_antd_components/AntdCardMeta.py +1 -1
  24. package/feffery_antd_components/AntdCarousel.py +13 -13
  25. package/feffery_antd_components/AntdCascader.py +16 -17
  26. package/feffery_antd_components/AntdCenter.py +3 -3
  27. package/feffery_antd_components/AntdCheckCard.py +7 -7
  28. package/feffery_antd_components/AntdCheckCardGroup.py +9 -9
  29. package/feffery_antd_components/AntdCheckableTag.py +2 -2
  30. package/feffery_antd_components/AntdCheckbox.py +8 -8
  31. package/feffery_antd_components/AntdCheckboxGroup.py +6 -6
  32. package/feffery_antd_components/AntdCol.py +5 -5
  33. package/feffery_antd_components/AntdCollapse.py +8 -8
  34. package/feffery_antd_components/AntdColorPicker.py +13 -13
  35. package/feffery_antd_components/AntdComment.py +7 -7
  36. package/feffery_antd_components/AntdCompact.py +3 -3
  37. package/feffery_antd_components/AntdConfigProvider.py +6 -6
  38. package/feffery_antd_components/AntdContent.py +1 -1
  39. package/feffery_antd_components/AntdCopyText.py +2 -2
  40. package/feffery_antd_components/AntdCountdown.py +1 -1
  41. package/feffery_antd_components/AntdCountup.py +1 -1
  42. package/feffery_antd_components/AntdCustomSkeleton.py +5 -5
  43. package/feffery_antd_components/AntdDatePicker.py +13 -13
  44. package/feffery_antd_components/AntdDateRangePicker.py +12 -12
  45. package/feffery_antd_components/AntdDescriptionItem.py +2 -2
  46. package/feffery_antd_components/AntdDescriptions.py +6 -6
  47. package/feffery_antd_components/AntdDivider.py +5 -5
  48. package/feffery_antd_components/AntdDraggerUpload.py +15 -15
  49. package/feffery_antd_components/AntdDrawer.py +12 -12
  50. package/feffery_antd_components/AntdDropdown.py +18 -18
  51. package/feffery_antd_components/AntdEmpty.py +2 -2
  52. package/feffery_antd_components/AntdFlex.py +6 -6
  53. package/feffery_antd_components/AntdFloatButton.py +5 -5
  54. package/feffery_antd_components/AntdFloatButtonGroup.py +3 -3
  55. package/feffery_antd_components/AntdFooter.py +1 -1
  56. package/feffery_antd_components/AntdForm.py +10 -6
  57. package/feffery_antd_components/AntdFormItem.py +4 -4
  58. package/feffery_antd_components/AntdFormRender.py +2 -2
  59. package/feffery_antd_components/AntdHappyProvider.py +2 -2
  60. package/feffery_antd_components/AntdHeader.py +1 -1
  61. package/feffery_antd_components/AntdIcon.py +3 -3
  62. package/feffery_antd_components/AntdImage.py +6 -6
  63. package/feffery_antd_components/AntdImageGroup.py +6 -6
  64. package/feffery_antd_components/AntdInput.py +17 -17
  65. package/feffery_antd_components/AntdInputNumber.py +12 -12
  66. package/feffery_antd_components/AntdLayout.py +1 -1
  67. package/feffery_antd_components/AntdMentions.py +9 -9
  68. package/feffery_antd_components/AntdMenu.py +9 -9
  69. package/feffery_antd_components/AntdMessage.py +3 -3
  70. package/feffery_antd_components/AntdModal.py +28 -28
  71. package/feffery_antd_components/AntdNotification.py +9 -9
  72. package/feffery_antd_components/AntdOTP.py +7 -7
  73. package/feffery_antd_components/AntdPageHeader.py +5 -5
  74. package/feffery_antd_components/AntdPagination.py +15 -15
  75. package/feffery_antd_components/AntdParagraph.py +2 -2
  76. package/feffery_antd_components/AntdPictureUpload.py +28 -28
  77. package/feffery_antd_components/AntdPopconfirm.py +21 -21
  78. package/feffery_antd_components/AntdPopover.py +9 -9
  79. package/feffery_antd_components/AntdPopupCard.py +9 -9
  80. package/feffery_antd_components/AntdProgress.py +9 -9
  81. package/feffery_antd_components/AntdQRCode.py +10 -10
  82. package/feffery_antd_components/AntdRadioGroup.py +9 -9
  83. package/feffery_antd_components/AntdRate.py +9 -9
  84. package/feffery_antd_components/AntdResult.py +1 -1
  85. package/feffery_antd_components/AntdRibbon.py +2 -2
  86. package/feffery_antd_components/AntdRow.py +3 -3
  87. package/feffery_antd_components/AntdSegmented.py +9 -9
  88. package/feffery_antd_components/AntdSegmentedColoring.py +11 -11
  89. package/feffery_antd_components/AntdSelect.py +19 -19
  90. package/feffery_antd_components/AntdSider.py +6 -6
  91. package/feffery_antd_components/AntdSkeleton.py +11 -11
  92. package/feffery_antd_components/AntdSkeletonAvatar.py +3 -3
  93. package/feffery_antd_components/AntdSkeletonButton.py +5 -5
  94. package/feffery_antd_components/AntdSkeletonImage.py +1 -1
  95. package/feffery_antd_components/AntdSkeletonInput.py +3 -3
  96. package/feffery_antd_components/AntdSlider.py +10 -10
  97. package/feffery_antd_components/AntdSpace.py +4 -4
  98. package/feffery_antd_components/AntdSpin.py +7 -8
  99. package/feffery_antd_components/AntdSplitter.py +5 -5
  100. package/feffery_antd_components/AntdSpoiler.py +5 -5
  101. package/feffery_antd_components/AntdStatistic.py +2 -2
  102. package/feffery_antd_components/AntdSteps.py +8 -8
  103. package/feffery_antd_components/AntdSwitch.py +8 -8
  104. package/feffery_antd_components/AntdTable.py +64 -63
  105. package/feffery_antd_components/AntdTabs.py +13 -14
  106. package/feffery_antd_components/AntdTag.py +4 -4
  107. package/feffery_antd_components/AntdText.py +2 -2
  108. package/feffery_antd_components/AntdTimePicker.py +16 -16
  109. package/feffery_antd_components/AntdTimeRangePicker.py +15 -15
  110. package/feffery_antd_components/AntdTimeline.py +2 -2
  111. package/feffery_antd_components/AntdTitle.py +2 -2
  112. package/feffery_antd_components/AntdTooltip.py +9 -9
  113. package/feffery_antd_components/AntdTour.py +9 -9
  114. package/feffery_antd_components/AntdTransfer.py +11 -11
  115. package/feffery_antd_components/AntdTree.py +17 -17
  116. package/feffery_antd_components/AntdTreeSelect.py +18 -18
  117. package/feffery_antd_components/AntdUpload.py +18 -18
  118. package/feffery_antd_components/AntdWatermark.py +6 -6
  119. package/feffery_antd_components/Fragment.py +1 -1
  120. package/feffery_antd_components/__init__.py +88 -88
  121. package/feffery_antd_components/_icons.py +559 -559
  122. package/feffery_antd_components/alias.py +222 -222
  123. package/feffery_antd_components/async-antd_table.js +2 -2
  124. package/feffery_antd_components/async-data_display.js +1 -1
  125. package/feffery_antd_components/async-data_entry.js +3 -3
  126. package/feffery_antd_components/async-upload.js +2 -2
  127. package/feffery_antd_components/feffery_antd_components.min.js +8 -8
  128. package/feffery_antd_components/metadata.json +1 -1
  129. package/feffery_antd_components/package-info.json +111 -96
  130. package/feffery_antd_components/utils.py +262 -262
  131. package/package.json +111 -96
  132. package/pytest.ini +5 -5
  133. package/release-to-test-pypi.sh +1 -1
  134. package/requirements.txt +2 -2
  135. package/review_checklist.md +47 -47
  136. package/ruff.toml +4 -4
  137. package/setup.py +33 -33
  138. package/src/jl/'feffery'_antdform.jl +2 -1
  139. package/src/jl/'feffery'_antdtable.jl +7 -6
  140. package/src/lib/components/dataDisplay/AntdAccordion.react.js +232 -232
  141. package/src/lib/components/dataDisplay/AntdAvatar.react.js +177 -177
  142. package/src/lib/components/dataDisplay/AntdAvatarGroup.react.js +133 -133
  143. package/src/lib/components/dataDisplay/AntdBadge.react.js +196 -196
  144. package/src/lib/components/dataDisplay/AntdCarousel.react.js +187 -187
  145. package/src/lib/components/dataDisplay/AntdCheckableTag.react.js +105 -105
  146. package/src/lib/components/dataDisplay/AntdCollapse.react.js +239 -239
  147. package/src/lib/components/dataDisplay/AntdComment.react.js +251 -251
  148. package/src/lib/components/dataDisplay/AntdCountdown.react.js +143 -143
  149. package/src/lib/components/dataDisplay/AntdCountup.react.js +133 -133
  150. package/src/lib/components/dataDisplay/AntdEmpty.react.js +162 -162
  151. package/src/lib/components/dataDisplay/AntdImage.react.js +202 -202
  152. package/src/lib/components/dataDisplay/AntdImageGroup.react.js +181 -181
  153. package/src/lib/components/dataDisplay/AntdPopover.react.js +220 -220
  154. package/src/lib/components/dataDisplay/AntdQRCode.react.js +191 -191
  155. package/src/lib/components/dataDisplay/AntdRibbon.react.js +105 -105
  156. package/src/lib/components/dataDisplay/AntdSegmented.react.js +234 -234
  157. package/src/lib/components/dataDisplay/AntdSpoiler.react.js +154 -154
  158. package/src/lib/components/dataDisplay/AntdStatistic.react.js +168 -168
  159. package/src/lib/components/dataDisplay/AntdTable.react.js +1859 -1858
  160. package/src/lib/components/dataDisplay/AntdTabs.react.js +352 -352
  161. package/src/lib/components/dataDisplay/AntdTag.react.js +135 -135
  162. package/src/lib/components/dataDisplay/AntdTimeline.react.js +136 -136
  163. package/src/lib/components/dataDisplay/AntdTooltip.react.js +230 -230
  164. package/src/lib/components/dataDisplay/AntdTree.react.js +641 -641
  165. package/src/lib/components/dataDisplay/card/AntdCard.react.js +249 -249
  166. package/src/lib/components/dataDisplay/card/AntdCardGrid.react.js +99 -99
  167. package/src/lib/components/dataDisplay/card/AntdCardMeta.react.js +97 -97
  168. package/src/lib/components/dataDisplay/descriptions/AntdDescriptionItem.react.js +130 -130
  169. package/src/lib/components/dataDisplay/descriptions/AntdDescriptions.react.js +237 -237
  170. package/src/lib/components/dataEntry/AntdCalendar.react.js +205 -205
  171. package/src/lib/components/dataEntry/AntdCascader.react.js +435 -435
  172. package/src/lib/components/dataEntry/AntdCheckbox.react.js +182 -182
  173. package/src/lib/components/dataEntry/AntdCheckboxGroup.react.js +193 -193
  174. package/src/lib/components/dataEntry/AntdColorPicker.react.js +240 -240
  175. package/src/lib/components/dataEntry/AntdDatePicker.react.js +432 -432
  176. package/src/lib/components/dataEntry/AntdDateRangePicker.react.js +439 -439
  177. package/src/lib/components/dataEntry/AntdInput.react.js +423 -423
  178. package/src/lib/components/dataEntry/AntdInputNumber.react.js +329 -329
  179. package/src/lib/components/dataEntry/AntdMentions.react.js +236 -236
  180. package/src/lib/components/dataEntry/AntdOTP.react.js +186 -186
  181. package/src/lib/components/dataEntry/AntdRadioGroup.react.js +241 -241
  182. package/src/lib/components/dataEntry/AntdRate.react.js +199 -199
  183. package/src/lib/components/dataEntry/AntdSegmentedColoring.react.js +251 -251
  184. package/src/lib/components/dataEntry/AntdSelect.react.js +492 -492
  185. package/src/lib/components/dataEntry/AntdSlider.react.js +325 -325
  186. package/src/lib/components/dataEntry/AntdSwitch.react.js +210 -210
  187. package/src/lib/components/dataEntry/AntdTimePicker.react.js +344 -344
  188. package/src/lib/components/dataEntry/AntdTimeRangePicker.react.js +325 -325
  189. package/src/lib/components/dataEntry/AntdTransfer.react.js +317 -317
  190. package/src/lib/components/dataEntry/AntdTreeSelect.react.js +573 -573
  191. package/src/lib/components/dataEntry/check-card/AntdCheckCard.react.js +186 -186
  192. package/src/lib/components/dataEntry/check-card/AntdCheckCardGroup.react.js +214 -214
  193. package/src/lib/components/dataEntry/form/AntdForm.react.js +201 -194
  194. package/src/lib/components/dataEntry/form/AntdFormItem.react.js +210 -210
  195. package/src/lib/components/dataEntry/upload/AntdDraggerUpload.react.js +504 -504
  196. package/src/lib/components/dataEntry/upload/AntdPictureUpload.react.js +530 -530
  197. package/src/lib/components/dataEntry/upload/AntdUpload.react.js +537 -537
  198. package/src/lib/components/feedback/AntdAlert.react.js +185 -185
  199. package/src/lib/components/feedback/AntdDrawer.react.js +306 -306
  200. package/src/lib/components/feedback/AntdMessage.react.js +143 -143
  201. package/src/lib/components/feedback/AntdModal.react.js +530 -530
  202. package/src/lib/components/feedback/AntdNotification.react.js +211 -211
  203. package/src/lib/components/feedback/AntdPopconfirm.react.js +433 -433
  204. package/src/lib/components/feedback/AntdPopupCard.react.js +362 -362
  205. package/src/lib/components/feedback/AntdProgress.react.js +300 -300
  206. package/src/lib/components/feedback/AntdResult.react.js +125 -125
  207. package/src/lib/components/feedback/AntdSpin.react.js +273 -273
  208. package/src/lib/components/feedback/skeleton/AntdCustomSkeleton.react.js +197 -197
  209. package/src/lib/components/feedback/skeleton/AntdSkeleton.react.js +291 -291
  210. package/src/lib/components/feedback/skeleton/AntdSkeletonAvatar.react.js +109 -109
  211. package/src/lib/components/feedback/skeleton/AntdSkeletonButton.react.js +114 -114
  212. package/src/lib/components/feedback/skeleton/AntdSkeletonImage.react.js +82 -82
  213. package/src/lib/components/feedback/skeleton/AntdSkeletonInput.react.js +98 -98
  214. package/src/lib/components/formRender/AntdFormRender.react.js +945 -945
  215. package/src/lib/components/general/AntdButton.react.js +328 -328
  216. package/src/lib/components/general/AntdFloatButton.react.js +157 -157
  217. package/src/lib/components/general/AntdFloatButtonGroup.react.js +162 -162
  218. package/src/lib/components/general/AntdIcon.react.js +176 -176
  219. package/src/lib/components/general/typography/AntdParagraph.react.js +202 -202
  220. package/src/lib/components/general/typography/AntdText.react.js +194 -194
  221. package/src/lib/components/general/typography/AntdTitle.react.js +186 -186
  222. package/src/lib/components/icons.react.js +1136 -1136
  223. package/src/lib/components/layout/AntdCenter.react.js +122 -122
  224. package/src/lib/components/layout/AntdCompact.react.js +108 -108
  225. package/src/lib/components/layout/AntdContent.react.js +92 -92
  226. package/src/lib/components/layout/AntdDivider.react.js +219 -219
  227. package/src/lib/components/layout/AntdFlex.react.js +143 -143
  228. package/src/lib/components/layout/AntdFooter.react.js +92 -92
  229. package/src/lib/components/layout/AntdHeader.react.js +92 -92
  230. package/src/lib/components/layout/AntdLayout.react.js +90 -90
  231. package/src/lib/components/layout/AntdSider.react.js +162 -162
  232. package/src/lib/components/layout/AntdSpace.react.js +213 -213
  233. package/src/lib/components/layout/AntdSplitter.react.js +173 -173
  234. package/src/lib/components/layout/grid/AntdCol.react.js +349 -349
  235. package/src/lib/components/layout/grid/AntdRow.react.js +152 -152
  236. package/src/lib/components/locales.react.js +197 -197
  237. package/src/lib/components/navigation/AntdAnchor.react.js +208 -208
  238. package/src/lib/components/navigation/AntdBreadcrumb.react.js +270 -270
  239. package/src/lib/components/navigation/AntdDropdown.react.js +469 -469
  240. package/src/lib/components/navigation/AntdMenu.react.js +573 -649
  241. package/src/lib/components/navigation/AntdPageHeader.react.js +139 -139
  242. package/src/lib/components/navigation/AntdPagination.react.js +303 -303
  243. package/src/lib/components/navigation/AntdSteps.react.js +199 -199
  244. package/src/lib/components/other/AntdAffix.react.js +120 -120
  245. package/src/lib/components/other/AntdBackTop.react.js +128 -128
  246. package/src/lib/components/other/AntdConfigProvider.react.js +246 -246
  247. package/src/lib/components/other/AntdCopyText.react.js +138 -138
  248. package/src/lib/components/other/AntdHappyProvider.react.js +50 -50
  249. package/src/lib/components/other/AntdTour.react.js +277 -277
  250. package/src/lib/components/other/AntdWatermark.react.js +179 -179
  251. package/src/lib/components/other/Fragment.react.js +50 -50
  252. package/src/lib/components/styles.css +513 -513
  253. package/src/lib/components/utils.js +51 -51
  254. package/src/lib/contexts/FormContext.js +4 -4
  255. package/src/lib/contexts/FormItemContext.js +4 -4
  256. package/src/lib/contexts/PropsContext.js +4 -4
  257. package/src/lib/fragments/AntdTable.react.js +2215 -2200
  258. package/src/lib/fragments/dataDisplay/AntdAccordion.react.js +101 -101
  259. package/src/lib/fragments/dataDisplay/AntdAvatar.react.js +127 -127
  260. package/src/lib/fragments/dataDisplay/AntdAvatarGroup.react.js +51 -51
  261. package/src/lib/fragments/dataDisplay/AntdBadge.react.js +73 -73
  262. package/src/lib/fragments/dataDisplay/AntdCarousel.react.js +71 -71
  263. package/src/lib/fragments/dataDisplay/AntdCheckableTag.react.js +57 -57
  264. package/src/lib/fragments/dataDisplay/AntdComment.react.js +178 -178
  265. package/src/lib/fragments/dataDisplay/AntdCountdown.react.js +83 -83
  266. package/src/lib/fragments/dataDisplay/AntdCountup.react.js +70 -70
  267. package/src/lib/fragments/dataDisplay/AntdEmpty.react.js +71 -71
  268. package/src/lib/fragments/dataDisplay/AntdImage.react.js +206 -206
  269. package/src/lib/fragments/dataDisplay/AntdImageGroup.react.js +91 -91
  270. package/src/lib/fragments/dataDisplay/AntdPopover.react.js +106 -106
  271. package/src/lib/fragments/dataDisplay/AntdQRCode.react.js +93 -93
  272. package/src/lib/fragments/dataDisplay/AntdRibbon.react.js +53 -53
  273. package/src/lib/fragments/dataDisplay/AntdSegmented.react.js +129 -129
  274. package/src/lib/fragments/dataDisplay/AntdSpoiler.react.js +96 -96
  275. package/src/lib/fragments/dataDisplay/AntdTabs.react.js +211 -211
  276. package/src/lib/fragments/dataDisplay/AntdTag.react.js +66 -66
  277. package/src/lib/fragments/dataDisplay/AntdTimeline.react.js +67 -67
  278. package/src/lib/fragments/dataDisplay/AntdTooltip.react.js +98 -98
  279. package/src/lib/fragments/dataDisplay/AntdTree.react.js +581 -581
  280. package/src/lib/fragments/dataDisplay/card/AntdCard.react.js +104 -104
  281. package/src/lib/fragments/dataDisplay/card/AntdCardGrid.react.js +54 -54
  282. package/src/lib/fragments/dataDisplay/card/AntdCardMeta.react.js +54 -54
  283. package/src/lib/fragments/dataDisplay/descriptions/AntdDescriptionItem.react.js +56 -56
  284. package/src/lib/fragments/dataDisplay/descriptions/AntdDescriptions.react.js +139 -139
  285. package/src/lib/fragments/dataEntry/AntdCalendar.react.js +178 -178
  286. package/src/lib/fragments/dataEntry/AntdCascader.react.js +319 -319
  287. package/src/lib/fragments/dataEntry/AntdCheckbox.react.js +119 -119
  288. package/src/lib/fragments/dataEntry/AntdCheckboxGroup.react.js +122 -122
  289. package/src/lib/fragments/dataEntry/AntdColorPicker.react.js +244 -244
  290. package/src/lib/fragments/dataEntry/AntdDatePicker.react.js +586 -586
  291. package/src/lib/fragments/dataEntry/AntdDateRangePicker.react.js +628 -628
  292. package/src/lib/fragments/dataEntry/AntdInput.react.js +450 -450
  293. package/src/lib/fragments/dataEntry/AntdInputNumber.react.js +194 -194
  294. package/src/lib/fragments/dataEntry/AntdMentions.react.js +180 -180
  295. package/src/lib/fragments/dataEntry/AntdOTP.react.js +127 -127
  296. package/src/lib/fragments/dataEntry/AntdRadioGroup.react.js +203 -203
  297. package/src/lib/fragments/dataEntry/AntdRate.react.js +131 -131
  298. package/src/lib/fragments/dataEntry/AntdSegmentedColoring.react.js +246 -246
  299. package/src/lib/fragments/dataEntry/AntdSelect.react.js +373 -373
  300. package/src/lib/fragments/dataEntry/AntdSlider.react.js +177 -177
  301. package/src/lib/fragments/dataEntry/AntdSwitch.react.js +132 -132
  302. package/src/lib/fragments/dataEntry/AntdTimePicker.react.js +191 -191
  303. package/src/lib/fragments/dataEntry/AntdTimeRangePicker.react.js +213 -213
  304. package/src/lib/fragments/dataEntry/AntdTransfer.react.js +183 -183
  305. package/src/lib/fragments/dataEntry/AntdTreeSelect.react.js +355 -355
  306. package/src/lib/fragments/dataEntry/check-card/AntdCheckCard.react.js +111 -111
  307. package/src/lib/fragments/dataEntry/check-card/AntdCheckCardGroup.react.js +122 -122
  308. package/src/lib/fragments/dataEntry/form/AntdForm.react.js +126 -120
  309. package/src/lib/fragments/dataEntry/form/AntdFormItem.react.js +85 -84
  310. package/src/lib/fragments/formRender/AntdFormRender.react.js +179 -179
  311. package/src/lib/fragments/upload/AntdDraggerUpload.react.js +622 -622
  312. package/src/lib/fragments/upload/AntdPictureUpload.react.js +577 -577
  313. package/src/lib/fragments/upload/AntdUpload.react.js +613 -613
  314. package/src/lib/hooks/useCss.js +28 -28
  315. package/src/lib/hooks/useStickyOffset.js +115 -115
  316. package/src/lib/index.js +240 -240
  317. package/src/lib/internal_components/UtilsLink.react.js +82 -0
  318. package/src/lib/store/formStore.js +54 -47
  319. 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 -51
  320. package/tests/dash3.0tests/AntdTable/345/207/275/346/225/260/345/274/217/346/224/271/351/200/240/test.py +62 -62
  321. package/tests/dash3.0tests/_dashprivate_layout/346/224/271/345/212/250/346/265/213/350/257/225/test.py +50 -50
  322. package/tests/dash3.0tests/loading_state/346/224/271/345/212/250/346/265/213/350/257/225/test.py +38 -38
  323. 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 -30
  324. 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 -62
  325. 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 -25
  326. package/tests/dataDisplay/AntdAccordion/feat_size.py +36 -36
  327. package/tests/dataDisplay/AntdAccordion/feat_styles.py +35 -35
  328. package/tests/dataDisplay/AntdCard/refactor_delete_props.py +83 -83
  329. package/tests/dataDisplay/AntdCarousel/feat_auto_play_dot_duration.py +34 -34
  330. package/tests/dataDisplay/AntdCollapse/feat_size.py +30 -30
  331. package/tests/dataDisplay/AntdCollapse/feat_styles.py +29 -29
  332. package/tests/dataDisplay/AntdCountdown/feat_finish_event.py +41 -41
  333. package/tests/dataDisplay/AntdCountdown/refactor_to_timer.py +57 -57
  334. package/tests/dataDisplay/AntdCountup/refactor_to_timer.py +57 -57
  335. package/tests/dataDisplay/AntdDescriptions/feat_span_filled.py +42 -42
  336. package/tests/dataDisplay/AntdImage/debug_preview_toolbar.py +23 -23
  337. package/tests/dataDisplay/AntdSegmented/feat_shape.py +39 -39
  338. package/tests/dataDisplay/AntdSegmented/feat_simple_options.py +43 -43
  339. package/tests/dataDisplay/AntdSegmented/feat_vertical.py +32 -32
  340. package/tests/dataDisplay/AntdTable/feat_button_mode_like_dcc_link.py +125 -0
  341. package/tests/dataDisplay/AntdTable/feat_button_mode_refactor.py +143 -143
  342. package/tests/dataDisplay/AntdTable/feat_button_mode_tooltip.py +47 -47
  343. package/tests/dataDisplay/AntdTable/feat_columns_fixed_bool.py +40 -40
  344. package/tests/dataDisplay/AntdTable/feat_columns_min_width.py +51 -51
  345. package/tests/dataDisplay/AntdTable/feat_columns_sort_order.py +131 -131
  346. package/tests/dataDisplay/AntdTable/feat_editable_disabled_keys.py +71 -71
  347. package/tests/dataDisplay/AntdTable/feat_header_align.py +38 -38
  348. package/tests/dataDisplay/AntdTable/feat_link_mode_like_dcc_link.py +49 -0
  349. package/tests/dataDisplay/AntdTable/feat_loading.py +76 -76
  350. package/tests/dataDisplay/AntdTable/feat_mini_chart_color.py +139 -139
  351. package/tests/dataDisplay/AntdTable/feat_row_class_name.py +39 -39
  352. package/tests/dataDisplay/AntdTable/feat_row_class_name_func.py +41 -41
  353. package/tests/dataDisplay/AntdTable/feat_select_mode_show_search.py +70 -70
  354. package/tests/dataDisplay/AntdTable/feat_sticky_header.py +81 -81
  355. package/tests/dataDisplay/AntdTable/feat_table_scroll.py +54 -54
  356. package/tests/dataDisplay/AntdTable/feat_tag_mode_tooltip.py +88 -88
  357. package/tests/dataDisplay/AntdTable/feat_title_popover_nodes.py +94 -79
  358. package/tests/dataDisplay/AntdTable/fix_context_locale.py +37 -37
  359. package/tests/dataDisplay/AntdTable/fix_field_bool.py +50 -50
  360. package/tests/dataDisplay/AntdTable/fix_nested_editable.py +115 -115
  361. package/tests/dataDisplay/AntdTable/fix_select_with_editable.py +84 -84
  362. package/tests/dataDisplay/AntdTable/fix_server_side_mode_filter_search.py +194 -194
  363. package/tests/dataDisplay/AntdTable/fix_summary.py +474 -474
  364. package/tests/dataDisplay/AntdTable/fix_summary_multi_level_header.py +85 -85
  365. package/tests/dataDisplay/AntdTable/fix_zero_value_filter.py +34 -34
  366. package/tests/dataDisplay/AntdTable/perf_button_mode_auto_wrap.py +39 -39
  367. package/tests/dataDisplay/AntdTable/perf_editable_column_format_constrait_message.py +65 -65
  368. package/tests/dataDisplay/AntdTable/refactor_mini_progress_mode.py +134 -134
  369. package/tests/dataDisplay/AntdTable/rollback_title_popover_info.py +46 -0
  370. package/tests/dataDisplay/AntdTabs/feat_item_icon.py +39 -39
  371. package/tests/dataDisplay/AntdTabs/feat_placeholder.py +124 -124
  372. package/tests/dataDisplay/AntdTabs/feat_tab_bar_style.py +40 -40
  373. package/tests/dataDisplay/AntdTree/feat_async_data_load.py +71 -71
  374. package/tests/dataDisplay/descriptions/AntdDescriptions/feat_extra.py +83 -83
  375. package/tests/dataEntry/AntdCalendar/feat_custom_cells.py +52 -52
  376. package/tests/dataEntry/AntdCascader/feat_prefix.py +62 -62
  377. package/tests/dataEntry/AntdCascader/feat_suffix_icon.py +62 -62
  378. package/tests/dataEntry/AntdCascader/fix_read_only.py +74 -74
  379. package/tests/dataEntry/AntdDatePicker/feat_custom_cells.py +79 -79
  380. package/tests/dataEntry/AntdDatePicker/feat_picker_value.py +38 -38
  381. package/tests/dataEntry/AntdDatePicker/feat_prefix.py +21 -21
  382. package/tests/dataEntry/AntdDatePicker/feat_suffix_icon.py +21 -21
  383. package/tests/dataEntry/AntdDateRangePicker/feat_custom_cells.py +79 -79
  384. package/tests/dataEntry/AntdDateRangePicker/feat_picker_value.py +38 -38
  385. package/tests/dataEntry/AntdDateRangePicker/feat_prefix.py +21 -21
  386. package/tests/dataEntry/AntdDateRangePicker/feat_suffix_icon.py +21 -21
  387. package/tests/dataEntry/AntdForm/feat_batch_control_tooltips.py +35 -0
  388. package/tests/dataEntry/AntdForm/feat_optional_batch_control.py +62 -62
  389. package/tests/dataEntry/AntdForm/fix_checkbox.py +65 -65
  390. package/tests/dataEntry/AntdRadioGroup/feat_block.py +40 -40
  391. package/tests/dataEntry/AntdSelect/feat_locale_ru.py +24 -24
  392. package/tests/dataEntry/AntdSelect/feat_max_count.py +28 -28
  393. package/tests/dataEntry/AntdSelect/feat_prefix.py +26 -26
  394. package/tests/dataEntry/AntdSelect/feat_show_search.py +32 -32
  395. package/tests/dataEntry/AntdSelect/feat_suffix_icon.py +46 -46
  396. package/tests/dataEntry/AntdSelect/fix_read_only.py +50 -50
  397. package/tests/dataEntry/AntdSelect/fix_read_only_with_allow_clear.py +29 -29
  398. package/tests/dataEntry/AntdSlider/feat_range_editable.py +49 -49
  399. package/tests/dataEntry/AntdTimePicker/feat_prefix.py +21 -21
  400. package/tests/dataEntry/AntdTimePicker/feat_suffix_icon.py +21 -21
  401. package/tests/dataEntry/AntdTimeRangePicker/feat_prefix.py +21 -21
  402. package/tests/dataEntry/AntdTimeRangePicker/feat_suffix_icon.py +21 -21
  403. package/tests/dataEntry/AntdTreeSelect/feat_async_data_load.py +69 -69
  404. package/tests/dataEntry/AntdTreeSelect/feat_max_count.py +71 -71
  405. package/tests/dataEntry/AntdTreeSelect/feat_prefix.py +43 -43
  406. package/tests/dataEntry/AntdTreeSelect/fix_read_only.py +50 -50
  407. package/tests/dataEntry/AntdUpload/feat_pastable.py +22 -22
  408. package/tests/dataEntry/AntdUpload/fix_follow_theme.py +28 -28
  409. package/tests/feat_variant_underlined.py +100 -100
  410. package/tests/feedback/AntdAlert/feat_icon.py +35 -35
  411. package/tests/feedback/AntdMessage/fix_follow_config_provider.py +44 -44
  412. package/tests/feedback/AntdModal/feat_force_render.py +57 -57
  413. package/tests/feedback/AntdModal/feat_loading_title.py +92 -92
  414. package/tests/feedback/AntdModal/feat_prevent_close.py +54 -54
  415. package/tests/feedback/AntdModal/feat_responsive_width.py +31 -31
  416. package/tests/feedback/AntdNotification/feat_component_content.py +64 -64
  417. package/tests/feedback/AntdNotification/feat_number_of_stack.py +40 -40
  418. package/tests/feedback/AntdNotification/feat_show_progress.py +40 -40
  419. package/tests/feedback/AntdNotification/fix_follow_config_provider.py +46 -46
  420. package/tests/feedback/AntdPopupCard/feat_force_render.py +61 -61
  421. package/tests/feedback/AntdProgress/feat_percent_position.py +39 -39
  422. package/tests/feedback/AntdProgress/perf_size.py +26 -26
  423. package/tests/feedback/AntdProgress/perf_steps.py +37 -37
  424. package/tests/feedback/AntdProgress/perf_stroke_color.py +58 -58
  425. package/tests/feedback/AntdResult/feat_extra.py +26 -26
  426. package/tests/feedback/AntdSkeleton/fix_dash3.py +43 -43
  427. package/tests/general/AntdButton/feat_color_and_variant.py +40 -40
  428. package/tests/general/AntdButton/feat_preset_color.py +46 -46
  429. package/tests/general/AntdFloatButtonGroup/feat_placement.py +83 -83
  430. package/tests/general/AntdFloatButtonGroup/feat_tooltip.py +34 -34
  431. package/tests/general/AntdIcon/feat_iconfont.py +41 -41
  432. package/tests/layout/AntdCenter/feat_use_token.py +41 -41
  433. package/tests/layout/AntdDivider/feat_plain.py +21 -21
  434. package/tests/layout/AntdDivider/feat_size.py +36 -36
  435. package/tests/layout/AntdSplitter/feat_AntdSplitter.py +210 -210
  436. package/tests/layout/AntdSplitter/feat_lazy.py +56 -56
  437. package/tests/layout/AntdSplitter/refactor.py +303 -303
  438. package/tests/navigation/AntdAnchor/feat_current_anchor.py +43 -43
  439. package/tests/navigation/AntdAnchor/feat_direction.py +43 -43
  440. package/tests/navigation/AntdAnchor/feat_replace.py +43 -43
  441. package/tests/navigation/AntdBreadcrumb/feat_menu_item_event.py +64 -64
  442. package/tests/navigation/AntdBreadcrumb/refactor_items.py +140 -140
  443. package/tests/navigation/AntdDropdown/feat_extra.py +29 -29
  444. package/tests/navigation/AntdMenu/feat_currentItem.py +85 -85
  445. package/tests/navigation/AntdMenu/feat_currentItemPath.py +85 -85
  446. package/tests/navigation/AntdMenu/feat_currentKeyPath.py +85 -85
  447. package/tests/navigation/AntdMenu/feat_custom_icon.py +57 -57
  448. package/tests/navigation/AntdMenu/feat_expandIcon.py +70 -70
  449. package/tests/navigation/AntdMenu/feat_triggerSubMenuAction.py +67 -67
  450. package/tests/navigation/AntdMenu/fix_onlyExpandCurrentSubMenu.py +57 -57
  451. package/tests/navigation/AntdMenu/fix_with_sider.py +71 -71
  452. package/tests/navigation/AntdPagination/feat_align.py +31 -31
  453. package/tests/other/AntdAffix/feat_listen_affixed.py +41 -41
  454. package/tests/other/AntdBackTop/refactor.py +18 -18
  455. package/tests/other/AntdConfigProvider/feat_use_css.py +67 -67
  456. package/tests/other/AntdCopyText/feat_copy_table.py +67 -67
  457. package/tests/other/AntdCopyText/feat_tooltips.py +61 -61
  458. package/tests/other/AntdHappyProvider/feat_component.py +60 -60
  459. package/tests/other/Fragment/feat_use_token.py +32 -32
  460. package/usage.py +34 -34
  461. package/webpack.config.js +181 -181
  462. package/webpack.serve.config.js +12 -12
package/package.json CHANGED
@@ -1,97 +1,112 @@
1
- {
2
- "name": "feffery_antd_components",
3
- "version": "0.4.3-rc6",
4
- "description": "Best implementation of Antd components in Plotly Dash.",
5
- "repository": {
6
- "type": "git",
7
- "url": "https://github.com/CNFeffery/feffery-antd-components.git"
8
- },
9
- "bugs": {
10
- "url": "https://github.com/CNFeffery/feffery-antd-components/issues"
11
- },
12
- "homepage": "http://fac.feffery.tech/",
13
- "main": "build/index.js",
14
- "scripts": {
15
- "start": "webpack-serve --config ./webpack.serve.config.js --open",
16
- "build:js": "webpack --mode production",
17
- "build:backends": "dash-generate-components ./src/lib/components feffery_antd_components --keep-prop-order ALL -p package-info.json --r-prefix 'feffery' --jl-prefix 'feffery'",
18
- "build:backends-activated": "(. venv/bin/activate || venv\\scripts\\activate && npm run build:py_and_r)",
19
- "build": "npm run build:js && npm run build:backends",
20
- "build:activated": "npm run build:js && npm run build:backends-activated"
21
- },
22
- "author": "CNFeffery <fefferypzy@gmail.com>",
23
- "email": "fefferypzy@gmail.com",
24
- "license": "MIT",
25
- "dependencies": {
26
- "@ant-design/charts": "^1.4.2",
27
- "@ant-design/compatible": "^5.0.0",
28
- "@ant-design/happy-work-theme": "^1.0.0",
29
- "@ant-design/icons": "^5.0.0",
30
- "@ant-design/pro-components": "^2.6.49",
31
- "@formily/antd-v5": "^1.2.0",
32
- "@formily/core": "^2.3.1",
33
- "@formily/react": "^2.3.1",
34
- "@plotly/webpack-dash-dynamic-import": "^1.3.0",
35
- "ahooks": "^3.7.0",
36
- "antd": "^5.28.0",
37
- "antd-img-crop": "^4.2.3",
38
- "color": "^4.2.3",
39
- "dayjs": "^1.11.13",
40
- "is-absolute-url": "4.0.1",
41
- "md5": "2.3.0",
42
- "nano-css": "^5.3.5",
43
- "ramda": "0.26.1",
44
- "react-draggable": "4.4.6",
45
- "react-fast-marquee": "1.3.1",
46
- "react-highlight-words": "0.17.0",
47
- "react-icons": "^4.11.0",
48
- "react-text-loop": "2.3.0",
49
- "react-use": "^17.4.0",
50
- "uuid": "8.3.2",
51
- "zustand": "^4.5.2"
52
- },
53
- "devDependencies": {
54
- "@babel/core": "^7.5.4",
55
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
56
- "@babel/plugin-proposal-object-rest-spread": "^7.5.4",
57
- "@babel/plugin-proposal-optional-chaining": "^7.21.0",
58
- "@babel/preset-env": "^7.5.4",
59
- "@babel/preset-react": "^7.0.0",
60
- "babel-eslint": "^10.0.2",
61
- "babel-loader": "^8.0.6",
62
- "copyfiles": "^2.1.1",
63
- "css-loader": "^3.0.0",
64
- "eslint": "^6.0.1",
65
- "eslint-config-prettier": "^6.0.0",
66
- "eslint-plugin-import": "^2.18.0",
67
- "eslint-plugin-react": "^7.14.2",
68
- "less": "^3.13.1",
69
- "less-loader": "^5.0.0",
70
- "lodash": "^4.17.21",
71
- "npm": "^6.1.0",
72
- "prop-types": "^15.7.2",
73
- "react": "^18.3.1",
74
- "react-docgen": "^5.4.3",
75
- "react-dom": "^18.3.1",
76
- "style-loader": "^0.23.1",
77
- "styled-jsx": "^3.2.1",
78
- "webpack": "4.36.1",
79
- "webpack-bundle-analyzer": "^4.7.0",
80
- "webpack-cli": "^3.3.6",
81
- "webpack-serve": "3.1.0"
82
- },
83
- "babel": {
84
- "presets": [
85
- "@babel/preset-react",
86
- "@babel/preset-env"
87
- ],
88
- "plugins": [
89
- "@babel/plugin-proposal-optional-chaining",
90
- "@babel/plugin-transform-react-jsx"
91
- ]
92
- },
93
- "engines": {
94
- "node": ">=8.11.0",
95
- "npm": ">=6.1.0"
96
- }
1
+ {
2
+ "name": "feffery_antd_components",
3
+ "version": "0.4.3",
4
+ "description": "Best implementation of Antd components in Plotly Dash.",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/CNFeffery/feffery-antd-components.git"
8
+ },
9
+ "bugs": {
10
+ "url": "https://github.com/CNFeffery/feffery-antd-components/issues"
11
+ },
12
+ "homepage": "http://fac.feffery.tech/",
13
+ "main": "build/index.js",
14
+ "scripts": {
15
+ "start": "webpack-serve --config ./webpack.serve.config.js --open",
16
+ "build:js": "webpack --mode production",
17
+ "build:backends": "dash-generate-components ./src/lib/components feffery_antd_components --keep-prop-order ALL -p package-info.json --r-prefix 'feffery' --jl-prefix 'feffery'",
18
+ "build:backends-activated": "(. venv/bin/activate || venv\\scripts\\activate && npm run build:py_and_r)",
19
+ "build": "npm run build:js && npm run build:backends",
20
+ "build:activated": "npm run build:js && npm run build:backends-activated"
21
+ },
22
+ "author": "CNFeffery <fefferypzy@gmail.com>",
23
+ "email": "fefferypzy@gmail.com",
24
+ "license": "MIT",
25
+ "dependencies": {
26
+ "@ant-design/charts": "^1.4.2",
27
+ "@ant-design/compatible": "^5.0.0",
28
+ "@ant-design/happy-work-theme": "^1.0.0",
29
+ "@ant-design/icons": "^5.0.0",
30
+ "@ant-design/pro-components": "^2.6.49",
31
+ "@plotly/webpack-dash-dynamic-import": "^1.3.0",
32
+ "ahooks": "^3.7.0",
33
+ "antd": "^5.28.0",
34
+ "antd-img-crop": "^4.2.3",
35
+ "color": "^4.2.3",
36
+ "dayjs": "^1.11.13",
37
+ "is-absolute-url": "4.0.1",
38
+ "md5": "2.3.0",
39
+ "nano-css": "^5.3.5",
40
+ "ramda": "0.26.1",
41
+ "react-draggable": "4.4.6",
42
+ "react-fast-marquee": "1.3.1",
43
+ "react-highlight-words": "0.17.0",
44
+ "react-icons": "^4.11.0",
45
+ "react-text-loop": "2.3.0",
46
+ "react-use": "^17.4.0",
47
+ "uuid": "8.3.2",
48
+ "zustand": "^4.5.2"
49
+ },
50
+ "devDependencies": {
51
+ "@babel/core": "^7.5.4",
52
+ "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
53
+ "@babel/plugin-proposal-object-rest-spread": "^7.5.4",
54
+ "@babel/plugin-proposal-optional-chaining": "^7.21.0",
55
+ "@babel/preset-env": "^7.5.4",
56
+ "@babel/preset-react": "^7.0.0",
57
+ "babel-eslint": "^10.0.2",
58
+ "babel-loader": "^8.0.6",
59
+ "copyfiles": "^2.1.1",
60
+ "css-loader": "^3.0.0",
61
+ "eslint": "^6.0.1",
62
+ "eslint-config-prettier": "^6.0.0",
63
+ "eslint-plugin-import": "^2.18.0",
64
+ "eslint-plugin-react": "^7.14.2",
65
+ "less": "^3.13.1",
66
+ "less-loader": "^5.0.0",
67
+ "lodash": "^4.17.21",
68
+ "npm": "^6.1.0",
69
+ "prop-types": "^15.7.2",
70
+ "react": "^18.3.1",
71
+ "react-docgen": "^5.4.3",
72
+ "react-dom": "^18.3.1",
73
+ "style-loader": "^0.23.1",
74
+ "styled-jsx": "^4.0.0",
75
+ "webpack": "4.36.1",
76
+ "webpack-bundle-analyzer": "^4.7.0",
77
+ "webpack-cli": "^3.3.6",
78
+ "webpack-serve": "3.1.0"
79
+ },
80
+ "overrides": {
81
+ "@ant-design/charts": {
82
+ "@ant-design/icons": "$@ant-design/icons",
83
+ "antd": "$antd"
84
+ },
85
+ "react-fast-marquee": {
86
+ "react": "$react",
87
+ "react-dom": "$react-dom"
88
+ },
89
+ "react-highlight-words": {
90
+ "react": "$react",
91
+ "react-dom": "$react-dom"
92
+ },
93
+ "react-text-loop": {
94
+ "react": "$react",
95
+ "react-dom": "$react-dom"
96
+ }
97
+ },
98
+ "babel": {
99
+ "presets": [
100
+ "@babel/preset-react",
101
+ "@babel/preset-env"
102
+ ],
103
+ "plugins": [
104
+ "@babel/plugin-proposal-optional-chaining",
105
+ "@babel/plugin-transform-react-jsx"
106
+ ]
107
+ },
108
+ "engines": {
109
+ "node": ">=8.11.0",
110
+ "npm": ">=6.1.0"
111
+ }
97
112
  }
package/pytest.ini CHANGED
@@ -1,5 +1,5 @@
1
- [pytest]
2
- testpaths = tests/
3
- addopts = -rsxX -vv
4
- log_format = %(asctime)s | %(levelname)s | %(name)s:%(lineno)d | %(message)s
5
- log_cli_level = ERROR
1
+ [pytest]
2
+ testpaths = tests/
3
+ addopts = -rsxX -vv
4
+ log_format = %(asctime)s | %(levelname)s | %(name)s:%(lineno)d | %(message)s
5
+ log_cli_level = ERROR
@@ -1 +1 @@
1
- python setup.py sdist bdist_wheel && python -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
1
+ python setup.py sdist bdist_wheel && python -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
package/requirements.txt CHANGED
@@ -1,2 +1,2 @@
1
- # dash is required to call `build:py`
2
- dash[dev]>=1.15.0
1
+ # dash is required to call `build:py`
2
+ dash[dev]>=1.15.0
@@ -1,47 +1,47 @@
1
- # Code Review Checklist
2
-
3
- ## Code quality & design
4
-
5
- - Is your code clear? If you had to go back to it in a month, would you be happy to? If someone else had to contribute to it, would they be able to?
6
-
7
- A few suggestions:
8
-
9
- - Make your variable names descriptive and use the same naming conventions throughout the code.
10
-
11
- - For more complex pieces of logic, consider putting a comment, and maybe an example.
12
-
13
- - In the comments, focus on describing _why_ the code does what it does, rather than describing _what_ it does. The reader can most likely read the code, but not necessarily understand why it was necessary.
14
-
15
- - Don't overdo it in the comments. The code should be clear enough to speak for itself. Stale comments that no longer reflect the intent of the code can hurt code comprehension.
16
-
17
- * Don't repeat yourself. Any time you see that the same piece of logic can be applied in multiple places, factor it out into a function, or variable, and reuse that code.
18
- * Scan your code for expensive operations (large computations, DOM queries, React re-renders). Have you done your possible to limit their impact? If not, it is going to slow your app down.
19
- * Can you think of cases where your current code will break? How are you handling errors? Should the user see them as notifications? Should your app try to auto-correct them for them?
20
-
21
- ## Component API
22
-
23
- - Have you tested your component on the Python side by creating an app in `usage.py` ?
24
-
25
- Do all of your component's props work when set from the back-end?
26
-
27
- Should all of them be settable from the back-end or are some only relevant to user interactions in the front-end?
28
-
29
- - Have you provided some basic documentation about your component? The Dash community uses [react docstrings](https://github.com/plotly/dash-docs/blob/master/tutorial/plugins.py#L45) to provide basic information about dash components. Take a look at this [Checklist component example](https://github.com/plotly/dash-core-components/blob/master/src/components/Checklist.react.js) and others from the dash-core-components repository.
30
-
31
- At a minimum, you should describe what your component does, and describe its props and the features they enable.
32
-
33
- Be careful to use the correct formatting for your docstrings for them to be properly recognized.
34
-
35
- ## Tests
36
-
37
- - The Dash team uses integration tests extensively, and we highly encourage you to write tests for the main functionality of your component. In the `tests` folder of the boilerplate, you can see a sample integration test. By launching it, you will run a sample Dash app in a browser. You can run the test with:
38
- ```
39
- python -m tests.test_render
40
- ```
41
- [Browse the Dash component code on GitHub for more examples of testing.](https://github.com/plotly/dash-core-components)
42
-
43
- ## Ready to publish? Final scan
44
-
45
- - Take a last look at the external resources that your component is using. Are all the external resources used [referenced in `MANIFEST.in`](https://github.com/plotly/dash-docs/blob/0b2fd8f892db720a7f3dc1c404b4cff464b5f8d4/tutorial/plugins.py#L55)?
46
-
47
- - [You're ready to publish!](https://github.com/plotly/dash-component-boilerplate/blob/master/%7B%7Bcookiecutter.project_shortname%7D%7D/README.md#create-a-production-build-and-publish)
1
+ # Code Review Checklist
2
+
3
+ ## Code quality & design
4
+
5
+ - Is your code clear? If you had to go back to it in a month, would you be happy to? If someone else had to contribute to it, would they be able to?
6
+
7
+ A few suggestions:
8
+
9
+ - Make your variable names descriptive and use the same naming conventions throughout the code.
10
+
11
+ - For more complex pieces of logic, consider putting a comment, and maybe an example.
12
+
13
+ - In the comments, focus on describing _why_ the code does what it does, rather than describing _what_ it does. The reader can most likely read the code, but not necessarily understand why it was necessary.
14
+
15
+ - Don't overdo it in the comments. The code should be clear enough to speak for itself. Stale comments that no longer reflect the intent of the code can hurt code comprehension.
16
+
17
+ * Don't repeat yourself. Any time you see that the same piece of logic can be applied in multiple places, factor it out into a function, or variable, and reuse that code.
18
+ * Scan your code for expensive operations (large computations, DOM queries, React re-renders). Have you done your possible to limit their impact? If not, it is going to slow your app down.
19
+ * Can you think of cases where your current code will break? How are you handling errors? Should the user see them as notifications? Should your app try to auto-correct them for them?
20
+
21
+ ## Component API
22
+
23
+ - Have you tested your component on the Python side by creating an app in `usage.py` ?
24
+
25
+ Do all of your component's props work when set from the back-end?
26
+
27
+ Should all of them be settable from the back-end or are some only relevant to user interactions in the front-end?
28
+
29
+ - Have you provided some basic documentation about your component? The Dash community uses [react docstrings](https://github.com/plotly/dash-docs/blob/master/tutorial/plugins.py#L45) to provide basic information about dash components. Take a look at this [Checklist component example](https://github.com/plotly/dash-core-components/blob/master/src/components/Checklist.react.js) and others from the dash-core-components repository.
30
+
31
+ At a minimum, you should describe what your component does, and describe its props and the features they enable.
32
+
33
+ Be careful to use the correct formatting for your docstrings for them to be properly recognized.
34
+
35
+ ## Tests
36
+
37
+ - The Dash team uses integration tests extensively, and we highly encourage you to write tests for the main functionality of your component. In the `tests` folder of the boilerplate, you can see a sample integration test. By launching it, you will run a sample Dash app in a browser. You can run the test with:
38
+ ```
39
+ python -m tests.test_render
40
+ ```
41
+ [Browse the Dash component code on GitHub for more examples of testing.](https://github.com/plotly/dash-core-components)
42
+
43
+ ## Ready to publish? Final scan
44
+
45
+ - Take a last look at the external resources that your component is using. Are all the external resources used [referenced in `MANIFEST.in`](https://github.com/plotly/dash-docs/blob/0b2fd8f892db720a7f3dc1c404b4cff464b5f8d4/tutorial/plugins.py#L55)?
46
+
47
+ - [You're ready to publish!](https://github.com/plotly/dash-component-boilerplate/blob/master/%7B%7Bcookiecutter.project_shortname%7D%7D/README.md#create-a-production-build-and-publish)
package/ruff.toml CHANGED
@@ -1,4 +1,4 @@
1
- line-length = 60
2
-
3
- [format]
4
- quote-style = "single"
1
+ line-length = 60
2
+
3
+ [format]
4
+ quote-style = "single"
package/setup.py CHANGED
@@ -1,33 +1,33 @@
1
- import io
2
- import json
3
- from setuptools import setup
4
-
5
-
6
- with open('package.json') as f:
7
- package = json.load(f)
8
-
9
- package_name = package["name"].replace(" ", "_").replace("-", "_")
10
-
11
- setup(
12
- name=package_name,
13
- version=package["version"],
14
- author_email=package['email'],
15
- homepage='https://github.com/CNFeffery/feffery-antd-components',
16
- author=package['author'],
17
- packages=[package_name],
18
- include_package_data=True,
19
- package_data={
20
- 'feffery_antd_components': ['*']
21
- },
22
- license=package['license'],
23
- description=package.get('description', package_name),
24
- long_description=io.open("README.md", encoding="utf-8").read(),
25
- long_description_content_type="text/markdown",
26
- install_requires=[
27
- 'dash>=3.1.1',
28
- ],
29
- classifiers=[
30
- 'Framework :: Dash',
31
- ],
32
- url='https://github.com/CNFeffery/feffery-antd-components'
33
- )
1
+ import io
2
+ import json
3
+ from setuptools import setup
4
+
5
+
6
+ with open('package.json') as f:
7
+ package = json.load(f)
8
+
9
+ package_name = package["name"].replace(" ", "_").replace("-", "_")
10
+
11
+ setup(
12
+ name=package_name,
13
+ version=package["version"],
14
+ author_email=package['email'],
15
+ homepage='https://github.com/CNFeffery/feffery-antd-components',
16
+ author=package['author'],
17
+ packages=[package_name],
18
+ include_package_data=True,
19
+ package_data={
20
+ 'feffery_antd_components': ['*']
21
+ },
22
+ license=package['license'],
23
+ description=package.get('description', package_name),
24
+ long_description=io.open("README.md", encoding="utf-8").read(),
25
+ long_description_content_type="text/markdown",
26
+ install_requires=[
27
+ 'dash>=3.1.1',
28
+ ],
29
+ classifiers=[
30
+ 'Framework :: Dash',
31
+ ],
32
+ url='https://github.com/CNFeffery/feffery-antd-components'
33
+ )
@@ -33,6 +33,7 @@ Those elements have the following types:
33
33
  - `layout` (a value equal to: 'horizontal', 'vertical', 'inline'; optional): 表单布局模式,可选项有`'horizontal'`、`'vertical'`、`'inline'`
34
34
  默认值:`'horizontal'`
35
35
  - `style` (Dict; optional): 当前组件css样式
36
+ - `tooltips` (Dict with Strings as keys and values of type a list of or a singular dash component, string or number; optional): 当`enableBatchControl=True`时,可用于统一设置内部各`AntdFormItem`组件的`tooltip`值,键为对应`AntdFormItem`组件的`label`值,优先级低于各`AntdFormItem`组件的`tooltip`值
36
37
  - `validateStatuses` (Dict with Strings as keys and values of type a value equal to: 'success', 'warning', 'error', 'validating'; optional): 当`enableBatchControl=True`时,可用于统一设置内部各`AntdFormItem`组件的`validateStatus`值,键为对应`AntdFormItem`组件的`label`值,优先级低于各`AntdFormItem`组件的`validateStatus`值
37
38
  - `values` (Dict; optional): 当`enableBatchControl=True`时,可用于监听或设置搜集内部表单输入类组件的输入值变化情况,开启后内部表单输入类组件自身的`defaultValue`、`value`参数将会失效
38
39
  - `wrapperCol` (optional): 配置表单项控件部分相关参数. wrapperCol has the following type: lists containing elements 'span', 'offset', 'flex'.
@@ -42,7 +43,7 @@ Those elements have the following types:
42
43
  - `flex` (String | Real; optional): 同css中的flex属性,用于更灵活的控制控件部分所占宽度
43
44
  """
44
45
  function 'feffery'_antdform(; kwargs...)
45
- available_props = Symbol[:children, :id, :className, :colon, :enableBatchControl, :helps, :key, :labelAlign, :labelCol, :labelWrap, :layout, :style, :validateStatuses, :values, :wrapperCol]
46
+ available_props = Symbol[:children, :id, :className, :colon, :enableBatchControl, :helps, :key, :labelAlign, :labelCol, :labelWrap, :layout, :style, :tooltips, :validateStatuses, :values, :wrapperCol]
46
47
  wild_props = Symbol[Symbol("aria-"), Symbol("data-")]
47
48
  return Component("'feffery'_antdform", "AntdForm", "feffery_antd_components", available_props, wild_props; kwargs...)
48
49
  end
@@ -49,13 +49,15 @@ Those elements have the following types:
49
49
  - `title` (a list of or a singular dash component, string or number; required): 必填,当前字段标题
50
50
  - `dataIndex` (String; required): 必填,当前字段唯一识别id
51
51
  - `group` (String | Array of Strings; optional): 当前字段所属分组信息,用于渲染多级表头
52
- - `renderOptions` (optional): 配置字段[再渲染模式](/AntdTable-rerender)相关参数. renderOptions has the following type: lists containing elements 'renderType', 'renderLinkText', 'renderButtonSplit', 'renderButtonPopConfirmProps', 'miniChartColor', 'tooltipCustomContent', 'progressOneHundredPercentColor', 'progressShowPercent', 'progressPercentPrecision', 'progressPercentPosition', 'progressStrokeLinecap', 'progressSize', 'progressColor', 'ringProgressFontSize', 'dropdownProps'.
52
+ - `renderOptions` (optional): 配置字段[再渲染模式](/AntdTable-rerender)相关参数. renderOptions has the following type: lists containing elements 'renderType', 'renderLinkText', 'likeDccLink', 'renderButtonSplit', 'renderButtonPopConfirmProps', 'miniChartColor', 'tooltipCustomContent', 'progressOneHundredPercentColor', 'progressShowPercent', 'progressPercentPrecision', 'progressPercentPosition', 'progressStrokeLinecap', 'progressSize', 'progressColor', 'ringProgressFontSize', 'dropdownProps'.
53
53
  Those elements have the following types:
54
54
  - `renderType` (a value equal to: 'link', 'ellipsis', 'copyable', 'ellipsis-copyable', 'tags', 'status-badge', 'image', 'custom-format', 'corner-mark', 'row-merge', 'dropdown', 'dropdown-links', 'image-avatar', 'mini-line', 'mini-bar', 'mini-progress', 'mini-ring-progress', 'mini-area', 'button', 'checkbox', 'switch', 'select'; optional): 再渲染类型,可选项有`'link'`、`'ellipsis'`、`'copyable'`、`'ellipsis-copyable'`、`'tags'`、`'status-badge'`、`'image'`
55
55
  、`'custom-format'`、`'corner-mark'`、`'row-merge'`、`'dropdown'`、`'dropdown-links'`、`'image-avatar'`
56
56
  、`'mini-line'`、`'mini-bar'`、`'mini-progress'`、`'mini-ring-progress'`、`'mini-area'`
57
57
  、`'button'`、`'checkbox'`、`'switch'`、`'select'`
58
58
  - `renderLinkText` (String; optional): 当`renderType='link'`时,统一设置渲染链接文本内容
59
+ - `likeDccLink` (Bool; optional): 当`renderType`为`'link'`、`'button'`时,统一设置链接跳转行为是否采用`dcc.Link`模式
60
+ 默认值:`false`
59
61
  - `renderButtonSplit` (Bool; optional): 当`renderType='button'`时,控制多个按钮之间是否添加分割线
60
62
  - `renderButtonPopConfirmProps` (optional): 当`renderType='button'`时,配置气泡确认框相关参数. renderButtonPopConfirmProps has the following type: lists containing elements 'title', 'okText', 'cancelText'.
61
63
  Those elements have the following types:
@@ -427,14 +429,13 @@ Those elements have the following types:
427
429
  默认值:`false`
428
430
  - `tableLayout` (a value equal to: 'auto', 'fixed'; optional): 当`columns`中各字段未设置`width`时,用于控制整体字段宽度分配方式,可选项有`'auto'`、`'fixed'`
429
431
  - `title` (a list of or a singular dash component, string or number; optional): 组件型,表格整体标题内容
430
- - `titlePopoverInfo` (optional): 配置各字段标题额外气泡说明卡片信息相关参数. titlePopoverInfo has the following type: Array of lists containing elements 'dataIndex', 'title', 'content', 'placement', 'overlayStyle'.
432
+ - `titlePopoverInfo` (optional): 配置各字段标题额外气泡说明卡片信息相关参数. titlePopoverInfo has the following type: Dict with Strings as keys and values of type lists containing elements 'title', 'content', 'placement', 'overlayStyle'.
431
433
  Those elements have the following types:
432
- - `dataIndex` (String; required): 必填,对应字段的dataIndex
433
- - `title` (a list of or a singular dash component, string or number; optional): 气泡卡片标题,支持字符串或组件型
434
- - `content` (a list of or a singular dash component, string or number; optional): 气泡卡片内容,支持字符串或组件型
434
+ - `title` (String; optional): 气泡卡片标题,支持字符串或组件型
435
+ - `content` (String; optional): 气泡卡片内容,支持字符串或组件型
435
436
  - `placement` (a value equal to: 'top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'leftTop', 'leftBottom', 'rightTop', 'rightBottom'; optional): 气泡卡片弹出方位,可选项有`'top'`、`'left'`、`'right'`、`'bottom'`、`'topLeft'`、`'topRight'`、`'bottomLeft'`、`'bottomRight'`、`'leftTop'`、`'leftBottom'`、`'rightTop'`、`'rightBottom'`
436
437
  默认值:`'bottom'`
437
- - `overlayStyle` (Dict; optional): 气泡卡片展开层css样式s
438
+ - `overlayStyle` (Dict; optional): 气泡卡片展开层css样式
438
439
  - `virtual` (Bool; optional): 是否开启虚拟滚动模式
439
440
  默认值:`false`
440
441
  """