@modern-js/runtime 2.16.1-alpha.1 → 2.17.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 (233) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/cjs/router/runtime/index.js +1 -1
  3. package/dist/esm/router/runtime/index.js +1 -1
  4. package/dist/esm-node/router/runtime/index.js +1 -1
  5. package/package.json +9 -9
  6. package/dist/js/modern/cli/index.js +0 -72
  7. package/dist/js/modern/common.js +0 -4
  8. package/dist/js/modern/config.js +0 -0
  9. package/dist/js/modern/core/app-config.js +0 -10
  10. package/dist/js/modern/core/compatible.js +0 -285
  11. package/dist/js/modern/core/index.js +0 -16
  12. package/dist/js/modern/core/loader/index.js +0 -4
  13. package/dist/js/modern/core/loader/loaderManager.js +0 -165
  14. package/dist/js/modern/core/loader/useLoader.js +0 -114
  15. package/dist/js/modern/core/plugin.js +0 -58
  16. package/dist/js/modern/document/Body.js +0 -23
  17. package/dist/js/modern/document/DocumentContext.js +0 -9
  18. package/dist/js/modern/document/DocumentStructrueContext.js +0 -11
  19. package/dist/js/modern/document/Head.js +0 -27
  20. package/dist/js/modern/document/Html.js +0 -78
  21. package/dist/js/modern/document/Links.js +0 -10
  22. package/dist/js/modern/document/Root.js +0 -33
  23. package/dist/js/modern/document/Script.js +0 -20
  24. package/dist/js/modern/document/Scripts.js +0 -10
  25. package/dist/js/modern/document/cli/index.js +0 -228
  26. package/dist/js/modern/document/constants.js +0 -49
  27. package/dist/js/modern/document/index.js +0 -10
  28. package/dist/js/modern/exports/head.js +0 -6
  29. package/dist/js/modern/exports/loadable.js +0 -6
  30. package/dist/js/modern/exports/server.js +0 -4
  31. package/dist/js/modern/exports/styled.js +0 -6
  32. package/dist/js/modern/index.js +0 -22
  33. package/dist/js/modern/router/cli/index.js +0 -120
  34. package/dist/js/modern/router/index.js +0 -7
  35. package/dist/js/modern/router/runtime/DefaultNotFound.js +0 -14
  36. package/dist/js/modern/router/runtime/index.js +0 -9
  37. package/dist/js/modern/router/runtime/plugin.js +0 -104
  38. package/dist/js/modern/router/runtime/plugin.node.js +0 -149
  39. package/dist/js/modern/router/runtime/server.js +0 -1
  40. package/dist/js/modern/router/runtime/types.js +0 -0
  41. package/dist/js/modern/router/runtime/utils.js +0 -196
  42. package/dist/js/modern/router/runtime/withRouter.js +0 -36
  43. package/dist/js/modern/runtime-context.js +0 -7
  44. package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +0 -130
  45. package/dist/js/modern/ssr/cli/index.js +0 -172
  46. package/dist/js/modern/ssr/index.js +0 -159
  47. package/dist/js/modern/ssr/index.node.js +0 -79
  48. package/dist/js/modern/ssr/prefetch.js +0 -69
  49. package/dist/js/modern/ssr/react/index.js +0 -6
  50. package/dist/js/modern/ssr/react/nossr/index.js +0 -14
  51. package/dist/js/modern/ssr/react/prerender/index.js +0 -108
  52. package/dist/js/modern/ssr/react/prerender/type.js +0 -0
  53. package/dist/js/modern/ssr/react/prerender/util.js +0 -96
  54. package/dist/js/modern/ssr/react/withCallback/index.js +0 -15
  55. package/dist/js/modern/ssr/serverRender/helmet.js +0 -44
  56. package/dist/js/modern/ssr/serverRender/index.js +0 -35
  57. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -36
  58. package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -11
  59. package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -61
  60. package/dist/js/modern/ssr/serverRender/renderToStream/index.js +0 -58
  61. package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +0 -24
  62. package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +0 -94
  63. package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +0 -12
  64. package/dist/js/modern/ssr/serverRender/renderToStream/template.js +0 -22
  65. package/dist/js/modern/ssr/serverRender/renderToStream/type.js +0 -0
  66. package/dist/js/modern/ssr/serverRender/renderToString/entry.js +0 -171
  67. package/dist/js/modern/ssr/serverRender/renderToString/index.js +0 -52
  68. package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +0 -48
  69. package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +0 -8
  70. package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +0 -11
  71. package/dist/js/modern/ssr/serverRender/renderToString/template.js +0 -58
  72. package/dist/js/modern/ssr/serverRender/renderToString/type.js +0 -9
  73. package/dist/js/modern/ssr/serverRender/types.js +0 -4
  74. package/dist/js/modern/ssr/serverRender/utils.js +0 -22
  75. package/dist/js/modern/ssr/utils.js +0 -81
  76. package/dist/js/modern/state/cli/index.js +0 -83
  77. package/dist/js/modern/state/index.js +0 -7
  78. package/dist/js/modern/state/plugins.js +0 -13
  79. package/dist/js/modern/state/runtime/index.js +0 -9
  80. package/dist/js/modern/state/runtime/plugin.js +0 -97
  81. package/dist/js/modern/state/types.js +0 -0
  82. package/dist/js/node/cli/index.js +0 -99
  83. package/dist/js/node/common.js +0 -27
  84. package/dist/js/node/config.js +0 -15
  85. package/dist/js/node/core/app-config.js +0 -34
  86. package/dist/js/node/core/compatible.js +0 -312
  87. package/dist/js/node/core/index.js +0 -47
  88. package/dist/js/node/core/loader/index.js +0 -33
  89. package/dist/js/node/core/loader/loaderManager.js +0 -195
  90. package/dist/js/node/core/loader/useLoader.js +0 -132
  91. package/dist/js/node/core/plugin.js +0 -80
  92. package/dist/js/node/document/Body.js +0 -43
  93. package/dist/js/node/document/DocumentContext.js +0 -38
  94. package/dist/js/node/document/DocumentStructrueContext.js +0 -40
  95. package/dist/js/node/document/Head.js +0 -51
  96. package/dist/js/node/document/Html.js +0 -101
  97. package/dist/js/node/document/Links.js +0 -33
  98. package/dist/js/node/document/Root.js +0 -57
  99. package/dist/js/node/document/Script.js +0 -40
  100. package/dist/js/node/document/Scripts.js +0 -33
  101. package/dist/js/node/document/cli/index.js +0 -240
  102. package/dist/js/node/document/constants.js +0 -86
  103. package/dist/js/node/document/index.js +0 -26
  104. package/dist/js/node/exports/head.js +0 -34
  105. package/dist/js/node/exports/loadable.js +0 -34
  106. package/dist/js/node/exports/server.js +0 -27
  107. package/dist/js/node/exports/styled.js +0 -34
  108. package/dist/js/node/index.js +0 -44
  109. package/dist/js/node/router/cli/index.js +0 -135
  110. package/dist/js/node/router/index.js +0 -37
  111. package/dist/js/node/router/runtime/DefaultNotFound.js +0 -37
  112. package/dist/js/node/router/runtime/index.js +0 -33
  113. package/dist/js/node/router/runtime/plugin.js +0 -127
  114. package/dist/js/node/router/runtime/plugin.node.js +0 -175
  115. package/dist/js/node/router/runtime/server.js +0 -17
  116. package/dist/js/node/router/runtime/types.js +0 -15
  117. package/dist/js/node/router/runtime/utils.js +0 -221
  118. package/dist/js/node/router/runtime/withRouter.js +0 -57
  119. package/dist/js/node/runtime-context.js +0 -31
  120. package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +0 -139
  121. package/dist/js/node/ssr/cli/index.js +0 -190
  122. package/dist/js/node/ssr/index.js +0 -185
  123. package/dist/js/node/ssr/index.node.js +0 -107
  124. package/dist/js/node/ssr/prefetch.js +0 -90
  125. package/dist/js/node/ssr/react/index.js +0 -30
  126. package/dist/js/node/ssr/react/nossr/index.js +0 -43
  127. package/dist/js/node/ssr/react/prerender/index.js +0 -130
  128. package/dist/js/node/ssr/react/prerender/type.js +0 -15
  129. package/dist/js/node/ssr/react/prerender/util.js +0 -123
  130. package/dist/js/node/ssr/react/withCallback/index.js +0 -38
  131. package/dist/js/node/ssr/serverRender/helmet.js +0 -65
  132. package/dist/js/node/ssr/serverRender/index.js +0 -56
  133. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -65
  134. package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -35
  135. package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -87
  136. package/dist/js/node/ssr/serverRender/renderToStream/index.js +0 -87
  137. package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +0 -47
  138. package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +0 -111
  139. package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +0 -35
  140. package/dist/js/node/ssr/serverRender/renderToStream/template.js +0 -45
  141. package/dist/js/node/ssr/serverRender/renderToStream/type.js +0 -15
  142. package/dist/js/node/ssr/serverRender/renderToString/entry.js +0 -196
  143. package/dist/js/node/ssr/serverRender/renderToString/index.js +0 -81
  144. package/dist/js/node/ssr/serverRender/renderToString/loadable.js +0 -71
  145. package/dist/js/node/ssr/serverRender/renderToString/reduce.js +0 -31
  146. package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +0 -34
  147. package/dist/js/node/ssr/serverRender/renderToString/template.js +0 -82
  148. package/dist/js/node/ssr/serverRender/renderToString/type.js +0 -32
  149. package/dist/js/node/ssr/serverRender/types.js +0 -27
  150. package/dist/js/node/ssr/serverRender/utils.js +0 -46
  151. package/dist/js/node/ssr/utils.js +0 -106
  152. package/dist/js/node/state/cli/index.js +0 -100
  153. package/dist/js/node/state/index.js +0 -37
  154. package/dist/js/node/state/plugins.js +0 -45
  155. package/dist/js/node/state/runtime/index.js +0 -40
  156. package/dist/js/node/state/runtime/plugin.js +0 -121
  157. package/dist/js/node/state/types.js +0 -15
  158. package/dist/js/treeshaking/cli/index.js +0 -186
  159. package/dist/js/treeshaking/common.js +0 -4
  160. package/dist/js/treeshaking/config.js +0 -1
  161. package/dist/js/treeshaking/core/app-config.js +0 -9
  162. package/dist/js/treeshaking/core/compatible.js +0 -485
  163. package/dist/js/treeshaking/core/index.js +0 -7
  164. package/dist/js/treeshaking/core/loader/index.js +0 -2
  165. package/dist/js/treeshaking/core/loader/loaderManager.js +0 -406
  166. package/dist/js/treeshaking/core/loader/useLoader.js +0 -188
  167. package/dist/js/treeshaking/core/plugin.js +0 -176
  168. package/dist/js/treeshaking/document/Body.js +0 -18
  169. package/dist/js/treeshaking/document/DocumentContext.js +0 -7
  170. package/dist/js/treeshaking/document/DocumentStructrueContext.js +0 -9
  171. package/dist/js/treeshaking/document/Head.js +0 -24
  172. package/dist/js/treeshaking/document/Html.js +0 -99
  173. package/dist/js/treeshaking/document/Links.js +0 -8
  174. package/dist/js/treeshaking/document/Root.js +0 -26
  175. package/dist/js/treeshaking/document/Script.js +0 -15
  176. package/dist/js/treeshaking/document/Scripts.js +0 -8
  177. package/dist/js/treeshaking/document/cli/index.js +0 -393
  178. package/dist/js/treeshaking/document/constants.js +0 -35
  179. package/dist/js/treeshaking/document/index.js +0 -10
  180. package/dist/js/treeshaking/exports/head.js +0 -4
  181. package/dist/js/treeshaking/exports/loadable.js +0 -4
  182. package/dist/js/treeshaking/exports/server.js +0 -4
  183. package/dist/js/treeshaking/exports/styled.js +0 -4
  184. package/dist/js/treeshaking/index.js +0 -3
  185. package/dist/js/treeshaking/router/cli/index.js +0 -148
  186. package/dist/js/treeshaking/router/index.js +0 -4
  187. package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +0 -14
  188. package/dist/js/treeshaking/router/runtime/index.js +0 -6
  189. package/dist/js/treeshaking/router/runtime/plugin.js +0 -132
  190. package/dist/js/treeshaking/router/runtime/plugin.node.js +0 -390
  191. package/dist/js/treeshaking/router/runtime/server.js +0 -1
  192. package/dist/js/treeshaking/router/runtime/types.js +0 -1
  193. package/dist/js/treeshaking/router/runtime/utils.js +0 -260
  194. package/dist/js/treeshaking/router/runtime/withRouter.js +0 -67
  195. package/dist/js/treeshaking/runtime-context.js +0 -4
  196. package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +0 -122
  197. package/dist/js/treeshaking/ssr/cli/index.js +0 -217
  198. package/dist/js/treeshaking/ssr/index.js +0 -315
  199. package/dist/js/treeshaking/ssr/index.node.js +0 -240
  200. package/dist/js/treeshaking/ssr/prefetch.js +0 -199
  201. package/dist/js/treeshaking/ssr/react/index.js +0 -3
  202. package/dist/js/treeshaking/ssr/react/nossr/index.js +0 -58
  203. package/dist/js/treeshaking/ssr/react/prerender/index.js +0 -237
  204. package/dist/js/treeshaking/ssr/react/prerender/type.js +0 -1
  205. package/dist/js/treeshaking/ssr/react/prerender/util.js +0 -108
  206. package/dist/js/treeshaking/ssr/react/withCallback/index.js +0 -16
  207. package/dist/js/treeshaking/ssr/serverRender/helmet.js +0 -42
  208. package/dist/js/treeshaking/ssr/serverRender/index.js +0 -169
  209. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +0 -34
  210. package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -7
  211. package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +0 -115
  212. package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +0 -165
  213. package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +0 -22
  214. package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +0 -119
  215. package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +0 -11
  216. package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +0 -63
  217. package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +0 -1
  218. package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +0 -393
  219. package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +0 -165
  220. package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +0 -56
  221. package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +0 -10
  222. package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +0 -9
  223. package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +0 -156
  224. package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +0 -7
  225. package/dist/js/treeshaking/ssr/serverRender/types.js +0 -2
  226. package/dist/js/treeshaking/ssr/serverRender/utils.js +0 -69
  227. package/dist/js/treeshaking/ssr/utils.js +0 -134
  228. package/dist/js/treeshaking/state/cli/index.js +0 -71
  229. package/dist/js/treeshaking/state/index.js +0 -4
  230. package/dist/js/treeshaking/state/plugins.js +0 -14
  231. package/dist/js/treeshaking/state/runtime/index.js +0 -5
  232. package/dist/js/treeshaking/state/runtime/plugin.js +0 -198
  233. package/dist/js/treeshaking/state/types.js +0 -1
