quintodrome/ui/src/layout
Deluan Quintão 2bb13e5ff1
feat(server): add ExtAuth logout URL configuration (#5074)
* feat(server): add ExtAuth logout URL configuration (#4467)

When external authentication (reverse proxy auth) is active, the Logout
button is hidden because authentication is managed externally. Many
external auth services (Authelia, Authentik, Keycloak) provide a logout
URL that can terminate the session.

Add `ExtAuth.LogoutURL` config option that, when set, shows the Logout
button in the UI and redirects the user to the external auth provider's
logout endpoint instead of the Navidrome login page.

* feat(server): add validation for ExtAuth logout URL configuration

* feat(server): refactor ExtAuth logout URL validation to a reusable function

* fix(configuration): rename URL validation functions for consistency

Signed-off-by: Deluan <deluan@navidrome.org>

* fix(configuration): rename URL validation functions for consistency

Signed-off-by: Deluan <deluan@navidrome.org>

---------

Signed-off-by: Deluan <deluan@navidrome.org>
2026-02-23 20:28:38 -05:00
..
ActivityPanel.jsx fix(scanner): store scan errors in the database and update UI error handling 2026-02-01 16:18:26 +01:00
ActivityPanel.test.jsx fix(scanner): store scan errors in the database and update UI error handling 2026-02-01 16:18:26 +01:00
AppBar.jsx fix(ui): update title attribute for info icon in AppBar component 2025-06-13 17:36:38 -04:00
AppBar.test.jsx feat(ui): add EnableNowPlaying configuration (default true) (#4219) 2025-06-13 00:06:08 -04:00
DynamicMenuIcon.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
DynamicMenuIcon.test.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
index.js Clear play queue on login and logout 2020-06-19 11:32:23 -04:00
Layout.jsx fix(ui): Search focus after clear (#4932) 2026-02-21 14:39:38 -05:00
Login.jsx Merge commit from fork 2026-02-03 12:22:57 -05:00
Logout.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
Menu.jsx feat: Multi-library support (#4181) 2025-07-18 18:41:12 -04:00
Notification.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
NowPlayingPanel.jsx fix(ui): keep the NowPlayingPanel badge in sync. 2025-06-29 11:35:10 -04:00
NowPlayingPanel.test.jsx fix(ui): keep the NowPlayingPanel badge in sync. 2025-06-29 11:35:10 -04:00
PersonalMenu.jsx fix(ui): minor icon inconsistencies and "no missing files" translation (#3837) 2025-03-16 19:39:19 -04:00
PlaylistsSubMenu.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
SubMenu.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
Themes.jsx build(ui): migrate from CRA/Jest to Vite/Vitest (#3311) 2024-09-28 11:54:36 -04:00
useInitialScanStatus.jsx fix(ui): improve scan status handling (again) (#4115) 2025-05-24 21:26:05 -04:00
UserMenu.jsx feat(server): add ExtAuth logout URL configuration (#5074) 2026-02-23 20:28:38 -05:00
useScanElapsedTime.jsx fix(ui): improve scan status handling (again) (#4115) 2025-05-24 21:26:05 -04:00
useScanElapsedTime.test.jsx fix(ui): improve scan status handling (again) (#4115) 2025-05-24 21:26:05 -04:00