refactor(todo): move Feedback, Themes, Spiral to profile dropdown

Move secondary navigation items (Themes, Spiral) from the main pill
nav bar into the user profile dropdown menu. Feedback and Settings
were already there. This declutters the main nav to just core views:
Liste, Kanban, Filter, Tags.

Add themesHref and spiralHref optional props to PillNavigation
component so any app can show these in the user dropdown.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-03-23 11:10:41 +01:00
parent ea7962501d
commit 7691f66cbb
2 changed files with 34 additions and 1 deletions

View file

@ -179,7 +179,6 @@
onClick: handleFilterToggle,
active: isFilterStripVisible,
},
{ href: '/spiral', label: 'Spiral', icon: 'spiral' },
{ href: '/tags', label: 'Tags', icon: 'tag' },
]);
@ -325,6 +324,8 @@
manaHref="/mana"
profileHref="/profile"
allAppsHref="/apps"
themesHref="/themes"
spiralHref="/spiral"
onOpenInPanel={handleOpenInPanel}
ariaLabel="Hauptnavigation"
/>

View file

@ -278,6 +278,10 @@
ariaLabel?: string;
/** Feedback page href (shown in user dropdown). Set to empty string to hide. */
feedbackHref?: string;
/** Themes page href (shown in user dropdown). Set to empty string to hide. */
themesHref?: string;
/** Spiral page href (shown in user dropdown). Set to empty string to hide. */
spiralHref?: string;
}
let {
@ -321,6 +325,8 @@
onOpenInPanel,
ariaLabel,
feedbackHref = '/feedback',
themesHref,
spiralHref,
}: Props = $props();
// Type guards for elements
@ -841,6 +847,32 @@
},
]
: []),
...(themesHref
? [
{
id: 'themes',
label: 'Themes',
icon: 'palette',
onClick: () => {
window.location.href = themesHref;
},
active: currentPath === themesHref,
},
]
: []),
...(spiralHref
? [
{
id: 'spiral',
label: 'Spiral',
icon: 'sparkles',
onClick: () => {
window.location.href = spiralHref;
},
active: currentPath === spiralHref,
},
]
: []),
...(showLanguageSwitcher && languageItems.length > 0
? [
{ id: 'language-divider', label: '', divider: true },