@_tc/template-core 0.2.11 → 0.3.0

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 (403) hide show
  1. package/.skills/tc-component-usage-skills/SKILL.md +7 -9
  2. package/.skills/tc-component-usage-skills/reference/component-api.md +2 -2
  3. package/.skills/tc-component-usage-skills/reference/examples.md +9 -9
  4. package/.skills/tc-component-usage-skills/reference/patterns.md +5 -5
  5. package/.skills/tc-component-usage-skills/reference/template-core-frontend.md +1 -1
  6. package/.skills/tc-generator/SKILL.md +30 -14
  7. package/.skills/tc-generator/reference/example.md +4 -4
  8. package/.skills/tc-generator/reference/model-schema.md +9 -5
  9. package/.skills/tc-generator/reference/runtime-extensions.md +9 -7
  10. package/AGENT_README.md +52 -33
  11. package/CHANGE.md +91 -0
  12. package/README.md +147 -46
  13. package/cjs/app/controller/ssr.js +1 -0
  14. package/cjs/app/controller/view.js +1 -1
  15. package/cjs/app/html/shell.js +36 -0
  16. package/cjs/app/middleware.js +1 -1
  17. package/cjs/app/router/ssr.js +1 -0
  18. package/cjs/app/router/view.js +1 -1
  19. package/cjs/app/ssr/html.js +17 -0
  20. package/cjs/app/ssr/manifest.js +2 -0
  21. package/cjs/app/view/entry.tpl +2 -37
  22. package/cjs/bundler/buildBE.js +1 -1
  23. package/cjs/bundler/buildSSR.js +1 -0
  24. package/cjs/bundler/entryCollect.js +1 -0
  25. package/cjs/bundler/feSharedConfig.js +1 -0
  26. package/cjs/bundler/index.js +1 -1
  27. package/cjs/bundler/ssrClientManifest.js +1 -0
  28. package/cjs/bundler/ssrEntries.js +1 -0
  29. package/cjs/bundler/utils.js +3 -3
  30. package/cjs/packages/common/i18n/index.js +1 -1
  31. package/cjs/packages/common/index.js +1 -1
  32. package/cjs/packages/common/ssr/hydration.js +1 -0
  33. package/cjs/packages/common/ssr/index.js +1 -0
  34. package/cjs/packages/core/index.js +1 -1
  35. package/cjs/packages/core/loader/controller.js +1 -1
  36. package/cjs/packages/core/loader/extend.js +1 -1
  37. package/cjs/packages/core/loader/merge.js +1 -0
  38. package/cjs/packages/core/loader/middleware.js +1 -1
  39. package/cjs/packages/core/loader/model.js +1 -1
  40. package/cjs/packages/core/loader/router-schema.js +1 -1
  41. package/cjs/packages/core/loader/router.js +1 -1
  42. package/cjs/packages/core/loader/service.js +1 -1
  43. package/cjs/packages/core/paths.js +1 -1
  44. package/cjs/scripts/vite-build/build.js +3 -3
  45. package/cjs/scripts/vite-build/collect.js +1 -1
  46. package/cjs/scripts/vite-build/dts.js +1 -1
  47. package/cjs/scripts/vite-build/normalize.js +1 -1
  48. package/cjs/ssrSharedData/outputPaths.js +1 -0
  49. package/esm/app/controller/ssr.js +215 -0
  50. package/esm/app/controller/view.js +26 -25
  51. package/esm/app/html/shell.js +69 -0
  52. package/esm/app/middleware.js +18 -9
  53. package/esm/app/router/ssr.js +8 -0
  54. package/esm/app/router/view.js +5 -4
  55. package/esm/app/ssr/html.js +90 -0
  56. package/esm/app/ssr/manifest.js +47 -0
  57. package/esm/app/view/entry.tpl +2 -37
  58. package/esm/bundler/buildBE.js +1 -1
  59. package/esm/bundler/buildSSR.js +126 -0
  60. package/esm/bundler/entryCollect.js +45 -0
  61. package/esm/bundler/feSharedConfig.js +143 -0
  62. package/esm/bundler/index.js +4 -2
  63. package/esm/bundler/ssrClientManifest.js +14 -0
  64. package/esm/bundler/ssrEntries.js +13 -0
  65. package/esm/bundler/utils.js +248 -255
  66. package/esm/packages/common/i18n/index.js +5 -1
  67. package/esm/packages/common/index.js +4 -2
  68. package/esm/packages/common/ssr/hydration.js +55 -0
  69. package/esm/packages/common/ssr/index.js +20 -0
  70. package/esm/packages/core/index.js +42 -42
  71. package/esm/packages/core/loader/controller.js +11 -9
  72. package/esm/packages/core/loader/extend.js +20 -16
  73. package/esm/packages/core/loader/merge.js +7 -0
  74. package/esm/packages/core/loader/middleware.js +11 -12
  75. package/esm/packages/core/loader/model.js +2 -2
  76. package/esm/packages/core/loader/router-schema.js +22 -15
  77. package/esm/packages/core/loader/router.js +32 -26
  78. package/esm/packages/core/loader/service.js +11 -9
  79. package/esm/packages/core/paths.js +9 -1
  80. package/esm/scripts/vite-build/build.js +88 -83
  81. package/esm/scripts/vite-build/collect.js +31 -27
  82. package/esm/scripts/vite-build/dts.js +1 -1
  83. package/esm/scripts/vite-build/normalize.js +6 -3
  84. package/esm/ssrSharedData/outputPaths.js +33 -0
  85. package/fe/frontend/apps/dash/Dashboard.d.ts +5 -1
  86. package/fe/frontend/apps/dash/Dashboard.js +22 -13
  87. package/fe/frontend/apps/dash/types.d.ts +2 -0
  88. package/fe/frontend/src/api/baseInfo.d.ts +1 -1
  89. package/fe/frontend/src/common/CRUD/CRUD.js +1 -1
  90. package/fe/frontend/src/common/CRUD/index.js +1 -1
  91. package/fe/frontend/src/common/menu.d.ts +1 -1
  92. package/fe/frontend/src/common/menu.js +8 -7
  93. package/fe/frontend/src/common/request.js +1 -1
  94. package/fe/frontend/src/common/schemaForm.d.ts +1 -0
  95. package/fe/frontend/src/common/schemaForm.js +12 -0
  96. package/fe/frontend/src/components/AsyncSelect/AsyncSelect.d.ts +1 -1
  97. package/fe/frontend/src/components/Router/basename.d.ts +3 -0
  98. package/fe/frontend/src/components/Router/basename.js +11 -0
  99. package/fe/frontend/src/components/Router/index.d.ts +1 -1
  100. package/fe/frontend/src/components/Router/index.js +3 -1
  101. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/builtIn.d.ts +1 -1
  102. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaTable/data.d.ts +1 -1
  103. package/fe/frontend/src/defaultPages/SchemaPage/schemaType.d.ts +2 -2
  104. package/fe/frontend/src/defaultPages/SchemaPage/utils/schemaConversion.d.ts +1 -1
  105. package/fe/frontend/src/defaultPages/SidebarSlotPage/SidebarSlotContainer.d.ts +2 -1
  106. package/fe/frontend/src/defaultPages/SidebarSlotPage/SidebarSlotContainer.js +8 -4
  107. package/fe/frontend/src/defaultPages/SidebarSlotPageTmp.js +2 -1
  108. package/fe/frontend/src/exportStore.js +2 -2
  109. package/fe/frontend/src/hooks/useCurrentMenuData.d.ts +1 -1
  110. package/fe/frontend/src/hooks/useCurrentMenuData.js +2 -2
  111. package/fe/frontend/src/hooks/useRouterParams.js +4 -3
  112. package/fe/frontend/src/index.d.ts +1 -0
  113. package/fe/frontend/src/index.js +4 -3
  114. package/fe/frontend/src/main.js +2 -0
  115. package/fe/frontend/src/stores/mode.d.ts +15 -2
  116. package/fe/frontend/src/stores/mode.js +19 -5
  117. package/fe/frontend/src/typing/window.d.ts +2 -0
  118. package/fe/packages/common/LRUCache.js +2 -0
  119. package/fe/packages/common/array/index.js +37 -0
  120. package/fe/packages/common/cache/index.js +2 -0
  121. package/fe/packages/common/guards/index.js +19 -1
  122. package/fe/packages/common/http/index.js +1 -1
  123. package/fe/packages/common/i18n/index.js +8 -4
  124. package/fe/packages/common/i18n/locales.js +1 -1
  125. package/fe/packages/common/i18n/types.d.ts +1 -0
  126. package/fe/packages/common/i18n/types.js +0 -0
  127. package/fe/packages/common/index.d.ts +1 -0
  128. package/fe/packages/common/index.js +17 -0
  129. package/fe/packages/common/log/index.js +146 -0
  130. package/fe/packages/common/number/index.js +11 -0
  131. package/fe/packages/common/object/filterEmpty.js +2 -1
  132. package/fe/packages/common/object/filtereEmpty.js +2 -0
  133. package/fe/packages/common/object/index.js +20 -0
  134. package/fe/packages/common/ssr/hydration.d.ts +23 -0
  135. package/fe/packages/common/ssr/hydration.js +88 -0
  136. package/fe/packages/common/ssr/index.d.ts +8 -0
  137. package/fe/packages/common/ssr/index.js +52 -0
  138. package/fe/packages/common/string/index.js +32 -0
  139. package/fe/packages/common/types/index.js +0 -0
  140. package/fe/packages/react/hooks/index.d.ts +2 -0
  141. package/fe/packages/react/hooks/index.js +3 -1
  142. package/fe/packages/react/hooks/useHydrationData.d.ts +2 -0
  143. package/fe/packages/react/hooks/useHydrationData.js +23 -0
  144. package/fe/packages/react/hooks/useSSR.d.ts +6 -0
  145. package/fe/packages/react/hooks/useSSR.js +46 -0
  146. package/fe/packages/react/ui/components/DataTable/index.js +16 -15
  147. package/fe/packages/react/ui/components/Form/SchemaForm/data.d.ts +3 -2
  148. package/fe/packages/react/ui/components/Form/SchemaForm/data.js +5 -6
  149. package/fe/packages/react/ui/components/Form/SchemaForm/index.d.ts +1 -0
  150. package/fe/packages/react/ui/components/Form/SchemaForm/index.js +2 -2
  151. package/fe/packages/react/ui/components/Form/index.js +2 -1
  152. package/fe/packages/react/ui/components/Input/Input.js +5 -1
  153. package/fe/packages/react/ui/components/Popup/Popup.js +6 -1
  154. package/fe/packages/react/ui/components/index.js +2 -1
  155. package/fe/packages/react/ui/components/testPage/demos/core/DataTableDemo.js +241 -211
  156. package/fe/packages/react/ui/components/testPage/demos/core/DataTableDemo2.js +1 -1
  157. package/fe/packages/react/ui/i18n/I18nProvider.js +4 -0
  158. package/fe/packages/react/ui/index.js +2 -1
  159. package/fe/ssr/apps/dash/dash.entry.d.ts +13 -0
  160. package/fe/ssr/apps/dash/dash.entry.js +162 -0
  161. package/fe/ssr/apps/demo/demo.entry.d.ts +13 -0
  162. package/fe/ssr/apps/demo/demo.entry.js +38 -0
  163. package/fe/ssr/apps/server-data/server-data.entry.d.ts +26 -0
  164. package/fe/ssr/apps/server-data/server-data.entry.js +275 -0
  165. package/fe/ssr/apps/ui-components/ui-components.entry.d.ts +5 -0
  166. package/fe/ssr/apps/ui-components/ui-components.entry.js +17 -0
  167. package/fe/ssr/components/StreamingRender/StreamingCache.d.ts +2 -0
  168. package/fe/ssr/components/StreamingRender/StreamingCache.js +31 -0
  169. package/fe/ssr/components/StreamingRender/StreamingRender.d.ts +3 -0
  170. package/fe/ssr/components/StreamingRender/StreamingRender.js +48 -0
  171. package/fe/ssr/components/StreamingRender/StreamingScript.d.ts +8 -0
  172. package/fe/ssr/components/StreamingRender/StreamingScript.js +58 -0
  173. package/fe/ssr/components/StreamingRender/index.d.ts +4 -0
  174. package/fe/ssr/components/StreamingRender/index.js +5 -0
  175. package/fe/ssr/components/StreamingRender/type.d.ts +9 -0
  176. package/fe/ssr/components/StreamingRender/type.js +0 -0
  177. package/fe/ssr/components/index.d.ts +2 -0
  178. package/fe/ssr/components/index.js +2 -0
  179. package/fe/ssr/createSSREntry.d.ts +6 -0
  180. package/fe/ssr/createSSREntry.js +42 -0
  181. package/fe/ssr/hooks/index.d.ts +1 -0
  182. package/fe/ssr/hooks/index.js +2 -0
  183. package/fe/ssr/hooks/useSuspensePromise.d.ts +1 -0
  184. package/fe/ssr/hooks/useSuspensePromise.js +31 -0
  185. package/fe/ssr/index.d.ts +4 -0
  186. package/fe/ssr/index.js +6 -0
  187. package/fe/ssr/types.d.ts +13 -0
  188. package/fe/ssr/types.js +0 -0
  189. package/{model → models}/frontend/src/typing/window.d.ts +2 -0
  190. package/{model → models}/packages/common/i18n/types.d.ts +1 -0
  191. package/{model → models}/packages/common/index.d.ts +1 -0
  192. package/models/packages/common/ssr/hydration.d.ts +23 -0
  193. package/models/packages/common/ssr/index.d.ts +8 -0
  194. package/{model → models}/packages/react/ui/components/Form/SchemaForm/data.d.ts +3 -2
  195. package/{model → models}/packages/react/ui/components/Form/SchemaForm/index.d.ts +1 -0
  196. package/package.json +43 -6
  197. package/types/app/controller/ssr.d.ts +14 -0
  198. package/types/app/html/shell.d.ts +101 -0
  199. package/types/app/router/ssr.d.ts +6 -0
  200. package/types/app/ssr/html.d.ts +53 -0
  201. package/types/app/ssr/manifest.d.ts +17 -0
  202. package/types/app/typings.d.ts +2 -0
  203. package/types/bundler/buildSSR.d.ts +56 -0
  204. package/types/bundler/entryCollect.d.ts +36 -0
  205. package/types/bundler/feSharedConfig.d.ts +35 -0
  206. package/types/bundler/index.d.ts +4 -0
  207. package/types/bundler/ssrClientManifest.d.ts +4 -0
  208. package/types/bundler/ssrEntries.d.ts +23 -0
  209. package/types/bundler/state.d.ts +2 -2
  210. package/types/bundler/utils.d.ts +35 -2
  211. package/types/config/config.default.d.ts +10 -0
  212. package/types/packages/common/i18n/types.d.ts +2 -0
  213. package/types/packages/common/index.d.ts +1 -0
  214. package/types/packages/common/ssr/hydration.d.ts +72 -0
  215. package/types/packages/common/ssr/index.d.ts +34 -0
  216. package/types/packages/core/loader/merge.d.ts +3 -0
  217. package/types/packages/core/loader/model.d.ts +2 -2
  218. package/types/packages/core/paths.d.ts +5 -0
  219. package/types/packages/core/types.d.ts +10 -1
  220. package/types/scripts/vite-build/build.d.ts +1 -0
  221. package/types/scripts/vite-build/types.d.ts +3 -0
  222. package/types/ssrSharedData/outputPaths.d.ts +59 -0
  223. package/fe/packages/react/hooks/useWatch.test.js +0 -24
  224. package/fe/packages/react/ui/assets/table/no-result.js +0 -4
  225. package/fe/packages/react/ui/components/DataTable/dataTableWidth.test.js +0 -39
  226. package/fe/packages/react/ui/components/InputNumber/inputNumberUtils.test.js +0 -59
  227. /package/.skills/tc-generator/reference/project-template/{model → models}/product/mode.js +0 -0
  228. /package/.skills/tc-generator/reference/project-template/{model → models}/product/project/default.js +0 -0
  229. /package/fe/{model → models}/types/data/button.d.ts +0 -0
  230. /package/fe/{model → models}/types/data/component.d.ts +0 -0
  231. /package/fe/{model → models}/types/data/fetchInfo.d.ts +0 -0
  232. /package/fe/{model → models}/types/data/schema.d.ts +0 -0
  233. /package/fe/{model → models}/types/data/search.d.ts +0 -0
  234. /package/fe/{model → models}/types/index.d.ts +0 -0
  235. /package/fe/{model → models}/types/menuType.d.ts +0 -0
  236. /package/fe/{model → models}/types/model.d.ts +0 -0
  237. /package/{model → models}/frontend/extended/SchemaForm/data.d.ts +0 -0
  238. /package/{model → models}/frontend/src/common/auth/index.d.ts +0 -0
  239. /package/{model → models}/frontend/src/common/fetchErrorShow.d.ts +0 -0
  240. /package/{model → models}/frontend/src/common/language.d.ts +0 -0
  241. /package/{model → models}/frontend/src/common/logFn/index.d.ts +0 -0
  242. /package/{model → models}/frontend/src/common/request.d.ts +0 -0
  243. /package/{model → models}/frontend/src/components/AsyncSelect/AsyncSelect.d.ts +0 -0
  244. /package/{model → models}/frontend/src/components/AsyncSelect/index.d.ts +0 -0
  245. /package/{model → models}/frontend/src/defaultPages/SchemaPage/components/CallCom/DetailPanel.d.ts +0 -0
  246. /package/{model → models}/frontend/src/defaultPages/SchemaPage/components/CallCom/PopFrom.d.ts +0 -0
  247. /package/{model → models}/frontend/src/defaultPages/SchemaPage/components/CallCom/builtIn.d.ts +0 -0
  248. /package/{model → models}/frontend/src/defaultPages/SchemaPage/data/eventInfo.d.ts +0 -0
  249. /package/{model → models}/frontend/src/defaultPages/SchemaPage/data/index.d.ts +0 -0
  250. /package/{model → models}/frontend/src/defaultPages/SchemaPage/hooks/useComConfig.d.ts +0 -0
  251. /package/{model → models}/frontend/src/defaultPages/SchemaPage/schemaType.d.ts +0 -0
  252. /package/{model → models}/frontend/src/defaultPages/SchemaPage/utils/permissions.d.ts +0 -0
  253. /package/{model → models}/frontend/src/defaultPages/SchemaPage/utils/validator.d.ts +0 -0
  254. /package/{model → models}/frontend/src/hooks/useText.d.ts +0 -0
  255. /package/{model → models}/frontend/src/language/en-US.d.ts +0 -0
  256. /package/{model → models}/frontend/src/language/index.d.ts +0 -0
  257. /package/{model → models}/frontend/src/language/resources.d.ts +0 -0
  258. /package/{model → models}/frontend/src/language/zh-CN.d.ts +0 -0
  259. /package/{model → models}/frontend/src/stores/apiFreezer.d.ts +0 -0
  260. /package/{model → models}/frontend/src/stores/schemaEventBus.d.ts +0 -0
  261. /package/{model → models}/frontend/src/stores/schemaStore.d.ts +0 -0
  262. /package/{model → models}/frontend/src/typing/scalability.d.ts +0 -0
  263. /package/{model/model → models/models}/index.d.ts +0 -0
  264. /package/{model/model → models/models}/test.d.ts +0 -0
  265. /package/{model/model → models/models}/types/data/button.d.ts +0 -0
  266. /package/{model/model → models/models}/types/data/component.d.ts +0 -0
  267. /package/{model/model → models/models}/types/data/fetchInfo.d.ts +0 -0
  268. /package/{model/model → models/models}/types/data/schema.d.ts +0 -0
  269. /package/{model/model → models/models}/types/data/search.d.ts +0 -0
  270. /package/{model/model → models/models}/types/index.d.ts +0 -0
  271. /package/{model/model → models/models}/types/menuType.d.ts +0 -0
  272. /package/{model/model → models/models}/types/model.d.ts +0 -0
  273. /package/{model → models}/packages/common/array/index.d.ts +0 -0
  274. /package/{model → models}/packages/common/cache/LRUCache.d.ts +0 -0
  275. /package/{model → models}/packages/common/cache/index.d.ts +0 -0
  276. /package/{model → models}/packages/common/guards/index.d.ts +0 -0
  277. /package/{model → models}/packages/common/http/index.d.ts +0 -0
  278. /package/{model → models}/packages/common/i18n/default.d.ts +0 -0
  279. /package/{model → models}/packages/common/i18n/en-US.d.ts +0 -0
  280. /package/{model → models}/packages/common/i18n/index.d.ts +0 -0
  281. /package/{model → models}/packages/common/i18n/locales.d.ts +0 -0
  282. /package/{model → models}/packages/common/log/index.d.ts +0 -0
  283. /package/{model → models}/packages/common/number/index.d.ts +0 -0
  284. /package/{model → models}/packages/common/object/filterEmpty.d.ts +0 -0
  285. /package/{model → models}/packages/common/object/index.d.ts +0 -0
  286. /package/{model → models}/packages/common/rafTimer.d.ts +0 -0
  287. /package/{model → models}/packages/common/string/index.d.ts +0 -0
  288. /package/{model → models}/packages/common/types/index.d.ts +0 -0
  289. /package/{model → models}/packages/react/hooks/useBreadcrumb.d.ts +0 -0
  290. /package/{model → models}/packages/react/hooks/useExecuteOnce.d.ts +0 -0
  291. /package/{model → models}/packages/react/hooks/useLanguage.d.ts +0 -0
  292. /package/{model → models}/packages/react/ui/components/Button/Button.d.ts +0 -0
  293. /package/{model → models}/packages/react/ui/components/Button/SubmitButton.d.ts +0 -0
  294. /package/{model → models}/packages/react/ui/components/Button/index.d.ts +0 -0
  295. /package/{model → models}/packages/react/ui/components/Card/Card.d.ts +0 -0
  296. /package/{model → models}/packages/react/ui/components/Card/index.d.ts +0 -0
  297. /package/{model → models}/packages/react/ui/components/Checkbox/Checkbox.d.ts +0 -0
  298. /package/{model → models}/packages/react/ui/components/Checkbox/index.d.ts +0 -0
  299. /package/{model → models}/packages/react/ui/components/ConfirmDialog/ConfirmDialog.d.ts +0 -0
  300. /package/{model → models}/packages/react/ui/components/ConfirmDialog/index.d.ts +0 -0
  301. /package/{model → models}/packages/react/ui/components/DataTable/ActionBtn.d.ts +0 -0
  302. /package/{model → models}/packages/react/ui/components/DataTable/dataTableWidth.d.ts +0 -0
  303. /package/{model → models}/packages/react/ui/components/DataTable/index.d.ts +0 -0
  304. /package/{model → models}/packages/react/ui/components/Date/Calendar.d.ts +0 -0
  305. /package/{model → models}/packages/react/ui/components/Date/Date.d.ts +0 -0
  306. /package/{model → models}/packages/react/ui/components/Date/LocaleContext.d.ts +0 -0
  307. /package/{model → models}/packages/react/ui/components/Date/LocaleProvider.d.ts +0 -0
  308. /package/{model → models}/packages/react/ui/components/Date/TimePicker.d.ts +0 -0
  309. /package/{model → models}/packages/react/ui/components/Date/data.d.ts +0 -0
  310. /package/{model → models}/packages/react/ui/components/Date/dateLocaleStore.d.ts +0 -0
  311. /package/{model → models}/packages/react/ui/components/Date/dropdownPositioning.d.ts +0 -0
  312. /package/{model → models}/packages/react/ui/components/Date/index.d.ts +0 -0
  313. /package/{model → models}/packages/react/ui/components/Date/locales.d.ts +0 -0
  314. /package/{model → models}/packages/react/ui/components/Drawer/Drawer.d.ts +0 -0
  315. /package/{model → models}/packages/react/ui/components/Drawer/index.d.ts +0 -0
  316. /package/{model → models}/packages/react/ui/components/Dropdown/Dropdown.d.ts +0 -0
  317. /package/{model → models}/packages/react/ui/components/Dropdown/index.d.ts +0 -0
  318. /package/{model → models}/packages/react/ui/components/Form/Form.d.ts +0 -0
  319. /package/{model → models}/packages/react/ui/components/Form/FormItem.d.ts +0 -0
  320. /package/{model → models}/packages/react/ui/components/Form/index.d.ts +0 -0
  321. /package/{model → models}/packages/react/ui/components/Form/useForm.d.ts +0 -0
  322. /package/{model → models}/packages/react/ui/components/ImagePreview/ImagePreview.d.ts +0 -0
  323. /package/{model → models}/packages/react/ui/components/ImagePreview/PreviewImage.d.ts +0 -0
  324. /package/{model → models}/packages/react/ui/components/ImagePreview/index.d.ts +0 -0
  325. /package/{model → models}/packages/react/ui/components/Input/Input.d.ts +0 -0
  326. /package/{model → models}/packages/react/ui/components/Input/index.d.ts +0 -0
  327. /package/{model → models}/packages/react/ui/components/InputNumber/InputNumber.d.ts +0 -0
  328. /package/{model → models}/packages/react/ui/components/InputNumber/index.d.ts +0 -0
  329. /package/{model → models}/packages/react/ui/components/InputNumber/inputNumberUtils.d.ts +0 -0
  330. /package/{model → models}/packages/react/ui/components/Label/Label.d.ts +0 -0
  331. /package/{model → models}/packages/react/ui/components/Label/index.d.ts +0 -0
  332. /package/{model → models}/packages/react/ui/components/Layout/Layout.d.ts +0 -0
  333. /package/{model → models}/packages/react/ui/components/Layout/index.d.ts +0 -0
  334. /package/{model → models}/packages/react/ui/components/Loading/Loading.d.ts +0 -0
  335. /package/{model → models}/packages/react/ui/components/Loading/index.d.ts +0 -0
  336. /package/{model → models}/packages/react/ui/components/Menu/Menu.d.ts +0 -0
  337. /package/{model → models}/packages/react/ui/components/Menu/MenuContext.d.ts +0 -0
  338. /package/{model → models}/packages/react/ui/components/Menu/MenuItem.d.ts +0 -0
  339. /package/{model → models}/packages/react/ui/components/Menu/SubMenu.d.ts +0 -0
  340. /package/{model → models}/packages/react/ui/components/Menu/index.d.ts +0 -0
  341. /package/{model → models}/packages/react/ui/components/Menu/menuTypes.d.ts +0 -0
  342. /package/{model → models}/packages/react/ui/components/Menu/utils.d.ts +0 -0
  343. /package/{model → models}/packages/react/ui/components/Message/Message.d.ts +0 -0
  344. /package/{model → models}/packages/react/ui/components/Message/MessageManager.d.ts +0 -0
  345. /package/{model → models}/packages/react/ui/components/Message/data.d.ts +0 -0
  346. /package/{model → models}/packages/react/ui/components/Message/index.d.ts +0 -0
  347. /package/{model → models}/packages/react/ui/components/Modal/Modal.d.ts +0 -0
  348. /package/{model → models}/packages/react/ui/components/Modal/ModalManager.d.ts +0 -0
  349. /package/{model → models}/packages/react/ui/components/Modal/index.d.ts +0 -0
  350. /package/{model → models}/packages/react/ui/components/Notification/Notification.d.ts +0 -0
  351. /package/{model → models}/packages/react/ui/components/Notification/index.d.ts +0 -0
  352. /package/{model → models}/packages/react/ui/components/Overlay/Overlay.d.ts +0 -0
  353. /package/{model → models}/packages/react/ui/components/Overlay/index.d.ts +0 -0
  354. /package/{model → models}/packages/react/ui/components/Pagination/Pagination.d.ts +0 -0
  355. /package/{model → models}/packages/react/ui/components/Pagination/index.d.ts +0 -0
  356. /package/{model → models}/packages/react/ui/components/Popup/Popup.d.ts +0 -0
  357. /package/{model → models}/packages/react/ui/components/Popup/index.d.ts +0 -0
  358. /package/{model → models}/packages/react/ui/components/Radio/Radio.d.ts +0 -0
  359. /package/{model → models}/packages/react/ui/components/Radio/RadioGroup.d.ts +0 -0
  360. /package/{model → models}/packages/react/ui/components/Radio/index.d.ts +0 -0
  361. /package/{model → models}/packages/react/ui/components/Search/Search.d.ts +0 -0
  362. /package/{model → models}/packages/react/ui/components/Search/index.d.ts +0 -0
  363. /package/{model → models}/packages/react/ui/components/Select/Select.d.ts +0 -0
  364. /package/{model → models}/packages/react/ui/components/Select/dropdownPositioning.d.ts +0 -0
  365. /package/{model → models}/packages/react/ui/components/Select/index.d.ts +0 -0
  366. /package/{model → models}/packages/react/ui/components/Skeleton/Skeleton.d.ts +0 -0
  367. /package/{model → models}/packages/react/ui/components/Skeleton/index.d.ts +0 -0
  368. /package/{model → models}/packages/react/ui/components/Switch/Switch.d.ts +0 -0
  369. /package/{model → models}/packages/react/ui/components/Switch/index.d.ts +0 -0
  370. /package/{model → models}/packages/react/ui/components/TableSearch/TableSearch.d.ts +0 -0
  371. /package/{model → models}/packages/react/ui/components/TableSearch/index.d.ts +0 -0
  372. /package/{model → models}/packages/react/ui/components/TableSearch/lang.d.ts +0 -0
  373. /package/{model → models}/packages/react/ui/components/TableSearch/tableSearchLocaleStore.d.ts +0 -0
  374. /package/{model → models}/packages/react/ui/components/Tabs/Tabs.d.ts +0 -0
  375. /package/{model → models}/packages/react/ui/components/Tabs/index.d.ts +0 -0
  376. /package/{model → models}/packages/react/ui/components/Textarea/Textarea.d.ts +0 -0
  377. /package/{model → models}/packages/react/ui/components/Textarea/index.d.ts +0 -0
  378. /package/{model → models}/packages/react/ui/components/Tooltip/Tooltip.d.ts +0 -0
  379. /package/{model → models}/packages/react/ui/components/Tooltip/index.d.ts +0 -0
  380. /package/{model → models}/packages/react/ui/components/TreeSelect/TreeSelect.d.ts +0 -0
  381. /package/{model → models}/packages/react/ui/components/TreeSelect/index.d.ts +0 -0
  382. /package/{model → models}/packages/react/ui/components/Upload/ImageUpload.d.ts +0 -0
  383. /package/{model → models}/packages/react/ui/components/Upload/Upload.d.ts +0 -0
  384. /package/{model → models}/packages/react/ui/components/Upload/index.d.ts +0 -0
  385. /package/{model → models}/packages/react/ui/components/breadcrumb/breadcrumb.d.ts +0 -0
  386. /package/{model → models}/packages/react/ui/components/breadcrumb/index.d.ts +0 -0
  387. /package/{model → models}/packages/react/ui/components/hooks/useDropdownPositioning.d.ts +0 -0
  388. /package/{model → models}/packages/react/ui/components/hooks/useInputController.d.ts +0 -0
  389. /package/{model → models}/packages/react/ui/components/index.d.ts +0 -0
  390. /package/{model → models}/packages/react/ui/components/table/index.d.ts +0 -0
  391. /package/{model → models}/packages/react/ui/components/table/table.d.ts +0 -0
  392. /package/{model → models}/packages/react/ui/components/types/baseType.d.ts +0 -0
  393. /package/{model → models}/packages/react/ui/i18n/I18nProvider.d.ts +0 -0
  394. /package/{model → models}/packages/react/ui/i18n/index.d.ts +0 -0
  395. /package/{model → models}/packages/react/ui/i18n/useI18n.d.ts +0 -0
  396. /package/{model → models}/packages/react/ui/index.d.ts +0 -0
  397. /package/{model → models}/packages/react/ui/lib/createStoreHook.d.ts +0 -0
  398. /package/{model → models}/packages/react/ui/lib/export.d.ts +0 -0
  399. /package/{model → models}/packages/react/ui/lib/utils.d.ts +0 -0
  400. /package/{model → models}/packages/react/ui/stores/breadcrumb.d.ts +0 -0
  401. /package/{model → models}/packages/react/ui/stores/language.d.ts +0 -0
  402. /package/{model → models}/packages/react/ui/types/index.d.ts +0 -0
  403. /package/{model → models}/typings/type.d.ts +0 -0
