@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,50 +1,85 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __export = (target, all) => {
25
+ for (var name in all)
26
+ __defProp(target, name, { get: all[name], enumerable: true });
27
+ };
28
+ var __copyProps = (to, from, except, desc) => {
29
+ if (from && typeof from === "object" || typeof from === "function") {
30
+ for (let key of __getOwnPropNames(from))
31
+ if (!__hasOwnProp.call(to, key) && key !== except)
32
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
33
+ }
34
+ return to;
35
+ };
36
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
37
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
38
+ mod
39
+ ));
40
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
41
+ var getRoutesLegacy_exports = {};
42
+ __export(getRoutesLegacy_exports, {
43
+ getClientRoutes: () => getClientRoutes
5
44
  });
6
- exports.getClientRoutes = void 0;
7
- var _path = _interopRequireDefault(require("path"));
8
- var _utils = require("@modern-js/utils");
9
- var _makeLegalIdentifier = require("../makeLegalIdentifier");
10
- var _constants = require("../constants");
11
- var _utils2 = require("../utils");
12
- var _utils3 = require("./utils");
13
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
45
+ module.exports = __toCommonJS(getRoutesLegacy_exports);
46
+ var import_path = __toESM(require("path"));
47
+ var import_utils = require("@modern-js/utils");
48
+ var import_makeLegalIdentifier = require("../makeLegalIdentifier");
49
+ var import_constants = require("../constants");
50
+ var import_utils2 = require("../utils");
51
+ var import_utils3 = require("./utils");
17
52
  const compName = (srcDirectory, filePath) => {
18
- const legalCompName = (0, _makeLegalIdentifier.makeLegalIdentifier)(_path.default.relative(srcDirectory, filePath));
53
+ const legalCompName = (0, import_makeLegalIdentifier.makeLegalIdentifier)(
54
+ import_path.default.relative(srcDirectory, filePath)
55
+ );
19
56
  return `Comp_${legalCompName}`;
20
57
  };
