@modern-js/app-tools 2.14.0 → 2.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. package/CHANGELOG.md +74 -0
  2. package/dist/cjs/analyze/constants.js +37 -61
  3. package/dist/cjs/analyze/generateCode.js +102 -127
  4. package/dist/cjs/analyze/getBundleEntry.js +33 -66
  5. package/dist/cjs/analyze/getClientRoutes/getRoutes.js +61 -117
  6. package/dist/cjs/analyze/getClientRoutes/getRoutesLegacy.js +61 -115
  7. package/dist/cjs/analyze/getClientRoutes/index.js +15 -28
  8. package/dist/cjs/analyze/getClientRoutes/utils.js +24 -48
  9. package/dist/cjs/analyze/getFileSystemEntry.js +39 -79
  10. package/dist/cjs/analyze/getHtmlTemplate.js +88 -98
  11. package/dist/cjs/analyze/getServerRoutes.js +67 -110
  12. package/dist/cjs/analyze/index.js +265 -257
  13. package/dist/cjs/analyze/isDefaultExportFunction.js +66 -44
  14. package/dist/cjs/analyze/makeLegalIdentifier.js +7 -25
  15. package/dist/cjs/analyze/nestedRoutes.js +99 -104
  16. package/dist/cjs/analyze/templates.js +49 -110
  17. package/dist/cjs/analyze/utils.js +98 -102
  18. package/dist/cjs/builder/builder-rspack/adapterCopy.js +58 -100
  19. package/dist/cjs/builder/builder-rspack/index.js +14 -30
  20. package/dist/cjs/builder/builder-webpack/adapterModern.js +33 -50
  21. package/dist/cjs/builder/builder-webpack/createCopyPattern.js +16 -32
  22. package/dist/cjs/builder/builder-webpack/index.js +65 -46
  23. package/dist/cjs/builder/generator/createBuilderOptions.js +10 -26
  24. package/dist/cjs/builder/generator/createBuilderProviderConfig.js +11 -27
  25. package/dist/cjs/builder/generator/getBuilderTargets.js +13 -29
  26. package/dist/cjs/builder/generator/index.js +61 -55
  27. package/dist/cjs/builder/index.js +53 -43
  28. package/dist/cjs/builder/shared/builderPlugins/adapterBasic.js +13 -36
  29. package/dist/cjs/builder/shared/builderPlugins/adapterHtml.js +90 -90
  30. package/dist/cjs/builder/shared/builderPlugins/adapterSSR.js +108 -111
  31. package/dist/cjs/builder/shared/builderPlugins/index.js +20 -19
  32. package/dist/cjs/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +30 -30
  33. package/dist/cjs/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +32 -38
  34. package/dist/cjs/builder/shared/bundlerPlugins/RouterPlugin.js +86 -116
  35. package/dist/cjs/builder/shared/bundlerPlugins/index.js +20 -19
  36. package/dist/cjs/builder/shared/createCopyInfo.js +16 -42
  37. package/dist/cjs/builder/shared/index.js +20 -19
  38. package/dist/cjs/builder/shared/loaders/serverModuleLoader.js +8 -24
  39. package/dist/cjs/builder/shared/types.js +4 -15
  40. package/dist/cjs/commands/build.js +23 -40
  41. package/dist/cjs/commands/deploy.js +7 -25
  42. package/dist/cjs/commands/dev.js +38 -57
  43. package/dist/cjs/commands/index.js +20 -19
  44. package/dist/cjs/commands/inspect.js +10 -30
  45. package/dist/cjs/commands/serve.js +28 -66
  46. package/dist/cjs/config/default.js +34 -34
  47. package/dist/cjs/config/index.js +20 -19
  48. package/dist/cjs/config/initialize/index.js +11 -29
  49. package/dist/cjs/config/initialize/inits.js +103 -82
  50. package/dist/cjs/config/legacy/createHtmlConfig.js +8 -40
  51. package/dist/cjs/config/legacy/createOutputConfig.js +8 -51
  52. package/dist/cjs/config/legacy/createSourceConfig.js +8 -38
  53. package/dist/cjs/config/legacy/createToolsConfig.js +8 -43
  54. package/dist/cjs/config/legacy/index.js +22 -46
  55. package/dist/cjs/defineConfig.js +16 -31
  56. package/dist/cjs/exports/server.js +7 -25
  57. package/dist/cjs/hooks.js +33 -51
  58. package/dist/cjs/index.js +185 -166
  59. package/dist/cjs/initialize/index.js +84 -100
  60. package/dist/cjs/locale/en.js +13 -27
  61. package/dist/cjs/locale/index.js +18 -28
  62. package/dist/cjs/locale/zh.js +13 -27
  63. package/dist/cjs/schema/Schema.js +27 -31
  64. package/dist/cjs/schema/index.js +141 -71
  65. package/dist/cjs/schema/legacy.js +273 -96
  66. package/dist/cjs/types/config/deploy.js +4 -15
  67. package/dist/cjs/types/config/dev.js +4 -15
  68. package/dist/cjs/types/config/experiments.js +4 -15
  69. package/dist/cjs/types/config/html.js +4 -15
  70. package/dist/cjs/types/config/index.js +18 -17
  71. package/dist/cjs/types/config/output.js +4 -15
  72. package/dist/cjs/types/config/performance.js +4 -15
  73. package/dist/cjs/types/config/security.js +4 -15
  74. package/dist/cjs/types/config/source.js +4 -15
  75. package/dist/cjs/types/config/tools.js +4 -15
  76. package/dist/cjs/types/hooks.js +4 -15
  77. package/dist/cjs/types/index.js +20 -19
  78. package/dist/cjs/types/legacyConfig/deploy.js +4 -15
  79. package/dist/cjs/types/legacyConfig/dev.js +4 -15
  80. package/dist/cjs/types/legacyConfig/index.js +4 -15
  81. package/dist/cjs/types/legacyConfig/output.js +4 -15
  82. package/dist/cjs/types/legacyConfig/source.js +4 -15
  83. package/dist/cjs/types/legacyConfig/tools.js +4 -15
  84. package/dist/cjs/types/utils.js +4 -15
  85. package/dist/cjs/utils/config.js +74 -79
  86. package/dist/cjs/utils/createServer.js +16 -42
  87. package/dist/cjs/utils/env.js +7 -25
  88. package/dist/cjs/utils/generateWatchFiles.js +31 -52
  89. package/dist/cjs/utils/getSelectedEntries.js +13 -35
  90. package/dist/cjs/utils/getServerInternalPlugins.js +8 -29
  91. package/dist/cjs/utils/printInstructions.js +10 -28
  92. package/dist/cjs/utils/restart.js +13 -31
  93. package/dist/cjs/utils/routes.js +18 -39
  94. package/dist/cjs/utils/types.js +4 -15
  95. package/dist/esm/analyze/constants.js +40 -41
  96. package/dist/esm/analyze/generateCode.js +477 -455
  97. package/dist/esm/analyze/getBundleEntry.js +53 -54
  98. package/dist/esm/analyze/getClientRoutes/getRoutes.js +201 -202
  99. package/dist/esm/analyze/getClientRoutes/getRoutesLegacy.js +199 -200
  100. package/dist/esm/analyze/getClientRoutes/index.js +2 -3
  101. package/dist/esm/analyze/getClientRoutes/utils.js +15 -15
  102. package/dist/esm/analyze/getFileSystemEntry.js +86 -87
  103. package/dist/esm/analyze/getHtmlTemplate.js +289 -278
  104. package/dist/esm/analyze/getServerRoutes.js +203 -190
  105. package/dist/esm/analyze/index.js +679 -651
  106. package/dist/esm/analyze/isDefaultExportFunction.js +38 -39
  107. package/dist/esm/analyze/makeLegalIdentifier.js +8 -9
  108. package/dist/esm/analyze/nestedRoutes.js +400 -392
  109. package/dist/esm/analyze/templates.js +536 -509
  110. package/dist/esm/analyze/utils.js +357 -336
  111. package/dist/esm/builder/builder-rspack/adapterCopy.js +347 -330
  112. package/dist/esm/builder/builder-rspack/index.js +8 -9
  113. package/dist/esm/builder/builder-webpack/adapterModern.js +51 -43
  114. package/dist/esm/builder/builder-webpack/createCopyPattern.js +31 -32
  115. package/dist/esm/builder/builder-webpack/index.js +266 -249
  116. package/dist/esm/builder/generator/createBuilderOptions.js +37 -38
  117. package/dist/esm/builder/generator/createBuilderProviderConfig.js +62 -63
  118. package/dist/esm/builder/generator/getBuilderTargets.js +13 -14
  119. package/dist/esm/builder/generator/index.js +203 -196
  120. package/dist/esm/builder/index.js +183 -176
  121. package/dist/esm/builder/shared/builderPlugins/adapterBasic.js +90 -91
  122. package/dist/esm/builder/shared/builderPlugins/adapterHtml.js +300 -291
  123. package/dist/esm/builder/shared/builderPlugins/adapterSSR.js +337 -329
  124. package/dist/esm/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +108 -97
  125. package/dist/esm/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +66 -64
  126. package/dist/esm/builder/shared/bundlerPlugins/RouterPlugin.js +364 -337
  127. package/dist/esm/builder/shared/createCopyInfo.js +9 -10
  128. package/dist/esm/builder/shared/loaders/serverModuleLoader.js +2 -3
  129. package/dist/esm/builder/shared/types.js +1 -1
  130. package/dist/esm/commands/build.js +279 -272
  131. package/dist/esm/commands/deploy.js +150 -144
  132. package/dist/esm/commands/dev.js +296 -289
  133. package/dist/esm/commands/inspect.js +144 -138
  134. package/dist/esm/commands/serve.js +241 -235
  135. package/dist/esm/config/default.js +202 -203
  136. package/dist/esm/config/initialize/index.js +7 -8
  137. package/dist/esm/config/initialize/inits.js +189 -181
  138. package/dist/esm/config/legacy/createHtmlConfig.js +17 -18
  139. package/dist/esm/config/legacy/createOutputConfig.js +41 -42
  140. package/dist/esm/config/legacy/createSourceConfig.js +38 -39
  141. package/dist/esm/config/legacy/createToolsConfig.js +24 -25
  142. package/dist/esm/config/legacy/index.js +31 -32
  143. package/dist/esm/defineConfig.js +52 -53
  144. package/dist/esm/exports/server.js +1 -2
  145. package/dist/esm/hooks.js +26 -27
  146. package/dist/esm/index.js +685 -671
  147. package/dist/esm/initialize/index.js +276 -269
  148. package/dist/esm/locale/en.js +36 -37
  149. package/dist/esm/locale/index.js +2 -2
  150. package/dist/esm/locale/zh.js +36 -37
  151. package/dist/esm/schema/Schema.js +255 -244
  152. package/dist/esm/schema/index.js +165 -165
  153. package/dist/esm/schema/legacy.js +316 -317
  154. package/dist/esm/types/config/deploy.js +1 -1
  155. package/dist/esm/types/config/dev.js +1 -1
  156. package/dist/esm/types/config/experiments.js +1 -1
  157. package/dist/esm/types/config/html.js +1 -1
  158. package/dist/esm/types/config/output.js +1 -1
  159. package/dist/esm/types/config/performance.js +1 -1
  160. package/dist/esm/types/config/security.js +1 -1
  161. package/dist/esm/types/config/source.js +1 -1
  162. package/dist/esm/types/config/tools.js +1 -1
  163. package/dist/esm/types/hooks.js +1 -1
  164. package/dist/esm/types/legacyConfig/deploy.js +1 -1
  165. package/dist/esm/types/legacyConfig/dev.js +1 -1
  166. package/dist/esm/types/legacyConfig/index.js +1 -1
  167. package/dist/esm/types/legacyConfig/output.js +1 -1
  168. package/dist/esm/types/legacyConfig/source.js +1 -1
  169. package/dist/esm/types/legacyConfig/tools.js +1 -1
  170. package/dist/esm/types/utils.js +1 -1
  171. package/dist/esm/utils/config.js +285 -278
  172. package/dist/esm/utils/createServer.js +242 -234
  173. package/dist/esm/utils/env.js +11 -12
  174. package/dist/esm/utils/generateWatchFiles.js +205 -190
  175. package/dist/esm/utils/getSelectedEntries.js +180 -173
  176. package/dist/esm/utils/getServerInternalPlugins.js +197 -191
  177. package/dist/esm/utils/printInstructions.js +147 -141
  178. package/dist/esm/utils/restart.js +179 -173
  179. package/dist/esm/utils/routes.js +146 -139
  180. package/dist/esm/utils/types.js +1 -1
  181. package/dist/esm-node/analyze/constants.js +31 -46
  182. package/dist/esm-node/analyze/generateCode.js +28 -94
  183. package/dist/esm-node/analyze/getBundleEntry.js +8 -27
  184. package/dist/esm-node/analyze/getClientRoutes/getRoutes.js +24 -65
  185. package/dist/esm-node/analyze/getClientRoutes/getRoutesLegacy.js +24 -63
  186. package/dist/esm-node/analyze/getClientRoutes/index.js +2 -6
  187. package/dist/esm-node/analyze/getClientRoutes/utils.js +5 -19
  188. package/dist/esm-node/analyze/getFileSystemEntry.js +10 -37
  189. package/dist/esm-node/analyze/getHtmlTemplate.js +29 -59
  190. package/dist/esm-node/analyze/getServerRoutes.js +43 -75
  191. package/dist/esm-node/analyze/index.js +208 -230
  192. package/dist/esm-node/analyze/isDefaultExportFunction.js +7 -5
  193. package/dist/esm-node/analyze/makeLegalIdentifier.js +1 -4
  194. package/dist/esm-node/analyze/nestedRoutes.js +23 -43
  195. package/dist/esm-node/analyze/templates.js +22 -69
  196. package/dist/esm-node/analyze/utils.js +66 -60
  197. package/dist/esm-node/builder/builder-rspack/adapterCopy.js +40 -62
  198. package/dist/esm-node/builder/builder-rspack/index.js +4 -5
  199. package/dist/esm-node/builder/builder-webpack/adapterModern.js +24 -26
  200. package/dist/esm-node/builder/builder-webpack/createCopyPattern.js +3 -10
  201. package/dist/esm-node/builder/builder-webpack/index.js +13 -11
  202. package/dist/esm-node/builder/generator/createBuilderOptions.js +4 -5
  203. package/dist/esm-node/builder/generator/createBuilderProviderConfig.js +5 -6
  204. package/dist/esm-node/builder/generator/getBuilderTargets.js +5 -11
  205. package/dist/esm-node/builder/generator/index.js +7 -16
  206. package/dist/esm-node/builder/index.js +2 -7
  207. package/dist/esm-node/builder/shared/builderPlugins/adapterBasic.js +2 -6
  208. package/dist/esm-node/builder/shared/builderPlugins/adapterHtml.js +34 -60
  209. package/dist/esm-node/builder/shared/builderPlugins/adapterSSR.js +54 -74
  210. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlAsyncChunkPlugin.js +23 -8
  211. package/dist/esm-node/builder/shared/bundlerPlugins/HtmlBottomTemplate.js +25 -16
  212. package/dist/esm-node/builder/shared/bundlerPlugins/RouterPlugin.js +66 -76
  213. package/dist/esm-node/builder/shared/createCopyInfo.js +2 -8
  214. package/dist/esm-node/builder/shared/loaders/serverModuleLoader.js +1 -4
  215. package/dist/esm-node/builder/shared/types.js +1 -0
  216. package/dist/esm-node/commands/build.js +7 -9
  217. package/dist/esm-node/commands/deploy.js +1 -4
  218. package/dist/esm-node/commands/dev.js +19 -27
  219. package/dist/esm-node/commands/inspect.js +3 -8
  220. package/dist/esm-node/commands/serve.js +7 -25
  221. package/dist/esm-node/config/default.js +20 -11
  222. package/dist/esm-node/config/initialize/index.js +1 -4
  223. package/dist/esm-node/config/initialize/inits.js +48 -54
  224. package/dist/esm-node/config/legacy/createHtmlConfig.js +2 -19
  225. package/dist/esm-node/config/legacy/createOutputConfig.js +2 -30
  226. package/dist/esm-node/config/legacy/createSourceConfig.js +2 -17
  227. package/dist/esm-node/config/legacy/createToolsConfig.js +2 -22
  228. package/dist/esm-node/config/legacy/index.js +3 -18
  229. package/dist/esm-node/defineConfig.js +7 -13
  230. package/dist/esm-node/exports/server.js +1 -4
  231. package/dist/esm-node/hooks.js +2 -9
  232. package/dist/esm-node/index.js +95 -120
  233. package/dist/esm-node/initialize/index.js +74 -87
  234. package/dist/esm-node/locale/en.js +7 -6
  235. package/dist/esm-node/locale/index.js +5 -5
  236. package/dist/esm-node/locale/zh.js +7 -6
  237. package/dist/esm-node/schema/Schema.js +19 -8
  238. package/dist/esm-node/schema/index.js +121 -36
  239. package/dist/esm-node/schema/legacy.js +262 -72
  240. package/dist/esm-node/types/config/deploy.js +1 -0
  241. package/dist/esm-node/types/config/dev.js +1 -0
  242. package/dist/esm-node/types/config/experiments.js +1 -0
  243. package/dist/esm-node/types/config/html.js +1 -0
  244. package/dist/esm-node/types/config/output.js +1 -0
  245. package/dist/esm-node/types/config/performance.js +1 -0
  246. package/dist/esm-node/types/config/security.js +1 -0
  247. package/dist/esm-node/types/config/source.js +1 -0
  248. package/dist/esm-node/types/config/tools.js +1 -0
  249. package/dist/esm-node/types/hooks.js +1 -0
  250. package/dist/esm-node/types/legacyConfig/deploy.js +1 -0
  251. package/dist/esm-node/types/legacyConfig/dev.js +1 -0
  252. package/dist/esm-node/types/legacyConfig/index.js +1 -0
  253. package/dist/esm-node/types/legacyConfig/output.js +1 -0
  254. package/dist/esm-node/types/legacyConfig/source.js +1 -0
  255. package/dist/esm-node/types/legacyConfig/tools.js +1 -0
  256. package/dist/esm-node/types/utils.js +1 -0
  257. package/dist/esm-node/utils/config.js +16 -47
  258. package/dist/esm-node/utils/createServer.js +5 -12
  259. package/dist/esm-node/utils/env.js +1 -4
  260. package/dist/esm-node/utils/generateWatchFiles.js +13 -20
  261. package/dist/esm-node/utils/getSelectedEntries.js +2 -9
  262. package/dist/esm-node/utils/getServerInternalPlugins.js +2 -8
  263. package/dist/esm-node/utils/printInstructions.js +1 -4
  264. package/dist/esm-node/utils/restart.js +2 -11
  265. package/dist/esm-node/utils/routes.js +4 -4
  266. package/dist/esm-node/utils/types.js +1 -0
  267. package/dist/types/index.d.ts +2 -2
  268. package/lib/types.d.ts +1 -0
  269. package/package.json +29 -25
