build fix

This commit is contained in:
alma 2025-05-05 13:11:44 +02:00
parent 907adf3f87
commit c334e02da9

View File

@ -78,37 +78,50 @@ export async function GET(request: Request) {
console.log(`Created placeholder user ${userId}`);
}
// Upsert credentials in database
await prisma.mailCredentials.upsert({
where: { userId },
update: {
email: creds.email,
password: creds.encryptedPassword || 'encrypted_placeholder',
host: creds.host,
port: creds.port,
// Optional fields
...(creds.secure !== undefined && { secure: creds.secure }),
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
...(creds.display_name && { display_name: creds.display_name }),
...(creds.color && { color: creds.color })
},
create: {
// Find existing credentials first
const existingCredentials = await prisma.mailCredentials.findFirst({
where: {
userId,
email: creds.email,
password: creds.encryptedPassword || 'encrypted_placeholder',
host: creds.host,
port: creds.port,
// Optional fields
...(creds.secure !== undefined && { secure: creds.secure }),
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
...(creds.display_name && { display_name: creds.display_name }),
...(creds.color && { color: creds.color })
email: creds.email
}
});
if (existingCredentials) {
// Update existing credentials
await prisma.mailCredentials.update({
where: { id: existingCredentials.id },
data: {
password: creds.encryptedPassword || 'encrypted_placeholder',
host: creds.host,
port: creds.port,
// Optional fields
...(creds.secure !== undefined && { secure: creds.secure }),
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
...(creds.display_name && { display_name: creds.display_name }),
...(creds.color && { color: creds.color })
}
});
} else {
// Create new credentials
await prisma.mailCredentials.create({
data: {
userId,
email: creds.email,
password: creds.encryptedPassword || 'encrypted_placeholder',
host: creds.host,
port: creds.port,
// Optional fields
...(creds.secure !== undefined && { secure: creds.secure }),
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
...(creds.display_name && { display_name: creds.display_name }),
...(creds.color && { color: creds.color })
}
});
}
results.success++;
console.log(`Successfully restored credentials for user ${userId}`);