From ab9da02c60c962128820e6874e6f07c98bc3dda7 Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Tue, 04 Jul 2023 17:08:32 +0000
Subject: [PATCH] fix indexing causing main thread freeze, various polish

---
 quartz/path.ts |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/quartz/path.ts b/quartz/path.ts
index 81cdb3a..a0fb223 100644
--- a/quartz/path.ts
+++ b/quartz/path.ts
@@ -7,10 +7,16 @@
 
 // on the client, 'index' isn't ever rendered so we should clean it up
 export function clientSideSlug(fp: string): string {
+  // remove index
   if (fp.endsWith("index")) {
     fp = fp.slice(0, -"index".length)
   }
 
+  // remove trailing slash
+  if (fp.endsWith("/")) {
+    fp = fp.slice(0, -1)
+  }
+
   return fp
 }
 
@@ -23,7 +29,7 @@
 }
 
 export function slugify(s: string): string {
-  const [fp, anchor] = s.split("#", 2)
+  let [fp, anchor] = s.split("#", 2)
   const sluggedAnchor = anchor === undefined ? "" : "#" + slugAnchor(anchor)
   const withoutFileExt = fp.replace(new RegExp(path.extname(fp) + '$'), '')
   const rawSlugSegments = withoutFileExt.split(path.sep)

--
Gitblit v1.10.0