Spaces:
Configuration error
Configuration error
| import { IRoute } from '@/types/navigation'; | |
| // NextJS Requirement | |
| export const isWindowAvailable = () => typeof window !== 'undefined'; | |
| export const findCurrentRoute = ( | |
| routes: IRoute[], | |
| pathname: string, | |
| ): IRoute | undefined => { | |
| for (let route of routes) { | |
| if (route.items) { | |
| const found = findCurrentRoute(route.items, pathname); | |
| if (found) return found; | |
| } | |
| if (pathname?.match(route.path) && route) { | |
| return route; | |
| } | |
| } | |
| }; | |
| export const getActiveRoute = (routes: IRoute[], pathname: string): string => { | |
| const route = findCurrentRoute(routes, pathname); | |
| return route?.name || 'Default Brand Text'; | |
| }; | |
| export const getActiveNavbar = ( | |
| routes: IRoute[], | |
| pathname: string, | |
| ): boolean => { | |
| const route = findCurrentRoute(routes, pathname); | |
| if (route?.secondary) return route?.secondary; | |
| else return false; | |
| }; | |
| export const getActiveNavbarText = ( | |
| routes: IRoute[], | |
| pathname: string, | |
| ): string | boolean => { | |
| return getActiveRoute(routes, pathname) || false; | |
| }; | |