feat: restructure settings menu + add automation/agents to topbar

TopBar:
- Add Automation and Agenten to user dropdown menu

Settings restructure:
- Stammdaten: Firmendaten, Adressen (CRUD), Konten (CRUD), Sonstige Daten
- Nutzerverwaltung: Benutzer, Rollen, Gruppen as tabs
- System: Menü, Theme, Plugins as tabs
- Reduce nav items from 15+ to 8
- Add end prop to all settings NavLinks
This commit is contained in:
Agent Zero
2026-07-24 22:35:35 +02:00
parent b4121082f7
commit 8b3873d676
7 changed files with 698 additions and 275 deletions
+4 -10
View File
@@ -15,21 +15,14 @@ export function SettingsPage() {
);
const hardcodedNavItems = [
{ to: '/settings/system', label: t('systemSettings.title'), icon: '\u2699\ufe0f' },
{ to: '/settings/roles', label: t('settings.roles'), icon: '\ud83d\udd11' },
{ to: '/settings/users', label: t('settings.users'), icon: '\ud83d\udc65' },
{ to: '/settings/groups', label: t('settings.groups', 'Gruppen'), icon: '\ud83d\udc65\ud83d\udcac' },
{ to: '/settings/plugins', label: t('settings.plugins'), icon: '\ud83e\udde9' },
{ to: '/settings/currencies', label: t('currencies.title'), icon: '\ud83d\udcb0' },
{ to: '/settings/taxes', label: t('taxes.title'), icon: '\ud83d\udccb' },
{ to: '/settings/sequences', label: t('sequences.title'), icon: '\ud83d\udd22' },
{ to: '/settings/stammdaten', label: 'Stammdaten', icon: '\ud83c\udfe2' },
{ to: '/settings/user-management', label: 'Nutzerverwaltung', icon: '\ud83d\udc65' },
{ to: '/settings/system', label: 'System', icon: '\u2699\ufe0f' },
{ to: '/settings/mail', label: t('mail.settings'), icon: '\ud83d\udce7' },
{ to: '/settings/ai', label: t('nav.aiAssistant'), icon: '\ud83e\udde0' },
{ to: '/settings/ai-proactive', label: 'Proaktive KI', icon: '\ud83e\udd16' },
{ to: '/settings/notifications', label: t('settings.notifications'), icon: '\ud83d\udd14' },
{ to: '/settings/theme', label: t('settings.theme', 'Theme'), icon: '\ud83c\udfa8' },
{ to: '/settings/mcp', label: t('settings.mcp', 'MCP'), icon: '\ud83d\udd27' },
{ to: '/settings/menu', label: t('settings.menuOrder', 'Menü'), icon: '\ud83d\udccb' },
];
const existingPaths = new Set(hardcodedNavItems.map(item => item.to));
@@ -55,6 +48,7 @@ export function SettingsPage() {
<NavLink
key={item.to}
to={item.to}
end
className={({ isActive }) =>
`flex items-center gap-3 px-3 py-2 rounded-lg text-sm font-medium transition-colors ${
isActive