« get me outta code hell

data, content: singles - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateAlbumSidebar.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-07-02 17:43:34 -0300
committer(quasar) nebula <qznebula@protonmail.com>2025-07-02 17:43:34 -0300
commit112a840bdf69bfba5aae893e92b0b20c4a4884fd (patch)
treef82c3244a2f743d69e45556138b4ecd06b5369af /src/content/dependencies/generateAlbumSidebar.js
parentda8d9d616eb4d002126a89e6cba7f26053c6e4c3 (diff)
data, content: singles
Diffstat (limited to 'src/content/dependencies/generateAlbumSidebar.js')
-rw-r--r--src/content/dependencies/generateAlbumSidebar.js15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/content/dependencies/generateAlbumSidebar.js b/src/content/dependencies/generateAlbumSidebar.js
index 7cf689cc..464274e3 100644
--- a/src/content/dependencies/generateAlbumSidebar.js
+++ b/src/content/dependencies/generateAlbumSidebar.js
@@ -108,24 +108,29 @@ export default {
         : null),
   }),
 
-  data: (_query, _sprawl, _album, track) => ({
+  data: (_query, _sprawl, album, track) => ({
     isAlbumPage: !track,
     isTrackPage: !!track,
+
+    albumStyle: album.style,
   }),
 
   generate(data, relations, {html}) {
+    const presentGroupsLikeAlbum =
+      data.isAlbumPage ||
+      data.albumStyle === 'single';
+
     for (const box of [
       ...relations.groupBoxes,
       ...relations.seriesBoxes.flat(),
       ...relations.disconnectedSeriesBoxes,
     ]) {
-      box.setSlot('mode',
-        data.isAlbumPage ? 'album' : 'track');
+      box.setSlot('mode', presentGroupsLikeAlbum ? 'album' : 'track');
     }
 
     return relations.sidebar.slots({
       boxes: [
-        data.isAlbumPage && [
+        presentGroupsLikeAlbum && [
           relations.disconnectedSeriesBoxes,
 
           stitchArrays({
@@ -150,7 +155,7 @@ export default {
         data.isTrackPage &&
           relations.laterTrackReleaseBoxes,
 
-        data.isTrackPage &&
+        !presentGroupsLikeAlbum &&
           relations.conjoinedBox.slots({
             attributes: {class: 'conjoined-group-sidebar-box'},
             boxes: