From 39eebca3cfa8adf504d08d54e6fc05912641b40f Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Fri, 09 Aug 2024 01:28:13 +0000
Subject: [PATCH] chore: ts fixes
---
quartz/components/Explorer.tsx | 18 +++++++++++++-----
1 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/quartz/components/Explorer.tsx b/quartz/components/Explorer.tsx
index fdfff23..e4c3dfa 100644
--- a/quartz/components/Explorer.tsx
+++ b/quartz/components/Explorer.tsx
@@ -1,14 +1,15 @@
-import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
+import { QuartzComponent, QuartzComponentConstructor, QuartzComponentProps } from "./types"
import explorerStyle from "./styles/explorer.scss"
// @ts-ignore
import script from "./scripts/explorer.inline"
import { ExplorerNode, FileNode, Options } from "./ExplorerNode"
import { QuartzPluginData } from "../plugins/vfile"
+import { classNames } from "../util/lang"
+import { i18n } from "../i18n"
// Options interface defined in `ExplorerNode` to avoid circular dependency
const defaultOptions = {
- title: "Explorer",
folderClickBehavior: "collapse",
folderDefaultState: "collapsed",
useSavedState: true,
@@ -74,10 +75,15 @@
jsonTree = JSON.stringify(folders)
}
- function Explorer({ allFiles, displayClass, fileData }: QuartzComponentProps) {
+ const Explorer: QuartzComponent = ({
+ cfg,
+ allFiles,
+ displayClass,
+ fileData,
+ }: QuartzComponentProps) => {
constructFileTree(allFiles)
return (
- <div class={`explorer ${displayClass ?? ""}`}>
+ <div class={classNames(displayClass, "explorer")}>
<button
type="button"
id="explorer"
@@ -85,8 +91,10 @@
data-collapsed={opts.folderDefaultState}
data-savestate={opts.useSavedState}
data-tree={jsonTree}
+ aria-controls="explorer-content"
+ aria-expanded={opts.folderDefaultState === "open"}
>
- <h1>{opts.title}</h1>
+ <h2>{opts.title ?? i18n(cfg.locale).components.explorer.title}</h2>
<svg
xmlns="http://www.w3.org/2000/svg"
width="14"
--
Gitblit v1.10.0