import React from "react"; import { displayDate } from "@/_utils/datetime"; import { TextCode } from "../TextCode"; import { getMessageCode } from "@/_utils/message"; import Image from "next/image"; import { useAtomValue } from "jotai"; import { currentStreamingMessageAtom } from "@/_helpers/atoms/ChatMessage.atom"; type Props = { id: string; avatarUrl?: string; senderName: string; createdAt: number; text?: string; }; const StreamTextMessage: React.FC = ({ id, senderName, createdAt, avatarUrl = "", text = "", }) => { const message = useAtomValue(currentStreamingMessageAtom); return message?.text && message?.text?.length > 0 ? (
{senderName}
{displayDate(createdAt)}
{message.text.includes("```") ? ( getMessageCode(message.text).map((item, i) => (

{item.text}

{item.code.trim().length > 0 && }
)) ) : (

)}

) : ( <> ); }; export default React.memo(StreamTextMessage);