@@ -1,4 +1,5 @@
1
1
  import { __exportAll } from "../../../../../../../_virtual/_rolldown/runtime.js";
2
+ import { Button } from "../../../Button/Button.js";
2
3
  import { DataTable } from "../../../DataTable/index.js";
3
4
  import "../../../index.js";
4
5
  import { useState } from "react";
@@ -15,229 +16,258 @@ var demoMeta = {
15
16
  };
16
17
  function DataTableDemo() {
17
18
  const [selectedKeys, setSelectedKeys] = useState([]);
18
- return /* @__PURE__ */ jsx(Fragment$1, { children: /* @__PURE__ */ jsxs("div", {
19
- className: "w-full",
20
- children: [/* @__PURE__ */ jsxs("p", {
21
- className: "text-sm mb-2",
22
- children: ["已选: ", JSON.stringify(selectedKeys)]
23
- }), /* @__PURE__ */ jsx(DataTable, {
24
- columns: [
25
- {
26
- key: "id",
27
- title: "ID",
28
- width: "60px"
29
- },
30
- {
31
- key: "name",
32
- title: "姓名"
33
- },
34
- {
35
- key: "role1",
36
- title: "角色1",
37
- dataIndex: "role",
38
- fixed: "left"
39
- },
40
- {
41
- key: "status1",
42
- title: "状态1",
43
- dataIndex: "status",
44
- fixed: "left"
45
- },
46
- {
47
- key: "role2",
48
- title: "角色2",
49
- dataIndex: "role"
50
- },
51
- {
52
- key: "status2",
53
- title: "状态2",
54
- dataIndex: "status"
55
- },
56
- {
57
- key: "role3",
58
- title: "角色3",
59
- dataIndex: "role"
60
- },
61
- {
62
- key: "status3",
63
- title: "状态3",
64
- dataIndex: "status"
65
- },
66
- {
67
- key: "role4",
68
- title: "角色4",
69
- dataIndex: "role"
70
- },
71
- {
72
- key: "status4",
73
- title: "状态4",
74
- dataIndex: "status"
75
- },
76
- {
77
- key: "role5",
78
- title: "角色5",
79
- dataIndex: "role"
80
- },
81
- {
82
- key: "status5",
83
- title: "状态5",
84
- dataIndex: "status"
85
- },
86
- {
87
- key: "role6",
88
- title: "角色6",
89
- dataIndex: "role"
90
- },
91
- {
92
- key: "status6",
93
- title: "状态6",
94
- dataIndex: "status"
95
- },
96
- {
97
- key: "role7",
98
- title: "角色",
99
- dataIndex: "role",
100
- fixed: "right"
101
- },
102
- {
103
- key: "status7",
104
- title: "状态",
105
- dataIndex: "status"
106
- },
107
- {
108
- key: "action",
109
- title: "操作",
110
- width: "96px",
111
- actionOverflow: "dropdown",
112
- actions: (_, record) => [
113
- {
114
- key: "edit",
115
- label: "修改",
116
- onClick: () => console.log("edit", record.id)
117
- },
118
- {
119
- key: "view",
120
- label: "查看",
121
- onClick: () => console.log("view", record.id)
122
- },
123
- {
124
- key: "delete",
125
- label: "删除",
126
- danger: true,
127
- onClick: () => console.log("delete", record.id)
128
- }
129
- ]
130
- }
131
- ],
132
- data: [
19
+ const [loading, setLoading] = useState(true);
20
+ const columns = [
21
+ {
22
+ key: "id",
23
+ title: "ID",
24
+ width: "60px"
25
+ },
26
+ {
27
+ key: "name",
28
+ title: "姓名"
29
+ },
30
+ {
31
+ key: "role1",
32
+ title: "角色1",
33
+ dataIndex: "role",
34
+ fixed: "left"
35
+ },
36
+ {
37
+ key: "status1",
38
+ title: "状态1",
39
+ dataIndex: "status",
40
+ fixed: "left"
41
+ },
42
+ {
43
+ key: "role2",
44
+ title: "角色2",
45
+ dataIndex: "role"
46
+ },
47
+ {
48
+ key: "status2",
49
+ title: "状态2",
50
+ dataIndex: "status"
51
+ },
52
+ {
53
+ key: "role3",
54
+ title: "角色3",
55
+ dataIndex: "role"
56
+ },
57
+ {
58
+ key: "status3",
59
+ title: "状态3",
60
+ dataIndex: "status"
61
+ },
62
+ {
63
+ key: "role4",
64
+ title: "角色4",
65
+ dataIndex: "role"
66
+ },
67
+ {
68
+ key: "status4",
69
+ title: "状态4",
70
+ dataIndex: "status"
71
+ },
72
+ {
73
+ key: "role5",
74
+ title: "角色5",
75
+ dataIndex: "role"
76
+ },
77
+ {
78
+ key: "status5",
79
+ title: "状态5",
80
+ dataIndex: "status"
81
+ },
82
+ {
83
+ key: "role6",
84
+ title: "角色6",
85
+ dataIndex: "role"
86
+ },
87
+ {
88
+ key: "status6",
89
+ title: "状态6",
90
+ dataIndex: "status"
91
+ },
92
+ {
93
+ key: "role7",
94
+ title: "角色",
95
+ dataIndex: "role",
96
+ fixed: "right"
97
+ },
98
+ {
99
+ key: "status7",
100
+ title: "状态",
101
+ dataIndex: "status"
102
+ },
103
+ {
104
+ key: "action",
105
+ title: "操作",
106
+ width: "96px",
107
+ actionOverflow: "dropdown",
108
+ actions: (_, record) => [
133
109
  {
134
- id: 1,
135
- name: "张三",
136
- role: "管理员",
137
- role7: "管理员",
138
- role6: "管理员",
139
- role5: "管理员",
140
- role4: "管理员",
141
- role3: "管理员",
142
- role2: "管理员",
143
- role1: "管理员",
144
- status: "正常",
145
- status7: "正常",
146
- status6: "正常",
147
- status5: "正常",
148
- status4: "正常",
149
- status3: "正常",
150
- status2: "正常",
151
- status1: "正常"
110
+ key: "edit",
111
+ label: "修改",
112
+ onClick: () => console.log("edit", record.id)
152
113
  },
153
114
  {
154
- id: 2,
155
- name: "李四",
156
- role: "用户",
157
- role7: "用户",
158
- role6: "用户",
159
- role5: "用户",
160
- role4: "用户",
161
- role3: "用户",
162
- role2: "用户",
163
- role1: "用户",
164
- status: "禁用",
165
- status7: "禁用",
166
- status6: "禁用",
167
- status5: "禁用",
168
- status4: "禁用",
169
- status3: "禁用",
170
- status2: "禁用",
171
- status1: "禁用"
115
+ key: "view",
116
+ label: "查看",
117
+ onClick: () => console.log("view", record.id)
172
118
  },
173
119
  {
174
- id: 3,
175
- name: "王五",
176
- role: "审计员",
177
- role7: "审计员",
178
- role6: "审计员",
179
- role5: "审计员",
180
- role4: "审计员",
181
- role3: "审计员",
182
- role2: "审计员",
183
- role1: "审计员",
184
- status: "正常",
185
- status7: "正常",
186
- status6: "正常",
187
- status5: "正常",
188
- status4: "正常",
189
- status3: "正常",
190
- status2: "正常",
191
- status1: "正常"
192
- },
193
- {
194
- id: 4,
195
- name: "赵六",
196
- role: "用户",
197
- role7: "用户",
198
- role6: "用户",
199
- role5: "用户",
200
- role4: "用户",
201
- role3: "用户",
202
- role2: "用户",
203
- role1: "用户",
204
- status: "正常",
205
- status7: "正常",
206
- status6: "正常",
207
- status5: "正常",
208
- status4: "正常",
209
- status3: "正常",
210
- status2: "正常",
211
- status1: "正常"
212
- },
213
- {
214
- id: 5,
215
- name: "孙七",
216
- role: "用户",
217
- role7: "用户",
218
- role6: "用户",
219
- role5: "用户",
220
- role4: "用户",
221
- role3: "用户",
222
- role2: "用户",
223
- role1: "用户",
224
- status: "正常",
225
- status7: "正常",
226
- status6: "正常",
227
- status5: "正常",
228
- status4: "正常",
229
- status3: "正常",
230
- status2: "正常",
231
- status1: "正常"
120
+ key: "delete",
121
+ label: "删除",
122
+ danger: true,
123
+ onClick: () => console.log("delete", record.id)
232
124
  }
233
- ],
125
+ ]
126
+ }
127
+ ];
128
+ const data = [
129
+ {
130
+ id: 1,
131
+ name: "张三",
132
+ role: "管理员",
133
+ role7: "管理员",
134
+ role6: "管理员",
135
+ role5: "管理员",
136
+ role4: "管理员",
137
+ role3: "管理员",
138
+ role2: "管理员",
139
+ role1: "管理员",
140
+ status: "正常",
141
+ status7: "正常",
142
+ status6: "正常",
143
+ status5: "正常",
144
+ status4: "正常",
145
+ status3: "正常",
146
+ status2: "正常",
147
+ status1: "正常"
148
+ },
149
+ {
150
+ id: 2,
151
+ name: "李四",
152
+ role: "用户",
153
+ role7: "用户",
154
+ role6: "用户",
155
+ role5: "用户",
156
+ role4: "用户",
157
+ role3: "用户",
158
+ role2: "用户",
159
+ role1: "用户",
160
+ status: "禁用",
161
+ status7: "禁用",
162
+ status6: "禁用",
163
+ status5: "禁用",
164
+ status4: "禁用",
165
+ status3: "禁用",
166
+ status2: "禁用",
167
+ status1: "禁用"
168
+ },
169
+ {
170
+ id: 3,
171
+ name: "王五",
172
+ role: "审计员",
173
+ role7: "审计员",
174
+ role6: "审计员",
175
+ role5: "审计员",
176
+ role4: "审计员",
177
+ role3: "审计员",
178
+ role2: "审计员",
179
+ role1: "审计员",
180
+ status: "正常",
181
+ status7: "正常",
182
+ status6: "正常",
183
+ status5: "正常",
184
+ status4: "正常",
185
+ status3: "正常",
186
+ status2: "正常",
187
+ status1: "正常"
188
+ },
189
+ {
190
+ id: 4,
191
+ name: "赵六",
192
+ role: "用户",
193
+ role7: "用户",
194
+ role6: "用户",
195
+ role5: "用户",
196
+ role4: "用户",
197
+ role3: "用户",
198
+ role2: "用户",
199
+ role1: "用户",
200
+ status: "正常",
201
+ status7: "正常",
202
+ status6: "正常",
203
+ status5: "正常",
204
+ status4: "正常",
205
+ status3: "正常",
206
+ status2: "正常",
207
+ status1: "正常"
208
+ },
209
+ {
210
+ id: 5,
211
+ name: "孙七",
212
+ role: "用户",
213
+ role7: "用户",
214
+ role6: "用户",
215
+ role5: "用户",
216
+ role4: "用户",
217
+ role3: "用户",
218
+ role2: "用户",
219
+ role1: "用户",
220
+ status: "正常",
221
+ status7: "正常",
222
+ status6: "正常",
223
+ status5: "正常",
224
+ status4: "正常",
225
+ status3: "正常",
226
+ status2: "正常",
227
+ status1: "正常"
228
+ }
229
+ ];
230
+ const loadingData = Array.from({ length: 20 }, (_, index) => {
231
+ const record = data[index % data.length];
232
+ return {
233
+ ...record,
234
+ id: index + 100,
235
+ name: `${record.name}-${index + 1}`
236
+ };
237
+ });
238
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs("div", {
239
+ className: "w-full",
240
+ children: [/* @__PURE__ */ jsxs("p", {
241
+ className: "text-sm mb-2",
242
+ children: ["已选: ", JSON.stringify(selectedKeys)]
243
+ }), /* @__PURE__ */ jsx(DataTable, {
244
+ columns,
245
+ data,
234
246
  rowKey: "id",
235
247
  rowSelection: {
236
248
  selectedRowKeys: selectedKeys,
237
249
  onChange: (keys) => setSelectedKeys(keys)
238
250
  }
239
251
  })]
240
- }) });
252
+ }), /* @__PURE__ */ jsxs("div", {
253
+ className: "w-full",
254
+ children: [/* @__PURE__ */ jsxs("div", {
255
+ className: "mb-2 flex items-center justify-between gap-3",
256
+ children: [/* @__PURE__ */ jsx("p", {
257
+ className: "text-sm",
258
+ children: "Loading 覆盖宽表格"
259
+ }), /* @__PURE__ */ jsx(Button, {
260
+ size: "sm",
261
+ onClick: () => setLoading((value) => !value),
262
+ children: loading ? "关闭 loading" : "开启 loading"
263
+ })]
264
+ }), /* @__PURE__ */ jsx(DataTable, {
265
+ columns,
266
+ data: loadingData,
267
+ rowKey: "id",
268
+ loading
269
+ })]
270
+ })] });
241
271
  }
