« get me outta code hell

content: listAlbumsByTracks: mark singles - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-07-14 16:17:52 -0300
committer(quasar) nebula <qznebula@protonmail.com>2025-07-14 16:17:52 -0300
commit4bebe2e13a8aefac68f1e602bfcc714aa9f17059 (patch)
treedba431ee917b0d25488be9e80e572d9ec6dc6209 /src/content
parenta58f782de9ed40d4673725cb78c1f2bae7bc31fc (diff)
content: listAlbumsByTracks: mark singles
Diffstat (limited to 'src/content')
-rw-r--r--src/content/dependencies/listAlbumsByTracks.js23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/content/dependencies/listAlbumsByTracks.js b/src/content/dependencies/listAlbumsByTracks.js
index 36bda4f4..1f20401c 100644
--- a/src/content/dependencies/listAlbumsByTracks.js
+++ b/src/content/dependencies/listAlbumsByTracks.js
@@ -20,7 +20,10 @@ export default {
     filterByCount(albums, counts);
     sortByCount(albums, counts, {greatestFirst: true});
 
-    return {spec, albums, counts};
+    const styles =
+      albums.map(album => album.style);
+
+    return {spec, albums, counts, styles};
   },
 
   relations(relation, query) {
@@ -36,6 +39,7 @@ export default {
   data(query) {
     return {
       counts: query.counts,
+      styles: query.styles,
     };
   },
 
@@ -46,10 +50,19 @@ export default {
         stitchArrays({
           link: relations.albumLinks,
           count: data.counts,
-        }).map(({link, count}) => ({
-            album: link,
-            tracks: language.countTracks(count, {unit: true}),
-          })),
+          style: data.styles,
+        }).map(({link, count, style}) => {
+            const row = {
+              album: link,
+              tracks: language.countTracks(count, {unit: true}),
+            };
+
+            if (style === 'single') {
+              row.stringsKey = 'single';
+            }
+
+            return row;
+          }),
     });
   },
 };