From 4e66e6a7f4d048a97b30edd3cd0a88ccbac13253 Mon Sep 17 00:00:00 2001 From: m4 Date: Wed, 12 Aug 2026 19:45:18 +0800 Subject: [PATCH] refactor: split i18n catalogs into domain modules, rework dialog components In-progress work committed to unblock the config import/export plan: - i18n: new changePassword/modelConfig/imageModels/systemConfig catalogs (zh+en) - AccountDialog/ChangePasswordDialog/ConfigDialog/ImageModelsDialog rewired - RegistryEditor/ImageModelsEditor updated for the new catalogs - system-config tabs restyled; page/layout follow-ons --- src/app/[locale]/layout.tsx | 7 +- src/app/[locale]/page.tsx | 52 +-- src/app/components/AccountDialog.tsx | 33 +- src/app/components/ChangePasswordDialog.tsx | 23 +- src/app/components/ConfigDialog.tsx | 15 +- src/app/components/ImageModelsDialog.tsx | 11 +- src/app/components/ImageModelsEditor.tsx | 112 +++--- src/app/components/RegistryEditor.tsx | 345 +++++++++++------- .../components/system-config/BackupTab.tsx | 53 +-- .../components/system-config/GeneralTab.tsx | 32 +- .../system-config/LoginTermsTab.tsx | 10 +- .../components/system-config/SecurityTab.tsx | 28 +- .../system-config/SystemConfigDialog.tsx | 54 +-- src/i18n/messages/en/changePassword.ts | 14 + src/i18n/messages/en/dialogs.ts | 15 +- src/i18n/messages/en/header.ts | 1 + src/i18n/messages/en/imageModels.ts | 60 +++ src/i18n/messages/en/index.ts | 8 + src/i18n/messages/en/modelConfig.ts | 118 ++++++ src/i18n/messages/en/systemConfig.ts | 75 ++++ src/i18n/messages/messages.test.ts | 8 + src/i18n/messages/zh/changePassword.ts | 13 + src/i18n/messages/zh/dialogs.ts | 15 +- src/i18n/messages/zh/header.ts | 1 + src/i18n/messages/zh/imageModels.ts | 58 +++ src/i18n/messages/zh/index.ts | 8 + src/i18n/messages/zh/modelConfig.ts | 115 ++++++ src/i18n/messages/zh/systemConfig.ts | 73 ++++ 28 files changed, 1023 insertions(+), 334 deletions(-) create mode 100644 src/i18n/messages/en/changePassword.ts create mode 100644 src/i18n/messages/en/imageModels.ts create mode 100644 src/i18n/messages/en/modelConfig.ts create mode 100644 src/i18n/messages/en/systemConfig.ts create mode 100644 src/i18n/messages/zh/changePassword.ts create mode 100644 src/i18n/messages/zh/imageModels.ts create mode 100644 src/i18n/messages/zh/modelConfig.ts create mode 100644 src/i18n/messages/zh/systemConfig.ts diff --git a/src/app/[locale]/layout.tsx b/src/app/[locale]/layout.tsx index 5b44a26..4561f22 100644 --- a/src/app/[locale]/layout.tsx +++ b/src/app/[locale]/layout.tsx @@ -1,4 +1,5 @@ import type { Metadata, Viewport } from "next"; +import Script from "next/script"; import { notFound } from "next/navigation"; import { getTranslations } from "next-intl/server"; import { hasLocale, NextIntlClientProvider } from "next-intl"; @@ -82,7 +83,11 @@ export default async function RootLayout({ suppressHydrationWarning className={inter.variable} > -