doc(favicon): add documentation of favicon plugin (#1948)

* doc(favicon): add documentation of favicon plugin

* doc(favicon): add missing link to configuration page

* fix(favicon): build on public folder don't created
This commit is contained in:
dralagen
2025-04-29 07:00:28 +02:00
committed by GitHub
parent 8d5b13ee03
commit 6ba9c7c02a
2 changed files with 29 additions and 4 deletions

View File

@ -1,16 +1,22 @@
import sharp from "sharp"
import { joinSegments, QUARTZ, FilePath } from "../../util/path"
import { joinSegments, QUARTZ, FullSlug } from "../../util/path"
import { QuartzEmitterPlugin } from "../types"
import { write } from "./helpers"
import { BuildCtx } from "../../util/ctx"
export const Favicon: QuartzEmitterPlugin = () => ({
name: "Favicon",
async *emit({ argv }) {
const iconPath = joinSegments(QUARTZ, "static", "icon.png")
const dest = joinSegments(argv.output, "favicon.ico") as FilePath
await sharp(iconPath).resize(48, 48).toFormat("png").toFile(dest)
const faviconContent = sharp(iconPath).resize(48, 48).toFormat("png")
yield dest
yield write({
ctx: { argv } as BuildCtx,
slug: "favicon" as FullSlug,
ext: ".ico",
content: faviconContent,
})
},
async *partialEmit() {},
})