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: '/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: '/discord_bots/discord_bots-list', label: 'Discord bots', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiRobot' in icon ? icon['mdiRobot' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_DISCORD_BOTS' }, { href: '/discord_guilds/discord_guilds-list', label: 'Discord guilds', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiDiscord' in icon ? icon['mdiDiscord' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_DISCORD_GUILDS' }, { href: '/voice_channels/voice_channels-list', label: 'Voice channels', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiVolumeHigh' in icon ? icon['mdiVolumeHigh' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_VOICE_CHANNELS' }, { href: '/audio_assets/audio_assets-list', label: 'Audio assets', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiMusicNote' in icon ? icon['mdiMusicNote' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_AUDIO_ASSETS' }, { href: '/slash_commands/slash_commands-list', label: 'Slash commands', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiSlashForward' in icon ? icon['mdiSlashForward' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_SLASH_COMMANDS' }, { href: '/voice_sessions/voice_sessions-list', label: 'Voice sessions', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiAccessPointNetwork' in icon ? icon['mdiAccessPointNetwork' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_VOICE_SESSIONS' }, { href: '/playback_events/playback_events-list', label: 'Playback events', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiPlayCircle' in icon ? icon['mdiPlayCircle' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_PLAYBACK_EVENTS' }, { href: '/reconnect_logs/reconnect_logs-list', label: 'Reconnect logs', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiReloadAlert' in icon ? icon['mdiReloadAlert' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_RECONNECT_LOGS' }, { href: '/bot_settings/bot_settings-list', label: 'Bot settings', // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore icon: 'mdiCogs' in icon ? icon['mdiCogs' as keyof typeof icon] : icon.mdiTable ?? icon.mdiTable, permissions: 'READ_BOT_SETTINGS' }, { 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