diff options
| author | (quasar) nebula <qznebula@protonmail.com> | 2026-05-19 21:52:18 -0300 |
|---|---|---|
| committer | (quasar) nebula <qznebula@protonmail.com> | 2026-05-19 21:52:18 -0300 |
| commit | e56b564efe888e028e4b01891d9074e8532360d2 (patch) | |
| tree | 4525dd2a274f8320d94be5cfbf1b1ad8586420d2 /src/content/dependencies/generateAdditionalFilesListChunk.js | |
| parent | e518aba281c2deca085bcb1245f8da5448f28981 (diff) | |
data, content: additional file artists preview
Diffstat (limited to 'src/content/dependencies/generateAdditionalFilesListChunk.js')
| -rw-r--r-- | src/content/dependencies/generateAdditionalFilesListChunk.js | 34 |
1 files changed, 31 insertions, 3 deletions
diff --git a/src/content/dependencies/generateAdditionalFilesListChunk.js b/src/content/dependencies/generateAdditionalFilesListChunk.js index 466a5d8d..7d0e41c1 100644 --- a/src/content/dependencies/generateAdditionalFilesListChunk.js +++ b/src/content/dependencies/generateAdditionalFilesListChunk.js @@ -8,6 +8,9 @@ export default { links: file.filenames .map(filename => relation('linkAdditionalFile', file, filename)), + + artistCredit: + relation('generateArtistCredit', file.artistContribs, []), }), data: (file) => ({ @@ -19,6 +22,11 @@ export default { }), slots: { + string: { + type: 'string', + default: 'miscellaneousAdditionalFiles', + }, + showFileSizes: { type: 'boolean', }, @@ -34,9 +42,29 @@ export default { [ html.tag('summary', html.tag('span', - language.$(capsule, 'entry', { - title: - html.tag('b', data.title), + language.encapsulate(capsule, 'entry', workingCapsule => { + const workingOptions = {}; + const entryCapsule = workingCapsule; + + const titlePart = + (data.title + ? language.sanitize(data.title) + : language.$('releaseInfo', slots.string, 'entry.placeholderTitle')); + + workingOptions.title = + html.tag('b', titlePart); + + relations.artistCredit.setSlots({ + normalStringKey: + entryCapsule + '.credit', + }); + + if (!html.isBlank(relations.artistCredit)) { + workingCapsule += '.withCredit'; + workingOptions.credit = relations.artistCredit; + } + + return language.$(workingCapsule, workingOptions); }))), html.tag('ul', [ |