feat(v1.2): 体验升级 — 快捷键系统 + 标签拖拽 + SFTP拖拽上传 + 组件拆分 + 响应式
任务1: 全局快捷键管理器 — useKeyboardShortcuts hook Ctrl+Tab/Shift+Tab标签切换, Ctrl+1~9跳转, F11全屏, Ctrl+Shift+N新建标签 任务2: 标签拖拽排序 — tabStore.moveTab + TabBar HTML5 DnD 不可变更新, 拖拽视觉反馈(opacity+指示线), 活跃标签底部accent-blue指示线 任务3: SFTP拖拽上传 + useSFTP调试清理 FileListPanel拖拽覆盖层(Upload图标+虚线边框), 5个调试函数→createLogger, disconnect()正确调用IPC, 删除mock data 任务4: SFTP右键菜单完善 — 重命名/复制路径/属性/权限 FilePropertiesDialog+ChmodDialog, sftpStat/sftpChmod IPC全栈实现 任务5-6: 侧边栏分组折叠动画 + 宽度可拖拽调整 Grid 0fr→1fr折叠动画, ChevronRight旋转, resize handle 180~400px, settings记忆 任务7: 响应式布局 + 视觉优化V1~V5 useMediaQuery hook, <800px侧边栏overlay模式, SFTP垂直堆叠, WelcomeView响应式grid 任务8: Loading/Skeleton骨架屏 Skeleton/SkeletonLine/SkeletonCircle/SkeletonBlock + FileListSkeleton/SessionTreeSkeleton/TabContentSkeleton 任务9: 空状态设计 EmptyState通用组件, SessionTree/FileListPanel/WelcomeView/SFTPView空状态引导 任务10: TerminalView组件拆分重构 711行→285行 useTerminalConnection(300行) + useTerminalSearch(123行) + TerminalOverlay(98行) + TerminalSearchBar(74行) 33 files changed, 2682 insertions(+), 872 deletions(-)
This commit is contained in:
1 parent
d344900118
commit
caba5f4c0d
33 files changed
+2683
-873
No files matched your search
+21
-20
@@ -12,34 +12,35 @@ v1.5.0 安全升级 ─── 1 周 ──→ 安全 55→85, 代码 80→85
|
||||
|
||||
---
|
||||
|
||||
## v1.1.0 基础可用 (2 周) — 当前阶段
|
||||
## v1.1.0 基础可用 (2 周) — ✅ 已完成
|
||||
|
||||
> **目标**: 解决所有 Critical UI/UX 问题,建立基础反馈系统,产品具备日常使用价值
|
||||
|
||||
### 🔴 P0 — 必须完成
|
||||
### ✅ 全部完成 (提交: 53274e2 + d344900)
|
||||
|
||||
| # | 任务 | 类型 | 预计 | 验收标准 |
|
||||
|---|------|------|------|----------|
|
||||
| 1 | Toast 通知系统 | 新增 | 2天 | `useToast()` hook + `ToastContainer`,支持 success/error/warning/info 四种类型,自动消失+手动关闭 |
|
||||
| 2 | 替换所有 alert/prompt/confirm | 修复 | 2天 | `App.tsx` 5处 alert → Toast,`SFTPView.tsx` prompt → 内联输入,`PortForwardView.tsx` confirm → ConfirmDialog |
|
||||
| 3 | SFTP 上传/删除真实实现 | 修复 | 3天 | 上传通过 ssh2 sftp fastPut 实现,删除通过 rimraf/unlink 实现,右键菜单 action 绑定真实函数 |
|
||||
| 4 | 终端搜索 (SearchAddon) | 新增 | 1天 | Ctrl+Shift+F 打开搜索栏,支持正则/大小写/全词匹配,高亮所有匹配 |
|
||||
| 5 | 会话恢复 | 新增 | 3天 | 关闭前持久化标签状态到 SQLite,启动时恢复标签+自动重连 |
|
||||
| 6 | 修复私钥浏览按钮 | 修复 | 0.5天 | dialog.showOpenDialog() 绑定到 onClick,过滤 `.pem/.key/id_*` |
|
||||
| 7 | 清理生产调试日志 | 修复 | 1天 | 移除 `DEBUG=true`,所有 console.log 用 logger 替代或删除 |
|
||||
| 8 | 设计系统统一颜色 | 修复 | 1天 | cyan→accent-blue, sky→accent-blue, slate→dark-*,新增 accent-orange |
|
||||
| 9 | StatusBar 接入实际状态 | 修复 | 0.5天 | 显示当前连接 host、延迟 ms、标签数 |
|
||||
| 10 | WelcomeView 真实最近连接 | 修复 | 1天 | 从 sessionStore 获取最近 5 条连接记录,空状态显示引导 |
|
||||
| # | 任务 | 状态 | 提交 |
|
||||
|---|------|------|------|
|
||||
| 1 | Toast 通知系统 | ✅ | d344900 |
|
||||
| 2 | 替换所有 alert/prompt/confirm | ✅ | d344900 |
|
||||
| 3 | SFTP 上传/删除真实实现 | ✅ | d344900 |
|
||||
| 4 | 终端搜索 (SearchAddon) | ✅ | d344900 |
|
||||
| 5 | 会话恢复 (标签持久化) | ✅ | d344900 |
|
||||
| 6 | 修复私钥浏览按钮 | ✅ | 53274e2 |
|
||||
| 7 | 清理生产调试日志 | ✅ | 53274e2 |
|
||||
| 8 | 设计系统统一颜色 | ✅ | 53274e2 |
|
||||
| 9 | StatusBar 接入实际状态 | ✅ | 53274e2 |
|
||||
| 10 | WelcomeView 真实最近连接 | ✅ | 53274e2 |
|
||||
| 11 | better-sqlite3 → sql.js 迁移 | ✅ | 53274e2 |
|
||||
|
||||
### 里程碑推送
|
||||
- [ ] SFTP 功能可用 (上传+删除+右键菜单)
|
||||
- [ ] Toast 系统上线 (零 alert)
|
||||
- [ ] 终端搜索可用
|
||||
- [ ] 会话恢复可用
|
||||
### 里程碑
|
||||
- [x] SFTP 功能可用 (上传+删除+右键菜单)
|
||||
- [x] Toast 系统上线 (零 alert)
|
||||
- [x] 终端搜索可用
|
||||
- [x] 会话恢复可用
|
||||
|
||||
---
|
||||
|
||||
## v1.2.0 体验升级 (2 周)
|
||||
## v1.2.0 体验升级 (2 周) — 🚧 进行中
|
||||
|
||||
> **目标**: 快捷键补全、视觉打磨、交互优化,接近 Termius 体验水平
|
||||
|
||||
|
||||
Reference in new issue
Block a user