登录页:英文、简体中文、繁体中文主题文案。

账户中心:完整简体中文,并修正“我的资源”和品牌标题。
Admin:浏览器标题跟随当前语言。
Email:页脚支持英文、简体中文、繁体中文;其他语言回退英文。
增加中英文 Storybook 验证场景。
This commit is contained in:
biss committed 2026-08-03 10:01:39 +08:00
1 parent bb49401545
commit f00e9035a2
15 files changed
+12109 -20

No files matched your search

+7 -7
View File
@@ -2,8 +2,15 @@
# === Owned files start === # === Owned files start ===
# admin/index.css # admin/index.css
# admin/KcAdminUi.tsx
# admin/assets/logo.svg # admin/assets/logo.svg
# admin/i18n/messages_en.properties
# admin/i18n/messages_zh_Hans.properties
# admin/i18n/messages_zh_Hant.properties
# email/html/template.ftl # email/html/template.ftl
# email/messages/messages_en.properties
# email/messages/messages_zh_CN.properties
# email/messages/messages_zh_TW.properties
# === Owned files end ===== # === Owned files end =====
# === @keycloakify/email-native v260007.0.0 === # === @keycloakify/email-native v260007.0.0 ===
@@ -30,7 +37,6 @@
/email/messages/messages_da.properties /email/messages/messages_da.properties
/email/messages/messages_de.properties /email/messages/messages_de.properties
/email/messages/messages_el.properties /email/messages/messages_el.properties
/email/messages/messages_en.properties
/email/messages/messages_es.properties /email/messages/messages_es.properties
/email/messages/messages_fa.properties /email/messages/messages_fa.properties
/email/messages/messages_fi.properties /email/messages/messages_fi.properties
@@ -51,8 +57,6 @@
/email/messages/messages_th.properties /email/messages/messages_th.properties
/email/messages/messages_tr.properties /email/messages/messages_tr.properties
/email/messages/messages_uk.properties /email/messages/messages_uk.properties
/email/messages/messages_zh_CN.properties
/email/messages/messages_zh_TW.properties
/email/text/email-test.ftl /email/text/email-test.ftl
/email/text/email-update-confirmation.ftl /email/text/email-update-confirmation.ftl
/email/text/email-verification-with-code.ftl /email/text/email-verification-with-code.ftl
@@ -81,7 +85,6 @@
/admin/ForbiddenSection.tsx /admin/ForbiddenSection.tsx
/admin/help-urls.ts /admin/help-urls.ts
/admin/i18next.d.ts /admin/i18next.d.ts
/admin/KcAdminUi.tsx
/admin/KcContext.ts /admin/KcContext.ts
/admin/KcPage.tsx /admin/KcPage.tsx
/admin/page-nav.css /admin/page-nav.css
@@ -152,7 +155,6 @@
/admin/i18n/messages_cs.properties /admin/i18n/messages_cs.properties
/admin/i18n/messages_de.properties /admin/i18n/messages_de.properties
/admin/i18n/messages_el.properties /admin/i18n/messages_el.properties
/admin/i18n/messages_en.properties
/admin/i18n/messages_es.properties /admin/i18n/messages_es.properties
/admin/i18n/messages_eu.properties /admin/i18n/messages_eu.properties
/admin/i18n/messages_fr.properties /admin/i18n/messages_fr.properties
@@ -175,8 +177,6 @@
/admin/i18n/messages_tr.properties /admin/i18n/messages_tr.properties
/admin/i18n/messages_uk.properties /admin/i18n/messages_uk.properties
/admin/i18n/messages_vi.properties /admin/i18n/messages_vi.properties
/admin/i18n/messages_zh_Hans.properties
/admin/i18n/messages_zh_Hant.properties
/admin/identity-providers/IdentityProvidersSection.tsx /admin/identity-providers/IdentityProvidersSection.tsx
/admin/identity-providers/ManageOrderDialog.tsx /admin/identity-providers/ManageOrderDialog.tsx
/admin/identity-providers/OIDCConfigurationRepresentation.ts /admin/identity-providers/OIDCConfigurationRepresentation.ts
+4 -4
View File
@@ -54,11 +54,11 @@ export default function Template(props: TemplateProps<KcContext, I18n>) {
</a> </a>
<div className="nexus-account-header__realm"> <div className="nexus-account-header__realm">
<span>IDENTITY CONTROL</span> <span>{msg("nexusIdentityControl")}</span>
<strong>{msg("accountManagementTitle")}</strong> <strong>{msg("accountManagementTitle")}</strong>
</div> </div>
<nav className="nexus-account-utility" aria-label="Account utilities"> <nav className="nexus-account-utility" aria-label={msgStr("nexusAccountUtilities")}>
{enabledLanguages.length > 1 && ( {enabledLanguages.length > 1 && (
<details className="nexus-account-language"> <details className="nexus-account-language">
<summary>{currentLanguage.label}</summary> <summary>{currentLanguage.label}</summary>
@@ -87,7 +87,7 @@ export default function Template(props: TemplateProps<KcContext, I18n>) {
<div className="nexus-account-orbit" aria-hidden="true"> <div className="nexus-account-orbit" aria-hidden="true">
<span /> <span />
</div> </div>
<p className="nexus-account-sidebar__label">ACCOUNT MATRIX</p> <p className="nexus-account-sidebar__label">{msg("nexusAccountMatrix")}</p>
<nav aria-label={msgStr("accountManagementTitle")}> <nav aria-label={msgStr("accountManagementTitle")}>
<ul> <ul>
{navigationItems.map(item => ( {navigationItems.map(item => (
@@ -101,7 +101,7 @@ export default function Template(props: TemplateProps<KcContext, I18n>) {
</ul> </ul>
</nav> </nav>
<div className="nexus-account-sidebar__status"> <div className="nexus-account-sidebar__status">
<span /> SECURE SESSION <span /> {msg("nexusSecureSession")}
</div> </div>
</aside> </aside>
+21 -1
View File
@@ -3,7 +3,27 @@ import { i18nBuilder } from "keycloakify/account";
import type { ThemeName } from "../kc.gen"; import type { ThemeName } from "../kc.gen";
/** @see: https://docs.keycloakify.dev/features/i18n */ /** @see: https://docs.keycloakify.dev/features/i18n */
const { useI18n, ofTypeI18n } = i18nBuilder.withThemeName<ThemeName>().build(); const { useI18n, ofTypeI18n } = i18nBuilder
.withThemeName<ThemeName>()
.withCustomTranslations({
en: {
accountManagementTitle: "Account Management",
myResources: "My Resources",
nexusIdentityControl: "IDENTITY CONTROL",
nexusAccountUtilities: "Account utilities",
nexusAccountMatrix: "ACCOUNT MATRIX",
nexusSecureSession: "SECURE SESSION"
},
"zh-CN": {
accountManagementTitle: "账户管理",
myResources: "我的资源",
nexusIdentityControl: "身份控制",
nexusAccountUtilities: "账户操作",
nexusAccountMatrix: "账户矩阵",
nexusSecureSession: "安全会话"
}
})
.build();
type I18n = typeof ofTypeI18n; type I18n = typeof ofTypeI18n;
Loaded 3 of 15 files, more files were not shown because too many files have changed in this diff. Show more