@modern-js/app-tools 2.8.1-alpha.3 → 2.9.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 (272) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/cjs/analyze/templates.js +0 -1
  3. package/dist/esm/analyze/templates.js +1 -1
  4. package/dist/esm-node/analyze/templates.js +0 -1
  5. package/package.json +24 -24
  6. package/dist/js/modern/analyze/constants.js +0 -56
  7. package/dist/js/modern/analyze/generateCode.js +0 -247
  8. package/dist/js/modern/analyze/getBundleEntry.js +0 -71
  9. package/dist/js/modern/analyze/getClientRoutes/getRoutes.js +0 -220
  10. package/dist/js/modern/analyze/getClientRoutes/getRoutesLegacy.js +0 -216
  11. package/dist/js/modern/analyze/getClientRoutes/index.js +0 -6
  12. package/dist/js/modern/analyze/getClientRoutes/utils.js +0 -31
  13. package/dist/js/modern/analyze/getFileSystemEntry.js +0 -109
  14. package/dist/js/modern/analyze/getHtmlTemplate.js +0 -115
  15. package/dist/js/modern/analyze/getServerRoutes.js +0 -178
  16. package/dist/js/modern/analyze/index.js +0 -333
  17. package/dist/js/modern/analyze/isDefaultExportFunction.js +0 -42
  18. package/dist/js/modern/analyze/makeLegalIdentifier.js +0 -13
  19. package/dist/js/modern/analyze/nestedRoutes.js +0 -186
  20. package/dist/js/modern/analyze/templates.js +0 -328
  21. package/dist/js/modern/analyze/utils.js +0 -141
  22. package/dist/js/modern/builder/builder-rspack/index.js +0 -8
  23. package/dist/js/modern/builder/builder-webpack/builderPlugins/compatModern.js +0 -41
  24. package/dist/js/modern/builder/builder-webpack/index.js +0 -93
  25. package/dist/js/modern/builder/builder-webpack/webpackPlugins/RouterPlugin.js +0 -116
  26. package/dist/js/modern/builder/builder-webpack/webpackPlugins/index.js +0 -1
  27. package/dist/js/modern/builder/generator/createBuilderOptions.js +0 -24
  28. package/dist/js/modern/builder/generator/createBuilderProviderConfig.js +0 -39
  29. package/dist/js/modern/builder/generator/getBuilderTargets.js +0 -21
  30. package/dist/js/modern/builder/generator/index.js +0 -53
  31. package/dist/js/modern/builder/index.js +0 -39
  32. package/dist/js/modern/builder/shared/builderPlugins/adapterModern.js +0 -219
  33. package/dist/js/modern/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +0 -27
  34. package/dist/js/modern/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +0 -34
  35. package/dist/js/modern/builder/shared/createCopyPattern.js +0 -46
  36. package/dist/js/modern/builder/shared/index.js +0 -3
  37. package/dist/js/modern/builder/shared/loaders/serverModuleLoader.js +0 -7
  38. package/dist/js/modern/builder/shared/types.js +0 -0
  39. package/dist/js/modern/commands/build.js +0 -91
  40. package/dist/js/modern/commands/deploy.js +0 -28
  41. package/dist/js/modern/commands/dev.js +0 -109
  42. package/dist/js/modern/commands/index.js +0 -3
  43. package/dist/js/modern/commands/inspect.js +0 -38
  44. package/dist/js/modern/commands/serve.js +0 -54
  45. package/dist/js/modern/config/default.js +0 -175
  46. package/dist/js/modern/config/index.js +0 -3
  47. package/dist/js/modern/config/initialize/index.js +0 -12
  48. package/dist/js/modern/config/initialize/inits.js +0 -154
  49. package/dist/js/modern/config/legacy/createHtmlConfig.js +0 -35
  50. package/dist/js/modern/config/legacy/createOutputConfig.js +0 -68
  51. package/dist/js/modern/config/legacy/createSourceConfig.js +0 -39
  52. package/dist/js/modern/config/legacy/createToolsConfig.js +0 -42
  53. package/dist/js/modern/config/legacy/index.js +0 -51
  54. package/dist/js/modern/defineConfig.js +0 -27
  55. package/dist/js/modern/exports/server.js +0 -4
  56. package/dist/js/modern/hooks.js +0 -35
  57. package/dist/js/modern/index.js +0 -221
  58. package/dist/js/modern/initialize/index.js +0 -132
  59. package/dist/js/modern/locale/en.js +0 -36
  60. package/dist/js/modern/locale/index.js +0 -9
  61. package/dist/js/modern/locale/zh.js +0 -36
  62. package/dist/js/modern/schema/Schema.js +0 -40
  63. package/dist/js/modern/schema/index.js +0 -88
  64. package/dist/js/modern/schema/legacy.js +0 -148
  65. package/dist/js/modern/types/config/deploy.js +0 -0
  66. package/dist/js/modern/types/config/dev.js +0 -0
  67. package/dist/js/modern/types/config/experiments.js +0 -0
  68. package/dist/js/modern/types/config/html.js +0 -0
  69. package/dist/js/modern/types/config/index.js +0 -1
  70. package/dist/js/modern/types/config/output.js +0 -0
  71. package/dist/js/modern/types/config/performance.js +0 -0
  72. package/dist/js/modern/types/config/security.js +0 -0
  73. package/dist/js/modern/types/config/source.js +0 -0
  74. package/dist/js/modern/types/config/tools.js +0 -0
  75. package/dist/js/modern/types/hooks.js +0 -0
  76. package/dist/js/modern/types/index.js +0 -3
  77. package/dist/js/modern/types/legacyConfig/deploy.js +0 -0
  78. package/dist/js/modern/types/legacyConfig/dev.js +0 -0
  79. package/dist/js/modern/types/legacyConfig/index.js +0 -0
  80. package/dist/js/modern/types/legacyConfig/output.js +0 -0
  81. package/dist/js/modern/types/legacyConfig/source.js +0 -0
  82. package/dist/js/modern/types/legacyConfig/tools.js +0 -0
  83. package/dist/js/modern/types/utils.js +0 -0
  84. package/dist/js/modern/utils/config.js +0 -128
  85. package/dist/js/modern/utils/createServer.js +0 -75
  86. package/dist/js/modern/utils/env.js +0 -15
  87. package/dist/js/modern/utils/generateWatchFiles.js +0 -55
  88. package/dist/js/modern/utils/getSelectedEntries.js +0 -58
  89. package/dist/js/modern/utils/getServerInternalPlugins.js +0 -58
  90. package/dist/js/modern/utils/language.js +0 -8
  91. package/dist/js/modern/utils/printInstructions.js +0 -31
  92. package/dist/js/modern/utils/restart.js +0 -44
  93. package/dist/js/modern/utils/routes.js +0 -30
  94. package/dist/js/modern/utils/types.js +0 -0
  95. package/dist/js/node/analyze/constants.js +0 -100
  96. package/dist/js/node/analyze/generateCode.js +0 -271
  97. package/dist/js/node/analyze/getBundleEntry.js +0 -95
  98. package/dist/js/node/analyze/getClientRoutes/getRoutes.js +0 -242
  99. package/dist/js/node/analyze/getClientRoutes/getRoutesLegacy.js +0 -238
  100. package/dist/js/node/analyze/getClientRoutes/index.js +0 -30
  101. package/dist/js/node/analyze/getClientRoutes/utils.js +0 -58
  102. package/dist/js/node/analyze/getFileSystemEntry.js +0 -131
  103. package/dist/js/node/analyze/getHtmlTemplate.js +0 -144
  104. package/dist/js/node/analyze/getServerRoutes.js +0 -196
  105. package/dist/js/node/analyze/index.js +0 -340
  106. package/dist/js/node/analyze/isDefaultExportFunction.js +0 -71
  107. package/dist/js/node/analyze/makeLegalIdentifier.js +0 -36
  108. package/dist/js/node/analyze/nestedRoutes.js +0 -213
  109. package/dist/js/node/analyze/templates.js +0 -359
  110. package/dist/js/node/analyze/utils.js +0 -172
  111. package/dist/js/node/builder/builder-rspack/index.js +0 -31
  112. package/dist/js/node/builder/builder-webpack/builderPlugins/compatModern.js +0 -64
  113. package/dist/js/node/builder/builder-webpack/index.js +0 -118
  114. package/dist/js/node/builder/builder-webpack/webpackPlugins/RouterPlugin.js +0 -140
  115. package/dist/js/node/builder/builder-webpack/webpackPlugins/index.js +0 -17
  116. package/dist/js/node/builder/generator/createBuilderOptions.js +0 -47
  117. package/dist/js/node/builder/generator/createBuilderProviderConfig.js +0 -60
  118. package/dist/js/node/builder/generator/getBuilderTargets.js +0 -39
  119. package/dist/js/node/builder/generator/index.js +0 -82
  120. package/dist/js/node/builder/index.js +0 -68
  121. package/dist/js/node/builder/shared/builderPlugins/adapterModern.js +0 -245
  122. package/dist/js/node/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +0 -50
  123. package/dist/js/node/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +0 -57
  124. package/dist/js/node/builder/shared/createCopyPattern.js +0 -75
  125. package/dist/js/node/builder/shared/index.js +0 -19
  126. package/dist/js/node/builder/shared/loaders/serverModuleLoader.js +0 -28
  127. package/dist/js/node/builder/shared/types.js +0 -15
  128. package/dist/js/node/commands/build.js +0 -112
  129. package/dist/js/node/commands/deploy.js +0 -51
  130. package/dist/js/node/commands/dev.js +0 -126
  131. package/dist/js/node/commands/index.js +0 -19
  132. package/dist/js/node/commands/inspect.js +0 -61
  133. package/dist/js/node/commands/serve.js +0 -83
  134. package/dist/js/node/config/default.js +0 -197
  135. package/dist/js/node/config/index.js +0 -19
  136. package/dist/js/node/config/initialize/index.js +0 -35
  137. package/dist/js/node/config/initialize/inits.js +0 -177
  138. package/dist/js/node/config/legacy/createHtmlConfig.js +0 -58
  139. package/dist/js/node/config/legacy/createOutputConfig.js +0 -91
  140. package/dist/js/node/config/legacy/createSourceConfig.js +0 -62
  141. package/dist/js/node/config/legacy/createToolsConfig.js +0 -65
  142. package/dist/js/node/config/legacy/index.js +0 -75
  143. package/dist/js/node/defineConfig.js +0 -49
  144. package/dist/js/node/exports/server.js +0 -27
  145. package/dist/js/node/hooks.js +0 -54
  146. package/dist/js/node/index.js +0 -245
  147. package/dist/js/node/initialize/index.js +0 -141
  148. package/dist/js/node/locale/en.js +0 -59
  149. package/dist/js/node/locale/index.js +0 -33
  150. package/dist/js/node/locale/zh.js +0 -59
  151. package/dist/js/node/schema/Schema.js +0 -63
  152. package/dist/js/node/schema/index.js +0 -118
  153. package/dist/js/node/schema/legacy.js +0 -169
  154. package/dist/js/node/types/config/deploy.js +0 -15
  155. package/dist/js/node/types/config/dev.js +0 -15
  156. package/dist/js/node/types/config/experiments.js +0 -15
  157. package/dist/js/node/types/config/html.js +0 -15
  158. package/dist/js/node/types/config/index.js +0 -17
  159. package/dist/js/node/types/config/output.js +0 -15
  160. package/dist/js/node/types/config/performance.js +0 -15
  161. package/dist/js/node/types/config/security.js +0 -15
  162. package/dist/js/node/types/config/source.js +0 -15
  163. package/dist/js/node/types/config/tools.js +0 -15
  164. package/dist/js/node/types/hooks.js +0 -15
  165. package/dist/js/node/types/index.js +0 -19
  166. package/dist/js/node/types/legacyConfig/deploy.js +0 -15
  167. package/dist/js/node/types/legacyConfig/dev.js +0 -15
  168. package/dist/js/node/types/legacyConfig/index.js +0 -15
  169. package/dist/js/node/types/legacyConfig/output.js +0 -15
  170. package/dist/js/node/types/legacyConfig/source.js +0 -15
  171. package/dist/js/node/types/legacyConfig/tools.js +0 -15
  172. package/dist/js/node/types/utils.js +0 -15
  173. package/dist/js/node/utils/config.js +0 -153
  174. package/dist/js/node/utils/createServer.js +0 -106
  175. package/dist/js/node/utils/env.js +0 -38
  176. package/dist/js/node/utils/generateWatchFiles.js +0 -85
  177. package/dist/js/node/utils/getSelectedEntries.js +0 -81
  178. package/dist/js/node/utils/getServerInternalPlugins.js +0 -79
  179. package/dist/js/node/utils/language.js +0 -31
  180. package/dist/js/node/utils/printInstructions.js +0 -54
  181. package/dist/js/node/utils/restart.js +0 -67
  182. package/dist/js/node/utils/routes.js +0 -59
  183. package/dist/js/node/utils/types.js +0 -15
  184. package/dist/js/treeshaking/analyze/constants.js +0 -42
  185. package/dist/js/treeshaking/analyze/generateCode.js +0 -485
  186. package/dist/js/treeshaking/analyze/getBundleEntry.js +0 -62
  187. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutes.js +0 -233
  188. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutesLegacy.js +0 -231
  189. package/dist/js/treeshaking/analyze/getClientRoutes/index.js +0 -3
  190. package/dist/js/treeshaking/analyze/getClientRoutes/utils.js +0 -23
  191. package/dist/js/treeshaking/analyze/getFileSystemEntry.js +0 -107
  192. package/dist/js/treeshaking/analyze/getHtmlTemplate.js +0 -302
  193. package/dist/js/treeshaking/analyze/getServerRoutes.js +0 -224
  194. package/dist/js/treeshaking/analyze/index.js +0 -702
  195. package/dist/js/treeshaking/analyze/isDefaultExportFunction.js +0 -47
  196. package/dist/js/treeshaking/analyze/makeLegalIdentifier.js +0 -13
  197. package/dist/js/treeshaking/analyze/nestedRoutes.js +0 -409
  198. package/dist/js/treeshaking/analyze/templates.js +0 -465
  199. package/dist/js/treeshaking/analyze/utils.js +0 -374
  200. package/dist/js/treeshaking/builder/builder-rspack/index.js +0 -6
  201. package/dist/js/treeshaking/builder/builder-webpack/builderPlugins/compatModern.js +0 -64
  202. package/dist/js/treeshaking/builder/builder-webpack/index.js +0 -301
  203. package/dist/js/treeshaking/builder/builder-webpack/webpackPlugins/RouterPlugin.js +0 -346
  204. package/dist/js/treeshaking/builder/builder-webpack/webpackPlugins/index.js +0 -1
  205. package/dist/js/treeshaking/builder/generator/createBuilderOptions.js +0 -41
  206. package/dist/js/treeshaking/builder/generator/createBuilderProviderConfig.js +0 -70
  207. package/dist/js/treeshaking/builder/generator/getBuilderTargets.js +0 -16
  208. package/dist/js/treeshaking/builder/generator/index.js +0 -199
  209. package/dist/js/treeshaking/builder/index.js +0 -175
  210. package/dist/js/treeshaking/builder/shared/builderPlugins/adapterModern.js +0 -300
  211. package/dist/js/treeshaking/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +0 -110
  212. package/dist/js/treeshaking/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +0 -72
  213. package/dist/js/treeshaking/builder/shared/createCopyPattern.js +0 -40
  214. package/dist/js/treeshaking/builder/shared/index.js +0 -3
  215. package/dist/js/treeshaking/builder/shared/loaders/serverModuleLoader.js +0 -5
  216. package/dist/js/treeshaking/builder/shared/types.js +0 -1
  217. package/dist/js/treeshaking/commands/build.js +0 -291
  218. package/dist/js/treeshaking/commands/deploy.js +0 -154
  219. package/dist/js/treeshaking/commands/dev.js +0 -301
  220. package/dist/js/treeshaking/commands/index.js +0 -3
  221. package/dist/js/treeshaking/commands/inspect.js +0 -149
  222. package/dist/js/treeshaking/commands/serve.js +0 -199
  223. package/dist/js/treeshaking/config/default.js +0 -210
  224. package/dist/js/treeshaking/config/index.js +0 -3
  225. package/dist/js/treeshaking/config/initialize/index.js +0 -10
  226. package/dist/js/treeshaking/config/initialize/inits.js +0 -211
  227. package/dist/js/treeshaking/config/legacy/createHtmlConfig.js +0 -19
  228. package/dist/js/treeshaking/config/legacy/createOutputConfig.js +0 -41
  229. package/dist/js/treeshaking/config/legacy/createSourceConfig.js +0 -42
  230. package/dist/js/treeshaking/config/legacy/createToolsConfig.js +0 -23
  231. package/dist/js/treeshaking/config/legacy/index.js +0 -38
  232. package/dist/js/treeshaking/defineConfig.js +0 -61
  233. package/dist/js/treeshaking/exports/server.js +0 -2
  234. package/dist/js/treeshaking/hooks.js +0 -29
  235. package/dist/js/treeshaking/index.js +0 -713
  236. package/dist/js/treeshaking/initialize/index.js +0 -284
  237. package/dist/js/treeshaking/locale/en.js +0 -38
  238. package/dist/js/treeshaking/locale/index.js +0 -9
  239. package/dist/js/treeshaking/locale/zh.js +0 -38
  240. package/dist/js/treeshaking/schema/Schema.js +0 -273
  241. package/dist/js/treeshaking/schema/index.js +0 -181
  242. package/dist/js/treeshaking/schema/legacy.js +0 -337
  243. package/dist/js/treeshaking/types/config/deploy.js +0 -1
  244. package/dist/js/treeshaking/types/config/dev.js +0 -1
  245. package/dist/js/treeshaking/types/config/experiments.js +0 -1
  246. package/dist/js/treeshaking/types/config/html.js +0 -1
  247. package/dist/js/treeshaking/types/config/index.js +0 -1
  248. package/dist/js/treeshaking/types/config/output.js +0 -1
  249. package/dist/js/treeshaking/types/config/performance.js +0 -1
  250. package/dist/js/treeshaking/types/config/security.js +0 -1
  251. package/dist/js/treeshaking/types/config/source.js +0 -1
  252. package/dist/js/treeshaking/types/config/tools.js +0 -1
  253. package/dist/js/treeshaking/types/hooks.js +0 -1
  254. package/dist/js/treeshaking/types/index.js +0 -3
  255. package/dist/js/treeshaking/types/legacyConfig/deploy.js +0 -1
  256. package/dist/js/treeshaking/types/legacyConfig/dev.js +0 -1
  257. package/dist/js/treeshaking/types/legacyConfig/index.js +0 -1
  258. package/dist/js/treeshaking/types/legacyConfig/output.js +0 -1
  259. package/dist/js/treeshaking/types/legacyConfig/source.js +0 -1
  260. package/dist/js/treeshaking/types/legacyConfig/tools.js +0 -1
  261. package/dist/js/treeshaking/types/utils.js +0 -1
  262. package/dist/js/treeshaking/utils/config.js +0 -302
  263. package/dist/js/treeshaking/utils/createServer.js +0 -258
  264. package/dist/js/treeshaking/utils/env.js +0 -13
  265. package/dist/js/treeshaking/utils/generateWatchFiles.js +0 -214
  266. package/dist/js/treeshaking/utils/getSelectedEntries.js +0 -186
  267. package/dist/js/treeshaking/utils/getServerInternalPlugins.js +0 -210
  268. package/dist/js/treeshaking/utils/language.js +0 -6
  269. package/dist/js/treeshaking/utils/printInstructions.js +0 -152
  270. package/dist/js/treeshaking/utils/restart.js +0 -187
  271. package/dist/js/treeshaking/utils/routes.js +0 -153
  272. package/dist/js/treeshaking/utils/types.js +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,49 @@
