fix: type T-Bank client config

This commit is contained in:
2026-08-13 19:36:46 +03:00
parent 31cbba8654
commit 18d7cfcf9f
+15 -6
View File
@@ -1,4 +1,8 @@
import { Injectable, Logger, ServiceUnavailableException } from '@nestjs/common';
import {
Injectable,
Logger,
ServiceUnavailableException,
} from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import {
ChannelCredentials,
@@ -108,16 +112,18 @@ export class TbankClient {
? ChannelCredentials.createSsl(readFileSync(caPath))
: ChannelCredentials.createSsl();
this.client = new Service(
config.getOrThrow('TBANK_GRPC_ENDPOINT'),
config.getOrThrow<string>('TBANK_GRPC_ENDPOINT'),
credentials,
);
this.queue = new RateLimiter(
config.getOrThrow('TBANK_RATE_LIMIT_PER_SECOND'),
config.getOrThrow<number>('TBANK_RATE_LIMIT_PER_SECOND'),
);
this.logger.log({
event: 'client_configured',
endpoint: config.getOrThrow('TBANK_GRPC_ENDPOINT'),
rateLimitPerSecond: config.getOrThrow('TBANK_RATE_LIMIT_PER_SECOND'),
endpoint: config.getOrThrow<string>('TBANK_GRPC_ENDPOINT'),
rateLimitPerSecond: config.getOrThrow<number>(
'TBANK_RATE_LIMIT_PER_SECOND',
),
customCa: Boolean(caPath),
});
}
@@ -155,7 +161,10 @@ export class TbankClient {
status.RESOURCE_EXHAUSTED,
].includes(code)
) {
this.logger.log({ event: 'get_accounts_retry_scheduled', delayMs: 1000 });
this.logger.log({
event: 'get_accounts_retry_scheduled',
delayMs: 1000,
});
await new Promise((resolve) => setTimeout(resolve, 1000));
return this.call(token, false);
}