Reorganize admin configuration sections
Magent CI/CD / verify (push) Successful in 10m37s
Magent CI/CD / deploy-prod (push) Skipped
Magent CI/CD / deploy-beta (push) Successful in 16s

This commit is contained in:
2026-08-31 16:32:24 +12:00
parent 3402e53c31
commit 0e04d219a0
3 changed files with 355 additions and 145 deletions
+21 -16
View File
@@ -4,18 +4,17 @@ import { usePathname } from 'next/navigation'
const NAV_GROUPS = [
{
title: 'Operations',
title: 'Configuration',
items: [
{ href: '/admin', label: 'Overview' },
{ href: '/admin/diagnostics', label: 'System health' },
{ href: '/new-requests', label: 'New requests' },
{ href: '/admin/issues', label: 'Issue tracking' },
{ href: '/admin', label: 'Config overview' },
{ href: '/admin/general', label: 'Application & proxy' },
{ href: '/admin/site', label: 'Site & login' },
{ href: '/admin/notifications', label: 'Notifications' },
],
},
{
title: 'Services',
title: 'Media Services',
items: [
{ href: '/admin/general', label: 'General' },
{ href: '/admin/seerr', label: 'Seerr' },
{ href: '/admin/jellyfin', label: 'Jellyfin' },
{ href: '/admin/sonarr', label: 'Sonarr' },
@@ -25,24 +24,28 @@ const NAV_GROUPS = [
],
},
{
title: 'Requests',
title: 'Request Pipeline',
items: [
{ href: '/admin/requests', label: 'Request sync' },
{ href: '/admin/requests-all', label: 'All requests' },
{ href: '/admin/cache', label: 'Cache Control' },
{ href: '/admin/requests', label: 'Sync & retention' },
{ href: '/admin/cache', label: 'Request cache' },
{ href: '/admin/artwork', label: 'Artwork cache' },
{ href: '/admin/requests-all', label: 'All requests' },
],
},
{
title: 'Admin',
title: 'Users & Access',
items: [
{ href: '/admin/notifications', label: 'Notifications' },
{ href: '/admin/system', label: 'How it works' },
{ href: '/admin/site', label: 'Site' },
{ href: '/users', label: 'Users' },
{ href: '/admin/invites', label: 'Invite management' },
],
},
{
title: 'System',
items: [
{ href: '/admin/diagnostics', label: 'System health' },
{ href: '/admin/logs', label: 'Activity log' },
{ href: '/admin/maintenance', label: 'Maintenance' },
{ href: '/admin/system', label: 'How it works' },
],
},
]
@@ -59,7 +62,9 @@ export default function AdminSidebar() {
{group.items.map((item) => {
const isActive =
pathname === item.href ||
(item.href !== '/' && pathname.startsWith(item.href))
(item.href !== '/' &&
item.href !== '/admin' &&
pathname.startsWith(`${item.href}/`))
return (
<a key={item.href} href={item.href} className={isActive ? 'is-active' : ''}>
{item.label}