diff --git a/src/tools/look-at/mime-type-inference.test.ts b/src/tools/look-at/mime-type-inference.test.ts index ed76e1b4..69ac6e6b 100644 --- a/src/tools/look-at/mime-type-inference.test.ts +++ b/src/tools/look-at/mime-type-inference.test.ts @@ -33,4 +33,9 @@ describe("mime type inference", () => { const base64 = extractBase64Data("data:image/png;base64,abc123") expect(base64).toBe("abc123") }) + + test("extracts raw base64 data from data URL with extra parameters", () => { + const base64 = extractBase64Data("data:image/heic;name=clip.heic;base64,abc123") + expect(base64).toBe("abc123") + }) }) diff --git a/src/tools/look-at/tools.ts b/src/tools/look-at/tools.ts index b7643860..a4c67f05 100644 --- a/src/tools/look-at/tools.ts +++ b/src/tools/look-at/tools.ts @@ -60,7 +60,7 @@ export function createLookAt(ctx: PluginInput): ToolDefinition { if (needsConversion(mimeType)) { log(`[look_at] Detected unsupported Base64 format: ${mimeType}, converting to JPEG...`) try { - const { base64, tempFiles } = convertBase64ImageToJpeg(imageData, mimeType) + const { base64, tempFiles } = convertBase64ImageToJpeg(finalBase64Data, mimeType) finalBase64Data = base64 finalMimeType = "image/jpeg" tempFilesToCleanup = tempFiles