« get me outta code hell

content, test: linkThing: apply color to text-with-tooltip wrapper - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/linkThing.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2024-01-13 19:55:51 -0400
committer(quasar) nebula <qznebula@protonmail.com>2024-01-13 21:19:10 -0400
commit7cf04ff2deb4401ac9ab8d0b305658e6ac740c7e (patch)
treea20471d159026998a6405024007447bb69b827d1 /src/content/dependencies/linkThing.js
parente8f8306cf85288c1f424a4d31cfc50c2aac2ccab (diff)
content, test: linkThing: apply color to text-with-tooltip wrapper
Diffstat (limited to 'src/content/dependencies/linkThing.js')
-rw-r--r--src/content/dependencies/linkThing.js19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/content/dependencies/linkThing.js b/src/content/dependencies/linkThing.js
index d1f6a09..b4cfda0 100644
--- a/src/content/dependencies/linkThing.js
+++ b/src/content/dependencies/linkThing.js
@@ -76,11 +76,12 @@ export default {
   },
 
   generate(data, relations, slots, {html, language}) {
-    const {attributes} = slots;
-
     const path =
       slots.path ?? data.path;
 
+    const linkAttributes = slots.attributes;
+    const wrapperAttributes = html.attributes();
+
     const showShortName =
       (slots.preferShortName
         ? data.nameShort && data.nameShort !== data.name
@@ -104,7 +105,7 @@ export default {
         });
 
     if (slots.tooltipStyle === 'browser') {
-      attributes.add('title', data.name);
+      linkAttributes.add('title', data.name);
     }
 
     const content =
@@ -121,18 +122,24 @@ export default {
         colorStyle.setSlot('color', slots.color);
       }
 
-      attributes.add(colorStyle);
+      if (showWikiTooltip) {
+        wrapperAttributes.add(colorStyle);
+      } else {
+        linkAttributes.add(colorStyle);
+      }
     }
 
     return relations.textWithTooltip.slots({
+      attributes: wrapperAttributes,
+
       text:
         relations.linkTemplate.slots({
           path: slots.anchor ? [] : path,
           href: slots.anchor ? '' : null,
-          content,
-          attributes,
+          attributes: linkAttributes,
           hash: slots.hash,
           linkless: slots.linkless,
+          content,
         }),
 
       tooltip: