import * as icon from '@mdi/js'; import { MenuAsideItem } from './interfaces'; const menuAside: MenuAsideItem[] = [ { href: '/dashboard', icon: icon.mdiViewDashboardOutline, label: 'Dashboard', }, { href: '/users/users-list', label: 'Users', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: icon.mdiAccountGroup ?? icon.mdiTable, permissions: 'READ_USERS', }, { href: '/api_keys/api_keys-list', label: 'Api keys', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiKey' in icon ? icon['mdiKey' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_API_KEYS', }, { href: '/apis/apis-list', label: 'Apis', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiApi' in icon ? icon['mdiApi' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_APIS', }, { href: '/billing/billing-list', label: 'Billing', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiCurrencyUsd' in icon ? icon['mdiCurrencyUsd' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_BILLING', }, { href: '/logs/logs-list', label: 'Logs', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiFileDocumentOutline' in icon ? icon['mdiFileDocumentOutline' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_LOGS', }, { href: '/teams/teams-list', label: 'Teams', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiAccountGroup' in icon ? icon['mdiAccountGroup' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_TEAMS', }, { href: '/roles/roles-list', label: 'Roles', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: icon.mdiShieldAccountVariantOutline ?? icon.mdiTable, permissions: 'READ_ROLES', }, { href: '/permissions/permissions-list', label: 'Permissions', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: icon.mdiShieldAccountOutline ?? icon.mdiTable, permissions: 'READ_PERMISSIONS', }, { href: '/profile', label: 'Profile', icon: icon.mdiAccountCircle, }, { href: '/api-docs', target: '_blank', label: 'Swagger API', icon: icon.mdiFileCode, permissions: 'READ_API_DOCS', }, ]; export default menuAside;