@modern-js/prod-server 2.48.5 → 2.49.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 (174) hide show
  1. package/README.md +20 -16
  2. package/dist/cjs/{libs/route/route.js → error.js} +16 -17
  3. package/dist/cjs/index.js +18 -24
  4. package/dist/cjs/init.js +71 -0
  5. package/dist/cjs/{type.js → types.js} +2 -2
  6. package/dist/esm/error.js +15 -0
  7. package/dist/esm/index.js +53 -19
  8. package/dist/esm/init.js +73 -0
  9. package/dist/esm-node/error.js +14 -0
  10. package/dist/esm-node/index.js +16 -17
  11. package/dist/esm-node/init.js +47 -0
  12. package/dist/types/error.d.ts +6 -0
  13. package/dist/types/index.d.ts +8 -11
  14. package/dist/types/init.d.ts +4 -0
  15. package/dist/types/types.d.ts +14 -0
  16. package/package.json +23 -64
  17. package/dist/cjs/constants.js +0 -72
  18. package/dist/cjs/libs/context/context.js +0 -236
  19. package/dist/cjs/libs/context/index.js +0 -31
  20. package/dist/cjs/libs/hook-api/afterRenderForStream.js +0 -34
  21. package/dist/cjs/libs/hook-api/base.js +0 -96
  22. package/dist/cjs/libs/hook-api/index.js +0 -85
  23. package/dist/cjs/libs/hook-api/index.worker.js +0 -116
  24. package/dist/cjs/libs/hook-api/route.js +0 -44
  25. package/dist/cjs/libs/hook-api/template.js +0 -72
  26. package/dist/cjs/libs/hook-api/templateForStream.js +0 -52
  27. package/dist/cjs/libs/loadConfig.js +0 -70
  28. package/dist/cjs/libs/metrics.js +0 -33
  29. package/dist/cjs/libs/preload/flushServerHeader.js +0 -49
  30. package/dist/cjs/libs/preload/index.js +0 -24
  31. package/dist/cjs/libs/preload/parseLinks.js +0 -124
  32. package/dist/cjs/libs/preload/shouldFlushServerHeader.js +0 -52
  33. package/dist/cjs/libs/preload/transformLinks2String.js +0 -150
  34. package/dist/cjs/libs/proxy.js +0 -99
  35. package/dist/cjs/libs/render/index.js +0 -109
  36. package/dist/cjs/libs/render/measure.js +0 -74
  37. package/dist/cjs/libs/render/ssr.js +0 -130
  38. package/dist/cjs/libs/render/ssrCache/cacheMod.js +0 -51
  39. package/dist/cjs/libs/render/ssrCache/index.js +0 -90
  40. package/dist/cjs/libs/render/ssrCache/manager.js +0 -120
  41. package/dist/cjs/libs/render/static.js +0 -72
  42. package/dist/cjs/libs/render/type.js +0 -33
  43. package/dist/cjs/libs/render/utils.js +0 -41
  44. package/dist/cjs/libs/reporter.js +0 -39
  45. package/dist/cjs/libs/route/index.js +0 -83
  46. package/dist/cjs/libs/route/matcher.js +0 -113
  47. package/dist/cjs/libs/serveFile.js +0 -84
  48. package/dist/cjs/libs/serverTiming.js +0 -41
  49. package/dist/cjs/renderHtml.js +0 -65
  50. package/dist/cjs/server/index.js +0 -223
  51. package/dist/cjs/server/modernServer.js +0 -522
  52. package/dist/cjs/server/modernServerSplit.js +0 -67
  53. package/dist/cjs/utils.js +0 -164
  54. package/dist/cjs/workerServer.js +0 -260
  55. package/dist/esm/constants.js +0 -43
  56. package/dist/esm/libs/context/context.js +0 -260
  57. package/dist/esm/libs/context/index.js +0 -8
  58. package/dist/esm/libs/hook-api/afterRenderForStream.js +0 -33
  59. package/dist/esm/libs/hook-api/base.js +0 -73
  60. package/dist/esm/libs/hook-api/index.js +0 -55
  61. package/dist/esm/libs/hook-api/index.worker.js +0 -99
  62. package/dist/esm/libs/hook-api/route.js +0 -26
  63. package/dist/esm/libs/hook-api/template.js +0 -56
  64. package/dist/esm/libs/hook-api/templateForStream.js +0 -35
  65. package/dist/esm/libs/loadConfig.js +0 -36
  66. package/dist/esm/libs/metrics.js +0 -9
  67. package/dist/esm/libs/preload/flushServerHeader.js +0 -50
  68. package/dist/esm/libs/preload/index.js +0 -2
  69. package/dist/esm/libs/preload/parseLinks.js +0 -172
  70. package/dist/esm/libs/preload/shouldFlushServerHeader.js +0 -27
  71. package/dist/esm/libs/preload/transformLinks2String.js +0 -140
  72. package/dist/esm/libs/proxy.js +0 -160
  73. package/dist/esm/libs/render/index.js +0 -175
  74. package/dist/esm/libs/render/measure.js +0 -69
  75. package/dist/esm/libs/render/ssr.js +0 -133
  76. package/dist/esm/libs/render/ssrCache/cacheMod.js +0 -25
  77. package/dist/esm/libs/render/ssrCache/index.js +0 -170
  78. package/dist/esm/libs/render/ssrCache/manager.js +0 -178
  79. package/dist/esm/libs/render/static.js +0 -100
  80. package/dist/esm/libs/render/type.js +0 -9
  81. package/dist/esm/libs/render/utils.js +0 -16
  82. package/dist/esm/libs/reporter.js +0 -15
  83. package/dist/esm/libs/route/index.js +0 -82
  84. package/dist/esm/libs/route/matcher.js +0 -92
  85. package/dist/esm/libs/route/route.js +0 -17
  86. package/dist/esm/libs/serveFile.js +0 -68
  87. package/dist/esm/libs/serverTiming.js +0 -22
  88. package/dist/esm/renderHtml.js +0 -133
  89. package/dist/esm/server/index.js +0 -350
  90. package/dist/esm/server/modernServer.js +0 -884
  91. package/dist/esm/server/modernServerSplit.js +0 -113
  92. package/dist/esm/utils.js +0 -103
  93. package/dist/esm/workerServer.js +0 -352
  94. package/dist/esm-node/constants.js +0 -43
  95. package/dist/esm-node/libs/context/context.js +0 -202
  96. package/dist/esm-node/libs/context/index.js +0 -6
  97. package/dist/esm-node/libs/hook-api/afterRenderForStream.js +0 -10
  98. package/dist/esm-node/libs/hook-api/base.js +0 -61
  99. package/dist/esm-node/libs/hook-api/index.js +0 -57
  100. package/dist/esm-node/libs/hook-api/index.worker.js +0 -89
  101. package/dist/esm-node/libs/hook-api/route.js +0 -20
  102. package/dist/esm-node/libs/hook-api/template.js +0 -47
  103. package/dist/esm-node/libs/hook-api/templateForStream.js +0 -28
  104. package/dist/esm-node/libs/loadConfig.js +0 -34
  105. package/dist/esm-node/libs/metrics.js +0 -9
  106. package/dist/esm-node/libs/preload/flushServerHeader.js +0 -25
  107. package/dist/esm-node/libs/preload/index.js +0 -2
  108. package/dist/esm-node/libs/preload/parseLinks.js +0 -90
  109. package/dist/esm-node/libs/preload/shouldFlushServerHeader.js +0 -27
  110. package/dist/esm-node/libs/preload/transformLinks2String.js +0 -126
  111. package/dist/esm-node/libs/proxy.js +0 -74
  112. package/dist/esm-node/libs/render/index.js +0 -75
  113. package/dist/esm-node/libs/render/measure.js +0 -49
  114. package/dist/esm-node/libs/render/ssr.js +0 -96
  115. package/dist/esm-node/libs/render/ssrCache/cacheMod.js +0 -17
  116. package/dist/esm-node/libs/render/ssrCache/index.js +0 -66
  117. package/dist/esm-node/libs/render/ssrCache/manager.js +0 -96
  118. package/dist/esm-node/libs/render/static.js +0 -38
  119. package/dist/esm-node/libs/render/type.js +0 -9
  120. package/dist/esm-node/libs/render/utils.js +0 -16
  121. package/dist/esm-node/libs/reporter.js +0 -15
  122. package/dist/esm-node/libs/route/index.js +0 -58
  123. package/dist/esm-node/libs/route/matcher.js +0 -89
  124. package/dist/esm-node/libs/route/route.js +0 -16
  125. package/dist/esm-node/libs/serveFile.js +0 -49
  126. package/dist/esm-node/libs/serverTiming.js +0 -17
  127. package/dist/esm-node/renderHtml.js +0 -73
  128. package/dist/esm-node/server/index.js +0 -189
  129. package/dist/esm-node/server/modernServer.js +0 -488
  130. package/dist/esm-node/server/modernServerSplit.js +0 -43
  131. package/dist/esm-node/utils.js +0 -132
  132. package/dist/esm-node/workerServer.js +0 -235
  133. package/dist/types/constants.d.ts +0 -30
  134. package/dist/types/libs/context/context.d.ts +0 -62
  135. package/dist/types/libs/context/index.d.ts +0 -7
  136. package/dist/types/libs/hook-api/afterRenderForStream.d.ts +0 -4
  137. package/dist/types/libs/hook-api/base.d.ts +0 -53
  138. package/dist/types/libs/hook-api/index.d.ts +0 -6
  139. package/dist/types/libs/hook-api/index.worker.d.ts +0 -19
  140. package/dist/types/libs/hook-api/route.d.ts +0 -9
  141. package/dist/types/libs/hook-api/template.d.ts +0 -22
  142. package/dist/types/libs/hook-api/templateForStream.d.ts +0 -8
  143. package/dist/types/libs/loadConfig.d.ts +0 -13
  144. package/dist/types/libs/metrics.d.ts +0 -3
  145. package/dist/types/libs/preload/flushServerHeader.d.ts +0 -14
  146. package/dist/types/libs/preload/index.d.ts +0 -2
  147. package/dist/types/libs/preload/parseLinks.d.ts +0 -13
  148. package/dist/types/libs/preload/shouldFlushServerHeader.d.ts +0 -3
  149. package/dist/types/libs/preload/transformLinks2String.d.ts +0 -3
  150. package/dist/types/libs/proxy.d.ts +0 -13
  151. package/dist/types/libs/render/index.d.ts +0 -21
  152. package/dist/types/libs/render/measure.d.ts +0 -10
  153. package/dist/types/libs/render/ssr.d.ts +0 -12
  154. package/dist/types/libs/render/ssrCache/cacheMod.d.ts +0 -8
  155. package/dist/types/libs/render/ssrCache/index.d.ts +0 -6
  156. package/dist/types/libs/render/ssrCache/manager.d.ts +0 -20
  157. package/dist/types/libs/render/static.d.ts +0 -3
  158. package/dist/types/libs/render/type.d.ts +0 -36
  159. package/dist/types/libs/render/utils.d.ts +0 -5
  160. package/dist/types/libs/reporter.d.ts +0 -2
  161. package/dist/types/libs/route/index.d.ts +0 -15
  162. package/dist/types/libs/route/matcher.d.ts +0 -15
  163. package/dist/types/libs/route/route.d.ts +0 -14
  164. package/dist/types/libs/serveFile.d.ts +0 -9
  165. package/dist/types/libs/serverTiming.d.ts +0 -13
  166. package/dist/types/renderHtml.d.ts +0 -23
  167. package/dist/types/server/index.d.ts +0 -55
  168. package/dist/types/server/modernServer.d.ts +0 -71
  169. package/dist/types/server/modernServerSplit.d.ts +0 -2
  170. package/dist/types/type.d.ts +0 -78
  171. package/dist/types/utils.d.ts +0 -24
  172. package/dist/types/workerServer.d.ts +0 -59
  173. /package/dist/esm/{type.js → types.js} +0 -0
  174. /package/dist/esm-node/{type.js → types.js} +0 -0
