feat: Simple nodemailer integration
This commit is contained in:
@@ -6,6 +6,7 @@ import { AuthGuard } from './guards/auth.guard';
|
||||
import { UserModule } from 'src/user/user.module';
|
||||
import { JwtModule } from '@nestjs/jwt';
|
||||
import { RequestContextModule } from 'core/als/request-context.module';
|
||||
import { MailModule } from 'core/mail/mail.module';
|
||||
|
||||
@Global()
|
||||
@Module({
|
||||
@@ -17,6 +18,11 @@ import { RequestContextModule } from 'core/als/request-context.module';
|
||||
},
|
||||
],
|
||||
controllers: [AuthController],
|
||||
imports: [UserModule, JwtModule, RequestContextModule],
|
||||
imports: [
|
||||
UserModule,
|
||||
JwtModule,
|
||||
RequestContextModule,
|
||||
MailModule
|
||||
],
|
||||
})
|
||||
export class AuthModule {}
|
||||
export class AuthModule { }
|
||||
|
||||
@@ -5,6 +5,8 @@ import * as bcrypt from 'bcrypt';
|
||||
import { UserService } from 'src/user/user.service';
|
||||
import { TokenInputType } from './types';
|
||||
import { JwtService } from '@nestjs/jwt';
|
||||
import { MailService } from 'core/mail/mail.service';
|
||||
import EmailTemplates from 'common/emails';
|
||||
|
||||
@Injectable()
|
||||
@Public()
|
||||
@@ -12,7 +14,8 @@ export class AuthService {
|
||||
constructor(
|
||||
private readonly userService: UserService,
|
||||
private readonly jwtService: JwtService,
|
||||
) {}
|
||||
private readonly mailService: MailService,
|
||||
) { }
|
||||
|
||||
async register(dto: RegisterUserRequestDTO) {
|
||||
const hashedPassword = await bcrypt.hash(dto.password, 10);
|
||||
@@ -21,6 +24,11 @@ export class AuthService {
|
||||
password: hashedPassword,
|
||||
});
|
||||
|
||||
this.mailService.sendMail({
|
||||
to: dto.email,
|
||||
subject: "Welcome onboard",
|
||||
body: EmailTemplates.welcomeToApp
|
||||
})
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -50,9 +58,9 @@ export class AuthService {
|
||||
};
|
||||
}
|
||||
|
||||
logout() {}
|
||||
logout() { }
|
||||
|
||||
resetPassword() {}
|
||||
resetPassword() { }
|
||||
|
||||
// TODO: Use nest jwt
|
||||
private async genSignedTokens(token: TokenInputType) {
|
||||
|
||||
Reference in New Issue
Block a user