diff options
| -rw-r--r-- | src/content/dependencies/generateTrackListItem.js | 4 | ||||
| -rw-r--r-- | src/data/things/track.js | 25 |
2 files changed, 22 insertions, 7 deletions
diff --git a/src/content/dependencies/generateTrackListItem.js b/src/content/dependencies/generateTrackListItem.js index c4b7c21e..c8c57534 100644 --- a/src/content/dependencies/generateTrackListItem.js +++ b/src/content/dependencies/generateTrackListItem.js @@ -7,13 +7,13 @@ export default { relation('generateArtistCredit', track.artistContribs, contextContributions, - track.artistText), + track.artistTextInLists), acontextualCredit: relation('generateArtistCredit', track.artistContribs, [], - track.artistText), + track.artistTextInLists), colorStyle: relation('generateColorStyleAttribute', track.color), diff --git a/src/data/things/track.js b/src/data/things/track.js index 64790a61..59246329 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -189,9 +189,25 @@ export class Track extends Thing { }), ], - artistContribs: [ - inheritContributionListFromMainRelease(), + artistTextInLists: [ + exposeUpdateValueOrContinue({ + validate: input.value(isContentString), + }), + exposeDependencyOrContinue({ + dependency: 'artistText', + }), + + withPropertyFromAlbum({ + property: input.value('trackArtistText'), + }), + + exposeDependency({ + dependency: '#album.trackArtistText', + }), + ], + + artistContribs: [ withDate(), withResolvedContribs({ @@ -624,9 +640,8 @@ export class Track extends Thing { // Credits and contributors - 'Artist Text': { - property: 'artistText', - }, + 'Artist Text': {property: 'artistText'}, + 'Artist Text In Lists': {property: 'artistTextInLists'}, 'Artists': { property: 'artistContribs', |