@modern-js/runtime 2.15.1-alpha.2 → 2.16.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 (488) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/cjs/cli/index.js +32 -48
  3. package/dist/cjs/common.js +13 -27
  4. package/dist/cjs/config.js +4 -15
  5. package/dist/cjs/core/appConfig.js +13 -26
  6. package/dist/cjs/core/compatible.js +170 -158
  7. package/dist/cjs/core/index.js +38 -45
  8. package/dist/cjs/core/loader/index.js +12 -35
  9. package/dist/cjs/core/loader/loaderManager.js +42 -56
  10. package/dist/cjs/core/loader/useLoader.js +80 -105
  11. package/dist/cjs/core/plugin.js +28 -40
  12. package/dist/cjs/core/types.js +4 -15
  13. package/dist/cjs/document/Body.js +61 -37
  14. package/dist/cjs/document/Comment.js +22 -32
  15. package/dist/cjs/document/DocumentContext.js +14 -37
  16. package/dist/cjs/document/DocumentStructureContext.js +14 -37
  17. package/dist/cjs/document/Head.js +71 -40
  18. package/dist/cjs/document/Html.js +46 -58
  19. package/dist/cjs/document/Links.js +18 -28
  20. package/dist/cjs/document/Root.js +73 -44
  21. package/dist/cjs/document/Script.js +22 -32
  22. package/dist/cjs/document/Scripts.js +18 -28
  23. package/dist/cjs/document/cli/index.js +161 -207
  24. package/dist/cjs/document/constants.js +36 -75
  25. package/dist/cjs/document/index.js +28 -27
  26. package/dist/cjs/exports/head.js +27 -37
  27. package/dist/cjs/exports/loadable.js +27 -37
  28. package/dist/cjs/exports/server.js +7 -25
  29. package/dist/cjs/exports/styled.js +27 -37
  30. package/dist/cjs/index.js +22 -42
  31. package/dist/cjs/router/cli/index.js +91 -114
  32. package/dist/cjs/router/index.js +32 -39
  33. package/dist/cjs/router/runtime/DefaultNotFound.js +23 -38
  34. package/dist/cjs/router/runtime/DeferredDataScripts.js +8 -24
  35. package/dist/cjs/router/runtime/DeferredDataScripts.node.js +69 -112
  36. package/dist/cjs/router/runtime/PrefetchLink.js +117 -96
  37. package/dist/cjs/router/runtime/fetch.js +7 -25
  38. package/dist/cjs/router/runtime/fetch.node.js +7 -25
  39. package/dist/cjs/router/runtime/fetch.worker.js +7 -25
  40. package/dist/cjs/router/runtime/hooks.js +8 -26
  41. package/dist/cjs/router/runtime/index.js +94 -148
  42. package/dist/cjs/router/runtime/plugin.js +56 -76
  43. package/dist/cjs/router/runtime/plugin.node.js +95 -74
  44. package/dist/cjs/router/runtime/server.js +18 -17
  45. package/dist/cjs/router/runtime/types.js +4 -15
  46. package/dist/cjs/router/runtime/utils.js +57 -83
  47. package/dist/cjs/router/runtime/withRouter.js +24 -39
  48. package/dist/cjs/runtimeContext.js +14 -27
  49. package/dist/cjs/ssr/cli/babel-plugin-ssr-loader-id.js +75 -59
  50. package/dist/cjs/ssr/cli/index.js +120 -150
  51. package/dist/cjs/ssr/index.js +149 -132
  52. package/dist/cjs/ssr/index.node.js +73 -74
  53. package/dist/cjs/ssr/prefetch.js +51 -59
  54. package/dist/cjs/ssr/react/index.js +15 -28
  55. package/dist/cjs/ssr/react/nossr/index.js +51 -43
  56. package/dist/cjs/ssr/react/prerender/index.js +93 -59
  57. package/dist/cjs/ssr/react/prerender/type.js +4 -15
  58. package/dist/cjs/ssr/react/prerender/util.js +32 -51
  59. package/dist/cjs/ssr/react/withCallback/index.js +53 -29
  60. package/dist/cjs/ssr/serverRender/helmet.js +15 -26
  61. package/dist/cjs/ssr/serverRender/index.js +14 -32
  62. package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +15 -34
  63. package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.share.js +12 -28
  64. package/dist/cjs/ssr/serverRender/renderToStream/bulidTemplate.before.js +28 -55
  65. package/dist/cjs/ssr/serverRender/renderToStream/index.js +23 -48
  66. package/dist/cjs/ssr/serverRender/renderToStream/loadable.js +13 -32
  67. package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +33 -64
  68. package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +26 -54
  69. package/dist/cjs/ssr/serverRender/renderToStream/styledComponent.js +9 -27
  70. package/dist/cjs/ssr/serverRender/renderToStream/template.js +11 -32
  71. package/dist/cjs/ssr/serverRender/renderToStream/type.js +4 -15
  72. package/dist/cjs/ssr/serverRender/renderToString/entry.js +133 -99
  73. package/dist/cjs/ssr/serverRender/renderToString/index.js +21 -48
  74. package/dist/cjs/ssr/serverRender/renderToString/loadable.js +20 -45
  75. package/dist/cjs/ssr/serverRender/renderToString/reduce.js +13 -25
  76. package/dist/cjs/ssr/serverRender/renderToString/styledComponent.js +9 -27
  77. package/dist/cjs/ssr/serverRender/renderToString/template.js +42 -37
  78. package/dist/cjs/ssr/serverRender/renderToString/type.js +10 -28
  79. package/dist/cjs/ssr/serverRender/time.js +7 -25
  80. package/dist/cjs/ssr/serverRender/time.worker.js +11 -26
  81. package/dist/cjs/ssr/serverRender/types.js +7 -25
  82. package/dist/cjs/ssr/serverRender/utils.js +12 -27
  83. package/dist/cjs/ssr/utils.js +26 -51
  84. package/dist/cjs/state/cli/index.js +71 -95
  85. package/dist/cjs/state/index.js +32 -39
  86. package/dist/cjs/state/plugins.js +26 -46
  87. package/dist/cjs/state/runtime/index.js +27 -37
  88. package/dist/cjs/state/runtime/plugin.js +82 -84
  89. package/dist/cjs/state/types.js +4 -15
  90. package/dist/esm/cli/index.js +184 -176
  91. package/dist/esm/common.js +4 -5
  92. package/dist/esm/config.js +1 -1
  93. package/dist/esm/core/appConfig.js +8 -7
  94. package/dist/esm/core/compatible.js +470 -448
  95. package/dist/esm/core/index.js +3 -4
  96. package/dist/esm/core/loader/index.js +1 -2
  97. package/dist/esm/core/loader/loaderManager.js +391 -366
  98. package/dist/esm/core/loader/useLoader.js +173 -162
  99. package/dist/esm/core/plugin.js +162 -155
  100. package/dist/esm/core/types.js +1 -1
  101. package/dist/esm/document/Body.js +12 -13
  102. package/dist/esm/document/Comment.js +11 -12
  103. package/dist/esm/document/DocumentContext.js +4 -5
  104. package/dist/esm/document/DocumentStructureContext.js +6 -7
  105. package/dist/esm/document/Head.js +16 -17
  106. package/dist/esm/document/Html.js +84 -85
  107. package/dist/esm/document/Links.js +5 -6
  108. package/dist/esm/document/Root.js +20 -21
  109. package/dist/esm/document/Script.js +12 -13
  110. package/dist/esm/document/Scripts.js +5 -6
  111. package/dist/esm/document/cli/index.js +390 -371
  112. package/dist/esm/document/constants.js +33 -34
  113. package/dist/esm/exports/head.js +1 -2
  114. package/dist/esm/exports/loadable.js +1 -2
  115. package/dist/esm/exports/server.js +2 -3
  116. package/dist/esm/exports/styled.js +1 -2
  117. package/dist/esm/index.js +2 -3
  118. package/dist/esm/router/cli/index.js +141 -141
  119. package/dist/esm/router/index.js +2 -3
  120. package/dist/esm/router/runtime/DefaultNotFound.js +12 -13
  121. package/dist/esm/router/runtime/DeferredDataScripts.js +4 -4
  122. package/dist/esm/router/runtime/DeferredDataScripts.node.js +154 -143
  123. package/dist/esm/router/runtime/PrefetchLink.js +418 -394
  124. package/dist/esm/router/runtime/fetch.js +2 -1
  125. package/dist/esm/router/runtime/fetch.worker.js +2 -1
  126. package/dist/esm/router/runtime/index.js +60 -9
  127. package/dist/esm/router/runtime/plugin.js +141 -142
  128. package/dist/esm/router/runtime/plugin.node.js +372 -353
  129. package/dist/esm/router/runtime/types.js +1 -1
  130. package/dist/esm/router/runtime/utils.js +295 -279
  131. package/dist/esm/router/runtime/withRouter.js +57 -58
  132. package/dist/esm/runtimeContext.js +2 -3
  133. package/dist/esm/ssr/cli/babel-plugin-ssr-loader-id.js +105 -118
  134. package/dist/esm/ssr/cli/index.js +146 -146
  135. package/dist/esm/ssr/index.js +303 -297
  136. package/dist/esm/ssr/index.node.js +227 -221
  137. package/dist/esm/ssr/prefetch.js +192 -186
  138. package/dist/esm/ssr/react/index.js +2 -3
  139. package/dist/esm/ssr/react/nossr/index.js +58 -47
  140. package/dist/esm/ssr/react/prerender/index.js +214 -206
  141. package/dist/esm/ssr/react/prerender/type.js +1 -1
  142. package/dist/esm/ssr/react/prerender/util.js +91 -92
  143. package/dist/esm/ssr/react/withCallback/index.js +13 -14
  144. package/dist/esm/ssr/serverRender/helmet.js +34 -35
  145. package/dist/esm/ssr/serverRender/index.js +167 -160
  146. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +58 -59
  147. package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +5 -6
  148. package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +106 -93
  149. package/dist/esm/ssr/serverRender/renderToStream/index.js +157 -151
  150. package/dist/esm/ssr/serverRender/renderToStream/loadable.js +17 -18
  151. package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +117 -117
  152. package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +286 -279
  153. package/dist/esm/ssr/serverRender/renderToStream/styledComponent.js +8 -9
  154. package/dist/esm/ssr/serverRender/renderToStream/template.js +62 -51
  155. package/dist/esm/ssr/serverRender/renderToStream/type.js +1 -1
  156. package/dist/esm/ssr/serverRender/renderToString/entry.js +393 -383
  157. package/dist/esm/ssr/serverRender/renderToString/index.js +158 -152
  158. package/dist/esm/ssr/serverRender/renderToString/loadable.js +46 -47
  159. package/dist/esm/ssr/serverRender/renderToString/reduce.js +7 -8
  160. package/dist/esm/ssr/serverRender/renderToString/styledComponent.js +6 -7
  161. package/dist/esm/ssr/serverRender/renderToString/template.js +142 -128
  162. package/dist/esm/ssr/serverRender/renderToString/type.js +6 -7
  163. package/dist/esm/ssr/serverRender/time.js +57 -46
  164. package/dist/esm/ssr/serverRender/time.worker.js +72 -61
  165. package/dist/esm/ssr/serverRender/utils.js +14 -15
  166. package/dist/esm/ssr/utils.js +128 -117
  167. package/dist/esm/state/cli/index.js +67 -67
  168. package/dist/esm/state/index.js +2 -3
  169. package/dist/esm/state/plugins.js +7 -8
  170. package/dist/esm/state/runtime/index.js +1 -2
  171. package/dist/esm/state/runtime/plugin.js +177 -166
  172. package/dist/esm/state/types.js +1 -1
  173. package/dist/esm-node/cli/index.js +11 -9
  174. package/dist/esm-node/common.js +3 -8
  175. package/dist/esm-node/config.js +1 -0
  176. package/dist/esm-node/core/appConfig.js +2 -6
  177. package/dist/esm-node/core/compatible.js +104 -120
  178. package/dist/esm-node/core/index.js +3 -13
  179. package/dist/esm-node/core/loader/index.js +1 -4
  180. package/dist/esm-node/core/loader/loaderManager.js +25 -25
  181. package/dist/esm-node/core/loader/useLoader.js +60 -74
  182. package/dist/esm-node/core/plugin.js +9 -15
  183. package/dist/esm-node/core/types.js +1 -0
  184. package/dist/esm-node/document/Body.js +11 -15
  185. package/dist/esm-node/document/Comment.js +10 -14
  186. package/dist/esm-node/document/DocumentContext.js +1 -4
  187. package/dist/esm-node/document/DocumentStructureContext.js +1 -4
  188. package/dist/esm-node/document/Head.js +14 -14
  189. package/dist/esm-node/document/Html.js +31 -34
  190. package/dist/esm-node/document/Links.js +5 -6
  191. package/dist/esm-node/document/Root.js +19 -21
  192. package/dist/esm-node/document/Script.js +10 -14
  193. package/dist/esm-node/document/Scripts.js +5 -6
  194. package/dist/esm-node/document/cli/index.js +136 -184
  195. package/dist/esm-node/document/constants.js +22 -52
  196. package/dist/esm-node/exports/head.js +1 -4
  197. package/dist/esm-node/exports/loadable.js +1 -4
  198. package/dist/esm-node/exports/server.js +1 -4
  199. package/dist/esm-node/exports/styled.js +1 -4
  200. package/dist/esm-node/index.js +2 -22
  201. package/dist/esm-node/router/cli/index.js +83 -98
  202. package/dist/esm-node/router/index.js +2 -6
  203. package/dist/esm-node/router/runtime/DefaultNotFound.js +11 -17
  204. package/dist/esm-node/router/runtime/DeferredDataScripts.js +1 -4
  205. package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +51 -85
  206. package/dist/esm-node/router/runtime/PrefetchLink.js +53 -59
  207. package/dist/esm-node/router/runtime/fetch.js +1 -3
  208. package/dist/esm-node/router/runtime/fetch.node.js +1 -3
  209. package/dist/esm-node/router/runtime/fetch.worker.js +1 -3
  210. package/dist/esm-node/router/runtime/hooks.js +1 -3
  211. package/dist/esm-node/router/runtime/index.js +6 -67
  212. package/dist/esm-node/router/runtime/plugin.js +27 -41
  213. package/dist/esm-node/router/runtime/plugin.node.js +24 -32
  214. package/dist/esm-node/router/runtime/types.js +1 -0
  215. package/dist/esm-node/router/runtime/utils.js +34 -50
  216. package/dist/esm-node/router/runtime/withRouter.js +8 -14
  217. package/dist/esm-node/runtimeContext.js +2 -6
  218. package/dist/esm-node/ssr/cli/babel-plugin-ssr-loader-id.js +99 -119
  219. package/dist/esm-node/ssr/cli/index.js +106 -125
  220. package/dist/esm-node/ssr/index.js +112 -96
  221. package/dist/esm-node/ssr/index.node.js +39 -39
  222. package/dist/esm-node/ssr/prefetch.js +40 -35
  223. package/dist/esm-node/ssr/react/index.js +2 -6
  224. package/dist/esm-node/ssr/react/nossr/index.js +2 -9
  225. package/dist/esm-node/ssr/react/prerender/index.js +32 -23
  226. package/dist/esm-node/ssr/react/prerender/type.js +1 -0
  227. package/dist/esm-node/ssr/react/prerender/util.js +23 -33
  228. package/dist/esm-node/ssr/react/withCallback/index.js +4 -5
  229. package/dist/esm-node/ssr/serverRender/helmet.js +2 -5
  230. package/dist/esm-node/ssr/serverRender/index.js +5 -10
  231. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +5 -9
  232. package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +3 -10
  233. package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +7 -17
  234. package/dist/esm-node/ssr/serverRender/renderToStream/index.js +2 -7
  235. package/dist/esm-node/ssr/serverRender/renderToStream/loadable.js +4 -8
  236. package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +21 -39
  237. package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +16 -31
  238. package/dist/esm-node/ssr/serverRender/renderToStream/styledComponent.js +1 -4
  239. package/dist/esm-node/ssr/serverRender/renderToStream/template.js +2 -8
  240. package/dist/esm-node/ssr/serverRender/renderToStream/type.js +1 -0
  241. package/dist/esm-node/ssr/serverRender/renderToString/entry.js +50 -39
  242. package/dist/esm-node/ssr/serverRender/renderToString/index.js +1 -8
  243. package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +8 -18
  244. package/dist/esm-node/ssr/serverRender/renderToString/reduce.js +1 -4
  245. package/dist/esm-node/ssr/serverRender/renderToString/styledComponent.js +1 -4
  246. package/dist/esm-node/ssr/serverRender/renderToString/template.js +32 -18
  247. package/dist/esm-node/ssr/serverRender/renderToString/type.js +3 -6
  248. package/dist/esm-node/ssr/serverRender/time.js +1 -4
  249. package/dist/esm-node/ssr/serverRender/time.worker.js +5 -5
  250. package/dist/esm-node/ssr/serverRender/types.js +1 -3
  251. package/dist/esm-node/ssr/serverRender/utils.js +4 -10
  252. package/dist/esm-node/ssr/utils.js +8 -19
  253. package/dist/esm-node/state/cli/index.js +63 -78
  254. package/dist/esm-node/state/index.js +2 -6
  255. package/dist/esm-node/state/plugins.js +4 -10
  256. package/dist/esm-node/state/runtime/index.js +1 -4
  257. package/dist/esm-node/state/runtime/plugin.js +47 -44
  258. package/dist/esm-node/state/types.js +1 -0
  259. package/package.json +14 -10
  260. package/types/model.d.ts +1 -0
  261. package/dist/js/modern/cli/index.js +0 -72
  262. package/dist/js/modern/common.js +0 -4
  263. package/dist/js/modern/config.js +0 -0
  264. package/dist/js/modern/core/app-config.js +0 -10
  265. package/dist/js/modern/core/compatible.js +0 -285
  266. package/dist/js/modern/core/index.js +0 -16
  267. package/dist/js/modern/core/loader/index.js +0 -4
  268. package/dist/js/modern/core/loader/loaderManager.js +0 -165
  269. package/dist/js/modern/core/loader/useLoader.js +0 -114
  270. package/dist/js/modern/core/plugin.js +0 -58
  271. package/dist/js/modern/document/Body.js +0 -23
  272. package/dist/js/modern/document/DocumentContext.js +0 -9
  273. package/dist/js/modern/document/DocumentStructrueContext.js +0 -11
  274. package/dist/js/modern/document/Head.js +0 -27
  275. package/dist/js/modern/document/Html.js +0 -78
  276. package/dist/js/modern/document/Links.js +0 -10
  277. package/dist/js/modern/document/Root.js +0 -33
  278. package/dist/js/modern/document/Script.js +0 -20
  279. package/dist/js/modern/document/Scripts.js +0 -10
  280. package/dist/js/modern/document/cli/index.js +0 -228
  281. package/dist/js/modern/document/constants.js +0 -49
  282. package/dist/js/modern/document/index.js +0 -10
  283. package/dist/js/modern/exports/head.js +0 -6
  284. package/dist/js/modern/exports/loadable.js +0 -6
  285. package/dist/js/modern/exports/server.js +0 -4
  286. package/dist/js/modern/exports/styled.js +0 -6
  287. package/dist/js/modern/index.js +0 -22
  288. package/dist/js/modern/router/cli/index.js +0 -120
  289. package/dist/js/modern/router/index.js +0 -7
  290. package/dist/js/modern/router/runtime/DefaultNotFound.js +0 -14
  291. package/dist/js/modern/router/runtime/index.js +0 -9
  292. package/dist/js/modern/router/runtime/plugin.js +0 -104
  293. package/dist/js/modern/router/runtime/plugin.node.js +0 -149
  294. package/dist/js/modern/router/runtime/server.js +0 -1
  295. package/dist/js/modern/router/runtime/types.js +0 -0
  296. package/dist/js/modern/router/runtime/utils.js +0 -196
  297. package/dist/js/modern/router/runtime/withRouter.js +0 -36
  298. package/dist/js/modern/runtime-context.js +0 -7
  299. package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +0 -130
  300. package/dist/js/modern/ssr/cli/index.js +0 -172
  301. package/dist/js/modern/ssr/index.js +0 -159
  302. package/dist/js/modern/ssr/index.node.js +0 -79
  303. package/dist/js/modern/ssr/prefetch.js +0 -69
  304. package/dist/js/modern/ssr/react/index.js +0 -6
  305. package/dist/js/modern/ssr/react/nossr/index.js +0 -14
  306. package/dist/js/modern/ssr/react/prerender/index.js +0 -108
  307. package/dist/js/modern/ssr/react/prerender/type.js +0 -0
  308. package/dist/js/modern/ssr/react/prerender/util.js +0 -96
  309. package/dist/js/modern/ssr/react/withCallback/index.js +0 -15
  310. package/dist/js/modern/ssr/serverRender/helmet.js +0 -44
  311. package/dist/js/modern/ssr/serverRender/index.js +0 -35
  312. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -36
  313. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -11
  314. package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -61
  315. package/dist/js/modern/ssr/serverRender/renderToStream/index.js +0 -58
  316. package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +0 -24
  317. package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +0 -94
  318. package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +0 -12
  319. package/dist/js/modern/ssr/serverRender/renderToStream/template.js +0 -22
  320. package/dist/js/modern/ssr/serverRender/renderToStream/type.js +0 -0
  321. package/dist/js/modern/ssr/serverRender/renderToString/entry.js +0 -171
  322. package/dist/js/modern/ssr/serverRender/renderToString/index.js +0 -52
  323. package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +0 -48
  324. package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +0 -8
  325. package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +0 -11
  326. package/dist/js/modern/ssr/serverRender/renderToString/template.js +0 -58
  327. package/dist/js/modern/ssr/serverRender/renderToString/type.js +0 -9
  328. package/dist/js/modern/ssr/serverRender/types.js +0 -4
  329. package/dist/js/modern/ssr/serverRender/utils.js +0 -22
  330. package/dist/js/modern/ssr/utils.js +0 -81
  331. package/dist/js/modern/state/cli/index.js +0 -83
  332. package/dist/js/modern/state/index.js +0 -7
  333. package/dist/js/modern/state/plugins.js +0 -13
  334. package/dist/js/modern/state/runtime/index.js +0 -9
  335. package/dist/js/modern/state/runtime/plugin.js +0 -97
  336. package/dist/js/modern/state/types.js +0 -0
  337. package/dist/js/node/cli/index.js +0 -99
  338. package/dist/js/node/common.js +0 -27
  339. package/dist/js/node/config.js +0 -15
  340. package/dist/js/node/core/app-config.js +0 -34
  341. package/dist/js/node/core/compatible.js +0 -312
  342. package/dist/js/node/core/index.js +0 -47
  343. package/dist/js/node/core/loader/index.js +0 -33
  344. package/dist/js/node/core/loader/loaderManager.js +0 -195
  345. package/dist/js/node/core/loader/useLoader.js +0 -132
  346. package/dist/js/node/core/plugin.js +0 -80
  347. package/dist/js/node/document/Body.js +0 -43
  348. package/dist/js/node/document/DocumentContext.js +0 -38
  349. package/dist/js/node/document/DocumentStructrueContext.js +0 -40
  350. package/dist/js/node/document/Head.js +0 -51
  351. package/dist/js/node/document/Html.js +0 -101
  352. package/dist/js/node/document/Links.js +0 -33
  353. package/dist/js/node/document/Root.js +0 -57
  354. package/dist/js/node/document/Script.js +0 -40
  355. package/dist/js/node/document/Scripts.js +0 -33
  356. package/dist/js/node/document/cli/index.js +0 -240
  357. package/dist/js/node/document/constants.js +0 -86
  358. package/dist/js/node/document/index.js +0 -26
  359. package/dist/js/node/exports/head.js +0 -34
  360. package/dist/js/node/exports/loadable.js +0 -34
  361. package/dist/js/node/exports/server.js +0 -27
  362. package/dist/js/node/exports/styled.js +0 -34
  363. package/dist/js/node/index.js +0 -44
  364. package/dist/js/node/router/cli/index.js +0 -135
  365. package/dist/js/node/router/index.js +0 -37
  366. package/dist/js/node/router/runtime/DefaultNotFound.js +0 -37
  367. package/dist/js/node/router/runtime/index.js +0 -33
  368. package/dist/js/node/router/runtime/plugin.js +0 -127
  369. package/dist/js/node/router/runtime/plugin.node.js +0 -175
  370. package/dist/js/node/router/runtime/server.js +0 -17
  371. package/dist/js/node/router/runtime/types.js +0 -15
  372. package/dist/js/node/router/runtime/utils.js +0 -221
  373. package/dist/js/node/router/runtime/withRouter.js +0 -57
  374. package/dist/js/node/runtime-context.js +0 -31
  375. package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +0 -139
  376. package/dist/js/node/ssr/cli/index.js +0 -190
  377. package/dist/js/node/ssr/index.js +0 -185
  378. package/dist/js/node/ssr/index.node.js +0 -107
  379. package/dist/js/node/ssr/prefetch.js +0 -90
  380. package/dist/js/node/ssr/react/index.js +0 -30
  381. package/dist/js/node/ssr/react/nossr/index.js +0 -43
  382. package/dist/js/node/ssr/react/prerender/index.js +0 -130
  383. package/dist/js/node/ssr/react/prerender/type.js +0 -15
  384. package/dist/js/node/ssr/react/prerender/util.js +0 -123
  385. package/dist/js/node/ssr/react/withCallback/index.js +0 -38
  386. package/dist/js/node/ssr/serverRender/helmet.js +0 -65
  387. package/dist/js/node/ssr/serverRender/index.js +0 -56
  388. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -65
  389. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -35
  390. package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -87
  391. package/dist/js/node/ssr/serverRender/renderToStream/index.js +0 -87
  392. package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +0 -47
  393. package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +0 -111
  394. package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +0 -35
  395. package/dist/js/node/ssr/serverRender/renderToStream/template.js +0 -45
  396. package/dist/js/node/ssr/serverRender/renderToStream/type.js +0 -15
  397. package/dist/js/node/ssr/serverRender/renderToString/entry.js +0 -196
  398. package/dist/js/node/ssr/serverRender/renderToString/index.js +0 -81
  399. package/dist/js/node/ssr/serverRender/renderToString/loadable.js +0 -71
  400. package/dist/js/node/ssr/serverRender/renderToString/reduce.js +0 -31
  401. package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +0 -34
  402. package/dist/js/node/ssr/serverRender/renderToString/template.js +0 -82
  403. package/dist/js/node/ssr/serverRender/renderToString/type.js +0 -32
  404. package/dist/js/node/ssr/serverRender/types.js +0 -27
  405. package/dist/js/node/ssr/serverRender/utils.js +0 -46
  406. package/dist/js/node/ssr/utils.js +0 -106
  407. package/dist/js/node/state/cli/index.js +0 -100
  408. package/dist/js/node/state/index.js +0 -37
  409. package/dist/js/node/state/plugins.js +0 -45
  410. package/dist/js/node/state/runtime/index.js +0 -40
  411. package/dist/js/node/state/runtime/plugin.js +0 -121
  412. package/dist/js/node/state/types.js +0 -15
  413. package/dist/js/treeshaking/cli/index.js +0 -186
  414. package/dist/js/treeshaking/common.js +0 -4
  415. package/dist/js/treeshaking/config.js +0 -1
  416. package/dist/js/treeshaking/core/app-config.js +0 -9
  417. package/dist/js/treeshaking/core/compatible.js +0 -485
  418. package/dist/js/treeshaking/core/index.js +0 -7
  419. package/dist/js/treeshaking/core/loader/index.js +0 -2
  420. package/dist/js/treeshaking/core/loader/loaderManager.js +0 -406
  421. package/dist/js/treeshaking/core/loader/useLoader.js +0 -188
  422. package/dist/js/treeshaking/core/plugin.js +0 -176
  423. package/dist/js/treeshaking/document/Body.js +0 -18
  424. package/dist/js/treeshaking/document/DocumentContext.js +0 -7
  425. package/dist/js/treeshaking/document/DocumentStructrueContext.js +0 -9
  426. package/dist/js/treeshaking/document/Head.js +0 -24
  427. package/dist/js/treeshaking/document/Html.js +0 -99
  428. package/dist/js/treeshaking/document/Links.js +0 -8
  429. package/dist/js/treeshaking/document/Root.js +0 -26
  430. package/dist/js/treeshaking/document/Script.js +0 -15
  431. package/dist/js/treeshaking/document/Scripts.js +0 -8
  432. package/dist/js/treeshaking/document/cli/index.js +0 -393
  433. package/dist/js/treeshaking/document/constants.js +0 -35
  434. package/dist/js/treeshaking/document/index.js +0 -10
  435. package/dist/js/treeshaking/exports/head.js +0 -4
  436. package/dist/js/treeshaking/exports/loadable.js +0 -4
  437. package/dist/js/treeshaking/exports/server.js +0 -4
  438. package/dist/js/treeshaking/exports/styled.js +0 -4
  439. package/dist/js/treeshaking/index.js +0 -3
  440. package/dist/js/treeshaking/router/cli/index.js +0 -148
  441. package/dist/js/treeshaking/router/index.js +0 -4
  442. package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +0 -14
  443. package/dist/js/treeshaking/router/runtime/index.js +0 -6
  444. package/dist/js/treeshaking/router/runtime/plugin.js +0 -132
  445. package/dist/js/treeshaking/router/runtime/plugin.node.js +0 -390
  446. package/dist/js/treeshaking/router/runtime/server.js +0 -1
  447. package/dist/js/treeshaking/router/runtime/types.js +0 -1
  448. package/dist/js/treeshaking/router/runtime/utils.js +0 -260
  449. package/dist/js/treeshaking/router/runtime/withRouter.js +0 -67
  450. package/dist/js/treeshaking/runtime-context.js +0 -4
  451. package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +0 -122
  452. package/dist/js/treeshaking/ssr/cli/index.js +0 -217
  453. package/dist/js/treeshaking/ssr/index.js +0 -315
  454. package/dist/js/treeshaking/ssr/index.node.js +0 -240
  455. package/dist/js/treeshaking/ssr/prefetch.js +0 -199
  456. package/dist/js/treeshaking/ssr/react/index.js +0 -3
  457. package/dist/js/treeshaking/ssr/react/nossr/index.js +0 -58
  458. package/dist/js/treeshaking/ssr/react/prerender/index.js +0 -237
  459. package/dist/js/treeshaking/ssr/react/prerender/type.js +0 -1
  460. package/dist/js/treeshaking/ssr/react/prerender/util.js +0 -108
  461. package/dist/js/treeshaking/ssr/react/withCallback/index.js +0 -16
  462. package/dist/js/treeshaking/ssr/serverRender/helmet.js +0 -42
  463. package/dist/js/treeshaking/ssr/serverRender/index.js +0 -169
  464. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -34
  465. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -7
  466. package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -115
  467. package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +0 -165
  468. package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +0 -22
  469. package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +0 -119
  470. package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +0 -11
  471. package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +0 -63
  472. package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +0 -1
  473. package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +0 -393
  474. package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +0 -165
  475. package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +0 -56
  476. package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +0 -10
  477. package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +0 -9
  478. package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +0 -156
  479. package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +0 -7
  480. package/dist/js/treeshaking/ssr/serverRender/types.js +0 -2
  481. package/dist/js/treeshaking/ssr/serverRender/utils.js +0 -69
  482. package/dist/js/treeshaking/ssr/utils.js +0 -134
  483. package/dist/js/treeshaking/state/cli/index.js +0 -71
  484. package/dist/js/treeshaking/state/index.js +0 -4
  485. package/dist/js/treeshaking/state/plugins.js +0 -14
  486. package/dist/js/treeshaking/state/runtime/index.js +0 -5
  487. package/dist/js/treeshaking/state/runtime/plugin.js +0 -198
  488. package/dist/js/treeshaking/state/types.js +0 -1
