import { PERMISSIONS } from '@/constants/permissions'; import { ROUTES } from '@/utils/routes'; export type AppRoute = { path: string; permission?: string; match?: 'exact' | 'prefix'; }; export const appRoutes: AppRoute[] = [ { path: ROUTES.ROLES, permission: PERMISSIONS.ROLE.READ, }, { path: ROUTES.USERS, permission: PERMISSIONS.USER.READ, }, { path: ROUTES.CLIENTS, permission: PERMISSIONS.CLIENT.READ, }, { path: ROUTES.PLANS, permission: PERMISSIONS.PLAN.READ, }, { path: ROUTES.UPLOAD, permission: PERMISSIONS.VIDEO.UPLOAD, }, { path: ROUTES.TICKET, permission: PERMISSIONS.TICKET.READ, match: 'prefix', }, ]; export function getRoutePermission(pathname: string) { return appRoutes.find((route) => route.match === 'prefix' ? pathname === route.path || pathname.startsWith(`${route.path}/`) : route.path === pathname, )?.permission; }