@@ -92,8 +92,7 @@ const ConversationBubble = forwardRef<
9292 const [ editInputBox , setEditInputBox ] = useState < string > ( '' ) ;
9393 const messageRef = useRef < HTMLDivElement > ( null ) ;
9494 const [ shouldShowToggle , setShouldShowToggle ] = useState ( false ) ;
95- const [ isLikeClicked , setIsLikeClicked ] = useState ( false ) ;
96- const [ isDislikeClicked , setIsDislikeClicked ] = useState ( false ) ;
95+
9796 const [ activeTooltip , setActiveTooltip ] = useState < number | null > ( null ) ;
9897 const [ isSidebarOpen , setIsSidebarOpen ] = useState < boolean > ( false ) ;
9998 const editableQueryRef = useRef < HTMLDivElement > ( null ) ;
@@ -550,104 +549,71 @@ const ConversationBubble = forwardRef<
550549 ) }
551550 { message && (
552551 < div className = "my-2 ml-2 flex justify-start" >
553- < div
554- className = { `relative mr-2 block items-center justify-center lg:invisible ${ type !== 'ERROR' ? 'lg:group-hover:visible' : 'hidden' } ` }
555- >
556- < div >
557- < CopyButton textToCopy = { message } />
558- </ div >
559- </ div >
560- < div
561- className = { `relative mr-2 block items-center justify-center lg:invisible ${ type !== 'ERROR' ? 'lg:group-hover:visible' : 'hidden' } ` }
562- >
563- < div >
564- < SpeakButton text = { message } />
565- </ div >
566- </ div >
567- { type === 'ERROR' && (
552+ { type === 'ERROR' ? (
568553 < div className = "relative mr-2 block items-center justify-center" >
569554 < div > { retryBtn } </ div >
570555 </ div >
571- ) }
572- { handleFeedback && (
556+ ) : (
573557 < >
574- < div
575- className = { `relative mr-2 flex items-center justify-center ${
576- feedback === 'LIKE' || isLikeClicked
577- ? 'visible'
578- : 'lg:invisible'
579- } ${ type !== 'ERROR' ? 'lg:group-hover:visible' : '' } ${ feedback === 'DISLIKE' && type !== 'ERROR' ? 'hidden' : '' } `}
580- >
581- < div >
582- < div
583- className = { `flex items-center justify-center rounded-full p-2 ${
584- isLikeHovered
585- ? 'dark:bg-purple-taupe bg-[#EEEEEE]'
586- : 'bg-white-3000 dark:bg-transparent'
587- } `}
588- >
589- < Like
590- className = { `cursor-pointer ${
591- isLikeClicked || feedback === 'LIKE'
592- ? 'fill-white-3000 stroke-purple-30 dark:fill-transparent'
593- : 'stroke-gray-4000 fill-none'
594- } `}
595- onClick = { ( ) => {
596- if ( feedback === undefined || feedback === null ) {
597- handleFeedback ?.( 'LIKE' ) ;
598- setIsLikeClicked ( true ) ;
599- setIsDislikeClicked ( false ) ;
600- } else if ( feedback === 'LIKE' ) {
601- handleFeedback ?.( null ) ;
602- setIsLikeClicked ( false ) ;
603- setIsDislikeClicked ( false ) ;
604- }
605- } }
606- onMouseEnter = { ( ) => setIsLikeHovered ( true ) }
607- onMouseLeave = { ( ) => setIsLikeHovered ( false ) }
608- > </ Like >
609- </ div >
610- </ div >
558+ < div className = "relative mr-2 block items-center justify-center" >
559+ < CopyButton textToCopy = { message } />
560+ </ div >
561+ < div className = "relative mr-2 block items-center justify-center" >
562+ < SpeakButton text = { message } />
611563 </ div >
564+ { handleFeedback && (
565+ < >
566+ < div className = "relative mr-2 flex items-center justify-center" >
567+ < div >
568+ < div
569+ className = { `flex items-center justify-center rounded-full p-2 ${
570+ isLikeHovered
571+ ? 'dark:bg-purple-taupe bg-[#EEEEEE]'
572+ : 'bg-white-3000 dark:bg-transparent'
573+ } `}
574+ >
575+ < Like
576+ className = { `${ feedback === 'LIKE' ? 'fill-white-3000 stroke-purple-30 dark:fill-transparent' : 'stroke-gray-4000 fill-none' } cursor-pointer` }
577+ onClick = { ( ) => {
578+ if ( feedback === 'LIKE' ) {
579+ handleFeedback ?.( null ) ;
580+ } else {
581+ handleFeedback ?.( 'LIKE' ) ;
582+ }
583+ } }
584+ onMouseEnter = { ( ) => setIsLikeHovered ( true ) }
585+ onMouseLeave = { ( ) => setIsLikeHovered ( false ) }
586+ > </ Like >
587+ </ div >
588+ </ div >
589+ </ div >
612590
613- < div
614- className = { `relative mr-2 flex items-center justify-center ${
615- feedback === 'DISLIKE' || isLikeClicked
616- ? 'visible'
617- : 'lg:invisible'
618- } ${ type !== 'ERROR' ? 'lg:group-hover:visible' : '' } ${ feedback === 'LIKE' && type !== 'ERROR' ? 'hidden' : '' } `}
619- >
620- < div >
621- < div
622- className = { `flex items-center justify-center rounded-full p-2 ${
623- isDislikeHovered
624- ? 'dark:bg-purple-taupe bg-[#EEEEEE]'
625- : 'bg-white-3000 dark:bg-transparent'
626- } `}
627- >
628- < Dislike
629- className = { `cursor-pointer ${
630- isDislikeClicked || feedback === 'DISLIKE'
631- ? 'fill-white-3000 stroke-red-2000 dark:fill-transparent'
632- : 'stroke-gray-4000 fill-none'
633- } `}
634- onClick = { ( ) => {
635- if ( feedback === undefined || feedback === null ) {
636- handleFeedback ?.( 'DISLIKE' ) ;
637- setIsDislikeClicked ( true ) ;
638- setIsLikeClicked ( false ) ;
639- } else if ( feedback === 'DISLIKE' ) {
640- handleFeedback ?.( null ) ;
641- setIsLikeClicked ( false ) ;
642- setIsDislikeClicked ( false ) ;
643- }
644- } }
645- onMouseEnter = { ( ) => setIsDislikeHovered ( true ) }
646- onMouseLeave = { ( ) => setIsDislikeHovered ( false ) }
647- > </ Dislike >
591+ < div className = "relative mr-2 flex items-center justify-center" >
592+ < div >
593+ < div
594+ className = { `flex items-center justify-center rounded-full p-2 ${
595+ isDislikeHovered
596+ ? 'dark:bg-purple-taupe bg-[#EEEEEE]'
597+ : 'bg-white-3000 dark:bg-transparent'
598+ } `}
599+ >
600+ < Dislike
601+ className = { `${ feedback === 'DISLIKE' ? 'fill-white-3000 stroke-red-2000 dark:fill-transparent' : 'stroke-gray-4000 fill-none' } cursor-pointer` }
602+ onClick = { ( ) => {
603+ if ( feedback === 'DISLIKE' ) {
604+ handleFeedback ?.( null ) ;
605+ } else {
606+ handleFeedback ?.( 'DISLIKE' ) ;
607+ }
608+ } }
609+ onMouseEnter = { ( ) => setIsDislikeHovered ( true ) }
610+ onMouseLeave = { ( ) => setIsDislikeHovered ( false ) }
611+ > </ Dislike >
612+ </ div >
613+ </ div >
648614 </ div >
649- </ div >
650- </ div >
615+ </ >
616+ ) }
651617 </ >
652618 ) }
653619 </ div >
0 commit comments