mirror of
https://github.com/kilyabin/psysonic.git
synced 2026-07-22 14:35:41 +00:00
feat(favorites): virtualize songs tracklist + memoize rows (#805)
* feat(favorites): virtualize songs tracklist + memoize rows 10k+ starred songs no longer mount every row into the DOM. Same fix shape as playlist virtualization: @tanstack/react-virtual windowing, memoized FavoriteSongRow with stable callback bundle, scrollMargin ResizeObserver anchored to .content-body. visibleTracks memoized once per visibleSongs ref to avoid O(n) songToTrack on every click. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore(favorites): review follow-ups for virtualization PR #805 Add maintainer comments for scrollMargin layout coupling and bulk-bar useLayoutEffect dep. Record PR #805 in CHANGELOG and settings credits. --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -218,6 +218,7 @@ const CONTRIBUTOR_ENTRIES = [
|
||||
contributions: [
|
||||
'Player: cap persisted queue to ±250-track window — fixes QuotaExceededError on large playlists (PR #756)',
|
||||
'Playlists: virtualized tracklist for large playlists — no UI freeze on 10k+ tracks (PR #755)',
|
||||
'Favorites: virtualized songs tracklist for large starred collections (PR #805)',
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user