From: Chris Duncan Date: Mon, 3 Aug 2026 13:35:00 +0000 (-0700) Subject: Fix wallet refresh response handling. X-Git-Url: https://git.codecow.com/?a=commitdiff_plain;h=d65b86968ae2697c8e7b8f57fd337b95b86d61c9;p=libnemo.git Fix wallet refresh response handling. --- diff --git a/src/lib/wallet/refresh.ts b/src/lib/wallet/refresh.ts index 13308f4..aaa286f 100644 --- a/src/lib/wallet/refresh.ts +++ b/src/lib/wallet/refresh.ts @@ -40,16 +40,17 @@ export async function _refresh (wallet: Wallet, rpc: unknown, from: unknown, to: json_block: true, accounts: addresses } - const { balances } = await rpc.post('accounts_balances', data) as { balances: { [address: string]: { balance: string, receivable: string } } } + const { balances } = await rpc.post('accounts_balances', data) as { balances?: { [address: string]: { balance: string, receivable: string } } } const { frontiers } = await rpc.post('accounts_frontiers', data) as { frontiers: { [address: string]: string } } const { representatives } = await rpc.post('accounts_representatives', data) as { representatives: { [address: string]: string } } const { blocks } = await rpc.post('blocks_info', { json_block: true, hashes: Object.values(frontiers) }) as BlockInfo for (const account of accounts.values()) { - account.balance = balances[account.address]?.balance - account.receivable = balances[account.address]?.receivable + account.balance = balances?.[account.address]?.balance ?? 0 + account.receivable = balances?.[account.address]?.receivable ?? 0 account.representative = representatives?.[account.address] if (frontiers[account.address] != null) { - account.representative ??= (await rpc.post('account_representative', { account: account.address }))?.representative + const { representative: accountRepresentative } = await rpc.post('account_representative', { account: account.address }) as { representative: string } + account.representative ??= accountRepresentative account.frontier = frontiers[account.address] const { subtype, contents: { balance, link, previous, representative, signature } } = blocks[account.frontier] const frontierBlock = new Block(account, balance, previous, representative)