let sub_routes = []; const modules = import.meta.glob("./routes/*.route.js", { eager: true }); // eslint-disable-next-line no-unused-vars Object.entries(modules).forEach(([path, definition]) => { sub_routes = sub_routes.concat(definition.default); }); const routes = [ { path: "/", component: () => import("layouts/MainLayout.vue"), meta: { requireAuth: true }, children: [ { path: "", name: "HomePage", component: () => import("src/pages/home/HomePage.vue"), meta: { requireAuth: true, }, }, { path: "/dashboard", name: "DashboardPage", component: () => import("pages/dashboard/DashboardPage.vue"), meta: { title: { value: "Dashboard" }, description: { value: "page.system-dashboard.description", translate: true, }, requireAuth: true, requiredPermission: "dashboard", breadcrumbs: [ { name: "DashboardPage", title: "Dashboard", }, ], }, }, { path: "/versions", name: "SystemVersionsPage", component: () => import("pages/version/SystemVersionsPage.vue"), meta: { title: { value: "ui.navigation.versions", translate: true, }, description: { value: "page.versions.description", translate: true, }, requireAuth: true, breadcrumbs: [ { name: "SystemVersionsPage", title: "ui.navigation.versions", translate: true, }, ], }, }, ...sub_routes, ], }, { path: "/login", component: () => import("layouts/LoginLayout.vue"), children: [ { path: "", name: "LoginPage", component: () => import("pages/login/LoginPage.vue"), meta: { title: "Login", }, }, ], }, { path: "/forgot-my-password", component: () => import("layouts/LoginLayout.vue"), children: [ { path: "", name: "ForgotMyPasswordPage", component: () => import("pages/ForgotMyPasswordPage.vue") } ] }, // Always leave this as last one, // but you can also remove it { path: "/:catchAll(.*)*", component: () => import("pages/ErrorNotFound.vue"), }, ]; export default routes;