Skip to content

Commit 6bfdff0

Browse files
committed
fix: support default and reqHandler exports in Angular
Updated the export structure to ensure both `default` and `reqHandler` exports function when using Angular.
1 parent 61cb79a commit 6bfdff0

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

src/frameworks/angular/index.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -243,19 +243,24 @@ exports.handle = function(req,res) {
243243
};\n`;
244244
} else if (serverOutputPath) {
245245
bootstrapScript = `
246-
const app = new Promise((resolve) => {
246+
const app = new Promise((resolve, reject) => {
247247
setTimeout(() => {
248248
const port = process.env.PORT;
249249
const socket = 'express.sock';
250250
process.env.PORT = socket;
251-
251+
252252
${
253253
serverEntry?.endsWith(".mjs")
254254
? `import(\`./${serverOutputPath}/${serverEntry}\`)`
255255
: `Promise.resolve(require('./${serverOutputPath}/${serverEntry}'))`
256-
}.then(({ app }) => {
257-
process.env.PORT = port;
258-
resolve(app());
256+
}.then(({ default: defHandler, reqHandler, app }) => {
257+
const handler = app?.() ?? reqHandler ?? defHandler;
258+
if (!handler) {
259+
reject(\`The file at "./${serverOutputPath}/${serverEntry}" did not export a valid request handler. Expected exports: 'app', 'default', or 'reqHandler'.\`);
260+
} else {
261+
process.env.PORT = port;
262+
resolve(handler);
263+
}
259264
});
260265
}, 0);
261266
});

0 commit comments

Comments
 (0)