@@ -1,58 +1,35 @@
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
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var getFileSystemEntry_exports = {};
29
- __export(getFileSystemEntry_exports, {
30
- getFileSystemEntry: () => getFileSystemEntry
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
31
4
  });
32
- module.exports = __toCommonJS(getFileSystemEntry_exports);
33
- var import_fs = __toESM(require("fs"));
34
- var import_path = __toESM(require("path"));
35
- var import_utils = require("@modern-js/utils");
36
- var import_isDefaultExportFunction = require("./isDefaultExportFunction");
37
- var import_constants = require("./constants");
38
- const hasIndex = (dir) => (0, import_utils.findExists)(
39
- import_constants.JS_EXTENSIONS.map((ext) => import_path.default.resolve(dir, `${import_constants.INDEX_FILE_NAME}${ext}`))
40
- );
41
- const hasApp = (dir) => (0, import_utils.findExists)(
42
- import_constants.JS_EXTENSIONS.map((ext) => import_path.default.resolve(dir, `${import_constants.APP_FILE_NAME}${ext}`))
43
- );
44
- const hasPages = (dir) => import_fs.default.existsSync(import_path.default.join(dir, import_constants.PAGES_DIR_NAME));
45
- const hasNestedRoutes = (dir) => import_fs.default.existsSync(import_path.default.join(dir, import_constants.NESTED_ROUTES_DIR));
5
+ Object.defineProperty(exports, "getFileSystemEntry", {
6
+ enumerable: true,
7
+ get: () => getFileSystemEntry
8
+ });
9
+ const _fs = /* @__PURE__ */ _interop_require_default(require("fs"));
10
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
11
+ const _utils = require("@modern-js/utils");
12
+ const _isDefaultExportFunction = require("./isDefaultExportFunction");
13
+ const _constants = require("./constants");
14
+ function _interop_require_default(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ const hasIndex = (dir) => (0, _utils.findExists)(_constants.JS_EXTENSIONS.map((ext) => _path.default.resolve(dir, `${_constants.INDEX_FILE_NAME}${ext}`)));
20
+ const hasApp = (dir) => (0, _utils.findExists)(_constants.JS_EXTENSIONS.map((ext) => _path.default.resolve(dir, `${_constants.APP_FILE_NAME}${ext}`)));
21
+ const hasPages = (dir) => _fs.default.existsSync(_path.default.join(dir, _constants.PAGES_DIR_NAME));
22
+ const hasNestedRoutes = (dir) => _fs.default.existsSync(_path.default.join(dir, _constants.NESTED_ROUTES_DIR));
46
23
  const isBundleEntry = (dir) => hasApp(dir) || hasPages(dir) || hasIndex(dir) || hasNestedRoutes(dir);
47
24
  const scanDir = (dirs) => dirs.map((dir) => {
48
25
  const indexFile = hasIndex(dir);
49
- const customBootstrap = (0, import_isDefaultExportFunction.isDefaultExportFunction)(indexFile) ? indexFile : false;
50
- const entryName = import_path.default.basename(dir);
26
+ const customBootstrap = (0, _isDefaultExportFunction.isDefaultExportFunction)(indexFile) ? indexFile : false;
27
+ const entryName = _path.default.basename(dir);
51
28
  if (indexFile && !customBootstrap) {
52
29
  return {
53
30
  entryName,
54
31
  entry: indexFile,
55
- absoluteEntryDir: import_path.default.resolve(dir),
32
+ absoluteEntryDir: _path.default.resolve(dir),
56
33
  isAutoMount: false
57
34
  };
58
35
  }
@@ -60,9 +37,9 @@ const scanDir = (dirs) => dirs.map((dir) => {
60
37
  if (isHasApp) {
61
38
  return {
62
39
  entryName,
63
- entry: import_path.default.join(dir, import_constants.APP_FILE_NAME),
40
+ entry: _path.default.join(dir, _constants.APP_FILE_NAME),
64
41
  isAutoMount: true,
65
- absoluteEntryDir: import_path.default.resolve(dir),
42
+ absoluteEntryDir: _path.default.resolve(dir),
66
43
  customBootstrap
67
44
  };
68
45
  }
@@ -73,25 +50,18 @@ const scanDir = (dirs) => dirs.map((dir) => {
73
50
  entryName,
74
51
  entry: "",
75
52
  fileSystemRoutes: {
76
- globalApp: (0, import_utils.findExists)(
77
- import_constants.JS_EXTENSIONS.map(
78
- (ext) => import_path.default.resolve(
79
- dir,
80
- `./${import_constants.PAGES_DIR_NAME}/${import_constants.FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT}${ext}`
81
- )
82
- )
83
- )
53
+ globalApp: (0, _utils.findExists)(_constants.JS_EXTENSIONS.map((ext) => _path.default.resolve(dir, `./${_constants.PAGES_DIR_NAME}/${_constants.FILE_SYSTEM_ROUTES_GLOBAL_LAYOUT}${ext}`)))
84
54
  },
85
55
  isAutoMount: true,
86
- absoluteEntryDir: import_path.default.resolve(dir),
56
+ absoluteEntryDir: _path.default.resolve(dir),
87
57
  customBootstrap
88
58
  };
89
59
  if (isHasPages) {
90
- entrypoint.entry = import_path.default.join(dir, import_constants.PAGES_DIR_NAME);
60
+ entrypoint.entry = _path.default.join(dir, _constants.PAGES_DIR_NAME);
91
61
  entrypoint.pageRoutesEntry = entrypoint.entry;
92
62
  }
93
63
  if (isHasNestedRoutes) {
94
- entrypoint.entry = import_path.default.join(dir, import_constants.NESTED_ROUTES_DIR);
64
+ entrypoint.entry = _path.default.join(dir, _constants.NESTED_ROUTES_DIR);
95
65
  entrypoint.nestedRoutesEntry = entrypoint.entry;
96
66
  }
97
67
  return entrypoint;
@@ -99,29 +69,23 @@ const scanDir = (dirs) => dirs.map((dir) => {
99
69
  return {
100
70
  entryName,
101
71
  entry: indexFile,
102
- absoluteEntryDir: import_path.default.resolve(dir),
72
+ absoluteEntryDir: _path.default.resolve(dir),
103
73
  isAutoMount: false
104
74
  };
105
75
  });
106
76
  const getFileSystemEntry = (appContext, config) => {
107
77
  const { appDirectory } = appContext;
108
- const {
109
- source: { entriesDir, disableEntryDirs }
110
- } = config;
78
+ const { source: { entriesDir, disableEntryDirs } } = config;
111
79
  let disabledDirs = [];
112
80
  if (disableEntryDirs && Array.isArray(disableEntryDirs)) {
113
- disabledDirs = disableEntryDirs == null ? void 0 : disableEntryDirs.map(
114
- (dir) => (0, import_utils.ensureAbsolutePath)(appDirectory, dir)
115
- );
81
+ disabledDirs = disableEntryDirs === null || disableEntryDirs === void 0 ? void 0 : disableEntryDirs.map((dir) => (0, _utils.ensureAbsolutePath)(appDirectory, dir));
116
82
  }
117
- const src = (0, import_utils.ensureAbsolutePath)(appDirectory, entriesDir || "");
118
- if (import_fs.default.existsSync(src)) {
119
- if (import_fs.default.statSync(src).isDirectory()) {
120
- return scanDir(
121
- isBundleEntry(src) ? [src] : import_fs.default.readdirSync(src).map((file) => import_path.default.join(src, file)).filter(
122
- (file) => import_fs.default.statSync(file).isDirectory() && isBundleEntry(file) && !disabledDirs.includes(file)
123
- )
124
- );
83
+ const src = (0, _utils.ensureAbsolutePath)(appDirectory, entriesDir || "");
84
+ if (_fs.default.existsSync(src)) {
85
+ if (_fs.default.statSync(src).isDirectory()) {
86
+ return scanDir(isBundleEntry(src) ? [
87
+ src
88
+ ] : _fs.default.readdirSync(src).map((file) => _path.default.join(src, file)).filter((file) => _fs.default.statSync(file).isDirectory() && isBundleEntry(file) && !disabledDirs.includes(file)));
125
89
  } else {
126
90
  throw Error(`source.entriesDir accept a directory.`);
127
91
  }
@@ -129,7 +93,3 @@ const getFileSystemEntry = (appContext, config) => {
129
93
  throw Error(`src dir ${entriesDir} not found.`);
130
94
  }
131
95
  };
132
- // Annotate the CommonJS export names for ESM import in node:
133
- 0 && (module.exports = {
134
- getFileSystemEntry
135
- });
@@ -1,85 +1,88 @@
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
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var getHtmlTemplate_exports = {};
29
- __export(getHtmlTemplate_exports, {
30
- getHtmlTemplate: () => getHtmlTemplate
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
31
4
  });
32
- module.exports = __toCommonJS(getHtmlTemplate_exports);
33
- var import_path = __toESM(require("path"));
34
- var import_utils = require("@modern-js/utils");
35
- var import_constants = require("./constants");
36
- var templates = __toESM(require("./templates"));
37
- var PartialPosition = /* @__PURE__ */ ((PartialPosition2) => {
5
+ Object.defineProperty(exports, "getHtmlTemplate", {
6
+ enumerable: true,
7
+ get: () => getHtmlTemplate
8
+ });
9
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
10
+ const _utils = require("@modern-js/utils");
11
+ const _constants = require("./constants");
12
+ const _templates = /* @__PURE__ */ _interop_require_wildcard(require("./templates"));
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ function _getRequireWildcardCache(nodeInterop) {
19
+ if (typeof WeakMap !== "function")
20
+ return null;
21
+ var cacheBabelInterop = /* @__PURE__ */ new WeakMap();
22
+ var cacheNodeInterop = /* @__PURE__ */ new WeakMap();
23
+ return (_getRequireWildcardCache = function(nodeInterop2) {
24
+ return nodeInterop2 ? cacheNodeInterop : cacheBabelInterop;
25
+ })(nodeInterop);
26
+ }
27
+ function _interop_require_wildcard(obj, nodeInterop) {
28
+ if (!nodeInterop && obj && obj.__esModule) {
29
+ return obj;
30
+ }
31
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
32
+ return {
33
+ default: obj
34
+ };
35
+ }
36
+ var cache = _getRequireWildcardCache(nodeInterop);
37
+ if (cache && cache.has(obj)) {
38
+ return cache.get(obj);
39
+ }
40
+ var newObj = {};
41
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
42
+ for (var key in obj) {
43
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
44
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
45
+ if (desc && (desc.get || desc.set)) {
46
+ Object.defineProperty(newObj, key, desc);
47
+ } else {
48
+ newObj[key] = obj[key];
49
+ }
50
+ }
51
+ }
52
+ newObj.default = obj;
53
+ if (cache) {
54
+ cache.set(obj, newObj);
55
+ }
56
+ return newObj;
57
+ }
58
+ var PartialPosition;
59
+ (function(PartialPosition2) {
38
60
  PartialPosition2["TOP"] = "top";
39
61
  PartialPosition2["HEAD"] = "head";
40
62
  PartialPosition2["BODY"] = "body";
41
63
  PartialPosition2["BOTTOM"] = "bottom";
42
64
  PartialPosition2["INDEX"] = "index";
43
- return PartialPosition2;
44
- })(PartialPosition || {});
65
+ })(PartialPosition || (PartialPosition = {}));
45
66
  const findPartials = (dir, entryName, position) => {
46
- if (import_utils.fs.existsSync(dir)) {
47
- const base = (0, import_utils.findExists)(
48
- import_constants.HTML_PARTIALS_EXTENSIONS.map(
49
- (ext) => import_path.default.resolve(dir, `${position}${ext}`)
50
- )
51
- );
52
- const file = entryName ? (0, import_utils.findExists)(
53
- import_constants.HTML_PARTIALS_EXTENSIONS.map(
54
- (ext) => import_path.default.resolve(dir, entryName, `${position}${ext}`)
55
- )
56
- ) || base : base;
57
- return file ? { file, content: import_utils.fs.readFileSync(file, "utf8") } : null;
67
+ if (_utils.fs.existsSync(dir)) {
68
+ const base = (0, _utils.findExists)(_constants.HTML_PARTIALS_EXTENSIONS.map((ext) => _path.default.resolve(dir, `${position}${ext}`)));
69
+ const file = entryName ? (0, _utils.findExists)(_constants.HTML_PARTIALS_EXTENSIONS.map((ext) => _path.default.resolve(dir, entryName, `${position}${ext}`))) || base : base;
70
+ return file ? {
71
+ file,
72
+ content: _utils.fs.readFileSync(file, "utf8")
73
+ } : null;
58
74
  }
59
75
  return null;
60
76
  };
61
- const getHtmlTemplate = async (entrypoints, api, {
62
- appContext,
63
- config
64
- }) => {
77
+ const getHtmlTemplate = async (entrypoints, api, { appContext, config }) => {
65
78
  const { appDirectory, internalDirectory } = appContext;
66
- const {
67
- source: { configDir }
68
- } = config;
69
- const htmlDir = import_path.default.resolve(
70
- appDirectory,
71
- configDir || "",
72
- import_constants.HTML_PARTIALS_FOLDER
73
- );
79
+ const { source: { configDir } } = config;
80
+ const htmlDir = _path.default.resolve(appDirectory, configDir || "", _constants.HTML_PARTIALS_FOLDER);
74
81
  const htmlTemplates = {};
75
82
  for (const entrypoint of entrypoints) {
76
83
  const { entryName } = entrypoint;
77
- const name = entrypoints.length === 1 && entryName === import_utils.MAIN_ENTRY_NAME ? "" : entryName;
78
- const customIndexTemplate = findPartials(
79
- htmlDir,
80
- name,
81
- "index" /* INDEX */
82
- );
84
+ const name = entrypoints.length === 1 && entryName === _utils.MAIN_ENTRY_NAME ? "" : entryName;
85
+ const customIndexTemplate = findPartials(htmlDir, name, PartialPosition.INDEX);
83
86
  if (customIndexTemplate) {
84
87
  htmlTemplates[entryName] = customIndexTemplate.file;
85
88
  } else {
@@ -87,34 +90,25 @@ const getHtmlTemplate = async (entrypoints, api, {
87
90
  const { partials } = await hookRunners.htmlPartials({
88
91
  entrypoint,
89
92
  partials: [
90
- "top" /* TOP */,
91
- "head" /* HEAD */,
92
- "body" /* BODY */
93
- ].reduce(
94
- (previous, position) => {
95
- const found = findPartials(htmlDir, name, position);
96
- previous[position] = found ? [found.content] : [];
97
- return previous;
98
- },
99
- {
100
- top: [],
101
- head: [],
102
- body: []
103
- }
104
- )
93
+ PartialPosition.TOP,
94
+ PartialPosition.HEAD,
95
+ PartialPosition.BODY
96
+ ].reduce((previous, position) => {
97
+ const found = findPartials(htmlDir, name, position);
98
+ previous[position] = found ? [
99
+ found.content
100
+ ] : [];
101
+ return previous;
102
+ }, {
103
+ top: [],
104
+ head: [],
105
+ body: []
106
+ })
105
107
  });
106
- const templatePath = import_path.default.resolve(
107
- internalDirectory,
108
- entryName,
109
- "index.html"
110
- );
111
- import_utils.fs.outputFileSync(templatePath, templates.html(partials), "utf8");
108
+ const templatePath = _path.default.resolve(internalDirectory, entryName, "index.html");
109
+ _utils.fs.outputFileSync(templatePath, _templates.html(partials), "utf8");
112
110
  htmlTemplates[entryName] = templatePath;
113
- const bottomTemplate = findPartials(
114
- htmlDir,
115
- name,
116
- "bottom" /* BOTTOM */
117
- );
111
+ const bottomTemplate = findPartials(htmlDir, name, PartialPosition.BOTTOM);
118
112
  if (bottomTemplate) {
119
113
  htmlTemplates[`__${entryName}-bottom__`] = bottomTemplate.content;
120
114
  }
@@ -122,7 +116,3 @@ const getHtmlTemplate = async (entrypoints, api, {
122
116
  }
123
117
  return htmlTemplates;
124
118
  };
125
- // Annotate the CommonJS export names for ESM import in node:
126
- 0 && (module.exports = {
127
- getHtmlTemplate
128
- });
@@ -1,52 +1,33 @@
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
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var getServerRoutes_exports = {};
29
- __export(getServerRoutes_exports, {
30
- getServerRoutes: () => getServerRoutes
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "getServerRoutes", {
6
+ enumerable: true,
7
+ get: () => getServerRoutes
31
8
  });
32
- module.exports = __toCommonJS(getServerRoutes_exports);
33
- var import_path = __toESM(require("path"));
34
- var import_fs = __toESM(require("fs"));
35
- var import_utils = require("@modern-js/utils");
36
- var import_utils2 = require("./utils");
9
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
10
+ const _fs = /* @__PURE__ */ _interop_require_default(require("fs"));
11
+ const _utils = require("@modern-js/utils");
12
+ const _utils1 = require("./utils");
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
37
18
  const applyBaseUrl = (baseUrl, routes) => {
38
19
  if (baseUrl) {
39
20
  if (Array.isArray(baseUrl)) {
40
- return baseUrl.reduce(
41
- (previous, current) => [...previous, ...applyBaseUrl(current, routes)],
42
- []
43
- );
21
+ return baseUrl.reduce((previous, current) => [
22
+ ...previous,
23
+ ...applyBaseUrl(current, routes)
24
+ ], []);
44
25
  } else {
45
26
  return routes.map((route) => {
46
- const urlPath = (0, import_utils.urlJoin)(baseUrl, route.urlPath);
27
+ const urlPath = (0, _utils.urlJoin)(baseUrl, route.urlPath);
47
28
  return {
48
29
  ...route,
49
- urlPath: urlPath === "/" ? urlPath : (0, import_utils.removeTailSlash)(urlPath)
30
+ urlPath: urlPath === "/" ? urlPath : (0, _utils.removeTailSlash)(urlPath)
50
31
  };
51
32
  });
52
33
  }
@@ -56,12 +37,12 @@ const applyBaseUrl = (baseUrl, routes) => {
56
37
  const applyRouteOptions = (original, routeOptions) => {
57
38
  const { route, disableSpa } = routeOptions;
58
39
  original.isSPA = !disableSpa;
59
- !original.isSPA && (original.entryPath = import_path.default.dirname(original.entryPath));
40
+ !original.isSPA && (original.entryPath = _path.default.dirname(original.entryPath));
60
41
  let routes;
61
42
  if (route) {
62
43
  if (Array.isArray(route)) {
63
44
  routes = route.map((url) => {
64
- if ((0, import_utils.isPlainObject)(url)) {
45
+ if ((0, _utils.isPlainObject)(url)) {
65
46
  const { path: urlPath, ...other } = url;
66
47
  return {
67
48
  ...original,
@@ -75,7 +56,7 @@ const applyRouteOptions = (original, routeOptions) => {
75
56
  };
76
57
  }
77
58
  });
78
- } else if ((0, import_utils.isPlainObject)(route)) {
59
+ } else if ((0, _utils.isPlainObject)(route)) {
79
60
  const { path: urlPath, ...other } = route;
80
61
  routes = [
81
62
  {
@@ -93,89 +74,65 @@ const applyRouteOptions = (original, routeOptions) => {
93
74
  ];
94
75
  }
95
76
  } else {
96
- routes = [original];
77
+ routes = [
78
+ original
79
+ ];
97
80
  }
98
81
  return routes;
99
82
  };
100
83
  const collectHtmlRoutes = (entrypoints, appContext, config) => {
101
- var _a;
102
- const {
103
- html: { disableHtmlFolder },
104
- output: { distPath: { html: htmlPath } = {} },
105
- server: { baseUrl, routes, ssr, ssrByEntries },
106
- deploy
107
- } = config;
84
+ var _deploy_worker;
85
+ const { html: { disableHtmlFolder }, output: { distPath: { html: htmlPath } = {} }, server: { baseUrl, routes, ssr, ssrByEntries }, deploy } = config;
108
86
  const { packageName } = appContext;
109
- const workerSSR = (_a = deploy == null ? void 0 : deploy.worker) == null ? void 0 : _a.ssr;
110
- let htmlRoutes = entrypoints.reduce(
111
- (previous, { entryName }) => {
112
- const entryOptions = (0, import_utils.getEntryOptions)(
113
- entryName,
114
- ssr,
115
- ssrByEntries,
116
- packageName
117
- );
118
- const isSSR = Boolean(entryOptions);
119
- const isWorker = Boolean(workerSSR);
120
- const { resHeaders } = (routes == null ? void 0 : routes[entryName]) || {};
121
- let route = {
122
- urlPath: `/${entryName === import_utils.MAIN_ENTRY_NAME ? "" : entryName}`,
123
- entryName,
124
- entryPath: (0, import_utils.removeLeadingSlash)(
125
- import_path.default.posix.normalize(
126
- `${htmlPath}/${entryName}${disableHtmlFolder ? ".html" : "/index.html"}`
127
- )
128
- ),
129
- isSPA: true,
130
- isSSR,
131
- responseHeaders: resHeaders,
132
- worker: isWorker ? `${import_utils.SERVER_WORKER_BUNDLE_DIRECTORY}/${entryName}.js` : void 0,
133
- bundle: isSSR ? `${import_utils.SERVER_BUNDLE_DIRECTORY}/${entryName}.js` : void 0
87
+ const workerSSR = deploy === null || deploy === void 0 ? void 0 : (_deploy_worker = deploy.worker) === null || _deploy_worker === void 0 ? void 0 : _deploy_worker.ssr;
88
+ let htmlRoutes = entrypoints.reduce((previous, { entryName }) => {
89
+ const entryOptions = (0, _utils.getEntryOptions)(entryName, ssr, ssrByEntries, packageName);
90
+ const isSSR = Boolean(entryOptions);
91
+ const isWorker = Boolean(workerSSR);
92
+ const { resHeaders } = (routes === null || routes === void 0 ? void 0 : routes[entryName]) || {};
93
+ let route = {
94
+ urlPath: `/${entryName === _utils.MAIN_ENTRY_NAME ? "" : entryName}`,
95
+ entryName,
96
+ entryPath: (0, _utils.removeLeadingSlash)(_path.default.posix.normalize(`${htmlPath}/${entryName}${disableHtmlFolder ? ".html" : "/index.html"}`)),
97
+ isSPA: true,
98
+ isSSR,
99
+ responseHeaders: resHeaders,
100
+ worker: isWorker ? `${_utils.SERVER_WORKER_BUNDLE_DIRECTORY}/${entryName}.js` : void 0,
101
+ bundle: isSSR ? `${_utils.SERVER_BUNDLE_DIRECTORY}/${entryName}.js` : void 0
102
+ };
103
+ if (routes === null || routes === void 0 ? void 0 : routes.hasOwnProperty(entryName)) {
104
+ const routeOptions = (0, _utils.isPlainObject)(routes[entryName]) ? routes[entryName] : {
105
+ route: routes[entryName]
134
106
  };
135
- if (routes == null ? void 0 : routes.hasOwnProperty(entryName)) {
136
- const routeOptions = (0, import_utils.isPlainObject)(routes[entryName]) ? routes[entryName] : { route: routes[entryName] };
137
- route = applyRouteOptions(route, routeOptions);
138
- }
139
- return Array.isArray(route) ? [...previous, ...route] : [...previous, route];
140
- },
141
- []
142
- );
107
+ route = applyRouteOptions(route, routeOptions);
108
+ }
109
+ return Array.isArray(route) ? [
110
+ ...previous,
111
+ ...route
112
+ ] : [
113
+ ...previous,
114
+ route
115
+ ];
116
+ }, []);
143
117
  htmlRoutes = applyBaseUrl(baseUrl, htmlRoutes);
144
118
  return htmlRoutes;
145
119
  };
146
120
  const collectStaticRoutes = (appContext, config) => {
147
121
  const { appDirectory } = appContext;
148
- const {
149
- source: { configDir },
150
- server: { publicRoutes = {} }
151
- } = config;
152
- const publicFolder = import_path.default.resolve(appDirectory, configDir || "", "public");
153
- return import_fs.default.existsSync(publicFolder) ? (0, import_utils2.walkDirectory)(publicFolder).map((filePath) => {
154
- const urlPath = `${(0, import_utils.urlJoin)(
155
- toPosix(filePath).slice(toPosix(publicFolder).length)
156
- )}`;
122
+ const { source: { configDir }, server: { publicRoutes = {} } } = config;
123
+ const publicFolder = _path.default.resolve(appDirectory, configDir || "", "public");
124
+ return _fs.default.existsSync(publicFolder) ? (0, _utils1.walkDirectory)(publicFolder).map((filePath) => {
125
+ const urlPath = `${(0, _utils.urlJoin)(toPosix(filePath).slice(toPosix(publicFolder).length))}`;
157
126
  return {
158
- urlPath: publicRoutes[(0, import_utils.removeLeadingSlash)(urlPath)] || urlPath,
127
+ urlPath: publicRoutes[(0, _utils.removeLeadingSlash)(urlPath)] || urlPath,
159
128
  isSPA: true,
160
129
  isSSR: false,
161
- entryPath: toPosix(
162
- import_path.default.relative(
163
- import_path.default.resolve(appDirectory, configDir || ""),
164
- filePath
165
- )
166
- )
130
+ entryPath: toPosix(_path.default.relative(_path.default.resolve(appDirectory, configDir || ""), filePath))
167
131
  };
168
132
  }) : [];
169
133
  };
170
- const getServerRoutes = (entrypoints, {
171
- appContext,
172
- config
173
- }) => [
134
+ const getServerRoutes = (entrypoints, { appContext, config }) => [
174
135
  ...collectHtmlRoutes(entrypoints, appContext, config),
175
136
  ...collectStaticRoutes(appContext, config)
176
137
  ];
177
- const toPosix = (pathStr) => pathStr.split(import_path.default.sep).join(import_path.default.posix.sep);
178
- // Annotate the CommonJS export names for ESM import in node:
179
- 0 && (module.exports = {
180
- getServerRoutes
181
- });
138
+ const toPosix = (pathStr) => pathStr.split(_path.default.sep).join(_path.default.posix.sep);