{news.title_translated || news.titulo}
{news.summary_translated || news.resumen}
{news.entities && news.entities.length > 0 && (import { useParams, Link } from 'react-router-dom' import { useQuery } from '@tanstack/react-query' import { formatDistanceToNow } from 'date-fns' import { es } from 'date-fns/locale' import { apiService } from '../services/api' import { Globe, ArrowLeft, ExternalLink, Newspaper, Heart } from 'lucide-react' import { useState, useEffect } from 'react' import { WikiTooltip } from '../components/ui/WikiTooltip' export function News() { const { id } = useParams<{ id: string }>() const [isFavorite, setIsFavorite] = useState(false) const { data: news, isLoading, error } = useQuery({ queryKey: ['news', id], queryFn: () => apiService.getNewsById(id!), enabled: !!id, }) useEffect(() => { const stored = localStorage.getItem('favorites') if (stored && id) { const favorites = JSON.parse(stored) setIsFavorite(favorites.some((n: any) => n.id === id)) } }, [id]) const toggleFavorite = () => { const stored = localStorage.getItem('favorites') let favorites = stored ? JSON.parse(stored) : [] if (isFavorite) { favorites = favorites.filter((n: any) => n.id !== id) } else if (news) { favorites.push(news) } localStorage.setItem('favorites', JSON.stringify(favorites)) setIsFavorite(!isFavorite) } if (isLoading) { return (
Error al cargar la noticia
Volver al inicio{news.summary_translated || news.resumen}
{news.entities && news.entities.length > 0 && (