Browse Source

Feature/set up language localization for Korean (ko) (#6136)

* Set up language localization for Korean (ko)

* Update changelog
main
yaro 23 hours ago
committed by GitHub
parent
commit
825a366367
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 6
      CHANGELOG.md
  2. 15
      apps/client/project.json
  3. 15
      apps/client/src/app/components/footer/footer.component.html
  4. 1
      apps/client/src/app/components/user-account-settings/user-account-settings.component.ts
  5. 13
      apps/client/src/app/components/user-account-settings/user-account-settings.html
  6. 5
      apps/client/src/app/pages/features/features-page.html
  7. 5
      apps/client/src/app/pages/resources/personal-finance-tools/product-page.component.ts
  8. 8665
      apps/client/src/locales/messages.ko.xlf
  9. 1
      libs/common/src/lib/config.ts
  10. 17
      libs/common/src/lib/helper.ts

6
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
### Added
- Set up the language localization for Korean (`ko`)
## 2.229.0 - 2026-01-11
### Changed

15
apps/client/project.json

@ -26,6 +26,10 @@
"baseHref": "/it/",
"translation": "apps/client/src/locales/messages.it.xlf"
},
"ko": {
"baseHref": "/ko/",
"translation": "apps/client/src/locales/messages.ko.xlf"
},
"nl": {
"baseHref": "/nl/",
"translation": "apps/client/src/locales/messages.nl.xlf"
@ -110,6 +114,10 @@
"baseHref": "/it/",
"localize": ["it"]
},
"development-ko": {
"baseHref": "/ko/",
"localize": ["ko"]
},
"development-nl": {
"baseHref": "/nl/",
"localize": ["nl"]
@ -213,6 +221,9 @@
"sslKey": "apps/client/localhost.pem"
},
"configurations": {
"development-ca": {
"buildTarget": "client:build:development-ca"
},
"development-de": {
"buildTarget": "client:build:development-de"
},
@ -228,6 +239,9 @@
"development-it": {
"buildTarget": "client:build:development-it"
},
"development-ko": {
"buildTarget": "client:build:development-ko"
},
"development-nl": {
"buildTarget": "client:build:development-nl"
},
@ -264,6 +278,7 @@
"messages.es.xlf",
"messages.fr.xlf",
"messages.it.xlf",
"messages.ko.xlf",
"messages.nl.xlf",
"messages.pl.xlf",
"messages.pt.xlf",

15
apps/client/src/app/components/footer/footer.component.html

@ -122,7 +122,9 @@
</li>
-->
<li>
<a href="../zh" title="Ghostfolio in Chinese">Chinese</a>
<a href="../zh" title="Ghostfolio in Chinese (简体中文)"
>Chinese (简体中文)</a
>
</li>
<li>
<a href="../de" title="Ghostfolio in Deutsch">Deutsch</a>
@ -139,6 +141,13 @@
<li>
<a href="../it" title="Ghostfolio in Italiano">Italiano</a>
</li>
<!--
<li>
<a href="../ko" title="Ghostfolio in Korean (한국어)"
>Korean (한국어)</a
>
</li>
-->
<li>
<a href="../nl" title="Ghostfolio in Nederlands">Nederlands</a>
</li>
@ -153,7 +162,9 @@
</li>
<!--
<li>
<a href="../uk" title="Ghostfolio in Українська">Українська</a>
<a href="../uk" title="Ghostfolio in Ukrainian (Українська)"
>Ukrainian (Українська)</a
>
</li>
-->
</ul>

1
apps/client/src/app/components/user-account-settings/user-account-settings.component.ts

@ -89,6 +89,7 @@ export class GfUserAccountSettingsComponent implements OnDestroy, OnInit {
'es',
'fr',
'it',
'ko',
'nl',
'pl',
'pt',

13
apps/client/src/app/components/user-account-settings/user-account-settings.html

@ -87,7 +87,8 @@
>
}
<mat-option value="zh"
>Chinese (<ng-container i18n>Community</ng-container
>Chinese / 简体中文 (<ng-container i18n
>Community</ng-container
>)</mat-option
>
<mat-option value="es"
@ -102,6 +103,13 @@
>Italiano (<ng-container i18n>Community</ng-container
>)</mat-option
>
@if (user?.settings?.isExperimentalFeatures) {
<mat-option value="ko"
>Korean / 한국어 (<ng-container i18n
>Community</ng-container
>)</mat-option
>
}
<mat-option value="nl"
>Nederlands (<ng-container i18n>Community</ng-container
>)</mat-option
@ -120,7 +128,8 @@
>
@if (user?.settings?.isExperimentalFeatures) {
<mat-option value="uk"
>Українська (<ng-container i18n>Community</ng-container
>Ukrainian / Українська (<ng-container i18n
>Community</ng-container
>)</mat-option
>
}

5
apps/client/src/app/pages/features/features-page.html

@ -260,8 +260,9 @@
<p class="m-0">
Use Ghostfolio in multiple languages: English,
<!-- Català, -->
Chinese, Dutch, French, German, Italian, Polish, Portuguese,
Spanish and Turkish
Chinese, Dutch, French, German, Italian,
<!-- Korean, -->
Polish, Portuguese, Spanish and Turkish
<!-- and Ukrainian -->
are currently supported.
</p>

5
apps/client/src/app/pages/resources/personal-finance-tools/product-page.component.ts

@ -43,15 +43,16 @@ export class GfProductPageComponent implements OnInit {
isOpenSource: true,
key: 'ghostfolio',
languages: [
'Chinese (简体中文)',
'Deutsch',
'English',
'Español',
'Français',
'Italiano',
'Korean (한국어)',
'Nederlands',
'Português',
'Türkçe',
'简体中文'
'Türkçe'
],
name: 'Ghostfolio',
origin: $localize`Switzerland`,

8665
apps/client/src/locales/messages.ko.xlf

File diff suppressed because it is too large

1
libs/common/src/lib/config.ts

@ -193,6 +193,7 @@ export const SUPPORTED_LANGUAGE_CODES = [
'es',
'fr',
'it',
'ko',
'nl',
'pl',
'pt',

17
libs/common/src/lib/helper.ts

@ -11,7 +11,20 @@ import {
parseISO,
subDays
} from 'date-fns';
import { ca, de, es, fr, it, nl, pl, pt, tr, uk, zhCN } from 'date-fns/locale';
import {
ca,
de,
es,
fr,
it,
ko,
nl,
pl,
pt,
tr,
uk,
zhCN
} from 'date-fns/locale';
import { get, isNil, isString } from 'lodash';
import {
@ -185,6 +198,8 @@ export function getDateFnsLocale(aLanguageCode: string) {
return fr;
} else if (aLanguageCode === 'it') {
return it;
} else if (aLanguageCode === 'ko') {
return ko;
} else if (aLanguageCode === 'nl') {
return nl;
} else if (aLanguageCode === 'pl') {

Loading…
Cancel
Save