diff options
| author | (quasar) nebula <qznebula@protonmail.com> | 2025-11-25 14:55:54 -0400 |
|---|---|---|
| committer | (quasar) nebula <qznebula@protonmail.com> | 2025-11-25 14:56:22 -0400 |
| commit | ffffbc81426bb6ccd07ee6084a9c40fb126222ff (patch) | |
| tree | 0e677801df2bd91af8917bf2bfb0e7b977ce53da /src/data/things | |
| parent | 04589995da7ceae84aec112e44f7451e9bc47e0c (diff) | |
data: Track: chop withDate
Diffstat (limited to 'src/data/things')
| -rw-r--r-- | src/data/things/track.js | 32 |
1 files changed, 22 insertions, 10 deletions
diff --git a/src/data/things/track.js b/src/data/things/track.js index 3c72468a..62333136 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -83,7 +83,6 @@ import { inheritFromMainRelease, withAllReleases, withCoverArtistContribs, - withDate, withDirectorySuffix, withMainRelease, withMainReleaseTrack, @@ -227,13 +226,11 @@ export class Track extends Thing { ], artistContribs: [ - withDate(), - withResolvedContribs({ from: input.updateValue({validate: isContributionList}), thingProperty: input.thisProperty(), artistProperty: input.value('trackArtistContributions'), - date: '#date', + date: 'date', }).outputs({ '#resolvedContribs': '#artistContribs', }), @@ -258,7 +255,7 @@ export class Track extends Thing { withRedatedContributionList({ list: '#album.trackArtistContribs', - date: '#date', + date: 'date', }), exposeDependency({dependency: '#album.trackArtistContribs'}), @@ -267,10 +264,8 @@ export class Track extends Thing { contributorContribs: [ inheritContributionListFromMainRelease(), - withDate(), - contributionList({ - date: '#date', + date: 'date', artistProperty: input.value('trackContributorContributions'), }), ], @@ -531,8 +526,25 @@ export class Track extends Thing { ], date: [ - withDate(), - exposeDependency({dependency: '#date'}), + { + dependencies: ['disableDate'], + compute: (continuation, {disableDate}) => + (disableDate + ? null + : continuation()), + }, + + exposeDependencyOrContinue({ + dependency: 'dateFirstReleased', + }), + + withPropertyFromAlbum({ + property: input.value('date'), + }), + + exposeDependency({ + dependency: '#album.date', + }), ], trackNumber: [ |