@@ -1,10 +0,0 @@
1
- const APP_CONFIG_SYMBOL = "config";
2
- const getConfig = (Component) => Component[APP_CONFIG_SYMBOL];
3
- const defineConfig = (Component, config) => {
4
- Component[APP_CONFIG_SYMBOL] = config;
5
- return Component;
6
- };
7
- export {
8
- defineConfig,
9
- getConfig
10
- };
@@ -1,285 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
- var __objRest = (source, exclude) => {
18
- var target = {};
19
- for (var prop in source)
20
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
21
- target[prop] = source[prop];
22
- if (source != null && __getOwnPropSymbols)
23
- for (var prop of __getOwnPropSymbols(source)) {
24
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
25
- target[prop] = source[prop];
26
- }
27
- return target;
28
- };
29
- var __async = (__this, __arguments, generator) => {
30
- return new Promise((resolve, reject) => {
31
- var fulfilled = (value) => {
32
- try {
33
- step(generator.next(value));
34
- } catch (e) {
35
- reject(e);
36
- }
37
- };
38
- var rejected = (value) => {
39
- try {
40
- step(generator.throw(value));
41
- } catch (e) {
42
- reject(e);
43
- }
44
- };
45
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
46
- step((generator = generator.apply(__this, __arguments)).next());
47
- });
48
- };
49
- import { jsx } from "react/jsx-runtime";
50
- import React, { useContext, useMemo } from "react";
51
- import hoistNonReactStatics from "hoist-non-react-statics";
52
- import { ROUTE_MANIFEST } from "@modern-js/utils/constants";
53
- import {
54
- RuntimeReactContext
55
- } from "../runtime-context";
56
- import { runtime } from "./plugin";
57
- import { createLoaderManager } from "./loader/loaderManager";
58
- const IS_REACT18 = process.env.IS_REACT18 === "true";
59
- function isClientArgs(id) {
60
- return typeof id === "string" || typeof HTMLElement !== "undefined" && id instanceof HTMLElement;
61
- }
62
- const runnerMap = /* @__PURE__ */ new WeakMap();
63
- const getInitialContext = (runner) => ({
64
- loaderManager: createLoaderManager({}),
65
- runner,
66
- isBrowser: true,
67
- routeManifest: typeof window !== "undefined" && window[ROUTE_MANIFEST]
68
- });
69
- const createApp = ({ plugins }) => {
70
- const appRuntime = runtime.clone();
71
- appRuntime.usePlugin(...plugins);
72
- return (App) => {
73
- const runner = appRuntime.init();
74
- const WrapperComponent = (props) => {
75
- const element = React.createElement(
76
- App || React.Fragment,
77
- __spreadValues({}, props),
78
- props.children
79
- );
80
- const context = useContext(RuntimeReactContext);
81
- return runner.provide(
82
- { element, props: __spreadValues({}, props), context },
83
- {
84
- onLast: ({ element: element2 }) => element2
85
- }
86
- );
87
- };
88
- if (App) {
89
- hoistNonReactStatics(WrapperComponent, App);
90
- }
91
- const HOCApp = runner.hoc(
92
- { App: WrapperComponent },
93
- {
94
- onLast: ({ App: App2 }) => {
95
- const WrapComponent = (_a) => {
96
- var _b = _a, { context } = _b, props = __objRest(_b, ["context"]);
97
- let contextValue = context;
98
- if (!(contextValue == null ? void 0 : contextValue.runner)) {
99
- contextValue = getInitialContext(runner);
100
- runner.init(
101
- { context: contextValue },
102
- {
103
- onLast: ({ context: context1 }) => {
104
- var _a2;
105
- return (_a2 = App2 == null ? void 0 : App2.init) == null ? void 0 : _a2.call(App2, context1);
106
- }
107
- }
108
- );
109
- }
110
- return /* @__PURE__ */ jsx(RuntimeReactContext.Provider, {
111
- value: contextValue,
112
- children: /* @__PURE__ */ jsx(App2, __spreadValues({}, props))
113
- });
114
- };
115
- return hoistNonReactStatics(WrapComponent, App2);
116
- }
117
- }
118
- );
119
- runnerMap.set(HOCApp, runner);
120
- return HOCApp;
121
- };
122
- };
123
- const bootstrap = (BootApp, id, root, ReactDOM) => __async(void 0, null, function* () {
124
- var _a, _b;
125
- let App = BootApp;
126
- let runner = runnerMap.get(App);
127
- if (!runner) {
128
- App = createApp({ plugins: [] })(App);
129
- runner = runnerMap.get(App);
130
- }
131
- const context = getInitialContext(runner);
132
- const runInit = (_context) => runner.init(
133
- { context: _context },
134
- {
135
- onLast: ({ context: context1 }) => {
136
- var _a2;
137
- return (_a2 = App == null ? void 0 : App.init) == null ? void 0 : _a2.call(App, context1);
138
- }
139
- }
140
- );
141
- if (!id) {
142
- return React.createElement(App, {
143
- context
144
- });
145
- }
146
- const isBrowser = typeof window !== "undefined" && window.name !== "nodejs";
147
- if (isBrowser) {
148
- if (isClientArgs(id)) {
149
- const ssrData = window._SSR_DATA;
150
- const loadersData = ((_a = ssrData == null ? void 0 : ssrData.data) == null ? void 0 : _a.loadersData) || {};
151
- const initialLoadersState = Object.keys(loadersData).reduce(
152
- (res, key) => {
153
- const loaderData = loadersData[key];
154
- if (loaderData.loading !== false) {
155
- return res;
156
- }
157
- res[key] = loaderData;
158
- return res;
159
- },
160
- {}
161
- );
162
- Object.assign(context, __spreadValues({
163
- loaderManager: createLoaderManager(initialLoadersState, {
164
- skipStatic: true
165
- })
166
- }, ssrData ? { ssrContext: ssrData == null ? void 0 : ssrData.context } : {}));
167
- context.initialData = (_b = ssrData == null ? void 0 : ssrData.data) == null ? void 0 : _b.initialData;
168
- const initialData = yield runInit(context);
169
- if (initialData) {
170
- context.initialData = initialData;
171
- }
172
- const rootElement = typeof id !== "string" ? id : document.getElementById(id || "root");
173
- if (!ReactDOM) {
174
- throw Error("The `bootstrap` need provide `ReactDOM` parameter");
175
- }
176
- const ModernRender = (App2) => {
177
- if (IS_REACT18) {
178
- if (root) {
179
- root.render(App2);
180
- } else if (ReactDOM.createRoot) {
181
- ReactDOM.createRoot(rootElement).render(App2);
182
- } else {
183
- throw Error(
184
- "The `bootstrap` `ReactDOM` parameter needs to provide the `createRoot` method"
185
- );
186
- }
187
- } else {
188
- if (!ReactDOM.render) {
189
- throw Error(
190
- "The `bootstrap` `ReactDOM` parameter needs to provide the `render` method"
191
- );
192
- }
193
- ReactDOM.render(App2, rootElement);
194
- }
195
- };
196
- const ModernHydrate = (App2, callback) => {
197
- if (IS_REACT18) {
198
- if (!ReactDOM.hydrateRoot) {
199
- throw Error(
200
- "The `bootstrap` `ReactDOM` parameter needs to provide the `hydrateRoot` method"
201
- );
202
- }
203
- ReactDOM.hydrateRoot(rootElement, App2);
204
- } else {
205
- if (!ReactDOM.hydrate) {
206
- throw Error(
207
- "The `bootstrap` `ReactDOM` parameter needs to provide the `hydrate` method"
208
- );
209
- }
210
- ReactDOM.hydrate(App2, rootElement, callback);
211
- }
212
- };
213
- return runner.client(
214
- {
215
- App,
216
- context,
217
- ModernRender,
218
- ModernHydrate
219
- },
220
- {
221
- onLast: ({ App: App2 }) => {
222
- ModernRender(React.createElement(App2, { context }));
223
- }
224
- }
225
- );
226
- } else {
227
- throw Error(
228
- "`bootstrap` needs id in browser environment, it needs to be string or element"
229
- );
230
- }
231
- } else {
232
- Object.assign(context, {
233
- ssrContext: id,
234
- isBrowser: false,
235
- loaderManager: createLoaderManager(
236
- {},
237
- {
238
- skipNonStatic: id.staticGenerate,
239
- skipStatic: process.env.NODE_ENV === "production" && !id.staticGenerate
240
- }
241
- )
242
- });
243
- const isRedirectResponse = (result) => {
244
- if (typeof Response !== "undefined" && result instanceof Response && result.status >= 300 && result.status <= 399) {
245
- const { status } = result;
246
- const redirectUrl = result.headers.get("Location") || "/";
247
- const { ssrContext } = context;
248
- if (ssrContext) {
249
- ssrContext.res.statusCode = status;
250
- ssrContext.res.setHeader("Location", redirectUrl);
251
- ssrContext.redirection.status = status;
252
- ssrContext.redirection.url = redirectUrl;
253
- }
254
- return true;
255
- }
256
- return false;
257
- };
258
- const initialData = yield runInit(context);
259
- if (!isRedirectResponse(initialData)) {
260
- context.initialData = initialData;
261
- return runner.server({
262
- App,
263
- context
264
- });
265
- }
266
- }
267
- });
268
- const useRuntimeContext = () => {
269
- const context = useContext(RuntimeReactContext);
270
- const memoizedContext = useMemo(
271
- () => context.runner.pickContext(
272
- { context, pickedContext: {} },
273
- {
274
- onLast: ({ pickedContext }) => pickedContext
275
- }
276
- ),
277
- [context]
278
- );
279
- return memoizedContext;
280
- };
281
- export {
282
- bootstrap,
283
- createApp,
284
- useRuntimeContext
285
- };
@@ -1,16 +0,0 @@
1
- import { createPlugin, createRuntime, runtime, registerInit } from "./plugin";
2
- import { defineConfig, getConfig } from "./app-config";
3
- export * from "./compatible";
4
- import { RuntimeReactContext, ServerRouterContext } from "../runtime-context";
5
- export * from "./loader";
6
- export * from "@modern-js/plugin";
7
- export {
8
- RuntimeReactContext,
9
- ServerRouterContext,
10
- createPlugin,
11
- createRuntime,
12
- defineConfig,
13
- getConfig,
14
- registerInit,
15
- runtime
16
- };
@@ -1,4 +0,0 @@
1
- import { default as default2 } from "./useLoader";
2
- export {
3
- default2 as useLoader
4
- };
@@ -1,165 +0,0 @@
1
- var __async = (__this, __arguments, generator) => {
2
- return new Promise((resolve, reject) => {
3
- var fulfilled = (value) => {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- };
10
- var rejected = (value) => {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- };
17
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
- step((generator = generator.apply(__this, __arguments)).next());
19
- });
20
- };
21
- import invariant from "invariant";
22
- const createGetId = () => {
23
- const idCache = /* @__PURE__ */ new Map();
24
- return (objectId) => {
25
- const cachedId = idCache.get(objectId);
26
- if (cachedId) {
27
- return cachedId;
28
- }
29
- const id = JSON.stringify(objectId);
30
- invariant(id, "params should be not null value");
31
- idCache.set(objectId, id);
32
- return id;
33
- };
34
- };
35
- var LoaderStatus = /* @__PURE__ */ ((LoaderStatus2) => {
36
- LoaderStatus2[LoaderStatus2["idle"] = 0] = "idle";
37
- LoaderStatus2[LoaderStatus2["loading"] = 1] = "loading";
38
- LoaderStatus2[LoaderStatus2["fulfilled"] = 2] = "fulfilled";
39
- LoaderStatus2[LoaderStatus2["rejected"] = 3] = "rejected";
40
- return LoaderStatus2;
41
- })(LoaderStatus || {});
42
- const createLoader = (id, initialData = {
43
- loading: false,
44
- reloading: false,
45
- data: void 0,
46
- error: void 0
47
- }, loaderFn, skip = false) => {
48
- let promise;
49
- let status = 0 /* idle */;
50
- let { data, error } = initialData;
51
- let hasLoaded = false;
52
- const handlers = /* @__PURE__ */ new Set();
53
- const load = () => __async(void 0, null, function* () {
54
- if (skip) {
55
- return promise;
56
- }
57
- if (status === 1 /* loading */) {
58
- return promise;
59
- }
60
- status = 1 /* loading */;
61
- notify();
62
- promise = loaderFn().then((value) => {
63
- data = value;
64
- error = null;
65
- status = 2 /* fulfilled */;
66
- }).catch((e) => {
67
- error = e;
68
- data = null;
69
- status = 3 /* rejected */;
70
- }).finally(() => {
71
- promise = null;
72
- hasLoaded = true;
73
- notify();
74
- });
75
- return promise;
76
- });
77
- const getResult = () => ({
78
- loading: !hasLoaded && status === 1 /* loading */,
79
- reloading: hasLoaded && status === 1 /* loading */,
80
- data,
81
- error: error instanceof Error ? `${error.message}` : error,
82
- _error: error
83
- });
84
- const notify = () => {
85
- [...handlers].forEach((handler) => {
86
- handler(status, getResult());
87
- });
88
- };
89
- const onChange = (handler) => {
90
- handlers.add(handler);
91
- return () => {
92
- handlers.delete(handler);
93
- };
94
- };
95
- return {
96
- get result() {
97
- return getResult();
98
- },
99
- get promise() {
100
- return promise;
101
- },
102
- onChange,
103
- load
104
- };
105
- };
106
- const createLoaderManager = (initialDataMap, managerOptions = {}) => {
107
- const { skipStatic = false, skipNonStatic = false } = managerOptions;
108
- const loadersMap = /* @__PURE__ */ new Map();
109
- const getId = createGetId();
110
- const add = (loaderFn, loaderOptions) => {
111
- const id = getId(loaderOptions.params);
112
- let loader = loadersMap.get(id);
113
- const cache = loaderOptions._cache;
114
- if (!loader || cache === false) {
115
- const ignoreNonStatic = skipNonStatic && !loaderOptions.static;
116
- const ignoreStatic = skipStatic && loaderOptions.static;
117
- const skipExec = ignoreNonStatic || ignoreStatic;
118
- loader = createLoader(
119
- id,
120
- typeof initialDataMap[id] !== "undefined" ? initialDataMap[id] : { data: loaderOptions.initialData },
121
- loaderFn,
122
- skipExec
123
- );
124
- loadersMap.set(id, loader);
125
- }
126
- return id;
127
- };
128
- const get = (id) => loadersMap.get(id);
129
- const hasPendingLoaders = () => {
130
- for (const loader of loadersMap.values()) {
131
- const { promise } = loader;
132
- if (promise instanceof Promise) {
133
- return true;
134
- }
135
- }
136
- return false;
137
- };
138
- const awaitPendingLoaders = () => __async(void 0, null, function* () {
139
- const pendingLoaders = [];
140
- for (const [id, loader] of loadersMap) {
141
- const { promise } = loader;
142
- if (promise instanceof Promise) {
143
- pendingLoaders.push([id, loader]);
144
- }
145
- }
146
- yield Promise.all(pendingLoaders.map((item) => item[1].promise));
147
- return pendingLoaders.reduce(
148
- (res, [id, loader]) => {
149
- res[id] = loader.result;
150
- return res;
151
- },
152
- {}
153
- );
154
- });
155
- return {
156
- hasPendingLoaders,
157
- awaitPendingLoaders,
158
- add,
159
- get
160
- };
161
- };
162
- export {
163
- LoaderStatus,
164
- createLoaderManager
165
- };
@@ -1,114 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
- import {
21
- useContext,
22
- useRef,
23
- useMemo,
24
- useState,
25
- useCallback,
26
- useEffect
27
- } from "react";
28
- import invariant from "invariant";
29
- import { RuntimeReactContext } from "../../runtime-context";
30
- import { LoaderStatus } from "./loaderManager";
31
- const useLoader = (loaderFn, options = { params: void 0 }) => {
32
- const context = useContext(RuntimeReactContext);
33
- const isSSRRender = Boolean(context.ssr);
34
- const { loaderManager } = context;
35
- const loaderRef = useRef();
36
- const unlistenLoaderChangeRef = useRef(null);
37
- if (isSSRRender && Object.prototype.hasOwnProperty.call(options, "_cache")) {
38
- delete options._cache;
39
- }
40
- const load = useCallback(
41
- (params) => {
42
- var _a, _b, _c, _d, _e, _f;
43
- if (typeof params === "undefined") {
44
- return (_a = loaderRef.current) == null ? void 0 : _a.load();
45
- }
46
- const id = loaderManager.add(
47
- () => {
48
- try {
49
- const res2 = loaderFn(context, params);
50
- if (res2 instanceof Promise) {
51
- return res2;
52
- }
53
- return Promise.resolve(res2);
54
- } catch (e) {
55
- return Promise.reject(e);
56
- }
57
- },
58
- __spreadProps(__spreadValues({}, options), {
59
- params
60
- })
61
- );
62
- loaderRef.current = loaderManager.get(id);
63
- (_b = unlistenLoaderChangeRef.current) == null ? void 0 : _b.call(unlistenLoaderChangeRef);
64
- if (isSSRRender) {
65
- return void 0;
66
- }
67
- if (options.skip) {
68
- return void 0;
69
- }
70
- if (context._hydration && ((_e = (_d = (_c = window == null ? void 0 : window._SSR_DATA) == null ? void 0 : _c.data) == null ? void 0 : _d.loadersData[id]) == null ? void 0 : _e.error) === null) {
71
- return void 0;
72
- }
73
- const res = loaderRef.current.load();
74
- unlistenLoaderChangeRef.current = (_f = loaderRef.current) == null ? void 0 : _f.onChange(
75
- (_status, _result) => {
76
- var _a2, _b2;
77
- setResult(_result);
78
- if (_status === LoaderStatus.fulfilled) {
79
- (_a2 = options == null ? void 0 : options.onSuccess) == null ? void 0 : _a2.call(options, _result.data);
80
- }
81
- if (_status === LoaderStatus.rejected) {
82
- (_b2 = options == null ? void 0 : options.onError) == null ? void 0 : _b2.call(options, _result.error);
83
- }
84
- }
85
- );
86
- return res;
87
- },
88
- [options.skip]
89
- );
90
- useEffect(
91
- () => () => {
92
- var _a;
93
- (_a = unlistenLoaderChangeRef.current) == null ? void 0 : _a.call(unlistenLoaderChangeRef);
94
- },
95
- []
96
- );
97
- useMemo(() => {
98
- var _a;
99
- const p = (_a = options.params) != null ? _a : loaderFn.id;
100
- invariant(
101
- typeof p !== "undefined" && p !== null,
102
- "Params is required in useLoader"
103
- );
104
- load(p);
105
- }, [options.params]);
106
- const [result, setResult] = useState(loaderRef.current.result);
107
- return __spreadProps(__spreadValues({}, result), {
108
- reload: load
109
- });
110
- };
111
- var useLoader_default = useLoader;
112
- export {
113
- useLoader_default as default
114
- };
@@ -1,58 +0,0 @@
1
- var __async = (__this, __arguments, generator) => {
2
- return new Promise((resolve, reject) => {
3
- var fulfilled = (value) => {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- };
10
- var rejected = (value) => {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- };
17
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
- step((generator = generator.apply(__this, __arguments)).next());
19
- });
20
- };
21
- import {
22
- createManager,
23
- createPipeline,
24
- createAsyncPipeline
25
- } from "@modern-js/plugin";
26
- import { createLoaderManager } from "./loader/loaderManager";
27
- const hoc = createPipeline();
28
- const provide = createPipeline();
29
- const client = createAsyncPipeline();
30
- const server = createAsyncPipeline();
31
- const init = createAsyncPipeline();
32
- const pickContext = createPipeline();
33
- const runtimeHooks = {
34
- hoc,
35
- provide,
36
- client,
37
- server,
38
- init,
39
- pickContext
40
- };
41
- const createRuntime = () => createManager(runtimeHooks);
42
- const registerInit = (App, _init) => {
43
- const originalInit = App.init;
44
- App.init = (context) => __async(void 0, null, function* () {
45
- if (!context.loaderManager) {
46
- context.loaderManager = createLoaderManager({});
47
- }
48
- yield Promise.all([originalInit == null ? void 0 : originalInit(context), _init == null ? void 0 : _init(context)]);
49
- });
50
- };
51
- const runtime = createRuntime();
52
- const { createPlugin } = runtime;
53
- export {
54
- createPlugin,
55
- createRuntime,
56
- registerInit,
57
- runtime
58
- };
@@ -1,23 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { useContext } from "react";
3
- import {
4
- DOCUMENT_CHUNKSMAP_PLACEHOLDER,
5
- DOCUMENT_SSRDATASCRIPT_PLACEHOLDER
6
- } from "./constants";
7
- import { DocumentStructrueContext } from "./DocumentStructrueContext";
8
- import { DefaultRoot } from "./Root";
9
- function Body(props) {
10
- const { hasSetRoot } = useContext(DocumentStructrueContext);
11
- const { children } = props;
12
- return /* @__PURE__ */ jsxs("body", {
13
- children: [
14
- hasSetRoot ? null : /* @__PURE__ */ jsx(DefaultRoot, {}),
15
- children,
16
- `${DOCUMENT_CHUNKSMAP_PLACEHOLDER}`,
17
- `${DOCUMENT_SSRDATASCRIPT_PLACEHOLDER}`
18
- ]
19
- });
20
- }
21
- export {
22
- Body
23
- };
@@ -1,9 +0,0 @@
1
- import React from "react";
2
- const DocumentContext = React.createContext({
3
- config: {},
4
- templateParams: {},
5
- processEnv: {}
6
- });
7
- export {
8
- DocumentContext
9
- };
@@ -1,11 +0,0 @@
1
- import React from "react";
2
- const DocumentStructrueContext = React.createContext({
3
- hasSetHead: false,
4
- hasSetScripts: false,
5
- hasSetBody: false,
6
- hasSetRoot: false,
7
- hasSetLinks: false
8
- });
9
- export {
10
- DocumentStructrueContext
11
- };