From fc245314a6ca946fad98e4c39c4f206fc711b03a Mon Sep 17 00:00:00 2001 From: Igor Propisnov Date: Thu, 19 Sep 2024 14:28:01 +0200 Subject: [PATCH] renaming --- backend/.env.template | 1 - .../auth-module/services/auth.service.ts | 11 +++----- .../sendgrid-module/sendgrid.module.ts | 6 ++--- ...n.mail.service.ts => auth.mail.service.ts} | 27 +------------------ 4 files changed, 8 insertions(+), 37 deletions(-) rename backend/src/modules/sendgrid-module/services/{password-confirmation.mail.service.ts => auth.mail.service.ts} (70%) diff --git a/backend/.env.template b/backend/.env.template index 3437548..d2eff74 100644 --- a/backend/.env.template +++ b/backend/.env.template @@ -27,7 +27,6 @@ SESSION_LIMIT = 1 SEND_GRID_API_KEY = API_KEY # SENDGRID -SENDGRID_TEMPLATE_PASSWORD_CONFIRMATION_EMAIL = TEMPLATE_ID SENDGRID_TEMPLATE_REGISTER_EMAIL = TEMPLATE_ID diff --git a/backend/src/modules/auth-module/services/auth.service.ts b/backend/src/modules/auth-module/services/auth.service.ts index 45f7400..a3ecdd3 100644 --- a/backend/src/modules/auth-module/services/auth.service.ts +++ b/backend/src/modules/auth-module/services/auth.service.ts @@ -4,6 +4,7 @@ import { UnauthorizedException, } from '@nestjs/common'; import { UserCredentials } from 'src/entities'; +import { AuthEmailService } from 'src/modules/sendgrid-module/services/auth.mail.service'; import { SessionService } from 'src/modules/session/services/session.service'; import { EncryptionService, SuccessDto } from 'src/shared'; import { @@ -12,7 +13,6 @@ import { InternalServerErrorException, } from 'src/shared/exceptions'; -import { PasswordConfirmationMailService } from '../../sendgrid-module/services/password-confirmation.mail.service'; import { UserDataRepository } from '../../user-module/repositories/user-data.repository'; import { EmailVerificationService } from '../../verify-module/services/email-verification.service'; import { @@ -27,7 +27,7 @@ export class AuthService { public constructor( private readonly userCredentialsRepository: UserCredentialsRepository, private readonly userDataRepository: UserDataRepository, - private readonly passwordConfirmationMailService: PasswordConfirmationMailService, + private readonly authEmailService: AuthEmailService, private readonly emailVerificationService: EmailVerificationService, private readonly sessionService: SessionService ) {} @@ -50,10 +50,7 @@ export class AuthService { ); // TODO: Add OTP or 2FA here as an additional security measure - await this.passwordConfirmationMailService.sendLoginLinkEmail( - magiclink.email, - token - ); + await this.authEmailService.sendLoginLinkEmail(magiclink.email, token); } else { const token = await this.emailVerificationService.generateEmailVerificationTokenForMagicLink( @@ -61,7 +58,7 @@ export class AuthService { userAgent ); - await this.passwordConfirmationMailService.sendRegistrationLinkEmail( + await this.authEmailService.sendRegistrationLinkEmail( magiclink.email, token ); diff --git a/backend/src/modules/sendgrid-module/sendgrid.module.ts b/backend/src/modules/sendgrid-module/sendgrid.module.ts index feadf31..7a4ac21 100644 --- a/backend/src/modules/sendgrid-module/sendgrid.module.ts +++ b/backend/src/modules/sendgrid-module/sendgrid.module.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common'; import { ConfigModule, ConfigService } from '@nestjs/config'; -import { PasswordConfirmationMailService } from './services/password-confirmation.mail.service'; +import { AuthEmailService } from './services/auth.mail.service'; import { TemplateConfigService } from './services/template-config.service'; @Module({ @@ -13,10 +13,10 @@ import { TemplateConfigService } from './services/template-config.service'; configService.get('SEND_GRID_API_KEY'), inject: [ConfigService], }, - PasswordConfirmationMailService, + AuthEmailService, TemplateConfigService, ], controllers: [], - exports: [PasswordConfirmationMailService], + exports: [AuthEmailService], }) export class SendgridModule {} diff --git a/backend/src/modules/sendgrid-module/services/password-confirmation.mail.service.ts b/backend/src/modules/sendgrid-module/services/auth.mail.service.ts similarity index 70% rename from backend/src/modules/sendgrid-module/services/password-confirmation.mail.service.ts rename to backend/src/modules/sendgrid-module/services/auth.mail.service.ts index 939dd70..cff521d 100644 --- a/backend/src/modules/sendgrid-module/services/password-confirmation.mail.service.ts +++ b/backend/src/modules/sendgrid-module/services/auth.mail.service.ts @@ -7,9 +7,7 @@ import { BaseMailService } from './base.mail.service'; import { TemplateConfigService } from './template-config.service'; @Injectable() -export class PasswordConfirmationMailService extends BaseMailService { - private readonly PASSWORD_CONFIRMATION_EMAIL: string = - 'PASSWORD_CONFIRMATION_EMAIL'; +export class AuthEmailService extends BaseMailService { private readonly REGISTER_EMAIL: string = 'REGISTER_EMAIL'; public constructor( @@ -20,29 +18,6 @@ export class PasswordConfirmationMailService extends BaseMailService { super(sendGridApiKey); } - public async sendPasswordConfirmationMail( - to: string, - verificationToken: string - ): Promise { - const templateId: string = this.templateConfigService.getTemplateId( - this.PASSWORD_CONFIRMATION_EMAIL - ); - - const token = `${verificationToken}|${UriEncoderService.encodeBase64(to)}`; - - const mailoptions: SendGridMailApi.MailDataRequired = { - to, - from: { email: 'info@igor-propisnov.com', name: 'Ticket App' }, - templateId: templateId, - dynamicTemplateData: { - name: 'Mara', - buttonUrl: `${this.configService.get('APP_URL')}/verify/?token=${token}`, - }, - }; - - await this.sendMail(mailoptions); - } - public async sendLoginLinkEmail( to: string, loginToken: string