Browse Source

Localize name

pull/4835/head
Thomas Kaul 3 months ago
parent
commit
0d7d198e9d
  1. 12
      apps/api/src/models/rule.ts
  2. 7
      apps/api/src/models/rules/account-cluster-risk/current-investment.ts
  3. 7
      apps/api/src/models/rules/account-cluster-risk/single-account.ts
  4. 7
      apps/api/src/models/rules/asset-class-cluster-risk/equity.ts
  5. 7
      apps/api/src/models/rules/asset-class-cluster-risk/fixed-income.ts
  6. 7
      apps/api/src/models/rules/currency-cluster-risk/base-currency-current-investment.ts
  7. 7
      apps/api/src/models/rules/currency-cluster-risk/current-investment.ts
  8. 7
      apps/api/src/models/rules/economic-market-cluster-risk/developed-markets.ts
  9. 7
      apps/api/src/models/rules/economic-market-cluster-risk/emerging-markets.ts
  10. 7
      apps/api/src/models/rules/emergency-fund/emergency-fund-setup.ts
  11. 10
      apps/api/src/models/rules/fees/fee-ratio-initial-investment.ts
  12. 7
      apps/api/src/models/rules/regional-market-cluster-risk/asia-pacific.ts
  13. 7
      apps/api/src/models/rules/regional-market-cluster-risk/emerging-markets.ts
  14. 7
      apps/api/src/models/rules/regional-market-cluster-risk/europe.ts
  15. 7
      apps/api/src/models/rules/regional-market-cluster-risk/japan.ts
  16. 7
      apps/api/src/models/rules/regional-market-cluster-risk/north-america.ts
  17. 1
      apps/client/src/app/pages/i18n/i18n-page.html

12
apps/api/src/models/rule.ts

