@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,178 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var ssrCache_exports = {};
30
+ __export(ssrCache_exports, {
31
+ getCacheResult: () => getCacheResult,
32
+ matchCacheControl: () => matchCacheControl
33
+ });
34
+ module.exports = __toCommonJS(ssrCache_exports);
35
+ var import_storer = require("@modern-js/runtime-utils/storer");
36
+ var import_utils = require("../../utils");
37
+ async function processCache(key, render, ssrContext, ttl, container, status) {
38
+ const renderResult = await render(ssrContext);
39
+ if (!renderResult) {
40
+ return {
41
+ data: ""
42
+ };
43
+ } else if (typeof renderResult === "string") {
44
+ const current = Date.now();
45
+ const cache = {
46
+ val: renderResult,
47
+ cursor: current
48
+ };
49
+ await container.set(key, JSON.stringify(cache), {
50
+ ttl
51
+ });
52
+ return {
53
+ data: renderResult,
54
+ status
55
+ };
56
+ } else {
57
+ const { Readable } = await Promise.resolve().then(() => __toESM(require("stream"))).catch((_) => ({
58
+ Readable: void 0
59
+ }));
60
+ const runtimeEnv = (0, import_utils.getRuntimeEnv)();
61
+ const streamModule = "../../adapters/node/polyfills/stream";
62
+ const { createReadableStreamFromReadable } = runtimeEnv === "node" ? await Promise.resolve().then(() => __toESM(require(streamModule))).catch((_) => ({
63
+ createReadableStreamFromReadable: void 0
64
+ })) : {
65
+ createReadableStreamFromReadable: void 0
66
+ };
67
+ const body = (
68
+ // TODO: remove node:stream, move it to ssr entry.
69
+ Readable && renderResult instanceof Readable ? createReadableStreamFromReadable === null || createReadableStreamFromReadable === void 0 ? void 0 : createReadableStreamFromReadable(renderResult) : renderResult
70
+ );
71
+ let html = "";
72
+ const stream = (0, import_utils.createTransformStream)((chunk) => {
73
+ html += chunk;
74
+ return chunk;
75
+ });
76
+ const reader = body.getReader();
77
+ const writer = stream.writable.getWriter();
78
+ const push = () => {
79
+ reader.read().then(({ done, value }) => {
80
+ if (done) {
81
+ const current = Date.now();
82
+ const cache = {
83
+ val: html,
84
+ cursor: current
85
+ };
86
+ container.set(key, JSON.stringify(cache), {
87
+ ttl
88
+ });
89
+ writer.close();
90
+ return;
91
+ }
92
+ writer.write(value);
93
+ push();
94
+ });
95
+ };
96
+ push();
97
+ return {
98
+ data: stream.readable,
99
+ status
100
+ };
101
+ }
102
+ }
103
+ const CACHE_NAMESPACE = "__ssr__cache";
104
+ const storage = (0, import_storer.createMemoryStorage)(CACHE_NAMESPACE);
105
+ function computedKey(req, cacheControl) {
106
+ const pathname = (0, import_utils.getPathname)(req);
107
+ const { customKey } = cacheControl;
108
+ const defaultKey = pathname.replace(/.+\/+$/, "");
109
+ if (customKey) {
110
+ if (typeof customKey === "string") {
111
+ return customKey;
112
+ } else {
113
+ return customKey(defaultKey);
114
+ }
115
+ } else {
116
+ return defaultKey;
117
+ }
118
+ }
119
+ function matchCacheControl(cacheOption, req) {
120
+ if (!cacheOption || !req) {
121
+ return void 0;
122
+ } else if (isCacheControl(cacheOption)) {
123
+ return cacheOption;
124
+ } else if (isCacheOptionProvider(cacheOption)) {
125
+ return cacheOption(req);
126
+ } else {
127
+ const url = req.url;
128
+ const options = Object.entries(cacheOption);
129
+ for (const [key, option] of options) {
130
+ if (key === "*" || new RegExp(key).test(url)) {
131
+ if (typeof option === "function") {
132
+ return option(req);
133
+ } else {
134
+ return option;
135
+ }
136
+ }
137
+ }
138
+ return void 0;
139
+ }
140
+ function isCacheOptionProvider(option) {
141
+ return typeof option === "function";
142
+ }
143
+ function isCacheControl(option) {
144
+ return typeof option === "object" && option !== null && "maxAge" in option;
145
+ }
146
+ }
147
+ async function getCacheResult(request, options) {
148
+ const { cacheControl, render, ssrContext, container = storage } = options;
149
+ const key = computedKey(request, cacheControl);
150
+ const value = await container.get(key);
151
+ const { maxAge, staleWhileRevalidate } = cacheControl;
152
+ const ttl = maxAge + staleWhileRevalidate;
153
+ if (value) {
154
+ const cache = JSON.parse(value);
155
+ const interval = Date.now() - cache.cursor;
156
+ if (interval <= maxAge) {
157
+ return {
158
+ data: cache.val,
159
+ status: "hit"
160
+ };
161
+ } else if (interval <= staleWhileRevalidate + maxAge) {
162
+ processCache(key, render, ssrContext, ttl, container);
163
+ return {
164
+ data: cache.val,
165
+ status: "stale"
166
+ };
167
+ } else {
168
+ return processCache(key, render, ssrContext, ttl, container, "expired");
169
+ }
170
+ } else {
171
+ return processCache(key, render, ssrContext, ttl, container, "miss");
172
+ }
173
+ }
174
+ // Annotate the CommonJS export names for ESM import in node:
175
+ 0 && (module.exports = {
176
+ getCacheResult,
177
+ matchCacheControl
178
+ });
@@ -37,6 +37,7 @@ var isbot = __toESM(require("isbot"));
37
37
  var import_utils = require("../../utils");
