mirror of
https://github.com/zitadel/zitadel.git
synced 2025-02-28 16:37:24 +00:00
feat: internationalization Chinese (#4222)
* feat: internationalization chinese * typo: optimize the semantic expression of copywriting * Update internal/api/ui/login/static/i18n/zh.yaml Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/it.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/en.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/zh.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update internal/api/ui/login/static/i18n/zh.yaml Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/it.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/it.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/fr.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/en.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/en.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/fr.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * Update console/src/assets/i18n/fr.json Co-authored-by: Silvan <silvan.reusser@gmail.com> * minor: add Chinese to other language file * Update console/src/app/app.module.ts Co-authored-by: Max Peintner <max@caos.ch> * Update console/src/app/app.module.ts Co-authored-by: Max Peintner <max@caos.ch> Co-authored-by: Silvan <silvan.reusser@gmail.com> Co-authored-by: Max Peintner <max@caos.ch>
This commit is contained in:
parent
5052aa1c12
commit
8ab85afd15
@ -271,16 +271,16 @@ export class AppComponent implements OnDestroy {
|
||||
}
|
||||
|
||||
private setLanguage(): void {
|
||||
this.translate.addLangs(['en', 'de']);
|
||||
this.translate.addLangs(['en', 'de', 'zh']);
|
||||
this.translate.setDefaultLang('en');
|
||||
|
||||
this.authService.user.subscribe((userprofile) => {
|
||||
if (userprofile) {
|
||||
// this.user = userprofile;
|
||||
const cropped = navigator.language.split('-')[0] ?? 'en';
|
||||
const fallbackLang = cropped.match(/en|de|it/) ? cropped : 'en';
|
||||
const fallbackLang = cropped.match(/en|de|it|zh/) ? cropped : 'en';
|
||||
|
||||
const lang = userprofile?.human?.profile?.preferredLanguage.match(/en|de|it/)
|
||||
const lang = userprofile?.human?.profile?.preferredLanguage.match(/en|de|it|zh/)
|
||||
? userprofile.human.profile?.preferredLanguage
|
||||
: fallbackLang;
|
||||
this.translate.use(lang);
|
||||
|
@ -1,6 +1,10 @@
|
||||
import { CommonModule, registerLocaleData } from '@angular/common';
|
||||
import { HttpClientModule } from '@angular/common/http';
|
||||
import localeDe from '@angular/common/locales/de';
|
||||
import localeZh from '@angular/common/locales/zh';
|
||||
import localeFr from '@angular/common/locales/fr';
|
||||
import localeIt from '@angular/common/locales/it';
|
||||
import localeEn from '@angular/common/locales/en';
|
||||
import { APP_INITIALIZER, NgModule } from '@angular/core';
|
||||
import { MatNativeDateModule } from '@angular/material/core';
|
||||
import { MatDialogModule } from '@angular/material/dialog';
|
||||
@ -55,6 +59,10 @@ import { ThemeService } from './services/theme.service';
|
||||
import { ToastService } from './services/toast.service';
|
||||
|
||||
registerLocaleData(localeDe);
|
||||
registerLocaleData(localeZh);
|
||||
registerLocaleData(localeFr);
|
||||
registerLocaleData(localeIt);
|
||||
registerLocaleData(localeEn);
|
||||
|
||||
export class WebpackTranslateLoader implements TranslateLoader {
|
||||
getTranslation(lang: string): Observable<any> {
|
||||
|
@ -25,7 +25,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', 'it'];
|
||||
public languages: string[] = ['de', 'en', 'fr', 'it', 'zh'];
|
||||
|
||||
private subscription: Subscription = new Subscription();
|
||||
|
||||
|
@ -22,11 +22,8 @@ export class LocalizedDatePipe implements PipeTransform {
|
||||
return moment(value).format(`${format}, HH:mm`);
|
||||
}
|
||||
} else {
|
||||
const lang = this.translateService.currentLang === ('de' || 'it' || 'en') ? this.translateService.currentLang : 'en';
|
||||
const datePipe: DatePipe = new DatePipe(
|
||||
lang,
|
||||
// ['de', 'it', 'en'].includes(this.translateService.currentLang) ? this.translateService.currentLang : 'en',
|
||||
);
|
||||
const lang = ['de', 'en', 'fr', 'it', 'zh'].includes(this.translateService.currentLang) ? this.translateService.currentLang : 'en';
|
||||
const datePipe: DatePipe = new DatePipe(lang);
|
||||
return datePipe.transform(value, pattern ?? 'mediumDate');
|
||||
}
|
||||
}
|
||||
|
@ -892,7 +892,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "Chinese"
|
||||
},
|
||||
"SMTP": {
|
||||
"TITLE": "SMTP Einstellungen",
|
||||
@ -1072,7 +1073,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "Chinese"
|
||||
},
|
||||
"KEYS": {
|
||||
"emailVerificationDoneText": "Email Verification erfolgreich",
|
||||
@ -1817,7 +1819,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "Chinese"
|
||||
},
|
||||
"MEMBER": {
|
||||
"ADD": "Manager hinzufügen",
|
||||
|
@ -892,7 +892,8 @@
|
||||
"de": "Deutsch",
|
||||
"it": "Italiano",
|
||||
"en": "English",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"SMTP": {
|
||||
"TITLE": "SMTP Settings",
|
||||
@ -1072,7 +1073,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"KEYS": {
|
||||
"emailVerificationDoneText": "Email verification done",
|
||||
@ -1520,9 +1522,9 @@
|
||||
"DEACTIVATE": "Deactivate",
|
||||
"ACTIVATE": "Activate",
|
||||
"DELETE": "Delete",
|
||||
"DELETE_TITLE": "Delete Idp",
|
||||
"DELETE_TITLE": "Delete IDP",
|
||||
"DELETE_DESCRIPTION": "You are about to delete an identity provider. The resulting changes are irrevocable. Do you really want to do this?",
|
||||
"DELETE_SELECTION_TITLE": "Delete Idp",
|
||||
"DELETE_SELECTION_TITLE": "Delete IDP",
|
||||
"DELETE_SELECTION_DESCRIPTION": "You are about to delete an identity provider. The resulting changes are irrevocable. Do you really want to do this?",
|
||||
"EMPTY": "No IDP available",
|
||||
"OIDC": {
|
||||
@ -1817,7 +1819,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"MEMBER": {
|
||||
"ADD": "Add a Manager",
|
||||
|
@ -892,7 +892,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"SMTP": {
|
||||
"TITLE": "Paramètres SMTP",
|
||||
@ -1072,7 +1073,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"KEYS": {
|
||||
"emailVerificationDoneText": "Vérification de l'email effectuée",
|
||||
@ -1817,7 +1819,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"MEMBER": {
|
||||
"ADD": "Ajouter un manager",
|
||||
|
@ -892,7 +892,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"SMTP": {
|
||||
"TITLE": "Impostazioni SMTP",
|
||||
@ -1072,7 +1073,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"KEYS": {
|
||||
"emailVerificationDoneText": "Verifica dell'e-mail terminata con successo.",
|
||||
@ -1817,7 +1819,8 @@
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"it": "Italiano",
|
||||
"fr": "Français"
|
||||
"fr": "Français",
|
||||
"zh": "简体中文"
|
||||
},
|
||||
"MEMBER": {
|
||||
"ADD": "Aggiungi un manager",
|
||||
|
1895
console/src/assets/i18n/zh.json
Normal file
1895
console/src/assets/i18n/zh.json
Normal file
File diff suppressed because it is too large
Load Diff
@ -37,6 +37,7 @@ ZITADEL is available in the following languages
|
||||
- German (de)
|
||||
- Italian (it)
|
||||
- French (fr)
|
||||
- 简体中文(zh)
|
||||
|
||||
A language is displayed based on your agent's language header. The default language is English.
|
||||
|
||||
|
@ -209,6 +209,7 @@ RegistrationUser:
|
||||
English: English
|
||||
Italian: Italiano
|
||||
French: Français
|
||||
Chinese: 简体中文
|
||||
GenderLabel: Geschlecht
|
||||
Female: weiblich
|
||||
Male: männlich
|
||||
|
@ -209,6 +209,7 @@ RegistrationUser:
|
||||
English: English
|
||||
Italian: Italiano
|
||||
French: Français
|
||||
Chinese: 简体中文
|
||||
GenderLabel: Gender
|
||||
Female: Female
|
||||
Male: Male
|
||||
|
@ -209,6 +209,7 @@ RegistrationUser:
|
||||
English: English
|
||||
Italian: Italiano
|
||||
French: Français
|
||||
Chinese: 简体中文
|
||||
GenderLabel: Genre
|
||||
Female: Femme
|
||||
Male: Homme
|
||||
|
@ -211,6 +211,7 @@ RegistrationUser:
|
||||
French: Français
|
||||
GenderLabel: Genere
|
||||
Female: Femminile
|
||||
Chinese: 简体中文
|
||||
Male: Maschile
|
||||
Diverse: diverso / X
|
||||
PasswordLabel: Password
|
||||
|
377
internal/api/ui/login/static/i18n/zh.yaml
Normal file
377
internal/api/ui/login/static/i18n/zh.yaml
Normal file
@ -0,0 +1,377 @@
|
||||
Login:
|
||||
Title: 欢迎回来!
|
||||
Description: 输入您的登录数据。
|
||||
TitleLinking: 登录以进行用户链接
|
||||
DescriptionLinking: 输入您的登录数据以将您的外部用户与 ZITADEL 用户关联。
|
||||
LoginNameLabel: 登录名
|
||||
UsernamePlaceHolder: 用户名
|
||||
LoginnamePlaceHolder: username@domain
|
||||
ExternalUserDescription: 使用外部用户登录。
|
||||
MustBeMemberOfOrg: 用户必须是 {{.OrgName}} 组织的成员。
|
||||
RegisterButtonText: 注册
|
||||
NextButtonText: 继续
|
||||
|
||||
SelectAccount:
|
||||
Title: 选择账户
|
||||
Description: 使用您的 ZITADEL 帐户
|
||||
TitleLinking: 选择用于用户链接的帐户
|
||||
DescriptionLinking: 选择您的帐户以与您的外部用户关联。
|
||||
OtherUser: 其他用户
|
||||
SessionState0: 启用
|
||||
SessionState1: 停用
|
||||
MustBeMemberOfOrg: 用户必须是 {{.OrgName}} 组织的成员。
|
||||
|
||||
Password:
|
||||
Title: 密码
|
||||
Description: 输入您的登录数据。
|
||||
PasswordLabel: 密码
|
||||
MinLength: 密码
|
||||
HasUppercase: 大写字母
|
||||
HasLowercase: 小写字母
|
||||
HasNumber: 数字
|
||||
HasSymbol: 符号
|
||||
Confirmation: 确认匹配
|
||||
ResetLinkText: 重设密码
|
||||
BackButtonText: 后退
|
||||
NextButtonText: 继续
|
||||
|
||||
UsernameChange:
|
||||
Title: 更改用户名
|
||||
Description: 设置您的新用户名
|
||||
UsernameLabel: 用户名
|
||||
CancelButtonText: 取消
|
||||
NextButtonText: 继续
|
||||
|
||||
UsernameChangeDone:
|
||||
Title: 用户名已更改
|
||||
Description: 您的用户名已成功更改。
|
||||
NextButtonText: 继续
|
||||
|
||||
InitPassword:
|
||||
Title: 设置密码
|
||||
Description: 您将到一个验证码,您必须在下面输入该验证码以设置您的新密码。
|
||||
CodeLabel: 验证码
|
||||
NewPasswordLabel: 新密码
|
||||
NewPasswordConfirmLabel: 确认密码
|
||||
ResendButtonText: 重新发送
|
||||
NextButtonText: 继续
|
||||
|
||||
InitPasswordDone:
|
||||
Title: 密码设置
|
||||
Description: 密码设置成功
|
||||
NextButtonText: 继续
|
||||
CancelButtonText: 取消
|
||||
|
||||
InitUser:
|
||||
Title: 激活用户
|
||||
Description: 您将收到一个验证码,您必须在下面输入该验证码,以验证您的电子邮件并设置您的新密码。
|
||||
CodeLabel: 验证码
|
||||
NewPasswordLabel: 新密码
|
||||
NewPasswordConfirmLabel: 确认密码
|
||||
NextButtonText: 继续
|
||||
ResendButtonText: 重新发送
|
||||
|
||||
InitUserDone:
|
||||
Title: 用户已激活
|
||||
Description: 邮箱验证和密码设置成功
|
||||
NextButtonText: 继续
|
||||
CancelButtonText: 取消
|
||||
|
||||
InitMFAPrompt:
|
||||
Title: 多因素身份认证设置
|
||||
Description: 您想设置多因素身份认证吗?
|
||||
Provider0: OTP(一次性密码)
|
||||
Provider1: U2F(通用两步验证)
|
||||
NextButtonText: 继续
|
||||
SkipButtonText: 跳过
|
||||
|
||||
InitMFAOTP:
|
||||
Title: 多因素验证
|
||||
Description: 验证您的多因素身份认证。
|
||||
OTPDescription: 使用您的身份验证器应用程序(例如 Google Authenticator)扫描代码或复制密码并在下方插入生成的代码。
|
||||
SecretLabel: 秘钥
|
||||
CodeLabel: 验证码
|
||||
NextButtonText: 继续
|
||||
CancelButtonText: 取消
|
||||
|
||||
InitMFAU2F:
|
||||
Title: 多因素身份认证设置 U2F / WebAuthN
|
||||
Description: 通过提供名称添加您的令牌,然后单击下面的“注册令牌”按钮。
|
||||
TokenNameLabel: 令牌/机器的名称
|
||||
NotSupported: 您的浏览器不支持 WebAuthN。请确保它是最新的或使用其他版本(例如 Chrome、Safari、Firefox)
|
||||
RegisterTokenButtonText: 注册令牌
|
||||
ErrorRetry: 重试、创建新挑战码或选择不同的方法。
|
||||
|
||||
InitMFADone:
|
||||
Title: 多因素身份认证验证完成
|
||||
Description: 多因素验证成功完成。必须在每次登录时输入多因素身份认证。
|
||||
NextButtonText: 继续
|
||||
CancelButtonText: 取消
|
||||
|
||||
MFAProvider:
|
||||
Provider0: OTP(一次性密码)
|
||||
Provider1: U2F(通用第二因素身份认证)
|
||||
ChooseOther: 或选择其他选项
|
||||
|
||||
VerifyMFAOTP:
|
||||
Title: 验证多因素
|
||||
Description: 验证您的多因素
|
||||
CodeLabel: 验证码
|
||||
NextButtonText: 继续
|
||||
|
||||
VerifyMFAU2F:
|
||||
Title: 多因素验证
|
||||
Description: 验证您的多因素 U2F / WebAuthN 令牌
|
||||
NotSupported: 您的浏览器不支持 WebAuthN。确保您使用的是最新版本或将您的浏览器更改为受支持的版本(Chrome、Safari、Firefox)
|
||||
ErrorRetry: 重试、创建新请求或选择其他方法。
|
||||
ValidateTokenButtonText: 验证令牌
|
||||
|
||||
Passwordless:
|
||||
Title: 无密码登录
|
||||
Description: 验证您的令牌
|
||||
NotSupported: 您的浏览器不支持 WebAuthN。请确保它是最新的或使用其他版本(例如 Chrome、Safari、Firefox)
|
||||
ErrorRetry: 重试、创建新挑战码或选择不同的方法。
|
||||
LoginWithPwButtonText: 使用密码登录
|
||||
ValidateTokenButtonText: 验证令牌
|
||||
|
||||
PasswordlessPrompt:
|
||||
Title: 无密码登录设置
|
||||
Description: 您想设置无密码登录吗?
|
||||
DescriptionInit: 您需要设置无密码登录,使用您提供的链接来注册您的设备。
|
||||
PasswordlessButtonText: 去设置无密码登录
|
||||
NextButtonText: 继续
|
||||
SkipButtonText: 跳过
|
||||
|
||||
PasswordlessRegistration:
|
||||
Title: 无密码设置
|
||||
Description: 通过提供名称添加您的令牌,然后单击下面的“注册令牌”按钮。
|
||||
TokenNameLabel: 令牌/机器的名称
|
||||
NotSupported: 您的浏览器不支持 WebAuthN。请确保它是最新的或使用其他版本(例如 Chrome、Safari、Firefox)
|
||||
RegisterTokenButtonText: 注册令牌
|
||||
ErrorRetry: 重试、创建新挑战码或选择不同的方法。
|
||||
|
||||
PasswordlessRegistrationDone:
|
||||
Title: 无密码登录设置完成
|
||||
Description: 已成功添加无密码令牌。
|
||||
DescriptionClose: 您现在可以关闭此窗口
|
||||
NextButtonText: 继续
|
||||
CancelButtonText: 取消
|
||||
|
||||
PasswordChange:
|
||||
Title: 更改密码
|
||||
Description: 更改您的密码。输入您的旧密码和新密码。
|
||||
OldPasswordLabel: 旧密码
|
||||
NewPasswordLabel: 新密码
|
||||
NewPasswordConfirmLabel: 确认密码
|
||||
CancelButtonText: 取消
|
||||
NextButtonText: 继续
|
||||
|
||||
PasswordChangeDone:
|
||||
Title: 更改密码
|
||||
Description: 您的密码已成功更改。
|
||||
NextButtonText: 继续
|
||||
|
||||
PasswordResetDone:
|
||||
Title: 重置链
|
||||
Description: 请检查您的电子邮件以重置您的密码。
|
||||
NextButtonText: 继续
|
||||
|
||||
EmailVerification:
|
||||
Title: 电子邮件验证
|
||||
Description: 我们已向您发送一封电子邮件以验证您的地址。请在下面的表格中输入验证码。
|
||||
CodeLabel: 验证码
|
||||
NextButtonText: 继续
|
||||
ResendButtonText: 重新发送
|
||||
|
||||
EmailVerificationDone:
|
||||
Title: 电子邮件验证
|
||||
Description: 您的电子邮件地址已成功验证。
|
||||
NextButtonText: 继续
|
||||
CancelButtonText: 取消
|
||||
LoginButtonText: 登录
|
||||
|
||||
RegisterOption:
|
||||
Title: 注册选项
|
||||
Description: 选择您的注册方式
|
||||
RegisterUsernamePasswordButtonText: 使用用户名密码
|
||||
ExternalLoginDescription: 或使用外部身份提供者
|
||||
|
||||
RegistrationUser:
|
||||
Title: 注册
|
||||
Description: 输入您的用户数据。您的电子邮件地址将用作登录名。
|
||||
DescriptionOrgRegister: 输入您的用户数据。
|
||||
EmailLabel: 电子邮箱
|
||||
UsernameLabel: 用户名
|
||||
FirstnameLabel: 名
|
||||
LastnameLabel: 姓
|
||||
LanguageLabel: 语言
|
||||
German: Deutsch
|
||||
English: English
|
||||
Italian: Italiano
|
||||
French: Français
|
||||
Chinese: 简体中文
|
||||
GenderLabel: 性别
|
||||
Female: 女性
|
||||
Male: 男性
|
||||
Diverse: 其他 / X
|
||||
PasswordLabel: 密码
|
||||
PasswordConfirmLabel: 确认密码
|
||||
TosAndPrivacyLabel: 条款和条款
|
||||
TosConfirm: 我接受
|
||||
TosLinkText: 服务条款
|
||||
TosConfirmAnd: 和
|
||||
PrivacyLinkText: 隐私政策
|
||||
ExternalLogin: 使用外部身份提供者注册
|
||||
BackButtonText: 返回
|
||||
NextButtonText: 继续
|
||||
|
||||
ExternalRegistrationUserOverview:
|
||||
Title: 外部用户注册
|
||||
Description: 我们已从所选提供商处获取您的用户详细信息。您现在可以更改或完善它们。
|
||||
EmailLabel: 电子邮件
|
||||
UsernameLabel: 用户名
|
||||
FirstnameLabel: 名
|
||||
LastnameLabel: 姓
|
||||
NicknameLabel: 昵称
|
||||
PhoneLabel: 手机号码
|
||||
LanguageLabel: 语言
|
||||
German: 德语
|
||||
English: 英语
|
||||
Italian: 意大利语
|
||||
French: 法语
|
||||
Chinese: 简体中文
|
||||
TosAndPrivacyLabel: 条款和条款
|
||||
TosConfirm: 我接受
|
||||
TosLinkText: 服务条款
|
||||
TosConfirmAnd: 和
|
||||
PrivacyLinkText: 隐私政策
|
||||
ExternalLogin: 使用外部身份提供者注册
|
||||
BackButtonText: 返回
|
||||
NextButtonText: 保存
|
||||
|
||||
RegistrationOrg:
|
||||
Title: 注册组织
|
||||
Description: 输入您的组织名称和用户数据。
|
||||
OrgNameLabel: 组织名称
|
||||
EmailLabel: 电子邮件
|
||||
UsernameLabel: 用户名
|
||||
FirstnameLabel: 名
|
||||
LastnameLabel: 姓
|
||||
PasswordLabel: 密码
|
||||
PasswordConfirmLabel: 确认密码
|
||||
TosAndPrivacyLabel: 条款和条款
|
||||
TosConfirm: 我接受
|
||||
TosLinkText: 服务条款
|
||||
TosConfirmAnd: 和
|
||||
PrivacyLinkText: 隐私政策
|
||||
SaveButtonText: 创建组织
|
||||
|
||||
LoginSuccess:
|
||||
Title: 登陆成功
|
||||
AutoRedirectDescription: 您将被自动引导至您的应用程序。如果没有,请单击下面的按钮。之后您可以关闭窗口。
|
||||
RedirectedDescription: 您现在可以关闭此窗口。
|
||||
NextButtonText: 继续
|
||||
|
||||
LogoutDone:
|
||||
Title: 退出登录
|
||||
Description: 您已成功退出登录。
|
||||
LoginButtonText: 登录
|
||||
|
||||
LinkingUsersDone:
|
||||
Title: 用户链接
|
||||
Description: 用户链接完成。
|
||||
CancelButtonText: 取消
|
||||
NextButtonText: 继续
|
||||
|
||||
ExternalNotFoundOption:
|
||||
Title: 外部用户
|
||||
Description: 未找到外部用户。你想绑定你已存在的用户还是自动注册一个新用户。
|
||||
LinkButtonText: 绑定
|
||||
AutoRegisterButtonText: 注册
|
||||
TosAndPrivacyLabel: 条款和条款
|
||||
TosConfirm: 我接受
|
||||
TosLinkText: 服务条款
|
||||
TosConfirmAnd: 和
|
||||
PrivacyLinkText: 隐私政策
|
||||
German: 德语
|
||||
English: 英语
|
||||
Italian: 意大利语
|
||||
French: 法语
|
||||
Chinese: 简体中文
|
||||
|
||||
Footer:
|
||||
PoweredBy: Powered By
|
||||
Tos: 服务条款
|
||||
PrivacyPolicy: 隐私政策
|
||||
Help: 帮助
|
||||
|
||||
Errors:
|
||||
Internal: 发生了内部错误
|
||||
AuthRequest:
|
||||
NotFound: 找不到授权请求
|
||||
UserAgentNotCorresponding: 用户代理未响应
|
||||
UserAgentNotFound: 未找到用户代理 ID
|
||||
TokenNotFound: 找不到令牌
|
||||
RequestTypeNotSupported: 不支持请求的类型
|
||||
MissingParameters: 缺少必需的参数
|
||||
User:
|
||||
NotFound: 找不到用户
|
||||
Inactive: 用户处于停用状态
|
||||
NotFoundOnOrg: 在所选组织中找不到用户
|
||||
NotAllowedOrg: 用户不是所需组织的成员
|
||||
NotMatchingUserID: 身份验证请求中的用户信息不匹配
|
||||
UserIDMissing: 用户 ID 为空
|
||||
Invalid: 无效的用户数据
|
||||
DomainNotAllowedAsUsername: 域名已存在,但无法使用
|
||||
NotAllowedToLink: 不允许用户使用外部身份提供者注册
|
||||
Password:
|
||||
ConfirmationWrong: 密码不一致
|
||||
Empty: 密码为空
|
||||
Invalid: 密码无效
|
||||
InvalidAndLocked: 密码无效且用户被锁定,请联系您的管理员。
|
||||
UsernameOrPassword:
|
||||
Invalid: 用户名或密码无效
|
||||
PasswordComplexityPolicy:
|
||||
NotFound: 未找到密码策略
|
||||
MinLength: 密码太短
|
||||
HasLower: 密码必须包含小写字母
|
||||
HasUpper: 密码必须包含大写字母
|
||||
HasNumber: 密码必须包含数字
|
||||
HasSymbol: 密码必须包含符号
|
||||
Code:
|
||||
Expired: 验证码已过期
|
||||
Invalid: 无效的验证码
|
||||
Empty: 验证码不能为空
|
||||
CryptoCodeNil: 加密代码为空
|
||||
NotFound: 找不到验证码
|
||||
GeneratorAlgNotSupported: 不支持的生成器算法
|
||||
EmailVerify:
|
||||
UserIDEmpty: 用户 ID 为空
|
||||
ExternalData:
|
||||
CouldNotRead: 无法正确读取外部数据
|
||||
MFA:
|
||||
NoProviders: 没有可用的多因素提供商
|
||||
OTP:
|
||||
AlreadyReady: OTP (一次性密码) 已设置
|
||||
NotExisting: OTP (一次性密码) 不存在
|
||||
InvalidCode: 无效的验证码
|
||||
NotReady: OTP (一次性密码) 还没准备好
|
||||
Locked: 用户被锁定
|
||||
SomethingWentWrong: 似乎出问题了
|
||||
NotActive: 用户已停用
|
||||
ExternalIDP:
|
||||
IDPTypeNotImplemented: IDP 类型未实现
|
||||
NotAllowed: 不允许使用外部身份提供者登录
|
||||
IDPConfigIDEmpty: 身份提供者 ID 为空
|
||||
ExternalUserIDEmpty: 外部用户 ID 为空
|
||||
UserDisplayNameEmpty: 用户显示名称为空
|
||||
NoExternalUserData: 未收到外部用户数据
|
||||
GrantRequired: 无法登录,用户需要在应用程序上拥有至少一项授权,请联系您的管理员。
|
||||
ProjectRequired: 无法登录,用户的组织必须授予项目,请联系您的管理员。
|
||||
IdentityProvider:
|
||||
InvalidConfig: 身份提供者配置无效
|
||||
IAM:
|
||||
LockoutPolicy:
|
||||
NotExisting: 用户锁定政策不存在
|
||||
|
||||
optional: (可选)
|
42
internal/notification/static/i18n/zh.yaml
Normal file
42
internal/notification/static/i18n/zh.yaml
Normal file
@ -0,0 +1,42 @@
|
||||
InitCode:
|
||||
Title: ZITADEL - 初始化用户
|
||||
PreHeader: 初始化用户
|
||||
Subject: 初始化用户
|
||||
Greeting: 你好 {{.FirstName}} {{.LastName}},
|
||||
Text: 此用户是在 ZITADEL 中创建的。使用用户名 {{.PreferredLoginName}} 登录。请单击下面的按钮完成初始化过程。(代码 {{.Code}})如果不是您本人操作,请忽略它。
|
||||
ButtonText: 完成初始化
|
||||
PasswordReset:
|
||||
Title: ZITADEL - 重置密码
|
||||
PreHeader: 重置密码
|
||||
Subject: 重置密码
|
||||
Greeting: 你好 {{.FirstName}} {{.LastName}},
|
||||
Text: 我们收到了密码重置请求。请使用下面的按钮重置您的密码。(验证码 {{.Code}})如果不是您本人操作,请忽略它。
|
||||
ButtonText: 重置密码
|
||||
VerifyEmail:
|
||||
Title: ZITADEL - 验证电子邮箱
|
||||
PreHeader: 验证电子邮箱
|
||||
Subject: 验证电子邮箱
|
||||
Greeting: 你好 {{.FirstName}} {{.LastName}},
|
||||
Text: 已添加新电子邮件。请使用下面的按钮来验证您的邮件。(验证码 {{.Code}})如果不是您本人操作,请忽略此电子邮件。
|
||||
ButtonText: 验证电子邮箱
|
||||
VerifyPhone:
|
||||
Title: ZITADEL - 验证手机号码
|
||||
PreHeader: 验证手机号码
|
||||
Subject: 验证手机号码
|
||||
Greeting: 你好 {{.FirstName}} {{.LastName}},
|
||||
Text: 您的用户中添加了一个新的手机号码,请使用以下验证码进行验证 {{.Code}}
|
||||
ButtonText: 验证手机号码
|
||||
DomainClaimed:
|
||||
Title: ZITADEL - 域名所有权验证
|
||||
PreHeader: 更改电子邮件/用户名
|
||||
Subject: 域名所有权验证
|
||||
Greeting: 你好 {{.FirstName}} {{.LastName}},
|
||||
Text: 域 {{.Domain}} 已被组织使用。您当前的用户 {{.Username}} 不属于此组织。因此,您必须在登录时更改您的电子邮件。我们为此登录创建了一个临时用户名 ({{.TempUsername}})。
|
||||
ButtonText: 登录
|
||||
PasswordlessRegistration:
|
||||
Title: ZITADEL - 添加无密码登录
|
||||
PreHeader: 添加无密码登录
|
||||
Subject: 添加无密码登录
|
||||
Greeting: 你好 {{.FirstName}} {{.LastName}},
|
||||
Text: 我们收到了为无密码登录添加令牌的请求。请使用下面的按钮添加您的令牌或设备以进行无密码登录。
|
||||
ButtonText: 添加无密码登录
|
900
internal/static/i18n/zh.yaml
Normal file
900
internal/static/i18n/zh.yaml
Normal file
@ -0,0 +1,900 @@
|
||||
Errors:
|
||||
Internal: 发生了内部错误
|
||||
NoChangesFound: 没有变化
|
||||
OriginNotAllowed: 这个"来源"是不被允许的
|
||||
IDMissing: ID 丢失
|
||||
ResourceOwnerMissing: 组织没有资源所有者
|
||||
RemoveFailed: 无法移除
|
||||
ProjectionName:
|
||||
Invalid: 错误的映射名称
|
||||
Assets:
|
||||
EmptyKey: 资产的 Key 为空
|
||||
Store:
|
||||
NotInitialized: 资产存储未初始化
|
||||
NotConfigured: 未配置资产存储
|
||||
Bucket:
|
||||
Internal: 创建桶时出现内部错误
|
||||
AlreadyExists: 存储桶已存在
|
||||
CreateFailed: 未创建存储桶
|
||||
ListFailed: 无法读取存储桶
|
||||
RemoveFailed: 未删除存储桶
|
||||
SetPublicFailed: 无法将存储桶设置为公开
|
||||
Object:
|
||||
PutFailed: 未创建对象
|
||||
GetFailed: 无法读取对象
|
||||
NotFound: 找不到对象
|
||||
PresignedTokenFailed: 无法创建签名令牌
|
||||
ListFailed: 无法读取对象列表
|
||||
RemoveFailed: 无法移除对象
|
||||
Limit:
|
||||
ExceedsDefault: 超出默认限制
|
||||
Language:
|
||||
NotParsed: 无法解析语言
|
||||
OIDCSettings:
|
||||
NotFound: OIDC 配置未找到
|
||||
AlreadyExists: OIDC 配置已存在
|
||||
SecretGenerator:
|
||||
AlreadyExists: 秘密生成器已经存在
|
||||
TypeMissing: 缺少秘钥生成器类型
|
||||
NotFound: 未找到秘钥生成器
|
||||
SMSConfig:
|
||||
NotFound: 未找到 SMS 配置
|
||||
AlreadyActive: SMS 配置已启用
|
||||
AlreadyDeactivated: SMS 配置已停用
|
||||
SMTPConfig:
|
||||
NotFound: 未找到 SMTP 配置
|
||||
AlreadyExists: SMTP 配置已存在
|
||||
SenderAdressNotCustomDomain: 发件人地址必须在在实例的域名设置中验证。
|
||||
Notification:
|
||||
NoDomain: 未找到对应的域名
|
||||
User:
|
||||
NotFound: 找不到用户
|
||||
AlreadyExists: 用户已存在
|
||||
NotFoundOnOrg: 在所选组织中找不到用户
|
||||
NotAllowedOrg: 用户不是所需组织的成员
|
||||
UserIDMissing: 缺少用户 ID
|
||||
DomainPolicyNil: 组织策略为空
|
||||
EmailAsUsernameNotAllowed: 电子邮件不允许作为用户名
|
||||
Invalid: 用户数据无效
|
||||
DomainNotAllowedAsUsername: 域已保存,但无法使用
|
||||
AlreadyInactive: 用户已处于停用状态
|
||||
NotInactive: 用户未处于停用状态
|
||||
CantDeactivateInitial: 处于初始状态的用户只能删除不能停用
|
||||
ShouldBeActiveOrInitial: 用户不是处于启用的的或初始化的
|
||||
AlreadyInitialised: 用户已经初始化
|
||||
NotInitialised: 用户尚未初始化
|
||||
NotLocked: 用户未锁定
|
||||
NoChanges: 未发现任何更改
|
||||
InitCodeNotFound: 未找到初始化验证码
|
||||
UsernameNotChanged: 用户名未更改
|
||||
Profile:
|
||||
NotFound: 未找到个人资料
|
||||
NotChanged: 个人资料未更改
|
||||
Invalid: 个人资料数据无效
|
||||
Email:
|
||||
NotFound: 电子邮件没有找到
|
||||
Invalid: 电子邮件无效
|
||||
AlreadyVerified: 电子邮件已经过验证
|
||||
NotChanged: 电子邮件未更改
|
||||
Phone:
|
||||
NotFound: 手机号码未找到
|
||||
Invalid: 手机号码无效
|
||||
AlreadyVerified: 手机号码已经验证
|
||||
Address:
|
||||
NotFound: 找不到地址
|
||||
NotChanged: 地址没有改变
|
||||
Machine:
|
||||
Key:
|
||||
NotFound: 未找到机器密钥
|
||||
PAT:
|
||||
NotFound: 未找到个人访问令牌
|
||||
NotHuman: 用户必须是个人
|
||||
NotMachine: 用户必须是技术人员
|
||||
WrongType: 此用户类型不允许
|
||||
NotAllowedToLink: 不允许使用外部身份提供者登录并注册用户
|
||||
Username:
|
||||
AlreadyExists: 用户名已被使用
|
||||
Reserved: 用户名已被使用
|
||||
Code:
|
||||
Empty: 验证码为空
|
||||
NotFound: 验证码不存在
|
||||
Expired: 验证码已过期
|
||||
GeneratorAlgNotSupported: 不支持的生成器算法
|
||||
Password:
|
||||
NotFound: 未找到密码
|
||||
Empty: 密码为空
|
||||
Invalid: 密码无效
|
||||
NotSet: 用户未设置密码
|
||||
PasswordComplexityPolicy:
|
||||
NotFound: 未找到密码策略
|
||||
MinLength: 密码太短
|
||||
MinLengthNotAllowed: 给定的最小长度不被允许
|
||||
HasLower: 密码必须包含小写
|
||||
HasUpper: 密码必须包含大写
|
||||
HasNumber: 密码必须包含数字
|
||||
HasSymbol: 密码必须包含符号
|
||||
ExternalIDP:
|
||||
Invalid: 外部 IDP 无效
|
||||
IDPConfigNotExisting: IDP 提供者对此组织无效
|
||||
NotAllowed: 此组织不允许外部 IDP
|
||||
MinimumExternalIDPNeeded: 必须添加至少一个 IDP
|
||||
AlreadyExists: 外部 IDP 已存在
|
||||
NotFound: 未找到外部 IDP
|
||||
MFA:
|
||||
OTP:
|
||||
AlreadyReady: OTP (一次性密码) 已经设置好了
|
||||
NotExisting: OTP (一次性密码) 不存在
|
||||
NotReady: OTP (一次性密码) 还没准备好
|
||||
InvalidCode: 无效的验证码
|
||||
U2F:
|
||||
NotExisting: U2F 不存在
|
||||
Passwordless:
|
||||
NotExisting: 未设置无密码登录
|
||||
WebAuthN:
|
||||
NotFound: 找不到 WebAuthN 令牌
|
||||
BeginRegisterFailed: WebAuthN 注册失败
|
||||
MarshalError: 编组数据错误
|
||||
ErrorOnParseCredential: 解析凭证数据时出错
|
||||
CreateCredentialFailed: 创建凭据时出错
|
||||
BeginLoginFailed: WebAuthN 登录失败
|
||||
ValidateLoginFailed: 验证登录凭据时出错
|
||||
CloneWarning: 凭证可能被克隆
|
||||
RefreshToken:
|
||||
Invalid: Refresh Token 无效
|
||||
NotFound: 未找到 Refresh Token
|
||||
Org:
|
||||
AlreadyExists: 组织名称已被占用
|
||||
Invalid: 组织无效
|
||||
AlreadyDeactivated: 组织已停用
|
||||
AlreadyActive: 组织已处于启用状态
|
||||
Empty: 组织为空
|
||||
NotFound: 未找到组织
|
||||
NotChanged: 组织信息未改变
|
||||
InvalidDomain: 无效的域名
|
||||
DomainMissing: 域名缺失
|
||||
DomainNotOnOrg: 组织中不存在域
|
||||
DomainNotVerified: 域名未验证
|
||||
DomainAlreadyVerified: 域已经过验证
|
||||
DomainVerificationTypeInvalid: 域名验证类型无效
|
||||
DomainVerificationMissing: 域名验证尚未开始
|
||||
DomainVerificationFailed: 域名验证失败
|
||||
PrimaryDomainNotDeletable: 不得删除主域名
|
||||
DomainNotFound: 未找到域名
|
||||
MemberIDMissing: 成员 ID 丢失
|
||||
MemberNotFound: 未找到组织成员
|
||||
InvalidMember: 组织成员无效
|
||||
UserIDMissing: 缺少用户 ID
|
||||
PolicyAlreadyExists: 策略已存在
|
||||
PolicyNotExisting: 策略不存在
|
||||
IdpInvalid: IDP 配置无效
|
||||
IdpNotExisting: IDP 配置不存在
|
||||
OIDCConfigInvalid: OIDC IDP 配置无效
|
||||
IdpIsNotOIDC: IDP 配置不是 OIDC 类型
|
||||
Domain:
|
||||
AlreadyExists: 域名已存在
|
||||
InvalidCharacter: 只有字母数字字符,.和 - 允许用于域名中
|
||||
IDP:
|
||||
InvalidSearchQuery: 无效的搜索查询
|
||||
LoginPolicy:
|
||||
NotFound: 未找到登录策略
|
||||
Invalid: 登录策略无效
|
||||
RedirectURIInvalid: 默认重定向 URL 无效
|
||||
NotExisting: 登录策略不存在
|
||||
AlreadyExists: 登录策略已存在
|
||||
IdpProviderAlreadyExisting: IDP 提供者已存在
|
||||
IdpProviderNotExisting: IDP 提供者不存在
|
||||
RegistrationNotAllowed: 不允许注册
|
||||
UsernamePasswordNotAllowed: 不允许使用用户名/密码登录
|
||||
MFA:
|
||||
AlreadyExists: 多因素身份认证已经存在
|
||||
NotExisting: 多因素身份认证不存在
|
||||
Unspecified: 多因素身份认证无效
|
||||
MailTemplate:
|
||||
NotFound: 未找到默认邮件模板
|
||||
NotChanged: 默认邮件模板未更改
|
||||
AlreadyExists: 默认邮件模板已存在
|
||||
Invalid: 默认邮件模板无效
|
||||
CustomMessageText:
|
||||
NotFound: 未找到默认消息文本
|
||||
NotChanged: 默认消息文本未更改
|
||||
AlreadyExists: 默认消息文本已存在
|
||||
Invalid: 默认消息文本无效
|
||||
PasswordComplexityPolicy:
|
||||
NotFound: 未找到密码复杂性策略
|
||||
Empty: 密码复杂性策略为空
|
||||
NotExisting: 密码复杂性策略不存在
|
||||
AlreadyExists: 密码复杂性策略已存在
|
||||
PasswordLockoutPolicy:
|
||||
NotFound: 密码锁定策略不存在
|
||||
Empty: 密码锁定策略为空
|
||||
NotExisting: 密码锁定策略不存在
|
||||
AlreadyExists: 密码锁定策略已存在
|
||||
PasswordAgePolicy:
|
||||
NotFound: 密码过期策略不存在
|
||||
Empty: 密码过期策略为空
|
||||
NotExisting: 密码过期策略不存在
|
||||
AlreadyExists: 密码过期策略已存在
|
||||
OrgIAMPolicy:
|
||||
Empty: 组织 IAM 策略为空
|
||||
NotExisting: 组织 IAM 策略不存在
|
||||
AlreadyExists: 组织 IAM 策略已存在
|
||||
Project:
|
||||
ProjectIDMissing: P缺少项目 ID
|
||||
AlreadyExists: 项目以存在于组织中
|
||||
OrgNotExisting: 组织不存在
|
||||
UserNotExisting: 用户不存在
|
||||
CouldNotGenerateClientSecret: 无法生成客户端秘钥
|
||||
Invalid: 项目无效
|
||||
NotActive: 项目不是启用状态
|
||||
NotInactive: 项目不是停用状态
|
||||
NotFound: 项目不存在
|
||||
UserIDMissing: 缺少用户 ID
|
||||
Member:
|
||||
NotFound: 项目成员不存在
|
||||
Invalid: 项目成员无效
|
||||
AlreadyExists: 项目成员已存在
|
||||
NotExisting: 项目成员不存在
|
||||
MinimumOneRoleNeeded: 必须添加至少一个角色
|
||||
Role:
|
||||
AlreadyExists: 角色已存在
|
||||
Invalid: 角色无效
|
||||
NotExisting: 角色不存在
|
||||
IDMissing: 丢失 ID
|
||||
App:
|
||||
AlreadyExists: 应用已存在
|
||||
NotFound: 应用不存在
|
||||
Invalid: 无效的应用
|
||||
NotExisting: 应用不存在
|
||||
NotActive: 应用不是启用状态
|
||||
NotInactive: 应用不是停用状态
|
||||
OIDCConfigInvalid: OIDC 配置无效
|
||||
APIConfigInvalid: API 配置无效
|
||||
IsNotOIDC: 应用不是 OIDC 类型
|
||||
IsNotAPI: 应用不是 API 类型
|
||||
OIDCAuthMethodNoSecret: 选择的 OIDC 身份验证方法不需要秘钥
|
||||
APIAuthMethodNoSecret: 选择的 API 身份验证方法不需要秘钥
|
||||
AuthMethodNoPrivateKeyJWT: 选择的身份验证方法不需要 Key
|
||||
ClientSecretInvalid: Client Secret 无效
|
||||
RequiredFieldsMissing: 缺少一些必填字段
|
||||
Grant:
|
||||
AlreadyExists: 项目授权已存在
|
||||
NotFound: 授权不存在
|
||||
Invalid: 项目授权无效
|
||||
NotExisting: 项目授权不存在
|
||||
HasNotExistingRole: 角色不存在与项目中
|
||||
NotActive: 项目授权不是启用状态
|
||||
NotInactive: 项目授权不是停用状态
|
||||
IAM:
|
||||
Member:
|
||||
RolesNotChanged: 角色没有改变
|
||||
MemberInvalid: 成员无效
|
||||
MemberAlreadyExisting: 成员已存在
|
||||
MemberNotExisting: 成员不存在
|
||||
IDMissing: ID 丢失
|
||||
IAMProjectIDMissing: IAM 项目 ID 缺失
|
||||
IamProjectAlreadySet: IAM 项目 ID 已设置
|
||||
IdpInvalid: IDP 配置无效
|
||||
IdpNotExisting: IDP 配置不存在
|
||||
OIDCConfigInvalid: OIDC IDP 配置无效
|
||||
IdpIsNotOIDC: IDP 配置不是 OIDC 类型
|
||||
LoginPolicyInvalid: 登录策略无效
|
||||
LoginPolicyNotExisting: 登录策略不存在
|
||||
IdpProviderInvalid: IDP 提供者无效
|
||||
LoginPolicy:
|
||||
NotFound: 默认登录策略不存在
|
||||
NotChanged: 默认登录策略没有改变
|
||||
NotExisting: 默认登录策略不存在
|
||||
AlreadyExists: 默认登录策略已存在
|
||||
RedirectURIInvalid: 默认重定向 URL 无效
|
||||
MFA:
|
||||
AlreadyExists: MFA 已存在
|
||||
NotExisting: MFA 不存在
|
||||
Unspecified: MFA 无效
|
||||
IDP:
|
||||
AlreadyExists: 身份提供者已存在
|
||||
NotExisting: 身份提供者不存在
|
||||
Invalid: 身份提供者无效
|
||||
IDPConfig:
|
||||
AlreadyExists: 身份提供者配置已存在
|
||||
NotInactive: 身份提供者配置不是停用状态
|
||||
NotActive: 身份提供者配置不是启动状态
|
||||
LabelPolicy:
|
||||
NotFound: 默认私有策略不存在
|
||||
NotChanged: 默认私有策略未更改
|
||||
MailTemplate:
|
||||
NotFound: 默认邮件模板不存在
|
||||
NotChanged: 默认邮件模板未更改
|
||||
AlreadyExists: 默认邮件模板已存在
|
||||
Invalid: 默认邮件模板无效
|
||||
CustomMessageText:
|
||||
NotFound: 默认消息文本不存在
|
||||
NotChanged: 默认消息文本未更改
|
||||
AlreadyExists: 默认消息文本已存在
|
||||
Invalid: 默认消息文本无效
|
||||
PasswordComplexityPolicy:
|
||||
NotFound: 默认密码复杂策略不存在
|
||||
NotExisting: 默认密码复杂策略不存在
|
||||
AlreadyExists: 默认密码复杂策略已存在
|
||||
Empty: 默认密码复杂策略为空
|
||||
NotChanged: 默认密码复杂策略未更改
|
||||
PasswordAgePolicy:
|
||||
NotFound: 默认密码有效期策略不存在
|
||||
NotExisting: 默认密码有效期策略不存在
|
||||
AlreadyExists: 默认密码有效期策略已存在
|
||||
Empty: 默认密码有效期策略为空
|
||||
NotChanged: 默认密码有效期策略未更改
|
||||
PasswordLockoutPolicy:
|
||||
NotFound: 默认密码锁策略不存在
|
||||
NotExisting: 默认密码锁策略不存在
|
||||
AlreadyExists: 默认密码锁策略已存在
|
||||
Empty: 默认密码锁策略为空
|
||||
NotChanged: 默认密码锁策略未更改
|
||||
DomainPolicy:
|
||||
NotFound: 组织 IAM 策略不存在
|
||||
Empty: 组织 IAM 策略为空
|
||||
NotExisting: 组织 IAM 策略不存在
|
||||
AlreadyExists: 组织 IAM 策略已存在
|
||||
NotChanged: 组织 IAM 策略未更改
|
||||
Policy:
|
||||
AlreadyExists: 策略已存在
|
||||
Label:
|
||||
Invalid:
|
||||
PrimaryColor: 主色调不是有效的十六进制颜色值
|
||||
BackgroundColor: 背景颜色不是有效的十六进制颜色值
|
||||
WarnColor: 警告颜色不是有效的十六进制颜色值
|
||||
FontColor: 字体颜色不是有效的十六进制颜色值
|
||||
PrimaryColorDark: 主色调 (深色模式) 不是有效的十六进制颜色值
|
||||
BackgroundColorDark: 背景颜色 (深色模式) 不是有效的十六进制颜色值
|
||||
WarnColorDark: 警告颜色 (深色模式) 不是有效的十六进制颜色值
|
||||
FontColorDark: 字体颜色 (深色模式) 不是有效的十六进制颜色值
|
||||
UserGrant:
|
||||
AlreadyExists: 用户授权已存在
|
||||
NotFound: 用户授权不存在
|
||||
Invalid: 用户授权无效
|
||||
NotChanged: 用户授权未更改
|
||||
IDMissing: 没有 ID
|
||||
NotActive: 用户授权不是启用状态
|
||||
NotInactive: 用户授权不是停用状态
|
||||
NoPermissionForProject: 用户对此项目没有权限
|
||||
RoleKeyNotFound: 角色不存在
|
||||
Member:
|
||||
AlreadyExists: 成员已存在
|
||||
IDPConfig:
|
||||
AlreadyExists: IDP 配置名称已存在
|
||||
NotExisting: 身份提供者配置不存在
|
||||
Changes:
|
||||
NotFound: 未找到任何历史记录
|
||||
AuditRetention: 历史记录在审核日志保留范围之外
|
||||
Token:
|
||||
NotFound: 令牌不存在
|
||||
UserSession:
|
||||
NotFound: 用户会话不存在
|
||||
Key:
|
||||
ExpireBeforeNow: 过期日期是过去的无效日期
|
||||
Login:
|
||||
LoginPolicy:
|
||||
MFA:
|
||||
ForceAndNotConfigured: MFA 已根据需要进行配置,但未配置任何可能的提供程序。请联系您的系统管理员。
|
||||
Step:
|
||||
Started:
|
||||
AlreadyExists: 设置已存在
|
||||
Done:
|
||||
AlreadyExists: 设置完成已存在
|
||||
CustomText:
|
||||
AlreadyExists: 自定义文本已存在
|
||||
Invalid: 自定义文本无效
|
||||
NotFound: 自定义文本不存在
|
||||
TranslationFile:
|
||||
ReadError: 读取翻译文件时出错
|
||||
MergeError: 翻译文件无法与自定义翻译合并
|
||||
NotFound: 翻译文件不存在
|
||||
MetaData:
|
||||
NotFound: 元数据不存在
|
||||
NoData: 元数据列表为空
|
||||
Invalid: 元数据无效
|
||||
KeyNotExisting: 一个或多个键不存在
|
||||
Action:
|
||||
Invalid: 动作无效
|
||||
NotFound: 动作不存在
|
||||
NotActive: 动作不是启用状态
|
||||
NotInactive: 动作不是停用状态
|
||||
MaxAllowed: 不允许额外的动作
|
||||
Flow:
|
||||
FlowTypeMissing: 缺少身份认证流程类型
|
||||
Empty: 身份认证流程为空
|
||||
WrongTriggerType: 触发器类型无效
|
||||
NoChanges: 未更改
|
||||
ActionIDsNotExist: 动作 ID 不存在
|
||||
Query:
|
||||
CloseRows: SQL 语句无法完成
|
||||
SQLStatement: 无法创建 SQL 语句
|
||||
InvalidRequest: 请求无效
|
||||
EventTypes:
|
||||
user:
|
||||
added: 已添加用户
|
||||
selfregistered: 自注册用户
|
||||
initialization:
|
||||
code:
|
||||
added: 生成初始化代码
|
||||
sent: 发送初始化代码
|
||||
check:
|
||||
succeeded: 初始化检查成功
|
||||
failed: 初始化检查失败
|
||||
token:
|
||||
added: 已创建访问令牌
|
||||
username:
|
||||
reserved: 保留用户名
|
||||
released: 用户名已发布
|
||||
email:
|
||||
reserved: 电子邮件地址已保留
|
||||
released: 电子邮件地址已发布
|
||||
changed: 电子邮件地址已更改
|
||||
verified: 电子邮件地址已验证
|
||||
verification:
|
||||
failed: 电子邮件验证失败
|
||||
code:
|
||||
added: 生成电子邮件验证码
|
||||
sent: 发送电子邮件验证码
|
||||
machine:
|
||||
added: 添加了服务用户
|
||||
changed: 更改了服务用户
|
||||
key:
|
||||
added: 添加服务用户 Key
|
||||
removed: 删除服务用户 Key
|
||||
human:
|
||||
added: 添加用户
|
||||
selfregistered: 自注册用户
|
||||
avatar:
|
||||
added: 添加了头像
|
||||
removed: 删除了头像
|
||||
initialization:
|
||||
code:
|
||||
added: 生成初始化验证码
|
||||
sent: 发送初始化验证码
|
||||
check:
|
||||
succeeded: 初始化检查成功
|
||||
failed: 初始化检查失败
|
||||
username:
|
||||
reserved: 保留用户名
|
||||
released: 用户名已发布
|
||||
email:
|
||||
changed: 电子邮件地址已更改
|
||||
verified: 电子邮件地址已验证
|
||||
verification:
|
||||
failed: 电子邮件地址验证失败
|
||||
code:
|
||||
added: 生成电子邮件地址验证码
|
||||
sent: 发送电子邮件地址验证码
|
||||
password:
|
||||
changed: 更改密码
|
||||
code:
|
||||
added: 生成重置密码验证码
|
||||
sent: 发送重置密码验证码
|
||||
check:
|
||||
succeeded: 密码检查成功
|
||||
failed: 密码检查失败
|
||||
externallogin:
|
||||
check:
|
||||
succeeded: 外部登录成功
|
||||
externalidp:
|
||||
added: 添加了外部 IDP
|
||||
removed: 移除了外部 IDP
|
||||
cascade:
|
||||
removed: 移除了外部 IDP
|
||||
phone:
|
||||
changed: 修改手机号码
|
||||
verified: 已验证手机号码
|
||||
verification:
|
||||
failed: 手机号码验证失败
|
||||
code:
|
||||
added: 生成手机号码验证码
|
||||
sent: 发送手机号码验证码
|
||||
removed: 删除手机号码
|
||||
profile:
|
||||
changed: 更改个人资料
|
||||
address:
|
||||
changed: 更改用户地址
|
||||
mfa:
|
||||
otp:
|
||||
added: 添加 MFA OTP
|
||||
verified: 验证 MFA OTP
|
||||
removed: 删除 MFA OTP
|
||||
check:
|
||||
succeeded: 验证 MFA OTP 成功
|
||||
failed: 验证 MFA OTP 失败
|
||||
u2f:
|
||||
token:
|
||||
added: 添加 MFA U2F 令牌
|
||||
verified: 验证 MFA U2F 令牌
|
||||
removed: 删除 MFA U2F 令牌
|
||||
begin:
|
||||
login: 开始验证 MFA U2F
|
||||
check:
|
||||
succeeded: 验证 MFA U2F 成功
|
||||
failed: 验证 MFA U2F 失败
|
||||
signcount:
|
||||
changed: MFA U2F 令牌的校验和已更改
|
||||
init:
|
||||
skipped: 跳过 MFA 初始化
|
||||
passwordless:
|
||||
token:
|
||||
added: 添加无密码登录令牌
|
||||
verified: 验证无密码登录令牌
|
||||
removed: 删除无密码登录令牌
|
||||
begin:
|
||||
login: 无密码登录检查开始
|
||||
check:
|
||||
succeeded: 无密码登录检查成功
|
||||
failed: 无密码登录检查失败
|
||||
signcount:
|
||||
changed: 无密码登录令牌的校验和已更改
|
||||
initialization:
|
||||
code:
|
||||
added: 添加无密码初始化验证码
|
||||
sent: 发送无密码初始化验证码
|
||||
requested: 发起无密码初始化验证码请求
|
||||
check:
|
||||
succeeded: 无密码初始化验证码验证成功
|
||||
failed: 无密码初始化验证码验证失败
|
||||
signed:
|
||||
out: 用户退出登录
|
||||
refresh:
|
||||
token:
|
||||
added: 创建 Refresh Token
|
||||
renewed: 删除 Refresh Token
|
||||
removed: 删除 Refresh Token
|
||||
locked: 用户锁定
|
||||
unlocked: 解锁用户
|
||||
deactivated: 停用用户
|
||||
reactivated: 启用用户
|
||||
removed: 删除用户
|
||||
password:
|
||||
changed: 修改密码
|
||||
code:
|
||||
added: 生成重置密码验证码
|
||||
sent: 发送验证码
|
||||
check:
|
||||
succeeded: 密码检查成功
|
||||
failed: 密码检查失败
|
||||
phone:
|
||||
changed: 更改手机号码
|
||||
verified: 验证手机号码
|
||||
verification:
|
||||
failed: 手机号码验证失败
|
||||
code:
|
||||
added: 生成的手机号码验证码
|
||||
sent: 发送手机号码验证码
|
||||
profile:
|
||||
changed: 修改用户资料
|
||||
address:
|
||||
changed: 修改用户地址
|
||||
mfa:
|
||||
otp:
|
||||
added: 添加 MFA OTP
|
||||
verified: 验证 MFA OTP
|
||||
removed: 删除 MFA OTP
|
||||
check:
|
||||
succeeded: MFA OTP 验证成功
|
||||
failed: MFA OTP 验证失败
|
||||
init:
|
||||
skipped: 跳过 MFA 初始化
|
||||
signed:
|
||||
out: 用户退出登录
|
||||
grant:
|
||||
added: 添加授权
|
||||
changed: 更改授权
|
||||
removed: 删除授权
|
||||
deactivated: 停用授权
|
||||
reactivated: 启用授权
|
||||
reserved: 保留授权
|
||||
released: 释放授权
|
||||
cascade:
|
||||
removed: 删除授权
|
||||
changed: 更改授权
|
||||
metadata:
|
||||
set: 用户元数据集
|
||||
removed: 删除用户元数据
|
||||
removed.all: 删除所有用户元数据
|
||||
org:
|
||||
added: 添加组织
|
||||
changed: 更改组织
|
||||
deactivated: 停用组织
|
||||
reactivated: 启用组织
|
||||
removed: 删除组织
|
||||
domain:
|
||||
added: 添加域名
|
||||
verification:
|
||||
added: 添加域名验证
|
||||
failed: 域名验证失败
|
||||
verified: 验证域名
|
||||
removed: 删除域名
|
||||
primary:
|
||||
set: 设置主域名
|
||||
reserved: 保留域名
|
||||
released: 释放域名
|
||||
name:
|
||||
reserved: 保留组织名
|
||||
released: 释放组织名
|
||||
member:
|
||||
added: 添加组织成员
|
||||
changed: 更改组织成员
|
||||
removed: 删除组织成员
|
||||
cascade:
|
||||
removeD: 已删除组织成员
|
||||
iam:
|
||||
policy:
|
||||
added: 添加系统策略
|
||||
changed: 更改系统策略
|
||||
removed: 删除系统策略
|
||||
idp:
|
||||
config:
|
||||
added: 添加 IDP 配置
|
||||
changed: 更改 IDP 配置
|
||||
removed: 删除 IDP 配置
|
||||
deactivated: 停用 IDP 配置
|
||||
reactivated: 启用 IDP 配置
|
||||
oidc:
|
||||
config:
|
||||
added: 添加 OIDC IDP 配置
|
||||
changed: 更改 OIDC IDP 配置
|
||||
saml:
|
||||
config:
|
||||
added: 添加 SAML IDP 配置
|
||||
changed: 更改 SAML IDP 配置
|
||||
customtext:
|
||||
set: 设置自定义文本
|
||||
removed: 删除自定义文本
|
||||
template:
|
||||
removed: 删除自定义文本模板
|
||||
policy:
|
||||
login:
|
||||
added: 添加登录策略
|
||||
changed: 更改登录策略
|
||||
removed: 删除登录策略
|
||||
idpprovider:
|
||||
added: 添加 IDP 到登录策略
|
||||
removed: 从登录策略删除 IDP
|
||||
secondfactor:
|
||||
added: 添加两步认证到登录策略
|
||||
removed: 删除两步认证到登录策略
|
||||
multifactor:
|
||||
added: 添加 MFA 到登录策略
|
||||
removed: 从登录策略删除 MFA
|
||||
password:
|
||||
complexity:
|
||||
added: 添加密码复杂性策略
|
||||
changed: 更改密码复杂性策略
|
||||
removed: 删除密码复杂性策略
|
||||
age:
|
||||
added: 添加密码有效期策略
|
||||
changed: 更改密码有效期策略
|
||||
removed: 删除密码有效期策略
|
||||
lockout:
|
||||
added: 添加密码锁策略
|
||||
changed: 更改密码锁策略
|
||||
removed: 删除密码锁策略
|
||||
label:
|
||||
added: 添加标签策略
|
||||
changed: 更改标签策略
|
||||
activated: 启用标签策略
|
||||
removed: 删除标签策略
|
||||
logo:
|
||||
added: 添加 Logo 标签策略
|
||||
removed: 从标签策略删除 Logo
|
||||
dark:
|
||||
added: 添加 Logo (深色模式) Logo 标签策略
|
||||
removed: 删除 Logo (深色模式) Logo 标签策略
|
||||
icon:
|
||||
added: 添加图标到标签策略
|
||||
removed: 从标签策略中删除图标
|
||||
dark:
|
||||
added: 添加图标(dark mode) 到标签策略
|
||||
removed: 从标签策略中删除图标 (深色模式)
|
||||
font:
|
||||
added: 字体添加到标签策略
|
||||
removed: 从标签策略中删除字体
|
||||
assets:
|
||||
removed: 从标签策略中删除的资产
|
||||
privacy:
|
||||
added: 添加隐私政策和服务条款
|
||||
changed: 更改隐私政策和服务条款
|
||||
removed: 删除隐私政策和服务条款
|
||||
flow:
|
||||
trigger_actions:
|
||||
set: 设置动作
|
||||
cascade:
|
||||
removed: 删除动作级联
|
||||
removed: 删除动作
|
||||
project:
|
||||
added: 添加项目
|
||||
changed: 更改项目
|
||||
deactivated: 停用项目
|
||||
reactivated: 启用项目
|
||||
removed: 删除项目
|
||||
member:
|
||||
added: 添加项目成员
|
||||
changed: 更改项目成员
|
||||
removed: 删除项目成员
|
||||
cascade:
|
||||
removed: 移除项目成员级联
|
||||
role:
|
||||
added: 添加项目角色
|
||||
changed: 更改项目角色
|
||||
removed: 删除项目角色
|
||||
grant:
|
||||
added: 添加外部授权
|
||||
changed: 更改外部授权
|
||||
removed: 删除外部授权
|
||||
deactivated: 停用外部授权
|
||||
reactivated: 启用外部授权
|
||||
cascade:
|
||||
changed: 更改外部授权
|
||||
member:
|
||||
added: 添加访问成员
|
||||
changed: 更改访问成员
|
||||
removed: 删除访问成员
|
||||
cascade:
|
||||
removeD: 删除管理访问级联
|
||||
application:
|
||||
added: 添加应用
|
||||
changed: 更改应用
|
||||
removed: 删除应用
|
||||
deactivated: 停用应用
|
||||
reactivated: 启用应用
|
||||
oidc:
|
||||
secret:
|
||||
check:
|
||||
succeeded: 检查 OIDC Client Secret 成功
|
||||
failed: 检查 OIDC Client Secret 失败
|
||||
key:
|
||||
added: 添加应用 Key
|
||||
removed: 删除应用 Key
|
||||
config:
|
||||
oidc:
|
||||
added: 添加 OIDC 配置
|
||||
changed: 更改 OIDC 配置
|
||||
secret:
|
||||
changed: 更改 OIDC Secret
|
||||
api:
|
||||
added: 添加 API 配置
|
||||
changed: 更改 API 配置
|
||||
secret:
|
||||
changed: 更改 API Secret
|
||||
policy:
|
||||
password:
|
||||
complexity:
|
||||
added: 添加密码复杂性策略
|
||||
changed: 更改密码复杂性策略
|
||||
age:
|
||||
added: 添加密码过期策略
|
||||
changed: 更改密码过期策略
|
||||
lockout:
|
||||
added: 添加密码锁定策略
|
||||
changed: 更改密码锁定策略
|
||||
iam:
|
||||
setup:
|
||||
started: 开始 ZITADEL 配置
|
||||
done: ZITADEL 配置完成
|
||||
global:
|
||||
org:
|
||||
set: 设置全局组织
|
||||
project:
|
||||
iam:
|
||||
set: 设置 ZITADEL 项目
|
||||
member:
|
||||
added: 添加 ZITADEL 成员
|
||||
changed: 更改 ZITADEL 成员
|
||||
removed: 删除 ZITADEL 成员
|
||||
cascade:
|
||||
removed: 删除 ZITADEL 成员级联
|
||||
idp:
|
||||
config:
|
||||
added: 添加 IDP 配置
|
||||
changed: 更改 IDP 配置
|
||||
removed: 删除 IDP 配置
|
||||
deactivated: 停用 IDP 配置
|
||||
reactivated: 启用 IDP 配置
|
||||
oidc:
|
||||
config:
|
||||
added: 添加 OIDC IDP 配置
|
||||
changed: 更改 OIDC IDP 配置
|
||||
saml:
|
||||
config:
|
||||
added: 添加 SAML IDP 配置
|
||||
changed: 更改 SAML IDP 配置
|
||||
customtext:
|
||||
set: 设置文本
|
||||
removed: 删除文本
|
||||
policy:
|
||||
login:
|
||||
added: 添加默认登录策略
|
||||
changed: 更改默认登录策略
|
||||
idpprovider:
|
||||
added: IDP 添加到默认登录策略
|
||||
removed: 从默认登录策略中删除 IDP
|
||||
label:
|
||||
added: 添加标签策略
|
||||
changed: 更改标签策略
|
||||
activated: 启用标签策略
|
||||
logo:
|
||||
added: 添加 Logo 标签策略
|
||||
removed: 从标签策略删除 Logo
|
||||
dark:
|
||||
added: 添加 Logo (深色模式) Logo 标签策略
|
||||
removed: 删除Logo (深色模式) Logo 标签策略
|
||||
icon:
|
||||
added: 添加图标到标签策略
|
||||
removed: 从标签策略中删除图标
|
||||
dark:
|
||||
added: 添加图标(dark mode) 到标签策略
|
||||
removed: 从标签策略中删除图标 (深色模式)
|
||||
font:
|
||||
added: 字体添加到标签策略
|
||||
removed: 从标签策略中删除字体
|
||||
assets:
|
||||
removed: 从标签策略中删除的资产
|
||||
default:
|
||||
language:
|
||||
set: 设置默认语言
|
||||
oidc:
|
||||
settings:
|
||||
added: 添加 OIDC 配置
|
||||
changed: 更改 OIDC 配置
|
||||
removed: 删除 OIDC 配置
|
||||
secret:
|
||||
generator:
|
||||
added: 添加秘钥生成器
|
||||
changed: 更改秘钥生成器
|
||||
removed: 删除秘钥生成器
|
||||
smtp:
|
||||
config:
|
||||
added: 添加 SMTP 配置
|
||||
changed: 更改 SMTP 配置
|
||||
password:
|
||||
changed: 更改 SMTP 安全设置
|
||||
sms:
|
||||
config:
|
||||
twilio:
|
||||
added: 添加 Twilio SMS 提供者
|
||||
changed: 更改 Twilio SMS 提供者
|
||||
token:
|
||||
changed: 更改 Twilio SMS 提供者令牌
|
||||
removed: 删除 Twilio SMS 提供者
|
||||
activated: 启用 Twilio SMS 提供者
|
||||
deactivated: 停用 Twilio SMS 提供者
|
||||
key_pair:
|
||||
added: 添加密钥对
|
||||
action:
|
||||
added: 添加动作
|
||||
changed: 更改动作
|
||||
deactivated: 停用动作
|
||||
reactivated: 启用动作
|
||||
removed: 删除动作
|
||||
|
||||
Application:
|
||||
OIDC:
|
||||
UnsupportedVersion: 不支持您的 OIDC 版本
|
||||
V1:
|
||||
NotCompliant: 您的配置不符合要求,并且与 OIDC 1.0 标准不同。
|
||||
NoRedirectUris: 必须至少注册一个重定向 URL。
|
||||
NotAllCombinationsAreAllowed: 配置是合规的,但并非所有可能的组合都是允许的。
|
||||
Code:
|
||||
RedirectUris:
|
||||
HttpOnlyForWeb: 授权方式为 Code 模式时,仅允许 Web 和 Native 应用类型的应用使用 HTTP 重定向。
|
||||
CustomOnlyForNative: 授权方式为 Code 时支持自定义原生 App Schema (e.g appname:// )
|
||||
Implicit:
|
||||
RedirectUris:
|
||||
CustomNotAllowed: 授权类型为隐式时不允许自定义重定向 URL。
|
||||
HttpNotAllowed: 授权类型为隐式时不允许 HTTP 重定向 URL。
|
||||
HttpLocalhostOnlyForNative: http://localhost 重定向 URL 仅允许用于本机应用程序。
|
||||
Native:
|
||||
AuthMethodType:
|
||||
NotNone: 原生应用的身份验证方式应该为 None。
|
||||
RedirectUris:
|
||||
MustBeHttpLocalhost: 重定向 URL 必须以您自己的协议、http://127.0.0.1、http://[::1] 或 http://localhost 开头。
|
||||
UserAgent:
|
||||
AuthMethodType:
|
||||
NotNone: UserAgent 应用应使用 None 身份验证方式。
|
||||
GrantType:
|
||||
Refresh:
|
||||
NoAuthCode: Refresh Token 仅允许与授权码(Authorization Code)模式一起使用。
|
Loading…
x
Reference in New Issue
Block a user