import { MongoClient, Db } from "mongodb";

const MONGO_URL = process.env.MONGO_URL_LOCAL!;

let cachedClient: MongoClient | null = null;
let cachedDb: Db | null = null;

export async function getDb(): Promise<Db> {
  if (cachedDb) return cachedDb;

  if (!cachedClient) {
    cachedClient = new MongoClient(MONGO_URL);
    await cachedClient.connect();
  }

  cachedDb = cachedClient.db();
  return cachedDb;
}
