@modern-js/app-tools 3.0.0-beta.0 → 3.0.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 (693) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +2 -2
  3. package/bin/modern.js +35 -14
  4. package/dist/cjs/builder/builder-rspack/index.js +40 -0
  5. package/dist/cjs/builder/generator/adapterCopy.js +79 -0
  6. package/dist/cjs/builder/generator/createBuilderProviderConfig.js +93 -0
  7. package/dist/cjs/builder/generator/createCopyPattern.js +67 -0
  8. package/dist/cjs/builder/generator/getBuilderEnvironments.js +90 -0
  9. package/dist/cjs/builder/generator/index.js +79 -0
  10. package/dist/cjs/builder/index.js +50 -0
  11. package/dist/cjs/builder/shared/builderPlugins/adapterBasic.js +133 -0
  12. package/dist/cjs/builder/shared/builderPlugins/adapterHtml.js +89 -0
  13. package/dist/cjs/builder/shared/builderPlugins/adapterSSR.js +151 -0
  14. package/dist/cjs/builder/shared/builderPlugins/builderHooks.js +51 -0
  15. package/dist/cjs/builder/shared/builderPlugins/index.js +79 -0
  16. package/dist/cjs/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +71 -0
  17. package/dist/cjs/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +56 -0
  18. package/dist/cjs/builder/shared/bundlerPlugins/RouterPlugin.js +191 -0
  19. package/dist/cjs/builder/shared/bundlerPlugins/index.js +72 -0
  20. package/dist/cjs/builder/shared/createCopyInfo.js +59 -0
  21. package/dist/cjs/builder/shared/index.js +72 -0
  22. package/dist/cjs/builder/shared/loaders/serverModuleLoader.js +39 -0
  23. package/dist/cjs/builder/shared/types.js +18 -0
  24. package/dist/cjs/commands/build.js +112 -0
  25. package/dist/cjs/commands/deploy.js +44 -0
  26. package/dist/cjs/commands/dev.js +126 -0
  27. package/dist/cjs/commands/index.js +92 -0
  28. package/dist/cjs/commands/info.js +110 -0
  29. package/dist/cjs/commands/inspect.js +49 -0
  30. package/dist/cjs/commands/serve.js +92 -0
  31. package/dist/cjs/compat/hooks.js +104 -0
  32. package/dist/cjs/compat/index.js +62 -0
  33. package/dist/cjs/compat/utils.js +135 -0
  34. package/dist/cjs/config/default.js +124 -0
  35. package/dist/cjs/config/index.js +65 -0
  36. package/dist/cjs/config/initialize/index.js +41 -0
  37. package/dist/cjs/config/initialize/inits.js +101 -0
  38. package/dist/cjs/constants.js +40 -0
  39. package/dist/cjs/defineConfig.js +36 -0
  40. package/dist/cjs/esm/register-esm.js +69 -0
  41. package/dist/cjs/esm/register-esm.mjs +31 -0
  42. package/dist/cjs/esm/ts-node-loader.js +62 -0
  43. package/dist/cjs/esm/ts-node-loader.mjs +22 -0
  44. package/dist/cjs/esm/utils.js +69 -0
  45. package/dist/cjs/esm/utils.mjs +31 -0
  46. package/dist/cjs/exports/server.js +18 -0
  47. package/dist/cjs/index.js +294 -0
  48. package/dist/cjs/locale/en.js +79 -0
  49. package/dist/cjs/locale/index.js +46 -0
  50. package/dist/cjs/locale/zh.js +79 -0
  51. package/dist/cjs/plugins/analyze/constants.js +48 -0
  52. package/dist/cjs/plugins/analyze/getBundleEntry.js +97 -0
  53. package/dist/cjs/plugins/analyze/getFileSystemEntry.js +117 -0
  54. package/dist/cjs/plugins/analyze/getHtmlTemplate.js +132 -0
  55. package/dist/cjs/plugins/analyze/getServerRoutes.js +177 -0
  56. package/dist/cjs/plugins/analyze/index.js +227 -0
  57. package/dist/cjs/plugins/analyze/isDefaultExportFunction.js +86 -0
  58. package/dist/cjs/plugins/analyze/templates.js +56 -0
  59. package/dist/cjs/plugins/analyze/utils.js +118 -0
  60. package/dist/cjs/plugins/deploy/index.js +72 -0
  61. package/dist/cjs/plugins/deploy/platforms/gh-pages.js +87 -0
  62. package/dist/cjs/plugins/deploy/platforms/netlify-entry.js +36 -0
  63. package/dist/cjs/plugins/deploy/platforms/netlify-handler.js +89 -0
  64. package/dist/cjs/plugins/deploy/platforms/netlify.js +156 -0
  65. package/dist/cjs/plugins/deploy/platforms/node-entry.js +75 -0
  66. package/dist/cjs/plugins/deploy/platforms/node.js +121 -0
  67. package/dist/cjs/plugins/deploy/platforms/platform.js +18 -0
  68. package/dist/cjs/plugins/deploy/platforms/vercel-entry.js +37 -0
  69. package/dist/cjs/plugins/deploy/platforms/vercel-handler.js +89 -0
  70. package/dist/cjs/plugins/deploy/platforms/vercel.js +176 -0
  71. package/dist/cjs/plugins/deploy/utils.js +92 -0
  72. package/dist/cjs/plugins/initialize/index.js +93 -0
  73. package/dist/cjs/plugins/serverBuild.js +91 -0
  74. package/dist/cjs/plugins/serverRuntime.js +49 -0
  75. package/dist/cjs/run/index.js +98 -0
  76. package/dist/cjs/types/config/deploy.js +18 -0
  77. package/dist/cjs/types/config/dev.js +18 -0
  78. package/dist/cjs/types/config/experiments.js +18 -0
  79. package/dist/cjs/types/config/html.js +18 -0
  80. package/dist/cjs/types/config/index.js +58 -0
  81. package/dist/cjs/types/config/output.js +18 -0
  82. package/dist/cjs/types/config/performance.js +18 -0
  83. package/dist/cjs/types/config/resolve.js +18 -0
  84. package/dist/cjs/types/config/security.js +18 -0
  85. package/dist/cjs/types/config/source.js +18 -0
  86. package/dist/cjs/types/config/testing.js +18 -0
  87. package/dist/cjs/types/config/tools.js +18 -0
  88. package/dist/cjs/types/index.js +58 -0
  89. package/dist/cjs/types/plugin.js +18 -0
  90. package/dist/cjs/types/utils.js +18 -0
  91. package/dist/cjs/utils/config.js +45 -0
  92. package/dist/cjs/utils/createServer.js +52 -0
  93. package/dist/cjs/utils/env.js +46 -0
  94. package/dist/cjs/utils/generateWatchFiles.js +54 -0
  95. package/dist/cjs/utils/getConfigFile.js +49 -0
  96. package/dist/cjs/utils/getSelectedEntries.js +60 -0
  97. package/dist/cjs/utils/initAppContext.js +71 -0
  98. package/dist/cjs/utils/loadPlugins.js +85 -0
  99. package/dist/cjs/utils/printInstructions.js +43 -0
  100. package/dist/cjs/utils/register.js +105 -0
  101. package/dist/cjs/utils/restart.js +52 -0
  102. package/dist/cjs/utils/routes.js +65 -0
  103. package/dist/cjs/utils/types.js +18 -0
  104. package/dist/esm/builder/builder-rspack/index.mjs +6 -0
  105. package/dist/esm/builder/generator/adapterCopy.mjs +35 -0
  106. package/dist/esm/builder/generator/createBuilderProviderConfig.mjs +59 -0
  107. package/dist/esm/builder/generator/createCopyPattern.mjs +30 -0
  108. package/dist/esm/builder/generator/getBuilderEnvironments.mjs +56 -0
  109. package/dist/esm/builder/generator/index.mjs +45 -0
  110. package/dist/esm/builder/index.mjs +7 -0
  111. package/dist/esm/builder/shared/builderPlugins/adapterBasic.mjs +89 -0
  112. package/dist/esm/builder/shared/builderPlugins/adapterHtml.mjs +55 -0
  113. package/dist/esm/builder/shared/builderPlugins/adapterSSR.mjs +117 -0
  114. package/dist/esm/builder/shared/builderPlugins/builderHooks.mjs +17 -0
  115. package/dist/esm/builder/shared/builderPlugins/index.mjs +4 -0
  116. package/dist/esm/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.mjs +37 -0
  117. package/dist/esm/builder/shared/bundlerPlugins/HtmlBottomTemplate.mjs +22 -0
  118. package/dist/esm/builder/shared/bundlerPlugins/RouterPlugin.mjs +157 -0
  119. package/dist/esm/builder/shared/bundlerPlugins/index.mjs +3 -0
  120. package/dist/esm/builder/shared/createCopyInfo.mjs +15 -0
  121. package/dist/esm/builder/shared/index.mjs +3 -0
  122. package/dist/esm/builder/shared/loaders/serverModuleLoader.mjs +5 -0
  123. package/dist/esm/commands/build.mjs +68 -0
  124. package/dist/esm/commands/deploy.mjs +10 -0
  125. package/dist/esm/commands/dev.mjs +82 -0
  126. package/dist/esm/commands/index.mjs +43 -0
  127. package/dist/esm/commands/info.mjs +76 -0
  128. package/dist/esm/commands/inspect.mjs +15 -0
  129. package/dist/esm/commands/serve.mjs +48 -0
  130. package/dist/esm/compat/hooks.mjs +67 -0
  131. package/dist/esm/compat/index.mjs +28 -0
  132. package/dist/esm/compat/utils.mjs +95 -0
  133. package/dist/esm/config/default.mjs +90 -0
  134. package/dist/esm/config/index.mjs +2 -0
  135. package/dist/esm/config/initialize/index.mjs +7 -0
  136. package/dist/esm/config/initialize/inits.mjs +54 -0
  137. package/dist/esm/constants.mjs +3 -0
  138. package/dist/esm/defineConfig.mjs +2 -0
  139. package/dist/esm/esm/register-esm.mjs +32 -0
  140. package/dist/esm/esm/ts-node-loader.mjs +22 -0
  141. package/dist/esm/esm/utils.mjs +32 -0
  142. package/dist/esm/index.mjs +122 -0
  143. package/dist/esm/locale/en.mjs +45 -0
  144. package/dist/esm/locale/index.mjs +9 -0
  145. package/dist/esm/locale/zh.mjs +45 -0
  146. package/dist/esm/plugins/analyze/constants.mjs +8 -0
  147. package/dist/esm/plugins/analyze/getBundleEntry.mjs +53 -0
  148. package/dist/esm/plugins/analyze/getFileSystemEntry.mjs +66 -0
  149. package/dist/esm/plugins/analyze/getHtmlTemplate.mjs +85 -0
  150. package/dist/esm/plugins/analyze/getServerRoutes.mjs +130 -0
  151. package/dist/esm/plugins/analyze/index.mjs +193 -0
  152. package/dist/esm/plugins/analyze/isDefaultExportFunction.mjs +41 -0
  153. package/dist/esm/plugins/analyze/templates.mjs +22 -0
  154. package/dist/esm/plugins/analyze/utils.mjs +55 -0
  155. package/dist/esm/plugins/deploy/index.mjs +38 -0
  156. package/dist/esm/plugins/deploy/platforms/gh-pages.mjs +43 -0
  157. package/dist/esm/plugins/deploy/platforms/netlify-entry.mjs +2 -0
  158. package/dist/esm/plugins/deploy/platforms/netlify-handler.mjs +85 -0
  159. package/dist/esm/plugins/deploy/platforms/netlify.mjs +112 -0
  160. package/dist/esm/plugins/deploy/platforms/node-entry.mjs +68 -0
  161. package/dist/esm/plugins/deploy/platforms/node.mjs +77 -0
  162. package/dist/esm/plugins/deploy/platforms/vercel-entry.mjs +3 -0
  163. package/dist/esm/plugins/deploy/platforms/vercel-handler.mjs +85 -0
  164. package/dist/esm/plugins/deploy/platforms/vercel.mjs +132 -0
  165. package/dist/esm/plugins/deploy/utils.mjs +39 -0
  166. package/dist/esm/plugins/initialize/index.mjs +59 -0
  167. package/dist/esm/plugins/serverBuild.mjs +46 -0
  168. package/dist/esm/plugins/serverRuntime.mjs +15 -0
  169. package/dist/esm/run/index.mjs +61 -0
  170. package/dist/esm/types/config/index.mjs +1 -0
  171. package/dist/esm/types/index.mjs +1 -0
  172. package/dist/esm/utils/config.mjs +11 -0
  173. package/dist/esm/utils/createServer.mjs +12 -0
  174. package/dist/esm/utils/env.mjs +12 -0
  175. package/dist/esm/utils/generateWatchFiles.mjs +10 -0
  176. package/dist/esm/utils/getConfigFile.mjs +5 -0
  177. package/dist/esm/utils/getSelectedEntries.mjs +26 -0
  178. package/dist/esm/utils/initAppContext.mjs +27 -0
  179. package/dist/esm/utils/loadPlugins.mjs +45 -0
  180. package/dist/esm/utils/printInstructions.mjs +9 -0
  181. package/dist/esm/utils/register.mjs +61 -0
  182. package/dist/esm/utils/restart.mjs +18 -0
  183. package/dist/esm/utils/routes.mjs +15 -0
  184. package/dist/esm-node/builder/builder-rspack/index.mjs +7 -0
  185. package/dist/esm-node/builder/generator/adapterCopy.mjs +36 -0
  186. package/dist/esm-node/builder/generator/createBuilderProviderConfig.mjs +60 -0
  187. package/dist/esm-node/builder/generator/createCopyPattern.mjs +31 -0
  188. package/dist/esm-node/builder/generator/getBuilderEnvironments.mjs +57 -0
  189. package/dist/esm-node/builder/generator/index.mjs +46 -0
  190. package/dist/esm-node/builder/index.mjs +8 -0
  191. package/dist/esm-node/builder/shared/builderPlugins/adapterBasic.mjs +93 -0
  192. package/dist/esm-node/builder/shared/builderPlugins/adapterHtml.mjs +56 -0
  193. package/dist/esm-node/builder/shared/builderPlugins/adapterSSR.mjs +119 -0
  194. package/dist/esm-node/builder/shared/builderPlugins/builderHooks.mjs +18 -0
  195. package/dist/esm-node/builder/shared/builderPlugins/index.mjs +5 -0
  196. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.mjs +38 -0
  197. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlBottomTemplate.mjs +23 -0
  198. package/dist/esm-node/builder/shared/bundlerPlugins/RouterPlugin.mjs +158 -0
  199. package/dist/esm-node/builder/shared/bundlerPlugins/index.mjs +4 -0
  200. package/dist/esm-node/builder/shared/createCopyInfo.mjs +16 -0
  201. package/dist/esm-node/builder/shared/index.mjs +4 -0
  202. package/dist/esm-node/builder/shared/loaders/serverModuleLoader.mjs +6 -0
  203. package/dist/esm-node/builder/shared/types.mjs +1 -0
  204. package/dist/esm-node/commands/build.mjs +69 -0
  205. package/dist/esm-node/commands/deploy.mjs +11 -0
  206. package/dist/esm-node/commands/dev.mjs +83 -0
  207. package/dist/esm-node/commands/index.mjs +44 -0
  208. package/dist/esm-node/commands/info.mjs +77 -0
  209. package/dist/esm-node/commands/inspect.mjs +16 -0
  210. package/dist/esm-node/commands/serve.mjs +49 -0
  211. package/dist/esm-node/compat/hooks.mjs +68 -0
  212. package/dist/esm-node/compat/index.mjs +29 -0
  213. package/dist/esm-node/compat/utils.mjs +96 -0
  214. package/dist/esm-node/config/default.mjs +91 -0
  215. package/dist/esm-node/config/index.mjs +3 -0
  216. package/dist/esm-node/config/initialize/index.mjs +8 -0
  217. package/dist/esm-node/config/initialize/inits.mjs +55 -0
  218. package/dist/esm-node/constants.mjs +4 -0
  219. package/dist/esm-node/defineConfig.mjs +3 -0
  220. package/dist/esm-node/esm/register-esm.mjs +33 -0
  221. package/dist/esm-node/esm/ts-node-loader.mjs +23 -0
  222. package/dist/esm-node/esm/utils.mjs +33 -0
  223. package/dist/esm-node/exports/server.mjs +1 -0
  224. package/dist/esm-node/index.mjs +124 -0
  225. package/dist/esm-node/locale/en.mjs +46 -0
  226. package/dist/esm-node/locale/index.mjs +10 -0
  227. package/dist/esm-node/locale/zh.mjs +46 -0
  228. package/dist/esm-node/plugins/analyze/constants.mjs +9 -0
  229. package/dist/esm-node/plugins/analyze/getBundleEntry.mjs +54 -0
  230. package/dist/esm-node/plugins/analyze/getFileSystemEntry.mjs +67 -0
  231. package/dist/esm-node/plugins/analyze/getHtmlTemplate.mjs +86 -0
  232. package/dist/esm-node/plugins/analyze/getServerRoutes.mjs +131 -0
  233. package/dist/esm-node/plugins/analyze/index.mjs +194 -0
  234. package/dist/esm-node/plugins/analyze/isDefaultExportFunction.mjs +42 -0
  235. package/dist/esm-node/plugins/analyze/templates.mjs +23 -0
  236. package/dist/esm-node/plugins/analyze/utils.mjs +56 -0
  237. package/dist/esm-node/plugins/deploy/index.mjs +39 -0
  238. package/dist/esm-node/plugins/deploy/platforms/gh-pages.mjs +44 -0
  239. package/dist/esm-node/plugins/deploy/platforms/netlify-entry.mjs +3 -0
  240. package/dist/esm-node/plugins/deploy/platforms/netlify-handler.mjs +89 -0
  241. package/dist/esm-node/plugins/deploy/platforms/netlify.mjs +117 -0
  242. package/dist/esm-node/plugins/deploy/platforms/node-entry.mjs +72 -0
  243. package/dist/esm-node/plugins/deploy/platforms/node.mjs +82 -0
  244. package/dist/esm-node/plugins/deploy/platforms/platform.mjs +1 -0
  245. package/dist/esm-node/plugins/deploy/platforms/vercel-entry.mjs +4 -0
  246. package/dist/esm-node/plugins/deploy/platforms/vercel-handler.mjs +89 -0
  247. package/dist/esm-node/plugins/deploy/platforms/vercel.mjs +137 -0
  248. package/dist/esm-node/plugins/deploy/utils.mjs +40 -0
  249. package/dist/esm-node/plugins/initialize/index.mjs +60 -0
  250. package/dist/esm-node/plugins/serverBuild.mjs +47 -0
  251. package/dist/esm-node/plugins/serverRuntime.mjs +16 -0
  252. package/dist/esm-node/run/index.mjs +62 -0
  253. package/dist/esm-node/types/config/deploy.mjs +1 -0
  254. package/dist/esm-node/types/config/dev.mjs +1 -0
  255. package/dist/esm-node/types/config/experiments.mjs +1 -0
  256. package/dist/esm-node/types/config/html.mjs +1 -0
  257. package/dist/esm-node/types/config/index.mjs +2 -0
  258. package/dist/esm-node/types/config/output.mjs +1 -0
  259. package/dist/esm-node/types/config/performance.mjs +1 -0
  260. package/dist/esm-node/types/config/resolve.mjs +1 -0
  261. package/dist/esm-node/types/config/security.mjs +1 -0
  262. package/dist/esm-node/types/config/source.mjs +1 -0
  263. package/dist/esm-node/types/config/testing.mjs +1 -0
  264. package/dist/esm-node/types/config/tools.mjs +1 -0
  265. package/dist/esm-node/types/index.mjs +2 -0
  266. package/dist/esm-node/types/plugin.mjs +1 -0
  267. package/dist/esm-node/types/utils.mjs +1 -0
  268. package/dist/esm-node/utils/config.mjs +12 -0
  269. package/dist/esm-node/utils/createServer.mjs +13 -0
  270. package/dist/esm-node/utils/env.mjs +13 -0
  271. package/dist/esm-node/utils/generateWatchFiles.mjs +11 -0
  272. package/dist/esm-node/utils/getConfigFile.mjs +6 -0
  273. package/dist/esm-node/utils/getSelectedEntries.mjs +27 -0
  274. package/dist/esm-node/utils/initAppContext.mjs +28 -0
  275. package/dist/esm-node/utils/loadPlugins.mjs +46 -0
  276. package/dist/esm-node/utils/printInstructions.mjs +10 -0
  277. package/dist/esm-node/utils/register.mjs +63 -0
  278. package/dist/esm-node/utils/restart.mjs +19 -0
  279. package/dist/esm-node/utils/routes.mjs +16 -0
  280. package/dist/esm-node/utils/types.mjs +1 -0
  281. package/dist/types/builder/builder-rspack/index.d.ts +2 -2
  282. package/dist/types/builder/generator/adapterCopy.d.ts +3 -0
  283. package/dist/types/builder/generator/createBuilderProviderConfig.d.ts +3 -2
  284. package/dist/types/builder/generator/createCopyPattern.d.ts +16 -0
  285. package/dist/types/builder/generator/getBuilderEnvironments.d.ts +6 -0
  286. package/dist/types/builder/generator/index.d.ts +4 -13
  287. package/dist/types/builder/index.d.ts +3 -1
  288. package/dist/types/builder/shared/builderPlugins/adapterBasic.d.ts +3 -0
  289. package/dist/types/builder/shared/builderPlugins/adapterHtml.d.ts +3 -0
  290. package/dist/types/builder/shared/builderPlugins/adapterSSR.d.ts +3 -0
  291. package/dist/types/builder/shared/builderPlugins/builderHooks.d.ts +3 -0
  292. package/dist/types/builder/shared/builderPlugins/index.d.ts +4 -0
  293. package/dist/types/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.d.ts +6 -8
  294. package/dist/types/builder/shared/bundlerPlugins/HtmlBottomTemplate.d.ts +8 -10
  295. package/dist/types/builder/shared/bundlerPlugins/RouterPlugin.d.ts +32 -0
  296. package/dist/types/builder/shared/bundlerPlugins/index.d.ts +3 -0
  297. package/dist/types/builder/shared/createCopyInfo.d.ts +8 -0
  298. package/dist/types/builder/shared/index.d.ts +2 -2
  299. package/dist/types/builder/shared/loaders/serverModuleLoader.d.ts +3 -4
  300. package/dist/types/builder/shared/types.d.ts +6 -16
  301. package/dist/types/commands/build.d.ts +3 -3
  302. package/dist/types/commands/deploy.d.ts +2 -2
  303. package/dist/types/commands/dev.d.ts +8 -3
  304. package/dist/types/commands/index.d.ts +9 -3
  305. package/dist/types/commands/info.d.ts +18 -0
  306. package/dist/types/commands/inspect.d.ts +3 -10
  307. package/dist/types/commands/serve.d.ts +7 -2
  308. package/dist/types/compat/hooks.d.ts +7 -0
  309. package/dist/types/compat/index.d.ts +2 -0
  310. package/dist/types/compat/utils.d.ts +13 -0
  311. package/dist/types/config/default.d.ts +3 -3
  312. package/dist/types/config/index.d.ts +1 -2
  313. package/dist/types/config/initialize/index.d.ts +3 -2
  314. package/dist/types/config/initialize/inits.d.ts +4 -4
  315. package/dist/types/constants.d.ts +2 -0
  316. package/dist/types/defineConfig.d.ts +9 -7
  317. package/dist/types/esm/register-esm.d.mts +5 -0
  318. package/dist/types/esm/ts-node-loader.d.mts +7 -0
  319. package/dist/types/esm/utils.d.mts +5 -0
  320. package/dist/types/exports/server.d.ts +1 -1
  321. package/dist/types/index.d.ts +11 -14
  322. package/dist/types/locale/en.d.ts +42 -35
  323. package/dist/types/locale/index.d.ts +84 -70
  324. package/dist/types/locale/zh.d.ts +42 -35
  325. package/dist/types/plugins/analyze/constants.d.ts +3 -0
  326. package/dist/types/plugins/analyze/getBundleEntry.d.ts +4 -0
  327. package/dist/types/plugins/analyze/getFileSystemEntry.d.ts +7 -0
  328. package/dist/types/plugins/analyze/getHtmlTemplate.d.ts +27 -0
  329. package/dist/types/plugins/analyze/getServerRoutes.d.ts +8 -0
  330. package/dist/types/plugins/analyze/index.d.ts +3 -0
  331. package/dist/types/{analyze → plugins/analyze}/isDefaultExportFunction.d.ts +1 -1
  332. package/dist/types/plugins/analyze/templates.d.ts +5 -0
  333. package/dist/types/plugins/analyze/utils.d.ts +10 -0
  334. package/dist/types/plugins/deploy/index.d.ts +3 -0
  335. package/dist/types/plugins/deploy/platforms/gh-pages.d.ts +2 -0
  336. package/dist/types/plugins/deploy/platforms/netlify-entry.d.cts +2 -0
  337. package/dist/types/plugins/deploy/platforms/netlify-entry.d.mts +1 -0
  338. package/dist/types/plugins/deploy/platforms/netlify-handler.d.cts +1 -0
  339. package/dist/types/plugins/deploy/platforms/netlify.d.ts +2 -0
  340. package/dist/types/plugins/deploy/platforms/node-entry.d.ts +1 -0
  341. package/dist/types/plugins/deploy/platforms/node.d.ts +2 -0
  342. package/dist/types/plugins/deploy/platforms/platform.d.ts +10 -0
  343. package/dist/types/plugins/deploy/platforms/vercel-entry.d.mts +2 -0
  344. package/dist/types/plugins/deploy/platforms/vercel-entry.d.ts +2 -0
  345. package/dist/types/plugins/deploy/platforms/vercel-handler.d.cts +1 -0
  346. package/dist/types/plugins/deploy/platforms/vercel.d.ts +2 -0
  347. package/dist/types/plugins/deploy/utils.d.ts +23 -0
  348. package/dist/types/plugins/initialize/index.d.ts +3 -0
  349. package/dist/types/plugins/serverBuild.d.ts +3 -0
  350. package/dist/types/plugins/serverRuntime.d.ts +3 -0
  351. package/dist/types/run/index.d.ts +20 -0
  352. package/dist/types/types/config/deploy.d.ts +21 -5
  353. package/dist/types/types/config/dev.d.ts +54 -10
  354. package/dist/types/types/config/experiments.d.ts +2 -2
  355. package/dist/types/types/config/html.d.ts +2 -5
  356. package/dist/types/types/config/index.d.ts +42 -53
  357. package/dist/types/types/config/output.d.ts +35 -26
  358. package/dist/types/types/config/performance.d.ts +3 -7
  359. package/dist/types/types/config/resolve.d.ts +2 -0
  360. package/dist/types/types/config/security.d.ts +2 -4
  361. package/dist/types/types/config/source.d.ts +43 -24
  362. package/dist/types/types/config/testing.d.ts +8 -0
  363. package/dist/types/types/config/tools.d.ts +19 -28
  364. package/dist/types/types/index.d.ts +9 -34
  365. package/dist/types/types/plugin.d.ts +114 -0
  366. package/dist/types/types/utils.d.ts +0 -6
  367. package/dist/types/utils/config.d.ts +1 -21
  368. package/dist/types/utils/createServer.d.ts +4 -11
  369. package/dist/types/utils/env.d.ts +2 -2
  370. package/dist/types/utils/generateWatchFiles.d.ts +2 -3
  371. package/dist/types/utils/getConfigFile.d.ts +1 -0
  372. package/dist/types/utils/getSelectedEntries.d.ts +2 -3
  373. package/dist/types/utils/initAppContext.d.ts +30 -0
  374. package/dist/types/utils/loadPlugins.d.ts +15 -0
  375. package/dist/types/utils/printInstructions.d.ts +3 -3
  376. package/dist/types/utils/register.d.ts +7 -0
  377. package/dist/types/utils/restart.d.ts +2 -3
  378. package/dist/types/utils/routes.d.ts +4 -3
  379. package/dist/types/utils/types.d.ts +18 -12
  380. package/lib/types.d.ts +92 -61
  381. package/package.json +81 -60
  382. package/rslib.config.mts +20 -0
  383. package/rstest.config.ts +24 -0
  384. package/CHANGELOG.md +0 -3420
  385. package/dist/js/modern/analyze/constants.js +0 -56
  386. package/dist/js/modern/analyze/generateCode.js +0 -247
  387. package/dist/js/modern/analyze/getBundleEntry.js +0 -71
  388. package/dist/js/modern/analyze/getClientRoutes/getRoutes.js +0 -220
  389. package/dist/js/modern/analyze/getClientRoutes/getRoutesLegacy.js +0 -216
  390. package/dist/js/modern/analyze/getClientRoutes/index.js +0 -6
  391. package/dist/js/modern/analyze/getClientRoutes/utils.js +0 -31
  392. package/dist/js/modern/analyze/getFileSystemEntry.js +0 -109
  393. package/dist/js/modern/analyze/getHtmlTemplate.js +0 -115
  394. package/dist/js/modern/analyze/getServerRoutes.js +0 -178
  395. package/dist/js/modern/analyze/index.js +0 -333
  396. package/dist/js/modern/analyze/isDefaultExportFunction.js +0 -42
  397. package/dist/js/modern/analyze/makeLegalIdentifier.js +0 -13
  398. package/dist/js/modern/analyze/nestedRoutes.js +0 -186
  399. package/dist/js/modern/analyze/templates.js +0 -327
  400. package/dist/js/modern/analyze/utils.js +0 -141
  401. package/dist/js/modern/builder/builder-rspack/index.js +0 -8
  402. package/dist/js/modern/builder/builder-webpack/builderPlugins/compatModern.js +0 -41
  403. package/dist/js/modern/builder/builder-webpack/index.js +0 -93
  404. package/dist/js/modern/builder/builder-webpack/webpackPlugins/RouterPlugin.js +0 -116
  405. package/dist/js/modern/builder/builder-webpack/webpackPlugins/index.js +0 -1
  406. package/dist/js/modern/builder/generator/createBuilderOptions.js +0 -24
  407. package/dist/js/modern/builder/generator/createBuilderProviderConfig.js +0 -39
  408. package/dist/js/modern/builder/generator/getBuilderTargets.js +0 -21
  409. package/dist/js/modern/builder/generator/index.js +0 -53
  410. package/dist/js/modern/builder/index.js +0 -39
  411. package/dist/js/modern/builder/shared/builderPlugins/adapterModern.js +0 -219
  412. package/dist/js/modern/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +0 -27
  413. package/dist/js/modern/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +0 -34
  414. package/dist/js/modern/builder/shared/createCopyPattern.js +0 -46
  415. package/dist/js/modern/builder/shared/index.js +0 -3
  416. package/dist/js/modern/builder/shared/loaders/serverModuleLoader.js +0 -7
  417. package/dist/js/modern/commands/build.js +0 -91
  418. package/dist/js/modern/commands/deploy.js +0 -28
  419. package/dist/js/modern/commands/dev.js +0 -109
  420. package/dist/js/modern/commands/index.js +0 -3
  421. package/dist/js/modern/commands/inspect.js +0 -38
  422. package/dist/js/modern/commands/serve.js +0 -54
  423. package/dist/js/modern/config/default.js +0 -175
  424. package/dist/js/modern/config/index.js +0 -3
  425. package/dist/js/modern/config/initialize/index.js +0 -12
  426. package/dist/js/modern/config/initialize/inits.js +0 -154
  427. package/dist/js/modern/config/legacy/createHtmlConfig.js +0 -35
  428. package/dist/js/modern/config/legacy/createOutputConfig.js +0 -68
  429. package/dist/js/modern/config/legacy/createSourceConfig.js +0 -39
  430. package/dist/js/modern/config/legacy/createToolsConfig.js +0 -42
  431. package/dist/js/modern/config/legacy/index.js +0 -51
  432. package/dist/js/modern/defineConfig.js +0 -27
  433. package/dist/js/modern/exports/server.js +0 -4
  434. package/dist/js/modern/hooks.js +0 -35
  435. package/dist/js/modern/index.js +0 -221
  436. package/dist/js/modern/initialize/index.js +0 -132
  437. package/dist/js/modern/locale/en.js +0 -36
  438. package/dist/js/modern/locale/index.js +0 -9
  439. package/dist/js/modern/locale/zh.js +0 -36
  440. package/dist/js/modern/schema/Schema.js +0 -40
  441. package/dist/js/modern/schema/index.js +0 -88
  442. package/dist/js/modern/schema/legacy.js +0 -148
  443. package/dist/js/modern/types/config/index.js +0 -1
  444. package/dist/js/modern/types/index.js +0 -3
  445. package/dist/js/modern/types/utils.js +0 -0
  446. package/dist/js/modern/utils/config.js +0 -128
  447. package/dist/js/modern/utils/createServer.js +0 -75
  448. package/dist/js/modern/utils/env.js +0 -15
  449. package/dist/js/modern/utils/generateWatchFiles.js +0 -55
  450. package/dist/js/modern/utils/getSelectedEntries.js +0 -58
  451. package/dist/js/modern/utils/getServerInternalPlugins.js +0 -58
  452. package/dist/js/modern/utils/language.js +0 -8
  453. package/dist/js/modern/utils/printInstructions.js +0 -31
  454. package/dist/js/modern/utils/restart.js +0 -44
  455. package/dist/js/modern/utils/routes.js +0 -30
  456. package/dist/js/modern/utils/types.js +0 -0
  457. package/dist/js/node/analyze/constants.js +0 -100
  458. package/dist/js/node/analyze/generateCode.js +0 -271
  459. package/dist/js/node/analyze/getBundleEntry.js +0 -95
  460. package/dist/js/node/analyze/getClientRoutes/getRoutes.js +0 -242
  461. package/dist/js/node/analyze/getClientRoutes/getRoutesLegacy.js +0 -238
  462. package/dist/js/node/analyze/getClientRoutes/index.js +0 -30
  463. package/dist/js/node/analyze/getClientRoutes/utils.js +0 -58
  464. package/dist/js/node/analyze/getFileSystemEntry.js +0 -131
  465. package/dist/js/node/analyze/getHtmlTemplate.js +0 -144
  466. package/dist/js/node/analyze/getServerRoutes.js +0 -196
  467. package/dist/js/node/analyze/index.js +0 -340
  468. package/dist/js/node/analyze/isDefaultExportFunction.js +0 -71
  469. package/dist/js/node/analyze/makeLegalIdentifier.js +0 -36
  470. package/dist/js/node/analyze/nestedRoutes.js +0 -213
  471. package/dist/js/node/analyze/templates.js +0 -358
  472. package/dist/js/node/analyze/utils.js +0 -172
  473. package/dist/js/node/builder/builder-rspack/index.js +0 -31
  474. package/dist/js/node/builder/builder-webpack/builderPlugins/compatModern.js +0 -64
  475. package/dist/js/node/builder/builder-webpack/index.js +0 -118
  476. package/dist/js/node/builder/builder-webpack/webpackPlugins/RouterPlugin.js +0 -140
  477. package/dist/js/node/builder/builder-webpack/webpackPlugins/index.js +0 -17
  478. package/dist/js/node/builder/generator/createBuilderOptions.js +0 -47
  479. package/dist/js/node/builder/generator/createBuilderProviderConfig.js +0 -60
  480. package/dist/js/node/builder/generator/getBuilderTargets.js +0 -39
  481. package/dist/js/node/builder/generator/index.js +0 -82
  482. package/dist/js/node/builder/index.js +0 -68
  483. package/dist/js/node/builder/shared/builderPlugins/adapterModern.js +0 -245
  484. package/dist/js/node/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +0 -50
  485. package/dist/js/node/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +0 -57
  486. package/dist/js/node/builder/shared/createCopyPattern.js +0 -75
  487. package/dist/js/node/builder/shared/index.js +0 -19
  488. package/dist/js/node/builder/shared/loaders/serverModuleLoader.js +0 -28
  489. package/dist/js/node/builder/shared/types.js +0 -15
  490. package/dist/js/node/commands/build.js +0 -112
  491. package/dist/js/node/commands/deploy.js +0 -51
  492. package/dist/js/node/commands/dev.js +0 -126
  493. package/dist/js/node/commands/index.js +0 -19
  494. package/dist/js/node/commands/inspect.js +0 -61
  495. package/dist/js/node/commands/serve.js +0 -83
  496. package/dist/js/node/config/default.js +0 -197
  497. package/dist/js/node/config/index.js +0 -19
  498. package/dist/js/node/config/initialize/index.js +0 -35
  499. package/dist/js/node/config/initialize/inits.js +0 -177
  500. package/dist/js/node/config/legacy/createHtmlConfig.js +0 -58
  501. package/dist/js/node/config/legacy/createOutputConfig.js +0 -91
  502. package/dist/js/node/config/legacy/createSourceConfig.js +0 -62
  503. package/dist/js/node/config/legacy/createToolsConfig.js +0 -65
  504. package/dist/js/node/config/legacy/index.js +0 -75
  505. package/dist/js/node/defineConfig.js +0 -49
  506. package/dist/js/node/exports/server.js +0 -27
  507. package/dist/js/node/hooks.js +0 -54
  508. package/dist/js/node/index.js +0 -245
  509. package/dist/js/node/initialize/index.js +0 -141
  510. package/dist/js/node/locale/en.js +0 -59
  511. package/dist/js/node/locale/index.js +0 -33
  512. package/dist/js/node/locale/zh.js +0 -59
  513. package/dist/js/node/schema/Schema.js +0 -63
  514. package/dist/js/node/schema/index.js +0 -118
  515. package/dist/js/node/schema/legacy.js +0 -169
  516. package/dist/js/node/types/config/deploy.js +0 -15
  517. package/dist/js/node/types/config/dev.js +0 -15
  518. package/dist/js/node/types/config/experiments.js +0 -15
  519. package/dist/js/node/types/config/html.js +0 -15
  520. package/dist/js/node/types/config/index.js +0 -17
  521. package/dist/js/node/types/config/output.js +0 -15
  522. package/dist/js/node/types/config/performance.js +0 -15
  523. package/dist/js/node/types/config/security.js +0 -15
  524. package/dist/js/node/types/config/source.js +0 -15
  525. package/dist/js/node/types/config/tools.js +0 -15
  526. package/dist/js/node/types/hooks.js +0 -15
  527. package/dist/js/node/types/index.js +0 -19
  528. package/dist/js/node/types/legacyConfig/deploy.js +0 -15
  529. package/dist/js/node/types/legacyConfig/dev.js +0 -15
  530. package/dist/js/node/types/legacyConfig/index.js +0 -15
  531. package/dist/js/node/types/legacyConfig/output.js +0 -15
  532. package/dist/js/node/types/legacyConfig/source.js +0 -15
  533. package/dist/js/node/types/legacyConfig/tools.js +0 -15
  534. package/dist/js/node/types/utils.js +0 -15
  535. package/dist/js/node/utils/config.js +0 -153
  536. package/dist/js/node/utils/createServer.js +0 -106
  537. package/dist/js/node/utils/env.js +0 -38
  538. package/dist/js/node/utils/generateWatchFiles.js +0 -85
  539. package/dist/js/node/utils/getSelectedEntries.js +0 -81
  540. package/dist/js/node/utils/getServerInternalPlugins.js +0 -79
  541. package/dist/js/node/utils/language.js +0 -31
  542. package/dist/js/node/utils/printInstructions.js +0 -54
  543. package/dist/js/node/utils/restart.js +0 -67
  544. package/dist/js/node/utils/routes.js +0 -59
  545. package/dist/js/node/utils/types.js +0 -15
  546. package/dist/js/treeshaking/analyze/constants.js +0 -42
  547. package/dist/js/treeshaking/analyze/generateCode.js +0 -485
  548. package/dist/js/treeshaking/analyze/getBundleEntry.js +0 -62
  549. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutes.js +0 -233
  550. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutesLegacy.js +0 -231
  551. package/dist/js/treeshaking/analyze/getClientRoutes/index.js +0 -3
  552. package/dist/js/treeshaking/analyze/getClientRoutes/utils.js +0 -23
  553. package/dist/js/treeshaking/analyze/getFileSystemEntry.js +0 -107
  554. package/dist/js/treeshaking/analyze/getHtmlTemplate.js +0 -302
  555. package/dist/js/treeshaking/analyze/getServerRoutes.js +0 -224
  556. package/dist/js/treeshaking/analyze/index.js +0 -702
  557. package/dist/js/treeshaking/analyze/isDefaultExportFunction.js +0 -47
  558. package/dist/js/treeshaking/analyze/makeLegalIdentifier.js +0 -13
  559. package/dist/js/treeshaking/analyze/nestedRoutes.js +0 -409
  560. package/dist/js/treeshaking/analyze/templates.js +0 -464
  561. package/dist/js/treeshaking/analyze/utils.js +0 -374
  562. package/dist/js/treeshaking/builder/builder-rspack/index.js +0 -6
  563. package/dist/js/treeshaking/builder/builder-webpack/builderPlugins/compatModern.js +0 -64
  564. package/dist/js/treeshaking/builder/builder-webpack/index.js +0 -301
  565. package/dist/js/treeshaking/builder/builder-webpack/webpackPlugins/RouterPlugin.js +0 -346
  566. package/dist/js/treeshaking/builder/builder-webpack/webpackPlugins/index.js +0 -1
  567. package/dist/js/treeshaking/builder/generator/createBuilderOptions.js +0 -41
  568. package/dist/js/treeshaking/builder/generator/createBuilderProviderConfig.js +0 -70
  569. package/dist/js/treeshaking/builder/generator/getBuilderTargets.js +0 -16
  570. package/dist/js/treeshaking/builder/generator/index.js +0 -199
  571. package/dist/js/treeshaking/builder/index.js +0 -175
  572. package/dist/js/treeshaking/builder/shared/builderPlugins/adapterModern.js +0 -300
  573. package/dist/js/treeshaking/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +0 -110
  574. package/dist/js/treeshaking/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +0 -72
  575. package/dist/js/treeshaking/builder/shared/createCopyPattern.js +0 -40
  576. package/dist/js/treeshaking/builder/shared/index.js +0 -3
  577. package/dist/js/treeshaking/builder/shared/loaders/serverModuleLoader.js +0 -5
  578. package/dist/js/treeshaking/builder/shared/types.js +0 -1
  579. package/dist/js/treeshaking/commands/build.js +0 -291
  580. package/dist/js/treeshaking/commands/deploy.js +0 -154
  581. package/dist/js/treeshaking/commands/dev.js +0 -301
  582. package/dist/js/treeshaking/commands/index.js +0 -3
  583. package/dist/js/treeshaking/commands/inspect.js +0 -149
  584. package/dist/js/treeshaking/commands/serve.js +0 -199
  585. package/dist/js/treeshaking/config/default.js +0 -210
  586. package/dist/js/treeshaking/config/index.js +0 -3
  587. package/dist/js/treeshaking/config/initialize/index.js +0 -10
  588. package/dist/js/treeshaking/config/initialize/inits.js +0 -211
  589. package/dist/js/treeshaking/config/legacy/createHtmlConfig.js +0 -19
  590. package/dist/js/treeshaking/config/legacy/createOutputConfig.js +0 -41
  591. package/dist/js/treeshaking/config/legacy/createSourceConfig.js +0 -42
  592. package/dist/js/treeshaking/config/legacy/createToolsConfig.js +0 -23
  593. package/dist/js/treeshaking/config/legacy/index.js +0 -38
  594. package/dist/js/treeshaking/defineConfig.js +0 -61
  595. package/dist/js/treeshaking/exports/server.js +0 -2
  596. package/dist/js/treeshaking/hooks.js +0 -29
  597. package/dist/js/treeshaking/index.js +0 -713
  598. package/dist/js/treeshaking/initialize/index.js +0 -284
  599. package/dist/js/treeshaking/locale/en.js +0 -38
  600. package/dist/js/treeshaking/locale/index.js +0 -9
  601. package/dist/js/treeshaking/locale/zh.js +0 -38
  602. package/dist/js/treeshaking/schema/Schema.js +0 -273
  603. package/dist/js/treeshaking/schema/index.js +0 -181
  604. package/dist/js/treeshaking/schema/legacy.js +0 -337
  605. package/dist/js/treeshaking/types/config/deploy.js +0 -1
  606. package/dist/js/treeshaking/types/config/dev.js +0 -1
  607. package/dist/js/treeshaking/types/config/experiments.js +0 -1
  608. package/dist/js/treeshaking/types/config/html.js +0 -1
  609. package/dist/js/treeshaking/types/config/index.js +0 -1
  610. package/dist/js/treeshaking/types/config/output.js +0 -1
  611. package/dist/js/treeshaking/types/config/performance.js +0 -1
  612. package/dist/js/treeshaking/types/config/security.js +0 -1
  613. package/dist/js/treeshaking/types/config/source.js +0 -1
  614. package/dist/js/treeshaking/types/config/tools.js +0 -1
  615. package/dist/js/treeshaking/types/hooks.js +0 -1
  616. package/dist/js/treeshaking/types/index.js +0 -3
  617. package/dist/js/treeshaking/types/legacyConfig/deploy.js +0 -1
  618. package/dist/js/treeshaking/types/legacyConfig/dev.js +0 -1
  619. package/dist/js/treeshaking/types/legacyConfig/index.js +0 -1
  620. package/dist/js/treeshaking/types/legacyConfig/output.js +0 -1
  621. package/dist/js/treeshaking/types/legacyConfig/source.js +0 -1
  622. package/dist/js/treeshaking/types/legacyConfig/tools.js +0 -1
  623. package/dist/js/treeshaking/types/utils.js +0 -1
  624. package/dist/js/treeshaking/utils/config.js +0 -302
  625. package/dist/js/treeshaking/utils/createServer.js +0 -258
  626. package/dist/js/treeshaking/utils/env.js +0 -13
  627. package/dist/js/treeshaking/utils/generateWatchFiles.js +0 -214
  628. package/dist/js/treeshaking/utils/getSelectedEntries.js +0 -186
  629. package/dist/js/treeshaking/utils/getServerInternalPlugins.js +0 -210
  630. package/dist/js/treeshaking/utils/language.js +0 -6
  631. package/dist/js/treeshaking/utils/printInstructions.js +0 -152
  632. package/dist/js/treeshaking/utils/restart.js +0 -187
  633. package/dist/js/treeshaking/utils/routes.js +0 -153
  634. package/dist/js/treeshaking/utils/types.js +0 -1
  635. package/dist/types/analyze/constants.d.ts +0 -32
  636. package/dist/types/analyze/generateCode.d.ts +0 -5
  637. package/dist/types/analyze/getBundleEntry.d.ts +0 -3
  638. package/dist/types/analyze/getClientRoutes/getRoutes.d.ts +0 -14
  639. package/dist/types/analyze/getClientRoutes/getRoutesLegacy.d.ts +0 -15
  640. package/dist/types/analyze/getClientRoutes/index.d.ts +0 -2
  641. package/dist/types/analyze/getClientRoutes/utils.d.ts +0 -5
  642. package/dist/types/analyze/getFileSystemEntry.d.ts +0 -4
  643. package/dist/types/analyze/getHtmlTemplate.d.ts +0 -9
  644. package/dist/types/analyze/getServerRoutes.d.ts +0 -10
  645. package/dist/types/analyze/index.d.ts +0 -10
  646. package/dist/types/analyze/makeLegalIdentifier.d.ts +0 -1
  647. package/dist/types/analyze/nestedRoutes.d.ts +0 -5
  648. package/dist/types/analyze/templates.d.ts +0 -45
  649. package/dist/types/analyze/utils.d.ts +0 -27
  650. package/dist/types/builder/builder-webpack/builderPlugins/compatModern.d.ts +0 -14
  651. package/dist/types/builder/builder-webpack/index.d.ts +0 -4
  652. package/dist/types/builder/builder-webpack/webpackPlugins/RouterPlugin.d.ts +0 -4
  653. package/dist/types/builder/builder-webpack/webpackPlugins/index.d.ts +0 -1
  654. package/dist/types/builder/generator/createBuilderOptions.d.ts +0 -3
  655. package/dist/types/builder/generator/getBuilderTargets.d.ts +0 -3
  656. package/dist/types/builder/shared/builderPlugins/adapterModern.d.ts +0 -13
  657. package/dist/types/builder/shared/createCopyPattern.d.ts +0 -26
  658. package/dist/types/config/legacy/createHtmlConfig.d.ts +0 -2
  659. package/dist/types/config/legacy/createOutputConfig.d.ts +0 -2
  660. package/dist/types/config/legacy/createSourceConfig.d.ts +0 -2
  661. package/dist/types/config/legacy/createToolsConfig.d.ts +0 -2
  662. package/dist/types/config/legacy/index.d.ts +0 -3
  663. package/dist/types/hooks.d.ts +0 -2
  664. package/dist/types/initialize/index.d.ts +0 -9
  665. package/dist/types/schema/Schema.d.ts +0 -14
  666. package/dist/types/schema/index.d.ts +0 -4
  667. package/dist/types/schema/legacy.d.ts +0 -3
  668. package/dist/types/types/hooks.d.ts +0 -86
  669. package/dist/types/types/legacyConfig/deploy.d.ts +0 -8
  670. package/dist/types/types/legacyConfig/dev.d.ts +0 -13
  671. package/dist/types/types/legacyConfig/index.d.ts +0 -33
  672. package/dist/types/types/legacyConfig/output.d.ts +0 -51
  673. package/dist/types/types/legacyConfig/source.d.ts +0 -25
  674. package/dist/types/types/legacyConfig/tools.d.ts +0 -17
  675. package/dist/types/utils/getServerInternalPlugins.d.ts +0 -2
  676. package/dist/types/utils/language.d.ts +0 -1
  677. /package/dist/{js/modern/builder/shared/types.js → esm/builder/shared/types.mjs} +0 -0
  678. /package/dist/{js/modern/types/config/deploy.js → esm/exports/server.mjs} +0 -0
  679. /package/dist/{js/modern/types/config/dev.js → esm/plugins/deploy/platforms/platform.mjs} +0 -0
  680. /package/dist/{js/modern/types/config/experiments.js → esm/types/config/deploy.mjs} +0 -0
  681. /package/dist/{js/modern/types/config/html.js → esm/types/config/dev.mjs} +0 -0
  682. /package/dist/{js/modern/types/config/output.js → esm/types/config/experiments.mjs} +0 -0
  683. /package/dist/{js/modern/types/config/performance.js → esm/types/config/html.mjs} +0 -0
  684. /package/dist/{js/modern/types/config/security.js → esm/types/config/output.mjs} +0 -0
  685. /package/dist/{js/modern/types/config/source.js → esm/types/config/performance.mjs} +0 -0
  686. /package/dist/{js/modern/types/config/tools.js → esm/types/config/resolve.mjs} +0 -0
  687. /package/dist/{js/modern/types/hooks.js → esm/types/config/security.mjs} +0 -0
  688. /package/dist/{js/modern/types/legacyConfig/deploy.js → esm/types/config/source.mjs} +0 -0
  689. /package/dist/{js/modern/types/legacyConfig/dev.js → esm/types/config/testing.mjs} +0 -0
  690. /package/dist/{js/modern/types/legacyConfig/index.js → esm/types/config/tools.mjs} +0 -0
  691. /package/dist/{js/modern/types/legacyConfig/output.js → esm/types/plugin.mjs} +0 -0
  692. /package/dist/{js/modern/types/legacyConfig/source.js → esm/types/utils.mjs} +0 -0
  693. /package/dist/{js/modern/types/legacyConfig/tools.js → esm/utils/types.mjs} +0 -0
