- Update routes to include "Login" page - Add dynamic website title updates based on current route - Add "Login" button to layout linking to Login page
55 lines
1.1 KiB
TypeScript
55 lines
1.1 KiB
TypeScript
import Home from '@/routes/Home.vue'
|
|
import NotFound from '@/routes/404NotFound.vue'
|
|
import type { RouteRecordRaw } from 'vue-router'
|
|
import Login from '@/routes/authentication/Login.vue';
|
|
|
|
export enum Visibility {
|
|
Hidden,
|
|
Authorized,
|
|
Public
|
|
}
|
|
|
|
|
|
export interface LayoutRoute {
|
|
path: string,
|
|
name: string,
|
|
description: string,
|
|
icon: string,
|
|
visible: Visibility,
|
|
meta: RouteRecordRaw
|
|
}
|
|
|
|
export const routes: LayoutRoute[] = [
|
|
{
|
|
path: "/",
|
|
name: "Startseite",
|
|
description: "Übersicht der Anwendung",
|
|
icon: "mdi-home",
|
|
visible: Visibility.Public,
|
|
meta: {
|
|
name: 'Home',
|
|
path: '/',
|
|
component: Home
|
|
}
|
|
},
|
|
{
|
|
path: "/login",
|
|
name: "Login",
|
|
description: "Logge dich ein",
|
|
icon: "mdi-login",
|
|
visible: Visibility.Hidden,
|
|
meta: {
|
|
path: "/login",
|
|
name: 'Login',
|
|
component: Login
|
|
}
|
|
},
|
|
{
|
|
path: "/notFound",
|
|
name: "Nicht Gefunden",
|
|
description: "Diese Seite wurde nicht gefunden",
|
|
icon: "mdi-information-outline",
|
|
visible: Visibility.Hidden,
|
|
meta: { path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound },
|
|
}
|
|
]
|