« get me outta code hell

hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/data/things
diff options
context:
space:
mode:
Diffstat (limited to 'src/data/things')
-rw-r--r--src/data/things/album.js1
-rw-r--r--src/data/things/artwork.js13
-rw-r--r--src/data/things/track.js1
3 files changed, 13 insertions, 2 deletions
diff --git a/src/data/things/album.js b/src/data/things/album.js
index 7c85366a..613bbc28 100644
--- a/src/data/things/album.js
+++ b/src/data/things/album.js
@@ -505,6 +505,7 @@ export class Album extends Thing {
             dateFromThingProperty: 'coverArtDate',
             artistContribsFromThingProperty: 'coverArtistContribs',
             artistContribsArtistProperty: 'albumCoverArtistContributions',
+            artTagsFromThingProperty: 'artTags',
           }),
       },
 
diff --git a/src/data/things/artwork.js b/src/data/things/artwork.js
index 65032d86..1c9872f7 100644
--- a/src/data/things/artwork.js
+++ b/src/data/things/artwork.js
@@ -179,6 +179,8 @@ export class Artwork extends Thing {
       }),
     ],
 
+    artTagsFromThingProperty: simpleString(),
+
     artTags: [
       withResolvedReferenceList({
         list: input.updateValue({
@@ -194,13 +196,20 @@ export class Artwork extends Thing {
         mode: input.value('empty'),
       }),
 
+      exitWithoutDependency({
+        dependency: 'artTagsFromThingProperty',
+        value: input.value([]),
+      }),
+
       withPropertyFromObject({
         object: 'thing',
-        property: input.value('artTags'),
+        property: 'artTagsFromThingProperty',
+      }).outputs({
+        ['#value']: '#artTags',
       }),
 
       exposeDependencyOrContinue({
-        dependency: '#thing.artTags',
+        dependency: '#artTags',
       }),
 
       exposeConstant({
diff --git a/src/data/things/track.js b/src/data/things/track.js
index 2d2cc002..d7cb2b58 100644
--- a/src/data/things/track.js
+++ b/src/data/things/track.js
@@ -533,6 +533,7 @@ export class Track extends Thing {
             dimensionsFromThingProperty: 'coverArtDimensions',
             fileExtensionFromThingProperty: 'coverArtFileExtension',
             dateFromThingProperty: 'coverArtDate',
+            artTagsFromThingProperty: 'artTags',
             artistContribsFromThingProperty: 'coverArtistContribs',
             artistContribsArtistProperty: 'trackCoverArtistContributions',
           }),