// @WHO:   vps-deploy/api/kds/src/lib/prisma.ts
// @WHAT:  Prisma client singleton — single instance to avoid connection pool exhaustion
// @PART:  database
// @ENTRY: prisma

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

const globalForPrisma = globalThis as unknown as { prisma: PrismaClient };

export const prisma = globalForPrisma.prisma || new PrismaClient({
  log: process.env.NODE_ENV === 'development' ? ['query', 'error', 'warn'] : ['error'],
});

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