import { Suspense, useEffect, useMemo, useRef } from "react"; import { useParam } from "blitz"; import clsx from "clsx"; import { Direction } from "db"; import useConversation from "../hooks/use-conversation"; import NewMessageArea from "./new-message-area"; import { formatDate, formatTime } from "app/core/helpers/date-formatter"; export default function Conversation() { const recipient = decodeURIComponent(useParam("recipient", "string") ?? ""); const conversation = useConversation(recipient)[0]; const messages = useMemo(() => conversation?.messages ?? [], [conversation?.messages]); const messagesListRef = useRef(null); useEffect(() => { messagesListRef.current?.querySelector("li:last-child")?.scrollIntoView(); }, [messages, messagesListRef]); return ( <>
); }