@_tc/template-core 0.0.1-bate.46 → 0.0.1-bate.48

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 (856) hide show
  1. package/.skills/tc-component-usage-skills/SKILL.md +132 -0
  2. package/.skills/tc-component-usage-skills/reference/component-api.md +801 -0
  3. package/.skills/tc-component-usage-skills/reference/examples.md +435 -0
  4. package/.skills/tc-component-usage-skills/reference/patterns.md +392 -0
  5. package/.skills/tc-component-usage-skills/reference/template-core-frontend.md +104 -0
  6. package/.skills/tc-generator/SKILL.md +70 -0
  7. package/.skills/tc-generator/reference/example.md +357 -0
  8. package/.skills/tc-generator/reference/model-schema.md +328 -0
  9. package/.skills/tc-generator/reference/project-template/app/controller/product.js +73 -0
  10. package/.skills/tc-generator/reference/project-template/app/router/product.js +9 -0
  11. package/.skills/tc-generator/reference/project-template/config/config.default.js +7 -0
  12. package/.skills/tc-generator/reference/project-template/index.js +17 -0
  13. package/.skills/tc-generator/reference/project-template/model/product/mode.js +179 -0
  14. package/.skills/tc-generator/reference/project-template/model/product/project/default.js +5 -0
  15. package/.skills/tc-generator/reference/project-template/package.json +25 -0
  16. package/.skills/tc-generator/reference/runtime-extensions.md +190 -0
  17. package/README.md +1723 -0
  18. package/cjs/_virtual/_rolldown/runtime.js +1 -37
  19. package/cjs/app/controller/base.js +1 -29
  20. package/cjs/app/controller/project.js +1 -60
  21. package/cjs/app/controller/view.js +1 -24
  22. package/cjs/app/extend/$fetch.js +1 -0
  23. package/cjs/app/extend/db.js +20 -8
  24. package/cjs/app/extend/generateErrorMessage.js +1 -16
  25. package/cjs/app/extend/logger.js +1 -35
  26. package/cjs/app/extend/parsingParamsOnUrl.js +1 -22
  27. package/cjs/app/extend/render-view.js +1 -24
  28. package/cjs/app/middleware/api-params-verify.js +1 -72
  29. package/cjs/app/middleware/api-sign-verify.js +1 -23
  30. package/cjs/app/middleware/error-handle.js +1 -38
  31. package/cjs/app/middleware/project-handler.js +1 -21
  32. package/cjs/app/middleware.js +1 -32
  33. package/cjs/app/router/project.js +1 -10
  34. package/cjs/app/router/view.js +1 -9
  35. package/cjs/app/router-schema/project.js +1 -16
  36. package/cjs/app/service/base.js +1 -17
  37. package/cjs/app/service/project.js +1 -38
  38. package/cjs/app/type.js +0 -1
  39. package/cjs/app/typings.js +0 -1
  40. package/cjs/app/view/entry.tpl +27 -28
  41. package/cjs/bundler/buildBE.js +1 -0
  42. package/cjs/bundler/defaultAlias.js +1 -5
  43. package/cjs/bundler/dev.js +1 -20
  44. package/cjs/bundler/index.js +1 -19
  45. package/cjs/bundler/prod.js +1 -21
  46. package/cjs/bundler/state.js +1 -0
  47. package/cjs/bundler/utils.js +1 -262
  48. package/cjs/config/config.default.js +1 -0
  49. package/cjs/index.js +1 -23
  50. package/cjs/packages/common/LRUCache.js +1 -4
  51. package/cjs/packages/common/array/index.js +1 -43
  52. package/cjs/packages/common/cache/LRUCache.js +1 -45
  53. package/cjs/packages/common/cache/index.js +1 -4
  54. package/cjs/packages/common/guards/index.js +1 -34
  55. package/cjs/packages/common/http/index.js +1 -0
  56. package/cjs/packages/common/i18n/default.js +1 -95
  57. package/cjs/packages/common/i18n/en-US.js +1 -95
  58. package/cjs/packages/common/i18n/index.js +1 -178
  59. package/cjs/packages/common/i18n/locales.js +1 -17
  60. package/cjs/packages/common/i18n/types.js +0 -1
  61. package/cjs/packages/common/index.js +1 -65
  62. package/cjs/packages/common/log/index.js +2 -160
  63. package/cjs/packages/common/number/index.js +1 -14
  64. package/cjs/packages/common/object/filterEmpty.js +1 -32
  65. package/cjs/packages/common/object/filtereEmpty.js +1 -5
  66. package/cjs/packages/common/object/index.js +1 -26
  67. package/cjs/packages/common/string/index.js +1 -17
  68. package/cjs/packages/common/types/index.js +0 -1
  69. package/cjs/packages/core/env.js +1 -27
  70. package/cjs/packages/core/index.js +1 -110
  71. package/cjs/packages/core/loader/config.js +1 -43
  72. package/cjs/packages/core/loader/controller.js +1 -33
  73. package/cjs/packages/core/loader/extend.js +1 -31
  74. package/cjs/packages/core/loader/middleware.js +1 -30
  75. package/cjs/packages/core/loader/model.js +1 -111
  76. package/cjs/packages/core/loader/router-schema.js +1 -36
  77. package/cjs/packages/core/loader/router.js +1 -62
  78. package/cjs/packages/core/loader/service.js +1 -30
  79. package/cjs/packages/core/paths.js +1 -12
  80. package/cjs/packages/core/types.js +0 -1
  81. package/cjs/packages/utils/getAllFilesInFolder.js +1 -14
  82. package/cjs/packages/utils/getAllFnReturnValue.js +0 -1
  83. package/cjs/packages/utils/index.js +1 -11
  84. package/cjs/packages/utils/loadFile.js +1 -55
  85. package/cjs/packages/utils/path.js +1 -31
  86. package/cjs/packages/utils/runFileFn.js +1 -51
  87. package/cjs/scripts/vite-build/build.js +3 -0
  88. package/cjs/scripts/vite-build/collect.js +1 -0
  89. package/cjs/scripts/vite-build/constants.js +1 -0
  90. package/cjs/scripts/vite-build/dts.js +1 -0
  91. package/cjs/scripts/vite-build/index.js +1 -0
  92. package/cjs/scripts/vite-build/normalize.js +1 -0
  93. package/cjs/scripts/vite-build/plugins.js +1 -0
  94. package/cjs/scripts/vite-build/resolve.js +1 -0
  95. package/cjs/scripts/vite-build/types.js +0 -0
  96. package/cjs/scripts/vite-build/utils.js +1 -0
  97. package/esm/_virtual/_rolldown/runtime.js +4 -29
  98. package/esm/app/controller/base.js +14 -16
  99. package/esm/app/controller/project.js +39 -46
  100. package/esm/app/controller/view.js +23 -19
  101. package/esm/app/extend/$fetch.js +15 -0
  102. package/esm/app/extend/db.js +138 -4
  103. package/esm/app/extend/generateErrorMessage.js +4 -12
  104. package/esm/app/extend/logger.js +9 -17
  105. package/esm/app/extend/parsingParamsOnUrl.js +11 -18
  106. package/esm/app/extend/render-view.js +18 -16
  107. package/esm/app/middleware/api-params-verify.js +36 -50
  108. package/esm/app/middleware/api-sign-verify.js +10 -16
  109. package/esm/app/middleware/error-handle.js +17 -30
  110. package/esm/app/middleware/project-handler.js +11 -16
  111. package/esm/app/middleware.js +12 -19
  112. package/esm/app/router/project.js +4 -6
  113. package/esm/app/router/view.js +4 -5
  114. package/esm/app/router-schema/project.js +2 -2
  115. package/esm/app/service/base.js +6 -7
  116. package/esm/app/service/project.js +18 -32
  117. package/esm/app/view/entry.tpl +27 -28
  118. package/esm/bundler/buildBE.js +54 -0
  119. package/esm/bundler/defaultAlias.js +2 -2
  120. package/esm/bundler/dev.js +8 -14
  121. package/esm/bundler/index.js +11 -9
  122. package/esm/bundler/prod.js +9 -14
  123. package/esm/bundler/state.js +10 -0
  124. package/esm/bundler/utils.js +115 -164
  125. package/esm/config/config.default.js +9 -0
  126. package/esm/index.js +12 -15
  127. package/esm/packages/common/LRUCache.js +2 -2
  128. package/esm/packages/common/array/index.js +21 -31
  129. package/esm/packages/common/cache/LRUCache.js +21 -25
  130. package/esm/packages/common/cache/index.js +2 -2
  131. package/esm/packages/common/guards/index.js +5 -23
  132. package/esm/packages/common/http/index.js +256 -0
  133. package/esm/packages/common/i18n/default.js +2 -7
  134. package/esm/packages/common/i18n/en-US.js +2 -7
  135. package/esm/packages/common/i18n/index.js +73 -144
  136. package/esm/packages/common/i18n/locales.js +6 -8
  137. package/esm/packages/common/index.js +14 -13
  138. package/esm/packages/common/log/index.js +69 -122
  139. package/esm/packages/common/number/index.js +7 -8
  140. package/esm/packages/common/object/filterEmpty.js +16 -22
  141. package/esm/packages/common/object/filtereEmpty.js +2 -2
  142. package/esm/packages/common/object/index.js +14 -17
  143. package/esm/packages/common/string/index.js +2 -11
  144. package/esm/packages/core/env.js +22 -24
  145. package/esm/packages/core/index.js +36 -92
  146. package/esm/packages/core/loader/config.js +21 -35
  147. package/esm/packages/core/loader/controller.js +8 -27
  148. package/esm/packages/core/loader/extend.js +19 -21
  149. package/esm/packages/core/loader/middleware.js +9 -22
  150. package/esm/packages/core/loader/model.js +50 -91
  151. package/esm/packages/core/loader/router-schema.js +13 -29
  152. package/esm/packages/core/loader/router.js +27 -51
  153. package/esm/packages/core/loader/service.js +8 -24
  154. package/esm/packages/core/paths.js +5 -5
  155. package/esm/packages/utils/getAllFilesInFolder.js +6 -8
  156. package/esm/packages/utils/index.js +5 -5
  157. package/esm/packages/utils/loadFile.js +28 -43
  158. package/esm/packages/utils/path.js +10 -22
  159. package/esm/packages/utils/runFileFn.js +32 -37
  160. package/esm/scripts/vite-build/build.js +141 -0
  161. package/esm/scripts/vite-build/collect.js +79 -0
  162. package/esm/scripts/vite-build/constants.js +34 -0
  163. package/esm/scripts/vite-build/dts.js +132 -0
  164. package/esm/scripts/vite-build/index.js +3 -0
  165. package/esm/scripts/vite-build/normalize.js +78 -0
  166. package/esm/scripts/vite-build/plugins.js +106 -0
  167. package/esm/scripts/vite-build/resolve.js +46 -0
  168. package/esm/scripts/vite-build/types.js +0 -0
  169. package/esm/scripts/vite-build/utils.js +24 -0
  170. package/fe/bundler/defaultAlias.js +4 -0
  171. package/fe/frontend/apps/dash/Dashboard.d.ts +6 -0
  172. package/fe/frontend/apps/dash/Dashboard.js +164 -0
  173. package/fe/frontend/apps/dash/dash.entry.js +54 -0
  174. package/fe/frontend/apps/dash/types.d.ts +25 -0
  175. package/fe/frontend/apps/dash/types.js +0 -0
  176. package/fe/frontend/apps/ui-components/index.js +16 -0
  177. package/fe/frontend/apps/ui-components/ui-components.entry.d.ts +2 -0
  178. package/fe/frontend/apps/ui-components/ui-components.entry.js +8 -0
  179. package/fe/frontend/extended/SchemaForm/data.d.ts +1 -1
  180. package/fe/frontend/extended/SchemaForm/data.js +7 -7
  181. package/fe/frontend/{widgets → src}/api/baseInfo.d.ts +2 -2
  182. package/fe/frontend/src/api/baseInfo.js +14 -0
  183. package/fe/frontend/src/common/CRUD/CRUD.d.ts +3 -0
  184. package/fe/frontend/src/common/CRUD/CRUD.js +2 -0
  185. package/fe/frontend/src/common/CRUD/index.d.ts +2 -0
  186. package/fe/frontend/src/common/CRUD/index.js +2 -0
  187. package/fe/frontend/src/common/auth/index.js +21 -0
  188. package/fe/frontend/{widgets/defaultPages/Schema/utils → src/common}/fetchErrorShow.d.ts +1 -1
  189. package/fe/frontend/src/common/fetchErrorShow.js +11 -0
  190. package/fe/frontend/src/common/generateMenuData.d.ts +4 -0
  191. package/fe/frontend/src/common/generateMenuData.js +16 -0
  192. package/fe/frontend/{widgets → src}/common/importComponent.d.ts +1 -1
  193. package/fe/frontend/src/common/importComponent.js +23 -0
  194. package/fe/frontend/src/common/language.d.ts +3 -0
  195. package/fe/frontend/src/common/language.js +12 -0
  196. package/fe/frontend/{widgets → src}/common/logFn/index.d.ts +1 -0
  197. package/fe/frontend/src/common/logFn/index.js +14 -0
  198. package/fe/frontend/{widgets → src}/common/menu.d.ts +1 -1
  199. package/fe/frontend/src/common/menu.js +97 -0
  200. package/fe/frontend/src/common/request.d.ts +37 -0
  201. package/fe/frontend/src/common/request.js +183 -0
  202. package/fe/frontend/{components → src/components}/AsyncSelect/AsyncSelect.d.ts +3 -3
  203. package/fe/frontend/src/components/AsyncSelect/AsyncSelect.js +35 -0
  204. package/fe/frontend/src/components/AsyncSelect/index.d.ts +4 -0
  205. package/fe/frontend/src/components/AsyncSelect/index.js +5 -0
  206. package/fe/frontend/{widgets → src}/components/BasePage/HeaderView.d.ts +1 -0
  207. package/fe/frontend/src/components/BasePage/HeaderView.js +55 -0
  208. package/fe/frontend/src/components/LanguageSwitch/LanguageSwitch.d.ts +14 -0
  209. package/fe/frontend/src/components/LanguageSwitch/LanguageSwitch.js +44 -0
  210. package/fe/frontend/src/components/LanguageSwitch/index.d.ts +4 -0
  211. package/fe/frontend/src/components/LanguageSwitch/index.js +5 -0
  212. package/fe/frontend/{widgets → src}/components/Router/index.d.ts +2 -2
  213. package/fe/frontend/src/components/Router/index.js +21 -0
  214. package/fe/frontend/src/components/Router/type.js +0 -0
  215. package/fe/frontend/src/components/ThemeSwitch/ThemeSwitch.d.ts +15 -0
  216. package/fe/frontend/src/components/ThemeSwitch/ThemeSwitch.js +83 -0
  217. package/fe/frontend/src/components/ThemeSwitch/index.d.ts +4 -0
  218. package/fe/frontend/src/components/ThemeSwitch/index.js +5 -0
  219. package/fe/frontend/src/components/index.d.ts +11 -0
  220. package/fe/frontend/src/components/index.js +7 -0
  221. package/fe/frontend/src/defaultPages/Iframe/index.js +15 -0
  222. package/fe/frontend/src/defaultPages/NotFoundPage/index.d.ts +3 -0
  223. package/fe/frontend/src/defaultPages/NotFoundPage/index.js +28 -0
  224. package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/components/CallCom/DetailPanel.d.ts +1 -1
  225. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/DetailPanel.js +102 -0
  226. package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/components/CallCom/PopFrom.d.ts +1 -1
  227. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/PopFrom.js +119 -0
  228. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/builtIn.d.ts +44 -0
  229. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/builtIn.js +10 -0
  230. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/data.d.ts +4 -0
  231. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/data.js +9 -0
  232. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaSearch/index.js +62 -0
  233. package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/components/SchemaTable/index.d.ts +2 -2
  234. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaTable/index.js +200 -0
  235. package/fe/frontend/src/defaultPages/SchemaPage/data/eventInfo.js +9 -0
  236. package/fe/frontend/src/defaultPages/SchemaPage/data/index.js +4 -0
  237. package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/hooks/useComConfig.d.ts +1 -1
  238. package/fe/frontend/src/defaultPages/SchemaPage/hooks/useComConfig.js +17 -0
  239. package/fe/frontend/src/defaultPages/SchemaPage/index.css +112 -0
  240. package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/index.d.ts +1 -0
  241. package/fe/frontend/src/defaultPages/SchemaPage/index.js +90 -0
  242. package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/schemaType.d.ts +7 -6
  243. package/fe/frontend/src/defaultPages/SchemaPage/schemaType.js +7 -0
  244. package/fe/frontend/src/defaultPages/SchemaPage/utils/permissions.js +6 -0
  245. package/fe/frontend/src/defaultPages/SchemaPage/utils/schemaConversion.d.ts +3 -0
  246. package/fe/frontend/src/defaultPages/SchemaPage/utils/schemaConversion.js +66 -0
  247. package/fe/frontend/src/defaultPages/SchemaPage/utils/validator.d.ts +11 -0
  248. package/fe/frontend/src/defaultPages/SchemaPage/utils/validator.js +122 -0
  249. package/fe/frontend/{widgets → src}/defaultPages/SidebarSlotPage/SidebarSlotContainer.d.ts +2 -2
  250. package/fe/frontend/src/defaultPages/SidebarSlotPage/SidebarSlotContainer.js +55 -0
  251. package/fe/frontend/src/defaultPages/SidebarSlotPage/index.js +21 -0
  252. package/fe/frontend/src/defaultPages/SidebarSlotPageTmp.js +21 -0
  253. package/fe/frontend/src/defaultPages/SlotPage/index.js +22 -0
  254. package/fe/frontend/src/exportStore.d.ts +17 -0
  255. package/fe/frontend/src/exportStore.js +5 -0
  256. package/fe/frontend/src/hooks/useCurrentMenuData.js +30 -0
  257. package/fe/frontend/src/hooks/useRouterParams.js +16 -0
  258. package/fe/frontend/src/index.d.ts +21 -0
  259. package/fe/frontend/src/index.js +19 -0
  260. package/fe/frontend/src/language/en-US.d.ts +89 -0
  261. package/fe/frontend/src/language/en-US.js +89 -0
  262. package/fe/frontend/src/language/index.d.ts +73 -0
  263. package/fe/frontend/src/language/index.js +79 -0
  264. package/fe/frontend/src/language/zh-CN.d.ts +89 -0
  265. package/fe/frontend/src/language/zh-CN.js +89 -0
  266. package/fe/frontend/src/main.css +96 -0
  267. package/fe/frontend/src/main.d.ts +27 -0
  268. package/fe/frontend/src/main.js +60 -0
  269. package/fe/frontend/src/stores/apiFreezer.d.ts +93 -0
  270. package/fe/frontend/src/stores/apiFreezer.js +53 -0
  271. package/fe/frontend/{widgets/store → src/stores}/mode.d.ts +3 -3
  272. package/fe/frontend/src/stores/mode.js +36 -0
  273. package/fe/frontend/{widgets/defaultPages/Schema → src}/stores/schemaEventBus.d.ts +1 -1
  274. package/fe/frontend/src/stores/schemaEventBus.js +53 -0
  275. package/fe/frontend/{widgets/defaultPages/Schema → src}/stores/schemaStore.d.ts +5 -5
  276. package/fe/frontend/src/stores/schemaStore.js +28 -0
  277. package/fe/frontend/{typing → src/typing}/scalability.d.ts +3 -3
  278. package/fe/frontend/src/typing/scalability.js +0 -0
  279. package/fe/frontend/src/typing/window.d.ts +9 -0
  280. package/fe/frontend/src/typing/window.js +0 -0
  281. package/fe/model/types/data/button.d.ts +4 -4
  282. package/fe/model/types/data/component.d.ts +32 -47
  283. package/fe/model/types/data/schema.d.ts +6 -6
  284. package/fe/model/types/data/search.d.ts +1 -1
  285. package/fe/model/types/model.d.ts +19 -12
  286. package/fe/packages/common/cache/LRUCache.js +43 -47
  287. package/fe/packages/common/guards/index.js +8 -24
  288. package/fe/packages/common/http/index.d.ts +90 -0
  289. package/fe/packages/common/http/index.js +300 -0
  290. package/fe/packages/common/i18n/default.js +91 -88
  291. package/fe/packages/common/i18n/en-US.js +91 -88
  292. package/fe/packages/common/i18n/index.d.ts +3 -3
  293. package/fe/packages/common/i18n/index.js +142 -153
  294. package/fe/packages/common/i18n/locales.d.ts +3 -3
  295. package/fe/packages/common/i18n/locales.js +10 -9
  296. package/fe/packages/common/index.d.ts +1 -0
  297. package/fe/packages/common/object/filterEmpty.js +25 -30
  298. package/fe/packages/react/hooks/useBreadcrumb.d.ts +10 -0
  299. package/fe/packages/react/hooks/useBreadcrumb.js +5 -0
  300. package/fe/packages/react/hooks/useExecuteOnce.js +47 -0
  301. package/fe/packages/react/hooks/useInit.js +11 -0
  302. package/fe/packages/react/hooks/useLanguage.d.ts +2 -0
  303. package/fe/packages/react/hooks/useLanguage.js +8 -0
  304. package/fe/packages/react/hooks/usePagination.js +30 -0
  305. package/fe/packages/{ui/react → react}/hooks/useRefState.d.ts +1 -1
  306. package/fe/packages/react/hooks/useRefState.js +35 -0
  307. package/fe/packages/react/hooks/useWatch.js +60 -0
  308. package/fe/packages/react/hooks/useWatch.test.js +24 -0
  309. package/fe/packages/react/ui/assets/table/no-result.js +4 -0
  310. package/fe/packages/{ui/react → react/ui}/components/Button/Button.d.ts +1 -1
  311. package/fe/packages/react/ui/components/Button/Button.js +88 -0
  312. package/fe/packages/react/ui/components/Button/SubmitButton.d.ts +13 -0
  313. package/fe/packages/react/ui/components/Button/SubmitButton.js +30 -0
  314. package/fe/packages/react/ui/components/Button/index.d.ts +4 -0
  315. package/fe/packages/react/ui/components/Button/index.js +3 -0
  316. package/fe/packages/react/ui/components/Card/Card.d.ts +15 -0
  317. package/fe/packages/react/ui/components/Card/Card.js +31 -0
  318. package/fe/packages/react/ui/components/Card/index.d.ts +2 -0
  319. package/fe/packages/react/ui/components/Card/index.js +2 -0
  320. package/fe/packages/{ui/react → react/ui}/components/Checkbox/Checkbox.d.ts +1 -1
  321. package/fe/packages/react/ui/components/Checkbox/Checkbox.js +52 -0
  322. package/fe/packages/react/ui/components/Checkbox/index.d.ts +2 -0
  323. package/fe/packages/react/ui/components/Checkbox/index.js +2 -0
  324. package/fe/packages/react/ui/components/ConfirmDialog/ConfirmDialog.js +41 -0
  325. package/fe/packages/react/ui/components/ConfirmDialog/index.d.ts +2 -0
  326. package/fe/packages/react/ui/components/ConfirmDialog/index.js +2 -0
  327. package/fe/packages/{ui/react → react/ui}/components/DataTable/ActionBtn.d.ts +1 -1
  328. package/fe/packages/react/ui/components/DataTable/ActionBtn.js +116 -0
  329. package/fe/packages/{ui/react → react/ui}/components/DataTable/index.d.ts +9 -7
  330. package/fe/packages/react/ui/components/DataTable/index.js +235 -0
  331. package/fe/packages/{ui/react → react/ui}/components/Date/Calendar.d.ts +2 -2
  332. package/fe/packages/react/ui/components/Date/Calendar.js +351 -0
  333. package/fe/packages/react/ui/components/Date/Date.js +210 -0
  334. package/fe/packages/react/ui/components/Date/DateTestPage.js +340 -0
  335. package/fe/packages/react/ui/components/Date/LocaleContext.js +11 -0
  336. package/fe/packages/{ui/react → react/ui}/components/Date/LocaleProvider.d.ts +2 -2
  337. package/fe/packages/react/ui/components/Date/LocaleProvider.js +31 -0
  338. package/fe/packages/react/ui/components/Date/TimePicker.js +136 -0
  339. package/fe/packages/react/ui/components/Date/data.js +7 -0
  340. package/fe/packages/{ui/react → react/ui}/components/Date/dateLocaleStore.d.ts +1 -1
  341. package/fe/packages/react/ui/components/Date/dateLocaleStore.js +14 -0
  342. package/fe/packages/react/ui/components/Date/dropdownPositioning.d.ts +3 -0
  343. package/fe/packages/react/ui/components/Date/dropdownPositioning.js +12 -0
  344. package/fe/packages/react/ui/components/Date/index.d.ts +6 -0
  345. package/fe/packages/react/ui/components/Date/index.js +6 -0
  346. package/fe/packages/react/ui/components/Date/locales.js +25 -0
  347. package/fe/packages/{ui/react → react/ui}/components/Drawer/Drawer.d.ts +1 -1
  348. package/fe/packages/react/ui/components/Drawer/Drawer.js +151 -0
  349. package/fe/packages/react/ui/components/Drawer/index.d.ts +3 -0
  350. package/fe/packages/react/ui/components/Drawer/index.js +2 -0
  351. package/fe/packages/{ui/react → react/ui}/components/Dropdown/Dropdown.d.ts +3 -2
  352. package/fe/packages/react/ui/components/Dropdown/Dropdown.js +105 -0
  353. package/fe/packages/react/ui/components/Dropdown/index.d.ts +2 -0
  354. package/fe/packages/react/ui/components/Dropdown/index.js +2 -0
  355. package/fe/packages/{ui/react → react/ui}/components/Form/Form.d.ts +2 -2
  356. package/fe/packages/react/ui/components/Form/Form.js +15 -0
  357. package/fe/packages/{ui/react → react/ui}/components/Form/FormItem.d.ts +3 -3
  358. package/fe/packages/react/ui/components/Form/FormItem.js +60 -0
  359. package/fe/packages/{ui/react → react/ui}/components/Form/SchemaForm/data.d.ts +8 -8
  360. package/fe/packages/react/ui/components/Form/SchemaForm/data.js +16 -0
  361. package/fe/packages/react/ui/components/Form/SchemaForm/defaultComponentsMap.d.ts +4 -0
  362. package/fe/packages/react/ui/components/Form/SchemaForm/defaultComponentsMap.js +4 -0
  363. package/fe/packages/{ui/react → react/ui}/components/Form/SchemaForm/index.d.ts +9 -9
  364. package/fe/packages/react/ui/components/Form/SchemaForm/index.js +119 -0
  365. package/fe/packages/react/ui/components/Form/index.d.ts +5 -0
  366. package/fe/packages/react/ui/components/Form/index.js +5 -0
  367. package/fe/packages/react/ui/components/Form/useForm.d.ts +3 -0
  368. package/fe/packages/react/ui/components/Form/useForm.js +2 -0
  369. package/fe/packages/react/ui/components/ImagePreview/ImagePreview.js +307 -0
  370. package/fe/packages/{ui/react → react/ui}/components/ImagePreview/PreviewImage.d.ts +2 -2
  371. package/fe/packages/react/ui/components/ImagePreview/PreviewImage.js +56 -0
  372. package/fe/packages/react/ui/components/ImagePreview/index.d.ts +3 -0
  373. package/fe/packages/react/ui/components/ImagePreview/index.js +3 -0
  374. package/fe/packages/{ui/react → react/ui}/components/Input/Input.d.ts +1 -1
  375. package/fe/packages/react/ui/components/Input/Input.js +88 -0
  376. package/fe/packages/react/ui/components/Input/index.d.ts +2 -0
  377. package/fe/packages/react/ui/components/Input/index.js +2 -0
  378. package/fe/packages/{ui/react → react/ui}/components/InputNumber/InputNumber.d.ts +2 -2
  379. package/fe/packages/react/ui/components/InputNumber/InputNumber.js +207 -0
  380. package/fe/packages/react/ui/components/InputNumber/index.d.ts +2 -0
  381. package/fe/packages/react/ui/components/InputNumber/index.js +2 -0
  382. package/fe/packages/react/ui/components/InputNumber/inputNumberUtils.js +45 -0
  383. package/fe/packages/react/ui/components/InputNumber/inputNumberUtils.test.js +59 -0
  384. package/fe/packages/{ui/react → react/ui}/components/Label/Label.d.ts +1 -1
  385. package/fe/packages/react/ui/components/Label/Label.js +58 -0
  386. package/fe/packages/react/ui/components/Label/index.d.ts +3 -0
  387. package/fe/packages/react/ui/components/Label/index.js +2 -0
  388. package/fe/packages/react/ui/components/Layout/Layout.d.ts +11 -0
  389. package/fe/packages/react/ui/components/Layout/Layout.js +33 -0
  390. package/fe/packages/react/ui/components/Layout/index.d.ts +2 -0
  391. package/fe/packages/react/ui/components/Layout/index.js +2 -0
  392. package/fe/packages/react/ui/components/Loading/Loading.d.ts +25 -0
  393. package/fe/packages/react/ui/components/Loading/Loading.js +48 -0
  394. package/fe/packages/react/ui/components/Loading/index.d.ts +2 -0
  395. package/fe/packages/react/ui/components/Loading/index.js +2 -0
  396. package/fe/packages/react/ui/components/Menu/Menu.js +147 -0
  397. package/fe/packages/react/ui/components/Menu/MenuContext.js +88 -0
  398. package/fe/packages/react/ui/components/Menu/MenuItem.js +78 -0
  399. package/fe/packages/react/ui/components/Menu/SubMenu.js +207 -0
  400. package/fe/packages/react/ui/components/Menu/index.d.ts +9 -0
  401. package/fe/packages/react/ui/components/Menu/index.js +5 -0
  402. package/fe/packages/{ui/react → react/ui}/components/Menu/menuTypes.d.ts +1 -1
  403. package/fe/packages/react/ui/components/Menu/menuTypes.js +0 -0
  404. package/fe/packages/react/ui/components/Menu/utils.js +8 -0
  405. package/fe/packages/{ui/react → react/ui}/components/Message/Message.d.ts +1 -1
  406. package/fe/packages/react/ui/components/Message/Message.js +76 -0
  407. package/fe/packages/{ui/react → react/ui}/components/Message/MessageManager.d.ts +2 -2
  408. package/fe/packages/react/ui/components/Message/MessageManager.js +104 -0
  409. package/fe/packages/react/ui/components/Message/data.js +4 -0
  410. package/fe/packages/react/ui/components/Message/index.d.ts +3 -0
  411. package/fe/packages/react/ui/components/Message/index.js +2 -0
  412. package/fe/packages/{ui/react → react/ui}/components/Modal/Modal.d.ts +1 -1
  413. package/fe/packages/react/ui/components/Modal/Modal.js +59 -0
  414. package/fe/packages/{ui/react → react/ui}/components/Modal/ModalManager.d.ts +5 -5
  415. package/fe/packages/react/ui/components/Modal/ModalManager.js +106 -0
  416. package/fe/packages/react/ui/components/Modal/index.d.ts +4 -0
  417. package/fe/packages/react/ui/components/Modal/index.js +3 -0
  418. package/fe/packages/react/ui/components/Notification/Notification.d.ts +14 -0
  419. package/fe/packages/react/ui/components/Notification/Notification.js +56 -0
  420. package/fe/packages/react/ui/components/Notification/index.d.ts +2 -0
  421. package/fe/packages/react/ui/components/Notification/index.js +2 -0
  422. package/fe/packages/{ui/react → react/ui}/components/Overlay/Overlay.d.ts +1 -1
  423. package/fe/packages/react/ui/components/Overlay/Overlay.js +61 -0
  424. package/fe/packages/react/ui/components/Overlay/index.d.ts +3 -0
  425. package/fe/packages/react/ui/components/Overlay/index.js +2 -0
  426. package/fe/packages/react/ui/components/Pagination/Pagination.js +115 -0
  427. package/fe/packages/react/ui/components/Pagination/index.d.ts +2 -0
  428. package/fe/packages/react/ui/components/Pagination/index.js +2 -0
  429. package/fe/packages/react/ui/components/Popup/Popup.js +86 -0
  430. package/fe/packages/react/ui/components/Popup/index.d.ts +2 -0
  431. package/fe/packages/react/ui/components/Popup/index.js +2 -0
  432. package/fe/packages/react/ui/components/Radio/Radio.d.ts +9 -0
  433. package/fe/packages/react/ui/components/Radio/Radio.js +36 -0
  434. package/fe/packages/react/ui/components/Radio/RadioGroup.d.ts +19 -0
  435. package/fe/packages/react/ui/components/Radio/RadioGroup.js +33 -0
  436. package/fe/packages/react/ui/components/Radio/index.d.ts +3 -0
  437. package/fe/packages/react/ui/components/Radio/index.js +3 -0
  438. package/fe/packages/{ui/react → react/ui}/components/Search/Search.d.ts +4 -4
  439. package/fe/packages/react/ui/components/Search/Search.js +24 -0
  440. package/fe/packages/react/ui/components/Search/index.d.ts +2 -0
  441. package/fe/packages/react/ui/components/Search/index.js +2 -0
  442. package/fe/packages/{ui/react → react/ui}/components/Select/Select.d.ts +1 -1
  443. package/fe/packages/react/ui/components/Select/Select.js +276 -0
  444. package/fe/packages/react/ui/components/Select/dropdownPositioning.d.ts +3 -0
  445. package/fe/packages/react/ui/components/Select/dropdownPositioning.js +16 -0
  446. package/fe/packages/react/ui/components/Select/index.d.ts +2 -0
  447. package/fe/packages/react/ui/components/Select/index.js +2 -0
  448. package/fe/packages/{ui/react → react/ui}/components/Skeleton/Skeleton.d.ts +1 -1
  449. package/fe/packages/react/ui/components/Skeleton/Skeleton.js +101 -0
  450. package/fe/packages/react/ui/components/Skeleton/index.d.ts +3 -0
  451. package/fe/packages/react/ui/components/Skeleton/index.js +2 -0
  452. package/fe/packages/{ui/react → react/ui}/components/Switch/Switch.d.ts +1 -1
  453. package/fe/packages/react/ui/components/Switch/Switch.js +28 -0
  454. package/fe/packages/react/ui/components/Switch/index.d.ts +2 -0
  455. package/fe/packages/react/ui/components/Switch/index.js +2 -0
  456. package/fe/packages/{ui/react → react/ui}/components/TableSearch/TableSearch.d.ts +6 -6
  457. package/fe/packages/react/ui/components/TableSearch/TableSearch.js +146 -0
  458. package/fe/packages/react/ui/components/TableSearch/index.d.ts +3 -0
  459. package/fe/packages/react/ui/components/TableSearch/index.js +2 -0
  460. package/fe/packages/react/ui/components/TableSearch/lang.js +14 -0
  461. package/fe/packages/{ui/react → react/ui}/components/TableSearch/tableSearchLocaleStore.d.ts +1 -1
  462. package/fe/packages/react/ui/components/TableSearch/tableSearchLocaleStore.js +10 -0
  463. package/fe/packages/react/ui/components/Tabs/Tabs.d.ts +16 -0
  464. package/fe/packages/react/ui/components/Tabs/Tabs.js +33 -0
  465. package/fe/packages/react/ui/components/Tabs/index.d.ts +2 -0
  466. package/fe/packages/react/ui/components/Tabs/index.js +2 -0
  467. package/fe/packages/react/ui/components/Textarea/Textarea.js +58 -0
  468. package/fe/packages/react/ui/components/Textarea/index.d.ts +2 -0
  469. package/fe/packages/react/ui/components/Textarea/index.js +2 -0
  470. package/fe/packages/react/ui/components/Tooltip/Tooltip.js +77 -0
  471. package/fe/packages/react/ui/components/Tooltip/index.d.ts +2 -0
  472. package/fe/packages/react/ui/components/Tooltip/index.js +2 -0
  473. package/fe/packages/react/ui/components/TreeSelect/TreeSelect.js +190 -0
  474. package/fe/packages/react/ui/components/TreeSelect/index.d.ts +2 -0
  475. package/fe/packages/react/ui/components/TreeSelect/index.js +2 -0
  476. package/fe/packages/react/ui/components/Upload/ImageUpload.js +101 -0
  477. package/fe/packages/{ui/react → react/ui}/components/Upload/Upload.d.ts +1 -1
  478. package/fe/packages/react/ui/components/Upload/Upload.js +29 -0
  479. package/fe/packages/react/ui/components/Upload/index.d.ts +3 -0
  480. package/fe/packages/react/ui/components/Upload/index.js +3 -0
  481. package/fe/packages/react/ui/components/breadcrumb/breadcrumb.js +155 -0
  482. package/fe/packages/react/ui/components/breadcrumb/index.d.ts +2 -0
  483. package/fe/packages/react/ui/components/breadcrumb/index.js +2 -0
  484. package/fe/packages/react/ui/components/hooks/useDropdownPositioning.js +121 -0
  485. package/fe/packages/react/ui/components/hooks/useInputController.js +39 -0
  486. package/fe/packages/react/ui/components/index.d.ts +36 -0
  487. package/fe/packages/react/ui/components/index.js +81 -0
  488. package/fe/packages/react/ui/components/table/index.d.ts +2 -0
  489. package/fe/packages/react/ui/components/table/index.js +2 -0
  490. package/fe/packages/{ui/react → react/ui}/components/table/table.d.ts +16 -3
  491. package/fe/packages/react/ui/components/table/table.js +166 -0
  492. package/fe/packages/react/ui/components/testPage/MenuTestPage.js +397 -0
  493. package/fe/packages/react/ui/components/testPage/index.js +1612 -0
  494. package/fe/packages/{ui/react → react/ui}/i18n/I18nProvider.d.ts +2 -2
  495. package/fe/packages/react/ui/i18n/I18nProvider.js +38 -0
  496. package/fe/packages/react/ui/i18n/index.d.ts +4 -0
  497. package/fe/packages/react/ui/i18n/index.js +7 -0
  498. package/fe/packages/react/ui/i18n/useI18n.d.ts +13 -0
  499. package/fe/packages/react/ui/i18n/useI18n.js +25 -0
  500. package/fe/packages/{ui/react → react/ui}/index.css +70 -9
  501. package/fe/packages/react/ui/index.d.ts +5 -0
  502. package/fe/packages/react/ui/index.js +58 -0
  503. package/fe/packages/{ui/react → react/ui}/lib/createStoreHook.d.ts +1 -1
  504. package/fe/packages/react/ui/lib/createStoreHook.js +9 -0
  505. package/fe/packages/{ui/react → react/ui}/lib/export.d.ts +1 -1
  506. package/fe/packages/react/ui/lib/export.js +112 -0
  507. package/fe/packages/react/ui/lib/utils.js +64 -0
  508. package/fe/packages/{ui/react → react/ui}/stores/breadcrumb.d.ts +1 -1
  509. package/fe/packages/react/ui/stores/breadcrumb.js +52 -0
  510. package/fe/packages/react/ui/stores/language.d.ts +4 -0
  511. package/fe/packages/react/ui/stores/language.js +4 -0
  512. package/fe/packages/react/ui/types/index.js +0 -0
  513. package/fe/typings/type.d.ts +1 -0
  514. package/model/index.d.ts +1 -1
  515. package/model/types/data/button.d.ts +4 -4
  516. package/model/types/data/component.d.ts +32 -47
  517. package/model/types/data/schema.d.ts +6 -6
  518. package/model/types/data/search.d.ts +1 -1
  519. package/model/types/index.d.ts +2 -1
  520. package/model/types/model.d.ts +19 -12
  521. package/package.json +37 -39
  522. package/types/app/controller/project.d.ts +14 -2
  523. package/types/app/controller/view.d.ts +1 -1
  524. package/types/app/extend/$fetch.d.ts +8 -0
  525. package/types/app/extend/db.d.ts +54 -1
  526. package/types/app/extend/render-view.d.ts +3 -0
  527. package/types/app/middleware/api-params-verify.d.ts +1 -1
  528. package/types/app/middleware/project-handler.d.ts +2 -2
  529. package/types/app/router/project.d.ts +1 -1
  530. package/types/app/service/base.d.ts +3 -4
  531. package/types/app/service/project.d.ts +7 -2
  532. package/types/app/type.d.ts +5 -3
  533. package/types/app/typings.d.ts +4 -2
  534. package/types/bundler/buildBE.d.ts +13 -0
  535. package/types/bundler/index.d.ts +4 -1
  536. package/types/bundler/state.d.ts +18 -0
  537. package/types/bundler/utils.d.ts +5 -0
  538. package/types/config/config.default.d.ts +33 -2
  539. package/types/index.d.ts +6 -5
  540. package/{fe/frontend/widgets/common/CRUD/CRUD.d.ts → types/packages/common/http/index.d.ts} +29 -10
  541. package/types/packages/common/i18n/default.d.ts +5 -0
  542. package/types/packages/common/i18n/en-US.d.ts +5 -0
  543. package/types/packages/common/i18n/index.d.ts +24 -0
  544. package/types/packages/common/i18n/types.d.ts +24 -0
  545. package/types/packages/common/index.d.ts +1 -0
  546. package/types/packages/core/index.d.ts +3 -3
  547. package/types/packages/core/loader/config.d.ts +6 -0
  548. package/types/packages/core/loader/controller.d.ts +14 -0
  549. package/types/packages/core/loader/extend.d.ts +6 -1
  550. package/types/packages/core/loader/middleware.d.ts +8 -0
  551. package/types/packages/core/loader/model.d.ts +22 -0
  552. package/types/packages/core/loader/router-schema.d.ts +15 -0
  553. package/types/packages/core/loader/router.d.ts +5 -0
  554. package/types/packages/core/loader/service.d.ts +14 -0
  555. package/types/packages/core/paths.d.ts +10 -7
  556. package/types/packages/core/types.d.ts +66 -3
  557. package/types/packages/utils/getAllFilesInFolder.d.ts +5 -0
  558. package/types/packages/utils/loadFile.d.ts +6 -0
  559. package/types/packages/utils/path.d.ts +18 -0
  560. package/types/scripts/vite-build/build.d.ts +24 -0
  561. package/types/scripts/vite-build/collect.d.ts +57 -0
  562. package/types/scripts/vite-build/constants.d.ts +6 -0
  563. package/types/scripts/vite-build/dts.d.ts +53 -0
  564. package/types/scripts/vite-build/index.d.ts +2 -0
  565. package/types/scripts/vite-build/normalize.d.ts +66 -0
  566. package/types/scripts/vite-build/plugins.d.ts +67 -0
  567. package/types/scripts/vite-build/resolve.d.ts +61 -0
  568. package/types/scripts/vite-build/types.d.ts +174 -0
  569. package/types/scripts/vite-build/utils.d.ts +35 -0
  570. package/types/typings/type.d.ts +1 -0
  571. package/cjs/app/README.md +0 -286
  572. package/cjs/app/data/signKey.js +0 -23
  573. package/esm/app/README.md +0 -286
  574. package/esm/app/data/signKey.js +0 -10
  575. package/fe/frontend/components/AsyncSelect/AsyncSelect.js +0 -32
  576. package/fe/frontend/components/AsyncSelect/index.d.ts +0 -4
  577. package/fe/frontend/components/AsyncSelect/index.js +0 -3
  578. package/fe/frontend/dash/Dashboard.d.ts +0 -7
  579. package/fe/frontend/dash/Dashboard.js +0 -73
  580. package/fe/frontend/dash/dash.entry.js +0 -93
  581. package/fe/frontend/dash/types.d.ts +0 -17
  582. package/fe/frontend/dash/types.js +0 -1
  583. package/fe/frontend/index.d.ts +0 -5
  584. package/fe/frontend/index.js +0 -2
  585. package/fe/frontend/main.css +0 -5
  586. package/fe/frontend/main.d.ts +0 -11
  587. package/fe/frontend/main.js +0 -19
  588. package/fe/frontend/testPage/index.js +0 -6
  589. package/fe/frontend/testPage/testPage.entry.d.ts +0 -2
  590. package/fe/frontend/testPage/testPage.entry.js +0 -3
  591. package/fe/frontend/typing/scalability.js +0 -1
  592. package/fe/frontend/typing/window.d.ts +0 -7
  593. package/fe/frontend/typing/window.js +0 -1
  594. package/fe/frontend/widgets/api/baseInfo.js +0 -15
  595. package/fe/frontend/widgets/common/CRUD/CRUD.js +0 -208
  596. package/fe/frontend/widgets/common/CRUD/index.d.ts +0 -2
  597. package/fe/frontend/widgets/common/CRUD/index.js +0 -1
  598. package/fe/frontend/widgets/common/auth/index.js +0 -20
  599. package/fe/frontend/widgets/common/generateMenuData.d.ts +0 -4
  600. package/fe/frontend/widgets/common/generateMenuData.js +0 -14
  601. package/fe/frontend/widgets/common/importComponent.js +0 -8
  602. package/fe/frontend/widgets/common/language.d.ts +0 -2
  603. package/fe/frontend/widgets/common/language.js +0 -9
  604. package/fe/frontend/widgets/common/logFn/index.js +0 -8
  605. package/fe/frontend/widgets/common/menu.js +0 -101
  606. package/fe/frontend/widgets/common/request.d.ts +0 -36
  607. package/fe/frontend/widgets/common/request.js +0 -133
  608. package/fe/frontend/widgets/components/BasePage/HeaderView.js +0 -16
  609. package/fe/frontend/widgets/components/Router/index.js +0 -11
  610. package/fe/frontend/widgets/components/Router/type.js +0 -1
  611. package/fe/frontend/widgets/defaultPages/Iframe/index.js +0 -14
  612. package/fe/frontend/widgets/defaultPages/Schema/components/CallCom/DetailPanel.js +0 -94
  613. package/fe/frontend/widgets/defaultPages/Schema/components/CallCom/PopFrom.js +0 -124
  614. package/fe/frontend/widgets/defaultPages/Schema/components/CallCom/data.d.ts +0 -3
  615. package/fe/frontend/widgets/defaultPages/Schema/components/CallCom/data.js +0 -6
  616. package/fe/frontend/widgets/defaultPages/Schema/components/SchemaSearch/index.js +0 -63
  617. package/fe/frontend/widgets/defaultPages/Schema/components/SchemaTable/index.js +0 -188
  618. package/fe/frontend/widgets/defaultPages/Schema/data/eventInfo.js +0 -6
  619. package/fe/frontend/widgets/defaultPages/Schema/data/index.js +0 -1
  620. package/fe/frontend/widgets/defaultPages/Schema/hooks/useComConfig.js +0 -14
  621. package/fe/frontend/widgets/defaultPages/Schema/index.js +0 -74
  622. package/fe/frontend/widgets/defaultPages/Schema/schemaType.js +0 -4
  623. package/fe/frontend/widgets/defaultPages/Schema/stores/schemaEventBus.js +0 -70
  624. package/fe/frontend/widgets/defaultPages/Schema/stores/schemaStore.js +0 -26
  625. package/fe/frontend/widgets/defaultPages/Schema/utils/fetchErrorShow.js +0 -8
  626. package/fe/frontend/widgets/defaultPages/Schema/utils/permissions.js +0 -3
  627. package/fe/frontend/widgets/defaultPages/Schema/utils/schemaConversion.d.ts +0 -3
  628. package/fe/frontend/widgets/defaultPages/Schema/utils/schemaConversion.js +0 -115
  629. package/fe/frontend/widgets/defaultPages/Schema/utils/validator.d.ts +0 -7
  630. package/fe/frontend/widgets/defaultPages/Schema/utils/validator.js +0 -36
  631. package/fe/frontend/widgets/defaultPages/SidebarSlotPage/SidebarSlotContainer.js +0 -38
  632. package/fe/frontend/widgets/defaultPages/SidebarSlotPage/index.js +0 -16
  633. package/fe/frontend/widgets/defaultPages/SidebarSlotPageTmp.js +0 -17
  634. package/fe/frontend/widgets/defaultPages/SlotPage/index.js +0 -26
  635. package/fe/frontend/widgets/defaultPages/Todo.d.ts +0 -3
  636. package/fe/frontend/widgets/defaultPages/Todo.js +0 -5
  637. package/fe/frontend/widgets/hooks/useCurrentMenuData.js +0 -28
  638. package/fe/frontend/widgets/hooks/useRouterParams.js +0 -11
  639. package/fe/frontend/widgets/store/mode.js +0 -37
  640. package/fe/model/types/data/button.js +0 -16
  641. package/fe/model/types/data/component.js +0 -11
  642. package/fe/model/types/data/fetchInfo.js +0 -1
  643. package/fe/model/types/data/schema.js +0 -1
  644. package/fe/model/types/data/search.js +0 -1
  645. package/fe/model/types/menuType.js +0 -1
  646. package/fe/model/types/model.js +0 -1
  647. package/fe/packages/common/array/index.js +0 -40
  648. package/fe/packages/common/cache/index.js +0 -1
  649. package/fe/packages/common/i18n/types.js +0 -1
  650. package/fe/packages/common/index.js +0 -9
  651. package/fe/packages/common/log/index.js +0 -176
  652. package/fe/packages/common/number/index.js +0 -10
  653. package/fe/packages/common/object/index.js +0 -25
  654. package/fe/packages/common/string/index.js +0 -17
  655. package/fe/packages/common/types/index.js +0 -1
  656. package/fe/packages/ui/react/components/Button/Button.js +0 -72
  657. package/fe/packages/ui/react/components/Button/SumbitButton.d.ts +0 -13
  658. package/fe/packages/ui/react/components/Button/SumbitButton.js +0 -25
  659. package/fe/packages/ui/react/components/Button/index.d.ts +0 -4
  660. package/fe/packages/ui/react/components/Button/index.js +0 -2
  661. package/fe/packages/ui/react/components/Checkbox/Checkbox.js +0 -39
  662. package/fe/packages/ui/react/components/Checkbox/index.d.ts +0 -2
  663. package/fe/packages/ui/react/components/Checkbox/index.js +0 -1
  664. package/fe/packages/ui/react/components/ConfirmDialog/ConfirmDialog.js +0 -11
  665. package/fe/packages/ui/react/components/ConfirmDialog/index.d.ts +0 -2
  666. package/fe/packages/ui/react/components/ConfirmDialog/index.js +0 -1
  667. package/fe/packages/ui/react/components/DataTable/ActionBtn.js +0 -94
  668. package/fe/packages/ui/react/components/DataTable/index.js +0 -155
  669. package/fe/packages/ui/react/components/Date/Calendar.js +0 -216
  670. package/fe/packages/ui/react/components/Date/Date.js +0 -201
  671. package/fe/packages/ui/react/components/Date/DateTestPage.js +0 -29
  672. package/fe/packages/ui/react/components/Date/LocaleContext.js +0 -8
  673. package/fe/packages/ui/react/components/Date/LocaleProvider.js +0 -24
  674. package/fe/packages/ui/react/components/Date/TimePicker.js +0 -78
  675. package/fe/packages/ui/react/components/Date/data.js +0 -4
  676. package/fe/packages/ui/react/components/Date/dateLocaleStore.js +0 -14
  677. package/fe/packages/ui/react/components/Date/dropdownPositioning.d.ts +0 -3
  678. package/fe/packages/ui/react/components/Date/dropdownPositioning.js +0 -12
  679. package/fe/packages/ui/react/components/Date/index.d.ts +0 -6
  680. package/fe/packages/ui/react/components/Date/index.js +0 -5
  681. package/fe/packages/ui/react/components/Date/locales.js +0 -21
  682. package/fe/packages/ui/react/components/Drawer/Drawer.js +0 -100
  683. package/fe/packages/ui/react/components/Drawer/index.d.ts +0 -3
  684. package/fe/packages/ui/react/components/Drawer/index.js +0 -1
  685. package/fe/packages/ui/react/components/Dropdown/Dropdown.js +0 -28
  686. package/fe/packages/ui/react/components/Dropdown/index.d.ts +0 -2
  687. package/fe/packages/ui/react/components/Dropdown/index.js +0 -1
  688. package/fe/packages/ui/react/components/Form/Form.js +0 -8
  689. package/fe/packages/ui/react/components/Form/FormItem.js +0 -43
  690. package/fe/packages/ui/react/components/Form/SchemaForm/data.js +0 -18
  691. package/fe/packages/ui/react/components/Form/SchemaForm/index.js +0 -79
  692. package/fe/packages/ui/react/components/Form/index.d.ts +0 -5
  693. package/fe/packages/ui/react/components/Form/index.js +0 -4
  694. package/fe/packages/ui/react/components/Form/useForm.d.ts +0 -3
  695. package/fe/packages/ui/react/components/Form/useForm.js +0 -1
  696. package/fe/packages/ui/react/components/ImagePreview/ImagePreview.js +0 -169
  697. package/fe/packages/ui/react/components/ImagePreview/PreviewImage.js +0 -28
  698. package/fe/packages/ui/react/components/ImagePreview/index.d.ts +0 -3
  699. package/fe/packages/ui/react/components/ImagePreview/index.js +0 -2
  700. package/fe/packages/ui/react/components/Input/Input.js +0 -61
  701. package/fe/packages/ui/react/components/Input/index.d.ts +0 -2
  702. package/fe/packages/ui/react/components/Input/index.js +0 -1
  703. package/fe/packages/ui/react/components/InputNumber/InputNumber.js +0 -144
  704. package/fe/packages/ui/react/components/InputNumber/index.d.ts +0 -2
  705. package/fe/packages/ui/react/components/InputNumber/index.js +0 -1
  706. package/fe/packages/ui/react/components/InputNumber/inputNumberUtils.js +0 -63
  707. package/fe/packages/ui/react/components/InputNumber/inputNumberUtils.test.js +0 -27
  708. package/fe/packages/ui/react/components/Label/Label.js +0 -35
  709. package/fe/packages/ui/react/components/Label/index.d.ts +0 -3
  710. package/fe/packages/ui/react/components/Label/index.js +0 -2
  711. package/fe/packages/ui/react/components/Menu/Menu.js +0 -102
  712. package/fe/packages/ui/react/components/Menu/MenuContext.js +0 -97
  713. package/fe/packages/ui/react/components/Menu/MenuItem.js +0 -33
  714. package/fe/packages/ui/react/components/Menu/SubMenu.js +0 -169
  715. package/fe/packages/ui/react/components/Menu/index.d.ts +0 -9
  716. package/fe/packages/ui/react/components/Menu/index.js +0 -5
  717. package/fe/packages/ui/react/components/Menu/menuTypes.js +0 -1
  718. package/fe/packages/ui/react/components/Menu/utils.js +0 -7
  719. package/fe/packages/ui/react/components/Message/Message.js +0 -58
  720. package/fe/packages/ui/react/components/Message/MessageManager.js +0 -90
  721. package/fe/packages/ui/react/components/Message/data.js +0 -1
  722. package/fe/packages/ui/react/components/Message/index.d.ts +0 -3
  723. package/fe/packages/ui/react/components/Message/index.js +0 -1
  724. package/fe/packages/ui/react/components/Modal/Modal.js +0 -14
  725. package/fe/packages/ui/react/components/Modal/ModalManager.js +0 -90
  726. package/fe/packages/ui/react/components/Modal/index.d.ts +0 -4
  727. package/fe/packages/ui/react/components/Modal/index.js +0 -2
  728. package/fe/packages/ui/react/components/Overlay/Overlay.js +0 -53
  729. package/fe/packages/ui/react/components/Overlay/index.d.ts +0 -3
  730. package/fe/packages/ui/react/components/Overlay/index.js +0 -1
  731. package/fe/packages/ui/react/components/Pagination/Pagination.js +0 -88
  732. package/fe/packages/ui/react/components/Pagination/index.d.ts +0 -2
  733. package/fe/packages/ui/react/components/Pagination/index.js +0 -1
  734. package/fe/packages/ui/react/components/Popup/Popup.js +0 -81
  735. package/fe/packages/ui/react/components/Popup/index.d.ts +0 -2
  736. package/fe/packages/ui/react/components/Popup/index.js +0 -1
  737. package/fe/packages/ui/react/components/Search/Search.js +0 -12
  738. package/fe/packages/ui/react/components/Search/index.d.ts +0 -2
  739. package/fe/packages/ui/react/components/Search/index.js +0 -1
  740. package/fe/packages/ui/react/components/Select/Select.js +0 -123
  741. package/fe/packages/ui/react/components/Select/dropdownPositioning.d.ts +0 -3
  742. package/fe/packages/ui/react/components/Select/dropdownPositioning.js +0 -13
  743. package/fe/packages/ui/react/components/Select/index.d.ts +0 -2
  744. package/fe/packages/ui/react/components/Select/index.js +0 -1
  745. package/fe/packages/ui/react/components/Skeleton/Skeleton.js +0 -31
  746. package/fe/packages/ui/react/components/Skeleton/index.d.ts +0 -3
  747. package/fe/packages/ui/react/components/Skeleton/index.js +0 -1
  748. package/fe/packages/ui/react/components/Switch/Switch.js +0 -22
  749. package/fe/packages/ui/react/components/Switch/index.d.ts +0 -2
  750. package/fe/packages/ui/react/components/Switch/index.js +0 -1
  751. package/fe/packages/ui/react/components/TableSearch/TableSearch.js +0 -121
  752. package/fe/packages/ui/react/components/TableSearch/index.d.ts +0 -2
  753. package/fe/packages/ui/react/components/TableSearch/index.js +0 -1
  754. package/fe/packages/ui/react/components/TableSearch/lang.js +0 -14
  755. package/fe/packages/ui/react/components/TableSearch/tableSearchLocaleStore.js +0 -11
  756. package/fe/packages/ui/react/components/Textarea/Textarea.js +0 -37
  757. package/fe/packages/ui/react/components/Textarea/index.d.ts +0 -2
  758. package/fe/packages/ui/react/components/Textarea/index.js +0 -1
  759. package/fe/packages/ui/react/components/Tooltip/Tooltip.js +0 -79
  760. package/fe/packages/ui/react/components/Tooltip/index.d.ts +0 -2
  761. package/fe/packages/ui/react/components/Tooltip/index.js +0 -1
  762. package/fe/packages/ui/react/components/TreeSelect/TreeSelect.js +0 -160
  763. package/fe/packages/ui/react/components/TreeSelect/index.d.ts +0 -2
  764. package/fe/packages/ui/react/components/TreeSelect/index.js +0 -1
  765. package/fe/packages/ui/react/components/Upload/ImageUpload.js +0 -75
  766. package/fe/packages/ui/react/components/Upload/Upload.js +0 -6
  767. package/fe/packages/ui/react/components/Upload/index.d.ts +0 -3
  768. package/fe/packages/ui/react/components/Upload/index.js +0 -2
  769. package/fe/packages/ui/react/components/breadcrumb/breadcrumb.js +0 -81
  770. package/fe/packages/ui/react/components/breadcrumb/index.d.ts +0 -2
  771. package/fe/packages/ui/react/components/breadcrumb/index.js +0 -1
  772. package/fe/packages/ui/react/components/hooks/useDropdownPositioning.js +0 -137
  773. package/fe/packages/ui/react/components/hooks/useInputController.js +0 -45
  774. package/fe/packages/ui/react/components/index.d.ts +0 -30
  775. package/fe/packages/ui/react/components/index.js +0 -29
  776. package/fe/packages/ui/react/components/table/index.d.ts +0 -2
  777. package/fe/packages/ui/react/components/table/index.js +0 -1
  778. package/fe/packages/ui/react/components/table/table.js +0 -20
  779. package/fe/packages/ui/react/components/testPage/MenuTestPage.js +0 -104
  780. package/fe/packages/ui/react/components/testPage/index.js +0 -314
  781. package/fe/packages/ui/react/hooks/useBreadcrumb.d.ts +0 -10
  782. package/fe/packages/ui/react/hooks/useBreadcrumb.js +0 -2
  783. package/fe/packages/ui/react/hooks/useExecuteOnce.js +0 -57
  784. package/fe/packages/ui/react/hooks/useInit.js +0 -9
  785. package/fe/packages/ui/react/hooks/useLanguage.d.ts +0 -2
  786. package/fe/packages/ui/react/hooks/useLanguage.js +0 -4
  787. package/fe/packages/ui/react/hooks/usePagination.js +0 -27
  788. package/fe/packages/ui/react/hooks/useRefState.js +0 -29
  789. package/fe/packages/ui/react/hooks/useWatch.js +0 -87
  790. package/fe/packages/ui/react/hooks/useWatch.test.js +0 -22
  791. package/fe/packages/ui/react/i18n/I18nProvider.js +0 -25
  792. package/fe/packages/ui/react/i18n/index.d.ts +0 -4
  793. package/fe/packages/ui/react/i18n/index.js +0 -3
  794. package/fe/packages/ui/react/i18n/useI18n.d.ts +0 -13
  795. package/fe/packages/ui/react/i18n/useI18n.js +0 -18
  796. package/fe/packages/ui/react/index.d.ts +0 -5
  797. package/fe/packages/ui/react/index.js +0 -6
  798. package/fe/packages/ui/react/lib/createStoreHook.js +0 -6
  799. package/fe/packages/ui/react/lib/export.js +0 -138
  800. package/fe/packages/ui/react/lib/utils.js +0 -70
  801. package/fe/packages/ui/react/stores/breadcrumb.js +0 -66
  802. package/fe/packages/ui/react/stores/language.d.ts +0 -4
  803. package/fe/packages/ui/react/stores/language.js +0 -2
  804. package/fe/packages/ui/react/types/index.js +0 -1
  805. package/fe/typings/type.js +0 -1
  806. package/types/app/data/signKey.d.ts +0 -1
  807. /package/fe/frontend/{dash → apps/dash}/dash.entry.d.ts +0 -0
  808. /package/fe/frontend/{testPage → apps/ui-components}/index.d.ts +0 -0
  809. /package/fe/frontend/{widgets → src}/common/auth/index.d.ts +0 -0
  810. /package/fe/frontend/{widgets → src}/components/Router/type.d.ts +0 -0
  811. /package/fe/frontend/{widgets → src}/defaultPages/Iframe/index.d.ts +0 -0
  812. /package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/components/SchemaSearch/index.d.ts +0 -0
  813. /package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/data/eventInfo.d.ts +0 -0
  814. /package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/data/index.d.ts +0 -0
  815. /package/fe/frontend/{widgets/defaultPages/Schema → src/defaultPages/SchemaPage}/utils/permissions.d.ts +0 -0
  816. /package/fe/frontend/{widgets → src}/defaultPages/SidebarSlotPage/index.d.ts +0 -0
  817. /package/fe/frontend/{widgets → src}/defaultPages/SidebarSlotPageTmp.d.ts +0 -0
  818. /package/fe/frontend/{widgets → src}/defaultPages/SlotPage/index.d.ts +0 -0
  819. /package/fe/frontend/{widgets → src}/hooks/useCurrentMenuData.d.ts +0 -0
  820. /package/fe/frontend/{widgets → src}/hooks/useRouterParams.d.ts +0 -0
  821. /package/fe/packages/{ui/react → react}/hooks/useExecuteOnce.d.ts +0 -0
  822. /package/fe/packages/{ui/react → react}/hooks/useInit.d.ts +0 -0
  823. /package/fe/packages/{ui/react → react}/hooks/usePagination.d.ts +0 -0
  824. /package/fe/packages/{ui/react → react}/hooks/useWatch.d.ts +0 -0
  825. /package/fe/packages/{ui/react → react}/hooks/useWatch.test.d.ts +0 -0
  826. /package/fe/packages/{ui/react → react/ui}/assets/table/no-result.svg +0 -0
  827. /package/fe/packages/{ui/react → react/ui}/components/ConfirmDialog/ConfirmDialog.d.ts +0 -0
  828. /package/fe/packages/{ui/react → react/ui}/components/Date/Date.d.ts +0 -0
  829. /package/fe/packages/{ui/react → react/ui}/components/Date/DateTestPage.d.ts +0 -0
  830. /package/fe/packages/{ui/react → react/ui}/components/Date/LocaleContext.d.ts +0 -0
  831. /package/fe/packages/{ui/react → react/ui}/components/Date/TimePicker.d.ts +0 -0
  832. /package/fe/packages/{ui/react → react/ui}/components/Date/data.d.ts +0 -0
  833. /package/fe/packages/{ui/react → react/ui}/components/Date/locales.d.ts +0 -0
  834. /package/fe/packages/{ui/react → react/ui}/components/ImagePreview/ImagePreview.d.ts +0 -0
  835. /package/fe/packages/{ui/react → react/ui}/components/InputNumber/inputNumberUtils.d.ts +0 -0
  836. /package/fe/packages/{ui/react → react/ui}/components/InputNumber/inputNumberUtils.test.d.ts +0 -0
  837. /package/fe/packages/{ui/react → react/ui}/components/Menu/Menu.d.ts +0 -0
  838. /package/fe/packages/{ui/react → react/ui}/components/Menu/MenuContext.d.ts +0 -0
  839. /package/fe/packages/{ui/react → react/ui}/components/Menu/MenuItem.d.ts +0 -0
  840. /package/fe/packages/{ui/react → react/ui}/components/Menu/SubMenu.d.ts +0 -0
  841. /package/fe/packages/{ui/react → react/ui}/components/Menu/utils.d.ts +0 -0
  842. /package/fe/packages/{ui/react → react/ui}/components/Message/data.d.ts +0 -0
  843. /package/fe/packages/{ui/react → react/ui}/components/Pagination/Pagination.d.ts +0 -0
  844. /package/fe/packages/{ui/react → react/ui}/components/Popup/Popup.d.ts +0 -0
  845. /package/fe/packages/{ui/react → react/ui}/components/TableSearch/lang.d.ts +0 -0
  846. /package/fe/packages/{ui/react → react/ui}/components/Textarea/Textarea.d.ts +0 -0
  847. /package/fe/packages/{ui/react → react/ui}/components/Tooltip/Tooltip.d.ts +0 -0
  848. /package/fe/packages/{ui/react → react/ui}/components/TreeSelect/TreeSelect.d.ts +0 -0
  849. /package/fe/packages/{ui/react → react/ui}/components/Upload/ImageUpload.d.ts +0 -0
  850. /package/fe/packages/{ui/react → react/ui}/components/breadcrumb/breadcrumb.d.ts +0 -0
  851. /package/fe/packages/{ui/react → react/ui}/components/hooks/useDropdownPositioning.d.ts +0 -0
  852. /package/fe/packages/{ui/react → react/ui}/components/hooks/useInputController.d.ts +0 -0
  853. /package/fe/packages/{ui/react → react/ui}/components/testPage/MenuTestPage.d.ts +0 -0
  854. /package/fe/packages/{ui/react → react/ui}/components/testPage/index.d.ts +0 -0
  855. /package/fe/packages/{ui/react → react/ui}/lib/utils.d.ts +0 -0
  856. /package/fe/packages/{ui/react → react/ui}/types/index.d.ts +0 -0
