@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,153 +1,160 @@
1
1
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
- try {
3
- var info = gen[key](arg);
4
- var value = info.value;
5
- } catch (error) {
6
- reject(error);
7
- return;
8
- }
9
- if (info.done) {
10
- resolve(value);
11
- } else {
12
- Promise.resolve(value).then(_next, _throw);
13
- }
2
+ try {
3
+ var info = gen[key](arg);
4
+ var value = info.value;
5
+ } catch (error) {
6
+ reject(error);
7
+ return;
8
+ }
9
+ if (info.done) {
10
+ resolve(value);
11
+ } else {
12
+ Promise.resolve(value).then(_next, _throw);
13
+ }
14
14
  }
15
- function _asyncToGenerator(fn) {
16
- return function() {
17
- var self = this, args = arguments;
18
- return new Promise(function(resolve, reject) {
19
- var gen = fn.apply(self, args);
20
- function _next(value) {
21
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
- }
23
- function _throw(err) {
24
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
- }
26
- _next(undefined);
27
- });
28
- };
15
+ function _async_to_generator(fn) {
16
+ return function() {
17
+ var self = this, args = arguments;
18
+ return new Promise(function(resolve, reject) {
19
+ var gen = fn.apply(self, args);
20
+ function _next(value) {
21
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
+ }
23
+ function _throw(err) {
24
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
+ }
26
+ _next(void 0);
27
+ });
28
+ };
29
29
  }
30
- var __generator = this && this.__generator || function(thisArg, body) {
31
- var f, y, t, g, _ = {
32
- label: 0,
33
- sent: function() {
34
- if (t[0] & 1) throw t[1];
35
- return t[1];
36
- },
37
- trys: [],
38
- ops: []
30
+ var __generator = function(thisArg, body) {
31
+ var f, y, t, g, _ = {
32
+ label: 0,
33
+ sent: function() {
34
+ if (t[0] & 1)
35
+ throw t[1];
36
+ return t[1];
37
+ },
38
+ trys: [],
39
+ ops: []
40
+ };
41
+ return g = {
42
+ next: verb(0),
43
+ "throw": verb(1),
44
+ "return": verb(2)
45
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
46
+ return this;
47
+ }), g;
48
+ function verb(n) {
49
+ return function(v) {
50
+ return step([
51
+ n,
52
+ v
53
+ ]);
39
54
  };
40
- return(g = {
41
- next: verb(0),
42
- "throw": verb(1),
43
- "return": verb(2)
44
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
45
- return this;
46
- }), g);
47
- function verb(n) {
48
- return function(v) {
49
- return step([
50
- n,
51
- v
52
- ]);
53
- };
54
- }
55
- function step(op) {
56
- if (f) throw new TypeError("Generator is already executing.");
57
- while(_)try {
58
- 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;
59
- if (y = 0, t) op = [
60
- op[0] & 2,
61
- t.value
62
- ];
63
- switch(op[0]){
64
- case 0:
65
- case 1:
66
- t = op;
67
- break;
68
- case 4:
69
- _.label++;
70
- return {
71
- value: op[1],
72
- done: false
73
- };
74
- case 5:
75
- _.label++;
76
- y = op[1];
77
- op = [
78
- 0
79
- ];
80
- continue;
81
- case 7:
82
- op = _.ops.pop();
83
- _.trys.pop();
84
- continue;
85
- default:
86
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
87
- _ = 0;
88
- continue;
89
- }
90
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
91
- _.label = op[1];
92
- break;
93
- }
94
- if (op[0] === 6 && _.label < t[1]) {
95
- _.label = t[1];
96
- t = op;
97
- break;
98
- }
99
- if (t && _.label < t[2]) {
100
- _.label = t[2];
101
- _.ops.push(op);
102
- break;
103
- }
104
- if (t[2]) _.ops.pop();
105
- _.trys.pop();
106
- continue;
107
- }
108
- op = body.call(thisArg, _);
109
- } catch (e) {
55
+ }
56
+ function step(op) {
57
+ if (f)
58
+ throw new TypeError("Generator is already executing.");
59
+ while (_)
60
+ try {
61
+ 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)
62
+ return t;
63
+ if (y = 0, t)
64
+ op = [
65
+ op[0] & 2,
66
+ t.value
67
+ ];
68
+ switch (op[0]) {
69
+ case 0:
70
+ case 1:
71
+ t = op;
72
+ break;
73
+ case 4:
74
+ _.label++;
75
+ return {
76
+ value: op[1],
77
+ done: false
78
+ };
79
+ case 5:
80
+ _.label++;
81
+ y = op[1];
110
82
  op = [
111
- 6,
112
- e
83
+ 0
113
84
  ];
114
- y = 0;
115
- } finally{
116
- f = t = 0;
85
+ continue;
86
+ case 7:
87
+ op = _.ops.pop();
88
+ _.trys.pop();
89
+ continue;
90
+ default:
91
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
92
+ _ = 0;
93
+ continue;
94
+ }
95
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
96
+ _.label = op[1];
97
+ break;
98
+ }
99
+ if (op[0] === 6 && _.label < t[1]) {
100
+ _.label = t[1];
101
+ t = op;
102
+ break;
103
+ }
104
+ if (t && _.label < t[2]) {
105
+ _.label = t[2];
106
+ _.ops.push(op);
107
+ break;
108
+ }
109
+ if (t[2])
110
+ _.ops.pop();
111
+ _.trys.pop();
112
+ continue;
117
113
  }
118
- if (op[0] & 5) throw op[1];
119
- return {
120
- value: op[0] ? op[1] : void 0,
121
- done: true
122
- };
123
- }
114
+ op = body.call(thisArg, _);
115
+ } catch (e) {
116
+ op = [
117
+ 6,
118
+ e
119
+ ];
120
+ y = 0;
121
+ } finally {
122
+ f = t = 0;
123
+ }
124
+ if (op[0] & 5)
125
+ throw op[1];
126
+ return {
127
+ value: op[0] ? op[1] : void 0,
128
+ done: true
129
+ };
130
+ }
124
131
  };
