balances method
Implementation
@override
Future<CrossmintWalletBalanceSnapshot> balances(
String walletId, {
List<String> chains = const <String>[],
List<String> tokens = const <String>[],
}) async {
final List<String> resolvedChains = chains.isNotEmpty
? _codec.dedupeStrings(chains)
: <String>[_chainResolver.resolveChainForBalances(walletId)];
final List<String> resolvedTokens = _codec.balanceTokensForChains(
resolvedChains,
additionalTokens: tokens,
);
final Object? response = await _service.getBalances(
walletId,
chains: resolvedChains,
tokens: resolvedTokens,
);
return CrossmintWalletBalanceSnapshot(
walletId: walletId,
items: WalletResponseParser.readEnvelopeItems(response),
raw: WalletResponseParser.envelopeRaw(
response,
collectionKey: 'balances',
),
);
}