@modern-js/runtime 2.48.4-alpha.0 → 2.48.4

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 (232) hide show
  1. package/dist/cjs/document/cli/index.js +2 -5
  2. package/dist/esm/document/cli/index.js +4 -7
  3. package/dist/esm-node/document/cli/index.js +2 -5
  4. package/package.json +11 -11
  5. package/dist/js/modern/cli/index.js +0 -72
  6. package/dist/js/modern/common.js +0 -4
  7. package/dist/js/modern/config.js +0 -0
  8. package/dist/js/modern/core/app-config.js +0 -10
  9. package/dist/js/modern/core/compatible.js +0 -285
  10. package/dist/js/modern/core/index.js +0 -16
  11. package/dist/js/modern/core/loader/index.js +0 -4
  12. package/dist/js/modern/core/loader/loaderManager.js +0 -165
  13. package/dist/js/modern/core/loader/useLoader.js +0 -114
  14. package/dist/js/modern/core/plugin.js +0 -58
  15. package/dist/js/modern/document/Body.js +0 -23
  16. package/dist/js/modern/document/DocumentContext.js +0 -9
  17. package/dist/js/modern/document/DocumentStructrueContext.js +0 -11
  18. package/dist/js/modern/document/Head.js +0 -27
  19. package/dist/js/modern/document/Html.js +0 -78
  20. package/dist/js/modern/document/Links.js +0 -10
  21. package/dist/js/modern/document/Root.js +0 -33
  22. package/dist/js/modern/document/Script.js +0 -20
  23. package/dist/js/modern/document/Scripts.js +0 -10
  24. package/dist/js/modern/document/cli/index.js +0 -228
  25. package/dist/js/modern/document/constants.js +0 -49
  26. package/dist/js/modern/document/index.js +0 -10
  27. package/dist/js/modern/exports/head.js +0 -6
  28. package/dist/js/modern/exports/loadable.js +0 -6
  29. package/dist/js/modern/exports/server.js +0 -4
  30. package/dist/js/modern/exports/styled.js +0 -6
  31. package/dist/js/modern/index.js +0 -22
  32. package/dist/js/modern/router/cli/index.js +0 -120
  33. package/dist/js/modern/router/index.js +0 -7
  34. package/dist/js/modern/router/runtime/DefaultNotFound.js +0 -14
  35. package/dist/js/modern/router/runtime/index.js +0 -9
  36. package/dist/js/modern/router/runtime/plugin.js +0 -104
  37. package/dist/js/modern/router/runtime/plugin.node.js +0 -149
  38. package/dist/js/modern/router/runtime/server.js +0 -1
  39. package/dist/js/modern/router/runtime/types.js +0 -0
  40. package/dist/js/modern/router/runtime/utils.js +0 -196
  41. package/dist/js/modern/router/runtime/withRouter.js +0 -36
  42. package/dist/js/modern/runtime-context.js +0 -7
  43. package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +0 -130
  44. package/dist/js/modern/ssr/cli/index.js +0 -172
  45. package/dist/js/modern/ssr/index.js +0 -159
  46. package/dist/js/modern/ssr/index.node.js +0 -79
  47. package/dist/js/modern/ssr/prefetch.js +0 -69
  48. package/dist/js/modern/ssr/react/index.js +0 -6
  49. package/dist/js/modern/ssr/react/nossr/index.js +0 -14
  50. package/dist/js/modern/ssr/react/prerender/index.js +0 -108
  51. package/dist/js/modern/ssr/react/prerender/type.js +0 -0
  52. package/dist/js/modern/ssr/react/prerender/util.js +0 -96
  53. package/dist/js/modern/ssr/react/withCallback/index.js +0 -15
  54. package/dist/js/modern/ssr/serverRender/helmet.js +0 -44
  55. package/dist/js/modern/ssr/serverRender/index.js +0 -35
  56. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -36
  57. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -11
  58. package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -61
  59. package/dist/js/modern/ssr/serverRender/renderToStream/index.js +0 -58
  60. package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +0 -24
  61. package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +0 -94
  62. package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +0 -12
  63. package/dist/js/modern/ssr/serverRender/renderToStream/template.js +0 -22
  64. package/dist/js/modern/ssr/serverRender/renderToStream/type.js +0 -0
  65. package/dist/js/modern/ssr/serverRender/renderToString/entry.js +0 -171
  66. package/dist/js/modern/ssr/serverRender/renderToString/index.js +0 -52
  67. package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +0 -48
  68. package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +0 -8
  69. package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +0 -11
  70. package/dist/js/modern/ssr/serverRender/renderToString/template.js +0 -58
  71. package/dist/js/modern/ssr/serverRender/renderToString/type.js +0 -9
  72. package/dist/js/modern/ssr/serverRender/types.js +0 -4
  73. package/dist/js/modern/ssr/serverRender/utils.js +0 -22
  74. package/dist/js/modern/ssr/utils.js +0 -81
  75. package/dist/js/modern/state/cli/index.js +0 -83
  76. package/dist/js/modern/state/index.js +0 -7
  77. package/dist/js/modern/state/plugins.js +0 -13
  78. package/dist/js/modern/state/runtime/index.js +0 -9
  79. package/dist/js/modern/state/runtime/plugin.js +0 -97
  80. package/dist/js/modern/state/types.js +0 -0
  81. package/dist/js/node/cli/index.js +0 -99
  82. package/dist/js/node/common.js +0 -27
  83. package/dist/js/node/config.js +0 -15
  84. package/dist/js/node/core/app-config.js +0 -34
  85. package/dist/js/node/core/compatible.js +0 -312
  86. package/dist/js/node/core/index.js +0 -47
  87. package/dist/js/node/core/loader/index.js +0 -33
  88. package/dist/js/node/core/loader/loaderManager.js +0 -195
  89. package/dist/js/node/core/loader/useLoader.js +0 -132
  90. package/dist/js/node/core/plugin.js +0 -80
  91. package/dist/js/node/document/Body.js +0 -43
  92. package/dist/js/node/document/DocumentContext.js +0 -38
  93. package/dist/js/node/document/DocumentStructrueContext.js +0 -40
  94. package/dist/js/node/document/Head.js +0 -51
  95. package/dist/js/node/document/Html.js +0 -101
  96. package/dist/js/node/document/Links.js +0 -33
  97. package/dist/js/node/document/Root.js +0 -57
  98. package/dist/js/node/document/Script.js +0 -40
  99. package/dist/js/node/document/Scripts.js +0 -33
  100. package/dist/js/node/document/cli/index.js +0 -240
  101. package/dist/js/node/document/constants.js +0 -86
  102. package/dist/js/node/document/index.js +0 -26
  103. package/dist/js/node/exports/head.js +0 -34
  104. package/dist/js/node/exports/loadable.js +0 -34
  105. package/dist/js/node/exports/server.js +0 -27
  106. package/dist/js/node/exports/styled.js +0 -34
  107. package/dist/js/node/index.js +0 -44
  108. package/dist/js/node/router/cli/index.js +0 -135
  109. package/dist/js/node/router/index.js +0 -37
  110. package/dist/js/node/router/runtime/DefaultNotFound.js +0 -37
  111. package/dist/js/node/router/runtime/index.js +0 -33
  112. package/dist/js/node/router/runtime/plugin.js +0 -127
  113. package/dist/js/node/router/runtime/plugin.node.js +0 -175
  114. package/dist/js/node/router/runtime/server.js +0 -17
  115. package/dist/js/node/router/runtime/types.js +0 -15
  116. package/dist/js/node/router/runtime/utils.js +0 -221
  117. package/dist/js/node/router/runtime/withRouter.js +0 -57
  118. package/dist/js/node/runtime-context.js +0 -31
  119. package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +0 -139
  120. package/dist/js/node/ssr/cli/index.js +0 -190
  121. package/dist/js/node/ssr/index.js +0 -185
  122. package/dist/js/node/ssr/index.node.js +0 -107
  123. package/dist/js/node/ssr/prefetch.js +0 -90
  124. package/dist/js/node/ssr/react/index.js +0 -30
  125. package/dist/js/node/ssr/react/nossr/index.js +0 -43
  126. package/dist/js/node/ssr/react/prerender/index.js +0 -130
  127. package/dist/js/node/ssr/react/prerender/type.js +0 -15
  128. package/dist/js/node/ssr/react/prerender/util.js +0 -123
  129. package/dist/js/node/ssr/react/withCallback/index.js +0 -38
  130. package/dist/js/node/ssr/serverRender/helmet.js +0 -65
  131. package/dist/js/node/ssr/serverRender/index.js +0 -56
  132. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -65
  133. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -35
  134. package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -87
  135. package/dist/js/node/ssr/serverRender/renderToStream/index.js +0 -87
  136. package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +0 -47
  137. package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +0 -111
  138. package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +0 -35
  139. package/dist/js/node/ssr/serverRender/renderToStream/template.js +0 -45
  140. package/dist/js/node/ssr/serverRender/renderToStream/type.js +0 -15
  141. package/dist/js/node/ssr/serverRender/renderToString/entry.js +0 -196
  142. package/dist/js/node/ssr/serverRender/renderToString/index.js +0 -81
  143. package/dist/js/node/ssr/serverRender/renderToString/loadable.js +0 -71
  144. package/dist/js/node/ssr/serverRender/renderToString/reduce.js +0 -31
  145. package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +0 -34
  146. package/dist/js/node/ssr/serverRender/renderToString/template.js +0 -82
  147. package/dist/js/node/ssr/serverRender/renderToString/type.js +0 -32
  148. package/dist/js/node/ssr/serverRender/types.js +0 -27
  149. package/dist/js/node/ssr/serverRender/utils.js +0 -46
  150. package/dist/js/node/ssr/utils.js +0 -106
  151. package/dist/js/node/state/cli/index.js +0 -100
  152. package/dist/js/node/state/index.js +0 -37
  153. package/dist/js/node/state/plugins.js +0 -45
  154. package/dist/js/node/state/runtime/index.js +0 -40
  155. package/dist/js/node/state/runtime/plugin.js +0 -121
  156. package/dist/js/node/state/types.js +0 -15
  157. package/dist/js/treeshaking/cli/index.js +0 -186
  158. package/dist/js/treeshaking/common.js +0 -4
  159. package/dist/js/treeshaking/config.js +0 -1
  160. package/dist/js/treeshaking/core/app-config.js +0 -9
  161. package/dist/js/treeshaking/core/compatible.js +0 -485
  162. package/dist/js/treeshaking/core/index.js +0 -7
  163. package/dist/js/treeshaking/core/loader/index.js +0 -2
  164. package/dist/js/treeshaking/core/loader/loaderManager.js +0 -406
  165. package/dist/js/treeshaking/core/loader/useLoader.js +0 -188
  166. package/dist/js/treeshaking/core/plugin.js +0 -176
  167. package/dist/js/treeshaking/document/Body.js +0 -18
  168. package/dist/js/treeshaking/document/DocumentContext.js +0 -7
  169. package/dist/js/treeshaking/document/DocumentStructrueContext.js +0 -9
  170. package/dist/js/treeshaking/document/Head.js +0 -24
  171. package/dist/js/treeshaking/document/Html.js +0 -99
  172. package/dist/js/treeshaking/document/Links.js +0 -8
  173. package/dist/js/treeshaking/document/Root.js +0 -26
  174. package/dist/js/treeshaking/document/Script.js +0 -15
  175. package/dist/js/treeshaking/document/Scripts.js +0 -8
  176. package/dist/js/treeshaking/document/cli/index.js +0 -393
  177. package/dist/js/treeshaking/document/constants.js +0 -35
  178. package/dist/js/treeshaking/document/index.js +0 -10
  179. package/dist/js/treeshaking/exports/head.js +0 -4
  180. package/dist/js/treeshaking/exports/loadable.js +0 -4
  181. package/dist/js/treeshaking/exports/server.js +0 -4
  182. package/dist/js/treeshaking/exports/styled.js +0 -4
  183. package/dist/js/treeshaking/index.js +0 -3
  184. package/dist/js/treeshaking/router/cli/index.js +0 -148
  185. package/dist/js/treeshaking/router/index.js +0 -4
  186. package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +0 -14
  187. package/dist/js/treeshaking/router/runtime/index.js +0 -6
  188. package/dist/js/treeshaking/router/runtime/plugin.js +0 -132
  189. package/dist/js/treeshaking/router/runtime/plugin.node.js +0 -390
  190. package/dist/js/treeshaking/router/runtime/server.js +0 -1
  191. package/dist/js/treeshaking/router/runtime/types.js +0 -1
  192. package/dist/js/treeshaking/router/runtime/utils.js +0 -260
  193. package/dist/js/treeshaking/router/runtime/withRouter.js +0 -67
  194. package/dist/js/treeshaking/runtime-context.js +0 -4
  195. package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +0 -122
  196. package/dist/js/treeshaking/ssr/cli/index.js +0 -217
  197. package/dist/js/treeshaking/ssr/index.js +0 -315
  198. package/dist/js/treeshaking/ssr/index.node.js +0 -240
  199. package/dist/js/treeshaking/ssr/prefetch.js +0 -199
  200. package/dist/js/treeshaking/ssr/react/index.js +0 -3
  201. package/dist/js/treeshaking/ssr/react/nossr/index.js +0 -58
  202. package/dist/js/treeshaking/ssr/react/prerender/index.js +0 -237
  203. package/dist/js/treeshaking/ssr/react/prerender/type.js +0 -1
  204. package/dist/js/treeshaking/ssr/react/prerender/util.js +0 -108
  205. package/dist/js/treeshaking/ssr/react/withCallback/index.js +0 -16
  206. package/dist/js/treeshaking/ssr/serverRender/helmet.js +0 -42
  207. package/dist/js/treeshaking/ssr/serverRender/index.js +0 -169
  208. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -34
  209. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -7
  210. package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -115
  211. package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +0 -165
  212. package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +0 -22
  213. package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +0 -119
  214. package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +0 -11
  215. package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +0 -63
  216. package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +0 -1
  217. package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +0 -393
  218. package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +0 -165
  219. package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +0 -56
  220. package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +0 -10
  221. package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +0 -9
  222. package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +0 -156
  223. package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +0 -7
  224. package/dist/js/treeshaking/ssr/serverRender/types.js +0 -2
  225. package/dist/js/treeshaking/ssr/serverRender/utils.js +0 -69
  226. package/dist/js/treeshaking/ssr/utils.js +0 -134
  227. package/dist/js/treeshaking/state/cli/index.js +0 -71
  228. package/dist/js/treeshaking/state/index.js +0 -4
  229. package/dist/js/treeshaking/state/plugins.js +0 -14
  230. package/dist/js/treeshaking/state/runtime/index.js +0 -5
  231. package/dist/js/treeshaking/state/runtime/plugin.js +0 -198
  232. package/dist/js/treeshaking/state/types.js +0 -1