1
1
  # @modern-js/app-tools
2
2
 
3
+ ## 2.9.0
4
+
5
+ ### Patch Changes
6
+
7
+ - 49bb8cd0ef: fix: move chunkmap.css comment to bottom of head
8
+ fix: 将 chunkmap.css 标记移动到 head 底部
9
+ - 83423193bb: fix: fix chunk css location in template
10
+ fix: 修复异步加载的 css 在模版文件中的位置
11
+ - e1b6881b39: fix: should not replace to alias when filePath is not in src
12
+ fix: 不应该替换为别名,当 filePath 不在 src 目录中时
13
+ - 5cb90eddaf: fix: fix data-loader compat in windows
14
+ fix: 修复 data loader 在 windows 下的兼容性问题
15
+ - e9ae517226: fix: optimize the regexp for route matching rules
16
+ fix: 优化路由匹配正则
17
+ - 4d89ad2a86: fix: the asset may be removed by InlineChunkHtmlPlugin
18
+ fix: asset 可能会被 InlineChunkHtmlPlugin 移除
19
+ - Updated dependencies [7035d5c22f]
20
+ - Updated dependencies [49bb8cd0ef]
21
+ - Updated dependencies [76b26883bb]
22
+ - Updated dependencies [f31a254d78]
23
+ - Updated dependencies [1f047183c3]
24
+ - Updated dependencies [88328d914b]
25
+ - Updated dependencies [dd56401486]
26
+ - Updated dependencies [07569e577e]
27
+ - Updated dependencies [da66232feb]
28
+ - @modern-js/builder-webpack-provider@2.9.0
29
+ - @modern-js/prod-server@2.9.0
30
+ - @modern-js/server@2.9.0
31
+ - @modern-js/builder-rspack-provider@2.9.0
32
+ - @modern-js/builder@2.9.0
33
+ - @modern-js/core@2.9.0
34
+ - @modern-js/builder-plugin-esbuild@2.9.0
35
+ - @modern-js/builder-plugin-node-polyfill@2.9.0
36
+ - @modern-js/builder-shared@2.9.0
37
+ - @modern-js/plugin-data-loader@2.9.0
38
+ - @modern-js/plugin-lint@2.9.0
39
+ - @modern-js/new-action@2.9.0
40
+ - @modern-js/plugin-i18n@2.9.0
41
+ - @modern-js/node-bundle-require@2.9.0
42
+ - @modern-js/plugin@2.9.0
43
+ - @modern-js/types@2.9.0
44
+ - @modern-js/upgrade@2.9.0
45
+ - @modern-js/utils@2.9.0
46
+
3
47
  ## 2.8.0
