UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

39 lines (38 loc) • 1.78 kB
import { h as resolveProviderHttpRequestConfig } from "./shared-DRwlUeUJ.mjs"; import "./provider-http-JgjW-z-k.mjs"; import { p as normalizeGoogleGenerativeAiBaseUrl, s as DEFAULT_GOOGLE_API_BASE_URL } from "./provider-policy-BSO8o2tf.mjs"; import { t as parseGeminiAuth } from "./gemini-auth-CUKsnejN.mjs"; import { t as resolveGoogleApiClientHeaders } from "./google-api-client-header-CD7xWInc.mjs"; //#region extensions/google/http-request.ts function resolveTrustedGoogleGenerativeAiBaseUrl(baseUrl) { const normalized = normalizeGoogleGenerativeAiBaseUrl(baseUrl) ?? "https://generativelanguage.googleapis.com/v1beta"; const url = URL.parse(normalized); if (!url) throw new Error("Google Generative AI baseUrl must be a valid https URL on generativelanguage.googleapis.com"); if (url.protocol !== "https:" || url.hostname.toLowerCase() !== "generativelanguage.googleapis.com") throw new Error("Google Generative AI baseUrl must use https://generativelanguage.googleapis.com"); return normalized; } function resolveGoogleGenerativeAiHttpRequestConfig(params) { const baseUrl = resolveTrustedGoogleGenerativeAiBaseUrl(params.baseUrl); return resolveProviderHttpRequestConfig({ baseUrl, defaultBaseUrl: DEFAULT_GOOGLE_API_BASE_URL, allowPrivateNetwork: params.request?.allowPrivateNetwork, headers: params.headers, request: params.request, defaultHeaders: { ...parseGeminiAuth(params.apiKey).headers, ...resolveGoogleApiClientHeaders({ baseUrl, api: "google-generative-ai", capability: params.capability, transport: params.transport }) }, provider: "google", api: "google-generative-ai", capability: params.capability, transport: params.transport }); } //#endregion export { resolveGoogleGenerativeAiHttpRequestConfig as t };