From 5206ac7188c9eefd6f1d18050e2831b0f10be8ef Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Sun, 27 Nov 2022 22:49:16 -0400 Subject: redesign & refinements for sticky layouting --- src/page/album.js | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) (limited to 'src/page/album.js') diff --git a/src/page/album.js b/src/page/album.js index e7658cd..741fcab 100644 --- a/src/page/album.js +++ b/src/page/album.js @@ -131,9 +131,14 @@ export function write(album, {wikiData}) { return { title: language.$('albumPage.title', {album: album.name}), stylesheet: getAlbumStylesheet(album), - theme: getThemeString(album.color, [ - `--album-directory: ${album.directory}`, - ]), + + themeColor: album.color, + theme: + getThemeString(album.color, { + additionalVariables: [ + `--album-directory: ${album.directory}`, + ], + }), banner: !empty(album.bannerArtistContribs) && { dimensions: album.bannerDimensions, @@ -463,15 +468,26 @@ export function generateAlbumSidebar(album, currentTrack, { ]); if (empty(groupParts)) { - return {content: trackListPart}; + return { + stickyMode: 'column', + content: trackListPart, + }; } else if (isTrackPage) { - const combinedGroupPart = - groupParts + const combinedGroupPart = { + classes: ['no-sticky-header'], + content: groupParts .map(groupPart => groupPart.filter(Boolean).join('\n')) - .join('\n
\n'); - return {multiple: [trackListPart, combinedGroupPart]}; + .join('\n
\n'), + }; + return { + stickyMode: 'column', + multiple: [trackListPart, combinedGroupPart], + }; } else { - return {multiple: [...groupParts, trackListPart]}; + return { + stickyMode: 'last', + multiple: [...groupParts, trackListPart], + }; } } -- cgit 1.3.0-6-gf8a5