fix: glitchy UI when hover last message
This commit is contained in:
parent
a81b644a8f
commit
7edb987cbd
@ -202,6 +202,7 @@ const ChatBody = memo(
|
|||||||
isCurrentMessage={
|
isCurrentMessage={
|
||||||
virtualRow.index === messages?.length - 1
|
virtualRow.index === messages?.length - 1
|
||||||
}
|
}
|
||||||
|
isLast={virtualRow.index === messages?.length - 1}
|
||||||
onExpand={(props) =>
|
onExpand={(props) =>
|
||||||
preserveScrollOnExpand(() => {
|
preserveScrollOnExpand(() => {
|
||||||
setToolCallExpanded((prev) => ({
|
setToolCallExpanded((prev) => ({
|
||||||
|
|||||||
@ -22,6 +22,7 @@ type Props = {
|
|||||||
loadModelError?: string
|
loadModelError?: string
|
||||||
isCurrentMessage?: boolean
|
isCurrentMessage?: boolean
|
||||||
index: number
|
index: number
|
||||||
|
isLast: boolean
|
||||||
onExpand: (props: { [id: number]: boolean }) => void
|
onExpand: (props: { [id: number]: boolean }) => void
|
||||||
} & ThreadMessage
|
} & ThreadMessage
|
||||||
|
|
||||||
|
|||||||
@ -24,7 +24,6 @@ const ToolCallBlock = ({ id, name, result, loading, onExpand }: Props) => {
|
|||||||
const isExpanded = collapseState[id] ?? false
|
const isExpanded = collapseState[id] ?? false
|
||||||
const handleClick = () => {
|
const handleClick = () => {
|
||||||
onExpand({ [id]: !isExpanded })
|
onExpand({ [id]: !isExpanded })
|
||||||
// setCollapseState((prev) => ({ ...prev, [id]: !isExpanded }))
|
|
||||||
}
|
}
|
||||||
return (
|
return (
|
||||||
<div className="mx-auto w-full">
|
<div className="mx-auto w-full">
|
||||||
|
|||||||
@ -33,6 +33,7 @@ const MessageContainer: React.FC<
|
|||||||
ThreadMessage & {
|
ThreadMessage & {
|
||||||
isCurrentMessage: boolean
|
isCurrentMessage: boolean
|
||||||
index: number
|
index: number
|
||||||
|
isLast: boolean
|
||||||
onExpand: (props: { [id: number]: boolean }) => void
|
onExpand: (props: { [id: number]: boolean }) => void
|
||||||
}
|
}
|
||||||
> = (props) => {
|
> = (props) => {
|
||||||
@ -124,10 +125,12 @@ const MessageContainer: React.FC<
|
|||||||
<div
|
<div
|
||||||
className={twMerge(
|
className={twMerge(
|
||||||
'absolute right-0 order-1 flex cursor-pointer items-center justify-start gap-x-2 transition-all',
|
'absolute right-0 order-1 flex cursor-pointer items-center justify-start gap-x-2 transition-all',
|
||||||
twMerge(
|
!props.isLast
|
||||||
'hidden group-hover:absolute group-hover:-bottom-4 group-hover:right-4 group-hover:z-50 group-hover:flex',
|
? twMerge(
|
||||||
|
'hidden group-hover:absolute group-hover:right-4 group-hover:top-4 group-hover:z-50 group-hover:flex',
|
||||||
image && 'group-hover:-top-2'
|
image && 'group-hover:-top-2'
|
||||||
),
|
)
|
||||||
|
: 'relative left-0 order-2 flex w-full justify-between opacity-0 group-hover:opacity-100',
|
||||||
|
|
||||||
props.isCurrentMessage && 'opacity-100'
|
props.isCurrentMessage && 'opacity-100'
|
||||||
)}
|
)}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user