diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2023-06-26 00:23:58 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2023-06-26 00:24:46 -0300 |
commit | 1deb589b2e22d92f6488d259ce6196706f1515b1 (patch) | |
tree | cf2167ffdcdbc91d5ec18b26dd2c9848846cee57 /src/content/dependencies/generateArtistInfoPageOtherArtistLinks.js | |
parent | 3f6f40765018b70e8106a210b4553b26f8f64d13 (diff) |
content: generateArtistInfoPage rewrite draft
Rewriting a rewrite!? Say whaaaaat??? Sorry, the previous code didn't even come close to snuff.
Diffstat (limited to 'src/content/dependencies/generateArtistInfoPageOtherArtistLinks.js')
-rw-r--r-- | src/content/dependencies/generateArtistInfoPageOtherArtistLinks.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/content/dependencies/generateArtistInfoPageOtherArtistLinks.js b/src/content/dependencies/generateArtistInfoPageOtherArtistLinks.js new file mode 100644 index 00000000..7667dea7 --- /dev/null +++ b/src/content/dependencies/generateArtistInfoPageOtherArtistLinks.js @@ -0,0 +1,23 @@ +import {empty} from '../../util/sugar.js'; + +export default { + contentDependencies: ['linkArtist'], + + relations(relation, contribs, artist) { + const otherArtistContribs = contribs.filter(({who}) => who !== artist); + + if (empty(otherArtistContribs)) { + return {}; + } + + const otherArtistLinks = + otherArtistContribs + .map(({who}) => relation('linkArtist', who)); + + return {otherArtistLinks}; + }, + + generate(relations) { + return relations.otherArtistLinks ?? null; + }, +}; |