fix session invalidation on invalid credentials (#2230)

This commit is contained in:
jeffvli
2026-07-18 23:51:52 -07:00
parent a378699b12
commit 61eb998de1
5 changed files with 80 additions and 17 deletions
@@ -92,7 +92,9 @@ function ServerSelector() {
const isNavidromeExpired =
server.type === ServerType.NAVIDROME && !server.ndCredential;
const isJellyfinExpired = server.type === ServerType.JELLYFIN && !server.credential;
const isSessionExpired = isNavidromeExpired || isJellyfinExpired;
const isSubsonicExpired = server.type === ServerType.SUBSONIC && !server.credential;
const isSessionExpired =
isNavidromeExpired || isJellyfinExpired || isSubsonicExpired;
const logo =
server.type === ServerType.NAVIDROME
@@ -113,7 +115,11 @@ function ServerSelector() {
return handleCredentialsModal(server);
}}
size="lg"
variant={server.id === currentServer?.id ? 'filled' : 'default'}
variant={
server.id === currentServer?.id && !isSessionExpired
? 'filled'
: 'default'
}
>
<Group className={styles.serverRow} justify="space-between">
<Group>
@@ -114,7 +114,9 @@ export const ServerSelectorItems = () => {
const isNavidromeExpired =
server.type === ServerType.NAVIDROME && !server.ndCredential;
const isJellyfinExpired = server.type === ServerType.JELLYFIN && !server.credential;
const isSessionExpired = isNavidromeExpired || isJellyfinExpired;
const isSubsonicExpired = server.type === ServerType.SUBSONIC && !server.credential;
const isSessionExpired =
isNavidromeExpired || isJellyfinExpired || isSubsonicExpired;
const logo =
server.type === ServerType.NAVIDROME
@@ -125,7 +127,7 @@ export const ServerSelectorItems = () => {
return (
<DropdownMenu.Item
isSelected={currentServer?.id === server.id}
isSelected={currentServer?.id === server.id && !isSessionExpired}
key={`server-${server.id}`}
leftSection={<img src={logo} style={{ height: '1rem', width: '1rem' }} />}
onClick={() => {