@modern-js/app-tools 2.57.1-alpha.2 → 2.57.1-beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/dist/cjs/builder/builder-webpack/index.js +1 -1
  2. package/dist/cjs/builder/generator/index.js +2 -2
  3. package/dist/cjs/builder/index.js +2 -2
  4. package/dist/cjs/commands/build.js +0 -19
  5. package/dist/cjs/commands/dev.js +0 -9
  6. package/dist/cjs/commands/index.js +8 -8
  7. package/dist/cjs/index.js +1 -1
  8. package/dist/cjs/plugins/analyze/index.js +3 -3
  9. package/dist/cjs/plugins/deploy/dependencies/index.js +5 -3
  10. package/dist/cjs/plugins/deploy/dependencies/utils.js +1 -12
  11. package/dist/cjs/plugins/deploy/platforms/netlify.js +3 -10
  12. package/dist/cjs/plugins/deploy/platforms/{netlify-handler.js → netlifyEntry.js} +1 -27
  13. package/dist/cjs/plugins/deploy/platforms/node.js +2 -9
  14. package/dist/cjs/utils/loadPlugins.js +1 -1
  15. package/dist/cjs/utils/register.js +22 -38
  16. package/dist/esm/builder/generator/getBuilderEnvironments.js +2 -0
  17. package/dist/esm/builder/generator/index.js +1 -1
  18. package/dist/esm/builder/index.js +2 -2
  19. package/dist/esm/builder/shared/builderPlugins/adapterBasic.js +1 -1
  20. package/dist/esm/commands/build.js +16 -9
  21. package/dist/esm/commands/dev.js +55 -37
  22. package/dist/esm/commands/index.js +6 -6
  23. package/dist/esm/index.js +1 -42
  24. package/dist/esm/plugins/analyze/index.js +3 -4
  25. package/dist/esm/plugins/deploy/dependencies/index.js +6 -3
  26. package/dist/esm/utils/createServer.js +1 -1
  27. package/dist/esm-node/builder/generator/getBuilderEnvironments.js +1 -1
  28. package/dist/esm-node/builder/generator/index.js +1 -1
  29. package/dist/esm-node/builder/index.js +2 -2
  30. package/dist/esm-node/builder/shared/builderPlugins/adapterBasic.js +1 -1
  31. package/dist/esm-node/commands/build.js +3 -0
  32. package/dist/esm-node/commands/dev.js +24 -16
  33. package/dist/esm-node/commands/index.js +6 -6
  34. package/dist/esm-node/index.js +1 -17
  35. package/dist/esm-node/plugins/analyze/index.js +3 -4
  36. package/dist/esm-node/plugins/deploy/dependencies/index.js +5 -2
  37. package/dist/esm-node/utils/createServer.js +1 -1
  38. package/dist/types/builder/index.d.ts +1 -1
  39. package/dist/types/plugins/deploy/dependencies/index.d.ts +1 -0
  40. package/dist/types/plugins/deploy/platforms/netlifyEntry.d.ts +2 -0
  41. package/package.json +9 -9
  42. package/dist/cjs/esm/esbuild-loader.mjs +0 -20
  43. package/dist/cjs/esm/register-esm.mjs +0 -65
  44. package/dist/cjs/esm/ts-node-loader.mjs +0 -21
  45. package/dist/cjs/esm/utils.mjs +0 -28
  46. package/dist/cjs/plugins/deploy/platforms/netlify-entry-cjs.js +0 -3
  47. package/dist/cjs/plugins/deploy/platforms/netlify-entry-mjs.js +0 -28
  48. package/dist/esm/custom-loader.mjs +0 -41
  49. package/dist/esm/register-esm.mjs +0 -22
  50. package/dist/esm-node/esm/esbuild-loader.js +0 -39
  51. package/dist/esm-node/esm/register-esm.js +0 -39
  52. package/dist/esm-node/esm/ts-node-loader.js +0 -42
  53. package/dist/types/esm/esbuild-loader.d.mts +0 -6
  54. package/dist/types/esm/register-esm.d.mts +0 -5
  55. package/dist/types/esm/ts-node-loader.d.mts +0 -6
  56. package/dist/types/esm/utils.d.mts +0 -6
  57. package/dist/types/plugins/deploy/platforms/netlify-entry-cjs.d.ts +0 -1
  58. package/dist/types/plugins/deploy/platforms/netlify-entry-mjs.d.ts +0 -1
  59. package/dist/types/plugins/deploy/platforms/netlify-handler.d.ts +0 -1
