@modern-js/app-tools 2.0.0-beta.3 → 2.0.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. package/CHANGELOG.md +619 -0
  2. package/bin/modern.js +3 -0
  3. package/dist/js/modern/analyze/Builder.js +39 -0
  4. package/dist/js/modern/analyze/constants.js +48 -18
  5. package/dist/js/modern/analyze/generateCode.js +264 -225
  6. package/dist/js/modern/analyze/getBundleEntry.js +34 -32
  7. package/dist/js/modern/analyze/getClientRoutes/getRoutes.js +99 -52
  8. package/dist/js/modern/analyze/getClientRoutes/getRoutesLegacy.js +89 -47
  9. package/dist/js/modern/analyze/getClientRoutes/index.js +6 -2
  10. package/dist/js/modern/analyze/getClientRoutes/utils.js +23 -10
  11. package/dist/js/modern/analyze/getFileSystemEntry.js +52 -23
  12. package/dist/js/modern/analyze/getHtmlTemplate.js +89 -49
  13. package/dist/js/modern/analyze/getServerRoutes.js +122 -126
  14. package/dist/js/modern/analyze/index.js +204 -161
  15. package/dist/js/modern/analyze/isDefaultExportFunction.js +30 -16
  16. package/dist/js/modern/analyze/makeLegalIdentifier.js +10 -11
  17. package/dist/js/modern/analyze/nestedRoutes.js +118 -65
  18. package/dist/js/modern/analyze/templates.js +170 -81
  19. package/dist/js/modern/analyze/utils.js +104 -67
  20. package/dist/js/modern/builder/builderPlugins/compatModern.js +128 -109
  21. package/dist/js/modern/builder/index.js +120 -89
  22. package/dist/js/modern/builder/loaders/routerLoader.js +9 -12
  23. package/dist/js/modern/builder/loaders/serverModuleLoader.js +4 -1
  24. package/dist/js/modern/builder/share.js +23 -21
  25. package/dist/js/modern/builder/webpackPlugins/htmlAsyncChunkPlugin.js +23 -22
  26. package/dist/js/modern/builder/webpackPlugins/htmlBottomTemplate.js +31 -27
  27. package/dist/js/modern/builder/webpackPlugins/routerPlugin.js +100 -84
  28. package/dist/js/modern/commands/build.js +67 -42
  29. package/dist/js/modern/commands/deploy.js +27 -4
  30. package/dist/js/modern/commands/dev.js +81 -34
  31. package/dist/js/modern/commands/index.js +1 -1
  32. package/dist/js/modern/commands/inspect.js +30 -5
  33. package/dist/js/modern/commands/serve.js +54 -0
  34. package/dist/js/modern/config/default.js +112 -145
  35. package/dist/js/modern/config/index.js +8 -2
  36. package/dist/js/modern/config/initial/createHtmlConfig.js +5 -2
  37. package/dist/js/modern/config/initial/createOutputConfig.js +10 -13
  38. package/dist/js/modern/config/initial/createSourceConfig.js +10 -3
  39. package/dist/js/modern/config/initial/createToolsConfig.js +7 -6
  40. package/dist/js/modern/config/initial/index.js +9 -4
  41. package/dist/js/modern/config/initial/inits.js +109 -73
  42. package/dist/js/modern/config/initial/transformNormalizedConfig.js +11 -4
  43. package/dist/js/modern/defineConfig.js +26 -11
  44. package/dist/js/modern/exports/server.js +4 -1
  45. package/dist/js/modern/hooks.js +16 -4
  46. package/dist/js/modern/index.js +178 -90
  47. package/dist/js/modern/initialize/index.js +100 -52
  48. package/dist/js/modern/locale/en.js +20 -21
  49. package/dist/js/modern/locale/index.js +6 -6
  50. package/dist/js/modern/locale/zh.js +21 -22
  51. package/dist/js/modern/schema/Schema.js +6 -5
  52. package/dist/js/modern/schema/index.js +53 -100
  53. package/dist/js/modern/schema/legacy.js +96 -231
  54. package/dist/js/modern/types/config/index.js +0 -1
  55. package/dist/js/modern/types/index.js +0 -1
  56. package/dist/js/modern/types/legacyConfig/output.js +0 -1
  57. package/dist/js/modern/utils/commands.js +10 -2
  58. package/dist/js/modern/utils/config.js +102 -41
  59. package/dist/js/modern/utils/createFileWatcher.js +84 -51
  60. package/dist/js/modern/utils/createServer.js +63 -17
  61. package/dist/js/modern/utils/getServerInternalPlugins.js +58 -0
  62. package/dist/js/modern/utils/getSpecifiedEntries.js +46 -19
  63. package/dist/js/modern/utils/language.js +6 -3
  64. package/dist/js/modern/utils/printInstructions.js +27 -8
  65. package/dist/js/modern/utils/restart.js +43 -16
  66. package/dist/js/modern/utils/routes.js +29 -12
  67. package/dist/js/node/analyze/Builder.js +64 -0
  68. package/dist/js/node/analyze/constants.js +86 -39
  69. package/dist/js/node/analyze/generateCode.js +285 -239
  70. package/dist/js/node/analyze/getBundleEntry.js +62 -44
  71. package/dist/js/node/analyze/getClientRoutes/getRoutes.js +138 -77
  72. package/dist/js/node/analyze/getClientRoutes/getRoutesLegacy.js +130 -74
  73. package/dist/js/node/analyze/getClientRoutes/index.js +27 -16
  74. package/dist/js/node/analyze/getClientRoutes/utils.js +51 -21
  75. package/dist/js/node/analyze/getFileSystemEntry.js +82 -39
  76. package/dist/js/node/analyze/getHtmlTemplate.js +120 -61
  77. package/dist/js/node/analyze/getServerRoutes.js +145 -137
  78. package/dist/js/node/analyze/index.js +233 -174
  79. package/dist/js/node/analyze/isDefaultExportFunction.js +59 -26
  80. package/dist/js/node/analyze/makeLegalIdentifier.js +31 -15
  81. package/dist/js/node/analyze/nestedRoutes.js +150 -79
  82. package/dist/js/node/analyze/templates.js +198 -90
  83. package/dist/js/node/analyze/utils.js +136 -81
  84. package/dist/js/node/builder/builderPlugins/compatModern.js +158 -122
  85. package/dist/js/node/builder/index.js +142 -98
  86. package/dist/js/node/builder/loaders/routerLoader.js +29 -18
  87. package/dist/js/node/builder/loaders/serverModuleLoader.js +24 -7
  88. package/dist/js/node/builder/share.js +50 -26
  89. package/dist/js/node/builder/webpackPlugins/htmlAsyncChunkPlugin.js +43 -26
  90. package/dist/js/node/builder/webpackPlugins/htmlBottomTemplate.js +51 -31
  91. package/dist/js/node/builder/webpackPlugins/routerPlugin.js +120 -90
  92. package/dist/js/node/commands/build.js +91 -52
  93. package/dist/js/node/commands/deploy.js +49 -10
  94. package/dist/js/node/commands/dev.js +105 -48
  95. package/dist/js/node/commands/index.js +19 -38
  96. package/dist/js/node/commands/inspect.js +52 -11
  97. package/dist/js/node/commands/serve.js +83 -0
  98. package/dist/js/node/config/default.js +131 -149
  99. package/dist/js/node/config/index.js +31 -28
  100. package/dist/js/node/config/initial/createHtmlConfig.js +26 -6
  101. package/dist/js/node/config/initial/createOutputConfig.js +31 -17
  102. package/dist/js/node/config/initial/createSourceConfig.js +31 -7
  103. package/dist/js/node/config/initial/createToolsConfig.js +28 -10
  104. package/dist/js/node/config/initial/index.js +34 -17
  105. package/dist/js/node/config/initial/inits.js +130 -81
  106. package/dist/js/node/config/initial/transformNormalizedConfig.js +40 -16
  107. package/dist/js/node/defineConfig.js +46 -17
  108. package/dist/js/node/exports/server.js +25 -10
  109. package/dist/js/node/hooks.js +53 -29
  110. package/dist/js/node/index.js +213 -129
  111. package/dist/js/node/initialize/index.js +117 -61
  112. package/dist/js/node/locale/en.js +40 -25
  113. package/dist/js/node/locale/index.js +31 -14
  114. package/dist/js/node/locale/zh.js +41 -26
  115. package/dist/js/node/schema/Schema.js +27 -10
  116. package/dist/js/node/schema/index.js +84 -114
  117. package/dist/js/node/schema/legacy.js +119 -240
  118. package/dist/js/node/types/config/deploy.js +15 -0
  119. package/dist/js/node/types/config/dev.js +15 -0
  120. package/dist/js/node/types/config/experiments.js +15 -0
  121. package/dist/js/node/types/config/html.js +15 -0
  122. package/dist/js/node/types/config/index.js +17 -16
  123. package/dist/js/node/types/config/output.js +15 -0
  124. package/dist/js/node/types/config/performance.js +15 -0
  125. package/dist/js/node/types/config/security.js +15 -0
  126. package/dist/js/node/types/config/source.js +15 -0
  127. package/dist/js/node/types/config/tools.js +15 -0
  128. package/dist/js/node/types/hooks.js +15 -0
  129. package/dist/js/node/types/index.js +19 -38
  130. package/dist/js/node/types/legacyConfig/deploy.js +15 -0
  131. package/dist/js/node/types/legacyConfig/dev.js +15 -0
  132. package/dist/js/node/types/legacyConfig/index.js +15 -0
  133. package/dist/js/node/types/legacyConfig/output.js +15 -5
  134. package/dist/js/node/types/legacyConfig/source.js +15 -0
  135. package/dist/js/node/types/legacyConfig/tools.js +15 -0
  136. package/dist/js/node/utils/commands.js +31 -6
  137. package/dist/js/node/utils/config.js +125 -51
  138. package/dist/js/node/utils/createFileWatcher.js +109 -61
  139. package/dist/js/node/utils/createServer.js +92 -25
  140. package/dist/js/node/utils/getServerInternalPlugins.js +79 -0
  141. package/dist/js/node/utils/getSpecifiedEntries.js +68 -25
  142. package/dist/js/node/utils/language.js +28 -8
  143. package/dist/js/node/utils/printInstructions.js +51 -16
  144. package/dist/js/node/utils/restart.js +65 -21
  145. package/dist/js/node/utils/routes.js +58 -19
  146. package/dist/js/node/utils/types.js +15 -0
  147. package/dist/js/treeshaking/analyze/Builder.js +199 -0
  148. package/dist/js/treeshaking/analyze/constants.js +37 -18
  149. package/dist/js/treeshaking/analyze/generateCode.js +597 -407
  150. package/dist/js/treeshaking/analyze/getBundleEntry.js +55 -63
  151. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutes.js +217 -168
  152. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutesLegacy.js +215 -169
  153. package/dist/js/treeshaking/analyze/getClientRoutes/index.js +3 -2
  154. package/dist/js/treeshaking/analyze/getClientRoutes/utils.js +19 -20
  155. package/dist/js/treeshaking/analyze/getFileSystemEntry.js +97 -86
  156. package/dist/js/treeshaking/analyze/getHtmlTemplate.js +298 -125
  157. package/dist/js/treeshaking/analyze/getServerRoutes.js +210 -147
  158. package/dist/js/treeshaking/analyze/index.js +575 -305
  159. package/dist/js/treeshaking/analyze/isDefaultExportFunction.js +45 -26
  160. package/dist/js/treeshaking/analyze/makeLegalIdentifier.js +13 -16
  161. package/dist/js/treeshaking/analyze/nestedRoutes.js +419 -201
  162. package/dist/js/treeshaking/analyze/templates.js +438 -236
  163. package/dist/js/treeshaking/analyze/utils.js +367 -153
  164. package/dist/js/treeshaking/builder/builderPlugins/compatModern.js +285 -199
  165. package/dist/js/treeshaking/builder/index.js +365 -165
  166. package/dist/js/treeshaking/builder/loaders/routerLoader.js +11 -12
  167. package/dist/js/treeshaking/builder/loaders/serverModuleLoader.js +3 -2
  168. package/dist/js/treeshaking/builder/share.js +38 -44
  169. package/dist/js/treeshaking/builder/webpackPlugins/htmlAsyncChunkPlugin.js +108 -44
  170. package/dist/js/treeshaking/builder/webpackPlugins/htmlBottomTemplate.js +70 -39
  171. package/dist/js/treeshaking/builder/webpackPlugins/routerPlugin.js +334 -112
  172. package/dist/js/treeshaking/commands/build.js +286 -88
  173. package/dist/js/treeshaking/commands/deploy.js +153 -25
  174. package/dist/js/treeshaking/commands/dev.js +313 -131
  175. package/dist/js/treeshaking/commands/index.js +1 -1
  176. package/dist/js/treeshaking/commands/inspect.js +147 -32
  177. package/dist/js/treeshaking/commands/serve.js +199 -0
  178. package/dist/js/treeshaking/config/default.js +207 -198
  179. package/dist/js/treeshaking/config/index.js +3 -2
  180. package/dist/js/treeshaking/config/initial/createHtmlConfig.js +19 -31
  181. package/dist/js/treeshaking/config/initial/createOutputConfig.js +41 -70
  182. package/dist/js/treeshaking/config/initial/createSourceConfig.js +41 -40
  183. package/dist/js/treeshaking/config/initial/createToolsConfig.js +23 -38
  184. package/dist/js/treeshaking/config/initial/index.js +10 -9
  185. package/dist/js/treeshaking/config/initial/inits.js +205 -106
  186. package/dist/js/treeshaking/config/initial/transformNormalizedConfig.js +31 -34
  187. package/dist/js/treeshaking/defineConfig.js +60 -13
  188. package/dist/js/treeshaking/exports/server.js +2 -1
  189. package/dist/js/treeshaking/hooks.js +31 -25
  190. package/dist/js/treeshaking/index.js +681 -256
  191. package/dist/js/treeshaking/initialize/index.js +292 -113
  192. package/dist/js/treeshaking/locale/en.js +34 -33
  193. package/dist/js/treeshaking/locale/index.js +5 -5
  194. package/dist/js/treeshaking/locale/zh.js +34 -33
  195. package/dist/js/treeshaking/schema/Schema.js +267 -69
  196. package/dist/js/treeshaking/schema/index.js +171 -121
  197. package/dist/js/treeshaking/schema/legacy.js +323 -256
  198. package/dist/js/treeshaking/types/config/deploy.js +1 -0
  199. package/dist/js/treeshaking/types/config/dev.js +1 -0
  200. package/dist/js/treeshaking/types/config/experiments.js +1 -0
  201. package/dist/js/treeshaking/types/config/html.js +1 -0
  202. package/dist/js/treeshaking/types/config/index.js +0 -1
  203. package/dist/js/treeshaking/types/config/output.js +1 -0
  204. package/dist/js/treeshaking/types/config/performance.js +1 -0
  205. package/dist/js/treeshaking/types/config/security.js +1 -0
  206. package/dist/js/treeshaking/types/config/source.js +1 -0
  207. package/dist/js/treeshaking/types/config/tools.js +1 -0
  208. package/dist/js/treeshaking/types/hooks.js +1 -0
  209. package/dist/js/treeshaking/types/index.js +0 -1
  210. package/dist/js/treeshaking/types/legacyConfig/deploy.js +1 -0
  211. package/dist/js/treeshaking/types/legacyConfig/dev.js +1 -0
  212. package/dist/js/treeshaking/types/legacyConfig/index.js +1 -0
  213. package/dist/js/treeshaking/types/legacyConfig/output.js +1 -1
  214. package/dist/js/treeshaking/types/legacyConfig/source.js +1 -0
  215. package/dist/js/treeshaking/types/legacyConfig/tools.js +1 -0
  216. package/dist/js/treeshaking/utils/commands.js +10 -5
  217. package/dist/js/treeshaking/utils/config.js +295 -117
  218. package/dist/js/treeshaking/utils/createFileWatcher.js +278 -118
  219. package/dist/js/treeshaking/utils/createServer.js +252 -67
  220. package/dist/js/treeshaking/utils/getServerInternalPlugins.js +210 -0
  221. package/dist/js/treeshaking/utils/getSpecifiedEntries.js +182 -55
  222. package/dist/js/treeshaking/utils/language.js +6 -5
  223. package/dist/js/treeshaking/utils/printInstructions.js +151 -29
  224. package/dist/js/treeshaking/utils/restart.js +184 -42
  225. package/dist/js/treeshaking/utils/routes.js +151 -27
  226. package/dist/js/treeshaking/utils/types.js +1 -0
  227. package/dist/types/analyze/Builder.d.ts +8 -0
  228. package/dist/types/analyze/constants.d.ts +10 -1
  229. package/dist/types/analyze/index.d.ts +2 -0
  230. package/dist/types/analyze/templates.d.ts +3 -1
  231. package/dist/types/analyze/utils.d.ts +2 -1
  232. package/dist/types/builder/builderPlugins/compatModern.d.ts +2 -1
  233. package/dist/types/builder/index.d.ts +3 -3
  234. package/dist/types/builder/webpackPlugins/routerPlugin.d.ts +1 -7
  235. package/dist/types/commands/index.d.ts +1 -1
  236. package/dist/types/commands/{start.d.ts → serve.d.ts} +0 -0
  237. package/dist/types/defineConfig.d.ts +1 -0
  238. package/dist/types/index.d.ts +7 -1
  239. package/dist/types/initialize/index.d.ts +2 -0
  240. package/dist/types/locale/en.d.ts +1 -1
  241. package/dist/types/locale/index.d.ts +2 -2
  242. package/dist/types/locale/zh.d.ts +1 -1
  243. package/dist/types/types/config/dev.d.ts +2 -2
  244. package/dist/types/types/config/index.d.ts +4 -0
  245. package/dist/types/types/config/output.d.ts +0 -1
  246. package/dist/types/types/config/source.d.ts +2 -0
  247. package/dist/types/types/config/tools.d.ts +2 -0
  248. package/dist/types/types/hooks.d.ts +8 -0
  249. package/dist/types/types/legacyConfig/dev.d.ts +1 -0
  250. package/dist/types/types/legacyConfig/output.d.ts +1 -1
  251. package/dist/types/types/legacyConfig/source.d.ts +1 -0
  252. package/dist/types/types/legacyConfig/tools.d.ts +1 -0
  253. package/dist/types/utils/commands.d.ts +2 -1
  254. package/dist/types/utils/config.d.ts +1 -0
  255. package/dist/types/utils/createServer.d.ts +1 -0
  256. package/dist/types/utils/getServerInternalPlugins.d.ts +2 -0
  257. package/dist/types/utils/restart.d.ts +1 -1
  258. package/package.json +26 -22
  259. package/dist/js/modern/commands/start.js +0 -30
  260. package/dist/js/node/commands/start.js +0 -38
  261. package/dist/js/treeshaking/commands/start.js +0 -69
