Select Git revision
App.js 7.51 KiB
import React, { Suspense, useEffect, useState } from "react";
import { Helmet } from "react-helmet";
import ReactHintFactory from "react-hint";
import {
BrowserRouter as Router,
Link,
Route,
Switch,
useLocation,
} from "react-router-dom";
import { ReactKeycloakProvider as KeycloakProvider } from "@react-keycloak/web";
import { ExtraErrorData } from "@sentry/integrations/dist/extraerrordata";
import * as Sentry from "@sentry/react";
import { Integrations } from "@sentry/tracing";
import classNames from "classnames";
import MobileNav from "components/MobileNav";
import { basics } from "config";
import Transportation from "pages/Transportation";
import VNav from "./components/VNav";
import Accommodation from "./pages/Accommodation";
import Catering from "./pages/Catering";
import Home from "./pages/Home";
import LeaderElection from "./pages/LeaderElection";
import Map from "./pages/Map";
import Party from "./pages/Party";
import Program from "./pages/Program";
import Registration from "./pages/Registration";
import Team from "./pages/Team";
import Volunteers from "./pages/Volunteers";
import Workshops from "./pages/Workshops";
import Meeting from "./pages/Meeting";
import Disabled from "./pages/Disabled";
import KidsnFun from "./pages/KidsnFun";
import Payment from "./pages/Payment";
import cfLogo from "./cf2023_kormidlo_lod.svg";
import keycloak from "./keycloak";
import partyLogo from "./logo-full-black.svg";
import "./styles.css";
/**
* If configured, set up Sentry client that reports uncaught errors down to
* https://sentry.io.
*/
if (process.env.REACT_APP_SENTRY_DSN) {
Sentry.init({
dsn: process.env.REACT_APP_SENTRY_DSN,
tracesSampleRate: 0.1,
integrations: [new ExtraErrorData(), new Integrations.BrowserTracing()],
});
}
const ReactHint = ReactHintFactory(React);
function AppHeaderVenueInfo() {
const location = useLocation();
const isRoot = location.pathname === "/";
const [mobileNavOpen, setMobnileNavOpen] = useState(false);
// Close menu on navigation
useEffect(() => {
setMobnileNavOpen(false);
}, [location]);
return (
<>
<MobileNav
isOpen={mobileNavOpen}