Files
beaver_project/docs/ui-ux/pages/outlook.md
steven_li 2c5205b06e feat: 添加MinIO文件系统支持并优化外部连接器功能
- 添加MinIO用户文件系统配置选项(BEAVER_MINIO_ROOT_USER等)
- 更新外部连接器配置结构,包括BASE_URL和认证令牌设置
- 改进connector provider支持更多类型(official, feishu_bot等)
- 实现Mistral模型推理模式支持reasoning_effort参数
- 增强外部连接器策略配置和运行时配置管理
- 添加connector bridge事件验证和安全保护机制
- 优化任务路由逻辑,区分simple_chat和new_task场景
- 更新初始技能工具提示配置,分离authoring admin功能
2026-06-05 11:46:40 +08:00

7.5 KiB
Raw Permalink Blame History

主应用Outlook 页 UI/UX

1. 页面定义

项目 内容
页面名称 Outlook
路由 /outlook
页面实现 app-instance/frontend/app/(app)/outlook/page.tsx
关键组件 OutlookPageMessageCardEventCardField、邮件详情 Dialog、日程详情 Dialog
核心任务 配置 Outlook/EWS 连接、测试连接、保存启用、断开连接、查看收件箱/发件箱、分页、查看邮件详情、查看未来 7 天日程
测试状态 已修复并复测通过;本地与 terminaltest 生产实例均通过

2. 信息架构与组件层级

AppShell
└── main.pt-16
    └── /outlook
        ├── Status Header
        │   ├── h1 Outlook
        │   ├── connection / MCP / provider badges
        │   ├── mailbox / timezone / last refresh
        │   ├── Inbox / Sent / Calendar stats
        │   └── Refresh
        ├── Error Card
        ├── Warning Card
        ├── View Tabs
        │   ├── Inbox
        │   ├── Sent
        │   ├── Calendar
        │   └── Settings
        ├── Inbox / Sent
        │   ├── Mailbox header
        │   ├── Refresh / Previous / Next
        │   └── Message rows
        ├── Calendar
        │   ├── Week header
        │   ├── Previous week / This week / Next week / Refresh
        │   └── Day cards
        ├── Settings
        │   ├── Connection settings form
        │   ├── Test connection / Save and enable / Disconnect
        │   ├── Test result panel
        │   └── Connection status panel
        ├── Message detail Dialog
        │   ├── metadata panel
        │   └── body preview
        └── Event detail Dialog
            ├── organizer / location / attendees
            └── notes

3. 布局与响应式规则

  • 页面外层使用 max-w-7xl,移动端内边距为 16px,桌面端为 24px
  • 顶部状态区有语义化 h1,长邮箱、时区和刷新时间允许容器内断行。
  • 已配置时显示 Inbox、Sent、Calendar、Settings未配置时只显示 Settings。
  • 邮件列表和日程列表在移动端头部为上下布局,分页和刷新按钮可换行。
  • 邮件详情和日程详情 Dialog 在移动端使用 left/right/top/bottom: 16px 的独立面板,内容可滚动,不再被默认居中动画撑出视口。
  • 设置表单字段均有 label htmlFor 与 input id 绑定,支持可访问名称和自动化定位。
  • 输入框、主要按钮、分页按钮、刷新 icon、Dialog 关闭按钮均满足 44px 触控目标。
  • 邮件正文里的明文链接使用 min-height: 44px 的可点击区域,移动端更容易点击。

4. 操作与 UX 逻辑

