@_tc/template-core 0.2.12 → 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 +48 -5
  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,13 @@
1
+ import { logGreen as e, logWhite as t, logYellow as n } from "../packages/common/log/index.js";
2
+ import { resolveRunPath as r } from "../ssrSharedData/outputPaths.js";
3
+ import { collectSSREntries as i } from "./entryCollect.js";
4
+ import a from "path";
5
+ //#region bundler/ssrEntries.ts
6
+ function o(o, s, c = {}) {
7
+ let l = c.enabled ?? !0, u = a.resolve(r(s), "./ssr/apps"), d = [o.frameSSRAppsPath, u];
8
+ l && (t("SSR frame entry scan path: " + o.frameSSRAppsPath), t("SSR run entry scan path: " + u));
9
+ let f = i(d, s);
10
+ return Object.keys(f).length ? l && e("SSR entries: " + JSON.stringify(Object.keys(f))) : l && n(c.emptyMessage ?? "no SSR entry found, skipping SSR build"), f;
11
+ }
12
+ //#endregion
13
+ export { o as collectBundlerSSREntries };
@@ -1,43 +1,75 @@
1
1
  import { colorize as e, logJoinColorized as t, logRed as n, logWhite as r, logYellow as i } from "../packages/common/log/index.js";
2
- import { resolve as a } from "../packages/utils/path.js";
2
+ import { resolveFEOutDir as a, resolveRunPath as o, resolveSSRManifestOutDir as s } from "../ssrSharedData/outputPaths.js";
3
+ import { applySharedCSRShellTemplate as c } from "../app/html/shell.js";
4
+ import { resolve as l } from "../packages/utils/path.js";
3
5
  import "../packages/utils/index.js";
4
- import { buildFESharedState as o } from "./state.js";
5
- import { existsSync as s, mkdirSync as c, readFileSync as l, readdirSync as u, rmSync as d, rmdirSync as f, unlinkSync as p, writeFileSync as m } from "fs";
6
- import h from "path";
7
- import * as g from "glob";
8
- import { build as ee } from "vite";
9
- import te from "@tailwindcss/vite";
10
- import { createRequire as _ } from "module";
11
- import { fileURLToPath as v } from "url";
6
+ import { collectCSREntryFiles as u } from "./entryCollect.js";
7
+ import { createBundlerPaths as d, createCSRResolveAlias as ee, createFEBasePlugins as te } from "./feSharedConfig.js";
8
+ import { moveClientManifestToSSRPrivate as ne } from "./ssrClientManifest.js";
9
+ import { collectBundlerSSREntries as f } from "./ssrEntries.js";
10
+ import { buildFESharedState as p } from "./state.js";
11
+ import { existsSync as m, mkdirSync as h, readFileSync as g, readdirSync as re, realpathSync as _, rmSync as ie, rmdirSync as v, unlinkSync as y, writeFileSync as b } from "fs";
12
+ import x from "path";
13
+ import * as S from "glob";
14
+ import { build as C } from "vite";
12
15
  //#region bundler/utils.ts
