@sylphx/flow 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/slash-commands/context.md +112 -0
- package/dist/{chunk-f6y5vttn.js → chunk-13awccns.js} +3 -3
- package/dist/{chunk-f6y5vttn.js.map → chunk-13awccns.js.map} +1 -1
- package/dist/chunk-1qp4nx2f.js +76 -0
- package/dist/{chunk-878q8xdr.js.map → chunk-1qp4nx2f.js.map} +3 -14
- package/dist/{chunk-fxwaa2mg.js → chunk-40c8zeb0.js} +1 -1
- package/dist/{chunk-0h7sfwq3.js → chunk-4dhthe08.js} +3 -3
- package/dist/{chunk-0h7sfwq3.js.map → chunk-4dhthe08.js.map} +2 -2
- package/dist/{chunk-124wqbdb.js → chunk-5qb65n40.js} +3 -3
- package/dist/{chunk-124wqbdb.js.map → chunk-5qb65n40.js.map} +1 -1
- package/dist/{chunk-e966bjm5.js → chunk-689g5js2.js} +2 -2
- package/dist/{chunk-e966bjm5.js.map → chunk-689g5js2.js.map} +1 -1
- package/dist/{chunk-hshjnpm0.js → chunk-99z4z52k.js} +2 -2
- package/dist/{chunk-hshjnpm0.js.map → chunk-99z4z52k.js.map} +1 -1
- package/dist/{chunk-jxny6xft.js → chunk-9dbwckry.js} +2 -2
- package/dist/{chunk-jxny6xft.js.map → chunk-9dbwckry.js.map} +1 -1
- package/dist/chunk-9x8s5xdb.js +16 -0
- package/dist/chunk-9x8s5xdb.js.map +10 -0
- package/dist/{chunk-hs3nxzyz.js → chunk-jth5s5rd.js} +2 -2
- package/dist/{chunk-hs3nxzyz.js.map → chunk-jth5s5rd.js.map} +1 -1
- package/dist/{chunk-4p754rhd.js → chunk-mdc9ef4e.js} +2 -2
- package/dist/{chunk-4p754rhd.js.map → chunk-mdc9ef4e.js.map} +1 -1
- package/dist/{chunk-646h52kd.js → chunk-q3dv05ma.js} +3 -3
- package/dist/{chunk-646h52kd.js.map → chunk-q3dv05ma.js.map} +1 -1
- package/dist/chunk-qm7xz0bm.js +7 -0
- package/dist/{chunk-ygdr4fw7.js.map → chunk-qm7xz0bm.js.map} +2 -2
- package/dist/chunk-tv05bzde.js +107 -0
- package/dist/chunk-tv05bzde.js.map +66 -0
- package/dist/{chunk-5r4afhzp.js → chunk-tzar2j0k.js} +3 -3
- package/dist/{chunk-5r4afhzp.js.map → chunk-tzar2j0k.js.map} +1 -1
- package/dist/{chunk-bd11hvvz.js → chunk-vg15k2nk.js} +2 -2
- package/dist/{chunk-bd11hvvz.js.map → chunk-vg15k2nk.js.map} +1 -1
- package/dist/chunk-xhm04nkk.js +4 -0
- package/dist/{chunk-g9t3me0w.js.map → chunk-xhm04nkk.js.map} +2 -2
- package/dist/{chunk-qa8b725g.js → chunk-xwe9eaaf.js} +3 -3
- package/dist/{chunk-qa8b725g.js.map → chunk-xwe9eaaf.js.map} +1 -1
- package/dist/{chunk-wpe7rw5c.js → chunk-yj831xk5.js} +3 -3
- package/dist/{chunk-wpe7rw5c.js.map → chunk-yj831xk5.js.map} +1 -1
- package/dist/{chunk-78bfvh46.js → chunk-yredmasr.js} +2 -2
- package/dist/{chunk-78bfvh46.js.map → chunk-yredmasr.js.map} +1 -1
- package/dist/chunk-z30mabwt.js +14 -0
- package/dist/chunk-z30mabwt.js.map +20 -0
- package/dist/index.js +437 -453
- package/dist/index.js.map +270 -67
- package/package.json +2 -1
- package/dist/chunk-878q8xdr.js +0 -86
- package/dist/chunk-g9t3me0w.js +0 -4
- package/dist/chunk-ygdr4fw7.js +0 -7
- /package/dist/{chunk-fxwaa2mg.js.map → chunk-40c8zeb0.js.map} +0 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import{D as N5}from"./chunk-yj831xk5.js";import{$ as d$,Aa as r,Ba as HZ,Ca as u$,Da as zZ,Fa as h,Ha as GZ,Ia as MZ,Ja as rZ,La as c$,Ma as c1,U as A,V as X0,W as KZ,Y as OZ,ca as mZ,da as J9,ea as JZ,fa as u1,ga as tZ,ha as j0,ia as Y9,ja as EZ,ka as g0,la as H9,na as gZ,pa as g,qa as U0,ra as a,sa as WZ,va as dZ,xa as n}from"./chunk-z30mabwt.js";import{Qa as X}from"./chunk-xwe9eaaf.js";import{Ra as wZ,Sa as N,Ua as B$}from"./chunk-99z4z52k.js";var v0=N((SH,z$)=>{var{defineProperty:S0,getOwnPropertyDescriptor:z5,getOwnPropertyNames:B5}=Object,q5=Object.prototype.hasOwnProperty,F5=(Z,$)=>{for(var Q in $)S0(Z,Q,{get:$[Q],enumerable:!0})},U5=(Z,$,Q,J)=>{if($&&typeof $==="object"||typeof $==="function"){for(let H of B5($))if(!q5.call(Z,H)&&H!==Q)S0(Z,H,{get:()=>$[H],enumerable:!(J=z5($,H))||J.enumerable})}return Z},j5=(Z)=>U5(S0({},"__esModule",{value:!0}),Z),K$={};F5(K$,{SYMBOL_FOR_REQ_CONTEXT:()=>G$,getContext:()=>O5});z$.exports=j5(K$);var G$=Symbol.for("@vercel/request-context");function O5(){return globalThis[G$]?.get?.()??{}}});var U$=N((vH,F$)=>{var{defineProperty:x0,getOwnPropertyDescriptor:V5,getOwnPropertyNames:D5}=Object,L5=Object.prototype.hasOwnProperty,A5=(Z,$)=>{for(var Q in $)x0(Z,Q,{get:$[Q],enumerable:!0})},w5=(Z,$,Q,J)=>{if($&&typeof $==="object"||typeof $==="function"){for(let H of D5($))if(!L5.call(Z,H)&&H!==Q)x0(Z,H,{get:()=>$[H],enumerable:!(J=V5($,H))||J.enumerable})}return Z},E5=(Z)=>w5(x0({},"__esModule",{value:!0}),Z),q$={};A5(q$,{getVercelOidcToken:()=>f5,getVercelOidcTokenSync:()=>y0});F$.exports=E5(q$);var P5=v0(),I5=N5();async function f5(){let Z="",$;try{Z=y0()}catch(Q){$=Q}try{let[{getTokenPayload:Q,isExpired:J},{refreshToken:H}]=await Promise.all([await import("./chunk-13awccns.js"),await import("./chunk-9dbwckry.js")]);if(!Z||J(Q(Z)))await H(),Z=y0()}catch(Q){if($?.message&&Q instanceof Error)Q.message=`${$.message}
|
|
2
|
+
${Q.message}`;throw new I5.VercelOidcTokenError("Failed to refresh OIDC token",Q)}return Z}function y0(){let Z=(0,P5.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 k0=N((yH,N$)=>{var{defineProperty:_0,getOwnPropertyDescriptor:R5,getOwnPropertyNames:T5}=Object,M5=Object.prototype.hasOwnProperty,C5=(Z,$)=>{for(var Q in $)_0(Z,Q,{get:$[Q],enumerable:!0})},b5=(Z,$,Q,J)=>{if($&&typeof $==="object"||typeof $==="function"){for(let H of T5($))if(!M5.call(Z,H)&&H!==Q)_0(Z,H,{get:()=>$[H],enumerable:!(J=R5($,H))||J.enumerable})}return Z},S5=(Z)=>b5(_0({},"__esModule",{value:!0}),Z),O$={};C5(O$,{getContext:()=>v5.getContext,getVercelOidcToken:()=>j$.getVercelOidcToken,getVercelOidcTokenSync:()=>j$.getVercelOidcTokenSync});N$.exports=S5(O$);var j$=U$(),v5=v0()});var X6=N((Z6)=>{Object.defineProperty(Z6,"__esModule",{value:!0});Z6._globalThis=void 0;Z6._globalThis=typeof globalThis==="object"?globalThis:global});var Q6=N((qZ)=>{var JJ=qZ&&qZ.__createBinding||(Object.create?function(Z,$,Q,J){if(J===void 0)J=Q;Object.defineProperty(Z,J,{enumerable:!0,get:function(){return $[Q]}})}:function(Z,$,Q,J){if(J===void 0)J=Q;Z[J]=$[Q]}),YJ=qZ&&qZ.__exportStar||function(Z,$){for(var Q in Z)if(Q!=="default"&&!Object.prototype.hasOwnProperty.call($,Q))JJ($,Z,Q)};Object.defineProperty(qZ,"__esModule",{value:!0});YJ(X6(),qZ)});var J6=N((FZ)=>{var HJ=FZ&&FZ.__createBinding||(Object.create?function(Z,$,Q,J){if(J===void 0)J=Q;Object.defineProperty(Z,J,{enumerable:!0,get:function(){return $[Q]}})}:function(Z,$,Q,J){if(J===void 0)J=Q;Z[J]=$[Q]}),WJ=FZ&&FZ.__exportStar||function(Z,$){for(var Q in Z)if(Q!=="default"&&!Object.prototype.hasOwnProperty.call($,Q))HJ($,Z,Q)};Object.defineProperty(FZ,"__esModule",{value:!0});WJ(Q6(),FZ)});var d0=N((Y6)=>{Object.defineProperty(Y6,"__esModule",{value:!0});Y6.VERSION=void 0;Y6.VERSION="1.9.0"});var B6=N((G6)=>{Object.defineProperty(G6,"__esModule",{value:!0});G6.isCompatible=G6._makeCompatibilityCheck=void 0;var KJ=d0(),W6=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function K6(Z){let $=new Set([Z]),Q=new Set,J=Z.match(W6);if(!J)return()=>!1;let H={major:+J[1],minor:+J[2],patch:+J[3],prerelease:J[4]};if(H.prerelease!=null)return function(z){return z===Z};function Y(W){return Q.add(W),!1}function K(W){return $.add(W),!0}return function(z){if($.has(z))return!0;if(Q.has(z))return!1;let G=z.match(W6);if(!G)return Y(z);let F={major:+G[1],minor:+G[2],patch:+G[3],prerelease:G[4]};if(F.prerelease!=null)return Y(z);if(H.major!==F.major)return Y(z);if(H.major===0){if(H.minor===F.minor&&H.patch<=F.patch)return K(z);return Y(z)}if(H.minor<=F.minor)return K(z);return Y(z)}}G6._makeCompatibilityCheck=K6;G6.isCompatible=K6(KJ.VERSION)});var UZ=N((q6)=>{Object.defineProperty(q6,"__esModule",{value:!0});q6.unregisterGlobal=q6.getGlobal=q6.registerGlobal=void 0;var zJ=J6(),PZ=d0(),BJ=B6(),qJ=PZ.VERSION.split(".")[0],cZ=Symbol.for(`opentelemetry.js.api.${qJ}`),iZ=zJ._globalThis;function FJ(Z,$,Q,J=!1){var H;let Y=iZ[cZ]=(H=iZ[cZ])!==null&&H!==void 0?H:{version:PZ.VERSION};if(!J&&Y[Z]){let K=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${Z}`);return Q.error(K.stack||K.message),!1}if(Y.version!==PZ.VERSION){let K=Error(`@opentelemetry/api: Registration of version v${Y.version} for ${Z} does not match previously registered API v${PZ.VERSION}`);return Q.error(K.stack||K.message),!1}return Y[Z]=$,Q.debug(`@opentelemetry/api: Registered a global for ${Z} v${PZ.VERSION}.`),!0}q6.registerGlobal=FJ;function UJ(Z){var $,Q;let J=($=iZ[cZ])===null||$===void 0?void 0:$.version;if(!J||!(0,BJ.isCompatible)(J))return;return(Q=iZ[cZ])===null||Q===void 0?void 0:Q[Z]}q6.getGlobal=UJ;function jJ(Z,$){$.debug(`@opentelemetry/api: Unregistering a global for ${Z} v${PZ.VERSION}.`);let Q=iZ[cZ];if(Q)delete Q[Z]}q6.unregisterGlobal=jJ});var N6=N((j6)=>{Object.defineProperty(j6,"__esModule",{value:!0});j6.DiagComponentLogger=void 0;var VJ=UZ();class U6{constructor(Z){this._namespace=Z.namespace||"DiagComponentLogger"}debug(...Z){return pZ("debug",this._namespace,Z)}error(...Z){return pZ("error",this._namespace,Z)}info(...Z){return pZ("info",this._namespace,Z)}warn(...Z){return pZ("warn",this._namespace,Z)}verbose(...Z){return pZ("verbose",this._namespace,Z)}}j6.DiagComponentLogger=U6;function pZ(Z,$,Q){let J=(0,VJ.getGlobal)("diag");if(!J)return;return Q.unshift($),J[Z](...Q)}});var J0=N((V6)=>{Object.defineProperty(V6,"__esModule",{value:!0});V6.DiagLogLevel=void 0;var DJ;(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"})(DJ=V6.DiagLogLevel||(V6.DiagLogLevel={}))});var A6=N((D6)=>{Object.defineProperty(D6,"__esModule",{value:!0});D6.createLogLevelDiagLogger=void 0;var QZ=J0();function LJ(Z,$){if(Z<QZ.DiagLogLevel.NONE)Z=QZ.DiagLogLevel.NONE;else if(Z>QZ.DiagLogLevel.ALL)Z=QZ.DiagLogLevel.ALL;$=$||{};function Q(J,H){let Y=$[J];if(typeof Y==="function"&&Z>=H)return Y.bind($);return function(){}}return{error:Q("error",QZ.DiagLogLevel.ERROR),warn:Q("warn",QZ.DiagLogLevel.WARN),info:Q("info",QZ.DiagLogLevel.INFO),debug:Q("debug",QZ.DiagLogLevel.DEBUG),verbose:Q("verbose",QZ.DiagLogLevel.VERBOSE)}}D6.createLogLevelDiagLogger=LJ});var jZ=N((E6)=>{Object.defineProperty(E6,"__esModule",{value:!0});E6.DiagAPI=void 0;var AJ=N6(),wJ=A6(),w6=J0(),Y0=UZ(),EJ="diag";class c0{constructor(){function Z(J){return function(...H){let Y=(0,Y0.getGlobal)("diag");if(!Y)return;return Y[J](...H)}}let $=this,Q=(J,H={logLevel:w6.DiagLogLevel.INFO})=>{var Y,K,W;if(J===$){let F=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return $.error((Y=F.stack)!==null&&Y!==void 0?Y:F.message),!1}if(typeof H==="number")H={logLevel:H};let z=(0,Y0.getGlobal)("diag"),G=(0,wJ.createLogLevelDiagLogger)((K=H.logLevel)!==null&&K!==void 0?K:w6.DiagLogLevel.INFO,J);if(z&&!H.suppressOverrideMessage){let F=(W=Error().stack)!==null&&W!==void 0?W:"<failed to generate stacktrace>";z.warn(`Current logger will be overwritten from ${F}`),G.warn(`Current logger will overwrite one already registered from ${F}`)}return(0,Y0.registerGlobal)("diag",G,$,!0)};$.setLogger=Q,$.disable=()=>{(0,Y0.unregisterGlobal)(EJ,$)},$.createComponentLogger=(J)=>{return new AJ.DiagComponentLogger(J)},$.verbose=Z("verbose"),$.debug=Z("debug"),$.info=Z("info"),$.warn=Z("warn"),$.error=Z("error")}static instance(){if(!this._instance)this._instance=new c0;return this._instance}}E6.DiagAPI=c0});var R6=N((I6)=>{Object.defineProperty(I6,"__esModule",{value:!0});I6.BaggageImpl=void 0;class IZ{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 IZ(this._entries);return Q._entries.set(Z,$),Q}removeEntry(Z){let $=new IZ(this._entries);return $._entries.delete(Z),$}removeEntries(...Z){let $=new IZ(this._entries);for(let Q of Z)$._entries.delete(Q);return $}clear(){return new IZ}}I6.BaggageImpl=IZ});var C6=N((T6)=>{Object.defineProperty(T6,"__esModule",{value:!0});T6.baggageEntryMetadataSymbol=void 0;T6.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var i0=N((b6)=>{Object.defineProperty(b6,"__esModule",{value:!0});b6.baggageEntryMetadataFromString=b6.createBaggage=void 0;var PJ=jZ(),IJ=R6(),fJ=C6(),RJ=PJ.DiagAPI.instance();function TJ(Z={}){return new IJ.BaggageImpl(new Map(Object.entries(Z)))}b6.createBaggage=TJ;function MJ(Z){if(typeof Z!=="string")RJ.error(`Cannot create baggage metadata from unknown type: ${typeof Z}`),Z="";return{__TYPE__:fJ.baggageEntryMetadataSymbol,toString(){return Z}}}b6.baggageEntryMetadataFromString=MJ});var lZ=N((v6)=>{Object.defineProperty(v6,"__esModule",{value:!0});v6.ROOT_CONTEXT=v6.createContextKey=void 0;function bJ(Z){return Symbol.for(Z)}v6.createContextKey=bJ;class H0{constructor(Z){let $=this;$._currentContext=Z?new Map(Z):new Map,$.getValue=(Q)=>$._currentContext.get(Q),$.setValue=(Q,J)=>{let H=new H0($._currentContext);return H._currentContext.set(Q,J),H},$.deleteValue=(Q)=>{let J=new H0($._currentContext);return J._currentContext.delete(Q),J}}}v6.ROOT_CONTEXT=new H0});var h6=N((_6)=>{Object.defineProperty(_6,"__esModule",{value:!0});_6.DiagConsoleLogger=void 0;var p0=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class x6{constructor(){function Z($){return function(...Q){if(console){let J=console[$];if(typeof J!=="function")J=console.log;if(typeof J==="function")return J.apply(console,Q)}}}for(let $=0;$<p0.length;$++)this[p0[$].n]=Z(p0[$].c)}}_6.DiagConsoleLogger=x6});var Z1=N((g6)=>{Object.defineProperty(g6,"__esModule",{value:!0});g6.createNoopMeter=g6.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=g6.NOOP_OBSERVABLE_GAUGE_METRIC=g6.NOOP_OBSERVABLE_COUNTER_METRIC=g6.NOOP_UP_DOWN_COUNTER_METRIC=g6.NOOP_HISTOGRAM_METRIC=g6.NOOP_GAUGE_METRIC=g6.NOOP_COUNTER_METRIC=g6.NOOP_METER=g6.NoopObservableUpDownCounterMetric=g6.NoopObservableGaugeMetric=g6.NoopObservableCounterMetric=g6.NoopObservableMetric=g6.NoopHistogramMetric=g6.NoopGaugeMetric=g6.NoopUpDownCounterMetric=g6.NoopCounterMetric=g6.NoopMetric=g6.NoopMeter=void 0;class l0{constructor(){}createGauge(Z,$){return g6.NOOP_GAUGE_METRIC}createHistogram(Z,$){return g6.NOOP_HISTOGRAM_METRIC}createCounter(Z,$){return g6.NOOP_COUNTER_METRIC}createUpDownCounter(Z,$){return g6.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(Z,$){return g6.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(Z,$){return g6.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(Z,$){return g6.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(Z,$){}removeBatchObservableCallback(Z){}}g6.NoopMeter=l0;class fZ{}g6.NoopMetric=fZ;class n0 extends fZ{add(Z,$){}}g6.NoopCounterMetric=n0;class s0 extends fZ{add(Z,$){}}g6.NoopUpDownCounterMetric=s0;class o0 extends fZ{record(Z,$){}}g6.NoopGaugeMetric=o0;class r0 extends fZ{record(Z,$){}}g6.NoopHistogramMetric=r0;class nZ{addCallback(Z){}removeCallback(Z){}}g6.NoopObservableMetric=nZ;class a0 extends nZ{}g6.NoopObservableCounterMetric=a0;class t0 extends nZ{}g6.NoopObservableGaugeMetric=t0;class e0 extends nZ{}g6.NoopObservableUpDownCounterMetric=e0;g6.NOOP_METER=new l0;g6.NOOP_COUNTER_METRIC=new n0;g6.NOOP_GAUGE_METRIC=new o0;g6.NOOP_HISTOGRAM_METRIC=new r0;g6.NOOP_UP_DOWN_COUNTER_METRIC=new s0;g6.NOOP_OBSERVABLE_COUNTER_METRIC=new a0;g6.NOOP_OBSERVABLE_GAUGE_METRIC=new t0;g6.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new e0;function vJ(){return g6.NOOP_METER}g6.createNoopMeter=vJ});var r6=N((o6)=>{Object.defineProperty(o6,"__esModule",{value:!0});o6.ValueType=void 0;var iJ;(function(Z){Z[Z.INT=0]="INT",Z[Z.DOUBLE=1]="DOUBLE"})(iJ=o6.ValueType||(o6.ValueType={}))});var X1=N((a6)=>{Object.defineProperty(a6,"__esModule",{value:!0});a6.defaultTextMapSetter=a6.defaultTextMapGetter=void 0;a6.defaultTextMapGetter={get(Z,$){if(Z==null)return;return Z[$]},keys(Z){if(Z==null)return[];return Object.keys(Z)}};a6.defaultTextMapSetter={set(Z,$,Q){if(Z==null)return;Z[$]=Q}}});var XX=N((ZX)=>{Object.defineProperty(ZX,"__esModule",{value:!0});ZX.NoopContextManager=void 0;var lJ=lZ();class e6{active(){return lJ.ROOT_CONTEXT}with(Z,$,Q,...J){return $.call(Q,...J)}bind(Z,$){return $}enable(){return this}disable(){return this}}ZX.NoopContextManager=e6});var sZ=N((JX)=>{Object.defineProperty(JX,"__esModule",{value:!0});JX.ContextAPI=void 0;var nJ=XX(),Q1=UZ(),QX=jZ(),J1="context",sJ=new nJ.NoopContextManager;class Y1{constructor(){}static getInstance(){if(!this._instance)this._instance=new Y1;return this._instance}setGlobalContextManager(Z){return(0,Q1.registerGlobal)(J1,Z,QX.DiagAPI.instance())}active(){return this._getContextManager().active()}with(Z,$,Q,...J){return this._getContextManager().with(Z,$,Q,...J)}bind(Z,$){return this._getContextManager().bind(Z,$)}_getContextManager(){return(0,Q1.getGlobal)(J1)||sJ}disable(){this._getContextManager().disable(),(0,Q1.unregisterGlobal)(J1,QX.DiagAPI.instance())}}JX.ContextAPI=Y1});var W1=N((HX)=>{Object.defineProperty(HX,"__esModule",{value:!0});HX.TraceFlags=void 0;var oJ;(function(Z){Z[Z.NONE=0]="NONE",Z[Z.SAMPLED=1]="SAMPLED"})(oJ=HX.TraceFlags||(HX.TraceFlags={}))});var W0=N((WX)=>{Object.defineProperty(WX,"__esModule",{value:!0});WX.INVALID_SPAN_CONTEXT=WX.INVALID_TRACEID=WX.INVALID_SPANID=void 0;var rJ=W1();WX.INVALID_SPANID="0000000000000000";WX.INVALID_TRACEID="00000000000000000000000000000000";WX.INVALID_SPAN_CONTEXT={traceId:WX.INVALID_TRACEID,spanId:WX.INVALID_SPANID,traceFlags:rJ.TraceFlags.NONE}});var K0=N((qX)=>{Object.defineProperty(qX,"__esModule",{value:!0});qX.NonRecordingSpan=void 0;var aJ=W0();class BX{constructor(Z=aJ.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,$){}}qX.NonRecordingSpan=BX});var z1=N((jX)=>{Object.defineProperty(jX,"__esModule",{value:!0});jX.getSpanContext=jX.setSpanContext=jX.deleteSpan=jX.setSpan=jX.getActiveSpan=jX.getSpan=void 0;var tJ=lZ(),eJ=K0(),Z8=sZ(),K1=(0,tJ.createContextKey)("OpenTelemetry Context Key SPAN");function G1(Z){return Z.getValue(K1)||void 0}jX.getSpan=G1;function $8(){return G1(Z8.ContextAPI.getInstance().active())}jX.getActiveSpan=$8;function UX(Z,$){return Z.setValue(K1,$)}jX.setSpan=UX;function X8(Z){return Z.deleteValue(K1)}jX.deleteSpan=X8;function Q8(Z,$){return UX(Z,new eJ.NonRecordingSpan($))}jX.setSpanContext=Q8;function J8(Z){var $;return($=G1(Z))===null||$===void 0?void 0:$.spanContext()}jX.getSpanContext=J8});var G0=N((LX)=>{Object.defineProperty(LX,"__esModule",{value:!0});LX.wrapSpanContext=LX.isSpanContextValid=LX.isValidSpanId=LX.isValidTraceId=void 0;var NX=W0(),z8=K0(),B8=/^([0-9a-f]{32})$/i,q8=/^[0-9a-f]{16}$/i;function VX(Z){return B8.test(Z)&&Z!==NX.INVALID_TRACEID}LX.isValidTraceId=VX;function DX(Z){return q8.test(Z)&&Z!==NX.INVALID_SPANID}LX.isValidSpanId=DX;function F8(Z){return VX(Z.traceId)&&DX(Z.spanId)}LX.isSpanContextValid=F8;function U8(Z){return new z8.NonRecordingSpan(Z)}LX.wrapSpanContext=U8});var F1=N((PX)=>{Object.defineProperty(PX,"__esModule",{value:!0});PX.NoopTracer=void 0;var V8=sZ(),wX=z1(),B1=K0(),D8=G0(),q1=V8.ContextAPI.getInstance();class EX{startSpan(Z,$,Q=q1.active()){if(Boolean($===null||$===void 0?void 0:$.root))return new B1.NonRecordingSpan;let H=Q&&(0,wX.getSpanContext)(Q);if(L8(H)&&(0,D8.isSpanContextValid)(H))return new B1.NonRecordingSpan(H);else return new B1.NonRecordingSpan}startActiveSpan(Z,$,Q,J){let H,Y,K;if(arguments.length<2)return;else if(arguments.length===2)K=$;else if(arguments.length===3)H=$,K=Q;else H=$,Y=Q,K=J;let W=Y!==null&&Y!==void 0?Y:q1.active(),z=this.startSpan(Z,H,W),G=(0,wX.setSpan)(W,z);return q1.with(G,K,void 0,z)}}PX.NoopTracer=EX;function L8(Z){return typeof Z==="object"&&typeof Z.spanId==="string"&&typeof Z.traceId==="string"&&typeof Z.traceFlags==="number"}});var U1=N((RX)=>{Object.defineProperty(RX,"__esModule",{value:!0});RX.ProxyTracer=void 0;var A8=F1(),w8=new A8.NoopTracer;class fX{constructor(Z,$,Q,J){this._provider=Z,this.name=$,this.version=Q,this.options=J}startSpan(Z,$,Q){return this._getTracer().startSpan(Z,$,Q)}startActiveSpan(Z,$,Q,J){let H=this._getTracer();return Reflect.apply(H.startActiveSpan,H,arguments)}_getTracer(){if(this._delegate)return this._delegate;let Z=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!Z)return w8;return this._delegate=Z,this._delegate}}RX.ProxyTracer=fX});var SX=N((CX)=>{Object.defineProperty(CX,"__esModule",{value:!0});CX.NoopTracerProvider=void 0;var E8=F1();class MX{getTracer(Z,$,Q){return new E8.NoopTracer}}CX.NoopTracerProvider=MX});var j1=N((yX)=>{Object.defineProperty(yX,"__esModule",{value:!0});yX.ProxyTracerProvider=void 0;var P8=U1(),I8=SX(),f8=new I8.NoopTracerProvider;class vX{getTracer(Z,$,Q){var J;return(J=this.getDelegateTracer(Z,$,Q))!==null&&J!==void 0?J:new P8.ProxyTracer(this,Z,$,Q)}getDelegate(){var Z;return(Z=this._delegate)!==null&&Z!==void 0?Z:f8}setDelegate(Z){this._delegate=Z}getDelegateTracer(Z,$,Q){var J;return(J=this._delegate)===null||J===void 0?void 0:J.getTracer(Z,$,Q)}}yX.ProxyTracerProvider=vX});var kX=N((_X)=>{Object.defineProperty(_X,"__esModule",{value:!0});_X.SamplingDecision=void 0;var R8;(function(Z){Z[Z.NOT_RECORD=0]="NOT_RECORD",Z[Z.RECORD=1]="RECORD",Z[Z.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(R8=_X.SamplingDecision||(_X.SamplingDecision={}))});var gX=N((hX)=>{Object.defineProperty(hX,"__esModule",{value:!0});hX.SpanKind=void 0;var T8;(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"})(T8=hX.SpanKind||(hX.SpanKind={}))});var dX=N((mX)=>{Object.defineProperty(mX,"__esModule",{value:!0});mX.SpanStatusCode=void 0;var M8;(function(Z){Z[Z.UNSET=0]="UNSET",Z[Z.OK=1]="OK",Z[Z.ERROR=2]="ERROR"})(M8=mX.SpanStatusCode||(mX.SpanStatusCode={}))});var iX=N((uX)=>{Object.defineProperty(uX,"__esModule",{value:!0});uX.validateValue=uX.validateKey=void 0;var D1="[_0-9a-z-*/]",C8=`[a-z]${D1}{0,255}`,b8=`[a-z0-9]${D1}{0,240}@[a-z]${D1}{0,13}`,S8=new RegExp(`^(?:${C8}|${b8})$`),v8=/^[ -~]{0,255}[!-~]$/,y8=/,|=/;function x8(Z){return S8.test(Z)}uX.validateKey=x8;function _8(Z){return v8.test(Z)&&!y8.test(Z)}uX.validateValue=_8});var aX=N((oX)=>{Object.defineProperty(oX,"__esModule",{value:!0});oX.TraceStateImpl=void 0;var pX=iX(),lX=32,h8=512,nX=",",sX="=";class L1{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($+sX+this.get($)),Z},[]).join(nX)}_parse(Z){if(Z.length>h8)return;if(this._internalState=Z.split(nX).reverse().reduce(($,Q)=>{let J=Q.trim(),H=J.indexOf(sX);if(H!==-1){let Y=J.slice(0,H),K=J.slice(H+1,Q.length);if((0,pX.validateKey)(Y)&&(0,pX.validateValue)(K))$.set(Y,K)}return $},new Map),this._internalState.size>lX)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,lX))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let Z=new L1;return Z._internalState=new Map(this._internalState),Z}}oX.TraceStateImpl=L1});var ZQ=N((tX)=>{Object.defineProperty(tX,"__esModule",{value:!0});tX.createTraceState=void 0;var g8=aX();function m8(Z){return new g8.TraceStateImpl(Z)}tX.createTraceState=m8});var QQ=N(($Q)=>{Object.defineProperty($Q,"__esModule",{value:!0});$Q.context=void 0;var d8=sZ();$Q.context=d8.ContextAPI.getInstance()});var HQ=N((JQ)=>{Object.defineProperty(JQ,"__esModule",{value:!0});JQ.diag=void 0;var u8=jZ();JQ.diag=u8.DiagAPI.instance()});var GQ=N((WQ)=>{Object.defineProperty(WQ,"__esModule",{value:!0});WQ.NOOP_METER_PROVIDER=WQ.NoopMeterProvider=void 0;var c8=Z1();class A1{getMeter(Z,$,Q){return c8.NOOP_METER}}WQ.NoopMeterProvider=A1;WQ.NOOP_METER_PROVIDER=new A1});var FQ=N((BQ)=>{Object.defineProperty(BQ,"__esModule",{value:!0});BQ.MetricsAPI=void 0;var p8=GQ(),w1=UZ(),zQ=jZ(),E1="metrics";class P1{constructor(){}static getInstance(){if(!this._instance)this._instance=new P1;return this._instance}setGlobalMeterProvider(Z){return(0,w1.registerGlobal)(E1,Z,zQ.DiagAPI.instance())}getMeterProvider(){return(0,w1.getGlobal)(E1)||p8.NOOP_METER_PROVIDER}getMeter(Z,$,Q){return this.getMeterProvider().getMeter(Z,$,Q)}disable(){(0,w1.unregisterGlobal)(E1,zQ.DiagAPI.instance())}}BQ.MetricsAPI=P1});var OQ=N((UQ)=>{Object.defineProperty(UQ,"__esModule",{value:!0});UQ.metrics=void 0;var l8=FQ();UQ.metrics=l8.MetricsAPI.getInstance()});var LQ=N((VQ)=>{Object.defineProperty(VQ,"__esModule",{value:!0});VQ.NoopTextMapPropagator=void 0;class NQ{inject(Z,$){}extract(Z,$){return Z}fields(){return[]}}VQ.NoopTextMapPropagator=NQ});var PQ=N((wQ)=>{Object.defineProperty(wQ,"__esModule",{value:!0});wQ.deleteBaggage=wQ.setBaggage=wQ.getActiveBaggage=wQ.getBaggage=void 0;var n8=sZ(),s8=lZ(),I1=(0,s8.createContextKey)("OpenTelemetry Baggage Key");function AQ(Z){return Z.getValue(I1)||void 0}wQ.getBaggage=AQ;function o8(){return AQ(n8.ContextAPI.getInstance().active())}wQ.getActiveBaggage=o8;function r8(Z,$){return Z.setValue(I1,$)}wQ.setBaggage=r8;function a8(Z){return Z.deleteValue(I1)}wQ.deleteBaggage=a8});var MQ=N((RQ)=>{Object.defineProperty(RQ,"__esModule",{value:!0});RQ.PropagationAPI=void 0;var f1=UZ(),$Y=LQ(),IQ=X1(),z0=PQ(),XY=i0(),fQ=jZ(),R1="propagation",QY=new $Y.NoopTextMapPropagator;class T1{constructor(){this.createBaggage=XY.createBaggage,this.getBaggage=z0.getBaggage,this.getActiveBaggage=z0.getActiveBaggage,this.setBaggage=z0.setBaggage,this.deleteBaggage=z0.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new T1;return this._instance}setGlobalPropagator(Z){return(0,f1.registerGlobal)(R1,Z,fQ.DiagAPI.instance())}inject(Z,$,Q=IQ.defaultTextMapSetter){return this._getGlobalPropagator().inject(Z,$,Q)}extract(Z,$,Q=IQ.defaultTextMapGetter){return this._getGlobalPropagator().extract(Z,$,Q)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,f1.unregisterGlobal)(R1,fQ.DiagAPI.instance())}_getGlobalPropagator(){return(0,f1.getGlobal)(R1)||QY}}RQ.PropagationAPI=T1});var SQ=N((CQ)=>{Object.defineProperty(CQ,"__esModule",{value:!0});CQ.propagation=void 0;var JY=MQ();CQ.propagation=JY.PropagationAPI.getInstance()});var hQ=N((_Q)=>{Object.defineProperty(_Q,"__esModule",{value:!0});_Q.TraceAPI=void 0;var M1=UZ(),vQ=j1(),yQ=G0(),RZ=z1(),xQ=jZ(),C1="trace";class b1{constructor(){this._proxyTracerProvider=new vQ.ProxyTracerProvider,this.wrapSpanContext=yQ.wrapSpanContext,this.isSpanContextValid=yQ.isSpanContextValid,this.deleteSpan=RZ.deleteSpan,this.getSpan=RZ.getSpan,this.getActiveSpan=RZ.getActiveSpan,this.getSpanContext=RZ.getSpanContext,this.setSpan=RZ.setSpan,this.setSpanContext=RZ.setSpanContext}static getInstance(){if(!this._instance)this._instance=new b1;return this._instance}setGlobalTracerProvider(Z){let $=(0,M1.registerGlobal)(C1,this._proxyTracerProvider,xQ.DiagAPI.instance());if($)this._proxyTracerProvider.setDelegate(Z);return $}getTracerProvider(){return(0,M1.getGlobal)(C1)||this._proxyTracerProvider}getTracer(Z,$){return this.getTracerProvider().getTracer(Z,$)}disable(){(0,M1.unregisterGlobal)(C1,xQ.DiagAPI.instance()),this._proxyTracerProvider=new vQ.ProxyTracerProvider}}_Q.TraceAPI=b1});var dQ=N((gQ)=>{Object.defineProperty(gQ,"__esModule",{value:!0});gQ.trace=void 0;var YY=hQ();gQ.trace=YY.TraceAPI.getInstance()});var y1=N((f)=>{Object.defineProperty(f,"__esModule",{value:!0});f.trace=f.propagation=f.metrics=f.diag=f.context=f.INVALID_SPAN_CONTEXT=f.INVALID_TRACEID=f.INVALID_SPANID=f.isValidSpanId=f.isValidTraceId=f.isSpanContextValid=f.createTraceState=f.TraceFlags=f.SpanStatusCode=f.SpanKind=f.SamplingDecision=f.ProxyTracerProvider=f.ProxyTracer=f.defaultTextMapSetter=f.defaultTextMapGetter=f.ValueType=f.createNoopMeter=f.DiagLogLevel=f.DiagConsoleLogger=f.ROOT_CONTEXT=f.createContextKey=f.baggageEntryMetadataFromString=void 0;var HY=i0();Object.defineProperty(f,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return HY.baggageEntryMetadataFromString}});var uQ=lZ();Object.defineProperty(f,"createContextKey",{enumerable:!0,get:function(){return uQ.createContextKey}});Object.defineProperty(f,"ROOT_CONTEXT",{enumerable:!0,get:function(){return uQ.ROOT_CONTEXT}});var WY=h6();Object.defineProperty(f,"DiagConsoleLogger",{enumerable:!0,get:function(){return WY.DiagConsoleLogger}});var KY=J0();Object.defineProperty(f,"DiagLogLevel",{enumerable:!0,get:function(){return KY.DiagLogLevel}});var GY=Z1();Object.defineProperty(f,"createNoopMeter",{enumerable:!0,get:function(){return GY.createNoopMeter}});var zY=r6();Object.defineProperty(f,"ValueType",{enumerable:!0,get:function(){return zY.ValueType}});var cQ=X1();Object.defineProperty(f,"defaultTextMapGetter",{enumerable:!0,get:function(){return cQ.defaultTextMapGetter}});Object.defineProperty(f,"defaultTextMapSetter",{enumerable:!0,get:function(){return cQ.defaultTextMapSetter}});var BY=U1();Object.defineProperty(f,"ProxyTracer",{enumerable:!0,get:function(){return BY.ProxyTracer}});var qY=j1();Object.defineProperty(f,"ProxyTracerProvider",{enumerable:!0,get:function(){return qY.ProxyTracerProvider}});var FY=kX();Object.defineProperty(f,"SamplingDecision",{enumerable:!0,get:function(){return FY.SamplingDecision}});var UY=gX();Object.defineProperty(f,"SpanKind",{enumerable:!0,get:function(){return UY.SpanKind}});var jY=dX();Object.defineProperty(f,"SpanStatusCode",{enumerable:!0,get:function(){return jY.SpanStatusCode}});var OY=W1();Object.defineProperty(f,"TraceFlags",{enumerable:!0,get:function(){return OY.TraceFlags}});var NY=ZQ();Object.defineProperty(f,"createTraceState",{enumerable:!0,get:function(){return NY.createTraceState}});var S1=G0();Object.defineProperty(f,"isSpanContextValid",{enumerable:!0,get:function(){return S1.isSpanContextValid}});Object.defineProperty(f,"isValidTraceId",{enumerable:!0,get:function(){return S1.isValidTraceId}});Object.defineProperty(f,"isValidSpanId",{enumerable:!0,get:function(){return S1.isValidSpanId}});var v1=W0();Object.defineProperty(f,"INVALID_SPANID",{enumerable:!0,get:function(){return v1.INVALID_SPANID}});Object.defineProperty(f,"INVALID_TRACEID",{enumerable:!0,get:function(){return v1.INVALID_TRACEID}});Object.defineProperty(f,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return v1.INVALID_SPAN_CONTEXT}});var iQ=QQ();Object.defineProperty(f,"context",{enumerable:!0,get:function(){return iQ.context}});var pQ=HQ();Object.defineProperty(f,"diag",{enumerable:!0,get:function(){return pQ.diag}});var lQ=OQ();Object.defineProperty(f,"metrics",{enumerable:!0,get:function(){return lQ.metrics}});var nQ=SQ();Object.defineProperty(f,"propagation",{enumerable:!0,get:function(){return nQ.propagation}});var sQ=dQ();Object.defineProperty(f,"trace",{enumerable:!0,get:function(){return sQ.trace}});f.default={context:iQ.context,diag:pQ.diag,metrics:lQ.metrics,propagation:nQ.propagation,trace:sQ.trace}});import{readFile as t9,writeFile as e9,mkdir as jH}from"node:fs/promises";import{dirname as OH}from"node:path";var a$=wZ(k0(),1),t$=wZ(k0(),1);var y5="vercel.ai.gateway.error",h0=Symbol.for(y5),V$,D$,u=class Z extends(D$=Error,V$=h0,D$){constructor({message:$,statusCode:Q=500,cause:J}){super($);this[V$]=!0,this.statusCode=Q,this.cause=J}static isInstance($){return Z.hasMarker($)}static hasMarker($){return typeof $==="object"&&$!==null&&h0 in $&&$[h0]===!0}},i$="GatewayAuthenticationError",x5=`vercel.ai.gateway.error.${i$}`,L$=Symbol.for(x5),A$,w$,Q0=class Z extends(w$=u,A$=L$,w$){constructor({message:$="Authentication failed",statusCode:Q=401,cause:J}={}){super({message:$,statusCode:Q,cause:J});this[A$]=!0,this.name=i$,this.type="authentication_error"}static isInstance($){return u.hasMarker($)&&L$ in $}static createContextualError({apiKeyProvided:$,oidcTokenProvided:Q,message:J="Authentication failed",statusCode:H=401,cause:Y}){let K;if($)K=`AI Gateway authentication failed: Invalid API key.
|
|
3
|
+
|
|
4
|
+
Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
|
|
5
|
+
|
|
6
|
+
Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`;else if(Q)K=`AI Gateway authentication failed: Invalid OIDC token.
|
|
7
|
+
|
|
8
|
+
Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.
|
|
9
|
+
|
|
10
|
+
Alternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys`;else K=`AI Gateway authentication failed: No authentication provided.
|
|
11
|
+
|
|
12
|
+
Option 1 - API key:
|
|
13
|
+
Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
|
|
14
|
+
Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.
|
|
15
|
+
|
|
16
|
+
Option 2 - OIDC token:
|
|
17
|
+
Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`;return new Z({message:K,statusCode:H,cause:Y})}},p$="GatewayInvalidRequestError",_5=`vercel.ai.gateway.error.${p$}`,E$=Symbol.for(_5),P$,I$,k5=class extends(I$=u,P$=E$,I$){constructor({message:Z="Invalid request",statusCode:$=400,cause:Q}={}){super({message:Z,statusCode:$,cause:Q});this[P$]=!0,this.name=p$,this.type="invalid_request_error"}static isInstance(Z){return u.hasMarker(Z)&&E$ in Z}},l$="GatewayRateLimitError",h5=`vercel.ai.gateway.error.${l$}`,f$=Symbol.for(h5),R$,T$,g5=class extends(T$=u,R$=f$,T$){constructor({message:Z="Rate limit exceeded",statusCode:$=429,cause:Q}={}){super({message:Z,statusCode:$,cause:Q});this[R$]=!0,this.name=l$,this.type="rate_limit_exceeded"}static isInstance(Z){return u.hasMarker(Z)&&f$ in Z}},n$="GatewayModelNotFoundError",m5=`vercel.ai.gateway.error.${n$}`,M$=Symbol.for(m5),d5=g(()=>h(X.object({modelId:X.string()}))),C$,b$,m0=class extends(b$=u,C$=M$,b$){constructor({message:Z="Model not found",statusCode:$=404,modelId:Q,cause:J}={}){super({message:Z,statusCode:$,cause:J});this[C$]=!0,this.name=n$,this.type="model_not_found",this.modelId=Q}static isInstance(Z){return u.hasMarker(Z)&&M$ in Z}},s$="GatewayInternalServerError",u5=`vercel.ai.gateway.error.${s$}`,S$=Symbol.for(u5),v$,y$,x$=class extends(y$=u,v$=S$,y$){constructor({message:Z="Internal server error",statusCode:$=500,cause:Q}={}){super({message:Z,statusCode:$,cause:Q});this[v$]=!0,this.name=s$,this.type="internal_server_error"}static isInstance(Z){return u.hasMarker(Z)&&S$ in Z}},o$="GatewayResponseError",c5=`vercel.ai.gateway.error.${o$}`,_$=Symbol.for(c5),k$,h$,i5=class extends(h$=u,k$=_$,h$){constructor({message:Z="Invalid response from Gateway",statusCode:$=502,response:Q,validationError:J,cause:H}={}){super({message:Z,statusCode:$,cause:H});this[k$]=!0,this.name=o$,this.type="response_error",this.response=Q,this.validationError=J}static isInstance(Z){return u.hasMarker(Z)&&_$ in Z}};async function g$({response:Z,statusCode:$,defaultMessage:Q="Gateway request failed",cause:J,authMethod:H}){let Y=await a({value:Z,schema:p5});if(!Y.success)return new i5({message:`Invalid error response format: ${Q}`,statusCode:$,response:Z,validationError:Y.error,cause:J});let K=Y.value,W=K.error.type,z=K.error.message;switch(W){case"authentication_error":return Q0.createContextualError({apiKeyProvided:H==="api-key",oidcTokenProvided:H==="oidc",statusCode:$,cause:J});case"invalid_request_error":return new k5({message:z,statusCode:$,cause:J});case"rate_limit_exceeded":return new g5({message:z,statusCode:$,cause:J});case"model_not_found":{let G=await a({value:K.error.param,schema:d5});return new m0({message:z,statusCode:$,modelId:G.success?G.value.modelId:void 0,cause:J})}case"internal_server_error":return new x$({message:z,statusCode:$,cause:J});default:return new x$({message:z,statusCode:$,cause:J})}}var p5=g(()=>h(X.object({error:X.object({message:X.string(),type:X.string().nullish(),param:X.unknown().nullish(),code:X.union([X.string(),X.number()]).nullish()})})));function BZ(Z,$){var Q;if(u.isInstance(Z))return Z;if(X0.isInstance(Z))return g$({response:l5(Z),statusCode:(Q=Z.statusCode)!=null?Q:500,defaultMessage:"Gateway request failed",cause:Z,authMethod:$});return g$({response:{},statusCode:500,defaultMessage:Z instanceof Error?`Gateway request failed: ${Z.message}`:"Unknown Gateway error",cause:Z,authMethod:$})}function l5(Z){if(Z.data!==void 0)return Z.data;if(Z.responseBody!=null)try{return JSON.parse(Z.responseBody)}catch($){return Z.responseBody}return{}}var r$="ai-gateway-auth-method";async function uZ(Z){let $=await a({value:Z[r$],schema:n5});return $.success?$.value:void 0}var n5=g(()=>h(X.union([X.literal("api-key"),X.literal("oidc")]))),m$=class{constructor(Z){this.config=Z}async getAvailableModels(){try{let{value:Z}=await g0({url:`${this.config.baseURL}/config`,headers:await r(this.config.headers()),successfulResponseHandler:zZ(s5),failedResponseHandler:HZ({errorSchema:X.any(),errorToMessage:($)=>$}),fetch:this.config.fetch});return Z}catch(Z){throw await BZ(Z)}}async getCredits(){try{let Z=new URL(this.config.baseURL),{value:$}=await g0({url:`${Z.origin}/v1/credits`,headers:await r(this.config.headers()),successfulResponseHandler:zZ(o5),failedResponseHandler:HZ({errorSchema:X.any(),errorToMessage:(Q)=>Q}),fetch:this.config.fetch});return $}catch(Z){throw await BZ(Z)}}},s5=g(()=>h(X.object({models:X.array(X.object({id:X.string(),name:X.string(),description:X.string().nullish(),pricing:X.object({input:X.string(),output:X.string(),input_cache_read:X.string().nullish(),input_cache_write:X.string().nullish()}).transform(({input:Z,output:$,input_cache_read:Q,input_cache_write:J})=>({input:Z,output:$,...Q?{cachedInputTokens:Q}:{},...J?{cacheCreationInputTokens:J}:{}})).nullish(),specification:X.object({specificationVersion:X.literal("v2"),provider:X.string(),modelId:X.string()}),modelType:X.enum(["language","embedding","image"]).nullish()}))}))),o5=g(()=>h(X.object({balance:X.string(),total_used:X.string()}).transform(({balance:Z,total_used:$})=>({balance:Z,totalUsed:$})))),r5=class{constructor(Z,$){this.modelId=Z,this.config=$,this.specificationVersion="v2",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(Z){let{abortSignal:$,...Q}=Z;return{args:this.maybeEncodeFileParts(Q),warnings:[]}}async doGenerate(Z){let{args:$,warnings:Q}=await this.getArgs(Z),{abortSignal:J}=Z,H=await r(this.config.headers());try{let{responseHeaders:Y,value:K,rawValue:W}=await dZ({url:this.getUrl(),headers:mZ(H,Z.headers,this.getModelConfigHeaders(this.modelId,!1),await r(this.config.o11yHeaders)),body:$,successfulResponseHandler:zZ(X.any()),failedResponseHandler:HZ({errorSchema:X.any(),errorToMessage:(z)=>z}),...J&&{abortSignal:J},fetch:this.config.fetch});return{...K,request:{body:$},response:{headers:Y,body:W},warnings:Q}}catch(Y){throw await BZ(Y,await uZ(H))}}async doStream(Z){let{args:$,warnings:Q}=await this.getArgs(Z),{abortSignal:J}=Z,H=await r(this.config.headers());try{let{value:Y,responseHeaders:K}=await dZ({url:this.getUrl(),headers:mZ(H,Z.headers,this.getModelConfigHeaders(this.modelId,!0),await r(this.config.o11yHeaders)),body:$,successfulResponseHandler:u$(X.any()),failedResponseHandler:HZ({errorSchema:X.any(),errorToMessage:(W)=>W}),...J&&{abortSignal:J},fetch:this.config.fetch});return{stream:Y.pipeThrough(new TransformStream({start(W){if(Q.length>0)W.enqueue({type:"stream-start",warnings:Q})},transform(W,z){if(W.success){let G=W.value;if(G.type==="raw"&&!Z.includeRawChunks)return;if(G.type==="response-metadata"&&G.timestamp&&typeof G.timestamp==="string")G.timestamp=new Date(G.timestamp);z.enqueue(G)}else z.error(W.error)}})),request:{body:$},response:{headers:K}}}catch(Y){throw await BZ(Y,await uZ(H))}}isFilePart(Z){return Z&&typeof Z==="object"&&"type"in Z&&Z.type==="file"}maybeEncodeFileParts(Z){for(let $ of Z.prompt)for(let Q of $.content)if(this.isFilePart(Q)){let J=Q;if(J.data instanceof Uint8Array){let H=Uint8Array.from(J.data),Y=Buffer.from(H).toString("base64");J.data=new URL(`data:${J.mediaType||"application/octet-stream"};base64,${Y}`)}}return Z}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(Z,$){return{"ai-language-model-specification-version":"2","ai-language-model-id":Z,"ai-language-model-streaming":String($)}}},a5=class{constructor(Z,$){this.modelId=Z,this.config=$,this.specificationVersion="v2",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:Z,headers:$,abortSignal:Q,providerOptions:J}){var H;let Y=await r(this.config.headers());try{let{responseHeaders:K,value:W,rawValue:z}=await dZ({url:this.getUrl(),headers:mZ(Y,$!=null?$:{},this.getModelConfigHeaders(),await r(this.config.o11yHeaders)),body:{input:Z.length===1?Z[0]:Z,...J?{providerOptions:J}:{}},successfulResponseHandler:zZ(t5),failedResponseHandler:HZ({errorSchema:X.any(),errorToMessage:(G)=>G}),...Q&&{abortSignal:Q},fetch:this.config.fetch});return{embeddings:W.embeddings,usage:(H=W.usage)!=null?H:void 0,providerMetadata:W.providerMetadata,response:{headers:K,body:z}}}catch(K){throw await BZ(K,await uZ(Y))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"2","ai-model-id":this.modelId}}},t5=g(()=>h(X.object({embeddings:X.array(X.array(X.number())),usage:X.object({tokens:X.number()}).nullish(),providerMetadata:X.record(X.string(),X.record(X.string(),X.unknown())).optional()})));async function e5(){var Z;return(Z=a$.getContext().headers)==null?void 0:Z["x-vercel-id"]}var ZJ="2.0.5",$J="0.0.1";function XJ(Z={}){var $,Q;let J=null,H=null,Y=($=Z.metadataCacheRefreshMillis)!=null?$:300000,K=0,W=(Q=c$(Z.baseURL))!=null?Q:"https://ai-gateway.vercel.sh/v1/ai",z=async()=>{let U=await QJ(Z);if(U)return EZ({Authorization:`Bearer ${U.token}`,"ai-gateway-protocol-version":$J,[r$]:U.authMethod,...Z.headers},`ai-sdk/gateway/${ZJ}`);throw Q0.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401})},G=()=>{let U=gZ({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),D=gZ({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),T=gZ({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{let O=await e5();return{...U&&{"ai-o11y-deployment-id":U},...D&&{"ai-o11y-environment":D},...T&&{"ai-o11y-region":T},...O&&{"ai-o11y-request-id":O}}}},F=(U)=>{return new r5(U,{provider:"gateway",baseURL:W,headers:z,fetch:Z.fetch,o11yHeaders:G()})},R=async()=>{var U,D,T;let O=(T=(D=(U=Z._internal)==null?void 0:U.currentDate)==null?void 0:D.call(U).getTime())!=null?T:Date.now();if(!J||O-K>Y)K=O,J=new m$({baseURL:W,headers:z,fetch:Z.fetch}).getAvailableModels().then((C)=>{return H=C,C}).catch(async(C)=>{throw await BZ(C,await uZ(await z()))});return H?Promise.resolve(H):J},E=async()=>{return new m$({baseURL:W,headers:z,fetch:Z.fetch}).getCredits().catch(async(U)=>{throw await BZ(U,await uZ(await z()))})},B=function(U){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return F(U)};return B.getAvailableModels=R,B.getCredits=E,B.imageModel=(U)=>{throw new d$({modelId:U,modelType:"imageModel"})},B.languageModel=F,B.textEmbeddingModel=(U)=>{return new a5(U,{provider:"gateway",baseURL:W,headers:z,fetch:Z.fetch,o11yHeaders:G()})},B}var e$=XJ();async function QJ(Z){let $=gZ({settingValue:Z.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});if($)return{token:$,authMethod:"api-key"};try{return{token:await t$.getVercelOidcToken(),authMethod:"oidc"}}catch(Q){return null}}var i9=wZ(y1(),1),m1=wZ(y1(),1);var LY=Object.defineProperty,AY=(Z,$)=>{for(var Q in $)LY(Z,Q,{get:$[Q],enumerable:!0})},W9="AI_NoOutputSpecifiedError",K9=`vercel.ai.error.${W9}`,wY=Symbol.for(K9),G9,EY=class extends A{constructor({message:Z="No output specified."}={}){super({name:W9,message:Z});this[G9]=!0}static isInstance(Z){return A.hasMarker(Z,K9)}};G9=wY;function PY(Z){switch(Z.type){case"unsupported-setting":{let Q=`AI SDK Warning: The "${Z.setting}" setting is not supported by this model`;if(Z.details)Q+=` - ${Z.details}`;return Q}case"unsupported-tool":{let J=`AI SDK Warning: The tool "${"name"in Z.tool?Z.tool.name:"unknown tool"}" is not supported by this model`;if(Z.details)J+=` - ${Z.details}`;return J}case"other":return`AI SDK Warning: ${Z.message}`;default:return`AI SDK Warning: ${JSON.stringify(Z,null,2)}`}}var IY="AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",oQ=!1,fY=(Z)=>{if(Z.length===0)return;let $=globalThis.AI_SDK_LOG_WARNINGS;if($===!1)return;if(typeof $==="function"){$(Z);return}if(!oQ)oQ=!0,console.info(IY);for(let Q of Z)console.warn(PY(Q))},z9="AI_InvalidArgumentError",B9=`vercel.ai.error.${z9}`,RY=Symbol.for(B9),q9,ZZ=class extends A{constructor({parameter:Z,value:$,message:Q}){super({name:z9,message:`Invalid argument for parameter ${Z}: ${Q}`});this[q9]=!0,this.parameter=Z,this.value=$}static isInstance(Z){return A.hasMarker(Z,B9)}};q9=RY;var TY="AI_InvalidStreamPartError",MY=`vercel.ai.error.${TY}`,CY=Symbol.for(MY),bY;bY=CY;var F9="AI_InvalidToolInputError",U9=`vercel.ai.error.${F9}`,SY=Symbol.for(U9),j9,O9=class extends A{constructor({toolInput:Z,toolName:$,cause:Q,message:J=`Invalid input for tool ${$}: ${KZ(Q)}`}){super({name:F9,message:J,cause:Q});this[j9]=!0,this.toolInput=Z,this.toolName=$}static isInstance(Z){return A.hasMarker(Z,U9)}};j9=SY;var vY="AI_NoImageGeneratedError",yY=`vercel.ai.error.${vY}`,xY=Symbol.for(yY),_Y;_Y=xY;var N9="AI_NoObjectGeneratedError",V9=`vercel.ai.error.${N9}`,kY=Symbol.for(V9),D9,rQ=class extends A{constructor({message:Z="No object generated.",cause:$,text:Q,response:J,usage:H,finishReason:Y}){super({name:N9,message:Z,cause:$});this[D9]=!0,this.text=Q,this.response=J,this.usage=H,this.finishReason=Y}static isInstance(Z){return A.hasMarker(Z,V9)}};D9=kY;var L9="AI_NoOutputGeneratedError",A9=`vercel.ai.error.${L9}`,hY=Symbol.for(A9),w9,gY=class extends A{constructor({message:Z="No output generated.",cause:$}={}){super({name:L9,message:Z,cause:$});this[w9]=!0}static isInstance(Z){return A.hasMarker(Z,A9)}};w9=hY;var E9="AI_NoSuchToolError",P9=`vercel.ai.error.${E9}`,mY=Symbol.for(P9),I9,h1=class extends A{constructor({toolName:Z,availableTools:$=void 0,message:Q=`Model tried to call unavailable tool '${Z}'. ${$===void 0?"No tools are available.":`Available tools: ${$.join(", ")}.`}`}){super({name:E9,message:Q});this[I9]=!0,this.toolName=Z,this.availableTools=$}static isInstance(Z){return A.hasMarker(Z,P9)}};I9=mY;var f9="AI_ToolCallRepairError",R9=`vercel.ai.error.${f9}`,dY=Symbol.for(R9),T9,uY=class extends A{constructor({cause:Z,originalError:$,message:Q=`Error repairing tool call: ${KZ(Z)}`}){super({name:f9,message:Q,cause:Z});this[T9]=!0,this.originalError=$}static isInstance(Z){return A.hasMarker(Z,R9)}};T9=dY;var cY=class extends A{constructor(Z){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${Z.version} for provider "${Z.provider}" and model "${Z.modelId}". AI SDK 5 only supports models that implement specification version "v2".`});this.version=Z.version,this.provider=Z.provider,this.modelId=Z.modelId}},iY="AI_InvalidDataContentError",pY=`vercel.ai.error.${iY}`,lY=Symbol.for(pY),nY;nY=lY;var M9="AI_InvalidMessageRoleError",C9=`vercel.ai.error.${M9}`,sY=Symbol.for(C9),b9,oY=class extends A{constructor({role:Z,message:$=`Invalid message role: '${Z}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:M9,message:$});this[b9]=!0,this.role=Z}static isInstance(Z){return A.hasMarker(Z,C9)}};b9=sY;var rY="AI_MessageConversionError",aY=`vercel.ai.error.${rY}`,tY=Symbol.for(aY),eY;eY=tY;var S9="AI_DownloadError",v9=`vercel.ai.error.${S9}`,Z4=Symbol.for(v9),y9,x1=class extends A{constructor({url:Z,statusCode:$,statusText:Q,cause:J,message:H=J==null?`Failed to download ${Z}: ${$} ${Q}`:`Failed to download ${Z}: ${J}`}){super({name:S9,message:H,cause:J});this[y9]=!0,this.url=Z,this.statusCode=$,this.statusText=Q}static isInstance(Z){return A.hasMarker(Z,v9)}};y9=Z4;var x9="AI_RetryError",_9=`vercel.ai.error.${x9}`,$4=Symbol.for(_9),k9,aQ=class extends A{constructor({message:Z,reason:$,errors:Q}){super({name:x9,message:Z});this[k9]=!0,this.reason=$,this.errors=Q,this.lastError=Q[Q.length-1]}static isInstance(Z){return A.hasMarker(Z,_9)}};k9=$4;function h9(Z){if(typeof Z!=="string"){if(Z.specificationVersion!=="v2")throw new cY({version:Z.specificationVersion,provider:Z.provider,modelId:Z.modelId});return Z}return X4().languageModel(Z)}function X4(){var Z;return(Z=globalThis.AI_SDK_DEFAULT_PROVIDER)!=null?Z:e$}var Q4=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}];var J4=(Z)=>{let $=typeof Z==="string"?MZ(Z):Z,Q=($[6]&127)<<21|($[7]&127)<<14|($[8]&127)<<7|$[9]&127;return $.slice(Q+10)};function Y4(Z){return typeof Z==="string"&&Z.startsWith("SUQz")||typeof Z!=="string"&&Z.length>10&&Z[0]===73&&Z[1]===68&&Z[2]===51?J4(Z):Z}function H4({data:Z,signatures:$}){let Q=Y4(Z),J=typeof Q==="string"?MZ(Q.substring(0,Math.min(Q.length,24))):Q;for(let H of $)if(J.length>=H.bytesPrefix.length&&H.bytesPrefix.every((Y,K)=>Y===null||J[K]===Y))return H.mediaType;return}var W4="5.0.86",K4=async({url:Z})=>{var $;let Q=Z.toString();try{let J=await fetch(Q,{headers:EZ({},`ai-sdk/${W4}`,Y9())});if(!J.ok)throw new x1({url:Q,statusCode:J.status,statusText:J.statusText});return{data:new Uint8Array(await J.arrayBuffer()),mediaType:($=J.headers.get("content-type"))!=null?$:void 0}}catch(J){if(x1.isInstance(J))throw J;throw new x1({url:Q,cause:J})}},G4=(Z=K4)=>($)=>Promise.all($.map(async(Q)=>Q.isUrlSupportedByModel?null:Z(Q)));function z4(Z){try{let[$,Q]=Z.split(",");return{mediaType:$.split(";")[0].split(":")[1],base64Content:Q}}catch($){return{mediaType:void 0,base64Content:void 0}}}var g9=X.union([X.string(),X.instanceof(Uint8Array),X.instanceof(ArrayBuffer),X.custom((Z)=>{var $,Q;return(Q=($=globalThis.Buffer)==null?void 0:$.isBuffer(Z))!=null?Q:!1},{message:"Must be a Buffer"})]);function m9(Z){if(Z instanceof Uint8Array)return{data:Z,mediaType:void 0};if(Z instanceof ArrayBuffer)return{data:new Uint8Array(Z),mediaType:void 0};if(typeof Z==="string")try{Z=new URL(Z)}catch($){}if(Z instanceof URL&&Z.protocol==="data:"){let{mediaType:$,base64Content:Q}=z4(Z.toString());if($==null||Q==null)throw new A({name:"InvalidDataContentError",message:`Invalid data URL format in content ${Z.toString()}`});return{data:Q,mediaType:$}}return{data:Z,mediaType:void 0}}function B4(Z){if(typeof Z==="string")return Z;if(Z instanceof ArrayBuffer)return rZ(new Uint8Array(Z));return rZ(Z)}async function q4({prompt:Z,supportedUrls:$,download:Q=G4()}){let J=await U4(Z.messages,Q,$);return[...Z.system!=null?[{role:"system",content:Z.system}]:[],...Z.messages.map((H)=>F4({message:H,downloadedAssets:J}))]}function F4({message:Z,downloadedAssets:$}){let Q=Z.role;switch(Q){case"system":return{role:"system",content:Z.content,providerOptions:Z.providerOptions};case"user":{if(typeof Z.content==="string")return{role:"user",content:[{type:"text",text:Z.content}],providerOptions:Z.providerOptions};return{role:"user",content:Z.content.map((J)=>j4(J,$)).filter((J)=>J.type!=="text"||J.text!==""),providerOptions:Z.providerOptions}}case"assistant":{if(typeof Z.content==="string")return{role:"assistant",content:[{type:"text",text:Z.content}],providerOptions:Z.providerOptions};return{role:"assistant",content:Z.content.filter((J)=>J.type!=="text"||J.text!==""||J.providerOptions!=null).map((J)=>{let H=J.providerOptions;switch(J.type){case"file":{let{data:Y,mediaType:K}=m9(J.data);return{type:"file",data:Y,filename:J.filename,mediaType:K!=null?K:J.mediaType,providerOptions:H}}case"reasoning":return{type:"reasoning",text:J.text,providerOptions:H};case"text":return{type:"text",text:J.text,providerOptions:H};case"tool-call":return{type:"tool-call",toolCallId:J.toolCallId,toolName:J.toolName,input:J.input,providerExecuted:J.providerExecuted,providerOptions:H};case"tool-result":return{type:"tool-result",toolCallId:J.toolCallId,toolName:J.toolName,output:J.output,providerOptions:H}}}),providerOptions:Z.providerOptions}}case"tool":return{role:"tool",content:Z.content.map((J)=>({type:"tool-result",toolCallId:J.toolCallId,toolName:J.toolName,output:J.output,providerOptions:J.providerOptions})),providerOptions:Z.providerOptions};default:throw new oY({role:Q})}}async function U4(Z,$,Q){let J=Z.filter((Y)=>Y.role==="user").map((Y)=>Y.content).filter((Y)=>Array.isArray(Y)).flat().filter((Y)=>Y.type==="image"||Y.type==="file").map((Y)=>{var K;let W=(K=Y.mediaType)!=null?K:Y.type==="image"?"image/*":void 0,z=Y.type==="image"?Y.image:Y.data;if(typeof z==="string")try{z=new URL(z)}catch(G){}return{mediaType:W,data:z}}).filter((Y)=>Y.data instanceof URL).map((Y)=>({url:Y.data,isUrlSupportedByModel:Y.mediaType!=null&&H9({url:Y.data.toString(),mediaType:Y.mediaType,supportedUrls:Q})})),H=await $(J);return Object.fromEntries(H.map((Y,K)=>Y==null?null:[J[K].url.toString(),{data:Y.data,mediaType:Y.mediaType}]).filter((Y)=>Y!=null))}function j4(Z,$){var Q;if(Z.type==="text")return{type:"text",text:Z.text,providerOptions:Z.providerOptions};let J,H=Z.type;switch(H){case"image":J=Z.image;break;case"file":J=Z.data;break;default:throw Error(`Unsupported part type: ${H}`)}let{data:Y,mediaType:K}=m9(J),W=K!=null?K:Z.mediaType,z=Y;if(z instanceof URL){let G=$[z.toString()];if(G)z=G.data,W!=null||(W=G.mediaType)}switch(H){case"image":{if(z instanceof Uint8Array||typeof z==="string")W=(Q=H4({data:z,signatures:Q4}))!=null?Q:W;return{type:"file",mediaType:W!=null?W:"image/*",filename:void 0,data:z,providerOptions:Z.providerOptions}}case"file":{if(W==null)throw Error("Media type is missing for file part");return{type:"file",mediaType:W,filename:Z.filename,data:z,providerOptions:Z.providerOptions}}}}function O4({maxOutputTokens:Z,temperature:$,topP:Q,topK:J,presencePenalty:H,frequencyPenalty:Y,seed:K,stopSequences:W}){if(Z!=null){if(!Number.isInteger(Z))throw new ZZ({parameter:"maxOutputTokens",value:Z,message:"maxOutputTokens must be an integer"});if(Z<1)throw new ZZ({parameter:"maxOutputTokens",value:Z,message:"maxOutputTokens must be >= 1"})}if($!=null){if(typeof $!=="number")throw new ZZ({parameter:"temperature",value:$,message:"temperature must be a number"})}if(Q!=null){if(typeof Q!=="number")throw new ZZ({parameter:"topP",value:Q,message:"topP must be a number"})}if(J!=null){if(typeof J!=="number")throw new ZZ({parameter:"topK",value:J,message:"topK must be a number"})}if(H!=null){if(typeof H!=="number")throw new ZZ({parameter:"presencePenalty",value:H,message:"presencePenalty must be a number"})}if(Y!=null){if(typeof Y!=="number")throw new ZZ({parameter:"frequencyPenalty",value:Y,message:"frequencyPenalty must be a number"})}if(K!=null){if(!Number.isInteger(K))throw new ZZ({parameter:"seed",value:K,message:"seed must be an integer"})}return{maxOutputTokens:Z,temperature:$,topP:Q,topK:J,presencePenalty:H,frequencyPenalty:Y,stopSequences:W,seed:K}}function N4(Z){return Z!=null&&Object.keys(Z).length>0}function V4({tools:Z,toolChoice:$,activeTools:Q}){if(!N4(Z))return{tools:void 0,toolChoice:void 0};return{tools:(Q!=null?Object.entries(Z).filter(([H])=>Q.includes(H)):Object.entries(Z)).map(([H,Y])=>{let K=Y.type;switch(K){case void 0:case"dynamic":case"function":return{type:"function",name:H,description:Y.description,inputSchema:GZ(Y.inputSchema).jsonSchema,providerOptions:Y.providerOptions};case"provider-defined":return{type:"provider-defined",name:H,id:Y.id,args:Y.args};default:throw Error(`Unsupported tool type: ${K}`)}}),toolChoice:$==null?{type:"auto"}:typeof $==="string"?{type:$}:{type:"tool",toolName:$.toolName}}}var aZ=X.lazy(()=>X.union([X.null(),X.string(),X.number(),X.boolean(),X.record(X.string(),aZ),X.array(aZ)])),w=X.record(X.string(),X.record(X.string(),aZ)),d9=X.object({type:X.literal("text"),text:X.string(),providerOptions:w.optional()}),D4=X.object({type:X.literal("image"),image:X.union([g9,X.instanceof(URL)]),mediaType:X.string().optional(),providerOptions:w.optional()}),u9=X.object({type:X.literal("file"),data:X.union([g9,X.instanceof(URL)]),filename:X.string().optional(),mediaType:X.string(),providerOptions:w.optional()}),L4=X.object({type:X.literal("reasoning"),text:X.string(),providerOptions:w.optional()}),A4=X.object({type:X.literal("tool-call"),toolCallId:X.string(),toolName:X.string(),input:X.unknown(),providerOptions:w.optional(),providerExecuted:X.boolean().optional()}),w4=X.discriminatedUnion("type",[X.object({type:X.literal("text"),value:X.string()}),X.object({type:X.literal("json"),value:aZ}),X.object({type:X.literal("error-text"),value:X.string()}),X.object({type:X.literal("error-json"),value:aZ}),X.object({type:X.literal("content"),value:X.array(X.union([X.object({type:X.literal("text"),text:X.string()}),X.object({type:X.literal("media"),data:X.string(),mediaType:X.string()})]))})]),c9=X.object({type:X.literal("tool-result"),toolCallId:X.string(),toolName:X.string(),output:w4,providerOptions:w.optional()}),E4=X.object({role:X.literal("system"),content:X.string(),providerOptions:w.optional()});var P4=X.object({role:X.literal("user"),content:X.union([X.string(),X.array(X.union([d9,D4,u9]))]),providerOptions:w.optional()});var I4=X.object({role:X.literal("assistant"),content:X.union([X.string(),X.array(X.union([d9,u9,L4,A4,c9]))]),providerOptions:w.optional()});var f4=X.object({role:X.literal("tool"),content:X.array(c9),providerOptions:w.optional()});var R4=X.union([E4,P4,I4,f4]);async function T4(Z){if(Z.prompt==null&&Z.messages==null)throw new OZ({prompt:Z,message:"prompt or messages must be defined"});if(Z.prompt!=null&&Z.messages!=null)throw new OZ({prompt:Z,message:"prompt and messages cannot be defined at the same time"});if(Z.system!=null&&typeof Z.system!=="string")throw new OZ({prompt:Z,message:"system must be a string"});let $;if(Z.prompt!=null&&typeof Z.prompt==="string")$=[{role:"user",content:Z.prompt}];else if(Z.prompt!=null&&Array.isArray(Z.prompt))$=Z.prompt;else if(Z.messages!=null)$=Z.messages;else throw new OZ({prompt:Z,message:"prompt or messages must be defined"});if($.length===0)throw new OZ({prompt:Z,message:"messages must not be empty"});let Q=await a({value:$,schema:X.array(R4)});if(!Q.success)throw new OZ({prompt:Z,message:"The messages must be a ModelMessage[]. If you have passed a UIMessage[], you can use convertToModelMessages to convert them.",cause:Q.error});return{messages:$,system:Z.system}}function M4(Z){if(Q0.isInstance(Z)||m0.isInstance(Z))return new A({name:"GatewayError",message:"Vercel AI Gateway access failed. If you want to use AI SDK providers directly, use the providers, e.g. @ai-sdk/openai, or register a different global default provider.",cause:Z});return Z}function g1({operationId:Z,telemetry:$}){return{"operation.name":`${Z}${($==null?void 0:$.functionId)!=null?` ${$.functionId}`:""}`,"resource.name":$==null?void 0:$.functionId,"ai.operationId":Z,"ai.telemetry.functionId":$==null?void 0:$.functionId}}function C4({model:Z,settings:$,telemetry:Q,headers:J}){var H;return{"ai.model.provider":Z.provider,"ai.model.id":Z.modelId,...Object.entries($).reduce((Y,[K,W])=>{return Y[`ai.settings.${K}`]=W,Y},{}),...Object.entries((H=Q==null?void 0:Q.metadata)!=null?H:{}).reduce((Y,[K,W])=>{return Y[`ai.telemetry.metadata.${K}`]=W,Y},{}),...Object.entries(J!=null?J:{}).reduce((Y,[K,W])=>{if(W!==void 0)Y[`ai.request.headers.${K}`]=W;return Y},{})}}var b4={startSpan(){return B0},startActiveSpan(Z,$,Q,J){if(typeof $==="function")return $(B0);if(typeof Q==="function")return Q(B0);if(typeof J==="function")return J(B0)}},B0={spanContext(){return S4},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},addLink(){return this},addLinks(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this}},S4={traceId:"",spanId:"",traceFlags:0};function v4({isEnabled:Z=!1,tracer:$}={}){if(!Z)return b4;if($)return $;return i9.trace.getTracer("ai")}function d1({name:Z,tracer:$,attributes:Q,fn:J,endWhenDone:H=!0}){return $.startActiveSpan(Z,{attributes:Q},async(Y)=>{try{let K=await J(Y);if(H)Y.end();return K}catch(K){try{p9(Y,K)}finally{Y.end()}throw K}})}function p9(Z,$){if($ instanceof Error)Z.recordException({name:$.name,message:$.message,stack:$.stack}),Z.setStatus({code:m1.SpanStatusCode.ERROR,message:$.message});else Z.setStatus({code:m1.SpanStatusCode.ERROR})}function TZ({telemetry:Z,attributes:$}){if((Z==null?void 0:Z.isEnabled)!==!0)return{};return Object.entries($).reduce((Q,[J,H])=>{if(H==null)return Q;if(typeof H==="object"&&"input"in H&&typeof H.input==="function"){if((Z==null?void 0:Z.recordInputs)===!1)return Q;let Y=H.input();return Y==null?Q:{...Q,[J]:Y}}if(typeof H==="object"&&"output"in H&&typeof H.output==="function"){if((Z==null?void 0:Z.recordOutputs)===!1)return Q;let Y=H.output();return Y==null?Q:{...Q,[J]:Y}}return{...Q,[J]:H}},{})}function y4(Z){return JSON.stringify(Z.map(($)=>({...$,content:typeof $.content==="string"?$.content:$.content.map((Q)=>Q.type==="file"?{...Q,data:Q.data instanceof Uint8Array?B4(Q.data):Q.data}:Q)})))}function x4(Z,$){return{inputTokens:oZ(Z.inputTokens,$.inputTokens),outputTokens:oZ(Z.outputTokens,$.outputTokens),totalTokens:oZ(Z.totalTokens,$.totalTokens),reasoningTokens:oZ(Z.reasoningTokens,$.reasoningTokens),cachedInputTokens:oZ(Z.cachedInputTokens,$.cachedInputTokens)}}function oZ(Z,$){return Z==null&&$==null?void 0:(Z!=null?Z:0)+($!=null?$:0)}function tQ(Z){return Z===void 0?[]:Array.isArray(Z)?Z:[Z]}function _4({error:Z,exponentialBackoffDelay:$}){let Q=Z.responseHeaders;if(!Q)return $;let J,H=Q["retry-after-ms"];if(H){let K=parseFloat(H);if(!Number.isNaN(K))J=K}let Y=Q["retry-after"];if(Y&&J===void 0){let K=parseFloat(Y);if(!Number.isNaN(K))J=K*1000;else J=Date.parse(Y)-Date.now()}if(J!=null&&!Number.isNaN(J)&&0<=J&&(J<60000||J<$))return J;return $}var k4=({maxRetries:Z=2,initialDelayInMs:$=2000,backoffFactor:Q=2,abortSignal:J}={})=>async(H)=>l9(H,{maxRetries:Z,delayInMs:$,backoffFactor:Q,abortSignal:J});async function l9(Z,{maxRetries:$,delayInMs:Q,backoffFactor:J,abortSignal:H},Y=[]){try{return await Z()}catch(K){if(j0(K))throw K;if($===0)throw K;let W=tZ(K),z=[...Y,K],G=z.length;if(G>$)throw new aQ({message:`Failed after ${G} attempts. Last error: ${W}`,reason:"maxRetriesExceeded",errors:z});if(K instanceof Error&&X0.isInstance(K)&&K.isRetryable===!0&&G<=$)return await J9(_4({error:K,exponentialBackoffDelay:Q}),{abortSignal:H}),l9(Z,{maxRetries:$,delayInMs:J*Q,backoffFactor:J,abortSignal:H},z);if(G===1)throw K;throw new aQ({message:`Failed after ${G} attempts with non-retryable error: '${W}'`,reason:"errorNotRetryable",errors:z})}}function h4({maxRetries:Z,abortSignal:$}){if(Z!=null){if(!Number.isInteger(Z))throw new ZZ({parameter:"maxRetries",value:Z,message:"maxRetries must be an integer"});if(Z<0)throw new ZZ({parameter:"maxRetries",value:Z,message:"maxRetries must be >= 0"})}let Q=Z!=null?Z:2;return{maxRetries:Q,retry:k4({maxRetries:Q,abortSignal:$})}}var g4=class{constructor({data:Z,mediaType:$}){let Q=Z instanceof Uint8Array;this.base64Data=Q?void 0:Z,this.uint8ArrayData=Q?Z:void 0,this.mediaType=$}get base64(){if(this.base64Data==null)this.base64Data=rZ(this.uint8ArrayData);return this.base64Data}get uint8Array(){if(this.uint8ArrayData==null)this.uint8ArrayData=MZ(this.base64Data);return this.uint8ArrayData}},m4=class extends g4{constructor(Z){super(Z);this.type="file"}};async function d4({toolCall:Z,tools:$,repairToolCall:Q,system:J,messages:H}){try{if($==null)throw new h1({toolName:Z.toolName});try{return await eQ({toolCall:Z,tools:$})}catch(Y){if(Q==null||!(h1.isInstance(Y)||O9.isInstance(Y)))throw Y;let K=null;try{K=await Q({toolCall:Z,tools:$,inputSchema:({toolName:W})=>{let{inputSchema:z}=$[W];return GZ(z).jsonSchema},system:J,messages:H,error:Y})}catch(W){throw new uY({cause:W,originalError:Y})}if(K==null)throw Y;return await eQ({toolCall:K,tools:$})}}catch(Y){let K=await WZ({text:Z.input}),W=K.success?K.value:Z.input;return{type:"tool-call",toolCallId:Z.toolCallId,toolName:Z.toolName,input:W,dynamic:!0,invalid:!0,error:Y}}}async function eQ({toolCall:Z,tools:$}){let Q=Z.toolName,J=$[Q];if(J==null)throw new h1({toolName:Z.toolName,availableTools:Object.keys($)});let H=GZ(J.inputSchema),Y=Z.input.trim()===""?await a({value:{},schema:H}):await WZ({text:Z.input,schema:H});if(Y.success===!1)throw new O9({toolName:Q,toolInput:Z.input,cause:Y.error});return J.type==="dynamic"?{type:"tool-call",toolCallId:Z.toolCallId,toolName:Z.toolName,input:Y.value,providerExecuted:Z.providerExecuted,providerMetadata:Z.providerMetadata,dynamic:!0}:{type:"tool-call",toolCallId:Z.toolCallId,toolName:Q,input:Y.value,providerExecuted:Z.providerExecuted,providerMetadata:Z.providerMetadata}}var u4=class{constructor({content:Z,finishReason:$,usage:Q,warnings:J,request:H,response:Y,providerMetadata:K}){this.content=Z,this.finishReason=$,this.usage=Q,this.warnings=J,this.request=H,this.response=Y,this.providerMetadata=K}get text(){return this.content.filter((Z)=>Z.type==="text").map((Z)=>Z.text).join("")}get reasoning(){return this.content.filter((Z)=>Z.type==="reasoning")}get reasoningText(){return this.reasoning.length===0?void 0:this.reasoning.map((Z)=>Z.text).join("")}get files(){return this.content.filter((Z)=>Z.type==="file").map((Z)=>Z.file)}get sources(){return this.content.filter((Z)=>Z.type==="source")}get toolCalls(){return this.content.filter((Z)=>Z.type==="tool-call")}get staticToolCalls(){return this.toolCalls.filter((Z)=>Z.dynamic!==!0)}get dynamicToolCalls(){return this.toolCalls.filter((Z)=>Z.dynamic===!0)}get toolResults(){return this.content.filter((Z)=>Z.type==="tool-result")}get staticToolResults(){return this.toolResults.filter((Z)=>Z.dynamic!==!0)}get dynamicToolResults(){return this.toolResults.filter((Z)=>Z.dynamic===!0)}};function c4(Z){return({steps:$})=>$.length===Z}async function i4({stopConditions:Z,steps:$}){return(await Promise.all(Z.map((Q)=>Q({steps:$})))).some((Q)=>Q)}function _1({output:Z,tool:$,errorMode:Q}){if(Q==="text")return{type:"error-text",value:KZ(Z)};else if(Q==="json")return{type:"error-json",value:Z9(Z)};if($==null?void 0:$.toModelOutput)return $.toModelOutput(Z);return typeof Z==="string"?{type:"text",value:Z}:{type:"json",value:Z9(Z)}}function Z9(Z){return Z===void 0?null:Z}function $9({content:Z,tools:$}){let Q=[],J=Z.filter((Y)=>Y.type!=="source").filter((Y)=>(Y.type!=="tool-result"||Y.providerExecuted)&&(Y.type!=="tool-error"||Y.providerExecuted)).filter((Y)=>Y.type!=="text"||Y.text.length>0).map((Y)=>{switch(Y.type){case"text":return{type:"text",text:Y.text,providerOptions:Y.providerMetadata};case"reasoning":return{type:"reasoning",text:Y.text,providerOptions:Y.providerMetadata};case"file":return{type:"file",data:Y.file.base64,mediaType:Y.file.mediaType,providerOptions:Y.providerMetadata};case"tool-call":return{type:"tool-call",toolCallId:Y.toolCallId,toolName:Y.toolName,input:Y.input,providerExecuted:Y.providerExecuted,providerOptions:Y.providerMetadata};case"tool-result":return{type:"tool-result",toolCallId:Y.toolCallId,toolName:Y.toolName,output:_1({tool:$==null?void 0:$[Y.toolName],output:Y.output,errorMode:"none"}),providerExecuted:!0,providerOptions:Y.providerMetadata};case"tool-error":return{type:"tool-result",toolCallId:Y.toolCallId,toolName:Y.toolName,output:_1({tool:$==null?void 0:$[Y.toolName],output:Y.error,errorMode:"json"}),providerOptions:Y.providerMetadata}}});if(J.length>0)Q.push({role:"assistant",content:J});let H=Z.filter((Y)=>Y.type==="tool-result"||Y.type==="tool-error").filter((Y)=>!Y.providerExecuted).map((Y)=>({type:"tool-result",toolCallId:Y.toolCallId,toolName:Y.toolName,output:_1({tool:$==null?void 0:$[Y.toolName],output:Y.type==="tool-result"?Y.output:Y.error,errorMode:Y.type==="tool-error"?"text":"none"})}));if(H.length>0)Q.push({role:"tool",content:H});return Q}var GG=JZ({prefix:"aitxt",size:24});function O0(Z,$){let Q=new Headers(Z!=null?Z:{});for(let[J,H]of Object.entries($))if(!Q.has(J))Q.set(J,H);return Q}function p4({status:Z,statusText:$,headers:Q,textStream:J}){return new Response(J.pipeThrough(new TextEncoderStream),{status:Z!=null?Z:200,statusText:$,headers:O0(Q,{"content-type":"text/plain; charset=utf-8"})})}function n9({response:Z,status:$,statusText:Q,headers:J,stream:H}){Z.writeHead($!=null?$:200,Q,J);let Y=H.getReader();(async()=>{try{while(!0){let{done:W,value:z}=await Y.read();if(W)break;if(!Z.write(z))await new Promise((F)=>{Z.once("drain",F)})}}catch(W){throw W}finally{Z.end()}})()}function l4({response:Z,status:$,statusText:Q,headers:J,textStream:H}){n9({response:Z,status:$,statusText:Q,headers:Object.fromEntries(O0(J,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:H.pipeThrough(new TextEncoderStream)})}var s9=class extends TransformStream{constructor(){super({transform(Z,$){$.enqueue(`data: ${JSON.stringify(Z)}
|
|
18
|
+
|
|
19
|
+
`)},flush(Z){Z.enqueue(`data: [DONE]
|
|
20
|
+
|
|
21
|
+
`)}})}},o9={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};function n4({status:Z,statusText:$,headers:Q,stream:J,consumeSseStream:H}){let Y=J.pipeThrough(new s9);if(H){let[K,W]=Y.tee();Y=K,H({stream:W})}return new Response(Y.pipeThrough(new TextEncoderStream),{status:Z,statusText:$,headers:O0(Q,o9)})}function s4({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 jG=g(()=>h(X.union([X.strictObject({type:X.literal("text-start"),id:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("text-delta"),id:X.string(),delta:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("text-end"),id:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("error"),errorText:X.string()}),X.strictObject({type:X.literal("tool-input-start"),toolCallId:X.string(),toolName:X.string(),providerExecuted:X.boolean().optional(),dynamic:X.boolean().optional()}),X.strictObject({type:X.literal("tool-input-delta"),toolCallId:X.string(),inputTextDelta:X.string()}),X.strictObject({type:X.literal("tool-input-available"),toolCallId:X.string(),toolName:X.string(),input:X.unknown(),providerExecuted:X.boolean().optional(),providerMetadata:w.optional(),dynamic:X.boolean().optional()}),X.strictObject({type:X.literal("tool-input-error"),toolCallId:X.string(),toolName:X.string(),input:X.unknown(),providerExecuted:X.boolean().optional(),providerMetadata:w.optional(),dynamic:X.boolean().optional(),errorText:X.string()}),X.strictObject({type:X.literal("tool-output-available"),toolCallId:X.string(),output:X.unknown(),providerExecuted:X.boolean().optional(),dynamic:X.boolean().optional(),preliminary:X.boolean().optional()}),X.strictObject({type:X.literal("tool-output-error"),toolCallId:X.string(),errorText:X.string(),providerExecuted:X.boolean().optional(),dynamic:X.boolean().optional()}),X.strictObject({type:X.literal("reasoning-start"),id:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("reasoning-delta"),id:X.string(),delta:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("reasoning-end"),id:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("source-url"),sourceId:X.string(),url:X.string(),title:X.string().optional(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("source-document"),sourceId:X.string(),mediaType:X.string(),title:X.string(),filename:X.string().optional(),providerMetadata:w.optional()}),X.strictObject({type:X.literal("file"),url:X.string(),mediaType:X.string(),providerMetadata:w.optional()}),X.strictObject({type:X.custom((Z)=>typeof Z==="string"&&Z.startsWith("data-"),{message:'Type must start with "data-"'}),id:X.string().optional(),data:X.unknown(),transient:X.boolean().optional()}),X.strictObject({type:X.literal("start-step")}),X.strictObject({type:X.literal("finish-step")}),X.strictObject({type:X.literal("start"),messageId:X.string().optional(),messageMetadata:X.unknown().optional()}),X.strictObject({type:X.literal("finish"),messageMetadata:X.unknown().optional()}),X.strictObject({type:X.literal("abort")}),X.strictObject({type:X.literal("message-metadata"),messageMetadata:X.unknown()})])));function o4(Z){return Z.type.startsWith("data-")}function r9(Z,$){if(Z===void 0&&$===void 0)return;if(Z===void 0)return $;if($===void 0)return Z;let Q={...Z};for(let J in $)if(Object.prototype.hasOwnProperty.call($,J)){let H=$[J];if(H===void 0)continue;let Y=J in Z?Z[J]:void 0,K=H!==null&&typeof H==="object"&&!Array.isArray(H)&&!(H instanceof Date)&&!(H instanceof RegExp),W=Y!==null&&Y!==void 0&&typeof Y==="object"&&!Array.isArray(Y)&&!(Y instanceof Date)&&!(Y instanceof RegExp);if(K&&W)Q[J]=r9(Y,H);else Q[J]=H}return Q}function r4(Z){let $=["ROOT"],Q=-1,J=null;function H(z,G,F){switch(z){case'"':{Q=G,$.pop(),$.push(F),$.push("INSIDE_STRING");break}case"f":case"t":case"n":{Q=G,J=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 Y(z,G){switch(z){case",":{$.pop(),$.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{Q=G,$.pop();break}}}function K(z,G){switch(z){case",":{$.pop(),$.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{Q=G,$.pop();break}}}for(let z=0;z<Z.length;z++){let G=Z[z];switch($[$.length-1]){case"ROOT":H(G,z,"FINISH");break;case"INSIDE_OBJECT_START":{switch(G){case'"':{$.pop(),$.push("INSIDE_OBJECT_KEY");break}case"}":{Q=z,$.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":{H(G,z,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{Y(G,z);break}case"INSIDE_STRING":{switch(G){case'"':{$.pop(),Q=z;break}case"\\":{$.push("INSIDE_STRING_ESCAPE");break}default:Q=z}break}case"INSIDE_ARRAY_START":{switch(G){case"]":{Q=z,$.pop();break}default:{Q=z,H(G,z,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(G){case",":{$.pop(),$.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{Q=z,$.pop();break}default:{Q=z;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{H(G,z,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{$.pop(),Q=z;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=z;break}case"e":case"E":case"-":case".":break;case",":{if($.pop(),$[$.length-1]==="INSIDE_ARRAY_AFTER_VALUE")K(G,z);if($[$.length-1]==="INSIDE_OBJECT_AFTER_VALUE")Y(G,z);break}case"}":{if($.pop(),$[$.length-1]==="INSIDE_OBJECT_AFTER_VALUE")Y(G,z);break}case"]":{if($.pop(),$[$.length-1]==="INSIDE_ARRAY_AFTER_VALUE")K(G,z);break}default:{$.pop();break}}break}case"INSIDE_LITERAL":{let R=Z.substring(J,z+1);if(!"false".startsWith(R)&&!"true".startsWith(R)&&!"null".startsWith(R)){if($.pop(),$[$.length-1]==="INSIDE_OBJECT_AFTER_VALUE")Y(G,z);else if($[$.length-1]==="INSIDE_ARRAY_AFTER_VALUE")K(G,z)}else Q=z;break}}}let W=Z.slice(0,Q+1);for(let z=$.length-1;z>=0;z--)switch($[z]){case"INSIDE_STRING":{W+='"';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":{W+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{W+="]";break}case"INSIDE_LITERAL":{let F=Z.substring(J,Z.length);if("true".startsWith(F))W+="true".slice(F.length);else if("false".startsWith(F))W+="false".slice(F.length);else if("null".startsWith(F))W+="null".slice(F.length)}}return W}async function a9(Z){if(Z===void 0)return{value:void 0,state:"undefined-input"};let $=await WZ({text:Z});if($.success)return{value:$.value,state:"successful-parse"};if($=await WZ({text:r4(Z)}),$.success)return{value:$.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}function k1(Z){return Z.type.startsWith("tool-")}function X9(Z){return Z.type.split("-").slice(1).join("-")}function a4({lastMessage:Z,messageId:$}){return{message:(Z==null?void 0:Z.role)==="assistant"?Z:{id:$,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function t4({stream:Z,messageMetadataSchema:$,dataPartSchemas:Q,runUpdateMessageJob:J,onError:H,onToolCall:Y,onData:K}){return Z.pipeThrough(new TransformStream({async transform(W,z){await J(async({state:G,write:F})=>{var R,E,B,U;function D(q){let M=G.message.parts.filter(k1).find((L)=>L.toolCallId===q);if(M==null)throw Error("tool-output-error must be preceded by a tool-input-available");return M}function T(q){let M=G.message.parts.filter((L)=>L.type==="dynamic-tool").find((L)=>L.toolCallId===q);if(M==null)throw Error("tool-output-error must be preceded by a tool-input-available");return M}function O(q){var b;let M=G.message.parts.find((v)=>k1(v)&&v.toolCallId===q.toolCallId),L=q,P=M;if(M!=null){if(M.state=q.state,P.input=L.input,P.output=L.output,P.errorText=L.errorText,P.rawInput=L.rawInput,P.preliminary=L.preliminary,P.providerExecuted=(b=L.providerExecuted)!=null?b:M.providerExecuted,L.providerMetadata!=null&&M.state==="input-available")M.callProviderMetadata=L.providerMetadata}else G.message.parts.push({type:`tool-${q.toolName}`,toolCallId:q.toolCallId,state:q.state,input:L.input,output:L.output,rawInput:L.rawInput,errorText:L.errorText,providerExecuted:L.providerExecuted,preliminary:L.preliminary,...L.providerMetadata!=null?{callProviderMetadata:L.providerMetadata}:{}})}function C(q){var b,M;let L=G.message.parts.find((c)=>c.type==="dynamic-tool"&&c.toolCallId===q.toolCallId),P=q,v=L;if(L!=null){if(L.state=q.state,v.toolName=q.toolName,v.input=P.input,v.output=P.output,v.errorText=P.errorText,v.rawInput=(b=P.rawInput)!=null?b:v.rawInput,v.preliminary=P.preliminary,v.providerExecuted=(M=P.providerExecuted)!=null?M:L.providerExecuted,P.providerMetadata!=null&&L.state==="input-available")L.callProviderMetadata=P.providerMetadata}else G.message.parts.push({type:"dynamic-tool",toolName:q.toolName,toolCallId:q.toolCallId,state:q.state,input:P.input,output:P.output,errorText:P.errorText,preliminary:P.preliminary,providerExecuted:P.providerExecuted,...P.providerMetadata!=null?{callProviderMetadata:P.providerMetadata}:{}})}async function m(q){if(q!=null){let b=G.message.metadata!=null?r9(G.message.metadata,q):q;if($!=null)await U0({value:b,schema:$});G.message.metadata=b}}switch(W.type){case"text-start":{let q={type:"text",text:"",providerMetadata:W.providerMetadata,state:"streaming"};G.activeTextParts[W.id]=q,G.message.parts.push(q),F();break}case"text-delta":{let q=G.activeTextParts[W.id];q.text+=W.delta,q.providerMetadata=(R=W.providerMetadata)!=null?R:q.providerMetadata,F();break}case"text-end":{let q=G.activeTextParts[W.id];q.state="done",q.providerMetadata=(E=W.providerMetadata)!=null?E:q.providerMetadata,delete G.activeTextParts[W.id],F();break}case"reasoning-start":{let q={type:"reasoning",text:"",providerMetadata:W.providerMetadata,state:"streaming"};G.activeReasoningParts[W.id]=q,G.message.parts.push(q),F();break}case"reasoning-delta":{let q=G.activeReasoningParts[W.id];q.text+=W.delta,q.providerMetadata=(B=W.providerMetadata)!=null?B:q.providerMetadata,F();break}case"reasoning-end":{let q=G.activeReasoningParts[W.id];q.providerMetadata=(U=W.providerMetadata)!=null?U:q.providerMetadata,q.state="done",delete G.activeReasoningParts[W.id],F();break}case"file":{G.message.parts.push({type:"file",mediaType:W.mediaType,url:W.url}),F();break}case"source-url":{G.message.parts.push({type:"source-url",sourceId:W.sourceId,url:W.url,title:W.title,providerMetadata:W.providerMetadata}),F();break}case"source-document":{G.message.parts.push({type:"source-document",sourceId:W.sourceId,mediaType:W.mediaType,title:W.title,filename:W.filename,providerMetadata:W.providerMetadata}),F();break}case"tool-input-start":{let q=G.message.parts.filter(k1);if(G.partialToolCalls[W.toolCallId]={text:"",toolName:W.toolName,index:q.length,dynamic:W.dynamic},W.dynamic)C({toolCallId:W.toolCallId,toolName:W.toolName,state:"input-streaming",input:void 0,providerExecuted:W.providerExecuted});else O({toolCallId:W.toolCallId,toolName:W.toolName,state:"input-streaming",input:void 0,providerExecuted:W.providerExecuted});F();break}case"tool-input-delta":{let q=G.partialToolCalls[W.toolCallId];q.text+=W.inputTextDelta;let{value:b}=await a9(q.text);if(q.dynamic)C({toolCallId:W.toolCallId,toolName:q.toolName,state:"input-streaming",input:b});else O({toolCallId:W.toolCallId,toolName:q.toolName,state:"input-streaming",input:b});F();break}case"tool-input-available":{if(W.dynamic)C({toolCallId:W.toolCallId,toolName:W.toolName,state:"input-available",input:W.input,providerExecuted:W.providerExecuted,providerMetadata:W.providerMetadata});else O({toolCallId:W.toolCallId,toolName:W.toolName,state:"input-available",input:W.input,providerExecuted:W.providerExecuted,providerMetadata:W.providerMetadata});if(F(),Y&&!W.providerExecuted)await Y({toolCall:W});break}case"tool-input-error":{if(W.dynamic)C({toolCallId:W.toolCallId,toolName:W.toolName,state:"output-error",input:W.input,errorText:W.errorText,providerExecuted:W.providerExecuted,providerMetadata:W.providerMetadata});else O({toolCallId:W.toolCallId,toolName:W.toolName,state:"output-error",input:void 0,rawInput:W.input,errorText:W.errorText,providerExecuted:W.providerExecuted,providerMetadata:W.providerMetadata});F();break}case"tool-output-available":{if(W.dynamic){let q=T(W.toolCallId);C({toolCallId:W.toolCallId,toolName:q.toolName,state:"output-available",input:q.input,output:W.output,preliminary:W.preliminary})}else{let q=D(W.toolCallId);O({toolCallId:W.toolCallId,toolName:X9(q),state:"output-available",input:q.input,output:W.output,providerExecuted:W.providerExecuted,preliminary:W.preliminary})}F();break}case"tool-output-error":{if(W.dynamic){let q=T(W.toolCallId);C({toolCallId:W.toolCallId,toolName:q.toolName,state:"output-error",input:q.input,errorText:W.errorText,providerExecuted:W.providerExecuted})}else{let q=D(W.toolCallId);O({toolCallId:W.toolCallId,toolName:X9(q),state:"output-error",input:q.input,rawInput:q.rawInput,errorText:W.errorText,providerExecuted:W.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(W.messageId!=null)G.message.id=W.messageId;if(await m(W.messageMetadata),W.messageId!=null||W.messageMetadata!=null)F();break}case"finish":{if(await m(W.messageMetadata),W.messageMetadata!=null)F();break}case"message-metadata":{if(await m(W.messageMetadata),W.messageMetadata!=null)F();break}case"error":{H==null||H(Error(W.errorText));break}default:if(o4(W)){if((Q==null?void 0:Q[W.type])!=null)await U0({value:W.data,schema:Q[W.type]});let q=W;if(q.transient){K==null||K(q);break}let b=q.id!=null?G.message.parts.find((M)=>q.type===M.type&&q.id===M.id):void 0;if(b!=null)b.data=q.data;else G.message.parts.push(q);K==null||K(q),F()}}z.enqueue(W)})}}))}function e4({messageId:Z,originalMessages:$=[],onFinish:Q,onError:J,stream:H}){let Y=$==null?void 0:$[$.length-1];if((Y==null?void 0:Y.role)!=="assistant")Y=void 0;else Z=Y.id;let K=!1,W=H.pipeThrough(new TransformStream({transform(E,B){if(E.type==="start"){let U=E;if(U.messageId==null&&Z!=null)U.messageId=Z}if(E.type==="abort")K=!0;B.enqueue(E)}}));if(Q==null)return W;let z=a4({lastMessage:Y?structuredClone(Y):void 0,messageId:Z!=null?Z:""}),G=async(E)=>{await E({state:z,write:()=>{}})},F=!1,R=async()=>{if(F||!Q)return;F=!0;let E=z.message.id===(Y==null?void 0:Y.id);await Q({isAborted:K,isContinuation:E,responseMessage:z.message,messages:[...E?$.slice(0,-1):$,z.message]})};return t4({stream:W,runUpdateMessageJob:G,onError:J}).pipeThrough(new TransformStream({transform(E,B){B.enqueue(E)},async cancel(){await R()},async flush(){await R()}}))}function ZH({response:Z,status:$,statusText:Q,headers:J,stream:H,consumeSseStream:Y}){let K=H.pipeThrough(new s9);if(Y){let[W,z]=K.tee();K=W,Y({stream:z})}n9({response:Z,status:$,statusText:Q,headers:Object.fromEntries(O0(J,o9).entries()),stream:K.pipeThrough(new TextEncoderStream)})}function q0(Z){let $=Z.pipeThrough(new TransformStream);return $[Symbol.asyncIterator]=function(){let Q=this.getReader(),J=!1;async function H(Y){var K;J=!0;try{if(Y)await((K=Q.cancel)==null?void 0:K.call(Q))}finally{try{Q.releaseLock()}catch(W){}}}return{async next(){if(J)return{done:!0,value:void 0};let{done:Y,value:K}=await Q.read();if(Y)return await H(!0),{done:!0,value:void 0};return{done:!1,value:K}},async return(){return await H(!0),{done:!0,value:void 0}},async throw(Y){throw await H(!0),Y}}},$}async function $H({stream:Z,onError:$}){let Q=Z.getReader();try{while(!0){let{done:J}=await Q.read();if(J)break}}catch(J){$==null||$(J)}finally{Q.releaseLock()}}function Q9(){let Z,$;return{promise:new Promise((J,H)=>{Z=J,$=H}),resolve:Z,reject:$}}function XH(){let Z=[],$=null,Q=!1,J=Q9(),H=()=>{Q=!0,J.resolve(),Z.forEach((K)=>K.cancel()),Z=[],$==null||$.close()},Y=async()=>{if(Q&&Z.length===0){$==null||$.close();return}if(Z.length===0)return J=Q9(),await J.promise,Y();try{let{value:K,done:W}=await Z[0].read();if(W){if(Z.shift(),Z.length>0)await Y();else if(Q)$==null||$.close()}else $==null||$.enqueue(K)}catch(K){$==null||$.error(K),Z.shift(),H()}};return{stream:new ReadableStream({start(K){$=K},pull:Y,async cancel(){for(let K of Z)await K.cancel();Z=[],Q=!0}}),addStream:(K)=>{if(Q)throw Error("Cannot add inner stream: outer stream is closed");Z.push(K.getReader()),J.resolve()},close:()=>{if(Q=!0,J.resolve(),Z.length===0)$==null||$.close()},terminate:H}}var F0=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 QH(){var Z,$;return($=(Z=globalThis==null?void 0:globalThis.performance)==null?void 0:Z.now())!=null?$:Date.now()}function JH({tools:Z,generatorStream:$,tracer:Q,telemetry:J,system:H,messages:Y,abortSignal:K,repairToolCall:W,experimental_context:z}){let G=null,F=new ReadableStream({start(O){G=O}}),R=new Set,E=new Map,B=!1,U=void 0;function D(){if(B&&R.size===0){if(U!=null)G.enqueue(U);G.close()}}let T=new TransformStream({async transform(O,C){let m=O.type;switch(m){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":{C.enqueue(O);break}case"file":{C.enqueue({type:"file",file:new m4({data:O.data,mediaType:O.mediaType})});break}case"finish":{U={type:"finish",finishReason:O.finishReason,usage:O.usage,providerMetadata:O.providerMetadata};break}case"tool-call":{try{let q=await d4({toolCall:O,tools:Z,repairToolCall:W,system:H,messages:Y});if(C.enqueue(q),q.invalid){G.enqueue({type:"tool-error",toolCallId:q.toolCallId,toolName:q.toolName,input:q.input,error:tZ(q.error),dynamic:!0});break}let b=Z[q.toolName];if(E.set(q.toolCallId,q.input),b.onInputAvailable!=null)await b.onInputAvailable({input:q.input,toolCallId:q.toolCallId,messages:Y,abortSignal:K,experimental_context:z});if(b.execute!=null&&q.providerExecuted!==!0){let M=u1();R.add(M),d1({name:"ai.toolCall",attributes:TZ({telemetry:J,attributes:{...g1({operationId:"ai.toolCall",telemetry:J}),"ai.toolCall.name":q.toolName,"ai.toolCall.id":q.toolCallId,"ai.toolCall.args":{output:()=>JSON.stringify(q.input)}}}),tracer:Q,fn:async(L)=>{let P;try{let v=c1({execute:b.execute.bind(b),input:q.input,options:{toolCallId:q.toolCallId,messages:Y,abortSignal:K,experimental_context:z}});for await(let c of v)if(G.enqueue({...q,type:"tool-result",output:c.output,...c.type==="preliminary"&&{preliminary:!0}}),c.type==="final")P=c.output}catch(v){p9(L,v),G.enqueue({...q,type:"tool-error",error:v}),R.delete(M),D();return}R.delete(M),D();try{L.setAttributes(TZ({telemetry:J,attributes:{"ai.toolCall.result":{output:()=>JSON.stringify(P)}}}))}catch(v){}}})}}catch(q){G.enqueue({type:"error",error:q})}break}case"tool-result":{let q=O.toolName;if(O.isError)G.enqueue({type:"tool-error",toolCallId:O.toolCallId,toolName:q,input:E.get(O.toolCallId),providerExecuted:O.providerExecuted,error:O.result});else C.enqueue({type:"tool-result",toolCallId:O.toolCallId,toolName:q,input:E.get(O.toolCallId),output:O.result,providerExecuted:O.providerExecuted});break}default:throw Error(`Unhandled chunk type: ${m}`)}},flush(){B=!0,D()}});return new ReadableStream({async start(O){return Promise.all([$.pipeThrough(T).pipeTo(new WritableStream({write(C){O.enqueue(C)},close(){}})),F.pipeTo(new WritableStream({write(C){O.enqueue(C)},close(){O.close()}}))])}})}var YH=JZ({prefix:"aitxt",size:24});function VG({model:Z,tools:$,toolChoice:Q,system:J,prompt:H,messages:Y,maxRetries:K,abortSignal:W,headers:z,stopWhen:G=c4(1),experimental_output:F,experimental_telemetry:R,prepareStep:E,providerOptions:B,experimental_activeTools:U,activeTools:D=U,experimental_repairToolCall:T,experimental_transform:O,experimental_download:C,includeRawChunks:m=!1,onChunk:q,onError:b=({error:i})=>{console.error(i)},onFinish:M,onAbort:L,onStepFinish:P,experimental_context:v,_internal:{now:c=QH,generateId:bZ=YH,currentDate:V0=()=>new Date}={},...SZ}){return new WH({model:h9(Z),telemetry:R,headers:z,settings:SZ,maxRetries:K,abortSignal:W,system:J,prompt:H,messages:Y,tools:$,toolChoice:Q,transforms:tQ(O),activeTools:D,repairToolCall:T,stopConditions:tQ(G),output:F,providerOptions:B,prepareStep:E,includeRawChunks:m,onChunk:q,onError:b,onFinish:M,onAbort:L,onStepFinish:P,now:c,currentDate:V0,generateId:bZ,experimental_context:v,download:C})}function HH(Z){if(!Z)return new TransformStream({transform(K,W){W.enqueue({part:K,partialOutput:void 0})}});let $=void 0,Q="",J="",H="";function Y({controller:K,partialOutput:W=void 0}){K.enqueue({part:{type:"text-delta",id:$,text:J},partialOutput:W}),J=""}return new TransformStream({async transform(K,W){if(K.type==="finish-step"&&J.length>0)Y({controller:W});if(K.type!=="text-delta"&&K.type!=="text-start"&&K.type!=="text-end"){W.enqueue({part:K,partialOutput:void 0});return}if($==null)$=K.id;else if(K.id!==$){W.enqueue({part:K,partialOutput:void 0});return}if(K.type==="text-start"){W.enqueue({part:K,partialOutput:void 0});return}if(K.type==="text-end"){if(J.length>0)Y({controller:W});W.enqueue({part:K,partialOutput:void 0});return}Q+=K.text,J+=K.text;let z=await Z.parsePartial({text:Q});if(z!=null){let G=JSON.stringify(z.partial);if(G!==H)Y({controller:W,partialOutput:z.partial}),H=G}}})}var WH=class{constructor({model:Z,telemetry:$,headers:Q,settings:J,maxRetries:H,abortSignal:Y,system:K,prompt:W,messages:z,tools:G,toolChoice:F,transforms:R,activeTools:E,repairToolCall:B,stopConditions:U,output:D,providerOptions:T,prepareStep:O,includeRawChunks:C,now:m,currentDate:q,generateId:b,onChunk:M,onError:L,onFinish:P,onAbort:v,onStepFinish:c,experimental_context:bZ,download:V0}){this._totalUsage=new F0,this._finishReason=new F0,this._steps=new F0,this.output=D,this.includeRawChunks=C,this.tools=G;let SZ,i=[],o1=[],D0=void 0,L0=void 0,r1={},A0=[],p=[],w0,NZ={},VZ={},Q5=new TransformStream({async transform(y,x){var _,I,s,yZ;x.enqueue(y);let{part:j}=y;if(j.type==="text-delta"||j.type==="reasoning-delta"||j.type==="source"||j.type==="tool-call"||j.type==="tool-result"||j.type==="tool-input-start"||j.type==="tool-input-delta"||j.type==="raw")await(M==null?void 0:M({chunk:j}));if(j.type==="error")await L({error:M4(j.error)});if(j.type==="text-start")NZ[j.id]={type:"text",text:"",providerMetadata:j.providerMetadata},i.push(NZ[j.id]);if(j.type==="text-delta"){let S=NZ[j.id];if(S==null){x.enqueue({part:{type:"error",error:`text part ${j.id} not found`},partialOutput:void 0});return}S.text+=j.text,S.providerMetadata=(_=j.providerMetadata)!=null?_:S.providerMetadata}if(j.type==="text-end"){let S=NZ[j.id];if(S==null){x.enqueue({part:{type:"error",error:`text part ${j.id} not found`},partialOutput:void 0});return}S.providerMetadata=(I=j.providerMetadata)!=null?I:S.providerMetadata,delete NZ[j.id]}if(j.type==="reasoning-start")VZ[j.id]={type:"reasoning",text:"",providerMetadata:j.providerMetadata},i.push(VZ[j.id]);if(j.type==="reasoning-delta"){let S=VZ[j.id];if(S==null){x.enqueue({part:{type:"error",error:`reasoning part ${j.id} not found`},partialOutput:void 0});return}S.text+=j.text,S.providerMetadata=(s=j.providerMetadata)!=null?s:S.providerMetadata}if(j.type==="reasoning-end"){let S=VZ[j.id];if(S==null){x.enqueue({part:{type:"error",error:`reasoning part ${j.id} not found`},partialOutput:void 0});return}S.providerMetadata=(yZ=j.providerMetadata)!=null?yZ:S.providerMetadata,delete VZ[j.id]}if(j.type==="file")i.push({type:"file",file:j.file});if(j.type==="source")i.push(j);if(j.type==="tool-call")i.push(j);if(j.type==="tool-result"&&!j.preliminary)i.push(j);if(j.type==="tool-error")i.push(j);if(j.type==="start-step")r1=j.request,A0=j.warnings;if(j.type==="finish-step"){let S=$9({content:i,tools:G}),xZ=new u4({content:i,finishReason:j.finishReason,usage:j.usage,warnings:A0,request:r1,response:{...j.response,messages:[...o1,...S]},providerMetadata:j.providerMetadata});await(c==null?void 0:c(xZ)),fY(A0),p.push(xZ),i=[],VZ={},NZ={},o1.push(...S),SZ.resolve()}if(j.type==="finish")L0=j.totalUsage,D0=j.finishReason},async flush(y){try{if(p.length===0){let s=new gY({message:"No output generated. Check the stream for errors."});l._finishReason.reject(s),l._totalUsage.reject(s),l._steps.reject(s);return}let x=D0!=null?D0:"unknown",_=L0!=null?L0:{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0};l._finishReason.resolve(x),l._totalUsage.resolve(_),l._steps.resolve(p);let I=p[p.length-1];await(P==null?void 0:P({finishReason:x,totalUsage:_,usage:I.usage,content:I.content,text:I.text,reasoningText:I.reasoningText,reasoning:I.reasoning,files:I.files,sources:I.sources,toolCalls:I.toolCalls,staticToolCalls:I.staticToolCalls,dynamicToolCalls:I.dynamicToolCalls,toolResults:I.toolResults,staticToolResults:I.staticToolResults,dynamicToolResults:I.dynamicToolResults,request:I.request,response:I.response,warnings:I.warnings,providerMetadata:I.providerMetadata,steps:p})),w0.setAttributes(TZ({telemetry:$,attributes:{"ai.response.finishReason":x,"ai.response.text":{output:()=>I.text},"ai.response.toolCalls":{output:()=>{var s;return((s=I.toolCalls)==null?void 0:s.length)?JSON.stringify(I.toolCalls):void 0}},"ai.response.providerMetadata":JSON.stringify(I.providerMetadata),"ai.usage.inputTokens":_.inputTokens,"ai.usage.outputTokens":_.outputTokens,"ai.usage.totalTokens":_.totalTokens,"ai.usage.reasoningTokens":_.reasoningTokens,"ai.usage.cachedInputTokens":_.cachedInputTokens}}))}catch(x){y.error(x)}finally{w0.end()}}}),vZ=XH();this.addStream=vZ.addStream,this.closeStream=vZ.close;let J5=vZ.stream.getReader(),E0=new ReadableStream({async start(y){y.enqueue({type:"start"})},async pull(y){function x(){v==null||v({steps:p}),y.enqueue({type:"abort"}),y.close()}try{let{done:_,value:I}=await J5.read();if(_){y.close();return}if(Y==null?void 0:Y.aborted){x();return}y.enqueue(I)}catch(_){if(j0(_)&&(Y==null?void 0:Y.aborted))x();else y.error(_)}},cancel(y){return vZ.stream.cancel(y)}});for(let y of R)E0=E0.pipeThrough(y({tools:G,stopStream(){vZ.terminate()}}));this.baseStream=E0.pipeThrough(HH(D)).pipeThrough(Q5);let{maxRetries:Y5,retry:H5}=h4({maxRetries:H,abortSignal:Y}),P0=v4($),$Z=O4(J),a1=C4({model:Z,telemetry:$,headers:Q,settings:{...$Z,maxRetries:Y5}}),l=this;d1({name:"ai.streamText",attributes:TZ({telemetry:$,attributes:{...g1({operationId:"ai.streamText",telemetry:$}),...a1,"ai.prompt":{input:()=>JSON.stringify({system:K,prompt:W,messages:z})}}}),tracer:P0,endWhenDone:!1,fn:async(y)=>{w0=y;async function x({currentStep:_,responseMessages:I,usage:s}){var yZ,j,S,xZ,t1;let e1=l.includeRawChunks;SZ=new F0;let Z$=await T4({system:K,prompt:W,messages:z}),_Z=[...Z$.messages,...I],t=await(O==null?void 0:O({model:Z,steps:p,stepNumber:p.length,messages:_Z})),DZ=h9((yZ=t==null?void 0:t.model)!=null?yZ:Z),$$=await q4({prompt:{system:(j=t==null?void 0:t.system)!=null?j:Z$.system,messages:(S=t==null?void 0:t.messages)!=null?S:_Z},supportedUrls:await DZ.supportedUrls,download:V0}),{toolChoice:I0,tools:f0}=V4({tools:G,toolChoice:(xZ=t==null?void 0:t.toolChoice)!=null?xZ:F,activeTools:(t1=t==null?void 0:t.activeTools)!=null?t1:E}),{result:{stream:W5,response:X$,request:Q$},doStreamSpan:LZ,startTimestampMs:J$}=await H5(()=>d1({name:"ai.streamText.doStream",attributes:TZ({telemetry:$,attributes:{...g1({operationId:"ai.streamText.doStream",telemetry:$}),...a1,"ai.model.provider":DZ.provider,"ai.model.id":DZ.modelId,"ai.prompt.messages":{input:()=>y4($$)},"ai.prompt.tools":{input:()=>f0==null?void 0:f0.map((V)=>JSON.stringify(V))},"ai.prompt.toolChoice":{input:()=>I0!=null?JSON.stringify(I0):void 0},"gen_ai.system":DZ.provider,"gen_ai.request.model":DZ.modelId,"gen_ai.request.frequency_penalty":$Z.frequencyPenalty,"gen_ai.request.max_tokens":$Z.maxOutputTokens,"gen_ai.request.presence_penalty":$Z.presencePenalty,"gen_ai.request.stop_sequences":$Z.stopSequences,"gen_ai.request.temperature":$Z.temperature,"gen_ai.request.top_k":$Z.topK,"gen_ai.request.top_p":$Z.topP}}),tracer:P0,endWhenDone:!1,fn:async(V)=>{return{startTimestampMs:m(),doStreamSpan:V,result:await DZ.doStream({...$Z,tools:f0,toolChoice:I0,responseFormat:D==null?void 0:D.responseFormat,prompt:$$,providerOptions:T,abortSignal:Y,headers:Q,includeRawChunks:e1})}}})),K5=JH({tools:G,generatorStream:W5,tracer:P0,telemetry:$,system:K,messages:_Z,repairToolCall:B,abortSignal:Y,experimental_context:bZ}),G5=Q$!=null?Q$:{},Z0=[],R0=[],T0,M0={},AZ="unknown",o={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0},C0,Y$=!0,e={id:b(),timestamp:q(),modelId:Z.modelId},H$="";l.addStream(K5.pipeThrough(new TransformStream({async transform(V,k){var kZ,hZ,$0,XZ;if(V.type==="stream-start"){T0=V.warnings;return}if(Y$){let d=m()-J$;Y$=!1,LZ.addEvent("ai.stream.firstChunk",{"ai.response.msToFirstChunk":d}),LZ.setAttributes({"ai.response.msToFirstChunk":d}),k.enqueue({type:"start-step",request:G5,warnings:T0!=null?T0:[]})}let W$=V.type;switch(W$){case"text-start":case"text-end":{k.enqueue(V);break}case"text-delta":{if(V.delta.length>0)k.enqueue({type:"text-delta",id:V.id,text:V.delta,providerMetadata:V.providerMetadata}),H$+=V.delta;break}case"reasoning-start":case"reasoning-end":{k.enqueue(V);break}case"reasoning-delta":{k.enqueue({type:"reasoning-delta",id:V.id,text:V.delta,providerMetadata:V.providerMetadata});break}case"tool-call":{k.enqueue(V),Z0.push(V);break}case"tool-result":{if(k.enqueue(V),!V.preliminary)R0.push(V);break}case"tool-error":{k.enqueue(V),R0.push(V);break}case"response-metadata":{e={id:(kZ=V.id)!=null?kZ:e.id,timestamp:(hZ=V.timestamp)!=null?hZ:e.timestamp,modelId:($0=V.modelId)!=null?$0:e.modelId};break}case"finish":{o=V.usage,AZ=V.finishReason,C0=V.providerMetadata;let d=m()-J$;LZ.addEvent("ai.stream.finish"),LZ.setAttributes({"ai.response.msToFinish":d,"ai.response.avgOutputTokensPerSecond":1000*((XZ=o.outputTokens)!=null?XZ:0)/d});break}case"file":{k.enqueue(V);break}case"source":{k.enqueue(V);break}case"tool-input-start":{M0[V.id]=V.toolName;let d=G==null?void 0:G[V.toolName];if((d==null?void 0:d.onInputStart)!=null)await d.onInputStart({toolCallId:V.id,messages:_Z,abortSignal:Y,experimental_context:bZ});k.enqueue({...V,dynamic:(d==null?void 0:d.type)==="dynamic"});break}case"tool-input-end":{delete M0[V.id],k.enqueue(V);break}case"tool-input-delta":{let d=M0[V.id],b0=G==null?void 0:G[d];if((b0==null?void 0:b0.onInputDelta)!=null)await b0.onInputDelta({inputTextDelta:V.delta,toolCallId:V.id,messages:_Z,abortSignal:Y,experimental_context:bZ});k.enqueue(V);break}case"error":{k.enqueue(V),AZ="error";break}case"raw":{if(e1)k.enqueue(V);break}default:throw Error(`Unknown chunk type: ${W$}`)}},async flush(V){let k=Z0.length>0?JSON.stringify(Z0):void 0;try{LZ.setAttributes(TZ({telemetry:$,attributes:{"ai.response.finishReason":AZ,"ai.response.text":{output:()=>H$},"ai.response.toolCalls":{output:()=>k},"ai.response.id":e.id,"ai.response.model":e.modelId,"ai.response.timestamp":e.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(C0),"ai.usage.inputTokens":o.inputTokens,"ai.usage.outputTokens":o.outputTokens,"ai.usage.totalTokens":o.totalTokens,"ai.usage.reasoningTokens":o.reasoningTokens,"ai.usage.cachedInputTokens":o.cachedInputTokens,"gen_ai.response.finish_reasons":[AZ],"gen_ai.response.id":e.id,"gen_ai.response.model":e.modelId,"gen_ai.usage.input_tokens":o.inputTokens,"gen_ai.usage.output_tokens":o.outputTokens}}))}catch(XZ){}finally{LZ.end()}V.enqueue({type:"finish-step",finishReason:AZ,usage:o,providerMetadata:C0,response:{...e,headers:X$==null?void 0:X$.headers}});let kZ=x4(s,o);await SZ.promise;let hZ=Z0.filter((XZ)=>XZ.providerExecuted!==!0),$0=R0.filter((XZ)=>XZ.providerExecuted!==!0);if(hZ.length>0&&$0.length===hZ.length&&!await i4({stopConditions:U,steps:p})){I.push(...$9({content:p[p.length-1].content,tools:G}));try{await x({currentStep:_+1,responseMessages:I,usage:kZ})}catch(XZ){V.enqueue({type:"error",error:XZ}),l.closeStream()}}else V.enqueue({type:"finish",finishReason:AZ,totalUsage:kZ}),l.closeStream()}})))}await x({currentStep:0,responseMessages:[],usage:{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0}})}}).catch((y)=>{l.addStream(new ReadableStream({start(x){x.enqueue({type:"error",error:y}),x.close()}})),l.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 q0(this.teeStream().pipeThrough(new TransformStream({transform({part:Z},$){if(Z.type==="text-delta")$.enqueue(Z.text)}})))}get fullStream(){return q0(this.teeStream().pipeThrough(new TransformStream({transform({part:Z},$){$.enqueue(Z)}})))}async consumeStream(Z){var $;try{await $H({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 EY;return q0(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:Z},$){if(Z!=null)$.enqueue(Z)}})))}toUIMessageStream({originalMessages:Z,generateMessageId:$,onFinish:Q,messageMetadata:J,sendReasoning:H=!0,sendSources:Y=!1,sendStart:K=!0,sendFinish:W=!0,onError:z=KZ}={}){let G=$!=null?s4({originalMessages:Z,responseMessageId:$}):void 0,F={},R=(B)=>{var U,D;let T=F[B];return((D=(U=this.tools)==null?void 0:U[T])==null?void 0:D.type)==="dynamic"?!0:void 0},E=this.fullStream.pipeThrough(new TransformStream({transform:async(B,U)=>{let D=J==null?void 0:J({part:B}),T=B.type;switch(T){case"text-start":{U.enqueue({type:"text-start",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"text-delta":{U.enqueue({type:"text-delta",id:B.id,delta:B.text,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"text-end":{U.enqueue({type:"text-end",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"reasoning-start":{U.enqueue({type:"reasoning-start",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"reasoning-delta":{if(H)U.enqueue({type:"reasoning-delta",id:B.id,delta:B.text,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"reasoning-end":{U.enqueue({type:"reasoning-end",id:B.id,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});break}case"file":{U.enqueue({type:"file",mediaType:B.file.mediaType,url:`data:${B.file.mediaType};base64,${B.file.base64}`});break}case"source":{if(Y&&B.sourceType==="url")U.enqueue({type:"source-url",sourceId:B.id,url:B.url,title:B.title,...B.providerMetadata!=null?{providerMetadata:B.providerMetadata}:{}});if(Y&&B.sourceType==="document")U.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=R(B.id);U.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":{U.enqueue({type:"tool-input-delta",toolCallId:B.id,inputTextDelta:B.delta});break}case"tool-call":{F[B.toolCallId]=B.toolName;let O=R(B.toolCallId);if(B.invalid)U.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:z(B.error)});else U.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=R(B.toolCallId);U.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=R(B.toolCallId);U.enqueue({type:"tool-output-error",toolCallId:B.toolCallId,errorText:z(B.error),...B.providerExecuted!=null?{providerExecuted:B.providerExecuted}:{},...O!=null?{dynamic:O}:{}});break}case"error":{U.enqueue({type:"error",errorText:z(B.error)});break}case"start-step":{U.enqueue({type:"start-step"});break}case"finish-step":{U.enqueue({type:"finish-step"});break}case"start":{if(K)U.enqueue({type:"start",...D!=null?{messageMetadata:D}:{},...G!=null?{messageId:G}:{}});break}case"finish":{if(W)U.enqueue({type:"finish",...D!=null?{messageMetadata:D}:{}});break}case"abort":{U.enqueue(B);break}case"tool-input-end":break;case"raw":break;default:throw Error(`Unknown chunk type: ${T}`)}if(D!=null&&T!=="start"&&T!=="finish")U.enqueue({type:"message-metadata",messageMetadata:D})}}));return q0(e4({stream:E,messageId:G!=null?G:$==null?void 0:$(),originalMessages:Z,onFinish:Q,onError:z}))}pipeUIMessageStreamToResponse(Z,{originalMessages:$,generateMessageId:Q,onFinish:J,messageMetadata:H,sendReasoning:Y,sendSources:K,sendFinish:W,sendStart:z,onError:G,...F}={}){ZH({response:Z,stream:this.toUIMessageStream({originalMessages:$,generateMessageId:Q,onFinish:J,messageMetadata:H,sendReasoning:Y,sendSources:K,sendFinish:W,sendStart:z,onError:G}),...F})}pipeTextStreamToResponse(Z,$){l4({response:Z,textStream:this.textStream,...$})}toUIMessageStreamResponse({originalMessages:Z,generateMessageId:$,onFinish:Q,messageMetadata:J,sendReasoning:H,sendSources:Y,sendFinish:K,sendStart:W,onError:z,...G}={}){return n4({stream:this.toUIMessageStream({originalMessages:Z,generateMessageId:$,onFinish:Q,messageMetadata:J,sendReasoning:H,sendSources:Y,sendFinish:K,sendStart:W,onError:z}),...G})}toTextStreamResponse(Z){return p4({textStream:this.textStream,...Z})}};var LG=JZ({prefix:"aiobj",size:24});var wG=JZ({prefix:"aiobj",size:24});var KH={};AY(KH,{object:()=>zH,text:()=>GH});var GH=()=>({type:"text",responseFormat:{type:"text"},async parsePartial({text:Z}){return{partial:Z}},async parseOutput({text:Z}){return Z}}),zH=({schema:Z})=>{let $=GZ(Z);return{type:"object",responseFormat:{type:"json",schema:$.jsonSchema},async parsePartial({text:Q}){let J=await a9(Q);switch(J.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:J.value};default:{let H=J.state;throw Error(`Unsupported parse state: ${H}`)}}},async parseOutput({text:Q},J){let H=await WZ({text:Q});if(!H.success)throw new rQ({message:"No object generated: could not parse the response.",cause:H.error,text:Q,response:J.response,usage:J.usage,finishReason:J.finishReason});let Y=await a({value:H.value,schema:$});if(!Y.success)throw new rQ({message:"No object generated: response did not match schema.",cause:Y.error,text:Q,response:J.response,usage:J.usage,finishReason:J.finishReason});return Y.value}}};var BH="AI_NoSuchProviderError",qH=`vercel.ai.error.${BH}`,FH=Symbol.for(qH),UH;UH=FH;var fG=g(()=>h(X.array(X.object({id:X.string(),role:X.enum(["system","user","assistant"]),metadata:X.unknown().optional(),parts:X.array(X.union([X.object({type:X.literal("text"),text:X.string(),state:X.enum(["streaming","done"]).optional(),providerMetadata:w.optional()}),X.object({type:X.literal("reasoning"),text:X.string(),state:X.enum(["streaming","done"]).optional(),providerMetadata:w.optional()}),X.object({type:X.literal("source-url"),sourceId:X.string(),url:X.string(),title:X.string().optional(),providerMetadata:w.optional()}),X.object({type:X.literal("source-document"),sourceId:X.string(),mediaType:X.string(),title:X.string(),filename:X.string().optional(),providerMetadata:w.optional()}),X.object({type:X.literal("file"),mediaType:X.string(),filename:X.string().optional(),url:X.string(),providerMetadata:w.optional()}),X.object({type:X.literal("step-start")}),X.object({type:X.string().startsWith("data-"),id:X.string().optional(),data:X.unknown()}),X.object({type:X.literal("dynamic-tool"),toolName:X.string(),toolCallId:X.string(),state:X.literal("input-streaming"),input:X.unknown().optional(),providerExecuted:X.boolean().optional(),output:X.never().optional(),errorText:X.never().optional()}),X.object({type:X.literal("dynamic-tool"),toolName:X.string(),toolCallId:X.string(),state:X.literal("input-available"),input:X.unknown(),providerExecuted:X.boolean().optional(),output:X.never().optional(),errorText:X.never().optional(),callProviderMetadata:w.optional()}),X.object({type:X.literal("dynamic-tool"),toolName:X.string(),toolCallId:X.string(),state:X.literal("output-available"),input:X.unknown(),providerExecuted:X.boolean().optional(),output:X.unknown(),errorText:X.never().optional(),callProviderMetadata:w.optional(),preliminary:X.boolean().optional()}),X.object({type:X.literal("dynamic-tool"),toolName:X.string(),toolCallId:X.string(),state:X.literal("output-error"),input:X.unknown(),providerExecuted:X.boolean().optional(),output:X.never().optional(),errorText:X.string(),callProviderMetadata:w.optional()}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("input-streaming"),providerExecuted:X.boolean().optional(),input:X.unknown().optional(),output:X.never().optional(),errorText:X.never().optional(),approval:X.never().optional()}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("input-available"),providerExecuted:X.boolean().optional(),input:X.unknown(),output:X.never().optional(),errorText:X.never().optional(),callProviderMetadata:w.optional(),approval:X.never().optional()}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("approval-requested"),input:X.unknown(),providerExecuted:X.boolean().optional(),output:X.never().optional(),errorText:X.never().optional(),callProviderMetadata:w.optional(),approval:X.object({id:X.string(),approved:X.never().optional(),reason:X.never().optional()})}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("approval-responded"),input:X.unknown(),providerExecuted:X.boolean().optional(),output:X.never().optional(),errorText:X.never().optional(),callProviderMetadata:w.optional(),approval:X.object({id:X.string(),approved:X.boolean(),reason:X.string().optional()})}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("output-available"),providerExecuted:X.boolean().optional(),input:X.unknown(),output:X.unknown(),errorText:X.never().optional(),callProviderMetadata:w.optional(),preliminary:X.boolean().optional(),approval:X.object({id:X.string(),approved:X.literal(!0),reason:X.string().optional()}).optional()}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("output-error"),providerExecuted:X.boolean().optional(),input:X.unknown(),output:X.never().optional(),errorText:X.string(),callProviderMetadata:w.optional(),approval:X.object({id:X.string(),approved:X.literal(!0),reason:X.string().optional()}).optional()}),X.object({type:X.string().startsWith("tool-"),toolCallId:X.string(),state:X.literal("output-denied"),providerExecuted:X.boolean().optional(),input:X.unknown(),output:X.never().optional(),errorText:X.never().optional(),callProviderMetadata:w.optional(),approval:X.object({id:X.string(),approved:X.literal(!1),reason:X.string().optional()})})]))}))));var NH=n({description:`Read contents of a file from the filesystem.
|
|
22
|
+
|
|
23
|
+
Usage:
|
|
24
|
+
- Read source code files
|
|
25
|
+
- Read configuration files
|
|
26
|
+
- Read documentation files
|
|
27
|
+
|
|
28
|
+
The file path must be absolute or relative to the current working directory.`,inputSchema:X.object({file_path:X.string().describe("Path to the file to read"),encoding:X.enum(["utf8","base64"]).default("utf8").optional().describe("File encoding (default: utf8)")}),execute:async({file_path:Z,encoding:$="utf8"})=>{let Q=await t9(Z,$);return{path:Z,content:Q,encoding:$}}}),VH=n({description:`Write content to a file. Creates parent directories if they don't exist.
|
|
29
|
+
|
|
30
|
+
Usage:
|
|
31
|
+
- Create new files
|
|
32
|
+
- Overwrite existing files
|
|
33
|
+
- Write generated code or data
|
|
34
|
+
|
|
35
|
+
IMPORTANT: This will overwrite the file if it exists.`,inputSchema:X.object({file_path:X.string().describe("Path where the file should be written"),content:X.string().describe("Content to write to the file"),encoding:X.enum(["utf8","base64"]).default("utf8").optional().describe("File encoding (default: utf8)")}),execute:async({file_path:Z,content:$,encoding:Q="utf8"})=>{let J=OH(Z);await jH(J,{recursive:!0}),await e9(Z,$,Q);let H=Z.split("/").pop()||"",Y=$.split(`
|
|
36
|
+
`);return{path:Z,bytes:Buffer.byteLength($,Q),fileName:H,lineCount:Y.length,preview:Y.slice(0,5)}}}),DH=n({description:`Performs exact string replacements in files.
|
|
37
|
+
|
|
38
|
+
Usage:
|
|
39
|
+
- Modify existing files
|
|
40
|
+
- Replace specific code sections
|
|
41
|
+
- Update configuration values
|
|
42
|
+
|
|
43
|
+
IMPORTANT:
|
|
44
|
+
- The edit will FAIL if old_string is not unique in the file
|
|
45
|
+
- Provide more context in old_string to make it unique
|
|
46
|
+
- Use replace_all to change every instance of old_string
|
|
47
|
+
- You must use the exact string from the file (preserve indentation, whitespace)`,inputSchema:X.object({file_path:X.string().describe("Absolute path to the file to modify"),old_string:X.string().describe("The exact text to replace (must match exactly)"),new_string:X.string().describe("The text to replace it with (must be different from old_string)"),replace_all:X.boolean().default(!1).optional().describe("Replace all occurrences of old_string (default: false)")}),execute:async({file_path:Z,old_string:$,new_string:Q,replace_all:J=!1})=>{if($===Q)throw Error("old_string and new_string must be different");let H=await t9(Z,"utf8");if(!H.includes($))throw Error(`old_string not found in file: ${Z}`);if(!J){let D=H.indexOf($),T=H.lastIndexOf($);if(D!==T)throw Error("old_string appears multiple times in the file. Either provide more context to make it unique or use replace_all=true")}let Y=H.split(`
|
|
48
|
+
`),W=H.substring(0,H.indexOf($)).split(`
|
|
49
|
+
`).length,z=2,G=Math.max(0,W-z-1),F=Math.min(Y.length,W+z),R=J?H.split($).join(Q):H.replace($,Q);await e9(Z,R,"utf8");let E=J?H.split($).length-1:1,B=Y.slice(G,F),U=[];for(let D=0;D<B.length;D++){let T=G+D+1,O=B[D];if(T===W){let C=$.split(`
|
|
50
|
+
`),m=Q.split(`
|
|
51
|
+
`);C.forEach((q)=>{U.push(`${T.toString().padStart(6)} - ${q}`)}),m.forEach((q)=>{U.push(`${T.toString().padStart(6)} + ${q}`)})}else U.push(`${T.toString().padStart(6)} ${O}`)}return{path:Z,replacements:E,old_length:$.length,new_length:Q.length,diff:U,old_string:$,new_string:Q}}}),i1={read:NH,write:VH,edit:DH};import{exec as LH}from"node:child_process";import{promisify as AH}from"node:util";var wH=AH(LH),EH=n({description:`Execute a bash command and return its output.
|
|
52
|
+
|
|
53
|
+
Usage:
|
|
54
|
+
- Run build commands (npm, bun, etc.)
|
|
55
|
+
- Execute git commands
|
|
56
|
+
- Run tests
|
|
57
|
+
- List files (ls, find)
|
|
58
|
+
- Search content (grep)
|
|
59
|
+
- Any shell command
|
|
60
|
+
|
|
61
|
+
IMPORTANT:
|
|
62
|
+
- Commands are executed in the current working directory
|
|
63
|
+
- Use absolute paths when necessary
|
|
64
|
+
- Be careful with destructive commands
|
|
65
|
+
- Long-running commands may timeout`,inputSchema:X.object({command:X.string().describe("The bash command to execute"),cwd:X.string().optional().describe("Working directory (defaults to current directory)"),timeout:X.number().default(30000).optional().describe("Command timeout in milliseconds (default: 30000)")}),execute:async({command:Z,cwd:$,timeout:Q=30000})=>{try{let{stdout:J,stderr:H}=await wH(Z,{cwd:$||process.cwd(),timeout:Q,maxBuffer:10485760});return{command:Z,stdout:J.trim(),stderr:H.trim(),exitCode:0}}catch(J){if(J.code!==void 0)return{command:Z,stdout:J.stdout?.trim()||"",stderr:J.stderr?.trim()||"",exitCode:J.code};throw Error(`Command execution failed: ${J.message}`)}}}),p1={bash:EH};import{readdir as PH,readFile as IH,stat as fH}from"node:fs/promises";import{join as RH}from"node:path";function Z5(Z,$){let Q=Z.replace(/\./g,"\\.").replace(/\*\*/g,".*").replace(/\*/g,"[^/]*").replace(/\?/g,".");return new RegExp(`^${Q}$`).test($)}async function l1(Z,$,Q,J=[]){if(J.length>=Q)return J;try{let H=await PH(Z,{withFileTypes:!0});for(let Y of H){if(J.length>=Q)break;let K=RH(Z,Y.name);if(Y.isDirectory()&&["node_modules",".git","dist","build",".next"].includes(Y.name))continue;if(Y.isDirectory())await l1(K,$,Q,J);else if(Z5($,K)||Z5($,Y.name))J.push(K)}return J}catch(H){return J}}var TH=n({description:`Search for files matching a glob pattern.
|
|
66
|
+
|
|
67
|
+
Usage:
|
|
68
|
+
- Find files by name pattern
|
|
69
|
+
- Search for specific file types
|
|
70
|
+
- Locate files in project
|
|
71
|
+
|
|
72
|
+
Pattern syntax:
|
|
73
|
+
- * matches any characters except /
|
|
74
|
+
- ** matches any characters including /
|
|
75
|
+
- ? matches single character
|
|
76
|
+
- Examples: "*.ts", "src/**/*.tsx", "test?.js"`,inputSchema:X.object({pattern:X.string().describe("Glob pattern to match files"),directory:X.string().optional().describe("Directory to search in (default: current directory)"),max_results:X.number().default(100).optional().describe("Maximum number of results (default: 100)")}),execute:async({pattern:Z,directory:$,max_results:Q=100})=>{let J=$||process.cwd(),H=await l1(J,Z,Q);return{pattern:Z,directory:J,files:H,count:H.length}}}),MH=n({description:`Search for text content within files.
|
|
77
|
+
|
|
78
|
+
Usage:
|
|
79
|
+
- Find code patterns
|
|
80
|
+
- Search for function names
|
|
81
|
+
- Locate specific text across files
|
|
82
|
+
|
|
83
|
+
Returns matching lines with line numbers and context.`,inputSchema:X.object({pattern:X.string().describe("Text or regex pattern to search for"),directory:X.string().optional().describe("Directory to search in (default: current directory)"),file_pattern:X.string().optional().describe('Glob pattern to filter files (e.g., "*.ts")'),max_results:X.number().default(50).optional().describe("Maximum number of matches (default: 50)"),case_sensitive:X.boolean().default(!1).optional().describe("Case sensitive search (default: false)")}),execute:async({pattern:Z,directory:$,file_pattern:Q="**/*",max_results:J=50,case_sensitive:H=!1})=>{let Y=$||process.cwd(),K=await l1(Y,Q,1000),W=[],z=new RegExp(Z,H?"g":"gi");for(let G of K){if(W.length>=J)break;try{if((await fH(G)).size>1048576)continue;let E=(await IH(G,"utf8")).split(`
|
|
84
|
+
`);for(let B=0;B<E.length;B++){if(W.length>=J)break;if(z.test(E[B]))W.push({file:G,line:B+1,content:E[B].trim()})}}catch{continue}}return{pattern:Z,directory:Y,matches:W,count:W.length}}}),n1={glob:TH,grep:MH};var eZ=null,YZ=[],CZ=!1,N0=null;function $5(){if(N0)N0(YZ.length)}function Kz(Z){N0=Z}function Gz(){return YZ.length}function zz(Z){eZ=Z}function Bz(){eZ=null,YZ=[],CZ=!1,N0=null}async function X5(){if(CZ||YZ.length===0||!eZ)return;CZ=!0;let Z=YZ.shift();$5(),console.error("[processAsk] Processing:",{id:Z.id,question:Z.question.substring(0,50),queueRemaining:YZ.length});try{let $=await eZ({type:"selection",questions:[{id:Z.id,question:Z.question,options:Z.options}]}),Q=typeof $==="string"?$:$[Z.id]||"";console.error("[processAsk] Got answer:",Q),Z.resolve(Q)}catch($){console.error("[processAsk] Error:",$),Z.resolve("")}finally{if(CZ=!1,YZ.length>0)console.error("[processAsk] Processing next in queue..."),X5()}}var CH=n({description:`Ask the user a multiple choice question and wait for their selection.
|
|
85
|
+
|
|
86
|
+
You can call this tool multiple times in the same response to ask multiple questions at once - they will be presented together for better user experience.
|
|
87
|
+
|
|
88
|
+
When to use:
|
|
89
|
+
- You have specific options for the user to choose from
|
|
90
|
+
- You need user to select between different approaches
|
|
91
|
+
- You need to confirm which file/component/feature to work on
|
|
92
|
+
- You want to gather multiple pieces of information
|
|
93
|
+
|
|
94
|
+
How to use:
|
|
95
|
+
1. Call this tool (can call multiple times in same message)
|
|
96
|
+
2. Wait for the user's answer (returned as a string)
|
|
97
|
+
3. Continue your task with the gathered information
|
|
98
|
+
|
|
99
|
+
Example - multiple questions in one response:
|
|
100
|
+
- Call ask() for "which file?"
|
|
101
|
+
- Call ask() for "which function?"
|
|
102
|
+
- Call ask() for "which approach?"
|
|
103
|
+
→ User sees all 3 questions together and answers them all at once
|
|
104
|
+
|
|
105
|
+
Note: For free-form text questions, just respond normally in your message and wait for the user's next input. Only use this tool when you have specific options to present.`,inputSchema:X.object({question:X.string().describe("The question to ask the user"),options:X.array(X.object({label:X.string().describe("Display text for this option (what user sees)"),value:X.string().optional().describe("Optional value to return (defaults to label if not provided)")})).min(2).max(10).describe("List of options for the user to choose from (2-10 options)")}),execute:async({question:Z,options:$})=>{if(!eZ)throw Error("User input handler not available. This tool can only be used in interactive mode.");return new Promise((Q)=>{let J=`ask_${Date.now()}_${Math.random()}`;if(console.error("[ask execute] Adding to queue:",{id:J,question:Z.substring(0,50),optionsCount:$?.length||0,queueLength:YZ.length,isProcessing:CZ}),YZ.push({id:J,question:Z,options:$,resolve:Q}),$5(),!CZ)console.error("[ask execute] Starting queue processing..."),X5();else console.error("[ask execute] Already processing, will queue")})}}),s1={ask:CH};function bH(){return{...i1,...p1,...n1,...s1}}function Nz(){return{filesystem:Object.keys(i1),shell:Object.keys(p1),search:Object.keys(n1),interaction:Object.keys(s1)}}function Vz(){return Object.keys(bH())}export{VH as writeFileTool,p1 as shellTools,zz as setUserInputHandler,Kz as setQueueUpdateCallback,n1 as searchTools,NH as readFileTool,s1 as interactionTools,MH as grepTool,TH as globTool,Nz as getToolCategories,Gz as getQueueLength,Vz as getAllToolNames,bH as getAISDKTools,i1 as filesystemTools,EH as executeBashTool,DH as editFileTool,Bz as clearUserInputHandler,CH as askUserSelectionTool};export{c4 as e,VG as f,Kz as g,zz as h,Bz as i,bH as j};
|
|
106
|
+
|
|
107
|
+
//# debugId=55ADC100E42D4E1B64756E2164756E21
|