242
272
  //#endregion
243
273
  export { DataTableDemo_exports, DataTableDemo as default, demoMeta };
@@ -1,4 +1,4 @@
1
1
  //#region packages/react/ui/components/testPage/demos/core/DataTableDemo.tsx?raw
2
- var DataTableDemo_default = "import {\n DataTable,\n type TableColumnDef\n} from '@tc/ui-react/components'\nimport { useState } from 'react'\nimport type { DemoMeta } from '../../types'\n\nexport const demoMeta = {\n title: 'DataTable',\n order: 20,\n contentClassName: 'flex flex-wrap gap-3 items-start',\n} satisfies DemoMeta\n\n// ─── DataTable ───────────────────────────────────────────────────────────────\n\ntype User = {\n id: number\n name: string\n role: string\n role1: string\n role2: string\n role3: string\n role4: string\n role5: string\n role6: string\n role7: string\n status: string\n status1: string\n status2: string\n status3: string\n status4: string\n status5: string\n status6: string\n status7: string\n}\n\nexport default function DataTableDemo() {\n const [selectedKeys, setSelectedKeys] = useState<(string | number)[]>([])\n\n const columns: TableColumnDef<User>[] = [\n { key: 'id', title: 'ID', width: '60px' },\n { key: 'name', title: '姓名' },\n { key: 'role1', title: '角色1', dataIndex: 'role', fixed: 'left' },\n { key: 'status1', title: '状态1', dataIndex: 'status', fixed: 'left' },\n { key: 'role2', title: '角色2', dataIndex: 'role' },\n { key: 'status2', title: '状态2', dataIndex: 'status' },\n { key: 'role3', title: '角色3', dataIndex: 'role' },\n { key: 'status3', title: '状态3', dataIndex: 'status' },\n { key: 'role4', title: '角色4', dataIndex: 'role' },\n { key: 'status4', title: '状态4', dataIndex: 'status' },\n { key: 'role5', title: '角色5', dataIndex: 'role' },\n { key: 'status5', title: '状态5', dataIndex: 'status' },\n { key: 'role6', title: '角色6', dataIndex: 'role' },\n { key: 'status6', title: '状态6', dataIndex: 'status' },\n { key: 'role7', title: '角色', dataIndex: 'role', fixed: 'right' },\n { key: 'status7', title: '状态', dataIndex: 'status' },\n {\n key: 'action',\n title: '操作',\n width: '96px',\n actionOverflow: 'dropdown',\n actions: (_, record) => [\n { key: 'edit', label: '修改', onClick: () => console.log('edit', record.id) },\n { key: 'view', label: '查看', onClick: () => console.log('view', record.id) },\n { key: 'delete', label: '删除', danger: true, onClick: () => console.log('delete', record.id) },\n ],\n },\n ]\n\n const data: User[] = [\n {\n id: 1,\n name: '张三',\n role: '管理员',\n role7: '管理员',\n role6: '管理员',\n role5: '管理员',\n role4: '管理员',\n role3: '管理员',\n role2: '管理员',\n role1: '管理员',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n {\n id: 2,\n name: '李四',\n role: '用户',\n role7: '用户',\n role6: '用户',\n role5: '用户',\n role4: '用户',\n role3: '用户',\n role2: '用户',\n role1: '用户',\n status: '禁用',\n status7: '禁用',\n status6: '禁用',\n status5: '禁用',\n status4: '禁用',\n status3: '禁用',\n status2: '禁用',\n status1: '禁用',\n },\n {\n id: 3,\n name: '王五',\n role: '审计员',\n role7: '审计员',\n role6: '审计员',\n role5: '审计员',\n role4: '审计员',\n role3: '审计员',\n role2: '审计员',\n role1: '审计员',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n {\n id: 4,\n name: '赵六',\n role: '用户',\n role7: '用户',\n role6: '用户',\n role5: '用户',\n role4: '用户',\n role3: '用户',\n role2: '用户',\n role1: '用户',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n {\n id: 5,\n name: '孙七',\n role: '用户',\n role7: '用户',\n role6: '用户',\n role5: '用户',\n role4: '用户',\n role3: '用户',\n role2: '用户',\n role1: '用户',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n ]\n\n return (\n <>\n <div className=\"w-full\">\n <p className=\"text-sm mb-2\">已选: {JSON.stringify(selectedKeys)}</p>\n <DataTable\n columns={columns}\n data={data}\n rowKey=\"id\"\n rowSelection={{\n selectedRowKeys: selectedKeys,\n onChange: (keys) => setSelectedKeys(keys),\n }}\n />\n </div>\n </>\n )\n}\n";
2
+ var DataTableDemo_default = "import {\n Button,\n DataTable,\n type TableColumnDef\n} from '@tc/ui-react/components'\nimport { useState } from 'react'\nimport type { DemoMeta } from '../../types'\n\nexport const demoMeta = {\n title: 'DataTable',\n order: 20,\n contentClassName: 'flex flex-wrap gap-3 items-start',\n} satisfies DemoMeta\n\n// ─── DataTable ───────────────────────────────────────────────────────────────\n\ntype User = {\n id: number\n name: string\n role: string\n role1: string\n role2: string\n role3: string\n role4: string\n role5: string\n role6: string\n role7: string\n status: string\n status1: string\n status2: string\n status3: string\n status4: string\n status5: string\n status6: string\n status7: string\n}\n\nexport default function DataTableDemo() {\n const [selectedKeys, setSelectedKeys] = useState<(string | number)[]>([])\n const [loading, setLoading] = useState(true)\n\n const columns: TableColumnDef<User>[] = [\n { key: 'id', title: 'ID', width: '60px' },\n { key: 'name', title: '姓名' },\n { key: 'role1', title: '角色1', dataIndex: 'role', fixed: 'left' },\n { key: 'status1', title: '状态1', dataIndex: 'status', fixed: 'left' },\n { key: 'role2', title: '角色2', dataIndex: 'role' },\n { key: 'status2', title: '状态2', dataIndex: 'status' },\n { key: 'role3', title: '角色3', dataIndex: 'role' },\n { key: 'status3', title: '状态3', dataIndex: 'status' },\n { key: 'role4', title: '角色4', dataIndex: 'role' },\n { key: 'status4', title: '状态4', dataIndex: 'status' },\n { key: 'role5', title: '角色5', dataIndex: 'role' },\n { key: 'status5', title: '状态5', dataIndex: 'status' },\n { key: 'role6', title: '角色6', dataIndex: 'role' },\n { key: 'status6', title: '状态6', dataIndex: 'status' },\n { key: 'role7', title: '角色', dataIndex: 'role', fixed: 'right' },\n { key: 'status7', title: '状态', dataIndex: 'status' },\n {\n key: 'action',\n title: '操作',\n width: '96px',\n actionOverflow: 'dropdown',\n actions: (_, record) => [\n { key: 'edit', label: '修改', onClick: () => console.log('edit', record.id) },\n { key: 'view', label: '查看', onClick: () => console.log('view', record.id) },\n { key: 'delete', label: '删除', danger: true, onClick: () => console.log('delete', record.id) },\n ],\n },\n ]\n\n const data: User[] = [\n {\n id: 1,\n name: '张三',\n role: '管理员',\n role7: '管理员',\n role6: '管理员',\n role5: '管理员',\n role4: '管理员',\n role3: '管理员',\n role2: '管理员',\n role1: '管理员',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n {\n id: 2,\n name: '李四',\n role: '用户',\n role7: '用户',\n role6: '用户',\n role5: '用户',\n role4: '用户',\n role3: '用户',\n role2: '用户',\n role1: '用户',\n status: '禁用',\n status7: '禁用',\n status6: '禁用',\n status5: '禁用',\n status4: '禁用',\n status3: '禁用',\n status2: '禁用',\n status1: '禁用',\n },\n {\n id: 3,\n name: '王五',\n role: '审计员',\n role7: '审计员',\n role6: '审计员',\n role5: '审计员',\n role4: '审计员',\n role3: '审计员',\n role2: '审计员',\n role1: '审计员',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n {\n id: 4,\n name: '赵六',\n role: '用户',\n role7: '用户',\n role6: '用户',\n role5: '用户',\n role4: '用户',\n role3: '用户',\n role2: '用户',\n role1: '用户',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n {\n id: 5,\n name: '孙七',\n role: '用户',\n role7: '用户',\n role6: '用户',\n role5: '用户',\n role4: '用户',\n role3: '用户',\n role2: '用户',\n role1: '用户',\n status: '正常',\n status7: '正常',\n status6: '正常',\n status5: '正常',\n status4: '正常',\n status3: '正常',\n status2: '正常',\n status1: '正常',\n },\n ]\n const loadingData: User[] = Array.from({ length: 20 }, (_, index) => {\n const record = data[index % data.length]!\n\n return {\n ...record,\n id: index + 100,\n name: `${record.name}-${index + 1}`,\n }\n })\n\n return (\n <>\n <div className=\"w-full\">\n <p className=\"text-sm mb-2\">已选: {JSON.stringify(selectedKeys)}</p>\n <DataTable\n columns={columns}\n data={data}\n rowKey=\"id\"\n rowSelection={{\n selectedRowKeys: selectedKeys,\n onChange: (keys) => setSelectedKeys(keys),\n }}\n />\n </div>\n <div className=\"w-full\">\n <div className=\"mb-2 flex items-center justify-between gap-3\">\n <p className=\"text-sm\">Loading 覆盖宽表格</p>\n <Button size=\"sm\" onClick={() => setLoading((value) => !value)}>\n {loading ? '关闭 loading' : '开启 loading'}\n </Button>\n </div>\n <DataTable columns={columns} data={loadingData} rowKey=\"id\" loading={loading} />\n </div>\n </>\n )\n}\n";
3
3
  //#endregion
