24 lines
595 B
TypeScript
24 lines
595 B
TypeScript
import { MongoClient, Db } from 'mongodb'
|
|
|
|
const MONGODB_URI = process.env.MONGODB_URI!
|
|
|
|
if (!MONGODB_URI) {
|
|
throw new Error('Please define the MONGODB_URI environment variable')
|
|
}
|
|
|
|
let cachedClient: MongoClient | null = null
|
|
let cachedDb: Db | null = null
|
|
|
|
export async function connectToDatabase(): Promise<{ client: MongoClient; db: Db }> {
|
|
if (cachedClient && cachedDb) {
|
|
return { client: cachedClient, db: cachedDb }
|
|
}
|
|
|
|
const client = await MongoClient.connect(MONGODB_URI)
|
|
const db = client.db('pummmpfun')
|
|
|
|
cachedClient = client
|
|
cachedDb = db
|
|
|
|
return { client, db }
|
|
}
|