@_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
@@ -0,0 +1,69 @@
1
+ //#region app/html/shell.ts
2
+ var e = {
3
+ head: "<!-- TC_SHARED_HEAD -->",
4
+ runtimeContext: "<!-- TC_RUNTIME_CONTEXT -->"
5
+ }, t = (e) => JSON.stringify(e).replace(/</g, "\\u003c").replace(/>/g, "\\u003e").replace(/&/g, "\\u0026").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
6
+ function n(e) {
7
+ return String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
8
+ }
9
+ function r(e) {
10
+ return n(e);
11
+ }
12
+ function i() {
13
+ return ";(() => {\n const storageKey = 'tc_theme'\n let mode = 'dark'\n\n try {\n const storedMode = localStorage.getItem(storageKey)\n if (storedMode === 'light' || storedMode === 'dark') {\n mode = storedMode\n }\n } catch (error) {\n // Keep the template default when localStorage is unavailable.\n }\n\n const root = document.documentElement\n root.classList.toggle('dark', mode === 'dark')\n root.style.colorScheme = mode\n})()";
14
+ }
15
+ function a() {
16
+ return `<script>${i()}<\/script>`;
17
+ }
18
+ function o({ titleHtml: e, descriptionAttr: t, preloadLinks: n = "" }) {
19
+ let r = typeof t == "string" ? `\n <meta name="description" content="${t}" />` : "", i = n ? `\n ${n}` : "";
20
+ return ` <meta charset="UTF-8" />
21
+ ${a()}
22
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
23
+ <link rel="icon" type="image/x-icon" href="/static/logo.png" />
24
+ <title>${e}</title>${r}${i}`;
25
+ }
26
+ function s() {
27
+ return o({ titleHtml: "{{ name }}" });
28
+ }
29
+ function c({ basePathExpression: e, feBasePageExpression: t, projKeyExpression: n, signKeyExpression: r, renderModeExpression: i }) {
30
+ return `window['_basePath'] = ${e}
31
+ window['_FEBasePage'] = ${t}
32
+ window['_projKey'] = ${n}
33
+ window['_signKey'] = ${r}
34
+ window['_renderMode'] = ${i}
35
+ window['_isSSR'] = window['_renderMode'] === 'ssr'
36
+ const s = document.getElementById('input')
37
+ s.parentElement.removeChild(s)`;
38
+ }
39
+ function l() {
40
+ return "const appOptionsScript = document.getElementById('app-options-data')\nwindow['appOptions'] = JSON.parse(appOptionsScript.textContent || '{}')\nappOptionsScript.parentElement.removeChild(appOptionsScript)";
41
+ }
42
+ function u(e) {
43
+ return `<script id="input">
44
+ ${c(e)}
45
+ <\/script>
46
+ <script type="application/json" id="app-options-data">${e.optionsJsonHtml}<\/script>
47
+ <script>
48
+ ${l()}
49
+ <\/script>`;
50
+ }
51
+ function d() {
52
+ return u({
53
+ basePathExpression: "{{basePath | safe}}",
54
+ feBasePageExpression: "{{FEBasePage | safe}}",
55
+ projKeyExpression: "{{projKeyJson | safe}}",
56
+ signKeyExpression: "{{signKey | safe}}",
57
+ renderModeExpression: t("csr"),
58
+ optionsJsonHtml: "{{ options | safe }}"
59
+ });
60
+ }
61
+ function f(e, t, n) {
62
+ if (!e.includes(t)) throw Error(`CSR entry template is missing shared shell marker: ${t}`);
63
+ return e.replace(t, n);
64
+ }
65
+ function p(t) {
66
+ return f(f(t, e.head, s()), e.runtimeContext, d());
67
+ }
68
+ //#endregion
69
+ export { p as applySharedCSRShellTemplate, n as escapeHtml, r as escapeHtmlAttr, l as renderAppOptionsScriptContent, s as renderCSRDocumentHeadTemplate, d as renderCSRRuntimeContextScriptsTemplate, o as renderDocumentHeadHtml, u as renderRuntimeContextScriptsFromExpressions, c as renderRuntimeInputScriptContentFromExpressions, a as renderThemeScript, i as renderThemeScriptContent, t as serializeForHtmlScript, e as sharedCSRShellMarkers };
@@ -1,22 +1,31 @@
1
- import e from "koa-compress";
2
- import t from "koa-bodyparser";
3
- import n from "koa-static";
1
+ import { SSR_SERVER_OUT_DIR as e } from "../ssrSharedData/outputPaths.js";
2
+ import t from "koa-compress";
3
+ import n from "koa-bodyparser";
4
+ import r from "koa-static";
4
5
  //#region app/middleware.ts
