From 589273c5e1d63e5f68ecedd68c9d4b49c36b25f4 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Thu, 12 May 2022 21:55:03 -0300 Subject: additional files These are basically supported for tracks but I've only implemented them for albums for the moment (read: I'm lazy!). --- src/misc-templates.js | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'src/misc-templates.js') diff --git a/src/misc-templates.js b/src/misc-templates.js index 5aec92e..ec58398 100644 --- a/src/misc-templates.js +++ b/src/misc-templates.js @@ -28,6 +28,40 @@ const MASTODON_DOMAINS = [ 'types.pl', ]; +// "Additional Files" listing + +export function generateAdditionalFilesShortcut(additionalFiles, {language}) { + if (!additionalFiles?.length) return ''; + + return language.$('releaseInfo.additionalFiles.shortcut', { + anchorLink: `${language.$('releaseInfo.additionalFiles.shortcut.anchorLink')}`, + titles: language.formatUnitList(additionalFiles.map(g => g.title)) + }); +} + +export function generateAdditionalFilesList(additionalFiles, {language, linkFile}) { + if (!additionalFiles?.length) return ''; + + const fileCount = additionalFiles.flatMap(g => g.files).length; + + return fixWS` +

${language.$('releaseInfo.additionalFiles.heading', {fileCount})}

+
+ ${additionalFiles.map(({ title, description, files }) => fixWS` +
${(description + ? language.$('releaseInfo.additionalFiles.entry.withDescription', {title, description}) + : language.$('releaseInfo.additionalFiles.entry', {title}))}
+
    + ${files.map(file => `
  • ${language.$('releaseInfo.additionalFiles.file', { + file: linkFile(file), + size: 'pre-computed size' + })}
  • `).join('\n')} +
+ `).join('\n')} +
+ `; +} + // Artist strings export function getArtistString(artists, { -- cgit 1.3.0-6-gf8a5