@vercel/node 5.3.26 → 5.4.1
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/dev-server.mjs +22 -7
- package/dist/index.js +55049 -13435
- package/package.json +3 -3
package/dist/dev-server.mjs
CHANGED
|
@@ -1118,20 +1118,23 @@ async function createServerlessServer(userCode) {
|
|
|
1118
1118
|
async function compileUserCode2(entrypointPath, awaiter, options) {
|
|
1119
1119
|
const id = isAbsolute(entrypointPath) ? pathToFileURL(entrypointPath).href : entrypointPath;
|
|
1120
1120
|
let server = null;
|
|
1121
|
+
let serverFound = () => {
|
|
1122
|
+
};
|
|
1121
1123
|
const originalListen = http.Server.prototype.listen;
|
|
1122
1124
|
http.Server.prototype.listen = function() {
|
|
1123
1125
|
server = this;
|
|
1124
1126
|
http.Server.prototype.listen = originalListen;
|
|
1127
|
+
serverFound();
|
|
1125
1128
|
return this;
|
|
1126
1129
|
};
|
|
1127
1130
|
let listener = await import(id);
|
|
1128
|
-
http.Server.prototype.listen = originalListen;
|
|
1129
1131
|
for (let i = 0; i < 5; i++) {
|
|
1130
1132
|
if (listener.default)
|
|
1131
1133
|
listener = listener.default;
|
|
1132
1134
|
}
|
|
1133
1135
|
const shouldUseWebHandlers = options.isMiddleware || HTTP_METHODS.some((method) => typeof listener[method] === "function") || typeof listener.fetch === "function";
|
|
1134
1136
|
if (shouldUseWebHandlers) {
|
|
1137
|
+
http.Server.prototype.listen = originalListen;
|
|
1135
1138
|
const { createWebExportsHandler: createWebExportsHandler2 } = await Promise.resolve().then(() => (init_helpers_web(), helpers_web_exports));
|
|
1136
1139
|
const getWebExportsHandler = createWebExportsHandler2(awaiter);
|
|
1137
1140
|
let handler = listener;
|
|
@@ -1155,15 +1158,27 @@ async function compileUserCode2(entrypointPath, awaiter, options) {
|
|
|
1155
1158
|
}
|
|
1156
1159
|
return getWebExportsHandler(handler, HTTP_METHODS);
|
|
1157
1160
|
}
|
|
1161
|
+
if (typeof listener === "function") {
|
|
1162
|
+
http.Server.prototype.listen = originalListen;
|
|
1163
|
+
return async (req, res) => {
|
|
1164
|
+
if (options.shouldAddHelpers && typeof listener.listen !== "function") {
|
|
1165
|
+
await addHelpers(req, res);
|
|
1166
|
+
}
|
|
1167
|
+
return listener(req, res);
|
|
1168
|
+
};
|
|
1169
|
+
}
|
|
1170
|
+
if (!server) {
|
|
1171
|
+
await new Promise((resolve) => {
|
|
1172
|
+
serverFound = resolve;
|
|
1173
|
+
const maxTimeToWaitForServer = 1e3;
|
|
1174
|
+
setTimeout(resolve, maxTimeToWaitForServer);
|
|
1175
|
+
});
|
|
1176
|
+
}
|
|
1177
|
+
http.Server.prototype.listen = originalListen;
|
|
1158
1178
|
if (server) {
|
|
1159
1179
|
return server;
|
|
1160
1180
|
}
|
|
1161
|
-
|
|
1162
|
-
if (options.shouldAddHelpers && typeof listener.listen !== "function") {
|
|
1163
|
-
await addHelpers(req, res);
|
|
1164
|
-
}
|
|
1165
|
-
return listener(req, res);
|
|
1166
|
-
};
|
|
1181
|
+
throw new Error("Can't detect way to handle request");
|
|
1167
1182
|
}
|
|
1168
1183
|
async function createServerlessEventHandler(entrypointPath, options, maxDuration = WAIT_UNTIL_TIMEOUT) {
|
|
1169
1184
|
const awaiter = new Awaiter();
|