blob: a43c1ea4cd17268d2e0d38e2a557e546b6cdcee1 [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';
MichalX Szopinski842b5db2020-11-24 13:12:50 +01003import 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';
Sandeepa Singhb4406162021-07-26 15:05:39 +05306import IconSecurity from '@carbon/icons-vue/es/security/16';
MichalX Szopinski842b5db2020-11-24 13:12:50 +01007import IconChevronUp from '@carbon/icons-vue/es/chevron--up/16';
Sandeepa Singh6dba4be2021-07-28 15:25:14 +05308import IconDataBase from '@carbon/icons-vue/es/data--base--alt/16';
MichalX Szopinski842b5db2020-11-24 13:12:50 +01009
10const AppNavigationMixin = {
11 components: {
Derick Montague828dda92021-06-28 15:52:22 -050012 iconOverview: IconDashboard,
13 iconLogs: IconTextLinkAnalysis,
MichalX Szopinski842b5db2020-11-24 13:12:50 +010014 iconHealth: IconDataCheck,
15 iconControl: IconSettingsAdjust,
Sandeepa Singhf67f7692021-07-19 18:04:18 +053016 iconSettings: IconSettings,
Sandeepa Singhb4406162021-07-26 15:05:39 +053017 iconSecurityAndAccess: IconSecurity,
MichalX Szopinski842b5db2020-11-24 13:12:50 +010018 iconExpand: IconChevronUp,
Sandeepa Singh6dba4be2021-07-28 15:25:14 +053019 iconResourceManagement: IconDataBase,
MichalX Szopinski842b5db2020-11-24 13:12:50 +010020 },
21 data() {
22 return {
23 navigationItems: [
24 {
25 id: 'overview',
26 label: this.$t('appNavigation.overview'),
27 route: '/',
28 icon: 'iconOverview',
29 },
30 {
Derick Montague828dda92021-06-28 15:52:22 -050031 id: 'logs',
32 label: this.$t('appNavigation.logs'),
33 icon: 'iconLogs',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010034 children: [
35 {
36 id: 'event-logs',
37 label: this.$t('appNavigation.eventLogs'),
Derick Montague828dda92021-06-28 15:52:22 -050038 route: '/logs/event-logs',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010039 },
Derick Montague828dda92021-06-28 15:52:22 -050040 ],
41 },
42 {
Sandeepa Singh7affc522021-07-06 16:29:10 +053043 id: 'hardware-status',
44 label: this.$t('appNavigation.hardwareStatus'),
Derick Montague828dda92021-06-28 15:52:22 -050045 icon: 'iconHealth',
46 children: [
MichalX Szopinski842b5db2020-11-24 13:12:50 +010047 {
Sandeepa Singh7affc522021-07-06 16:29:10 +053048 id: 'inventory',
49 label: this.$t('appNavigation.inventory'),
50 route: '/hardware-status/inventory',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010051 },
52 {
53 id: 'sensors',
54 label: this.$t('appNavigation.sensors'),
Sandeepa Singh7affc522021-07-06 16:29:10 +053055 route: '/hardware-status/sensors',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010056 },
57 ],
58 },
59 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053060 id: 'operations',
61 label: this.$t('appNavigation.operations'),
MichalX Szopinski842b5db2020-11-24 13:12:50 +010062 icon: 'iconControl',
63 children: [
64 {
65 id: 'kvm',
66 label: this.$t('appNavigation.kvm'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053067 route: '/operations/kvm',
68 },
69 {
70 id: 'firmware',
71 label: this.$t('appNavigation.firmware'),
72 route: '/operations/firmware',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010073 },
74 {
MichalX Szopinski842b5db2020-11-24 13:12:50 +010075 id: 'reboot-bmc',
76 label: this.$t('appNavigation.rebootBmc'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053077 route: '/operations/reboot-bmc',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010078 },
79 {
80 id: 'serial-over-lan',
81 label: this.$t('appNavigation.serialOverLan'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053082 route: '/operations/serial-over-lan',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010083 },
84 {
85 id: 'server-power-operations',
86 label: this.$t('appNavigation.serverPowerOperations'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053087 route: '/operations/server-power-operations',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010088 },
89 {
90 id: 'virtual-media',
91 label: this.$t('appNavigation.virtualMedia'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053092 route: '/operations/virtual-media',
MichalX Szopinski842b5db2020-11-24 13:12:50 +010093 },
94 ],
95 },
96 {
Sandeepa Singhf67f7692021-07-19 18:04:18 +053097 id: 'settings',
98 label: this.$t('appNavigation.settings'),
99 icon: 'iconSettings',
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100100 children: [
101 {
Sandeepa Singhf67f7692021-07-19 18:04:18 +0530102 id: 'date-time',
103 label: this.$t('appNavigation.dateTime'),
104 route: '/settings/date-time',
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100105 },
106 {
Sandeepa Singhf67f7692021-07-19 18:04:18 +0530107 id: 'network',
108 label: this.$t('appNavigation.network'),
109 route: '/settings/network',
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100110 },
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100111 ],
112 },
113 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530114 id: 'security-and-access',
115 label: this.$t('appNavigation.securityAndAccess'),
116 icon: 'iconSecurityAndAccess',
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100117 children: [
118 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530119 id: 'sessions',
120 label: this.$t('appNavigation.sessions'),
121 route: '/security-and-access/sessions',
MichalX Szopinskid6752692021-03-01 13:59:55 +0100122 },
123 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530124 id: 'user-management',
125 label: this.$t('appNavigation.userManagement'),
126 route: '/security-and-access/user-management',
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100127 },
128 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530129 id: 'policies',
130 label: this.$t('appNavigation.policies'),
131 route: '/security-and-access/policies',
132 },
133 {
134 id: 'certificates',
135 label: this.$t('appNavigation.certificates'),
136 route: '/security-and-access/certificates',
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100137 },
138 ],
139 },
Sandeepa Singh6dba4be2021-07-28 15:25:14 +0530140 {
141 id: 'resource-management',
142 label: this.$t('appNavigation.resourceManagement'),
143 icon: 'iconResourceManagement',
144 children: [
145 {
146 id: 'power',
147 label: this.$t('appNavigation.power'),
148 route: '/resource-management/power',
149 },
150 ],
151 },
MichalX Szopinski842b5db2020-11-24 13:12:50 +0100152 ],
153 };
154 },
155};
156
157export default AppNavigationMixin;