« get me outta code hell

data, content: stub multiple artworks - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateTrackCoverArtwork.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-04-02 15:10:58 -0300
committer(quasar) nebula <qznebula@protonmail.com>2025-04-10 16:02:38 -0300
commit58fba5a7a859c5398e0e58f31d7e8e5a649db63b (patch)
tree39f4ac7ed8292d2af453263f63ecdfaf93cba42d /src/content/dependencies/generateTrackCoverArtwork.js
parent4030a62fc518627071dc792e2754d9d99fa46546 (diff)
data, content: stub multiple artworks
Only for tracks as of this commit, most anything else is in a
severely broken state aye
Diffstat (limited to 'src/content/dependencies/generateTrackCoverArtwork.js')
-rw-r--r--src/content/dependencies/generateTrackCoverArtwork.js89
1 files changed, 35 insertions, 54 deletions
diff --git a/src/content/dependencies/generateTrackCoverArtwork.js b/src/content/dependencies/generateTrackCoverArtwork.js
index 937347a3..3fc219c8 100644
--- a/src/content/dependencies/generateTrackCoverArtwork.js
+++ b/src/content/dependencies/generateTrackCoverArtwork.js
@@ -1,9 +1,6 @@
 export default {
   contentDependencies: [
     'generateCoverArtwork',
-    'generateCoverArtworkArtTagDetails',
-    'generateCoverArtworkArtistDetails',
-    'generateCoverArtworkOriginDetails',
     'generateCoverArtworkReferenceDetails',
     'image',
     'linkAlbum',
@@ -13,65 +10,52 @@ export default {
 
   extraDependencies: ['html', 'language'],
 
-  query: (track) => ({
-    artTags:
-      (track.hasUniqueCoverArt
-        ? track.trackArtwork.artTags
-     : track.album.hasCoverArt
-        ? track.album.coverArtwork.artTags
-        : []),
-  }),
-
-  relations: (relation, query, track) => ({
+  relations: (relation, artwork) => ({
     coverArtwork:
-      relation('generateCoverArtwork'),
+      relation('generateCoverArtwork', artwork),
 
     image:
       relation('image'),
 
-    originDetails:
-      relation('generateCoverArtworkOriginDetails', track.trackArtwork),
-
-    artTagDetails:
-      relation('generateCoverArtworkArtTagDetails', track.trackArtwork),
-
-    artistDetails:
-      relation('generateCoverArtworkArtistDetails', track.trackArtwork),
-
-    referenceDetails:
-      relation('generateCoverArtworkReferenceDetails',
-        track.referencedArtworks,
-        track.referencedByArtworks),
+    // referenceDetails:
+    //   relation('generateCoverArtworkReferenceDetails',
+    //     artwork.referencedArtworks,
+    //     artwork.referencedByArtworks),
 
-    referencedArtworksLink:
-      relation('linkTrackReferencedArtworks', track),
+    // referencedArtworksLink:
+    //   relation('linkTrackReferencedArtworks', track),
 
-    referencingArtworksLink:
-      relation('linkTrackReferencingArtworks', track),
+    // referencingArtworksLink:
+    //   relation('linkTrackReferencingArtworks', track),
 
     albumLink:
-      relation('linkAlbum', track.album),
+      (artwork.thing.album
+        ? relation('linkAlbum', artwork.thing.album)
+        : relation('linkAlbum', artwork.thing)),
   }),
 
-  data: (query, track) => ({
+  data: (artwork) => ({
     path:
-      (track.hasUniqueCoverArt
-        ? ['media.trackCover', track.album.directory, track.directory, track.coverArtFileExtension]
-        : ['media.albumCover', track.album.directory, track.album.coverArtFileExtension]),
-
-    color:
-      track.color,
+      (artwork.thing.album
+        ? ['media.trackCover',
+           artwork.thing.album.directory,
+           artwork.thing.directory,
+           artwork.thing.coverArtFileExtension]
+        : ['media.albumCover',
+           artwork.thing.directory,
+           artwork.thing.coverArtFileExtension]),
+
+    // color:
+    //   track.color,
 
     dimensions:
-      (track.hasUniqueCoverArt
-        ? track.coverArtDimensions
-        : track.album.coverArtDimensions),
+      artwork.thing.coverArtDimensions,
 
     nonUnique:
-      !track.hasUniqueCoverArt,
+      !artwork.thing.album,
 
     warnings:
-      query.artTags
+      artwork.artTags
         .filter(tag => tag.isContentWarning)
         .map(tag => tag.name),
   }),
@@ -107,23 +91,19 @@ export default {
       image:
         relations.image.slots({
           path: data.path,
-          color: data.color,
+          // color: data.color,
           alt: language.$('misc.alt.trackCover'),
         }),
 
       dimensions: data.dimensions,
       warnings: data.warnings,
 
-      details: [
-        slots.showOriginDetails &&
-          relations.originDetails,
-
-        slots.details === 'tags' &&
-          relations.artTagDetails,
-
-        slots.details === 'artists'&&
-          relations.artistDetails,
+      showOriginDetails: slots.showOriginDetails,
+      showArtTagDetails: slots.details === 'tags',
+      showArtistDetails: slots.details === 'artists',
 
+      details: [
+        /*
         slots.showReferenceLinks &&
           relations.referenceDetails.slots({
             referencedLink:
@@ -132,6 +112,7 @@ export default {
             referencingLink:
               relations.referencingArtworksLink,
           }),
+        */
 
         slots.showNonUniqueLine &&
         data.nonUnique &&