From ec00a40aefca73596ab76e3ebe3a8e1129b43688 Mon Sep 17 00:00:00 2001
From: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue, 27 Jan 2026 18:27:17 +0000
Subject: [PATCH] chore(deps): bump the production-dependencies group with 4 updates (#2289)

---
 quartz/processors/emit.ts |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/quartz/processors/emit.ts b/quartz/processors/emit.ts
index e69de29..7870295 100644
--- a/quartz/processors/emit.ts
+++ b/quartz/processors/emit.ts
@@ -0,0 +1,50 @@
+import { PerfTimer } from "../util/perf"
+import { getStaticResourcesFromPlugins } from "../plugins"
+import { ProcessedContent } from "../plugins/vfile"
+import { QuartzLogger } from "../util/log"
+import { trace } from "../util/trace"
+import { BuildCtx } from "../util/ctx"
+import { styleText } from "util"
+
+export async function emitContent(ctx: BuildCtx, content: ProcessedContent[]) {
+  const { argv, cfg } = ctx
+  const perf = new PerfTimer()
+  const log = new QuartzLogger(ctx.argv.verbose)
+
+  log.start(`Emitting files`)
+
+  let emittedFiles = 0
+  const staticResources = getStaticResourcesFromPlugins(ctx)
+  await Promise.all(
+    cfg.plugins.emitters.map(async (emitter) => {
+      try {
+        const emitted = await emitter.emit(ctx, content, staticResources)
+        if (Symbol.asyncIterator in emitted) {
+          // Async generator case
+          for await (const file of emitted) {
+            emittedFiles++
+            if (ctx.argv.verbose) {
+              console.log(`[emit:${emitter.name}] ${file}`)
+            } else {
+              log.updateText(`${emitter.name} -> ${styleText("gray", file)}`)
+            }
+          }
+        } else {
+          // Array case
+          emittedFiles += emitted.length
+          for (const file of emitted) {
+            if (ctx.argv.verbose) {
+              console.log(`[emit:${emitter.name}] ${file}`)
+            } else {
+              log.updateText(`${emitter.name} -> ${styleText("gray", file)}`)
+            }
+          }
+        }
+      } catch (err) {
+        trace(`Failed to emit from plugin \`${emitter.name}\``, err as Error)
+      }
+    }),
+  )
+
+  log.end(`Emitted ${emittedFiles} files to \`${argv.output}\` in ${perf.timeSince()}`)
+}

--
Gitblit v1.10.0