"use client"; import { motion, AnimatePresence } from "framer-motion"; import { Loader2, Search, FileText } from "lucide-react"; import { useWebSearch } from "@/hooks/use-web-search"; export function ScrapingProgressIndicator() { const webSearch = useWebSearch(); // Não mostrar se idle ou completed if (webSearch.status === 'idle' || webSearch.status === 'completed') { return null; } return (
{/* Icon animado */}
{webSearch.status === 'searching' && ( )} {webSearch.status === 'scraping' && ( )} {webSearch.status === 'error' && (
!
)}
{/* Content */}

{webSearch.status === 'searching' && 'Buscando fontes...'} {webSearch.status === 'scraping' && `Analisando fontes (${webSearch.scrapedSources.length})...`} {webSearch.status === 'error' && 'Erro na busca'}

{/* Mostrar query atual se disponível */} {webSearch.currentQuery && webSearch.status !== 'error' && (

{webSearch.currentQuery}

)} {/* Mostrar erro se houver */} {webSearch.error && webSearch.status === 'error' && (

{webSearch.error}

)} {/* Barra de progresso simulada */} {webSearch.status !== 'error' && (
)}
); }