| name | component-task-list |
| description | Develop TaskList for step or task status display in @ant-design/agentic-ui. Use when showing task items, expand/collapse, status icons, or thought chain in tasks. Triggers on TaskList, task list, task item, step list, TaskItem, TaskStatus. |
TaskList 组件开发
任务/步骤列表展示,支持展开折叠、状态图标与思维链等。
源码位置
- 导出:
src/TaskList/index.tsx
- 主组件:
src/TaskList/TaskList.tsx
- 子组件:
TaskListItem、StatusIcon 等见 src/TaskList/components/
- 类型:
src/TaskList/types.ts(TaskItem、TaskListProps、TaskStatus、TaskListVariant、ThoughtChainProps)
主要能力
items、expandedKeys、onExpandedKeysChange 控制列表与展开
variant、open/onOpenChange 等
variant="simple":收起时 visibleItems 仅为最后一项;摘要状态见 TaskList.tsx useMemo
loading:外部流式标记;全部 item 为 success 时摘要为完成态
pending 与 loading UI 合并:isTaskInProgress / getTaskStatusStyleKey(constants.ts),摘要与图标统一按进行中处理
- 与 ActionIconBox、I18nContext 配合
内容规范化
src/TaskList/normalizeTaskContent.ts:normalizeTaskContent(content, fallbackTitle?) 提取字符串/序列化 React 描述;空正文回退 title
TaskListItem 渲染前规范化;hasNormalizedTaskContent 控制展开箭头
- Markdown 嵌入:
normalizeTaskListPropsFromJson(agenticUiEmbedUtils.ts)对每项 content 调用同一工具
开发规范
- 样式使用 token 与
useStyle(prefixCls),BEM 类名。
- 新增状态或变体时在 types 中补充,保持向后兼容。
- 勿改 simple 收起时
visibleItems = [lastItem] 逻辑;展开时展示全部 items(含 error 项,不因工具失败只保留最后一项)。
修改任务列表时,参考 src/TaskList/、docs/components/task-list.md 与 AGENTS.md。