refactor: remove edge compatibility

This commit is contained in:
Henry
2025-05-15 22:27:03 +01:00
parent 66de4b6c42
commit d065ae73e1
11 changed files with 108 additions and 167 deletions

View File

@@ -39,16 +39,16 @@
},
"dependencies": {
"@kan/shared": "workspace:^",
"@neondatabase/serverless": "^0.10.4",
"@vercel/postgres": "^0.10.0",
"drizzle-orm": "^0.42.0",
"drizzle-zod": "^0.5.1",
"pg": "^8.11.3",
"zod": "catalog:"
},
"devDependencies": {
"@kan/eslint-config": "workspace:*",
"@kan/prettier-config": "workspace:*",
"@kan/tsconfig": "workspace:*",
"@types/pg": "^8.10.9",
"dotenv-cli": "^7.4.4",
"drizzle-kit": "^0.28.1",
"eslint": "catalog:",

View File

@@ -1,20 +1,23 @@
import type { NeonDatabase as DrizzleClient } from "drizzle-orm/neon-serverless";
import { Pool } from "@neondatabase/serverless";
import { drizzle } from "drizzle-orm/neon-serverless";
import type { NodePgDatabase } from "drizzle-orm/node-postgres";
import { drizzle as drizzlePg } from "drizzle-orm/node-postgres";
import { Pool } from "pg";
import * as schema from "./schema";
export type dbClient = DrizzleClient<typeof schema> & {
export type dbClient = NodePgDatabase<typeof schema> & {
$client: Pool;
};
export const createDrizzleClient = () => {
export const createDrizzleClient = (): dbClient => {
const connectionString = process.env.POSTGRES_URL;
if (!connectionString) {
throw new Error("POSTGRES_URL environment variable is not set");
}
const pool = new Pool({
connectionString: process.env.POSTGRES_URL,
connectionString,
});
return drizzle({
client: pool,
schema,
});
return drizzlePg(pool, { schema }) as dbClient;
};