import { PrismaClient } from '@prisma/client';

// PrismaClient является тяжелым для инстанцирования,
// поэтому мы глобально сохраняем одиночный экземпляр
const globalForPrisma = globalThis as unknown as {
  prisma: PrismaClient | undefined;
};

const prisma = globalForPrisma.prisma ?? new PrismaClient({
  log: ['query', 'error', 'warn'],
});

if (process.env.NODE_ENV !== 'production') globalForPrisma.prisma = prisma;

export default prisma;
