BrowserRouter.jsxjavascript
import { BrowserRouter } from "react-router";
import Pages from "./Routes";
import { ContentProvider } from "./services/content";
import { ScreensaverProvider } from "./services/screensaver";
import { Screensaver } from "./components/Screensaver/Screensaver";
import { RotateOverlay } from "./components/RotateOverlay/RotateOverlay";
import { ErrorBoundary } from "./components/ErrorBoundary";
const basename = import.meta.env.VITE_BASE_URL || "/";
/**
* History-API router variant - use when the deploy path is known (basename
* from VITE_BASE_URL). Mirrors HashRouter.jsx: content + screensaver
* providers around the routes, pages guarded by the ErrorBoundary. App.jsx
* picks one of the two.
*/
const Router = () => {
return (
<BrowserRouter basename={basename}>
<ContentProvider>
<ScreensaverProvider>
<ErrorBoundary>
<Pages />
</ErrorBoundary>
<Screensaver />
<RotateOverlay />
</ScreensaverProvider>
</ContentProvider>
</BrowserRouter>
);
};
export default Router;