"use client";
import {
ActionBarPrimitive,
BranchPickerPrimitive,
ComposerPrimitive,
MessagePrimitive,
ThreadPrimitive,
} from "@assistant-ui/react";
import {
ArrowUpIcon,
CheckIcon,
ChevronLeftIcon,
ChevronRightIcon,
CopyIcon,
RefreshCwIcon,
SquareIcon,
} from "lucide-react";
import type { FC } from "react";
import { MarkdownText } from "./markdown-text";
// ---------------------------------------------------------------------------
// Thread root — Grok-style layout
// When empty: logo + composer centered. When not empty: viewport + composer bottom.
// ---------------------------------------------------------------------------
export const Thread: FC = () => (
{/* Empty state: centered welcome + composer */}
A
Atlas
Your product strategist. Let's define what you're building.
{/* Messages viewport */}
);
// ---------------------------------------------------------------------------
// Composer — Grok pill style with inverted send button
// ---------------------------------------------------------------------------
const Composer: FC = () => (
);
// ---------------------------------------------------------------------------
// Followup suggestions
// ---------------------------------------------------------------------------
const FollowupSuggestion: FC<{ suggestion: { prompt: string } }> = ({ suggestion }) => (
);
// ---------------------------------------------------------------------------
// User message — subtle right-aligned bubble
// ---------------------------------------------------------------------------
const UserMessage: FC = () => (
);
const UserText: FC<{ text: string }> = ({ text }) => (
{text}
);
const UserActionBar: FC = () => (
);
// ---------------------------------------------------------------------------
// Assistant message — plain text, no bubble, small avatar
// ---------------------------------------------------------------------------
const AssistantMessage: FC = () => (
A
);
const AssistantText: FC = () => (
);
const AssistantActionBar: FC = () => (
);
// ---------------------------------------------------------------------------
// Branch picker
// ---------------------------------------------------------------------------
const BranchPicker: FC = () => (
/
);