xref: /openbmc/webui-vue/src/env/router/ibm.js (revision 22d4d527)
1import AppLayout from '@/layouts/AppLayout.vue';
2import ChangePassword from '@/views/ChangePassword';
3import ConsoleLayout from '@/layouts/ConsoleLayout.vue';
4import DateTimeSettings from '@/views/Configuration/DateTimeSettings';
5import EventLogs from '@/views/Health/EventLogs';
6import HardwareStatus from '@/views/Health/HardwareStatus';
7import Ldap from '@/views/AccessControl/Ldap';
8import LocalUserManagement from '@/views/AccessControl/LocalUserManagement';
9import Login from '@/views/Login';
10import LoginLayout from '@/layouts/LoginLayout';
11import ManagePowerUsage from '@/views/Control/ManagePowerUsage';
12import NetworkSettings from '@/views/Configuration/NetworkSettings';
13import Overview from '@/views/Overview';
14import PageNotFound from '@/views/PageNotFound';
15import ProfileSettings from '@/views/ProfileSettings';
16import RebootBmc from '@/views/Control/RebootBmc';
17import Sensors from '@/views/Health/Sensors';
18import SerialOverLan from '@/views/Control/SerialOverLan';
19import SerialOverLanConsole from '@/views/Control/SerialOverLan/SerialOverLanConsole';
20import ServerLed from '@/views/Control/ServerLed';
21import ServerPowerOperations from '@/views/Control/ServerPowerOperations';
22import SslCertificates from '@/views/AccessControl/SslCertificates';
23import i18n from '@/i18n';
24
25// Custom components
26import FirmwareSingleImage from '../components/FirmwareSingleImage';
27import Dumps from '../components/Dumps';
28
29const routes = [
30  {
31    path: '/login',
32    component: LoginLayout,
33    children: [
34      {
35        path: '',
36        name: 'login',
37        component: Login,
38        meta: {
39          title: i18n.t('appPageTitle.login'),
40        },
41      },
42      {
43        path: '/change-password',
44        name: 'change-password',
45        component: ChangePassword,
46        meta: {
47          title: i18n.t('appPageTitle.changePassword'),
48          requiresAuth: true,
49        },
50      },
51    ],
52  },
53  {
54    path: '/console',
55    component: ConsoleLayout,
56    meta: {
57      requiresAuth: true,
58    },
59    children: [
60      {
61        path: 'serial-over-lan-console',
62        name: 'serial-over-lan-console',
63        component: SerialOverLanConsole,
64        meta: {
65          title: i18n.t('appPageTitle.serialOverLan'),
66        },
67      },
68    ],
69  },
70  {
71    path: '/',
72    meta: {
73      requiresAuth: true,
74    },
75    component: AppLayout,
76    children: [
77      {
78        path: '',
79        name: 'overview',
80        component: Overview,
81        meta: {
82          title: i18n.t('appPageTitle.overview'),
83        },
84      },
85      {
86        path: '/profile-settings',
87        name: 'profile-settings',
88        component: ProfileSettings,
89        meta: {
90          title: i18n.t('appPageTitle.profileSettings'),
91        },
92      },
93      {
94        path: '/health/dumps',
95        name: 'dumps',
96        component: Dumps,
97        meta: {
98          title: i18n.t('appPageTitle.dumps'),
99        },
100      },
101      {
102        path: '/health/event-logs',
103        name: 'event-logs',
104        component: EventLogs,
105        meta: {
106          title: i18n.t('appPageTitle.eventLogs'),
107        },
108      },
109      {
110        path: '/health/hardware-status',
111        name: 'hardware-status',
112        component: HardwareStatus,
113        meta: {
114          title: i18n.t('appPageTitle.hardwareStatus'),
115        },
116      },
117      {
118        path: '/health/sensors',
119        name: 'sensors',
120        component: Sensors,
121        meta: {
122          title: i18n.t('appPageTitle.sensors'),
123        },
124      },
125      {
126        path: '/access-control/ldap',
127        name: 'ldap',
128        component: Ldap,
129        meta: {
130          title: i18n.t('appPageTitle.ldap'),
131        },
132      },
133      {
134        path: '/access-control/local-user-management',
135        name: 'local-users',
136        component: LocalUserManagement,
137        meta: {
138          title: i18n.t('appPageTitle.localUserManagement'),
139        },
140      },
141      {
142        path: '/access-control/ssl-certificates',
143        name: 'ssl-certificates',
144        component: SslCertificates,
145        meta: {
146          title: i18n.t('appPageTitle.sslCertificates'),
147        },
148      },
149      {
150        path: '/configuration/date-time-settings',
151        name: 'date-time-settings',
152        component: DateTimeSettings,
153        meta: {
154          title: i18n.t('appPageTitle.dateTimeSettings'),
155        },
156      },
157      {
158        path: '/configuration/firmware',
159        name: 'firmware',
160        component: FirmwareSingleImage,
161        meta: {
162          title: i18n.t('appPageTitle.firmware'),
163        },
164      },
165      {
166        path: '/control/manage-power-usage',
167        name: 'manage-power-usage',
168        component: ManagePowerUsage,
169        meta: {
170          title: i18n.t('appPageTitle.managePowerUsage'),
171        },
172      },
173      {
174        path: '/configuration/network-settings',
175        name: 'network-settings',
176        component: NetworkSettings,
177        meta: {
178          title: i18n.t('appPageTitle.networkSettings'),
179        },
180      },
181      {
182        path: '/control/reboot-bmc',
183        name: 'reboot-bmc',
184        component: RebootBmc,
185        meta: {
186          title: i18n.t('appPageTitle.rebootBmc'),
187        },
188      },
189      {
190        path: '/control/server-led',
191        name: 'server-led',
192        component: ServerLed,
193        meta: {
194          title: i18n.t('appPageTitle.serverLed'),
195        },
196      },
197      {
198        path: '/control/serial-over-lan',
199        name: 'serial-over-lan',
200        component: SerialOverLan,
201        meta: {
202          title: i18n.t('appPageTitle.serialOverLan'),
203        },
204      },
205      {
206        path: '/control/server-power-operations',
207        name: 'server-power-operations',
208        component: ServerPowerOperations,
209        meta: {
210          title: i18n.t('appPageTitle.serverPowerOperations'),
211        },
212      },
213      {
214        path: '*',
215        name: 'page-not-found',
216        component: PageNotFound,
217        meta: {
218          title: i18n.t('appPageTitle.pageNotFound'),
219        },
220      },
221    ],
222  },
223];
224
225export default routes;
226