diff --git a/src/interface/web/app/common/modelSelector.tsx b/src/interface/web/app/common/modelSelector.tsx index bf837ea1..c9313d58 100644 --- a/src/interface/web/app/common/modelSelector.tsx +++ b/src/interface/web/app/common/modelSelector.tsx @@ -28,7 +28,7 @@ import { HoverCard, HoverCardContent, HoverCardTrigger } from "@/components/ui/h import { Skeleton } from "@/components/ui/skeleton"; interface ModelSelectorProps extends PopoverProps { - onSelect: (model: ModelOptions) => void; + onSelect: (model: ModelOptions, userModification: boolean) => void; selectedModel?: string; disabled?: boolean; } @@ -51,7 +51,6 @@ export function ModelSelector({ ...props }: ModelSelectorProps) { } else { setSelectedModel(models[0]); } - }, [models, props.selectedModel, userConfig]); useEffect(() => { @@ -63,7 +62,8 @@ export function ModelSelector({ ...props }: ModelSelectorProps) { useEffect(() => { if (selectedModel) { - props.onSelect(selectedModel); + const userModification = selectedModel.id !== userConfig?.selected_chat_model_config; + props.onSelect(selectedModel, userModification); } }, [selectedModel]); diff --git a/src/interface/web/app/components/allConversations/allConversations.tsx b/src/interface/web/app/components/allConversations/allConversations.tsx index 0bab8165..29d34dda 100644 --- a/src/interface/web/app/components/allConversations/allConversations.tsx +++ b/src/interface/web/app/components/allConversations/allConversations.tsx @@ -46,20 +46,14 @@ import { ScrollArea } from "@/components/ui/scroll-area"; import { ArrowRight, - ArrowLeft, ArrowDown, Spinner, Check, FolderPlus, DotsThreeVertical, - House, - StackPlus, - UserCirclePlus, - Sidebar, - NotePencil, FunnelSimple, - MagnifyingGlass, ChatsCircle, + Info, } from "@phosphor-icons/react"; interface ChatHistory { @@ -132,7 +126,7 @@ function renameConversation(conversationId: string, newTitle: string) { }, }) .then((response) => response.json()) - .then((data) => {}) + .then((data) => { }) .catch((err) => { console.error(err); return; @@ -171,7 +165,7 @@ function deleteConversation(conversationId: string) { response.json(); mutate("/api/chat/sessions"); }) - .then((data) => {}) + .then((data) => { }) .catch((err) => { console.error(err); return; @@ -237,8 +231,29 @@ export function FilesMenu(props: FilesMenuProps) { ); }; - if (error) return
Failed to load files
; - if (selectedFilesError) return
Failed to load selected files
; + if (error || selectedFilesError) { + return ( +
+
+

+ Context +

+ + { + error ? "Failed to load files" : "Failed to load selected files" + } + +

+

+ +
+
+ ) + } + if (!files) return ; if (!selectedFiles && props.conversationId) return ; diff --git a/src/interface/web/app/components/chatSidebar/chatSidebar.tsx b/src/interface/web/app/components/chatSidebar/chatSidebar.tsx index 7e89f3e0..3b0288e5 100644 --- a/src/interface/web/app/components/chatSidebar/chatSidebar.tsx +++ b/src/interface/web/app/components/chatSidebar/chatSidebar.tsx @@ -183,9 +183,9 @@ function ChatSidebarInternal({ ...props }: ChatSideBarProps) { setHasModified(false); } - function handleModelSelect(model: string) { + function handleModelSelect(model: string, userModification: boolean = true) { setSelectedModel(model); - if (model !== agentData?.chat_model) { + if (userModification) { setHasModified(true); } } @@ -255,7 +255,7 @@ function ChatSidebarInternal({ ...props }: ChatSideBarProps) { handleModelSelect(model.name)} + onSelect={(model, userModification) => handleModelSelect(model.name, userModification)} selectedModel={selectedModel} /> @@ -395,7 +395,7 @@ function ChatSidebarInternal({ ...props }: ChatSideBarProps) {