driver.js 942 B

123456789101112131415161718192021222324252627282930313233
  1. import { Prisma } from "@prisma/client";
  2. import { entityKind } from "../../entity.js";
  3. import { DefaultLogger } from "../../logger.js";
  4. import { PgDatabase, PgDialect } from "../../pg-core/index.js";
  5. import { PrismaPgSession } from "./session.js";
  6. class PrismaPgDatabase extends PgDatabase {
  7. static [entityKind] = "PrismaPgDatabase";
  8. constructor(client, logger) {
  9. const dialect = new PgDialect();
  10. super(dialect, new PrismaPgSession(dialect, client, { logger }), void 0);
  11. }
  12. }
  13. function drizzle(config = {}) {
  14. let logger;
  15. if (config.logger === true) {
  16. logger = new DefaultLogger();
  17. } else if (config.logger !== false) {
  18. logger = config.logger;
  19. }
  20. return Prisma.defineExtension((client) => {
  21. return client.$extends({
  22. name: "drizzle",
  23. client: {
  24. $drizzle: new PrismaPgDatabase(client, logger)
  25. }
  26. });
  27. });
  28. }
  29. export {
  30. PrismaPgDatabase,
  31. drizzle
  32. };
  33. //# sourceMappingURL=driver.js.map