4
48
 
5
49
  ### Minor Changes
@@ -113,7 +113,6 @@ const html = (partials) => `
113
113
  </head>
114
114
 
115
115
  <body>
116
- <!--<?- chunksMap.css ?>-->
117
116
  <noscript>
118
117
  We're sorry but react app doesn't work properly without JavaScript enabled. Please enable it to continue.
119
118
  </noscript>
@@ -237,7 +237,7 @@ var renderFunction = function(param) {
237
237
  }).join("\n"), "\n ]\n })(").concat(fileSystemRoutes2 ? "" : "App", ")\n\n\n if(!AppWrapper.init && typeof appInit !== 'undefined') {\n AppWrapper.init = appInit;\n }\n\n\n if (IS_BROWSER) {\n ").concat(customBootstrap ? "customBootstrap(AppWrapper, () => ".concat(bootstrap, ");") : "".concat(bootstrap, ";"), "\n }\n\n return AppWrapper\n");
238
238
  };
239
239
  var html = function(partials) {
240
- return "\n<!DOCTYPE html>\n<html>\n<head>\n <%= meta %>\n <title><%= title %></title>\n\n ".concat(partials.top.join("\n"), "\n\n <script>\n window.__assetPrefix__ = '<%= assetPrefix %>';\n </script>\n ").concat(partials.head.join("\n"), "\n\n</head>\n\n<body>\n <!--<?- chunksMap.css ?>-->\n <noscript>\n We're sorry but react app doesn't work properly without JavaScript enabled. Please enable it to continue.\n </noscript>\n <div id=\"<%= mountId %>\"><!--<?- html ?>--></div>\n ").concat(partials.body.join("\n"), "\n <!--<?- chunksMap.js ?>-->\n <!--<?- SSRDataScript ?>-->\n <!--<?- bottomTemplate ?>-->\n</body>\n\n</html>\n");
240
+ return "\n<!DOCTYPE html>\n<html>\n<head>\n <%= meta %>\n <title><%= title %></title>\n\n ".concat(partials.top.join("\n"), "\n\n <script>\n window.__assetPrefix__ = '<%= assetPrefix %>';\n </script>\n ").concat(partials.head.join("\n"), "\n\n</head>\n\n<body>\n <noscript>\n We're sorry but react app doesn't work properly without JavaScript enabled. Please enable it to continue.\n </noscript>\n <div id=\"<%= mountId %>\"><!--<?- html ?>--></div>\n ").concat(partials.body.join("\n"), "\n <!--<?- chunksMap.js ?>-->\n <!--<?- SSRDataScript ?>-->\n <!--<?- bottomTemplate ?>-->\n</body>\n\n</html>\n");
241
241
  };
242
242
  var routesForServer = function(param) {
243
243
  var routes = param.routes;
@@ -76,7 +76,6 @@ const html = (partials) => `
76
76
  </head>
