From e8506a51537f7e2cf36dcf95a81984c9f68a2364 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Tue, 25 Nov 2025 15:17:44 -0400 Subject: data: Track: chop withCoverArtistContribs --- src/data/composite/things/track/index.js | 1 - .../things/track/withCoverArtistContribs.js | 70 ---------------------- src/data/things/track.js | 37 ++++++++++-- 3 files changed, 31 insertions(+), 77 deletions(-) delete mode 100644 src/data/composite/things/track/withCoverArtistContribs.js diff --git a/src/data/composite/things/track/index.js b/src/data/composite/things/track/index.js index 96865e09..1a696b1b 100644 --- a/src/data/composite/things/track/index.js +++ b/src/data/composite/things/track/index.js @@ -3,7 +3,6 @@ export {default as exitWithoutUniqueCoverArt} from './exitWithoutUniqueCoverArt. export {default as inheritContributionListFromMainRelease} from './inheritContributionListFromMainRelease.js'; export {default as inheritFromMainRelease} from './inheritFromMainRelease.js'; export {default as withAllReleases} from './withAllReleases.js'; -export {default as withCoverArtistContribs} from './withCoverArtistContribs.js'; export {default as withDirectorySuffix} from './withDirectorySuffix.js'; export {default as withMainRelease} from './withMainRelease.js'; export {default as withMainReleaseTrack} from './withMainReleaseTrack.js'; diff --git a/src/data/composite/things/track/withCoverArtistContribs.js b/src/data/composite/things/track/withCoverArtistContribs.js deleted file mode 100644 index 26f21160..00000000 --- a/src/data/composite/things/track/withCoverArtistContribs.js +++ /dev/null @@ -1,70 +0,0 @@ -import {input, templateCompositeFrom} from '#composite'; -import {isContributionList} from '#validators'; - -import {exposeDependencyOrContinue} from '#composite/control-flow'; - -import { - withRecontextualizedContributionList, - withRedatedContributionList, - withResolvedContribs, -} from '#composite/wiki-data'; - -import exitWithoutUniqueCoverArt from './exitWithoutUniqueCoverArt.js'; -import withPropertyFromAlbum from './withPropertyFromAlbum.js'; - -export default templateCompositeFrom({ - annotation: `withCoverArtistContribs`, - - inputs: { - from: input({ - defaultDependency: '_coverArtistContribs', - validate: isContributionList, - acceptsNull: true, - }), - }, - - outputs: ['#coverArtistContribs'], - - steps: () => [ - exitWithoutUniqueCoverArt({ - value: input.value([]), - }), - - withResolvedContribs({ - from: input('from'), - thingProperty: input.value('coverArtistContribs'), - artistProperty: input.value('trackCoverArtistContributions'), - date: 'coverArtDate', - }).outputs({ - '#resolvedContribs': '#coverArtistContribs', - }), - - exposeDependencyOrContinue({ - dependency: '#coverArtistContribs', - mode: input.value('empty'), - }), - - withPropertyFromAlbum({ - property: input.value('trackCoverArtistContribs'), - }), - - withRecontextualizedContributionList({ - list: '#album.trackCoverArtistContribs', - artistProperty: input.value('trackCoverArtistContributions'), - }), - - withRedatedContributionList({ - list: '#album.trackCoverArtistContribs', - date: 'coverArtDate', - }), - - { - dependencies: ['#album.trackCoverArtistContribs'], - compute: (continuation, { - ['#album.trackCoverArtistContribs']: coverArtistContribs, - }) => continuation({ - ['#coverArtistContribs']: coverArtistContribs, - }), - }, - ], -}); diff --git a/src/data/things/track.js b/src/data/things/track.js index 798f3ca3..8ae4864d 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -82,7 +82,6 @@ import { inheritContributionListFromMainRelease, inheritFromMainRelease, withAllReleases, - withCoverArtistContribs, withDirectorySuffix, withMainRelease, withMainReleaseTrack, @@ -350,13 +349,39 @@ export class Track extends Thing { ], coverArtistContribs: [ - withCoverArtistContribs({ - from: input.updateValue({ - validate: isContributionList, - }), + exitWithoutUniqueCoverArt({ + value: input.value([]), + }), + + withResolvedContribs({ + from: input.updateValue({validate: isContributionList}), + thingProperty: input.value('coverArtistContribs'), + artistProperty: input.value('trackCoverArtistContributions'), + date: 'coverArtDate', + }), + + exposeDependencyOrContinue({ + dependency: '#resolvedContribs', + mode: input.value('empty'), }), - exposeDependency({dependency: '#coverArtistContribs'}), + withPropertyFromAlbum({ + property: input.value('trackCoverArtistContribs'), + }), + + withRecontextualizedContributionList({ + list: '#album.trackCoverArtistContribs', + artistProperty: input.value('trackCoverArtistContributions'), + }), + + withRedatedContributionList({ + list: '#album.trackCoverArtistContribs', + date: 'coverArtDate', + }), + + exposeDependency({ + dependency: '#album.trackCoverArtistContribs', + }), ], coverArtDate: [ -- cgit 1.3.0-6-gf8a5