@sylphx/flow 0.2.3 → 0.2.4

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 (73) hide show
  1. package/dist/chunk-057m762a.js +4 -0
  2. package/dist/{chunk-7nht27vs.js.map → chunk-057m762a.js.map} +1 -1
  3. package/dist/chunk-2j2gmjg5.js +107 -0
  4. package/dist/{chunk-wnaa55wn.js.map → chunk-2j2gmjg5.js.map} +6 -5
  5. package/dist/{chunk-asr22mbn.js → chunk-2nfq57ym.js} +1 -1
  6. package/dist/{chunk-cs1s5c3g.js → chunk-372bgp30.js} +3 -3
  7. package/dist/{chunk-cs1s5c3g.js.map → chunk-372bgp30.js.map} +1 -1
  8. package/dist/{chunk-m9nt0bj3.js → chunk-51kpynby.js} +3 -3
  9. package/dist/{chunk-m9nt0bj3.js.map → chunk-51kpynby.js.map} +1 -1
  10. package/dist/{chunk-1rptg3yg.js → chunk-585jp0rg.js} +1 -1
  11. package/dist/{chunk-hj6r7703.js → chunk-66qzap9m.js} +2 -2
  12. package/dist/{chunk-hj6r7703.js.map → chunk-66qzap9m.js.map} +1 -1
  13. package/dist/{chunk-z2rtyk3d.js → chunk-6eb5a8kv.js} +4 -4
  14. package/dist/{chunk-z2rtyk3d.js.map → chunk-6eb5a8kv.js.map} +1 -1
  15. package/dist/chunk-7h737bp8.js +4 -0
  16. package/dist/{chunk-fs3f7acb.js.map → chunk-7h737bp8.js.map} +2 -2
  17. package/dist/chunk-8ep9gk6d.js +4 -0
  18. package/dist/{chunk-5szm4n3x.js.map → chunk-8ep9gk6d.js.map} +2 -2
  19. package/dist/{chunk-bnxtqetr.js → chunk-9qzv4trv.js} +3 -3
  20. package/dist/{chunk-bnxtqetr.js.map → chunk-9qzv4trv.js.map} +2 -2
  21. package/dist/chunk-b0047ggx.js +3 -0
  22. package/dist/{chunk-w2vbmr93.js.map → chunk-b0047ggx.js.map} +2 -2
  23. package/dist/{chunk-gyq335sw.js → chunk-ceyg2zjg.js} +3 -3
  24. package/dist/{chunk-gyq335sw.js.map → chunk-ceyg2zjg.js.map} +1 -1
  25. package/dist/chunk-cjy100rr.js +6 -0
  26. package/dist/{chunk-d4hj6d4t.js.map → chunk-cjy100rr.js.map} +2 -2
  27. package/dist/{chunk-gh83x9ya.js → chunk-d6k94684.js} +1 -1
  28. package/dist/chunk-e74zv5ct.js +19 -0
  29. package/dist/chunk-e74zv5ct.js.map +10 -0
  30. package/dist/{chunk-hxj4eapp.js → chunk-etqfkn4f.js} +3 -3
  31. package/dist/{chunk-hxj4eapp.js.map → chunk-etqfkn4f.js.map} +1 -1
  32. package/dist/{chunk-8z1sf25t.js → chunk-f676awyz.js} +3 -3
  33. package/dist/{chunk-8z1sf25t.js.map → chunk-f676awyz.js.map} +1 -1
  34. package/dist/{chunk-sxy6vp20.js → chunk-f9yb2zk3.js} +2 -2
  35. package/dist/{chunk-sxy6vp20.js.map → chunk-f9yb2zk3.js.map} +1 -1
  36. package/dist/{chunk-hft1735c.js → chunk-fyvtp08n.js} +2 -2
  37. package/dist/{chunk-hft1735c.js.map → chunk-fyvtp08n.js.map} +1 -1
  38. package/dist/chunk-gmmm7xpw.js +23 -0
  39. package/dist/{chunk-jgsq3xax.js.map → chunk-gmmm7xpw.js.map} +4 -4
  40. package/dist/{chunk-xata5rw6.js → chunk-mtrcdhzn.js} +3 -3
  41. package/dist/{chunk-xata5rw6.js.map → chunk-mtrcdhzn.js.map} +1 -1
  42. package/dist/{chunk-8krxe10w.js → chunk-ny1s8fnh.js} +2 -2
  43. package/dist/{chunk-8krxe10w.js.map → chunk-ny1s8fnh.js.map} +1 -1
  44. package/dist/{chunk-4fr8q0jy.js → chunk-rsagxdqj.js} +71 -71
  45. package/dist/{chunk-4fr8q0jy.js.map → chunk-rsagxdqj.js.map} +3 -3
  46. package/dist/{chunk-vjf57v4h.js → chunk-rvx8bgqk.js} +3 -3
  47. package/dist/{chunk-vjf57v4h.js.map → chunk-rvx8bgqk.js.map} +1 -1
  48. package/dist/{chunk-9c2nr2fz.js → chunk-sgafqzer.js} +3 -3
  49. package/dist/{chunk-9c2nr2fz.js.map → chunk-sgafqzer.js.map} +2 -2
  50. package/dist/{chunk-s6g21d1g.js → chunk-vc4xy6dm.js} +3 -3
  51. package/dist/{chunk-s6g21d1g.js.map → chunk-vc4xy6dm.js.map} +1 -1
  52. package/dist/chunk-weshapwk.js +27 -0
  53. package/dist/{chunk-wrx1n6q6.js.map → chunk-weshapwk.js.map} +11 -4
  54. package/dist/{chunk-ndah8mn9.js → chunk-z61qdct1.js} +2 -2
  55. package/dist/{chunk-ndah8mn9.js.map → chunk-z61qdct1.js.map} +1 -1
  56. package/dist/index.js +332 -331
  57. package/dist/index.js.map +14 -11
  58. package/package.json +1 -1
  59. package/dist/chunk-5szm4n3x.js +0 -4
  60. package/dist/chunk-7nht27vs.js +0 -4
  61. package/dist/chunk-d4hj6d4t.js +0 -6
  62. package/dist/chunk-f06ma45b.js +0 -15
  63. package/dist/chunk-f06ma45b.js.map +0 -16
  64. package/dist/chunk-fs3f7acb.js +0 -4
  65. package/dist/chunk-jgsq3xax.js +0 -23
  66. package/dist/chunk-w2vbmr93.js +0 -3
  67. package/dist/chunk-wd9qbbe5.js +0 -5
  68. package/dist/chunk-wd9qbbe5.js.map +0 -10
  69. package/dist/chunk-wnaa55wn.js +0 -108
  70. package/dist/chunk-wrx1n6q6.js +0 -16
  71. /package/dist/{chunk-asr22mbn.js.map → chunk-2nfq57ym.js.map} +0 -0
  72. /package/dist/{chunk-1rptg3yg.js.map → chunk-585jp0rg.js.map} +0 -0
  73. /package/dist/{chunk-gh83x9ya.js.map → chunk-d6k94684.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import"./chunk-sxy6vp20.js";import{spawn as E}from"node:child_process";class D{processes=new Map;idCounter=0;spawn(k,j){let q=`bash-${Date.now()}-${this.idCounter++}`,z=E("bash",["-c",k],{cwd:j||process.cwd(),shell:!1}),C={id:q,command:k,process:z,stdout:[],stderr:[],startTime:Date.now(),exitCode:null,cwd:j||process.cwd()};return z.stdout?.on("data",(x)=>{C.stdout.push(x.toString())}),z.stderr?.on("data",(x)=>{C.stderr.push(x.toString())}),z.on("exit",(x)=>{C.exitCode=x}),this.processes.set(q,C),q}getOutput(k){let j=this.processes.get(k);if(!j)return null;return{stdout:j.stdout.join(""),stderr:j.stderr.join(""),exitCode:j.exitCode,isRunning:j.exitCode===null,command:j.command,duration:Date.now()-j.startTime}}kill(k){let j=this.processes.get(k);if(!j)return!1;if(j.exitCode===null)j.process.kill("SIGTERM"),setTimeout(()=>{if(j.exitCode===null)j.process.kill("SIGKILL")},5000);return!0}list(){return Array.from(this.processes.values()).map((k)=>({id:k.id,command:k.command,isRunning:k.exitCode===null,duration:Date.now()-k.startTime,cwd:k.cwd}))}cleanup(){let k=Date.now()-3600000;for(let[j,q]of this.processes.entries())if(q.exitCode!==null&&q.startTime<k)this.processes.delete(j)}}var F=new D;setInterval(()=>{F.cleanup()},600000);export{F as bashManager};
2
- export{F as V};
1
+ import"./chunk-f9yb2zk3.js";import{spawn as E}from"node:child_process";class D{processes=new Map;idCounter=0;spawn(k,j){let q=`bash-${Date.now()}-${this.idCounter++}`,z=E("bash",["-c",k],{cwd:j||process.cwd(),shell:!1}),C={id:q,command:k,process:z,stdout:[],stderr:[],startTime:Date.now(),exitCode:null,cwd:j||process.cwd()};return z.stdout?.on("data",(x)=>{C.stdout.push(x.toString())}),z.stderr?.on("data",(x)=>{C.stderr.push(x.toString())}),z.on("exit",(x)=>{C.exitCode=x}),this.processes.set(q,C),q}getOutput(k){let j=this.processes.get(k);if(!j)return null;return{stdout:j.stdout.join(""),stderr:j.stderr.join(""),exitCode:j.exitCode,isRunning:j.exitCode===null,command:j.command,duration:Date.now()-j.startTime}}kill(k){let j=this.processes.get(k);if(!j)return!1;if(j.exitCode===null)j.process.kill("SIGTERM"),setTimeout(()=>{if(j.exitCode===null)j.process.kill("SIGKILL")},5000);return!0}list(){return Array.from(this.processes.values()).map((k)=>({id:k.id,command:k.command,isRunning:k.exitCode===null,duration:Date.now()-k.startTime,cwd:k.cwd}))}cleanup(){let k=Date.now()-3600000;for(let[j,q]of this.processes.entries())if(q.exitCode!==null&&q.startTime<k)this.processes.delete(j)}}var F=new D;setInterval(()=>{F.cleanup()},600000);export{F as bashManager};
2
+ export{F as $};
3
3
 
4
- //# debugId=AED4369F20D7045B64756E2164756E21
4
+ //# debugId=494A857E68B1354B64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "/**\n * Background Bash Process Manager\n * Manages long-running bash processes\n */\n\nimport { spawn } from 'node:child_process';\nimport type { ChildProcess } from 'node:child_process';\n\ninterface BashProcess {\n id: string;\n command: string;\n process: ChildProcess;\n stdout: string[];\n stderr: string[];\n startTime: number;\n exitCode: number | null;\n cwd: string;\n}\n\nclass BashManager {\n private processes = new Map<string, BashProcess>();\n private idCounter = 0;\n\n /**\n * Spawn a background bash process\n */\n spawn(command: string, cwd?: string): string {\n const id = `bash-${Date.now()}-${this.idCounter++}`;\n\n const bashProcess = spawn('bash', ['-c', command], {\n cwd: cwd || process.cwd(),\n shell: false,\n });\n\n const processInfo: BashProcess = {\n id,\n command,\n process: bashProcess,\n stdout: [],\n stderr: [],\n startTime: Date.now(),\n exitCode: null,\n cwd: cwd || process.cwd(),\n };\n\n // Collect stdout\n bashProcess.stdout?.on('data', (data: Buffer) => {\n processInfo.stdout.push(data.toString());\n });\n\n // Collect stderr\n bashProcess.stderr?.on('data', (data: Buffer) => {\n processInfo.stderr.push(data.toString());\n });\n\n // Handle exit\n bashProcess.on('exit', (code) => {\n processInfo.exitCode = code;\n });\n\n this.processes.set(id, processInfo);\n return id;\n }\n\n /**\n * Get output from a bash process\n */\n getOutput(id: string): {\n stdout: string;\n stderr: string;\n exitCode: number | null;\n isRunning: boolean;\n command: string;\n duration: number;\n } | null {\n const proc = this.processes.get(id);\n if (!proc) return null;\n\n return {\n stdout: proc.stdout.join(''),\n stderr: proc.stderr.join(''),\n exitCode: proc.exitCode,\n isRunning: proc.exitCode === null,\n command: proc.command,\n duration: Date.now() - proc.startTime,\n };\n }\n\n /**\n * Kill a bash process\n */\n kill(id: string): boolean {\n const proc = this.processes.get(id);\n if (!proc) return false;\n\n if (proc.exitCode === null) {\n proc.process.kill('SIGTERM');\n\n // Force kill after 5s if still running\n setTimeout(() => {\n if (proc.exitCode === null) {\n proc.process.kill('SIGKILL');\n }\n }, 5000);\n }\n\n return true;\n }\n\n /**\n * List all bash processes\n */\n list(): Array<{\n id: string;\n command: string;\n isRunning: boolean;\n duration: number;\n cwd: string;\n }> {\n return Array.from(this.processes.values()).map((proc) => ({\n id: proc.id,\n command: proc.command,\n isRunning: proc.exitCode === null,\n duration: Date.now() - proc.startTime,\n cwd: proc.cwd,\n }));\n }\n\n /**\n * Clean up completed processes older than 1 hour\n */\n cleanup() {\n const oneHourAgo = Date.now() - 60 * 60 * 1000;\n\n for (const [id, proc] of this.processes.entries()) {\n if (proc.exitCode !== null && proc.startTime < oneHourAgo) {\n this.processes.delete(id);\n }\n }\n }\n}\n\n// Singleton instance\nexport const bashManager = new BashManager();\n\n// Auto-cleanup every 10 minutes\nsetInterval(() => {\n bashManager.cleanup();\n}, 10 * 60 * 1000);\n"
6
6
  ],
7
7
  "mappings": "4BAKA,gBAAS,2BAcT,MAAM,CAAY,CACR,UAAY,IAAI,IAChB,UAAY,EAKpB,KAAK,CAAC,EAAiB,EAAsB,CAC3C,IAAM,EAAK,QAAQ,KAAK,IAAI,KAAK,KAAK,cAEhC,EAAc,EAAM,OAAQ,CAAC,KAAM,CAAO,EAAG,CACjD,IAAK,GAAO,QAAQ,IAAI,EACxB,MAAO,EACT,CAAC,EAEK,EAA2B,CAC/B,KACA,UACA,QAAS,EACT,OAAQ,CAAC,EACT,OAAQ,CAAC,EACT,UAAW,KAAK,IAAI,EACpB,SAAU,KACV,IAAK,GAAO,QAAQ,IAAI,CAC1B,EAkBA,OAfA,EAAY,QAAQ,GAAG,OAAQ,CAAC,IAAiB,CAC/C,EAAY,OAAO,KAAK,EAAK,SAAS,CAAC,EACxC,EAGD,EAAY,QAAQ,GAAG,OAAQ,CAAC,IAAiB,CAC/C,EAAY,OAAO,KAAK,EAAK,SAAS,CAAC,EACxC,EAGD,EAAY,GAAG,OAAQ,CAAC,IAAS,CAC/B,EAAY,SAAW,EACxB,EAED,KAAK,UAAU,IAAI,EAAI,CAAW,EAC3B,EAMT,SAAS,CAAC,EAOD,CACP,IAAM,EAAO,KAAK,UAAU,IAAI,CAAE,EAClC,GAAI,CAAC,EAAM,OAAO,KAElB,MAAO,CACL,OAAQ,EAAK,OAAO,KAAK,EAAE,EAC3B,OAAQ,EAAK,OAAO,KAAK,EAAE,EAC3B,SAAU,EAAK,SACf,UAAW,EAAK,WAAa,KAC7B,QAAS,EAAK,QACd,SAAU,KAAK,IAAI,EAAI,EAAK,SAC9B,EAMF,IAAI,CAAC,EAAqB,CACxB,IAAM,EAAO,KAAK,UAAU,IAAI,CAAE,EAClC,GAAI,CAAC,EAAM,MAAO,GAElB,GAAI,EAAK,WAAa,KACpB,EAAK,QAAQ,KAAK,SAAS,EAG3B,WAAW,IAAM,CACf,GAAI,EAAK,WAAa,KACpB,EAAK,QAAQ,KAAK,SAAS,GAE5B,IAAI,EAGT,MAAO,GAMT,IAAI,EAMD,CACD,OAAO,MAAM,KAAK,KAAK,UAAU,OAAO,CAAC,EAAE,IAAI,CAAC,KAAU,CACxD,GAAI,EAAK,GACT,QAAS,EAAK,QACd,UAAW,EAAK,WAAa,KAC7B,SAAU,KAAK,IAAI,EAAI,EAAK,UAC5B,IAAK,EAAK,GACZ,EAAE,EAMJ,OAAO,EAAG,CACR,IAAM,EAAa,KAAK,IAAI,EAAI,QAEhC,QAAY,EAAI,KAAS,KAAK,UAAU,QAAQ,EAC9C,GAAI,EAAK,WAAa,MAAQ,EAAK,UAAY,EAC7C,KAAK,UAAU,OAAO,CAAE,EAIhC,CAGO,IAAM,EAAc,IAAI,EAG/B,YAAY,IAAM,CAChB,EAAY,QAAQ,GACnB,MAAc",
