Initial commit

This commit is contained in:
Lance
2026-01-16 15:33:40 +08:00
committed by GitHub
commit 037e36f4f4
67 changed files with 5589 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
import { PrismaPg } from "@prisma/adapter-pg";
import { inject, injectable } from "inversify";
import { uuidv7 } from "uuidv7";
import { PrismaClient as PrismaClientLib } from "@/generated/prisma/client.js";
import type { IConfigService } from "@/shared/application/ports/IConfigService.js";
import { SharedDomain } from "@/shared/application/ports/shared.symbols.js";
export type PrismaClient = PrismaClientLib;
@injectable()
export class PrismaClientWrapper {
private readonly client: PrismaClientLib;
constructor(
@inject(SharedDomain.IConfigService)
private readonly configService: IConfigService,
) {
const connectionString = this.configService.get("POSTGRES_URL");
const adapter = new PrismaPg({
connectionString,
});
this.client = new PrismaClientLib({
adapter,
});
}
getClient(): PrismaClientLib {
return this.client;
}
generateId(): string {
return uuidv7();
}
}