blob: 55981f184b3dc70df350750b712cbc21edf27f33 [file] [log] [blame]
MichalX Szopinski842b5db2020-11-24 13:12:50 +01001import IconAnalytics from '@carbon/icons-vue/es/analytics/16';
2import IconDataCheck from '@carbon/icons-vue/es/data--check/16';
3import IconSettingsAdjust from '@carbon/icons-vue/es/settings--adjust/16';
4import IconSettings from '@carbon/icons-vue/es/settings/16';
5import IconPassword from '@carbon/icons-vue/es/password/16';
6import IconChevronUp from '@carbon/icons-vue/es/chevron--up/16';
7
8const AppNavigationMixin = {
9 components: {
10 iconOverview: IconAnalytics,
11 iconHealth: IconDataCheck,
12 iconControl: IconSettingsAdjust,
13 iconConfiguration: IconSettings,
14 iconAccessControl: IconPassword,
15 iconExpand: IconChevronUp,
16 },
17 data() {
18 return {
19 navigationItems: [
20 {
21 id: 'overview',
22 label: this.$t('appNavigation.overview'),
23 route: '/',
24 icon: 'iconOverview',
25 },
26 {
27 id: 'health',
28 label: this.$t('appNavigation.health'),
29 icon: 'iconHealth',
30 children: [
31 {
32 id: 'event-logs',
33 label: this.$t('appNavigation.eventLogs'),
34 route: '/health/event-logs',
35 },
36 {
37 id: 'hardware-status',
38 label: this.$t('appNavigation.hardwareStatus'),
39 route: '/health/hardware-status',
40 },
41 {
42 id: 'sensors',
43 label: this.$t('appNavigation.sensors'),
44 route: '/health/sensors',
45 },
46 ],
47 },
48 {
49 id: 'control',
50 label: this.$t('appNavigation.control'),
51 icon: 'iconControl',
52 children: [
53 {
54 id: 'kvm',
55 label: this.$t('appNavigation.kvm'),
56 route: '/control/kvm',
57 },
58 {
59 id: 'manage-power-usage',
60 label: this.$t('appNavigation.managePowerUsage'),
61 route: '/control/manage-power-usage',
62 },
63 {
64 id: 'reboot-bmc',
65 label: this.$t('appNavigation.rebootBmc'),
66 route: '/control/reboot-bmc',
67 },
68 {
69 id: 'serial-over-lan',
70 label: this.$t('appNavigation.serialOverLan'),
71 route: '/control/serial-over-lan',
72 },
73 {
74 id: 'server-led',
75 label: this.$t('appNavigation.serverLed'),
76 route: '/control/server-led',
77 },
78 {
79 id: 'server-power-operations',
80 label: this.$t('appNavigation.serverPowerOperations'),
81 route: '/control/server-power-operations',
82 },
83 {
84 id: 'virtual-media',
85 label: this.$t('appNavigation.virtualMedia'),
86 route: '/control/virtual-media',
87 },
88 ],
89 },
90 {
91 id: 'configuration',
92 label: this.$t('appNavigation.configuration'),
93 icon: 'iconConfiguration',
94 children: [
95 {
96 id: 'date-time-settings',
97 label: this.$t('appNavigation.dateTimeSettings'),
98 route: '/configuration/date-time-settings',
99 },
100 {
101 id: 'firmware',
102 label: this.$t('appNavigation.firmware'),
103 route: '/configuration/firmware',
104 },
105 {
106 id: 'network-settings',
107 label: this.$t('appNavigation.networkSettings'),
108 route: '/configuration/network-settings',
109 },
110 {
111 id: 'snmp-settings',
112 label: this.$t('appNavigation.snmpSettings'),
113 route: '/snmp-settings',
114 },
115 ],
116 },
117 {
118 id: 'access-control',
119 label: this.$t('appNavigation.accessControl'),
120 icon: 'iconAccessControl',
121 children: [
122 {
123 id: 'local-user-management',
124 label: this.$t('appNavigation.localUserManagement'),
125 route: '/access-control/local-user-management',
126 },
127 {
128 id: 'ssl-certificates',
129 label: this.$t('appNavigation.sslCertificates'),
130 route: '/access-control/ssl-certificates',
131 },
132 ],
133 },
134 ],
135 };
136 },
137};
138
139export default AppNavigationMixin;