diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2024-04-03 18:07:33 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2024-04-03 18:07:33 -0300 |
commit | 73111fd73013d8de6403cafa33416a23ad17058c (patch) | |
tree | 749d8b5452e7b40f7604ca299e98b46b63f8a024 | |
parent | c2c5ecfac8610941937dcf21f4109984487c48dd (diff) |
content: generateGroupSidebar: base on generatePageSidebar
-rw-r--r-- | src/content/dependencies/generateGroupGalleryPage.js | 10 | ||||
-rw-r--r-- | src/content/dependencies/generateGroupInfoPage.js | 6 | ||||
-rw-r--r-- | src/content/dependencies/generateGroupSidebar.js | 37 |
3 files changed, 31 insertions, 22 deletions
diff --git a/src/content/dependencies/generateGroupGalleryPage.js b/src/content/dependencies/generateGroupGalleryPage.js index b29c586f..d07847c6 100644 --- a/src/content/dependencies/generateGroupGalleryPage.js +++ b/src/content/dependencies/generateGroupGalleryPage.js @@ -178,10 +178,12 @@ export default { }), ], - ... - relations.sidebar - ?.slot('currentExtra', 'gallery') - ?.content, + leftSidebar: + (relations.sidebar + ? relations.sidebar + .slot('currentExtra', 'gallery') + .content /* TODO: Kludge. */ + : null), navLinkStyle: 'hierarchical', navLinks: diff --git a/src/content/dependencies/generateGroupInfoPage.js b/src/content/dependencies/generateGroupInfoPage.js index 2e1d1688..b5b456aa 100644 --- a/src/content/dependencies/generateGroupInfoPage.js +++ b/src/content/dependencies/generateGroupInfoPage.js @@ -207,7 +207,11 @@ export default { ], ], - ...relations.sidebar?.content ?? {}, + leftSidebar: + (relations.sidebar + ? relations.sidebar + .content /* TODO: Kludge. */ + : null), navLinkStyle: 'hierarchical', navLinks: relations.navLinks.content, diff --git a/src/content/dependencies/generateGroupSidebar.js b/src/content/dependencies/generateGroupSidebar.js index 98b288fa..3abb3392 100644 --- a/src/content/dependencies/generateGroupSidebar.js +++ b/src/content/dependencies/generateGroupSidebar.js @@ -1,18 +1,21 @@ export default { - contentDependencies: ['generateGroupSidebarCategoryDetails'], + contentDependencies: [ + 'generateGroupSidebarCategoryDetails', + 'generatePageSidebar', + ], + extraDependencies: ['html', 'language', 'wikiData'], - sprawl({groupCategoryData}) { - return {groupCategoryData}; - }, + sprawl: ({groupCategoryData}) => ({groupCategoryData}), - relations(relation, sprawl, group) { - return { - categoryDetails: - sprawl.groupCategoryData.map(category => - relation('generateGroupSidebarCategoryDetails', category, group)), - }; - }, + relations: (relation, sprawl, group) => ({ + sidebar: + relation('generatePageSidebar'), + + categoryDetails: + sprawl.groupCategoryData.map(category => + relation('generateGroupSidebarCategoryDetails', category, group)), + }), slots: { currentExtra: { @@ -20,10 +23,11 @@ export default { }, }, - generate(relations, slots, {html, language}) { - return { - leftSidebarClass: 'category-map-sidebar-box', - leftSidebarContent: [ + generate: (relations, slots, {html, language}) => + relations.sidebar.slots({ + attributes: {class: 'category-map-sidebar-box'}, + + content: [ html.tag('h1', language.$('groupSidebar.title')), @@ -31,6 +35,5 @@ export default { .map(details => details.slot('currentExtra', slots.currentExtra)), ], - }; - }, + }), }; |