feat(server): allow customize mailer server (#5835)

This commit is contained in:
liuyi
2024-02-19 14:37:08 +00:00
parent 3881164854
commit df157819dc
17 changed files with 110 additions and 134 deletions

View File

@@ -97,22 +97,7 @@ export const NextAuthOptionsProvider: FactoryProvider<NextAuthOptions> = {
return result;
};
const nextAuthOptions: NextAuthOptions = {
providers: [
// @ts-expect-error esm interop issue
Email.default({
server: {
host: config.auth.email.server,
port: config.auth.email.port,
auth: {
user: config.auth.email.login,
pass: config.auth.email.password,
},
},
from: config.auth.email.sender,
sendVerificationRequest: (params: SendVerificationRequestParams) =>
sendVerificationRequest(config, logger, mailer, session, params),
}),
],
providers: [],
adapter: prismaAdapter,
debug: !config.node.prod,
session: {
@@ -138,6 +123,18 @@ export const NextAuthOptionsProvider: FactoryProvider<NextAuthOptions> = {
},
};
if (config.mailer && mailer) {
nextAuthOptions.providers.push(
// @ts-expect-error esm interop issue
Email.default({
server: config.mailer,
from: config.mailer.from,
sendVerificationRequest: (params: SendVerificationRequestParams) =>
sendVerificationRequest(config, logger, mailer, session, params),
})
);
}
nextAuthOptions.providers.push(
// @ts-expect-error esm interop issue
Credentials.default({