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/plugins/emitters/cname.ts |   31 ++++++++++++++++++-------------
 1 files changed, 18 insertions(+), 13 deletions(-)

diff --git a/quartz/plugins/emitters/cname.ts b/quartz/plugins/emitters/cname.ts
index ffe2c6d..64fdbab 100644
--- a/quartz/plugins/emitters/cname.ts
+++ b/quartz/plugins/emitters/cname.ts
@@ -1,7 +1,7 @@
-import { FilePath, joinSegments } from "../../util/path"
 import { QuartzEmitterPlugin } from "../types"
-import fs from "fs"
-import chalk from "chalk"
+import { write } from "./helpers"
+import { styleText } from "util"
+import { FullSlug } from "../../util/path"
 
 export function extractDomainFromBaseUrl(baseUrl: string) {
   const url = new URL(`https://${baseUrl}`)
@@ -10,20 +10,25 @@
 
 export const CNAME: QuartzEmitterPlugin = () => ({
   name: "CNAME",
-  getQuartzComponents() {
-    return []
-  },
-  async emit({ argv, cfg }, _content, _resources, _emit): Promise<FilePath[]> {
-    if (!cfg.configuration.baseUrl) {
-      console.warn(chalk.yellow("CNAME emitter requires `baseUrl` to be set in your configuration"))
+  async emit(ctx) {
+    if (!ctx.cfg.configuration.baseUrl) {
+      console.warn(
+        styleText("yellow", "CNAME emitter requires `baseUrl` to be set in your configuration"),
+      )
       return []
     }
-    const path = joinSegments(argv.output, "CNAME")
-    const content = extractDomainFromBaseUrl(cfg.configuration.baseUrl)
+    const content = extractDomainFromBaseUrl(ctx.cfg.configuration.baseUrl)
     if (!content) {
       return []
     }
-    fs.writeFileSync(path, content)
-    return [path] as FilePath[]
+
+    const path = await write({
+      ctx,
+      content,
+      slug: "CNAME" as FullSlug,
+      ext: "",
+    })
+    return [path]
   },
+  async *partialEmit() {},
 })

--
Gitblit v1.10.0