jws-backend/src/db.ts

24 lines
773 B
TypeScript
Raw Normal View History

2024-04-01 13:28:43 +07:00
import { PrismaClient } from "@prisma/client";
2024-06-26 11:22:48 +07:00
import { Kysely, PostgresAdapter, PostgresIntrospector, PostgresQueryCompiler } from "kysely";
2024-06-26 11:53:25 +07:00
import kyselyExtension from "prisma-extension-kysely";
import type { DB } from "./generated/kysely/types";
2024-04-01 13:28:43 +07:00
const prisma = new PrismaClient({
errorFormat: process.env.NODE_ENV === "production" ? "minimal" : "pretty",
2024-06-26 11:22:48 +07:00
}).$extends(
kyselyExtension({
kysely: (driver) =>
new Kysely<DB>({
dialect: {
createDriver: () => driver,
createAdapter: () => new PostgresAdapter(),
createIntrospector: (db: Kysely<DB>) => new PostgresIntrospector(db),
createQueryCompiler: () => new PostgresQueryCompiler(),
},
plugins: [],
}),
}),
);
2024-04-01 13:28:43 +07:00
export default prisma;