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
@@ -1,946 +1,946 @@
1
- import React, { Suspense } from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- const LazyAntdFormRender = React.lazy(() => import(/* webpackChunkName: "form_render" */ '../../fragments/formRender/AntdFormRender.react'));
5
-
6
- const AntdFormRender = (props) => {
7
- return (
8
- <Suspense fallback={null}>
9
- <LazyAntdFormRender {...props} />
10
- </Suspense>
11
- );
12
- }
13
-
14
- // 定义参数或属性
15
- AntdFormRender.propTypes = {
16
- /**
17
- * 组件id
18
- */
19
- id: PropTypes.string,
20
-
21
- /**
22
- * css类名
23
- */
24
- className: PropTypes.oneOfType([
25
- PropTypes.string,
26
- PropTypes.object
27
- ]),
28
-
29
- /**
30
- * 自定义css字典
31
- */
32
- style: PropTypes.object,
33
-
34
- /**
35
- * 辅助刷新用唯一标识key值
36
- */
37
- key: PropTypes.string,
38
-
39
- /**
40
- * 必填,设置表单的schema
41
- */
42
- schema: PropTypes.exact({
43
- /**
44
- * 固定配置为type: 'object'
45
- */
46
- type: PropTypes.oneOf(['object']),
47
-
48
- /**
49
- * 设置表单表单项label布局方式,可选的有'column'、'row'与'inline',默认为'column'
50
- */
51
- displayType: PropTypes.oneOf(['column', 'row', 'inline']),
52
-
53
- /**
54
- * 设置表单布局,一行应该有几列,默认为3
55
- */
56
- column: PropTypes.number,
57
-
58
- /**
59
- * 设置表单项标签的宽度
60
- */
61
- labelWidth: PropTypes.number,
62
-
63
- /**
64
- * 设置表单项控件的最大宽度
65
- */
66
- maxWidth: PropTypes.number,
67
-
68
- /**
69
- * 设置表单标签占位格数
70
- */
71
- labelCol: PropTypes.number,
72
-
73
- /**
74
- * 设置表单控件占位格数
75
- */
76
- fieldCol: PropTypes.number,
77
-
78
- /**
79
- * 设置表单控件
80
- */
81
- properties: PropTypes.objectOf(PropTypes.oneOfType([
82
- /**
83
- * 基础控件配置项
84
- */
85
- PropTypes.shape({
86
- /**
87
- * 设置表单字段的类型,可选的有'string'、'number'、'boolean'、'array'、'range'、'html'、'block'
88
- */
89
- type: PropTypes.oneOf(['string', 'number', 'boolean', 'array', 'range', 'html', 'block']),
90
-
91
- /**
92
- * 设置表单字段的标签
93
- */
94
- title: PropTypes.string,
95
-
96
- /**
97
- * 设置表单项标签的宽度
98
- */
99
- labelWidth: PropTypes.oneOfType([
100
- PropTypes.number,
101
- PropTypes.string
102
- ]),
103
-
104
- /**
105
- * 设置表单项控件的最大宽度
106
- */
107
- maxWidth: PropTypes.oneOfType([
108
- PropTypes.number,
109
- PropTypes.string
110
- ]),
111
-
112
- /**
113
- * 设置表单标签占位格数
114
- */
115
- labelCol: PropTypes.oneOfType([
116
- PropTypes.number,
117
- PropTypes.string
118
- ]),
119
-
120
- /**
121
- * 设置表单控件占位格数
122
- */
123
- fieldCol: PropTypes.oneOfType([
124
- PropTypes.number,
125
- PropTypes.string
126
- ]),
127
-
128
- /**
129
- * 设置表单项跨列展示,目前需配合lableWidth来使用,否则无法与其他表单项在样式上对齐,通过配置单个表单项的labelCol、fieldCol勉强能改善
130
- */
131
- cellSpan: PropTypes.oneOfType([
132
- PropTypes.number,
133
- PropTypes.string
134
- ]),
135
-
136
- /**
137
- * 设置表单项列宽度,表单布局会被切割成 24 等份,可以通过设置 span 来自定义表单项所占的宽度
138
- */
139
- span: PropTypes.oneOfType([
140
- PropTypes.number,
141
- PropTypes.string
142
- ]),
143
-
144
- /**
145
- * 设置指定渲染的控件名称
146
- */
147
- widget: PropTypes.oneOf([
148
- 'input', 'inputNumber', 'select', 'multiSelect', 'radio', 'checkboxes',
149
- 'textArea', 'checkbox', 'switch', 'rate', 'slider', 'datePicker',
150
- 'dateRange', 'timePicker', 'timeRange', 'cascader', 'treeSelect', 'color',
151
- 'imageInput', 'urlInput', 'html'
152
- ]),
153
-
154
- /**
155
- * 设置输入内容提示
156
- */
157
- placeholder: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),
158
-
159
- /**
160
- * 设置副标题描述
161
- */
162
- description: PropTypes.string,
163
-
164
- /**
165
- * 设置气泡提示,支持html格式,可传入一个antd的tooltip配置对象支持更多配置
166
- */
167
- tooltip: PropTypes.oneOfType([
168
- PropTypes.string,
169
- PropTypes.shape({
170
- /**
171
- * 设置显示的文字内容
172
- */
173
- title: PropTypes.any,
174
-
175
- /**
176
- * 设置气泡框的位置,可选的有'top'、'left'、'right'、'bottom'、'topLeft'
177
- * 、'topRight'、'bottomLeft'、'bottomRight'、'leftTop'、'leftBottom'
178
- * 、'rightTop'、'rightBottom',默认为'top'
179
- */
180
- placement: PropTypes.oneOf([
181
- 'top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft',
182
- 'bottomRight'
183
- ]),
184
-
185
- /**
186
- * 设置背景颜色
187
- */
188
- color: PropTypes.string,
189
-
190
- /**
191
- * 设置鼠标移入后延时多少才显示 Tooltip,单位:秒,默认为0.1
192
- */
193
- mouseEnterDelay: PropTypes.number,
194
-
195
- /**
196
- * 设置鼠标移出后延时多少才隐藏 Tooltip,单位:秒,默认为0.1
197
- */
198
- mouseLeaveDelay: PropTypes.number,
199
-
200
- /**
201
- * 设置卡片css类
202
- */
203
- overlayClassName: PropTypes.oneOfType([
204
- PropTypes.string,
205
- PropTypes.object
206
- ]),
207
-
208
- /**
209
- * 设置卡片样式
210
- */
211
- overlayStyle: PropTypes.object,
212
-
213
- /**
214
- * 设置卡片内容区域的样式
215
- */
216
- overlayInnerStyle: PropTypes.object,
217
-
218
- /**
219
- * 设置触发行为,可选的有'hover'、'focus'、'click',或是以上多个组成的数组,默认为'hover'
220
- */
221
- trigger: PropTypes.oneOfType(
222
- [
223
- PropTypes.oneOf(['hover', 'focus', 'click']),
224
- PropTypes.arrayOf(PropTypes.oneOf(['hover', 'focus', 'click']))
225
- ]
226
- ),
227
-
228
- /**
229
- * 设置悬浮层zIndex
230
- */
231
- zIndex: PropTypes.number,
232
-
233
- /**
234
- * 设置修改箭头的显示状态以及修改箭头是否指向目标元素中心,默认为'show'
235
- */
236
- arrow: PropTypes.oneOf(['show', 'hide', 'center']),
237
-
238
- /**
239
- * 用于设置是否始终保持更新内容,默认为false。默认情况下,Tooltip 在关闭时会缓存内容,设置该属性后会始终保持更新。
240
- */
241
- fresh: PropTypes.bool,
242
-
243
- /**
244
- * 用于监听或控制当前tooltip的显隐,默认为false
245
- */
246
- open: PropTypes.bool,
247
-
248
- /**
249
- * 用于设置气泡被遮挡时自动调整位置,默认为true
250
- */
251
- autoAdjustOverflow: PropTypes.bool,
252
-
253
- /**
254
- * 设置默认是否显隐,默认为false
255
- */
256
- defaultOpen: PropTypes.bool,
257
-
258
- /**
259
- * 设置关闭后是否销毁Tooltip,默认为false
260
- */
261
- destroyTooltipOnHide: PropTypes.bool
262
- })
263
- ]),
264
-
265
- /**
266
- * 设置更多的说明信息,支持html格式,会紧贴在元素下面一行展示
267
- */
268
- extra: PropTypes.string,
269
-
270
- /**
271
- * 设置是否必填,默认为false
272
- */
273
- required: PropTypes.oneOfType([
274
- PropTypes.bool,
275
- PropTypes.string
276
- ]),
277
-
278
- /**
279
- * 设置string类型为字符串最小长度;number类型时为最小值;array 类型时为数组最小长度
280
- */
281
- min: PropTypes.oneOfType([
282
- PropTypes.number,
283
- PropTypes.string
284
- ]),
285
-
286
- /**
287
- * 设置string类型为字符串最大长度;number类型时为最大值;array 类型时为数组最大长度
288
- */
289
- max: PropTypes.oneOfType([
290
- PropTypes.number,
291
- PropTypes.string
292
- ]),
293
-
294
- /**
295
- * 在已设置的type下,如何处理这个type
296
- */
297
- format: PropTypes.oneOf(['image', 'textarea', 'color', 'email', 'url', 'dateTime', 'date', 'time', 'upload']),
298
-
299
- /**
300
- * 设置表单元素的校验规则
301
- */
302
- rules: PropTypes.arrayOf(PropTypes.shape({
303
- /**
304
- * 仅在 type 为 array 类型时有效,用于指定数组元素的校验规则
305
- */
306
- defaultField: PropTypes.object,
307
-
308
- /**
309
- * 是否匹配枚举中的值(需要将 type 设置为 enum)
310
- */
311
- enum: PropTypes.any,
312
-
313
- /**
314
- * 仅在 type 为 array 或 object 类型时有效,用于指定子元素的校验规则
315
- */
316
- fields: PropTypes.any,
317
-
318
- /**
319
- * string 类型时为字符串长度;number 类型时为确定数字; array 类型时为数组长度
320
- */
321
- len: PropTypes.number,
322
-
323
- /**
324
- * 必须设置 type:string 类型为字符串最大长度;number 类型时为最大值;array 类型时为数组最大长度
325
- */
326
- max: PropTypes.number,
327
-
328
- /**
329
- * 错误信息,不设置时会通过模板自动生成
330
- */
331
- message: PropTypes.string,
332
-
333
- /**
334
- * 必须设置 type:string 类型为字符串最小长度;number 类型时为最小值;array 类型时为数组最小长度
335
- */
336
- min: PropTypes.number,
337
-
338
- /**
339
- * 正则表达式匹配
340
- */
341
- pattern: PropTypes.oneOfType([
342
- PropTypes.string,
343
- PropTypes.instanceOf(RegExp)
344
- ]),
345
-
346
- /**
347
- * 是否为必选字段
348
- */
349
- required: PropTypes.bool,
350
-
351
- /**
352
- * 类型,常见有 string |number |boolean |url | email等
353
- */
354
- type: PropTypes.oneOf([
355
- 'string',
356
- 'number',
357
- 'boolean',
358
- 'method',
359
- 'regexp',
360
- 'integer',
361
- 'float',
362
- 'array',
363
- 'object',
364
- 'enum',
365
- 'date',
366
- 'url',
367
- 'hex',
368
- 'email',
369
- 'any'
370
- ]),
371
-
372
- /**
373
- * 设置触发验证时机,可选值有onChange、onBlur、onFocus,默认为onChange
374
- */
375
- validateTrigger: PropTypes.oneOf([
376
- 'onChange',
377
- 'onBlur',
378
- 'onFocus'
379
- ]),
380
-
381
- /**
382
- * 设置自定义校验,值需要是字符串格式的js函数
383
- */
384
- validator: PropTypes.string,
385
-
386
- /**
387
- * 仅警告,不阻塞表单提交
388
- */
389
- warningOnly: PropTypes.bool,
390
-
391
- /**
392
- * 如果字段仅包含空格则校验不通过,只在 type: 'string' 时生效
393
- */
394
- whitespace: PropTypes.bool
395
- })),
396
-
397
- /**
398
- * 设置是否隐藏,默认为false
399
- */
400
- hidden: PropTypes.oneOfType([
401
- PropTypes.bool,
402
- PropTypes.string
403
- ]),
404
-
405
- /**
406
- * 设置是否禁用,默认为false
407
- */
408
- disabled: PropTypes.oneOfType([
409
- PropTypes.bool,
410
- PropTypes.string
411
- ]),
412
-
413
- /**
414
- * 设置是否为可读模式,默认为false
415
- */
416
- readOnly: PropTypes.oneOfType([
417
- PropTypes.bool,
418
- PropTypes.string
419
- ]),
420
-
421
- /**
422
- * 指定只读渲染组件名称
423
- */
424
- readOnlyWidget: PropTypes.string,
425
-
426
- /**
427
- * 设置表单依赖元素,当依赖的元素更新时,会触发本元素的重新渲染,用于复杂的表单联动
428
- */
429
- dependencies: PropTypes.arrayOf(PropTypes.string),
430
-
431
- /**
432
- * 设置自定义控件class名称
433
- */
434
- className: PropTypes.string,
435
-
436
- /**
437
- * 当title未设置时,通过配置reserveLabel: true可以保留labelWidth占位,使得输入控件和其他控件上下对齐
438
- */
439
- reserveLabel: PropTypes.oneOfType([
440
- PropTypes.bool,
441
- PropTypes.string
442
- ]),
443
-
444
- /**
445
- * 设置额外属性,如果使用的是antd组件,对应的就是antd组件的其他属性
446
- */
447
- props: PropTypes.object
448
- }),
449
- /**
450
- * 嵌套控件配置项
451
- */
452
- PropTypes.shape({
453
- /**
454
- * 固定配置为type: 'object'
455
- */
456
- type: PropTypes.oneOf(['object']),
457
-
458
- /**
459
- * 设置标题
460
- */
461
- title: PropTypes.string,
462
-
463
- /**
464
- * 设置希望使用的嵌套组件名称,可选的有'collapse'、'card'、'lineTitle'、'subInline',默认为'card'
465
- */
466
- widget: PropTypes.oneOf(['collapse', 'card', 'lineTitle', 'subInline']),
467
-
468
- /**
469
- * 设置表单元素集合
470
- */
471
- properties: PropTypes.object,
472
-
473
- /**
474
- * 设置表单布局,一行应该有几列,默认为3
475
- */
476
- column: PropTypes.oneOfType([
477
- PropTypes.number,
478
- PropTypes.string
479
- ]),
480
-
481
- /**
482
- * 设置副标题描述
483
- */
484
- description: PropTypes.string,
485
-
486
- /**
487
- * 设置气泡提示,支持html格式,可传入一个antd的tooltip配置对象支持更多配置
488
- */
489
- tooltip: PropTypes.oneOfType([
490
- PropTypes.string,
491
- PropTypes.shape({
492
- /**
493
- * 设置显示的文字内容
494
- */
495
- title: PropTypes.any,
496
-
497
- /**
498
- * 设置气泡框的位置,可选的有'top'、'left'、'right'、'bottom'、'topLeft'
499
- * 、'topRight'、'bottomLeft'、'bottomRight'、'leftTop'、'leftBottom'
500
- * 、'rightTop'、'rightBottom',默认为'top'
501
- */
502
- placement: PropTypes.oneOf([
503
- 'top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft',
504
- 'bottomRight'
505
- ]),
506
-
507
- /**
508
- * 设置背景颜色
509
- */
510
- color: PropTypes.string,
511
-
512
- /**
513
- * 设置鼠标移入后延时多少才显示 Tooltip,单位:秒,默认为0.1
514
- */
515
- mouseEnterDelay: PropTypes.number,
516
-
517
- /**
518
- * 设置鼠标移出后延时多少才隐藏 Tooltip,单位:秒,默认为0.1
519
- */
520
- mouseLeaveDelay: PropTypes.number,
521
-
522
- /**
523
- * 设置卡片css类
524
- */
525
- overlayClassName: PropTypes.oneOfType([
526
- PropTypes.string,
527
- PropTypes.object
528
- ]),
529
-
530
- /**
531
- * 设置卡片样式
532
- */
533
- overlayStyle: PropTypes.object,
534
-
535
- /**
536
- * 设置卡片内容区域的样式
537
- */
538
- overlayInnerStyle: PropTypes.object,
539
-
540
- /**
541
- * 设置触发行为,可选的有'hover'、'focus'、'click',或是以上多个组成的数组,默认为'hover'
542
- */
543
- trigger: PropTypes.oneOfType(
544
- [
545
- PropTypes.oneOf(['hover', 'focus', 'click']),
546
- PropTypes.arrayOf(PropTypes.oneOf(['hover', 'focus', 'click']))
547
- ]
548
- ),
549
-
550
- /**
551
- * 设置悬浮层zIndex
552
- */
553
- zIndex: PropTypes.number,
554
-
555
- /**
556
- * 设置修改箭头的显示状态以及修改箭头是否指向目标元素中心,默认为'show'
557
- */
558
- arrow: PropTypes.oneOf(['show', 'hide', 'center']),
559
-
560
- /**
561
- * 用于设置是否始终保持更新内容,默认为false。默认情况下,Tooltip 在关闭时会缓存内容,设置该属性后会始终保持更新。
562
- */
563
- fresh: PropTypes.bool,
564
-
565
- /**
566
- * 用于监听或控制当前tooltip的显隐,默认为false
567
- */
568
- open: PropTypes.bool,
569
-
570
- /**
571
- * 用于设置气泡被遮挡时自动调整位置,默认为true
572
- */
573
- autoAdjustOverflow: PropTypes.bool,
574
-
575
- /**
576
- * 设置默认是否显隐,默认为false
577
- */
578
- defaultOpen: PropTypes.bool,
579
-
580
- /**
581
- * 设置关闭后是否销毁Tooltip,默认为false
582
- */
583
- destroyTooltipOnHide: PropTypes.bool
584
- })
585
- ]),
586
-
587
- /**
588
- * 设置额外属性,透传到对应的嵌套组件中
589
- */
590
- props: PropTypes.object
591
- }),
592
-
593
- /**
594
- * 列表控件配置项
595
- */
596
- PropTypes.shape({
597
- /**
598
- * 固定配置为type: 'array'
599
- */
600
- type: PropTypes.oneOf(['array']),
601
-
602
- /**
603
- * 设置标题
604
- */
605
- title: PropTypes.string,
606
-
607
- /**
608
- * 设置希望使用的列表组件名称,可选的有'cardList'、'simpleList'、'tableList'、'drawerList'、'virtualList',默认为'cardList'
609
- */
610
- widget: PropTypes.oneOf(['cardList', 'simpleList', 'tableList', 'drawerList', 'virtualList']),
611
-
612
- /**
613
- * 设置列表的最大长度
614
- */
615
- max: PropTypes.oneOfType([
616
- PropTypes.number,
617
- PropTypes.string
618
- ]),
619
-
620
- /**
621
- * 设置列表的最小长度
622
- */
623
- min: PropTypes.oneOfType([
624
- PropTypes.number,
625
- PropTypes.string
626
- ]),
627
-
628
- /**
629
- * 设置列表控件
630
- */
631
- props: PropTypes.shape({
632
- /**
633
- * 设置添加按钮属性,参考 Antd Button Props()
634
- */
635
- addBtnProps: PropTypes.object,
636
-
637
- /**
638
- * 设置删除确认弹窗属性,参考 Antd PopConfirm Props
639
- */
640
- delConfirmProps: PropTypes.object,
641
-
642
- /**
643
- * 设置tableList | drawerList | virtualList 中操作列的属性,参考 Antd Table ColumnType。 其中 title 使用 colHeaderText 代替。
644
- */
645
- actionColumnProps: PropTypes.object,
646
-
647
- /**
648
- * 设置是否隐藏添加按钮
649
- */
650
- hideAdd: PropTypes.bool,
651
-
652
- /**
653
- * 设置是否隐藏复制按钮
654
- */
655
- hideCopy: PropTypes.bool,
656
-
657
- /**
658
- * 设置是否隐藏移动按钮
659
- */
660
- hideMove: PropTypes.bool,
661
-
662
- /**
663
- * 设置是否隐藏删除按钮
664
- */
665
- hideDelete: PropTypes.bool
666
- }),
667
-
668
- /**
669
- * 动态项配置,可以是一个嵌套控件
670
- */
671
- items: PropTypes.object
672
- })
673
- ])),
674
- }).isRequired,
675
-
676
- /**
677
- * 设置表单布局模式,表单元素与 label 同行 or 分两行展示, inline 则整个展示自然顺排,
678
- * 可选的有'column'、'row'与'inline',默认为'column'
679
- */
680
- displayType: PropTypes.oneOf(['column', 'row', 'inline']),
681
-
682
- /**
683
- * 设置label标签的文本对齐方式,可选的有'left'和'right',默认为'right'
684
- */
685
- labelAlign: PropTypes.oneOf(['left', 'right']),
686
-
687
- /**
688
- * 设置表单标签固定宽度
689
- */
690
- lableWidth: PropTypes.number,
691
-
692
- /**
693
- * 设置表单项控件的最大宽度
694
- */
695
- maxWidth: PropTypes.number,
696
-
697
- /**
698
- * 设置表单标签占位格数
699
- */
700
- labelCol: PropTypes.number,
701
-
702
- /**
703
- * 设置表单控件占位格数
704
- */
705
- fieldCol: PropTypes.number,
706
-
707
- /**
708
- * 设置是否是否显示label后面的冒号,默认为true
709
- */
710
- colon: PropTypes.bool,
711
-
712
- /**
713
- * 设置表单全局配置
714
- */
715
- globalConfig: PropTypes.exact({
716
- /**
717
- * 设置是否禁用表达式
718
- */
719
- mustacheDisabled: PropTypes.bool,
720
-
721
- /**
722
- * 设置列表表单配置
723
- */
724
- listOperate: PropTypes.exact({
725
- /**
726
- * 设置列表表单操作按钮样式
727
- */
728
- btnType: PropTypes.oneOf(['icon', 'text']),
729
-
730
- /**
731
- * 设置是否隐藏移动按钮
732
- */
733
- hideMove: PropTypes.bool
734
- })
735
- }),
736
-
737
- /**
738
- * 监听表单的数据变化,属性值需要是字符串格式的js函数
739
- */
740
- watch: PropTypes.objectOf(PropTypes.string),
741
-
742
- /**
743
- * 设置提交数据的时候是否去掉已经被隐藏的元素的数据,默认为true
744
- */
745
- removeHiddenData: PropTypes.bool,
746
-
747
- /**
748
- * 设否开启只读模式,一般用于预览展示,全文text展示,默认为false
749
- */
750
- readOnly: PropTypes.bool,
751
-
752
- /**
753
- * 设置一行展示多少列
754
- */
755
- column: PropTypes.number,
756
-
757
- /**
758
- * 设置是否禁用全部表单项,默认为false
759
- */
760
- disabled: PropTypes.bool,
761
-
762
- /**
763
- * 设置提交失败是否自动滚动到第一个错误字段,默认为false
764
- */
765
- scrollToFirstError: PropTypes.bool,
766
-
767
- /**
768
- * 设置展示语言,目前只支持中文、英文,
769
- * 可选的有'zh-CN'与'en-US',默认为'zh-CN'
770
- */
771
- locale: PropTypes.oneOf(['zh-cn', 'en-us', 'de-de', 'ru-ru']),
772
-
773
- /**
774
- * 设置底部操作区域
775
- */
776
- footer: PropTypes.oneOfType([
777
- PropTypes.bool,
778
- PropTypes.shape({
779
- /**
780
- * 设置提交按钮
781
- */
782
- submit: PropTypes.shape({
783
- /**
784
- * 设置按钮文字
785
- */
786
- text: PropTypes.string,
787
-
788
- /**
789
- * 设置是否显示
790
- */
791
- hide: PropTypes.bool,
792
-
793
- /**
794
- * 设置其他按钮属性,参考 Antd Button Props()
795
- */
796
- btnProps: PropTypes.object
797
- }),
798
- /**
799
- * 设置重置按钮
800
- */
801
- reset: PropTypes.shape({
802
- /**
803
- * 设置按钮文字
804
- */
805
- text: PropTypes.string,
806
-
807
- /**
808
- * 设置是否显示
809
- */
810
- hide: PropTypes.bool,
811
-
812
- /**
813
- * 设置其他按钮属性,参考 Antd Button Props()
814
- */
815
- btnProps: PropTypes.object
816
- })
817
- }),
818
- PropTypes.node
819
- ]),
820
-
821
- /**
822
- * 同antd的configProvider
823
- */
824
- configProvider: PropTypes.object,
825
-
826
- /**
827
- * 设置默认的校验提示信息
828
- */
829
- validateMessages: PropTypes.exact({
830
- default: PropTypes.string,
831
- required: PropTypes.string,
832
- whitespace: PropTypes.string,
833
- date: PropTypes.exact({
834
- format: PropTypes.string,
835
- parse: PropTypes.string,
836
- invalid: PropTypes.string
837
- }),
838
- types: PropTypes.exact({
839
- string: PropTypes.string,
840
- method: PropTypes.string,
841
- array: PropTypes.string,
842
- object: PropTypes.string,
843
- number: PropTypes.string,
844
- date: PropTypes.string,
845
- boolean: PropTypes.string,
846
- integer: PropTypes.string,
847
- float: PropTypes.string,
848
- regexp: PropTypes.string,
849
- email: PropTypes.string,
850
- url: PropTypes.string,
851
- hex: PropTypes.string
852
- }),
853
- string: PropTypes.exact({
854
- len: PropTypes.string,
855
- min: PropTypes.string,
856
- max: PropTypes.string,
857
- range: PropTypes.string
858
- }),
859
- number: PropTypes.exact({
860
- len: PropTypes.string,
861
- min: PropTypes.string,
862
- max: PropTypes.string,
863
- range: PropTypes.string
864
- }),
865
- array: PropTypes.exact({
866
- len: PropTypes.string,
867
- min: PropTypes.string,
868
- max: PropTypes.string,
869
- range: PropTypes.string
870
- }),
871
- pattern: PropTypes.exact({
872
- mismatch: PropTypes.string
873
- })
874
- }),
875
-
876
- /**
877
- * 设置与监听表单数据
878
- */
879
- values: PropTypes.object,
880
-
881
- /**
882
- * 监听表单校验结果
883
- */
884
- validateStatuses: PropTypes.bool,
885
-
886
- /**
887
- * 控制参数,用于提交表单时手动搜集表单的校验结果,回调设置为true后会自动变为false
888
- */
889
- submitForm: PropTypes.bool,
890
-
891
- /**
892
- * 辅助监听表单提交参数
893
- */
894
- submitFormClicks: PropTypes.number,
895
-
896
- /**
897
- * 控制参数,用于重置表单项校验状态(不能重置表单项包裹的组件的值,需要通过回调重置表单项包裹的组件的值),回调设置为true后会自动变为false
898
- */
899
- resetForm: PropTypes.bool,
900
-
901
- /**
902
- * 辅助监听表单重置参数
903
- */
904
- resetFormClicks: PropTypes.number,
905
-
906
- loading_state: PropTypes.shape({
907
- /**
908
- * Determines if the component is loading or not
909
- */
910
- is_loading: PropTypes.bool,
911
- /**
912
- * Holds which property is loading
913
- */
914
- prop_name: PropTypes.string,
915
- /**
916
- * Holds the name of the component that is loading
917
- */
918
- component_name: PropTypes.string
919
- }),
920
-
921
- /**
922
- * Dash-assigned callback that should be called to report property changes
923
- * to Dash, to make them available for callbacks.
924
- */
925
- setProps: PropTypes.func
926
- };
927
-
928
- // 设置默认参数
929
- AntdFormRender.defaultProps = {
930
- displayType: 'column',
931
- labelAlign: 'right',
932
- colon: true,
933
- removeHiddenData: true,
934
- readOnly: false,
935
- column: 1,
936
- disabled: false,
937
- scrollToFirstError: false,
938
- locale: 'zh-CN',
939
- submitFormClicks: 0,
940
- resetFormClicks: 0
941
- }
942
-
943
- export default AntdFormRender;
944
-
945
- export const propTypes = AntdFormRender.propTypes;
1
+ import React, { Suspense } from 'react';
2
+ import PropTypes from 'prop-types';
3
+
4
+ const LazyAntdFormRender = React.lazy(() => import(/* webpackChunkName: "form_render" */ '../../fragments/formRender/AntdFormRender.react'));
5
+
6
+ const AntdFormRender = (props) => {
7
+ return (
8
+ <Suspense fallback={null}>
9
+ <LazyAntdFormRender {...props} />
10
+ </Suspense>
11
+ );
12
+ }
13
+
14
+ // 定义参数或属性
15
+ AntdFormRender.propTypes = {
16
+ /**
17
+ * 组件id
18
+ */
19
+ id: PropTypes.string,
20
+
21
+ /**
22
+ * css类名
23
+ */
24
+ className: PropTypes.oneOfType([
25
+ PropTypes.string,
26
+ PropTypes.object
27
+ ]),
28
+
29
+ /**
30
+ * 自定义css字典
31
+ */
32
+ style: PropTypes.object,
33
+
34
+ /**
35
+ * 辅助刷新用唯一标识key值
36
+ */
37
+ key: PropTypes.string,
38
+
39
+ /**
40
+ * 必填,设置表单的schema
41
+ */
42
+ schema: PropTypes.exact({
43
+ /**
44
+ * 固定配置为type: 'object'
45
+ */
46
+ type: PropTypes.oneOf(['object']),
47
+
48
+ /**
49
+ * 设置表单表单项label布局方式,可选的有'column'、'row'与'inline',默认为'column'
50
+ */
51
+ displayType: PropTypes.oneOf(['column', 'row', 'inline']),
52
+
53
+ /**
54
+ * 设置表单布局,一行应该有几列,默认为3
55
+ */
56
+ column: PropTypes.number,
57
+
58
+ /**
59
+ * 设置表单项标签的宽度
60
+ */
61
+ labelWidth: PropTypes.number,
62
+
63
+ /**
64
+ * 设置表单项控件的最大宽度
65
+ */
66
+ maxWidth: PropTypes.number,
67
+
68
+ /**
69
+ * 设置表单标签占位格数
70
+ */
71
+ labelCol: PropTypes.number,
72
+
73
+ /**
74
+ * 设置表单控件占位格数
75
+ */
76
+ fieldCol: PropTypes.number,
77
+
78
+ /**
79
+ * 设置表单控件
80
+ */
81
+ properties: PropTypes.objectOf(PropTypes.oneOfType([
82
+ /**
83
+ * 基础控件配置项
84
+ */
85
+ PropTypes.shape({
86
+ /**
87
+ * 设置表单字段的类型,可选的有'string'、'number'、'boolean'、'array'、'range'、'html'、'block'
88
+ */
89
+ type: PropTypes.oneOf(['string', 'number', 'boolean', 'array', 'range', 'html', 'block']),
90
+
91
+ /**
92
+ * 设置表单字段的标签
93
+ */
94
+ title: PropTypes.string,
95
+
96
+ /**
97
+ * 设置表单项标签的宽度
98
+ */
99
+ labelWidth: PropTypes.oneOfType([
100
+ PropTypes.number,
101
+ PropTypes.string
102
+ ]),
103
+
104
+ /**
105
+ * 设置表单项控件的最大宽度
106
+ */
107
+ maxWidth: PropTypes.oneOfType([
108
+ PropTypes.number,
109
+ PropTypes.string
110
+ ]),
111
+
112
+ /**
113
+ * 设置表单标签占位格数
114
+ */
115
+ labelCol: PropTypes.oneOfType([
116
+ PropTypes.number,
117
+ PropTypes.string
118
+ ]),
119
+
120
+ /**
121
+ * 设置表单控件占位格数
122
+ */
123
+ fieldCol: PropTypes.oneOfType([
124
+ PropTypes.number,
125
+ PropTypes.string
126
+ ]),
127
+
128
+ /**
129
+ * 设置表单项跨列展示,目前需配合lableWidth来使用,否则无法与其他表单项在样式上对齐,通过配置单个表单项的labelCol、fieldCol勉强能改善
130
+ */
131
+ cellSpan: PropTypes.oneOfType([
132
+ PropTypes.number,
133
+ PropTypes.string
134
+ ]),
135
+
136
+ /**
137
+ * 设置表单项列宽度,表单布局会被切割成 24 等份,可以通过设置 span 来自定义表单项所占的宽度
138
+ */
139
+ span: PropTypes.oneOfType([
140
+ PropTypes.number,
141
+ PropTypes.string
142
+ ]),
143
+
144
+ /**
145
+ * 设置指定渲染的控件名称
146
+ */
147
+ widget: PropTypes.oneOf([
148
+ 'input', 'inputNumber', 'select', 'multiSelect', 'radio', 'checkboxes',
149
+ 'textArea', 'checkbox', 'switch', 'rate', 'slider', 'datePicker',
150
+ 'dateRange', 'timePicker', 'timeRange', 'cascader', 'treeSelect', 'color',
151
+ 'imageInput', 'urlInput', 'html'
152
+ ]),
153
+
154
+ /**
155
+ * 设置输入内容提示
156
+ */
157
+ placeholder: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),
158
+
159
+ /**
160
+ * 设置副标题描述
161
+ */
162
+ description: PropTypes.string,
163
+
164
+ /**
165
+ * 设置气泡提示,支持html格式,可传入一个antd的tooltip配置对象支持更多配置
166
+ */
167
+ tooltip: PropTypes.oneOfType([
168
+ PropTypes.string,
169
+ PropTypes.shape({
170
+ /**
171
+ * 设置显示的文字内容
172
+ */
173
+ title: PropTypes.any,
174
+
175
+ /**
176
+ * 设置气泡框的位置,可选的有'top'、'left'、'right'、'bottom'、'topLeft'
177
+ * 、'topRight'、'bottomLeft'、'bottomRight'、'leftTop'、'leftBottom'
178
+ * 、'rightTop'、'rightBottom',默认为'top'
179
+ */
180
+ placement: PropTypes.oneOf([
181
+ 'top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft',
182
+ 'bottomRight'
183
+ ]),
184
+
185
+ /**
186
+ * 设置背景颜色
187
+ */
188
+ color: PropTypes.string,
189
+
190
+ /**
191
+ * 设置鼠标移入后延时多少才显示 Tooltip,单位:秒,默认为0.1
192
+ */
193
+ mouseEnterDelay: PropTypes.number,
194
+
195
+ /**
196
+ * 设置鼠标移出后延时多少才隐藏 Tooltip,单位:秒,默认为0.1
197
+ */
198
+ mouseLeaveDelay: PropTypes.number,
199
+
200
+ /**
201
+ * 设置卡片css类
202
+ */
203
+ overlayClassName: PropTypes.oneOfType([
204
+ PropTypes.string,
205
+ PropTypes.object
206
+ ]),
207
+
208
+ /**
209
+ * 设置卡片样式
210
+ */
211
+ overlayStyle: PropTypes.object,
212
+
213
+ /**
214
+ * 设置卡片内容区域的样式
215
+ */
216
+ overlayInnerStyle: PropTypes.object,
217
+
218
+ /**
219
+ * 设置触发行为,可选的有'hover'、'focus'、'click',或是以上多个组成的数组,默认为'hover'
220
+ */
221
+ trigger: PropTypes.oneOfType(
222
+ [
223
+ PropTypes.oneOf(['hover', 'focus', 'click']),
224
+ PropTypes.arrayOf(PropTypes.oneOf(['hover', 'focus', 'click']))
225
+ ]
226
+ ),
227
+
228
+ /**
229
+ * 设置悬浮层zIndex
230
+ */
231
+ zIndex: PropTypes.number,
232
+
233
+ /**
234
+ * 设置修改箭头的显示状态以及修改箭头是否指向目标元素中心,默认为'show'
235
+ */
236
+ arrow: PropTypes.oneOf(['show', 'hide', 'center']),
237
+
238
+ /**
239
+ * 用于设置是否始终保持更新内容,默认为false。默认情况下,Tooltip 在关闭时会缓存内容,设置该属性后会始终保持更新。
240
+ */
241
+ fresh: PropTypes.bool,
242
+
243
+ /**
244
+ * 用于监听或控制当前tooltip的显隐,默认为false
245
+ */
246
+ open: PropTypes.bool,
247
+
248
+ /**
249
+ * 用于设置气泡被遮挡时自动调整位置,默认为true
250
+ */
251
+ autoAdjustOverflow: PropTypes.bool,
252
+
253
+ /**
254
+ * 设置默认是否显隐,默认为false
255
+ */
256
+ defaultOpen: PropTypes.bool,
257
+
258
+ /**
259
+ * 设置关闭后是否销毁Tooltip,默认为false
260
+ */
261
+ destroyTooltipOnHide: PropTypes.bool
262
+ })
263
+ ]),
264
+
265
+ /**
266
+ * 设置更多的说明信息,支持html格式,会紧贴在元素下面一行展示
267
+ */
268
+ extra: PropTypes.string,
269
+
270
+ /**
271
+ * 设置是否必填,默认为false
272
+ */
273
+ required: PropTypes.oneOfType([
274
+ PropTypes.bool,
275
+ PropTypes.string
276
+ ]),
277
+
278
+ /**
279
+ * 设置string类型为字符串最小长度;number类型时为最小值;array 类型时为数组最小长度
280
+ */
281
+ min: PropTypes.oneOfType([
282
+ PropTypes.number,
283
+ PropTypes.string
284
+ ]),
285
+
286
+ /**
287
+ * 设置string类型为字符串最大长度;number类型时为最大值;array 类型时为数组最大长度
288
+ */
289
+ max: PropTypes.oneOfType([
290
+ PropTypes.number,
291
+ PropTypes.string
292
+ ]),
293
+
294
+ /**
295
+ * 在已设置的type下,如何处理这个type
296
+ */
297
+ format: PropTypes.oneOf(['image', 'textarea', 'color', 'email', 'url', 'dateTime', 'date', 'time', 'upload']),
298
+
299
+ /**
300
+ * 设置表单元素的校验规则
301
+ */
302
+ rules: PropTypes.arrayOf(PropTypes.shape({
303
+ /**
304
+ * 仅在 type 为 array 类型时有效,用于指定数组元素的校验规则
305
+ */
306
+ defaultField: PropTypes.object,
307
+
308
+ /**
309
+ * 是否匹配枚举中的值(需要将 type 设置为 enum)
310
+ */
311
+ enum: PropTypes.any,
312
+
313
+ /**
314
+ * 仅在 type 为 array 或 object 类型时有效,用于指定子元素的校验规则
315
+ */
316
+ fields: PropTypes.any,
317
+
318
+ /**
319
+ * string 类型时为字符串长度;number 类型时为确定数字; array 类型时为数组长度
320
+ */
321
+ len: PropTypes.number,
322
+
323
+ /**
324
+ * 必须设置 type:string 类型为字符串最大长度;number 类型时为最大值;array 类型时为数组最大长度
325
+ */
326
+ max: PropTypes.number,
327
+
328
+ /**
329
+ * 错误信息,不设置时会通过模板自动生成
330
+ */
331
+ message: PropTypes.string,
332
+
333
+ /**
334
+ * 必须设置 type:string 类型为字符串最小长度;number 类型时为最小值;array 类型时为数组最小长度
335
+ */
336
+ min: PropTypes.number,
337
+
338
+ /**
339
+ * 正则表达式匹配
340
+ */
341
+ pattern: PropTypes.oneOfType([
342
+ PropTypes.string,
343
+ PropTypes.instanceOf(RegExp)
344
+ ]),
345
+
346
+ /**
347
+ * 是否为必选字段
348
+ */
349
+ required: PropTypes.bool,
350
+
351
+ /**
352
+ * 类型,常见有 string |number |boolean |url | email等
353
+ */
354
+ type: PropTypes.oneOf([
355
+ 'string',
356
+ 'number',
357
+ 'boolean',
358
+ 'method',
359
+ 'regexp',
360
+ 'integer',
361
+ 'float',
362
+ 'array',
363
+ 'object',
364
+ 'enum',
365
+ 'date',
366
+ 'url',
367
+ 'hex',
368
+ 'email',
369
+ 'any'
370
+ ]),
371
+
372
+ /**
373
+ * 设置触发验证时机,可选值有onChange、onBlur、onFocus,默认为onChange
374
+ */
375
+ validateTrigger: PropTypes.oneOf([
376
+ 'onChange',
377
+ 'onBlur',
378
+ 'onFocus'
379
+ ]),
380
+
381
+ /**
382
+ * 设置自定义校验,值需要是字符串格式的js函数
383
+ */
384
+ validator: PropTypes.string,
385
+
386
+ /**
387
+ * 仅警告,不阻塞表单提交
388
+ */
389
+ warningOnly: PropTypes.bool,
390
+
391
+ /**
392
+ * 如果字段仅包含空格则校验不通过,只在 type: 'string' 时生效
393
+ */
394
+ whitespace: PropTypes.bool
395
+ })),
396
+
397
+ /**
398
+ * 设置是否隐藏,默认为false
399
+ */
400
+ hidden: PropTypes.oneOfType([
401
+ PropTypes.bool,
402
+ PropTypes.string
403
+ ]),
404
+
405
+ /**
406
+ * 设置是否禁用,默认为false
407
+ */
408
+ disabled: PropTypes.oneOfType([
409
+ PropTypes.bool,
410
+ PropTypes.string
411
+ ]),
412
+
413
+ /**
414
+ * 设置是否为可读模式,默认为false
415
+ */
416
+ readOnly: PropTypes.oneOfType([
417
+ PropTypes.bool,
418
+ PropTypes.string
419
+ ]),
420
+
421
+ /**
422
+ * 指定只读渲染组件名称
423
+ */
424
+ readOnlyWidget: PropTypes.string,
425
+
426
+ /**
427
+ * 设置表单依赖元素,当依赖的元素更新时,会触发本元素的重新渲染,用于复杂的表单联动
428
+ */
429
+ dependencies: PropTypes.arrayOf(PropTypes.string),
430
+
431
+ /**
432
+ * 设置自定义控件class名称
433
+ */
434
+ className: PropTypes.string,
435
+
436
+ /**
437
+ * 当title未设置时,通过配置reserveLabel: true可以保留labelWidth占位,使得输入控件和其他控件上下对齐
438
+ */
439
+ reserveLabel: PropTypes.oneOfType([
440
+ PropTypes.bool,
441
+ PropTypes.string
442
+ ]),
443
+
444
+ /**
445
+ * 设置额外属性,如果使用的是antd组件,对应的就是antd组件的其他属性
446
+ */
447
+ props: PropTypes.object
448
+ }),
449
+ /**
450
+ * 嵌套控件配置项
451
+ */
452
+ PropTypes.shape({
453
+ /**
454
+ * 固定配置为type: 'object'
455
+ */
456
+ type: PropTypes.oneOf(['object']),
457
+
458
+ /**
459
+ * 设置标题
460
+ */
461
+ title: PropTypes.string,
462
+
463
+ /**
464
+ * 设置希望使用的嵌套组件名称,可选的有'collapse'、'card'、'lineTitle'、'subInline',默认为'card'
465
+ */
466
+ widget: PropTypes.oneOf(['collapse', 'card', 'lineTitle', 'subInline']),
467
+
468
+ /**
469
+ * 设置表单元素集合
470
+ */
471
+ properties: PropTypes.object,
472
+
473
+ /**
474
+ * 设置表单布局,一行应该有几列,默认为3
475
+ */
476
+ column: PropTypes.oneOfType([
477
+ PropTypes.number,
478
+ PropTypes.string
479
+ ]),
480
+
481
+ /**
482
+ * 设置副标题描述
483
+ */
484
+ description: PropTypes.string,
485
+
486
+ /**
487
+ * 设置气泡提示,支持html格式,可传入一个antd的tooltip配置对象支持更多配置
488
+ */
489
+ tooltip: PropTypes.oneOfType([
490
+ PropTypes.string,
491
+ PropTypes.shape({
492
+ /**
493
+ * 设置显示的文字内容
494
+ */
495
+ title: PropTypes.any,
496
+
497
+ /**
498
+ * 设置气泡框的位置,可选的有'top'、'left'、'right'、'bottom'、'topLeft'
499
+ * 、'topRight'、'bottomLeft'、'bottomRight'、'leftTop'、'leftBottom'
500
+ * 、'rightTop'、'rightBottom',默认为'top'
501
+ */
502
+ placement: PropTypes.oneOf([
503
+ 'top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft',
504
+ 'bottomRight'
505
+ ]),
506
+
507
+ /**
508
+ * 设置背景颜色
509
+ */
510
+ color: PropTypes.string,
511
+
512
+ /**
513
+ * 设置鼠标移入后延时多少才显示 Tooltip,单位:秒,默认为0.1
514
+ */
515
+ mouseEnterDelay: PropTypes.number,
516
+
517
+ /**
518
+ * 设置鼠标移出后延时多少才隐藏 Tooltip,单位:秒,默认为0.1
519
+ */
520
+ mouseLeaveDelay: PropTypes.number,
521
+
522
+ /**
523
+ * 设置卡片css类
524
+ */
525
+ overlayClassName: PropTypes.oneOfType([
526
+ PropTypes.string,
527
+ PropTypes.object
528
+ ]),
529
+
530
+ /**
531
+ * 设置卡片样式
532
+ */
533
+ overlayStyle: PropTypes.object,
534
+
535
+ /**
536
+ * 设置卡片内容区域的样式
537
+ */
538
+ overlayInnerStyle: PropTypes.object,
539
+
540
+ /**
541
+ * 设置触发行为,可选的有'hover'、'focus'、'click',或是以上多个组成的数组,默认为'hover'
542
+ */
543
+ trigger: PropTypes.oneOfType(
544
+ [
545
+ PropTypes.oneOf(['hover', 'focus', 'click']),
546
+ PropTypes.arrayOf(PropTypes.oneOf(['hover', 'focus', 'click']))
547
+ ]
548
+ ),
549
+
550
+ /**
551
+ * 设置悬浮层zIndex
552
+ */
553
+ zIndex: PropTypes.number,
554
+
555
+ /**
556
+ * 设置修改箭头的显示状态以及修改箭头是否指向目标元素中心,默认为'show'
557
+ */
558
+ arrow: PropTypes.oneOf(['show', 'hide', 'center']),
559
+
560
+ /**
561
+ * 用于设置是否始终保持更新内容,默认为false。默认情况下,Tooltip 在关闭时会缓存内容,设置该属性后会始终保持更新。
562
+ */
563
+ fresh: PropTypes.bool,
564
+
565
+ /**
566
+ * 用于监听或控制当前tooltip的显隐,默认为false
567
+ */
568
+ open: PropTypes.bool,
569
+
570
+ /**
571
+ * 用于设置气泡被遮挡时自动调整位置,默认为true
572
+ */
573
+ autoAdjustOverflow: PropTypes.bool,
574
+
575
+ /**
576
+ * 设置默认是否显隐,默认为false
577
+ */
578
+ defaultOpen: PropTypes.bool,
579
+
580
+ /**
581
+ * 设置关闭后是否销毁Tooltip,默认为false
582
+ */
583
+ destroyTooltipOnHide: PropTypes.bool
584
+ })
585
+ ]),
586
+
587
+ /**
588
+ * 设置额外属性,透传到对应的嵌套组件中
589
+ */
590
+ props: PropTypes.object
591
+ }),
592
+
593
+ /**
594
+ * 列表控件配置项
595
+ */
596
+ PropTypes.shape({
597
+ /**
598
+ * 固定配置为type: 'array'
599
+ */
600
+ type: PropTypes.oneOf(['array']),
601
+
602
+ /**
603
+ * 设置标题
604
+ */
605
+ title: PropTypes.string,
606
+
607
+ /**
608
+ * 设置希望使用的列表组件名称,可选的有'cardList'、'simpleList'、'tableList'、'drawerList'、'virtualList',默认为'cardList'
609
+ */
610
+ widget: PropTypes.oneOf(['cardList', 'simpleList', 'tableList', 'drawerList', 'virtualList']),
611
+
612
+ /**
613
+ * 设置列表的最大长度
614
+ */
615
+ max: PropTypes.oneOfType([
616
+ PropTypes.number,
617
+ PropTypes.string
618
+ ]),
619
+
620
+ /**
621
+ * 设置列表的最小长度
622
+ */
623
+ min: PropTypes.oneOfType([
624
+ PropTypes.number,
625
+ PropTypes.string
626
+ ]),
627
+
628
+ /**
629
+ * 设置列表控件
630
+ */
631
+ props: PropTypes.shape({
632
+ /**
633
+ * 设置添加按钮属性,参考 Antd Button Props()
634
+ */
635
+ addBtnProps: PropTypes.object,
636
+
637
+ /**
638
+ * 设置删除确认弹窗属性,参考 Antd PopConfirm Props
639
+ */
640
+ delConfirmProps: PropTypes.object,
641
+
642
+ /**
643
+ * 设置tableList | drawerList | virtualList 中操作列的属性,参考 Antd Table ColumnType。 其中 title 使用 colHeaderText 代替。
644
+ */
645
+ actionColumnProps: PropTypes.object,
646
+
647
+ /**
648
+ * 设置是否隐藏添加按钮
649
+ */
650
+ hideAdd: PropTypes.bool,
651
+
652
+ /**
653
+ * 设置是否隐藏复制按钮
654
+ */
655
+ hideCopy: PropTypes.bool,
656
+
657
+ /**
658
+ * 设置是否隐藏移动按钮
659
+ */
660
+ hideMove: PropTypes.bool,
661
+
662
+ /**
663
+ * 设置是否隐藏删除按钮
664
+ */
665
+ hideDelete: PropTypes.bool
666
+ }),
667
+
668
+ /**
669
+ * 动态项配置,可以是一个嵌套控件
670
+ */
671
+ items: PropTypes.object
672
+ })
673
+ ])),
674
+ }).isRequired,
675
+
676
+ /**
677
+ * 设置表单布局模式,表单元素与 label 同行 or 分两行展示, inline 则整个展示自然顺排,
678
+ * 可选的有'column'、'row'与'inline',默认为'column'
679
+ */
680
+ displayType: PropTypes.oneOf(['column', 'row', 'inline']),
681
+
682
+ /**
683
+ * 设置label标签的文本对齐方式,可选的有'left'和'right',默认为'right'
684
+ */
685
+ labelAlign: PropTypes.oneOf(['left', 'right']),
686
+
687
+ /**
688
+ * 设置表单标签固定宽度
689
+ */
690
+ lableWidth: PropTypes.number,
691
+
692
+ /**
693
+ * 设置表单项控件的最大宽度
694
+ */
695
+ maxWidth: PropTypes.number,
696
+
697
+ /**
698
+ * 设置表单标签占位格数
699
+ */
700
+ labelCol: PropTypes.number,
701
+
702
+ /**
703
+ * 设置表单控件占位格数
704
+ */
705
+ fieldCol: PropTypes.number,
706
+
707
+ /**
708
+ * 设置是否是否显示label后面的冒号,默认为true
709
+ */
710
+ colon: PropTypes.bool,
711
+
712
+ /**
713
+ * 设置表单全局配置
714
+ */
715
+ globalConfig: PropTypes.exact({
716
+ /**
717
+ * 设置是否禁用表达式
718
+ */
719
+ mustacheDisabled: PropTypes.bool,
720
+
721
+ /**
722
+ * 设置列表表单配置
723
+ */
724
+ listOperate: PropTypes.exact({
725
+ /**
726
+ * 设置列表表单操作按钮样式
727
+ */
728
+ btnType: PropTypes.oneOf(['icon', 'text']),
729
+
730
+ /**
731
+ * 设置是否隐藏移动按钮
732
+ */
733
+ hideMove: PropTypes.bool
734
+ })
735
+ }),
736
+
737
+ /**
738
+ * 监听表单的数据变化,属性值需要是字符串格式的js函数
739
+ */
740
+ watch: PropTypes.objectOf(PropTypes.string),
741
+
742
+ /**
743
+ * 设置提交数据的时候是否去掉已经被隐藏的元素的数据,默认为true
744
+ */
745
+ removeHiddenData: PropTypes.bool,
746
+
747
+ /**
748
+ * 设否开启只读模式,一般用于预览展示,全文text展示,默认为false
749
+ */
750
+ readOnly: PropTypes.bool,
751
+
752
+ /**
753
+ * 设置一行展示多少列
754
+ */
755
+ column: PropTypes.number,
756
+
757
+ /**
758
+ * 设置是否禁用全部表单项,默认为false
759
+ */
760
+ disabled: PropTypes.bool,
761
+
762
+ /**
763
+ * 设置提交失败是否自动滚动到第一个错误字段,默认为false
764
+ */
765
+ scrollToFirstError: PropTypes.bool,
766
+
767
+ /**
768
+ * 设置展示语言,目前只支持中文、英文,
769
+ * 可选的有'zh-CN'与'en-US',默认为'zh-CN'
770
+ */
771
+ locale: PropTypes.oneOf(['zh-cn', 'en-us', 'de-de', 'ru-ru']),
772
+
773
+ /**
774
+ * 设置底部操作区域
775
+ */
776
+ footer: PropTypes.oneOfType([
777
+ PropTypes.bool,
778
+ PropTypes.shape({
779
+ /**
780
+ * 设置提交按钮
781
+ */
782
+ submit: PropTypes.shape({
783
+ /**
784
+ * 设置按钮文字
785
+ */
786
+ text: PropTypes.string,
787
+
788
+ /**
789
+ * 设置是否显示
790
+ */
791
+ hide: PropTypes.bool,
792
+
793
+ /**
794
+ * 设置其他按钮属性,参考 Antd Button Props()
795
+ */
796
+ btnProps: PropTypes.object
797
+ }),
798
+ /**
799
+ * 设置重置按钮
800
+ */
801
+ reset: PropTypes.shape({
802
+ /**
803
+ * 设置按钮文字
804
+ */
805
+ text: PropTypes.string,
806
+
807
+ /**
808
+ * 设置是否显示
809
+ */
810
+ hide: PropTypes.bool,
811
+
812
+ /**
813
+ * 设置其他按钮属性,参考 Antd Button Props()
814
+ */
815
+ btnProps: PropTypes.object
816
+ })
817
+ }),
818
+ PropTypes.node
819
+ ]),
820
+
821
+ /**
822
+ * 同antd的configProvider
823
+ */
824
+ configProvider: PropTypes.object,
825
+
826
+ /**
827
+ * 设置默认的校验提示信息
828
+ */
829
+ validateMessages: PropTypes.exact({
830
+ default: PropTypes.string,
831
+ required: PropTypes.string,
832
+ whitespace: PropTypes.string,
833
+ date: PropTypes.exact({
834
+ format: PropTypes.string,
835
+ parse: PropTypes.string,
836
+ invalid: PropTypes.string
837
+ }),
838
+ types: PropTypes.exact({
839
+ string: PropTypes.string,
840
+ method: PropTypes.string,
841
+ array: PropTypes.string,
842
+ object: PropTypes.string,
843
+ number: PropTypes.string,
844
+ date: PropTypes.string,
845
+ boolean: PropTypes.string,
846
+ integer: PropTypes.string,
847
+ float: PropTypes.string,
848
+ regexp: PropTypes.string,
849
+ email: PropTypes.string,
850
+ url: PropTypes.string,
851
+ hex: PropTypes.string
852
+ }),
853
+ string: PropTypes.exact({
854
+ len: PropTypes.string,
855
+ min: PropTypes.string,
856
+ max: PropTypes.string,
857
+ range: PropTypes.string
858
+ }),
859
+ number: PropTypes.exact({
860
+ len: PropTypes.string,
861
+ min: PropTypes.string,
862
+ max: PropTypes.string,
863
+ range: PropTypes.string
864
+ }),
865
+ array: PropTypes.exact({
866
+ len: PropTypes.string,
867
+ min: PropTypes.string,
868
+ max: PropTypes.string,
869
+ range: PropTypes.string
870
+ }),
871
+ pattern: PropTypes.exact({
872
+ mismatch: PropTypes.string
873
+ })
874
+ }),
875
+
876
+ /**
877
+ * 设置与监听表单数据
878
+ */
879
+ values: PropTypes.object,
880
+
881
+ /**
882
+ * 监听表单校验结果
883
+ */
884
+ validateStatuses: PropTypes.bool,
885
+
886
+ /**
887
+ * 控制参数,用于提交表单时手动搜集表单的校验结果,回调设置为true后会自动变为false
888
+ */
889
+ submitForm: PropTypes.bool,
890
+
891
+ /**
892
+ * 辅助监听表单提交参数
893
+ */
894
+ submitFormClicks: PropTypes.number,
895
+
896
+ /**
897
+ * 控制参数,用于重置表单项校验状态(不能重置表单项包裹的组件的值,需要通过回调重置表单项包裹的组件的值),回调设置为true后会自动变为false
898
+ */
899
+ resetForm: PropTypes.bool,
900
+
901
+ /**
902
+ * 辅助监听表单重置参数
903
+ */
904
+ resetFormClicks: PropTypes.number,
905
+
906
+ loading_state: PropTypes.shape({
907
+ /**
908
+ * Determines if the component is loading or not
909
+ */
910
+ is_loading: PropTypes.bool,
911
+ /**
912
+ * Holds which property is loading
913
+ */
914
+ prop_name: PropTypes.string,
915
+ /**
916
+ * Holds the name of the component that is loading
917
+ */
918
+ component_name: PropTypes.string
919
+ }),
920
+
921
+ /**
922
+ * Dash-assigned callback that should be called to report property changes
923
+ * to Dash, to make them available for callbacks.
924
+ */
925
+ setProps: PropTypes.func
926
+ };
927
+
928
+ // 设置默认参数
929
+ AntdFormRender.defaultProps = {
930
+ displayType: 'column',
931
+ labelAlign: 'right',
932
+ colon: true,
933
+ removeHiddenData: true,
934
+ readOnly: false,
935
+ column: 1,
936
+ disabled: false,
937
+ scrollToFirstError: false,
938
+ locale: 'zh-CN',
939
+ submitFormClicks: 0,
940
+ resetFormClicks: 0
941
+ }
942
+
943
+ export default AntdFormRender;
944
+
945
+ export const propTypes = AntdFormRender.propTypes;
946
946
  export const defaultProps = AntdFormRender.defaultProps;