import { createHash } from "node:crypto"; export function createMockImageBuffer(input: { title: string; prompt?: string; capability: string; resolution?: string; }): Buffer { const seed = createHash("sha1").update(`${input.capability}:${input.prompt || ""}`).digest("hex"); const colorA = `#${seed.slice(0, 6)}`; const colorB = `#${seed.slice(6, 12)}`; const colorC = `#${seed.slice(12, 18)}`; const prompt = escapeXml(shorten(input.prompt || input.title, 96)); const subtitle = escapeXml(input.resolution ? `${input.capability} / ${input.resolution}` : input.capability); const svg = ` ${prompt} ${subtitle} Mock result: configure Volcengine credentials to call Jimeng Visual API. `; return Buffer.from(svg); } function shorten(value: string, max: number): string { return value.length > max ? `${value.slice(0, max - 1)}...` : value; } function escapeXml(value: string): string { return value .replace(/&/g, "&") .replace(//g, ">") .replace(/"/g, """); }