@mastra/server 1.51.0-alpha.7 → 1.51.0-alpha.8

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 (331) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +93 -3
  3. package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-v6/dist/index.d.ts +467 -22
  4. package/dist/{api-schema-manifest-ZBRJBFSL.js → api-schema-manifest-5N4CH3B3.js} +4 -4
  5. package/dist/{api-schema-manifest-ZBRJBFSL.js.map → api-schema-manifest-5N4CH3B3.js.map} +1 -1
  6. package/dist/{api-schema-manifest-DE2A4RUM.cjs → api-schema-manifest-PY3KYLMU.cjs} +6 -6
  7. package/dist/{api-schema-manifest-DE2A4RUM.cjs.map → api-schema-manifest-PY3KYLMU.cjs.map} +1 -1
  8. package/dist/{chunk-I432F3YA.cjs → chunk-2QNU6QRD.cjs} +11 -11
  9. package/dist/{chunk-I432F3YA.cjs.map → chunk-2QNU6QRD.cjs.map} +1 -1
  10. package/dist/{chunk-JA7XOFOA.cjs → chunk-3MPULWGH.cjs} +8 -8
  11. package/dist/{chunk-JA7XOFOA.cjs.map → chunk-3MPULWGH.cjs.map} +1 -1
  12. package/dist/{chunk-HVRGAK4V.cjs → chunk-4I32EWP4.cjs} +7 -7
  13. package/dist/{chunk-HVRGAK4V.cjs.map → chunk-4I32EWP4.cjs.map} +1 -1
  14. package/dist/{chunk-NNXRZOOG.js → chunk-4NK4LJMY.js} +3 -3
  15. package/dist/{chunk-NNXRZOOG.js.map → chunk-4NK4LJMY.js.map} +1 -1
  16. package/dist/{chunk-FEUXFWF5.cjs → chunk-4VDJYNCU.cjs} +4 -4
  17. package/dist/{chunk-FEUXFWF5.cjs.map → chunk-4VDJYNCU.cjs.map} +1 -1
  18. package/dist/{chunk-VQG4INIR.js → chunk-5JAVWC7V.js} +2097 -1297
  19. package/dist/chunk-5JAVWC7V.js.map +1 -0
  20. package/dist/{chunk-CKEYMXKW.cjs → chunk-5L67H7RK.cjs} +6 -6
  21. package/dist/{chunk-CKEYMXKW.cjs.map → chunk-5L67H7RK.cjs.map} +1 -1
  22. package/dist/{chunk-XB733TW2.js → chunk-5W7JSJKI.js} +3 -3
  23. package/dist/{chunk-XB733TW2.js.map → chunk-5W7JSJKI.js.map} +1 -1
  24. package/dist/{chunk-OQ7KYSC2.js → chunk-5XOPSLKG.js} +3 -3
  25. package/dist/{chunk-OQ7KYSC2.js.map → chunk-5XOPSLKG.js.map} +1 -1
  26. package/dist/{chunk-RZXHWEO7.js → chunk-632HKME2.js} +3 -3
  27. package/dist/{chunk-RZXHWEO7.js.map → chunk-632HKME2.js.map} +1 -1
  28. package/dist/{chunk-IE5RWKUF.js → chunk-64F6SQJI.js} +4 -4
  29. package/dist/{chunk-IE5RWKUF.js.map → chunk-64F6SQJI.js.map} +1 -1
  30. package/dist/{chunk-IQBRYCQO.js → chunk-67343LAI.js} +3 -3
  31. package/dist/{chunk-IQBRYCQO.js.map → chunk-67343LAI.js.map} +1 -1
  32. package/dist/{chunk-OZ5AR746.cjs → chunk-6DZQOTRB.cjs} +8 -8
  33. package/dist/{chunk-OZ5AR746.cjs.map → chunk-6DZQOTRB.cjs.map} +1 -1
  34. package/dist/{chunk-2QKDMZ5B.cjs → chunk-7LDYURHI.cjs} +29 -29
  35. package/dist/{chunk-2QKDMZ5B.cjs.map → chunk-7LDYURHI.cjs.map} +1 -1
  36. package/dist/{chunk-PPSCC3RI.js → chunk-7NXOMYYC.js} +4 -4
  37. package/dist/{chunk-PPSCC3RI.js.map → chunk-7NXOMYYC.js.map} +1 -1
  38. package/dist/{chunk-ZQEOVH4F.js → chunk-AXHVYVLP.js} +3 -3
  39. package/dist/{chunk-ZQEOVH4F.js.map → chunk-AXHVYVLP.js.map} +1 -1
  40. package/dist/{chunk-X2QVU5LG.js → chunk-B4D33SLQ.js} +3 -3
  41. package/dist/{chunk-X2QVU5LG.js.map → chunk-B4D33SLQ.js.map} +1 -1
  42. package/dist/{chunk-AGYSIGMS.cjs → chunk-BHE5YUYU.cjs} +5 -5
  43. package/dist/{chunk-AGYSIGMS.cjs.map → chunk-BHE5YUYU.cjs.map} +1 -1
  44. package/dist/{chunk-CQKT2IEY.js → chunk-CJXC5VW7.js} +5 -5
  45. package/dist/{chunk-CQKT2IEY.js.map → chunk-CJXC5VW7.js.map} +1 -1
  46. package/dist/{chunk-73YMS66A.cjs → chunk-CQQVIYU4.cjs} +8 -8
  47. package/dist/{chunk-73YMS66A.cjs.map → chunk-CQQVIYU4.cjs.map} +1 -1
  48. package/dist/{chunk-Q2YBCG65.cjs → chunk-CTCGK2XX.cjs} +6 -6
  49. package/dist/{chunk-Q2YBCG65.cjs.map → chunk-CTCGK2XX.cjs.map} +1 -1
  50. package/dist/{chunk-RUHCOOAI.cjs → chunk-ECK575WD.cjs} +8 -8
  51. package/dist/{chunk-RUHCOOAI.cjs.map → chunk-ECK575WD.cjs.map} +1 -1
  52. package/dist/{chunk-52WDAFZI.cjs → chunk-EWDKF6XB.cjs} +13 -13
  53. package/dist/{chunk-52WDAFZI.cjs.map → chunk-EWDKF6XB.cjs.map} +1 -1
  54. package/dist/{chunk-OQILSGRO.cjs → chunk-EXTGR44K.cjs} +12 -12
  55. package/dist/{chunk-OQILSGRO.cjs.map → chunk-EXTGR44K.cjs.map} +1 -1
  56. package/dist/{chunk-23RSJYON.cjs → chunk-FCP5XRL7.cjs} +37 -37
  57. package/dist/{chunk-23RSJYON.cjs.map → chunk-FCP5XRL7.cjs.map} +1 -1
  58. package/dist/{chunk-5CUCN4QC.cjs → chunk-FFEY73SL.cjs} +21 -21
  59. package/dist/{chunk-5CUCN4QC.cjs.map → chunk-FFEY73SL.cjs.map} +1 -1
  60. package/dist/{chunk-OF7S6YU7.js → chunk-FRQEU6WH.js} +3 -3
  61. package/dist/{chunk-OF7S6YU7.js.map → chunk-FRQEU6WH.js.map} +1 -1
  62. package/dist/{chunk-2ZMOUXUF.js → chunk-G4KBL45K.js} +3 -3
  63. package/dist/{chunk-2ZMOUXUF.js.map → chunk-G4KBL45K.js.map} +1 -1
  64. package/dist/{chunk-EXP66755.cjs → chunk-G64MMB22.cjs} +8 -8
  65. package/dist/{chunk-EXP66755.cjs.map → chunk-G64MMB22.cjs.map} +1 -1
  66. package/dist/{chunk-LXVZZCYL.cjs → chunk-GCLIAMDG.cjs} +9 -9
  67. package/dist/{chunk-LXVZZCYL.cjs.map → chunk-GCLIAMDG.cjs.map} +1 -1
  68. package/dist/{chunk-CSRGFSPD.js → chunk-GZGTYOPE.js} +3 -3
  69. package/dist/{chunk-CSRGFSPD.js.map → chunk-GZGTYOPE.js.map} +1 -1
  70. package/dist/{chunk-CQMRVXYZ.cjs → chunk-H7P3Y3AH.cjs} +19 -19
  71. package/dist/{chunk-CQMRVXYZ.cjs.map → chunk-H7P3Y3AH.cjs.map} +1 -1
  72. package/dist/{chunk-IY2HGGCJ.cjs → chunk-HKGKW4W5.cjs} +8 -8
  73. package/dist/{chunk-IY2HGGCJ.cjs.map → chunk-HKGKW4W5.cjs.map} +1 -1
  74. package/dist/{chunk-RJVJRSE5.js → chunk-HWTB2EEP.js} +3 -3
  75. package/dist/{chunk-RJVJRSE5.js.map → chunk-HWTB2EEP.js.map} +1 -1
  76. package/dist/{chunk-YCLZZVA2.js → chunk-IAMAWCBK.js} +5 -5
  77. package/dist/{chunk-YCLZZVA2.js.map → chunk-IAMAWCBK.js.map} +1 -1
  78. package/dist/{chunk-M3MTW44C.js → chunk-IM2EVMH4.js} +3 -3
  79. package/dist/{chunk-M3MTW44C.js.map → chunk-IM2EVMH4.js.map} +1 -1
  80. package/dist/{chunk-FEUCP6F3.cjs → chunk-JJZLY2OT.cjs} +4 -4
  81. package/dist/{chunk-FEUCP6F3.cjs.map → chunk-JJZLY2OT.cjs.map} +1 -1
  82. package/dist/{chunk-L2VRTBCQ.cjs → chunk-JKZGEIZO.cjs} +4 -4
  83. package/dist/{chunk-L2VRTBCQ.cjs.map → chunk-JKZGEIZO.cjs.map} +1 -1
  84. package/dist/{chunk-Q3CG4MLT.js → chunk-JZWODCZ2.js} +3 -3
  85. package/dist/{chunk-Q3CG4MLT.js.map → chunk-JZWODCZ2.js.map} +1 -1
  86. package/dist/{chunk-MRD47GBP.cjs → chunk-K7KLUGGM.cjs} +74 -74
  87. package/dist/{chunk-MRD47GBP.cjs.map → chunk-K7KLUGGM.cjs.map} +1 -1
  88. package/dist/{chunk-RP4Q5IAW.cjs → chunk-KXNUETBI.cjs} +6 -6
  89. package/dist/{chunk-RP4Q5IAW.cjs.map → chunk-KXNUETBI.cjs.map} +1 -1
  90. package/dist/{chunk-J5SAYGPG.cjs → chunk-KZK4QA4W.cjs} +8 -8
  91. package/dist/{chunk-J5SAYGPG.cjs.map → chunk-KZK4QA4W.cjs.map} +1 -1
  92. package/dist/{chunk-STNV4TYH.js → chunk-L2ABDMKW.js} +20 -6
  93. package/dist/chunk-L2ABDMKW.js.map +1 -0
  94. package/dist/{chunk-LA3YFTNL.cjs → chunk-L2OBN5CQ.cjs} +10 -10
  95. package/dist/{chunk-LA3YFTNL.cjs.map → chunk-L2OBN5CQ.cjs.map} +1 -1
  96. package/dist/{chunk-B2OMBLIL.js → chunk-L4UEC3WG.js} +3 -3
  97. package/dist/{chunk-B2OMBLIL.js.map → chunk-L4UEC3WG.js.map} +1 -1
  98. package/dist/chunk-L7VLEQZ5.cjs +744 -0
  99. package/dist/{chunk-JEODNH6U.cjs.map → chunk-L7VLEQZ5.cjs.map} +1 -1
  100. package/dist/{chunk-LIFGEVRQ.js → chunk-LVYTFFO7.js} +3 -3
  101. package/dist/{chunk-LIFGEVRQ.js.map → chunk-LVYTFFO7.js.map} +1 -1
  102. package/dist/{chunk-U6PBK5ML.cjs → chunk-M2CKZXGA.cjs} +6 -6
  103. package/dist/{chunk-U6PBK5ML.cjs.map → chunk-M2CKZXGA.cjs.map} +1 -1
  104. package/dist/{chunk-DBJ72M3L.js → chunk-MD72DZKF.js} +4 -4
  105. package/dist/{chunk-DBJ72M3L.js.map → chunk-MD72DZKF.js.map} +1 -1
  106. package/dist/{chunk-KXZI7W4X.js → chunk-MEWQVBMF.js} +4 -4
  107. package/dist/{chunk-KXZI7W4X.js.map → chunk-MEWQVBMF.js.map} +1 -1
  108. package/dist/{chunk-YAURXFRL.js → chunk-NDNGZCVE.js} +4 -4
  109. package/dist/{chunk-YAURXFRL.js.map → chunk-NDNGZCVE.js.map} +1 -1
  110. package/dist/{chunk-SD7ZBPTH.js → chunk-NL77QH5H.js} +5 -5
  111. package/dist/{chunk-SD7ZBPTH.js.map → chunk-NL77QH5H.js.map} +1 -1
  112. package/dist/{chunk-7YBYLB2K.cjs → chunk-NWF6NTJ4.cjs} +2 -2
  113. package/dist/chunk-NWF6NTJ4.cjs.map +1 -0
  114. package/dist/{chunk-XJ3NNQMH.cjs → chunk-OF77EOAS.cjs} +11 -11
  115. package/dist/{chunk-XJ3NNQMH.cjs.map → chunk-OF77EOAS.cjs.map} +1 -1
  116. package/dist/{chunk-67Y5VZH2.js → chunk-OPHNEPME.js} +5 -5
  117. package/dist/{chunk-67Y5VZH2.js.map → chunk-OPHNEPME.js.map} +1 -1
  118. package/dist/{chunk-5AZEKCIF.cjs → chunk-OTTFQ6PW.cjs} +11 -11
  119. package/dist/{chunk-5AZEKCIF.cjs.map → chunk-OTTFQ6PW.cjs.map} +1 -1
  120. package/dist/{chunk-JQEHJTZT.cjs → chunk-OXOPBLIY.cjs} +41 -41
  121. package/dist/{chunk-JQEHJTZT.cjs.map → chunk-OXOPBLIY.cjs.map} +1 -1
  122. package/dist/{chunk-62IXMOKZ.js → chunk-P73K3SWT.js} +3 -3
  123. package/dist/{chunk-62IXMOKZ.js.map → chunk-P73K3SWT.js.map} +1 -1
  124. package/dist/{chunk-OFGVQFG2.cjs → chunk-PRO5XP7M.cjs} +10 -10
  125. package/dist/{chunk-OFGVQFG2.cjs.map → chunk-PRO5XP7M.cjs.map} +1 -1
  126. package/dist/{chunk-C4AFQDAO.js → chunk-PTJBYYMK.js} +2 -2
  127. package/dist/chunk-PTJBYYMK.js.map +1 -0
  128. package/dist/{chunk-OZC33KF7.js → chunk-QCKUEI6M.js} +3 -3
  129. package/dist/{chunk-OZC33KF7.js.map → chunk-QCKUEI6M.js.map} +1 -1
  130. package/dist/{chunk-5O6B2WSE.js → chunk-QDEYRPYD.js} +4 -4
  131. package/dist/{chunk-5O6B2WSE.js.map → chunk-QDEYRPYD.js.map} +1 -1
  132. package/dist/{chunk-KDS5H7AE.cjs → chunk-QRV7327G.cjs} +2097 -1297
  133. package/dist/chunk-QRV7327G.cjs.map +1 -0
  134. package/dist/{chunk-ZKMXVDVF.js → chunk-QVOR4Y5X.js} +41 -41
  135. package/dist/{chunk-ZKMXVDVF.js.map → chunk-QVOR4Y5X.js.map} +1 -1
  136. package/dist/{chunk-KRXBQMZA.cjs → chunk-QW7IQZIB.cjs} +13 -13
  137. package/dist/{chunk-KRXBQMZA.cjs.map → chunk-QW7IQZIB.cjs.map} +1 -1
  138. package/dist/{chunk-BS75OYMS.cjs → chunk-REFU47IR.cjs} +16 -16
  139. package/dist/{chunk-BS75OYMS.cjs.map → chunk-REFU47IR.cjs.map} +1 -1
  140. package/dist/{chunk-GJPUTFUV.js → chunk-RPCAKN2L.js} +5 -5
  141. package/dist/{chunk-GJPUTFUV.js.map → chunk-RPCAKN2L.js.map} +1 -1
  142. package/dist/{chunk-ICNDDYVU.cjs → chunk-RTHBJGHO.cjs} +8 -8
  143. package/dist/{chunk-ICNDDYVU.cjs.map → chunk-RTHBJGHO.cjs.map} +1 -1
  144. package/dist/{chunk-2ONW75MN.cjs → chunk-SCCERKQS.cjs} +5 -5
  145. package/dist/{chunk-2ONW75MN.cjs.map → chunk-SCCERKQS.cjs.map} +1 -1
  146. package/dist/{chunk-LE43IZGI.js → chunk-SGMCFRSU.js} +3 -3
  147. package/dist/{chunk-LE43IZGI.js.map → chunk-SGMCFRSU.js.map} +1 -1
  148. package/dist/{chunk-NQLS4Z3W.js → chunk-SH7XKBWN.js} +5 -5
  149. package/dist/{chunk-NQLS4Z3W.js.map → chunk-SH7XKBWN.js.map} +1 -1
  150. package/dist/{chunk-RIWVPOVQ.js → chunk-SSBPVVCY.js} +3 -3
  151. package/dist/{chunk-RIWVPOVQ.js.map → chunk-SSBPVVCY.js.map} +1 -1
  152. package/dist/{chunk-6WQBVVAS.cjs → chunk-SUOTSPYJ.cjs} +71 -71
  153. package/dist/{chunk-6WQBVVAS.cjs.map → chunk-SUOTSPYJ.cjs.map} +1 -1
  154. package/dist/{chunk-RPYAXRJN.cjs → chunk-SVDQASCW.cjs} +24 -24
  155. package/dist/{chunk-RPYAXRJN.cjs.map → chunk-SVDQASCW.cjs.map} +1 -1
  156. package/dist/{chunk-6ID65TQG.js → chunk-SWINK5Y3.js} +3 -3
  157. package/dist/{chunk-6ID65TQG.js.map → chunk-SWINK5Y3.js.map} +1 -1
  158. package/dist/{chunk-AHFEQVIO.cjs → chunk-THHT3YH2.cjs} +28 -28
  159. package/dist/{chunk-AHFEQVIO.cjs.map → chunk-THHT3YH2.cjs.map} +1 -1
  160. package/dist/{chunk-XEH32VCJ.js → chunk-TYWNSIO2.js} +4 -4
  161. package/dist/{chunk-XEH32VCJ.js.map → chunk-TYWNSIO2.js.map} +1 -1
  162. package/dist/{chunk-SKWXNNTT.cjs → chunk-UWGT2JVT.cjs} +8 -8
  163. package/dist/{chunk-SKWXNNTT.cjs.map → chunk-UWGT2JVT.cjs.map} +1 -1
  164. package/dist/{chunk-YEQZMTCM.js → chunk-UXFBPV3G.js} +4 -4
  165. package/dist/{chunk-YEQZMTCM.js.map → chunk-UXFBPV3G.js.map} +1 -1
  166. package/dist/{chunk-AV3PJKO6.cjs → chunk-VKJ7U3MC.cjs} +28 -28
  167. package/dist/{chunk-AV3PJKO6.cjs.map → chunk-VKJ7U3MC.cjs.map} +1 -1
  168. package/dist/{chunk-ZV6M52SI.cjs → chunk-VPLRJQHG.cjs} +101 -101
  169. package/dist/{chunk-ZV6M52SI.cjs.map → chunk-VPLRJQHG.cjs.map} +1 -1
  170. package/dist/{chunk-VRWDJKTB.js → chunk-VUGDZ2GW.js} +3 -3
  171. package/dist/{chunk-VRWDJKTB.js.map → chunk-VUGDZ2GW.js.map} +1 -1
  172. package/dist/{chunk-7YCROHVS.js → chunk-W3OYLKI3.js} +3 -3
  173. package/dist/{chunk-7YCROHVS.js.map → chunk-W3OYLKI3.js.map} +1 -1
  174. package/dist/{chunk-2WRJFEJK.js → chunk-WBPOFUFH.js} +3 -3
  175. package/dist/{chunk-2WRJFEJK.js.map → chunk-WBPOFUFH.js.map} +1 -1
  176. package/dist/{chunk-LJF6NNH5.cjs → chunk-WSLO4UJA.cjs} +10 -10
  177. package/dist/{chunk-LJF6NNH5.cjs.map → chunk-WSLO4UJA.cjs.map} +1 -1
  178. package/dist/{chunk-GCI33AN4.cjs → chunk-X7436A3H.cjs} +10 -10
  179. package/dist/{chunk-GCI33AN4.cjs.map → chunk-X7436A3H.cjs.map} +1 -1
  180. package/dist/{chunk-Z4VYX32V.js → chunk-XD3YM6GC.js} +3 -3
  181. package/dist/{chunk-Z4VYX32V.js.map → chunk-XD3YM6GC.js.map} +1 -1
  182. package/dist/{chunk-CIR74QPG.cjs → chunk-YDAA6BEX.cjs} +10 -10
  183. package/dist/{chunk-CIR74QPG.cjs.map → chunk-YDAA6BEX.cjs.map} +1 -1
  184. package/dist/{chunk-AMLYUMNH.js → chunk-YFTWZV4W.js} +3 -3
  185. package/dist/{chunk-AMLYUMNH.js.map → chunk-YFTWZV4W.js.map} +1 -1
  186. package/dist/{chunk-XWG6QKGI.js → chunk-YVT7P4ZS.js} +3 -3
  187. package/dist/{chunk-XWG6QKGI.js.map → chunk-YVT7P4ZS.js.map} +1 -1
  188. package/dist/{chunk-D43AYAW2.cjs → chunk-YXCSR2S3.cjs} +54 -40
  189. package/dist/chunk-YXCSR2S3.cjs.map +1 -0
  190. package/dist/{chunk-UVGAYAEV.js → chunk-Z2QGIB47.js} +4 -4
  191. package/dist/{chunk-UVGAYAEV.js.map → chunk-Z2QGIB47.js.map} +1 -1
  192. package/dist/{chunk-5IMX5NM3.js → chunk-ZH5SPJZR.js} +3 -3
  193. package/dist/{chunk-5IMX5NM3.js.map → chunk-ZH5SPJZR.js.map} +1 -1
  194. package/dist/{chunk-MZLIIHA3.js → chunk-ZIRZQFBQ.js} +4 -4
  195. package/dist/{chunk-MZLIIHA3.js.map → chunk-ZIRZQFBQ.js.map} +1 -1
  196. package/dist/{dist-2YFKAQMY.js → dist-3IOY4UDH.js} +3 -3
  197. package/dist/{dist-2YFKAQMY.js.map → dist-3IOY4UDH.js.map} +1 -1
  198. package/dist/{dist-JWLVQJFQ.js → dist-5PUBSY65.js} +3 -3
  199. package/dist/{dist-JWLVQJFQ.js.map → dist-5PUBSY65.js.map} +1 -1
  200. package/dist/{dist-WBYMZPKB.cjs → dist-7ROGUSJI.cjs} +26 -26
  201. package/dist/{dist-WBYMZPKB.cjs.map → dist-7ROGUSJI.cjs.map} +1 -1
  202. package/dist/dist-BJSMOQXN.cjs +16 -0
  203. package/dist/{dist-NYM3IQLY.cjs.map → dist-BJSMOQXN.cjs.map} +1 -1
  204. package/dist/{dist-6VCC76Q3.cjs → dist-I2O6YPDX.cjs} +30 -30
  205. package/dist/{dist-6VCC76Q3.cjs.map → dist-I2O6YPDX.cjs.map} +1 -1
  206. package/dist/{dist-M3P3YMJP.cjs → dist-I5TS34XK.cjs} +28 -28
  207. package/dist/{dist-M3P3YMJP.cjs.map → dist-I5TS34XK.cjs.map} +1 -1
  208. package/dist/{dist-J4UWKVDM.js → dist-IB5HRZQW.js} +3 -3
  209. package/dist/{dist-J4UWKVDM.js.map → dist-IB5HRZQW.js.map} +1 -1
  210. package/dist/{dist-F5OVWHJA.js → dist-PBGEHTO5.js} +194 -76
  211. package/dist/dist-PBGEHTO5.js.map +1 -0
  212. package/dist/{dist-LB6ETLLY.cjs → dist-RRHVN2FI.cjs} +198 -80
  213. package/dist/dist-RRHVN2FI.cjs.map +1 -0
  214. package/dist/dist-SOVT5P5X.js +3 -0
  215. package/dist/{dist-CB67HEFG.js.map → dist-SOVT5P5X.js.map} +1 -1
  216. package/dist/{dist-CIZY7VDE.cjs → dist-YPPUCXOD.cjs} +20 -20
  217. package/dist/{dist-CIZY7VDE.cjs.map → dist-YPPUCXOD.cjs.map} +1 -1
  218. package/dist/{dist-IPZQFQMB.js → dist-Z62354D3.js} +3 -3
  219. package/dist/{dist-IPZQFQMB.js.map → dist-Z62354D3.js.map} +1 -1
  220. package/dist/docs/SKILL.md +1 -1
  221. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  222. package/dist/{observational-memory-E73XGPDT-ZSNLC7FW.js → observational-memory-OJN26RQ4-6ZDBBFBM.js} +3 -3
  223. package/dist/{observational-memory-E73XGPDT-ZSNLC7FW.js.map → observational-memory-OJN26RQ4-6ZDBBFBM.js.map} +1 -1
  224. package/dist/{observational-memory-E73XGPDT-JT3TMD3Y.cjs → observational-memory-OJN26RQ4-UCN4RMRQ.cjs} +29 -29
  225. package/dist/{observational-memory-E73XGPDT-JT3TMD3Y.cjs.map → observational-memory-OJN26RQ4-UCN4RMRQ.cjs.map} +1 -1
  226. package/dist/server/handlers/a2a.cjs +14 -14
  227. package/dist/server/handlers/a2a.js +1 -1
  228. package/dist/server/handlers/agent-builder.cjs +17 -17
  229. package/dist/server/handlers/agent-builder.js +1 -1
  230. package/dist/server/handlers/agent-controller.cjs +35 -35
  231. package/dist/server/handlers/agent-controller.d.ts +10 -0
  232. package/dist/server/handlers/agent-controller.d.ts.map +1 -1
  233. package/dist/server/handlers/agent-controller.js +1 -1
  234. package/dist/server/handlers/agent-versions.cjs +8 -8
  235. package/dist/server/handlers/agent-versions.js +1 -1
  236. package/dist/server/handlers/agents.cjs +48 -48
  237. package/dist/server/handlers/agents.js +1 -1
  238. package/dist/server/handlers/auth.cjs +13 -13
  239. package/dist/server/handlers/auth.js +1 -1
  240. package/dist/server/handlers/background-tasks.cjs +4 -4
  241. package/dist/server/handlers/background-tasks.js +1 -1
  242. package/dist/server/handlers/builder-registry.cjs +6 -6
  243. package/dist/server/handlers/builder-registry.js +1 -1
  244. package/dist/server/handlers/channels.cjs +5 -5
  245. package/dist/server/handlers/channels.js +1 -1
  246. package/dist/server/handlers/conversations.cjs +5 -5
  247. package/dist/server/handlers/conversations.js +1 -1
  248. package/dist/server/handlers/datasets.cjs +26 -26
  249. package/dist/server/handlers/datasets.js +1 -1
  250. package/dist/server/handlers/editor-builder.cjs +6 -6
  251. package/dist/server/handlers/editor-builder.js +1 -1
  252. package/dist/server/handlers/favorites-enrichment.cjs +4 -4
  253. package/dist/server/handlers/favorites-enrichment.js +1 -1
  254. package/dist/server/handlers/logs.cjs +4 -4
  255. package/dist/server/handlers/logs.js +1 -1
  256. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  257. package/dist/server/handlers/mcp-client-versions.js +1 -1
  258. package/dist/server/handlers/mcp.cjs +11 -11
  259. package/dist/server/handlers/mcp.js +1 -1
  260. package/dist/server/handlers/memory.cjs +27 -27
  261. package/dist/server/handlers/memory.js +1 -1
  262. package/dist/server/handlers/observability-new-endpoints.cjs +29 -29
  263. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  264. package/dist/server/handlers/observability-shared.cjs +9 -9
  265. package/dist/server/handlers/observability-shared.js +1 -1
  266. package/dist/server/handlers/observability.cjs +40 -40
  267. package/dist/server/handlers/observability.js +2 -2
  268. package/dist/server/handlers/processor-providers.cjs +3 -3
  269. package/dist/server/handlers/processor-providers.js +1 -1
  270. package/dist/server/handlers/processors.cjs +4 -4
  271. package/dist/server/handlers/processors.js +1 -1
  272. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  273. package/dist/server/handlers/prompt-block-versions.js +1 -1
  274. package/dist/server/handlers/responses.cjs +4 -4
  275. package/dist/server/handlers/responses.js +1 -1
  276. package/dist/server/handlers/schedules.cjs +10 -10
  277. package/dist/server/handlers/schedules.js +1 -1
  278. package/dist/server/handlers/scorer-versions.cjs +8 -8
  279. package/dist/server/handlers/scorer-versions.js +1 -1
  280. package/dist/server/handlers/scores.cjs +7 -7
  281. package/dist/server/handlers/scores.js +1 -1
  282. package/dist/server/handlers/stored-agent-favorites.cjs +3 -3
  283. package/dist/server/handlers/stored-agent-favorites.js +1 -1
  284. package/dist/server/handlers/stored-agents.cjs +10 -10
  285. package/dist/server/handlers/stored-agents.js +1 -1
  286. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  287. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  288. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  289. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  290. package/dist/server/handlers/stored-scorers.cjs +6 -6
  291. package/dist/server/handlers/stored-scorers.js +1 -1
  292. package/dist/server/handlers/stored-skill-favorites.cjs +3 -3
  293. package/dist/server/handlers/stored-skill-favorites.js +1 -1
  294. package/dist/server/handlers/stored-skills.cjs +7 -7
  295. package/dist/server/handlers/stored-skills.js +1 -1
  296. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  297. package/dist/server/handlers/stored-workspaces.js +1 -1
  298. package/dist/server/handlers/system.cjs +3 -3
  299. package/dist/server/handlers/system.js +1 -1
  300. package/dist/server/handlers/tool-providers.cjs +14 -14
  301. package/dist/server/handlers/tool-providers.js +1 -1
  302. package/dist/server/handlers/tools.cjs +6 -6
  303. package/dist/server/handlers/tools.js +1 -1
  304. package/dist/server/handlers/vector.cjs +16 -16
  305. package/dist/server/handlers/vector.js +1 -1
  306. package/dist/server/handlers/workflows.cjs +27 -27
  307. package/dist/server/handlers/workflows.js +1 -1
  308. package/dist/server/handlers/workspace.cjs +26 -26
  309. package/dist/server/handlers/workspace.js +1 -1
  310. package/dist/server/handlers.cjs +28 -28
  311. package/dist/server/handlers.js +14 -14
  312. package/dist/server/server-adapter/index.cjs +21 -21
  313. package/dist/server/server-adapter/index.js +4 -4
  314. package/dist/working-memory-state-OMSMSYAW-6OXJFZFI.js +3 -0
  315. package/dist/{working-memory-state-OMSMSYAW-NEULPFZX.js.map → working-memory-state-OMSMSYAW-6OXJFZFI.js.map} +1 -1
  316. package/dist/working-memory-state-OMSMSYAW-GCNI4HPX.cjs +24 -0
  317. package/dist/{working-memory-state-OMSMSYAW-4THWAGFK.cjs.map → working-memory-state-OMSMSYAW-GCNI4HPX.cjs.map} +1 -1
  318. package/package.json +11 -11
  319. package/dist/chunk-7YBYLB2K.cjs.map +0 -1
  320. package/dist/chunk-C4AFQDAO.js.map +0 -1
  321. package/dist/chunk-D43AYAW2.cjs.map +0 -1
  322. package/dist/chunk-JEODNH6U.cjs +0 -744
  323. package/dist/chunk-KDS5H7AE.cjs.map +0 -1
  324. package/dist/chunk-STNV4TYH.js.map +0 -1
  325. package/dist/chunk-VQG4INIR.js.map +0 -1
  326. package/dist/dist-CB67HEFG.js +0 -3
  327. package/dist/dist-F5OVWHJA.js.map +0 -1
  328. package/dist/dist-LB6ETLLY.cjs.map +0 -1
  329. package/dist/dist-NYM3IQLY.cjs +0 -16
  330. package/dist/working-memory-state-OMSMSYAW-4THWAGFK.cjs +0 -24
  331. package/dist/working-memory-state-OMSMSYAW-NEULPFZX.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/convert-json-schema-to-openapi-schema.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/convert-to-google-generative-ai-messages.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/get-model-path.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/google-error.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/google-prepare-tools.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/map-google-generative-ai-finish-reason.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/google-generative-ai-language-model.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/google-generative-ai-embedding-model.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/google-supported-file-url.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/2c6250ccdfbca0fc2ec06433f0f64fa9b55e82363537586b2fa25bb70d235332/node_modules/@ai-sdk/google/src/google-provider.ts"],"names":["UnsupportedFunctionalityError","convertUint8ArrayToBase64","z","createJsonErrorResponseHandler","parseProviderOptions","combineHeaders","resolve","postJsonToApi","createJsonResponseHandler","createEventSourceResponseHandler","generateId","TooManyEmbeddingValuesForCallError","withoutTrailingSlash","loadApiKey","_a"],"mappings":"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","file":"dist-WBYMZPKB.cjs","sourcesContent":["import { JSONSchema7Definition } from '@ai-sdk/provider';\n\n/**\n * Converts JSON Schema 7 to OpenAPI Schema 3.0\n */\nexport function convertJSONSchemaToOpenAPISchema(\n jsonSchema: JSONSchema7Definition,\n): unknown {\n // parameters need to be undefined if they are empty objects:\n if (isEmptyObjectSchema(jsonSchema)) {\n return undefined;\n }\n\n if (typeof jsonSchema === 'boolean') {\n return { type: 'boolean', properties: {} };\n }\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\n const result: Record<string, unknown> = {};\n\n if (description) result.description = description;\n if (required) result.required = required;\n if (format) result.format = format;\n\n if (constValue !== undefined) {\n result.enum = [constValue];\n }\n\n // Handle type\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\n // Handle enum\n if (enumValues !== undefined) {\n result.enum = enumValues;\n }\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 {} as Record<string, unknown>,\n );\n }\n\n if (items) {\n result.items = Array.isArray(items)\n ? items.map(convertJSONSchemaToOpenAPISchema)\n : convertJSONSchemaToOpenAPISchema(items);\n }\n\n if (allOf) {\n result.allOf = allOf.map(convertJSONSchemaToOpenAPISchema);\n }\n if (anyOf) {\n // Handle cases where anyOf includes a null type\n if (\n anyOf.some(\n schema => typeof schema === 'object' && schema?.type === 'null',\n )\n ) {\n const nonNullSchemas = anyOf.filter(\n schema => !(typeof schema === 'object' && schema?.type === 'null'),\n );\n\n if (nonNullSchemas.length === 1) {\n // If there's only one non-null schema, convert it and make it nullable\n const converted = convertJSONSchemaToOpenAPISchema(nonNullSchemas[0]);\n if (typeof converted === 'object') {\n result.nullable = true;\n Object.assign(result, converted);\n }\n } else {\n // If there are multiple non-null schemas, keep them in anyOf\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\n if (minLength !== undefined) {\n result.minLength = minLength;\n }\n\n return result;\n}\n\nfunction isEmptyObjectSchema(jsonSchema: JSONSchema7Definition): boolean {\n return (\n jsonSchema != null &&\n typeof jsonSchema === 'object' &&\n jsonSchema.type === 'object' &&\n (jsonSchema.properties == null ||\n Object.keys(jsonSchema.properties).length === 0) &&\n !jsonSchema.additionalProperties\n );\n}\n","import {\n LanguageModelV1Prompt,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport { convertUint8ArrayToBase64 } from '@ai-sdk/provider-utils';\nimport {\n GoogleGenerativeAIContent,\n GoogleGenerativeAIContentPart,\n GoogleGenerativeAIPrompt,\n} from './google-generative-ai-prompt';\n\nexport function convertToGoogleGenerativeAIMessages(\n prompt: LanguageModelV1Prompt,\n): GoogleGenerativeAIPrompt {\n const systemInstructionParts: Array<{ text: string }> = [];\n const contents: Array<GoogleGenerativeAIContent> = [];\n let systemMessagesAllowed = true;\n\n for (const { role, content } of prompt) {\n switch (role) {\n case 'system': {\n if (!systemMessagesAllowed) {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'system messages are only supported at the beginning of the conversation',\n });\n }\n\n systemInstructionParts.push({ text: content });\n break;\n }\n\n case 'user': {\n systemMessagesAllowed = false;\n\n const parts: GoogleGenerativeAIContentPart[] = [];\n\n for (const part of content) {\n switch (part.type) {\n case 'text': {\n parts.push({ text: part.text });\n break;\n }\n\n case 'image': {\n parts.push(\n part.image instanceof URL\n ? {\n fileData: {\n mimeType: part.mimeType ?? 'image/jpeg',\n fileUri: part.image.toString(),\n },\n }\n : {\n inlineData: {\n mimeType: part.mimeType ?? 'image/jpeg',\n data: convertUint8ArrayToBase64(part.image),\n },\n },\n );\n\n break;\n }\n\n case 'file': {\n parts.push(\n part.data instanceof URL\n ? {\n fileData: {\n mimeType: part.mimeType,\n fileUri: part.data.toString(),\n },\n }\n : {\n inlineData: {\n mimeType: part.mimeType,\n data: part.data,\n },\n },\n );\n\n break;\n }\n }\n }\n\n contents.push({ role: 'user', parts });\n break;\n }\n\n case 'assistant': {\n systemMessagesAllowed = false;\n\n contents.push({\n role: 'model',\n parts: content\n .map(part => {\n switch (part.type) {\n case 'text': {\n return part.text.length === 0\n ? undefined\n : { text: part.text };\n }\n\n case 'file': {\n if (part.mimeType !== 'image/png') {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'Only PNG images are supported in assistant messages',\n });\n }\n\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'File data URLs in assistant messages are not supported',\n });\n }\n\n return {\n inlineData: {\n mimeType: part.mimeType,\n data: part.data,\n },\n };\n }\n\n case 'tool-call': {\n return {\n functionCall: {\n name: part.toolName,\n args: part.args,\n },\n };\n }\n }\n })\n .filter(part => part !== undefined),\n });\n break;\n }\n\n case 'tool': {\n systemMessagesAllowed = false;\n\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\n return {\n systemInstruction:\n systemInstructionParts.length > 0\n ? { parts: systemInstructionParts }\n : undefined,\n contents,\n };\n}\n","export function getModelPath(modelId: string): string {\n return modelId.includes('/') ? modelId : `models/${modelId}`;\n}\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\n\nconst googleErrorDataSchema = z.object({\n error: z.object({\n code: z.number().nullable(),\n message: z.string(),\n status: z.string(),\n }),\n});\n\nexport type GoogleErrorData = z.infer<typeof googleErrorDataSchema>;\n\nexport const googleFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: googleErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV1,\n LanguageModelV1CallWarning,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport { convertJSONSchemaToOpenAPISchema } from './convert-json-schema-to-openapi-schema';\nimport {\n DynamicRetrievalConfig,\n GoogleGenerativeAIModelId,\n} from './google-generative-ai-settings';\n\nexport function prepareTools(\n mode: Parameters<LanguageModelV1['doGenerate']>[0]['mode'] & {\n type: 'regular';\n },\n useSearchGrounding: boolean,\n dynamicRetrievalConfig: DynamicRetrievalConfig | undefined,\n modelId: GoogleGenerativeAIModelId,\n): {\n tools:\n | undefined\n | {\n functionDeclarations: Array<{\n name: string;\n description: string | undefined;\n parameters: unknown;\n }>;\n }\n | {\n googleSearchRetrieval:\n | Record<string, never>\n | { dynamicRetrievalConfig: DynamicRetrievalConfig };\n }\n | { googleSearch: Record<string, never> };\n toolConfig:\n | undefined\n | {\n functionCallingConfig: {\n mode: 'AUTO' | 'NONE' | 'ANY';\n allowedFunctionNames?: string[];\n };\n };\n toolWarnings: LanguageModelV1CallWarning[];\n} {\n const tools = mode.tools?.length ? mode.tools : undefined;\n const toolWarnings: LanguageModelV1CallWarning[] = [];\n\n const isGemini2 = modelId.includes('gemini-2');\n const supportsDynamicRetrieval =\n modelId.includes('gemini-1.5-flash') && !modelId.includes('-8b');\n\n if (useSearchGrounding) {\n return {\n tools: isGemini2\n ? { googleSearch: {} }\n : {\n googleSearchRetrieval:\n !supportsDynamicRetrieval || !dynamicRetrievalConfig\n ? {}\n : { dynamicRetrievalConfig },\n },\n toolConfig: undefined,\n toolWarnings,\n };\n }\n\n if (tools == null) {\n return { tools: undefined, toolConfig: undefined, toolWarnings };\n }\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: tool.description ?? '',\n parameters: convertJSONSchemaToOpenAPISchema(tool.parameters),\n });\n }\n }\n\n const toolChoice = mode.toolChoice;\n\n if (toolChoice == null) {\n return {\n tools: { functionDeclarations },\n toolConfig: undefined,\n toolWarnings,\n };\n }\n\n const type = toolChoice.type;\n\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: never = type;\n throw new UnsupportedFunctionalityError({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`,\n });\n }\n }\n}\n","import { LanguageModelV1FinishReason } from '@ai-sdk/provider';\n\nexport function mapGoogleGenerativeAIFinishReason({\n finishReason,\n hasToolCalls,\n}: {\n finishReason: string | null | undefined;\n hasToolCalls: boolean;\n}): LanguageModelV1FinishReason {\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","import {\n LanguageModelV1,\n LanguageModelV1CallWarning,\n LanguageModelV1FinishReason,\n LanguageModelV1ProviderMetadata,\n LanguageModelV1Source,\n LanguageModelV1StreamPart,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n ParseResult,\n Resolvable,\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n resolve,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { convertJSONSchemaToOpenAPISchema } from './convert-json-schema-to-openapi-schema';\nimport { convertToGoogleGenerativeAIMessages } from './convert-to-google-generative-ai-messages';\nimport { getModelPath } from './get-model-path';\nimport { googleFailedResponseHandler } from './google-error';\nimport { GoogleGenerativeAIContentPart } from './google-generative-ai-prompt';\nimport {\n GoogleGenerativeAIModelId,\n InternalGoogleGenerativeAISettings,\n} from './google-generative-ai-settings';\nimport { prepareTools } from './google-prepare-tools';\nimport { mapGoogleGenerativeAIFinishReason } from './map-google-generative-ai-finish-reason';\n\ntype GoogleGenerativeAIConfig = {\n provider: string;\n baseURL: string;\n headers: Resolvable<Record<string, string | undefined>>;\n fetch?: FetchFunction;\n generateId: () => string;\n isSupportedUrl: (url: URL) => boolean;\n};\n\nexport class GoogleGenerativeAILanguageModel implements LanguageModelV1 {\n readonly specificationVersion = 'v1';\n readonly defaultObjectGenerationMode = 'json';\n readonly supportsImageUrls = false;\n\n get supportsStructuredOutputs() {\n return this.settings.structuredOutputs ?? true;\n }\n\n readonly modelId: GoogleGenerativeAIModelId;\n readonly settings: InternalGoogleGenerativeAISettings;\n\n private readonly config: GoogleGenerativeAIConfig;\n\n constructor(\n modelId: GoogleGenerativeAIModelId,\n settings: InternalGoogleGenerativeAISettings,\n config: GoogleGenerativeAIConfig,\n ) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n private 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 }: Parameters<LanguageModelV1['doGenerate']>[0]) {\n const type = mode.type;\n\n const warnings: LanguageModelV1CallWarning[] = [];\n\n const googleOptions = parseProviderOptions({\n provider: 'google',\n providerOptions: providerMetadata,\n schema: googleGenerativeAIProviderOptionsSchema,\n });\n\n // Add warning if includeThoughts is used with a non-Vertex Google provider\n if (\n googleOptions?.thinkingConfig?.includeThoughts === true &&\n !this.config.provider.startsWith('google.vertex.')\n ) {\n warnings.push({\n type: 'other',\n message:\n \"The 'includeThoughts' option is only supported with the Google Vertex provider \" +\n 'and might not be supported or could behave unexpectedly with the current Google provider ' +\n `(${this.config.provider}).`,\n });\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\n // response format:\n responseMimeType:\n responseFormat?.type === 'json' ? 'application/json' : undefined,\n responseSchema:\n responseFormat?.type === 'json' &&\n responseFormat.schema != null &&\n // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n this.supportsStructuredOutputs\n ? convertJSONSchemaToOpenAPISchema(responseFormat.schema)\n : undefined,\n ...(this.settings.audioTimestamp && {\n audioTimestamp: this.settings.audioTimestamp,\n }),\n\n // provider options:\n responseModalities: googleOptions?.responseModalities,\n thinkingConfig: googleOptions?.thinkingConfig,\n };\n\n const { contents, systemInstruction } =\n convertToGoogleGenerativeAIMessages(prompt);\n\n switch (type) {\n case 'regular': {\n const { tools, toolConfig, toolWarnings } = prepareTools(\n mode,\n this.settings.useSearchGrounding ?? false,\n this.settings.dynamicRetrievalConfig,\n this.modelId,\n );\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\n case 'object-json': {\n return {\n args: {\n generationConfig: {\n ...generationConfig,\n responseMimeType: 'application/json',\n responseSchema:\n mode.schema != null &&\n // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n this.supportsStructuredOutputs\n ? convertJSONSchemaToOpenAPISchema(mode.schema)\n : undefined,\n },\n contents,\n systemInstruction,\n safetySettings: this.settings.safetySettings,\n cachedContent: this.settings.cachedContent,\n },\n warnings,\n };\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: mode.tool.description ?? '',\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\n default: {\n const _exhaustiveCheck: never = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n supportsUrl(url: URL): boolean {\n return this.config.isSupportedUrl(url);\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV1['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>> {\n const { args, warnings } = await this.getArgs(options);\n const body = JSON.stringify(args);\n\n const mergedHeaders = combineHeaders(\n await resolve(this.config.headers),\n options.headers,\n );\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\n const { contents: rawPrompt, ...rawSettings } = args;\n const candidate = response.candidates[0];\n\n const parts =\n candidate.content == null ||\n typeof candidate.content !== 'object' ||\n !('parts' in candidate.content)\n ? []\n : candidate.content.parts;\n\n const toolCalls = getToolCallsFromParts({\n parts: parts, // Use candidateParts\n generateId: this.config.generateId,\n });\n\n const usageMetadata = response.usageMetadata;\n\n return {\n text: getTextFromParts(parts),\n reasoning: getReasoningDetailsFromParts(parts),\n files: getInlineDataParts(parts)?.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: usageMetadata?.promptTokenCount ?? NaN,\n completionTokens: usageMetadata?.candidatesTokenCount ?? NaN,\n },\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n warnings,\n providerMetadata: {\n google: {\n groundingMetadata: candidate.groundingMetadata ?? null,\n safetyRatings: candidate.safetyRatings ?? null,\n },\n },\n sources: extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: this.config.generateId,\n }),\n request: { body },\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV1['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV1['doStream']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = JSON.stringify(args);\n const headers = combineHeaders(\n await resolve(this.config.headers),\n options.headers,\n );\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\n const { contents: rawPrompt, ...rawSettings } = args;\n\n let finishReason: LanguageModelV1FinishReason = 'unknown';\n let usage: { promptTokens: number; completionTokens: number } = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN,\n };\n let providerMetadata: LanguageModelV1ProviderMetadata | undefined =\n undefined;\n\n const generateId = this.config.generateId;\n let hasToolCalls = false;\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof chunkSchema>>,\n LanguageModelV1StreamPart\n >({\n transform(chunk, controller) {\n if (!chunk.success) {\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n const usageMetadata = value.usageMetadata;\n\n if (usageMetadata != null) {\n usage = {\n promptTokens: usageMetadata.promptTokenCount ?? NaN,\n completionTokens: usageMetadata.candidatesTokenCount ?? NaN,\n };\n }\n\n const candidate = value.candidates?.[0];\n\n // sometimes the API returns an empty candidates array\n if (candidate == null) {\n return;\n }\n\n const content = candidate.content;\n\n // Process tool call's parts before determining finishReason to ensure hasToolCalls is properly set\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\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\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\n const toolCallDeltas = getToolCallsFromParts({\n parts: content.parts,\n generateId,\n });\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\n controller.enqueue({\n type: 'tool-call',\n toolCallType: 'function',\n toolCallId: toolCall.toolCallId,\n toolName: toolCall.toolName,\n args: toolCall.args,\n });\n\n hasToolCalls = true;\n }\n }\n }\n\n if (candidate.finishReason != null) {\n finishReason = mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls,\n });\n\n const sources =\n extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId,\n }) ?? [];\n\n for (const source of sources) {\n controller.enqueue({ type: 'source', source });\n }\n\n providerMetadata = {\n google: {\n groundingMetadata: candidate.groundingMetadata ?? null,\n safetyRatings: candidate.safetyRatings ?? null,\n },\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}\n\nfunction getToolCallsFromParts({\n parts,\n generateId,\n}: {\n parts: z.infer<typeof contentSchema>['parts'];\n generateId: () => string;\n}) {\n const functionCallParts = parts?.filter(\n part => 'functionCall' in part,\n ) as Array<\n GoogleGenerativeAIContentPart & {\n functionCall: { name: string; args: unknown };\n }\n >;\n\n return functionCallParts == null || functionCallParts.length === 0\n ? undefined\n : functionCallParts.map(part => ({\n toolCallType: 'function' as const,\n toolCallId: generateId(),\n toolName: part.functionCall.name,\n args: JSON.stringify(part.functionCall.args),\n }));\n}\n\nfunction getTextFromParts(parts: z.infer<typeof contentSchema>['parts']) {\n const textParts = parts?.filter(\n part => 'text' in part && (part as any).thought !== true, // Exclude thought parts\n ) as Array<GoogleGenerativeAIContentPart & { text: string }>;\n\n return textParts == null || textParts.length === 0\n ? undefined\n : textParts.map(part => part.text).join('');\n}\n\nfunction getReasoningDetailsFromParts(\n parts: z.infer<typeof contentSchema>['parts'],\n): Array<{ type: 'text'; text: string }> | undefined {\n const reasoningParts = parts?.filter(\n part =>\n 'text' in part && (part as any).thought === true && part.text != null,\n ) as Array<\n GoogleGenerativeAIContentPart & { text: string; thought?: boolean }\n >;\n\n return reasoningParts == null || reasoningParts.length === 0\n ? undefined\n : reasoningParts.map(part => ({ type: 'text', text: part.text }));\n}\n\nfunction getInlineDataParts(parts: z.infer<typeof contentSchema>['parts']) {\n return parts?.filter(\n (\n part,\n ): part is {\n inlineData: { mimeType: string; data: string };\n } => 'inlineData' in part,\n );\n}\n\nfunction extractSources({\n groundingMetadata,\n generateId,\n}: {\n groundingMetadata: z.infer<typeof groundingMetadataSchema> | undefined | null;\n generateId: () => string;\n}): undefined | LanguageModelV1Source[] {\n return groundingMetadata?.groundingChunks\n ?.filter(\n (\n chunk,\n ): chunk is z.infer<typeof groundingChunkSchema> & {\n web: { uri: string; title?: string };\n } => chunk.web != null,\n )\n .map(chunk => ({\n sourceType: 'url',\n id: generateId(),\n url: chunk.web.uri,\n title: chunk.web.title,\n }));\n}\n\nconst contentSchema = z.object({\n parts: z\n .array(\n z.union([\n // note: order matters since text can be fully empty\n z.object({\n functionCall: z.object({\n name: z.string(),\n args: z.unknown(),\n }),\n }),\n z.object({\n inlineData: z.object({\n mimeType: z.string(),\n data: z.string(),\n }),\n }),\n z.object({\n text: z.string().nullish(),\n thought: z.boolean().nullish(),\n }),\n ]),\n )\n .nullish(),\n});\n\n// https://ai.google.dev/gemini-api/docs/grounding\n// https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/ground-gemini#ground-to-search\nconst groundingChunkSchema = z.object({\n web: z.object({ uri: z.string(), title: z.string() }).nullish(),\n retrievedContext: z.object({ uri: z.string(), title: z.string() }).nullish(),\n});\n\nexport const groundingMetadataSchema = z.object({\n webSearchQueries: z.array(z.string()).nullish(),\n retrievalQueries: z.array(z.string()).nullish(),\n searchEntryPoint: z.object({ renderedContent: z.string() }).nullish(),\n groundingChunks: z.array(groundingChunkSchema).nullish(),\n groundingSupports: z\n .array(\n z.object({\n segment: z.object({\n startIndex: z.number().nullish(),\n endIndex: z.number().nullish(),\n text: z.string().nullish(),\n }),\n segment_text: z.string().nullish(),\n groundingChunkIndices: z.array(z.number()).nullish(),\n supportChunkIndices: z.array(z.number()).nullish(),\n confidenceScores: z.array(z.number()).nullish(),\n confidenceScore: z.array(z.number()).nullish(),\n }),\n )\n .nullish(),\n retrievalMetadata: z\n .union([\n z.object({\n webDynamicRetrievalScore: z.number(),\n }),\n z.object({}),\n ])\n .nullish(),\n});\n\n// https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/configure-safety-filters\nexport const safetyRatingSchema = z.object({\n category: z.string().nullish(),\n probability: z.string().nullish(),\n probabilityScore: z.number().nullish(),\n severity: z.string().nullish(),\n severityScore: z.number().nullish(),\n blocked: z.boolean().nullish(),\n});\n\nconst responseSchema = z.object({\n candidates: z.array(\n z.object({\n content: contentSchema.nullish().or(z.object({}).strict()),\n finishReason: z.string().nullish(),\n safetyRatings: z.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish(),\n }),\n ),\n usageMetadata: z\n .object({\n promptTokenCount: z.number().nullish(),\n candidatesTokenCount: z.number().nullish(),\n totalTokenCount: z.number().nullish(),\n })\n .nullish(),\n});\n\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nconst chunkSchema = z.object({\n candidates: z\n .array(\n z.object({\n content: contentSchema.nullish(),\n finishReason: z.string().nullish(),\n safetyRatings: z.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish(),\n }),\n )\n .nullish(),\n usageMetadata: z\n .object({\n promptTokenCount: z.number().nullish(),\n candidatesTokenCount: z.number().nullish(),\n totalTokenCount: z.number().nullish(),\n })\n .nullish(),\n});\n\nconst googleGenerativeAIProviderOptionsSchema = z.object({\n responseModalities: z.array(z.enum(['TEXT', 'IMAGE'])).nullish(),\n thinkingConfig: z\n .object({\n thinkingBudget: z.number().nullish(),\n includeThoughts: z.boolean().nullish(),\n })\n .nullish(),\n});\nexport type GoogleGenerativeAIProviderOptions = z.infer<\n typeof googleGenerativeAIProviderOptionsSchema\n>;\n","import {\n EmbeddingModelV1,\n TooManyEmbeddingValuesForCallError,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createJsonResponseHandler,\n FetchFunction,\n postJsonToApi,\n resolve,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { googleFailedResponseHandler } from './google-error';\nimport {\n GoogleGenerativeAIEmbeddingModelId,\n GoogleGenerativeAIEmbeddingSettings,\n} from './google-generative-ai-embedding-settings';\n\ntype GoogleGenerativeAIEmbeddingConfig = {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string | undefined>;\n fetch?: FetchFunction;\n};\n\nexport class GoogleGenerativeAIEmbeddingModel\n implements EmbeddingModelV1<string>\n{\n readonly specificationVersion = 'v1';\n readonly modelId: GoogleGenerativeAIEmbeddingModelId;\n\n private readonly config: GoogleGenerativeAIEmbeddingConfig;\n private readonly settings: GoogleGenerativeAIEmbeddingSettings;\n\n get provider(): string {\n return this.config.provider;\n }\n\n get maxEmbeddingsPerCall(): number {\n return 2048;\n }\n\n get supportsParallelCalls(): boolean {\n return true;\n }\n\n constructor(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings: GoogleGenerativeAIEmbeddingSettings,\n config: GoogleGenerativeAIEmbeddingConfig,\n ) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n\n async doEmbed({\n values,\n headers,\n abortSignal,\n }: Parameters<EmbeddingModelV1<string>['doEmbed']>[0]): Promise<\n Awaited<ReturnType<EmbeddingModelV1<string>['doEmbed']>>\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\n const mergedHeaders = combineHeaders(\n await resolve(this.config.headers),\n headers,\n );\n\n const { responseHeaders, value: response } = await postJsonToApi({\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: createJsonResponseHandler(\n googleGenerativeAITextEmbeddingResponseSchema,\n ),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n embeddings: response.embeddings.map(item => item.values),\n usage: undefined,\n rawResponse: { headers: responseHeaders },\n };\n }\n}\n\n// minimal version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nconst googleGenerativeAITextEmbeddingResponseSchema = z.object({\n embeddings: z.array(z.object({ values: z.array(z.number()) })),\n});\n","export function isSupportedFileUrl(url: URL): boolean {\n return url\n .toString()\n .startsWith('https://generativelanguage.googleapis.com/v1beta/files/');\n}\n","import {\n FetchFunction,\n generateId,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { GoogleGenerativeAILanguageModel } from './google-generative-ai-language-model';\nimport {\n GoogleGenerativeAIModelId,\n GoogleGenerativeAISettings,\n} from './google-generative-ai-settings';\nimport { GoogleGenerativeAIEmbeddingModel } from './google-generative-ai-embedding-model';\nimport {\n GoogleGenerativeAIEmbeddingModelId,\n GoogleGenerativeAIEmbeddingSettings,\n} from './google-generative-ai-embedding-settings';\nimport {\n EmbeddingModelV1,\n LanguageModelV1,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport { isSupportedFileUrl } from './google-supported-file-url';\n\nexport interface GoogleGenerativeAIProvider extends ProviderV1 {\n (\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n languageModel(\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n chat(\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n /**\n * @deprecated Use `chat()` instead.\n */\n generativeAI(\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n /**\n@deprecated Use `textEmbeddingModel()` instead.\n */\n embedding(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings?: GoogleGenerativeAIEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n\n /**\n@deprecated Use `textEmbeddingModel()` instead.\n */\n textEmbedding(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings?: GoogleGenerativeAIEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n\n textEmbeddingModel(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings?: GoogleGenerativeAIEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n}\n\nexport interface GoogleGenerativeAIProviderSettings {\n /**\nUse a different URL prefix for API calls, e.g. to use proxy servers.\nThe default prefix is `https://generativelanguage.googleapis.com/v1beta`.\n */\n baseURL?: string;\n\n /**\nAPI key that is being send using the `x-goog-api-key` header.\nIt defaults to the `GOOGLE_GENERATIVE_AI_API_KEY` environment variable.\n */\n apiKey?: string;\n\n /**\nCustom headers to include in the requests.\n */\n headers?: Record<string, string | undefined>;\n\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n */\n fetch?: FetchFunction;\n\n /**\nOptional function to generate a unique ID for each request.\n */\n generateId?: () => string;\n}\n\n/**\nCreate a Google Generative AI provider instance.\n */\nexport function createGoogleGenerativeAI(\n options: GoogleGenerativeAIProviderSettings = {},\n): GoogleGenerativeAIProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ??\n 'https://generativelanguage.googleapis.com/v1beta';\n\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\n const createChatModel = (\n modelId: GoogleGenerativeAIModelId,\n settings: GoogleGenerativeAISettings = {},\n ) =>\n new GoogleGenerativeAILanguageModel(modelId, settings, {\n provider: 'google.generative-ai',\n baseURL,\n headers: getHeaders,\n generateId: options.generateId ?? generateId,\n isSupportedUrl: isSupportedFileUrl,\n fetch: options.fetch,\n });\n\n const createEmbeddingModel = (\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings: GoogleGenerativeAIEmbeddingSettings = {},\n ) =>\n new GoogleGenerativeAIEmbeddingModel(modelId, settings, {\n provider: 'google.generative-ai',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const provider = function (\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ) {\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\n return createChatModel(modelId, settings);\n };\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\n return provider;\n}\n\n/**\nDefault Google Generative AI provider instance.\n */\nexport const google = createGoogleGenerativeAI();\n"]}
1
+ {"version":3,"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/convert-json-schema-to-openapi-schema.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/convert-to-google-generative-ai-messages.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/get-model-path.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/google-error.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/google-prepare-tools.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/map-google-generative-ai-finish-reason.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/google-generative-ai-language-model.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/google-generative-ai-embedding-model.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/google-supported-file-url.ts","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/google/1.2.22/d3d9ad1fb510ab47b1796fb7a0257295da13ea5ee0bdf8c3fb3adcea92c750b4/node_modules/@ai-sdk/google/src/google-provider.ts"],"names":["UnsupportedFunctionalityError","convertUint8ArrayToBase64","z","createJsonErrorResponseHandler","parseProviderOptions","combineHeaders","resolve","postJsonToApi","createJsonResponseHandler","createEventSourceResponseHandler","generateId","TooManyEmbeddingValuesForCallError","withoutTrailingSlash","loadApiKey","_a"],"mappings":"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","file":"dist-7ROGUSJI.cjs","sourcesContent":["import { JSONSchema7Definition } from '@ai-sdk/provider';\n\n/**\n * Converts JSON Schema 7 to OpenAPI Schema 3.0\n */\nexport function convertJSONSchemaToOpenAPISchema(\n jsonSchema: JSONSchema7Definition,\n): unknown {\n // parameters need to be undefined if they are empty objects:\n if (isEmptyObjectSchema(jsonSchema)) {\n return undefined;\n }\n\n if (typeof jsonSchema === 'boolean') {\n return { type: 'boolean', properties: {} };\n }\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\n const result: Record<string, unknown> = {};\n\n if (description) result.description = description;\n if (required) result.required = required;\n if (format) result.format = format;\n\n if (constValue !== undefined) {\n result.enum = [constValue];\n }\n\n // Handle type\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\n // Handle enum\n if (enumValues !== undefined) {\n result.enum = enumValues;\n }\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 {} as Record<string, unknown>,\n );\n }\n\n if (items) {\n result.items = Array.isArray(items)\n ? items.map(convertJSONSchemaToOpenAPISchema)\n : convertJSONSchemaToOpenAPISchema(items);\n }\n\n if (allOf) {\n result.allOf = allOf.map(convertJSONSchemaToOpenAPISchema);\n }\n if (anyOf) {\n // Handle cases where anyOf includes a null type\n if (\n anyOf.some(\n schema => typeof schema === 'object' && schema?.type === 'null',\n )\n ) {\n const nonNullSchemas = anyOf.filter(\n schema => !(typeof schema === 'object' && schema?.type === 'null'),\n );\n\n if (nonNullSchemas.length === 1) {\n // If there's only one non-null schema, convert it and make it nullable\n const converted = convertJSONSchemaToOpenAPISchema(nonNullSchemas[0]);\n if (typeof converted === 'object') {\n result.nullable = true;\n Object.assign(result, converted);\n }\n } else {\n // If there are multiple non-null schemas, keep them in anyOf\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\n if (minLength !== undefined) {\n result.minLength = minLength;\n }\n\n return result;\n}\n\nfunction isEmptyObjectSchema(jsonSchema: JSONSchema7Definition): boolean {\n return (\n jsonSchema != null &&\n typeof jsonSchema === 'object' &&\n jsonSchema.type === 'object' &&\n (jsonSchema.properties == null ||\n Object.keys(jsonSchema.properties).length === 0) &&\n !jsonSchema.additionalProperties\n );\n}\n","import {\n LanguageModelV1Prompt,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport { convertUint8ArrayToBase64 } from '@ai-sdk/provider-utils';\nimport {\n GoogleGenerativeAIContent,\n GoogleGenerativeAIContentPart,\n GoogleGenerativeAIPrompt,\n} from './google-generative-ai-prompt';\n\nexport function convertToGoogleGenerativeAIMessages(\n prompt: LanguageModelV1Prompt,\n): GoogleGenerativeAIPrompt {\n const systemInstructionParts: Array<{ text: string }> = [];\n const contents: Array<GoogleGenerativeAIContent> = [];\n let systemMessagesAllowed = true;\n\n for (const { role, content } of prompt) {\n switch (role) {\n case 'system': {\n if (!systemMessagesAllowed) {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'system messages are only supported at the beginning of the conversation',\n });\n }\n\n systemInstructionParts.push({ text: content });\n break;\n }\n\n case 'user': {\n systemMessagesAllowed = false;\n\n const parts: GoogleGenerativeAIContentPart[] = [];\n\n for (const part of content) {\n switch (part.type) {\n case 'text': {\n parts.push({ text: part.text });\n break;\n }\n\n case 'image': {\n parts.push(\n part.image instanceof URL\n ? {\n fileData: {\n mimeType: part.mimeType ?? 'image/jpeg',\n fileUri: part.image.toString(),\n },\n }\n : {\n inlineData: {\n mimeType: part.mimeType ?? 'image/jpeg',\n data: convertUint8ArrayToBase64(part.image),\n },\n },\n );\n\n break;\n }\n\n case 'file': {\n parts.push(\n part.data instanceof URL\n ? {\n fileData: {\n mimeType: part.mimeType,\n fileUri: part.data.toString(),\n },\n }\n : {\n inlineData: {\n mimeType: part.mimeType,\n data: part.data,\n },\n },\n );\n\n break;\n }\n }\n }\n\n contents.push({ role: 'user', parts });\n break;\n }\n\n case 'assistant': {\n systemMessagesAllowed = false;\n\n contents.push({\n role: 'model',\n parts: content\n .map(part => {\n switch (part.type) {\n case 'text': {\n return part.text.length === 0\n ? undefined\n : { text: part.text };\n }\n\n case 'file': {\n if (part.mimeType !== 'image/png') {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'Only PNG images are supported in assistant messages',\n });\n }\n\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'File data URLs in assistant messages are not supported',\n });\n }\n\n return {\n inlineData: {\n mimeType: part.mimeType,\n data: part.data,\n },\n };\n }\n\n case 'tool-call': {\n return {\n functionCall: {\n name: part.toolName,\n args: part.args,\n },\n };\n }\n }\n })\n .filter(part => part !== undefined),\n });\n break;\n }\n\n case 'tool': {\n systemMessagesAllowed = false;\n\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\n return {\n systemInstruction:\n systemInstructionParts.length > 0\n ? { parts: systemInstructionParts }\n : undefined,\n contents,\n };\n}\n","export function getModelPath(modelId: string): string {\n return modelId.includes('/') ? modelId : `models/${modelId}`;\n}\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\n\nconst googleErrorDataSchema = z.object({\n error: z.object({\n code: z.number().nullable(),\n message: z.string(),\n status: z.string(),\n }),\n});\n\nexport type GoogleErrorData = z.infer<typeof googleErrorDataSchema>;\n\nexport const googleFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: googleErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV1,\n LanguageModelV1CallWarning,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport { convertJSONSchemaToOpenAPISchema } from './convert-json-schema-to-openapi-schema';\nimport {\n DynamicRetrievalConfig,\n GoogleGenerativeAIModelId,\n} from './google-generative-ai-settings';\n\nexport function prepareTools(\n mode: Parameters<LanguageModelV1['doGenerate']>[0]['mode'] & {\n type: 'regular';\n },\n useSearchGrounding: boolean,\n dynamicRetrievalConfig: DynamicRetrievalConfig | undefined,\n modelId: GoogleGenerativeAIModelId,\n): {\n tools:\n | undefined\n | {\n functionDeclarations: Array<{\n name: string;\n description: string | undefined;\n parameters: unknown;\n }>;\n }\n | {\n googleSearchRetrieval:\n | Record<string, never>\n | { dynamicRetrievalConfig: DynamicRetrievalConfig };\n }\n | { googleSearch: Record<string, never> };\n toolConfig:\n | undefined\n | {\n functionCallingConfig: {\n mode: 'AUTO' | 'NONE' | 'ANY';\n allowedFunctionNames?: string[];\n };\n };\n toolWarnings: LanguageModelV1CallWarning[];\n} {\n const tools = mode.tools?.length ? mode.tools : undefined;\n const toolWarnings: LanguageModelV1CallWarning[] = [];\n\n const isGemini2 = modelId.includes('gemini-2');\n const supportsDynamicRetrieval =\n modelId.includes('gemini-1.5-flash') && !modelId.includes('-8b');\n\n if (useSearchGrounding) {\n return {\n tools: isGemini2\n ? { googleSearch: {} }\n : {\n googleSearchRetrieval:\n !supportsDynamicRetrieval || !dynamicRetrievalConfig\n ? {}\n : { dynamicRetrievalConfig },\n },\n toolConfig: undefined,\n toolWarnings,\n };\n }\n\n if (tools == null) {\n return { tools: undefined, toolConfig: undefined, toolWarnings };\n }\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: tool.description ?? '',\n parameters: convertJSONSchemaToOpenAPISchema(tool.parameters),\n });\n }\n }\n\n const toolChoice = mode.toolChoice;\n\n if (toolChoice == null) {\n return {\n tools: { functionDeclarations },\n toolConfig: undefined,\n toolWarnings,\n };\n }\n\n const type = toolChoice.type;\n\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: never = type;\n throw new UnsupportedFunctionalityError({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`,\n });\n }\n }\n}\n","import { LanguageModelV1FinishReason } from '@ai-sdk/provider';\n\nexport function mapGoogleGenerativeAIFinishReason({\n finishReason,\n hasToolCalls,\n}: {\n finishReason: string | null | undefined;\n hasToolCalls: boolean;\n}): LanguageModelV1FinishReason {\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","import {\n LanguageModelV1,\n LanguageModelV1CallWarning,\n LanguageModelV1FinishReason,\n LanguageModelV1ProviderMetadata,\n LanguageModelV1Source,\n LanguageModelV1StreamPart,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n ParseResult,\n Resolvable,\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n resolve,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { convertJSONSchemaToOpenAPISchema } from './convert-json-schema-to-openapi-schema';\nimport { convertToGoogleGenerativeAIMessages } from './convert-to-google-generative-ai-messages';\nimport { getModelPath } from './get-model-path';\nimport { googleFailedResponseHandler } from './google-error';\nimport { GoogleGenerativeAIContentPart } from './google-generative-ai-prompt';\nimport {\n GoogleGenerativeAIModelId,\n InternalGoogleGenerativeAISettings,\n} from './google-generative-ai-settings';\nimport { prepareTools } from './google-prepare-tools';\nimport { mapGoogleGenerativeAIFinishReason } from './map-google-generative-ai-finish-reason';\n\ntype GoogleGenerativeAIConfig = {\n provider: string;\n baseURL: string;\n headers: Resolvable<Record<string, string | undefined>>;\n fetch?: FetchFunction;\n generateId: () => string;\n isSupportedUrl: (url: URL) => boolean;\n};\n\nexport class GoogleGenerativeAILanguageModel implements LanguageModelV1 {\n readonly specificationVersion = 'v1';\n readonly defaultObjectGenerationMode = 'json';\n readonly supportsImageUrls = false;\n\n get supportsStructuredOutputs() {\n return this.settings.structuredOutputs ?? true;\n }\n\n readonly modelId: GoogleGenerativeAIModelId;\n readonly settings: InternalGoogleGenerativeAISettings;\n\n private readonly config: GoogleGenerativeAIConfig;\n\n constructor(\n modelId: GoogleGenerativeAIModelId,\n settings: InternalGoogleGenerativeAISettings,\n config: GoogleGenerativeAIConfig,\n ) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n private 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 }: Parameters<LanguageModelV1['doGenerate']>[0]) {\n const type = mode.type;\n\n const warnings: LanguageModelV1CallWarning[] = [];\n\n const googleOptions = parseProviderOptions({\n provider: 'google',\n providerOptions: providerMetadata,\n schema: googleGenerativeAIProviderOptionsSchema,\n });\n\n // Add warning if includeThoughts is used with a non-Vertex Google provider\n if (\n googleOptions?.thinkingConfig?.includeThoughts === true &&\n !this.config.provider.startsWith('google.vertex.')\n ) {\n warnings.push({\n type: 'other',\n message:\n \"The 'includeThoughts' option is only supported with the Google Vertex provider \" +\n 'and might not be supported or could behave unexpectedly with the current Google provider ' +\n `(${this.config.provider}).`,\n });\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\n // response format:\n responseMimeType:\n responseFormat?.type === 'json' ? 'application/json' : undefined,\n responseSchema:\n responseFormat?.type === 'json' &&\n responseFormat.schema != null &&\n // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n this.supportsStructuredOutputs\n ? convertJSONSchemaToOpenAPISchema(responseFormat.schema)\n : undefined,\n ...(this.settings.audioTimestamp && {\n audioTimestamp: this.settings.audioTimestamp,\n }),\n\n // provider options:\n responseModalities: googleOptions?.responseModalities,\n thinkingConfig: googleOptions?.thinkingConfig,\n };\n\n const { contents, systemInstruction } =\n convertToGoogleGenerativeAIMessages(prompt);\n\n switch (type) {\n case 'regular': {\n const { tools, toolConfig, toolWarnings } = prepareTools(\n mode,\n this.settings.useSearchGrounding ?? false,\n this.settings.dynamicRetrievalConfig,\n this.modelId,\n );\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\n case 'object-json': {\n return {\n args: {\n generationConfig: {\n ...generationConfig,\n responseMimeType: 'application/json',\n responseSchema:\n mode.schema != null &&\n // Google GenAI does not support all OpenAPI Schema features,\n // so this is needed as an escape hatch:\n this.supportsStructuredOutputs\n ? convertJSONSchemaToOpenAPISchema(mode.schema)\n : undefined,\n },\n contents,\n systemInstruction,\n safetySettings: this.settings.safetySettings,\n cachedContent: this.settings.cachedContent,\n },\n warnings,\n };\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: mode.tool.description ?? '',\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\n default: {\n const _exhaustiveCheck: never = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n supportsUrl(url: URL): boolean {\n return this.config.isSupportedUrl(url);\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV1['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>> {\n const { args, warnings } = await this.getArgs(options);\n const body = JSON.stringify(args);\n\n const mergedHeaders = combineHeaders(\n await resolve(this.config.headers),\n options.headers,\n );\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\n const { contents: rawPrompt, ...rawSettings } = args;\n const candidate = response.candidates[0];\n\n const parts =\n candidate.content == null ||\n typeof candidate.content !== 'object' ||\n !('parts' in candidate.content)\n ? []\n : candidate.content.parts;\n\n const toolCalls = getToolCallsFromParts({\n parts: parts, // Use candidateParts\n generateId: this.config.generateId,\n });\n\n const usageMetadata = response.usageMetadata;\n\n return {\n text: getTextFromParts(parts),\n reasoning: getReasoningDetailsFromParts(parts),\n files: getInlineDataParts(parts)?.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: usageMetadata?.promptTokenCount ?? NaN,\n completionTokens: usageMetadata?.candidatesTokenCount ?? NaN,\n },\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n warnings,\n providerMetadata: {\n google: {\n groundingMetadata: candidate.groundingMetadata ?? null,\n safetyRatings: candidate.safetyRatings ?? null,\n },\n },\n sources: extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId: this.config.generateId,\n }),\n request: { body },\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV1['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV1['doStream']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = JSON.stringify(args);\n const headers = combineHeaders(\n await resolve(this.config.headers),\n options.headers,\n );\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\n const { contents: rawPrompt, ...rawSettings } = args;\n\n let finishReason: LanguageModelV1FinishReason = 'unknown';\n let usage: { promptTokens: number; completionTokens: number } = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN,\n };\n let providerMetadata: LanguageModelV1ProviderMetadata | undefined =\n undefined;\n\n const generateId = this.config.generateId;\n let hasToolCalls = false;\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof chunkSchema>>,\n LanguageModelV1StreamPart\n >({\n transform(chunk, controller) {\n if (!chunk.success) {\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n const usageMetadata = value.usageMetadata;\n\n if (usageMetadata != null) {\n usage = {\n promptTokens: usageMetadata.promptTokenCount ?? NaN,\n completionTokens: usageMetadata.candidatesTokenCount ?? NaN,\n };\n }\n\n const candidate = value.candidates?.[0];\n\n // sometimes the API returns an empty candidates array\n if (candidate == null) {\n return;\n }\n\n const content = candidate.content;\n\n // Process tool call's parts before determining finishReason to ensure hasToolCalls is properly set\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\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\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\n const toolCallDeltas = getToolCallsFromParts({\n parts: content.parts,\n generateId,\n });\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\n controller.enqueue({\n type: 'tool-call',\n toolCallType: 'function',\n toolCallId: toolCall.toolCallId,\n toolName: toolCall.toolName,\n args: toolCall.args,\n });\n\n hasToolCalls = true;\n }\n }\n }\n\n if (candidate.finishReason != null) {\n finishReason = mapGoogleGenerativeAIFinishReason({\n finishReason: candidate.finishReason,\n hasToolCalls,\n });\n\n const sources =\n extractSources({\n groundingMetadata: candidate.groundingMetadata,\n generateId,\n }) ?? [];\n\n for (const source of sources) {\n controller.enqueue({ type: 'source', source });\n }\n\n providerMetadata = {\n google: {\n groundingMetadata: candidate.groundingMetadata ?? null,\n safetyRatings: candidate.safetyRatings ?? null,\n },\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}\n\nfunction getToolCallsFromParts({\n parts,\n generateId,\n}: {\n parts: z.infer<typeof contentSchema>['parts'];\n generateId: () => string;\n}) {\n const functionCallParts = parts?.filter(\n part => 'functionCall' in part,\n ) as Array<\n GoogleGenerativeAIContentPart & {\n functionCall: { name: string; args: unknown };\n }\n >;\n\n return functionCallParts == null || functionCallParts.length === 0\n ? undefined\n : functionCallParts.map(part => ({\n toolCallType: 'function' as const,\n toolCallId: generateId(),\n toolName: part.functionCall.name,\n args: JSON.stringify(part.functionCall.args),\n }));\n}\n\nfunction getTextFromParts(parts: z.infer<typeof contentSchema>['parts']) {\n const textParts = parts?.filter(\n part => 'text' in part && (part as any).thought !== true, // Exclude thought parts\n ) as Array<GoogleGenerativeAIContentPart & { text: string }>;\n\n return textParts == null || textParts.length === 0\n ? undefined\n : textParts.map(part => part.text).join('');\n}\n\nfunction getReasoningDetailsFromParts(\n parts: z.infer<typeof contentSchema>['parts'],\n): Array<{ type: 'text'; text: string }> | undefined {\n const reasoningParts = parts?.filter(\n part =>\n 'text' in part && (part as any).thought === true && part.text != null,\n ) as Array<\n GoogleGenerativeAIContentPart & { text: string; thought?: boolean }\n >;\n\n return reasoningParts == null || reasoningParts.length === 0\n ? undefined\n : reasoningParts.map(part => ({ type: 'text', text: part.text }));\n}\n\nfunction getInlineDataParts(parts: z.infer<typeof contentSchema>['parts']) {\n return parts?.filter(\n (\n part,\n ): part is {\n inlineData: { mimeType: string; data: string };\n } => 'inlineData' in part,\n );\n}\n\nfunction extractSources({\n groundingMetadata,\n generateId,\n}: {\n groundingMetadata: z.infer<typeof groundingMetadataSchema> | undefined | null;\n generateId: () => string;\n}): undefined | LanguageModelV1Source[] {\n return groundingMetadata?.groundingChunks\n ?.filter(\n (\n chunk,\n ): chunk is z.infer<typeof groundingChunkSchema> & {\n web: { uri: string; title?: string };\n } => chunk.web != null,\n )\n .map(chunk => ({\n sourceType: 'url',\n id: generateId(),\n url: chunk.web.uri,\n title: chunk.web.title,\n }));\n}\n\nconst contentSchema = z.object({\n parts: z\n .array(\n z.union([\n // note: order matters since text can be fully empty\n z.object({\n functionCall: z.object({\n name: z.string(),\n args: z.unknown(),\n }),\n }),\n z.object({\n inlineData: z.object({\n mimeType: z.string(),\n data: z.string(),\n }),\n }),\n z.object({\n text: z.string().nullish(),\n thought: z.boolean().nullish(),\n }),\n ]),\n )\n .nullish(),\n});\n\n// https://ai.google.dev/gemini-api/docs/grounding\n// https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/ground-gemini#ground-to-search\nconst groundingChunkSchema = z.object({\n web: z.object({ uri: z.string(), title: z.string() }).nullish(),\n retrievedContext: z.object({ uri: z.string(), title: z.string() }).nullish(),\n});\n\nexport const groundingMetadataSchema = z.object({\n webSearchQueries: z.array(z.string()).nullish(),\n retrievalQueries: z.array(z.string()).nullish(),\n searchEntryPoint: z.object({ renderedContent: z.string() }).nullish(),\n groundingChunks: z.array(groundingChunkSchema).nullish(),\n groundingSupports: z\n .array(\n z.object({\n segment: z.object({\n startIndex: z.number().nullish(),\n endIndex: z.number().nullish(),\n text: z.string().nullish(),\n }),\n segment_text: z.string().nullish(),\n groundingChunkIndices: z.array(z.number()).nullish(),\n supportChunkIndices: z.array(z.number()).nullish(),\n confidenceScores: z.array(z.number()).nullish(),\n confidenceScore: z.array(z.number()).nullish(),\n }),\n )\n .nullish(),\n retrievalMetadata: z\n .union([\n z.object({\n webDynamicRetrievalScore: z.number(),\n }),\n z.object({}),\n ])\n .nullish(),\n});\n\n// https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/configure-safety-filters\nexport const safetyRatingSchema = z.object({\n category: z.string().nullish(),\n probability: z.string().nullish(),\n probabilityScore: z.number().nullish(),\n severity: z.string().nullish(),\n severityScore: z.number().nullish(),\n blocked: z.boolean().nullish(),\n});\n\nconst responseSchema = z.object({\n candidates: z.array(\n z.object({\n content: contentSchema.nullish().or(z.object({}).strict()),\n finishReason: z.string().nullish(),\n safetyRatings: z.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish(),\n }),\n ),\n usageMetadata: z\n .object({\n promptTokenCount: z.number().nullish(),\n candidatesTokenCount: z.number().nullish(),\n totalTokenCount: z.number().nullish(),\n })\n .nullish(),\n});\n\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nconst chunkSchema = z.object({\n candidates: z\n .array(\n z.object({\n content: contentSchema.nullish(),\n finishReason: z.string().nullish(),\n safetyRatings: z.array(safetyRatingSchema).nullish(),\n groundingMetadata: groundingMetadataSchema.nullish(),\n }),\n )\n .nullish(),\n usageMetadata: z\n .object({\n promptTokenCount: z.number().nullish(),\n candidatesTokenCount: z.number().nullish(),\n totalTokenCount: z.number().nullish(),\n })\n .nullish(),\n});\n\nconst googleGenerativeAIProviderOptionsSchema = z.object({\n responseModalities: z.array(z.enum(['TEXT', 'IMAGE'])).nullish(),\n thinkingConfig: z\n .object({\n thinkingBudget: z.number().nullish(),\n includeThoughts: z.boolean().nullish(),\n })\n .nullish(),\n});\nexport type GoogleGenerativeAIProviderOptions = z.infer<\n typeof googleGenerativeAIProviderOptionsSchema\n>;\n","import {\n EmbeddingModelV1,\n TooManyEmbeddingValuesForCallError,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createJsonResponseHandler,\n FetchFunction,\n postJsonToApi,\n resolve,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { googleFailedResponseHandler } from './google-error';\nimport {\n GoogleGenerativeAIEmbeddingModelId,\n GoogleGenerativeAIEmbeddingSettings,\n} from './google-generative-ai-embedding-settings';\n\ntype GoogleGenerativeAIEmbeddingConfig = {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string | undefined>;\n fetch?: FetchFunction;\n};\n\nexport class GoogleGenerativeAIEmbeddingModel\n implements EmbeddingModelV1<string>\n{\n readonly specificationVersion = 'v1';\n readonly modelId: GoogleGenerativeAIEmbeddingModelId;\n\n private readonly config: GoogleGenerativeAIEmbeddingConfig;\n private readonly settings: GoogleGenerativeAIEmbeddingSettings;\n\n get provider(): string {\n return this.config.provider;\n }\n\n get maxEmbeddingsPerCall(): number {\n return 2048;\n }\n\n get supportsParallelCalls(): boolean {\n return true;\n }\n\n constructor(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings: GoogleGenerativeAIEmbeddingSettings,\n config: GoogleGenerativeAIEmbeddingConfig,\n ) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n\n async doEmbed({\n values,\n headers,\n abortSignal,\n }: Parameters<EmbeddingModelV1<string>['doEmbed']>[0]): Promise<\n Awaited<ReturnType<EmbeddingModelV1<string>['doEmbed']>>\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\n const mergedHeaders = combineHeaders(\n await resolve(this.config.headers),\n headers,\n );\n\n const { responseHeaders, value: response } = await postJsonToApi({\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: createJsonResponseHandler(\n googleGenerativeAITextEmbeddingResponseSchema,\n ),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n embeddings: response.embeddings.map(item => item.values),\n usage: undefined,\n rawResponse: { headers: responseHeaders },\n };\n }\n}\n\n// minimal version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nconst googleGenerativeAITextEmbeddingResponseSchema = z.object({\n embeddings: z.array(z.object({ values: z.array(z.number()) })),\n});\n","export function isSupportedFileUrl(url: URL): boolean {\n return url\n .toString()\n .startsWith('https://generativelanguage.googleapis.com/v1beta/files/');\n}\n","import {\n FetchFunction,\n generateId,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { GoogleGenerativeAILanguageModel } from './google-generative-ai-language-model';\nimport {\n GoogleGenerativeAIModelId,\n GoogleGenerativeAISettings,\n} from './google-generative-ai-settings';\nimport { GoogleGenerativeAIEmbeddingModel } from './google-generative-ai-embedding-model';\nimport {\n GoogleGenerativeAIEmbeddingModelId,\n GoogleGenerativeAIEmbeddingSettings,\n} from './google-generative-ai-embedding-settings';\nimport {\n EmbeddingModelV1,\n LanguageModelV1,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport { isSupportedFileUrl } from './google-supported-file-url';\n\nexport interface GoogleGenerativeAIProvider extends ProviderV1 {\n (\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n languageModel(\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n chat(\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n /**\n * @deprecated Use `chat()` instead.\n */\n generativeAI(\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ): LanguageModelV1;\n\n /**\n@deprecated Use `textEmbeddingModel()` instead.\n */\n embedding(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings?: GoogleGenerativeAIEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n\n /**\n@deprecated Use `textEmbeddingModel()` instead.\n */\n textEmbedding(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings?: GoogleGenerativeAIEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n\n textEmbeddingModel(\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings?: GoogleGenerativeAIEmbeddingSettings,\n ): EmbeddingModelV1<string>;\n}\n\nexport interface GoogleGenerativeAIProviderSettings {\n /**\nUse a different URL prefix for API calls, e.g. to use proxy servers.\nThe default prefix is `https://generativelanguage.googleapis.com/v1beta`.\n */\n baseURL?: string;\n\n /**\nAPI key that is being send using the `x-goog-api-key` header.\nIt defaults to the `GOOGLE_GENERATIVE_AI_API_KEY` environment variable.\n */\n apiKey?: string;\n\n /**\nCustom headers to include in the requests.\n */\n headers?: Record<string, string | undefined>;\n\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n */\n fetch?: FetchFunction;\n\n /**\nOptional function to generate a unique ID for each request.\n */\n generateId?: () => string;\n}\n\n/**\nCreate a Google Generative AI provider instance.\n */\nexport function createGoogleGenerativeAI(\n options: GoogleGenerativeAIProviderSettings = {},\n): GoogleGenerativeAIProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ??\n 'https://generativelanguage.googleapis.com/v1beta';\n\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\n const createChatModel = (\n modelId: GoogleGenerativeAIModelId,\n settings: GoogleGenerativeAISettings = {},\n ) =>\n new GoogleGenerativeAILanguageModel(modelId, settings, {\n provider: 'google.generative-ai',\n baseURL,\n headers: getHeaders,\n generateId: options.generateId ?? generateId,\n isSupportedUrl: isSupportedFileUrl,\n fetch: options.fetch,\n });\n\n const createEmbeddingModel = (\n modelId: GoogleGenerativeAIEmbeddingModelId,\n settings: GoogleGenerativeAIEmbeddingSettings = {},\n ) =>\n new GoogleGenerativeAIEmbeddingModel(modelId, settings, {\n provider: 'google.generative-ai',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const provider = function (\n modelId: GoogleGenerativeAIModelId,\n settings?: GoogleGenerativeAISettings,\n ) {\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\n return createChatModel(modelId, settings);\n };\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\n return provider;\n}\n\n/**\nDefault Google Generative AI provider instance.\n */\nexport const google = createGoogleGenerativeAI();\n"]}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var chunkK7KLUGGM_cjs = require('./chunk-K7KLUGGM.cjs');
4
+
5
+
6
+
7
+ Object.defineProperty(exports, "createOpenAI", {
8
+ enumerable: true,
9
+ get: function () { return chunkK7KLUGGM_cjs.createOpenAI; }
10
+ });
11
+ Object.defineProperty(exports, "openai", {
12
+ enumerable: true,
13
+ get: function () { return chunkK7KLUGGM_cjs.openai; }
14
+ });
15
+ //# sourceMappingURL=dist-BJSMOQXN.cjs.map
16
+ //# sourceMappingURL=dist-BJSMOQXN.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"dist-NYM3IQLY.cjs"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"dist-BJSMOQXN.cjs"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkFEUXFWF5_cjs = require('./chunk-FEUXFWF5.cjs');
3
+ var chunk4VDJYNCU_cjs = require('./chunk-4VDJYNCU.cjs');
4
4
  var zod = require('zod');
