From 5480269d38ffaff7ffd6576d9a9407430429fb2d Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Sun, 09 Mar 2025 21:58:26 +0000
Subject: [PATCH] perf(explorer): client side explorer (#1810)
---
quartz/components/TableOfContents.tsx | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/quartz/components/TableOfContents.tsx b/quartz/components/TableOfContents.tsx
index f3d8d7f..485f434 100644
--- a/quartz/components/TableOfContents.tsx
+++ b/quartz/components/TableOfContents.tsx
@@ -6,6 +6,7 @@
// @ts-ignore
import script from "./scripts/toc.inline"
import { i18n } from "../i18n"
+import OverflowList from "./OverflowList"
interface Options {
layout: "modern" | "legacy"
@@ -49,8 +50,8 @@
<polyline points="6 9 12 15 18 9"></polyline>
</svg>
</button>
- <div id="toc-content">
- <ul class="overflow">
+ <div id="toc-content" class={fileData.collapseToc ? "collapsed" : ""}>
+ <OverflowList id="toc-ul">
{fileData.toc.map((tocEntry) => (
<li key={tocEntry.slug} class={`depth-${tocEntry.depth}`}>
<a href={`#${tocEntry.slug}`} data-for={tocEntry.slug}>
@@ -58,13 +59,13 @@
</a>
</li>
))}
- </ul>
+ </OverflowList>
</div>
</div>
)
}
TableOfContents.css = modernStyle
-TableOfContents.afterDOMLoaded = script
+TableOfContents.afterDOMLoaded = script + OverflowList.afterDOMLoaded("toc-ul")
const LegacyTableOfContents: QuartzComponent = ({ fileData, cfg }: QuartzComponentProps) => {
if (!fileData.toc) {
--
Gitblit v1.10.0