import { MongoClient, MongoClientOptions } from 'mongodb'; const MONGOHOST = process.env.MONGOHOST || 'localhost'; const MONGOPORT = process.env.MONGOPORT || '27017'; const MONGOAUTH = process.env.MONGOAUTH === 'true'; const MONGOUSRP = process.env.MONGOUSRP || ''; export const MONGOBASE = process.env.MONGOBASE || 'medizin'; const MONGO_URL = MONGOAUTH ? `mongodb://${MONGOUSRP}@${MONGOHOST}:${MONGOPORT}/?authSource=admin` : `mongodb://${MONGOHOST}:${MONGOPORT}`; console.log("auth:", MONGOAUTH, "url:", MONGO_URL) const options: MongoClientOptions = {}; let client: MongoClient; let clientPromise: Promise; declare global { // eslint-disable-next-line no-var var _mongoClientPromise: Promise | undefined; } if (process.env.NODE_ENV === 'development') { // In development, use a global variable to preserve the connection across HMR reloads if (!global._mongoClientPromise) { client = new MongoClient(MONGO_URL, options); global._mongoClientPromise = client.connect(); } clientPromise = global._mongoClientPromise; } else { client = new MongoClient(MONGO_URL, options); clientPromise = client.connect(); } export default clientPromise;