@modern-js/app-tools 2.58.2 → 2.59.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (269) hide show
  1. package/dist/cjs/builder/builder-rspack/adapterCopy.js +1 -1
  2. package/dist/cjs/builder/generator/getBuilderEnvironments.js +1 -1
  3. package/dist/cjs/builder/generator/index.js +2 -3
  4. package/dist/cjs/builder/shared/builderPlugins/adapterSSR.js +8 -13
  5. package/dist/cjs/builder/shared/builderPlugins/index.js +1 -3
  6. package/dist/cjs/builder/shared/bundlerPlugins/RouterPlugin.js +1 -1
  7. package/dist/cjs/commands/build.js +2 -2
  8. package/dist/cjs/commands/dev.js +6 -5
  9. package/dist/cjs/commands/index.js +1 -1
  10. package/dist/cjs/commands/serve.js +4 -3
  11. package/dist/cjs/config/legacy/index.js +3 -3
  12. package/dist/cjs/esm/register-esm.mjs +2 -3
  13. package/dist/cjs/esm/utils.mjs +2 -2
  14. package/dist/cjs/index.js +17 -10
  15. package/dist/cjs/locale/index.js +1 -1
  16. package/dist/cjs/plugins/analyze/getFileSystemEntry.js +50 -44
  17. package/dist/cjs/plugins/analyze/getServerRoutes.js +2 -2
  18. package/dist/cjs/plugins/analyze/index.js +6 -6
  19. package/dist/cjs/plugins/analyze/utils.js +1 -1
  20. package/dist/cjs/plugins/deploy/dependencies/index.js +1 -1
  21. package/dist/cjs/plugins/deploy/dependencies/utils.js +2 -2
  22. package/dist/cjs/plugins/deploy/index.js +2 -2
  23. package/dist/cjs/plugins/deploy/platforms/netlify.js +1 -1
  24. package/dist/cjs/plugins/deploy/platforms/node.js +1 -1
  25. package/dist/cjs/plugins/deploy/platforms/vercel.js +1 -1
  26. package/dist/cjs/plugins/serverBuild.js +2 -2
  27. package/dist/cjs/utils/createServer.js +1 -1
  28. package/dist/esm/builder/builder-rspack/adapterCopy.js +166 -0
  29. package/dist/esm/builder/builder-rspack/index.js +34 -0
  30. package/dist/esm/builder/builder-webpack/adapterModern.js +29 -0
  31. package/dist/esm/builder/builder-webpack/createCopyPattern.js +43 -0
  32. package/dist/esm/builder/builder-webpack/index.js +52 -0
  33. package/dist/esm/builder/generator/createBuilderProviderConfig.js +37 -0
  34. package/dist/esm/builder/generator/getBuilderEnvironments.js +81 -0
  35. package/dist/esm/builder/generator/index.js +93 -0
  36. package/dist/esm/builder/index.js +45 -0
  37. package/dist/esm/builder/shared/builderPlugins/adapterBasic.js +85 -0
  38. package/dist/esm/builder/shared/builderPlugins/adapterHtml.js +126 -0
  39. package/dist/esm/builder/shared/builderPlugins/adapterSSR.js +261 -0
  40. package/dist/esm/builder/shared/builderPlugins/index.js +3 -0
  41. package/dist/esm/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +51 -0
  42. package/dist/esm/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +37 -0
  43. package/dist/esm/builder/shared/bundlerPlugins/RouterPlugin.js +314 -0
  44. package/dist/esm/builder/shared/bundlerPlugins/index.js +3 -0
  45. package/dist/esm/builder/shared/createCopyInfo.js +14 -0
  46. package/dist/esm/builder/shared/index.js +3 -0
  47. package/dist/esm/builder/shared/loaders/serverModuleLoader.js +7 -0
  48. package/dist/esm/builder/shared/types.js +0 -0
  49. package/dist/esm/commands/build.js +140 -0
  50. package/dist/esm/commands/deploy.js +48 -0
  51. package/dist/esm/commands/dev.js +193 -0
  52. package/dist/esm/commands/index.js +411 -0
  53. package/dist/esm/commands/inspect.js +28 -0
  54. package/dist/esm/commands/serve.js +94 -0
  55. package/dist/esm/config/default.js +190 -0
  56. package/dist/esm/config/index.js +3 -0
  57. package/dist/esm/config/initialize/index.js +9 -0
  58. package/dist/esm/config/initialize/inits.js +89 -0
  59. package/dist/esm/config/legacy/createHtmlConfig.js +21 -0
  60. package/dist/esm/config/legacy/createOutputConfig.js +45 -0
  61. package/dist/esm/config/legacy/createSourceConfig.js +46 -0
  62. package/dist/esm/config/legacy/createToolsConfig.js +28 -0
  63. package/dist/esm/config/legacy/index.js +43 -0
  64. package/dist/esm/defineConfig.js +16 -0
  65. package/dist/esm/esm/esbuild-loader.mjs +20 -0
  66. package/dist/esm/esm/register-esm.mjs +66 -0
  67. package/dist/esm/esm/ts-node-loader.mjs +21 -0
  68. package/dist/esm/esm/utils.mjs +43 -0
  69. package/dist/esm/exports/server.js +4 -0
  70. package/dist/esm/hooks.js +34 -0
  71. package/dist/esm/index.js +246 -0
  72. package/dist/esm/locale/en.js +43 -0
  73. package/dist/esm/locale/index.js +12 -0
  74. package/dist/esm/locale/zh.js +43 -0
  75. package/dist/esm/plugins/analyze/constants.js +14 -0
  76. package/dist/esm/plugins/analyze/getBundleEntry.js +102 -0
  77. package/dist/esm/plugins/analyze/getFileSystemEntry.js +266 -0
  78. package/dist/esm/plugins/analyze/getHtmlTemplate.js +178 -0
  79. package/dist/esm/plugins/analyze/getServerRoutes.js +132 -0
  80. package/dist/esm/plugins/analyze/index.js +380 -0
  81. package/dist/esm/plugins/analyze/isDefaultExportFunction.js +49 -0
  82. package/dist/esm/plugins/analyze/templates.js +6 -0
  83. package/dist/esm/plugins/analyze/utils.js +101 -0
  84. package/dist/esm/plugins/deploy/dependencies/index.js +615 -0
  85. package/dist/esm/plugins/deploy/dependencies/utils.js +421 -0
  86. package/dist/esm/plugins/deploy/exports.js +4 -0
  87. package/dist/esm/plugins/deploy/index.js +135 -0
  88. package/dist/esm/plugins/deploy/platforms/netlify-entry.js +11 -0
  89. package/dist/esm/plugins/deploy/platforms/netlify-entry.mjs +1 -0
  90. package/dist/esm/plugins/deploy/platforms/netlify-handler.js +205 -0
  91. package/dist/esm/plugins/deploy/platforms/netlify.js +327 -0
  92. package/dist/esm/plugins/deploy/platforms/node-entry.js +108 -0
  93. package/dist/esm/plugins/deploy/platforms/node.js +161 -0
  94. package/dist/esm/plugins/deploy/platforms/platform.js +0 -0
  95. package/dist/esm/plugins/deploy/platforms/vercel-entry.js +11 -0
  96. package/dist/esm/plugins/deploy/platforms/vercel-entry.mjs +3 -0
  97. package/dist/esm/plugins/deploy/platforms/vercel-handler.js +206 -0
  98. package/dist/esm/plugins/deploy/platforms/vercel.js +261 -0
  99. package/dist/esm/plugins/deploy/utils.js +47 -0
  100. package/dist/esm/plugins/initialize/index.js +119 -0
  101. package/dist/esm/plugins/serverBuild.js +87 -0
  102. package/dist/esm/types/config/deploy.js +0 -0
  103. package/dist/esm/types/config/dev.js +0 -0
  104. package/dist/esm/types/config/experiments.js +0 -0
  105. package/dist/esm/types/config/html.js +0 -0
  106. package/dist/esm/types/config/index.js +1 -0
  107. package/dist/esm/types/config/output.js +0 -0
  108. package/dist/esm/types/config/performance.js +0 -0
  109. package/dist/esm/types/config/security.js +0 -0
  110. package/dist/esm/types/config/source.js +0 -0
  111. package/dist/esm/types/config/testing.js +0 -0
  112. package/dist/esm/types/config/tools.js +0 -0
  113. package/dist/esm/types/hooks.js +0 -0
  114. package/dist/esm/types/index.js +3 -0
  115. package/dist/esm/types/legacyConfig/deploy.js +0 -0
  116. package/dist/esm/types/legacyConfig/dev.js +0 -0
  117. package/dist/esm/types/legacyConfig/index.js +0 -0
  118. package/dist/esm/types/legacyConfig/output.js +0 -0
  119. package/dist/esm/types/legacyConfig/source.js +0 -0
  120. package/dist/esm/types/legacyConfig/testing.js +0 -0
  121. package/dist/esm/types/legacyConfig/tools.js +0 -0
  122. package/dist/esm/types/utils.js +0 -0
  123. package/dist/esm/utils/config.js +122 -0
  124. package/dist/esm/utils/createServer.js +58 -0
  125. package/dist/esm/utils/env.js +16 -0
  126. package/dist/esm/utils/generateWatchFiles.js +71 -0
  127. package/dist/esm/utils/getSelectedEntries.js +67 -0
  128. package/dist/esm/utils/loadPlugins.js +74 -0
  129. package/dist/esm/utils/printInstructions.js +32 -0
  130. package/dist/esm/utils/register.js +188 -0
  131. package/dist/esm/utils/restart.js +67 -0
  132. package/dist/esm/utils/routes.js +42 -0
  133. package/dist/esm/utils/types.js +0 -0
  134. package/dist/esm-node/builder/builder-rspack/adapterCopy.js +67 -0
  135. package/dist/esm-node/builder/builder-rspack/index.js +12 -0
  136. package/dist/esm-node/builder/builder-webpack/adapterModern.js +26 -0
  137. package/dist/esm-node/builder/builder-webpack/createCopyPattern.js +41 -0
  138. package/dist/esm-node/builder/builder-webpack/index.js +20 -0
  139. package/dist/esm-node/builder/generator/createBuilderProviderConfig.js +44 -0
  140. package/dist/esm-node/builder/generator/getBuilderEnvironments.js +60 -0
  141. package/dist/esm-node/builder/generator/index.js +36 -0
  142. package/dist/esm-node/builder/index.js +11 -0
  143. package/dist/esm-node/builder/shared/builderPlugins/adapterBasic.js +48 -0
  144. package/dist/esm-node/builder/shared/builderPlugins/adapterHtml.js +60 -0
  145. package/dist/esm-node/builder/shared/builderPlugins/adapterSSR.js +151 -0
  146. package/dist/esm-node/builder/shared/builderPlugins/index.js +3 -0
  147. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +30 -0
  148. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +31 -0
  149. package/dist/esm-node/builder/shared/bundlerPlugins/RouterPlugin.js +228 -0
  150. package/dist/esm-node/builder/shared/bundlerPlugins/index.js +3 -0
  151. package/dist/esm-node/builder/shared/createCopyInfo.js +14 -0
  152. package/dist/esm-node/builder/shared/index.js +3 -0
  153. package/dist/esm-node/builder/shared/loaders/serverModuleLoader.js +7 -0
  154. package/dist/esm-node/builder/shared/types.js +0 -0
  155. package/dist/esm-node/commands/build.js +64 -0
  156. package/dist/esm-node/commands/deploy.js +12 -0
  157. package/dist/esm-node/commands/dev.js +105 -0
  158. package/dist/esm-node/commands/index.js +92 -0
  159. package/dist/esm-node/commands/inspect.js +15 -0
  160. package/dist/esm-node/commands/serve.js +52 -0
  161. package/dist/esm-node/config/default.js +197 -0
  162. package/dist/esm-node/config/index.js +3 -0
  163. package/dist/esm-node/config/initialize/index.js +9 -0
  164. package/dist/esm-node/config/initialize/inits.js +79 -0
  165. package/dist/esm-node/config/legacy/createHtmlConfig.js +21 -0
  166. package/dist/esm-node/config/legacy/createOutputConfig.js +45 -0
  167. package/dist/esm-node/config/legacy/createSourceConfig.js +29 -0
  168. package/dist/esm-node/config/legacy/createToolsConfig.js +28 -0
  169. package/dist/esm-node/config/legacy/index.js +43 -0
  170. package/dist/esm-node/defineConfig.js +13 -0
  171. package/dist/esm-node/esm/esbuild-loader.mjs +20 -0
  172. package/dist/esm-node/esm/register-esm.mjs +66 -0
  173. package/dist/esm-node/esm/ts-node-loader.mjs +21 -0
  174. package/dist/esm-node/esm/utils.mjs +43 -0
  175. package/dist/esm-node/exports/server.js +4 -0
  176. package/dist/esm-node/hooks.js +34 -0
  177. package/dist/esm-node/index.js +131 -0
  178. package/dist/esm-node/locale/en.js +43 -0
  179. package/dist/esm-node/locale/index.js +12 -0
  180. package/dist/esm-node/locale/zh.js +43 -0
  181. package/dist/esm-node/plugins/analyze/constants.js +14 -0
  182. package/dist/esm-node/plugins/analyze/getBundleEntry.js +61 -0
  183. package/dist/esm-node/plugins/analyze/getFileSystemEntry.js +106 -0
  184. package/dist/esm-node/plugins/analyze/getHtmlTemplate.js +74 -0
  185. package/dist/esm-node/plugins/analyze/getServerRoutes.js +132 -0
  186. package/dist/esm-node/plugins/analyze/index.js +166 -0
  187. package/dist/esm-node/plugins/analyze/isDefaultExportFunction.js +47 -0
  188. package/dist/esm-node/plugins/analyze/templates.js +24 -0
  189. package/dist/esm-node/plugins/analyze/utils.js +68 -0
  190. package/dist/esm-node/plugins/deploy/dependencies/index.js +202 -0
  191. package/dist/esm-node/plugins/deploy/dependencies/utils.js +137 -0
  192. package/dist/esm-node/plugins/deploy/exports.js +4 -0
  193. package/dist/esm-node/plugins/deploy/index.js +44 -0
  194. package/dist/esm-node/plugins/deploy/platforms/netlify-entry.js +11 -0
  195. package/dist/esm-node/plugins/deploy/platforms/netlify-entry.mjs +1 -0
  196. package/dist/esm-node/plugins/deploy/platforms/netlify-handler.js +71 -0
  197. package/dist/esm-node/plugins/deploy/platforms/netlify.js +117 -0
  198. package/dist/esm-node/plugins/deploy/platforms/node-entry.js +44 -0
  199. package/dist/esm-node/plugins/deploy/platforms/node.js +72 -0
  200. package/dist/esm-node/plugins/deploy/platforms/platform.js +0 -0
  201. package/dist/esm-node/plugins/deploy/platforms/vercel-entry.js +11 -0
  202. package/dist/esm-node/plugins/deploy/platforms/vercel-entry.mjs +3 -0
  203. package/dist/esm-node/plugins/deploy/platforms/vercel-handler.js +72 -0
  204. package/dist/esm-node/plugins/deploy/platforms/vercel.js +129 -0
  205. package/dist/esm-node/plugins/deploy/utils.js +44 -0
  206. package/dist/esm-node/plugins/initialize/index.js +84 -0
  207. package/dist/esm-node/plugins/serverBuild.js +58 -0
  208. package/dist/esm-node/types/config/deploy.js +0 -0
  209. package/dist/esm-node/types/config/dev.js +0 -0
  210. package/dist/esm-node/types/config/experiments.js +0 -0
  211. package/dist/esm-node/types/config/html.js +0 -0
  212. package/dist/esm-node/types/config/index.js +1 -0
  213. package/dist/esm-node/types/config/output.js +0 -0
  214. package/dist/esm-node/types/config/performance.js +0 -0
  215. package/dist/esm-node/types/config/security.js +0 -0
  216. package/dist/esm-node/types/config/source.js +0 -0
  217. package/dist/esm-node/types/config/testing.js +0 -0
  218. package/dist/esm-node/types/config/tools.js +0 -0
  219. package/dist/esm-node/types/hooks.js +0 -0
  220. package/dist/esm-node/types/index.js +3 -0
  221. package/dist/esm-node/types/legacyConfig/deploy.js +0 -0
  222. package/dist/esm-node/types/legacyConfig/dev.js +0 -0
  223. package/dist/esm-node/types/legacyConfig/index.js +0 -0
  224. package/dist/esm-node/types/legacyConfig/output.js +0 -0
  225. package/dist/esm-node/types/legacyConfig/source.js +0 -0
  226. package/dist/esm-node/types/legacyConfig/testing.js +0 -0
  227. package/dist/esm-node/types/legacyConfig/tools.js +0 -0
  228. package/dist/esm-node/types/utils.js +0 -0
  229. package/dist/esm-node/utils/config.js +49 -0
  230. package/dist/esm-node/utils/createServer.js +26 -0
  231. package/dist/esm-node/utils/env.js +16 -0
  232. package/dist/esm-node/utils/generateWatchFiles.js +30 -0
  233. package/dist/esm-node/utils/getSelectedEntries.js +34 -0
  234. package/dist/esm-node/utils/loadPlugins.js +22 -0
  235. package/dist/esm-node/utils/printInstructions.js +11 -0
  236. package/dist/esm-node/utils/register.js +96 -0
  237. package/dist/esm-node/utils/restart.js +22 -0
  238. package/dist/esm-node/utils/routes.js +21 -0
  239. package/dist/esm-node/utils/types.js +0 -0
  240. package/dist/types/builder/generator/createBuilderProviderConfig.d.ts +1 -1
  241. package/dist/types/builder/generator/index.d.ts +2 -2
  242. package/dist/types/builder/shared/builderPlugins/index.d.ts +0 -1
  243. package/dist/types/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.d.ts +1 -1
  244. package/dist/types/builder/shared/bundlerPlugins/HtmlBottomTemplate.d.ts +1 -1
  245. package/dist/types/builder/shared/bundlerPlugins/RouterPlugin.d.ts +1 -1
  246. package/dist/types/builder/shared/loaders/serverModuleLoader.d.ts +1 -1
  247. package/dist/types/builder/shared/types.d.ts +1 -1
  248. package/dist/types/commands/build.d.ts +1 -1
  249. package/dist/types/commands/dev.d.ts +1 -1
  250. package/dist/types/commands/inspect.d.ts +1 -1
  251. package/dist/types/config/default.d.ts +1 -1
  252. package/dist/types/index.d.ts +1 -1
  253. package/dist/types/plugins/analyze/getBundleEntry.d.ts +1 -1
  254. package/dist/types/plugins/analyze/getFileSystemEntry.d.ts +1 -1
  255. package/dist/types/plugins/deploy/dependencies/index.d.ts +1 -1
  256. package/dist/types/plugins/deploy/dependencies/utils.d.ts +1 -1
  257. package/dist/types/plugins/initialize/index.d.ts +1 -1
  258. package/dist/types/plugins/serverBuild.d.ts +1 -1
  259. package/dist/types/types/config/index.d.ts +8 -8
  260. package/dist/types/types/config/output.d.ts +1 -1
  261. package/dist/types/types/config/tools.d.ts +3 -3
  262. package/dist/types/types/hooks.d.ts +2 -2
  263. package/dist/types/types/index.d.ts +2 -2
  264. package/dist/types/types/legacyConfig/index.d.ts +3 -3
  265. package/dist/types/types/legacyConfig/tools.d.ts +1 -1
  266. package/dist/types/utils/printInstructions.d.ts +1 -1
  267. package/package.json +20 -20
  268. package/dist/cjs/builder/shared/builderPlugins/adapterWorker.js +0 -51
  269. package/dist/types/builder/shared/builderPlugins/adapterWorker.d.ts +0 -2
@@ -0,0 +1,205 @@
1
+ var __getOwnPropNames = Object.getOwnPropertyNames;
2
+ var __commonJS = (cb, mod) => function __require() {
3
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
4
+ };
5
+ var require_netlify_handler = __commonJS({
6
+ "src/plugins/deploy/platforms/netlify-handler.cjs"(exports, module) {
7
+ var _async_to_generator = require("@swc/helpers/_/_async_to_generator");
8
+ var _object_spread = require("@swc/helpers/_/_object_spread");
9
+ var _ts_generator = require("@swc/helpers/_/_ts_generator");
10
+ var fs = require("node:fs/promises");
11
+ var path = require("node:path");
12
+ var createNetlifyFunction = require("@modern-js/prod-server/netlify").createNetlifyFunction;
13
+ p_genPluginImportsCode;
14
+ if (!process.env.NODE_ENV) {
15
+ process.env.NODE_ENV = "production";
16
+ }
17
+ var requestHandler = null;
18
+ var handlerCreationPromise = null;
19
+ function loadRoutes(routeFilepath) {
20
+ return _loadRoutes.apply(this, arguments);
21
+ }
22
+ function _loadRoutes() {
23
+ _loadRoutes = _async_to_generator._(function(routeFilepath) {
24
+ var content, routeSpec, error;
25
+ return _ts_generator._(this, function(_state) {
26
+ switch (_state.label) {
27
+ case 0:
28
+ _state.trys.push([
29
+ 0,
30
+ 3,
31
+ ,
32
+ 4
33
+ ]);
34
+ return [
35
+ 4,
36
+ fs.access(routeFilepath)
37
+ ];
38
+ case 1:
39
+ _state.sent();
40
+ return [
41
+ 4,
42
+ fs.readFile(routeFilepath, "utf-8")
43
+ ];
44
+ case 2:
45
+ content = _state.sent();
46
+ routeSpec = JSON.parse(content);
47
+ return [
48
+ 2,
49
+ routeSpec.routes || []
50
+ ];
51
+ case 3:
52
+ error = _state.sent();
53
+ console.warn("route.json not found or invalid, continuing with empty routes.");
54
+ return [
55
+ 2,
56
+ []
57
+ ];
58
+ case 4:
59
+ return [
60
+ 2
61
+ ];
62
+ }
63
+ });
64
+ });
65
+ return _loadRoutes.apply(this, arguments);
66
+ }
67
+ function initServer() {
68
+ return _initServer.apply(this, arguments);
69
+ }
70
+ function _initServer() {
71
+ _initServer = _async_to_generator._(function() {
72
+ var routeFilepath, routes, dynamicProdOptions, prodServerOptions, requestHandler2;
73
+ return _ts_generator._(this, function(_state) {
74
+ switch (_state.label) {
75
+ case 0:
76
+ routeFilepath = path.join(__dirname, p_ROUTE_SPEC_FILE);
77
+ return [
78
+ 4,
79
+ loadRoutes(routeFilepath)
80
+ ];
81
+ case 1:
82
+ routes = _state.sent();
83
+ dynamicProdOptions = p_dynamicProdOptions;
84
+ prodServerOptions = _object_spread._({
85
+ pwd: __dirname,
86
+ routes,
87
+ disableCustomHook: true,
88
+ appContext: {
89
+ sharedDirectory: p_sharedDirectory,
90
+ apiDirectory: p_apiDirectory,
91
+ lambdaDirectory: p_lambdaDirectory
92
+ },
93
+ plugins: p_plugins
94
+ }, dynamicProdOptions);
95
+ return [
96
+ 4,
97
+ createNetlifyFunction(prodServerOptions)
98
+ ];
99
+ case 2:
100
+ requestHandler2 = _state.sent();
101
+ return [
102
+ 2,
103
+ requestHandler2
104
+ ];
105
+ }
106
+ });
107
+ });
108
+ return _initServer.apply(this, arguments);
109
+ }
110
+ function createHandler() {
111
+ return _createHandler.apply(this, arguments);
112
+ }
113
+ function _createHandler() {
114
+ _createHandler = _async_to_generator._(function() {
115
+ return _ts_generator._(this, function(_state) {
116
+ switch (_state.label) {
117
+ case 0:
118
+ if (!handlerCreationPromise) {
119
+ handlerCreationPromise = _async_to_generator._(function() {
120
+ var error;
121
+ return _ts_generator._(this, function(_state2) {
122
+ switch (_state2.label) {
123
+ case 0:
124
+ _state2.trys.push([
125
+ 0,
126
+ 2,
127
+ ,
128
+ 3
129
+ ]);
130
+ return [
131
+ 4,
132
+ initServer()
133
+ ];
134
+ case 1:
135
+ requestHandler = _state2.sent();
136
+ return [
137
+ 3,
138
+ 3
139
+ ];
140
+ case 2:
141
+ error = _state2.sent();
142
+ console.error("Error creating server:", error);
143
+ process.exit(1);
144
+ return [
145
+ 3,
146
+ 3
147
+ ];
148
+ case 3:
149
+ return [
150
+ 2
151
+ ];
152
+ }
153
+ });
154
+ })();
155
+ }
156
+ return [
157
+ 4,
158
+ handlerCreationPromise
159
+ ];
160
+ case 1:
161
+ _state.sent();
162
+ return [
163
+ 2,
164
+ requestHandler
165
+ ];
166
+ }
167
+ });
168
+ });
169
+ return _createHandler.apply(this, arguments);
170
+ }
171
+ createHandler();
172
+ module.exports = {
173
+ handler: function() {
174
+ var _ref = _async_to_generator._(function(request, context) {
175
+ return _ts_generator._(this, function(_state) {
176
+ switch (_state.label) {
177
+ case 0:
178
+ if (!!requestHandler)
179
+ return [
180
+ 3,
181
+ 2
182
+ ];
183
+ return [
184
+ 4,
185
+ createHandler()
186
+ ];
187
+ case 1:
188
+ _state.sent();
189
+ _state.label = 2;
190
+ case 2:
191
+ return [
192
+ 2,
193
+ requestHandler(request, context)
194
+ ];
195
+ }
196
+ });
197
+ });
198
+ return function(request, context) {
199
+ return _ref.apply(this, arguments);
200
+ };
201
+ }()
202
+ };
203
+ }
204
+ });
205
+ export default require_netlify_handler();
@@ -0,0 +1,327 @@
1
+ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
+ import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
+ import path from "node:path";
4
+ import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, fs as fse } from "@modern-js/utils";
5
+ import { isMainEntry } from "../../../utils/routes";
6
+ import { handleDependencies } from "../dependencies";
7
+ import { genPluginImportsCode, serverAppContenxtTemplate } from "../utils";
8
+ function cleanDistDirectory(dir) {
9
+ return _cleanDistDirectory.apply(this, arguments);
10
+ }
11
+ function _cleanDistDirectory() {
12
+ _cleanDistDirectory = _async_to_generator(function(dir) {
13
+ var items, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, item, fullPath, err, error;
14
+ return _ts_generator(this, function(_state) {
15
+ switch (_state.label) {
16
+ case 0:
17
+ _state.trys.push([
18
+ 0,
19
+ 10,
20
+ ,
21
+ 11
22
+ ]);
23
+ return [
24
+ 4,
25
+ fse.readdir(dir)
26
+ ];
27
+ case 1:
28
+ items = _state.sent();
29
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
30
+ _state.label = 2;
31
+ case 2:
32
+ _state.trys.push([
33
+ 2,
34
+ 7,
35
+ 8,
36
+ 9
37
+ ]);
38
+ _iterator = items[Symbol.iterator]();
39
+ _state.label = 3;
40
+ case 3:
41
+ if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done))
42
+ return [
43
+ 3,
44
+ 6
45
+ ];
46
+ item = _step.value;
47
+ fullPath = path.join(dir, item);
48
+ if (!(item !== "static" && item !== "_redirects" && item !== "html"))
49
+ return [
50
+ 3,
51
+ 5
52
+ ];
53
+ return [
54
+ 4,
55
+ fse.remove(fullPath)
56
+ ];
57
+ case 4:
58
+ _state.sent();
59
+ _state.label = 5;
60
+ case 5:
61
+ _iteratorNormalCompletion = true;
62
+ return [
63
+ 3,
64
+ 3
65
+ ];
66
+ case 6:
67
+ return [
68
+ 3,
69
+ 9
70
+ ];
71
+ case 7:
72
+ err = _state.sent();
73
+ _didIteratorError = true;
74
+ _iteratorError = err;
75
+ return [
76
+ 3,
77
+ 9
78
+ ];
79
+ case 8:
80
+ try {
81
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
82
+ _iterator.return();
83
+ }
84
+ } finally {
85
+ if (_didIteratorError) {
86
+ throw _iteratorError;
87
+ }
88
+ }
89
+ return [
90
+ 7
91
+ ];
92
+ case 9:
93
+ return [
94
+ 3,
95
+ 11
96
+ ];
97
+ case 10:
98
+ error = _state.sent();
99
+ console.error("Error cleaning directory:", error);
100
+ return [
101
+ 3,
102
+ 11
103
+ ];
104
+ case 11:
105
+ return [
106
+ 2
107
+ ];
108
+ }
109
+ });
110
+ });
111
+ return _cleanDistDirectory.apply(this, arguments);
112
+ }
113
+ var createNetlifyPreset = function(appContext, modernConfig, needModernServer) {
114
+ var appDirectory = appContext.appDirectory, distDirectory = appContext.distDirectory, entrypoints = appContext.entrypoints, serverPlugins = appContext.serverPlugins, moduleType = appContext.moduleType;
115
+ var isEsmProject = moduleType === "module";
116
+ var plugins = serverPlugins.map(function(plugin) {
117
+ return plugin.name;
118
+ });
119
+ var netlifyOutput = path.join(appDirectory, ".netlify");
120
+ var funcsDirectory = path.join(netlifyOutput, "functions");
121
+ var entryFilePath = path.join(funcsDirectory, "index.js");
122
+ var handlerFilePath = path.join(funcsDirectory, "netlify-handler.cjs");
123
+ return {
124
+ prepare: function prepare() {
125
+ return _async_to_generator(function() {
126
+ return _ts_generator(this, function(_state) {
127
+ switch (_state.label) {
128
+ case 0:
129
+ return [
130
+ 4,
131
+ fse.remove(netlifyOutput)
132
+ ];
133
+ case 1:
134
+ _state.sent();
135
+ return [
136
+ 2
137
+ ];
138
+ }
139
+ });
140
+ })();
141
+ },
142
+ writeOutput: function writeOutput() {
143
+ return _async_to_generator(function() {
144
+ var routes, mainEntryName, redirectContent, redirectFilePath;
145
+ return _ts_generator(this, function(_state) {
146
+ switch (_state.label) {
147
+ case 0:
148
+ routes = [];
149
+ mainEntryName = modernConfig.source.mainEntryName;
150
+ if (!needModernServer) {
151
+ entrypoints.forEach(function(entry) {
152
+ var isMain = isMainEntry(entry.entryName, mainEntryName);
153
+ routes.push({
154
+ src: "/".concat(isMain ? "" : "".concat(entry.entryName, "/"), "*"),
155
+ dest: "/html/".concat(entry.entryName, "/index.html"),
156
+ status: 200
157
+ });
158
+ });
159
+ } else {
160
+ routes.push({
161
+ src: "/*",
162
+ dest: "/.netlify/functions/index",
163
+ status: 200
164
+ });
165
+ }
166
+ redirectContent = routes.map(function(route) {
167
+ return "".concat(route.src, " ").concat(route.dest, " ").concat(route.status);
168
+ }).join("\n");
169
+ if (!needModernServer)
170
+ return [
171
+ 3,
172
+ 3
173
+ ];
174
+ return [
175
+ 4,
176
+ fse.ensureDir(funcsDirectory)
177
+ ];
178
+ case 1:
179
+ _state.sent();
180
+ return [
181
+ 4,
182
+ fse.copy(distDirectory, funcsDirectory, {
183
+ filter: function(src) {
184
+ var distStaticDirectory = path.join(distDirectory, "static");
185
+ return !src.includes(distStaticDirectory);
186
+ }
187
+ })
188
+ ];
189
+ case 2:
190
+ _state.sent();
191
+ _state.label = 3;
192
+ case 3:
193
+ redirectFilePath = path.join(distDirectory, "_redirects");
194
+ return [
195
+ 4,
196
+ fse.writeFile(redirectFilePath, redirectContent)
197
+ ];
198
+ case 4:
199
+ _state.sent();
200
+ return [
201
+ 2
202
+ ];
203
+ }
204
+ });
205
+ })();
206
+ },
207
+ genEntry: function genEntry() {
208
+ return _async_to_generator(function() {
209
+ var _modernConfig_bff, serverConfig, pluginImportCode, dynamicProdOptions, pluginsCode, handlerCode, serverAppContext;
210
+ return _ts_generator(this, function(_state) {
211
+ switch (_state.label) {
212
+ case 0:
213
+ if (!needModernServer) {
214
+ return [
215
+ 2
216
+ ];
217
+ }
218
+ serverConfig = {
219
+ bff: {
220
+ prefix: modernConfig === null || modernConfig === void 0 ? void 0 : (_modernConfig_bff = modernConfig.bff) === null || _modernConfig_bff === void 0 ? void 0 : _modernConfig_bff.prefix
221
+ },
222
+ output: {
223
+ distPath: {
224
+ root: "."
225
+ }
226
+ }
227
+ };
228
+ pluginImportCode = genPluginImportsCode(plugins || []);
229
+ dynamicProdOptions = {
230
+ config: serverConfig,
231
+ serverConfigFile: DEFAULT_SERVER_CONFIG
232
+ };
233
+ pluginsCode = "[".concat(plugins.map(function(plugin, index) {
234
+ return "plugin_".concat(index, "()");
235
+ }).join(","), "]");
236
+ return [
237
+ 4,
238
+ fse.readFile(path.join(__dirname, "./netlify-handler.js"))
239
+ ];
240
+ case 1:
241
+ handlerCode = _state.sent().toString();
242
+ serverAppContext = serverAppContenxtTemplate(appContext);
243
+ handlerCode = handlerCode.replace("p_genPluginImportsCode", pluginImportCode).replace("p_ROUTE_SPEC_FILE", '"'.concat(ROUTE_SPEC_FILE, '"')).replace("p_dynamicProdOptions", JSON.stringify(dynamicProdOptions)).replace("p_plugins", pluginsCode).replace("p_sharedDirectory", serverAppContext.sharedDirectory).replace("p_apiDirectory", serverAppContext.apiDirectory).replace("p_lambdaDirectory", serverAppContext.lambdaDirectory);
244
+ return [
245
+ 4,
246
+ fse.writeFile(handlerFilePath, handlerCode)
247
+ ];
248
+ case 2:
249
+ _state.sent();
250
+ if (!isEsmProject)
251
+ return [
252
+ 3,
253
+ 4
254
+ ];
255
+ return [
256
+ 4,
257
+ fse.copy(path.join(__dirname, "./netlify-entry.mjs"), entryFilePath)
258
+ ];
259
+ case 3:
260
+ _state.sent();
261
+ return [
262
+ 3,
263
+ 6
264
+ ];
265
+ case 4:
266
+ return [
267
+ 4,
268
+ fse.copy(path.join(__dirname, "./netlify-entry.js"), entryFilePath)
269
+ ];
270
+ case 5:
271
+ _state.sent();
272
+ _state.label = 6;
273
+ case 6:
274
+ return [
275
+ 2
276
+ ];
277
+ }
278
+ });
279
+ })();
280
+ },
281
+ end: function end() {
282
+ return _async_to_generator(function() {
283
+ return _ts_generator(this, function(_state) {
284
+ switch (_state.label) {
285
+ case 0:
286
+ if (!(process.env.NODE_ENV !== "development"))
287
+ return [
288
+ 3,
289
+ 2
290
+ ];
291
+ return [
292
+ 4,
293
+ cleanDistDirectory(distDirectory)
294
+ ];
295
+ case 1:
296
+ _state.sent();
297
+ _state.label = 2;
298
+ case 2:
299
+ if (!needModernServer) {
300
+ return [
301
+ 2
302
+ ];
303
+ }
304
+ return [
305
+ 4,
306
+ handleDependencies({
307
+ appDir: appDirectory,
308
+ serverRootDir: funcsDirectory,
309
+ includeEntries: [
310
+ require.resolve("@modern-js/prod-server")
311
+ ]
312
+ })
313
+ ];
314
+ case 3:
315
+ _state.sent();
316
+ return [
317
+ 2
318
+ ];
319
+ }
320
+ });
321
+ })();
322
+ }
323
+ };
324
+ };
325
+ export {
326
+ createNetlifyPreset
327
+ };
@@ -0,0 +1,108 @@
1
+ var _async_to_generator = require("@swc/helpers/_/_async_to_generator");
2
+ var _object_spread = require("@swc/helpers/_/_object_spread");
3
+ var _ts_generator = require("@swc/helpers/_/_ts_generator");
4
+ var fs = require("node:fs/promises");
5
+ var path = require("node:path");
6
+ var createProdServer = require("@modern-js/prod-server").createProdServer;
7
+ p_genPluginImportsCode;
8
+ if (!process.env.NODE_ENV) {
9
+ process.env.NODE_ENV = "production";
10
+ }
11
+ function loadRoutes(routeFilepath) {
12
+ return _loadRoutes.apply(this, arguments);
13
+ }
14
+ function _loadRoutes() {
15
+ _loadRoutes = _async_to_generator._(function(routeFilepath) {
16
+ var content, routeSpec, error;
17
+ return _ts_generator._(this, function(_state) {
18
+ switch (_state.label) {
19
+ case 0:
20
+ _state.trys.push([
21
+ 0,
22
+ 3,
23
+ ,
24
+ 4
25
+ ]);
26
+ return [
27
+ 4,
28
+ fs.access(routeFilepath)
29
+ ];
30
+ case 1:
31
+ _state.sent();
32
+ return [
33
+ 4,
34
+ fs.readFile(routeFilepath, "utf-8")
35
+ ];
36
+ case 2:
37
+ content = _state.sent();
38
+ routeSpec = JSON.parse(content);
39
+ return [
40
+ 2,
41
+ routeSpec.routes || []
42
+ ];
43
+ case 3:
44
+ error = _state.sent();
45
+ console.warn("route.json not found or invalid, continuing with empty routes.");
46
+ return [
47
+ 2,
48
+ []
49
+ ];
50
+ case 4:
51
+ return [
52
+ 2
53
+ ];
54
+ }
55
+ });
56
+ });
57
+ return _loadRoutes.apply(this, arguments);
58
+ }
59
+ function main() {
60
+ return _main.apply(this, arguments);
61
+ }
62
+ function _main() {
63
+ _main = _async_to_generator._(function() {
64
+ var routeFilepath, routes, dynamicProdOptions, prodServerOptions, app, port;
65
+ return _ts_generator._(this, function(_state) {
66
+ switch (_state.label) {
67
+ case 0:
68
+ routeFilepath = path.join(__dirname, p_ROUTE_SPEC_FILE);
69
+ return [
70
+ 4,
71
+ loadRoutes(routeFilepath)
72
+ ];
73
+ case 1:
74
+ routes = _state.sent();
75
+ dynamicProdOptions = p_dynamicProdOptions;
76
+ prodServerOptions = _object_spread._({
77
+ pwd: __dirname,
78
+ routes,
79
+ disableCustomHook: true,
80
+ appContext: {
81
+ sharedDirectory: p_sharedDirectory,
82
+ apiDirectory: p_apiDirectory,
83
+ lambdaDirectory: p_lambdaDirectory
84
+ },
85
+ plugins: p_plugins
86
+ }, dynamicProdOptions);
87
+ return [
88
+ 4,
89
+ createProdServer(prodServerOptions)
90
+ ];
91
+ case 2:
92
+ app = _state.sent();
93
+ port = process.env.PORT || 8080;
94
+ app.listen({
95
+ host: "::",
96
+ port
97
+ }, function() {
98
+ console.log("\x1B[32mServer is listening on http://[::]:".concat(port), "\x1B[0m");
99
+ });
100
+ return [
101
+ 2
102
+ ];
103
+ }
104
+ });
105
+ });
106
+ return _main.apply(this, arguments);
107
+ }
108
+ main();