@modern-js/app-tools 2.14.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 (269) hide show
  1. package/CHANGELOG.md +74 -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/lib/types.d.ts +1 -0
  269. package/package.json +29 -25
@@ -1,151 +1,167 @@
1
- function _arrayLikeToArray(arr, len) {
2
- if (len == null || len > arr.length) len = arr.length;
3
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
- return arr2;
1
+ function _array_like_to_array(arr, len) {
2
+ if (len == null || len > arr.length)
3
+ len = arr.length;
4
+ for (var i = 0, arr2 = new Array(len); i < len; i++)
5
+ arr2[i] = arr[i];
6
+ return arr2;
5
7
  }
6
- function _arrayWithoutHoles(arr) {
7
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
8
+ function _array_without_holes(arr) {
9
+ if (Array.isArray(arr))
10
+ return _array_like_to_array(arr);
8
11
  }
9
12
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
10
- try {
11
- var info = gen[key](arg);
12
- var value = info.value;
13
- } catch (error) {
14
- reject(error);
15
- return;
16
- }
17
- if (info.done) {
18
- resolve(value);
19
- } else {
20
- Promise.resolve(value).then(_next, _throw);
21
- }
13
+ try {
14
+ var info = gen[key](arg);
15
+ var value = info.value;
16
+ } catch (error) {
17
+ reject(error);
18
+ return;
19
+ }
20
+ if (info.done) {
21
+ resolve(value);
22
+ } else {
23
+ Promise.resolve(value).then(_next, _throw);
24
+ }
22
25
  }
23
- function _asyncToGenerator(fn) {
24
- return function() {
25
- var self = this, args = arguments;
26
- return new Promise(function(resolve, reject) {
27
- var gen = fn.apply(self, args);
28
- function _next(value) {
29
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
30
- }
31
- function _throw(err) {
32
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
33
- }
34
- _next(undefined);
35
- });
36
- };
26
+ function _async_to_generator(fn) {
27
+ return function() {
28
+ var self = this, args = arguments;
29
+ return new Promise(function(resolve, reject) {
30
+ var gen = fn.apply(self, args);
31
+ function _next(value) {
32
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
33
+ }
34
+ function _throw(err) {
35
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
36
+ }
37
+ _next(void 0);
38
+ });
39
+ };
37
40
  }
38
- function _iterableToArray(iter) {
39
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
41
+ function _iterable_to_array(iter) {
42
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null)
43
+ return Array.from(iter);
40
44
  }
41
- function _nonIterableSpread() {
42
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
45
+ function _non_iterable_spread() {
46
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
43
47
  }
44
- function _toConsumableArray(arr) {
45
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
48
+ function _to_consumable_array(arr) {
49
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
46
50
  }
47
- function _unsupportedIterableToArray(o, minLen) {
48
- if (!o) return;
49
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
50
- var n = Object.prototype.toString.call(o).slice(8, -1);
51
- if (n === "Object" && o.constructor) n = o.constructor.name;
52
- if (n === "Map" || n === "Set") return Array.from(n);
53
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
51
+ function _unsupported_iterable_to_array(o, minLen) {
52
+ if (!o)
53
+ return;
54
+ if (typeof o === "string")
55
+ return _array_like_to_array(o, minLen);
56
+ var n = Object.prototype.toString.call(o).slice(8, -1);
57
+ if (n === "Object" && o.constructor)
58
+ n = o.constructor.name;
59
+ if (n === "Map" || n === "Set")
60
+ return Array.from(n);
61
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
62
+ return _array_like_to_array(o, minLen);
54
63
  }
55
- var __generator = this && this.__generator || function(thisArg, body) {
56
- var f, y, t, g, _ = {
57
- label: 0,
58
- sent: function() {
59
- if (t[0] & 1) throw t[1];
60
- return t[1];
61
- },
62
- trys: [],
63
- ops: []
64
+ var __generator = function(thisArg, body) {
65
+ var f, y, t, g, _ = {
66
+ label: 0,
67
+ sent: function() {
68
+ if (t[0] & 1)
69
+ throw t[1];
70
+ return t[1];
71
+ },
72
+ trys: [],
73
+ ops: []
74
+ };
75
+ return g = {
76
+ next: verb(0),
77
+ "throw": verb(1),
78
+ "return": verb(2)
79
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
80
+ return this;
81
+ }), g;
82
+ function verb(n) {
83
+ return function(v) {
84
+ return step([
85
+ n,
86
+ v
87
+ ]);
64
88
  };
65
- return(g = {
66
- next: verb(0),
67
- "throw": verb(1),
68
- "return": verb(2)
69
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
70
- return this;
71
- }), g);
72
- function verb(n) {
73
- return function(v) {
74
- return step([
75
- n,
76
- v
77
- ]);
78
- };
79
- }
80
- function step(op) {
81
- if (f) throw new TypeError("Generator is already executing.");
82
- while(_)try {
83
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
84
- if (y = 0, t) op = [
85
- op[0] & 2,
86
- t.value
87
- ];
88
- switch(op[0]){
89
- case 0:
90
- case 1:
91
- t = op;
92
- break;
93
- case 4:
94
- _.label++;
95
- return {
96
- value: op[1],
97
- done: false
98
- };
99
- case 5:
100
- _.label++;
101
- y = op[1];
102
- op = [
103
- 0
104
- ];
105
- continue;
106
- case 7:
107
- op = _.ops.pop();
108
- _.trys.pop();
109
- continue;
110
- default:
111
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
112
- _ = 0;
113
- continue;
114
- }
115
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
116
- _.label = op[1];
117
- break;
118
- }
119
- if (op[0] === 6 && _.label < t[1]) {
120
- _.label = t[1];
121
- t = op;
122
- break;
123
- }
124
- if (t && _.label < t[2]) {
125
- _.label = t[2];
126
- _.ops.push(op);
127
- break;
128
- }
129
- if (t[2]) _.ops.pop();
130
- _.trys.pop();
131
- continue;
132
- }
133
- op = body.call(thisArg, _);
134
- } catch (e) {
89
+ }
90
+ function step(op) {
91
+ if (f)
92
+ throw new TypeError("Generator is already executing.");
93
+ while (_)
94
+ try {
95
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
96
+ return t;
97
+ if (y = 0, t)
98
+ op = [
99
+ op[0] & 2,
100
+ t.value
101
+ ];
102
+ switch (op[0]) {
103
+ case 0:
104
+ case 1:
105
+ t = op;
106
+ break;
107
+ case 4:
108
+ _.label++;
109
+ return {
110
+ value: op[1],
111
+ done: false
112
+ };
113
+ case 5:
114
+ _.label++;
115
+ y = op[1];
135
116
  op = [
136
- 6,
137
- e
117
+ 0
138
118
  ];
139
- y = 0;
140
- } finally{
141
- f = t = 0;
119
+ continue;
120
+ case 7:
121
+ op = _.ops.pop();
122
+ _.trys.pop();
123
+ continue;
124
+ default:
125
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
126
+ _ = 0;
127
+ continue;
128
+ }
129
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
130
+ _.label = op[1];
131
+ break;
132
+ }
133
+ if (op[0] === 6 && _.label < t[1]) {
134
+ _.label = t[1];
135
+ t = op;
136
+ break;
137
+ }
138
+ if (t && _.label < t[2]) {
139
+ _.label = t[2];
140
+ _.ops.push(op);
141
+ break;
142
+ }
143
+ if (t[2])
144
+ _.ops.pop();
145
+ _.trys.pop();
146
+ continue;
142
147
  }
143
- if (op[0] & 5) throw op[1];
144
- return {
145
- value: op[0] ? op[1] : void 0,
146
- done: true
147
- };
148
- }
148
+ op = body.call(thisArg, _);
149
+ } catch (e) {
150
+ op = [
151
+ 6,
152
+ e
153
+ ];
154
+ y = 0;
155
+ } finally {
156
+ f = t = 0;
157
+ }
158
+ if (op[0] & 5)
159
+ throw op[1];
160
+ return {
161
+ value: op[0] ? op[1] : void 0,
162
+ done: true
163
+ };
164
+ }
149
165
  };
150
166
  import path from "path";
151
167
  import { fs, getEntryOptions, isRouterV5, isSSGEntry, isUseSSRBundle, logger } from "@modern-js/utils";
@@ -155,333 +171,339 @@ import { FILE_SYSTEM_ROUTES_FILE_NAME, ENTRY_POINT_FILE_NAME, ENTRY_BOOTSTRAP_FI
155
171
  import { getDefaultImports, getServerLoadersFile, getServerCombinedModueFile } from "./utils";
156
172
  import { walk } from "./nestedRoutes";
157
173
  var createImportSpecifier = function(specifiers) {
158
- var defaults = "";
159
- var named = [];
160
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
161
- try {
162
- for(var _iterator = specifiers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
163
- var _step_value = _step.value, local = _step_value.local, imported = _step_value.imported;
164
- if (local && imported) {
165
- named.push("".concat(imported, " as ").concat(local));
166
- } else if (local) {
167
- defaults = local;
168
- } else {
169
- named.push(imported);
170
- }
171
- }
172
- } catch (err) {
173
- _didIteratorError = true;
174
- _iteratorError = err;
175
- } finally{
176
- try {
177
- if (!_iteratorNormalCompletion && _iterator.return != null) {
178
- _iterator.return();
179
- }
180
- } finally{
181
- if (_didIteratorError) {
182
- throw _iteratorError;
183
- }
184
- }
174
+ var defaults = "";
175
+ var named = [];
176
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
177
+ try {
178
+ for (var _iterator = specifiers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
179
+ var _step_value = _step.value, local = _step_value.local, imported = _step_value.imported;
180
+ if (local && imported) {
181
+ named.push("".concat(imported, " as ").concat(local));
182
+ } else if (local) {
183
+ defaults = local;
184
+ } else {
185
+ named.push(imported);
186
+ }
185
187
  }
186
- if (defaults && named.length) {
187
- return "".concat(defaults, ", { ").concat(named.join(", "), " }");
188
- } else if (defaults) {
189
- return defaults;
190
- } else {
191
- return "{ ".concat(named.join(", "), " }");
188
+ } catch (err) {
189
+ _didIteratorError = true;
190
+ _iteratorError = err;
191
+ } finally {
192
+ try {
193
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
194
+ _iterator.return();
195
+ }
196
+ } finally {
197
+ if (_didIteratorError) {
198
+ throw _iteratorError;
199
+ }
192
200
  }
201
+ }
202
+ if (defaults && named.length) {
203
+ return "".concat(defaults, ", { ").concat(named.join(", "), " }");
204
+ } else if (defaults) {
205
+ return defaults;
206
+ } else {
207
+ return "{ ".concat(named.join(", "), " }");
208
+ }
193
209
  };
194
- var createImportStatements = function(statements) {
195
- var deDuplicated = [];
196
- var seen = /* @__PURE__ */ new Map();
197
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
210
+ export var createImportStatements = function(statements) {
211
+ var deDuplicated = [];
212
+ var seen = /* @__PURE__ */ new Map();
213
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
214
+ try {
215
+ var _loop = function() {
216
+ var _step_value = _step.value, value = _step_value.value, specifiers = _step_value.specifiers, initialize = _step_value.initialize;
217
+ if (!seen.has(value)) {
218
+ deDuplicated.push({
219
+ value,
220
+ specifiers,
221
+ initialize
222
+ });
223
+ seen.set(value, specifiers);
224
+ } else {
225
+ var _seen_get;
226
+ var _deDuplicated_modifyIndex;
227
+ (_seen_get = seen.get(value)).push.apply(_seen_get, _to_consumable_array(specifiers));
228
+ var modifyIndex = deDuplicated.findIndex(function(v) {
229
+ return v.value === value;
230
+ });
231
+ var _deDuplicated_modifyIndex_initialize;
232
+ var originInitialize = (_deDuplicated_modifyIndex_initialize = (_deDuplicated_modifyIndex = deDuplicated[modifyIndex]) === null || _deDuplicated_modifyIndex === void 0 ? void 0 : _deDuplicated_modifyIndex.initialize) !== null && _deDuplicated_modifyIndex_initialize !== void 0 ? _deDuplicated_modifyIndex_initialize : "";
233
+ deDuplicated[modifyIndex].initialize = originInitialize.concat("\n".concat(initialize || ""));
234
+ }
235
+ };
236
+ for (var _iterator = statements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)
237
+ _loop();
238
+ } catch (err) {
239
+ _didIteratorError = true;
240
+ _iteratorError = err;
241
+ } finally {
198
242
  try {
199
- var _loop = function() {
200
- var _step_value = _step.value, value = _step_value.value, specifiers = _step_value.specifiers, initialize = _step_value.initialize;
201
- if (!seen.has(value)) {
202
- deDuplicated.push({
203
- value: value,
204
- specifiers: specifiers,
205
- initialize: initialize
206
- });
207
- seen.set(value, specifiers);
208
- } else {
209
- var _seen_get;
210
- var _deDuplicated_modifyIndex;
211
- (_seen_get = seen.get(value)).push.apply(_seen_get, _toConsumableArray(specifiers));
212
- var modifyIndex = deDuplicated.findIndex(function(v) {
213
- return v.value === value;
214
- });
215
- var _deDuplicated_modifyIndex_initialize;
216
- var originInitialize = (_deDuplicated_modifyIndex_initialize = (_deDuplicated_modifyIndex = deDuplicated[modifyIndex]) === null || _deDuplicated_modifyIndex === void 0 ? void 0 : _deDuplicated_modifyIndex.initialize) !== null && _deDuplicated_modifyIndex_initialize !== void 0 ? _deDuplicated_modifyIndex_initialize : "";
217
- deDuplicated[modifyIndex].initialize = originInitialize.concat("\n".concat(initialize || ""));
218
- }
219
- };
220
- for(var _iterator = statements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)_loop();
221
- } catch (err) {
222
- _didIteratorError = true;
223
- _iteratorError = err;
224
- } finally{
225
- try {
226
- if (!_iteratorNormalCompletion && _iterator.return != null) {
227
- _iterator.return();
228
- }
229
- } finally{
230
- if (_didIteratorError) {
231
- throw _iteratorError;
232
- }
233
- }
243
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
244
+ _iterator.return();
245
+ }
246
+ } finally {
247
+ if (_didIteratorError) {
248
+ throw _iteratorError;
249
+ }
234
250
  }
235
- return deDuplicated.map(function(param) {
236
- var value = param.value, specifiers = param.specifiers, initialize = param.initialize;
237
- return "import ".concat(createImportSpecifier(specifiers), " from '").concat(value, "';\n").concat(initialize || "");
238
- }).join("\n");
251
+ }
252
+ return deDuplicated.map(function(param) {
253
+ var value = param.value, specifiers = param.specifiers, initialize = param.initialize;
254
+ return "import ".concat(createImportSpecifier(specifiers), " from '").concat(value, "';\n").concat(initialize || "");
255
+ }).join("\n");
239
256
  };
240
- var generateCode = function() {
241
- var _ref = _asyncToGenerator(function(appContext, config, entrypoints, api) {
242
- var internalDirectory, srcDirectory, internalDirAlias, internalSrcAlias, packageName, hookRunners, isV5, mountId, getRoutes;
243
- function generateEntryCode(entrypoint) {
244
- return _generateEntryCode.apply(this, arguments);
245
- }
246
- function _generateEntryCode() {
247
- _generateEntryCode = _asyncToGenerator(function(entrypoint) {
248
- var entryName, isAutoMount, customBootstrap, fileSystemRoutes, _config2_output, initialRoutes, nestedRoute, routes, config2, ssr, useSSG, mode, hasPageRoute, _ref, code2, _, _tmp, routesServerFile, code3, serverLoaderCombined, serverLoaderFile, _ref1, importStatements, plugins, _ref2, renderFunction, exportStatement, code, entryFile, _ref3, asyncEntryCode, bootstrapFile;
249
- return __generator(this, function(_state) {
250
- switch(_state.label){
251
- case 0:
252
- entryName = entrypoint.entryName, isAutoMount = entrypoint.isAutoMount, customBootstrap = entrypoint.customBootstrap, fileSystemRoutes = entrypoint.fileSystemRoutes;
253
- if (!isAutoMount) return [
254
- 3,
255
- 18
256
- ];
257
- if (!fileSystemRoutes) return [
258
- 3,
259
- 11
260
- ];
261
- initialRoutes = [];
262
- nestedRoute = null;
263
- if (entrypoint.entry) {
264
- initialRoutes = getRoutes({
265
- entrypoint: entrypoint,
266
- srcDirectory: srcDirectory,
267
- srcAlias: internalSrcAlias,
268
- internalDirectory: internalDirectory,
269
- internalDirAlias: internalDirAlias
270
- });
271
- }
272
- if (!(!isV5 && entrypoint.nestedRoutesEntry)) return [
273
- 3,
274
- 2
275
- ];
276
- return [
277
- 4,
278
- walk(entrypoint.nestedRoutesEntry, entrypoint.nestedRoutesEntry, {
279
- name: internalSrcAlias,
280
- basename: srcDirectory
281
- }, entrypoint.entryName)
282
- ];
283
- case 1:
284
- nestedRoute = _state.sent();
285
- if (nestedRoute) {
286
- initialRoutes.unshift(nestedRoute);
287
- }
288
- _state.label = 2;
289
- case 2:
290
- return [
291
- 4,
292
- hookRunners.modifyFileSystemRoutes({
293
- entrypoint: entrypoint,
294
- routes: initialRoutes
295
- })
296
- ];
297
- case 3:
298
- routes = _state.sent().routes;
299
- config2 = api.useResolvedConfigContext();
300
- ssr = getEntryOptions(entryName, config2.server.ssr, config2.server.ssrByEntries, packageName);
301
- useSSG = isSSGEntry(config2, entryName, entrypoints);
302
- if (ssr) {
303
- mode = typeof ssr === "object" ? ssr.mode || "string" : "string";
304
- }
305
- if (mode === "stream") {
306
- hasPageRoute = routes.some(function(route) {
307
- return "type" in route && route.type === "page";
308
- });
309
- if (hasPageRoute) {
310
- logger.error("Streaming ssr is not supported when pages dir exists");
311
- process.exit(1);
312
- }
313
- }
314
- _ = hookRunners.beforeGenerateRoutes;
315
- _tmp = {
316
- entrypoint: entrypoint
317
- };
318
- return [
319
- 4,
320
- templates.fileSystemRoutes({
321
- routes: routes,
322
- ssrMode: useSSG ? "string" : mode,
323
- nestedRoutesEntry: entrypoint.nestedRoutesEntry,
324
- entryName: entrypoint.entryName,
325
- internalDirectory: internalDirectory,
326
- splitRouteChunks: config2 === null || config2 === void 0 ? void 0 : (_config2_output = config2.output) === null || _config2_output === void 0 ? void 0 : _config2_output.splitRouteChunks
327
- })
328
- ];
329
- case 4:
330
- return [
331
- 4,
332
- _.apply(hookRunners, [
333
- (_tmp.code = _state.sent(), _tmp)
334
- ])
335
- ];
336
- case 5:
337
- _ref = _state.sent(), code2 = _ref.code;
338
- if (!(entrypoint.nestedRoutesEntry && isUseSSRBundle(config2))) return [
339
- 3,
340
- 8
341
- ];
342
- routesServerFile = getServerLoadersFile(internalDirectory, entryName);
343
- code3 = templates.routesForServer({
344
- routes: routes
345
- });
346
- return [
347
- 4,
348
- fs.ensureFile(routesServerFile)
349
- ];
350
- case 6:
351
- _state.sent();
352
- return [
353
- 4,
354
- fs.writeFile(routesServerFile, code3)
355
- ];
356
- case 7:
357
- _state.sent();
358
- _state.label = 8;
359
- case 8:
360
- serverLoaderCombined = templates.ssrLoaderCombinedModule(entrypoints, entrypoint, config2, appContext);
361
- if (!serverLoaderCombined) return [
362
- 3,
363
- 10
364
- ];
365
- serverLoaderFile = getServerCombinedModueFile(internalDirectory, entryName);
366
- return [
367
- 4,
368
- fs.outputFile(serverLoaderFile, serverLoaderCombined)
369
- ];
370
- case 9:
371
- _state.sent();
372
- _state.label = 10;
373
- case 10:
374
- fs.outputFileSync(path.resolve(internalDirectory, "./".concat(entryName, "/").concat(FILE_SYSTEM_ROUTES_FILE_NAME)), code2, "utf8");
375
- _state.label = 11;
376
- case 11:
377
- return [
378
- 4,
379
- hookRunners.modifyEntryImports({
380
- entrypoint: entrypoint,
381
- imports: getDefaultImports({
382
- entrypoint: entrypoint,
383
- srcDirectory: srcDirectory,
384
- internalSrcAlias: internalSrcAlias,
385
- internalDirAlias: internalDirAlias,
386
- internalDirectory: internalDirectory
387
- })
388
- })
389
- ];
390
- case 12:
391
- _ref1 = _state.sent(), importStatements = _ref1.imports;
392
- return [
393
- 4,
394
- hookRunners.modifyEntryRuntimePlugins({
395
- entrypoint: entrypoint,
396
- plugins: []
397
- })
398
- ];
399
- case 13:
400
- plugins = _state.sent().plugins;
401
- return [
402
- 4,
403
- hookRunners.modifyEntryRenderFunction({
404
- entrypoint: entrypoint,
405
- code: templates.renderFunction({
406
- plugins: plugins,
407
- customBootstrap: customBootstrap,
408
- fileSystemRoutes: fileSystemRoutes
409
- })
410
- })
411
- ];
412
- case 14:
413
- _ref2 = _state.sent(), renderFunction = _ref2.code;
414
- return [
415
- 4,
416
- hookRunners.modifyEntryExport({
417
- entrypoint: entrypoint,
418
- exportStatement: "export default AppWrapper;"
419
- })
420
- ];
421
- case 15:
422
- exportStatement = _state.sent().exportStatement;
423
- code = templates.index({
424
- mountId: mountId,
425
- imports: createImportStatements(importStatements),
426
- renderFunction: renderFunction,
427
- exportStatement: exportStatement
428
- });
429
- entryFile = path.resolve(internalDirectory, "./".concat(entryName, "/").concat(ENTRY_POINT_FILE_NAME));
430
- entrypoint.entry = entryFile;
431
- if (!config.source.enableAsyncEntry) return [
432
- 3,
433
- 17
434
- ];
435
- return [
436
- 4,
437
- hookRunners.modifyAsyncEntry({
438
- entrypoint: entrypoint,
439
- code: "import('./".concat(ENTRY_BOOTSTRAP_FILE_NAME, "');")
440
- })
441
- ];
442
- case 16:
443
- _ref3 = _state.sent(), asyncEntryCode = _ref3.code;
444
- fs.outputFileSync(entryFile, asyncEntryCode, "utf8");
445
- bootstrapFile = path.resolve(internalDirectory, "./".concat(entryName, "/").concat(ENTRY_BOOTSTRAP_FILE_NAME));
446
- fs.outputFileSync(bootstrapFile, code, "utf8");
447
- return [
448
- 3,
449
- 18
450
- ];
451
- case 17:
452
- fs.outputFileSync(entryFile, code, "utf8");
453
- _state.label = 18;
454
- case 18:
455
- return [
456
- 2
457
- ];
458
- }
459
- });
460
- });
461
- return _generateEntryCode.apply(this, arguments);
462
- }
257
+ export var generateCode = function() {
258
+ var _ref = _async_to_generator(function(appContext, config, entrypoints, api) {
259
+ var internalDirectory, srcDirectory, internalDirAlias, internalSrcAlias, packageName, hookRunners, isV5, mountId, getRoutes;
260
+ function generateEntryCode(entrypoint) {
261
+ return _generateEntryCode.apply(this, arguments);
262
+ }
263
+ function _generateEntryCode() {
264
+ _generateEntryCode = _async_to_generator(function(entrypoint) {
265
+ var entryName, isAutoMount, customBootstrap, fileSystemRoutes, _config_output, initialRoutes, nestedRoute, routes, _$config, ssr, useSSG, mode, hasPageRoute, code, _, _tmp, routesServerFile, code1, serverLoaderCombined, serverLoaderFile, _ref2, importStatements, plugins, _ref1, renderFunction, exportStatement, code2, entryFile, _ref22, asyncEntryCode, bootstrapFile;
463
266
  return __generator(this, function(_state) {
464
- switch(_state.label){
465
- case 0:
466
- internalDirectory = appContext.internalDirectory, srcDirectory = appContext.srcDirectory, internalDirAlias = appContext.internalDirAlias, internalSrcAlias = appContext.internalSrcAlias, packageName = appContext.packageName;
467
- hookRunners = api.useHookRunners();
468
- isV5 = isRouterV5(config);
469
- mountId = config.html.mountId;
470
- getRoutes = isV5 ? getClientRoutesLegacy : getClientRoutes;
471
- return [
472
- 4,
473
- Promise.all(entrypoints.map(generateEntryCode))
474
- ];
475
- case 1:
476
- _state.sent();
477
- return [
478
- 2
479
- ];
480
- }
267
+ switch (_state.label) {
268
+ case 0:
269
+ entryName = entrypoint.entryName, isAutoMount = entrypoint.isAutoMount, customBootstrap = entrypoint.customBootstrap, fileSystemRoutes = entrypoint.fileSystemRoutes;
270
+ if (!isAutoMount)
271
+ return [
272
+ 3,
273
+ 18
274
+ ];
275
+ if (!fileSystemRoutes)
276
+ return [
277
+ 3,
278
+ 11
279
+ ];
280
+ initialRoutes = [];
281
+ nestedRoute = null;
282
+ if (entrypoint.entry) {
283
+ initialRoutes = getRoutes({
284
+ entrypoint,
285
+ srcDirectory,
286
+ srcAlias: internalSrcAlias,
287
+ internalDirectory,
288
+ internalDirAlias
289
+ });
290
+ }
291
+ if (!(!isV5 && entrypoint.nestedRoutesEntry))
292
+ return [
293
+ 3,
294
+ 2
295
+ ];
296
+ return [
297
+ 4,
298
+ walk(entrypoint.nestedRoutesEntry, entrypoint.nestedRoutesEntry, {
299
+ name: internalSrcAlias,
300
+ basename: srcDirectory
301
+ }, entrypoint.entryName)
302
+ ];
303
+ case 1:
304
+ nestedRoute = _state.sent();
305
+ if (nestedRoute) {
306
+ initialRoutes.unshift(nestedRoute);
307
+ }
308
+ _state.label = 2;
309
+ case 2:
310
+ return [
311
+ 4,
312
+ hookRunners.modifyFileSystemRoutes({
313
+ entrypoint,
314
+ routes: initialRoutes
315
+ })
316
+ ];
317
+ case 3:
318
+ routes = _state.sent().routes;
319
+ _$config = api.useResolvedConfigContext();
320
+ ssr = getEntryOptions(entryName, _$config.server.ssr, _$config.server.ssrByEntries, packageName);
321
+ useSSG = isSSGEntry(_$config, entryName, entrypoints);
322
+ if (ssr) {
323
+ mode = typeof ssr === "object" ? ssr.mode || "string" : "string";
324
+ }
325
+ if (mode === "stream") {
326
+ hasPageRoute = routes.some(function(route) {
327
+ return "type" in route && route.type === "page";
328
+ });
329
+ if (hasPageRoute) {
330
+ logger.error("Streaming ssr is not supported when pages dir exists");
331
+ process.exit(1);
332
+ }
333
+ }
334
+ _ = hookRunners.beforeGenerateRoutes;
335
+ _tmp = {
336
+ entrypoint
337
+ };
338
+ return [
339
+ 4,
340
+ templates.fileSystemRoutes({
341
+ routes,
342
+ ssrMode: useSSG ? "string" : mode,
343
+ nestedRoutesEntry: entrypoint.nestedRoutesEntry,
344
+ entryName: entrypoint.entryName,
345
+ internalDirectory,
346
+ splitRouteChunks: _$config === null || _$config === void 0 ? void 0 : (_config_output = _$config.output) === null || _config_output === void 0 ? void 0 : _config_output.splitRouteChunks
347
+ })
348
+ ];
349
+ case 4:
350
+ return [
351
+ 4,
352
+ _.apply(hookRunners, [
353
+ (_tmp.code = _state.sent(), _tmp)
354
+ ])
355
+ ];
356
+ case 5:
357
+ code = _state.sent().code;
358
+ if (!(entrypoint.nestedRoutesEntry && isUseSSRBundle(_$config)))
359
+ return [
360
+ 3,
361
+ 8
362
+ ];
363
+ routesServerFile = getServerLoadersFile(internalDirectory, entryName);
364
+ code1 = templates.routesForServer({
365
+ routes
366
+ });
367
+ return [
368
+ 4,
369
+ fs.ensureFile(routesServerFile)
370
+ ];
371
+ case 6:
372
+ _state.sent();
373
+ return [
374
+ 4,
375
+ fs.writeFile(routesServerFile, code1)
376
+ ];
377
+ case 7:
378
+ _state.sent();
379
+ _state.label = 8;
380
+ case 8:
381
+ serverLoaderCombined = templates.ssrLoaderCombinedModule(entrypoints, entrypoint, _$config, appContext);
382
+ if (!serverLoaderCombined)
383
+ return [
384
+ 3,
385
+ 10
386
+ ];
387
+ serverLoaderFile = getServerCombinedModueFile(internalDirectory, entryName);
388
+ return [
389
+ 4,
390
+ fs.outputFile(serverLoaderFile, serverLoaderCombined)
391
+ ];
392
+ case 9:
393
+ _state.sent();
394
+ _state.label = 10;
395
+ case 10:
396
+ fs.outputFileSync(path.resolve(internalDirectory, "./".concat(entryName, "/").concat(FILE_SYSTEM_ROUTES_FILE_NAME)), code, "utf8");
397
+ _state.label = 11;
398
+ case 11:
399
+ return [
400
+ 4,
401
+ hookRunners.modifyEntryImports({
402
+ entrypoint,
403
+ imports: getDefaultImports({
404
+ entrypoint,
405
+ srcDirectory,
406
+ internalSrcAlias,
407
+ internalDirAlias,
408
+ internalDirectory
409
+ })
410
+ })
411
+ ];
412
+ case 12:
413
+ _ref2 = _state.sent(), importStatements = _ref2.imports;
414
+ return [
415
+ 4,
416
+ hookRunners.modifyEntryRuntimePlugins({
417
+ entrypoint,
418
+ plugins: []
419
+ })
420
+ ];
421
+ case 13:
422
+ plugins = _state.sent().plugins;
423
+ return [
424
+ 4,
425
+ hookRunners.modifyEntryRenderFunction({
426
+ entrypoint,
427
+ code: templates.renderFunction({
428
+ plugins,
429
+ customBootstrap,
430
+ fileSystemRoutes
431
+ })
432
+ })
433
+ ];
434
+ case 14:
435
+ _ref1 = _state.sent(), renderFunction = _ref1.code;
436
+ return [
437
+ 4,
438
+ hookRunners.modifyEntryExport({
439
+ entrypoint,
440
+ exportStatement: "export default AppWrapper;"
441
+ })
442
+ ];
443
+ case 15:
444
+ exportStatement = _state.sent().exportStatement;
445
+ code2 = templates.index({
446
+ mountId,
447
+ imports: createImportStatements(importStatements),
448
+ renderFunction,
449
+ exportStatement
450
+ });
451
+ entryFile = path.resolve(internalDirectory, "./".concat(entryName, "/").concat(ENTRY_POINT_FILE_NAME));
452
+ entrypoint.entry = entryFile;
453
+ if (!config.source.enableAsyncEntry)
454
+ return [
455
+ 3,
456
+ 17
457
+ ];
458
+ return [
459
+ 4,
460
+ hookRunners.modifyAsyncEntry({
461
+ entrypoint,
462
+ code: "import('./".concat(ENTRY_BOOTSTRAP_FILE_NAME, "');")
463
+ })
464
+ ];
465
+ case 16:
466
+ _ref22 = _state.sent(), asyncEntryCode = _ref22.code;
467
+ fs.outputFileSync(entryFile, asyncEntryCode, "utf8");
468
+ bootstrapFile = path.resolve(internalDirectory, "./".concat(entryName, "/").concat(ENTRY_BOOTSTRAP_FILE_NAME));
469
+ fs.outputFileSync(bootstrapFile, code2, "utf8");
470
+ return [
471
+ 3,
472
+ 18
473
+ ];
474
+ case 17:
475
+ fs.outputFileSync(entryFile, code2, "utf8");
476
+ _state.label = 18;
477
+ case 18:
478
+ return [
479
+ 2
480
+ ];
481
+ }
481
482
  });
483
+ });
484
+ return _generateEntryCode.apply(this, arguments);
485
+ }
486
+ return __generator(this, function(_state) {
487
+ switch (_state.label) {
488
+ case 0:
489
+ internalDirectory = appContext.internalDirectory, srcDirectory = appContext.srcDirectory, internalDirAlias = appContext.internalDirAlias, internalSrcAlias = appContext.internalSrcAlias, packageName = appContext.packageName;
490
+ hookRunners = api.useHookRunners();
491
+ isV5 = isRouterV5(config);
492
+ mountId = config.html.mountId;
493
+ getRoutes = isV5 ? getClientRoutesLegacy : getClientRoutes;
494
+ return [
495
+ 4,
496
+ Promise.all(entrypoints.map(generateEntryCode))
497
+ ];
498
+ case 1:
499
+ _state.sent();
500
+ return [
501
+ 2
502
+ ];
503
+ }
482
504
  });
483
- return function generateCode(appContext, config, entrypoints, api) {
484
- return _ref.apply(this, arguments);
485
- };
505
+ });
506
+ return function generateCode2(appContext, config, entrypoints, api) {
507
+ return _ref.apply(this, arguments);
508
+ };
486
509
  }();
487
- export { createImportStatements, generateCode };