Browse Source

feat(types): create ExchangeRatesByCurrency interface

pull/5650/head
KenTandrian 3 weeks ago
parent
commit
b452b6cb00
  1. 5
      apps/api/src/app/portfolio/portfolio.service.ts
  2. 4
      apps/api/src/services/exchange-rate-data/exchange-rate-data.service.ts
  3. 5
      apps/api/src/services/exchange-rate-data/interfaces/exchange-rate-data.interface.ts

5
apps/api/src/app/portfolio/portfolio.service.ts

@ -24,6 +24,7 @@ import { RegionalMarketClusterRiskNorthAmerica } from '@ghostfolio/api/models/ru
import { BenchmarkService } from '@ghostfolio/api/services/benchmark/benchmark.service'; import { BenchmarkService } from '@ghostfolio/api/services/benchmark/benchmark.service';
import { DataProviderService } from '@ghostfolio/api/services/data-provider/data-provider.service'; import { DataProviderService } from '@ghostfolio/api/services/data-provider/data-provider.service';
import { ExchangeRateDataService } from '@ghostfolio/api/services/exchange-rate-data/exchange-rate-data.service'; import { ExchangeRateDataService } from '@ghostfolio/api/services/exchange-rate-data/exchange-rate-data.service';
import { ExchangeRatesByCurrency } from '@ghostfolio/api/services/exchange-rate-data/interfaces/exchange-rate-data.interface';
import { I18nService } from '@ghostfolio/api/services/i18n/i18n.service'; import { I18nService } from '@ghostfolio/api/services/i18n/i18n.service';
import { ImpersonationService } from '@ghostfolio/api/services/impersonation/impersonation.service'; import { ImpersonationService } from '@ghostfolio/api/services/impersonation/impersonation.service';
import { SymbolProfileService } from '@ghostfolio/api/services/symbol-profile/symbol-profile.service'; import { SymbolProfileService } from '@ghostfolio/api/services/symbol-profile/symbol-profile.service';
@ -1648,9 +1649,7 @@ export class PortfolioService {
value value
}: { }: {
cashDetails: CashDetails; cashDetails: CashDetails;
exchangeRatesByCurrency: Awaited< exchangeRatesByCurrency: ExchangeRatesByCurrency;
ReturnType<ExchangeRateDataService['getExchangeRatesByCurrency']>
>;
userCurrency: string; userCurrency: string;
value: Big; value: Big;
}) { }) {

4
apps/api/src/services/exchange-rate-data/exchange-rate-data.service.ts

@ -26,6 +26,8 @@ import {
import { isNumber } from 'lodash'; import { isNumber } from 'lodash';
import ms from 'ms'; import ms from 'ms';
import { ExchangeRatesByCurrency } from './interfaces/exchange-rate-data.interface';
@Injectable() @Injectable()
export class ExchangeRateDataService { export class ExchangeRateDataService {
private currencies: string[] = []; private currencies: string[] = [];
@ -58,7 +60,7 @@ export class ExchangeRateDataService {
endDate?: Date; endDate?: Date;
startDate: Date; startDate: Date;
targetCurrency: string; targetCurrency: string;
}) { }): Promise<ExchangeRatesByCurrency> {
if (!startDate) { if (!startDate) {
return {}; return {};
} }

5
apps/api/src/services/exchange-rate-data/interfaces/exchange-rate-data.interface.ts

@ -0,0 +1,5 @@
export interface ExchangeRatesByCurrency {
[currency: string]: {
[dateString: string]: number;
};
}
Loading…
Cancel
Save