import React from "react"; import { Link, NavLink, Route, Routes, useLocation } from "react-router-dom"; import Timer from "./components/Timer"; import ShowsPage from "./pages/ShowsPage"; import TimeSyncNotice from "./components/TimeSyncNotice"; import { ToastViewport } from "./components/Toasts"; import DebugOverlay from "./components/DebugOverlay"; import "./index.css"; const TIME_SYNC_OFF_THRESHOLD = 100; export default function App() { const [open, setOpen] = React.useState(false); const loc = useLocation(); // close sidebar on route change React.useEffect(() => setOpen(false), [loc.pathname]); // ESC to close React.useEffect(() => { const onKey = (e: KeyboardEvent) => e.key === "Escape" && setOpen(false); window.addEventListener("keydown", onKey); return () => window.removeEventListener("keydown", onKey); }, []); return (