@@ -1,63 +0,0 @@
1
- function _arrayLikeToArray(arr, len) {
2
- if (len == null || len > arr.length) len = arr.length;
3
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
- return arr2;
5
- }
6
- function _arrayWithHoles(arr) {
7
- if (Array.isArray(arr)) return arr;
8
- }
9
- function _iterableToArrayLimit(arr, i) {
10
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
11
- if (_i == null) return;
12
- var _arr = [];
13
- var _n = true;
14
- var _d = false;
15
- var _s, _e;
16
- try {
17
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
18
- _arr.push(_s.value);
19
- if (i && _arr.length === i) break;
20
- }
21
- } catch (err) {
22
- _d = true;
23
- _e = err;
24
- } finally{
25
- try {
26
- if (!_n && _i["return"] != null) _i["return"]();
27
- } finally{
28
- if (_d) throw _e;
29
- }
30
- }
31
- return _arr;
32
- }
33
- function _nonIterableRest() {
34
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
35
- }
36
- function _slicedToArray(arr, i) {
37
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
38
- }
39
- function _unsupportedIterableToArray(o, minLen) {
40
- if (!o) return;
41
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
42
- var n = Object.prototype.toString.call(o).slice(8, -1);
43
- if (n === "Object" && o.constructor) n = o.constructor.name;
44
- if (n === "Map" || n === "Set") return Array.from(n);
45
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
46
- }
47
- import { buildShellAfterTemplate } from "./buildTemplate.after";
48
- import { buildShellBeforeTemplate } from "./bulidTemplate.before";
49
- var HTML_SEPARATOR = "<!--<?- html ?>-->";
50
- var getTemplates = function(context, renderLevel) {
51
- var ssrContext = context.ssrContext;
52
- var ref = _slicedToArray(ssrContext.template.split(HTML_SEPARATOR) || [], 2), tmp = ref[0], beforeAppTemplate = tmp === void 0 ? "" : tmp, tmp1 = ref[1], afterAppHtmlTemplate = tmp1 === void 0 ? "" : tmp1;
53
- var builtBeforeTemplate = buildShellBeforeTemplate(beforeAppTemplate, context);
54
- var builtAfterTemplate = buildShellAfterTemplate(afterAppHtmlTemplate, {
55
- ssrContext: ssrContext,
56
- renderLevel: renderLevel
57
- });
58
- return {
59
- shellBefore: builtBeforeTemplate,
60
- shellAfter: builtAfterTemplate
61
- };
62
- };
63
- export { getTemplates };
@@ -1,393 +0,0 @@
1
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
- try {
3
- var info = gen[key](arg);
4
- var value = info.value;
5
- } catch (error) {
6
- reject(error);
7
- return;
8
- }
9
- if (info.done) {
10
- resolve(value);
11
- } else {
12
- Promise.resolve(value).then(_next, _throw);
13
- }
14
- }
15
- function _asyncToGenerator(fn) {
16
- return function() {
17
- var self = this, args = arguments;
18
- return new Promise(function(resolve, reject) {
19
- var gen = fn.apply(self, args);
20
- function _next(value) {
21
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
- }
23
- function _throw(err) {
24
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
- }
26
- _next(undefined);
27
- });
28
- };
29
- }
30
- function _classCallCheck(instance, Constructor) {
31
- if (!(instance instanceof Constructor)) {
32
- throw new TypeError("Cannot call a class as a function");
33
- }
34
- }
35
- function _defineProperties(target, props) {
36
- for(var i = 0; i < props.length; i++){
37
- var descriptor = props[i];
38
- descriptor.enumerable = descriptor.enumerable || false;
39
- descriptor.configurable = true;
40
- if ("value" in descriptor) descriptor.writable = true;
41
- Object.defineProperty(target, descriptor.key, descriptor);
42
- }
43
- }
44
- function _createClass(Constructor, protoProps, staticProps) {
45
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
46
- if (staticProps) _defineProperties(Constructor, staticProps);
47
- return Constructor;
48
- }
49
- function _defineProperty(obj, key, value) {
50
- if (key in obj) {
51
- Object.defineProperty(obj, key, {
52
- value: value,
53
- enumerable: true,
54
- configurable: true,
55
- writable: true
56
- });
57
- } else {
58
- obj[key] = value;
59
- }
60
- return obj;
61
- }
62
- var __generator = this && this.__generator || function(thisArg, body) {
63
- var f, y, t, g, _ = {
64
- label: 0,
65
- sent: function() {
66
- if (t[0] & 1) throw t[1];
67
- return t[1];
68
- },
69
- trys: [],
70
- ops: []
71
- };
72
- return g = {
73
- next: verb(0),
74
- "throw": verb(1),
75
- "return": verb(2)
76
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
77
- return this;
78
- }), g;
79
- function verb(n) {
80
- return function(v) {
81
- return step([
82
- n,
83
- v
84
- ]);
85
- };
86
- }
87
- function step(op) {
88
- if (f) throw new TypeError("Generator is already executing.");
89
- while(_)try {
90
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
91
- if (y = 0, t) op = [
92
- op[0] & 2,
93
- t.value
94
- ];
95
- switch(op[0]){
96
- case 0:
97
- case 1:
98
- t = op;
99
- break;
100
- case 4:
101
- _.label++;
102
- return {
103
- value: op[1],
104
- done: false
105
- };
106
- case 5:
107
- _.label++;
108
- y = op[1];
109
- op = [
110
- 0
111
- ];
112
- continue;
113
- case 7:
114
- op = _.ops.pop();
115
- _.trys.pop();
116
- continue;
117
- default:
118
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
119
- _ = 0;
120
- continue;
121
- }
122
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
123
- _.label = op[1];
124
- break;
125
- }
126
- if (op[0] === 6 && _.label < t[1]) {
127
- _.label = t[1];
128
- t = op;
129
- break;
130
- }
131
- if (t && _.label < t[2]) {
132
- _.label = t[2];
133
- _.ops.push(op);
134
- break;
135
- }
136
- if (t[2]) _.ops.pop();
137
- _.trys.pop();
138
- continue;
139
- }
140
- op = body.call(thisArg, _);
141
- } catch (e) {
142
- op = [
143
- 6,
144
- e
145
- ];
146
- y = 0;
147
- } finally{
148
- f = t = 0;
149
- }
150
- if (op[0] & 5) throw op[1];
151
- return {
152
- value: op[0] ? op[1] : void 0,
153
- done: true
154
- };
155
- }
156
- };
157
- import React from "react";
158
- import ReactDomServer from "react-dom/server";
159
- import serialize from "serialize-javascript";
160
- import ReactHelmet from "react-helmet";
161
- import helmetReplace from "../helmet";
162
- import { RenderLevel } from "../types";
163
- import { time } from "../utils";
164
- import prefetch from "../../prefetch";
165
- import { toFragments } from "./template";
166
- import { reduce } from "./reduce";
167
- import * as loadableRenderer from "./loadable";
168
- import * as styledComponentRenderer from "./styledComponent";
169
- var buildTemplateData = function(context, data, renderLevel) {
170
- var request = context.request;
171
- return {
172
- data: data,
173
- context: {
174
- request: {
175
- params: request.params,
176
- query: request.query,
177
- pathname: request.pathname,
178
- host: request.host,
179
- url: request.url,
180
- headers: request.headers,
181
- cookieMap: request.cookieMap
182
- }
183
- },
184
- renderLevel: renderLevel
185
- };
186
- };
187
- var Entry = /*#__PURE__*/ function() {
188
- "use strict";
189
- function Entry(options) {
190
- _classCallCheck(this, Entry);
191
- _defineProperty(this, "entryName", void 0);
192
- _defineProperty(this, "result", void 0);
193
- _defineProperty(this, "metrics", void 0);
194
- _defineProperty(this, "logger", void 0);
195
- _defineProperty(this, "App", void 0);
196
- _defineProperty(this, "fragments", void 0);
197
- _defineProperty(this, "pluginConfig", void 0);
198
- _defineProperty(this, "host", void 0);
199
- var ctx = options.ctx, config = options.config;
200
- var entryName = ctx.entryName, template = ctx.template, host = ctx.request.host;
201
- this.fragments = toFragments(template, entryName);
202
- this.entryName = entryName;
203
- this.host = host;
204
- this.App = options.App;
205
- this.pluginConfig = config;
206
- this.metrics = ctx.metrics;
207
- this.logger = ctx.logger;
208
- this.result = {
209
- renderLevel: RenderLevel.CLIENT_RENDER,
210
- html: "",
211
- chunksMap: {
212
- js: "",
213
- css: ""
214
- }
215
- };
216
- }
217
- _createClass(Entry, [
218
- {
219
- key: "renderToHtml",
220
- value: function renderToHtml(context) {
221
- var _this = this;
222
- return _asyncToGenerator(function() {
223
- var ssrContext, prefetchData, html, templateData, SSRData, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, fragment, helmetData;
224
- return __generator(this, function(_state) {
225
- switch(_state.label){
226
- case 0:
227
- ssrContext = context.ssrContext;
228
- if (ssrContext.redirection.url) {
229
- return [
230
- 2,
231
- ""
232
- ];
233
- }
234
- return [
235
- 4,
236
- _this.prefetch(context)
237
- ];
238
- case 1:
239
- prefetchData = _state.sent();
240
- if (ssrContext.redirection.url) {
241
- return [
242
- 2,
243
- ""
244
- ];
245
- }
246
- if (_this.result.renderLevel >= RenderLevel.SERVER_PREFETCH) {
247
- _this.result.html = _this.renderToString(context);
248
- }
249
- if (ssrContext.redirection.url) {
250
- return [
251
- 2,
252
- ""
253
- ];
254
- }
255
- html = "";
256
- templateData = buildTemplateData(ssrContext, prefetchData, _this.result.renderLevel);
257
- SSRData = _this.getSSRDataScript(templateData);
258
- _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
259
- try {
260
- for(_iterator = _this.fragments[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
261
- fragment = _step.value;
262
- if (fragment.isVariable && fragment.content === "SSRDataScript") {
263
- html += fragment.getValue(SSRData);
264
- } else {
265
- html += fragment.getValue(_this.result);
266
- }
267
- }
268
- } catch (err) {
269
- _didIteratorError = true;
270
- _iteratorError = err;
271
- } finally{
272
- try {
273
- if (!_iteratorNormalCompletion && _iterator.return != null) {
274
- _iterator.return();
275
- }
276
- } finally{
277
- if (_didIteratorError) {
278
- throw _iteratorError;
279
- }
280
- }
281
- }
282
- helmetData = ReactHelmet.renderStatic();
283
- return [
284
- 2,
285
- helmetData ? helmetReplace(html, helmetData) : html
286
- ];
287
- }
288
- });
289
- })();
290
- }
291
- },
292
- {
293
- key: "prefetch",
294
- value: function prefetch1(context) {
295
- var _this = this;
296
- return _asyncToGenerator(function() {
297
- var prefetchData, end, prefetchCost, e;
298
- return __generator(this, function(_state) {
299
- switch(_state.label){
300
- case 0:
301
- end = time();
302
- _state.label = 1;
303
- case 1:
304
- _state.trys.push([
305
- 1,
306
- 3,
307
- ,
308
- 4
309
- ]);
310
- return [
311
- 4,
312
- prefetch(_this.App, context)
313
- ];
314
- case 2:
315
- prefetchData = _state.sent();
316
- _this.result.renderLevel = RenderLevel.SERVER_PREFETCH;
317
- prefetchCost = end();
318
- _this.logger.debug("App Prefetch cost = %d ms", prefetchCost);
319
- _this.metrics.emitTimer("app.prefetch.cost", prefetchCost);
320
- return [
321
- 3,
322
- 4
323
- ];
324
- case 3:
325
- e = _state.sent();
326
- _this.result.renderLevel = RenderLevel.CLIENT_RENDER;
327
- _this.logger.error("App Prefetch Render", e);
328
- _this.metrics.emitCounter("app.prefetch.render.error", 1);
329
- return [
330
- 3,
331
- 4
332
- ];
333
- case 4:
334
- return [
335
- 2,
336
- prefetchData || {}
337
- ];
338
- }
339
- });
340
- })();
341
- }
342
- },
343
- {
344
- key: "renderToString",
345
- value: function renderToString(context) {
346
- var html = "";
347
- var end = time();
348
- var ssrContext = context.ssrContext;
349
- try {
350
- var App = React.createElement(this.App, {
351
- context: Object.assign(context, {
352
- ssr: true
353
- })
354
- });
355
- var renderContext = {
356
- stats: ssrContext.loadableStats,
357
- host: this.host,
358
- result: this.result,
359
- entryName: this.entryName,
360
- config: this.pluginConfig
361
- };
362
- html = reduce(App, renderContext, [
363
- styledComponentRenderer.toHtml,
364
- loadableRenderer.toHtml,
365
- function(jsx) {
366
- return ReactDomServer.renderToString(jsx);
367
- }
368
- ]);
369
- var cost = end();
370
- this.logger.debug("App Render To HTML cost = %d ms", cost);
371
- this.metrics.emitTimer("app.render.html.cost", cost);
372
- this.result.renderLevel = RenderLevel.SERVER_RENDER;
373
- } catch (e) {
374
- this.logger.error("App Render To HTML", e);
375
- this.metrics.emitCounter("app.render.html.error", 1);
376
- }
377
- return html;
378
- }
379
- },
380
- {
381
- key: "getSSRDataScript",
382
- value: function getSSRDataScript(templateData) {
383
- return {
384
- SSRDataScript: "\n <script>window._SSR_DATA = ".concat(serialize(templateData, {
385
- isJSON: true
386
- }), "</script>\n ")
387
- };
388
- }
389
- }
390
- ]);
391
- return Entry;
392
- }();
393
- export { Entry as default };
@@ -1,165 +0,0 @@
1
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
- try {
3
- var info = gen[key](arg);
4
- var value = info.value;
5
- } catch (error) {
6
- reject(error);
7
- return;
8
- }
9
- if (info.done) {
10
- resolve(value);
11
- } else {
12
- Promise.resolve(value).then(_next, _throw);
13
- }
14
- }
15
- function _asyncToGenerator(fn) {
16
- return function() {
17
- var self = this, args = arguments;
18
- return new Promise(function(resolve, reject) {
19
- var gen = fn.apply(self, args);
20
- function _next(value) {
21
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
- }
23
- function _throw(err) {
24
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
- }
26
- _next(undefined);
27
- });
28
- };
29
- }
30
- var __generator = this && this.__generator || function(thisArg, body) {
31
- var f, y, t, g, _ = {
32
- label: 0,
33
- sent: function() {
34
- if (t[0] & 1) throw t[1];
35
- return t[1];
36
- },
37
- trys: [],
38
- ops: []
39
- };
40
- return g = {
41
- next: verb(0),
42
- "throw": verb(1),
43
- "return": verb(2)
44
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
45
- return this;
46
- }), g;
47
- function verb(n) {
48
- return function(v) {
49
- return step([
50
- n,
51
- v
52
- ]);
53
- };
54
- }
55
- function step(op) {
56
- if (f) throw new TypeError("Generator is already executing.");
57
- while(_)try {
58
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
59
- if (y = 0, t) op = [
60
- op[0] & 2,
61
- t.value
62
- ];
63
- switch(op[0]){
64
- case 0:
65
- case 1:
66
- t = op;
67
- break;
68
- case 4:
69
- _.label++;
70
- return {
71
- value: op[1],
72
- done: false
73
- };
74
- case 5:
75
- _.label++;
76
- y = op[1];
77
- op = [
78
- 0
79
- ];
80
- continue;
81
- case 7:
82
- op = _.ops.pop();
83
- _.trys.pop();
84
- continue;
85
- default:
86
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
87
- _ = 0;
88
- continue;
89
- }
90
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
91
- _.label = op[1];
92
- break;
93
- }
94
- if (op[0] === 6 && _.label < t[1]) {
95
- _.label = t[1];
96
- t = op;
97
- break;
98
- }
99
- if (t && _.label < t[2]) {
100
- _.label = t[2];
101
- _.ops.push(op);
102
- break;
103
- }
104
- if (t[2]) _.ops.pop();
105
- _.trys.pop();
106
- continue;
107
- }
108
- op = body.call(thisArg, _);
109
- } catch (e) {
110
- op = [
111
- 6,
112
- e
113
- ];
114
- y = 0;
115
- } finally{
116
- f = t = 0;
117
- }
118
- if (op[0] & 5) throw op[1];
119
- return {
120
- value: op[0] ? op[1] : void 0,
121
- done: true
122
- };
123
- }
124
- };
125
- import { run } from "@modern-js/utils/ssr";
126
- import { PreRender } from "../../react/prerender";
127
- import { time } from "../utils";
128
- import SSREntry from "./entry";
129
- var render = function(param) {
130
- var App = param.App, context = param.context, config = param.config;
131
- var ssrContext = context.ssrContext;
132
- return run(ssrContext.request.headers, /*#__PURE__*/ _asyncToGenerator(function() {
133
- var entry, end, html, cost, cacheConfig;
134
- return __generator(this, function(_state) {
135
- switch(_state.label){
136
- case 0:
137
- entry = new SSREntry({
138
- ctx: ssrContext,
139
- App: App,
140
- config: config
141
- });
142
- entry.metrics.emitCounter("app.visit.count", 1);
143
- end = time();
144
- return [
145
- 4,
146
- entry.renderToHtml(context)
147
- ];
148
- case 1:
149
- html = _state.sent();
150
- cost = end();
151
- entry.logger.info("App Render Total cost = %d ms", cost);
152
- entry.metrics.emitTimer("app.render.cost", cost);
153
- cacheConfig = PreRender.config();
154
- if (cacheConfig) {
155
- context.ssrContext.cacheConfig = cacheConfig;
156
- }
157
- return [
158
- 2,
159
- html
160
- ];
161
- }
162
- });
163
- }));
164
- };
165
- export { render };
@@ -1,56 +0,0 @@
1
- import { ChunkExtractor } from "@loadable/server";
2
- import { isCrossOrigin } from "../../utils";
3
- import { getLoadableScripts } from "../utils";
4
- var extname = function(uri) {
5
- if (typeof uri !== "string" || !uri.includes(".")) {
6
- return "";
7
- }
8
- return ".".concat(uri === null || uri === void 0 ? void 0 : uri.split(".").pop()) || "";
9
- };
10
- var toHtml = function(jsx, renderer, next) {
11
- var stats = renderer.stats, chunksMap = renderer.result.chunksMap, host = renderer.host, _config = renderer.config, config = _config === void 0 ? {} : _config;
12
- if (!stats || chunksMap.js) {
13
- return next(jsx);
14
- }
15
- var extractor = new ChunkExtractor({
16
- stats: stats,
17
- entrypoints: [
18
- renderer.entryName
19
- ]
20
- });
21
- var html = next(extractor.collectChunks(jsx));
22
- var chunks = extractor.getChunkAssets(extractor.chunks);
23
- chunksMap.js = (chunksMap.js || "") + getLoadableScripts(extractor);
24
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
25
- try {
26
- for(var _iterator = chunks[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
27
- var v = _step.value;
28
- var fileType = extname(v.url).slice(1);
29
- if (fileType === "js") {
30
- var props = [];
31
- var crossorigin = config.crossorigin;
32
- if (crossorigin && isCrossOrigin(v.url, host)) {
33
- props.push('crossorigin="'.concat(crossorigin === true ? "anonymous" : crossorigin, '"'));
34
- }
35
- chunksMap[fileType] += '<script src="'.concat(v.url, '" ').concat(props.join(" "), "></script>");
36
- } else if (fileType === "css") {
37
- chunksMap[fileType] += '<link href="'.concat(v.url, '" rel="stylesheet" />');
38
- }
39
- }
40
- } catch (err) {
41
- _didIteratorError = true;
42
- _iteratorError = err;
43
- } finally{
44
- try {
45
- if (!_iteratorNormalCompletion && _iterator.return != null) {
46
- _iterator.return();
47
- }
48
- } finally{
49
- if (_didIteratorError) {
50
- throw _iteratorError;
51
- }
52
- }
53
- }
54
- return html;
55
- };
56
- export { toHtml };
@@ -1,10 +0,0 @@
1
- function reduce(jsx, renderer, middleware) {
2
- var index = 0;
3
- var createNext = function() {
4
- return function(App) {
5
- return middleware[index++](App, renderer, createNext());
6
- };
7
- };
8
- return createNext()(jsx);
9
- }
10
- export { reduce };