diff --git a/changelog/unreleased/console-fewer-borders-type-scale.md b/changelog/unreleased/console-fewer-borders-type-scale.md new file mode 100644 index 00000000..250b0ad4 --- /dev/null +++ b/changelog/unreleased/console-fewer-borders-type-scale.md @@ -0,0 +1,9 @@ +### English + +- Console: removed redundant nested borders (cards, tables, panels now separate by surface tone and spacing) and unified text sizes on a single type scale with the system UI font, so Chinese and English text match; the browser theme color now matches the page background. +- Console: system settings are grouped into tabs (General, Routing, Security & data, Updates), and the sidebar bottom-left entry opens a version popup with release notes and the same download / apply update actions as settings. + +### 中文 + +- 控制台:去掉多余的嵌套线框(卡片、表格、面板改用底色与间距区分),并统一为一套字号层级,改用系统 UI 字体使中英文字形一致;浏览器主题色与页面背景一致。 +- 控制台:系统设置按标签页分组(常规、路由调度、安全与数据、版本更新),侧边栏左下角入口可打开版本弹窗,含更新日志及与设置页一致的下载/立即更新操作。 diff --git a/frontend/index.html b/frontend/index.html index 245f1571..0f56822b 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -6,8 +6,8 @@ - - + + CLI2API diff --git a/frontend/package-lock.json b/frontend/package-lock.json index bf4985ff..a57d8eb8 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -8,8 +8,6 @@ "name": "cli2api-frontend", "version": "0.0.0", "dependencies": { - "@fontsource-variable/geist": "^5.3.0", - "@fontsource-variable/geist-mono": "^5.3.0", "@heroui/react": "^3.2.4", "@heroui/styles": "^3.2.4", "@phosphor-icons/react": "^2.1.10", @@ -84,24 +82,6 @@ "node": ">=6.9.0" } }, - "node_modules/@fontsource-variable/geist": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@fontsource-variable/geist/-/geist-5.3.0.tgz", - "integrity": "sha512-j0m+vLQuG5XAYoHtGCVu0spvlGreR3EzpECUVzkFmI1mTVnAO38l/NEPDCFgZ177JxzYJCLSmTQibIiYPilGrA==", - "license": "OFL-1.1", - "funding": { - "url": "https://github.com/sponsors/ayuhito" - } - }, - "node_modules/@fontsource-variable/geist-mono": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@fontsource-variable/geist-mono/-/geist-mono-5.3.0.tgz", - "integrity": "sha512-vBbuwDEo9AkrqADMXOrlAR3DFcJi4/JxeuU43FoiQERnNwsfXNnvxvReZG02cQKmyk4DZkZdBZX3oTDvy2zBAw==", - "license": "OFL-1.1", - "funding": { - "url": "https://github.com/sponsors/ayuhito" - } - }, "node_modules/@formatjs/ecma402-abstract": { "version": "2.3.6", "resolved": "https://registry.npmmirror.com/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.6.tgz", diff --git a/frontend/package.json b/frontend/package.json index 48d7cf4b..4ae013e7 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -11,8 +11,6 @@ "sync": "npm run build && node ./scripts/sync-static.mjs" }, "dependencies": { - "@fontsource-variable/geist": "^5.3.0", - "@fontsource-variable/geist-mono": "^5.3.0", "@heroui/react": "^3.2.4", "@heroui/styles": "^3.2.4", "@phosphor-icons/react": "^2.1.10", diff --git a/frontend/src/components/AddAccountModal.tsx b/frontend/src/components/AddAccountModal.tsx index 3c66f815..234ec4ef 100644 --- a/frontend/src/components/AddAccountModal.tsx +++ b/frontend/src/components/AddAccountModal.tsx @@ -79,7 +79,7 @@ function AccountTypeSkeleton({ ariaLabel }: { ariaLabel: string }) { return (
{Array.from({ length: 6 }, (_, index) => ( -
+
@@ -534,7 +534,7 @@ export function AddAccountModal({ isOpen, onClose, onAdded }: Props) {
- {t('addAccountTitle')} + {t('addAccountTitle')}

{step === 'method' ? t('addAccountDesc') : (hint || t('addAccountDesc'))}

@@ -549,7 +549,7 @@ export function AddAccountModal({ isOpen, onClose, onAdded }: Props) { {typesLoading ? ( ) : !typesReady ? ( -

{t('accountTypeHint')}

+

{t('accountTypeHint')}

) : ( ) : ( <> -
+
-
{activeOption ? optionLabel(activeOption, t) : t('accountType')}
-
{hint}
+
{activeOption ? optionLabel(activeOption, t) : t('accountType')}
+
{hint}
{advancedOpen ? ( -
+
-
{t('dropSystemPrompt')}
+
{t('dropSystemPrompt')}

{t('dropSystemPromptCreateHint')}

- {t('zhipuAccountMode')} + {t('zhipuAccountMode')} ) : null} {message ? ( -

{isDone ? : null}{message}

+

{isDone ? : null}{message}

) : null}