diff --git a/packages/views/chat/components/chat-fab.tsx b/packages/views/chat/components/chat-fab.tsx index eea3ef5c8..70ba538cb 100644 --- a/packages/views/chat/components/chat-fab.tsx +++ b/packages/views/chat/components/chat-fab.tsx @@ -18,7 +18,7 @@ export function ChatFab() { diff --git a/packages/views/chat/components/chat-input.tsx b/packages/views/chat/components/chat-input.tsx index 652220ba8..003cda931 100644 --- a/packages/views/chat/components/chat-input.tsx +++ b/packages/views/chat/components/chat-input.tsx @@ -25,7 +25,7 @@ export function ChatInput({ onSend, onStop, isRunning, disabled }: ChatInputProp return (
-
+
- -
- -
+
+
)} {isWaiting && !hasTimeline && ( -
- -
- -
-
+ )}
@@ -77,7 +69,7 @@ function MessageBubble({ if (message.role === "user") { return (
-
+
{message.content}
@@ -116,17 +108,14 @@ function AssistantMessage({ ); return ( -
- -
- {timeline.length > 0 ? ( - - ) : ( -
- {message.content} -
- )} -
+
+ {timeline.length > 0 ? ( + + ) : ( +
+ {message.content} +
+ )}
); } diff --git a/packages/views/chat/components/chat-session-history.tsx b/packages/views/chat/components/chat-session-history.tsx index 266f36a23..8ff270052 100644 --- a/packages/views/chat/components/chat-session-history.tsx +++ b/packages/views/chat/components/chat-session-history.tsx @@ -2,6 +2,7 @@ import { useQuery } from "@tanstack/react-query"; import { ArrowLeft, MessageSquare, Archive, Trash2 } from "lucide-react"; +import { Button } from "@multica/ui/components/ui/button"; import { Avatar, AvatarFallback, AvatarImage } from "@multica/ui/components/ui/avatar"; import { Bot } from "lucide-react"; import { useWorkspaceId } from "@multica/core/hooks"; @@ -47,12 +48,14 @@ export function ChatSessionHistory() {
{/* Header */}
- + + Chat History
@@ -151,7 +154,7 @@ function SessionItem({ > {agent?.avatar_url && } - + @@ -174,13 +177,15 @@ function SessionItem({
{onArchive && ( - + + )} ); diff --git a/packages/views/chat/components/chat-window.tsx b/packages/views/chat/components/chat-window.tsx index 609baf627..50572f920 100644 --- a/packages/views/chat/components/chat-window.tsx +++ b/packages/views/chat/components/chat-window.tsx @@ -4,6 +4,7 @@ import { useCallback, useEffect, useRef } from "react"; import { useQuery, useQueryClient } from "@tanstack/react-query"; import { Minus, Maximize2, Minimize2, Send, ChevronDown, Bot, Plus, History } from "lucide-react"; import { Avatar, AvatarFallback, AvatarImage } from "@multica/ui/components/ui/avatar"; +import { Button } from "@multica/ui/components/ui/button"; import { DropdownMenu, DropdownMenuContent, @@ -226,8 +227,8 @@ export function ChatWindow() { const hasMessages = messages.length > 0 || timelineItems.length > 0; const containerClass = isFullscreen - ? "fixed inset-y-0 right-0 z-50 flex flex-col w-[50%] border-l bg-background shadow-2xl" - : "fixed bottom-4 right-4 z-50 flex flex-col w-[420px] h-[600px] rounded-xl border bg-background shadow-2xl overflow-hidden"; + ? "fixed top-4 right-4 bottom-4 z-50 flex flex-col w-[50%] rounded-xl ring-1 ring-foreground/10 bg-sidebar shadow-2xl overflow-hidden" + : "fixed bottom-4 right-4 z-50 flex flex-col w-[420px] h-[600px] rounded-xl ring-1 ring-foreground/10 bg-sidebar shadow-2xl overflow-hidden"; return (
@@ -240,38 +241,46 @@ export function ChatWindow() { onSelect={handleSelectAgent} />
- - + - + - + + +
)} @@ -329,20 +338,20 @@ function AgentSelector({ return ( - + {activeAgent.name} - + {agents.map((agent) => ( onSelect(agent)} - className="flex items-center gap-2" + className="flex min-w-0 items-center gap-2" > - {agent.name} + {agent.name} ))} @@ -354,7 +363,7 @@ function AgentAvatarSmall({ agent }: { agent: Agent }) { return ( {agent.avatar_url && } - +