« get me outta code hell

content: gAIPTracksChunk{,Item}: album & track credits - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateArtistInfoPageTracksChunkItem.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2026-01-11 10:54:25 -0400
committer(quasar) nebula <qznebula@protonmail.com>2026-01-11 10:54:25 -0400
commit8537d590ce070ef72317188e3b13a89b13b08d6c (patch)
treeced92086f546525ec00a0f0ab8c3927055102797 /src/content/dependencies/generateArtistInfoPageTracksChunkItem.js
parent578913e3b4fe95bc6589e0426c48843979bdad5e (diff)
content: gAIPTracksChunk{,Item}: album & track credits
Diffstat (limited to 'src/content/dependencies/generateArtistInfoPageTracksChunkItem.js')
-rw-r--r--src/content/dependencies/generateArtistInfoPageTracksChunkItem.js22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/content/dependencies/generateArtistInfoPageTracksChunkItem.js b/src/content/dependencies/generateArtistInfoPageTracksChunkItem.js
index 9006dda9..bf334d75 100644
--- a/src/content/dependencies/generateArtistInfoPageTracksChunkItem.js
+++ b/src/content/dependencies/generateArtistInfoPageTracksChunkItem.js
@@ -91,6 +91,11 @@ export default {
     trackLink:
       relation('linkTrack', query.track),
 
+    trackListItem:
+      relation('generateTrackListItem',
+        query.track,
+        query.track.album.artistContribs),
+
     rereleaseTooltip:
       (query.isLaterRelease
         ? relation('generateArtistInfoPageRereleaseTooltip', query.track, artist)
@@ -131,16 +136,13 @@ export default {
           : html.blank()),
 
       content:
-        language.encapsulate('artistPage.creditList.entry.track', workingCapsule => {
-          const workingOptions = {track: relations.trackLink};
-
-          if (slots.showDuration && data.duration) {
-            workingCapsule += '.withDuration';
-            workingOptions.duration =
-              language.formatDuration(data.duration);
-          }
-
-          return language.$(workingCapsule, workingOptions);
+        language.$('artistPage.creditList.entry.track', {
+          track:
+            html.inside(
+              relations.trackListItem.slots({
+                showArtists: 'auto',
+                showDuration: slots.showDuration,
+              })),
         }),
     }),
 };