4
4
  export { DataTableDemo_default as default };
@@ -5,6 +5,7 @@ import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
5
5
  //#region packages/react/ui/i18n/I18nProvider.tsx
6
6
  function I18nProvider({ language, fallbackLanguage = defaultLanguage, resources, mergeResources = true, persist = true, storageKey = languageLocalKey, children }) {
7
7
  const configureI18n = useI18nStore((state) => state.configureI18n);
8
+ const hydrateStoredLanguage = useI18nStore((state) => state.hydrateStoredLanguage);
8
9
  const setLanguage = useI18nStore((state) => state.setLanguage);
9
10
  const setFallbackLanguage = useI18nStore((state) => state.setFallbackLanguage);
10
11
  const setResources = useI18nStore((state) => state.setResources);
@@ -13,8 +14,11 @@ function I18nProvider({ language, fallbackLanguage = defaultLanguage, resources,
13
14
  persist,
14
15
  storageKey
15
16
  });
17
+ if (language === void 0) hydrateStoredLanguage();
16
18
  }, [
17
19
  configureI18n,
20
+ hydrateStoredLanguage,
21
+ language,
18
22
  persist,
19
23
  storageKey
20
24
  ]);
@@ -32,6 +32,7 @@ import { Form } from "./components/Form/Form.js";
32
32
  import { Label } from "./components/Label/Label.js";
