blob: f821ce1d6b6a4a94381a07be4a287008ca939f0a [file] [log] [blame]
Yoshie Muranaka816d9472020-09-03 11:19:28 -07001import AppLayout from '@/layouts/AppLayout.vue';
2import ChangePassword from '@/views/ChangePassword';
3import ConsoleLayout from '@/layouts/ConsoleLayout.vue';
Sandeepa Singhf67f7692021-07-19 18:04:18 +05304import DateTime from '@/views/Settings/DateTime';
Derick Montague828dda92021-06-28 15:52:22 -05005import EventLogs from '@/views/Logs/EventLogs';
Sandeepa Singh68cbbe92021-07-14 16:02:22 +05306import FactoryReset from '@/views/Operations/FactoryReset';
7import Firmware from '@/views/Operations/Firmware';
Sandeepa Singh7affc522021-07-06 16:29:10 +05308import Inventory from '@/views/HardwareStatus/Inventory';
Sandeepa Singh68cbbe92021-07-14 16:02:22 +05309import Kvm from '@/views/Operations/Kvm';
10import KvmConsole from '@/views/Operations/Kvm/KvmConsole';
Sandeepa Singhb4406162021-07-26 15:05:39 +053011import Sessions from '../views/SecurityAndAccess/Sessions';
12import Ldap from '@/views/SecurityAndAccess/Ldap';
13import UserManagement from '@/views/SecurityAndAccess/UserManagement';
Yoshie Muranaka816d9472020-09-03 11:19:28 -070014import Login from '@/views/Login';
15import LoginLayout from '@/layouts/LoginLayout';
Sandeepa Singhf67f7692021-07-19 18:04:18 +053016import Network from '@/views/Settings/Network';
Yoshie Muranaka816d9472020-09-03 11:19:28 -070017import Overview from '@/views/Overview';
18import PageNotFound from '@/views/PageNotFound';
Sandeepa Singh7affc522021-07-06 16:29:10 +053019import PostCodeLogs from '@/views/Logs/PostCodeLogs';
Sandeepa Singhf67f7692021-07-19 18:04:18 +053020import PowerRestorePolicy from '@/views/Settings/PowerRestorePolicy';
Yoshie Muranaka816d9472020-09-03 11:19:28 -070021import ProfileSettings from '@/views/ProfileSettings';
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053022import RebootBmc from '@/views/Operations/RebootBmc';
Sandeepa Singhb4406162021-07-26 15:05:39 +053023import Policies from '@/views/SecurityAndAccess/Policies';
Sandeepa Singh05887b52022-01-10 19:19:36 +053024import KeyClear from '@/views/Operations/KeyClear';
Sandeepa Singh7affc522021-07-06 16:29:10 +053025import Sensors from '@/views/HardwareStatus/Sensors';
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053026import SerialOverLan from '@/views/Operations/SerialOverLan';
27import SerialOverLanConsole from '@/views/Operations/SerialOverLan/SerialOverLanConsole';
28import ServerPowerOperations from '@/views/Operations/ServerPowerOperations';
Sandeepa Singhb4406162021-07-26 15:05:39 +053029import Certificates from '@/views/SecurityAndAccess/Certificates';
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053030import VirtualMedia from '@/views/Operations/VirtualMedia';
Sandeepa Singh6dba4be2021-07-28 15:25:14 +053031import Power from '@/views/ResourceManagement/Power';
Konstantin Aladyshev7c1cfe72023-05-16 09:03:25 +000032import SnmpAlerts from '@/views/Settings/SnmpAlerts';
Ed Tanous883a0d52024-03-23 14:56:34 -070033import i18n from '@/i18n';
Yoshie Muranaka816d9472020-09-03 11:19:28 -070034
Paul Fertser6b1a1572025-01-21 17:22:20 +000035import Dumps from '@/views/Logs/Dumps';
36
Damian Celicoaeb19812022-11-24 02:00:53 +010037const roles = {
38 administrator: 'Administrator',
39 operator: 'Operator',
40 readonly: 'ReadOnly',
41 noaccess: 'NoAccess',
42};
43
Yoshie Muranaka816d9472020-09-03 11:19:28 -070044const routes = [
45 {
46 path: '/login',
47 component: LoginLayout,
48 children: [
49 {
50 path: '',
51 name: 'login',
52 component: Login,
53 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -070054 title: i18n.global.t('appPageTitle.login'),
Derick Montague602e98a2020-10-21 16:20:00 -050055 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -070056 },
57 {
58 path: '/change-password',
59 name: 'change-password',
60 component: ChangePassword,
61 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -070062 title: i18n.global.t('appPageTitle.changePassword'),
Derick Montague602e98a2020-10-21 16:20:00 -050063 requiresAuth: true,
64 },
65 },
66 ],
Yoshie Muranaka816d9472020-09-03 11:19:28 -070067 },
68 {
69 path: '/console',
70 component: ConsoleLayout,
71 meta: {
Derick Montague602e98a2020-10-21 16:20:00 -050072 requiresAuth: true,
Yoshie Muranaka816d9472020-09-03 11:19:28 -070073 },
74 children: [
75 {
76 path: 'serial-over-lan-console',
77 name: 'serial-over-lan-console',
78 component: SerialOverLanConsole,
79 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -070080 title: i18n.global.t('appPageTitle.serialOverLan'),
Derick Montague602e98a2020-10-21 16:20:00 -050081 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -070082 },
83 {
84 path: 'kvm',
85 name: 'kvm-console',
86 component: KvmConsole,
87 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -070088 title: i18n.global.t('appPageTitle.kvm'),
Derick Montague602e98a2020-10-21 16:20:00 -050089 },
90 },
91 ],
Yoshie Muranaka816d9472020-09-03 11:19:28 -070092 },
93 {
94 path: '/',
95 meta: {
Derick Montague602e98a2020-10-21 16:20:00 -050096 requiresAuth: true,
Yoshie Muranaka816d9472020-09-03 11:19:28 -070097 },
98 component: AppLayout,
99 children: [
100 {
101 path: '',
102 name: 'overview',
103 component: Overview,
104 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700105 title: i18n.global.t('appPageTitle.overview'),
Derick Montague602e98a2020-10-21 16:20:00 -0500106 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700107 },
108 {
109 path: '/profile-settings',
110 name: 'profile-settings',
111 component: ProfileSettings,
112 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700113 title: i18n.global.t('appPageTitle.profileSettings'),
Derick Montague602e98a2020-10-21 16:20:00 -0500114 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700115 },
116 {
Derick Montague828dda92021-06-28 15:52:22 -0500117 path: '/logs/event-logs',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700118 name: 'event-logs',
119 component: EventLogs,
120 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700121 title: i18n.global.t('appPageTitle.eventLogs'),
Derick Montague602e98a2020-10-21 16:20:00 -0500122 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700123 },
124 {
Paul Fertser6b1a1572025-01-21 17:22:20 +0000125 path: '/logs/dumps',
126 name: 'dumps',
127 component: Dumps,
128 meta: {
129 title: i18n.global.t('appPageTitle.dumps'),
130 },
131 },
132 {
Sandeepa Singh7affc522021-07-06 16:29:10 +0530133 path: '/logs/post-code-logs',
Derick Montague512dfb72021-07-30 15:57:17 -0500134 name: 'post-code-logs',
Sandeepa Singh06d53862021-05-24 13:51:09 +0530135 component: PostCodeLogs,
136 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700137 title: i18n.global.t('appPageTitle.postCodeLogs'),
Sandeepa Singh06d53862021-05-24 13:51:09 +0530138 },
139 },
140 {
Sandeepa Singh7affc522021-07-06 16:29:10 +0530141 path: '/hardware-status/inventory',
142 name: 'inventory',
143 component: Inventory,
144 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700145 title: i18n.global.t('appPageTitle.inventory'),
Sandeepa Singh7affc522021-07-06 16:29:10 +0530146 },
147 },
148 {
149 path: '/hardware-status/sensors',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700150 name: 'sensors',
151 component: Sensors,
152 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700153 title: i18n.global.t('appPageTitle.sensors'),
Derick Montague602e98a2020-10-21 16:20:00 -0500154 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700155 },
156 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530157 path: '/security-and-access/sessions',
158 name: 'sessions',
159 component: Sessions,
Sukanya Pandey34efde22020-12-02 19:04:09 +0530160 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700161 title: i18n.global.t('appPageTitle.sessions'),
Sukanya Pandey34efde22020-12-02 19:04:09 +0530162 },
163 },
164 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530165 path: '/security-and-access/ldap',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700166 name: 'ldap',
167 component: Ldap,
168 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700169 title: i18n.global.t('appPageTitle.ldap'),
Derick Montague602e98a2020-10-21 16:20:00 -0500170 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700171 },
172 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530173 path: '/security-and-access/user-management',
kirankumarb076ad19aa2023-03-21 19:19:02 +0530174 name: 'user-management',
Sandeepa Singhb4406162021-07-26 15:05:39 +0530175 component: UserManagement,
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700176 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700177 title: i18n.global.t('appPageTitle.userManagement'),
Derick Montague602e98a2020-10-21 16:20:00 -0500178 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700179 },
180 {
Sandeepa Singhb4406162021-07-26 15:05:39 +0530181 path: '/security-and-access/policies',
182 name: 'policies',
183 component: Policies,
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700184 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700185 title: i18n.global.t('appPageTitle.policies'),
Sandeepa Singhb4406162021-07-26 15:05:39 +0530186 },
187 },
188 {
189 path: '/security-and-access/certificates',
190 name: 'certificates',
191 component: Certificates,
192 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700193 title: i18n.global.t('appPageTitle.certificates'),
Derick Montague602e98a2020-10-21 16:20:00 -0500194 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700195 },
196 {
Sandeepa Singhf67f7692021-07-19 18:04:18 +0530197 path: '/settings/date-time',
198 name: 'date-time',
199 component: DateTime,
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700200 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700201 title: i18n.global.t('appPageTitle.dateTime'),
Derick Montague602e98a2020-10-21 16:20:00 -0500202 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700203 },
204 {
Konstantin Aladyshev7c1cfe72023-05-16 09:03:25 +0000205 path: '/settings/snmp-alerts',
206 name: 'snmp-alerts',
207 component: SnmpAlerts,
208 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700209 title: i18n.global.t('appPageTitle.snmpAlerts'),
Konstantin Aladyshev7c1cfe72023-05-16 09:03:25 +0000210 },
211 },
212 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530213 path: '/operations/factory-reset',
Derick Montagueda9f0a62021-02-14 19:21:44 -0600214 name: 'factory-reset',
215 component: FactoryReset,
216 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700217 title: i18n.global.t('appPageTitle.factoryReset'),
Derick Montagueda9f0a62021-02-14 19:21:44 -0600218 },
219 },
220 {
Sandeepa Singh05887b52022-01-10 19:19:36 +0530221 path: '/operations/key-clear',
222 name: 'key-clear',
223 component: KeyClear,
224 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700225 title: i18n.global.t('appPageTitle.keyClear'),
Sandeepa Singh05887b52022-01-10 19:19:36 +0530226 },
227 },
228 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530229 path: '/operations/kvm',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700230 name: 'kvm',
231 component: Kvm,
232 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700233 title: i18n.global.t('appPageTitle.kvm'),
Derick Montague602e98a2020-10-21 16:20:00 -0500234 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700235 },
236 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530237 path: '/operations/firmware',
238 name: 'firmware',
239 component: Firmware,
240 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700241 title: i18n.global.t('appPageTitle.firmware'),
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530242 },
243 },
244 {
Sandeepa Singhf67f7692021-07-19 18:04:18 +0530245 path: '/settings/network',
246 name: 'network',
247 component: Network,
248 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700249 title: i18n.global.t('appPageTitle.network'),
Sandeepa Singhf67f7692021-07-19 18:04:18 +0530250 },
251 },
252 {
253 path: '/settings/power-restore-policy',
Sukanya Pandeybe6858c2020-12-16 20:08:01 +0530254 name: 'power-restore-policy',
255 component: PowerRestorePolicy,
256 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700257 title: i18n.global.t('appPageTitle.powerRestorePolicy'),
Sukanya Pandeybe6858c2020-12-16 20:08:01 +0530258 },
259 },
260 {
Sandeepa Singh6dba4be2021-07-28 15:25:14 +0530261 path: '/resource-management/power',
262 name: 'power',
263 component: Power,
264 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700265 title: i18n.global.t('appPageTitle.power'),
Sandeepa Singh6dba4be2021-07-28 15:25:14 +0530266 },
267 },
268 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530269 path: '/operations/reboot-bmc',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700270 name: 'reboot-bmc',
271 component: RebootBmc,
272 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700273 title: i18n.global.t('appPageTitle.rebootBmc'),
Derick Montague602e98a2020-10-21 16:20:00 -0500274 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700275 },
276 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530277 path: '/operations/serial-over-lan',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700278 name: 'serial-over-lan',
279 component: SerialOverLan,
280 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700281 title: i18n.global.t('appPageTitle.serialOverLan'),
Damian Celicoaeb19812022-11-24 02:00:53 +0100282 exclusiveToRoles: [roles.administrator],
Derick Montague602e98a2020-10-21 16:20:00 -0500283 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700284 },
285 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530286 path: '/operations/server-power-operations',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700287 name: 'server-power-operations',
288 component: ServerPowerOperations,
289 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700290 title: i18n.global.t('appPageTitle.serverPowerOperations'),
Derick Montague602e98a2020-10-21 16:20:00 -0500291 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700292 },
293 {
Sandeepa Singh68cbbe92021-07-14 16:02:22 +0530294 path: '/operations/virtual-media',
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700295 name: 'virtual-media',
296 component: VirtualMedia,
297 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700298 title: i18n.global.t('appPageTitle.virtualMedia'),
Damian Celicoaeb19812022-11-24 02:00:53 +0100299 exclusiveToRoles: [roles.administrator],
Derick Montague602e98a2020-10-21 16:20:00 -0500300 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700301 },
302 {
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700303 path: '*',
304 name: 'page-not-found',
305 component: PageNotFound,
306 meta: {
Ed Tanous883a0d52024-03-23 14:56:34 -0700307 title: i18n.global.t('appPageTitle.pageNotFound'),
Derick Montague602e98a2020-10-21 16:20:00 -0500308 },
309 },
310 ],
311 },
Yoshie Muranaka816d9472020-09-03 11:19:28 -0700312];
313
Paul Fertser2b335262024-04-11 10:51:41 +0000314export { routes as default, roles };