Files
gameyfin/src/main/frontend/App.tsx
T
Simon Grimme 1273714b8d Add "My Profile" Page
Make integer parsing in ConfigService more robust
Add validation to config pages
Implement Cron expression validator
2024-09-11 18:06:21 +02:00

31 lines
1.2 KiB
TypeScript

import {Outlet, useNavigate} from 'react-router-dom';
import "./main.css";
import "Frontend/util/custom-validators";
import {NextUIProvider} from "@nextui-org/react";
import {ThemeProvider as NextThemesProvider} from "next-themes";
import {themeNames} from "Frontend/theming/themes";
import {AuthProvider} from "Frontend/util/auth";
import {IconContext} from "@phosphor-icons/react";
import {Toaster} from "Frontend/@/components/ui/sonner";
import client from "Frontend/generated/connect-client.default";
import {ErrorHandlingMiddleware} from "Frontend/util/middleware";
export default function App() {
const navigate = useNavigate();
client.middlewares = [ErrorHandlingMiddleware];
return (
<NextUIProvider className="size-full" navigate={navigate}>
<NextThemesProvider attribute="class" themes={themeNames()} defaultTheme="gameyfin-violet-dark">
<AuthProvider>
<IconContext.Provider value={{size: 20}}>
<Outlet/>
<Toaster/>
</IconContext.Provider>
</AuthProvider>
</NextThemesProvider>
</NextUIProvider>
);
}