feat(library): local lossless index, filters, and conserve dedicated page (#871)

* feat(library): local lossless index, filters, and conserve dedicated page

Add SQLite-backed lossless album browse and advanced-search filtering,
wire All Albums and artist/album lossless drill-down mode, and hide the
standalone /lossless-albums nav entry from sidebar visibility settings
(conserved route, default off).

* docs(release): note lossless local index in CHANGELOG and credits (PR #871)
This commit is contained in:
cucadmuh
2026-05-27 00:02:46 +03:00
committed by GitHub
parent 418b25914a
commit a8cfff0b62
65 changed files with 1615 additions and 138 deletions
+5 -2
View File
@@ -9,15 +9,18 @@ import { COVER_DENSE_GRID_MIN_CELL_CSS_PX } from '../cover/layoutSizes';
interface Props {
artist: SubsonicArtist;
/** Appended to `/artist/:id`, e.g. `lossless=1`. */
linkQuery?: string;
}
export default function ArtistCardLocal({ artist }: Props) {
export default function ArtistCardLocal({ artist, linkQuery }: Props) {
const { t } = useTranslation();
const navigate = useNavigate();
const coverId = coverArtIdFromArtist(artist);
const href = linkQuery ? `/artist/${artist.id}?${linkQuery}` : `/artist/${artist.id}`;
return (
<div className="artist-card" onClick={() => navigate(`/artist/${artist.id}`)}>
<div className="artist-card" onClick={() => navigate(href)}>
<div className="artist-card-avatar">
{artist.coverArt || artist.id ? (
<CoverArtImage