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 |   43 ++++++++++++++++++++++++++++++-------------
 1 files changed, 30 insertions(+), 13 deletions(-)

diff --git a/quartz/processors/emit.ts b/quartz/processors/emit.ts
index c68e0ed..7870295 100644
--- a/quartz/processors/emit.ts
+++ b/quartz/processors/emit.ts
@@ -4,30 +4,47 @@
 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 output files`)
+  log.start(`Emitting files`)
 
   let emittedFiles = 0
   const staticResources = getStaticResourcesFromPlugins(ctx)
-  for (const emitter of cfg.plugins.emitters) {
-    try {
-      const emitted = await emitter.emit(ctx, content, staticResources)
-      emittedFiles += emitted.length
-
-      if (ctx.argv.verbose) {
-        for (const file of emitted) {
-          console.log(`[emit:${emitter.name}] ${file}`)
+  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)
       }
-    } 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