@modern-js/server-core 2.53.0 → 2.54.1

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 (264) hide show
  1. package/dist/cjs/adapters/node/helper/index.js +37 -0
  2. package/dist/cjs/{base/adapters/node/middlewares/templates.js → adapters/node/helper/loadCache.js} +19 -33
  3. package/dist/cjs/{base/utils/serverConfig.js → adapters/node/helper/loadConfig.js} +26 -31
  4. package/dist/cjs/{base/adapters/node/loadServer.js → adapters/node/helper/loadEnv.js} +3 -3
  5. package/dist/cjs/{base/utils/debug.js → adapters/node/helper/loadPlugin.js} +16 -6
  6. package/dist/cjs/{base/adapters → adapters}/node/index.js +17 -16
  7. package/dist/cjs/{core → adapters/node/plugins}/index.js +8 -4
  8. package/dist/cjs/{base/middlewares/frameworkHeader.js → adapters/node/plugins/nodeServer.js} +16 -9
  9. package/dist/cjs/{base/adapters/node/middlewares/serverManifest.js → adapters/node/plugins/resource.js} +56 -5
  10. package/dist/cjs/{base/adapters/node/middlewares/serverStatic.js → adapters/node/plugins/static.js} +61 -7
  11. package/dist/cjs/{base/constants.js → constants.js} +3 -0
  12. package/dist/cjs/index.js +28 -6
  13. package/dist/cjs/pluginManager.js +106 -0
  14. package/dist/cjs/{base/middlewares → plugins}/customServer/index.js +13 -11
  15. package/dist/cjs/plugins/favicon.js +44 -0
  16. package/dist/cjs/{base/middlewares → plugins}/index.js +21 -15
  17. package/dist/cjs/{base/middlewares/logger.js → plugins/log.js} +23 -5
  18. package/dist/cjs/{base/middlewares → plugins}/monitor.js +30 -33
  19. package/dist/cjs/plugins/processedBy.js +44 -0
  20. package/dist/cjs/plugins/render/index.js +136 -0
  21. package/dist/cjs/{base/middlewares/renderHandler → plugins/render}/render.js +20 -5
  22. package/dist/cjs/plugins/render/ssrCache.js +178 -0
  23. package/dist/cjs/{base/middlewares/renderHandler → plugins/render}/ssrRender.js +13 -13
  24. package/dist/cjs/serverBase.js +178 -0
  25. package/dist/cjs/{base/adapters/node/middlewares → types}/index.js +10 -10
  26. package/dist/cjs/types/plugin.js +16 -0
  27. package/dist/cjs/{base/utils → utils}/index.js +3 -1
  28. package/dist/cjs/{base/middlewares/faviconFallback.js → utils/serverConfig.js} +12 -11
  29. package/dist/esm/adapters/node/helper/index.js +10 -0
  30. package/dist/esm/adapters/node/helper/loadCache.js +19 -0
  31. package/dist/esm/adapters/node/helper/loadConfig.js +32 -0
  32. package/dist/esm/adapters/node/helper/loadPlugin.js +17 -0
  33. package/dist/{esm-node/base → esm}/adapters/node/index.js +8 -8
  34. package/dist/esm/adapters/node/plugins/index.js +3 -0
  35. package/dist/esm/adapters/node/plugins/nodeServer.js +18 -0
  36. package/dist/esm/{base/adapters/node/middlewares/serverManifest.js → adapters/node/plugins/resource.js} +139 -1
  37. package/dist/esm/{base/adapters/node/middlewares/serverStatic.js → adapters/node/plugins/static.js} +108 -2
  38. package/dist/esm/{base/constants.js → constants.js} +2 -0
  39. package/dist/esm/index.js +15 -3
  40. package/dist/esm/pluginManager.js +140 -0
  41. package/dist/esm/{base/middlewares → plugins}/customServer/index.js +12 -11
  42. package/dist/esm/plugins/favicon.js +34 -0
  43. package/dist/esm/plugins/index.js +15 -0
  44. package/dist/esm/{base/middlewares/logger.js → plugins/log.js} +33 -2
  45. package/dist/esm/plugins/monitor.js +120 -0
  46. package/dist/esm/plugins/processedBy.js +42 -0
  47. package/dist/esm/plugins/render/index.js +229 -0
  48. package/dist/esm/{base/middlewares/renderHandler → plugins/render}/render.js +20 -7
  49. package/dist/esm/plugins/render/ssrCache.js +266 -0
  50. package/dist/esm/{base/middlewares/renderHandler → plugins/render}/ssrRender.js +26 -45
  51. package/dist/esm/serverBase.js +250 -0
  52. package/dist/esm/types/index.js +4 -0
  53. package/dist/esm/types/render.js +0 -0
  54. package/dist/esm/types/server.js +0 -0
  55. package/dist/esm/{base/utils → utils}/index.js +1 -0
  56. package/dist/esm/utils/serverConfig.js +13 -0
  57. package/dist/esm-node/adapters/node/helper/index.js +10 -0
  58. package/dist/esm-node/adapters/node/helper/loadCache.js +19 -0
  59. package/dist/esm-node/adapters/node/helper/loadConfig.js +31 -0
  60. package/dist/esm-node/adapters/node/helper/loadPlugin.js +15 -0
  61. package/dist/{esm/base → esm-node}/adapters/node/index.js +8 -8
  62. package/dist/esm-node/adapters/node/plugins/index.js +3 -0
  63. package/dist/esm-node/adapters/node/plugins/nodeServer.js +14 -0
  64. package/dist/esm-node/{base/adapters/node/middlewares/serverManifest.js → adapters/node/plugins/resource.js} +49 -1
  65. package/dist/esm-node/{base/adapters/node/middlewares/serverStatic.js → adapters/node/plugins/static.js} +54 -2
  66. package/dist/esm-node/{base/constants.js → constants.js} +2 -0
  67. package/dist/esm-node/index.js +15 -3
  68. package/dist/esm-node/pluginManager.js +82 -0
  69. package/dist/esm-node/{base/middlewares → plugins}/customServer/index.js +11 -10
  70. package/dist/esm-node/plugins/favicon.js +20 -0
  71. package/dist/esm-node/plugins/index.js +15 -0
  72. package/dist/esm-node/{base/middlewares/logger.js → plugins/log.js} +19 -1
  73. package/dist/esm-node/plugins/monitor.js +62 -0
  74. package/dist/esm-node/plugins/processedBy.js +20 -0
  75. package/dist/esm-node/plugins/render/index.js +111 -0
  76. package/dist/esm-node/{base/middlewares/renderHandler → plugins/render}/render.js +20 -5
  77. package/dist/esm-node/plugins/render/ssrCache.js +143 -0
  78. package/dist/esm-node/{base/middlewares/renderHandler → plugins/render}/ssrRender.js +14 -14
  79. package/dist/esm-node/serverBase.js +153 -0
  80. package/dist/esm-node/types/index.js +4 -0
  81. package/dist/esm-node/{base/utils → utils}/index.js +1 -0
  82. package/dist/esm-node/utils/serverConfig.js +11 -0
  83. package/dist/types/adapters/node/helper/index.d.ts +4 -0
  84. package/dist/types/adapters/node/helper/loadCache.d.ts +2 -0
  85. package/dist/types/adapters/node/helper/loadConfig.d.ts +2 -0
  86. package/dist/types/{base/adapters/node/loadServer.d.ts → adapters/node/helper/loadEnv.d.ts} +1 -1
  87. package/dist/types/adapters/node/helper/loadPlugin.d.ts +3 -0
  88. package/dist/types/{base/adapters → adapters}/node/hono.d.ts +1 -2
  89. package/dist/types/{base/adapters → adapters}/node/index.d.ts +2 -3
  90. package/dist/types/{base/adapters → adapters}/node/node.d.ts +1 -2
  91. package/dist/types/adapters/node/plugins/index.d.ts +3 -0
  92. package/dist/types/adapters/node/plugins/nodeServer.d.ts +4 -0
  93. package/dist/types/adapters/node/plugins/resource.d.ts +7 -0
  94. package/dist/types/adapters/node/plugins/static.d.ts +15 -0
  95. package/dist/types/{base/constants.d.ts → constants.d.ts} +1 -0
  96. package/dist/types/index.d.ts +9 -3
  97. package/dist/types/pluginManager.d.ts +31 -0
  98. package/dist/types/{base/middlewares → plugins}/customServer/base.d.ts +1 -1
  99. package/dist/types/{base/middlewares → plugins}/customServer/context.d.ts +1 -1
  100. package/dist/types/{base/middlewares → plugins}/customServer/index.d.ts +3 -3
  101. package/dist/types/{base/middlewares → plugins}/customServer/loader.d.ts +1 -1
  102. package/dist/types/plugins/favicon.d.ts +2 -0
  103. package/dist/types/plugins/index.d.ts +6 -0
  104. package/dist/types/plugins/log.d.ts +2 -0
  105. package/dist/types/plugins/monitor.d.ts +9 -0
  106. package/dist/types/plugins/processedBy.d.ts +2 -0
  107. package/dist/types/plugins/render/index.d.ts +16 -0
  108. package/dist/types/{base/middlewares/renderHandler → plugins/render}/render.d.ts +5 -4
  109. package/dist/types/plugins/render/ssrCache.d.ts +19 -0
  110. package/dist/types/{base/middlewares/renderHandler → plugins/render}/ssrRender.d.ts +3 -2
  111. package/dist/types/{base/serverBase.d.ts → serverBase.d.ts} +13 -30
  112. package/dist/types/types/config/index.d.ts +1 -0
  113. package/dist/types/types/config/server.d.ts +1 -0
  114. package/dist/types/types/index.d.ts +4 -0
  115. package/dist/types/types/plugin.d.ts +134 -0
  116. package/dist/types/{base/utils → utils}/index.d.ts +1 -0
  117. package/dist/types/utils/serverConfig.d.ts +8 -0
  118. package/package.json +15 -31
  119. package/dist/cjs/base/adapters/node/bff.js +0 -70
  120. package/dist/cjs/base/adapters/node/middlewares/mock.js +0 -113
  121. package/dist/cjs/base/adapters/node/middlewares/serverPublic.js +0 -70
  122. package/dist/cjs/base/index.js +0 -55
  123. package/dist/cjs/base/middlewares/renderHandler/index.js +0 -129
  124. package/dist/cjs/base/middlewares/renderHandler/ssrCache.js +0 -207
  125. package/dist/cjs/base/serverBase.js +0 -203
  126. package/dist/cjs/core/loadPlugins.js +0 -50
  127. package/dist/cjs/core/plugin.js +0 -84
  128. package/dist/esm/base/adapters/node/bff.js +0 -128
  129. package/dist/esm/base/adapters/node/middlewares/index.js +0 -4
  130. package/dist/esm/base/adapters/node/middlewares/mock.js +0 -198
  131. package/dist/esm/base/adapters/node/middlewares/serverPublic.js +0 -90
  132. package/dist/esm/base/adapters/node/middlewares/templates.js +0 -114
  133. package/dist/esm/base/index.js +0 -19
  134. package/dist/esm/base/middlewares/faviconFallback.js +0 -28
  135. package/dist/esm/base/middlewares/frameworkHeader.js +0 -27
  136. package/dist/esm/base/middlewares/index.js +0 -9
  137. package/dist/esm/base/middlewares/monitor.js +0 -157
  138. package/dist/esm/base/middlewares/renderHandler/index.js +0 -246
  139. package/dist/esm/base/middlewares/renderHandler/ssrCache.js +0 -317
  140. package/dist/esm/base/serverBase.js +0 -383
  141. package/dist/esm/base/utils/debug.js +0 -5
  142. package/dist/esm/base/utils/serverConfig.js +0 -58
  143. package/dist/esm/core/index.js +0 -1
  144. package/dist/esm/core/loadPlugins.js +0 -26
  145. package/dist/esm/core/plugin.js +0 -61
  146. package/dist/esm-node/base/adapters/node/bff.js +0 -46
  147. package/dist/esm-node/base/adapters/node/middlewares/index.js +0 -4
  148. package/dist/esm-node/base/adapters/node/middlewares/mock.js +0 -79
  149. package/dist/esm-node/base/adapters/node/middlewares/serverPublic.js +0 -36
  150. package/dist/esm-node/base/adapters/node/middlewares/templates.js +0 -32
  151. package/dist/esm-node/base/index.js +0 -19
  152. package/dist/esm-node/base/middlewares/faviconFallback.js +0 -10
  153. package/dist/esm-node/base/middlewares/frameworkHeader.js +0 -7
  154. package/dist/esm-node/base/middlewares/index.js +0 -9
  155. package/dist/esm-node/base/middlewares/monitor.js +0 -63
  156. package/dist/esm-node/base/middlewares/renderHandler/index.js +0 -94
  157. package/dist/esm-node/base/middlewares/renderHandler/ssrCache.js +0 -172
  158. package/dist/esm-node/base/serverBase.js +0 -168
  159. package/dist/esm-node/base/utils/debug.js +0 -5
  160. package/dist/esm-node/base/utils/serverConfig.js +0 -34
  161. package/dist/esm-node/core/index.js +0 -1
  162. package/dist/esm-node/core/loadPlugins.js +0 -26
  163. package/dist/esm-node/core/plugin.js +0 -53
  164. package/dist/types/base/adapters/node/bff.d.ts +0 -3
  165. package/dist/types/base/adapters/node/middlewares/index.d.ts +0 -4
  166. package/dist/types/base/adapters/node/middlewares/mock.d.ts +0 -5
  167. package/dist/types/base/adapters/node/middlewares/serverManifest.d.ts +0 -4
  168. package/dist/types/base/adapters/node/middlewares/serverPublic.d.ts +0 -7
  169. package/dist/types/base/adapters/node/middlewares/serverStatic.d.ts +0 -11
  170. package/dist/types/base/adapters/node/middlewares/templates.d.ts +0 -4
  171. package/dist/types/base/index.d.ts +0 -7
  172. package/dist/types/base/middlewares/faviconFallback.d.ts +0 -2
  173. package/dist/types/base/middlewares/frameworkHeader.d.ts +0 -2
  174. package/dist/types/base/middlewares/index.d.ts +0 -6
  175. package/dist/types/base/middlewares/logger.d.ts +0 -2
  176. package/dist/types/base/middlewares/monitor.d.ts +0 -6
  177. package/dist/types/base/middlewares/renderHandler/index.d.ts +0 -9
  178. package/dist/types/base/middlewares/renderHandler/ssrCache.d.ts +0 -28
  179. package/dist/types/base/utils/debug.d.ts +0 -1
  180. package/dist/types/base/utils/serverConfig.d.ts +0 -14
  181. package/dist/types/core/index.d.ts +0 -1
  182. package/dist/types/core/loadPlugins.d.ts +0 -3
  183. package/dist/types/core/plugin.d.ts +0 -251
  184. package/dist/cjs/{base/adapters → adapters}/node/hono.js +0 -0
  185. package/dist/cjs/{base/adapters → adapters}/node/node.js +0 -0
  186. package/dist/cjs/{base/adapters → adapters}/node/polyfills/index.js +0 -0
  187. package/dist/cjs/{base/adapters → adapters}/node/polyfills/install.js +0 -0
  188. package/dist/cjs/{base/adapters → adapters}/node/polyfills/stream.js +0 -0
  189. package/dist/cjs/{base/middlewares → plugins}/customServer/base.js +0 -0
  190. package/dist/cjs/{base/middlewares → plugins}/customServer/context.js +0 -0
  191. package/dist/cjs/{base/middlewares → plugins}/customServer/loader.js +0 -0
  192. package/dist/cjs/{base/middlewares → plugins}/customServer/routerApi.js +0 -0
  193. package/dist/cjs/{base/middlewares → plugins}/customServer/template.js +0 -0
  194. package/dist/cjs/{base/middlewares/renderHandler → plugins/render}/dataHandler.js +0 -0
  195. package/dist/cjs/{base/middlewares/renderHandler → plugins/render}/serverTiming.js +0 -0
  196. package/dist/cjs/{core → types}/render.js +0 -0
  197. package/dist/cjs/{core → types}/server.js +0 -0
  198. package/dist/cjs/{base/utils → utils}/entry.js +0 -0
  199. package/dist/cjs/{base/utils → utils}/env.js +0 -0
  200. package/dist/cjs/{base/utils → utils}/error.js +0 -0
  201. package/dist/cjs/{base/utils → utils}/middlewareCollector.js +0 -0
  202. package/dist/cjs/{base/utils → utils}/request.js +0 -0
  203. package/dist/cjs/{base/utils → utils}/transformStream.js +0 -0
  204. package/dist/cjs/{base/utils → utils}/warmup.js +0 -0
  205. package/dist/esm/{base/adapters/node/loadServer.js → adapters/node/helper/loadEnv.js} +0 -0
  206. package/dist/esm/{base/adapters → adapters}/node/hono.js +0 -0
  207. package/dist/esm/{base/adapters → adapters}/node/node.js +0 -0
  208. package/dist/esm/{base/adapters → adapters}/node/polyfills/index.js +0 -0
  209. package/dist/esm/{base/adapters → adapters}/node/polyfills/install.js +0 -0
  210. package/dist/esm/{base/adapters → adapters}/node/polyfills/stream.js +0 -0
  211. package/dist/esm/{base/middlewares → plugins}/customServer/base.js +0 -0
  212. package/dist/esm/{base/middlewares → plugins}/customServer/context.js +0 -0
  213. package/dist/esm/{base/middlewares → plugins}/customServer/loader.js +0 -0
  214. package/dist/esm/{base/middlewares → plugins}/customServer/routerApi.js +0 -0
  215. package/dist/esm/{base/middlewares → plugins}/customServer/template.js +0 -0
  216. package/dist/esm/{base/middlewares/renderHandler → plugins/render}/dataHandler.js +0 -0
  217. package/dist/esm/{base/middlewares/renderHandler → plugins/render}/serverTiming.js +0 -0
  218. package/dist/esm/{core/server.js → types/plugin.js} +0 -0
  219. package/dist/esm/{base/utils → utils}/entry.js +0 -0
  220. package/dist/esm/{base/utils → utils}/env.js +0 -0
  221. package/dist/esm/{base/utils → utils}/error.js +0 -0
  222. package/dist/esm/{base/utils → utils}/middlewareCollector.js +0 -0
  223. package/dist/esm/{base/utils → utils}/request.js +0 -0
  224. package/dist/esm/{base/utils → utils}/transformStream.js +0 -0
  225. package/dist/esm/{base/utils → utils}/warmup.js +0 -0
  226. package/dist/esm-node/{base/adapters/node/loadServer.js → adapters/node/helper/loadEnv.js} +0 -0
  227. package/dist/esm-node/{base/adapters → adapters}/node/hono.js +0 -0
  228. package/dist/esm-node/{base/adapters → adapters}/node/node.js +0 -0
  229. package/dist/esm-node/{base/adapters → adapters}/node/polyfills/index.js +0 -0
  230. package/dist/esm-node/{base/adapters → adapters}/node/polyfills/install.js +0 -0
  231. package/dist/esm-node/{base/adapters → adapters}/node/polyfills/stream.js +0 -0
  232. package/dist/esm-node/{base/middlewares → plugins}/customServer/base.js +0 -0
  233. package/dist/esm-node/{base/middlewares → plugins}/customServer/context.js +0 -0
  234. package/dist/esm-node/{base/middlewares → plugins}/customServer/loader.js +0 -0
  235. package/dist/esm-node/{base/middlewares → plugins}/customServer/routerApi.js +0 -0
  236. package/dist/esm-node/{base/middlewares → plugins}/customServer/template.js +0 -0
  237. package/dist/esm-node/{base/middlewares/renderHandler → plugins/render}/dataHandler.js +0 -0
  238. package/dist/esm-node/{base/middlewares/renderHandler → plugins/render}/serverTiming.js +0 -0
  239. package/dist/esm-node/{core/render.js → types/plugin.js} +0 -0
  240. package/dist/{esm/core → esm-node/types}/render.js +0 -0
  241. package/dist/esm-node/{core → types}/server.js +0 -0
  242. package/dist/esm-node/{base/utils → utils}/entry.js +0 -0
  243. package/dist/esm-node/{base/utils → utils}/env.js +0 -0
  244. package/dist/esm-node/{base/utils → utils}/error.js +0 -0
  245. package/dist/esm-node/{base/utils → utils}/middlewareCollector.js +0 -0
  246. package/dist/esm-node/{base/utils → utils}/request.js +0 -0
  247. package/dist/esm-node/{base/utils → utils}/transformStream.js +0 -0
  248. package/dist/esm-node/{base/utils → utils}/warmup.js +0 -0
  249. package/dist/types/{base/adapters → adapters}/node/polyfills/index.d.ts +0 -0
  250. package/dist/types/{base/adapters → adapters}/node/polyfills/install.d.ts +0 -0
  251. package/dist/types/{base/adapters → adapters}/node/polyfills/stream.d.ts +0 -0
  252. package/dist/types/{base/middlewares → plugins}/customServer/routerApi.d.ts +0 -0
  253. package/dist/types/{base/middlewares → plugins}/customServer/template.d.ts +0 -0
  254. package/dist/types/{base/middlewares/renderHandler → plugins/render}/dataHandler.d.ts +0 -0
  255. package/dist/types/{base/middlewares/renderHandler → plugins/render}/serverTiming.d.ts +0 -0
  256. package/dist/types/{core → types}/render.d.ts +0 -0
  257. package/dist/types/{core → types}/server.d.ts +1 -1
  258. /package/dist/types/{base/utils → utils}/entry.d.ts +0 -0
  259. /package/dist/types/{base/utils → utils}/env.d.ts +0 -0
  260. /package/dist/types/{base/utils → utils}/error.d.ts +0 -0
  261. /package/dist/types/{base/utils → utils}/middlewareCollector.d.ts +0 -0
  262. /package/dist/types/{base/utils → utils}/request.d.ts +0 -0
  263. /package/dist/types/{base/utils → utils}/transformStream.d.ts +0 -0
  264. /package/dist/types/{base/utils → utils}/warmup.d.ts +0 -0
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var pluginManager_exports = {};
20
+ __export(pluginManager_exports, {
21
+ PluginManager: () => PluginManager
22
+ });
23
+ module.exports = __toCommonJS(pluginManager_exports);
24
+ var import_class_private_field_get = require("@swc/helpers/_/_class_private_field_get");
25
+ var import_class_private_field_init = require("@swc/helpers/_/_class_private_field_init");
26
+ var import_class_private_field_set = require("@swc/helpers/_/_class_private_field_set");
27
+ var import_class_private_method_get = require("@swc/helpers/_/_class_private_method_get");
28
+ var import_class_private_method_init = require("@swc/helpers/_/_class_private_method_init");
29
+ var import_plugin = require("@modern-js/plugin");
30
+ var import_utils = require("./utils");
31
+ var _appContext = /* @__PURE__ */ new WeakMap(), _plugins = /* @__PURE__ */ new WeakMap(), _options = /* @__PURE__ */ new WeakMap(), _configContext = /* @__PURE__ */ new WeakMap(), _createCoreManager = /* @__PURE__ */ new WeakSet(), _initConfigContext = /* @__PURE__ */ new WeakSet();
32
+ class PluginManager {
33
+ async init() {
34
+ const coreManager = (0, import_class_private_method_get._)(this, _createCoreManager, createCoreManager).call(this);
35
+ const runner = await coreManager.init();
36
+ await (0, import_class_private_method_get._)(this, _initConfigContext, initConfigContext).call(this, runner);
37
+ return runner;
38
+ }
39
+ addPlugins(plugins) {
40
+ (0, import_class_private_field_get._)(this, _plugins).push(...plugins);
41
+ }
42
+ constructor(options) {
43
+ (0, import_class_private_method_init._)(this, _createCoreManager);
44
+ (0, import_class_private_method_init._)(this, _initConfigContext);
45
+ (0, import_class_private_field_init._)(this, _appContext, {
46
+ writable: true,
47
+ value: void 0
48
+ });
49
+ (0, import_class_private_field_init._)(this, _plugins, {
50
+ writable: true,
51
+ value: void 0
52
+ });
53
+ (0, import_class_private_field_init._)(this, _options, {
54
+ writable: true,
55
+ value: void 0
56
+ });
57
+ (0, import_class_private_field_init._)(this, _configContext, {
58
+ writable: true,
59
+ value: void 0
60
+ });
61
+ (0, import_class_private_field_set._)(this, _plugins, []);
62
+ (0, import_class_private_field_set._)(this, _configContext, (0, import_plugin.createContext)({}));
63
+ (0, import_class_private_field_set._)(this, _appContext, options.appContext);
64
+ (0, import_class_private_field_set._)(this, _configContext, (0, import_plugin.createContext)(options.serverConfig || {}));
65
+ (0, import_class_private_field_set._)(this, _options, options);
66
+ }
67
+ }
68
+ function createCoreManager() {
69
+ var _class_private_field_get_serverConfig;
70
+ const hooks = {
71
+ config: (0, import_plugin.createAsyncWaterfall)(),
72
+ prepare: (0, import_plugin.createAsyncWaterfall)(),
73
+ reset: (0, import_plugin.createParallelWorkflow)(),
74
+ prepareWebServer: (0, import_plugin.createAsyncPipeline)(),
75
+ fallback: (0, import_plugin.createParallelWorkflow)(),
76
+ prepareApiServer: (0, import_plugin.createAsyncPipeline)(),
77
+ afterMatch: (0, import_plugin.createAsyncPipeline)(),
78
+ afterRender: (0, import_plugin.createAsyncPipeline)(),
79
+ afterStreamingRender: (0, import_plugin.createAsyncPipeline)()
80
+ };
81
+ const pluginApi = {
82
+ useConfigContext: () => (0, import_class_private_field_get._)(this, _configContext).use().value,
83
+ useAppContext: () => (0, import_class_private_field_get._)(this, _appContext).use().value,
84
+ setAppContext: (c) => (0, import_class_private_field_get._)(this, _appContext).set(c)
85
+ };
86
+ const coreManager = (0, import_plugin.createAsyncManager)(hooks, pluginApi);
87
+ this.addPlugins(((_class_private_field_get_serverConfig = (0, import_class_private_field_get._)(this, _options).serverConfig) === null || _class_private_field_get_serverConfig === void 0 ? void 0 : _class_private_field_get_serverConfig.plugins) || []);
88
+ (0, import_class_private_field_get._)(this, _plugins).forEach((p) => {
89
+ const plugin = coreManager.createPlugin(p.setup, p);
90
+ coreManager.usePlugin(plugin);
91
+ });
92
+ return coreManager;
93
+ }
94
+ async function initConfigContext(runner) {
95
+ const { serverConfig, cliConfig } = (0, import_class_private_field_get._)(this, _options);
96
+ const mergedConfig = (0, import_utils.loadConfig)({
97
+ cliConfig,
98
+ serverConfig: serverConfig || {}
99
+ });
100
+ const finalServerConfig = await runner.config(mergedConfig);
101
+ (0, import_class_private_field_get._)(this, _configContext).set(finalServerConfig);
102
+ }
103
+ // Annotate the CommonJS export names for ESM import in node:
104
+ 0 && (module.exports = {
105
+ PluginManager
106
+ });
@@ -19,7 +19,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var customServer_exports = {};
20
20
  __export(customServer_exports, {
21
21
  CustomServer: () => CustomServer,
22
- getLoaderCtx: () => import_loader2.getLoaderCtx
22
+ getLoaderCtx: () => import_loader2.getLoaderCtx,
23
+ getServerMidFromUnstableMid: () => getServerMidFromUnstableMid
23
24
  });
