@modern-js/server-core 2.54.6 → 2.56.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/dist/cjs/adapters/node/plugins/resource.js +1 -1
- package/dist/cjs/constants.js +12 -9
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/plugins/customServer/index.js +5 -5
- package/dist/cjs/plugins/index.js +7 -3
- package/dist/cjs/plugins/log.js +3 -3
- package/dist/cjs/plugins/monitors.js +183 -0
- package/dist/cjs/plugins/render/dataHandler.js +3 -2
- package/dist/cjs/plugins/render/index.js +6 -4
- package/dist/cjs/plugins/render/render.js +32 -15
- package/dist/cjs/plugins/render/ssrCache.js +72 -83
- package/dist/cjs/plugins/render/ssrRender.js +40 -145
- package/dist/cjs/types/requestHandler.js +16 -0
- package/dist/cjs/utils/error.js +3 -3
- package/dist/cjs/utils/transformStream.js +1 -1
- package/dist/esm/adapters/node/plugins/resource.js +1 -1
- package/dist/esm/constants.js +10 -8
- package/dist/esm/index.js +1 -0
- package/dist/esm/plugins/customServer/index.js +8 -8
- package/dist/esm/plugins/index.js +4 -2
- package/dist/esm/plugins/log.js +4 -4
- package/dist/esm/plugins/monitors.js +261 -0
- package/dist/esm/plugins/render/dataHandler.js +4 -3
- package/dist/esm/plugins/render/index.js +6 -4
- package/dist/esm/plugins/render/render.js +51 -24
- package/dist/esm/plugins/render/ssrCache.js +101 -131
- package/dist/esm/plugins/render/ssrRender.js +55 -175
- package/dist/esm/types/requestHandler.js +0 -0
- package/dist/esm/utils/error.js +3 -3
- package/dist/esm/utils/transformStream.js +16 -2
- package/dist/esm-node/adapters/node/plugins/resource.js +1 -1
- package/dist/esm-node/constants.js +10 -8
- package/dist/esm-node/index.js +1 -0
- package/dist/esm-node/plugins/customServer/index.js +6 -6
- package/dist/esm-node/plugins/index.js +4 -2
- package/dist/esm-node/plugins/log.js +3 -3
- package/dist/esm-node/plugins/monitors.js +156 -0
- package/dist/esm-node/plugins/render/dataHandler.js +3 -2
- package/dist/esm-node/plugins/render/index.js +5 -3
- package/dist/esm-node/plugins/render/render.js +33 -16
- package/dist/esm-node/plugins/render/ssrCache.js +73 -74
- package/dist/esm-node/plugins/render/ssrRender.js +43 -137
- package/dist/esm-node/types/requestHandler.js +0 -0
- package/dist/esm-node/utils/error.js +3 -3
- package/dist/esm-node/utils/transformStream.js +1 -1
- package/dist/types/constants.d.ts +2 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/plugins/index.d.ts +1 -1
- package/dist/types/plugins/monitors.d.ts +6 -0
- package/dist/types/plugins/render/dataHandler.d.ts +1 -1
- package/dist/types/plugins/render/render.d.ts +3 -2
- package/dist/types/plugins/render/ssrCache.d.ts +7 -11
- package/dist/types/plugins/render/ssrRender.d.ts +10 -10
- package/dist/types/types/config/html.d.ts +11 -0
- package/dist/types/types/config/output.d.ts +8 -0
- package/dist/types/types/render.d.ts +7 -4
- package/dist/types/types/requestHandler.d.ts +41 -0
- package/dist/types/types/server.d.ts +13 -4
- package/dist/types/utils/error.d.ts +2 -2
- package/dist/types/utils/transformStream.d.ts +1 -1
- package/package.json +7 -8
- package/dist/cjs/plugins/monitor.js +0 -87
- package/dist/cjs/plugins/render/serverTiming.js +0 -40
- package/dist/esm/plugins/monitor.js +0 -120
- package/dist/esm/plugins/render/serverTiming.js +0 -21
- package/dist/esm-node/plugins/monitor.js +0 -62
- package/dist/esm-node/plugins/render/serverTiming.js +0 -16
- package/dist/types/plugins/monitor.d.ts +0 -9
- package/dist/types/plugins/render/serverTiming.d.ts +0 -7
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
|
+
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
|
|
3
|
+
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
4
|
+
import { time } from "@modern-js/runtime-utils/time";
|
|
5
|
+
import { SERVER_TIMING, ServerTimings } from "../constants";
|
|
6
|
+
function createMonitors() {
|
|
7
|
+
var coreMonitors = [];
|
|
8
|
+
var log = function(level, message, args) {
|
|
9
|
+
var event = {
|
|
10
|
+
type: "log",
|
|
11
|
+
payload: {
|
|
12
|
+
level,
|
|
13
|
+
message,
|
|
14
|
+
args
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
coreMonitors.forEach(function(monitor) {
|
|
18
|
+
return monitor(event);
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
var mointors = {
|
|
22
|
+
push: function push(monitor) {
|
|
23
|
+
coreMonitors.push(monitor);
|
|
24
|
+
},
|
|
25
|
+
error: function error(message) {
|
|
26
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
27
|
+
args[_key - 1] = arguments[_key];
|
|
28
|
+
}
|
|
29
|
+
log("error", message, 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
|
+
log("warn", message, args);
|
|
36
|
+
},
|
|
37
|
+
debug: function debug(message) {
|
|
38
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
39
|
+
args[_key - 1] = arguments[_key];
|
|
40
|
+
}
|
|
41
|
+
log("debug", message, args);
|
|
42
|
+
},
|
|
43
|
+
info: function info(message) {
|
|
44
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
45
|
+
args[_key - 1] = arguments[_key];
|
|
46
|
+
}
|
|
47
|
+
log("info", message, args);
|
|
48
|
+
},
|
|
49
|
+
timing: function timing(name, dur, desc) {
|
|
50
|
+
var event = {
|
|
51
|
+
type: "timing",
|
|
52
|
+
payload: {
|
|
53
|
+
name,
|
|
54
|
+
dur,
|
|
55
|
+
desc
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
coreMonitors.forEach(function(monitor) {
|
|
59
|
+
return monitor(event);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
return mointors;
|
|
64
|
+
}
|
|
65
|
+
var initMonitorsPlugin = function() {
|
|
66
|
+
return {
|
|
67
|
+
name: "@modern-js/init-mointor",
|
|
68
|
+
setup: function setup(api) {
|
|
69
|
+
return {
|
|
70
|
+
prepare: function prepare() {
|
|
71
|
+
var middlewares = api.useAppContext().middlewares;
|
|
72
|
+
middlewares.push({
|
|
73
|
+
name: "init-monitor",
|
|
74
|
+
handler: function() {
|
|
75
|
+
var _ref = _async_to_generator(function(c, next) {
|
|
76
|
+
var monitors;
|
|
77
|
+
return _ts_generator(this, function(_state) {
|
|
78
|
+
if (!c.get("monitors")) {
|
|
79
|
+
monitors = createMonitors();
|
|
80
|
+
c.set("monitors", monitors);
|
|
81
|
+
}
|
|
82
|
+
return [
|
|
83
|
+
2,
|
|
84
|
+
next()
|
|
85
|
+
];
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
return function(c, next) {
|
|
89
|
+
return _ref.apply(this, arguments);
|
|
90
|
+
};
|
|
91
|
+
}(),
|
|
92
|
+
order: "pre"
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
var injectloggerPluigin = function(logger) {
|
|
100
|
+
return {
|
|
101
|
+
name: "@modern-js/inject-logger",
|
|
102
|
+
setup: function setup(api) {
|
|
103
|
+
return {
|
|
104
|
+
prepare: function prepare() {
|
|
105
|
+
var middlewares = api.useAppContext().middlewares;
|
|
106
|
+
middlewares.push({
|
|
107
|
+
name: "inject-logger",
|
|
108
|
+
handler: function() {
|
|
109
|
+
var _ref = _async_to_generator(function(c, next) {
|
|
110
|
+
var pathname, loggerMonitor, monitors;
|
|
111
|
+
return _ts_generator(this, function(_state) {
|
|
112
|
+
if (!c.get("logger")) {
|
|
113
|
+
c.set("logger", logger);
|
|
114
|
+
}
|
|
115
|
+
pathname = c.req.path;
|
|
116
|
+
loggerMonitor = function(event) {
|
|
117
|
+
if (event.type === "log") {
|
|
118
|
+
var _logger;
|
|
119
|
+
var _event_payload = event.payload, level = _event_payload.level, message = _event_payload.message, args = _event_payload.args;
|
|
120
|
+
(_logger = logger)[level].apply(_logger, [
|
|
121
|
+
message
|
|
122
|
+
].concat(_to_consumable_array(args || [])));
|
|
123
|
+
}
|
|
124
|
+
if (event.type === "timing") {
|
|
125
|
+
var _event_payload1 = event.payload, name = _event_payload1.name, dur = _event_payload1.dur, desc = _event_payload1.desc;
|
|
126
|
+
if (desc) {
|
|
127
|
+
logger.debug("%s Debug - ".concat(name, ", cost: %s, req.url = %s "), desc, dur, pathname);
|
|
128
|
+
} else {
|
|
129
|
+
logger.debug("Debug - ".concat(name, ", cost: %s, req.url = %s"), dur, pathname);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
monitors = c.get("monitors");
|
|
134
|
+
monitors === null || monitors === void 0 ? void 0 : monitors.push(loggerMonitor);
|
|
135
|
+
return [
|
|
136
|
+
2,
|
|
137
|
+
next()
|
|
138
|
+
];
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
return function(c, next) {
|
|
142
|
+
return _ref.apply(this, arguments);
|
|
143
|
+
};
|
|
144
|
+
}()
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
var injectServerTiming = function() {
|
|
152
|
+
var metaName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "modern-js";
|
|
153
|
+
return {
|
|
154
|
+
name: "@modern-js/inject-server-timing",
|
|
155
|
+
setup: function setup(api) {
|
|
156
|
+
return {
|
|
157
|
+
prepare: function prepare() {
|
|
158
|
+
var middlewares = api.useAppContext().middlewares;
|
|
159
|
+
middlewares.push({
|
|
160
|
+
name: "inject-server-timing",
|
|
161
|
+
handler: function() {
|
|
162
|
+
var _ref = _async_to_generator(function(c, next) {
|
|
163
|
+
var serverTimings, timingMonitor, monitors;
|
|
164
|
+
return _ts_generator(this, function(_state) {
|
|
165
|
+
switch (_state.label) {
|
|
166
|
+
case 0:
|
|
167
|
+
serverTimings = [];
|
|
168
|
+
timingMonitor = function(event) {
|
|
169
|
+
if (event.type === "timing") {
|
|
170
|
+
serverTimings.push(event.payload);
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
monitors = c.get("monitors");
|
|
174
|
+
monitors === null || monitors === void 0 ? void 0 : monitors.push(timingMonitor);
|
|
175
|
+
return [
|
|
176
|
+
4,
|
|
177
|
+
next()
|
|
178
|
+
];
|
|
179
|
+
case 1:
|
|
180
|
+
_state.sent();
|
|
181
|
+
serverTimings.forEach(function(serverTiming) {
|
|
182
|
+
var name = serverTiming.name, desc = serverTiming.desc, dur = serverTiming.dur;
|
|
183
|
+
var _name = "bd-".concat(metaName, "-").concat(name);
|
|
184
|
+
var value = "".concat(_name, ";").concat(desc ? 'decs="'.concat(desc, '";') : "", " dur=").concat(dur);
|
|
185
|
+
c.header(SERVER_TIMING, value, {
|
|
186
|
+
append: true
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
return [
|
|
190
|
+
2
|
|
191
|
+
];
|
|
192
|
+
}
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
return function(c, next) {
|
|
196
|
+
return _ref.apply(this, arguments);
|
|
197
|
+
};
|
|
198
|
+
}()
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
};
|
|
204
|
+
};
|
|
205
|
+
function initReporter(entryName) {
|
|
206
|
+
return function() {
|
|
207
|
+
var _ref = _async_to_generator(function(c, next) {
|
|
208
|
+
var reporter, getCost, cost;
|
|
209
|
+
return _ts_generator(this, function(_state) {
|
|
210
|
+
switch (_state.label) {
|
|
211
|
+
case 0:
|
|
212
|
+
reporter = c.get("reporter");
|
|
213
|
+
if (!!reporter)
|
|
214
|
+
return [
|
|
215
|
+
3,
|
|
216
|
+
2
|
|
217
|
+
];
|
|
218
|
+
return [
|
|
219
|
+
4,
|
|
220
|
+
next()
|
|
221
|
+
];
|
|
222
|
+
case 1:
|
|
223
|
+
_state.sent();
|
|
224
|
+
return [
|
|
225
|
+
2
|
|
226
|
+
];
|
|
227
|
+
case 2:
|
|
228
|
+
return [
|
|
229
|
+
4,
|
|
230
|
+
reporter.init({
|
|
231
|
+
entryName
|
|
232
|
+
})
|
|
233
|
+
];
|
|
234
|
+
case 3:
|
|
235
|
+
_state.sent();
|
|
236
|
+
getCost = time();
|
|
237
|
+
return [
|
|
238
|
+
4,
|
|
239
|
+
next()
|
|
240
|
+
];
|
|
241
|
+
case 4:
|
|
242
|
+
_state.sent();
|
|
243
|
+
cost = getCost();
|
|
244
|
+
reporter.reportTiming(ServerTimings.SERVER_HANDLE_REQUEST, cost);
|
|
245
|
+
return [
|
|
246
|
+
2
|
|
247
|
+
];
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
});
|
|
251
|
+
return function(c, next) {
|
|
252
|
+
return _ref.apply(this, arguments);
|
|
253
|
+
};
|
|
254
|
+
}();
|
|
255
|
+
}
|
|
256
|
+
export {
|
|
257
|
+
initMonitorsPlugin,
|
|
258
|
+
initReporter,
|
|
259
|
+
injectServerTiming,
|
|
260
|
+
injectloggerPluigin
|
|
261
|
+
};
|
|
@@ -3,11 +3,11 @@ import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
|
3
3
|
import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
|
|
4
4
|
var dataHandler = function() {
|
|
5
5
|
var _ref = _async_to_generator(function(request, param) {
|
|
6
|
-
var routeInfo, serverRoutes, reporter,
|
|
6
|
+
var routeInfo, serverRoutes, reporter, onError, onTiming, serverManifest, _serverManifest_loaderBundles, serverLoaderModule, routes, handleRequest, response;
|
|
7
7
|
return _ts_generator(this, function(_state) {
|
|
8
8
|
switch (_state.label) {
|
|
9
9
|
case 0:
|
|
10
|
-
routeInfo = param.routeInfo, serverRoutes = param.serverRoutes, reporter = param.reporter,
|
|
10
|
+
routeInfo = param.routeInfo, serverRoutes = param.serverRoutes, reporter = param.reporter, onError = param.onError, onTiming = param.onTiming, serverManifest = param.serverManifest;
|
|
11
11
|
serverLoaderModule = serverManifest === null || serverManifest === void 0 ? void 0 : (_serverManifest_loaderBundles = serverManifest.loaderBundles) === null || _serverManifest_loaderBundles === void 0 ? void 0 : _serverManifest_loaderBundles[routeInfo.entryName || MAIN_ENTRY_NAME];
|
|
12
12
|
if (!serverLoaderModule) {
|
|
13
13
|
return [
|
|
@@ -21,9 +21,10 @@ var dataHandler = function() {
|
|
|
21
21
|
request,
|
|
22
22
|
serverRoutes,
|
|
23
23
|
context: {
|
|
24
|
-
logger,
|
|
25
24
|
reporter
|
|
26
25
|
},
|
|
26
|
+
onTiming,
|
|
27
|
+
onError,
|
|
27
28
|
routes
|
|
28
29
|
})
|
|
29
30
|
];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
2
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
3
3
|
import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
|
|
4
|
-
import { initReporter } from "../
|
|
4
|
+
import { initReporter } from "../monitors";
|
|
5
5
|
import { sortRoutes } from "../../utils";
|
|
6
6
|
import { getLoaderCtx, CustomServer, getServerMidFromUnstableMid } from "../customServer";
|
|
7
7
|
import { createRender } from "./render";
|
|
@@ -150,12 +150,13 @@ function getPageRoutes(routes) {
|
|
|
150
150
|
function createRenderHandler(render) {
|
|
151
151
|
return function() {
|
|
152
152
|
var _ref = _async_to_generator(function(c, _) {
|
|
153
|
-
var _c_env_node, logger, reporter, templates, serverManifest, locals, metrics, loaderContext, request, nodeReq, res, body, status, headers, headersData;
|
|
153
|
+
var _c_env_node, logger, reporter, monitors, templates, serverManifest, locals, metrics, loaderContext, request, nodeReq, res, body, status, headers, headersData;
|
|
154
154
|
return _ts_generator(this, function(_state) {
|
|
155
155
|
switch (_state.label) {
|
|
156
156
|
case 0:
|
|
157
157
|
logger = c.get("logger");
|
|
158
158
|
reporter = c.get("reporter");
|
|
159
|
+
monitors = c.get("monitors");
|
|
159
160
|
templates = c.get("templates") || {};
|
|
160
161
|
serverManifest = c.get("serverManifest") || {};
|
|
161
162
|
locals = c.get("locals");
|
|
@@ -166,8 +167,9 @@ function createRenderHandler(render) {
|
|
|
166
167
|
return [
|
|
167
168
|
4,
|
|
168
169
|
render(request, {
|
|
169
|
-
logger,
|
|
170
170
|
nodeReq,
|
|
171
|
+
monitors,
|
|
172
|
+
logger,
|
|
171
173
|
reporter,
|
|
172
174
|
templates,
|
|
173
175
|
metrics,
|
|
@@ -208,7 +210,7 @@ function _getRenderHandler() {
|
|
|
208
210
|
render = createRender({
|
|
209
211
|
routes,
|
|
210
212
|
pwd,
|
|
211
|
-
|
|
213
|
+
config,
|
|
212
214
|
staticGenerate,
|
|
213
215
|
cacheConfig,
|
|
214
216
|
forceCSR,
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
2
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
3
|
+
import { _ as _instanceof } from "@swc/helpers/_/_instanceof";
|
|
4
|
+
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
5
|
+
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
|
|
3
6
|
import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
|
|
4
7
|
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
|
|
5
8
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
|
6
9
|
import { cutNameByHyphen } from "@modern-js/utils/universal";
|
|
7
10
|
import { TrieRouter } from "hono/router/trie-router";
|
|
8
|
-
import { parseQuery, getPathname, createErrorHtml, sortRoutes, transformResponse, onError as onErrorFn, ErrorDigest } from "../../utils";
|
|
11
|
+
import { parseQuery, getPathname, createErrorHtml, sortRoutes, transformResponse, onError as onErrorFn, ErrorDigest, parseHeaders } from "../../utils";
|
|
9
12
|
import { REPLACE_REG, X_MODERNJS_RENDER } from "../../constants";
|
|
10
13
|
import { dataHandler } from "./dataHandler";
|
|
11
14
|
import { ssrRender } from "./ssrRender";
|
|
@@ -52,24 +55,31 @@ function matchRoute(router, request) {
|
|
|
52
55
|
var result = matched[0][0];
|
|
53
56
|
return result || [];
|
|
54
57
|
}
|
|
58
|
+
function getHeadersWithoutCookie(headers) {
|
|
59
|
+
var _headers = _object_spread_props(_object_spread({}, headers), {
|
|
60
|
+
cookie: void 0
|
|
61
|
+
});
|
|
62
|
+
delete _headers.cookie;
|
|
63
|
+
return _headers;
|
|
64
|
+
}
|
|
55
65
|
function createRender(_) {
|
|
56
66
|
return _createRender.apply(this, arguments);
|
|
57
67
|
}
|
|
58
68
|
function _createRender() {
|
|
59
69
|
_createRender = _async_to_generator(function(param) {
|
|
60
|
-
var routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR,
|
|
70
|
+
var routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR, config, onFallbackFn, router;
|
|
61
71
|
return _ts_generator(this, function(_state) {
|
|
62
|
-
routes = param.routes, pwd = param.pwd, metaName = param.metaName, staticGenerate = param.staticGenerate, cacheConfig = param.cacheConfig, forceCSR = param.forceCSR,
|
|
72
|
+
routes = param.routes, pwd = param.pwd, metaName = param.metaName, staticGenerate = param.staticGenerate, cacheConfig = param.cacheConfig, forceCSR = param.forceCSR, config = param.config, onFallbackFn = param.onFallback;
|
|
63
73
|
router = getRouter(routes);
|
|
64
74
|
return [
|
|
65
75
|
2,
|
|
66
76
|
function() {
|
|
67
77
|
var _ref = _async_to_generator(function(req, param2) {
|
|
68
|
-
var logger,
|
|
78
|
+
var logger, reporter, metrics, monitors, nodeReq, templates, serverManifest, locals, loaderContext, _matchRoute, routeInfo, params, onFallback, html, renderMode, pathname, headerData, onError, onTiming, onBoundError, renderOptions, response, _tmp;
|
|
69
79
|
return _ts_generator(this, function(_state2) {
|
|
70
80
|
switch (_state2.label) {
|
|
71
81
|
case 0:
|
|
72
|
-
logger = param2.logger,
|
|
82
|
+
logger = param2.logger, reporter = param2.reporter, metrics = param2.metrics, monitors = param2.monitors, nodeReq = param2.nodeReq, templates = param2.templates, serverManifest = param2.serverManifest, locals = param2.locals, loaderContext = param2.loaderContext;
|
|
73
83
|
_matchRoute = _sliced_to_array(matchRoute(router, req), 2), routeInfo = _matchRoute[0], params = _matchRoute[1];
|
|
74
84
|
onFallback = function() {
|
|
75
85
|
var _ref2 = _async_to_generator(function(reason, error) {
|
|
@@ -117,12 +127,20 @@ function _createRender() {
|
|
|
117
127
|
];
|
|
118
128
|
case 1:
|
|
119
129
|
renderMode = _state2.sent();
|
|
120
|
-
|
|
130
|
+
pathname = getPathname(req);
|
|
131
|
+
headerData = parseHeaders(req);
|
|
132
|
+
onError = function(e) {
|
|
133
|
+
monitors === null || monitors === void 0 ? void 0 : monitors.error("SSR Error - ".concat(_instanceof(e, Error) ? e.name : e, ", error = %s, req.url = %s, req.headers = %o"), _instanceof(e, Error) ? e.stack || e.message : e, pathname, getHeadersWithoutCookie(headerData));
|
|
134
|
+
};
|
|
135
|
+
onTiming = function(name, dur) {
|
|
136
|
+
monitors === null || monitors === void 0 ? void 0 : monitors.timing(name, dur, "SSR");
|
|
137
|
+
};
|
|
138
|
+
onBoundError = function() {
|
|
121
139
|
var _ref2 = _async_to_generator(function(e) {
|
|
122
140
|
return _ts_generator(this, function(_state3) {
|
|
123
141
|
switch (_state3.label) {
|
|
124
142
|
case 0:
|
|
125
|
-
onErrorFn(ErrorDigest.ERENDER, e,
|
|
143
|
+
onErrorFn(ErrorDigest.ERENDER, e, monitors, req);
|
|
126
144
|
return [
|
|
127
145
|
4,
|
|
128
146
|
onFallback === null || onFallback === void 0 ? void 0 : onFallback("error", e)
|
|
@@ -135,7 +153,7 @@ function _createRender() {
|
|
|
135
153
|
}
|
|
136
154
|
});
|
|
137
155
|
});
|
|
138
|
-
return function
|
|
156
|
+
return function onBoundError2(e) {
|
|
139
157
|
return _ref2.apply(this, arguments);
|
|
140
158
|
};
|
|
141
159
|
}();
|
|
@@ -144,18 +162,19 @@ function _createRender() {
|
|
|
144
162
|
html,
|
|
145
163
|
routeInfo,
|
|
146
164
|
staticGenerate: staticGenerate || false,
|
|
147
|
-
|
|
148
|
-
nonce,
|
|
149
|
-
logger,
|
|
165
|
+
config,
|
|
150
166
|
nodeReq,
|
|
151
167
|
cacheConfig,
|
|
152
168
|
reporter,
|
|
153
169
|
serverRoutes: routes,
|
|
154
170
|
params,
|
|
171
|
+
logger,
|
|
172
|
+
metrics,
|
|
155
173
|
locals,
|
|
156
174
|
serverManifest,
|
|
157
|
-
|
|
158
|
-
|
|
175
|
+
loaderContext: loaderContext || /* @__PURE__ */ new Map(),
|
|
176
|
+
onError,
|
|
177
|
+
onTiming
|
|
159
178
|
};
|
|
160
179
|
switch (renderMode) {
|
|
161
180
|
case "data":
|
|
@@ -176,7 +195,7 @@ function _createRender() {
|
|
|
176
195
|
}
|
|
177
196
|
return [
|
|
178
197
|
3,
|
|
179
|
-
|
|
198
|
+
8
|
|
180
199
|
];
|
|
181
200
|
case 2:
|
|
182
201
|
return [
|
|
@@ -184,34 +203,42 @@ function _createRender() {
|
|
|
184
203
|
dataHandler(req, renderOptions)
|
|
185
204
|
];
|
|
186
205
|
case 3:
|
|
187
|
-
|
|
188
|
-
if (
|
|
206
|
+
_tmp = _state2.sent();
|
|
207
|
+
if (_tmp)
|
|
189
208
|
return [
|
|
190
209
|
3,
|
|
191
210
|
5
|
|
192
211
|
];
|
|
193
212
|
return [
|
|
194
213
|
4,
|
|
195
|
-
renderHandler(req, renderOptions, "ssr",
|
|
214
|
+
renderHandler(req, renderOptions, "ssr", onBoundError)
|
|
196
215
|
];
|
|
197
216
|
case 4:
|
|
198
|
-
|
|
217
|
+
_tmp = _state2.sent();
|
|
199
218
|
_state2.label = 5;
|
|
200
219
|
case 5:
|
|
220
|
+
response = _tmp;
|
|
201
221
|
return [
|
|
202
|
-
|
|
203
|
-
|
|
222
|
+
3,
|
|
223
|
+
9
|
|
204
224
|
];
|
|
205
225
|
case 6:
|
|
206
226
|
return [
|
|
207
|
-
|
|
208
|
-
renderHandler(req, renderOptions, renderMode,
|
|
227
|
+
4,
|
|
228
|
+
renderHandler(req, renderOptions, renderMode, onBoundError)
|
|
209
229
|
];
|
|
210
230
|
case 7:
|
|
211
|
-
|
|
231
|
+
response = _state2.sent();
|
|
232
|
+
return [
|
|
233
|
+
3,
|
|
234
|
+
9
|
|
235
|
+
];
|
|
212
236
|
case 8:
|
|
237
|
+
throw new Error("Unknown render mode: ".concat(renderMode));
|
|
238
|
+
case 9:
|
|
213
239
|
return [
|
|
214
|
-
2
|
|
240
|
+
2,
|
|
241
|
+
response
|
|
215
242
|
];
|
|
216
243
|
}
|
|
217
244
|
});
|