@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
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import { RuntimeContext } from '../../context';
3
+ import { HandleRequestConfig } from '../requestHandler';
4
+ import type { RenderStreaming, SSRConfig } from '../shared';
5
+ export type CreateReadableStreamFromElementOptions = {
6
+ runtimeContext: RuntimeContext;
7
+ config: HandleRequestConfig;
8
+ ssrConfig: SSRConfig;
9
+ htmlTemplate: string;
10
+ onShellReady?: () => void;
11
+ onShellError?: (error: unknown) => void;
12
+ onAllReady?: () => void;
13
+ onError?: (error: unknown) => void;
14
+ };
15
+ export type CreateReadableStreamFromElement = (request: Request, rootElement: React.ReactElement, options: CreateReadableStreamFromElementOptions) => Promise<ReadableStream<Uint8Array>>;
16
+ export declare enum ShellChunkStatus {
17
+ START = 0,
18
+ FINISH = 1
19
+ }
20
+ export declare function encodeForWebStream(thing: unknown): unknown;
21
+ export declare function getReadableStreamFromString(content: string): ReadableStream;
22
+ export declare function createRenderStreaming(createReadableStreamFromElement: CreateReadableStreamFromElement): RenderStreaming;
@@ -0,0 +1,9 @@
1
+ import { type BuildShellBeforeTemplateOptions } from './beforeTemplate';
2
+ import { type BuildShellAfterTemplateOptions } from './afterTemplate';
3
+ export type InjectTemplate = {
4
+ shellBefore: string;
5
+ shellAfter: string;
6
+ };
7
+ type GetTemplatesOptions = BuildShellAfterTemplateOptions & BuildShellBeforeTemplateOptions;
8
+ export declare const getTemplates: (htmlTemplate: string, options: GetTemplatesOptions) => Promise<InjectTemplate>;
9
+ export {};
@@ -0,0 +1,2 @@
1
+ import { RenderString } from '../shared';
2
+ export declare const renderString: RenderString;
@@ -0,0 +1,35 @@
1
+ import { ReactElement } from 'react';
2
+ import type { Collector, ChunkSet } from './types';
3
+ declare module '@loadable/server' {
4
+ interface ChunkExtractor {
5
+ chunks: Chunk;
6
+ getChunkAssets: (chunks: Chunk) => Chunk[];
7
+ }
8
+ }
9
+ export interface LoadableCollectorOptions {
10
+ nonce?: string;
11
+ stats?: Record<string, any>;
12
+ routeManifest?: Record<string, any>;
13
+ template: string;
14
+ entryName: string;
15
+ chunkSet: ChunkSet;
16
+ config: LoadableCollectorConfig;
17
+ }
18
+ export interface LoadableCollectorConfig {
19
+ scriptLoading?: 'defer' | 'blocking' | 'module' | 'async';
20
+ enableInlineStyles?: boolean | RegExp;
21
+ enableInlineScripts?: boolean | RegExp;
22
+ crossorigin?: boolean | 'anonymous' | 'use-credentials';
23
+ }
24
+ export declare class LoadableCollector implements Collector {
25
+ private options;
26
+ private extractor?;
27
+ constructor(options: LoadableCollectorOptions);
28
+ private get existsAssets();
29
+ collect(comopnent: ReactElement): ReactElement;
30
+ effect(): Promise<void>;
31
+ private emitLoadableScripts;
32
+ private emitScriptAssets;
33
+ private emitStyleAssets;
34
+ private generateAttributes;
35
+ }
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { LoaderResult } from '../../loader/loaderManager';
3
+ import { HandleRequestOptions } from '../requestHandler';
4
+ import { Tracer } from '../tracer';
5
+ import { SSRConfig } from '../shared';
6
+ export declare const prefetch: (App: React.ReactElement, request: Request, options: HandleRequestOptions, ssrConfig: SSRConfig, { onError, onTiming }: Tracer) => Promise<{
7
+ initialData: Record<string, unknown> | undefined;
8
+ i18nData: any;
9
+ loadersData?: undefined;
10
+ storeState?: undefined;
11
+ } | {
12
+ loadersData: Record<string, LoaderResult>;
13
+ initialData: Record<string, unknown> | undefined;
14
+ i18nData: any;
15
+ storeState: any;
16
+ }>;
@@ -0,0 +1,18 @@
1
+ import { StaticHandlerContext } from '@modern-js/runtime-utils/remix-router';
2
+ import { SSRConfig } from '../shared';
3
+ import { SSRServerContext } from '../../types';
4
+ import { Collector, ChunkSet } from './types';
5
+ export interface SSRDataCreatorOptions {
6
+ request: Request;
7
+ prefetchData: Record<string, any>;
8
+ chunkSet: ChunkSet;
9
+ ssrContext: SSRServerContext;
10
+ ssrConfig?: SSRConfig;
11
+ routerContext?: StaticHandlerContext;
12
+ nonce?: string;
13
+ }
14
+ export declare class SSRDataCollector implements Collector {
15
+ #private;
16
+ constructor(options: SSRDataCreatorOptions);
17
+ effect(): void;
18
+ }
@@ -0,0 +1,11 @@
1
+ import { ServerStyleSheet } from 'styled-components';
2
+ import { ReactElement } from 'react';
3
+ import type { ChunkSet, Collector } from './types';
4
+ export declare class StyledCollector implements Collector {
5
+ #private;
6
+ constructor(chunkSet: ChunkSet);
7
+ collect(comopnent: ReactElement): ReactElement<{
8
+ sheet: ServerStyleSheet;
9
+ }, string | import("react").JSXElementConstructor<any>>;
10
+ effect(): void;
11
+ }
@@ -0,0 +1,12 @@
1
+ import { ReactElement } from 'react';
2
+ import { RenderLevel } from '../../constants';
3
+ export interface Collector {
4
+ collect?: (comopnent: ReactElement) => ReactElement;
5
+ effect: () => void | Promise<void>;
6
+ }
7
+ export type ChunkSet = {
8
+ renderLevel: RenderLevel;
9
+ ssrScripts: string;
10
+ jsChunk: string;
11
+ cssChunk: string;
12
+ };
@@ -0,0 +1,21 @@
1
+ export declare enum SSRTimings {
2
+ PRERENDER = "ssr-prerender",
3
+ RENDER_HTML = "ssr-render-html",
4
+ RENDER_SHELL = "ssr-render-shell",
5
+ USE_LOADER = "use-loader"
6
+ }
7
+ export declare enum SSRErrors {
8
+ PRERENDER = "App Prerender",
9
+ USE_LOADER = "App run useLoader",
10
+ RENDER_HTML = "App Render To HTML",
11
+ RENDER_STREAM = "An error occurs during streaming SSR",
12
+ RENDER_SHELL = "An error occurs during streaming render shell"
13
+ }
14
+ export type Tracer = {
15
+ onError: OnError;
16
+ onTiming: OnTiming;
17
+ };
18
+ export type OnError = (key: SSRErrors, e: unknown) => void;
19
+ export declare function createOnError(onError?: (e: unknown) => void): OnError;
20
+ export type OnTiming = (key: SSRTimings, cost: number) => void;
21
+ export declare function createOnTiming(onTiming?: (name: string, dur: number) => void): OnTiming;
@@ -0,0 +1,19 @@
1
+ import { StaticHandlerContext } from '@modern-js/runtime-utils/remix-router';
2
+ import { ServerUserConfig } from '@modern-js/app-tools';
3
+ import { SSRConfig } from './shared';
4
+ export declare function attributesToString(attributes: Record<string, any>): string;
5
+ /**
6
+ * @param source
7
+ * @param searchValue
8
+ * @param replaceValue
9
+ * @returns
10
+ */
11
+ export declare function safeReplace(source: string, searchValue: string | RegExp, replaceValue: string): string;
12
+ export declare function checkIsNode(): boolean;
13
+ /**
14
+ * forked from https://github.com/remix-run/remix/blob/main/packages/remix-server-runtime/errors.ts
15
+ * license at https://github.com/remix-run/remix/blob/main/LICENSE.md
16
+ */
17
+ export declare function serializeErrors(errors: StaticHandlerContext['errors']): StaticHandlerContext['errors'];
18
+ export declare function getSSRConfigByEntry(entryName: string, ssr?: ServerUserConfig['ssr'], ssrByEntries?: ServerUserConfig['ssrByEntries'], staticGenerate?: boolean): import("@modern-js/app-tools").SSR;
19
+ export declare function getSSRMode(ssrConfig?: SSRConfig): 'string' | 'stream' | false;
@@ -1,4 +1,6 @@
1
+ import { BaseSSRServerContext } from '@modern-js/types';
1
2
  import type { LoaderResult } from './loader/loaderManager';
