From 591e44721afd2bb8cc0e6d276f550768fb860751 Mon Sep 17 00:00:00 2001 From: jkooe <62494645+jkooe@users.noreply.github.com> Date: Sun, 11 Oct 2026 13:50:49 +0800 Subject: [PATCH] =?UTF-8?q?style(console):=20=E7=95=8C=E9=9D=A2=E4=B8=80?= =?UTF-8?q?=E5=BE=8B=E4=B8=8D=E4=BD=BF=E7=94=A8=E5=9B=BE=E6=A0=87=20?= =?UTF-8?q?=E2=80=94=E2=80=94=20=E5=AF=BC=E8=88=AA=E6=94=B9=E7=BA=AF?= =?UTF-8?q?=E6=96=87=E5=AD=97=EF=BC=8C=E5=B9=B6=E5=85=B3=E9=97=AD=E5=86=85?= =?UTF-8?q?=E7=BD=AE=E6=8F=92=E7=94=BB/=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 触发原因是一次真实的渲染事故:侧栏那些 emoji 图标在非系统字体栈的渲染器里 退化成**豆腐块**(本机截图对比可见)。试过给图标指定 Apple Color Emoji、 全局字体栈加 !important、乃至 font-variant-emoji —— 分别无效或更糟 (最后一招把 ASCII 数字也拆成了 emoji 呈现)。而「哪套字体栈一定带 emoji」 跨平台并不成立,与其赌字形,不如不用。 emoji 图标 → 路由表 meta.icon 字段整体移除,侧栏改纯文字 n-empty 空态插画 → 16 处 :show-icon="false"(空态里的插画比图标更「图形」, 分布在 9 个页面,是最容易漏掉的一类) n-alert 类型图标 → 7 处(naive-ui 的 showIcon 默认 true,不显式关就在) n-popconfirm 询问图标 → 3 处 夹在文案里的 ⚠ → TerminalView 的「高权限操作,请谨慎」保留纯文字 严重程度不靠图标也能读:n-alert 仍由 type 的底色/边框区分。 顺带清掉随包的模板残留资产: public/vite.svg、public/tauri.svg —— public/ 下的文件会被整体复制进产物, 此前等于把 Vite / Tauri 的 logo 一并发出去了(且 index.html 的 favicon 正指向它); src/assets/vue.svg —— 无人引用; index.html 的 还是模板默认的「Tauri + Vue + Typescript App」。 原生窗口标题取自 tauri.conf.json("nodeagent 控制台"),故此前不影响观感, 但与 dev 态浏览器标签页不一致,一并改齐。 「不属界面图标、刻意未动」的三类写明在 CHANGELOG 里: 托盘图标(菜单栏没图标就点不到,关窗后应用无法寻回,属功能必需)、 被控端 CLI 自身打印的文本标记(⚠️/ℹ️/✅,是程序输出内容,非界面元素)、 控件的结构性部件(下拉箭头、折叠箭头、输入框清除钮、表格排序箭头)。 验证:vue-tsc 0 错 | 契约守卫 6/6 | 单测 280/280 | 前端产物内已无任何 svg 与 logo 字样 | macOS .app 重打通过(92.21 MiB,前端在无 public/ 下亦正常构建)。 --- CHANGELOG.md | 21 ++++++++++++++++++++ apps/console/index.html | 3 +-- apps/console/public/tauri.svg | 6 ------ apps/console/public/vite.svg | 1 - apps/console/src/assets/vue.svg | 1 - apps/console/src/components/AppShell.vue | 7 ++++--- apps/console/src/router/index.ts | 22 +++++++++++---------- apps/console/src/views/AuditView.vue | 5 ++--- apps/console/src/views/FilesView.vue | 4 ++-- apps/console/src/views/LocalServiceView.vue | 6 +++--- apps/console/src/views/LogsView.vue | 2 +- apps/console/src/views/NodesView.vue | 8 ++++---- apps/console/src/views/OverviewView.vue | 6 +++--- apps/console/src/views/ProcessesView.vue | 10 +++++----- apps/console/src/views/SoftwareView.vue | 10 +++++----- apps/console/src/views/TerminalView.vue | 4 ++-- 16 files changed, 65 insertions(+), 51 deletions(-) delete mode 100644 apps/console/public/tauri.svg delete mode 100644 apps/console/public/vite.svg delete mode 100644 apps/console/src/assets/vue.svg diff --git a/CHANGELOG.md b/CHANGELOG.md index a0a438d..336df0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -88,6 +88,27 @@ **新步骤必须逐条核对前置产物由哪一步生成、顺序是否在其后** —— 本地验证时产物早就在,会把这层依赖完全掩盖)。 - `.github/workflows/windows-e2e.yml`:步骤名与注释同步为含 `agent.mjs` 的说明。 +### 变更 —— 界面一律不使用图标 + +- **去掉全部 emoji 图标**:路由表 `meta.icon` 字段整体移除,侧栏导航由「图标 + 标题」改为**纯文字**。 + 触发原因是一次真实的渲染事故:emoji 图标在非系统字体栈的渲染器里退化成**豆腐块**(截图对比可见), + 而「哪套字体栈一定带 emoji」跨平台并不成立 —— 与其赌字形,不如不用。 +- **`n-alert` / `n-empty` / `n-popconfirm` 的内置图形一并关闭**:这三个组件的 `showIcon` 默认均为 `true`, + 故 16 处 `n-empty` 的空态插画、7 处 `n-alert` 的类型图标、3 处 `n-popconfirm` 的询问图标全部消失, + 只剩文字与配色(严重程度仍由 `type` 的底色/边框区分,信息不丢)。 + `n-empty` 是**空态里的插画**(比图标更「图形」),在 9 个页面都有,是最容易漏掉的一类。 +- **夹在文案里的符号也去掉**:`TerminalView` 的「⚠ 高权限操作,请谨慎」保留纯文字。 +- **清理随包的模板残留资产**:删掉 `public/vite.svg`、`public/tauri.svg`、`src/assets/vue.svg` + 与 `index.html` 的 favicon 声明。`public/` 下的文件会被整体复制进产物, + 此前等于把 Vite / Tauri 的 logo 一起发了出去;`index.html` 的标题也还是模板默认值 + (原生窗口标题取自 `tauri.conf.json`,不受影响),本次一并改齐。 + +> **边界(以下不算「界面图标」,未动)**:① 托盘图标 —— 菜单栏没有图标就点不到, +> 关窗后应用将无法寻回,属**功能必需**;② 被控端 CLI 自身打印的文本标记(`⚠️`/`ℹ️`/`✅`, +> 见 `apps/agent/src/index.ts`、`packages/client/src/keys.ts`、`apps/agent/src/metrics.ts`)—— +> 它们是**程序输出内容**,会原样出现在「服务日志」页里,但不是界面元素; +> ③ 控件的结构性部件(下拉箭头、折叠箭头、输入框清除钮、表格排序箭头)。 + ### 说明 —— 本轮**刻意不升版本号** 本轮新增的全部是**控制台**功能,**被控端能力集合未变**(未增删任何 `system.*` / `fs.*` / `app.*` 能力)。 diff --git a/apps/console/index.html b/apps/console/index.html index 99f203f..1571290 100644 --- a/apps/console/index.html +++ b/apps/console/index.html @@ -2,9 +2,8 @@ <html lang="en"> <head> <meta charset="UTF-8" /> - <link rel="icon" type="image/svg+xml" href="/vite.svg" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <title>Tauri + Vue + Typescript App + nodeagent 控制台 diff --git a/apps/console/public/tauri.svg b/apps/console/public/tauri.svg deleted file mode 100644 index 31b62c9..0000000 --- a/apps/console/public/tauri.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/apps/console/public/vite.svg b/apps/console/public/vite.svg deleted file mode 100644 index e7b8dfb..0000000 --- a/apps/console/public/vite.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/console/src/assets/vue.svg b/apps/console/src/assets/vue.svg deleted file mode 100644 index 770e9d3..0000000 --- a/apps/console/src/assets/vue.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/console/src/components/AppShell.vue b/apps/console/src/components/AppShell.vue index 07458a1..6ed013f 100644 --- a/apps/console/src/components/AppShell.vue +++ b/apps/console/src/components/AppShell.vue @@ -1,5 +1,5 @@