From 58fba5a7a859c5398e0e58f31d7e8e5a649db63b Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Wed, 2 Apr 2025 15:10:58 -0300 Subject: data, content: stub multiple artworks Only for tracks as of this commit, most anything else is in a severely broken state aye --- src/content/dependencies/generateCoverArtwork.js | 34 +++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) (limited to 'src/content/dependencies/generateCoverArtwork.js') diff --git a/src/content/dependencies/generateCoverArtwork.js b/src/content/dependencies/generateCoverArtwork.js index 58c29830..719d14e9 100644 --- a/src/content/dependencies/generateCoverArtwork.js +++ b/src/content/dependencies/generateCoverArtwork.js @@ -1,7 +1,24 @@ export default { - contentDependencies: ['image'], + contentDependencies: [ + 'generateCoverArtworkArtTagDetails', + 'generateCoverArtworkArtistDetails', + 'generateCoverArtworkOriginDetails', + 'image', + ], + extraDependencies: ['html'], + relations: (relation, artwork) => ({ + originDetails: + relation('generateCoverArtworkOriginDetails', artwork), + + artTagDetails: + relation('generateCoverArtworkArtTagDetails', artwork), + + artistDetails: + relation('generateCoverArtworkArtistDetails', artwork), + }), + slots: { image: { type: 'html', @@ -21,13 +38,17 @@ export default { validate: v => v.looseArrayOf(v.isString), }, + showOriginDetails: {type: 'boolean', default: false}, + showArtTagDetails: {type: 'boolean', default: false}, + showArtistDetails: {type: 'boolean', default: false}, + details: { type: 'html', mutable: false, }, }, - generate(slots, {html}) { + generate(relations, slots, {html}) { const square = (slots.dimensions ? slots.dimensions[0] === slots.dimensions[1] @@ -54,7 +75,14 @@ export default { ...sizeSlots, }), - slots.details, + slots.showOriginDetails && + relations.originDetails, + + slots.showArtTagDetails && + relations.artTagDetails, + + slots.showArtistDetails && + relations.artistDetails, ] : slots.mode === 'thumbnail' ? slots.image.slots({ -- cgit 1.3.0-6-gf8a5