@modern-js/runtime 2.54.6 → 2.56.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 (309) hide show
  1. package/dist/cjs/{ssr/serverRender/renderToString/index.js → cli/alias.js} +29 -18
  2. package/dist/cjs/cli/code.js +124 -0
  3. package/dist/cjs/cli/constants.js +23 -2
  4. package/dist/cjs/cli/index.js +91 -17
  5. package/dist/cjs/cli/ssr/index.js +137 -0
  6. package/dist/cjs/cli/template.js +101 -0
  7. package/dist/cjs/cli/template.server.js +71 -0
  8. package/dist/cjs/core/browser/hydrate.js +116 -0
  9. package/dist/cjs/core/browser/index.js +142 -0
  10. package/dist/cjs/core/compatible.js +39 -74
  11. package/dist/cjs/{ssr/serverRender/types.js → core/constants.js} +3 -3
  12. package/dist/cjs/core/context/index.js +39 -2
  13. package/dist/cjs/core/context/runtime.js +3 -3
  14. package/dist/cjs/core/loader/useLoader.js +2 -2
  15. package/dist/cjs/core/plugin/base.js +0 -4
  16. package/dist/cjs/core/plugin/index.js +6 -0
  17. package/dist/cjs/core/react/index.js +51 -0
  18. package/dist/cjs/{ssr/serverRender → core/server}/helmet.js +11 -2
  19. package/dist/cjs/core/server/index.js +38 -0
  20. package/dist/cjs/core/server/requestHandler.js +156 -0
  21. package/dist/cjs/core/server/server.js +34 -0
  22. package/dist/cjs/{ssr/serverRender/renderToStream/buildTemplate.share.js → core/server/shared.js} +7 -10
  23. package/dist/cjs/core/server/stream/afterTemplate.js +80 -0
  24. package/dist/cjs/{ssr/serverRender/renderToStream/bulidTemplate.before.js → core/server/stream/beforeTemplate.js} +11 -12
  25. package/dist/cjs/core/server/stream/createReadableStream.js +124 -0
  26. package/dist/cjs/core/server/stream/createReadableStream.worker.js +105 -0
  27. package/dist/cjs/core/server/stream/index.js +30 -0
  28. package/dist/cjs/core/server/stream/shared.js +112 -0
  29. package/dist/cjs/{ssr/serverRender/renderToStream → core/server/stream}/template.js +6 -10
  30. package/dist/cjs/core/server/string/index.js +152 -0
  31. package/dist/cjs/{ssr/serverRender/renderToString → core/server/string}/loadable.js +9 -12
  32. package/dist/cjs/core/server/string/prefetch.js +112 -0
  33. package/dist/cjs/core/server/string/ssrData.js +100 -0
  34. package/dist/cjs/core/server/string/styledComponent.js +53 -0
  35. package/dist/cjs/core/server/string/types.js +16 -0
  36. package/dist/cjs/core/server/tracer.js +60 -0
  37. package/dist/cjs/{ssr/serverRender → core/server}/utils.js +48 -2
  38. package/dist/cjs/{ssr/serverRender/renderToString/styledComponent.js → core/utils/merge.js} +28 -19
  39. package/dist/cjs/router/cli/code/index.js +12 -8
  40. package/dist/cjs/router/cli/code/templates.js +58 -3
  41. package/dist/cjs/router/cli/constants.js +6 -0
  42. package/dist/cjs/router/cli/entry.js +16 -17
  43. package/dist/cjs/router/cli/handler.js +22 -5
  44. package/dist/cjs/router/cli/index.js +29 -56
  45. package/dist/cjs/router/runtime/PrefetchLink.js +1 -1
  46. package/dist/cjs/router/runtime/index.js +2 -0
  47. package/dist/cjs/router/runtime/plugin.js +13 -40
  48. package/dist/cjs/router/runtime/plugin.node.js +24 -46
  49. package/dist/cjs/state/cli/index.js +7 -35
  50. package/dist/cjs/state/runtime/plugin.js +6 -15
  51. package/dist/esm/cli/alias.js +30 -0
  52. package/dist/esm/cli/code.js +131 -0
  53. package/dist/esm/cli/constants.js +15 -1
  54. package/dist/esm/cli/index.js +110 -18
  55. package/dist/esm/{ssr/cli → cli/ssr}/babel-plugin-ssr-loader-id.js +1 -1
  56. package/dist/esm/cli/ssr/index.js +127 -0
  57. package/dist/esm/{ssr/cli → cli/ssr}/loadable-bundler-plugin.js +1 -1
  58. package/dist/esm/cli/template.js +53 -0
  59. package/dist/esm/cli/template.server.js +26 -0
  60. package/dist/esm/core/browser/hydrate.js +88 -0
  61. package/dist/esm/core/browser/index.js +242 -0
  62. package/dist/esm/core/compatible.js +48 -90
  63. package/dist/esm/core/context/index.js +32 -1
  64. package/dist/esm/core/context/runtime.js +3 -2
  65. package/dist/esm/core/loader/useLoader.js +2 -2
  66. package/dist/esm/core/plugin/base.js +0 -4
  67. package/dist/esm/core/plugin/index.js +10 -0
  68. package/dist/esm/core/react/index.js +31 -0
  69. package/dist/esm/{ssr/serverRender → core/server}/helmet.js +10 -2
  70. package/dist/esm/core/server/index.js +16 -0
  71. package/dist/esm/core/server/react/prerender/type.js +0 -0
  72. package/dist/esm/core/server/requestHandler.js +181 -0
  73. package/dist/esm/core/server/server.js +8 -0
  74. package/dist/esm/core/server/shared.js +10 -0
  75. package/dist/esm/core/server/stream/afterTemplate.js +60 -0
  76. package/dist/esm/{ssr/serverRender/renderToStream/bulidTemplate.before.js → core/server/stream/beforeTemplate.js} +10 -11
  77. package/dist/esm/{ssr/serverRender/renderToStream/renderToPipe.js → core/server/stream/createReadableStream.js} +43 -38
  78. package/dist/esm/core/server/stream/createReadableStream.worker.js +142 -0
  79. package/dist/esm/core/server/stream/index.js +6 -0
  80. package/dist/esm/core/server/stream/shared.js +102 -0
  81. package/dist/esm/core/server/stream/template.js +42 -0
  82. package/dist/esm/core/server/string/index.js +219 -0
  83. package/dist/esm/{ssr/serverRender/renderToString → core/server/string}/loadable.js +10 -13
  84. package/dist/esm/{ssr → core/server/string}/prefetch.js +28 -22
  85. package/dist/esm/core/server/string/ssrData.js +83 -0
  86. package/dist/esm/core/server/string/styledComponent.js +34 -0
  87. package/dist/esm/core/server/string/types.js +0 -0
  88. package/dist/esm/core/server/tracer.js +34 -0
  89. package/dist/esm/core/server/utils.js +83 -0
  90. package/dist/esm/core/utils/merge.js +32 -0
  91. package/dist/esm/router/cli/code/index.js +13 -10
  92. package/dist/esm/router/cli/code/templates.js +100 -7
  93. package/dist/esm/router/cli/constants.js +4 -0
  94. package/dist/esm/router/cli/entry.js +19 -19
  95. package/dist/esm/router/cli/handler.js +70 -8
  96. package/dist/esm/router/cli/index.js +52 -65
  97. package/dist/esm/router/runtime/PrefetchLink.js +1 -1
  98. package/dist/esm/router/runtime/index.js +1 -0
  99. package/dist/esm/router/runtime/plugin.js +12 -20
  100. package/dist/esm/router/runtime/plugin.node.js +26 -82
  101. package/dist/esm/state/cli/index.js +9 -38
  102. package/dist/esm/state/runtime/plugin.js +5 -5
  103. package/dist/esm-node/cli/alias.js +28 -0
  104. package/dist/esm-node/cli/code.js +90 -0
  105. package/dist/esm-node/cli/constants.js +15 -1
  106. package/dist/esm-node/cli/index.js +83 -13
  107. package/dist/esm-node/{ssr/cli → cli/ssr}/babel-plugin-ssr-loader-id.js +1 -1
  108. package/dist/esm-node/cli/ssr/index.js +103 -0
  109. package/dist/esm-node/{ssr/cli → cli/ssr}/loadable-bundler-plugin.js +1 -1
  110. package/dist/esm-node/cli/template.js +64 -0
  111. package/dist/esm-node/cli/template.server.js +47 -0
  112. package/dist/esm-node/core/browser/hydrate.js +81 -0
  113. package/dist/esm-node/core/browser/index.js +108 -0
  114. package/dist/esm-node/core/compatible.js +39 -74
  115. package/dist/esm-node/core/context/index.js +32 -1
  116. package/dist/esm-node/core/context/runtime.js +3 -3
  117. package/dist/esm-node/core/loader/useLoader.js +2 -2
  118. package/dist/esm-node/core/plugin/base.js +0 -4
  119. package/dist/esm-node/core/plugin/index.js +5 -0
  120. package/dist/esm-node/core/react/index.js +27 -0
  121. package/dist/esm-node/{ssr/serverRender → core/server}/helmet.js +6 -2
  122. package/dist/esm-node/core/server/index.js +12 -0
  123. package/dist/esm-node/core/server/requestHandler.js +132 -0
  124. package/dist/esm-node/core/server/server.js +8 -0
  125. package/dist/esm-node/core/server/shared.js +6 -0
  126. package/dist/esm-node/core/server/stream/afterTemplate.js +56 -0
  127. package/dist/esm-node/{ssr/serverRender/renderToStream/bulidTemplate.before.js → core/server/stream/beforeTemplate.js} +8 -9
  128. package/dist/esm-node/{ssr/serverRender/renderToStream/renderToPipe.js → core/server/stream/createReadableStream.js} +41 -35
  129. package/dist/esm-node/core/server/stream/createReadableStream.worker.js +71 -0
  130. package/dist/esm-node/core/server/stream/index.js +6 -0
  131. package/dist/esm-node/core/server/stream/shared.js +75 -0
  132. package/dist/esm-node/core/server/stream/template.js +15 -0
  133. package/dist/esm-node/core/server/string/index.js +118 -0
  134. package/dist/esm-node/{ssr/serverRender/renderToString → core/server/string}/loadable.js +8 -11
  135. package/dist/esm-node/core/server/string/prefetch.js +78 -0
  136. package/dist/esm-node/core/server/string/ssrData.js +76 -0
  137. package/dist/esm-node/core/server/string/styledComponent.js +29 -0
  138. package/dist/esm-node/core/server/tracer.js +33 -0
  139. package/dist/esm-node/core/server/utils.js +60 -0
  140. package/dist/esm-node/core/utils/merge.js +29 -0
  141. package/dist/esm-node/router/cli/code/index.js +10 -7
  142. package/dist/esm-node/router/cli/code/templates.js +60 -6
  143. package/dist/esm-node/router/cli/constants.js +4 -0
  144. package/dist/esm-node/router/cli/entry.js +16 -17
  145. package/dist/esm-node/router/cli/handler.js +21 -5
  146. package/dist/esm-node/router/cli/index.js +31 -58
  147. package/dist/esm-node/router/runtime/PrefetchLink.js +1 -1
  148. package/dist/esm-node/router/runtime/index.js +1 -0
  149. package/dist/esm-node/router/runtime/plugin.js +13 -30
  150. package/dist/esm-node/router/runtime/plugin.node.js +25 -46
  151. package/dist/esm-node/state/cli/index.js +8 -36
  152. package/dist/esm-node/state/runtime/plugin.js +5 -5
  153. package/dist/types/cli/alias.d.ts +7 -0
  154. package/dist/types/cli/code.d.ts +10 -0
  155. package/dist/types/cli/constants.d.ts +7 -0
  156. package/dist/types/cli/index.d.ts +8 -1
  157. package/dist/types/cli/template.d.ts +27 -0
  158. package/dist/types/cli/template.server.d.ts +15 -0
  159. package/dist/types/common.d.ts +9 -0
  160. package/dist/types/core/browser/hydrate.d.ts +5 -0
  161. package/dist/types/core/browser/index.d.ts +3 -0
  162. package/dist/types/core/config.d.ts +5 -6
  163. package/dist/types/core/constants.d.ts +5 -0
  164. package/dist/types/core/context/index.d.ts +34 -1
  165. package/dist/types/core/context/runtime.d.ts +2 -2
  166. package/dist/types/core/plugin/base.d.ts +3 -33
  167. package/dist/types/core/plugin/index.d.ts +2 -11
  168. package/dist/types/core/plugin/runner.d.ts +1 -11
  169. package/dist/types/core/react/index.d.ts +6 -0
  170. package/dist/types/core/server/helmet.d.ts +3 -0
  171. package/dist/types/core/server/index.d.ts +4 -0
  172. package/dist/types/core/server/requestHandler.d.ts +11 -0
  173. package/dist/types/core/server/server.d.ts +4 -0
  174. package/dist/types/core/server/shared.d.ts +9 -0
  175. package/dist/types/core/server/stream/afterTemplate.d.ts +12 -0
  176. package/dist/types/core/server/stream/beforeTemplate.d.ts +8 -0
  177. package/dist/types/core/server/stream/createReadableStream.d.ts +2 -0
  178. package/dist/types/core/server/stream/createReadableStream.worker.d.ts +2 -0
  179. package/dist/types/core/server/stream/index.d.ts +1 -0
  180. package/dist/types/core/server/stream/shared.d.ts +22 -0
  181. package/dist/types/core/server/stream/template.d.ts +9 -0
  182. package/dist/types/core/server/string/index.d.ts +2 -0
  183. package/dist/types/core/server/string/loadable.d.ts +35 -0
  184. package/dist/types/core/server/string/prefetch.d.ts +16 -0
  185. package/dist/types/core/server/string/ssrData.d.ts +18 -0
  186. package/dist/types/core/server/string/styledComponent.d.ts +11 -0
  187. package/dist/types/core/server/string/types.d.ts +12 -0
  188. package/dist/types/core/server/tracer.d.ts +21 -0
  189. package/dist/types/core/server/utils.d.ts +19 -0
  190. package/dist/types/core/types.d.ts +35 -1
  191. package/dist/types/core/utils/merge.d.ts +6 -0
  192. package/dist/types/index.d.ts +1 -1
  193. package/dist/types/router/cli/code/index.d.ts +3 -4
  194. package/dist/types/router/cli/code/templates.d.ts +9 -1
  195. package/dist/types/router/cli/constants.d.ts +2 -0
  196. package/dist/types/router/cli/handler.d.ts +1 -0
  197. package/dist/types/router/runtime/index.d.ts +1 -0
  198. package/dist/types/router/runtime/plugin.d.ts +1 -1
  199. package/dist/types/router/runtime/plugin.node.d.ts +1 -3
  200. package/dist/types/router/runtime/types.d.ts +1 -2
  201. package/dist/types/state/runtime/plugin.d.ts +2 -2
  202. package/package.json +52 -45
  203. package/types/router.d.ts +7 -2
  204. package/dist/cjs/ssr/cli/index.js +0 -200
  205. package/dist/cjs/ssr/index.js +0 -183
  206. package/dist/cjs/ssr/index.node.js +0 -86
  207. package/dist/cjs/ssr/prefetch.js +0 -92
  208. package/dist/cjs/ssr/serverRender/index.js +0 -39
  209. package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -74
  210. package/dist/cjs/ssr/serverRender/renderToStream/index.js +0 -74
  211. package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +0 -104
  212. package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +0 -108
  213. package/dist/cjs/ssr/serverRender/renderToString/buildHtml.js +0 -52
  214. package/dist/cjs/ssr/serverRender/renderToString/entry.js +0 -179
  215. package/dist/cjs/ssr/serverRender/renderToString/render.js +0 -61
  216. package/dist/cjs/ssr/serverRender/tracker.js +0 -113
  217. package/dist/cjs/ssr/utils.js +0 -94
  218. package/dist/esm/ssr/cli/index.js +0 -194
  219. package/dist/esm/ssr/index.js +0 -169
  220. package/dist/esm/ssr/index.node.js +0 -78
  221. package/dist/esm/ssr/serverRender/index.js +0 -55
  222. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -48
  223. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -12
  224. package/dist/esm/ssr/serverRender/renderToStream/index.js +0 -49
  225. package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +0 -164
  226. package/dist/esm/ssr/serverRender/renderToStream/template.js +0 -46
  227. package/dist/esm/ssr/serverRender/renderToString/buildHtml.js +0 -34
  228. package/dist/esm/ssr/serverRender/renderToString/entry.js +0 -257
  229. package/dist/esm/ssr/serverRender/renderToString/index.js +0 -34
  230. package/dist/esm/ssr/serverRender/renderToString/render.js +0 -55
  231. package/dist/esm/ssr/serverRender/renderToString/styledComponent.js +0 -25
  232. package/dist/esm/ssr/serverRender/tracker.js +0 -82
  233. package/dist/esm/ssr/serverRender/utils.js +0 -21
  234. package/dist/esm/ssr/utils.js +0 -59
  235. package/dist/esm-node/ssr/cli/index.js +0 -166
  236. package/dist/esm-node/ssr/index.js +0 -147
  237. package/dist/esm-node/ssr/index.node.js +0 -50
  238. package/dist/esm-node/ssr/prefetch.js +0 -72
  239. package/dist/esm-node/ssr/serverRender/index.js +0 -19
  240. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -50
  241. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -8
  242. package/dist/esm-node/ssr/serverRender/renderToStream/index.js +0 -40
  243. package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +0 -88
  244. package/dist/esm-node/ssr/serverRender/renderToStream/template.js +0 -19
  245. package/dist/esm-node/ssr/serverRender/renderToString/buildHtml.js +0 -24
  246. package/dist/esm-node/ssr/serverRender/renderToString/entry.js +0 -149
  247. package/dist/esm-node/ssr/serverRender/renderToString/index.js +0 -17
  248. package/dist/esm-node/ssr/serverRender/renderToString/render.js +0 -27
  249. package/dist/esm-node/ssr/serverRender/renderToString/styledComponent.js +0 -20
  250. package/dist/esm-node/ssr/serverRender/tracker.js +0 -87
  251. package/dist/esm-node/ssr/serverRender/utils.js +0 -17
  252. package/dist/esm-node/ssr/utils.js +0 -57
  253. package/dist/types/ssr/index.d.ts +0 -11
  254. package/dist/types/ssr/index.node.d.ts +0 -5
  255. package/dist/types/ssr/prefetch.d.ts +0 -16
  256. package/dist/types/ssr/serverRender/helmet.d.ts +0 -2
  257. package/dist/types/ssr/serverRender/index.d.ts +0 -2
  258. package/dist/types/ssr/serverRender/renderToStream/buildTemplate.after.d.ts +0 -7
  259. package/dist/types/ssr/serverRender/renderToStream/buildTemplate.share.d.ts +0 -3
  260. package/dist/types/ssr/serverRender/renderToStream/bulidTemplate.before.d.ts +0 -2
  261. package/dist/types/ssr/serverRender/renderToStream/index.d.ts +0 -3
  262. package/dist/types/ssr/serverRender/renderToStream/renderToPipe.d.ts +0 -7
  263. package/dist/types/ssr/serverRender/renderToStream/renderToPipe.worker.d.ts +0 -12
  264. package/dist/types/ssr/serverRender/renderToStream/template.d.ts +0 -6
  265. package/dist/types/ssr/serverRender/renderToString/buildHtml.d.ts +0 -6
  266. package/dist/types/ssr/serverRender/renderToString/entry.d.ts +0 -24
  267. package/dist/types/ssr/serverRender/renderToString/index.d.ts +0 -2
  268. package/dist/types/ssr/serverRender/renderToString/loadable.d.ts +0 -26
  269. package/dist/types/ssr/serverRender/renderToString/render.d.ts +0 -16
  270. package/dist/types/ssr/serverRender/renderToString/styledComponent.d.ts +0 -15
  271. package/dist/types/ssr/serverRender/tracker.d.ts +0 -20
  272. package/dist/types/ssr/serverRender/types.d.ts +0 -49
  273. package/dist/types/ssr/serverRender/utils.d.ts +0 -9
  274. package/dist/types/ssr/utils.d.ts +0 -10
  275. /package/dist/cjs/{ssr/cli → cli/ssr}/babel-plugin-ssr-loader-id.js +0 -0
  276. /package/dist/cjs/{ssr/cli → cli/ssr}/loadable-bundler-plugin.js +0 -0
  277. /package/dist/cjs/{ssr/react/withCallback/index.js → core/browser/withCallback.js} +0 -0
  278. /package/dist/cjs/{ssr/serverRender → core/server}/constants.js +0 -0
  279. /package/dist/cjs/{ssr → core/server}/react/index.js +0 -0
  280. /package/dist/cjs/{ssr → core/server}/react/nossr/index.js +0 -0
  281. /package/dist/cjs/{ssr → core/server}/react/prerender/index.js +0 -0
  282. /package/dist/cjs/{ssr → core/server}/react/prerender/type.js +0 -0
  283. /package/dist/cjs/{ssr → core/server}/react/prerender/util.js +0 -0
  284. /package/dist/esm/{ssr/react/withCallback/index.js → core/browser/withCallback.js} +0 -0
  285. /package/dist/esm/{ssr/serverRender/types.js → core/constants.js} +0 -0
  286. /package/dist/esm/{ssr/serverRender → core/server}/constants.js +0 -0
  287. /package/dist/esm/{ssr → core/server}/react/index.js +0 -0
  288. /package/dist/esm/{ssr → core/server}/react/nossr/index.js +0 -0
  289. /package/dist/esm/{ssr → core/server}/react/prerender/index.js +0 -0
  290. /package/dist/esm/{ssr → core/server}/react/prerender/util.js +0 -0
  291. /package/dist/esm-node/{ssr/react/withCallback/index.js → core/browser/withCallback.js} +0 -0
  292. /package/dist/esm-node/{ssr/serverRender/types.js → core/constants.js} +0 -0
  293. /package/dist/esm-node/{ssr/serverRender → core/server}/constants.js +0 -0
  294. /package/dist/esm-node/{ssr → core/server}/react/index.js +0 -0
  295. /package/dist/esm-node/{ssr → core/server}/react/nossr/index.js +0 -0
  296. /package/dist/esm-node/{ssr → core/server}/react/prerender/index.js +0 -0
  297. /package/dist/esm-node/{ssr → core/server}/react/prerender/type.js +0 -0
  298. /package/dist/esm-node/{ssr → core/server}/react/prerender/util.js +0 -0
  299. /package/dist/{esm/ssr/react/prerender/type.js → esm-node/core/server/string/types.js} +0 -0
  300. /package/dist/types/{ssr/cli → cli/ssr}/babel-plugin-ssr-loader-id.d.ts +0 -0
  301. /package/dist/types/{ssr/cli → cli/ssr}/index.d.ts +0 -0
  302. /package/dist/types/{ssr/cli → cli/ssr}/loadable-bundler-plugin.d.ts +0 -0
  303. /package/dist/types/{ssr/react/withCallback/index.d.ts → core/browser/withCallback.d.ts} +0 -0
  304. /package/dist/types/{ssr/serverRender → core/server}/constants.d.ts +0 -0
  305. /package/dist/types/{ssr → core/server}/react/index.d.ts +0 -0
  306. /package/dist/types/{ssr → core/server}/react/nossr/index.d.ts +0 -0
  307. /package/dist/types/{ssr → core/server}/react/prerender/index.d.ts +0 -0
  308. /package/dist/types/{ssr → core/server}/react/prerender/type.d.ts +0 -0
  309. /package/dist/types/{ssr → core/server}/react/prerender/util.d.ts +0 -0
