|
|
|
import { Module } from "@nestjs/common";
|
|
|
|
import { UsersModule } from "src/users/users.module";
|
|
|
|
import { PassportModule } from "@nestjs/passport";
|
|
|
|
import { ConfigModule, ConfigService } from "@nestjs/config";
|
|
|
|
import { AuthController } from "./auth.controller";
|
|
|
|
import { FtStrategy } from "./42.strategy";
|
|
|
|
import { SessionSerializer } from "./session.serializer";
|
|
|
|
import { JwtModule } from "@nestjs/jwt";
|
|
|
|
import { MailerModule } from "@nestjs-modules/mailer";
|
|
|
|
import { AuthService } from "./auth.service";
|
|
|
|
import { HandlebarsAdapter } from "@nestjs-modules/mailer/dist/adapters/handlebars.adapter";
|
|
|
|
|
|
|
|
const mailUser =
|
|
|
|
process.env.MAIL_USER !== null && process.env.MAIL_USER !== ""
|
|
|
|
? process.env.MAIL_USER
|
|
|
|
: "";
|
|
|
|
const mailPass =
|
|
|
|
process.env.MAIL_PASSWORD !== null && process.env.MAIL_PASSWORD !== ""
|
|
|
|
? process.env.MAIL_PASSWORD
|
|
|
|
: "";
|
|
|
|
|
|
|
|
@Module({
|
|
|
|
imports: [
|
|
|
|
UsersModule,
|
|
|
|
PassportModule,
|
|
|
|
ConfigModule.forRoot(),
|
|
|
|
JwtModule.register({
|
|
|
|
secret: process.env.JWT_SECRET,
|
|
|
|
signOptions: { expiresIn: "60s" },
|
|
|
|
}),
|
|
|
|
MailerModule.forRoot({
|
|
|
|
transport: {
|
|
|
|
service: "gmail",
|
|
|
|
auth: {
|
|
|
|
user: mailUser,
|
|
|
|
pass: mailPass,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
template: {
|
|
|
|
dir: "src/auth/mails",
|
|
|
|
adapter: new HandlebarsAdapter(),
|
|
|
|
options: {
|
|
|
|
strict: true,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
defaults: {
|
|
|
|
from: '"No Reply" vaganiwast@gmail.com',
|
|
|
|
},
|
|
|
|
}),
|
|
|
|
],
|
|
|
|
providers: [ConfigService, FtStrategy, SessionSerializer, AuthService],
|
|
|
|
controllers: [AuthController],
|
|
|
|
})
|
|
|
|
export class AuthModule {}
|