@modern-js/app-tools 2.62.1-alpha.1 → 2.62.2-alpha.0

Sign up to get free protection for your applications and to get access to all the features.
package/dist/cjs/index.js CHANGED
@@ -19,23 +19,29 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
19
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
20
  var src_exports = {};
21
21
  __export(src_exports, {
22
+ appTools: () => import_new2.appTools,
22
23
  default: () => src_default,
24
+ defineConfig: () => import_defineConfig.defineConfig,
25
+ defineLegacyConfig: () => import_defineConfig.defineLegacyConfig,
23
26
  dev: () => import_dev.dev,
27
+ initAppContext: () => import_new2.initAppContext,
24
28
  mergeConfig: () => import_core.mergeConfig
25
29
  });
26
30
  module.exports = __toCommonJS(src_exports);
27
31
  var import_new = require("./new/index");
28
- __reExport(src_exports, require("./new/index"), module.exports);
32
+ var import_new2 = require("./new/index");
29
33
  var import_dev = require("./commands/dev");
30
34
  var import_core = require("@modern-js/core");
31
- __reExport(src_exports, require("./defineConfig"), module.exports);
35
+ var import_defineConfig = require("./defineConfig");
32
36
  __reExport(src_exports, require("./types"), module.exports);
33
37
  var src_default = import_new.appTools;
34
38
  // Annotate the CommonJS export names for ESM import in node:
35
39
  0 && (module.exports = {
40
+ appTools,
41
+ defineConfig,
42
+ defineLegacyConfig,
36
43
  dev,
44
+ initAppContext,
37
45
  mergeConfig,
38
- ...require("./new/index"),
39
- ...require("./defineConfig"),
40
46
  ...require("./types")
41
47
  });
