import * as React from "react"; import type { RawMessage } from "../values"; import Text from "@tensamin/markdown/text"; import { AlertTriangle, Clock } from "lucide-react"; import { Tooltip, TooltipContent, TooltipTrigger } from "@tensamin/ui"; import { useIsMobile } from "@tensamin/ui"; import { ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuTrigger, } from "@tensamin/ui"; function MessageComponent({ message, }: { message: RawMessage & { failed?: boolean; }; }) { const isMobile = useIsMobile(); return (
{message.failed && message.message_state === "awaiting" && (

Failed to send message

} />
)} {!message.failed && message.message_state === "awaiting" && ( )}
} /> ); } export default React.memo(MessageComponent, (prev, next) => { return ( prev.message.send_time === next.message.send_time && prev.message.content === next.message.content && prev.message.height === next.message.height && prev.message.sent_by_self === next.message.sent_by_self && prev.message.message_state === next.message.message_state && prev.message.failed === next.message.failed ); });