import { memo, useState } from "react"; import MessageOptions from "../MessageOptions/MessageOptions"; import { ReplyMessage } from "../ReplyMessage/ReplyMessage"; import { convert } from "../Time/Time"; import { ForwardedMessageHeader, MessageContainer, MessageFooter, MessageOwner, MessageText, MessageWrapper, TimeMessage } from "./Message.style"; import { MemoMessageMediaContainer } from "../MessageMediaContainer/MessageMediaContainer"; const Message = ({mes, chatId, currUser, lastElem}) => { const isOwner = currUser === mes?.owner?._id ? true : false; const checkedMessage = mes.forwarded ? mes.forwarded : mes; //check message (it has forwarded message or not, if it has return forwarded mes) const [anchorEl, setAnchorEl] = useState(null); const open = Boolean(anchorEl); const handleClick = (event) => { setAnchorEl(event.currentTarget); }; const handleClose = () => { setAnchorEl(null) }; return ( {e.preventDefault(); handleClick(e)}} lastElem={lastElem}> {mes.forwarded && {`Forwarded from ${checkedMessage?.owner?.nick || ''}`}} {checkedMessage?.replyTo && } {checkedMessage?.media && checkedMessage?.media?.length !==0 && } {checkedMessage?.text?.replace(/ /g, "\u00a0") || ''} {isOwner ? 'You' : mes.owner.nick || 'nick'} {convert(mes.createdAt).getTime()} ) } export default memo(Message)