fix: fix CNAME path error (#2096)

* fix: fix CNAME path error

* chore: Update quartz/plugins/emitters/cname.ts

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>

* chore: remove unused import

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
This commit is contained in:
Eritque arcus
2025-09-17 16:50:12 -05:00
committed by GitHub
parent ac06a52903
commit 8df8d5c6ef

View File

@@ -1,7 +1,7 @@
import { FilePath, joinSegments } from "../../util/path"
import { QuartzEmitterPlugin } from "../types" import { QuartzEmitterPlugin } from "../types"
import fs from "fs" import { write } from "./helpers"
import { styleText } from "util" import { styleText } from "util"
import { FullSlug } from "../../util/path"
export function extractDomainFromBaseUrl(baseUrl: string) { export function extractDomainFromBaseUrl(baseUrl: string) {
const url = new URL(`https://${baseUrl}`) const url = new URL(`https://${baseUrl}`)
@@ -10,20 +10,25 @@ export function extractDomainFromBaseUrl(baseUrl: string) {
export const CNAME: QuartzEmitterPlugin = () => ({ export const CNAME: QuartzEmitterPlugin = () => ({
name: "CNAME", name: "CNAME",
async emit({ argv, cfg }) { async emit(ctx) {
if (!cfg.configuration.baseUrl) { if (!ctx.cfg.configuration.baseUrl) {
console.warn( console.warn(
styleText("yellow", "CNAME emitter requires `baseUrl` to be set in your configuration"), styleText("yellow", "CNAME emitter requires `baseUrl` to be set in your configuration"),
) )
return [] return []
} }
const path = joinSegments(argv.output, "CNAME") const content = extractDomainFromBaseUrl(ctx.cfg.configuration.baseUrl)
const content = extractDomainFromBaseUrl(cfg.configuration.baseUrl)
if (!content) { if (!content) {
return [] return []
} }
await fs.promises.writeFile(path, content)
return [path] as FilePath[] const path = await write({
ctx,
content,
slug: "CNAME" as FullSlug,
ext: "",
})
return [path]
}, },
async *partialEmit() {}, async *partialEmit() {},
}) })