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