Browse Source

feat: extend RuleSettings with locale field and propagate through rule getSettings methods

pull/5802/head
Dibyendu Sahoo 2 weeks ago
parent
commit
f233a4c1f7
  1. 1
      apps/api/src/models/interfaces/rule-settings.interface.ts
  2. 3
      apps/api/src/models/rules/account-cluster-risk/current-investment.ts
  3. 5
      apps/api/src/models/rules/account-cluster-risk/single-account.ts
  4. 3
      apps/api/src/models/rules/asset-class-cluster-risk/equity.ts
  5. 3
      apps/api/src/models/rules/asset-class-cluster-risk/fixed-income.ts
  6. 5
      apps/api/src/models/rules/currency-cluster-risk/base-currency-current-investment.ts
  7. 3
      apps/api/src/models/rules/currency-cluster-risk/current-investment.ts
  8. 3
      apps/api/src/models/rules/economic-market-cluster-risk/developed-markets.ts
  9. 3
      apps/api/src/models/rules/economic-market-cluster-risk/emerging-markets.ts
  10. 5
      apps/api/src/models/rules/emergency-fund/emergency-fund-setup.ts
  11. 3
      apps/api/src/models/rules/fees/fee-ratio-initial-investment.ts
  12. 3
      apps/api/src/models/rules/liquidity/buying-power.ts
  13. 3
      apps/api/src/models/rules/regional-market-cluster-risk/asia-pacific.ts
  14. 3
      apps/api/src/models/rules/regional-market-cluster-risk/emerging-markets.ts
  15. 3
      apps/api/src/models/rules/regional-market-cluster-risk/europe.ts
  16. 3
      apps/api/src/models/rules/regional-market-cluster-risk/japan.ts
  17. 3
      apps/api/src/models/rules/regional-market-cluster-risk/north-america.ts

1
apps/api/src/models/interfaces/rule-settings.interface.ts

@ -1,3 +1,4 @@
export interface RuleSettings { export interface RuleSettings {
isActive: boolean; isActive: boolean;
locale: string;
} }

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

@ -121,10 +121,11 @@ export class AccountClusterRiskCurrentInvestment extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.5 thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.5
}; };
} }

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

@ -72,9 +72,10 @@ export class AccountClusterRiskSingleAccount extends Rule<RuleSettings> {
}); });
} }
public getSettings({ xRayRules }: UserSettings): RuleSettings { public getSettings({ locale, xRayRules }: UserSettings): RuleSettings {
return { return {
isActive: xRayRules?.[this.getKey()]?.isActive ?? true isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale
}; };
} }
} }

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

@ -109,10 +109,11 @@ export class AssetClassClusterRiskEquity extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.82, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.82,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.78 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.78
}; };

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

@ -109,10 +109,11 @@ export class AssetClassClusterRiskFixedIncome extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.22, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.22,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.18 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.18
}; };

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

@ -97,10 +97,11 @@ export class CurrencyClusterRiskBaseCurrencyCurrentInvestment extends Rule<Setti
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale
}; };
} }
} }

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

@ -98,10 +98,11 @@ export class CurrencyClusterRiskCurrentInvestment extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.5 thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.5
}; };
} }

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

@ -104,10 +104,11 @@ export class EconomicMarketClusterRiskDevelopedMarkets extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.72, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.72,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.68 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.68
}; };

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

@ -104,10 +104,11 @@ export class EconomicMarketClusterRiskEmergingMarkets extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.32, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.32,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.28 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.28
}; };

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

@ -59,10 +59,11 @@ export class EmergencyFundSetup extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale
}; };
} }
} }

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

@ -82,10 +82,11 @@ export class FeeRatioInitialInvestment extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.01 thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.01
}; };
} }

3
apps/api/src/models/rules/liquidity/buying-power.ts

@ -86,10 +86,11 @@ export class BuyingPower extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0
}; };
} }

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

@ -94,10 +94,11 @@ export class RegionalMarketClusterRiskAsiaPacific extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.03, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.03,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.02 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.02
}; };

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

@ -96,10 +96,11 @@ export class RegionalMarketClusterRiskEmergingMarkets extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.12, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.12,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.08 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.08
}; };

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

@ -94,10 +94,11 @@ export class RegionalMarketClusterRiskEurope extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.15, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.15,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.11 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.11
}; };

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

@ -94,10 +94,11 @@ export class RegionalMarketClusterRiskJapan extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.06, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.06,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.04 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.04
}; };

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

@ -94,10 +94,11 @@ export class RegionalMarketClusterRiskNorthAmerica extends Rule<Settings> {
}); });
} }
public getSettings({ baseCurrency, xRayRules }: UserSettings): Settings { public getSettings({ baseCurrency, locale, xRayRules }: UserSettings): Settings {
return { return {
baseCurrency, baseCurrency,
isActive: xRayRules?.[this.getKey()]?.isActive ?? true, isActive: xRayRules?.[this.getKey()]?.isActive ?? true,
locale,
thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.69, thresholdMax: xRayRules?.[this.getKey()]?.thresholdMax ?? 0.69,
thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.65 thresholdMin: xRayRules?.[this.getKey()]?.thresholdMin ?? 0.65
}; };

Loading…
Cancel
Save