From 71de050864a42afcaeb409c11b9c792653cf2f1b Mon Sep 17 00:00:00 2001
From: "(quasar) nebula"
Date: Sun, 20 Feb 2022 00:24:56 -0400
Subject: basic page writes
---
src/page/album.js | 27 +++++++++++++++++++--------
1 file changed, 19 insertions(+), 8 deletions(-)
(limited to 'src/page/album.js')
diff --git a/src/page/album.js b/src/page/album.js
index 6e8d6db..1ebfdec 100644
--- a/src/page/album.js
+++ b/src/page/album.js
@@ -164,9 +164,11 @@ export function write(album, {wikiData}) {
strings('releaseInfo.released', {
date: strings.count.date(album.date)
}),
- +album.coverArtDate !== +album.date && strings('releaseInfo.artReleased', {
- date: strings.count.date(album.coverArtDate)
- }),
+ (album.coverArtDate &&
+ +album.coverArtDate !== +album.date &&
+ strings('releaseInfo.artReleased', {
+ date: strings.count.date(album.coverArtDate)
+ })),
strings('releaseInfo.duration', {
duration: strings.count.duration(albumDuration, {approximate: album.tracks.length > 1})
})
@@ -179,7 +181,7 @@ export function write(album, {wikiData}) {
})
})
}
`}
- ${album.urls.length && `${
+ ${album.urls?.length && `
${
strings('releaseInfo.listenOn', {
links: strings.list.or(album.urls.map(url => fancifyURL(url, {album: true})))
})
@@ -263,12 +265,16 @@ export function generateAlbumSidebar(album, currentTrack, {
}) {
const listTag = getAlbumListTag(album);
+ /*
const trackGroups = album.trackGroups || [{
name: strings('albumSidebar.trackList.fallbackGroupName'),
color: album.color,
startIndex: 0,
tracks: album.tracks
}];
+ */
+
+ const { trackGroups } = album;
const trackToListItem = track => html.tag('li',
{class: track === currentTrack && 'current'},
@@ -276,9 +282,14 @@ export function generateAlbumSidebar(album, currentTrack, {
track: link.track(track)
}));
+ const nameOrDefault = (isDefaultTrackGroup, name) =>
+ (isDefaultTrackGroup
+ ? strings('albumSidebar.trackList.fallbackGroupName')
+ : name);
+
const trackListPart = fixWS`
${link.album(album)}
- ${trackGroups.map(({ name, color, startIndex, tracks }) =>
+ ${trackGroups.map(({ name, color, startIndex, tracks, isDefaultTrackGroup }) =>
html.tag('details', {
// Leave side8ar track groups collapsed on al8um homepage,
// since there's already a view of all the groups expanded
@@ -290,11 +301,11 @@ export function generateAlbumSidebar(album, currentTrack, {
{style: getLinkThemeString(color)},
(listTag === 'ol'
? strings('albumSidebar.trackList.group.withRange', {
- group: `${name}`,
+ group: `${nameOrDefault(isDefaultTrackGroup, name)}`,
range: `${startIndex + 1}–${startIndex + tracks.length}`
})
: strings('albumSidebar.trackList.group', {
- group: `${name}`
+ group: `${nameOrDefault(isDefaultTrackGroup, name)}`
}))
),
fixWS`
@@ -319,7 +330,7 @@ export function generateAlbumSidebar(album, currentTrack, {
})
}
${!currentTrack && transformMultiline(group.descriptionShort)}
- ${group.urls.length && `${
+ ${group.urls?.length && `
${
strings('releaseInfo.visitOn', {
links: strings.list.or(group.urls.map(url => fancifyURL(url)))
})
--
cgit 1.3.0-6-gf8a5