import { Mail } from "lucide-react"; import { Disclosure } from "@/shared/ui/disclosure"; import { Button } from "@/shared/ui/button"; import type { AgentMailboxMessage } from "../api/agent-messages"; const messageStatusLabels = { pending: "待接收", enqueued: "已排队", delivered: "已投递", failed: "投递失败" }; export function AgentMessageInbox({ messages, loading, error, hasMore, loadingMore, onLoadMore, onRefresh }: { messages: AgentMailboxMessage[]; loading?: boolean; error?: string | null; hasMore?: boolean; loadingMore?: boolean; onLoadMore?: () => Promise; onRefresh?: () => void; }) { if (!messages.length && !loading && !error) return null; const received = messages.filter((message) => message.direction === "to_chat").length; return 任务消息{received ? ` · 收到 ${received} 条` : ""}} initiallyOpen className="surface-reading rounded-xl">

新消息会在此显示。由你决定是否继续发送指令。

{loading ?

正在加载任务消息…

: null} {error ?

{error}

: null} {messages.map((message) =>
{message.direction === "to_chat" ? "调查任务来信" : "发给调查任务"} {messageStatusLabels[message.status]}

{message.text}

消息详情

任务编号:{message.task_id}

运行编号:{message.run_id}

{message.failure_detail ?

{message.failure_detail}

: null}
)} {hasMore ? : null}
; }