5
5
 
6
6
  function convertToGroqChatMessages(prompt) {
@@ -28,12 +28,12 @@ function convertToGroqChatMessages(prompt) {
28
28
  return {
29
29
  type: "image_url",
30
30
  image_url: {
31
- url: part.image instanceof URL ? part.image.toString() : `data:${(_a = part.mimeType) != null ? _a : "image/jpeg"};base64,${chunkFEUXFWF5_cjs.convertUint8ArrayToBase64(part.image)}`
31
+ url: part.image instanceof URL ? part.image.toString() : `data:${(_a = part.mimeType) != null ? _a : "image/jpeg"};base64,${chunk4VDJYNCU_cjs.convertUint8ArrayToBase64(part.image)}`
32
32
  }
33
33
  };
34
34
  }
35
35
  case "file": {
36
- throw new chunkFEUXFWF5_cjs.UnsupportedFunctionalityError({
36
+ throw new chunk4VDJYNCU_cjs.UnsupportedFunctionalityError({
37
37
  functionality: "File content parts in user messages"
38
38
  });
39
39
  }
@@ -106,7 +106,7 @@ var groqErrorDataSchema = zod.z.object({
106
106
  type: zod.z.string()
107
107
  })
108
108
  });
109
- var groqFailedResponseHandler = chunkFEUXFWF5_cjs.createJsonErrorResponseHandler({
109
+ var groqFailedResponseHandler = chunk4VDJYNCU_cjs.createJsonErrorResponseHandler({
110
110
  errorSchema: groqErrorDataSchema,
111
111
  errorToMessage: (data) => data.error.message
112
112
  });
@@ -157,7 +157,7 @@ function prepareTools({
157
157
  };
158
158
  default: {
159
159
  const _exhaustiveCheck = type;
160
- throw new chunkFEUXFWF5_cjs.UnsupportedFunctionalityError({
160
+ throw new chunk4VDJYNCU_cjs.UnsupportedFunctionalityError({
161
161
  functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`
162
162
  });
163
163
  }
@@ -223,7 +223,7 @@ var GroqChatLanguageModel = class {
223
223
  details: "JSON response format schema is not supported"
224
224
  });
225
225
  }
226
- const groqOptions = chunkFEUXFWF5_cjs.parseProviderOptions({
226
+ const groqOptions = chunk4VDJYNCU_cjs.parseProviderOptions({
227
227
  provider: "groq",
228
228
  providerOptions: providerMetadata,
229
229
  schema: zod.z.object({
@@ -314,15 +314,15 @@ var GroqChatLanguageModel = class {
314
314
  responseHeaders,
315
315
  value: response,
316
316
  rawValue: rawResponse
317
- } = await chunkFEUXFWF5_cjs.postJsonToApi({
317
+ } = await chunk4VDJYNCU_cjs.postJsonToApi({
318
318
  url: this.config.url({
319
319
  path: "/chat/completions",
320
320
  modelId: this.modelId
321
321
  }),
322
- headers: chunkFEUXFWF5_cjs.combineHeaders(this.config.headers(), options.headers),
322
+ headers: chunk4VDJYNCU_cjs.combineHeaders(this.config.headers(), options.headers),
323
323
  body: args,
324
324
  failedResponseHandler: groqFailedResponseHandler,
325
- successfulResponseHandler: chunkFEUXFWF5_cjs.createJsonResponseHandler(
325
+ successfulResponseHandler: chunk4VDJYNCU_cjs.createJsonResponseHandler(
326
326
  groqChatResponseSchema
327
327
  ),
328
328
  abortSignal: options.abortSignal,
@@ -337,7 +337,7 @@ var GroqChatLanguageModel = class {
337
337
  var _a2;
338
338
  return {
339
339
  toolCallType: "function",
340
- toolCallId: (_a2 = toolCall.id) != null ? _a2 : chunkFEUXFWF5_cjs.generateId(),
340
+ toolCallId: (_a2 = toolCall.id) != null ? _a2 : chunk4VDJYNCU_cjs.generateId(),
341
341
  toolName: toolCall.function.name,
342
342
  args: toolCall.function.arguments
343
343
  };
@@ -357,18 +357,18 @@ var GroqChatLanguageModel = class {
357
357
  async doStream(options) {
358
358
  const { args, warnings } = this.getArgs({ ...options, stream: true });
359
359
  const body = JSON.stringify({ ...args, stream: true });
360
- const { responseHeaders, value: response } = await chunkFEUXFWF5_cjs.postJsonToApi({
360
+ const { responseHeaders, value: response } = await chunk4VDJYNCU_cjs.postJsonToApi({
361
361
  url: this.config.url({
362
362
  path: "/chat/completions",
363
363
  modelId: this.modelId
364
364
  }),
365
- headers: chunkFEUXFWF5_cjs.combineHeaders(this.config.headers(), options.headers),
365
+ headers: chunk4VDJYNCU_cjs.combineHeaders(this.config.headers(), options.headers),
366
366
  body: {
367
367
  ...args,
368
368
  stream: true
369
369
  },
370
370
  failedResponseHandler: groqFailedResponseHandler,
371
- successfulResponseHandler: chunkFEUXFWF5_cjs.createEventSourceResponseHandler(groqChatChunkSchema),
371
+ successfulResponseHandler: chunk4VDJYNCU_cjs.createEventSourceResponseHandler(groqChatChunkSchema),
372
372
  abortSignal: options.abortSignal,
373
373
  fetch: this.config.fetch
374
374
  });
@@ -434,19 +434,19 @@ var GroqChatLanguageModel = class {
434
434
  const index = toolCallDelta.index;
435
435
  if (toolCalls[index] == null) {
436
436
  if (toolCallDelta.type !== "function") {
437
- throw new chunkFEUXFWF5_cjs.InvalidResponseDataError({
437
+ throw new chunk4VDJYNCU_cjs.InvalidResponseDataError({
438
438
  data: toolCallDelta,
439
439
  message: `Expected 'function' type.`
440
440
  });
441
441
  }
442
442
  if (toolCallDelta.id == null) {
443
- throw new chunkFEUXFWF5_cjs.InvalidResponseDataError({
443
+ throw new chunk4VDJYNCU_cjs.InvalidResponseDataError({
444
444
  data: toolCallDelta,
445
445
  message: `Expected 'id' to be a string.`
446
446
  });
447
447
  }
448
448
  if (((_d = toolCallDelta.function) == null ? void 0 : _d.name) == null) {
449
- throw new chunkFEUXFWF5_cjs.InvalidResponseDataError({
449
+ throw new chunk4VDJYNCU_cjs.InvalidResponseDataError({
450
450
  data: toolCallDelta,
451
451
  message: `Expected 'function.name' to be a string.`
452
452
  });
@@ -471,11 +471,11 @@ var GroqChatLanguageModel = class {
471
471
  argsTextDelta: toolCall2.function.arguments
472
472
  });
473
473
  }
474
- if (chunkFEUXFWF5_cjs.isParsableJson(toolCall2.function.arguments)) {
474
+ if (chunk4VDJYNCU_cjs.isParsableJson(toolCall2.function.arguments)) {
475
475
  controller.enqueue({
476
476
  type: "tool-call",
477
477
  toolCallType: "function",
478
- toolCallId: (_h = toolCall2.id) != null ? _h : chunkFEUXFWF5_cjs.generateId(),
478
+ toolCallId: (_h = toolCall2.id) != null ? _h : chunk4VDJYNCU_cjs.generateId(),
479
479
  toolName: toolCall2.function.name,
480
480
  args: toolCall2.function.arguments
481
481
  });
@@ -498,11 +498,11 @@ var GroqChatLanguageModel = class {
498
498
  toolName: toolCall.function.name,
499
499
  argsTextDelta: (_l = toolCallDelta.function.arguments) != null ? _l : ""
500
500
  });
501
- if (((_m = toolCall.function) == null ? void 0 : _m.name) != null && ((_n = toolCall.function) == null ? void 0 : _n.arguments) != null && chunkFEUXFWF5_cjs.isParsableJson(toolCall.function.arguments)) {
501
+ if (((_m = toolCall.function) == null ? void 0 : _m.name) != null && ((_n = toolCall.function) == null ? void 0 : _n.arguments) != null && chunk4VDJYNCU_cjs.isParsableJson(toolCall.function.arguments)) {
502
502
  controller.enqueue({
503
503
  type: "tool-call",
504
504
  toolCallType: "function",
505
- toolCallId: (_o = toolCall.id) != null ? _o : chunkFEUXFWF5_cjs.generateId(),
505
+ toolCallId: (_o = toolCall.id) != null ? _o : chunk4VDJYNCU_cjs.generateId(),
506
506
  toolName: toolCall.function.name,
507
507
  args: toolCall.function.arguments
508
508
  });
@@ -619,13 +619,13 @@ var GroqTranscriptionModel = class {
619
619
  }) {
620
620
  var _a, _b, _c, _d, _e;
621
621
  const warnings = [];
622
- const groqOptions = chunkFEUXFWF5_cjs.parseProviderOptions({
622
+ const groqOptions = chunk4VDJYNCU_cjs.parseProviderOptions({
623
623
  provider: "groq",
624
624
  providerOptions,
625
625
  schema: groqProviderOptionsSchema
626
626
  });
627
627
  const formData = new FormData();
628
- const blob = audio instanceof Uint8Array ? new Blob([audio]) : new Blob([chunkFEUXFWF5_cjs.convertBase64ToUint8Array(audio)]);
628
+ const blob = audio instanceof Uint8Array ? new Blob([audio]) : new Blob([chunk4VDJYNCU_cjs.convertBase64ToUint8Array(audio)]);
629
629
  formData.append("model", this.modelId);
630
630
  formData.append("file", new File([blob], "audio", { type: mediaType }));
631
631
  if (groqOptions) {
@@ -656,15 +656,15 @@ var GroqTranscriptionModel = class {
656
656
  value: response,
657
657
  responseHeaders,
658
658
  rawValue: rawResponse
659
- } = await chunkFEUXFWF5_cjs.postFormDataToApi({
659
+ } = await chunk4VDJYNCU_cjs.postFormDataToApi({
660
660
  url: this.config.url({
661
661
  path: "/audio/transcriptions",
662
662
  modelId: this.modelId
663
663
  }),
664
- headers: chunkFEUXFWF5_cjs.combineHeaders(this.config.headers(), options.headers),
664
+ headers: chunk4VDJYNCU_cjs.combineHeaders(this.config.headers(), options.headers),
665
665
  formData,
666
666
  failedResponseHandler: groqFailedResponseHandler,
667
- successfulResponseHandler: chunkFEUXFWF5_cjs.createJsonResponseHandler(
667
+ successfulResponseHandler: chunk4VDJYNCU_cjs.createJsonResponseHandler(
668
668
  groqTranscriptionResponseSchema
669
669
  ),
670
670
  abortSignal: options.abortSignal,
@@ -714,9 +714,9 @@ var groqTranscriptionResponseSchema = zod.z.object({
714
714
  });
715
715
  function createGroq(options = {}) {
716
716
  var _a;
717
- const baseURL = (_a = chunkFEUXFWF5_cjs.withoutTrailingSlash(options.baseURL)) != null ? _a : "https://api.groq.com/openai/v1";
717
+ const baseURL = (_a = chunk4VDJYNCU_cjs.withoutTrailingSlash(options.baseURL)) != null ? _a : "https://api.groq.com/openai/v1";
718
718
  const getHeaders = () => ({
719
- Authorization: `Bearer ${chunkFEUXFWF5_cjs.loadApiKey({
719
+ Authorization: `Bearer ${chunk4VDJYNCU_cjs.loadApiKey({
720
720
  apiKey: options.apiKey,
721
721
  environmentVariableName: "GROQ_API_KEY",
722
722
  description: "Groq"
@@ -751,7 +751,7 @@ function createGroq(options = {}) {
751
751
  provider.languageModel = createLanguageModel;
752
752
  provider.chat = createChatModel;
753
753
  provider.textEmbeddingModel = (modelId) => {
754
- throw new chunkFEUXFWF5_cjs.NoSuchModelError({ modelId, modelType: "textEmbeddingModel" });
754
+ throw new chunk4VDJYNCU_cjs.NoSuchModelError({ modelId, modelType: "textEmbeddingModel" });
755
755
  };
756
756
  provider.transcription = createTranscriptionModel;
757
757
  return provider;
@@ -760,5 +760,5 @@ var groq = createGroq();
760
760
 
761
761
  exports.createGroq = createGroq;
762
762
  exports.groq = groq;
763
- //# sourceMappingURL=dist-6VCC76Q3.cjs.map
764
- //# sourceMappingURL=dist-6VCC76Q3.cjs.map
763
+ //# sourceMappingURL=dist-I2O6YPDX.cjs.map
764
+ //# sourceMappingURL=dist-I2O6YPDX.cjs.map