@@ -1,57 +0,0 @@
1
- import cookieTool from "cookie";
2
- const isReact18 = () => process.env.IS_REACT18 === "true";
3
- const formatServer = (request) => {
4
- const { cookie = "", "user-agent": userAgent = "", referer } = request.headers || {};
5
- return {
6
- cookie,
7
- cookieMap: cookieTool.parse(cookie || "") || {},
8
- userAgent,
9
- referer,
10
- ...request
11
- };
12
- };
13
- const getQuery = () => window.location.search.substring(1).split("&").reduce((res, item) => {
14
- const [key, value] = item.split("=");
15
- if (key) {
16
- res[key] = value;
17
- }
18
- return res;
19
- }, {});
20
- const formatClient = (request) => {
21
- var _request_headers;
22
- return {
23
- params: request.params || {},
24
- host: request.host || location.host,
25
- pathname: request.pathname || location.pathname,
26
- headers: request.headers || {},
27
- cookieMap: cookieTool.parse(document.cookie || "") || {},
28
- cookie: document.cookie || "",
29
- userAgent: ((_request_headers = request.headers) === null || _request_headers === void 0 ? void 0 : _request_headers["user-agent"]) || navigator.userAgent,
30
- referer: request.referer || document.referrer,
31
- query: {
32
- ...getQuery(),
33
- ...request.query
34
- },
35
- url: location.href
36
- };
37
- };
38
- const mockResponse = () => {
39
- return {
40
- setHeader() {
41
- console.warn("response.setHeader() can only be used in the server side");
42
- },
43
- status() {
44
- console.warn("response.status() can only be used in the server side");
45
- },
46
- get locals() {
47
- console.warn("response.locals can only be used in the server side");
48
- return {};
49
- }
50
- };
51
- };
52
- export {
53
- formatClient,
54
- formatServer,
55
- isReact18,
56
- mockResponse
57
- };
@@ -1,11 +0,0 @@
1
- import type { Plugin } from '../core';
2
- import { RenderLevel, SSRServerContext, SSRPluginConfig } from './serverRender/types';
3
- declare module '../core' {
4
- interface SSRContainer {
5
- renderLevel: RenderLevel;
6
- context?: SSRServerContext;
7
- }
8
- }
9
- export declare const ssr: (config: SSRPluginConfig) => Plugin;
10
- export default ssr;
11
- export * from './react';
@@ -1,5 +0,0 @@
1
- import type { Plugin } from '../core';
2
- import type { SSRPluginConfig } from './serverRender/types';
3
- export declare const ssr: (config?: SSRPluginConfig) => Plugin;
4
- export default ssr;
5
- export * from './react';
@@ -1,16 +0,0 @@
1
- import { RuntimeContext } from '../core';
2
- import { LoaderResult } from '../core/loader/loaderManager';
3
- import { SSRPluginConfig } from './serverRender/types';
4
- import { SSRTracker } from './serverRender/tracker';
5
- declare const prefetch: (App: React.ComponentType<any>, context: RuntimeContext, config: SSRPluginConfig, tracker: SSRTracker) => Promise<{
6
- initialData: Record<string, unknown> | undefined;
7
- i18nData: any;
8
- loadersData?: undefined;
9
- storeState?: undefined;
10
- } | {
11
- loadersData: Record<string, LoaderResult>;
12
- initialData: Record<string, unknown> | undefined;
13
- i18nData: any;
14
- storeState: any;
15
- }>;
16
- export default prefetch;
@@ -1,2 +0,0 @@
1
- import { HelmetData } from 'react-helmet';
2
- export default function helmet(content: string, helmetData: HelmetData): string;
@@ -1,2 +0,0 @@
1
- import { ServerRenderOptions } from './types';
2
- export default function serverRender(options: ServerRenderOptions): Promise<any>;
@@ -1,7 +0,0 @@
1
- import { RenderLevel, RuntimeContext } from '../types';
2
- type BuildShellAfterTemplateOptions = {
3
- context: RuntimeContext;
4
- renderLevel: RenderLevel;
5
- };
6
- export declare function buildShellAfterTemplate(afterAppTemplate: string, options: BuildShellAfterTemplateOptions): Promise<string>;
7
- export {};
@@ -1,3 +0,0 @@
1
- export declare const HEAD_REG_EXP: RegExp;
2
- export type BuildTemplateCb = (headTemplate: string) => string | Promise<string>;
3
- export declare function buildTemplate(template: string, callbacks: BuildTemplateCb[]): Promise<string>;
@@ -1,2 +0,0 @@
1
- import { RuntimeContext, SSRPluginConfig } from '../types';
2
- export declare function buildShellBeforeTemplate(beforeAppTemplate: string, context: RuntimeContext, pluginConfig: SSRPluginConfig, styledComponentsStyleTags?: string): Promise<string>;
@@ -1,3 +0,0 @@
1
- /// <reference types="node" />
2
- import { ServerRenderOptions } from '../types';
3
- export declare const render: ({ App, context, config }: ServerRenderOptions) => Promise<string | import("stream").Readable>;
@@ -1,7 +0,0 @@
1
- /// <reference types="react" />
2
- /// <reference types="node" />
3
- import { Readable } from 'stream';
4
- import type { RenderToPipeableStreamOptions } from 'react-dom/server';
5
- import { RuntimeContext, SSRPluginConfig } from '../types';
6
- declare function renderToPipe(rootElement: React.ReactElement, context: RuntimeContext, pluginConfig: SSRPluginConfig, options?: RenderToPipeableStreamOptions): Promise<string | Readable>;
7
- export default renderToPipe;
@@ -1,12 +0,0 @@
1
- /// <reference types="node" />
2
- /// <reference types="react" />
3
- import type { Writable } from 'stream';
4
- import type { RenderToReadableStreamOptions } from 'react-dom/server';
5
- import { RuntimeContext, SSRPluginConfig } from '../types';
6
- export type Pipe<T extends Writable> = (output: T) => Promise<T | string>;
7
- declare function renderToPipe(rootElement: React.ReactElement, context: RuntimeContext, pluginConfig: SSRPluginConfig, options?: RenderToReadableStreamOptions & {
8
- onShellReady?: () => void;
9
- onAllReady?: () => void;
10
- onShellError?: (e: unknown) => void;
11
- }): Promise<string | ReadableStream<any>>;
12
- export default renderToPipe;
@@ -1,6 +0,0 @@
1
- import { RenderLevel, RuntimeContext, SSRPluginConfig } from '../types';
2
- export type InjectTemplate = {
3
- shellBefore: string;
4
- shellAfter: string;
5
- };
6
- export declare const getTemplates: (context: RuntimeContext, renderLevel: RenderLevel, pluginConfig: SSRPluginConfig, styledComponentsStyleTags?: string) => Promise<InjectTemplate>;
@@ -1,6 +0,0 @@
1
- export type BuildHtmlCb = (tempalte: string) => string;
2
- export declare function buildHtml(template: string, callbacks: BuildHtmlCb[]): string;
3
- export declare function createReplaceHtml(html: string): BuildHtmlCb;
4
- export declare function createReplaceSSRDataScript(data: string): BuildHtmlCb;
5
- export declare function createReplaceChunkJs(js: string): BuildHtmlCb;
6
- export declare function createReplaceChunkCss(css: string): BuildHtmlCb;
@@ -1,24 +0,0 @@
1
- import { RuntimeContext, ModernSSRReactComponent, SSRPluginConfig, SSRServerContext, RenderResult } from '../types';
2
- import { SSRTracker } from '../tracker';
3
- type EntryOptions = {
4
- ctx: SSRServerContext;
5
- App: ModernSSRReactComponent;
6
- config: SSRPluginConfig;
7
- };
8
- export default class Entry {
9
- entryName: string;
10
- result: RenderResult;
11
- tracker: SSRTracker;
12
- private readonly template;
13
- private readonly App;
14
- private readonly pluginConfig;
15
- private readonly htmlModifiers;
16
- private readonly nonce?;
17
- private readonly routeManifest?;
18
- constructor(options: EntryOptions);
19
- renderToHtml(context: RuntimeContext): Promise<string>;
20
- private prefetch;
21
- private renderToString;
22
- private getSSRDataScript;
23
- }
24
- export {};
@@ -1,2 +0,0 @@
1
- import { ServerRenderOptions } from '../types';
2
- export declare const render: ({ App, context, config, }: ServerRenderOptions) => Promise<string>;
@@ -1,26 +0,0 @@
1
- import { ReactElement } from 'react';
2
- import { SSRPluginConfig, RenderResult } from '../types';
3
- import type { Collector } from './render';
4
- declare class LoadableCollector implements Collector {
5
- private options;
6
- private extractor?;
7
- constructor(options: LoadableCollectorOptions);
8
- private get existsAssets();
9
- collect(comopnent: ReactElement): ReactElement;
10
- effect(): Promise<void>;
11
- private emitLoadableScripts;
12
- private emitScriptAssets;
13
- private emitStyleAssets;
14
- private generateAttributes;
15
- }
16
- export interface LoadableCollectorOptions {
17
- nonce?: string;
18
- stats?: Record<string, any>;
19
- routeManifest?: Record<string, any>;
20
- template: string;
21
- config: SSRPluginConfig;
22
- entryName: string;
23
- result: RenderResult;
24
- }
25
- export declare function createLoadableCollector(options: LoadableCollectorOptions): LoadableCollector;
26
- export {};
@@ -1,16 +0,0 @@
1
- import type { ReactElement } from 'react';
2
- import { RenderResult } from '../types';
3
- export interface Collector {
4
- collect: (comopnent: ReactElement) => ReactElement;
5
- effect: () => void | Promise<void>;
6
- }
7
- declare class Render {
8
- private App;
9
- private renderResult;
10
- private collectors;
11
- constructor(App: ReactElement, result: RenderResult);
12
- addCollector(collector: Collector): this;
13
- finish(): Promise<string>;
14
- }
15
- export declare function createRender(App: ReactElement, result: RenderResult): Render;
16
- export {};
@@ -1,15 +0,0 @@
1
- import { ServerStyleSheet } from 'styled-components';
2
- import { ReactElement } from 'react';
3
- import type { RenderResult } from '../types';
4
- import type { Collector } from './render';
5
- declare class StyledCollector implements Collector {
6
- sheet: ServerStyleSheet;
7
- result: RenderResult;
8
- constructor(result: RenderResult);
9
- collect(comopnent: ReactElement): ReactElement<{
10
- sheet: ServerStyleSheet;
11
- }, string | import("react").JSXElementConstructor<any>>;
12
- effect(): void;
13
- }
14
- export declare function createStyledCollector(result: RenderResult): StyledCollector;
15
- export {};
@@ -1,20 +0,0 @@
1
- import type { BaseSSRServerContext } from '@modern-js/types';
2
- export type SSRTracker = ReturnType<typeof createSSRTracker>;
3
- export declare enum SSRTimings {
4
- PRERENDER = 0,
5
- RENDER_HTML = 1,
6
- RENDER_SHELL = 2,
7
- USE_LOADER = 3
8
- }
9
- export declare enum SSRErrors {
10
- PRERENDER = 0,
11
- USE_LOADER = 1,
12
- RENDER_HTML = 2,
13
- RENDER_STREAM = 3,
14
- RENDER_SHELL = 4
15
- }
16
- export declare function createSSRTracker({ reporter, serverTiming, logger, request, }: BaseSSRServerContext): {
17
- readonly sessionId: string | undefined;
18
- trackError(key: SSRErrors, e: Error): void;
19
- trackTiming(key: SSRTimings, cost: number): void;
20
- };
@@ -1,49 +0,0 @@
1
- /// <reference types="react" />
2
- import { ServerUserConfig } from '@modern-js/app-tools';
3
- import type { BaseSSRServerContext } from '@modern-js/types';
4
- import type { HelmetData } from 'react-helmet';
5
- import type { RuntimeContext } from '../../core';
6
- import type { BuildHtmlCb } from './renderToString/buildHtml';
7
- import type { SSRTracker } from './tracker';
8
- export declare enum RenderLevel {
9
- CLIENT_RENDER = 0,
10
- SERVER_PREFETCH = 1,
11
- SERVER_RENDER = 2
12
- }
13
- export type RenderResult = {
14
- renderLevel: RenderLevel;
15
- html?: string;
16
- helmet?: HelmetData;
17
- chunksMap: {
18
- js: string;
19
- css: string;
20
- };
21
- };
22
- type LoaderFailureMode = 'clientRender' | 'errorBoundary';
23
- export type SSRServerContext = BaseSSRServerContext & {
24
- request: BaseSSRServerContext['request'] & {
25
- userAgent: string;
26
- cookie: string;
27
- cookieMap: Record<string, string>;
28
- };
29
- htmlModifiers: BuildHtmlCb[];
30
- tracker: SSRTracker;
31
- loaderFailureMode?: 'clientRender' | 'errorBoundary';
32
- };
33
- export type ModernSSRReactComponent = React.ComponentType<any>;
34
- export { RuntimeContext };
35
- export type SSRPluginConfig = {
36
- crossorigin?: boolean | 'anonymous' | 'use-credentials';
37
- scriptLoading?: 'defer' | 'blocking' | 'module' | 'async';
38
- enableInlineStyles?: boolean | RegExp;
39
- enableInlineScripts?: boolean | RegExp;
40
- disablePrerender?: boolean;
41
- loaderFailureMode?: LoaderFailureMode;
42
- chunkLoadingGlobal?: string;
43
- unsafeHeaders?: string[];
44
- } & Exclude<ServerUserConfig['ssr'], boolean>;
45
- export type ServerRenderOptions = {
46
- App: ModernSSRReactComponent;
47
- config: SSRPluginConfig;
48
- context: RuntimeContext;
49
- };
@@ -1,9 +0,0 @@
1
- export declare function attributesToString(attributes: Record<string, any>): string;
2
- /**
3
- * @param source
4
- * @param searchValue
5
- * @param replaceValue
6
- * @returns
7
- */
8
- export declare function safeReplace(source: string, searchValue: string | RegExp, replaceValue: string): string;
9
- export declare function checkIsNode(): boolean;
@@ -1,10 +0,0 @@
1
- import { BaseSSRServerContext } from '@modern-js/types';
2
- import { SSRServerContext } from './serverRender/types';
3
- export declare const isReact18: () => boolean;
4
- export declare const formatServer: (request: BaseSSRServerContext['request']) => SSRServerContext['request'];
5
- export declare const formatClient: (request: BaseSSRServerContext['request']) => SSRServerContext['request'];
6
- export declare const mockResponse: () => {
7
- setHeader(): void;
8
- status(): void;
9
- readonly locals: {};
10
- };
File without changes
File without changes
File without changes