From 2fdc8129b675d4e9090ba214a5a36646e630c817 Mon Sep 17 00:00:00 2001
From: Michael Thomason <mthomason@gmail.com>
Date: Sat, 01 Nov 2025 10:22:29 +0000
Subject: [PATCH] fix(components): prevent infinite recursion from circular transcludes (#2187)
---
quartz/components/types.ts | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/quartz/components/types.ts b/quartz/components/types.ts
index fd9574f..a07601a 100644
--- a/quartz/components/types.ts
+++ b/quartz/components/types.ts
@@ -1,15 +1,17 @@
import { ComponentType, JSX } from "preact"
-import { StaticResources } from "../util/resources"
+import { StaticResources, StringResource } from "../util/resources"
import { QuartzPluginData } from "../plugins/vfile"
import { GlobalConfiguration } from "../cfg"
import { Node } from "hast"
+import { BuildCtx } from "../util/ctx"
export type QuartzComponentProps = {
+ ctx: BuildCtx
externalResources: StaticResources
fileData: QuartzPluginData
cfg: GlobalConfiguration
children: (QuartzComponent | JSX.Element)[]
- tree: Node<QuartzPluginData>
+ tree: Node
allFiles: QuartzPluginData[]
displayClass?: "mobile-only" | "desktop-only"
} & JSX.IntrinsicAttributes & {
@@ -17,9 +19,9 @@
}
export type QuartzComponent = ComponentType<QuartzComponentProps> & {
- css?: string
- beforeDOMLoaded?: string
- afterDOMLoaded?: string
+ css?: StringResource
+ beforeDOMLoaded?: StringResource
+ afterDOMLoaded?: StringResource
}
export type QuartzComponentConstructor<Options extends object | undefined = undefined> = (
--
Gitblit v1.10.0