@modern-js/app-tools 2.15.0 → 2.16.0

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 (268) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/dist/cjs/analyze/constants.js +37 -61
  3. package/dist/cjs/analyze/generateCode.js +102 -127
  4. package/dist/cjs/analyze/getBundleEntry.js +33 -66
  5. package/dist/cjs/analyze/getClientRoutes/getRoutes.js +61 -117
  6. package/dist/cjs/analyze/getClientRoutes/getRoutesLegacy.js +61 -115
  7. package/dist/cjs/analyze/getClientRoutes/index.js +15 -28
  8. package/dist/cjs/analyze/getClientRoutes/utils.js +24 -48
  9. package/dist/cjs/analyze/getFileSystemEntry.js +39 -79
  10. package/dist/cjs/analyze/getHtmlTemplate.js +88 -98
  11. package/dist/cjs/analyze/getServerRoutes.js +67 -110
  12. package/dist/cjs/analyze/index.js +265 -257
  13. package/dist/cjs/analyze/isDefaultExportFunction.js +66 -44
  14. package/dist/cjs/analyze/makeLegalIdentifier.js +7 -25
  15. package/dist/cjs/analyze/nestedRoutes.js +99 -104
  16. package/dist/cjs/analyze/templates.js +49 -110
  17. package/dist/cjs/analyze/utils.js +98 -102
  18. package/dist/cjs/builder/builder-rspack/adapterCopy.js +58 -100
  19. package/dist/cjs/builder/builder-rspack/index.js +14 -30
  20. package/dist/cjs/builder/builder-webpack/adapterModern.js +33 -50
  21. package/dist/cjs/builder/builder-webpack/createCopyPattern.js +16 -32
  22. package/dist/cjs/builder/builder-webpack/index.js +65 -46
  23. package/dist/cjs/builder/generator/createBuilderOptions.js +10 -26
  24. package/dist/cjs/builder/generator/createBuilderProviderConfig.js +11 -27
  25. package/dist/cjs/builder/generator/getBuilderTargets.js +13 -29
  26. package/dist/cjs/builder/generator/index.js +61 -55
  27. package/dist/cjs/builder/index.js +53 -43
  28. package/dist/cjs/builder/shared/builderPlugins/adapterBasic.js +13 -36
  29. package/dist/cjs/builder/shared/builderPlugins/adapterHtml.js +90 -90
  30. package/dist/cjs/builder/shared/builderPlugins/adapterSSR.js +108 -111
  31. package/dist/cjs/builder/shared/builderPlugins/index.js +20 -19
  32. package/dist/cjs/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +30 -30
  33. package/dist/cjs/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +32 -38
  34. package/dist/cjs/builder/shared/bundlerPlugins/RouterPlugin.js +86 -116
  35. package/dist/cjs/builder/shared/bundlerPlugins/index.js +20 -19
  36. package/dist/cjs/builder/shared/createCopyInfo.js +16 -42
  37. package/dist/cjs/builder/shared/index.js +20 -19
  38. package/dist/cjs/builder/shared/loaders/serverModuleLoader.js +8 -24
  39. package/dist/cjs/builder/shared/types.js +4 -15
  40. package/dist/cjs/commands/build.js +23 -40
  41. package/dist/cjs/commands/deploy.js +7 -25
  42. package/dist/cjs/commands/dev.js +38 -57
  43. package/dist/cjs/commands/index.js +20 -19
  44. package/dist/cjs/commands/inspect.js +10 -30
  45. package/dist/cjs/commands/serve.js +28 -66
  46. package/dist/cjs/config/default.js +34 -34
  47. package/dist/cjs/config/index.js +20 -19
  48. package/dist/cjs/config/initialize/index.js +11 -29
  49. package/dist/cjs/config/initialize/inits.js +103 -82
  50. package/dist/cjs/config/legacy/createHtmlConfig.js +8 -40
  51. package/dist/cjs/config/legacy/createOutputConfig.js +8 -51
  52. package/dist/cjs/config/legacy/createSourceConfig.js +8 -38
  53. package/dist/cjs/config/legacy/createToolsConfig.js +8 -43
  54. package/dist/cjs/config/legacy/index.js +22 -46
  55. package/dist/cjs/defineConfig.js +16 -31
  56. package/dist/cjs/exports/server.js +7 -25
  57. package/dist/cjs/hooks.js +33 -51
  58. package/dist/cjs/index.js +185 -166
  59. package/dist/cjs/initialize/index.js +84 -100
  60. package/dist/cjs/locale/en.js +13 -27
  61. package/dist/cjs/locale/index.js +18 -28
  62. package/dist/cjs/locale/zh.js +13 -27
  63. package/dist/cjs/schema/Schema.js +27 -31
  64. package/dist/cjs/schema/index.js +141 -71
  65. package/dist/cjs/schema/legacy.js +273 -96
  66. package/dist/cjs/types/config/deploy.js +4 -15
  67. package/dist/cjs/types/config/dev.js +4 -15
  68. package/dist/cjs/types/config/experiments.js +4 -15
  69. package/dist/cjs/types/config/html.js +4 -15
  70. package/dist/cjs/types/config/index.js +18 -17
  71. package/dist/cjs/types/config/output.js +4 -15
  72. package/dist/cjs/types/config/performance.js +4 -15
  73. package/dist/cjs/types/config/security.js +4 -15
  74. package/dist/cjs/types/config/source.js +4 -15
  75. package/dist/cjs/types/config/tools.js +4 -15
  76. package/dist/cjs/types/hooks.js +4 -15
  77. package/dist/cjs/types/index.js +20 -19
  78. package/dist/cjs/types/legacyConfig/deploy.js +4 -15
  79. package/dist/cjs/types/legacyConfig/dev.js +4 -15
  80. package/dist/cjs/types/legacyConfig/index.js +4 -15
  81. package/dist/cjs/types/legacyConfig/output.js +4 -15
  82. package/dist/cjs/types/legacyConfig/source.js +4 -15
  83. package/dist/cjs/types/legacyConfig/tools.js +4 -15
  84. package/dist/cjs/types/utils.js +4 -15
  85. package/dist/cjs/utils/config.js +74 -79
  86. package/dist/cjs/utils/createServer.js +16 -42
  87. package/dist/cjs/utils/env.js +7 -25
  88. package/dist/cjs/utils/generateWatchFiles.js +31 -52
  89. package/dist/cjs/utils/getSelectedEntries.js +13 -35
  90. package/dist/cjs/utils/getServerInternalPlugins.js +8 -29
  91. package/dist/cjs/utils/printInstructions.js +10 -28
  92. package/dist/cjs/utils/restart.js +13 -31
  93. package/dist/cjs/utils/routes.js +18 -39
  94. package/dist/cjs/utils/types.js +4 -15
  95. package/dist/esm/analyze/constants.js +40 -41
  96. package/dist/esm/analyze/generateCode.js +477 -455
  97. package/dist/esm/analyze/getBundleEntry.js +53 -54
  98. package/dist/esm/analyze/getClientRoutes/getRoutes.js +201 -202
  99. package/dist/esm/analyze/getClientRoutes/getRoutesLegacy.js +199 -200
  100. package/dist/esm/analyze/getClientRoutes/index.js +2 -3
  101. package/dist/esm/analyze/getClientRoutes/utils.js +15 -15
  102. package/dist/esm/analyze/getFileSystemEntry.js +86 -87
  103. package/dist/esm/analyze/getHtmlTemplate.js +289 -278
  104. package/dist/esm/analyze/getServerRoutes.js +203 -190
  105. package/dist/esm/analyze/index.js +679 -651
  106. package/dist/esm/analyze/isDefaultExportFunction.js +38 -39
  107. package/dist/esm/analyze/makeLegalIdentifier.js +8 -9
  108. package/dist/esm/analyze/nestedRoutes.js +400 -392
  109. package/dist/esm/analyze/templates.js +536 -509
  110. package/dist/esm/analyze/utils.js +357 -336
  111. package/dist/esm/builder/builder-rspack/adapterCopy.js +347 -330
  112. package/dist/esm/builder/builder-rspack/index.js +8 -9
  113. package/dist/esm/builder/builder-webpack/adapterModern.js +51 -43
  114. package/dist/esm/builder/builder-webpack/createCopyPattern.js +31 -32
  115. package/dist/esm/builder/builder-webpack/index.js +266 -249
  116. package/dist/esm/builder/generator/createBuilderOptions.js +37 -38
  117. package/dist/esm/builder/generator/createBuilderProviderConfig.js +62 -63
  118. package/dist/esm/builder/generator/getBuilderTargets.js +13 -14
  119. package/dist/esm/builder/generator/index.js +203 -196
  120. package/dist/esm/builder/index.js +183 -176
  121. package/dist/esm/builder/shared/builderPlugins/adapterBasic.js +90 -91
  122. package/dist/esm/builder/shared/builderPlugins/adapterHtml.js +300 -291
  123. package/dist/esm/builder/shared/builderPlugins/adapterSSR.js +337 -329
  124. package/dist/esm/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +108 -97
  125. package/dist/esm/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +66 -64
  126. package/dist/esm/builder/shared/bundlerPlugins/RouterPlugin.js +364 -337
  127. package/dist/esm/builder/shared/createCopyInfo.js +9 -10
  128. package/dist/esm/builder/shared/loaders/serverModuleLoader.js +2 -3
  129. package/dist/esm/builder/shared/types.js +1 -1
  130. package/dist/esm/commands/build.js +279 -272
  131. package/dist/esm/commands/deploy.js +150 -144
  132. package/dist/esm/commands/dev.js +296 -289
  133. package/dist/esm/commands/inspect.js +144 -138
  134. package/dist/esm/commands/serve.js +241 -235
  135. package/dist/esm/config/default.js +202 -203
  136. package/dist/esm/config/initialize/index.js +7 -8
  137. package/dist/esm/config/initialize/inits.js +189 -181
  138. package/dist/esm/config/legacy/createHtmlConfig.js +17 -18
  139. package/dist/esm/config/legacy/createOutputConfig.js +41 -42
  140. package/dist/esm/config/legacy/createSourceConfig.js +38 -39
  141. package/dist/esm/config/legacy/createToolsConfig.js +24 -25
  142. package/dist/esm/config/legacy/index.js +31 -32
  143. package/dist/esm/defineConfig.js +52 -53
  144. package/dist/esm/exports/server.js +1 -2
  145. package/dist/esm/hooks.js +26 -27
  146. package/dist/esm/index.js +685 -671
  147. package/dist/esm/initialize/index.js +276 -269
  148. package/dist/esm/locale/en.js +36 -37
  149. package/dist/esm/locale/index.js +2 -2
  150. package/dist/esm/locale/zh.js +36 -37
  151. package/dist/esm/schema/Schema.js +255 -244
  152. package/dist/esm/schema/index.js +165 -165
  153. package/dist/esm/schema/legacy.js +316 -317
  154. package/dist/esm/types/config/deploy.js +1 -1
  155. package/dist/esm/types/config/dev.js +1 -1
  156. package/dist/esm/types/config/experiments.js +1 -1
  157. package/dist/esm/types/config/html.js +1 -1
  158. package/dist/esm/types/config/output.js +1 -1
  159. package/dist/esm/types/config/performance.js +1 -1
  160. package/dist/esm/types/config/security.js +1 -1
  161. package/dist/esm/types/config/source.js +1 -1
  162. package/dist/esm/types/config/tools.js +1 -1
  163. package/dist/esm/types/hooks.js +1 -1
  164. package/dist/esm/types/legacyConfig/deploy.js +1 -1
  165. package/dist/esm/types/legacyConfig/dev.js +1 -1
  166. package/dist/esm/types/legacyConfig/index.js +1 -1
  167. package/dist/esm/types/legacyConfig/output.js +1 -1
  168. package/dist/esm/types/legacyConfig/source.js +1 -1
  169. package/dist/esm/types/legacyConfig/tools.js +1 -1
  170. package/dist/esm/types/utils.js +1 -1
  171. package/dist/esm/utils/config.js +285 -278
  172. package/dist/esm/utils/createServer.js +242 -234
  173. package/dist/esm/utils/env.js +11 -12
  174. package/dist/esm/utils/generateWatchFiles.js +205 -190
  175. package/dist/esm/utils/getSelectedEntries.js +180 -173
  176. package/dist/esm/utils/getServerInternalPlugins.js +197 -191
  177. package/dist/esm/utils/printInstructions.js +147 -141
  178. package/dist/esm/utils/restart.js +179 -173
  179. package/dist/esm/utils/routes.js +146 -139
  180. package/dist/esm/utils/types.js +1 -1
  181. package/dist/esm-node/analyze/constants.js +31 -46
  182. package/dist/esm-node/analyze/generateCode.js +28 -94
  183. package/dist/esm-node/analyze/getBundleEntry.js +8 -27
  184. package/dist/esm-node/analyze/getClientRoutes/getRoutes.js +24 -65
  185. package/dist/esm-node/analyze/getClientRoutes/getRoutesLegacy.js +24 -63
  186. package/dist/esm-node/analyze/getClientRoutes/index.js +2 -6
  187. package/dist/esm-node/analyze/getClientRoutes/utils.js +5 -19
  188. package/dist/esm-node/analyze/getFileSystemEntry.js +10 -37
  189. package/dist/esm-node/analyze/getHtmlTemplate.js +29 -59
  190. package/dist/esm-node/analyze/getServerRoutes.js +43 -75
  191. package/dist/esm-node/analyze/index.js +208 -230
  192. package/dist/esm-node/analyze/isDefaultExportFunction.js +7 -5
  193. package/dist/esm-node/analyze/makeLegalIdentifier.js +1 -4
  194. package/dist/esm-node/analyze/nestedRoutes.js +23 -43
  195. package/dist/esm-node/analyze/templates.js +22 -69
  196. package/dist/esm-node/analyze/utils.js +66 -60
  197. package/dist/esm-node/builder/builder-rspack/adapterCopy.js +40 -62
  198. package/dist/esm-node/builder/builder-rspack/index.js +4 -5
  199. package/dist/esm-node/builder/builder-webpack/adapterModern.js +24 -26
  200. package/dist/esm-node/builder/builder-webpack/createCopyPattern.js +3 -10
  201. package/dist/esm-node/builder/builder-webpack/index.js +13 -11
  202. package/dist/esm-node/builder/generator/createBuilderOptions.js +4 -5
  203. package/dist/esm-node/builder/generator/createBuilderProviderConfig.js +5 -6
  204. package/dist/esm-node/builder/generator/getBuilderTargets.js +5 -11
  205. package/dist/esm-node/builder/generator/index.js +7 -16
  206. package/dist/esm-node/builder/index.js +2 -7
  207. package/dist/esm-node/builder/shared/builderPlugins/adapterBasic.js +2 -6
  208. package/dist/esm-node/builder/shared/builderPlugins/adapterHtml.js +34 -60
  209. package/dist/esm-node/builder/shared/builderPlugins/adapterSSR.js +54 -74
  210. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +23 -8
  211. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +25 -16
  212. package/dist/esm-node/builder/shared/bundlerPlugins/RouterPlugin.js +66 -76
  213. package/dist/esm-node/builder/shared/createCopyInfo.js +2 -8
  214. package/dist/esm-node/builder/shared/loaders/serverModuleLoader.js +1 -4
  215. package/dist/esm-node/builder/shared/types.js +1 -0
  216. package/dist/esm-node/commands/build.js +7 -9
  217. package/dist/esm-node/commands/deploy.js +1 -4
  218. package/dist/esm-node/commands/dev.js +19 -27
  219. package/dist/esm-node/commands/inspect.js +3 -8
  220. package/dist/esm-node/commands/serve.js +7 -25
  221. package/dist/esm-node/config/default.js +20 -11
  222. package/dist/esm-node/config/initialize/index.js +1 -4
  223. package/dist/esm-node/config/initialize/inits.js +48 -54
  224. package/dist/esm-node/config/legacy/createHtmlConfig.js +2 -19
  225. package/dist/esm-node/config/legacy/createOutputConfig.js +2 -30
  226. package/dist/esm-node/config/legacy/createSourceConfig.js +2 -17
  227. package/dist/esm-node/config/legacy/createToolsConfig.js +2 -22
  228. package/dist/esm-node/config/legacy/index.js +3 -18
  229. package/dist/esm-node/defineConfig.js +7 -13
  230. package/dist/esm-node/exports/server.js +1 -4
  231. package/dist/esm-node/hooks.js +2 -9
  232. package/dist/esm-node/index.js +95 -120
  233. package/dist/esm-node/initialize/index.js +74 -87
  234. package/dist/esm-node/locale/en.js +7 -6
  235. package/dist/esm-node/locale/index.js +5 -5
  236. package/dist/esm-node/locale/zh.js +7 -6
  237. package/dist/esm-node/schema/Schema.js +19 -8
  238. package/dist/esm-node/schema/index.js +121 -36
  239. package/dist/esm-node/schema/legacy.js +262 -72
  240. package/dist/esm-node/types/config/deploy.js +1 -0
  241. package/dist/esm-node/types/config/dev.js +1 -0
  242. package/dist/esm-node/types/config/experiments.js +1 -0
  243. package/dist/esm-node/types/config/html.js +1 -0
  244. package/dist/esm-node/types/config/output.js +1 -0
  245. package/dist/esm-node/types/config/performance.js +1 -0
  246. package/dist/esm-node/types/config/security.js +1 -0
  247. package/dist/esm-node/types/config/source.js +1 -0
  248. package/dist/esm-node/types/config/tools.js +1 -0
  249. package/dist/esm-node/types/hooks.js +1 -0
  250. package/dist/esm-node/types/legacyConfig/deploy.js +1 -0
  251. package/dist/esm-node/types/legacyConfig/dev.js +1 -0
  252. package/dist/esm-node/types/legacyConfig/index.js +1 -0
  253. package/dist/esm-node/types/legacyConfig/output.js +1 -0
  254. package/dist/esm-node/types/legacyConfig/source.js +1 -0
  255. package/dist/esm-node/types/legacyConfig/tools.js +1 -0
  256. package/dist/esm-node/types/utils.js +1 -0
  257. package/dist/esm-node/utils/config.js +16 -47
  258. package/dist/esm-node/utils/createServer.js +5 -12
  259. package/dist/esm-node/utils/env.js +1 -4
  260. package/dist/esm-node/utils/generateWatchFiles.js +13 -20
  261. package/dist/esm-node/utils/getSelectedEntries.js +2 -9
  262. package/dist/esm-node/utils/getServerInternalPlugins.js +2 -8
  263. package/dist/esm-node/utils/printInstructions.js +1 -4
  264. package/dist/esm-node/utils/restart.js +2 -11
  265. package/dist/esm-node/utils/routes.js +4 -4
  266. package/dist/esm-node/utils/types.js +1 -0
  267. package/dist/types/index.d.ts +2 -2
  268. package/package.json +29 -25
