52 lines
1.2 KiB
TypeScript
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;
|
|
}
|