diff options
| author | (quasar) nebula <qznebula@protonmail.com> | 2025-10-23 18:17:33 -0300 |
|---|---|---|
| committer | (quasar) nebula <qznebula@protonmail.com> | 2025-10-23 18:19:17 -0300 |
| commit | 2d8622f8b31df0367ded52a45d7362abfe6d9a7c (patch) | |
| tree | 0c66e60a8b86729d32daf025e5ac13a4be235a2f /src/content/dependencies/generateTrackList.js | |
| parent | e100804966122cd730a0ec4bf55ad10e10b6be60 (diff) | |
content: generateNearbyTrackList
makes generateTrackList more general
Diffstat (limited to 'src/content/dependencies/generateTrackList.js')
| -rw-r--r-- | src/content/dependencies/generateTrackList.js | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/src/content/dependencies/generateTrackList.js b/src/content/dependencies/generateTrackList.js index 6771285a..c259c914 100644 --- a/src/content/dependencies/generateTrackList.js +++ b/src/content/dependencies/generateTrackList.js @@ -1,20 +1,21 @@ export default { - query: (tracks, contextTrack) => ({ - presentedTracks: - (contextTrack - ? tracks.map(track => - track.otherReleases.find(({album}) => album === contextTrack.album) ?? - track) - : tracks), - }), - - relations: (relation, query, _tracks, _contextTrack) => ({ + relations: (relation, tracks, contextContributions) => ({ items: - query.presentedTracks - .map(track => relation('generateTrackListItem', track, [])), + tracks.map(track => + relation('generateTrackListItem', track, contextContributions)), }), slots: { + showArtists: { + validate: v => v.is(true, false, 'auto'), + default: 'auto', + }, + + showDuration: { + type: 'boolean', + default: false, + }, + colorMode: { validate: v => v.is('none', 'track', 'line'), default: 'track', @@ -27,8 +28,8 @@ export default { relations.items.map(item => item.slots({ - showArtists: 'auto', - showDuration: false, + showArtists: slots.showArtists, + showDuration: slots.showDuration, colorMode: slots.colorMode, }))), }; |