/** * GE-Enforce plugin routes. * * A top-level section (not under /settings) - the manifest editor + fleet * reports are a large operational surface, so they get their own full-width * shell with tabs. meta.plugin = 'geenforce' so the ADR-009 guard hides the * section when the plugin is disabled. Admin-only. */ export default [ { path: 'geenforce', component: () => import('./views/GeEnforceLayout.vue'), meta: { requiresAuth: true, requiresAdmin: true, plugin: 'geenforce' }, children: [ { path: '', redirect: '/geenforce/manifests' }, { path: 'manifests', name: 'geenforce-manifests', component: () => import('./views/ManifestEditor.vue'), meta: { requiresAuth: true, requiresAdmin: true, plugin: 'geenforce' } }, { path: 'reports', name: 'geenforce-reports', component: () => import('./views/EnforcementReports.vue'), meta: { requiresAuth: true, requiresAdmin: true, plugin: 'geenforce' } } ] }, { // Config lives in the Settings rail (contributed via get_settings_cards), // not inside the GE-Enforce section tabs. path: 'settings/geenforce', name: 'settings-geenforce', component: () => import('./views/GeEnforceSettings.vue'), meta: { requiresAuth: true, requiresAdmin: true, plugin: 'geenforce' } } ]