From 23df17233da3f16db5166cf8a05b2089bd1f006a Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Mon, 10 Mar 2025 18:39:08 +0000
Subject: [PATCH] fix(graph): make graph non-singleton, proper cleanup, fix radial
---
quartz/components/types.ts | 32 +++++++++++++++++++++++++++-----
1 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/quartz/components/types.ts b/quartz/components/types.ts
index 96ead5f..a6b90d3 100644
--- a/quartz/components/types.ts
+++ b/quartz/components/types.ts
@@ -1,7 +1,29 @@
-import { ComponentType } from "preact"
+import { ComponentType, JSX } from "preact"
+import { StaticResources } from "../util/resources"
+import { QuartzPluginData } from "../plugins/vfile"
+import { GlobalConfiguration } from "../cfg"
+import { Node } from "hast"
+import { BuildCtx } from "../util/ctx"
-export type QuartzComponent<Props> = ComponentType<Props> & {
- css?: string,
- beforeDOMLoaded?: string,
- afterDOMLoaded?: string,
+export type QuartzComponentProps = {
+ ctx: BuildCtx
+ externalResources: StaticResources
+ fileData: QuartzPluginData
+ cfg: GlobalConfiguration
+ children: (QuartzComponent | JSX.Element)[]
+ tree: Node
+ allFiles: QuartzPluginData[]
+ displayClass?: "mobile-only" | "desktop-only"
+} & JSX.IntrinsicAttributes & {
+ [key: string]: any
+ }
+
+export type QuartzComponent = ComponentType<QuartzComponentProps> & {
+ css?: string
+ beforeDOMLoaded?: string
+ afterDOMLoaded?: string
}
+
+export type QuartzComponentConstructor<Options extends object | undefined = undefined> = (
+ opts: Options,
+) => QuartzComponent
--
Gitblit v1.10.0