From 2b7d4ecdc2c3526a195133bd251a190367ebb752 Mon Sep 17 00:00:00 2001 From: arsam Date: Fri, 18 Sep 2026 23:09:23 +0330 Subject: [PATCH] Import source: backend/src/plugins/prisma Import the existing local project snapshot. This commit organizes existing files; it does not represent newly developed functionality. --- backend/src/plugins/prisma.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 backend/src/plugins/prisma.ts diff --git a/backend/src/plugins/prisma.ts b/backend/src/plugins/prisma.ts new file mode 100644 index 0000000..e19e32c --- /dev/null +++ b/backend/src/plugins/prisma.ts @@ -0,0 +1,25 @@ +import fp from 'fastify-plugin'; +import { PrismaClient } from '@prisma/client'; +import type { FastifyPluginAsync } from 'fastify'; + +declare module 'fastify' { + interface FastifyInstance { + prisma: PrismaClient; + } +} + +export const prismaPlugin: FastifyPluginAsync = fp(async (fastify) => { + const prisma = new PrismaClient({ + log: fastify.log.level === 'debug' ? ['query', 'error', 'warn'] : ['error'], + }); + + await prisma.$connect(); + + fastify.decorate('prisma', prisma); + + fastify.addHook('onClose', async (server) => { + await server.prisma.$disconnect(); + }); +}); + +export default prismaPlugin;