@mastra/server 1.75.0-alpha.0 → 1.75.0-alpha.2

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.
Files changed (156) hide show
  1. package/dist/{agent-versions-BA8ug-Iy.js → agent-versions-CTAEDQuT.js} +3 -3
  2. package/dist/agent-versions-CTAEDQuT.js.map +1 -0
  3. package/dist/{agent-versions-BNqDvnn0.cjs → agent-versions-RvvNdlZk.cjs} +3 -3
  4. package/dist/agent-versions-RvvNdlZk.cjs.map +1 -0
  5. package/dist/{api-schema-manifest-BmraF-WX.js → api-schema-manifest-B0p6nxU1.js} +2 -2
  6. package/dist/{api-schema-manifest-BmraF-WX.js.map → api-schema-manifest-B0p6nxU1.js.map} +1 -1
  7. package/dist/{api-schema-manifest-Blh5-4VH.cjs → api-schema-manifest-D9_jxxNw.cjs} +2 -2
  8. package/dist/{api-schema-manifest-Blh5-4VH.cjs.map → api-schema-manifest-D9_jxxNw.cjs.map} +1 -1
  9. package/dist/{dist-DH39C5Bz.js → dist-5xXLv6KR.js} +110 -44
  10. package/dist/{dist-DH39C5Bz.js.map → dist-5xXLv6KR.js.map} +1 -1
  11. package/dist/{dist-DJ7t3yBx.js → dist-8fx1_bLF.js} +3 -3
  12. package/dist/{dist-DJ7t3yBx.js.map → dist-8fx1_bLF.js.map} +1 -1
  13. package/dist/{dist-IDt748Ya.cjs → dist-B6rOIYr_.cjs} +110 -44
  14. package/dist/{dist-IDt748Ya.cjs.map → dist-B6rOIYr_.cjs.map} +1 -1
  15. package/dist/{dist-D1rb-p2Y.js → dist-BCTqy9i3.js} +4 -4
  16. package/dist/{dist-D1rb-p2Y.js.map → dist-BCTqy9i3.js.map} +1 -1
  17. package/dist/{dist-DO5NHh-t.cjs → dist-Bw2XgCSY.cjs} +3 -3
  18. package/dist/{dist-DO5NHh-t.cjs.map → dist-Bw2XgCSY.cjs.map} +1 -1
  19. package/dist/{dist-Dx2Qp8Rj.js → dist-Bz4l8I_x.js} +3 -3
  20. package/dist/{dist-Dx2Qp8Rj.js.map → dist-Bz4l8I_x.js.map} +1 -1
  21. package/dist/{dist-DD1mFVAc.js → dist-C5TZXkhS.js} +3 -3
  22. package/dist/dist-C5TZXkhS.js.map +1 -0
  23. package/dist/{dist-B0uCWZUF.cjs → dist-CgemVduI.cjs} +4 -4
  24. package/dist/{dist-B0uCWZUF.cjs.map → dist-CgemVduI.cjs.map} +1 -1
  25. package/dist/{dist-Bl3UrwJs.js → dist-D1oSHJhK.js} +3 -3
  26. package/dist/{dist-Bl3UrwJs.js.map → dist-D1oSHJhK.js.map} +1 -1
  27. package/dist/{dist-vM0zJcP5.cjs → dist-D5O8s1u2.cjs} +3 -3
  28. package/dist/{dist-vM0zJcP5.cjs.map → dist-D5O8s1u2.cjs.map} +1 -1
  29. package/dist/{dist-BQ0VOLA9.cjs → dist-D5mpJHHH.cjs} +3 -3
  30. package/dist/{dist-BQ0VOLA9.cjs.map → dist-D5mpJHHH.cjs.map} +1 -1
  31. package/dist/{dist-CkFmsB2E.cjs → dist-UACuV_1t.cjs} +3 -3
  32. package/dist/{dist-CkFmsB2E.cjs.map → dist-UACuV_1t.cjs.map} +1 -1
  33. package/dist/{dist-DiEECrlS.js → dist-_RnqhYfY.js} +3 -3
  34. package/dist/{dist-DiEECrlS.js.map → dist-_RnqhYfY.js.map} +1 -1
  35. package/dist/{dist-C2u5Kqxy.cjs → dist-tYOY8gEs.cjs} +3 -3
  36. package/dist/dist-tYOY8gEs.cjs.map +1 -0
  37. package/dist/docs/SKILL.md +1 -1
  38. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  39. package/dist/{helpers-8jl_xtug.cjs → helpers-DhvWjBBJ.cjs} +36 -20
  40. package/dist/helpers-DhvWjBBJ.cjs.map +1 -0
  41. package/dist/{helpers-610L0lwQ.js → helpers-DudW6a17.js} +36 -20
  42. package/dist/helpers-DudW6a17.js.map +1 -0
  43. package/dist/{routes-CcjyQojv.cjs → routes-BuiLQCOQ.cjs} +3 -3
  44. package/dist/{routes-CcjyQojv.cjs.map → routes-BuiLQCOQ.cjs.map} +1 -1
  45. package/dist/{routes-Boe1UThy.js → routes-CJygX0-a.js} +3 -3
  46. package/dist/{routes-Boe1UThy.js.map → routes-CJygX0-a.js.map} +1 -1
  47. package/dist/{schedules-DTYwAXI_.cjs → schedules-Buunf_MT.cjs} +11 -5
  48. package/dist/schedules-Buunf_MT.cjs.map +1 -0
  49. package/dist/{schedules-Cv3CVT2a.js → schedules-OiPV0jLY.js} +11 -5
  50. package/dist/schedules-OiPV0jLY.js.map +1 -0
  51. package/dist/{scorer-versions-nip3xSwF.cjs → scorer-versions-BfGNw7Wp.cjs} +2 -2
  52. package/dist/{scorer-versions-nip3xSwF.cjs.map → scorer-versions-BfGNw7Wp.cjs.map} +1 -1
  53. package/dist/{scorer-versions-CscApWzu.js → scorer-versions-gXsdWw0V.js} +2 -2
  54. package/dist/{scorer-versions-CscApWzu.js.map → scorer-versions-gXsdWw0V.js.map} +1 -1
  55. package/dist/server/auth/helpers.d.ts.map +1 -1
  56. package/dist/server/auth/index.cjs +1 -1
  57. package/dist/server/auth/index.js +1 -1
  58. package/dist/server/handlers/agent-builder.cjs +1 -1
  59. package/dist/server/handlers/agent-builder.js +1 -1
  60. package/dist/server/handlers/agent-controller.cjs +1 -1
  61. package/dist/server/handlers/agent-controller.js +1 -1
  62. package/dist/server/handlers/agent-versions.cjs +1 -1
  63. package/dist/server/handlers/agent-versions.d.ts +998 -22
  64. package/dist/server/handlers/agent-versions.d.ts.map +1 -1
  65. package/dist/server/handlers/agent-versions.js +1 -1
  66. package/dist/server/handlers/agents.cjs +18 -2
  67. package/dist/server/handlers/agents.cjs.map +1 -1
  68. package/dist/server/handlers/agents.d.ts +248 -4
  69. package/dist/server/handlers/agents.d.ts.map +1 -1
  70. package/dist/server/handlers/agents.js +18 -2
  71. package/dist/server/handlers/agents.js.map +1 -1
  72. package/dist/server/handlers/auth.cjs +1 -1
  73. package/dist/server/handlers/auth.js +1 -1
  74. package/dist/server/handlers/conversations.cjs +1 -1
  75. package/dist/server/handlers/conversations.js +1 -1
  76. package/dist/server/handlers/logs.cjs +1 -1
  77. package/dist/server/handlers/logs.js +1 -1
  78. package/dist/server/handlers/memory.cjs +1 -1
  79. package/dist/server/handlers/memory.js +1 -1
  80. package/dist/server/handlers/observability-new-endpoints.d.ts +35 -3
  81. package/dist/server/handlers/observability-new-endpoints.d.ts.map +1 -1
  82. package/dist/server/handlers/plans.cjs +1 -1
  83. package/dist/server/handlers/plans.js +1 -1
  84. package/dist/server/handlers/responses.cjs +1 -1
  85. package/dist/server/handlers/responses.js +1 -1
  86. package/dist/server/handlers/responses.storage.cjs +1 -1
  87. package/dist/server/handlers/responses.storage.js +1 -1
  88. package/dist/server/handlers/schedules.cjs +1 -1
  89. package/dist/server/handlers/schedules.d.ts +26 -13
  90. package/dist/server/handlers/schedules.d.ts.map +1 -1
  91. package/dist/server/handlers/schedules.js +1 -1
  92. package/dist/server/handlers/scorer-versions.cjs +1 -1
  93. package/dist/server/handlers/scorer-versions.js +1 -1
  94. package/dist/server/handlers/stored-agent-favorites.cjs +1 -1
  95. package/dist/server/handlers/stored-agent-favorites.js +1 -1
  96. package/dist/server/handlers/stored-agents.cjs +1 -1
  97. package/dist/server/handlers/stored-agents.d.ts +1065 -89
  98. package/dist/server/handlers/stored-agents.d.ts.map +1 -1
  99. package/dist/server/handlers/stored-agents.js +1 -1
  100. package/dist/server/handlers/stored-scorers.cjs +1 -1
  101. package/dist/server/handlers/stored-scorers.js +1 -1
  102. package/dist/server/handlers/system.cjs +1 -1
  103. package/dist/server/handlers/system.js +1 -1
  104. package/dist/server/handlers/tools.cjs +1 -1
  105. package/dist/server/handlers/tools.js +1 -1
  106. package/dist/server/handlers/utils.cjs +2 -1
  107. package/dist/server/handlers/utils.d.ts +6 -0
  108. package/dist/server/handlers/utils.d.ts.map +1 -1
  109. package/dist/server/handlers/utils.js +2 -2
  110. package/dist/server/handlers/workflow-builder.cjs +1 -1
  111. package/dist/server/handlers/workflow-builder.js +1 -1
  112. package/dist/server/handlers/workflows.cjs +1 -1
  113. package/dist/server/handlers/workflows.js +1 -1
  114. package/dist/server/schemas/agent-versions.d.ts +660 -20
  115. package/dist/server/schemas/agent-versions.d.ts.map +1 -1
  116. package/dist/server/schemas/index.cjs +5 -4
  117. package/dist/server/schemas/index.js +5 -5
  118. package/dist/server/schemas/memory-config.d.ts +130 -0
  119. package/dist/server/schemas/memory-config.d.ts.map +1 -1
  120. package/dist/server/schemas/schedules.d.ts +8 -0
  121. package/dist/server/schemas/schedules.d.ts.map +1 -1
  122. package/dist/server/schemas/stored-agents.d.ts +1430 -150
  123. package/dist/server/schemas/stored-agents.d.ts.map +1 -1
  124. package/dist/server/server-adapter/index.cjs +2 -2
  125. package/dist/server/server-adapter/index.js +2 -2
  126. package/dist/server/server-adapter/routes/observability.d.ts +35 -3
  127. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
  128. package/dist/{stored-agents-DTgigNRY.cjs → stored-agents-Dmsel7ey.cjs} +46 -14
  129. package/dist/stored-agents-Dmsel7ey.cjs.map +1 -0
  130. package/dist/{stored-agents-CIdYOdK0.js → stored-agents-ts0bWw8l.js} +41 -15
  131. package/dist/stored-agents-ts0bWw8l.js.map +1 -0
  132. package/dist/{stored-scorers-CziNmnC8.cjs → stored-scorers-DoW6lYh8.cjs} +2 -2
  133. package/dist/{stored-scorers-CziNmnC8.cjs.map → stored-scorers-DoW6lYh8.cjs.map} +1 -1
  134. package/dist/{stored-scorers-DrkDvsU8.js → stored-scorers-DySg7-qS.js} +2 -2
  135. package/dist/{stored-scorers-DrkDvsU8.js.map → stored-scorers-DySg7-qS.js.map} +1 -1
  136. package/dist/{utils-aIu3gkhJ.cjs → utils-HqDZJwRc.cjs} +31 -1
  137. package/dist/utils-HqDZJwRc.cjs.map +1 -0
  138. package/dist/{utils-KsERfbhc.js → utils-KcHk7C0D.js} +26 -2
  139. package/dist/utils-KcHk7C0D.js.map +1 -0
  140. package/dist/{workflow-builder-DTcM8ER3.cjs → workflow-builder-BSjQJCVD.cjs} +2 -2
  141. package/dist/{workflow-builder-DTcM8ER3.cjs.map → workflow-builder-BSjQJCVD.cjs.map} +1 -1
  142. package/dist/{workflow-builder-KRSpDol2.js → workflow-builder-DJ48IzXQ.js} +2 -2
  143. package/dist/{workflow-builder-KRSpDol2.js.map → workflow-builder-DJ48IzXQ.js.map} +1 -1
  144. package/package.json +6 -6
  145. package/dist/agent-versions-BA8ug-Iy.js.map +0 -1
  146. package/dist/agent-versions-BNqDvnn0.cjs.map +0 -1
  147. package/dist/dist-C2u5Kqxy.cjs.map +0 -1
  148. package/dist/dist-DD1mFVAc.js.map +0 -1
  149. package/dist/helpers-610L0lwQ.js.map +0 -1
  150. package/dist/helpers-8jl_xtug.cjs.map +0 -1
  151. package/dist/schedules-Cv3CVT2a.js.map +0 -1
  152. package/dist/schedules-DTYwAXI_.cjs.map +0 -1
  153. package/dist/stored-agents-CIdYOdK0.js.map +0 -1
  154. package/dist/stored-agents-DTgigNRY.cjs.map +0 -1
  155. package/dist/utils-KsERfbhc.js.map +0 -1
  156. package/dist/utils-aIu3gkhJ.cjs.map +0 -1