@@ -1,50 +1,32 @@
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) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
8
6
  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
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var templates_exports = {};
29
- __export(templates_exports, {
30
- fileSystemRoutes: () => fileSystemRoutes,
31
- html: () => html,
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
32
13
  index: () => index,
33
14
  renderFunction: () => renderFunction,
15
+ html: () => html,
34
16
  routesForServer: () => routesForServer,
17
+ fileSystemRoutes: () => fileSystemRoutes,
35
18
  ssrLoaderCombinedModule: () => ssrLoaderCombinedModule
36
19
  });
37
- module.exports = __toCommonJS(templates_exports);
38
- var import_path = __toESM(require("path"));
39
- var import_utils = require("@modern-js/utils");
40
- var import_constants = require("./constants");
41
- var import_utils2 = require("./utils");
42
- const index = ({
43
- mountId,
44
- imports,
45
- renderFunction: renderFunction2,
46
- exportStatement
47
- }) => `
20
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
21
+ const _utils = require("@modern-js/utils");
22
+ const _constants = require("./constants");
23
+ const _utils1 = require("./utils");
24
+ function _interop_require_default(obj) {
25
+ return obj && obj.__esModule ? obj : {
26
+ default: obj
27
+ };
28
+ }
29
+ const index = ({ mountId, imports, renderFunction: renderFunction2, exportStatement }) => `
48
30
  const IS_BROWSER = typeof window !== 'undefined' && window.name !== 'nodejs';
