feat: 完善工作台展示场景 - 新增 Modal/Toast 组件、EmptyState 使用、确认弹窗、筛选分页

- 新增 Modal 确认弹窗组件和 Toast 消息提示组件
- 在 SkillsPage、LogsPage、TasksPage、ProjectsPage 使用 EmptyState
- 为删除任务、取消订阅、移除成员、技能订阅添加确认弹窗
- 丰富聊天场景:代码展示、表格数据、多轮对话、错误提示
- 优化 ChatPage 布局,修复对话区域滚动问题
- 为 ProjectsPage 添加筛选卡片和分页组件
- 添加表单校验错误状态展示
- 同步 specs 到主目录
This commit is contained in:
2026-03-20 11:44:25 +08:00
parent 9f407c3aea
commit 181cf09ad2
17 changed files with 1147 additions and 229 deletions

View File

@@ -0,0 +1,37 @@
## Purpose
定义工作台各页面空状态的展示规范。
## Requirements
### Requirement: 技能市场空状态展示
当技能市场无搜索结果时,系统 SHALL 展示 EmptyState 组件。
#### Scenario: 搜索无结果
- **WHEN** 用户在技能市场搜索框输入关键词后点击查询
- **THEN** 页面展示 EmptyState 组件,显示"暂无匹配技能"提示
### Requirement: 日志查询空状态展示
当日志查询无匹配结果时,系统 SHALL 展示 EmptyState 组件。
#### Scenario: 筛选无结果
- **WHEN** 用户选择筛选条件后点击查询按钮
- **THEN** 页面展示 EmptyState 组件,显示"暂无匹配日志"提示
### Requirement: 定时任务空状态展示
当定时任务列表为空时,系统 SHALL 展示 EmptyState 组件。
#### Scenario: 无任务
- **WHEN** 用户进入定时任务页面
- **THEN** 页面展示 EmptyState 组件,显示"暂无定时任务"提示
### Requirement: 项目管理空状态展示
当项目成员列表为空或筛选无结果时,系统 SHALL 展示 EmptyState 组件。
#### Scenario: 无成员
- **WHEN** 用户进入项目管理页面且没有成员
- **THEN** 页面展示 EmptyState 组件,显示"暂无匹配成员"提示
#### Scenario: 筛选无结果
- **WHEN** 用户选择筛选条件后点击查询按钮
- **THEN** 页面展示 EmptyState 组件,显示"暂无匹配成员"提示