import { Injectable, OnModuleInit, OnModuleDestroy } from '@nestjs/common'; import { PrismaClient } from '@prisma/client'; import { prisma } from './prisma.client'; @Injectable() export class PrismaService extends PrismaClient implements OnModuleInit, OnModuleDestroy { constructor() { super(); // Use the singleton instance Object.assign(this, prisma); } async onModuleInit() { await this.$connect(); } async onModuleDestroy() { await this.$disconnect(); } }