« get me outta code hell

content, css: fold non-unique-line into artwork origin details - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-04-02 18:41:59 -0300
committer(quasar) nebula <qznebula@protonmail.com>2025-04-10 16:02:38 -0300
commit380fe9e7aaf8350f54ddecfd9cfc62f36ad06690 (patch)
tree9feac217b23e344f02d7b4ad4db7207e35f34103 /src
parentb99aaacf875b826bc196d992412a0bf246bd4f9b (diff)
content, css: fold non-unique-line into artwork origin details
Diffstat (limited to 'src')
-rw-r--r--src/content/dependencies/generateCoverArtworkOriginDetails.js37
-rw-r--r--src/content/dependencies/generateTrackCoverArtwork.js17
-rw-r--r--src/content/dependencies/generateTrackCoverArtworks.js1
-rw-r--r--src/static/css/site.css4
4 files changed, 32 insertions, 27 deletions
diff --git a/src/content/dependencies/generateCoverArtworkOriginDetails.js b/src/content/dependencies/generateCoverArtworkOriginDetails.js
index 83f5ae8a..c0109141 100644
--- a/src/content/dependencies/generateCoverArtworkOriginDetails.js
+++ b/src/content/dependencies/generateCoverArtworkOriginDetails.js
@@ -1,16 +1,33 @@
+import Thing from '#thing';
+
 export default {
-  contentDependencies: ['generateArtistCredit', 'transformContent'],
-  extraDependencies: ['html', 'language'],
+  contentDependencies: [
+    'generateArtistCredit',
+    'linkAlbum',
+    'transformContent',
+  ],
+
+  extraDependencies: ['html', 'language', 'pagePath'],
+
+  query: (artwork) => ({
+    artworkThingType:
+      artwork.thing.constructor[Thing.referenceType],
+  }),
 
-  relations: (relation, artwork) => ({
+  relations: (relation, query, artwork) => ({
     credit:
       relation('generateArtistCredit', artwork.artistContribs, []),
 
     source:
       relation('transformContent', artwork.source),
+
+    albumLink:
+      (query.artworkThingType === 'album'
+        ? relation('linkAlbum', artwork.thing)
+        : null),
   }),
 
-  data: (artwork) => ({
+  data: (query, artwork) => ({
     label:
       artwork.label,
 
@@ -18,9 +35,12 @@ export default {
       (artwork.date !== artwork.thing.date
         ? artwork.date
         : null),
+
+    artworkThingType:
+      query.artworkThingType,
   }),
 
-  generate: (data, relations, {html, language}) =>
+  generate: (data, relations, {html, language, pagePath}) =>
     language.encapsulate('misc.coverArtwork', capsule =>
       html.tag('p', {class: 'image-details'},
         {[html.onlyIfContent]: true},
@@ -50,6 +70,13 @@ export default {
                 : {}),
           }),
 
+          pagePath[0] === 'track' &&
+          data.artworkThingType === 'album' &&
+            language.$(capsule, 'trackArtFromAlbum', {
+              album:
+                relations.albumLink.slot('color', false),
+            }),
+
           language.$(capsule, 'released', {
             [language.onlyIfOptions]: ['date'],
             date: language.formatDate(data.date),
diff --git a/src/content/dependencies/generateTrackCoverArtwork.js b/src/content/dependencies/generateTrackCoverArtwork.js
index 52b61b87..70d87240 100644
--- a/src/content/dependencies/generateTrackCoverArtwork.js
+++ b/src/content/dependencies/generateTrackCoverArtwork.js
@@ -64,11 +64,6 @@ export default {
       type: 'boolean',
       default: false,
     },
-
-    showNonUniqueLine: {
-      type: 'boolean',
-      default: false,
-    },
   },
 
   generate: (data, relations, slots, {language}) =>
@@ -96,18 +91,6 @@ export default {
               relations.referencingArtworksLink,
           }),
         */
-
-        slots.showNonUniqueLine &&
-        data.nonUnique &&
-          html.tag('p', {class: 'image-details'},
-            {class: 'non-unique-details'},
-
-            language.$('misc.coverArtwork.trackArtFromAlbum', {
-              album:
-                relations.albumLink.slots({
-                  color: false,
-                }),
-            })),
       ],
     }),
 };
diff --git a/src/content/dependencies/generateTrackCoverArtworks.js b/src/content/dependencies/generateTrackCoverArtworks.js
index 60d27d60..1cd5bff0 100644
--- a/src/content/dependencies/generateTrackCoverArtworks.js
+++ b/src/content/dependencies/generateTrackCoverArtworks.js
@@ -21,6 +21,5 @@ export default {
         cover.slots({
           showOriginDetails: true,
           showReferenceLinks: true,
-          showNonUniqueLine: true,
         })),
 };
diff --git a/src/static/css/site.css b/src/static/css/site.css
index 060ab62c..d481163b 100644
--- a/src/static/css/site.css
+++ b/src/static/css/site.css
@@ -1511,10 +1511,6 @@ ul.image-details.art-tag-details li:not(:last-child)::after {
   content: " \00b7 ";
 }
 
-.image-details.non-unique-details {
-  font-style: oblique;
-}
-
 p.image-details.illustrator-details {
   text-align: center;
   font-style: oblique;