Files
freno-dev/src/server/db-connections.ts
2026-08-26 17:41:57 -04:00

52 lines
1.2 KiB
TypeScript

import { createClient, type Client } from "@libsql/client/web";
import { env } from "~/env/server";
let mainDBConnection: Client | null = null;
let lineageDBConnection: Client | null = null;
let nessaDBConnection: Client | null = null;
let nookDBConnection: Client | null = null;
export function ConnectionFactory() {
if (!mainDBConnection) {
const config = {
url: env.TURSO_DB_URL,
authToken: env.TURSO_DB_TOKEN
};
mainDBConnection = createClient(config);
}
return mainDBConnection;
}
export function LineageConnectionFactory() {
if (!lineageDBConnection) {
const config = {
url: env.TURSO_LINEAGE_URL,
authToken: env.TURSO_LINEAGE_TOKEN
};
lineageDBConnection = createClient(config);
}
return lineageDBConnection;
}
export function NessaConnectionFactory() {
if (!nessaDBConnection) {
const config = {
url: env.NESSA_DB_URL,
authToken: env.NESSA_DB_TOKEN
};
nessaDBConnection = createClient(config);
}
return nessaDBConnection;
}
export function NookConnectionFactory() {
if (!nookDBConnection) {
const config = {
url: env.NOOK_DB_URL,
authToken: env.NOOK_DB_TOKEN
};
nookDBConnection = createClient(config);
}
return nookDBConnection;
}