@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,94 +1,136 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __export = (target, all) => {
25
+ for (var name in all)
26
+ __defProp(target, name, { get: all[name], enumerable: true });
27
+ };
28
+ var __copyProps = (to, from, except, desc) => {
29
+ if (from && typeof from === "object" || typeof from === "function") {
30
+ for (let key of __getOwnPropNames(from))
31
+ if (!__hasOwnProp.call(to, key) && key !== except)
32
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
33
+ }
34
+ return to;
35
+ };
36
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
37
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
38
+ mod
39
+ ));
40
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
41
+ var __async = (__this, __arguments, generator) => {
42
+ return new Promise((resolve, reject) => {
43
+ var fulfilled = (value) => {
44
+ try {
45
+ step(generator.next(value));
46
+ } catch (e) {
47
+ reject(e);
48
+ }
49
+ };
50
+ var rejected = (value) => {
51
+ try {
52
+ step(generator.throw(value));
53
+ } catch (e) {
54
+ reject(e);
55
+ }
56
+ };
57
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
58
+ step((generator = generator.apply(__this, __arguments)).next());
59
+ });
60
+ };
61
+ var builder_exports = {};
62
+ __export(builder_exports, {
63
+ createBuilderForModern: () => createBuilderForModern,
64
+ createBuilderOptions: () => createBuilderOptions,
65
+ createBuilderProviderConfig: () => createBuilderProviderConfig
5
66
  });
