Hello guys, please check this code. I have tried to explain my doubt in the comments in the code.
import * as mongodb from 'mongodb';
const MongoClient = mongodb.default.MongoClient;
import genSegWallet from './utils/genSegWallet.js';
const uri =
'MY MONGO CONNECTION LINK';
const client = new MongoClient(uri);
async function getAddrs() {
const query = await client.db('users').collection('userAddress').find().toArray()
let balanceList= {}
query.forEach(async (entry) => {
const username = await entry['username'];
const mnemonic = await entry['address']['mnemonic']
const address = await genSegWallet(mnemonic)
const addressArr = Object.values(address)
balanceList[username] = {}
addressArr.forEach(async (addr, index) => {
// const bal = await getBal(addr);
const bal = 0;
cursor[username][index] = { 'address': addr, 'balance': bal }
})
console.log(balanceList) //This prints 3 times cause there are 3 elements in the query array.
})
console.log(balanceList) //Does not print
return cursor;
}
export default getAddrs;