5
- var r = t({
6
+ var i = n({
6
7
  formLimit: "1000mb",
7
8
  enableTypes: [
8
9
  "form",
9
10
  "json",
10
11
  "text"
11
12
  ]
12
- }), i = (t) => {
13
- let i = t.envs.isLocal() ? {
13
+ }), a = (n) => {
14
+ let a = n.envs.isLocal() ? {
14
15
  maxage: 0,
15
16
  setHeaders(e) {
16
17
  e.setHeader("Cache-Control", "no-store, no-cache, must-revalidate, proxy-revalidate"), e.setHeader("Pragma", "no-cache"), e.setHeader("Expires", "0");
17
18
  }
18
- } : { maxage: t.config.resourceCacheTimeMs ?? 300 * 1e3 };
19
- t.use(t.middlewares.errorHandle), t.use(e({ threshold: 2048 })), t.publicsPath.forEach((e) => t.use(n(e, i))), t.use(r), t.use(t.middlewares.requestParameterParsing), t.use(t.middlewares.projectHandler), !t.envs.isLocal() && t.use(t.middlewares.apiSignVerify), t.use(t.middlewares.apiParamsVerify);
19
+ } : { maxage: n.config.resourceCacheTimeMs ?? 300 * 1e3 };
20
+ n.use(n.middlewares.errorHandle), n.use(t({ threshold: 2048 }));
21
+ let o = [`/dist/${e}`, "/dist/.vite"];
22
+ n.use(async (e, t) => {
23
+ if (o.some((t) => e.path === t || e.path.startsWith(`${t}/`))) {
24
+ e.status = 404;
25
+ return;
26
+ }
27
+ await t();
28
+ }), n.publicsPath.forEach((e) => n.use(r(e, a))), n.use(i), n.use(n.middlewares.requestParameterParsing), n.use(n.middlewares.projectHandler), !n.envs.isLocal() && n.use(n.middlewares.apiSignVerify), n.use(n.middlewares.apiParamsVerify);
20
29
  };
21
30
  //#endregion
22
- export { i as default };
31
+ export { a as default };
@@ -0,0 +1,8 @@
1
+ import { normalizeRouteBasePath as e } from "../../packages/core/paths.js";
2
+ //#region app/router/ssr.ts
3
+ var t = (t, n) => {
4
+ let r = e(t.options.ssrPageBasePath, "/fessr");
5
+ n.level = 1, n.get([`${r}/:page`, `${r}/:page/:rest(.*)`], t.controller.ssr.renderSSRPage.bind(t.controller.ssr));
6
+ };
7
+ //#endregion
8
+ export { t as default };
@@ -1,7 +1,8 @@
1
+ import { normalizeRouteBasePath as e } from "../../packages/core/paths.js";
1
2
  //#region app/router/view.ts
2
- var e = (e, t) => {
3
- let { pageBasePage: n } = e.options;
4
- t.level = 2, t.get([`${n}:page`, `${n}:page/:r(.*)`], e.controller.view.renderPage.bind(e.controller.view));
3
+ var t = (t, n) => {
4
+ let r = e(t.options.pageBasePath);
5
+ n.level = 2, n.get([`${r}/:page`, `${r}/:page/:r(.*)`], t.controller.view.renderPage.bind(t.controller.view));
5
6
  };
6
7
  //#endregion
7
- export { e as default };
8
+ export { t as default };
@@ -0,0 +1,90 @@
1
+ import { normalizeRouteBasePath as e } from "../../packages/core/paths.js";
2
+ import { escapeHtml as t, escapeHtmlAttr as n, renderAppOptionsScriptContent as r, renderDocumentHeadHtml as i, renderRuntimeContextScriptsFromExpressions as a, renderRuntimeInputScriptContentFromExpressions as o, serializeForHtmlScript as s } from "../html/shell.js";
3
+ //#region app/ssr/html.ts
4
+ function c(...e) {
5
+ return `/${e.filter(Boolean).map((e) => e.replace(/^\/+|\/+$/g, "")).filter(Boolean).join("/")}`;
6
+ }
7
+ function l(e) {
8
+ let t = e.query.projk;
9
+ return Array.isArray(t) ? t.join("") : String(t ?? "");
10
+ }
11
+ function u(t, n, r) {
12
+ let i = e(t.options.pageBasePath) || "/", a = c(e(t.options.ssrPageBasePath, "/fessr") || "/fessr", r), o = l(n);
13
+ return {
14
+ basePathExpression: s(a),
15
+ feBasePageExpression: s(i),
16
+ projKeyExpression: s(o),
17
+ signKeyExpression: s(t.config.signKey),
18
+ renderModeExpression: s("ssr"),
19
+ optionsJsonHtml: s(t.options)
20
+ };
21
+ }
22
+ function d(e, t, n) {
23
+ return o(u(e, t, n));
24
+ }
25
+ function f(e, t, n) {
26
+ return a(u(e, t, n));
27
+ }
28
+ function p(e) {
29
+ let { app: t, ctx: n, page: r, hydrationScript: i = "", clientScript: a = "" } = e;
30
+ return {
31
+ beforeAppHtml: `<!DOCTYPE html>
32
+ <html lang="en" class="dark" style="color-scheme: dark">
33
+ <head>
34
+ ${m(e)}
35
+ </head>
36
+ ${f(t, n, r)}
37
+ <body>
38
+ <div id="root">`,
39
+ afterAppHtml: `</div>
40
+ ${i}
41
+ ${a}
42
+ </body>
43
+ </html>`
44
+ };
45
+ }
46
+ function m(e) {
47
+ let { title: r, description: a = "", preloadLinks: o = "" } = e;
48
+ return i({
49
+ titleHtml: t(r),
50
+ descriptionAttr: n(a),
51
+ preloadLinks: o
52
+ });
53
+ }
54
+ function h(e, t) {
55
+ let { app: n, ctx: i, page: a, appNode: o, hydrationScriptContent: c = "" } = t;
56
+ return e.createElement("html", {
57
+ lang: "en",
58
+ className: "dark",
59
+ style: { colorScheme: "dark" }
60
+ }, e.createElement("head", { dangerouslySetInnerHTML: { __html: m(t) } }), e.createElement("body", null, e.createElement("script", {
61
+ id: "input",
62
+ dangerouslySetInnerHTML: { __html: d(n, i, a) }
63
+ }), e.createElement("script", {
64
+ type: "application/json",
65
+ id: "app-options-data",
66
+ dangerouslySetInnerHTML: { __html: s(n.options) }
67
+ }), e.createElement("script", { dangerouslySetInnerHTML: { __html: r() } }), c ? e.createElement("script", { dangerouslySetInnerHTML: { __html: c } }) : null, e.createElement("div", { id: "root" }, o)));
68
+ }
69
+ function g(e) {
70
+ let { appHtml: t, ...n } = e, { beforeAppHtml: r, afterAppHtml: i } = p(n);
71
+ return `${r}${t}${i}`;
72
+ }
73
+ function _(e) {
74
+ let { app: n, ctx: r, page: i, status: a, title: o, message: s, error: c } = e, l = n.config.ssr?.exposeErrorDetails ?? n.envs.isLocal(), u = c instanceof Error ? c.stack || c.message : String(c ?? ""), d = l && u ? `<pre style="white-space:pre-wrap;margin-top:16px;padding:12px;border:1px solid #d8dee4;background:#f6f8fa;color:#24292f;overflow:auto">${t(u)}</pre>` : "";
75
+ return g({
76
+ app: n,
77
+ ctx: r,
78
+ page: i,
79
+ title: o,
80
+ description: s,
81
+ appHtml: `<main style="font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;max-width:720px;margin:72px auto;padding:0 24px;line-height:1.5;color:#24292f">
82
+ <p style="margin:0 0 8px;color:#57606a;font-size:14px">SSR ${a}</p>
83
+ <h1 style="margin:0 0 12px;font-size:28px;line-height:1.2">${t(o)}</h1>
84
+ <p style="margin:0;color:#57606a">${t(s)}</p>
85
+ ${d}
86
+ </main>`
87
+ });
88
+ }
89
+ //#endregion
90
+ export { h as createSSRDocumentElement, t as escapeHtml, n as escapeHtmlAttr, _ as renderSSRErrorHtml, g as renderSSRHtmlShell, p as renderSSRHtmlShellParts, s as serializeForHtmlScript };
@@ -0,0 +1,47 @@
1
+ import { ssrClientAssetUrl as e } from "../../ssrSharedData/outputPaths.js";
2
+ import t from "node:path";
3
+ //#region app/ssr/manifest.ts
4
+ function n(e) {
5
+ return String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
6
+ }
7
+ function r(e, n, r) {
8
+ let i = n.split(t.sep).join("/"), a = r.src?.split(t.sep).join("/");
9
+ return [
10
+ r.name,
11
+ i,
12
+ a
13
+ ].filter((e) => !!e).some((n) => {
14
+ let r = n.split(t.sep).join("/"), i = t.basename(r).replace(/\.entry\.[^.]+$/, "");
15
+ return r === e || i === e || t.basename(t.dirname(r)) === e;
16
+ });
17
+ }
18
+ function i(e, t) {
19
+ if (!e) return null;
20
+ let n = Object.entries(e), i = n.find(([, e]) => e.isEntry && e.name === t);
21
+ if (i) return i[1];
22
+ let a = n.find(([e, n]) => n.isEntry && r(t, e, n));
23
+ return a ? a[1] : n.find(([e, n]) => r(t, e, n))?.[1] ?? null;
24
+ }
25
+ function a(t, r) {
26
+ if (!t || !r) return "";
27
+ let i = t, a = [], o = /* @__PURE__ */ new Set(), s = /* @__PURE__ */ new Set();
28
+ function c(t) {
29
+ o.has(t) || (o.add(t), a.push(`<link rel="modulepreload" href="${n(e(t))}" />`));
30
+ }
31
+ function l(t) {
32
+ o.has(t) || (o.add(t), a.push(`<link rel="stylesheet" href="${n(e(t))}" />`));
33
+ }
34
+ function u(e) {
35
+ if (!s.has(e)) {
36
+ s.add(e), e.file && c(e.file);
37
+ for (let t of e.css ?? []) l(t);
38
+ for (let t of e.imports ?? []) {
39
+ let e = i[t];
40
+ e && u(e);
41
+ }
42
+ }
43
+ }
44
+ return u(r), a.join("\n");
45
+ }
46
+ //#endregion
47
+ export { i as findSSRClientEntry, a as generateSSRPreloadLinks };
@@ -1,46 +1,11 @@
1
1
  <!DOCTYPE html>
2
2
  <html lang="en" class="dark" style="color-scheme: dark">
3
3
  <head>
4
- <meta charset="UTF-8" />
5
- <script>
6
- ;(() => {
7
- const storageKey = 'tc_theme'
8
- let mode = 'dark'
9
-
10
- try {
11
- const storedMode = localStorage.getItem(storageKey)
12
- if (storedMode === 'light' || storedMode === 'dark') {
13
- mode = storedMode
14
- }
15
- } catch (error) {
16
- // Keep the template default when localStorage is unavailable.
17
- }
18
-
19
- const root = document.documentElement
20
- root.classList.toggle('dark', mode === 'dark')
21
- root.style.colorScheme = mode
22
- })()
23
- </script>
24
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
25
- <link rel="icon" type="image/x-icon" href="/static/logo.png" />
26
- <title>{{ name }}</title>
4
+ <!-- TC_SHARED_HEAD -->
27
5
  <!-- TC_HEAD_SLOT -->
28
6
  </head>
29
7
 
30
- <script id="input">
31
- window['_basePath'] = {{basePath | safe}}
32
- window['_FEBasePage'] = {{FEBasePage | safe}}
33
- window['_projKey'] = {{projKeyJson | safe}}
34
- window['_signKey'] = {{signKey | safe}}
35
- const s = document.getElementById('input')
36
- s.parentElement.removeChild(s)
37
- </script>
38
- <script type="application/json" id="app-options-data">{{ options | safe }}</script>
39
- <script>
40
- const appOptionsScript = document.getElementById('app-options-data')
41
- window['appOptions'] = JSON.parse(appOptionsScript.textContent || '{}')
42
- appOptionsScript.parentElement.removeChild(appOptionsScript)
43
- </script>
8
+ <!-- TC_RUNTIME_CONTEXT -->
44
9
 
45
10
  <body>
46
11
  <!-- TC_BODY_BEFORE_ROOT_SLOT -->
@@ -6,7 +6,7 @@ var t = [
6
6
  "index.js",
7
7
  "app",
8
8
  "config",
9
- "model"
9
+ "models"
10
10
  ];
11
11
  async function n(n = {}) {
12
12
  return e({
@@ -0,0 +1,126 @@
1
+ import { logGreen as e, logRed as t, logYellow as n } from "../packages/common/log/index.js";
2
+ import { resolveRunPath as r, resolveSSRClientOutDir as i, resolveSSRManifestOutDir as a, resolveSSRServerOutDir as o } from "../ssrSharedData/outputPaths.js";
3
+ import { createBundlerPaths as s, createFEBasePlugins as c, createSSRNoExternal as l, createSSRResolveAlias as u, ssrReactExternal as d } from "./feSharedConfig.js";
4
+ import { collectBundlerSSREntries as f } from "./ssrEntries.js";
5
+ import { buildFESharedState as p, setBuildFEOptions as m } from "./state.js";
6
+ import { VBuildFE as h, createFECodeSplittingGroups as g, entries as _ } from "./utils.js";
7
+ import v from "path";
8
+ import { build as y } from "vite";
9
+ //#region bundler/buildSSR.ts
10
+ var b = s();
11
+ function x(e) {
12
+ return f(b, e);
13
+ }
14
+ function S(e) {
15
+ return o({
16
+ ...e,
17
+ frameNodePath: b.frameNodePath
18
+ });
19
+ }
20
+ function C(e) {
21
+ return i({
22
+ ...e,
23
+ frameNodePath: b.frameNodePath
24
+ });
25
+ }
26
+ function w(e) {
27
+ return a({
28
+ ...e,
29
+ frameNodePath: b.frameNodePath
30
+ });
31
+ }
32
+ async function T(t, n) {
33
+ e("[SSR] Building server bundle..."), await y({
34
+ configFile: !1,
35
+ plugins: c(),
36
+ build: {
37
+ outDir: S(n),
38
+ emptyOutDir: !0,
39
+ ssr: !0,
40
+ rolldownOptions: {
41
+ input: t,
42
+ external: d,
43
+ output: { codeSplitting: { groups: g() } }
44
+ }
45
+ },
46
+ ssr: {
47
+ external: d,
48
+ noExternal: l(b, n?.ssrNoExternal)
49
+ },
50
+ resolve: { alias: u(b, n) }
51
+ }), e("[SSR] Server bundle done.");
52
+ }
53
+ async function E(t, n) {
54
+ e("[SSR] Building shared browser client bundle...");
55
+ let r = { ...p.options };
56
+ m({
57
+ ...r,
58
+ baseDir: n?.baseDir ?? r.baseDir,
59
+ output: n?.output ?? r.output,
60
+ minifyHtml: n?.minifyHtml ?? r.minifyHtml
61
+ });
62
+ try {
63
+ await h(_(p.options), void 0, {
64
+ ssrInput: t,
65
+ ssrManifestOutDir: w(n)
66
+ });
67
+ } finally {
68
+ m(r);
69
+ }
70
+ e("[SSR] Shared browser client bundle done.");
71
+ }
72
+ async function D(n) {
73
+ let r = x(n);
74
+ if (Object.keys(r).length) try {
75
+ await T(r, n), await E(r, n), e("[SSR] All builds completed.");
76
+ } catch (e) {
77
+ throw t("[SSR] Build failed:"), t(e), e;
78
+ }
79
+ }
80
+ async function O(e) {
81
+ let i = await import("chokidar"), a = e?.debounceMs ?? 200, o = v.resolve(r(e), "./ssr/apps"), s = [...new Set([b.frameSSRAppsPath, o])], c = i.watch(s, {
82
+ ignored: (e) => {
83
+ let t = e.split(v.sep).join("/");
84
+ return /(^|\/)\./.test(t) || /(^|\/)node_modules(\/|$)/.test(t) || /(^|\/)(dist|build|coverage)(\/|$)/.test(t) || /(^|\/)ssr-(server|client)(\/|$)/.test(t);
85
+ },
86
+ depth: 8,
87
+ persistent: !0,
88
+ ignoreInitial: !0,
89
+ usePolling: !0,
90
+ interval: 300
91
+ }), l, u = !1, d = !1, f = async () => {
92
+ if (u) {
93
+ d = !0;
94
+ return;
95
+ }
96
+ u = !0;
97
+ try {
98
+ do {
99
+ d = !1;
100
+ try {
101
+ await D(e);
102
+ } catch (e) {
103
+ t(e);
104
+ }
105
+ } while (d);
106
+ } finally {
107
+ u = !1;
108
+ }
109
+ }, p = (e) => {
110
+ n(`[SSR] changed: ${e}`), l && clearTimeout(l), l = setTimeout(() => {
111
+ l = void 0, f();
112
+ }, a);
113
+ };
114
+ return c.on("all", (e, t) => {
115
+ [
116
+ "add",
117
+ "change",
118
+ "unlink",
119
+ "unlinkDir"
120
+ ].includes(e) && p(t);
121
+ }), c.on("error", (e) => {
122
+ t("[SSR] watcher error:"), t(e);
123
+ }), n(`[SSR] watching ${s.join(", ")}/...`), c;
124
+ }
125
+ //#endregion
126
+ export { D as buildSSR, C as ssrClientOutDir, x as ssrEntries, w as ssrManifestOutDir, S as ssrServerOutDir, O as watchSSRFiles };
@@ -0,0 +1,45 @@
1
+ import e from "path";
2
+ import * as t from "glob";
3
+ //#region bundler/entryCollect.ts
4
+ var n = [
5
+ "js",
6
+ "jsx",
7
+ "ts",
8
+ "tsx"
9
+ ], r = (e) => e.replace(/\\/g, "/"), i = (e) => {
10
+ let t = r(e).split("/");
11
+ return t.some((e, n) => e === "ssr" && t[n + 1] === "apps");
12
+ }, a = (t) => e.basename(t).replace(/\.entry\.[^.]+$/, "");
13
+ function o(e, i) {
14
+ return e.flatMap((e) => {
15
+ let a = r(e), o = n.map((e) => `${a}/**/*.${e}`);
16
+ return t.sync(o, { nodir: !0 }).filter((e) => e.includes(".entry.")).filter((e) => !e.includes(".d.ts")).filter(i).sort();
17
+ });
18
+ }
19
+ function s(e) {
20
+ return o(e, (e) => !i(e));
21
+ }
22
+ function c(e) {
23
+ return o(e, i);
24
+ }
25
+ function l(e) {
26
+ return e.reduce((e, t) => (e[a(t)] = t, e), {});
27
+ }
28
+ function u(t, n) {
29
+ return e.resolve(n?.baseDir ?? process.cwd(), t);
30
+ }
31
+ function d(e) {
32
+ let t = e?.ssrEntries;
33
+ return t ? Object.entries(t).reduce((t, [n, r]) => (t[n] = u(r, e), t), {}) : {};
34
+ }
35
+ function f(e, t) {
36
+ let n = d(t);
37
+ if (t?.ssrEntriesMode === "replace") return n;
38
+ let r = l(c(e));
39
+ return t?.ssrEntries ? {
40
+ ...r,
41
+ ...n
42
+ } : r;
43
+ }
44
+ //#endregion
45
+ export { s as collectCSREntryFiles, f as collectSSREntries, c as collectSSREntryFiles, l as createEntryMap, i as isSSRAppsPath, d as normalizeConfiguredSSREntries, a as toEntryName };
@@ -0,0 +1,143 @@
1
+ import { resolveRunPath as e } from "../ssrSharedData/outputPaths.js";
2
+ import { existsSync as t } from "fs";
3
+ import n from "path";
4
+ import * as r from "glob";
5
+ import i from "@tailwindcss/vite";
6
+ import { createRequire as a } from "module";
7
+ import { fileURLToPath as o } from "url";
8
+ //#region bundler/feSharedConfig.ts
9
+ var s = typeof __filename == "string" ? __filename : o(import.meta.url), c = n.dirname(s), l = a(s), u = [
10
+ "",
11
+ ".ts",
12
+ ".tsx",
13
+ ".js",
14
+ ".jsx"
15
+ ];
16
+ function d() {
17
+ let e = n.resolve(c, "../"), i = n.resolve(e, "../"), a = n.resolve(e, "./ssr"), o = n.resolve(i, "./fe/ssr"), s = n.resolve(o, "./apps"), l = r.sync(n.resolve(s, "**/*.entry.*")).length > 0, u = l ? o : a, d = n.resolve(e, "./frontend"), f = n.resolve(i, "./fe/frontend"), p = n.resolve(e, "./packages/react/ui"), m = n.resolve(i, "./fe/packages/react/ui"), h = n.resolve(e, "./packages/react/hooks"), g = n.resolve(i, "./fe/packages/react/hooks"), _ = n.resolve(e, "./packages/common"), v = n.resolve(i, "./fe/packages/common");
18
+ return {
19
+ currentDir: c,
20
+ frameNodePath: e,
21
+ framePackagePath: i,
22
+ frameFEPath: t(f) ? f : d,
23
+ frameSSRPath: u,
24
+ frameSSRAppsPath: n.resolve(u, "./apps"),
25
+ frameReactUIPath: t(m) ? m : p,
26
+ frameReactHooksPath: t(g) ? g : h,
27
+ frameCommonPath: t(v) ? v : _,
28
+ hasFramePublishedSSREntries: l
29
+ };
30
+ }
31
+ function f(e) {
32
+ return n.dirname(l.resolve(`${e}/package.json`));
33
+ }
34
+ function p() {
35
+ return {
36
+ react: f("react"),
37
+ "react-dom": f("react-dom")
38
+ };
39
+ }
40
+ function m(e, r) {
41
+ return e.reduce((e, [i, a, o, s = "./defaultAlias"]) => (e[i] = u.map((e) => n.resolve(o, a + e)).find((e) => t(e)) ?? n.resolve(r.currentDir, s), e), {});
42
+ }
43
+ function h(e, t) {
44
+ return m([
45
+ [
46
+ "@tc/scalability/SchemaPage/CallCom/data",
47
+ "./extended/SchemaPage/CallCom/data",
48
+ e
49
+ ],
50
+ [
51
+ "@tc/scalability/SchemaPage/SchemaTable/data",
52
+ "./extended/SchemaPage/SchemaTable/data",
53
+ e
54
+ ],
55
+ [
56
+ "@tc/scalability/dash/customRoutes",
57
+ "./extended/dash/customRoutes",
58
+ e
59
+ ],
60
+ [
61
+ "@tc/scalability/dash/init",
62
+ "./extended/dash/init",
63
+ e
64
+ ],
65
+ [
66
+ "@tc/scalability/dash/components",
67
+ "./extended/dash/components",
68
+ e
69
+ ],
70
+ [
71
+ "@tc/scalability/dash/routeGuard",
72
+ "./extended/dash/routeGuard",
73
+ e,
74
+ "./defaultRouteGuard"
75
+ ]
76
+ ], t);
77
+ }
78
+ function g(e) {
79
+ let { runFEPath: t, paths: r, includeSourceOnlyAliases: i = !1 } = e;
80
+ return {
81
+ ...p(),
82
+ ...i ? {
83
+ "@fe": r.frameFEPath,
84
+ "@": n.resolve(r.frameFEPath, "./src"),
85
+ "@ssr": r.frameSSRPath,
86
+ "@model": n.resolve(r.frameNodePath, "./models/types"),
87
+ typings: n.resolve(r.frameNodePath, "./typings")
88
+ } : {},
89
+ "@tc/common": r.frameCommonPath,
90
+ "@tc/ui-react/hooks": r.frameReactHooksPath,
91
+ "@tc/ui-react": r.frameReactUIPath,
92
+ "@tc/schema-page-call-com/builtIn": n.resolve(r.frameFEPath, "./src/defaultPages/SchemaPage/components/CallCom/builtIn"),
93
+ ...h(t, r)
94
+ };
95
+ }
96
+ function _(t, r) {
97
+ let i = e(r);
98
+ return {
99
+ ...g({
100
+ runFEPath: n.resolve(i, "./frontend"),
101
+ paths: t
102
+ }),
103
+ "@fe": t.frameFEPath,
104
+ "@": n.resolve(t.frameFEPath, "./src"),
105
+ "@ssr": t.frameSSRPath,
106
+ "@store": n.resolve(t.frameFEPath, "./src/stores"),
107
+ "@model": n.resolve(t.frameNodePath, "./models/types"),
108
+ typings: n.resolve(t.frameNodePath, "./typings")
109
+ };
110
+ }
111
+ function v(t, r) {
112
+ return g({
113
+ runFEPath: n.resolve(e(r), "./frontend"),
114
+ paths: t,
115
+ includeSourceOnlyAliases: !0
116
+ });
117
+ }
118
+ var y = [
119
+ "react",
120
+ "react-dom",
121
+ "react-dom/server",
122
+ "react-dom/client",
123
+ "react/jsx-runtime",
124
+ "react/jsx-dev-runtime"
125
+ ];
126
+ function b(e, t) {
127
+ let r = n.basename(e.framePackagePath), i = n.basename(n.dirname(e.framePackagePath)), a = i.startsWith("@") ? `${i}/${r}` : r;
128
+ return [...new Set([
129
+ a,
130
+ `${a}/fe`,
131
+ "rc-field-form",
132
+ "rc-util",
133
+ "tailwind-merge",
134
+ "@babel/runtime",
135
+ "async-validator",
136
+ ...t ?? []
137
+ ])];
138
+ }
139
+ function x() {
140
+ return [i()];
141
+ }
142
+ //#endregion
143
+ export { d as createBundlerPaths, _ as createCSRResolveAlias, x as createFEBasePlugins, g as createFECompatibleResolveAlias, p as createReactResolveAlias, b as createSSRNoExternal, v as createSSRResolveAlias, h as createScalabilityAliases, m as resolveAliasWithFallback, f as resolvePackageDir, y as ssrReactExternal };
@@ -1,3 +1,5 @@
1
1
  import { buildBE as e } from "./buildBE.js";
2
- import { buildFE as t } from "./buildFE.js";
3
- export { e as buildBE, t as buildFE };
2
+ import { resolveFEOutDir as t } from "./utils.js";
3
+ import { buildFE as n } from "./buildFE.js";
4
+ import { buildSSR as r, ssrClientOutDir as i, ssrEntries as a, ssrManifestOutDir as o, ssrServerOutDir as s, watchSSRFiles as c } from "./buildSSR.js";
5
+ export { e as buildBE, n as buildFE, r as buildSSR, t as resolveFEOutDir, i as ssrClientOutDir, a as ssrEntries, o as ssrManifestOutDir, s as ssrServerOutDir, c as watchSSRFiles };
@@ -0,0 +1,14 @@
1
+ import { SSR_CLIENT_MANIFEST_FILE as e } from "../ssrSharedData/outputPaths.js";
2
+ import { copyFileSync as t, existsSync as n, mkdirSync as r, rmSync as i } from "fs";
3
+ import a from "path";
4
+ //#region bundler/ssrClientManifest.ts
5
+ function o(o, s) {
6
+ let c = a.join(o, ".vite"), l = a.join(c, e), u = a.join(s, e);
7
+ if (!n(l)) throw Error(`Vite client manifest was not generated: ${l}`);
8
+ r(s, { recursive: !0 }), t(l, u), i(c, {
9
+ recursive: !0,
10
+ force: !0
11
+ });
12
+ }
13
+ //#endregion
14
+ export { o as moveClientManifestToSSRPrivate };