import { PrismaClient } from '@prisma/client'; import bcrypt from 'bcrypt'; const prisma = new PrismaClient(); async function main() { console.log('🌱 Starting database seed...'); // Create admin user const adminPasswordHash = await bcrypt.hash('admin123', 10); const admin = await prisma.user.upsert({ where: { email: 'admin@znakovni.hr' }, update: {}, create: { email: 'admin@znakovni.hr', displayName: 'Administrator', passwordHash: adminPasswordHash, role: 'ADMIN', isActive: true, authProvider: 'local', }, }); console.log('✅ Created admin user:', admin.email); console.log(' Email: admin@znakovni.hr'); console.log(' Password: admin123'); // Create a demo regular user const demoPasswordHash = await bcrypt.hash('demo123', 10); const demoUser = await prisma.user.upsert({ where: { email: 'demo@znakovni.hr' }, update: {}, create: { email: 'demo@znakovni.hr', displayName: 'Demo User', passwordHash: demoPasswordHash, role: 'USER', isActive: true, authProvider: 'local', }, }); console.log('✅ Created demo user:', demoUser.email); console.log(' Email: demo@znakovni.hr'); console.log(' Password: demo123'); // Add sample terms here in future phases console.log('✅ Seed completed successfully!'); } main() .catch((e) => { console.error('❌ Seed failed:', e); process.exit(1); }) .finally(async () => { await prisma.$disconnect(); });