import { useState } from "react" import axios from "axios" import FontLoader from "./components/FontLoader" import Header from "./components/Header" import Footer from "./components/Footer" import VerifyForm from "./components/VerifyForm" import ResultsPanel from "./components/ResultsPanel" import AboutSection from "./sections/AboutSection" import FoundersSection from "./sections/FoundersSection" import ContactSection from "./sections/ContactSection" import { API_URL } from "./constants" import "./App.css" export default function App() { const [claim, setClaim] = useState("") const [loading, setLoading] = useState(false) const [result, setResult] = useState(null) const [error, setError] = useState(null) const [expandedPapers, setExpandedPapers] = useState({}) const verifyClaim = async () => { if (!claim.trim()) return setLoading(true) setError(null) setResult(null) setExpandedPapers({}) try { const response = await axios.post(`${API_URL}/verify`, { claim }, { timeout: 90000 }) setResult(response.data) } catch { setError("Failed to connect to API. Please try again.") } finally { setLoading(false) } } const handleClear = () => { setClaim("") setResult(null) setError(null) setExpandedPapers({}) } const handleNavigate = (id) => { document.getElementById(id)?.scrollIntoView({ behavior: "smooth", block: "start" }) } const togglePaper = (index) => { setExpandedPapers((prev) => ({ ...prev, [index]: !prev[index] })) } return ( <>
{error && (
{error}
)}
) }