CI / Generate TypeScript types (push) Successful in 11s
CI / Server unit tests (push) Successful in 27s
CI / Build server (push) Successful in 31s
CI / Build client (push) Successful in 49s
CI / Playwright E2E tests (push) Successful in 1m58s
CI / Build and push Docker image (push) Successful in 49s
CI / Notify (push) Successful in 3s
58 lines
2.2 KiB
TypeScript
58 lines
2.2 KiB
TypeScript
import { Routes, Route } from "react-router-dom";
|
|
import { ProvideSettings, useSettings } from "./context/settings";
|
|
import FlyingButterflies, { BUTTERFLY_PRESETS } from "./FlyingButterflies";
|
|
import "./FlyingButterflies.scss";
|
|
import { ToastContainer } from "react-toastify";
|
|
import { SocketContext, socket } from "./context/socket";
|
|
import StatsPage from "./pages/StatsPage";
|
|
import OrderGroupsPage from "./pages/OrderGroupsPage";
|
|
import SuggestionsPage from "./pages/SuggestionsPage";
|
|
import App from "./App";
|
|
import HellGirlFlames from "./components/HellGirlFlames";
|
|
|
|
export const STATS_URL = '/stats';
|
|
export const OBJEDNANI_URL = '/objednani';
|
|
export const NAVRHY_URL = '/navrhy';
|
|
|
|
/** Motýlci se vykreslují jen pokud je uživatel nevypnul v nastavení. */
|
|
function Butterflies() {
|
|
const settings = useSettings();
|
|
if (settings?.showButterflies === false) {
|
|
return null;
|
|
}
|
|
return <FlyingButterflies numButterflies={BUTTERFLY_PRESETS.NORMAL} />;
|
|
}
|
|
|
|
/** Doplňkové efekty vizuálních stylů — společné pro všechny stránky (např. plamen při otevření dialogu). */
|
|
function StyleThemeEffects() {
|
|
const settings = useSettings();
|
|
return settings?.styleTheme === 'hellgirl' ? <HellGirlFlames /> : null;
|
|
}
|
|
|
|
export default function AppRoutes() {
|
|
return (
|
|
<ProvideSettings>
|
|
<StyleThemeEffects />
|
|
<Routes>
|
|
<Route path={STATS_URL} element={<StatsPage />} />
|
|
<Route path={NAVRHY_URL} element={<SuggestionsPage />} />
|
|
<Route path={OBJEDNANI_URL} element={
|
|
<SocketContext.Provider value={socket}>
|
|
<OrderGroupsPage />
|
|
<ToastContainer />
|
|
</SocketContext.Provider>
|
|
} />
|
|
<Route path="/" element={
|
|
<SocketContext.Provider value={socket}>
|
|
<>
|
|
<FlyingButterflies numButterflies={BUTTERFLY_PRESETS.NORMAL} />
|
|
<App />
|
|
</>
|
|
<ToastContainer />
|
|
</SocketContext.Provider>
|
|
} />
|
|
</Routes>
|
|
</ProvideSettings>
|
|
);
|
|
}
|