33 lines
877 B
TypeScript
33 lines
877 B
TypeScript
|
|
import { PrismaClient } from '@prisma/client';
|
|
import bcrypt from 'bcryptjs';
|
|
|
|
const prisma = new PrismaClient();
|
|
|
|
async function resetAdmin() {
|
|
const email = 'admin@digicraft.app';
|
|
const password = 'adminpassword';
|
|
const role = 'ADMIN';
|
|
|
|
console.log(`Resetting Admin password for: ${email}`);
|
|
|
|
const salt = await bcrypt.genSalt(10);
|
|
const passwordHash = await bcrypt.hash(password, salt);
|
|
|
|
try {
|
|
const user = await prisma.user.upsert({
|
|
where: { email },
|
|
update: { passwordHash, role },
|
|
create: { email, passwordHash, role }
|
|
});
|
|
console.log(`✅ SUCCESS! Admin User ${email} is ready.`);
|
|
console.log(`🔑 Password: ${password}`);
|
|
} catch (e) {
|
|
console.error("❌ Error upserting admin:", e);
|
|
} finally {
|
|
await prisma.$disconnect();
|
|
}
|
|
}
|
|
|
|
resetAdmin();
|