@regenbio/regenbio-components-react 1.2.14 → 1.2.16

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 (901) hide show
  1. package/.codecov.yml +6 -0
  2. package/.dumi/app.tsx +1 -0
  3. package/.dumi/tsconfig.json +4 -0
  4. package/.dumirc.ts +426 -0
  5. package/.eslintignore +12 -0
  6. package/.eslintrc.js +6 -0
  7. package/.fatherrc.base.ts +23 -0
  8. package/.github/ISSUE_TEMPLATE/bug_report.md +49 -0
  9. package/.github/ISSUE_TEMPLATE/feature_request.md +41 -0
  10. package/.github/ISSUE_TEMPLATE/question.md +29 -0
  11. package/.github/dependabot.yml +11 -0
  12. package/.github/workflows/build.yml +27 -0
  13. package/.github/workflows/codeql.yml +41 -0
  14. package/.github/workflows/coverage.yml +31 -0
  15. package/.github/workflows/issue-labeled.yml +37 -0
  16. package/.github/workflows/issue-open-check.yml +34 -0
  17. package/.github/workflows/pkg.pr.new.yml +37 -0
  18. package/.github/workflows/preview-build.yml +46 -0
  19. package/.github/workflows/preview-deploy.yml +92 -0
  20. package/.github/workflows/preview-start.yml +18 -0
  21. package/.github/workflows/rebase.yml +17 -0
  22. package/.prettierignore +9 -0
  23. package/.prettierrc.js +7 -0
  24. package/CONTRIBUTING.md +77 -0
  25. package/LICENSE.md +7 -0
  26. package/README.es-PR.md +199 -0
  27. package/README.md +203 -0
  28. package/README.zh-CN.md +203 -0
  29. package/docs/changelog.en-US.md +1115 -0
  30. package/docs/changelog.md +1136 -0
  31. package/docs/components/customization-value-type.tsx +222 -0
  32. package/docs/components/schema.$tab-api.md +8 -0
  33. package/docs/components/schema.en-US.md +477 -0
  34. package/docs/components/schema.md +477 -0
  35. package/docs/components/valueEnum-map.tsx +45 -0
  36. package/docs/components/valueType.tsx +299 -0
  37. package/docs/components.en-US.md +183 -0
  38. package/docs/components.md +78 -0
  39. package/docs/docs/faq.en-US.md +75 -0
  40. package/docs/docs/faq.md +75 -0
  41. package/docs/docs/index.en-US.md +53 -0
  42. package/docs/docs/index.md +56 -0
  43. package/docs/docs/intro.en-US.md +125 -0
  44. package/docs/docs/intro.md +126 -0
  45. package/docs/index.en-US.md +87 -0
  46. package/docs/index.md +56 -0
  47. package/docs/playground/index.en-US.md +14 -0
  48. package/docs/playground/index.md +14 -0
  49. package/docs/playground/pro-descriptions.en-US.md +10 -0
  50. package/docs/playground/pro-descriptions.md +10 -0
  51. package/docs/playground/pro-form.en-US.md +18 -0
  52. package/docs/playground/pro-form.md +19 -0
  53. package/docs/playground/pro-layout.en-US.md +16 -0
  54. package/docs/playground/pro-layout.md +17 -0
  55. package/docs/playground/pro-table.en-US.md +11 -0
  56. package/docs/playground/pro-table.md +11 -0
  57. package/lerna.json +21 -0
  58. package/package.json +164 -36
  59. package/packages/card/.fatherrc.ts +5 -0
  60. package/packages/card/CHANGELOG.md +1489 -0
  61. package/packages/card/README.md +19 -0
  62. package/packages/card/package.json +61 -0
  63. package/packages/card/src/ProCard.tsx +29 -0
  64. package/packages/card/src/components/Actions/index.tsx +40 -0
  65. package/packages/card/src/components/Actions/style.ts +102 -0
  66. package/packages/card/src/components/Card/index.tsx +293 -0
  67. package/packages/card/src/components/Card/style.ts +314 -0
  68. package/packages/card/src/components/CheckCard/Group.tsx +474 -0
  69. package/packages/card/src/components/CheckCard/demos/avatar.tsx +16 -0
  70. package/packages/card/src/components/CheckCard/demos/basic.tsx +18 -0
  71. package/packages/card/src/components/CheckCard/demos/compose.tsx +28 -0
  72. package/packages/card/src/components/CheckCard/demos/custom.tsx +9 -0
  73. package/packages/card/src/components/CheckCard/demos/defaultChecked.tsx +12 -0
  74. package/packages/card/src/components/CheckCard/demos/description.tsx +35 -0
  75. package/packages/card/src/components/CheckCard/demos/disabled.tsx +34 -0
  76. package/packages/card/src/components/CheckCard/demos/extra.tsx +41 -0
  77. package/packages/card/src/components/CheckCard/demos/form.tsx +58 -0
  78. package/packages/card/src/components/CheckCard/demos/grid.tsx +30 -0
  79. package/packages/card/src/components/CheckCard/demos/group.tsx +56 -0
  80. package/packages/card/src/components/CheckCard/demos/image.tsx +20 -0
  81. package/packages/card/src/components/CheckCard/demos/list.tsx +83 -0
  82. package/packages/card/src/components/CheckCard/demos/loading.tsx +3 -0
  83. package/packages/card/src/components/CheckCard/demos/multiple.tsx +51 -0
  84. package/packages/card/src/components/CheckCard/demos/single.tsx +23 -0
  85. package/packages/card/src/components/CheckCard/demos/size.tsx +23 -0
  86. package/packages/card/src/components/CheckCard/demos/title.tsx +22 -0
  87. package/packages/card/src/components/CheckCard/index.en-US.md +154 -0
  88. package/packages/card/src/components/CheckCard/index.md +154 -0
  89. package/packages/card/src/components/CheckCard/index.tsx +379 -0
  90. package/packages/card/src/components/CheckCard/style.ts +216 -0
  91. package/packages/card/src/components/Divider/index.tsx +42 -0
  92. package/packages/card/src/components/Divider/style.ts +48 -0
  93. package/packages/card/src/components/Loading/index.tsx +64 -0
  94. package/packages/card/src/components/Loading/style.ts +55 -0
  95. package/packages/card/src/components/Operation/index.tsx +38 -0
  96. package/packages/card/src/components/Operation/style.ts +33 -0
  97. package/packages/card/src/components/Statistic/index.tsx +129 -0
  98. package/packages/card/src/components/Statistic/style.ts +110 -0
  99. package/packages/card/src/components/StatisticCard/demos/basic.tsx +40 -0
  100. package/packages/card/src/components/StatisticCard/demos/chart.tsx +20 -0
  101. package/packages/card/src/components/StatisticCard/demos/fomula.tsx +37 -0
  102. package/packages/card/src/components/StatisticCard/demos/footer.tsx +42 -0
  103. package/packages/card/src/components/StatisticCard/demos/group-chart.tsx +65 -0
  104. package/packages/card/src/components/StatisticCard/demos/group.tsx +57 -0
  105. package/packages/card/src/components/StatisticCard/demos/horizontal-left.tsx +31 -0
  106. package/packages/card/src/components/StatisticCard/demos/horizontal.tsx +31 -0
  107. package/packages/card/src/components/StatisticCard/demos/icon.tsx +77 -0
  108. package/packages/card/src/components/StatisticCard/demos/layout.tsx +90 -0
  109. package/packages/card/src/components/StatisticCard/demos/status.tsx +46 -0
  110. package/packages/card/src/components/StatisticCard/demos/tabs-statistic.tsx +55 -0
  111. package/packages/card/src/components/StatisticCard/demos/tabs.tsx +55 -0
  112. package/packages/card/src/components/StatisticCard/demos/total-layout.tsx +136 -0
  113. package/packages/card/src/components/StatisticCard/demos/total.tsx +58 -0
  114. package/packages/card/src/components/StatisticCard/demos/trend.tsx +15 -0
  115. package/packages/card/src/components/StatisticCard/index.en-US.md +152 -0
  116. package/packages/card/src/components/StatisticCard/index.md +152 -0
  117. package/packages/card/src/components/StatisticCard/index.tsx +107 -0
  118. package/packages/card/src/components/StatisticCard/style.ts +48 -0
  119. package/packages/card/src/components/TabPane/index.tsx +94 -0
  120. package/packages/card/src/components/card.en-US.md +219 -0
  121. package/packages/card/src/components/card.md +212 -0
  122. package/packages/card/src/demos/actions.tsx +59 -0
  123. package/packages/card/src/demos/basic.tsx +54 -0
  124. package/packages/card/src/demos/bordered.tsx +15 -0
  125. package/packages/card/src/demos/collapsible.tsx +110 -0
  126. package/packages/card/src/demos/colspan.tsx +80 -0
  127. package/packages/card/src/demos/divider.tsx +36 -0
  128. package/packages/card/src/demos/group.tsx +19 -0
  129. package/packages/card/src/demos/gutter.tsx +29 -0
  130. package/packages/card/src/demos/headerBordered.tsx +15 -0
  131. package/packages/card/src/demos/headless.tsx +5 -0
  132. package/packages/card/src/demos/hoverable.tsx +11 -0
  133. package/packages/card/src/demos/inner.tsx +32 -0
  134. package/packages/card/src/demos/layout.tsx +18 -0
  135. package/packages/card/src/demos/loading.tsx +28 -0
  136. package/packages/card/src/demos/multipleLine.tsx +43 -0
  137. package/packages/card/src/demos/responsive.tsx +72 -0
  138. package/packages/card/src/demos/split.tsx +46 -0
  139. package/packages/card/src/demos/split2.tsx +30 -0
  140. package/packages/card/src/demos/split23.tsx +14 -0
  141. package/packages/card/src/demos/steps-v.tsx +59 -0
  142. package/packages/card/src/demos/tabs-card.tsx +18 -0
  143. package/packages/card/src/demos/tabs.tsx +56 -0
  144. package/packages/card/src/index.tsx +30 -0
  145. package/packages/card/src/typing.ts +100 -0
  146. package/packages/card/tsconfig.json +21 -0
  147. package/packages/components/.fatherrc.ts +15 -0
  148. package/packages/components/CHANGELOG.md +841 -0
  149. package/packages/components/README.md +19 -0
  150. package/packages/components/package.json +62 -0
  151. package/packages/components/src/index.tsx +12 -0
  152. package/packages/components/tsconfig.json +32 -0
  153. package/packages/descriptions/.fatherrc.ts +5 -0
  154. package/packages/descriptions/CHANGELOG.md +1740 -0
  155. package/packages/descriptions/README.md +53 -0
  156. package/packages/descriptions/package.json +60 -0
  157. package/packages/descriptions/src/components/descriptions.en-US.md +168 -0
  158. package/packages/descriptions/src/components/descriptions.md +173 -0
  159. package/packages/descriptions/src/demos/arrayDataIndex.tsx +66 -0
  160. package/packages/descriptions/src/demos/base.demo-test.tsx +36 -0
  161. package/packages/descriptions/src/demos/base.tsx +115 -0
  162. package/packages/descriptions/src/demos/columns.tsx +127 -0
  163. package/packages/descriptions/src/demos/customization-value-type.tsx +166 -0
  164. package/packages/descriptions/src/demos/dynamic-descriptions.tsx +319 -0
  165. package/packages/descriptions/src/demos/editable.tsx +138 -0
  166. package/packages/descriptions/src/demos/format.tsx +62 -0
  167. package/packages/descriptions/src/demos/request.tsx +37 -0
  168. package/packages/descriptions/src/demos/use-data-source.tsx +78 -0
  169. package/packages/descriptions/src/index.tsx +676 -0
  170. package/packages/descriptions/src/useFetchData.tsx +93 -0
  171. package/packages/descriptions/tsconfig.json +26 -0
  172. package/packages/field/.fatherrc.ts +5 -0
  173. package/packages/field/CHANGELOG.md +2017 -0
  174. package/packages/field/README.md +17 -0
  175. package/packages/field/package.json +56 -0
  176. package/packages/field/src/FieldHOC/index.tsx +55 -0
  177. package/packages/field/src/components/Cascader/index.tsx +167 -0
  178. package/packages/field/src/components/Checkbox/index.tsx +149 -0
  179. package/packages/field/src/components/Code/index.tsx +78 -0
  180. package/packages/field/src/components/ColorPicker/index.tsx +117 -0
  181. package/packages/field/src/components/ColorPicker/old.tsx +121 -0
  182. package/packages/field/src/components/DatePicker/index.tsx +143 -0
  183. package/packages/field/src/components/Digit/index.tsx +93 -0
  184. package/packages/field/src/components/DigitRange/index.tsx +150 -0
  185. package/packages/field/src/components/FromNow/index.tsx +67 -0
  186. package/packages/field/src/components/Image/index.tsx +61 -0
  187. package/packages/field/src/components/IndexColumn/index.tsx +54 -0
  188. package/packages/field/src/components/Money/index.tsx +454 -0
  189. package/packages/field/src/components/Options/index.tsx +89 -0
  190. package/packages/field/src/components/Password/index.tsx +71 -0
  191. package/packages/field/src/components/Percent/index.tsx +109 -0
  192. package/packages/field/src/components/Percent/util.ts +26 -0
  193. package/packages/field/src/components/Progress/index.tsx +81 -0
  194. package/packages/field/src/components/Radio/index.tsx +128 -0
  195. package/packages/field/src/components/RangePicker/index.tsx +166 -0
  196. package/packages/field/src/components/Rate/index.tsx +36 -0
  197. package/packages/field/src/components/Second/index.tsx +88 -0
  198. package/packages/field/src/components/Segmented/index.tsx +93 -0
  199. package/packages/field/src/components/Select/LightSelect/index.tsx +286 -0
  200. package/packages/field/src/components/Select/SearchSelect/index.tsx +334 -0
  201. package/packages/field/src/components/Select/index.tsx +562 -0
  202. package/packages/field/src/components/Slider/index.tsx +42 -0
  203. package/packages/field/src/components/Status/index.tsx +47 -0
  204. package/packages/field/src/components/Switch/index.tsx +77 -0
  205. package/packages/field/src/components/Text/index.tsx +68 -0
  206. package/packages/field/src/components/TextArea/index.tsx +53 -0
  207. package/packages/field/src/components/TextArea/readonly.tsx +46 -0
  208. package/packages/field/src/components/TimePicker/index.tsx +261 -0
  209. package/packages/field/src/components/TreeSelect/index.tsx +258 -0
  210. package/packages/field/src/components/field.md +42 -0
  211. package/packages/field/src/demos/base.tsx +431 -0
  212. package/packages/field/src/demos/base_test.tsx +509 -0
  213. package/packages/field/src/demos/search-value-autoClearSearchValue.tsx +41 -0
  214. package/packages/field/src/demos/search-value.tsx +96 -0
  215. package/packages/field/src/demos/select-request.tsx +30 -0
  216. package/packages/field/src/demos/tree-select-search-value.tsx +151 -0
  217. package/packages/field/src/index.tsx +678 -0
  218. package/packages/field/tsconfig.json +22 -0
  219. package/packages/form/.fatherrc.ts +5 -0
  220. package/packages/form/CHANGELOG.md +2781 -0
  221. package/packages/form/README.md +15 -0
  222. package/packages/form/package.json +70 -0
  223. package/packages/form/src/BaseForm/BaseForm.tsx +839 -0
  224. package/packages/form/src/BaseForm/EditOrReadOnlyContext.ts +7 -0
  225. package/packages/form/src/BaseForm/LightWrapper/index.tsx +159 -0
  226. package/packages/form/src/BaseForm/LightWrapper/style.ts +31 -0
  227. package/packages/form/src/BaseForm/createField.tsx +384 -0
  228. package/packages/form/src/BaseForm/index.ts +3 -0
  229. package/packages/form/src/FieldContext.tsx +39 -0
  230. package/packages/form/src/components/Captcha/index.tsx +156 -0
  231. package/packages/form/src/components/Cascader/index.tsx +36 -0
  232. package/packages/form/src/components/Checkbox/index.tsx +90 -0
  233. package/packages/form/src/components/ColorPicker/index.tsx +47 -0
  234. package/packages/form/src/components/DateMonthRangePicker/index.tsx +38 -0
  235. package/packages/form/src/components/DatePicker/DatePicker.tsx +35 -0
  236. package/packages/form/src/components/DatePicker/MonthPicker.tsx +35 -0
  237. package/packages/form/src/components/DatePicker/QuarterPicker.tsx +35 -0
  238. package/packages/form/src/components/DatePicker/WeekPicker.tsx +35 -0
  239. package/packages/form/src/components/DatePicker/YearPicker.tsx +35 -0
  240. package/packages/form/src/components/DatePicker/index.tsx +22 -0
  241. package/packages/form/src/components/DateQuarterRangePicker/index.tsx +39 -0
  242. package/packages/form/src/components/DateRangePicker/index.tsx +39 -0
  243. package/packages/form/src/components/DateTimePicker/index.tsx +36 -0
  244. package/packages/form/src/components/DateTimeRangePicker/index.tsx +39 -0
  245. package/packages/form/src/components/DateWeekRangePicker/index.tsx +38 -0
  246. package/packages/form/src/components/DateYearRangePicker/index.tsx +38 -0
  247. package/packages/form/src/components/Dependency/demos/dependency.tsx +112 -0
  248. package/packages/form/src/components/Dependency/demos/dependency2.tsx +106 -0
  249. package/packages/form/src/components/Dependency/index.en-US.md +54 -0
  250. package/packages/form/src/components/Dependency/index.md +52 -0
  251. package/packages/form/src/components/Dependency/index.tsx +111 -0
  252. package/packages/form/src/components/Digit/index.tsx +43 -0
  253. package/packages/form/src/components/DigitRange/index.tsx +51 -0
  254. package/packages/form/src/components/Field/index.tsx +144 -0
  255. package/packages/form/src/components/FieldSet/demos/captCha.tsx +67 -0
  256. package/packages/form/src/components/FieldSet/demos/components-other-readonly.tsx +465 -0
  257. package/packages/form/src/components/FieldSet/demos/components-other.tsx +336 -0
  258. package/packages/form/src/components/FieldSet/demos/datatime.tsx +89 -0
  259. package/packages/form/src/components/FieldSet/demos/fieldSet-light.tsx +58 -0
  260. package/packages/form/src/components/FieldSet/demos/form-fieldset.tsx +106 -0
  261. package/packages/form/src/components/FieldSet/demos/pro-form-captCha.tsx +70 -0
  262. package/packages/form/src/components/FieldSet/demos/search-select.tsx +90 -0
  263. package/packages/form/src/components/FieldSet/demos/upload.tsx +35 -0
  264. package/packages/form/src/components/FieldSet/index.en-US.md +529 -0
  265. package/packages/form/src/components/FieldSet/index.md +680 -0
  266. package/packages/form/src/components/FieldSet/index.tsx +151 -0
  267. package/packages/form/src/components/FormItem/index.tsx +445 -0
  268. package/packages/form/src/components/FormItemRender/index.tsx +219 -0
  269. package/packages/form/src/components/Group/demos/base-use.tsx +93 -0
  270. package/packages/form/src/components/Group/demos/countLimit.tsx +57 -0
  271. package/packages/form/src/components/Group/demos/customize.tsx +294 -0
  272. package/packages/form/src/components/Group/demos/dependency.tsx +70 -0
  273. package/packages/form/src/components/Group/demos/horizontal-layout.tsx +73 -0
  274. package/packages/form/src/components/Group/demos/list-tooltip.tsx +69 -0
  275. package/packages/form/src/components/Group/demos/list.tsx +127 -0
  276. package/packages/form/src/components/Group/demos/nested-list.tsx +66 -0
  277. package/packages/form/src/components/Group/demos/pro-form-list.tsx +126 -0
  278. package/packages/form/src/components/Group/index.en-US.md +326 -0
  279. package/packages/form/src/components/Group/index.md +373 -0
  280. package/packages/form/src/components/Group/index.tsx +182 -0
  281. package/packages/form/src/components/Group/style.ts +55 -0
  282. package/packages/form/src/components/List/ListContainer.tsx +187 -0
  283. package/packages/form/src/components/List/ListItem.tsx +569 -0
  284. package/packages/form/src/components/List/index.tsx +323 -0
  285. package/packages/form/src/components/List/style.ts +89 -0
  286. package/packages/form/src/components/LoginForm/demos/login-form-page.tsx +283 -0
  287. package/packages/form/src/components/LoginForm/demos/login-form.tsx +190 -0
  288. package/packages/form/src/components/LoginForm/index.en-US.md +45 -0
  289. package/packages/form/src/components/LoginForm/index.md +45 -0
  290. package/packages/form/src/components/ModalForm/demos/drawer-form-nested.tsx +265 -0
  291. package/packages/form/src/components/ModalForm/demos/drawer-form.tsx +129 -0
  292. package/packages/form/src/components/ModalForm/demos/modal-form-reset.tsx +112 -0
  293. package/packages/form/src/components/ModalForm/demos/modal-form-submitter.tsx +143 -0
  294. package/packages/form/src/components/ModalForm/demos/modal-form.tsx +112 -0
  295. package/packages/form/src/components/ModalForm/demos/visible-on-visible-change.tsx +187 -0
  296. package/packages/form/src/components/ModalForm/index.en-US.md +70 -0
  297. package/packages/form/src/components/ModalForm/index.md +68 -0
  298. package/packages/form/src/components/Money/index.tsx +47 -0
  299. package/packages/form/src/components/QueryFilter/demos/light-filter-bordered.tsx +149 -0
  300. package/packages/form/src/components/QueryFilter/demos/light-filter-collapse.tsx +28 -0
  301. package/packages/form/src/components/QueryFilter/demos/light-filter-footer.tsx +88 -0
  302. package/packages/form/src/components/QueryFilter/demos/light-filter-placement.tsx +89 -0
  303. package/packages/form/src/components/QueryFilter/demos/light-filter-test.tsx +92 -0
  304. package/packages/form/src/components/QueryFilter/demos/light-filter.tsx +215 -0
  305. package/packages/form/src/components/QueryFilter/demos/query-filter-collapsed.tsx +18 -0
  306. package/packages/form/src/components/QueryFilter/demos/query-filter-defaultColsNumber.tsx +18 -0
  307. package/packages/form/src/components/QueryFilter/demos/query-filter-test.tsx +158 -0
  308. package/packages/form/src/components/QueryFilter/demos/query-filter-vertical.tsx +44 -0
  309. package/packages/form/src/components/QueryFilter/demos/query-filter.tsx +31 -0
  310. package/packages/form/src/components/QueryFilter/demos/search-filter.tsx +126 -0
  311. package/packages/form/src/components/QueryFilter/index.en-US.md +93 -0
  312. package/packages/form/src/components/QueryFilter/index.md +90 -0
  313. package/packages/form/src/components/Radio/index.tsx +89 -0
  314. package/packages/form/src/components/Rate/index.tsx +28 -0
  315. package/packages/form/src/components/SchemaForm/demos/ModalAndDrawerForm.tsx +68 -0
  316. package/packages/form/src/components/SchemaForm/demos/customization-value-type.tsx +174 -0
  317. package/packages/form/src/components/SchemaForm/demos/dependencies.tsx +125 -0
  318. package/packages/form/src/components/SchemaForm/demos/dependency.tsx +90 -0
  319. package/packages/form/src/components/SchemaForm/demos/dynamic-rerender.tsx +127 -0
  320. package/packages/form/src/components/SchemaForm/demos/embed.tsx +121 -0
  321. package/packages/form/src/components/SchemaForm/demos/form-list-required.tsx +142 -0
  322. package/packages/form/src/components/SchemaForm/demos/schema.tsx +311 -0
  323. package/packages/form/src/components/SchemaForm/demos/steps-form.tsx +203 -0
  324. package/packages/form/src/components/SchemaForm/demos/valueType.tsx +150 -0
  325. package/packages/form/src/components/SchemaForm/index.en-US.md +92 -0
  326. package/packages/form/src/components/SchemaForm/index.md +84 -0
  327. package/packages/form/src/components/SchemaForm/index.tsx +241 -0
  328. package/packages/form/src/components/SchemaForm/layoutType/Embed.tsx +3 -0
  329. package/packages/form/src/components/SchemaForm/layoutType/StepsForm.tsx +54 -0
  330. package/packages/form/src/components/SchemaForm/layoutType/index.ts +2 -0
  331. package/packages/form/src/components/SchemaForm/typing.ts +171 -0
  332. package/packages/form/src/components/SchemaForm/valueType/dependency.tsx +34 -0
  333. package/packages/form/src/components/SchemaForm/valueType/divider.tsx +13 -0
  334. package/packages/form/src/components/SchemaForm/valueType/field.tsx +91 -0
  335. package/packages/form/src/components/SchemaForm/valueType/formList.tsx +27 -0
  336. package/packages/form/src/components/SchemaForm/valueType/formSet.tsx +27 -0
  337. package/packages/form/src/components/SchemaForm/valueType/group.tsx +22 -0
  338. package/packages/form/src/components/SchemaForm/valueType/ignore.tsx +13 -0
  339. package/packages/form/src/components/SchemaForm/valueType/index.tsx +46 -0
  340. package/packages/form/src/components/Segmented/index.tsx +36 -0
  341. package/packages/form/src/components/Select/index.tsx +173 -0
  342. package/packages/form/src/components/Slider/index.tsx +62 -0
  343. package/packages/form/src/components/StepsForm/demos/add-or-edit-step-form.tsx +90 -0
  344. package/packages/form/src/components/StepsForm/demos/customize-steps-from.tsx +176 -0
  345. package/packages/form/src/components/StepsForm/demos/modal-step-form.tsx +153 -0
  346. package/packages/form/src/components/StepsForm/demos/multi-card-step-form.tsx +201 -0
  347. package/packages/form/src/components/StepsForm/demos/steps-form-vertical.tsx +153 -0
  348. package/packages/form/src/components/StepsForm/demos/steps-from.tsx +157 -0
  349. package/packages/form/src/components/StepsForm/index.en-US.md +50 -0
  350. package/packages/form/src/components/StepsForm/index.md +56 -0
  351. package/packages/form/src/components/Submitter/index.tsx +144 -0
  352. package/packages/form/src/components/Switch/index.tsx +45 -0
  353. package/packages/form/src/components/Text/index.tsx +176 -0
  354. package/packages/form/src/components/TextArea/index.tsx +27 -0
  355. package/packages/form/src/components/TimePicker/index.tsx +72 -0
  356. package/packages/form/src/components/TreeSelect/index.tsx +49 -0
  357. package/packages/form/src/components/UploadButton/index.tsx +133 -0
  358. package/packages/form/src/components/UploadDragger/index.tsx +134 -0
  359. package/packages/form/src/components/form.en-US.md +320 -0
  360. package/packages/form/src/components/form.md +480 -0
  361. package/packages/form/src/components/index.ts +67 -0
  362. package/packages/form/src/demos/antd.modify.tsx +62 -0
  363. package/packages/form/src/demos/antd.nest.tsx +56 -0
  364. package/packages/form/src/demos/antd.tsx +103 -0
  365. package/packages/form/src/demos/base-test.tsx +256 -0
  366. package/packages/form/src/demos/base.tsx +334 -0
  367. package/packages/form/src/demos/components-test.tsx +64 -0
  368. package/packages/form/src/demos/config-provider.tsx +67 -0
  369. package/packages/form/src/demos/dependency.tsx +85 -0
  370. package/packages/form/src/demos/form-control-render.tsx +81 -0
  371. package/packages/form/src/demos/form-item-render.tsx +164 -0
  372. package/packages/form/src/demos/form-layout-grid.tsx +130 -0
  373. package/packages/form/src/demos/form-layout.tsx +97 -0
  374. package/packages/form/src/demos/formRef.tsx +98 -0
  375. package/packages/form/src/demos/label-col.tsx +48 -0
  376. package/packages/form/src/demos/labelInValue.tsx +34 -0
  377. package/packages/form/src/demos/layout-change.tsx +347 -0
  378. package/packages/form/src/demos/layout-footer.tsx +168 -0
  379. package/packages/form/src/demos/linkage-customization.tsx +179 -0
  380. package/packages/form/src/demos/modalform-test.tsx +121 -0
  381. package/packages/form/src/demos/money.tsx +139 -0
  382. package/packages/form/src/demos/params-formref.tsx +36 -0
  383. package/packages/form/src/demos/pro-form-dependency.debug.tsx +95 -0
  384. package/packages/form/src/demos/pro-form-editableTable.tsx +148 -0
  385. package/packages/form/src/demos/sync-to-url.tsx +68 -0
  386. package/packages/form/src/demos/typings.d.ts +5 -0
  387. package/packages/form/src/helpers/grid.tsx +96 -0
  388. package/packages/form/src/helpers/index.ts +1 -0
  389. package/packages/form/src/index.tsx +56 -0
  390. package/packages/form/src/layouts/DrawerForm/index.tsx +386 -0
  391. package/packages/form/src/layouts/DrawerForm/style.ts +42 -0
  392. package/packages/form/src/layouts/LightFilter/index.tsx +337 -0
  393. package/packages/form/src/layouts/LightFilter/style.ts +64 -0
  394. package/packages/form/src/layouts/LoginForm/index.tsx +153 -0
  395. package/packages/form/src/layouts/LoginForm/style.ts +89 -0
  396. package/packages/form/src/layouts/LoginFormPage/index.tsx +231 -0
  397. package/packages/form/src/layouts/LoginFormPage/style.ts +154 -0
  398. package/packages/form/src/layouts/ModalForm/index.tsx +296 -0
  399. package/packages/form/src/layouts/ProForm/index.tsx +44 -0
  400. package/packages/form/src/layouts/QueryFilter/Actions.tsx +104 -0
  401. package/packages/form/src/layouts/QueryFilter/index.tsx +624 -0
  402. package/packages/form/src/layouts/QueryFilter/style.ts +61 -0
  403. package/packages/form/src/layouts/StepsForm/StepForm.tsx +89 -0
  404. package/packages/form/src/layouts/StepsForm/index.tsx +569 -0
  405. package/packages/form/src/layouts/StepsForm/style.ts +43 -0
  406. package/packages/form/src/layouts/index.ts +19 -0
  407. package/packages/form/src/typing.ts +178 -0
  408. package/packages/form/tsconfig.json +24 -0
  409. package/packages/layout/.fatherrc.ts +5 -0
  410. package/packages/layout/CHANGELOG.md +2188 -0
  411. package/packages/layout/README.md +64 -0
  412. package/packages/layout/package.json +71 -0
  413. package/packages/layout/src/ProLayout.tsx +918 -0
  414. package/packages/layout/src/WrapContent.tsx +41 -0
  415. package/packages/layout/src/assert/Logo.tsx +80 -0
  416. package/packages/layout/src/components/AppsLogoComponents/AppsLogo.tsx +15 -0
  417. package/packages/layout/src/components/AppsLogoComponents/DefaultContent.tsx +64 -0
  418. package/packages/layout/src/components/AppsLogoComponents/SimpleContent.tsx +93 -0
  419. package/packages/layout/src/components/AppsLogoComponents/index.tsx +132 -0
  420. package/packages/layout/src/components/AppsLogoComponents/style/default.ts +78 -0
  421. package/packages/layout/src/components/AppsLogoComponents/style/index.ts +71 -0
  422. package/packages/layout/src/components/AppsLogoComponents/style/simple.ts +93 -0
  423. package/packages/layout/src/components/AppsLogoComponents/types.d.ts +10 -0
  424. package/packages/layout/src/components/CollapsedIcon/index.tsx +20 -0
  425. package/packages/layout/src/components/CollapsedIcon/style.ts +58 -0
  426. package/packages/layout/src/components/Footer.tsx +47 -0
  427. package/packages/layout/src/components/FooterToolbar/index.tsx +123 -0
  428. package/packages/layout/src/components/FooterToolbar/style/index.ts +56 -0
  429. package/packages/layout/src/components/FooterToolbar/style/stylish.ts +29 -0
  430. package/packages/layout/src/components/GlobalFooter/index.tsx +70 -0
  431. package/packages/layout/src/components/GlobalFooter/style.ts +46 -0
  432. package/packages/layout/src/components/GlobalHeader/ActionsContent.tsx +150 -0
  433. package/packages/layout/src/components/GlobalHeader/index.tsx +184 -0
  434. package/packages/layout/src/components/GlobalHeader/rightContentStyle.ts +74 -0
  435. package/packages/layout/src/components/GlobalHeader/style.ts +75 -0
  436. package/packages/layout/src/components/GridContent/index.tsx +54 -0
  437. package/packages/layout/src/components/GridContent/style.ts +29 -0
  438. package/packages/layout/src/components/Header/index.tsx +170 -0
  439. package/packages/layout/src/components/Header/style/header.ts +70 -0
  440. package/packages/layout/src/components/Header/style/stylish.ts +34 -0
  441. package/packages/layout/src/components/Help/AsyncContentPanel.tsx +62 -0
  442. package/packages/layout/src/components/Help/HelpProvide.tsx +187 -0
  443. package/packages/layout/src/components/Help/ProHelpContentPanel.tsx +162 -0
  444. package/packages/layout/src/components/Help/ProHelpDrawer.tsx +54 -0
  445. package/packages/layout/src/components/Help/ProHelpModal.tsx +51 -0
  446. package/packages/layout/src/components/Help/ProHelpPanel.tsx +310 -0
  447. package/packages/layout/src/components/Help/ProHelpPopover.tsx +78 -0
  448. package/packages/layout/src/components/Help/RenderContentPanel.tsx +156 -0
  449. package/packages/layout/src/components/Help/Search.tsx +172 -0
  450. package/packages/layout/src/components/Help/index.tsx +78 -0
  451. package/packages/layout/src/components/Help/style.ts +109 -0
  452. package/packages/layout/src/components/PageContainer/demos/basic.tsx +96 -0
  453. package/packages/layout/src/components/PageContainer/demos/fixHeader.tsx +59 -0
  454. package/packages/layout/src/components/PageContainer/demos/hideBreadMenu.tsx +38 -0
  455. package/packages/layout/src/components/PageContainer/demos/loading.tsx +144 -0
  456. package/packages/layout/src/components/PageContainer/demos/token.tsx +71 -0
  457. package/packages/layout/src/components/PageContainer/index.en-US.md +104 -0
  458. package/packages/layout/src/components/PageContainer/index.md +125 -0
  459. package/packages/layout/src/components/PageContainer/index.tsx +506 -0
  460. package/packages/layout/src/components/PageContainer/style/index.ts +137 -0
  461. package/packages/layout/src/components/PageContainer/style/stylish.ts +29 -0
  462. package/packages/layout/src/components/PageHeader/demo/actions.en-US.md +78 -0
  463. package/packages/layout/src/components/PageHeader/demo/actions.md +78 -0
  464. package/packages/layout/src/components/PageHeader/demo/basic.en-US.md +30 -0
  465. package/packages/layout/src/components/PageHeader/demo/basic.md +30 -0
  466. package/packages/layout/src/components/PageHeader/demo/breadcrumb.en-US.md +39 -0
  467. package/packages/layout/src/components/PageHeader/demo/breadcrumb.md +39 -0
  468. package/packages/layout/src/components/PageHeader/demo/content.en-US.md +206 -0
  469. package/packages/layout/src/components/PageHeader/demo/content.md +206 -0
  470. package/packages/layout/src/components/PageHeader/demo/ghost.en-US.md +52 -0
  471. package/packages/layout/src/components/PageHeader/demo/ghost.md +52 -0
  472. package/packages/layout/src/components/PageHeader/demo/responsive.en-US.md +114 -0
  473. package/packages/layout/src/components/PageHeader/demo/responsive.md +114 -0
  474. package/packages/layout/src/components/PageHeader/index.en-US.md +39 -0
  475. package/packages/layout/src/components/PageHeader/index.md +39 -0
  476. package/packages/layout/src/components/PageHeader/index.tsx +276 -0
  477. package/packages/layout/src/components/PageHeader/style/index.ts +180 -0
  478. package/packages/layout/src/components/PageLoading/index.tsx +18 -0
  479. package/packages/layout/src/components/SettingDrawer/BlockCheckbox.tsx +60 -0
  480. package/packages/layout/src/components/SettingDrawer/LayoutChange.tsx +122 -0
  481. package/packages/layout/src/components/SettingDrawer/RegionalChange.tsx +45 -0
  482. package/packages/layout/src/components/SettingDrawer/ThemeColor.tsx +68 -0
  483. package/packages/layout/src/components/SettingDrawer/icon/group.tsx +108 -0
  484. package/packages/layout/src/components/SettingDrawer/icon/sub.tsx +163 -0
  485. package/packages/layout/src/components/SettingDrawer/index.tsx +602 -0
  486. package/packages/layout/src/components/SettingDrawer/style/index.ts +149 -0
  487. package/packages/layout/src/components/SiderMenu/Arrow.tsx +15 -0
  488. package/packages/layout/src/components/SiderMenu/BaseMenu.tsx +741 -0
  489. package/packages/layout/src/components/SiderMenu/SiderMenu.tsx +541 -0
  490. package/packages/layout/src/components/SiderMenu/index.tsx +101 -0
  491. package/packages/layout/src/components/SiderMenu/style/index.ts +219 -0
  492. package/packages/layout/src/components/SiderMenu/style/menu.ts +177 -0
  493. package/packages/layout/src/components/SiderMenu/style/stylish.ts +33 -0
  494. package/packages/layout/src/components/TopNavHeader/index.tsx +202 -0
  495. package/packages/layout/src/components/TopNavHeader/style.ts +88 -0
  496. package/packages/layout/src/components/WaterMark/demos/custom.tsx +133 -0
  497. package/packages/layout/src/components/WaterMark/demos/frontend.tsx +135 -0
  498. package/packages/layout/src/components/WaterMark/demos/image.tsx +40 -0
  499. package/packages/layout/src/components/WaterMark/demos/text.tsx +8 -0
  500. package/packages/layout/src/components/WaterMark/demos/textRows.tsx +8 -0
  501. package/packages/layout/src/components/WaterMark/index.en-US.md +80 -0
  502. package/packages/layout/src/components/WaterMark/index.md +80 -0
  503. package/packages/layout/src/components/WaterMark/index.tsx +212 -0
  504. package/packages/layout/src/components/layout.$tab-api.md +120 -0
  505. package/packages/layout/src/components/layout.en-US.$tab-api.md +76 -0
  506. package/packages/layout/src/components/layout.en-US.md +465 -0
  507. package/packages/layout/src/components/layout.md +474 -0
  508. package/packages/layout/src/context/RouteContext.tsx +36 -0
  509. package/packages/layout/src/defaultSettings.ts +143 -0
  510. package/packages/layout/src/demos/AlwaysDefaultOpenAllMenu.tsx +88 -0
  511. package/packages/layout/src/demos/BreadcrumbsRepeat.tsx +57 -0
  512. package/packages/layout/src/demos/DefaultOpenAllMenu.tsx +26 -0
  513. package/packages/layout/src/demos/IconFont.tsx +39 -0
  514. package/packages/layout/src/demos/MenuGroup.tsx +24 -0
  515. package/packages/layout/src/demos/MultipleMenuOnePath.tsx +199 -0
  516. package/packages/layout/src/demos/Nested.tsx +65 -0
  517. package/packages/layout/src/demos/TopmenuNested.tsx +35 -0
  518. package/packages/layout/src/demos/_defaultProps.tsx +152 -0
  519. package/packages/layout/src/demos/antd@4MenuIconFormServe.tsx +67 -0
  520. package/packages/layout/src/demos/api.tsx +149 -0
  521. package/packages/layout/src/demos/appList-group-simple.tsx +104 -0
  522. package/packages/layout/src/demos/appList-group.tsx +131 -0
  523. package/packages/layout/src/demos/async-load-help.tsx +336 -0
  524. package/packages/layout/src/demos/background-context.tsx +146 -0
  525. package/packages/layout/src/demos/base.tsx +456 -0
  526. package/packages/layout/src/demos/classicMode.tsx +212 -0
  527. package/packages/layout/src/demos/collapsedShowTitle.tsx +155 -0
  528. package/packages/layout/src/demos/complexMenu.ts +101 -0
  529. package/packages/layout/src/demos/config-provider.tsx +153 -0
  530. package/packages/layout/src/demos/customMenu.ts +23 -0
  531. package/packages/layout/src/demos/customSider.tsx +140 -0
  532. package/packages/layout/src/demos/customize-collapsed.tsx +98 -0
  533. package/packages/layout/src/demos/customizeMenu.tsx +62 -0
  534. package/packages/layout/src/demos/dark.tsx +127 -0
  535. package/packages/layout/src/demos/debug-demo.tsx +154 -0
  536. package/packages/layout/src/demos/designMenuCss.tsx +204 -0
  537. package/packages/layout/src/demos/designSiderMenu.tsx +105 -0
  538. package/packages/layout/src/demos/draggableHelp.tsx +349 -0
  539. package/packages/layout/src/demos/dynamic-settings.tsx +155 -0
  540. package/packages/layout/src/demos/dynamicMenu.tsx +71 -0
  541. package/packages/layout/src/demos/error-boundaries.tsx +156 -0
  542. package/packages/layout/src/demos/footer-global-tools.tsx +211 -0
  543. package/packages/layout/src/demos/footer.tsx +31 -0
  544. package/packages/layout/src/demos/ghost.tsx +51 -0
  545. package/packages/layout/src/demos/help.tsx +683 -0
  546. package/packages/layout/src/demos/hideMenu.tsx +29 -0
  547. package/packages/layout/src/demos/immersive-navigation-top.tsx +106 -0
  548. package/packages/layout/src/demos/immersive-navigation.tsx +139 -0
  549. package/packages/layout/src/demos/menu-group.tsx +138 -0
  550. package/packages/layout/src/demos/mixMode.tsx +148 -0
  551. package/packages/layout/src/demos/morse_debug.tsx +234 -0
  552. package/packages/layout/src/demos/pageSimplify.tsx +153 -0
  553. package/packages/layout/src/demos/proHelpModal.tsx +367 -0
  554. package/packages/layout/src/demos/searchMenu.tsx +90 -0
  555. package/packages/layout/src/demos/siderMode.tsx +82 -0
  556. package/packages/layout/src/demos/siteMenu.tsx +148 -0
  557. package/packages/layout/src/demos/splitMenus.tsx +123 -0
  558. package/packages/layout/src/demos/theme.tsx +159 -0
  559. package/packages/layout/src/demos/top-breadcrumb.tsx +68 -0
  560. package/packages/layout/src/demos/topMode.tsx +351 -0
  561. package/packages/layout/src/getPageTitle.ts +138 -0
  562. package/packages/layout/src/index.tsx +93 -0
  563. package/packages/layout/src/locales/en-US/settingDrawer.ts +45 -0
  564. package/packages/layout/src/locales/en-US.ts +5 -0
  565. package/packages/layout/src/locales/index.ts +33 -0
  566. package/packages/layout/src/locales/it-IT/settingDrawer.ts +37 -0
  567. package/packages/layout/src/locales/it-IT.ts +5 -0
  568. package/packages/layout/src/locales/ko-KR/settingDrawer.ts +41 -0
  569. package/packages/layout/src/locales/ko-KR.ts +5 -0
  570. package/packages/layout/src/locales/zh-CN/settingDrawer.ts +45 -0
  571. package/packages/layout/src/locales/zh-CN.ts +5 -0
  572. package/packages/layout/src/locales/zh-TW/settingDrawer.ts +37 -0
  573. package/packages/layout/src/locales/zh-TW.ts +5 -0
  574. package/packages/layout/src/style/index.ts +280 -0
  575. package/packages/layout/src/typing.ts +77 -0
  576. package/packages/layout/src/utils/getBreadcrumbProps.tsx +204 -0
  577. package/packages/layout/src/utils/getMenuData.ts +42 -0
  578. package/packages/layout/src/utils/pathTools.ts +10 -0
  579. package/packages/layout/src/utils/useCurrentMenuLayoutProps.ts +36 -0
  580. package/packages/layout/src/utils/utils.ts +66 -0
  581. package/packages/layout/tsconfig.json +23 -0
  582. package/packages/list/.fatherrc.ts +5 -0
  583. package/packages/list/CHANGELOG.md +1840 -0
  584. package/packages/list/README.md +49 -0
  585. package/packages/list/package.json +62 -0
  586. package/packages/list/src/Item.tsx +389 -0
  587. package/packages/list/src/ListView.tsx +327 -0
  588. package/packages/list/src/components/list.en-US.md +147 -0
  589. package/packages/list/src/components/list.md +149 -0
  590. package/packages/list/src/constants.ts +17 -0
  591. package/packages/list/src/demos/ToolBar.tsx +195 -0
  592. package/packages/list/src/demos/base.tsx +85 -0
  593. package/packages/list/src/demos/card-list.tsx +117 -0
  594. package/packages/list/src/demos/editable.tsx +89 -0
  595. package/packages/list/src/demos/expand.tsx +92 -0
  596. package/packages/list/src/demos/filter.tsx +125 -0
  597. package/packages/list/src/demos/layout.tsx +95 -0
  598. package/packages/list/src/demos/pagination.tsx +64 -0
  599. package/packages/list/src/demos/search.tsx +123 -0
  600. package/packages/list/src/demos/selectedRow.tsx +86 -0
  601. package/packages/list/src/demos/size.tsx +126 -0
  602. package/packages/list/src/demos/special.tsx +109 -0
  603. package/packages/list/src/demos/testConfigProvider.tsx +66 -0
  604. package/packages/list/src/index.tsx +251 -0
  605. package/packages/list/src/style/index.ts +283 -0
  606. package/packages/list/tsconfig.json +33 -0
  607. package/packages/provider/.fatherrc.ts +5 -0
  608. package/packages/provider/CHANGELOG.md +824 -0
  609. package/packages/provider/README.md +19 -0
  610. package/packages/provider/package.json +58 -0
  611. package/packages/provider/src/index.tsx +484 -0
  612. package/packages/provider/src/intl.ts +183 -0
  613. package/packages/provider/src/locale/ar_EG.tsx +71 -0
  614. package/packages/provider/src/locale/ca_ES.tsx +71 -0
  615. package/packages/provider/src/locale/cs_CZ.tsx +74 -0
  616. package/packages/provider/src/locale/de_DE.tsx +71 -0
  617. package/packages/provider/src/locale/en_GB.tsx +73 -0
  618. package/packages/provider/src/locale/en_US.tsx +75 -0
  619. package/packages/provider/src/locale/es_ES.tsx +71 -0
  620. package/packages/provider/src/locale/fa_IR.tsx +71 -0
  621. package/packages/provider/src/locale/fr_FR.tsx +71 -0
  622. package/packages/provider/src/locale/he_IL.tsx +74 -0
  623. package/packages/provider/src/locale/hr_HR.tsx +71 -0
  624. package/packages/provider/src/locale/id_ID.tsx +71 -0
  625. package/packages/provider/src/locale/it_IT.tsx +71 -0
  626. package/packages/provider/src/locale/ja_JP.tsx +71 -0
  627. package/packages/provider/src/locale/ko_KR.tsx +71 -0
  628. package/packages/provider/src/locale/mn_MN.tsx +71 -0
  629. package/packages/provider/src/locale/ms_MY.tsx +71 -0
  630. package/packages/provider/src/locale/nl_NL.tsx +74 -0
  631. package/packages/provider/src/locale/pl_PL.tsx +71 -0
  632. package/packages/provider/src/locale/pt_BR.tsx +71 -0
  633. package/packages/provider/src/locale/ro_RO.tsx +74 -0
  634. package/packages/provider/src/locale/ru_RU.tsx +71 -0
  635. package/packages/provider/src/locale/sk_SK.tsx +74 -0
  636. package/packages/provider/src/locale/sr_RS.tsx +71 -0
  637. package/packages/provider/src/locale/sv_SE.tsx +74 -0
  638. package/packages/provider/src/locale/th_TH.tsx +74 -0
  639. package/packages/provider/src/locale/tr_TR.tsx +71 -0
  640. package/packages/provider/src/locale/uk_UA.tsx +74 -0
  641. package/packages/provider/src/locale/uz_UZ.tsx +71 -0
  642. package/packages/provider/src/locale/vi_VN.tsx +71 -0
  643. package/packages/provider/src/locale/zh_CN.tsx +74 -0
  644. package/packages/provider/src/locale/zh_TW.tsx +74 -0
  645. package/packages/provider/src/typing/layoutToken.ts +175 -0
  646. package/packages/provider/src/useStyle/index.ts +141 -0
  647. package/packages/provider/src/useStyle/token.ts +412 -0
  648. package/packages/provider/src/utils/merge.ts +28 -0
  649. package/packages/provider/tsconfig.json +18 -0
  650. package/packages/skeleton/.fatherrc.ts +5 -0
  651. package/packages/skeleton/CHANGELOG.md +253 -0
  652. package/packages/skeleton/README.md +19 -0
  653. package/packages/skeleton/package.json +54 -0
  654. package/packages/skeleton/src/components/Descriptions/index.tsx +328 -0
  655. package/packages/skeleton/src/components/List/index.tsx +310 -0
  656. package/packages/skeleton/src/components/Result/index.tsx +54 -0
  657. package/packages/skeleton/src/components/skeleton.en-US.md +49 -0
  658. package/packages/skeleton/src/components/skeleton.md +41 -0
  659. package/packages/skeleton/src/demos/descriptions.tsx +14 -0
  660. package/packages/skeleton/src/demos/list.static.tsx +12 -0
  661. package/packages/skeleton/src/demos/list.tsx +12 -0
  662. package/packages/skeleton/src/demos/result.tsx +12 -0
  663. package/packages/skeleton/src/index.tsx +48 -0
  664. package/packages/skeleton/tsconfig.json +18 -0
  665. package/packages/table/.fatherrc.ts +5 -0
  666. package/packages/table/CHANGELOG.md +2622 -0
  667. package/packages/table/README.md +167 -0
  668. package/packages/table/package.json +75 -0
  669. package/packages/table/src/Store/Provide.tsx +261 -0
  670. package/packages/table/src/Table.tsx +1043 -0
  671. package/packages/table/src/components/Alert/index.tsx +96 -0
  672. package/packages/table/src/components/Alert/style.ts +45 -0
  673. package/packages/table/src/components/ColumnSetting/index.tsx +535 -0
  674. package/packages/table/src/components/ColumnSetting/style.ts +104 -0
  675. package/packages/table/src/components/DragSortTable/demos/drag-sort-table.tsx +164 -0
  676. package/packages/table/src/components/DragSortTable/demos/drag.tsx +74 -0
  677. package/packages/table/src/components/DragSortTable/index.en-US.md +28 -0
  678. package/packages/table/src/components/DragSortTable/index.md +26 -0
  679. package/packages/table/src/components/DragSortTable/index.tsx +112 -0
  680. package/packages/table/src/components/DragSortTable/style.ts +35 -0
  681. package/packages/table/src/components/Dropdown/index.tsx +86 -0
  682. package/packages/table/src/components/EditableTable/CellEditorTable.tsx +67 -0
  683. package/packages/table/src/components/EditableTable/RowEditorTable.tsx +60 -0
  684. package/packages/table/src/components/EditableTable/demos/basic.tsx +219 -0
  685. package/packages/table/src/components/EditableTable/demos/cell-editor-table.tsx +101 -0
  686. package/packages/table/src/components/EditableTable/demos/children.tsx +202 -0
  687. package/packages/table/src/components/EditableTable/demos/custom.tsx +257 -0
  688. package/packages/table/src/components/EditableTable/demos/form-item.tsx +254 -0
  689. package/packages/table/src/components/EditableTable/demos/form-linkage.tsx +259 -0
  690. package/packages/table/src/components/EditableTable/demos/real-time-editing.tsx +155 -0
  691. package/packages/table/src/components/EditableTable/demos/row-editor-table.tsx +100 -0
  692. package/packages/table/src/components/EditableTable/index.en-US.md +303 -0
  693. package/packages/table/src/components/EditableTable/index.md +303 -0
  694. package/packages/table/src/components/EditableTable/index.tsx +562 -0
  695. package/packages/table/src/components/Form/FormRender.tsx +262 -0
  696. package/packages/table/src/components/Form/index.tsx +194 -0
  697. package/packages/table/src/components/ListToolBar/HeaderMenu.tsx +132 -0
  698. package/packages/table/src/components/ListToolBar/index.tsx +420 -0
  699. package/packages/table/src/components/ListToolBar/style.ts +127 -0
  700. package/packages/table/src/components/ToolBar/DensityIcon.tsx +47 -0
  701. package/packages/table/src/components/ToolBar/FullscreenIcon.tsx +29 -0
  702. package/packages/table/src/components/ToolBar/index.tsx +419 -0
  703. package/packages/table/src/components/table.$tab-api.md +243 -0
  704. package/packages/table/src/components/table.en-US.$tab-api.md +210 -0
  705. package/packages/table/src/components/table.en-US.md +333 -0
  706. package/packages/table/src/components/table.md +338 -0
  707. package/packages/table/src/demos/ListToolBar/basic.tsx +124 -0
  708. package/packages/table/src/demos/ListToolBar/menu.tsx +148 -0
  709. package/packages/table/src/demos/ListToolBar/multipleLine.tsx +139 -0
  710. package/packages/table/src/demos/ListToolBar/no-title.tsx +108 -0
  711. package/packages/table/src/demos/ListToolBar/tabs.tsx +176 -0
  712. package/packages/table/src/demos/batchOption.tsx +180 -0
  713. package/packages/table/src/demos/card-title.tsx +93 -0
  714. package/packages/table/src/demos/columns-setting-custom-icon.tsx +55 -0
  715. package/packages/table/src/demos/columnsStateMap.tsx +113 -0
  716. package/packages/table/src/demos/config-provider.tsx +139 -0
  717. package/packages/table/src/demos/crud.tsx +168 -0
  718. package/packages/table/src/demos/customization-value-type.tsx +174 -0
  719. package/packages/table/src/demos/dataSource.tsx +178 -0
  720. package/packages/table/src/demos/dateFormatter.tsx +130 -0
  721. package/packages/table/src/demos/dynamic-columns-state.tsx +151 -0
  722. package/packages/table/src/demos/dynamic-settings.tsx +723 -0
  723. package/packages/table/src/demos/edittable-rules.tsx +106 -0
  724. package/packages/table/src/demos/error-boundaries-false.tsx +81 -0
  725. package/packages/table/src/demos/error-boundaries.tsx +201 -0
  726. package/packages/table/src/demos/form.tsx +82 -0
  727. package/packages/table/src/demos/intl.tsx +119 -0
  728. package/packages/table/src/demos/lightfilter.tsx +81 -0
  729. package/packages/table/src/demos/linkage_form.tsx +175 -0
  730. package/packages/table/src/demos/listToolBar.tsx +184 -0
  731. package/packages/table/src/demos/no-option.tsx +113 -0
  732. package/packages/table/src/demos/no-title.tsx +167 -0
  733. package/packages/table/src/demos/normal.tsx +124 -0
  734. package/packages/table/src/demos/open-rules.tsx +187 -0
  735. package/packages/table/src/demos/pollinga.tsx +129 -0
  736. package/packages/table/src/demos/renderTable.tsx +159 -0
  737. package/packages/table/src/demos/rtl_table.tsx +137 -0
  738. package/packages/table/src/demos/search.tsx +46 -0
  739. package/packages/table/src/demos/search_option.tsx +66 -0
  740. package/packages/table/src/demos/single-test.tsx +254 -0
  741. package/packages/table/src/demos/single.tsx +242 -0
  742. package/packages/table/src/demos/split.tsx +200 -0
  743. package/packages/table/src/demos/table-nested.tsx +162 -0
  744. package/packages/table/src/demos/theme.tsx +235 -0
  745. package/packages/table/src/demos/valueType.tsx +136 -0
  746. package/packages/table/src/demos/valueTypeDate.tsx +138 -0
  747. package/packages/table/src/demos/valueTypeNumber.tsx +117 -0
  748. package/packages/table/src/demos/valueType_select.tsx +188 -0
  749. package/packages/table/src/index.tsx +96 -0
  750. package/packages/table/src/style/index.ts +178 -0
  751. package/packages/table/src/typing.ts +585 -0
  752. package/packages/table/src/useFetchData.tsx +464 -0
  753. package/packages/table/src/utils/cellRenderToFromItem.tsx +360 -0
  754. package/packages/table/src/utils/columnRender.tsx +220 -0
  755. package/packages/table/src/utils/columnSort.ts +26 -0
  756. package/packages/table/src/utils/genProColumnToColumn.tsx +192 -0
  757. package/packages/table/src/utils/index.ts +224 -0
  758. package/packages/table/src/utils/useDragSort.tsx +210 -0
  759. package/packages/table/tsconfig.json +26 -0
  760. package/packages/utils/.fatherrc.ts +5 -0
  761. package/packages/utils/CHANGELOG.md +1747 -0
  762. package/packages/utils/README.md +19 -0
  763. package/packages/utils/package.json +65 -0
  764. package/packages/utils/src/compareVersions/coverToNewToken.ts +44 -0
  765. package/packages/utils/src/compareVersions/index.ts +84 -0
  766. package/packages/utils/src/compareVersions/menuOverlayCompatible.tsx +20 -0
  767. package/packages/utils/src/compareVersions/openVisibleCompatible.ts +25 -0
  768. package/packages/utils/src/compatible/compatibleBorder.ts +21 -0
  769. package/packages/utils/src/components/DropdownFooter/index.tsx +79 -0
  770. package/packages/utils/src/components/DropdownFooter/style.ts +30 -0
  771. package/packages/utils/src/components/ErrorBoundary/index.tsx +37 -0
  772. package/packages/utils/src/components/FieldLabel/index.tsx +222 -0
  773. package/packages/utils/src/components/FieldLabel/style.ts +121 -0
  774. package/packages/utils/src/components/FilterDropdown/index.tsx +100 -0
  775. package/packages/utils/src/components/FilterDropdown/style.ts +28 -0
  776. package/packages/utils/src/components/InlineErrorFormItem/index.tsx +196 -0
  777. package/packages/utils/src/components/InlineErrorFormItem/style.ts +76 -0
  778. package/packages/utils/src/components/LabelIconTip/index.tsx +63 -0
  779. package/packages/utils/src/components/LabelIconTip/style.ts +49 -0
  780. package/packages/utils/src/components/ProFormContext/index.tsx +45 -0
  781. package/packages/utils/src/conversionMomentValue/index.ts +203 -0
  782. package/packages/utils/src/dateArrayFormatter/index.tsx +60 -0
  783. package/packages/utils/src/genCopyable/index.tsx +71 -0
  784. package/packages/utils/src/getFieldPropsOrFormItemProps/index.tsx +22 -0
  785. package/packages/utils/src/hooks/useDebounceFn/index.ts +47 -0
  786. package/packages/utils/src/hooks/useDebounceValue/index.ts +32 -0
  787. package/packages/utils/src/hooks/useDeepCompareEffect/index.ts +42 -0
  788. package/packages/utils/src/hooks/useDeepCompareMemo/index.ts +22 -0
  789. package/packages/utils/src/hooks/useDocumentTitle/index.ts +19 -0
  790. package/packages/utils/src/hooks/useFetchData/index.tsx +60 -0
  791. package/packages/utils/src/hooks/useForceRender/index.ts +9 -0
  792. package/packages/utils/src/hooks/useLatest/index.ts +10 -0
  793. package/packages/utils/src/hooks/usePrevious/index.ts +11 -0
  794. package/packages/utils/src/hooks/useReactiveRef/index.ts +21 -0
  795. package/packages/utils/src/hooks/useRefCallback/index.ts +42 -0
  796. package/packages/utils/src/hooks/useRefFunction/index.ts +11 -0
  797. package/packages/utils/src/index.tsx +158 -0
  798. package/packages/utils/src/isBrowser/index.ts +24 -0
  799. package/packages/utils/src/isDeepEqualReact/index.ts +96 -0
  800. package/packages/utils/src/isDropdownValueType/index.ts +13 -0
  801. package/packages/utils/src/isImg/index.ts +4 -0
  802. package/packages/utils/src/isNil/index.ts +2 -0
  803. package/packages/utils/src/isUrl/index.ts +17 -0
  804. package/packages/utils/src/merge/index.ts +38 -0
  805. package/packages/utils/src/nanoid/index.ts +41 -0
  806. package/packages/utils/src/omitBoolean/index.ts +11 -0
  807. package/packages/utils/src/omitUndefined/index.ts +18 -0
  808. package/packages/utils/src/omitUndefinedAndEmptyArr/index.ts +15 -0
  809. package/packages/utils/src/parseValueToMoment/index.ts +39 -0
  810. package/packages/utils/src/pickProFormItemProps/index.tsx +44 -0
  811. package/packages/utils/src/pickProProps/index.tsx +16 -0
  812. package/packages/utils/src/proFieldParsingText/index.tsx +142 -0
  813. package/packages/utils/src/runFunction/index.ts +7 -0
  814. package/packages/utils/src/stringify/index.ts +13 -0
  815. package/packages/utils/src/transformKeySubmitValue/index.ts +207 -0
  816. package/packages/utils/src/typing.ts +767 -0
  817. package/packages/utils/src/useEditableArray/index.tsx +1134 -0
  818. package/packages/utils/src/useEditableMap/index.tsx +236 -0
  819. package/packages/utils/src/useMediaQuery/index.ts +109 -0
  820. package/packages/utils/src/useMediaQuery/query.ts +19 -0
  821. package/packages/utils/src/useMountMergeState/index.ts +3 -0
  822. package/packages/utils/tsconfig.json +21 -0
  823. package/pnpm-workspace.yaml +2 -0
  824. package/public/CNAME +1 -0
  825. package/public/favicon.ico +0 -0
  826. package/public/icon.png +0 -0
  827. package/public/sitemap.xml +458 -0
  828. package/scripts/bootstrap.js +108 -0
  829. package/scripts/changelogs.js +10 -0
  830. package/scripts/checkDeps.js +166 -0
  831. package/scripts/checkPublish.js +10 -0
  832. package/scripts/createRelease.js +125 -0
  833. package/scripts/gen_version.js +34 -0
  834. package/scripts/generateSizeLimit.js +38 -0
  835. package/scripts/issue.js +91 -0
  836. package/scripts/preDeploy.js +18 -0
  837. package/scripts/readApi.mjs +145 -0
  838. package/scripts/release.js +184 -0
  839. package/scripts/replaceEs.js +22 -0
  840. package/scripts/replaceLib.js +22 -0
  841. package/scripts/replaceLodash.js +21 -0
  842. package/scripts/syncTNPM.js +19 -0
  843. package/scripts/utils/exec.js +23 -0
  844. package/scripts/utils/getPackages.js +8 -0
  845. package/scripts/utils/isNextVersion.js +7 -0
  846. package/scripts/verifyCommit.js +28 -0
  847. package/tsconfig.json +39 -9
  848. package/typings.d.ts +6 -0
  849. package/vercel.json +7 -0
  850. package/vitest.config.ts +48 -0
  851. package/.idea/modules.xml +0 -8
  852. package/.idea/test-components.iml +0 -12
  853. package/.idea/vcs.xml +0 -6
  854. package/build/components/ActionBar/index.d.ts +0 -17
  855. package/build/components/ActionBar/type.d.ts +0 -82
  856. package/build/components/DataChart/index.d.ts +0 -7
  857. package/build/components/DataChart/type.d.ts +0 -50
  858. package/build/components/DataTable/index.d.ts +0 -9
  859. package/build/components/DataTable/locales/en-US.d.ts +0 -4
  860. package/build/components/DataTable/locales/zh-CN.d.ts +0 -4
  861. package/build/components/DataTable/type.d.ts +0 -117
  862. package/build/components/DragTable/index.d.ts +0 -9
  863. package/build/components/DragTable/type.d.ts +0 -22
  864. package/build/components/FileTag/index.d.ts +0 -9
  865. package/build/components/FileTag/locales/en-US.d.ts +0 -5
  866. package/build/components/FileTag/locales/zh-CN.d.ts +0 -5
  867. package/build/components/FileTag/type.d.ts +0 -35
  868. package/build/components/HtmlRender/index.d.ts +0 -10
  869. package/build/components/HtmlRender/type.d.ts +0 -13
  870. package/build/components/IconRender/index.d.ts +0 -9
  871. package/build/components/IconRender/type.d.ts +0 -9
  872. package/build/components/ThemeListener/index.d.ts +0 -10
  873. package/build/components/ThemeListener/type.d.ts +0 -10
  874. package/build/components/ThemeSetter/index.d.ts +0 -9
  875. package/build/components/UserCard/index.d.ts +0 -9
  876. package/build/components/UserCard/locales/en-US.d.ts +0 -10
  877. package/build/components/UserCard/locales/zh-CN.d.ts +0 -10
  878. package/build/components/UserCard/type.d.ts +0 -52
  879. package/build/components/UserSelector/index.d.ts +0 -8
  880. package/build/components/UserSelector/locales/en-US.d.ts +0 -5
  881. package/build/components/UserSelector/locales/zh-CN.d.ts +0 -5
  882. package/build/components/UserSelector/type.d.ts +0 -60
  883. package/build/index.d.ts +0 -78
  884. package/build/index.js +0 -28
  885. package/build/index.js.LICENSE.txt +0 -1733
  886. package/build/locales/en-US.d.ts +0 -20
  887. package/build/locales/zh-CN.d.ts +0 -20
  888. package/build/services/constants/commonConstant.d.ts +0 -6
  889. package/build/services/constants/dbConstant.d.ts +0 -4
  890. package/build/services/constants/iconConstant.d.ts +0 -4
  891. package/build/services/constants/locales/en-US.d.ts +0 -8
  892. package/build/services/constants/locales/zh-CN.d.ts +0 -8
  893. package/build/services/enums/eventEnum.d.ts +0 -10
  894. package/build/services/enums/storageEnum.d.ts +0 -10
  895. package/build/services/types/commonType.d.ts +0 -42
  896. package/build/services/utils/dbUtil.d.ts +0 -5
  897. package/build/services/utils/eventUtil.d.ts +0 -5
  898. package/build/services/utils/objectUtil.d.ts +0 -5
  899. package/build/services/utils/renderUtil.d.ts +0 -6
  900. package/build/services/utils/resourceUtil.d.ts +0 -12
  901. package/build/services/utils/storageUtil.d.ts +0 -5
