@modern-js/app-tools 2.0.0-beta.3 → 2.0.0-beta.6

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 (261) hide show
  1. package/CHANGELOG.md +619 -0
  2. package/bin/modern.js +3 -0
  3. package/dist/js/modern/analyze/Builder.js +39 -0
  4. package/dist/js/modern/analyze/constants.js +48 -18
  5. package/dist/js/modern/analyze/generateCode.js +264 -225
  6. package/dist/js/modern/analyze/getBundleEntry.js +34 -32
  7. package/dist/js/modern/analyze/getClientRoutes/getRoutes.js +99 -52
  8. package/dist/js/modern/analyze/getClientRoutes/getRoutesLegacy.js +89 -47
  9. package/dist/js/modern/analyze/getClientRoutes/index.js +6 -2
  10. package/dist/js/modern/analyze/getClientRoutes/utils.js +23 -10
  11. package/dist/js/modern/analyze/getFileSystemEntry.js +52 -23
  12. package/dist/js/modern/analyze/getHtmlTemplate.js +89 -49
  13. package/dist/js/modern/analyze/getServerRoutes.js +122 -126
  14. package/dist/js/modern/analyze/index.js +204 -161
  15. package/dist/js/modern/analyze/isDefaultExportFunction.js +30 -16
  16. package/dist/js/modern/analyze/makeLegalIdentifier.js +10 -11
  17. package/dist/js/modern/analyze/nestedRoutes.js +118 -65
  18. package/dist/js/modern/analyze/templates.js +170 -81
  19. package/dist/js/modern/analyze/utils.js +104 -67
  20. package/dist/js/modern/builder/builderPlugins/compatModern.js +128 -109
  21. package/dist/js/modern/builder/index.js +120 -89
  22. package/dist/js/modern/builder/loaders/routerLoader.js +9 -12
  23. package/dist/js/modern/builder/loaders/serverModuleLoader.js +4 -1
  24. package/dist/js/modern/builder/share.js +23 -21
  25. package/dist/js/modern/builder/webpackPlugins/htmlAsyncChunkPlugin.js +23 -22
  26. package/dist/js/modern/builder/webpackPlugins/htmlBottomTemplate.js +31 -27
  27. package/dist/js/modern/builder/webpackPlugins/routerPlugin.js +100 -84
  28. package/dist/js/modern/commands/build.js +67 -42
  29. package/dist/js/modern/commands/deploy.js +27 -4
  30. package/dist/js/modern/commands/dev.js +81 -34
  31. package/dist/js/modern/commands/index.js +1 -1
  32. package/dist/js/modern/commands/inspect.js +30 -5
  33. package/dist/js/modern/commands/serve.js +54 -0
  34. package/dist/js/modern/config/default.js +112 -145
  35. package/dist/js/modern/config/index.js +8 -2
  36. package/dist/js/modern/config/initial/createHtmlConfig.js +5 -2
  37. package/dist/js/modern/config/initial/createOutputConfig.js +10 -13
  38. package/dist/js/modern/config/initial/createSourceConfig.js +10 -3
  39. package/dist/js/modern/config/initial/createToolsConfig.js +7 -6
  40. package/dist/js/modern/config/initial/index.js +9 -4
  41. package/dist/js/modern/config/initial/inits.js +109 -73
  42. package/dist/js/modern/config/initial/transformNormalizedConfig.js +11 -4
  43. package/dist/js/modern/defineConfig.js +26 -11
  44. package/dist/js/modern/exports/server.js +4 -1
  45. package/dist/js/modern/hooks.js +16 -4
  46. package/dist/js/modern/index.js +178 -90
  47. package/dist/js/modern/initialize/index.js +100 -52
  48. package/dist/js/modern/locale/en.js +20 -21
  49. package/dist/js/modern/locale/index.js +6 -6
  50. package/dist/js/modern/locale/zh.js +21 -22
  51. package/dist/js/modern/schema/Schema.js +6 -5
  52. package/dist/js/modern/schema/index.js +53 -100
  53. package/dist/js/modern/schema/legacy.js +96 -231
  54. package/dist/js/modern/types/config/index.js +0 -1
  55. package/dist/js/modern/types/index.js +0 -1
  56. package/dist/js/modern/types/legacyConfig/output.js +0 -1
  57. package/dist/js/modern/utils/commands.js +10 -2
  58. package/dist/js/modern/utils/config.js +102 -41
  59. package/dist/js/modern/utils/createFileWatcher.js +84 -51
  60. package/dist/js/modern/utils/createServer.js +63 -17
  61. package/dist/js/modern/utils/getServerInternalPlugins.js +58 -0
  62. package/dist/js/modern/utils/getSpecifiedEntries.js +46 -19
  63. package/dist/js/modern/utils/language.js +6 -3
  64. package/dist/js/modern/utils/printInstructions.js +27 -8
  65. package/dist/js/modern/utils/restart.js +43 -16
  66. package/dist/js/modern/utils/routes.js +29 -12
  67. package/dist/js/node/analyze/Builder.js +64 -0
  68. package/dist/js/node/analyze/constants.js +86 -39
  69. package/dist/js/node/analyze/generateCode.js +285 -239
  70. package/dist/js/node/analyze/getBundleEntry.js +62 -44
  71. package/dist/js/node/analyze/getClientRoutes/getRoutes.js +138 -77
  72. package/dist/js/node/analyze/getClientRoutes/getRoutesLegacy.js +130 -74
  73. package/dist/js/node/analyze/getClientRoutes/index.js +27 -16
  74. package/dist/js/node/analyze/getClientRoutes/utils.js +51 -21
  75. package/dist/js/node/analyze/getFileSystemEntry.js +82 -39
  76. package/dist/js/node/analyze/getHtmlTemplate.js +120 -61
  77. package/dist/js/node/analyze/getServerRoutes.js +145 -137
  78. package/dist/js/node/analyze/index.js +233 -174
  79. package/dist/js/node/analyze/isDefaultExportFunction.js +59 -26
  80. package/dist/js/node/analyze/makeLegalIdentifier.js +31 -15
  81. package/dist/js/node/analyze/nestedRoutes.js +150 -79
  82. package/dist/js/node/analyze/templates.js +198 -90
  83. package/dist/js/node/analyze/utils.js +136 -81
  84. package/dist/js/node/builder/builderPlugins/compatModern.js +158 -122
  85. package/dist/js/node/builder/index.js +142 -98
  86. package/dist/js/node/builder/loaders/routerLoader.js +29 -18
  87. package/dist/js/node/builder/loaders/serverModuleLoader.js +24 -7
  88. package/dist/js/node/builder/share.js +50 -26
  89. package/dist/js/node/builder/webpackPlugins/htmlAsyncChunkPlugin.js +43 -26
  90. package/dist/js/node/builder/webpackPlugins/htmlBottomTemplate.js +51 -31
  91. package/dist/js/node/builder/webpackPlugins/routerPlugin.js +120 -90
  92. package/dist/js/node/commands/build.js +91 -52
  93. package/dist/js/node/commands/deploy.js +49 -10
  94. package/dist/js/node/commands/dev.js +105 -48
  95. package/dist/js/node/commands/index.js +19 -38
  96. package/dist/js/node/commands/inspect.js +52 -11
  97. package/dist/js/node/commands/serve.js +83 -0
  98. package/dist/js/node/config/default.js +131 -149
  99. package/dist/js/node/config/index.js +31 -28
  100. package/dist/js/node/config/initial/createHtmlConfig.js +26 -6
  101. package/dist/js/node/config/initial/createOutputConfig.js +31 -17
  102. package/dist/js/node/config/initial/createSourceConfig.js +31 -7
  103. package/dist/js/node/config/initial/createToolsConfig.js +28 -10
  104. package/dist/js/node/config/initial/index.js +34 -17
  105. package/dist/js/node/config/initial/inits.js +130 -81
  106. package/dist/js/node/config/initial/transformNormalizedConfig.js +40 -16
  107. package/dist/js/node/defineConfig.js +46 -17
  108. package/dist/js/node/exports/server.js +25 -10
  109. package/dist/js/node/hooks.js +53 -29
  110. package/dist/js/node/index.js +213 -129
  111. package/dist/js/node/initialize/index.js +117 -61
  112. package/dist/js/node/locale/en.js +40 -25
  113. package/dist/js/node/locale/index.js +31 -14
  114. package/dist/js/node/locale/zh.js +41 -26
  115. package/dist/js/node/schema/Schema.js +27 -10
  116. package/dist/js/node/schema/index.js +84 -114
  117. package/dist/js/node/schema/legacy.js +119 -240
  118. package/dist/js/node/types/config/deploy.js +15 -0
  119. package/dist/js/node/types/config/dev.js +15 -0
  120. package/dist/js/node/types/config/experiments.js +15 -0
  121. package/dist/js/node/types/config/html.js +15 -0
  122. package/dist/js/node/types/config/index.js +17 -16
  123. package/dist/js/node/types/config/output.js +15 -0
  124. package/dist/js/node/types/config/performance.js +15 -0
  125. package/dist/js/node/types/config/security.js +15 -0
  126. package/dist/js/node/types/config/source.js +15 -0
  127. package/dist/js/node/types/config/tools.js +15 -0
  128. package/dist/js/node/types/hooks.js +15 -0
  129. package/dist/js/node/types/index.js +19 -38
  130. package/dist/js/node/types/legacyConfig/deploy.js +15 -0
  131. package/dist/js/node/types/legacyConfig/dev.js +15 -0
  132. package/dist/js/node/types/legacyConfig/index.js +15 -0
  133. package/dist/js/node/types/legacyConfig/output.js +15 -5
  134. package/dist/js/node/types/legacyConfig/source.js +15 -0
  135. package/dist/js/node/types/legacyConfig/tools.js +15 -0
  136. package/dist/js/node/utils/commands.js +31 -6
  137. package/dist/js/node/utils/config.js +125 -51
  138. package/dist/js/node/utils/createFileWatcher.js +109 -61
  139. package/dist/js/node/utils/createServer.js +92 -25
  140. package/dist/js/node/utils/getServerInternalPlugins.js +79 -0
  141. package/dist/js/node/utils/getSpecifiedEntries.js +68 -25
  142. package/dist/js/node/utils/language.js +28 -8
  143. package/dist/js/node/utils/printInstructions.js +51 -16
  144. package/dist/js/node/utils/restart.js +65 -21
  145. package/dist/js/node/utils/routes.js +58 -19
  146. package/dist/js/node/utils/types.js +15 -0
  147. package/dist/js/treeshaking/analyze/Builder.js +199 -0
  148. package/dist/js/treeshaking/analyze/constants.js +37 -18
  149. package/dist/js/treeshaking/analyze/generateCode.js +597 -407
  150. package/dist/js/treeshaking/analyze/getBundleEntry.js +55 -63
  151. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutes.js +217 -168
  152. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutesLegacy.js +215 -169
  153. package/dist/js/treeshaking/analyze/getClientRoutes/index.js +3 -2
  154. package/dist/js/treeshaking/analyze/getClientRoutes/utils.js +19 -20
  155. package/dist/js/treeshaking/analyze/getFileSystemEntry.js +97 -86
  156. package/dist/js/treeshaking/analyze/getHtmlTemplate.js +298 -125
  157. package/dist/js/treeshaking/analyze/getServerRoutes.js +210 -147
  158. package/dist/js/treeshaking/analyze/index.js +575 -305
  159. package/dist/js/treeshaking/analyze/isDefaultExportFunction.js +45 -26
  160. package/dist/js/treeshaking/analyze/makeLegalIdentifier.js +13 -16
  161. package/dist/js/treeshaking/analyze/nestedRoutes.js +419 -201
  162. package/dist/js/treeshaking/analyze/templates.js +438 -236
  163. package/dist/js/treeshaking/analyze/utils.js +367 -153
  164. package/dist/js/treeshaking/builder/builderPlugins/compatModern.js +285 -199
  165. package/dist/js/treeshaking/builder/index.js +365 -165
  166. package/dist/js/treeshaking/builder/loaders/routerLoader.js +11 -12
  167. package/dist/js/treeshaking/builder/loaders/serverModuleLoader.js +3 -2
  168. package/dist/js/treeshaking/builder/share.js +38 -44
  169. package/dist/js/treeshaking/builder/webpackPlugins/htmlAsyncChunkPlugin.js +108 -44
  170. package/dist/js/treeshaking/builder/webpackPlugins/htmlBottomTemplate.js +70 -39
  171. package/dist/js/treeshaking/builder/webpackPlugins/routerPlugin.js +334 -112
  172. package/dist/js/treeshaking/commands/build.js +286 -88
  173. package/dist/js/treeshaking/commands/deploy.js +153 -25
  174. package/dist/js/treeshaking/commands/dev.js +313 -131
  175. package/dist/js/treeshaking/commands/index.js +1 -1
  176. package/dist/js/treeshaking/commands/inspect.js +147 -32
  177. package/dist/js/treeshaking/commands/serve.js +199 -0
  178. package/dist/js/treeshaking/config/default.js +207 -198
  179. package/dist/js/treeshaking/config/index.js +3 -2
  180. package/dist/js/treeshaking/config/initial/createHtmlConfig.js +19 -31
  181. package/dist/js/treeshaking/config/initial/createOutputConfig.js +41 -70
  182. package/dist/js/treeshaking/config/initial/createSourceConfig.js +41 -40
  183. package/dist/js/treeshaking/config/initial/createToolsConfig.js +23 -38
  184. package/dist/js/treeshaking/config/initial/index.js +10 -9
  185. package/dist/js/treeshaking/config/initial/inits.js +205 -106
  186. package/dist/js/treeshaking/config/initial/transformNormalizedConfig.js +31 -34
  187. package/dist/js/treeshaking/defineConfig.js +60 -13
  188. package/dist/js/treeshaking/exports/server.js +2 -1
  189. package/dist/js/treeshaking/hooks.js +31 -25
  190. package/dist/js/treeshaking/index.js +681 -256
  191. package/dist/js/treeshaking/initialize/index.js +292 -113
  192. package/dist/js/treeshaking/locale/en.js +34 -33
  193. package/dist/js/treeshaking/locale/index.js +5 -5
  194. package/dist/js/treeshaking/locale/zh.js +34 -33
  195. package/dist/js/treeshaking/schema/Schema.js +267 -69
  196. package/dist/js/treeshaking/schema/index.js +171 -121
  197. package/dist/js/treeshaking/schema/legacy.js +323 -256
  198. package/dist/js/treeshaking/types/config/deploy.js +1 -0
  199. package/dist/js/treeshaking/types/config/dev.js +1 -0
  200. package/dist/js/treeshaking/types/config/experiments.js +1 -0
  201. package/dist/js/treeshaking/types/config/html.js +1 -0
  202. package/dist/js/treeshaking/types/config/index.js +0 -1
  203. package/dist/js/treeshaking/types/config/output.js +1 -0
  204. package/dist/js/treeshaking/types/config/performance.js +1 -0
  205. package/dist/js/treeshaking/types/config/security.js +1 -0
  206. package/dist/js/treeshaking/types/config/source.js +1 -0
  207. package/dist/js/treeshaking/types/config/tools.js +1 -0
  208. package/dist/js/treeshaking/types/hooks.js +1 -0
  209. package/dist/js/treeshaking/types/index.js +0 -1
  210. package/dist/js/treeshaking/types/legacyConfig/deploy.js +1 -0
  211. package/dist/js/treeshaking/types/legacyConfig/dev.js +1 -0
  212. package/dist/js/treeshaking/types/legacyConfig/index.js +1 -0
  213. package/dist/js/treeshaking/types/legacyConfig/output.js +1 -1
  214. package/dist/js/treeshaking/types/legacyConfig/source.js +1 -0
  215. package/dist/js/treeshaking/types/legacyConfig/tools.js +1 -0
  216. package/dist/js/treeshaking/utils/commands.js +10 -5
  217. package/dist/js/treeshaking/utils/config.js +295 -117
  218. package/dist/js/treeshaking/utils/createFileWatcher.js +278 -118
  219. package/dist/js/treeshaking/utils/createServer.js +252 -67
  220. package/dist/js/treeshaking/utils/getServerInternalPlugins.js +210 -0
  221. package/dist/js/treeshaking/utils/getSpecifiedEntries.js +182 -55
  222. package/dist/js/treeshaking/utils/language.js +6 -5
  223. package/dist/js/treeshaking/utils/printInstructions.js +151 -29
  224. package/dist/js/treeshaking/utils/restart.js +184 -42
  225. package/dist/js/treeshaking/utils/routes.js +151 -27
  226. package/dist/js/treeshaking/utils/types.js +1 -0
  227. package/dist/types/analyze/Builder.d.ts +8 -0
  228. package/dist/types/analyze/constants.d.ts +10 -1
  229. package/dist/types/analyze/index.d.ts +2 -0
  230. package/dist/types/analyze/templates.d.ts +3 -1
  231. package/dist/types/analyze/utils.d.ts +2 -1
  232. package/dist/types/builder/builderPlugins/compatModern.d.ts +2 -1
  233. package/dist/types/builder/index.d.ts +3 -3
  234. package/dist/types/builder/webpackPlugins/routerPlugin.d.ts +1 -7
  235. package/dist/types/commands/index.d.ts +1 -1
  236. package/dist/types/commands/{start.d.ts → serve.d.ts} +0 -0
  237. package/dist/types/defineConfig.d.ts +1 -0
  238. package/dist/types/index.d.ts +7 -1
  239. package/dist/types/initialize/index.d.ts +2 -0
  240. package/dist/types/locale/en.d.ts +1 -1
  241. package/dist/types/locale/index.d.ts +2 -2
  242. package/dist/types/locale/zh.d.ts +1 -1
  243. package/dist/types/types/config/dev.d.ts +2 -2
  244. package/dist/types/types/config/index.d.ts +4 -0
  245. package/dist/types/types/config/output.d.ts +0 -1
  246. package/dist/types/types/config/source.d.ts +2 -0
  247. package/dist/types/types/config/tools.d.ts +2 -0
  248. package/dist/types/types/hooks.d.ts +8 -0
  249. package/dist/types/types/legacyConfig/dev.d.ts +1 -0
  250. package/dist/types/types/legacyConfig/output.d.ts +1 -1
  251. package/dist/types/types/legacyConfig/source.d.ts +1 -0
  252. package/dist/types/types/legacyConfig/tools.d.ts +1 -0
  253. package/dist/types/utils/commands.d.ts +2 -1
  254. package/dist/types/utils/config.d.ts +1 -0
  255. package/dist/types/utils/createServer.d.ts +1 -0
  256. package/dist/types/utils/getServerInternalPlugins.d.ts +2 -0
  257. package/dist/types/utils/restart.d.ts +1 -1
  258. package/package.json +26 -22
  259. package/dist/js/modern/commands/start.js +0 -30
  260. package/dist/js/node/commands/start.js +0 -38
  261. package/dist/js/treeshaking/commands/start.js +0 -69
