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 VirtualMedia from '@/views/Control/VirtualMedia'; 27import i18n from '@/i18n'; 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 path: 'kvm', 70 name: 'kvm-console', 71 component: KvmConsole, 72 meta: { 73 title: i18n.t('appPageTitle.kvm') 74 } 75 } 76 ] 77 }, 78 { 79 path: '/', 80 meta: { 81 requiresAuth: true 82 }, 83 component: AppLayout, 84 children: [ 85 { 86 path: '', 87 name: 'overview', 88 component: Overview, 89 meta: { 90 title: i18n.t('appPageTitle.overview') 91 } 92 }, 93 { 94 path: '/profile-settings', 95 name: 'profile-settings', 96 component: ProfileSettings, 97 meta: { 98 title: i18n.t('appPageTitle.profileSettings') 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: Firmware, 161 meta: { 162 title: i18n.t('appPageTitle.firmware') 163 } 164 }, 165 { 166 path: '/control/kvm', 167 name: 'kvm', 168 component: Kvm, 169 meta: { 170 title: i18n.t('appPageTitle.kvm') 171 } 172 }, 173 { 174 path: '/control/manage-power-usage', 175 name: 'manage-power-usage', 176 component: ManagePowerUsage, 177 meta: { 178 title: i18n.t('appPageTitle.managePowerUsage') 179 } 180 }, 181 { 182 path: '/configuration/network-settings', 183 name: 'network-settings', 184 component: NetworkSettings, 185 meta: { 186 title: i18n.t('appPageTitle.networkSettings') 187 } 188 }, 189 { 190 path: '/control/reboot-bmc', 191 name: 'reboot-bmc', 192 component: RebootBmc, 193 meta: { 194 title: i18n.t('appPageTitle.rebootBmc') 195 } 196 }, 197 { 198 path: '/control/server-led', 199 name: 'server-led', 200 component: ServerLed, 201 meta: { 202 title: i18n.t('appPageTitle.serverLed') 203 } 204 }, 205 { 206 path: '/control/serial-over-lan', 207 name: 'serial-over-lan', 208 component: SerialOverLan, 209 meta: { 210 title: i18n.t('appPageTitle.serialOverLan') 211 } 212 }, 213 { 214 path: '/control/server-power-operations', 215 name: 'server-power-operations', 216 component: ServerPowerOperations, 217 meta: { 218 title: i18n.t('appPageTitle.serverPowerOperations') 219 } 220 }, 221 { 222 path: '/control/virtual-media', 223 name: 'virtual-media', 224 component: VirtualMedia, 225 meta: { 226 title: i18n.t('appPageTitle.virtualMedia') 227 } 228 }, 229 { 230 path: '*', 231 name: 'page-not-found', 232 component: PageNotFound, 233 meta: { 234 title: i18n.t('appPageTitle.pageNotFound') 235 } 236 } 237 ] 238 } 239]; 240 241export default routes; 242