import { AssistantIf, ThreadPrimitive } from "@assistant-ui/react"; import type { FC } from "react"; import type { ThinkingStep } from "@/components/tool-ui/deepagent-thinking"; import { ThinkingStepsContext } from "@/components/assistant-ui/thinking-steps"; import { ThreadWelcome } from "@/components/assistant-ui/thread-welcome"; import { Composer } from "@/components/assistant-ui/composer"; import { ThreadScrollToBottom } from "@/components/assistant-ui/thread-scroll-to-bottom"; import { AssistantMessage } from "@/components/assistant-ui/assistant-message"; import { UserMessage } from "@/components/assistant-ui/user-message"; import { EditComposer } from "@/components/assistant-ui/edit-composer"; /** * Props for the Thread component */ interface ThreadProps { messageThinkingSteps?: Map; /** Optional header component to render at the top of the viewport (sticky) */ header?: React.ReactNode; } export const Thread: FC = ({ messageThinkingSteps = new Map(), header }) => { return ( {/* Optional sticky header for model selector etc. */} {header &&
{header}
} thread.isEmpty}> !thread.isEmpty}>
); };