@@ -0,0 +1,62 @@
1
+ import { Spin } from 'antd';
2
+ import { useContext, useEffect, useState } from 'react';
3
+ import type {
4
+ ProHelpDataSource,
5
+ ProHelpDataSourceChildren,
6
+ } from './HelpProvide';
7
+ import { ProHelpProvide } from './HelpProvide';
8
+ import { RenderContentPanel } from './RenderContentPanel';
9
+
10
+ /**
11
+ * 异步加载内容的面板组件
12
+ * @param item 指向当前面板的 ProHelpDataSource
13
+ */
14
+ export const AsyncContentPanel: React.FC<{
15
+ item: ProHelpDataSource<any>['children'][number];
16
+ onInit?: (ref: HTMLDivElement) => void;
17
+ }> = ({ item, onInit }) => {
18
+ const { onLoadContext } = useContext(ProHelpProvide); // 获取上下文中的 onLoadContext
19
+ const [loading, setLoading] = useState(false); // 加载状态
20
+ const [content, setContent] = useState<ProHelpDataSourceChildren<any>[]>(); // 内容数据
21
+
22
+ useEffect(() => {
23
+ if (!item.key) return; // 如果没有key则返回
24
+ setLoading(true); // 开始加载
25
+ onLoadContext?.(item.key, item).then((res) => {
26
+ // 调用加载方法
27
+ setLoading(false); // 加载完成
28
+ setContent(res); // 设置内容数据
29
+ });
30
+ }, [item.key]);
31
+
32
+ // 如果没有key,则返回null
33
+ if (!item.key) return null;
34
+
35
+ // 如果正在加载并且有key,则显示加载中的状态
36
+ if (loading && item.key) {
37
+ return (
38
+ <div
39
+ key={item.key}
40
+ style={{
41
+ display: 'flex',
42
+ justifyContent: 'center',
43
+ width: '100%',
44
+ boxSizing: 'border-box',
45
+ padding: 24,
46
+ }}
47
+ >
48
+ <Spin />
49
+ </div>
50
+ );
51
+ }
52
+
53
+ // 加载完成后,渲染内容面板
54
+ return (
55
+ <RenderContentPanel
56
+ onInit={(ref) => {
57
+ onInit?.(ref);
58
+ }}
59
+ dataSourceChildren={content!}
60
+ />
61
+ );
62
+ };
@@ -0,0 +1,187 @@
1
+ import type { ImageProps } from 'antd';
2
+ import type { AnchorHTMLAttributes } from 'react';
3
+ import React from 'react';
4
+
5
+ /**
6
+ * ProHelp 数据源子项内容类型。
7
+ * 该类型定义了多种数据源子项内容类型,例如 h1、h2、link、text、image等。
8
+ * 其中,link 和 inlineLink 属性都是链接类型的数据源子项内容,不同的是 inlineLink 是内联链接,而 link 是块级链接。
9
+ *
10
+ * @typedef {object} ProHelpDataSourceContentType
11
+ * @property {string} h1 标题1类型的数据源子项内容。
12
+ * @property {string} h2 标题2类型的数据源子项内容。
13
+ * @property {{ children: string } & React.AnchorHTMLAttributes<HTMLAnchorElement>} link 链接类型的数据源子项内容。
14
+ * @property {{ children: string } & React.AnchorHTMLAttributes<HTMLAnchorElement>} inlineLink 内联链接类型的数据源子项内容。
15
+ * @property {string} text 文本类型的数据源子项内容。
16
+ * @property {ImageProps} image 图片类型的数据源子项内容。
17
+ */
18
+ type ProHelpDataSourceContentType = {
19
+ /**
20
+ * h1 标题1类型的数据源子项内容。
21
+ */
22
+ h1: string;
23
+ /**
24
+ * h2 标题1类型的数据源子项内容。
25
+ */
26
+ h2: string;
27
+ /**
28
+ * link 链接类型的数据源子项内容。
29
+ */
30
+ link: {
31
+ children: string;
32
+ } & AnchorHTMLAttributes<HTMLAnchorElement>;
33
+ /**
34
+ * 行内链接类型的数据源子项内容。
35
+ */
36
+ inlineLink: {
37
+ children: string;
38
+ } & AnchorHTMLAttributes<HTMLAnchorElement>;
39
+
40
+ /**
41
+ * navigation 类型链接,或切换菜单
42
+ */
43
+ navigationSwitch: {
44
+ selectKey: string;
45
+ children: string;
46
+ };
47
+
48
+ /**
49
+ * text 文本类型的数据源子项内容。
50
+ */
51
+ text: string;
52
+
53
+ /**
54
+ * image 图片类型的数据源子项内容。
55
+ */
56
+ image: ImageProps;
57
+
58
+ /**
59
+ * markdown 类型的渲染,支持 基本的 markdown 语法
60
+ * 会包在一个叫 inner-html 为 markdown 的 div 中
61
+ */
62
+ html: {
63
+ className: string;
64
+ children: string;
65
+ };
66
+ };
67
+
68
+ /**
69
+ * ProHelp 数据源子项内容类型的类型,可能的取值为 "h1"、"h2"、"link"、"inlineLink"、"text" 和 "image"。
70
+ * @typedef {'h1' | 'h2' | 'link' | 'inlineLink' | 'text' | 'image'} ProHelpDataSourceChildrenType
71
+ */
72
+ type ProHelpDataSourceChildrenType = Extract<
73
+ keyof ProHelpDataSourceContentType,
74
+ any
75
+ >;
76
+
77
+ /**
78
+ * ProHelp 数据源子项内容属性类型。
79
+ * @template ValueType 数据源项值的类型,默认为 'text'。
80
+ * 该类型定义了一个名为 children 的对象属性,根据 valueType 属性的值来确定该属性对象的具体类型,
81
+ * 如果 valueType 的类型是 ProHelpDataSourceChildrenType,
82
+ * 则使用 ProHelpDataSourceContentType 中 ProHelpDataSourceChildrenType 所对应的属性类型;
83
+ * 否则,使用 ProHelpDataSourceContentType 中 ValueType 所对应的属性类型。
84
+ */
85
+ type ProHelpDataSourceContentProps<ValueTypeMap, ValueType> =
86
+ ValueType extends ProHelpDataSourceChildrenType
87
+ ? ProHelpDataSourceContentType[ValueType]
88
+ : ValueType extends keyof ValueTypeMap
89
+ ? ValueTypeMap[ValueType]
90
+ : ProHelpDataSourceContentType[ProHelpDataSourceChildrenType];
91
+
92
+ /**
93
+ * ProHelp 数据源子项类型。
94
+ * @template ValueTypeMap 数据源项值的类型,默认为 'text'。
95
+ * @property {(ValueType | ProHelpDataSourceChildrenType)} valueType 数据源子项值的类型,可以为指定的类型,也可以是自定义类型。
96
+ * @property {ProHelpDataSourceContentProps<ValueType>} children 包含数据源子项内容的对象。
97
+ */
98
+ export type ProHelpDataSourceChildren<
99
+ ValueTypeMap = {
100
+ text: string;
101
+ },
102
+ > = {
103
+ /**
104
+ * 包含数据源子项内容的对象。
105
+ * @template ValueType 数据源项值的类型,默认为 'text'。
106
+ */
107
+ valueType: ValueTypeMap extends Map<infer ValueType, any>
108
+ ? ValueType
109
+ : keyof ValueTypeMap | ProHelpDataSourceChildrenType;
110
+ /**
111
+ * 数据源子项值的类型。
112
+ * @typedef {(ValueTypeMap | ProHelpDataSourceChildrenType)} ProHelpDataSourceChildrenType
113
+ */
114
+ children: ProHelpDataSourceContentProps<
115
+ ValueTypeMap,
116
+ keyof ValueTypeMap | ProHelpDataSourceChildrenType
117
+ >;
118
+ };
119
+
120
+ /**
121
+ * ProHelp 数据源类型。
122
+ * @template ValueType 数据源项值的类型,默认为 'text'。
123
+ * @property {string} key 数据源项的唯一标识。
124
+ * @property {string} title 数据源项的标题。
125
+ * @property children 包含子项的数组,每个子项包含一个唯一标识,标题以及子子项数组。
126
+ */
127
+ export type ProHelpDataSource<ValueType = 'text'> = {
128
+ /**
129
+ * key 数据源项的唯一标识
130
+ */
131
+ key: string;
132
+ /**
133
+ * title 数据源项的标题。
134
+ */
135
+ title: string;
136
+
137
+ /**
138
+ * 在一页内加载所有的 children 内容
139
+ */
140
+ infiniteScrollFull?: boolean;
141
+ /**
142
+ * children 包含子项的数组,每个子项包含一个唯一标识,标题以及子子项数组。
143
+ */
144
+ children: {
145
+ key: string;
146
+ title: string;
147
+ /**
148
+ * 是否远程加载children
149
+ */
150
+ asyncLoad?: boolean;
151
+ children?: ProHelpDataSourceChildren<ValueType>[];
152
+ }[];
153
+ };
154
+
155
+ /**
156
+ * 这段代码定义了一个名为 ProHelpProvide 的 React 上下文对象,并且指定了该上下文对象的初始值为 { dataSource: [] }。
157
+ * 这个上下文对象中包含了一个名为 dataSource 的属性,该属性的值是一个数组,类型为 ProHelpDataSource<any>[]。
158
+ * 该上下文对象通常用于在 React 组件树中共享数据,即可以通过在组件中使用 ProHelpProvide.Provider 包裹一组组件,
159
+ * 将 dataSource 和 valueTypeMap 数据源传递给这些组件,这些组件即可从上下文中获取 dataSource 数据源,实现数据的共享和传递。
160
+ */
161
+ export const ProHelpProvide = React.createContext<{
162
+ /**
163
+ * 帮助文档的数据源,包含一组帮助文档数据,每个数据包含标题和内容等信息。
164
+ */
165
+ dataSource: ProHelpDataSource<any>[];
166
+ /**
167
+ * 帮助组件的子组件,用于渲染自定义的帮助内容。
168
+ * 是一个键值对结构的集合,其中:
169
+ * 键(key)为字符串类型;
170
+ * 值(value)为一个函数类型,该函数接受两个参数:一个名为 item 的 ProHelpDataSourceChildren 类型的对象,表示一个 ProHelp 数据源子项的子项;
171
+ * 一个名为 index 的数字类型参数,表示该子项在父级子项数组中的索引。
172
+ * 该函数返回一个 ReactNode 类型的元素,用于表示该 ProHelp 数据源子项子项应该渲染的 UI 元素。
173
+ * 这个 Map 的作用是将 ProHelp 数据源子项子项的 valueType 属性与对应的渲染函数进行映射,从而实现在渲染 ProHelp 数据源时动态地选择渲染方法。
174
+ * 在实际使用时,我们可以通过判断子项的 valueType 属性,从 valueTypeMap 中取出对应的渲染函数,再将该子项和渲染函数作为参数传入 renderDataSourceItem 函数中即可。
175
+ */
176
+ valueTypeMap: Map<
177
+ string,
178
+ (item: ProHelpDataSourceChildren<any>, index: number) => React.ReactNode
179
+ >;
180
+ /**
181
+ * 加载数据源的函数,如果把数据源设置为 async load就可以使用这个功能。
182
+ */
183
+ onLoadContext?: (
184
+ key: React.Key,
185
+ context: ProHelpDataSource<any>['children'][number],
186
+ ) => Promise<ProHelpDataSourceChildren<any>[]>;
187
+ }>({ dataSource: [], valueTypeMap: new Map() });
@@ -0,0 +1,162 @@
1
+ import { ProProvider } from '@ant-design/pro-provider';
2
+ import { useDebounceFn } from '@ant-design/pro-utils';
3
+ import classNames from 'classnames';
4
+ import React, { useContext, useEffect, useMemo, useRef } from 'react';
5
+ import { AsyncContentPanel } from './AsyncContentPanel';
6
+ import type { ProHelpDataSource } from './HelpProvide';
7
+ import { ProHelpProvide } from './HelpProvide';
8
+ import { RenderContentPanel } from './RenderContentPanel';
9
+
10
+ export type ProHelpContentPanelProps = {
11
+ /**
12
+ * 控制当前选中的帮助文档
13
+ */
14
+ selectedKey: React.Key;
15
+ className?: string;
16
+ parentItem?: ProHelpDataSource<any>;
17
+
18
+ onScroll?: (key?: string) => void;
19
+ };
20
+
21
+ /**
22
+ * 控制具体的帮助文档显示组件
23
+ * selectedKey 来展示对应的内容。它会根据不同的item.valueType值来展示不同的内容,包括标题、图片、超链接等。
24
+ * @param ProHelpContentPanelProps
25
+ * @returns
26
+ */
27
+ export const ProHelpContentPanel: React.FC<ProHelpContentPanelProps> = ({
28
+ className,
29
+ parentItem,
30
+ selectedKey,
31
+ onScroll,
32
+ }) => {
33
+ const { dataSource } = useContext(ProHelpProvide);
34
+ const { hashId } = useContext(ProProvider);
35
+ // 记录每个面板的滚动高度
36
+ const scrollHeightMap = useRef<Map<React.Key, HTMLDivElement>>(new Map());
37
+
38
+ const divRef = useRef<HTMLDivElement>(null);
39
+
40
+ useEffect(() => {
41
+ if (!selectedKey || !parentItem?.infiniteScrollFull) return;
42
+ const div = scrollHeightMap.current.get(selectedKey);
43
+
44
+ if (div?.offsetTop && divRef.current) {
45
+ if (
46
+ Math.abs(divRef.current!.scrollTop - div?.offsetTop + 40) >
47
+ div?.clientHeight
48
+ ) {
49
+ divRef.current!.scrollTop = div?.offsetTop - 40;
50
+ }
51
+ }
52
+ }, [selectedKey]);
53
+
54
+ /**
55
+ * debounce(防抖)处理滚动事件,并根据滚动位置来实现找到当前列表的 key
56
+ */
57
+ const onScrollEvent = useDebounceFn(async (e: Event) => {
58
+ const dom = e?.target as HTMLDivElement;
59
+
60
+ // 根据滚动位置来找到当前列表的 key
61
+ const list = Array.from(scrollHeightMap.current.entries()).find(
62
+ ([, value]) => {
63
+ if (dom?.scrollTop < value.offsetTop) {
64
+ return true;
65
+ }
66
+ return false;
67
+ },
68
+ );
69
+
70
+ if (!list) {
71
+ return;
72
+ }
73
+
74
+ // 如果获取的 key 和当前 key 不同丢弃掉
75
+ if (list.at(0) !== selectedKey) {
76
+ // 如果不同,则触发 onScroll 事件
77
+ onScroll?.(list.at(0) as string | undefined);
78
+ }
79
+ }, 200);
80
+
81
+ /**
82
+ * 当 parentItem 组件中的 infiniteScrollFull 属性变化时
83
+ * 如果该属性为真值,则开始监听滚动事件;
84
+ * 如果为假值,则停止监听滚动事件并取消防抖处理。
85
+ * 在监听滚动事件时,可以实现分页(瀑布流)效果。同时,该代码还会根据 selectedKey 的变化来触发跳转
86
+ */
87
+ useEffect(() => {
88
+ if (!parentItem?.infiniteScrollFull) return;
89
+ onScrollEvent.cancel();
90
+ divRef.current?.addEventListener('scroll', onScrollEvent.run, false);
91
+ return () => {
92
+ onScrollEvent.cancel();
93
+ divRef.current?.removeEventListener('scroll', onScrollEvent.run, false);
94
+ };
95
+ }, [parentItem?.infiniteScrollFull, selectedKey]);
96
+
97
+ /**
98
+ * 生成一个 Map 能根据 key 找到所有的 index
99
+ */
100
+ const dataSourceMap = useMemo(() => {
101
+ const map = new Map<
102
+ React.Key,
103
+ ProHelpDataSource<any>['children'][number] & {
104
+ parentKey?: React.Key;
105
+ }
106
+ >();
107
+ dataSource.forEach((page) => {
108
+ page.children.forEach((item) => {
109
+ map.set(item.key || item.title, { ...item, parentKey: page.key });
110
+ });
111
+ });
112
+ return map;
113
+ }, [dataSource]);
114
+
115
+ const renderItem = (item: ProHelpDataSource<any>['children'][number]) => {
116
+ if (item?.asyncLoad) {
117
+ return (
118
+ <div className={classNames(className, hashId)} id={item.title}>
119
+ <AsyncContentPanel
120
+ key={item?.key}
121
+ item={item!}
122
+ onInit={(ref) => {
123
+ if (!scrollHeightMap.current) return;
124
+ scrollHeightMap.current.set(item.key, ref);
125
+ }}
126
+ />
127
+ </div>
128
+ );
129
+ }
130
+
131
+ return (
132
+ <div className={classNames(className, hashId)} id={item.title}>
133
+ <RenderContentPanel
134
+ onInit={(ref) => {
135
+ if (!scrollHeightMap.current) return;
136
+ scrollHeightMap.current.set(item.key, ref);
137
+ }}
138
+ dataSourceChildren={item?.children || []}
139
+ />
140
+ </div>
141
+ );
142
+ };
143
+
144
+ if (parentItem && parentItem.infiniteScrollFull) {
145
+ return (
146
+ <div
147
+ ref={divRef}
148
+ className={classNames(`${className}-infinite-scroll`, hashId)}
149
+ style={{
150
+ overflow: 'auto',
151
+ }}
152
+ >
153
+ {parentItem.children?.map((item) => {
154
+ return (
155
+ <React.Fragment key={item.key}>{renderItem(item)}</React.Fragment>
156
+ );
157
+ })}
158
+ </div>
159
+ );
160
+ }
161
+ return renderItem(dataSourceMap.get(selectedKey!)!);
162
+ };
@@ -0,0 +1,54 @@
1
+ import type { DrawerProps } from 'antd';
2
+ import { Drawer } from 'antd';
3
+ import useMergedState from 'rc-util/es/hooks/useMergedState';
4
+ import type { ProHelpPanelProps } from './ProHelpPanel';
5
+ import { ProHelpPanel } from './ProHelpPanel';
6
+
7
+ export type ProHelpDrawerProps = {
8
+ /**
9
+ * Ant Design Drawer 组件的 Props,可以传递一些选项,如位置、大小、关闭方式等等。
10
+ */
11
+ drawerProps: DrawerProps;
12
+ } & Omit<ProHelpPanelProps, 'onClose'>;
13
+
14
+ /**
15
+ * 渲染一个抽屉,其中显示了一个 ProHelpPanel。
16
+ * @param drawerProps 要传递给 Drawer 组件的属性。
17
+ * @param props 要传递给 ProHelpPanel 组件的属性。
18
+ */
19
+ export const ProHelpDrawer: React.FC<ProHelpDrawerProps> = ({
20
+ drawerProps,
21
+ ...props
22
+ }) => {
23
+ const [drawerOpen, setDrawerOpen] = useMergedState<boolean>(false, {
24
+ value: drawerProps.open,
25
+ onChange: drawerProps.afterOpenChange,
26
+ });
27
+ return (
28
+ <Drawer
29
+ width={720}
30
+ closeIcon={null}
31
+ styles={{
32
+ header: {
33
+ display: 'none',
34
+ },
35
+ body: {
36
+ padding: 0,
37
+ },
38
+ }}
39
+ maskClosable
40
+ {...drawerProps}
41
+ open={drawerOpen}
42
+ onClose={() => setDrawerOpen(false)}
43
+ afterOpenChange={(open) => {
44
+ setDrawerOpen(open);
45
+ }}
46
+ >
47
+ <ProHelpPanel
48
+ {...props}
49
+ onClose={() => setDrawerOpen(false)}
50
+ bordered={false}
51
+ />
52
+ </Drawer>
53
+ );
54
+ };
@@ -0,0 +1,51 @@
1
+ import type { ModalProps } from 'antd';
2
+ import { Modal } from 'antd';
3
+ import useMergedState from 'rc-util/es/hooks/useMergedState';
4
+ import type { ProHelpPanelProps } from './ProHelpPanel';
5
+ import { ProHelpPanel } from './ProHelpPanel';
6
+ export type ProHelpModalProps = {
7
+ /**
8
+ * Ant Design Modal 组件的 props,可以传递一些选项,如位置、大小、关闭方式等等。
9
+ */
10
+ modalProps?: ModalProps;
11
+ } & Omit<ProHelpPanelProps, 'onClose'>;
12
+
13
+ /**
14
+ * 渲染一个模态对话框,其中显示了一个 ProHelpPanel。
15
+ * @param modalProps 要传递给 Modal 组件的属性。
16
+ * @param props 要传递给 ProHelpPanel 组件的属性。
17
+ */
18
+ export const ProHelpModal: React.FC<ProHelpModalProps> = ({
19
+ modalProps,
20
+ ...props
21
+ }) => {
22
+ const [modalOpen, setModalOpen] = useMergedState<boolean>(false, {
23
+ value: modalProps?.open,
24
+ onChange: modalProps?.afterClose,
25
+ });
26
+ return (
27
+ <Modal
28
+ onCancel={() => {
29
+ setModalOpen(false);
30
+ }}
31
+ styles={{
32
+ body: {
33
+ margin: -24,
34
+ },
35
+ }}
36
+ centered
37
+ closable={false}
38
+ footer={null}
39
+ width={720}
40
+ open={modalOpen}
41
+ maskClosable
42
+ {...modalProps}
43
+ >
44
+ <ProHelpPanel
45
+ height={648}
46
+ {...props}
47
+ onClose={() => setModalOpen(false)}
48
+ />
49
+ </Modal>
50
+ );
51
+ };