From 9acaa1c8ac8c8afd3fa08d3b1f58a60006fcfc6f Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Fri, 09 Aug 2024 01:19:45 +0000
Subject: [PATCH] feat: custom global latex macros (closes #1325)

---
 quartz/components/Backlinks.tsx |   45 +++++++++++++++++++++++++++++++--------------
 1 files changed, 31 insertions(+), 14 deletions(-)

diff --git a/quartz/components/Backlinks.tsx b/quartz/components/Backlinks.tsx
index 584746c..aa412a2 100644
--- a/quartz/components/Backlinks.tsx
+++ b/quartz/components/Backlinks.tsx
@@ -1,19 +1,36 @@
-import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
+import { QuartzComponent, QuartzComponentConstructor, QuartzComponentProps } from "./types"
 import style from "./styles/backlinks.scss"
-import { relativeToRoot } from "../path"
+import { resolveRelative, simplifySlug } from "../util/path"
+import { i18n } from "../i18n"
+import { classNames } from "../util/lang"
 
-function Backlinks({ fileData, allFiles }: QuartzComponentProps) {
-  const slug = fileData.slug!
-  const backlinkFiles = allFiles.filter(file => file.links?.includes(slug))
-  return <div class="backlinks">
-    <h3>Backlinks</h3>
-    <ul>
-      {backlinkFiles.length > 0 ?
-        backlinkFiles.map(f => <li><a href={relativeToRoot(slug, f.slug!)} class="internal">{f.frontmatter?.title}</a></li>)
-        : <li>No backlinks found</li>}
-    </ul>
-  </div> 
+const Backlinks: QuartzComponent = ({
+  fileData,
+  allFiles,
+  displayClass,
+  cfg,
+}: QuartzComponentProps) => {
+  const slug = simplifySlug(fileData.slug!)
+  const backlinkFiles = allFiles.filter((file) => file.links?.includes(slug))
+  return (
+    <div class={classNames(displayClass, "backlinks")}>
+      <h3>{i18n(cfg.locale).components.backlinks.title}</h3>
+      <ul class="overflow">
+        {backlinkFiles.length > 0 ? (
+          backlinkFiles.map((f) => (
+            <li>
+              <a href={resolveRelative(fileData.slug!, f.slug!)} class="internal">
+                {f.frontmatter?.title}
+              </a>
+            </li>
+          ))
+        ) : (
+          <li>{i18n(cfg.locale).components.backlinks.noBacklinksFound}</li>
+        )}
+      </ul>
+    </div>
+  )
 }
 
-Backlinks.css = style 
+Backlinks.css = style
 export default (() => Backlinks) satisfies QuartzComponentConstructor

--
Gitblit v1.10.0