import * as path from 'path' import { Global, Module } from '@nestjs/common' import { MailService } from './mail.service' import { MailerModule } from '@nestjs-modules/mailer' import { OpenaiModule } from '../OpenAI/openai.module' import { PugAdapter } from '@nestjs-modules/mailer/dist/adapters/pug.adapter' @Global() @Module({ imports: [ MailerModule.forRootAsync({ useFactory: () => ({ transport: { host: process.env.MAILU_HOST, port: parseInt(process.env.MAILU_PORT || '587'), secure: false, pool: true, authMethod: 'login', path: '/', auth: { user: process.env.MAILU_USER, pass: process.env.MAILU_PASSWORD, }, verify: true, }, defaults: { from: process.env.MAILU_FROM, }, template: { dir: path.join(__dirname, 'templates'), adapter: new PugAdapter({ inlineCssEnabled: true, }), options: { strict: true, }, }, }), }), OpenaiModule, ], providers: [MailService], exports: [MailService], }) export class MailModule {}