@@ -38,7 +38,7 @@ async function createWebpackBuilderForModern(options) {
38
38
  const { normalizedConfig } = options;
39
39
  if (normalizedConfig.tools.esbuild) {
40
40
  const { esbuild: esbuildOptions } = normalizedConfig.tools;
41
- const { pluginEsbuild } = await import("@modern-js/rsbuild-plugin-esbuild");
41
+ const { pluginEsbuild } = await Promise.resolve().then(() => __toESM(require("@modern-js/rsbuild-plugin-esbuild")));
42
42
  builder.addPlugins([
43
43
  pluginEsbuild(esbuildOptions)
44
44
  ]);
@@ -50,7 +50,7 @@ async function generateBuilder(options, bundlerType) {
50
50
  return builder;
51
51
  }
52
52
  async function applyBuilderPlugins(builder, options) {
53
- const { builderPluginAdapterBasic, builderPluginAdapterHtml, builderPluginAdapterSSR, builderPluginAdapterWorker } = await import("../shared/builderPlugins/index.js");
53
+ const { builderPluginAdapterBasic, builderPluginAdapterHtml, builderPluginAdapterSSR, builderPluginAdapterWorker } = await Promise.resolve().then(() => __toESM(require("../shared/builderPlugins")));
54
54
  builder.addPlugins([
55
55
  builderPluginAdapterBasic(),
56
56
  builderPluginAdapterSSR(options),
@@ -59,7 +59,7 @@ async function applyBuilderPlugins(builder, options) {
59
59
  ]);
60
60
  const { normalizedConfig } = options;
61
61
  if (!normalizedConfig.output.disableNodePolyfill) {
62
- const { pluginNodePolyfill } = await import("@rsbuild/plugin-node-polyfill");
62
+ const { pluginNodePolyfill } = await Promise.resolve().then(() => __toESM(require("@rsbuild/plugin-node-polyfill")));
63
63
  builder.addPlugins([
64
64
  pluginNodePolyfill()
65
65
  ]);
@@ -33,10 +33,10 @@ __export(builder_exports, {
33
33
  module.exports = __toCommonJS(builder_exports);
34
34
  async function createBuilderGenerator(bundler) {
35
35
  if (bundler === "rspack") {
36
- const { createRspackBuilderForModern } = await import("./builder-rspack/index.js");
36
+ const { createRspackBuilderForModern } = await Promise.resolve().then(() => __toESM(require("./builder-rspack")));
37
37
  return createRspackBuilderForModern;
38
38
  }
39
- const { createWebpackBuilderForModern } = await import("./builder-webpack/index.js");
39
+ const { createWebpackBuilderForModern } = await Promise.resolve().then(() => __toESM(require("./builder-webpack")));
40
40
  return createWebpackBuilderForModern;
41
41
  }
42
42
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,14 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
19
  var build_exports = {};
30
20
  __export(build_exports, {
@@ -46,15 +36,6 @@ const build = async (api, options) => {
46
36
  const appContext = api.useAppContext();
47
37
  const hookRunners = api.useHookRunners();
48
38
  await (0, import_loadPlugins.loadServerPlugins)(api, appContext.appDirectory, appContext.metaName);
49
- if (appContext.moduleType && appContext.moduleType === "module") {
50
- var _resolvedConfig_source1;
51
- const { registerEsm } = await import("../esm/register-esm.mjs");
52
- await registerEsm({
53
- appDir: appContext.appDirectory,
54
- distDir: appContext.distDirectory,
55
- alias: (_resolvedConfig_source1 = resolvedConfig.source) === null || _resolvedConfig_source1 === void 0 ? void 0 : _resolvedConfig_source1.alias
56
- });
57
- }
58
39
  await (0, import_register.registerCompiler)(appContext.appDirectory, appContext.distDirectory, resolvedConfig === null || resolvedConfig === void 0 ? void 0 : (_resolvedConfig_source = resolvedConfig.source) === null || _resolvedConfig_source === void 0 ? void 0 : _resolvedConfig_source.alias);
59
40
  const { apiOnly } = appContext;
60
41
  if (apiOnly) {
@@ -50,15 +50,6 @@ const dev = async (api, options, devServerOptions) => {
50
50
  let normalizedConfig = api.useResolvedConfigContext();
51
51
  const appContext = api.useAppContext();
52
52
  const hookRunners = api.useHookRunners();
53
- if (appContext.moduleType && appContext.moduleType === "module") {
54
- var _normalizedConfig_source1;
55
- const { registerEsm } = await import("../esm/register-esm.mjs");
56
- await registerEsm({
57
- appDir: appContext.appDirectory,
58
- distDir: appContext.distDirectory,
59
- alias: (_normalizedConfig_source1 = normalizedConfig.source) === null || _normalizedConfig_source1 === void 0 ? void 0 : _normalizedConfig_source1.alias
60
- });
61
- }
62
53
  await (0, import_register.registerCompiler)(appContext.appDirectory, appContext.distDirectory, normalizedConfig === null || normalizedConfig === void 0 ? void 0 : (_normalizedConfig_source = normalizedConfig.source) === null || _normalizedConfig_source === void 0 ? void 0 : _normalizedConfig_source.alias);
63
54
  normalizedConfig = {
64
55
  ...normalizedConfig,
@@ -44,7 +44,7 @@ const devCommand = async (program, api) => {
44
44
  const runner = api.useHookRunners();
45
45
  const devToolMetas = await runner.registerDev();
46
46
  const devProgram = program.command("dev").alias("start").usage("[options]").description(import_locale.i18n.t(import_locale.localeKeys.command.dev.describe)).option("-c --config <config>", import_locale.i18n.t(import_locale.localeKeys.command.shared.config)).option("-e --entry [entry...]", import_locale.i18n.t(import_locale.localeKeys.command.dev.entry)).option("--analyze", import_locale.i18n.t(import_locale.localeKeys.command.shared.analyze)).option("--api-only", import_locale.i18n.t(import_locale.localeKeys.command.dev.apiOnly)).option("--web-only", import_locale.i18n.t(import_locale.localeKeys.command.dev.webOnly)).action(async (options) => {
47
- const { dev } = await import("./dev.js");
47
+ const { dev } = await Promise.resolve().then(() => __toESM(require("./dev")));
48
48
  await dev(api, options);
49
49
  });
50
50
  for (const meta of devToolMetas) {
@@ -54,7 +54,7 @@ const devCommand = async (program, api) => {
54
54
  for (const subCmd of meta.subCommands) {
55
55
  devProgram.command(subCmd).action(async (options = {}) => {
56
56
  const { appDirectory } = api.useAppContext();
57
- const { isTypescript } = await import("@modern-js/utils");
57
+ const { isTypescript } = await Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
58
58
  await runner.beforeDevTask(meta);
59
59
  await meta.action(options, {
60
60
  isTsProject: isTypescript(appDirectory)
@@ -67,7 +67,7 @@ const buildCommand = async (program, api) => {
67
67
  const runner = api.useHookRunners();
68
68
  const platformBuilders = await runner.registerBuildPlatform();
69
69
  const buildProgram = program.command("build").usage("[options]").description(import_locale.i18n.t(import_locale.localeKeys.command.build.describe)).option("-c --config <config>", import_locale.i18n.t(import_locale.localeKeys.command.shared.config)).option("--analyze", import_locale.i18n.t(import_locale.localeKeys.command.shared.analyze)).action(async (options) => {
70
- const { build } = await import("./build.js");
70
+ const { build } = await Promise.resolve().then(() => __toESM(require("./build")));
71
71
  await build(api, options);
72
72
  });
73
73
  for (const platformBuilder of platformBuilders) {
@@ -75,7 +75,7 @@ const buildCommand = async (program, api) => {
75
75
  for (const platform of platforms) {
76
76
  buildProgram.command(platform).action(async () => {
77
77
  const { appDirectory } = api.useAppContext();
78
- const { isTypescript } = await import("@modern-js/utils");
78
+ const { isTypescript } = await Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
79
79
  await runner.beforeBuildPlatform(platformBuilders);
80
80
  await platformBuilder.build(platform, {
81
81
  isTsProject: isTypescript(appDirectory)
@@ -86,17 +86,17 @@ const buildCommand = async (program, api) => {
86
86
  };
87
87
  const serverCommand = (program, api) => {
88
88
  program.command("serve").usage("[options]").description(import_locale.i18n.t(import_locale.localeKeys.command.serve.describe)).option("--api-only", import_locale.i18n.t(import_locale.localeKeys.command.dev.apiOnly)).option("-c --config <config>", import_locale.i18n.t(import_locale.localeKeys.command.shared.config)).action(async () => {
89
- const { start } = await import("./serve.js");
89
+ const { start } = await Promise.resolve().then(() => __toESM(require("./serve")));
90
90
  await start(api);
91
91
  });
92
92
  };
93
93
  const deployCommand = (program, api) => {
94
94
  program.command("deploy").usage("[options]").option("-c --config <config>", import_locale.i18n.t(import_locale.localeKeys.command.shared.config)).option("-s --skip-build", import_locale.i18n.t(import_locale.localeKeys.command.shared.skipBuild)).description(import_locale.i18n.t(import_locale.localeKeys.command.deploy.describe)).action(async (options) => {
95
95
  if (!options.skipBuild) {
96
- const { build } = await import("./build.js");
96
+ const { build } = await Promise.resolve().then(() => __toESM(require("./build")));
97
97
  await build(api);
98
98
  }
99
- const { deploy } = await import("./deploy.js");
99
+ const { deploy } = await Promise.resolve().then(() => __toESM(require("./deploy")));
100
100
  await deploy(api, options);
101
101
  process.exit(0);
102
102
  });
@@ -111,7 +111,7 @@ const newCommand = (program, locale) => {
111
111
  };
112
112
  const inspectCommand = (program, api) => {
113
113
  program.command("inspect").description("inspect the internal configs").option(`--env <env>`, import_locale.i18n.t(import_locale.localeKeys.command.inspect.env), "development").option("--output <output>", import_locale.i18n.t(import_locale.localeKeys.command.inspect.output), "/").option("--verbose", import_locale.i18n.t(import_locale.localeKeys.command.inspect.verbose)).option("-c --config <config>", import_locale.i18n.t(import_locale.localeKeys.command.shared.config)).action(async (options) => {
114
- const { inspect } = await import("./inspect.js");
114
+ const { inspect } = await Promise.resolve().then(() => __toESM(require("./inspect")));
115
115
  inspect(api, options);
116
116
  });
117
117
  };
package/dist/cjs/index.js CHANGED
@@ -139,7 +139,7 @@ const appTools = (options = {
139
139
  async fileChange(e) {
140
140
  const { filename, eventType, isPrivate } = e;
141
141
  if (!isPrivate && (eventType === "change" || eventType === "unlink")) {
142
- const { closeServer } = await import("./utils/createServer");
142
+ const { closeServer } = await Promise.resolve().then(() => __toESM(require("./utils/createServer")));
143
143
  await closeServer();
144
144
  await (0, import_restart.restart)(api.useHookRunners(), filename);
145
145
  }
@@ -77,9 +77,9 @@ var analyze_default = ({ bundler }) => ({
77
77
  return;
78
78
  }
79
79
  const [{ getBundleEntry }, { getServerRoutes }, { getHtmlTemplate }] = await Promise.all([
80
- import("./getBundleEntry.js"),
81
- import("./getServerRoutes.js"),
82
- import("./getHtmlTemplate.js")
80
+ Promise.resolve().then(() => __toESM(require("./getBundleEntry"))),
81
+ Promise.resolve().then(() => __toESM(require("./getServerRoutes"))),
82
+ Promise.resolve().then(() => __toESM(require("./getHtmlTemplate")))
83
83
  ]);
84
84
  const { entrypoints } = await hookRunners.modifyEntrypoints({
85
85
  entrypoints: await getBundleEntry(hookRunners, appContext, resolvedConfig)
@@ -28,7 +28,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
  var dependencies_exports = {};
30
30
  __export(dependencies_exports, {
31
- handleDependencies: () => handleDependencies
31
+ handleDependencies: () => handleDependencies,
32
+ nodeFileTrace: () => import_nft.nodeFileTrace
32
33
  });
33
34
  module.exports = __toCommonJS(dependencies_exports);
34
35
  var import_node_path = __toESM(require("node:path"));
@@ -36,6 +37,7 @@ var import_utils = require("@modern-js/utils");
36
37
  var import_pkg_types = require("pkg-types");
37
38
  var import_mlly = require("mlly");
38
39
  var import_utils2 = require("./utils");
40
+ var import_nft = require("@vercel/nft");
39
41
  const handleDependencies = async ({ appDir, serverRootDir, includeEntries, traceFiles = import_utils2.traceFiles, entryFilter, modifyPackageJson, copyWholePackage }) => {
40
42
  const base = "/";
41
43
  const entryFiles = await (0, import_utils2.findEntryFiles)(serverRootDir, entryFilter);
@@ -212,7 +214,6 @@ const handleDependencies = async ({ appDir, serverRootDir, includeEntries, trace
212
214
  name: `${projectPkgJson.name || "modernjs-project"}-prod`,
213
215
  version: projectPkgJson.version || "0.0.0",
214
216
  private: true,
215
- type: projectPkgJson.type || "commonjs",
216
217
  dependencies: Object.fromEntries([
217
218
  ...Object.values(tracedPackages).map((pkg) => [
218
219
  pkg.name,
@@ -225,5 +226,6 @@ const handleDependencies = async ({ appDir, serverRootDir, includeEntries, trace
225
226
  };
226
227
  // Annotate the CommonJS export names for ESM import in node:
227
228
  0 && (module.exports = {
228
- handleDependencies
229
+ handleDependencies,
230
+ nodeFileTrace
229
231
  });
@@ -141,18 +141,7 @@ const findPackageParents = (pkg, version, tracedFiles) => {
141
141
  const traceFiles = async (entryFiles, serverRootDir, base = "/") => {
142
142
  return await (0, import_nft.nodeFileTrace)(entryFiles, {
143
143
  base,
144
- processCwd: serverRootDir,
145
- resolve: async (id, parent, job, isCjs) => {
146
- if (id.startsWith("@modern-js/prod-server")) {
147
- return require.resolve(id, {
148
- paths: [
149
- require.resolve("@modern-js/app-tools")
150
- ]
151
- });
152
- } else {
153
- return (0, import_nft.resolve)(id, parent, job, isCjs);
154
- }
155
- }
144
+ processCwd: serverRootDir
156
145
  });
157
146
  };
158
147
  const resolveTracedPath = async (base, p) => import_utils.fs.realpath(import_path.default.resolve(base, p));
@@ -50,13 +50,11 @@ async function cleanDistDirectory(dir) {
50
50
  }
51
51
  }
52
52
  const createNetlifyPreset = (appContext, modernConfig, needModernServer) => {
53
- const { appDirectory, distDirectory, entrypoints, serverPlugins, moduleType } = appContext;
54
- const isEsmProject = moduleType === "module";
53
+ const { appDirectory, distDirectory, entrypoints, serverPlugins } = appContext;
55
54
  const plugins = serverPlugins.map((plugin) => plugin.name);
56
55
  const netlifyOutput = import_node_path.default.join(appDirectory, ".netlify");
57
56
  const funcsDirectory = import_node_path.default.join(netlifyOutput, "functions");
58
57
  const entryFilePath = import_node_path.default.join(funcsDirectory, "index.js");
59
- const handlerFilePath = import_node_path.default.join(funcsDirectory, "netlify-handler.js");
60
58
  return {
61
59
  async prepare() {
62
60
  await import_utils.fs.remove(netlifyOutput);
@@ -116,15 +114,10 @@ const createNetlifyPreset = (appContext, modernConfig, needModernServer) => {
116
114
  const pluginsCode = `[${plugins.map((plugin, index) => {
117
115
  return `plugin_${index}()`;
118
116
  }).join(",")}]`;
119
- let entryCode = (await import_utils.fs.readFile(import_node_path.default.join(__dirname, "./netlify-handler.js"))).toString();
117
+ let entryCode = (await import_utils.fs.readFile(import_node_path.default.join(__dirname, "./netlifyEntry.js"))).toString();
120
118
  const serverAppContext = (0, import_utils2.serverAppContenxtTemplate)(appContext);
121
119
  entryCode = entryCode.replace("p_genPluginImportsCode", pluginImportCode).replace("p_ROUTE_SPEC_FILE", `"${import_utils.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);
122
- await import_utils.fs.writeFile(handlerFilePath, entryCode);
123
- if (isEsmProject) {
124
- await import_utils.fs.copy(import_node_path.default.join(__dirname, "./netlify-entry-mjs.js"), entryFilePath);
125
- } else {
126
- await import_utils.fs.copy(import_node_path.default.join(__dirname, "./netlify-entry-cjs.js"), entryFilePath);
127
- }
120
+ await import_utils.fs.writeFile(entryFilePath, entryCode);
128
121
  },
129
122
  async end() {
130
123
  if (process.env.NODE_ENV !== "development") {
@@ -1,26 +1,4 @@
1
1
  "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var netlify_handler_exports = {};
20
- __export(netlify_handler_exports, {
21
- createHandler: () => createHandler
22
- });
23
- module.exports = __toCommonJS(netlify_handler_exports);
24
2
  const fs = require("node:fs/promises");
25
3
  const path = require("node:path");
26
4
  const { createNetlifyFunction } = require("@modern-js/prod-server/netlify");
@@ -75,13 +53,9 @@ async function createHandler() {
75
53
  return requestHandler;
76
54
  }
77
55
  createHandler();
78
- exports.handler = async (request, context) => {
56
+ module.exports.default = async (request, context) => {
79
57
  if (!requestHandler) {
80
58
  await createHandler();
81
59
  }
82
60
  return requestHandler(request, context);
83
61
  };
84
- // Annotate the CommonJS export names for ESM import in node:
85
- 0 && (module.exports = {
86
- createHandler
87
- });
@@ -36,8 +36,7 @@ var import_utils = require("@modern-js/utils");
36
36
  var import_utils2 = require("../utils");
37
37
  var import_dependencies = require("../dependencies");
38
38
  const createNodePreset = (appContext, config) => {
39
- const { appDirectory, distDirectory, serverPlugins, moduleType } = appContext;
40
- const isEsmProject = moduleType === "module";
39
+ const { appDirectory, distDirectory, serverPlugins } = appContext;
41
40
  const plugins = serverPlugins.map((plugin) => plugin.name);
42
41
  const outputDirectory = import_node_path.default.join(appDirectory, ".output");
43
42
  const staticDirectory = import_node_path.default.join(outputDirectory, "static");
@@ -73,13 +72,7 @@ const createNodePreset = (appContext, config) => {
73
72
  let entryCode = (await import_utils.fs.readFile(import_node_path.default.join(__dirname, "./nodeEntry.js"))).toString();
74
73
  const serverAppContext = (0, import_utils2.serverAppContenxtTemplate)(appContext);
75
74
  entryCode = entryCode.replace("p_genPluginImportsCode", pluginImportCode).replace("p_ROUTE_SPEC_FILE", `"${import_utils.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);
76
- if (isEsmProject) {
77
- const cjsEntryFilePath = import_node_path.default.join(outputDirectory, "index.cjs");
78
- await import_utils.fs.writeFile(cjsEntryFilePath, entryCode);
79
- await import_utils.fs.writeFile(entryFilePath, `import('./index.cjs');`);
80
- } else {
81
- await import_utils.fs.writeFile(entryFilePath, entryCode);
82
- }
75
+ await import_utils.fs.writeFile(entryFilePath, entryCode);
83
76
  },
84
77
  async end() {
85
78
  console.log("Static directory:", import_utils.chalk.blue(import_node_path.default.relative(appDirectory, staticDirectory)));
@@ -37,7 +37,7 @@ async function getServerPlugins(api, metaName = "modern-js") {
37
37
  }
38
38
  async function loadServerPlugins(api, appDirectory, metaName) {
39
39
  const plugins = await getServerPlugins(api, metaName);
40
- const instances = await (0, import_prod_server.loadServerPlugins)(plugins, appDirectory);
40
+ const instances = (0, import_prod_server.loadServerPlugins)(plugins, appDirectory);
41
41
  return instances;
42
42
  }
43
43
  // Annotate the CommonJS export names for ESM import in node:
@@ -33,14 +33,6 @@ __export(register_exports, {
33
33
  module.exports = __toCommonJS(register_exports);
34
34
  var import_node_path = __toESM(require("node:path"));
35
35
  var import_utils = require("@modern-js/utils");
36
- const registerEsbuild = async ({ isTsProject, tsConfig, distDir }) => {
37
- const esbuildRegister = await import("esbuild-register/dist/node");
38
- esbuildRegister.register({
39
- tsconfigRaw: isTsProject ? tsConfig : void 0,
40
- hookIgnoreNodeModules: true,
41
- hookMatcher: (fileName) => !fileName.startsWith(distDir)
42
- });
43
- };
44
36
  const registerCompiler = async (appDir = process.cwd(), distDir, alias) => {
45
37
  const TS_CONFIG_FILENAME = `tsconfig.json`;
46
38
  const tsconfigPath = import_node_path.default.resolve(appDir, TS_CONFIG_FILENAME);
@@ -69,40 +61,32 @@ const registerCompiler = async (appDir = process.cwd(), distDir, alias) => {
69
61
  if (isTsProject) {
70
62
  tsConfig = (0, import_utils.readTsConfigByFile)(tsconfigPath);
71
63
  }
72
- const { MODERN_NODE_LOADER } = process.env;
73
- if (MODERN_NODE_LOADER !== "esbuild") {
74
- try {
75
- const tsNode = await import("ts-node");
76
- const tsNodeOptions = tsConfig["ts-node"];
77
- if (isTsProject) {
78
- tsNode.register({
79
- project: tsconfigPath,
80
- scope: true,
81
- // for env.d.ts, https://www.npmjs.com/package/ts-node#missing-types
82
- files: true,
83
- transpileOnly: true,
84
- ignore: [
85
- "(?:^|/)node_modules/",
86
- `(?:^|/)${import_node_path.default.relative(appDir, distDir)}/`
87
- ],
88
- ...tsNodeOptions
89
- });
90
- }
91
- } catch (error) {
92
- await registerEsbuild({
93
- isTsProject,
94
- tsConfig,
95
- distDir
64
+ try {
65
+ const tsNode = await Promise.resolve().then(() => __toESM(require("ts-node")));
66
+ const tsNodeOptions = tsConfig["ts-node"];
67
+ if (isTsProject) {
68
+ tsNode.register({
69
+ project: tsconfigPath,
70
+ scope: true,
71
+ // for env.d.ts, https://www.npmjs.com/package/ts-node#missing-types
72
+ files: true,
73
+ transpileOnly: true,
74
+ ignore: [
75
+ "(?:^|/)node_modules/",
76
+ `(?:^|/)${import_node_path.default.relative(appDir, distDir)}/`
77
+ ],
78
+ ...tsNodeOptions
96
79
  });
97
80
  }
98
- } else {
99
- await registerEsbuild({
100
- isTsProject,
101
- tsConfig,
102
- distDir
81
+ } catch (error) {
82
+ const esbuildRegister = await Promise.resolve().then(() => __toESM(require("esbuild-register/dist/node")));
83
+ esbuildRegister.register({
84
+ tsconfigRaw: isTsProject ? tsConfig : void 0,
85
+ hookIgnoreNodeModules: true,
86
+ hookMatcher: (fileName) => !fileName.startsWith(distDir)
103
87
  });
104
88
  }
105
- const tsConfigPaths = (await import("@modern-js/utils/tsconfig-paths")).default;
89
+ const tsConfigPaths = await Promise.resolve().then(() => __toESM(require("@modern-js/utils/tsconfig-paths")));
106
90
  if (await import_utils.fs.pathExists(appDir)) {
107
91
  const loaderRes = tsConfigPaths.loadConfig(appDir);
108
92
  if (loaderRes.resultType === "success") {
@@ -38,6 +38,8 @@ function getBuilderEnvironments(normalizedConfig, appContext) {
38
38
  var v = entries[entry1];
39
39
  serverEntries[entry1] = v.map(function(entry2) {
40
40
  return entry2.replace("index.jsx", "index.server.jsx");
41
+ }).map(function(entry2) {
42
+ return entry2.replace("bootstrap.jsx", "bootstrap.server.jsx");
41
43
  });
42
44
  }
43
45
  var environments = {
@@ -54,7 +54,7 @@ function _applyBuilderPlugins() {
54
54
  case 0:
55
55
  return [
56
56
  4,
57
- import("../shared/builderPlugins/index.js")
57
+ import("../shared/builderPlugins")
58
58
  ];
59
59
  case 1:
60
60
  _ref = _state.sent(), builderPluginAdapterBasic = _ref.builderPluginAdapterBasic, builderPluginAdapterHtml = _ref.builderPluginAdapterHtml, builderPluginAdapterSSR = _ref.builderPluginAdapterSSR, builderPluginAdapterWorker = _ref.builderPluginAdapterWorker;
@@ -16,7 +16,7 @@ function _createBuilderGenerator() {
16
16
  ];
17
17
  return [
18
18
  4,
19
- import("./builder-rspack/index.js")
19
+ import("./builder-rspack")
20
20
  ];
21
21
  case 1:
22
22
  createRspackBuilderForModern = _state.sent().createRspackBuilderForModern;
@@ -27,7 +27,7 @@ function _createBuilderGenerator() {
27
27
  case 2:
28
28
  return [
29
29
  4,
30
- import("./builder-webpack/index.js")
30
+ import("./builder-webpack")
31
31
  ];
32
32
  case 3:
33
33
  createWebpackBuilderForModern = _state.sent().createWebpackBuilderForModern;
@@ -27,7 +27,7 @@ function applyNodeCompat(isServiceWorker, chain) {
27
27
  ".node.ts",
28
28
  ".node.tsx",
29
29
  ".server.js",
30
- ".server.ts",
30
+ ".server.jsx",
31
31
  ".server.ts",
32
32
  ".server.tsx"
33
33
  ];
@@ -7,9 +7,10 @@ import { logger } from "@modern-js/utils";
7
7
  import { loadServerPlugins } from "../utils/loadPlugins";
8
8
  import { generateRoutes } from "../utils/routes";
9
9
  import { buildServerConfig } from "../utils/config";
10
+ import { registerCompiler } from "../utils/register";
10
11
  var build = function() {
11
12
  var _ref = _async_to_generator(function(api, options) {
12
- var resolvedConfig, appContext, hookRunners, apiOnly, appDirectory, distDirectory, serverConfigFile, distDirectory1, appDirectory1, serverConfigFile1;
13
+ var _resolvedConfig_source, resolvedConfig, appContext, hookRunners, apiOnly, appDirectory, distDirectory, serverConfigFile, distDirectory1, appDirectory1, serverConfigFile1;
13
14
  return _ts_generator(this, function(_state) {
14
15
  switch (_state.label) {
15
16
  case 0:
@@ -24,12 +25,18 @@ var build = function() {
24
25
  loadServerPlugins(api, appContext.appDirectory, appContext.metaName)
25
26
  ];
26
27
  case 1:
28
+ _state.sent();
29
+ return [
30
+ 4,
31
+ registerCompiler(appContext.appDirectory, appContext.distDirectory, resolvedConfig === null || resolvedConfig === void 0 ? void 0 : (_resolvedConfig_source = resolvedConfig.source) === null || _resolvedConfig_source === void 0 ? void 0 : _resolvedConfig_source.alias)
32
+ ];
33
+ case 2:
27
34
  _state.sent();
28
35
  apiOnly = appContext.apiOnly;
29
36
  if (!apiOnly)
30
37
  return [
31
38
  3,
32
- 6
39
+ 7
33
40
  ];
34
41
  appDirectory = appContext.appDirectory, distDirectory = appContext.distDirectory, serverConfigFile = appContext.serverConfigFile;
35
42
  return [
@@ -39,7 +46,7 @@ var build = function() {
39
46
  bundlerConfigs: void 0
40
47
  })
41
48
  ];
42
- case 2:
49
+ case 3:
43
50
  _state.sent();
44
51
  return [
45
52
  4,
@@ -49,13 +56,13 @@ var build = function() {
49
56
  configFile: serverConfigFile
50
57
  })
51
58
  ];
52
- case 3:
59
+ case 4:
53
60
  _state.sent();
54
61
  return [
55
62
  4,
56
63
  generateRoutes(appContext)
57
64
  ];
58
- case 4:
65
+ case 5:
59
66
  _state.sent();
60
67
  return [
61
68
  4,
@@ -64,12 +71,12 @@ var build = function() {
64
71
  stats: void 0
65
72
  })
66
73
  ];
67
- case 5:
74
+ case 6:
68
75
  _state.sent();
69
76
  return [
70
77
  2
71
78
  ];
72
- case 6:
79
+ case 7:
73
80
  resolvedConfig = _object_spread_props(_object_spread({}, resolvedConfig), {
74
81
  cliOptions: options
75
82
  });
@@ -83,7 +90,7 @@ var build = function() {
83
90
  configFile: serverConfigFile1
84
91
  })
85
92
  ];
86
- case 7:
93
+ case 8:
87
94
  _state.sent();
88
95
  logger.info("Starting production build...");
89
96
  if (!appContext.builder) {
@@ -93,7 +100,7 @@ var build = function() {
93
100
  4,
94
101
  appContext.builder.build()
95
102
  ];
96
- case 8:
103
+ case 9:
97
104
  _state.sent();
98
105
  return [
99
106
  2