Add additional undefined check for custom filters

This commit is contained in:
jeffvli 2023-05-08 03:33:38 -07:00
parent 6d5e10a31c
commit a9ca3f9083
3 changed files with 12 additions and 12 deletions

View file

@ -386,16 +386,16 @@ export const AlbumListHeaderFilters = ({
const isFilterApplied = useMemo(() => {
const isNavidromeFilterApplied =
server?.type === ServerType.NAVIDROME &&
filter?._custom.navidrome &&
Object.values(filter._custom.navidrome).some((value) => value !== undefined);
filter?._custom?.navidrome &&
Object.values(filter?._custom?.navidrome).some((value) => value !== undefined);
const isJellyfinFilterApplied =
server?.type === ServerType.JELLYFIN &&
filter?._custom.jellyfin &&
Object.values(filter._custom.jellyfin).some((value) => value !== undefined);
filter?._custom?.jellyfin &&
Object.values(filter?._custom?.jellyfin).some((value) => value !== undefined);
return isNavidromeFilterApplied || isJellyfinFilterApplied;
}, [filter._custom.jellyfin, filter._custom.navidrome, server?.type]);
}, [filter?._custom?.jellyfin, filter?._custom?.navidrome, server?.type]);
return (
<Flex justify="space-between">

View file

@ -302,17 +302,17 @@ export const SongListHeaderFilters = ({
const isNavidromeFilterApplied =
server?.type === ServerType.NAVIDROME &&
filter._custom?.navidrome &&
Object.values(filter._custom?.navidrome).some((value) => value !== undefined);
Object.values(filter?._custom?.navidrome).some((value) => value !== undefined);
const isJellyfinFilterApplied =
server?.type === ServerType.JELLYFIN &&
filter._custom?.jellyfin &&
Object.values(filter._custom?.jellyfin)
filter?._custom?.jellyfin &&
Object.values(filter?._custom?.jellyfin)
.filter((value) => value !== 'Audio') // Don't account for includeItemTypes: Audio
.some((value) => value !== undefined);
return isNavidromeFilterApplied || isJellyfinFilterApplied;
}, [filter._custom?.jellyfin, filter._custom?.navidrome, server?.type]);
}, [filter?._custom?.jellyfin, filter?._custom?.navidrome, server?.type]);
return (
<Flex justify="space-between">

View file

@ -87,13 +87,13 @@ export const useListStore = create<ListSlice>()(
...state.item.song.filter,
...state.detail[args.key]?.filter,
_custom: {
...state.detail[args.key]?.filter._custom,
...state.detail[args.key]?.filter?._custom,
jellyfin: {
...state.detail[args.key]?.filter._custom.jellyfin,
...state.detail[args.key]?.filter?._custom?.jellyfin,
includeItemTypes: 'Audio',
},
navidrome: {
...state.detail[args.key]?.filter._custom.navidrome,
...state.detail[args.key]?.filter?._custom?.navidrome,
},
},
};