@modern-js/app-tools 2.15.0 → 2.17.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 +68 -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,126 +1,133 @@
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 * as path from "path";
126
133
  import { mergeBuilderConfig } from "@modern-js/builder-shared";
@@ -128,240 +135,241 @@ import { isSSR, fs } from "@modern-js/utils";
128
135
  import { HtmlAsyncChunkPlugin, RouterPlugin } from "../bundlerPlugins";
129
136
  import { getServerCombinedModueFile } from "../../../analyze/utils";
130
137
  import { isHtmlEnabled } from "./adapterHtml";
131
- var builderPluginAdapterSSR = function(options) {
132
- return {
133
- name: "builder-plugin-adapter-modern-ssr",
134
- setup: function setup(api) {
135
- var normalizedConfig = options.normalizedConfig;
136
- api.modifyBuilderConfig(function(config) {
137
- if (isStreamingSSR(normalizedConfig)) {
138
- return mergeBuilderConfig(config, {
139
- html: {
140
- inject: "body"
141
- }
142
- });
143
- }
144
- return config;
145
- });
146
- api.modifyBundlerChain(function() {
147
- var _ref = _asyncToGenerator(function(chain, param) {
148
- var target, CHAIN_ID, isProd, HtmlBundlerPlugin, isServer, builderConfig, normalizedConfig2;
149
- return __generator(this, function(_state) {
150
- switch(_state.label){
151
- case 0:
152
- target = param.target, CHAIN_ID = param.CHAIN_ID, isProd = param.isProd, HtmlBundlerPlugin = param.HtmlPlugin, isServer = param.isServer;
153
- builderConfig = api.getNormalizedConfig();
154
- normalizedConfig2 = options.normalizedConfig;
155
- applyRouterPlugin(chain, options);
156
- if (!isSSR(normalizedConfig2)) return [
157
- 3,
158
- 2
159
- ];
160
- return [
161
- 4,
162
- applySSRLoaderEntry(chain, options, isServer)
163
- ];
164
- case 1:
165
- _state.sent();
166
- applySSRDataLoader(chain, options);
167
- _state.label = 2;
168
- case 2:
169
- if ([
170
- "node",
171
- "service-worker"
172
- ].includes(target)) {
173
- applyFilterEntriesBySSRConfig({
174
- isProd: isProd,
175
- chain: chain,
176
- appNormalizedConfig: normalizedConfig2
177
- });
178
- }
179
- if (isHtmlEnabled(builderConfig, target)) {
180
- applyAsyncChunkHtmlPlugin({
181
- chain: chain,
182
- modernConfig: options.normalizedConfig,
183
- CHAIN_ID: CHAIN_ID,
184
- HtmlBundlerPlugin: HtmlBundlerPlugin
185
- });
186
- }
187
- return [
188
- 2
189
- ];
190
- }
191
- });
192
- });
193
- return function(chain, _) {
194
- return _ref.apply(this, arguments);
195
- };
196
- }());
197
- }
198
- };
199
- };
200
- var isStreamingSSR = function(userConfig) {
201
- var isStreaming = function(ssr) {
202
- return ssr && typeof ssr === "object" && ssr.mode === "stream";
203
- };
204
- var server = userConfig.server;
205
- if (isStreaming(server.ssr)) {
206
- return true;
207
- }
208
- if ((server === null || server === void 0 ? void 0 : server.ssrByEntries) && typeof server.ssrByEntries === "object") {
209
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
210
- try {
211
- for(var _iterator = Object.keys(server.ssrByEntries)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
212
- var name = _step.value;
213
- if (isStreaming(server.ssrByEntries[name])) {
214
- return true;
215
- }
138
+ export var builderPluginAdapterSSR = function(options) {
139
+ return {
140
+ name: "builder-plugin-adapter-modern-ssr",
141
+ setup: function setup(api) {
142
+ var normalizedConfig = options.normalizedConfig;
143
+ api.modifyBuilderConfig(function(config) {
144
+ if (isStreamingSSR(normalizedConfig)) {
145
+ return mergeBuilderConfig(config, {
146
+ html: {
147
+ inject: "body"
216
148
  }
217
- } catch (err) {
218
- _didIteratorError = true;
219
- _iteratorError = err;
220
- } finally{
221
- try {
222
- if (!_iteratorNormalCompletion && _iterator.return != null) {
223
- _iterator.return();
149
+ });
150
+ }
151
+ return config;
152
+ });
153
+ api.modifyBundlerChain(function() {
154
+ var _ref = _async_to_generator(function(chain, param) {
155
+ var target, CHAIN_ID, isProd, HtmlBundlerPlugin, isServer, builderConfig, normalizedConfig2;
156
+ return __generator(this, function(_state) {
157
+ switch (_state.label) {
158
+ case 0:
159
+ target = param.target, CHAIN_ID = param.CHAIN_ID, isProd = param.isProd, HtmlBundlerPlugin = param.HtmlPlugin, isServer = param.isServer;
160
+ builderConfig = api.getNormalizedConfig();
161
+ normalizedConfig2 = options.normalizedConfig;
162
+ applyRouterPlugin(chain, options);
163
+ if (!isSSR(normalizedConfig2))
164
+ return [
165
+ 3,
166
+ 2
167
+ ];
168
+ return [
169
+ 4,
170
+ applySSRLoaderEntry(chain, options, isServer)
171
+ ];
172
+ case 1:
173
+ _state.sent();
174
+ applySSRDataLoader(chain, options);
175
+ _state.label = 2;
176
+ case 2:
177
+ if ([
178
+ "node",
179
+ "service-worker"
180
+ ].includes(target)) {
181
+ applyFilterEntriesBySSRConfig({
182
+ isProd,
183
+ chain,
184
+ appNormalizedConfig: normalizedConfig2
185
+ });
224
186
  }
225
- } finally{
226
- if (_didIteratorError) {
227
- throw _iteratorError;
187
+ if (isHtmlEnabled(builderConfig, target)) {
188
+ applyAsyncChunkHtmlPlugin({
189
+ chain,
190
+ modernConfig: options.normalizedConfig,
191
+ CHAIN_ID,
192
+ HtmlBundlerPlugin
193
+ });
228
194
  }
195
+ return [
196
+ 2
197
+ ];
229
198
  }
199
+ });
200
+ });
201
+ return function(chain, _) {
202
+ return _ref.apply(this, arguments);
203
+ };
204
+ }());
205
+ }
206
+ };
207
+ };
208
+ var isStreamingSSR = function(userConfig) {
209
+ var isStreaming = function(ssr) {
210
+ return ssr && typeof ssr === "object" && ssr.mode === "stream";
211
+ };
212
+ var server = userConfig.server;
213
+ if (isStreaming(server.ssr)) {
214
+ return true;
215
+ }
216
+ if ((server === null || server === void 0 ? void 0 : server.ssrByEntries) && typeof server.ssrByEntries === "object") {
217
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
218
+ try {
219
+ for (var _iterator = Object.keys(server.ssrByEntries)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
220
+ var name = _step.value;
221
+ if (isStreaming(server.ssrByEntries[name])) {
222
+ return true;
230
223
  }
224
+ }
225
+ } catch (err) {
226
+ _didIteratorError = true;
227
+ _iteratorError = err;
228
+ } finally {
229
+ try {
230
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
231
+ _iterator.return();
232
+ }
233
+ } finally {
234
+ if (_didIteratorError) {
235
+ throw _iteratorError;
236
+ }
237
+ }
231
238
  }
232
- return false;
239
+ }
240
+ return false;
233
241
  };
234
242
  function applyAsyncChunkHtmlPlugin(param) {
235
- var chain = param.chain, modernConfig = param.modernConfig, CHAIN_ID = param.CHAIN_ID, HtmlBundlerPlugin = param.HtmlBundlerPlugin;
236
- if (isStreamingSSR(modernConfig)) {
237
- chain.plugin(CHAIN_ID.PLUGIN.HTML_ASYNC_CHUNK).use(HtmlAsyncChunkPlugin, [
238
- HtmlBundlerPlugin
239
- ]);
240
- }
243
+ var chain = param.chain, modernConfig = param.modernConfig, CHAIN_ID = param.CHAIN_ID, HtmlBundlerPlugin = param.HtmlBundlerPlugin;
244
+ if (isStreamingSSR(modernConfig)) {
245
+ chain.plugin(CHAIN_ID.PLUGIN.HTML_ASYNC_CHUNK).use(HtmlAsyncChunkPlugin, [
246
+ HtmlBundlerPlugin
247
+ ]);
248
+ }
241
249
  }
242
250
  function applyRouterPlugin(chain, options) {
243
- var _normalizedConfig_runtime;
244
- var appContext = options.appContext, normalizedConfig = options.normalizedConfig;
245
- var entrypoints = appContext.entrypoints;
246
- var existNestedRoutes = entrypoints.some(function(entrypoint) {
247
- return entrypoint.nestedRoutesEntry;
248
- });
249
- var routerConfig = normalizedConfig === null || normalizedConfig === void 0 ? void 0 : (_normalizedConfig_runtime = normalizedConfig.runtime) === null || _normalizedConfig_runtime === void 0 ? void 0 : _normalizedConfig_runtime.router;
250
- var routerManifest = Boolean(routerConfig === null || routerConfig === void 0 ? void 0 : routerConfig.manifest);
251
- if (existNestedRoutes || routerManifest) {
252
- chain.plugin("route-plugin").use(RouterPlugin);
253
- }
251
+ var _normalizedConfig_runtime;
252
+ var appContext = options.appContext, normalizedConfig = options.normalizedConfig;
253
+ var entrypoints = appContext.entrypoints;
254
+ var existNestedRoutes = entrypoints.some(function(entrypoint) {
255
+ return entrypoint.nestedRoutesEntry;
256
+ });
257
+ var routerConfig = normalizedConfig === null || normalizedConfig === void 0 ? void 0 : (_normalizedConfig_runtime = normalizedConfig.runtime) === null || _normalizedConfig_runtime === void 0 ? void 0 : _normalizedConfig_runtime.router;
258
+ var routerManifest = Boolean(routerConfig === null || routerConfig === void 0 ? void 0 : routerConfig.manifest);
259
+ if (existNestedRoutes || routerManifest) {
260
+ chain.plugin("route-plugin").use(RouterPlugin);
261
+ }
254
262
  }
255
263
  function applyFilterEntriesBySSRConfig(param) {
256
- var isProd = param.isProd, chain = param.chain, appNormalizedConfig = param.appNormalizedConfig;
257
- var _outputConfig_ssg;
258
- var serverConfig = appNormalizedConfig.server, outputConfig = appNormalizedConfig.output;
259
- var entries = chain.entryPoints.entries();
260
- if (isProd && ((outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg) === true || typeof (outputConfig === null || outputConfig === void 0 ? void 0 : (_outputConfig_ssg = outputConfig.ssg) === null || _outputConfig_ssg === void 0 ? void 0 : _outputConfig_ssg[0]) === "function")) {
261
- return;
262
- }
263
- if (typeof entries === "undefined") {
264
- throw new Error("No entry found, one of src/routes/layout.tsx, src/App.tsx, src/index.tsx is required");
265
- }
266
- var entryNames = Object.keys(entries);
267
- if (isProd && entryNames.length === 1 && (outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg)) {
268
- return;
269
- }
270
- var ssgEntries = [];
271
- if (isProd && (outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg)) {
272
- var ssg = outputConfig.ssg;
273
- entryNames.forEach(function(name) {
274
- if (ssg[name]) {
275
- ssgEntries.push(name);
276
- }
277
- });
278
- }
279
- var _ref = serverConfig || {}, ssr = _ref.ssr, ssrByEntries = _ref.ssrByEntries;
264
+ var isProd = param.isProd, chain = param.chain, appNormalizedConfig = param.appNormalizedConfig;
265
+ var _ref;
266
+ var serverConfig = appNormalizedConfig.server, outputConfig = appNormalizedConfig.output;
267
+ var entries = chain.entryPoints.entries();
268
+ if (isProd && ((outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg) === true || typeof ((_ref = outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg) === null || _ref === void 0 ? void 0 : _ref[0]) === "function")) {
269
+ return;
270
+ }
271
+ if (typeof entries === "undefined") {
272
+ throw new Error("No entry found, one of src/routes/layout.tsx, src/App.tsx, src/index.tsx is required");
273
+ }
274
+ var entryNames = Object.keys(entries);
275
+ if (isProd && entryNames.length === 1 && (outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg)) {
276
+ return;
277
+ }
278
+ var ssgEntries = [];
279
+ if (isProd && (outputConfig === null || outputConfig === void 0 ? void 0 : outputConfig.ssg)) {
280
+ var ssg = outputConfig.ssg;
280
281
  entryNames.forEach(function(name) {
281
- if (!ssgEntries.includes(name) && (ssr && (ssrByEntries === null || ssrByEntries === void 0 ? void 0 : ssrByEntries[name]) === false || !ssr && !(ssrByEntries === null || ssrByEntries === void 0 ? void 0 : ssrByEntries[name]))) {
282
- chain.entryPoints.delete(name);
283
- }
282
+ if (ssg[name]) {
283
+ ssgEntries.push(name);
284
+ }
284
285
  });
286
+ }
287
+ var _ref1 = serverConfig || {}, ssr = _ref1.ssr, ssrByEntries = _ref1.ssrByEntries;
288
+ entryNames.forEach(function(name) {
289
+ if (!ssgEntries.includes(name) && (ssr && (ssrByEntries === null || ssrByEntries === void 0 ? void 0 : ssrByEntries[name]) === false || !ssr && !(ssrByEntries === null || ssrByEntries === void 0 ? void 0 : ssrByEntries[name]))) {
290
+ chain.entryPoints.delete(name);
291
+ }
292
+ });
285
293
  }
286
294
  function applySSRLoaderEntry(chain, optinos, isServer) {
287
- return _applySSRLoaderEntry.apply(this, arguments);
295
+ return _applySSRLoaderEntry.apply(this, arguments);
288
296
  }
289
297
  function _applySSRLoaderEntry() {
290
- _applySSRLoaderEntry = _asyncToGenerator(function(chain, optinos, isServer) {
291
- var appContext, internalDirectory, entrypoints;
292
- return __generator(this, function(_state) {
293
- switch(_state.label){
294
- case 0:
295
- appContext = optinos.appContext;
296
- internalDirectory = appContext.internalDirectory;
297
- entrypoints = appContext.entrypoints;
298
- return [
298
+ _applySSRLoaderEntry = _async_to_generator(function(chain, optinos, isServer) {
299
+ var appContext, internalDirectory, entrypoints;
300
+ return __generator(this, function(_state) {
301
+ switch (_state.label) {
302
+ case 0:
303
+ appContext = optinos.appContext;
304
+ internalDirectory = appContext.internalDirectory;
305
+ entrypoints = appContext.entrypoints;
306
+ return [
307
+ 4,
308
+ Promise.all(entrypoints.map(function() {
309
+ var _ref = _async_to_generator(function(entrypoint) {
310
+ var entryName, serverLoadersFile, err;
311
+ return __generator(this, function(_state2) {
312
+ switch (_state2.label) {
313
+ case 0:
314
+ entryName = entrypoint.entryName;
315
+ serverLoadersFile = getServerCombinedModueFile(internalDirectory, entryName);
316
+ if (!isServer)
317
+ return [
318
+ 3,
319
+ 4
320
+ ];
321
+ _state2.label = 1;
322
+ case 1:
323
+ _state2.trys.push([
324
+ 1,
325
+ 3,
326
+ ,
327
+ 4
328
+ ]);
329
+ return [
299
330
  4,
300
- Promise.all(entrypoints.map(function() {
301
- var _ref = _asyncToGenerator(function(entrypoint) {
302
- var entryName, serverLoadersFile, err;
303
- return __generator(this, function(_state) {
304
- switch(_state.label){
305
- case 0:
306
- entryName = entrypoint.entryName;
307
- serverLoadersFile = getServerCombinedModueFile(internalDirectory, entryName);
308
- if (!isServer) return [
309
- 3,
310
- 4
311
- ];
312
- _state.label = 1;
313
- case 1:
314
- _state.trys.push([
315
- 1,
316
- 3,
317
- ,
318
- 4
319
- ]);
320
- return [
321
- 4,
322
- fs.access(serverLoadersFile, fs.constants.F_OK)
323
- ];
324
- case 2:
325
- _state.sent();
326
- chain.entry("".concat(entryName, "-server-loaders")).add(serverLoadersFile);
327
- return [
328
- 3,
329
- 4
330
- ];
331
- case 3:
332
- err = _state.sent();
333
- return [
334
- 3,
335
- 4
336
- ];
337
- case 4:
338
- return [
339
- 2
340
- ];
341
- }
342
- });
343
- });
344
- return function(entrypoint) {
345
- return _ref.apply(this, arguments);
346
- };
347
- }()))
348
- ];
349
- case 1:
350
- _state.sent();
351
- return [
331
+ fs.access(serverLoadersFile, fs.constants.F_OK)
332
+ ];
333
+ case 2:
334
+ _state2.sent();
335
+ chain.entry("".concat(entryName, "-server-loaders")).add(serverLoadersFile);
336
+ return [
337
+ 3,
338
+ 4
339
+ ];
340
+ case 3:
341
+ err = _state2.sent();
342
+ return [
343
+ 3,
344
+ 4
345
+ ];
346
+ case 4:
347
+ return [
352
348
  2
353
- ];
354
- }
355
- });
349
+ ];
350
+ }
351
+ });
352
+ });
353
+ return function(entrypoint) {
354
+ return _ref.apply(this, arguments);
355
+ };
356
+ }()))
357
+ ];
358
+ case 1:
359
+ _state.sent();
360
+ return [
361
+ 2
362
+ ];
363
+ }
356
364
  });
357
- return _applySSRLoaderEntry.apply(this, arguments);
365
+ });
366
+ return _applySSRLoaderEntry.apply(this, arguments);
358
367
  }
359
368
  function applySSRDataLoader(chain, options) {
360
- var normalizedConfig = options.normalizedConfig, appContext = options.appContext;
361
- var appDirectory = appContext.appDirectory;
362
- var _normalizedConfig_source = normalizedConfig.source, _normalizedConfig_source_entriesDir = _normalizedConfig_source.entriesDir, entriesDir = _normalizedConfig_source_entriesDir === void 0 ? "./src" : _normalizedConfig_source_entriesDir;
363
- var absolutePath = path.resolve(appDirectory, entriesDir).split(path.sep).join("(\\\\|/)");
364
- var reg = new RegExp("".concat(absolutePath, ".*\\.loader\\.[t|j]s$"));
365
- chain.module.rule("ssr-data-loader").test(reg).use("data-loader").loader(require.resolve("@modern-js/plugin-data-loader/loader")).end();
369
+ var normalizedConfig = options.normalizedConfig, appContext = options.appContext;
370
+ var appDirectory = appContext.appDirectory;
371
+ var _normalizedConfig_source = normalizedConfig.source, _normalizedConfig_source_entriesDir = _normalizedConfig_source.entriesDir, entriesDir = _normalizedConfig_source_entriesDir === void 0 ? "./src" : _normalizedConfig_source_entriesDir;
372
+ var absolutePath = path.resolve(appDirectory, entriesDir).split(path.sep).join("(\\\\|/)");
373
+ var reg = new RegExp("".concat(absolutePath, ".*\\.loader\\.[t|j]s$"));
374
+ chain.module.rule("ssr-data-loader").test(reg).use("data-loader").loader(require.resolve("@modern-js/plugin-data-loader/loader")).end();
366
375
  }
367
- export { builderPluginAdapterSSR };