mirror of
https://github.com/jeffvli/feishin.git
synced 2026-06-15 07:54:18 +02:00
properly handle disableArtistFilter and disableGenreFilter props for all list filters
This commit is contained in:
@@ -3,7 +3,6 @@ import { useCallback, useMemo } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
import { getItemImageUrl } from '/@/renderer/components/item-image/item-image';
|
||||
import { useListContext } from '/@/renderer/context/list-context';
|
||||
import { useAlbumListFilters } from '/@/renderer/features/albums/hooks/use-album-list-filters';
|
||||
import { artistsQueries } from '/@/renderer/features/artists/api/artists-api';
|
||||
import { genresQueries } from '/@/renderer/features/genres/api/genres-api';
|
||||
@@ -32,16 +31,16 @@ import {
|
||||
|
||||
interface JellyfinAlbumFiltersProps {
|
||||
disableArtistFilter?: boolean;
|
||||
disableGenreFilter?: boolean;
|
||||
}
|
||||
|
||||
export const JellyfinAlbumFilters = ({ disableArtistFilter }: JellyfinAlbumFiltersProps) => {
|
||||
export const JellyfinAlbumFilters = ({
|
||||
disableArtistFilter,
|
||||
disableGenreFilter,
|
||||
}: JellyfinAlbumFiltersProps) => {
|
||||
const { t } = useTranslation();
|
||||
const serverId = useCurrentServerId();
|
||||
|
||||
const { customFilters } = useListContext();
|
||||
|
||||
const isGenrePage = customFilters?.genreIds !== undefined;
|
||||
|
||||
const {
|
||||
query,
|
||||
setAlbumArtist,
|
||||
@@ -298,7 +297,7 @@ export const JellyfinAlbumFilters = ({ disableArtistFilter }: JellyfinAlbumFilte
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
{!isGenrePage && (
|
||||
{!disableGenreFilter && (
|
||||
<>
|
||||
<Divider my="md" />
|
||||
<VirtualMultiSelect
|
||||
|
||||
@@ -3,7 +3,6 @@ import { ChangeEvent, useCallback, useMemo } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
import { getItemImageUrl } from '/@/renderer/components/item-image/item-image';
|
||||
import { useListContext } from '/@/renderer/context/list-context';
|
||||
import { useAlbumListFilters } from '/@/renderer/features/albums/hooks/use-album-list-filters';
|
||||
import { artistsQueries } from '/@/renderer/features/artists/api/artists-api';
|
||||
import { useGenreList } from '/@/renderer/features/genres/api/genres-api';
|
||||
@@ -27,20 +26,21 @@ import { AlbumArtistListSort, LibraryItem, SortOrder } from '/@/shared/types/dom
|
||||
|
||||
interface NavidromeAlbumFiltersProps {
|
||||
disableArtistFilter?: boolean;
|
||||
disableGenreFilter?: boolean;
|
||||
}
|
||||
|
||||
export const NavidromeAlbumFilters = ({ disableArtistFilter }: NavidromeAlbumFiltersProps) => {
|
||||
export const NavidromeAlbumFilters = ({
|
||||
disableArtistFilter,
|
||||
disableGenreFilter,
|
||||
}: NavidromeAlbumFiltersProps) => {
|
||||
const { t } = useTranslation();
|
||||
const server = useCurrentServer();
|
||||
const serverId = server.id;
|
||||
|
||||
const { customFilters } = useListContext();
|
||||
const artistSelectMode = useAppStore((state) => state.artistSelectMode);
|
||||
const genreSelectMode = useAppStore((state) => state.genreSelectMode);
|
||||
const { setArtistSelectMode, setGenreSelectMode } = useAppStoreActions();
|
||||
|
||||
const isGenrePage = customFilters?.genreIds !== undefined;
|
||||
|
||||
const {
|
||||
query,
|
||||
setAlbumArtist,
|
||||
@@ -327,7 +327,7 @@ export const NavidromeAlbumFilters = ({ disableArtistFilter }: NavidromeAlbumFil
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
{!isGenrePage && (
|
||||
{!disableGenreFilter && (
|
||||
<>
|
||||
<Divider my="md" />
|
||||
<VirtualMultiSelect
|
||||
|
||||
@@ -3,7 +3,6 @@ import { ChangeEvent, useCallback, useMemo } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
import { getItemImageUrl } from '/@/renderer/components/item-image/item-image';
|
||||
import { useListContext } from '/@/renderer/context/list-context';
|
||||
import { useAlbumListFilters } from '/@/renderer/features/albums/hooks/use-album-list-filters';
|
||||
import { artistsQueries } from '/@/renderer/features/artists/api/artists-api';
|
||||
import { useGenreList } from '/@/renderer/features/genres/api/genres-api';
|
||||
@@ -26,17 +25,17 @@ import { AlbumArtistListSort, LibraryItem, SortOrder } from '/@/shared/types/dom
|
||||
|
||||
interface SubsonicAlbumFiltersProps {
|
||||
disableArtistFilter?: boolean;
|
||||
disableGenreFilter?: boolean;
|
||||
}
|
||||
|
||||
export const SubsonicAlbumFilters = ({ disableArtistFilter }: SubsonicAlbumFiltersProps) => {
|
||||
export const SubsonicAlbumFilters = ({
|
||||
disableArtistFilter,
|
||||
disableGenreFilter,
|
||||
}: SubsonicAlbumFiltersProps) => {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const serverId = useCurrentServerId();
|
||||
|
||||
const { customFilters } = useListContext();
|
||||
|
||||
const isGenrePage = customFilters?.genreIds !== undefined;
|
||||
|
||||
const { query, setAlbumArtist, setFavorite, setGenreId, setMaxYear, setMinYear } =
|
||||
useAlbumListFilters();
|
||||
|
||||
@@ -262,7 +261,7 @@ export const SubsonicAlbumFilters = ({ disableArtistFilter }: SubsonicAlbumFilte
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
{!isGenrePage && (
|
||||
{!disableGenreFilter && (
|
||||
<>
|
||||
<Divider my="md" />
|
||||
<VirtualMultiSelect
|
||||
|
||||
Reference in New Issue
Block a user