diff options
| author | Adam Mathes <adam@adammathes.com> | 2026-02-16 08:18:42 -0800 |
|---|---|---|
| committer | Adam Mathes <adam@adammathes.com> | 2026-02-16 08:18:42 -0800 |
| commit | de741fa9c5491787ab1e55dcb8b361a598fc945a (patch) | |
| tree | bd5d3cd3014193ba853f1f0a85a9dffddd194320 /frontend-vanilla/src/main.ts | |
| parent | 795d48fe18c38422fe63ffa900c26405e395ade2 (diff) | |
| download | neko-de741fa9c5491787ab1e55dcb8b361a598fc945a.tar.gz neko-de741fa9c5491787ab1e55dcb8b361a598fc945a.tar.bz2 neko-de741fa9c5491787ab1e55dcb8b361a598fc945a.zip | |
Implement settings toggle logic and refactor sidebar navigation
- Close NK-s8nytj: Settings page close behavior
- Update frontend-vanilla/src/main.ts to toggle settings/filter navigation
- Add tests in frontend-vanilla/src/main.test.ts for navigation logic
- Created NK-gxvegm for feed/tag settings behavior
- Created NK-f64ocp for routing logic refactor
Diffstat (limited to 'frontend-vanilla/src/main.ts')
| -rw-r--r-- | frontend-vanilla/src/main.ts | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/frontend-vanilla/src/main.ts b/frontend-vanilla/src/main.ts index b167a18..c22dd26 100644 --- a/frontend-vanilla/src/main.ts +++ b/frontend-vanilla/src/main.ts @@ -114,7 +114,12 @@ export function attachLayoutListeners() { if (navType === 'filter') { e.preventDefault(); const filter = link.getAttribute('data-value') as FilterType; - router.updateQuery({ filter }); + const currentRoute = router.getCurrentRoute(); + if (currentRoute.path === '/settings') { + router.navigate('/', { ...currentQuery, filter }); + } else { + router.updateQuery({ filter }); + } } else if (navType === 'tag') { e.preventDefault(); const tag = link.getAttribute('data-value')!; @@ -129,7 +134,12 @@ export function attachLayoutListeners() { } } else if (navType === 'settings') { e.preventDefault(); - router.navigate('/settings', currentQuery); + const currentRoute = router.getCurrentRoute(); + if (currentRoute.path === '/settings') { + router.navigate('/', currentQuery); + } else { + router.navigate('/settings', currentQuery); + } } // Auto-close sidebar on mobile after clicking a link |
