@modern-js/server-core 2.53.0 → 2.54.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 (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
@@ -1,113 +0,0 @@
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 mock_exports = {};
30
- __export(mock_exports, {
31
- registerMockHandlers: () => registerMockHandlers
32
- });
33
- module.exports = __toCommonJS(mock_exports);
34
- var import_node_path = __toESM(require("node:path"));
35
- var import_utils = require("@modern-js/utils");
36
- var import_constants = require("../../../constants");
37
- var import_hono = require("../hono");
38
- const parseKey = (key) => {
39
- const _blank = " ";
40
- const splitted = key.split(_blank).filter(Boolean);
41
- if (splitted.length > 1) {
42
- const [method, pathname] = splitted;
43
- return {
44
- method: method.toLowerCase(),
45
- path: pathname
46
- };
47
- }
48
- return {
49
- method: "get",
50
- path: key
51
- };
52
- };
53
- const mockHandlerRegistry = /* @__PURE__ */ new Map();
54
- const registerMockHandlers = async ({ pwd, server }) => {
55
- const exts = [
56
- ".ts",
57
- ".js"
58
- ];
59
- let mockFilePath = "";
60
- for (const ext of exts) {
61
- const maybeMatch = import_node_path.default.join(pwd, `${import_constants.AGGRED_DIR.mock}/index${ext}`);
62
- if (await import_utils.fs.pathExists(maybeMatch)) {
63
- mockFilePath = maybeMatch;
64
- break;
65
- }
66
- }
67
- if (!mockFilePath) {
68
- return null;
69
- }
70
- const { default: mockModule, config } = await Promise.resolve().then(() => __toESM(require(mockFilePath)));
71
- const enable = config === null || config === void 0 ? void 0 : config.enable;
72
- if (enable === false) {
73
- return;
74
- }
75
- if (!mockModule) {
76
- throw new Error(`Mock file ${mockFilePath} parsed failed!`);
77
- }
78
- Object.entries(mockModule).forEach(([key, handler]) => {
79
- const { method, path: path2 } = parseKey(key);
80
- const methodName = method.toLowerCase();
81
- const handlerId = `${methodName}-${path2}`;
82
- mockHandlerRegistry.set(handlerId, {
83
- handler,
84
- isRegistered: false
85
- });
86
- if (typeof server[methodName] === "function") {
87
- const mockHandler = async (c, next) => {
88
- var _mockHandlerRegistry_get;
89
- if (typeof enable === "function") {
90
- const isEnabled = enable(c.env.node.req, c.env.node.res);
91
- if (!isEnabled) {
92
- return next();
93
- }
94
- }
95
- const handler2 = (_mockHandlerRegistry_get = mockHandlerRegistry.get(handlerId)) === null || _mockHandlerRegistry_get === void 0 ? void 0 : _mockHandlerRegistry_get.handler;
96
- if (typeof handler2 === "function") {
97
- await (0, import_hono.connectMid2HonoMid)(handler2)(c, next);
98
- } else {
99
- return c.json(handler2);
100
- }
101
- };
102
- const handlerInfo = mockHandlerRegistry.get(handlerId);
103
- if (handlerInfo && !(handlerInfo === null || handlerInfo === void 0 ? void 0 : handlerInfo.isRegistered)) {
104
- server[methodName](path2, mockHandler);
105
- handlerInfo.isRegistered = true;
106
- }
107
- }
108
- });
109
- };
110
- // Annotate the CommonJS export names for ESM import in node:
111
- 0 && (module.exports = {
112
- registerMockHandlers
113
- });
@@ -1,70 +0,0 @@
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 serverPublic_exports = {};
30
- __export(serverPublic_exports, {
31
- createPublicMiddleware: () => createPublicMiddleware
32
- });
33
- module.exports = __toCommonJS(serverPublic_exports);
34
- var import_path = __toESM(require("path"));
35
- var import_fileReader = require("@modern-js/runtime-utils/fileReader");
36
- var import_mime = require("hono/utils/mime");
37
- var import_utils = require("../../../utils");
38
- function createPublicMiddleware({ pwd, routes }) {
39
- return async (c, next) => {
40
- const route = matchRoute(c.req, routes);
41
- if (route) {
42
- const { entryPath } = route;
43
- const filename = import_path.default.join(pwd, entryPath);
44
- const data = await import_fileReader.fileReader.readFile(filename, "buffer");
45
- const mimeType = (0, import_mime.getMimeType)(filename);
46
- if (data !== null) {
47
- if (mimeType) {
48
- c.header("Content-Type", mimeType);
49
- }
50
- Object.entries(route.responseHeaders || {}).forEach(([k, v]) => {
51
- c.header(k, v);
52
- });
53
- return c.body(data, 200);
54
- }
55
- }
56
- return await next();
57
- };
58
- }
59
- function matchRoute(req, routes) {
60
- for (const route of routes.sort(import_utils.sortRoutes)) {
61
- if (!route.isSSR && route.entryPath.startsWith("public") && req.path.startsWith(route.urlPath)) {
62
- return route;
63
- }
64
- }
65
- return void 0;
66
- }
67
- // Annotate the CommonJS export names for ESM import in node:
68
- 0 && (module.exports = {
69
- createPublicMiddleware
70
- });
@@ -1,55 +0,0 @@
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 base_exports = {};
20
- __export(base_exports, {
21
- AGGRED_DIR: () => import_constants.AGGRED_DIR,
22
- ErrorDigest: () => import_utils.ErrorDigest,
23
- bindRenderHandler: () => import_middlewares.bindRenderHandler,
24
- createErrorHtml: () => import_utils.createErrorHtml,
25
- createServerBase: () => import_serverBase.createServerBase,
26
- favionFallbackMiddleware: () => import_middlewares.favionFallbackMiddleware,
27
- getLoaderCtx: () => import_middlewares.getLoaderCtx,
28
- getRenderHandler: () => import_middlewares.getRenderHandler,
29
- injectLogger: () => import_middlewares.injectLogger,
30
- injectReporter: () => import_middlewares.injectReporter,
31
- logHandler: () => import_middlewares.logHandler,
32
- onError: () => import_utils.onError,
33
- processedBy: () => import_middlewares.processedBy
34
- });
35
- module.exports = __toCommonJS(base_exports);
36
- var import_utils = require("./utils");
37
- var import_constants = require("./constants");
38
- var import_middlewares = require("./middlewares");
39
- var import_serverBase = require("./serverBase");
40
- // Annotate the CommonJS export names for ESM import in node:
41
- 0 && (module.exports = {
42
- AGGRED_DIR,
43
- ErrorDigest,
44
- bindRenderHandler,
45
- createErrorHtml,
46
- createServerBase,
47
- favionFallbackMiddleware,
48
- getLoaderCtx,
49
- getRenderHandler,
50
- injectLogger,
51
- injectReporter,
52
- logHandler,
53
- onError,
54
- processedBy
55
- });
@@ -1,129 +0,0 @@
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 renderHandler_exports = {};
30
- __export(renderHandler_exports, {
31
- bindRenderHandler: () => bindRenderHandler,
32
- getRenderHandler: () => getRenderHandler
33
- });
34
- module.exports = __toCommonJS(renderHandler_exports);
35
- var import_utils = require("../../utils");
36
- var import_monitor = require("../monitor");
37
- var import_customServer = require("../customServer");
38
- var import_render = require("./render");
39
- function createRenderHandler(render) {
40
- return async (c, _) => {
41
- var _c_env_node;
42
- const logger = c.get("logger");
43
- const reporter = c.get("reporter");
44
- const templates = c.get("templates") || {};
45
- const serverManifest = c.get("serverManifest") || {};
46
- const locals = c.get("locals");
47
- const metrics = c.get("metrics");
48
- const loaderContext = (0, import_customServer.getLoaderCtx)(c);
49
- const request = c.req.raw;
50
- const nodeReq = (_c_env_node = c.env.node) === null || _c_env_node === void 0 ? void 0 : _c_env_node.req;
51
- const res = await render(request, {
52
- logger,
53
- nodeReq,
54
- reporter,
55
- templates,
56
- metrics,
57
- serverManifest,
58
- loaderContext,
59
- locals
60
- });
61
- const { body, status, headers } = res;
62
- const headersData = {};
63
- headers.forEach((v, k) => {
64
- headersData[k] = v;
65
- });
66
- return c.body(body, status, headersData);
67
- };
68
- }
69
- async function getRenderHandler(options, serverBase) {
70
- const { routes, pwd, config } = options;
71
- const onFallback = async (reason, utils, error) => {
72
- await (serverBase === null || serverBase === void 0 ? void 0 : serverBase.runner.fallback({
73
- reason,
74
- error,
75
- ...utils
76
- }));
77
- };
78
- if (routes && routes.length > 0) {
79
- var _config_server, _options_config_security;
80
- const ssrConfig = (_config_server = config.server) === null || _config_server === void 0 ? void 0 : _config_server.ssr;
81
- const forceCSR = typeof ssrConfig === "object" ? ssrConfig.forceCSR : false;
82
- const render = (0, import_render.createRender)({
83
- routes,
84
- pwd,
85
- staticGenerate: options.staticGenerate,
86
- metaName: options.metaName || "modern-js",
87
- forceCSR,
88
- nonce: (_options_config_security = options.config.security) === null || _options_config_security === void 0 ? void 0 : _options_config_security.nonce,
89
- onFallback
90
- });
91
- return render;
92
- }
93
- return null;
94
- }
95
- async function bindRenderHandler(server, options) {
96
- const { routes, pwd, disableCustomHook } = options;
97
- const { runner } = server;
98
- if (routes && routes.length > 0) {
99
- const customServer = new import_customServer.CustomServer(runner, server, pwd);
100
- if ((0, import_utils.getRuntimeEnv)() === "node") {
101
- const cacheModuleName = "./ssrCache";
102
- const { ssrCache } = await Promise.resolve().then(() => __toESM(require(cacheModuleName)));
103
- await ssrCache.loadCacheMod((0, import_utils.checkIsProd)() ? pwd : void 0);
104
- }
105
- const pageRoutes = routes.filter((route) => !route.isApi).sort(import_utils.sortRoutes);
106
- const render = await getRenderHandler(options, server);
107
- for (const route of pageRoutes) {
108
- const { urlPath: originUrlPath, entryName } = route;
109
- const urlPath = originUrlPath.endsWith("/") ? `${originUrlPath}*` : `${originUrlPath}/*`;
110
- const customServerHookMiddleware = customServer.getHookMiddleware(entryName || "main", routes);
111
- server.use(urlPath, (0, import_monitor.initReporter)(entryName));
112
- !disableCustomHook && server.use(urlPath, customServerHookMiddleware);
113
- const customServerMiddleware = await customServer.getServerMiddleware();
114
- if (customServerMiddleware) {
115
- if (Array.isArray(customServerMiddleware)) {
116
- server.use(urlPath, ...customServerMiddleware);
117
- } else {
118
- server.use(urlPath, customServerMiddleware);
119
- }
120
- }
121
- render && server.all(urlPath, createRenderHandler(render));
122
- }
123
- }
124
- }
125
- // Annotate the CommonJS export names for ESM import in node:
126
- 0 && (module.exports = {
127
- bindRenderHandler,
128
- getRenderHandler
129
- });
@@ -1,207 +0,0 @@
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
- CacheManager: () => CacheManager,
32
- ssrCache: () => ssrCache
33
- });
34
- module.exports = __toCommonJS(ssrCache_exports);
35
- var import_stream = require("stream");
36
- var import_utils = require("@modern-js/utils");
37
- var import_storer = require("@modern-js/runtime-utils/storer");
38
- var import_utils2 = require("../../utils");
39
- var import_stream2 = require("../../adapters/node/polyfills/stream");
40
- class CacheManager {
41
- async getCacheResult(req, cacheControl, render, ssrContext) {
42
- const key = this.computedKey(req, cacheControl);
43
- const value = await this.container.get(key);
44
- const { maxAge, staleWhileRevalidate } = cacheControl;
45
- const ttl = maxAge + staleWhileRevalidate;
46
- if (value) {
47
- const cache = JSON.parse(value);
48
- const interval = Date.now() - cache.cursor;
49
- if (interval <= maxAge) {
50
- return {
51
- data: cache.val,
52
- status: "hit"
53
- };
54
- } else if (interval <= staleWhileRevalidate + maxAge) {
55
- this.processCache(key, render, ssrContext, ttl);
56
- return {
57
- data: cache.val,
58
- status: "stale"
59
- };
60
- } else {
61
- return this.processCache(key, render, ssrContext, ttl, "expired");
62
- }
63
- } else {
64
- return this.processCache(key, render, ssrContext, ttl, "miss");
65
- }
66
- }
67
- async processCache(key, render, ssrContext, ttl, status) {
68
- const renderResult = await render(ssrContext);
69
- if (!renderResult) {
70
- return {
71
- data: ""
72
- };
73
- } else if (typeof renderResult === "string") {
74
- const current = Date.now();
75
- const cache = {
76
- val: renderResult,
77
- cursor: current
78
- };
79
- await this.container.set(key, JSON.stringify(cache), {
80
- ttl
81
- });
82
- return {
83
- data: renderResult,
84
- status
85
- };
86
- } else {
87
- const body = (
88
- // TODO: remove node:stream, move it to ssr entry.
89
- renderResult instanceof import_stream.Readable ? (0, import_stream2.createReadableStreamFromReadable)(renderResult) : renderResult
90
- );
91
- let html = "";
92
- const stream = (0, import_utils2.createTransformStream)((chunk) => {
93
- html += chunk;
94
- return chunk;
95
- });
96
- const reader = body.getReader();
97
- const writer = stream.writable.getWriter();
98
- const push = () => {
99
- reader.read().then(({ done, value }) => {
100
- if (done) {
101
- const current = Date.now();
102
- const cache = {
103
- val: html,
104
- cursor: current
105
- };
106
- this.container.set(key, JSON.stringify(cache), {
107
- ttl
108
- });
109
- writer.close();
110
- return;
111
- }
112
- writer.write(value);
113
- push();
114
- });
115
- };
116
- push();
117
- return {
118
- data: stream.readable,
119
- status
120
- };
121
- }
122
- }
123
- computedKey(req, cacheControl) {
124
- const pathname = (0, import_utils2.getPathname)(req);
125
- const { customKey } = cacheControl;
126
- const defaultKey = pathname.replace(/.+\/+$/, "");
127
- if (customKey) {
128
- if (typeof customKey === "string") {
129
- return customKey;
130
- } else {
131
- return customKey(defaultKey);
132
- }
133
- } else {
134
- return defaultKey;
135
- }
136
- }
137
- constructor(container) {
138
- this.container = container;
139
- }
140
- }
141
- const CACHE_FILENAME = "cache";
142
- class ServerCache {
143
- async loadCacheMod(pwd = process.cwd()) {
144
- const path = await Promise.resolve().then(() => __toESM(require("path"))).catch(() => {
145
- return {};
146
- });
147
- const serverCacheFilepath = path.resolve(pwd, import_utils.SERVER_DIR, CACHE_FILENAME);
148
- const mod = (0, import_utils.requireExistModule)(serverCacheFilepath, {
149
- interop: false
150
- });
151
- this.cacheOption = mod === null || mod === void 0 ? void 0 : mod.cacheOption;
152
- if (this.cacheOption && !(mod === null || mod === void 0 ? void 0 : mod.customContainer)) {
153
- const cacheStorage = (0, import_storer.createMemoryStorage)("__ssr__cache");
154
- this.customContainer = cacheStorage;
155
- } else {
156
- this.customContainer = mod === null || mod === void 0 ? void 0 : mod.customContainer;
157
- }
158
- if (this.customContainer) {
159
- this.cacheManger = new CacheManager(this.customContainer);
160
- }
161
- }
162
- matchCacheControl(req) {
163
- const { cacheOption } = this;
164
- if (!cacheOption || !req) {
165
- return void 0;
166
- } else if (isCacheControl(cacheOption)) {
167
- return cacheOption;
168
- } else if (isCacheOptionProvider(cacheOption)) {
169
- return cacheOption(req);
170
- } else {
171
- const url = req.url;
172
- const options = Object.entries(cacheOption);
173
- for (const [key, option] of options) {
174
- if (key === "*" || new RegExp(key).test(url)) {
175
- if (typeof option === "function") {
176
- return option(req);
177
- } else {
178
- return option;
179
- }
180
- }
181
- }
182
- return void 0;
183
- }
184
- function isCacheOptionProvider(option) {
185
- return typeof option === "function";
186
- }
187
- function isCacheControl(option) {
188
- return typeof option === "object" && option !== null && "maxAge" in option;
189
- }
190
- }
191
- async getCache(req, cacheControl, render, ssrContext) {
192
- if (this.cacheManger) {
193
- return this.cacheManger.getCacheResult(req, cacheControl, render, ssrContext);
194
- } else {
195
- const renderResult = await render(ssrContext);
196
- return {
197
- data: renderResult
198
- };
199
- }
200
- }
201
- }
202
- const ssrCache = new ServerCache();
203
- // Annotate the CommonJS export names for ESM import in node:
204
- 0 && (module.exports = {
205
- CacheManager,
206
- ssrCache
207
- });