From 535acb34613b5cf7e22654619f4337b94b70644d Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Mon, 12 Jun 2023 16:35:38 -0300 Subject: content: cut html.template boilerplate --- src/content/dependencies/generateCoverArtwork.js | 96 +++++++++++------------- 1 file changed, 45 insertions(+), 51 deletions(-) (limited to 'src/content/dependencies/generateCoverArtwork.js') diff --git a/src/content/dependencies/generateCoverArtwork.js b/src/content/dependencies/generateCoverArtwork.js index a7a7f859..e9c91cf7 100644 --- a/src/content/dependencies/generateCoverArtwork.js +++ b/src/content/dependencies/generateCoverArtwork.js @@ -22,62 +22,56 @@ export default { return relations; }, - generate(relations, {html, language}) { - return html.template({ - annotation: 'generateCoverArtwork', + slots: { + path: { + validate: v => v.validateArrayItems(v.isString), + }, - slots: { - path: { - validate: v => v.validateArrayItems(v.isString), - }, + alt: { + type: 'string', + }, - alt: { - type: 'string', - }, - - displayMode: { - validate: v => v.is('primary', 'thumbnail'), - default: 'primary', - }, - }, + displayMode: { + validate: v => v.is('primary', 'thumbnail'), + default: 'primary', + }, + }, - content(slots) { - switch (slots.displayMode) { - case 'primary': - return html.tag('div', {id: 'cover-art-container'}, [ - relations.image - .slots({ - path: slots.path, - alt: slots.alt, - thumb: 'medium', - id: 'cover-art', - reveal: true, - link: true, - square: true, - }), + generate(relations, slots, {html, language}) { + switch (slots.displayMode) { + case 'primary': + return html.tag('div', {id: 'cover-art-container'}, [ + relations.image + .slots({ + path: slots.path, + alt: slots.alt, + thumb: 'medium', + id: 'cover-art', + reveal: true, + link: true, + square: true, + }), - !empty(relations.tagLinks) && - html.tag('p', - language.$('releaseInfo.artTags.inline', { - tags: language.formatUnitList(relations.tagLinks), - })), - ]); + !empty(relations.tagLinks) && + html.tag('p', + language.$('releaseInfo.artTags.inline', { + tags: language.formatUnitList(relations.tagLinks), + })), + ]); - case 'thumbnail': - return relations.image - .slots({ - path: slots.path, - alt: slots.alt, - thumb: 'small', - reveal: false, - link: false, - square: true, - }); + case 'thumbnail': + return relations.image + .slots({ + path: slots.path, + alt: slots.alt, + thumb: 'small', + reveal: false, + link: false, + square: true, + }); - case 'default': - return html.blank(); - } - }, - }); + default: + return html.blank(); + } }, }; -- cgit 1.3.0-6-gf8a5