import LoginView from "Frontend/views/LoginView";
import MainLayout from "Frontend/views/MainLayout";
import HomeView from "Frontend/views/HomeView";
import SetupView from "Frontend/views/SetupView";
import {ThemeSelector} from "Frontend/components/theming/ThemeSelector";
import App from "Frontend/App";
import {LibraryManagement} from "Frontend/components/administration/LibraryManagement";
import {UserManagement} from "Frontend/components/administration/UserManagement";
import ProfileManagement from "Frontend/components/administration/ProfileManagement";
import {SsoManagement} from "Frontend/components/administration/SsoManagement";
import {AdministrationView} from "Frontend/views/AdministrationView";
import {ProfileView} from "Frontend/views/ProfileView";
import {MessageManagement} from "Frontend/components/administration/MessageManagement";
import {LogManagement} from "Frontend/components/administration/LogManagement";
import PasswordResetView from "Frontend/views/PasswordResetView";
import EmailConfirmationView from "Frontend/views/EmailConfirmationView";
import InvitationRegistrationView from "Frontend/views/InvitationRegistrationView";
import PluginManagement from "Frontend/components/administration/PluginManagement";
import {SystemManagement} from "Frontend/components/administration/SystemManagement";
import GameView from "Frontend/views/GameView";
import LibraryManagementView from "Frontend/views/LibraryManagementView";
import SearchView from "Frontend/views/SearchView";
import RecentlyAddedView from "Frontend/views/RecentlyAddedView";
import LibraryView from "Frontend/views/LibraryView";
import {RouterConfigurationBuilder} from "@vaadin/hilla-file-router/runtime.js";
import ErrorView from "Frontend/views/ErrorView";
import GameRequestView from "Frontend/views/GameRequestView";
import {GameRequestManagement} from "Frontend/components/administration/GameRequestManagement";
export const {router, routes} = new RouterConfigurationBuilder()
.withReactRoutes([
{
element: ,
children: [
{
element: ,
children: [
{
index: true,
element:
},
{
path: 'search',
element: ,
handle: {title: 'Search'}
},
{
path: 'recently-added',
element: ,
handle: {title: 'Recently Added'}
},
{
path: '/requests',
element: ,
handle: {title: 'Game requests'}
},
{
path: 'library/:libraryId',
element:
},
{
path: 'game/:gameId',
element:
},
{
path: 'settings',
element: ,
handle: {title: 'Profile'},
children: [
{
path: 'profile',
element: ,
handle: {title: 'Profile Settings'}
},
{
path: 'appearance',
element: ,
handle: {title: 'Appearance'}
}
]
},
{
path: 'administration',
element: ,
handle: {title: 'Administration'},
children: [
{
path: 'libraries',
element: ,
handle: {title: 'Administration - Libraries'}
},
{
path: 'libraries/library/:libraryId',
element: ,
handle: {title: 'Administration - Library'}
},
{
path: 'requests',
element: ,
handle: {title: 'Administration - Game Requests'}
},
{
path: 'users',
element: ,
handle: {title: 'Administration - Users'}
},
{
path: 'sso',
element: ,
handle: {title: 'Administration - SSO'}
},
{
path: 'messages',
element: ,
handle: {title: 'Administration - Messages'}
},
{
path: 'plugins',
element: ,
handle: {title: 'Administration - Plugins'}
},
{
path: 'logs',
element: ,
handle: {title: 'Administration - Logs'}
},
{
path: 'system',
element: ,
handle: {title: 'Administration - System'}
}
]
}
]
},
{
path: 'login',
element: ,
handle: {title: 'Login'}
},
{
path: 'setup',
element: ,
handle: {title: 'Setup'}
},
{
path: 'accept-invitation',
element: ,
handle: {title: 'You have been invited to Gameyfin!'}
},
{
path: 'reset-password',
element: ,
handle: {title: 'Reset Password'}
},
{
path: 'confirm-email',
element: ,
handle: {title: 'Confirm Email'}
},
{
path: '*',
element: ,
handle: {title: 'Error'}
}
]
}
])
.protect("/login")
.build();