操作 触发方式 状态变化与反馈 UX 目的 当前结果
初次加载已配置状态 打开 /outlook 加载 status 后自动加载 overview 顶部统计和 warning 不显示过期空值 正常
刷新 Outlook 点击 Refresh 刷新 status/overview并刷新当前 tab 数据 获取最新连接、邮件或日程状态 正常
切换 Inbox/Sent/Calendar/Settings 点击 tab 切换视图,按需加载邮箱或日程数据 保持页面内工作流清晰 正常
查看邮件详情 点击邮件行 打开邮件详情 Dialog加载 message-detail 阅读正文和收发件人信息 正常
查看日程详情 点击日程卡片 打开日程详情 Dialog 查看地点、参会人和说明 正常
邮件分页 点击 Previous / Next 使用当前 skip 加载上一页/下一页 浏览更多邮件 正常
日程切周 点击 Previous week / This week / Next week 更新 7 天范围并重新加载 events 快速查看周视图 正常
测试连接 填写必要字段后点击 Test connection 显示 testing成功后显示 sample 与 warning 保存前验证配置可用 正常
保存并启用 点击 Save and enable 成功后清空密码、刷新状态并进入 Inbox 完成 Outlook 接入 正常
断开连接 点击 Disconnect 并确认 清空 overview、选中详情和分页缓存回到 Settings 防止误断开并恢复到配置状态 正常
状态加载失败 status 接口失败 显示错误卡 明确异常原因 正常

5. 响应式测试矩阵

测试日期2026-06-04。浏览器Playwright Chromium。环境本地 dev server http://127.0.0.1:3080 与生产实例 terminaltestAPI 使用模拟数据,真实浏览器执行点击、输入、确认弹窗、分页、详情弹窗和截图。

页面/状态 视口 横向越界 小触控目标 关键结论
邮件详情 390×844 0 可打开邮件详情,长主题、收件人、正文和链接均可读
日程详情 390×844 0 可打开日程详情,长地点和参会人可断行
设置表单 390×844 0 字段可通过 label 操作,测试/保存/断开流程正常
状态错误 390×844 0 错误卡可读
邮件详情 + 设置 320×568 0 窄屏无页面级横向滚动Dialog 可滚动
邮件详情 + 设置 390×844 0 手机竖屏布局稳定
邮件详情 + 设置 844×390 横屏 0 横屏不出现页面级横向滚动
邮件详情 + 设置 768×1024 0 平板布局稳定
邮件详情 + 设置 1365×900 0 桌面布局正常

关键量化证据

  • 本地 Outlook 页 QA 自动化用例 4 passed
  • 部署到 terminaltest 后,同一套 Outlook 页 QA 自动化用例 4 passed
  • 覆盖已配置状态、overview 加载、Inbox、邮件详情、Calendar、日程详情、Settings、Test、Save、Disconnect confirm、状态错误和响应式。
  • 实测 320×568390×844844×390768×10241365×900 均无页面级横向越界。
  • 所有实测视口可见小触控目标数为 0

6. 已修复问题

等级 问题 修复
P1 已配置 Outlook 初次进入页面不会主动加载 overview顶部统计可能一直为 0 loadStatus 在 configured 状态下自动加载 overview
P1 设置表单 label 未绑定 input辅助技术和自动化无法按字段名定位 Field 增加 htmlFor,所有输入框增加稳定 id
P1 邮件详情和日程详情 Dialog 在移动端会被默认居中/slide 动画撑出视口 移动端改为四边 inset 面板并覆盖 slide 偏移
P1 长邮箱、EWS URL、邮件主题、地点、参会人、warning 可能撑破布局 关键文本增加 min-w-0break-allbreak-words
P2 Refresh、分页、表单操作、Dialog 关闭等触控目标不足 统一提升到 44px
P2 断开 Outlook 连接没有确认,误操作风险高 Disconnect 前增加浏览器确认弹窗
P2 邮件正文中的明文链接触控高度过小 链接改为可换行的 44px 点击区域
P2 邮件/日程列表头部在移动端按钮挤压 头部改为移动端纵向布局,操作按钮可换行

7. 剩余观察项

  • 本轮自动化使用模拟 Outlook API 数据;真实 EWS 超时、鉴权失败、HTML 邮件复杂表格和超大正文仍需持续观察。
  • 当前 Disconnect 使用浏览器原生确认弹窗,后续可统一为应用内确认 Dialog以保持视觉一致性。