checkpoint

This commit is contained in:
Jacky Zhao
2025-03-14 09:18:21 -07:00
parent e26658f4ed
commit f528d6139e
30 changed files with 389 additions and 944 deletions

View File

@@ -1,7 +1,7 @@
import sourceMapSupport from "source-map-support"
sourceMapSupport.install(options)
import cfg from "../quartz.config"
import { Argv, BuildCtx } from "./util/ctx"
import { Argv, BuildCtx, WorkerSerializableBuildCtx } from "./util/ctx"
import { FilePath, FullSlug } from "./util/path"
import {
createFileParser,
@@ -14,35 +14,24 @@ import { MarkdownContent, ProcessedContent } from "./plugins/vfile"
// only called from worker thread
export async function parseMarkdown(
buildId: string,
argv: Argv,
partialCtx: WorkerSerializableBuildCtx,
fps: FilePath[],
): Promise<[MarkdownContent[], FullSlug[]]> {
// this is a hack
// we assume markdown parsers can add to `allSlugs`,
// but don't actually use them
const allSlugs: FullSlug[] = []
): Promise<MarkdownContent[]> {
const ctx: BuildCtx = {
buildId,
...partialCtx,
cfg,
argv,
allSlugs,
}
return [await createFileParser(ctx, fps)(createMdProcessor(ctx)), allSlugs]
return await createFileParser(ctx, fps)(createMdProcessor(ctx))
}
// only called from worker thread
export function processHtml(
buildId: string,
argv: Argv,
partialCtx: WorkerSerializableBuildCtx,
mds: MarkdownContent[],
allSlugs: FullSlug[],
): Promise<ProcessedContent[]> {
const ctx: BuildCtx = {
buildId,
...partialCtx,
cfg,
argv,
allSlugs,
}
return createMarkdownParser(ctx, mds)(createHtmlProcessor(ctx))
}