@@ -39,7 +39,7 @@ function ChatView({ index = 0 }: { index?: number }) {
3939 const { presetsQuery, onSelectPreset} = usePresets ( ) ;
4040
4141 const fileMap = useFileMapContext ( ) ;
42- const initialMessage = searchParams . get ( 'initialMessage' ) ;
42+ const initialMessageFromUrl = searchParams . get ( 'initialMessage' ) ;
4343 const usePresetId = searchParams . get ( 'usePresetId' ) ;
4444
4545 useEffect ( ( ) => {
@@ -50,7 +50,13 @@ function ChatView({ index = 0 }: { index?: number }) {
5050 searchParams . delete ( 'usePresetId' ) ;
5151 }
5252 }
53- } , [ usePresetId , presetsQuery . data , onSelectPreset ] )
53+ } , [ usePresetId , presetsQuery . data , onSelectPreset ] ) ;
54+
55+ useEffect ( ( ) => {
56+ if ( initialMessageFromUrl ) {
57+ localStorage . setItem ( 'initialMessage' , initialMessageFromUrl ) ;
58+ }
59+ } , [ initialMessageFromUrl ] ) ;
5460
5561 const { data : messagesTree = null , isLoading } = useGetMessagesByConvoId ( conversationId ?? '' , {
5662 select : useCallback (
@@ -65,6 +71,11 @@ function ChatView({ index = 0 }: { index?: number }) {
6571
6672 const chatHelpers = useChatHelpers ( index , conversationId ) ;
6773 const addedChatHelpers = useAddedResponse ( { rootIndex : index } ) ;
74+ const initialMessage = localStorage . getItem ( 'initialMessage' ) ;
75+
76+ if ( initialMessage && chatHelpers . isSubmitting ) {
77+ localStorage . removeItem ( 'initialMessage' ) ;
78+ }
6879
6980 useSSE ( rootSubmission , chatHelpers , false ) ;
7081 useSSE ( addedSubmission , addedChatHelpers , true ) ;
0 commit comments