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/plugins/emitters/ogImage.tsx | 19 +++++++++++++------
1 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/quartz/plugins/emitters/ogImage.tsx b/quartz/plugins/emitters/ogImage.tsx
index 0b78695..813d934 100644
--- a/quartz/plugins/emitters/ogImage.tsx
+++ b/quartz/plugins/emitters/ogImage.tsx
@@ -1,7 +1,7 @@
import { QuartzEmitterPlugin } from "../types"
import { i18n } from "../../i18n"
import { unescapeHTML } from "../../util/escape"
-import { FullSlug, getFileExtension, joinSegments, QUARTZ } from "../../util/path"
+import { FullSlug, getFileExtension, isAbsoluteURL, joinSegments, QUARTZ } from "../../util/path"
import { ImageOptions, SocialImageOptions, defaultImage, getSatoriFonts } from "../../util/og"
import sharp from "sharp"
import satori, { SatoriOptions } from "satori"
@@ -11,7 +11,7 @@
import { BuildCtx } from "../../util/ctx"
import { QuartzPluginData } from "../vfile"
import fs from "node:fs/promises"
-import chalk from "chalk"
+import { styleText } from "util"
const defaultOptions: SocialImageOptions = {
colorScheme: "lightMode",
@@ -36,7 +36,7 @@
const iconData = await fs.readFile(iconPath)
iconBase64 = `data:image/png;base64,${iconData.toString("base64")}`
} catch (err) {
- console.warn(chalk.yellow(`Warning: Could not find icon at ${iconPath}`))
+ console.warn(styleText("yellow", `Warning: Could not find icon at ${iconPath}`))
}
const imageComponent = userOpts.imageStructure({
@@ -55,8 +55,9 @@
fonts,
loadAdditionalAsset: async (languageCode: string, segment: string) => {
if (languageCode === "emoji") {
- return `data:image/svg+xml;base64,${btoa(await loadEmoji(getIconCode(segment)))}`
+ return await loadEmoji(getIconCode(segment))
}
+
return languageCode
},
})
@@ -144,13 +145,19 @@
additionalHead: [
(pageData) => {
const isRealFile = pageData.filePath !== undefined
- const userDefinedOgImagePath = pageData.frontmatter?.socialImage
+ let userDefinedOgImagePath = pageData.frontmatter?.socialImage
+
+ if (userDefinedOgImagePath) {
+ userDefinedOgImagePath = isAbsoluteURL(userDefinedOgImagePath)
+ ? userDefinedOgImagePath
+ : `https://${baseUrl}/static/${userDefinedOgImagePath}`
+ }
+
const generatedOgImagePath = isRealFile
? `https://${baseUrl}/${pageData.slug!}-og-image.webp`
: undefined
const defaultOgImagePath = `https://${baseUrl}/static/og-image.png`
const ogImagePath = userDefinedOgImagePath ?? generatedOgImagePath ?? defaultOgImagePath
-
const ogImageMimeType = `image/${getFileExtension(ogImagePath) ?? "png"}`
return (
<>
--
Gitblit v1.10.0