49
31
  const IS_REACT18 = process.env.IS_REACT18 === 'true';
50
32
  const MOUNT_ID = '${mountId}';
@@ -63,23 +45,17 @@ AppWrapper = render();
63
45
 
64
46
  ${exportStatement};
65
47
  `;
66
- const renderFunction = ({
67
- plugins,
68
- customBootstrap,
69
- fileSystemRoutes: fileSystemRoutes2
70
- }) => {
48
+ const renderFunction = ({ plugins, customBootstrap, fileSystemRoutes: fileSystemRoutes2 }) => {
71
49
  const bootstrap = "bootstrap(AppWrapper, MOUNT_ID, root, ReactDOM)";
72
50
  return `
73
51
  const finalAppConfig = {
74
52
  ...App.config,
75
- ...typeof ${import_constants.APP_CONFIG_NAME} === 'function' ? ${import_constants.APP_CONFIG_NAME}() : {},
53
+ ...typeof ${_constants.APP_CONFIG_NAME} === 'function' ? ${_constants.APP_CONFIG_NAME}() : {},
76
54
  }
77
55
 
78
56
  AppWrapper = createApp({
79
57
  plugins: [
80
- ${plugins.map(
81
- ({ name, options, args }) => `${name}({...${options}, ...finalAppConfig?.${args || name}}),`
82
- ).join("\n")}
58
+ ${plugins.map(({ name, options, args }) => `${name}({...${options}, ...finalAppConfig?.${args || name}}),`).join("\n")}
83
59
  ]
84
60
  })(${fileSystemRoutes2 ? "" : `App`})
