From 8fd75ffbfda30edd5a134a1fbf9b81ac3cebb2ff Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Mon, 24 Jul 2023 00:42:00 +0000
Subject: [PATCH] support attachments folder

---
 quartz/components/TagList.tsx |   54 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 32 insertions(+), 22 deletions(-)

diff --git a/quartz/components/TagList.tsx b/quartz/components/TagList.tsx
index a462e95..8b90955 100644
--- a/quartz/components/TagList.tsx
+++ b/quartz/components/TagList.tsx
@@ -1,19 +1,27 @@
-import { resolveToRoot } from "../path"
+import { canonicalizeServer, pathToRoot } from "../path"
 import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
-import { slug as slugAnchor } from 'github-slugger'
+import { slug as slugAnchor } from "github-slugger"
 
 function TagList({ fileData }: QuartzComponentProps) {
   const tags = fileData.frontmatter?.tags
-  const slug = fileData.slug!
-  const baseDir = resolveToRoot(slug)
-  if (tags) {
-    return <ul class="tags">{tags.map(tag => {
-      const display = `#${tag}`
-      const linkDest = baseDir + `/tags/${slugAnchor(tag)}`
-      return <li>
-        <a href={linkDest}>{display}</a>
-      </li>
-    })}</ul>
+  const slug = canonicalizeServer(fileData.slug!)
+  const baseDir = pathToRoot(slug)
+  if (tags && tags.length > 0) {
+    return (
+      <ul class="tags">
+        {tags.map((tag) => {
+          const display = `#${tag}`
+          const linkDest = baseDir + `/tags/${slugAnchor(tag)}`
+          return (
+            <li>
+              <a href={linkDest} class="internal tag-link">
+                {display}
+              </a>
+            </li>
+          )
+        })}
+      </ul>
+    )
   } else {
     return null
   }
@@ -25,17 +33,19 @@
   display: flex;
   padding-left: 0;
   gap: 0.4rem;
+}
+  
+.tags > li {
+  display: inline-block;
+  white-space: nowrap;
+  margin: 0;
+  overflow-wrap: normal;
+}
 
-  & > li {
-    display: inline-block;
-    margin: 0;
-
-    & > a {
-      border-radius: 8px;
-      border: var(--lightgray) 1px solid;
-      padding: 0.2rem 0.5rem;
-    }
-  }
+a.tag-link {
+  border-radius: 8px;
+  background-color: var(--highlight);
+  padding: 0.2rem 0.5rem;
 }
 `
 

--
Gitblit v1.10.0