You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
FreeBug/frontend/edu-connect/src/utils/menu-list.tsx

111 lines
2.0 KiB

import { routes } from "@/lib/routes";
import {
Users,
Settings,
LayoutGrid,
LucideIcon,
Warehouse,
Building,
} from "lucide-react";
type Submenu = {
href: string;
label: string;
active?: boolean;
};
type Menu = {
href: string;
label: string;
active?: boolean;
icon: LucideIcon;
submenus?: Submenu[];
};
type Group = {
groupLabel: string;
menus: Menu[];
};
export function getMenuList(): Group[] {
return [
{
groupLabel: "",
menus: [
{
href: routes.DASHBOARD_ROUTE,
label: "Dashboard",
icon: LayoutGrid,
}
]
},
{
groupLabel: "Contents",
menus: [
{
href : '' ,
label : 'Company',
icon : Building,
submenus : [
{
href: routes.DASHBOARD_ROUTE,
label: "All Branch"
},
{
href: routes.DASHBOARD_ROUTE,
label: "All Department"
},
]
},
{
href: "",
label: "Employees",
icon: Users,
submenus: [
{
href: routes.DASHBOARD_ROUTE,
label: "All Employees"
},
]
},
{
href : '' ,
label : 'Assets' ,
icon : Warehouse ,
submenus : [
{
label : 'All Assets' ,
href : routes.DASHBOARD_ROUTE
} ,
{
label : 'Categories' ,
href : routes.DASHBOARD_ROUTE
} ,
{
label : 'Usage',
href : routes.DASHBOARD_ROUTE
} ,
]
}
]
},
{
groupLabel: "Settings",
menus: [
// {
// href: "/users",
// label: "Users",
// icon: UserCog
// },
{
href: "/account",
label: "Account",
icon: Settings
}
]
}
];
}