import { MongoClient } from 'mongodb';
export default async ({ user, password, database, host, port }) => {
const uri = `mongodb://${user}:${password}@${host}:${port}/${database}?authSource=admin`;
const client = new MongoClient(uri, {
useNewUrlParser: true,
useUnifiedTopology: true,
});
await client.connect();
const db = client.db(database);
// We are adding query and queryRow equivalents for consistency
db.query = async (collection, filter = {}, options = {}) => {
return db.collection(collection).find(filter, options).toArray();
};
db.queryRow = async (collection, filter = {}, options = {}) => {
return db.collection(collection).findOne(filter, options);
};
db.close = () => client.close();
return db;
};
Modified at 2026-01-28 14:22:18