v1.1.0: better-sqlite3→sql.js迁移 + 6项UI/代码修复

迁移:
- better-sqlite3(原生C++) → sql.js(WASM纯JS), 兼容Node 24
- database-service.ts: PreparedStatement包装器保持API兼容
- main.ts: initialize()改为async/await
- 移除@electron/rebuild和@types/better-sqlite3依赖
- 新增.npmrc阿里云镜像加速

UI/代码修复(任务1-6):
1. TerminalView: 清理111行调试日志(645→534行)
2. 设计系统: cyan/slate→accent-blue/dark-*颜色统一(FileRow/TransferItem/Breadcrumb/ContextMenu)
3. StatusBar: 重写接入实时连接状态,三区布局
4. SessionDialog: 私钥浏览按钮添加onClick处理
5. WelcomeView: 真实session数据替换硬编码假数据
6. SFTPView: emoji→Lucide图标(FolderOpen/Upload/Download/Trash2)

构建验证: tsc零错误 + vite build成功(Node 24.14.0)
This commit is contained in:
OpsXShell Dev committed 2026-04-18 15:40:19 +08:00
1 parent c5243df040
commit 53274e2291
14 files changed
+1784 -2141

No files matched your search

+4 -4
View File
@@ -17,23 +17,23 @@ export function Breadcrumb({ path, onNavigate, onHome }: BreadcrumbProps) {
<div className="flex items-center gap-1 text-sm min-w-0">
<button
onClick={onHome}
className="p-1.5 hover:bg-slate-700 rounded transition-colors flex-shrink-0"
className="p-1.5 hover:bg-dark-700 rounded transition-colors flex-shrink-0"
title="主目录"
>
<Home className="w-4 h-4 text-gray-400" />
</button>
<button
onClick={() => onNavigate('/')}
className="px-1.5 py-0.5 hover:bg-slate-700 rounded text-gray-400 hover:text-slate-200 transition-colors"
className="px-1.5 py-0.5 hover:bg-dark-700 rounded text-gray-400 hover:text-dark-200 transition-colors"
>
/
</button>
{parts.map((part, index) => (
<span key={index} className="flex items-center min-w-0">
<ChevronRight className="w-3 h-3 text-slate-600 mx-0.5 flex-shrink-0" />
<ChevronRight className="w-3 h-3 text-dark-600 mx-0.5 flex-shrink-0" />
<button
onClick={() => onNavigate('/' + parts.slice(0, index + 1).join('/'))}
className="px-1.5 py-0.5 hover:bg-slate-700 rounded text-gray-200 hover:text-white transition-colors truncate max-w-[120px]"
className="px-1.5 py-0.5 hover:bg-dark-700 rounded text-gray-200 hover:text-white transition-colors truncate max-w-[120px]"
>
{part}
</button>