package/dist/cjs/utils.js DELETED
@@ -1,164 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var utils_exports = {};
20
- __export(utils_exports, {
21
- createErrorDocument: () => createErrorDocument,
22
- createMiddlewareCollecter: () => createMiddlewareCollecter,
23
- debug: () => debug,
24
- getStaticReg: () => getStaticReg,
25
- headersWithoutCookie: () => headersWithoutCookie,
26
- isRedirect: () => isRedirect,
27
- mergeExtension: () => mergeExtension,
28
- noop: () => noop,
29
- prepareFavicons: () => prepareFavicons
30
- });
31
- module.exports = __toCommonJS(utils_exports);
32
- var import_utils = require("@modern-js/utils");
33
- const debug = (0, import_utils.createDebugger)("prod-server");
34
- const mergeExtension = (users) => {
35
- const output = [];
36
- return {
37
- middleware: output.concat(users)
38
- };
39
- };
40
- const noop = () => {
41
- };
42
- const createErrorDocument = (status, text) => {
43
- const title = `${status}: ${text}`;
44
- return `<!DOCTYPE html>
45
- <html lang="en">
46
- <head>
47
- <meta charset="utf-8">
48
- <meta name="viewport" content="width=device-width">
49
- <title>${title}</title>
50
- <style>
51
- html,body {
52
- margin: 0;
53
- }
54
-
55
- .page-container {
56
- color: #000;
57
- background: #fff;
58
- height: 100vh;
59
- text-align: center;
60
- display: flex;
61
- flex-direction: column;
62
- align-items: center;
63
- justify-content: center;
64
- }
65
- </style>
66
- </head>
67
- <body>
68
- <div class="page-container">
69
- <h1>${status}</h1>
70
- <div>${text}</div>
71
- </body>
72
- </html>
73
- `;
74
- };
75
- const createMiddlewareCollecter = () => {
76
- const webMiddlewares = [];
77
- const apiMiddlewares = [];
78
- const addWebMiddleware = (input) => {
79
- webMiddlewares.push(input);
80
- };
81
- const addAPIMiddleware = (input) => {
82
- apiMiddlewares.push(input);
83
- };
84
- const getMiddlewares = () => ({
85
- web: webMiddlewares,
86
- api: apiMiddlewares
87
- });
88
- return {
89
- getMiddlewares,
90
- addWebMiddleware,
91
- addAPIMiddleware
92
- };
93
- };
94
- const getStaticReg = (output = {}, html = {}, prefix = "/") => {
95
- const { distPath: { css: cssPath, js: jsPath, media: mediaPath } = {} } = output;
96
- const { favicon, faviconByEntries } = html;
97
- const favicons = prepareFavicons(favicon, faviconByEntries);
98
- const staticFiles = [
99
- cssPath,
100
- jsPath,
101
- mediaPath
102
- ].filter((v) => Boolean(v));
103
- const staticReg = [
104
- "static/",
105
- "upload/",
106
- ...staticFiles
107
- ];
108
- const iconReg = [
109
- "favicon.ico",
110
- "icon.png",
111
- ...favicons
112
- ];
113
- const regPrefix = prefix.endsWith("/") ? prefix : `${prefix}/`;
114
- const staticPathRegExp = new RegExp(`^${regPrefix}(${[
115
- ...staticReg,
116
- ...iconReg
117
- ].join("|")})`);
118
- return staticPathRegExp;
119
- };
120
- const prepareFavicons = (favicon, faviconByEntries) => {
121
- const faviconNames = [];
122
- if (favicon) {
123
- faviconNames.push(favicon.substring(favicon.lastIndexOf("/") + 1));
124
- }
125
- if (faviconByEntries) {
126
- Object.keys(faviconByEntries).forEach((f) => {
127
- const curFavicon = faviconByEntries[f];
128
- if (curFavicon) {
129
- faviconNames.push(curFavicon.substring(curFavicon.lastIndexOf("/") + 1));
130
- }
131
- });
132
- }
133
- return faviconNames;
134
- };
135
- const headersWithoutCookie = (headers) => {
136
- if (typeof headers.cookie !== "undefined") {
137
- const safeHeaders = {
138
- ...headers
139
- };
140
- delete safeHeaders.cookie;
141
- return safeHeaders;
142
- }
143
- return headers;
144
- };
145
- const isRedirect = (code) => {
146
- return [
147
- 301,
148
- 302,
149
- 307,
150
- 308
151
- ].includes(code);
152
- };
153
- // Annotate the CommonJS export names for ESM import in node:
154
- 0 && (module.exports = {
155
- createErrorDocument,
156
- createMiddlewareCollecter,
157
- debug,
158
- getStaticReg,
159
- headersWithoutCookie,
160
- isRedirect,
161
- mergeExtension,
162
- noop,
163
- prepareFavicons
164
- });
@@ -1,260 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var workerServer_exports = {};
20
- __export(workerServer_exports, {
21
- ReturnResponse: () => ReturnResponse,
22
- createHandler: () => createHandler
23
- });
24
- module.exports = __toCommonJS(workerServer_exports);
25
- var import_plugin = require("@modern-js/plugin");
26
- var import_hook_api = require("./libs/hook-api/index.worker");
27
- var import_route = require("./libs/route");
28
- var import_metrics = require("./libs/metrics");
29
- var import_reporter = require("./libs/reporter");
30
- const createLogger = () => ({
31
- error(message, ...args) {
32
- console.error(message, ...args);
33
- },
34
- info(message, ...args) {
35
- console.error(message, ...args);
36
- },
37
- warn(message, ...args) {
38
- console.warn(message, ...args);
39
- },
40
- debug(message, ...args) {
41
- console.debug(message, ...args);
42
- }
43
- });
44
- const calcFallback = (metaName) => `x-${metaName.split(/[-_]/)[0]}-ssr-fallback`;
45
- class ReturnResponse {
46
- /**
47
- * Iterate a Object
48
- * 1. adds the value if the key does not already exist.
49
- * 2. append the value if the key does already exist.
50
- *
51
- * more detail follow: https://developer.mozilla.org/en-US/docs/Web/API/Headers/append
52
- * @param headers
53
- * @returns
54
- */
55
- appendHeaders(headers) {
56
- Object.entries(headers).forEach(([key, value]) => {
57
- this.headers.append(key, value.toString());
58
- });
59
- return this;
60
- }
61
- /**
62
- * Iterate a Object
63
- * 1. adds the value if the key does not already exist.
64
- * 2. modify the value if the key does already exist.
65
- *
66
- * more detail follow: https://developer.mozilla.org/en-US/docs/Web/API/Headers/set
67
- * @param headers
68
- * @returns
69
- */
70
- setHeaders(headers) {
71
- Object.entries(headers).forEach(([key, value]) => {
72
- this.headers.set(key, value.toString());
73
- });
74
- return this;
75
- }
76
- constructor(body, status, headers = {}) {
77
- this.body = body;
78
- this.status = status;
79
- this.headers = new Headers(headers);
80
- this.headers.set("content-type", "text/html;charset=UTF-8");
81
- }
82
- }
83
- const RESPONSE_NOTFOUND = new ReturnResponse("404: Page not found", 404);
84
- const isRedirect = (code) => {
85
- return [
86
- 301,
87
- 302,
88
- 307,
89
- 308
90
- ].includes(code);
91
- };
92
- const checkIsSent = (context) => {
93
- if (context.res.isSent) {
94
- return true;
95
- }
96
- if (context.res.headers.get("Location") && isRedirect(context.res.status)) {
97
- return true;
98
- }
99
- return false;
100
- };
101
- const middlewarePipeline = (0, import_plugin.createAsyncPipeline)();
102
- const createHandler = (manifest) => {
103
- const routeMgr = new import_route.RouteMatchManager();
104
- const { pages, routes, options: manifestOpts } = manifest;
105
- const { metaName = "modern-js", forceCSR = false } = manifestOpts || {};
106
- routeMgr.reset(routes);
107
- return async (options) => {
108
- var _page_serverHooks_afterMatch, _page_serverHooks;
109
- const { request, loadableStats, routeManifest } = options;
110
- const url = new URL(request.url);
111
- const pageMatch = routeMgr.match(url.pathname);
112
- if (!pageMatch) {
113
- return RESPONSE_NOTFOUND;
114
- }
115
- const entryName = pageMatch.spec.urlPath;
116
- const page = pages[entryName];
117
- if (forceCSR && url.searchParams.get("csr") === "1") {
118
- return createResponse(page.template);
119
- }
120
- const logger = createLogger();
121
- const metrics = import_metrics.metrics;
122
- const reporter = import_reporter.defaultReporter;
123
- const route = pageMatch.generate(url.pathname);
124
- const hookContext = createWorkerHookContext(request.url, logger, metrics, reporter);
125
- const afterMatchHookContext = (0, import_hook_api.createAfterMatchContext)(hookContext, entryName);
126
- await (page === null || page === void 0 ? void 0 : (_page_serverHooks = page.serverHooks) === null || _page_serverHooks === void 0 ? void 0 : (_page_serverHooks_afterMatch = _page_serverHooks.afterMatch) === null || _page_serverHooks_afterMatch === void 0 ? void 0 : _page_serverHooks_afterMatch.call(_page_serverHooks, afterMatchHookContext, () => void 0));
127
- if (checkIsSent(hookContext)) {
128
- return new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers);
129
- }
130
- if (page.serverRender) {
131
- try {
132
- var _page_serverHooks1, _page_serverHooks_afterRender, _page_serverHooks2;
133
- const middlewarsHookContext = (0, import_hook_api.createMiddlewareContext)(hookContext);
134
- applyMiddlewares(middlewarsHookContext, (_page_serverHooks1 = page.serverHooks) === null || _page_serverHooks1 === void 0 ? void 0 : _page_serverHooks1.middleware);
135
- if (checkIsSent(hookContext)) {
136
- return new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers);
137
- }
138
- if (forceCSR && middlewarsHookContext.request.headers[calcFallback(metaName)]) {
139
- return createResponse(page.template);
140
- }
141
- const responseLike = {
142
- headers: {},
143
- statusCode: 200,
144
- locals: {},
145
- setHeader(key, value) {
146
- this.headers[key] = value;
147
- },
148
- status(code) {
149
- this.statusCode = code;
150
- }
151
- };
152
- const params = pageMatch.parseURLParams(url.pathname) || {};
153
- const { urlPath: baseUrl } = pageMatch;
154
- const serverRenderContext = {
155
- request: createServerRequest(url, baseUrl, request, params),
156
- response: responseLike,
157
- loadableStats,
158
- routeManifest,
159
- redirection: {},
160
- template: page.template,
161
- entryName: page.entryName,
162
- logger,
163
- reporter: import_reporter.defaultReporter,
164
- metrics,
165
- req: request,
166
- res: responseLike,
167
- serverTiming: {
168
- addServeTiming() {
169
- return this;
170
- }
171
- }
172
- };
173
- const body = await page.serverRender(serverRenderContext);
174
- const afterRenderHookContext = (0, import_hook_api.createAfterRenderContext)(hookContext, route, body);
175
- await ((_page_serverHooks2 = page.serverHooks) === null || _page_serverHooks2 === void 0 ? void 0 : (_page_serverHooks_afterRender = _page_serverHooks2.afterRender) === null || _page_serverHooks_afterRender === void 0 ? void 0 : _page_serverHooks_afterRender.call(_page_serverHooks2, afterRenderHookContext, () => void 0));
176
- if (checkIsSent(hookContext)) {
177
- return new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers);
178
- }
179
- return new ReturnResponse(afterRenderHookContext.template.get(), responseLike.statusCode, responseLike.headers);
180
- } catch (e) {
181
- console.warn(`page(${pageMatch.spec.urlPath}) serverRender occur error: `);
182
- console.warn(e);
183
- return createResponse(page.template);
184
- }
185
- }
186
- console.warn(`Can't not page(${entryName}) serverRender`);
187
- return createResponse(page.template);
188
- function createServerRequest(url2, baseUrl, request2, params) {
189
- const { pathname, host, searchParams } = url2;
190
- const { headers: rawHeaders } = request2;
191
- const headers = {};
192
- rawHeaders.forEach((value, key) => {
193
- headers[key] = value;
194
- });
195
- const query = Object.fromEntries(searchParams);
196
- return {
197
- url: url2.href,
198
- baseUrl,
199
- pathname,
200
- host,
201
- headers,
202
- params,
203
- query
204
- };
205
- }
206
- };
207
- };
208
- function createResponse(template) {
209
- if (template) {
210
- return new ReturnResponse(template, 200);
211
- } else {
212
- return RESPONSE_NOTFOUND;
213
- }
214
- }
215
- function createWorkerHookContext(url, logger, metrics, reporter) {
216
- const [res, req] = [
217
- {
218
- headers: new Headers(),
219
- body: "",
220
- status: 200,
221
- isSent: false
222
- },
223
- new Request(url)
224
- ];
225
- return {
226
- res,
227
- req,
228
- logger,
229
- metrics,
230
- reporter
231
- };
232
- }
233
- let appliedMiddlewares = false;
234
- async function applyMiddlewares(ctx, middleware) {
235
- if (middleware) {
236
- const middlewares = (() => {
237
- if (Array.isArray(middleware)) {
238
- return middleware;
239
- } else {
240
- return [
241
- middleware
242
- ];
243
- }
244
- })();
245
- if (!appliedMiddlewares) {
246
- middlewares.forEach((middleware2) => {
247
- middlewarePipeline.use(middleware2);
248
- });
249
- appliedMiddlewares = true;
250
- }
251
- await middlewarePipeline.run(ctx, {
252
- onLast: () => void 0
253
- });
254
- }
255
- }
256
- // Annotate the CommonJS export names for ESM import in node:
257
- 0 && (module.exports = {
258
- ReturnResponse,
259
- createHandler
260
- });
@@ -1,43 +0,0 @@
1
- var AGGRED_DIR = {
2
- mock: "config/mock",
3
- server: "server",
4
- api: "api",
5
- shared: "shared",
6
- lambda: "lambda"
7
- };
8
- var ApiServerMode;
9
- (function(ApiServerMode2) {
10
- ApiServerMode2["func"] = "function";
11
- ApiServerMode2["frame"] = "framework";
12
- })(ApiServerMode || (ApiServerMode = {}));
13
- var ERROR_DIGEST = {
14
- INIT: "Server init error",
15
- ENOTF: "Page could not be found",
16
- WARMUP: "SSR warmup failed",
17
- EINTER: "Internal server error",
18
- ERENDER: "SSR render failed",
19
- EMICROINJ: "Get micro-frontend info failed"
20
- };
21
- var ERROR_PAGE_TEXT = {
22
- 404: "This page could not be found.",
23
- 500: "Internal Server Error."
24
- };
25
- var RUN_MODE = {
26
- FULL: "full",
27
- TYPE: "type"
28
- };
29
- var ServerReportTimings;
30
- (function(ServerReportTimings2) {
31
- ServerReportTimings2["SERVER_HANDLE_REQUEST"] = "server-handle-request";
32
- ServerReportTimings2["SERVER_MIDDLEWARE"] = "server-middleware";
33
- ServerReportTimings2["SERVER_HOOK_AFTER_RENDER"] = "server-hook-after-render";
34
- ServerReportTimings2["SERVER_HOOK_AFTER_MATCH"] = "server-hook-after-match";
35
- })(ServerReportTimings || (ServerReportTimings = {}));
36
- export {
37
- AGGRED_DIR,
38
- ApiServerMode,
39
- ERROR_DIGEST,
40
- ERROR_PAGE_TEXT,
41
- RUN_MODE,
42
- ServerReportTimings
43
- };