1828dda9bSDerick Montagueimport IconDashboard from '@carbon/icons-vue/es/dashboard/16'; 2828dda9bSDerick Montagueimport IconTextLinkAnalysis from '@carbon/icons-vue/es/text-link--analysis/16'; 3d329ec84SYoshie Muranakaimport IconDataCheck from '@carbon/icons-vue/es/data--check/16'; 4d329ec84SYoshie Muranakaimport IconSettingsAdjust from '@carbon/icons-vue/es/settings--adjust/16'; 5d329ec84SYoshie Muranakaimport IconSettings from '@carbon/icons-vue/es/settings/16'; 6b440616cSSandeepa Singhimport IconSecurity from '@carbon/icons-vue/es/security/16'; 7d329ec84SYoshie Muranakaimport IconChevronUp from '@carbon/icons-vue/es/chevron--up/16'; 86dba4be6SSandeepa Singhimport IconDataBase from '@carbon/icons-vue/es/data--base--alt/16'; 9883a0d59SEd Tanousimport i18n from '@/i18n'; 10aeb19816SDamian Celicoconst roles = { 11aeb19816SDamian Celico administrator: 'Administrator', 12aeb19816SDamian Celico operator: 'Operator', 13aeb19816SDamian Celico readonly: 'ReadOnly', 14aeb19816SDamian Celico noaccess: 'NoAccess', 15aeb19816SDamian Celico}; 16d329ec84SYoshie Muranaka 17d329ec84SYoshie Muranakaconst AppNavigationMixin = { 18d329ec84SYoshie Muranaka components: { 19828dda9bSDerick Montague iconOverview: IconDashboard, 20828dda9bSDerick Montague iconLogs: IconTextLinkAnalysis, 21d329ec84SYoshie Muranaka iconHealth: IconDataCheck, 22d329ec84SYoshie Muranaka iconControl: IconSettingsAdjust, 23f67f769fSSandeepa Singh iconSettings: IconSettings, 24b440616cSSandeepa Singh iconSecurityAndAccess: IconSecurity, 25602e98aaSDerick Montague iconExpand: IconChevronUp, 266dba4be6SSandeepa Singh iconResourceManagement: IconDataBase, 27d329ec84SYoshie Muranaka }, 28d329ec84SYoshie Muranaka data() { 29d329ec84SYoshie Muranaka return { 30d329ec84SYoshie Muranaka navigationItems: [ 31d329ec84SYoshie Muranaka { 32d329ec84SYoshie Muranaka id: 'overview', 33883a0d59SEd Tanous label: i18n.global.t('appNavigation.overview'), 34d329ec84SYoshie Muranaka route: '/', 35602e98aaSDerick Montague icon: 'iconOverview', 36d329ec84SYoshie Muranaka }, 37d329ec84SYoshie Muranaka { 38828dda9bSDerick Montague id: 'logs', 39883a0d59SEd Tanous label: i18n.global.t('appNavigation.logs'), 40828dda9bSDerick Montague icon: 'iconLogs', 41d329ec84SYoshie Muranaka children: [ 42d329ec84SYoshie Muranaka { 43d329ec84SYoshie Muranaka id: 'event-logs', 44883a0d59SEd Tanous label: i18n.global.t('appNavigation.eventLogs'), 45828dda9bSDerick Montague route: '/logs/event-logs', 46d329ec84SYoshie Muranaka }, 47d329ec84SYoshie Muranaka { 4806d53863SSandeepa Singh id: 'post-code-logs', 49883a0d59SEd Tanous label: i18n.global.t('appNavigation.postCodeLogs'), 507affc529SSandeepa Singh route: '/logs/post-code-logs', 517affc529SSandeepa Singh }, 52*6b1a1573SPaul Fertser { 53*6b1a1573SPaul Fertser id: 'dumps', 54*6b1a1573SPaul Fertser label: i18n.global.t('appNavigation.dumps'), 55*6b1a1573SPaul Fertser route: '/logs/dumps', 56*6b1a1573SPaul Fertser }, 577affc529SSandeepa Singh ], 587affc529SSandeepa Singh }, 597affc529SSandeepa Singh { 607affc529SSandeepa Singh id: 'hardware-status', 61883a0d59SEd Tanous label: i18n.global.t('appNavigation.hardwareStatus'), 627affc529SSandeepa Singh icon: 'iconHealth', 637affc529SSandeepa Singh children: [ 647affc529SSandeepa Singh { 657affc529SSandeepa Singh id: 'inventory', 66883a0d59SEd Tanous label: i18n.global.t('appNavigation.inventory'), 677affc529SSandeepa Singh route: '/hardware-status/inventory', 6806d53863SSandeepa Singh }, 6906d53863SSandeepa Singh { 70d329ec84SYoshie Muranaka id: 'sensors', 71883a0d59SEd Tanous label: i18n.global.t('appNavigation.sensors'), 727affc529SSandeepa Singh route: '/hardware-status/sensors', 73602e98aaSDerick Montague }, 74602e98aaSDerick Montague ], 75d329ec84SYoshie Muranaka }, 76d329ec84SYoshie Muranaka { 7768cbbe90SSandeepa Singh id: 'operations', 78883a0d59SEd Tanous label: i18n.global.t('appNavigation.operations'), 79d329ec84SYoshie Muranaka icon: 'iconControl', 80d329ec84SYoshie Muranaka children: [ 81d329ec84SYoshie Muranaka { 82da9f0a6eSDerick Montague id: 'factory-reset', 83883a0d59SEd Tanous label: i18n.global.t('appNavigation.factoryReset'), 8468cbbe90SSandeepa Singh route: '/operations/factory-reset', 85da9f0a6eSDerick Montague }, 86da9f0a6eSDerick Montague { 87d329ec84SYoshie Muranaka id: 'kvm', 88883a0d59SEd Tanous label: i18n.global.t('appNavigation.kvm'), 8968cbbe90SSandeepa Singh route: '/operations/kvm', 9068cbbe90SSandeepa Singh }, 9168cbbe90SSandeepa Singh { 9205887b50SSandeepa Singh id: 'key-clear', 93883a0d59SEd Tanous label: i18n.global.t('appNavigation.keyClear'), 9405887b50SSandeepa Singh route: '/operations/key-clear', 9505887b50SSandeepa Singh }, 9605887b50SSandeepa Singh { 9768cbbe90SSandeepa Singh id: 'firmware', 98883a0d59SEd Tanous label: i18n.global.t('appNavigation.firmware'), 9968cbbe90SSandeepa Singh route: '/operations/firmware', 100d329ec84SYoshie Muranaka }, 101d329ec84SYoshie Muranaka { 102d329ec84SYoshie Muranaka id: 'reboot-bmc', 103883a0d59SEd Tanous label: i18n.global.t('appNavigation.rebootBmc'), 10468cbbe90SSandeepa Singh route: '/operations/reboot-bmc', 105d329ec84SYoshie Muranaka }, 106d329ec84SYoshie Muranaka { 107d329ec84SYoshie Muranaka id: 'serial-over-lan', 108883a0d59SEd Tanous label: i18n.global.t('appNavigation.serialOverLan'), 10968cbbe90SSandeepa Singh route: '/operations/serial-over-lan', 110aeb19816SDamian Celico exclusiveToRoles: [roles.administrator], 111d329ec84SYoshie Muranaka }, 112d329ec84SYoshie Muranaka { 113d329ec84SYoshie Muranaka id: 'server-power-operations', 114883a0d59SEd Tanous label: i18n.global.t('appNavigation.serverPowerOperations'), 11568cbbe90SSandeepa Singh route: '/operations/server-power-operations', 116d329ec84SYoshie Muranaka }, 117d329ec84SYoshie Muranaka { 118d329ec84SYoshie Muranaka id: 'virtual-media', 119883a0d59SEd Tanous label: i18n.global.t('appNavigation.virtualMedia'), 12068cbbe90SSandeepa Singh route: '/operations/virtual-media', 121aeb19816SDamian Celico exclusiveToRoles: [roles.administrator], 122602e98aaSDerick Montague }, 123602e98aaSDerick Montague ], 124d329ec84SYoshie Muranaka }, 125d329ec84SYoshie Muranaka { 126f67f769fSSandeepa Singh id: 'settings', 127883a0d59SEd Tanous label: i18n.global.t('appNavigation.settings'), 128f67f769fSSandeepa Singh icon: 'iconSettings', 129d329ec84SYoshie Muranaka children: [ 130d329ec84SYoshie Muranaka { 131f67f769fSSandeepa Singh id: 'date-time', 132883a0d59SEd Tanous label: i18n.global.t('appNavigation.dateTime'), 133f67f769fSSandeepa Singh route: '/settings/date-time', 134d329ec84SYoshie Muranaka }, 135d329ec84SYoshie Muranaka { 136f67f769fSSandeepa Singh id: 'network', 137883a0d59SEd Tanous label: i18n.global.t('appNavigation.network'), 138f67f769fSSandeepa Singh route: '/settings/network', 139f67f769fSSandeepa Singh }, 140f67f769fSSandeepa Singh { 141f67f769fSSandeepa Singh id: 'power-restore-policy', 142883a0d59SEd Tanous label: i18n.global.t('appNavigation.powerRestorePolicy'), 143f67f769fSSandeepa Singh route: '/settings/power-restore-policy', 144d329ec84SYoshie Muranaka }, 1457c1cfe7eSKonstantin Aladyshev { 1467c1cfe7eSKonstantin Aladyshev id: 'snmp-alerts', 147883a0d59SEd Tanous label: i18n.global.t('appNavigation.snmpAlerts'), 1487c1cfe7eSKonstantin Aladyshev route: '/settings/snmp-alerts', 1497c1cfe7eSKonstantin Aladyshev }, 150602e98aaSDerick Montague ], 151d329ec84SYoshie Muranaka }, 152d329ec84SYoshie Muranaka { 153b440616cSSandeepa Singh id: 'security-and-access', 154883a0d59SEd Tanous label: i18n.global.t('appNavigation.securityAndAccess'), 155b440616cSSandeepa Singh icon: 'iconSecurityAndAccess', 156d329ec84SYoshie Muranaka children: [ 157d329ec84SYoshie Muranaka { 158b440616cSSandeepa Singh id: 'sessions', 159883a0d59SEd Tanous label: i18n.global.t('appNavigation.sessions'), 160b440616cSSandeepa Singh route: '/security-and-access/sessions', 16134efde29SSukanya Pandey }, 16234efde29SSukanya Pandey { 163d329ec84SYoshie Muranaka id: 'ldap', 164883a0d59SEd Tanous label: i18n.global.t('appNavigation.ldap'), 165b440616cSSandeepa Singh route: '/security-and-access/ldap', 166d329ec84SYoshie Muranaka }, 167d329ec84SYoshie Muranaka { 168b440616cSSandeepa Singh id: 'user-management', 169883a0d59SEd Tanous label: i18n.global.t('appNavigation.userManagement'), 170b440616cSSandeepa Singh route: '/security-and-access/user-management', 171d329ec84SYoshie Muranaka }, 172d329ec84SYoshie Muranaka { 173b440616cSSandeepa Singh id: 'policies', 174883a0d59SEd Tanous label: i18n.global.t('appNavigation.policies'), 175b440616cSSandeepa Singh route: '/security-and-access/policies', 176b440616cSSandeepa Singh }, 177b440616cSSandeepa Singh { 178b440616cSSandeepa Singh id: 'certificates', 179883a0d59SEd Tanous label: i18n.global.t('appNavigation.certificates'), 180b440616cSSandeepa Singh route: '/security-and-access/certificates', 181602e98aaSDerick Montague }, 182602e98aaSDerick Montague ], 183602e98aaSDerick Montague }, 1846dba4be6SSandeepa Singh { 1856dba4be6SSandeepa Singh id: 'resource-management', 186883a0d59SEd Tanous label: i18n.global.t('appNavigation.resourceManagement'), 1876dba4be6SSandeepa Singh icon: 'iconResourceManagement', 1886dba4be6SSandeepa Singh children: [ 1896dba4be6SSandeepa Singh { 1906dba4be6SSandeepa Singh id: 'power', 191883a0d59SEd Tanous label: i18n.global.t('appNavigation.power'), 1926dba4be6SSandeepa Singh route: '/resource-management/power', 1936dba4be6SSandeepa Singh }, 1946dba4be6SSandeepa Singh ], 1956dba4be6SSandeepa Singh }, 196602e98aaSDerick Montague ], 197d329ec84SYoshie Muranaka }; 198602e98aaSDerick Montague }, 199d329ec84SYoshie Muranaka}; 200d329ec84SYoshie Muranaka 201d329ec84SYoshie Muranakaexport default AppNavigationMixin; 202