@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.
- package/README.md +20 -16
- package/dist/cjs/{libs/route/route.js → error.js} +16 -17
- package/dist/cjs/index.js +18 -24
- package/dist/cjs/init.js +71 -0
- package/dist/cjs/{type.js → types.js} +2 -2
- package/dist/esm/error.js +15 -0
- package/dist/esm/index.js +53 -19
- package/dist/esm/init.js +73 -0
- package/dist/esm-node/error.js +14 -0
- package/dist/esm-node/index.js +16 -17
- package/dist/esm-node/init.js +47 -0
- package/dist/types/error.d.ts +6 -0
- package/dist/types/index.d.ts +8 -11
- package/dist/types/init.d.ts +4 -0
- package/dist/types/types.d.ts +14 -0
- package/package.json +23 -64
- package/dist/cjs/constants.js +0 -72
- package/dist/cjs/libs/context/context.js +0 -236
- package/dist/cjs/libs/context/index.js +0 -31
- package/dist/cjs/libs/hook-api/afterRenderForStream.js +0 -34
- package/dist/cjs/libs/hook-api/base.js +0 -96
- package/dist/cjs/libs/hook-api/index.js +0 -85
- package/dist/cjs/libs/hook-api/index.worker.js +0 -116
- package/dist/cjs/libs/hook-api/route.js +0 -44
- package/dist/cjs/libs/hook-api/template.js +0 -72
- package/dist/cjs/libs/hook-api/templateForStream.js +0 -52
- package/dist/cjs/libs/loadConfig.js +0 -70
- package/dist/cjs/libs/metrics.js +0 -33
- package/dist/cjs/libs/preload/flushServerHeader.js +0 -49
- package/dist/cjs/libs/preload/index.js +0 -24
- package/dist/cjs/libs/preload/parseLinks.js +0 -124
- package/dist/cjs/libs/preload/shouldFlushServerHeader.js +0 -52
- package/dist/cjs/libs/preload/transformLinks2String.js +0 -150
- package/dist/cjs/libs/proxy.js +0 -99
- package/dist/cjs/libs/render/index.js +0 -109
- package/dist/cjs/libs/render/measure.js +0 -74
- package/dist/cjs/libs/render/ssr.js +0 -130
- package/dist/cjs/libs/render/ssrCache/cacheMod.js +0 -51
- package/dist/cjs/libs/render/ssrCache/index.js +0 -90
- package/dist/cjs/libs/render/ssrCache/manager.js +0 -120
- package/dist/cjs/libs/render/static.js +0 -72
- package/dist/cjs/libs/render/type.js +0 -33
- package/dist/cjs/libs/render/utils.js +0 -41
- package/dist/cjs/libs/reporter.js +0 -39
- package/dist/cjs/libs/route/index.js +0 -83
- package/dist/cjs/libs/route/matcher.js +0 -113
- package/dist/cjs/libs/serveFile.js +0 -84
- package/dist/cjs/libs/serverTiming.js +0 -41
- package/dist/cjs/renderHtml.js +0 -65
- package/dist/cjs/server/index.js +0 -223
- package/dist/cjs/server/modernServer.js +0 -522
- package/dist/cjs/server/modernServerSplit.js +0 -67
- package/dist/cjs/utils.js +0 -164
- package/dist/cjs/workerServer.js +0 -260
- package/dist/esm/constants.js +0 -43
- package/dist/esm/libs/context/context.js +0 -260
- package/dist/esm/libs/context/index.js +0 -8
- package/dist/esm/libs/hook-api/afterRenderForStream.js +0 -33
- package/dist/esm/libs/hook-api/base.js +0 -73
- package/dist/esm/libs/hook-api/index.js +0 -55
- package/dist/esm/libs/hook-api/index.worker.js +0 -99
- package/dist/esm/libs/hook-api/route.js +0 -26
- package/dist/esm/libs/hook-api/template.js +0 -56
- package/dist/esm/libs/hook-api/templateForStream.js +0 -35
- package/dist/esm/libs/loadConfig.js +0 -36
- package/dist/esm/libs/metrics.js +0 -9
- package/dist/esm/libs/preload/flushServerHeader.js +0 -50
- package/dist/esm/libs/preload/index.js +0 -2
- package/dist/esm/libs/preload/parseLinks.js +0 -172
- package/dist/esm/libs/preload/shouldFlushServerHeader.js +0 -27
- package/dist/esm/libs/preload/transformLinks2String.js +0 -140
- package/dist/esm/libs/proxy.js +0 -160
- package/dist/esm/libs/render/index.js +0 -175
- package/dist/esm/libs/render/measure.js +0 -69
- package/dist/esm/libs/render/ssr.js +0 -133
- package/dist/esm/libs/render/ssrCache/cacheMod.js +0 -25
- package/dist/esm/libs/render/ssrCache/index.js +0 -170
- package/dist/esm/libs/render/ssrCache/manager.js +0 -178
- package/dist/esm/libs/render/static.js +0 -100
- package/dist/esm/libs/render/type.js +0 -9
- package/dist/esm/libs/render/utils.js +0 -16
- package/dist/esm/libs/reporter.js +0 -15
- package/dist/esm/libs/route/index.js +0 -82
- package/dist/esm/libs/route/matcher.js +0 -92
- package/dist/esm/libs/route/route.js +0 -17
- package/dist/esm/libs/serveFile.js +0 -68
- package/dist/esm/libs/serverTiming.js +0 -22
- package/dist/esm/renderHtml.js +0 -133
- package/dist/esm/server/index.js +0 -350
- package/dist/esm/server/modernServer.js +0 -884
- package/dist/esm/server/modernServerSplit.js +0 -113
- package/dist/esm/utils.js +0 -103
- package/dist/esm/workerServer.js +0 -352
- package/dist/esm-node/constants.js +0 -43
- package/dist/esm-node/libs/context/context.js +0 -202
- package/dist/esm-node/libs/context/index.js +0 -6
- package/dist/esm-node/libs/hook-api/afterRenderForStream.js +0 -10
- package/dist/esm-node/libs/hook-api/base.js +0 -61
- package/dist/esm-node/libs/hook-api/index.js +0 -57
- package/dist/esm-node/libs/hook-api/index.worker.js +0 -89
- package/dist/esm-node/libs/hook-api/route.js +0 -20
- package/dist/esm-node/libs/hook-api/template.js +0 -47
- package/dist/esm-node/libs/hook-api/templateForStream.js +0 -28
- package/dist/esm-node/libs/loadConfig.js +0 -34
- package/dist/esm-node/libs/metrics.js +0 -9
- package/dist/esm-node/libs/preload/flushServerHeader.js +0 -25
- package/dist/esm-node/libs/preload/index.js +0 -2
- package/dist/esm-node/libs/preload/parseLinks.js +0 -90
- package/dist/esm-node/libs/preload/shouldFlushServerHeader.js +0 -27
- package/dist/esm-node/libs/preload/transformLinks2String.js +0 -126
- package/dist/esm-node/libs/proxy.js +0 -74
- package/dist/esm-node/libs/render/index.js +0 -75
- package/dist/esm-node/libs/render/measure.js +0 -49
- package/dist/esm-node/libs/render/ssr.js +0 -96
- package/dist/esm-node/libs/render/ssrCache/cacheMod.js +0 -17
- package/dist/esm-node/libs/render/ssrCache/index.js +0 -66
- package/dist/esm-node/libs/render/ssrCache/manager.js +0 -96
- package/dist/esm-node/libs/render/static.js +0 -38
- package/dist/esm-node/libs/render/type.js +0 -9
- package/dist/esm-node/libs/render/utils.js +0 -16
- package/dist/esm-node/libs/reporter.js +0 -15
- package/dist/esm-node/libs/route/index.js +0 -58
- package/dist/esm-node/libs/route/matcher.js +0 -89
- package/dist/esm-node/libs/route/route.js +0 -16
- package/dist/esm-node/libs/serveFile.js +0 -49
- package/dist/esm-node/libs/serverTiming.js +0 -17
- package/dist/esm-node/renderHtml.js +0 -73
- package/dist/esm-node/server/index.js +0 -189
- package/dist/esm-node/server/modernServer.js +0 -488
- package/dist/esm-node/server/modernServerSplit.js +0 -43
- package/dist/esm-node/utils.js +0 -132
- package/dist/esm-node/workerServer.js +0 -235
- package/dist/types/constants.d.ts +0 -30
- package/dist/types/libs/context/context.d.ts +0 -62
- package/dist/types/libs/context/index.d.ts +0 -7
- package/dist/types/libs/hook-api/afterRenderForStream.d.ts +0 -4
- package/dist/types/libs/hook-api/base.d.ts +0 -53
- package/dist/types/libs/hook-api/index.d.ts +0 -6
- package/dist/types/libs/hook-api/index.worker.d.ts +0 -19
- package/dist/types/libs/hook-api/route.d.ts +0 -9
- package/dist/types/libs/hook-api/template.d.ts +0 -22
- package/dist/types/libs/hook-api/templateForStream.d.ts +0 -8
- package/dist/types/libs/loadConfig.d.ts +0 -13
- package/dist/types/libs/metrics.d.ts +0 -3
- package/dist/types/libs/preload/flushServerHeader.d.ts +0 -14
- package/dist/types/libs/preload/index.d.ts +0 -2
- package/dist/types/libs/preload/parseLinks.d.ts +0 -13
- package/dist/types/libs/preload/shouldFlushServerHeader.d.ts +0 -3
- package/dist/types/libs/preload/transformLinks2String.d.ts +0 -3
- package/dist/types/libs/proxy.d.ts +0 -13
- package/dist/types/libs/render/index.d.ts +0 -21
- package/dist/types/libs/render/measure.d.ts +0 -10
- package/dist/types/libs/render/ssr.d.ts +0 -12
- package/dist/types/libs/render/ssrCache/cacheMod.d.ts +0 -8
- package/dist/types/libs/render/ssrCache/index.d.ts +0 -6
- package/dist/types/libs/render/ssrCache/manager.d.ts +0 -20
- package/dist/types/libs/render/static.d.ts +0 -3
- package/dist/types/libs/render/type.d.ts +0 -36
- package/dist/types/libs/render/utils.d.ts +0 -5
- package/dist/types/libs/reporter.d.ts +0 -2
- package/dist/types/libs/route/index.d.ts +0 -15
- package/dist/types/libs/route/matcher.d.ts +0 -15
- package/dist/types/libs/route/route.d.ts +0 -14
- package/dist/types/libs/serveFile.d.ts +0 -9
- package/dist/types/libs/serverTiming.d.ts +0 -13
- package/dist/types/renderHtml.d.ts +0 -23
- package/dist/types/server/index.d.ts +0 -55
- package/dist/types/server/modernServer.d.ts +0 -71
- package/dist/types/server/modernServerSplit.d.ts +0 -2
- package/dist/types/type.d.ts +0 -78
- package/dist/types/utils.d.ts +0 -24
- package/dist/types/workerServer.d.ts +0 -59
- /package/dist/esm/{type.js → types.js} +0 -0
- /package/dist/esm-node/{type.js → types.js} +0 -0
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
|
-
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
|
|
3
|
-
import { _ as _get } from "@swc/helpers/_/_get";
|
|
4
|
-
import { _ as _get_prototype_of } from "@swc/helpers/_/_get_prototype_of";
|
|
5
|
-
import { _ as _inherits } from "@swc/helpers/_/_inherits";
|
|
6
|
-
import { _ as _create_super } from "@swc/helpers/_/_create_super";
|
|
7
|
-
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
8
|
-
import { ModernServer } from "./modernServer";
|
|
9
|
-
var ModernSSRServer = /* @__PURE__ */ function(ModernServer2) {
|
|
10
|
-
"use strict";
|
|
11
|
-
_inherits(ModernSSRServer2, ModernServer2);
|
|
12
|
-
var _super = _create_super(ModernSSRServer2);
|
|
13
|
-
function ModernSSRServer2() {
|
|
14
|
-
_class_call_check(this, ModernSSRServer2);
|
|
15
|
-
return _super.apply(this, arguments);
|
|
16
|
-
}
|
|
17
|
-
var _proto = ModernSSRServer2.prototype;
|
|
18
|
-
_proto.prepareAPIHandler = function prepareAPIHandler(_) {
|
|
19
|
-
return null;
|
|
20
|
-
};
|
|
21
|
-
_proto.handleAPI = function handleAPI(context) {
|
|
22
|
-
var _this = this;
|
|
23
|
-
return _async_to_generator(function() {
|
|
24
|
-
return _ts_generator(this, function(_state) {
|
|
25
|
-
return [
|
|
26
|
-
2,
|
|
27
|
-
_this.render404(context)
|
|
28
|
-
];
|
|
29
|
-
});
|
|
30
|
-
})();
|
|
31
|
-
};
|
|
32
|
-
return ModernSSRServer2;
|
|
33
|
-
}(ModernServer);
|
|
34
|
-
var ModernAPIServer = /* @__PURE__ */ function(ModernServer2) {
|
|
35
|
-
"use strict";
|
|
36
|
-
_inherits(ModernAPIServer2, ModernServer2);
|
|
37
|
-
var _super = _create_super(ModernAPIServer2);
|
|
38
|
-
function ModernAPIServer2() {
|
|
39
|
-
_class_call_check(this, ModernAPIServer2);
|
|
40
|
-
return _super.apply(this, arguments);
|
|
41
|
-
}
|
|
42
|
-
var _proto = ModernAPIServer2.prototype;
|
|
43
|
-
_proto.prepareWebHandler = function prepareWebHandler(_) {
|
|
44
|
-
return null;
|
|
45
|
-
};
|
|
46
|
-
_proto.filterRoutes = function filterRoutes(routes) {
|
|
47
|
-
return routes.filter(function(route) {
|
|
48
|
-
return route.isApi;
|
|
49
|
-
});
|
|
50
|
-
};
|
|
51
|
-
return ModernAPIServer2;
|
|
52
|
-
}(ModernServer);
|
|
53
|
-
var ModernWebServer = /* @__PURE__ */ function(ModernServer2) {
|
|
54
|
-
"use strict";
|
|
55
|
-
_inherits(ModernWebServer2, ModernServer2);
|
|
56
|
-
var _super = _create_super(ModernWebServer2);
|
|
57
|
-
function ModernWebServer2() {
|
|
58
|
-
_class_call_check(this, ModernWebServer2);
|
|
59
|
-
return _super.apply(this, arguments);
|
|
60
|
-
}
|
|
61
|
-
var _proto = ModernWebServer2.prototype;
|
|
62
|
-
_proto.warmupSSRBundle = function warmupSSRBundle() {
|
|
63
|
-
return _async_to_generator(function() {
|
|
64
|
-
return _ts_generator(this, function(_state) {
|
|
65
|
-
return [
|
|
66
|
-
2,
|
|
67
|
-
null
|
|
68
|
-
];
|
|
69
|
-
});
|
|
70
|
-
})();
|
|
71
|
-
};
|
|
72
|
-
_proto.handleAPI = function handleAPI(context) {
|
|
73
|
-
var _this = this;
|
|
74
|
-
return _async_to_generator(function() {
|
|
75
|
-
return _ts_generator(this, function(_state) {
|
|
76
|
-
return [
|
|
77
|
-
2,
|
|
78
|
-
_this.render404(context)
|
|
79
|
-
];
|
|
80
|
-
});
|
|
81
|
-
})();
|
|
82
|
-
};
|
|
83
|
-
_proto.handleWeb = function handleWeb(context, route) {
|
|
84
|
-
var _this = this;
|
|
85
|
-
var _this1 = this, _superprop_get_handleWeb = function() {
|
|
86
|
-
return _get(_get_prototype_of(ModernWebServer2.prototype), "handleWeb", _this);
|
|
87
|
-
};
|
|
88
|
-
return _async_to_generator(function() {
|
|
89
|
-
return _ts_generator(this, function(_state) {
|
|
90
|
-
route.isSSR = false;
|
|
91
|
-
return [
|
|
92
|
-
2,
|
|
93
|
-
_superprop_get_handleWeb().call(_this1, context, route)
|
|
94
|
-
];
|
|
95
|
-
});
|
|
96
|
-
})();
|
|
97
|
-
};
|
|
98
|
-
return ModernWebServer2;
|
|
99
|
-
}(ModernServer);
|
|
100
|
-
var createProdServer = function(options) {
|
|
101
|
-
if (options.apiOnly) {
|
|
102
|
-
return new ModernAPIServer(options);
|
|
103
|
-
} else if (options.ssrOnly) {
|
|
104
|
-
return new ModernSSRServer(options);
|
|
105
|
-
} else if (options.webOnly) {
|
|
106
|
-
return new ModernWebServer(options);
|
|
107
|
-
} else {
|
|
108
|
-
return new ModernServer(options);
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
export {
|
|
112
|
-
createProdServer
|
|
113
|
-
};
|
package/dist/esm/utils.js
DELETED
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
2
|
-
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
|
|
3
|
-
import { createDebugger } from "@modern-js/utils";
|
|
4
|
-
var debug = createDebugger("prod-server");
|
|
5
|
-
var mergeExtension = function(users) {
|
|
6
|
-
var output = [];
|
|
7
|
-
return {
|
|
8
|
-
middleware: output.concat(users)
|
|
9
|
-
};
|
|
10
|
-
};
|
|
11
|
-
var noop = function() {
|
|
12
|
-
};
|
|
13
|
-
var createErrorDocument = function(status, text) {
|
|
14
|
-
var title = "".concat(status, ": ").concat(text);
|
|
15
|
-
return '<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="utf-8">\n <meta name="viewport" content="width=device-width">\n <title>'.concat(title, '</title>\n <style>\n html,body {\n margin: 0;\n }\n\n .page-container {\n color: #000;\n background: #fff;\n height: 100vh;\n text-align: center;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n </style>\n </head>\n <body>\n <div class="page-container">\n <h1>').concat(status, "</h1>\n <div>").concat(text, "</div>\n </body>\n </html>\n ");
|
|
16
|
-
};
|
|
17
|
-
var createMiddlewareCollecter = function() {
|
|
18
|
-
var webMiddlewares = [];
|
|
19
|
-
var apiMiddlewares = [];
|
|
20
|
-
var addWebMiddleware = function(input) {
|
|
21
|
-
webMiddlewares.push(input);
|
|
22
|
-
};
|
|
23
|
-
var addAPIMiddleware = function(input) {
|
|
24
|
-
apiMiddlewares.push(input);
|
|
25
|
-
};
|
|
26
|
-
var getMiddlewares = function() {
|
|
27
|
-
return {
|
|
28
|
-
web: webMiddlewares,
|
|
29
|
-
api: apiMiddlewares
|
|
30
|
-
};
|
|
31
|
-
};
|
|
32
|
-
return {
|
|
33
|
-
getMiddlewares,
|
|
34
|
-
addWebMiddleware,
|
|
35
|
-
addAPIMiddleware
|
|
36
|
-
};
|
|
37
|
-
};
|
|
38
|
-
var getStaticReg = function() {
|
|
39
|
-
var output = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, html = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, prefix = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "/";
|
|
40
|
-
var tmp = output.distPath, _ref = tmp === void 0 ? {} : tmp, cssPath = _ref.css, jsPath = _ref.js, mediaPath = _ref.media;
|
|
41
|
-
var favicon = html.favicon, faviconByEntries = html.faviconByEntries;
|
|
42
|
-
var favicons = prepareFavicons(favicon, faviconByEntries);
|
|
43
|
-
var staticFiles = [
|
|
44
|
-
cssPath,
|
|
45
|
-
jsPath,
|
|
46
|
-
mediaPath
|
|
47
|
-
].filter(function(v) {
|
|
48
|
-
return Boolean(v);
|
|
49
|
-
});
|
|
50
|
-
var staticReg = [
|
|
51
|
-
"static/",
|
|
52
|
-
"upload/"
|
|
53
|
-
].concat(_to_consumable_array(staticFiles));
|
|
54
|
-
var iconReg = [
|
|
55
|
-
"favicon.ico",
|
|
56
|
-
"icon.png"
|
|
57
|
-
].concat(_to_consumable_array(favicons));
|
|
58
|
-
var regPrefix = prefix.endsWith("/") ? prefix : "".concat(prefix, "/");
|
|
59
|
-
var staticPathRegExp = new RegExp("^".concat(regPrefix, "(").concat(_to_consumable_array(staticReg).concat(_to_consumable_array(iconReg)).join("|"), ")"));
|
|
60
|
-
return staticPathRegExp;
|
|
61
|
-
};
|
|
62
|
-
var prepareFavicons = function(favicon, faviconByEntries) {
|
|
63
|
-
var faviconNames = [];
|
|
64
|
-
if (favicon) {
|
|
65
|
-
faviconNames.push(favicon.substring(favicon.lastIndexOf("/") + 1));
|
|
66
|
-
}
|
|
67
|
-
if (faviconByEntries) {
|
|
68
|
-
Object.keys(faviconByEntries).forEach(function(f) {
|
|
69
|
-
var curFavicon = faviconByEntries[f];
|
|
70
|
-
if (curFavicon) {
|
|
71
|
-
faviconNames.push(curFavicon.substring(curFavicon.lastIndexOf("/") + 1));
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
return faviconNames;
|
|
76
|
-
};
|
|
77
|
-
var headersWithoutCookie = function(headers) {
|
|
78
|
-
if (typeof headers.cookie !== "undefined") {
|
|
79
|
-
var safeHeaders = _object_spread({}, headers);
|
|
80
|
-
delete safeHeaders.cookie;
|
|
81
|
-
return safeHeaders;
|
|
82
|
-
}
|
|
83
|
-
return headers;
|
|
84
|
-
};
|
|
85
|
-
var isRedirect = function(code) {
|
|
86
|
-
return [
|
|
87
|
-
301,
|
|
88
|
-
302,
|
|
89
|
-
307,
|
|
90
|
-
308
|
|
91
|
-
].includes(code);
|
|
92
|
-
};
|
|
93
|
-
export {
|
|
94
|
-
createErrorDocument,
|
|
95
|
-
createMiddlewareCollecter,
|
|
96
|
-
debug,
|
|
97
|
-
getStaticReg,
|
|
98
|
-
headersWithoutCookie,
|
|
99
|
-
isRedirect,
|
|
100
|
-
mergeExtension,
|
|
101
|
-
noop,
|
|
102
|
-
prepareFavicons
|
|
103
|
-
};
|
package/dist/esm/workerServer.js
DELETED
|
@@ -1,352 +0,0 @@
|
|
|
1
|
-
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
|
-
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
|
|
3
|
-
import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
|
|
4
|
-
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
|
|
5
|
-
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
6
|
-
import { createAsyncPipeline } from "@modern-js/plugin";
|
|
7
|
-
import { createAfterMatchContext, createAfterRenderContext, createMiddlewareContext } from "./libs/hook-api/index.worker";
|
|
8
|
-
import { RouteMatchManager } from "./libs/route";
|
|
9
|
-
import { metrics as defaultMetrics } from "./libs/metrics";
|
|
10
|
-
import { defaultReporter } from "./libs/reporter";
|
|
11
|
-
var createLogger = function() {
|
|
12
|
-
return {
|
|
13
|
-
error: function error(message) {
|
|
14
|
-
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
15
|
-
args[_key - 1] = arguments[_key];
|
|
16
|
-
}
|
|
17
|
-
var _console;
|
|
18
|
-
(_console = console).error.apply(_console, [
|
|
19
|
-
message
|
|
20
|
-
].concat(_to_consumable_array(args)));
|
|
21
|
-
},
|
|
22
|
-
info: function info(message) {
|
|
23
|
-
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
24
|
-
args[_key - 1] = arguments[_key];
|
|
25
|
-
}
|
|
26
|
-
var _console;
|
|
27
|
-
(_console = console).error.apply(_console, [
|
|
28
|
-
message
|
|
29
|
-
].concat(_to_consumable_array(args)));
|
|
30
|
-
},
|
|
31
|
-
warn: function warn(message) {
|
|
32
|
-
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
33
|
-
args[_key - 1] = arguments[_key];
|
|
34
|
-
}
|
|
35
|
-
var _console;
|
|
36
|
-
(_console = console).warn.apply(_console, [
|
|
37
|
-
message
|
|
38
|
-
].concat(_to_consumable_array(args)));
|
|
39
|
-
},
|
|
40
|
-
debug: function debug(message) {
|
|
41
|
-
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
42
|
-
args[_key - 1] = arguments[_key];
|
|
43
|
-
}
|
|
44
|
-
var _console;
|
|
45
|
-
(_console = console).debug.apply(_console, [
|
|
46
|
-
message
|
|
47
|
-
].concat(_to_consumable_array(args)));
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
};
|
|
51
|
-
var calcFallback = function(metaName) {
|
|
52
|
-
return "x-".concat(metaName.split(/[-_]/)[0], "-ssr-fallback");
|
|
53
|
-
};
|
|
54
|
-
var ReturnResponse = /* @__PURE__ */ function() {
|
|
55
|
-
"use strict";
|
|
56
|
-
function ReturnResponse2(body, status) {
|
|
57
|
-
var headers = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
|
|
58
|
-
_class_call_check(this, ReturnResponse2);
|
|
59
|
-
this.body = body;
|
|
60
|
-
this.status = status;
|
|
61
|
-
this.headers = new Headers(headers);
|
|
62
|
-
this.headers.set("content-type", "text/html;charset=UTF-8");
|
|
63
|
-
}
|
|
64
|
-
var _proto = ReturnResponse2.prototype;
|
|
65
|
-
_proto.appendHeaders = function appendHeaders(headers) {
|
|
66
|
-
var _this = this;
|
|
67
|
-
Object.entries(headers).forEach(function(param) {
|
|
68
|
-
var _param = _sliced_to_array(param, 2), key = _param[0], value = _param[1];
|
|
69
|
-
_this.headers.append(key, value.toString());
|
|
70
|
-
});
|
|
71
|
-
return this;
|
|
72
|
-
};
|
|
73
|
-
_proto.setHeaders = function setHeaders(headers) {
|
|
74
|
-
var _this = this;
|
|
75
|
-
Object.entries(headers).forEach(function(param) {
|
|
76
|
-
var _param = _sliced_to_array(param, 2), key = _param[0], value = _param[1];
|
|
77
|
-
_this.headers.set(key, value.toString());
|
|
78
|
-
});
|
|
79
|
-
return this;
|
|
80
|
-
};
|
|
81
|
-
return ReturnResponse2;
|
|
82
|
-
}();
|
|
83
|
-
var RESPONSE_NOTFOUND = new ReturnResponse("404: Page not found", 404);
|
|
84
|
-
var isRedirect = function(code) {
|
|
85
|
-
return [
|
|
86
|
-
301,
|
|
87
|
-
302,
|
|
88
|
-
307,
|
|
89
|
-
308
|
|
90
|
-
].includes(code);
|
|
91
|
-
};
|
|
92
|
-
var checkIsSent = function(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
|
-
var middlewarePipeline = createAsyncPipeline();
|
|
102
|
-
var createHandler = function(manifest) {
|
|
103
|
-
var routeMgr = new RouteMatchManager();
|
|
104
|
-
var pages = manifest.pages, routes = manifest.routes, manifestOpts = manifest.options;
|
|
105
|
-
var _ref = manifestOpts || {}, _ref_metaName = _ref.metaName, metaName = _ref_metaName === void 0 ? "modern-js" : _ref_metaName, _ref_forceCSR = _ref.forceCSR, forceCSR = _ref_forceCSR === void 0 ? false : _ref_forceCSR;
|
|
106
|
-
routeMgr.reset(routes);
|
|
107
|
-
return function() {
|
|
108
|
-
var _ref2 = _async_to_generator(function(options) {
|
|
109
|
-
var _page_serverHooks_afterMatch, _page_serverHooks, request, loadableStats, routeManifest, url, pageMatch, entryName, page, logger, metrics, reporter, route, hookContext, afterMatchHookContext, _page_serverHooks1, _page_serverHooks_afterRender, _page_serverHooks2, middlewarsHookContext, responseLike, params, baseUrl, serverRenderContext, body, afterRenderHookContext, e;
|
|
110
|
-
function createServerRequest(url2, baseUrl2, request2, params2) {
|
|
111
|
-
var pathname = url2.pathname, host = url2.host, searchParams = url2.searchParams;
|
|
112
|
-
var rawHeaders = request2.headers;
|
|
113
|
-
var headers = {};
|
|
114
|
-
rawHeaders.forEach(function(value, key) {
|
|
115
|
-
headers[key] = value;
|
|
116
|
-
});
|
|
117
|
-
var query = Object.fromEntries(searchParams);
|
|
118
|
-
return {
|
|
119
|
-
url: url2.href,
|
|
120
|
-
baseUrl: baseUrl2,
|
|
121
|
-
pathname,
|
|
122
|
-
host,
|
|
123
|
-
headers,
|
|
124
|
-
params: params2,
|
|
125
|
-
query
|
|
126
|
-
};
|
|
127
|
-
}
|
|
128
|
-
return _ts_generator(this, function(_state) {
|
|
129
|
-
switch (_state.label) {
|
|
130
|
-
case 0:
|
|
131
|
-
request = options.request, loadableStats = options.loadableStats, routeManifest = options.routeManifest;
|
|
132
|
-
url = new URL(request.url);
|
|
133
|
-
pageMatch = routeMgr.match(url.pathname);
|
|
134
|
-
if (!pageMatch) {
|
|
135
|
-
return [
|
|
136
|
-
2,
|
|
137
|
-
RESPONSE_NOTFOUND
|
|
138
|
-
];
|
|
139
|
-
}
|
|
140
|
-
entryName = pageMatch.spec.urlPath;
|
|
141
|
-
page = pages[entryName];
|
|
142
|
-
if (forceCSR && url.searchParams.get("csr") === "1") {
|
|
143
|
-
return [
|
|
144
|
-
2,
|
|
145
|
-
createResponse(page.template)
|
|
146
|
-
];
|
|
147
|
-
}
|
|
148
|
-
logger = createLogger();
|
|
149
|
-
metrics = defaultMetrics;
|
|
150
|
-
reporter = defaultReporter;
|
|
151
|
-
route = pageMatch.generate(url.pathname);
|
|
152
|
-
hookContext = createWorkerHookContext(request.url, logger, metrics, reporter);
|
|
153
|
-
afterMatchHookContext = createAfterMatchContext(hookContext, entryName);
|
|
154
|
-
return [
|
|
155
|
-
4,
|
|
156
|
-
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, function() {
|
|
157
|
-
return void 0;
|
|
158
|
-
})
|
|
159
|
-
];
|
|
160
|
-
case 1:
|
|
161
|
-
_state.sent();
|
|
162
|
-
if (checkIsSent(hookContext)) {
|
|
163
|
-
return [
|
|
164
|
-
2,
|
|
165
|
-
new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers)
|
|
166
|
-
];
|
|
167
|
-
}
|
|
168
|
-
if (!page.serverRender)
|
|
169
|
-
return [
|
|
170
|
-
3,
|
|
171
|
-
6
|
|
172
|
-
];
|
|
173
|
-
_state.label = 2;
|
|
174
|
-
case 2:
|
|
175
|
-
_state.trys.push([
|
|
176
|
-
2,
|
|
177
|
-
5,
|
|
178
|
-
,
|
|
179
|
-
6
|
|
180
|
-
]);
|
|
181
|
-
middlewarsHookContext = createMiddlewareContext(hookContext);
|
|
182
|
-
applyMiddlewares(middlewarsHookContext, (_page_serverHooks1 = page.serverHooks) === null || _page_serverHooks1 === void 0 ? void 0 : _page_serverHooks1.middleware);
|
|
183
|
-
if (checkIsSent(hookContext)) {
|
|
184
|
-
return [
|
|
185
|
-
2,
|
|
186
|
-
new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers)
|
|
187
|
-
];
|
|
188
|
-
}
|
|
189
|
-
if (forceCSR && middlewarsHookContext.request.headers[calcFallback(metaName)]) {
|
|
190
|
-
return [
|
|
191
|
-
2,
|
|
192
|
-
createResponse(page.template)
|
|
193
|
-
];
|
|
194
|
-
}
|
|
195
|
-
responseLike = {
|
|
196
|
-
headers: {},
|
|
197
|
-
statusCode: 200,
|
|
198
|
-
locals: {},
|
|
199
|
-
setHeader: function setHeader(key, value) {
|
|
200
|
-
this.headers[key] = value;
|
|
201
|
-
},
|
|
202
|
-
status: function status(code) {
|
|
203
|
-
this.statusCode = code;
|
|
204
|
-
}
|
|
205
|
-
};
|
|
206
|
-
params = pageMatch.parseURLParams(url.pathname) || {};
|
|
207
|
-
baseUrl = pageMatch.urlPath;
|
|
208
|
-
serverRenderContext = {
|
|
209
|
-
request: createServerRequest(url, baseUrl, request, params),
|
|
210
|
-
response: responseLike,
|
|
211
|
-
loadableStats,
|
|
212
|
-
routeManifest,
|
|
213
|
-
redirection: {},
|
|
214
|
-
template: page.template,
|
|
215
|
-
entryName: page.entryName,
|
|
216
|
-
logger,
|
|
217
|
-
reporter: defaultReporter,
|
|
218
|
-
metrics,
|
|
219
|
-
req: request,
|
|
220
|
-
res: responseLike,
|
|
221
|
-
serverTiming: {
|
|
222
|
-
addServeTiming: function addServeTiming() {
|
|
223
|
-
return this;
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
};
|
|
227
|
-
return [
|
|
228
|
-
4,
|
|
229
|
-
page.serverRender(serverRenderContext)
|
|
230
|
-
];
|
|
231
|
-
case 3:
|
|
232
|
-
body = _state.sent();
|
|
233
|
-
afterRenderHookContext = createAfterRenderContext(hookContext, route, body);
|
|
234
|
-
return [
|
|
235
|
-
4,
|
|
236
|
-
(_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, function() {
|
|
237
|
-
return void 0;
|
|
238
|
-
})
|
|
239
|
-
];
|
|
240
|
-
case 4:
|
|
241
|
-
_state.sent();
|
|
242
|
-
if (checkIsSent(hookContext)) {
|
|
243
|
-
return [
|
|
244
|
-
2,
|
|
245
|
-
new ReturnResponse(hookContext.res.body || "Unkown body", hookContext.res.status, hookContext.res.headers)
|
|
246
|
-
];
|
|
247
|
-
}
|
|
248
|
-
return [
|
|
249
|
-
2,
|
|
250
|
-
new ReturnResponse(afterRenderHookContext.template.get(), responseLike.statusCode, responseLike.headers)
|
|
251
|
-
];
|
|
252
|
-
case 5:
|
|
253
|
-
e = _state.sent();
|
|
254
|
-
console.warn("page(".concat(pageMatch.spec.urlPath, ") serverRender occur error: "));
|
|
255
|
-
console.warn(e);
|
|
256
|
-
return [
|
|
257
|
-
2,
|
|
258
|
-
createResponse(page.template)
|
|
259
|
-
];
|
|
260
|
-
case 6:
|
|
261
|
-
console.warn("Can't not page(".concat(entryName, ") serverRender"));
|
|
262
|
-
return [
|
|
263
|
-
2,
|
|
264
|
-
createResponse(page.template)
|
|
265
|
-
];
|
|
266
|
-
}
|
|
267
|
-
});
|
|
268
|
-
});
|
|
269
|
-
return function(options) {
|
|
270
|
-
return _ref2.apply(this, arguments);
|
|
271
|
-
};
|
|
272
|
-
}();
|
|
273
|
-
};
|
|
274
|
-
function createResponse(template) {
|
|
275
|
-
if (template) {
|
|
276
|
-
return new ReturnResponse(template, 200);
|
|
277
|
-
} else {
|
|
278
|
-
return RESPONSE_NOTFOUND;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
function createWorkerHookContext(url, logger, metrics, reporter) {
|
|
282
|
-
var _ref = [
|
|
283
|
-
{
|
|
284
|
-
headers: new Headers(),
|
|
285
|
-
body: "",
|
|
286
|
-
status: 200,
|
|
287
|
-
isSent: false
|
|
288
|
-
},
|
|
289
|
-
new Request(url)
|
|
290
|
-
], res = _ref[0], req = _ref[1];
|
|
291
|
-
return {
|
|
292
|
-
res,
|
|
293
|
-
req,
|
|
294
|
-
logger,
|
|
295
|
-
metrics,
|
|
296
|
-
reporter
|
|
297
|
-
};
|
|
298
|
-
}
|
|
299
|
-
var appliedMiddlewares = false;
|
|
300
|
-
function applyMiddlewares(ctx, middleware) {
|
|
301
|
-
return _applyMiddlewares.apply(this, arguments);
|
|
302
|
-
}
|
|
303
|
-
function _applyMiddlewares() {
|
|
304
|
-
_applyMiddlewares = _async_to_generator(function(ctx, middleware) {
|
|
305
|
-
var middlewares;
|
|
306
|
-
return _ts_generator(this, function(_state) {
|
|
307
|
-
switch (_state.label) {
|
|
308
|
-
case 0:
|
|
309
|
-
if (!middleware)
|
|
310
|
-
return [
|
|
311
|
-
3,
|
|
312
|
-
2
|
|
313
|
-
];
|
|
314
|
-
middlewares = function() {
|
|
315
|
-
if (Array.isArray(middleware)) {
|
|
316
|
-
return middleware;
|
|
317
|
-
} else {
|
|
318
|
-
return [
|
|
319
|
-
middleware
|
|
320
|
-
];
|
|
321
|
-
}
|
|
322
|
-
}();
|
|
323
|
-
if (!appliedMiddlewares) {
|
|
324
|
-
middlewares.forEach(function(middleware2) {
|
|
325
|
-
middlewarePipeline.use(middleware2);
|
|
326
|
-
});
|
|
327
|
-
appliedMiddlewares = true;
|
|
328
|
-
}
|
|
329
|
-
return [
|
|
330
|
-
4,
|
|
331
|
-
middlewarePipeline.run(ctx, {
|
|
332
|
-
onLast: function() {
|
|
333
|
-
return void 0;
|
|
334
|
-
}
|
|
335
|
-
})
|
|
336
|
-
];
|
|
337
|
-
case 1:
|
|
338
|
-
_state.sent();
|
|
339
|
-
_state.label = 2;
|
|
340
|
-
case 2:
|
|
341
|
-
return [
|
|
342
|
-
2
|
|
343
|
-
];
|
|
344
|
-
}
|
|
345
|
-
});
|
|
346
|
-
});
|
|
347
|
-
return _applyMiddlewares.apply(this, arguments);
|
|
348
|
-
}
|
|
349
|
-
export {
|
|
350
|
-
ReturnResponse,
|
|
351
|
-
createHandler
|
|
352
|
-
};
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
const 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
|
-
const 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
|
-
const ERROR_PAGE_TEXT = {
|
|
22
|
-
404: "This page could not be found.",
|
|
23
|
-
500: "Internal Server Error."
|
|
24
|
-
};
|
|
25
|
-
const 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
|
-
};
|