@@ -1,244 +1,446 @@
1
- import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
- import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
- import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
4
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
5
- import path from 'path';
6
- import { fs } from '@modern-js/utils';
7
- import { TEMP_LOADERS_DIR } from "./constants";
8
- export var index = function index(_ref) {
9
- var mountId = _ref.mountId,
10
- imports = _ref.imports,
11
- renderFunction = _ref.renderFunction,
12
- exportStatement = _ref.exportStatement;
13
- return "\nconst IS_BROWSER = typeof window !== 'undefined' && window.name !== 'nodejs';\nconst IS_REACT18 = process.env.IS_REACT18 === 'true';\nconst MOUNT_ID = '".concat(mountId, "';\n\n").concat(imports, "\n\nlet AppWrapper = null;\n\nlet root = null;\n\nfunction render() {\n ").concat(renderFunction, "\n}\n\nAppWrapper = render();\n\n").concat(exportStatement, ";\n");
14
- };
15
- export var renderFunction = function renderFunction(_ref2) {
16
- var plugins = _ref2.plugins,
17
- customBootstrap = _ref2.customBootstrap,
18
- fileSystemRoutes = _ref2.fileSystemRoutes;
19
- return "\n AppWrapper = createApp({\n plugins: [\n ".concat(plugins.map(function (_ref3) {
20
- var name = _ref3.name,
21
- options = _ref3.options,
22
- args = _ref3.args;
23
- return "".concat(name, "({...").concat(options, ", ...App?.config?.").concat(args || name, "}),");
24
- }).join('\n'), "\n ]\n })(").concat(fileSystemRoutes ? '' : "App", ")\n\n if (IS_BROWSER) {\n ").concat(customBootstrap ? "customBootstrap(AppWrapper);" : "bootstrap(AppWrapper, MOUNT_ID, root, ReactDOM);", "\n }\n\n return AppWrapper\n");
25
- };
26
- export var html = function html(partials) {
27
- 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 <!--<?- chunksMap.css ?>-->\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");
28
- };
29
- export var routesForServer = function routesForServer(_ref4) {
30
- var routes = _ref4.routes,
31
- internalDirectory = _ref4.internalDirectory,
32
- entryName = _ref4.entryName;
33
- var loaders = [];
34
- var loaderIndexFile = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, 'index.js');
35
- var traverseRouteTree = function traverseRouteTree(route) {
36
- var children;
37
- if ('children' in route && route.children) {
38
- var _route$children;
39
- children = route === null || route === void 0 ? void 0 : (_route$children = route.children) === null || _route$children === void 0 ? void 0 : _route$children.map(traverseRouteTree);
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;
40
8
  }
41
- var loader;
42
- if (route.type === 'nested') {
43
- if (route.loader) {
44
- loaders.push(route.loader);
45
- loader = "loader_".concat(loaders.length - 1);
46
- }
9
+ if (info.done) {
10
+ resolve(value);
11
+ } else {
12
+ Promise.resolve(value).then(_next, _throw);
47
13
  }
48
- var finalRoute = _objectSpread(_objectSpread({}, route), {}, {
49
- loader: loader,
50
- children: children
51
- });
52
- return finalRoute;
53
- };
54
- var routesCode = "\n export const routes = [\n ";
55
- var _iterator = _createForOfIteratorHelper(routes),
56
- _step;
57
- try {
58
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
59
- var route = _step.value;
60
- if ('type' in route) {
61
- var newRoute = traverseRouteTree(route);
62
- routesCode += "".concat(JSON.stringify(newRoute, null, 2).replace(/"(loader_[^"])"/g, '$1'), ",");
63
- } else {
64
- routesCode += "".concat(JSON.stringify(route, null, 2));
65
- }
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
+ };
29
+ }
30
+ function _defineProperty(obj, key, value) {
31
+ if (key in obj) {
32
+ Object.defineProperty(obj, key, {
33
+ value: value,
34
+ enumerable: true,
35
+ configurable: true,
36
+ writable: true
37
+ });
38
+ } else {
39
+ obj[key] = value;
40
+ }
41
+ return obj;
42
+ }
43
+ function _objectSpread(target) {
44
+ for(var i = 1; i < arguments.length; i++){
45
+ var source = arguments[i] != null ? arguments[i] : {};
46
+ var ownKeys = Object.keys(source);
47
+ if (typeof Object.getOwnPropertySymbols === "function") {
48
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
49
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
50
+ }));
51
+ }
52
+ ownKeys.forEach(function(key) {
53
+ _defineProperty(target, key, source[key]);
54
+ });
55
+ }
56
+ return target;
57
+ }
58
+ function ownKeys(object, enumerableOnly) {
59
+ var keys = Object.keys(object);
60
+ if (Object.getOwnPropertySymbols) {
61
+ var symbols = Object.getOwnPropertySymbols(object);
62
+ if (enumerableOnly) {
63
+ symbols = symbols.filter(function(sym) {
64
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
65
+ });
66
+ }
67
+ keys.push.apply(keys, symbols);
68
+ }
69
+ return keys;
70
+ }
71
+ function _objectSpreadProps(target, source) {
72
+ source = source != null ? source : {};
73
+ if (Object.getOwnPropertyDescriptors) {
74
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
75
+ } else {
76
+ ownKeys(Object(source)).forEach(function(key) {
77
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
78
+ });
79
+ }
80
+ return target;
81
+ }
82
+ var __generator = this && this.__generator || function(thisArg, body) {
83
+ var f, y, t, g, _ = {
84
+ label: 0,
85
+ sent: function() {
86
+ if (t[0] & 1) throw t[1];
87
+ return t[1];
88
+ },
89
+ trys: [],
90
+ ops: []
91
+ };
92
+ return(g = {
93
+ next: verb(0),
94
+ "throw": verb(1),
95
+ "return": verb(2)
96
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
97
+ return this;
98
+ }), g);
99
+ function verb(n) {
100
+ return function(v) {
101
+ return step([
102
+ n,
103
+ v
104
+ ]);
105
+ };
106
+ }
107
+ function step(op) {
108
+ if (f) throw new TypeError("Generator is already executing.");
109
+ while(_)try {
110
+ 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;
111
+ if (y = 0, t) op = [
112
+ op[0] & 2,
113
+ t.value
114
+ ];
115
+ switch(op[0]){
116
+ case 0:
117
+ case 1:
118
+ t = op;
119
+ break;
120
+ case 4:
121
+ _.label++;
122
+ return {
123
+ value: op[1],
124
+ done: false
125
+ };
126
+ case 5:
127
+ _.label++;
128
+ y = op[1];
129
+ op = [
130
+ 0
131
+ ];
132
+ continue;
133
+ case 7:
134
+ op = _.ops.pop();
135
+ _.trys.pop();
136
+ continue;
137
+ default:
138
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
139
+ _ = 0;
140
+ continue;
141
+ }
142
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
143
+ _.label = op[1];
144
+ break;
145
+ }
146
+ if (op[0] === 6 && _.label < t[1]) {
147
+ _.label = t[1];
148
+ t = op;
149
+ break;
150
+ }
151
+ if (t && _.label < t[2]) {
152
+ _.label = t[2];
153
+ _.ops.push(op);
154
+ break;
155
+ }
156
+ if (t[2]) _.ops.pop();
157
+ _.trys.pop();
158
+ continue;
159
+ }
160
+ op = body.call(thisArg, _);
161
+ } catch (e) {
162
+ op = [
163
+ 6,
164
+ e
165
+ ];
166
+ y = 0;
167
+ } finally{
168
+ f = t = 0;
169
+ }
170
+ if (op[0] & 5) throw op[1];
171
+ return {
172
+ value: op[0] ? op[1] : void 0,
173
+ done: true
174
+ };
66
175
  }