77
77
 
78
78
  <body>
79
- <!--<?- chunksMap.css ?>-->
80
79
  <noscript>
81
80
  We're sorry but react app doesn't work properly without JavaScript enabled. Please enable it to continue.
82
81
  </noscript>
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "modern",
12
12
  "modern.js"
13
13
  ],
14
- "version": "2.8.1-alpha.3",
14
+ "version": "2.9.0",
15
15
  "jsnext:source": "./src/index.ts",
16
16
  "types": "./dist/types/index.d.ts",
17
17
  "main": "./dist/cjs/index.js",
@@ -64,23 +64,23 @@
64
64
  "@babel/types": "^7.18.0",
65
65
  "es-module-lexer": "^1.1.0",
66
66
  "esbuild": "0.15.7",
67
- "@modern-js/builder": "2.8.0",
68
- "@modern-js/builder-plugin-esbuild": "2.8.0",
69
- "@modern-js/builder-plugin-node-polyfill": "2.8.0",
70
- "@modern-js/builder-shared": "2.8.0",
71
- "@modern-js/builder-webpack-provider": "2.8.0",
72
- "@modern-js/core": "2.8.0",
73
- "@modern-js/new-action": "2.8.0",
74
- "@modern-js/node-bundle-require": "2.8.0",
75
- "@modern-js/plugin": "2.8.0",
76
- "@modern-js/plugin-i18n": "2.8.0",
77
- "@modern-js/plugin-lint": "2.8.0",
78
- "@modern-js/prod-server": "2.8.0",
79
- "@modern-js/server": "2.8.0",
80
- "@modern-js/upgrade": "2.8.0",
81
- "@modern-js/utils": "2.8.0",
82
- "@modern-js/types": "2.8.0",
83
- "@modern-js/plugin-data-loader": "2.8.0"
67
+ "@modern-js/builder": "2.9.0",
68
+ "@modern-js/builder-plugin-esbuild": "2.9.0",
69
+ "@modern-js/builder-plugin-node-polyfill": "2.9.0",
70
+ "@modern-js/builder-shared": "2.9.0",
71
+ "@modern-js/builder-webpack-provider": "2.9.0",
72
+ "@modern-js/core": "2.9.0",
73
+ "@modern-js/new-action": "2.9.0",
74
+ "@modern-js/node-bundle-require": "2.9.0",
75
+ "@modern-js/plugin": "2.9.0",
76
+ "@modern-js/plugin-data-loader": "2.9.0",
77
+ "@modern-js/plugin-i18n": "2.9.0",
78
+ "@modern-js/plugin-lint": "2.9.0",
79
+ "@modern-js/prod-server": "2.9.0",
80
+ "@modern-js/server": "2.9.0",
81
+ "@modern-js/types": "2.9.0",
82
+ "@modern-js/upgrade": "2.9.0",
83
+ "@modern-js/utils": "2.9.0"
84
84
  },
