function buildNavigation(routes, permissions = []) { const layout = routes .filter((route) => route.path === '/' && Array.isArray(route.children) && route.children.length > 0) .sort((left, right) => right.children.length - left.children.length)[0] return (layout?.children || []) .filter((route) => route.meta?.title && !route.meta?.hidden) .filter((route) => !route.meta?.permission || permissions.includes(route.meta.permission)) .map((route) => ({ path: route.path ? `/${route.path}`.replace('//', '/') : '/', title: route.meta.title, icon: route.meta.icon, order: route.meta.order || 0 })) .sort((left, right) => left.order - right.order) } module.exports = { buildNavigation }