@@ -0,0 +1,1612 @@
1
+ import { Loading } from "../Loading/Loading.js";
2
+ import { Button } from "../Button/Button.js";
3
+ import { Breadcrumb, BreadcrumbItem, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from "../breadcrumb/breadcrumb.js";
4
+ import { Card } from "../Card/Card.js";
5
+ import { Checkbox } from "../Checkbox/Checkbox.js";
6
+ import { Modal } from "../Modal/Modal.js";
7
+ import { modal } from "../Modal/ModalManager.js";
8
+ import { ConfirmDialog } from "../ConfirmDialog/ConfirmDialog.js";
9
+ import { Input } from "../Input/Input.js";
10
+ import { Select } from "../Select/Select.js";
11
+ import { Pagination } from "../Pagination/Pagination.js";
12
+ import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "../table/table.js";
13
+ import { Skeleton } from "../Skeleton/Skeleton.js";
14
+ import { Dropdown } from "../Dropdown/Dropdown.js";
15
+ import { DataTable } from "../DataTable/index.js";
16
+ import { Drawer } from "../Drawer/Drawer.js";
17
+ import { Form } from "../Form/Form.js";
18
+ import { Label } from "../Label/Label.js";
19
+ import { FormItem } from "../Form/FormItem.js";
20
+ import { useForm } from "../Form/useForm.js";
21
+ import { SchemaForm } from "../Form/SchemaForm/index.js";
22
+ import { PreviewImage } from "../ImagePreview/PreviewImage.js";
23
+ import { InputNumber } from "../InputNumber/InputNumber.js";
24
+ import { Layout } from "../Layout/Layout.js";
25
+ import { message } from "../Message/MessageManager.js";
26
+ import { Notification } from "../Notification/Notification.js";
27
+ import { RadioGroup } from "../Radio/RadioGroup.js";
28
+ import { Radio } from "../Radio/Radio.js";
29
+ import Search from "../Search/Search.js";
30
+ import { Switch } from "../Switch/Switch.js";
31
+ import TableSearch from "../TableSearch/TableSearch.js";
32
+ import { Tabs } from "../Tabs/Tabs.js";
33
+ import { Textarea } from "../Textarea/Textarea.js";
34
+ import { Tooltip } from "../Tooltip/Tooltip.js";
35
+ import { TreeSelect } from "../TreeSelect/TreeSelect.js";
36
+ import { ImageUpload } from "../Upload/ImageUpload.js";
37
+ import "../index.js";
38
+ import DateTestPage from "../Date/DateTestPage.js";
39
+ import MenuTestPage from "./MenuTestPage.js";
40
+ import React, { useEffect, useRef, useState } from "react";
41
+ import { jsx, jsxs } from "react/jsx-runtime";
42
+ //#region packages/react/ui/components/testPage/index.tsx
43
+ function ThemeSwitcher() {
44
+ const [mode, setMode] = useState("dark");
45
+ const [theme, setTheme] = useState("default");
46
+ useEffect(() => {
47
+ const root = document.documentElement;
48
+ const previousTheme = root.getAttribute("data-theme");
49
+ const previousDark = root.classList.contains("dark");
50
+ root.classList.toggle("dark", mode === "dark");
51
+ if (theme === "default") root.removeAttribute("data-theme");
52
+ else root.setAttribute("data-theme", theme);
53
+ return () => {
54
+ root.classList.toggle("dark", previousDark);
55
+ if (previousTheme) root.setAttribute("data-theme", previousTheme);
56
+ else root.removeAttribute("data-theme");
57
+ };
58
+ }, [mode, theme]);
59
+ return /* @__PURE__ */ jsx(Section, {
60
+ title: "Theme",
61
+ children: /* @__PURE__ */ jsxs("div", {
62
+ className: "flex w-full flex-wrap items-center gap-6 rounded-xl border border-border bg-background p-4",
63
+ children: [
64
+ /* @__PURE__ */ jsxs("div", {
65
+ className: "flex items-center gap-2",
66
+ children: [
67
+ /* @__PURE__ */ jsx("span", {
68
+ className: "text-sm text-muted-foreground",
69
+ children: "模式"
70
+ }),
71
+ /* @__PURE__ */ jsx(Button, {
72
+ variant: mode === "light" ? "primary" : "default",
73
+ size: "sm",
74
+ onClick: () => setMode("light"),
75
+ children: "Light"
76
+ }),
77
+ /* @__PURE__ */ jsx(Button, {
78
+ variant: mode === "dark" ? "primary" : "default",
79
+ size: "sm",
80
+ onClick: () => setMode("dark"),
81
+ children: "Dark"
82
+ })
83
+ ]
84
+ }),
85
+ /* @__PURE__ */ jsxs("div", {
86
+ className: "flex items-center gap-2",
87
+ children: [
88
+ /* @__PURE__ */ jsx("span", {
89
+ className: "text-sm text-muted-foreground",
90
+ children: "主题"
91
+ }),
92
+ /* @__PURE__ */ jsx(Button, {
93
+ variant: theme === "default" ? "primary" : "default",
94
+ size: "sm",
95
+ onClick: () => setTheme("default"),
96
+ children: "Default"
97
+ }),
98
+ /* @__PURE__ */ jsx(Button, {
99
+ variant: theme === "green" ? "primary" : "default",
100
+ size: "sm",
101
+ onClick: () => setTheme("green"),
102
+ children: "Green"
103
+ }),
104
+ /* @__PURE__ */ jsx(Button, {
105
+ variant: theme === "gray" ? "primary" : "default",
106
+ size: "sm",
107
+ onClick: () => setTheme("gray"),
108
+ children: "Gray"
109
+ })
110
+ ]
111
+ }),
112
+ /* @__PURE__ */ jsxs("div", {
113
+ className: "text-sm text-muted-foreground",
114
+ children: [
115
+ "当前: ",
116
+ mode,
117
+ " / ",
118
+ theme
119
+ ]
120
+ })
121
+ ]
122
+ })
123
+ });
124
+ }
125
+ function Section({ title, children }) {
126
+ return /* @__PURE__ */ jsxs("div", {
127
+ className: "mb-8",
128
+ children: [/* @__PURE__ */ jsx("h2", {
129
+ className: "text-lg font-semibold mb-3 border-b pb-1",
130
+ children: title
131
+ }), /* @__PURE__ */ jsx("div", {
132
+ className: "flex flex-wrap gap-3 items-start",
133
+ children
134
+ })]
135
+ });
136
+ }
137
+ function ButtonDemo() {
138
+ const [loading, setLoading] = useState(false);
139
+ return /* @__PURE__ */ jsxs(Section, {
140
+ title: "Button",
141
+ children: [
142
+ /* @__PURE__ */ jsx(Button, { children: "default" }),
143
+ /* @__PURE__ */ jsx(Button, {
144
+ variant: "primary",
145
+ children: "primary"
146
+ }),
147
+ /* @__PURE__ */ jsx(Button, {
148
+ variant: "dashed",
149
+ children: "dashed"
150
+ }),
151
+ /* @__PURE__ */ jsx(Button, {
152
+ variant: "text",
153
+ children: "text"
154
+ }),
155
+ /* @__PURE__ */ jsx(Button, {
156
+ variant: "link",
157
+ href: "#button",
158
+ children: "link"
159
+ }),
160
+ /* @__PURE__ */ jsx(Button, {
161
+ state: "danger",
162
+ children: "danger"
163
+ }),
164
+ /* @__PURE__ */ jsx(Button, {
165
+ variant: "primary",
166
+ state: "danger",
167
+ children: "primary danger"
168
+ }),
169
+ /* @__PURE__ */ jsx("div", {
170
+ className: " bg-red-300 p-1.5",
171
+ children: /* @__PURE__ */ jsx(Button, {
172
+ state: "ghost",
173
+ children: "ghost"
174
+ })
175
+ }),
176
+ /* @__PURE__ */ jsx(Button, {
177
+ variant: "primary",
178
+ state: "ghost",
179
+ children: "primary ghost"
180
+ }),
181
+ /* @__PURE__ */ jsx(Button, {
182
+ disabled: true,
183
+ children: "disabled"
184
+ }),
185
+ /* @__PURE__ */ jsx(Button, {
186
+ loading,
187
+ onClick: () => {
188
+ setLoading(true);
189
+ setTimeout(() => setLoading(false), 2e3);
190
+ },
191
+ children: "loading (click)"
192
+ }),
193
+ /* @__PURE__ */ jsx(Button, {
194
+ size: "sm",
195
+ children: "sm"
196
+ }),
197
+ /* @__PURE__ */ jsx(Button, {
198
+ size: "md",
199
+ children: "md"
200
+ }),
201
+ /* @__PURE__ */ jsx(Button, {
202
+ size: "lg",
203
+ children: "lg"
204
+ })
205
+ ]
206
+ });
207
+ }
208
+ function InputDemo() {
209
+ return /* @__PURE__ */ jsxs(Section, {
210
+ title: "Input",
211
+ children: [
212
+ /* @__PURE__ */ jsx(Input, { placeholder: "普通输入框" }),
213
+ /* @__PURE__ */ jsx(Input, {
214
+ type: "password",
215
+ placeholder: "密码输入框"
216
+ }),
217
+ /* @__PURE__ */ jsx(Input, {
218
+ disabled: true,
219
+ placeholder: "禁用状态"
220
+ })
221
+ ]
222
+ });
223
+ }
224
+ function InputNumberDemo() {
225
+ const [price, setPrice] = useState(12.5);
226
+ const [ratio, setRatio] = useState(.25);
227
+ return /* @__PURE__ */ jsxs(Section, {
228
+ title: "InputNumber",
229
+ children: [
230
+ /* @__PURE__ */ jsx(InputNumber, {
231
+ placeholder: "基础数字输入",
232
+ className: "w-48"
233
+ }),
234
+ /* @__PURE__ */ jsx(InputNumber, {
235
+ value: price,
236
+ onChange: setPrice,
237
+ precision: 2,
238
+ min: 0,
239
+ max: 9999,
240
+ placeholder: "价格",
241
+ addonAfter: /* @__PURE__ */ jsx("span", {
242
+ className: "text-xs text-muted-foreground",
243
+ children: "CNY"
244
+ }),
245
+ className: "w-56"
246
+ }),
247
+ /* @__PURE__ */ jsx(InputNumber, {
248
+ value: ratio,
249
+ onChange: setRatio,
250
+ precision: 2,
251
+ step: .05,
252
+ min: 0,
253
+ max: 1,
254
+ allowStep: true,
255
+ placeholder: "比例",
256
+ className: "w-48"
257
+ }),
258
+ /* @__PURE__ */ jsx(InputNumber, {
259
+ defaultValue: 10,
260
+ step: .5,
261
+ precision: 1,
262
+ allowStep: true,
263
+ allowClear: true,
264
+ className: "w-48"
265
+ }),
266
+ /* @__PURE__ */ jsx(InputNumber, {
267
+ disabled: true,
268
+ defaultValue: 88.8,
269
+ precision: 1,
270
+ className: "w-48"
271
+ })
272
+ ]
273
+ });
274
+ }
275
+ function TextareaDemo() {
276
+ const [val, setVal] = useState("");
277
+ return /* @__PURE__ */ jsxs(Section, {
278
+ title: "Textarea",
279
+ children: [/* @__PURE__ */ jsx(Textarea, {
280
+ placeholder: "请输入内容(最多 500 字)",
281
+ value: val,
282
+ onChange: (v) => setVal(v),
283
+ className: "w-80"
284
+ }), /* @__PURE__ */ jsx(Textarea, {
285
+ placeholder: "不显示计数",
286
+ showCount: false,
287
+ className: "w-80"
288
+ })]
289
+ });
290
+ }
291
+ function SelectDemo() {
292
+ const [val, setVal] = useState(void 0);
293
+ const options = [
294
+ {
295
+ label: "选项 A",
296
+ value: "a"
297
+ },
298
+ {
299
+ label: "选项 B",
300
+ value: "b"
301
+ },
302
+ {
303
+ label: "选项 C",
304
+ value: "c"
305
+ }
306
+ ];
307
+ return /* @__PURE__ */ jsxs(Section, {
308
+ title: "Select",
309
+ children: [
310
+ /* @__PURE__ */ jsx(Select, {
311
+ options,
312
+ value: val,
313
+ onChange: setVal,
314
+ placeholder: "请选择",
315
+ className: "w-40"
316
+ }),
317
+ /* @__PURE__ */ jsx(Select, {
318
+ options,
319
+ placeholder: "不可搜索",
320
+ searchable: false,
321
+ className: "w-40"
322
+ }),
323
+ /* @__PURE__ */ jsx(Select, {
324
+ options,
325
+ placeholder: "不可清除",
326
+ clearable: false,
327
+ className: "w-40"
328
+ }),
329
+ /* @__PURE__ */ jsx(Select, {
330
+ options,
331
+ disabled: true,
332
+ placeholder: "禁用",
333
+ className: "w-40"
334
+ }),
335
+ /* @__PURE__ */ jsxs("div", {
336
+ className: "relative w-64 rounded-lg border border-border bg-muted/30 p-4",
337
+ children: [/* @__PURE__ */ jsx("div", {
338
+ className: "mb-2 text-sm text-muted-foreground",
339
+ children: "parent popup container"
340
+ }), /* @__PURE__ */ jsx(Select, {
341
+ options,
342
+ placeholder: "挂载到父元素",
343
+ getPopupContainer: "parent",
344
+ className: "w-full"
345
+ })]
346
+ })
347
+ ]
348
+ });
349
+ }
350
+ function CheckboxDemo() {
351
+ const [checked, setChecked] = useState(false);
352
+ return /* @__PURE__ */ jsxs(Section, {
353
+ title: "Checkbox",
354
+ children: [
355
+ /* @__PURE__ */ jsxs("label", {
356
+ className: "flex items-center gap-2 cursor-pointer",
357
+ children: [/* @__PURE__ */ jsx(Checkbox, {
358
+ checked,
359
+ onChange: (c) => setChecked(c)
360
+ }), /* @__PURE__ */ jsxs("span", { children: ["受控: ", checked ? "选中" : "未选中"] })]
361
+ }),
362
+ /* @__PURE__ */ jsxs("label", {
363
+ className: "flex items-center gap-2 cursor-pointer",
364
+ children: [/* @__PURE__ */ jsx(Checkbox, { defaultChecked: true }), /* @__PURE__ */ jsx("span", { children: "非受控默认选中" })]
365
+ }),
366
+ /* @__PURE__ */ jsxs("label", {
367
+ className: "flex items-center gap-2 cursor-pointer",
368
+ children: [/* @__PURE__ */ jsx(Checkbox, { indeterminate: true }), /* @__PURE__ */ jsx("span", { children: "半选状态" })]
369
+ }),
370
+ /* @__PURE__ */ jsxs("label", {
371
+ className: "flex items-center gap-2 cursor-pointer",
372
+ children: [/* @__PURE__ */ jsx(Checkbox, { disabled: true }), /* @__PURE__ */ jsx("span", { children: "禁用" })]
373
+ })
374
+ ]
375
+ });
376
+ }
377
+ function SwitchDemo() {
378
+ const [on, setOn] = useState(false);
379
+ return /* @__PURE__ */ jsxs(Section, {
380
+ title: "Switch",
381
+ children: [
382
+ /* @__PURE__ */ jsx(Switch, {
383
+ checked: on,
384
+ onChange: setOn
385
+ }),
386
+ /* @__PURE__ */ jsx("span", {
387
+ className: "self-center text-sm",
388
+ children: on ? "ON" : "OFF"
389
+ }),
390
+ /* @__PURE__ */ jsx(Switch, { defaultChecked: true }),
391
+ /* @__PURE__ */ jsx(Switch, { disabled: true }),
392
+ /* @__PURE__ */ jsx(Switch, {
393
+ disabled: true,
394
+ checked: true
395
+ })
396
+ ]
397
+ });
398
+ }
399
+ function TooltipDemo() {
400
+ return /* @__PURE__ */ jsx(Section, {
401
+ title: "Tooltip",
402
+ children: [
403
+ "top",
404
+ "bottom",
405
+ "left",
406
+ "right"
407
+ ].map((p) => /* @__PURE__ */ jsx(Tooltip, {
408
+ content: `placement: ${p}`,
409
+ placement: p,
410
+ children: /* @__PURE__ */ jsx(Button, { children: p })
411
+ }, p))
412
+ });
413
+ }
414
+ function DropdownDemo() {
415
+ const items = [
416
+ {
417
+ key: "edit",
418
+ label: "编辑",
419
+ onClick: () => console.log("edit")
420
+ },
421
+ {
422
+ key: "copy",
423
+ label: "复制",
424
+ onClick: () => console.log("copy")
425
+ },
426
+ {
427
+ key: "delete",
428
+ label: "删除",
429
+ danger: true,
430
+ onClick: () => console.log("delete")
431
+ }
432
+ ];
433
+ return /* @__PURE__ */ jsxs(Section, {
434
+ title: "Dropdown",
435
+ children: [/* @__PURE__ */ jsx(Dropdown, {
436
+ items,
437
+ children: /* @__PURE__ */ jsx(Button, { children: "操作 ▾" })
438
+ }), /* @__PURE__ */ jsx(Dropdown, {
439
+ items,
440
+ placement: "bottom-start",
441
+ children: /* @__PURE__ */ jsx(Button, {
442
+ variant: "text",
443
+ children: "bottom-start ▾"
444
+ })
445
+ })]
446
+ });
447
+ }
448
+ function MessageDemo() {
449
+ return /* @__PURE__ */ jsxs(Section, {
450
+ title: "Message (imperative)",
451
+ children: [
452
+ /* @__PURE__ */ jsx(Button, {
453
+ onClick: () => message.success("操作成功"),
454
+ children: "success"
455
+ }),
456
+ /* @__PURE__ */ jsx(Button, {
457
+ onClick: () => message.error("操作失败"),
458
+ children: "error"
459
+ }),
460
+ /* @__PURE__ */ jsx(Button, {
461
+ onClick: () => message.warning("警告信息"),
462
+ children: "warning"
463
+ }),
464
+ /* @__PURE__ */ jsx(Button, {
465
+ onClick: () => message.info("提示信息"),
466
+ children: "info"
467
+ }),
468
+ /* @__PURE__ */ jsx(Button, {
469
+ onClick: () => {
470
+ const id = message.success("5秒后关闭", { duration: 5e3 });
471
+ setTimeout(() => message.close(id), 2e3);
472
+ },
473
+ children: "提前关闭"
474
+ })
475
+ ]
476
+ });
477
+ }
478
+ function ModalDemo() {
479
+ const [open, setOpen] = useState(false);
480
+ return /* @__PURE__ */ jsxs(Section, {
481
+ title: "Modal",
482
+ children: [
483
+ /* @__PURE__ */ jsx(Button, {
484
+ onClick: () => setOpen(true),
485
+ children: "JSX Modal"
486
+ }),
487
+ /* @__PURE__ */ jsx(Button, {
488
+ onClick: () => modal.open({
489
+ title: "命令式弹窗",
490
+ content: /* @__PURE__ */ jsx("p", { children: "这是命令式打开的弹窗内容。" })
491
+ }),
492
+ children: "modal.open"
493
+ }),
494
+ /* @__PURE__ */ jsx(Button, {
495
+ onClick: () => modal.confirm({
496
+ title: "确认操作",
497
+ content: "确定要执行此操作吗?",
498
+ onOk: () => {
499
+ message.success("已确认");
500
+ },
501
+ onCancel: () => {
502
+ message.info("已取消");
503
+ }
504
+ }),
505
+ children: "modal.confirm"
506
+ }),
507
+ /* @__PURE__ */ jsxs(Modal, {
508
+ open,
509
+ onClose: () => setOpen(false),
510
+ title: "JSX 弹窗",
511
+ children: [/* @__PURE__ */ jsx("p", { children: "这是一个使用 JSX 控制的弹窗。" }), /* @__PURE__ */ jsx("div", {
512
+ className: "mt-4 flex justify-end gap-2",
513
+ children: /* @__PURE__ */ jsx(Button, {
514
+ onClick: () => setOpen(false),
515
+ children: "关闭"
516
+ })
517
+ })]
518
+ })
519
+ ]
520
+ });
521
+ }
522
+ function DrawerDemo() {
523
+ const [placement, setPlacement] = useState("right");
524
+ const [open, setOpen] = useState(false);
525
+ const openDrawer = (nextPlacement) => {
526
+ setPlacement(nextPlacement);
527
+ setOpen(true);
528
+ };
529
+ return /* @__PURE__ */ jsxs(Section, {
530
+ title: "Drawer",
531
+ children: [
532
+ /* @__PURE__ */ jsx(Button, {
533
+ onClick: () => openDrawer("left"),
534
+ children: "left"
535
+ }),
536
+ /* @__PURE__ */ jsx(Button, {
537
+ onClick: () => openDrawer("right"),
538
+ children: "right"
539
+ }),
540
+ /* @__PURE__ */ jsx(Button, {
541
+ onClick: () => openDrawer("top"),
542
+ children: "top"
543
+ }),
544
+ /* @__PURE__ */ jsx(Button, {
545
+ onClick: () => openDrawer("bottom"),
546
+ children: "bottom"
547
+ }),
548
+ /* @__PURE__ */ jsx(Button, {
549
+ onClick: () => openDrawer("right"),
550
+ variant: "primary",
551
+ children: "打开详情"
552
+ }),
553
+ /* @__PURE__ */ jsx(Drawer, {
554
+ open,
555
+ onClose: () => setOpen(false),
556
+ title: `Drawer ${placement}`,
557
+ placement,
558
+ width: 420,
559
+ height: 320,
560
+ footer: /* @__PURE__ */ jsxs("div", {
561
+ className: "flex justify-end gap-2",
562
+ children: [/* @__PURE__ */ jsx(Button, {
563
+ onClick: () => setOpen(false),
564
+ children: "取消"
565
+ }), /* @__PURE__ */ jsx(Button, {
566
+ variant: "primary",
567
+ onClick: () => {
568
+ message.success("已保存");
569
+ setOpen(false);
570
+ },
571
+ children: "保存"
572
+ })]
573
+ }),
574
+ children: /* @__PURE__ */ jsxs("div", {
575
+ className: "space-y-4",
576
+ children: [/* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
577
+ className: "mb-1 text-sm font-medium text-foreground",
578
+ children: "外部 children"
579
+ }), /* @__PURE__ */ jsx("p", {
580
+ className: "text-sm leading-6 text-muted-foreground",
581
+ children: "这里的内容完全由调用方定义,可以放表单、列表、详情或任意 JSX。"
582
+ })] }), /* @__PURE__ */ jsxs("div", {
583
+ className: "grid gap-3",
584
+ children: [/* @__PURE__ */ jsx(Label, {
585
+ label: "名称",
586
+ layout: "vertical",
587
+ children: /* @__PURE__ */ jsx(Input, { placeholder: "请输入名称" })
588
+ }), /* @__PURE__ */ jsx(Label, {
589
+ label: "状态",
590
+ layout: "vertical",
591
+ children: /* @__PURE__ */ jsx(Select, {
592
+ placeholder: "请选择状态",
593
+ options: [{
594
+ label: "启用",
595
+ value: "enabled"
596
+ }, {
597
+ label: "停用",
598
+ value: "disabled"
599
+ }]
600
+ })
601
+ })]
602
+ })]
603
+ })
604
+ })
605
+ ]
606
+ });
607
+ }
608
+ function ConfirmDialogDemo() {
609
+ const [open, setOpen] = useState(false);
610
+ return /* @__PURE__ */ jsxs(Section, {
611
+ title: "ConfirmDialog",
612
+ children: [/* @__PURE__ */ jsx(Button, {
613
+ onClick: () => setOpen(true),
614
+ children: "打开确认框"
615
+ }), /* @__PURE__ */ jsx(ConfirmDialog, {
616
+ open,
617
+ title: "删除确认",
618
+ content: "确定要删除此条数据吗?此操作不可撤销。",
619
+ onOk: () => {
620
+ message.success("已删除");
621
+ setOpen(false);
622
+ },
623
+ onCancel: () => setOpen(false)
624
+ })]
625
+ });
626
+ }
627
+ function PaginationDemo() {
628
+ const [page, setPage] = useState(1);
629
+ const [pageSize, setPageSize] = useState(10);
630
+ return /* @__PURE__ */ jsx(Section, {
631
+ title: "Pagination",
632
+ children: /* @__PURE__ */ jsxs("div", {
633
+ className: "w-full",
634
+ children: [/* @__PURE__ */ jsxs("p", {
635
+ className: "text-sm mb-2",
636
+ children: [
637
+ "当前页: ",
638
+ page,
639
+ " / 每页: ",
640
+ pageSize
641
+ ]
642
+ }), /* @__PURE__ */ jsx(Pagination, {
643
+ current: page,
644
+ pageSize,
645
+ total: 238,
646
+ onChange: setPage,
647
+ onPageSizeChange: setPageSize
648
+ })]
649
+ })
650
+ });
651
+ }
652
+ function TableDemo() {
653
+ return /* @__PURE__ */ jsx(Section, {
654
+ title: "Table (低层)",
655
+ children: /* @__PURE__ */ jsx("div", {
656
+ className: "w-full",
657
+ children: /* @__PURE__ */ jsxs(Table, { children: [/* @__PURE__ */ jsx(TableHeader, { children: /* @__PURE__ */ jsxs("tr", { children: [
658
+ /* @__PURE__ */ jsx(TableHead, { children: "ID" }),
659
+ /* @__PURE__ */ jsx(TableHead, { children: "姓名" }),
660
+ /* @__PURE__ */ jsx(TableHead, { children: "角色" }),
661
+ /* @__PURE__ */ jsx(TableHead, { children: "状态" }),
662
+ /* @__PURE__ */ jsx(TableHead, {
663
+ isAction: true,
664
+ children: "操作"
665
+ })
666
+ ] }) }), /* @__PURE__ */ jsx(TableBody, { children: [
667
+ {
668
+ id: 1,
669
+ name: "张三",
670
+ role: "管理员",
671
+ status: "正常"
672
+ },
673
+ {
674
+ id: 2,
675
+ name: "李四",
676
+ role: "用户",
677
+ status: "禁用"
678
+ },
679
+ {
680
+ id: 3,
681
+ name: "王五",
682
+ role: "审计员",
683
+ status: "正常"
684
+ }
685
+ ].map((row) => /* @__PURE__ */ jsxs(TableRow, { children: [
686
+ /* @__PURE__ */ jsx(TableCell, { children: row.id }),
687
+ /* @__PURE__ */ jsx(TableCell, { children: row.name }),
688
+ /* @__PURE__ */ jsx(TableCell, { children: row.role }),
689
+ /* @__PURE__ */ jsx(TableCell, { children: row.status }),
690
+ /* @__PURE__ */ jsx(TableCell, {
691
+ isAction: true,
692
+ children: /* @__PURE__ */ jsx(Button, {
693
+ variant: "link",
694
+ size: "sm",
695
+ children: "编辑"
696
+ })
697
+ })
698
+ ] }, row.id)) })] })
699
+ })
700
+ });
701
+ }
702
+ function DataTableDemo() {
703
+ const [selectedKeys, setSelectedKeys] = useState([]);
704
+ return /* @__PURE__ */ jsx(Section, {
705
+ title: "DataTable",
706
+ children: /* @__PURE__ */ jsxs("div", {
707
+ className: "w-full",
708
+ children: [/* @__PURE__ */ jsxs("p", {
709
+ className: "text-sm mb-2",
710
+ children: ["已选: ", JSON.stringify(selectedKeys)]
711
+ }), /* @__PURE__ */ jsx(DataTable, {
712
+ columns: [
713
+ {
714
+ key: "id",
715
+ title: "ID",
716
+ width: "60px"
717
+ },
718
+ {
719
+ key: "name",
720
+ title: "姓名"
721
+ },
722
+ {
723
+ key: "role1",
724
+ title: "角色1",
725
+ dataIndex: "role",
726
+ fixed: "left"
727
+ },
728
+ {
729
+ key: "status1",
730
+ title: "状态1",
731
+ dataIndex: "status",
732
+ fixed: "left"
733
+ },
734
+ {
735
+ key: "role2",
736
+ title: "角色2",
737
+ dataIndex: "role"
738
+ },
739
+ {
740
+ key: "status2",
741
+ title: "状态2",
742
+ dataIndex: "status"
743
+ },
744
+ {
745
+ key: "role3",
746
+ title: "角色3",
747
+ dataIndex: "role"
748
+ },
749
+ {
750
+ key: "status3",
751
+ title: "状态3",
752
+ dataIndex: "status"
753
+ },
754
+ {
755
+ key: "role4",
756
+ title: "角色4",
757
+ dataIndex: "role"
758
+ },
759
+ {
760
+ key: "status4",
761
+ title: "状态4",
762
+ dataIndex: "status"
763
+ },
764
+ {
765
+ key: "role5",
766
+ title: "角色5",
767
+ dataIndex: "role"
768
+ },
769
+ {
770
+ key: "status5",
771
+ title: "状态5",
772
+ dataIndex: "status"
773
+ },
774
+ {
775
+ key: "role6",
776
+ title: "角色6",
777
+ dataIndex: "role"
778
+ },
779
+ {
780
+ key: "status6",
781
+ title: "状态6",
782
+ dataIndex: "status"
783
+ },
784
+ {
785
+ key: "role7",
786
+ title: "角色",
787
+ dataIndex: "role",
788
+ fixed: "right"
789
+ },
790
+ {
791
+ key: "status7",
792
+ title: "状态",
793
+ dataIndex: "status"
794
+ },
795
+ {
796
+ key: "action",
797
+ title: "操作",
798
+ width: "96px",
799
+ actionOverflow: "dropdown",
800
+ actions: (_, record) => [
801
+ {
802
+ key: "edit",
803
+ label: "修改",
804
+ onClick: () => console.log("edit", record.id)
805
+ },
806
+ {
807
+ key: "view",
808
+ label: "查看",
809
+ onClick: () => console.log("view", record.id)
810
+ },
811
+ {
812
+ key: "delete",
813
+ label: "删除",
814
+ danger: true,
815
+ onClick: () => console.log("delete", record.id)
816
+ }
817
+ ]
818
+ }
819
+ ],
820
+ data: [
821
+ {
822
+ id: 1,
823
+ name: "张三",
824
+ role: "管理员",
825
+ role7: "管理员",
826
+ role6: "管理员",
827
+ role5: "管理员",
828
+ role4: "管理员",
829
+ role3: "管理员",
830
+ role2: "管理员",
831
+ role1: "管理员",
832
+ status: "正常",
833
+ status7: "正常",
834
+ status6: "正常",
835
+ status5: "正常",
836
+ status4: "正常",
837
+ status3: "正常",
838
+ status2: "正常",
839
+ status1: "正常"
840
+ },
841
+ {
842
+ id: 2,
843
+ name: "李四",
844
+ role: "用户",
845
+ role7: "用户",
846
+ role6: "用户",
847
+ role5: "用户",
848
+ role4: "用户",
849
+ role3: "用户",
850
+ role2: "用户",
851
+ role1: "用户",
852
+ status: "禁用",
853
+ status7: "禁用",
854
+ status6: "禁用",
855
+ status5: "禁用",
856
+ status4: "禁用",
857
+ status3: "禁用",
858
+ status2: "禁用",
859
+ status1: "禁用"
860
+ },
861
+ {
862
+ id: 3,
863
+ name: "王五",
864
+ role: "审计员",
865
+ role7: "审计员",
866
+ role6: "审计员",
867
+ role5: "审计员",
868
+ role4: "审计员",
869
+ role3: "审计员",
870
+ role2: "审计员",
871
+ role1: "审计员",
872
+ status: "正常",
873
+ status7: "正常",
874
+ status6: "正常",
875
+ status5: "正常",
876
+ status4: "正常",
877
+ status3: "正常",
878
+ status2: "正常",
879
+ status1: "正常"
880
+ },
881
+ {
882
+ id: 4,
883
+ name: "赵六",
884
+ role: "用户",
885
+ role7: "用户",
886
+ role6: "用户",
887
+ role5: "用户",
888
+ role4: "用户",
889
+ role3: "用户",
890
+ role2: "用户",
891
+ role1: "用户",
892
+ status: "正常",
893
+ status7: "正常",
894
+ status6: "正常",
895
+ status5: "正常",
896
+ status4: "正常",
897
+ status3: "正常",
898
+ status2: "正常",
899
+ status1: "正常"
900
+ },
901
+ {
902
+ id: 5,
903
+ name: "孙七",
904
+ role: "用户",
905
+ role7: "用户",
906
+ role6: "用户",
907
+ role5: "用户",
908
+ role4: "用户",
909
+ role3: "用户",
910
+ role2: "用户",
911
+ role1: "用户",
912
+ status: "正常",
913
+ status7: "正常",
914
+ status6: "正常",
915
+ status5: "正常",
916
+ status4: "正常",
917
+ status3: "正常",
918
+ status2: "正常",
919
+ status1: "正常"
920
+ }
921
+ ],
922
+ rowKey: "id",
923
+ rowSelection: {
924
+ selectedRowKeys: selectedKeys,
925
+ onChange: (keys) => setSelectedKeys(keys)
926
+ }
927
+ })]
928
+ })
929
+ });
930
+ }
931
+ function SearchDemo() {
932
+ return /* @__PURE__ */ jsx(Section, {
933
+ title: "Search",
934
+ children: /* @__PURE__ */ jsx("div", {
935
+ className: "w-full",
936
+ children: /* @__PURE__ */ jsxs(Search, {
937
+ schemas: [{
938
+ type: "input",
939
+ key: "keyword",
940
+ label: "关键字",
941
+ fieldProps: { placeholder: "请输入" }
942
+ }, {
943
+ type: "select",
944
+ key: "status",
945
+ label: "状态",
946
+ fieldProps: {
947
+ options: [{
948
+ label: "正常",
949
+ value: "active"
950
+ }, {
951
+ label: "禁用",
952
+ value: "disabled"
953
+ }],
954
+ placeholder: "请选择"
955
+ }
956
+ }],
957
+ children: [/* @__PURE__ */ jsx(Button, {
958
+ type: "submit",
959
+ variant: "primary",
960
+ children: "搜索"
961
+ }), /* @__PURE__ */ jsx(Button, {
962
+ type: "reset",
963
+ children: "重置"
964
+ })]
965
+ })
966
+ })
967
+ });
968
+ }
969
+ function BreadcrumbDemo() {
970
+ const [items, setItems] = useState([
971
+ {
972
+ id: "home",
973
+ label: "首页"
974
+ },
975
+ {
976
+ id: "list",
977
+ label: "用户列表"
978
+ },
979
+ {
980
+ id: "detail",
981
+ label: "用户详情",
982
+ active: true
983
+ }
984
+ ]);
985
+ return /* @__PURE__ */ jsx(Section, {
986
+ title: "Breadcrumb",
987
+ children: /* @__PURE__ */ jsx(Breadcrumb, { children: /* @__PURE__ */ jsx(BreadcrumbList, { children: items.map((item, idx) => /* @__PURE__ */ jsxs(React.Fragment, { children: [/* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, {
988
+ active: item.active,
989
+ onClose: () => setItems((prev) => prev.filter((i) => i.id !== item.id)),
990
+ onClick: () => setItems((prev) => prev.map((i) => ({
991
+ ...i,
992
+ active: i.id === item.id
993
+ }))),
994
+ className: "cursor-pointer",
995
+ children: item.label
996
+ }) }), idx < items.length - 1 && /* @__PURE__ */ jsx(BreadcrumbSeparator, {})] }, item.id)) }) })
997
+ });
998
+ }
999
+ function LabelDemo() {
1000
+ return /* @__PURE__ */ jsxs(Section, {
1001
+ title: "Label",
1002
+ children: [/* @__PURE__ */ jsx(Label, {
1003
+ label: "水平布局",
1004
+ layout: "horizontal",
1005
+ children: /* @__PURE__ */ jsx("span", {
1006
+ className: "text-sm",
1007
+ children: "内容区域"
1008
+ })
1009
+ }), /* @__PURE__ */ jsx(Label, {
1010
+ label: "垂直布局",
1011
+ layout: "vertical",
1012
+ children: /* @__PURE__ */ jsx("span", {
1013
+ className: "text-sm",
1014
+ children: "内容区域"
1015
+ })
1016
+ })]
1017
+ });
1018
+ }
1019
+ function FormDemo() {
1020
+ const [form] = useForm();
1021
+ return /* @__PURE__ */ jsx(Section, {
1022
+ title: "Form",
1023
+ children: /* @__PURE__ */ jsxs(Form, {
1024
+ form,
1025
+ onFinish: (v) => console.log("表单值:", v),
1026
+ children: [
1027
+ /* @__PURE__ */ jsx(FormItem, {
1028
+ name: "username",
1029
+ label: "用户名",
1030
+ required: true,
1031
+ rules: [{
1032
+ required: true,
1033
+ message: "请输入用户名"
1034
+ }],
1035
+ children: /* @__PURE__ */ jsx(Input, { placeholder: "请输入用户名" })
1036
+ }),
1037
+ /* @__PURE__ */ jsx(FormItem, {
1038
+ name: "password",
1039
+ label: "密码",
1040
+ required: true,
1041
+ rules: [{
1042
+ required: true,
1043
+ message: "请输入密码"
1044
+ }],
1045
+ children: /* @__PURE__ */ jsx(Input, {
1046
+ type: "password",
1047
+ placeholder: "请输入密码"
1048
+ })
1049
+ }),
1050
+ /* @__PURE__ */ jsx(Button, {
1051
+ type: "submit",
1052
+ children: "提交"
1053
+ })
1054
+ ]
1055
+ })
1056
+ });
1057
+ }
1058
+ function SchemaFormDemo() {
1059
+ const form = useRef(void 0);
1060
+ return /* @__PURE__ */ jsx(Section, {
1061
+ title: "SchemaForm",
1062
+ children: /* @__PURE__ */ jsx(SchemaForm, {
1063
+ layout: "horizontal",
1064
+ getForm: (f) => {
1065
+ form.current = f;
1066
+ },
1067
+ schemas: [{
1068
+ key: "username",
1069
+ label: "用户名",
1070
+ type: "input",
1071
+ required: true,
1072
+ rules: [{
1073
+ required: true,
1074
+ message: "请输入用户名"
1075
+ }],
1076
+ fieldProps: { placeholder: "请输入用户名" }
1077
+ }, {
1078
+ key: "role",
1079
+ label: "角色",
1080
+ type: "select",
1081
+ fieldProps: {
1082
+ placeholder: "请选择",
1083
+ options: [{
1084
+ label: "管理员",
1085
+ value: "admin"
1086
+ }, {
1087
+ label: "用户",
1088
+ value: "user"
1089
+ }]
1090
+ }
1091
+ }],
1092
+ onFinish: (values) => console.log(values)
1093
+ })
1094
+ });
1095
+ }
1096
+ function TableSearchDemo() {
1097
+ return /* @__PURE__ */ jsx(Section, {
1098
+ title: "TableSearch",
1099
+ children: /* @__PURE__ */ jsx(TableSearch, {
1100
+ onSearch: (v) => console.log(v),
1101
+ schemas: [
1102
+ {
1103
+ type: "input",
1104
+ key: "q1",
1105
+ label: "字段1",
1106
+ fieldProps: {}
1107
+ },
1108
+ {
1109
+ type: "select",
1110
+ key: "q2",
1111
+ label: "状态",
1112
+ fieldProps: { options: [{
1113
+ value: "a",
1114
+ label: "A"
1115
+ }] }
1116
+ },
1117
+ {
1118
+ type: "switch",
1119
+ key: "q3",
1120
+ label: "开关",
1121
+ fieldProps: {}
1122
+ },
1123
+ {
1124
+ type: "date",
1125
+ key: "q4",
1126
+ label: "日期",
1127
+ fieldProps: {}
1128
+ },
1129
+ {
1130
+ type: "date",
1131
+ key: "q5",
1132
+ label: "范围",
1133
+ fieldProps: { mode: "range" }
1134
+ },
1135
+ {
1136
+ type: "textarea",
1137
+ key: "q6",
1138
+ label: "文本",
1139
+ fieldProps: {}
1140
+ },
1141
+ {
1142
+ type: "input",
1143
+ key: "q7",
1144
+ label: "字段7",
1145
+ fieldProps: {}
1146
+ },
1147
+ {
1148
+ type: "input",
1149
+ key: "q8",
1150
+ label: "字段8",
1151
+ fieldProps: {}
1152
+ }
1153
+ ]
1154
+ })
1155
+ });
1156
+ }
1157
+ function SkeletonDemo() {
1158
+ return /* @__PURE__ */ jsx(Section, {
1159
+ title: "Skeleton",
1160
+ children: /* @__PURE__ */ jsxs("div", {
1161
+ className: "w-full space-y-4",
1162
+ children: [
1163
+ /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", {
1164
+ className: "text-xs text-gray-500 mb-1",
1165
+ children: "pageloading"
1166
+ }), /* @__PURE__ */ jsx(Skeleton, {
1167
+ mode: "pageloading",
1168
+ rows: 3,
1169
+ showTitle: true,
1170
+ showActions: true
1171
+ })] }),
1172
+ /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", {
1173
+ className: "text-xs text-gray-500 mb-1",
1174
+ children: "tableloading"
1175
+ }), /* @__PURE__ */ jsx(Skeleton, {
1176
+ mode: "tableloading",
1177
+ rows: 4
1178
+ })] }),
1179
+ /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", {
1180
+ className: "text-xs text-gray-500 mb-1",
1181
+ children: "componentsloading"
1182
+ }), /* @__PURE__ */ jsx(Skeleton, {
1183
+ mode: "componentsloading",
1184
+ rows: 2
1185
+ })] })
1186
+ ]
1187
+ })
1188
+ });
1189
+ }
1190
+ function TreeSelectDemo() {
1191
+ const [value, setValue] = useState(["1.1.1", "1.1.2"]);
1192
+ const [indeterminate, setIndeterminate] = useState([]);
1193
+ return /* @__PURE__ */ jsx(Section, {
1194
+ title: "TreeSelect",
1195
+ children: /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs("div", {
1196
+ className: "text-sm mb-2",
1197
+ children: [/* @__PURE__ */ jsxs("span", { children: ["选中: ", JSON.stringify(value)] }), /* @__PURE__ */ jsxs("span", {
1198
+ className: "ml-4",
1199
+ children: ["半选: ", JSON.stringify(indeterminate)]
1200
+ })]
1201
+ }), /* @__PURE__ */ jsx(TreeSelect, {
1202
+ data: [{
1203
+ id: "1",
1204
+ name: "节点 1",
1205
+ children: [{
1206
+ id: "1.1",
1207
+ name: "节点 1.1",
1208
+ children: [{
1209
+ id: "1.1.1",
1210
+ name: "节点 1.1.1",
1211
+ children: [{
1212
+ id: "1.1.1.1",
1213
+ name: "1.1.1.1"
1214
+ }, {
1215
+ id: "1.1.1.2",
1216
+ name: "1.1.1.2"
1217
+ }]
1218
+ }, {
1219
+ id: "1.1.2",
1220
+ name: "节点 1.1.2"
1221
+ }]
1222
+ }, {
1223
+ id: "1.2",
1224
+ name: "节点 1.2",
1225
+ children: [{
1226
+ id: "1.2.1",
1227
+ name: "1.2.1"
1228
+ }, {
1229
+ id: "1.2.2",
1230
+ name: "1.2.2"
1231
+ }]
1232
+ }]
1233
+ }],
1234
+ value,
1235
+ onChange: ({ checked, indeterminate }) => {
1236
+ setValue(checked);
1237
+ setIndeterminate(indeterminate);
1238
+ }
1239
+ })] })
1240
+ });
1241
+ }
1242
+ function PreviewImageDemo() {
1243
+ return /* @__PURE__ */ jsx(Section, {
1244
+ title: "PreviewImage",
1245
+ children: /* @__PURE__ */ jsx(PreviewImage, {
1246
+ images: ["https://images.unsplash.com/photo-1778512828600-4a6540a1a115?w=900&auto=format&fit=crop&q=60&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxmZWF0dXJlZC1waG90b3MtZmVlZHw0fHx8ZW58MHx8fHx8", "https://images.unsplash.com/photo-1778392120781-a6b2b55dc12a?w=900&auto=format&fit=crop&q=60&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxmZWF0dXJlZC1waG90b3MtZmVlZHwyNnx8fGVufDB8fHx8fA%3D%3D"],
1247
+ initialIndex: 0
1248
+ })
1249
+ });
1250
+ }
1251
+ function ImageUploadDemo() {
1252
+ return /* @__PURE__ */ jsx(Section, {
1253
+ title: "ImageUpload",
1254
+ children: /* @__PURE__ */ jsx(ImageUpload, {
1255
+ accept: ".jpg,.png",
1256
+ maxCount: 4,
1257
+ beforeChange: (f) => {
1258
+ console.log(f);
1259
+ return parseInt(Math.random() * 10 + "") % 2 === 0;
1260
+ }
1261
+ })
1262
+ });
1263
+ }
1264
+ function RadioDemo() {
1265
+ const [selected, setSelected] = useState("a");
1266
+ const [groupValue, setGroupValue] = useState("green");
1267
+ return /* @__PURE__ */ jsxs(Section, {
1268
+ title: "Radio",
1269
+ children: [
1270
+ /* @__PURE__ */ jsxs("div", {
1271
+ className: "space-y-2",
1272
+ children: [/* @__PURE__ */ jsxs("p", {
1273
+ className: "text-sm text-muted-foreground",
1274
+ children: ["受控: ", selected]
1275
+ }), [
1276
+ {
1277
+ label: "选项 A",
1278
+ value: "a"
1279
+ },
1280
+ {
1281
+ label: "选项 B",
1282
+ value: "b"
1283
+ },
1284
+ {
1285
+ label: "选项 C",
1286
+ value: "c"
1287
+ }
1288
+ ].map((opt) => /* @__PURE__ */ jsx(Radio, {
1289
+ name: "demo-radio",
1290
+ label: opt.label,
1291
+ checked: selected === opt.value,
1292
+ onChange: () => setSelected(opt.value)
1293
+ }, opt.value))]
1294
+ }),
1295
+ /* @__PURE__ */ jsxs("div", {
1296
+ className: "space-y-2 ml-8",
1297
+ children: [
1298
+ /* @__PURE__ */ jsx("p", {
1299
+ className: "text-sm text-muted-foreground",
1300
+ children: "非受控默认选中"
1301
+ }),
1302
+ /* @__PURE__ */ jsx(Radio, {
1303
+ name: "demo-radio-2",
1304
+ label: "默认选中",
1305
+ defaultChecked: true
1306
+ }),
1307
+ /* @__PURE__ */ jsx(Radio, {
1308
+ name: "demo-radio-2",
1309
+ label: "禁用状态",
1310
+ disabled: true
1311
+ }),
1312
+ /* @__PURE__ */ jsx(Radio, {
1313
+ name: "demo-radio-2",
1314
+ label: "禁用且选中",
1315
+ disabled: true,
1316
+ defaultChecked: true
1317
+ })
1318
+ ]
1319
+ }),
1320
+ /* @__PURE__ */ jsxs("div", {
1321
+ className: "w-full ml-8 space-y-2",
1322
+ children: [/* @__PURE__ */ jsxs("p", {
1323
+ className: "text-sm text-muted-foreground",
1324
+ children: ["RadioGroup 垂直布局: ", groupValue]
1325
+ }), /* @__PURE__ */ jsxs(RadioGroup, {
1326
+ name: "demo-group",
1327
+ value: groupValue,
1328
+ onChange: setGroupValue,
1329
+ children: [
1330
+ /* @__PURE__ */ jsx(Radio, {
1331
+ value: "default",
1332
+ label: "默认主题"
1333
+ }),
1334
+ /* @__PURE__ */ jsx(Radio, {
1335
+ value: "green",
1336
+ label: "绿色主题"
1337
+ }),
1338
+ /* @__PURE__ */ jsx(Radio, {
1339
+ value: "gray",
1340
+ label: "灰色主题"
1341
+ })
1342
+ ]
1343
+ })]
1344
+ }),
1345
+ /* @__PURE__ */ jsxs("div", {
1346
+ className: "w-full ml-8 space-y-2",
1347
+ children: [/* @__PURE__ */ jsx("p", {
1348
+ className: "text-sm text-muted-foreground",
1349
+ children: "RadioGroup 水平布局 (非受控)"
1350
+ }), /* @__PURE__ */ jsxs(RadioGroup, {
1351
+ name: "demo-group-2",
1352
+ defaultValue: "b",
1353
+ direction: "horizontal",
1354
+ children: [
1355
+ /* @__PURE__ */ jsx(Radio, {
1356
+ value: "a",
1357
+ label: "选项 A"
1358
+ }),
1359
+ /* @__PURE__ */ jsx(Radio, {
1360
+ value: "b",
1361
+ label: "选项 B"
1362
+ }),
1363
+ /* @__PURE__ */ jsx(Radio, {
1364
+ value: "c",
1365
+ label: "选项 C"
1366
+ }),
1367
+ /* @__PURE__ */ jsx(Radio, {
1368
+ value: "d",
1369
+ label: "禁用选项",
1370
+ disabled: true
1371
+ })
1372
+ ]
1373
+ })]
1374
+ })
1375
+ ]
1376
+ });
1377
+ }
1378
+ function NotificationDemo() {
1379
+ return /* @__PURE__ */ jsx(Section, {
1380
+ title: "Notification",
1381
+ children: /* @__PURE__ */ jsxs("div", {
1382
+ className: "w-full space-y-3",
1383
+ children: [
1384
+ /* @__PURE__ */ jsx(Notification, {
1385
+ type: "info",
1386
+ title: "信息提示",
1387
+ message: "这是一条普通信息通知。"
1388
+ }),
1389
+ /* @__PURE__ */ jsx(Notification, {
1390
+ type: "success",
1391
+ title: "操作成功",
1392
+ message: "数据已成功保存。"
1393
+ }),
1394
+ /* @__PURE__ */ jsx(Notification, {
1395
+ type: "warning",
1396
+ title: "警告",
1397
+ message: "请注意检查配置项是否正确。"
1398
+ }),
1399
+ /* @__PURE__ */ jsx(Notification, {
1400
+ type: "error",
1401
+ title: "错误",
1402
+ message: "请求失败,请稍后重试。",
1403
+ closable: false
1404
+ }),
1405
+ /* @__PURE__ */ jsx(Notification, {
1406
+ type: "info",
1407
+ title: "不自动关闭",
1408
+ message: "此通知需要手动关闭。",
1409
+ duration: 0
1410
+ })
1411
+ ]
1412
+ })
1413
+ });
1414
+ }
1415
+ function LoadingDemo() {
1416
+ return /* @__PURE__ */ jsx(Section, {
1417
+ title: "Loading",
1418
+ children: /* @__PURE__ */ jsxs("div", {
1419
+ className: "flex items-end gap-8",
1420
+ children: [
1421
+ /* @__PURE__ */ jsx(Loading, {
1422
+ size: "sm",
1423
+ text: "加载中..."
1424
+ }),
1425
+ /* @__PURE__ */ jsx(Loading, {
1426
+ size: "md",
1427
+ text: "加载中..."
1428
+ }),
1429
+ /* @__PURE__ */ jsx(Loading, { size: "lg" })
1430
+ ]
1431
+ })
1432
+ });
1433
+ }
1434
+ function LayoutDemo() {
1435
+ return /* @__PURE__ */ jsx(Section, {
1436
+ title: "Layout",
1437
+ children: /* @__PURE__ */ jsx("div", {
1438
+ className: "w-full h-80 border rounded-lg overflow-hidden",
1439
+ children: /* @__PURE__ */ jsx(Layout, {
1440
+ header: /* @__PURE__ */ jsx("div", {
1441
+ className: "flex items-center h-12 px-4 text-sm font-medium",
1442
+ children: "Header"
1443
+ }),
1444
+ sidebar: /* @__PURE__ */ jsxs("div", {
1445
+ className: "p-4",
1446
+ children: [/* @__PURE__ */ jsx("p", {
1447
+ className: "text-sm font-medium mb-2",
1448
+ children: "Sidebar"
1449
+ }), /* @__PURE__ */ jsxs("div", {
1450
+ className: "space-y-1",
1451
+ children: [
1452
+ /* @__PURE__ */ jsx("div", {
1453
+ className: "text-sm text-muted-foreground p-1 rounded hover:bg-muted cursor-pointer",
1454
+ children: "菜单项 1"
1455
+ }),
1456
+ /* @__PURE__ */ jsx("div", {
1457
+ className: "text-sm text-muted-foreground p-1 rounded hover:bg-muted cursor-pointer",
1458
+ children: "菜单项 2"
1459
+ }),
1460
+ /* @__PURE__ */ jsx("div", {
1461
+ className: "text-sm text-muted-foreground p-1 rounded hover:bg-muted cursor-pointer",
1462
+ children: "菜单项 3"
1463
+ })
1464
+ ]
1465
+ })]
1466
+ }),
1467
+ footer: /* @__PURE__ */ jsx("div", {
1468
+ className: "flex items-center h-10 px-4 text-xs text-muted-foreground",
1469
+ children: "Footer"
1470
+ }),
1471
+ children: /* @__PURE__ */ jsxs("div", {
1472
+ className: "p-4",
1473
+ children: [/* @__PURE__ */ jsx("p", {
1474
+ className: "text-sm font-medium mb-1",
1475
+ children: "Content"
1476
+ }), /* @__PURE__ */ jsx("p", {
1477
+ className: "text-xs text-muted-foreground",
1478
+ children: "这是主要内容区域。"
1479
+ })]
1480
+ })
1481
+ })
1482
+ })
1483
+ });
1484
+ }
1485
+ function CardDemo() {
1486
+ return /* @__PURE__ */ jsxs(Section, {
1487
+ title: "Card",
1488
+ children: [/* @__PURE__ */ jsx("div", {
1489
+ className: "w-72",
1490
+ children: /* @__PURE__ */ jsx(Card, {
1491
+ header: /* @__PURE__ */ jsx("span", {
1492
+ className: "text-sm font-medium",
1493
+ children: "卡片标题"
1494
+ }),
1495
+ footer: /* @__PURE__ */ jsxs("div", {
1496
+ className: "flex justify-end gap-2",
1497
+ children: [/* @__PURE__ */ jsx(Button, {
1498
+ size: "sm",
1499
+ children: "取消"
1500
+ }), /* @__PURE__ */ jsx(Button, {
1501
+ variant: "primary",
1502
+ size: "sm",
1503
+ children: "确认"
1504
+ })]
1505
+ }),
1506
+ children: /* @__PURE__ */ jsx("p", {
1507
+ className: "text-sm text-muted-foreground",
1508
+ children: "这是一张基础卡片,包含 header、body 和 footer 三个区域。"
1509
+ })
1510
+ })
1511
+ }), /* @__PURE__ */ jsx("div", {
1512
+ className: "w-72",
1513
+ children: /* @__PURE__ */ jsx(Card, {
1514
+ className: "border-theme",
1515
+ children: /* @__PURE__ */ jsx("p", {
1516
+ className: "text-sm text-muted-foreground",
1517
+ children: "无 header/footer 的简洁卡片。"
1518
+ })
1519
+ })
1520
+ })]
1521
+ });
1522
+ }
1523
+ function TabsDemo() {
1524
+ const [activeTab, setActiveTab] = useState("tab1");
1525
+ return /* @__PURE__ */ jsx(Section, {
1526
+ title: "Tabs",
1527
+ children: /* @__PURE__ */ jsxs("div", {
1528
+ className: "w-full",
1529
+ children: [/* @__PURE__ */ jsx(Tabs, {
1530
+ items: [
1531
+ {
1532
+ key: "tab1",
1533
+ label: "标签页 1"
1534
+ },
1535
+ {
1536
+ key: "tab2",
1537
+ label: "标签页 2"
1538
+ },
1539
+ {
1540
+ key: "tab3",
1541
+ label: "标签页 3"
1542
+ },
1543
+ {
1544
+ key: "tab4",
1545
+ label: "禁用标签",
1546
+ disabled: true
1547
+ }
1548
+ ],
1549
+ activeKey: activeTab,
1550
+ onChange: setActiveTab
1551
+ }), /* @__PURE__ */ jsx("div", {
1552
+ className: "p-4 border border-t-0 rounded-b-lg bg-background",
1553
+ children: /* @__PURE__ */ jsx("p", {
1554
+ className: "text-sm text-muted-foreground",
1555
+ children: {
1556
+ tab1: "这是标签页 1 的内容区域。",
1557
+ tab2: "这是标签页 2 的内容区域。",
1558
+ tab3: "这是标签页 3 的内容区域。"
1559
+ }[activeTab]
1560
+ })
1561
+ })]
1562
+ })
1563
+ });
1564
+ }
1565
+ var TestPage = () => {
1566
+ return /* @__PURE__ */ jsxs("div", {
1567
+ className: "p-6 max-w-5xl mx-auto",
1568
+ children: [
1569
+ /* @__PURE__ */ jsx("h1", {
1570
+ className: "text-2xl font-bold mb-6",
1571
+ children: "组件展示"
1572
+ }),
1573
+ /* @__PURE__ */ jsx(ThemeSwitcher, {}),
1574
+ /* @__PURE__ */ jsx(ButtonDemo, {}),
1575
+ /* @__PURE__ */ jsx(InputDemo, {}),
1576
+ /* @__PURE__ */ jsx(InputNumberDemo, {}),
1577
+ /* @__PURE__ */ jsx(TextareaDemo, {}),
1578
+ /* @__PURE__ */ jsx(SelectDemo, {}),
1579
+ /* @__PURE__ */ jsx(CheckboxDemo, {}),
1580
+ /* @__PURE__ */ jsx(RadioDemo, {}),
1581
+ /* @__PURE__ */ jsx(SwitchDemo, {}),
1582
+ /* @__PURE__ */ jsx(TooltipDemo, {}),
1583
+ /* @__PURE__ */ jsx(DropdownDemo, {}),
1584
+ /* @__PURE__ */ jsx(MessageDemo, {}),
1585
+ /* @__PURE__ */ jsx(NotificationDemo, {}),
1586
+ /* @__PURE__ */ jsx(LoadingDemo, {}),
1587
+ /* @__PURE__ */ jsx(ModalDemo, {}),
1588
+ /* @__PURE__ */ jsx(DrawerDemo, {}),
1589
+ /* @__PURE__ */ jsx(ConfirmDialogDemo, {}),
1590
+ /* @__PURE__ */ jsx(PaginationDemo, {}),
1591
+ /* @__PURE__ */ jsx(TableDemo, {}),
1592
+ /* @__PURE__ */ jsx(DataTableDemo, {}),
1593
+ /* @__PURE__ */ jsx(SearchDemo, {}),
1594
+ /* @__PURE__ */ jsx(BreadcrumbDemo, {}),
1595
+ /* @__PURE__ */ jsx(LabelDemo, {}),
1596
+ /* @__PURE__ */ jsx(LayoutDemo, {}),
1597
+ /* @__PURE__ */ jsx(CardDemo, {}),
1598
+ /* @__PURE__ */ jsx(TabsDemo, {}),
1599
+ /* @__PURE__ */ jsx(FormDemo, {}),
1600
+ /* @__PURE__ */ jsx(SchemaFormDemo, {}),
1601
+ /* @__PURE__ */ jsx(TableSearchDemo, {}),
1602
+ /* @__PURE__ */ jsx(SkeletonDemo, {}),
1603
+ /* @__PURE__ */ jsx(TreeSelectDemo, {}),
1604
+ /* @__PURE__ */ jsx(DateTestPage, {}),
1605
+ /* @__PURE__ */ jsx(PreviewImageDemo, {}),
1606
+ /* @__PURE__ */ jsx(ImageUploadDemo, {}),
1607
+ /* @__PURE__ */ jsx(MenuTestPage, {})
1608
+ ]
1609
+ });
1610
+ };
1611
+ //#endregion
1612
+ export { TestPage as default };