From dbbc672c67aa5ac0a915d22af5cf44c4e7011aae Mon Sep 17 00:00:00 2001
From: Mara-Li <mara-li@outlook.fr>
Date: Sun, 04 Feb 2024 03:55:24 +0000
Subject: [PATCH] feat: Adding support for i18n (closes #462) (#738)
---
quartz/components/Backlinks.tsx | 36 ++++++++++++++++++++++++------------
1 files changed, 24 insertions(+), 12 deletions(-)
diff --git a/quartz/components/Backlinks.tsx b/quartz/components/Backlinks.tsx
index 9331387..1688db6 100644
--- a/quartz/components/Backlinks.tsx
+++ b/quartz/components/Backlinks.tsx
@@ -1,18 +1,30 @@
import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
import style from "./styles/backlinks.scss"
-import { canonicalizeServer, resolveRelative } from "../path"
+import { resolveRelative, simplifySlug } from "../util/path"
+import { i18n } from "../i18n/i18next"
+import { classNames } from "../util/lang"
-function Backlinks({ fileData, allFiles }: QuartzComponentProps) {
- const slug = canonicalizeServer(fileData.slug!)
- const backlinkFiles = allFiles.filter(file => file.links?.includes(slug))
- return <div class="backlinks">
- <h3>Backlinks</h3>
- <ul class="overflow">
- {backlinkFiles.length > 0 ?
- backlinkFiles.map(f => <li><a href={resolveRelative(slug, canonicalizeServer(f.slug!))} class="internal">{f.frontmatter?.title}</a></li>)
- : <li>No backlinks found</li>}
- </ul>
- </div>
+function Backlinks({ 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, "backlinks.backlinks")}</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, "backlinks.noBlacklinksFound")}</li>
+ )}
+ </ul>
+ </div>
+ )
}
Backlinks.css = style
--
Gitblit v1.10.0