diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2024-04-03 11:56:32 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2024-04-03 16:55:11 -0300 |
commit | d756bee8ee4c8347930714998b43551a49330107 (patch) | |
tree | 98bcb6ef75798356eccb5be710375fd8b620ee76 /src/content/dependencies/generateAlbumSidebarTrackListBox.js | |
parent | cd0524a47b6b7ab752c5bf2ac1f7c089d08437c4 (diff) |
content: generatePageSidebarBox, etc
Diffstat (limited to 'src/content/dependencies/generateAlbumSidebarTrackListBox.js')
-rw-r--r-- | src/content/dependencies/generateAlbumSidebarTrackListBox.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/content/dependencies/generateAlbumSidebarTrackListBox.js b/src/content/dependencies/generateAlbumSidebarTrackListBox.js new file mode 100644 index 00000000..3a244e3a --- /dev/null +++ b/src/content/dependencies/generateAlbumSidebarTrackListBox.js @@ -0,0 +1,31 @@ +export default { + contentDependencies: [ + 'generateAlbumSidebarTrackSection', + 'generatePageSidebarBox', + 'linkAlbum', + ], + + extraDependencies: ['html'], + + relations: (relation, album, track) => ({ + box: + relation('generatePageSidebarBox'), + + albumLink: + relation('linkAlbum', album), + + trackSections: + album.trackSections.map(trackSection => + relation('generateAlbumSidebarTrackSection', album, track, trackSection)), + }), + + generate: (relations, {html}) => + relations.box.slots({ + attributes: {class: 'track-list-sidebar-box'}, + + content: [ + html.tag('h1', relations.albumLink), + relations.trackSections, + ], + }) +}; |