targo-backend/prisma/postgres/prisma-postgres.service.ts

24 lines
635 B
TypeScript

import { Injectable, OnModuleInit, OnModuleDestroy } from '@nestjs/common';
import { adapterPostgres } from 'prisma.config.postgres';
import { PrismaClient } from 'prisma/postgres/generated/prisma/client/postgres/client';
@Injectable()
export class PrismaPostgresService extends PrismaClient implements OnModuleInit, OnModuleDestroy {
readonly client: PrismaClient;
constructor() {
super({ adapter: adapterPostgres })
}
async onModuleInit() {
await this.$connect();
}
async onModuleDestroy() {
await this.$disconnect();
}
}
export type TransactionClient = Parameters<Parameters<PrismaClient['$transaction']>[0]>[0];