@bandprotocol/bandchain.js
Version:
TypeScript library for Cosmos SDK and BandChain
117 lines (116 loc) • 5.83 kB
JavaScript
import { BinaryReader } from "../../../binary";
import { createProtobufRpcClient } from "@cosmjs/stargate";
import { QueryCurrentFeedsRequest, QueryCurrentFeedsResponse, QueryIsFeederRequest, QueryIsFeederResponse, QueryParamsRequest, QueryParamsResponse, QueryPriceRequest, QueryPriceResponse, QueryPricesRequest, QueryPricesResponse, QueryAllPricesRequest, QueryAllPricesResponse, QueryReferenceSourceConfigRequest, QueryReferenceSourceConfigResponse, QuerySignalTotalPowersRequest, QuerySignalTotalPowersResponse, QueryValidValidatorRequest, QueryValidValidatorResponse, QueryValidatorPricesRequest, QueryValidatorPricesResponse, QueryVoteRequest, QueryVoteResponse } from "./query";
export class QueryClientImpl {
rpc;
constructor(rpc) {
this.rpc = rpc;
this.currentFeeds = this.currentFeeds.bind(this);
this.isFeeder = this.isFeeder.bind(this);
this.params = this.params.bind(this);
this.price = this.price.bind(this);
this.prices = this.prices.bind(this);
this.allPrices = this.allPrices.bind(this);
this.referenceSourceConfig = this.referenceSourceConfig.bind(this);
this.signalTotalPowers = this.signalTotalPowers.bind(this);
this.validValidator = this.validValidator.bind(this);
this.validatorPrices = this.validatorPrices.bind(this);
this.vote = this.vote.bind(this);
}
currentFeeds(request = {}) {
const data = QueryCurrentFeedsRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "CurrentFeeds", data);
return promise.then(data => QueryCurrentFeedsResponse.decode(new BinaryReader(data)));
}
isFeeder(request) {
const data = QueryIsFeederRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "IsFeeder", data);
return promise.then(data => QueryIsFeederResponse.decode(new BinaryReader(data)));
}
params(request = {}) {
const data = QueryParamsRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "Params", data);
return promise.then(data => QueryParamsResponse.decode(new BinaryReader(data)));
}
price(request) {
const data = QueryPriceRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "Price", data);
return promise.then(data => QueryPriceResponse.decode(new BinaryReader(data)));
}
prices(request) {
const data = QueryPricesRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "Prices", data);
return promise.then(data => QueryPricesResponse.decode(new BinaryReader(data)));
}
allPrices(request = {
pagination: undefined
}) {
const data = QueryAllPricesRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "AllPrices", data);
return promise.then(data => QueryAllPricesResponse.decode(new BinaryReader(data)));
}
referenceSourceConfig(request = {}) {
const data = QueryReferenceSourceConfigRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "ReferenceSourceConfig", data);
return promise.then(data => QueryReferenceSourceConfigResponse.decode(new BinaryReader(data)));
}
signalTotalPowers(request) {
const data = QuerySignalTotalPowersRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "SignalTotalPowers", data);
return promise.then(data => QuerySignalTotalPowersResponse.decode(new BinaryReader(data)));
}
validValidator(request) {
const data = QueryValidValidatorRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "ValidValidator", data);
return promise.then(data => QueryValidValidatorResponse.decode(new BinaryReader(data)));
}
validatorPrices(request) {
const data = QueryValidatorPricesRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "ValidatorPrices", data);
return promise.then(data => QueryValidatorPricesResponse.decode(new BinaryReader(data)));
}
vote(request) {
const data = QueryVoteRequest.encode(request).finish();
const promise = this.rpc.request("band.feeds.v1beta1.Query", "Vote", data);
return promise.then(data => QueryVoteResponse.decode(new BinaryReader(data)));
}
}
export const createRpcQueryExtension = (base) => {
const rpc = createProtobufRpcClient(base);
const queryService = new QueryClientImpl(rpc);
return {
currentFeeds(request) {
return queryService.currentFeeds(request);
},
isFeeder(request) {
return queryService.isFeeder(request);
},
params(request) {
return queryService.params(request);
},
price(request) {
return queryService.price(request);
},
prices(request) {
return queryService.prices(request);
},
allPrices(request) {
return queryService.allPrices(request);
},
referenceSourceConfig(request) {
return queryService.referenceSourceConfig(request);
},
signalTotalPowers(request) {
return queryService.signalTotalPowers(request);
},
validValidator(request) {
return queryService.validValidator(request);
},
validatorPrices(request) {
return queryService.validatorPrices(request);
},
vote(request) {
return queryService.vote(request);
}
};
};