@modern-js/server-core 2.69.5 → 3.0.0-alpha.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 (358) hide show
  1. package/dist/cjs/adapters/node/helper/index.js +52 -39
  2. package/dist/cjs/adapters/node/helper/loadCache.js +52 -47
  3. package/dist/cjs/adapters/node/helper/loadConfig.js +69 -85
  4. package/dist/cjs/adapters/node/helper/loadEnv.js +60 -50
  5. package/dist/cjs/adapters/node/helper/loadPlugin.js +40 -32
  6. package/dist/cjs/adapters/node/helper/utils.js +33 -28
  7. package/dist/cjs/adapters/node/hono.js +87 -99
  8. package/dist/cjs/adapters/node/index.js +84 -60
  9. package/dist/cjs/adapters/node/node.js +164 -190
  10. package/dist/cjs/adapters/node/plugins/index.js +69 -23
  11. package/dist/cjs/adapters/node/plugins/nodeServer.js +39 -34
  12. package/dist/cjs/adapters/node/plugins/resource.js +186 -181
  13. package/dist/cjs/adapters/node/plugins/static.js +152 -164
  14. package/dist/cjs/constants.js +70 -57
  15. package/dist/cjs/context.js +37 -28
  16. package/dist/cjs/helper.js +40 -33
  17. package/dist/cjs/hono.js +46 -0
  18. package/dist/cjs/index.js +236 -57
  19. package/dist/cjs/plugins/compat/hooks.js +71 -83
  20. package/dist/cjs/plugins/compat/index.js +59 -60
  21. package/dist/cjs/plugins/default.js +52 -47
  22. package/dist/cjs/plugins/favicon.js +43 -39
  23. package/dist/cjs/plugins/index.js +73 -54
  24. package/dist/cjs/plugins/log.js +82 -87
  25. package/dist/cjs/plugins/middlewares.js +43 -37
  26. package/dist/cjs/plugins/monitors.js +178 -187
  27. package/dist/cjs/plugins/processedBy.js +45 -39
  28. package/dist/cjs/plugins/render/csrRscRender.js +70 -71
  29. package/dist/cjs/plugins/render/dataHandler.js +49 -45
  30. package/dist/cjs/plugins/render/index.js +152 -126
  31. package/dist/cjs/plugins/render/inject.js +84 -86
  32. package/dist/cjs/plugins/render/render.js +244 -271
  33. package/dist/cjs/plugins/render/renderRscHandler.js +68 -69
  34. package/dist/cjs/plugins/render/serverActionHandler.js +45 -44
  35. package/dist/cjs/plugins/render/ssrCache.js +173 -191
  36. package/dist/cjs/plugins/render/ssrRender.js +89 -94
  37. package/dist/cjs/plugins/render/utils.js +44 -36
  38. package/dist/cjs/plugins/route.js +60 -57
  39. package/dist/cjs/serverBase.js +164 -162
  40. package/dist/cjs/types/config/bff.js +17 -15
  41. package/dist/cjs/types/config/dev.js +17 -15
  42. package/dist/cjs/types/config/html.js +17 -15
  43. package/dist/cjs/types/config/index.js +90 -29
  44. package/dist/cjs/types/config/output.js +17 -15
  45. package/dist/cjs/types/config/security.js +17 -15
  46. package/dist/cjs/types/config/server.js +17 -15
  47. package/dist/cjs/types/config/share.js +17 -15
  48. package/dist/cjs/types/config/source.js +17 -15
  49. package/dist/cjs/types/config/tools.js +17 -15
  50. package/dist/cjs/types/index.js +76 -25
  51. package/dist/cjs/types/plugins/base.js +17 -15
  52. package/dist/cjs/types/plugins/index.js +55 -21
  53. package/dist/cjs/types/plugins/plugin.js +18 -0
  54. package/dist/cjs/types/render.js +17 -15
  55. package/dist/cjs/types/requestHandler.js +17 -15
  56. package/dist/cjs/types/server.js +17 -15
  57. package/dist/cjs/utils/entry.js +37 -32
  58. package/dist/cjs/utils/env.js +46 -40
  59. package/dist/cjs/utils/error.js +56 -50
  60. package/dist/cjs/utils/index.js +111 -33
  61. package/dist/cjs/utils/middlewareCollector.js +58 -49
  62. package/dist/cjs/utils/publicDir.js +92 -0
  63. package/dist/cjs/utils/request.js +73 -65
  64. package/dist/cjs/utils/serverConfig.js +39 -31
  65. package/dist/cjs/utils/storage.js +58 -68
  66. package/dist/cjs/utils/transformStream.js +57 -53
  67. package/dist/cjs/utils/warmup.js +34 -27
  68. package/dist/esm/adapters/node/helper/index.mjs +6 -0
  69. package/dist/esm/adapters/node/helper/loadCache.mjs +14 -0
  70. package/dist/esm/adapters/node/helper/loadConfig.mjs +31 -0
  71. package/dist/esm/adapters/node/helper/loadEnv.mjs +22 -0
  72. package/dist/esm/adapters/node/helper/loadPlugin.mjs +13 -0
  73. package/dist/esm/adapters/node/helper/utils.mjs +2 -0
  74. package/dist/esm/adapters/node/hono.mjs +53 -0
  75. package/dist/esm/adapters/node/index.mjs +5 -0
  76. package/dist/esm/adapters/node/node.mjs +129 -0
  77. package/dist/esm/adapters/node/plugins/nodeServer.mjs +9 -0
  78. package/dist/esm/adapters/node/plugins/resource.mjs +138 -0
  79. package/dist/esm/adapters/node/plugins/static.mjs +118 -0
  80. package/dist/esm/constants.mjs +28 -0
  81. package/dist/{esm-node/context.js → esm/context.mjs} +1 -4
  82. package/dist/esm/helper.mjs +11 -0
  83. package/dist/esm/hono.mjs +3 -0
  84. package/dist/esm/index.mjs +13 -0
  85. package/dist/esm/plugins/compat/hooks.mjs +40 -0
  86. package/dist/esm/plugins/compat/index.mjs +27 -0
  87. package/dist/esm/plugins/default.mjs +25 -0
  88. package/dist/esm/plugins/favicon.mjs +14 -0
  89. package/dist/{esm-node/plugins/index.js → esm/plugins/index.mjs} +2 -15
  90. package/dist/esm/plugins/log.mjs +58 -0
  91. package/dist/esm/plugins/middlewares.mjs +15 -0
  92. package/dist/esm/plugins/monitors.mjs +149 -0
  93. package/dist/esm/plugins/processedBy.mjs +16 -0
  94. package/dist/esm/plugins/render/csrRscRender.mjs +43 -0
  95. package/dist/esm/plugins/render/dataHandler.mjs +19 -0
  96. package/dist/esm/plugins/render/index.mjs +84 -0
  97. package/dist/esm/plugins/render/inject.mjs +55 -0
  98. package/dist/esm/plugins/render/render.mjs +226 -0
  99. package/dist/esm/plugins/render/renderRscHandler.mjs +41 -0
  100. package/dist/esm/plugins/render/serverActionHandler.mjs +18 -0
  101. package/dist/esm/plugins/render/ssrCache.mjs +158 -0
  102. package/dist/esm/plugins/render/ssrRender.mjs +62 -0
  103. package/dist/esm/plugins/render/utils.mjs +15 -0
  104. package/dist/esm/plugins/route.mjs +34 -0
  105. package/dist/esm/serverBase.mjs +136 -0
  106. package/dist/esm/types/plugins/index.mjs +1 -0
  107. package/dist/esm/utils/entry.mjs +3 -0
  108. package/dist/esm/utils/env.mjs +14 -0
  109. package/dist/esm/utils/error.mjs +53 -0
  110. package/dist/{esm-node/utils/index.js → esm/utils/index.mjs} +1 -0
  111. package/dist/esm/utils/middlewareCollector.mjs +26 -0
  112. package/dist/esm/utils/publicDir.mjs +33 -0
  113. package/dist/esm/utils/request.mjs +40 -0
  114. package/dist/esm/utils/serverConfig.mjs +9 -0
  115. package/dist/esm/utils/storage.mjs +30 -0
  116. package/dist/esm/utils/transformStream.mjs +28 -0
  117. package/dist/esm/utils/warmup.mjs +6 -0
  118. package/dist/esm-node/adapters/node/helper/index.mjs +6 -0
  119. package/dist/esm-node/adapters/node/helper/loadCache.mjs +14 -0
  120. package/dist/esm-node/adapters/node/helper/loadConfig.mjs +31 -0
  121. package/dist/esm-node/adapters/node/helper/loadEnv.mjs +22 -0
  122. package/dist/esm-node/adapters/node/helper/loadPlugin.mjs +13 -0
  123. package/dist/esm-node/adapters/node/helper/utils.mjs +2 -0
  124. package/dist/esm-node/adapters/node/hono.mjs +53 -0
  125. package/dist/esm-node/adapters/node/index.mjs +5 -0
  126. package/dist/esm-node/adapters/node/node.mjs +129 -0
  127. package/dist/esm-node/adapters/node/plugins/index.mjs +3 -0
  128. package/dist/esm-node/adapters/node/plugins/nodeServer.mjs +9 -0
  129. package/dist/esm-node/adapters/node/plugins/resource.mjs +138 -0
  130. package/dist/esm-node/adapters/node/plugins/static.mjs +118 -0
  131. package/dist/esm-node/constants.mjs +28 -0
  132. package/dist/esm-node/context.mjs +3 -0
  133. package/dist/esm-node/helper.mjs +11 -0
  134. package/dist/esm-node/hono.mjs +3 -0
  135. package/dist/esm-node/index.mjs +13 -0
  136. package/dist/esm-node/plugins/compat/hooks.mjs +40 -0
  137. package/dist/esm-node/plugins/compat/index.mjs +27 -0
  138. package/dist/esm-node/plugins/default.mjs +25 -0
  139. package/dist/esm-node/plugins/favicon.mjs +14 -0
  140. package/dist/esm-node/plugins/index.mjs +9 -0
  141. package/dist/esm-node/plugins/log.mjs +58 -0
  142. package/dist/esm-node/plugins/middlewares.mjs +15 -0
  143. package/dist/esm-node/plugins/monitors.mjs +149 -0
  144. package/dist/esm-node/plugins/processedBy.mjs +16 -0
  145. package/dist/esm-node/plugins/render/csrRscRender.mjs +43 -0
  146. package/dist/esm-node/plugins/render/dataHandler.mjs +19 -0
  147. package/dist/esm-node/plugins/render/index.mjs +84 -0
  148. package/dist/esm-node/plugins/render/inject.mjs +55 -0
  149. package/dist/esm-node/plugins/render/render.mjs +226 -0
  150. package/dist/esm-node/plugins/render/renderRscHandler.mjs +41 -0
  151. package/dist/esm-node/plugins/render/serverActionHandler.mjs +18 -0
  152. package/dist/esm-node/plugins/render/ssrCache.mjs +158 -0
  153. package/dist/esm-node/plugins/render/ssrRender.mjs +62 -0
  154. package/dist/esm-node/plugins/render/utils.mjs +15 -0
  155. package/dist/esm-node/plugins/route.mjs +34 -0
  156. package/dist/esm-node/serverBase.mjs +136 -0
  157. package/dist/esm-node/types/config/index.mjs +6 -0
  158. package/dist/esm-node/types/index.mjs +4 -0
  159. package/dist/esm-node/types/plugins/index.mjs +1 -0
  160. package/dist/esm-node/utils/entry.mjs +3 -0
  161. package/dist/esm-node/utils/env.mjs +14 -0
  162. package/dist/esm-node/utils/error.mjs +53 -0
  163. package/dist/esm-node/utils/index.mjs +9 -0
  164. package/dist/esm-node/utils/middlewareCollector.mjs +26 -0
  165. package/dist/esm-node/utils/publicDir.mjs +33 -0
  166. package/dist/esm-node/utils/request.mjs +40 -0
  167. package/dist/esm-node/utils/serverConfig.mjs +9 -0
  168. package/dist/esm-node/utils/storage.mjs +30 -0
  169. package/dist/esm-node/utils/transformStream.mjs +28 -0
  170. package/dist/esm-node/utils/warmup.mjs +6 -0
  171. package/dist/types/adapters/node/helper/loadConfig.d.ts +1 -1
  172. package/dist/types/adapters/node/plugins/nodeServer.d.ts +2 -2
  173. package/dist/types/adapters/node/plugins/resource.d.ts +3 -3
  174. package/dist/types/adapters/node/plugins/static.d.ts +3 -2
  175. package/dist/types/hono.d.ts +3 -0
  176. package/dist/types/index.d.ts +1 -1
  177. package/dist/types/plugins/compat/hooks.d.ts +1 -1
  178. package/dist/types/plugins/default.d.ts +2 -2
  179. package/dist/types/plugins/favicon.d.ts +2 -2
  180. package/dist/types/plugins/log.d.ts +2 -2
  181. package/dist/types/plugins/middlewares.d.ts +2 -2
  182. package/dist/types/plugins/monitors.d.ts +4 -4
  183. package/dist/types/plugins/processedBy.d.ts +2 -2
  184. package/dist/types/plugins/render/dataHandler.d.ts +1 -1
  185. package/dist/types/plugins/render/index.d.ts +2 -2
  186. package/dist/types/plugins/render/inject.d.ts +2 -2
  187. package/dist/types/plugins/render/ssrRender.d.ts +3 -5
  188. package/dist/types/plugins/route.d.ts +2 -2
  189. package/dist/types/serverBase.d.ts +14 -20
  190. package/dist/types/types/config/bff.d.ts +0 -2
  191. package/dist/types/types/config/html.d.ts +0 -1
  192. package/dist/types/types/config/index.d.ts +0 -6
  193. package/dist/types/types/config/output.d.ts +2 -8
  194. package/dist/types/types/config/server.d.ts +1 -1
  195. package/dist/types/types/plugins/base.d.ts +5 -26
  196. package/dist/types/types/plugins/index.d.ts +1 -2
  197. package/dist/types/types/plugins/{new.d.ts → plugin.d.ts} +6 -4
  198. package/dist/types/types/render.d.ts +2 -5
  199. package/dist/types/types/requestHandler.d.ts +3 -7
  200. package/dist/types/types/server.d.ts +2 -1
  201. package/dist/types/utils/index.d.ts +1 -0
  202. package/dist/types/utils/publicDir.d.ts +40 -0
  203. package/dist/types/utils/transformStream.d.ts +1 -1
  204. package/package.json +25 -29
  205. package/rslib.config.mts +4 -0
  206. package/rstest.config.ts +7 -0
  207. package/dist/cjs/plugins/customServer/base.js +0 -186
  208. package/dist/cjs/plugins/customServer/context.js +0 -70
  209. package/dist/cjs/plugins/customServer/index.js +0 -210
  210. package/dist/cjs/plugins/customServer/routerApi.js +0 -44
  211. package/dist/cjs/plugins/customServer/template.js +0 -58
  212. package/dist/cjs/types/plugins/new.js +0 -16
  213. package/dist/cjs/types/plugins/old.js +0 -16
  214. package/dist/esm/adapters/node/helper/index.js +0 -13
  215. package/dist/esm/adapters/node/helper/loadCache.js +0 -44
  216. package/dist/esm/adapters/node/helper/loadConfig.js +0 -157
  217. package/dist/esm/adapters/node/helper/loadEnv.js +0 -73
  218. package/dist/esm/adapters/node/helper/loadPlugin.js +0 -59
  219. package/dist/esm/adapters/node/helper/utils.js +0 -7
  220. package/dist/esm/adapters/node/hono.js +0 -148
  221. package/dist/esm/adapters/node/index.js +0 -23
  222. package/dist/esm/adapters/node/node.js +0 -357
  223. package/dist/esm/adapters/node/plugins/index.js +0 -3
  224. package/dist/esm/adapters/node/plugins/nodeServer.js +0 -18
  225. package/dist/esm/adapters/node/plugins/resource.js +0 -543
  226. package/dist/esm/adapters/node/plugins/static.js +0 -245
  227. package/dist/esm/constants.js +0 -35
  228. package/dist/esm/context.js +0 -6
  229. package/dist/esm/helper.js +0 -14
  230. package/dist/esm/index.js +0 -22
  231. package/dist/esm/plugins/compat/hooks.js +0 -70
  232. package/dist/esm/plugins/compat/index.js +0 -45
  233. package/dist/esm/plugins/customServer/base.js +0 -218
  234. package/dist/esm/plugins/customServer/context.js +0 -66
  235. package/dist/esm/plugins/customServer/index.js +0 -369
  236. package/dist/esm/plugins/customServer/routerApi.js +0 -26
  237. package/dist/esm/plugins/customServer/template.js +0 -47
  238. package/dist/esm/plugins/default.js +0 -31
  239. package/dist/esm/plugins/favicon.js +0 -34
  240. package/dist/esm/plugins/index.js +0 -22
  241. package/dist/esm/plugins/log.js +0 -106
  242. package/dist/esm/plugins/middlewares.js +0 -22
  243. package/dist/esm/plugins/monitors.js +0 -287
  244. package/dist/esm/plugins/processedBy.js +0 -42
  245. package/dist/esm/plugins/render/csrRscRender.js +0 -88
  246. package/dist/esm/plugins/render/dataHandler.js +0 -48
  247. package/dist/esm/plugins/render/index.js +0 -215
  248. package/dist/esm/plugins/render/inject.js +0 -126
  249. package/dist/esm/plugins/render/render.js +0 -572
  250. package/dist/esm/plugins/render/renderRscHandler.js +0 -81
  251. package/dist/esm/plugins/render/serverActionHandler.js +0 -49
  252. package/dist/esm/plugins/render/ssrCache.js +0 -305
  253. package/dist/esm/plugins/render/ssrRender.js +0 -124
  254. package/dist/esm/plugins/render/utils.js +0 -17
  255. package/dist/esm/plugins/route.js +0 -92
  256. package/dist/esm/serverBase.js +0 -248
  257. package/dist/esm/types/config/index.js +0 -6
  258. package/dist/esm/types/index.js +0 -4
  259. package/dist/esm/types/plugins/index.js +0 -2
  260. package/dist/esm/types/requestHandler.js +0 -0
  261. package/dist/esm/types/server.js +0 -0
  262. package/dist/esm/utils/entry.js +0 -10
  263. package/dist/esm/utils/env.js +0 -20
  264. package/dist/esm/utils/error.js +0 -33
  265. package/dist/esm/utils/index.js +0 -8
  266. package/dist/esm/utils/middlewareCollector.js +0 -31
  267. package/dist/esm/utils/request.js +0 -51
  268. package/dist/esm/utils/serverConfig.js +0 -13
  269. package/dist/esm/utils/storage.js +0 -38
  270. package/dist/esm/utils/transformStream.js +0 -104
  271. package/dist/esm/utils/warmup.js +0 -9
  272. package/dist/esm-node/adapters/node/helper/index.js +0 -13
  273. package/dist/esm-node/adapters/node/helper/loadCache.js +0 -19
  274. package/dist/esm-node/adapters/node/helper/loadConfig.js +0 -59
  275. package/dist/esm-node/adapters/node/helper/loadEnv.js +0 -22
  276. package/dist/esm-node/adapters/node/helper/loadPlugin.js +0 -15
  277. package/dist/esm-node/adapters/node/helper/utils.js +0 -7
  278. package/dist/esm-node/adapters/node/hono.js +0 -79
  279. package/dist/esm-node/adapters/node/index.js +0 -23
  280. package/dist/esm-node/adapters/node/node.js +0 -169
  281. package/dist/esm-node/adapters/node/plugins/nodeServer.js +0 -14
  282. package/dist/esm-node/adapters/node/plugins/resource.js +0 -159
  283. package/dist/esm-node/adapters/node/plugins/static.js +0 -144
  284. package/dist/esm-node/constants.js +0 -35
  285. package/dist/esm-node/helper.js +0 -14
  286. package/dist/esm-node/index.js +0 -22
  287. package/dist/esm-node/plugins/compat/hooks.js +0 -66
  288. package/dist/esm-node/plugins/compat/index.js +0 -40
  289. package/dist/esm-node/plugins/customServer/base.js +0 -162
  290. package/dist/esm-node/plugins/customServer/context.js +0 -43
  291. package/dist/esm-node/plugins/customServer/index.js +0 -185
  292. package/dist/esm-node/plugins/customServer/routerApi.js +0 -20
  293. package/dist/esm-node/plugins/customServer/template.js +0 -34
  294. package/dist/esm-node/plugins/default.js +0 -30
  295. package/dist/esm-node/plugins/favicon.js +0 -20
  296. package/dist/esm-node/plugins/log.js +0 -73
  297. package/dist/esm-node/plugins/middlewares.js +0 -19
  298. package/dist/esm-node/plugins/monitors.js +0 -174
  299. package/dist/esm-node/plugins/processedBy.js +0 -20
  300. package/dist/esm-node/plugins/render/csrRscRender.js +0 -54
  301. package/dist/esm-node/plugins/render/dataHandler.js +0 -25
  302. package/dist/esm-node/plugins/render/index.js +0 -106
  303. package/dist/esm-node/plugins/render/inject.js +0 -69
  304. package/dist/esm-node/plugins/render/render.js +0 -253
  305. package/dist/esm-node/plugins/render/renderRscHandler.js +0 -52
  306. package/dist/esm-node/plugins/render/serverActionHandler.js +0 -27
  307. package/dist/esm-node/plugins/render/ssrCache.js +0 -190
  308. package/dist/esm-node/plugins/render/ssrRender.js +0 -77
  309. package/dist/esm-node/plugins/render/utils.js +0 -17
  310. package/dist/esm-node/plugins/route.js +0 -41
  311. package/dist/esm-node/serverBase.js +0 -146
  312. package/dist/esm-node/types/plugins/index.js +0 -2
  313. package/dist/esm-node/utils/entry.js +0 -10
  314. package/dist/esm-node/utils/env.js +0 -20
  315. package/dist/esm-node/utils/error.js +0 -61
  316. package/dist/esm-node/utils/middlewareCollector.js +0 -29
  317. package/dist/esm-node/utils/request.js +0 -50
  318. package/dist/esm-node/utils/serverConfig.js +0 -11
  319. package/dist/esm-node/utils/storage.js +0 -40
  320. package/dist/esm-node/utils/transformStream.js +0 -36
  321. package/dist/esm-node/utils/warmup.js +0 -9
  322. package/dist/types/plugins/customServer/base.d.ts +0 -7
  323. package/dist/types/plugins/customServer/context.d.ts +0 -8
  324. package/dist/types/plugins/customServer/index.d.ts +0 -11
  325. package/dist/types/plugins/customServer/routerApi.d.ts +0 -9
  326. package/dist/types/plugins/customServer/template.d.ts +0 -11
  327. package/dist/types/types/plugins/old.d.ts +0 -56
  328. /package/dist/{esm-node/adapters/node/plugins/index.js → esm/adapters/node/plugins/index.mjs} +0 -0
  329. /package/dist/{esm-node/types/server.js → esm/types/config/bff.mjs} +0 -0
  330. /package/dist/esm/types/config/{bff.js → dev.mjs} +0 -0
  331. /package/dist/esm/types/config/{dev.js → html.mjs} +0 -0
  332. /package/dist/{esm-node/types/config/index.js → esm/types/config/index.mjs} +0 -0
  333. /package/dist/esm/types/config/{html.js → output.mjs} +0 -0
  334. /package/dist/esm/types/config/{output.js → security.mjs} +0 -0
  335. /package/dist/esm/types/config/{security.js → server.mjs} +0 -0
  336. /package/dist/esm/types/config/{server.js → share.mjs} +0 -0
  337. /package/dist/esm/types/config/{share.js → source.mjs} +0 -0
  338. /package/dist/esm/types/config/{source.js → tools.mjs} +0 -0
  339. /package/dist/{esm-node/types/index.js → esm/types/index.mjs} +0 -0
  340. /package/dist/esm/types/{config/tools.js → plugins/base.mjs} +0 -0
  341. /package/dist/esm/types/plugins/{base.js → plugin.mjs} +0 -0
  342. /package/dist/esm/types/{plugins/new.js → render.mjs} +0 -0
  343. /package/dist/esm/types/{plugins/old.js → requestHandler.mjs} +0 -0
  344. /package/dist/esm/types/{render.js → server.mjs} +0 -0
  345. /package/dist/esm-node/types/config/{bff.js → bff.mjs} +0 -0
  346. /package/dist/esm-node/types/config/{dev.js → dev.mjs} +0 -0
  347. /package/dist/esm-node/types/config/{html.js → html.mjs} +0 -0
  348. /package/dist/esm-node/types/config/{output.js → output.mjs} +0 -0
  349. /package/dist/esm-node/types/config/{security.js → security.mjs} +0 -0
  350. /package/dist/esm-node/types/config/{server.js → server.mjs} +0 -0
  351. /package/dist/esm-node/types/config/{share.js → share.mjs} +0 -0
  352. /package/dist/esm-node/types/config/{source.js → source.mjs} +0 -0
  353. /package/dist/esm-node/types/config/{tools.js → tools.mjs} +0 -0
  354. /package/dist/esm-node/types/plugins/{base.js → base.mjs} +0 -0
  355. /package/dist/esm-node/types/plugins/{new.js → plugin.mjs} +0 -0
  356. /package/dist/esm-node/types/{plugins/old.js → render.mjs} +0 -0
  357. /package/dist/esm-node/types/{render.js → requestHandler.mjs} +0 -0
  358. /package/dist/esm-node/types/{requestHandler.js → server.mjs} +0 -0
