import { Module } from "@nestjs/common"; import { ConfigService } from "@nestjs/config"; import { MailerModule } from "@nestjs-modules/mailer"; import { MailService } from "./mail.service"; @Module({ imports: [ MailerModule.forRootAsync({ useFactory: async (config: ConfigService) => ({ transport: { host: config.get("MAIL_HOST"), port: Number(config.get("MAIL_PORT")), secure: config.get("MAIL_SECURE") === "true", auth: { user: config.get("MAIL_USER"), pass: config.get("MAIL_PASS"), }, }, defaults: { from: `"No Reply" <${config.get("MAIL_FROM")}>`, }, }), inject: [ConfigService], }), ], providers: [MailService], exports: [MailService], }) export class MailModule {}