13
- var y = typeof __filename == "string" ? __filename : v(import.meta.url), b = h.dirname(y), x = process.cwd(), ne = _(y), re = h.resolve(b, "../../"), S = h.resolve(b, "../"), C = h.resolve(re, "./fe/frontend"), w = h.resolve(x, "."), T = h.resolve(w, "./frontend"), E = (e) => h.dirname(ne.resolve(`${e}/package.json`)), D = h.join(w, ".tc-entry-html"), O = "<!-- {{InsertScript}} -->", k = {
16
+ var w = d(), T = w.frameNodePath, E = w.frameFEPath, ae = "<!-- {{InsertScript}} -->", D = {
14
17
  head: "<!-- TC_HEAD_SLOT -->",
15
18
  bodyBeforeRoot: "<!-- TC_BODY_BEFORE_ROOT_SLOT -->",
16
19
  bodyAfterRoot: "<!-- TC_BODY_AFTER_ROOT_SLOT -->"
17
- }, A = [
20
+ }, O = [
18
21
  "head",
19
22
  "body-before-root",
20
23
  "body-after-root"
21
- ], j = () => ({
24
+ ];
25
+ function oe(e) {
26
+ return a({
27
+ ...e,
28
+ frameNodePath: T
29
+ });
30
+ }
31
+ function se() {
32
+ return a({
33
+ ...p.options,
34
+ frameNodePath: T
35
+ });
36
+ }
37
+ function ce() {
38
+ return s({
39
+ ...p.options,
40
+ frameNodePath: T
41
+ });
42
+ }
43
+ function k(e = p.options) {
44
+ return x.resolve(o(e), "./frontend");
45
+ }
46
+ function A(e = p.options) {
47
+ let t = o(e);
48
+ return m(t) ? _(t) : t;
49
+ }
50
+ function j(e = p.options) {
51
+ return x.join(A(e), ".tc-entry-html");
52
+ }
53
+ var M = () => ({
22
54
  head: "",
23
55
  "body-before-root": "",
24
56
  "body-after-root": ""
25
- }), M = (e) => e.trim().replace(/<!--(?!\s*(?:tc-slot:|\/tc-slot:))[\s\S]*?-->/g, "").replace(/>\s+</g, "><"), N = (e) => {
57
+ }), N = (e) => e.trim().replace(/<!--(?!\s*(?:tc-slot:|\/tc-slot:))[\s\S]*?-->/g, "").replace(/>\s+</g, "><"), P = (e) => {
26
58
  let t = [], n = e.replace(/<(script|style|textarea|pre)\b[\s\S]*?<\/\1>/gi, (e) => {
27
59
  let n = `__TC_HTML_PRESERVED_${t.length}__`;
28
60
  return t.push(e), n;
29
61
  }).replace(/<!--(?!\s*(?:tc-slot:|\/tc-slot:|\{\{InsertScript\}\}|TC_))[\s\S]*?-->/g, "").replace(/>\s+</g, "><").trim();
30
62
  return t.reduce((e, t, n) => e.replace(`__TC_HTML_PRESERVED_${n}__`, t), n);
31
- }, P = (e) => e.split(h.sep).join("/"), F = (e) => {
32
- let t = P(e);
63
+ }, F = (e) => e.replace(/\\/g, "/"), I = (e) => {
64
+ let t = F(e);
33
65
  return t.startsWith(".") || t.startsWith("/") ? t : `./${t}`;
34
- }, I = (e) => /<html[\s>]/i.test(e) && e.includes("window['_basePath']") && /<div\s+id=["']root["']\s*><\/div>/i.test(e), L = (e) => {
35
- let t = j(), n = l(e, "utf-8"), r = /<!--\s*tc-slot:([\w-]+)\s*-->([\s\S]*?)<!--\s*\/tc-slot:\1\s*-->/g, a = !1, o = n;
66
+ }, L = (e) => /<html[\s>]/i.test(e) && e.includes("window['_basePath']") && /<div\s+id=["']root["']\s*><\/div>/i.test(e), R = (e) => {
67
+ let t = M(), n = g(e, "utf-8"), r = /<!--\s*tc-slot:([\w-]+)\s*-->([\s\S]*?)<!--\s*\/tc-slot:\1\s*-->/g, a = !1, o = n;
36
68
  if (n.replace(r, (n, r, i) => {
37
- if (a = !0, !A.includes(r)) throw Error(`Invalid html slot "${r}" in ${e}. Allowed slots: ${A.join(", ")}.`);
69
+ if (a = !0, !O.includes(r)) throw Error(`Invalid html slot "${r}" in ${e}. Allowed slots: ${O.join(", ")}.`);
38
70
  return t[r] += i.trim() ? `${i}\n` : "", o = o.replace(n, ""), n;
39
71
  }), o.trim()) {
40
- if (I(n)) return i(`ignored legacy generated entry html: ${e}`), j();
72
+ if (L(n)) return i(`ignored legacy generated entry html: ${e}`), M();
41
73
  throw Error([
42
74
  `Invalid custom entry html: ${e}.`,
43
75
  "Custom entry html can only contain tc-slot blocks, for example:",
@@ -47,11 +79,11 @@ var y = typeof __filename == "string" ? __filename : v(import.meta.url), b = h.d
47
79
  ].join("\n"));
48
80
  }
49
81
  return a && i(`using custom entry html slots: ${e}`), t;
50
- }, R = (e, t) => {
51
- let n = h.basename(e), r = [h.join(e, `${t}.html`), h.join(e, `${n}.html`)].find((e) => s(e));
82
+ }, z = (e, t) => {
83
+ let n = x.basename(e), r = [x.join(e, `${t}.html`), x.join(e, `${n}.html`)].find((e) => m(e));
52
84
  if (r) return r;
53
- if (g.sync(a(e, "*.html")).length) throw Error([`Entry html filename is not supported in ${e}.`, `Use ${t}.html or ${n}.html as a tc-slot file.`].join("\n"));
54
- }, z = (e, t) => e.replace(k.head, M(t.head)).replace(k.bodyBeforeRoot, M(t["body-before-root"])).replace(k.bodyAfterRoot, M(t["body-after-root"])), B = (e = /* @__PURE__ */ new Date()) => {
85
+ if (S.sync(l(e, "*.html")).length) throw Error([`Entry html filename is not supported in ${e}.`, `Use ${t}.html or ${n}.html as a tc-slot file.`].join("\n"));
86
+ }, B = (e, t) => e.replace(D.head, N(t.head)).replace(D.bodyBeforeRoot, N(t["body-before-root"])).replace(D.bodyAfterRoot, N(t["body-after-root"])), V = (e = /* @__PURE__ */ new Date()) => {
55
87
  let t = (e, t = 2) => e.toString().padStart(t, "0");
56
88
  return [
57
89
  e.getFullYear(),
@@ -59,301 +91,262 @@ var y = typeof __filename == "string" ? __filename : v(import.meta.url), b = h.d
59
91
  t(e.getDate()),
60
92
  t(e.getHours())
61
93
  ].join("/") + `:${t(e.getMinutes())}:${t(e.getSeconds())}:${t(e.getMilliseconds(), 3)}`;
62
- }, V = (e, t, n, r) => {
63
- let i = h.join(D, `${n}.html`), a = F(h.relative(h.dirname(i), t));
64
- return m(i, z(e, r).replace(O, `<script type="module" src="${a}"><\/script>`)), i;
94
+ }, H = (e, t, n, r, i) => {
95
+ let a = x.join(e, `${r}.html`), o = I(x.relative(_(x.dirname(a)), _(n)));
96
+ return b(a, B(t, i).replace(ae, `<script type="module" src="${o}"><\/script>`)), a;
65
97
  };
66
- function H() {
67
- r("frameFEPath: " + C), r("runFEPath: " + T);
68
- let e = [C, T].reduce((e, t) => {
69
- let n = [
70
- "js",
71
- "jsx",
72
- "ts",
73
- "tsx"
74
- ].map((e) => a(t, "/**", "/*." + e)), r = g.sync(n).filter((e) => e.includes(".entry.")).filter((e) => !e.includes(".d.ts"));
75
- return [...e, ...r];
76
- }, []), t = {};
77
- if (!e.length) return t;
78
- d(D, {
98
+ function U(e = p.options) {
99
+ let t = k(e), n = j(e);
100
+ r("frameFEPath: " + E), r("runFEPath: " + t);
101
+ let i = u([E, t]), a = {};
102
+ if (!i.length) return a;
103
+ ie(n, {
79
104
  recursive: !0,
80
105
  force: !0
81
- }), c(D, { recursive: !0 });
82
- let n = l(h.resolve(S, "./app/view/entry.tpl"), "utf-8");
83
- for (let r = 0; r < e.length; r++) {
84
- let i = e[r], a = h.resolve(i, "../"), o = R(a, h.basename(i).replace(/\.entry\.[^.]+$/, "")), s = o ? h.basename(o, ".html") : a.split(h.sep).at(-1);
85
- t[s] = V(n, i, s, o ? L(o) : j());
106
+ }), h(n, { recursive: !0 });
107
+ let o = c(g(x.resolve(T, "./app/view/entry.tpl"), "utf-8"));
108
+ for (let e = 0; e < i.length; e++) {
109
+ let t = i[e], r = x.resolve(t, "../"), s = z(r, x.basename(t).replace(/\.entry\.[^.]+$/, "")), c = s ? x.basename(s, ".html") : r.split(x.sep).at(-1);
110
+ a[c] = H(n, o, t, c, s ? R(s) : M());
86
111
  }
87
- return t;
112
+ return a;
88
113
  }
89
- function U() {
90
- let e = o.options.output ?? "frame";
91
- return e !== "frame" && n("Please pay attention to the build output."), e === "run" ? h.join(w, "./app/public/dist") : typeof e == "function" ? e() : h.join(S, "./app/public/dist");
114
+ function W() {
115
+ return (p.options.output ?? "frame") !== "frame" && n("Please pay attention to the build output."), se();
92
116
  }
93
- var W = async (e) => {
94
- let t = (await import("chokidar")).watch(T, {
117
+ var le = async (e) => {
118
+ let t = await import("chokidar"), r = k(), a = t.watch(r, {
95
119
  ignored: /(^|[\/\\])\../,
96
120
  persistent: !0,
97
121
  ignoreInitial: !0
98
- }), r = !1;
99
- t.on("change", async (t) => {
100
- if (!r) {
101
- r = !0, i(`changed: ${t}`);
122
+ }), o = !1;
123
+ a.on("change", async (t) => {
124
+ if (!o) {
125
+ o = !0, i(`changed: ${t}`);
102
126
  try {
103
127
  await e?.();
104
128
  } catch (e) {
105
129
  n(e);
106
130
  } finally {
107
- r = !1;
131
+ o = !1;
108
132
  }
109
133
  }
110
- }), i(`watching ${T}/...`);
134
+ }), i(`watching ${r}/...`);
111
135
  };
112
136
  function G() {
113
137
  return {
114
138
  name: "flatten-html",
115
139
  apply: "build",
116
140
  closeBundle() {
117
- let e = U(), t = B();
118
- m(a(e, "./FEBuildKey"), t);
141
+ let e = W(), t = V();
142
+ h(e, { recursive: !0 }), b(l(e, "./FEBuildKey"), t);
119
143
  }
120
144
  };
121
145
  }
122
- function K(e = ".html") {
146
+ function ue(e = ".html") {
123
147
  let t = [...new Set(Array.isArray(e) ? e : [e])];
124
148
  return {
125
149
  name: "flatten-html",
126
150
  apply: "build",
127
151
  closeBundle() {
128
- let e = U();
129
- if (!s(e)) return;
130
- let n = o.options.minifyHtml ?? !1, r = g.sync("**/*.html", {
152
+ let e = W();
153
+ if (!m(e)) return;
154
+ let n = p.options.minifyHtml ?? !1, r = S.sync("**/*.html", {
131
155
  cwd: e,
132
156
  dot: !0
133
157
  });
134
158
  for (let i of r) {
135
- let r = h.join(e, i), a = l(r, "utf-8"), o = n ? N(a) : a, s = h.basename(i, ".html"), c = ".entry";
159
+ let r = x.join(e, i), a = g(r, "utf-8"), o = n ? P(a) : a, s = x.basename(i, ".html"), c = ".entry";
136
160
  s.indexOf(c) === -1 && (s += c);
137
161
  for (let i of t) {
138
- let t = s + i, a = h.join(e, t);
139
- r === a ? n && m(a, o) : m(a, o);
162
+ let t = s + i, a = x.join(e, t);
163
+ r === a ? n && b(a, o) : b(a, o);
140
164
  }
141
- t.some((t) => r === h.join(e, s + t)) || p(r);
165
+ t.some((t) => r === x.join(e, s + t)) || y(r);
142
166
  }
143
- let a = [...new Set(r.map((e) => h.dirname(e)))].sort().reverse(), c = (e) => {
144
- if (!(s(e) ? u(e) : [1]).length) {
145
- f(e);
146
- let t = e.split(h.sep).slice(0, -1);
147
- t.length && c(t.join(h.sep));
167
+ let a = [...new Set(r.map((e) => x.dirname(e)))].sort().reverse(), o = (e) => {
168
+ if (!(m(e) ? re(e) : [1]).length) {
169
+ v(e);
170
+ let t = e.split(x.sep).slice(0, -1);
171
+ t.length && o(t.join(x.sep));
148
172
  }
149
173
  };
150
- for (let t of a) t && t !== "." && c(h.join(e, t));
151
- let d = t.flatMap((t) => g.sync("**/*" + t, {
174
+ for (let t of a) t && t !== "." && o(x.join(e, t));
175
+ let s = t.flatMap((t) => S.sync("**/*" + t, {
152
176
  cwd: e,
153
177
  dot: !0
154
178
  }));
155
- for (let e of d) i("final file path -----> " + e);
179
+ for (let e of s) i("final file path -----> " + e);
156
180
  }
157
181
  };
158
182
  }
159
- function q(e) {
160
- let t = [
161
- "",
162
- ".ts",
163
- ".tsx",
164
- ".js",
165
- ".jsx"
166
- ];
167
- return e.reduce((e, [n, r, i = T, a = "./defaultAlias"]) => {
168
- let o = t.map((e) => h.resolve(i, r + e)).find((e) => s(e)), c = h.resolve(b, a);
169
- return o && (c = o), e[n] = c, e;
170
- }, {});
171
- }
172
- var J = (e) => `_${e}_tcC`, Y = (e) => P(e), X = (e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), ie = (e) => Y(e).includes("/node_modules/"), Z = (e, t) => {
173
- let n = Y(e), r = t.split("/").map(X).join("/");
183
+ var K = (e) => `_${e}_tcC`, q = (e) => F(e), J = (e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), Y = (e) => q(e).includes("/node_modules/"), X = (e, t) => {
184
+ let n = q(e), r = t.split("/").map(J).join("/");
174
185
  return RegExp(`/node_modules/(?:\\.pnpm/[^/]+/node_modules/)?${r}(?:/|$)`).test(n);
175
- }, Q = (e, t) => t.some((t) => Z(e, t)), ae = (e, ...t) => {
176
- let n = Y(e), r = t.map(X).join("/");
186
+ }, Z = (e, t) => t.some((t) => X(e, t)), de = (e, ...t) => {
187
+ let n = q(e), r = t.map(J).join("/");
177
188
  return RegExp(`(?:^|/)${r}(?:/|$)`).test(n);
178
- }, $ = (e, t) => t.some((t) => ae(e, ...t)), oe = async (r, i) => {
189
+ }, Q = (e, t) => t.some((t) => de(e, ...t)), $ = () => [
190
+ {
191
+ name: K("react-dom"),
192
+ test: (e) => X(e, "react-dom"),
193
+ maxSize: 25e4,
194
+ priority: 100
195
+ },
196
+ {
197
+ name: K("react-router"),
198
+ test: (e) => Z(e, ["react-router", "react-router-dom"]),
199
+ maxSize: 25e4,
200
+ priority: 95
201
+ },
202
+ {
203
+ name: K("react"),
204
+ test: (e) => X(e, "react"),
205
+ maxSize: 2e5,
206
+ priority: 90
207
+ },
208
+ {
209
+ name: K("form-validator"),
210
+ test: (e) => Z(e, ["ajv", "rc-field-form"]),
211
+ maxSize: 25e4,
212
+ priority: 80
213
+ },
214
+ {
215
+ name: K("ui-vendor"),
216
+ test: (e) => Z(e, [
217
+ "date-fns",
218
+ "lucide-react",
219
+ "xlsx"
220
+ ]),
221
+ maxSize: 35e4,
222
+ priority: 70
223
+ },
224
+ {
225
+ name: K("state-utils"),
226
+ test: (e) => Z(e, [
227
+ "clsx",
228
+ "immer",
229
+ "tailwind-merge",
230
+ "zustand"
231
+ ]),
232
+ maxSize: 18e4,
233
+ priority: 60
234
+ },
235
+ {
236
+ name: K("tc-ui"),
237
+ test: (e) => Q(e, [[
238
+ "packages",
239
+ "react",
240
+ "ui"
241
+ ], [
242
+ "fe",
243
+ "packages",
244
+ "react",
245
+ "ui"
246
+ ]]),
247
+ maxSize: 25e4,
248
+ minShareCount: 2,
249
+ priority: 50
250
+ },
251
+ {
252
+ name: K("tc-hooks"),
253
+ test: (e) => Q(e, [[
254
+ "packages",
255
+ "react",
256
+ "hooks"
257
+ ], [
258
+ "fe",
259
+ "packages",
260
+ "react",
261
+ "hooks"
262
+ ]]),
263
+ maxSize: 12e4,
264
+ minShareCount: 2,
265
+ priority: 45
266
+ },
267
+ {
268
+ name: K("tc-common"),
269
+ test: (e) => Q(e, [["packages", "common"], [
270
+ "fe",
271
+ "packages",
272
+ "common"
273
+ ]]),
274
+ maxSize: 16e4,
275
+ minShareCount: 2,
276
+ priority: 40
277
+ },
278
+ {
279
+ name: K("tc-schema-page"),
280
+ test: (e) => Q(e, [[
281
+ "frontend",
282
+ "src",
283
+ "defaultPages",
284
+ "SchemaPage"
285
+ ], [
286
+ "fe",
287
+ "frontend",
288
+ "src",
289
+ "defaultPages",
290
+ "SchemaPage"
291
+ ]]),
292
+ maxSize: 2e5,
293
+ minShareCount: 2,
294
+ priority: 35
295
+ },
296
+ {
297
+ name: K("tc-pages"),
298
+ test: (e) => Q(e, [[
299
+ "frontend",
300
+ "src",
301
+ "defaultPages"
302
+ ], [
303
+ "fe",
304
+ "frontend",
305
+ "src",
306
+ "defaultPages"
307
+ ]]),
308
+ maxSize: 18e4,
309
+ minShareCount: 2,
310
+ priority: 30
311
+ },
312
+ {
313
+ name: K("vendor"),
314
+ test: Y,
315
+ maxSize: 5e5,
316
+ minShareCount: 2,
317
+ priority: 1
318
+ }
319
+ ], fe = (e) => Object.entries(e).reduce((e, [t, n]) => (e[`ssr-${t}`] = n, e), {}), pe = () => f(w, p.options, { enabled: !1 }), me = async (r, i, a = {}) => {
179
320
  try {
180
- await ee({
321
+ let n = a.ssrInput ?? pe(), o = {
322
+ ...r,
323
+ ...fe(n)
324
+ }, s = Object.keys(n).length > 0;
325
+ await C({
181
326
  configFile: !1,
327
+ root: A(p.options),
182
328
  base: "/dist",
183
329
  plugins: [
184
330
  (await import("@vitejs/plugin-react")).default(),
185
- K([".tpl"]),
331
+ ue([".tpl"]),
186
332
  G(),
187
- te()
333
+ ...te()
188
334
  ],
189
335
  build: {
190
- outDir: U(),
336
+ outDir: W(),
191
337
  emptyOutDir: !0,
338
+ manifest: s,
192
339
  sourcemap: i === "dev" ? "inline" : "hidden",
193
340
  rolldownOptions: {
194
- input: r,
195
- output: { codeSplitting: { groups: [
196
- {
197
- name: J("react-dom"),
198
- test: (e) => Z(e, "react-dom"),
199
- maxSize: 25e4,
200
- priority: 100
201
- },
202
- {
203
- name: J("react-router"),
204
- test: (e) => Q(e, ["react-router", "react-router-dom"]),
205
- maxSize: 25e4,
206
- priority: 95
207
- },
208
- {
209
- name: J("react"),
210
- test: (e) => Z(e, "react"),
211
- maxSize: 2e5,
212
- priority: 90
213
- },
214
- {
215
- name: J("form-validator"),
216
- test: (e) => Q(e, ["ajv", "rc-field-form"]),
217
- maxSize: 25e4,
218
- priority: 80
219
- },
220
- {
221
- name: J("ui-vendor"),
222
- test: (e) => Q(e, [
223
- "date-fns",
224
- "lucide-react",
225
- "xlsx"
226
- ]),
227
- maxSize: 35e4,
228
- priority: 70
229
- },
230
- {
231
- name: J("state-utils"),
232
- test: (e) => Q(e, [
233
- "clsx",
234
- "immer",
235
- "tailwind-merge",
236
- "zustand"
237
- ]),
238
- maxSize: 18e4,
239
- priority: 60
240
- },
241
- {
242
- name: J("tc-ui"),
243
- test: (e) => $(e, [[
244
- "packages",
245
- "react",
246
- "ui"
247
- ], [
248
- "fe",
249
- "packages",
250
- "react",
251
- "ui"
252
- ]]),
253
- maxSize: 25e4,
254
- minShareCount: 2,
255
- priority: 50
256
- },
257
- {
258
- name: J("tc-hooks"),
259
- test: (e) => $(e, [[
260
- "packages",
261
- "react",
262
- "hooks"
263
- ], [
264
- "fe",
265
- "packages",
266
- "react",
267
- "hooks"
268
- ]]),
269
- maxSize: 12e4,
270
- minShareCount: 2,
271
- priority: 45
272
- },
273
- {
274
- name: J("tc-common"),
275
- test: (e) => $(e, [["packages", "common"], [
276
- "fe",
277
- "packages",
278
- "common"
279
- ]]),
280
- maxSize: 16e4,
281
- minShareCount: 2,
282
- priority: 40
283
- },
284
- {
285
- name: J("tc-schema-page"),
286
- test: (e) => $(e, [[
287
- "frontend",
288
- "src",
289
- "defaultPages",
290
- "SchemaPage"
291
- ], [
292
- "fe",
293
- "frontend",
294
- "src",
295
- "defaultPages",
296
- "SchemaPage"
297
- ]]),
298
- maxSize: 2e5,
299
- minShareCount: 2,
300
- priority: 35
301
- },
302
- {
303
- name: J("tc-pages"),
304
- test: (e) => $(e, [[
305
- "frontend",
306
- "src",
307
- "defaultPages"
308
- ], [
309
- "fe",
310
- "frontend",
311
- "src",
312
- "defaultPages"
313
- ]]),
314
- maxSize: 18e4,
315
- minShareCount: 2,
316
- priority: 30
317
- },
318
- {
319
- name: J("vendor"),
320
- test: ie,
321
- maxSize: 5e5,
322
- minShareCount: 2,
323
- priority: 1
324
- }
325
- ] } }
341
+ input: o,
342
+ output: { codeSplitting: { groups: $() } }
326
343
  }
327
344
  },
328
- resolve: { alias: {
329
- react: E("react"),
330
- "react-dom": E("react-dom"),
331
- "@tc/ui-react/hooks": h.resolve(b, "../../fe/packages/react/hooks/"),
332
- "@tc/ui-react": h.resolve(b, "../../fe/packages/react/ui/"),
333
- ...q([
334
- [
335
- "@tc/scalability/SchemaForm/frameData",
336
- "./extended/SchemaForm/data",
337
- C
338
- ],
339
- ["@tc/scalability/SchemaForm/data", "./extended/SchemaForm/data"],
340
- ["@tc/scalability/SchemaPage/CallCom/data", "./extended/SchemaPage/CallCom/data"],
341
- ["@tc/scalability/SchemaPage/SchemaTable/data", "./extended/SchemaPage/SchemaTable/data"],
342
- ["@tc/scalability/dash/customRoutes", "./extended/dash/customRoutes"],
343
- ["@tc/scalability/dash/init", "./extended/dash/init"],
344
- ["@tc/scalability/dash/components", "./extended/dash/components"],
345
- [
346
- "@tc/scalability/dash/routeGuard",
347
- "./extended/dash/routeGuard",
348
- void 0,
349
- "./defaultRouteGuard"
350
- ]
351
- ])
352
- } }
353
- }), t(e("builded", "green"), e(" -> ", "white"), e("time: ", "cyan"), e(/* @__PURE__ */ new Date(), "pink"));
345
+ resolve: { alias: ee(w, p.options) }
346
+ }), s && ne(W(), a.ssrManifestOutDir ?? ce()), t(e("builded", "green"), e(" -> ", "white"), e("time: ", "cyan"), e(/* @__PURE__ */ new Date(), "pink"));
354
347
  } catch (e) {
355
348
  if (n(e), i !== "dev") throw e;
356
349
  }
357
350
  };
358
351
  //#endregion
359
- export { oe as VBuildFE, H as entries, G as generateBuildKeyPlugin, U as outDir, W as watchFiles };
352
+ export { me as VBuildFE, $ as createFECodeSplittingGroups, U as entries, G as generateBuildKeyPlugin, W as outDir, oe as resolveFEOutDir, o as resolveRunPath, le as watchFiles };
@@ -34,7 +34,7 @@ var a = (e) => !!e && typeof e == "object" && !Array.isArray(e), o = (e = {}, t
34
34
  let n = d();
35
35
  n && n.localStorage.setItem(e, t);
36
36
  }, m = () => ({
37
- language: f(r),
37
+ language: n,
38
38
  fallbackLanguage: n,
39
39
  resources: i,
40
40
  storageKey: r,
@@ -55,6 +55,10 @@ var a = (e) => !!e && typeof e == "object" && !Array.isArray(e), o = (e = {}, t
55
55
  let { persist: r, storageKey: i } = e;
56
56
  r && p(i, t);
57
57
  },
58
+ hydrateStoredLanguage: () => {
59
+ let { storageKey: t } = e;
60
+ n({ language: f(t) });
61
+ },
58
62
  setFallbackLanguage: (e) => {
59
63
  n({ fallbackLanguage: e });
60
64
  },
@@ -11,5 +11,7 @@ import { clamp as W, toFiniteNumber as G } from "./number/index.js";
11
11
  import { filterEmpty as K, filtereEmpty as q } from "./object/filterEmpty.js";
12
12
  import { mapValues as J, omit as Y, pick as X } from "./object/index.js";
13
13
  import { clearRafTimer as Z, rafClearInterval as Q, rafClearTimeout as $, rafSetInterval as ee, rafSetTimeout as te } from "./rafTimer.js";
14
- import { capitalize as ne, isBlank as re, joinStr as ie, kebabCase as ae } from "./string/index.js";
15
- export { j as ANSI_RESET, O as FetchAxios, D as LRUCache, M as ansiColors, k as axios, ne as capitalize, S as chunk, W as clamp, Z as clearRafTimer, N as colorLog, P as colorize, C as compact, A as createInstance, t as defaultEnglishResources, n as defaultLanguage, e as defaultLanguageResources, K as filterEmpty, q as filtereEmpty, a as getI18nPathValue, o as getLanguage, w as groupBy, s as i18n, c as i18nStore, l as interpolateI18nMessage, re as isBlank, h as isBoolean, g as isFunction, _ as isNil, v as isNonNullable, y as isNumber, u as isPlainI18nDictionary, b as isPlainObject, x as isString, F as joinColorized, ie as joinStr, ae as kebabCase, r as languageLocalKey, I as logColor, L as logColorized, R as logGreen, z as logJoinColorized, B as logPink, V as logRed, H as logWhite, U as logYellow, J as mapValues, d as mergeI18nDictionary, f as mergeI18nResources, Y as omit, X as pick, Q as rafClearInterval, $ as rafClearTimeout, ee as rafSetInterval, te as rafSetTimeout, p as t, T as toArray, G as toFiniteNumber, m as translate, i as translations, E as uniqueBy };
14
+ import { SSR_DATA_KEY as ne, clearHydrationData as re, createHydrationData as ie, peekHydrationData as ae, readHydrationData as oe, serializeHydrationData as se, serializeHydrationDataScriptContent as ce } from "./ssr/hydration.js";
15
+ import { clientOnly as le, isBrowser as ue, isServer as de, safeDocument as fe, safeLocalStorage as pe, safeSetLocalStorage as me, safeWindow as he } from "./ssr/index.js";
16
+ import { capitalize as ge, isBlank as _e, joinStr as ve, kebabCase as ye } from "./string/index.js";
17
+ export { j as ANSI_RESET, O as FetchAxios, D as LRUCache, ne as SSR_DATA_KEY, M as ansiColors, k as axios, ge as capitalize, S as chunk, W as clamp, re as clearHydrationData, Z as clearRafTimer, le as clientOnly, N as colorLog, P as colorize, C as compact, ie as createHydrationData, A as createInstance, t as defaultEnglishResources, n as defaultLanguage, e as defaultLanguageResources, K as filterEmpty, q as filtereEmpty, a as getI18nPathValue, o as getLanguage, w as groupBy, s as i18n, c as i18nStore, l as interpolateI18nMessage, _e as isBlank, h as isBoolean, ue as isBrowser, g as isFunction, _ as isNil, v as isNonNullable, y as isNumber, u as isPlainI18nDictionary, b as isPlainObject, de as isServer, x as isString, F as joinColorized, ve as joinStr, ye as kebabCase, r as languageLocalKey, I as logColor, L as logColorized, R as logGreen, z as logJoinColorized, B as logPink, V as logRed, H as logWhite, U as logYellow, J as mapValues, d as mergeI18nDictionary, f as mergeI18nResources, Y as omit, ae as peekHydrationData, X as pick, Q as rafClearInterval, $ as rafClearTimeout, ee as rafSetInterval, te as rafSetTimeout, oe as readHydrationData, fe as safeDocument, pe as safeLocalStorage, me as safeSetLocalStorage, he as safeWindow, se as serializeHydrationData, ce as serializeHydrationDataScriptContent, p as t, T as toArray, G as toFiniteNumber, m as translate, i as translations, E as uniqueBy };