32 lines
996 B
TypeScript
Executable File
32 lines
996 B
TypeScript
Executable File
import { ConfigService } from "@nestjs/config";
|
|
import { HandlebarsAdapter } from "@nestjs-modules/mailer/dist/adapters/handlebars.adapter";
|
|
import { MailerAsyncOptions } from "@nestjs-modules/mailer/dist/interfaces/mailer-async-options.interface";
|
|
|
|
export function mailerConfig(): MailerAsyncOptions {
|
|
return {
|
|
inject: [ConfigService],
|
|
useFactory: (configService: ConfigService) => ({
|
|
transport: {
|
|
host: configService.getOrThrow<string>("SMTP_HOST"),
|
|
port: configService.getOrThrow<number>("SMTP_PORT"),
|
|
secure: false,
|
|
auth: {
|
|
user: configService.getOrThrow<string>("SMTP_USER"),
|
|
pass: configService.getOrThrow<string>("SMTP_PASS"),
|
|
},
|
|
},
|
|
defaults: {
|
|
from: configService.getOrThrow<string>("MAIL_FROM"),
|
|
},
|
|
|
|
template: {
|
|
dir: process.cwd() + "/src/templates",
|
|
adapter: new HandlebarsAdapter(),
|
|
options: {
|
|
strict: true,
|
|
},
|
|
},
|
|
}),
|
|
};
|
|
}
|