« get me outta code hell

data, content, css: art tag additional names - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-02-10 18:43:53 -0400
committer(quasar) nebula <qznebula@protonmail.com>2025-02-25 20:03:30 -0400
commit80f06ea8932b3fb33942357b161845c51aab4026 (patch)
treea6f429ca44ff0e633f5993bb4c5bfaef7f610625
parent27ed45cf9652b4859ca65092b974bd02b9fb107c (diff)
data, content, css: art tag additional names
-rw-r--r--src/content/dependencies/generateArtTagGalleryPage.js7
-rw-r--r--src/content/dependencies/generateArtTagInfoPage.js8
-rw-r--r--src/data/things/art-tag.js10
-rw-r--r--src/static/css/site.css11
4 files changed, 33 insertions, 3 deletions
diff --git a/src/content/dependencies/generateArtTagGalleryPage.js b/src/content/dependencies/generateArtTagGalleryPage.js
index fee7f463..474512da 100644
--- a/src/content/dependencies/generateArtTagGalleryPage.js
+++ b/src/content/dependencies/generateArtTagGalleryPage.js
@@ -3,6 +3,7 @@ import {empty, stitchArrays, unique} from '#sugar';
 
 export default {
   contentDependencies: [
+    'generateAdditionalNamesBox',
     'generateArtTagGalleryPageFeaturedLine',
     'generateArtTagGalleryPageShowingLine',
     'generateArtTagNavLinks',
@@ -46,6 +47,9 @@ export default {
     relations.navLinks =
       relation('generateArtTagNavLinks', artTag);
 
+    relations.additionalNamesBox =
+      relation('generateAdditionalNamesBox', artTag.additionalNames);
+
     relations.quickDescription =
       relation('generateQuickDescription', artTag);
 
@@ -139,9 +143,10 @@ export default {
           }),
 
         headingMode: 'static',
-
         color: data.color,
 
+        additionalNames: relations.additionalNamesBox,
+
         mainClasses: ['top-index'],
         mainContent: [
           relations.quickDescription.slots({
diff --git a/src/content/dependencies/generateArtTagInfoPage.js b/src/content/dependencies/generateArtTagInfoPage.js
index 883dbbef..7765f159 100644
--- a/src/content/dependencies/generateArtTagInfoPage.js
+++ b/src/content/dependencies/generateArtTagInfoPage.js
@@ -2,6 +2,7 @@ import {empty, stitchArrays, unique} from '#sugar';
 
 export default {
   contentDependencies: [
+    'generateAdditionalNamesBox',
     'generateArtTagNavLinks',
     'generateArtTagSidebar',
     'generateContentHeading',
@@ -47,6 +48,9 @@ export default {
     sidebar:
       relation('generateArtTagSidebar', artTag),
 
+    additionalNamesBox:
+      relation('generateAdditionalNamesBox', artTag.additionalNames),
+
     contentHeading:
       relation('generateContentHeading'),
 
@@ -120,9 +124,11 @@ export default {
             tag: language.sanitize(data.name),
           }),
 
-        headingMode: 'static',
+        headingMode: 'sticky',
         color: data.color,
 
+        additionalNames: relations.additionalNamesBox,
+
         mainContent: [
           html.tag('p',
             language.encapsulate(pageCapsule, 'featuredIn', capsule =>
diff --git a/src/data/things/art-tag.js b/src/data/things/art-tag.js
index fe4c77b2..fbbe3034 100644
--- a/src/data/things/art-tag.js
+++ b/src/data/things/art-tag.js
@@ -6,12 +6,13 @@ import {sortAlphabetically, sortAlbumsTracksChronologically} from '#sort';
 import Thing from '#thing';
 import {unique} from '#sugar';
 import {isName} from '#validators';
-import {parseAnnotatedReferences} from '#yaml';
+import {parseAdditionalNames, parseAnnotatedReferences} from '#yaml';
 
 import {exitWithoutDependency, exposeDependency, exposeUpdateValueOrContinue}
   from '#composite/control-flow';
 
 import {
+  additionalNameList,
   annotatedReferenceList,
   color,
   directory,
@@ -54,6 +55,8 @@ export class ArtTag extends Thing {
       },
     ],
 
+    additionalNames: additionalNameList(),
+
     description: simpleString(),
 
     directDescendantArtTags: referenceList({
@@ -162,6 +165,11 @@ export class ArtTag extends Thing {
       'Description': {property: 'description'},
       'Extra Reading URLs': {property: 'extraReadingURLs'},
 
+      'Additional Names': {
+        property: 'additionalNames',
+        transform: parseAdditionalNames,
+      },
+
       'Color': {property: 'color'},
       'Is CW': {property: 'isContentWarning'},
 
diff --git a/src/static/css/site.css b/src/static/css/site.css
index 12625de4..eca735d5 100644
--- a/src/static/css/site.css
+++ b/src/static/css/site.css
@@ -1986,6 +1986,17 @@ h1 a[href="#additional-names-box"]:hover {
   vertical-align: text-bottom;
 }
 
+#content.top-index #additional-names-box {
+  margin-left: auto;
+  margin-right: auto;
+  margin-bottom: 2em;
+}
+
+#content.top-index #additional-names-box {
+  text-align: center;
+  margin-bottom: 0.75em;
+}
+
 /* Specific pages - homepage */
 
 html[data-url-key="localized.home"] #content h1 {