blob: 935bd7e7f1ed5219c56c941228e43099c4c9c55e [file] [log] [blame]
Derick Montague828dda92021-06-28 15:52:22 -05001import IconDashboard from '@carbon/icons-vue/es/dashboard/16';
2import IconTextLinkAnalysis from '@carbon/icons-vue/es/text-link--analysis/16';
Yoshie Muranakad329ec82020-08-11 18:24:59 -07003import IconDataCheck from '@carbon/icons-vue/es/data--check/16';
4import IconSettingsAdjust from '@carbon/icons-vue/es/settings--adjust/16';
5import IconSettings from '@carbon/icons-vue/es/settings/16';
6import IconPassword from '@carbon/icons-vue/es/password/16';
7import IconChevronUp from '@carbon/icons-vue/es/chevron--up/16';
8
9const AppNavigationMixin = {
10 components: {
Derick Montague828dda92021-06-28 15:52:22 -050011 iconOverview: IconDashboard,
12 iconLogs: IconTextLinkAnalysis,
Yoshie Muranakad329ec82020-08-11 18:24:59 -070013 iconHealth: IconDataCheck,
14 iconControl: IconSettingsAdjust,
15 iconConfiguration: IconSettings,
16 iconAccessControl: IconPassword,
Derick Montague602e98a2020-10-21 16:20:00 -050017 iconExpand: IconChevronUp,
Yoshie Muranakad329ec82020-08-11 18:24:59 -070018 },
19 data() {
20 return {
21 navigationItems: [
22 {
23 id: 'overview',
24 label: this.$t('appNavigation.overview'),
25 route: '/',
Derick Montague602e98a2020-10-21 16:20:00 -050026 icon: 'iconOverview',
Yoshie Muranakad329ec82020-08-11 18:24:59 -070027 },
28 {
Derick Montague828dda92021-06-28 15:52:22 -050029 id: 'logs',
30 label: this.$t('appNavigation.logs'),
31 icon: 'iconLogs',
Yoshie Muranakad329ec82020-08-11 18:24:59 -070032 children: [
33 {
34 id: 'event-logs',
35 label: this.$t('appNavigation.eventLogs'),
Derick Montague828dda92021-06-28 15:52:22 -050036 route: '/logs/event-logs',
Yoshie Muranakad329ec82020-08-11 18:24:59 -070037 },
Yoshie Muranakad329ec82020-08-11 18:24:59 -070038 {
Sandeepa Singh06d53862021-05-24 13:51:09 +053039 id: 'post-code-logs',
40 label: this.$t('appNavigation.postCodeLogs'),
Sandeepa Singh7affc522021-07-06 16:29:10 +053041 route: '/logs/post-code-logs',
42 },
43 ],
44 },
45 {
46 id: 'hardware-status',
47 label: this.$t('appNavigation.hardwareStatus'),
48 icon: 'iconHealth',
49 children: [
50 {
51 id: 'inventory',
52 label: this.$t('appNavigation.inventory'),
53 route: '/hardware-status/inventory',
Sandeepa Singh06d53862021-05-24 13:51:09 +053054 },
55 {
Yoshie Muranakad329ec82020-08-11 18:24:59 -070056 id: 'sensors',
57 label: this.$t('appNavigation.sensors'),
Sandeepa Singh7affc522021-07-06 16:29:10 +053058 route: '/hardware-status/sensors',
Derick Montague602e98a2020-10-21 16:20:00 -050059 },
60 ],
Yoshie Muranakad329ec82020-08-11 18:24:59 -070061 },
62 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053063 id: 'operations',
64 label: this.$t('appNavigation.operations'),
Yoshie Muranakad329ec82020-08-11 18:24:59 -070065 icon: 'iconControl',
66 children: [
67 {
Derick Montagueda9f0a62021-02-14 19:21:44 -060068 id: 'factory-reset',
69 label: this.$t('appNavigation.factoryReset'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053070 route: '/operations/factory-reset',
Derick Montagueda9f0a62021-02-14 19:21:44 -060071 },
72 {
Yoshie Muranakad329ec82020-08-11 18:24:59 -070073 id: 'kvm',
74 label: this.$t('appNavigation.kvm'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053075 route: '/operations/kvm',
76 },
77 {
78 id: 'firmware',
79 label: this.$t('appNavigation.firmware'),
80 route: '/operations/firmware',
Yoshie Muranakad329ec82020-08-11 18:24:59 -070081 },
82 {
83 id: 'manage-power-usage',
84 label: this.$t('appNavigation.managePowerUsage'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053085 route: '/operations/manage-power-usage',
Yoshie Muranakad329ec82020-08-11 18:24:59 -070086 },
87 {
Sukanya Pandeybe6858c2020-12-16 20:08:01 +053088 id: 'power-restore-policy',
89 label: this.$t('appNavigation.powerRestorePolicy'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053090 route: '/operations/power-restore-policy',
Sukanya Pandeybe6858c2020-12-16 20:08:01 +053091 },
92 {
Yoshie Muranakad329ec82020-08-11 18:24:59 -070093 id: 'reboot-bmc',
94 label: this.$t('appNavigation.rebootBmc'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053095 route: '/operations/reboot-bmc',
Yoshie Muranakad329ec82020-08-11 18:24:59 -070096 },
97 {
98 id: 'serial-over-lan',
99 label: this.$t('appNavigation.serialOverLan'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530100 route: '/operations/serial-over-lan',
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700101 },
102 {
103 id: 'server-power-operations',
104 label: this.$t('appNavigation.serverPowerOperations'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530105 route: '/operations/server-power-operations',
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700106 },
107 {
108 id: 'virtual-media',
109 label: this.$t('appNavigation.virtualMedia'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530110 route: '/operations/virtual-media',
Derick Montague602e98a2020-10-21 16:20:00 -0500111 },
112 ],
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700113 },
114 {
115 id: 'configuration',
116 label: this.$t('appNavigation.configuration'),
117 icon: 'iconConfiguration',
118 children: [
119 {
120 id: 'date-time-settings',
121 label: this.$t('appNavigation.dateTimeSettings'),
Derick Montague602e98a2020-10-21 16:20:00 -0500122 route: '/configuration/date-time-settings',
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700123 },
124 {
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700125 id: 'network-settings',
126 label: this.$t('appNavigation.networkSettings'),
Derick Montague602e98a2020-10-21 16:20:00 -0500127 route: '/configuration/network-settings',
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700128 },
129 {
Dixsie Wolmers8f030ba2020-12-07 13:12:53 -0600130 id: 'security-settings',
131 label: this.$t('appNavigation.securitySettings'),
132 route: '/configuration/security-settings',
133 },
134 {
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700135 id: 'snmp-settings',
136 label: this.$t('appNavigation.snmpSettings'),
Yoshie Muranakaff8c5cd2020-11-12 12:56:38 -0800137 route: '/snmp-settings',
Derick Montague602e98a2020-10-21 16:20:00 -0500138 },
139 ],
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700140 },
141 {
142 id: 'access-control',
Yoshie Muranaka4c7c5af2020-09-27 21:22:52 -0700143 label: this.$t('appNavigation.accessControl'),
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700144 icon: 'iconAccessControl',
145 children: [
146 {
Sukanya Pandey34efde22020-12-02 19:04:09 +0530147 id: 'client-sessions',
148 label: this.$t('appNavigation.clientSessions'),
149 route: '/access-control/client-sessions',
150 },
151 {
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700152 id: 'ldap',
153 label: this.$t('appNavigation.ldap'),
Derick Montague602e98a2020-10-21 16:20:00 -0500154 route: '/access-control/ldap',
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700155 },
156 {
157 id: 'local-user-management',
158 label: this.$t('appNavigation.localUserManagement'),
Derick Montague602e98a2020-10-21 16:20:00 -0500159 route: '/access-control/local-user-management',
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700160 },
161 {
162 id: 'ssl-certificates',
163 label: this.$t('appNavigation.sslCertificates'),
Derick Montague602e98a2020-10-21 16:20:00 -0500164 route: '/access-control/ssl-certificates',
165 },
166 ],
167 },
168 ],
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700169 };
Derick Montague602e98a2020-10-21 16:20:00 -0500170 },
Yoshie Muranakad329ec82020-08-11 18:24:59 -0700171};
172
173export default AppNavigationMixin;