docs: 同步文件结构重组至文档(CHANGELOG/PROJECT/TODO)

- CHANGELOG: 新增 0.0.21 条目
- PROJECT: 更新目录结构、状态管理架构描述
- TODO: 移除已修复的 ESLint react-refresh 警告(HomeContext 拆分后自动消除)
This commit is contained in:
2026-06-15 11:22:59 +08:00
parent 0e6d996718
commit 4472d406d9
3 changed files with 47 additions and 20 deletions

View File

@@ -1,6 +1,37 @@
# 更新日志 # 更新日志
> 每次发版前修改此文件,`npm run build:win` 打包后会自动读取生成 update-info.json。 > 每次发版前修改此文件,`npm run build:win` 打包后会自动读取生成 update-info.json。
---
## 0.0.212026-06-15
**文件结构重组components/ pages/ 按职责分层**
### components/ → 三层拆分
- `providers/`状态管理AppProvider / ThemeProvider / SettingsProvider
- `shell/`应用外壳Layout / PageDispatcher / navbar/
- `ui/`通用原子FloatingPanel / LegalTextModal
### pages/ → 重命名消除歧义
- `headers/``panels/`NavBar 面板页,非 HTTP headers
- `login/``auth/`(含登录/注册/忘记密码/修改密码)
- `settings/blocks/``sections/`
- `home/components/useUI/``home/controls/`
### home/ → 四层子结构
- `panels/` — 布局壳LeftPanel / CenterPanel / RightPanel
- `features/` — 功能面板Banner / ModelInput / ModelSelector / Output / TaskHistory
- `controls/` — 表单控件库12 个控件 + Widget 注册表)
- `hooks/` — 纯 HookuseModelUI
### 其他
- HomeContext 从 HomeContent.tsx 拆分独立文件(解决 react-refresh ESLint 警告)
- uploadValidation 内联到 ImageInputcontrols/ 不再混工具函数)
- 删除空占位 Test3.tsx
--- ---
## 0.0.202026-06-12 ## 0.0.202026-06-12

View File

@@ -68,18 +68,16 @@
├── src/ # 渲染进程React 19 SPA ├── src/ # 渲染进程React 19 SPA
│ ├── main.tsx # React 挂载点 + 全局错误捕获 │ ├── main.tsx # React 挂载点 + 全局错误捕获
│ ├── App.tsx # 根组件(路由 + 登录弹窗) │ ├── App.tsx # 根组件(路由 + 登录弹窗)
│ ├── components/ # 通用 UI 组件 + Provider │ ├── components/ # 可复用组件(按职责分三层)
│ │ ├── AppProvider.tsx # 全局状态platform / edition / login │ │ ├── providers/ # 状态管理App/Theme/SettingsProvider
│ │ ├── ThemeProvider.tsx # 主题状态light / dark │ │ ├── shell/ # 应用外壳Layout/PageDispatcher/navbar/
│ │ ── SettingsProvider.tsx # 设置状态(存储路径等 │ │ ── ui/ # 通用 UI 原子FloatingPanel/LegalTextModal
│ ├── Layout.tsx # 页面壳NavBar + Outlet │ ├── hooks/ # 自定义 Hooks业务逻辑封装
│ └── navbar/ # 导航栏 + 公告抽屉 ├── pages/ # 业务页面(按功能模块组织)
│ ├── contexts/ # Context 定义app / settings / theme │ ├── home/ # 首页panels/ features/ controls/ hooks/
│ ├── hooks/ # 自定义 HooksuseUpdater / useTheme │ ├── auth/ # 认证模块(登录/注册/忘记密码/修改密码
│ ├── pages/ # 页面组件 │ ├── settings/ # 设置面板sections/
│ │ ── home/ # 首页仪表盘 │ │ ── panels/ # NavBar 触发的面板页Account/Billing/WechatWork
│ │ ├── login/ # 登录 / 注册页
│ │ └── settings/ # 设置面板(主题 / 存储 / 账号安全 / 系统信息 / 更新)
│ ├── router/index.tsx # HashRouter 路由配置 │ ├── router/index.tsx # HashRouter 路由配置
│ ├── services/ # HTTP 请求封装 │ ├── services/ # HTTP 请求封装
│ │ ├── request.ts # Axios 封装 + 拦截器 + Token 刷新 │ │ ├── request.ts # Axios 封装 + 拦截器 + Token 刷新
@@ -151,12 +149,14 @@
## 状态管理 ## 状态管理
- 使用 React Context + Provider 模式管理全局状态按领域拆分AppContext平台/登录、ThemeContext主题 - 使用 React Context + Provider 模式管理全局状态按领域拆分AppContext平台/登录、ThemeContext主题
SettingsContext设置项。避免引入 Redux 等重量级方案。 SettingsContext设置项各 Context 定义与 Provider 合并在 `components/providers/` 目录下,避免引入 Redux 等重量级方案。
- Provider 组件在 main.tsx 中按层级嵌套挂载: - Provider 在 main.tsx 中按层级嵌套挂载:
AppProvider → ThemeProvider → SettingsProvider → AntdApp → App AppProvider → ThemeProvider → SettingsProvider → AntdApp → App
- 各模块通过自定义 Hook 消费useAppContext / useTheme / useSettingsHook 内部做 null 检查。 - 各模块通过自定义 Hook 消费useAppContext / useTheme / useSettingsHook 内部做 null 检查并抛出明确错误信息
- 页面级状态(如首页的 selectedModel / selectedTask / 分页)放在 HomeContext 中,由 HomeContent 提供,遵循与全局 Provider 相同的 Context + Provider + Hook 模式。
## 日志系统 ## 日志系统

View File

@@ -1,13 +1,9 @@
# TODO — 船长·HeiXiu 待办与优化清单 # TODO — 船长·HeiXiu 待办与优化清单
> 最后更新2026-06-12 > 最后更新2026-06-15
--- ---
[//]: # (警告:(48, 14) ESLint: Fast refresh only works when a file only exports components. Move your React context(s) to a separate file. (react-refresh/only-export-components))
[//]: # (警告:(52, 17) ESLint: Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components. (react-refresh/only-export-components))
## 🟡 功能待完善(优先级中) ## 🟡 功能待完善(优先级中)
### 设置页面 ### 设置页面