import { Avatar, Box, HStack, LinkBox, useBreakpoint, useBreakpointValue, useColorModeValue } from "@chakra-ui/react"; import { boolean } from "boolean"; import Link from "next/link"; import { useRouter } from "next/router"; import { useCallback, useMemo } from "react"; import { FlaggableElement } from "src/components/FlaggableElement"; import { Message } from "src/types/Conversation"; interface MessageTableEntryProps { item: Message; enabled?: boolean; } export function MessageTableEntry(props: MessageTableEntryProps) { const router = useRouter(); const { item } = props; const goToMessage = useCallback(() => router.push(`/messages/${item.id}`), [router, item.id]); const backgroundColor = useColorModeValue("gray.100", "gray.700"); const backgroundColor2 = useColorModeValue("#DFE8F1", "#42536B"); const borderColor = useColorModeValue("blackAlpha.200", "whiteAlpha.200"); const inlineAvatar = useBreakpointValue({ base: true, sm: false }); const avatar = useMemo( () => ( ), [borderColor, inlineAvatar, item.is_assistant] ); return ( {!inlineAvatar && avatar} {inlineAvatar && avatar} {item.text} ); }