67
- } catch (err) {
68
- _iterator.e(err);
69
- } finally {
70
- _iterator.f();
71
- }
72
- routesCode += "\n];";
73
- var importLoadersCode = '';
74
- if (loaders.length > 0) {
75
- importLoadersCode = "\n import { ".concat(loaders.map(function (loader, index) {
76
- return "loader_".concat(index);
77
- }), " } from \"").concat(loaderIndexFile, "\"");
78
- }
79
- return "\n ".concat(importLoadersCode, "\n ").concat(routesCode, "\n ");
80
176
  };
81
- export var fileSystemRoutes = /*#__PURE__*/function () {
82
- var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref5) {
83
- var routes, ssrMode, nestedRoutesEntry, entryName, internalDirectory, loadings, errors, loaders, loadersMap, loadersIndexFile, loadersMapFile, importLazyCode, rootLayoutCode, dataLoaderPath, componentLoaderPath, traverseRouteTree, routeComponentsCode, _iterator2, _step2, route, newRoute, component, finalRoute, importLoadingCode, importErrorComponentsCode, importLoadersCode, loaderEntryCode, loaderEntryFile;
84
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
85
- while (1) {
86
- switch (_context2.prev = _context2.next) {
87
- case 0:
88
- routes = _ref5.routes, ssrMode = _ref5.ssrMode, nestedRoutesEntry = _ref5.nestedRoutesEntry, entryName = _ref5.entryName, internalDirectory = _ref5.internalDirectory;
89
- loadings = [];
90
- errors = [];
91
- loaders = [];
92
- loadersMap = {};
93
- loadersIndexFile = path.join('@_modern_js_internal', entryName, TEMP_LOADERS_DIR, 'index.js');
94
- loadersMapFile = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, 'map.json');
95
- importLazyCode = "\n import { lazy } from \"react\";\n import loadable, { lazy as loadableLazy } from \"@modern-js/runtime/loadable\"\n ";
96
- rootLayoutCode = "";
97
- dataLoaderPath = '';
98
- componentLoaderPath = '';
99
- if (ssrMode) {
100
- dataLoaderPath = require.resolve("@modern-js/plugin-data-loader/loader");
101
- if (nestedRoutesEntry) {
102
- dataLoaderPath = "".concat(dataLoaderPath, "?routesDir=").concat(nestedRoutesEntry, "&mapFile=").concat(loadersMapFile, "!");
103
- }
104
- componentLoaderPath = "".concat(path.join(__dirname, '../builder/loaders/routerLoader'), "!");
177
+ import path from "path";
178
+ import { fs, slash } from "@modern-js/utils";
179
+ import { TEMP_LOADERS_DIR } from "./constants";
180
+ var index = function(param) {
181
+ var mountId = param.mountId, imports = param.imports, renderFunction2 = param.renderFunction, exportStatement = param.exportStatement;
182
+ return "\nconst IS_BROWSER = typeof window !== 'undefined' && window.name !== 'nodejs';\nconst IS_REACT18 = process.env.IS_REACT18 === 'true';\nconst MOUNT_ID = '".concat(mountId, "';\n\n").concat(imports, "\n\nlet AppWrapper = null;\n\nlet root = null;\n\nfunction render() {\n ").concat(renderFunction2, "\n}\n\nAppWrapper = render();\n\n").concat(exportStatement, ";\n");
183
+ };
184
+ var renderFunction = function(param) {
185
+ var plugins = param.plugins, customBootstrap = param.customBootstrap, fileSystemRoutes2 = param.fileSystemRoutes;
186
+ return "\n AppWrapper = createApp({\n plugins: [\n ".concat(plugins.map(function(param) {
187
+ var name = param.name, options = param.options, args = param.args;
188
+ return "".concat(name, "({...").concat(options, ", ...App?.config?.").concat(args || name, "}),");
189
+ }).join("\n"), "\n ]\n })(").concat(fileSystemRoutes2 ? "" : "App", ")\n\n if (IS_BROWSER) {\n ").concat(customBootstrap ? "customBootstrap(AppWrapper);" : "bootstrap(AppWrapper, MOUNT_ID, root, ReactDOM);", "\n }\n\n return AppWrapper\n");
190
+ };
191
+ var html = function(partials) {
192
+ 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 <!--<?- chunksMap.css ?>-->\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");
193
+ };
194
+ var routesForServer = function(param) {
195
+ var routes = param.routes, internalDirectory = param.internalDirectory, entryName = param.entryName;
196
+ var loaders = [];
197
+ var loaderIndexFile = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, "index.js");
198
+ var traverseRouteTree = function(route) {
199
+ var children;
200
+ if ("children" in route && route.children) {
201
+ var ref;
202
+ children = route === null || route === void 0 ? void 0 : (ref = route.children) === null || ref === void 0 ? void 0 : ref.map(traverseRouteTree);
203
+ }
204
+ var loader;
205
+ if (route.type === "nested") {
206
+ if (route.loader) {
207
+ loaders.push(route.loader);
208
+ loader = "loader_".concat(loaders.length - 1);
209
+ }
210
+ }
211
+ var finalRoute = _objectSpreadProps(_objectSpread({}, route), {
212
+ loader: loader,
213
+ children: children
214
+ });
215
+ return finalRoute;
216
+ };
217
+ var routesCode = "\n export const routes = [\n ";
218
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
219
+ try {
220
+ for(var _iterator = routes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
221
+ var route = _step.value;
222
+ if ("type" in route) {
223
+ var newRoute = traverseRouteTree(route);
224
+ routesCode += "".concat(JSON.stringify(newRoute, null, 2).replace(/"(loader_[^"])"/g, "$1"), ",");
225
+ } else {
226
+ routesCode += "".concat(JSON.stringify(route, null, 2));
105
227
  }
106
- traverseRouteTree = function traverseRouteTree(route) {
107
- var children;
108
- if ('children' in route && route.children) {
109
- var _route$children2;
110
- children = route === null || route === void 0 ? void 0 : (_route$children2 = route.children) === null || _route$children2 === void 0 ? void 0 : _route$children2.map(traverseRouteTree);
111
- }
112
- var loading;
113
- var error;
114
- var loader;
115
- var component = '';
116
- if (route.type === 'nested') {
117
- if (route.loading) {
118
- loadings.push(route.loading);
119
- loading = "loading_".concat(loadings.length - 1);
120
- }
121
- if (route.error) {
122
- errors.push(route.error);
123
- error = "error_".concat(errors.length - 1);
124
- }
125
- if (route.loader) {
126
- loaders.push(route.loader);
127
- var loaderId = loaders.length - 1;
128
- loader = "loader_".concat(loaderId);
129
- loadersMap[loader] = route.id;
130
- }
131
- if (route._component) {
132
- if (route.isRoot) {
133
- rootLayoutCode = "import RootLayout from '".concat(route._component, "'");
134
- component = "RootLayout";
135
- } else if (ssrMode === 'string') {
136
- component = "loadable(() => import(/* webpackChunkName: \"".concat(route.id, "\" */ '").concat(componentLoaderPath).concat(route._component, "'))");
137
- } else {
138
- // csr and streaming
139
- component = "lazy(() => import(/* webpackChunkName: \"".concat(route.id, "\" */ '").concat(componentLoaderPath).concat(route._component, "'))");
140
- }
141
- }
142
- } else if (route._component) {
143
- component = "loadable(() => import('".concat(route._component, "'))");
144
- }
145
- var finalRoute = _objectSpread(_objectSpread({}, route), {}, {
146
- loading: loading,
147
- loader: loader,
148
- error: error,
149
- children: children
150
- });
151
- if (route._component) {
152
- finalRoute.component = component;
153
- }
154
- return finalRoute;
155
- };
156
- routeComponentsCode = "\n export const routes = [\n ";
157
- _iterator2 = _createForOfIteratorHelper(routes);
158
- try {
159
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
160
- route = _step2.value;
161
- if ('type' in route) {
162
- newRoute = traverseRouteTree(route);
163
- routeComponentsCode += "".concat(JSON.stringify(newRoute, null, 2).replace(/"(loadable.*\))"/g, '$1').replace(/"(loadableLazy.*\))"/g, '$1').replace(/"(lazy.*\))"/g, '$1').replace(/"(loading_[^"])"/g, '$1').replace(/"(loader_[^"])"/g, '$1').replace(/"(RootLayout)"/g, '$1').replace(/"(error_[^"])"/g, '$1').replace(/\\"/g, '"'), ",");
164
- } else {
165
- component = "loadable(() => import('".concat(route._component, "'))");
166
- finalRoute = _objectSpread(_objectSpread({}, route), {}, {
167
- component: component
168
- });
169
- routeComponentsCode += "".concat(JSON.stringify(finalRoute, null, 2).replace(/"(loadable[^"]*)"/g, '$1').replace(/"(lazy[^"]*)"/g, '$1'), ",");
170
- }
171
- }
172
- } catch (err) {
173
- _iterator2.e(err);
174
- } finally {
175
- _iterator2.f();
228
+ }
229
+ } catch (err) {
230
+ _didIteratorError = true;
231
+ _iteratorError = err;
232
+ } finally{
233
+ try {
234
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
235
+ _iterator.return();
176
236
  }
177
- routeComponentsCode += "\n];";
178
- importLoadingCode = loadings.map(function (loading, index) {
179
- return "import loading_".concat(index, " from '").concat(loading, "';\n");
180
- }).join('');
181
- importErrorComponentsCode = errors.map(function (error, index) {
182
- return "import error_".concat(index, " from '").concat(error, "';\n");
183
- }).join('');
184
- importLoadersCode = '';
185
- if (!(loaders.length > 0)) {
186
- _context2.next = 32;
187
- break;
237
+ } finally{
238
+ if (_didIteratorError) {
239
+ throw _iteratorError;
188
240
  }
189
- importLoadersCode = "\n import { ".concat(loaders.map(function (loader, index) {
190
- return "loader_".concat(index);
191
- }), " } from \"").concat(dataLoaderPath).concat(loadersIndexFile, "\"\n ");
192
- loaderEntryCode = loaders.map(function (loader, index) {
193
- return "export * from './loader_".concat(index, ".js';");
194
- }).join('\n');
195
- loaderEntryFile = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, 'entry.js');
196
- _context2.next = 26;
197
- return fs.ensureFile(loaderEntryFile);
198
- case 26:
199
- _context2.next = 28;
200
- return fs.writeFile(loaderEntryFile, loaderEntryCode);
201
- case 28:
202
- _context2.next = 30;
203
- return fs.writeJSON(loadersMapFile, loadersMap);
204
- case 30:
205
- _context2.next = 32;
206
- return Promise.all(loaders.map( /*#__PURE__*/function () {
207
- var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(loader, index) {
208
- var name, filename, code;
209
- return _regeneratorRuntime().wrap(function _callee$(_context) {
210
- while (1) {
211
- switch (_context.prev = _context.next) {
212
- case 0:
213
- name = "loader_".concat(index);
214
- filename = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, "".concat(name, ".js"));
215
- code = "\n export { loader as ".concat(name, " } from '").concat(loader, "'\n ");
216
- _context.next = 5;
217
- return fs.ensureFile(filename);
218
- case 5:
219
- _context.next = 7;
220
- return fs.writeFile(filename, code);
221
- case 7:
222
- case "end":
223
- return _context.stop();
224
- }
225
- }
226
- }, _callee);
227
- }));
228
- return function (_x2, _x3) {
229
- return _ref7.apply(this, arguments);
230
- };
231
- }()));
232
- case 32:
233
- return _context2.abrupt("return", "\n ".concat(importLazyCode, "\n ").concat(rootLayoutCode, "\n ").concat(importLoadingCode, "\n ").concat(importErrorComponentsCode, "\n ").concat(importLoadersCode, "\n ").concat(routeComponentsCode, "\n "));
234
- case 33:
235
- case "end":
236
- return _context2.stop();
237
241
  }
