From a3e218d133c06be9a035ae5078efc54028a5fe2c Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Fri, 4 Apr 2025 12:19:47 -0300 Subject: content: gCAOriginDetails: fold year into label/credits line Also yeet "art released" strings overall --- .../generateCoverArtworkOriginDetails.js | 66 ++++++++++++---------- 1 file changed, 37 insertions(+), 29 deletions(-) (limited to 'src/content/dependencies/generateCoverArtworkOriginDetails.js') diff --git a/src/content/dependencies/generateCoverArtworkOriginDetails.js b/src/content/dependencies/generateCoverArtworkOriginDetails.js index c0109141..6cb529b1 100644 --- a/src/content/dependencies/generateCoverArtworkOriginDetails.js +++ b/src/content/dependencies/generateCoverArtworkOriginDetails.js @@ -3,6 +3,7 @@ import Thing from '#thing'; export default { contentDependencies: [ 'generateArtistCredit', + 'generateAbsoluteDatetimestamp', 'linkAlbum', 'transformContent', ], @@ -25,17 +26,18 @@ export default { (query.artworkThingType === 'album' ? relation('linkAlbum', artwork.thing) : null), + + datetimestamp: + (artwork.date !== artwork.thing.date + ? relation('generateAbsoluteDatetimestamp', artwork.date) + : null), }), + data: (query, artwork) => ({ label: artwork.label, - date: - (artwork.date !== artwork.thing.date - ? artwork.date - : null), - artworkThingType: query.artworkThingType, }), @@ -49,25 +51,36 @@ export default { {class: 'origin-details'}, [ - relations.credit.slots({ - showAnnotation: true, - showExternalLinks: true, - showChronology: true, - showWikiEdits: true, - - trimAnnotation: false, - - chronologyKind: 'coverArt', - - normalStringKey: - (data.label - ? capsule + '.artworkBy.customLabel' - : capsule + '.artworkBy'), - - additionalStringOptions: - (data.label - ? {label: data.label} - : {}), + language.encapsulate(capsule, 'artworkBy', workingCapsule => { + const workingOptions = {}; + + if (data.label) { + workingCapsule += '.customLabel'; + workingOptions.label = data.label; + } + + if (relations.datetimestamp) { + workingCapsule += '.withYear'; + workingOptions.year = + relations.datetimestamp.slots({ + style: 'year', + tooltip: true, + }); + } + + return relations.credit.slots({ + showAnnotation: true, + showExternalLinks: true, + showChronology: true, + showWikiEdits: true, + + trimAnnotation: false, + + chronologyKind: 'coverArt', + + normalStringKey: workingCapsule, + additionalStringOptions: workingOptions, + }); }), pagePath[0] === 'track' && @@ -77,11 +90,6 @@ export default { relations.albumLink.slot('color', false), }), - language.$(capsule, 'released', { - [language.onlyIfOptions]: ['date'], - date: language.formatDate(data.date), - }), - language.$(capsule, 'source', { [language.onlyIfOptions]: ['source'], source: relations.source.slot('mode', 'inline'), -- cgit 1.3.0-6-gf8a5