diff --git a/packages/stargate/src/stargateclient.ts b/packages/stargate/src/stargateclient.ts index cc3b20a6..3f0f7c45 100644 --- a/packages/stargate/src/stargateclient.ts +++ b/packages/stargate/src/stargateclient.ts @@ -87,18 +87,9 @@ export class StargateClient { public async getUnverifiedAllBalances(address: string): Promise { const path = "/cosmos.bank.Query/AllBalances"; const request = QueryAllBalancesRequest.encode({ address: Bech32.decode(address).data }).finish(); - const response = await this.tmClient.abciQuery({ - path: path, - data: request, - prove: false, - }); - - if (response.code) { - throw new Error(`Query failed with (${response.code}): ${response.log}`); - } - - const result = QueryAllBalancesResponse.decode(response.value); - return (result.balances || []).map( + const responseData = await this.queryUnverified(path, request); + const response = QueryAllBalancesResponse.decode(responseData); + return (response.balances || []).map( (balance): Coin => { assertDefined(balance.amount); assertDefined(balance.denom); @@ -137,4 +128,18 @@ export class StargateClient { return response.value; } + + private async queryUnverified(path: string, request: Uint8Array): Promise { + const response = await this.tmClient.abciQuery({ + path: path, + data: request, + prove: false, + }); + + if (response.code) { + throw new Error(`Query failed with (${response.code}): ${response.log}`); + } + + return response.value; + } } diff --git a/packages/stargate/types/stargateclient.d.ts b/packages/stargate/types/stargateclient.d.ts index 334447c8..335a0d75 100644 --- a/packages/stargate/types/stargateclient.d.ts +++ b/packages/stargate/types/stargateclient.d.ts @@ -18,4 +18,5 @@ export declare class StargateClient { getUnverifiedAllBalances(address: string): Promise; disconnect(): void; private queryVerified; + private queryUnverified; }