6
- exports.createBuilderForEdenX = createBuilderForEdenX;
7
- exports.createBuilderOptions = createBuilderOptions;
8
- exports.createBuilderProviderConfig = createBuilderProviderConfig;
9
- var _builder = require("@modern-js/builder");
10
- var _builderWebpackProvider = require("@modern-js/builder-webpack-provider");
11
- var _utils = require("@modern-js/utils");
12
- var _compatModern = require("./builderPlugins/compatModern");
13
- var _share = require("./share");
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
- 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; }
17
- 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; }
18
- 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; }
67
+ module.exports = __toCommonJS(builder_exports);
68
+ var import_builder = require("@modern-js/builder");
69
+ var import_builder_webpack_provider = require("@modern-js/builder-webpack-provider");
70
+ var import_utils = require("@modern-js/utils");
71
+ var import_compatModern = require("./builderPlugins/compatModern");
72
+ var import_share = require("./share");
19
73
  function getBuilderTargets(normalizedConfig) {
20
- const targets = ['web'];
21
- if (normalizedConfig.output.enableModernMode && !targets.includes('modern-web')) {
22
- targets.push('modern-web');
23
- }
24
- if ((0, _utils.isUseSSRBundle)(normalizedConfig)) {
25
- targets.push('node');
74
+ const targets = ["web"];
75
+ if ((0, import_utils.isUseSSRBundle)(normalizedConfig)) {
76
+ targets.push("node");
26
77
  }
27
78
  return targets;
28
79
  }
29
- async function createBuilderForEdenX({
30
- normalizedConfig,
31
- appContext,
32
- compatPluginConfig
33
- }) {
34
- // create webpack provider
35
- const builderConfig = createBuilderProviderConfig(normalizedConfig, appContext);
36
- const webpackProvider = (0, _builderWebpackProvider.builderWebpackProvider)({
37
- builderConfig
80
+ function createBuilderForModern(_0) {
81
+ return __async(this, arguments, function* ({
82
+ normalizedConfig,
83
+ appContext,
84
+ compatPluginConfig
85
+ }) {
86
+ const builderConfig = createBuilderProviderConfig(
87
+ normalizedConfig,
88
+ appContext
89
+ );
90
+ const webpackProvider = (0, import_builder_webpack_provider.builderWebpackProvider)({
91
+ builderConfig
92
+ });
93
+ const target = getBuilderTargets(normalizedConfig);
94
+ const builderOptions = createBuilderOptions(target, appContext);
95
+ const builder = yield (0, import_builder.createBuilder)(webpackProvider, builderOptions);
96
+ yield applyBuilderPlugins(
97
+ builder,
98
+ normalizedConfig,
99
+ appContext,
100
+ compatPluginConfig
101
+ );
102
+ return builder;
38
103
  });
39
- const target = getBuilderTargets(normalizedConfig);
40
- const builderOptions = createBuilderOptions(target, appContext);
41
- const builder = await (0, _builder.createBuilder)(webpackProvider, builderOptions);
42
- await applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig);
43
- return builder;
44
104
  }
45
105
  function createBuilderProviderConfig(normalizedConfig, appContext) {
46
- var _normalizedConfig$ser;
106
+ var _a;
47
107
  const output = createOutputConfig(normalizedConfig, appContext);
48
- return _objectSpread(_objectSpread({}, normalizedConfig), {}, {
49
- source: _objectSpread(_objectSpread({}, normalizedConfig.source), {}, {
50
- resolveExtensionPrefix: '.web'
51
- }),
108
+ const htmlConfig = __spreadValues({}, normalizedConfig.html);
109
+ if (!htmlConfig.template) {
110
+ htmlConfig.templateByEntries = __spreadValues(__spreadValues({}, htmlConfig.templateByEntries), appContext.htmlTemplates);
111
+ }
112
+ return __spreadProps(__spreadValues({}, normalizedConfig), {
52
113
  output,
53
- dev: {
54
- port: (_normalizedConfig$ser = normalizedConfig.server) === null || _normalizedConfig$ser === void 0 ? void 0 : _normalizedConfig$ser.port,
55
- https: normalizedConfig.dev.https,
56
- assetPrefix: normalizedConfig.dev.assetPrefix
57
- },
58
- html: _objectSpread(_objectSpread({}, normalizedConfig.html), {}, {
59
- templateByEntries: normalizedConfig.html.templateByEntries || appContext.htmlTemplates
114
+ dev: __spreadProps(__spreadValues({}, normalizedConfig.dev), {
115
+ port: (_a = normalizedConfig.server) == null ? void 0 : _a.port
60
116
  }),
61
- performance: _objectSpread(_objectSpread({}, normalizedConfig.performance), {}, {
62
- // `@modern-js/webpack` used to remove moment locale by default
63
- removeMomentLocale: true
64
- })
117
+ html: htmlConfig
65
118
  });
66
- function createOutputConfig(config, appContext) {
67
- const defaultCopyPattern = (0, _share.createCopyPattern)(appContext, config, 'upload');
68
- const {
69
- copy
70
- } = config.output;
71
- const copyOptions = Array.isArray(copy) ? copy : copy === null || copy === void 0 ? void 0 : copy.patterns;
72
- const builderCopy = [...(copyOptions || []), defaultCopyPattern];
73
- return _objectSpread(_objectSpread({}, config.output), {}, {
119
+ function createOutputConfig(config, appContext2) {
120
+ const defaultCopyPattern = (0, import_share.createCopyPattern)(appContext2, config, "upload");
121
+ const { copy } = config.output;
122
+ const copyOptions = Array.isArray(copy) ? copy : copy == null ? void 0 : copy.patterns;
123
+ const builderCopy = [...copyOptions || [], defaultCopyPattern];
124
+ return __spreadProps(__spreadValues({}, config.output), {
74
125
  copy: builderCopy,
75
- // We need to do this in the app-tools prepare hook because some files will be generated into the dist directory in the analyze process
76
126
  cleanDistPath: false
77
127
  });
78
128
  }
79
129
  }
80
130
  function createBuilderOptions(target, appContext) {
81
- // create entries
82
-
83
131
  const entries = {};
84
- const {
85
- entrypoints = [],
86
- checkedEntries
87
- } = appContext;
88
- for (const {
89
- entryName,
90
- entry
91
- } of entrypoints) {
132
+ const { entrypoints = [], checkedEntries } = appContext;
133
+ for (const { entryName, entry } of entrypoints) {
92
134
  if (checkedEntries && !checkedEntries.includes(entryName)) {
93
135
  continue;
94
136
  }
@@ -101,33 +143,35 @@ function createBuilderOptions(target, appContext) {
101
143
  return {
102
144
  cwd: appContext.appDirectory,
103
145
  target,
104
- configPath: appContext.configFile || undefined,
146
+ configPath: appContext.configFile || void 0,
105
147
  entry: entries,
106
148
  framework: appContext.metaName
107
149
  };
108
150
  }
109
-
110
- /**
111
- * register builder Plugin by condition
112
- */
113
- async function applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig) {
114
- if (!normalizedConfig.output.disableNodePolyfill) {
115
- const {
116
- PluginNodePolyfill
117
- } = await Promise.resolve().then(() => _interopRequireWildcard(require('@modern-js/builder-plugin-node-polyfill')));
118
- builder.addPlugins([PluginNodePolyfill()]);
119
- }
120
- if (normalizedConfig.tools.esbuild) {
121
- const {
122
- esbuild: esbuildOptions
123
- } = normalizedConfig.tools;
124
- const {
125
- PluginEsbuild
126
- } = await Promise.resolve().then(() => _interopRequireWildcard(require('@modern-js/builder-plugin-esbuild')));
127
- builder.addPlugins([PluginEsbuild({
128
- loader: false,
129
- minimize: (0, _utils.applyOptionsChain)({}, esbuildOptions)
130
- })]);
131
- }
132
- builder.addPlugins([(0, _compatModern.PluginCompatModern)(appContext, normalizedConfig, compatPluginConfig)]);
133
- }
151
+ function applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig) {
152
+ return __async(this, null, function* () {
153
+ if (!normalizedConfig.output.disableNodePolyfill) {
154
+ const { PluginNodePolyfill } = yield Promise.resolve().then(() => __toESM(require("@modern-js/builder-plugin-node-polyfill")));
155
+ builder.addPlugins([PluginNodePolyfill()]);
156
+ }
157
+ if (normalizedConfig.tools.esbuild) {
158
+ const { esbuild: esbuildOptions } = normalizedConfig.tools;
159
+ const { PluginEsbuild } = yield Promise.resolve().then(() => __toESM(require("@modern-js/builder-plugin-esbuild")));
160
+ builder.addPlugins([
161
+ PluginEsbuild({
162
+ loader: false,
163
+ minimize: (0, import_utils.applyOptionsChain)({}, esbuildOptions)
164
+ })
165
+ ]);
166
+ }
167
+ builder.addPlugins([
168
+ (0, import_compatModern.PluginCompatModern)(appContext, normalizedConfig, compatPluginConfig)
169
+ ]);
170
+ });
171
+ }
172
+ // Annotate the CommonJS export names for ESM import in node:
173
+ 0 && (module.exports = {
174
+ createBuilderForModern,
175
+ createBuilderOptions,
176
+ createBuilderProviderConfig
177
+ });
@@ -1,27 +1,38 @@
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 routerLoader_exports = {};
19
+ __export(routerLoader_exports, {
20
+ default: () => routerLoader_default
5
21
  });
6
- exports.default = void 0;
22
+ module.exports = __toCommonJS(routerLoader_exports);
23
+ var import_utils = require("@modern-js/utils");
7
24
  function loader(source) {
8
- // eslint-disable-next-line @babel/no-invalid-this
9
25
  this.cacheable();
10
- // eslint-disable-next-line @babel/no-invalid-this
11
- const {
12
- target
13
- } = this._compiler.options;
14
- if (target === 'node' || Array.isArray(target) && target.includes('node')) {
26
+ const { target } = this._compiler.options;
27
+ if (target === "node" || Array.isArray(target) && target.includes("node")) {
15
28
  return source;
16
29
  }
17
- // eslint-disable-next-line @babel/no-invalid-this
18
- const {
19
- resourcePath
20
- } = this;
30
+ const { resourcePath } = this;
21
31
  const code = `
22
- export { default } from "${resourcePath}";
32
+ export { default } from "${(0, import_utils.slash)(resourcePath)}";
23
33
  `;
24
34
  return code;
25
35
  }
26
- var _default = loader;
27
- exports.default = _default;
36
+ var routerLoader_default = loader;
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {});
@@ -1,11 +1,28 @@
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 serverModuleLoader_exports = {};
19
+ __export(serverModuleLoader_exports, {
20
+ default: () => serverModuleLoader_default
5
21
  });
6
- exports.default = void 0;
22
+ module.exports = __toCommonJS(serverModuleLoader_exports);
7
23
  function loader() {
8
24
  return `module.exports = {}`;
9
25
  }
10
- var _default = loader;
11
- exports.default = _default;
26
+ var serverModuleLoader_default = loader;
27
+ // Annotate the CommonJS export names for ESM import in node:
28
+ 0 && (module.exports = {});
@@ -1,51 +1,75 @@
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 share_exports = {};
25
+ __export(share_exports, {
26
+ createCopyPattern: () => createCopyPattern
5
27
  });
6
- exports.createCopyPattern = createCopyPattern;
7
- var _path = _interopRequireDefault(require("path"));
8
- var _lodash = require("@modern-js/utils/lodash");
9
- var _utils = require("@modern-js/utils");
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
+ module.exports = __toCommonJS(share_exports);
29
+ var import_path = __toESM(require("path"));
30
+ var import_utils = require("@modern-js/utils");
11
31
  function createCopyPattern(appContext, config, patternsType, chain) {
12
- const configDir = _path.default.resolve(appContext.appDirectory, config.source.configDir || './config');
13
- const uploadDir = _path.default.posix.join(configDir.replace(/\\/g, '/'), 'upload');
14
- const publicDir = _path.default.posix.join(configDir.replace(/\\/g, '/'), 'public');
32
+ const configDir = import_path.default.resolve(
33
+ appContext.appDirectory,
34
+ config.source.configDir || "./config"
35
+ );
36
+ const uploadDir = import_path.default.posix.join(configDir.replace(/\\/g, "/"), "upload");
37
+ const publicDir = import_path.default.posix.join(configDir.replace(/\\/g, "/"), "public");
15
38
  const minifiedJsRexExp = /\.min\.js/;
16
- const info = file => ({
17
- // If the file name ends with `.min.js`, we assume it's a compressed file.
18
- // So we don't want copy-webpack-plugin to minify it.
19
- // ref: https://github.com/webpack-contrib/copy-webpack-plugin#info
39
+ const info = (file) => ({
20
40
  minimized: minifiedJsRexExp.test(file.sourceFilename)
21
41
  });
22
- if (patternsType === 'public') {
42
+ if (patternsType === "public") {
23
43
  if (!chain) {
24
44
  throw new Error("expect get a webpackChain, but receive 'undefined'");
25
45
  }
26
46
  return {
27
47
  info,
28
- from: '**/*',
29
- to: 'public',
48
+ from: "**/*",
49
+ to: "public",
30
50
  context: publicDir,
31
51
  noErrorOnMissing: true,
32
- // eslint-disable-next-line node/prefer-global/buffer
33
52
  transform: (content, absoluteFrom) => {
34
53
  if (!/\.html?$/.test(absoluteFrom)) {
35
54
  return content;
36
55
  }
37
- return (0, _lodash.template)(content.toString('utf8'))({
38
- assetPrefix: (0, _utils.removeTailSlash)(chain.output.get('publicPath'))
39
- });
56
+ return content.toString("utf8").replace(
57
+ /<%=\s*assetPrefix\s*%>/g,
58
+ (0, import_utils.removeTailSlash)(chain.output.get("publicPath"))
59
+ );
40
60
  }
41
61
  };
42
62
  } else {
43
63
  return {
44
64
  info,
45
- from: '**/*',
46
- to: 'upload',
65
+ from: "**/*",
66
+ to: "upload",
47
67
  context: uploadDir,
48
68
  noErrorOnMissing: true
49
69
  };
50
70
  }
51
- }
71
+ }
72
+ // Annotate the CommonJS export names for ESM import in node:
73
+ 0 && (module.exports = {
74
+ createCopyPattern
75
+ });
@@ -1,36 +1,53 @@
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 htmlAsyncChunkPlugin_exports = {};
19
+ __export(htmlAsyncChunkPlugin_exports, {
20
+ HtmlAsyncChunkPlugin: () => HtmlAsyncChunkPlugin
5
21
  });
6
- exports.HtmlAsyncChunkPlugin = void 0;
7
- 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; }
22
+ module.exports = __toCommonJS(htmlAsyncChunkPlugin_exports);
8
23
  class HtmlAsyncChunkPlugin {
9
24
  constructor(htmlWebpackPlugin) {
10
- _defineProperty(this, "name", void 0);
11
- _defineProperty(this, "htmlWebpackPlugin", void 0);
12
- this.name = 'HtmlAsyncChunkPlugin';
25
+ this.name = "HtmlAsyncChunkPlugin";
13
26
  this.htmlWebpackPlugin = htmlWebpackPlugin;
14
27
  }
15
28
  apply(compiler) {
16
- compiler.hooks.compilation.tap(this.name, compilation => {
17
- const hooks = this.htmlWebpackPlugin.getHooks(compilation);
18
- hooks.alterAssetTagGroups.tap(this.name, assets => {
19
- const tags = [...assets.headTags, ...assets.bodyTags];
20
- for (const tag of tags) {
21
- if (tag.tagName === 'script') {
22
- const {
23
- attributes
24
- } = tag;
25
- if (attributes && attributes.defer === true) {
26
- attributes.async = true;
27
- delete attributes.defer;
29
+ compiler.hooks.compilation.tap(
30
+ this.name,
31
+ (compilation) => {
32
+ const hooks = this.htmlWebpackPlugin.getHooks(compilation);
33
+ hooks.alterAssetTagGroups.tap(this.name, (assets) => {
34
+ const tags = [...assets.headTags, ...assets.bodyTags];
35
+ for (const tag of tags) {
36
+ if (tag.tagName === "script") {
37
+ const { attributes } = tag;
38
+ if (attributes && attributes.defer === true) {
39
+ attributes.async = true;
40
+ delete attributes.defer;
41
+ }
28
42
  }
29
43
  }
30
- }
31
- return assets;
32
- });
33
- });
44
+ return assets;
45
+ });
46
+ }
47
+ );
34
48
  }
35
49
  }
36
- exports.HtmlAsyncChunkPlugin = HtmlAsyncChunkPlugin;
50
+ // Annotate the CommonJS export names for ESM import in node:
51
+ 0 && (module.exports = {
52
+ HtmlAsyncChunkPlugin
53
+ });
@@ -1,40 +1,60 @@
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 htmlBottomTemplate_exports = {};
19
+ __export(htmlBottomTemplate_exports, {
20
+ BottomTemplatePlugin: () => BottomTemplatePlugin
5
21
  });
6
- exports.BottomTemplatePlugin = void 0;
7
- 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; }
22
+ module.exports = __toCommonJS(htmlBottomTemplate_exports);
8
23
  class BottomTemplatePlugin {
9
24
  constructor(htmlWebpackPlugin) {
10
- _defineProperty(this, "htmlWebpackPlugin", void 0);
11
- _defineProperty(this, "bottomTemplateReg", /<!--<\?-\s*bottomTemplate\s*\?>-->/);
12
- _defineProperty(this, "bodyRegExp", /(<\/\s*body\s*>)/i);
13
- _defineProperty(this, "name", void 0);
25
+ this.bottomTemplateReg = /<!--<\?-\s*bottomTemplate\s*\?>-->/;
26
+ this.bodyRegExp = /(<\/\s*body\s*>)/i;
14
27
  this.htmlWebpackPlugin = htmlWebpackPlugin;
15
- this.name = 'bottom-template';
28
+ this.name = "bottom-template";
16
29
  }
17
30
  apply(compiler) {
18
- compiler.hooks.compilation.tap(this.name, compilation => {
19
- this.htmlWebpackPlugin.getHooks(compilation).beforeEmit.tap(this.name, data => {
20
- var _data$plugin$options;
21
- if (!((_data$plugin$options = data.plugin.options) !== null && _data$plugin$options !== void 0 && _data$plugin$options.__internal__)) {
22
- return data;
23
- }
24
- // 含有 <!--<?- bottomTemplate ?>--> 占位符时才需要注入 bottom.html
25
- if (this.bottomTemplateReg.test(data.html)) {
26
- // 清空占位符
27
- data.html = data.html.replace(this.bottomTemplateReg, '');
28
- const {
29
- bottomTemplate
30
- } = data.plugin.options;
31
- if (bottomTemplate) {
32
- data.html = data.html.replace(this.bodyRegExp, match => `\n${bottomTemplate}\n${match}`);
31
+ compiler.hooks.compilation.tap(
32
+ this.name,
33
+ (compilation) => {
34
+ this.htmlWebpackPlugin.getHooks(compilation).beforeEmit.tap(this.name, (data) => {
35
+ var _a;
36
+ if (!((_a = data.plugin.options) == null ? void 0 : _a.__internal__)) {
37
+ return data;
38
+ }
39
+ if (this.bottomTemplateReg.test(data.html)) {
40
+ data.html = data.html.replace(this.bottomTemplateReg, "");
41
+ const { bottomTemplate } = data.plugin.options;
42
+ if (bottomTemplate) {
43
+ data.html = data.html.replace(
44
+ this.bodyRegExp,
45
+ (match) => `
46
+ ${bottomTemplate}
47
+ ${match}`
48
+ );
49
+ }
33
50
  }
34
- }
35
- return data;
36
- });
37
- });
51
+ return data;
52
+ });
53
+ }
54
+ );
38
55
  }
39
56
  }
40
- exports.BottomTemplatePlugin = BottomTemplatePlugin;
57
+ // Annotate the CommonJS export names for ESM import in node:
58
+ 0 && (module.exports = {
59
+ BottomTemplatePlugin
60
+ });