24
25
  module.exports = __toCommonJS(customServer_exports);
25
26
  var import_time = require("@modern-js/runtime-utils/time");
@@ -102,7 +103,7 @@ class CustomServer {
102
103
  return;
103
104
  }
104
105
  if (Array.isArray(serverMiddleware)) {
105
- return getUnstableMiddlewares(serverMiddleware);
106
+ return getServerMidFromUnstableMid(serverMiddleware);
106
107
  }
107
108
  return async (c, next) => {
108
109
  var _c_env_node_res, _c_env_node, _c_env;
@@ -142,6 +143,14 @@ class CustomServer {
142
143
  });
143
144
  }
144
145
  }
146
+ function getServerMidFromUnstableMid(serverMiddleware) {
147
+ return serverMiddleware.map((middleware) => {
148
+ return async (c, next) => {
149
+ const context = createMiddlewareContextFromHono(c);
150
+ return middleware(context, next);
151
+ };
152
+ });
153
+ }
145
154
  function isRedirect(headers, code) {
146
155
  return [
147
156
  301,
@@ -150,14 +159,6 @@ function isRedirect(headers, code) {
150
159
  308
151
160
  ].includes(code || 0) || headers.get("Location");
152
161
  }
153
- function getUnstableMiddlewares(serverMiddleware) {
154
- return serverMiddleware.map((middleware) => {
155
- return async (c, next) => {
156
- const context = createMiddlewareContextFromHono(c);
157
- return middleware(context, next);
158
- };
159
- });
160
- }
161
162
  function createMiddlewareContextFromHono(c) {
162
163
  const loaderContext = (0, import_loader.getLoaderCtx)(c);
163
164
  return {
@@ -186,5 +187,6 @@ function createMiddlewareContextFromHono(c) {
186
187
  // Annotate the CommonJS export names for ESM import in node:
187
188
  0 && (module.exports = {
188
189
  CustomServer,
189
- getLoaderCtx
190
+ getLoaderCtx,
191
+ getServerMidFromUnstableMid
190
192
  });
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var favicon_exports = {};
20
+ __export(favicon_exports, {
21
+ faviconPlugin: () => faviconPlugin
22
+ });
23
+ module.exports = __toCommonJS(favicon_exports);
24
+ const faviconPlugin = () => ({
25
+ name: "@modern-js/plugin-favicon",
26
+ setup(api) {
27
+ return {
28
+ prepare() {
29
+ const { middlewares } = api.useAppContext();
30
+ middlewares.push({
31
+ name: "favicon-fallback",
32
+ path: "/favicon.ico",
33
+ handler: async (c, _next) => {
34
+ return c.body(null, 204);
35
+ }
36
+ });
37
+ }
38
+ };
39
+ }
40
+ });
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {
43
+ faviconPlugin
44
+ });
@@ -15,25 +15,31 @@ var __copyProps = (to, from, except, desc) => {
15
15
  }
16
16
  return to;
17
17
  };
18
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
- var middlewares_exports = {};
21
- __export(middlewares_exports, {
22
- getLoaderCtx: () => import_customServer.getLoaderCtx
19
+ var plugins_exports = {};
20
+ __export(plugins_exports, {
21
+ faviconPlugin: () => import_favicon.faviconPlugin,
22
+ getLoaderCtx: () => import_customServer.getLoaderCtx,
23
+ getRenderHandler: () => import_render.getRenderHandler,
24
+ logPlugin: () => import_log.logPlugin,
25
+ monitorPlugin: () => import_monitor.monitorPlugin,
26
+ processedByPlugin: () => import_processedBy.processedByPlugin,
27
+ renderPlugin: () => import_render.renderPlugin
23
28
  });
24
- module.exports = __toCommonJS(middlewares_exports);
25
- __reExport(middlewares_exports, require("./faviconFallback"), module.exports);
26
- __reExport(middlewares_exports, require("./monitor"), module.exports);
27
- __reExport(middlewares_exports, require("./renderHandler"), module.exports);
28
- __reExport(middlewares_exports, require("./logger"), module.exports);
29
- __reExport(middlewares_exports, require("./frameworkHeader"), module.exports);
29
+ module.exports = __toCommonJS(plugins_exports);
30
+ var import_render = require("./render");
31
+ var import_favicon = require("./favicon");
32
+ var import_processedBy = require("./processedBy");
30
33
  var import_customServer = require("./customServer");
34
+ var import_log = require("./log");
35
+ var import_monitor = require("./monitor");
31
36
  // Annotate the CommonJS export names for ESM import in node:
32
37
  0 && (module.exports = {
38
+ faviconPlugin,
33
39
  getLoaderCtx,
34
- ...require("./faviconFallback"),
35
- ...require("./monitor"),
36
- ...require("./renderHandler"),
37
- ...require("./logger"),
38
- ...require("./frameworkHeader")
40
+ getRenderHandler,
41
+ logPlugin,
42
+ monitorPlugin,
43
+ processedByPlugin,
44
+ renderPlugin
39
45
  });
@@ -16,11 +16,11 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var logger_exports = {};
20
- __export(logger_exports, {
21
- logHandler: () => logHandler
19
+ var log_exports = {};
20
+ __export(log_exports, {
21
+ logPlugin: () => logPlugin
22
22
  });
23
- module.exports = __toCommonJS(logger_exports);
23
+ module.exports = __toCommonJS(log_exports);
24
24
  var import_utils = require("../utils");
25
25
  var LogPrefix;
26
26
  (function(LogPrefix2) {
@@ -63,6 +63,10 @@ function logHandler() {
63
63
  return async function logger(c, next) {
64
64
  const { method } = c.req;
65
65
  const logger2 = c.get("logger");
66
+ if (!logger2) {
67
+ await next();
68
+ return;
69
+ }
66
70
  const path = (0, import_utils.getPathname)(c.req.raw);
67
71
  const logFn = logger2.debug;
68
72
  log(logFn, "<--", method, path);
@@ -71,7 +75,21 @@ function logHandler() {
71
75
  log(logFn, "-->", method, path, c.res.status, time(start));
72
76
  };
73
77
  }
78
+ const logPlugin = () => ({
79
+ name: "@modern-js/plugin-log",
80
+ setup(api) {
81
+ return {
82
+ prepare() {
83
+ const { middlewares } = api.useAppContext();
84
+ middlewares.push({
85
+ name: "print_log",
86
+ handler: logHandler()
87
+ });
88
+ }
89
+ };
90
+ }
91
+ });
74
92
  // Annotate the CommonJS export names for ESM import in node:
75
93
  0 && (module.exports = {
76
- logHandler
94
+ logPlugin
77
95
  });
@@ -19,9 +19,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var monitor_exports = {};
20
20
  __export(monitor_exports, {
21
21
  initReporter: () => initReporter,
22
- injectLogger: () => injectLogger,
23
- injectMetrics: () => injectMetrics,
24
- injectReporter: () => injectReporter
22
+ monitorPlugin: () => monitorPlugin
25
23
  });
26
24
  module.exports = __toCommonJS(monitor_exports);
27
25
  var import_time = require("@modern-js/runtime-utils/time");
@@ -38,15 +36,6 @@ const defaultReporter = {
38
36
  reportWarn() {
39
37
  }
40
38
  };
41
- function injectReporter() {
42
- return async (c, next) => {
43
- const reporter = c.get("reporter");
44
- if (!reporter) {
45
- c.set("reporter", defaultReporter);
46
- }
47
- await next();
48
- };
49
- }
50
39
  function initReporter(entryName) {
51
40
  return async (c, next) => {
52
41
  const reporter = c.get("reporter");
@@ -63,28 +52,36 @@ function initReporter(entryName) {
63
52
  reporter.reportTiming(import_constants.ServerReportTimings.SERVER_HANDLE_REQUEST, cost);
64
53
  };
65
54
  }
66
- function injectLogger(inputLogger) {
67
- return async (c, next) => {
68
- const logger = c.get("logger");
69
- if (!logger && inputLogger) {
70
- c.set("logger", inputLogger);
71
- }
72
- await next();
73
- };
74
- }
75
- function injectMetrics(inputMetrics) {
76
- return async (c, next) => {
77
- const metrics = c.get("metrics");
78
- if (!metrics) {
79
- c.set("metrics", inputMetrics);
80
- }
81
- await next();
82
- };
83
- }
55
+ const monitorPlugin = (options) => ({
56
+ name: "@modern-js/plugin-monitor",
57
+ setup(api) {
58
+ return {
59
+ prepare() {
60
+ const { middlewares } = api.useAppContext();
61
+ middlewares.push({
62
+ name: "monitor",
63
+ handler: async (c, next) => {
64
+ const logger = c.get("logger");
65
+ if (!logger && options.logger) {
66
+ c.set("logger", options.logger);
67
+ }
68
+ const metrics = c.get("metrics");
69
+ if (!metrics && options.metrics) {
70
+ c.set("metrics", metrics);
71
+ }
72
+ const reporter = c.get("reporter");
73
+ if (!reporter) {
74
+ c.set("reporter", reporter || defaultReporter);
75
+ }
76
+ await next();
77
+ }
78
+ });
79
+ }
80
+ };
81
+ }
82
+ });
84
83
  // Annotate the CommonJS export names for ESM import in node:
85
84
  0 && (module.exports = {
86
85
  initReporter,
87
- injectLogger,
88
- injectMetrics,
89
- injectReporter
86
+ monitorPlugin
90
87
  });
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var processedBy_exports = {};
20
+ __export(processedBy_exports, {
21
+ processedByPlugin: () => processedByPlugin
22
+ });
23
+ module.exports = __toCommonJS(processedBy_exports);
24
+ const processedByPlugin = () => ({
25
+ name: "@modern-js/plugin-processed",
26
+ setup(api) {
27
+ return {
28
+ prepare() {
29
+ const { middlewares } = api.useAppContext();
30
+ middlewares.push({
31
+ name: "processed-by",
32
+ handler: async (c, next) => {
33
+ await next();
34
+ c.header("X-Processed-By", "Modern.js");
35
+ }
36
+ });
37
+ }
38
+ };
39
+ }
40
+ });
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {
43
+ processedByPlugin
44
+ });
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var render_exports = {};
20
+ __export(render_exports, {
21
+ getRenderHandler: () => getRenderHandler,
22
+ renderPlugin: () => renderPlugin
23
+ });
24
+ module.exports = __toCommonJS(render_exports);
25
+ var import_constants = require("@modern-js/utils/universal/constants");
26
+ var import_monitor = require("../monitor");
27
+ var import_utils = require("../../utils");
28
+ var import_customServer = require("../customServer");
29
+ var import_render = require("./render");
30
+ const renderPlugin = (options = {}) => ({
31
+ name: "@modern-js/plugin-render",
32
+ setup(api) {
33
+ const { staticGenerate, cacheConfig } = options;
34
+ return {
35
+ async prepare() {
36
+ var _config_render, _config_render1;
37
+ const { middlewares, routes, metaName, distDirectory: pwd, serverBase } = api.useAppContext();
38
+ const runner = api.useHookRunners();
39
+ const config = api.useConfigContext();
40
+ if (!routes) {
41
+ return;
42
+ }
43
+ const customServer = new import_customServer.CustomServer(runner, serverBase, pwd);
44
+ const serverMiddleware = ((_config_render = config.render) === null || _config_render === void 0 ? void 0 : _config_render.middleware) && (0, import_customServer.getServerMidFromUnstableMid)(config.render.middleware);
45
+ const pageRoutes = getPageRoutes(routes);
46
+ const render = await getRenderHandler({
47
+ pwd,
48
+ routes,
49
+ config,
50
+ metaName,
51
+ cacheConfig: ((_config_render1 = config.render) === null || _config_render1 === void 0 ? void 0 : _config_render1.cache) || cacheConfig,
52
+ staticGenerate
53
+ });
54
+ for (const route of pageRoutes) {
55
+ const { urlPath: originUrlPath, entryName } = route;
56
+ const urlPath = originUrlPath.endsWith("/") ? `${originUrlPath}*` : `${originUrlPath}/*`;
57
+ middlewares.push({
58
+ name: "init-reporter",
59
+ handler: (0, import_monitor.initReporter)(entryName || import_constants.MAIN_ENTRY_NAME)
60
+ });
61
+ const customServerHookMiddleware = customServer.getHookMiddleware(entryName || "main", routes);
62
+ middlewares.push({
63
+ name: "custom-server-hook",
64
+ path: urlPath,
65
+ handler: customServerHookMiddleware
66
+ });
67
+ const customServerMiddleware = serverMiddleware || await customServer.getServerMiddleware();
68
+ customServerMiddleware && middlewares.push({
69
+ name: "custom-server-middleware",
70
+ path: urlPath,
71
+ handler: customServerMiddleware
72
+ });
73
+ middlewares.push({
74
+ name: `render`,
75
+ path: urlPath,
76
+ handler: createRenderHandler(render)
77
+ });
78
+ }
79
+ }
80
+ };
81
+ }
82
+ });
83
+ function getPageRoutes(routes) {
84
+ return routes.filter((route) => !route.isApi).sort(import_utils.sortRoutes);
85
+ }
86
+ function createRenderHandler(render) {
87
+ return async (c, _) => {
88
+ var _c_env_node;
89
+ const logger = c.get("logger");
90
+ const reporter = c.get("reporter");
91
+ const templates = c.get("templates") || {};
92
+ const serverManifest = c.get("serverManifest") || {};
93
+ const locals = c.get("locals");
94
+ const metrics = c.get("metrics");
95
+ const loaderContext = (0, import_customServer.getLoaderCtx)(c);
96
+ const request = c.req.raw;
97
+ const nodeReq = (_c_env_node = c.env.node) === null || _c_env_node === void 0 ? void 0 : _c_env_node.req;
98
+ const res = await render(request, {
99
+ logger,
100
+ nodeReq,
101
+ reporter,
102
+ templates,
103
+ metrics,
104
+ serverManifest,
105
+ loaderContext,
106
+ locals
107
+ });
108
+ const { body, status, headers } = res;
109
+ const headersData = {};
110
+ headers.forEach((v, k) => {
111
+ headersData[k] = v;
112
+ });
113
+ return c.body(body, status, headersData);
114
+ };
115
+ }
116
+ async function getRenderHandler({ pwd, routes, config, cacheConfig, metaName, staticGenerate }) {
117
+ var _config_server, _config_security;
118
+ const ssrConfig = (_config_server = config.server) === null || _config_server === void 0 ? void 0 : _config_server.ssr;
119
+ const forceCSR = typeof ssrConfig === "object" ? ssrConfig.forceCSR : false;
120
+ const render = (0, import_render.createRender)({
121
+ routes,
122
+ pwd,
123
+ // TODO: need static Genrate
124
+ staticGenerate,
125
+ cacheConfig,
126
+ forceCSR,
127
+ nonce: (_config_security = config.security) === null || _config_security === void 0 ? void 0 : _config_security.nonce,
128
+ metaName: metaName || "modern-js"
129
+ });
130
+ return render;
131
+ }
132
+ // Annotate the CommonJS export names for ESM import in node:
133
+ 0 && (module.exports = {
134
+ getRenderHandler,
135
+ renderPlugin
136
+ });
@@ -24,13 +24,26 @@ module.exports = __toCommonJS(render_exports);
24
24
  var import_universal = require("@modern-js/utils/universal");
25
25
  var import_trie_router = require("hono/router/trie-router");
26
26
  var import_utils = require("../../utils");
27
- var import_constants = require("../../../base/constants");
27
+ var import_constants = require("../../constants");
28
28
  var import_dataHandler = require("./dataHandler");
29
29
  var import_ssrRender = require("./ssrRender");
30
+ const DYNAMIC_ROUTE_REG = /\/:./;
30
31
  function getRouter(routes) {
31
- const sorted = routes.sort(import_utils.sortRoutes);
32
+ const dynamicRoutes = [];
33
+ const normalRoutes = [];
34
+ routes.forEach((route) => {
35
+ if (DYNAMIC_ROUTE_REG.test(route.urlPath)) {
36
+ dynamicRoutes.push(route);
37
+ } else {
38
+ normalRoutes.push(route);
39
+ }
40
+ });
41
+ const finalRoutes = [
42
+ ...normalRoutes.sort(import_utils.sortRoutes),
43
+ ...dynamicRoutes.sort(import_utils.sortRoutes)
44
+ ];
32
45
  const router = new import_trie_router.TrieRouter();
33
- for (const route of sorted) {
46
+ for (const route of finalRoutes) {
34
47
  const { urlPath: originUrlPath } = route;
35
48
  const urlPath = originUrlPath.endsWith("/") ? `${originUrlPath}*` : `${originUrlPath}/*`;
36
49
  router.add("*", urlPath, route);
@@ -43,7 +56,7 @@ function matchRoute(router, request) {
43
56
  const result = matched[0][0];
44
57
  return result || [];
45
58
  }
46
- async function createRender({ routes, pwd, metaName, staticGenerate, forceCSR, nonce, onFallback: onFallbackFn }) {
59
+ async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR, nonce, onFallback: onFallbackFn }) {
47
60
  const router = getRouter(routes);
48
61
  return async (req, { logger, nodeReq, reporter, templates, serverManifest, locals, metrics, loaderContext }) => {
49
62
  const [routeInfo, params] = matchRoute(router, req);
@@ -85,6 +98,7 @@ async function createRender({ routes, pwd, metaName, staticGenerate, forceCSR, n
85
98
  nonce,
86
99
  logger,
87
100
  nodeReq,
101
+ cacheConfig,
88
102
  reporter,
89
103
  serverRoutes: routes,
90
104
  params,
@@ -160,7 +174,8 @@ function csrRender(html) {
160
174
  return new Response(html, {
161
175
  status: 200,
162
176
  headers: new Headers({
163
- "content-type": "text/html; charset=UTF-8"
177
+ "content-type": "text/html; charset=UTF-8",
178
+ [import_constants.X_MODERNJS_RENDER]: "client"
164
179
  })
165
180
  });
166
181
  }