@@ -1,253 +0,0 @@
1
- import { cutNameByHyphen } from "@modern-js/utils/universal";
2
- import { TrieRouter } from "hono/router/trie-router";
3
- import { X_MODERNJS_RENDER } from "../../constants";
4
- import { uniqueKeyByRoute } from "../../utils";
5
- import { ErrorDigest, createErrorHtml, getPathname, getRuntimeEnv, parseHeaders, parseQuery, sortRoutes } from "../../utils";
6
- import { csrRscRender } from "./csrRscRender";
7
- import { dataHandler } from "./dataHandler";
8
- import { renderRscHandler } from "./renderRscHandler";
9
- import { serverActionHandler } from "./serverActionHandler";
10
- import { ssrRender } from "./ssrRender";
11
- const DYNAMIC_ROUTE_REG = /\/:./;
12
- function getRouter(routes) {
13
- const dynamicRoutes = [];
14
- const normalRoutes = [];
15
- routes.forEach((route) => {
16
- if (DYNAMIC_ROUTE_REG.test(route.urlPath)) {
17
- dynamicRoutes.push(route);
18
- } else {
19
- normalRoutes.push(route);
20
- }
21
- });
22
- const finalRoutes = [
23
- ...normalRoutes.sort(sortRoutes),
24
- ...dynamicRoutes.sort(sortRoutes)
25
- ];
26
- const router = new TrieRouter();
27
- for (const route of finalRoutes) {
28
- const { urlPath: originUrlPath } = route;
29
- const urlPath = originUrlPath.endsWith("/") ? `${originUrlPath}*` : `${originUrlPath}/*`;
30
- router.add("*", urlPath, route);
31
- }
32
- return router;
33
- }
34
- function matchRoute(router, pathname, entryName) {
35
- const matched = router.match("*", pathname);
36
- if (entryName && matched[0].length > 1) {
37
- const matches = matched[0];
38
- const result = matches.find(([route]) => route.entryName === entryName);
39
- return result || [];
40
- } else {
41
- const result = matched[0][0];
42
- return result || [];
43
- }
44
- }
45
- function getHeadersWithoutCookie(headers) {
46
- const _headers = {
47
- ...headers,
48
- cookie: void 0
49
- };
50
- delete _headers.cookie;
51
- return _headers;
52
- }
53
- async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR, forceCSRMap, config, onFallback }) {
54
- const router = getRouter(routes);
55
- return async (req, { logger, reporter, metrics, monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext }) => {
56
- const forMatchpathname = matchPathname !== null && matchPathname !== void 0 ? matchPathname : getPathname(req);
57
- const [routeInfo, params] = matchRoute(router, forMatchpathname, matchEntryName);
58
- const framework = cutNameByHyphen(metaName || "modern-js");
59
- const fallbackHeader = `x-${framework}-ssr-fallback`;
60
- let fallbackReason = null;
61
- const fallbackWrapper = async (reason, error) => {
62
- fallbackReason = reason;
63
- return onFallback === null || onFallback === void 0 ? void 0 : onFallback(reason, {
64
- logger,
65
- reporter,
66
- metrics
67
- }, error);
68
- };
69
- if (!routeInfo) {
70
- return new Response(createErrorHtml(404), {
71
- status: 404,
72
- headers: {
73
- "content-type": "text/html; charset=UTF-8"
74
- }
75
- });
76
- }
77
- const html = templates[uniqueKeyByRoute(routeInfo)];
78
- if (!html) {
79
- return new Response(createErrorHtml(404), {
80
- status: 404,
81
- headers: {
82
- "content-type": "text/html; charset=UTF-8"
83
- }
84
- });
85
- }
86
- var _forceCSRMap_get;
87
- const finalForceCSR = routeInfo.entryName ? (_forceCSRMap_get = forceCSRMap === null || forceCSRMap === void 0 ? void 0 : forceCSRMap.get(routeInfo.entryName)) !== null && _forceCSRMap_get !== void 0 ? _forceCSRMap_get : forceCSR : forceCSR;
88
- const renderMode = await getRenderMode(req, fallbackHeader, routeInfo.isSSR, finalForceCSR, nodeReq, fallbackWrapper);
89
- const headerData = parseHeaders(req);
90
- const onError = (e, key) => {
91
- monitors === null || monitors === void 0 ? void 0 : monitors.error(`SSR Error - ${key || (e instanceof Error ? e.name : e)}, error = %s, req.url = %s, req.headers = %o`, e instanceof Error ? e.stack || e.message : e, forMatchpathname, getHeadersWithoutCookie(headerData));
92
- };
93
- const onTiming = (name, dur) => {
94
- monitors === null || monitors === void 0 ? void 0 : monitors.timing(name, dur, "SSR");
95
- };
96
- const renderOptions = {
97
- pwd,
98
- html,
99
- routeInfo,
100
- staticGenerate: staticGenerate || false,
101
- config,
102
- nodeReq,
103
- cacheConfig,
104
- reporter,
105
- serverRoutes: routes,
106
- params,
107
- logger,
108
- metrics,
109
- monitors,
110
- locals,
111
- rscClientManifest,
112
- rscSSRManifest,
113
- rscServerManifest,
114
- serverManifest,
115
- loaderContext: loaderContext || /* @__PURE__ */ new Map(),
116
- onError,
117
- onTiming
118
- };
119
- if (fallbackReason) {
120
- renderOptions.html = injectFallbackReasonToHtml({
121
- html: renderOptions.html,
122
- reason: fallbackReason,
123
- framework
124
- });
125
- }
126
- let response;
127
- switch (renderMode) {
128
- case "data":
129
- response = await dataHandler(req, renderOptions) || await renderHandler(req, renderOptions, "ssr", fallbackWrapper, framework);
130
- break;
131
- case "rsc-tree":
132
- response = await renderRscHandler(req, renderOptions);
133
- break;
134
- case "rsc-action":
135
- response = await serverActionHandler(req, renderOptions);
136
- break;
137
- case "ssr":
138
- case "csr":
139
- response = await renderHandler(req, renderOptions, renderMode, fallbackWrapper, framework);
140
- break;
141
- default:
142
- throw new Error(`Unknown render mode: ${renderMode}`);
143
- }
144
- if (fallbackReason) {
145
- response.headers.set(fallbackHeader, `1;reason=${fallbackReason}`);
146
- }
147
- return response;
148
- };
149
- }
150
- async function renderHandler(request, options, mode, fallbackWrapper, framework) {
151
- var _options_config_server;
152
- let response = null;
153
- const { serverManifest } = options;
154
- const ssrByRouteIds = (_options_config_server = options.config.server) === null || _options_config_server === void 0 ? void 0 : _options_config_server.ssrByRouteIds;
155
- const runtimeEnv = getRuntimeEnv();
156
- if (serverManifest.nestedRoutesJson && ssrByRouteIds && (ssrByRouteIds === null || ssrByRouteIds === void 0 ? void 0 : ssrByRouteIds.length) > 0 && runtimeEnv === "node") {
157
- const { nestedRoutesJson } = serverManifest;
158
- const routes = nestedRoutesJson === null || nestedRoutesJson === void 0 ? void 0 : nestedRoutesJson[options.routeInfo.entryName];
159
- if (routes) {
160
- const urlPath = "node:url";
161
- const { pathToFileURL } = await import(urlPath);
162
- const { matchRoutes } = await import(pathToFileURL(require.resolve("@modern-js/runtime-utils/remix-router")).href);
163
- const url = new URL(request.url);
164
- const matchedRoutes = matchRoutes(routes, url.pathname, options.routeInfo.urlPath);
165
- if (!matchedRoutes) {
166
- response = await csrRender(request, options);
167
- } else {
168
- var _lastMatch_route;
169
- const lastMatch = matchedRoutes[matchedRoutes.length - 1];
170
- if (!(lastMatch === null || lastMatch === void 0 ? void 0 : (_lastMatch_route = lastMatch.route) === null || _lastMatch_route === void 0 ? void 0 : _lastMatch_route.id) || !ssrByRouteIds.includes(lastMatch.route.id)) {
171
- response = await csrRender(request, options);
172
- }
173
- }
174
- }
175
- }
176
- if (mode === "ssr" && !response) {
177
- try {
178
- response = await ssrRender(request, options);
179
- } catch (e) {
180
- options.onError(e, ErrorDigest.ERENDER);
181
- await fallbackWrapper("error", e);
182
- response = await csrRender(request, {
183
- ...options,
184
- html: injectFallbackReasonToHtml({
185
- html: options.html,
186
- reason: "error",
187
- framework
188
- })
189
- });
190
- }
191
- } else {
192
- response = await csrRender(request, options);
193
- }
194
- const { routeInfo } = options;
195
- applyExtendHeaders(response, routeInfo);
196
- return response;
197
- function applyExtendHeaders(r, route) {
198
- Object.entries(route.responseHeaders || {}).forEach(([k, v]) => {
199
- r.headers.set(k, v);
200
- });
201
- }
202
- }
203
- async function getRenderMode(req, fallbackHeader, isSSR, forceCSR, nodeReq, onFallback) {
204
- const query = parseQuery(req);
205
- if (req.headers.get("x-rsc-action")) {
206
- return "rsc-action";
207
- }
208
- if (req.headers.get("x-rsc-tree")) {
209
- return "rsc-tree";
210
- }
211
- if (isSSR) {
212
- if (query.__loader) {
213
- return "data";
214
- }
215
- const fallbackHeaderValue = req.headers.get(fallbackHeader) || (nodeReq === null || nodeReq === void 0 ? void 0 : nodeReq.headers[fallbackHeader]);
216
- if (forceCSR && (query.csr || fallbackHeaderValue)) {
217
- if (query.csr) {
218
- await (onFallback === null || onFallback === void 0 ? void 0 : onFallback("query"));
219
- } else {
220
- var _fallbackHeaderValue_split_;
221
- const reason = fallbackHeaderValue === null || fallbackHeaderValue === void 0 ? void 0 : (_fallbackHeaderValue_split_ = fallbackHeaderValue.split(";")[1]) === null || _fallbackHeaderValue_split_ === void 0 ? void 0 : _fallbackHeaderValue_split_.split("=")[1];
222
- await (onFallback === null || onFallback === void 0 ? void 0 : onFallback(reason ? `header,${reason}` : "header"));
223
- }
224
- return "csr";
225
- }
226
- return "ssr";
227
- } else {
228
- return "csr";
229
- }
230
- }
231
- function injectFallbackReasonToHtml({ html, reason, framework }) {
232
- const tag = `<script id="__${framework}_ssr_fallback_reason__" type="application/json">${JSON.stringify({
233
- reason
234
- })}</script>`;
235
- return html.replace(/<\/head>/, `${tag}</head>`);
236
- }
237
- async function csrRender(request, options) {
238
- const { html, rscClientManifest } = options;
239
- if (!rscClientManifest || process.env.MODERN_DISABLE_INJECT_RSC_DATA) {
240
- return new Response(html, {
241
- status: 200,
242
- headers: new Headers({
243
- "content-type": "text/html; charset=UTF-8",
244
- [X_MODERNJS_RENDER]: "client"
245
- })
246
- });
247
- } else {
248
- return csrRscRender(request, options);
249
- }
250
- }
251
- export {
252
- createRender
253
- };
@@ -1,52 +0,0 @@
1
- import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
2
- import { createRequestHandlerConfig } from "./utils";
3
- const renderRscHandler = async (req, options) => {
4
- var _serverManifest_renderBundles;
5
- const { routeInfo, serverManifest, rscSSRManifest, rscClientManifest, rscServerManifest, locals, params, loaderContext, reporter, monitors, logger, metrics, onError, onTiming, staticGenerate } = options;
6
- const serverBundle = serverManifest === null || serverManifest === void 0 ? void 0 : (_serverManifest_renderBundles = serverManifest.renderBundles) === null || _serverManifest_renderBundles === void 0 ? void 0 : _serverManifest_renderBundles[routeInfo.entryName || MAIN_ENTRY_NAME];
7
- const loadableStats = serverManifest.loadableStats || {};
8
- const routeManifest = serverManifest.routeManifest || {};
9
- const config = createRequestHandlerConfig(options.config);
10
- const requestHandlerOptions = {
11
- resource: {
12
- route: routeInfo,
13
- loadableStats,
14
- routeManifest,
15
- entryName: routeInfo.entryName || MAIN_ENTRY_NAME
16
- },
17
- config,
18
- params,
19
- loaderContext,
20
- rscSSRManifest,
21
- rscClientManifest,
22
- rscServerManifest,
23
- locals,
24
- reporter,
25
- staticGenerate,
26
- logger,
27
- metrics,
28
- monitors,
29
- onError,
30
- onTiming
31
- };
32
- if (!serverBundle) {
33
- return new Response("Cannot find server bundle for RSC", {
34
- status: 500
35
- });
36
- }
37
- const rscPayloadHandler = await serverBundle.rscPayloadHandler;
38
- if (!rscPayloadHandler) {
39
- return new Response("Cannot find request handler for RSC", {
40
- status: 500
41
- });
42
- }
43
- if (!rscClientManifest) {
44
- return new Response("Cannot find rsc client manifest", {
45
- status: 500
46
- });
47
- }
48
- return rscPayloadHandler(req, requestHandlerOptions);
49
- };
50
- export {
51
- renderRscHandler
52
- };
@@ -1,27 +0,0 @@
1
- import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
2
- const serverActionHandler = async (req, { serverManifest, routeInfo, rscClientManifest }) => {
3
- var _serverManifest_renderBundles;
4
- const serverBundle = serverManifest === null || serverManifest === void 0 ? void 0 : (_serverManifest_renderBundles = serverManifest.renderBundles) === null || _serverManifest_renderBundles === void 0 ? void 0 : _serverManifest_renderBundles[routeInfo.entryName || MAIN_ENTRY_NAME];
5
- if (!serverBundle) {
6
- return new Response("Cannot find server bundle for server action", {
7
- status: 500
8
- });
9
- }
10
- const { handleAction } = serverBundle;
11
- if (!handleAction) {
12
- return new Response("Cannot find server action handler", {
13
- status: 500
14
- });
15
- }
16
- if (!rscClientManifest) {
17
- return new Response("Cannot find rsc client manifest", {
18
- status: 500
19
- });
20
- }
21
- return handleAction(req, {
22
- clientManifest: rscClientManifest
23
- });
24
- };
25
- export {
26
- serverActionHandler
27
- };
@@ -1,190 +0,0 @@
1
- import { createMemoryStorage } from "@modern-js/runtime-utils/storer";
2
- import { X_RENDER_CACHE } from "../../constants";
3
- import { createTransformStream, getPathname } from "../../utils";
4
- const removeTailSlash = (s) => s.replace(/\/+$/, "");
5
- const ZERO_RENDER_LEVEL = /"renderLevel":0/;
6
- const NO_SSR_CACHE = /<meta\s+[^>]*name=["']no-ssr-cache["'][^>]*>/i;
7
- async function processCache({ request, key, requestHandler, requestHandlerOptions, ttl, container, cacheStatus }) {
8
- const response = await requestHandler(request, requestHandlerOptions);
9
- const { onError } = requestHandlerOptions;
10
- const nonCacheableStatusCodes = [
11
- 204,
12
- 305,
13
- 404,
14
- 405,
15
- 500,
16
- 501,
17
- 502,
18
- 503,
19
- 504
20
- ];
21
- if (nonCacheableStatusCodes.includes(response.status)) {
22
- return response;
23
- }
24
- const decoder = new TextDecoder();
25
- if (response.body) {
26
- const stream = createTransformStream();
27
- const reader = response.body.getReader();
28
- const writer = stream.writable.getWriter();
29
- let html = "";
30
- const push = () => reader.read().then(({ done, value }) => {
31
- if (done) {
32
- const match = ZERO_RENDER_LEVEL.test(html) || NO_SSR_CACHE.test(html);
33
- if (match) {
34
- writer.close();
35
- return;
36
- }
37
- const current = Date.now();
38
- const cache = {
39
- val: html,
40
- cursor: current
41
- };
42
- container.set(key, JSON.stringify(cache), {
43
- ttl
44
- }).catch(() => {
45
- if (onError) {
46
- onError(`[render-cache] set cache failed, key: ${key}, value: ${JSON.stringify(cache)}`);
47
- } else {
48
- console.error(`[render-cache] set cache failed, key: ${key}, value: ${JSON.stringify(cache)}`);
49
- }
50
- });
51
- writer.close();
52
- return;
53
- }
54
- const content = decoder.decode(value);
55
- html += content;
56
- writer.write(value);
57
- push();
58
- });
59
- push();
60
- cacheStatus && response.headers.set(X_RENDER_CACHE, cacheStatus);
61
- return new Response(stream.readable, {
62
- status: response.status,
63
- headers: response.headers
64
- });
65
- }
66
- return response;
67
- }
68
- const CACHE_NAMESPACE = "__ssr__cache";
69
- const storage = createMemoryStorage(CACHE_NAMESPACE);
70
- function computedKey(req, cacheControl) {
71
- const pathname = getPathname(req);
72
- const { customKey } = cacheControl;
73
- const defaultKey = pathname === "/" ? pathname : removeTailSlash(pathname);
74
- if (customKey) {
75
- if (typeof customKey === "string") {
76
- return customKey;
77
- } else {
78
- return customKey(defaultKey);
79
- }
80
- } else {
81
- return defaultKey;
82
- }
83
- }
84
- function shouldUseCache(request) {
85
- const url = new URL(request.url);
86
- const hasRSCAction = request.headers.has("x-rsc-action");
87
- const hasRSCTree = request.headers.has("x-rsc-tree");
88
- const hasLoaderQuery = url.searchParams.has("__loader");
89
- return !(hasRSCAction || hasRSCTree || hasLoaderQuery);
90
- }
91
- function matchCacheControl(cacheOption, req) {
92
- if (!cacheOption || !req) {
93
- return void 0;
94
- } else if (isCacheControl(cacheOption)) {
95
- return cacheOption;
96
- } else if (isCacheOptionProvider(cacheOption)) {
97
- return cacheOption(req);
98
- } else {
99
- const url = req.url;
100
- const options = Object.entries(cacheOption);
101
- for (const [key, option] of options) {
102
- if (key === "*" || new RegExp(key).test(url)) {
103
- if (typeof option === "function") {
104
- return option(req);
105
- } else {
106
- return option;
107
- }
108
- }
109
- }
110
- return void 0;
111
- }
112
- function isCacheOptionProvider(option) {
113
- return typeof option === "function";
114
- }
115
- function isCacheControl(option) {
116
- return typeof option === "object" && option !== null && "maxAge" in option;
117
- }
118
- }
119
- async function getCacheResult(request, options) {
120
- const { cacheControl, container = storage, requestHandler, requestHandlerOptions } = options;
121
- const { onError } = requestHandlerOptions;
122
- const key = computedKey(request, cacheControl);
123
- let value;
124
- try {
125
- value = await container.get(key);
126
- } catch (_) {
127
- if (onError) {
128
- onError(`[render-cache] get cache failed, key: ${key}`);
129
- } else {
130
- console.error(`[render-cache] get cache failed, key: ${key}`);
131
- }
132
- value = void 0;
133
- }
134
- const { maxAge, staleWhileRevalidate } = cacheControl;
135
- const ttl = maxAge + staleWhileRevalidate;
136
- if (value) {
137
- const cache = JSON.parse(value);
138
- const interval = Date.now() - cache.cursor;
139
- if (interval <= maxAge) {
140
- const cacheStatus = "hit";
141
- return new Response(cache.val, {
142
- headers: {
143
- [X_RENDER_CACHE]: cacheStatus
144
- }
145
- });
146
- } else if (interval <= staleWhileRevalidate + maxAge) {
147
- processCache({
148
- key,
149
- request,
150
- requestHandler,
151
- requestHandlerOptions,
152
- ttl,
153
- container
154
- }).then(async (response) => {
155
- await response.text();
156
- });
157
- const cacheStatus = "stale";
158
- return new Response(cache.val, {
159
- headers: {
160
- [X_RENDER_CACHE]: cacheStatus
161
- }
162
- });
163
- } else {
164
- return processCache({
165
- key,
166
- request,
167
- requestHandler,
168
- requestHandlerOptions,
169
- ttl,
170
- container,
171
- cacheStatus: "expired"
172
- });
173
- }
174
- } else {
175
- return processCache({
176
- key,
177
- request,
178
- requestHandler,
179
- requestHandlerOptions,
180
- ttl,
181
- container,
182
- cacheStatus: "miss"
183
- });
184
- }
185
- }
186
- export {
187
- getCacheResult,
188
- matchCacheControl,
189
- shouldUseCache
190
- };
@@ -1,77 +0,0 @@
1
- import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
2
- import { X_MODERNJS_RENDER } from "../../constants";
3
- import { getPathname, parseHeaders } from "../../utils";
4
- import { getCacheResult, matchCacheControl, shouldUseCache } from "./ssrCache";
5
- import { createRequestHandlerConfig } from "./utils";
6
- const SERVER_RUNTIME_ENTRY = "requestHandler";
7
- async function ssrRender(request, { routeInfo, html, config: userConfig, staticGenerate, nodeReq, serverManifest, rscSSRManifest, rscClientManifest, rscServerManifest, locals, params, loaderContext, reporter, monitors, cacheConfig, logger, metrics, onError, onTiming }) {
8
- var _serverManifest_renderBundles;
9
- const { entryName } = routeInfo;
10
- const loadableStats = serverManifest.loadableStats || {};
11
- const routeManifest = serverManifest.routeManifest || {};
12
- const headers = parseHeaders(request);
13
- if (nodeReq) {
14
- for (const key in nodeReq.headers) {
15
- if (!headers[key]) {
16
- headers[key] = nodeReq.headers[key];
17
- }
18
- }
19
- }
20
- const renderBundle = (_serverManifest_renderBundles = serverManifest.renderBundles) === null || _serverManifest_renderBundles === void 0 ? void 0 : _serverManifest_renderBundles[entryName || MAIN_ENTRY_NAME];
21
- if (!renderBundle) {
22
- throw new Error(`Can't find renderBundle ${entryName || MAIN_ENTRY_NAME}`);
23
- }
24
- const requestHandler = await renderBundle[SERVER_RUNTIME_ENTRY];
25
- const config = createRequestHandlerConfig(userConfig);
26
- const requestHandlerOptions = {
27
- resource: {
28
- route: routeInfo,
29
- loadableStats,
30
- routeManifest,
31
- htmlTemplate: html,
32
- entryName: entryName || MAIN_ENTRY_NAME
33
- },
34
- params,
35
- loaderContext,
36
- config,
37
- rscSSRManifest,
38
- rscClientManifest,
39
- rscServerManifest,
40
- locals,
41
- reporter,
42
- staticGenerate,
43
- logger,
44
- metrics,
45
- monitors,
46
- onError,
47
- onTiming
48
- };
49
- const cacheControl = await matchCacheControl(cacheConfig === null || cacheConfig === void 0 ? void 0 : cacheConfig.strategy, nodeReq || new IncomingMessgeProxy(request));
50
- let response;
51
- if (cacheControl && shouldUseCache(request)) {
52
- response = await getCacheResult(request, {
53
- cacheControl,
54
- container: cacheConfig === null || cacheConfig === void 0 ? void 0 : cacheConfig.container,
55
- requestHandler,
56
- requestHandlerOptions
57
- });
58
- } else {
59
- response = await requestHandler(request, requestHandlerOptions);
60
- }
61
- response.headers.set(X_MODERNJS_RENDER, "server");
62
- response.headers.set("content-type", "text/html; charset=UTF-8");
63
- return response;
64
- }
65
- class IncomingMessgeProxy {
66
- constructor(req) {
67
- this.headers = {};
68
- req.headers.forEach((value, key) => {
69
- this.headers[key] = value;
70
- });
71
- this.method = req.method;
72
- this.url = getPathname(req);
73
- }
74
- }
75
- export {
76
- ssrRender
77
- };
@@ -1,17 +0,0 @@
1
- function createRequestHandlerConfig(userConfig) {
2
- const { output, server, security, html, source } = userConfig;
3
- return {
4
- ssr: server === null || server === void 0 ? void 0 : server.ssr,
5
- ssrByEntries: server === null || server === void 0 ? void 0 : server.ssrByEntries,
6
- nonce: security === null || security === void 0 ? void 0 : security.nonce,
7
- enableInlineScripts: output === null || output === void 0 ? void 0 : output.enableInlineScripts,
8
- enableInlineStyles: output === null || output === void 0 ? void 0 : output.enableInlineStyles,
9
- crossorigin: html === null || html === void 0 ? void 0 : html.crossorigin,
10
- scriptLoading: html === null || html === void 0 ? void 0 : html.scriptLoading,
11
- useJsonScript: server === null || server === void 0 ? void 0 : server.useJsonScript,
12
- enableAsyncEntry: source === null || source === void 0 ? void 0 : source.enableAsyncEntry
13
- };
14
- }
15
- export {
16
- createRequestHandlerConfig
17
- };
@@ -1,41 +0,0 @@
1
- import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
2
- import { sortRoutes } from "../utils";
3
- function injectRoute(route) {
4
- return async (c, next) => {
5
- if (route && !c.get("route")) {
6
- c.set("route", route);
7
- }
8
- await next();
9
- };
10
- }
11
- function getPageRoutes(routes) {
12
- return routes.filter((route) => route.entryName).sort(sortRoutes);
13
- }
14
- const injectRoutePlugin = () => ({
15
- name: "@modern-js/plugin-inject-route",
16
- setup(api) {
17
- return {
18
- async prepare() {
19
- const { middlewares, routes } = api.useAppContext();
20
- if (!routes) {
21
- return;
22
- }
23
- const pageRoutes = getPageRoutes(routes);
24
- for (const route of pageRoutes) {
25
- const { urlPath: originUrlPath, entryName = MAIN_ENTRY_NAME } = route;
26
- const urlPath = originUrlPath.endsWith("/") ? `${originUrlPath}*` : `${originUrlPath}/*`;
27
- middlewares.push({
28
- name: "inject-route-info",
29
- path: urlPath,
30
- handler: injectRoute({
31
- entryName
32
- })
33
- });
34
- }
35
- }
36
- };
37
- }
38
- });
39
- export {
40
- injectRoutePlugin
41
- };