feat: 收口组件样式并调整移动端侧栏

This commit is contained in:
GJ
2026-09-04 17:19:34 +08:00
parent d252d5513f
commit e6e0f08072
68 changed files with 2717 additions and 2775 deletions
+5 -3
View File
@@ -55,11 +55,11 @@ API_PROXY_TARGET=http://localhost:3412
## 技术与规范
- Vite 8、Vue 3、TypeScript、Vue Router
- Tailwind CSS 4,通过 `@tailwindcss/vite` 集成
- Tailwind CSS 4,通过 `@tailwindcss/vite` 集成;组件专属样式写在 SFC `<style>`,主题变量、base、Naive 覆盖和跨页原子 class 留在 `src/styles/styles.css` / `src/styles/admin.css`
- Naive UI:布局、菜单、表格、选择器、输入框、按钮、弹窗、标签、折叠面板、进度和时间线
- Oxlint:脚本质量检查;ESLint:补充 Vue 模板语义
- Oxfmt(不是 `oxformat`):沿用后端四空格、单引号、无分号、无尾逗号的风格
- Vitest + Vue Test Utils + happy-domAPI 契约、组件交互和异步生命周期测试
- Vitest + Vue Test Utils + happy-domAPI 契约、组件交互和异步生命周期测试`*.test.ts` 放在 `tests/`,按 `src` 镜像,不和组件放在一起
- Lefthook + Commitlint:提交前执行检查,提交信息使用 `feat:``fix:``refactor:`
```bash
@@ -89,6 +89,8 @@ Oxfmt 不负责代码质量,Oxlint 不负责 Vue 的完整类型推导;Vue S
| `src/composables` | 具备取消和竞态保护的轮询、系统主题与偏好持久化 |
| `src/lib` | HTTP、错误格式、日期和导出工具 |
| `src/router` | 按 graph 拆分的懒加载路由 |
| `src/styles` | 全局主题、base、Naive 覆盖和跨页原子 class |
| `tests` | 与 `src` 镜像的 `*.test.ts`,不和组件源码放在一起 |
每个功能模块通过 `index.ts` 暴露公共入口。业务类型和行为函数均添加中文职责注释。不要把下一条 graph 的服务继续堆进 `App.vue`
@@ -126,7 +128,7 @@ Oxfmt 不负责代码质量,Oxlint 不负责 Vue 的完整类型推导;Vue S
- 拆解设置中“每组集数”和“抽取模块”使用相同标题间距;输入框、复选框与预览按钮对齐到 34px 控件行,模块说明独立放在下方。“集 / 组”保持单行,窄抽屉按实际内容宽度将操作和完整模块分组换行,校验与预览逻辑不变。
- 窄屏默认收起侧栏,目录与正文改用紧凑布局;执行记录仍可查看。长弹窗在自身内部滚动。
布局样式集中在 `src/admin.css`,业务排版保留在 `src/styles.css`。新增页面应使用 `WorkspacePage`(内容优先页开启 `compact`),低频操作使用 `WorkspaceTools`;避免通过 `body``window.scrollTo` 管理滚动。
布局样式集中在 `src/styles/admin.css`,业务排版保留在 `src/styles/styles.css`。新增页面应使用 `WorkspacePage`(内容优先页开启 `compact`),低频操作使用 `WorkspaceTools`;避免通过 `body``window.scrollTo` 管理滚动。
本次 UI 重构保留前端 `dev@5551653` 的业务更新,包括过期形态图、主首帧和主视频的提示与更新入口。首帧默认只补当前剧集;存在过期主首帧时优先更新全项目过期项。非覆盖模式下的过期主视频重建完成后,会接替旧主视频;普通新增候选不自动替换主资产。