From c538c151c7462ad0395ff2c15c5e11e89e362aa8 Mon Sep 17 00:00:00 2001
From: Striven <sg.striven@cutecat.club>
Date: Sat, 04 Apr 2026 19:47:16 +0000
Subject: [PATCH] Initial commit
---
quartz/worker.ts | 39 ++++++++++++++++++++++++++++++---------
1 files changed, 30 insertions(+), 9 deletions(-)
diff --git a/quartz/worker.ts b/quartz/worker.ts
index d97c483..f4cf4c6 100644
--- a/quartz/worker.ts
+++ b/quartz/worker.ts
@@ -1,16 +1,37 @@
+import sourceMapSupport from "source-map-support"
+sourceMapSupport.install(options)
import cfg from "../quartz.config"
-import { Argv, BuildCtx } from "./ctx"
-import { FilePath, ServerSlug } from "./path"
-import { createFileParser, createProcessor } from "./processors/parse"
+import { BuildCtx, WorkerSerializableBuildCtx } from "./util/ctx"
+import { FilePath } from "./util/path"
+import {
+ createFileParser,
+ createHtmlProcessor,
+ createMarkdownParser,
+ createMdProcessor,
+} from "./processors/parse"
+import { options } from "./util/sourcemap"
+import { MarkdownContent, ProcessedContent } from "./plugins/vfile"
// only called from worker thread
-export async function parseFiles(argv: Argv, fps: FilePath[], allSlugs: ServerSlug[]) {
+export async function parseMarkdown(
+ partialCtx: WorkerSerializableBuildCtx,
+ fps: FilePath[],
+): Promise<MarkdownContent[]> {
const ctx: BuildCtx = {
+ ...partialCtx,
cfg,
- argv,
- allSlugs,
}
- const processor = createProcessor(ctx)
- const parse = createFileParser(ctx, fps)
- return parse(processor)
+ return await createFileParser(ctx, fps)(createMdProcessor(ctx))
+}
+
+// only called from worker thread
+export function processHtml(
+ partialCtx: WorkerSerializableBuildCtx,
+ mds: MarkdownContent[],
+): Promise<ProcessedContent[]> {
+ const ctx: BuildCtx = {
+ ...partialCtx,
+ cfg,
+ }
+ return createMarkdownParser(ctx, mds)(createHtmlProcessor(ctx))
}
--
Gitblit v1.10.0