diff options
Diffstat (limited to 'src/content/dependencies/generateWikiHomeNewsBox.js')
-rw-r--r-- | src/content/dependencies/generateWikiHomeNewsBox.js | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/src/content/dependencies/generateWikiHomeNewsBox.js b/src/content/dependencies/generateWikiHomeNewsBox.js deleted file mode 100644 index bd0e4797..00000000 --- a/src/content/dependencies/generateWikiHomeNewsBox.js +++ /dev/null @@ -1,87 +0,0 @@ -import {empty, stitchArrays} from '#sugar'; - -export default { - contentDependencies: [ - 'generatePageSidebarBox', - 'linkNewsEntry', - 'transformContent', - ], - - extraDependencies: ['html', 'language', 'wikiData'], - - sprawl: ({newsData}) => ({ - entries: - newsData.slice(0, 3), - }), - - relations: (relation, sprawl) => ({ - box: - relation('generatePageSidebarBox'), - - entryContents: - sprawl.entries - .map(entry => relation('transformContent', entry.contentShort)), - - entryMainLinks: - sprawl.entries - .map(entry => relation('linkNewsEntry', entry)), - - entryReadMoreLinks: - sprawl.entries - .map(entry => - entry.contentShort !== entry.content && - relation('linkNewsEntry', entry)), - }), - - data: (sprawl) => ({ - entryDates: - sprawl.entries - .map(entry => entry.date), - }), - - generate(data, relations, {html, language}) { - if (empty(relations.entryContents)) { - return html.blank(); - } - - return relations.box.slots({ - attributes: {class: 'latest-news-sidebar-box'}, - collapsible: false, - - content: [ - html.tag('h1', language.$('homepage.news.title')), - - stitchArrays({ - date: data.entryDates, - content: relations.entryContents, - mainLink: relations.entryMainLinks, - readMoreLink: relations.entryReadMoreLinks, - }).map(({ - date, - content, - mainLink, - readMoreLink, - }, index) => - html.tag('article', {class: 'news-entry'}, - index === 0 && - {class: 'first-news-entry'}, - - [ - html.tag('h2', [ - html.tag('time', language.formatDate(date)), - mainLink, - ]), - - content.slot('thumb', 'medium'), - - html.tag('p', - {[html.onlyIfContent]: true}, - readMoreLink - ?.slots({ - content: language.$('homepage.news.entry.viewRest'), - })), - ])), - ], - }); - }, -}; |