feat: internationalization Japanese (recreated) (#5513)

japanese translation

---------

Co-authored-by: Max Peintner <max@caos.ch>
This commit is contained in:
tharuta
2023-03-22 15:30:46 +09:00
committed by GitHub
parent 9b41758af0
commit a8fe15829e
27 changed files with 3822 additions and 74 deletions

View File

@@ -267,15 +267,15 @@ export class AppComponent implements OnDestroy {
}
private setLanguage(): void {
this.translate.addLangs(['en', 'de', 'fr', 'it', 'pl', 'zh']);
this.translate.addLangs(['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh']);
this.translate.setDefaultLang('en');
this.authService.user.subscribe((userprofile) => {
if (userprofile) {
const cropped = navigator.language.split('-')[0] ?? 'en';
const fallbackLang = cropped.match(/en|de|fr|it|pl|zh/) ? cropped : 'en';
const fallbackLang = cropped.match(/de|en|fr|it|ja|pl|zh/) ? cropped : 'en';
const lang = userprofile?.human?.profile?.preferredLanguage.match(/en|de|fr|it|pl|zh/)
const lang = userprofile?.human?.profile?.preferredLanguage.match(/de|en|fr|it|ja|pl|zh/)
? userprofile.human.profile?.preferredLanguage
: fallbackLang;
this.translate.use(lang);

View File

@@ -4,6 +4,7 @@ import localeDe from '@angular/common/locales/de';
import localeEn from '@angular/common/locales/en';
import localeFr from '@angular/common/locales/fr';
import localeIt from '@angular/common/locales/it';
import localeJa from '@angular/common/locales/ja';
import localePl from '@angular/common/locales/pl';
import localeZh from '@angular/common/locales/zh';
import { APP_INITIALIZER, NgModule } from '@angular/core';
@@ -61,16 +62,18 @@ import { ToastService } from './services/toast.service';
registerLocaleData(localeDe);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/de.json'));
registerLocaleData(localeZh);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/zh.json'));
registerLocaleData(localeEn);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/en.json'));
registerLocaleData(localeFr);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/fr.json'));
registerLocaleData(localeIt);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/it.json'));
registerLocaleData(localeJa);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/ja.json'));
registerLocaleData(localePl);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/pl.json'));
registerLocaleData(localeEn);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/en.json'));
registerLocaleData(localeZh);
i18nIsoCountries.registerLocale(require('i18n-iso-countries/langs/zh.json'));
export class WebpackTranslateLoader implements TranslateLoader {
getTranslation(lang: string): Observable<any> {

View File

@@ -109,7 +109,7 @@ export class LoginTextsComponent implements OnInit, OnDestroy {
@Input() public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT;
public KeyNamesArray: string[] = KeyNamesArray;
public LOCALES: string[] = ['en', 'de', 'it', 'fr', 'pl', 'zh'];
public LOCALES: string[] = ['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh'];
private sub: Subscription = new Subscription();

View File

@@ -441,7 +441,7 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
};
public locale: string = 'en';
public LOCALES: string[] = ['en', 'de', 'it', 'fr', 'pl', 'zh'];
public LOCALES: string[] = ['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh'];
private sub: Subscription = new Subscription();
public canWrite$: Observable<boolean> = this.authService.isAllowed([
this.serviceType === PolicyComponentServiceType.ADMIN

View File

@@ -45,7 +45,7 @@ export class OrgCreateComponent {
public pwdForm?: UntypedFormGroup;
public genders: Gender[] = [Gender.GENDER_FEMALE, Gender.GENDER_MALE, Gender.GENDER_UNSPECIFIED];
public languages: string[] = ['de', 'en', 'it', 'fr', 'pl', 'zh'];
public languages: string[] = ['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh'];
public policy?: PasswordComplexityPolicy.AsObject;
public usePassword: boolean = false;

View File

@@ -33,7 +33,7 @@ import {
export class UserCreateComponent implements OnInit, OnDestroy {
public user: AddHumanUserRequest.AsObject = new AddHumanUserRequest().toObject();
public genders: Gender[] = [Gender.GENDER_FEMALE, Gender.GENDER_MALE, Gender.GENDER_UNSPECIFIED];
public languages: string[] = ['de', 'en', 'it', 'fr', 'pl', 'zh'];
public languages: string[] = ['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh'];
public selected: CountryPhoneCode | undefined;
public countryPhoneCodes: CountryPhoneCode[] = [];
public userForm!: UntypedFormGroup;

View File

@@ -33,7 +33,7 @@ import { EditDialogComponent, EditDialogType } from './edit-dialog/edit-dialog.c
export class AuthUserDetailComponent implements OnDestroy {
public user?: User.AsObject;
public genders: Gender[] = [Gender.GENDER_MALE, Gender.GENDER_FEMALE, Gender.GENDER_DIVERSE];
public languages: string[] = ['de', 'en', 'fr', 'it', 'pl', 'zh'];
public languages: string[] = ['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh'];
private subscription: Subscription = new Subscription();

View File

@@ -44,7 +44,7 @@ export class UserDetailComponent implements OnInit {
public user!: User.AsObject;
public metadata: Metadata.AsObject[] = [];
public genders: Gender[] = [Gender.GENDER_MALE, Gender.GENDER_FEMALE, Gender.GENDER_DIVERSE];
public languages: string[] = ['de', 'en', 'it', 'fr', 'pl', 'zh'];
public languages: string[] = ['de', 'en', 'it', 'fr', 'ja', 'pl', 'zh'];
public ChangeType: any = ChangeType;

View File

@@ -22,7 +22,7 @@ export class LocalizedDatePipe implements PipeTransform {
return moment(value).format(`${format}, HH:mm`);
}
} else {
const lang = ['de', 'en', 'fr', 'it', 'pl', 'zh'].includes(this.translateService.currentLang)
const lang = ['de', 'en', 'fr', 'it', 'ja', 'pl', 'zh'].includes(this.translateService.currentLang)
? this.translateService.currentLang
: 'en';
const datePipe: DatePipe = new DatePipe(lang);

View File

@@ -1012,10 +1012,11 @@
"LANGUAGE": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"SMTP": {
"TITLE": "SMTP Einstellungen",
@@ -1204,10 +1205,11 @@
"LOCALES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"KEYS": {
"emailVerificationDoneText": "Email Verification erfolgreich",
@@ -2031,10 +2033,11 @@
"LANGUAGES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"MEMBER": {
"ADD": "Manager hinzufügen",

View File

@@ -1012,11 +1012,12 @@
"DEFAULTLANGUAGE": "Default Language",
"LANGUAGE": {
"de": "Deutsch",
"it": "Italiano",
"en": "English",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"SMTP": {
"TITLE": "SMTP Settings",
@@ -1205,10 +1206,11 @@
"LOCALES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"KEYS": {
"emailVerificationDoneText": "Email verification done",
@@ -2028,10 +2030,11 @@
"LANGUAGES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"MEMBER": {
"ADD": "Add a Manager",

View File

@@ -1012,10 +1012,11 @@
"LANGUAGE": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"SMTP": {
"TITLE": "Paramètres SMTP",
@@ -1204,10 +1205,11 @@
"LOCALES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"KEYS": {
"emailVerificationDoneText": "Vérification de l'email effectuée",
@@ -2020,10 +2022,11 @@
"LANGUAGES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"MEMBER": {
"ADD": "Ajouter un manager",

View File

@@ -1013,10 +1013,11 @@
"LANGUAGE": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"SMTP": {
"TITLE": "Impostazioni SMTP",
@@ -1205,10 +1206,11 @@
"LOCALES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"KEYS": {
"emailVerificationDoneText": "Verifica dell'e-mail terminata con successo.",
@@ -2033,10 +2035,11 @@
"LANGUAGES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"MEMBER": {
"ADD": "Aggiungi un manager",

File diff suppressed because it is too large Load Diff

View File

@@ -1011,11 +1011,12 @@
"DEFAULTLANGUAGE": "Domyślny język",
"LANGUAGE": {
"de": "Deutsch",
"it": "Italiano",
"en": "English",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"SMTP": {
"TITLE": "Ustawienia SMTP",
@@ -1204,10 +1205,11 @@
"LOCALES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"KEYS": {
"emailVerificationDoneText": "Weryfikacja adresu e-mail zakończona",
@@ -2032,10 +2034,11 @@
"LANGUAGES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"MEMBER": {
"ADD": "Dodaj managera",

View File

@@ -1011,11 +1011,12 @@
"DEFAULTLANGUAGE": "默认语言",
"LANGUAGE": {
"de": "Deutsch",
"it": "Italiano",
"en": "English",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"SMTP": {
"TITLE": "SMTP 设置",
@@ -1203,10 +1204,11 @@
"LOCALES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"KEYS": {
"emailVerificationDoneText": "电子邮件验证完成",
@@ -2019,10 +2021,11 @@
"LANGUAGES": {
"de": "Deutsch",
"en": "English",
"it": "Italiano",
"fr": "Français",
"zh": "简体中文",
"pl": "Polski"
"it": "Italiano",
"ja": "日本語",
"pl": "Polski",
"zh": "简体中文"
},
"MEMBER": {
"ADD": "添加管理者",