import bcrypt from 'bcryptjs'; import { prisma } from '../src/client.js'; async function main() { const passwordHash = await bcrypt.hash('admin', 12); const admin = await prisma.user.upsert({ where: { username: 'admin' }, update: {}, create: { username: 'admin', email: 'admin@vector.local', passwordHash, role: 'ADMIN', }, }); console.log(`Seeded admin user: ${admin.username} (${admin.email})`); console.log('Default password: admin — change this immediately!'); const categoryNames = ['GPU', 'RAM', 'SSD', 'HDD', 'NIC', 'CPU', 'PSU', 'MOBO']; for (const name of categoryNames) { await prisma.category.upsert({ where: { name }, update: {}, create: { name }, }); } console.log(`Seeded ${categoryNames.length} part categories.`); } main() .catch((err) => { console.error(err); process.exit(1); }) .finally(() => prisma.$disconnect());