@@ -1,105 +1,135 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
21
+ mod
22
+ ));
23
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
+ var __async = (__this, __arguments, generator) => {
25
+ return new Promise((resolve, reject) => {
26
+ var fulfilled = (value) => {
27
+ try {
28
+ step(generator.next(value));
29
+ } catch (e) {
30
+ reject(e);
31
+ }
32
+ };
33
+ var rejected = (value) => {
34
+ try {
35
+ step(generator.throw(value));
36
+ } catch (e) {
37
+ reject(e);
38
+ }
39
+ };
40
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
41
+ step((generator = generator.apply(__this, __arguments)).next());
42
+ });
43
+ };
44
+ var routerPlugin_exports = {};
45
+ __export(routerPlugin_exports, {
46
+ default: () => RouterPlugin
5
47
  });
6
- exports.default = void 0;
7
- var _path = _interopRequireDefault(require("path"));
8
- var _utils = require("@modern-js/utils");
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
- const PLUGIN_NAME = 'ModernjsRoutePlugin';
48
+ module.exports = __toCommonJS(routerPlugin_exports);
49
+ var import_path = __toESM(require("path"));
50
+ var import_utils = require("@modern-js/utils");
51
+ const PLUGIN_NAME = "ModernjsRoutePlugin";
12
52
  class RouterPlugin {
13
- constructor(options) {
14
- _defineProperty(this, "existNestedRoutes", void 0);
15
- this.existNestedRoutes = options.existNestedRoutes;
16
- }
17
53
  apply(compiler) {
18
- const {
19
- existNestedRoutes
20
- } = this;
21
- const {
22
- target
23
- } = compiler.options;
24
- if (target === 'node' || Array.isArray(target) && target.includes('node')) {
25
- return;
26
- }
27
- if (!existNestedRoutes) {
54
+ const { target } = compiler.options;
55
+ if (target === "node" || Array.isArray(target) && target.includes("node")) {
28
56
  return;
29
57
  }
30
- const {
31
- webpack
32
- } = compiler;
33
- const {
34
- Compilation,
35
- sources
36
- } = webpack;
37
- const {
38
- RawSource
39
- } = sources;
40
- const {
41
- PROCESS_ASSETS_STAGE_REPORT
42
- } = Compilation;
58
+ const { webpack } = compiler;
59
+ const { Compilation, sources } = webpack;
60
+ const { RawSource } = sources;
61
+ const { PROCESS_ASSETS_STAGE_REPORT } = Compilation;
43
62
  const outputPath = compiler.options.output.path;
44
- const newAssetsMap = new Map();
45
- const normalizePath = path => {
46
- if (!path.endsWith('/')) {
47
- return `${path}/`;
63
+ const newAssetsMap = /* @__PURE__ */ new Map();
64
+ const normalizePath = (path2) => {
65
+ if (!path2.endsWith("/")) {
66
+ return `${path2}/`;
48
67
  }
49
- return path;
68
+ return path2;
50
69
  };
51
- compiler.hooks.thisCompilation.tap(PLUGIN_NAME, compilation => {
52
- compilation.hooks.processAssets.tapPromise({
53
- name: PLUGIN_NAME,
54
- stage: PROCESS_ASSETS_STAGE_REPORT
55
- }, async () => {
56
- const stats = compilation.getStats().toJson({
57
- chunkGroups: true,
58
- chunks: true
59
- });
60
- const {
61
- publicPath
62
- } = stats;
63
- const routeAssets = {};
64
- const {
65
- namedChunkGroups,
66
- assetsByChunkName
67
- } = stats;
68
- if (!namedChunkGroups || !assetsByChunkName) {
69
- _utils.logger.warn('Route manifest does not exist, performance will be affected');
70
- return;
71
- }
72
- for (const [name, chunkGroup] of Object.entries(namedChunkGroups)) {
73
- routeAssets[name] = {
74
- chunkIds: chunkGroup.chunks,
75
- assets: assetsByChunkName[name].map(item => publicPath ? normalizePath(publicPath) + item : item)
70
+ compiler.hooks.thisCompilation.tap(PLUGIN_NAME, (compilation) => {
71
+ compilation.hooks.processAssets.tapPromise(
72
+ {
73
+ name: PLUGIN_NAME,
74
+ stage: PROCESS_ASSETS_STAGE_REPORT
75
+ },
76
+ () => __async(this, null, function* () {
77
+ const stats = compilation.getStats().toJson({
78
+ chunkGroups: true,
79
+ chunks: true
80
+ });
81
+ const { publicPath } = stats;
82
+ const routeAssets = {};
83
+ const { namedChunkGroups, assetsByChunkName } = stats;
84
+ if (!namedChunkGroups || !assetsByChunkName) {
85
+ import_utils.logger.warn(
86
+ "Route manifest does not exist, performance will be affected"
87
+ );
88
+ return;
89
+ }
90
+ for (const [name, chunkGroup] of Object.entries(namedChunkGroups)) {
91
+ if (assetsByChunkName[name]) {
92
+ routeAssets[name] = {
93
+ chunkIds: chunkGroup.chunks,
94
+ assets: assetsByChunkName[name].map(
95
+ (item) => publicPath ? normalizePath(publicPath) + item : item
96
+ )
97
+ };
98
+ }
99
+ }
100
+ const manifest = {
101
+ routeAssets
76
102
  };
77
- }
78
- const manifest = {
79
- routeAssets
80
- };
81
- const injectedContent = `
103
+ const injectedContent = `
82
104
  ;(function(){
83
- window.${_utils.ROUTE_MANIFEST} = ${JSON.stringify(manifest)};
105
+ window.${import_utils.ROUTE_MANIFEST} = ${JSON.stringify(manifest)};
84
106
  })();
85
107
  `;
86
- const entrypointsArray = Array.from(compilation.entrypoints.entries());
87
- const entryChunkIds = entrypointsArray.map(entrypoint => entrypoint[0]);
88
- const entryChunks = [...compilation.chunks].filter(chunk => {
89
- return entryChunkIds.includes(chunk.name);
90
- });
91
- const entryChunkFiles = entryChunks.map(chunk => [...chunk.files][0]);
92
- for (const file of entryChunkFiles) {
93
- const asset = compilation.assets[file];
94
- const newContent = `${injectedContent}${asset.source().toString()}`;
95
- newAssetsMap.set(_path.default.join(outputPath, file), newContent);
96
- compilation.updateAsset(file, new RawSource(newContent));
97
- }
98
- const filename = _path.default.join(outputPath, _utils.ROUTE_MINIFEST_FILE);
99
- await _utils.fs.ensureFile(filename);
100
- await _utils.fs.writeFile(filename, JSON.stringify(manifest, null, 2));
101
- });
108
+ const entrypointsArray = Array.from(
109
+ compilation.entrypoints.entries()
110
+ );
111
+ const entryChunkIds = entrypointsArray.map(
112
+ (entrypoint) => entrypoint[0]
113
+ );
114
+ const entryChunks = [...compilation.chunks].filter((chunk) => {
115
+ return entryChunkIds.includes(chunk.name);
116
+ });
117
+ const entryChunkFiles = entryChunks.map(
118
+ (chunk) => [...chunk.files].find((fname) => fname.includes(".js"))
119
+ );
120
+ for (const file of entryChunkFiles) {
121
+ const asset = compilation.assets[file];
122
+ const newContent = `${injectedContent}${asset.source().toString()}`;
123
+ newAssetsMap.set(import_path.default.join(outputPath, file), newContent);
124
+ compilation.updateAsset(file, new RawSource(newContent));
125
+ }
126
+ const filename = import_path.default.join(outputPath, import_utils.ROUTE_MINIFEST_FILE);
127
+ yield import_utils.fs.ensureFile(filename);
128
+ yield import_utils.fs.writeFile(filename, JSON.stringify(manifest, null, 2));
129
+ })
130
+ );
102
131
  });
103
132
  }
104
133
  }
105
- exports.default = RouterPlugin;
134
+ // Annotate the CommonJS export names for ESM import in node:
135
+ 0 && (module.exports = {});
@@ -1,73 +1,112 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
+ var __export = (target, all) => {
23
+ for (var name in all)
24
+ __defProp(target, name, { get: all[name], enumerable: true });
25
+ };
26
+ var __copyProps = (to, from, except, desc) => {
27
+ if (from && typeof from === "object" || typeof from === "function") {
28
+ for (let key of __getOwnPropNames(from))
29
+ if (!__hasOwnProp.call(to, key) && key !== except)
30
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
31
+ }
32
+ return to;
33
+ };
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+ var __async = (__this, __arguments, generator) => {
36
+ return new Promise((resolve, reject) => {
37
+ var fulfilled = (value) => {
38
+ try {
39
+ step(generator.next(value));
40
+ } catch (e) {
41
+ reject(e);
42
+ }
43
+ };
44
+ var rejected = (value) => {
45
+ try {
46
+ step(generator.throw(value));
47
+ } catch (e) {
48
+ reject(e);
49
+ }
50
+ };
51
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
52
+ step((generator = generator.apply(__this, __arguments)).next());
53
+ });
54
+ };
55
+ var build_exports = {};
56
+ __export(build_exports, {
57
+ build: () => build
5
58
  });
6
- exports.build = void 0;
7
- var _core = require("@modern-js/core");
8
- var _utils = require("@modern-js/utils");
9
- var _routes = require("../utils/routes");
10
- var _config = require("../utils/config");
11
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
12
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
14
- const build = async (api, options) => {
15
- if (options !== null && options !== void 0 && options.analyze) {
16
- // Builder will read this env var to enable bundle analyzer
17
- process.env.BUNDLE_ANALYZE = 'true';
59
+ module.exports = __toCommonJS(build_exports);
60
+ var import_core = require("@modern-js/core");
61
+ var import_utils = require("@modern-js/utils");
62
+ var import_routes = require("../utils/routes");
63
+ var import_config = require("../utils/config");
64
+ const build = (api, options) => __async(void 0, null, function* () {
65
+ if (options == null ? void 0 : options.analyze) {
66
+ process.env.BUNDLE_ANALYZE = "true";
18
67
  }
19
68
  let resolvedConfig = api.useResolvedConfigContext();
20
69
  const appContext = api.useAppContext();
21
70
  const hookRunners = api.useHookRunners();
22
- const {
23
- apiOnly
24
- } = appContext;
71
+ const { apiOnly } = appContext;
25
72
  if (apiOnly) {
26
- const {
27
- appDirectory,
28
- distDirectory,
29
- serverConfigFile
30
- } = appContext;
31
- await hookRunners.beforeBuild({
32
- // "null" bundlerConfigs
33
- bundlerConfigs: undefined
73
+ const { appDirectory: appDirectory2, distDirectory: distDirectory2, serverConfigFile: serverConfigFile2 } = appContext;
74
+ yield hookRunners.beforeBuild({
75
+ bundlerConfigs: void 0
34
76
  });
35
- await (0, _config.buildServerConfig)({
36
- appDirectory,
37
- distDirectory,
38
- configFile: serverConfigFile
77
+ yield (0, import_config.buildServerConfig)({
78
+ appDirectory: appDirectory2,
79
+ distDirectory: distDirectory2,
80
+ configFile: serverConfigFile2
39
81
  });
40
- await (0, _routes.generateRoutes)(appContext);
41
- await hookRunners.afterBuild({
42
- // "null" stats
43
- stats: undefined
82
+ yield (0, import_routes.generateRoutes)(appContext);
83
+ yield hookRunners.afterBuild({
84
+ stats: void 0
44
85
  });
45
86
  return;
46
87
  }
47
- resolvedConfig = _objectSpread(_objectSpread({}, resolvedConfig), {}, {
48
- cliOptions: options
49
- });
50
- _core.ResolvedConfigContext.set(resolvedConfig);
51
- const {
52
- distDirectory,
53
- appDirectory,
54
- serverConfigFile
55
- } = appContext;
56
- await (0, _config.buildServerConfig)({
88
+ resolvedConfig = __spreadProps(__spreadValues({}, resolvedConfig), { cliOptions: options });
89
+ import_core.ResolvedConfigContext.set(resolvedConfig);
90
+ const { distDirectory, appDirectory, serverConfigFile } = appContext;
91
+ yield (0, import_config.buildServerConfig)({
57
92
  appDirectory,
58
93
  distDirectory,
59
94
  configFile: serverConfigFile
60
95
  });
61
96
  try {
62
- _utils.logger.info('Create a production build...\n');
97
+ import_utils.logger.info("Create a production build...\n");
63
98
  if (!appContext.builder) {
64
- throw new Error('Expect the Builder to have been initialized, But the appContext.builder received `undefined`');
99
+ throw new Error(
100
+ "Expect the Builder to have been initialized, But the appContext.builder received `undefined`"
101
+ );
65
102
  }
66
- await appContext.builder.build();
103
+ yield appContext.builder.build();
67
104
  } catch (error) {
68
- (0, _utils.printBuildError)(error);
69
- // eslint-disable-next-line no-process-exit
105
+ (0, import_utils.printBuildError)(error);
70
106
  process.exit(1);
71
107
  }
72
- };
73
- exports.build = build;
108
+ });
109
+ // Annotate the CommonJS export names for ESM import in node:
110
+ 0 && (module.exports = {
111
+ build
112
+ });
@@ -1,12 +1,51 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var __async = (__this, __arguments, generator) => {
19
+ return new Promise((resolve, reject) => {
20
+ var fulfilled = (value) => {
21
+ try {
22
+ step(generator.next(value));
23
+ } catch (e) {
24
+ reject(e);
25
+ }
26
+ };
27
+ var rejected = (value) => {
28
+ try {
29
+ step(generator.throw(value));
30
+ } catch (e) {
31
+ reject(e);
32
+ }
33
+ };
34
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
35
+ step((generator = generator.apply(__this, __arguments)).next());
36
+ });
37
+ };
38
+ var deploy_exports = {};
39
+ __export(deploy_exports, {
40
+ deploy: () => deploy
5
41
  });
6
- exports.deploy = void 0;
7
- const deploy = async (api, options) => {
42
+ module.exports = __toCommonJS(deploy_exports);
43
+ const deploy = (api, options) => __async(void 0, null, function* () {
8
44
  const hookRunners = api.useHookRunners();
9
- await hookRunners.beforeDeploy(options);
10
- await hookRunners.afterDeploy(options);
11
- };
12
- exports.deploy = deploy;
45
+ yield hookRunners.beforeDeploy(options);
46
+ yield hookRunners.afterDeploy(options);
47
+ });
48
+ // Annotate the CommonJS export names for ESM import in node:
49
+ 0 && (module.exports = {
50
+ deploy
51
+ });
@@ -1,47 +1,97 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
+ var __export = (target, all) => {
23
+ for (var name in all)
24
+ __defProp(target, name, { get: all[name], enumerable: true });
25
+ };
26
+ var __copyProps = (to, from, except, desc) => {
27
+ if (from && typeof from === "object" || typeof from === "function") {
28
+ for (let key of __getOwnPropNames(from))
29
+ if (!__hasOwnProp.call(to, key) && key !== except)
30
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
31
+ }
32
+ return to;
33
+ };
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+ var __async = (__this, __arguments, generator) => {
36
+ return new Promise((resolve, reject) => {
37
+ var fulfilled = (value) => {
38
+ try {
39
+ step(generator.next(value));
40
+ } catch (e) {
41
+ reject(e);
42
+ }
43
+ };
44
+ var rejected = (value) => {
45
+ try {
46
+ step(generator.throw(value));
47
+ } catch (e) {
48
+ reject(e);
49
+ }
50
+ };
51
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
52
+ step((generator = generator.apply(__this, __arguments)).next());
53
+ });
54
+ };
55
+ var dev_exports = {};
56
+ __export(dev_exports, {
57
+ dev: () => dev
5
58
  });
6
- exports.dev = void 0;
7
- var _core = require("@modern-js/core");
8
- var _createFileWatcher = require("../utils/createFileWatcher");
9
- var _printInstructions = require("../utils/printInstructions");
10
- var _createServer = require("../utils/createServer");
11
- var _routes = require("../utils/routes");
12
- var _getSpecifiedEntries = require("../utils/getSpecifiedEntries");
13
- var _config = require("../utils/config");
14
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
- const dev = async (api, options) => {
18
- var _normalizedConfig$too;
59
+ module.exports = __toCommonJS(dev_exports);
60
+ var import_core = require("@modern-js/core");
61
+ var import_createFileWatcher = require("../utils/createFileWatcher");
62
+ var import_printInstructions = require("../utils/printInstructions");
63
+ var import_createServer = require("../utils/createServer");
64
+ var import_routes = require("../utils/routes");
65
+ var import_getSpecifiedEntries = require("../utils/getSpecifiedEntries");
66
+ var import_config = require("../utils/config");
67
+ var import_getServerInternalPlugins = require("../utils/getServerInternalPlugins");
68
+ const dev = (api, options) => __async(void 0, null, function* () {
69
+ var _a;
19
70
  if (options.analyze) {
20
- // Builder will read this env var to enable bundle analyzer
21
- process.env.BUNDLE_ANALYZE = 'true';
71
+ process.env.BUNDLE_ANALYZE = "true";
22
72
  }
23
73
  let normalizedConfig = api.useResolvedConfigContext();
24
74
  const appContext = api.useAppContext();
25
75
  const hookRunners = api.useHookRunners();
26
- normalizedConfig = _objectSpread(_objectSpread({}, normalizedConfig), {}, {
27
- cliOptions: options
28
- });
29
- _core.ResolvedConfigContext.set(normalizedConfig);
76
+ normalizedConfig = __spreadProps(__spreadValues({}, normalizedConfig), { cliOptions: options });
77
+ import_core.ResolvedConfigContext.set(normalizedConfig);
30
78
  const {
31
79
  appDirectory,
32
80
  distDirectory,
33
81
  port,
34
82
  apiOnly,
35
83
  entrypoints,
36
- serverConfigFile,
37
- serverInternalPlugins
84
+ serverConfigFile
38
85
  } = appContext;
39
- const checkedEntries = await (0, _getSpecifiedEntries.getSpecifiedEntries)(options.entry || false, entrypoints);
40
- api.setAppContext(_objectSpread(_objectSpread({}, appContext), {}, {
86
+ const checkedEntries = yield (0, import_getSpecifiedEntries.getSpecifiedEntries)(
87
+ options.entry || false,
88
+ entrypoints
89
+ );
90
+ api.setAppContext(__spreadProps(__spreadValues({}, appContext), {
41
91
  checkedEntries
42
92
  }));
43
93
  appContext.checkedEntries = checkedEntries;
44
- await (0, _config.buildServerConfig)({
94
+ yield (0, import_config.buildServerConfig)({
45
95
  appDirectory,
46
96
  distDirectory,
47
97
  configFile: serverConfigFile,
@@ -51,41 +101,48 @@ const dev = async (api, options) => {
51
101
  }
52
102
  }
53
103
  });
54
- await hookRunners.beforeDev();
55
- let compiler;
104
+ yield hookRunners.beforeDev();
56
105
  if (!appContext.builder && !apiOnly) {
57
- throw new Error('Expect the Builder to have been initialized, But the appContext.builder received `undefined`');
58
- }
59
- if (!apiOnly) {
60
- compiler = await appContext.builder.createCompiler();
106
+ throw new Error(
107
+ "Expect the Builder to have been initialized, But the appContext.builder received `undefined`"
108
+ );
61
109
  }
62
- await (0, _routes.generateRoutes)(appContext);
110
+ yield (0, import_routes.generateRoutes)(appContext);
111
+ const serverInternalPlugins = yield (0, import_getServerInternalPlugins.getServerInternalPlugins)(api);
63
112
  const serverOptions = {
64
- dev: _objectSpread({
113
+ dev: __spreadValues({
65
114
  port,
66
115
  https: normalizedConfig.dev.https
67
- }, (_normalizedConfig$too = normalizedConfig.tools) === null || _normalizedConfig$too === void 0 ? void 0 : _normalizedConfig$too.devServer),
68
- compiler: compiler || null,
116
+ }, (_a = normalizedConfig.tools) == null ? void 0 : _a.devServer),
69
117
  pwd: appDirectory,
70
118
  config: normalizedConfig,
71
119
  serverConfigFile,
72
- internalPlugins: (0, _createServer.injectDataLoaderPlugin)(serverInternalPlugins)
120
+ internalPlugins: (0, import_createServer.injectDataLoaderPlugin)(serverInternalPlugins)
73
121
  };
74
122
  if (apiOnly) {
75
- const app = await (0, _createServer.createServer)(serverOptions);
76
- app.listen(port, async err => {
123
+ const app = yield (0, import_createServer.createServer)(__spreadProps(__spreadValues({}, serverOptions), {
124
+ compiler: null
125
+ }));
126
+ app.listen(port, (err) => __async(void 0, null, function* () {
77
127
  if (err) {
78
128
  throw err;
79
129
  }
80
- (0, _printInstructions.printInstructions)(hookRunners, appContext, normalizedConfig);
81
- });
130
+ (0, import_printInstructions.printInstructions)(hookRunners, appContext, normalizedConfig);
131
+ }));
82
132
  } else {
83
- await appContext.builder.startDevServer({
84
- compiler,
133
+ const { server } = yield appContext.builder.startDevServer({
85
134
  printURLs: false,
86
135
  serverOptions
87
136
  });
137
+ (0, import_createServer.setServer)(server);
88
138
  }
89
- await (0, _createFileWatcher.createFileWatcher)(appContext, normalizedConfig.source.configDir, hookRunners);
90
- };
91
- exports.dev = dev;
139
+ yield (0, import_createFileWatcher.createFileWatcher)(
140
+ appContext,
141
+ normalizedConfig.source.configDir,
142
+ hookRunners
143
+ );
144
+ });
145
+ // Annotate the CommonJS export names for ESM import in node:
146
+ 0 && (module.exports = {
147
+ dev
148
+ });