import { useState } from "react"; import SimulationPanel from "./components/SimulationPanel"; import PredictionForm from "./components/PredictionForm"; import GraphPanel from "./components/GraphPanel"; import RecommendationPanel from "./components/RecommendationPanel"; import MetricsPanel from "./components/MetricsPanel"; import ResearchPaper from "./components/ResearchPaper"; import VersionSelector from "./components/VersionSelector"; import { ToastProvider } from "./components/Toast"; import { getApiVersion, setApiVersion } from "./api"; import { BatteryCharging } from "lucide-react"; type Tab = "simulation" | "predict" | "graphs" | "recommend" | "metrics" | "paper"; export default function App() { const [activeTab, setActiveTab] = useState("simulation"); const [apiVersion, setVersion] = useState<"v1" | "v2" | "v3">(getApiVersion()); const handleVersionChange = (v: "v1" | "v2" | "v3") => { setApiVersion(v); setVersion(v); }; const tabs: { key: Tab; label: string }[] = [ { key: "simulation", label: "Simulation" }, { key: "predict", label: "Predict" }, { key: "graphs", label: "Analytics" }, { key: "recommend", label: "Recommendations" }, { key: "metrics", label: "Metrics" }, { key: "paper", label: "Research Paper" }, ]; return (
{/* Header */}

AI Battery Lifecycle Predictor

{/* Version selector with submenu */}
{/* Content */}
{activeTab === "simulation" && } {activeTab === "predict" && } {activeTab === "graphs" && } {activeTab === "recommend" && } {activeTab === "metrics" && } {activeTab === "paper" && }
{/* Footer */}
); }