@@ -107,11 +107,11 @@ function getHookRunners(context) {
107
107
  afterDev: async (params) => {
108
108
  return hooks.onAfterDev.call(params);
109
109
  },
110
- beforeDeploy: async () => {
111
- return hooks.onBeforeDeploy.call();
110
+ beforeDeploy: async (options) => {
111
+ return hooks.onBeforeDeploy.call(options);
112
112
  },
113
- afterDeploy: async () => {
114
- return hooks.onAfterDeploy.call();
113
+ afterDeploy: async (options) => {
114
+ return hooks.onAfterDeploy.call(options);
115
115
  },
116
116
  beforeExit: async () => {
117
117
  return hooks.onBeforeExit.call();
@@ -24,22 +24,25 @@ module.exports = __toCommonJS(compat_exports);
24
24
  var import_hooks = require("./hooks");
25
25
  const compatPlugin = () => ({
26
26
  name: "@modern-js/app-tools-compat",
27
- registryApi: (context, updateAppContext) => {
27
+ _registryApi: (getAppContext, updateAppContext) => {
28
+ const getInternalContext = () => {
29
+ return getAppContext()._internalContext;
30
+ };
28
31
  return {
29
32
  useAppContext: () => {
30
- return context;
33
+ return getAppContext();
31
34
  },
32
- setAppContext: (context2) => {
33
- return updateAppContext(context2);
35
+ setAppContext: (context) => {
36
+ return updateAppContext(context);
34
37
  },
35
38
  useConfigContext: () => {
36
- return context.config;
39
+ return getInternalContext().config;
37
40
  },
38
41
  useResolvedConfigContext: () => {
39
- return context.normalizedConfig;
42
+ return getInternalContext().normalizedConfig;
40
43
  },
41
44
  useHookRunners: () => {
42
- return (0, import_hooks.getHookRunners)(context);
45
+ return (0, import_hooks.getHookRunners)(getInternalContext());
43
46
  }
44
47
  };
45
48
  },
@@ -33,7 +33,7 @@ __export(context_exports, {
33
33
  module.exports = __toCommonJS(context_exports);
34
34
  var import_path = __toESM(require("path"));
35
35
  var import_utils = require("@modern-js/utils");
36
- const initAppContext = ({ appDirectory, runtimeConfigFile, options, serverConfigFile }) => {
36
+ const initAppContext = ({ appDirectory, runtimeConfigFile, options, serverConfigFile, tempDir }) => {
37
37
  const { metaName = "modern-js", apiDir = "api", distDir = "", sharedDir = "shared" } = options || {};
38
38
  return {
39
39
  metaName,
@@ -47,7 +47,7 @@ const initAppContext = ({ appDirectory, runtimeConfigFile, options, serverConfig
47
47
  sharedDirectory: import_path.default.resolve(appDirectory, sharedDir),
48
48
  distDirectory: distDir,
49
49
  serverPlugins: [],
50
- internalDirectory: import_path.default.resolve(appDirectory, `./node_modules/.${metaName}`),
50
+ internalDirectory: import_path.default.resolve(appDirectory, tempDir || `./node_modules/.${metaName}`),
51
51
  htmlTemplates: {},
52
52
  serverRoutes: [],
53
53
  entrypoints: [],
@@ -59,12 +59,15 @@ const appTools = (options = {
59
59
  addRuntimeExports: (0, import_plugin_v2.createAsyncHook)()
60
60
  },
61
61
  setup: (api) => {
62
+ var _userConfig_output;
62
63
  const context = api.getAppContext();
64
+ const userConfig = api.getConfig();
63
65
  api.updateAppContext((0, import_context.initAppContext)({
64
66
  appDirectory: context.appDirectory,
65
67
  options: {},
66
68
  serverConfigFile: import_constants.DEFAULT_SERVER_CONFIG_FILE,
67
- runtimeConfigFile: import_constants.DEFAULT_RUNTIME_CONFIG_FILE
69
+ runtimeConfigFile: import_constants.DEFAULT_RUNTIME_CONFIG_FILE,
70
+ tempDir: (_userConfig_output = userConfig.output) === null || _userConfig_output === void 0 ? void 0 : _userConfig_output.tempDir
68
71
  }));
69
72
  }
70
73
  });
@@ -39,9 +39,9 @@ const resolveCliPlugin = async (p, appDirectory) => {
39
39
  }
40
40
  return module2;
41
41
  };
42
- const loadInternalPlugins = async (appDirectory, internalPlugins, autoLoad, autoLoadPlugins, forceAutoLoadPlugins) => {
42
+ const loadInternalPlugins = async (appDirectory, internalPlugins, autoLoad, autoLoadPlugins) => {
43
43
  const plugins = [
44
- ...forceAutoLoadPlugins || autoLoadPlugins ? (0, import_utils.getInternalPlugins)(appDirectory, internalPlugins) : [],
44
+ ...autoLoadPlugins ? (0, import_utils.getInternalPlugins)(appDirectory, internalPlugins) : [],
45
45
  ...autoLoad ? (0, import_utils.getInternalPlugins)(appDirectory, autoLoad) : []
46
46
  ];
47
47
  const loadedPlugins = await Promise.all(plugins.map((plugin) => {
@@ -29,7 +29,7 @@ var import_constants = require("./constants");
29
29
  var import_getConfigFile = require("./getConfigFile");
30
30
  var import_loadPlugins = require("./loadPlugins");
31
31
  var import_utils2 = require("./utils");
32
- async function run({ cwd, initialLog, version, internalPlugins, forceAutoLoadPlugins, packageJsonConfig, configFile }) {
32
+ async function run({ cwd, initialLog, version, internalPlugins, packageJsonConfig, configFile }) {
33
33
  const command = process.argv[2];
34
34
  const cliParams = (0, import_utils.minimist)(process.argv.slice(2));
35
35
  const SUPPORT_CONFIG_PARAM_COMMANDS = [
@@ -49,12 +49,13 @@ async function run({ cwd, initialLog, version, internalPlugins, forceAutoLoadPlu
49
49
  customConfigFile = cliParams["config-file"];
50
50
  }
51
51
  const appDirectory = await (0, import_cli.initAppDir)(cwd);
52
- const autoLoadPlugins = await (0, import_utils2.getIsAutoLoadPlugins)(appDirectory, customConfigFile || (0, import_getConfigFile.getConfigFile)(configFile));
53
- const plugins = await (0, import_loadPlugins.loadInternalPlugins)(appDirectory, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.cli, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.autoLoad, autoLoadPlugins, forceAutoLoadPlugins);
52
+ const finalConfigFile = customConfigFile || (0, import_getConfigFile.getConfigFile)(configFile);
53
+ const autoLoadPlugins = await (0, import_utils2.getIsAutoLoadPlugins)(appDirectory, finalConfigFile);
54
+ const plugins = await (0, import_loadPlugins.loadInternalPlugins)(appDirectory, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.cli, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.autoLoad, autoLoadPlugins);
54
55
  await (0, import_run.run)({
55
56
  cwd,
56
57
  initialLog: initialLog || `Modern.js Framework v${version}`,
57
- configFile: customConfigFile || (0, import_getConfigFile.getConfigFile)(configFile),
58
+ configFile: finalConfigFile,
58
59
  packageJsonConfig: packageJsonConfig || import_constants.PACKAGE_JSON_CONFIG_NAME,
59
60
  internalPlugins: plugins,
60
61
  handleSetupResult: import_hooks.handleSetupResult
@@ -21,7 +21,7 @@ __export(restart_exports, {
21
21
  restart: () => restart
22
22
  });
23
23
  module.exports = __toCommonJS(restart_exports);
24
- var import_core = require("@modern-js/core");
24
+ var import_cli = require("@modern-js/plugin-v2/cli");
25
25
  var import_utils = require("@modern-js/utils");
26
26
  async function restart(hooksRunner, filename) {
27
27
  (0, import_utils.clearConsole)();
@@ -30,7 +30,7 @@ async function restart(hooksRunner, filename) {
30
30
  let hasGetError = false;
31
31
  await hooksRunner.beforeRestart();
32
32
  try {
33
- await import_core.cli.init(import_core.cli.getPrevInitOptions());
33
+ await import_cli.cli.init(import_cli.cli.getPrevInitOptions());
34
34
  } catch (err) {
35
35
  console.error(err);
36
36
  hasGetError = true;
package/dist/esm/index.js CHANGED
@@ -1,12 +1,16 @@
1
1
  import { appTools } from "./new/index";
2
- export * from "./new/index";
2
+ import { appTools as appTools2, initAppContext } from "./new/index";
3
3
  import { dev } from "./commands/dev";
4
4
  import { mergeConfig } from "@modern-js/core";
5
- export * from "./defineConfig";
5
+ import { defineConfig, defineLegacyConfig } from "./defineConfig";
6
6
  export * from "./types";
7
7
  var src_default = appTools;
8
8
  export {
9
+ appTools2 as appTools,
9
10
  src_default as default,
11
+ defineConfig,
12
+ defineLegacyConfig,
10
13
  dev,
14
+ initAppContext,
11
15
  mergeConfig
12
16
  };
@@ -290,22 +290,32 @@ function getHookRunners(context) {
290
290
  return _ref.apply(this, arguments);
291
291
  };
292
292
  }(),
293
- beforeDeploy: /* @__PURE__ */ _async_to_generator(function() {
294
- return _ts_generator(this, function(_state) {
295
- return [
296
- 2,
297
- hooks.onBeforeDeploy.call()
298
- ];
293
+ beforeDeploy: function() {
294
+ var _ref = _async_to_generator(function(options) {
295
+ return _ts_generator(this, function(_state) {
296
+ return [
297
+ 2,
298
+ hooks.onBeforeDeploy.call(options)
299
+ ];
300
+ });
299
301
  });
300
- }),
301
- afterDeploy: /* @__PURE__ */ _async_to_generator(function() {
302
- return _ts_generator(this, function(_state) {
303
- return [
304
- 2,
305
- hooks.onAfterDeploy.call()
306
- ];
302
+ return function(options) {
303
+ return _ref.apply(this, arguments);
304
+ };
305
+ }(),
306
+ afterDeploy: function() {
307
+ var _ref = _async_to_generator(function(options) {
308
+ return _ts_generator(this, function(_state) {
309
+ return [
310
+ 2,
311
+ hooks.onAfterDeploy.call(options)
312
+ ];
313
+ });
307
314
  });
308
- }),
315
+ return function(options) {
316
+ return _ref.apply(this, arguments);
317
+ };
318
+ }(),
309
319
  beforeExit: /* @__PURE__ */ _async_to_generator(function() {
310
320
  return _ts_generator(this, function(_state) {
311
321
  return [
@@ -2,22 +2,25 @@ import { getHookRunners } from "./hooks";
2
2
  var compatPlugin = function() {
3
3
  return {
4
4
  name: "@modern-js/app-tools-compat",
5
- registryApi: function(context, updateAppContext) {
5
+ _registryApi: function(getAppContext, updateAppContext) {
6
+ var getInternalContext = function() {
7
+ return getAppContext()._internalContext;
8
+ };
6
9
  return {
7
10
  useAppContext: function() {
8
- return context;
11
+ return getAppContext();
9
12
  },
10
- setAppContext: function(context2) {
11
- return updateAppContext(context2);
13
+ setAppContext: function(context) {
14
+ return updateAppContext(context);
12
15
  },
13
16
  useConfigContext: function() {
14
- return context.config;
17
+ return getInternalContext().config;
15
18
  },
16
19
  useResolvedConfigContext: function() {
17
- return context.normalizedConfig;
20
+ return getInternalContext().normalizedConfig;
18
21
  },
19
22
  useHookRunners: function() {
20
- return getHookRunners(context);
23
+ return getHookRunners(getInternalContext());
21
24
  }
22
25
  };
23
26
  },
@@ -1,7 +1,7 @@
1
1
  import path from "path";
2
2
  import { address } from "@modern-js/utils";
3
3
  var initAppContext = function(param) {
4
- var appDirectory = param.appDirectory, runtimeConfigFile = param.runtimeConfigFile, options = param.options, serverConfigFile = param.serverConfigFile;
4
+ var appDirectory = param.appDirectory, runtimeConfigFile = param.runtimeConfigFile, options = param.options, serverConfigFile = param.serverConfigFile, tempDir = param.tempDir;
5
5
  var _ref = options || {}, _ref_metaName = _ref.metaName, metaName = _ref_metaName === void 0 ? "modern-js" : _ref_metaName, _ref_apiDir = _ref.apiDir, apiDir = _ref_apiDir === void 0 ? "api" : _ref_apiDir, _ref_distDir = _ref.distDir, distDir = _ref_distDir === void 0 ? "" : _ref_distDir, _ref_sharedDir = _ref.sharedDir, sharedDir = _ref_sharedDir === void 0 ? "shared" : _ref_sharedDir;
6
6
  return {
7
7
  metaName,
@@ -15,7 +15,7 @@ var initAppContext = function(param) {
15
15
  sharedDirectory: path.resolve(appDirectory, sharedDir),
16
16
  distDirectory: distDir,
17
17
  serverPlugins: [],
18
- internalDirectory: path.resolve(appDirectory, "./node_modules/.".concat(metaName)),
18
+ internalDirectory: path.resolve(appDirectory, tempDir || "./node_modules/.".concat(metaName)),
19
19
  htmlTemplates: {},
20
20
  serverRoutes: [],
21
21
  entrypoints: [],
@@ -36,12 +36,15 @@ var appTools = function() {
36
36
  addRuntimeExports: createAsyncHook()
37
37
  },
38
38
  setup: function(api) {
39
+ var _userConfig_output;
39
40
  var context = api.getAppContext();
41
+ var userConfig = api.getConfig();
40
42
  api.updateAppContext(initAppContext({
41
43
  appDirectory: context.appDirectory,
42
44
  options: {},
43
45
  serverConfigFile: DEFAULT_SERVER_CONFIG_FILE,
44
- runtimeConfigFile: DEFAULT_RUNTIME_CONFIG_FILE
46
+ runtimeConfigFile: DEFAULT_RUNTIME_CONFIG_FILE,
47
+ tempDir: (_userConfig_output = userConfig.output) === null || _userConfig_output === void 0 ? void 0 : _userConfig_output.tempDir
45
48
  }));
46
49
  }
47
50
  };
@@ -62,12 +62,12 @@ var resolveCliPlugin = function() {
62
62
  };
63
63
  }();
64
64
  var loadInternalPlugins = function() {
65
- var _ref = _async_to_generator(function(appDirectory, internalPlugins, autoLoad, autoLoadPlugins, forceAutoLoadPlugins) {
65
+ var _ref = _async_to_generator(function(appDirectory, internalPlugins, autoLoad, autoLoadPlugins) {
66
66
  var plugins, loadedPlugins;
67
67
  return _ts_generator(this, function(_state) {
68
68
  switch (_state.label) {
69
69
  case 0:
70
- plugins = _to_consumable_array(forceAutoLoadPlugins || autoLoadPlugins ? getInternalPlugins(appDirectory, internalPlugins) : []).concat(_to_consumable_array(autoLoad ? getInternalPlugins(appDirectory, autoLoad) : []));
70
+ plugins = _to_consumable_array(autoLoadPlugins ? getInternalPlugins(appDirectory, internalPlugins) : []).concat(_to_consumable_array(autoLoad ? getInternalPlugins(appDirectory, autoLoad) : []));
71
71
  return [
72
72
  4,
73
73
  Promise.all(plugins.map(function(plugin) {
@@ -85,7 +85,7 @@ var loadInternalPlugins = function() {
85
85
  }
86
86
  });
87
87
  });
88
- return function loadInternalPlugins2(appDirectory, internalPlugins, autoLoad, autoLoadPlugins, forceAutoLoadPlugins) {
88
+ return function loadInternalPlugins2(appDirectory, internalPlugins, autoLoad, autoLoadPlugins) {
89
89
  return _ref.apply(this, arguments);
90
90
  };
91
91
  }();
@@ -13,11 +13,11 @@ function run(_) {
13
13
  }
14
14
  function _run() {
15
15
  _run = _async_to_generator(function(param) {
16
- var cwd, initialLog, version, internalPlugins, forceAutoLoadPlugins, packageJsonConfig, configFile, command, cliParams, SUPPORT_CONFIG_PARAM_COMMANDS, customConfigFile, appDirectory, autoLoadPlugins, plugins;
16
+ var cwd, initialLog, version, internalPlugins, packageJsonConfig, configFile, command, cliParams, SUPPORT_CONFIG_PARAM_COMMANDS, customConfigFile, appDirectory, finalConfigFile, autoLoadPlugins, plugins;
17
17
  return _ts_generator(this, function(_state) {
18
18
  switch (_state.label) {
19
19
  case 0:
20
- cwd = param.cwd, initialLog = param.initialLog, version = param.version, internalPlugins = param.internalPlugins, forceAutoLoadPlugins = param.forceAutoLoadPlugins, packageJsonConfig = param.packageJsonConfig, configFile = param.configFile;
20
+ cwd = param.cwd, initialLog = param.initialLog, version = param.version, internalPlugins = param.internalPlugins, packageJsonConfig = param.packageJsonConfig, configFile = param.configFile;
21
21
  command = process.argv[2];
22
22
  cliParams = minimist(process.argv.slice(2));
23
23
  SUPPORT_CONFIG_PARAM_COMMANDS = [
@@ -41,15 +41,16 @@ function _run() {
41
41
  ];
42
42
  case 1:
43
43
  appDirectory = _state.sent();
44
+ finalConfigFile = customConfigFile || getConfigFile(configFile);
44
45
  return [
45
46
  4,
46
- getIsAutoLoadPlugins(appDirectory, customConfigFile || getConfigFile(configFile))
47
+ getIsAutoLoadPlugins(appDirectory, finalConfigFile)
47
48
  ];
48
49
  case 2:
49
50
  autoLoadPlugins = _state.sent();
50
51
  return [
51
52
  4,
52
- loadInternalPlugins(appDirectory, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.cli, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.autoLoad, autoLoadPlugins, forceAutoLoadPlugins)
53
+ loadInternalPlugins(appDirectory, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.cli, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.autoLoad, autoLoadPlugins)
53
54
  ];
54
55
  case 3:
55
56
  plugins = _state.sent();
@@ -58,7 +59,7 @@ function _run() {
58
59
  CLIPluginRun({
59
60
  cwd,
60
61
  initialLog: initialLog || "Modern.js Framework v".concat(version),
61
- configFile: customConfigFile || getConfigFile(configFile),
62
+ configFile: finalConfigFile,
62
63
  packageJsonConfig: packageJsonConfig || PACKAGE_JSON_CONFIG_NAME,
63
64
  internalPlugins: plugins,
64
65
  handleSetupResult
@@ -1,6 +1,6 @@
1
1
  import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
2
  import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
- import { cli } from "@modern-js/core";
3
+ import { cli } from "@modern-js/plugin-v2/cli";
4
4
  import { chalk, clearConsole, getFullArgv, logger, program } from "@modern-js/utils";
5
5
  function restart(hooksRunner, filename) {
6
6
  return _restart.apply(this, arguments);
@@ -1,12 +1,16 @@
1
1
  import { appTools } from "./new/index";
2
- export * from "./new/index";
2
+ import { appTools as appTools2, initAppContext } from "./new/index";
3
3
  import { dev } from "./commands/dev";
4
4
  import { mergeConfig } from "@modern-js/core";
5
- export * from "./defineConfig";
5
+ import { defineConfig, defineLegacyConfig } from "./defineConfig";
6
6
  export * from "./types";
7
7
  var src_default = appTools;
8
8
  export {
9
+ appTools2 as appTools,
9
10
  src_default as default,
11
+ defineConfig,
12
+ defineLegacyConfig,
10
13
  dev,
14
+ initAppContext,
11
15
  mergeConfig
12
16
  };
@@ -83,11 +83,11 @@ function getHookRunners(context) {
83
83
  afterDev: async (params) => {
84
84
  return hooks.onAfterDev.call(params);
85
85
  },
86
- beforeDeploy: async () => {
87
- return hooks.onBeforeDeploy.call();
86
+ beforeDeploy: async (options) => {
87
+ return hooks.onBeforeDeploy.call(options);
88
88
  },
89
- afterDeploy: async () => {
90
- return hooks.onAfterDeploy.call();
89
+ afterDeploy: async (options) => {
90
+ return hooks.onAfterDeploy.call(options);
91
91
  },
92
92
  beforeExit: async () => {
93
93
  return hooks.onBeforeExit.call();
@@ -1,22 +1,25 @@
1
1
  import { getHookRunners } from "./hooks";
2
2
  const compatPlugin = () => ({
3
3
  name: "@modern-js/app-tools-compat",
4
- registryApi: (context, updateAppContext) => {
4
+ _registryApi: (getAppContext, updateAppContext) => {
5
+ const getInternalContext = () => {
6
+ return getAppContext()._internalContext;
7
+ };
5
8
  return {
6
9
  useAppContext: () => {
7
- return context;
10
+ return getAppContext();
8
11
  },
9
- setAppContext: (context2) => {
10
- return updateAppContext(context2);
12
+ setAppContext: (context) => {
13
+ return updateAppContext(context);
11
14
  },
12
15
  useConfigContext: () => {
13
- return context.config;
16
+ return getInternalContext().config;
14
17
  },
15
18
  useResolvedConfigContext: () => {
16
- return context.normalizedConfig;
19
+ return getInternalContext().normalizedConfig;
17
20
  },
18
21
  useHookRunners: () => {
19
- return getHookRunners(context);
22
+ return getHookRunners(getInternalContext());
20
23
  }
21
24
  };
22
25
  },
@@ -1,6 +1,6 @@
1
1
  import path from "path";
2
2
  import { address } from "@modern-js/utils";
3
- const initAppContext = ({ appDirectory, runtimeConfigFile, options, serverConfigFile }) => {
3
+ const initAppContext = ({ appDirectory, runtimeConfigFile, options, serverConfigFile, tempDir }) => {
4
4
  const { metaName = "modern-js", apiDir = "api", distDir = "", sharedDir = "shared" } = options || {};
5
5
  return {
6
6
  metaName,
@@ -14,7 +14,7 @@ const initAppContext = ({ appDirectory, runtimeConfigFile, options, serverConfig
14
14
  sharedDirectory: path.resolve(appDirectory, sharedDir),
15
15
  distDirectory: distDir,
16
16
  serverPlugins: [],
17
- internalDirectory: path.resolve(appDirectory, `./node_modules/.${metaName}`),
17
+ internalDirectory: path.resolve(appDirectory, tempDir || `./node_modules/.${metaName}`),
18
18
  htmlTemplates: {},
19
19
  serverRoutes: [],
20
20
  entrypoints: [],
@@ -34,12 +34,15 @@ const appTools = (options = {
34
34
  addRuntimeExports: createAsyncHook()
35
35
  },
36
36
  setup: (api) => {
37
+ var _userConfig_output;
37
38
  const context = api.getAppContext();
39
+ const userConfig = api.getConfig();
38
40
  api.updateAppContext(initAppContext({
39
41
  appDirectory: context.appDirectory,
40
42
  options: {},
41
43
  serverConfigFile: DEFAULT_SERVER_CONFIG_FILE,
42
- runtimeConfigFile: DEFAULT_RUNTIME_CONFIG_FILE
44
+ runtimeConfigFile: DEFAULT_RUNTIME_CONFIG_FILE,
45
+ tempDir: (_userConfig_output = userConfig.output) === null || _userConfig_output === void 0 ? void 0 : _userConfig_output.tempDir
43
46
  }));
44
47
  }
45
48
  });
@@ -16,9 +16,9 @@ const resolveCliPlugin = async (p, appDirectory) => {
16
16
  }
17
17
  return module;
18
18
  };
19
- const loadInternalPlugins = async (appDirectory, internalPlugins, autoLoad, autoLoadPlugins, forceAutoLoadPlugins) => {
19
+ const loadInternalPlugins = async (appDirectory, internalPlugins, autoLoad, autoLoadPlugins) => {
20
20
  const plugins = [
21
- ...forceAutoLoadPlugins || autoLoadPlugins ? getInternalPlugins(appDirectory, internalPlugins) : [],
21
+ ...autoLoadPlugins ? getInternalPlugins(appDirectory, internalPlugins) : [],
22
22
  ...autoLoad ? getInternalPlugins(appDirectory, autoLoad) : []
23
23
  ];
24
24
  const loadedPlugins = await Promise.all(plugins.map((plugin) => {
@@ -6,7 +6,7 @@ import { PACKAGE_JSON_CONFIG_NAME } from "./constants";
6
6
  import { getConfigFile } from "./getConfigFile";
7
7
  import { loadInternalPlugins } from "./loadPlugins";
8
8
  import { getIsAutoLoadPlugins } from "./utils";
9
- async function run({ cwd, initialLog, version, internalPlugins, forceAutoLoadPlugins, packageJsonConfig, configFile }) {
9
+ async function run({ cwd, initialLog, version, internalPlugins, packageJsonConfig, configFile }) {
10
10
  const command = process.argv[2];
11
11
  const cliParams = minimist(process.argv.slice(2));
12
12
  const SUPPORT_CONFIG_PARAM_COMMANDS = [
@@ -26,12 +26,13 @@ async function run({ cwd, initialLog, version, internalPlugins, forceAutoLoadPlu
26
26
  customConfigFile = cliParams["config-file"];
27
27
  }
28
28
  const appDirectory = await initAppDir(cwd);
29
- const autoLoadPlugins = await getIsAutoLoadPlugins(appDirectory, customConfigFile || getConfigFile(configFile));
30
- const plugins = await loadInternalPlugins(appDirectory, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.cli, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.autoLoad, autoLoadPlugins, forceAutoLoadPlugins);
29
+ const finalConfigFile = customConfigFile || getConfigFile(configFile);
30
+ const autoLoadPlugins = await getIsAutoLoadPlugins(appDirectory, finalConfigFile);
31
+ const plugins = await loadInternalPlugins(appDirectory, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.cli, internalPlugins === null || internalPlugins === void 0 ? void 0 : internalPlugins.autoLoad, autoLoadPlugins);
31
32
  await CLIPluginRun({
32
33
  cwd,
33
34
  initialLog: initialLog || `Modern.js Framework v${version}`,
34
- configFile: customConfigFile || getConfigFile(configFile),
35
+ configFile: finalConfigFile,
35
36
  packageJsonConfig: packageJsonConfig || PACKAGE_JSON_CONFIG_NAME,
36
37
  internalPlugins: plugins,
37
38
  handleSetupResult
@@ -1,4 +1,4 @@
1
- import { cli } from "@modern-js/core";
1
+ import { cli } from "@modern-js/plugin-v2/cli";
2
2
  import { chalk, clearConsole, getFullArgv, logger, program } from "@modern-js/utils";
3
3
  async function restart(hooksRunner, filename) {
4
4
  clearConsole();
@@ -1,16 +1,9 @@
1
1
  import { appTools } from './new/index';
2
- export * from './new/index';
2
+ export { appTools, initAppContext, type AppToolsPlugin } from './new/index';
3
3
  export { dev } from './commands/dev';
4
4
  export type { DevOptions } from './utils/types';
5
5
  export { mergeConfig } from '@modern-js/core';
6
- export * from './defineConfig';
6
+ export { defineConfig, defineLegacyConfig } from './defineConfig';
7
7
  export * from './types';
8
8
  export type { RuntimeUserConfig } from './types/config';
9
- export type AppToolsOptions = {
10
- /**
11
- * Specify which bundler to use for the build.
12
- * @default `webpack`
13
- * */
14
- bundler?: 'rspack' | 'webpack' | 'experimental-rspack';
15
- };
16
9
  export default appTools;
@@ -1,4 +1,4 @@
1
- import type { InternalContext } from '@modern-js/plugin-v2';
1
+ import type { InternalContext } from '@modern-js/plugin-v2/types';
2
2
  import type { AppToolsNormalizedConfig, AppToolsUserConfig } from '../../types';
3
3
  import type { AppToolsExtendAPIName } from '../types';
4
4
  /**
@@ -1,4 +1,4 @@
1
- import type { InternalContext, Plugin } from '@modern-js/plugin-v2';
1
+ import type { InternalContext, Plugin } from '@modern-js/plugin-v2/types';
2
2
  import type { AppToolsNormalizedConfig, AppToolsUserConfig } from '../../types/config';
3
3
  import type { AppTools, AppToolsExtendAPIName } from '../types';
4
4
  export declare const compatPlugin: () => Plugin<AppTools<'shared'>, InternalContext<AppToolsUserConfig<'shared'>, AppToolsNormalizedConfig, AppToolsExtendAPIName<'shared'>>>;
@@ -1,4 +1,4 @@
1
- export declare const initAppContext: ({ appDirectory, runtimeConfigFile, options, serverConfigFile, }: {
1
+ export declare const initAppContext: ({ appDirectory, runtimeConfigFile, options, serverConfigFile, tempDir, }: {
2
2
  appDirectory: string;
3
3
  runtimeConfigFile: string | false;
4
4
  options?: {
@@ -9,6 +9,7 @@ export declare const initAppContext: ({ appDirectory, runtimeConfigFile, options
9
9
  sharedDir?: string | undefined;
10
10
  } | undefined;
11
11
  serverConfigFile: string;
12
+ tempDir?: string | undefined;
12
13
  }) => {
13
14
  metaName: string;
14
15
  runtimeConfigFile: string | false;
@@ -1,15 +1,9 @@
1
- import type { InternalContext, Plugin } from '@modern-js/plugin-v2';
1
+ import type { InternalContext, Plugin } from '@modern-js/plugin-v2/types';
2
+ import { type AppToolsOptions } from '../old';
2
3
  import type { AppToolsNormalizedConfig, AppToolsUserConfig } from '../types';
3
4
  import { initAppContext } from './context';
4
5
  import type { AppTools, AppToolsExtendAPIName } from './types';
5
6
  export * from '../defineConfig';
6
7
  export { initAppContext };
7
- export type AppToolsOptions = {
8
- /**
9
- * Specify which bundler to use for the build.
10
- * @default `webpack`
11
- * */
12
- bundler?: 'rspack' | 'webpack' | 'experimental-rspack';
13
- };
14
8
  export type AppToolsPlugin = Plugin<AppTools<'shared'>, InternalContext<AppToolsUserConfig<'shared'>, AppToolsNormalizedConfig, AppToolsExtendAPIName<'shared'>>>;
15
9
  export declare const appTools: (options?: AppToolsOptions) => AppToolsPlugin;
@@ -1,4 +1,4 @@
1
- import type { Plugin } from '@modern-js/plugin-v2';
1
+ import type { Plugin } from '@modern-js/plugin-v2/types';
2
2
  import type { InternalPlugins } from '@modern-js/types';
3
3
  /**
4
4
  * Load internal plugins which in @modern-js scope and user's custom plugins.
@@ -6,4 +6,4 @@ import type { InternalPlugins } from '@modern-js/types';
6
6
  * @param internalPlugins - Internal plugins.
7
7
  * @returns Plugin Objects has been required.
8
8
  */
9
- export declare const loadInternalPlugins: (appDirectory: string, internalPlugins?: InternalPlugins, autoLoad?: InternalPlugins, autoLoadPlugins?: boolean, forceAutoLoadPlugins?: boolean) => Promise<Plugin[]>;
9
+ export declare const loadInternalPlugins: (appDirectory: string, internalPlugins?: InternalPlugins, autoLoad?: InternalPlugins, autoLoadPlugins?: boolean) => Promise<Plugin[]>;
@@ -7,8 +7,7 @@ export interface RunOptions {
7
7
  cli?: InternalPlugins;
8
8
  autoLoad?: InternalPlugins;
9
9
  };
10
- forceAutoLoadPlugins?: boolean;
11
10
  initialLog?: string;
12
11
  version: string;
13
12
  }
14
- export declare function run({ cwd, initialLog, version, internalPlugins, forceAutoLoadPlugins, packageJsonConfig, configFile, }: RunOptions): Promise<void>;
13
+ export declare function run({ cwd, initialLog, version, internalPlugins, packageJsonConfig, configFile, }: RunOptions): Promise<void>;
@@ -1,6 +1,6 @@
1
1
  import type { DevToolData, RegisterBuildPlatformResult } from '@modern-js/core';
2
- import type { CLIPluginAPI, PluginHookTap, TransformFunction } from '@modern-js/plugin-v2';
3
- import type { AppContext } from '@modern-js/plugin-v2/dist/types';
2
+ import type { AppContext } from '@modern-js/plugin-v2/types';
3
+ import type { CLIPluginAPI, PluginHookTap, TransformFunction } from '@modern-js/plugin-v2/types';
4
4
  import type { Entrypoint, NestedRouteForCli, PageRoute, RouteLegacy, ServerPlugin, ServerRoute } from '@modern-js/types';
5
5
  import type { AppToolsNormalizedConfig, AppToolsUserConfig } from '../../types/config';
6
6
  import type { RuntimePlugin } from '../../types/hooks';
@@ -39,7 +39,7 @@ export type BeforePrintInstructionsFn = TransformFunction<{
39
39
  export type RegisterDevFn = () => Promise<DevToolData> | DevToolData;
40
40
  export type RegisterBuildPlatformFn = () => Promise<RegisterBuildPlatformResult> | RegisterBuildPlatformResult;
41
41
  export type AddRuntimeExportsFn = () => Promise<void> | void;
42
- export interface AppToolsExtendAPI<B extends Bundler> {
42
+ interface AppToolsExtendAPI<B extends Bundler = 'webpack'> {
43
43
  onBeforeConfig: PluginHookTap<BeforeConfigFn>;
44
44
  onAfterPrepare: PluginHookTap<AfterPrepareFn>;
45
45
  deploy: PluginHookTap<DeplpoyFn>;
@@ -84,6 +84,7 @@ export interface AppToolsExtendAPI<B extends Bundler> {
84
84
  */
85
85
  useHookRunners: () => ReturnType<typeof getHookRunners>;
86
86
  }
87
- export interface AppTools<B extends Bundler> extends CLIPluginAPI<AppToolsUserConfig<B>, AppToolsNormalizedConfig<AppToolsUserConfig<B>>>, AppToolsExtendAPI<B> {
87
+ export interface AppTools<B extends Bundler = 'webpack'> extends CLIPluginAPI<AppToolsUserConfig<B>, AppToolsNormalizedConfig<AppToolsUserConfig<B>>>, AppToolsExtendAPI<B> {
88
88
  }
89
- export type AppToolsExtendAPIName<B extends Bundler> = keyof AppToolsExtendAPI<B> & string;
89
+ export type AppToolsExtendAPIName<B extends Bundler = 'webpack'> = keyof AppToolsExtendAPI<B> & string;
90
+ export {};
@@ -1,18 +1,11 @@
1
1
  import type { CliPlugin } from '@modern-js/core';
2
- import type { AppTools } from './types';
2
+ import type { AppTools, AppToolsOptions } from './types';
3
3
  export { dev } from './commands/dev';
4
4
  export type { DevOptions } from './utils/types';
5
5
  export { mergeConfig } from '@modern-js/core';
6
6
  export * from './defineConfig';
7
7
  export * from './types';
8
8
  export type { RuntimeUserConfig } from './types/config';
9
- export type AppToolsOptions = {
10
- /**
11
- * Specify which bundler to use for the build.
12
- * @default `webpack`
13
- * */
14
- bundler?: 'rspack' | 'webpack' | 'experimental-rspack';
15
- };
16
9
  /**
17
10
  * The core package of the framework, providing CLI commands, build capabilities, configuration parsing and more.
18
11
  */
@@ -24,3 +24,10 @@ export type AppNormalizedConfig<B extends Bundler = 'webpack'> = NormalizedConfi
24
24
  export type AppLegacyNormalizedConfig = NormalizedConfig<LegacyAppTools>;
25
25
  export type AppUserConfig<B extends Bundler = 'webpack'> = UserConfig<AppTools<B>>;
26
26
  export type AppLegacyUserConfig = UserConfig<LegacyAppTools>;
27
+ export type AppToolsOptions = {
28
+ /**
29
+ * Specify which bundler to use for the build.
30
+ * @default `webpack`
31
+ * */
32
+ bundler?: 'rspack' | 'webpack' | 'experimental-rspack';
33
+ };
@@ -1,3 +1,3 @@
1
- import { type ToRunners } from '@modern-js/core';
1
+ import type { ToRunners } from '@modern-js/core';
2
2
  import type { AppToolsHooks } from '../types/hooks';
3
3
  export declare function restart(hooksRunner: ToRunners<AppToolsHooks>, filename: string): Promise<void>;
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.62.1-alpha.1",
18
+ "version": "2.62.2-alpha.0",
19
19
  "jsnext:source": "./src/index.ts",
20
20
  "types": "./dist/types/index.d.ts",
21
21
  "main": "./dist/cjs/index.js",
@@ -96,20 +96,20 @@
96
96
  "mlly": "^1.6.1",
97
97
  "pkg-types": "^1.1.0",
98
98
  "std-env": "^3.7.0",
99
- "@modern-js/plugin": "2.62.0",
100
99
  "@modern-js/plugin-v2": "2.60.6",
101
- "@modern-js/plugin-i18n": "2.62.0",
102
- "@modern-js/plugin-data-loader": "2.62.0",
103
- "@modern-js/prod-server": "2.62.0",
104
- "@modern-js/core": "2.62.0",
105
- "@modern-js/server": "2.62.0",
106
- "@modern-js/node-bundle-require": "2.62.0",
107
- "@modern-js/rsbuild-plugin-esbuild": "2.62.0",
108
- "@modern-js/server-core": "2.62.0",
109
- "@modern-js/types": "2.62.0",
110
- "@modern-js/utils": "2.62.0",
111
- "@modern-js/uni-builder": "2.62.0",
112
- "@modern-js/server-utils": "2.62.0"
100
+ "@modern-js/core": "2.62.1",
101
+ "@modern-js/plugin": "2.62.1",
102
+ "@modern-js/plugin-i18n": "2.62.1",
103
+ "@modern-js/plugin-data-loader": "2.62.1",
104
+ "@modern-js/prod-server": "2.62.1",
105
+ "@modern-js/rsbuild-plugin-esbuild": "2.62.1",
106
+ "@modern-js/node-bundle-require": "2.62.1",
107
+ "@modern-js/server": "2.62.1",
108
+ "@modern-js/uni-builder": "2.62.1",
109
+ "@modern-js/server-utils": "2.62.1",
110
+ "@modern-js/server-core": "2.62.1",
111
+ "@modern-js/utils": "2.62.1",
112
+ "@modern-js/types": "2.62.1"
113
113
  },
114
114
  "devDependencies": {
115
115
  "@rsbuild/plugin-webpack-swc": "~1.0.3",
@@ -121,8 +121,8 @@
121
121
  "tsconfig-paths": "^4.2.0",
122
122
  "typescript": "^5",
123
123
  "webpack": "^5.96.1",
124
- "@scripts/build": "2.62.0",
125
- "@scripts/jest-config": "2.62.0"
124
+ "@scripts/build": "2.62.1",
125
+ "@scripts/jest-config": "2.62.1"
126
126
  },
127
127
  "peerDependencies": {
128
128
  "ts-node": "^10.7.0",