Skip to content

Commit 8bd27a1

Browse files
committed
feat: add mailer from address validation
1 parent dd947e3 commit 8bd27a1

5 files changed

Lines changed: 9 additions & 4 deletions

File tree

src/config/definitions/mailer.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ export interface MailerConfig {
33
port: number
44
login: string
55
password: string
6+
fromAddress: string
67
}

src/config/env/mailer.env.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ export const mailerEnv = registerAs<MailerConfig>('mailer', () => {
1111
host: process.env.MAIL_HOST,
1212
port: Number(process.env.MAIL_PORT),
1313
login: process.env.MAIL_LOGIN,
14-
password: process.env.MAIL_PASSWORD
14+
password: process.env.MAIL_PASSWORD,
15+
fromAddress: process.env.MAIL_FROM_ADDRESS
1516
}
1617
})

src/config/loaders/mailer.config-loader.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export function getMailerConfig(
1717
}
1818
},
1919
defaults: {
20-
from: `"TeaCoder Team" ${configService.get('mailer.login', { infer: true })}`
20+
from: `"TeaCoder Team" ${configService.get('mailer.fromAddress', { infer: true })}`
2121
}
2222
}
2323
}

src/config/validators/mailer.validator.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { IsInt, IsString, Max, Min } from 'class-validator'
1+
import { IsEmail, IsInt, IsString, Max, Min } from 'class-validator'
22

33
export class MailerValidator {
44
@IsString()
@@ -14,4 +14,7 @@ export class MailerValidator {
1414

1515
@IsString()
1616
public MAIL_PASSWORD: string
17+
18+
@IsEmail()
19+
public MAIL_FROM_ADDRESS: string
1720
}

src/libs/mail/mail.processor.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export class MailProcessor extends WorkerHost {
2222
await this.mailService.sendMail(email, subject, html)
2323

2424
this.logger.log(`📧 Email successfully sent to ${email}`)
25-
} catch (error) {
25+
} catch (error: any) {
2626
this.logger.error(
2727
`❌ Error sending email to ${email}: ${error.message}`
2828
)

0 commit comments

Comments
 (0)