{"version":3,"file":"google_genai.cjs","names":["_isContentBlock","_isString","_isObject"],"sources":["../../../src/messages/block_translators/google_genai.ts"],"sourcesContent":["import { AIMessage } from \"../ai.js\";\nimport { ContentBlock } from \"../content/index.js\";\nimport type { StandardContentBlockTranslator } from \"./index.js\";\nimport { _isContentBlock, _isObject, _isString } from \"./utils.js\";\n\nfunction convertToV1FromChatGoogleMessage(\n  message: AIMessage\n): Array<ContentBlock.Standard> {\n  // see `libs/providers/langchain-google-genai/src/utils/common.ts:mapGenerateContentResultToChatResult\n  function* iterateContent(): Iterable<ContentBlock.Standard> {\n    const content =\n      typeof message.content === \"string\"\n        ? [{ type: \"text\", text: message.content }]\n        : message.content;\n    for (const block of content) {\n      if (_isContentBlock(block, \"text\") && _isString(block.text)) {\n        yield { type: \"text\", text: block.text };\n        continue;\n      } else if (\n        _isContentBlock(block, \"thinking\") &&\n        _isString(block.thinking)\n      ) {\n        // Handle Google's thinking blocks (converted from Gemini's thought property)\n        yield {\n          type: \"reasoning\",\n          reasoning: block.thinking,\n          ...(block.signature ? { signature: block.signature } : {}),\n        };\n        continue;\n      } else if (\n        _isContentBlock(block, \"inlineData\") &&\n        _isObject(block.inlineData) &&\n        _isString(block.inlineData.mimeType) &&\n        _isString(block.inlineData.data)\n      ) {\n        yield {\n          type: \"file\",\n          mimeType: block.inlineData.mimeType,\n          data: block.inlineData.data,\n        };\n        continue;\n      } else if (\n        _isContentBlock(block, \"functionCall\") &&\n        _isObject(block.functionCall) &&\n        _isString(block.functionCall.name) &&\n        _isObject(block.functionCall.args)\n      ) {\n        yield {\n          type: \"tool_call\",\n          id: message.id,\n          name: block.functionCall.name,\n          args: block.functionCall.args,\n        };\n        continue;\n      } else if (_isContentBlock(block, \"functionResponse\")) {\n        yield { type: \"non_standard\", value: block };\n        continue;\n      } else if (\n        _isContentBlock(block, \"fileData\") &&\n        _isObject(block.fileData) &&\n        _isString(block.fileData.mimeType) &&\n        _isString(block.fileData.fileUri)\n      ) {\n        yield {\n          type: \"file\",\n          mimeType: block.fileData.mimeType,\n          fileId: block.fileData.fileUri,\n        };\n        continue;\n      } else if (_isContentBlock(block, \"executableCode\")) {\n        yield { type: \"non_standard\", value: block };\n        continue;\n      } else if (_isContentBlock(block, \"codeExecutionResult\")) {\n        yield { type: \"non_standard\", value: block };\n        continue;\n      }\n      yield { type: \"non_standard\", value: block };\n    }\n  }\n  return Array.from(iterateContent());\n}\n\nexport const ChatGoogleGenAITranslator: StandardContentBlockTranslator = {\n  translateContent: convertToV1FromChatGoogleMessage,\n  translateContentChunk: convertToV1FromChatGoogleMessage,\n};\n"],"mappings":";;AAKA,SAAS,iCACP,SAC8B;CAE9B,UAAU,iBAAkD;EAC1D,MAAM,UACJ,OAAO,QAAQ,YAAY,WACvB,CAAC;GAAE,MAAM;GAAQ,MAAM,QAAQ;EAAQ,CAAC,IACxC,QAAQ;EACd,KAAK,MAAM,SAAS,SAAS;GAC3B,IAAIA,cAAAA,gBAAgB,OAAO,MAAM,KAAKC,cAAAA,UAAU,MAAM,IAAI,GAAG;IAC3D,MAAM;KAAE,MAAM;KAAQ,MAAM,MAAM;IAAK;IACvC;GACF,OAAO,IACLD,cAAAA,gBAAgB,OAAO,UAAU,KACjCC,cAAAA,UAAU,MAAM,QAAQ,GACxB;IAEA,MAAM;KACJ,MAAM;KACN,WAAW,MAAM;KACjB,GAAI,MAAM,YAAY,EAAE,WAAW,MAAM,UAAU,IAAI,CAAC;IAC1D;IACA;GACF,OAAO,IACLD,cAAAA,gBAAgB,OAAO,YAAY,KACnCE,cAAAA,UAAU,MAAM,UAAU,KAC1BD,cAAAA,UAAU,MAAM,WAAW,QAAQ,KACnCA,cAAAA,UAAU,MAAM,WAAW,IAAI,GAC/B;IACA,MAAM;KACJ,MAAM;KACN,UAAU,MAAM,WAAW;KAC3B,MAAM,MAAM,WAAW;IACzB;IACA;GACF,OAAO,IACLD,cAAAA,gBAAgB,OAAO,cAAc,KACrCE,cAAAA,UAAU,MAAM,YAAY,KAC5BD,cAAAA,UAAU,MAAM,aAAa,IAAI,KACjCC,cAAAA,UAAU,MAAM,aAAa,IAAI,GACjC;IACA,MAAM;KACJ,MAAM;KACN,IAAI,QAAQ;KACZ,MAAM,MAAM,aAAa;KACzB,MAAM,MAAM,aAAa;IAC3B;IACA;GACF,OAAO,IAAIF,cAAAA,gBAAgB,OAAO,kBAAkB,GAAG;IACrD,MAAM;KAAE,MAAM;KAAgB,OAAO;IAAM;IAC3C;GACF,OAAO,IACLA,cAAAA,gBAAgB,OAAO,UAAU,KACjCE,cAAAA,UAAU,MAAM,QAAQ,KACxBD,cAAAA,UAAU,MAAM,SAAS,QAAQ,KACjCA,cAAAA,UAAU,MAAM,SAAS,OAAO,GAChC;IACA,MAAM;KACJ,MAAM;KACN,UAAU,MAAM,SAAS;KACzB,QAAQ,MAAM,SAAS;IACzB;IACA;GACF,OAAO,IAAID,cAAAA,gBAAgB,OAAO,gBAAgB,GAAG;IACnD,MAAM;KAAE,MAAM;KAAgB,OAAO;IAAM;IAC3C;GACF,OAAO,IAAIA,cAAAA,gBAAgB,OAAO,qBAAqB,GAAG;IACxD,MAAM;KAAE,MAAM;KAAgB,OAAO;IAAM;IAC3C;GACF;GACA,MAAM;IAAE,MAAM;IAAgB,OAAO;GAAM;EAC7C;CACF;CACA,OAAO,MAAM,KAAK,eAAe,CAAC;AACpC;AAEA,MAAa,4BAA4D;CACvE,kBAAkB;CAClB,uBAAuB;AACzB"}