@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 +1,8 @@
1
- import { jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React, { useContext, useMemo } from "react";
3
3
  import hoistNonReactStatics from "hoist-non-react-statics";
4
4
  import { ROUTE_MANIFEST } from "@modern-js/utils/universal/constants";
5
- import {
6
- RuntimeReactContext
7
- } from "../runtimeContext";
5
+ import { RuntimeReactContext } from "../runtimeContext";
8
6
  import { runtime } from "./plugin";
9
7
  import { createLoaderManager } from "./loader/loaderManager";
10
8
  const IS_REACT18 = process.env.IS_REACT18 === "true";
@@ -18,110 +16,116 @@ const getInitialContext = (runner) => ({
18
16
  isBrowser: true,
19
17
  routeManifest: typeof window !== "undefined" && window[ROUTE_MANIFEST]
20
18
  });
21
- const createApp = ({
22
- plugins,
23
- props: globalProps
24
- }) => {
19
+ export const createApp = ({ plugins, props: globalProps }) => {
25
20
  const appRuntime = runtime.clone();
26
21
  appRuntime.usePlugin(...plugins);
27
22
  return (App) => {
28
23
  const runner = appRuntime.init();
29
24
  const WrapperComponent = (props) => {
30
- var _a;
31
- const element = React.createElement(
32
- App || React.Fragment,
33
- App ? { ...props } : null,
34
- App ? props.children : React.cloneElement(props.children, {
35
- ...(_a = props.children) == null ? void 0 : _a.props,
36
- ...props
37
- })
38
- );
25
+ var _props_children;
26
+ const element = /* @__PURE__ */ React.createElement(App || React.Fragment, App ? {
27
+ ...props
28
+ } : null, App ? props.children : /* @__PURE__ */ React.cloneElement(props.children, {
29
+ ...(_props_children = props.children) === null || _props_children === void 0 ? void 0 : _props_children.props,
30
+ ...props
31
+ }));
39
32
  const context = useContext(RuntimeReactContext);
40
- return runner.provide(
41
- { element, props: { ...props }, context },
42
- {
43
- onLast: ({ element: element2 }) => element2
44
- }
45
- );
33
+ return runner.provide({
34
+ element,
35
+ props: {
36
+ ...props
37
+ },
38
+ context
39
+ }, {
40
+ onLast: ({ element: element2 }) => element2
41
+ });
46
42
  };
47
43
  if (App) {
48
44
  hoistNonReactStatics(WrapperComponent, App);
49
45
  }
50
- const HOCApp = runner.hoc(
51
- { App: WrapperComponent },
52
- {
53
- onLast: ({ App: App2 }) => {
54
- const WrapComponent = ({ context, ...props }) => {
55
- let contextValue = context;
56
- if (!(contextValue == null ? void 0 : contextValue.runner)) {
57
- contextValue = getInitialContext(runner);
58
- runner.init(
59
- { context: contextValue },
60
- {
61
- onLast: ({ context: context1 }) => {
62
- var _a;
63
- return (_a = App2 == null ? void 0 : App2.init) == null ? void 0 : _a.call(App2, context1);
64
- }
65
- }
66
- );
67
- }
68
- const mergedProps = { ...props, ...globalProps };
69
- return /* @__PURE__ */ jsx(RuntimeReactContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(App2, { ...mergedProps }) });
46
+ const HOCApp = runner.hoc({
47
+ App: WrapperComponent
48
+ }, {
49
+ onLast: ({ App: App2 }) => {
50
+ const WrapComponent = ({ context, ...props }) => {
51
+ let contextValue = context;
52
+ if (!(contextValue === null || contextValue === void 0 ? void 0 : contextValue.runner)) {
53
+ contextValue = getInitialContext(runner);
54
+ runner.init({
55
+ context: contextValue
56
+ }, {
57
+ onLast: ({ context: context1 }) => {
58
+ var _App_init;
59
+ return App2 === null || App2 === void 0 ? void 0 : (_App_init = App2.init) === null || _App_init === void 0 ? void 0 : _App_init.call(App2, context1);
60
+ }
61
+ });
62
+ }
63
+ const mergedProps = {
64
+ ...props,
65
+ ...globalProps
70
66
  };
71
- return hoistNonReactStatics(WrapComponent, App2);
72
- }
67
+ return /* @__PURE__ */ _jsx(RuntimeReactContext.Provider, {
68
+ value: contextValue,
69
+ children: /* @__PURE__ */ _jsx(App2, {
70
+ ...mergedProps
71
+ })
72
+ });
73
+ };
74
+ return hoistNonReactStatics(WrapComponent, App2);
73
75
  }
74
- );
76
+ });
75
77
  runnerMap.set(HOCApp, runner);
76
78
  return HOCApp;
77
79
  };
78
80
  };
79
- const bootstrap = async (BootApp, id, root, ReactDOM) => {
80
- var _a, _b;
81
+ export const bootstrap = async (BootApp, id, root, ReactDOM) => {
81
82
  let App = BootApp;
82
83
  let runner = runnerMap.get(App);
83
84
  if (!runner) {
84
- App = createApp({ plugins: [] })(App);
85
+ App = createApp({
86
+ plugins: []
87
+ })(App);
85
88
  runner = runnerMap.get(App);
86
89
  }
87
90
  const context = getInitialContext(runner);
88
- const runInit = (_context) => runner.init(
89
- { context: _context },
90
- {
91
+ const runInit = (_context) => {
92
+ return runner.init({
93
+ context: _context
94
+ }, {
91
95
  onLast: ({ context: context1 }) => {
92
- var _a2;
93
- return (_a2 = App == null ? void 0 : App.init) == null ? void 0 : _a2.call(App, context1);
96
+ var _App_init;
97
+ return App === null || App === void 0 ? void 0 : (_App_init = App.init) === null || _App_init === void 0 ? void 0 : _App_init.call(App, context1);
94
98
  }
95
- }
96
- );
99
+ });
100
+ };
97
101
  if (!id) {
98
- return React.createElement(App, {
102
+ return /* @__PURE__ */ React.createElement(App, {
99
103
  context
100
104
  });
101
105
  }
102
106
  const isBrowser = typeof window !== "undefined" && window.name !== "nodejs";
103
107
  if (isBrowser) {
104
108
  if (isClientArgs(id)) {
109
+ var _ssrData_data, _ssrData_data1;
105
110
  const ssrData = window._SSR_DATA;
106
- const loadersData = ((_a = ssrData == null ? void 0 : ssrData.data) == null ? void 0 : _a.loadersData) || {};
107
- const initialLoadersState = Object.keys(loadersData).reduce(
108
- (res, key) => {
109
- const loaderData = loadersData[key];
110
- if (loaderData.loading !== false) {
111
- return res;
112
- }
113
- res[key] = loaderData;
111
+ const loadersData = (ssrData === null || ssrData === void 0 ? void 0 : (_ssrData_data = ssrData.data) === null || _ssrData_data === void 0 ? void 0 : _ssrData_data.loadersData) || {};
112
+ const initialLoadersState = Object.keys(loadersData).reduce((res, key) => {
113
+ const loaderData = loadersData[key];
114
+ if (loaderData.loading !== false) {
114
115
  return res;
115
- },
116
- {}
117
- );
116
+ }
117
+ res[key] = loaderData;
118
+ return res;
119
+ }, {});
118
120
  Object.assign(context, {
119
121
  loaderManager: createLoaderManager(initialLoadersState, {
120
122
  skipStatic: true
121
123
  }),
122
- ...ssrData ? { ssrContext: ssrData == null ? void 0 : ssrData.context } : {}
124
+ ...ssrData ? {
125
+ ssrContext: ssrData === null || ssrData === void 0 ? void 0 : ssrData.context
126
+ } : {}
123
127
  });
124
- context.initialData = (_b = ssrData == null ? void 0 : ssrData.data) == null ? void 0 : _b.initialData;
128
+ context.initialData = ssrData === null || ssrData === void 0 ? void 0 : (_ssrData_data1 = ssrData.data) === null || _ssrData_data1 === void 0 ? void 0 : _ssrData_data1.initialData;
125
129
  const initialData = await runInit(context);
126
130
  if (initialData) {
127
131
  context.initialData = initialData;
@@ -137,15 +141,11 @@ const bootstrap = async (BootApp, id, root, ReactDOM) => {
137
141
  } else if (ReactDOM.createRoot) {
138
142
  ReactDOM.createRoot(rootElement).render(App2);
139
143
  } else {
140
- throw Error(
141
- "The `bootstrap` `ReactDOM` parameter needs to provide the `createRoot` method"
142
- );
144
+ throw Error("The `bootstrap` `ReactDOM` parameter needs to provide the `createRoot` method");
143
145
  }
144
146
  } else {
145
147
  if (!ReactDOM.render) {
146
- throw Error(
147
- "The `bootstrap` `ReactDOM` parameter needs to provide the `render` method"
148
- );
148
+ throw Error("The `bootstrap` `ReactDOM` parameter needs to provide the `render` method");
149
149
  }
150
150
  ReactDOM.render(App2, rootElement);
151
151
  }
@@ -153,50 +153,40 @@ const bootstrap = async (BootApp, id, root, ReactDOM) => {
153
153
  const ModernHydrate = (App2, callback) => {
154
154
  if (IS_REACT18) {
155
155
  if (!ReactDOM.hydrateRoot) {
156
- throw Error(
157
- "The `bootstrap` `ReactDOM` parameter needs to provide the `hydrateRoot` method"
158
- );
156
+ throw Error("The `bootstrap` `ReactDOM` parameter needs to provide the `hydrateRoot` method");
159
157
  }
160
158
  ReactDOM.hydrateRoot(rootElement, App2);
161
159
  } else {
162
160
  if (!ReactDOM.hydrate) {
163
- throw Error(
164
- "The `bootstrap` `ReactDOM` parameter needs to provide the `hydrate` method"
165
- );
161
+ throw Error("The `bootstrap` `ReactDOM` parameter needs to provide the `hydrate` method");
166
162
  }
167
163
  ReactDOM.hydrate(App2, rootElement, callback);
168
164
  }
169
165
  };
170
- return runner.client(
171
- {
172
- App,
173
- context,
174
- ModernRender,
175
- ModernHydrate
176
- },
177
- {
178
- onLast: ({ App: App2 }) => {
179
- ModernRender(React.createElement(App2, { context }));
180
- }
166
+ return runner.client({
167
+ App,
168
+ context,
169
+ ModernRender,
170
+ ModernHydrate
171
+ }, {
172
+ onLast: ({ App: App2 }) => {
173
+ ModernRender(/* @__PURE__ */ React.createElement(App2, {
174
+ context
175
+ }));
181
176
  }
182
- );
177
+ });
183
178
  } else {
184
- throw Error(
185
- "`bootstrap` needs id in browser environment, it needs to be string or element"
186
- );
179
+ throw Error("`bootstrap` needs id in browser environment, it needs to be string or element");
187
180
  }
188
181
  } else {
189
182
  Object.assign(context, {
190
183
  ssrContext: id,
191
184
  isBrowser: false,
192
- loaderManager: createLoaderManager(
193
- {},
194
- {
195
- skipNonStatic: id.staticGenerate,
196
- // if not static generate, only non-static loader can exec on prod env
197
- skipStatic: process.env.NODE_ENV === "production" && !id.staticGenerate
198
- }
199
- )
185
+ loaderManager: createLoaderManager({}, {
186
+ skipNonStatic: id.staticGenerate,
187
+ // if not static generate, only non-static loader can exec on prod env
188
+ skipStatic: process.env.NODE_ENV === "production" && !id.staticGenerate
189
+ })
200
190
  });
201
191
  const isRedirectResponse = (result) => {
202
192
  if (typeof Response !== "undefined" && // fix: ssg workflow doesn't inject Web Response
@@ -225,21 +215,15 @@ const bootstrap = async (BootApp, id, root, ReactDOM) => {
225
215
  }
226
216
  }
227
217
  };
228
- const useRuntimeContext = () => {
218
+ export const useRuntimeContext = () => {
229
219
  const context = useContext(RuntimeReactContext);
230
- const memoizedContext = useMemo(
231
- () => context.runner.pickContext(
232
- { context, pickedContext: {} },
233
- {
234
- onLast: ({ pickedContext }) => pickedContext
235
- }
236
- ),
237
- [context]
238
- );
220
+ const memoizedContext = useMemo(() => context.runner.pickContext({
221
+ context,
222
+ pickedContext: {}
223
+ }, {
224
+ onLast: ({ pickedContext }) => pickedContext
225
+ }), [
226
+ context
227
+ ]);
239
228
  return memoizedContext;
240
229
  };
241
- export {
242
- bootstrap,
243
- createApp,
244
- useRuntimeContext
245
- };
@@ -1,16 +1,6 @@
1
- import { createPlugin, createRuntime, runtime, registerInit } from "./plugin";
2
- import { defineConfig, getConfig } from "./appConfig";
1
+ export { createPlugin, createRuntime, runtime, registerInit } from "./plugin";
2
+ export { defineConfig, getConfig } from "./appConfig";
3
3
  export * from "./compatible";
4
- import { RuntimeReactContext, ServerRouterContext } from "../runtimeContext";
4
+ export { RuntimeReactContext, ServerRouterContext } from "../runtimeContext";
5
5
  export * from "./loader";
6
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 +1 @@
1
- import { default as default2 } from "./useLoader";
2
- export {
3
- default2 as useLoader
4
- };
1
+ export { default as useLoader } from "./useLoader";
@@ -12,13 +12,13 @@ const createGetId = () => {
12
12
  return id;
13
13
  };
14
14
  };
15
- var LoaderStatus = /* @__PURE__ */ ((LoaderStatus2) => {
15
+ export var LoaderStatus;
16
+ (function(LoaderStatus2) {
16
17
  LoaderStatus2[LoaderStatus2["idle"] = 0] = "idle";
17
18
  LoaderStatus2[LoaderStatus2["loading"] = 1] = "loading";
18
19
  LoaderStatus2[LoaderStatus2["fulfilled"] = 2] = "fulfilled";
19
20
  LoaderStatus2[LoaderStatus2["rejected"] = 3] = "rejected";
20
- return LoaderStatus2;
21
- })(LoaderStatus || {});
21
+ })(LoaderStatus || (LoaderStatus = {}));
22
22
  const createLoader = (id, initialData = {
23
23
  loading: false,
24
24
  reloading: false,
@@ -26,7 +26,7 @@ const createLoader = (id, initialData = {
26
26
  error: void 0
27
27
  }, loaderFn, skip = false) => {
28
28
  let promise;
29
- let status = 0 /* idle */;
29
+ let status = LoaderStatus.idle;
30
30
  let { data, error } = initialData;
31
31
  let hasLoaded = false;
32
32
  const handlers = /* @__PURE__ */ new Set();
@@ -34,19 +34,19 @@ const createLoader = (id, initialData = {
34
34
  if (skip) {
35
35
  return promise;
36
36
  }
37
- if (status === 1 /* loading */) {
37
+ if (status === LoaderStatus.loading) {
38
38
  return promise;
39
39
  }
40
- status = 1 /* loading */;
40
+ status = LoaderStatus.loading;
41
41
  notify();
42
42
  promise = loaderFn().then((value) => {
43
43
  data = value;
44
44
  error = null;
45
- status = 2 /* fulfilled */;
45
+ status = LoaderStatus.fulfilled;
46
46
  }).catch((e) => {
47
47
  error = e;
48
48
  data = null;
49
- status = 3 /* rejected */;
49
+ status = LoaderStatus.rejected;
50
50
  }).finally(() => {
51
51
  promise = null;
52
52
  hasLoaded = true;
@@ -55,15 +55,17 @@ const createLoader = (id, initialData = {
55
55
  return promise;
56
56
  };
57
57
  const getResult = () => ({
58
- loading: !hasLoaded && status === 1 /* loading */,
59
- reloading: hasLoaded && status === 1 /* loading */,
58
+ loading: !hasLoaded && status === LoaderStatus.loading,
59
+ reloading: hasLoaded && status === LoaderStatus.loading,
60
60
  data,
61
61
  error: error instanceof Error ? `${error.message}` : error,
62
62
  // redundant fields for ssr log
63
63
  _error: error
64
64
  });
65
65
  const notify = () => {
66
- [...handlers].forEach((handler) => {
66
+ [
67
+ ...handlers
68
+ ].forEach((handler) => {
67
69
  handler(status, getResult());
68
70
  });
69
71
  };
@@ -84,7 +86,7 @@ const createLoader = (id, initialData = {
84
86
  load
85
87
  };
86
88
  };
87
- const createLoaderManager = (initialDataMap, managerOptions = {}) => {
89
+ export const createLoaderManager = (initialDataMap, managerOptions = {}) => {
88
90
  const { skipStatic = false, skipNonStatic = false } = managerOptions;
89
91
  const loadersMap = /* @__PURE__ */ new Map();
90
92
  const getId = createGetId();
@@ -98,7 +100,9 @@ const createLoaderManager = (initialDataMap, managerOptions = {}) => {
98
100
  const skipExec = ignoreNonStatic || ignoreStatic;
99
101
  loader = createLoader(
100
102
  id,
101
- typeof initialDataMap[id] !== "undefined" ? initialDataMap[id] : { data: loaderOptions.initialData },
103
+ typeof initialDataMap[id] !== "undefined" ? initialDataMap[id] : {
104
+ data: loaderOptions.initialData
105
+ },
102
106
  loaderFn,
103
107
  // Todo whether static loader is exec when CSR
104
108
  skipExec
@@ -122,17 +126,17 @@ const createLoaderManager = (initialDataMap, managerOptions = {}) => {
122
126
  for (const [id, loader] of loadersMap) {
123
127
  const { promise } = loader;
124
128
  if (promise instanceof Promise) {
125
- pendingLoaders.push([id, loader]);
129
+ pendingLoaders.push([
130
+ id,
131
+ loader
132
+ ]);
126
133
  }
127
134
  }
128
135
  await Promise.all(pendingLoaders.map((item) => item[1].promise));
129
- return pendingLoaders.reduce(
130
- (res, [id, loader]) => {
131
- res[id] = loader.result;
132
- return res;
133
- },
134
- {}
135
- );
136
+ return pendingLoaders.reduce((res, [id, loader]) => {
137
+ res[id] = loader.result;
138
+ return res;
139
+ }, {});
136
140
  };
137
141
  return {
138
142
  hasPendingLoaders,
@@ -141,7 +145,3 @@ const createLoaderManager = (initialDataMap, managerOptions = {}) => {
141
145
  get
142
146
  };
143
147
  };
144
- export {
145
- LoaderStatus,
146
- createLoaderManager
147
- };
@@ -1,15 +1,10 @@
1
- import {
2
- useContext,
3
- useRef,
4
- useMemo,
5
- useState,
6
- useCallback,
7
- useEffect
8
- } from "react";
1
+ import { useContext, useRef, useMemo, useState, useCallback, useEffect } from "react";
9
2
  import invariant from "invariant";
10
3
  import { RuntimeReactContext } from "../../runtimeContext";
11
4
  import { LoaderStatus } from "./loaderManager";
12
- const useLoader = (loaderFn, options = { params: void 0 }) => {
5
+ const useLoader = (loaderFn, options = {
6
+ params: void 0
7
+ }) => {
13
8
  const context = useContext(RuntimeReactContext);
14
9
  const isSSRRender = Boolean(context.ssr);
15
10
  const { loaderManager } = context;
@@ -18,80 +13,71 @@ const useLoader = (loaderFn, options = { params: void 0 }) => {
18
13
  if (isSSRRender && Object.prototype.hasOwnProperty.call(options, "_cache")) {
19
14
  delete options._cache;
20
15
  }
21
- const load = useCallback(
22
- (params) => {
23
- var _a, _b, _c, _d, _e, _f;
24
- if (typeof params === "undefined") {
25
- return (_a = loaderRef.current) == null ? void 0 : _a.load();
26
- }
27
- const id = loaderManager.add(
28
- () => {
29
- try {
30
- const res2 = loaderFn(context, params);
31
- if (res2 instanceof Promise) {
32
- return res2;
33
- }
34
- return Promise.resolve(res2);
35
- } catch (e) {
36
- return Promise.reject(e);
37
- }
38
- },
39
- {
40
- ...options,
41
- params
16
+ const load = useCallback((params) => {
17
+ var _unlistenLoaderChangeRef_current, _window__SSR_DATA_data_loadersData_id, _window__SSR_DATA, _window__SSR_DATA_data, _loaderRef_current;
18
+ if (typeof params === "undefined") {
19
+ var _loaderRef_current1;
20
+ return (_loaderRef_current1 = loaderRef.current) === null || _loaderRef_current1 === void 0 ? void 0 : _loaderRef_current1.load();
21
+ }
22
+ const id = loaderManager.add(() => {
23
+ try {
24
+ const res2 = loaderFn(context, params);
25
+ if (res2 instanceof Promise) {
26
+ return res2;
42
27
  }
43
- );
44
- loaderRef.current = loaderManager.get(id);
45
- (_b = unlistenLoaderChangeRef.current) == null ? void 0 : _b.call(unlistenLoaderChangeRef);
46
- if (isSSRRender) {
47
- return void 0;
28
+ return Promise.resolve(res2);
29
+ } catch (e) {
30
+ return Promise.reject(e);
48
31
  }
49
- if (options.skip) {
50
- return void 0;
32
+ }, {
33
+ ...options,
34
+ params
35
+ });
36
+ loaderRef.current = loaderManager.get(id);
37
+ (_unlistenLoaderChangeRef_current = unlistenLoaderChangeRef.current) === null || _unlistenLoaderChangeRef_current === void 0 ? void 0 : _unlistenLoaderChangeRef_current.call(unlistenLoaderChangeRef);
38
+ if (isSSRRender) {
39
+ return void 0;
40
+ }
41
+ if (options.skip) {
42
+ return void 0;
43
+ }
44
+ if (context._hydration && ((_window__SSR_DATA_data_loadersData_id = window === null || window === void 0 ? void 0 : (_window__SSR_DATA = window._SSR_DATA) === null || _window__SSR_DATA === void 0 ? void 0 : (_window__SSR_DATA_data = _window__SSR_DATA.data) === null || _window__SSR_DATA_data === void 0 ? void 0 : _window__SSR_DATA_data.loadersData[id]) === null || _window__SSR_DATA_data_loadersData_id === void 0 ? void 0 : _window__SSR_DATA_data_loadersData_id.error) === null) {
45
+ return void 0;
46
+ }
47
+ const res = loaderRef.current.load();
48
+ unlistenLoaderChangeRef.current = (_loaderRef_current = loaderRef.current) === null || _loaderRef_current === void 0 ? void 0 : _loaderRef_current.onChange((_status, _result) => {
49
+ setResult(_result);
50
+ if (_status === LoaderStatus.fulfilled) {
51
+ var _options_onSuccess;
52
+ options === null || options === void 0 ? void 0 : (_options_onSuccess = options.onSuccess) === null || _options_onSuccess === void 0 ? void 0 : _options_onSuccess.call(options, _result.data);
51
53
  }
52
- 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) {
53
- return void 0;
54
+ if (_status === LoaderStatus.rejected) {
55
+ var _options_onError;
56
+ options === null || options === void 0 ? void 0 : (_options_onError = options.onError) === null || _options_onError === void 0 ? void 0 : _options_onError.call(options, _result.error);
54
57
  }
55
- const res = loaderRef.current.load();
56
- unlistenLoaderChangeRef.current = (_f = loaderRef.current) == null ? void 0 : _f.onChange(
57
- (_status, _result) => {
58
- var _a2, _b2;
59
- setResult(_result);
60
- if (_status === LoaderStatus.fulfilled) {
61
- (_a2 = options == null ? void 0 : options.onSuccess) == null ? void 0 : _a2.call(options, _result.data);
62
- }
63
- if (_status === LoaderStatus.rejected) {
64
- (_b2 = options == null ? void 0 : options.onError) == null ? void 0 : _b2.call(options, _result.error);
65
- }
66
- }
67
- );
68
- return res;
69
- },
70
- [options.skip]
71
- );
72
- useEffect(
73
- () => () => {
74
- var _a;
75
- (_a = unlistenLoaderChangeRef.current) == null ? void 0 : _a.call(unlistenLoaderChangeRef);
76
- },
77
- []
78
- );
58
+ });
59
+ return res;
60
+ }, [
61
+ options.skip
62
+ ]);
63
+ useEffect(() => {
64
+ return () => {
65
+ var _unlistenLoaderChangeRef_current;
66
+ (_unlistenLoaderChangeRef_current = unlistenLoaderChangeRef.current) === null || _unlistenLoaderChangeRef_current === void 0 ? void 0 : _unlistenLoaderChangeRef_current.call(unlistenLoaderChangeRef);
67
+ };
68
+ }, []);
79
69
  useMemo(() => {
80
- var _a;
81
- const p = (_a = options.params) != null ? _a : loaderFn.id;
82
- invariant(
83
- typeof p !== "undefined" && p !== null,
84
- "Params is required in useLoader"
85
- );
70
+ var _options_params;
71
+ const p = (_options_params = options.params) !== null && _options_params !== void 0 ? _options_params : loaderFn.id;
72
+ invariant(typeof p !== "undefined" && p !== null, "Params is required in useLoader");
86
73
  load(p);
87
- }, [options.params]);
74
+ }, [
75
+ options.params
76
+ ]);
88
77
  const [result, setResult] = useState(loaderRef.current.result);
89
78
  return {
90
79
  ...result,
91
80
  reload: load
92
81
  };
93
82
  };
94
- var useLoader_default = useLoader;
95
- export {
96
- useLoader_default as default
97
- };
83
+ export default useLoader;
@@ -1,8 +1,4 @@
1
- import {
2
- createManager,
3
- createPipeline,
4
- createAsyncPipeline
5
- } from "@modern-js/plugin";
1
+ import { createManager, createPipeline, createAsyncPipeline } from "@modern-js/plugin";
6
2
  import { createLoaderManager } from "./loader/loaderManager";
7
3
  const hoc = createPipeline();
8
4
  const provide = createPipeline();
@@ -18,21 +14,19 @@ const runtimeHooks = {
18
14
  init,
19
15
  pickContext
20
16
  };
21
- const createRuntime = () => createManager(runtimeHooks);
17
+ export const createRuntime = () => createManager(runtimeHooks);
22
18
  const registerInit = (App, _init) => {
23
19
  const originalInit = App.init;
24
20
  App.init = async (context) => {
25
21
  if (!context.loaderManager) {
26
22
  context.loaderManager = createLoaderManager({});
27
23
  }
28
- await Promise.all([originalInit == null ? void 0 : originalInit(context), _init == null ? void 0 : _init(context)]);
24
+ await Promise.all([
25
+ originalInit === null || originalInit === void 0 ? void 0 : originalInit(context),
26
+ _init === null || _init === void 0 ? void 0 : _init(context)
27
+ ]);
29
28
  };
30
29
  };
31
- const runtime = createRuntime();
32
- const { createPlugin } = runtime;
33
- export {
34
- createPlugin,
35
- createRuntime,
36
- registerInit,
37
- runtime
38
- };
30
+ export const runtime = createRuntime();
31
+ export const { createPlugin } = runtime;
32
+ export { registerInit };
@@ -0,0 +1 @@
1
+ export {};