From e1f8beeb384ad4a1a30f2654e17008ae730adf56 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Thu, 8 Jun 2023 10:27:42 -0300 Subject: content: compute "needs reveal" class only on client --- src/content/dependencies/generateAlbumInfoPage.js | 9 ++------- src/content/dependencies/generatePageLayout.js | 2 -- src/content/dependencies/generateStickyHeadingContainer.js | 10 ++-------- src/content/dependencies/generateTrackInfoPage.js | 6 ------ src/static/client.js | 1 + 5 files changed, 5 insertions(+), 23 deletions(-) diff --git a/src/content/dependencies/generateAlbumInfoPage.js b/src/content/dependencies/generateAlbumInfoPage.js index 42f4646..b049f90 100644 --- a/src/content/dependencies/generateAlbumInfoPage.js +++ b/src/content/dependencies/generateAlbumInfoPage.js @@ -173,12 +173,8 @@ export default { data.duration = accumulateSum(album.tracks, track => track.duration); data.durationApproximate = album.tracks.length > 1; - if (album.hasCoverArt) { - data.coverNeedsReveal = album.artTags.some(t => t.isContentWarning); - - if (album.coverArtDate && +album.coverArtDate !== +album.date) { - data.coverArtDate = album.coverArtDate; - } + if (album.coverArtDate && +album.coverArtDate !== +album.date) { + data.coverArtDate = album.coverArtDate; } if (!empty(album.additionalFiles)) { @@ -216,7 +212,6 @@ export default { ?.slots({ alt: language.$('misc.alt.albumCover'), }), - coverNeedsReveal: relations.content.coverNeedsReveal, mainContent: [ html.tag('p', diff --git a/src/content/dependencies/generatePageLayout.js b/src/content/dependencies/generatePageLayout.js index 1853fb1..f374552 100644 --- a/src/content/dependencies/generatePageLayout.js +++ b/src/content/dependencies/generatePageLayout.js @@ -104,7 +104,6 @@ export default { showWikiNameInTitle: {type: 'boolean', default: true}, cover: {type: 'html'}, - coverNeedsReveal: {type: 'boolean'}, socialEmbed: {type: 'html'}, @@ -204,7 +203,6 @@ export default { relations.stickyHeadingContainer.slots({ title: slots.title, cover: slots.cover, - needsReveal: slots.coverNeedsReveal, }); break; case 'static': diff --git a/src/content/dependencies/generateStickyHeadingContainer.js b/src/content/dependencies/generateStickyHeadingContainer.js index fb6d830..6602a2a 100644 --- a/src/content/dependencies/generateStickyHeadingContainer.js +++ b/src/content/dependencies/generateStickyHeadingContainer.js @@ -8,7 +8,6 @@ export default { slots: { title: {type: 'html'}, cover: {type: 'html'}, - needsReveal: {type: 'boolean', default: false}, }, content(slots) { @@ -27,13 +26,8 @@ export default { hasCover && html.tag('div', {class: 'content-sticky-heading-cover-container'}, - html.tag('div', - {class: [ - 'content-sticky-heading-cover', - slots.needsReveal && - 'content-sticky-heading-cover-needs-reveal', - ]}, - slots.cover.slot('displayMode', 'thumbnail'))) + html.tag('div', {class: 'content-sticky-heading-cover'}, + slots.cover.slot('displayMode', 'thumbnail'))), ]), html.tag('div', {class: 'content-sticky-subheading-row'}, diff --git a/src/content/dependencies/generateTrackInfoPage.js b/src/content/dependencies/generateTrackInfoPage.js index 67182e7..7d30671 100644 --- a/src/content/dependencies/generateTrackInfoPage.js +++ b/src/content/dependencies/generateTrackInfoPage.js @@ -319,7 +319,6 @@ export default { data.albumCoverArtDirectory = album.directory; data.trackCoverArtDirectory = track.directory; data.coverArtFileExtension = track.coverArtFileExtension; - data.coverNeedsReveal = track.artTags.some(t => t.isContentWarning); if (track.coverArtDate && +track.coverArtDate !== +track.date) { data.coverArtDate = track.coverArtDate; @@ -327,9 +326,6 @@ export default { } else if (track.album.hasCoverArt) { data.albumCoverArtDirectory = album.directory; data.coverArtFileExtension = album.coverArtFileExtension; - data.coverNeedsReveal = album.artTags.some(t => t.isContentWarning); - } else { - data.coverNeedsReveal = null; } data.hasTrackNumbers = album.hasTrackNumbers; @@ -368,8 +364,6 @@ export default { alt: language.$('misc.alt.trackCover'), }), - coverNeedsReveal: data.coverNeedsReveal, - mainContent: [ html.tag('p', { [html.onlyIfContent]: true, diff --git a/src/static/client.js b/src/static/client.js index 35ef82e..f7de620 100644 --- a/src/static/client.js +++ b/src/static/client.js @@ -561,6 +561,7 @@ function prepareStickyHeadings() { } of stickyHeadingInfo) { const coverRevealImage = contentCover?.querySelector('.reveal'); if (coverRevealImage) { + stickyCover.classList.add('content-sticky-heading-cover-needs-reveal'); coverRevealImage.addEventListener('hsmusic-reveal', () => { stickyCover.classList.remove('content-sticky-heading-cover-needs-reveal'); }); -- cgit 1.3.0-6-gf8a5