@@ -1,6 +1,6 @@
1
- import { a as createEventSourceResponseHandler, b as TooManyEmbeddingValuesForCallError, c as generateId, d as parseProviderOptions, h as withoutTrailingSlash, m as resolve, o as createJsonErrorResponseHandler, p as postJsonToApi, r as convertUint8ArrayToBase64, s as createJsonResponseHandler, t as combineHeaders, u as loadApiKey, x as UnsupportedFunctionalityError } from "./dist-DD1mFVAc.js";
1
+ import { a as createEventSourceResponseHandler, b as TooManyEmbeddingValuesForCallError, c as generateId, d as parseProviderOptions, h as withoutTrailingSlash, m as resolve, o as createJsonErrorResponseHandler, p as postJsonToApi, r as convertUint8ArrayToBase64, s as createJsonResponseHandler, t as combineHeaders, u as loadApiKey, x as UnsupportedFunctionalityError } from "./dist-C5TZXkhS.js";
2
2
  import { z as z$1 } from "zod";
3
- //#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/0d7c1bfed4eb6422d3e32044e59c2cbec4bc00ae0e8489bfc9e1883e5afeb67b/node_modules/@ai-sdk/google/dist/index.mjs
3
+ //#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/f2ff94baf0132110c56e83fd6cdbf61eecce437955a1c61117d15a636f4f7785/node_modules/@ai-sdk/google/dist/index.mjs
4
4
  function convertJSONSchemaToOpenAPISchema(jsonSchema) {
5
5
  if (isEmptyObjectSchema(jsonSchema)) return;
6
6
  if (typeof jsonSchema === "boolean") return {
@@ -702,4 +702,4 @@ var google = createGoogleGenerativeAI();
702
702
  //#endregion
703
703
  export { google };
704
704
 
705
- //# sourceMappingURL=dist-DJ7t3yBx.js.map
705
+ //# sourceMappingURL=dist-8fx1_bLF.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dist-DJ7t3yBx.js","names":["z","UnsupportedFunctionalityError2","_exhaustiveCheck","z2","combineHeaders2","resolve2","postJsonToApi2","createJsonResponseHandler2","z3"],"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/0d7c1bfed4eb6422d3e32044e59c2cbec4bc00ae0e8489bfc9e1883e5afeb67b/node_modules/@ai-sdk/google/dist/index.mjs"],"sourcesContent":["// src/google-provider.ts\nimport {\n generateId,\n loadApiKey,\n withoutTrailingSlash\n} from \"@ai-sdk/provider-utils\";\n\n// src/google-generative-ai-language-model.ts\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n resolve\n} from \"@ai-sdk/provider-utils\";\nimport { z as z2 } from \"zod\";\n\n// src/convert-json-schema-to-openapi-schema.ts\nfunction convertJSONSchemaToOpenAPISchema(jsonSchema) {\n if (isEmptyObjectSchema(jsonSchema)) {\n return void 0;\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)\n result.description = description;\n if (required)\n result.required = required;\n if (format)\n result.format = format;\n if (constValue !== void 0) {\n result.enum = [constValue];\n }\n if (type) {\n if (Array.isArray(type)) {\n if (type.includes(\"null\")) {\n result.type = type.filter((t) => t !== \"null\")[0];\n result.nullable = true;\n } else {\n result.type = type;\n }\n } else if (type === \"null\") {\n result.type = \"null\";\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);\n return acc;\n },\n {}\n );\n }\n if (items) {\n result.items = Array.isArray(items) ? items.map(convertJSONSchemaToOpenAPISchema) : convertJSONSchemaToOpenAPISchema(items);\n }\n if (allOf) {\n result.allOf = allOf.map(convertJSONSchemaToOpenAPISchema);\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(nonNullSchemas[0]);\n if (typeof converted === \"object\") {\n result.nullable = true;\n Object.assign(result, converted);\n }\n } else {\n result.anyOf = nonNullSchemas.map(convertJSONSchemaToOpenAPISchema);\n result.nullable = true;\n }\n } else {\n result.anyOf = anyOf.map(convertJSONSchemaToOpenAPISchema);\n }\n }\n if (oneOf) {\n result.oneOf = oneOf.map(convertJSONSchemaToOpenAPISchema);\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 { convertUint8ArrayToBase64 } from \"@ai-sdk/provider-utils\";\nfunction convertToGoogleGenerativeAIMessages(prompt) {\n var _a, _b;\n const systemInstructionParts = [];\n const contents = [];\n let systemMessagesAllowed = 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 \"image\": {\n parts.push(\n part.image instanceof URL ? {\n fileData: {\n mimeType: (_a = part.mimeType) != null ? _a : \"image/jpeg\",\n fileUri: part.image.toString()\n }\n } : {\n inlineData: {\n mimeType: (_b = part.mimeType) != null ? _b : \"image/jpeg\",\n data: convertUint8ArrayToBase64(part.image)\n }\n }\n );\n break;\n }\n case \"file\": {\n parts.push(\n part.data instanceof URL ? {\n fileData: {\n mimeType: part.mimeType,\n fileUri: part.data.toString()\n }\n } : {\n inlineData: {\n mimeType: part.mimeType,\n data: 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 switch (part.type) {\n case \"text\": {\n return part.text.length === 0 ? void 0 : { text: part.text };\n }\n case \"file\": {\n if (part.mimeType !== \"image/png\") {\n throw new UnsupportedFunctionalityError({\n functionality: \"Only PNG images are supported in assistant messages\"\n });\n }\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.mimeType,\n data: part.data\n }\n };\n }\n case \"tool-call\": {\n return {\n functionCall: {\n name: part.toolName,\n args: part.args\n }\n };\n }\n }\n }).filter((part) => part !== void 0)\n });\n break;\n }\n case \"tool\": {\n systemMessagesAllowed = false;\n contents.push({\n role: \"user\",\n parts: content.map((part) => ({\n functionResponse: {\n name: part.toolName,\n response: {\n name: part.toolName,\n content: part.result\n }\n }\n }))\n });\n break;\n }\n }\n }\n return {\n systemInstruction: systemInstructionParts.length > 0 ? { 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 { createJsonErrorResponseHandler } from \"@ai-sdk/provider-utils\";\nimport { z } from \"zod\";\nvar googleErrorDataSchema = z.object({\n error: z.object({\n code: z.number().nullable(),\n message: z.string(),\n status: z.string()\n })\n});\nvar googleFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: googleErrorDataSchema,\n errorToMessage: (data) => data.error.message\n});\n\n// src/google-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareTools(mode, useSearchGrounding, dynamicRetrievalConfig, modelId) {\n var _a, _b;\n const tools = ((_a = mode.tools) == null ? void 0 : _a.length) ? mode.tools : void 0;\n const toolWarnings = [];\n const isGemini2 = modelId.includes(\"gemini-2\");\n const supportsDynamicRetrieval = modelId.includes(\"gemini-1.5-flash\") && !modelId.includes(\"-8b\");\n if (useSearchGrounding) {\n return {\n tools: isGemini2 ? { googleSearch: {} } : {\n googleSearchRetrieval: !supportsDynamicRetrieval || !dynamicRetrievalConfig ? {} : { dynamicRetrievalConfig }\n },\n toolConfig: void 0,\n toolWarnings\n };\n }\n if (tools == null) {\n return { tools: void 0, toolConfig: void 0, toolWarnings };\n }\n const functionDeclarations = [];\n for (const tool of tools) {\n if (tool.type === \"provider-defined\") {\n toolWarnings.push({ type: \"unsupported-tool\", tool });\n } else {\n functionDeclarations.push({\n name: tool.name,\n description: (_b = tool.description) != null ? _b : \"\",\n parameters: convertJSONSchemaToOpenAPISchema(tool.parameters)\n });\n }\n }\n const toolChoice = mode.toolChoice;\n if (toolChoice == null) {\n return {\n tools: { functionDeclarations },\n toolConfig: void 0,\n toolWarnings\n };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n return {\n tools: { functionDeclarations },\n toolConfig: { functionCallingConfig: { mode: \"AUTO\" } },\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: { functionCallingConfig: { mode: \"ANY\" } },\n toolWarnings\n };\n case \"tool\":\n return {\n tools: { functionDeclarations },\n toolConfig: {\n functionCallingConfig: {\n mode: \"ANY\",\n allowedFunctionNames: [toolChoice.toolName]\n }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\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 \"FINISH_REASON_UNSPECIFIED\":\n case \"OTHER\":\n return \"other\";\n case \"MALFORMED_FUNCTION_CALL\":\n return \"error\";\n default:\n return \"unknown\";\n }\n}\n\n// src/google-generative-ai-language-model.ts\nvar GoogleGenerativeAILanguageModel = class {\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.defaultObjectGenerationMode = \"json\";\n this.supportsImageUrls = false;\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n get supportsStructuredOutputs() {\n var _a;\n return (_a = this.settings.structuredOutputs) != null ? _a : true;\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n mode,\n prompt,\n maxTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences,\n responseFormat,\n seed,\n providerMetadata\n }) {\n var _a, _b, _c;\n const type = mode.type;\n const warnings = [];\n const googleOptions = parseProviderOptions({\n provider: \"google\",\n providerOptions: providerMetadata,\n schema: googleGenerativeAIProviderOptionsSchema\n });\n if (((_a = googleOptions == null ? void 0 : googleOptions.thinkingConfig) == null ? void 0 : _a.includeThoughts) === true && !this.config.provider.startsWith(\"google.vertex.\")) {\n warnings.push({\n type: \"other\",\n message: `The 'includeThoughts' option 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 const generationConfig = {\n // standardized settings:\n maxOutputTokens: maxTokens,\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 this.supportsStructuredOutputs ? convertJSONSchemaToOpenAPISchema(responseFormat.schema) : void 0,\n ...this.settings.audioTimestamp && {\n audioTimestamp: this.settings.audioTimestamp\n },\n // provider options:\n responseModalities: googleOptions == null ? void 0 : googleOptions.responseModalities,\n thinkingConfig: googleOptions == null ? void 0 : googleOptions.thinkingConfig\n };\n const { contents, systemInstruction } = convertToGoogleGenerativeAIMessages(prompt);\n switch (type) {\n case \"regular\": {\n const { tools, toolConfig, toolWarnings } = prepareTools(\n mode,\n (_b = this.settings.useSearchGrounding) != null ? _b : false,\n this.settings.dynamicRetrievalConfig,\n this.modelId\n );\n return {\n args: {\n generationConfig,\n contents,\n systemInstruction,\n safetySettings: this.settings.safetySettings,\n tools,\n toolConfig,\n cachedContent: this.settings.cachedContent\n },\n warnings: [...warnings, ...toolWarnings]\n };\n }\n case \"object-json\": {\n return {\n args: {\n generationConfig: {\n ...generationConfig,\n responseMimeType: \"application/json\",\n responseSchema: mode.schema != null && // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n this.supportsStructuredOutputs ? convertJSONSchemaToOpenAPISchema(mode.schema) : void 0\n },\n contents,\n systemInstruction,\n safetySettings: this.settings.safetySettings,\n cachedContent: this.settings.cachedContent\n },\n warnings\n };\n }\n case \"object-tool\": {\n return {\n args: {\n generationConfig,\n contents,\n systemInstruction,\n tools: {\n functionDeclarations: [\n {\n name: mode.tool.name,\n description: (_c = mode.tool.description) != null ? _c : \"\",\n parameters: convertJSONSchemaToOpenAPISchema(\n mode.tool.parameters\n )\n }\n ]\n },\n toolConfig: { functionCallingConfig: { mode: \"ANY\" } },\n safetySettings: this.settings.safetySettings,\n cachedContent: this.settings.cachedContent\n },\n warnings\n };\n }\n default: {\n const _exhaustiveCheck = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n supportsUrl(url) {\n return this.config.isSupportedUrl(url);\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e;\n const { args, warnings } = await this.getArgs(options);\n const body = JSON.stringify(args);\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 { contents: rawPrompt, ...rawSettings } = args;\n const candidate = response.candidates[0];\n const parts = candidate.content == null || typeof candidate.content !== \"object\" || !(\"parts\" in candidate.content) ? [] : candidate.content.parts;\n const toolCalls = getToolCallsFromParts({\n parts,\n // Use candidateParts\n generateId: this.config.generateId\n });\n const usageMetadata = response.usageMetadata;\n return {\n text: getTextFromParts(parts),\n reasoning: getReasoningDetailsFromParts(parts),\n files: (_a = getInlineDataParts(parts)) == null ? void 0 : _a.map((part) => ({\n data: part.inlineData.data,\n mimeType: part.inlineData.mimeType\n })),\n toolCalls,\n finishReason: mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls: toolCalls != null && toolCalls.length > 0\n }),\n usage: {\n promptTokens: (_b = usageMetadata == null ? void 0 : usageMetadata.promptTokenCount) != null ? _b : NaN,\n completionTokens: (_c = usageMetadata == null ? void 0 : usageMetadata.candidatesTokenCount) != null ? _c : NaN\n },\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n warnings,\n providerMetadata: {\n google: {\n groundingMetadata: (_d = candidate.groundingMetadata) != null ? _d : null,\n safetyRatings: (_e = candidate.safetyRatings) != null ? _e : null\n }\n },\n sources: extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: this.config.generateId\n }),\n request: { body }\n };\n }\n async doStream(options) {\n const { args, warnings } = await this.getArgs(options);\n const body = JSON.stringify(args);\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 const { contents: rawPrompt, ...rawSettings } = args;\n let finishReason = \"unknown\";\n let usage = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN\n };\n let providerMetadata = void 0;\n const generateId2 = this.config.generateId;\n let hasToolCalls = false;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n transform(chunk, controller) {\n var _a, _b, _c, _d, _e, _f;\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 = {\n promptTokens: (_a = usageMetadata.promptTokenCount) != null ? _a : NaN,\n completionTokens: (_b = usageMetadata.candidatesTokenCount) != null ? _b : NaN\n };\n }\n const candidate = (_c = value.candidates) == null ? void 0 : _c[0];\n if (candidate == null) {\n return;\n }\n const content = candidate.content;\n if (content != null) {\n const deltaText = getTextFromParts(content.parts);\n if (deltaText != null) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: deltaText\n });\n }\n const reasoningDeltaText = getReasoningDetailsFromParts(\n content.parts\n );\n if (reasoningDeltaText != null) {\n for (const part of reasoningDeltaText) {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: part.text\n });\n }\n }\n const inlineDataParts = getInlineDataParts(content.parts);\n if (inlineDataParts != null) {\n for (const part of inlineDataParts) {\n controller.enqueue({\n type: \"file\",\n mimeType: part.inlineData.mimeType,\n data: part.inlineData.data\n });\n }\n }\n const toolCallDeltas = getToolCallsFromParts({\n parts: content.parts,\n generateId: generateId2\n });\n if (toolCallDeltas != null) {\n for (const toolCall of toolCallDeltas) {\n controller.enqueue({\n type: \"tool-call-delta\",\n toolCallType: \"function\",\n toolCallId: toolCall.toolCallId,\n toolName: toolCall.toolName,\n argsTextDelta: toolCall.args\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallType: \"function\",\n toolCallId: toolCall.toolCallId,\n toolName: toolCall.toolName,\n args: toolCall.args\n });\n hasToolCalls = true;\n }\n }\n }\n if (candidate.finishReason != null) {\n finishReason = mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls\n });\n const sources = (_d = extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: generateId2\n })) != null ? _d : [];\n for (const source of sources) {\n controller.enqueue({ type: \"source\", source });\n }\n providerMetadata = {\n google: {\n groundingMetadata: (_e = candidate.groundingMetadata) != null ? _e : null,\n safetyRatings: (_f = candidate.safetyRatings) != null ? _f : null\n }\n };\n }\n },\n flush(controller) {\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage,\n providerMetadata\n });\n }\n })\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body }\n };\n }\n};\nfunction getToolCallsFromParts({\n parts,\n generateId: generateId2\n}) {\n const functionCallParts = parts == null ? void 0 : parts.filter(\n (part) => \"functionCall\" in part\n );\n return functionCallParts == null || functionCallParts.length === 0 ? void 0 : functionCallParts.map((part) => ({\n toolCallType: \"function\",\n toolCallId: generateId2(),\n toolName: part.functionCall.name,\n args: JSON.stringify(part.functionCall.args)\n }));\n}\nfunction getTextFromParts(parts) {\n const textParts = parts == null ? void 0 : parts.filter(\n (part) => \"text\" in part && part.thought !== true\n );\n return textParts == null || textParts.length === 0 ? void 0 : textParts.map((part) => part.text).join(\"\");\n}\nfunction getReasoningDetailsFromParts(parts) {\n const reasoningParts = parts == null ? void 0 : parts.filter(\n (part) => \"text\" in part && part.thought === true && part.text != null\n );\n return reasoningParts == null || reasoningParts.length === 0 ? void 0 : reasoningParts.map((part) => ({ type: \"text\", text: part.text }));\n}\nfunction getInlineDataParts(parts) {\n return parts == null ? void 0 : parts.filter(\n (part) => \"inlineData\" in part\n );\n}\nfunction extractSources({\n groundingMetadata,\n generateId: generateId2\n}) {\n var _a;\n return (_a = groundingMetadata == null ? void 0 : groundingMetadata.groundingChunks) == null ? void 0 : _a.filter(\n (chunk) => chunk.web != null\n ).map((chunk) => ({\n sourceType: \"url\",\n id: generateId2(),\n url: chunk.web.uri,\n title: chunk.web.title\n }));\n}\nvar contentSchema = z2.object({\n parts: z2.array(\n z2.union([\n // note: order matters since text can be fully empty\n z2.object({\n functionCall: z2.object({\n name: z2.string(),\n args: z2.unknown()\n })\n }),\n z2.object({\n inlineData: z2.object({\n mimeType: z2.string(),\n data: z2.string()\n })\n }),\n z2.object({\n text: z2.string().nullish(),\n thought: z2.boolean().nullish()\n })\n ])\n ).nullish()\n});\nvar groundingChunkSchema = z2.object({\n web: z2.object({ uri: z2.string(), title: z2.string() }).nullish(),\n retrievedContext: z2.object({ uri: z2.string(), title: z2.string() }).nullish()\n});\nvar groundingMetadataSchema = z2.object({\n webSearchQueries: z2.array(z2.string()).nullish(),\n retrievalQueries: z2.array(z2.string()).nullish(),\n searchEntryPoint: z2.object({ renderedContent: z2.string() }).nullish(),\n groundingChunks: z2.array(groundingChunkSchema).nullish(),\n groundingSupports: z2.array(\n z2.object({\n segment: z2.object({\n startIndex: z2.number().nullish(),\n endIndex: z2.number().nullish(),\n text: z2.string().nullish()\n }),\n segment_text: z2.string().nullish(),\n groundingChunkIndices: z2.array(z2.number()).nullish(),\n supportChunkIndices: z2.array(z2.number()).nullish(),\n confidenceScores: z2.array(z2.number()).nullish(),\n confidenceScore: z2.array(z2.number()).nullish()\n })\n ).nullish(),\n retrievalMetadata: z2.union([\n z2.object({\n webDynamicRetrievalScore: z2.number()\n }),\n z2.object({})\n ]).nullish()\n});\nvar safetyRatingSchema = z2.object({\n category: z2.string().nullish(),\n probability: z2.string().nullish(),\n probabilityScore: z2.number().nullish(),\n severity: z2.string().nullish(),\n severityScore: z2.number().nullish(),\n blocked: z2.boolean().nullish()\n});\nvar responseSchema = z2.object({\n candidates: z2.array(\n z2.object({\n content: contentSchema.nullish().or(z2.object({}).strict()),\n finishReason: z2.string().nullish(),\n safetyRatings: z2.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish()\n })\n ),\n usageMetadata: z2.object({\n promptTokenCount: z2.number().nullish(),\n candidatesTokenCount: z2.number().nullish(),\n totalTokenCount: z2.number().nullish()\n }).nullish()\n});\nvar chunkSchema = z2.object({\n candidates: z2.array(\n z2.object({\n content: contentSchema.nullish(),\n finishReason: z2.string().nullish(),\n safetyRatings: z2.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish()\n })\n ).nullish(),\n usageMetadata: z2.object({\n promptTokenCount: z2.number().nullish(),\n candidatesTokenCount: z2.number().nullish(),\n totalTokenCount: z2.number().nullish()\n }).nullish()\n});\nvar googleGenerativeAIProviderOptionsSchema = z2.object({\n responseModalities: z2.array(z2.enum([\"TEXT\", \"IMAGE\"])).nullish(),\n thinkingConfig: z2.object({\n thinkingBudget: z2.number().nullish(),\n includeThoughts: z2.boolean().nullish()\n }).nullish()\n});\n\n// src/google-generative-ai-embedding-model.ts\nimport {\n TooManyEmbeddingValuesForCallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders2,\n createJsonResponseHandler as createJsonResponseHandler2,\n postJsonToApi as postJsonToApi2,\n resolve as resolve2\n} from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod\";\nvar GoogleGenerativeAIEmbeddingModel = class {\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n get maxEmbeddingsPerCall() {\n return 2048;\n }\n get supportsParallelCalls() {\n return true;\n }\n async doEmbed({\n values,\n headers,\n abortSignal\n }) {\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values\n });\n }\n const mergedHeaders = combineHeaders2(\n await resolve2(this.config.headers),\n headers\n );\n const { responseHeaders, value: response } = await postJsonToApi2({\n url: `${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,\n headers: mergedHeaders,\n body: {\n requests: values.map((value) => ({\n model: `models/${this.modelId}`,\n content: { role: \"user\", parts: [{ text: value }] },\n outputDimensionality: this.settings.outputDimensionality,\n taskType: this.settings.taskType\n }))\n },\n failedResponseHandler: googleFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler2(\n googleGenerativeAITextEmbeddingResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n embeddings: response.embeddings.map((item) => item.values),\n usage: void 0,\n rawResponse: { headers: responseHeaders }\n };\n }\n};\nvar googleGenerativeAITextEmbeddingResponseSchema = z3.object({\n embeddings: z3.array(z3.object({ values: z3.array(z3.number()) }))\n});\n\n// src/google-supported-file-url.ts\nfunction isSupportedFileUrl(url) {\n return url.toString().startsWith(\"https://generativelanguage.googleapis.com/v1beta/files/\");\n}\n\n// src/google-provider.ts\nfunction createGoogleGenerativeAI(options = {}) {\n var _a;\n const baseURL = (_a = withoutTrailingSlash(options.baseURL)) != null ? _a : \"https://generativelanguage.googleapis.com/v1beta\";\n const getHeaders = () => ({\n \"x-goog-api-key\": loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: \"GOOGLE_GENERATIVE_AI_API_KEY\",\n description: \"Google Generative AI\"\n }),\n ...options.headers\n });\n const createChatModel = (modelId, settings = {}) => {\n var _a2;\n return new GoogleGenerativeAILanguageModel(modelId, settings, {\n provider: \"google.generative-ai\",\n baseURL,\n headers: getHeaders,\n generateId: (_a2 = options.generateId) != null ? _a2 : generateId,\n isSupportedUrl: isSupportedFileUrl,\n fetch: options.fetch\n });\n };\n const createEmbeddingModel = (modelId, settings = {}) => new GoogleGenerativeAIEmbeddingModel(modelId, settings, {\n provider: \"google.generative-ai\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch\n });\n const provider = function(modelId, settings) {\n if (new.target) {\n throw new Error(\n \"The Google Generative AI model function cannot be called with the new keyword.\"\n );\n }\n return createChatModel(modelId, settings);\n };\n provider.languageModel = createChatModel;\n provider.chat = createChatModel;\n provider.generativeAI = createChatModel;\n provider.embedding = createEmbeddingModel;\n provider.textEmbedding = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n return provider;\n}\nvar google = createGoogleGenerativeAI();\nexport {\n createGoogleGenerativeAI,\n google\n};\n//# sourceMappingURL=index.mjs.map"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"dist-8fx1_bLF.js","names":["z","UnsupportedFunctionalityError2","_exhaustiveCheck","z2","combineHeaders2","resolve2","postJsonToApi2","createJsonResponseHandler2","z3"],"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/f2ff94baf0132110c56e83fd6cdbf61eecce437955a1c61117d15a636f4f7785/node_modules/@ai-sdk/google/dist/index.mjs"],"sourcesContent":["// src/google-provider.ts\nimport {\n generateId,\n loadApiKey,\n withoutTrailingSlash\n} from \"@ai-sdk/provider-utils\";\n\n// src/google-generative-ai-language-model.ts\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n resolve\n} from \"@ai-sdk/provider-utils\";\nimport { z as z2 } from \"zod\";\n\n// src/convert-json-schema-to-openapi-schema.ts\nfunction convertJSONSchemaToOpenAPISchema(jsonSchema) {\n if (isEmptyObjectSchema(jsonSchema)) {\n return void 0;\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)\n result.description = description;\n if (required)\n result.required = required;\n if (format)\n result.format = format;\n if (constValue !== void 0) {\n result.enum = [constValue];\n }\n if (type) {\n if (Array.isArray(type)) {\n if (type.includes(\"null\")) {\n result.type = type.filter((t) => t !== \"null\")[0];\n result.nullable = true;\n } else {\n result.type = type;\n }\n } else if (type === \"null\") {\n result.type = \"null\";\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);\n return acc;\n },\n {}\n );\n }\n if (items) {\n result.items = Array.isArray(items) ? items.map(convertJSONSchemaToOpenAPISchema) : convertJSONSchemaToOpenAPISchema(items);\n }\n if (allOf) {\n result.allOf = allOf.map(convertJSONSchemaToOpenAPISchema);\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(nonNullSchemas[0]);\n if (typeof converted === \"object\") {\n result.nullable = true;\n Object.assign(result, converted);\n }\n } else {\n result.anyOf = nonNullSchemas.map(convertJSONSchemaToOpenAPISchema);\n result.nullable = true;\n }\n } else {\n result.anyOf = anyOf.map(convertJSONSchemaToOpenAPISchema);\n }\n }\n if (oneOf) {\n result.oneOf = oneOf.map(convertJSONSchemaToOpenAPISchema);\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 { convertUint8ArrayToBase64 } from \"@ai-sdk/provider-utils\";\nfunction convertToGoogleGenerativeAIMessages(prompt) {\n var _a, _b;\n const systemInstructionParts = [];\n const contents = [];\n let systemMessagesAllowed = 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 \"image\": {\n parts.push(\n part.image instanceof URL ? {\n fileData: {\n mimeType: (_a = part.mimeType) != null ? _a : \"image/jpeg\",\n fileUri: part.image.toString()\n }\n } : {\n inlineData: {\n mimeType: (_b = part.mimeType) != null ? _b : \"image/jpeg\",\n data: convertUint8ArrayToBase64(part.image)\n }\n }\n );\n break;\n }\n case \"file\": {\n parts.push(\n part.data instanceof URL ? {\n fileData: {\n mimeType: part.mimeType,\n fileUri: part.data.toString()\n }\n } : {\n inlineData: {\n mimeType: part.mimeType,\n data: 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 switch (part.type) {\n case \"text\": {\n return part.text.length === 0 ? void 0 : { text: part.text };\n }\n case \"file\": {\n if (part.mimeType !== \"image/png\") {\n throw new UnsupportedFunctionalityError({\n functionality: \"Only PNG images are supported in assistant messages\"\n });\n }\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.mimeType,\n data: part.data\n }\n };\n }\n case \"tool-call\": {\n return {\n functionCall: {\n name: part.toolName,\n args: part.args\n }\n };\n }\n }\n }).filter((part) => part !== void 0)\n });\n break;\n }\n case \"tool\": {\n systemMessagesAllowed = false;\n contents.push({\n role: \"user\",\n parts: content.map((part) => ({\n functionResponse: {\n name: part.toolName,\n response: {\n name: part.toolName,\n content: part.result\n }\n }\n }))\n });\n break;\n }\n }\n }\n return {\n systemInstruction: systemInstructionParts.length > 0 ? { 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 { createJsonErrorResponseHandler } from \"@ai-sdk/provider-utils\";\nimport { z } from \"zod\";\nvar googleErrorDataSchema = z.object({\n error: z.object({\n code: z.number().nullable(),\n message: z.string(),\n status: z.string()\n })\n});\nvar googleFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: googleErrorDataSchema,\n errorToMessage: (data) => data.error.message\n});\n\n// src/google-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareTools(mode, useSearchGrounding, dynamicRetrievalConfig, modelId) {\n var _a, _b;\n const tools = ((_a = mode.tools) == null ? void 0 : _a.length) ? mode.tools : void 0;\n const toolWarnings = [];\n const isGemini2 = modelId.includes(\"gemini-2\");\n const supportsDynamicRetrieval = modelId.includes(\"gemini-1.5-flash\") && !modelId.includes(\"-8b\");\n if (useSearchGrounding) {\n return {\n tools: isGemini2 ? { googleSearch: {} } : {\n googleSearchRetrieval: !supportsDynamicRetrieval || !dynamicRetrievalConfig ? {} : { dynamicRetrievalConfig }\n },\n toolConfig: void 0,\n toolWarnings\n };\n }\n if (tools == null) {\n return { tools: void 0, toolConfig: void 0, toolWarnings };\n }\n const functionDeclarations = [];\n for (const tool of tools) {\n if (tool.type === \"provider-defined\") {\n toolWarnings.push({ type: \"unsupported-tool\", tool });\n } else {\n functionDeclarations.push({\n name: tool.name,\n description: (_b = tool.description) != null ? _b : \"\",\n parameters: convertJSONSchemaToOpenAPISchema(tool.parameters)\n });\n }\n }\n const toolChoice = mode.toolChoice;\n if (toolChoice == null) {\n return {\n tools: { functionDeclarations },\n toolConfig: void 0,\n toolWarnings\n };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n return {\n tools: { functionDeclarations },\n toolConfig: { functionCallingConfig: { mode: \"AUTO\" } },\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: { functionCallingConfig: { mode: \"ANY\" } },\n toolWarnings\n };\n case \"tool\":\n return {\n tools: { functionDeclarations },\n toolConfig: {\n functionCallingConfig: {\n mode: \"ANY\",\n allowedFunctionNames: [toolChoice.toolName]\n }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\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 \"FINISH_REASON_UNSPECIFIED\":\n case \"OTHER\":\n return \"other\";\n case \"MALFORMED_FUNCTION_CALL\":\n return \"error\";\n default:\n return \"unknown\";\n }\n}\n\n// src/google-generative-ai-language-model.ts\nvar GoogleGenerativeAILanguageModel = class {\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.defaultObjectGenerationMode = \"json\";\n this.supportsImageUrls = false;\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n get supportsStructuredOutputs() {\n var _a;\n return (_a = this.settings.structuredOutputs) != null ? _a : true;\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n mode,\n prompt,\n maxTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences,\n responseFormat,\n seed,\n providerMetadata\n }) {\n var _a, _b, _c;\n const type = mode.type;\n const warnings = [];\n const googleOptions = parseProviderOptions({\n provider: \"google\",\n providerOptions: providerMetadata,\n schema: googleGenerativeAIProviderOptionsSchema\n });\n if (((_a = googleOptions == null ? void 0 : googleOptions.thinkingConfig) == null ? void 0 : _a.includeThoughts) === true && !this.config.provider.startsWith(\"google.vertex.\")) {\n warnings.push({\n type: \"other\",\n message: `The 'includeThoughts' option 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 const generationConfig = {\n // standardized settings:\n maxOutputTokens: maxTokens,\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 this.supportsStructuredOutputs ? convertJSONSchemaToOpenAPISchema(responseFormat.schema) : void 0,\n ...this.settings.audioTimestamp && {\n audioTimestamp: this.settings.audioTimestamp\n },\n // provider options:\n responseModalities: googleOptions == null ? void 0 : googleOptions.responseModalities,\n thinkingConfig: googleOptions == null ? void 0 : googleOptions.thinkingConfig\n };\n const { contents, systemInstruction } = convertToGoogleGenerativeAIMessages(prompt);\n switch (type) {\n case \"regular\": {\n const { tools, toolConfig, toolWarnings } = prepareTools(\n mode,\n (_b = this.settings.useSearchGrounding) != null ? _b : false,\n this.settings.dynamicRetrievalConfig,\n this.modelId\n );\n return {\n args: {\n generationConfig,\n contents,\n systemInstruction,\n safetySettings: this.settings.safetySettings,\n tools,\n toolConfig,\n cachedContent: this.settings.cachedContent\n },\n warnings: [...warnings, ...toolWarnings]\n };\n }\n case \"object-json\": {\n return {\n args: {\n generationConfig: {\n ...generationConfig,\n responseMimeType: \"application/json\",\n responseSchema: mode.schema != null && // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n this.supportsStructuredOutputs ? convertJSONSchemaToOpenAPISchema(mode.schema) : void 0\n },\n contents,\n systemInstruction,\n safetySettings: this.settings.safetySettings,\n cachedContent: this.settings.cachedContent\n },\n warnings\n };\n }\n case \"object-tool\": {\n return {\n args: {\n generationConfig,\n contents,\n systemInstruction,\n tools: {\n functionDeclarations: [\n {\n name: mode.tool.name,\n description: (_c = mode.tool.description) != null ? _c : \"\",\n parameters: convertJSONSchemaToOpenAPISchema(\n mode.tool.parameters\n )\n }\n ]\n },\n toolConfig: { functionCallingConfig: { mode: \"ANY\" } },\n safetySettings: this.settings.safetySettings,\n cachedContent: this.settings.cachedContent\n },\n warnings\n };\n }\n default: {\n const _exhaustiveCheck = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n supportsUrl(url) {\n return this.config.isSupportedUrl(url);\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e;\n const { args, warnings } = await this.getArgs(options);\n const body = JSON.stringify(args);\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 { contents: rawPrompt, ...rawSettings } = args;\n const candidate = response.candidates[0];\n const parts = candidate.content == null || typeof candidate.content !== \"object\" || !(\"parts\" in candidate.content) ? [] : candidate.content.parts;\n const toolCalls = getToolCallsFromParts({\n parts,\n // Use candidateParts\n generateId: this.config.generateId\n });\n const usageMetadata = response.usageMetadata;\n return {\n text: getTextFromParts(parts),\n reasoning: getReasoningDetailsFromParts(parts),\n files: (_a = getInlineDataParts(parts)) == null ? void 0 : _a.map((part) => ({\n data: part.inlineData.data,\n mimeType: part.inlineData.mimeType\n })),\n toolCalls,\n finishReason: mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls: toolCalls != null && toolCalls.length > 0\n }),\n usage: {\n promptTokens: (_b = usageMetadata == null ? void 0 : usageMetadata.promptTokenCount) != null ? _b : NaN,\n completionTokens: (_c = usageMetadata == null ? void 0 : usageMetadata.candidatesTokenCount) != null ? _c : NaN\n },\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n warnings,\n providerMetadata: {\n google: {\n groundingMetadata: (_d = candidate.groundingMetadata) != null ? _d : null,\n safetyRatings: (_e = candidate.safetyRatings) != null ? _e : null\n }\n },\n sources: extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: this.config.generateId\n }),\n request: { body }\n };\n }\n async doStream(options) {\n const { args, warnings } = await this.getArgs(options);\n const body = JSON.stringify(args);\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 const { contents: rawPrompt, ...rawSettings } = args;\n let finishReason = \"unknown\";\n let usage = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN\n };\n let providerMetadata = void 0;\n const generateId2 = this.config.generateId;\n let hasToolCalls = false;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n transform(chunk, controller) {\n var _a, _b, _c, _d, _e, _f;\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 = {\n promptTokens: (_a = usageMetadata.promptTokenCount) != null ? _a : NaN,\n completionTokens: (_b = usageMetadata.candidatesTokenCount) != null ? _b : NaN\n };\n }\n const candidate = (_c = value.candidates) == null ? void 0 : _c[0];\n if (candidate == null) {\n return;\n }\n const content = candidate.content;\n if (content != null) {\n const deltaText = getTextFromParts(content.parts);\n if (deltaText != null) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: deltaText\n });\n }\n const reasoningDeltaText = getReasoningDetailsFromParts(\n content.parts\n );\n if (reasoningDeltaText != null) {\n for (const part of reasoningDeltaText) {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: part.text\n });\n }\n }\n const inlineDataParts = getInlineDataParts(content.parts);\n if (inlineDataParts != null) {\n for (const part of inlineDataParts) {\n controller.enqueue({\n type: \"file\",\n mimeType: part.inlineData.mimeType,\n data: part.inlineData.data\n });\n }\n }\n const toolCallDeltas = getToolCallsFromParts({\n parts: content.parts,\n generateId: generateId2\n });\n if (toolCallDeltas != null) {\n for (const toolCall of toolCallDeltas) {\n controller.enqueue({\n type: \"tool-call-delta\",\n toolCallType: \"function\",\n toolCallId: toolCall.toolCallId,\n toolName: toolCall.toolName,\n argsTextDelta: toolCall.args\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallType: \"function\",\n toolCallId: toolCall.toolCallId,\n toolName: toolCall.toolName,\n args: toolCall.args\n });\n hasToolCalls = true;\n }\n }\n }\n if (candidate.finishReason != null) {\n finishReason = mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls\n });\n const sources = (_d = extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: generateId2\n })) != null ? _d : [];\n for (const source of sources) {\n controller.enqueue({ type: \"source\", source });\n }\n providerMetadata = {\n google: {\n groundingMetadata: (_e = candidate.groundingMetadata) != null ? _e : null,\n safetyRatings: (_f = candidate.safetyRatings) != null ? _f : null\n }\n };\n }\n },\n flush(controller) {\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage,\n providerMetadata\n });\n }\n })\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body }\n };\n }\n};\nfunction getToolCallsFromParts({\n parts,\n generateId: generateId2\n}) {\n const functionCallParts = parts == null ? void 0 : parts.filter(\n (part) => \"functionCall\" in part\n );\n return functionCallParts == null || functionCallParts.length === 0 ? void 0 : functionCallParts.map((part) => ({\n toolCallType: \"function\",\n toolCallId: generateId2(),\n toolName: part.functionCall.name,\n args: JSON.stringify(part.functionCall.args)\n }));\n}\nfunction getTextFromParts(parts) {\n const textParts = parts == null ? void 0 : parts.filter(\n (part) => \"text\" in part && part.thought !== true\n );\n return textParts == null || textParts.length === 0 ? void 0 : textParts.map((part) => part.text).join(\"\");\n}\nfunction getReasoningDetailsFromParts(parts) {\n const reasoningParts = parts == null ? void 0 : parts.filter(\n (part) => \"text\" in part && part.thought === true && part.text != null\n );\n return reasoningParts == null || reasoningParts.length === 0 ? void 0 : reasoningParts.map((part) => ({ type: \"text\", text: part.text }));\n}\nfunction getInlineDataParts(parts) {\n return parts == null ? void 0 : parts.filter(\n (part) => \"inlineData\" in part\n );\n}\nfunction extractSources({\n groundingMetadata,\n generateId: generateId2\n}) {\n var _a;\n return (_a = groundingMetadata == null ? void 0 : groundingMetadata.groundingChunks) == null ? void 0 : _a.filter(\n (chunk) => chunk.web != null\n ).map((chunk) => ({\n sourceType: \"url\",\n id: generateId2(),\n url: chunk.web.uri,\n title: chunk.web.title\n }));\n}\nvar contentSchema = z2.object({\n parts: z2.array(\n z2.union([\n // note: order matters since text can be fully empty\n z2.object({\n functionCall: z2.object({\n name: z2.string(),\n args: z2.unknown()\n })\n }),\n z2.object({\n inlineData: z2.object({\n mimeType: z2.string(),\n data: z2.string()\n })\n }),\n z2.object({\n text: z2.string().nullish(),\n thought: z2.boolean().nullish()\n })\n ])\n ).nullish()\n});\nvar groundingChunkSchema = z2.object({\n web: z2.object({ uri: z2.string(), title: z2.string() }).nullish(),\n retrievedContext: z2.object({ uri: z2.string(), title: z2.string() }).nullish()\n});\nvar groundingMetadataSchema = z2.object({\n webSearchQueries: z2.array(z2.string()).nullish(),\n retrievalQueries: z2.array(z2.string()).nullish(),\n searchEntryPoint: z2.object({ renderedContent: z2.string() }).nullish(),\n groundingChunks: z2.array(groundingChunkSchema).nullish(),\n groundingSupports: z2.array(\n z2.object({\n segment: z2.object({\n startIndex: z2.number().nullish(),\n endIndex: z2.number().nullish(),\n text: z2.string().nullish()\n }),\n segment_text: z2.string().nullish(),\n groundingChunkIndices: z2.array(z2.number()).nullish(),\n supportChunkIndices: z2.array(z2.number()).nullish(),\n confidenceScores: z2.array(z2.number()).nullish(),\n confidenceScore: z2.array(z2.number()).nullish()\n })\n ).nullish(),\n retrievalMetadata: z2.union([\n z2.object({\n webDynamicRetrievalScore: z2.number()\n }),\n z2.object({})\n ]).nullish()\n});\nvar safetyRatingSchema = z2.object({\n category: z2.string().nullish(),\n probability: z2.string().nullish(),\n probabilityScore: z2.number().nullish(),\n severity: z2.string().nullish(),\n severityScore: z2.number().nullish(),\n blocked: z2.boolean().nullish()\n});\nvar responseSchema = z2.object({\n candidates: z2.array(\n z2.object({\n content: contentSchema.nullish().or(z2.object({}).strict()),\n finishReason: z2.string().nullish(),\n safetyRatings: z2.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish()\n })\n ),\n usageMetadata: z2.object({\n promptTokenCount: z2.number().nullish(),\n candidatesTokenCount: z2.number().nullish(),\n totalTokenCount: z2.number().nullish()\n }).nullish()\n});\nvar chunkSchema = z2.object({\n candidates: z2.array(\n z2.object({\n content: contentSchema.nullish(),\n finishReason: z2.string().nullish(),\n safetyRatings: z2.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish()\n })\n ).nullish(),\n usageMetadata: z2.object({\n promptTokenCount: z2.number().nullish(),\n candidatesTokenCount: z2.number().nullish(),\n totalTokenCount: z2.number().nullish()\n }).nullish()\n});\nvar googleGenerativeAIProviderOptionsSchema = z2.object({\n responseModalities: z2.array(z2.enum([\"TEXT\", \"IMAGE\"])).nullish(),\n thinkingConfig: z2.object({\n thinkingBudget: z2.number().nullish(),\n includeThoughts: z2.boolean().nullish()\n }).nullish()\n});\n\n// src/google-generative-ai-embedding-model.ts\nimport {\n TooManyEmbeddingValuesForCallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders2,\n createJsonResponseHandler as createJsonResponseHandler2,\n postJsonToApi as postJsonToApi2,\n resolve as resolve2\n} from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod\";\nvar GoogleGenerativeAIEmbeddingModel = class {\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n get maxEmbeddingsPerCall() {\n return 2048;\n }\n get supportsParallelCalls() {\n return true;\n }\n async doEmbed({\n values,\n headers,\n abortSignal\n }) {\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values\n });\n }\n const mergedHeaders = combineHeaders2(\n await resolve2(this.config.headers),\n headers\n );\n const { responseHeaders, value: response } = await postJsonToApi2({\n url: `${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,\n headers: mergedHeaders,\n body: {\n requests: values.map((value) => ({\n model: `models/${this.modelId}`,\n content: { role: \"user\", parts: [{ text: value }] },\n outputDimensionality: this.settings.outputDimensionality,\n taskType: this.settings.taskType\n }))\n },\n failedResponseHandler: googleFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler2(\n googleGenerativeAITextEmbeddingResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n embeddings: response.embeddings.map((item) => item.values),\n usage: void 0,\n rawResponse: { headers: responseHeaders }\n };\n }\n};\nvar googleGenerativeAITextEmbeddingResponseSchema = z3.object({\n embeddings: z3.array(z3.object({ values: z3.array(z3.number()) }))\n});\n\n// src/google-supported-file-url.ts\nfunction isSupportedFileUrl(url) {\n return url.toString().startsWith(\"https://generativelanguage.googleapis.com/v1beta/files/\");\n}\n\n// src/google-provider.ts\nfunction createGoogleGenerativeAI(options = {}) {\n var _a;\n const baseURL = (_a = withoutTrailingSlash(options.baseURL)) != null ? _a : \"https://generativelanguage.googleapis.com/v1beta\";\n const getHeaders = () => ({\n \"x-goog-api-key\": loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: \"GOOGLE_GENERATIVE_AI_API_KEY\",\n description: \"Google Generative AI\"\n }),\n ...options.headers\n });\n const createChatModel = (modelId, settings = {}) => {\n var _a2;\n return new GoogleGenerativeAILanguageModel(modelId, settings, {\n provider: \"google.generative-ai\",\n baseURL,\n headers: getHeaders,\n generateId: (_a2 = options.generateId) != null ? _a2 : generateId,\n isSupportedUrl: isSupportedFileUrl,\n fetch: options.fetch\n });\n };\n const createEmbeddingModel = (modelId, settings = {}) => new GoogleGenerativeAIEmbeddingModel(modelId, settings, {\n provider: \"google.generative-ai\",\n baseURL,\n headers: getHeaders,\n fetch: options.fetch\n });\n const provider = function(modelId, settings) {\n if (new.target) {\n throw new Error(\n \"The Google Generative AI model function cannot be called with the new keyword.\"\n );\n }\n return createChatModel(modelId, settings);\n };\n provider.languageModel = createChatModel;\n provider.chat = createChatModel;\n provider.generativeAI = createChatModel;\n provider.embedding = createEmbeddingModel;\n provider.textEmbedding = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n return provider;\n}\nvar google = createGoogleGenerativeAI();\nexport {\n createGoogleGenerativeAI,\n google\n};\n//# sourceMappingURL=index.mjs.map"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -2,7 +2,7 @@ const require_rolldown_runtime = require("./rolldown-runtime-Bd6kNlEP.cjs");
2
2
  const require_schema_e0VHpMt0 = require("./schema-e0VHpMt0-BS9KHnuT.cjs");
3
3
  require("./schema-BVcoNfni.cjs");
4
4
  const require_sync$1 = require("./sync-C4LbbSKR.cjs");
5
- const require_dist = require("./dist-DO5NHh-t.cjs");
5
+ const require_dist = require("./dist-Bw2XgCSY.cjs");
6
6
  let zod_v4 = require("zod/v4");
7
7
  zod_v4 = require_rolldown_runtime.__toESM(zod_v4, 1);
8
8
  let _mastra_core_schema = require("@mastra/core/schema");
@@ -4637,7 +4637,7 @@ function splitLines(text) {
4637
4637
  return result;
4638
4638
  }
4639
4639
  //#endregion
4640
- //#region ../memory/dist/src-BV9eXuMM.js
4640
+ //#region ../memory/dist/src-DPOcJ6r0.js
4641
4641
  var __defProp$3 = Object.defineProperty;
4642
4642
  var __exportAll = (all, no_symbols) => {
4643
4643
  let target = {};
@@ -37682,22 +37682,32 @@ var Memory = class Memory extends _mastra_core_memory.MastraMemory {
37682
37682
  if (resourceScope && !resourceId && config?.semanticRecall && vectorSearchString) throw new Error("Memory error: Resource-scoped semantic recall is enabled but no resourceId was provided. Either provide a resourceId or explicitly set semanticRecall.scope to 'thread'.");
37683
37683
  let usage;
37684
37684
  if (config?.semanticRecall && vectorSearchString && this.vector) {
37685
- const result = await this.embedMessageContent(vectorSearchString);
37686
- usage = result.usage;
37687
- const { embeddings, dimension } = result;
37688
- const { indexName } = await this.createEmbeddingIndex(dimension, config);
37689
- await Promise.all(embeddings.map(async (embedding) => {
37690
- if (typeof this.vector === `undefined`) throw new Error(`Tried to query vector index ${indexName} but this Memory instance doesn't have an attached vector db.`);
37691
- const scopeFilter = resourceScope ? { resource_id: resourceId } : { thread_id: threadId };
37692
- const userFilter = typeof config.semanticRecall === "object" ? config.semanticRecall.filter : void 0;
37693
- const combinedFilter = userFilter ? { $and: [scopeFilter, userFilter] } : scopeFilter;
37685
+ const scopeFilter = resourceScope ? { resource_id: resourceId } : { thread_id: threadId };
37686
+ const userFilter = typeof config.semanticRecall === "object" ? config.semanticRecall.filter : void 0;
37687
+ const combinedFilter = userFilter ? { $and: [scopeFilter, userFilter] } : scopeFilter;
37688
+ if (this.isSelfEmbedding) {
37689
+ const { indexName } = await this.createEmbeddingIndex(void 0, config);
37694
37690
  vectorResults.push(...await this.vector.query({
37695
37691
  indexName,
37696
- queryVector: embedding,
37692
+ queryText: vectorSearchString,
37697
37693
  topK: vectorConfig.topK,
37698
37694
  filter: combinedFilter
37699
37695
  }));
37700
- }));
37696
+ } else {
37697
+ const result = await this.embedMessageContent(vectorSearchString);
37698
+ usage = result.usage;
37699
+ const { embeddings, dimension } = result;
37700
+ const { indexName } = await this.createEmbeddingIndex(dimension, config);
37701
+ await Promise.all(embeddings.map(async (embedding) => {
37702
+ if (typeof this.vector === `undefined`) throw new Error(`Tried to query vector index ${indexName} but this Memory instance doesn't have an attached vector db.`);
37703
+ vectorResults.push(...await this.vector.query({
37704
+ indexName,
37705
+ queryVector: embedding,
37706
+ topK: vectorConfig.topK,
37707
+ filter: combinedFilter
37708
+ }));
37709
+ }));
37710
+ }
37701
37711
  }
37702
37712
  const threshold = (typeof config.semanticRecall === "object" ? config.semanticRecall : void 0)?.threshold;
37703
37713
  const filteredVectorResults = threshold !== void 0 ? vectorResults.filter((r) => r.score >= threshold) : vectorResults;
@@ -37855,11 +37865,13 @@ var Memory = class Memory extends _mastra_core_memory.MastraMemory {
37855
37865
  if (this.vector) this.trackVectorCleanup(this.deleteThreadVectors(threadId));
37856
37866
  }
37857
37867
  /**
37858
- * Prefix shared by every message index. The index for the default embedding
37859
- * dimension is named with the bare prefix; other dimensions add a suffix.
37868
+ * Prefix shared by every message index. The index for the default embedding dimension is named
37869
+ * with the bare prefix; other dimensions add a dimension suffix, and a store that embeds the
37870
+ * text itself adds its own. Built here rather than read from `getEmbeddingIndexName()`, which
37871
+ * answers for one configuration and so would not match indexes written under another.
37860
37872
  */
37861
37873
  get messageIndexPrefix() {
37862
- return this.getEmbeddingIndexName();
37874
+ return `memory${this.vector?.indexSeparator ?? "_"}messages`;
37863
37875
  }
37864
37876
  /**
37865
37877
  * Prefix shared by every observation index. Each observation index adds a dimension suffix.
@@ -38144,13 +38156,24 @@ ${workingMemory}`;
38144
38156
  if (joined) textForEmbedding = joined;
38145
38157
  }
38146
38158
  if (!textForEmbedding) return;
38147
- const result = await this.embedMessageContent(textForEmbedding);
38148
- dimension = result.dimension;
38149
- if (result.usage?.tokens) totalTokens += result.usage.tokens;
38159
+ let embeddings = [];
38160
+ let documents;
38161
+ let chunks;
38162
+ if (this.isSelfEmbedding) {
38163
+ chunks = this.chunkText(textForEmbedding);
38164
+ documents = chunks;
38165
+ } else {
38166
+ const result = await this.embedMessageContent(textForEmbedding);
38167
+ dimension = result.dimension;
38168
+ if (result.usage?.tokens) totalTokens += result.usage.tokens;
38169
+ embeddings = result.embeddings;
38170
+ chunks = result.chunks;
38171
+ }
38150
38172
  const threadMetadata = message.threadId ? threadMetadataMap.get(message.threadId) || {} : {};
38151
38173
  embeddingData.push({
38152
- embeddings: result.embeddings,
38153
- metadata: result.chunks.map(() => ({
38174
+ embeddings,
38175
+ documents,
38176
+ metadata: chunks.map(() => ({
38154
38177
  ...threadMetadata,
38155
38178
  message_id: message.id,
38156
38179
  thread_id: message.threadId,
@@ -38161,16 +38184,23 @@ ${workingMemory}`;
38161
38184
  }))
38162
38185
  });
38163
38186
  }));
38164
- if (embeddingData.length > 0 && dimension !== void 0) {
38187
+ if (embeddingData.length > 0 && (this.isSelfEmbedding || dimension !== void 0)) {
38165
38188
  if (typeof this.vector === `undefined`) throw new Error(`Tried to upsert embeddings but this Memory instance doesn't have an attached vector db.`);
38166
38189
  const { indexName } = await this.createEmbeddingIndex(dimension, config);
38167
38190
  const allVectors = [];
38168
38191
  const allMetadata = [];
38192
+ const allDocuments = [];
38169
38193
  for (const data of embeddingData) {
38170
38194
  allVectors.push(...data.embeddings);
38195
+ if (data.documents) allDocuments.push(...data.documents);
38171
38196
  allMetadata.push(...data.metadata);
38172
38197
  }
38173
- await this.vector.upsert({
38198
+ if (this.isSelfEmbedding) await this.vector.upsert({
38199
+ indexName,
38200
+ documents: allDocuments,
38201
+ metadata: allMetadata
38202
+ });
38203
+ else await this.vector.upsert({
38174
38204
  indexName,
38175
38205
  vectors: allVectors,
38176
38206
  metadata: allMetadata
@@ -38955,11 +38985,22 @@ Notes:
38955
38985
  }
38956
38986
  }
38957
38987
  if (textForEmbedding) {
38958
- const result = await this.embedMessageContent(textForEmbedding);
38959
- dimension = result.dimension;
38988
+ let embeddings = [];
38989
+ let documents;
38990
+ let chunks;
38991
+ if (this.isSelfEmbedding) {
38992
+ chunks = this.chunkText(textForEmbedding);
38993
+ documents = chunks;
38994
+ } else {
38995
+ const result = await this.embedMessageContent(textForEmbedding);
38996
+ dimension = result.dimension;
38997
+ embeddings = result.embeddings;
38998
+ chunks = result.chunks;
38999
+ }
38960
39000
  embeddingData.push({
38961
- embeddings: result.embeddings,
38962
- metadata: result.chunks.map(() => ({
39001
+ embeddings,
39002
+ documents,
39003
+ metadata: chunks.map(() => ({
38963
39004
  message_id: message.id,
38964
39005
  thread_id: existingMessage.threadId,
38965
39006
  resource_id: existingMessage.resourceId,
@@ -38994,15 +39035,22 @@ Notes:
38994
39035
  } catch {
38995
39036
  this.logger.debug("Failed to clean up old vectors during message update");
38996
39037
  }
38997
- if (embeddingData.length > 0 && dimension !== void 0) {
39038
+ if (embeddingData.length > 0 && (this.isSelfEmbedding || dimension !== void 0)) {
38998
39039
  const { indexName } = await this.createEmbeddingIndex(dimension, config);
38999
39040
  const allVectors = [];
39000
39041
  const allMetadata = [];
39042
+ const allDocuments = [];
39001
39043
  for (const data of embeddingData) {
39002
39044
  allVectors.push(...data.embeddings);
39045
+ if (data.documents) allDocuments.push(...data.documents);
39003
39046
  allMetadata.push(...data.metadata);
39004
39047
  }
39005
- await this.vector.upsert({
39048
+ if (this.isSelfEmbedding) await this.vector.upsert({
39049
+ indexName,
39050
+ documents: allDocuments,
39051
+ metadata: allMetadata
39052
+ });
39053
+ else await this.vector.upsert({
39006
39054
  indexName,
39007
39055
  vectors: allVectors,
39008
39056
  metadata: allMetadata
@@ -39189,7 +39237,7 @@ Notes:
39189
39237
  await this.rollbackCopiedThread(memoryStore, result.thread, "OM clone", false, priorDestinationResourceWm);
39190
39238
  throw error;
39191
39239
  }
39192
- if (this.vector && this.embedder && config.semanticRecall) try {
39240
+ if (this.vector && (this.embedder || this.isSelfEmbedding) && config.semanticRecall) try {
39193
39241
  await this.embedCopiedMessagesInBatches(memoryStore, result, config);
39194
39242
  } catch (error) {
39195
39243
  await this.rollbackCopiedThread(memoryStore, result.thread, "embedding", true, priorDestinationResourceWm);
@@ -39258,7 +39306,7 @@ Notes:
39258
39306
  async updateThreadResourceId({ threadId, resourceId, memoryConfig }) {
39259
39307
  const memoryStore = await this.getMemoryStore();
39260
39308
  const config = this.getMergedThreadConfig(memoryConfig);
39261
- const migratesVectors = Boolean(this.vector && this.embedder && config.semanticRecall);
39309
+ const migratesVectors = Boolean(this.vector && (this.embedder || this.isSelfEmbedding) && config.semanticRecall);
39262
39310
  if (!migratesVectors) {
39263
39311
  const existing = await memoryStore.getThreadById({ threadId });
39264
39312
  if (existing && existing.resourceId === resourceId) return existing;
@@ -39364,7 +39412,7 @@ Notes:
39364
39412
  * This is similar to the embedding logic in saveMessages but operates on already-saved messages.
39365
39413
  */
39366
39414
  async embedClonedMessages(messages, config) {
39367
- if (!this.vector || !this.embedder) return;
39415
+ if (!this.vector || !this.embedder && !this.isSelfEmbedding) return;
39368
39416
  const embeddingData = [];
39369
39417
  let dimension;
39370
39418
  await Promise.all(messages.map(async (message) => {
@@ -39375,11 +39423,22 @@ Notes:
39375
39423
  if (joined) textForEmbedding = joined;
39376
39424
  }
39377
39425
  if (!textForEmbedding) return;
39378
- const result = await this.embedMessageContent(textForEmbedding);
39379
- dimension = result.dimension;
39426
+ let embeddings = [];
39427
+ let documents;
39428
+ let chunks;
39429
+ if (this.isSelfEmbedding) {
39430
+ chunks = this.chunkText(textForEmbedding);
39431
+ documents = chunks;
39432
+ } else {
39433
+ const result = await this.embedMessageContent(textForEmbedding);
39434
+ dimension = result.dimension;
39435
+ embeddings = result.embeddings;
39436
+ chunks = result.chunks;
39437
+ }
39380
39438
  embeddingData.push({
39381
- embeddings: result.embeddings,
39382
- metadata: result.chunks.map(() => ({
39439
+ embeddings,
39440
+ documents,
39441
+ metadata: chunks.map(() => ({
39383
39442
  message_id: message.id,
39384
39443
  thread_id: message.threadId,
39385
39444
  resource_id: message.resourceId,
@@ -39389,15 +39448,22 @@ Notes:
39389
39448
  }))
39390
39449
  });
39391
39450
  }));
39392
- if (embeddingData.length > 0 && dimension !== void 0) {
39451
+ if (embeddingData.length > 0 && (this.isSelfEmbedding || dimension !== void 0)) {
39393
39452
  const { indexName } = await this.createEmbeddingIndex(dimension, config);
39394
39453
  const allVectors = [];
39395
39454
  const allMetadata = [];
39455
+ const allDocuments = [];
39396
39456
  for (const data of embeddingData) {
39397
39457
  allVectors.push(...data.embeddings);
39458
+ if (data.documents) allDocuments.push(...data.documents);
39398
39459
  allMetadata.push(...data.metadata);
39399
39460
  }
39400
- await this.vector.upsert({
39461
+ if (this.isSelfEmbedding) await this.vector.upsert({
39462
+ indexName,
39463
+ documents: allDocuments,
39464
+ metadata: allMetadata
39465
+ });
39466
+ else await this.vector.upsert({
39401
39467
  indexName,
39402
39468
  vectors: allVectors,
39403
39469
  metadata: allMetadata
@@ -40381,23 +40447,23 @@ const createModelInstance = async (provider, modelId, version = "v2") => {
40381
40447
  try {
40382
40448
  const providerFn = version === `v1` ? { v1: {
40383
40449
  openai: async () => {
40384
- const { openai } = await Promise.resolve().then(() => require("./dist-DO5NHh-t.cjs"));
40450
+ const { openai } = await Promise.resolve().then(() => require("./dist-Bw2XgCSY.cjs"));
40385
40451
  return openai(modelId);
40386
40452
  },
40387
40453
  anthropic: async () => {
40388
- const { anthropic } = await Promise.resolve().then(() => require("./dist-vM0zJcP5.cjs"));
40454
+ const { anthropic } = await Promise.resolve().then(() => require("./dist-D5O8s1u2.cjs"));
40389
40455
  return anthropic(modelId);
40390
40456
  },
40391
40457
  groq: async () => {
40392
- const { groq } = await Promise.resolve().then(() => require("./dist-CkFmsB2E.cjs"));
40458
+ const { groq } = await Promise.resolve().then(() => require("./dist-UACuV_1t.cjs"));
40393
40459
  return groq(modelId);
40394
40460
  },
40395
40461
  xai: async () => {
40396
- const { xai } = await Promise.resolve().then(() => require("./dist-B0uCWZUF.cjs"));
40462
+ const { xai } = await Promise.resolve().then(() => require("./dist-CgemVduI.cjs"));
40397
40463
  return xai(modelId);
40398
40464
  },
40399
40465
  google: async () => {
40400
- const { google } = await Promise.resolve().then(() => require("./dist-BQ0VOLA9.cjs"));
40466
+ const { google } = await Promise.resolve().then(() => require("./dist-D5mpJHHH.cjs"));
40401
40467
  return google(modelId);
40402
40468
  }
40403
40469
  } }[version][provider] : () => new _mastra_core_llm.ModelRouterLanguageModel(`${provider}/${modelId}`);
@@ -50374,4 +50440,4 @@ const agentBuilderWorkflows = {
50374
50440
  //#endregion
50375
50441
  exports.agentBuilderWorkflows = agentBuilderWorkflows;
50376
50442
 
50377
- //# sourceMappingURL=dist-IDt748Ya.cjs.map
50443
+ //# sourceMappingURL=dist-B6rOIYr_.cjs.map