3d26bffc99
新增“上传文件夹”入口,选择目录后先在浏览器端打包为 zip, 上传完成后自动触发远端解压并尝试清理临时压缩包。 同时重排文件右键菜单,补齐终端子菜单、复制文件名与绝对路径等操作, 并扩展上传任务状态展示。 同步前后端包版本到 1.0.0,并将设置页版本显示规范为 1.0
57 lines
2.2 KiB
Markdown
57 lines
2.2 KiB
Markdown
# 任务清单: folder-upload-auto-zip
|
|
|
|
```yaml
|
|
@feature: folder-upload-auto-zip
|
|
@created: 2026-03-26
|
|
@status: completed
|
|
@mode: R2
|
|
```
|
|
|
|
## 进度概览
|
|
|
|
| 完成 | 失败 | 跳过 | 总数 |
|
|
|------|------|------|------|
|
|
| 6 | 0 | 0 | 6 |
|
|
|
|
---
|
|
|
|
## 任务列表
|
|
|
|
### 1. 方案与范围确认
|
|
|
|
- [√] 1.1 创建文件夹压缩上传方案包并锁定为前端主导实现 | depends_on: []
|
|
|
|
### 2. 上传入口与压缩任务
|
|
|
|
- [√] 2.1 在 `packages/frontend/src/components/FileManager.vue` 中新增“上传文件夹”入口与目录选择 input | depends_on: [1.1]
|
|
- [√] 2.2 在前端实现目录选择后的 zip 打包流程,并生成可上传的临时归档文件 | depends_on: [2.1]
|
|
|
|
### 3. 上传状态与自动解压
|
|
|
|
- [√] 3.1 在 `packages/frontend/src/composables/useFileUploader.ts` 和相关类型中扩展压缩中/解压中任务状态与成功回调 | depends_on: [2.2]
|
|
- [√] 3.2 上传成功后自动调用远端解压,并在成功时清理临时 zip 与刷新文件树 | depends_on: [3.1]
|
|
|
|
### 4. 文案与验证
|
|
|
|
- [√] 4.1 更新 locale 文案并验证前后端构建 | depends_on: [3.2]
|
|
- [√] 4.2 同步 `.helloagents` 文档、模块说明与 CHANGELOG | depends_on: [4.1]
|
|
|
|
---
|
|
|
|
## 执行日志
|
|
|
|
| 时间 | 任务 | 状态 | 备注 |
|
|
|------|------|------|------|
|
|
| 2026-03-26 02:34 | 1.1 | 完成 | 创建 implementation 方案包,并锁定为前端主导的文件夹压缩上传方案 |
|
|
| 2026-03-26 02:41 | 2.1 | 完成 | 文件管理器新增隐藏目录选择 input、上传文件夹按钮与上下文菜单入口 |
|
|
| 2026-03-26 02:45 | 2.2 | 完成 | 新增浏览器端目录压缩逻辑,选择文件夹后生成临时 zip 归档 |
|
|
| 2026-03-26 02:49 | 3.1 | 完成 | 扩展上传任务状态,支持压缩中、上传中和解压中串联展示 |
|
|
| 2026-03-26 02:50 | 3.2 | 完成 | 上传成功后自动触发远端解压,并尝试清理临时 zip |
|
|
| 2026-03-26 02:52 | 4.1 | 完成 | `npm run build --workspace @nexus-terminal/frontend` 通过 |
|
|
|
|
---
|
|
|
|
## 执行备注
|
|
|
|
> 当前方案已按“前端压缩 + 现有上传协议 + 远端自动解压”落地;空目录仍受浏览器 `webkitdirectory` 选择结果限制,不会被单独打包上传。
|