From f31cabbbf9b0d438710618a3edd2a4eaaae09d7d Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Mon, 15 Jan 2024 20:37:56 +0000
Subject: [PATCH] fix: dont use default callout title if theres additional title children left (closes #693)
---
quartz/components/scripts/explorer.inline.ts | 28 ++++++++++++++--------------
1 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/quartz/components/scripts/explorer.inline.ts b/quartz/components/scripts/explorer.inline.ts
index 2b7df7d..8e79d20 100644
--- a/quartz/components/scripts/explorer.inline.ts
+++ b/quartz/components/scripts/explorer.inline.ts
@@ -59,8 +59,7 @@
// Save folder state to localStorage
const clickFolderPath = currentFolderParent.dataset.folderpath as string
- // Remove leading "/"
- const fullFolderPath = clickFolderPath.substring(1)
+ const fullFolderPath = clickFolderPath
toggleCollapsedByPath(explorerState, fullFolderPath)
const stringifiedFileTree = JSON.stringify(explorerState)
@@ -108,19 +107,19 @@
explorerState = JSON.parse(storageTree)
explorerState.map((folderUl) => {
// grab <li> element for matching folder path
- const folderLi = document.querySelector(
- `[data-folderpath='/${folderUl.path}']`,
- ) as HTMLElement
+ const folderLi = document.querySelector(`[data-folderpath='${folderUl.path}']`) as HTMLElement
// Get corresponding content <ul> tag and set state
- const folderUL = folderLi.parentElement?.nextElementSibling
- if (folderUL) {
- setFolderState(folderUL as HTMLElement, folderUl.collapsed)
+ if (folderLi) {
+ const folderUL = folderLi.parentElement?.nextElementSibling
+ if (folderUL) {
+ setFolderState(folderUL as HTMLElement, folderUl.collapsed)
+ }
}
})
- } else {
+ } else if (explorer?.dataset.tree) {
// If tree is not in localStorage or config is disabled, use tree passed from Explorer as dataset
- explorerState = JSON.parse(explorer?.dataset.tree as string)
+ explorerState = JSON.parse(explorer.dataset.tree)
}
}
@@ -128,12 +127,13 @@
document.addEventListener("nav", () => {
setupExplorer()
- const explorerContent = document.getElementById("explorer-ul")
+ observer.disconnect()
+
// select pseudo element at end of list
const lastItem = document.getElementById("explorer-end")
-
- observer.disconnect()
- observer.observe(lastItem as Element)
+ if (lastItem) {
+ observer.observe(lastItem)
+ }
})
/**
--
Gitblit v1.10.0