21
- const layoutNameAbbr = filePath => {
22
- const prefix = 'L_';
23
- const dirName = _path.default.dirname(filePath).split('/').pop() || '';
24
- return `${prefix}${(0, _makeLegalIdentifier.makeLegalIdentifier)(dirName)}`;
58
+ const layoutNameAbbr = (filePath) => {
59
+ const prefix = "L_";
60
+ const dirName = import_path.default.dirname(filePath).split("/").pop() || "";
61
+ return `${prefix}${(0, import_makeLegalIdentifier.makeLegalIdentifier)(dirName)}`;
25
62
  };
26
63
  const parents = [];
27
-
28
- /* eslint-disable no-param-reassign */
29
64
  const recursiveReadDirLegacy = ({
30
65
  dir,
31
66
  routes,
32
- basePath: _basePath = '/',
67
+ basePath = "/",
33
68
  srcDirectory,
34
69
  srcAlias
35
70
  }) => {
36
71
  let hasDynamicRoute = false;
37
72
  let resetParent = false;
38
73
  let parent = parents[parents.length - 1];
39
- const layout = (0, _utils3.findLayout)(dir);
74
+ const layout = (0, import_utils3.findLayout)(dir);
40
75
  if (layout) {
41
- if (_basePath === '/') {
76
+ if (basePath === "/") {
42
77
  throw new Error(`should use _app instead of _layout in ${dir}`);
43
78
  } else {
44
- const alias = (0, _utils2.replaceWithAlias)(srcDirectory, layout, srcAlias);
79
+ const alias = (0, import_utils2.replaceWithAlias)(srcDirectory, layout, srcAlias);
45
80
  const componentName = compName(srcDirectory, layout);
46
81
  const route = {
47
- path: `${_basePath.substring(0, _basePath.length - 1)}`,
82
+ path: `${basePath.substring(0, basePath.length - 1)}`,
48
83
  exact: false,
49
84
  routes: [],
50
85
  _component: alias,
@@ -58,28 +93,30 @@ const recursiveReadDirLegacy = ({
58
93
  routes = route.routes;
59
94
  }
60
95
  }
61
- for (const relative of _utils.fs.readdirSync(dir)) {
62
- const filePath = _path.default.join(dir, relative);
63
- if (!(0, _utils3.shouldSkip)(filePath)) {
64
- const filename = _path.default.basename(filePath, _path.default.extname(filePath));
65
- const alias = (0, _utils2.replaceWithAlias)(srcDirectory, filePath, srcAlias);
96
+ for (const relative of import_utils.fs.readdirSync(dir)) {
97
+ const filePath = import_path.default.join(dir, relative);
98
+ if (!(0, import_utils3.shouldSkip)(filePath)) {
99
+ const filename = import_path.default.basename(filePath, import_path.default.extname(filePath));
100
+ const alias = (0, import_utils2.replaceWithAlias)(srcDirectory, filePath, srcAlias);
66
101
  const componentName = compName(srcDirectory, filePath);
67
- const dynamicRouteMatched = _constants.FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP.exec(filename);
102
+ const dynamicRouteMatched = import_constants.FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP.exec(filename);
68
103
  if (dynamicRouteMatched) {
69
104
  if (hasDynamicRoute) {
70
- throw new Error(`Can't set two dynamic route in one directory: ${dir}`);
105
+ throw new Error(
106
+ `Can't set two dynamic route in one directory: ${dir}`
107
+ );
71
108
  } else {
72
109
  hasDynamicRoute = true;
73
110
  }
74
111
  }
75
112
  const route = {
76
- path: `${_basePath}${dynamicRouteMatched ? `:${dynamicRouteMatched[1]}${dynamicRouteMatched[2]}` : filename}`,
113
+ path: `${basePath}${dynamicRouteMatched ? `:${dynamicRouteMatched[1]}${dynamicRouteMatched[2]}` : filename}`,
77
114
  _component: alias,
78
115
  component: componentName,
79
116
  exact: true,
80
117
  parent
81
118
  };
82
- if (_utils.fs.statSync(filePath).isDirectory()) {
119
+ if (import_utils.fs.statSync(filePath).isDirectory()) {
83
120
  recursiveReadDirLegacy({
84
121
  dir: filePath,
85
122
  routes,
@@ -89,14 +126,14 @@ const recursiveReadDirLegacy = ({
89
126
  });
90
127
  continue;
91
128
  }
92
- if (filename === _constants.FILE_SYSTEM_ROUTES_LAYOUT) {
129
+ if (filename === import_constants.FILE_SYSTEM_ROUTES_LAYOUT) {
93
130
  continue;
94
131
  }
95
- if (filename === _constants.FILE_SYSTEM_ROUTES_INDEX) {
96
- route.path = _basePath === '/' ? _basePath : `${_basePath.substring(0, _basePath.length - 1)}`;
132
+ if (filename === import_constants.FILE_SYSTEM_ROUTES_INDEX) {
133
+ route.path = basePath === "/" ? basePath : `${basePath.substring(0, basePath.length - 1)}`;
97
134
  }
98
- if (filename === '404' && _basePath === '/') {
99
- route.path = '*';
135
+ if (filename === "404" && basePath === "/") {
136
+ route.path = "*";
100
137
  route.exact = false;
101
138
  }
102
139
  routes.push(route);
@@ -106,36 +143,45 @@ const recursiveReadDirLegacy = ({
106
143
  parents.pop();
107
144
  }
108
145
  };
109
- /* eslint-enable no-param-reassign */
110
-
111
146
  const normalizeNestedRoutes = (nested, internalComponentsDir, internalDirectory, internalDirAlias) => {
112
- const flat = routes => routes.reduce((memo, route) => memo.concat(Array.isArray(route.routes) ? flat(route.routes) : [route]), []);
113
- const generate = route => {
147
+ const flat = (routes) => routes.reduce(
148
+ (memo, route) => memo.concat(Array.isArray(route.routes) ? flat(route.routes) : [route]),
149
+ []
150
+ );
151
+ const generate = (route) => {
114
152
  const codes = [];
115
153
  let lastComponent = route.component;
116
- const imports = [`import React from 'react';`, `import ${lastComponent} from '${route._component}'`];
117
-
118
- // eslint-disable-next-line no-param-reassign, no-cond-assign
154
+ const imports = [
155
+ `import React from 'react';`,
156
+ `import ${lastComponent} from '${route._component}'`
157
+ ];
119
158
  while (route = route.parent) {
120
159
  const layoutComponent = route.component;
121
160
  const layoutComponentAbbr = layoutNameAbbr(route._component);
122
161
  imports.push(`import ${layoutComponent} from '${route._component}';`);
123
162
  const currentComponent = `${layoutComponentAbbr}_${lastComponent}`;
124
- codes.push(`const ${currentComponent} = props => <${layoutComponent} Component={${lastComponent}} {...props} />;`);
163
+ codes.push(
164
+ `const ${currentComponent} = props => <${layoutComponent} Component={${lastComponent}} {...props} />;`
165
+ );
125
166
  lastComponent = currentComponent;
126
167
  }
127
- const file = _path.default.resolve(internalComponentsDir, `${lastComponent}.jsx`);
128
- _utils.fs.outputFileSync(file, `${imports.join('\n')}\n${codes.join('\n')}\nexport default ${lastComponent}`);
168
+ const file = import_path.default.resolve(internalComponentsDir, `${lastComponent}.jsx`);
169
+ import_utils.fs.outputFileSync(
170
+ file,
171
+ `${imports.join("\n")}
172
+ ${codes.join(
173
+ "\n"
174
+ )}
175
+ export default ${lastComponent}`
176
+ );
129
177
  return {
130
178
  component: lastComponent,
131
- _component: (0, _utils2.replaceWithAlias)(internalDirectory, file, internalDirAlias)
179
+ _component: (0, import_utils2.replaceWithAlias)(internalDirectory, file, internalDirAlias)
132
180
  };
133
181
  };
134
- const normalized = flat(nested).map(route => route.parent ? _objectSpread(_objectSpread(_objectSpread({}, route), generate(route)), {}, {
135
- parent: undefined
136
- }) : _objectSpread(_objectSpread({}, route), {}, {
137
- parent: undefined
138
- }));
182
+ const normalized = flat(nested).map(
183
+ (route) => route.parent ? __spreadProps(__spreadValues(__spreadValues({}, route), generate(route)), { parent: void 0 }) : __spreadProps(__spreadValues({}, route), { parent: void 0 })
184
+ );
139
185
  return normalized;
140
186
  };
141
187
  const getClientRoutes = ({
@@ -145,38 +191,48 @@ const getClientRoutes = ({
145
191
  internalDirectory,
146
192
  internalDirAlias
147
193
  }) => {
148
- const {
149
- entry,
150
- entryName
151
- } = entrypoint;
152
- if (!_utils.fs.existsSync(entry)) {
153
- throw new Error(`generate file system routes error, ${entry} directory not found.`);
194
+ const { entry, entryName } = entrypoint;
195
+ if (!import_utils.fs.existsSync(entry)) {
196
+ throw new Error(
197
+ `generate file system routes error, ${entry} directory not found.`
198
+ );
154
199
  }
155
- if (!(_utils.fs.existsSync(entry) && _utils.fs.statSync(entry).isDirectory())) {
156
- throw new Error(`generate file system routes error, ${entry} should be directory.`);
200
+ if (!(import_utils.fs.existsSync(entry) && import_utils.fs.statSync(entry).isDirectory())) {
201
+ throw new Error(
202
+ `generate file system routes error, ${entry} should be directory.`
203
+ );
157
204
  }
158
205
  let routes = [];
159
206
  recursiveReadDirLegacy({
160
207
  dir: entry,
161
208
  routes,
162
- basePath: '/',
209
+ basePath: "/",
163
210
  srcDirectory,
164
211
  srcAlias
165
212
  });
166
- const internalComponentsDir = _path.default.resolve(internalDirectory, `${entryName}/${_constants.FILE_SYSTEM_ROUTES_COMPONENTS_DIR}`);
167
- _utils.fs.emptyDirSync(internalComponentsDir);
168
- routes = normalizeNestedRoutes(routes, internalComponentsDir, internalDirectory, internalDirAlias);
213
+ const internalComponentsDir = import_path.default.resolve(
214
+ internalDirectory,
215
+ `${entryName}/${import_constants.FILE_SYSTEM_ROUTES_COMPONENTS_DIR}`
216
+ );
217
+ import_utils.fs.emptyDirSync(internalComponentsDir);
218
+ routes = normalizeNestedRoutes(
219
+ routes,
220
+ internalComponentsDir,
221
+ internalDirectory,
222
+ internalDirAlias
223
+ );
169
224
  parents.length = 0;
170
-
171
- // FIXME: support more situations
172
225
  routes.sort((a, b) => {
173
- const delta = (0, _utils3.getRouteWeight)(a.path) - (0, _utils3.getRouteWeight)(b.path);
226
+ const delta = (0, import_utils3.getRouteWeight)(a.path) - (0, import_utils3.getRouteWeight)(b.path);
174
227
  if (delta === 0) {
175
228
  return a.path.length - b.path.length;
176
229
  }
177
230
  return delta;
178
231
  });
179
- (0, _utils3.debug)(`fileSystem routes: %o`, routes);
232
+ (0, import_utils3.debug)(`fileSystem routes: %o`, routes);
180
233
  return routes;
181
234
  };
182
- exports.getClientRoutes = getClientRoutes;
235
+ // Annotate the CommonJS export names for ESM import in node:
236
+ 0 && (module.exports = {
237
+ getClientRoutes
238
+ });
@@ -1,19 +1,30 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "getClientRoutes", {
7
- enumerable: true,
8
- get: function () {
9
- return _getRoutes.getClientRoutes;
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
14
  }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var getClientRoutes_exports = {};
19
+ __export(getClientRoutes_exports, {
20
+ getClientRoutes: () => import_getRoutes.getClientRoutes,
21
+ getClientRoutesLegacy: () => import_getRoutesLegacy.getClientRoutes
11
22
  });
12
- Object.defineProperty(exports, "getClientRoutesLegacy", {
13
- enumerable: true,
14
- get: function () {
15
- return _getRoutesLegacy.getClientRoutes;
16
- }
23
+ module.exports = __toCommonJS(getClientRoutes_exports);
24
+ var import_getRoutes = require("./getRoutes");
25
+ var import_getRoutesLegacy = require("./getRoutesLegacy");
26
+ // Annotate the CommonJS export names for ESM import in node:
27
+ 0 && (module.exports = {
28
+ getClientRoutes,
29
+ getClientRoutesLegacy
17
30
  });
18
- var _getRoutes = require("./getRoutes");
19
- var _getRoutesLegacy = require("./getRoutesLegacy");
@@ -1,28 +1,58 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
21
+ mod
22
+ ));
23
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
+ var utils_exports = {};
25
+ __export(utils_exports, {
26
+ debug: () => debug,
27
+ findLayout: () => findLayout,
28
+ getRouteWeight: () => getRouteWeight,
29
+ shouldSkip: () => shouldSkip
5
30
  });
6
- exports.shouldSkip = exports.getRouteWeight = exports.findLayout = exports.debug = void 0;
7
- var _path = _interopRequireDefault(require("path"));
8
- var _utils = require("@modern-js/utils");
9
- var _constants = require("../constants");
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
- const debug = (0, _utils.createDebugger)('get-client-routes');
12
- exports.debug = debug;
13
- const findLayout = dir => (0, _utils.findExists)(_constants.JS_EXTENSIONS.map(ext => _path.default.resolve(dir, `${_constants.FILE_SYSTEM_ROUTES_LAYOUT}${ext}`)));
14
- exports.findLayout = findLayout;
15
- const getRouteWeight = route => route === '*' ? 999 : route.split(':').length - 1;
16
- exports.getRouteWeight = getRouteWeight;
17
- const shouldSkip = file => {
18
- // should not skip directory.
19
- if (_utils.fs.statSync(file).isDirectory()) {
31
+ module.exports = __toCommonJS(utils_exports);
32
+ var import_path = __toESM(require("path"));
33
+ var import_utils = require("@modern-js/utils");
34
+ var import_constants = require("../constants");
35
+ const debug = (0, import_utils.createDebugger)("get-client-routes");
36
+ const findLayout = (dir) => (0, import_utils.findExists)(
37
+ import_constants.JS_EXTENSIONS.map(
38
+ (ext) => import_path.default.resolve(dir, `${import_constants.FILE_SYSTEM_ROUTES_LAYOUT}${ext}`)
39
+ )
40
+ );
41
+ const getRouteWeight = (route) => route === "*" ? 999 : route.split(":").length - 1;
42
+ const shouldSkip = (file) => {
43
+ if (import_utils.fs.statSync(file).isDirectory()) {
20
44
  return false;
21
45
  }
22
- const ext = _path.default.extname(file);
23
- if (_constants.FILE_SYSTEM_ROUTES_IGNORED_REGEX.test(file) || !_constants.JS_EXTENSIONS.includes(ext) || _constants.FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT === _path.default.basename(file, ext)) {
46
+ const ext = import_path.default.extname(file);
47
+ if (import_constants.FILE_SYSTEM_ROUTES_IGNORED_REGEX.test(file) || !import_constants.JS_EXTENSIONS.includes(ext) || import_constants.FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT === import_path.default.basename(file, ext)) {
24
48
  return true;
25
49
  }
26
50
  return false;
27
51
  };
28
- exports.shouldSkip = shouldSkip;
52
+ // Annotate the CommonJS export names for ESM import in node:
53
+ 0 && (module.exports = {
54
+ debug,
55
+ findLayout,
56
+ getRouteWeight,
57
+ shouldSkip
58
+ });
@@ -1,29 +1,54 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
21
+ mod
22
+ ));
23
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
+ var getFileSystemEntry_exports = {};
25
+ __export(getFileSystemEntry_exports, {
26
+ getFileSystemEntry: () => getFileSystemEntry
5
27
  });
6
- exports.getFileSystemEntry = void 0;
7
- var _fs = _interopRequireDefault(require("fs"));
8
- var _path = _interopRequireDefault(require("path"));
9
- var _utils = require("@modern-js/utils");
10
- var _isDefaultExportFunction = require("./isDefaultExportFunction");
11
- var _constants = require("./constants");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
- const hasIndex = dir => (0, _utils.findExists)(_constants.JS_EXTENSIONS.map(ext => _path.default.resolve(dir, `${_constants.INDEX_FILE_NAME}${ext}`)));
14
- const hasApp = dir => (0, _utils.findExists)(_constants.JS_EXTENSIONS.map(ext => _path.default.resolve(dir, `${_constants.APP_FILE_NAME}${ext}`)));
15
- const hasPages = dir => _fs.default.existsSync(_path.default.join(dir, _constants.PAGES_DIR_NAME));
16
- const hasNestedRoutes = dir => _fs.default.existsSync(_path.default.join(dir, _constants.NESTED_ROUTES_DIR));
17
- const isBundleEntry = dir => hasApp(dir) || hasPages(dir) || hasIndex(dir) || hasNestedRoutes(dir);
18
- const scanDir = dirs => dirs.map(dir => {
28
+ module.exports = __toCommonJS(getFileSystemEntry_exports);
29
+ var import_fs = __toESM(require("fs"));
30
+ var import_path = __toESM(require("path"));
31
+ var import_utils = require("@modern-js/utils");
32
+ var import_isDefaultExportFunction = require("./isDefaultExportFunction");
33
+ var import_constants = require("./constants");
34
+ const hasIndex = (dir) => (0, import_utils.findExists)(
35
+ import_constants.JS_EXTENSIONS.map((ext) => import_path.default.resolve(dir, `${import_constants.INDEX_FILE_NAME}${ext}`))
36
+ );
37
+ const hasApp = (dir) => (0, import_utils.findExists)(
38
+ import_constants.JS_EXTENSIONS.map((ext) => import_path.default.resolve(dir, `${import_constants.APP_FILE_NAME}${ext}`))
39
+ );
40
+ const hasPages = (dir) => import_fs.default.existsSync(import_path.default.join(dir, import_constants.PAGES_DIR_NAME));
41
+ const hasNestedRoutes = (dir) => import_fs.default.existsSync(import_path.default.join(dir, import_constants.NESTED_ROUTES_DIR));
42
+ const isBundleEntry = (dir) => hasApp(dir) || hasPages(dir) || hasIndex(dir) || hasNestedRoutes(dir);
43
+ const scanDir = (dirs) => dirs.map((dir) => {
19
44
  const indexFile = hasIndex(dir);
20
- const customBootstrap = (0, _isDefaultExportFunction.isDefaultExportFunction)(indexFile) ? indexFile : false;
21
- const entryName = _path.default.basename(dir);
45
+ const customBootstrap = (0, import_isDefaultExportFunction.isDefaultExportFunction)(indexFile) ? indexFile : false;
46
+ const entryName = import_path.default.basename(dir);
22
47
  if (indexFile && !customBootstrap) {
23
48
  return {
24
49
  entryName,
25
50
  entry: indexFile,
26
- absoluteEntryDir: _path.default.resolve(dir),
51
+ absoluteEntryDir: import_path.default.resolve(dir),
27
52
  isAutoMount: false
28
53
  };
29
54
  }
@@ -31,9 +56,9 @@ const scanDir = dirs => dirs.map(dir => {
31
56
  if (isHasApp) {
32
57
  return {
33
58
  entryName,
34
- entry: _path.default.join(dir, _constants.APP_FILE_NAME),
59
+ entry: import_path.default.join(dir, import_constants.APP_FILE_NAME),
35
60
  isAutoMount: true,
36
- absoluteEntryDir: _path.default.resolve(dir),
61
+ absoluteEntryDir: import_path.default.resolve(dir),
37
62
  customBootstrap
38
63
  };
39
64
  }
@@ -42,42 +67,57 @@ const scanDir = dirs => dirs.map(dir => {
42
67
  if (isHasNestedRoutes || isHasPages) {
43
68
  const entrypoint = {
44
69
  entryName,
45
- entry: '',
70
+ entry: "",
46
71
  fileSystemRoutes: {
47
- globalApp: (0, _utils.findExists)(_constants.JS_EXTENSIONS.map(ext => _path.default.resolve(dir, `./${_constants.PAGES_DIR_NAME}/${_constants.FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT}${ext}`)))
72
+ globalApp: (0, import_utils.findExists)(
73
+ import_constants.JS_EXTENSIONS.map(
74
+ (ext) => import_path.default.resolve(
75
+ dir,
76
+ `./${import_constants.PAGES_DIR_NAME}/${import_constants.FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT}${ext}`
77
+ )
78
+ )
79
+ )
48
80
  },
49
81
  isAutoMount: true,
50
- absoluteEntryDir: _path.default.resolve(dir),
82
+ absoluteEntryDir: import_path.default.resolve(dir),
51
83
  customBootstrap
52
84
  };
53
85
  if (isHasPages) {
54
- entrypoint.entry = _path.default.join(dir, _constants.PAGES_DIR_NAME);
86
+ entrypoint.entry = import_path.default.join(dir, import_constants.PAGES_DIR_NAME);
87
+ entrypoint.pageRoutesEntry = entrypoint.entry;
55
88
  }
56
89
  if (isHasNestedRoutes) {
57
- entrypoint.nestedRoutesEntry = _path.default.join(dir, _constants.NESTED_ROUTES_DIR);
90
+ entrypoint.entry = import_path.default.join(dir, import_constants.NESTED_ROUTES_DIR);
91
+ entrypoint.nestedRoutesEntry = entrypoint.entry;
58
92
  }
59
93
  return entrypoint;
60
94
  }
61
95
  return {
62
96
  entryName,
63
97
  entry: indexFile,
64
- absoluteEntryDir: _path.default.resolve(dir),
98
+ absoluteEntryDir: import_path.default.resolve(dir),
65
99
  isAutoMount: false
66
100
  };
67
101
  });
68
102
  const getFileSystemEntry = (appContext, config) => {
103
+ const { appDirectory } = appContext;
69
104
  const {
70
- appDirectory
71
- } = appContext;
72
- const {
73
- source: {
74
- entriesDir
75
- }
105
+ source: { entriesDir, disableEntryDirs }
76
106
  } = config;
77
- const src = (0, _utils.ensureAbsolutePath)(appDirectory, entriesDir || '');
78
- if (_fs.default.existsSync(src)) {
79
- if (_fs.default.statSync(src).isDirectory()) {
80
- return scanDir(isBundleEntry(src) ? [src] : _fs.default.readdirSync(src).map(file => _path.default.join(src, file)).filter(file => _fs.default.statSync(file).isDirectory() && isBundleEntry(file)));
107
+ let disabledDirs = [];
108
+ if (disableEntryDirs && Array.isArray(disableEntryDirs)) {
109
+ disabledDirs = disableEntryDirs == null ? void 0 : disableEntryDirs.map(
110
+ (dir) => (0, import_utils.ensureAbsolutePath)(appDirectory, dir)
111
+ );
112
+ }
113
+ const src = (0, import_utils.ensureAbsolutePath)(appDirectory, entriesDir || "");
114
+ if (import_fs.default.existsSync(src)) {
115
+ if (import_fs.default.statSync(src).isDirectory()) {
116
+ return scanDir(
117
+ isBundleEntry(src) ? [src] : import_fs.default.readdirSync(src).map((file) => import_path.default.join(src, file)).filter(
118
+ (file) => import_fs.default.statSync(file).isDirectory() && isBundleEntry(file) && !disabledDirs.includes(file)
119
+ )
120
+ );
81
121
  } else {
82
122
  throw Error(`source.entriesDir accept a directory.`);
83
123
  }
@@ -85,4 +125,7 @@ const getFileSystemEntry = (appContext, config) => {
85
125
  throw Error(`src dir ${entriesDir} not found.`);
86
126
  }
87
127
  };
88
- exports.getFileSystemEntry = getFileSystemEntry;
128
+ // Annotate the CommonJS export names for ESM import in node:
129
+ 0 && (module.exports = {
130
+ getFileSystemEntry
131
+ });