33
33
  import { FormItem } from "./components/Form/FormItem.js";
34
34
  import { useForm } from "./components/Form/useForm.js";
35
+ import { registerSchemaFormComponents } from "./components/Form/SchemaForm/data.js";
35
36
  import { SchemaForm } from "./components/Form/SchemaForm/index.js";
36
37
  import { ImagePreviewController } from "./components/ImagePreview/ImagePreview.js";
37
38
  import { PreviewImage } from "./components/ImagePreview/PreviewImage.js";
@@ -55,4 +56,4 @@ import { TreeSelect } from "./components/TreeSelect/TreeSelect.js";
55
56
  import { FileUpload } from "./components/Upload/Upload.js";
56
57
  import { ImageUpload } from "./components/Upload/ImageUpload.js";
57
58
  import "./components/index.js";
58
- export { ActionBtn, AsynchronousButton, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Card, Checkbox, CollapseToggle, ConfirmDialog, DataTable, Drawer, Dropdown, FileUpload, Form, FormItem, I18nProvider, ImagePreviewController, ImageUpload, Input, InputNumber, Label, Layout, Loading, LoadingIndicator, Menu, MenuItem, Modal, Notification, Overlay, Pagination, Popup, PreviewImage, Radio, RadioGroup, SchemaForm, Search, Select, SimpleBreadcrumb, Skeleton, SubMenu, SubmitButton, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, TableSearch, Tabs, Textarea, Tooltip, TreeSelect, canUseDocument, cn, createStoreHook, defaultEnglishResources, defaultLanguage, defaultLanguageResources, formatDate, formatDateTime, formatTime, generateStartEndTime, getDefaultDropdownPosition, getI18nPathValue, getLanguage, i18n, i18nStore, interpolateI18nMessage, isPlainI18nDictionary, languageLocalKey, mergeI18nDictionary, mergeI18nResources, message, modal, t, translate, translations, useDropdownPositioning, useForm, useI18n, useI18nStore, useMenuStore, useRadioGroupContext };
59
+ export { ActionBtn, AsynchronousButton, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Card, Checkbox, CollapseToggle, ConfirmDialog, DataTable, Drawer, Dropdown, FileUpload, Form, FormItem, I18nProvider, ImagePreviewController, ImageUpload, Input, InputNumber, Label, Layout, Loading, LoadingIndicator, Menu, MenuItem, Modal, Notification, Overlay, Pagination, Popup, PreviewImage, Radio, RadioGroup, SchemaForm, Search, Select, SimpleBreadcrumb, Skeleton, SubMenu, SubmitButton, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, TableSearch, Tabs, Textarea, Tooltip, TreeSelect, canUseDocument, cn, createStoreHook, defaultEnglishResources, defaultLanguage, defaultLanguageResources, formatDate, formatDateTime, formatTime, generateStartEndTime, getDefaultDropdownPosition, getI18nPathValue, getLanguage, i18n, i18nStore, interpolateI18nMessage, isPlainI18nDictionary, languageLocalKey, mergeI18nDictionary, mergeI18nResources, message, modal, registerSchemaFormComponents, t, translate, translations, useDropdownPositioning, useForm, useI18n, useI18nStore, useMenuStore, useRadioGroupContext };
@@ -0,0 +1,13 @@
1
+ import "../../../frontend/src/main";
2
+ import type { ProjectInfo } from "../../../frontend/src/api/baseInfo";
3
+ import type { SSRPropsContext } from "../../types";
4
+ export interface DashSSRProps extends Record<string, unknown> {
5
+ path?: string;
6
+ basePath?: string;
7
+ projectInfo?: ProjectInfo | null;
8
+ }
9
+ declare function DashSSRPage({ path, basePath, projectInfo }: DashSSRProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function getServerProps(context: SSRPropsContext): Promise<DashSSRProps>;
11
+ export declare const pageTitle = "Dash";
12
+ export declare const pageDescription = "Server-rendered Dash page.";
13
+ export default DashSSRPage;