85
61
 
@@ -122,15 +98,13 @@ const html = (partials) => `
122
98
 
123
99
  </html>
124
100
  `;
125
- const routesForServer = ({
126
- routes
127
- }) => {
101
+ const routesForServer = ({ routes }) => {
128
102
  const loaders = [];
129
103
  const traverseRouteTree = (route) => {
130
- var _a;
131
104
  let children;
132
105
  if ("children" in route && route.children) {
133
- children = (_a = route == null ? void 0 : route.children) == null ? void 0 : _a.map(traverseRouteTree);
106
+ var _route_children;
107
+ children = route === null || route === void 0 ? void 0 : (_route_children = route.children) === null || _route_children === void 0 ? void 0 : _route_children.map(traverseRouteTree);
134
108
  }
135
109
  let loader;
136
110
  if (route.type === "nested") {
@@ -152,10 +126,7 @@ const routesForServer = ({
152
126
  for (const route of routes) {
153
127
  if ("type" in route) {
154
128
  const newRoute = traverseRouteTree(route);
155
- routesCode += `${JSON.stringify(newRoute, null, 2).replace(
156
- /"(loader_[^"]+)"/g,
157
- "$1"
158
- )},`;
129
+ routesCode += `${JSON.stringify(newRoute, null, 2).replace(/"(loader_[^"]+)"/g, "$1")},`;
159
130
  } else {
160
131
  routesCode += `${JSON.stringify(route, null, 2)}`;
161
132
  }
@@ -165,7 +136,7 @@ const routesForServer = ({
165
136
  let importLoadersCode = "";
166
137
  if (loaders.length > 0) {
167
138
  importLoadersCode = loaders.map((loader, index2) => {
168
- return `import loader_${index2} from "${(0, import_utils.slash)(loader)}"`;
139
+ return `import loader_${index2} from "${(0, _utils.slash)(loader)}"`;
169
140
  }).join("\n");
170
141
  }
171
142
  return `
@@ -174,14 +145,7 @@ const routesForServer = ({
174
145
  `;
175
146
  };
176
147
  const createMatchReg = (keyword) => new RegExp(`("${keyword}":\\s)"([^,]+)"`, "g");
177
- const fileSystemRoutes = async ({
178
- routes,
179
- ssrMode,
180
- nestedRoutesEntry,
181
- entryName,
182
- internalDirectory,
183
- splitRouteChunks = true
184
- }) => {
148
+ const fileSystemRoutes = async ({ routes, ssrMode, nestedRoutesEntry, entryName, internalDirectory, splitRouteChunks = true }) => {
185
149
  const components = [];
186
150
  const loadings = [];
187
151
  const errors = [];
@@ -189,12 +153,7 @@ const fileSystemRoutes = async ({
189
153
  const loadersMap = {};
190
154
  const configs = [];
191
155
  const configsMap = {};
192
- const loadersMapFile = import_path.default.join(
193
- internalDirectory,
194
- entryName,
195
- import_constants.TEMP_LOADERS_DIR,
196
- "map.json"
197
- );
156
+ const loadersMapFile = _path.default.join(internalDirectory, entryName, _constants.TEMP_LOADERS_DIR, "map.json");
198
157
  const importLazyCode = `
199
158
  import { lazy } from "react";
200
159
  import loadable, { lazy as loadableLazy } from "@modern-js/runtime/loadable"
@@ -205,15 +164,15 @@ const fileSystemRoutes = async ({
205
164
  return "";
206
165
  }
207
166
  if (nestedRoutesEntry) {
208
- return `?mapFile=${(0, import_utils.slash)(loadersMapFile)}&loaderId=${loaderId}`;
167
+ return `?mapFile=${(0, _utils.slash)(loadersMapFile)}&loaderId=${loaderId}`;
209
168
  }
210
169
  return "";
211
170
  };
212
171
  const traverseRouteTree = (route) => {
213
- var _a;
214
172
  let children;
215
173
  if ("children" in route && route.children) {
216
- children = (_a = route == null ? void 0 : route.children) == null ? void 0 : _a.map(traverseRouteTree);
174
+ var _route_children;
175
+ children = route === null || route === void 0 ? void 0 : (_route_children = route.children) === null || _route_children === void 0 ? void 0 : _route_children.map(traverseRouteTree);
217
176
  }
218
177
  let loading;
219
178
  let error;
@@ -310,7 +269,10 @@ const fileSystemRoutes = async ({
310
269
  ...route,
311
270
  component
312
271
  };
313
- const keywords = ["component", "lazyImport"];
272
+ const keywords = [
273
+ "component",
274
+ "lazyImport"
275
+ ];
314
276
  const routeStr = JSON.stringify(finalRoute, null, 2);
315
277
  const regs = keywords.map(createMatchReg);
316
278
  const newRouteStr = regs.reduce((acc, reg) => acc.replace(reg, "$1$2"), routeStr).replace(/\\"/g, '"');
@@ -334,24 +296,20 @@ const fileSystemRoutes = async ({
334
296
  let importLoadersCode = "";
335
297
  for (const [key, loaderInfo] of Object.entries(loadersMap)) {
336
298
  if (loaderInfo.inline) {
337
- importLoadersCode += `import { loader as ${key} } from "${(0, import_utils.slash)(
338
- loaderInfo.filePath
339
- )}${getDataLoaderPath(key)}";
299
+ importLoadersCode += `import { loader as ${key} } from "${(0, _utils.slash)(loaderInfo.filePath)}${getDataLoaderPath(key)}";
340
300
  `;
341
301
  } else {
342
- importLoadersCode += `import ${key} from "${(0, import_utils.slash)(
343
- loaderInfo.filePath
344
- )}${getDataLoaderPath(key)}";
302
+ importLoadersCode += `import ${key} from "${(0, _utils.slash)(loaderInfo.filePath)}${getDataLoaderPath(key)}";
345
303
  `;
346
304
  }
347
305
  }
348
306
  let importConfigsCode = "";
349
307
  for (const [key, configPath] of Object.entries(configsMap)) {
350
- importConfigsCode += `import * as ${key} from "${(0, import_utils.slash)(configPath)}";
308
+ importConfigsCode += `import * as ${key} from "${(0, _utils.slash)(configPath)}";
351
309
  `;
352
310
  }
353
- await import_utils.fs.ensureFile(loadersMapFile);
354
- await import_utils.fs.writeJSON(loadersMapFile, loadersMap);
311
+ await _utils.fs.ensureFile(loadersMapFile);
312
+ await _utils.fs.writeJSON(loadersMapFile, loadersMap);
355
313
  return `
356
314
  ${importLazyCode}
357
315
  ${importComponentsCode}
@@ -366,32 +324,13 @@ const fileSystemRoutes = async ({
366
324
  function ssrLoaderCombinedModule(entrypoints, entrypoint, config, appContext) {
367
325
  const { entryName } = entrypoint;
368
326
  const { packageName, internalDirectory } = appContext;
369
- const ssr = (0, import_utils.getEntryOptions)(
370
- entryName,
371
- config.server.ssr,
372
- config.server.ssrByEntries,
373
- packageName
374
- );
375
- const ssg = (0, import_utils.isSSGEntry)(config, entryName, entrypoints);
327
+ const ssr = (0, _utils.getEntryOptions)(entryName, config.server.ssr, config.server.ssrByEntries, packageName);
328
+ const ssg = (0, _utils.isSSGEntry)(config, entryName, entrypoints);
376
329
  if (entrypoint.nestedRoutesEntry && (ssr || ssg)) {
377
330
  const serverLoaderRuntime = require.resolve("@modern-js/plugin-data-loader/runtime");
378
- const serverLoadersFile = (0, import_utils2.getServerLoadersFile)(
379
- internalDirectory,
380
- entryName
381
- );
382
- const combinedModule = `export * from "${(0, import_utils.slash)(
383
- serverLoaderRuntime
384
- )}"; export * from "${(0, import_utils.slash)(serverLoadersFile)}"`;
331
+ const serverLoadersFile = (0, _utils1.getServerLoadersFile)(internalDirectory, entryName);
332
+ const combinedModule = `export * from "${(0, _utils.slash)(serverLoaderRuntime)}"; export * from "${(0, _utils.slash)(serverLoadersFile)}"`;
385
333
  return combinedModule;
386
334
  }
387
335
  return null;
388
336
  }
389
- // Annotate the CommonJS export names for ESM import in node:
390
- 0 && (module.exports = {
391
- fileSystemRoutes,
392
- html,
393
- index,
394
- renderFunction,
395
- routesForServer,
396
- ssrLoaderCombinedModule
397
- });
@@ -1,100 +1,105 @@
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) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
8
6
  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
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var utils_exports = {};
29
- __export(utils_exports, {
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ walkDirectory: () => walkDirectory,
30
14
  getDefaultImports: () => getDefaultImports,
31
- getServerCombinedModueFile: () => getServerCombinedModueFile,
32
- getServerLoadersFile: () => getServerLoadersFile,
33
- hasLoader: () => hasLoader,
34
15
  isPageComponentFile: () => isPageComponentFile,
35
- parseModule: () => parseModule,
36
16
  replaceWithAlias: () => replaceWithAlias,
37
- walkDirectory: () => walkDirectory
17
+ parseModule: () => parseModule,
18
+ hasLoader: () => hasLoader,
19
+ getServerLoadersFile: () => getServerLoadersFile,
20
+ getServerCombinedModueFile: () => getServerCombinedModueFile
38
21
  });
39
- module.exports = __toCommonJS(utils_exports);
40
- var import_fs = __toESM(require("fs"));
41
- var import_path = __toESM(require("path"));
42
- var import_utils = require("@modern-js/utils");
43
- var import_esbuild = require("esbuild");
44
- var import_es_module_lexer = require("es-module-lexer");
45
- var import_constants = require("./constants");
46
- const walkDirectory = (dir) => import_fs.default.readdirSync(dir).reduce((previous, filename) => {
47
- const filePath = import_path.default.join(dir, filename);
48
- if (import_fs.default.statSync(filePath).isDirectory()) {
49
- return [...previous, ...walkDirectory(filePath)];
22
+ const _fs = /* @__PURE__ */ _interop_require_default(require("fs"));
23
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
24
+ const _utils = require("@modern-js/utils");
25
+ const _esbuild = require("esbuild");
26
+ const _esmodulelexer = require("es-module-lexer");
27
+ const _constants = require("./constants");
28
+ function _interop_require_default(obj) {
29
+ return obj && obj.__esModule ? obj : {
30
+ default: obj
31
+ };
32
+ }
33
+ const walkDirectory = (dir) => _fs.default.readdirSync(dir).reduce((previous, filename) => {
34
+ const filePath = _path.default.join(dir, filename);
35
+ if (_fs.default.statSync(filePath).isDirectory()) {
36
+ return [
37
+ ...previous,
38
+ ...walkDirectory(filePath)
39
+ ];
50
40
  } else {
51
- return [...previous, filePath];
41
+ return [
42
+ ...previous,
43
+ filePath
44
+ ];
52
45
  }
53
46
  }, []);
54
- const getDefaultImports = ({
55
- entrypoint,
56
- srcDirectory,
57
- internalSrcAlias,
58
- internalDirAlias,
59
- internalDirectory
60
- }) => {
47
+ const getDefaultImports = ({ entrypoint, srcDirectory, internalSrcAlias, internalDirAlias, internalDirectory }) => {
61
48
  const { entryName, fileSystemRoutes, customBootstrap, entry } = entrypoint;
62
49
  const imports = [
63
50
  {
64
- specifiers: [{ local: "React" }],
51
+ specifiers: [
52
+ {
53
+ local: "React"
54
+ }
55
+ ],
65
56
  value: "react"
66
57
  },
67
58
  {
68
- specifiers: [{ local: "ReactDOM" }],
69
- value: (0, import_utils.isReact18)(import_path.default.join(internalDirectory, "../../")) ? "react-dom/client" : "react-dom"
59
+ specifiers: [
60
+ {
61
+ local: "ReactDOM"
62
+ }
63
+ ],
64
+ value: (0, _utils.isReact18)(_path.default.join(internalDirectory, "../../")) ? "react-dom/client" : "react-dom"
70
65
  },
71
66
  {
72
- specifiers: [{ imported: "createApp" }, { imported: "bootstrap" }],
67
+ specifiers: [
68
+ {
69
+ imported: "createApp"
70
+ },
71
+ {
72
+ imported: "bootstrap"
73
+ }
74
+ ],
73
75
  value: "@modern-js/runtime"
74
76
  },
75
77
  customBootstrap && {
76
- specifiers: [{ local: "customBootstrap" }],
77
- value: (0, import_utils.normalizeToPosixPath)(
78
- customBootstrap.replace(srcDirectory, internalSrcAlias)
79
- )
78
+ specifiers: [
79
+ {
80
+ local: "customBootstrap"
81
+ }
82
+ ],
83
+ value: (0, _utils.normalizeToPosixPath)(customBootstrap.replace(srcDirectory, internalSrcAlias))
80
84
  }
81
85
  ].filter(Boolean);
82
86
  if (fileSystemRoutes) {
83
87
  const route = {
84
- specifiers: [{ imported: "routes" }],
85
- value: (0, import_utils.normalizeToPosixPath)(
86
- `${internalDirAlias}/${entryName}/${import_constants.FILE_SYSTEM_ROUTES_FILE_NAME.replace(
87
- ".js",
88
- ""
89
- )}`
90
- )
88
+ specifiers: [
89
+ {
90
+ imported: "routes"
91
+ }
92
+ ],
93
+ value: (0, _utils.normalizeToPosixPath)(`${internalDirAlias}/${entryName}/${_constants.FILE_SYSTEM_ROUTES_FILE_NAME.replace(".js", "")}`)
91
94
  };
92
95
  if (fileSystemRoutes.globalApp) {
93
96
  imports.push({
94
- specifiers: [{ local: "App" }],
95
- value: (0, import_utils.normalizeToPosixPath)(
96
- fileSystemRoutes.globalApp.replace(srcDirectory, internalSrcAlias)
97
- )
97
+ specifiers: [
98
+ {
99
+ local: "App"
100
+ }
101
+ ],
102
+ value: (0, _utils.normalizeToPosixPath)(fileSystemRoutes.globalApp.replace(srcDirectory, internalSrcAlias))
98
103
  });
99
104
  } else {
100
105
  route.initialize = "const App = false;";
@@ -102,10 +107,12 @@ const getDefaultImports = ({
102
107
  imports.push(route);
103
108
  } else {
104
109
  imports.push({
105
- specifiers: [{ local: "App" }],
106
- value: (0, import_utils.normalizeToPosixPath)(
107
- entry.replace(srcDirectory, internalSrcAlias)
108
- )
110
+ specifiers: [
111
+ {
112
+ local: "App"
113
+ }
114
+ ],
115
+ value: (0, _utils.normalizeToPosixPath)(entry.replace(srcDirectory, internalSrcAlias))
109
116
  });
110
117
  }
111
118
  return imports;
@@ -114,56 +121,45 @@ const isPageComponentFile = (filePath) => {
114
121
  if (/\.(d|test|spec|e2e)\.(js|jsx|ts|tsx)$/.test(filePath)) {
115
122
  return false;
116
123
  }
117
- if ([".js", ".jsx", ".ts", ".tsx"].includes(import_path.default.extname(filePath))) {
124
+ if ([
125
+ ".js",
126
+ ".jsx",
127
+ ".ts",
128
+ ".tsx"
129
+ ].includes(_path.default.extname(filePath))) {
118
130
  return true;
119
131
  }
120
132
  return false;
121
133
  };
122
134
  const replaceWithAlias = (base, filePath, alias) => {
123
135
  if (filePath.includes(base)) {
124
- return (0, import_utils.normalizeToPosixPath)(
125
- import_path.default.join(alias, import_path.default.relative(base, filePath))
126
- );
136
+ return (0, _utils.normalizeToPosixPath)(_path.default.join(alias, _path.default.relative(base, filePath)));
127
137
  } else {
128
138
  return filePath;
129
139
  }
130
140
  };
131
- const parseModule = async ({
132
- source,
133
- filename
134
- }) => {
141
+ const parseModule = async ({ source, filename }) => {
135
142
  let content = source;
136
- if (import_constants.JS_EXTENSIONS.some((ext) => filename.endsWith(ext))) {
137
- const result = await (0, import_esbuild.transform)(content, {
138
- loader: import_path.default.extname(filename).slice(1),
143
+ if (_constants.JS_EXTENSIONS.some((ext) => filename.endsWith(ext))) {
144
+ const result = await (0, _esbuild.transform)(content, {
145
+ loader: _path.default.extname(filename).slice(1),
139
146
  format: "esm"
140
147
  });
141
148
  content = result.code;
142
149
  }
143
- return await (0, import_es_module_lexer.parse)(content);
150
+ return await (0, _esmodulelexer.parse)(content);
144
151
  };
145
152
  const hasLoader = async (filename) => {
146
- const source = await import_utils.fs.readFile(filename);
153
+ const source = await _utils.fs.readFile(filename);
147
154
  const [, moduleExports] = await parseModule({
148
155
  source: source.toString(),
149
156
  filename
150
157
  });
151
- return moduleExports.some((e) => e.n === import_constants.LOADER_EXPORT_NAME);
158
+ return moduleExports.some((e) => e.n === _constants.LOADER_EXPORT_NAME);
152
159
  };
153
160
  const getServerLoadersFile = (internalDirectory, entryName) => {
154
- return import_path.default.join(internalDirectory, entryName, "route-server-loaders.js");
161
+ return _path.default.join(internalDirectory, entryName, "route-server-loaders.js");
155
162
  };
156
163
  const getServerCombinedModueFile = (internalDirectory, entryName) => {
157
- return import_path.default.join(internalDirectory, entryName, "server-loader-combined.js");
164
+ return _path.default.join(internalDirectory, entryName, "server-loader-combined.js");
158
165
  };
159
- // Annotate the CommonJS export names for ESM import in node:
160
- 0 && (module.exports = {
161
- getDefaultImports,
162
- getServerCombinedModueFile,
163
- getServerLoadersFile,
164
- hasLoader,
165
- isPageComponentFile,
166
- parseModule,
167
- replaceWithAlias,
168
- walkDirectory
169
- });