blob: 014edd6fc035a5d0bb83888e2de0f29a9db2a156 [file] [log] [blame]
Yoshie Muranaka0214fed2020-09-03 13:25:50 -07001import 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: 'manage-power-usage',
55 label: this.$t('appNavigation.managePowerUsage'),
56 route: '/control/manage-power-usage'
57 },
58 {
59 id: 'reboot-bmc',
60 label: this.$t('appNavigation.rebootBmc'),
61 route: '/control/reboot-bmc'
62 },
63 {
64 id: 'serial-over-lan',
65 label: this.$t('appNavigation.serialOverLan'),
66 route: '/control/serial-over-lan'
67 },
68 {
69 id: 'server-led',
70 label: this.$t('appNavigation.serverLed'),
71 route: '/control/server-led'
72 },
73 {
74 id: 'server-power-operations',
75 label: this.$t('appNavigation.serverPowerOperations'),
76 route: '/control/server-power-operations'
77 },
78 {
79 id: 'virtual-media',
80 label: this.$t('appNavigation.virtualMedia'),
81 route: '/control/virtual-media'
82 }
83 ]
84 },
85 {
86 id: 'configuration',
87 label: this.$t('appNavigation.configuration'),
88 icon: 'iconConfiguration',
89 children: [
90 {
91 id: 'date-time-settings',
92 label: this.$t('appNavigation.dateTimeSettings'),
93 route: '/configuration/date-time-settings'
94 },
95 {
96 id: 'firmware',
97 label: this.$t('appNavigation.firmware'),
98 route: '/configuration/firmware'
99 },
100 {
101 id: 'network-settings',
102 label: this.$t('appNavigation.networkSettings'),
103 route: '/configuration/network-settings'
104 },
105 {
106 id: 'snmp-settings',
107 label: this.$t('appNavigation.snmpSettings'),
108 route: ''
109 }
110 ]
111 },
112 {
113 id: 'access-control',
114 label: this.$t('appNavigation.configuration'),
115 icon: 'iconAccessControl',
116 children: [
117 {
118 id: 'ldap',
119 label: this.$t('appNavigation.ldap'),
120 route: '/access-control/ldap'
121 },
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;