diff --git a/packages/ui/src/components/message-part.tsx b/packages/ui/src/components/message-part.tsx index 534ea8f50..d59f5cfa3 100644 --- a/packages/ui/src/components/message-part.tsx +++ b/packages/ui/src/components/message-part.tsx @@ -984,6 +984,22 @@ ToolRegistry.register({ ToolRegistry.register({ name: "todowrite", render(props) { + const todos = createMemo(() => { + const meta = props.metadata?.todos + if (Array.isArray(meta)) return meta + + const input = props.input.todos + if (Array.isArray(input)) return input + + return [] + }) + + const subtitle = createMemo(() => { + const list = todos() + if (list.length === 0) return "" + return `${list.filter((t: Todo) => t.status === "completed").length}/${list.length}` + }) + return ( t.status === "completed").length}/${props.input.todos.length}` - : "", + subtitle: subtitle(), }} > - +
- + {(todo: Todo) => (