diff --git a/web/screens/Chat/Sidebar/index.tsx b/web/screens/Chat/Sidebar/index.tsx index 423724e91..ac3653bfc 100644 --- a/web/screens/Chat/Sidebar/index.tsx +++ b/web/screens/Chat/Sidebar/index.tsx @@ -11,10 +11,15 @@ import { Button, FormField, FormItem, + Tooltip, + TooltipArrow, + TooltipContent, + TooltipPortal, + TooltipTrigger, FormControl, } from '@janhq/uikit' -import { atom, useAtomValue, useSetAtom } from 'jotai' +import { atom, useAtom, useAtomValue, useSetAtom } from 'jotai' import { twMerge } from 'tailwind-merge' @@ -25,6 +30,8 @@ import DropdownListSidebar, { selectedModelAtom, } from '@/containers/DropdownListSidebar' +import { currentPromptAtom } from '@/containers/Providers/Jotai' + import { useCreateNewThread } from '@/hooks/useCreateNewThread' import useUpdateModelParameters from '@/hooks/useUpdateModelParameters' @@ -63,6 +70,7 @@ const Sidebar: React.FC = () => { const componentDataRuntimeSetting = getConfigurationsData(modelRuntimeParams) const setThreadSettingFormUpdate = useSetAtom(threadSettingFormUpdateAtom) + const [currentPrompt] = useAtom(currentPromptAtom) const componentData = [ ...[ @@ -390,9 +398,19 @@ const Sidebar: React.FC = () => { - + + + + + + + {`It seems changes haven't been saved yet`} + + + + )} diff --git a/web/screens/Chat/index.tsx b/web/screens/Chat/index.tsx index b7391e98b..ad70e0d8e 100644 --- a/web/screens/Chat/index.tsx +++ b/web/screens/Chat/index.tsx @@ -30,6 +30,7 @@ import ThreadList from '@/screens/Chat/ThreadList' import Sidebar, { showRightSideBarAtom } from './Sidebar' import { getCurrentChatMessagesAtom } from '@/helpers/atoms/ChatMessage.atom' +import { threadSettingFormUpdateAtom } from '@/helpers/atoms/Thread.atom' import { activeThreadAtom, getActiveThreadIdAtom, @@ -60,6 +61,8 @@ const ChatScreen = () => { const textareaRef = useRef(null) const modelRef = useRef(activeModel) + const threadSettingFormUpdate = useAtomValue(threadSettingFormUpdateAtom) + useEffect(() => { modelRef.current = activeModel }, [activeModel]) @@ -171,7 +174,12 @@ const ChatScreen = () => { {messages[messages.length - 1]?.status !== MessageStatus.Pending ? (