diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/data/things/Artwork.js | 11 | ||||
| -rw-r--r-- | src/data/things/contrib/AlbumAssetArtworkArtistContribution.js | 8 | ||||
| -rw-r--r-- | src/data/things/contrib/ArtworkArtistContribution.js | 8 |
3 files changed, 18 insertions, 9 deletions
diff --git a/src/data/things/Artwork.js b/src/data/things/Artwork.js index c1aafa8f..7beb3567 100644 --- a/src/data/things/Artwork.js +++ b/src/data/things/Artwork.js @@ -73,7 +73,10 @@ export class Artwork extends Thing { // 'artistContribs', // from attached artwork or thing ]; - static [Thing.getPropertyDescriptors] = ({ArtTag}) => ({ + static [Thing.getPropertyDescriptors] = ({ + ArtTag, + ArtworkArtistContribution, + }) => ({ // Update & expose unqualifiedDirectory: directory({ @@ -128,6 +131,12 @@ export class Artwork extends Thing { artistContribs: [ withResolvedContribs({ from: input.updateValue({validate: isContributionList}), + + // XXX: All artwork artist contributions, as resolved from update value + // (*not* those constituted from thing), are generic artwork contribs. + // The class should be specified by whatever the artwork is placed on!! + class: input.value(ArtworkArtistContribution), + date: 'date', thingProperty: input.thisProperty(), artistProperty: 'artistContribsArtistProperty', diff --git a/src/data/things/contrib/AlbumAssetArtworkArtistContribution.js b/src/data/things/contrib/AlbumAssetArtworkArtistContribution.js index a178ca13..fbc3f719 100644 --- a/src/data/things/contrib/AlbumAssetArtworkArtistContribution.js +++ b/src/data/things/contrib/AlbumAssetArtworkArtistContribution.js @@ -3,18 +3,10 @@ import Thing from '#thing'; import {exposeConstant} from '#composite/control-flow'; -import {hasAnnotationFront} from '#composite/things/contribution'; - import {ArtworkArtistContribution} from './ArtworkArtistContribution.js'; export class AlbumAssetArtworkArtistContribution extends ArtworkArtistContribution { static [Thing.getPropertyDescriptors] = () => ({ isAlbumAssetArtworkArtistContribution: exposeConstant(V(true)), - - recognizedAnnotationFronts: - exposeConstant(V(['edits for wiki'])), - - isEditsForWikiCredit: - hasAnnotationFront(V('edits for wiki')), }); } diff --git a/src/data/things/contrib/ArtworkArtistContribution.js b/src/data/things/contrib/ArtworkArtistContribution.js index 5b1b68d8..a47f2391 100644 --- a/src/data/things/contrib/ArtworkArtistContribution.js +++ b/src/data/things/contrib/ArtworkArtistContribution.js @@ -3,10 +3,18 @@ import Thing from '#thing'; import {exposeConstant} from '#composite/control-flow'; +import {hasAnnotationFront} from '#composite/things/contribution'; + import {Contribution} from './Contribution.js'; export class ArtworkArtistContribution extends Contribution { static [Thing.getPropertyDescriptors] = () => ({ isArtworkArtistContribution: exposeConstant(V(true)), + + recognizedAnnotationFronts: + exposeConstant(V(['edits for wiki'])), + + isEditsForWikiCredit: + hasAnnotationFront(V('edits for wiki')), }); } |