From 05c3b2ad399081cac88c8ac7fddf233c01d79e98 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Mon, 31 Mar 2025 17:43:33 -0300 Subject: content: cover-artwork, cover-art-column --- src/content/dependencies/generatePageLayout.js | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'src/content/dependencies/generatePageLayout.js') diff --git a/src/content/dependencies/generatePageLayout.js b/src/content/dependencies/generatePageLayout.js index 7605c00d..f21aa00d 100644 --- a/src/content/dependencies/generatePageLayout.js +++ b/src/content/dependencies/generatePageLayout.js @@ -93,7 +93,7 @@ export default { mutable: false, }, - cover: { + coverColumnContent: { type: 'html', mutable: false, }, @@ -262,6 +262,17 @@ export default { ? data.canonicalBase + pagePathStringFromRoot : null); + const firstItemInCoverColumn = + html.smooth(slots.coverColumnContent) + .content[0]; + + const primaryCover = + (firstItemInCoverColumn && + html.resolve(firstItemInCoverColumn, {normalize: 'tag'}) + .attributes.has('class', 'cover-artwork') + ? firstItemInCoverColumn + : null); + const titleContentsHTML = (html.isBlank(slots.title) ? null @@ -279,7 +290,7 @@ export default { ? [ relations.stickyHeadingContainer.slots({ title: titleContentsHTML, - cover: slots.cover, + cover: primaryCover, }), relations.stickyHeadingContainer.clone().slots({ @@ -316,9 +327,9 @@ export default { [ titleHTML, - html.tag('div', {id: 'cover-art-container'}, + html.tag('div', {id: 'cover-art-column'}, {[html.onlyIfContent]: true}, - slots.cover), + slots.coverColumnContent), subtitleHTML, -- cgit 1.3.0-6-gf8a5