8
- "debugId": "AED4369F20D7045B64756E2164756E21",
8
+ "debugId": "494A857E68B1354B64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
- import{X as CJ}from"./chunk-8z1sf25t.js";import{$a as $0,Ab as mz,Bb as MZ,Cb as z0,Da as I,Db as g0,Ea as M0,Fa as Sz,Fb as IQ,Ga as nZ,Gb as W1,Ha as u9,Ia as lZ,Ja as yz,Ka as v$,La as vz,Ma as _z,Na as xz,Oa as YZ,Pa as kz,Qa as PZ,Ra as u0,Sa as M$,Ta as h0,Ua as f0,Va as V0,Wa as uZ,Xa as Y0,Ya as sZ,Za as H1,_a as Q0,ab as o,bb as T1,cb as c9,eb as I0,gb as BZ,hb as mZ,ib as qZ,jb as vZ,lb as c0,nb as R0,pb as hz,qb as gz,tb as JZ,ub as pZ,vb as PQ,wb as oZ,yb as GZ}from"./chunk-hxj4eapp.js";import{Kb as z}from"./chunk-gyq335sw.js";import{Lb as q0,Mb as T,Ob as s$}from"./chunk-sxy6vp20.js";var A1=T((RH,n$)=>{var{defineProperty:w1,getOwnPropertyDescriptor:EJ,getOwnPropertyNames:PJ}=Object,IJ=Object.prototype.hasOwnProperty,fJ=(Z,$)=>{for(var Q in $)w1(Z,Q,{get:$[Q],enumerable:!0})},RJ=(Z,$,Q,X)=>{if($&&typeof $==="object"||typeof $==="function"){for(let Y of PJ($))if(!IJ.call(Z,Y)&&Y!==Q)w1(Z,Y,{get:()=>$[Y],enumerable:!(X=EJ($,Y))||X.enumerable})}return Z},TJ=(Z)=>RJ(w1({},"__esModule",{value:!0}),Z),p$={};fJ(p$,{SYMBOL_FOR_REQ_CONTEXT:()=>l$,getContext:()=>MJ});n$.exports=TJ(p$);var l$=Symbol.for("@vercel/request-context");function MJ(){return globalThis[l$]?.get?.()??{}}});var a$=T((TH,r$)=>{var{defineProperty:P1,getOwnPropertyDescriptor:bJ,getOwnPropertyNames:SJ}=Object,yJ=Object.prototype.hasOwnProperty,vJ=(Z,$)=>{for(var Q in $)P1(Z,Q,{get:$[Q],enumerable:!0})},_J=(Z,$,Q,X)=>{if($&&typeof $==="object"||typeof $==="function"){for(let Y of SJ($))if(!yJ.call(Z,Y)&&Y!==Q)P1(Z,Y,{get:()=>$[Y],enumerable:!(X=bJ($,Y))||X.enumerable})}return Z},xJ=(Z)=>_J(P1({},"__esModule",{value:!0}),Z),o$={};vJ(o$,{getVercelOidcToken:()=>gJ,getVercelOidcTokenSync:()=>E1});r$.exports=xJ(o$);var kJ=A1(),hJ=CJ();async function gJ(){let Z="",$;try{Z=E1()}catch(Q){$=Q}try{let[{getTokenPayload:Q,isExpired:X},{refreshToken:Y}]=await Promise.all([await import("./chunk-5szm4n3x.js"),await import("./chunk-w2vbmr93.js")]);if(!Z||X(Q(Z)))await Y(),Z=E1()}catch(Q){if($?.message&&Q instanceof Error)Q.message=`${$.message}
1
+ import{ba as CJ}from"./chunk-f676awyz.js";import{$a as V0,Ab as pZ,Bb as PQ,Cb as oZ,Eb as GZ,Gb as mz,Hb as MZ,Ib as z0,Ja as I,Jb as g0,Ka as M0,La as Sz,Lb as IQ,Ma as nZ,Mb as W1,Na as u9,Oa as lZ,Pa as yz,Qa as v$,Ra as vz,Sa as _z,Ta as xz,Ua as YZ,Va as kz,Wa as PZ,Xa as u0,Ya as M$,Za as h0,_a as f0,ab as uZ,bb as Y0,cb as sZ,db as H1,eb as Q0,fb as $0,gb as o,hb as T1,ib as c9,kb as I0,mb as BZ,nb as mZ,ob as qZ,pb as vZ,rb as c0,tb as R0,vb as hz,wb as gz,zb as JZ}from"./chunk-etqfkn4f.js";import{Qb as z}from"./chunk-ceyg2zjg.js";import{Rb as q0,Sb as T,Ub as s$}from"./chunk-f9yb2zk3.js";var A1=T((RH,n$)=>{var{defineProperty:w1,getOwnPropertyDescriptor:EJ,getOwnPropertyNames:PJ}=Object,IJ=Object.prototype.hasOwnProperty,fJ=(Z,$)=>{for(var Q in $)w1(Z,Q,{get:$[Q],enumerable:!0})},RJ=(Z,$,Q,X)=>{if($&&typeof $==="object"||typeof $==="function"){for(let Y of PJ($))if(!IJ.call(Z,Y)&&Y!==Q)w1(Z,Y,{get:()=>$[Y],enumerable:!(X=EJ($,Y))||X.enumerable})}return Z},TJ=(Z)=>RJ(w1({},"__esModule",{value:!0}),Z),p$={};fJ(p$,{SYMBOL_FOR_REQ_CONTEXT:()=>l$,getContext:()=>MJ});n$.exports=TJ(p$);var l$=Symbol.for("@vercel/request-context");function MJ(){return globalThis[l$]?.get?.()??{}}});var a$=T((TH,r$)=>{var{defineProperty:P1,getOwnPropertyDescriptor:bJ,getOwnPropertyNames:SJ}=Object,yJ=Object.prototype.hasOwnProperty,vJ=(Z,$)=>{for(var Q in $)P1(Z,Q,{get:$[Q],enumerable:!0})},_J=(Z,$,Q,X)=>{if($&&typeof $==="object"||typeof $==="function"){for(let Y of SJ($))if(!yJ.call(Z,Y)&&Y!==Q)P1(Z,Y,{get:()=>$[Y],enumerable:!(X=bJ($,Y))||X.enumerable})}return Z},xJ=(Z)=>_J(P1({},"__esModule",{value:!0}),Z),o$={};vJ(o$,{getVercelOidcToken:()=>gJ,getVercelOidcTokenSync:()=>E1});r$.exports=xJ(o$);var kJ=A1(),hJ=CJ();async function gJ(){let Z="",$;try{Z=E1()}catch(Q){$=Q}try{let[{getTokenPayload:Q,isExpired:X},{refreshToken:Y}]=await Promise.all([await import("./chunk-8ep9gk6d.js"),await import("./chunk-b0047ggx.js")]);if(!Z||X(Q(Z)))await Y(),Z=E1()}catch(Q){if($?.message&&Q instanceof Error)Q.message=`${$.message}
2
2
  ${Q.message}`;throw new hJ.VercelOidcTokenError("Failed to refresh OIDC token",Q)}return Z}function E1(){let Z=(0,kJ.getContext)().headers?.["x-vercel-oidc-token"]??process.env.VERCEL_OIDC_TOKEN;if(!Z)throw Error("The 'x-vercel-oidc-token' header is missing from the request. Do you have the OIDC option enabled in the Vercel project settings?");return Z}});var f1=T((MH,ZQ)=>{var{defineProperty:I1,getOwnPropertyDescriptor:mJ,getOwnPropertyNames:dJ}=Object,uJ=Object.prototype.hasOwnProperty,cJ=(Z,$)=>{for(var Q in $)I1(Z,Q,{get:$[Q],enumerable:!0})},iJ=(Z,$,Q,X)=>{if($&&typeof $==="object"||typeof $==="function"){for(let Y of dJ($))if(!uJ.call(Z,Y)&&Y!==Q)I1(Z,Y,{get:()=>$[Y],enumerable:!(X=mJ($,Y))||X.enumerable})}return Z},pJ=(Z)=>iJ(I1({},"__esModule",{value:!0}),Z),e$={};cJ(e$,{getContext:()=>lJ.getContext,getVercelOidcToken:()=>t$.getVercelOidcToken,getVercelOidcTokenSync:()=>t$.getVercelOidcTokenSync});ZQ.exports=pJ(e$);var t$=a$(),lJ=A1()});var hQ=T((xQ)=>{Object.defineProperty(xQ,"__esModule",{value:!0});xQ._globalThis=void 0;xQ._globalThis=typeof globalThis==="object"?globalThis:global});var gQ=T((aZ)=>{var N8=aZ&&aZ.__createBinding||(Object.create?function(Z,$,Q,X){if(X===void 0)X=Q;Object.defineProperty(Z,X,{enumerable:!0,get:function(){return $[Q]}})}:function(Z,$,Q,X){if(X===void 0)X=Q;Z[X]=$[Q]}),O8=aZ&&aZ.__exportStar||function(Z,$){for(var Q in Z)if(Q!=="default"&&!Object.prototype.hasOwnProperty.call($,Q))N8($,Z,Q)};Object.defineProperty(aZ,"__esModule",{value:!0});O8(hQ(),aZ)});var mQ=T((tZ)=>{var V8=tZ&&tZ.__createBinding||(Object.create?function(Z,$,Q,X){if(X===void 0)X=Q;Object.defineProperty(Z,X,{enumerable:!0,get:function(){return $[Q]}})}:function(Z,$,Q,X){if(X===void 0)X=Q;Z[X]=$[Q]}),D8=tZ&&tZ.__exportStar||function(Z,$){for(var Q in Z)if(Q!=="default"&&!Object.prototype.hasOwnProperty.call($,Q))V8($,Z,Q)};Object.defineProperty(tZ,"__esModule",{value:!0});D8(gQ(),tZ)});var b1=T((dQ)=>{Object.defineProperty(dQ,"__esModule",{value:!0});dQ.VERSION=void 0;dQ.VERSION="1.9.0"});var nQ=T((pQ)=>{Object.defineProperty(pQ,"__esModule",{value:!0});pQ.isCompatible=pQ._makeCompatibilityCheck=void 0;var L8=b1(),cQ=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function iQ(Z){let $=new Set([Z]),Q=new Set,X=Z.match(cQ);if(!X)return()=>!1;let Y={major:+X[1],minor:+X[2],patch:+X[3],prerelease:X[4]};if(Y.prerelease!=null)return function(K){return K===Z};function J(H){return Q.add(H),!1}function W(H){return $.add(H),!0}return function(K){if($.has(K))return!0;if(Q.has(K))return!1;let G=K.match(cQ);if(!G)return J(K);let F={major:+G[1],minor:+G[2],patch:+G[3],prerelease:G[4]};if(F.prerelease!=null)return J(K);if(Y.major!==F.major)return J(K);if(Y.major===0){if(Y.minor===F.minor&&Y.patch<=F.patch)return W(K);return J(K)}if(Y.minor<=F.minor)return W(K);return J(K)}}pQ._makeCompatibilityCheck=iQ;pQ.isCompatible=iQ(L8.VERSION)});var eZ=T((sQ)=>{Object.defineProperty(sQ,"__esModule",{value:!0});sQ.unregisterGlobal=sQ.getGlobal=sQ.registerGlobal=void 0;var A8=mQ(),B0=b1(),E8=nQ(),P8=B0.VERSION.split(".")[0],C0=Symbol.for(`opentelemetry.js.api.${P8}`),b0=A8._globalThis;function I8(Z,$,Q,X=!1){var Y;let J=b0[C0]=(Y=b0[C0])!==null&&Y!==void 0?Y:{version:B0.VERSION};if(!X&&J[Z]){let W=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${Z}`);return Q.error(W.stack||W.message),!1}if(J.version!==B0.VERSION){let W=Error(`@opentelemetry/api: Registration of version v${J.version} for ${Z} does not match previously registered API v${B0.VERSION}`);return Q.error(W.stack||W.message),!1}return J[Z]=$,Q.debug(`@opentelemetry/api: Registered a global for ${Z} v${B0.VERSION}.`),!0}sQ.registerGlobal=I8;function f8(Z){var $,Q;let X=($=b0[C0])===null||$===void 0?void 0:$.version;if(!X||!(0,E8.isCompatible)(X))return;return(Q=b0[C0])===null||Q===void 0?void 0:Q[Z]}sQ.getGlobal=f8;function R8(Z,$){$.debug(`@opentelemetry/api: Unregistering a global for ${Z} v${B0.VERSION}.`);let Q=b0[C0];if(Q)delete Q[Z]}sQ.unregisterGlobal=R8});var eQ=T((aQ)=>{Object.defineProperty(aQ,"__esModule",{value:!0});aQ.DiagComponentLogger=void 0;var C8=eZ();class rQ{constructor(Z){this._namespace=Z.namespace||"DiagComponentLogger"}debug(...Z){return S0("debug",this._namespace,Z)}error(...Z){return S0("error",this._namespace,Z)}info(...Z){return S0("info",this._namespace,Z)}warn(...Z){return S0("warn",this._namespace,Z)}verbose(...Z){return S0("verbose",this._namespace,Z)}}aQ.DiagComponentLogger=rQ;function S0(Z,$,Q){let X=(0,C8.getGlobal)("diag");if(!X)return;return Q.unshift($),X[Z](...Q)}});var r0=T((Z6)=>{Object.defineProperty(Z6,"__esModule",{value:!0});Z6.DiagLogLevel=void 0;var b8;(function(Z){Z[Z.NONE=0]="NONE",Z[Z.ERROR=30]="ERROR",Z[Z.WARN=50]="WARN",Z[Z.INFO=60]="INFO",Z[Z.DEBUG=70]="DEBUG",Z[Z.VERBOSE=80]="VERBOSE",Z[Z.ALL=9999]="ALL"})(b8=Z6.DiagLogLevel||(Z6.DiagLogLevel={}))});var X6=T(($6)=>{Object.defineProperty($6,"__esModule",{value:!0});$6.createLogLevelDiagLogger=void 0;var gZ=r0();function S8(Z,$){if(Z<gZ.DiagLogLevel.NONE)Z=gZ.DiagLogLevel.NONE;else if(Z>gZ.DiagLogLevel.ALL)Z=gZ.DiagLogLevel.ALL;$=$||{};function Q(X,Y){let J=$[X];if(typeof J==="function"&&Z>=Y)return J.bind($);return function(){}}return{error:Q("error",gZ.DiagLogLevel.ERROR),warn:Q("warn",gZ.DiagLogLevel.WARN),info:Q("info",gZ.DiagLogLevel.INFO),debug:Q("debug",gZ.DiagLogLevel.DEBUG),verbose:Q("verbose",gZ.DiagLogLevel.VERBOSE)}}$6.createLogLevelDiagLogger=S8});var Z0=T((Y6)=>{Object.defineProperty(Y6,"__esModule",{value:!0});Y6.DiagAPI=void 0;var y8=eQ(),v8=X6(),J6=r0(),a0=eZ(),_8="diag";class y1{constructor(){function Z(X){return function(...Y){let J=(0,a0.getGlobal)("diag");if(!J)return;return J[X](...Y)}}let $=this,Q=(X,Y={logLevel:J6.DiagLogLevel.INFO})=>{var J,W,H;if(X===$){let F=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return $.error((J=F.stack)!==null&&J!==void 0?J:F.message),!1}if(typeof Y==="number")Y={logLevel:Y};let K=(0,a0.getGlobal)("diag"),G=(0,v8.createLogLevelDiagLogger)((W=Y.logLevel)!==null&&W!==void 0?W:J6.DiagLogLevel.INFO,X);if(K&&!Y.suppressOverrideMessage){let F=(H=Error().stack)!==null&&H!==void 0?H:"<failed to generate stacktrace>";K.warn(`Current logger will be overwritten from ${F}`),G.warn(`Current logger will overwrite one already registered from ${F}`)}return(0,a0.registerGlobal)("diag",G,$,!0)};$.setLogger=Q,$.disable=()=>{(0,a0.unregisterGlobal)(_8,$)},$.createComponentLogger=(X)=>{return new y8.DiagComponentLogger(X)},$.verbose=Z("verbose"),$.debug=Z("debug"),$.info=Z("info"),$.warn=Z("warn"),$.error=Z("error")}static instance(){if(!this._instance)this._instance=new y1;return this._instance}}Y6.DiagAPI=y1});var G6=T((H6)=>{Object.defineProperty(H6,"__esModule",{value:!0});H6.BaggageImpl=void 0;class F0{constructor(Z){this._entries=Z?new Map(Z):new Map}getEntry(Z){let $=this._entries.get(Z);if(!$)return;return Object.assign({},$)}getAllEntries(){return Array.from(this._entries.entries()).map(([Z,$])=>[Z,$])}setEntry(Z,$){let Q=new F0(this._entries);return Q._entries.set(Z,$),Q}removeEntry(Z){let $=new F0(this._entries);return $._entries.delete(Z),$}removeEntries(...Z){let $=new F0(this._entries);for(let Q of Z)$._entries.delete(Q);return $}clear(){return new F0}}H6.BaggageImpl=F0});var B6=T((K6)=>{Object.defineProperty(K6,"__esModule",{value:!0});K6.baggageEntryMetadataSymbol=void 0;K6.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var v1=T((F6)=>{Object.defineProperty(F6,"__esModule",{value:!0});F6.baggageEntryMetadataFromString=F6.createBaggage=void 0;var x8=Z0(),k8=G6(),h8=B6(),g8=x8.DiagAPI.instance();function m8(Z={}){return new k8.BaggageImpl(new Map(Object.entries(Z)))}F6.createBaggage=m8;function d8(Z){if(typeof Z!=="string")g8.error(`Cannot create baggage metadata from unknown type: ${typeof Z}`),Z="";return{__TYPE__:h8.baggageEntryMetadataSymbol,toString(){return Z}}}F6.baggageEntryMetadataFromString=d8});var y0=T((j6)=>{Object.defineProperty(j6,"__esModule",{value:!0});j6.ROOT_CONTEXT=j6.createContextKey=void 0;function c8(Z){return Symbol.for(Z)}j6.createContextKey=c8;class t0{constructor(Z){let $=this;$._currentContext=Z?new Map(Z):new Map,$.getValue=(Q)=>$._currentContext.get(Q),$.setValue=(Q,X)=>{let Y=new t0($._currentContext);return Y._currentContext.set(Q,X),Y},$.deleteValue=(Q)=>{let X=new t0($._currentContext);return X._currentContext.delete(Q),X}}}j6.ROOT_CONTEXT=new t0});var L6=T((V6)=>{Object.defineProperty(V6,"__esModule",{value:!0});V6.DiagConsoleLogger=void 0;var _1=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class O6{constructor(){function Z($){return function(...Q){if(console){let X=console[$];if(typeof X!=="function")X=console.log;if(typeof X==="function")return X.apply(console,Q)}}}for(let $=0;$<_1.length;$++)this[_1[$].n]=Z(_1[$].c)}}V6.DiagConsoleLogger=O6});var i1=T((w6)=>{Object.defineProperty(w6,"__esModule",{value:!0});w6.createNoopMeter=w6.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=w6.NOOP_OBSERVABLE_GAUGE_METRIC=w6.NOOP_OBSERVABLE_COUNTER_METRIC=w6.NOOP_UP_DOWN_COUNTER_METRIC=w6.NOOP_HISTOGRAM_METRIC=w6.NOOP_GAUGE_METRIC=w6.NOOP_COUNTER_METRIC=w6.NOOP_METER=w6.NoopObservableUpDownCounterMetric=w6.NoopObservableGaugeMetric=w6.NoopObservableCounterMetric=w6.NoopObservableMetric=w6.NoopHistogramMetric=w6.NoopGaugeMetric=w6.NoopUpDownCounterMetric=w6.NoopCounterMetric=w6.NoopMetric=w6.NoopMeter=void 0;class x1{constructor(){}createGauge(Z,$){return w6.NOOP_GAUGE_METRIC}createHistogram(Z,$){return w6.NOOP_HISTOGRAM_METRIC}createCounter(Z,$){return w6.NOOP_COUNTER_METRIC}createUpDownCounter(Z,$){return w6.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(Z,$){return w6.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(Z,$){return w6.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(Z,$){return w6.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(Z,$){}removeBatchObservableCallback(Z){}}w6.NoopMeter=x1;class U0{}w6.NoopMetric=U0;class k1 extends U0{add(Z,$){}}w6.NoopCounterMetric=k1;class h1 extends U0{add(Z,$){}}w6.NoopUpDownCounterMetric=h1;class g1 extends U0{record(Z,$){}}w6.NoopGaugeMetric=g1;class m1 extends U0{record(Z,$){}}w6.NoopHistogramMetric=m1;class v0{addCallback(Z){}removeCallback(Z){}}w6.NoopObservableMetric=v0;class d1 extends v0{}w6.NoopObservableCounterMetric=d1;class u1 extends v0{}w6.NoopObservableGaugeMetric=u1;class c1 extends v0{}w6.NoopObservableUpDownCounterMetric=c1;w6.NOOP_METER=new x1;w6.NOOP_COUNTER_METRIC=new k1;w6.NOOP_GAUGE_METRIC=new g1;w6.NOOP_HISTOGRAM_METRIC=new m1;w6.NOOP_UP_DOWN_COUNTER_METRIC=new h1;w6.NOOP_OBSERVABLE_COUNTER_METRIC=new d1;w6.NOOP_OBSERVABLE_GAUGE_METRIC=new u1;w6.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new c1;function p8(){return w6.NOOP_METER}w6.createNoopMeter=p8});var S6=T((b6)=>{Object.defineProperty(b6,"__esModule",{value:!0});b6.ValueType=void 0;var QY;(function(Z){Z[Z.INT=0]="INT",Z[Z.DOUBLE=1]="DOUBLE"})(QY=b6.ValueType||(b6.ValueType={}))});var l1=T((y6)=>{Object.defineProperty(y6,"__esModule",{value:!0});y6.defaultTextMapSetter=y6.defaultTextMapGetter=void 0;y6.defaultTextMapGetter={get(Z,$){if(Z==null)return;return Z[$]},keys(Z){if(Z==null)return[];return Object.keys(Z)}};y6.defaultTextMapSetter={set(Z,$,Q){if(Z==null)return;Z[$]=Q}}});var h6=T((x6)=>{Object.defineProperty(x6,"__esModule",{value:!0});x6.NoopContextManager=void 0;var JY=y0();class _6{active(){return JY.ROOT_CONTEXT}with(Z,$,Q,...X){return $.call(Q,...X)}bind(Z,$){return $}enable(){return this}disable(){return this}}x6.NoopContextManager=_6});var _0=T((m6)=>{Object.defineProperty(m6,"__esModule",{value:!0});m6.ContextAPI=void 0;var YY=h6(),n1=eZ(),g6=Z0(),s1="context",zY=new YY.NoopContextManager;class o1{constructor(){}static getInstance(){if(!this._instance)this._instance=new o1;return this._instance}setGlobalContextManager(Z){return(0,n1.registerGlobal)(s1,Z,g6.DiagAPI.instance())}active(){return this._getContextManager().active()}with(Z,$,Q,...X){return this._getContextManager().with(Z,$,Q,...X)}bind(Z,$){return this._getContextManager().bind(Z,$)}_getContextManager(){return(0,n1.getGlobal)(s1)||zY}disable(){this._getContextManager().disable(),(0,n1.unregisterGlobal)(s1,g6.DiagAPI.instance())}}m6.ContextAPI=o1});var a1=T((u6)=>{Object.defineProperty(u6,"__esModule",{value:!0});u6.TraceFlags=void 0;var HY;(function(Z){Z[Z.NONE=0]="NONE",Z[Z.SAMPLED=1]="SAMPLED"})(HY=u6.TraceFlags||(u6.TraceFlags={}))});var e0=T((c6)=>{Object.defineProperty(c6,"__esModule",{value:!0});c6.INVALID_SPAN_CONTEXT=c6.INVALID_TRACEID=c6.INVALID_SPANID=void 0;var WY=a1();c6.INVALID_SPANID="0000000000000000";c6.INVALID_TRACEID="00000000000000000000000000000000";c6.INVALID_SPAN_CONTEXT={traceId:c6.INVALID_TRACEID,spanId:c6.INVALID_SPANID,traceFlags:WY.TraceFlags.NONE}});var Z1=T((s6)=>{Object.defineProperty(s6,"__esModule",{value:!0});s6.NonRecordingSpan=void 0;var GY=e0();class n6{constructor(Z=GY.INVALID_SPAN_CONTEXT){this._spanContext=Z}spanContext(){return this._spanContext}setAttribute(Z,$){return this}setAttributes(Z){return this}addEvent(Z,$){return this}addLink(Z){return this}addLinks(Z){return this}setStatus(Z){return this}updateName(Z){return this}end(Z){}isRecording(){return!1}recordException(Z,$){}}s6.NonRecordingSpan=n6});var Z$=T((a6)=>{Object.defineProperty(a6,"__esModule",{value:!0});a6.getSpanContext=a6.setSpanContext=a6.deleteSpan=a6.setSpan=a6.getActiveSpan=a6.getSpan=void 0;var KY=y0(),qY=Z1(),BY=_0(),t1=(0,KY.createContextKey)("OpenTelemetry Context Key SPAN");function e1(Z){return Z.getValue(t1)||void 0}a6.getSpan=e1;function FY(){return e1(BY.ContextAPI.getInstance().active())}a6.getActiveSpan=FY;function r6(Z,$){return Z.setValue(t1,$)}a6.setSpan=r6;function UY(Z){return Z.deleteValue(t1)}a6.deleteSpan=UY;function jY(Z,$){return r6(Z,new qY.NonRecordingSpan($))}a6.setSpanContext=jY;function NY(Z){var $;return($=e1(Z))===null||$===void 0?void 0:$.spanContext()}a6.getSpanContext=NY});var $1=T((QX)=>{Object.defineProperty(QX,"__esModule",{value:!0});QX.wrapSpanContext=QX.isSpanContextValid=QX.isValidSpanId=QX.isValidTraceId=void 0;var e6=e0(),AY=Z1(),EY=/^([0-9a-f]{32})$/i,PY=/^[0-9a-f]{16}$/i;function ZX(Z){return EY.test(Z)&&Z!==e6.INVALID_TRACEID}QX.isValidTraceId=ZX;function $X(Z){return PY.test(Z)&&Z!==e6.INVALID_SPANID}QX.isValidSpanId=$X;function IY(Z){return ZX(Z.traceId)&&$X(Z.spanId)}QX.isSpanContextValid=IY;function fY(Z){return new AY.NonRecordingSpan(Z)}QX.wrapSpanContext=fY});var X$=T((zX)=>{Object.defineProperty(zX,"__esModule",{value:!0});zX.NoopTracer=void 0;var CY=_0(),JX=Z$(),$$=Z1(),bY=$1(),Q$=CY.ContextAPI.getInstance();class YX{startSpan(Z,$,Q=Q$.active()){if(Boolean($===null||$===void 0?void 0:$.root))return new $$.NonRecordingSpan;let Y=Q&&(0,JX.getSpanContext)(Q);if(SY(Y)&&(0,bY.isSpanContextValid)(Y))return new $$.NonRecordingSpan(Y);else return new $$.NonRecordingSpan}startActiveSpan(Z,$,Q,X){let Y,J,W;if(arguments.length<2)return;else if(arguments.length===2)W=$;else if(arguments.length===3)Y=$,W=Q;else Y=$,J=Q,W=X;let H=J!==null&&J!==void 0?J:Q$.active(),K=this.startSpan(Z,Y,H),G=(0,JX.setSpan)(H,K);return Q$.with(G,W,void 0,K)}}zX.NoopTracer=YX;function SY(Z){return typeof Z==="object"&&typeof Z.spanId==="string"&&typeof Z.traceId==="string"&&typeof Z.traceFlags==="number"}});var J$=T((GX)=>{Object.defineProperty(GX,"__esModule",{value:!0});GX.ProxyTracer=void 0;var yY=X$(),vY=new yY.NoopTracer;class WX{constructor(Z,$,Q,X){this._provider=Z,this.name=$,this.version=Q,this.options=X}startSpan(Z,$,Q){return this._getTracer().startSpan(Z,$,Q)}startActiveSpan(Z,$,Q,X){let Y=this._getTracer();return Reflect.apply(Y.startActiveSpan,Y,arguments)}_getTracer(){if(this._delegate)return this._delegate;let Z=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!Z)return vY;return this._delegate=Z,this._delegate}}GX.ProxyTracer=WX});var UX=T((BX)=>{Object.defineProperty(BX,"__esModule",{value:!0});BX.NoopTracerProvider=void 0;var _Y=X$();class qX{getTracer(Z,$,Q){return new _Y.NoopTracer}}BX.NoopTracerProvider=qX});var Y$=T((NX)=>{Object.defineProperty(NX,"__esModule",{value:!0});NX.ProxyTracerProvider=void 0;var xY=J$(),kY=UX(),hY=new kY.NoopTracerProvider;class jX{getTracer(Z,$,Q){var X;return(X=this.getDelegateTracer(Z,$,Q))!==null&&X!==void 0?X:new xY.ProxyTracer(this,Z,$,Q)}getDelegate(){var Z;return(Z=this._delegate)!==null&&Z!==void 0?Z:hY}setDelegate(Z){this._delegate=Z}getDelegateTracer(Z,$,Q){var X;return(X=this._delegate)===null||X===void 0?void 0:X.getTracer(Z,$,Q)}}NX.ProxyTracerProvider=jX});var DX=T((VX)=>{Object.defineProperty(VX,"__esModule",{value:!0});VX.SamplingDecision=void 0;var gY;(function(Z){Z[Z.NOT_RECORD=0]="NOT_RECORD",Z[Z.RECORD=1]="RECORD",Z[Z.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(gY=VX.SamplingDecision||(VX.SamplingDecision={}))});var wX=T((LX)=>{Object.defineProperty(LX,"__esModule",{value:!0});LX.SpanKind=void 0;var mY;(function(Z){Z[Z.INTERNAL=0]="INTERNAL",Z[Z.SERVER=1]="SERVER",Z[Z.CLIENT=2]="CLIENT",Z[Z.PRODUCER=3]="PRODUCER",Z[Z.CONSUMER=4]="CONSUMER"})(mY=LX.SpanKind||(LX.SpanKind={}))});var EX=T((AX)=>{Object.defineProperty(AX,"__esModule",{value:!0});AX.SpanStatusCode=void 0;var dY;(function(Z){Z[Z.UNSET=0]="UNSET",Z[Z.OK=1]="OK",Z[Z.ERROR=2]="ERROR"})(dY=AX.SpanStatusCode||(AX.SpanStatusCode={}))});var fX=T((PX)=>{Object.defineProperty(PX,"__esModule",{value:!0});PX.validateValue=PX.validateKey=void 0;var G$="[_0-9a-z-*/]",uY=`[a-z]${G$}{0,255}`,cY=`[a-z0-9]${G$}{0,240}@[a-z]${G$}{0,13}`,iY=new RegExp(`^(?:${uY}|${cY})$`),pY=/^[ -~]{0,255}[!-~]$/,lY=/,|=/;function nY(Z){return iY.test(Z)}PX.validateKey=nY;function sY(Z){return pY.test(Z)&&!lY.test(Z)}PX.validateValue=sY});var yX=T((bX)=>{Object.defineProperty(bX,"__esModule",{value:!0});bX.TraceStateImpl=void 0;var RX=fX(),TX=32,rY=512,MX=",",CX="=";class K${constructor(Z){if(this._internalState=new Map,Z)this._parse(Z)}set(Z,$){let Q=this._clone();if(Q._internalState.has(Z))Q._internalState.delete(Z);return Q._internalState.set(Z,$),Q}unset(Z){let $=this._clone();return $._internalState.delete(Z),$}get(Z){return this._internalState.get(Z)}serialize(){return this._keys().reduce((Z,$)=>{return Z.push($+CX+this.get($)),Z},[]).join(MX)}_parse(Z){if(Z.length>rY)return;if(this._internalState=Z.split(MX).reverse().reduce(($,Q)=>{let X=Q.trim(),Y=X.indexOf(CX);if(Y!==-1){let J=X.slice(0,Y),W=X.slice(Y+1,Q.length);if((0,RX.validateKey)(J)&&(0,RX.validateValue)(W))$.set(J,W)}return $},new Map),this._internalState.size>TX)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,TX))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let Z=new K$;return Z._internalState=new Map(this._internalState),Z}}bX.TraceStateImpl=K$});var xX=T((vX)=>{Object.defineProperty(vX,"__esModule",{value:!0});vX.createTraceState=void 0;var aY=yX();function tY(Z){return new aY.TraceStateImpl(Z)}vX.createTraceState=tY});var gX=T((kX)=>{Object.defineProperty(kX,"__esModule",{value:!0});kX.context=void 0;var eY=_0();kX.context=eY.ContextAPI.getInstance()});var uX=T((mX)=>{Object.defineProperty(mX,"__esModule",{value:!0});mX.diag=void 0;var Zz=Z0();mX.diag=Zz.DiagAPI.instance()});var pX=T((cX)=>{Object.defineProperty(cX,"__esModule",{value:!0});cX.NOOP_METER_PROVIDER=cX.NoopMeterProvider=void 0;var $z=i1();class q${getMeter(Z,$,Q){return $z.NOOP_METER}}cX.NoopMeterProvider=q$;cX.NOOP_METER_PROVIDER=new q$});var oX=T((nX)=>{Object.defineProperty(nX,"__esModule",{value:!0});nX.MetricsAPI=void 0;var Xz=pX(),B$=eZ(),lX=Z0(),F$="metrics";class U${constructor(){}static getInstance(){if(!this._instance)this._instance=new U$;return this._instance}setGlobalMeterProvider(Z){return(0,B$.registerGlobal)(F$,Z,lX.DiagAPI.instance())}getMeterProvider(){return(0,B$.getGlobal)(F$)||Xz.NOOP_METER_PROVIDER}getMeter(Z,$,Q){return this.getMeterProvider().getMeter(Z,$,Q)}disable(){(0,B$.unregisterGlobal)(F$,lX.DiagAPI.instance())}}nX.MetricsAPI=U$});var tX=T((rX)=>{Object.defineProperty(rX,"__esModule",{value:!0});rX.metrics=void 0;var Jz=oX();rX.metrics=Jz.MetricsAPI.getInstance()});var Q9=T((Z9)=>{Object.defineProperty(Z9,"__esModule",{value:!0});Z9.NoopTextMapPropagator=void 0;class eX{inject(Z,$){}extract(Z,$){return Z}fields(){return[]}}Z9.NoopTextMapPropagator=eX});var z9=T((J9)=>{Object.defineProperty(J9,"__esModule",{value:!0});J9.deleteBaggage=J9.setBaggage=J9.getActiveBaggage=J9.getBaggage=void 0;var Yz=_0(),zz=y0(),j$=(0,zz.createContextKey)("OpenTelemetry Baggage Key");function X9(Z){return Z.getValue(j$)||void 0}J9.getBaggage=X9;function Hz(){return X9(Yz.ContextAPI.getInstance().active())}J9.getActiveBaggage=Hz;function Wz(Z,$){return Z.setValue(j$,$)}J9.setBaggage=Wz;function Gz(Z){return Z.deleteValue(j$)}J9.deleteBaggage=Gz});var q9=T((G9)=>{Object.defineProperty(G9,"__esModule",{value:!0});G9.PropagationAPI=void 0;var N$=eZ(),Fz=Q9(),H9=l1(),Q1=z9(),Uz=v1(),W9=Z0(),O$="propagation",jz=new Fz.NoopTextMapPropagator;class V${constructor(){this.createBaggage=Uz.createBaggage,this.getBaggage=Q1.getBaggage,this.getActiveBaggage=Q1.getActiveBaggage,this.setBaggage=Q1.setBaggage,this.deleteBaggage=Q1.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new V$;return this._instance}setGlobalPropagator(Z){return(0,N$.registerGlobal)(O$,Z,W9.DiagAPI.instance())}inject(Z,$,Q=H9.defaultTextMapSetter){return this._getGlobalPropagator().inject(Z,$,Q)}extract(Z,$,Q=H9.defaultTextMapGetter){return this._getGlobalPropagator().extract(Z,$,Q)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,N$.unregisterGlobal)(O$,W9.DiagAPI.instance())}_getGlobalPropagator(){return(0,N$.getGlobal)(O$)||jz}}G9.PropagationAPI=V$});var U9=T((B9)=>{Object.defineProperty(B9,"__esModule",{value:!0});B9.propagation=void 0;var Nz=q9();B9.propagation=Nz.PropagationAPI.getInstance()});var L9=T((V9)=>{Object.defineProperty(V9,"__esModule",{value:!0});V9.TraceAPI=void 0;var D$=eZ(),j9=Y$(),N9=$1(),j0=Z$(),O9=Z0(),L$="trace";class w${constructor(){this._proxyTracerProvider=new j9.ProxyTracerProvider,this.wrapSpanContext=N9.wrapSpanContext,this.isSpanContextValid=N9.isSpanContextValid,this.deleteSpan=j0.deleteSpan,this.getSpan=j0.getSpan,this.getActiveSpan=j0.getActiveSpan,this.getSpanContext=j0.getSpanContext,this.setSpan=j0.setSpan,this.setSpanContext=j0.setSpanContext}static getInstance(){if(!this._instance)this._instance=new w$;return this._instance}setGlobalTracerProvider(Z){let $=(0,D$.registerGlobal)(L$,this._proxyTracerProvider,O9.DiagAPI.instance());if($)this._proxyTracerProvider.setDelegate(Z);return $}getTracerProvider(){return(0,D$.getGlobal)(L$)||this._proxyTracerProvider}getTracer(Z,$){return this.getTracerProvider().getTracer(Z,$)}disable(){(0,D$.unregisterGlobal)(L$,O9.DiagAPI.instance()),this._proxyTracerProvider=new j9.ProxyTracerProvider}}V9.TraceAPI=w$});var E9=T((w9)=>{Object.defineProperty(w9,"__esModule",{value:!0});w9.trace=void 0;var Oz=L9();w9.trace=Oz.TraceAPI.getInstance()});var P$=T((d)=>{Object.defineProperty(d,"__esModule",{value:!0});d.trace=d.propagation=d.metrics=d.diag=d.context=d.INVALID_SPAN_CONTEXT=d.INVALID_TRACEID=d.INVALID_SPANID=d.isValidSpanId=d.isValidTraceId=d.isSpanContextValid=d.createTraceState=d.TraceFlags=d.SpanStatusCode=d.SpanKind=d.SamplingDecision=d.ProxyTracerProvider=d.ProxyTracer=d.defaultTextMapSetter=d.defaultTextMapGetter=d.ValueType=d.createNoopMeter=d.DiagLogLevel=d.DiagConsoleLogger=d.ROOT_CONTEXT=d.createContextKey=d.baggageEntryMetadataFromString=void 0;var Vz=v1();Object.defineProperty(d,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return Vz.baggageEntryMetadataFromString}});var P9=y0();Object.defineProperty(d,"createContextKey",{enumerable:!0,get:function(){return P9.createContextKey}});Object.defineProperty(d,"ROOT_CONTEXT",{enumerable:!0,get:function(){return P9.ROOT_CONTEXT}});var Dz=L6();Object.defineProperty(d,"DiagConsoleLogger",{enumerable:!0,get:function(){return Dz.DiagConsoleLogger}});var Lz=r0();Object.defineProperty(d,"DiagLogLevel",{enumerable:!0,get:function(){return Lz.DiagLogLevel}});var wz=i1();Object.defineProperty(d,"createNoopMeter",{enumerable:!0,get:function(){return wz.createNoopMeter}});var Az=S6();Object.defineProperty(d,"ValueType",{enumerable:!0,get:function(){return Az.ValueType}});var I9=l1();Object.defineProperty(d,"defaultTextMapGetter",{enumerable:!0,get:function(){return I9.defaultTextMapGetter}});Object.defineProperty(d,"defaultTextMapSetter",{enumerable:!0,get:function(){return I9.defaultTextMapSetter}});var Ez=J$();Object.defineProperty(d,"ProxyTracer",{enumerable:!0,get:function(){return Ez.ProxyTracer}});var Pz=Y$();Object.defineProperty(d,"ProxyTracerProvider",{enumerable:!0,get:function(){return Pz.ProxyTracerProvider}});var Iz=DX();Object.defineProperty(d,"SamplingDecision",{enumerable:!0,get:function(){return Iz.SamplingDecision}});var fz=wX();Object.defineProperty(d,"SpanKind",{enumerable:!0,get:function(){return fz.SpanKind}});var Rz=EX();Object.defineProperty(d,"SpanStatusCode",{enumerable:!0,get:function(){return Rz.SpanStatusCode}});var Tz=a1();Object.defineProperty(d,"TraceFlags",{enumerable:!0,get:function(){return Tz.TraceFlags}});var Mz=xX();Object.defineProperty(d,"createTraceState",{enumerable:!0,get:function(){return Mz.createTraceState}});var A$=$1();Object.defineProperty(d,"isSpanContextValid",{enumerable:!0,get:function(){return A$.isSpanContextValid}});Object.defineProperty(d,"isValidTraceId",{enumerable:!0,get:function(){return A$.isValidTraceId}});Object.defineProperty(d,"isValidSpanId",{enumerable:!0,get:function(){return A$.isValidSpanId}});var E$=e0();Object.defineProperty(d,"INVALID_SPANID",{enumerable:!0,get:function(){return E$.INVALID_SPANID}});Object.defineProperty(d,"INVALID_TRACEID",{enumerable:!0,get:function(){return E$.INVALID_TRACEID}});Object.defineProperty(d,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return E$.INVALID_SPAN_CONTEXT}});var f9=gX();Object.defineProperty(d,"context",{enumerable:!0,get:function(){return f9.context}});var R9=uX();Object.defineProperty(d,"diag",{enumerable:!0,get:function(){return R9.diag}});var T9=tX();Object.defineProperty(d,"metrics",{enumerable:!0,get:function(){return T9.metrics}});var M9=U9();Object.defineProperty(d,"propagation",{enumerable:!0,get:function(){return M9.propagation}});var C9=E9();Object.defineProperty(d,"trace",{enumerable:!0,get:function(){return C9.trace}});d.default={context:f9.context,diag:R9.diag,metrics:T9.metrics,propagation:M9.propagation,trace:C9.trace}});var yQ=q0(f1(),1),vQ=q0(f1(),1);var nJ="vercel.ai.gateway.error",R1=Symbol.for(nJ),$Q,QQ,EZ=class Z extends(QQ=Error,$Q=R1,QQ){constructor({message:$,statusCode:Q=500,cause:X}){super($);this[$Q]=!0,this.statusCode=Q,this.cause=X}static isInstance($){return Z.hasMarker($)}static hasMarker($){return typeof $==="object"&&$!==null&&R1 in $&&$[R1]===!0}},fQ="GatewayAuthenticationError",sJ=`vercel.ai.gateway.error.${fQ}`,XQ=Symbol.for(sJ),JQ,YQ,o0=class Z extends(YQ=EZ,JQ=XQ,YQ){constructor({message:$="Authentication failed",statusCode:Q=401,cause:X}={}){super({message:$,statusCode:Q,cause:X});this[JQ]=!0,this.name=fQ,this.type="authentication_error"}static isInstance($){return EZ.hasMarker($)&&XQ in $}static createContextualError({apiKeyProvided:$,oidcTokenProvided:Q,message:X="Authentication failed",statusCode:Y=401,cause:J}){let W;if($)W=`AI Gateway authentication failed: Invalid API key.
3
3
 
4
4
  Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
@@ -20,6 +20,6 @@ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the toke
20
20
 
21
21
  `)}})}},HJ={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};function _4({status:Z,statusText:$,headers:Q,stream:X,consumeSseStream:Y}){let J=X.pipeThrough(new zJ);if(Y){let[W,H]=J.tee();J=W,Y({stream:H})}return new Response(J.pipeThrough(new TextEncoderStream),{status:Z,statusText:$,headers:p0(Q,HJ)})}function x4({originalMessages:Z,responseMessageId:$}){if(Z==null)return;let Q=Z[Z.length-1];return(Q==null?void 0:Q.role)==="assistant"?Q.id:typeof $==="function"?$():$}var WJ=BZ(()=>GZ(z.union([z.strictObject({type:z.literal("text-start"),id:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("text-delta"),id:z.string(),delta:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("text-end"),id:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("error"),errorText:z.string()}),z.strictObject({type:z.literal("tool-input-start"),toolCallId:z.string(),toolName:z.string(),providerExecuted:z.boolean().optional(),dynamic:z.boolean().optional()}),z.strictObject({type:z.literal("tool-input-delta"),toolCallId:z.string(),inputTextDelta:z.string()}),z.strictObject({type:z.literal("tool-input-available"),toolCallId:z.string(),toolName:z.string(),input:z.unknown(),providerExecuted:z.boolean().optional(),providerMetadata:k.optional(),dynamic:z.boolean().optional()}),z.strictObject({type:z.literal("tool-input-error"),toolCallId:z.string(),toolName:z.string(),input:z.unknown(),providerExecuted:z.boolean().optional(),providerMetadata:k.optional(),dynamic:z.boolean().optional(),errorText:z.string()}),z.strictObject({type:z.literal("tool-output-available"),toolCallId:z.string(),output:z.unknown(),providerExecuted:z.boolean().optional(),dynamic:z.boolean().optional(),preliminary:z.boolean().optional()}),z.strictObject({type:z.literal("tool-output-error"),toolCallId:z.string(),errorText:z.string(),providerExecuted:z.boolean().optional(),dynamic:z.boolean().optional()}),z.strictObject({type:z.literal("reasoning-start"),id:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("reasoning-delta"),id:z.string(),delta:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("reasoning-end"),id:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("source-url"),sourceId:z.string(),url:z.string(),title:z.string().optional(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("source-document"),sourceId:z.string(),mediaType:z.string(),title:z.string(),filename:z.string().optional(),providerMetadata:k.optional()}),z.strictObject({type:z.literal("file"),url:z.string(),mediaType:z.string(),providerMetadata:k.optional()}),z.strictObject({type:z.custom((Z)=>typeof Z==="string"&&Z.startsWith("data-"),{message:'Type must start with "data-"'}),id:z.string().optional(),data:z.unknown(),transient:z.boolean().optional()}),z.strictObject({type:z.literal("start-step")}),z.strictObject({type:z.literal("finish-step")}),z.strictObject({type:z.literal("start"),messageId:z.string().optional(),messageMetadata:z.unknown().optional()}),z.strictObject({type:z.literal("finish"),messageMetadata:z.unknown().optional()}),z.strictObject({type:z.literal("abort")}),z.strictObject({type:z.literal("message-metadata"),messageMetadata:z.unknown()})])));function k4(Z){return Z.type.startsWith("data-")}function x$(Z,$){if(Z===void 0&&$===void 0)return;if(Z===void 0)return $;if($===void 0)return Z;let Q={...Z};for(let X in $)if(Object.prototype.hasOwnProperty.call($,X)){let Y=$[X];if(Y===void 0)continue;let J=X in Z?Z[X]:void 0,W=Y!==null&&typeof Y==="object"&&!Array.isArray(Y)&&!(Y instanceof Date)&&!(Y instanceof RegExp),H=J!==null&&J!==void 0&&typeof J==="object"&&!Array.isArray(J)&&!(J instanceof Date)&&!(J instanceof RegExp);if(W&&H)Q[X]=x$(J,Y);else Q[X]=Y}return Q}function h4(Z){let $=["ROOT"],Q=-1,X=null;function Y(K,G,F){switch(K){case'"':{Q=G,$.pop(),$.push(F),$.push("INSIDE_STRING");break}case"f":case"t":case"n":{Q=G,X=G,$.pop(),$.push(F),$.push("INSIDE_LITERAL");break}case"-":{$.pop(),$.push(F),$.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{Q=G,$.pop(),$.push(F),$.push("INSIDE_NUMBER");break}case"{":{Q=G,$.pop(),$.push(F),$.push("INSIDE_OBJECT_START");break}case"[":{Q=G,$.pop(),$.push(F),$.push("INSIDE_ARRAY_START");break}}}function J(K,G){switch(K){case",":{$.pop(),$.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{Q=G,$.pop();break}}}function W(K,G){switch(K){case",":{$.pop(),$.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{Q=G,$.pop();break}}}for(let K=0;K<Z.length;K++){let G=Z[K];switch($[$.length-1]){case"ROOT":Y(G,K,"FINISH");break;case"INSIDE_OBJECT_START":{switch(G){case'"':{$.pop(),$.push("INSIDE_OBJECT_KEY");break}case"}":{Q=K,$.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(G){case'"':{$.pop(),$.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(G){case'"':{$.pop(),$.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(G){case":":{$.pop(),$.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{Y(G,K,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{J(G,K);break}case"INSIDE_STRING":{switch(G){case'"':{$.pop(),Q=K;break}case"\\":{$.push("INSIDE_STRING_ESCAPE");break}default:Q=K}break}case"INSIDE_ARRAY_START":{switch(G){case"]":{Q=K,$.pop();break}default:{Q=K,Y(G,K,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(G){case",":{$.pop(),$.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{Q=K,$.pop();break}default:{Q=K;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{Y(G,K,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{$.pop(),Q=K;break}case"INSIDE_NUMBER":{switch(G){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{Q=K;break}case"e":case"E":case"-":case".":break;case",":{if($.pop(),$[$.length-1]==="INSIDE_ARRAY_AFTER_VALUE")W(G,K);if($[$.length-1]==="INSIDE_OBJECT_AFTER_VALUE")J(G,K);break}case"}":{if($.pop(),$[$.length-1]==="INSIDE_OBJECT_AFTER_VALUE")J(G,K);break}case"]":{if($.pop(),$[$.length-1]==="INSIDE_ARRAY_AFTER_VALUE")W(G,K);break}default:{$.pop();break}}break}case"INSIDE_LITERAL":{let U=Z.substring(X,K+1);if(!"false".startsWith(U)&&!"true".startsWith(U)&&!"null".startsWith(U)){if($.pop(),$[$.length-1]==="INSIDE_OBJECT_AFTER_VALUE")J(G,K);else if($[$.length-1]==="INSIDE_ARRAY_AFTER_VALUE")W(G,K)}else Q=K;break}}}let H=Z.slice(0,Q+1);for(let K=$.length-1;K>=0;K--)switch($[K]){case"INSIDE_STRING":{H+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{H+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{H+="]";break}case"INSIDE_LITERAL":{let F=Z.substring(X,Z.length);if("true".startsWith(F))H+="true".slice(F.length);else if("false".startsWith(F))H+="false".slice(F.length);else if("null".startsWith(F))H+="null".slice(F.length)}}return H}async function k$(Z){if(Z===void 0)return{value:void 0,state:"undefined-input"};let $=await vZ({text:Z});if($.success)return{value:$.value,state:"successful-parse"};if($=await vZ({text:h4(Z)}),$.success)return{value:$.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}function f$(Z){return Z.type.startsWith("data-")}function R$(Z){return Z.type==="text"}function T$(Z){return Z.type==="file"}function k9(Z){return Z.type==="reasoning"}function N0(Z){return Z.type.startsWith("tool-")}function h$(Z){return Z.type==="dynamic-tool"}function d0(Z){return N0(Z)||h$(Z)}function Y1(Z){return Z.type.split("-").slice(1).join("-")}function g4(Z){return h$(Z)?Z.toolName:Y1(Z)}function g$({lastMessage:Z,messageId:$}){return{message:(Z==null?void 0:Z.role)==="assistant"?Z:{id:$,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function m$({stream:Z,messageMetadataSchema:$,dataPartSchemas:Q,runUpdateMessageJob:X,onError:Y,onToolCall:J,onData:W}){return Z.pipeThrough(new TransformStream({async transform(H,K){await X(async({state:G,write:F})=>{var U,q,B,j;function V(N){let R=G.message.parts.filter(N0).find((D)=>D.toolCallId===N);if(R==null)throw Error("tool-output-error must be preceded by a tool-input-available");return R}function L(N){let R=G.message.parts.filter((D)=>D.type==="dynamic-tool").find((D)=>D.toolCallId===N);if(R==null)throw Error("tool-output-error must be preceded by a tool-input-available");return R}function O(N){var b;let R=G.message.parts.find((S)=>N0(S)&&S.toolCallId===N.toolCallId),D=N,A=R;if(R!=null){if(R.state=N.state,A.input=D.input,A.output=D.output,A.errorText=D.errorText,A.rawInput=D.rawInput,A.preliminary=D.preliminary,A.providerExecuted=(b=D.providerExecuted)!=null?b:R.providerExecuted,D.providerMetadata!=null&&R.state==="input-available")R.callProviderMetadata=D.providerMetadata}else G.message.parts.push({type:`tool-${N.toolName}`,toolCallId:N.toolCallId,state:N.state,input:D.input,output:D.output,rawInput:D.rawInput,errorText:D.errorText,providerExecuted:D.providerExecuted,preliminary:D.preliminary,...D.providerMetadata!=null?{callProviderMetadata:D.providerMetadata}:{}})}function P(N){var b,R;let D=G.message.parts.find((v)=>v.type==="dynamic-tool"&&v.toolCallId===N.toolCallId),A=N,S=D;if(D!=null){if(D.state=N.state,S.toolName=N.toolName,S.input=A.input,S.output=A.output,S.errorText=A.errorText,S.rawInput=(b=A.rawInput)!=null?b:S.rawInput,S.preliminary=A.preliminary,S.providerExecuted=(R=A.providerExecuted)!=null?R:D.providerExecuted,A.providerMetadata!=null&&D.state==="input-available")D.callProviderMetadata=A.providerMetadata}else G.message.parts.push({type:"dynamic-tool",toolName:N.toolName,toolCallId:N.toolCallId,state:N.state,input:A.input,output:A.output,errorText:A.errorText,preliminary:A.preliminary,providerExecuted:A.providerExecuted,...A.providerMetadata!=null?{callProviderMetadata:A.providerMetadata}:{}})}async function y(N){if(N!=null){let b=G.message.metadata!=null?x$(G.message.metadata,N):N;if($!=null)await mZ({value:b,schema:$});G.message.metadata=b}}switch(H.type){case"text-start":{let N={type:"text",text:"",providerMetadata:H.providerMetadata,state:"streaming"};G.activeTextParts[H.id]=N,G.message.parts.push(N),F();break}case"text-delta":{let N=G.activeTextParts[H.id];N.text+=H.delta,N.providerMetadata=(U=H.providerMetadata)!=null?U:N.providerMetadata,F();break}case"text-end":{let N=G.activeTextParts[H.id];N.state="done",N.providerMetadata=(q=H.providerMetadata)!=null?q:N.providerMetadata,delete G.activeTextParts[H.id],F();break}case"reasoning-start":{let N={type:"reasoning",text:"",providerMetadata:H.providerMetadata,state:"streaming"};G.activeReasoningParts[H.id]=N,G.message.parts.push(N),F();break}case"reasoning-delta":{let N=G.activeReasoningParts[H.id];N.text+=H.delta,N.providerMetadata=(B=H.providerMetadata)!=null?B:N.providerMetadata,F();break}case"reasoning-end":{let N=G.activeReasoningParts[H.id];N.providerMetadata=(j=H.providerMetadata)!=null?j:N.providerMetadata,N.state="done",delete G.activeReasoningParts[H.id],F();break}case"file":{G.message.parts.push({type:"file",mediaType:H.mediaType,url:H.url}),F();break}case"source-url":{G.message.parts.push({type:"source-url",sourceId:H.sourceId,url:H.url,title:H.title,providerMetadata:H.providerMetadata}),F();break}case"source-document":{G.message.parts.push({type:"source-document",sourceId:H.sourceId,mediaType:H.mediaType,title:H.title,filename:H.filename,providerMetadata:H.providerMetadata}),F();break}case"tool-input-start":{let N=G.message.parts.filter(N0);if(G.partialToolCalls[H.toolCallId]={text:"",toolName:H.toolName,index:N.length,dynamic:H.dynamic},H.dynamic)P({toolCallId:H.toolCallId,toolName:H.toolName,state:"input-streaming",input:void 0,providerExecuted:H.providerExecuted});else O({toolCallId:H.toolCallId,toolName:H.toolName,state:"input-streaming",input:void 0,providerExecuted:H.providerExecuted});F();break}case"tool-input-delta":{let N=G.partialToolCalls[H.toolCallId];N.text+=H.inputTextDelta;let{value:b}=await k$(N.text);if(N.dynamic)P({toolCallId:H.toolCallId,toolName:N.toolName,state:"input-streaming",input:b});else O({toolCallId:H.toolCallId,toolName:N.toolName,state:"input-streaming",input:b});F();break}case"tool-input-available":{if(H.dynamic)P({toolCallId:H.toolCallId,toolName:H.toolName,state:"input-available",input:H.input,providerExecuted:H.providerExecuted,providerMetadata:H.providerMetadata});else O({toolCallId:H.toolCallId,toolName:H.toolName,state:"input-available",input:H.input,providerExecuted:H.providerExecuted,providerMetadata:H.providerMetadata});if(F(),J&&!H.providerExecuted)await J({toolCall:H});break}case"tool-input-error":{if(H.dynamic)P({toolCallId:H.toolCallId,toolName:H.toolName,state:"output-error",input:H.input,errorText:H.errorText,providerExecuted:H.providerExecuted,providerMetadata:H.providerMetadata});else O({toolCallId:H.toolCallId,toolName:H.toolName,state:"output-error",input:void 0,rawInput:H.input,errorText:H.errorText,providerExecuted:H.providerExecuted,providerMetadata:H.providerMetadata});F();break}case"tool-output-available":{if(H.dynamic){let N=L(H.toolCallId);P({toolCallId:H.toolCallId,toolName:N.toolName,state:"output-available",input:N.input,output:H.output,preliminary:H.preliminary})}else{let N=V(H.toolCallId);O({toolCallId:H.toolCallId,toolName:Y1(N),state:"output-available",input:N.input,output:H.output,providerExecuted:H.providerExecuted,preliminary:H.preliminary})}F();break}case"tool-output-error":{if(H.dynamic){let N=L(H.toolCallId);P({toolCallId:H.toolCallId,toolName:N.toolName,state:"output-error",input:N.input,errorText:H.errorText,providerExecuted:H.providerExecuted})}else{let N=V(H.toolCallId);O({toolCallId:H.toolCallId,toolName:Y1(N),state:"output-error",input:N.input,rawInput:N.rawInput,errorText:H.errorText,providerExecuted:H.providerExecuted})}F();break}case"start-step":{G.message.parts.push({type:"step-start"});break}case"finish-step":{G.activeTextParts={},G.activeReasoningParts={};break}case"start":{if(H.messageId!=null)G.message.id=H.messageId;if(await y(H.messageMetadata),H.messageId!=null||H.messageMetadata!=null)F();break}case"finish":{if(await y(H.messageMetadata),H.messageMetadata!=null)F();break}case"message-metadata":{if(await y(H.messageMetadata),H.messageMetadata!=null)F();break}case"error":{Y==null||Y(Error(H.errorText));break}default:if(k4(H)){if((Q==null?void 0:Q[H.type])!=null)await mZ({value:H.data,schema:Q[H.type]});let N=H;if(N.transient){W==null||W(N);break}let b=N.id!=null?G.message.parts.find((R)=>N.type===R.type&&N.id===R.id):void 0;if(b!=null)b.data=N.data;else G.message.parts.push(N);W==null||W(N),F()}}K.enqueue(H)})}}))}function GJ({messageId:Z,originalMessages:$=[],onFinish:Q,onError:X,stream:Y}){let J=$==null?void 0:$[$.length-1];if((J==null?void 0:J.role)!=="assistant")J=void 0;else Z=J.id;let W=!1,H=Y.pipeThrough(new TransformStream({transform(q,B){if(q.type==="start"){let j=q;if(j.messageId==null&&Z!=null)j.messageId=Z}if(q.type==="abort")W=!0;B.enqueue(q)}}));if(Q==null)return H;let K=g$({lastMessage:J?structuredClone(J):void 0,messageId:Z!=null?Z:""}),G=async(q)=>{await q({state:K,write:()=>{}})},F=!1,U=async()=>{if(F||!Q)return;F=!0;let q=K.message.id===(J==null?void 0:J.id);await Q({isAborted:W,isContinuation:q,responseMessage:K.message,messages:[...q?$.slice(0,-1):$,K.message]})};return m$({stream:H,runUpdateMessageJob:G,onError:X}).pipeThrough(new TransformStream({transform(q,B){B.enqueue(q)},async cancel(){await U()},async flush(){await U()}}))}function m4({response:Z,status:$,statusText:Q,headers:X,stream:Y,consumeSseStream:J}){let W=Y.pipeThrough(new zJ);if(J){let[H,K]=W.tee();W=H,J({stream:K})}JJ({response:Z,status:$,statusText:Q,headers:Object.fromEntries(p0(X,HJ).entries()),stream:W.pipeThrough(new TextEncoderStream)})}function dZ(Z){let $=Z.pipeThrough(new TransformStream);return $[Symbol.asyncIterator]=function(){let Q=this.getReader(),X=!1;async function Y(J){var W;X=!0;try{if(J)await((W=Q.cancel)==null?void 0:W.call(Q))}finally{try{Q.releaseLock()}catch(H){}}}return{async next(){if(X)return{done:!0,value:void 0};let{done:J,value:W}=await Q.read();if(J)return await Y(!0),{done:!0,value:void 0};return{done:!1,value:W}},async return(){return await Y(!0),{done:!0,value:void 0}},async throw(J){throw await Y(!0),J}}},$}async function j1({stream:Z,onError:$}){let Q=Z.getReader();try{while(!0){let{done:X}=await Q.read();if(X)break}}catch(X){$==null||$(X)}finally{Q.releaseLock()}}function h9(){let Z,$;return{promise:new Promise((X,Y)=>{Z=X,$=Y}),resolve:Z,reject:$}}function KJ(){let Z=[],$=null,Q=!1,X=h9(),Y=()=>{Q=!0,X.resolve(),Z.forEach((W)=>W.cancel()),Z=[],$==null||$.close()},J=async()=>{if(Q&&Z.length===0){$==null||$.close();return}if(Z.length===0)return X=h9(),await X.promise,J();try{let{value:W,done:H}=await Z[0].read();if(H){if(Z.shift(),Z.length>0)await J();else if(Q)$==null||$.close()}else $==null||$.enqueue(W)}catch(W){$==null||$.error(W),Z.shift(),Y()}};return{stream:new ReadableStream({start(W){$=W},pull:J,async cancel(){for(let W of Z)await W.cancel();Z=[],Q=!0}}),addStream:(W)=>{if(Q)throw Error("Cannot add inner stream: outer stream is closed");Z.push(W.getReader()),X.resolve()},close:()=>{if(Q=!0,X.resolve(),Z.length===0)$==null||$.close()},terminate:Y}}var TZ=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){if(this._promise)return this._promise;return this._promise=new Promise((Z,$)=>{if(this.status.type==="resolved")Z(this.status.value);else if(this.status.type==="rejected")$(this.status.error);this._resolve=Z,this._reject=$}),this._promise}resolve(Z){var $;if(this.status={type:"resolved",value:Z},this._promise)($=this._resolve)==null||$.call(this,Z)}reject(Z){var $;if(this.status={type:"rejected",error:Z},this._promise)($=this._reject)==null||$.call(this,Z)}};function qJ(){var Z,$;return($=(Z=globalThis==null?void 0:globalThis.performance)==null?void 0:Z.now())!=null?$:Date.now()}function d4({tools:Z,generatorStream:$,tracer:Q,telemetry:X,system:Y,messages:J,abortSignal:W,repairToolCall:H,experimental_context:K}){let G=null,F=new ReadableStream({start(O){G=O}}),U=new Set,q=new Map,B=!1,j=void 0;function V(){if(B&&U.size===0){if(j!=null)G.enqueue(j);G.close()}}let L=new TransformStream({async transform(O,P){let y=O.type;switch(y){case"stream-start":case"text-start":case"text-delta":case"text-end":case"reasoning-start":case"reasoning-delta":case"reasoning-end":case"tool-input-start":case"tool-input-delta":case"tool-input-end":case"source":case"response-metadata":case"error":case"raw":{P.enqueue(O);break}case"file":{P.enqueue({type:"file",file:new M4({data:O.data,mediaType:O.mediaType})});break}case"finish":{j={type:"finish",finishReason:O.finishReason,usage:O.usage,providerMetadata:O.providerMetadata};break}case"tool-call":{try{let N=await e5({toolCall:O,tools:Z,repairToolCall:H,system:Y,messages:J});if(P.enqueue(N),N.invalid){G.enqueue({type:"tool-error",toolCallId:N.toolCallId,toolName:N.toolName,input:N.input,error:sZ(N.error),dynamic:!0});break}let b=Z[N.toolName];if(q.set(N.toolCallId,N.input),b.onInputAvailable!=null)await b.onInputAvailable({input:N.input,toolCallId:N.toolCallId,messages:J,abortSignal:W,experimental_context:K});if(b.execute!=null&&N.providerExecuted!==!0){let R=Y0();U.add(R),UZ({name:"ai.toolCall",attributes:m({telemetry:X,attributes:{...FZ({operationId:"ai.toolCall",telemetry:X}),"ai.toolCall.name":N.toolName,"ai.toolCall.id":N.toolCallId,"ai.toolCall.args":{output:()=>JSON.stringify(N.input)}}}),tracer:Q,fn:async(D)=>{let A;try{let S=W1({execute:b.execute.bind(b),input:N.input,options:{toolCallId:N.toolCallId,messages:J,abortSignal:W,experimental_context:K}});for await(let v of S)if(G.enqueue({...N,type:"tool-result",output:v.output,...v.type==="preliminary"&&{preliminary:!0}}),v.type==="final")A=v.output}catch(S){_$(D,S),G.enqueue({...N,type:"tool-error",error:S}),U.delete(R),V();return}U.delete(R),V();try{D.setAttributes(m({telemetry:X,attributes:{"ai.toolCall.result":{output:()=>JSON.stringify(A)}}}))}catch(S){}}})}}catch(N){G.enqueue({type:"error",error:N})}break}case"tool-result":{let N=O.toolName;if(O.isError)G.enqueue({type:"tool-error",toolCallId:O.toolCallId,toolName:N,input:q.get(O.toolCallId),providerExecuted:O.providerExecuted,error:O.result});else P.enqueue({type:"tool-result",toolCallId:O.toolCallId,toolName:N,input:q.get(O.toolCallId),output:O.result,providerExecuted:O.providerExecuted});break}default:throw Error(`Unhandled chunk type: ${y}`)}},flush(){B=!0,V()}});return new ReadableStream({async start(O){return Promise.all([$.pipeThrough(L).pipeTo(new WritableStream({write(P){O.enqueue(P)},close(){}})),F.pipeTo(new WritableStream({write(P){O.enqueue(P)},close(){O.close()}}))])}})}var u4=uZ({prefix:"aitxt",size:24});function c4({model:Z,tools:$,toolChoice:Q,system:X,prompt:Y,messages:J,maxRetries:W,abortSignal:H,headers:K,stopWhen:G=$J(1),experimental_output:F,experimental_telemetry:U,prepareStep:q,providerOptions:B,experimental_activeTools:j,activeTools:V=j,experimental_repairToolCall:L,experimental_transform:O,experimental_download:P,includeRawChunks:y=!1,onChunk:N,onError:b=({error:h})=>{console.error(h)},onFinish:R,onAbort:D,onStepFinish:A,experimental_context:S,_internal:{now:v=qJ,generateId:n=u4,currentDate:r=()=>new Date}={},...u}){return new p4({model:O0(Z),telemetry:U,headers:K,settings:u,maxRetries:W,abortSignal:H,system:X,prompt:Y,messages:J,tools:$,toolChoice:Q,transforms:J1(O),activeTools:V,repairToolCall:L,stopConditions:J1(G),output:F,providerOptions:B,prepareStep:q,includeRawChunks:y,onChunk:N,onError:b,onFinish:R,onAbort:D,onStepFinish:A,now:v,currentDate:r,generateId:n,experimental_context:S,download:P})}function i4(Z){if(!Z)return new TransformStream({transform(W,H){H.enqueue({part:W,partialOutput:void 0})}});let $=void 0,Q="",X="",Y="";function J({controller:W,partialOutput:H=void 0}){W.enqueue({part:{type:"text-delta",id:$,text:X},partialOutput:H}),X=""}return new TransformStream({async transform(W,H){if(W.type==="finish-step"&&X.length>0)J({controller:H});if(W.type!=="text-delta"&&W.type!=="text-start"&&W.type!=="text-end"){H.enqueue({part:W,partialOutput:void 0});return}if($==null)$=W.id;else if(W.id!==$){H.enqueue({part:W,partialOutput:void 0});return}if(W.type==="text-start"){H.enqueue({part:W,partialOutput:void 0});return}if(W.type==="text-end"){if(X.length>0)J({controller:H});H.enqueue({part:W,partialOutput:void 0});return}Q+=W.text,X+=W.text;let K=await Z.parsePartial({text:Q});if(K!=null){let G=JSON.stringify(K.partial);if(G!==Y)J({controller:H,partialOutput:K.partial}),Y=G}}})}var p4=class{constructor({model:Z,telemetry:$,headers:Q,settings:X,maxRetries:Y,abortSignal:J,system:W,prompt:H,messages:K,tools:G,toolChoice:F,transforms:U,activeTools:q,repairToolCall:B,stopConditions:j,output:V,providerOptions:L,prepareStep:O,includeRawChunks:P,now:y,currentDate:N,generateId:b,onChunk:R,onError:D,onFinish:A,onAbort:S,onStepFinish:v,experimental_context:n,download:r}){this._totalUsage=new TZ,this._finishReason=new TZ,this._steps=new TZ,this.output=V,this.includeRawChunks=P,this.tools=G;let u,h=[],$Z=[],t=void 0,KZ=void 0,jZ={},IZ=[],s=[],fZ,zZ={},QZ={},e=new TransformStream({async transform(_,C){var f,E,ZZ,wZ;C.enqueue(_);let{part:w}=_;if(w.type==="text-delta"||w.type==="reasoning-delta"||w.type==="source"||w.type==="tool-call"||w.type==="tool-result"||w.type==="tool-input-start"||w.type==="tool-input-delta"||w.type==="raw")await(R==null?void 0:R({chunk:w}));if(w.type==="error")await D({error:B1(w.error)});if(w.type==="text-start")zZ[w.id]={type:"text",text:"",providerMetadata:w.providerMetadata},h.push(zZ[w.id]);if(w.type==="text-delta"){let x=zZ[w.id];if(x==null){C.enqueue({part:{type:"error",error:`text part ${w.id} not found`},partialOutput:void 0});return}x.text+=w.text,x.providerMetadata=(f=w.providerMetadata)!=null?f:x.providerMetadata}if(w.type==="text-end"){let x=zZ[w.id];if(x==null){C.enqueue({part:{type:"error",error:`text part ${w.id} not found`},partialOutput:void 0});return}x.providerMetadata=(E=w.providerMetadata)!=null?E:x.providerMetadata,delete zZ[w.id]}if(w.type==="reasoning-start")QZ[w.id]={type:"reasoning",text:"",providerMetadata:w.providerMetadata},h.push(QZ[w.id]);if(w.type==="reasoning-delta"){let x=QZ[w.id];if(x==null){C.enqueue({part:{type:"error",error:`reasoning part ${w.id} not found`},partialOutput:void 0});return}x.text+=w.text,x.providerMetadata=(ZZ=w.providerMetadata)!=null?ZZ:x.providerMetadata}if(w.type==="reasoning-end"){let x=QZ[w.id];if(x==null){C.enqueue({part:{type:"error",error:`reasoning part ${w.id} not found`},partialOutput:void 0});return}x.providerMetadata=(wZ=w.providerMetadata)!=null?wZ:x.providerMetadata,delete QZ[w.id]}if(w.type==="file")h.push({type:"file",file:w.file});if(w.type==="source")h.push(w);if(w.type==="tool-call")h.push(w);if(w.type==="tool-result"&&!w.preliminary)h.push(w);if(w.type==="tool-error")h.push(w);if(w.type==="start-step")jZ=w.request,IZ=w.warnings;if(w.type==="finish-step"){let x=y$({content:h,tools:G}),bZ=new ZJ({content:h,finishReason:w.finishReason,usage:w.usage,warnings:IZ,request:jZ,response:{...w.response,messages:[...$Z,...x]},providerMetadata:w.providerMetadata});await(v==null?void 0:v(bZ)),H0(IZ),s.push(bZ),h=[],QZ={},zZ={},$Z.push(...x),u.resolve()}if(w.type==="finish")KZ=w.totalUsage,t=w.finishReason},async flush(_){try{if(s.length===0){let ZZ=new ez({message:"No output generated. Check the stream for errors."});i._finishReason.reject(ZZ),i._totalUsage.reject(ZZ),i._steps.reject(ZZ);return}let C=t!=null?t:"unknown",f=KZ!=null?KZ:{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0};i._finishReason.resolve(C),i._totalUsage.resolve(f),i._steps.resolve(s);let E=s[s.length-1];await(A==null?void 0:A({finishReason:C,totalUsage:f,usage:E.usage,content:E.content,text:E.text,reasoningText:E.reasoningText,reasoning:E.reasoning,files:E.files,sources:E.sources,toolCalls:E.toolCalls,staticToolCalls:E.staticToolCalls,dynamicToolCalls:E.dynamicToolCalls,toolResults:E.toolResults,staticToolResults:E.staticToolResults,dynamicToolResults:E.dynamicToolResults,request:E.request,response:E.response,warnings:E.warnings,providerMetadata:E.providerMetadata,steps:s})),fZ.setAttributes(m({telemetry:$,attributes:{"ai.response.finishReason":C,"ai.response.text":{output:()=>E.text},"ai.response.toolCalls":{output:()=>{var ZZ;return((ZZ=E.toolCalls)==null?void 0:ZZ.length)?JSON.stringify(E.toolCalls):void 0}},"ai.response.providerMetadata":JSON.stringify(E.providerMetadata),"ai.usage.inputTokens":f.inputTokens,"ai.usage.outputTokens":f.outputTokens,"ai.usage.totalTokens":f.totalTokens,"ai.usage.reasoningTokens":f.reasoningTokens,"ai.usage.cachedInputTokens":f.cachedInputTokens}}))}catch(C){_.error(C)}finally{fZ.end()}}}),WZ=KJ();this.addStream=WZ.addStream,this.closeStream=WZ.close;let p=WZ.stream.getReader(),NZ=new ReadableStream({async start(_){_.enqueue({type:"start"})},async pull(_){function C(){S==null||S({steps:s}),_.enqueue({type:"abort"}),_.close()}try{let{done:f,value:E}=await p.read();if(f){_.close();return}if(J==null?void 0:J.aborted){C();return}_.enqueue(E)}catch(f){if(H1(f)&&(J==null?void 0:J.aborted))C();else _.error(f)}},cancel(_){return WZ.stream.cancel(_)}});for(let _ of U)NZ=NZ.pipeThrough(_({tools:G,stopStream(){WZ.terminate()}}));this.baseStream=NZ.pipeThrough(i4(V)).pipeThrough(e);let{maxRetries:OZ,retry:VZ}=cZ({maxRetries:Y,abortSignal:J}),c=L0($),a=J0(X),LZ=D0({model:Z,telemetry:$,headers:Q,settings:{...a,maxRetries:OZ}}),i=this;UZ({name:"ai.streamText",attributes:m({telemetry:$,attributes:{...FZ({operationId:"ai.streamText",telemetry:$}),...LZ,"ai.prompt":{input:()=>JSON.stringify({system:W,prompt:H,messages:K})}}}),tracer:c,endWhenDone:!1,fn:async(_)=>{fZ=_;async function C({currentStep:f,responseMessages:E,usage:ZZ}){var wZ,w,x,bZ,g;let SZ=i.includeRawChunks;u=new TZ;let w0=await q1({system:W,prompt:H,messages:K}),iZ=[...w0.messages,...E],AZ=await(O==null?void 0:O({model:Z,steps:s,stepNumber:s.length,messages:iZ})),_Z=O0((wZ=AZ==null?void 0:AZ.model)!=null?wZ:Z),A0=await K1({prompt:{system:(w=AZ==null?void 0:AZ.system)!=null?w:w0.system,messages:(x=AZ==null?void 0:AZ.messages)!=null?x:iZ},supportedUrls:await _Z.supportedUrls,download:r}),{toolChoice:W0,tools:G0}=d5({tools:G,toolChoice:(bZ=AZ==null?void 0:AZ.toolChoice)!=null?bZ:F,activeTools:(g=AZ==null?void 0:AZ.activeTools)!=null?g:q}),{result:{stream:l0,response:XZ,request:xZ},doStreamSpan:kZ,startTimestampMs:d$}=await VZ(()=>UZ({name:"ai.streamText.doStream",attributes:m({telemetry:$,attributes:{...FZ({operationId:"ai.streamText.doStream",telemetry:$}),...LZ,"ai.model.provider":_Z.provider,"ai.model.id":_Z.modelId,"ai.prompt.messages":{input:()=>F1(A0)},"ai.prompt.tools":{input:()=>G0==null?void 0:G0.map((M)=>JSON.stringify(M))},"ai.prompt.toolChoice":{input:()=>W0!=null?JSON.stringify(W0):void 0},"gen_ai.system":_Z.provider,"gen_ai.request.model":_Z.modelId,"gen_ai.request.frequency_penalty":a.frequencyPenalty,"gen_ai.request.max_tokens":a.maxOutputTokens,"gen_ai.request.presence_penalty":a.presencePenalty,"gen_ai.request.stop_sequences":a.stopSequences,"gen_ai.request.temperature":a.temperature,"gen_ai.request.top_k":a.topK,"gen_ai.request.top_p":a.topP}}),tracer:c,endWhenDone:!1,fn:async(M)=>{return{startTimestampMs:y(),doStreamSpan:M,result:await _Z.doStream({...a,tools:G0,toolChoice:W0,responseFormat:V==null?void 0:V.responseFormat,prompt:A0,providerOptions:L,abortSignal:J,headers:Q,includeRawChunks:SZ})}}})),wJ=d4({tools:G,generatorStream:l0,tracer:c,telemetry:$,system:W,messages:iZ,repairToolCall:B,abortSignal:J,experimental_context:n}),AJ=xZ!=null?xZ:{},n0=[],N1=[],O1,V1={},K0="unknown",RZ={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0},D1,u$=!0,yZ={id:b(),timestamp:N(),modelId:Z.modelId},c$="";i.addStream(wJ.pipeThrough(new TransformStream({async transform(M,HZ){var E0,P0,s0,hZ;if(M.type==="stream-start"){O1=M.warnings;return}if(u$){let DZ=y()-d$;u$=!1,kZ.addEvent("ai.stream.firstChunk",{"ai.response.msToFirstChunk":DZ}),kZ.setAttributes({"ai.response.msToFirstChunk":DZ}),HZ.enqueue({type:"start-step",request:AJ,warnings:O1!=null?O1:[]})}let i$=M.type;switch(i$){case"text-start":case"text-end":{HZ.enqueue(M);break}case"text-delta":{if(M.delta.length>0)HZ.enqueue({type:"text-delta",id:M.id,text:M.delta,providerMetadata:M.providerMetadata}),c$+=M.delta;break}case"reasoning-start":case"reasoning-end":{HZ.enqueue(M);break}case"reasoning-delta":{HZ.enqueue({type:"reasoning-delta",id:M.id,text:M.delta,providerMetadata:M.providerMetadata});break}case"tool-call":{HZ.enqueue(M),n0.push(M);break}case"tool-result":{if(HZ.enqueue(M),!M.preliminary)N1.push(M);break}case"tool-error":{HZ.enqueue(M),N1.push(M);break}case"response-metadata":{yZ={id:(E0=M.id)!=null?E0:yZ.id,timestamp:(P0=M.timestamp)!=null?P0:yZ.timestamp,modelId:(s0=M.modelId)!=null?s0:yZ.modelId};break}case"finish":{RZ=M.usage,K0=M.finishReason,D1=M.providerMetadata;let DZ=y()-d$;kZ.addEvent("ai.stream.finish"),kZ.setAttributes({"ai.response.msToFinish":DZ,"ai.response.avgOutputTokensPerSecond":1000*((hZ=RZ.outputTokens)!=null?hZ:0)/DZ});break}case"file":{HZ.enqueue(M);break}case"source":{HZ.enqueue(M);break}case"tool-input-start":{V1[M.id]=M.toolName;let DZ=G==null?void 0:G[M.toolName];if((DZ==null?void 0:DZ.onInputStart)!=null)await DZ.onInputStart({toolCallId:M.id,messages:iZ,abortSignal:J,experimental_context:n});HZ.enqueue({...M,dynamic:(DZ==null?void 0:DZ.type)==="dynamic"});break}case"tool-input-end":{delete V1[M.id],HZ.enqueue(M);break}case"tool-input-delta":{let DZ=V1[M.id],L1=G==null?void 0:G[DZ];if((L1==null?void 0:L1.onInputDelta)!=null)await L1.onInputDelta({inputTextDelta:M.delta,toolCallId:M.id,messages:iZ,abortSignal:J,experimental_context:n});HZ.enqueue(M);break}case"error":{HZ.enqueue(M),K0="error";break}case"raw":{if(SZ)HZ.enqueue(M);break}default:throw Error(`Unknown chunk type: ${i$}`)}},async flush(M){let HZ=n0.length>0?JSON.stringify(n0):void 0;try{kZ.setAttributes(m({telemetry:$,attributes:{"ai.response.finishReason":K0,"ai.response.text":{output:()=>c$},"ai.response.toolCalls":{output:()=>HZ},"ai.response.id":yZ.id,"ai.response.model":yZ.modelId,"ai.response.timestamp":yZ.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(D1),"ai.usage.inputTokens":RZ.inputTokens,"ai.usage.outputTokens":RZ.outputTokens,"ai.usage.totalTokens":RZ.totalTokens,"ai.usage.reasoningTokens":RZ.reasoningTokens,"ai.usage.cachedInputTokens":RZ.cachedInputTokens,"gen_ai.response.finish_reasons":[K0],"gen_ai.response.id":yZ.id,"gen_ai.response.model":yZ.modelId,"gen_ai.usage.input_tokens":RZ.inputTokens,"gen_ai.usage.output_tokens":RZ.outputTokens}}))}catch(hZ){}finally{kZ.end()}M.enqueue({type:"finish-step",finishReason:K0,usage:RZ,providerMetadata:D1,response:{...yZ,headers:XZ==null?void 0:XZ.headers}});let E0=a5(ZZ,RZ);await u.promise;let P0=n0.filter((hZ)=>hZ.providerExecuted!==!0),s0=N1.filter((hZ)=>hZ.providerExecuted!==!0);if(P0.length>0&&s0.length===P0.length&&!await QJ({stopConditions:j,steps:s})){E.push(...y$({content:s[s.length-1].content,tools:G}));try{await C({currentStep:f+1,responseMessages:E,usage:E0})}catch(hZ){M.enqueue({type:"error",error:hZ}),i.closeStream()}}else M.enqueue({type:"finish",finishReason:K0,totalUsage:E0}),i.closeStream()}})))}await C({currentStep:0,responseMessages:[],usage:{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0}})}}).catch((_)=>{i.addStream(new ReadableStream({start(C){C.enqueue({type:"error",error:_}),C.close()}})),i.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then((Z)=>Z[Z.length-1])}get content(){return this.finalStep.then((Z)=>Z.content)}get warnings(){return this.finalStep.then((Z)=>Z.warnings)}get providerMetadata(){return this.finalStep.then((Z)=>Z.providerMetadata)}get text(){return this.finalStep.then((Z)=>Z.text)}get reasoningText(){return this.finalStep.then((Z)=>Z.reasoningText)}get reasoning(){return this.finalStep.then((Z)=>Z.reasoning)}get sources(){return this.finalStep.then((Z)=>Z.sources)}get files(){return this.finalStep.then((Z)=>Z.files)}get toolCalls(){return this.finalStep.then((Z)=>Z.toolCalls)}get staticToolCalls(){return this.finalStep.then((Z)=>Z.staticToolCalls)}get dynamicToolCalls(){return this.finalStep.then((Z)=>Z.dynamicToolCalls)}get toolResults(){return this.finalStep.then((Z)=>Z.toolResults)}get staticToolResults(){return this.finalStep.then((Z)=>Z.staticToolResults)}get dynamicToolResults(){return this.finalStep.then((Z)=>Z.dynamicToolResults)}get usage(){return this.finalStep.then((Z)=>Z.usage)}get request(){return this.finalStep.then((Z)=>Z.request)}get response(){return this.finalStep.then((Z)=>Z.response)}get totalUsage(){return this.consumeStream(),this._totalUsage.promise}get finishReason(){return this.consumeStream(),this._finishReason.promise}teeStream(){let[Z,$]=this.baseStream.tee();return this.baseStream=$,Z}get textStream(){return dZ(this.teeStream().pipeThrough(new TransformStream({transform({part:Z},$){if(Z.type==="text-delta")$.enqueue(Z.text)}})))}get fullStream(){return dZ(this.teeStream().pipeThrough(new TransformStream({transform({part:Z},$){$.enqueue(Z)}})))}async consumeStream(Z){var $;try{await j1({stream:this.fullStream,onError:Z==null?void 0:Z.onError})}catch(Q){($=Z==null?void 0:Z.onError)==null||$.call(Z,Q)}}get experimental_partialOutputStream(){if(this.output==null)throw new n9;return dZ(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:Z},$){if(Z!=null)$.enqueue(Z)}})))}toUIMessageStream({originalMessages:Z,generateMessageId:$,onFinish:Q,messageMetadata:X,sendReasoning:Y=!0,sendSources:J=!1,sendStart:W=!0,sendFinish:H=!0,onError:K=nZ}={}){let G=$!=null?x4({originalMessages:Z,responseMessageId:$}):void 0,F={},U=(B)=>{var j,V;let L=F[B];return((V=(j=this.tools)==null?void 0:j[L])==null?void 0:V.type)==="dynamic"?!0:void 0},q=this.fullStream.pipeThrough(new TransformStream({transform:async(B,j)=>{let V=X==null?void 0:X({part:B}),L=B.type;switch(L){case"text-start":{j.enqueue({type:"text-start",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"text-delta":{j.enqueue({type:"text-delta",id:B.id,delta:B.text,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"text-end":{j.enqueue({type:"text-end",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"reasoning-start":{j.enqueue({type:"reasoning-start",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"reasoning-delta":{if(Y)j.enqueue({type:"reasoning-delta",id:B.id,delta:B.text,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"reasoning-end":{j.enqueue({type:"reasoning-end",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"file":{j.enqueue({type:"file",mediaType:B.file.mediaType,url:`data:${B.file.mediaType};base64,${B.file.base64}`});break}case"source":{if(J&&B.sourceType==="url")j.enqueue({type:"source-url",sourceId:B.id,url:B.url,title:B.title,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});if(J&&B.sourceType==="document")j.enqueue({type:"source-document",sourceId:B.id,mediaType:B.mediaType,title:B.title,filename:B.filename,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"tool-input-start":{F[B.id]=B.toolName;let O=U(B.id);j.enqueue({type:"tool-input-start",toolCallId:B.id,toolName:B.toolName,...B.providerExecuted!=null?{providerExecuted:B.providerExecuted}:{},...O!=null?{dynamic:O}:{}});break}case"tool-input-delta":{j.enqueue({type:"tool-input-delta",toolCallId:B.id,inputTextDelta:B.delta});break}case"tool-call":{F[B.toolCallId]=B.toolName;let O=U(B.toolCallId);if(B.invalid)j.enqueue({type:"tool-input-error",toolCallId:B.toolCallId,toolName:B.toolName,input:B.input,...B.providerExecuted!=null?{providerExecuted:B.providerExecuted}:{},...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{},...O!=null?{dynamic:O}:{},errorText:K(B.error)});else j.enqueue({type:"tool-input-available",toolCallId:B.toolCallId,toolName:B.toolName,input:B.input,...B.providerExecuted!=null?{providerExecuted:B.providerExecuted}:{},...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{},...O!=null?{dynamic:O}:{}});break}case"tool-result":{let O=U(B.toolCallId);j.enqueue({type:"tool-output-available",toolCallId:B.toolCallId,output:B.output,...B.providerExecuted!=null?{providerExecuted:B.providerExecuted}:{},...B.preliminary!=null?{preliminary:B.preliminary}:{},...O!=null?{dynamic:O}:{}});break}case"tool-error":{let O=U(B.toolCallId);j.enqueue({type:"tool-output-error",toolCallId:B.toolCallId,errorText:K(B.error),...B.providerExecuted!=null?{providerExecuted:B.providerExecuted}:{},...O!=null?{dynamic:O}:{}});break}case"error":{j.enqueue({type:"error",errorText:K(B.error)});break}case"start-step":{j.enqueue({type:"start-step"});break}case"finish-step":{j.enqueue({type:"finish-step"});break}case"start":{if(W)j.enqueue({type:"start",...V!=null?{messageMetadata:V}:{},...G!=null?{messageId:G}:{}});break}case"finish":{if(H)j.enqueue({type:"finish",...V!=null?{messageMetadata:V}:{}});break}case"abort":{j.enqueue(B);break}case"tool-input-end":break;case"raw":break;default:throw Error(`Unknown chunk type: ${L}`)}if(V!=null&&L!=="start"&&L!=="finish")j.enqueue({type:"message-metadata",messageMetadata:V})}}));return dZ(GJ({stream:q,messageId:G!=null?G:$==null?void 0:$(),originalMessages:Z,onFinish:Q,onError:K}))}pipeUIMessageStreamToResponse(Z,{originalMessages:$,generateMessageId:Q,onFinish:X,messageMetadata:Y,sendReasoning:J,sendSources:W,sendFinish:H,sendStart:K,onError:G,...F}={}){m4({response:Z,stream:this.toUIMessageStream({originalMessages:$,generateMessageId:Q,onFinish:X,messageMetadata:Y,sendReasoning:J,sendSources:W,sendFinish:H,sendStart:K,onError:G}),...F})}pipeTextStreamToResponse(Z,$){YJ({response:Z,textStream:this.textStream,...$})}toUIMessageStreamResponse({originalMessages:Z,generateMessageId:$,onFinish:Q,messageMetadata:X,sendReasoning:Y,sendSources:J,sendFinish:W,sendStart:H,onError:K,...G}={}){return _4({stream:this.toUIMessageStream({originalMessages:Z,generateMessageId:$,onFinish:Q,messageMetadata:X,sendReasoning:Y,sendSources:J,sendFinish:W,sendStart:H,onError:K}),...G})}toTextStreamResponse(Z){return XJ({textStream:this.textStream,...Z})}};function BJ(Z,$){let Q=[];if($==null?void 0:$.ignoreIncompleteToolCalls)Z=Z.map((Y)=>({...Y,parts:Y.parts.filter((J)=>!d0(J)||J.state!=="input-streaming"&&J.state!=="input-available")}));for(let Y of Z)switch(Y.role){case"system":{let J=Y.parts.filter((H)=>H.type==="text"),W=J.reduce((H,K)=>{if(K.providerMetadata!=null)return{...H,...K.providerMetadata};return H},{});Q.push({role:"system",content:J.map((H)=>H.text).join(""),...Object.keys(W).length>0?{providerOptions:W}:{}});break}case"user":{Q.push({role:"user",content:Y.parts.map((J)=>{var W;if(R$(J))return{type:"text",text:J.text,...J.providerMetadata!=null?{providerOptions:J.providerMetadata}:{}};if(T$(J))return{type:"file",mediaType:J.mediaType,filename:J.filename,data:J.url,...J.providerMetadata!=null?{providerOptions:J.providerMetadata}:{}};if(f$(J))return(W=$==null?void 0:$.convertDataPart)==null?void 0:W.call($,J)}).filter((J)=>J!=null)});break}case"assistant":{if(Y.parts!=null){let J=function(){var H,K,G;if(W.length===0)return;let F=[];for(let q of W)if(R$(q))F.push({type:"text",text:q.text,...q.providerMetadata!=null?{providerOptions:q.providerMetadata}:{}});else if(T$(q))F.push({type:"file",mediaType:q.mediaType,filename:q.filename,data:q.url});else if(k9(q))F.push({type:"reasoning",text:q.text,providerOptions:q.providerMetadata});else if(h$(q)){let B=q.toolName;if(q.state!=="input-streaming")F.push({type:"tool-call",toolCallId:q.toolCallId,toolName:B,input:q.input,...q.callProviderMetadata!=null?{providerOptions:q.callProviderMetadata}:{}})}else if(N0(q)){let B=Y1(q);if(q.state!=="input-streaming"){if(F.push({type:"tool-call",toolCallId:q.toolCallId,toolName:B,input:q.state==="output-error"?(H=q.input)!=null?H:q.rawInput:q.input,providerExecuted:q.providerExecuted,...q.callProviderMetadata!=null?{providerOptions:q.callProviderMetadata}:{}}),q.providerExecuted===!0&&(q.state==="output-available"||q.state==="output-error"))F.push({type:"tool-result",toolCallId:q.toolCallId,toolName:B,output:k0({output:q.state==="output-error"?q.errorText:q.output,tool:(K=$==null?void 0:$.tools)==null?void 0:K[B],errorMode:q.state==="output-error"?"json":"none"})})}}else if(f$(q)){let B=(G=$==null?void 0:$.convertDataPart)==null?void 0:G.call($,q);if(B!=null)F.push(B)}else throw Error(`Unsupported part: ${q}`);Q.push({role:"assistant",content:F});let U=W.filter((q)=>N0(q)&&q.providerExecuted!==!0||q.type==="dynamic-tool");if(U.length>0)Q.push({role:"tool",content:U.map((q)=>{var B;switch(q.state){case"output-error":case"output-available":{let j=g4(q);return{type:"tool-result",toolCallId:q.toolCallId,toolName:j,output:k0({output:q.state==="output-error"?q.errorText:q.output,tool:(B=$==null?void 0:$.tools)==null?void 0:B[j],errorMode:q.state==="output-error"?"text":"none"})}}default:return null}}).filter((q)=>q!=null)});W=[]};var X=J;let W=[];for(let H of Y.parts)if(R$(H)||k9(H)||T$(H)||d0(H)||f$(H))W.push(H);else if(H.type==="step-start")J();J();break}break}default:{let J=Y.role;throw new W4({originalMessage:Y,message:`Unsupported role: ${J}`})}}return Q}var AK=BJ,EK=class{constructor(Z){this.settings=Z}get tools(){return this.settings.tools}async generate(Z){return b4({...this.settings,...Z})}stream(Z){return c4({...this.settings,...Z})}respond(Z){return this.stream({prompt:BJ(Z.messages)}).toUIMessageStreamResponse()}};async function IK({model:Z,value:$,providerOptions:Q,maxRetries:X,abortSignal:Y,headers:J,experimental_telemetry:W}){let H=v5(Z),{maxRetries:K,retry:G}=cZ({maxRetries:X,abortSignal:Y}),F=o(J!=null?J:{},`ai/${CZ}`),U=D0({model:H,telemetry:W,headers:F,settings:{maxRetries:K}}),q=L0(W);return UZ({name:"ai.embed",attributes:m({telemetry:W,attributes:{...FZ({operationId:"ai.embed",telemetry:W}),...U,"ai.value":{input:()=>JSON.stringify($)}}}),tracer:q,fn:async(B)=>{let{embedding:j,usage:V,response:L,providerMetadata:O}=await G(()=>UZ({name:"ai.embed.doEmbed",attributes:m({telemetry:W,attributes:{...FZ({operationId:"ai.embed.doEmbed",telemetry:W}),...U,"ai.values":{input:()=>[JSON.stringify($)]}}}),tracer:q,fn:async(P)=>{var y;let N=await H.doEmbed({values:[$],abortSignal:Y,headers:F,providerOptions:Q}),b=N.embeddings[0],R=(y=N.usage)!=null?y:{tokens:NaN};return P.setAttributes(m({telemetry:W,attributes:{"ai.embeddings":{output:()=>N.embeddings.map((D)=>JSON.stringify(D))},"ai.usage.tokens":R.tokens}})),{embedding:b,usage:R,providerMetadata:N.providerMetadata,response:N.response}}}));return B.setAttributes(m({telemetry:W,attributes:{"ai.embedding":{output:()=>JSON.stringify(j)},"ai.usage.tokens":V.tokens}})),new l4({value:$,embedding:j,usage:V,providerMetadata:O,response:L})}})}var l4=class{constructor(Z){this.value=Z.value,this.embedding=Z.embedding,this.usage=Z.usage,this.providerMetadata=Z.providerMetadata,this.response=Z.response}};function g9(Z,$){if($<=0)throw Error("chunkSize must be greater than 0");let Q=[];for(let X=0;X<Z.length;X+=$)Q.push(Z.slice(X,X+$));return Q}async function RK({model:Z,values:$,maxParallelCalls:Q=1/0,maxRetries:X,abortSignal:Y,headers:J,providerOptions:W,experimental_telemetry:H}){let K=v5(Z),{maxRetries:G,retry:F}=cZ({maxRetries:X,abortSignal:Y}),U=o(J!=null?J:{},`ai/${CZ}`),q=D0({model:K,telemetry:H,headers:U,settings:{maxRetries:G}}),B=L0(H);return UZ({name:"ai.embedMany",attributes:m({telemetry:H,attributes:{...FZ({operationId:"ai.embedMany",telemetry:H}),...q,"ai.values":{input:()=>$.map((j)=>JSON.stringify(j))}}}),tracer:B,fn:async(j)=>{var V;let[L,O]=await Promise.all([K.maxEmbeddingsPerCall,K.supportsParallelCalls]);if(L==null||L===1/0){let{embeddings:A,usage:S,response:v,providerMetadata:n}=await F(()=>{return UZ({name:"ai.embedMany.doEmbed",attributes:m({telemetry:H,attributes:{...FZ({operationId:"ai.embedMany.doEmbed",telemetry:H}),...q,"ai.values":{input:()=>$.map((r)=>JSON.stringify(r))}}}),tracer:B,fn:async(r)=>{var u;let h=await K.doEmbed({values:$,abortSignal:Y,headers:U,providerOptions:W}),$Z=h.embeddings,t=(u=h.usage)!=null?u:{tokens:NaN};return r.setAttributes(m({telemetry:H,attributes:{"ai.embeddings":{output:()=>$Z.map((KZ)=>JSON.stringify(KZ))},"ai.usage.tokens":t.tokens}})),{embeddings:$Z,usage:t,providerMetadata:h.providerMetadata,response:h.response}}})});return j.setAttributes(m({telemetry:H,attributes:{"ai.embeddings":{output:()=>A.map((r)=>JSON.stringify(r))},"ai.usage.tokens":S.tokens}})),new m9({values:$,embeddings:A,usage:S,providerMetadata:n,responses:[v]})}let P=g9($,L),y=[],N=[],b=0,R,D=g9(P,O?Q:1);for(let A of D){let S=await Promise.all(A.map((v)=>{return F(()=>{return UZ({name:"ai.embedMany.doEmbed",attributes:m({telemetry:H,attributes:{...FZ({operationId:"ai.embedMany.doEmbed",telemetry:H}),...q,"ai.values":{input:()=>v.map((n)=>JSON.stringify(n))}}}),tracer:B,fn:async(n)=>{var r;let u=await K.doEmbed({values:v,abortSignal:Y,headers:U,providerOptions:W}),h=u.embeddings,$Z=(r=u.usage)!=null?r:{tokens:NaN};return n.setAttributes(m({telemetry:H,attributes:{"ai.embeddings":{output:()=>h.map((t)=>JSON.stringify(t))},"ai.usage.tokens":$Z.tokens}})),{embeddings:h,usage:$Z,providerMetadata:u.providerMetadata,response:u.response}}})})}));for(let v of S)if(y.push(...v.embeddings),N.push(v.response),b+=v.usage.tokens,v.providerMetadata)if(!R)R={...v.providerMetadata};else for(let[n,r]of Object.entries(v.providerMetadata))R[n]={...(V=R[n])!=null?V:{},...r}}return j.setAttributes(m({telemetry:H,attributes:{"ai.embeddings":{output:()=>y.map((A)=>JSON.stringify(A))},"ai.usage.tokens":b}})),new m9({values:$,embeddings:y,usage:{tokens:b},providerMetadata:R,responses:N})}})}var m9=class{constructor(Z){this.values=Z.values,this.embeddings=Z.embeddings,this.usage=Z.usage,this.providerMetadata=Z.providerMetadata,this.responses=Z.responses}};async function MK({model:Z,prompt:$,n:Q=1,maxImagesPerCall:X,size:Y,aspectRatio:J,seed:W,providerOptions:H,maxRetries:K,abortSignal:G,headers:F}){var U,q;if(Z.specificationVersion!=="v2")throw new i0({version:Z.specificationVersion,provider:Z.provider,modelId:Z.modelId});let B=o(F!=null?F:{},`ai/${CZ}`),{retry:j}=cZ({maxRetries:K,abortSignal:G}),V=(U=X!=null?X:await s4(Z))!=null?U:1,L=Math.ceil(Q/V),O=Array.from({length:L},(D,A)=>{if(A<L-1)return V;let S=Q%V;return S===0?V:S}),P=await Promise.all(O.map(async(D)=>j(()=>Z.doGenerate({prompt:$,n:D,abortSignal:G,headers:B,size:Y,aspectRatio:J,seed:W,providerOptions:H!=null?H:{}})))),y=[],N=[],b=[],R={};for(let D of P){if(y.push(...D.images.map((A)=>{var S;return new U1({data:A,mediaType:(S=G1({data:A,signatures:x5}))!=null?S:"image/png"})})),N.push(...D.warnings),D.providerMetadata)for(let[A,S]of Object.entries(D.providerMetadata))(q=R[A])!=null||(R[A]={images:[]}),R[A].images.push(...D.providerMetadata[A].images);b.push(D.response)}if(H0(N),!y.length)throw new rz({responses:b});return new n4({images:y,warnings:N,responses:b,providerMetadata:R})}var n4=class{constructor(Z){this.images=Z.images,this.warnings=Z.warnings,this.responses=Z.responses,this.providerMetadata=Z.providerMetadata}get image(){return this.images[0]}};async function s4(Z){if(!(Z.maxImagesPerCall instanceof Function))return Z.maxImagesPerCall;return Z.maxImagesPerCall({modelId:Z.modelId})}function o4(Z){let $=Z.filter((Q)=>Q.type==="reasoning");return $.length===0?void 0:$.map((Q)=>Q.text).join(`
22
22
  `)}var r4={type:"no-schema",jsonSchema:void 0,async validatePartialResult({value:Z,textDelta:$}){return{success:!0,value:{partial:Z,textDelta:$}}},async validateFinalResult(Z,$){return Z===void 0?{success:!1,error:new X0({message:"No object generated: response did not match schema.",text:$.text,response:$.response,usage:$.usage,finishReason:$.finishReason})}:{success:!0,value:Z}},createElementStream(){throw new u0({functionality:"element streams in no-schema mode"})}},a4=(Z)=>({type:"object",jsonSchema:Z.jsonSchema,async validatePartialResult({value:$,textDelta:Q}){return{success:!0,value:{partial:$,textDelta:Q}}},async validateFinalResult($){return qZ({value:$,schema:Z})},createElementStream(){throw new u0({functionality:"element streams in object mode"})}}),t4=(Z)=>{let{$schema:$,...Q}=Z.jsonSchema;return{type:"array",jsonSchema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:Q}},required:["elements"],additionalProperties:!1},async validatePartialResult({value:X,latestObject:Y,isFirstDelta:J,isFinalDelta:W}){var H;if(!h0(X)||!M$(X.elements))return{success:!1,error:new PZ({value:X,cause:"value must be an object that contains an array of elements"})};let K=X.elements,G=[];for(let q=0;q<K.length;q++){let B=K[q],j=await qZ({value:B,schema:Z});if(q===K.length-1&&!W)continue;if(!j.success)return j;G.push(j.value)}let F=(H=Y==null?void 0:Y.length)!=null?H:0,U="";if(J)U+="[";if(F>0)U+=",";if(U+=G.slice(F).map((q)=>JSON.stringify(q)).join(","),W)U+="]";return{success:!0,value:{partial:G,textDelta:U}}},async validateFinalResult(X){if(!h0(X)||!M$(X.elements))return{success:!1,error:new PZ({value:X,cause:"value must be an object that contains an array of elements"})};let Y=X.elements;for(let J of Y){let W=await qZ({value:J,schema:Z});if(!W.success)return W}return{success:!0,value:Y}},createElementStream(X){let Y=0;return dZ(X.pipeThrough(new TransformStream({transform(J,W){switch(J.type){case"object":{let H=J.object;for(;Y<H.length;Y++)W.enqueue(H[Y]);break}case"text-delta":case"finish":case"error":break;default:throw Error(`Unsupported chunk type: ${J}`)}}})))}}},e4=(Z)=>{return{type:"enum",jsonSchema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:Z}},required:["result"],additionalProperties:!1},async validateFinalResult($){if(!h0($)||typeof $.result!=="string")return{success:!1,error:new PZ({value:$,cause:'value must be an object that contains a string in the "result" property.'})};let Q=$.result;return Z.includes(Q)?{success:!0,value:Q}:{success:!1,error:new PZ({value:$,cause:"value must be a string in the enum"})}},async validatePartialResult({value:$,textDelta:Q}){if(!h0($)||typeof $.result!=="string")return{success:!1,error:new PZ({value:$,cause:'value must be an object that contains a string in the "result" property.'})};let X=$.result,Y=Z.filter((J)=>J.startsWith(X));if($.result.length===0||Y.length===0)return{success:!1,error:new PZ({value:$,cause:"value must be a string in the enum"})};return{success:!0,value:{partial:Y.length>1?X:Y[0],textDelta:Q}}},createElementStream(){throw new u0({functionality:"element streams in enum mode"})}}};function FJ({output:Z,schema:$,enumValues:Q}){switch(Z){case"object":return a4(MZ($));case"array":return t4(MZ($));case"enum":return e4(Q);case"no-schema":return r4;default:throw Error(`Unsupported output: ${Z}`)}}async function d9(Z,$,Q){let X=await vZ({text:Z});if(!X.success)throw new X0({message:"No object generated: could not parse the response.",cause:X.error,text:Z,response:Q.response,usage:Q.usage,finishReason:Q.finishReason});let Y=await $.validateFinalResult(X.value,{text:Z,response:Q.response,usage:Q.usage});if(!Y.success)throw new X0({message:"No object generated: response did not match schema.",cause:Y.error,text:Z,response:Q.response,usage:Q.usage,finishReason:Q.finishReason});return Y.value}async function UJ(Z,$,Q,X){try{return await d9(Z,$,X)}catch(Y){if(Q!=null&&X0.isInstance(Y)&&(v$.isInstance(Y.cause)||PZ.isInstance(Y.cause))){let J=await Q({text:Z,error:Y.cause});if(J===null)throw Y;return await d9(J,$,X)}throw Y}}function jJ({output:Z,schema:$,schemaName:Q,schemaDescription:X,enumValues:Y}){if(Z!=null&&Z!=="object"&&Z!=="array"&&Z!=="enum"&&Z!=="no-schema")throw new l({parameter:"output",value:Z,message:"Invalid output type."});if(Z==="no-schema"){if($!=null)throw new l({parameter:"schema",value:$,message:"Schema is not supported for no-schema output."});if(X!=null)throw new l({parameter:"schemaDescription",value:X,message:"Schema description is not supported for no-schema output."});if(Q!=null)throw new l({parameter:"schemaName",value:Q,message:"Schema name is not supported for no-schema output."});if(Y!=null)throw new l({parameter:"enumValues",value:Y,message:"Enum values are not supported for no-schema output."})}if(Z==="object"){if($==null)throw new l({parameter:"schema",value:$,message:"Schema is required for object output."});if(Y!=null)throw new l({parameter:"enumValues",value:Y,message:"Enum values are not supported for object output."})}if(Z==="array"){if($==null)throw new l({parameter:"schema",value:$,message:"Element schema is required for array output."});if(Y!=null)throw new l({parameter:"enumValues",value:Y,message:"Enum values are not supported for array output."})}if(Z==="enum"){if($!=null)throw new l({parameter:"schema",value:$,message:"Schema is not supported for enum output."});if(X!=null)throw new l({parameter:"schemaDescription",value:X,message:"Schema description is not supported for enum output."});if(Q!=null)throw new l({parameter:"schemaName",value:Q,message:"Schema name is not supported for enum output."});if(Y==null)throw new l({parameter:"enumValues",value:Y,message:"Enum values are required for enum output."});for(let J of Y)if(typeof J!=="string")throw new l({parameter:"enumValues",value:J,message:"Enum values must be strings."})}}var ZH=uZ({prefix:"aiobj",size:24});async function _K(Z){let{model:$,output:Q="object",system:X,prompt:Y,messages:J,maxRetries:W,abortSignal:H,headers:K,experimental_repairText:G,experimental_telemetry:F,experimental_download:U,providerOptions:q,_internal:{generateId:B=ZH,currentDate:j=()=>new Date}={},...V}=Z,L=O0($),O="enum"in Z?Z.enum:void 0,{schema:P,schemaDescription:y,schemaName:N}="schema"in Z?Z:{};jJ({output:Q,schema:P,schemaName:N,schemaDescription:y,enumValues:O});let{maxRetries:b,retry:R}=cZ({maxRetries:W,abortSignal:H}),D=FJ({output:Q,schema:P,enumValues:O}),A=J0(V),S=o(K!=null?K:{},`ai/${CZ}`),v=D0({model:L,telemetry:F,headers:S,settings:{...A,maxRetries:b}}),n=L0(F);try{return await UZ({name:"ai.generateObject",attributes:m({telemetry:F,attributes:{...FZ({operationId:"ai.generateObject",telemetry:F}),...v,"ai.prompt":{input:()=>JSON.stringify({system:X,prompt:Y,messages:J})},"ai.schema":D.jsonSchema!=null?{input:()=>JSON.stringify(D.jsonSchema)}:void 0,"ai.schema.name":N,"ai.schema.description":y,"ai.settings.output":D.type}}),tracer:n,fn:async(r)=>{var u;let h,$Z,t,KZ,jZ,IZ,s,fZ,zZ=await q1({system:X,prompt:Y,messages:J}),QZ=await K1({prompt:zZ,supportedUrls:await L.supportedUrls,download:U}),e=await R(()=>UZ({name:"ai.generateObject.doGenerate",attributes:m({telemetry:F,attributes:{...FZ({operationId:"ai.generateObject.doGenerate",telemetry:F}),...v,"ai.prompt.messages":{input:()=>F1(QZ)},"gen_ai.system":L.provider,"gen_ai.request.model":L.modelId,"gen_ai.request.frequency_penalty":A.frequencyPenalty,"gen_ai.request.max_tokens":A.maxOutputTokens,"gen_ai.request.presence_penalty":A.presencePenalty,"gen_ai.request.temperature":A.temperature,"gen_ai.request.top_k":A.topK,"gen_ai.request.top_p":A.topP}}),tracer:n,fn:async(p)=>{var NZ,OZ,VZ,c,a,LZ,i,_;let C=await L.doGenerate({responseFormat:{type:"json",schema:D.jsonSchema,name:N,description:y},...J0(V),prompt:QZ,providerOptions:q,abortSignal:H,headers:S}),f={id:(OZ=(NZ=C.response)==null?void 0:NZ.id)!=null?OZ:B(),timestamp:(c=(VZ=C.response)==null?void 0:VZ.timestamp)!=null?c:j(),modelId:(LZ=(a=C.response)==null?void 0:a.modelId)!=null?LZ:L.modelId,headers:(i=C.response)==null?void 0:i.headers,body:(_=C.response)==null?void 0:_.body},E=S$(C.content),ZZ=o4(C.content);if(E===void 0)throw new X0({message:"No object generated: the model did not return a response.",response:f,usage:C.usage,finishReason:C.finishReason});return p.setAttributes(m({telemetry:F,attributes:{"ai.response.finishReason":C.finishReason,"ai.response.object":{output:()=>E},"ai.response.id":f.id,"ai.response.model":f.modelId,"ai.response.timestamp":f.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(C.providerMetadata),"ai.usage.promptTokens":C.usage.inputTokens,"ai.usage.completionTokens":C.usage.outputTokens,"gen_ai.response.finish_reasons":[C.finishReason],"gen_ai.response.id":f.id,"gen_ai.response.model":f.modelId,"gen_ai.usage.input_tokens":C.usage.inputTokens,"gen_ai.usage.output_tokens":C.usage.outputTokens}})),{...C,objectText:E,reasoning:ZZ,responseData:f}}}));h=e.objectText,$Z=e.finishReason,t=e.usage,KZ=e.warnings,s=e.providerMetadata,IZ=(u=e.request)!=null?u:{},jZ=e.responseData,fZ=e.reasoning,H0(KZ);let WZ=await UJ(h,D,G,{response:jZ,usage:t,finishReason:$Z});return r.setAttributes(m({telemetry:F,attributes:{"ai.response.finishReason":$Z,"ai.response.object":{output:()=>JSON.stringify(WZ)},"ai.response.providerMetadata":JSON.stringify(s),"ai.usage.promptTokens":t.inputTokens,"ai.usage.completionTokens":t.outputTokens}})),new $H({object:WZ,reasoning:fZ,finishReason:$Z,usage:t,warnings:KZ,request:IZ,response:jZ,providerMetadata:s})}})}catch(r){throw B1(r)}}var $H=class{constructor(Z){this.object=Z.object,this.finishReason=Z.finishReason,this.usage=Z.usage,this.warnings=Z.warnings,this.providerMetadata=Z.providerMetadata,this.response=Z.response,this.request=Z.request,this.reasoning=Z.reasoning}toJsonResponse(Z){var $;return new Response(JSON.stringify(this.object),{status:($=Z==null?void 0:Z.status)!=null?$:200,headers:p0(Z==null?void 0:Z.headers,{"content-type":"application/json; charset=utf-8"})})}};function kK(Z,$){if(Z.length!==$.length)throw new l({parameter:"vector1,vector2",value:{vector1Length:Z.length,vector2Length:$.length},message:"Vectors must have the same length"});let Q=Z.length;if(Q===0)return 0;let X=0,Y=0,J=0;for(let W=0;W<Q;W++){let H=Z[W],K=$[W];X+=H*H,Y+=K*K,J+=H*K}return X===0||Y===0?0:J/(Math.sqrt(X)*Math.sqrt(Y))}function hK(Z){let[$,Q]=Z.split(",");if($.split(";")[0].split(":")[1]==null||Q==null)throw Error("Invalid data URL format");try{return window.atob(Q)}catch(Y){throw Error("Error decoding data URL")}}function z1(Z,$){if(Z===$)return!0;if(Z==null||$==null)return!1;if(typeof Z!=="object"&&typeof $!=="object")return Z===$;if(Z.constructor!==$.constructor)return!1;if(Z instanceof Date&&$ instanceof Date)return Z.getTime()===$.getTime();if(Array.isArray(Z)){if(Z.length!==$.length)return!1;for(let Y=0;Y<Z.length;Y++)if(!z1(Z[Y],$[Y]))return!1;return!0}let Q=Object.keys(Z),X=Object.keys($);if(Q.length!==X.length)return!1;for(let Y of Q){if(!X.includes(Y))return!1;if(!z1(Z[Y],$[Y]))return!1}return!0}var QH=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(this.isProcessing)return;this.isProcessing=!0;while(this.queue.length>0)await this.queue[0](),this.queue.shift();this.isProcessing=!1}async run(Z){return new Promise(($,Q)=>{this.queue.push(async()=>{try{await Z(),$()}catch(X){Q(X)}}),this.processQueue()})}};function mK({chunks:Z,initialDelayInMs:$=0,chunkDelayInMs:Q=0,_internal:X}){var Y;let J=(Y=X==null?void 0:X.delay)!=null?Y:V0,W=0;return new ReadableStream({async pull(H){if(W<Z.length)await J(W===0?$:Q),H.enqueue(Z[W++]);else H.close()}})}var XH=uZ({prefix:"aiobj",size:24});function dK(Z){let{model:$,output:Q="object",system:X,prompt:Y,messages:J,maxRetries:W,abortSignal:H,headers:K,experimental_repairText:G,experimental_telemetry:F,experimental_download:U,providerOptions:q,onError:B=({error:A})=>{console.error(A)},onFinish:j,_internal:{generateId:V=XH,currentDate:L=()=>new Date,now:O=qJ}={},...P}=Z,y="enum"in Z&&Z.enum?Z.enum:void 0,{schema:N,schemaDescription:b,schemaName:R}="schema"in Z?Z:{};jJ({output:Q,schema:N,schemaName:R,schemaDescription:b,enumValues:y});let D=FJ({output:Q,schema:N,enumValues:y});return new JH({model:$,telemetry:F,headers:K,settings:P,maxRetries:W,abortSignal:H,outputStrategy:D,system:X,prompt:Y,messages:J,schemaName:R,schemaDescription:b,providerOptions:q,repairText:G,onError:B,onFinish:j,download:U,generateId:V,currentDate:L,now:O})}var JH=class{constructor({model:Z,headers:$,telemetry:Q,settings:X,maxRetries:Y,abortSignal:J,outputStrategy:W,system:H,prompt:K,messages:G,schemaName:F,schemaDescription:U,providerOptions:q,repairText:B,onError:j,onFinish:V,download:L,generateId:O,currentDate:P,now:y}){this._object=new TZ,this._usage=new TZ,this._providerMetadata=new TZ,this._warnings=new TZ,this._request=new TZ,this._response=new TZ,this._finishReason=new TZ;let N=O0(Z),{maxRetries:b,retry:R}=cZ({maxRetries:Y,abortSignal:J}),D=J0(X),A=D0({model:N,telemetry:Q,headers:$,settings:{...D,maxRetries:b}}),S=L0(Q),v=this,n=KJ(),r=new TransformStream({transform(u,h){if(h.enqueue(u),u.type==="error")j({error:B1(u.error)})}});this.baseStream=n.stream.pipeThrough(r),UZ({name:"ai.streamObject",attributes:m({telemetry:Q,attributes:{...FZ({operationId:"ai.streamObject",telemetry:Q}),...A,"ai.prompt":{input:()=>JSON.stringify({system:H,prompt:K,messages:G})},"ai.schema":W.jsonSchema!=null?{input:()=>JSON.stringify(W.jsonSchema)}:void 0,"ai.schema.name":F,"ai.schema.description":U,"ai.settings.output":W.type}}),tracer:S,endWhenDone:!1,fn:async(u)=>{let h=await q1({system:H,prompt:K,messages:G}),$Z={responseFormat:{type:"json",schema:W.jsonSchema,name:F,description:U},...J0(X),prompt:await K1({prompt:h,supportedUrls:await N.supportedUrls,download:L}),providerOptions:q,abortSignal:J,headers:$,includeRawChunks:!1},t={transform:(f,E)=>{switch(f.type){case"text-delta":E.enqueue(f.delta);break;case"response-metadata":case"finish":case"error":case"stream-start":E.enqueue(f);break}}},{result:{stream:KZ,response:jZ,request:IZ},doStreamSpan:s,startTimestampMs:fZ}=await R(()=>UZ({name:"ai.streamObject.doStream",attributes:m({telemetry:Q,attributes:{...FZ({operationId:"ai.streamObject.doStream",telemetry:Q}),...A,"ai.prompt.messages":{input:()=>F1($Z.prompt)},"gen_ai.system":N.provider,"gen_ai.request.model":N.modelId,"gen_ai.request.frequency_penalty":D.frequencyPenalty,"gen_ai.request.max_tokens":D.maxOutputTokens,"gen_ai.request.presence_penalty":D.presencePenalty,"gen_ai.request.temperature":D.temperature,"gen_ai.request.top_k":D.topK,"gen_ai.request.top_p":D.topP}}),tracer:S,endWhenDone:!1,fn:async(f)=>({startTimestampMs:y(),doStreamSpan:f,result:await N.doStream($Z)})}));v._request.resolve(IZ!=null?IZ:{});let zZ,QZ={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0},e,WZ,p,NZ,OZ="",VZ="",c={id:O(),timestamp:P(),modelId:N.modelId},a=void 0,LZ=void 0,i=!0,_=!0,C=KZ.pipeThrough(new TransformStream(t)).pipeThrough(new TransformStream({async transform(f,E){var ZZ,wZ,w;if(typeof f==="object"&&f.type==="stream-start"){zZ=f.warnings;return}if(i){let x=y()-fZ;i=!1,s.addEvent("ai.stream.firstChunk",{"ai.stream.msToFirstChunk":x}),s.setAttributes({"ai.stream.msToFirstChunk":x})}if(typeof f==="string"){OZ+=f,VZ+=f;let{value:x,state:bZ}=await k$(OZ);if(x!==void 0&&!z1(a,x)){let g=await W.validatePartialResult({value:x,textDelta:VZ,latestObject:LZ,isFirstDelta:_,isFinalDelta:bZ==="successful-parse"});if(g.success&&!z1(LZ,g.value.partial))a=x,LZ=g.value.partial,E.enqueue({type:"object",object:LZ}),E.enqueue({type:"text-delta",textDelta:g.value.textDelta}),VZ="",_=!1}return}switch(f.type){case"response-metadata":{c={id:(ZZ=f.id)!=null?ZZ:c.id,timestamp:(wZ=f.timestamp)!=null?wZ:c.timestamp,modelId:(w=f.modelId)!=null?w:c.modelId};break}case"finish":{if(VZ!=="")E.enqueue({type:"text-delta",textDelta:VZ});e=f.finishReason,QZ=f.usage,WZ=f.providerMetadata,E.enqueue({...f,usage:QZ,response:c}),H0(zZ!=null?zZ:[]),v._usage.resolve(QZ),v._providerMetadata.resolve(WZ),v._warnings.resolve(zZ),v._response.resolve({...c,headers:jZ==null?void 0:jZ.headers}),v._finishReason.resolve(e!=null?e:"unknown");try{p=await UJ(OZ,W,B,{response:c,usage:QZ,finishReason:e}),v._object.resolve(p)}catch(x){NZ=x,v._object.reject(x)}break}default:{E.enqueue(f);break}}},async flush(f){try{let E=QZ!=null?QZ:{promptTokens:NaN,completionTokens:NaN,totalTokens:NaN};s.setAttributes(m({telemetry:Q,attributes:{"ai.response.finishReason":e,"ai.response.object":{output:()=>JSON.stringify(p)},"ai.response.id":c.id,"ai.response.model":c.modelId,"ai.response.timestamp":c.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(WZ),"ai.usage.inputTokens":E.inputTokens,"ai.usage.outputTokens":E.outputTokens,"ai.usage.totalTokens":E.totalTokens,"ai.usage.reasoningTokens":E.reasoningTokens,"ai.usage.cachedInputTokens":E.cachedInputTokens,"gen_ai.response.finish_reasons":[e],"gen_ai.response.id":c.id,"gen_ai.response.model":c.modelId,"gen_ai.usage.input_tokens":E.inputTokens,"gen_ai.usage.output_tokens":E.outputTokens}})),s.end(),u.setAttributes(m({telemetry:Q,attributes:{"ai.usage.inputTokens":E.inputTokens,"ai.usage.outputTokens":E.outputTokens,"ai.usage.totalTokens":E.totalTokens,"ai.usage.reasoningTokens":E.reasoningTokens,"ai.usage.cachedInputTokens":E.cachedInputTokens,"ai.response.object":{output:()=>JSON.stringify(p)},"ai.response.providerMetadata":JSON.stringify(WZ)}})),await(V==null?void 0:V({usage:E,object:p,error:NZ,response:{...c,headers:jZ==null?void 0:jZ.headers},warnings:zZ,providerMetadata:WZ}))}catch(E){f.enqueue({type:"error",error:E})}finally{u.end()}}}));n.addStream(C)}}).catch((u)=>{n.addStream(new ReadableStream({start(h){h.enqueue({type:"error",error:u}),h.close()}}))}).finally(()=>{n.close()}),this.outputStrategy=W}get object(){return this._object.promise}get usage(){return this._usage.promise}get providerMetadata(){return this._providerMetadata.promise}get warnings(){return this._warnings.promise}get request(){return this._request.promise}get response(){return this._response.promise}get finishReason(){return this._finishReason.promise}get partialObjectStream(){return dZ(this.baseStream.pipeThrough(new TransformStream({transform(Z,$){switch(Z.type){case"object":$.enqueue(Z.object);break;case"text-delta":case"finish":case"error":break;default:throw Error(`Unsupported chunk type: ${Z}`)}}})))}get elementStream(){return this.outputStrategy.createElementStream(this.baseStream)}get textStream(){return dZ(this.baseStream.pipeThrough(new TransformStream({transform(Z,$){switch(Z.type){case"text-delta":$.enqueue(Z.textDelta);break;case"object":case"finish":case"error":break;default:throw Error(`Unsupported chunk type: ${Z}`)}}})))}get fullStream(){return dZ(this.baseStream)}pipeTextStreamToResponse(Z,$){YJ({response:Z,textStream:this.textStream,...$})}toTextStreamResponse(Z){return XJ({textStream:this.textStream,...Z})}},YH=class extends U1{constructor({data:Z,mediaType:$}){super({data:Z,mediaType:$});let Q="mp3";if($){let X=$.split("/");if(X.length===2){if($!=="audio/mpeg")Q=X[1]}}if(!Q)throw Error("Audio format must be provided or determinable from media type");this.format=Q}};async function cK({model:Z,text:$,voice:Q,outputFormat:X,instructions:Y,speed:J,language:W,providerOptions:H={},maxRetries:K,abortSignal:G,headers:F}){var U;if(Z.specificationVersion!=="v2")throw new i0({version:Z.specificationVersion,provider:Z.provider,modelId:Z.modelId});let q=o(F!=null?F:{},`ai/${CZ}`),{retry:B}=cZ({maxRetries:K,abortSignal:G}),j=await B(()=>Z.doGenerate({text:$,voice:Q,outputFormat:X,instructions:Y,speed:J,language:W,abortSignal:G,headers:q,providerOptions:H}));if(!j.audio||j.audio.length===0)throw new Z4({responses:[j.response]});return H0(j.warnings),new zH({audio:new YH({data:j.audio,mediaType:(U=G1({data:j.audio,signatures:k5}))!=null?U:"audio/mp3"}),warnings:j.warnings,responses:[j.response],providerMetadata:j.providerMetadata})}var zH=class{constructor(Z){var $;this.audio=Z.audio,this.warnings=Z.warnings,this.responses=Z.responses,this.providerMetadata=($=Z.providerMetadata)!=null?$:{}}},HH={};uz(HH,{object:()=>GH,text:()=>WH});var WH=()=>({type:"text",responseFormat:{type:"text"},async parsePartial({text:Z}){return{partial:Z}},async parseOutput({text:Z}){return Z}}),GH=({schema:Z})=>{let $=MZ(Z);return{type:"object",responseFormat:{type:"json",schema:$.jsonSchema},async parsePartial({text:Q}){let X=await k$(Q);switch(X.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:X.value};default:{let Y=X.state;throw Error(`Unsupported parse state: ${Y}`)}}},async parseOutput({text:Q},X){let Y=await vZ({text:Q});if(!Y.success)throw new X0({message:"No object generated: could not parse the response.",cause:Y.error,text:Q,response:X.response,usage:X.usage,finishReason:X.finishReason});let J=await qZ({value:Y.value,schema:$});if(!J.success)throw new X0({message:"No object generated: response did not match schema.",cause:J.error,text:Q,response:X.response,usage:X.usage,finishReason:X.finishReason});return J.value}}};function pK({messages:Z,reasoning:$="none",toolCalls:Q=[],emptyMessages:X="remove"}){if($==="all"||$==="before-last-message")Z=Z.map((Y,J)=>{if(Y.role!=="assistant"||typeof Y.content==="string"||$==="before-last-message"&&J===Z.length-1)return Y;return{...Y,content:Y.content.filter((W)=>W.type!=="reasoning")}});if(Q==="none")Q=[];else if(Q==="all")Q=[{type:"all"}];else if(Q==="before-last-message")Q=[{type:"before-last-message"}];else if(typeof Q==="string")Q=[{type:Q}];for(let Y of Q){let J=Y.type==="all"?void 0:Y.type==="before-last-message"?1:Number(Y.type.slice(12).slice(0,-9)),W=new Set,H=new Set;if(J!=null){for(let K of Z.slice(0,-J))if((K.role==="assistant"||K.role==="tool")&&typeof K.content!=="string"){for(let G of K.content)if(G.type==="tool-call"||G.type==="tool-result")W.add(G.toolCallId)}}Z=Z.map((K,G)=>{if(K.role!=="assistant"&&K.role!=="tool"||typeof K.content==="string"||J&&G>=Z.length-J)return K;let F={};return{...K,content:K.content.filter((U)=>{if(U.type!=="tool-call"&&U.type!=="tool-result")return!0;if(U.type==="tool-call")F[U.toolCallId]=U.toolName;if((U.type==="tool-call"||U.type==="tool-result")&&W.has(U.toolCallId))return!0;return Y.tools!=null&&!Y.tools.includes(U.toolName)})}})}if(X==="remove")Z=Z.filter((Y)=>Y.content.length>0);return Z}var KH={word:/\S+\s+/m,line:/\n+/m};function sK({delayInMs:Z=10,chunking:$="word",_internal:{delay:Q=V0}={}}={}){let X;if(typeof $==="function")X=(Y)=>{let J=$(Y);if(J==null)return null;if(!J.length)throw Error("Chunking function must return a non-empty string.");if(!Y.startsWith(J))throw Error(`Chunking function must return a match that is a prefix of the buffer. Received: "${J}" expected to start with "${Y}"`);return J};else{let Y=typeof $==="string"?KH[$]:$;if(Y==null)throw new u9({argument:"chunking",message:`Chunking must be "word" or "line" or a RegExp. Received: ${$}`});X=(J)=>{let W=Y.exec(J);if(!W)return null;return J.slice(0,W.index)+(W==null?void 0:W[0])}}return()=>{let Y="",J="";return new TransformStream({async transform(W,H){if(W.type!=="text-delta"){if(Y.length>0)H.enqueue({type:"text-delta",text:Y,id:J}),Y="";H.enqueue(W);return}if(W.id!==J&&Y.length>0)H.enqueue({type:"text-delta",text:Y,id:J}),Y="";Y+=W.text,J=W.id;let K;while((K=X(Y))!=null)H.enqueue({type:"text-delta",text:K,id:J}),Y=Y.slice(K.length),await Q(Z)}})}}function oK({settings:Z}){return{middlewareVersion:"v2",transformParams:async({params:$})=>{return x$(Z,$)}}}function qH(Z,$){if($.length===0)return null;let Q=Z.indexOf($);if(Q!==-1)return Q;for(let X=Z.length-1;X>=0;X--){let Y=Z.substring(X);if($.startsWith(Y))return X}return null}function rK({tagName:Z,separator:$=`
23
- `,startWithReasoning:Q=!1}){let X=`<${Z}>`,Y=`</${Z}>`;return{middlewareVersion:"v2",wrapGenerate:async({doGenerate:J})=>{let{content:W,...H}=await J(),K=[];for(let G of W){if(G.type!=="text"){K.push(G);continue}let F=Q?X+G.text:G.text,U=new RegExp(`${X}(.*?)${Y}`,"gs"),q=Array.from(F.matchAll(U));if(!q.length){K.push(G);continue}let B=q.map((V)=>V[1]).join($),j=F;for(let V=q.length-1;V>=0;V--){let L=q[V],O=j.slice(0,L.index),P=j.slice(L.index+L[0].length);j=O+(O.length>0&&P.length>0?$:"")+P}K.push({type:"reasoning",text:B}),K.push({type:"text",text:j})}return{content:K,...H}},wrapStream:async({doStream:J})=>{let{stream:W,...H}=await J(),K={},G;return{stream:W.pipeThrough(new TransformStream({transform:(F,U)=>{if(F.type==="text-start"){G=F;return}if(F.type==="text-end"&&G)U.enqueue(G),G=void 0;if(F.type!=="text-delta"){U.enqueue(F);return}if(K[F.id]==null)K[F.id]={isFirstReasoning:!0,isFirstText:!0,afterSwitch:!1,isReasoning:Q,buffer:"",idCounter:0,textId:F.id};let q=K[F.id];q.buffer+=F.delta;function B(j){if(j.length>0){let V=q.afterSwitch&&(q.isReasoning?!q.isFirstReasoning:!q.isFirstText)?$:"";if(q.isReasoning&&(q.afterSwitch||q.isFirstReasoning))U.enqueue({type:"reasoning-start",id:`reasoning-${q.idCounter}`});if(q.isReasoning)U.enqueue({type:"reasoning-delta",delta:V+j,id:`reasoning-${q.idCounter}`});else{if(G)U.enqueue(G),G=void 0;U.enqueue({type:"text-delta",delta:V+j,id:q.textId})}if(q.afterSwitch=!1,q.isReasoning)q.isFirstReasoning=!1;else q.isFirstText=!1}}do{let j=q.isReasoning?Y:X,V=qH(q.buffer,j);if(V==null){B(q.buffer),q.buffer="";break}if(B(q.buffer.slice(0,V)),V+j.length<=q.buffer.length){if(q.buffer=q.buffer.slice(V+j.length),q.isReasoning)U.enqueue({type:"reasoning-end",id:`reasoning-${q.idCounter++}`});q.isReasoning=!q.isReasoning,q.afterSwitch=!0}else{q.buffer=q.buffer.slice(V);break}}while(!0)}})),...H}}}}function aK(){return{middlewareVersion:"v2",wrapStream:async({doGenerate:Z})=>{let $=await Z(),Q=0;return{stream:new ReadableStream({start(Y){Y.enqueue({type:"stream-start",warnings:$.warnings}),Y.enqueue({type:"response-metadata",...$.response});for(let J of $.content)switch(J.type){case"text":{if(J.text.length>0)Y.enqueue({type:"text-start",id:String(Q)}),Y.enqueue({type:"text-delta",id:String(Q),delta:J.text}),Y.enqueue({type:"text-end",id:String(Q)}),Q++;break}case"reasoning":{Y.enqueue({type:"reasoning-start",id:String(Q),providerMetadata:J.providerMetadata}),Y.enqueue({type:"reasoning-delta",id:String(Q),delta:J.text}),Y.enqueue({type:"reasoning-end",id:String(Q)}),Q++;break}default:{Y.enqueue(J);break}}Y.enqueue({type:"finish",finishReason:$.finishReason,usage:$.usage,providerMetadata:$.providerMetadata}),Y.close()}}),request:$.request,response:$.response}}}}var NJ=({model:Z,middleware:$,modelId:Q,providerId:X})=>{return[...J1($)].reverse().reduce((Y,J)=>{return BH({model:Y,middleware:J,modelId:Q,providerId:X})},Z)},BH=({model:Z,middleware:{transformParams:$,wrapGenerate:Q,wrapStream:X,overrideProvider:Y,overrideModelId:J,overrideSupportedUrls:W},modelId:H,providerId:K})=>{var G,F,U;async function q({params:B,type:j}){return $?await $({params:B,type:j,model:Z}):B}return{specificationVersion:"v2",provider:(G=K!=null?K:Y==null?void 0:Y({model:Z}))!=null?G:Z.provider,modelId:(F=H!=null?H:J==null?void 0:J({model:Z}))!=null?F:Z.modelId,supportedUrls:(U=W==null?void 0:W({model:Z}))!=null?U:Z.supportedUrls,async doGenerate(B){let j=await q({params:B,type:"generate"}),V=async()=>Z.doGenerate(j);return Q?Q({doGenerate:V,doStream:async()=>Z.doStream(j),params:j,model:Z}):V()},async doStream(B){let j=await q({params:B,type:"stream"}),V=async()=>Z.doGenerate(j),L=async()=>Z.doStream(j);return X?X({doGenerate:V,doStream:L,params:j,model:Z}):L()}}};function tK({provider:Z,languageModelMiddleware:$}){return{languageModel(X){let Y=Z.languageModel(X);return Y=NJ({model:Y,middleware:$}),Y},textEmbeddingModel:Z.textEmbeddingModel,imageModel:Z.imageModel,transcriptionModel:Z.transcriptionModel,speechModel:Z.speechModel}}function FH({languageModels:Z,textEmbeddingModels:$,imageModels:Q,transcriptionModels:X,speechModels:Y,fallbackProvider:J}){return{languageModel(W){if(Z!=null&&W in Z)return Z[W];if(J)return J.languageModel(W);throw new YZ({modelId:W,modelType:"languageModel"})},textEmbeddingModel(W){if($!=null&&W in $)return $[W];if(J)return J.textEmbeddingModel(W);throw new YZ({modelId:W,modelType:"textEmbeddingModel"})},imageModel(W){if(Q!=null&&W in Q)return Q[W];if(J==null?void 0:J.imageModel)return J.imageModel(W);throw new YZ({modelId:W,modelType:"imageModel"})},transcriptionModel(W){if(X!=null&&W in X)return X[W];if(J==null?void 0:J.transcriptionModel)return J.transcriptionModel(W);throw new YZ({modelId:W,modelType:"transcriptionModel"})},speechModel(W){if(Y!=null&&W in Y)return Y[W];if(J==null?void 0:J.speechModel)return J.speechModel(W);throw new YZ({modelId:W,modelType:"speechModel"})}}}var Zq=FH,OJ="AI_NoSuchProviderError",VJ=`vercel.ai.error.${OJ}`,UH=Symbol.for(VJ),DJ,jH=class extends YZ{constructor({modelId:Z,modelType:$,providerId:Q,availableProviders:X,message:Y=`No such provider: ${Q} (available providers: ${X.join()})`}){super({errorName:OJ,modelId:Z,modelType:$,message:Y});this[DJ]=!0,this.providerId=Q,this.availableProviders=X}static isInstance(Z){return I.hasMarker(Z,VJ)}};DJ=UH;function NH(Z,{separator:$=":",languageModelMiddleware:Q}={}){let X=new OH({separator:$,languageModelMiddleware:Q});for(let[Y,J]of Object.entries(Z))X.registerProvider({id:Y,provider:J});return X}var Xq=NH,OH=class{constructor({separator:Z,languageModelMiddleware:$}){this.providers={},this.separator=Z,this.languageModelMiddleware=$}registerProvider({id:Z,provider:$}){this.providers[Z]=$}getProvider(Z,$){let Q=this.providers[Z];if(Q==null)throw new jH({modelId:Z,modelType:$,providerId:Z,availableProviders:Object.keys(this.providers)});return Q}splitId(Z,$){let Q=Z.indexOf(this.separator);if(Q===-1)throw new YZ({modelId:Z,modelType:$,message:`Invalid ${$} id for registry: ${Z} (must be in the format "providerId${this.separator}modelId")`});return[Z.slice(0,Q),Z.slice(Q+this.separator.length)]}languageModel(Z){var $,Q;let[X,Y]=this.splitId(Z,"languageModel"),J=(Q=($=this.getProvider(X,"languageModel")).languageModel)==null?void 0:Q.call($,Y);if(J==null)throw new YZ({modelId:Z,modelType:"languageModel"});if(this.languageModelMiddleware!=null)J=NJ({model:J,middleware:this.languageModelMiddleware});return J}textEmbeddingModel(Z){var $;let[Q,X]=this.splitId(Z,"textEmbeddingModel"),Y=this.getProvider(Q,"textEmbeddingModel"),J=($=Y.textEmbeddingModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"textEmbeddingModel"});return J}imageModel(Z){var $;let[Q,X]=this.splitId(Z,"imageModel"),Y=this.getProvider(Q,"imageModel"),J=($=Y.imageModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"imageModel"});return J}transcriptionModel(Z){var $;let[Q,X]=this.splitId(Z,"transcriptionModel"),Y=this.getProvider(Q,"transcriptionModel"),J=($=Y.transcriptionModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"transcriptionModel"});return J}speechModel(Z){var $;let[Q,X]=this.splitId(Z,"speechModel"),Y=this.getProvider(Q,"speechModel"),J=($=Y.speechModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"speechModel"});return J}},VH=class extends I{constructor(Z){super({name:"AI_NoTranscriptGeneratedError",message:"No transcript generated."});this.responses=Z.responses}};async function zq({model:Z,audio:$,providerOptions:Q={},maxRetries:X,abortSignal:Y,headers:J}){if(Z.specificationVersion!=="v2")throw new i0({version:Z.specificationVersion,provider:Z.provider,modelId:Z.modelId});let{retry:W}=cZ({maxRetries:X,abortSignal:Y}),H=o(J!=null?J:{},`ai/${CZ}`),K=$ instanceof URL?(await h5({url:$})).data:N4($),G=await W(()=>{var F;return Z.doGenerate({audio:K,abortSignal:Y,headers:H,providerOptions:Q,mediaType:(F=G1({data:K,signatures:k5}))!=null?F:"audio/wav"})});if(H0(G.warnings),!G.text)throw new VH({responses:[G.response]});return new DH({text:G.text,segments:G.segments,language:G.language,durationInSeconds:G.durationInSeconds,warnings:G.warnings,responses:[G.response],providerMetadata:G.providerMetadata})}var DH=class{constructor(Z){var $;this.text=Z.text,this.segments=Z.segments,this.language=Z.language,this.durationInSeconds=Z.durationInSeconds,this.warnings=Z.warnings,this.responses=Z.responses,this.providerMetadata=($=Z.providerMetadata)!=null?$:{}}};async function LH({stream:Z,onTextPart:$}){let Q=Z.pipeThrough(new TextDecoderStream).getReader();while(!0){let{done:X,value:Y}=await Q.read();if(X)break;await $(Y)}}var wH=()=>fetch;async function Wq({api:Z,prompt:$,credentials:Q,headers:X,body:Y,streamProtocol:J="data",setCompletion:W,setLoading:H,setError:K,setAbortController:G,onFinish:F,onError:U,fetch:q=wH()}){var B;try{H(!0),K(void 0);let j=new AbortController;G(j),W("");let V=await q(Z,{method:"POST",body:JSON.stringify({prompt:$,...Y}),credentials:Q,headers:o({"Content-Type":"application/json",...X},`ai-sdk/${CZ}`,Q0()),signal:j.signal}).catch((O)=>{throw O});if(!V.ok)throw Error((B=await V.text())!=null?B:"Failed to fetch the chat response.");if(!V.body)throw Error("The response body is empty.");let L="";switch(J){case"text":{await LH({stream:V.body,onTextPart:(O)=>{L+=O,W(L)}});break}case"data":{await j1({stream:c0({stream:V.body,schema:WJ}).pipeThrough(new TransformStream({async transform(O){if(!O.success)throw O.error;let P=O.value;if(P.type==="text-delta")L+=P.delta,W(L);else if(P.type==="error")throw Error(P.errorText)}})),onError:(O)=>{throw O}});break}default:throw Error(`Unknown stream protocol: ${J}`)}if(F)F($,L);return G(null),L}catch(j){if(j.name==="AbortError")return G(null),null;if(j instanceof Error){if(U)U(j)}K(j)}finally{H(!1)}}async function AH(Z){if(Z==null)return[];if(!globalThis.FileList||!(Z instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(Z).map(async($)=>{let{name:Q,type:X}=$,Y=await new Promise((J,W)=>{let H=new FileReader;H.onload=(K)=>{var G;J((G=K.target)==null?void 0:G.result)},H.onerror=(K)=>W(K),H.readAsDataURL($)});return{type:"file",mediaType:X,filename:Q,url:Y}}))}var LJ=class{constructor({api:Z="/api/chat",credentials:$,headers:Q,body:X,fetch:Y,prepareSendMessagesRequest:J,prepareReconnectToStreamRequest:W}){this.api=Z,this.credentials=$,this.headers=Q,this.body=X,this.fetch=Y,this.prepareSendMessagesRequest=J,this.prepareReconnectToStreamRequest=W}async sendMessages({abortSignal:Z,...$}){var Q,X,Y,J,W;let H=await JZ(this.body),K=await JZ(this.headers),G=await JZ(this.credentials),F={...$0(K),...$0($.headers)},U=await((Q=this.prepareSendMessagesRequest)==null?void 0:Q.call(this,{api:this.api,id:$.chatId,messages:$.messages,body:{...H,...$.body},headers:F,credentials:G,requestMetadata:$.metadata,trigger:$.trigger,messageId:$.messageId})),q=(X=U==null?void 0:U.api)!=null?X:this.api,B=(U==null?void 0:U.headers)!==void 0?$0(U.headers):F,j=(U==null?void 0:U.body)!==void 0?U.body:{...H,...$.body,id:$.chatId,messages:$.messages,trigger:$.trigger,messageId:$.messageId},V=(Y=U==null?void 0:U.credentials)!=null?Y:G,O=await((J=this.fetch)!=null?J:globalThis.fetch)(q,{method:"POST",headers:o({"Content-Type":"application/json",...B},`ai-sdk/${CZ}`,Q0()),body:JSON.stringify(j),credentials:V,signal:Z});if(!O.ok)throw Error((W=await O.text())!=null?W:"Failed to fetch the chat response.");if(!O.body)throw Error("The response body is empty.");return this.processResponseStream(O.body)}async reconnectToStream(Z){var $,Q,X,Y,J;let W=await JZ(this.body),H=await JZ(this.headers),K=await JZ(this.credentials),G={...$0(H),...$0(Z.headers)},F=await(($=this.prepareReconnectToStreamRequest)==null?void 0:$.call(this,{api:this.api,id:Z.chatId,body:{...W,...Z.body},headers:G,credentials:K,requestMetadata:Z.metadata})),U=(Q=F==null?void 0:F.api)!=null?Q:`${this.api}/${Z.chatId}/stream`,q=(F==null?void 0:F.headers)!==void 0?$0(F.headers):G,B=(X=F==null?void 0:F.credentials)!=null?X:K,V=await((Y=this.fetch)!=null?Y:globalThis.fetch)(U,{method:"GET",headers:o(q,`ai-sdk/${CZ}`,Q0()),credentials:B});if(V.status===204)return null;if(!V.ok)throw Error((J=await V.text())!=null?J:"Failed to fetch the chat response.");if(!V.body)throw Error("The response body is empty.");return this.processResponseStream(V.body)}},EH=class extends LJ{constructor(Z={}){super(Z)}processResponseStream(Z){return c0({stream:Z,schema:WJ}).pipeThrough(new TransformStream({async transform($,Q){if(!$.success)throw $.error;Q.enqueue($.value)}}))}},Bq=class{constructor({generateId:Z=Y0,id:$=Z(),transport:Q=new EH,messageMetadataSchema:X,dataPartSchemas:Y,state:J,onError:W,onToolCall:H,onFinish:K,onData:G,sendAutomaticallyWhen:F}){this.activeResponse=void 0,this.jobExecutor=new QH,this.sendMessage=async(U,q)=>{var B,j,V,L;if(U==null){await this.makeRequest({trigger:"submit-message",messageId:(B=this.lastMessage)==null?void 0:B.id,...q});return}let O;if("text"in U||"files"in U)O={parts:[...Array.isArray(U.files)?U.files:await AH(U.files),..."text"in U&&U.text!=null?[{type:"text",text:U.text}]:[]]};else O=U;if(U.messageId!=null){let P=this.state.messages.findIndex((y)=>y.id===U.messageId);if(P===-1)throw Error(`message with id ${U.messageId} not found`);if(this.state.messages[P].role!=="user")throw Error(`message with id ${U.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,P+1),this.state.replaceMessage(P,{...O,id:U.messageId,role:(j=O.role)!=null?j:"user",metadata:U.metadata})}else this.state.pushMessage({...O,id:(V=O.id)!=null?V:this.generateId(),role:(L=O.role)!=null?L:"user",metadata:U.metadata});await this.makeRequest({trigger:"submit-message",messageId:U.messageId,...q})},this.regenerate=async({messageId:U,...q}={})=>{let B=U==null?this.state.messages.length-1:this.state.messages.findIndex((j)=>j.id===U);if(B===-1)throw Error(`message ${U} not found`);this.state.messages=this.state.messages.slice(0,this.messages[B].role==="assistant"?B:B+1),await this.makeRequest({trigger:"regenerate-message",messageId:U,...q})},this.resumeStream=async(U={})=>{await this.makeRequest({trigger:"resume-stream",...U})},this.clearError=()=>{if(this.status==="error")this.state.error=void 0,this.setStatus({status:"ready"})},this.addToolResult=async({state:U="output-available",tool:q,toolCallId:B,output:j,errorText:V})=>this.jobExecutor.run(async()=>{var L,O;let P=this.state.messages,y=P[P.length-1];if(this.state.replaceMessage(P.length-1,{...y,parts:y.parts.map((N)=>d0(N)&&N.toolCallId===B?{...N,state:U,output:j,errorText:V}:N)}),this.activeResponse)this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map((N)=>d0(N)&&N.toolCallId===B?{...N,state:U,output:j,errorText:V}:N);if(this.status!=="streaming"&&this.status!=="submitted"&&((L=this.sendAutomaticallyWhen)==null?void 0:L.call(this,{messages:this.state.messages})))this.makeRequest({trigger:"submit-message",messageId:(O=this.lastMessage)==null?void 0:O.id})}),this.stop=async()=>{var U;if(this.status!=="streaming"&&this.status!=="submitted")return;if((U=this.activeResponse)==null?void 0:U.abortController)this.activeResponse.abortController.abort()},this.id=$,this.transport=Q,this.generateId=Z,this.messageMetadataSchema=X,this.dataPartSchemas=Y,this.state=J,this.onError=W,this.onToolCall=H,this.onFinish=K,this.onData=G,this.sendAutomaticallyWhen=F}get status(){return this.state.status}setStatus({status:Z,error:$}){if(this.status===Z)return;this.state.status=Z,this.state.error=$}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(Z){this.state.messages=Z}async makeRequest({trigger:Z,metadata:$,headers:Q,body:X,messageId:Y}){var J,W,H;this.setStatus({status:"submitted",error:void 0});let K=this.lastMessage,G=!1,F=!1,U=!1;try{let q={state:g$({lastMessage:this.state.snapshot(K),messageId:this.generateId()}),abortController:new AbortController};q.abortController.signal.addEventListener("abort",()=>{G=!0}),this.activeResponse=q;let B;if(Z==="resume-stream"){let V=await this.transport.reconnectToStream({chatId:this.id,metadata:$,headers:Q,body:X});if(V==null){this.setStatus({status:"ready"});return}B=V}else B=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:q.abortController.signal,metadata:$,headers:Q,body:X,trigger:Z,messageId:Y});let j=(V)=>this.jobExecutor.run(()=>V({state:q.state,write:()=>{var L;if(this.setStatus({status:"streaming"}),q.state.message.id===((L=this.lastMessage)==null?void 0:L.id))this.state.replaceMessage(this.state.messages.length-1,q.state.message);else this.state.pushMessage(q.state.message)}}));await j1({stream:m$({stream:B,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:j,onError:(V)=>{throw V}}),onError:(V)=>{throw V}}),this.setStatus({status:"ready"})}catch(q){if(G||q.name==="AbortError")return G=!0,this.setStatus({status:"ready"}),null;if(U=!0,q instanceof TypeError&&(q.message.toLowerCase().includes("fetch")||q.message.toLowerCase().includes("network")))F=!0;if(this.onError&&q instanceof Error)this.onError(q);this.setStatus({status:"error",error:q})}finally{try{(J=this.onFinish)==null||J.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:G,isDisconnect:F,isError:U})}catch(q){console.error(q)}this.activeResponse=void 0}if(((W=this.sendAutomaticallyWhen)==null?void 0:W.call(this,{messages:this.state.messages}))&&!U)await this.makeRequest({trigger:"submit-message",messageId:(H=this.lastMessage)==null?void 0:H.id,metadata:$,headers:Q,body:X})}};function Fq({messages:Z}){let $=Z[Z.length-1];if(!$)return!1;if($.role!=="assistant")return!1;let Q=$.parts.reduce((Y,J,W)=>{return J.type==="step-start"?W:Y},-1),X=$.parts.slice(Q+1).filter(d0).filter((Y)=>!Y.providerExecuted);return X.length>0&&X.every((Y)=>Y.state==="output-available"||Y.state==="output-error")}function PH({stream:Z}){return Z.pipeThrough(new TransformStream({start($){$.enqueue({type:"start"}),$.enqueue({type:"start-step"}),$.enqueue({type:"text-start",id:"text-1"})},async transform($,Q){Q.enqueue({type:"text-delta",id:"text-1",delta:$})},async flush($){$.enqueue({type:"text-end",id:"text-1"}),$.enqueue({type:"finish-step"}),$.enqueue({type:"finish"})}}))}var Uq=class extends LJ{constructor(Z={}){super(Z)}processResponseStream(Z){return PH({stream:Z.pipeThrough(new TextDecoderStream)})}},IH=BZ(()=>GZ(z.array(z.object({id:z.string(),role:z.enum(["system","user","assistant"]),metadata:z.unknown().optional(),parts:z.array(z.union([z.object({type:z.literal("text"),text:z.string(),state:z.enum(["streaming","done"]).optional(),providerMetadata:k.optional()}),z.object({type:z.literal("reasoning"),text:z.string(),state:z.enum(["streaming","done"]).optional(),providerMetadata:k.optional()}),z.object({type:z.literal("source-url"),sourceId:z.string(),url:z.string(),title:z.string().optional(),providerMetadata:k.optional()}),z.object({type:z.literal("source-document"),sourceId:z.string(),mediaType:z.string(),title:z.string(),filename:z.string().optional(),providerMetadata:k.optional()}),z.object({type:z.literal("file"),mediaType:z.string(),filename:z.string().optional(),url:z.string(),providerMetadata:k.optional()}),z.object({type:z.literal("step-start")}),z.object({type:z.string().startsWith("data-"),id:z.string().optional(),data:z.unknown()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("input-streaming"),input:z.unknown().optional(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("input-available"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("output-available"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.unknown(),errorText:z.never().optional(),callProviderMetadata:k.optional(),preliminary:z.boolean().optional()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("output-error"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.string(),callProviderMetadata:k.optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("input-streaming"),providerExecuted:z.boolean().optional(),input:z.unknown().optional(),output:z.never().optional(),errorText:z.never().optional(),approval:z.never().optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("input-available"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.never().optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("approval-requested"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.never().optional(),reason:z.never().optional()})}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("approval-responded"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.boolean(),reason:z.string().optional()})}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("output-available"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.unknown(),errorText:z.never().optional(),callProviderMetadata:k.optional(),preliminary:z.boolean().optional(),approval:z.object({id:z.string(),approved:z.literal(!0),reason:z.string().optional()}).optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("output-error"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.never().optional(),errorText:z.string(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.literal(!0),reason:z.string().optional()}).optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("output-denied"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.literal(!1),reason:z.string().optional()})})]))}))));async function fH({messages:Z,metadataSchema:$,dataSchemas:Q,tools:X}){try{if(Z==null)return{success:!1,error:new l({parameter:"messages",value:Z,message:"messages parameter must be provided"})};let Y=await mZ({value:Z,schema:IH});if($)for(let J of Y)await mZ({value:J.metadata,schema:$});if(Q)for(let J of Y){let W=J.parts.filter((H)=>H.type.startsWith("data-"));for(let H of W){let K=H.type.slice(5),G=Q[K];if(!G)return{success:!1,error:new PZ({value:H.data,cause:`No data schema found for data part ${K}`})};await mZ({value:H.data,schema:G})}}if(X)for(let J of Y){let W=J.parts.filter((H)=>H.type.startsWith("tool-"));for(let H of W){let K=H.type.slice(5),G=X[K];if(!G)return{success:!1,error:new PZ({value:H.input,cause:`No tool schema found for tool part ${K}`})};if(H.state==="input-available"||H.state==="output-available"||H.state==="output-error")await mZ({value:H.input,schema:G.inputSchema});if(H.state==="output-available"&&G.outputSchema)await mZ({value:H.output,schema:G.outputSchema})}}return{success:!0,data:Y}}catch(Y){return{success:!1,error:Y}}}async function Vq({messages:Z,metadataSchema:$,dataSchemas:Q,tools:X}){let Y=await fH({messages:Z,metadataSchema:$,dataSchemas:Q,tools:X});if(!Y.success)throw Y.error;return Y.data}function Lq({execute:Z,onError:$=sZ,originalMessages:Q,onFinish:X,generateId:Y=Y0}){let J,W=[],H=new ReadableStream({start(F){J=F}});function K(F){try{J.enqueue(F)}catch(U){}}try{let F=Z({writer:{write(U){K(U)},merge(U){W.push((async()=>{let q=U.getReader();while(!0){let{done:B,value:j}=await q.read();if(B)break;K(j)}})().catch((q)=>{K({type:"error",errorText:$(q)})}))},onError:$}});if(F)W.push(F.catch((U)=>{K({type:"error",errorText:$(U)})}))}catch(F){K({type:"error",errorText:$(F)})}return new Promise(async(F)=>{while(W.length>0)await W.shift();F()}).finally(()=>{try{J.close()}catch(F){}}),GJ({stream:H,messageId:Y(),originalMessages:Q,onFinish:X,onError:$})}function wq({message:Z,stream:$,onError:Q,terminateOnError:X=!1}){var Y;let J,W=!1,H=new ReadableStream({start(F){J=F}}),K=g$({messageId:(Y=Z==null?void 0:Z.id)!=null?Y:"",lastMessage:Z}),G=(F)=>{if(Q==null||Q(F),!W&&X)W=!0,J==null||J.error(F)};return j1({stream:m$({stream:$,runUpdateMessageJob(F){return F({state:K,write:()=>{J==null||J.enqueue(structuredClone(K.message))}})},onError:G}),onError:G}).finally(()=>{if(!W)J==null||J.close()}),dZ(H)}export{GZ as zodSchema,tK as wrapProvider,NJ as wrapLanguageModel,Vq as validateUIMessages,l5 as userModelMessageSchema,WJ as uiMessageChunkSchema,s5 as toolModelMessageSchema,hz as tool,p5 as systemModelMessageSchema,c4 as streamText,dK as streamObject,$J as stepCountIs,sK as smoothStream,aK as simulateStreamingMiddleware,mK as simulateReadableStream,fH as safeValidateUIMessages,wq as readUIMessageStream,pK as pruneMessages,m4 as pipeUIMessageStreamToResponse,YJ as pipeTextStreamToResponse,k$ as parsePartialJson,c0 as parseJsonEventStream,o5 as modelMessageSchema,Fq as lastAssistantMessageIsCompleteWithToolCalls,mz as jsonSchema,N0 as isToolUIPart,d0 as isToolOrDynamicToolUIPart,R$ as isTextUIPart,k9 as isReasoningUIPart,T$ as isFileUIPart,z1 as isDeepEqualData,f$ as isDataUIPart,FK as hasToolCall,g4 as getToolOrDynamicToolName,Y1 as getToolName,hK as getTextFromDataUrl,b4 as generateText,_K as generateObject,Y0 as generateId,C1 as gateway,rK as extractReasoningMiddleware,zq as experimental_transcribe,cK as experimental_generateSpeech,MK as experimental_generateImage,Zq as experimental_customProvider,Xq as experimental_createProviderRegistry,RK as embedMany,IK as embed,gz as dynamicTool,oK as defaultSettingsMiddleware,FH as customProvider,_4 as createUIMessageStreamResponse,Lq as createUIMessageStream,XJ as createTextStreamResponse,NH as createProviderRegistry,uZ as createIdGenerator,_Q as createGateway,kK as cosineSimilarity,XK as coreUserMessageSchema,YK as coreToolMessageSchema,QK as coreSystemMessageSchema,zK as coreMessageSchema,JK as coreAssistantMessageSchema,BJ as convertToModelMessages,AK as convertToCoreMessages,AH as convertFileListToFileUIParts,j1 as consumeStream,Wq as callCompletionApi,n5 as assistantModelMessageSchema,MZ as asSchema,i0 as UnsupportedModelVersionError,u0 as UnsupportedFunctionalityError,HJ as UI_MESSAGE_STREAM_HEADERS,PZ as TypeValidationError,X4 as ToolCallRepairError,kz as TooManyEmbeddingValuesForCallError,Uq as TextStreamChatTransport,QH as SerialJobExecutor,y9 as RetryError,HH as Output,C$ as NoSuchToolError,jH as NoSuchProviderError,YZ as NoSuchModelError,Z4 as NoSpeechGeneratedError,n9 as NoOutputSpecifiedError,ez as NoOutputGeneratedError,X0 as NoObjectGeneratedError,rz as NoImageGeneratedError,xz as NoContentGeneratedError,W4 as MessageConversionError,_z as LoadSettingError,vz as LoadAPIKeyError,zJ as JsonToSseTransformStream,v$ as JSONParseError,X5 as InvalidToolInputError,TG as InvalidStreamPartError,yz as InvalidResponseDataError,lZ as InvalidPromptError,z4 as InvalidMessageRoleError,S9 as InvalidDataContentError,l as InvalidArgumentError,LJ as HttpChatTransport,EK as Experimental_Agent,Sz as EmptyResponseBodyError,I$ as DownloadError,EH as DefaultChatTransport,Bq as AbstractChat,M0 as APICallError,I as AISDKError};export{c4 as K};
23
+ `,startWithReasoning:Q=!1}){let X=`<${Z}>`,Y=`</${Z}>`;return{middlewareVersion:"v2",wrapGenerate:async({doGenerate:J})=>{let{content:W,...H}=await J(),K=[];for(let G of W){if(G.type!=="text"){K.push(G);continue}let F=Q?X+G.text:G.text,U=new RegExp(`${X}(.*?)${Y}`,"gs"),q=Array.from(F.matchAll(U));if(!q.length){K.push(G);continue}let B=q.map((V)=>V[1]).join($),j=F;for(let V=q.length-1;V>=0;V--){let L=q[V],O=j.slice(0,L.index),P=j.slice(L.index+L[0].length);j=O+(O.length>0&&P.length>0?$:"")+P}K.push({type:"reasoning",text:B}),K.push({type:"text",text:j})}return{content:K,...H}},wrapStream:async({doStream:J})=>{let{stream:W,...H}=await J(),K={},G;return{stream:W.pipeThrough(new TransformStream({transform:(F,U)=>{if(F.type==="text-start"){G=F;return}if(F.type==="text-end"&&G)U.enqueue(G),G=void 0;if(F.type!=="text-delta"){U.enqueue(F);return}if(K[F.id]==null)K[F.id]={isFirstReasoning:!0,isFirstText:!0,afterSwitch:!1,isReasoning:Q,buffer:"",idCounter:0,textId:F.id};let q=K[F.id];q.buffer+=F.delta;function B(j){if(j.length>0){let V=q.afterSwitch&&(q.isReasoning?!q.isFirstReasoning:!q.isFirstText)?$:"";if(q.isReasoning&&(q.afterSwitch||q.isFirstReasoning))U.enqueue({type:"reasoning-start",id:`reasoning-${q.idCounter}`});if(q.isReasoning)U.enqueue({type:"reasoning-delta",delta:V+j,id:`reasoning-${q.idCounter}`});else{if(G)U.enqueue(G),G=void 0;U.enqueue({type:"text-delta",delta:V+j,id:q.textId})}if(q.afterSwitch=!1,q.isReasoning)q.isFirstReasoning=!1;else q.isFirstText=!1}}do{let j=q.isReasoning?Y:X,V=qH(q.buffer,j);if(V==null){B(q.buffer),q.buffer="";break}if(B(q.buffer.slice(0,V)),V+j.length<=q.buffer.length){if(q.buffer=q.buffer.slice(V+j.length),q.isReasoning)U.enqueue({type:"reasoning-end",id:`reasoning-${q.idCounter++}`});q.isReasoning=!q.isReasoning,q.afterSwitch=!0}else{q.buffer=q.buffer.slice(V);break}}while(!0)}})),...H}}}}function aK(){return{middlewareVersion:"v2",wrapStream:async({doGenerate:Z})=>{let $=await Z(),Q=0;return{stream:new ReadableStream({start(Y){Y.enqueue({type:"stream-start",warnings:$.warnings}),Y.enqueue({type:"response-metadata",...$.response});for(let J of $.content)switch(J.type){case"text":{if(J.text.length>0)Y.enqueue({type:"text-start",id:String(Q)}),Y.enqueue({type:"text-delta",id:String(Q),delta:J.text}),Y.enqueue({type:"text-end",id:String(Q)}),Q++;break}case"reasoning":{Y.enqueue({type:"reasoning-start",id:String(Q),providerMetadata:J.providerMetadata}),Y.enqueue({type:"reasoning-delta",id:String(Q),delta:J.text}),Y.enqueue({type:"reasoning-end",id:String(Q)}),Q++;break}default:{Y.enqueue(J);break}}Y.enqueue({type:"finish",finishReason:$.finishReason,usage:$.usage,providerMetadata:$.providerMetadata}),Y.close()}}),request:$.request,response:$.response}}}}var NJ=({model:Z,middleware:$,modelId:Q,providerId:X})=>{return[...J1($)].reverse().reduce((Y,J)=>{return BH({model:Y,middleware:J,modelId:Q,providerId:X})},Z)},BH=({model:Z,middleware:{transformParams:$,wrapGenerate:Q,wrapStream:X,overrideProvider:Y,overrideModelId:J,overrideSupportedUrls:W},modelId:H,providerId:K})=>{var G,F,U;async function q({params:B,type:j}){return $?await $({params:B,type:j,model:Z}):B}return{specificationVersion:"v2",provider:(G=K!=null?K:Y==null?void 0:Y({model:Z}))!=null?G:Z.provider,modelId:(F=H!=null?H:J==null?void 0:J({model:Z}))!=null?F:Z.modelId,supportedUrls:(U=W==null?void 0:W({model:Z}))!=null?U:Z.supportedUrls,async doGenerate(B){let j=await q({params:B,type:"generate"}),V=async()=>Z.doGenerate(j);return Q?Q({doGenerate:V,doStream:async()=>Z.doStream(j),params:j,model:Z}):V()},async doStream(B){let j=await q({params:B,type:"stream"}),V=async()=>Z.doGenerate(j),L=async()=>Z.doStream(j);return X?X({doGenerate:V,doStream:L,params:j,model:Z}):L()}}};function tK({provider:Z,languageModelMiddleware:$}){return{languageModel(X){let Y=Z.languageModel(X);return Y=NJ({model:Y,middleware:$}),Y},textEmbeddingModel:Z.textEmbeddingModel,imageModel:Z.imageModel,transcriptionModel:Z.transcriptionModel,speechModel:Z.speechModel}}function FH({languageModels:Z,textEmbeddingModels:$,imageModels:Q,transcriptionModels:X,speechModels:Y,fallbackProvider:J}){return{languageModel(W){if(Z!=null&&W in Z)return Z[W];if(J)return J.languageModel(W);throw new YZ({modelId:W,modelType:"languageModel"})},textEmbeddingModel(W){if($!=null&&W in $)return $[W];if(J)return J.textEmbeddingModel(W);throw new YZ({modelId:W,modelType:"textEmbeddingModel"})},imageModel(W){if(Q!=null&&W in Q)return Q[W];if(J==null?void 0:J.imageModel)return J.imageModel(W);throw new YZ({modelId:W,modelType:"imageModel"})},transcriptionModel(W){if(X!=null&&W in X)return X[W];if(J==null?void 0:J.transcriptionModel)return J.transcriptionModel(W);throw new YZ({modelId:W,modelType:"transcriptionModel"})},speechModel(W){if(Y!=null&&W in Y)return Y[W];if(J==null?void 0:J.speechModel)return J.speechModel(W);throw new YZ({modelId:W,modelType:"speechModel"})}}}var Zq=FH,OJ="AI_NoSuchProviderError",VJ=`vercel.ai.error.${OJ}`,UH=Symbol.for(VJ),DJ,jH=class extends YZ{constructor({modelId:Z,modelType:$,providerId:Q,availableProviders:X,message:Y=`No such provider: ${Q} (available providers: ${X.join()})`}){super({errorName:OJ,modelId:Z,modelType:$,message:Y});this[DJ]=!0,this.providerId=Q,this.availableProviders=X}static isInstance(Z){return I.hasMarker(Z,VJ)}};DJ=UH;function NH(Z,{separator:$=":",languageModelMiddleware:Q}={}){let X=new OH({separator:$,languageModelMiddleware:Q});for(let[Y,J]of Object.entries(Z))X.registerProvider({id:Y,provider:J});return X}var Xq=NH,OH=class{constructor({separator:Z,languageModelMiddleware:$}){this.providers={},this.separator=Z,this.languageModelMiddleware=$}registerProvider({id:Z,provider:$}){this.providers[Z]=$}getProvider(Z,$){let Q=this.providers[Z];if(Q==null)throw new jH({modelId:Z,modelType:$,providerId:Z,availableProviders:Object.keys(this.providers)});return Q}splitId(Z,$){let Q=Z.indexOf(this.separator);if(Q===-1)throw new YZ({modelId:Z,modelType:$,message:`Invalid ${$} id for registry: ${Z} (must be in the format "providerId${this.separator}modelId")`});return[Z.slice(0,Q),Z.slice(Q+this.separator.length)]}languageModel(Z){var $,Q;let[X,Y]=this.splitId(Z,"languageModel"),J=(Q=($=this.getProvider(X,"languageModel")).languageModel)==null?void 0:Q.call($,Y);if(J==null)throw new YZ({modelId:Z,modelType:"languageModel"});if(this.languageModelMiddleware!=null)J=NJ({model:J,middleware:this.languageModelMiddleware});return J}textEmbeddingModel(Z){var $;let[Q,X]=this.splitId(Z,"textEmbeddingModel"),Y=this.getProvider(Q,"textEmbeddingModel"),J=($=Y.textEmbeddingModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"textEmbeddingModel"});return J}imageModel(Z){var $;let[Q,X]=this.splitId(Z,"imageModel"),Y=this.getProvider(Q,"imageModel"),J=($=Y.imageModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"imageModel"});return J}transcriptionModel(Z){var $;let[Q,X]=this.splitId(Z,"transcriptionModel"),Y=this.getProvider(Q,"transcriptionModel"),J=($=Y.transcriptionModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"transcriptionModel"});return J}speechModel(Z){var $;let[Q,X]=this.splitId(Z,"speechModel"),Y=this.getProvider(Q,"speechModel"),J=($=Y.speechModel)==null?void 0:$.call(Y,X);if(J==null)throw new YZ({modelId:Z,modelType:"speechModel"});return J}},VH=class extends I{constructor(Z){super({name:"AI_NoTranscriptGeneratedError",message:"No transcript generated."});this.responses=Z.responses}};async function zq({model:Z,audio:$,providerOptions:Q={},maxRetries:X,abortSignal:Y,headers:J}){if(Z.specificationVersion!=="v2")throw new i0({version:Z.specificationVersion,provider:Z.provider,modelId:Z.modelId});let{retry:W}=cZ({maxRetries:X,abortSignal:Y}),H=o(J!=null?J:{},`ai/${CZ}`),K=$ instanceof URL?(await h5({url:$})).data:N4($),G=await W(()=>{var F;return Z.doGenerate({audio:K,abortSignal:Y,headers:H,providerOptions:Q,mediaType:(F=G1({data:K,signatures:k5}))!=null?F:"audio/wav"})});if(H0(G.warnings),!G.text)throw new VH({responses:[G.response]});return new DH({text:G.text,segments:G.segments,language:G.language,durationInSeconds:G.durationInSeconds,warnings:G.warnings,responses:[G.response],providerMetadata:G.providerMetadata})}var DH=class{constructor(Z){var $;this.text=Z.text,this.segments=Z.segments,this.language=Z.language,this.durationInSeconds=Z.durationInSeconds,this.warnings=Z.warnings,this.responses=Z.responses,this.providerMetadata=($=Z.providerMetadata)!=null?$:{}}};async function LH({stream:Z,onTextPart:$}){let Q=Z.pipeThrough(new TextDecoderStream).getReader();while(!0){let{done:X,value:Y}=await Q.read();if(X)break;await $(Y)}}var wH=()=>fetch;async function Wq({api:Z,prompt:$,credentials:Q,headers:X,body:Y,streamProtocol:J="data",setCompletion:W,setLoading:H,setError:K,setAbortController:G,onFinish:F,onError:U,fetch:q=wH()}){var B;try{H(!0),K(void 0);let j=new AbortController;G(j),W("");let V=await q(Z,{method:"POST",body:JSON.stringify({prompt:$,...Y}),credentials:Q,headers:o({"Content-Type":"application/json",...X},`ai-sdk/${CZ}`,Q0()),signal:j.signal}).catch((O)=>{throw O});if(!V.ok)throw Error((B=await V.text())!=null?B:"Failed to fetch the chat response.");if(!V.body)throw Error("The response body is empty.");let L="";switch(J){case"text":{await LH({stream:V.body,onTextPart:(O)=>{L+=O,W(L)}});break}case"data":{await j1({stream:c0({stream:V.body,schema:WJ}).pipeThrough(new TransformStream({async transform(O){if(!O.success)throw O.error;let P=O.value;if(P.type==="text-delta")L+=P.delta,W(L);else if(P.type==="error")throw Error(P.errorText)}})),onError:(O)=>{throw O}});break}default:throw Error(`Unknown stream protocol: ${J}`)}if(F)F($,L);return G(null),L}catch(j){if(j.name==="AbortError")return G(null),null;if(j instanceof Error){if(U)U(j)}K(j)}finally{H(!1)}}async function AH(Z){if(Z==null)return[];if(!globalThis.FileList||!(Z instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(Z).map(async($)=>{let{name:Q,type:X}=$,Y=await new Promise((J,W)=>{let H=new FileReader;H.onload=(K)=>{var G;J((G=K.target)==null?void 0:G.result)},H.onerror=(K)=>W(K),H.readAsDataURL($)});return{type:"file",mediaType:X,filename:Q,url:Y}}))}var LJ=class{constructor({api:Z="/api/chat",credentials:$,headers:Q,body:X,fetch:Y,prepareSendMessagesRequest:J,prepareReconnectToStreamRequest:W}){this.api=Z,this.credentials=$,this.headers=Q,this.body=X,this.fetch=Y,this.prepareSendMessagesRequest=J,this.prepareReconnectToStreamRequest=W}async sendMessages({abortSignal:Z,...$}){var Q,X,Y,J,W;let H=await JZ(this.body),K=await JZ(this.headers),G=await JZ(this.credentials),F={...$0(K),...$0($.headers)},U=await((Q=this.prepareSendMessagesRequest)==null?void 0:Q.call(this,{api:this.api,id:$.chatId,messages:$.messages,body:{...H,...$.body},headers:F,credentials:G,requestMetadata:$.metadata,trigger:$.trigger,messageId:$.messageId})),q=(X=U==null?void 0:U.api)!=null?X:this.api,B=(U==null?void 0:U.headers)!==void 0?$0(U.headers):F,j=(U==null?void 0:U.body)!==void 0?U.body:{...H,...$.body,id:$.chatId,messages:$.messages,trigger:$.trigger,messageId:$.messageId},V=(Y=U==null?void 0:U.credentials)!=null?Y:G,O=await((J=this.fetch)!=null?J:globalThis.fetch)(q,{method:"POST",headers:o({"Content-Type":"application/json",...B},`ai-sdk/${CZ}`,Q0()),body:JSON.stringify(j),credentials:V,signal:Z});if(!O.ok)throw Error((W=await O.text())!=null?W:"Failed to fetch the chat response.");if(!O.body)throw Error("The response body is empty.");return this.processResponseStream(O.body)}async reconnectToStream(Z){var $,Q,X,Y,J;let W=await JZ(this.body),H=await JZ(this.headers),K=await JZ(this.credentials),G={...$0(H),...$0(Z.headers)},F=await(($=this.prepareReconnectToStreamRequest)==null?void 0:$.call(this,{api:this.api,id:Z.chatId,body:{...W,...Z.body},headers:G,credentials:K,requestMetadata:Z.metadata})),U=(Q=F==null?void 0:F.api)!=null?Q:`${this.api}/${Z.chatId}/stream`,q=(F==null?void 0:F.headers)!==void 0?$0(F.headers):G,B=(X=F==null?void 0:F.credentials)!=null?X:K,V=await((Y=this.fetch)!=null?Y:globalThis.fetch)(U,{method:"GET",headers:o(q,`ai-sdk/${CZ}`,Q0()),credentials:B});if(V.status===204)return null;if(!V.ok)throw Error((J=await V.text())!=null?J:"Failed to fetch the chat response.");if(!V.body)throw Error("The response body is empty.");return this.processResponseStream(V.body)}},EH=class extends LJ{constructor(Z={}){super(Z)}processResponseStream(Z){return c0({stream:Z,schema:WJ}).pipeThrough(new TransformStream({async transform($,Q){if(!$.success)throw $.error;Q.enqueue($.value)}}))}},Bq=class{constructor({generateId:Z=Y0,id:$=Z(),transport:Q=new EH,messageMetadataSchema:X,dataPartSchemas:Y,state:J,onError:W,onToolCall:H,onFinish:K,onData:G,sendAutomaticallyWhen:F}){this.activeResponse=void 0,this.jobExecutor=new QH,this.sendMessage=async(U,q)=>{var B,j,V,L;if(U==null){await this.makeRequest({trigger:"submit-message",messageId:(B=this.lastMessage)==null?void 0:B.id,...q});return}let O;if("text"in U||"files"in U)O={parts:[...Array.isArray(U.files)?U.files:await AH(U.files),..."text"in U&&U.text!=null?[{type:"text",text:U.text}]:[]]};else O=U;if(U.messageId!=null){let P=this.state.messages.findIndex((y)=>y.id===U.messageId);if(P===-1)throw Error(`message with id ${U.messageId} not found`);if(this.state.messages[P].role!=="user")throw Error(`message with id ${U.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,P+1),this.state.replaceMessage(P,{...O,id:U.messageId,role:(j=O.role)!=null?j:"user",metadata:U.metadata})}else this.state.pushMessage({...O,id:(V=O.id)!=null?V:this.generateId(),role:(L=O.role)!=null?L:"user",metadata:U.metadata});await this.makeRequest({trigger:"submit-message",messageId:U.messageId,...q})},this.regenerate=async({messageId:U,...q}={})=>{let B=U==null?this.state.messages.length-1:this.state.messages.findIndex((j)=>j.id===U);if(B===-1)throw Error(`message ${U} not found`);this.state.messages=this.state.messages.slice(0,this.messages[B].role==="assistant"?B:B+1),await this.makeRequest({trigger:"regenerate-message",messageId:U,...q})},this.resumeStream=async(U={})=>{await this.makeRequest({trigger:"resume-stream",...U})},this.clearError=()=>{if(this.status==="error")this.state.error=void 0,this.setStatus({status:"ready"})},this.addToolResult=async({state:U="output-available",tool:q,toolCallId:B,output:j,errorText:V})=>this.jobExecutor.run(async()=>{var L,O;let P=this.state.messages,y=P[P.length-1];if(this.state.replaceMessage(P.length-1,{...y,parts:y.parts.map((N)=>d0(N)&&N.toolCallId===B?{...N,state:U,output:j,errorText:V}:N)}),this.activeResponse)this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map((N)=>d0(N)&&N.toolCallId===B?{...N,state:U,output:j,errorText:V}:N);if(this.status!=="streaming"&&this.status!=="submitted"&&((L=this.sendAutomaticallyWhen)==null?void 0:L.call(this,{messages:this.state.messages})))this.makeRequest({trigger:"submit-message",messageId:(O=this.lastMessage)==null?void 0:O.id})}),this.stop=async()=>{var U;if(this.status!=="streaming"&&this.status!=="submitted")return;if((U=this.activeResponse)==null?void 0:U.abortController)this.activeResponse.abortController.abort()},this.id=$,this.transport=Q,this.generateId=Z,this.messageMetadataSchema=X,this.dataPartSchemas=Y,this.state=J,this.onError=W,this.onToolCall=H,this.onFinish=K,this.onData=G,this.sendAutomaticallyWhen=F}get status(){return this.state.status}setStatus({status:Z,error:$}){if(this.status===Z)return;this.state.status=Z,this.state.error=$}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(Z){this.state.messages=Z}async makeRequest({trigger:Z,metadata:$,headers:Q,body:X,messageId:Y}){var J,W,H;this.setStatus({status:"submitted",error:void 0});let K=this.lastMessage,G=!1,F=!1,U=!1;try{let q={state:g$({lastMessage:this.state.snapshot(K),messageId:this.generateId()}),abortController:new AbortController};q.abortController.signal.addEventListener("abort",()=>{G=!0}),this.activeResponse=q;let B;if(Z==="resume-stream"){let V=await this.transport.reconnectToStream({chatId:this.id,metadata:$,headers:Q,body:X});if(V==null){this.setStatus({status:"ready"});return}B=V}else B=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:q.abortController.signal,metadata:$,headers:Q,body:X,trigger:Z,messageId:Y});let j=(V)=>this.jobExecutor.run(()=>V({state:q.state,write:()=>{var L;if(this.setStatus({status:"streaming"}),q.state.message.id===((L=this.lastMessage)==null?void 0:L.id))this.state.replaceMessage(this.state.messages.length-1,q.state.message);else this.state.pushMessage(q.state.message)}}));await j1({stream:m$({stream:B,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:j,onError:(V)=>{throw V}}),onError:(V)=>{throw V}}),this.setStatus({status:"ready"})}catch(q){if(G||q.name==="AbortError")return G=!0,this.setStatus({status:"ready"}),null;if(U=!0,q instanceof TypeError&&(q.message.toLowerCase().includes("fetch")||q.message.toLowerCase().includes("network")))F=!0;if(this.onError&&q instanceof Error)this.onError(q);this.setStatus({status:"error",error:q})}finally{try{(J=this.onFinish)==null||J.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:G,isDisconnect:F,isError:U})}catch(q){console.error(q)}this.activeResponse=void 0}if(((W=this.sendAutomaticallyWhen)==null?void 0:W.call(this,{messages:this.state.messages}))&&!U)await this.makeRequest({trigger:"submit-message",messageId:(H=this.lastMessage)==null?void 0:H.id,metadata:$,headers:Q,body:X})}};function Fq({messages:Z}){let $=Z[Z.length-1];if(!$)return!1;if($.role!=="assistant")return!1;let Q=$.parts.reduce((Y,J,W)=>{return J.type==="step-start"?W:Y},-1),X=$.parts.slice(Q+1).filter(d0).filter((Y)=>!Y.providerExecuted);return X.length>0&&X.every((Y)=>Y.state==="output-available"||Y.state==="output-error")}function PH({stream:Z}){return Z.pipeThrough(new TransformStream({start($){$.enqueue({type:"start"}),$.enqueue({type:"start-step"}),$.enqueue({type:"text-start",id:"text-1"})},async transform($,Q){Q.enqueue({type:"text-delta",id:"text-1",delta:$})},async flush($){$.enqueue({type:"text-end",id:"text-1"}),$.enqueue({type:"finish-step"}),$.enqueue({type:"finish"})}}))}var Uq=class extends LJ{constructor(Z={}){super(Z)}processResponseStream(Z){return PH({stream:Z.pipeThrough(new TextDecoderStream)})}},IH=BZ(()=>GZ(z.array(z.object({id:z.string(),role:z.enum(["system","user","assistant"]),metadata:z.unknown().optional(),parts:z.array(z.union([z.object({type:z.literal("text"),text:z.string(),state:z.enum(["streaming","done"]).optional(),providerMetadata:k.optional()}),z.object({type:z.literal("reasoning"),text:z.string(),state:z.enum(["streaming","done"]).optional(),providerMetadata:k.optional()}),z.object({type:z.literal("source-url"),sourceId:z.string(),url:z.string(),title:z.string().optional(),providerMetadata:k.optional()}),z.object({type:z.literal("source-document"),sourceId:z.string(),mediaType:z.string(),title:z.string(),filename:z.string().optional(),providerMetadata:k.optional()}),z.object({type:z.literal("file"),mediaType:z.string(),filename:z.string().optional(),url:z.string(),providerMetadata:k.optional()}),z.object({type:z.literal("step-start")}),z.object({type:z.string().startsWith("data-"),id:z.string().optional(),data:z.unknown()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("input-streaming"),input:z.unknown().optional(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("input-available"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("output-available"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.unknown(),errorText:z.never().optional(),callProviderMetadata:k.optional(),preliminary:z.boolean().optional()}),z.object({type:z.literal("dynamic-tool"),toolName:z.string(),toolCallId:z.string(),state:z.literal("output-error"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.string(),callProviderMetadata:k.optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("input-streaming"),providerExecuted:z.boolean().optional(),input:z.unknown().optional(),output:z.never().optional(),errorText:z.never().optional(),approval:z.never().optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("input-available"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.never().optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("approval-requested"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.never().optional(),reason:z.never().optional()})}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("approval-responded"),input:z.unknown(),providerExecuted:z.boolean().optional(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.boolean(),reason:z.string().optional()})}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("output-available"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.unknown(),errorText:z.never().optional(),callProviderMetadata:k.optional(),preliminary:z.boolean().optional(),approval:z.object({id:z.string(),approved:z.literal(!0),reason:z.string().optional()}).optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("output-error"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.never().optional(),errorText:z.string(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.literal(!0),reason:z.string().optional()}).optional()}),z.object({type:z.string().startsWith("tool-"),toolCallId:z.string(),state:z.literal("output-denied"),providerExecuted:z.boolean().optional(),input:z.unknown(),output:z.never().optional(),errorText:z.never().optional(),callProviderMetadata:k.optional(),approval:z.object({id:z.string(),approved:z.literal(!1),reason:z.string().optional()})})]))}))));async function fH({messages:Z,metadataSchema:$,dataSchemas:Q,tools:X}){try{if(Z==null)return{success:!1,error:new l({parameter:"messages",value:Z,message:"messages parameter must be provided"})};let Y=await mZ({value:Z,schema:IH});if($)for(let J of Y)await mZ({value:J.metadata,schema:$});if(Q)for(let J of Y){let W=J.parts.filter((H)=>H.type.startsWith("data-"));for(let H of W){let K=H.type.slice(5),G=Q[K];if(!G)return{success:!1,error:new PZ({value:H.data,cause:`No data schema found for data part ${K}`})};await mZ({value:H.data,schema:G})}}if(X)for(let J of Y){let W=J.parts.filter((H)=>H.type.startsWith("tool-"));for(let H of W){let K=H.type.slice(5),G=X[K];if(!G)return{success:!1,error:new PZ({value:H.input,cause:`No tool schema found for tool part ${K}`})};if(H.state==="input-available"||H.state==="output-available"||H.state==="output-error")await mZ({value:H.input,schema:G.inputSchema});if(H.state==="output-available"&&G.outputSchema)await mZ({value:H.output,schema:G.outputSchema})}}return{success:!0,data:Y}}catch(Y){return{success:!1,error:Y}}}async function Vq({messages:Z,metadataSchema:$,dataSchemas:Q,tools:X}){let Y=await fH({messages:Z,metadataSchema:$,dataSchemas:Q,tools:X});if(!Y.success)throw Y.error;return Y.data}function Lq({execute:Z,onError:$=sZ,originalMessages:Q,onFinish:X,generateId:Y=Y0}){let J,W=[],H=new ReadableStream({start(F){J=F}});function K(F){try{J.enqueue(F)}catch(U){}}try{let F=Z({writer:{write(U){K(U)},merge(U){W.push((async()=>{let q=U.getReader();while(!0){let{done:B,value:j}=await q.read();if(B)break;K(j)}})().catch((q)=>{K({type:"error",errorText:$(q)})}))},onError:$}});if(F)W.push(F.catch((U)=>{K({type:"error",errorText:$(U)})}))}catch(F){K({type:"error",errorText:$(F)})}return new Promise(async(F)=>{while(W.length>0)await W.shift();F()}).finally(()=>{try{J.close()}catch(F){}}),GJ({stream:H,messageId:Y(),originalMessages:Q,onFinish:X,onError:$})}function wq({message:Z,stream:$,onError:Q,terminateOnError:X=!1}){var Y;let J,W=!1,H=new ReadableStream({start(F){J=F}}),K=g$({messageId:(Y=Z==null?void 0:Z.id)!=null?Y:"",lastMessage:Z}),G=(F)=>{if(Q==null||Q(F),!W&&X)W=!0,J==null||J.error(F)};return j1({stream:m$({stream:$,runUpdateMessageJob(F){return F({state:K,write:()=>{J==null||J.enqueue(structuredClone(K.message))}})},onError:G}),onError:G}).finally(()=>{if(!W)J==null||J.close()}),dZ(H)}export{GZ as zodSchema,tK as wrapProvider,NJ as wrapLanguageModel,Vq as validateUIMessages,l5 as userModelMessageSchema,WJ as uiMessageChunkSchema,s5 as toolModelMessageSchema,hz as tool,p5 as systemModelMessageSchema,c4 as streamText,dK as streamObject,$J as stepCountIs,sK as smoothStream,aK as simulateStreamingMiddleware,mK as simulateReadableStream,fH as safeValidateUIMessages,wq as readUIMessageStream,pK as pruneMessages,m4 as pipeUIMessageStreamToResponse,YJ as pipeTextStreamToResponse,k$ as parsePartialJson,c0 as parseJsonEventStream,o5 as modelMessageSchema,Fq as lastAssistantMessageIsCompleteWithToolCalls,mz as jsonSchema,N0 as isToolUIPart,d0 as isToolOrDynamicToolUIPart,R$ as isTextUIPart,k9 as isReasoningUIPart,T$ as isFileUIPart,z1 as isDeepEqualData,f$ as isDataUIPart,FK as hasToolCall,g4 as getToolOrDynamicToolName,Y1 as getToolName,hK as getTextFromDataUrl,b4 as generateText,_K as generateObject,Y0 as generateId,C1 as gateway,rK as extractReasoningMiddleware,zq as experimental_transcribe,cK as experimental_generateSpeech,MK as experimental_generateImage,Zq as experimental_customProvider,Xq as experimental_createProviderRegistry,RK as embedMany,IK as embed,gz as dynamicTool,oK as defaultSettingsMiddleware,FH as customProvider,_4 as createUIMessageStreamResponse,Lq as createUIMessageStream,XJ as createTextStreamResponse,NH as createProviderRegistry,uZ as createIdGenerator,_Q as createGateway,kK as cosineSimilarity,XK as coreUserMessageSchema,YK as coreToolMessageSchema,QK as coreSystemMessageSchema,zK as coreMessageSchema,JK as coreAssistantMessageSchema,BJ as convertToModelMessages,AK as convertToCoreMessages,AH as convertFileListToFileUIParts,j1 as consumeStream,Wq as callCompletionApi,n5 as assistantModelMessageSchema,MZ as asSchema,i0 as UnsupportedModelVersionError,u0 as UnsupportedFunctionalityError,HJ as UI_MESSAGE_STREAM_HEADERS,PZ as TypeValidationError,X4 as ToolCallRepairError,kz as TooManyEmbeddingValuesForCallError,Uq as TextStreamChatTransport,QH as SerialJobExecutor,y9 as RetryError,HH as Output,C$ as NoSuchToolError,jH as NoSuchProviderError,YZ as NoSuchModelError,Z4 as NoSpeechGeneratedError,n9 as NoOutputSpecifiedError,ez as NoOutputGeneratedError,X0 as NoObjectGeneratedError,rz as NoImageGeneratedError,xz as NoContentGeneratedError,W4 as MessageConversionError,_z as LoadSettingError,vz as LoadAPIKeyError,zJ as JsonToSseTransformStream,v$ as JSONParseError,X5 as InvalidToolInputError,TG as InvalidStreamPartError,yz as InvalidResponseDataError,lZ as InvalidPromptError,z4 as InvalidMessageRoleError,S9 as InvalidDataContentError,l as InvalidArgumentError,LJ as HttpChatTransport,EK as Experimental_Agent,Sz as EmptyResponseBodyError,I$ as DownloadError,EH as DefaultChatTransport,Bq as AbstractChat,M0 as APICallError,I as AISDKError};export{c4 as O};
24
24
 
25
- //# debugId=D4B9E2759E05F8CA64756E2164756E21
25
+ //# debugId=44EB330AA6A1376C64756E2164756E21