1;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="9d76fe44-efd2-7bd8-85ca-87fa3f832180")}catch(e){}}(); 2(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,261974,(e,t,a)=>{"use strict";var r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d};for(var c in l)r(o,c,{get:l[c],enumerable:!0});t.exports=((e,t,a,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let l of s(t))i.call(e,l)||l===a||r(e,l,{get:()=>t[l],enumerable:!(o=n(t,l))||o.enumerable});return e})(r({},"__esModule",{value:!0}),o);let u=Symbol.for("@vercel/request-context");function d(){var e,t,a;return null!=(e=null==(a=globalThis[u])||null==(t=a.get)?void 0:t.call(a))?e:{}}},295161,(e,t,a)=>{"use strict";var r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d};for(var c in l)r(o,c,{get:l[c],enumerable:!0});t.exports=((e,t,a,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let l of s(t))i.call(e,l)||l===a||r(e,l,{get:()=>t[l],enumerable:!(o=n(t,l))||o.enumerable});return e})(r({},"__esModule",{value:!0}),o);class u extends Error{constructor(){super("No authentication found. Please log in with the Vercel CLI (vercel login)."),this.name="AccessTokenMissingError"}}class d extends Error{constructor(e){super("Failed to refresh authentication token.",{cause:e}),this.name="RefreshAccessTokenFailedError"}}},296080,(e,t,a)=>{"use strict";var r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={AccessTokenMissingError:()=>d.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>d.RefreshAccessTokenFailedError,getContext:()=>u.getContext,getVercelOidcToken:()=>p,getVercelOidcTokenSync:()=>h,getVercelToken:()=>m};for(var c in l)r(o,c,{get:l[c],enumerable:!0});t.exports=((e,t,a,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let l of s(t))i.call(e,l)||l===a||r(e,l,{get:()=>t[l],enumerable:!(o=n(t,l))||o.enumerable});return e})(r({},"__esModule",{value:!0}),o);var u=e.r(261974),d=e.r(295161);async function p(){return""}function h(){return""}async function m(){throw Error("getVercelToken is not supported in browser environments")}},580801,436902,267850,495412,865859,849148,e=>{"use strict";let t;var a,r,n,s,i,o,l,c,u,d,p,h,m,g,f,y,v,_,b,z,w,x,k,I,S,C,E,T,A,M,O,j,R,P,N,Z,D,F,L,U,V,B,q,H,J,W,$,G,Y,K,Q,X,ee,et,ea,er,en,es,ei,eo,el,ec=e.i(878420),eu=e.i(64386),ed=e.i(661683),ep=e.i(886513),eh="vercel.ai.error",em=Symbol.for(eh),eg=class e extends(i=Error,s=em,i){static isInstance(t){return e.hasMarker(t,eh)}static hasMarker(e,t){let a=Symbol.for(t);return null!=e&&"object"==typeof e&&a in e&&"boolean"==typeof e[a]&&!0===e[a]}constructor({name:e,message:t,cause:a}){super(t),this[s]=!0,this.name=e,this.cause=a}},ef="AI_APICallError",ey="vercel.ai.error.".concat(ef),ev=Symbol.for(ey),e_=class extends(l=eg,o=ev,l){static isInstance(e){return eg.hasMarker(e,ey)}constructor({message:e,url:t,requestBodyValues:a,statusCode:r,responseHeaders:n,responseBody:s,cause:i,isRetryable:l=null!=r&&(408===r||409===r||429===r||r>=500),data:c}){super({name:ef,message:e,cause:i}),this[o]=!0,this.url=t,this.requestBodyValues=a,this.statusCode=r,this.responseHeaders=n,this.responseBody=s,this.isRetryable=l,this.data=c}},eb="AI_EmptyResponseBodyError",ez="vercel.ai.error.".concat(eb),ew=Symbol.for(ez),ex=class extends(u=eg,c=ew,u){static isInstance(e){return eg.hasMarker(e,ez)}constructor({message:e="Empty response body"}={}){super({name:eb,message:e}),this[c]=!0}};function ek(e){return null==e?"unknown error":"string"==typeof e?e:e instanceof Error?e.toString():JSON.stringify(e)}var eI="AI_InvalidArgumentError",eS="vercel.ai.error.".concat(eI),eC=Symbol.for(eS),eE=class extends(p=eg,d=eC,p){static isInstance(e){return eg.hasMarker(e,eS)}constructor({message:e,cause:t,argument:a}){super({name:eI,message:e,cause:t}),this[d]=!0,this.argument=a}},eT="AI_InvalidPromptError",eA="vercel.ai.error.".concat(eT),eM=Symbol.for(eA),eO=class extends(m=eg,h=eM,m){static isInstance(e){return eg.hasMarker(e,eA)}constructor({prompt:e,message:t,cause:a}){super({name:eT,message:"Invalid prompt: ".concat(t),cause:a}),this[h]=!0,this.prompt=e}},ej="AI_InvalidResponseDataError",eR="vercel.ai.error.".concat(ej),eP=Symbol.for(eR),eN=class extends(f=eg,g=eP,f){static isInstance(e){return eg.hasMarker(e,eR)}constructor({data:e,message:t="Invalid response data: ".concat(JSON.stringify(e),".")}){super({name:ej,message:t}),this[g]=!0,this.data=e}},eZ="AI_JSONParseError",eD="vercel.ai.error.".concat(eZ),eF=Symbol.for(eD),eL=class extends(v=eg,y=eF,v){static isInstance(e){return eg.hasMarker(e,eD)}constructor({text:e,cause:t}){super({name:eZ,message:"JSON parsing failed: Text: ".concat(e,".\nError message: ").concat(ek(t)),cause:t}),this[y]=!0,this.text=e}},eU="AI_LoadAPIKeyError",eV="vercel.ai.error.".concat(eU),eB=Symbol.for(eV),eq=class extends(b=eg,_=eB,b){static isInstance(e){return eg.hasMarker(e,eV)}constructor({message:e}){super({name:eU,message:e}),this[_]=!0}},eH="AI_LoadSettingError",eJ="vercel.ai.error.".concat(eH),eW=Symbol.for(eJ),e$=class extends(w=eg,z=eW,w){static isInstance(e){return eg.hasMarker(e,eJ)}constructor({message:e}){super({name:eH,message:e}),this[z]=!0}},eG="AI_NoContentGeneratedError",eY="vercel.ai.error.".concat(eG),eK=Symbol.for(eY),eQ=class extends(k=eg,x=eK,k){static isInstance(e){return eg.hasMarker(e,eY)}constructor({message:e="No content generated."}={}){super({name:eG,message:e}),this[x]=!0}}
2,eX="AI_NoSuchModelError",e0="vercel.ai.error.".concat(eX),e1=Symbol.for(e0),e2=class extends(S=eg,I=e1,S){static isInstance(e){return eg.hasMarker(e,e0)}constructor({errorName:e=eX,modelId:t,modelType:a,message:r="No such ".concat(a,": ").concat(t)}){super({name:e,message:r}),this[I]=!0,this.modelId=t,this.modelType=a}},e4="AI_NoSuchProviderReferenceError",e9="vercel.ai.error.".concat(e4),e5=Symbol.for(e9),e6=class extends(E=eg,C=e5,E){static isInstance(e){return eg.hasMarker(e,e9)}constructor({provider:e,reference:t,message:a="No provider reference found for provider '".concat(e,"'. Available providers: ").concat(Object.keys(t).join(", "))}){super({name:e4,message:a}),this[C]=!0,this.provider=e,this.reference=t}},e3="AI_TooManyEmbeddingValuesForCallError",e7="vercel.ai.error.".concat(e3),e8=Symbol.for(e7),te=class extends(A=eg,T=e8,A){static isInstance(e){return eg.hasMarker(e,e7)}constructor(e){super({name:e3,message:"Too many values for a single embedding call. The ".concat(e.provider,' model "').concat(e.modelId,'" can only embed up to ').concat(e.maxEmbeddingsPerCall," values per call, but ").concat(e.values.length," values were provided.")}),this[T]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}},tt="AI_TypeValidationError",ta="vercel.ai.error.".concat(tt),tr=Symbol.for(ta),tn=class e extends(O=eg,M=tr,O){static isInstance(e){return eg.hasMarker(e,ta)}static wrap(t){var a,r,n;let{value:s,cause:i,context:o}=t;return e.isInstance(i)&&i.value===s&&(null==(a=i.context)?void 0:a.field)===(null==o?void 0:o.field)&&(null==(r=i.context)?void 0:r.entityName)===(null==o?void 0:o.entityName)&&(null==(n=i.context)?void 0:n.entityId)===(null==o?void 0:o.entityId)?i:new e({value:s,cause:i,context:o})}constructor({value:e,cause:t,context:a}){let r="Type validation failed";if((null==a?void 0:a.field)&&(r+=" for ".concat(a.field)),(null==a?void 0:a.entityName)||(null==a?void 0:a.entityId)){r+=" (";const e=[];a.entityName&&e.push(a.entityName),a.entityId&&e.push('id: "'.concat(a.entityId,'"')),r+=e.join(", "),r+=")"}super({name:tt,message:"".concat(r,": Value: ").concat(JSON.stringify(e),".\nError message: ").concat(ek(t)),cause:t}),this[M]=!0,this.value=e,this.context=a}},ts="AI_UnsupportedFunctionalityError",ti="vercel.ai.error.".concat(ts),to=Symbol.for(ti),tl=class extends(R=eg,j=to,R){static isInstance(e){return eg.hasMarker(e,ti)}constructor({functionality:e,message:t="'".concat(e,"' functionality not supported.")}){super({name:ts,message:t}),this[j]=!0,this.functionality=e}};function tc(e){return null===e||"string"==typeof e||"number"==typeof e||"boolean"==typeof e||(Array.isArray(e)?e.every(tc):"object"==typeof e&&Object.entries(e).every(e=>{let[t,a]=e;return"string"==typeof t&&(void 0===a||tc(a))}))}e.s(["AISDKError",0,eg,"APICallError",0,e_,"EmptyResponseBodyError",0,ex,"InvalidArgumentError",0,eE,"InvalidPromptError",0,eO,"InvalidResponseDataError",0,eN,"JSONParseError",0,eL,"LoadAPIKeyError",0,eq,"LoadSettingError",0,e$,"NoContentGeneratedError",0,eQ,"NoSuchModelError",0,e2,"NoSuchProviderReferenceError",0,e6,"TooManyEmbeddingValuesForCallError",0,te,"TypeValidationError",0,tn,"UnsupportedFunctionalityError",0,tl,"getErrorMessage",0,ek,"isJSONArray",0,function(e){return Array.isArray(e)&&e.every(tc)},"isJSONObject",0,function(e){return null!=e&&"object"==typeof e&&Object.entries(e).every(e=>{let[t,a]=e;return"string"==typeof t&&(void 0===a||tc(a))})}],436902);var tu=e.i(753895),td=e.i(856326);(a=P||(P={})).assertEqual=e=>{},a.assertIs=function(e){},a.assertNever=function(e){throw Error()},a.arrayToEnum=e=>{let t={};for(let a of e)t[a]=a;return t},a.getValidEnumValues=e=>{let t=a.objectKeys(e).filter(t=>"number"!=typeof e[e[t]]),r={};for(let a of t)r[a]=e[a];return a.objectValues(r)},a.objectValues=e=>a.objectKeys(e).map(function(t){return e[t]}),a.objectKeys="function"==typeof Object.keys?e=>Object.keys(e):e=>{let t=[];for(let a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.push(a);return t},a.find=(e,t)=>{for(let a of e)if(t(a))return a},a.isInteger="function"==typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e,a.joinValues=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" | ";return e.map(e=>"string"==typeof e?"'".concat(e,"'"):e).join(t)},a.jsonStringifyReplacer=(e,t)=>"bigint"==typeof t?t.toString():t,(N||(N={})).mergeShapes=(e,t)=>(0,ec._)({},e,t);let tp=P.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),th=e=>{switch(typeof e){case"undefined":return tp.undefined;case"string":return tp.string;case"number":return Number.isNaN(e)?tp.nan:tp.number;case"boolean":return tp.boolean;case"function":return tp.function;case"bigint":return tp.bigint;case"symbol":return tp.symbol;case"object":if(Array.isArray(e))return tp.array;if(null===e)return tp.null;if(e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch)return tp.promise;if("u">typeof Map&&e instanceof Map)return tp.map;if("u">typeof Set&&e instanceof Set)return tp.set;if("u">typeof Date&&e instanceof Date)return tp.date;return tp.object;default:return tp.unknown}}
2,tm=P.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class tg extends Error{get errors(){return this.issues}format(e){let t=e||function(e){return e.message},a={_errors:[]},r=e=>{for(let n of e.issues)if("invalid_union"===n.code)n.unionErrors.map(r);else if("invalid_return_type"===n.code)r(n.returnTypeError);else if("invalid_arguments"===n.code)r(n.argumentsError);else if(0===n.path.length)a._errors.push(t(n));else{let e=a,r=0;for(;r<n.path.length;){let a=n.path[r];r===n.path.length-1?(e[a]=e[a]||{_errors:[]},e[a]._errors.push(t(n))):e[a]=e[a]||{_errors:[]},e=e[a],r++}}};return r(this),a}static assert(e){if(!(e instanceof tg))throw Error("Not a ZodError: ".concat(e))}toString(){return this.message}get message(){return JSON.stringify(this.issues,P.jsonStringifyReplacer,2)}get isEmpty(){return 0===this.issues.length}flatten(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e=>e.message,t=Object.create(null),a=[];for(let r of this.issues)if(r.path.length>0){let a=r.path[0];t[a]=t[a]||[],t[a].push(e(r))}else a.push(e(r));return{formErrors:a,fieldErrors:t}}get formErrors(){return this.flatten()}constructor(e){var t;super(),t=this,this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.issues=[...t.issues,...e]};const a=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,a):this.__proto__=a,this.name="ZodError",this.issues=e}}tg.create=e=>new tg(e);let tf=(e,t)=>{let a;switch(e.code){case tm.invalid_type:a=e.received===tp.undefined?"Required":"Expected ".concat(e.expected,", received ").concat(e.received);break;case tm.invalid_literal:a="Invalid literal value, expected ".concat(JSON.stringify(e.expected,P.jsonStringifyReplacer));break;case tm.unrecognized_keys:a="Unrecognized key(s) in object: ".concat(P.joinValues(e.keys,", "));break;case tm.invalid_union:a="Invalid input";break;case tm.invalid_union_discriminator:a="Invalid discriminator value. Expected ".concat(P.joinValues(e.options));break;case tm.invalid_enum_value:a="Invalid enum value. Expected ".concat(P.joinValues(e.options),", received '").concat(e.received,"'");break;case tm.invalid_arguments:a="Invalid function arguments";break;case tm.invalid_return_type:a="Invalid function return type";break;case tm.invalid_date:a="Invalid date";break;case tm.invalid_string:"object"==typeof e.validation?"includes"in e.validation?(a='Invalid input: must include "'.concat(e.validation.includes,'"'),"number"==typeof e.validation.position&&(a="".concat(a," at one or more positions greater than or equal to ").concat(e.validation.position))):"startsWith"in e.validation?a='Invalid input: must start with "'.concat(e.validation.startsWith,'"'):"endsWith"in e.validation?a='Invalid input: must end with "'.concat(e.validation.endsWith,'"'):P.assertNever(e.validation):a="regex"!==e.validation?"Invalid ".concat(e.validation):"Invalid";break;case tm.too_small:a="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"more than"," ").concat(e.minimum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"over"," ").concat(e.minimum," character(s)"):"number"===e.type||"bigint"===e.type?"Number must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(e.minimum):"date"===e.type?"Date must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(new Date(Number(e.minimum))):"Invalid input";break;case tm.too_big:a="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"less than"," ").concat(e.maximum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"under"," ").concat(e.maximum," character(s)"):"number"===e.type?"Number must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"bigint"===e.type?"BigInt must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"date"===e.type?"Date must be ".concat(e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"," ").concat(new Date(Number(e.maximum))):"Invalid input";break;case tm.custom:a="Invalid input";break;
2case tm.invalid_intersection_types:a="Intersection results could not be merged";break;case tm.not_multiple_of:a="Number must be a multiple of ".concat(e.multipleOf);break;case tm.not_finite:a="Number must be finite";break;default:a=t.defaultError,P.assertNever(e)}return{message:a}};(r=Z||(Z={})).errToObj=e=>"string"==typeof e?{message:e}:e||{},r.toString=e=>"string"==typeof e?e:null==e?void 0:e.message;let ty=e=>{let{data:t,path:a,errorMaps:r,issueData:n}=e,s=[...a,...n.path||[]],i=(0,eu._)((0,ec._)({},n),{path:s});if(void 0!==n.message)return(0,eu._)((0,ec._)({},n),{path:s,message:n.message});let o="";for(let e of r.filter(e=>!!e).slice().reverse())o=e(i,{data:t,defaultError:o}).message;return(0,eu._)((0,ec._)({},n),{path:s,message:o})};function tv(e,t){let a=ty({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,tf,void 0].filter(e=>!!e)});e.common.issues.push(a)}class t_{dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){let a=[];for(let r of t){if("aborted"===r.status)return tb;"dirty"===r.status&&e.dirty(),a.push(r.value)}return{status:e.value,value:a}}static async mergeObjectAsync(e,t){let a=[];for(let e of t){let t=await e.key,r=await e.value;a.push({key:t,value:r})}return t_.mergeObjectSync(e,a)}static mergeObjectSync(e,t){let a={};for(let r of t){let{key:t,value:n}=r;if("aborted"===t.status||"aborted"===n.status)return tb;"dirty"===t.status&&e.dirty(),"dirty"===n.status&&e.dirty(),"__proto__"!==t.value&&(void 0!==n.value||r.alwaysSet)&&(a[t.value]=n.value)}return{status:e.value,value:a}}constructor(){this.value="valid"}}let tb=Object.freeze({status:"aborted"}),tz=e=>({status:"dirty",value:e}),tw=e=>({status:"valid",value:e}),tx=e=>"u">typeof Promise&&e instanceof Promise;class tk{get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}constructor(e,t,a,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=a,this._key=r}}let tI=(e,t)=>{if("valid"===t.status)return{success:!0,data:t.value};if(!e.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let t=new tg(e.common.issues);return this._error=t,this._error}}};function tS(e){if(!e)return{};let{errorMap:t,invalid_type_error:a,required_error:r,description:n}=e;if(t&&(a||r))throw Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return t?{errorMap:t,description:n}:{errorMap:(t,n)=>{var s,i;let{message:o}=e;return"invalid_enum_value"===t.code?{message:null!=o?o:n.defaultError}:void 0===n.data?{message:null!=(i=null!=o?o:r)?i:n.defaultError}:"invalid_type"!==t.code?{message:n.defaultError}:{message:null!=(s=null!=o?o:a)?s:n.defaultError}},description:n}}class tC{get description(){return this._def.description}_getType(e){return th(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:th(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new t_,ctx:{common:e.parent.common,data:e.data,parsedType:th(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(tx(t))throw Error("Synchronous parse encountered promise.");return t}_parseAsync(e){return Promise.resolve(this._parse(e))}parse(e,t){let a=this.safeParse(e,t);if(a.success)return a.data;throw a.error}safeParse(e,t){var a;let r={common:{issues:[],async:null!=(a=null==t?void 0:t.async)&&a,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:th(e)},n=this._parseSync({data:e,path:r.path,parent:r});return tI(r,n)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:th(e)};if(!this["~standard"].async)try{let a=this._parseSync({data:e,path:[],parent:t});return"valid"===a.status?{value:a.value}:{issues:t.common.issues}}catch(e){var a,r;(null==e||null==(r=e.message)||null==(a=r.toLowerCase())?void 0:a.includes("encountered"))&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(e=>"valid"===e.status?{value:e.value}:{issues:t.common.issues})}async parseAsync(e,t){let a=await this.safeParseAsync(e,t);if(a.success)return a.data;throw a.error}async safeParseAsync(e,t){let a={common:{issues:[],contextualErrorMap:null==t?void 0:t.errorMap,async:!0},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:th(e)},r=this._parse({data:e,path:a.path,parent:a});return tI(a,await (tx(r)?r:Promise.resolve(r)))}refine(e,t){return this._refinement((a,r)=>{let n=e(a),s=()=>r.addIssue((0,ec._)({code:tm.custom},"string"==typeof t||void 0===t?{message:t}:"function"==typeof t?t(a):t));return"u">typeof Promise&&n instanceof Promise?n.then(e=>!!e||(s(),!1)):!!n||(s(),!1)})}refinement(e,t){return this._refinement((a,r)=>!!e(a)||(r.addIssue("function"==typeof t?t(a,r):t),!1))}_refinement(e){return new au({schema:this,typeName:D.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return ad.create(this,this._def)}nullable(){return ap.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return t4.create(this)}promise(){return ac.create(this,this._def)}or(e){return t5.create([this,e],this._def)}and(e){return t7.create(this,e,this._def)}transform(e){return new au((0,eu._)((0,ec._)({},tS(this._def)),{schema:this,typeName:D.ZodEffects,effect:{type:"transform",transform:e}}))}default(e){return new ah((0,eu._)((0,ec._)({},tS(this._def)),{innerType:this,defaultValue:"function"==typeof e?e:()=>e,typeName:D.ZodDefault}))}brand(){return new af((0,ec._)({typeName:D.ZodBranded,type:this},tS(this._def)))}catch(e){return new am((0,eu._)((0,ec._)({},tS(this._def)),{innerType:this,catchValue:"function"==typeof e?e:()=>e,typeName:D.ZodCatch}))}describe(e){return new this.constructor((0,eu._)((0,ec._)({},this._def),{description:e}))}pipe(e){return ay.create(this,e)}readonly(){return av.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:e=>this["~validate"](e)}}}let tE=/^c[^\s-]{8,}
2$/i,tT=/^[0-9a-z]+$/,tA=/^[0-9A-HJKMNP-TV-Z]{26}$/i,tM=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,tO=/^[a-z0-9_-]{21}$/i,tj=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,tR=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,tP=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,tN=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,tZ=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,tD=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,tF=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,tL=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,tU=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,tV="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",tB=new RegExp("^".concat(tV,"$"));function tq(e){let t="[0-5]\\d";e.precision?t="".concat(t,"\\.\\d{").concat(e.precision,"}"):null==e.precision&&(t="".concat(t,"(\\.\\d+)?"));let a=e.precision?"+":"?";return"([01]\\d|2[0-3]):[0-5]\\d(:".concat(t,")").concat(a)}class tH extends tC{_parse(e){var a,r,n,s;let i;if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==tp.string){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.string,received:t.parsedType}),tb}let o=new t_;for(let l of this._def.checks)if("min"===l.kind)e.data.length<l.value&&(tv(i=this._getOrReturnCtx(e,i),{code:tm.too_small,minimum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),o.dirty());else if("max"===l.kind)e.data.length>l.value&&(tv(i=this._getOrReturnCtx(e,i),{code:tm.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),o.dirty());else if("length"===l.kind){let t=e.data.length>l.value,a=e.data.length<l.value;(t||a)&&(i=this._getOrReturnCtx(e,i),t?tv(i,{code:tm.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!0,message:l.message}):a&&tv(i,{code:tm.too_small,minimum:l.value,type:"string",inclusive:!0,exact:!0,message:l.message}),o.dirty())}else if("email"===l.kind)tP.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"email",code:tm.invalid_string,message:l.message}),o.dirty());else if("emoji"===l.kind)t||(t=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),t.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"emoji",code:tm.invali
2d_string,message:l.message}),o.dirty());else if("uuid"===l.kind)tM.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"uuid",code:tm.invalid_string,message:l.message}),o.dirty());else if("nanoid"===l.kind)tO.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"nanoid",code:tm.invalid_string,message:l.message}),o.dirty());else if("cuid"===l.kind)tE.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"cuid",code:tm.invalid_string,message:l.message}),o.dirty());else if("cuid2"===l.kind)tT.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"cuid2",code:tm.invalid_string,message:l.message}),o.dirty());else if("ulid"===l.kind)tA.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"ulid",code:tm.invalid_string,message:l.message}),o.dirty());else if("url"===l.kind)try{new URL(e.data)}catch(t){tv(i=this._getOrReturnCtx(e,i),{validation:"url",code:tm.invalid_string,message:l.message}),o.dirty()}else"regex"===l.kind?(l.regex.lastIndex=0,l.regex.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"regex",code:tm.invalid_string,message:l.message}),o.dirty())):"trim"===l.kind?e.data=e.data.trim():"includes"===l.kind?e.data.includes(l.value,l.position)||(tv(i=this._getOrReturnCtx(e,i),{code:tm.invalid_string,validation:{includes:l.value,position:l.position},message:l.message}),o.dirty()):"toLowerCase"===l.kind?e.data=e.data.toLowerCase():"toUpperCase"===l.kind?e.data=e.data.toUpperCase():"startsWith"===l.kind?e.data.startsWith(l.value)||(tv(i=this._getOrReturnCtx(e,i),{code:tm.invalid_string,validation:{startsWith:l.value},message:l.message}),o.dirty()):"endsWith"===l.kind?e.data.endsWith(l.value)||(tv(i=this._getOrReturnCtx(e,i),{code:tm.invalid_string,validation:{endsWith:l.value},message:l.message}),o.dirty()):"datetime"===l.kind?(function(e){let t="".concat(tV,"T").concat(tq(e)),a=[];return a.push(e.local?"Z?":"Z"),e.offset&&a.push("([+-]\\d{2}:?\\d{2})"),t="".concat(t,"(").concat(a.join("|"),")"),new RegExp("^".concat(t,"$"))})(l).test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{code:tm.invalid_string,validation:"datetime",message:l.message}),o.dirty()):"date"===l.kind?tB.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{code:tm.invalid_string,validation:"date",message:l.message}),o.dirty()):"time"===l.kind?new RegExp("^".concat(tq(l),"$")).test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{code:tm.invalid_string,validation:"time",message:l.message}),o.dirty()):"duration"===l.kind?tR.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"duration",code:tm.invalid_string,message:l.message}),o.dirty()):"ip"===l.kind?(a=e.data,!(("v4"===(r=l.version)||!r)&&tN.test(a)||("v6"===r||!r)&&tD.test(a))&&1&&(tv(i=this._getOrReturnCtx(e,i),{validation:"ip",code:tm.invalid_string,message:l.message}),o.dirty())):"jwt"===l.kind?!function(e,t){if(!tj.test(e))return!1;try{let[a]=e.split(".");if(!a)return!1;let r=a.replace(/-/g,"+").replace(/_/g,"/").padEnd(a.length+(4-a.length%4)%4,"="),n=JSON.parse(atob(r));if("object"!=typeof n||null===n||"typ"in n&&(null==n?void 0:n.typ)!=="JWT"||!n.alg||t&&n.alg!==t)return!1;return!0}catch(e){return!1}}(e.data,l.alg)&&(tv(i=this._getOrReturnCtx(e,i),{validation:"jwt",code:tm.invalid_string,message:l.message}),o.dirty()):"cidr"===l.kind?(n=e.data,!(("v4"===(s=l.version)||!s)&&tZ.test(n)||("v6"===s||!s)&&tF.test(n))&&1&&(tv(i=this._getOrReturnCtx(e,i),{validation:"cidr",code:tm.invalid_string,message:l.message}),o.dirty())):"base64"===l.kind?tL.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"base64",code:tm.invalid_string,message:l.message}),o.dirty()):"base64url"===l.kind?tU.test(e.data)||(tv(i=this._getOrReturnCtx(e,i),{validation:"base64url",code:tm.invalid_string,message:l.message}),o.dirty()):P.assertNever(l);return{status:o.value,value:e.data}}_regex(e,t,a){return this.refinement(t=>e.test(t),(0,ec._)({validation:t,code:tm.invalid_string},Z.errToObj(a)))}_addCheck(e){return new tH((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,e]}))}email(e){return this._addCheck((0,ec._)({kind:"email"},Z.errToObj(e)))}url(e){return this._addCheck((0,ec._)({kind:"url"},Z.errToObj(e)))}emoji(e){return this._addCheck((0,ec._)({kind:"emoji"},Z.errToObj(e)))}uuid(e){return this._addCheck((0,ec._)({kind:"uuid"},Z.errToObj(e)))}nanoid(e){return this._addCheck((0,ec._)({kind:"nanoid"},Z.errToObj(e)))}cuid(e){return this._addCheck((0,ec._)({kind:"cuid"},Z.errToObj(e)))}cuid2(e){return this._addCheck((0,ec._)({kind:"cuid2"},Z.errToObj(e)))}ulid(e){return this._addCheck((0,ec._)({kind:"ulid"},Z.errToObj(e)))}base64(e){return this._addCheck((0,ec._)({kind:"base64"},Z.errToObj(e)))}base64url(e){return this._addCheck((0,ec._)({kind:"base64url"},Z.errToObj(e)))}jwt(e){return this._addCheck((0,ec._)({kind:"jwt"},Z.errToObj(e)))}ip(e){return this._addCheck((0,ec._)({kind:"ip"},Z.errToObj(e)))}cidr(e){return this._addCheck((0,ec._)({kind:"cidr"},Z.errToObj(e)))}datetime(e){var t,a;return"string"==typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck((0,ec._)({kind:"datetime",precision:void 0===(null==e?void 0:e.precision)?null:null==e?void 0:e.precision,offset:null!=(t=null==e?void 0:e.offset)&&t,local:null!=(a=null==e?void 0:e.local)&&a},Z.errToObj(null==e?void 0:e.message)))}date(e){return this._addCheck({kind:"date",message:e})}time(e){return"string"==typeof e?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck((0,ec._)({kind:"time",precision:void 0===(null==e?void 0:e.precision)?null:null==e?void 0:e.precision},Z.errToObj(null==e?void 0:e.message)))}duration(e){return this._addCheck((0,ec._)({kind:"duration"},Z.errToObj(e)))}regex(e,t){return this._addCheck((0,ec._)({kind:"regex",regex:e},Z.errToObj(t)))}includes(e,t){return this._addCheck((0,ec._)({kind:"includes",value:e,position:null==t?void 0:t.position},Z.errToObj(null==t?void 0:t.message)))}startsWith(e,t){return this._addCheck((0,ec._)({kind:"startsWith",value:e},Z.errToObj(t)))}endsWith(e,t){return this._addCheck((0,ec._)({kind:"endsWith",value:e},Z.errToObj(t)))}min(e,t){return this._addCheck((0,ec._)({kind:"min",value:e},Z.errToObj(t)))}max(e,t){return this._addCheck((0,ec._)({kind:"max",value:e},Z.errToObj(t)))}length(e,t){return this._addCheck((0,ec._)({kind:"length",value:e},Z.errToObj(t)))}nonempty(e){return this.min(1,Z.errToObj(e))}trim(){return new tH((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,{kind:"trim"}]}))}toLowerCase(){return new tH((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,{kind:"toLowerCase"}]}))}toUpperCase(){return new tH((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,{kind:"toUpperCase"}]}))}get isDatetime(){return!!this._def.checks.find(e=>"datetime"===e.kind)}
2get isDate(){return!!this._def.checks.find(e=>"date"===e.kind)}get isTime(){return!!this._def.checks.find(e=>"time"===e.kind)}get isDuration(){return!!this._def.checks.find(e=>"duration"===e.kind)}get isEmail(){return!!this._def.checks.find(e=>"email"===e.kind)}get isURL(){return!!this._def.checks.find(e=>"url"===e.kind)}get isEmoji(){return!!this._def.checks.find(e=>"emoji"===e.kind)}get isUUID(){return!!this._def.checks.find(e=>"uuid"===e.kind)}get isNANOID(){return!!this._def.checks.find(e=>"nanoid"===e.kind)}get isCUID(){return!!this._def.checks.find(e=>"cuid"===e.kind)}get isCUID2(){return!!this._def.checks.find(e=>"cuid2"===e.kind)}get isULID(){return!!this._def.checks.find(e=>"ulid"===e.kind)}get isIP(){return!!this._def.checks.find(e=>"ip"===e.kind)}get isCIDR(){return!!this._def.checks.find(e=>"cidr"===e.kind)}get isBase64(){return!!this._def.checks.find(e=>"base64"===e.kind)}get isBase64url(){return!!this._def.checks.find(e=>"base64url"===e.kind)}get minLength(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}}tH.create=e=>{var t;return new tH((0,ec._)({checks:[],typeName:D.ZodString,coerce:null!=(t=null==e?void 0:e.coerce)&&t},tS(e)))};class tJ extends tC{_parse(e){let t;if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==tp.number){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.number,received:t.parsedType}),tb}let a=new t_;for(let r of this._def.checks)"int"===r.kind?P.isInteger(e.data)||(tv(t=this._getOrReturnCtx(e,t),{code:tm.invalid_type,expected:"integer",received:"float",message:r.message}),a.dirty()):"min"===r.kind?(r.inclusive?e.data<r.value:e.data<=r.value)&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.too_small,minimum:r.value,type:"number",inclusive:r.inclusive,exact:!1,message:r.message}),a.dirty()):"max"===r.kind?(r.inclusive?e.data>r.value:e.data>=r.value)&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.too_big,maximum:r.value,type:"number",inclusive:r.inclusive,exact:!1,message:r.message}),a.dirty()):"multipleOf"===r.kind?0!==function(e,t){let a=(e.toString().split(".")[1]||"").length,r=(t.toString().split(".")[1]||"").length,n=a>r?a:r;return Number.parseInt(e.toFixed(n).replace(".",""))%Number.parseInt(t.toFixed(n).replace(".",""))/10**n}(e.data,r.value)&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.not_multiple_of,multipleOf:r.value,message:r.message}),a.dirty()):"finite"===r.kind?Number.isFinite(e.data)||(tv(t=this._getOrReturnCtx(e,t),{code:tm.not_finite,message:r.message}),a.dirty()):P.assertNever(r);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,Z.toString(t))}gt(e,t){return this.setLimit("min",e,!1,Z.toString(t))}lte(e,t){return this.setLimit("max",e,!0,Z.toString(t))}lt(e,t){return this.setLimit("max",e,!1,Z.toString(t))}setLimit(e,t,a,r){return new tJ((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,{kind:e,value:t,inclusive:a,message:Z.toString(r)}]}))}_addCheck(e){return new tJ((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,e]}))}int(e){return this._addCheck({kind:"int",message:Z.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Z.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Z.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Z.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:Z.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:Z.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Z.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Z.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>"int"===e.kind||"multipleOf"===e.kind&&P.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let a of this._def.checks)if("finite"===a.kind||"int"===a.kind||"multipleOf"===a.kind)return!0;else"min"===a.kind?(null===t||a.value>t)&&(t=a.value):"max"===a.kind&&(null===e||a.value<e)&&(e=a.value);return Number.isFinite(t)&&Number.isFinite(e)}constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}}tJ.create=e=>new tJ((0,ec._)({checks:[],typeName:D.ZodNumber,coerce:(null==e?void 0:e.coerce)||!1},tS(e)));class tW extends tC{_parse(e){let t;if(this._def.coerce)try{e.data=BigInt(e.data)}catch(t){return this._getInvalidInput(e)}if(this._getType(e)!==tp.bigint)return this._getInvalidInput(e);let a=new t_;for(let r of this._def.checks)"min"===r.kind?(r.inclusive?e.data<r.value:e.data<=r.value)&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.too_small,type:"bigint",minimum:r.value,inclusive:r.inclusive,message:r.message}),a.dirty()):"max"===r.kind?(r.inclusive?e.data>r.value:e.data>=r.value)&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.too_big,type:"bigint",maximum:r.value,inclusive:r.inclusive,message:r.message}),a.dirty()):"multipleOf"===r.kind?e.data%r.value!==BigInt(0)&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.not_multiple_of,multipleOf:r.value,message:r.message}),a.dirty()):P.assertNever(r);return{status:a.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);
2return tv(t,{code:tm.invalid_type,expected:tp.bigint,received:t.parsedType}),tb}gte(e,t){return this.setLimit("min",e,!0,Z.toString(t))}gt(e,t){return this.setLimit("min",e,!1,Z.toString(t))}lte(e,t){return this.setLimit("max",e,!0,Z.toString(t))}lt(e,t){return this.setLimit("max",e,!1,Z.toString(t))}setLimit(e,t,a,r){return new tW((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,{kind:e,value:t,inclusive:a,message:Z.toString(r)}]}))}_addCheck(e){return new tW((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,e]}))}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Z.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Z.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Z.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:Z.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}}tW.create=e=>{var t;return new tW((0,ec._)({checks:[],typeName:D.ZodBigInt,coerce:null!=(t=null==e?void 0:e.coerce)&&t},tS(e)))};class t$ extends tC{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==tp.boolean){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.boolean,received:t.parsedType}),tb}return tw(e.data)}}t$.create=e=>new t$((0,ec._)({typeName:D.ZodBoolean,coerce:(null==e?void 0:e.coerce)||!1},tS(e)));class tG extends tC{_parse(e){let t;if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==tp.date){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.date,received:t.parsedType}),tb}if(Number.isNaN(e.data.getTime()))return tv(this._getOrReturnCtx(e),{code:tm.invalid_date}),tb;let a=new t_;for(let r of this._def.checks)"min"===r.kind?e.data.getTime()<r.value&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:"date"}),a.dirty()):"max"===r.kind?e.data.getTime()>r.value&&(tv(t=this._getOrReturnCtx(e,t),{code:tm.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:"date"}),a.dirty()):P.assertNever(r);return{status:a.value,value:new Date(e.data.getTime())}}_addCheck(e){return new tG((0,eu._)((0,ec._)({},this._def),{checks:[...this._def.checks,e]}))}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:Z.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:Z.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return null!=e?new Date(e):null}}tG.create=e=>new tG((0,ec._)({checks:[],coerce:(null==e?void 0:e.coerce)||!1,typeName:D.ZodDate},tS(e)));class tY extends tC{_parse(e){if(this._getType(e)!==tp.symbol){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.symbol,received:t.parsedType}),tb}return tw(e.data)}}tY.create=e=>new tY((0,ec._)({typeName:D.ZodSymbol},tS(e)));class tK extends tC{_parse(e){if(this._getType(e)!==tp.undefined){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.undefined,received:t.parsedType}),tb}return tw(e.data)}}tK.create=e=>new tK((0,ec._)({typeName:D.ZodUndefined},tS(e)));class tQ extends tC{_parse(e){if(this._getType(e)!==tp.null){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.null,received:t.parsedType}),tb}return tw(e.data)}}tQ.create=e=>new tQ((0,ec._)({typeName:D.ZodNull},tS(e)));class tX extends tC{_parse(e){return tw(e.data)}constructor(){super(...arguments),this._any=!0}}tX.create=e=>new tX((0,ec._)({typeName:D.ZodAny},tS(e)));class t0 extends tC{_parse(e){return tw(e.data)}constructor(){super(...arguments),this._unknown=!0}}t0.create=e=>new t0((0,ec._)({typeName:D.ZodUnknown},tS(e)));class t1 extends tC{_parse(e){let t=this._getOrReturnCtx(e);
2return tv(t,{code:tm.invalid_type,expected:tp.never,received:t.parsedType}),tb}}t1.create=e=>new t1((0,ec._)({typeName:D.ZodNever},tS(e)));class t2 extends tC{_parse(e){if(this._getType(e)!==tp.undefined){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.void,received:t.parsedType}),tb}return tw(e.data)}}t2.create=e=>new t2((0,ec._)({typeName:D.ZodVoid},tS(e)));class t4 extends tC{_parse(e){let{ctx:t,status:a}=this._processInputParams(e),r=this._def;if(t.parsedType!==tp.array)return tv(t,{code:tm.invalid_type,expected:tp.array,received:t.parsedType}),tb;if(null!==r.exactLength){let e=t.data.length>r.exactLength.value,n=t.data.length<r.exactLength.value;(e||n)&&(tv(t,{code:e?tm.too_big:tm.too_small,minimum:n?r.exactLength.value:void 0,maximum:e?r.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:r.exactLength.message}),a.dirty())}if(null!==r.minLength&&t.data.length<r.minLength.value&&(tv(t,{code:tm.too_small,minimum:r.minLength.value,type:"array",inclusive:!0,exact:!1,message:r.minLength.message}),a.dirty()),null!==r.maxLength&&t.data.length>r.maxLength.value&&(tv(t,{code:tm.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),a.dirty()),t.common.async)return Promise.all([...t.data].map((e,a)=>r.type._parseAsync(new tk(t,e,t.path,a)))).then(e=>t_.mergeArray(a,e));let n=[...t.data].map((e,a)=>r.type._parseSync(new tk(t,e,t.path,a)));return t_.mergeArray(a,n)}get element(){return this._def.type}min(e,t){return new t4((0,eu._)((0,ec._)({},this._def),{minLength:{value:e,message:Z.toString(t)}}))}max(e,t){return new t4((0,eu._)((0,ec._)({},this._def),{maxLength:{value:e,message:Z.toString(t)}}))}length(e,t){return new t4((0,eu._)((0,ec._)({},this._def),{exactLength:{value:e,message:Z.toString(t)}}))}nonempty(e){return this.min(1,e)}}t4.create=(e,t)=>new t4((0,ec._)({type:e,minLength:null,maxLength:null,exactLength:null,typeName:D.ZodArray},tS(t)));class t9 extends tC{_getCached(){if(null!==this._cached)return this._cached;let e=this._def.shape(),t=P.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==tp.object){let t=this._getOrReturnCtx(e);return tv(t,{code:tm.invalid_type,expected:tp.object,received:t.parsedType}),tb}let{status:t,ctx:a}=this._processInputParams(e),{shape:r,keys:n}=this._getCached(),s=[];if(!(this._def.catchall instanceof t1&&"strip"===this._def.unknownKeys))for(let e in a.data)n.includes(e)||s.push(e);let i=[];for(let e of n){let t=r[e],n=a.data[e];i.push({key:{status:"valid",value:e},value:t._parse(new tk(a,n,a.path,e)),alwaysSet:e in a.data})}if(this._def.catchall instanceof t1){let e=this._def.unknownKeys;if("passthrough"===e)for(let e of s)i.push({key:{status:"valid",value:e},value:{status:"valid",value:a.data[e]}});else if("strict"===e)s.length>0&&(tv(a,{code:tm.unrecognized_keys,keys:s}),t.dirty());else if("strip"===e);else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let e=this._def.catchall;for(let t of s){let r=a.data[t];i.push({key:{status:"valid",value:t},value:e._parse(new tk(a,r,a.path,t)),alwaysSet:t in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of i){let a=await t.key,r=await t.value;e.push({key:a,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>t_.mergeObjectSync(t,e)):t_.mergeObjectSync(t,i)}get shape(){return this._def.shape()}strict(e){return Z.errToObj,new t9((0,ec._)((0,eu._)((0,ec._)({},this._def),{unknownKeys:"strict"}),void 0!==e?{errorMap:(t,a)=>{var r,n,s,i;let o=null!=(r=null==(s=(i=this._def).errorMap)?void 0:s.call(i,t,a).message)?r:a.defaultError;return"unrecognized_keys"===t.code?{message:null!=(n=Z.errToObj(e).message)?n:o}:{message:o}}}:{}))}strip(){return new t9((0,eu._)((0,ec._)({},this._def),{unknownKeys:"strip"}))}passthrough(){return new t9((0,eu._)((0,ec._)({},this._def),{unknownKeys:"passthrough"}))}extend(e){return new t9((0,eu._)((0,ec._)({},this._def),{shape:()=>(0,ec._)({},this._def.shape(),e)}))}merge(e){return new t9({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>(0,ec._)({},this._def.shape(),e._def.shape()),typeName:D.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new t9((0,eu._)((0,ec._)({},this._def),{catchall:e}))}pick(e){let t={};
2for(let a of P.objectKeys(e))e[a]&&this.shape[a]&&(t[a]=this.shape[a]);return new t9((0,eu._)((0,ec._)({},this._def),{shape:()=>t}))}omit(e){let t={};for(let a of P.objectKeys(this.shape))e[a]||(t[a]=this.shape[a]);return new t9((0,eu._)((0,ec._)({},this._def),{shape:()=>t}))}deepPartial(){return function e(t){if(t instanceof t9){let a={};for(let r in t.shape){let n=t.shape[r];a[r]=ad.create(e(n))}return new t9((0,eu._)((0,ec._)({},t._def),{shape:()=>a}))}if(t instanceof t4)return new t4((0,eu._)((0,ec._)({},t._def),{type:e(t.element)}));if(t instanceof ad)return ad.create(e(t.unwrap()));if(t instanceof ap)return ap.create(e(t.unwrap()));if(t instanceof t8)return t8.create(t.items.map(t=>e(t)));else return t}(this)}partial(e){let t={};for(let a of P.objectKeys(this.shape)){let r=this.shape[a];e&&!e[a]?t[a]=r:t[a]=r.optional()}return new t9((0,eu._)((0,ec._)({},this._def),{shape:()=>t}))}required(e){let t={};for(let a of P.objectKeys(this.shape))if(e&&!e[a])t[a]=this.shape[a];else{let e=this.shape[a];for(;e instanceof ad;)e=e._def.innerType;t[a]=e}return new t9((0,eu._)((0,ec._)({},this._def),{shape:()=>t}))}keyof(){return ai(P.objectKeys(this.shape))}constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}}t9.create=(e,t)=>new t9((0,ec._)({shape:()=>e,unknownKeys:"strip",catchall:t1.create(),typeName:D.ZodObject},tS(t))),t9.strictCreate=(e,t)=>new t9((0,ec._)({shape:()=>e,unknownKeys:"strict",catchall:t1.create(),typeName:D.ZodObject},tS(t))),t9.lazycreate=(e,t)=>new t9((0,ec._)({shape:e,unknownKeys:"strip",catchall:t1.create(),typeName:D.ZodObject},tS(t)));class t5 extends tC{_parse(e){let{ctx:t}=this._processInputParams(e),a=this._def.options;if(t.common.async)return Promise.all(a.map(async e=>{let a=(0,eu._)((0,ec._)({},t),{common:(0,eu._)((0,ec._)({},t.common),{issues:[]}),parent:null});return{result:await e._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(function(e){for(let t of e)if("valid"===t.result.status)return t.result;for(let a of e)if("dirty"===a.result.status)return t.common.issues.push(...a.ctx.common.issues),a.result;let a=e.map(e=>new tg(e.ctx.common.issues));return tv(t,{code:tm.invalid_union,unionErrors:a}),tb});{let e,r=[];for(let n of a){let a=(0,eu._)((0,ec._)({},t),{common:(0,eu._)((0,ec._)({},t.common),{issues:[]}),parent:null}),s=n._parseSync({data:t.data,path:t.path,parent:a});if("valid"===s.status)return s;"dirty"!==s.status||e||(e={result:s,ctx:a}),a.common.issues.length&&r.push(a.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let n=r.map(e=>new tg(e));return tv(t,{code:tm.invalid_union,unionErrors:n}),tb}}get options(){return this._def.options}}t5.create=(e,t)=>new t5((0,ec._)({options:e,typeName:D.ZodUnion},tS(t)));let t6=e=>{if(e instanceof an)return t6(e.schema);if(e instanceof au)return t6(e.innerType());if(e instanceof as)return[e.value];if(e instanceof ao)return e.options;if(e instanceof al)return P.objectValues(e.enum);else if(e instanceof ah)return t6(e._def.innerType);else if(e instanceof tK)return[void 0];else if(e instanceof tQ)return[null];else if(e instanceof ad)return[void 0,...t6(e.unwrap())];else if(e instanceof ap)return[null,...t6(e.unwrap())];else if(e instanceof af)return t6(e.unwrap());else if(e instanceof av)return t6(e.unwrap());else if(e instanceof am)return t6(e._def.innerType);else return[]};class t3 extends tC{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==tp.object)return tv(t,{code:tm.invalid_type,expected:tp.object,received:t.parsedType}),tb;let a=this.discriminator,r=t.data[a],n=this.optionsMap.get(r);return n?t.common.async?n._parseAsync({data:t.data,path:t.path,parent:t}):n._parseSync({data:t.data,path:t.path,parent:t}):(tv(t,{code:tm.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[a]}),tb)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,a){let r=new Map;for(let a of t){let t=t6(a.shape[e]);if(!t.length)throw Error("A discriminator value for key `".concat(e,"` could not be extracted from all schema options"));for(let n of t){if(r.has(n))throw Error("Discriminator property ".concat(String(e)," has duplicate value ").concat(String(n)));r.set(n,a)}}return new t3((0,ec._)({typeName:D.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:r},tS(a)))}}class t7 extends tC{_parse(e){let{status:t,ctx:a}=this._processInputParams(e),r=(e,r)=>{if("aborted"===e.status||"aborted"===r.status)return tb;let n=function e(t,a){let r=th(t),n=th(a);if(t===a)return{valid:!0,data:t};if(r===tp.object&&n===tp.object){let r=P.objectKeys(a),n=P.objectKeys(t).filter(e=>-1!==r.indexOf(e)),s=(0,ec._)({},t,a);for(let r of n){let n=e(t[r],a[r]);if(!n.valid)return{valid:!1};s[r]=n.data}return{valid:!0,data:s}}if(r===tp.array&&n===tp.array){if(t.length!==a.length)return{valid:!1};let r=[];for(let n=0;n<t.length;n++){let s=e(t[n],a[n]);if(!s.valid)return{valid:!1};r.push(s.data)}return{valid:!0,data:r}}if(r===tp.date&&n===tp.date&&+t==+a)return{valid:!0,data:t};return{valid:!1}}(e.value,r.value);return n.valid?(("dirty"===e.status||"dirty"===r.status)&&t.dirty(),{status:t.value,value:n.data}
2):(tv(a,{code:tm.invalid_intersection_types}),tb)};return a.common.async?Promise.all([this._def.left._parseAsync({data:a.data,path:a.path,parent:a}),this._def.right._parseAsync({data:a.data,path:a.path,parent:a})]).then(e=>{let[t,a]=e;return r(t,a)}):r(this._def.left._parseSync({data:a.data,path:a.path,parent:a}),this._def.right._parseSync({data:a.data,path:a.path,parent:a}))}}t7.create=(e,t,a)=>new t7((0,ec._)({left:e,right:t,typeName:D.ZodIntersection},tS(a)));class t8 extends tC{_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==tp.array)return tv(a,{code:tm.invalid_type,expected:tp.array,received:a.parsedType}),tb;if(a.data.length<this._def.items.length)return tv(a,{code:tm.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),tb;!this._def.rest&&a.data.length>this._def.items.length&&(tv(a,{code:tm.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let r=[...a.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new tk(a,e,a.path,t)):null}).filter(e=>!!e);return a.common.async?Promise.all(r).then(e=>t_.mergeArray(t,e)):t_.mergeArray(t,r)}get items(){return this._def.items}rest(e){return new t8((0,eu._)((0,ec._)({},this._def),{rest:e}))}}t8.create=(e,t)=>{if(!Array.isArray(e))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new t8((0,ec._)({items:e,typeName:D.ZodTuple,rest:null},tS(t)))};class ae extends tC{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==tp.object)return tv(a,{code:tm.invalid_type,expected:tp.object,received:a.parsedType}),tb;let r=[],n=this._def.keyType,s=this._def.valueType;for(let e in a.data)r.push({key:n._parse(new tk(a,e,a.path,e)),value:s._parse(new tk(a,a.data[e],a.path,e)),alwaysSet:e in a.data});return a.common.async?t_.mergeObjectAsync(t,r):t_.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(e,t,a){return new ae(t instanceof tC?(0,ec._)({keyType:e,valueType:t,typeName:D.ZodRecord},tS(a)):(0,ec._)({keyType:tH.create(),valueType:e,typeName:D.ZodRecord},tS(t)))}}class at extends tC{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==tp.map)return tv(a,{code:tm.invalid_type,expected:tp.map,received:a.parsedType}),tb;let r=this._def.keyType,n=this._def.valueType,s=[...a.data.entries()].map((e,t)=>{let[s,i]=e;return{key:r._parse(new tk(a,s,a.path,[t,"key"])),value:n._parse(new tk(a,i,a.path,[t,"value"]))}});if(a.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let a of s){let r=await a.key,n=await a.value;if("aborted"===r.status||"aborted"===n.status)return tb;("dirty"===r.status||"dirty"===n.status)&&t.dirty(),e.set(r.value,n.value)}return{status:t.value,value:e}})}{let e=new Map;for(let a of s){let r=a.key,n=a.value;if("aborted"===r.status||"aborted"===n.status)return tb;("dirty"===r.status||"dirty"===n.status)&&t.dirty(),e.set(r.value,n.value)}return{status:t.value,value:e}}}}at.create=(e,t,a)=>new at((0,ec._)({valueType:t,keyType:e,typeName:D.ZodMap},tS(a)));class aa extends tC{_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==tp.set)return tv(a,{code:tm.invalid_type,expected:tp.set,received:a.parsedType}),tb;let r=this._def;null!==r.minSize&&a.data.size<r.minSize.value&&(tv(a,{code:tm.too_small,minimum:r.minSize.value,type:"set",inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),null!==r.maxSize&&a.data.size>r.maxSize.value&&(tv(a,{code:tm.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let n=this._def.valueType;function s(e){let a=new Set;for(let r of e){if("aborted"===r.status)return tb;"dirty"===r.status&&t.dirty(),a.add(r.value)}return{status:t.value,value:a}}let i=[...a.data.values()].map((e,t)=>n._parse(new tk(a,e,a.path,t)));return a.common.async?Promise.all(i).then(e=>s(e)):s(i)}min(e,t){return new aa((0,eu._)((0,ec._)({},this._def),{minSize:{value:e,message:Z.toString(t)}}))}max(e,t){return new aa((0,eu._)((0,ec._)({},this._def),{maxSize:{value:e,message:Z.toString(t)}}))}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}aa.create=(e,t)=>
2new aa((0,ec._)({valueType:e,minSize:null,maxSize:null,typeName:D.ZodSet},tS(t)));class ar extends tC{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==tp.function)return tv(t,{code:tm.invalid_type,expected:tp.function,received:t.parsedType}),tb;function a(e,a){return ty({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,tf,tf].filter(e=>!!e),issueData:{code:tm.invalid_arguments,argumentsError:a}})}function r(e,a){return ty({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,tf,tf].filter(e=>!!e),issueData:{code:tm.invalid_return_type,returnTypeError:a}})}let n={errorMap:t.common.contextualErrorMap},s=t.data;if(this._def.returns instanceof ac){let e=this;return tw(async function(){for(var t=arguments.length,i=Array(t),o=0;o<t;o++)i[o]=arguments[o];let l=new tg([]),c=await e._def.args.parseAsync(i,n).catch(e=>{throw l.addIssue(a(i,e)),l}),u=await Reflect.apply(s,this,c);return await e._def.returns._def.type.parseAsync(u,n).catch(e=>{throw l.addIssue(r(u,e)),l})})}{let e=this;return tw(function(){for(var t=arguments.length,i=Array(t),o=0;o<t;o++)i[o]=arguments[o];let l=e._def.args.safeParse(i,n);if(!l.success)throw new tg([a(i,l.error)]);let c=Reflect.apply(s,this,l.data),u=e._def.returns.safeParse(c,n);if(!u.success)throw new tg([r(c,u.error)]);return u.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return new ar((0,eu._)((0,ec._)({},this._def),{args:t8.create(t).rest(t0.create())}))}returns(e){return new ar((0,eu._)((0,ec._)({},this._def),{returns:e}))}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,a){return new ar((0,ec._)({args:e||t8.create([]).rest(t0.create()),returns:t||t0.create(),typeName:D.ZodFunction},tS(a)))}constructor(){super(...arguments),this.validate=this.implement}}class an extends tC{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}an.create=(e,t)=>new an((0,ec._)({getter:e,typeName:D.ZodLazy},tS(t)));class as extends tC{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return tv(t,{received:t.data,code:tm.invalid_literal,expected:this._def.value}),tb}return{status:"valid",value:e.data}}get value(){return this._def.value}}function ai(e,t){return new ao((0,ec._)({values:e,typeName:D.ZodEnum},tS(t)))}as.create=(e,t)=>new as((0,ec._)({value:e,typeName:D.ZodLiteral},tS(t)));class ao extends tC{_parse(e){if("string"!=typeof e.data){let t=this._getOrReturnCtx(e),a=this._def.values;return tv(t,{expected:P.joinValues(a),received:t.parsedType,code:tm.invalid_type}),tb}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),a=this._def.values;return tv(t,{received:t.data,code:tm.invalid_enum_value,options:a}),tb}return tw(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return ao.create(e,(0,ec._)({},this._def,t))}exclude(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return ao.create(this.options.filter(t=>!e.includes(t)),(0,ec._)({},this._def,t))}}ao.create=ai;class al extends tC{_parse(e){let t=P.getValidEnumValues(this._def.values),a=this._getOrReturnCtx(e);if(a.parsedType!==tp.string&&a.parsedType!==tp.number){let e=P.objectValues(t);return tv(a,{expected:P.joinValues(e),received:a.parsedType,code:tm.invalid_type}),tb}if(this._cache||(this._cache=new Set(P.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let e=P.objectValues(t);return tv(a,{received:a.data,code:tm.invalid_enum_value,options:e}),tb}return tw(e.data)}get enum(){return this._def.values}}al.create=(e,t)=>new al((0,ec._)({values:e,typeName:D.ZodNativeEnum},tS(t)));class ac extends tC{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==tp.promise&&!1===t.common.async?(tv(t,{code:tm.invali
2d_type,expected:tp.promise,received:t.parsedType}),tb):tw((t.parsedType===tp.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}}ac.create=(e,t)=>new ac((0,ec._)({type:e,typeName:D.ZodPromise},tS(t)));class au extends tC{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===D.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:a}=this._processInputParams(e),r=this._def.effect||null,n={addIssue:e=>{tv(a,e),e.fatal?t.abort():t.dirty()},get path(){return a.path}};if(n.addIssue=n.addIssue.bind(n),"preprocess"===r.type){let e=r.transform(a.data,n);if(a.common.async)return Promise.resolve(e).then(async e=>{if("aborted"===t.value)return tb;let r=await this._def.schema._parseAsync({data:e,path:a.path,parent:a});return"aborted"===r.status?tb:"dirty"===r.status||"dirty"===t.value?tz(r.value):r});{if("aborted"===t.value)return tb;let r=this._def.schema._parseSync({data:e,path:a.path,parent:a});return"aborted"===r.status?tb:"dirty"===r.status||"dirty"===t.value?tz(r.value):r}}if("refinement"===r.type){let e=e=>{let t=r.refinement(e,n);if(a.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1!==a.common.async)return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(a=>"aborted"===a.status?tb:("dirty"===a.status&&t.dirty(),e(a.value).then(()=>({status:t.value,value:a.value}))));{let r=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});return"aborted"===r.status?tb:("dirty"===r.status&&t.dirty(),e(r.value),{status:t.value,value:r.value})}}if("transform"===r.type)if(!1!==a.common.async)return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(e=>"valid"!==e.status?tb:Promise.resolve(r.transform(e.value,n)).then(e=>({status:t.value,value:e})));else{let e=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});if("valid"!==e.status)return tb;let s=r.transform(e.value,n);if(s instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:s}}P.assertNever(r)}}au.create=(e,t,a)=>new au((0,ec._)({schema:e,typeName:D.ZodEffects,effect:t},tS(a))),au.createWithPreprocess=(e,t,a)=>new au((0,ec._)({schema:t,effect:{type:"preprocess",transform:e},typeName:D.ZodEffects},tS(a)));class ad extends tC{_parse(e){return this._getType(e)===tp.undefined?tw(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}ad.create=(e,t)=>new ad((0,ec._)({innerType:e,typeName:D.ZodOptional},tS(t)));class ap extends tC{_parse(e){return this._getType(e)===tp.null?tw(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}ap.create=(e,t)=>new ap((0,ec._)({innerType:e,typeName:D.ZodNullable},tS(t)));class ah extends tC{_parse(e){let{ctx:t}=this._processInputParams(e),a=t.data;return t.parsedType===tp.undefined&&(a=this._def.defaultValue()),this._def.innerType._parse({data:a,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}ah.create=(e,t)=>new ah((0,ec._)({innerType:e,typeName:D.ZodDefault,defaultValue:"function"==typeof t.default?t.default:()=>t.default},tS(t)));class am extends tC{_parse(e){let{ctx:t}=this._processInputParams(e),a=(0,eu._)((0,ec._)({},t),{common:(0,eu._)((0,ec._)({},t.common),{issues:[]})}),r=this._def.innerType._parse({data:a.data,path:a.path,parent:(0,ec._)({},a)});return tx(r)?r.then(e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new tg(a.common.issues)},input:a.data})})):{status:"valid",value:"valid"===r.status?r.value:this._def.catchValue({get error(){return new tg(a.common.issues)},input:a.data})}}removeCatch(){return this._def.innerType}}am.create=(e,t)=>new am((0,ec._)({innerType:e,typeName:D.ZodCatch,catchValue:"function"==typeof t.catch?t.catch:()=>t.catch},tS(t)));class ag extends tC{_parse(e){if(this._getType(e)!==tp.nan){let t=this._getOrReturnCtx(e);
2return tv(t,{code:tm.invalid_type,expected:tp.nan,received:t.parsedType}),tb}return{status:"valid",value:e.data}}}ag.create=e=>new ag((0,ec._)({typeName:D.ZodNaN},tS(e))),Symbol("zod_brand");class af extends tC{_parse(e){let{ctx:t}=this._processInputParams(e),a=t.data;return this._def.type._parse({data:a,path:t.path,parent:t})}unwrap(){return this._def.type}}class ay extends tC{_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:a.data,path:a.path,parent:a});return"aborted"===e.status?tb:"dirty"===e.status?(t.dirty(),tz(e.value)):this._def.out._parseAsync({data:e.value,path:a.path,parent:a})})();{let e=this._def.in._parseSync({data:a.data,path:a.path,parent:a});return"aborted"===e.status?tb:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:a.path,parent:a})}}static create(e,t){return new ay({in:e,out:t,typeName:D.ZodPipeline})}}class av extends tC{_parse(e){let t=this._def.innerType._parse(e),a=e=>("valid"===e.status&&(e.value=Object.freeze(e.value)),e);return tx(t)?t.then(e=>a(e)):a(t)}unwrap(){return this._def.innerType}}av.create=(e,t)=>new av((0,ec._)({innerType:e,typeName:D.ZodReadonly},tS(t))),t9.lazycreate,(n=D||(D={})).ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",
2n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly",tH.create,tJ.create,ag.create,tW.create,t$.create,tG.create,tY.create,tK.create,tQ.create,tX.create,t0.create,t1.create,t2.create,t4.create,t9.create,t9.strictCreate,t5.create,t3.create,t7.create,t8.create,ae.create,at.create,aa.create,ar.create,an.create,as.create,ao.create,al.create,ac.create,au.create,ad.create,ap.create,au.createWithPreprocess,ay.create;class a_ extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}function ab(e){}function az(e,t,a){return 100===a&&97===e.charCodeAt(t+1)&&116===e.charCodeAt(t+2)&&97===e.charCodeAt(t+3)&&58===e.charCodeAt(t+4)}function aw(e,t,a){return 101===a&&118===e.charCodeAt(t+1)&&101===e.charCodeAt(t+2)&&110===e.charCodeAt(t+3)&&116===e.charCodeAt(t+4)&&58===e.charCodeAt(t+5)}class ax extends TransformStream{constructor({onError:e,onRetry:t,onComment:a,maxBufferSize:r}={}){let n;super({start(s){n=function(e){if("function"==typeof e)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=ab,onError:a=ab,onRetry:r=ab,onComment:n,maxBufferSize:s}=e,i=[],o=0,l=!0,c,u="",d=0,p,h=!1;function m(){void 0!==s&&(o+u.length<=s||(h=!0,i.length=0,o=0,c=void 0,u="",d=0,p=void 0,a(new a_("Buffered data exceeded max buffer size of ".concat(s," characters"),{type:"max-buffer-size-exceeded"}))))}function g(e){let a=0;if(-1===e.indexOf("\r")){let r=e.indexOf("\n",a);for(;-1!==r;){if(a===r){d>0&&t({id:c,event:p,data:u}),c=void 0,u="",d=0,p=void 0,a=r+1,r=e.indexOf("\n",a);continue}let n=e.charCodeAt(a);if(az(e,a,n)){let n=32===e.charCodeAt(a+5)?a+6:a+5,s=e.slice(n,r);if(0===d&&10===e.charCodeAt(r+1)){t({id:c,event:p,data:s}),c=void 0,u="",p=void 0,a=r+2,r=e.indexOf("\n",a);continue}u=0===d?s:"".concat(u,"\n").concat(s),d++}else aw(e,a,n)?p=e.slice(32===e.charCodeAt(a+6)?a+7:a+6,r)||void 0:f(e,a,r);a=r+1,r=e.indexOf("\n",a)}return e.slice(a)}for(;a<e.length;){let t=e.indexOf("\r",a),r=e.indexOf("\n",a),n=-1;if(-1!==t&&-1!==r?n=t<r?t:r:-1!==t?n=t===e.length-1?-1:t:-1!==r&&(n=r),-1===n)break;f(e,a,n),a=n+1,13===e.charCodeAt(a-1)&&10===e.charCodeAt(a)&&a++}return e.slice(a)}function f(e,a,r){if(a===r)return void(d>0&&t({id:c,event:p,data:u}),c=void 0,u="",d=0,p=void 0);let s=e.charCodeAt(a);if(az(e,a,s)){let t=32===e.charCodeAt(a+5)?a+6:a+5,n=e.slice(t,r);u=0===d?n:"".concat(u,"\n").concat(n),d++;return}if(aw(e,a,s)){p=e.slice(32===e.charCodeAt(a+6)?a+7:a+6,r)||void 0;return}if(105===s&&100===e.charCodeAt(a+1)&&58===e.charCodeAt(a+2)){let t=e.slice(32===e.charCodeAt(a+3)?a+4:a+3,r);c=t.includes("\0")?void 0:t;return}if(58===s){n&&n(e.slice(a,r).slice(32===e.charCodeAt(a+1)?2:1));return}let i=e.slice(a,r),o=i.indexOf(":");if(-1===o)return void y(i,"",i);let l=i.slice(0,o),h=32===i.charCodeAt(o+1)?2:1;y(l,i.slice(o+h),i)}function y(e,t,n){switch(e){case"event":p=t||void 0;break;case"data":u=0===d?t:"".concat(u,"\n").concat(t),d++;break;case"id":c=t.includes("\0")?void 0:t;break;case"retry":/^\d+$/.test(t)?r(parseInt(t,10)):a(new a_('Invalid `retry` value: "'.concat(t,'"'),{type:"invalid-retry",value:t,line:n}));break;default:a(new a_('Unknown field "'.concat(e.length>20?"".concat(e.slice(0,20),"â¦"):e,'"'),{type:"unknown-field",field:e,value:t,line:n}))}}return{feed:function(e){if(h)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(l&&(l=!1,239===e.charCodeAt(0)&&187===e.charCodeAt(1)&&191===e.charCodeAt(2)&&(e=e.slice(3))),0===i.length){let t=g(e);""!==t&&(i.push(t),o=t.length),m();return}if(-1===e.indexOf("\n")&&-1===e.indexOf("\r")){i.push(e),o+=e.length,m();return}i.push(e);let t=i.join("");i.length=0,o=0;let a=g(t);""!==a&&(i.push(a),o=a.length),m()},reset:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(e.consume&&i.length>0){let e=i.join("");f(e,0,e.length)}l=!0,c=void 0,u="",d=0,p=void 0,i.length=0,o=0,h=!1}}}({onEvent:e=>{s.enqueue(e)},onError(t){"function"==typeof e&&e(t),("terminate"===e||"max-buffer-size-exceeded"===t.type)&&s.error(t)},onRetry:t,onComment:a,maxBufferSize:r})},transform(e){n.feed(e)}})}}let ak=Symbol.for("workflow-serialize"),aI=Symbol.for("workflow-deserialize");function aS(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return t.reduce((e,t)=>
2(0,ec._)({},e,null!=t?t:{}),{})}var{btoa:aC,atob:aE}=globalThis;function aT(e){let t=aE(e.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(t,e=>e.codePointAt(0))}function aA(e){let t="";for(let a=0;a<e.length;a++)t+=String.fromCodePoint(e[a]);return aC(t)}async function aM(e,t){if(null==e)return Promise.resolve();let a=null==t?void 0:t.abortSignal;return new Promise((t,r)=>{if(null==a?void 0:a.aborted)return void r(aO());let n=setTimeout(()=>{s(),t()},e),s=()=>{clearTimeout(n),null==a||a.removeEventListener("abort",i)},i=()=>{s(),r(aO())};null==a||a.addEventListener("abort",i)})}function aO(){return new DOMException("Delay was aborted","AbortError")}var aj=class{get promise(){return this._promise||(this._promise=new Promise((e,t)=>{"resolved"===this.status.type?e(this.status.value):"rejected"===this.status.type&&t(this.status.error),this._resolve=e,this._reject=t})),this._promise}resolve(e){var t;this.status={type:"resolved",value:e},this._promise&&(null==(t=this._resolve)||t.call(this,e))}reject(e){var t;this.status={type:"rejected",error:e},this._promise&&(null==(t=this._reject)||t.call(this,e))}
2isResolved(){return"resolved"===this.status.type}isRejected(){return"rejected"===this.status.type}isPending(){return"pending"===this.status.type}constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}},aR=[{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]}],aP=[{mediaType:"application/pdf",bytesPrefix:[37,80,68,70]}],aN=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/mp4",bytesPrefix:[102,116,121,112]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],aZ=[{mediaType:"video/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]},{mediaType:"video/webm",bytesPrefix:[26,69,223,163]},{mediaType:"video/quicktime",bytesPrefix:[0,0,0,20,102,116,121,112,113,116]},{mediaType:"video/x-msvideo",bytesPrefix:[82,73,70,70]}];function aD(e){let t,a,{data:r,signatures:n}=e,s="string"==typeof r&&r.startsWith("SUQz")||"string"!=typeof r&&r.length>10&&73===r[0]&&68===r[1]&&51===r[2]?(a=(127&(t="string"==typeof r?aT(r):r)[6])<<21|(127&t[7])<<14|(127&t[8])<<7|127&t[9],t.slice(a+10)):r,i="string"==typeof s?aT(s.substring(0,Math.min(s.length,24))):s;for(let e of n)if(i.length>=e.bytesPrefix.length&&e.bytesPrefix.every((e,t)=>null===e||i[t]===e))return e.mediaType}var aF={image:aR,audio:aN,video:aZ,application:aP};async function aL(e){var t;try{await (null==(t=e.body)?void 0:t.cancel())}catch(e){}}var aU="AI_DownloadError",aV="vercel.ai.error.".concat(aU),aB=Symbol.for(aV),aq=class extends(L=eg,F=aB,L){static isInstance(e){return eg.hasMarker(e,aV)}constructor({url:e,statusCode:t,statusText:a,cause:r,message:n=null==r?"Failed to download ".concat(e,": ").concat(t," ").concat(a):"Failed to download ".concat(e,": ").concat(r)}){super({name:aU,message:n,cause:r}),this[F]=!0,this.url=e,this.statusCode=t,this.statusText=a}};function aH(e){let t=e.split(".");return 4===t.length&&t.every(e=>{let t=Number(e);return Number.isInteger(t)&&t>=0&&t<=255&&String(t)===e})}function aJ(e){let[t,a,r]=e.split(".").map(Number);return 0===t||10===t||100===t&&a>=64&&a<=127||127===t||169===t&&254===a||172===t&&a>=16&&a<=31||192===t&&0===a&&0===r||192===t&&168===a||198===t&&(18===a||19===a)||t>=240||!1}async function aW(e){let{url:t,headers:a,abortSignal:r,maxRedirects:n=10}=e,s={signal:r};void 0!==a&&(s.headers=a);let i=t;for(let e=0;e<=n;e++){!function(e){let t;try{t=new URL(e)}catch(t){throw new aq({url:e,message:"Invalid URL: ".concat(e)})}if("data:"===t.protocol)return;if("http:"!==t.protocol&&"https:"!==t.protocol)throw new aq({url:e,message:"URL scheme must be http, https, or data, got ".concat(t.protocol)});let a=t.hostname.toLowerCase().replace(/\.+$/,"");if(!a)throw new aq({url:e,message:"URL must have a hostname"});if("localhost"===a||a.endsWith(".local")||a.endsWith(".localhost"))throw new aq({url:e,message:"URL with hostname ".concat(a," is not allowed")});if(a.startsWith("[")&&a.endsWith("]")){if(function(e){let t=function(e){let t=e.toLowerCase(),a=t.indexOf("%");-1!==a&&(t=t.slice(0,a));let r=t.split("::");if(r.length>2)return null;let n=e=>{if(""===e)return[];let t=[],a=e.split(":");for(let e=0;e<a.length;e++){let r=a[e];if(r.includes(".")){if(e!==a.length-1||!aH(r))return null;let[n,s,i,o]=r.split(".").map(Number);t.push(n<<8|s,i<<8|o);continue}if(!/^[0-9a-f]{1,4}$/.test(r))return null;t.push(parseInt(r,16))}return t},s=n(r[0]);if(null===s)return null;if(2===r.length){let e=n(r[1]);if(null===e)return null;let t=8-s.length-e.length;return t<0?null:[...s,...Array(t).fill(0),...e]}return 8===s.length?s:null}(e);if(null===t)return!0;let a=e=>t.slice(0,e).every(e=>0===e);
2if(a(7)&&(0===t[7]||1===t[7])||(65024&t[0])==64512||(65472&t[0])==65152||(65472&t[0])==65216||(65280&t[0])==65280)return!0;if(a(6)||a(5)&&65535===t[5]||a(4)&&65535===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&1===t[2]){let e=t[6]>>8&255,a=255&t[6],r=t[7]>>8&255,n=255&t[7];return aJ("".concat(e,".").concat(a,".").concat(r,".").concat(n))}return!1}(a.slice(1,-1)))throw new aq({url:e,message:"URL with IPv6 address ".concat(a," is not allowed")});return}if(aH(a)&&aJ(a))throw new aq({url:e,message:"URL with IP address ".concat(a," is not allowed")})}(i);let e=await fetch(i,(0,eu._)((0,ec._)({},s),{redirect:"manual"}));if("opaqueredirect"===e.type){if(!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:globalThis;return null!=e.window}())throw new aq({url:t,message:"Redirect from ".concat(i," could not be validated and was blocked")});return await fetch(i,(0,eu._)((0,ec._)({},s),{redirect:"follow"}))}let a=e.headers.get("location");if(e.status>=300&&e.status<400&&a){await aL(e),i=new URL(a,i).toString();continue}return e}throw new aq({url:t,message:"Too many redirects (max ".concat(n,")")})}async function a$(e){let{response:t,url:a,maxBytes:r=0x80000000}=e,n=t.headers.get("content-length");if(null!=n){let e=parseInt(n,10);if(!isNaN(e)&&e>r)throw await aL(t),new aq({url:a,message:"Download of ".concat(a," exceeded maximum size of ").concat(r," bytes (Content-Length: ").concat(e,").")})}let s=t.body;if(null==s)return new Uint8Array(0);let i=s.getReader(),o=[],l=0;try{for(;;){let{done:e,value:t}=await i.read();if(e)break;if((l+=t.length)>r)throw new aq({url:a,message:"Download of ".concat(a," exceeded maximum size of ").concat(r," bytes.")});o.push(t)}}finally{try{await i.cancel()}finally{i.releaseLock()}}let c=new Uint8Array(l),u=0;for(let e of o)c.set(e,u),u+=e.length;return c}function aG(e){return Object.fromEntries([...e.headers])}var aY=function(){let{prefix:e,size:t=16,alphabet:a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:r="-"}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=()=>{let e=a.length,r=Array(t);for(let n=0;n<t;n++)r[n]=a[Math.random()*e|0];return r.join("")};if(null==e)return n;if(a.includes(r))throw new eE({argument:"separator",message:'The separator "'.concat(r,'" must not be part of the alphabet "').concat(a,'".')});return()=>"".concat(e).concat(r).concat(n())},aK=aY();function aQ(e){return(e instanceof Error||e instanceof DOMException)&&("AbortError"===e.name||"ResponseAborted"===e.name||"TimeoutError"===e.name)}var aX=["fetch failed","failed to fetch"],a0=["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE"];function a1(e){let{error:t,url:a,requestBodyValues:r}=e;if(aQ(t))return t;if(t instanceof TypeError&&aX.includes(t.message.toLowerCase())){let e=t.cause;if(null!=e)return new e_({message:"Cannot connect to API: ".concat(e.message),cause:e,url:a,requestBodyValues:r,isRetryable:!0})}return!function(e){if(!(e instanceof Error))return!1;let t=e.code;return!!("string"==typeof t&&a0.includes(t))}(t)?t:new e_({message:"Cannot connect to API: ".concat(t.message),cause:t,url:a,requestBodyValues:r,isRetryable:!0})}function a2(){var e,t,a;let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:globalThis;return r.window?"runtime/browser":(null==(e=r.navigator)?void 0:e.userAgent)?"runtime/".concat(r.navigator.userAgent.toLowerCase()):(null==(a=null==(t=r.process)?void 0:t.versions)?void 0:a.node)?"runtime/node.js/".concat(r.process.version.substring(0)):r.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function a4(e){if(null==e)return{};let t={};if(e instanceof Headers)e.forEach((e,a)=>{t[a.toLowerCase()]=e});else for(let[a,r]of(Array.isArray(e)||(e=Object.entries(e)),e))null!=r&&(t[a.toLowerCase()]=r);return t}function a9(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];let n=new Headers(a4(e)),s=n.get("user-agent")||"";return n.set("user-agent",[s,...a].filter(Boolean).join(" ")),Object.fromEntries(n.entries())}var a5="5.0.2",a6=async e=>{let{url:t,headers:a={}
2,successfulResponseHandler:r,failedResponseHandler:n,abortSignal:s,fetch:i=globalThis.fetch}=e;try{let e=await i(t,{method:"GET",headers:a9(a,"ai-sdk/provider-utils/".concat(a5),a2()),signal:s}),o=aG(e);if(!e.ok){let a;try{a=await n({response:e,url:t,requestBodyValues:{}})}catch(a){if(aQ(a)||e_.isInstance(a))throw a;throw new e_({message:"Failed to process error response",cause:a,statusCode:e.status,url:t,responseHeaders:o,requestBodyValues:{}})}throw a.value}try{return await r({response:e,url:t,requestBodyValues:{}})}catch(a){if(a instanceof Error&&(aQ(a)||e_.isInstance(a)))throw a;throw new e_({message:"Failed to process successful response",cause:a,statusCode:e.status,url:t,responseHeaders:o,requestBodyValues:{}})}}catch(e){throw a1({error:e,url:t,requestBodyValues:{}})}};function a3(e){var t,a;return null!=(a=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&a}function a7(e){let{settingValue:t,environmentVariableName:a}=e;return"string"==typeof t?t:null!=t||void 0===ed.default?void 0:null!=(t=ed.default.env[a])&&"string"==typeof t?t:void 0}var a8=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,re=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function rt(e){let t=JSON.parse(e);return null===t||"object"!=typeof t||!1===a8.test(e)&&!1===re.test(e)?t:function(e){let t=[e];for(;t.length;){let e=t;for(let a of(t=[],e)){if(Object.prototype.hasOwnProperty.call(a,"__proto__")||Object.prototype.hasOwnProperty.call(a,"constructor")&&null!==a.constructor&&"object"==typeof a.constructor&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let e in a){let r=a[e];r&&"object"==typeof r&&t.push(r)}}}return e}(t)}function ra(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(t){return rt(e)}try{return rt(e)}finally{Error.stackTraceLimit=t}}function rr(e){if("object"===e.type||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;let{properties:t}=e;if(null!=t)for(let e of Object.keys(t))t[e]=rn(t[e])}null!=e.items&&(e.items=Array.isArray(e.items)?e.items.map(rn):rn(e.items)),null!=e.anyOf&&(e.anyOf=e.anyOf.map(rn)),null!=e.allOf&&(e.allOf=e.allOf.map(rn)),null!=e.oneOf&&(e.oneOf=e.oneOf.map(rn));let{definitions:t}=e;if(null!=t)for(let e of Object.keys(t))t[e]=rn(t[e]);return e}function rn(e){return"boolean"==typeof e?e:rr(e)}var rs=Symbol("Let zodToJsonSchema decide on which parser to use"),ri={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function ro(e,t){return rE(e.type._def,t)}var rl=void 0,rc=/^[cC][^\s-]{8,}$/,ru=/^[0-9a-z]+$/,rd=/^[0-9A-HJKMNP-TV-Z]{26}$/,rp=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,rh=()=>(void 0===rl&&(rl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),rl),rm=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,rg=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,rf=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ry=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,rv=/^[a-zA-Z0-9_-]{21}$/,r_=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function rb(e,t){let a={type:"string"};if(e.checks)for(let r of e.checks)switch(r.kind){case"min":a.minLength="number"==typeof a.minLength?Math.max(a.minLength,r.value):r.value;break;case"max":a.maxLength="number"==typeof a.maxLength?Math.min(a.maxLength,r.value):r.value;break;case"email":switch(t.emailStrategy){case"format:email":rx(a,"email",r.message,t);break;case"format:idn-email":rx(a,"idn-email",r.message,t);break;case"pattern:zod":rk(a,rp,r.message,t)}break;case"url":rx(a,"uri",r.message,t);break;case"uuid":rx(a,"uuid",r.message,t);break;case"regex":rk(a,r.regex,r.message,t);break;case"cuid":rk(a,rc,r.message,t);break;case"cuid2":rk(a,ru,r.message,t);break;case"startsWith":rk(a,RegExp("^".concat(rz(r.value,t))),r.message,t);break;case"endsWith":rk(a,RegExp("".concat(rz(r.value,t),"$")),r.message,t);break;case"datetime":rx(a,"date-time",r.message,t);break;case"date":rx(a,"date",r.message,t);break;case"time":rx(a,"time",r.message,t);break;case"duration":rx(a,"duration",r.message,t);break;case"length":a.minLength="number"==typeof a.minLength?Math.max(a.minLength,r.value):r.value,a.maxLength="number"==typeof a.maxLength?Math.min(a.maxLength,r.value):r.value;break;case"includes":rk(a,RegExp(rz(r.value,t)),r.message,t);break;case"ip":"v6"!==r.version&&rx(a,"ipv4",r.message,t),"v4"!==r.version&&rx(a,"ipv6",r.message,t);break;case"base64url":rk(a,ry,r.message,t);break;case"jwt":rk(a,r_,r.message,t);break;case"cidr":"v6"!==r.version&&rk(a,rm,r.message,t),"v4"!==r.version&&rk(a,rg,r.message,t);break;case"emoji":rk(a,rh(),r.message,t);break;case"ulid":rk(a,rd,r.message,t);break;case"base64":switch(t.base64Strategy){case"format:binary":rx(a,"binary",r.message,t);break;case"contentEncoding:base64":a.contentEncoding="base64";break;case"pattern:zod":rk(a,rf,r.message,t)}break;case"nanoid":rk(a,rv,r.message,t)}return a}function rz(e,t){return"escape"===t.patternStrategy?function(e){let t="";for(let a=0;a<e.length;a++)rw.has(e[a])||(t+="\\"),t+=e[a];return t}(e):e}var rw=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function rx(e,t,a,r){var n;e.format||(null==(n=e.anyOf)?void 0:n.some(e=>e.format))?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push((0,ec._)({format:t},a&&r.errorMessages&&{errorMessage:{format:a}}))):e.format=t}function rk(e,t,a,r){var n;e.pattern||(null==(n=e.allOf)?void 0:n.some(e=>e.pattern))?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push((0,ec._)({pattern:rI(t,r)},a&&r.errorMessages&&{errorMessage:{pattern:a}}))):e.pattern=rI(t,r)}function rI(e,t){var a;
2if(!t.applyRegexFlags||!e.flags)return e.source;let r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=r.i?e.source.toLowerCase():e.source,s="",i=!1,o=!1,l=!1;for(let e=0;e<n.length;e++){if(i){s+=n[e],i=!1;continue}if(r.i){if(o){if(n[e].match(/[a-z]/)){l?(s+=n[e],s+="".concat(n[e-2],"-").concat(n[e]).toUpperCase(),l=!1):"-"===n[e+1]&&(null==(a=n[e+2])?void 0:a.match(/[a-z]/))?(s+=n[e],l=!0):s+="".concat(n[e]).concat(n[e].toUpperCase());continue}}else if(n[e].match(/[a-z]/)){s+="[".concat(n[e]).concat(n[e].toUpperCase(),"]");continue}}if(r.m){if("^"===n[e]){s+="(^|(?<=[\r\n]))";continue}else if("$"===n[e]){s+="($|(?=[\r\n]))";continue}}if(r.s&&"."===n[e]){s+=o?"".concat(n[e],"\r\n"):"[".concat(n[e],"\r\n]");continue}s+=n[e],"\\"===n[e]?i=!0:o&&"]"===n[e]?o=!1:o||"["!==n[e]||(o=!0)}try{new RegExp(s)}catch(a){return console.warn("Could not convert regex pattern at ".concat(t.currentPath.join("/")," to a flag-independent form! Falling back to the flag-ignorant source")),e.source}return s}function rS(e,t){var a,r,n,s,i,o;let l={type:"object",additionalProperties:null!=(a=rE(e.valueType._def,(0,eu._)((0,ec._)({},t),{currentPath:[...t.currentPath,"additionalProperties"]})))?a:t.allowedAdditionalProperties};if((null==(r=e.keyType)?void 0:r._def.typeName)===D.ZodString&&(null==(n=e.keyType._def.checks)?void 0:n.length)){let a=rb(e.keyType._def,t),{type:r}=a,n=(0,ep._)(a,["type"]);return(0,eu._)((0,ec._)({},l),{propertyNames:n})}if((null==(s=e.keyType)?void 0:s._def.typeName)===D.ZodEnum)return(0,eu._)((0,ec._)({},l),{propertyNames:{enum:e.keyType._def.values}});if((null==(i=e.keyType)?void 0:i._def.typeName)===D.ZodBranded&&e.keyType._def.type._def.typeName===D.ZodString&&(null==(o=e.keyType._def.type._def.checks)?void 0:o.length)){let a=ro(e.keyType._def,t),{type:r}=a,n=(0,ep._)(a,["type"]);return(0,eu._)((0,ec._)({},l),{propertyNames:n})}return l}var rC={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function rE(e,t){var a;let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=t.seen.get(e);if(t.override){let s=null==(a=t.override)?void 0:a.call(t,e,t,n,r);if(s!==rs)return s}if(n&&!r){let e=rT(n,t);if(void 0!==e)return e}let s={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,s);let i=((e,t,a)=>{var r,n,s,i,o,l;switch(t){case D.ZodString:return rb(e,a);case D.ZodNumber:let c={type:"number"};if(!e.checks)return c;for(let t of e.checks)switch(t.kind){case"int":c.type="integer";break;case"min":t.inclusive?c.minimum=t.value:c.exclusiveMinimum=t.value;break;case"max":t.inclusive?c.maximum=t.value:c.exclusiveMaximum=t.value;break;case"multipleOf":c.multipleOf=t.value}return c;case D.ZodObject:return function(e,t){let a={type:"object",properties:{}},r=[],n=e.shape();for(let e in n){let s=n[e];if(void 0===s||void 0===s._def)continue;let i=function(e){try{return e.isOptional()}catch(e){return!0}}(s),o=rE(s._def,(0,eu._)((0,ec._)({},t),{currentPath:[...t.currentPath,"properties",e],propertyPath:[...t.currentPath,"properties",e]}));void 0!==o&&(a.properties[e]=o,i||r.push(e))}r.length&&(a.required=r);let s=function(e,t){if("ZodNever"!==e.catchall._def.typeName)return rE(e.catchall._def,(0,eu._)((0,ec._)({},t),{currentPath:[...t.currentPath,"additionalProperties"]}));switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return"strict"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==s&&(a.additionalProperties=s),a}(e,a);case D.ZodBigInt:let u={type:"integer",format:"int64"};if(!e.checks)return u;for(let t of e.checks)switch(t.kind){case"min":t.inclusive?u.minimum=t.value:u.exclusiveMinimum=t.value;break;case"max":t.inclusive?u.maximum=t.value:u.exclusiveMaximum=t.value;break;case"multipleOf":u.multipleOf=t.value}return u;case D.ZodBoolean:return{type:"boolean"};case D.ZodDate:return function e(t,a,r){let n=null!=r?r:a.dateStrategy;if(Array.isArray(n))return{anyOf:n.map(r=>e(t,a,r))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var s=t;let i={type:"integer",format:"unix-time"};for(let e of s.checks)switch(e.kind){case"min":i.minimum=e.value;break;case"max":i.maximum=e.value}return i}}(e,a);case D.ZodUndefined:return{not:{}};case D.ZodNull:return{type:"null"};case D.ZodArray:let d;return d={type:"array"},(null==(s=e.type)?void 0:s._def)&&(null==(o=null==(i=e.type)?void 0:i._def)?void 0:o.typeName)!==D.ZodAny&&(d.items=rE(e.type._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"items"]}))),e.minLength&&(d.minItems=e.minLength.value),e.maxLength&&(d.maxItems=e.maxLength.value),e.exactLength&&(d.minItems=e.exactLength.value,d.maxItems=e.exactLength.value),d;case D.ZodUnion:case D.ZodDiscriminatedUnion:let p,h=e.options instanceof Map?Array.from(e.options.values()):e.options;if(h.every(e=>e._def.typeName in rC&&(!e._def.checks||!e._def.checks.length))){let e=h.reduce((e,t)=>
2{let a=rC[t._def.typeName];return a&&!e.includes(a)?[...e,a]:e},[]);return{type:e.length>1?e:e[0]}}if(h.every(e=>"ZodLiteral"===e._def.typeName&&!e.description)){let e=h.reduce((e,t)=>{let a=typeof t._def.value;switch(a){case"string":case"number":case"boolean":return[...e,a];case"bigint":return[...e,"integer"];case"object":if(null===t._def.value)return[...e,"null"];default:return e}},[]);if(e.length===h.length){let t=e.filter((e,t,a)=>a.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:h.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(h.every(e=>"ZodEnum"===e._def.typeName))return{type:"string",enum:h.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return r=e,n=a,(p=(r.options instanceof Map?Array.from(r.options.values()):r.options).map((e,t)=>rE(e._def,(0,eu._)((0,ec._)({},n),{currentPath:[...n.currentPath,"anyOf","".concat(t)]}))).filter(e=>!!e&&(!n.strictUnions||"object"==typeof e&&Object.keys(e).length>0))).length?{anyOf:p}:void 0;case D.ZodIntersection:let m,g;return m=[rE(e.left._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"allOf","0"]})),rE(e.right._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"allOf","1"]}))].filter(e=>!!e),g=[],m.forEach(e=>{if((!("type"in e)||"string"!==e.type)&&"allOf"in e)g.push(...e.allOf);else{let t=e;if("additionalProperties"in e&&!1===e.additionalProperties){let{additionalProperties:a}=e;t=(0,ep._)(e,["additionalProperties"])}g.push(t)}}),g.length?{allOf:g}:void 0;case D.ZodTuple:return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((e,t)=>rE(e._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"items","".concat(t)]}))).reduce((e,t)=>void 0===t?e:[...e,t],[]),additionalItems:rE(e.rest._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"additionalItems"]}))}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,t)=>rE(e._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"items","".concat(t)]}))).reduce((e,t)=>void 0===t?e:[...e,t],[])};case D.ZodRecord:return rS(e,a);case D.ZodLiteral:let f;return"bigint"!=(f=typeof e.value)&&"number"!==f&&"boolean"!==f&&"string"!==f?{type:Array.isArray(e.value)?"array":"object"}:{type:"bigint"===f?"integer":f,const:e.value};case D.ZodEnum:return{type:"string",enum:Array.from(e.values)};case D.ZodNativeEnum:let y,v,_;return y=e.values,{type:1===(_=Array.from(new Set((v=Object.keys(e.values).filter(e=>"number"!=typeof y[y[e]]).map(e=>y[e])).map(e=>typeof e)))).length?"string"===_[0]?"string":"number":["string","number"],enum:v};case D.ZodNullable:if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[rC[e.innerType._def.typeName],"null"]};let b=rE(e.innerType._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"anyOf","0"]}));return b&&{anyOf:[b,{type:"null"}]};case D.ZodOptional:if(a.currentPath.toString()===(null==(l=a.propertyPath)?void 0:l.toString()))return rE(e.innerType._def,a);let z=rE(e.innerType._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"anyOf","1"]}));return z?{anyOf:[{not:{}},z]}:{};case D.ZodMap:if("record"===a.mapStrategy)return rS(e,a);return{type:"array",maxItems:125,items:{type:"array",items:[rE(e.ke
2yType._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"items","items","0"]}))||{},rE(e.valueType._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"items","items","1"]}))||{}],minItems:2,maxItems:2}};case D.ZodSet:let w;return w={type:"array",uniqueItems:!0,items:rE(e.valueType._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"items"]}))},e.minSize&&(w.minItems=e.minSize.value),e.maxSize&&(w.maxItems=e.maxSize.value),w;case D.ZodLazy:return()=>e.getter()._def;case D.ZodPromise:return rE(e.type._def,a);case D.ZodNaN:case D.ZodNever:return{not:{}};case D.ZodEffects:return"input"===a.effectStrategy?rE(e.schema._def,a):{};case D.ZodAny:case D.ZodUnknown:return{};case D.ZodDefault:return(0,eu._)((0,ec._)({},rE(e.innerType._def,a)),{default:e.defaultValue()});case D.ZodBranded:return ro(e,a);case D.ZodReadonly:case D.ZodCatch:return rE(e.innerType._def,a);case D.ZodPipeline:if("input"===a.pipeStrategy)return rE(e.in._def,a);if("output"===a.pipeStrategy)return rE(e.out._def,a);let x=rE(e.in._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"allOf","0"]})),k=rE(e.out._def,(0,eu._)((0,ec._)({},a),{currentPath:[...a.currentPath,"allOf",x?"1":"0"]}));return{allOf:[x,k].filter(e=>void 0!==e)};case D.ZodFunction:case D.ZodVoid:case D.ZodSymbol:default:return}})(e,e.typeName,t),o="function"==typeof i?rE(i(),t):i;if(o&&rA(e,t,o),t.postProcess){let a=t.postProcess(o,e,t);return s.jsonSchema=o,a}return s.jsonSchema=o,o}var rT=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:((e,t)=>{let a=0;for(;a<e.length&&a<t.length&&e[a]===t[a];a++);return[(e.length-a).toString(),...t.slice(a)].join("/")})(t.currentPath,e.path)};case"none":case"seen":if(e.path.length<t.currentPath.length&&e.path.every((e,a)=>t.currentPath[a]===e))return console.warn("Recursive reference detected at ".concat(t.currentPath.join("/"),"! Defaulting to any")),{};return"seen"===t.$refStrategy?{}:void 0}},rA=(e,t,a)=>(e.description&&(a.description=e.description),a),rM=Symbol.for("vercel.ai.schema");function rO(e){let t;return()=>(null==t&&(t=e()),t)}function rj(e){let{validate:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return{[rM]:!0,_type:void 0,get jsonSchema(){return"function"==typeof e&&(e=e()),e},validate:t}}function rR(e){var t;return null==e?rj({type:"object",properties:{},additionalProperties:!1}):"object"==typeof e&&null!==e&&rM in e&&!0===e[rM]&&"jsonSchema"in e&&"validate"in e?e:"~standard"in e?"zod"===e["~standard"].vendor?rP(e):(t=e,rj(()=>rr(t["~standard"].jsonSchema.input({target:"draft-07"})),{validate:async e=>{let a=await t["~standard"].validate(e);return"value"in a?{success:!0,value:a.value}:{success:!1,error:new tn({value:e,cause:a.issues})}}})):e()}function rP(e,t){var a,r;let n;if("_zod"in e){let r;return r=null!=(a=null==t?void 0:t.useReferences)&&a,rj(()=>rr(td.toJSONSchema(e,{target:"draft-7",io:"input",reused:r?"ref":"inline"})),{validate:async t=>{let a=await tu.safeParseAsync(e,t);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}return n=null!=(r=null==t?void 0:t.useReferences)&&r,rj(()=>((e,t)=>{var a;let r,n,s=(n=void 0!==(r="string"==typeof t?(0,eu._)((0,ec._)({},ri),{name:t}):(0,ec._)({},ri,t)).name?[...r.basePath,r.definitionPath,r.name]:r.basePath,(0,eu._)((0,ec._)({},r),{currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(r.definitions).map(e=>{let[t,a]=e;return[a._def,{def:a._def,path:[...r.basePath,r.definitionPath,t],jsonSchema:void 0}]}))})),i="object"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,t)=>{var a;let[r,n]=t;return(0,eu._)((0,ec._)({},e),{[r]:null!=(a=rE(n._def,(0,eu._)((0,ec._)({},s),{currentPath:[...s.basePath,s.definitionPath,r]}),!0))?a:{}})},{}):void 0,o="string"==typeof t?t:(null==t?void 0:t.nameStrategy)==="title"||null==t?void 0:t.name,l=null!=(a=rE(e._def,void 0===o?s:(0,eu._)((0,ec._)({},s),{currentPath:[...s.basePath,s.definitionPath,o]}),!1))?a:{},c="object"==typeof t&&void 0!==t.name&&"title"===t.nameStrategy?t.name:void 0;void 0!==c&&(l.title=c);let u=void 0===o?i?(0,eu._)((0,ec._)({},l),{[s.definitionPath]:i}):l:{$ref:[..."relative"===s.$refStrategy?[]:s.basePath,s.definitionPath,o].join("/"),[s.definitionPath]:(0,eu._)((0,ec._)({},i),{[o]:l})};return u.$schema="http://json-schema.org/draft-07/schema#",u})(e,{$refStrategy:n?"root":"none"}),{validate:async t=>{let a=await e.safeParseAsync(t);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}async function rN(e){let{value:t,schema:a,context:r}=e,n=await rZ({value:t,schema:a,context:r});if(!n.success)throw tn.wrap({value:t,cause:n.error,context:r});return n.value}async function rZ(e){let{value:t,schema:a,context:r}=e,n=rR(a);try{if(null==n.validate)return{success:!0,value:t,rawValue:t};let e=await n.validate(t);if(e.success)return{success:!0,value:e.value,rawValue:t};return{success:!1,error:tn.wrap({value:t,cause:e.error,context:r}),rawValue:t}}catch(e){return{success:!1,error:tn.wrap({value:t,cause:e,context:r}),rawValue:t}}}async function rD(e){let{text:t,schema:a}=e;try{let e=ra(t);if(null==a)return e;return await rN({value:e,schema:a})}catch(e){if(eL.isInstance(e)||tn.isInstance(e))throw e;throw new eL({text:t,cause:e})}}async function rF(e){let{text:t,schema:a}=e;try{let e=ra(t);if(null==a)return{success:!0,value:e,rawValue:e};return await rZ({value:e,schema:a})}catch(e){return{success:!1,error:eL.isInstance(e)?e:new eL({text:t,cause:e}),rawValue:void 0}}}function rL(e){let{stream:t,schema:a}=e;return t.pipeThrough(new TextDecoderStream).pipeThrough(new ax).pipeThrough(new TransformStream({async transform(e,t){let{data:r}=e;"[DONE]"!==r&&t.enqueue(await rF({text:r,schema:a}))}}))}var rU=async e=>{let{url:t,headers:a,body:r,failedResponseHandler:n,successfulResponseHandler:s,abort
2Signal:i,fetch:o}=e;return await rV({url:t,headers:(0,ec._)({"Content-Type":"application/json"},a),body:{content:JSON.stringify(r),values:r},failedResponseHandler:n,successfulResponseHandler:s,abortSignal:i,fetch:o})},rV=async e=>{let{url:t,headers:a={},body:r,successfulResponseHandler:n,failedResponseHandler:s,abortSignal:i,fetch:o=globalThis.fetch}=e;try{let e=await o(t,{method:"POST",headers:a9(a,"ai-sdk/provider-utils/".concat(a5),a2()),body:r.content,signal:i}),l=aG(e);if(!e.ok){let a;try{a=await s({response:e,url:t,requestBodyValues:r.values})}catch(a){if(aQ(a)||e_.isInstance(a))throw a;throw new e_({message:"Failed to process error response",cause:a,statusCode:e.status,url:t,responseHeaders:l,requestBodyValues:r.values})}throw a.value}try{return await n({response:e,url:t,requestBodyValues:r.values})}catch(a){if(a instanceof Error&&(aQ(a)||e_.isInstance(a)))throw a;throw new e_({message:"Failed to process successful response",cause:a,statusCode:e.status,url:t,responseHeaders:l,requestBodyValues:r.values})}}catch(e){throw a1({error:e,url:t,requestBodyValues:r.values})}};function rB(e){return e}function rq(e){let{id:t,inputSchema:a,outputSchema:r,supportsDeferredResults:n}=e;return e=>{let{onInputStart:s,onInputDelta:i,onInputAvailable:o}=e;return rB({type:"provider",isProviderExecuted:!0,id:t,args:(0,ep._)(e,["onInputStart","onInputDelta","onInputAvailable"]),inputSchema:a,outputSchema:r,onInputStart:s,onInputDelta:i,onInputAvailable:o,supportsDeferredResults:n})}}async function rH(e){return"function"==typeof e&&(e=e()),Promise.resolve(e)}var rJ=new TextDecoder;async function rW(e){let{response:t,url:a}=e;return rJ.decode(await a$({response:t,url:a}))}var r$=e=>{let{errorSchema:t,errorToMessage:a,isRetryable:r}=e;return async e=>{let{response:n,url:s,requestBodyValues:i}=e,o=await rW({response:n,url:s}),l=aG(n);if(""===o.trim())return{responseHeaders:l,value:new e_({message:n.statusText,url:s,requestBodyValues:i,statusCode:n.status,responseHeaders:l,responseBody:o,isRetryable:null==r?void 0:r(n)})};try{let e=await rD({text:o,schema:t});return{responseHeaders:l,value:new e_({message:a(e),url:s,requestBodyValues:i,statusCode:n.status,responseHeaders:l,responseBody:o,data:e,isRetryable:null==r?void 0:r(n,e)})}}catch(e){return{responseHeaders:l,value:new e_({message:n.statusText,url:s,requestBodyValues:i,statusCode:n.status,responseHeaders:l,responseBody:o,isRetryable:null==r?void 0:r(n)})}}}},rG=e=>async t=>{let{response:a}=t,r=aG(a);if(null==a.body)throw new ex({});return{responseHeaders:r,value:rL({stream:a.body,schema:e})}},rY=e=>async t=>{let{response:a,url:r,requestBodyValues:n}=t,s=await rW({response:a,url:r}),i=await rF({text:s,schema:e}),o=aG(a);if(!i.success)throw new e_({message:"Invalid JSON response",cause:i.error,statusCode:a.status,responseHeaders:o,responseBody:s,url:r,requestBodyValues:n});return{responseHeaders:o,value:i.value,rawValue:i.rawValue}};function rK(e){if(null==e)return!0;let t=typeof e;return"string"===t||"number"===t||"boolean"===t||"function"!==t&&"symbol"!==t&&"bigint"!==t&&(Array.isArray(e)?e.every(rK):Object.getPrototypeOf(e)===Object.prototype&&Object.values(e).every(rK))}function rQ(e){let t={};for(let[a,r]of Object.entries(e.config))if("headers"===a){let e=function(e){let t=e;if("function"==typeof e&&(t=e()),t instanceof Promise)throw Error("Promise returned from resolveSync");return t}(r);rK(e)&&(t[a]=e)}else rK(r)&&(t[a]=r);return{modelId:e.modelId,config:t}}function rX(e){return null==e?void 0:e.replace(/\/$/,"")}async function*r0(e){let{tool:t,input:a,options:r}=e,n=t.execute(a,r);if(null!=n&&"function"==typeof n[Symbol.asyncIterator]){let e;for await(let t of n)e=t,yield{type:"preliminary",output:t};yield{type:"final",output:e}}else yield{type:"final",output:await n}}e.s(["DEFAULT_MAX_DOWNLOAD_SIZE",0,0x80000000,"DelayedPromise",0,aj,"DownloadError",0,aq,"asArray",0,function(e){return void 0===e?[]:Array.isArray(e)?e:[e]},"asSchema",0,rR,"cancelResponseBody",0,aL,"combineHeaders",0,aS,"convertBase64ToUint8Array",0,aT,"convertUint8ArrayToBase64",0,aA,"createEventSourceResponseHandler",0,rG,"createIdGenerator",0,aY,"createJsonErrorResponseHandler",0,r$,"createJsonResponseHandler",0,rY,"createProviderExecutedToolFactory",0,rq,"delay",0,aM,"detectMediaType",0,function(e){let{data:t,topLevelType:a}=e;if(void 0===a)return aD({data:t,signatures:[...aR,...aP,...aN,...aZ]});let r=aF[a];if(void 0!==r)return aD({data:t,signatures:r})},"dynamicTool",0,function(e){return(0,eu._)((0,ec._)({},e),{type:"dynamic"})},"executeTool",0,r0,"fetchWithValidatedRedirects",0,aW,"filterNullable",0,function(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return t.filter(e=>null!=e)},"generateId",0,aK,"getFromApi",0,a6,"getRuntimeEnvironmentUserAgent",0,a2,"isAbortError",0,aQ,"isBuffer",0,a3,"isExecutableTool",0,function(e){return null!=e&&"function"==typeof e.execute},"isFullMediaType",0,function(e){let t=e.indexOf("/");if(-1===t)return!1;let a=e.substring(t+1);return a.length>0&&"*"!==a},"isNonNullable",0,function(e){return null!=e},"isProviderReference",0,function(e){return"object"==typeof e&&null!==e&&!(e instanceof Uint8Array)&&!(e instanceof URL)&&!(e instanceof ArrayBuffer)&&!a3(e)&&!("type"in e)},"isUrlSupported",0,function(e){let{mediaType:t,url:a,supportedUrls:r}=e;a=a.toLowerCase();let n=!(t=t.toLowerCase()).includes("/");return Object.entries(r).map(e=>
2{let[t,a]=e,r=t.toLowerCase();return"*"===r||"*/*"===r?{mediaTypePrefix:"",regexes:a}:{mediaTypePrefix:r.replace(/\*/,""),regexes:a}}).filter(e=>{let{mediaTypePrefix:a}=e;return""===a||(n?"".concat(t,"/")===a:t.startsWith(a))}).flatMap(e=>{let{regexes:t}=e;return t}).some(e=>e.test(a))},"jsonSchema",0,rj,"lazySchema",0,rO,"loadOptionalSetting",0,a7,"normalizeHeaders",0,a4,"parseJsonEventStream",0,rL,"postJsonToApi",0,rU,"readResponseWithSizeLimit",0,a$,"resolve",0,rH,"safeParseJSON",0,rF,"safeValidateTypes",0,rZ,"serializeModelOptions",0,rQ,"tool",0,rB,"validateTypes",0,rN,"withUserAgentSuffix",0,a9,"withoutTrailingSlash",0,rX,"zodSchema",0,rP],267850);var r1=e.i(452646),r2=e.i(772738),r4=e.i(296080),r9=Symbol.for("vercel.ai.gateway.error"),r5=class e extends(V=Error,U=r9,V){static isInstance(t){return e.hasMarker(t)}static hasMarker(e){return"object"==typeof e&&null!==e&&r9 in e&&!0===e[r9]}constructor({message:e,statusCode:t=500,cause:a,generationId:r,isRetryable:n=null!=t&&(408===t||409===t||429===t||t>=500)}){super(r?"".concat(e," [").concat(r,"]"):e),this[U]=!0,this.statusCode=t,this.cause=a,this.generationId=r,this.isRetryable=n}},r6="GatewayAuthenticationError",r3=Symbol.for("vercel.ai.gateway.error.".concat(r6)),r7=class e extends(q=r5,B=r3,q){static isInstance(e){return r5.hasMarker(e)&&r3 in e}static createContextualError(t){let{apiKeyProvided:a,oidcTokenProvided:r,statusCode:n=401,cause:s,generationId:i}=t;return new e({message:a?"AI Gateway authentication failed: Invalid API key or token.\n\nCreate a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys\n\nProvide an API key or Vercel access token via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.":r?"AI Gateway authentication failed: Invalid OIDC token.\n\nRun 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.\n\nAlternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys\nor pass a Vercel access token via the 'apiKey' option.":"AI Gateway authentication failed: No authentication provided.\n\nOption 1 - API key:\nCreate an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys\nProvide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.\n\nOption 2 - Vercel access token:\nPass a Vercel personal access token or Vercel app access token via the 'apiKey' option.\n\nOption 3 - OIDC token:\nRun 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.",statusCode:n,cause:s,generationId:i})}constructor({message:e="Authentication failed",statusCode:t=401,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[B]=!0,this.name=r6,this.type="authentication_error"}},r8="GatewayInvalidRequestError",ne=Symbol.for("vercel.ai.gateway.error.".concat(r8)),nt=class extends(J=r5,H=ne,J){static isInstance(e){return r5.hasMarker(e)&&ne in e}constructor({message:e="Invalid request",statusCode:t=400,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[H]=!0,this.name=r8,this.type="invalid_request_error"}},na="GatewayRateLimitError",nr=Symbol.for("vercel.ai.gateway.error.".concat(na)),nn=class extends($=r5,W=nr,$){static isInstance(e){return r5.hasMarker(e)&&nr in e}constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[W]=!0,this.name=na,this.type="rate_limit_exceeded"}},ns="GatewayModelNotFoundError",ni=Symbol.for("vercel.ai.gateway.error.".concat(ns)),no=rO(()=>rP(r2.z.object({modelId:r2.z.string()}))),nl=class extends(Y=r5,G=ni,Y){static isInstance(e){return r5.hasMarker(e)&&ni in e}constructor({message:e="Model not found",statusCode:t=404,modelId:a,cause:r,generationId:n}={}){super({message:e,statusCode:t,cause:r,generationId:n}),this[G]=!0,this.name=ns,this.type="model_not_found",this.modelId=a}},nc="GatewayInternalServerError",nu=Symbol.for("vercel.ai.gateway.error.".concat(nc)),nd=class extends(Q=r5,K=nu,Q){static isInstance(e){return r5.hasMarker(e)&&nu in e}constructor({message:e="Internal server error",statusCode:t=500,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[K]=!0,this.name=nc,this.type="internal_server_error"}},np="GatewayFailedDependencyError",nh=Symbol.for("vercel.ai.gateway.error.".concat(np)),nm=class extends(ee=r5,X=nh,ee){static isInstance(e){return r5.hasMarker(e)&&nh in e}constructor({message:e="Failed dependency",statusCode:t=424,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[X]=!0,this.name=np,this.type="failed_dependency"}},ng="GatewayForbiddenError",nf=Symbol.for("vercel.ai.gateway.error.".concat(ng)),ny=class extends(ea=r5,et=nf,ea){static isInstance(e){return r5.hasMarker(e)&&nf in e}constructor({message:e="Forbidden",statusCode:t=403,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[et]=!0,this.name=ng,this.type="forbidden"}},nv="GatewayResponseError",n_=Symbol.for("vercel.ai.gateway.error.".concat(nv)),nb=class extends(en=r5,er=n_,en){static isInstance(e){return r5.hasMarker(e)&&n_ in e}constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:a,validationError:r,cause:n,generationId:s}={}){super({message:e,statusCode:t,cause:n,generationId:s}),this[er]=!0,this.name=nv,this.type="response_error",this.response=a,this.validationError=r}};async function nz(e){var t;let{response:a,statusCode:r,defaultMessage:n="Gateway request failed",cause:s,authMethod:i}=e,o=await rZ({value:a,schema:nw});if(!o.success){let e="object"==typeof a&&null!==a&&"generationId"in a?a.generationId:void 0;return new nb({message:"Invalid error response format: ".concat(n),statusCode:r,response:a,validationError:o.error,cause:s,generationId:e})}let l=o.value,c=l.error.type,u=l.error.message,d=null!=(t=l.generationId)?t:void 0;switch(c){case"authentication_error":return r7.createContextualError({apiKeyProvided:"api-key"===i,oidcTokenProvided:"oidc"===i,statusCode:r,cause:s,generationId:d});
2case"invalid_request_error":return new nt({message:u,statusCode:r,cause:s,generationId:d});case"rate_limit_exceeded":return new nn({message:u,statusCode:r,cause:s,generationId:d});case"model_not_found":{let e=await rZ({value:l.error.param,schema:no});return new nl({message:u,statusCode:r,modelId:e.success?e.value.modelId:void 0,cause:s,generationId:d})}case"internal_server_error":default:return new nd({message:u,statusCode:r,cause:s,generationId:d});case"failed_dependency":return new nm({message:u,statusCode:r,cause:s,generationId:d});case"forbidden":return new ny({message:u,statusCode:r,cause:s,generationId:d})}}var nw=rO(()=>rP(r2.z.object({error:r2.z.object({message:r2.z.string(),type:r2.z.string().nullish(),param:r2.z.unknown().nullish(),code:r2.z.union([r2.z.string(),r2.z.number()]).nullish()}),generationId:r2.z.string().nullish()}))),nx="GatewayTimeoutError",nk=Symbol.for("vercel.ai.gateway.error.".concat(nx)),nI=class e extends(ei=r5,es=nk,ei){static isInstance(e){return r5.hasMarker(e)&&nk in e}static createTimeoutError(t){let{originalMessage:a,statusCode:r=408,cause:n,generationId:s}=t;return new e({message:"Gateway request timed out: ".concat(a,"\n\n This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js"),statusCode:r,cause:n,generationId:s})}constructor({message:e="Request timed out",statusCode:t=408,cause:a,generationId:r}={}){super({message:e,statusCode:t,cause:a,generationId:r}),this[es]=!0,this.name=nx,this.type="timeout_error"}};function nS(e){if(!(e instanceof Error))return!1;let t=e.code;return"string"==typeof t&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(t)}async function nC(e,t){var a;return r5.isInstance(e)?e:nS(e)?nI.createTimeoutError({originalMessage:e instanceof Error?e.message:"Unknown error",cause:e}):e_.isInstance(e)?e.cause&&nS(e.cause)?nI.createTimeoutError({originalMessage:e.message,cause:e}):await nz({response:function(e){if(void 0!==e.data)return e.data;if(null!=e.responseBody)try{return JSON.parse(e.responseBody)}catch(t){return e.responseBody}return{}}(e),statusCode:null!=(a=e.statusCode)?a:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t}):await nz({response:{},statusCode:500,defaultMessage:e instanceof Error?"Gateway request failed: ".concat(e.message):"Unknown Gateway error",cause:e,authMethod:t})}var nE="ai-gateway-auth-method";async function nT(e){let t=await rZ({value:e[nE],schema:nA});return t.success?t.value:void 0}var nA=rO(()=>rP(r2.z.union([r2.z.literal("api-key"),r2.z.literal("oidc")]))),nM=["embedding","image","language","realtime","reranking","speech","transcription","video"],nO=class{async getAvailableModels(){try{let{value:e}=await a6({url:"".concat(this.config.baseURL,"/config"),headers:this.config.headers?await rH(this.config.headers):void 0,successfulResponseHandler:rY(nj),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e}),fetch:this.config.fetch});return e}catch(e){throw await nC(e)}}async getCredits(){try{let e=new URL(this.config.baseURL),{value:t}=await a6({url:"".concat(e.origin,"/v1/credits"),headers:this.config.headers?await rH(this.config.headers):void 0,successfulResponseHandler:rY(nR),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e}),fetch:this.config.fetch});return t}catch(e){throw await nC(e)}}constructor(e){this.config=e}},nj=rO(()=>rP(r2.z.object({models:r2.z.array(r2.z.object({id:r2.z.string(),name:r2.z.string(),description:r2.z.string().nullish(),pricing:r2.z.object({input:r2.z.string(),output:r2.z.string(),input_cache_read:r2.z.string().nullish(),input_cache_write:r2.z.string().nullish()}).transform(e=>{let{input:t,output:a,input_cache_read:r,input_cache_write:n}=e;return(0,ec._)({input:t,output:a},r?{cachedInputTokens:r}:{},n?{cacheCreationInputTokens:n}:{})}).nullish(),specification:r2.z.object({specificationVersion:r2.z.literal("v4"),provider:r2.z.string(),modelId:r2.z.string()}),modelType:r2.z.string().nullish()})).transform(e=>e.filter(e=>null==e.modelType||nM.includes(e.modelType)))}))),nR=rO(()=>rP(r2.z.object({balance:r2.z.string(),total_used:r2.z.string()}).transform(e=>{let{balance:t,total_used:a}=e;return{balance:t,totalUsed:a}}
2))),nP=class{async getSpendReport(e){try{let t=new URL(this.config.baseURL),a=new URLSearchParams;a.set("start_date",e.startDate),a.set("end_date",e.endDate),e.groupBy&&a.set("group_by",e.groupBy),e.datePart&&a.set("date_part",e.datePart),e.userId&&a.set("user_id",e.userId),e.model&&a.set("model",e.model),e.provider&&a.set("provider",e.provider),e.credentialType&&a.set("credential_type",e.credentialType),e.tags&&e.tags.length>0&&a.set("tags",e.tags.join(","));let{value:r}=await a6({url:"".concat(t.origin,"/v1/report?").concat(a.toString()),headers:this.config.headers?await rH(this.config.headers):void 0,successfulResponseHandler:rY(nN),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e}),fetch:this.config.fetch});return r}catch(e){throw await nC(e)}}constructor(e){this.config=e}},nN=rO(()=>rP(r2.z.object({results:r2.z.array(r2.z.object({day:r2.z.string().optional(),hour:r2.z.string().optional(),user:r2.z.string().optional(),model:r2.z.string().optional(),tag:r2.z.string().optional(),provider:r2.z.string().optional(),credential_type:r2.z.enum(["byok","system"]).optional(),total_cost:r2.z.number(),market_cost:r2.z.number().optional(),input_tokens:r2.z.number().optional(),output_tokens:r2.z.number().optional(),cached_input_tokens:r2.z.number().optional(),cache_creation_input_tokens:r2.z.number().optional(),reasoning_tokens:r2.z.number().optional(),request_count:r2.z.number().optional()}).transform(e=>{let{credential_type:t,total_cost:a,market_cost:r,input_tokens:n,output_tokens:s,cached_input_tokens:i,cache_creation_input_tokens:o,reasoning_tokens:l,request_count:c}=e,u=(0,ep._)(e,["credential_type","total_cost","market_cost","input_tokens","output_tokens","cached_input_tokens","cache_creation_input_tokens","reasoning_tokens","request_count"]);return(0,ec._)((0,eu._)((0,ec._)({},u,void 0!==t?{credentialType:t}:{}),{totalCost:a}),void 0!==r?{marketCost:r}:{},void 0!==n?{inputTokens:n}:{},void 0!==s?{outputTokens:s}:{},void 0!==i?{cachedInputTokens:i}:{},void 0!==o?{cacheCreationInputTokens:o}:{},void 0!==l?{reasoningTokens:l}:{},void 0!==c?{requestCount:c}:{})}))}))),nZ=class{async getGenerationInfo(e){try{let t=new URL(this.config.baseURL),{value:a}=await a6({url:"".concat(t.origin,"/v1/generation?id=").concat(encodeURIComponent(e.id)),headers:this.config.headers?await rH(this.config.headers):void 0,successfulResponseHandler:rY(nD),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e}),fetch:this.config.fetch});return a}catch(e){throw await nC(e)}}constructor(e){this.config=e}},nD=rO(()=>rP(r2.z.object({data:r2.z.object({id:r2.z.string(),total_cost:r2.z.number(),upstream_inference_cost:r2.z.number(),usage:r2.z.number(),created_at:r2.z.string(),model:r2.z.string(),is_byok:r2.z.boolean(),provider_name:r2.z.string(),streamed:r2.z.boolean(),finish_reason:r2.z.string(),latency:r2.z.number(),generation_time:r2.z.number(),native_tokens_prompt:r2.z.number(),native_tokens_completion:r2.z.number(),native_tokens_reasoning:r2.z.number(),native_tokens_cached:r2.z.number(),native_tokens_cache_creation:r2.z.number(),billable_web_search_calls:r2.z.number()}).transform(e=>{let{total_cost:t,upstream_inference_cost:a,created_at:r,is_byok:n,provider_name:s,finish_reason:i,generation_time:o,native_tokens_prompt:l,native_tokens_completion:c,native_tokens_reasoning:u,native_tokens_cached:d,native_tokens_cache_creation:p,billable_web_search_calls:h}=e,m=(0,ep._)(e,["total_cost","upstream_inference_cost","created_at","is_byok","provider_name","finish_reason","generation_time","native_tokens_prompt","native_tokens_completion","native_tokens_reasoning","native_tokens_cached","native_tokens_cache_creation","billable_web_search_calls"]);return(0,eu._)((0,ec._)({},m),{totalCost:t,upstreamInferenceCost:a,createdAt:r,isByok:n,providerName:s,finishReason:i,generationTime:o,promptTokens:l,completionTokens:c,reasoningTokens:u,cachedTokens:d,cacheCreationTokens:p,billableWebSearchCalls:h})})}).transform(e=>{let{data:t}=e;return t}))),nF=class e{static[ak](e){return rQ({modelId:e.modelId,config:e.config})}static[aI](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs(e){let{abortSignal:t}=e,a=(0,ep._)(e,["abortSignal"]);return{args:this.maybeEncodeFileParts(a),warnings:[]}}async doGenerate(e){let{args:t,warnings:a}=await this.getArgs(e),{abortSignal:r}=e,n=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:s,value:i,rawValue:o}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(n,e.headers,this.getModelConfigHeaders(this.modelId,!1),await rH(this.config.o11yHeaders)),body:t,successfulResponseHandler:rY(r2.z.any()),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})}
2,r&&{abortSignal:r}),{fetch:this.config.fetch}));return(0,eu._)((0,ec._)({},i),{request:{body:t},response:{headers:s,body:o},warnings:a})}catch(e){throw await nC(e,await nT(null!=n?n:{}))}}async doStream(e){let{args:t,warnings:a}=await this.getArgs(e),{abortSignal:r}=e,n=this.config.headers?await rH(this.config.headers):void 0;try{let{value:s,responseHeaders:i}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(n,e.headers,this.getModelConfigHeaders(this.modelId,!0),await rH(this.config.o11yHeaders)),body:t,successfulResponseHandler:rG(r2.z.any()),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})},r&&{abortSignal:r}),{fetch:this.config.fetch}));return{stream:s.pipeThrough(new TransformStream({start(e){a.length>0&&e.enqueue({type:"stream-start",warnings:a})},transform(t,a){if(t.success){let r=t.value;("raw"!==r.type||e.includeRawChunks)&&("response-metadata"===r.type&&r.timestamp&&"string"==typeof r.timestamp&&(r.timestamp=new Date(r.timestamp)),a.enqueue(r))}else a.error(t.error)}})),request:{body:t},response:{headers:i}}}catch(e){throw await nC(e,await nT(null!=n?n:{}))}}maybeEncodeFileParts(e){for(let t of e.prompt)if(Array.isArray(t.content)){for(let e of t.content)if("file"===e.type||"reasoning-file"===e.type)e.data=nL(e.data);else if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&(t.data=nL(t.data))}return e}getUrl(){return"".concat(this.config.baseURL,"/language-model")}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"4","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}};function nL(e){if("data"===e.type){let t=e.data;if(t instanceof Uint8Array)return(0,eu._)((0,ec._)({},e),{data:r1.Buffer.from(t).toString("base64")})}return e}var nU=class e{static[ak](e){return rQ({modelId:e.modelId,config:e.config})}static[aI](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed(e){var t,a;let{values:r,headers:n,abortSignal:s,providerOptions:i}=e,o=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:e,value:l,rawValue:c}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(o,null!=n?n:{},this.getModelConfigHeaders(),await rH(this.config.o11yHeaders)),body:(0,ec._)({values:r},i?{providerOptions:i}:{}),successfulResponseHandler:rY(nB),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})},s&&{abortSignal:s}),{fetch:this.config.fetch}));return{embeddings:l.embeddings,usage:null!=(t=l.usage)?t:void 0,providerMetadata:l.providerMetadata,response:{headers:e,body:c},warnings:null!=(a=l.warnings)?a:[]}}catch(e){throw await nC(e,await nT(null!=o?o:{}))}}getUrl(){return"".concat(this.config.baseURL,"/embedding-model")}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}},nV=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("unsupported"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("compatibility"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("deprecated"),setting:r2.z.string(),message:r2.z.string()}),r2.z.object({type:r2.z.literal("other"),message:r2.z.string()})]),nB=rO(()=>rP(r2.z.object({embeddings:r2.z.array(r2.z.array(r2.z.number())),usage:r2.z.object({tokens:r2.z.number()}).nullish(),warnings:r2.z.array(nV).optional(),providerMetadata:r2.z.record(r2.z.string(),r2.z.record(r2.z.string(),r2.z.unknown())).optional()}))),nq=class e{static[ak](e){return rQ({modelId:e.modelId,config:e.config})}static[aI](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doGenerate(e){var t,a,r,n;let{prompt:s,n:i,size:o,aspectRatio:l,seed:c,files:u,mask:d,providerOptions:p,headers:h,abortSignal:m}=e,g=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:e,value:f}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(g,null!=h?h:{},this.getModelConfigHeaders(),await rH(this.config.o11yHeaders)),body:(0,ec._)({prompt:s,n:i},o&&{size:o},l&&{aspectRatio:l},c&&{seed:c},p&&{providerOptions:p},u&&{files:u.map(e=>nH(e))},d&&{mask:nH(d)}),successfulResponseHandler:rY(nG),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})}
2,m&&{abortSignal:m}),{fetch:this.config.fetch}));return(0,ec._)({images:f.images,warnings:null!=(t=f.warnings)?t:[],providerMetadata:f.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:e}},null!=f.usage&&{usage:{inputTokens:null!=(a=f.usage.inputTokens)?a:void 0,outputTokens:null!=(r=f.usage.outputTokens)?r:void 0,totalTokens:null!=(n=f.usage.totalTokens)?n:void 0}})}catch(e){throw await nC(e,await nT(null!=g?g:{}))}}getUrl(){return"".concat(this.config.baseURL,"/image-model")}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}};function nH(e){return"file"===e.type&&e.data instanceof Uint8Array?(0,eu._)((0,ec._)({},e),{data:aA(e.data)}):e}var nJ=r2.z.object({images:r2.z.array(r2.z.unknown()).optional()}).catchall(r2.z.unknown()),nW=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("unsupported"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("compatibility"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("deprecated"),setting:r2.z.string(),message:r2.z.string()}),r2.z.object({type:r2.z.literal("other"),message:r2.z.string()})]),n$=r2.z.object({inputTokens:r2.z.number().nullish(),outputTokens:r2.z.number().nullish(),totalTokens:r2.z.number().nullish()}),nG=r2.z.object({images:r2.z.array(r2.z.string()),warnings:r2.z.array(nW).optional(),providerMetadata:r2.z.record(r2.z.string(),nJ).optional(),usage:n$.optional()}),nY=class{get provider(){return this.config.provider}async doGenerate(e){var t;let{prompt:a,n:r,aspectRatio:n,resolution:s,duration:i,fps:o,seed:l,generateAudio:c,image:u,frameImages:d,inputReferences:p,providerOptions:h,headers:m,abortSignal:g}=e,f=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:e,value:y}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(f,null!=m?m:{},this.getModelConfigHeaders(),await rH(this.config.o11yHeaders),{accept:"text/event-stream"}),body:(0,ec._)({prompt:a,n:r},n&&{aspectRatio:n},s&&{resolution:s},i&&{duration:i},o&&{fps:o},l&&{seed:l},void 0!==c&&{generateAudio:c},h&&{providerOptions:h},u&&{image:nK(u)},d&&{frameImages:d.map(e=>(0,eu._)((0,ec._)({},e),{image:nK(e.image)}))},p&&{inputReferences:p.map(e=>nK(e))}),successfulResponseHandler:async e=>{let{response:t,url:a,requestBodyValues:r}=e;if(null==t.body)throw new e_({message:"SSE response body is empty",url:a,requestBodyValues:r,statusCode:t.status});let n=rL({stream:t.body,schema:n1}).getReader(),{done:s,value:i}=await n.read();if(n.releaseLock(),s||!i)throw new e_({message:"SSE stream ended without a data event",url:a,requestBodyValues:r,statusCode:t.status});if(!i.success)throw new e_({message:"Failed to parse video SSE event",cause:i.error,url:a,requestBodyValues:r,statusCode:t.status});let o=i.value;if("error"===o.type)throw new e_({message:o.message,statusCode:o.statusCode,url:a,requestBodyValues:r,responseHeaders:Object.fromEntries([...t.headers]),responseBody:JSON.stringify(o),data:{error:{message:o.message,type:o.errorType,param:o.param}}});return{value:{videos:o.videos,warnings:o.warnings,providerMetadata:o.providerMetadata},responseHeaders:Object.fromEntries([...t.headers])}},failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})},g&&{abortSignal:g}),{fetch:this.config.fetch}));return{videos:y.videos,warnings:null!=(t=y.warnings)?t:[],providerMetadata:y.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:e}}}catch(e){throw await nC(e,await nT(null!=f?f:{}))}}getUrl(){return"".concat(this.config.baseURL,"/video-model")}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}};function nK(e){return"file"===e.type&&e.data instanceof Uint8Array?(0,eu._)((0,ec._)({},e),{data:aA(e.data)}):e}var nQ=r2.z.object({videos:r2.z.array(r2.z.unknown()).optional()}).catchall(r2.z.unknown()),nX=r2.z.union([r2.z.object({type:r2.z.literal("url"),url:r2.z.string(),mediaType:r2.z.string()}),r2.z.object({type:r2.z.literal("base64"),data:r2.z.string(),mediaType:r2.z.string()})]),n0=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("unsupported"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("compatibility"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("deprecated"),setting:r2.z.string(),message:r2.z.string()}),r2.z.object({type:r2.z.literal("other"),message:r2.z.string()})]),n1=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("result"),videos:r2.z.array(nX),warnings:r2.z.array(n0).optional(),providerMetadata:r2.z.record(r2.z.string(),nQ).optional()}),r2.z.object({type:r2.z.literal("error"),message:r2.z.string(),errorType:r2.z.string(),statusCode:r2.z.number(),param:r2.z.unknown().nullable()})]),n2=class{get provider(){return this.config.provider}async doRerank(e){var t;let{documents:a,query:r,topN:n,headers:s,abortSignal:i,providerOptions:o}=e,l=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:e,value:c,rawValue:u}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(l,null!=s?s:{},this.getModelConfigHeaders(),await rH(this.config.o11yHeaders)),body:(0,ec._)({documents:a,query:r},null!=n?{topN:n}:{},o?{providerOptions:o}:{}),successfulResponseHandler:rY(n9),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})},i&&{abortSignal:i}),{fetch:this.config.fetch}));return{ranking:c.ranking,providerMetadata:c.providerMetadata,response:{headers:e,body:u},warnings:null!=(t=c.warnings)?t:[]}}catch(e){throw await nC(e,await nT(null!=l?l:{}))}}getUrl(){return"".concat(this.config.baseURL,"/reranking-model")}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}},n4=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("unsupported"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("compatibility"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("deprecated"),setting:r2.z.string(),message:r2.z.string()}),r2.z.object({type:r2.z.literal("other"),message:r2.z.string()})]),n9=rO(()=>rP(r2.z.object({ranking:r2.z.array(r2.z.object({index:r2.z.number(),relevanceScore:r2.z.number()})),warnings:r2.z.array(n4).optional(),providerMetadata:r2.z.record(r2.z.string(),r2.z.record(r2.z.string(),r2.z.unknown())).optional()}))),n5=class{get provider(){return this.config.provider}async doGenerate(e){var t;let{text:a,voice:r,outputFormat:n,instructions:s,speed:i,language:o,providerOptions:l,headers:c,abort
2Signal:u}=e,d=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:e,value:p,rawValue:h}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(d,null!=c?c:{},this.getModelConfigHeaders(),await rH(this.config.o11yHeaders)),body:(0,ec._)({text:a},r&&{voice:r},n&&{outputFormat:n},s&&{instructions:s},null!=i&&{speed:i},o&&{language:o},l&&{providerOptions:l}),successfulResponseHandler:rY(n7),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})},u&&{abortSignal:u}),{fetch:this.config.fetch}));return{audio:p.audio,warnings:null!=(t=p.warnings)?t:[],providerMetadata:p.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:e,body:h}}}catch(e){throw await nC(e,await nT(null!=d?d:{}))}}getUrl(){return"".concat(this.config.baseURL,"/speech-model")}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}},n6=r2.z.object({}).catchall(r2.z.unknown()),n3=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("unsupported"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("compatibility"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("deprecated"),setting:r2.z.string(),message:r2.z.string()}),r2.z.object({type:r2.z.literal("other"),message:r2.z.string()})]),n7=r2.z.object({audio:r2.z.string(),warnings:r2.z.array(n3).optional(),providerMetadata:r2.z.record(r2.z.string(),n6).optional()}),n8=class{get provider(){return this.config.provider}async doGenerate(e){var t,a,r,n;let{audio:s,mediaType:i,providerOptions:o,headers:l,abortSignal:c}=e,u=this.config.headers?await rH(this.config.headers):void 0;try{let{responseHeaders:e,value:d,rawValue:p}=await rU((0,eu._)((0,ec._)({url:this.getUrl(),headers:aS(u,null!=l?l:{},this.getModelConfigHeaders(),await rH(this.config.o11yHeaders)),body:(0,ec._)({audio:s instanceof Uint8Array?aA(s):s,mediaType:i},o&&{providerOptions:o}),successfulResponseHandler:rY(sa),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e})},c&&{abortSignal:c}),{fetch:this.config.fetch}));return{text:d.text,segments:null!=(t=d.segments)?t:[],language:null!=(a=d.language)?a:void 0,durationInSeconds:null!=(r=d.durationInSeconds)?r:void 0,warnings:null!=(n=d.warnings)?n:[],providerMetadata:d.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:e,body:p}}}catch(e){throw await nC(e,await nT(null!=u?u:{}))}}getUrl(){return"".concat(this.config.baseURL,"/transcription-model")}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}},se=r2.z.object({}).catchall(r2.z.unknown()),st=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("unsupported"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("compatibility"),feature:r2.z.string(),details:r2.z.string().optional()}),r2.z.object({type:r2.z.literal("deprecated"),setting:r2.z.string(),message:r2.z.string()}),r2.z.object({type:r2.z.literal("other"),message:r2.z.string()})]),sa=r2.z.object({text:r2.z.string(),segments:r2.z.array(r2.z.object({text:r2.z.string(),startSecond:r2.z.number(),endSecond:r2.z.number()})).optional(),language:r2.z.string().nullish(),durationInSeconds:r2.z.number().nullish(),warnings:r2.z.array(st).optional(),providerMetadata:r2.z.record(r2.z.string(),se).optional()}),sr=class{async doCreateClientSecret(e){var t,a;let r,n=await this.config.createClientSecret((0,ec._)({modelId:this.modelId},(null==e?void 0:e.expiresAfterSeconds)!=null&&{expiresAfterSeconds:e.expiresAfterSeconds}));return(0,ec._)({token:n.token,url:(t=this.config.baseURL,a=this.modelId,(r=new URL("".concat(t.replace(/^http/,"ws"),"/realtime-model"))).searchParams.set("ai-model-id",a),r.toString())},null!=n.expiresAt&&{expiresAt:n.expiresAt})}getWebSocketConfig(e){var t,a;let r;return{url:e.url,protocols:(t=e.token,a={teamIdOrSlug:this.config.teamIdOrSlug},r=["ai-gateway-realtime.v1","".concat("ai-gateway-auth.").concat(t)],(null==a?void 0:a.teamIdOrSlug)&&r.push("".concat("ai-gateway-team.").concat(function(e){let t=new TextEncoder().encode(e),a="";for(let e of t)a+=String.fromCharCode(e);return btoa(a).replace(/\+/g,"-").replace(/\//g,"_").replace(RegExp("=+$","u"),"")}(a.teamIdOrSlug))),r)}}parseServerEvent(e){return e}serializeClientEvent(e){return e}buildSessionConfig(e){return e}constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.provider=t.provider,this.config=t}},sn=rq({id:"gateway.exa_search",inputSchema:rO(()=>rP(r2.z.object({query:r2.z.string().describe("Natural-language web search query. This is required."),type:r2.z.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:r2.z.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:r2.z.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:r2.z.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:r2.z.array(r2.z.string()).optional().describe("Only return results from these domains."),exclude_domains:r2.z.array(r2.z.string()).optional().describe("Exclude results from these domains."),start_published_date:r2.z.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:r2.z.string().optional().describe("Only return links published before this ISO 8601 date."),contents:r2.z.object({text:r2.z.union([r2.z.boolean(),r2.z.object({max_characters:r2.z.number().optional(),include_html_tags:r2.z.boolean().optional(),verbosity:r2.z.enum(["compact","standard","full"]).optional(),include_sections:r2.z.array(r2.z.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:r2.z.array(r2.z.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:r2.z.union([r2.z.boolean(),r2.z.object({query:r2.z.string().optional(),max_characters:r2.z.number().optional()})]).optional(),max_age_hours:r2.z.number().optional(),livecrawl_timeout:r2.z.number().optional(),subpages:r2.z.number().optional(),subpage_target:r2.z.union([r2.z.string(),r2.z.array(r2.z.string())]).optional(),extras:r2.z.object({links:r2.z.number().optional(),image_links:r2.z.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}
2))),outputSchema:rO(()=>rP(r2.z.union([r2.z.object({requestId:r2.z.string(),searchType:r2.z.string().optional(),resolvedSearchType:r2.z.string().optional(),results:r2.z.array(r2.z.object({title:r2.z.string(),url:r2.z.string(),id:r2.z.string(),publishedDate:r2.z.string().nullable().optional(),author:r2.z.string().nullable().optional(),image:r2.z.string().nullable().optional(),favicon:r2.z.string().nullable().optional(),text:r2.z.string().optional(),highlights:r2.z.array(r2.z.string()).optional(),highlightScores:r2.z.array(r2.z.number()).optional(),summary:r2.z.string().optional(),subpages:r2.z.array(r2.z.any()).optional(),extras:r2.z.object({links:r2.z.array(r2.z.string()).optional(),imageLinks:r2.z.array(r2.z.string()).optional()}).optional()})),costDollars:r2.z.object({total:r2.z.number().optional(),search:r2.z.record(r2.z.number()).optional()}).optional()}),r2.z.object({error:r2.z.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:r2.z.number().optional(),message:r2.z.string()})])))}),ss=rq({id:"gateway.parallel_search",inputSchema:rO(()=>rP(r2.z.object({objective:r2.z.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:r2.z.array(r2.z.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:r2.z.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:r2.z.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:r2.z.object({include_domains:r2.z.array(r2.z.string()).optional().describe("Limit results to these domains. Use plain domain names only â e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:r2.z.array(r2.z.string()).optional().describe("Exclude results from these domains. Use plain domain names only â e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:r2.z.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:r2.z.object({max_chars_per_result:r2.z.number().optional().describe("Maximum characters per result."),max_chars_total:r2.z.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:r2.z.object({max_age_seconds:r2.z.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}
2))),outputSchema:rO(()=>rP(r2.z.union([r2.z.object({searchId:r2.z.string(),results:r2.z.array(r2.z.object({url:r2.z.string(),title:r2.z.string(),excerpt:r2.z.string(),publishDate:r2.z.string().nullable().optional(),relevanceScore:r2.z.number().optional()}))}),r2.z.object({error:r2.z.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:r2.z.number().optional(),message:r2.z.string()})])))}),si=rq({id:"gateway.perplexity_search",inputSchema:rO(()=>rP(r2.z.object({query:r2.z.union([r2.z.string(),r2.z.array(r2.z.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:r2.z.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:r2.z.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:r2.z.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:r2.z.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:r2.z.array(r2.z.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:r2.z.array(r2.z.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:r2.z.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:r2.z.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:r2.z.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:r2.z.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:r2.z.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}
2))),outputSchema:rO(()=>rP(r2.z.union([r2.z.object({results:r2.z.array(r2.z.object({title:r2.z.string(),url:r2.z.string(),snippet:r2.z.string(),date:r2.z.string().optional(),lastUpdated:r2.z.string().optional()})),id:r2.z.string()}),r2.z.object({error:r2.z.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:r2.z.number().optional(),message:r2.z.string()})])))}),so={exaSearch:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return sn(e)},parallelSearch:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ss(e)},perplexitySearch:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return si(e)}};async function sl(){var e;return null==(e=(0,r4.getContext)().headers)?void 0:e["x-vercel-id"]}var sc=r2.z.object({token:r2.z.string(),expiresAt:r2.z.number().nullish()});async function su(e){let t=a7({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await (0,r4.getVercelOidcToken)(),authMethod:"oidc"}}!function(){var e,t;let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=null,n=null,s=null!=(e=a.metadataCacheRefreshMillis)?e:3e5,i=0,o=null!=(t=rX(a.baseURL))?t:"https://ai-gateway.vercel.sh/v4/ai",l=e=>a9((0,ec._)({Authorization:"Bearer ".concat(e.token),"ai-gateway-protocol-version":"0.0.1",[nE]:e.authMethod},null!=a.teamIdOrSlug?{"x-vercel-ai-gateway-team":a.teamIdOrSlug}:{},a.headers),"ai-sdk/gateway/".concat("4.0.7")),c=async()=>{try{return l(await su(a))}catch(e){throw r7.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},u=async()=>{try{return await su(a)}catch(e){throw r7.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},d=async e=>{if(void 0!==globalThis.window)throw Error("AI Gateway realtime client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() from your server and pass the returned token to the client.");let t=l(await u()),r=new URL("/v1/realtime/client-secrets",o).toString();try{let{value:n}=await rU({url:r,headers:t,body:(0,ec._)({model:e.modelId},null!=e.expiresAfterSeconds&&{expiresIn:e.expiresAfterSeconds}),successfulResponseHandler:rY(sc),failedResponseHandler:r$({errorSchema:r2.z.any(),errorToMessage:e=>e}),fetch:a.fetch});return(0,ec._)({token:n.token},null!=n.expiresAt&&{expiresAt:n.expiresAt})}catch(e){throw await nC(e,await nT(t))}},p=()=>{let e=a7({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),t=a7({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),a=a7({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),r=a7({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let n=await sl();return(0,ec._)({},e&&{"ai-o11y-deployment-id":e},t&&{"ai-o11y-environment":t},a&&{"ai-o11y-region":a},n&&{"ai-o11y-request-id":n},r&&{"ai-o11y-project-id":r})}},h=e=>new nF(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()}),m=async()=>{var e,t,l;let u=null!=(l=null==(t=null==(e=a._internal)?void 0:e.currentDate)?void 0:t.call(e).getTime())?l:Date.now();return(!r||u-i>s)&&(i=u,r=new nO({baseURL:o,headers:c,fetch:a.fetch}).getAvailableModels().then(e=>(n=e,e)).catch(async e=>{throw await nC(e,await nT(await c()))})),n?Promise.resolve(n):r},g=async()=>new nO({baseURL:o,headers:c,fetch:a.fetch}).getCredits().catch(async e=>{throw await nC(e,await nT(await c()))}),f=async e=>new nP({baseURL:o,headers:c,fetch:a.fetch}).getSpendReport(e).catch(async e=>{throw await nC(e,await nT(await c()))}),y=async e=>new nZ({baseURL:o,headers:c,fetch:a.fetch}).getGenerationInfo(e).catch(async e=>{throw await nC(e,await nT(await c()))}),v=function(e){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return h(e)};v.specificationVersion="v4",v.getAvailableModels=m,v.getCredits=g,v.getSpendReport=f,v.getGenerationInfo=y,v.imageModel=e=>new nq(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()}),v.languageModel=h;let _=e=>new nU(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()});v.embeddingModel=_,v.textEmbeddingModel=_,v.videoModel=e=>new nY(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()});let b=e=>new n2(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()});v.rerankingModel=b,v.reranking=b;let z=e=>new n5(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()});
2v.speechModel=z,v.speech=z;let w=e=>new n8(e,{provider:"gateway",baseURL:o,headers:c,fetch:a.fetch,o11yHeaders:p()});v.transcriptionModel=w,v.transcription=w;let x=e=>new sr(e,{provider:"gateway.realtime",baseURL:o,teamIdOrSlug:a.teamIdOrSlug,createClientSecret:d});v.experimental_realtime=Object.assign(e=>x(e),{getToken:async e=>{let{model:t}=e,a=(0,ep._)(e,["model"]),r=x(t),n=await r.doCreateClientSecret(a);return(0,ec._)({token:n.token,url:n.url},null!=n.expiresAt&&{expiresAt:n.expiresAt})}}),v.chat=v.languageModel,v.embedding=v.embeddingModel,v.image=v.imageModel,v.video=v.videoModel,v.tools=so}();var sd=Object.defineProperty,sp=(Symbol.for("vercel.ai.error.".concat("AI_InvalidArgumentError")),Symbol.for("vercel.ai.error.".concat("AI_InvalidStreamPartError")),Symbol.for("vercel.ai.error.".concat("AI_InvalidToolApprovalError")),Symbol.for("vercel.ai.error.".concat("AI_InvalidToolApprovalSignatureError")),Symbol.for("vercel.ai.error.".concat("AI_InvalidToolInputError")),Symbol.for("vercel.ai.error.".concat("AI_ToolCallNotFoundForApprovalError")),Symbol.for("vercel.ai.error.".concat("AI_MissingToolResultsError")),Symbol.for("vercel.ai.error.".concat("AI_NoImageGeneratedError")),"AI_NoObjectGeneratedError"),sh="vercel.ai.error.".concat(sp),sm=Symbol.for(sh),sg=class extends eg{static isInstance(e){return eg.hasMarker(e,sh)}constructor({message:e="No object generated.",cause:t,text:a,response:r,usage:n,finishReason:s}){super({name:sp,message:e,cause:t}),this[eo]=!0,this.text=a,this.response=r,this.usage=n,this.finishReason=s}};eo=sm,Symbol.for("vercel.ai.error.".concat("AI_NoOutputGeneratedError")),Symbol.for("vercel.ai.error.".concat("AI_NoSpeechGeneratedError")),Symbol.for("vercel.ai.error.".concat("AI_NoTranscriptGeneratedError")),Symbol.for("vercel.ai.error.".concat("AI_NoVideoGeneratedError")),Symbol.for("vercel.ai.error.".concat("AI_NoSuchToolError")),Symbol.for("vercel.ai.error.".concat("AI_ToolCallRepairError"));var sf="AI_UIMessageStreamError",sy="vercel.ai.error.".concat(sf),sv=Symbol.for(sy),s_=class extends eg{static isInstance(e){return eg.hasMarker(e,sy)}constructor({chunkType:e,chunkId:t,message:a}){super({name:sf,message:a}),this[el]=!0,this.chunkType=e,this.chunkId=t}};el=sv,Symbol.for("vercel.ai.error.".concat("AI_InvalidDataContentError")),Symbol.for("vercel.ai.error.".concat("AI_InvalidMessageRoleError")),Symbol.for("vercel.ai.error.".concat("AI_MessageConversionError")),Symbol.for("vercel.ai.error.".concat("AI_RetryError"));var sb="7.0.9",sz=async e=>{var t;let{url:a,maxBytes:r,abortSignal:n}=e,s=a.toString();try{let e=a9({},"ai-sdk/".concat(sb),a2()),a=await aW({url:s,headers:e,abortSignal:n});if(!a.ok)throw await aL(a),new aq({url:s,statusCode:a.status,statusText:a.statusText});return{data:await a$({response:a,url:s,maxBytes:null!=r?r:0x80000000}),mediaType:null!=(t=a.headers.get("content-type"))?t:void 0}}catch(e){if(aq.isInstance(e))throw e;throw new aq({url:s,cause:e})}},sw=r2.z.lazy(()=>r2.z.union([r2.z.null(),r2.z.string(),r2.z.number(),r2.z.boolean(),r2.z.record(r2.z.string(),sw.optional()),r2.z.array(sw)])),sx=r2.z.record(r2.z.string(),r2.z.record(r2.z.string(),sw.optional())),sk=r2.z.union([r2.z.string(),r2.z.instanceof(Uint8Array),r2.z.instanceof(ArrayBuffer),r2.z.custom(a3,{message:"Must be a Buffer"})]),sI=r2.z.record(r2.z.string(),r2.z.string()),sS=r2.z.object({type:r2.z.literal("text"),text:r2.z.string(),providerOptions:sx.optional()}),sC=r2.z.object({type:r2.z.literal("image"),image:r2.z.union([sk,r2.z.instanceof(URL),sI]),mediaType:r2.z.string().optional(),providerOptions:sx.optional()}),sE=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("data"),data:sk}),r2.z.object({type:r2.z.literal("url"),url:r2.z.instanceof(URL)}),r2.z.object({type:r2.z.literal("reference"),reference:sI}),r2.z.object({type:r2.z.literal("text"),text:r2.z.string()})]),sT=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("data"),data:sk}),r2.z.object({type:r2.z.literal("url"),url:r2.z.instanceof(URL)})]),sA=r2.z.object({type:r2.z.literal("file"),data:r2.z.union([sE,sk,r2.z.instanceof(URL),sI]),filename:r2.z.string().optional(),mediaType:r2.z.string(),providerOptions:sx.optional()}),sM=r2.z.object({type:r2.z.literal("reasoning"),text:r2.z.string(),providerOptions:sx.optional()}),sO=r2.z.object({type:r2.z.literal("custom"),kind:r2.z.string().transform(e=>e),providerOptions:sx.optional()}),sj=r2.z.object({type:r2.z.literal("reasoning-file"),data:r2.z.union([sT,sk,r2.z.instanceof(URL)]),mediaType:r2.z.string(),providerOptions:sx.optional()}),sR=r2.z.object({type:r2.z.literal("tool-call"),toolCallId:r2.z.string(),toolName:r2.z.string(),input
2:r2.z.unknown(),providerOptions:sx.optional(),providerExecuted:r2.z.boolean().optional()}),sP=r2.z.discriminatedUnion("type",[r2.z.object({type:r2.z.literal("text"),value:r2.z.string(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("json"),value:sw,providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("execution-denied"),reason:r2.z.string().optional(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("error-text"),value:r2.z.string(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("error-json"),value:sw,providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("content"),value:r2.z.array(r2.z.union([r2.z.object({type:r2.z.literal("text"),text:r2.z.string(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("file"),data:sE,mediaType:r2.z.string(),filename:r2.z.string().optional(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("file-data"),data:r2.z.string(),mediaType:r2.z.string(),filename:r2.z.string().optional(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("file-url"),url:r2.z.string(),mediaType:r2.z.string().optional(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("file-id"),fileId:r2.z.union([r2.z.string(),r2.z.record(r2.z.string(),r2.z.string())]),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("file-reference"),providerReference:r2.z.record(r2.z.string(),r2.z.string()),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("image-data"),data:r2.z.string(),mediaType:r2.z.string(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("image-url"),url:r2.z.string(),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("image-file-id"),fileId:r2.z.union([r2.z.string(),r2.z.record(r2.z.string(),r2.z.string())]),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("image-file-reference"),providerReference:r2.z.record(r2.z.string(),r2.z.string()),providerOptions:sx.optional()}),r2.z.object({type:r2.z.literal("custom"),providerOptions:sx.optional()})]))})]),sN=r2.z.object({type:r2.z.literal("tool-result"),toolCallId:r2.z.string(),toolName:r2.z.string(),output:sP,providerOptions:sx.optional()}),sZ=r2.z.object({type:r2.z.literal("tool-approval-request"),approvalId:r2.z.string(),toolCallId:r2.z.string()}),sD=r2.z.object({type:r2.z.literal("tool-approval-response"),approvalId:r2.z.string(),approved:r2.z.boolean(),reason:r2.z.string().optional()}),sF=r2.z.object({role:r2.z.literal("system"),content:r2.z.string(),providerOptions:sx.optional()}),sL=r2.z.object({role:r2.z.literal("user"),content:r2.z.union([r2.z.string(),r2.z.array(r2.z.union([sS,sC,sA]))]),providerOptions:sx.optional()}),sU=r2.z.object({role:r2.z.literal("assistant"),content:r2.z.union([r2.z.string(),r2.z.array(r2.z.union([sS,sO,sA,sM,sj,sR,sN,sZ]))]),providerOptions:sx.optional()}),sV=r2.z.object({role:r2.z.literal("tool"),content:r2.z.array(r2.z.union([sN,sD])),providerOptions:sx.optional()});r2.z.union([sF,sL,sU,sV]);var sB={},sq={array:()=>sG,choice:()=>sY,json:()=>sK,object:()=>s$,text:()=>sW};for(var sH in sq)sd(sB,sH,{get:sq[sH],enumerable:!0});async function sJ(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await rF({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await rF({text:function(e){let t=["ROOT"],a=-1,r=null,n=0;function s(e,n,s){switch(e){case'"':a=n,t.pop(),t.push(s),t.push("INSIDE_STRING");break;case"f":case"t":case"n":a=n,r=n,t.pop(),t.push(s),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=n,t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"{":a=n,t.pop(),t.push(s),t.push("INSIDE_OBJECT_START");break;case"[":a=n,t.pop(),t.push(s),t.push("INSIDE_ARRAY_START")}}function i(e,r){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":a=r,t.pop()}}function o(e,r){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=r,t.pop()}}for(let l=0;l<e.length;l++){let c=e[l];switch(t[t.length-1]){case"ROOT":s(c,l,"FINISH");break;case"INSIDE_OBJECT_START":switch(c){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":a=l,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===c&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===c&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===c&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":s(c,l,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":i(c,l);break;case"INSIDE_STRING":switch(c){case'"':t.pop(),a=l;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:a=l}break;case"INSIDE_ARRAY_START":"]"===c?(a=l,t.pop()):(a=l,s(c,l,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(c){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=l,t.pop();break;default:a=l}break;case"INSIDE_ARRAY_AFTER_COMMA":s(c,l,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),"u"===c?(n=0,t.push("INSIDE_STRING_UNICODE_ESCAPE")):a=l;break;case"INSIDE_STRING_UNICODE_ESCAPE":(c>="0"&&c<="9"||c>="A"&&c<="F"||c>="a"&&c<="f")&&4==++n&&(t.pop(),a=l);break;case"INSIDE_NUMBER":switch(c){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=l;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&o(c,l),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&i(c,l);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&i(c,l);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&o(c,l);break;default:t.pop()}break;case"INSIDE_LITERAL":{let n=e.substring(r,l+1);"false".startsWith(n)||"true".startsWith(n)||"null".startsWith(n)?a=l:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?i(c,l):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&o(c,l))}}}let l=e.slice(0,a+1);for(let a=t.length-1;a>=0;a--)switch(t[a]){case"INSIDE_STRING":l+='"';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":l+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":l+="]";break;case"INSIDE_LITERAL":{let t=e.substring(r,e.length);"true".startsWith(t)?l+="true".slice(t.length):"false".startsWith(t)?l+="false".slice(t.length):"null".startsWith(t)&&(l+="null".slice(t.length))}}return l}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var sW=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput(e){let{text:t}=e;return t},async parsePartialOutput(e){let{text:t}=e;return{partial:t}},createElementStreamTransform(){}}),s$=e=>{let{schema:t,name:a,description:r}=e,n=rR(t);return{name:"object",responseFormat:rH(n.jsonSchema).then(e=>(0,ec._)({type:"json",schema:e},null!=a&&{name:a},null!=r&&{description:r})),async parseCompleteOutput(e,t){let{text:a}=e,r=await rF({text:a});if(!r.success)throw new sg({message:"No object generated: could not parse the response.",cause:r.error,text:a,response:t.response,usage:t.usage,finishReason:t.finishReason});let s=await rZ({value:r.value,schema:n});if(!s.success)throw new sg({message:"No object generated: response did not match sc
2hema.",cause:s.error,text:a,response:t.response,usage:t.usage,finishReason:t.finishReason});return s.value},async parsePartialOutput(e){let{text:t}=e,a=await sJ(t);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){}}},sG=e=>{let{element:t,name:a,description:r}=e,n=rR(t);return{name:"array",responseFormat:rH(n.jsonSchema).then(e=>{let{$schema:t}=e,n=(0,ep._)(e,["$schema"]);return(0,ec._)({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:n}},required:["elements"],additionalProperties:!1}},null!=a&&{name:a},null!=r&&{description:r})}),async parseCompleteOutput(e,t){let{text:a}=e,r=await rF({text:a});if(!r.success)throw new sg({message:"No object generated: could not parse the response.",cause:r.error,text:a,response:t.response,usage:t.usage,finishReason:t.finishReason});let s=r.value;if(null==s||"object"!=typeof s||!("elements"in s)||!Array.isArray(s.elements))throw new sg({message:"No object generated: response did not match schema.",cause:new tn({value:s,cause:"response must be an object with an elements array"}),text:a,response:t.response,usage:t.usage,finishReason:t.finishReason});let i=[];for(let e of s.elements){let r=await rZ({value:e,schema:n});if(!r.success)throw new sg({message:"No object generated: response did not match schema.",cause:r.error,text:a,response:t.response,usage:t.usage,finishReason:t.finishReason});i.push(r.value)}return i},async parsePartialOutput(e){let{text:t}=e,a=await sJ(t);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=a.value;if(null==e||"object"!=typeof e||!("elements"in e)||!Array.isArray(e.elements))return;let t="repaired-parse"===a.state&&e.elements.length>0?e.elements.slice(0,-1):e.elements,r=[];for(let e of t){let t=await rZ({value:e,schema:n});t.success&&r.push(t.value)}return{partial:r}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform(t,a){let{partialOutput:r}=t;if(null!=r)for(;e<r.length;e++)a.enqueue(r[e])}})}}},sY=e=>{let{options:t,name:a,description:r}=e;return{name:"choice",responseFormat:Promise.resolve((0,ec._)({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:t}},required:["result"],additionalProperties:!1}},null!=a&&{name:a},null!=r&&{description:r})),async parseCompleteOutput(e,a){let{text:r}=e,n=await rF({text:r});if(!n.success)throw new sg({message:"No object generated: could not parse the response.",cause:n.error,text:r,response:a.response,usage:a.usage,finishReason:a.finishReason});let s=n.value;if(null==s||"object"!=typeof s||!("result"in s)||"string"!=typeof s.result||!t.includes(s.result))throw new sg({message:"No object generated: response did not match schema.",cause:new tn({value:s,cause:"response must be an object that contains a choice value."}),text:r,response:a.response,usage:a.usage,finishReason:a.finishReason});return s.result},async parsePartialOutput(e){let{text:a}=e,r=await sJ(a);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=r.value;if(null==e||"object"!=typeof e||!("result"in e)||"string"!=typeof e.result)return;let a=t.filter(t=>t.startsWith(e.result));if("successful-parse"===r.state)return a.includes(e.result)?{partial:e.result}:void 0;return 1===a.length?{partial:a[0]}:void 0}}},createElementStreamTransform(){}}},sK=function(){let{name:e,description:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{name:"json",responseFormat:Promise.resolve((0,ec._)({type:"json"},null!=e&&{name:e},null!=t&&{description:t})),async parseCompleteOutput(e,t){let{text:a}=e,r=await rF({text:a});if(!r.success)throw new sg({message:"No object generated: could not parse the response.",cause:r.error,text:a,response:t.response,usage:t.usage,finishReason:t.finishReason});return r.value},async parsePartialOutput(e){let{text:t}=e,a=await sJ(t);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===a.value?void 0:{partial:a.value}}},createElementStreamTransform(){}}};new TextEncoder,aY({prefix:"aitxt",size:24}),aY({prefix:"call",size:24}),TransformStream;var sQ=r2.z.record(r2.z.string(),sw.optional()),sX=rO(()=>rP(r2.z.union([r2.z.strictObject({type:r2.z.literal("text-start"),id:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("text-delta"),id:r2.z.string(),delta:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("text-end"),id:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("error"),errorText:r2.z.string()}),r2.z.strictObject({type:r2.z.literal("tool-input-start"),toolCallId:r2.z.string(),toolName:r2.z.string(),providerExecuted:r2.z.boolean().optional(),providerMetadata:sx.optional(),toolMetadata:sQ.optional(),dynamic:r2.z.boolean().optional(),title:r2.z.string().optional()}),r2.z.strictObject({type:r2.z.literal("tool-input-delta"),toolCallId:r2.z.string(),inputTextDelta:r2.z.string()}),r2.z.strictObject({type:r2.z.literal("tool-input-available"),toolCallId:r2.z.string(),toolName:r2.z.string(),input
2:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),providerMetadata:sx.optional(),toolMetadata:sQ.optional(),dynamic:r2.z.boolean().optional(),title:r2.z.string().optional()}),r2.z.strictObject({type:r2.z.literal("tool-input-error"),toolCallId:r2.z.string(),toolName:r2.z.string(),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),providerMetadata:sx.optional(),toolMetadata:sQ.optional(),dynamic:r2.z.boolean().optional(),errorText:r2.z.string(),title:r2.z.string().optional()}),r2.z.strictObject({type:r2.z.literal("tool-approval-request"),approvalId:r2.z.string(),toolCallId:r2.z.string(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()}),r2.z.strictObject({type:r2.z.literal("tool-approval-response"),approvalId:r2.z.string(),approved:r2.z.boolean(),reason:r2.z.string().optional(),providerExecuted:r2.z.boolean().optional(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("tool-output-available"),toolCallId:r2.z.string(),output:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),providerMetadata:sx.optional(),toolMetadata:sQ.optional(),dynamic:r2.z.boolean().optional(),preliminary:r2.z.boolean().optional()}),r2.z.strictObject({type:r2.z.literal("tool-output-error"),toolCallId:r2.z.string(),errorText:r2.z.string(),providerExecuted:r2.z.boolean().optional(),providerMetadata:sx.optional(),toolMetadata:sQ.optional(),dynamic:r2.z.boolean().optional()}),r2.z.strictObject({type:r2.z.literal("tool-output-denied"),toolCallId:r2.z.string()}),r2.z.strictObject({type:r2.z.literal("reasoning-start"),id:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("reasoning-delta"),id:r2.z.string(),delta:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("reasoning-end"),id:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("custom"),kind:r2.z.string().transform(e=>e),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("source-url"),sourceId:r2.z.string(),url:r2.z.string(),title:r2.z.string().optional(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("source-document"),sourceId:r2.z.string(),mediaType:r2.z.string(),title:r2.z.string(),filename:r2.z.string().optional(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("file"),url:r2.z.string(),mediaType:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.literal("reasoning-file"),url:r2.z.string(),mediaType:r2.z.string(),providerMetadata:sx.optional()}),r2.z.strictObject({type:r2.z.custom(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:r2.z.string().optional(),data:r2.z.unknown(),transient:r2.z.boolean().optional()}),r2.z.strictObject({type:r2.z.literal("start-step")}),r2.z.strictObject({type:r2.z.literal("finish-step")}),r2.z.strictObject({type:r2.z.literal("start"),messageId:r2.z.string().optional(),messageMetadata:r2.z.unknown().optional()}),r2.z.strictObject({type:r2.z.literal("finish"),finishReason:r2.z.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:r2.z.unknown().optional()}),r2.z.strictObject({type:r2.z.literal("abort"),reason:r2.z.string().optional()}),r2.z.strictObject({type:r2.z.literal("message-metadata"),messageMetadata:r2.z.unknown()})])));function s0(){return Object.create(null)}function s1(e){return e.type.startsWith("tool-")}function s2(e){return"dynamic-tool"===e.type}function s4(e){return s1(e)||s2(e)}function s9(e){return e.type.split("-").slice(1).join("-")}async function s5(e){let{stream:t,onError:a}=e,r=t.getReader();try{for(;;){let{done:e}=await r.read();if(e)break}}catch(e){null==a||a(e)}finally{r.releaseLock()}}aY({prefix:"aitxt",size:24}),aY({prefix:"call",size:24}),aY({prefix:"aitxt",size:24}),aY({prefix:"call",size:24});var s6=r2.z.record(r2.z.string(),sw.optional()),s3=r2.z.record(r2.z.string(),r2.z.string());function s7(e){return t=>{let{url:a,abortSignal:r}=t;return sz({url:a,maxBytes:null==e?void 0:e.maxBytes,abortSignal:r})}}rO(()=>rP(r2.z.array(r2.z.object({id:r2.z.string(),role:r2.z.enum(["system","user","assistant"]),metadata:r2.z.unknown().optional(),parts:r2.z.array(r2.z.union([r2.z.object({type:r2.z.literal("text"),text:r2.z.string(),state:r2.z.enum(["streaming","done"]).optional(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("reasoning"),text:r2.z.string(),state:r2.z.enum(["streaming","done"]).optional(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("custom"),kind:r2.z.string(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("source-url"),sourceId:r2.z.string(),url:r2.z.string(),title:r2.z.string().optional(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("source-document"),sourceId:r2.z.string(),mediaType:r2.z.string(),title:r2.z.string(),filename:r2.z.string().optional(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("file"),mediaType:r2.z.string(),filename:r2.z.string().optional(),url:r2.z.string(),providerReference:s3.optional(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("reasoning-file"),mediaType:r2.z.string(),url:r2.z.string(),providerMetadata:sx.optional()}),r2.z.object({type:r2.z.literal("step-start")}),r2.z.object({type:r2.z.string().startsWith("data-"),id:r2.z.string().optional(),data:r2.z.unknown()}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("input-streaming"),input:r2.z.unknown().optional(),providerExecuted:r2.z.boolean().optional(),callProviderMetadata:sx.optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),approval:r2.z.never().optional()}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("input-available"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.never().optional()}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("approval-requested"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.never().optional(),reason:r2.z.never().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()})}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("approval-responded"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.boolean(),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()})}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("output-available"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.unknown(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),resultProviderMetadata:sx.optional(),preliminary:r2.z.boolean().optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.literal(!0),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()}).optional()}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("output-error"),input:r2.z.unknown().optional(),rawInput:r2.z.unknown().optional(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.string(),callProviderMetadata:sx.optional(),resultProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.literal(!0),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()}).optional()}),r2.z.object({type:r2.z.literal("dynamic-tool"),toolName:r2.z.string(),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("output-denied"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.literal(!1),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()})}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("input-streaming"),providerExecuted:r2.z.boolean().optional(),callProviderMetadata:sx.optional(),input
2:r2.z.unknown().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),approval:r2.z.never().optional()}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("input-available"),providerExecuted:r2.z.boolean().optional(),input:r2.z.unknown(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.never().optional()}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("approval-requested"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.never().optional(),reason:r2.z.never().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()})}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.str
2ing(),toolMetadata:s6.optional(),state:r2.z.literal("approval-responded"),input:r2.z.unknown(),providerExecuted:r2.z.boolean().optional(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.boolean(),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()})}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("output-available"),providerExecuted:r2.z.boolean().optional(),input:r2.z.unknown(),output:r2.z.unknown(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),resultProviderMetadata:sx.optional(),preliminary:r2.z.boolean().optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.literal(!0),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()}).optional()}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("output-error"),providerExecuted:r2.z.boolean().optional(),input:r2.z.unknown().optional(),rawInput:r2.z.unknown().optional(),output:r2.z.never().optional(),errorText:r2.z.string(),callProviderMetadata:sx.optional(),resultProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.literal(!0),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()}).optional()}),r2.z.object({type:r2.z.string().startsWith("tool-"),toolCallId:r2.z.string(),toolMetadata:s6.optional(),state:r2.z.literal("output-denied"),providerExecuted:r2.z.boolean().optional(),input:r2.z.unknown(),output:r2.z.never().optional(),errorText:r2.z.never().optional(),callProviderMetadata:sx.optional(),approval:r2.z.object({id:r2.z.string(),approved:r2.z.literal(!1),reason:r2.z.string().optional(),isAutomatic:r2.z.boolean().optional(),signature:r2.z.string().optional()})})])).nonempty("Message must contain at least one part")})).nonempty("Messages array must not be empty"))),aY({prefix:"call",size:24}),aY({prefix:"call",size:24}),aY({prefix:"aiobj",size:24});var s8=class{async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,a)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){a(e)}}),this.processQueue()})}constructor(){this.queue=[],this.isProcessing=!1}};aY({prefix:"aiobj",size:24}),s7();var ie=class{ensurePlaybackContext(){null==this.playbackContext&&(this.playbackContext=new AudioContext({sampleRate:this.playbackSampleRate}))}startCapture(e){let t=new AudioContext({sampleRate:this.captureSampleRate});this.captureContext=t,this.captureStream=e;let a=t.createMediaStreamSource(e);this.captureSource=a;let r=t.createScriptProcessor(4096,1,1);this.captureProcessor=r,r.onaudioprocess=e=>{let a=function(e,t,a){if(t===a)return e;let r=t/a,n=Math.round(e.length/r),s=new Float32Array(n);for(let t=0;t<n;t++){let a=t*r,n=Math.floor(a),i=Math.min(n+1,e.length-1),o=a-n;s[t]=e[n]*(1-o)+e[i]*o}return s}(new Float32Array(e.inputBuffer.getChannelData(0)),t.sampleRate,this.captureSampleRate);this.onAudio(function(e){let t=new ArrayBuffer(2*e.length),a=new DataView(t);for(let t=0;t<e.length;t++){let r=Math.max(-1,Math.min(1,e[t]));a.setInt16(2*t,r<0?32768*r:32767*r,!0)}let r=new Uint8Array(t),n="";for(let e=0;e<r.length;e+=32768)n+=String.fromCharCode(...r.subarray(e,e+32768));return btoa(n)}(a))},a.connect(r),r.connect(t.destination),this.onCapturingChange(!0)}stopCapture(){var e,t,a,r;null==(e=this.captureProcessor)||e.disconnect(),null==(t=this.captureSource)||t.disconnect(),null==(a=this.captureContext)||a.close(),null==(r=this.captureStream)||r.getTracks().forEach(e=>e.stop()),this.captureProcessor=null,this.captureSource=null,this.captureContext=null,this.captureStream=null,this.onCapturingChange(!1)}playAudio(e){this.ensurePlaybackContext(),this.playbackQueue.push(function(e){let t=atob(e),a=new Uint8Array(t.length);for(let e=0;e<t.length;e++)a[e]=t.charCodeAt(e);let r=new Int16Array(a.buffer),n=new Float32Array(r.length);for(let e=0;e<r.length;e++)n[e]=r[e]/32768;return n}(e)),this.schedulePlayback()}stopPlayback(){for(let e of(this.playbackQueue=[],this.activeSources))try{e.stop()}catch(e){}this.activeSources.clear(),null!=this.playbackContext&&(this.playbackTime=this.playbackContext.currentTime),this.setPlaying(!1)}getPlaybackOffsetMs(){let e=this.playbackContext;return null==e?0:(e.currentTime-this.playbackStartTime)*1e3}dispose(){var e;this.stopCapture(),this.stopPlayback(),null==(e=this.playbackContext)||e.close(),this.playbackContext=null}setPlaying(e){var t,a;e&&!this.isPlaying&&(this.playbackStartTime=null!=(a=null==(t=this.playbackContext)?void 0:t.currentTime)?a:0),this.isPlaying!==e&&(this.isPlaying=e,this.onPlayingChange(e))}schedulePlayback(){let e=this.playbackContext;if(null!=e&&0!==this.playbackQueue.length)for(;this.playbackQueue.length>0;){let t=this.playbackQueue.shift(),a=e.createBuffer(1,t.length,this.playbackSampleRate);a.getChannelData(0).set(t);let r=e.createBufferSource();r.buffer=a,r.connect(e.destination);let n=Math.max(this.playbackTime,e.currentTime);r.start(n),this.playbackTime=n+a.duration,this.activeSources.add(r),this.setPlaying(!0),r.onended=()=>{this.activeSources.delete(r),0===this.playbackQueue.length&&0===this.activeSources.size&&this.setPlaying(!1)}}}constructor(e){this.captureContext=null,this.captureProcessor=null,this.captureSource=null,this.captureStream=null,this.playbackContext=null,this.playbackQueue=[],this.playbackTime=0,this.playbackStartTime=0,this.activeSources=new Set,this.isPlaying=!1,this.captureSampleRate=e.captureSampleRate,this.playbackSampleRate=e.playbackSampleRate,this.onAudio=e.onAudio,this.onPlayingChange=e.onPlayingChange,this.onCapturingChange=e.onCapturingChange}},it=class{connect(e){var t;let{token:a,url:r,onOpen:n}=e;null==(t=this.ws)||t.close(),this.ws=null;let s=this.model.getWebSocketConfig({token:a,url:r}),i=new WebSocket(s.url,s.protocols);this.ws=i,i.onopen=()=>{this.ws===i&&n()},i.onmessage=e=>{this.handleMessage(e)},i.onerror=()=>{this.onError(Error("WebSocket connection error"))}
2,i.onclose=()=>{this.ws===i&&(this.ws=null,this.onClose())}}disconnect(){var e;null==(e=this.ws)||e.close(),this.ws=null}sendEvent(e){this.sendQueue=this.sendQueue.then(async()=>{let t=await this.model.serializeClientEvent(e);null!=t&&this.sendRaw(t)}).catch(e=>{this.onError(e instanceof Error?e:Error("Failed to send realtime event: ".concat(String(e))))})}sendRaw(e){var t;(null==(t=this.ws)?void 0:t.readyState)===WebSocket.OPEN&&this.ws.send(JSON.stringify(e))}dispose(){this.disconnect()}async handleMessage(e){let t;t="string"==typeof e.data?e.data:e.data instanceof Blob?await e.data.text():new TextDecoder().decode(e.data);let a=await rF({text:t});if(!a.success)return;let r=a.value;if(null!=this.model.getHealthCheckResponse){let e=this.model.getHealthCheckResponse(r);null!=e&&this.sendRaw(e)}let n=this.model.parseServerEvent(r);for(let e of Array.isArray(n)?n:[n])await this.onServerEvent(e)}constructor(e){this.ws=null,this.sendQueue=Promise.resolve(),this.model=e.model,this.onServerEvent=e.onServerEvent,this.onError=e.onError,this.onClose=e.onClose}},ia=class{setStatus(e,t){return(0,eu._)((0,ec._)({},e),{status:t})}setCapturing(e,t){return(0,eu._)((0,ec._)({},e),{isCapturing:t})}setPlaying(e,t){return(0,eu._)((0,ec._)({},e),{isPlaying:t})}addUserTextMessage(e,t){return(0,eu._)((0,ec._)({},e),{messages:[...e.messages,{id:"user-".concat(Date.now()),role:"user",parts:[{type:"text",text:t,state:"done"}]}]})}addToolOutput(e,t,a){return{state:this.updateToolPartState(e,t,a),output:{callId:t,name:this.toolCallIdToName.get(t),output:JSON.stringify(a)}}}async reduceServerEvent(e,t){var a;let r=this.pushEvent(e,t),n=[];switch(t.type){case"session-created":case"session-updated":"connecting"===r.status&&(r=this.setStatus(r,"connected"));break;case"audio-delta":n.push({type:"play-audio",itemId:t.itemId,delta:t.delta});break;case"audio-committed":null!=t.itemId&&this.inputAudioMessageInsertIndex.set(t.itemId,r.messages.length);break;case"audio-transcript-delta":case"text-delta":r=this.appendTextDelta(r,t.itemId,t.delta);break;case"audio-transcript-done":r=this.finalizeText(r,t.itemId,t.transcript);break;case"text-done":r=this.finalizeText(r,t.itemId,t.text);break;case"input-transcription-completed":r=this.addInputTranscriptionMessage(r,t.itemId,t.transcript);break;case"response-created":case"response-done":this.currentAssistantMessageId=null;break;case"speech-started":this.currentAssistantMessageId=null,n.push({type:"speech-started"});break;case"function-call-arguments-delta":{let{state:e,messageId:n}=this.getOrCreateAssistantMessage(r);r=e,this.toolCallIdToMessageId.set(t.callId,n);let s=null!=(a=this.toolArgAccumulators.get(t.callId))?a:"";this.toolArgAccumulators.set(t.callId,s+t.delta),r=this.ensureToolPart(r,n,t.callId);break}case"function-call-arguments-done":{this.toolArgAccumulators.delete(t.callId),this.toolCallIdToName.set(t.callId,t.name);let e=await rF({text:t.arguments}),a=e.success?e.value:{},s=this.toolCallIdToMessageId.get(t.callId);null!=s&&(r=this.markToolInputAvailable(r,s,t.callId,t.name,a)),e.success?n.push({type:"tool-call",callId:t.callId,name:t.name,args:a,rawArguments:t.arguments}):n.push({type:"error",error:Error("Failed to parse tool arguments: ".concat(t.arguments))});break}case"error":n.push({type:"error",error:Error(t.message)})}return{state:r,effects:n}}pushEvent(e,t){let a=[...e.events,t];return(0,eu._)((0,ec._)({},e),{events:a.length>this.maxEvents?a.slice(-this.maxEvents):a})}getOrCreateAssistantMessage(e){if(null!=this.currentAssistantMessageId)return{state:e,messageId:this.currentAssistantMessageId};let t="assistant-".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2,6));return this.currentAssistantMessageId=t,{state:(0,eu._)((0,ec._)({},e),{messages:[...e.messages,{id:t,role:"assistant",parts:[]}]}),messageId:t}}addInputTranscriptionMessage(e,t,a){var r;let n="user-".concat(t);if(null!=e.messages.find(e=>e.id===n))return(0,eu._)((0,ec._)({},e),{messages:e.messages.map(e=>e.id===n?(0,eu._)((0,ec._)({},e),{parts:[{type:"text",text:a,state:"done"}]}):e)});let s=Math.min(null!=(r=this.inputAudioMessageInsertIndex.get(t))?r:e.messages.length,e.messages.length),i=[...e.messages];return i.splice(s,0,{id:n,role:"user",parts:[{type:"text",text:a,state:"done"}]}),(0,eu._)((0,ec._)({},e),{messages:i})}appendTextDelta(e,t,a){var r;let{state:n,messageId:s}=this.getOrCreateAssistantMessage(e),i=(null!=(r=this.textAccumulators.get(t))?r:"")+a;this.textAccumulators.set(t,i);let o=this.itemIdToPartLocation.get(t);return null!=o?this.updateMessagePart(n,o.messageId,o.partIndex,{type:"text",text:i,state:"streaming"}):(0,eu._)((0,ec._)({},n),{messages:n.messages.map(e=>{if(e.id!==s)return e;let a=e.parts.length;return this.itemIdToPartLocation.set(t,{messageId:s,partIndex:a}),(0,eu._)((0,ec._)({},e),{parts:[...e.parts,{type:"text",text:i,state:"streaming"}]})})})}finalizeText(e,t,a){var r;let n=null!=(r=null!=a?a:this.textAccumulators.get(t))?r:"";this.textAccumulators.delete(t);let s=this.itemIdToPartLocation.get(t);return null==s?e:(this.itemIdToPartLocation.delete(t),this.updateMessagePart(e,s.messageId,s.partIndex,{type:"text",text:n,state:"done"}))}ensureToolPart(e,t,a){return(0,eu._)((0,ec._)({},e),{messages:e.messages.map(e=>e.id!==t||null!=e.parts.find(e=>"dynamic-tool"===e.type&&e.toolCallId===a)?e:(0,eu._)((0,ec._)({},e),{parts:[...e.parts,{type:"dynamic-tool",toolName:"",toolCallId:a,state:"input-streaming",input:void 0}]}))})}markToolInputAvailable(e,t,a,r,n){return(0,eu._)((0,ec._)({},e),{messages:e.messages.map(e=>e.id!==t?e:(0,eu._)((0,ec._)({},e),{parts:e.parts.map(e=>"dynamic-tool"!==e.type||e.toolCallId!==a?e:(0,eu._)((0,ec._)({},e),{toolName:r,state:"input-available",input:n}))}
2))})}updateToolPartState(e,t,a){let r=this.toolCallIdToMessageId.get(t);return null==r?e:(0,eu._)((0,ec._)({},e),{messages:e.messages.map(e=>e.id!==r?e:(0,eu._)((0,ec._)({},e),{parts:e.parts.map(e=>"dynamic-tool"!==e.type||e.toolCallId!==t?e:(0,eu._)((0,ec._)({},e),{state:"output-available",output:a}))}))})}updateMessagePart(e,t,a,r){return(0,eu._)((0,ec._)({},e),{messages:e.messages.map(e=>{if(e.id!==t)return e;let n=[...e.parts];return n[a]=r,(0,eu._)((0,ec._)({},e),{parts:n})})})}constructor(e=500){this.maxEvents=e,this.currentAssistantMessageId=null,this.textAccumulators=new Map,this.toolArgAccumulators=new Map,this.toolCallIdToMessageId=new Map,this.toolCallIdToName=new Map,this.inputAudioMessageInsertIndex=new Map,this.itemIdToPartLocation=new Map}},ir=class{async connect(){var e;this.applyState(this.reducer.setStatus(this.state,"connecting"));try{let e=await fetch(this.api.token,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionConfig:this.sessionConfig})});if(!e.ok)throw Error("Failed to fetch realtime setup: ".concat(e.status));let{token:t,url:a,tools:r}=await e.json(),n=(0,eu._)((0,ec._)({},this.sessionConfig),{tools:r});this.audio.ensurePlaybackContext(),this.transport.connect({token:t,url:a,onOpen:()=>{this.sendEvent({type:"session-update",config:n})}})}catch(t){this.applyState(this.reducer.setStatus(this.state,"error")),null==(e=this.onError)||e.call(this,t instanceof Error?t:Error("Connection failed: ".concat(String(t))))}}disconnect(){this.transport.disconnect(),this.applyState(this.reducer.setStatus(this.state,"disconnected"))}sendEvent(e){this.transport.sendEvent(e)}sendTextMessage(e){this.sendEvent({type:"conversation-item-create",item:{type:"text-message",role:"user",text:e}}),this.sendEvent({type:"response-create"}),this.applyState(this.reducer.addUserTextMessage(this.state,e))}sendAudio(e){this.sendEvent({type:"input-audio-append",audio:e})}commitAudio(){this.sendEvent({type:"input-audio-commit"})}clearAudioBuffer(){this.sendEvent({type:"input-audio-clear"})}requestResponse(e){this.sendEvent((0,ec._)({type:"response-create"},null!=e?{options:e}:{}))}cancelResponse(){this.sendEvent({type:"response-cancel"})}addToolOutput(e,t){let{state:a,output:r}=this.reducer.addToolOutput(this.state,e,t);this.applyState(a),this.sendEvent({type:"conversation-item-create",item:{type:"function-call-output",callId:r.callId,name:r.name,output:r.output}}),this.submittedToolOutputs.add(e),this.maybeRequestToolResponse()}maybeRequestToolResponse(){if(this.responseToolCallsClosed&&0!==this.toolCallsInResponse.size){for(let e of this.toolCallsInResponse)if(!this.submittedToolOutputs.has(e))return;this.sendEvent({type:"response-create"}),this.toolCallsInResponse.clear(),this.submittedToolOutputs.clear(),this.responseToolCallsClosed=!1}}startAudioCapture(e){this.audio.startCapture(e)}stopAudioCapture(){this.audio.stopCapture()}stopPlayback(){this.audio.stopPlayback()}
2dispose(){this.transport.dispose(),this.audio.dispose(),this.applyState(this.reducer.setStatus(this.reducer.setPlaying(this.reducer.setCapturing(this.state,!1),!1),"disconnected"))}applyState(e){let t=this.state;this.state=e,t.status!==e.status&&this.setState("status",e.status),t.messages!==e.messages&&this.setState("messages",e.messages),t.events!==e.events&&this.setState("events",e.events),t.isCapturing!==e.isCapturing&&this.setState("isCapturing",e.isCapturing),t.isPlaying!==e.isPlaying&&this.setState("isPlaying",e.isPlaying)}async executeToolCall(e){var t,a;let{name:r,args:n,callId:s}=e;if(null==this.onToolCall){null==(t=this.onError)||t.call(this,Error('No handler provided for tool "'.concat(r,'"')));return}try{let e=await this.onToolCall({toolCall:{toolCallId:s,toolName:r,args:n}});void 0!==e&&this.addToolOutput(s,e)}catch(e){null==(a=this.onError)||a.call(this,e instanceof Error?e:Error("Client tool execution failed: ".concat(String(e))))}}async handleServerEvent(e){var t;let a=await this.reducer.reduceServerEvent(this.state,e);for(let r of(this.applyState(a.state),null==(t=this.onEvent)||t.call(this,e),a.effects))this.handleReducerEffect(r);"response-done"===e.type&&this.toolCallsInResponse.size>0&&(this.responseToolCallsClosed=!0,this.maybeRequestToolResponse())}handleReducerEffect(e){var t;switch(e.type){case"play-audio":this.currentResponseItemId=e.itemId,this.audio.playAudio(e.delta);break;case"speech-started":if(this.state.isPlaying){let e=this.audio.getPlaybackOffsetMs();this.audio.stopPlayback(),null!=this.currentResponseItemId&&this.sendEvent({type:"conversation-item-truncate",itemId:this.currentResponseItemId,contentIndex:0,audioEndMs:Math.round(e)})}break;case"tool-call":this.toolCallsInResponse.add(e.callId),this.executeToolCall({name:e.name,args:e.args,callId:e.callId});break;case"error":null==(t=this.onError)||t.call(this,e.error)}}constructor(e){var t,a,r,n,s,i,o,l;this.state={status:"disconnected",messages:[],events:[],isCapturing:!1,isPlaying:!1},this.currentResponseItemId=null,this.toolCallsInResponse=new Set,this.submittedToolOutputs=new Set,this.responseToolCallsClosed=!1,this.model=e.model,this.api=e.api,this.sessionConfig=e.sessionConfig,this.maxEvents=null!=(t=e.maxEvents)?t:500,this.reducer=new ia(this.maxEvents),this.onToolCall=e.onToolCall,this.onEvent=e.onEvent,this.onError=e.onError;const c=null!=(a=e.sampleRate)?a:24e3,u=null!=(s=null==(n=null==(r=e.sessionConfig)?void 0:r.inputAudioFormat)?void 0:n.rate)?s:c,d=null!=(l=null==(o=null==(i=e.sessionConfig)?void 0:i.outputAudioFormat)?void 0:o.rate)?l:c;this.transport=new it({model:this.model,onServerEvent:e=>this.handleServerEvent(e),onError:e=>{var t;this.applyState(this.reducer.setStatus(this.state,"error")),null==(t=this.onError)||t.call(this,e)},onClose:()=>{this.applyState(this.reducer.setStatus(this.state,"disconnected"))}}),this.audio=new ie({captureSampleRate:u,playbackSampleRate:d,onAudio:e=>this.sendAudio(e),onCapturingChange:e=>{this.applyState(this.reducer.setCapturing(this.state,e))},onPlayingChange:e=>{this.applyState(this.reducer.setPlaying(this.state,e))}})}};async function is(e){let{stream:t,onTextPart:a}=e,r=t.pipeThrough(new TextDecoderStream).getReader();for(;;){let{done:e,value:t}=await r.read();if(e)break;await a(t)}}async function ii(e){var t;let{api:a,prompt:r,credentials:n,headers:s,body:i,streamProtocol:o="data",setCompletion:l,setLoading:c,setError:u,setAbortController:d,onFinish:p,onError:h,fetch:m=fetch}=e;try{c(!0),u(void 0);let e=new AbortController;d(e),l("");let h=await m(a,{method:"POST",body:JSON.stringify((0,ec._)({prompt:r},i)),credentials:n,headers:a9((0,ec._)({"Content-Type":"application/json"},s),"ai-sdk/".concat(sb),a2()),signal:e.signal}).catch(e=>{throw e});if(!h.ok)throw Error(null!=(t=await h.text())?t:"Failed to fetch the chat response.");if(!h.body)throw Error("The response body is empty.");let g="";switch(o){case"text":await is({stream:h.body,onTextPart:e=>{g+=e,l(g)}});break;case"data":await s5({stream:rL({stream:h.body,schema:sX}).pipeThrough(new TransformStream({async transform(e){if(!e.success)throw e.error;let t=e.value;if("text-delta"===t.type)g+=t.delta,l(g);else if("error"===t.type)throw Error(t.errorText)}})),onError:e=>{throw e}});break;default:throw Error("Unknown stream protocol: ".concat(o))}return p&&p(r,g),d(null),g}catch(e){if("AbortError"===e.name)return d(null),null;e instanceof Error&&h&&h(e),u(e)}finally{c(!1)}}async function io(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async e=>{let{name:t,type:a}=e;return{type:"file",mediaType:a,filename:t,url:await new Promise((t,a)=>{let r=new FileReader;r.onload=e=>{var a;t(null==(a=e.target)?void 0:a.result)},r.onerror=e=>
2a(e),r.readAsDataURL(e)})}}))}Symbol.for("vercel.ai.error.".concat("AI_NoSuchProviderError")),aY({prefix:"call",size:24}),s7();var il=class{async sendMessages(e){var t,a,r,n,s;let{abortSignal:i}=e,o=(0,ep._)(e,["abortSignal"]),l=await rH(this.body),c=await rH(this.headers),u=await rH(this.credentials),d=(0,ec._)({},a4(c),a4(o.headers)),p=await (null==(t=this.prepareSendMessagesRequest)?void 0:t.call(this,{api:this.api,id:o.chatId,messages:o.messages,body:(0,ec._)({},l,o.body),headers:d,credentials:u,requestMetadata:o.metadata,trigger:o.trigger,messageId:o.messageId})),h=null!=(a=null==p?void 0:p.api)?a:this.api,m=(null==p?void 0:p.headers)!==void 0?a4(p.headers):d,g=(null==p?void 0:p.body)!==void 0?p.body:(0,eu._)((0,ec._)({},l,o.body),{id:o.chatId,messages:o.messages,trigger:o.trigger,messageId:o.messageId}),f=null!=(r=null==p?void 0:p.credentials)?r:u,y=null!=(n=this.fetch)?n:globalThis.fetch,v=await y(h,{method:"POST",headers:(0,ec._)({"Content-Type":"application/json"},m),body:JSON.stringify(g),credentials:f,signal:i});if(!v.ok)throw Error(null!=(s=await v.text())?s:"Failed to fetch the chat response.");if(!v.body)throw Error("The response body is empty.");return this.processResponseStream(v.body)}async reconnectToStream(e){var t,a,r,n,s;let i=await rH(this.body),o=await rH(this.headers),l=await rH(this.credentials),c=(0,ec._)({},a4(o),a4(e.headers)),u=await (null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:(0,ec._)({},i,e.body),headers:c,credentials:l,requestMetadata:e.metadata})),d=null!=(a=null==u?void 0:u.api)?a:"".concat(this.api,"/").concat(e.chatId,"/stream"),p=(null==u?void 0:u.headers)!==void 0?a4(u.headers):c,h=null!=(r=null==u?void 0:u.credentials)?r:l,m=null!=(n=this.fetch)?n:globalThis.fetch,g=await m(d,{method:"GET",headers:p,credentials:h});if(204===g.status)return null;if(!g.ok)throw Error(null!=(s=await g.text())?s:"Failed to fetch the chat response.");if(!g.body)throw Error("The response body is empty.");return this.processResponseStream(g.body)}constructor({api:e="/api/chat",credentials:t,headers:a,body:r,fetch:n,prepareSendMessagesRequest:s,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=a,this.body=r,this.fetch=n,this.prepareSendMessagesRequest=s,this.prepareReconnectToStreamRequest=i}},ic=class extends il{processResponseStream(e){return rL({stream:e,schema:sX}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}constructor(e={}){super(e)}},iu=class{get status(){return this.state.status}setStatus(e){let{status:t,error:a}=e;this.status!==t&&(this.state.status=t,this.state.error=a)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&"object"==typeof e&&"then"in e?await e:e}async makeRequest(e){var t,a,r;let n,{trigger:s,metadata:i,headers:o,body:l,messageId:c}=e;if("resume-stream"===s)try{let e=await this.transport.reconnectToStream({chatId:this.id,metadata:i,headers:o,body:l});if(null==e)return;n=e}catch(e){this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e});return}this.setStatus({status:"submitted",error:void 0});let u=this.lastMessage,d=!1,p=!1,h=!1;try{let e,t={state:function(e){let{lastMessage:t,messageId:a}=e;return{message:(null==t?void 0:t.role)==="assistant"?t:{id:a,metadata:void 0,role:"assistant",parts:[]},activeTextParts:s0(),activeReasoningParts:s0(),partialToolCalls:s0()}}({lastMessage:this.state.snapshot(u),messageId:this.generateId()}),abortController:new AbortController};t.abortController.signal.addEventListener("abort",()=>{d=!0}),this.activeResponse=t,e="resume-stream"===s?n:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:t.abortController.signal,metadata:i,headers:o,body:l,trigger:s,messageId:c});let a=e=>this.jobExecutor.run(()=>e({state:t.state,write:()=>{var e;this.setStatus({status:"streaming"}),t.state.message.id===(null==(e=this.lastMessage)?void 0:e.id)?this.state.replaceMessage(this.state.messages.length-1,t.state.message):this.state.pushMessage(t.state.message)}}));await s5({stream:function(e){let{stream:t,messageMetadataSchema:a,dataPartSchemas:r,runUpdateMessageJob:n,onError:s,onToolCall:i,onData:o}=e;return t.pipeThrough(new TransformStream({async transform(e,t){await n(async n=>{var l,c,u,d;let{state:p,write:h}=n;function m(e){let t=p.message.parts.filter(s4).find(t=>t.toolCallId===e);if(null==t)throw new s_({chunkType:"tool-invocation",chunkId:e,message:'No tool invocation found for tool call ID "'.concat(e,'".')});return t}function g(e){var t;let a=p.message.parts.find(t=>s1(t)&&t.toolCallId===e.toolCallId);if(null!=a){a.state=e.state,a.input=e.input,a.output=e.output,a.errorText=e.errorText,a.rawInput=e.rawInput,a.preliminary=e.preliminary,void 0!==e.title&&(a.title=e.title),void 0!==e.toolMetadata&&(a.toolMetadata=e.toolMetadata),a.providerExecuted=null!=(t=e.providerExecuted)?t:a.providerExecuted;let r=e.providerMetadata;null!=r&&("output-available"===e.state||"output-error"===e.state?a.resultProviderMetadata=r:a.callProviderMetadata=r)}else p.message.parts.push((0,ec._)((0,eu._)((0,ec._)({type:"tool-".concat(e.toolName),toolCallId:e.toolCallId,state:e.state,title:e.title},void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{}),{input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary}),null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{}
2,null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}))}function f(e){var t,a;let r=p.message.parts.find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);if(null!=r){r.state=e.state,r.toolName=e.toolName,r.input=e.input,r.output=e.output,r.errorText=e.errorText,r.rawInput=null!=(t=e.rawInput)?t:r.rawInput,r.preliminary=e.preliminary,void 0!==e.title&&(r.title=e.title),void 0!==e.toolMetadata&&(r.toolMetadata=e.toolMetadata),r.providerExecuted=null!=(a=e.providerExecuted)?a:r.providerExecuted;let n=e.providerMetadata;null!=n&&("output-available"===e.state||"output-error"===e.state?r.resultProviderMetadata=n:r.callProviderMetadata=n)}else p.message.parts.push((0,ec._)({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:e.input,output:e.output,errorText:e.errorText,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:e.title},void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{},null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}))}async function y(e){if(null!=e){let t=null!=p.message.metadata?function e(t,a){if(void 0===t&&void 0===a)return;if(void 0===t)return a;
2if(void 0===a)return t;let r=(0,ec._)({},t);for(let n in a)if("__proto__"!==n&&"constructor"!==n&&"prototype"!==n&&Object.prototype.hasOwnProperty.call(a,n)){let s=a[n];if(void 0===s)continue;let i=n in t?t[n]:void 0,o=null!==s&&"object"==typeof s&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp),l=null!=i&&"object"==typeof i&&!Array.isArray(i)&&!(i instanceof Date)&&!(i instanceof RegExp);o&&l?r[n]=e(i,s):r[n]=s}return r}(p.message.metadata,e):e;null!=a&&await rN({value:t,schema:a,context:{field:"message.metadata",entityId:p.message.id}}),p.message.metadata=t}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};p.activeTextParts[e.id]=t,p.message.parts.push(t),h();break}case"text-delta":{let t=p.activeTextParts[e.id];if(null==t)throw new s_({chunkType:"text-delta",chunkId:e.id,message:'Received text-delta for missing text part with ID "'.concat(e.id,'". Ensure a "text-start" chunk is sent before any "text-delta" chunks.')});t.text+=e.delta,t.providerMetadata=null!=(l=e.providerMetadata)?l:t.providerMetadata,h();break}case"text-end":{let t=p.activeTextParts[e.id];if(null==t)throw new s_({chunkType:"text-end",chunkId:e.id,message:'Received text-end for missing text part with ID "'.concat(e.id,'". Ensure a "text-start" chunk is sent before any "text-end" chunks.')});t.state="done",t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,delete p.activeTextParts[e.id],h();break}case"custom":{let t={type:"custom",kind:e.kind,providerMetadata:e.providerMetadata};p.message.parts.push(t),h();break}case"reasoning-start":{let t={type:"reasoning",text:"",providerMetadata:e.providerMetadata,state:"streaming"};p.activeReasoningParts[e.id]=t,p.message.parts.push(t),h();break}case"reasoning-delta":{let t=p.activeReasoningParts[e.id];if(null==t)throw new s_({chunkType:"reasoning-delta",chunkId:e.id,message:'Received reasoning-delta for missing reasoning part with ID "'.concat(e.id,'". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.')});t.text+=e.delta,t.providerMetadata=null!=(u=e.providerMetadata)?u:t.providerMetadata,h();break}case"reasoning-end":{let t=p.activeReasoningParts[e.id];if(null==t)throw new s_({chunkType:"reasoning-end",chunkId:e.id,message:'Received reasoning-end for missing reasoning part with ID "'.concat(e.id,'". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.')});t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,t.state="done",delete p.activeReasoningParts[e.id],h();break}case"file":case"reasoning-file":p.message.parts.push((0,ec._)({type:e.type,mediaType:e.mediaType,url:e.url},null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{})),h();break;case"source-url":p.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),h();break;case"source-document":p.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),h();break;case"tool-input-start":{let t=p.message.parts.filter(s1);p.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title,toolMetadata:e.toolMetadata},e.dynamic?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}),h();break}case"tool-input-delta":{let t=p.partialToolCalls[e.toolCallId];if(null==t)throw new s_({chunkType:"tool-input-delta",chunkId:e.toolCallId,message:'Received tool-input-delta for missing tool call with ID "'.concat(e.toolCallId,'". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.')});t.text+=e.inputTextDelta;let{value:a}=await sJ(t.text);t.dynamic?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title,toolMetadata:t.toolMetadata}):g({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title,toolMetadata:t.toolMetadata}),h();break}case"tool-input-available":e.dynamic?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}),h(),i&&!e.providerExecuted&&await i({toolCall:e});break;case"tool-input-error":{let t=p.message.parts.filter(s4).find(t=>t.toolCallId===e.toolCallId);(null!=t?"dynamic-tool"===t.type:e.dynamic)?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}),h();break}case"tool-approval-request":{let t=m(e.toolCallId);t.state="approval-requested",t.approval=(0,ec._)({id:e.approvalId},!0===e.isAutomatic?{isAutomatic:!0}:{},null!=e.signature?{signature:e.signature}:{}),h();break}case"tool-approval-response":{let t=function(e){let t=p.message.parts.filter(s4).find(t=>{var a;return(null==(a=t.approval)?void 0:a.id)===e});if(null==t)throw new s_({chunkType:"tool-approval-response",chunkId:e,message:'No tool invocation found for approval ID "'.concat(e,'".')});return t}(e.approvalId),a=null==t.approval?{id:e.approvalId}:t.approval;t.state="approval-responded",t.approval=(0,ec._)({id:e.approvalId,approved:e.approved},null!=e.reason?{reason:e.reason}:{},!0===a.isAutomatic?{isAutomatic:!0}:{}),null!=e.providerExecuted&&(t.providerExecuted=e.providerExecuted),null!=e.providerMetadata&&(t.callProviderMetadata=e.providerMetadata),h();break}case"tool-output-denied":m(e.toolCallId).state="output-denied",h();break;case"tool-output-available":{let t=m(e.toolCallId);"dynamic-tool"===t.type?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata}):g({toolCallId:e.toolCallId,toolName:s9(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata}),h();break}case"tool-output-error":{let t=m(e.toolCallId);"dynamic-tool"===t.type?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata}):g({toolCallId:e.toolCallId,toolName:s9(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata}),h();break}case"start-step":p.message.parts.push({type:"step-start"});break;case"finish-step":p.activeTextParts=s0(),p.activeReasoningParts=s0();break;case"start":null!=e.messageId&&(p.message.id=e.messageId),await y(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&h();break;
2case"finish":null!=e.finishReason&&(p.finishReason=e.finishReason),await y(e.messageMetadata),null!=e.messageMetadata&&h();break;case"message-metadata":await y(e.messageMetadata),null!=e.messageMetadata&&h();break;case"error":null==s||s(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if((null==r?void 0:r[e.type])!=null){let t=p.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),a=t>=0?t:p.message.parts.length;await rN({value:e.data,schema:r[e.type],context:{field:"message.parts[".concat(a,"].data"),entityName:e.type,entityId:e.id}})}if(e.transient){null==o||o(e);break}let t=null!=e.id?p.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:p.message.parts.push(e),null==o||o(e),h()}}t.enqueue(e)})}}))}({stream:e,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:a,onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:"ready"})}catch(e){if(d||"AbortError"===e.name)return d=!0,this.setStatus({status:"ready"}),null;h=!0,e instanceof TypeError&&(e.message.toLowerCase().includes("fetch")||e.message.toLowerCase().includes("network"))&&(p=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{null==(a=this.onFinish)||a.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:d,isDisconnect:p,isError:h,finishReason:null==(t=this.activeResponse)?void 0:t.state.finishReason})}catch(e){console.error(e)}this.activeResponse=void 0}!h&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(r=this.lastMessage)?void 0:r.id,metadata:i,headers:o,body:l})}constructor({generateId:e=aK,id:t=e(),transport:a=new ic,messageMetadataSchema:r,dataPartSchemas:n,state:s,onError:i,onToolCall:o,onFinish:l,onData:c,sendAutomaticallyWhen:u}){var d=this;this.activeResponse=void 0,this.jobExecutor=new s8,this.sendMessage=async(e,t)=>{var a,r,n,s;let i;if(null==e)return void await this.makeRequest((0,ec._)({trigger:"submit-message",messageId:null==(a=this.lastMessage)?void 0:a.id},t));if(i="text"in e||"files"in e?{parts:[...Array.isArray(e.files)?e.files:await io(e.files),..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}:e,null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw Error("message with id ".concat(e.messageId," not found"));if("user"!==this.state.messages[t].role)throw Error("message with id ".concat(e.messageId," is not a user message"));this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,(0,eu._)((0,ec._)({},i),{id:e.messageId,role:null!=(r=i.role)?r:"user",metadata:e.metadata}))}else this.state.pushMessage((0,eu._)((0,ec._)({},i),{id:null!=(n=i.id)?n:this.generateId(),role:null!=(s=i.role)?s:"user",metadata:e.metadata}));await this.makeRequest((0,ec._)({trigger:"submit-message",messageId:e.messageId},t))},this.regenerate=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,[t={}]=[e],{messageId:a}=t,r=(0,ep._)(t,["messageId"]),n=null==a?d.state.messages.length-1:d.state.messages.findIndex(e=>e.id===a);if(-1===n)throw Error("message ".concat(a," not found"));d.state.messages=d.state.messages.slice(0,"assistant"===d.messages[n].role?n:n+1),await d.makeRequest((0,ec._)({trigger:"regenerate-message",messageId:a},r))},this.resumeStream=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};await d.makeRequest((0,ec._)({trigger:"resume-stream"},e))},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async e=>{let{id:t,approved:a,reason:r,options:n}=e;return this.jobExecutor.run(async()=>{let e=this.state.messages,s=e[e.length-1],i=e=>s4(e)&&"approval-requested"===e.state&&e.approval.id===t?(0,eu._)((0,ec._)({},e),{state:"approval-responded",approval:{id:t,approved:a,reason:r}}):e;this.state.replaceMessage(e.length-1,(0,eu._)((0,ec._)({},s),{parts:s.parts.map(i)})),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(i)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSe
2ndAutomatically().then(e=>{var t;e&&this.makeRequest((0,ec._)({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id},n))})})},this.addToolOutput=async e=>{let{state:t="output-available",toolCallId:a,output:r,errorText:n,options:s}=e;return this.jobExecutor.run(async()=>{let e=this.state.messages,i=e[e.length-1],o=e=>s4(e)&&e.toolCallId===a?(0,eu._)((0,ec._)({},e),{state:t,output:r,errorText:n}):e;this.state.replaceMessage(e.length-1,(0,eu._)((0,ec._)({},i),{parts:i.parts.map(o)})),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(o)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest((0,ec._)({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id},s))})})},this.addToolResult=this.addToolOutput,this.stop=async()=>{var e;("streaming"===this.status||"submitted"===this.status)&&(null==(e=this.activeResponse)?void 0:e.abortController)&&this.activeResponse.abortController.abort()},this.id=t,this.transport=a,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=n,this.state=s,this.onError=i,this.onToolCall=o,this.onFinish=l,this.onData=c,this.sendAutomaticallyWhen=u}};e.s(["AbstractChat",0,iu,"DefaultChatTransport",0,ic,"Experimental_AbstractRealtimeSession",0,ir,"callCompletionApi",0,ii,"getToolName",0,function(e){return s2(e)?e.toolName:s9(e)},"isDataUIPart",0,function(e){return e.type.startsWith("data-")},"isDeepEqualData",0,function e(t,a){if(t===a)return!0;if(null==t||null==a)return!1;if("object"!=typeof t&&"object"!=typeof a)return t===a;if(t.constructor!==a.constructor)return!1;if(t instanceof Date&&a instanceof Date)return t.getTime()===a.getTime();if(Array.isArray(t)){if(t.length!==a.length)return!1;for(let r=0;r<t.length;r++)if(!e(t[r],a[r]))return!1;return!0}let r=Object.keys(t),n=Object.keys(a);if(r.length!==n.length)return!1;for(let s of r)if(!n.includes(s)||!e(t[s],a[s]))return!1;return!0},"isReasoningUIPart",0,function(e){return"reasoning"===e.type},"isTextUIPart",0,function(e){return"text"===e.type},"isToolUIPart",0,s4,"lastAssistantMessageIsCompleteWithApprovalResponses",0,function(e){let{messages:t}=e,a=t[t.length-1];if(!a||"assistant"!==a.role)return!1;let r=a.parts.reduce((e,t,a)=>"step-start"===t.type?a:e,-1),n=a.parts.slice(r+1).filter(s4);return n.filter(e=>"approval-responded"===e.state).length>0&&n.every(e=>"output-available"===e.state||"output-error"===e.state||"approval-responded"===e.state)},"lastAssistantMessageIsCompleteWithToolCalls",0,function(e){let{messages:t}=e,a=t[t.length-1];if(!a||"assistant"!==a.role)return!1;let r=a.parts.reduce((e,t,a)=>"step-start"===t.type?a:e,-1),n=a.parts.slice(r+1).filter(s4).filter(e=>!e.providerExecuted);return n.length>0&&n.every(e=>"output-available"===e.state||"output-error"===e.state)},"parsePartialJson",0,sJ],495412);var id=e.i(976859),ip=e.i(712001),ih=e.i(391786),im=e.i(71667),ig=e.i(416340),iy=e.i(446224),iv=e.i(575216),i_=e.i(532119),ib=e.i(436413),iz=e.i(369020);
2class iw extends Error{constructor(e,t){super("".concat(e," at position ").concat(t)),this.position=t}}function ix(e){return e>="0"&&e<="9"}function ik(e){return",:[]/{}()\n+".includes(e)}function iI(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||"_"===e||"$"===e}function iS(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||"_"===e||"$"===e||e>="0"&&e<="9"}let iC=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,iE=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;function iT(e){return",[]/{}\n+".includes(e)}function iA(e){return iR(e)||iM.test(e)}let iM=/^[[{\w-]$/;function iO(e,t){let a=e.charCodeAt(t);return 32===a||10===a||9===a||13===a}function ij(e,t){let a=e.charCodeAt(t);return 32===a||9===a||13===a}function iR(e){return iP(e)||iZ(e)}function iP(e){return'"'===e||"â"===e||"â"===e}function iN(e){return'"'===e}function iZ(e){return"'"===e||"â"===e||"â"===e||"`"===e||"´"===e}function iD(e){return"'"===e}function iF(e,t){let a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=e.lastIndexOf(t);return -1!==r?e.substring(0,r)+(a?"":e.substring(r+1)):e}function iL(e,t){let a=e.length;if(!iO(e,a-1))return e+t;for(;iO(e,a-1);)a--;return e.substring(0,a)+t+e.substring(a)}let iU={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},iV={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:" "};function iB(e){var t;let a=0,r="";l(["```","[```","{```"]),s()||function(){throw new iw("Unexpected end of json string",e.length)}(),l(["```","```]","```}"]);let n=c(",");for((n&&i(),iA(e[a])&&(t=r,/[,\n][ \t\r]*$/.test(t)))?(n||(r=iL(r,",")),function(){let e=!0,t=!0;for(;t;)e?e=!1:c(",")||(r=iL(r,",")),t=s();t||(r=iF(r,",")),r="[\n".concat(r,"\n]")}()):n&&(r=iF(r,","));"}"===e[a]||"]"===e[a];)a++,i();if(a>=e.length)return r;function s(){i();let t=function(){if("{"===e[a]){r+="{",a++,i(),u(",")&&i();let t=!0;for(;a<e.length&&"}"!==e[a];){if(t?t=!1:(c(",")||(r=iL(r,",")),i()),d(),!(p()||g(!0))){"}"===e[a]||"{"===e[a]||"]"===e[a]||"["===e[a]||void 0===e[a]?r=iF(r,","):function(){throw new iw("Object key expected",a)}();break}i();let n=c(":"),o=a>=e.length;n||(iA(e[a])||o?r=iL(r,":"):_()),s()||(n||o?r+="null":_())}return"}"===e[a]?(r+="}",a++):r=iL(r,"}"),!0}return!1}()||function(){if("["===e[a]){r+="[",a++,i(),u(",")&&i();let t=!0;for(;a<e.length&&"]"!==e[a];)if(t?t=!1:c(",")||(r=iL(r,",")),d(),!s()){r=iF(r,",");break}return"]"===e[a]?(r+="]",a++):r=iL(r,"]"),!0}return!1}()||p()||function(){let t=a;if("-"===e[a]){if(a++,y())return v(t),!0;if(!ix(e[a]))return a=t,!1}for(;ix(e[a]);)a++;if("."===e[a]){if(a++,y())return v(t),!0;if(!ix(e[a]))return a=t,!1;for(;ix(e[a]);)a++}if("e"===e[a]||"E"===e[a]){if(("-"===e[++a]||"+"===e[a])&&a++,y())return v(t),!0;if(!ix(e[a]))return a=t,!1;for(;ix(e[a]);)a++}if(!y())return a=t,!1;if(a>t){let n=e.slice(t,a),s=/^0\d/.test(n);return r+=s?'"'.concat(n,'"'):n,!0}return!1}()||m("true","true")||m("false","false")||m("null","null")||m("True","true")||m("False","false")||m("None","null")||g(!1)||function(){if("/"===e[a]){let t=a;for(a++;a<e.length&&("/"!==e[a]||"\\"===e[a-1]);)a++;return a++,r+=JSON.stringify(e.substring(t,a)),!0}}();return i(),t}function i(){let t=!(arguments.length>0)||void 0===arguments[0]||arguments[0],r=a,n=o(t);do(n=function(){if("/"===e[a]&&"*"===e[a+1]){for(var t,r;a<e.length&&("*"!==(t=e)[r=a]||"/"!==t[r+1]);)a++;return a+=2,!0}if("/"===e[a]&&"/"===e[a+1]){for(;a<e.length&&"\n"!==e[a];)a++;return!0}return!1}())&&(n=o(t));while(n)return a>r}function o(t){let n=t?iO:ij,s="";for(;;)if(n(e,a))s+=e[a],a++;else if(function(e,t){let a=e.charCodeAt(t);return 160===a||a>=8192&&a<=8202||8239===a||8287===a||12288===a}(e,a))s+=" ",a++;else break;return s.length>0&&(r+=s,!0)}throw new iw("Unexpected character ".concat(JSON.stringify(e[a])),a);function l(t){if(function(t){for(let r of(o(!0),t)){let t=a+r.length;if(e.slice(a,t)===r)return a=t,!0}return!1}(t)){if(iI(e[a]))for(;a<e.length&&iS(e[a]);)a++;return i(),!0}return!1}function c(t){return e[a]===t&&(r+=e[a],a++,!0)}function u(t){return e[a]===t&&(a++,!0)}function d(){return i(),"."===e[a]&&"."===e[a+1]&&"."===e[a+2]&&(a+=3,i(),u(","),!0)}function p(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,s="\\"===e[a];if(s&&(a++,s=!0),iR(e[a])){let l=iN(e[a])?iN:iD(e[a])?iD:iZ(e[a])?iZ:iP,c=a,d=r.length,m='"';for(a++;;){var o;if(a>=e.length){let n=f(a-1);if(!t&&ik(e.charAt(n)))return a=c,r=r.substring(0,d),p(!0);return m=iL(m,'"'),r+=m,!0}if(a===n)return m=iL(m,'"'),r+=m,!0;if(l(e[a])){let n=a,s=m.length;if(m+='"',a++,r+=m,i(!1),t||a>=e.length||ik(e[a])||iR(e[a])||ix(e[a]))return h(),!0;let o=f(n-1),l=e.charAt(o);if(","===l)return a=c,r=r.substring(0,d),p(!1,o);if(ik(l))return a=c,r=r.substring(0,d),p(!0);r=r.substring(0,d),a=n+1,m="".concat(m.substring(0,s),"\\").concat(m.substring(s))}else if(t&&iT(e[a])){if(":"===e[a-1]&&iC.test(e.substring(c+1,a+2)))for(;a<e.length&&iE.test(e[a]);)m+=e[a],a++;return m=iL(m,'"'),r+=m,h(),!0}else if("\\"===e[a]){let t=e.charAt(a+1);if(void 0!==iV[t])m+=e.slice(a,a+2),a+=2;else if("u"===t){let t=2;for(;t<6&&(o=e[a+t],/^[0-9A-Fa-f]$/.test(o));)t++;6===t?(m+=e.slice(a,a+6),a+=6):a+t>=e.length?a=e.length:function(){let t=e.slice(a,a+6);throw new iw('Invalid unicode character "'.concat(t,'"'),a)}()}else m+=t,a+=2}else{let t=e.charAt(a);'"'===t&&"\\"!==e[a-1]?m+="\\".concat(t):"\n"===t||"\r"===t||" "===t||"\b"===t||"\f"===t?m+=iU[t]:(t>=" "||function(e){throw new iw("Invalid character ".concat(JSON.stringify(e)),a)}(t),m+=t),a++}s&&u("\\")}}return!1}function h(){let t=!1;for(i();"+"===e[a];){t=!0,a++,i();let e=(r=iF(r,'"',!0)).length;if(p()){var n;r=(n=r).substring(0,e)+n.substring(e+1)}else r=iL(r,'"')}return t}function m(t,n){return e.slice(a,a+t.length)===t&&(r+=n,a+=t.length,!0)}function g(t){let n=a;if(iI(e[a])){for(;a<e.length&&iS(e[a]);)a++;let t=a;for(;iO(e,t);)t++;if("("===e[t])return a=t+1,s(),")"===e[a]&&";"===e[++a]&&a++,!0}for(;a<e.length&&!iT(e[a])&&!iR(e[a])&&(!t||":"!==e[a]);)a++;if(":"===e[a-1]&&iC.test(e.substring(n,a+2)))for(;a<e.length&&iE.test(e[a]);)a++;if(a>n){for(;iO(e,a-1)&&a>0;)a--;let t=e.slice(n,a);return r+="undefined"===t?"null":JSON.stringify(t),'"'===e[a]&&a++,!0}}function f(t){let a=t;for(;a>0&&iO(e,a);)a--;return a}function y(){return a>=e.length||ik(e[a])||iO(e,a)}function v(t){r+="".concat(e.slice(t,a),"0")}function _(){throw new iw("Colon expected",a)}}function iq(e){if("string"!=typeof e)return e;let t=e.trim();return 0!==t.length&&(t.startsWith("{")||t.startsWith("["))?function(e){let t,a=e.trim();try{return JSON.parse(a)}catch(e){}try{let e=iB(a),t=JSON.parse(e);
2return ib.loggers.aiChat.debug("parseToolInputJson: Repaired malformed JSON using jsonrepair",{originalPreview:a.slice(0,100),originalEnding:a.slice(-20),repairedPreview:e.slice(0,100),repairedEnding:e.slice(-20)}),t}catch(e){}let r=function(e){let t="",a=!1,r=0;for(let n=0;n<e.length;n++){let s=e[n];if('"'===s){if(r%2==1)t+=s;else if(a){let r=function(e,t){for(let a=t;a<e.length;a++){let t=e[a];if(!/\s/.test(t))return t}}(e,n+1);":"===r||","===r||"}"===r||"]"===r?(a=!1,t+=s):t+='\\"'}else a=!0,t+=s;r=0;continue}t+=s,"\\"===s?r++:r=0}return t}(a);if(r!==a){try{let e=JSON.parse(r);return ib.loggers.aiChat.debug("parseToolInputJson: Repaired malformed JSON using quote-escape heuristic",{originalPreview:a.slice(0,100),originalEnding:a.slice(-20),repairedPreview:r.slice(0,100),repairedEnding:r.slice(-20)}),e}catch(e){}try{let e=iB(r),t=JSON.parse(e);return ib.loggers.aiChat.debug("parseToolInputJson: Repaired malformed JSON after quote-escape + jsonrepair",{originalPreview:a.slice(0,100),originalEnding:a.slice(-20),repairedPreview:e.slice(0,100),repairedEnding:e.slice(-20)}),t}catch(e){}}try{iB(a),t="jsonrepair produced non-parseable output"}catch(e){t=e instanceof Error?e.message:String(e)}return ib.loggers.aiChat.error("parseToolInputJson: all repair strategies failed",{preview:a.slice(0,100),ending:a.slice(-20),quoteEscapeAttempted:r!==a,error:t}),(0,ip.captureAiChatErrorOnSentry)(Error("Tool input JSON repair failed"),{stage:"client-tool",level:"error",fingerprint:["tool-input-json-repair-failed"],extras:{inputPreview:a.slice(0,200),inputEnding:a.slice(-30),inputLength:a.length,quoteEscapeAttempted:r!==a,repairError:t}}),e}(t):e}function iH(e){if(!Array.isArray(e))return ib.loggers.aiChat.error("â Invalid messages: not an array"),[];let t=e.filter(e=>e&&"object"==typeof e&&"string"==typeof e.id&&"string"==typeof e.role&&Array.isArray(e.parts));return t.length!==e.length&&ib.loggers.aiChat.debug("â ï¸ Some messages were invalid and filtered out",{total:e.length,valid:t.length}),t}function iJ(e){let t=[];for(let a of e){if("assistant"!==a.role){t.push(a);continue}if(!Array.isArray(a.parts)||0===a.parts.length)continue;let e=a.parts.filter(e=>{if(!e||"object"!=typeof e)return!1;let t=e.type,a=e.state;return(!("string"==typeof t&&("dynamic-tool"===t||t.startsWith("tool-")))||"output-available"===a||"output-error"===a)&&!0});0!==e.length&&t.push((0,eu._)((0,ec._)({},a),{parts:e}))}return t.map(e=>(0,ec._)({id:e.id,role:e.role,parts:e.parts},e.metadata&&{metadata:e.metadata}))}function iW(e){return e.filter(e=>!("assistant"===e.role&&(!Array.isArray(e.parts)||0===e.parts.length)))}function i$(e){let{includeHidden:t=!0}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(let r=e.length-1;r>=0;r--){var a;if("user"===e[r].role&&(t||null==(a=e[r].metadata)||!a.isHiddenMessage))return{message:e[r],index:r}}}function iG(e,t){let a=0,r=e.map(e=>{if(!Array.isArray(e.parts))return e;let t=!1,r=e.parts.map(e=>{if(!s4(e))return e;let r=e.input;if("string"!=typeof r)return e;let n=iq(r);return n!==r&&"object"==typeof n&&null!==n?(t=!0,a++,(0,eu._)((0,ec._)({},e),{input:n})):e});return t?(0,eu._)((0,ec._)({},e),{parts:r}):e});return a>0&&ib.loggers.aiChat.warn("sanitizeToolInputsInMessages: Repaired stringified tool inputs",{source:t.source,repairCount:a,messageCount:e.length}),r}e.s(["coerceStringifiedToolInput",0,iq],865859),e.s(["extractTextFromMessage",0,function(e){let t=null==e?void 0:e.parts;return Array.isArray(t)?t.filter(e=>"text"===e.type).map(e=>e.text).join("\n"):""},"getLastAssistantMessage",0,function(e){for(let t=e.length-1;t>=0;t--)if("assistant"===e[t].role)return e[t]},"getLastUserMessage",0,function(e){var t;let{includeHidden:a=!0}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return null==(t=i$(e,{includeHidden:a}))?void 0:t.message},"getLastUserMessageWithIndex",0,i$,"isChatToolPart",0,function(e){return s4(e)},"isMessageTruncated",0,function(e){return!!e&&"assistant"===e.role&&e.parts.some(e=>{var t;return"data-response-metadata"===e.type&&(null==(t=e.data)?void 0:t.finishReason)==="length"})},"isSourceUrlPart",0,function(e){return"source-url"===e.type},"mergeMessages",0,function(e,t){let a=new Map,r=e.slice();for(let t=0;t<e.length;t++)a.set(e[t].id,t);for(let e of t){let t=a.get(e.id);void 0!==t?r[t]=e:(a.set(e.id,r.length),r.push(e))}return r},"removeEmptyAssistantMessages",0,iW,"sanitizeMessagesForStorage",0,iJ,"sanitizeToolInputsInMessages",0,iG,"validateMessages",0,iH],849148);
2let iY="chats-metadata",iK="chats-messages",iQ=null,iX=null,i0=null;function i1(){iQ=null,iX=null}function i2(e){if(!window.indexedDB)return ib.loggers.aiChatStore.debug("â ï¸ IndexedDB not available"),null;let t=function(){try{var e;let t=(0,id.readPersistedAuth)(),a=null==t||null==(e=t.user)?void 0:e.id;if(!a)return null;return a.toString()}catch(e){return ib.loggers.aiChatStore.error("â ï¸ Could not read user id from persisted auth",{error:e}),console.error("Could not read user id from persisted auth",e),(0,ip.captureAiChatErrorOnSentry)(e,{stage:"storage",fingerprint:["storage","user-id-not-found"],level:"error"}),null}}();if(!t)return null!==i0&&(i1(),i0=null),ib.loggers.aiChatStore.debug("â ï¸ No user id available for AI chat ".concat(e," store")),null;let a="".concat("ai-chat",":").concat(t);return i0!==a&&(i1(),i0=a),a}function i4(e,t){let a=new Promise((t,a)=>{let r=indexedDB.open(e,1);r.addEventListener("upgradeneeded",()=>{let e=r.result;e.objectStoreNames.contains(iY)||e.createObjectStore(iY),e.objectStoreNames.contains(iK)||e.createObjectStore(iK)}),r.addEventListener("success",()=>t(r.result)),r.addEventListener("error",()=>{var e;return a(null!=(e=r.error)?e:Error("IndexedDB request failed"))})});return(e,r)=>a.then(a=>r(a.transaction(t,e).objectStore(t)))}function i9(){let e=i2("chats-metadata");if(!e)return null;if(iQ)return iQ;try{return ib.loggers.aiChatStore.debug("ðª Creating AI chat metadata store",{dbName:e}),iQ=i4(e,"chats-metadata"),ib.loggers.aiChatStore.debug("ðªâ
AI chat metadata store created successfully",{dbName:e}),iQ}catch(t){return iQ=null,ib.loggers.aiChatStore.error("ðªâ Error while creating AI chat metadata store",{error:t,dbName:e}),null}}function i5(){let e=i2("chats-messages");if(!e)return null;if(iX)return iX;try{return ib.loggers.aiChatStore.debug("ðª Creating AI chat messages store",{dbName:e}),iX=i4(e,"chats-messages"),ib.loggers.aiChatStore.debug("ðªâ
AI chat messages store created successfully",{dbName:e}),iX}catch(t){return iX=null,ib.loggers.aiChatStore.error("ðªâ Error while creating AI chat messages store",{error:t,dbName:e}),null}}async function i6(){let e=i9();try{if(!e)return[];let t=(await (0,im.entries)(e)).map(e=>{let[t,a]=e;return a}),a=t.filter(e=>e&&"string"==typeof e.id&&"string"==typeof e.title&&"number"==typeof e.createdAt&&"number"==typeof e.lastUpdatedAt);return a.length!==t.length&&ib.loggers.aiChatStore.debug("â ï¸ Some chat metadata was invalid and filtered",{total:t.length,valid:a.length}),a.sort((e,t)=>t.lastUpdatedAt-e.lastUpdatedAt)}catch(e){return ib.loggers.aiChatStore.error("â Error reading chats from IndexedDB",{error:e}),[]}}async function i3(e,t){let a=i9();try{if(!a)return void ib.loggers.aiChatStore.debug("â ï¸ No store available for saving metadata");await (0,im.set)(e,t,a),ib.loggers.aiChatStore.debug("ð¾ Chat metadata saved",{chatId:e})}catch(t){ib.loggers.aiChatStore.error("â Error saving chat metadata",{chatId:e,error:t})}}async function i7(e){let t=i9();try{if(!t)return;await (0,im.del)(e,t),ib.loggers.aiChatStore.debug("ðï¸ Chat metadata deleted",{chatId:e})}catch(t){ib.loggers.aiChatStore.error("â Error deleting chat metadata",{chatId:e,error:t})}}async function i8(e){let t=i5();try{if(!t)return ib.loggers.aiChatStore.debug("ðâ ï¸ No messages store available"),[];ib.loggers.aiChatStore.debug("ðâ¡ï¸ Reading messages from IndexedDB",{chatId:e});let a=await (0,im.get)(e,t),r=iH(a||[]),n=iG(r,{source:"storage-load"});return ib.loggers.aiChatStore.debug("ðâ
Messages retrieved",{chatId:e,messageCount:n.length,originalCount:(null==a?void 0:a.length)||0}),n}catch(t){return ib.loggers.aiChatStore.error("ðâ Error reading chat messages",{chatId:e,error:t}),[]}}async function oe(e,t){let a=i5();try{if(!a)return void ib.loggers.aiChatStore.error("ð¾â No messages store available");let r=iH(t),n=iW(r),s=iJ(n);ib.loggers.aiChatStore.debug("ð¾â¡ï¸ Saving messages",{chatId:e,messageCount:s.length,originalCount:t.length,afterCleanupCount:n.length}),await (0,im.set)(e,s,a),ib.loggers.aiChatStore.debug("ð¾â
Messages saved successfully",{chatId:e})}catch(t){ib.loggers.aiChatStore.error("ð¾â Error saving chat messages",{chatId:e,error:t})}}async function ot(e){let t=i5();try{if(!t)return;await (0,im.del)(e,t),ib.loggers.aiChatStore.debug("ðï¸ Chat messages deleted",{chatId:e})}catch(t){ib.loggers.aiChatStore.error("â Error deleting chat messages",{chatId:e,error:t})}}async function oa(){let e=await i6();return ib.loggers.aiChatStore.debug("ð getChatsFromStorage",{count:e.length}),e}async function or(e){ib.loggers.aiChatStore.debug("ðâ¡ï¸ getChatMessagesFromStorage c
2alled",{chatId:e});let t=await i8(e);return ib.loggers.aiChatStore.debug("ðâ
getChatMessagesFromStorage returned",{chatId:e,messageCount:t.length}),t}async function on(e,t){ib.loggers.aiChatStore.debug("ð¾â¡ï¸ saveChatMessagesToStorage called",{chatId:e,count:t.length}),await oe(e,t),ib.loggers.aiChatStore.debug("ð¾â
saveChatMessagesToStorage completed",{chatId:e})}async function os(e,t,a){let r=(await or(e)).map(e=>e.id===t?a(e):e);return await on(e,r),r}async function oi(e){let t,{chatId:a,messageId:r,toolCallId:n,update:s}=e,i=await or(a),o=!1,l=i.map(e=>{if(e.id!==r||!Array.isArray(e.parts))return e;let a=!1,i=e.parts.map(e=>s4(e)&&e.toolCallId===n?(a=!0,t=s(e)):e);return a?(o=!0,(0,eu._)((0,ec._)({},e),{parts:i})):e});if(!o)return ib.loggers.aiChatStore.debug("â No tool invocation found to update",{chatId:a,messageId:r,toolCallId:n}),null;await on(a,l);let c=await or(a),u=c.find(e=>e.id===r),d=null==u?void 0:u.parts.find(e=>s4(e)&&e.toolCallId===n);return t&&d&&(0,i_.default)(d,t)?(ib.loggers.aiChatStore.debug("ð¾ Tool invocation output updated",{chatId:a,messageId:r,toolCallId:n}),c):(ib.loggers.aiChatStore.error("ð¾â Tool invocation output was not persisted",{chatId:a,messageId:r,toolCallId:n}),null)}async function oo(e){return(await oa()).find(t=>t.id===e)}async function ol(e){let t=i9();if(!t)return void ib.loggers.aiChatStore.error("ð¾â No metadata store available for single chat save");try{await (0,im.set)(e.id,e,t),ib.loggers.aiChatStore.debug("ð¾ Single chat saved",{chatId:e.id})}catch(t){ib.loggers.aiChatStore.error("ð¾â Error saving single chat",{chatId:e.id,error:t})}}async function oc(e){let t=(null==e?void 0:e.id)||aK();await od([t]);let a={id:t,title:(null==e?void 0:e.title)||"New chat",createdAt:Date.now(),lastUpdatedAt:Date.now(),draftId:null==e?void 0:e.draftId,platform:null==e?void 0:e.platform,initialAccount:null==e?void 0:e.initialAccount};return ib.loggers.aiChatStore.debug("ð¾ createStorageChat",{id:t,newChat:a,platform:a.platform}),await ol(a),await on(t,[]),t}async function ou(e,t){let a=await oa(),r=a.findIndex(t=>t.id===e);ib.loggers.aiChatStore.debug("ð¾ updateChatMetadata",{chatId:e,chatIndex:r}),-1!==r&&(a[r]=(0,eu._)((0,ec._)({},a[r],t),{lastUpdatedAt:Date.now()}),await i3(e,a[r]))}async function od(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];ib.loggers.aiChatStore.debug("ð§¹ Starting empty chats cleanup",{excluded:e});let t=i9(),a=i5();if(!t||!a)return 0;try{let r=await (0,im.entries)(t),n=[];for(let[t]of r){if(e.includes(t))continue;let r=await (0,im.get)(t,a);r&&0!==r.length||n.push(t)}return n.length>0&&(await Promise.all([...n.map(e=>(0,im.del)(e,t)),...n.map(e=>(0,im.del)(e,a))]),ib.loggers.aiChatStore.debug("ð§¹ cleanupEmptyChats completed",{removedCount:n.length,removedIds:n})),n.length}catch(e){return ib.loggers.aiChatStore.error("â Error during cleanup",{error:e}),0}}function op(){let e=(0,iy.useAiChatStore)(e=>e.setSelectedChatId),t=(0,iy.useAiChatStore)(e=>e.addChatToHistory),a=(0,iv.useMaybeAppSelectedDraftId)();return(0,ig.useCallback)(async r=>{let n=(null==r?void 0:r.draftId)!==void 0?r.draftId:a,s=await oc((0,eu._)((0,ec._)({},r),{draftId:n}));return t({id:s,title:(null==r?void 0:r.title)||"New chat",createdAt:Date.now(),lastUpdatedAt:Date.now(),draftId:n,platform:null==r?void 0:r.platform,initialAccount:null==r?void 0:r.initialAccount}),e(s),s},[t,a,e])}async function oh(e){let{draft:t,messages:a}=e,r="";(null==t?void 0:t.draft_title)&&(r+="Draft title: ".concat(t.draft_title,"\n\n")),(null==t?void 0:t.preview)&&(r+="Draft content preview:\n<content>".concat(t.preview,"</draft>\n\n")),a.length&&(r+="Chat messages:\n".concat(a.filter(e=>e.parts.some(e=>"text"===e.type&&"text"in e&&e.text&&e.text.length>0)).slice(0,4).map(e=>{for(let t of e.parts)if("text"===t.type&&"text"in t)return(0,iz.default)(t.text||"",200);return""}).join("\n"),"\n\n")),((null==t?void 0:t.draft_title)||(null==t?void 0:t.preview))&&a.length&&(r+="The messages are MORE important that the draft for the title, please prioritize them."),ib.loggers.aiChatStore.debug("ð¡ generateChatTitle...",{context:r});try{var n;let e=null==(n=(await (0,ih.postToAiChatEndpoint)("generate-title",{text:r.trim()})).title)?void 0:n.trim();return ib.loggers.aiChatStore.debug("ð¡ generateChatTitle",{title:e}),e||"New chat"}catch(e){return ib.loggers.aiChatStore.debug("â ï¸ generateChatTitle failed",{error:e}),"New chat"}}e.s(["cleanupEmptyChats",0,od,"createStorageChat",0,oc,"generateChatTitle",0,oh,"getChatMessagesFromStorage",0,or,"getChatMetadata",0,oo,"getChatsFromStorage",0,oa,"saveChatMessagesToStorage",0,on,"saveSingleChatToStorage",0,ol,"updateChatMessageInStorage",0,os,"updateChatMetadata",0,ou,"updateToolInvocationOutputInStorage",0,oi,"useCreateNewStoredChat",0,op,"useDeleteAllChats",0,function(){let e=(0,iy.useAiChatStore)(e=>e.resetStore);return(0,ig.useCallback)(async()=>{let t=i9(),a=i5();
2t?(await (0,im.clear)(t),ib.loggers.aiChatStore.debug("ðï¸ Cleared all chat metadata from IndexedDB")):ib.loggers.aiChatStore.error("ð¾â No metadata store available for clearing all chats"),a?(await (0,im.clear)(a),ib.loggers.aiChatStore.debug("ðï¸ Cleared all chat messages from IndexedDB")):ib.loggers.aiChatStore.error("ð¾â No messages store available for clearing all chats"),e(),ib.loggers.aiChatStore.debug("ð¾ AI Chat completely reset - all data cleared")},[e])},"useDeleteChat",0,function(){let e=op(),t=(0,iy.useSelectedChatId)(),a=(0,iy.useAiChatStore)(e=>e.setSelectedChatId),r=(0,iy.useAiChatStore)(e=>e.setChatHistory);return(0,ig.useCallback)(async n=>{await i7(n),await ot(n),ib.loggers.aiChatStore.debug("ð¾ deleteChat",{chatId:n});let s=await oa();if(r(s),t===n)if(s.length>0)a(s[0].id),ib.loggers.aiChatStore.debug("ð¾ Selected next chat after deletion",{newChatId:s[0].id});else{let t=await e();ib.loggers.aiChatStore.debug("ð¾ Created new chat after deleting last one",{newChatId:t})}},[e,t,r,a])}],580801)}]); 3 4//# debugId=9d76fe44-efd2-7bd8-85ca-87fa3f832180 5//# sourceMappingURL=15m~ihpheh1pk.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.