From fd78f0816e70b708018bf95f5aeb760bbaa86cc3 Mon Sep 17 00:00:00 2001
From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
Date: Thu, 27 Aug 2026 22:08:15 +0200
Subject: [PATCH] Task/improve language localization of asset classes and asset
sub classes (#7736)
* Consolidate duplicated translations
* Update changelog
---
CHANGELOG.md | 6 ++++
apps/client/src/app/pages/i18n/i18n-page.html | 17 +---------
libs/ui/src/lib/i18n.ts | 32 +++++++++----------
3 files changed, 23 insertions(+), 32 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 803c8b967..dcf6a6da9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## Unreleased
+
+### Changed
+
+- Consolidated the duplicated translations of the asset classes and asset sub classes
+
## 3.62.0 - 2026-08-27
### Added
diff --git a/apps/client/src/app/pages/i18n/i18n-page.html b/apps/client/src/app/pages/i18n/i18n-page.html
index e3fedde9a..707c3a0b4 100644
--- a/apps/client/src/app/pages/i18n/i18n-page.html
+++ b/apps/client/src/app/pages/i18n/i18n-page.html
@@ -1,23 +1,8 @@
- - Alternative Investment
- - Commodity
- - Equity
- - Fixed Income
- - Liquidity
- - Real Estate
- - Bond
- - Cash
- - Collectible
+
- Commodity
- - Cryptocurrency
- - ETF
- - Loan
- - Mutual Fund
- - Precious Metal
- - Private Equity
- - Stock
-
Ghostfolio is a personal finance dashboard to keep track of your net
worth including cash, stocks, ETFs and cryptocurrencies across multiple
diff --git a/libs/ui/src/lib/i18n.ts b/libs/ui/src/lib/i18n.ts
index dce6fdb5b..5051c9aa5 100644
--- a/libs/ui/src/lib/i18n.ts
+++ b/libs/ui/src/lib/i18n.ts
@@ -49,24 +49,24 @@ const locales = {
VALUABLE: $localize`Valuable`,
// AssetClass (enum)
- ALTERNATIVE_INVESTMENT: $localize`Alternative Investment`,
- COMMODITY: $localize`Commodity`,
- EQUITY: $localize`Equity`,
- FIXED_INCOME: $localize`Fixed Income`,
- LIQUIDITY: $localize`Liquidity`,
- REAL_ESTATE: $localize`Real Estate`,
+ ALTERNATIVE_INVESTMENT: $localize`:@@assetClass.ALTERNATIVE_INVESTMENT:Alternative Investment`,
+ COMMODITY: $localize`:@@assetClass.COMMODITY:Commodity`,
+ EQUITY: $localize`:@@assetClass.EQUITY:Equity`,
+ FIXED_INCOME: $localize`:@@assetClass.FIXED_INCOME:Fixed Income`,
+ LIQUIDITY: $localize`:@@assetClass.LIQUIDITY:Liquidity`,
+ REAL_ESTATE: $localize`:@@assetClass.REAL_ESTATE:Real Estate`,
// AssetSubClass (enum)
- BOND: $localize`Bond`,
- CASH: $localize`Cash`,
- COLLECTIBLE: $localize`Collectible`,
- CRYPTOCURRENCY: $localize`Cryptocurrency`,
- ETF: $localize`ETF`,
- LOAN: $localize`Loan`,
- MUTUALFUND: $localize`Mutual Fund`,
- PRECIOUS_METAL: $localize`Precious Metal`,
- PRIVATE_EQUITY: $localize`Private Equity`,
- STOCK: $localize`Stock`,
+ BOND: $localize`:@@assetSubClass.BOND:Bond`,
+ CASH: $localize`:@@assetSubClass.CASH:Cash`,
+ COLLECTIBLE: $localize`:@@assetSubClass.COLLECTIBLE:Collectible`,
+ CRYPTOCURRENCY: $localize`:@@assetSubClass.CRYPTOCURRENCY:Cryptocurrency`,
+ ETF: $localize`:@@assetSubClass.ETF:ETF`,
+ LOAN: $localize`:@@assetSubClass.LOAN:Loan`,
+ MUTUALFUND: $localize`:@@assetSubClass.MUTUALFUND:Mutual Fund`,
+ PRECIOUS_METAL: $localize`:@@assetSubClass.PRECIOUS_METAL:Precious Metal`,
+ PRIVATE_EQUITY: $localize`:@@assetSubClass.PRIVATE_EQUITY:Private Equity`,
+ STOCK: $localize`:@@assetSubClass.STOCK:Stock`,
// Benchmark
ALL_TIME_HIGH: 'All time high',