40 lines
971 B
TypeScript
40 lines
971 B
TypeScript
import type SendmailTransport from "nodemailer/lib/sendmail-transport";
|
|
import type SMTPConnection from "nodemailer/lib/smtp-connection";
|
|
|
|
import { isENVDev } from "@calcom/lib/env";
|
|
|
|
function detectTransport(): SendmailTransport.Options | SMTPConnection.Options | string {
|
|
if (process.env.EMAIL_SERVER) {
|
|
return process.env.EMAIL_SERVER;
|
|
}
|
|
|
|
if (process.env.EMAIL_SERVER_HOST) {
|
|
const port = parseInt(process.env.EMAIL_SERVER_PORT!);
|
|
const transport = {
|
|
host: process.env.EMAIL_SERVER_HOST,
|
|
port,
|
|
auth: {
|
|
user: process.env.EMAIL_SERVER_USER,
|
|
pass: process.env.EMAIL_SERVER_PASSWORD,
|
|
},
|
|
secure: port === 465,
|
|
tls: {
|
|
rejectUnauthorized: isENVDev ? false : true,
|
|
},
|
|
};
|
|
|
|
return transport;
|
|
}
|
|
|
|
return {
|
|
sendmail: true,
|
|
newline: "unix",
|
|
path: "/usr/sbin/sendmail",
|
|
};
|
|
}
|
|
|
|
export const serverConfig = {
|
|
transport: detectTransport(),
|
|
from: process.env.EMAIL_FROM,
|
|
};
|