refactor(translator): P4 concern #2 encodeDataUri — dedupe base64 data-uri building

- imageHelper.encodeDataUri(mime, base64) replaces 5 inline `data:${m};base64,${d}` templates
- Applied to gemini/claude/antigravity request + gemini response translators
- Golden tests pass, identical output

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
decolua
2026-06-13 21:23:32 +07:00
parent 4cc667253a
commit 252bf56a9f
5 changed files with 13 additions and 4 deletions

View File

@@ -3,6 +3,7 @@ import { FORMATS } from "../formats.js";
import { buildChunk } from "../helpers/chunkBuilder.js";
import { buildUsage } from "../helpers/usageHelper.js";
import { reasoningDelta } from "../helpers/reasoningHelper.js";
import { encodeDataUri } from "../helpers/imageHelper.js";
// Build chunk meta for current gemini state
function chunkMeta(state) {
@@ -116,7 +117,7 @@ export function geminiToOpenAIResponse(chunk, state) {
{
images: [{
type: "image_url",
image_url: { url: `data:${mimeType};base64,${inlineData.data}` }
image_url: { url: encodeDataUri(mimeType, inlineData.data) }
}]
},
null