3
+ import type { RenderLevel } from './constants';
2
4
  declare global {
3
5
  interface Window {
4
6
  _SSR_DATA?: SSRContainer;
@@ -6,9 +8,10 @@ declare global {
6
8
  }
7
9
  }
8
10
  export interface SSRData {
9
- loadersData: Record<string, LoaderResult | undefined>;
11
+ loadersData?: Record<string, LoaderResult | undefined>;
10
12
  initialData?: Record<string, unknown>;
11
13
  storeState?: any;
14
+ [props: string]: any;
12
15
  }
13
16
  export interface RouteData {
14
17
  [routeId: string]: any;
@@ -17,6 +20,37 @@ export interface RouterSSRData {
17
20
  loaderData: RouteData;
18
21
  errors: RouteData | null;
19
22
  }
23
+ export type SSRMode = 'string' | 'stream';
20
24
  export interface SSRContainer {
25
+ renderLevel: RenderLevel;
26
+ mode: SSRMode;
21
27
  data?: SSRData;
28
+ context?: {
29
+ request: {
30
+ params: Record<string, any>;
31
+ query: Record<string, string>;
32
+ pathname: string;
33
+ host: string;
34
+ url: string;
35
+ headers?: Record<string, string | undefined>;
36
+ };
37
+ reporter?: {
38
+ sessionId?: string;
39
+ };
40
+ };
22
41
  }
42
+ type BuildHtmlCb = (tempalte: string) => string;
43
+ export type SSRServerContext = Pick<BaseSSRServerContext, 'redirection' | 'response' | 'nonce' | 'mode' | 'loaderContext' | 'reporter' | 'logger' | 'metrics' | 'routeManifest'> & {
44
+ request: BaseSSRServerContext['request'] & {
45
+ baseUrl: string;
46
+ userAgent: string;
47
+ cookie: string;
48
+ cookieMap: Record<string, string>;
49
+ raw: Request;
50
+ };
51
+ htmlModifiers: BuildHtmlCb[];
52
+ loaderFailureMode?: 'clientRender' | 'errorBoundary';
53
+ onError?: (e: unknown) => void;
54
+ onTiming?: (name: string, dur: number) => void;
55
+ };
56
+ export {};
@@ -0,0 +1,6 @@
1
+ type PlainObject = {
2
+ [key: string]: any;
3
+ };
4
+ type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
5
+ export declare function merge<T extends PlainObject, U extends PlainObject[]>(target: T, ...sources: U): T & UnionToIntersection<U[number]>;
6
+ export {};
@@ -1,7 +1,7 @@
1
1
  import type { StateConfig } from './state';
2
2
  import type { RouterConfig } from './router';
3
3
  export type { Plugin } from './core';
4
- export type { AppConfig } from './common';
4
+ export type { AppConfig, RuntimeConfig } from './common';
5
5
  export { isBrowser } from './common';
6
6
  export type { BaseRuntimeContext, RuntimeContext, BaseTRuntimeContext, } from './core/context/runtime';
7
7
  export type { RuntimeUserConfig } from './config';
@@ -1,6 +1,5 @@
1
1
  import { IAppContext, PluginAPI } from '@modern-js/core';
2
2
  import type { Entrypoint } from '@modern-js/types';
3
- import { AppNormalizedConfig, AppTools, ImportStatement } from '@modern-js/app-tools';
4
- export declare const generateCode: (appContext: IAppContext, config: AppNormalizedConfig<'shared'>, entrypoints: Entrypoint[], api: PluginAPI<AppTools<'shared'>>) => Promise<{
5
- importsStatemets: Map<string, ImportStatement[]>;
6
- }>;
3
+ import { AppNormalizedConfig, AppTools } from '@modern-js/app-tools';
4
+ export declare const generateCode: (appContext: IAppContext, config: AppNormalizedConfig<'shared'>, entrypoints: Entrypoint[], api: PluginAPI<AppTools<'shared'>>) => Promise<void>;
5
+ export declare function generatorRegisterCode(internalDirectory: string, entryName: string, code: string): void;
@@ -3,7 +3,8 @@ import type { AppNormalizedConfig, IAppContext } from '@modern-js/app-tools';
3
3
  export declare const routesForServer: ({ routes, }: {
4
4
  routes: (NestedRouteForCli | PageRoute)[];
5
5
  }) => string;
6
- export declare const fileSystemRoutes: ({ routes, ssrMode, nestedRoutesEntry, entryName, internalDirectory, splitRouteChunks, }: {
6
+ export declare const fileSystemRoutes: ({ metaName, routes, ssrMode, nestedRoutesEntry, entryName, internalDirectory, splitRouteChunks, }: {
7
+ metaName: string;
7
8
  routes: RouteLegacy[] | (NestedRouteForCli | PageRoute)[];
8
9
  ssrMode?: SSRMode | undefined;
9
10
  nestedRoutesEntry?: string | undefined;
@@ -12,3 +13,10 @@ export declare const fileSystemRoutes: ({ routes, ssrMode, nestedRoutesEntry, en
12
13
  splitRouteChunks?: boolean | undefined;
13
14
  }) => Promise<string>;
14
15
  export declare function ssrLoaderCombinedModule(entrypoints: Entrypoint[], entrypoint: Entrypoint, config: AppNormalizedConfig<'shared'>, appContext: IAppContext): string | null;
16
+ export declare const runtimeGlobalContext: ({ metaName, srcDirectory, nestedRoutesEntry, internalSrcAlias, globalApp, }: {
17
+ metaName: string;
18
+ srcDirectory: string;
19
+ nestedRoutesEntry?: string | undefined;
20
+ internalSrcAlias: string;
21
+ globalApp?: string | false | undefined;
22
+ }) => Promise<string>;
@@ -10,6 +10,8 @@ export declare const FILE_SYSTEM_ROUTES_INDEX = "index";
10
10
  export declare const FILE_SYSTEM_ROUTES_IGNORED_REGEX: RegExp;
11
11
  export declare const FILE_SYSTEM_ROUTES_DYNAMIC_REGEXP: RegExp;
12
12
  export declare const FILE_SYSTEM_ROUTES_COMPONENTS_DIR = "internal_components";
13
+ export declare const APP_CONFIG_NAME = "config";
14
+ export declare const APP_INIT_EXPORTED = "init";
13
15
  export declare const NESTED_ROUTE: {
14
16
  LAYOUT_FILE: string;
15
17
  LAYOUT_CONFIG_FILE: string;
@@ -2,4 +2,5 @@ import { Entrypoint } from '@modern-js/types';
2
2
  import { PluginAPI } from '@modern-js/core';
3
3
  import { AppTools } from '@modern-js/app-tools';
4
4
  export declare function handleModifyEntrypoints(api: PluginAPI<AppTools<'shared'>>, entrypoints: Entrypoint[]): Promise<Entrypoint[]>;
5
+ export declare function handleGeneratorEntryCode(api: PluginAPI<AppTools<'shared'>>, entrypoints: Entrypoint[]): Promise<Entrypoint[]>;
5
6
  export declare function handleFileChange(api: PluginAPI<AppTools<'shared'>>, e: any): Promise<void>;
@@ -4,6 +4,7 @@ import type { SingleRouteConfig, RouterConfig } from './types';
4
4
  export * from '@modern-js/runtime-utils/router';
5
5
  export type { SingleRouteConfig, RouterConfig };
6
6
  export { renderRoutes } from './utils';
7
+ export { routerPlugin };
7
8
  export default routerPlugin;
8
9
  export { modifyRoutes } from './plugin';
9
10
  export * from './withRouter';
@@ -3,4 +3,4 @@ import type { RouterConfig, Routes } from './types';
3
3
  export declare let finalRouteConfig: RouterConfig['routesConfig'];
4
4
  export declare let beforeCreateRouter: boolean;
5
5
  export declare function modifyRoutes(modifyFunction: (routes: Routes) => Routes): void;
6
- export declare const routerPlugin: ({ serverBase, supportHtml5History, basename, originalBaseUrl, routesConfig, createRoutes, }: RouterConfig) => Plugin;
6
+ export declare const routerPlugin: ({ serverBase, supportHtml5History, basename, routesConfig, createRoutes, }: RouterConfig) => Plugin;
@@ -1,6 +1,4 @@
1
1
  import type { Plugin } from '../../core';
2
- import { SSRServerContext } from '../../ssr/serverRender/types';
3
2
  import type { RouterConfig } from './types';
4
- export declare function createFetchHeaders(requestHeaders: SSRServerContext['request']['headers']): Headers;
5
- export declare const routerPlugin: ({ basename, originalBaseUrl, routesConfig, createRoutes, }: RouterConfig) => Plugin;
3
+ export declare const routerPlugin: ({ basename, routesConfig, createRoutes, }: RouterConfig) => Plugin;
6
4
  export declare const modifyRoutes: () => void;
@@ -29,7 +29,7 @@ export type RouterConfig = {
29
29
  mode?: 'react-router-5';
30
30
  routesConfig: {
31
31
  globalApp?: React.ComponentType<any>;
32
- routes: (NestedRoute | PageRoute)[];
32
+ routes?: (NestedRoute | PageRoute)[];
33
33
  };
34
34
  /**
35
35
  * You should not use it
@@ -37,7 +37,6 @@ export type RouterConfig = {
37
37
  oldVersion?: boolean;
38
38
  serverBase?: string[];
39
39
  supportHtml5History?: boolean;
40
- originalBaseUrl?: string;
41
40
  basename?: string;
42
41
  createRoutes?: () => RouteObject[];
43
42
  };
@@ -6,6 +6,6 @@ type StateExtraType = {
6
6
  models: Array<Model>;
7
7
  };
8
8
  export type StateConfig = Partial<Record<StatePluginType, boolean> & StateExtraType>;
9
- declare const state: (config: StateConfig) => Plugin;
10
- export default state;
9
+ export declare const statePlugin: (config: StateConfig) => Plugin;
10
+ export default statePlugin;
11
11
  export * from '../plugins';
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.54.6",
18
+ "version": "2.56.0",
19
19
  "engines": {
20
20
  "node": ">=14.17.6"
21
21
  },
@@ -36,12 +36,22 @@
36
36
  "./context": {
37
37
  "types": "./dist/types/core/context/index.d.ts",
38
38
  "jsnext:source": "./src/core/context/index.ts",
39
- "default": "./dist/cjs/core/context/index.js"
39
+ "default": "./dist/esm/core/context/index.js"
40
40
  },
41
41
  "./plugin": {
42
42
  "types": "./dist/types/core/plugin/index.d.ts",
43
43
  "jsnext:source": "./src/core/plugin/index.ts",
44
- "default": "./dist/cjs/core/plugin/index.js"
44
+ "default": "./dist/esm/core/plugin/index.js"
45
+ },
46
+ "./react": {
47
+ "types": "./dist/types/core/react/index.d.ts",
48
+ "jsnext:source": "./src/core/react/index.ts",
49
+ "default": "./dist/esm/core/react/index.js"
50
+ },
51
+ "./browser": {
52
+ "types": "./dist/types/core/browser/index.d.ts",
53
+ "jsnext:source": "./src/core/browser/index.ts",
54
+ "default": "./dist/esm/core/browser/index.js"
45
55
  },
46
56
  "./loadable": {
47
57
  "types": "./dist/types/exports/loadable.d.ts",
@@ -64,25 +74,22 @@
64
74
  "node": "./dist/cjs/exports/server.js",
65
75
  "default": "./dist/esm/exports/server.js"
66
76
  },
77
+ "./ssr": {
78
+ "types": "./dist/types/core/server/index.d.ts",
79
+ "jsnext:source": "./src/core/server/index.ts",
80
+ "default": "./dist/esm/core/server/index.js"
81
+ },
82
+ "./ssr/server": {
83
+ "types": "./dist/types/core/server/server.d.ts",
84
+ "jsnext:source": "./src/core/server/server.ts",
85
+ "default": "./dist/esm/core/server/server.js"
86
+ },
67
87
  "./document": {
68
88
  "types": "./dist/types/document/index.d.ts",
69
89
  "jsnext:source": "./src/document/index.ts",
70
90
  "node": "./dist/cjs/document/index.js",
71
91
  "default": "./dist/esm/document/index.js"
72
92
  },
73
- "./document/cli": {
74
- "types": "./dist/types/document/index.d.ts",
75
- "jsnext:source": "./src/document/cli/index.ts",
76
- "node": "./dist/cjs/document/cli/index.js",
77
- "default": "./dist/esm/document/cli/index.js"
78
- },
79
- "./ssr": {
80
- "types": "./dist/types/ssr/index.d.ts",
81
- "jsnext:source": "./src/ssr/index.ts",
82
- "node": "./dist/esm/ssr/index.node.js",
83
- "worker": "./dist/esm/ssr/index.node.js",
84
- "default": "./dist/esm/ssr/index.js"
85
- },
86
93
  "./model": {
87
94
  "types": "./types/model.d.ts",
88
95
  "jsnext:source": "./src/state/index.ts",
@@ -103,15 +110,10 @@
103
110
  "jsnext:source": "./src/router/runtime/server.ts",
104
111
  "default": "./dist/esm/router/runtime/server.js"
105
112
  },
106
- "./router/cli": {
107
- "types": "./dist/types/router/cli/index.d.ts",
108
- "jsnext:source": "./src/router/cli/index.ts",
109
- "default": "./dist/cjs/router/cli/index.js"
110
- },
111
113
  "./loadable-bundler-plugin": {
112
- "types": "./dist/types/ssr/cli/loadable-bundler-plugin.d.ts",
113
- "jsnext:source": "./src/ssr/cli/loadable-bundler-plugin.ts",
114
- "default": "./dist/cjs/ssr/cli/loadable-bundler-plugin.js"
114
+ "types": "./dist/types/cli/ssr/loadable-bundler-plugin.d.ts",
115
+ "jsnext:source": "./src/cli/ssr/loadable-bundler-plugin.ts",
116
+ "default": "./dist/cjs/cli/ssr/loadable-bundler-plugin.js"
115
117
  }
116
118
  },
117
119
  "typesVersions": {
@@ -134,6 +136,12 @@
134
136
  "plugin": [
135
137
  "./dist/types/core/plugin/index.d.ts"
136
138
  ],
139
+ "react": [
140
+ "./dist/types/core/react/index.d.ts"
141
+ ],
142
+ "browser": [
143
+ "./dist/types/core/browser/index.d.ts"
144
+ ],
137
145
  "head": [
138
146
  "./dist/types/exports/head.d.ts"
139
147
  ],
@@ -146,11 +154,11 @@
146
154
  "document": [
147
155
  "./dist/types/document/index.d.ts"
148
156
  ],
149
- "document/cli": [
150
- "./dist/types/document/cli/index.d.ts"
151
- ],
152
157
  "ssr": [
153
- "./dist/types/ssr/index.d.ts"
158
+ "./dist/types/core/server/index.d.ts"
159
+ ],
160
+ "ssr/server": [
161
+ "./dist/types/core/server/server.d.ts"
154
162
  ],
155
163
  "model": [
156
164
  "./types/model.d.ts"
@@ -161,18 +169,16 @@
161
169
  "router/server": [
162
170
  "./dist/types/router/runtime/server.d.ts"
163
171
  ],
164
- "router/cli": [
165
- "./dist/types/router/cli/index.d.ts"
166
- ],
167
172
  "loadable-bundler-plugin": [
168
- "./dist/types/ssr/cli/loadable-bundler-plugin.d.ts"
173
+ "./dist/types/cli/ssr/loadable-bundler-plugin.d.ts"
169
174
  ]
170
175
  }
171
176
  },
172
177
  "dependencies": {
173
- "@babel/core": "^7.23.2",
174
- "@babel/types": "^7.23.0",
178
+ "@babel/core": "^7.24.7",
179
+ "@babel/types": "^7.24.7",
175
180
  "cookie": "0.5.0",
181
+ "isbot": "3.7.1",
176
182
  "@loadable/babel-plugin": "5.15.3",
177
183
  "@loadable/component": "5.15.3",
178
184
  "@loadable/server": "5.15.3",
@@ -188,28 +194,29 @@
188
194
  "@types/styled-components": "^5.1.14",
189
195
  "esbuild": "0.17.19",
190
196
  "es-module-lexer": "^1.1.0",
191
- "hoist-non-react-statics": "^3.3.2",
192
197
  "invariant": "^2.2.4",
193
198
  "react-helmet": "^6.1.0",
194
199
  "react-is": "^18",
195
200
  "react-side-effect": "^2.1.1",
196
201
  "styled-components": "^5.3.1",
197
202
  "@swc/helpers": "0.5.3",
198
- "@modern-js/types": "2.54.6",
199
- "@modern-js/utils": "2.54.6",
200
- "@modern-js/plugin-data-loader": "2.54.6",
201
- "@modern-js/runtime-utils": "2.54.6",
202
- "@modern-js/plugin": "2.54.6"
203
+ "@modern-js/plugin": "2.56.0",
204
+ "@modern-js/types": "2.56.0",
205
+ "@modern-js/utils": "2.56.0",
206
+ "@modern-js/runtime-utils": "2.56.0",
207
+ "@modern-js/plugin-data-loader": "2.56.0"
203
208
  },
204
209
  "peerDependencies": {
205
210
  "react": ">=17",
206
211
  "react-dom": ">=17"
207
212
  },
208
213
  "devDependencies": {
214
+ "@rsbuild/core": "1.0.1-beta.3",
209
215
  "@types/cookie": "0.5.1",
210
216
  "@remix-run/web-fetch": "^4.1.3",
211
217
  "@testing-library/react": "^13.4.0",
212
218
  "@types/invariant": "^2.2.30",
219
+ "@types/loadable__server": "5.12.11",
213
220
  "@types/jest": "^29",
214
221
  "@types/loadable__webpack-plugin": "^5.7.3",
215
222
  "@types/node": "^14",
@@ -219,11 +226,11 @@
219
226
  "react-dom": "^18",
220
227
  "ts-jest": "^29.1.0",
221
228
  "typescript": "^5",
222
- "webpack": "^5.92.0",
223
- "@modern-js/app-tools": "2.54.6",
224
- "@modern-js/core": "2.54.6",
225
- "@scripts/jest-config": "2.54.6",
226
- "@scripts/build": "2.54.6"
229
+ "webpack": "^5.93.0",
230
+ "@modern-js/app-tools": "2.56.0",
231
+ "@modern-js/core": "2.56.0",
232
+ "@scripts/build": "2.56.0",
233
+ "@scripts/jest-config": "2.56.0"
227
234
  },
228
235
  "sideEffects": false,
229
236
  "publishConfig": {
package/types/router.d.ts CHANGED
@@ -9,12 +9,17 @@ declare module '@modern-js/app-tools' {
9
9
 
10
10
  declare module '@modern-js/module-tools' {
11
11
  interface RuntimeUserConfig {
12
- router?: RouterConfig | boolean;
12
+ router?: Partial<RouterConfig> | boolean;
13
13
  }
14
14
  }
15
15
 
16
16
  declare module '@modern-js/runtime' {
17
17
  interface AppConfig {
18
- router?: RouterConfig | boolean;
18
+ router?: Partial<RouterConfig> | boolean;
19
+ }
20
+
21
+ interface RuntimeConfig {
22
+ router?: Partial<RouterConfig>;
23
+ routerByEntries?: { [name: string]: Partial<RouterConfig> };
19
24
  }
20
25
  }