38
38
  var import_constants2 = require("../../constants");
39
39
  var import_serverTiming = require("./serverTiming");
40
+ var import_ssrCache = require("./ssrCache");
40
41
  const defaultReporter = {
41
42
  init() {
42
43
  },
@@ -49,7 +50,7 @@ const defaultReporter = {
49
50
  reportWarn() {
50
51
  }
51
52
  };
52
- async function ssrRender(request, { routeInfo, html, staticGenerate, nonce, metaName, reporter, logger, nodeReq, serverManifest, locals, params, metrics, loaderContext }) {
53
+ async function ssrRender(request, { routeInfo, html, staticGenerate, nonce, metaName, reporter, logger, nodeReq, serverManifest, locals, params, metrics, loaderContext, cacheConfig }) {
53
54
  var _serverManifest_renderBundles;
54
55
  const { entryName } = routeInfo;
55
56
  const loadableStats = serverManifest.loadableStats || {};
@@ -111,18 +112,16 @@ async function ssrRender(request, { routeInfo, html, staticGenerate, nonce, meta
111
112
  let ssrResult;
112
113
  let cacheStatus;
113
114
  const render = renderBundle[import_constants.SERVER_RENDER_FUNCTION_NAME];
114
- if (runtimeEnv === "node") {
115
- const cacheModuleName = "./ssrCache";
116
- const { ssrCache } = await Promise.resolve().then(() => __toESM(require(cacheModuleName)));
117
- const incomingMessage = nodeReq ? nodeReq : new IncomingMessgeProxy(request);
118
- const cacheControl = await ssrCache.matchCacheControl(incomingMessage);
119
- if (cacheControl) {
120
- const { data: data2, status } = await ssrCache.getCache(request, cacheControl, render, ssrContext);
121
- ssrResult = data2;
122
- cacheStatus = status;
123
- } else {
124
- ssrResult = await render(ssrContext);
125
- }
115
+ const cacheControl = await (0, import_ssrCache.matchCacheControl)(cacheConfig === null || cacheConfig === void 0 ? void 0 : cacheConfig.strategy, nodeReq || new IncomingMessgeProxy(request));
116
+ if (cacheControl) {
117
+ const { data: data2, status } = await (0, import_ssrCache.getCacheResult)(request, {
118
+ cacheControl,
119
+ container: cacheConfig === null || cacheConfig === void 0 ? void 0 : cacheConfig.container,
120
+ render,
121
+ ssrContext
122
+ });
123
+ ssrResult = data2;
124
+ cacheStatus = status;
126
125
  } else {
127
126
  ssrResult = await render(ssrContext);
128
127
  }
@@ -130,6 +129,7 @@ async function ssrRender(request, { routeInfo, html, staticGenerate, nonce, meta
130
129
  if (cacheStatus) {
131
130
  responseProxy.headers.set(import_constants2.X_RENDER_CACHE, cacheStatus);
132
131
  }
132
+ responseProxy.headers.set(import_constants2.X_MODERNJS_RENDER, "server");
133
133
  if (redirection.url) {
134
134
  const { headers: headers2 } = responseProxy;
135
135
  headers2.set("Location", redirection.url);
@@ -0,0 +1,178 @@
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 serverBase_exports = {};
20
+ __export(serverBase_exports, {
21
+ ServerBase: () => ServerBase,
22
+ createServerBase: () => createServerBase
23
+ });
24
+ module.exports = __toCommonJS(serverBase_exports);
25
+ var import_class_private_method_get = require("@swc/helpers/_/_class_private_method_get");
26
+ var import_class_private_method_init = require("@swc/helpers/_/_class_private_method_init");
27
+ var import_hono = require("hono");
28
+ var import_plugin = require("@modern-js/plugin");
29
+ var import_pluginManager = require("./pluginManager");
30
+ var _getAppContext = /* @__PURE__ */ new WeakSet(), _applyMiddlewares = /* @__PURE__ */ new WeakSet();
31
+ class ServerBase {
32
+ /**
33
+ * 初始化顺序
34
+ * - 初始化 pluginManager;
35
+ * - 执行 runner.prepare;
36
+ * - 应用 middlewares
37
+ */
38
+ async init() {
39
+ const runner = await this.pluginManager.init();
40
+ this.runner = runner;
41
+ await runner.prepare();
42
+ (0, import_class_private_method_get._)(this, _applyMiddlewares, applyMiddlewares).call(this);
43
+ return this;
44
+ }
45
+ addPlugins(plugins) {
46
+ this.pluginManager.addPlugins(plugins);
47
+ }
48
+ get all() {
49
+ return this.app.all.bind(this.app);
50
+ }
51
+ get use() {
52
+ return this.app.use.bind(this.app);
53
+ }
54
+ get get() {
55
+ return this.app.get.bind(this.app);
56
+ }
57
+ get post() {
58
+ return this.app.post.bind(this.app);
59
+ }
60
+ get put() {
61
+ return this.app.put.bind(this.app);
62
+ }
63
+ get delete() {
64
+ return this.app.delete.bind(this.app);
65
+ }
66
+ get patch() {
67
+ return this.app.patch.bind(this.app);
68
+ }
69
+ get handle() {
70
+ return this.app.fetch.bind(this.app);
71
+ }
72
+ get request() {
73
+ return this.app.request.bind(this.app);
74
+ }
75
+ get notFound() {
76
+ return this.app.notFound.bind(this.app);
77
+ }
78
+ get onError() {
79
+ return this.app.onError.bind(this.app);
80
+ }
81
+ constructor(options) {
82
+ (0, import_class_private_method_init._)(this, _getAppContext);
83
+ (0, import_class_private_method_init._)(this, _applyMiddlewares);
84
+ this.options = options;
85
+ const { config, serverConfig } = options;
86
+ const appContext = (0, import_class_private_method_get._)(this, _getAppContext, getAppContext).call(this);
87
+ this.appContext = appContext;
88
+ this.pluginManager = new import_pluginManager.PluginManager({
89
+ cliConfig: config,
90
+ appContext,
91
+ serverConfig
92
+ });
93
+ this.app = new import_hono.Hono();
94
+ }
95
+ }
96
+ function getAppContext() {
97
+ const { appContext: context, pwd, routes, metaName } = this.options;
98
+ const appContext = {
99
+ routes,
100
+ middlewares: [],
101
+ appDirectory: (context === null || context === void 0 ? void 0 : context.appDirectory) || "",
102
+ apiDirectory: context === null || context === void 0 ? void 0 : context.apiDirectory,
103
+ lambdaDirectory: context === null || context === void 0 ? void 0 : context.lambdaDirectory,
104
+ sharedDirectory: (context === null || context === void 0 ? void 0 : context.sharedDirectory) || "",
105
+ distDirectory: pwd,
106
+ plugins: [],
107
+ metaName: metaName || "modern-js",
108
+ serverBase: this
109
+ };
110
+ return (0, import_plugin.createContext)(appContext);
111
+ }
112
+ function applyMiddlewares() {
113
+ const { middlewares } = this.appContext.get();
114
+ const preMiddlewares = [];
115
+ const defaultMiddlewares = [];
116
+ const postMiddlewares = [];
117
+ for (const middleware of middlewares) {
118
+ switch (middleware.order) {
119
+ case "pre":
120
+ preMiddlewares.push(middleware);
121
+ break;
122
+ case "post":
123
+ postMiddlewares.push(middleware);
124
+ break;
125
+ default:
126
+ defaultMiddlewares.push(middleware);
127
+ }
128
+ }
129
+ const finalMiddlewares = [];
130
+ const insertMiddleware = (middleware) => {
131
+ if (middleware.before) {
132
+ const targetIndex = finalMiddlewares.findIndex((item) => {
133
+ var _middleware_before;
134
+ if ((_middleware_before = middleware.before) === null || _middleware_before === void 0 ? void 0 : _middleware_before.includes(item.name)) {
135
+ return true;
136
+ } else {
137
+ return false;
138
+ }
139
+ });
140
+ if (targetIndex !== -1) {
141
+ finalMiddlewares.splice(targetIndex, 0, middleware);
142
+ } else {
143
+ finalMiddlewares.push(middleware);
144
+ }
145
+ } else {
146
+ finalMiddlewares.push(middleware);
147
+ }
148
+ };
149
+ preMiddlewares.forEach(insertMiddleware);
150
+ defaultMiddlewares.forEach(insertMiddleware);
151
+ postMiddlewares.forEach(insertMiddleware);
152
+ for (const middleware of finalMiddlewares) {
153
+ const { path = "*", method = "all", handler } = middleware;
154
+ const handlers = handler2Handlers(handler);
155
+ this.app[method](path, ...handlers);
156
+ }
157
+ function handler2Handlers(handler) {
158
+ if (Array.isArray(handler)) {
159
+ return handler;
160
+ } else {
161
+ return [
162
+ handler
163
+ ];
164
+ }
165
+ }
166
+ }
167
+ function createServerBase(options) {
168
+ if (options == null) {
169
+ throw new Error("can not start server without options");
170
+ }
171
+ const server = new ServerBase(options);
172
+ return server;
173
+ }
174
+ // Annotate the CommonJS export names for ESM import in node:
175
+ 0 && (module.exports = {
176
+ ServerBase,
177
+ createServerBase
178
+ });
@@ -13,16 +13,16 @@ var __copyProps = (to, from, except, desc) => {
13
13
  };
14
14
  var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
15
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
- var middlewares_exports = {};
17
- module.exports = __toCommonJS(middlewares_exports);
18
- __reExport(middlewares_exports, require("./mock"), module.exports);
19
- __reExport(middlewares_exports, require("./serverStatic"), module.exports);
20
- __reExport(middlewares_exports, require("./templates"), module.exports);
21
- __reExport(middlewares_exports, require("./serverManifest"), module.exports);
16
+ var types_exports = {};
17
+ module.exports = __toCommonJS(types_exports);
18
+ __reExport(types_exports, require("./config"), module.exports);
19
+ __reExport(types_exports, require("./plugin"), module.exports);
20
+ __reExport(types_exports, require("./render"), module.exports);
21
+ __reExport(types_exports, require("./server"), module.exports);
22
22
  // Annotate the CommonJS export names for ESM import in node:
23
23
  0 && (module.exports = {
24
- ...require("./mock"),
25
- ...require("./serverStatic"),
26
- ...require("./templates"),
27
- ...require("./serverManifest")
24
+ ...require("./config"),
25
+ ...require("./plugin"),
26
+ ...require("./render"),
27
+ ...require("./server")
28
28
  });
@@ -0,0 +1,16 @@
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 __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var plugin_exports = {};
16
+ module.exports = __toCommonJS(plugin_exports);
@@ -22,6 +22,7 @@ __reExport(utils_exports, require("./error"), module.exports);
22
22
  __reExport(utils_exports, require("./warmup"), module.exports);
23
23
  __reExport(utils_exports, require("./entry"), module.exports);
24
24
  __reExport(utils_exports, require("./request"), module.exports);
25
+ __reExport(utils_exports, require("./serverConfig"), module.exports);
25
26
  // Annotate the CommonJS export names for ESM import in node:
26
27
  0 && (module.exports = {
27
28
  ...require("./env"),
@@ -30,5 +31,6 @@ __reExport(utils_exports, require("./request"), module.exports);
30
31
  ...require("./error"),
31
32
  ...require("./warmup"),
32
33
  ...require("./entry"),
33
- ...require("./request")
34
+ ...require("./request"),
35
+ ...require("./serverConfig")
34
36
  });
@@ -16,19 +16,20 @@ 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 faviconFallback_exports = {};
20
- __export(faviconFallback_exports, {
21
- favionFallbackMiddleware: () => favionFallbackMiddleware
19
+ var serverConfig_exports = {};
20
+ __export(serverConfig_exports, {
21
+ loadConfig: () => loadConfig
22
22
  });
23
- module.exports = __toCommonJS(faviconFallback_exports);
24
- const favionFallbackMiddleware = async (c, next) => {
25
- if (c.req.path === "/favicon.ico") {
26
- return c.body(null, 204);
27
- } else {
28
- return next();
29
- }
23
+ module.exports = __toCommonJS(serverConfig_exports);
24
+ var import_ts_deepmerge = require("ts-deepmerge");
25
+ const loadConfig = ({ cliConfig, serverConfig }) => {
26
+ const config = (0, import_ts_deepmerge.merge)({
27
+ ...cliConfig,
28
+ plugins: []
29
+ }, serverConfig);
30
+ return config;
30
31
  };
31
32
  // Annotate the CommonJS export names for ESM import in node:
32
33
  0 && (module.exports = {
33
- favionFallbackMiddleware
34
+ loadConfig
34
35
  });
@@ -0,0 +1,10 @@
1
+ import { loadServerEnv } from "./loadEnv";
2
+ import { loadServerPlugins } from "./loadPlugin";
3
+ import { loadServerConfig } from "./loadConfig";
4
+ import { loadCacheConfig } from "./loadCache";
5
+ export {
6
+ loadCacheConfig,
7
+ loadServerConfig,
8
+ loadServerEnv,
9
+ loadServerPlugins
10
+ };
@@ -0,0 +1,19 @@
1
+ import path from "path";
2
+ import { SERVER_DIR, requireExistModule } from "@modern-js/utils";
3
+ var CACHE_FILENAME = "cache";
4
+ function loadCacheConfig(pwd) {
5
+ var serverCacheFilepath = path.resolve(pwd, SERVER_DIR, CACHE_FILENAME);
6
+ var mod = requireExistModule(serverCacheFilepath, {
7
+ interop: false
8
+ });
9
+ if (mod === null || mod === void 0 ? void 0 : mod.cacheOption) {
10
+ return {
11
+ strategy: mod.cacheOption,
12
+ container: mod.customContainer
13
+ };
14
+ }
15
+ return void 0;
16
+ }
17
+ export {
18
+ loadCacheConfig
19
+ };
@@ -0,0 +1,32 @@
1
+ import path from "path";
2
+ import { compatRequire, fs, DEFAULT_SERVER_CONFIG, requireExistModule } from "@modern-js/utils";
3
+ var requireConfig = function(serverConfigPath) {
4
+ if (fs.pathExistsSync(serverConfigPath)) {
5
+ return compatRequire(serverConfigPath);
6
+ }
7
+ return void 0;
8
+ };
9
+ function loadServerConfigNew(serverConfigPath) {
10
+ var mod = requireExistModule(serverConfigPath);
11
+ if (mod) {
12
+ return mod;
13
+ }
14
+ return void 0;
15
+ }
16
+ function loadServerConfigOld(pwd, configFile) {
17
+ var serverConfigPath = path.join(pwd, "".concat(configFile, ".js"));
18
+ var serverConfig = requireConfig(serverConfigPath);
19
+ return serverConfig;
20
+ }
21
+ function loadServerConfig(pwd) {
22
+ var oldServerFile = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : DEFAULT_SERVER_CONFIG, newServerConfigPath = arguments.length > 2 ? arguments[2] : void 0;
23
+ var newServerConfig = newServerConfigPath && loadServerConfigNew(newServerConfigPath);
24
+ if (newServerConfig) {
25
+ return newServerConfig;
26
+ }
27
+ var oldServerConfig = loadServerConfigOld(pwd, oldServerFile);
28
+ return oldServerConfig;
29
+ }
30
+ export {
31
+ loadServerConfig
32
+ };
@@ -0,0 +1,17 @@
1
+ import { compatRequire, tryResolve } from "@modern-js/utils";
2
+ function resolveServerPlugin(plugin, appDirectory) {
3
+ var name = plugin.name, options = plugin.options;
4
+ var pluginPath = tryResolve(name, appDirectory);
5
+ var module = compatRequire(pluginPath);
6
+ var pluginInstance = module(options);
7
+ return pluginInstance;
8
+ }
9
+ function loadServerPlugins(serverPlugins, appDirectory) {
10
+ var instances = serverPlugins.map(function(plugin) {
11
+ return resolveServerPlugin(plugin, appDirectory);
12
+ });
13
+ return instances;
14
+ }
15
+ export {
16
+ loadServerPlugins
17
+ };
@@ -1,21 +1,21 @@
1
- import { loadServerEnv } from "./loadServer";
2
1
  import { httpCallBack2HonoMid, connectMid2HonoMid } from "./hono";
3
2
  import { createNodeServer, sendResponse, createWebRequest, writeReadableStreamToWritable } from "./node";
4
- import { bindBFFHandler } from "./bff";
5
- import { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates, getServerManifest } from "./middlewares";
3
+ import { serverStaticPlugin, injectResourcePlugin, getHtmlTemplates, getServerManifest, injectNodeSeverPlugin } from "./plugins";
4
+ import { loadServerPlugins, loadServerEnv, loadServerConfig, loadCacheConfig } from "./helper";
6
5
  export {
7
- bindBFFHandler,
8
6
  connectMid2HonoMid,
9
7
  createNodeServer,
10
- createStaticMiddleware,
11
8
  createWebRequest,
12
9
  getHtmlTemplates,
13
10
  getServerManifest,
14
11
  httpCallBack2HonoMid,
15
- injectServerManifest,
16
- injectTemplates,
12
+ injectNodeSeverPlugin,
13
+ injectResourcePlugin,
14
+ loadCacheConfig,
15
+ loadServerConfig,
17
16
  loadServerEnv,
18
- registerMockHandlers,
17
+ loadServerPlugins,
19
18
  sendResponse,
19
+ serverStaticPlugin,
20
20
  writeReadableStreamToWritable
21
21
  };
@@ -0,0 +1,3 @@
1
+ export * from "./static";
2
+ export * from "./resource";
3
+ export * from "./nodeServer";
@@ -0,0 +1,18 @@
1
+ import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
2
+ import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
3
+ var injectNodeSeverPlugin = function(param) {
4
+ var nodeServer = param.nodeServer;
5
+ return {
6
+ name: "@modern-js/plugin-inject-node-server",
7
+ setup: function setup(api) {
8
+ var appContext = api.useAppContext();
9
+ api.setAppContext(_object_spread_props(_object_spread({}, appContext), {
10
+ nodeServer
11
+ }));
12
+ return {};
13
+ }
14
+ };
15
+ };
16
+ export {
17
+ injectNodeSeverPlugin
18
+ };