From c2bea8a4c4aeba440b8a7b043d7ece6343a9d263 Mon Sep 17 00:00:00 2001
From: derfalx <kschneider@falx.tech>
Date: Thu, 08 Jan 2026 01:30:42 +0000
Subject: [PATCH] fix(citation): Language parameter for non en-US settings (#2075)
---
quartz/util/ctx.ts | 34 ++++++++++++++++++++++++++++++++--
1 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/quartz/util/ctx.ts b/quartz/util/ctx.ts
index e056114..80115ec 100644
--- a/quartz/util/ctx.ts
+++ b/quartz/util/ctx.ts
@@ -1,20 +1,50 @@
import { QuartzConfig } from "../cfg"
-import { FullSlug } from "./path"
+import { QuartzPluginData } from "../plugins/vfile"
+import { FileTrieNode } from "./fileTrie"
+import { FilePath, FullSlug } from "./path"
export interface Argv {
directory: string
verbose: boolean
output: string
serve: boolean
- fastRebuild: boolean
+ watch: boolean
port: number
wsPort: number
remoteDevHost?: string
concurrency?: number
}
+export type BuildTimeTrieData = QuartzPluginData & {
+ slug: string
+ title: string
+ filePath: string
+}
+
export interface BuildCtx {
+ buildId: string
argv: Argv
cfg: QuartzConfig
allSlugs: FullSlug[]
+ allFiles: FilePath[]
+ trie?: FileTrieNode<BuildTimeTrieData>
+ incremental: boolean
}
+
+export function trieFromAllFiles(allFiles: QuartzPluginData[]): FileTrieNode<BuildTimeTrieData> {
+ const trie = new FileTrieNode<BuildTimeTrieData>([])
+ allFiles.forEach((file) => {
+ if (file.frontmatter) {
+ trie.add({
+ ...file,
+ slug: file.slug!,
+ title: file.frontmatter.title,
+ filePath: file.filePath!,
+ })
+ }
+ })
+
+ return trie
+}
+
+export type WorkerSerializableBuildCtx = Omit<BuildCtx, "cfg" | "trie">
--
Gitblit v1.10.0