85
85
  "devDependencies": {
86
86
  "@types/babel__traverse": "^7.14.2",
@@ -89,14 +89,14 @@
89
89
  "jest": "^27",
90
90
  "typescript": "^4",
91
91
  "webpack": "^5.75.0",
92
- "@modern-js/builder-rspack-provider": "2.8.0",
93
- "@modern-js/builder-plugin-swc": "2.8.0",
94
- "@scripts/build": "2.8.0",
95
- "@scripts/jest-config": "2.8.0",
96
- "@modern-js/server-core": "2.8.0"
92
+ "@modern-js/builder-plugin-swc": "2.9.0",
93
+ "@modern-js/builder-rspack-provider": "2.9.0",
94
+ "@modern-js/server-core": "2.9.0",
95
+ "@scripts/jest-config": "2.9.0",
96
+ "@scripts/build": "2.9.0"
97
97
  },
98
98
  "peerDependencies": {
99
- "@modern-js/builder-rspack-provider": "^2.8.0"
99
+ "@modern-js/builder-rspack-provider": "^2.9.0"
100
100
  },
101
101
  "peerDependenciesMeta": {
102
102
  "@modern-js/builder-rspack-provider": {
@@ -1,56 +0,0 @@
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 = {
20
- LAYOUT_FILE: "layout",
21
- LAYOUT_LOADER_FILE: "layout.loader",
22
- PAGE_FILE: "page",
23
- PAGE_LOADER_FILE: "page.loader",
24
- LOADING_FILE: "loading",
25
- ERROR_FILE: "error",
26
- LOADER_FILE: "loader",
27
- SPLATE_FILE: "$",
28
- SPLATE_LOADER_FILE: "$.loader"
29
- };
30
- const APP_CONFIG_NAME = "config";
31
- const APP_INIT_EXPORTED = "init";
32
- const APP_INIT_IMPORTED = "appInit";
33
- export {
34
- APP_CONFIG_NAME,
35
- APP_FILE_NAME,
36
- APP_INIT_EXPORTED,
37
- APP_INIT_IMPORTED,
38
- ENTRY_BOOTSTRAP_FILE_NAME,
39
- ENTRY_POINT_FILE_NAME,
40
- FILE_SYSTEM_ROUTES_COMPONENTS_DIR,
41
- FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP,
42
- FILE_SYSTEM_ROUTES_FILE_NAME,
43
- FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT,
44
- FILE_SYSTEM_ROUTES_IGNORED_REGEX,
45
- FILE_SYSTEM_ROUTES_INDEX,
46
- FILE_SYSTEM_ROUTES_LAYOUT,
47
- HTML_PARTIALS_EXTENSIONS,
48
- HTML_PARTIALS_FOLDER,
49
- INDEX_FILE_NAME,
50
- JS_EXTENSIONS,
51
- LOADER_EXPORT_NAME,
52
- NESTED_ROUTE,
53
- NESTED_ROUTES_DIR,
54
- PAGES_DIR_NAME,
55
- TEMP_LOADERS_DIR
56
- };
@@ -1,247 +0,0 @@
1
- var __async = (__this, __arguments, generator) => {
2
- return new Promise((resolve, reject) => {
3
- var fulfilled = (value) => {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- };
10
- var rejected = (value) => {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- };
17
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
- step((generator = generator.apply(__this, __arguments)).next());
19
- });
20
- };
21
- import path from "path";
22
- import { fs, getEntryOptions, logger } from "@modern-js/utils";
23
- import {
24
- useResolvedConfigContext
25
- } from "@modern-js/core";
26
- import * as templates from "./templates";
27
- import { getClientRoutes, getClientRoutesLegacy } from "./getClientRoutes";
28
- import {
29
- FILE_SYSTEM_ROUTES_FILE_NAME,
30
- ENTRY_POINT_FILE_NAME,
31
- ENTRY_BOOTSTRAP_FILE_NAME
32
- } from "./constants";
33
- import { getDefaultImports, getServerLoadersFile } from "./utils";
34
- import { walk } from "./nestedRoutes";
35
- const createImportSpecifier = (specifiers) => {
36
- let defaults = "";
37
- const named = [];
38
- for (const { local, imported } of specifiers) {
39
- if (local && imported) {
40
- named.push(`${imported} as ${local}`);
41
- } else if (local) {
42
- defaults = local;
43
- } else {
44
- named.push(imported);
45
- }
46
- }
47
- if (defaults && named.length) {
48
- return `${defaults}, { ${named.join(", ")} }`;
49
- } else if (defaults) {
50
- return defaults;
51
- } else {
52
- return `{ ${named.join(", ")} }`;
53
- }
54
- };
55
- const createImportStatements = (statements) => {
56
- var _a, _b;
57
- const deDuplicated = [];
58
- const seen = /* @__PURE__ */ new Map();
59
- for (const { value, specifiers, initialize } of statements) {
60
- if (!seen.has(value)) {
61
- deDuplicated.push({
62
- value,
63
- specifiers,
64
- initialize
65
- });
66
- seen.set(value, specifiers);
67
- } else {
68
- seen.get(value).push(...specifiers);
69
- const modifyIndex = deDuplicated.findIndex((v) => v.value === value);
70
- const originInitialize = (_b = (_a = deDuplicated[modifyIndex]) == null ? void 0 : _a.initialize) != null ? _b : "";
71
- deDuplicated[modifyIndex].initialize = originInitialize.concat(
72
- `
73
- ${initialize || ""}`
74
- );
75
- }
76
- }
77
- return deDuplicated.map(
78
- ({ value, specifiers, initialize }) => `import ${createImportSpecifier(specifiers)} from '${value}';
79
- ${initialize || ""}`
80
- ).join("\n");
81
- };
82
- const generateCode = (appContext, config, entrypoints, api) => __async(void 0, null, function* () {
83
- var _a, _b, _c;
84
- const {
85
- internalDirectory,
86
- srcDirectory,
87
- internalDirAlias,
88
- internalSrcAlias,
89
- packageName
90
- } = appContext;
91
- const hookRunners = api.useHookRunners();
92
- const isV5 = typeof ((_a = config.runtime) == null ? void 0 : _a.router) !== "boolean" && ((_c = (_b = config == null ? void 0 : config.runtime) == null ? void 0 : _b.router) == null ? void 0 : _c.mode) === "react-router-5";
93
- const { mountId } = config.html;
94
- const getRoutes = isV5 ? getClientRoutesLegacy : getClientRoutes;
95
- yield Promise.all(entrypoints.map(generateEntryCode));
96
- function generateEntryCode(entrypoint) {
97
- return __async(this, null, function* () {
98
- const { entryName, isAutoMount, customBootstrap, fileSystemRoutes } = entrypoint;
99
- if (isAutoMount) {
100
- if (fileSystemRoutes) {
101
- let initialRoutes = [];
102
- let nestedRoute = null;
103
- if (entrypoint.entry) {
104
- initialRoutes = getRoutes({
105
- entrypoint,
106
- srcDirectory,
107
- srcAlias: internalSrcAlias,
108
- internalDirectory,
109
- internalDirAlias
110
- });
111
- }
112
- if (entrypoint.nestedRoutesEntry) {
113
- if (!isV5) {
114
- nestedRoute = yield walk(
115
- entrypoint.nestedRoutesEntry,
116
- entrypoint.nestedRoutesEntry,
117
- {
118
- name: internalSrcAlias,
119
- basename: srcDirectory
120
- },
121
- entrypoint.entryName
122
- );
123
- if (nestedRoute) {
124
- initialRoutes.unshift(nestedRoute);
125
- }
126
- } else {
127
- logger.error("Nested routes is not supported in legacy mode.");
128
- process.exit(1);
129
- }
130
- }
131
- const { routes } = yield hookRunners.modifyFileSystemRoutes({
132
- entrypoint,
133
- routes: initialRoutes
134
- });
135
- const config2 = useResolvedConfigContext();
136
- const ssr = getEntryOptions(
137
- entryName,
138
- config2.server.ssr,
139
- config2.server.ssrByEntries,
140
- packageName
141
- );
142
- let mode;
143
- if (ssr) {
144
- mode = typeof ssr === "object" ? ssr.mode || "string" : "string";
145
- } else {
146
- mode = false;
147
- }
148
- if (mode === "stream") {
149
- const hasPageRoute = routes.some(
150
- (route) => "type" in route && route.type === "page"
151
- );
152
- if (hasPageRoute) {
153
- logger.error(
154
- "Streaming ssr is not supported when pages dir exists"
155
- );
156
- process.exit(1);
157
- }
158
- }
159
- const { code: code2 } = yield hookRunners.beforeGenerateRoutes({
160
- entrypoint,
161
- code: yield templates.fileSystemRoutes({
162
- routes,
163
- ssrMode: mode,
164
- nestedRoutesEntry: entrypoint.nestedRoutesEntry,
165
- entryName: entrypoint.entryName,
166
- internalDirectory
167
- })
168
- });
169
- if (entrypoint.nestedRoutesEntry && mode) {
170
- const routesServerFile = getServerLoadersFile(
171
- internalDirectory,
172
- entryName
173
- );
174
- const code3 = templates.routesForServer({
175
- routes
176
- });
177
- yield fs.ensureFile(routesServerFile);
178
- yield fs.writeFile(routesServerFile, code3);
179
- }
180
- fs.outputFileSync(
181
- path.resolve(
182
- internalDirectory,
183
- `./${entryName}/${FILE_SYSTEM_ROUTES_FILE_NAME}`
184
- ),
185
- code2,
186
- "utf8"
187
- );
188
- }
189
- const { imports: importStatements } = yield hookRunners.modifyEntryImports({
190
- entrypoint,
191
- imports: getDefaultImports({
192
- entrypoint,
193
- srcDirectory,
194
- internalSrcAlias,
195
- internalDirAlias,
196
- internalDirectory
197
- })
198
- });
199
- const { plugins } = yield hookRunners.modifyEntryRuntimePlugins({
200
- entrypoint,
201
- plugins: []
202
- });
203
- const { code: renderFunction } = yield hookRunners.modifyEntryRenderFunction({
204
- entrypoint,
205
- code: templates.renderFunction({
206
- plugins,
207
- customBootstrap,
208
- fileSystemRoutes
209
- })
210
- });
211
- const { exportStatement } = yield hookRunners.modifyEntryExport({
212
- entrypoint,
213
- exportStatement: "export default AppWrapper;"
214
- });
215
- const code = templates.index({
216
- mountId,
217
- imports: createImportStatements(importStatements),
218
- renderFunction,
219
- exportStatement
220
- });
221
- const entryFile = path.resolve(
222
- internalDirectory,
223
- `./${entryName}/${ENTRY_POINT_FILE_NAME}`
224
- );
225
- entrypoint.entry = entryFile;
226
- if (config.source.enableAsyncEntry) {
227
- const { code: asyncEntryCode } = yield hookRunners.modifyAsyncEntry({
228
- entrypoint,
229
- code: `import('./${ENTRY_BOOTSTRAP_FILE_NAME}');`
230
- });
231
- fs.outputFileSync(entryFile, asyncEntryCode, "utf8");
232
- const bootstrapFile = path.resolve(
233
- internalDirectory,
234
- `./${entryName}/${ENTRY_BOOTSTRAP_FILE_NAME}`
235
- );
236
- fs.outputFileSync(bootstrapFile, code, "utf8");
237
- } else {
238
- fs.outputFileSync(entryFile, code, "utf8");
239
- }
240
- }
241
- });
242
- }
243
- });
244
- export {
245
- createImportStatements,
246
- generateCode
247
- };
@@ -1,71 +0,0 @@
1
- import path from "path";
2
- import {
3
- ensureAbsolutePath,
4
- fs,
5
- findExists,
6
- MAIN_ENTRY_NAME
7
- } from "@modern-js/utils";
8
- import { getFileSystemEntry } from "./getFileSystemEntry";
9
- import { JS_EXTENSIONS } from "./constants";
10
- const ensureExtensions = (file) => {
11
- if (!path.extname(file)) {
12
- return findExists(JS_EXTENSIONS.map((ext) => `${file}${ext}`)) || file;
13
- }
14
- return file;
15
- };
16
- const ifAlreadyExists = (entrypoints, checked) => entrypoints.some((entrypoint) => {
17
- if (ensureExtensions(entrypoint.entry) === ensureExtensions(checked.entry)) {
18
- checked.entryName = entrypoint.entryName;
19
- return true;
20
- }
21
- if (entrypoint.entry.startsWith(checked.entry) || checked.entry.startsWith(entrypoint.entry)) {
22
- throw new Error(
23
- `Entry configuration conflicts
24
- Your configuration: ${checked.entry}.
25
- Default entrypoint: ${entrypoint.entry}
26
- Please reset source.entries or set source.disableDefaultEntries to disable the default entry rules.`
27
- );
28
- }
29
- return false;
30
- });
31
- const getBundleEntry = (appContext, config) => {
32
- const { appDirectory, packageName } = appContext;
33
- const {
34
- source: { disableDefaultEntries, entries, entriesDir }
35
- } = config;
36
- const defaults = disableDefaultEntries ? [] : getFileSystemEntry(appContext, config);
37
- if (entries) {
38
- Object.keys(entries).forEach((name) => {
39
- const value = entries[name];
40
- const entrypoint = typeof value === "string" ? {
41
- entryName: name,
42
- entry: ensureAbsolutePath(appDirectory, value),
43
- isAutoMount: true,
44
- fileSystemRoutes: fs.statSync(ensureAbsolutePath(appDirectory, value)).isDirectory() ? {} : void 0
45
- } : {
46
- entryName: name,
47
- entry: ensureAbsolutePath(appDirectory, value.entry),
48
- isAutoMount: !value.disableMount,
49
- customBootstrap: value.customBootstrap && ensureAbsolutePath(appDirectory, value.customBootstrap),
50
- fileSystemRoutes: fs.statSync(ensureAbsolutePath(appDirectory, value.entry)).isDirectory() ? {} : void 0
51
- };
52
- if (entrypoint.fileSystemRoutes) {
53
- entrypoint.nestedRoutesEntry = entrypoint.entry;
54
- }
55
- if (!ifAlreadyExists(defaults, entrypoint)) {
56
- defaults.push(entrypoint);
57
- }
58
- });
59
- }
60
- if (!disableDefaultEntries) {
61
- const entriesDirAbs = ensureAbsolutePath(appDirectory, entriesDir || "");
62
- const found = defaults.find(
63
- ({ entryName, entry, nestedRoutesEntry = "" }) => entryName === packageName || path.dirname(entry) === entriesDirAbs || path.dirname(nestedRoutesEntry) === entriesDirAbs
64
- );
65
- found && (found.entryName = MAIN_ENTRY_NAME);
66
- }
67
- return defaults;
68
- };
69
- export {
70
- getBundleEntry
71
- };