diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2024-11-16 12:08:47 -0400 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2024-11-17 13:39:59 -0400 |
commit | 0337711ed78c05418ba793b71fde082d96b1cb5b (patch) | |
tree | e88e4eb6100b29660b4ded1b6aac01557d65aa59 /src/content/dependencies | |
parent | a618ec62bb07a0037e9431b2d7fda0ea55c29881 (diff) |
content: generate{Artist,Group}InfoPage: close group/artist links
Diffstat (limited to 'src/content/dependencies')
-rw-r--r-- | src/content/dependencies/generateArtistInfoPage.js | 20 | ||||
-rw-r--r-- | src/content/dependencies/generateGroupInfoPage.js | 20 |
2 files changed, 40 insertions, 0 deletions
diff --git a/src/content/dependencies/generateArtistInfoPage.js b/src/content/dependencies/generateArtistInfoPage.js index f2fdc5b6..52f3e221 100644 --- a/src/content/dependencies/generateArtistInfoPage.js +++ b/src/content/dependencies/generateArtistInfoPage.js @@ -13,6 +13,7 @@ export default { 'generatePageLayout', 'linkArtistGallery', 'linkExternal', + 'linkGroup', 'transformContent', ], @@ -68,6 +69,10 @@ export default { contextNotes: relation('transformContent', artist.contextNotes), + closeGroupLinks: + artist.closelyLinkedGroups + .map(group => relation('linkGroup', group)), + visitLinks: artist.urls .map(url => relation('linkExternal', url)), @@ -149,6 +154,21 @@ export default { html.tag('p', {[html.onlyIfContent]: true}, + language.encapsulate(pageCapsule, 'closelyLinkedGroups', capsule => + (relations.closeGroupLinks.length === 0 + ? html.blank() + : relations.closeGroupLinks.length === 1 + ? language.$(capsule, 'one', { + group: relations.closeGroupLinks, + }) + : language.$(capsule, 'multiple', { + groups: + language.formatUnitList(relations.closeGroupLinks), + })))), + + html.tag('p', + {[html.onlyIfContent]: true}, + language.$('releaseInfo.visitOn', { [language.onlyIfOptions]: ['links'], diff --git a/src/content/dependencies/generateGroupInfoPage.js b/src/content/dependencies/generateGroupInfoPage.js index 87f35656..31f43208 100644 --- a/src/content/dependencies/generateGroupInfoPage.js +++ b/src/content/dependencies/generateGroupInfoPage.js @@ -5,6 +5,7 @@ export default { 'generateGroupSecondaryNav', 'generateGroupSidebar', 'generatePageLayout', + 'linkArtist', 'linkExternal', 'transformContent', ], @@ -33,6 +34,10 @@ export default { ? relation('generateGroupSidebar', group) : null), + closeArtistLinks: + group.closelyLinkedArtists + .map(artist => relation('linkArtist', artist)), + visitLinks: group.urls .map(url => relation('linkExternal', url)), @@ -63,6 +68,21 @@ export default { html.tag('p', {[html.onlyIfContent]: true}, + language.encapsulate(pageCapsule, 'closelyLinkedArtists', capsule => + (relations.closeArtistLinks.length === 0 + ? html.blank() + : relations.closeArtistLinks.length === 1 + ? language.$(capsule, 'one', { + artist: relations.closeArtistLinks, + }) + : language.$(capsule, 'multiple', { + artists: + language.formatUnitList(relations.closeArtistLinks), + })))), + + html.tag('p', + {[html.onlyIfContent]: true}, + language.$('releaseInfo.visitOn', { [language.onlyIfOptions]: ['links'], |