From e587fd639f8deb6e96d80cdb6521201bbdeec09f Mon Sep 17 00:00:00 2001 From: Simon Warta Date: Thu, 6 Aug 2020 16:15:15 +0200 Subject: [PATCH] Pull out queryUnverified --- packages/stargate/src/stargateclient.ts | 29 ++++++++++++--------- packages/stargate/types/stargateclient.d.ts | 1 + 2 files changed, 18 insertions(+), 12 deletions(-) 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; }