import "dotenv/config"; import { PrismaClient } from "../src/generated/prisma/client"; import { PrismaPg } from "@prisma/adapter-pg"; import bcrypt from "bcryptjs"; const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL! }); const prisma = new PrismaClient({ adapter }); async function main() { console.log("Seeding database..."); const hashedPassword = await bcrypt.hash("Password123!", 10); // Admin const admin = await prisma.user.upsert({ where: { email: "admin@second-brain.ru" }, update: {}, create: { email: "admin@second-brain.ru", name: "Администратор", emailVerified: true, role: "admin", accounts: { create: { accountId: "admin@second-brain.ru", providerId: "credential", password: hashedPassword, }, }, }, }); // Curator const curator = await prisma.user.upsert({ where: { email: "curator@second-brain.ru" }, update: {}, create: { email: "curator@second-brain.ru", name: "Куратор", emailVerified: true, role: "curator", accounts: { create: { accountId: "curator@second-brain.ru", providerId: "credential", password: hashedPassword, }, }, }, }); // Student const student = await prisma.user.upsert({ where: { email: "student@second-brain.ru" }, update: {}, create: { email: "student@second-brain.ru", name: "Ученик", emailVerified: true, role: "student", accounts: { create: { accountId: "student@second-brain.ru", providerId: "credential", password: hashedPassword, }, }, }, }); console.log("Created users:"); console.log(` Admin: ${admin.email}`); console.log(` Curator: ${curator.email}`); console.log(` Student: ${student.email}`); console.log(" Password for all: Password123!"); console.log("Done."); } main() .catch(console.error) .finally(() => prisma.$disconnect());