@@ -0,0 +1,119 @@
1
+ import __rslib_shim_module__ from "node:module";
2
+ const require = /*#__PURE__*/ __rslib_shim_module__.createRequire(/*#__PURE__*/ (()=>import.meta.url)());
3
+ import { resolve, sep } from "path";
4
+ import { SERVICE_WORKER_ENVIRONMENT_NAME, isHtmlDisabled } from "@modern-js/builder";
5
+ import { fs, isUseRsc, isUseSSRBundle } from "@modern-js/utils";
6
+ import { mergeRsbuildConfig } from "@rsbuild/core";
7
+ import { getServerCombinedModueFile } from "../../../plugins/analyze/utils.mjs";
8
+ import { HtmlAsyncChunkPlugin, RouterPlugin } from "../bundlerPlugins/index.mjs";
9
+ const builderPluginAdapterSSR = (options)=>({
10
+ name: 'builder-plugin-adapter-modern-ssr',
11
+ setup (api) {
12
+ const { normalizedConfig } = options;
13
+ api.modifyRsbuildConfig((config)=>mergeRsbuildConfig(config, {
14
+ html: {
15
+ inject: isStreamingSSR(normalizedConfig) ? 'head' : void 0
16
+ },
17
+ server: {
18
+ compress: isStreamingSSR(normalizedConfig) || isUseRsc(normalizedConfig) ? false : void 0
19
+ }
20
+ }));
21
+ api.modifyBundlerChain(async (chain, { target, isProd, HtmlPlugin: HtmlBundlerPlugin, isServer, environment })=>{
22
+ const builderConfig = environment.config;
23
+ const { normalizedConfig } = options;
24
+ applyRouterPlugin(chain, 'route-plugin', options, HtmlBundlerPlugin);
25
+ const isServiceWorker = environment.name === SERVICE_WORKER_ENVIRONMENT_NAME;
26
+ if ('node' === target || isServiceWorker) applyFilterEntriesBySSRConfig({
27
+ isProd,
28
+ chain,
29
+ appNormalizedConfig: normalizedConfig
30
+ });
31
+ if (isUseSSRBundle(normalizedConfig) || isUseRsc(normalizedConfig)) {
32
+ await applySSRLoaderEntry(chain, options, isServer);
33
+ applySSRDataLoader(chain, options);
34
+ }
35
+ if (!isHtmlDisabled(builderConfig, target)) applyAsyncChunkHtmlPlugin({
36
+ chain,
37
+ modernConfig: options.normalizedConfig,
38
+ HtmlBundlerPlugin
39
+ });
40
+ });
41
+ }
42
+ });
43
+ const isStreamingSSR = (userConfig)=>{
44
+ const isStreaming = (ssr)=>{
45
+ if (!ssr) return false;
46
+ if ('boolean' == typeof ssr) return ssr;
47
+ return 'string' !== ssr.mode;
48
+ };
49
+ const { server } = userConfig;
50
+ if (isStreaming(server.ssr)) return true;
51
+ if (server?.ssrByEntries && 'object' == typeof server.ssrByEntries) {
52
+ for (const name of Object.keys(server.ssrByEntries))if (isStreaming(server.ssrByEntries[name])) return true;
53
+ }
54
+ return false;
55
+ };
56
+ function applyAsyncChunkHtmlPlugin({ chain, modernConfig, HtmlBundlerPlugin }) {
57
+ if (isStreamingSSR(modernConfig) || isUseRsc(modernConfig)) chain.plugin('html-async-chunk').use(HtmlAsyncChunkPlugin, [
58
+ HtmlBundlerPlugin
59
+ ]);
60
+ }
61
+ function applyRouterPlugin(chain, pluginName, options, HtmlBundlerPlugin) {
62
+ const { appContext, normalizedConfig } = options;
63
+ const { entrypoints } = appContext;
64
+ const existNestedRoutes = entrypoints.some((entrypoint)=>entrypoint.nestedRoutesEntry);
65
+ const workerSSR = Boolean(normalizedConfig.deploy.worker?.ssr);
66
+ const { enableInlineRouteManifests, disableInlineRouteManifests } = normalizedConfig.output;
67
+ const inlineRouteManifests = disableInlineRouteManifests ? !disableInlineRouteManifests : enableInlineRouteManifests;
68
+ if (existNestedRoutes || workerSSR) chain.plugin(pluginName).use(RouterPlugin, [
69
+ {
70
+ HtmlBundlerPlugin,
71
+ enableInlineRouteManifests: inlineRouteManifests,
72
+ staticJsDir: normalizedConfig.output?.distPath?.js,
73
+ disableFilenameHash: normalizedConfig.output?.filenameHash === false,
74
+ scriptLoading: normalizedConfig.html?.scriptLoading,
75
+ nonce: normalizedConfig.security?.nonce
76
+ }
77
+ ]);
78
+ }
79
+ function applyFilterEntriesBySSRConfig({ isProd, chain, appNormalizedConfig }) {
80
+ const { server: serverConfig, output: outputConfig } = appNormalizedConfig;
81
+ const entries = chain.entryPoints.entries();
82
+ if (isProd && (outputConfig?.ssg === true || 'function' == typeof outputConfig?.ssg)) return;
83
+ if (void 0 === entries) throw new Error('No entry found, one of src/routes/layout.tsx, src/App.tsx, src/index.tsx is required');
84
+ const entryNames = Object.keys(entries);
85
+ if (isProd && 1 === entryNames.length && outputConfig?.ssg) return;
86
+ const ssgEntries = [];
87
+ if (isProd && outputConfig?.ssgByEntries) {
88
+ const { ssgByEntries } = outputConfig;
89
+ entryNames.forEach((name)=>{
90
+ if (ssgByEntries[name]) ssgEntries.push(name);
91
+ });
92
+ }
93
+ const { ssr, ssrByEntries } = serverConfig || {};
94
+ entryNames.forEach((name)=>{
95
+ if (!serverConfig?.rsc && !ssgEntries.includes(name) && !name.includes('server-loaders') && (ssr && ssrByEntries?.[name] === false || !ssr && !ssrByEntries?.[name])) chain.entryPoints.delete(name);
96
+ });
97
+ }
98
+ async function applySSRLoaderEntry(chain, optinos, isServer) {
99
+ const { appContext } = optinos;
100
+ const { internalDirectory } = appContext;
101
+ const { entrypoints } = appContext;
102
+ await Promise.all(entrypoints.map(async (entrypoint)=>{
103
+ const { entryName } = entrypoint;
104
+ const serverLoadersFile = getServerCombinedModueFile(internalDirectory, entryName);
105
+ if (isServer) try {
106
+ await fs.access(serverLoadersFile, fs.constants.F_OK);
107
+ chain.entry(`${entryName}-server-loaders`).add(serverLoadersFile);
108
+ } catch (err) {}
109
+ }));
110
+ }
111
+ function applySSRDataLoader(chain, options) {
112
+ const { normalizedConfig, appContext } = options;
113
+ const { appDirectory } = appContext;
114
+ const { entriesDir = './src' } = normalizedConfig.source;
115
+ const absolutePath = resolve(appDirectory, entriesDir).split(sep).join('(\\\\|/)');
116
+ const reg = new RegExp(`${absolutePath}.*\\.(loader|data|data.client)\\.[t|j]sx?$`);
117
+ chain.module.rule('ssr-data-loader').test(reg).use('data-loader').loader(require.resolve('@modern-js/plugin-data-loader/loader')).end();
118
+ }
119
+ export { builderPluginAdapterSSR };
@@ -0,0 +1,18 @@
1
+ import "node:module";
2
+ const builderPluginAdapterHooks = (options)=>({
3
+ name: 'builder-plugin-support-modern-hooks',
4
+ setup (api) {
5
+ const _internalContext = options.appContext._internalContext;
6
+ const hooks = _internalContext.pluginAPI?.getHooks();
7
+ api.modifyBundlerChain(async (chain, utils)=>{
8
+ await hooks?.modifyBundlerChain.call(chain, utils);
9
+ });
10
+ api.modifyRsbuildConfig(async (config, utils)=>{
11
+ await hooks?.modifyRsbuildConfig.call(config, utils);
12
+ });
13
+ api.modifyRspackConfig(async (config, utils)=>{
14
+ await hooks?.modifyRspackConfig.call(config, utils);
15
+ });
16
+ }
17
+ });
18
+ export { builderPluginAdapterHooks };
@@ -0,0 +1,5 @@
1
+ import "node:module";
2
+ export * from "./adapterBasic.mjs";
3
+ export * from "./adapterHtml.mjs";
4
+ export * from "./adapterSSR.mjs";
5
+ export * from "./builderHooks.mjs";
@@ -0,0 +1,38 @@
1
+ import "node:module";
2
+ import { RUNTIME_CHUNK_REGEX } from "@modern-js/builder";
3
+ class HtmlAsyncChunkPlugin {
4
+ apply(compiler) {
5
+ compiler.hooks.compilation.tap(this.name, (compilation)=>{
6
+ const hooks = this.htmlPlugin.getCompilationHooks(compilation);
7
+ hooks.alterAssetTagGroups.tap(this.name, (assets)=>{
8
+ const headTags = [];
9
+ const bodyTags = [];
10
+ const processScriptTag = (tag)=>{
11
+ const { attributes } = tag;
12
+ if (attributes && true === attributes.defer) {
13
+ attributes.async = true;
14
+ delete attributes.defer;
15
+ }
16
+ const src = attributes?.src;
17
+ const isRuntimeChunk = src && RUNTIME_CHUNK_REGEX.test(src);
18
+ return isRuntimeChunk ? bodyTags : headTags;
19
+ };
20
+ for (const tag of [
21
+ ...assets.headTags,
22
+ ...assets.bodyTags
23
+ ])if ("script" === tag.tagName) processScriptTag(tag).push(tag);
24
+ else (assets.headTags.includes(tag) ? headTags : bodyTags).push(tag);
25
+ return {
26
+ ...assets,
27
+ headTags,
28
+ bodyTags
29
+ };
30
+ });
31
+ });
32
+ }
33
+ constructor(htmlPlugin){
34
+ this.name = 'HtmlAsyncChunkPlugin';
35
+ this.htmlPlugin = htmlPlugin;
36
+ }
37
+ }
38
+ export { HtmlAsyncChunkPlugin };
@@ -0,0 +1,23 @@
1
+ import "node:module";
2
+ class BottomTemplatePlugin {
3
+ apply(compiler) {
4
+ compiler.hooks.compilation.tap(this.name, (compilation)=>{
5
+ this.htmlPlugin.getCompilationHooks(compilation).beforeEmit.tap(this.name, (data)=>{
6
+ if (!data.plugin.options?.__internal__) return data;
7
+ if (this.bottomTemplateReg.test(data.html)) {
8
+ data.html = data.html.replace(this.bottomTemplateReg, '');
9
+ const { bottomTemplate } = data.plugin.options;
10
+ if (bottomTemplate) data.html = data.html.replace(this.bodyRegExp, (match)=>`\n${bottomTemplate}\n${match}`);
11
+ }
12
+ return data;
13
+ });
14
+ });
15
+ }
16
+ constructor(htmlPlugin){
17
+ this.bottomTemplateReg = /<!--<\?-\s*bottomTemplate\s*\?>-->/;
18
+ this.bodyRegExp = /(<\/\s*body\s*>)/i;
19
+ this.htmlPlugin = htmlPlugin;
20
+ this.name = 'bottom-template';
21
+ }
22
+ }
23
+ export { BottomTemplatePlugin };
@@ -0,0 +1,158 @@
1
+ import "node:module";
2
+ import { createHash } from "crypto";
3
+ import { ROUTE_MANIFEST_FILE } from "@modern-js/utils";
4
+ import { merge, mergeWith } from "@modern-js/utils/lodash";
5
+ import { ROUTE_MANIFEST } from "@modern-js/utils/universal/constants";
6
+ const PLUGIN_NAME = 'ModernjsRoutePlugin';
7
+ const generateContentHash = (content)=>createHash('md5').update(content).digest('hex').slice(0, 8);
8
+ class RouterPlugin {
9
+ isTargetNodeOrWebWorker(target) {
10
+ if ('node' === target || Array.isArray(target) && target.includes('node')) return true;
11
+ if ('webworker' === target || Array.isArray(target) && target.includes('webworker')) return true;
12
+ return false;
13
+ }
14
+ getEntryChunks(compilation, chunks) {
15
+ const entrypointsArray = Array.from(compilation.entrypoints.entries());
16
+ const entryChunkIds = entrypointsArray.map((entrypoint)=>entrypoint[0]);
17
+ const entryChunks = [
18
+ ...chunks
19
+ ].filter((chunk)=>chunk.names?.some((name)=>entryChunkIds.includes(name)));
20
+ return entryChunks;
21
+ }
22
+ getEntryChunkFiles(entryChunks) {
23
+ return entryChunks.map((chunk)=>[
24
+ ...chunk.files || []
25
+ ].find((fname)=>fname.includes('.js')));
26
+ }
27
+ apply(compiler) {
28
+ const { target } = compiler.options;
29
+ if (this.isTargetNodeOrWebWorker(target)) return;
30
+ const { rspack } = compiler;
31
+ const { Compilation, sources } = rspack;
32
+ const { RawSource } = sources;
33
+ const normalizePath = (path)=>{
34
+ if (!path.endsWith('/')) return `${path}/`;
35
+ return path;
36
+ };
37
+ const chunksToHtmlName = new Map();
38
+ const ROUTE_MANIFEST_HOLDER = "route-manifest";
39
+ const placeholder = `<!--<?- ${ROUTE_MANIFEST_HOLDER} ?>-->`;
40
+ compiler.hooks.thisCompilation.tap(PLUGIN_NAME, (compilation)=>{
41
+ this.HtmlBundlerPlugin.getCompilationHooks(compilation).beforeEmit.tapAsync('RouterManifestPlugin', (data, callback)=>{
42
+ const { outputName } = data;
43
+ const { chunks } = data.plugin.options;
44
+ chunksToHtmlName.set(chunks, outputName);
45
+ data.html = data.html.replace("<\/script>", `</script>${placeholder}`);
46
+ callback(null, data);
47
+ });
48
+ compilation.hooks.processAssets.tapPromise({
49
+ name: PLUGIN_NAME,
50
+ stage: Compilation.PROCESS_ASSETS_STAGE_REPORT
51
+ }, async ()=>{
52
+ const stats = compilation.getStats().toJson({
53
+ all: false,
54
+ publicPath: true,
55
+ assets: true,
56
+ chunkGroups: true,
57
+ chunks: true,
58
+ ids: true
59
+ });
60
+ const { publicPath, chunks = [], namedChunkGroups } = stats;
61
+ const routeAssets = {};
62
+ if (!namedChunkGroups) return;
63
+ const prevManifestAsset = compilation.getAsset(ROUTE_MANIFEST_FILE);
64
+ const prevManifestStr = prevManifestAsset ? prevManifestAsset.source.source().toString() : JSON.stringify({
65
+ routeAssets: {}
66
+ });
67
+ const prevManifest = JSON.parse(prevManifestStr);
68
+ const asyncEntryNames = [];
69
+ for (const [name, chunkGroup] of Object.entries(namedChunkGroups)){
70
+ if (name.startsWith('async-')) asyncEntryNames.push(name);
71
+ const assets = chunkGroup.assets.map((asset)=>{
72
+ const filename = asset.name;
73
+ return publicPath ? normalizePath(publicPath) + filename : filename;
74
+ });
75
+ const referenceCssAssets = assets.filter((asset)=>/\.css$/.test(asset));
76
+ routeAssets[name] = {
77
+ chunkIds: chunkGroup.chunks,
78
+ assets,
79
+ referenceCssAssets
80
+ };
81
+ if (prevManifest.routeAssets[name]) mergeWith(routeAssets[name], prevManifest.routeAssets[name], (obj, source)=>{
82
+ if (Array.isArray(obj)) return obj.concat(source);
83
+ return Object.assign(source, obj);
84
+ });
85
+ }
86
+ if (asyncEntryNames.length > 0) for (const asyncEntryName of asyncEntryNames){
87
+ const syncEntryName = asyncEntryName.replace('async-', '');
88
+ const syncEntry = routeAssets[syncEntryName];
89
+ const asyncEntry = routeAssets[asyncEntryName];
90
+ merge(syncEntry, asyncEntry);
91
+ }
92
+ const manifest = {
93
+ routeAssets
94
+ };
95
+ const entryNames = Array.from(compilation.entrypoints.keys());
96
+ let entryChunks = [];
97
+ entryChunks = this.getEntryChunks(compilation, chunks);
98
+ const entryChunkFiles = this.getEntryChunkFiles(entryChunks);
99
+ const entryChunkFileIds = entryChunks.map((chunk)=>chunk.id);
100
+ for(let i = 0; i < entryChunkFiles.length; i++){
101
+ const entryName = entryNames[i];
102
+ const file = entryChunkFiles[i];
103
+ const chunkNames = entryChunks[i].names;
104
+ const chunkId = entryChunkFileIds[i];
105
+ const asset = compilation.assets[file];
106
+ if (!asset || !chunkId) continue;
107
+ let relatedAssets = {};
108
+ if (entryChunkFiles.length > 1) Object.keys(routeAssets).forEach((routeId)=>{
109
+ const segments = routeId.split('_');
110
+ const chunkName = segments[0];
111
+ if (chunkNames?.includes(chunkName)) relatedAssets[routeId] = routeAssets[routeId];
112
+ });
113
+ else relatedAssets = routeAssets;
114
+ const manifest = {
115
+ routeAssets: relatedAssets
116
+ };
117
+ const injectedContent = `
118
+ ;(function(){
119
+ window.${ROUTE_MANIFEST} = ${JSON.stringify(manifest, (k, v)=>{
120
+ if (('assets' === k || 'referenceCssAssets' === k) && Array.isArray(v)) return v.map((item)=>item.replace(publicPath, ''));
121
+ return v;
122
+ })};
123
+ })();
124
+ `;
125
+ let htmlName;
126
+ for (const [chunks, name] of chunksToHtmlName.entries())if (Array.isArray(chunkNames) && Array.isArray(chunks) && chunkNames.every((value, index)=>value === chunks[index])) {
127
+ htmlName = name;
128
+ break;
129
+ }
130
+ const oldHtml = compilation.assets[htmlName];
131
+ const { enableInlineRouteManifests, disableFilenameHash, staticJsDir, scriptLoading, nonce } = this;
132
+ const nonceAttr = nonce ? `nonce="${nonce}"` : '';
133
+ if (oldHtml) if (enableInlineRouteManifests) compilation.updateAsset(htmlName, new RawSource(oldHtml.source().toString().replace(placeholder, `<script ${nonceAttr}>${injectedContent}</script>`)), void 0);
134
+ else {
135
+ const scriptPath = `${staticJsDir}/${ROUTE_MANIFEST_HOLDER}-${entryName}${disableFilenameHash ? '.js' : `.${generateContentHash(injectedContent)}.js`}`;
136
+ const scriptUrl = `${publicPath}${scriptPath}`;
137
+ const scriptLoadingAttr = 'defer' === scriptLoading ? scriptLoading : 'module' === scriptLoading ? 'type="module"' : '';
138
+ const script = `<script ${scriptLoadingAttr} ${nonceAttr} src="${scriptUrl}"></script>`;
139
+ compilation.updateAsset(htmlName, new RawSource(oldHtml.source().toString().replace(placeholder, script)), void 0);
140
+ compilation.emitAsset(scriptPath, new RawSource(injectedContent));
141
+ }
142
+ }
143
+ if (prevManifestAsset) compilation.updateAsset(ROUTE_MANIFEST_FILE, new RawSource(JSON.stringify(manifest, null, 2)), void 0);
144
+ else compilation.emitAsset(ROUTE_MANIFEST_FILE, new RawSource(JSON.stringify(manifest, null, 2)));
145
+ });
146
+ });
147
+ }
148
+ constructor({ staticJsDir = 'static/js', HtmlBundlerPlugin, enableInlineRouteManifests, disableFilenameHash = false, scriptLoading = 'defer', nonce }){
149
+ this.name = 'RouterPlugin';
150
+ this.HtmlBundlerPlugin = HtmlBundlerPlugin;
151
+ this.enableInlineRouteManifests = enableInlineRouteManifests;
152
+ this.staticJsDir = staticJsDir;
153
+ this.disableFilenameHash = disableFilenameHash;
154
+ this.scriptLoading = scriptLoading;
155
+ this.nonce = nonce;
156
+ }
157
+ }
158
+ export { RouterPlugin };
@@ -0,0 +1,4 @@
1
+ import "node:module";
2
+ export * from "./HtmlAsyncChunkPlugin.mjs";
3
+ export * from "./HtmlBottomTemplate.mjs";
4
+ export * from "./RouterPlugin.mjs";
@@ -0,0 +1,16 @@
1
+ import "node:module";
2
+ import path from "path";
3
+ import { resolvePublicDirPaths } from "@modern-js/server-core";
4
+ function createCopyInfo(appContext, config) {
5
+ const configDir = path.resolve(appContext.appDirectory, config.source.configDir || './config');
6
+ const uploadDir = path.posix.join(configDir.replace(/\\/g, '/'), 'upload');
7
+ const publicDir = path.posix.join(configDir.replace(/\\/g, '/'), 'public');
8
+ const customPublicDirPaths = resolvePublicDirPaths(config.server?.publicDir, appContext.appDirectory);
9
+ return {
10
+ configDir,
11
+ uploadDir,
12
+ publicDir,
13
+ customPublicDirs: customPublicDirPaths
14
+ };
15
+ }
16
+ export { createCopyInfo };
@@ -0,0 +1,4 @@
1
+ import "node:module";
2
+ export * from "./types.mjs";
3
+ export * from "./builderPlugins/index.mjs";
4
+ export * from "./createCopyInfo.mjs";
@@ -0,0 +1,6 @@
1
+ import "node:module";
2
+ function loader() {
3
+ return "module.exports = {}";
4
+ }
5
+ const serverModuleLoader = loader;
6
+ export { serverModuleLoader as default };
@@ -0,0 +1 @@
1
+ import "node:module";
@@ -0,0 +1,69 @@
1
+ import "node:module";
2
+ import { fs, logger } from "@modern-js/utils";
3
+ import { loadServerPlugins } from "../utils/loadPlugins.mjs";
4
+ import { setupTsRuntime } from "../utils/register.mjs";
5
+ import { generateRoutes } from "../utils/routes.mjs";
6
+ import * as __rspack_external_node_path_c5b9b54f from "node:path";
7
+ async function copyEnvFiles(appDirectory, distDirectory) {
8
+ try {
9
+ const files = await fs.readdir(appDirectory);
10
+ const envFileRegex = /^\.env(\.[a-zA-Z0-9_-]+)*$/;
11
+ const envFiles = files.filter((file)=>envFileRegex.test(file));
12
+ if (0 === envFiles.length) return void logger.debug('No .env files found to copy');
13
+ const copyPromises = envFiles.map(async (envFile)=>{
14
+ const sourcePath = __rspack_external_node_path_c5b9b54f["default"].resolve(appDirectory, envFile);
15
+ const targetPath = __rspack_external_node_path_c5b9b54f["default"].resolve(distDirectory, envFile);
16
+ try {
17
+ const stat = await fs.stat(sourcePath);
18
+ if (stat.isDirectory()) return;
19
+ await fs.copy(sourcePath, targetPath);
20
+ } catch (error) {
21
+ logger.warn(`Failed to copy ${envFile}:`, error);
22
+ }
23
+ });
24
+ await Promise.all(copyPromises);
25
+ } catch (error) {
26
+ logger.warn('Failed to copy .env files:', error);
27
+ }
28
+ }
29
+ const build = async (api, options)=>{
30
+ if (options?.analyze) process.env.BUNDLE_ANALYZE = 'true';
31
+ const resolvedConfig = api.getNormalizedConfig();
32
+ const appContext = api.getAppContext();
33
+ const hooks = api.getHooks();
34
+ const combinedAlias = [].concat(resolvedConfig?.resolve?.alias ?? []).concat(resolvedConfig?.source?.alias ?? []);
35
+ await loadServerPlugins(api, appContext.appDirectory, appContext.metaName);
36
+ if (appContext.moduleType && 'module' === appContext.moduleType) {
37
+ const { registerModuleHooks } = await import("../esm/register-esm.mjs");
38
+ await registerModuleHooks({
39
+ appDir: appContext.appDirectory,
40
+ distDir: appContext.distDirectory,
41
+ alias: {}
42
+ });
43
+ }
44
+ await setupTsRuntime(appContext.appDirectory, appContext.distDirectory, combinedAlias);
45
+ const { apiOnly } = appContext;
46
+ if (apiOnly) {
47
+ await hooks.onBeforeBuild.call({
48
+ environments: {},
49
+ bundlerConfigs: void 0,
50
+ isFirstCompile: false,
51
+ isWatch: false
52
+ });
53
+ await generateRoutes(appContext);
54
+ await hooks.onAfterBuild.call({
55
+ environments: {},
56
+ stats: void 0,
57
+ isFirstCompile: false,
58
+ isWatch: false
59
+ });
60
+ return;
61
+ }
62
+ logger.info('Starting production build...');
63
+ if (!appContext.builder) throw new Error('Expect the Builder to have been initialized, But the appContext.builder received `undefined`');
64
+ await appContext.builder.onAfterBuild(async ()=>copyEnvFiles(appContext.appDirectory, appContext.distDirectory));
65
+ await appContext.builder.build({
66
+ watch: options?.watch
67
+ });
68
+ };
69
+ export { build };
@@ -0,0 +1,11 @@
1
+ import "node:module";
2
+ import { getServerPlugins } from "../utils/loadPlugins.mjs";
3
+ const deploy = async (api, options)=>{
4
+ const hooks = api.getHooks();
5
+ const { metaName } = api.getAppContext();
6
+ await getServerPlugins(api, metaName);
7
+ await hooks.onBeforeDeploy.call(options);
8
+ await hooks.deploy.call();
9
+ await hooks.onAfterDeploy.call(options);
10
+ };
11
+ export { deploy };
@@ -0,0 +1,83 @@
1
+ import "node:module";
2
+ import { createDevServer } from "@modern-js/server";
3
+ import { DEFAULT_DEV_HOST, SERVER_DIR, getMeta, logger } from "@modern-js/utils";
4
+ import { setServer } from "../utils/createServer.mjs";
5
+ import { loadServerPlugins } from "../utils/loadPlugins.mjs";
6
+ import { printInstructions } from "../utils/printInstructions.mjs";
7
+ import { setupTsRuntime } from "../utils/register.mjs";
8
+ import { generateRoutes } from "../utils/routes.mjs";
9
+ import * as __rspack_external_node_path_c5b9b54f from "node:path";
10
+ import * as __rspack_external__modern_js_prod_server_057184e2 from "@modern-js/prod-server";
11
+ const dev = async (api, options, devServerOptions)=>{
12
+ if (options.analyze) process.env.BUNDLE_ANALYZE = 'true';
13
+ const normalizedConfig = api.getNormalizedConfig();
14
+ const appContext = api.getAppContext();
15
+ const hooks = api.getHooks();
16
+ const combinedAlias = [].concat(normalizedConfig?.resolve?.alias ?? []).concat(normalizedConfig?.source?.alias ?? []);
17
+ if (appContext.moduleType && 'module' === appContext.moduleType) {
18
+ const { registerModuleHooks } = await import("../esm/register-esm.mjs");
19
+ await registerModuleHooks({
20
+ appDir: appContext.appDirectory,
21
+ distDir: appContext.distDirectory,
22
+ alias: {}
23
+ });
24
+ }
25
+ await setupTsRuntime(appContext.appDirectory, appContext.distDirectory, combinedAlias);
26
+ const { appDirectory, port, apiOnly, metaName, serverRoutes } = appContext;
27
+ const meta = getMeta(metaName);
28
+ const serverConfigPath = __rspack_external_node_path_c5b9b54f["default"].resolve(appDirectory, SERVER_DIR, `${meta}.server`);
29
+ await hooks.onBeforeDev.call();
30
+ if (!appContext.builder && !apiOnly) throw new Error('Expect the Builder to have been initialized, But the appContext.builder received `undefined`');
31
+ await generateRoutes(appContext);
32
+ const pluginInstances = await loadServerPlugins(api, appDirectory, metaName);
33
+ const serverOptions = {
34
+ metaName,
35
+ dev: {
36
+ https: normalizedConfig.dev.https,
37
+ setupMiddlewares: normalizedConfig.dev.setupMiddlewares
38
+ },
39
+ appContext: {
40
+ appDirectory,
41
+ internalDirectory: appContext.internalDirectory,
42
+ apiDirectory: appContext.apiDirectory,
43
+ lambdaDirectory: appContext.lambdaDirectory,
44
+ sharedDirectory: appContext.sharedDirectory,
45
+ bffRuntimeFramework: appContext.bffRuntimeFramework
46
+ },
47
+ serverConfigPath,
48
+ routes: serverRoutes,
49
+ pwd: appDirectory,
50
+ config: normalizedConfig,
51
+ plugins: pluginInstances,
52
+ ...devServerOptions
53
+ };
54
+ const host = normalizedConfig.dev?.host || DEFAULT_DEV_HOST;
55
+ if (apiOnly) {
56
+ const { server } = await createDevServer({
57
+ ...serverOptions,
58
+ runCompile: false
59
+ }, devServerOptions?.applyPlugins || __rspack_external__modern_js_prod_server_057184e2.applyPlugins);
60
+ server.listen({
61
+ port,
62
+ host
63
+ }, ()=>{
64
+ printInstructions(hooks, appContext, normalizedConfig);
65
+ });
66
+ setServer(server);
67
+ } else {
68
+ const { server, afterListen } = await createDevServer({
69
+ ...serverOptions,
70
+ builder: appContext.builder
71
+ }, devServerOptions?.applyPlugins || __rspack_external__modern_js_prod_server_057184e2.applyPlugins);
72
+ server.listen({
73
+ port,
74
+ host
75
+ }, async (err)=>{
76
+ if (err) logger.error('Occur error %s, when start dev server', err);
77
+ logger.debug('listen dev server done');
78
+ await afterListen();
79
+ });
80
+ setServer(server);
81
+ }
82
+ };
83
+ export { dev };
@@ -0,0 +1,44 @@
1
+ import "node:module";
2
+ import { i18n, localeKeys } from "../locale/index.mjs";
3
+ const devCommand = async (program, api)=>{
4
+ program.command('dev').alias('start').usage('[options]').description(i18n.t(localeKeys.command.dev.describe)).option('-c --config <config>', i18n.t(localeKeys.command.shared.config)).option('-e --entry [entry...]', i18n.t(localeKeys.command.dev.entry)).option('--analyze', i18n.t(localeKeys.command.shared.analyze)).option('--api-only', i18n.t(localeKeys.command.dev.apiOnly)).option('--web-only', i18n.t(localeKeys.command.dev.webOnly)).action(async (options)=>{
5
+ const { dev } = await import("./dev.mjs");
6
+ await dev(api, options);
7
+ });
8
+ };
9
+ const buildCommand = async (program, api)=>{
10
+ program.command('build').usage('[options]').description(i18n.t(localeKeys.command.build.describe)).option('-c --config <config>', i18n.t(localeKeys.command.shared.config)).option('--analyze', i18n.t(localeKeys.command.shared.analyze)).option('-w --watch', i18n.t(localeKeys.command.build.watch)).action(async (options)=>{
11
+ const { build } = await import("./build.mjs");
12
+ await build(api, options);
13
+ });
14
+ };
15
+ const serverCommand = (program, api)=>{
16
+ program.command('serve').usage('[options]').description(i18n.t(localeKeys.command.serve.describe)).option('--api-only', i18n.t(localeKeys.command.dev.apiOnly)).option('-c --config <config>', i18n.t(localeKeys.command.shared.config)).action(async ()=>{
17
+ const { serve } = await import("./serve.mjs");
18
+ await serve(api);
19
+ });
20
+ };
21
+ const deployCommand = (program, api)=>{
22
+ program.command('deploy').usage('[options]').option('-c --config <config>', i18n.t(localeKeys.command.shared.config)).option('-s --skip-build', i18n.t(localeKeys.command.shared.skipBuild)).description(i18n.t(localeKeys.command.deploy.describe)).action(async (options)=>{
23
+ if (!options.skipBuild) {
24
+ const { build } = await import("./build.mjs");
25
+ await build(api);
26
+ }
27
+ const { deploy } = await import("./deploy.mjs");
28
+ await deploy(api, options);
29
+ process.exit(0);
30
+ });
31
+ };
32
+ const inspectCommand = (program, api)=>{
33
+ program.command('inspect').description('inspect the internal configs').option("--env <env>", i18n.t(localeKeys.command.inspect.env), 'development').option('--output <output>', i18n.t(localeKeys.command.inspect.output), './').option('--verbose', i18n.t(localeKeys.command.inspect.verbose)).option('-c --config <config>', i18n.t(localeKeys.command.shared.config)).action(async (options)=>{
34
+ const { inspect } = await import("./inspect.mjs");
35
+ inspect(api, options);
36
+ });
37
+ };
38
+ const infoCommand = (program, api)=>{
39
+ program.command('info').usage('[options]').description(i18n.t(localeKeys.command.info.describe)).option('-c --config <config>', i18n.t(localeKeys.command.shared.config)).option('--json', 'output as JSON format for machine reading').action(async (options)=>{
40
+ const { info } = await import("./info.mjs");
41
+ await info(api, options);
42
+ });
43
+ };
44
+ export { buildCommand, deployCommand, devCommand, infoCommand, inspectCommand, serverCommand };