UNPKG

@emeraldpay/api-node

Version:
60 lines 3.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TokenClient = void 0; const api_1 = require("@emeraldpay/api"); const channel_1 = require("../channel"); const token_grpc_pb_1 = require("../generated/token_grpc_pb"); const Factory_1 = require("./Factory"); // eslint-disable-next-line @typescript-eslint/no-var-requires const { version: clientVersion } = require('../../package.json'); class TokenClient { constructor(address, credentials, agents, retries = 3) { this.convert = new api_1.token.Convert(Factory_1.classFactory); const agent = [...agents, `emerald-client-node/${clientVersion}`].join(' '); this.client = new token_grpc_pb_1.TokenClient(address, credentials, { 'grpc.primary_user_agent': agent }); this.channel = new channel_1.NativeChannel(this.client); this.credentials = credentials; this.retries = retries; } setConnectionListener(listener) { this.channel.setListener(listener); } getTokens(request) { const protoRequest = this.convert.addressTokenRequest(request); const mapper = this.convert.addressToken(); const call = (0, channel_1.callSingle)(this.client.getTokens.bind(this.client), mapper); return (0, api_1.publishToPromise)((0, api_1.readOnce)(this.channel, call, protoRequest, this.retries)); } subscribeTokens(request) { const protoRequest = this.convert.addressTokenRequest(request); const mapper = this.convert.addressToken(); const call = (0, channel_1.callStream)(this.client.subscribeTokens.bind(this.client), mapper); return (0, api_1.alwaysRetry)(this.channel, call, protoRequest, this.retries); } getAllowanceTokens(request) { const protoRequest = this.convert.addressAllowanceRequest(request); const mapper = this.convert.addressAllowanceToken(); const call = (0, channel_1.callSingle)(this.client.getAllowanceTokens.bind(this.client), mapper); return (0, api_1.publishToPromise)((0, api_1.readOnce)(this.channel, call, protoRequest, this.retries)); } subscribeAllowanceTokens(request) { const protoRequest = this.convert.addressAllowanceRequest(request); const mapper = this.convert.addressAllowanceToken(); const call = (0, channel_1.callStream)(this.client.subscribeAllowanceTokens.bind(this.client), mapper); return (0, api_1.alwaysRetry)(this.channel, call, protoRequest, this.retries); } getAllowanceAmounts(request) { const protoRequest = this.convert.addressAllowanceRequest(request); const mapper = this.convert.addressAllowanceAmount(); const call = (0, channel_1.callStream)(this.client.getAllowanceAmounts.bind(this.client), mapper); return (0, api_1.readOnce)(this.channel, call, protoRequest, this.retries); } subscribeAllowanceAmounts(request) { const protoRequest = this.convert.addressAllowanceRequest(request); const mapper = this.convert.addressAllowanceAmount(); const call = (0, channel_1.callStream)(this.client.subscribeAllowanceAmounts.bind(this.client), mapper); return (0, api_1.alwaysRetry)(this.channel, call, protoRequest, this.retries); } } exports.TokenClient = TokenClient; //# sourceMappingURL=TokenClient.js.map