@@ -165,12 +165,9 @@ const documentPlugin = () => ({
165
165
  ].join("");
166
166
  const metas = [
167
167
  templateParameters.meta,
168
- htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName !== "script" && item.tagName !== "link").join("")
169
- ].join("");
170
- const titles = [
171
- templateParameters.title,
172
- htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName === "title").join("")
168
+ htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName !== "script" && item.tagName !== "link" && item.tagName !== "title").join("")
173
169
  ].join("");
170
+ const titles = htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName === "title").join("").replace("<title>", "").replace("</title>", "") || templateParameters.title;
174
171
  if (html.includes(import_constants.DOCUMENT_SCRIPT_PLACEHOLDER_START) && html.includes(import_constants.DOCUMENT_SCRIPT_PLACEHOLDER_END)) {
175
172
  const { nonce } = config.security;
176
173
  const nonceAttr = nonce ? `nonce=${nonce}` : "";
@@ -182,15 +182,12 @@ var documentPlugin = function() {
182
182
  metas = [
183
183
  templateParameters.meta,
184
184
  htmlWebpackPlugin.tags.headTags.filter(function(item) {
185
- return item.tagName !== "script" && item.tagName !== "link";
186
- }).join("")
187
- ].join("");
188
- titles = [
189
- templateParameters.title,
190
- htmlWebpackPlugin.tags.headTags.filter(function(item) {
191
- return item.tagName === "title";
185
+ return item.tagName !== "script" && item.tagName !== "link" && item.tagName !== "title";
192
186
  }).join("")
193
187
  ].join("");
188
+ titles = htmlWebpackPlugin.tags.headTags.filter(function(item) {
189
+ return item.tagName === "title";
190
+ }).join("").replace("<title>", "").replace("</title>", "") || templateParameters.title;
194
191
  if (html.includes(DOCUMENT_SCRIPT_PLACEHOLDER_START) && html.includes(DOCUMENT_SCRIPT_PLACEHOLDER_END)) {
195
192
  nonce = config.security.nonce;
196
193
  nonceAttr = nonce ? "nonce=".concat(nonce) : "";
@@ -130,12 +130,9 @@ const documentPlugin = () => ({
130
130
  ].join("");
131
131
  const metas = [
132
132
  templateParameters.meta,
133
- htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName !== "script" && item.tagName !== "link").join("")
134
- ].join("");
135
- const titles = [
136
- templateParameters.title,
137
- htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName === "title").join("")
133
+ htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName !== "script" && item.tagName !== "link" && item.tagName !== "title").join("")
138
134
  ].join("");
135
+ const titles = htmlWebpackPlugin.tags.headTags.filter((item) => item.tagName === "title").join("").replace("<title>", "").replace("</title>", "") || templateParameters.title;
139
136
  if (html.includes(DOCUMENT_SCRIPT_PLACEHOLDER_START) && html.includes(DOCUMENT_SCRIPT_PLACEHOLDER_END)) {
140
137
  const { nonce } = config.security;
141
138
  const nonceAttr = nonce ? `nonce=${nonce}` : "";
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.48.4-alpha.0",
18
+ "version": "2.48.4",
19
19
  "engines": {
20
20
  "node": ">=14.17.6"
21
21
  },
@@ -171,10 +171,10 @@
171
171
  "react-side-effect": "^2.1.1",
172
172
  "styled-components": "^5.3.1",
173
173
  "@swc/helpers": "0.5.3",
174
- "@modern-js/runtime-utils": "2.48.3",
175
- "@modern-js/utils": "2.48.3",
176
- "@modern-js/types": "2.48.3",
177
- "@modern-js/plugin": "2.48.3"
174
+ "@modern-js/plugin": "2.48.4",
175
+ "@modern-js/types": "2.48.4",
176
+ "@modern-js/utils": "2.48.4",
177
+ "@modern-js/runtime-utils": "2.48.4"
178
178
  },
179
179
  "peerDependencies": {
180
180
  "react": ">=17",
@@ -194,12 +194,12 @@
194
194
  "react-dom": "^18",
195
195
  "ts-jest": "^29.1.0",
196
196
  "typescript": "^5",
197
- "webpack": "^5.89.0",
198
- "@modern-js/app-tools": "2.48.3",
199
- "@modern-js/core": "2.48.3",
200
- "@modern-js/server-core": "2.48.3",
201
- "@scripts/build": "2.48.3",
202
- "@scripts/jest-config": "2.48.3"
197
+ "webpack": "^5.91.0",
198
+ "@modern-js/server-core": "2.48.4",
199
+ "@modern-js/core": "2.48.4",
200
+ "@scripts/build": "2.48.4",
201
+ "@modern-js/app-tools": "2.48.4",
202
+ "@scripts/jest-config": "2.48.4"
203
203
  },
204
204
  "sideEffects": false,
205
205
  "publishConfig": {
@@ -1,72 +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 path from "path";
22
- import { PLUGIN_SCHEMAS, cleanRequireCache, isReact18 } from "@modern-js/utils";
23
- import PluginState from "../state/cli";
24
- import PluginSSR from "../ssr/cli";
25
- import PluginRouter from "../router/cli";
26
- import Document from "../document/cli";
27
- var cli_default = () => ({
28
- name: "@modern-js/runtime",
29
- post: [
30
- "@modern-js/plugin-router",
31
- "@modern-js/plugin-ssr",
32
- "@modern-js/plugin-document",
33
- "@modern-js/plugin-state",
34
- "@modern-js/plugin-design-token"
35
- ],
36
- usePlugins: [PluginState(), PluginSSR(), PluginRouter(), Document()],
37
- setup: (api) => {
38
- return {
39
- config() {
40
- const dir = api.useAppContext().internalDirectory || "";
41
- process.env.IS_REACT18 = isReact18(path.join(dir, "../../")).toString();
42
- return {
43
- runtime: {},
44
- runtimeByEntries: {},
45
- source: {
46
- alias: {
47
- "styled-components": require.resolve("styled-components")
48
- },
49
- globalVars: {
50
- "process.env.IS_REACT18": process.env.IS_REACT18
51
- }
52
- }
53
- };
54
- },
55
- validateSchema() {
56
- return PLUGIN_SCHEMAS["@modern-js/runtime"];
57
- },
58
- beforeRestart() {
59
- return __async(this, null, function* () {
60
- cleanRequireCache([
61
- require.resolve("../state/cli"),
62
- require.resolve("../router/cli"),
63
- require.resolve("../ssr/cli")
64
- ]);
65
- });
66
- }
67
- };
68
- }
69
- });
70
- export {
71
- cli_default as default
72
- };
@@ -1,4 +0,0 @@
1
- const isBrowser = () => typeof window !== "undefined" && window.name !== "nodejs";
2
- export {
3
- isBrowser
4
- };
File without changes
@@ -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
- };