Make email service initialization asynchronous
All checks were successful
Build And Push Image / docker (push) Successful in 3m10s

Convert getEmailService() to async function and update all callers to use await.
Replace synchronous require() with dynamic import() for admin-config module.
Add SMTP config loading to admin configuration dialog.
This commit is contained in:
2025-08-09 15:50:54 +02:00
parent 97a0b5eea6
commit dcb7840825
6 changed files with 12 additions and 6 deletions

View File

@@ -49,7 +49,7 @@ export default defineEventHandler(async (event) => {
// Get email service and send test email
const { getEmailService } = await import('~/server/utils/email');
const emailService = getEmailService();
const emailService = await getEmailService();
// Verify connection first
const connectionOk = await emailService.verifyConnection();

View File

@@ -82,7 +82,7 @@ export default defineEventHandler(async (event) => {
// Send verification email
const { getEmailService } = await import('~/server/utils/email');
const emailService = getEmailService();
const emailService = await getEmailService();
try {
await emailService.sendWelcomeEmail(email, {

View File

@@ -122,7 +122,7 @@ export default defineEventHandler(async (event) => {
const { getEmailService } = await import('~/server/utils/email');
const { generateEmailVerificationToken } = await import('~/server/utils/email-tokens');
const emailService = getEmailService();
const emailService = await getEmailService();
const verificationToken = await generateEmailVerificationToken(keycloakId, member.email);
const config = useRuntimeConfig();
const verificationLink = `${config.public.domain}/api/auth/verify-email?token=${verificationToken}`;

View File

@@ -141,7 +141,7 @@ export default defineEventHandler(async (event) => {
const { getEmailService } = await import('~/server/utils/email');
const { generateEmailVerificationToken } = await import('~/server/utils/email-tokens');
const emailService = getEmailService();
const emailService = await getEmailService();
const verificationToken = await generateEmailVerificationToken(createdKeycloakId, body.email);
const config = useRuntimeConfig();
const verificationLink = `${config.public.domain}/api/auth/verify-email?token=${verificationToken}`;