SSH 工作台主题适配
维护边界
主机总览继续由 frontend/src/dashboard.css 和 dashboard.ts 管理,布局、地球和主机列表不因工作台换肤而调整。
frontend/src/workspace-theme.css 是 EdgeSSH 自有的薄适配层。在 main.ts 中紧跟上游 style.css 导入,复用总览的 --home-* 色彩与字体,将它们映射到上游既有的 --bg、--panel、--accent 等变量。组件覆盖限定在 #app 内,避免影响总览。
- 默认浅色;原来的
workers-webssh.theme偏好和深色切换继续生效。 - 终端输出始终保留上游深色背景和 ANSI 调色板。绿色输出不是品牌色,不应全局替换;成功状态保留绿色,危险操作保留红色。
- 工具栏、连接表单、文件/进程面板、会话日志与弹窗使用统一外壳;不复制业务组件,不改变 DOM ID、状态类、事件绑定或协议。
- 小屏只通过 CSS 将资源指标放到工具栏第二行;原有文件树、分栏、全屏和面板开关继续由上游管理。
合并上游时
- 正常合并上游的
style.css、main.ts和业务模块,不把品牌样式搬回这些文件。 - 保留
main.ts里最后导入的workspace-theme.css,以及 HTML 的浅色默认值。 - 若上游改名或删除 CSS 变量/组件类,在适配层更新对应映射,而不是维护第二份组件。
- 执行
npm run check。主题的静态契约测试用于提醒入口或关键选择器漂移,不代替浏览器验收。 - 浏览器复核浅/深色、连接表单、空终端、已连接终端、文件/进程/日志、指纹与危险操作弹窗;检查 320、375、414、768px 与桌面。
本次不修改 SSH/SFTP/进程逻辑,并不意味着未来合并永远无冲突。适配层依赖的上游 CSS 变量、类名或结构变化时,仍需要逐项验证。