UNPKG

nuxt-og-image

Version:

Enlightened OG Image generation for Nuxt.

25 lines (24 loc) 739 B
import { createBrowser } from "#og-image/bindings/chromium"; import { createError } from "h3"; import { createScreenshot } from "./screenshot.js"; const ChromiumRenderer = { name: "chromium", supportedFormats: ["png", "jpeg", "jpg"], async debug() { return {}; }, async createImage(ctx) { const browser = await createBrowser(); const screenshot = await createScreenshot(ctx, browser).catch((e) => e); await browser.close(); if (screenshot instanceof Error) { return createError({ statusCode: 400, cause: screenshot, statusMessage: `[Nuxt OG Image] Failed to create screenshot ${screenshot.message}.` }); } return screenshot; } }; export default ChromiumRenderer;