« get me outta code hell

content, css: generateMusicVideoDateLine - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateMusicVideo.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2026-01-17 19:18:26 -0400
committer(quasar) nebula <qznebula@protonmail.com>2026-01-17 19:18:26 -0400
commit9816f00277292f499e47b9df7bbc89a385bcb133 (patch)
tree7d876eb3ef9d9e5aef6f77ed5d91431f7ce28ec1 /src/content/dependencies/generateMusicVideo.js
parent85fa29d1cef35f7b3ba977b35dc913d39d3268be (diff)
content, css: generateMusicVideoDateLine
Diffstat (limited to 'src/content/dependencies/generateMusicVideo.js')
-rw-r--r--src/content/dependencies/generateMusicVideo.js75
1 files changed, 24 insertions, 51 deletions
diff --git a/src/content/dependencies/generateMusicVideo.js b/src/content/dependencies/generateMusicVideo.js
index 628c1a17..035cd353 100644
--- a/src/content/dependencies/generateMusicVideo.js
+++ b/src/content/dependencies/generateMusicVideo.js
@@ -7,41 +7,22 @@ export default {
         dimensions: musicVideo.coverArtDimensions,
       }),
 
-    releaseLine:
-      relation('generateMusicVideoReleaseLine', musicVideo, thing),
+    artistsLine:
+      relation('generateMusicVideoArtistsLine', musicVideo),
+
+    dateLine:
+      relation('generateMusicVideoDateLine', musicVideo, thing),
 
     contributorCredit:
       relation('generateArtistCredit', musicVideo.contributorContribs, []),
   }),
 
-  data: (musicVideo, track) => ({
+  data: (musicVideo, _thing) => ({
     label:
       musicVideo.label,
 
     url:
       musicVideo.url,
-
-    sameDay:
-      (() => {
-        if (!musicVideo.dateIsSpecified) return null;
-
-        const compare = (a, b) =>
-          a.toDateString() === b.toDateString();
-
-        if (compare(musicVideo.date, track.album.date)) {
-          if (track.album.style === 'single') {
-            return 'single';
-          } else {
-            return 'album';
-          }
-        }
-
-        if (compare(musicVideo.date, track.date)) {
-          return 'track';
-        }
-
-        return null;
-      })(),
   }),
 
   generate: (data, relations, {language, html}) =>
@@ -63,41 +44,33 @@ export default {
           link: data.url,
         }),
 
-        html.tag('p', {class: 'music-video-info'},
+        html.tag('p',
           {[html.joinChildren]: html.tag('br')},
 
           [
-            html.tag('span', {class: 'release-line'},
+            html.tag('span', {class: 'artists-line'},
               {[html.onlyIfContent]: true},
 
-              relations.releaseLine),
-
-            language.encapsulate(capsule, 'date', capsule => [
-              data.sameDay == 'album' &&
-                language.$(capsule, 'sameDayAsAlbum'),
-
-              data.sameDay == 'single' &&
-                language.$(capsule, 'sameDayAsTrack'),
+              relations.artistsLine),
 
-              data.sameDay === 'track' &&
-                language.$(capsule, 'sameDayAsTrack'),
-            ]),
+            relations.dateLine,
+          ]),
 
-            language.encapsulate(capsule, 'contributorsLine', capsule =>
-              language.$(capsule, {
-                [language.onlyIfOptions]: ['credit'],
+        html.tag('p',
+          language.encapsulate(capsule, 'contributorsLine', capsule =>
+            language.$(capsule, {
+              [language.onlyIfOptions]: ['credit'],
 
-                credit:
-                  relations.contributorCredit.slots({
-                    normalStringKey: language.encapsulate(capsule, 'credit'),
+              credit:
+                relations.contributorCredit.slots({
+                  normalStringKey: language.encapsulate(capsule, 'credit'),
 
-                    showAnnotation: true,
-                    showChronology: true,
-                    chunkwrap: false,
+                  showAnnotation: true,
+                  showChronology: true,
+                  chunkwrap: false,
 
-                    chronologyKind: 'musicVideoContribution',
-                  }),
-              })),
-          ]),
+                  chronologyKind: 'musicVideoContribution',
+                }),
+            }))),
       ])),
 };