strava-frontend/src/components/sidebar/NavigationRoutes.ts

72 lines
1.3 KiB
TypeScript

export interface INavigationRoute {
name: string;
displayName: string;
meta: { icon: string };
children?: INavigationRoute[];
}
const authRoutes = [
{
name: "explore",
displayName: "menu.dashboard",
meta: {
icon: "vuestic-iconset-dashboard",
},
},
{
name: "routes",
displayName: "menu.routes",
meta: {
icon: "near_me",
},
},
{
name: "workouts",
displayName: "menu.workouts",
meta: {
icon: "folder_shared",
},
children: [
{
name: "list_workouts",
displayName: "menu.list_workouts",
children: [
{
name: "workout_item",
displayName: "Тренировка",
},
],
},
{
name: "upload_workouts",
displayName: "menu.upload_workouts",
},
],
},
] as INavigationRoute[];
const publicRoutes = [
{
name: "routes",
displayName: "menu.routes",
meta: {
icon: "near_me",
},
},
{
name: "explore",
displayName: "menu.dashboard",
meta: {
icon: "vuestic-iconset-dashboard",
},
},
] as INavigationRoute[];
// localStorage.getItem('token')
export default {
root: {
name: "/",
displayName: "navigationRoutes.home",
},
routes: localStorage.getItem("token") ? authRoutes : publicRoutes,
};