import Icon from "@ant-design/icons";
import { Tooltip } from "antd";
import i18n from "i18next";
import dayjs from "../../utils/day";
import { MdClose, MdDone, MdDoneAll } from "react-icons/md";
import { DateTimeFormatter } from "../../utils/DateFormatter";
export const renderMessage = (messages, index) => {
const message = messages[index];
const isSystem = message.is_system;
// Determine message class
const messageClass = isSystem ? "system messages" : message.isoutbound ? "mine messages" : "yours messages";
// Tooltip content based on message type
const tooltipTitle = isSystem ? (
i18n.t("consent.text_body")
) : (
{message.created_at}
);
return (
{isSystem &&
System}
{/* Render images if available */}
{message.image && message.image_path?.length > 0 && (
{message.image_path.map((url, idx) => (
))}
)}
{/* Render text if available */}
{message.text &&
{message.text}
}
{/* Render date for system messages */}
{isSystem && (
{message.created_at}
)}
{/* Message status icons for non-system messages */}
{!isSystem &&
message.status &&
(message.status === "sent" || message.status === "delivered" || message.status === "failed") && (
)}
{/* Outbound message metadata for non-system messages */}
{!isSystem && message.isoutbound && (
{i18n.t("messaging.labels.sentby", {
by: message.userid,
time: dayjs(message.created_at).format("MM/DD/YYYY @ hh:mm a")
})}
)}
);
};