@ -16,23 +16,19 @@ import { RuleInterface } from './interfaces/rule.interface';
export abstract class Rule<T extends RuleSettings> implements RuleInterface<T> { export abstract class Rule<T extends RuleSettings> implements RuleInterface<T> {
private key: string; private key: string;
private languageCode: string; private languageCode: string;
private name: string;
public constructor( public constructor(
protected exchangeRateDataService: ExchangeRateDataService, protected exchangeRateDataService: ExchangeRateDataService,
{ {
key, key,
languageCode = DEFAULT_LANGUAGE_CODE, languageCode = DEFAULT_LANGUAGE_CODE
name
}: { }: {
key: string; key: string;
languageCode?: string; // TODO: Make mandatory languageCode?: string; // TODO: Make mandatory
name: string;
} }
) { ) {
this.key = key; this.key = key;
this.languageCode = languageCode; this.languageCode = languageCode;
this.name = name;
} }
public getKey() { public getKey() {
@ -43,10 +39,6 @@ export abstract class Rule<T extends RuleSettings> implements RuleInterface<T> {
return this.languageCode; return this.languageCode;
} }
public getName() {
return this.name;
}
public groupCurrentHoldingsByAttribute( public groupCurrentHoldingsByAttribute(
holdings: PortfolioPosition[], holdings: PortfolioPosition[],
attribute: keyof PortfolioPosition, attribute: keyof PortfolioPosition,
@ -82,5 +74,7 @@ export abstract class Rule<T extends RuleSettings> implements RuleInterface<T> {
PortfolioReportRule['configuration'] PortfolioReportRule['configuration']
>; >;
public abstract getName(): string;
public abstract getSettings(aUserSettings: UserSettings): T; public abstract getSettings(aUserSettings: UserSettings): T;
} }

7
apps/api/src/models/rules/account-cluster-risk/current-investment.ts

@ -15,8 +15,7 @@ export class AccountClusterRiskCurrentInvestment extends Rule<Settings> {
accounts: PortfolioDetails['accounts'] accounts: PortfolioDetails['accounts']
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: AccountClusterRiskCurrentInvestment.name, key: AccountClusterRiskCurrentInvestment.name
name: 'Investment'
}); });
this.accounts = accounts; this.accounts = accounts;
@ -88,6 +87,10 @@ export class AccountClusterRiskCurrentInvestment extends Rule<Settings> {
}; };
} }
public getName() {
return 'Investment';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/account-cluster-risk/single-account.ts

@ -11,8 +11,7 @@ export class AccountClusterRiskSingleAccount extends Rule<RuleSettings> {
accounts: PortfolioDetails['accounts'] accounts: PortfolioDetails['accounts']
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: AccountClusterRiskSingleAccount.name, key: AccountClusterRiskSingleAccount.name
name: 'Single Account'
}); });
this.accounts = accounts; this.accounts = accounts;
@ -38,6 +37,10 @@ export class AccountClusterRiskSingleAccount extends Rule<RuleSettings> {
return undefined; return undefined;
} }
public getName() {
return 'Single Account';
}
public getSettings({ xRayRules }: UserSettings): RuleSettings { public getSettings({ xRayRules }: UserSettings): RuleSettings {
return { return {
isActive: xRayRules?.[this.getKey()].isActive ?? true isActive: xRayRules?.[this.getKey()].isActive ?? true

7
apps/api/src/models/rules/asset-class-cluster-risk/equity.ts

@ -11,8 +11,7 @@ export class AssetClassClusterRiskEquity extends Rule<Settings> {
holdings: PortfolioPosition[] holdings: PortfolioPosition[]
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: AssetClassClusterRiskEquity.name, key: AssetClassClusterRiskEquity.name
name: 'Equity'
}); });
this.holdings = holdings; this.holdings = holdings;
@ -78,6 +77,10 @@ export class AssetClassClusterRiskEquity extends Rule<Settings> {
}; };
} }
public getName() {
return 'Equity';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/asset-class-cluster-risk/fixed-income.ts

@ -11,8 +11,7 @@ export class AssetClassClusterRiskFixedIncome extends Rule<Settings> {
holdings: PortfolioPosition[] holdings: PortfolioPosition[]
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: AssetClassClusterRiskFixedIncome.name, key: AssetClassClusterRiskFixedIncome.name
name: 'Fixed Income'
}); });
this.holdings = holdings; this.holdings = holdings;
@ -78,6 +77,10 @@ export class AssetClassClusterRiskFixedIncome extends Rule<Settings> {
}; };
} }
public getName() {
return 'Fixed Income';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/currency-cluster-risk/base-currency-current-investment.ts

@ -11,8 +11,7 @@ export class CurrencyClusterRiskBaseCurrencyCurrentInvestment extends Rule<Setti
holdings: PortfolioPosition[] holdings: PortfolioPosition[]
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: CurrencyClusterRiskBaseCurrencyCurrentInvestment.name, key: CurrencyClusterRiskBaseCurrencyCurrentInvestment.name
name: 'Investment: Base Currency'
}); });
this.holdings = holdings; this.holdings = holdings;
@ -68,6 +67,10 @@ export class CurrencyClusterRiskBaseCurrencyCurrentInvestment extends Rule<Setti
return undefined; return undefined;
} }
public getName() {
return 'Investment: Base Currency';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/currency-cluster-risk/current-investment.ts

@ -11,8 +11,7 @@ export class CurrencyClusterRiskCurrentInvestment extends Rule<Settings> {
holdings: PortfolioPosition[] holdings: PortfolioPosition[]
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: CurrencyClusterRiskCurrentInvestment.name, key: CurrencyClusterRiskCurrentInvestment.name
name: 'Investment'
}); });
this.holdings = holdings; this.holdings = holdings;
@ -73,6 +72,10 @@ export class CurrencyClusterRiskCurrentInvestment extends Rule<Settings> {
}; };
} }
public getName() {
return 'Investment';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/economic-market-cluster-risk/developed-markets.ts

@ -13,8 +13,7 @@ export class EconomicMarketClusterRiskDevelopedMarkets extends Rule<Settings> {
developedMarketsValueInBaseCurrency: number developedMarketsValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: EconomicMarketClusterRiskDevelopedMarkets.name, key: EconomicMarketClusterRiskDevelopedMarkets.name
name: 'Developed Markets'
}); });
this.currentValueInBaseCurrency = currentValueInBaseCurrency; this.currentValueInBaseCurrency = currentValueInBaseCurrency;
@ -67,6 +66,10 @@ export class EconomicMarketClusterRiskDevelopedMarkets extends Rule<Settings> {
}; };
} }
public getName() {
return 'Developed Markets';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/economic-market-cluster-risk/emerging-markets.ts

@ -13,8 +13,7 @@ export class EconomicMarketClusterRiskEmergingMarkets extends Rule<Settings> {
emergingMarketsValueInBaseCurrency: number emergingMarketsValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: EconomicMarketClusterRiskEmergingMarkets.name, key: EconomicMarketClusterRiskEmergingMarkets.name
name: 'Emerging Markets'
}); });
this.currentValueInBaseCurrency = currentValueInBaseCurrency; this.currentValueInBaseCurrency = currentValueInBaseCurrency;
@ -67,6 +66,10 @@ export class EconomicMarketClusterRiskEmergingMarkets extends Rule<Settings> {
}; };
} }
public getName() {
return 'Emerging Markets';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/emergency-fund/emergency-fund-setup.ts

@ -11,8 +11,7 @@ export class EmergencyFundSetup extends Rule<Settings> {
emergencyFund: number emergencyFund: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: EmergencyFundSetup.name, key: EmergencyFundSetup.name
name: 'Emergency Fund: Set up'
}); });
this.emergencyFund = emergencyFund; this.emergencyFund = emergencyFund;
@ -36,6 +35,10 @@ export class EmergencyFundSetup extends Rule<Settings> {
return undefined; return undefined;
} }
public getName() {
return 'Emergency Fund: Set up';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

10
apps/api/src/models/rules/fees/fee-ratio-initial-investment.ts

@ -17,8 +17,7 @@ export class FeeRatioInitialInvestment extends Rule<Settings> {
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
languageCode, languageCode,
key: FeeRatioInitialInvestment.name, key: FeeRatioInitialInvestment.name
name: 'Fee Ratio'
}); });
this.fees = fees; this.fees = fees;
@ -69,6 +68,13 @@ export class FeeRatioInitialInvestment extends Rule<Settings> {
}; };
} }
public getName() {
return this.i18nService.getTranslation({
id: 'rule.feeRatioInitialInvestment',
languageCode: this.getLanguageCode()
});
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/regional-market-cluster-risk/asia-pacific.ts

@ -14,8 +14,7 @@ export class RegionalMarketClusterRiskAsiaPacific extends Rule<Settings> {
asiaPacificValueInBaseCurrency: number asiaPacificValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: RegionalMarketClusterRiskAsiaPacific.name, key: RegionalMarketClusterRiskAsiaPacific.name
name: 'Asia-Pacific'
}); });
this.asiaPacificValueInBaseCurrency = asiaPacificValueInBaseCurrency; this.asiaPacificValueInBaseCurrency = asiaPacificValueInBaseCurrency;
@ -66,6 +65,10 @@ export class RegionalMarketClusterRiskAsiaPacific extends Rule<Settings> {
}; };
} }
public getName() {
return 'Asia-Pacific';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/regional-market-cluster-risk/emerging-markets.ts

@ -14,8 +14,7 @@ export class RegionalMarketClusterRiskEmergingMarkets extends Rule<Settings> {
emergingMarketsValueInBaseCurrency: number emergingMarketsValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: RegionalMarketClusterRiskEmergingMarkets.name, key: RegionalMarketClusterRiskEmergingMarkets.name
name: 'Emerging Markets'
}); });
this.currentValueInBaseCurrency = currentValueInBaseCurrency; this.currentValueInBaseCurrency = currentValueInBaseCurrency;
@ -68,6 +67,10 @@ export class RegionalMarketClusterRiskEmergingMarkets extends Rule<Settings> {
}; };
} }
public getName() {
return 'Emerging Markets';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/regional-market-cluster-risk/europe.ts

@ -14,8 +14,7 @@ export class RegionalMarketClusterRiskEurope extends Rule<Settings> {
europeValueInBaseCurrency: number europeValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: RegionalMarketClusterRiskEurope.name, key: RegionalMarketClusterRiskEurope.name
name: 'Europe'
}); });
this.currentValueInBaseCurrency = currentValueInBaseCurrency; this.currentValueInBaseCurrency = currentValueInBaseCurrency;
@ -66,6 +65,10 @@ export class RegionalMarketClusterRiskEurope extends Rule<Settings> {
}; };
} }
public getName() {
return 'Europe';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/regional-market-cluster-risk/japan.ts

@ -14,8 +14,7 @@ export class RegionalMarketClusterRiskJapan extends Rule<Settings> {
japanValueInBaseCurrency: number japanValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: RegionalMarketClusterRiskJapan.name, key: RegionalMarketClusterRiskJapan.name
name: 'Japan'
}); });
this.currentValueInBaseCurrency = currentValueInBaseCurrency; this.currentValueInBaseCurrency = currentValueInBaseCurrency;
@ -66,6 +65,10 @@ export class RegionalMarketClusterRiskJapan extends Rule<Settings> {
}; };
} }
public getName() {
return 'Japan';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

7
apps/api/src/models/rules/regional-market-cluster-risk/north-america.ts

@ -14,8 +14,7 @@ export class RegionalMarketClusterRiskNorthAmerica extends Rule<Settings> {
northAmericaValueInBaseCurrency: number northAmericaValueInBaseCurrency: number
) { ) {
super(exchangeRateDataService, { super(exchangeRateDataService, {
key: RegionalMarketClusterRiskNorthAmerica.name, key: RegionalMarketClusterRiskNorthAmerica.name
name: 'North America'
}); });
this.currentValueInBaseCurrency = currentValueInBaseCurrency; this.currentValueInBaseCurrency = currentValueInBaseCurrency;
@ -66,6 +65,10 @@ export class RegionalMarketClusterRiskNorthAmerica extends Rule<Settings> {
}; };
} }
public getName() {
return 'North America';
}
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,

1
apps/client/src/app/pages/i18n/i18n-page.html

@ -11,6 +11,7 @@
performance, portfolio, software, stock, trading, wealth, web3 performance, portfolio, software, stock, trading, wealth, web3
</li> </li>
<li i18n="@@myAccount">My Account</li> <li i18n="@@myAccount">My Account</li>
<li i18n="@@rule.feeRatioInitialInvestment">Fee Ratio</li>
<li i18n="@@rule.feeRatioInitialInvestment.false"> <li i18n="@@rule.feeRatioInitialInvestment.false">
The fees do exceed &#123;thresholdMax&#125;% of your initial investment The fees do exceed &#123;thresholdMax&#125;% of your initial investment
(&#123;feeRatio&#125;%) (&#123;feeRatio&#125;%)

Loading…
Cancel
Save