ÿØÿà JFIF H H ÿÛ C GIF89;
| System: Linux srv913213 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64 Current Path : /var/www/talentgenesis_admin_backend/src/shared/mailer/ |
| Current File : /var/www/talentgenesis_admin_backend/src/shared/mailer/mailer.module.ts |
import { Module } from '@nestjs/common';
import { ConfigModule, ConfigService } from '@nestjs/config';
import { MailerModule as NestMailerModule } from '@nestjs-modules/mailer';
import { HandlebarsAdapter } from '@nestjs-modules/mailer/dist/adapters/handlebars.adapter';
import { MailerService } from './mailer.service';
import { HelpMailerService } from './helpmailer.service';
import { join } from 'path';
import * as Handlebars from 'handlebars';
// ✅ Register helpers globally for express-handlebars
Handlebars.registerHelper('eq', (a, b) => a === b);
@Module({
imports: [
ConfigModule.forRoot({ isGlobal: true }),
NestMailerModule.forRootAsync({
imports: [ConfigModule],
inject: [ConfigService],
useFactory: async (config: ConfigService) => ({
transport: {
host: config.get<string>('EMAIL_HOST'),
port: Number(config.get<string>('EMAIL_PORT')),
auth: {
user: config.get<string>('EMAIL_AUTH_USER'),
pass: config.get<string>('EMAIL_AUTH_PASSWORD'),
},
},
defaults: {
from: `"TGSS" <${config.get<string>('EMAIL_AUTH_USER')}>`,
},
template: {
dir: join(__dirname, '../templates'),
adapter: new HandlebarsAdapter(), // no helpers here
options: { strict: true },
},
}),
}),
],
providers: [MailerService, HelpMailerService],
exports: [MailerService, HelpMailerService],
})
export class MailerModule {}