125
132
  import path from "path";
126
133
  import { fs, ROUTE_SPEC_FILE } from "@modern-js/utils";
127
134
  var generateRoutes = function() {
128
- var _ref = _asyncToGenerator(function(appContext) {
129
- var serverRoutes, distDirectory, output;
130
- return __generator(this, function(_state) {
131
- switch(_state.label){
132
- case 0:
133
- serverRoutes = appContext.serverRoutes, distDirectory = appContext.distDirectory;
134
- output = JSON.stringify({
135
- routes: serverRoutes
136
- }, null, 2);
137
- return [
138
- 4,
139
- fs.outputFile(path.join(distDirectory, ROUTE_SPEC_FILE), output)
140
- ];
141
- case 1:
142
- _state.sent();
143
- return [
144
- 2
145
- ];
146
- }
147
- });
135
+ var _ref = _async_to_generator(function(appContext) {
136
+ var serverRoutes, distDirectory, output;
137
+ return __generator(this, function(_state) {
138
+ switch (_state.label) {
139
+ case 0:
140
+ serverRoutes = appContext.serverRoutes, distDirectory = appContext.distDirectory;
141
+ output = JSON.stringify({
142
+ routes: serverRoutes
143
+ }, null, 2);
144
+ return [
145
+ 4,
146
+ fs.outputFile(path.join(distDirectory, ROUTE_SPEC_FILE), output)
147
+ ];
148
+ case 1:
149
+ _state.sent();
150
+ return [
151
+ 2
152
+ ];
153
+ }
148
154
  });
149
- return function generateRoutes(appContext) {
150
- return _ref.apply(this, arguments);
151
- };
155
+ });
156
+ return function generateRoutes2(appContext) {
157
+ return _ref.apply(this, arguments);
158
+ };
152
159
  }();
153
160
  export { generateRoutes };
@@ -1 +1 @@
1
- "use strict";
1
+ export {};
@@ -1,22 +1,31 @@
1
- const JS_EXTENSIONS = [".js", ".ts", ".jsx", ".tsx"];
2
- const INDEX_FILE_NAME = "index";
3
- const APP_FILE_NAME = "App";
4
- const PAGES_DIR_NAME = "pages";
5
- const NESTED_ROUTES_DIR = "routes";
6
- const FILE_SYSTEM_ROUTES_FILE_NAME = "routes.js";
7
- const LOADER_EXPORT_NAME = "loader";
8
- const TEMP_LOADERS_DIR = "__loaders__";
9
- const ENTRY_POINT_FILE_NAME = "index.js";
10
- const ENTRY_BOOTSTRAP_FILE_NAME = "bootstrap.js";
11
- const FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP = /^\[(\S+)\]([*+?]?)$/;
12
- const FILE_SYSTEM_ROUTES_LAYOUT = "_layout";
13
- const FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT = "_app";
14
- const FILE_SYSTEM_ROUTES_INDEX = "index";
15
- const FILE_SYSTEM_ROUTES_IGNORED_REGEX = /\.(d|test|spec|e2e)\.(js|jsx|ts|tsx)$/;
16
- const HTML_PARTIALS_FOLDER = "html";
17
- const HTML_PARTIALS_EXTENSIONS = [".htm", ".html", ".ejs"];
18
- const FILE_SYSTEM_ROUTES_COMPONENTS_DIR = "internal_components";
19
- const NESTED_ROUTE = {
1
+ export const JS_EXTENSIONS = [
2
+ ".js",
3
+ ".ts",
4
+ ".jsx",
5
+ ".tsx"
6
+ ];
7
+ export const INDEX_FILE_NAME = "index";
8
+ export const APP_FILE_NAME = "App";
9
+ export const PAGES_DIR_NAME = "pages";
10
+ export const NESTED_ROUTES_DIR = "routes";
11
+ export const FILE_SYSTEM_ROUTES_FILE_NAME = "routes.js";
12
+ export const LOADER_EXPORT_NAME = "loader";
13
+ export const TEMP_LOADERS_DIR = "__loaders__";
14
+ export const ENTRY_POINT_FILE_NAME = "index.js";
15
+ export const ENTRY_BOOTSTRAP_FILE_NAME = "bootstrap.js";
16
+ export const FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP = /^\[(\S+)\]([*+?]?)$/;
17
+ export const FILE_SYSTEM_ROUTES_LAYOUT = "_layout";
18
+ export const FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT = "_app";
19
+ export const FILE_SYSTEM_ROUTES_INDEX = "index";
20
+ export const FILE_SYSTEM_ROUTES_IGNORED_REGEX = /\.(d|test|spec|e2e)\.(js|jsx|ts|tsx)$/;
21
+ export const HTML_PARTIALS_FOLDER = "html";
22
+ export const HTML_PARTIALS_EXTENSIONS = [
23
+ ".htm",
24
+ ".html",
25
+ ".ejs"
26
+ ];
27
+ export const FILE_SYSTEM_ROUTES_COMPONENTS_DIR = "internal_components";
28
+ export const NESTED_ROUTE = {
20
29
  LAYOUT_FILE: "layout",
21
30
  LAYOUT_LOADER_FILE: "layout.loader",
22
31
  PAGE_FILE: "page",
@@ -29,30 +38,6 @@ const NESTED_ROUTE = {
29
38
  LAYOUT_CONFIG_FILE: "layout.config",
30
39
  PAGE_CONFIG_FILE: "page.config"
31
40
  };
32
- const APP_CONFIG_NAME = "config";
33
- const APP_INIT_EXPORTED = "init";
34
- const APP_INIT_IMPORTED = "appInit";
35
- export {
36
- APP_CONFIG_NAME,
37
- APP_FILE_NAME,
38
- APP_INIT_EXPORTED,
39
- APP_INIT_IMPORTED,
40
- ENTRY_BOOTSTRAP_FILE_NAME,
41
- ENTRY_POINT_FILE_NAME,
42
- FILE_SYSTEM_ROUTES_COMPONENTS_DIR,
43
- FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP,
44
- FILE_SYSTEM_ROUTES_FILE_NAME,
45
- FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT,
46
- FILE_SYSTEM_ROUTES_IGNORED_REGEX,
47
- FILE_SYSTEM_ROUTES_INDEX,
48
- FILE_SYSTEM_ROUTES_LAYOUT,
49
- HTML_PARTIALS_EXTENSIONS,
50
- HTML_PARTIALS_FOLDER,
51
- INDEX_FILE_NAME,
52
- JS_EXTENSIONS,
53
- LOADER_EXPORT_NAME,
54
- NESTED_ROUTE,
55
- NESTED_ROUTES_DIR,
56
- PAGES_DIR_NAME,
57
- TEMP_LOADERS_DIR
58
- };
41
+ export const APP_CONFIG_NAME = "config";
42
+ export const APP_INIT_EXPORTED = "init";
43
+ export const APP_INIT_IMPORTED = "appInit";
@@ -1,24 +1,9 @@
1
1
  import path from "path";
2
- import {
3
- fs,
4
- getEntryOptions,
5
- isRouterV5,
6
- isSSGEntry,
7
- isUseSSRBundle,
8
- logger
9
- } from "@modern-js/utils";
2
+ import { fs, getEntryOptions, isRouterV5, isSSGEntry, isUseSSRBundle, logger } from "@modern-js/utils";
10
3
  import * as templates from "./templates";
11
4
  import { getClientRoutes, getClientRoutesLegacy } from "./getClientRoutes";
12
- import {
13
- FILE_SYSTEM_ROUTES_FILE_NAME,
14
- ENTRY_POINT_FILE_NAME,
15
- ENTRY_BOOTSTRAP_FILE_NAME
16
- } from "./constants";
17
- import {
18
- getDefaultImports,
19
- getServerLoadersFile,
20
- getServerCombinedModueFile
21
- } from "./utils";
5
+ import { FILE_SYSTEM_ROUTES_FILE_NAME, ENTRY_POINT_FILE_NAME, ENTRY_BOOTSTRAP_FILE_NAME } from "./constants";
6
+ import { getDefaultImports, getServerLoadersFile, getServerCombinedModueFile } from "./utils";
22
7
  import { walk } from "./nestedRoutes";
23
8
  const createImportSpecifier = (specifiers) => {
24
9
  let defaults = "";
@@ -40,8 +25,7 @@ const createImportSpecifier = (specifiers) => {
40
25
  return `{ ${named.join(", ")} }`;
41
26
  }
42
27
  };
43
- const createImportStatements = (statements) => {
44
- var _a, _b;
28
+ export const createImportStatements = (statements) => {
45
29
  const deDuplicated = [];
46
30
  const seen = /* @__PURE__ */ new Map();
47
31
  for (const { value, specifiers, initialize } of statements) {
@@ -53,38 +37,30 @@ const createImportStatements = (statements) => {
53
37
  });
54
38
  seen.set(value, specifiers);
55
39
  } else {
40
+ var _deDuplicated_modifyIndex;
56
41
  seen.get(value).push(...specifiers);
57
42
  const modifyIndex = deDuplicated.findIndex((v) => v.value === value);
58
- const originInitialize = (_b = (_a = deDuplicated[modifyIndex]) == null ? void 0 : _a.initialize) != null ? _b : "";
59
- deDuplicated[modifyIndex].initialize = originInitialize.concat(
60
- `
61
- ${initialize || ""}`
62
- );
43
+ var _deDuplicated_modifyIndex_initialize;
44
+ const 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 : "";
45
+ deDuplicated[modifyIndex].initialize = originInitialize.concat(`
46
+ ${initialize || ""}`);
63
47
  }
64
48
  }
65
- return deDuplicated.map(
66
- ({ value, specifiers, initialize }) => `import ${createImportSpecifier(specifiers)} from '${value}';
67
- ${initialize || ""}`
68
- ).join("\n");
49
+ return deDuplicated.map(({ value, specifiers, initialize }) => `import ${createImportSpecifier(specifiers)} from '${value}';
50
+ ${initialize || ""}`).join("\n");
69
51
  };
70
- const generateCode = async (appContext, config, entrypoints, api) => {
71
- const {
72
- internalDirectory,
73
- srcDirectory,
74
- internalDirAlias,
75
- internalSrcAlias,
76
- packageName
77
- } = appContext;
52
+ export const generateCode = async (appContext, config, entrypoints, api) => {
53
+ const { internalDirectory, srcDirectory, internalDirAlias, internalSrcAlias, packageName } = appContext;
78
54
  const hookRunners = api.useHookRunners();
79
55
  const isV5 = isRouterV5(config);
80
56
  const { mountId } = config.html;
81
57
  const getRoutes = isV5 ? getClientRoutesLegacy : getClientRoutes;
82
58
  await Promise.all(entrypoints.map(generateEntryCode));
83
59
  async function generateEntryCode(entrypoint) {
84
- var _a;
85
60
  const { entryName, isAutoMount, customBootstrap, fileSystemRoutes } = entrypoint;
86
61
  if (isAutoMount) {
87
62
  if (fileSystemRoutes) {
63
+ var _config_output;
88
64
  let initialRoutes = [];
89
65
  let nestedRoute = null;
90
66
  if (entrypoint.entry) {
@@ -97,15 +73,10 @@ const generateCode = async (appContext, config, entrypoints, api) => {
97
73
  });
98
74
  }
99
75
  if (!isV5 && entrypoint.nestedRoutesEntry) {
100
- nestedRoute = await walk(
101
- entrypoint.nestedRoutesEntry,
102
- entrypoint.nestedRoutesEntry,
103
- {
104
- name: internalSrcAlias,
105
- basename: srcDirectory
106
- },
107
- entrypoint.entryName
108
- );
76
+ nestedRoute = await walk(entrypoint.nestedRoutesEntry, entrypoint.nestedRoutesEntry, {
77
+ name: internalSrcAlias,
78
+ basename: srcDirectory
79
+ }, entrypoint.entryName);
109
80
  if (nestedRoute) {
110
81
  initialRoutes.unshift(nestedRoute);
111
82
  }
@@ -115,25 +86,16 @@ const generateCode = async (appContext, config, entrypoints, api) => {
115
86
  routes: initialRoutes
116
87
  });
117
88
  const config2 = api.useResolvedConfigContext();
118
- const ssr = getEntryOptions(
119
- entryName,
120
- config2.server.ssr,
121
- config2.server.ssrByEntries,
122
- packageName
123
- );
89
+ const ssr = getEntryOptions(entryName, config2.server.ssr, config2.server.ssrByEntries, packageName);
124
90
  const useSSG = isSSGEntry(config2, entryName, entrypoints);
125
91
  let mode;
126
92
  if (ssr) {
127
93
  mode = typeof ssr === "object" ? ssr.mode || "string" : "string";
128
94
  }
129
95
  if (mode === "stream") {
130
- const hasPageRoute = routes.some(
131
- (route) => "type" in route && route.type === "page"
132
- );
96
+ const hasPageRoute = routes.some((route) => "type" in route && route.type === "page");
133
97
  if (hasPageRoute) {
134
- logger.error(
135
- "Streaming ssr is not supported when pages dir exists"
136
- );
98
+ logger.error("Streaming ssr is not supported when pages dir exists");
137
99
  process.exit(1);
138
100
  }
139
101
  }
@@ -145,41 +107,23 @@ const generateCode = async (appContext, config, entrypoints, api) => {
145
107
  nestedRoutesEntry: entrypoint.nestedRoutesEntry,
146
108
  entryName: entrypoint.entryName,
147
109
  internalDirectory,
148
- splitRouteChunks: (_a = config2 == null ? void 0 : config2.output) == null ? void 0 : _a.splitRouteChunks
110
+ splitRouteChunks: config2 === null || config2 === void 0 ? void 0 : (_config_output = config2.output) === null || _config_output === void 0 ? void 0 : _config_output.splitRouteChunks
149
111
  })
150
112
  });
151
113
  if (entrypoint.nestedRoutesEntry && isUseSSRBundle(config2)) {
152
- const routesServerFile = getServerLoadersFile(
153
- internalDirectory,
154
- entryName
155
- );
114
+ const routesServerFile = getServerLoadersFile(internalDirectory, entryName);
156
115
  const code3 = templates.routesForServer({
157
116
  routes
158
117
  });
159
118
  await fs.ensureFile(routesServerFile);
160
119
  await fs.writeFile(routesServerFile, code3);
161
120
  }
162
- const serverLoaderCombined = templates.ssrLoaderCombinedModule(
163
- entrypoints,
164
- entrypoint,
165
- config2,
166
- appContext
167
- );
121
+ const serverLoaderCombined = templates.ssrLoaderCombinedModule(entrypoints, entrypoint, config2, appContext);
168
122
  if (serverLoaderCombined) {
169
- const serverLoaderFile = getServerCombinedModueFile(
170
- internalDirectory,
171
- entryName
172
- );
123
+ const serverLoaderFile = getServerCombinedModueFile(internalDirectory, entryName);
173
124
  await fs.outputFile(serverLoaderFile, serverLoaderCombined);
174
125
  }
175
- fs.outputFileSync(
176
- path.resolve(
177
- internalDirectory,
178
- `./${entryName}/${FILE_SYSTEM_ROUTES_FILE_NAME}`
179
- ),
180
- code2,
181
- "utf8"
182
- );
126
+ fs.outputFileSync(path.resolve(internalDirectory, `./${entryName}/${FILE_SYSTEM_ROUTES_FILE_NAME}`), code2, "utf8");
183
127
  }
184
128
  const { imports: importStatements } = await hookRunners.modifyEntryImports({
185
129
  entrypoint,
@@ -213,10 +157,7 @@ const generateCode = async (appContext, config, entrypoints, api) => {
213
157
  renderFunction,
214
158
  exportStatement
215
159
  });
216
- const entryFile = path.resolve(
217
- internalDirectory,
218
- `./${entryName}/${ENTRY_POINT_FILE_NAME}`
219
- );
160
+ const entryFile = path.resolve(internalDirectory, `./${entryName}/${ENTRY_POINT_FILE_NAME}`);
220
161
  entrypoint.entry = entryFile;
221
162
  if (config.source.enableAsyncEntry) {
222
163
  const { code: asyncEntryCode } = await hookRunners.modifyAsyncEntry({
@@ -224,10 +165,7 @@ const generateCode = async (appContext, config, entrypoints, api) => {
224
165
  code: `import('./${ENTRY_BOOTSTRAP_FILE_NAME}');`
225
166
  });
226
167
  fs.outputFileSync(entryFile, asyncEntryCode, "utf8");
227
- const bootstrapFile = path.resolve(
228
- internalDirectory,
229
- `./${entryName}/${ENTRY_BOOTSTRAP_FILE_NAME}`
230
- );
168
+ const bootstrapFile = path.resolve(internalDirectory, `./${entryName}/${ENTRY_BOOTSTRAP_FILE_NAME}`);
231
169
  fs.outputFileSync(bootstrapFile, code, "utf8");
232
170
  } else {
233
171
  fs.outputFileSync(entryFile, code, "utf8");
@@ -235,7 +173,3 @@ const generateCode = async (appContext, config, entrypoints, api) => {
235
173
  }
236
174
  }
237
175
  };
238
- export {
239
- createImportStatements,
240
- generateCode
241
- };
@@ -1,11 +1,5 @@
1
1
  import path from "path";
2
- import {
3
- ensureAbsolutePath,
4
- fs,
5
- findExists,
6
- MAIN_ENTRY_NAME,
7
- isRouterV5
8
- } from "@modern-js/utils";
2
+ import { ensureAbsolutePath, fs, findExists, MAIN_ENTRY_NAME, isRouterV5 } from "@modern-js/utils";
9
3
  import { getFileSystemEntry } from "./getFileSystemEntry";
10
4
  import { JS_EXTENSIONS } from "./constants";
11
5
  const ensureExtensions = (file) => {
@@ -20,20 +14,16 @@ const ifAlreadyExists = (entrypoints, checked) => entrypoints.some((entrypoint)
20
14
  return true;
21
15
  }
22
16
  if (entrypoint.entry.startsWith(checked.entry) || checked.entry.startsWith(entrypoint.entry)) {
23
- throw new Error(
24
- `Entry configuration conflicts
17
+ throw new Error(`Entry configuration conflicts
25
18
  Your configuration: ${checked.entry}.
26
19
  Default entrypoint: ${entrypoint.entry}
27
- Please reset source.entries or set source.disableDefaultEntries to disable the default entry rules.`
28
- );
20
+ Please reset source.entries or set source.disableDefaultEntries to disable the default entry rules.`);
29
21
  }
30
22
  return false;
31
23
  });
32
- const getBundleEntry = (appContext, config) => {
24
+ export const getBundleEntry = (appContext, config) => {
33
25
  const { appDirectory, packageName } = appContext;
34
- const {
35
- source: { disableDefaultEntries, entries, entriesDir }
36
- } = config;
26
+ const { source: { disableDefaultEntries, entries, entriesDir } } = config;
37
27
  const defaults = disableDefaultEntries ? [] : getFileSystemEntry(appContext, config);
38
28
  if (entries) {
39
29
  Object.keys(entries).forEach((name) => {
@@ -41,17 +31,13 @@ const getBundleEntry = (appContext, config) => {
41
31
  const entrypoint = typeof value === "string" ? {
42
32
  entryName: name,
43
33
  entry: ensureAbsolutePath(appDirectory, value),
44
- absoluteEntryDir: path.dirname(
45
- ensureAbsolutePath(appDirectory, value)
46
- ),
34
+ absoluteEntryDir: path.dirname(ensureAbsolutePath(appDirectory, value)),
47
35
  isAutoMount: true,
48
36
  fileSystemRoutes: fs.statSync(ensureAbsolutePath(appDirectory, value)).isDirectory() ? {} : void 0
49
37
  } : {
50
38
  entryName: name,
51
39
  entry: ensureAbsolutePath(appDirectory, value.entry),
52
- absoluteEntryDir: path.dirname(
53
- ensureAbsolutePath(appDirectory, value.entry)
54
- ),
40
+ absoluteEntryDir: path.dirname(ensureAbsolutePath(appDirectory, value.entry)),
55
41
  isAutoMount: !value.disableMount,
56
42
  customBootstrap: value.customBootstrap && ensureAbsolutePath(appDirectory, value.customBootstrap),
57
43
  fileSystemRoutes: fs.statSync(ensureAbsolutePath(appDirectory, value.entry)).isDirectory() ? {} : void 0
@@ -66,13 +52,8 @@ const getBundleEntry = (appContext, config) => {
66
52
  }
67
53
  if (!disableDefaultEntries) {
68
54
  const entriesDirAbs = ensureAbsolutePath(appDirectory, entriesDir || "");
69
- const found = defaults.find(
70
- ({ entryName, entry, nestedRoutesEntry = "" }) => entryName === packageName || path.dirname(entry) === entriesDirAbs || path.dirname(nestedRoutesEntry) === entriesDirAbs
71
- );
55
+ const found = defaults.find(({ entryName, entry, nestedRoutesEntry = "" }) => entryName === packageName || path.dirname(entry) === entriesDirAbs || path.dirname(nestedRoutesEntry) === entriesDirAbs);
72
56
  found && (found.entryName = MAIN_ENTRY_NAME);
73
57
  }
74
58
  return defaults;
75
59
  };
76
- export {
77
- getBundleEntry
78
- };