import { layouts } from './layouts/index'; import { createRouter, createWebHistory } from 'vue-router'; import HomePage from './pages/Home.page.vue'; import NotFound from './pages/404.page.vue'; import { tools } from './tools'; const toolsRoutes = tools.map(({ path, name, component, ...config }) => ({ path, name, component, meta: { isTool: true, layout: layouts.toolLayout, name, ...config } })); const toolsRedirectRoutes = tools .filter(({ redirectFrom }) => redirectFrom && redirectFrom.length > 0) .flatMap(({ path, redirectFrom }) => redirectFrom?.map((redirectSource) => ({ path: redirectSource, redirect: path })) ?? []); const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), routes: [ { path: '/', name: 'home', component: HomePage, }, ...toolsRoutes, ...toolsRedirectRoutes, { path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound }, ], }); export default router;