修改前端图标以及修改oss存储桶位置
This commit is contained in:
@@ -130,6 +130,7 @@
|
||||
- 文件元数据在数据库
|
||||
- 文件内容走存储层抽象
|
||||
- 支持本地磁盘和 OSS
|
||||
- 当前线上网盘文件存储已切到阿里云 OSS 成都地域桶 `yoyuzh-files2`
|
||||
- 前端会缓存目录列表和最后访问路径
|
||||
|
||||
### 3.3 快传模块
|
||||
@@ -296,6 +297,13 @@
|
||||
- 让文件元数据逻辑与底层存储解耦
|
||||
- 上传、下载、复制、移动都通过统一抽象收口
|
||||
|
||||
当前线上状态:
|
||||
|
||||
- 生产环境文件桶已从东京地域迁到成都地域 `yoyuzh-files2`
|
||||
- 生产后端当前使用 `https://oss-cn-chengdu.aliyuncs.com` 作为 OSS endpoint
|
||||
- 普通文件下载仍采用“后端鉴权后返回签名 URL,浏览器直连 OSS 下载”的主链路
|
||||
- 2026-03-24 已对抽样对象 `users/6/第四组 脑机接口与脑启发计算.pptx` 在新桶执行 HEAD 校验并返回 200
|
||||
|
||||
## 8. 部署架构
|
||||
|
||||
### 8.1 前端
|
||||
@@ -314,6 +322,9 @@
|
||||
|
||||
- 服务名:`my-site-api.service`
|
||||
- 运行包路径:`/opt/yoyuzh/yoyuzh-portal-backend.jar`
|
||||
- 额外配置文件:`/opt/yoyuzh/application-prod.yml`
|
||||
- 环境变量文件:`/opt/yoyuzh/app.env`
|
||||
- 2026-03-24 已把生产后端 OSS 配置切换到成都新桶 `yoyuzh-files2`
|
||||
|
||||
## 9. 开发注意事项
|
||||
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
# File Icon Theme Expansion Implementation Plan
|
||||
|
||||
> **For agentic workers:** REQUIRED: Use superpowers:subagent-driven-development (if subagents available) or superpowers:executing-plans to implement this plan. Steps use checkbox (`- [ ]`) syntax for tracking.
|
||||
|
||||
**Goal:** 扩展网盘文件图标体系,让常见文件类型都有稳定映射,并把新的图标主题发布到前端 OSS。
|
||||
|
||||
**Architecture:** 把当前散落在 `front/src/pages/Files.tsx` 和 `front/src/pages/files-upload.ts` 里的类型判断收口到共享模块,再通过一个小型 UI 组件统一渲染图标、配色和类型文案。这样列表、网格、详情栏和上传进度面板都能复用同一套规则,避免后续继续分叉。
|
||||
|
||||
**Tech Stack:** React 19、TypeScript、Vite 6、lucide-react、Node test runner、OSS 发布脚本
|
||||
|
||||
---
|
||||
|
||||
### Task 1: 锁定文件类型映射行为
|
||||
|
||||
**Files:**
|
||||
- Modify: `front/src/pages/files-upload.test.ts`
|
||||
|
||||
- [ ] **Step 1: 写失败测试**
|
||||
覆盖 `xlsx`、`pptx`、`zip`、`mp4`、`mp3`、`fig`、`ttf`、`exe`、`epub`、`json` 等常见类型。
|
||||
|
||||
- [ ] **Step 2: 运行测试确认红灯**
|
||||
|
||||
Run: `npm run test -- src/pages/files-upload.test.ts`
|
||||
|
||||
Expected: 现有上传类型识别无法正确区分上述文件类型。
|
||||
|
||||
### Task 2: 收口共享文件类型模块
|
||||
|
||||
**Files:**
|
||||
- Create: `front/src/lib/file-type.ts`
|
||||
- Create: `front/src/lib/file-type.test.ts`
|
||||
|
||||
- [ ] **Step 1: 写失败测试**
|
||||
覆盖网盘文件元数据在 `contentType + extension` 组合下的分组、标签和优先级。
|
||||
|
||||
- [ ] **Step 2: 运行测试确认红灯**
|
||||
|
||||
Run: `npm run test -- src/lib/file-type.test.ts`
|
||||
|
||||
Expected: 共享模块尚不存在或无法满足测试期望。
|
||||
|
||||
- [ ] **Step 3: 写最小实现**
|
||||
提供统一的 `resolveFileType` / `resolveStoredFileType` 能力,并产出主题所需的标签与类型标识。
|
||||
|
||||
- [ ] **Step 4: 运行测试确认绿灯**
|
||||
|
||||
Run: `npm run test -- src/lib/file-type.test.ts src/pages/files-upload.test.ts`
|
||||
|
||||
Expected: 两组测试全部通过。
|
||||
|
||||
### Task 3: 统一前端图标主题与页面使用
|
||||
|
||||
**Files:**
|
||||
- Create: `front/src/components/ui/FileTypeIcon.tsx`
|
||||
- Modify: `front/src/pages/Files.tsx`
|
||||
- Modify: `front/src/pages/files-upload.ts`
|
||||
|
||||
- [ ] **Step 1: 最小接入**
|
||||
让文件列表、网格卡片、详情栏、上传面板都使用统一图标主题组件或配置。
|
||||
|
||||
- [ ] **Step 2: 本地验证**
|
||||
|
||||
Run: `npm run lint`
|
||||
|
||||
Expected: TypeScript 校验通过。
|
||||
|
||||
- [ ] **Step 3: 构建验证**
|
||||
|
||||
Run: `npm run build`
|
||||
|
||||
Expected: Vite 生产构建成功。
|
||||
|
||||
### Task 4: 发布前端到 OSS
|
||||
|
||||
**Files:**
|
||||
- Use existing script: `scripts/deploy-front-oss.mjs`
|
||||
|
||||
- [ ] **Step 1: 执行正式发布**
|
||||
|
||||
Run: `node scripts/deploy-front-oss.mjs`
|
||||
|
||||
Expected: `front/dist` 上传到配置好的 OSS 前缀并完成 SPA 别名文件更新。
|
||||
Reference in New Issue
Block a user