@opencode-ai/cli-darwin-x64 0.0.0-beta-202606121813 → 0.0.0-beta-202606121946
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/{chunk-r0s7p845.js.map → chunk-08cnw2m5.js.map} +1 -1
- package/bin/{chunk-em8ks5wt.js.map → chunk-0gv89t4k.js.map} +1 -1
- package/bin/{chunk-0qkv377k.js.map → chunk-0hpamfvz.js.map} +1 -1
- package/bin/{chunk-1n0v1ajk.js.map → chunk-0pyqy83v.js.map} +1 -1
- package/bin/{chunk-5byxdd5f.js.map → chunk-15ypt6z3.js.map} +1 -1
- package/bin/{chunk-8t24cd33.js.map → chunk-173gye2m.js.map} +1 -1
- package/bin/{chunk-e5b3hpdp.js.map → chunk-18dgbsc9.js.map} +1 -1
- package/bin/{chunk-txm8q6n2.js.map → chunk-1gc61p3n.js.map} +1 -1
- package/bin/{chunk-g3hjry2p.js.map → chunk-1hfrasnw.js.map} +1 -1
- package/bin/{chunk-vhef1h6t.js.map → chunk-1vgrkngg.js.map} +1 -1
- package/bin/{chunk-cfjxwf3a.js.map → chunk-21448gyw.js.map} +1 -1
- package/bin/{chunk-y1ps3gm8.js.map → chunk-2hhb8qcq.js.map} +1 -1
- package/bin/{chunk-pk7mzkt9.js.map → chunk-2p09gc9t.js.map} +1 -1
- package/bin/{chunk-2x48wn0j.js.map → chunk-2r5e3k66.js.map} +1 -1
- package/bin/{chunk-0e10fcb9.js.map → chunk-3wjcpsnb.js.map} +1 -1
- package/bin/{chunk-s5625g65.js.map → chunk-3y44v6ak.js.map} +1 -1
- package/bin/{chunk-4d8691ye.js.map → chunk-4208mg75.js.map} +1 -1
- package/bin/{chunk-1bhjf5dm.js.map → chunk-47vgzxkw.js.map} +1 -1
- package/bin/{chunk-3xhwvzcn.js.map → chunk-4b4vn305.js.map} +6 -6
- package/bin/{chunk-jjs5hv0d.js.map → chunk-4n0bk705.js.map} +1 -1
- package/bin/{chunk-38g2ypt8.js.map → chunk-5339b1yt.js.map} +1 -1
- package/bin/{chunk-szbf1bt1.js.map → chunk-594f2dbw.js.map} +1 -1
- package/bin/{chunk-g5bb4wje.js.map → chunk-59jha6f2.js.map} +1 -1
- package/bin/{chunk-2e22d407.js.map → chunk-5qr1q16y.js.map} +1 -1
- package/bin/{chunk-ypxfa9zp.js.map → chunk-6h1ykzv4.js.map} +1 -1
- package/bin/chunk-6jj3wth1.js.map +9 -0
- package/bin/chunk-6tck6dwf.js.map +21 -0
- package/bin/chunk-6vs6gfd5.js.map +9 -0
- package/bin/{chunk-407hsk5w.js.map → chunk-6wn9y1r4.js.map} +1 -1
- package/bin/{chunk-n13ccdrt.js.map → chunk-6x1wj9d3.js.map} +1 -1
- package/bin/{chunk-362a5vdq.js.map → chunk-70rw701h.js.map} +1 -1
- package/bin/{chunk-zhtefapz.js.map → chunk-76rkkte5.js.map} +1 -1
- package/bin/{chunk-1cy58qzy.js.map → chunk-7mpm6cq2.js.map} +1 -1
- package/bin/{chunk-ey7phqqz.js.map → chunk-872fwxrp.js.map} +1 -1
- package/bin/chunk-87typhf5.js.map +10 -0
- package/bin/{chunk-k3vtdzgx.js.map → chunk-8cwb40qj.js.map} +11 -7
- package/bin/{chunk-havw9cms.js.map → chunk-8fdbg88c.js.map} +1 -1
- package/bin/{chunk-mqszab5v.js.map → chunk-8ffa50yy.js.map} +1 -1
- package/bin/{chunk-q60tx7dy.js.map → chunk-8fy28et6.js.map} +1 -1
- package/bin/{chunk-cpx09frw.js.map → chunk-8wvaanak.js.map} +1 -1
- package/bin/{chunk-jvt6a8bm.js.map → chunk-8yr4260j.js.map} +1 -1
- package/bin/{chunk-p8a4drte.js.map → chunk-95qxah0k.js.map} +1 -1
- package/bin/{chunk-tdfnzvn4.js.map → chunk-95ybf2wr.js.map} +1 -1
- package/bin/{chunk-bedxxtp4.js.map → chunk-9b0jmm76.js.map} +1 -1
- package/bin/{chunk-eggj7dh7.js.map → chunk-9bmg0dmq.js.map} +1 -1
- package/bin/{chunk-xjsqtg07.js.map → chunk-9cc5s6ek.js.map} +1 -1
- package/bin/chunk-9k9jneyf.js.map +9 -0
- package/bin/{chunk-xwmkj2cq.js.map → chunk-9nyja64q.js.map} +1 -1
- package/bin/{chunk-t1zfs70k.js.map → chunk-9z0ecjyy.js.map} +1 -1
- package/bin/{chunk-kddntr1x.js.map → chunk-aknh1rvg.js.map} +1 -1
- package/bin/{chunk-a6eeya75.js.map → chunk-anq4b5kv.js.map} +1 -1
- package/bin/{chunk-aet75etb.js.map → chunk-atccz1x0.js.map} +1 -1
- package/bin/{chunk-rykxcfxp.js.map → chunk-b52sxmn1.js.map} +1 -1
- package/bin/{chunk-dhdbaw7e.js.map → chunk-b5d51fx8.js.map} +1 -1
- package/bin/{chunk-90dpb97d.js.map → chunk-bkhkz3qd.js.map} +1 -1
- package/bin/{chunk-hdk5gcts.js.map → chunk-c4b0p5bg.js.map} +1 -1
- package/bin/{chunk-zvxsgp1e.js.map → chunk-c9jgh35q.js.map} +1 -1
- package/bin/{chunk-4d6szm9r.js.map → chunk-ca04ffq5.js.map} +1 -1
- package/bin/{chunk-7wh552y3.js.map → chunk-ca8ybc63.js.map} +1 -1
- package/bin/{chunk-m437qkhv.js.map → chunk-ckwsaz55.js.map} +1 -1
- package/bin/{chunk-31b2hjc1.js.map → chunk-ct609a7m.js.map} +1 -1
- package/bin/{chunk-f51k2ev1.js.map → chunk-d05j4qhf.js.map} +1 -1
- package/bin/{chunk-d1fddse0.js.map → chunk-d7ppw1px.js.map} +1 -1
- package/bin/{chunk-98hsg1ba.js.map → chunk-d94xf741.js.map} +1 -1
- package/bin/{chunk-qc1m5x1x.js.map → chunk-dbhd5qeq.js.map} +1 -1
- package/bin/{chunk-c1n223p2.js.map → chunk-dcmeq8h1.js.map} +1 -1
- package/bin/{chunk-yycx03e9.js.map → chunk-e5n63xm8.js.map} +1 -1
- package/bin/{chunk-3csns6fz.js.map → chunk-eggzh3pw.js.map} +1 -1
- package/bin/{chunk-kpj0rkqv.js.map → chunk-ejevqzpn.js.map} +1 -1
- package/bin/{chunk-he68zywr.js.map → chunk-erpvs0qd.js.map} +1 -1
- package/bin/{chunk-mx6m4hs0.js.map → chunk-eve3czsg.js.map} +1 -1
- package/bin/{chunk-nrtpmkmz.js.map → chunk-f2gfs1zg.js.map} +1 -1
- package/bin/{chunk-1tgsm4gg.js.map → chunk-f6cmwzyt.js.map} +1 -1
- package/bin/{chunk-zdw8acm3.js.map → chunk-fcjpst9e.js.map} +1 -1
- package/bin/{chunk-vhaa1gqh.js.map → chunk-fcqmpg76.js.map} +1 -1
- package/bin/{chunk-z5209g3d.js.map → chunk-fh2z22eg.js.map} +1 -1
- package/bin/chunk-fq2zkfmg.js.map +9 -0
- package/bin/{chunk-2jk841qw.js.map → chunk-frqrzsc7.js.map} +1 -1
- package/bin/chunk-fszvrbze.js.map +9 -0
- package/bin/{chunk-9xhp51gf.js.map → chunk-fyfxcqr2.js.map} +1 -1
- package/bin/{chunk-gwpqaxc1.js.map → chunk-g58q7s5x.js.map} +1 -1
- package/bin/{chunk-0qqang1x.js.map → chunk-g75qpec9.js.map} +1 -1
- package/bin/{chunk-ca260any.js.map → chunk-g82czxgj.js.map} +1 -1
- package/bin/{chunk-w8j5jdpw.js.map → chunk-h8vn0nwy.js.map} +1 -1
- package/bin/{chunk-j992zj7f.js.map → chunk-hbhaxtn1.js.map} +1 -1
- package/bin/{chunk-1h678y6t.js.map → chunk-hvrqcwkv.js.map} +1 -1
- package/bin/{chunk-62ycvmyb.js.map → chunk-hvsx1ast.js.map} +1 -1
- package/bin/{chunk-3t9hx6ee.js.map → chunk-j0mtkc0e.js.map} +1 -1
- package/bin/chunk-jbbgj1vt.js.map +9 -0
- package/bin/{chunk-ppkhcndj.js.map → chunk-jm03cfmd.js.map} +1 -1
- package/bin/{chunk-v2210vq9.js.map → chunk-jprrmnfe.js.map} +1 -1
- package/bin/{chunk-r8cg4sz5.js.map → chunk-jxtqnpa5.js.map} +1 -1
- package/bin/{chunk-aj62nxkz.js.map → chunk-jzv8w40h.js.map} +1 -1
- package/bin/{chunk-j20js5f4.js.map → chunk-k5n1zp6r.js.map} +1 -1
- package/bin/{chunk-qthbxhr8.js.map → chunk-k71sk4by.js.map} +1 -1
- package/bin/chunk-k9sxemb0.js.map +9 -0
- package/bin/{chunk-a0c1s5kw.js.map → chunk-k9ymyvtn.js.map} +1 -1
- package/bin/{chunk-jbjxm2yk.js.map → chunk-kk3m2fdb.js.map} +1 -1
- package/bin/{chunk-6kfmfpwq.js.map → chunk-krzqjd2t.js.map} +1 -1
- package/bin/{chunk-g8atvfm1.js.map → chunk-m2w60cvg.js.map} +1 -1
- package/bin/chunk-m8znsyk2.js.map +9 -0
- package/bin/chunk-mm2ns307.js.map +9 -0
- package/bin/chunk-msy0072v.js.map +9 -0
- package/bin/{chunk-70bf9v88.js.map → chunk-n9y30yvk.js.map} +1 -1
- package/bin/{chunk-9a5cj4gh.js.map → chunk-ne0w82ye.js.map} +11 -9
- package/bin/{chunk-wbgypb6p.js.map → chunk-npsmvmxf.js.map} +1 -1
- package/bin/chunk-nx4r80wt.js.map +9 -0
- package/bin/{chunk-fwsmntb6.js.map → chunk-nyqyyw8m.js.map} +1 -1
- package/bin/{chunk-fp4vekp7.js.map → chunk-p0744ry2.js.map} +1 -1
- package/bin/chunk-prfv7c9q.js.map +9 -0
- package/bin/chunk-psxh5t74.js.map +9 -0
- package/bin/{chunk-qmyj1431.js.map → chunk-pw3213df.js.map} +1 -1
- package/bin/chunk-pyss1a2z.js.map +9 -0
- package/bin/{chunk-8dj2jrz4.js.map → chunk-qh4rjj6e.js.map} +1 -1
- package/bin/chunk-qksn2y5e.js.map +9 -0
- package/bin/{chunk-mss7w1yx.js.map → chunk-qqv57zr3.js.map} +1 -1
- package/bin/{chunk-sxncvg0p.js.map → chunk-qvhkbhbp.js.map} +1 -1
- package/bin/{chunk-tgx47was.js.map → chunk-r147yjm5.js.map} +1 -1
- package/bin/{chunk-2a3ztzh1.js.map → chunk-rf3m4gem.js.map} +1 -1
- package/bin/{chunk-nhh63hex.js.map → chunk-s3kd4ss3.js.map} +1 -1
- package/bin/{chunk-rsz32zc2.js.map → chunk-s6qgcdqf.js.map} +1 -1
- package/bin/{chunk-jv41m105.js.map → chunk-s7c7b2q1.js.map} +1 -1
- package/bin/{chunk-mx07a7q3.js.map → chunk-sbgr2bk0.js.map} +1 -1
- package/bin/{chunk-y2k7ecjr.js.map → chunk-snzcx1w4.js.map} +1 -1
- package/bin/{chunk-w4m1xpwc.js.map → chunk-sp68w2qd.js.map} +1 -1
- package/bin/{chunk-kcmkvs96.js.map → chunk-ssswy1vv.js.map} +1 -1
- package/bin/{chunk-hvjx7nt8.js.map → chunk-t0qfr3zr.js.map} +1 -1
- package/bin/{chunk-h6qjd22v.js.map → chunk-tg762knp.js.map} +1 -1
- package/bin/{chunk-6d4cq2cr.js.map → chunk-tvc66f2g.js.map} +1 -1
- package/bin/{chunk-74f99hkk.js.map → chunk-twmcwrhv.js.map} +1 -1
- package/bin/{chunk-r4mxv8z5.js.map → chunk-v5zzdeq3.js.map} +1 -1
- package/bin/{chunk-a2f9f3j2.js.map → chunk-v608zq93.js.map} +1 -1
- package/bin/{chunk-mgbsrkv0.js.map → chunk-v9ew146f.js.map} +1 -1
- package/bin/{chunk-82wq8p07.js.map → chunk-vk0yx0pc.js.map} +1 -1
- package/bin/{chunk-5sshrytz.js.map → chunk-vq38t8hr.js.map} +1 -1
- package/bin/{chunk-6wka5a8v.js.map → chunk-w0810rts.js.map} +1 -1
- package/bin/{chunk-tfnjsnrg.js.map → chunk-w2na7rwr.js.map} +1 -1
- package/bin/{chunk-r7r3w3qc.js.map → chunk-w41dn2z7.js.map} +1 -1
- package/bin/{chunk-ywp3rs3v.js.map → chunk-w814n8fk.js.map} +1 -1
- package/bin/{chunk-secy8x1f.js.map → chunk-wgg65czq.js.map} +1 -1
- package/bin/{chunk-dhm00frt.js.map → chunk-wn59m5a8.js.map} +1 -1
- package/bin/{chunk-1t3gn9nq.js.map → chunk-ws09t5fx.js.map} +1 -1
- package/bin/{chunk-tpnfk2xm.js.map → chunk-wvny6ccb.js.map} +1 -1
- package/bin/{chunk-em6p1zs6.js.map → chunk-x4bd192j.js.map} +1 -1
- package/bin/{chunk-ejjmg19d.js.map → chunk-xfk4w3ej.js.map} +1 -1
- package/bin/{chunk-tctjgma3.js.map → chunk-xrd9cjja.js.map} +1 -1
- package/bin/{chunk-gxpj54db.js.map → chunk-xs6d83ng.js.map} +1 -1
- package/bin/chunk-ys88s4xk.js.map +9 -0
- package/bin/{chunk-v2g16ps9.js.map → chunk-yx6ds8g2.js.map} +1 -1
- package/bin/{chunk-h9x42mmb.js.map → chunk-z4h88tac.js.map} +1 -1
- package/bin/{chunk-g316752a.js.map → chunk-z5qzzrs4.js.map} +1 -1
- package/bin/{chunk-55smze3s.js.map → chunk-z5tvs5p9.js.map} +1 -1
- package/bin/{chunk-6h0nf7qt.js.map → chunk-zpfpfv4s.js.map} +1 -1
- package/bin/{chunk-q69nkcep.js.map → chunk-zssme6cw.js.map} +1 -1
- package/bin/{chunk-chdfbwv0.js.map → chunk-zzvaj1z9.js.map} +1 -1
- package/bin/index.js.map +1 -1
- package/bin/lildax +0 -0
- package/bin/parser.worker.js.map +1 -1
- package/package.json +1 -1
- package/bin/chunk-3m9p7qsc.js.map +0 -9
- package/bin/chunk-5kgpjqbk.js.map +0 -9
- package/bin/chunk-6xnfajhb.js.map +0 -9
- package/bin/chunk-7sjxq84g.js.map +0 -9
- package/bin/chunk-8gvfnf6a.js.map +0 -9
- package/bin/chunk-8gx5z751.js.map +0 -9
- package/bin/chunk-9kcakxm1.js.map +0 -9
- package/bin/chunk-av5q0vhx.js.map +0 -9
- package/bin/chunk-dbn7tqf3.js.map +0 -9
- package/bin/chunk-kcj11tkj.js.map +0 -9
- package/bin/chunk-m8wx7yss.js.map +0 -9
- package/bin/chunk-meakv1gc.js.map +0 -21
- package/bin/chunk-rj5bg2cf.js.map +0 -9
- package/bin/chunk-s4zj3a5e.js.map +0 -9
- package/bin/chunk-v86qxb8e.js.map +0 -9
- package/bin/chunk-w8j68p79.js.map +0 -9
- package/bin/chunk-yqyqb16e.js.map +0 -9
- /package/bin/{chunk-33bgsm24.js.map → chunk-5c17v5pp.js.map} +0 -0
- /package/bin/{chunk-0z0btw5f.js.map → chunk-787yn5mq.js.map} +0 -0
- /package/bin/{chunk-5p2f9nk9.js.map → chunk-7dha589a.js.map} +0 -0
- /package/bin/{chunk-9jhcd2ka.js.map → chunk-de63pjz8.js.map} +0 -0
- /package/bin/{chunk-kq4ys354.js.map → chunk-e24jxrtp.js.map} +0 -0
- /package/bin/{chunk-m08wmdx1.js.map → chunk-jre675g0.js.map} +0 -0
- /package/bin/{chunk-hpvvwjj9.js.map → chunk-kmpr3eyh.js.map} +0 -0
- /package/bin/{chunk-d811r53q.js.map → chunk-ng5ms3ew.js.map} +0 -0
- /package/bin/{chunk-p4yfwbpb.js.map → chunk-qnxm18as.js.map} +0 -0
- /package/bin/{chunk-1bkhx4w0.js.map → chunk-r6srtcqy.js.map} +0 -0
- /package/bin/{chunk-qayj363z.js.map → chunk-sv8qjqar.js.map} +0 -0
- /package/bin/{chunk-t93zk4s6.js.map → chunk-syn646aj.js.map} +0 -0
- /package/bin/{chunk-f8znsg7k.js.map → chunk-tfsvvvnm.js.map} +0 -0
- /package/bin/{chunk-bd1jj4jb.js.map → chunk-xyz1vksx.js.map} +0 -0
- /package/bin/{chunk-8y90ydtp.js.map → chunk-z5qt3c7m.js.map} +0 -0
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"import type { LanguageModelV3 } from \"@ai-sdk/provider\"\nimport { type FetchFunction, withoutTrailingSlash, withUserAgentSuffix } from \"@ai-sdk/provider-utils\"\nimport { OpenAICompatibleChatLanguageModel } from \"./chat/openai-compatible-chat-language-model\"\nimport { OpenAIResponsesLanguageModel } from \"./responses/openai-responses-language-model\"\n\n// Import the version or define it\nconst VERSION = \"0.1.0\"\n\nexport type OpenaiCompatibleModelId = string\n\nexport interface OpenaiCompatibleProviderSettings {\n /**\n * API key for authenticating requests.\n */\n apiKey?: string\n\n /**\n * Base URL for the OpenAI Compatible API calls.\n */\n baseURL?: string\n\n /**\n * Name of the provider.\n */\n name?: string\n\n /**\n * Custom headers to include in the requests.\n */\n headers?: Record<string, string>\n\n /**\n * Custom fetch implementation.\n */\n fetch?: FetchFunction\n}\n\nexport interface OpenaiCompatibleProvider {\n (modelId: OpenaiCompatibleModelId): LanguageModelV3\n chat(modelId: OpenaiCompatibleModelId): LanguageModelV3\n responses(modelId: OpenaiCompatibleModelId): LanguageModelV3\n languageModel(modelId: OpenaiCompatibleModelId): LanguageModelV3\n\n // embeddingModel(modelId: any): EmbeddingModelV2\n\n // imageModel(modelId: any): ImageModelV2\n}\n\n/**\n * Create an OpenAI Compatible provider instance.\n */\nexport function createOpenaiCompatible(options: OpenaiCompatibleProviderSettings = {}): OpenaiCompatibleProvider {\n const baseURL = withoutTrailingSlash(options.baseURL ?? \"https://api.openai.com/v1\")\n\n if (!baseURL) {\n throw new Error(\"baseURL is required\")\n }\n\n // Merge headers: defaults first, then user overrides\n const headers = {\n // Default OpenAI Compatible headers (can be overridden by user)\n ...(options.apiKey && { Authorization: `Bearer ${options.apiKey}` }),\n ...options.headers,\n }\n\n const getHeaders = () => withUserAgentSuffix(headers, `ai-sdk/openai-compatible/${VERSION}`)\n\n const createChatModel = (modelId: OpenaiCompatibleModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n provider: `${options.name ?? \"openai-compatible\"}.chat`,\n headers: getHeaders,\n url: ({ path }) => `${baseURL}${path}`,\n fetch: options.fetch,\n })\n }\n\n const createResponsesModel = (modelId: OpenaiCompatibleModelId) => {\n return new OpenAIResponsesLanguageModel(modelId, {\n provider: `${options.name ?? \"openai-compatible\"}.responses`,\n headers: getHeaders,\n url: ({ path }) => `${baseURL}${path}`,\n fetch: options.fetch,\n })\n }\n\n const createLanguageModel = (modelId: OpenaiCompatibleModelId) => createChatModel(modelId)\n\n const provider = function (modelId: OpenaiCompatibleModelId) {\n return createChatModel(modelId)\n }\n\n provider.languageModel = createLanguageModel\n provider.chat = createChatModel\n provider.responses = createResponsesModel\n\n return provider as OpenaiCompatibleProvider\n}\n\n// Default OpenAI Compatible provider instance\nexport const openaiCompatible = createOpenaiCompatible()\n"
|
|
24
24
|
],
|
|
25
25
|
"mappings": "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",
|
|
26
|
-
"debugId": "
|
|
26
|
+
"debugId": "65179B5F5C010B0164756E2164756E21",
|
|
27
27
|
"names": []
|
|
28
28
|
}
|
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
"// src/google-generative-ai-language-model.ts\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n generateId,\n lazySchema as lazySchema3,\n parseProviderOptions,\n postJsonToApi,\n resolve,\n zodSchema as zodSchema3\n} from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod/v4\";\n\n// src/convert-google-generative-ai-usage.ts\nfunction convertGoogleGenerativeAIUsage(usage) {\n var _a, _b, _c, _d;\n if (usage == null) {\n return {\n inputTokens: {\n total: void 0,\n noCache: void 0,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: void 0,\n text: void 0,\n reasoning: void 0\n },\n raw: void 0\n };\n }\n const promptTokens = (_a = usage.promptTokenCount) != null ? _a : 0;\n const candidatesTokens = (_b = usage.candidatesTokenCount) != null ? _b : 0;\n const cachedContentTokens = (_c = usage.cachedContentTokenCount) != null ? _c : 0;\n const thoughtsTokens = (_d = usage.thoughtsTokenCount) != null ? _d : 0;\n return {\n inputTokens: {\n total: promptTokens,\n noCache: promptTokens - cachedContentTokens,\n cacheRead: cachedContentTokens,\n cacheWrite: void 0\n },\n outputTokens: {\n total: candidatesTokens + thoughtsTokens,\n text: candidatesTokens,\n reasoning: thoughtsTokens\n },\n raw: usage\n };\n}\n\n// src/convert-json-schema-to-openapi-schema.ts\nfunction convertJSONSchemaToOpenAPISchema(jsonSchema, isRoot = true) {\n if (jsonSchema == null) {\n return void 0;\n }\n if (isEmptyObjectSchema(jsonSchema)) {\n if (isRoot) {\n return void 0;\n }\n if (typeof jsonSchema === \"object\" && jsonSchema.description) {\n return { type: \"object\", description: jsonSchema.description };\n }\n return { type: \"object\" };\n }\n if (typeof jsonSchema === \"boolean\") {\n return { type: \"boolean\", properties: {} };\n }\n const {\n type,\n description,\n required,\n properties,\n items,\n allOf,\n anyOf,\n oneOf,\n format,\n const: constValue,\n minLength,\n enum: enumValues\n } = jsonSchema;\n const result = {};\n if (description) result.description = description;\n if (required) result.required = required;\n if (format) result.format = format;\n if (constValue !== void 0) {\n result.enum = [constValue];\n }\n if (type) {\n if (Array.isArray(type)) {\n const hasNull = type.includes(\"null\");\n const nonNullTypes = type.filter((t) => t !== \"null\");\n if (nonNullTypes.length === 0) {\n result.type = \"null\";\n } else {\n result.anyOf = nonNullTypes.map((t) => ({ type: t }));\n if (hasNull) {\n result.nullable = true;\n }\n }\n } else {\n result.type = type;\n }\n }\n if (enumValues !== void 0) {\n result.enum = enumValues;\n }\n if (properties != null) {\n result.properties = Object.entries(properties).reduce(\n (acc, [key, value]) => {\n acc[key] = convertJSONSchemaToOpenAPISchema(value, false);\n return acc;\n },\n {}\n );\n }\n if (items) {\n result.items = Array.isArray(items) ? items.map((item) => convertJSONSchemaToOpenAPISchema(item, false)) : convertJSONSchemaToOpenAPISchema(items, false);\n }\n if (allOf) {\n result.allOf = allOf.map(\n (item) => convertJSONSchemaToOpenAPISchema(item, false)\n );\n }\n if (anyOf) {\n if (anyOf.some(\n (schema) => typeof schema === \"object\" && (schema == null ? void 0 : schema.type) === \"null\"\n )) {\n const nonNullSchemas = anyOf.filter(\n (schema) => !(typeof schema === \"object\" && (schema == null ? void 0 : schema.type) === \"null\")\n );\n if (nonNullSchemas.length === 1) {\n const converted = convertJSONSchemaToOpenAPISchema(\n nonNullSchemas[0],\n false\n );\n if (typeof converted === \"object\") {\n result.nullable = true;\n Object.assign(result, converted);\n }\n } else {\n result.anyOf = nonNullSchemas.map(\n (item) => convertJSONSchemaToOpenAPISchema(item, false)\n );\n result.nullable = true;\n }\n } else {\n result.anyOf = anyOf.map(\n (item) => convertJSONSchemaToOpenAPISchema(item, false)\n );\n }\n }\n if (oneOf) {\n result.oneOf = oneOf.map(\n (item) => convertJSONSchemaToOpenAPISchema(item, false)\n );\n }\n if (minLength !== void 0) {\n result.minLength = minLength;\n }\n return result;\n}\nfunction isEmptyObjectSchema(jsonSchema) {\n return jsonSchema != null && typeof jsonSchema === \"object\" && jsonSchema.type === \"object\" && (jsonSchema.properties == null || Object.keys(jsonSchema.properties).length === 0) && !jsonSchema.additionalProperties;\n}\n\n// src/convert-to-google-generative-ai-messages.ts\nimport {\n UnsupportedFunctionalityError\n} from \"@ai-sdk/provider\";\nimport { convertToBase64 } from \"@ai-sdk/provider-utils\";\nvar dataUrlRegex = /^data:([^;,]+);base64,(.+)$/s;\nfunction parseBase64DataUrl(value) {\n const match = dataUrlRegex.exec(value);\n if (match == null) {\n return void 0;\n }\n return {\n mediaType: match[1],\n data: match[2]\n };\n}\nfunction convertUrlToolResultPart(url) {\n const parsedDataUrl = parseBase64DataUrl(url);\n if (parsedDataUrl == null) {\n return void 0;\n }\n return {\n inlineData: {\n mimeType: parsedDataUrl.mediaType,\n data: parsedDataUrl.data\n }\n };\n}\nfunction appendToolResultParts(parts, toolName, outputValue) {\n const functionResponseParts = [];\n const responseTextParts = [];\n for (const contentPart of outputValue) {\n switch (contentPart.type) {\n case \"text\": {\n responseTextParts.push(contentPart.text);\n break;\n }\n case \"image-data\":\n case \"file-data\": {\n functionResponseParts.push({\n inlineData: {\n mimeType: contentPart.mediaType,\n data: contentPart.data\n }\n });\n break;\n }\n case \"image-url\":\n case \"file-url\": {\n const functionResponsePart = convertUrlToolResultPart(\n contentPart.url\n );\n if (functionResponsePart != null) {\n functionResponseParts.push(functionResponsePart);\n } else {\n responseTextParts.push(JSON.stringify(contentPart));\n }\n break;\n }\n default: {\n responseTextParts.push(JSON.stringify(contentPart));\n break;\n }\n }\n }\n parts.push({\n functionResponse: {\n name: toolName,\n response: {\n name: toolName,\n content: responseTextParts.length > 0 ? responseTextParts.join(\"\\n\") : \"Tool executed successfully.\"\n },\n ...functionResponseParts.length > 0 ? { parts: functionResponseParts } : {}\n }\n });\n}\nfunction appendLegacyToolResultParts(parts, toolName, outputValue) {\n for (const contentPart of outputValue) {\n switch (contentPart.type) {\n case \"text\":\n parts.push({\n functionResponse: {\n name: toolName,\n response: {\n name: toolName,\n content: contentPart.text\n }\n }\n });\n break;\n case \"image-data\":\n parts.push(\n {\n inlineData: {\n mimeType: String(contentPart.mediaType),\n data: String(contentPart.data)\n }\n },\n {\n text: \"Tool executed successfully and returned this image as a response\"\n }\n );\n break;\n default:\n parts.push({ text: JSON.stringify(contentPart) });\n break;\n }\n }\n}\nfunction convertToGoogleGenerativeAIMessages(prompt, options) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n const systemInstructionParts = [];\n const contents = [];\n let systemMessagesAllowed = true;\n const isGemmaModel = (_a = options == null ? void 0 : options.isGemmaModel) != null ? _a : false;\n const providerOptionsName = (_b = options == null ? void 0 : options.providerOptionsName) != null ? _b : \"google\";\n const supportsFunctionResponseParts = (_c = options == null ? void 0 : options.supportsFunctionResponseParts) != null ? _c : true;\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n if (!systemMessagesAllowed) {\n throw new UnsupportedFunctionalityError({\n functionality: \"system messages are only supported at the beginning of the conversation\"\n });\n }\n systemInstructionParts.push({ text: content });\n break;\n }\n case \"user\": {\n systemMessagesAllowed = false;\n const parts = [];\n for (const part of content) {\n switch (part.type) {\n case \"text\": {\n parts.push({ text: part.text });\n break;\n }\n case \"file\": {\n const mediaType = part.mediaType === \"image/*\" ? \"image/jpeg\" : part.mediaType;\n parts.push(\n part.data instanceof URL ? {\n fileData: {\n mimeType: mediaType,\n fileUri: part.data.toString()\n }\n } : {\n inlineData: {\n mimeType: mediaType,\n data: convertToBase64(part.data)\n }\n }\n );\n break;\n }\n }\n }\n contents.push({ role: \"user\", parts });\n break;\n }\n case \"assistant\": {\n systemMessagesAllowed = false;\n contents.push({\n role: \"model\",\n parts: content.map((part) => {\n var _a2, _b2, _c2, _d2;\n const providerOpts = (_d2 = (_a2 = part.providerOptions) == null ? void 0 : _a2[providerOptionsName]) != null ? _d2 : providerOptionsName !== \"google\" ? (_b2 = part.providerOptions) == null ? void 0 : _b2.google : (_c2 = part.providerOptions) == null ? void 0 : _c2.vertex;\n const thoughtSignature = (providerOpts == null ? void 0 : providerOpts.thoughtSignature) != null ? String(providerOpts.thoughtSignature) : void 0;\n switch (part.type) {\n case \"text\": {\n return part.text.length === 0 ? void 0 : {\n text: part.text,\n thoughtSignature\n };\n }\n case \"reasoning\": {\n return part.text.length === 0 ? void 0 : {\n text: part.text,\n thought: true,\n thoughtSignature\n };\n }\n case \"file\": {\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality: \"File data URLs in assistant messages are not supported\"\n });\n }\n return {\n inlineData: {\n mimeType: part.mediaType,\n data: convertToBase64(part.data)\n },\n ...(providerOpts == null ? void 0 : providerOpts.thought) === true ? { thought: true } : {},\n thoughtSignature\n };\n }\n case \"tool-call\": {\n const serverToolCallId = (providerOpts == null ? void 0 : providerOpts.serverToolCallId) != null ? String(providerOpts.serverToolCallId) : void 0;\n const serverToolType = (providerOpts == null ? void 0 : providerOpts.serverToolType) != null ? String(providerOpts.serverToolType) : void 0;\n if (serverToolCallId && serverToolType) {\n return {\n toolCall: {\n toolType: serverToolType,\n args: typeof part.input === \"string\" ? JSON.parse(part.input) : part.input,\n id: serverToolCallId\n },\n thoughtSignature\n };\n }\n return {\n functionCall: {\n name: part.toolName,\n args: part.input\n },\n thoughtSignature\n };\n }\n case \"tool-result\": {\n const serverToolCallId = (providerOpts == null ? void 0 : providerOpts.serverToolCallId) != null ? String(providerOpts.serverToolCallId) : void 0;\n const serverToolType = (providerOpts == null ? void 0 : providerOpts.serverToolType) != null ? String(providerOpts.serverToolType) : void 0;\n if (serverToolCallId && serverToolType) {\n return {\n toolResponse: {\n toolType: serverToolType,\n response: part.output.type === \"json\" ? part.output.value : {},\n id: serverToolCallId\n },\n thoughtSignature\n };\n }\n return void 0;\n }\n }\n }).filter((part) => part !== void 0)\n });\n if (contents[contents.length - 1].parts.length === 0) {\n contents.pop();\n }\n break;\n }\n case \"tool\": {\n systemMessagesAllowed = false;\n const parts = [];\n for (const part of content) {\n if (part.type === \"tool-approval-response\") {\n continue;\n }\n const partProviderOpts = (_g = (_d = part.providerOptions) == null ? void 0 : _d[providerOptionsName]) != null ? _g : providerOptionsName !== \"google\" ? (_e = part.providerOptions) == null ? void 0 : _e.google : (_f = part.providerOptions) == null ? void 0 : _f.vertex;\n const serverToolCallId = (partProviderOpts == null ? void 0 : partProviderOpts.serverToolCallId) != null ? String(partProviderOpts.serverToolCallId) : void 0;\n const serverToolType = (partProviderOpts == null ? void 0 : partProviderOpts.serverToolType) != null ? String(partProviderOpts.serverToolType) : void 0;\n if (serverToolCallId && serverToolType) {\n const serverThoughtSignature = (partProviderOpts == null ? void 0 : partProviderOpts.thoughtSignature) != null ? String(partProviderOpts.thoughtSignature) : void 0;\n if (contents.length > 0) {\n const lastContent = contents[contents.length - 1];\n if (lastContent.role === \"model\") {\n lastContent.parts.push({\n toolResponse: {\n toolType: serverToolType,\n response: part.output.type === \"json\" ? part.output.value : {},\n id: serverToolCallId\n },\n thoughtSignature: serverThoughtSignature\n });\n continue;\n }\n }\n }\n const output = part.output;\n if (output.type === \"content\") {\n if (supportsFunctionResponseParts) {\n appendToolResultParts(parts, part.toolName, output.value);\n } else {\n appendLegacyToolResultParts(parts, part.toolName, output.value);\n }\n } else {\n parts.push({\n functionResponse: {\n name: part.toolName,\n response: {\n name: part.toolName,\n content: output.type === \"execution-denied\" ? (_h = output.reason) != null ? _h : \"Tool execution denied.\" : output.value\n }\n }\n });\n }\n }\n contents.push({\n role: \"user\",\n parts\n });\n break;\n }\n }\n }\n if (isGemmaModel && systemInstructionParts.length > 0 && contents.length > 0 && contents[0].role === \"user\") {\n const systemText = systemInstructionParts.map((part) => part.text).join(\"\\n\\n\");\n contents[0].parts.unshift({ text: systemText + \"\\n\\n\" });\n }\n return {\n systemInstruction: systemInstructionParts.length > 0 && !isGemmaModel ? { parts: systemInstructionParts } : void 0,\n contents\n };\n}\n\n// src/get-model-path.ts\nfunction getModelPath(modelId) {\n return modelId.includes(\"/\") ? modelId : `models/${modelId}`;\n}\n\n// src/google-error.ts\nimport {\n createJsonErrorResponseHandler,\n lazySchema,\n zodSchema\n} from \"@ai-sdk/provider-utils\";\nimport { z } from \"zod/v4\";\nvar googleErrorDataSchema = lazySchema(\n () => zodSchema(\n z.object({\n error: z.object({\n code: z.number().nullable(),\n message: z.string(),\n status: z.string()\n })\n })\n )\n);\nvar googleFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: googleErrorDataSchema,\n errorToMessage: (data) => data.error.message\n});\n\n// src/google-generative-ai-options.ts\nimport {\n lazySchema as lazySchema2,\n zodSchema as zodSchema2\n} from \"@ai-sdk/provider-utils\";\nimport { z as z2 } from \"zod/v4\";\nvar googleLanguageModelOptions = lazySchema2(\n () => zodSchema2(\n z2.object({\n responseModalities: z2.array(z2.enum([\"TEXT\", \"IMAGE\"])).optional(),\n thinkingConfig: z2.object({\n thinkingBudget: z2.number().optional(),\n includeThoughts: z2.boolean().optional(),\n // https://ai.google.dev/gemini-api/docs/gemini-3?thinking=high#thinking_level\n thinkingLevel: z2.enum([\"minimal\", \"low\", \"medium\", \"high\"]).optional()\n }).optional(),\n /**\n * Optional.\n * The name of the cached content used as context to serve the prediction.\n * Format: cachedContents/{cachedContent}\n */\n cachedContent: z2.string().optional(),\n /**\n * Optional. Enable structured output. Default is true.\n *\n * This is useful when the JSON Schema contains elements that are\n * not supported by the OpenAPI schema version that\n * Google Generative AI uses. You can use this to disable\n * structured outputs if you need to.\n */\n structuredOutputs: z2.boolean().optional(),\n /**\n * Optional. A list of unique safety settings for blocking unsafe content.\n */\n safetySettings: z2.array(\n z2.object({\n category: z2.enum([\n \"HARM_CATEGORY_UNSPECIFIED\",\n \"HARM_CATEGORY_HATE_SPEECH\",\n \"HARM_CATEGORY_DANGEROUS_CONTENT\",\n \"HARM_CATEGORY_HARASSMENT\",\n \"HARM_CATEGORY_SEXUALLY_EXPLICIT\",\n \"HARM_CATEGORY_CIVIC_INTEGRITY\"\n ]),\n threshold: z2.enum([\n \"HARM_BLOCK_THRESHOLD_UNSPECIFIED\",\n \"BLOCK_LOW_AND_ABOVE\",\n \"BLOCK_MEDIUM_AND_ABOVE\",\n \"BLOCK_ONLY_HIGH\",\n \"BLOCK_NONE\",\n \"OFF\"\n ])\n })\n ).optional(),\n threshold: z2.enum([\n \"HARM_BLOCK_THRESHOLD_UNSPECIFIED\",\n \"BLOCK_LOW_AND_ABOVE\",\n \"BLOCK_MEDIUM_AND_ABOVE\",\n \"BLOCK_ONLY_HIGH\",\n \"BLOCK_NONE\",\n \"OFF\"\n ]).optional(),\n /**\n * Optional. Enables timestamp understanding for audio-only files.\n *\n * https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/audio-understanding\n */\n audioTimestamp: z2.boolean().optional(),\n /**\n * Optional. Defines labels used in billing reports. Available on Vertex AI only.\n *\n * https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/add-labels-to-api-calls\n */\n labels: z2.record(z2.string(), z2.string()).optional(),\n /**\n * Optional. If specified, the media resolution specified will be used.\n *\n * https://ai.google.dev/api/generate-content#MediaResolution\n */\n mediaResolution: z2.enum([\n \"MEDIA_RESOLUTION_UNSPECIFIED\",\n \"MEDIA_RESOLUTION_LOW\",\n \"MEDIA_RESOLUTION_MEDIUM\",\n \"MEDIA_RESOLUTION_HIGH\"\n ]).optional(),\n /**\n * Optional. Configures the image generation aspect ratio for Gemini models.\n *\n * https://ai.google.dev/gemini-api/docs/image-generation#aspect_ratios\n */\n imageConfig: z2.object({\n aspectRatio: z2.enum([\n \"1:1\",\n \"2:3\",\n \"3:2\",\n \"3:4\",\n \"4:3\",\n \"4:5\",\n \"5:4\",\n \"9:16\",\n \"16:9\",\n \"21:9\",\n \"1:8\",\n \"8:1\",\n \"1:4\",\n \"4:1\"\n ]).optional(),\n imageSize: z2.enum([\"1K\", \"2K\", \"4K\", \"512\"]).optional()\n }).optional(),\n /**\n * Optional. Configuration for grounding retrieval.\n * Used to provide location context for Google Maps and Google Search grounding.\n *\n * https://cloud.google.com/vertex-ai/generative-ai/docs/grounding/grounding-with-google-maps\n */\n retrievalConfig: z2.object({\n latLng: z2.object({\n latitude: z2.number(),\n longitude: z2.number()\n }).optional()\n }).optional(),\n /**\n * Optional. When set to true, function call arguments will be streamed\n * incrementally via partialArgs in streaming responses. Only supported\n * on the Vertex AI API (not the Gemini API) and only for Gemini 3+\n * models.\n *\n * @default false\n *\n * https://docs.cloud.google.com/vertex-ai/generative-ai/docs/multimodal/function-calling#streaming-fc\n */\n streamFunctionCallArguments: z2.boolean().optional(),\n /**\n * Optional. The service tier to use for the request.\n */\n serviceTier: z2.enum([\"standard\", \"flex\", \"priority\"]).optional()\n })\n )\n);\nvar VertexServiceTierMap = {\n standard: \"SERVICE_TIER_STANDARD\",\n flex: \"SERVICE_TIER_FLEX\",\n priority: \"SERVICE_TIER_PRIORITY\"\n};\n\n// src/google-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareTools({\n tools,\n toolChoice,\n modelId,\n isVertexProvider = false\n}) {\n var _a, _b;\n tools = (tools == null ? void 0 : tools.length) ? tools : void 0;\n const toolWarnings = [];\n const isLatest = [\n \"gemini-flash-latest\",\n \"gemini-flash-lite-latest\",\n \"gemini-pro-latest\"\n ].some((id) => id === modelId);\n const isGemini2orNewer = modelId.includes(\"gemini-2\") || modelId.includes(\"gemini-3\") || modelId.includes(\"nano-banana\") || isLatest;\n const isGemini3orNewer = modelId.includes(\"gemini-3\");\n const supportsFileSearch = modelId.includes(\"gemini-2.5\") || modelId.includes(\"gemini-3\");\n if (tools == null) {\n return { tools: void 0, toolConfig: void 0, toolWarnings };\n }\n const hasFunctionTools = tools.some((tool) => tool.type === \"function\");\n const hasProviderTools = tools.some((tool) => tool.type === \"provider\");\n if (hasFunctionTools && hasProviderTools && !isGemini3orNewer) {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `combination of function and provider-defined tools`\n });\n }\n if (hasProviderTools) {\n const googleTools2 = [];\n const ProviderTools = tools.filter((tool) => tool.type === \"provider\");\n ProviderTools.forEach((tool) => {\n switch (tool.id) {\n case \"google.google_search\":\n if (isGemini2orNewer) {\n googleTools2.push({ googleSearch: { ...tool.args } });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"Google Search requires Gemini 2.0 or newer.\"\n });\n }\n break;\n case \"google.enterprise_web_search\":\n if (isGemini2orNewer) {\n googleTools2.push({ enterpriseWebSearch: {} });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"Enterprise Web Search requires Gemini 2.0 or newer.\"\n });\n }\n break;\n case \"google.url_context\":\n if (isGemini2orNewer) {\n googleTools2.push({ urlContext: {} });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"The URL context tool is not supported with other Gemini models than Gemini 2.\"\n });\n }\n break;\n case \"google.code_execution\":\n if (isGemini2orNewer) {\n googleTools2.push({ codeExecution: {} });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"The code execution tool is not supported with other Gemini models than Gemini 2.\"\n });\n }\n break;\n case \"google.file_search\":\n if (supportsFileSearch) {\n googleTools2.push({ fileSearch: { ...tool.args } });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"The file search tool is only supported with Gemini 2.5 models and Gemini 3 models.\"\n });\n }\n break;\n case \"google.vertex_rag_store\":\n if (isGemini2orNewer) {\n googleTools2.push({\n retrieval: {\n vertex_rag_store: {\n rag_resources: {\n rag_corpus: tool.args.ragCorpus\n },\n similarity_top_k: tool.args.topK\n }\n }\n });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"The RAG store tool is not supported with other Gemini models than Gemini 2.\"\n });\n }\n break;\n case \"google.google_maps\":\n if (isGemini2orNewer) {\n googleTools2.push({ googleMaps: {} });\n } else {\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`,\n details: \"The Google Maps grounding tool is not supported with Gemini models other than Gemini 2 or newer.\"\n });\n }\n break;\n default:\n toolWarnings.push({\n type: \"unsupported\",\n feature: `provider-defined tool ${tool.id}`\n });\n break;\n }\n });\n if (hasFunctionTools && isGemini3orNewer && googleTools2.length > 0) {\n const functionDeclarations2 = [];\n for (const tool of tools) {\n if (tool.type === \"function\") {\n functionDeclarations2.push({\n name: tool.name,\n description: (_a = tool.description) != null ? _a : \"\",\n parameters: convertJSONSchemaToOpenAPISchema(tool.inputSchema)\n });\n }\n }\n const combinedToolConfig = {\n functionCallingConfig: { mode: \"VALIDATED\" },\n ...!isVertexProvider && {\n includeServerSideToolInvocations: true\n }\n };\n if (toolChoice != null) {\n switch (toolChoice.type) {\n case \"auto\":\n break;\n case \"none\":\n combinedToolConfig.functionCallingConfig = { mode: \"NONE\" };\n break;\n case \"required\":\n combinedToolConfig.functionCallingConfig = { mode: \"ANY\" };\n break;\n case \"tool\":\n combinedToolConfig.functionCallingConfig = {\n mode: \"ANY\",\n allowedFunctionNames: [toolChoice.toolName]\n };\n break;\n }\n }\n return {\n tools: [...googleTools2, { functionDeclarations: functionDeclarations2 }],\n toolConfig: combinedToolConfig,\n toolWarnings\n };\n }\n return {\n tools: googleTools2.length > 0 ? googleTools2 : void 0,\n toolConfig: void 0,\n toolWarnings\n };\n }\n const functionDeclarations = [];\n let hasStrictTools = false;\n for (const tool of tools) {\n switch (tool.type) {\n case \"function\":\n functionDeclarations.push({\n name: tool.name,\n description: (_b = tool.description) != null ? _b : \"\",\n parameters: convertJSONSchemaToOpenAPISchema(tool.inputSchema)\n });\n if (tool.strict === true) {\n hasStrictTools = true;\n }\n break;\n default:\n toolWarnings.push({\n type: \"unsupported\",\n feature: `function tool ${tool.name}`\n });\n break;\n }\n }\n if (toolChoice == null) {\n return {\n tools: [{ functionDeclarations }],\n toolConfig: hasStrictTools ? { functionCallingConfig: { mode: \"VALIDATED\" } } : void 0,\n toolWarnings\n };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n return {\n tools: [{ functionDeclarations }],\n toolConfig: {\n functionCallingConfig: {\n mode: hasStrictTools ? \"VALIDATED\" : \"AUTO\"\n }\n },\n toolWarnings\n };\n case \"none\":\n return {\n tools: [{ functionDeclarations }],\n toolConfig: { functionCallingConfig: { mode: \"NONE\" } },\n toolWarnings\n };\n case \"required\":\n return {\n tools: [{ functionDeclarations }],\n toolConfig: {\n functionCallingConfig: {\n mode: hasStrictTools ? \"VALIDATED\" : \"ANY\"\n }\n },\n toolWarnings\n };\n case \"tool\":\n return {\n tools: [{ functionDeclarations }],\n toolConfig: {\n functionCallingConfig: {\n mode: hasStrictTools ? \"VALIDATED\" : \"ANY\",\n allowedFunctionNames: [toolChoice.toolName]\n }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\n}\n\n// src/google-json-accumulator.ts\nvar GoogleJSONAccumulator = class {\n constructor() {\n this.accumulatedArgs = {};\n this.jsonText = \"\";\n /**\n * Stack representing the currently \"open\" containers in the JSON output.\n * Entry 0 is always the root `{` object once the first value is written.\n */\n this.pathStack = [];\n /**\n * Whether a string value is currently \"open\" (willContinue was true),\n * meaning the closing quote has not yet been emitted.\n */\n this.stringOpen = false;\n }\n /**\n * Input: [{jsonPath:\"$.brightness\",numberValue:50}]\n * Output: { currentJSON:{brightness:50}, textDelta:'{\"brightness\":50' }\n */\n processPartialArgs(partialArgs) {\n let delta = \"\";\n for (const arg of partialArgs) {\n const rawPath = arg.jsonPath.replace(/^\\$\\./, \"\");\n if (!rawPath) continue;\n const segments = parsePath(rawPath);\n const existingValue = getNestedValue(this.accumulatedArgs, segments);\n const isStringContinuation = arg.stringValue != null && existingValue !== void 0;\n if (isStringContinuation) {\n const escaped = JSON.stringify(arg.stringValue).slice(1, -1);\n setNestedValue(\n this.accumulatedArgs,\n segments,\n existingValue + arg.stringValue\n );\n delta += escaped;\n continue;\n }\n const resolved = resolvePartialArgValue(arg);\n if (resolved == null) continue;\n setNestedValue(this.accumulatedArgs, segments, resolved.value);\n delta += this.emitNavigationTo(segments, arg, resolved.json);\n }\n this.jsonText += delta;\n return {\n currentJSON: this.accumulatedArgs,\n textDelta: delta\n };\n }\n /**\n * Input: jsonText='{\"brightness\":50', accumulatedArgs={brightness:50}\n * Output: { finalJSON:'{\"brightness\":50}', closingDelta:'}' }\n */\n finalize() {\n const finalArgs = JSON.stringify(this.accumulatedArgs);\n const closingDelta = finalArgs.slice(this.jsonText.length);\n return { finalJSON: finalArgs, closingDelta };\n }\n /**\n * Input: pathStack=[] (first call) or pathStack=[root,...] (subsequent calls)\n * Output: '{' (first call) or '' (subsequent calls)\n */\n ensureRoot() {\n if (this.pathStack.length === 0) {\n this.pathStack.push({ segment: \"\", isArray: false, childCount: 0 });\n return \"{\";\n }\n return \"\";\n }\n /**\n * Emits the JSON text fragment needed to navigate from the current open\n * path to the new leaf at `targetSegments`, then writes the value.\n *\n * Input: targetSegments=[\"recipe\",\"name\"], arg={jsonPath:\"$.recipe.name\",stringValue:\"Lasagna\"}, valueJson='\"Lasagna\"'\n * Output: '{\"recipe\":{\"name\":\"Lasagna\"'\n */\n emitNavigationTo(targetSegments, arg, valueJson) {\n let fragment = \"\";\n if (this.stringOpen) {\n fragment += '\"';\n this.stringOpen = false;\n }\n fragment += this.ensureRoot();\n const targetContainerSegments = targetSegments.slice(0, -1);\n const leafSegment = targetSegments[targetSegments.length - 1];\n const commonDepth = this.findCommonStackDepth(targetContainerSegments);\n fragment += this.closeDownTo(commonDepth);\n fragment += this.openDownTo(targetContainerSegments, leafSegment);\n fragment += this.emitLeaf(leafSegment, arg, valueJson);\n return fragment;\n }\n /**\n * Returns the stack depth to preserve when navigating to a new target\n * container path. Always >= 1 (the root is never popped).\n *\n * Input: stack=[root,\"recipe\",\"ingredients\",0], target=[\"recipe\",\"ingredients\",1]\n * Output: 3 (keep root+\"recipe\"+\"ingredients\")\n */\n findCommonStackDepth(targetContainer) {\n const maxDepth = Math.min(\n this.pathStack.length - 1,\n targetContainer.length\n );\n let common = 0;\n for (let i = 0; i < maxDepth; i++) {\n if (this.pathStack[i + 1].segment === targetContainer[i]) {\n common++;\n } else {\n break;\n }\n }\n return common + 1;\n }\n /**\n * Closes containers from the current stack depth back down to `targetDepth`.\n *\n * Input: this.pathStack=[root,\"recipe\",\"ingredients\",0], targetDepth=3\n * Output: '}'\n */\n closeDownTo(targetDepth) {\n let fragment = \"\";\n while (this.pathStack.length > targetDepth) {\n const entry = this.pathStack.pop();\n fragment += entry.isArray ? \"]\" : \"}\";\n }\n return fragment;\n }\n /**\n * Opens containers from the current stack depth down to the full target\n * container path, emitting opening `{`, `[`, keys, and commas as needed.\n * `leafSegment` is used to determine if the innermost container is an array.\n *\n * Input: this.pathStack=[root], targetContainer=[\"recipe\",\"ingredients\"], leafSegment=0\n * Output: '\"recipe\":{\"ingredients\":['\n */\n openDownTo(targetContainer, leafSegment) {\n let fragment = \"\";\n const startIdx = this.pathStack.length - 1;\n for (let i = startIdx; i < targetContainer.length; i++) {\n const seg = targetContainer[i];\n const parentEntry = this.pathStack[this.pathStack.length - 1];\n if (parentEntry.childCount > 0) {\n fragment += \",\";\n }\n parentEntry.childCount++;\n if (typeof seg === \"string\") {\n fragment += `${JSON.stringify(seg)}:`;\n }\n const childSeg = i + 1 < targetContainer.length ? targetContainer[i + 1] : leafSegment;\n const isArray = typeof childSeg === \"number\";\n fragment += isArray ? \"[\" : \"{\";\n this.pathStack.push({ segment: seg, isArray, childCount: 0 });\n }\n return fragment;\n }\n /**\n * Emits the comma, key, and value for a leaf entry in the current container.\n *\n * Input: leafSegment=\"name\", arg={stringValue:\"Lasagna\"}, valueJson='\"Lasagna\"'\n * Output: '\"name\":\"Lasagna\"' (or ',\"name\":\"Lasagna\"' if container.childCount > 0)\n */\n emitLeaf(leafSegment, arg, valueJson) {\n let fragment = \"\";\n const container = this.pathStack[this.pathStack.length - 1];\n if (container.childCount > 0) {\n fragment += \",\";\n }\n container.childCount++;\n if (typeof leafSegment === \"string\") {\n fragment += `${JSON.stringify(leafSegment)}:`;\n }\n if (arg.stringValue != null && arg.willContinue) {\n fragment += valueJson.slice(0, -1);\n this.stringOpen = true;\n } else {\n fragment += valueJson;\n }\n return fragment;\n }\n};\nfunction parsePath(rawPath) {\n const segments = [];\n for (const part of rawPath.split(\".\")) {\n const bracketIdx = part.indexOf(\"[\");\n if (bracketIdx === -1) {\n segments.push(part);\n } else {\n if (bracketIdx > 0) segments.push(part.slice(0, bracketIdx));\n for (const m of part.matchAll(/\\[(\\d+)\\]/g)) {\n segments.push(parseInt(m[1], 10));\n }\n }\n }\n return segments;\n}\nfunction getNestedValue(obj, segments) {\n let current = obj;\n for (const seg of segments) {\n if (current == null || typeof current !== \"object\") return void 0;\n current = current[seg];\n }\n return current;\n}\nfunction setNestedValue(obj, segments, value) {\n let current = obj;\n for (let i = 0; i < segments.length - 1; i++) {\n const seg = segments[i];\n const nextSeg = segments[i + 1];\n if (current[seg] == null) {\n current[seg] = typeof nextSeg === \"number\" ? [] : {};\n }\n current = current[seg];\n }\n current[segments[segments.length - 1]] = value;\n}\nfunction resolvePartialArgValue(arg) {\n var _a, _b;\n const value = (_b = (_a = arg.stringValue) != null ? _a : arg.numberValue) != null ? _b : arg.boolValue;\n if (value != null) return { value, json: JSON.stringify(value) };\n if (\"nullValue\" in arg) return { value: null, json: \"null\" };\n return void 0;\n}\n\n// src/map-google-generative-ai-finish-reason.ts\nfunction mapGoogleGenerativeAIFinishReason({\n finishReason,\n hasToolCalls\n}) {\n switch (finishReason) {\n case \"STOP\":\n return hasToolCalls ? \"tool-calls\" : \"stop\";\n case \"MAX_TOKENS\":\n return \"length\";\n case \"IMAGE_SAFETY\":\n case \"RECITATION\":\n case \"SAFETY\":\n case \"BLOCKLIST\":\n case \"PROHIBITED_CONTENT\":\n case \"SPII\":\n return \"content-filter\";\n case \"MALFORMED_FUNCTION_CALL\":\n return \"error\";\n case \"FINISH_REASON_UNSPECIFIED\":\n case \"OTHER\":\n default:\n return \"other\";\n }\n}\n\n// src/google-generative-ai-language-model.ts\nvar GoogleGenerativeAILanguageModel = class {\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n var _a;\n this.modelId = modelId;\n this.config = config;\n this.generateId = (_a = config.generateId) != null ? _a : generateId;\n }\n get provider() {\n return this.config.provider;\n }\n get supportedUrls() {\n var _a, _b, _c;\n return (_c = (_b = (_a = this.config).supportedUrls) == null ? void 0 : _b.call(_a)) != null ? _c : {};\n }\n async getArgs({\n prompt,\n maxOutputTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences,\n responseFormat,\n seed,\n tools,\n toolChoice,\n providerOptions\n }, { isStreaming = false } = {}) {\n var _a, _b;\n const warnings = [];\n const providerOptionsName = this.config.provider.includes(\"vertex\") ? \"vertex\" : \"google\";\n let googleOptions = await parseProviderOptions({\n provider: providerOptionsName,\n providerOptions,\n schema: googleLanguageModelOptions\n });\n if (googleOptions == null && providerOptionsName !== \"google\") {\n googleOptions = await parseProviderOptions({\n provider: \"google\",\n providerOptions,\n schema: googleLanguageModelOptions\n });\n }\n const isVertexProvider = this.config.provider.startsWith(\"google.vertex.\");\n if ((tools == null ? void 0 : tools.some(\n (tool) => tool.type === \"provider\" && tool.id === \"google.vertex_rag_store\"\n )) && !isVertexProvider) {\n warnings.push({\n type: \"other\",\n message: `The 'vertex_rag_store' tool is only supported with the Google Vertex provider and might not be supported or could behave unexpectedly with the current Google provider (${this.config.provider}).`\n });\n }\n if ((googleOptions == null ? void 0 : googleOptions.streamFunctionCallArguments) && !isVertexProvider) {\n warnings.push({\n type: \"other\",\n message: `'streamFunctionCallArguments' is only supported on the Vertex AI API and will be ignored with the current Google provider (${this.config.provider}). See https://docs.cloud.google.com/vertex-ai/generative-ai/docs/multimodal/function-calling#streaming-fc`\n });\n }\n let sanitizedServiceTier = googleOptions == null ? void 0 : googleOptions.serviceTier;\n if ((googleOptions == null ? void 0 : googleOptions.serviceTier) && isVertexProvider) {\n sanitizedServiceTier = VertexServiceTierMap[googleOptions.serviceTier];\n }\n const isGemmaModel = this.modelId.toLowerCase().startsWith(\"gemma-\");\n const supportsFunctionResponseParts = this.modelId.startsWith(\"gemini-3\");\n const { contents, systemInstruction } = convertToGoogleGenerativeAIMessages(\n prompt,\n {\n isGemmaModel,\n providerOptionsName,\n supportsFunctionResponseParts\n }\n );\n const {\n tools: googleTools2,\n toolConfig: googleToolConfig,\n toolWarnings\n } = prepareTools({\n tools,\n toolChoice,\n modelId: this.modelId,\n isVertexProvider\n });\n const streamFunctionCallArguments = isStreaming && isVertexProvider ? (_a = googleOptions == null ? void 0 : googleOptions.streamFunctionCallArguments) != null ? _a : false : void 0;\n const toolConfig = googleToolConfig || streamFunctionCallArguments || (googleOptions == null ? void 0 : googleOptions.retrievalConfig) ? {\n ...googleToolConfig,\n ...streamFunctionCallArguments && {\n functionCallingConfig: {\n ...googleToolConfig == null ? void 0 : googleToolConfig.functionCallingConfig,\n streamFunctionCallArguments: true\n }\n },\n ...(googleOptions == null ? void 0 : googleOptions.retrievalConfig) && {\n retrievalConfig: googleOptions.retrievalConfig\n }\n } : void 0;\n return {\n args: {\n generationConfig: {\n // standardized settings:\n maxOutputTokens,\n temperature,\n topK,\n topP,\n frequencyPenalty,\n presencePenalty,\n stopSequences,\n seed,\n // response format:\n responseMimeType: (responseFormat == null ? void 0 : responseFormat.type) === \"json\" ? \"application/json\" : void 0,\n responseSchema: (responseFormat == null ? void 0 : responseFormat.type) === \"json\" && responseFormat.schema != null && // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n // TODO convert into provider option\n ((_b = googleOptions == null ? void 0 : googleOptions.structuredOutputs) != null ? _b : true) ? convertJSONSchemaToOpenAPISchema(responseFormat.schema) : void 0,\n ...(googleOptions == null ? void 0 : googleOptions.audioTimestamp) && {\n audioTimestamp: googleOptions.audioTimestamp\n },\n // provider options:\n responseModalities: googleOptions == null ? void 0 : googleOptions.responseModalities,\n thinkingConfig: googleOptions == null ? void 0 : googleOptions.thinkingConfig,\n ...(googleOptions == null ? void 0 : googleOptions.mediaResolution) && {\n mediaResolution: googleOptions.mediaResolution\n },\n ...(googleOptions == null ? void 0 : googleOptions.imageConfig) && {\n imageConfig: googleOptions.imageConfig\n }\n },\n contents,\n systemInstruction: isGemmaModel ? void 0 : systemInstruction,\n safetySettings: googleOptions == null ? void 0 : googleOptions.safetySettings,\n tools: googleTools2,\n toolConfig,\n cachedContent: googleOptions == null ? void 0 : googleOptions.cachedContent,\n labels: googleOptions == null ? void 0 : googleOptions.labels,\n serviceTier: sanitizedServiceTier\n },\n warnings: [...warnings, ...toolWarnings],\n providerOptionsName\n };\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;\n const { args, warnings, providerOptionsName } = await this.getArgs(options);\n const mergedHeaders = combineHeaders(\n await resolve(this.config.headers),\n options.headers\n );\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi({\n url: `${this.config.baseURL}/${getModelPath(\n this.modelId\n )}:generateContent`,\n headers: mergedHeaders,\n body: args,\n failedResponseHandler: googleFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(responseSchema),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const candidate = response.candidates[0];\n const content = [];\n const parts = (_b = (_a = candidate.content) == null ? void 0 : _a.parts) != null ? _b : [];\n const usageMetadata = response.usageMetadata;\n let lastCodeExecutionToolCallId;\n let lastServerToolCallId;\n for (const part of parts) {\n if (\"executableCode\" in part && ((_c = part.executableCode) == null ? void 0 : _c.code)) {\n const toolCallId = this.config.generateId();\n lastCodeExecutionToolCallId = toolCallId;\n content.push({\n type: \"tool-call\",\n toolCallId,\n toolName: \"code_execution\",\n input: JSON.stringify(part.executableCode),\n providerExecuted: true\n });\n } else if (\"codeExecutionResult\" in part && part.codeExecutionResult) {\n content.push({\n type: \"tool-result\",\n // Assumes a result directly follows its corresponding call part.\n toolCallId: lastCodeExecutionToolCallId,\n toolName: \"code_execution\",\n result: {\n outcome: part.codeExecutionResult.outcome,\n output: (_d = part.codeExecutionResult.output) != null ? _d : \"\"\n }\n });\n lastCodeExecutionToolCallId = void 0;\n } else if (\"text\" in part && part.text != null) {\n const thoughtSignatureMetadata = part.thoughtSignature ? {\n [providerOptionsName]: {\n thoughtSignature: part.thoughtSignature\n }\n } : void 0;\n if (part.text.length === 0) {\n if (thoughtSignatureMetadata != null && content.length > 0) {\n const lastContent = content[content.length - 1];\n lastContent.providerMetadata = thoughtSignatureMetadata;\n }\n } else {\n content.push({\n type: part.thought === true ? \"reasoning\" : \"text\",\n text: part.text,\n providerMetadata: thoughtSignatureMetadata\n });\n }\n } else if (\"functionCall\" in part && part.functionCall.name != null) {\n content.push({\n type: \"tool-call\",\n toolCallId: this.config.generateId(),\n toolName: part.functionCall.name,\n input: JSON.stringify((_e = part.functionCall.args) != null ? _e : {}),\n providerMetadata: part.thoughtSignature ? {\n [providerOptionsName]: {\n thoughtSignature: part.thoughtSignature\n }\n } : void 0\n });\n } else if (\"inlineData\" in part) {\n const hasThought = part.thought === true;\n const hasThoughtSignature = !!part.thoughtSignature;\n content.push({\n type: \"file\",\n data: part.inlineData.data,\n mediaType: part.inlineData.mimeType,\n providerMetadata: hasThought || hasThoughtSignature ? {\n [providerOptionsName]: {\n ...hasThought ? { thought: true } : {},\n ...hasThoughtSignature ? { thoughtSignature: part.thoughtSignature } : {}\n }\n } : void 0\n });\n } else if (\"toolCall\" in part && part.toolCall) {\n const toolCallId = (_f = part.toolCall.id) != null ? _f : this.config.generateId();\n lastServerToolCallId = toolCallId;\n content.push({\n type: \"tool-call\",\n toolCallId,\n toolName: `server:${part.toolCall.toolType}`,\n input: JSON.stringify((_g = part.toolCall.args) != null ? _g : {}),\n providerExecuted: true,\n dynamic: true,\n providerMetadata: part.thoughtSignature ? {\n [providerOptionsName]: {\n thoughtSignature: part.thoughtSignature,\n serverToolCallId: toolCallId,\n serverToolType: part.toolCall.toolType\n }\n } : {\n [providerOptionsName]: {\n serverToolCallId: toolCallId,\n serverToolType: part.toolCall.toolType\n }\n }\n });\n } else if (\"toolResponse\" in part && part.toolResponse) {\n const responseToolCallId = (_h = lastServerToolCallId != null ? lastServerToolCallId : part.toolResponse.id) != null ? _h : this.config.generateId();\n content.push({\n type: \"tool-result\",\n toolCallId: responseToolCallId,\n toolName: `server:${part.toolResponse.toolType}`,\n result: (_i = part.toolResponse.response) != null ? _i : {},\n providerMetadata: part.thoughtSignature ? {\n [providerOptionsName]: {\n thoughtSignature: part.thoughtSignature,\n serverToolCallId: responseToolCallId,\n serverToolType: part.toolResponse.toolType\n }\n } : {\n [providerOptionsName]: {\n serverToolCallId: responseToolCallId,\n serverToolType: part.toolResponse.toolType\n }\n }\n });\n lastServerToolCallId = void 0;\n }\n }\n const sources = (_j = extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: this.config.generateId\n })) != null ? _j : [];\n for (const source of sources) {\n content.push(source);\n }\n return {\n content,\n finishReason: {\n unified: mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n // Only count client-executed tool calls for finish reason determination.\n hasToolCalls: content.some(\n (part) => part.type === \"tool-call\" && !part.providerExecuted\n )\n }),\n raw: (_k = candidate.finishReason) != null ? _k : void 0\n },\n usage: convertGoogleGenerativeAIUsage(usageMetadata),\n warnings,\n providerMetadata: {\n [providerOptionsName]: {\n promptFeedback: (_l = response.promptFeedback) != null ? _l : null,\n groundingMetadata: (_m = candidate.groundingMetadata) != null ? _m : null,\n urlContextMetadata: (_n = candidate.urlContextMetadata) != null ? _n : null,\n safetyRatings: (_o = candidate.safetyRatings) != null ? _o : null,\n usageMetadata: usageMetadata != null ? usageMetadata : null,\n finishMessage: (_p = candidate.finishMessage) != null ? _p : null,\n serviceTier: (_q = response.serviceTier) != null ? _q : null\n }\n },\n request: { body: args },\n response: {\n // TODO timestamp, model id, id\n headers: responseHeaders,\n body: rawResponse\n }\n };\n }\n async doStream(options) {\n const { args, warnings, providerOptionsName } = await this.getArgs(\n options,\n { isStreaming: true }\n );\n const headers = combineHeaders(\n await resolve(this.config.headers),\n options.headers\n );\n const { responseHeaders, value: response } = await postJsonToApi({\n url: `${this.config.baseURL}/${getModelPath(\n this.modelId\n )}:streamGenerateContent?alt=sse`,\n headers,\n body: args,\n failedResponseHandler: googleFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(chunkSchema),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n let finishReason = {\n unified: \"other\",\n raw: void 0\n };\n let usage = void 0;\n let providerMetadata = void 0;\n let lastGroundingMetadata = null;\n let lastUrlContextMetadata = null;\n let serviceTier = null;\n const generateId2 = this.config.generateId;\n let hasToolCalls = false;\n let currentTextBlockId = null;\n let currentReasoningBlockId = null;\n let blockCounter = 0;\n const emittedSourceUrls = /* @__PURE__ */ new Set();\n let lastCodeExecutionToolCallId;\n let lastServerToolCallId;\n const activeStreamingToolCalls = [];\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n controller.enqueue({ type: \"stream-start\", warnings });\n },\n transform(chunk, controller) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;\n if (options.includeRawChunks) {\n controller.enqueue({ type: \"raw\", rawValue: chunk.rawValue });\n }\n if (!chunk.success) {\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n const usageMetadata = value.usageMetadata;\n if (usageMetadata != null) {\n usage = usageMetadata;\n }\n if (value.serviceTier != null) {\n serviceTier = value.serviceTier;\n }\n const candidate = (_a = value.candidates) == null ? void 0 : _a[0];\n if (candidate == null) {\n return;\n }\n const content = candidate.content;\n if (candidate.groundingMetadata != null) {\n lastGroundingMetadata = candidate.groundingMetadata;\n }\n if (candidate.urlContextMetadata != null) {\n lastUrlContextMetadata = candidate.urlContextMetadata;\n }\n const sources = extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: generateId2\n });\n if (sources != null) {\n for (const source of sources) {\n if (source.sourceType === \"url\" && !emittedSourceUrls.has(source.url)) {\n emittedSourceUrls.add(source.url);\n controller.enqueue(source);\n }\n }\n }\n if (content != null) {\n const parts = (_b = content.parts) != null ? _b : [];\n for (const part of parts) {\n if (\"executableCode\" in part && ((_c = part.executableCode) == null ? void 0 : _c.code)) {\n const toolCallId = generateId2();\n lastCodeExecutionToolCallId = toolCallId;\n controller.enqueue({\n type: \"tool-call\",\n toolCallId,\n toolName: \"code_execution\",\n input: JSON.stringify(part.executableCode),\n providerExecuted: true\n });\n } else if (\"codeExecutionResult\" in part && part.codeExecutionResult) {\n const toolCallId = lastCodeExecutionToolCallId;\n if (toolCallId) {\n controller.enqueue({\n type: \"tool-result\",\n toolCallId,\n toolName: \"code_execution\",\n result: {\n outcome: part.codeExecutionResult.outcome,\n output: (_d = part.codeExecutionResult.output) != null ? _d : \"\"\n }\n });\n lastCodeExecutionToolCallId = void 0;\n }\n } else if (\"text\" in part && part.text != null) {\n const thoughtSignatureMetadata = part.thoughtSignature ? {\n [providerOptionsName]: {\n thoughtSignature: part.thoughtSignature\n }\n } : void 0;\n if (part.text.length === 0) {\n if (thoughtSignatureMetadata != null && currentTextBlockId !== null) {\n controller.enqueue({\n type: \"text-delta\",\n id: currentTextBlockId,\n delta: \"\",\n providerMetadata: thoughtSignatureMetadata\n });\n }\n } else if (part.thought === true) {\n if (currentTextBlockId !== null) {\n controller.enqueue({\n type: \"text-end\",\n id: currentTextBlockId\n });\n currentTextBlockId = null;\n }\n if (currentReasoningBlockId === null) {\n currentReasoningBlockId = String(blockCounter++);\n controller.enqueue({\n type: \"reasoning-start\",\n id: currentReasoningBlockId,\n providerMetadata: thoughtSignatureMetadata\n });\n }\n controller.enqueue({\n type: \"reasoning-delta\",\n id: currentReasoningBlockId,\n delta: part.text,\n providerMetadata: thoughtSignatureMetadata\n });\n } else {\n if (currentReasoningBlockId !== null) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: currentReasoningBlockId\n });\n currentReasoningBlockId = null;\n }\n if (currentTextBlockId === null) {\n currentTextBlockId = String(blockCounter++);\n controller.enqueue({\n type: \"text-start\",\n id: currentTextBlockId,\n providerMetadata: thoughtSignatureMetadata\n });\n }\n controller.enqueue({\n type: \"text-delta\",\n id: currentTextBlockId,\n delta: part.text,\n providerMetadata: thoughtSignatureMetadata\n });\n }\n } else if (\"inlineData\" in part) {\n if (currentTextBlockId !== null) {\n controller.enqueue({\n type: \"text-end\",\n id: currentTextBlockId\n });\n currentTextBlockId = null;\n }\n if (currentReasoningBlockId !== null) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: currentReasoningBlockId\n });\n currentReasoningBlockId = null;\n }\n const hasThought = part.thought === true;\n const hasThoughtSignature = !!part.thoughtSignature;\n const fileMeta = hasThought || hasThoughtSignature ? {\n [providerOptionsName]: {\n ...hasThought ? { thought: true } : {},\n ...hasThoughtSignature ? { thoughtSignature: part.thoughtSignature } : {}\n }\n } : void 0;\n controller.enqueue({\n type: \"file\",\n mediaType: part.inlineData.mimeType,\n data: part.inlineData.data,\n providerMetadata: fileMeta\n });\n } else if (\"toolCall\" in part && part.toolCall) {\n const toolCallId = (_e = part.toolCall.id) != null ? _e : generateId2();\n lastServerToolCallId = toolCallId;\n const serverMeta = {\n [providerOptionsName]: {\n ...part.thoughtSignature ? { thoughtSignature: part.thoughtSignature } : {},\n serverToolCallId: toolCallId,\n serverToolType: part.toolCall.toolType\n }\n };\n controller.enqueue({\n type: \"tool-call\",\n toolCallId,\n toolName: `server:${part.toolCall.toolType}`,\n input: JSON.stringify((_f = part.toolCall.args) != null ? _f : {}),\n providerExecuted: true,\n dynamic: true,\n providerMetadata: serverMeta\n });\n } else if (\"toolResponse\" in part && part.toolResponse) {\n const responseToolCallId = (_g = lastServerToolCallId != null ? lastServerToolCallId : part.toolResponse.id) != null ? _g : generateId2();\n const serverMeta = {\n [providerOptionsName]: {\n ...part.thoughtSignature ? { thoughtSignature: part.thoughtSignature } : {},\n serverToolCallId: responseToolCallId,\n serverToolType: part.toolResponse.toolType\n }\n };\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: responseToolCallId,\n toolName: `server:${part.toolResponse.toolType}`,\n result: (_h = part.toolResponse.response) != null ? _h : {},\n providerMetadata: serverMeta\n });\n lastServerToolCallId = void 0;\n }\n }\n for (const part of parts) {\n if (!(\"functionCall\" in part)) continue;\n const providerMeta = part.thoughtSignature ? {\n [providerOptionsName]: {\n thoughtSignature: part.thoughtSignature\n }\n } : void 0;\n const isStreamingChunk = part.functionCall.partialArgs != null || part.functionCall.name != null && part.functionCall.willContinue === true;\n const isTerminalChunk = part.functionCall.name == null && part.functionCall.args == null && part.functionCall.partialArgs == null && part.functionCall.willContinue == null;\n const isCompleteCall = part.functionCall.name != null && part.functionCall.args != null && part.functionCall.partialArgs == null;\n const isNoArgsCompleteCall = part.functionCall.name != null && part.functionCall.args == null && part.functionCall.partialArgs == null && part.functionCall.willContinue !== true;\n if (isStreamingChunk) {\n if (part.functionCall.name != null && part.functionCall.willContinue === true) {\n const toolCallId = generateId2();\n const accumulator = new GoogleJSONAccumulator();\n activeStreamingToolCalls.push({\n toolCallId,\n toolName: part.functionCall.name,\n accumulator,\n providerMetadata: providerMeta\n });\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallId,\n toolName: part.functionCall.name,\n providerMetadata: providerMeta\n });\n if (part.functionCall.partialArgs != null) {\n const { textDelta } = accumulator.processPartialArgs(\n part.functionCall.partialArgs\n );\n if (textDelta.length > 0) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCallId,\n delta: textDelta,\n providerMetadata: providerMeta\n });\n }\n }\n } else if (part.functionCall.partialArgs != null && activeStreamingToolCalls.length > 0) {\n const active = activeStreamingToolCalls[activeStreamingToolCalls.length - 1];\n const { textDelta } = active.accumulator.processPartialArgs(\n part.functionCall.partialArgs\n );\n if (textDelta.length > 0) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: active.toolCallId,\n delta: textDelta,\n providerMetadata: providerMeta\n });\n }\n }\n } else if (isTerminalChunk && activeStreamingToolCalls.length > 0) {\n const active = activeStreamingToolCalls.pop();\n const { finalJSON, closingDelta } = active.accumulator.finalize();\n if (closingDelta.length > 0) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: active.toolCallId,\n delta: closingDelta,\n providerMetadata: active.providerMetadata\n });\n }\n controller.enqueue({\n type: \"tool-input-end\",\n id: active.toolCallId,\n providerMetadata: active.providerMetadata\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: active.toolCallId,\n toolName: active.toolName,\n input: finalJSON,\n providerMetadata: active.providerMetadata\n });\n hasToolCalls = true;\n } else if (isCompleteCall) {\n const toolCallId = generateId2();\n const toolName = part.functionCall.name;\n const args2 = typeof part.functionCall.args === \"string\" ? part.functionCall.args : JSON.stringify((_i = part.functionCall.args) != null ? _i : {});\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallId,\n toolName,\n providerMetadata: providerMeta\n });\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCallId,\n delta: args2,\n providerMetadata: providerMeta\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCallId,\n providerMetadata: providerMeta\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId,\n toolName,\n input: args2,\n providerMetadata: providerMeta\n });\n hasToolCalls = true;\n } else if (isNoArgsCompleteCall) {\n const toolCallId = generateId2();\n const toolName = part.functionCall.name;\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallId,\n toolName,\n providerMetadata: providerMeta\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCallId,\n providerMetadata: providerMeta\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId,\n toolName,\n input: \"{}\",\n providerMetadata: providerMeta\n });\n hasToolCalls = true;\n }\n }\n }\n if (candidate.finishReason != null) {\n finishReason = {\n unified: mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls\n }),\n raw: candidate.finishReason\n };\n providerMetadata = {\n [providerOptionsName]: {\n promptFeedback: (_j = value.promptFeedback) != null ? _j : null,\n groundingMetadata: lastGroundingMetadata,\n urlContextMetadata: lastUrlContextMetadata,\n safetyRatings: (_k = candidate.safetyRatings) != null ? _k : null,\n usageMetadata: usageMetadata != null ? usageMetadata : null,\n finishMessage: (_l = candidate.finishMessage) != null ? _l : null,\n serviceTier\n }\n };\n }\n },\n flush(controller) {\n if (currentTextBlockId !== null) {\n controller.enqueue({\n type: \"text-end\",\n id: currentTextBlockId\n });\n }\n if (currentReasoningBlockId !== null) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: currentReasoningBlockId\n });\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: convertGoogleGenerativeAIUsage(usage),\n providerMetadata\n });\n }\n })\n ),\n response: { headers: responseHeaders },\n request: { body: args }\n };\n }\n};\nfunction extractSources({\n groundingMetadata,\n generateId: generateId2\n}) {\n var _a, _b, _c, _d, _e, _f;\n if (!(groundingMetadata == null ? void 0 : groundingMetadata.groundingChunks)) {\n return void 0;\n }\n const sources = [];\n for (const chunk of groundingMetadata.groundingChunks) {\n if (chunk.web != null) {\n sources.push({\n type: \"source\",\n sourceType: \"url\",\n id: generateId2(),\n url: chunk.web.uri,\n title: (_a = chunk.web.title) != null ? _a : void 0\n });\n } else if (chunk.image != null) {\n sources.push({\n type: \"source\",\n sourceType: \"url\",\n id: generateId2(),\n // Google requires attribution to the source URI, not the actual image URI.\n // TODO: add another type in v7 to allow both the image and source URL to be included separately\n url: chunk.image.sourceUri,\n title: (_b = chunk.image.title) != null ? _b : void 0\n });\n } else if (chunk.retrievedContext != null) {\n const uri = chunk.retrievedContext.uri;\n const fileSearchStore = chunk.retrievedContext.fileSearchStore;\n if (uri && (uri.startsWith(\"http://\") || uri.startsWith(\"https://\"))) {\n sources.push({\n type: \"source\",\n sourceType: \"url\",\n id: generateId2(),\n url: uri,\n title: (_c = chunk.retrievedContext.title) != null ? _c : void 0\n });\n } else if (uri) {\n const title = (_d = chunk.retrievedContext.title) != null ? _d : \"Unknown Document\";\n let mediaType = \"application/octet-stream\";\n let filename = void 0;\n if (uri.endsWith(\".pdf\")) {\n mediaType = \"application/pdf\";\n filename = uri.split(\"/\").pop();\n } else if (uri.endsWith(\".txt\")) {\n mediaType = \"text/plain\";\n filename = uri.split(\"/\").pop();\n } else if (uri.endsWith(\".docx\")) {\n mediaType = \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\";\n filename = uri.split(\"/\").pop();\n } else if (uri.endsWith(\".doc\")) {\n mediaType = \"application/msword\";\n filename = uri.split(\"/\").pop();\n } else if (uri.match(/\\.(md|markdown)$/)) {\n mediaType = \"text/markdown\";\n filename = uri.split(\"/\").pop();\n } else {\n filename = uri.split(\"/\").pop();\n }\n sources.push({\n type: \"source\",\n sourceType: \"document\",\n id: generateId2(),\n mediaType,\n title,\n filename\n });\n } else if (fileSearchStore) {\n const title = (_e = chunk.retrievedContext.title) != null ? _e : \"Unknown Document\";\n sources.push({\n type: \"source\",\n sourceType: \"document\",\n id: generateId2(),\n mediaType: \"application/octet-stream\",\n title,\n filename: fileSearchStore.split(\"/\").pop()\n });\n }\n } else if (chunk.maps != null) {\n if (chunk.maps.uri) {\n sources.push({\n type: \"source\",\n sourceType: \"url\",\n id: generateId2(),\n url: chunk.maps.uri,\n title: (_f = chunk.maps.title) != null ? _f : void 0\n });\n }\n }\n }\n return sources.length > 0 ? sources : void 0;\n}\nvar getGroundingMetadataSchema = () => z3.object({\n webSearchQueries: z3.array(z3.string()).nullish(),\n imageSearchQueries: z3.array(z3.string()).nullish(),\n retrievalQueries: z3.array(z3.string()).nullish(),\n searchEntryPoint: z3.object({ renderedContent: z3.string() }).nullish(),\n groundingChunks: z3.array(\n z3.object({\n web: z3.object({ uri: z3.string(), title: z3.string().nullish() }).nullish(),\n image: z3.object({\n sourceUri: z3.string(),\n imageUri: z3.string(),\n title: z3.string().nullish(),\n domain: z3.string().nullish()\n }).nullish(),\n retrievedContext: z3.object({\n uri: z3.string().nullish(),\n title: z3.string().nullish(),\n text: z3.string().nullish(),\n fileSearchStore: z3.string().nullish()\n }).nullish(),\n maps: z3.object({\n uri: z3.string().nullish(),\n title: z3.string().nullish(),\n text: z3.string().nullish(),\n placeId: z3.string().nullish()\n }).nullish()\n })\n ).nullish(),\n groundingSupports: z3.array(\n z3.object({\n segment: z3.object({\n startIndex: z3.number().nullish(),\n endIndex: z3.number().nullish(),\n text: z3.string().nullish()\n }).nullish(),\n segment_text: z3.string().nullish(),\n groundingChunkIndices: z3.array(z3.number()).nullish(),\n supportChunkIndices: z3.array(z3.number()).nullish(),\n confidenceScores: z3.array(z3.number()).nullish(),\n confidenceScore: z3.array(z3.number()).nullish()\n })\n ).nullish(),\n retrievalMetadata: z3.union([\n z3.object({\n webDynamicRetrievalScore: z3.number()\n }),\n z3.object({})\n ]).nullish()\n});\nvar partialArgSchema = z3.object({\n jsonPath: z3.string(),\n stringValue: z3.string().nullish(),\n numberValue: z3.number().nullish(),\n boolValue: z3.boolean().nullish(),\n nullValue: z3.unknown().nullish(),\n willContinue: z3.boolean().nullish()\n});\nvar getContentSchema = () => z3.object({\n parts: z3.array(\n z3.union([\n // note: order matters since text can be fully empty\n z3.object({\n functionCall: z3.object({\n name: z3.string().nullish(),\n args: z3.unknown().nullish(),\n partialArgs: z3.array(partialArgSchema).nullish(),\n willContinue: z3.boolean().nullish()\n }),\n thoughtSignature: z3.string().nullish()\n }),\n z3.object({\n inlineData: z3.object({\n mimeType: z3.string(),\n data: z3.string()\n }),\n thought: z3.boolean().nullish(),\n thoughtSignature: z3.string().nullish()\n }),\n z3.object({\n toolCall: z3.object({\n toolType: z3.string(),\n args: z3.unknown().nullish(),\n id: z3.string()\n }),\n thoughtSignature: z3.string().nullish()\n }),\n z3.object({\n toolResponse: z3.object({\n toolType: z3.string(),\n response: z3.unknown().nullish(),\n id: z3.string()\n }),\n thoughtSignature: z3.string().nullish()\n }),\n z3.object({\n executableCode: z3.object({\n language: z3.string(),\n code: z3.string()\n }).nullish(),\n codeExecutionResult: z3.object({\n outcome: z3.string(),\n output: z3.string().nullish()\n }).nullish(),\n text: z3.string().nullish(),\n thought: z3.boolean().nullish(),\n thoughtSignature: z3.string().nullish()\n })\n ])\n ).nullish()\n});\nvar getSafetyRatingSchema = () => z3.object({\n category: z3.string().nullish(),\n probability: z3.string().nullish(),\n probabilityScore: z3.number().nullish(),\n severity: z3.string().nullish(),\n severityScore: z3.number().nullish(),\n blocked: z3.boolean().nullish()\n});\nvar tokenDetailsSchema = z3.array(\n z3.object({\n modality: z3.string(),\n tokenCount: z3.number()\n })\n).nullish();\nvar usageSchema = z3.object({\n cachedContentTokenCount: z3.number().nullish(),\n thoughtsTokenCount: z3.number().nullish(),\n promptTokenCount: z3.number().nullish(),\n candidatesTokenCount: z3.number().nullish(),\n totalTokenCount: z3.number().nullish(),\n // https://cloud.google.com/vertex-ai/generative-ai/docs/reference/rest/v1/GenerateContentResponse#TrafficType\n trafficType: z3.string().nullish(),\n // https://ai.google.dev/api/generate-content#Modality\n promptTokensDetails: tokenDetailsSchema,\n candidatesTokensDetails: tokenDetailsSchema\n});\nvar getUrlContextMetadataSchema = () => z3.object({\n urlMetadata: z3.array(\n z3.object({\n retrievedUrl: z3.string(),\n urlRetrievalStatus: z3.string()\n })\n ).nullish()\n});\nvar responseSchema = lazySchema3(\n () => zodSchema3(\n z3.object({\n candidates: z3.array(\n z3.object({\n content: getContentSchema().nullish().or(z3.object({}).strict()),\n finishReason: z3.string().nullish(),\n finishMessage: z3.string().nullish(),\n safetyRatings: z3.array(getSafetyRatingSchema()).nullish(),\n groundingMetadata: getGroundingMetadataSchema().nullish(),\n urlContextMetadata: getUrlContextMetadataSchema().nullish()\n })\n ),\n usageMetadata: usageSchema.nullish(),\n promptFeedback: z3.object({\n blockReason: z3.string().nullish(),\n safetyRatings: z3.array(getSafetyRatingSchema()).nullish()\n }).nullish(),\n serviceTier: z3.string().nullish()\n })\n )\n);\nvar chunkSchema = lazySchema3(\n () => zodSchema3(\n z3.object({\n candidates: z3.array(\n z3.object({\n content: getContentSchema().nullish(),\n finishReason: z3.string().nullish(),\n finishMessage: z3.string().nullish(),\n safetyRatings: z3.array(getSafetyRatingSchema()).nullish(),\n groundingMetadata: getGroundingMetadataSchema().nullish(),\n urlContextMetadata: getUrlContextMetadataSchema().nullish()\n })\n ).nullish(),\n usageMetadata: usageSchema.nullish(),\n promptFeedback: z3.object({\n blockReason: z3.string().nullish(),\n safetyRatings: z3.array(getSafetyRatingSchema()).nullish()\n }).nullish(),\n serviceTier: z3.string().nullish()\n })\n )\n);\n\n// src/tool/code-execution.ts\nimport { createProviderToolFactoryWithOutputSchema } from \"@ai-sdk/provider-utils\";\nimport { z as z4 } from \"zod/v4\";\nvar codeExecution = createProviderToolFactoryWithOutputSchema({\n id: \"google.code_execution\",\n inputSchema: z4.object({\n language: z4.string().describe(\"The programming language of the code.\"),\n code: z4.string().describe(\"The code to be executed.\")\n }),\n outputSchema: z4.object({\n outcome: z4.string().describe('The outcome of the execution (e.g., \"OUTCOME_OK\").'),\n output: z4.string().describe(\"The output from the code execution.\")\n })\n});\n\n// src/tool/enterprise-web-search.ts\nimport {\n createProviderToolFactory,\n lazySchema as lazySchema4,\n zodSchema as zodSchema4\n} from \"@ai-sdk/provider-utils\";\nimport { z as z5 } from \"zod/v4\";\nvar enterpriseWebSearch = createProviderToolFactory({\n id: \"google.enterprise_web_search\",\n inputSchema: lazySchema4(() => zodSchema4(z5.object({})))\n});\n\n// src/tool/file-search.ts\nimport {\n createProviderToolFactory as createProviderToolFactory2,\n lazySchema as lazySchema5,\n zodSchema as zodSchema5\n} from \"@ai-sdk/provider-utils\";\nimport { z as z6 } from \"zod/v4\";\nvar fileSearchArgsBaseSchema = z6.object({\n /** The names of the file_search_stores to retrieve from.\n * Example: `fileSearchStores/my-file-search-store-123`\n */\n fileSearchStoreNames: z6.array(z6.string()).describe(\n \"The names of the file_search_stores to retrieve from. Example: `fileSearchStores/my-file-search-store-123`\"\n ),\n /** The number of file search retrieval chunks to retrieve. */\n topK: z6.number().int().positive().describe(\"The number of file search retrieval chunks to retrieve.\").optional(),\n /** Metadata filter to apply to the file search retrieval documents.\n * See https://google.aip.dev/160 for the syntax of the filter expression.\n */\n metadataFilter: z6.string().describe(\n \"Metadata filter to apply to the file search retrieval documents. See https://google.aip.dev/160 for the syntax of the filter expression.\"\n ).optional()\n}).passthrough();\nvar fileSearchArgsSchema = lazySchema5(\n () => zodSchema5(fileSearchArgsBaseSchema)\n);\nvar fileSearch = createProviderToolFactory2({\n id: \"google.file_search\",\n inputSchema: fileSearchArgsSchema\n});\n\n// src/tool/google-maps.ts\nimport {\n createProviderToolFactory as createProviderToolFactory3,\n lazySchema as lazySchema6,\n zodSchema as zodSchema6\n} from \"@ai-sdk/provider-utils\";\nimport { z as z7 } from \"zod/v4\";\nvar googleMaps = createProviderToolFactory3({\n id: \"google.google_maps\",\n inputSchema: lazySchema6(() => zodSchema6(z7.object({})))\n});\n\n// src/tool/google-search.ts\nimport {\n createProviderToolFactory as createProviderToolFactory4,\n lazySchema as lazySchema7,\n zodSchema as zodSchema7\n} from \"@ai-sdk/provider-utils\";\nimport { z as z8 } from \"zod/v4\";\nvar googleSearchToolArgsBaseSchema = z8.object({\n searchTypes: z8.object({\n webSearch: z8.object({}).optional(),\n imageSearch: z8.object({}).optional()\n }).optional(),\n timeRangeFilter: z8.object({\n startTime: z8.string(),\n endTime: z8.string()\n }).optional()\n}).passthrough();\nvar googleSearchToolArgsSchema = lazySchema7(\n () => zodSchema7(googleSearchToolArgsBaseSchema)\n);\nvar googleSearch = createProviderToolFactory4(\n {\n id: \"google.google_search\",\n inputSchema: googleSearchToolArgsSchema\n }\n);\n\n// src/tool/url-context.ts\nimport {\n createProviderToolFactory as createProviderToolFactory5,\n lazySchema as lazySchema8,\n zodSchema as zodSchema8\n} from \"@ai-sdk/provider-utils\";\nimport { z as z9 } from \"zod/v4\";\nvar urlContext = createProviderToolFactory5({\n id: \"google.url_context\",\n inputSchema: lazySchema8(() => zodSchema8(z9.object({})))\n});\n\n// src/tool/vertex-rag-store.ts\nimport { createProviderToolFactory as createProviderToolFactory6 } from \"@ai-sdk/provider-utils\";\nimport { z as z10 } from \"zod/v4\";\nvar vertexRagStore = createProviderToolFactory6({\n id: \"google.vertex_rag_store\",\n inputSchema: z10.object({\n ragCorpus: z10.string(),\n topK: z10.number().optional()\n })\n});\n\n// src/google-tools.ts\nvar googleTools = {\n /**\n * Creates a Google search tool that gives Google direct access to real-time web content.\n * Must have name \"google_search\".\n */\n googleSearch,\n /**\n * Creates an Enterprise Web Search tool for grounding responses using a compliance-focused web index.\n * Designed for highly-regulated industries (finance, healthcare, public sector).\n * Does not log customer data and supports VPC service controls.\n * Must have name \"enterprise_web_search\".\n *\n * @note Only available on Vertex AI. Requires Gemini 2.0 or newer.\n *\n * @see https://cloud.google.com/vertex-ai/generative-ai/docs/grounding/web-grounding-enterprise\n */\n enterpriseWebSearch,\n /**\n * Creates a Google Maps grounding tool that gives the model access to Google Maps data.\n * Must have name \"google_maps\".\n *\n * @see https://ai.google.dev/gemini-api/docs/maps-grounding\n * @see https://cloud.google.com/vertex-ai/generative-ai/docs/grounding/grounding-with-google-maps\n */\n googleMaps,\n /**\n * Creates a URL context tool that gives Google direct access to real-time web content.\n * Must have name \"url_context\".\n */\n urlContext,\n /**\n * Enables Retrieval Augmented Generation (RAG) via the Gemini File Search tool.\n * Must have name \"file_search\".\n *\n * @param fileSearchStoreNames - Fully-qualified File Search store resource names.\n * @param metadataFilter - Optional filter expression to restrict the files that can be retrieved.\n * @param topK - Optional result limit for the number of chunks returned from File Search.\n *\n * @see https://ai.google.dev/gemini-api/docs/file-search\n */\n fileSearch,\n /**\n * A tool that enables the model to generate and run Python code.\n * Must have name \"code_execution\".\n *\n * @note Ensure the selected model supports Code Execution.\n * Multi-tool usage with the code execution tool is typically compatible with Gemini >=2 models.\n *\n * @see https://ai.google.dev/gemini-api/docs/code-execution (Google AI)\n * @see https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/code-execution-api (Vertex AI)\n */\n codeExecution,\n /**\n * Creates a Vertex RAG Store tool that enables the model to perform RAG searches against a Vertex RAG Store.\n * Must have name \"vertex_rag_store\".\n */\n vertexRagStore\n};\nexport {\n GoogleGenerativeAILanguageModel,\n getGroundingMetadataSchema,\n getUrlContextMetadataSchema,\n googleTools\n};\n//# sourceMappingURL=index.mjs.map"
|
|
7
7
|
],
|
|
8
8
|
"mappings": "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",
|
|
9
|
-
"debugId": "
|
|
9
|
+
"debugId": "AB2280029E572EA164756E2164756E21",
|
|
10
10
|
"names": []
|
|
11
11
|
}
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"import { Effect } from \"effect\"\nimport type { DatabaseMigration } from \"../migration\"\n\nexport default {\n id: \"20260303231226_add_workspace_fields\",\n up(tx) {\n return Effect.gen(function* () {\n yield* tx.run(`ALTER TABLE \\`workspace\\` ADD \\`type\\` text NOT NULL;`)\n yield* tx.run(`ALTER TABLE \\`workspace\\` ADD \\`name\\` text;`)\n yield* tx.run(`ALTER TABLE \\`workspace\\` ADD \\`directory\\` text;`)\n yield* tx.run(`ALTER TABLE \\`workspace\\` ADD \\`extra\\` text;`)\n yield* tx.run(`ALTER TABLE \\`workspace\\` DROP COLUMN \\`config\\`;`)\n })\n },\n} satisfies DatabaseMigration.Migration\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";wHAGA,SAAe,QACb,GAAI,sCACJ,EAAE,CAAC,EAAI,CACL,OAAO,EAAO,IAAI,SAAU,EAAG,CAC7B,MAAO,EAAG,IAAI,mDAAuD,EACrE,MAAO,EAAG,IAAI,0CAA8C,EAC5D,MAAO,EAAG,IAAI,+CAAmD,EACjE,MAAO,EAAG,IAAI,2CAA+C,EAC7D,MAAO,EAAG,IAAI,+CAAmD,EAClE,EAEL",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "E82071EED458227C64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"import { Effect } from \"effect\"\nimport type { DatabaseMigration } from \"../migration\"\n\nexport default {\n id: \"20260501142318_next_venus\",\n up(tx) {\n return Effect.gen(function* () {\n yield* tx.run(`ALTER TABLE \\`session\\` ADD \\`agent\\` text;`)\n yield* tx.run(`ALTER TABLE \\`session\\` ADD \\`model\\` text;`)\n })\n },\n} satisfies DatabaseMigration.Migration\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";wHAGA,SAAe,QACb,GAAI,4BACJ,EAAE,CAAC,EAAI,CACL,OAAO,EAAO,IAAI,SAAU,EAAG,CAC7B,MAAO,EAAG,IAAI,yCAA6C,EAC3D,MAAO,EAAG,IAAI,yCAA6C,EAC5D,EAEL",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "1B9768C6188A135A64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -15,6 +15,6 @@
|
|
|
15
15
|
"\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HttpsProxyAgent = void 0;\nconst net = __importStar(require(\"net\"));\nconst tls = __importStar(require(\"tls\"));\nconst assert_1 = __importDefault(require(\"assert\"));\nconst debug_1 = __importDefault(require(\"debug\"));\nconst agent_base_1 = require(\"agent-base\");\nconst url_1 = require(\"url\");\nconst parse_proxy_response_1 = require(\"./parse-proxy-response\");\nconst debug = (0, debug_1.default)('https-proxy-agent');\nconst setServernameFromNonIpHost = (options) => {\n if (options.servername === undefined &&\n options.host &&\n !net.isIP(options.host)) {\n return {\n ...options,\n servername: options.host,\n };\n }\n return options;\n};\n/**\n * The `HttpsProxyAgent` implements an HTTP Agent subclass that connects to\n * the specified \"HTTP(s) proxy server\" in order to proxy HTTPS requests.\n *\n * Outgoing HTTP requests are first tunneled through the proxy server using the\n * `CONNECT` HTTP request method to establish a connection to the proxy server,\n * and then the proxy server connects to the destination target and issues the\n * HTTP request from the proxy server.\n *\n * `https:` requests have their socket connection upgraded to TLS once\n * the connection to the proxy server has been established.\n */\nclass HttpsProxyAgent extends agent_base_1.Agent {\n constructor(proxy, opts) {\n super(opts);\n this.options = { path: undefined };\n this.proxy = typeof proxy === 'string' ? new url_1.URL(proxy) : proxy;\n this.proxyHeaders = opts?.headers ?? {};\n debug('Creating new HttpsProxyAgent instance: %o', this.proxy.href);\n // Trim off the brackets from IPv6 addresses\n const host = (this.proxy.hostname || this.proxy.host).replace(/^\\[|\\]$/g, '');\n const port = this.proxy.port\n ? parseInt(this.proxy.port, 10)\n : this.proxy.protocol === 'https:'\n ? 443\n : 80;\n this.connectOpts = {\n // Attempt to negotiate http/1.1 for proxy servers that support http/2\n ALPNProtocols: ['http/1.1'],\n ...(opts ? omit(opts, 'headers') : null),\n host,\n port,\n };\n }\n /**\n * Called when the node-core HTTP client library is creating a\n * new HTTP request.\n */\n async connect(req, opts) {\n const { proxy } = this;\n if (!opts.host) {\n throw new TypeError('No \"host\" provided');\n }\n // Create a socket connection to the proxy server.\n let socket;\n if (proxy.protocol === 'https:') {\n debug('Creating `tls.Socket`: %o', this.connectOpts);\n socket = tls.connect(setServernameFromNonIpHost(this.connectOpts));\n }\n else {\n debug('Creating `net.Socket`: %o', this.connectOpts);\n socket = net.connect(this.connectOpts);\n }\n const headers = typeof this.proxyHeaders === 'function'\n ? this.proxyHeaders()\n : { ...this.proxyHeaders };\n const host = net.isIPv6(opts.host) ? `[${opts.host}]` : opts.host;\n let payload = `CONNECT ${host}:${opts.port} HTTP/1.1\\r\\n`;\n // Inject the `Proxy-Authorization` header if necessary.\n if (proxy.username || proxy.password) {\n const auth = `${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`;\n headers['Proxy-Authorization'] = `Basic ${Buffer.from(auth).toString('base64')}`;\n }\n headers.Host = `${host}:${opts.port}`;\n if (!headers['Proxy-Connection']) {\n headers['Proxy-Connection'] = this.keepAlive\n ? 'Keep-Alive'\n : 'close';\n }\n for (const name of Object.keys(headers)) {\n payload += `${name}: ${headers[name]}\\r\\n`;\n }\n const proxyResponsePromise = (0, parse_proxy_response_1.parseProxyResponse)(socket);\n socket.write(`${payload}\\r\\n`);\n const { connect, buffered } = await proxyResponsePromise;\n req.emit('proxyConnect', connect);\n this.emit('proxyConnect', connect, req);\n if (connect.statusCode === 200) {\n req.once('socket', resume);\n if (opts.secureEndpoint) {\n // The proxy is connecting to a TLS server, so upgrade\n // this socket connection to a TLS connection.\n debug('Upgrading socket connection to TLS');\n return tls.connect({\n ...omit(setServernameFromNonIpHost(opts), 'host', 'path', 'port'),\n socket,\n });\n }\n return socket;\n }\n // Some other status code that's not 200... need to re-play the HTTP\n // header \"data\" events onto the socket once the HTTP machinery is\n // attached so that the node core `http` can parse and handle the\n // error status code.\n // Close the original socket, and a new \"fake\" socket is returned\n // instead, so that the proxy doesn't get the HTTP request\n // written to it (which may contain `Authorization` headers or other\n // sensitive data).\n //\n // See: https://hackerone.com/reports/541502\n socket.destroy();\n const fakeSocket = new net.Socket({ writable: false });\n fakeSocket.readable = true;\n // Need to wait for the \"socket\" event to re-play the \"data\" events.\n req.once('socket', (s) => {\n debug('Replaying proxy buffer for failed request');\n (0, assert_1.default)(s.listenerCount('data') > 0);\n // Replay the \"buffered\" Buffer onto the fake `socket`, since at\n // this point the HTTP module machinery has been hooked up for\n // the user.\n s.push(buffered);\n s.push(null);\n });\n return fakeSocket;\n }\n}\nHttpsProxyAgent.protocols = ['http', 'https'];\nexports.HttpsProxyAgent = HttpsProxyAgent;\nfunction resume(socket) {\n socket.resume();\n}\nfunction omit(obj, ...keys) {\n const ret = {};\n let key;\n for (key in obj) {\n if (!keys.includes(key)) {\n ret[key] = obj[key];\n }\n }\n return ret;\n}\n//# sourceMappingURL=index.js.map"
|
|
16
16
|
],
|
|
17
17
|
"mappings": "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",
|
|
18
|
-
"debugId": "
|
|
18
|
+
"debugId": "299A881E952617E364756E2164756E21",
|
|
19
19
|
"names": []
|
|
20
20
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../core/src/database/migration/20260612174303_project_dir_strategy.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"import { Effect } from \"effect\"\nimport type { DatabaseMigration } from \"../migration\"\n\nexport default {\n id: \"20260612174303_project_dir_strategy\",\n up(tx) {\n return Effect.gen(function* () {\n yield* tx.run(`ALTER TABLE \\`project_directory\\` ADD \\`strategy\\` text;`)\n yield* tx.run(`PRAGMA foreign_keys=OFF;`)\n yield* tx.run(`\n CREATE TABLE \\`__new_project_directory\\` (\n \\`project_id\\` text NOT NULL,\n \\`directory\\` text NOT NULL,\n \\`type\\` text,\n \\`strategy\\` text,\n \\`time_created\\` integer NOT NULL,\n CONSTRAINT \\`project_directory_pk\\` PRIMARY KEY(\\`project_id\\`, \\`directory\\`),\n CONSTRAINT \\`fk_project_directory_project_id_project_id_fk\\` FOREIGN KEY (\\`project_id\\`) REFERENCES \\`project\\`(\\`id\\`) ON DELETE CASCADE\n );\n `)\n yield* tx.run(\n `INSERT INTO \\`__new_project_directory\\`(\\`project_id\\`, \\`directory\\`, \\`type\\`, \\`time_created\\`) SELECT \\`project_id\\`, \\`directory\\`, \\`type\\`, \\`time_created\\` FROM \\`project_directory\\`;`,\n )\n yield* tx.run(`DROP TABLE \\`project_directory\\`;`)\n yield* tx.run(`ALTER TABLE \\`__new_project_directory\\` RENAME TO \\`project_directory\\`;`)\n yield* tx.run(`PRAGMA foreign_keys=ON;`)\n })\n },\n} satisfies DatabaseMigration.Migration\n"
|
|
6
|
+
],
|
|
7
|
+
"mappings": ";wHAGA,SAAe,QACb,GAAI,sCACJ,EAAE,CAAC,EAAI,CACL,OAAO,EAAO,IAAI,SAAU,EAAG,CAC7B,MAAO,EAAG,IAAI,sDAA0D,EACxE,MAAO,EAAG,IAAI,0BAA0B,EACxC,MAAO,EAAG,IAAI,wdAUb,EACD,MAAO,EAAG,IACR,6KACF,EACA,MAAO,EAAG,IAAI,iCAAmC,EACjD,MAAO,EAAG,IAAI,sEAA0E,EACxF,MAAO,EAAG,IAAI,yBAAyB,EACxC,EAEL",
|
|
8
|
+
"debugId": "4CD87209E9B9D60864756E2164756E21",
|
|
9
|
+
"names": []
|
|
10
|
+
}
|