import type { ReactNode } from "react";
import { BrowserRouter, Navigate, Route, Routes, useLocation } from "react-router-dom";
import { AuthProvider, useAuth } from "./auth/AuthContext";
import { LoadingState } from "./components/Feedback";
import { AdminPage } from "./pages/AdminPage";
import { DisplayPage } from "./pages/DisplayPage";
import { PublicDisplayCenterPage } from "./pages/PublicDisplayCenterPage";
import { LoginPage } from "./pages/LoginPage";
import { HistoryPage } from "./pages/HistoryPage";
import { StaffPage } from "./pages/StaffPage";
import { VisitorPage } from "./pages/VisitorPage";
import { VisitorLookupPage } from "./pages/VisitorLookupPage";
import { VisitorPhonePage } from "./pages/VisitorPhonePage";
function RequireStaff({ children }: { children: ReactNode }) {
const { user, loading } = useAuth();
const location = useLocation();
if (loading) return ;
if (!user) return ;
return children;
}
function RequireAdmin({ children }: { children: ReactNode }) {
const { user, loading } = useAuth();
if (loading) return ;
if (!user) return ;
return children;
}
export function App() {
return (
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
} />
);
}