import { useState, useEffect } from 'react'; import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; import { adminApi, AdminTicket, AdminTicketDetail, AdminTicketMessage } from '../api/admin'; import { ticketsApi } from '../api/tickets'; const BackIcon = () => ( ); function AdminMessageMedia({ message, t, }: { message: AdminTicketMessage; t: (key: string) => string; }) { const [imageLoaded, setImageLoaded] = useState(false); const [imageError, setImageError] = useState(false); const [showFullImage, setShowFullImage] = useState(false); if (!message.has_media || !message.media_file_id) { return null; } const mediaUrl = ticketsApi.getMediaUrl(message.media_file_id); if (message.media_type === 'photo') { return (
{message.media_caption}
)} {showFullImage && ({msg.message_text}