import React, { useState, useEffect } from 'react'; import { Wifi, WifiOff, CheckCircle, AlertCircle, Clock, RefreshCw } from 'lucide-react'; import { caixaAPIOfficial } from '../utils/CaixaAPIOfficial'; export const CaixaAPIStatus: React.FC = () => { const [status, setStatus] = useState<{ online: boolean; metodo: string; tempoResposta: number; ultimaVerificacao: string; } | null>(null); const [loading, setLoading] = useState(false); const verificarStatus = async () => { setLoading(true); try { const statusAPI = await caixaAPIOfficial.verificarStatusAPI(); setStatus(statusAPI); } catch (error) { setStatus({ online: false, metodo: 'erro', tempoResposta: 0, ultimaVerificacao: new Date().toLocaleString('pt-BR') }); } finally { setLoading(false); } }; useEffect(() => { verificarStatus(); // Verificar status a cada 2 minutos const interval = setInterval(verificarStatus, 2 * 60 * 1000); return () => clearInterval(interval); }, []); if (!status) { return (
); } return (
{status.online ? ( ) : ( )}

API Oficial da Caixa

{status.online ? 'Online e Funcionando' : 'Temporariamente Indisponível'}

Método: {status.metodo || 'N/A'}
Resposta: {status.tempoResposta}ms
Verificado: {status.ultimaVerificacao}
{status.online && (

✅ Conectado à API oficial da Caixa Econômica Federal. Todos os dados são 100% oficiais e atualizados.

)} {!status.online && (

⚠️ API oficial temporariamente indisponível. O sistema usará dados de backup ou históricos da Caixa.

)}
); }; export default CaixaAPIStatus;