238
- }
239
- }, _callee2);
240
- }));
241
- return function fileSystemRoutes(_x) {
242
- return _ref6.apply(this, arguments);
243
- };
244
- }();
242
+ }
243
+ routesCode += "\n];";
244
+ var importLoadersCode = "";
245
+ if (loaders.length > 0) {
246
+ importLoadersCode = "\n import { ".concat(loaders.map(function(loader, index2) {
247
+ return "loader_".concat(index2);
248
+ }), ' } from "').concat(slash(loaderIndexFile), '"');
249
+ }
250
+ return "\n ".concat(importLoadersCode, "\n ").concat(routesCode, "\n ");
251
+ };
252
+ var fileSystemRoutes = function() {
253
+ var _ref = _asyncToGenerator(function(param) {
254
+ var routes, ssrMode, nestedRoutesEntry, entryName, internalDirectory, internalDirAlias, loadings, errors, loaders, loadersMap, loadersIndexFile, loadersMapFile, importLazyCode, rootLayoutCode, dataLoaderPath, componentLoaderPath, traverseRouteTree, routeComponentsCode, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, route, newRoute, component, finalRoute, importLoadingCode, importErrorComponentsCode, importLoadersCode, loaderEntryCode, loaderEntryFile;
255
+ return __generator(this, function(_state) {
256
+ switch(_state.label){
257
+ case 0:
258
+ routes = param.routes, ssrMode = param.ssrMode, nestedRoutesEntry = param.nestedRoutesEntry, entryName = param.entryName, internalDirectory = param.internalDirectory, internalDirAlias = param.internalDirAlias;
259
+ loadings = [];
260
+ errors = [];
261
+ loaders = [];
262
+ loadersMap = {};
263
+ loadersIndexFile = path.join(internalDirAlias, entryName, TEMP_LOADERS_DIR, "index.js");
264
+ loadersMapFile = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, "map.json");
265
+ importLazyCode = '\n import { lazy } from "react";\n import loadable, { lazy as loadableLazy } from "@modern-js/runtime/loadable"\n ';
266
+ rootLayoutCode = "";
267
+ dataLoaderPath = "";
268
+ componentLoaderPath = "";
269
+ if (ssrMode) {
270
+ dataLoaderPath = require.resolve("@modern-js/plugin-data-loader/loader");
271
+ if (nestedRoutesEntry) {
272
+ dataLoaderPath = "".concat(dataLoaderPath, "?routesDir=").concat(nestedRoutesEntry, "&mapFile=").concat(loadersMapFile, "!");
273
+ }
274
+ componentLoaderPath = "".concat(path.join(__dirname, "../builder/loaders/routerLoader"), "!");
275
+ }
276
+ traverseRouteTree = function(route) {
277
+ var children;
278
+ if ("children" in route && route.children) {
279
+ var ref;
280
+ children = route === null || route === void 0 ? void 0 : (ref = route.children) === null || ref === void 0 ? void 0 : ref.map(traverseRouteTree);
281
+ }
282
+ var loading;
283
+ var error;
284
+ var loader;
285
+ var component = "";
286
+ if (route.type === "nested") {
287
+ if (route.loading) {
288
+ loadings.push(route.loading);
289
+ loading = "loading_".concat(loadings.length - 1);
290
+ }
291
+ if (route.error) {
292
+ errors.push(route.error);
293
+ error = "error_".concat(errors.length - 1);
294
+ }
295
+ if (route.loader) {
296
+ loaders.push(route.loader);
297
+ var loaderId = loaders.length - 1;
298
+ loader = "loader_".concat(loaderId);
299
+ loadersMap[loader] = route.id;
300
+ }
301
+ if (route._component) {
302
+ if (route.isRoot) {
303
+ rootLayoutCode = "import RootLayout from '".concat(route._component, "'");
304
+ component = "RootLayout";
305
+ } else if (ssrMode === "string") {
306
+ component = 'loadable(() => import(/* webpackChunkName: "'.concat(route.id, "\" */ '").concat(componentLoaderPath).concat(route._component, "'))");
307
+ } else {
308
+ component = 'lazy(() => import(/* webpackChunkName: "'.concat(route.id, "\" */ '").concat(componentLoaderPath).concat(route._component, "'))");
309
+ }
310
+ }
311
+ } else if (route._component) {
312
+ component = "loadable(() => import('".concat(route._component, "'))");
313
+ }
314
+ var finalRoute = _objectSpreadProps(_objectSpread({}, route), {
315
+ loading: loading,
316
+ loader: loader,
317
+ error: error,
318
+ children: children
319
+ });
320
+ if (route._component) {
321
+ finalRoute.component = component;
322
+ }
323
+ return finalRoute;
324
+ };
325
+ routeComponentsCode = "\n export const routes = [\n ";
326
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
327
+ try {
328
+ for(_iterator = routes[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
329
+ route = _step.value;
330
+ if ("type" in route) {
331
+ newRoute = traverseRouteTree(route);
332
+ routeComponentsCode += "".concat(JSON.stringify(newRoute, null, 2).replace(/"(loadable.*\))"/g, "$1").replace(/"(loadableLazy.*\))"/g, "$1").replace(/"(lazy.*\))"/g, "$1").replace(/"(loading_[^"])"/g, "$1").replace(/"(loader_[^"])"/g, "$1").replace(/"(RootLayout)"/g, "$1").replace(/"(error_[^"])"/g, "$1").replace(/\\"/g, '"'), ",");
333
+ } else {
334
+ component = "loadable(() => import('".concat(route._component, "'))");
335
+ finalRoute = _objectSpreadProps(_objectSpread({}, route), {
336
+ component: component
337
+ });
338
+ routeComponentsCode += "".concat(JSON.stringify(finalRoute, null, 2).replace(/"(loadable[^"]*)"/g, "$1").replace(/"(lazy[^"]*)"/g, "$1"), ",");
339
+ }
340
+ }
341
+ } catch (err) {
342
+ _didIteratorError = true;
343
+ _iteratorError = err;
344
+ } finally{
345
+ try {
346
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
347
+ _iterator.return();
348
+ }
349
+ } finally{
350
+ if (_didIteratorError) {
351
+ throw _iteratorError;
352
+ }
353
+ }
354
+ }
355
+ routeComponentsCode += "\n];";
356
+ importLoadingCode = loadings.map(function(loading, index2) {
357
+ return "import loading_".concat(index2, " from '").concat(loading, "';\n");
358
+ }).join("");
359
+ importErrorComponentsCode = errors.map(function(error, index2) {
360
+ return "import error_".concat(index2, " from '").concat(error, "';\n");
361
+ }).join("");
362
+ importLoadersCode = "";
363
+ if (!(loaders.length > 0)) return [
364
+ 3,
365
+ 5
366
+ ];
367
+ importLoadersCode = "\n import { ".concat(loaders.map(function(loader, index2) {
368
+ return "loader_".concat(index2);
369
+ }), ' } from "').concat(slash(dataLoaderPath)).concat(slash(loadersIndexFile), '"\n ');
370
+ loaderEntryCode = loaders.map(function(loader, index2) {
371
+ return "export * from './loader_".concat(index2, ".js';");
372
+ }).join("\n");
373
+ loaderEntryFile = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, "entry.js");
374
+ return [
375
+ 4,
376
+ fs.ensureFile(loaderEntryFile)
377
+ ];
378
+ case 1:
379
+ _state.sent();
380
+ return [
381
+ 4,
382
+ fs.writeFile(loaderEntryFile, loaderEntryCode)
383
+ ];
384
+ case 2:
385
+ _state.sent();
386
+ return [
387
+ 4,
388
+ fs.writeJSON(loadersMapFile, loadersMap)
389
+ ];
390
+ case 3:
391
+ _state.sent();
392
+ return [
393
+ 4,
394
+ Promise.all(loaders.map(function() {
395
+ var _ref = _asyncToGenerator(function(loader, index2) {
396
+ var name, filename, code;
397
+ return __generator(this, function(_state) {
398
+ switch(_state.label){
399
+ case 0:
400
+ name = "loader_".concat(index2);
401
+ filename = path.join(internalDirectory, entryName, TEMP_LOADERS_DIR, "".concat(name, ".js"));
402
+ code = "";
403
+ if (loader.includes(".loader.")) {
404
+ code = "\n export { default as ".concat(name, " } from '").concat(slash(loader), "'\n ");
405
+ } else {
406
+ code = "\n export { loader as ".concat(name, " } from '").concat(slash(loader), "'\n ");
407
+ }
408
+ return [
409
+ 4,
410
+ fs.ensureFile(filename)
411
+ ];
412
+ case 1:
413
+ _state.sent();
414
+ return [
415
+ 4,
416
+ fs.writeFile(filename, code)
417
+ ];
418
+ case 2:
419
+ _state.sent();
420
+ return [
421
+ 2
422
+ ];
423
+ }
424
+ });
425
+ });
426
+ return function(loader, index2) {
427
+ return _ref.apply(this, arguments);
428
+ };
429
+ }()))
430
+ ];
431
+ case 4:
432
+ _state.sent();
433
+ _state.label = 5;
434
+ case 5:
435
+ return [
436
+ 2,
437
+ "\n ".concat(importLazyCode, "\n ").concat(rootLayoutCode, "\n ").concat(importLoadingCode, "\n ").concat(importErrorComponentsCode, "\n ").concat(importLoadersCode, "\n ").concat(routeComponentsCode, "\n ")
438
+ ];
439
+ }
440
+ });
441
+ });
442
+ return function fileSystemRoutes(_) {
443
+ return _ref.apply(this, arguments);
444
+ };
445
+ }();
446
+ export { fileSystemRoutes, html, index, renderFunction, routesForServer };