diff options
| author | (quasar) nebula <qznebula@protonmail.com> | 2026-05-11 19:15:17 -0300 |
|---|---|---|
| committer | (quasar) nebula <qznebula@protonmail.com> | 2026-05-11 19:15:17 -0300 |
| commit | bbddc3020b0a9e2353d27fca15ec922a97198c13 (patch) | |
| tree | edb1b4c316c7d4b630cf06c4ecec0b1733fb915f /src/content/dependencies/generateAlbumSidebar.js | |
| parent | 7ec55d7fe6e3d247d525cb1d52b44c153030e32b (diff) | |
content, css, data: Album.style "meta"
Diffstat (limited to 'src/content/dependencies/generateAlbumSidebar.js')
| -rw-r--r-- | src/content/dependencies/generateAlbumSidebar.js | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/src/content/dependencies/generateAlbumSidebar.js b/src/content/dependencies/generateAlbumSidebar.js index 7659f361..cdd171a1 100644 --- a/src/content/dependencies/generateAlbumSidebar.js +++ b/src/content/dependencies/generateAlbumSidebar.js @@ -39,20 +39,39 @@ export default { Array.from(albumTrackMap.keys()), {getDate: album => albumTrackMap.get(album).date}); + const metaLike = + (album.style === 'meta' + ? album => album.style === 'meta' + : album => album.style !== 'meta'); + + const metaUnlike = + (album.style === 'meta' + ? album => album.style !== 'meta' + : album => album.style === 'meta'); + + const metaReleaseAlbums = + allReleaseAlbums.filter(metaUnlike); + + const regularReleaseAlbums = + allReleaseAlbums.filter(metaLike); + const currentReleaseIndex = - allReleaseAlbums.indexOf(track.album); + regularReleaseAlbums.indexOf(track.album); const earlierReleaseAlbums = - allReleaseAlbums.slice(0, currentReleaseIndex); + regularReleaseAlbums.slice(0, currentReleaseIndex); const laterReleaseAlbums = - allReleaseAlbums.slice(currentReleaseIndex + 1); + regularReleaseAlbums.slice(currentReleaseIndex + 1); query.earlierReleaseTracks = earlierReleaseAlbums.map(album => albumTrackMap.get(album)); query.laterReleaseTracks = laterReleaseAlbums.map(album => albumTrackMap.get(album)); + + query.metaReleaseTracks = + metaReleaseAlbums.map(album => albumTrackMap.get(album)); } return query; @@ -97,6 +116,13 @@ export default { .map(track => relation('generateTrackReleaseBox', track)) : null), + + metaReleaseBoxes: + (track + ? query.metaReleaseTracks + .map(track => + relation('generateTrackReleaseBox', track)) + : null), }), data: (query, _sprawl, album, track) => ({ @@ -185,6 +211,10 @@ export default { relations.laterTrackReleaseBoxes, data.isTrackPage && + relations.metaReleaseBoxes + .map(box => box.slot('meta', true)), + + data.isTrackPage && groupBoxes, ], }); |