@marimo-team/frontend 0.24.1-dev57 → 0.24.1-dev59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/add-cell-with-ai-DVGZNNUv.js +76 -0
- package/dist/assets/{agent-panel-D7mo8YLQ.js → agent-panel-BTY3oeHD.js} +3 -3
- package/dist/assets/cell-editor-D3YsOG7a.js +21 -0
- package/dist/assets/{chat-display-Cgg0xLir.js → chat-display-NTNQQyoE.js} +1 -1
- package/dist/assets/chat-panel-Bow0QKrA.js +4 -0
- package/dist/assets/{chat-ui-DYLpA8l4.js → chat-ui-Cg69zAqt.js} +4 -4
- package/dist/assets/{command-palette-DiT0E_K7.js → command-palette-QFmIvDcT.js} +1 -1
- package/dist/assets/{edit-page-DAC4cNKe.js → edit-page-ds4edlkF.js} +6 -6
- package/dist/assets/{index-DTQ4RS9q.js → index-B36dhEV6.js} +3 -3
- package/dist/assets/index-ecw9ngZu.css +2 -0
- package/dist/assets/{layout-D3zwsTvR.js → layout-iNJ-1JI2.js} +2 -2
- package/dist/assets/{panels-ChFSBlsU.js → panels-BbkuRtEi.js} +1 -1
- package/dist/assets/{reveal-component-BFRmOcQr.js → reveal-component-C4pF9OE7.js} +1 -1
- package/dist/assets/{run-page-MZCCEXct.js → run-page-Bo57bjbp.js} +1 -1
- package/dist/assets/{scratchpad-panel-BqYT2vj3.js → scratchpad-panel-vBIq9BfA.js} +1 -1
- package/dist/assets/{skeleton-gmxAkHfa.js → skeleton-B5iAa5n_.js} +1 -1
- package/dist/assets/{useNotebookActions-BoFJmccb.js → useNotebookActions-DGuDG0Px.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/src/components/editor/ai/__tests__/completion-utils.test.ts +0 -178
- package/src/components/editor/ai/__tests__/staged-cell-submission.test.ts +106 -0
- package/src/components/editor/ai/add-cell-with-ai.tsx +83 -62
- package/src/components/editor/ai/ai-completion-editor.tsx +71 -37
- package/src/components/editor/ai/completion-handlers.tsx +4 -0
- package/src/components/editor/ai/completion-utils.ts +0 -92
- package/src/components/editor/ai/staged-cell-submission.ts +46 -0
- package/src/components/editor/cell/StagedAICell.tsx +4 -2
- package/src/components/editor/cell/__tests__/StagedAICell.test.tsx +64 -0
- package/src/components/editor/chrome/wrapper/__tests__/pending-ai-cells.test.tsx +77 -0
- package/src/components/editor/chrome/wrapper/pending-ai-cells.tsx +8 -2
- package/src/core/ai/__tests__/staged-cells.test.ts +442 -125
- package/src/core/ai/__tests__/stream-completion-text.test.ts +74 -0
- package/src/core/ai/completion-output.ts +56 -0
- package/src/core/ai/staged-cells.ts +245 -164
- package/src/core/ai/stream-completion-text.ts +23 -6
- package/src/css/globals.css +1 -0
- package/dist/assets/add-cell-with-ai-0dqk0f7O.js +0 -77
- package/dist/assets/cell-editor-e7_o4mEh.js +0 -24
- package/dist/assets/chat-panel-BaG-5LiN.js +0 -4
- package/dist/assets/index-BrmH4-pI.css +0 -2
- package/src/core/ai/__tests__/strip-wrapping-backticks.test.ts +0 -133
- package/src/core/ai/strip-wrapping-backticks.ts +0 -88
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import{a as e,t}from"./rolldown-runtime-B0Z9INg1.js";import{a as n,c as r,d as i,l as a,r as o,t as s}from"./useEvent-xfs0Sn4r.js";import{t as c}from"./react-CBDbhulC.js";import{Ao as l,Bi as u,Bn as d,E as f,Qi as p,Ua as m,Wt as h,Xi as g,Ya as _,ai as v,bo as y,co as b,cr as x,d as S,fa as C,fo as w,gt as T,ki as ee,ko as E,la as te,ni as ne,pa as re,rt as D,tr as ie,vo as ae,xo as oe,y as se}from"./cells-DfJw5iuV.js";import{Cn as O,Cr as ce,In as k,It as le,Jn as A,Sn as ue,Tt as j,Yn as M,bt as de,cn as fe,jn as N,kt as P,lc as pe,ln as F,mr as me,un as I,vn as L,vt as he,xt as ge,zt as _e}from"./schemas-aTUejmFi.js";import{t as ve}from"./compiler-runtime-CYIjoINj.js";import{k as ye,t as be}from"./ai-model-dropdown-D2q0Cm0R.js";import{f as xe,g as R}from"./useEventListener-D27Dii_l.js";import{n as Se}from"./utils-R_pHe-RB.js";import{o as Ce}from"./config-CUBl5qBg.js";import{t as we}from"./cn-ldLVeaqm.js";import{t as Te}from"./jsx-runtime-B74pBk57.js";import{a as Ee}from"./tabs-c6mpccpH.js";import{a as De,c as Oe,p as ke,r as Ae,t as je}from"./dropdown-menu-CqNabM1f.js";import{t as Me}from"./tooltip-D7dq6bnc.js";import{t as Ne}from"./button-BMBznEru.js";import{Gt as Pe,Qt as Fe,Tt as Ie,Wt as Le,Zt as Re,at as ze,dt as Be,en as Ve,qt as He,st as Ue,ut as We,wt as Ge}from"./dist-PIe1xcZo.js";import{t as Ke}from"./createReducer-Bq-nQJiK.js";import{h as qe,n as Je,o as Ye,r as Xe}from"./dist-Dz_04liz.js";import{i as Ze}from"./strings-CpYReX2Q.js";import{r as Qe,t as $e}from"./requests-C6_IaFh7.js";import{t as et}from"./createLucideIcon-B7HeEoG2.js";import{r as tt,t as nt}from"./fileToBase64-NhpNrK5l.js";import{r as rt}from"./useNumberFormatter-DHJ9s6Vk.js";import{f as it,n as at}from"./markdown-renderer-BUBFaUWx.js";import{t as ot}from"./file-DF8n85RA.js";import{t as st}from"./image-ab13yGv4.js";import{t as ct}from"./spinner-Ck-Hgfvj.js";import{i as lt,t as ut}from"./useDeleteCell-CqYCNkza.js";import{r as dt}from"./input-DeyycFtq.js";import{a as ft,c as pt,i as mt,n as ht,o as gt,s as _t,t as vt}from"./datasource-B9lSU_L0.js";import{a as yt}from"./dist-DCc0VfiO.js";import{t as bt}from"./uuid-k9DpjH68.js";import{t as xt}from"./use-toast-DpWHUGuF.js";import{a as St}from"./session-CEdta5_Q.js";import{r as Ct}from"./useTheme-BRnykVDX.js";import{n as wt}from"./useRunCells-BwYUZxV6.js";import{n as Tt}from"./blob-Dza7uUlT.js";import{a as Et}from"./errors-DzO-nXy-.js";import{r as Dt,t as Ot}from"./esm-Dw0vvSg2.js";import{i as kt}from"./cell-link-DqJmxVu3.js";import{t as At}from"./html-to-image-DMn_7CCA.js";import{n as jt}from"./renderShortcut-D9XYVNe3.js";import{n as Mt}from"./icons-CjLa9BiH.js";import{t as Nt}from"./process-output-NwNkpkfY.js";import{i as Pt,r as Ft,t as It}from"./error-entries-BCuZmxgk.js";var Lt=et(`circle-stop`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`rect`,{x:`9`,y:`9`,width:`6`,height:`6`,rx:`1`,key:`1ssd4o`}]]),Rt=et(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),zt=et(`send-horizontal`,[[`path`,{d:`M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z`,key:`117uat`}],[`path`,{d:`M6 12h16`,key:`s4cdu5`}]]),Bt=ve(),Vt=`vercel.ai.error`,Ht=Symbol.for(Vt),Ut,Wt,Gt=class e extends (Wt=Error,Ut=Ht,Wt){constructor({name:e,message:t,cause:n}){super(t),this[Ut]=!0,this.name=e,this.cause=n}static isInstance(t){return e.hasMarker(t,Vt)}static hasMarker(e,t){let n=Symbol.for(t);return typeof e==`object`&&!!e&&n in e&&typeof e[n]==`boolean`&&e[n]===!0}};function Kt(e){return e==null?`unknown error`:typeof e==`string`?e:e instanceof Error?e.toString():JSON.stringify(e)}var qt=`AI_InvalidArgumentError`,Jt=`vercel.ai.error.${qt}`,Yt=Symbol.for(Jt),Xt,Zt,Qt=class extends (Zt=Gt,Xt=Yt,Zt){constructor({message:e,cause:t,argument:n}){super({name:qt,message:e,cause:t}),this[Xt]=!0,this.argument=n}static isInstance(e){return Gt.hasMarker(e,Jt)}},$t=`AI_JSONParseError`,en=`vercel.ai.error.${$t}`,tn=Symbol.for(en),nn,rn,an=class extends (rn=Gt,nn=tn,rn){constructor({text:e,cause:t}){super({name:$t,message:`JSON parsing failed: Text: ${e}.
|
|
2
|
-
Error message: ${Kt(t)}`,cause:t}),this[nn]=!0,this.text=e}static isInstance(e){return Gt.hasMarker(e,en)}},on=`AI_TypeValidationError`,sn=`vercel.ai.error.${on}`,cn=Symbol.for(sn),ln,un,dn=class e extends (un=Gt,ln=cn,un){constructor({value:e,cause:t,context:n}){let r=`Type validation failed`;if(n?.field&&(r+=` for ${n.field}`),n?.entityName||n?.entityId){r+=` (`;let e=[];n.entityName&&e.push(n.entityName),n.entityId&&e.push(`id: "${n.entityId}"`),r+=e.join(`, `),r+=`)`}super({name:on,message:`${r}: Value: ${JSON.stringify(e)}.
|
|
3
|
-
Error message: ${Kt(t)}`,cause:t}),this[ln]=!0,this.value=e,this.context=n}static isInstance(e){return Gt.hasMarker(e,sn)}static wrap({value:t,cause:n,context:r}){return e.isInstance(n)&&n.value===t&&n.context?.field===r?.field&&n.context?.entityName===r?.entityName&&n.context?.entityId===r?.entityId?n:new e({value:t,cause:n,context:r})}},z;(function(e){e.assertEqual=e=>{};function t(e){}e.assertIs=t;function n(e){throw Error()}e.assertNever=n,e.arrayToEnum=e=>{let t={};for(let n of e)t[n]=n;return t},e.getValidEnumValues=t=>{let n=e.objectKeys(t).filter(e=>typeof t[t[e]]!=`number`),r={};for(let e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map(function(e){return t[e]}),e.objectKeys=typeof Object.keys==`function`?e=>Object.keys(e):e=>{let t=[];for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(let n of e)if(t(n))return n},e.isInteger=typeof Number.isInteger==`function`?e=>Number.isInteger(e):e=>typeof e==`number`&&Number.isFinite(e)&&Math.floor(e)===e;function r(e,t=` | `){return e.map(e=>typeof e==`string`?`'${e}'`:e).join(t)}e.joinValues=r,e.jsonStringifyReplacer=(e,t)=>typeof t==`bigint`?t.toString():t})(z||={});var fn;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(fn||={});var B=z.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),pn=e=>{switch(typeof e){case`undefined`:return B.undefined;case`string`:return B.string;case`number`:return Number.isNaN(e)?B.nan:B.number;case`boolean`:return B.boolean;case`function`:return B.function;case`bigint`:return B.bigint;case`symbol`:return B.symbol;case`object`:return Array.isArray(e)?B.array:e===null?B.null:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?B.promise:typeof Map<`u`&&e instanceof Map?B.map:typeof Set<`u`&&e instanceof Set?B.set:typeof Date<`u`&&e instanceof Date?B.date:B.object;default:return B.unknown}},V=z.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`]),mn=class e extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name=`ZodError`,this.issues=e}format(e){let t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`)i.unionErrors.map(r);else if(i.code===`invalid_return_type`)r(i.returnTypeError);else if(i.code===`invalid_arguments`)r(i.argumentsError);else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(this),n}static assert(t){if(!(t instanceof e))throw Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,z.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=e=>e.message){let t=Object.create(null),n=[];for(let r of this.issues)if(r.path.length>0){let n=r.path[0];t[n]=t[n]||[],t[n].push(e(r))}else n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};mn.create=e=>new mn(e);var hn=(e,t)=>{let n;switch(e.code){case V.invalid_type:n=e.received===B.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case V.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,z.jsonStringifyReplacer)}`;break;case V.unrecognized_keys:n=`Unrecognized key(s) in object: ${z.joinValues(e.keys,`, `)}`;break;case V.invalid_union:n=`Invalid input`;break;case V.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${z.joinValues(e.options)}`;break;case V.invalid_enum_value:n=`Invalid enum value. Expected ${z.joinValues(e.options)}, received '${e.received}'`;break;case V.invalid_arguments:n=`Invalid function arguments`;break;case V.invalid_return_type:n=`Invalid function return type`;break;case V.invalid_date:n=`Invalid date`;break;case V.invalid_string:typeof e.validation==`object`?`includes`in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position==`number`&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):`startsWith`in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:`endsWith`in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:z.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case V.too_small:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at least`:`more than`} ${e.minimum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at least`:`over`} ${e.minimum} character(s)`:e.type===`number`||e.type===`bigint`?`Number must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${e.minimum}`:e.type===`date`?`Date must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(e.minimum))}`:`Invalid input`;break;case V.too_big:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at most`:`less than`} ${e.maximum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at most`:`under`} ${e.maximum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`bigint`?`BigInt must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`date`?`Date must be ${e.exact?`exactly`:e.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(e.maximum))}`:`Invalid input`;break;case V.custom:n=`Invalid input`;break;case V.invalid_intersection_types:n=`Intersection results could not be merged`;break;case V.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case V.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,z.assertNever(e)}return{message:n}},gn=hn;function _n(){return gn}var vn=e=>{let{data:t,path:n,errorMaps:r,issueData:i}=e,a=[...n,...i.path||[]],o={...i,path:a};if(i.message!==void 0)return{...i,path:a,message:i.message};let s=``,c=r.filter(e=>!!e).slice().reverse();for(let e of c)s=e(o,{data:t,defaultError:s}).message;return{...i,path:a,message:s}};function H(e,t){let n=_n(),r=vn({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===hn?void 0:hn].filter(e=>!!e)});e.common.issues.push(r)}var yn=class e{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(e,t){let n=[];for(let r of t){if(r.status===`aborted`)return U;r.status===`dirty`&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(t,n){let r=[];for(let e of n){let t=await e.key,n=await e.value;r.push({key:t,value:n})}return e.mergeObjectSync(t,r)}static mergeObjectSync(e,t){let n={};for(let r of t){let{key:t,value:i}=r;if(t.status===`aborted`||i.status===`aborted`)return U;t.status===`dirty`&&e.dirty(),i.status===`dirty`&&e.dirty(),t.value!==`__proto__`&&(i.value!==void 0||r.alwaysSet)&&(n[t.value]=i.value)}return{status:e.value,value:n}}},U=Object.freeze({status:`aborted`}),bn=e=>({status:`dirty`,value:e}),xn=e=>({status:`valid`,value:e}),Sn=e=>e.status===`aborted`,Cn=e=>e.status===`dirty`,wn=e=>e.status===`valid`,Tn=e=>typeof Promise<`u`&&e instanceof Promise,W;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(W||={});var En=class{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=r}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}},Dn=(e,t)=>{if(wn(t))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 mn(e.common.issues);return this._error=t,this._error}}};function G(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{let{message:a}=e;return t.code===`invalid_enum_value`?{message:a??i.defaultError}:i.data===void 0?{message:a??r??i.defaultError}:t.code===`invalid_type`?{message:a??n??i.defaultError}:{message:i.defaultError}},description:i}}var K=class{get description(){return this._def.description}_getType(e){return pn(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:pn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new yn,ctx:{common:e.parent.common,data:e.data,parsedType:pn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(Tn(t))throw Error(`Synchronous parse encountered promise.`);return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:pn(e)};return Dn(n,this._parseSync({data:e,path:n.path,parent:n}))}"~validate"(e){let t={common:{issues:[],async:!!this[`~standard`].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:pn(e)};if(!this[`~standard`].async)try{let n=this._parseSync({data:e,path:[],parent:t});return wn(n)?{value:n.value}:{issues:t.common.issues}}catch(e){e?.message?.toLowerCase()?.includes(`encountered`)&&(this[`~standard`].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(e=>wn(e)?{value:e.value}:{issues:t.common.issues})}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:pn(e)},r=this._parse({data:e,path:n.path,parent:n});return Dn(n,await(Tn(r)?r:Promise.resolve(r)))}refine(e,t){let n=e=>typeof t==`string`||t===void 0?{message:t}:typeof t==`function`?t(e):t;return this._refinement((t,r)=>{let i=e(t),a=()=>r.addIssue({code:V.custom,...n(t)});return typeof Promise<`u`&&i instanceof Promise?i.then(e=>e?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof t==`function`?t(n,r):t),!1))}_refinement(e){return new Ar({schema:this,typeName:q.ZodEffects,effect:{type:`refinement`,refinement:e}})}superRefine(e){return this._refinement(e)}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)}}optional(){return jr.create(this,this._def)}nullable(){return Mr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return dr.create(this)}promise(){return kr.create(this,this._def)}or(e){return mr.create([this,e],this._def)}and(e){return vr.create(this,e,this._def)}transform(e){return new Ar({...G(this._def),schema:this,typeName:q.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new Nr({...G(this._def),innerType:this,defaultValue:t,typeName:q.ZodDefault})}brand(){return new Ir({typeName:q.ZodBranded,type:this,...G(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new Pr({...G(this._def),innerType:this,catchValue:t,typeName:q.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Lr.create(this,e)}readonly(){return Rr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},On=/^c[^\s-]{8,}$/i,kn=/^[0-9a-z]+$/,An=/^[0-9A-HJKMNP-TV-Z]{26}$/i,jn=/^[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,Mn=/^[a-z0-9_-]{21}$/i,Nn=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Pn=/^[-+]?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)?)??$/,Fn=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,In=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,Ln,Rn=/^(?:(?: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])$/,zn=/^(?:(?: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])$/,Bn=/^(([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]))$/,Vn=/^(([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])$/,Hn=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Un=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Wn=`((\\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])))`,Gn=RegExp(`^${Wn}$`);function Kn(e){let t=`[0-5]\\d`;e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision??(t=`${t}(\\.\\d+)?`);let n=e.precision?`+`:`?`;return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function qn(e){return RegExp(`^${Kn(e)}$`)}function Jn(e){let t=`${Wn}T${Kn(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function Yn(e,t){return!!((t===`v4`||!t)&&Rn.test(e)||(t===`v6`||!t)&&Bn.test(e))}function Xn(e,t){if(!Nn.test(e))return!1;try{let[n]=e.split(`.`);if(!n)return!1;let r=n.replace(/-/g,`+`).replace(/_/g,`/`).padEnd(n.length+(4-n.length%4)%4,`=`),i=JSON.parse(atob(r));return!(typeof i!=`object`||!i||`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&i.alg!==t)}catch{return!1}}function Zn(e,t){return!!((t===`v4`||!t)&&zn.test(e)||(t===`v6`||!t)&&Vn.test(e))}var Qn=class e extends K{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==B.string){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.string,received:t.parsedType}),U}let t=new yn,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.length<r.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:V.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`max`)e.data.length>r.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:V.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`length`){let i=e.data.length>r.value,a=e.data.length<r.value;(i||a)&&(n=this._getOrReturnCtx(e,n),i?H(n,{code:V.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}):a&&H(n,{code:V.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}),t.dirty())}else if(r.kind===`email`)Fn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`email`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`emoji`)Ln||=new RegExp(In,`u`),Ln.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`emoji`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`uuid`)jn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`uuid`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`nanoid`)Mn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`nanoid`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid`)On.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`cuid`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid2`)kn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`cuid2`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`ulid`)An.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`ulid`,code:V.invalid_string,message:r.message}),t.dirty());else if(r.kind===`url`)try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),H(n,{validation:`url`,code:V.invalid_string,message:r.message}),t.dirty()}else r.kind===`regex`?(r.regex.lastIndex=0,r.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`regex`,code:V.invalid_string,message:r.message}),t.dirty())):r.kind===`trim`?e.data=e.data.trim():r.kind===`includes`?e.data.includes(r.value,r.position)||(n=this._getOrReturnCtx(e,n),H(n,{code:V.invalid_string,validation:{includes:r.value,position:r.position},message:r.message}),t.dirty()):r.kind===`toLowerCase`?e.data=e.data.toLowerCase():r.kind===`toUpperCase`?e.data=e.data.toUpperCase():r.kind===`startsWith`?e.data.startsWith(r.value)||(n=this._getOrReturnCtx(e,n),H(n,{code:V.invalid_string,validation:{startsWith:r.value},message:r.message}),t.dirty()):r.kind===`endsWith`?e.data.endsWith(r.value)||(n=this._getOrReturnCtx(e,n),H(n,{code:V.invalid_string,validation:{endsWith:r.value},message:r.message}),t.dirty()):r.kind===`datetime`?Jn(r).test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{code:V.invalid_string,validation:`datetime`,message:r.message}),t.dirty()):r.kind===`date`?Gn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{code:V.invalid_string,validation:`date`,message:r.message}),t.dirty()):r.kind===`time`?qn(r).test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{code:V.invalid_string,validation:`time`,message:r.message}),t.dirty()):r.kind===`duration`?Pn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`duration`,code:V.invalid_string,message:r.message}),t.dirty()):r.kind===`ip`?Yn(e.data,r.version)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`ip`,code:V.invalid_string,message:r.message}),t.dirty()):r.kind===`jwt`?Xn(e.data,r.alg)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`jwt`,code:V.invalid_string,message:r.message}),t.dirty()):r.kind===`cidr`?Zn(e.data,r.version)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`cidr`,code:V.invalid_string,message:r.message}),t.dirty()):r.kind===`base64`?Hn.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`base64`,code:V.invalid_string,message:r.message}),t.dirty()):r.kind===`base64url`?Un.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:`base64url`,code:V.invalid_string,message:r.message}),t.dirty()):z.assertNever(r);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(t=>e.test(t),{validation:t,code:V.invalid_string,...W.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...W.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...W.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...W.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...W.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...W.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...W.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...W.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...W.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...W.errToObj(e)})}base64url(e){return this._addCheck({kind:`base64url`,...W.errToObj(e)})}jwt(e){return this._addCheck({kind:`jwt`,...W.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...W.errToObj(e)})}cidr(e){return this._addCheck({kind:`cidr`,...W.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...W.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...W.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...W.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...W.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...W.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...W.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...W.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...W.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...W.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...W.errToObj(t)})}nonempty(e){return this.min(1,W.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind===`datetime`)}get isDate(){return!!this._def.checks.find(e=>e.kind===`date`)}get isTime(){return!!this._def.checks.find(e=>e.kind===`time`)}get isDuration(){return!!this._def.checks.find(e=>e.kind===`duration`)}get isEmail(){return!!this._def.checks.find(e=>e.kind===`email`)}get isURL(){return!!this._def.checks.find(e=>e.kind===`url`)}get isEmoji(){return!!this._def.checks.find(e=>e.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(e=>e.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(e=>e.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(e=>e.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(e=>e.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(e=>e.kind===`ulid`)}get isIP(){return!!this._def.checks.find(e=>e.kind===`ip`)}get isCIDR(){return!!this._def.checks.find(e=>e.kind===`cidr`)}get isBase64(){return!!this._def.checks.find(e=>e.kind===`base64`)}get isBase64url(){return!!this._def.checks.find(e=>e.kind===`base64url`)}get minLength(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};Qn.create=e=>new Qn({checks:[],typeName:q.ZodString,coerce:e?.coerce??!1,...G(e)});function $n(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=(t.toString().split(`.`)[1]||``).length,i=n>r?n:r;return Number.parseInt(e.toFixed(i).replace(`.`,``))%Number.parseInt(t.toFixed(i).replace(`.`,``))/10**i}var er=class e extends K{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==B.number){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.number,received:t.parsedType}),U}let t,n=new yn;for(let r of this._def.checks)r.kind===`int`?z.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),H(t,{code:V.invalid_type,expected:`integer`,received:`float`,message:r.message}),n.dirty()):r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:V.too_small,minimum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:V.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?$n(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),H(t,{code:V.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),H(t,{code:V.not_finite,message:r.message}),n.dirty()):z.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,W.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,W.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,W.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,W.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:W.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:W.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:W.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:W.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:W.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:W.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:W.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:W.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:W.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:W.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind===`int`||e.kind===`multipleOf`&&z.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks)if(n.kind===`finite`||n.kind===`int`||n.kind===`multipleOf`)return!0;else n.kind===`min`?(t===null||n.value>t)&&(t=n.value):n.kind===`max`&&(e===null||n.value<e)&&(e=n.value);return Number.isFinite(t)&&Number.isFinite(e)}};er.create=e=>new er({checks:[],typeName:q.ZodNumber,coerce:e?.coerce||!1,...G(e)});var tr=class e extends K{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==B.bigint)return this._getInvalidInput(e);let t,n=new yn;for(let r of this._def.checks)r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:V.too_small,type:`bigint`,minimum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:V.too_big,type:`bigint`,maximum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`multipleOf`?e.data%r.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),H(t,{code:V.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):z.assertNever(r);return{status:n.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.bigint,received:t.parsedType}),U}gte(e,t){return this.setLimit(`min`,e,!0,W.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,W.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,W.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,W.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:W.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:W.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:W.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:W.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:W.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:W.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};tr.create=e=>new tr({checks:[],typeName:q.ZodBigInt,coerce:e?.coerce??!1,...G(e)});var nr=class extends K{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==B.boolean){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.boolean,received:t.parsedType}),U}return xn(e.data)}};nr.create=e=>new nr({typeName:q.ZodBoolean,coerce:e?.coerce||!1,...G(e)});var rr=class e extends K{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==B.date){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.date,received:t.parsedType}),U}if(Number.isNaN(e.data.getTime()))return H(this._getOrReturnCtx(e),{code:V.invalid_date}),U;let t=new yn,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()<r.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:V.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:`date`}),t.dirty()):r.kind===`max`?e.data.getTime()>r.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:V.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):z.assertNever(r);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:`min`,value:e.getTime(),message:W.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:W.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e==null?null:new Date(e)}get maxDate(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e==null?null:new Date(e)}};rr.create=e=>new rr({checks:[],coerce:e?.coerce||!1,typeName:q.ZodDate,...G(e)});var ir=class extends K{_parse(e){if(this._getType(e)!==B.symbol){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.symbol,received:t.parsedType}),U}return xn(e.data)}};ir.create=e=>new ir({typeName:q.ZodSymbol,...G(e)});var ar=class extends K{_parse(e){if(this._getType(e)!==B.undefined){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.undefined,received:t.parsedType}),U}return xn(e.data)}};ar.create=e=>new ar({typeName:q.ZodUndefined,...G(e)});var or=class extends K{_parse(e){if(this._getType(e)!==B.null){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.null,received:t.parsedType}),U}return xn(e.data)}};or.create=e=>new or({typeName:q.ZodNull,...G(e)});var sr=class extends K{constructor(){super(...arguments),this._any=!0}_parse(e){return xn(e.data)}};sr.create=e=>new sr({typeName:q.ZodAny,...G(e)});var cr=class extends K{constructor(){super(...arguments),this._unknown=!0}_parse(e){return xn(e.data)}};cr.create=e=>new cr({typeName:q.ZodUnknown,...G(e)});var lr=class extends K{_parse(e){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.never,received:t.parsedType}),U}};lr.create=e=>new lr({typeName:q.ZodNever,...G(e)});var ur=class extends K{_parse(e){if(this._getType(e)!==B.undefined){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.void,received:t.parsedType}),U}return xn(e.data)}};ur.create=e=>new ur({typeName:q.ZodVoid,...G(e)});var dr=class e extends K{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==B.array)return H(t,{code:V.invalid_type,expected:B.array,received:t.parsedType}),U;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.length<r.exactLength.value;(e||i)&&(H(t,{code:e?V.too_big:V.too_small,minimum:i?r.exactLength.value:void 0,maximum:e?r.exactLength.value:void 0,type:`array`,inclusive:!0,exact:!0,message:r.exactLength.message}),n.dirty())}if(r.minLength!==null&&t.data.length<r.minLength.value&&(H(t,{code:V.too_small,minimum:r.minLength.value,type:`array`,inclusive:!0,exact:!1,message:r.minLength.message}),n.dirty()),r.maxLength!==null&&t.data.length>r.maxLength.value&&(H(t,{code:V.too_big,maximum:r.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((e,n)=>r.type._parseAsync(new En(t,e,t.path,n)))).then(e=>yn.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new En(t,e,t.path,n)));return yn.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:W.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:W.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:W.toString(n)}})}nonempty(e){return this.min(1,e)}};dr.create=(e,t)=>new dr({type:e,minLength:null,maxLength:null,exactLength:null,typeName:q.ZodArray,...G(t)});function fr(e){if(e instanceof pr){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=jr.create(fr(r))}return new pr({...e._def,shape:()=>t})}return e instanceof dr?new dr({...e._def,type:fr(e.element)}):e instanceof jr?jr.create(fr(e.unwrap())):e instanceof Mr?Mr.create(fr(e.unwrap())):e instanceof yr?yr.create(e.items.map(e=>fr(e))):e}var pr=class e extends K{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=z.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==B.object){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.object,received:t.parsedType}),U}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof lr&&this._def.unknownKeys===`strip`))for(let e in n.data)i.includes(e)||a.push(e);let o=[];for(let e of i){let t=r[e],i=n.data[e];o.push({key:{status:`valid`,value:e},value:t._parse(new En(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof lr){let e=this._def.unknownKeys;if(e===`passthrough`)for(let e of a)o.push({key:{status:`valid`,value:e},value:{status:`valid`,value:n.data[e]}});else if(e===`strict`)a.length>0&&(H(n,{code:V.unrecognized_keys,keys:a}),t.dirty());else if(e!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let e=this._def.catchall;for(let t of a){let r=n.data[t];o.push({key:{status:`valid`,value:t},value:e._parse(new En(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of o){let n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>yn.mergeObjectSync(t,e)):yn.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return W.errToObj,new e({...this._def,unknownKeys:`strict`,...t===void 0?{}:{errorMap:(e,n)=>{let r=this._def.errorMap?.(e,n).message??n.defaultError;return e.code===`unrecognized_keys`?{message:W.errToObj(t).message??r}:{message:r}}}})}strip(){return new e({...this._def,unknownKeys:`strip`})}passthrough(){return new e({...this._def,unknownKeys:`passthrough`})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:q.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let e of z.objectKeys(t))t[e]&&this.shape[e]&&(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let e of z.objectKeys(this.shape))t[e]||(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}deepPartial(){return fr(this)}partial(t){let n={};for(let e of z.objectKeys(this.shape)){let r=this.shape[e];n[e]=t&&!t[e]?r:r.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let e of z.objectKeys(this.shape))if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof jr;)t=t._def.innerType;n[e]=t}return new e({...this._def,shape:()=>n})}keyof(){return Er(z.objectKeys(this.shape))}};pr.create=(e,t)=>new pr({shape:()=>e,unknownKeys:`strip`,catchall:lr.create(),typeName:q.ZodObject,...G(t)}),pr.strictCreate=(e,t)=>new pr({shape:()=>e,unknownKeys:`strict`,catchall:lr.create(),typeName:q.ZodObject,...G(t)}),pr.lazycreate=(e,t)=>new pr({shape:e,unknownKeys:`strip`,catchall:lr.create(),typeName:q.ZodObject,...G(t)});var mr=class extends K{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function r(e){for(let t of e)if(t.result.status===`valid`)return t.result;for(let n of e)if(n.result.status===`dirty`)return t.common.issues.push(...n.ctx.common.issues),n.result;let n=e.map(e=>new mn(e.ctx.common.issues));return H(t,{code:V.invalid_union,unionErrors:n}),U}if(t.common.async)return Promise.all(n.map(async e=>{let n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}})).then(r);{let e,r=[];for(let i of n){let n={...t,common:{...t.common,issues:[]},parent:null},a=i._parseSync({data:t.data,path:t.path,parent:n});if(a.status===`valid`)return a;a.status===`dirty`&&!e&&(e={result:a,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let i=r.map(e=>new mn(e));return H(t,{code:V.invalid_union,unionErrors:i}),U}}get options(){return this._def.options}};mr.create=(e,t)=>new mr({options:e,typeName:q.ZodUnion,...G(t)});var hr=e=>e instanceof wr?hr(e.schema):e instanceof Ar?hr(e.innerType()):e instanceof Tr?[e.value]:e instanceof Dr?e.options:e instanceof Or?z.objectValues(e.enum):e instanceof Nr?hr(e._def.innerType):e instanceof ar?[void 0]:e instanceof or?[null]:e instanceof jr?[void 0,...hr(e.unwrap())]:e instanceof Mr?[null,...hr(e.unwrap())]:e instanceof Ir||e instanceof Rr?hr(e.unwrap()):e instanceof Pr?hr(e._def.innerType):[],gr=class e extends K{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==B.object)return H(t,{code:V.invalid_type,expected:B.object,received:t.parsedType}),U;let n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(H(t,{code:V.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),U)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let i=new Map;for(let e of n){let n=hr(e.shape[t]);if(!n.length)throw Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let r of n){if(i.has(r))throw Error(`Discriminator property ${String(t)} has duplicate value ${String(r)}`);i.set(r,e)}}return new e({typeName:q.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...G(r)})}};function _r(e,t){let n=pn(e),r=pn(t);if(e===t)return{valid:!0,data:e};if(n===B.object&&r===B.object){let n=z.objectKeys(t),r=z.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=_r(e[n],t[n]);if(!r.valid)return{valid:!1};i[n]=r.data}return{valid:!0,data:i}}if(n===B.array&&r===B.array){if(e.length!==t.length)return{valid:!1};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=_r(i,a);if(!o.valid)return{valid:!1};n.push(o.data)}return{valid:!0,data:n}}return n===B.date&&r===B.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var vr=class extends K{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=(e,r)=>{if(Sn(e)||Sn(r))return U;let i=_r(e.value,r.value);return i.valid?((Cn(e)||Cn(r))&&t.dirty(),{status:t.value,value:i.data}):(H(n,{code:V.invalid_intersection_types}),U)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([e,t])=>r(e,t)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};vr.create=(e,t,n)=>new vr({left:e,right:t,typeName:q.ZodIntersection,...G(n)});var yr=class e extends K{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==B.array)return H(n,{code:V.invalid_type,expected:B.array,received:n.parsedType}),U;if(n.data.length<this._def.items.length)return H(n,{code:V.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),U;!this._def.rest&&n.data.length>this._def.items.length&&(H(n,{code:V.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),t.dirty());let r=[...n.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new En(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>yn.mergeArray(t,e)):yn.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};yr.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new yr({items:e,typeName:q.ZodTuple,rest:null,...G(t)})};var br=class e extends K{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==B.object)return H(n,{code:V.invalid_type,expected:B.object,received:n.parsedType}),U;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new En(n,e,n.path,e)),value:a._parse(new En(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?yn.mergeObjectAsync(t,r):yn.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof K?new e({keyType:t,valueType:n,typeName:q.ZodRecord,...G(r)}):new e({keyType:Qn.create(),valueType:t,typeName:q.ZodRecord,...G(n)})}},xr=class extends K{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==B.map)return H(n,{code:V.invalid_type,expected:B.map,received:n.parsedType}),U;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new En(n,e,n.path,[a,`key`])),value:i._parse(new En(n,t,n.path,[a,`value`]))}));if(n.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let n of a){let r=await n.key,i=await n.value;if(r.status===`aborted`||i.status===`aborted`)return U;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}})}{let e=new Map;for(let n of a){let r=n.key,i=n.value;if(r.status===`aborted`||i.status===`aborted`)return U;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};xr.create=(e,t,n)=>new xr({valueType:t,keyType:e,typeName:q.ZodMap,...G(n)});var Sr=class e extends K{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==B.set)return H(n,{code:V.invalid_type,expected:B.set,received:n.parsedType}),U;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(H(n,{code:V.too_small,minimum:r.minSize.value,type:`set`,inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),r.maxSize!==null&&n.data.size>r.maxSize.value&&(H(n,{code:V.too_big,maximum:r.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let i=this._def.valueType;function a(e){let n=new Set;for(let r of e){if(r.status===`aborted`)return U;r.status===`dirty`&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}let o=[...n.data.values()].map((e,t)=>i._parse(new En(n,e,n.path,t)));return n.common.async?Promise.all(o).then(e=>a(e)):a(o)}min(t,n){return new e({...this._def,minSize:{value:t,message:W.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:W.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};Sr.create=(e,t)=>new Sr({valueType:e,minSize:null,maxSize:null,typeName:q.ZodSet,...G(t)});var Cr=class e extends K{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==B.function)return H(t,{code:V.invalid_type,expected:B.function,received:t.parsedType}),U;function n(e,n){return vn({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,_n(),hn].filter(e=>!!e),issueData:{code:V.invalid_arguments,argumentsError:n}})}function r(e,n){return vn({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,_n(),hn].filter(e=>!!e),issueData:{code:V.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof kr){let e=this;return xn(async function(...t){let o=new mn([]),s=await e._def.args.parseAsync(t,i).catch(e=>{throw o.addIssue(n(t,e)),o}),c=await Reflect.apply(a,this,s);return await e._def.returns._def.type.parseAsync(c,i).catch(e=>{throw o.addIssue(r(c,e)),o})})}{let e=this;return xn(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new mn([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new mn([r(s,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:yr.create(t).rest(cr.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,n,r){return new e({args:t||yr.create([]).rest(cr.create()),returns:n||cr.create(),typeName:q.ZodFunction,...G(r)})}},wr=class extends K{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})}};wr.create=(e,t)=>new wr({getter:e,typeName:q.ZodLazy,...G(t)});var Tr=class extends K{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return H(t,{received:t.data,code:V.invalid_literal,expected:this._def.value}),U}return{status:`valid`,value:e.data}}get value(){return this._def.value}};Tr.create=(e,t)=>new Tr({value:e,typeName:q.ZodLiteral,...G(t)});function Er(e,t){return new Dr({values:e,typeName:q.ZodEnum,...G(t)})}var Dr=class e extends K{_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return H(t,{expected:z.joinValues(n),received:t.parsedType,code:V.invalid_type}),U}if(this._cache||=new Set(this._def.values),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return H(t,{received:t.data,code:V.invalid_enum_value,options:n}),U}return xn(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(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...n})}};Dr.create=Er;var Or=class extends K{_parse(e){let t=z.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==B.string&&n.parsedType!==B.number){let e=z.objectValues(t);return H(n,{expected:z.joinValues(e),received:n.parsedType,code:V.invalid_type}),U}if(this._cache||=new Set(z.getValidEnumValues(this._def.values)),!this._cache.has(e.data)){let e=z.objectValues(t);return H(n,{received:n.data,code:V.invalid_enum_value,options:e}),U}return xn(e.data)}get enum(){return this._def.values}};Or.create=(e,t)=>new Or({values:e,typeName:q.ZodNativeEnum,...G(t)});var kr=class extends K{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==B.promise&&t.common.async===!1?(H(t,{code:V.invalid_type,expected:B.promise,received:t.parsedType}),U):xn((t.parsedType===B.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};kr.create=(e,t)=>new kr({type:e,typeName:q.ZodPromise,...G(t)});var Ar=class extends K{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:e=>{H(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type===`preprocess`){let e=r.transform(n.data,i);if(n.common.async)return Promise.resolve(e).then(async e=>{if(t.value===`aborted`)return U;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?U:r.status===`dirty`||t.value===`dirty`?bn(r.value):r});{if(t.value===`aborted`)return U;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?U:r.status===`dirty`||t.value===`dirty`?bn(r.value):r}}if(r.type===`refinement`){let e=e=>{let t=r.refinement(e,i);if(n.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(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return r.status===`aborted`?U:(r.status===`dirty`&&t.dirty(),e(r.value),{status:t.value,value:r.value})}return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(n=>n.status===`aborted`?U:(n.status===`dirty`&&t.dirty(),e(n.value).then(()=>({status:t.value,value:n.value}))))}if(r.type===`transform`){if(n.common.async===!1){let e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!wn(e))return U;let a=r.transform(e.value,i);if(a instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:t.value,value:a}}return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(e=>wn(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):U)}z.assertNever(r)}};Ar.create=(e,t,n)=>new Ar({schema:e,typeName:q.ZodEffects,effect:t,...G(n)}),Ar.createWithPreprocess=(e,t,n)=>new Ar({schema:t,effect:{type:`preprocess`,transform:e},typeName:q.ZodEffects,...G(n)});var jr=class extends K{_parse(e){return this._getType(e)===B.undefined?xn(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};jr.create=(e,t)=>new jr({innerType:e,typeName:q.ZodOptional,...G(t)});var Mr=class extends K{_parse(e){return this._getType(e)===B.null?xn(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Mr.create=(e,t)=>new Mr({innerType:e,typeName:q.ZodNullable,...G(t)});var Nr=class extends K{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===B.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Nr.create=(e,t)=>new Nr({innerType:e,typeName:q.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...G(t)});var Pr=class extends K{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Tn(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new mn(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new mn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Pr.create=(e,t)=>new Pr({innerType:e,typeName:q.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...G(t)});var Fr=class extends K{_parse(e){if(this._getType(e)!==B.nan){let t=this._getOrReturnCtx(e);return H(t,{code:V.invalid_type,expected:B.nan,received:t.parsedType}),U}return{status:`valid`,value:e.data}}};Fr.create=e=>new Fr({typeName:q.ZodNaN,...G(e)});var Ir=class extends K{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},Lr=class e extends K{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?U:e.status===`dirty`?(t.dirty(),bn(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})();{let e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?U:e.status===`dirty`?(t.dirty(),{status:`dirty`,value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(t,n){return new e({in:t,out:n,typeName:q.ZodPipeline})}},Rr=class extends K{_parse(e){let t=this._def.innerType._parse(e),n=e=>(wn(e)&&(e.value=Object.freeze(e.value)),e);return Tn(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Rr.create=(e,t)=>new Rr({innerType:e,typeName:q.ZodReadonly,...G(t)}),pr.lazycreate;var q;(function(e){e.ZodString=`ZodString`,e.ZodNumber=`ZodNumber`,e.ZodNaN=`ZodNaN`,e.ZodBigInt=`ZodBigInt`,e.ZodBoolean=`ZodBoolean`,e.ZodDate=`ZodDate`,e.ZodSymbol=`ZodSymbol`,e.ZodUndefined=`ZodUndefined`,e.ZodNull=`ZodNull`,e.ZodAny=`ZodAny`,e.ZodUnknown=`ZodUnknown`,e.ZodNever=`ZodNever`,e.ZodVoid=`ZodVoid`,e.ZodArray=`ZodArray`,e.ZodObject=`ZodObject`,e.ZodUnion=`ZodUnion`,e.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,e.ZodIntersection=`ZodIntersection`,e.ZodTuple=`ZodTuple`,e.ZodRecord=`ZodRecord`,e.ZodMap=`ZodMap`,e.ZodSet=`ZodSet`,e.ZodFunction=`ZodFunction`,e.ZodLazy=`ZodLazy`,e.ZodLiteral=`ZodLiteral`,e.ZodEnum=`ZodEnum`,e.ZodEffects=`ZodEffects`,e.ZodNativeEnum=`ZodNativeEnum`,e.ZodOptional=`ZodOptional`,e.ZodNullable=`ZodNullable`,e.ZodDefault=`ZodDefault`,e.ZodCatch=`ZodCatch`,e.ZodPromise=`ZodPromise`,e.ZodBranded=`ZodBranded`,e.ZodPipeline=`ZodPipeline`,e.ZodReadonly=`ZodReadonly`})(q||={}),Qn.create,er.create,Fr.create,tr.create,nr.create,rr.create,ir.create,ar.create,or.create,sr.create,cr.create,lr.create,ur.create,dr.create,pr.create,pr.strictCreate,mr.create,gr.create,vr.create,yr.create,br.create,xr.create,Sr.create,Cr.create,wr.create,Tr.create,Dr.create,Or.create,kr.create,Ar.create,jr.create,Mr.create,Ar.createWithPreprocess,Lr.create;var zr=class 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}},Br=10,Vr=13,Hr=32;function Ur(e){}function Wr(e){if(typeof e==`function`)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=Ur,onError:n=Ur,onRetry:r=Ur,onComment:i,maxBufferSize:a}=e,o=[],s=0,c=!0,l,u=``,d=0,f,p=!1;function m(e){if(p)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(c&&(c=!1,e.charCodeAt(0)===239&&e.charCodeAt(1)===187&&e.charCodeAt(2)===191&&(e=e.slice(3))),o.length===0){let t=g(e);t!==``&&(o.push(t),s=t.length),h();return}if(e.indexOf(`
|
|
4
|
-
`)===-1&&e.indexOf(`\r`)===-1){o.push(e),s+=e.length,h();return}o.push(e);let t=o.join(``);o.length=0,s=0;let n=g(t);n!==``&&(o.push(n),s=n.length),h()}function h(){a!==void 0&&(s+u.length<=a||(p=!0,o.length=0,s=0,l=void 0,u=``,d=0,f=void 0,n(new zr(`Buffered data exceeded max buffer size of ${a} characters`,{type:`max-buffer-size-exceeded`}))))}function g(e){let n=0;if(e.indexOf(`\r`)===-1){let r=e.indexOf(`
|
|
5
|
-
`,n);for(;r!==-1;){if(n===r){d>0&&t({id:l,event:f,data:u}),l=void 0,u=``,d=0,f=void 0,n=r+1,r=e.indexOf(`
|
|
6
|
-
`,n);continue}let i=e.charCodeAt(n);if(Gr(e,n,i)){let i=e.charCodeAt(n+5)===Hr?n+6:n+5,a=e.slice(i,r);if(d===0&&e.charCodeAt(r+1)===Br){t({id:l,event:f,data:a}),l=void 0,u=``,f=void 0,n=r+2,r=e.indexOf(`
|
|
7
|
-
`,n);continue}u=d===0?a:`${u}
|
|
8
|
-
${a}`,d++}else Kr(e,n,i)?f=e.slice(e.charCodeAt(n+6)===Hr?n+7:n+6,r)||void 0:_(e,n,r);n=r+1,r=e.indexOf(`
|
|
9
|
-
`,n)}return e.slice(n)}for(;n<e.length;){let t=e.indexOf(`\r`,n),r=e.indexOf(`
|
|
10
|
-
`,n),i=-1;if(t!==-1&&r!==-1?i=t<r?t:r:t===-1?r!==-1&&(i=r):i=t===e.length-1?-1:t,i===-1)break;_(e,n,i),n=i+1,e.charCodeAt(n-1)===Vr&&e.charCodeAt(n)===Br&&n++}return e.slice(n)}function _(e,t,n){if(t===n){y();return}let r=e.charCodeAt(t);if(Gr(e,t,r)){let r=e.charCodeAt(t+5)===Hr?t+6:t+5,i=e.slice(r,n);u=d===0?i:`${u}
|
|
11
|
-
${i}`,d++;return}if(Kr(e,t,r)){f=e.slice(e.charCodeAt(t+6)===Hr?t+7:t+6,n)||void 0;return}if(r===105&&e.charCodeAt(t+1)===100&&e.charCodeAt(t+2)===58){let r=e.slice(e.charCodeAt(t+3)===Hr?t+4:t+3,n);l=r.includes(`\0`)?void 0:r;return}if(r===58){if(i){let r=e.slice(t,n);i(r.slice(e.charCodeAt(t+1)===Hr?2:1))}return}let a=e.slice(t,n),o=a.indexOf(`:`);if(o===-1){v(a,``,a);return}let s=a.slice(0,o),c=a.charCodeAt(o+1)===Hr?2:1;v(s,a.slice(o+c),a)}function v(e,t,i){switch(e){case`event`:f=t||void 0;break;case`data`:u=d===0?t:`${u}
|
|
12
|
-
${t}`,d++;break;case`id`:l=t.includes(`\0`)?void 0:t;break;case`retry`:/^\d+$/.test(t)?r(parseInt(t,10)):n(new zr(`Invalid \`retry\` value: "${t}"`,{type:`invalid-retry`,value:t,line:i}));break;default:n(new zr(`Unknown field "${e.length>20?`${e.slice(0,20)}\u2026`:e}"`,{type:`unknown-field`,field:e,value:t,line:i}))}}function y(){d>0&&t({id:l,event:f,data:u}),l=void 0,u=``,d=0,f=void 0}function b(e={}){if(e.consume&&o.length>0){let e=o.join(``);_(e,0,e.length)}c=!0,l=void 0,u=``,d=0,f=void 0,o.length=0,s=0,p=!1}return{feed:m,reset:b}}function Gr(e,t,n){return n===100&&e.charCodeAt(t+1)===97&&e.charCodeAt(t+2)===116&&e.charCodeAt(t+3)===97&&e.charCodeAt(t+4)===58}function Kr(e,t,n){return n===101&&e.charCodeAt(t+1)===118&&e.charCodeAt(t+2)===101&&e.charCodeAt(t+3)===110&&e.charCodeAt(t+4)===116&&e.charCodeAt(t+5)===58}var qr=class extends TransformStream{constructor({onError:e,onRetry:t,onComment:n,maxBufferSize:r}={}){let i;super({start(a){i=Wr({onEvent:e=>{a.enqueue(e)},onError(t){typeof e==`function`&&e(t),(e===`terminate`||t.type===`max-buffer-size-exceeded`)&&a.error(t)},onRetry:t,onComment:n,maxBufferSize:r})},transform(e){i.feed(e)}})}};new TextDecoder;var{btoa:Jr,atob:Yr}=globalThis,Xr=({prefix:e,size:t=16,alphabet:n=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`,separator:r=`-`}={})=>{let i=()=>{let e=n.length,r=Array(t);for(let i=0;i<t;i++)r[i]=n[Math.random()*e|0];return r.join(``)};if(e==null)return i;if(n.includes(r))throw new Qt({argument:`separator`,message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${i()}`},Zr=Xr();function Qr(e=globalThis){return e.window?`runtime/browser`:e.navigator?.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:e.process?.versions?.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?`runtime/vercel-edge`:`runtime/unknown`}function $r(e){if(e==null)return{};let t={};if(e instanceof Headers)e.forEach((e,n)=>{t[n.toLowerCase()]=e});else{Array.isArray(e)||(e=Object.entries(e));for(let[n,r]of e)r!=null&&(t[n.toLowerCase()]=r)}return t}function ei(e,...t){let n=new Headers($r(e)),r=n.get(`user-agent`)||``;return n.set(`user-agent`,[r,...t].filter(Boolean).join(` `)),Object.fromEntries(n.entries())}function ti(e){return globalThis.Buffer?.isBuffer(e)??!1}var ni=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ri=/"(?: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 ii(e){let t=JSON.parse(e);return typeof t!=`object`||!t||ni.test(e)===!1&&ri.test(e)===!1?t:ai(t)}function ai(e){let t=[e];for(;t.length;){let e=t;t=[];for(let n of e){if(Object.prototype.hasOwnProperty.call(n,`__proto__`)||Object.prototype.hasOwnProperty.call(n,`constructor`)&&n.constructor!==null&&typeof n.constructor==`object`&&Object.prototype.hasOwnProperty.call(n.constructor,`prototype`))throw SyntaxError(`Object contains forbidden prototype property`);for(let e in n){let r=n[e];r&&typeof r==`object`&&t.push(r)}}}return e}function oi(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return ii(e)}try{return ii(e)}finally{Error.stackTraceLimit=t}}function si(e){if(e.type===`object`||Array.isArray(e.type)&&e.type.includes(`object`)){e.additionalProperties=!1;let{properties:t}=e;if(t!=null)for(let e of Object.keys(t))t[e]=ci(t[e])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(ci):ci(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(ci)),e.allOf!=null&&(e.allOf=e.allOf.map(ci)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(ci));let{definitions:t}=e;if(t!=null)for(let e of Object.keys(t))t[e]=ci(t[e]);return e}function ci(e){return typeof e==`boolean`?e:si(e)}var li=Symbol(`Let zodToJsonSchema decide on which parser to use`),ui={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`},di=e=>typeof e==`string`?{...ui,name:e}:{...ui,...e};function fi(){return{}}function pi(e,t){let n={type:`array`};return e.type?._def&&e.type?._def?.typeName!==q.ZodAny&&(n.items=J(e.type._def,{...t,currentPath:[...t.currentPath,`items`]})),e.minLength&&(n.minItems=e.minLength.value),e.maxLength&&(n.maxItems=e.maxLength.value),e.exactLength&&(n.minItems=e.exactLength.value,n.maxItems=e.exactLength.value),n}function mi(e){let t={type:`integer`,format:`int64`};if(!e.checks)return t;for(let n of e.checks)switch(n.kind){case`min`:n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case`max`:n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case`multipleOf`:t.multipleOf=n.value}return t}function hi(){return{type:`boolean`}}function gi(e,t){return J(e.type._def,t)}var _i=(e,t)=>J(e.innerType._def,t);function vi(e,t,n){let r=n??t.dateStrategy;if(Array.isArray(r))return{anyOf:r.map(n=>vi(e,t,n))};switch(r){case`string`:case`format:date-time`:return{type:`string`,format:`date-time`};case`format:date`:return{type:`string`,format:`date`};case`integer`:return yi(e)}}var yi=e=>{let t={type:`integer`,format:`unix-time`};for(let n of e.checks)switch(n.kind){case`min`:t.minimum=n.value;break;case`max`:t.maximum=n.value}return t};function bi(e,t){return{...J(e.innerType._def,t),default:e.defaultValue()}}function xi(e,t){return t.effectStrategy===`input`?J(e.schema._def,t):fi()}function Si(e){return{type:`string`,enum:Array.from(e.values)}}var Ci=e=>`type`in e&&e.type===`string`?!1:`allOf`in e;function wi(e,t){let n=[J(e.left._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]}),J(e.right._def,{...t,currentPath:[...t.currentPath,`allOf`,`1`]})].filter(e=>!!e),r=[];return n.forEach(e=>{if(Ci(e))r.push(...e.allOf);else{let t=e;if(`additionalProperties`in e&&e.additionalProperties===!1){let{additionalProperties:n,...r}=e;t=r}r.push(t)}}),r.length?{allOf:r}:void 0}function Ti(e){let t=typeof e.value;return t!==`bigint`&&t!==`number`&&t!==`boolean`&&t!==`string`?{type:Array.isArray(e.value)?`array`:`object`}:{type:t===`bigint`?`integer`:t,const:e.value}}var Ei=void 0,Di={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(Ei===void 0&&(Ei=RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)),Ei),uuid:/^[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}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?: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])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([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])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Oi(e,t){let n={type:`string`};if(e.checks)for(let r of e.checks)switch(r.kind){case`min`:n.minLength=typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value;break;case`max`:n.maxLength=typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value;break;case`email`:switch(t.emailStrategy){case`format:email`:Mi(n,`email`,r.message,t);break;case`format:idn-email`:Mi(n,`idn-email`,r.message,t);break;case`pattern:zod`:Ni(n,Di.email,r.message,t)}break;case`url`:Mi(n,`uri`,r.message,t);break;case`uuid`:Mi(n,`uuid`,r.message,t);break;case`regex`:Ni(n,r.regex,r.message,t);break;case`cuid`:Ni(n,Di.cuid,r.message,t);break;case`cuid2`:Ni(n,Di.cuid2,r.message,t);break;case`startsWith`:Ni(n,RegExp(`^${ki(r.value,t)}`),r.message,t);break;case`endsWith`:Ni(n,RegExp(`${ki(r.value,t)}$`),r.message,t);break;case`datetime`:Mi(n,`date-time`,r.message,t);break;case`date`:Mi(n,`date`,r.message,t);break;case`time`:Mi(n,`time`,r.message,t);break;case`duration`:Mi(n,`duration`,r.message,t);break;case`length`:n.minLength=typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value,n.maxLength=typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value;break;case`includes`:Ni(n,RegExp(ki(r.value,t)),r.message,t);break;case`ip`:r.version!==`v6`&&Mi(n,`ipv4`,r.message,t),r.version!==`v4`&&Mi(n,`ipv6`,r.message,t);break;case`base64url`:Ni(n,Di.base64url,r.message,t);break;case`jwt`:Ni(n,Di.jwt,r.message,t);break;case`cidr`:r.version!==`v6`&&Ni(n,Di.ipv4Cidr,r.message,t),r.version!==`v4`&&Ni(n,Di.ipv6Cidr,r.message,t);break;case`emoji`:Ni(n,Di.emoji(),r.message,t);break;case`ulid`:Ni(n,Di.ulid,r.message,t);break;case`base64`:switch(t.base64Strategy){case`format:binary`:Mi(n,`binary`,r.message,t);break;case`contentEncoding:base64`:n.contentEncoding=`base64`;break;case`pattern:zod`:Ni(n,Di.base64,r.message,t)}break;case`nanoid`:Ni(n,Di.nanoid,r.message,t)}return n}function ki(e,t){return t.patternStrategy===`escape`?ji(e):e}var Ai=new Set(`ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789`);function ji(e){let t=``;for(let n=0;n<e.length;n++)Ai.has(e[n])||(t+=`\\`),t+=e[n];return t}function Mi(e,t,n,r){e.format||e.anyOf?.some(e=>e.format)?(e.anyOf||=[],e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...n&&r.errorMessages&&{errorMessage:{format:n}}})):e.format=t}function Ni(e,t,n,r){e.pattern||e.allOf?.some(e=>e.pattern)?(e.allOf||=[],e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:Pi(t,r),...n&&r.errorMessages&&{errorMessage:{pattern:n}}})):e.pattern=Pi(t,r)}function Pi(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes(`i`),m:e.flags.includes(`m`),s:e.flags.includes(`s`)},r=n.i?e.source.toLowerCase():e.source,i=``,a=!1,o=!1,s=!1;for(let e=0;e<r.length;e++){if(a){i+=r[e],a=!1;continue}if(n.i){if(o){if(r[e].match(/[a-z]/)){s?(i+=r[e],i+=`${r[e-2]}-${r[e]}`.toUpperCase(),s=!1):r[e+1]===`-`&&r[e+2]?.match(/[a-z]/)?(i+=r[e],s=!0):i+=`${r[e]}${r[e].toUpperCase()}`;continue}}else if(r[e].match(/[a-z]/)){i+=`[${r[e]}${r[e].toUpperCase()}]`;continue}}if(n.m){if(r[e]===`^`){i+=`(^|(?<=[\r
|
|
13
|
-
]))`;continue}if(r[e]===`$`){i+=`($|(?=[\r
|
|
14
|
-
]))`;continue}}if(n.s&&r[e]===`.`){i+=o?`${r[e]}\r
|
|
15
|
-
`:`[${r[e]}\r
|
|
16
|
-
]`;continue}i+=r[e],r[e]===`\\`?a=!0:o&&r[e]===`]`?o=!1:!o&&r[e]===`[`&&(o=!0)}try{new RegExp(i)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join(`/`)} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return i}function Fi(e,t){let n={type:`object`,additionalProperties:J(e.valueType._def,{...t,currentPath:[...t.currentPath,`additionalProperties`]})??t.allowedAdditionalProperties};if(e.keyType?._def.typeName===q.ZodString&&e.keyType._def.checks?.length){let{type:r,...i}=Oi(e.keyType._def,t);return{...n,propertyNames:i}}if(e.keyType?._def.typeName===q.ZodEnum)return{...n,propertyNames:{enum:e.keyType._def.values}};if(e.keyType?._def.typeName===q.ZodBranded&&e.keyType._def.type._def.typeName===q.ZodString&&e.keyType._def.type._def.checks?.length){let{type:r,...i}=gi(e.keyType._def,t);return{...n,propertyNames:i}}return n}function Ii(e,t){return t.mapStrategy===`record`?Fi(e,t):{type:`array`,maxItems:125,items:{type:`array`,items:[J(e.keyType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`0`]})||fi(),J(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`1`]})||fi()],minItems:2,maxItems:2}}}function Li(e){let t=e.values,n=Object.keys(e.values).filter(e=>typeof t[t[e]]!=`number`).map(e=>t[e]),r=Array.from(new Set(n.map(e=>typeof e)));return{type:r.length===1?r[0]===`string`?`string`:`number`:[`string`,`number`],enum:n}}function Ri(){return{not:fi()}}function zi(){return{type:`null`}}var Bi={ZodString:`string`,ZodNumber:`number`,ZodBigInt:`integer`,ZodBoolean:`boolean`,ZodNull:`null`};function Vi(e,t){let n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(e=>e._def.typeName in Bi&&(!e._def.checks||!e._def.checks.length))){let e=n.reduce((e,t)=>{let n=Bi[t._def.typeName];return n&&!e.includes(n)?[...e,n]:e},[]);return{type:e.length>1?e:e[0]}}if(n.every(e=>e._def.typeName===`ZodLiteral`&&!e.description)){let e=n.reduce((e,t)=>{let n=typeof t._def.value;switch(n){case`string`:case`number`:case`boolean`:return[...e,n];case`bigint`:return[...e,`integer`];case`object`:if(t._def.value===null)return[...e,`null`];default:return e}},[]);if(e.length===n.length){let t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:n.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(n.every(e=>e._def.typeName===`ZodEnum`))return{type:`string`,enum:n.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return Hi(e,t)}var Hi=(e,t)=>{let n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,n)=>J(e._def,{...t,currentPath:[...t.currentPath,`anyOf`,`${n}`]})).filter(e=>!!e&&(!t.strictUnions||typeof e==`object`&&Object.keys(e).length>0));return n.length?{anyOf:n}:void 0};function Ui(e,t){if([`ZodString`,`ZodNumber`,`ZodBigInt`,`ZodBoolean`,`ZodNull`].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Bi[e.innerType._def.typeName],`null`]};let n=J(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`0`]});return n&&{anyOf:[n,{type:`null`}]}}function Wi(e){let t={type:`number`};if(!e.checks)return t;for(let n of e.checks)switch(n.kind){case`int`:t.type=`integer`;break;case`min`:n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case`max`:n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case`multipleOf`:t.multipleOf=n.value}return t}function Gi(e,t){let n={type:`object`,properties:{}},r=[],i=e.shape();for(let e in i){let a=i[e];if(a===void 0||a._def===void 0)continue;let o=qi(a),s=J(a._def,{...t,currentPath:[...t.currentPath,`properties`,e],propertyPath:[...t.currentPath,`properties`,e]});s!==void 0&&(n.properties[e]=s,o||r.push(e))}r.length&&(n.required=r);let a=Ki(e,t);return a!==void 0&&(n.additionalProperties=a),n}function Ki(e,t){if(e.catchall._def.typeName!==`ZodNever`)return J(e.catchall._def,{...t,currentPath:[...t.currentPath,`additionalProperties`]});switch(e.unknownKeys){case`passthrough`:return t.allowedAdditionalProperties;case`strict`:return t.rejectedAdditionalProperties;case`strip`:return t.removeAdditionalStrategy===`strict`?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function qi(e){try{return e.isOptional()}catch{return!0}}var Ji=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return J(e.innerType._def,t);let n=J(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`1`]});return n?{anyOf:[{not:fi()},n]}:fi()},Yi=(e,t)=>{if(t.pipeStrategy===`input`)return J(e.in._def,t);if(t.pipeStrategy===`output`)return J(e.out._def,t);let n=J(e.in._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]});return{allOf:[n,J(e.out._def,{...t,currentPath:[...t.currentPath,`allOf`,n?`1`:`0`]})].filter(e=>e!==void 0)}};function Xi(e,t){return J(e.type._def,t)}function Zi(e,t){let n={type:`array`,uniqueItems:!0,items:J(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}function Qi(e,t){return e.rest?{type:`array`,minItems:e.items.length,items:e.items.map((e,n)=>J(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[]),additionalItems:J(e.rest._def,{...t,currentPath:[...t.currentPath,`additionalItems`]})}:{type:`array`,minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,n)=>J(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[])}}function $i(){return{not:fi()}}function ea(){return fi()}var ta=(e,t)=>J(e.innerType._def,t),na=(e,t,n)=>{switch(t){case q.ZodString:return Oi(e,n);case q.ZodNumber:return Wi(e);case q.ZodObject:return Gi(e,n);case q.ZodBigInt:return mi(e);case q.ZodBoolean:return hi();case q.ZodDate:return vi(e,n);case q.ZodUndefined:return $i();case q.ZodNull:return zi();case q.ZodArray:return pi(e,n);case q.ZodUnion:case q.ZodDiscriminatedUnion:return Vi(e,n);case q.ZodIntersection:return wi(e,n);case q.ZodTuple:return Qi(e,n);case q.ZodRecord:return Fi(e,n);case q.ZodLiteral:return Ti(e);case q.ZodEnum:return Si(e);case q.ZodNativeEnum:return Li(e);case q.ZodNullable:return Ui(e,n);case q.ZodOptional:return Ji(e,n);case q.ZodMap:return Ii(e,n);case q.ZodSet:return Zi(e,n);case q.ZodLazy:return()=>e.getter()._def;case q.ZodPromise:return Xi(e,n);case q.ZodNaN:case q.ZodNever:return Ri();case q.ZodEffects:return xi(e,n);case q.ZodAny:return fi();case q.ZodUnknown:return ea();case q.ZodDefault:return bi(e,n);case q.ZodBranded:return gi(e,n);case q.ZodReadonly:return ta(e,n);case q.ZodCatch:return _i(e,n);case q.ZodPipeline:return Yi(e,n);case q.ZodFunction:case q.ZodVoid:case q.ZodSymbol:return;default:return(e=>void 0)(t)}},ra=(e,t)=>{let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];n++);return[(e.length-n).toString(),...t.slice(n)].join(`/`)};function J(e,t,n=!1){let r=t.seen.get(e);if(t.override){let i=t.override?.call(t,e,t,r,n);if(i!==li)return i}if(r&&!n){let e=ia(r,t);if(e!==void 0)return e}let i={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,i);let a=na(e,e.typeName,t),o=typeof a==`function`?J(a(),t):a;if(o&&aa(e,t,o),t.postProcess){let n=t.postProcess(o,e,t);return i.jsonSchema=o,n}return i.jsonSchema=o,o}var ia=(e,t)=>{switch(t.$refStrategy){case`root`:return{$ref:e.path.join(`/`)};case`relative`:return{$ref:ra(t.currentPath,e.path)};case`none`:case`seen`:return e.path.length<t.currentPath.length&&e.path.every((e,n)=>t.currentPath[n]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join(`/`)}! Defaulting to any`),fi()):t.$refStrategy===`seen`?fi():void 0}},aa=(e,t,n)=>(e.description&&(n.description=e.description),n),oa=e=>{let t=di(e),n=t.name===void 0?t.basePath:[...t.basePath,t.definitionPath,t.name];return{...t,currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}},sa=(e,t)=>{let n=oa(t),r=typeof t==`object`&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>({...e,[t]:J(r._def,{...n,currentPath:[...n.basePath,n.definitionPath,t]},!0)??fi()}),{}):void 0,i=typeof t==`string`?t:t?.nameStrategy===`title`?void 0:t?.name,a=J(e._def,i===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,i]},!1)??fi(),o=typeof t==`object`&&t.name!==void 0&&t.nameStrategy===`title`?t.name:void 0;o!==void 0&&(a.title=o);let s=i===void 0?r?{...a,[n.definitionPath]:r}:a:{$ref:[...n.$refStrategy===`relative`?[]:n.basePath,n.definitionPath,i].join(`/`),[n.definitionPath]:{...r,[i]:a}};return s.$schema=`http://json-schema.org/draft-07/schema#`,s},ca=Symbol.for(`vercel.ai.schema`);function la(e){let t;return()=>(t??=e(),t)}function ua(e,{validate:t}={}){return{[ca]:!0,_type:void 0,get jsonSchema(){return typeof e==`function`&&(e=e()),e},validate:t}}function da(e){return typeof e==`object`&&!!e&&ca in e&&e[ca]===!0&&`jsonSchema`in e&&`validate`in e}function fa(e){return e==null?ua({type:`object`,properties:{},additionalProperties:!1}):da(e)?e:`~standard`in e?e[`~standard`].vendor===`zod`?va(e):pa(e):e()}function pa(e){return ua(()=>{if(!ma(e))throw Error(`Standard schema vendor '${e[`~standard`].vendor}' does not support JSON Schema conversion.`);return si(e[`~standard`].jsonSchema.input({target:`draft-07`}))},{validate:async t=>{let n=await e[`~standard`].validate(t);return`value`in n?{success:!0,value:n.value}:{success:!1,error:new dn({value:t,cause:n.issues})}}})}function ma(e){return e[`~standard`].jsonSchema!=null}function ha(e,t){let n=t?.useReferences??!1;return ua(()=>sa(e,{$refStrategy:n?`root`:`none`}),{validate:async t=>{let n=await e.safeParseAsync(t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function ga(e,t){let n=t?.useReferences??!1;return ua(()=>si(ce(e,{target:`draft-7`,io:`input`,reused:n?`ref`:`inline`})),{validate:async t=>{let n=await me(e,t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function _a(e){return`_zod`in e}function va(e,t){return _a(e)?ga(e,t):ha(e,t)}async function ya({value:e,schema:t,context:n}){let r=await ba({value:e,schema:t,context:n});if(!r.success)throw dn.wrap({value:e,cause:r.error,context:n});return r.value}async function ba({value:e,schema:t,context:n}){let r=fa(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};let t=await r.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:dn.wrap({value:e,cause:t.error,context:n}),rawValue:e}}catch(t){return{success:!1,error:dn.wrap({value:e,cause:t,context:n}),rawValue:e}}}async function xa({text:e,schema:t}){try{let n=oi(e);return t==null?{success:!0,value:n,rawValue:n}:await ba({value:n,schema:t})}catch(t){return{success:!1,error:an.isInstance(t)?t:new an({text:e,cause:t}),rawValue:void 0}}}function Sa({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new qr).pipeThrough(new TransformStream({async transform({data:e},n){e!==`[DONE]`&&n.enqueue(await xa({text:e,schema:t}))}}))}async function Ca(e){return typeof e==`function`&&(e=e()),Promise.resolve(e)}new TextDecoder;var wa=Object.defineProperty,Ta=(e,t)=>{for(var n in t)wa(e,n,{get:t[n],enumerable:!0})},Ea=`AI_InvalidArgumentError`,Da=`vercel.ai.error.${Ea}`,Oa=Symbol.for(Da),ka,Aa=class extends Gt{constructor({parameter:e,value:t,message:n}){super({name:Ea,message:`Invalid argument for parameter ${e}: ${n}`}),this[ka]=!0,this.parameter=e,this.value=t}static isInstance(e){return Gt.hasMarker(e,Da)}};ka=Oa;var ja=`AI_NoObjectGeneratedError`,Ma=`vercel.ai.error.${ja}`,Na=Symbol.for(Ma),Pa,Fa=class extends Gt{constructor({message:e=`No object generated.`,cause:t,text:n,response:r,usage:i,finishReason:a}){super({name:ja,message:e,cause:t}),this[Pa]=!0,this.text=n,this.response=r,this.usage=i,this.finishReason=a}static isInstance(e){return Gt.hasMarker(e,Ma)}};Pa=Na;var Ia=`AI_UIMessageStreamError`,La=`vercel.ai.error.${Ia}`,Ra=Symbol.for(La),za,Ba=class extends Gt{constructor({chunkType:e,chunkId:t,message:n}){super({name:Ia,message:n}),this[za]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return Gt.hasMarker(e,La)}};za=Ra;var Va=`7.0.37`;function Ha(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;let n={...e};for(let r in t)if(r!==`__proto__`&&r!==`constructor`&&r!==`prototype`&&Object.prototype.hasOwnProperty.call(t,r)){let i=t[r];if(i===void 0)continue;let a=r in e?e[r]:void 0,o=typeof i==`object`&&!!i&&!Array.isArray(i)&&!(i instanceof Date)&&!(i instanceof RegExp),s=typeof a==`object`&&!!a&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);n[r]=o&&s?Ha(a,i):i}return n}var Ua=fe(()=>A([ge(),k(),ue(),P(),N(k(),Ua.optional()),j(Ua)])),Y=N(k(),N(k(),Ua.optional())),Wa=A([k(),de(Uint8Array),de(ArrayBuffer),le(ti,{message:`Must be a Buffer`})]),Ga=N(k(),k()),Ka=O({type:F(`text`),text:k(),providerOptions:Y.optional()}),qa=O({type:F(`image`),image:A([Wa,de(URL),Ga]),mediaType:k().optional(),providerOptions:Y.optional()}),Ja=_e(`type`,[O({type:F(`data`),data:Wa}),O({type:F(`url`),url:de(URL)}),O({type:F(`reference`),reference:Ga}),O({type:F(`text`),text:k()})]),Ya=_e(`type`,[O({type:F(`data`),data:Wa}),O({type:F(`url`),url:de(URL)})]),Xa=O({type:F(`file`),data:A([Ja,Wa,de(URL),Ga]),filename:k().optional(),mediaType:k(),providerOptions:Y.optional()}),Za=O({type:F(`reasoning`),text:k(),providerOptions:Y.optional()}),Qa=O({type:F(`custom`),kind:k().transform(e=>e),providerOptions:Y.optional()}),$a=O({type:F(`reasoning-file`),data:A([Ya,Wa,de(URL)]),mediaType:k(),providerOptions:Y.optional()}),eo=O({type:F(`tool-call`),toolCallId:k(),toolName:k(),input:M(),providerOptions:Y.optional(),providerExecuted:P().optional()}),to=_e(`type`,[O({type:F(`text`),value:k(),providerOptions:Y.optional()}),O({type:F(`json`),value:Ua,providerOptions:Y.optional()}),O({type:F(`execution-denied`),reason:k().optional(),providerOptions:Y.optional()}),O({type:F(`error-text`),value:k(),providerOptions:Y.optional()}),O({type:F(`error-json`),value:Ua,providerOptions:Y.optional()}),O({type:F(`content`),value:j(A([O({type:F(`text`),text:k(),providerOptions:Y.optional()}),O({type:F(`file`),data:Ja,mediaType:k(),filename:k().optional(),providerOptions:Y.optional()}),O({type:F(`file-data`),data:k(),mediaType:k(),filename:k().optional(),providerOptions:Y.optional()}),O({type:F(`file-url`),url:k(),mediaType:k().optional(),providerOptions:Y.optional()}),O({type:F(`file-id`),fileId:A([k(),N(k(),k())]),providerOptions:Y.optional()}),O({type:F(`file-reference`),providerReference:N(k(),k()),providerOptions:Y.optional()}),O({type:F(`image-data`),data:k(),mediaType:k(),providerOptions:Y.optional()}),O({type:F(`image-url`),url:k(),providerOptions:Y.optional()}),O({type:F(`image-file-id`),fileId:A([k(),N(k(),k())]),providerOptions:Y.optional()}),O({type:F(`image-file-reference`),providerReference:N(k(),k()),providerOptions:Y.optional()}),O({type:F(`custom`),providerOptions:Y.optional()})]))})]),no=O({type:F(`tool-result`),toolCallId:k(),toolName:k(),output:to,providerOptions:Y.optional()}),ro=O({type:F(`tool-approval-request`),approvalId:k(),toolCallId:k()}),io=O({type:F(`tool-approval-response`),approvalId:k(),approved:P(),reason:k().optional()}),ao=O({role:F(`system`),content:k(),providerOptions:Y.optional()}),oo=O({role:F(`user`),content:A([k(),j(A([Ka,qa,Xa]))]),providerOptions:Y.optional()}),so=O({role:F(`assistant`),content:A([k(),j(A([Ka,Qa,Xa,Za,$a,eo,no,ro]))]),providerOptions:Y.optional()}),co=O({role:F(`tool`),content:j(A([no,io])),providerOptions:Y.optional()});A([ao,oo,so,co]);function lo(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}Ta({},{array:()=>ho,choice:()=>go,json:()=>_o,object:()=>mo,text:()=>po});function uo(e){let t=[`ROOT`],n=-1,r=null,i=0;function a(e){return e>=`0`&&e<=`9`||e>=`A`&&e<=`F`||e>=`a`&&e<=`f`}function o(e,i,a){switch(e){case`"`:n=i,t.pop(),t.push(a),t.push(`INSIDE_STRING`);break;case`f`:case`t`:case`n`:n=i,r=i,t.pop(),t.push(a),t.push(`INSIDE_LITERAL`);break;case`-`:t.pop(),t.push(a),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`:n=i,t.pop(),t.push(a),t.push(`INSIDE_NUMBER`);break;case`{`:n=i,t.pop(),t.push(a),t.push(`INSIDE_OBJECT_START`);break;case`[`:n=i,t.pop(),t.push(a),t.push(`INSIDE_ARRAY_START`)}}function s(e,r){switch(e){case`,`:t.pop(),t.push(`INSIDE_OBJECT_AFTER_COMMA`);break;case`}`:n=r,t.pop()}}function c(e,r){switch(e){case`,`:t.pop(),t.push(`INSIDE_ARRAY_AFTER_COMMA`);break;case`]`:n=r,t.pop()}}for(let l=0;l<e.length;l++){let u=e[l];switch(t[t.length-1]){case`ROOT`:o(u,l,`FINISH`);break;case`INSIDE_OBJECT_START`:switch(u){case`"`:t.pop(),t.push(`INSIDE_OBJECT_KEY`);break;case`}`:n=l,t.pop()}break;case`INSIDE_OBJECT_AFTER_COMMA`:u===`"`&&(t.pop(),t.push(`INSIDE_OBJECT_KEY`));break;case`INSIDE_OBJECT_KEY`:u===`"`&&(t.pop(),t.push(`INSIDE_OBJECT_AFTER_KEY`));break;case`INSIDE_OBJECT_AFTER_KEY`:u===`:`&&(t.pop(),t.push(`INSIDE_OBJECT_BEFORE_VALUE`));break;case`INSIDE_OBJECT_BEFORE_VALUE`:o(u,l,`INSIDE_OBJECT_AFTER_VALUE`);break;case`INSIDE_OBJECT_AFTER_VALUE`:s(u,l);break;case`INSIDE_STRING`:switch(u){case`"`:t.pop(),n=l;break;case`\\`:t.push(`INSIDE_STRING_ESCAPE`);break;default:n=l}break;case`INSIDE_ARRAY_START`:switch(u){case`]`:n=l,t.pop();break;default:n=l,o(u,l,`INSIDE_ARRAY_AFTER_VALUE`)}break;case`INSIDE_ARRAY_AFTER_VALUE`:switch(u){case`,`:t.pop(),t.push(`INSIDE_ARRAY_AFTER_COMMA`);break;case`]`:n=l,t.pop();break;default:n=l}break;case`INSIDE_ARRAY_AFTER_COMMA`:o(u,l,`INSIDE_ARRAY_AFTER_VALUE`);break;case`INSIDE_STRING_ESCAPE`:t.pop(),u===`u`?(i=0,t.push(`INSIDE_STRING_UNICODE_ESCAPE`)):n=l;break;case`INSIDE_STRING_UNICODE_ESCAPE`:a(u)&&(i++,i===4&&(t.pop(),n=l));break;case`INSIDE_NUMBER`:switch(u){case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:n=l;break;case`e`:case`E`:case`-`:case`.`:break;case`,`:t.pop(),t[t.length-1]===`INSIDE_ARRAY_AFTER_VALUE`&&c(u,l),t[t.length-1]===`INSIDE_OBJECT_AFTER_VALUE`&&s(u,l);break;case`}`:t.pop(),t[t.length-1]===`INSIDE_OBJECT_AFTER_VALUE`&&s(u,l);break;case`]`:t.pop(),t[t.length-1]===`INSIDE_ARRAY_AFTER_VALUE`&&c(u,l);break;default:t.pop()}break;case`INSIDE_LITERAL`:{let i=e.substring(r,l+1);!`false`.startsWith(i)&&!`true`.startsWith(i)&&!`null`.startsWith(i)?(t.pop(),t[t.length-1]===`INSIDE_OBJECT_AFTER_VALUE`?s(u,l):t[t.length-1]===`INSIDE_ARRAY_AFTER_VALUE`&&c(u,l)):n=l;break}}}let l=e.slice(0,n+1);for(let n=t.length-1;n>=0;n--)switch(t[n]){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}async function fo(e){if(e===void 0)return{value:void 0,state:`undefined-input`};let t=await xa({text:e});return t.success?{value:t.value,state:`successful-parse`}:(t=await xa({text:uo(e)}),t.success?{value:t.value,state:`repaired-parse`}:{value:void 0,state:`failed-parse`})}var po=()=>({name:`text`,responseFormat:Promise.resolve({type:`text`}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),mo=({schema:e,name:t,description:n})=>{let r=fa(e);return{name:`object`,responseFormat:Ca(r.jsonSchema).then(e=>({type:`json`,schema:e,...t!=null&&{name:t},...n!=null&&{description:n}})),async parseCompleteOutput({text:e},t){let n=await xa({text:e});if(!n.success)throw new Fa({message:`No object generated: could not parse the response.`,cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let i=await ba({value:n.value,schema:r});if(!i.success)throw new Fa({message:`No object generated: response did not match schema.`,cause:i.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return i.value},async parsePartialOutput({text:e}){let t=await fo(e);switch(t.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:return{partial:t.value}}},createElementStreamTransform(){}}},ho=({element:e,name:t,description:n})=>{let r=fa(e);return{name:`array`,responseFormat:Ca(r.jsonSchema).then(e=>{let{$schema:r,...i}=e;return{type:`json`,schema:{$schema:`http://json-schema.org/draft-07/schema#`,type:`object`,properties:{elements:{type:`array`,items:i}},required:[`elements`],additionalProperties:!1},...t!=null&&{name:t},...n!=null&&{description:n}}}),async parseCompleteOutput({text:e},t){let n=await xa({text:e});if(!n.success)throw new Fa({message:`No object generated: could not parse the response.`,cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let i=n.value;if(typeof i!=`object`||!i||!(`elements`in i)||!Array.isArray(i.elements))throw new Fa({message:`No object generated: response did not match schema.`,cause:new dn({value:i,cause:`response must be an object with an elements array`}),text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let a=[];for(let n of i.elements){let i=await ba({value:n,schema:r});if(!i.success)throw new Fa({message:`No object generated: response did not match schema.`,cause:i.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});a.push(i.value)}return a},async parsePartialOutput({text:e}){let t=await fo(e);switch(t.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:{let e=t.value;if(typeof e!=`object`||!e||!(`elements`in e)||!Array.isArray(e.elements))return;let n=t.state===`repaired-parse`&&e.elements.length>0?e.elements.slice(0,-1):e.elements,i=[];for(let e of n){let t=await ba({value:e,schema:r});t.success&&i.push(t.value)}return{partial:i}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},n){if(t!=null)for(;e<t.length;e++)n.enqueue(t[e])}})}}},go=({options:e,name:t,description:n})=>({name:`choice`,responseFormat:Promise.resolve({type:`json`,schema:{$schema:`http://json-schema.org/draft-07/schema#`,type:`object`,properties:{result:{type:`string`,enum:e}},required:[`result`],additionalProperties:!1},...t!=null&&{name:t},...n!=null&&{description:n}}),async parseCompleteOutput({text:t},n){let r=await xa({text:t});if(!r.success)throw new Fa({message:`No object generated: could not parse the response.`,cause:r.error,text:t,response:n.response,usage:n.usage,finishReason:n.finishReason});let i=r.value;if(typeof i!=`object`||!i||!(`result`in i)||typeof i.result!=`string`||!e.includes(i.result))throw new Fa({message:`No object generated: response did not match schema.`,cause:new dn({value:i,cause:`response must be an object that contains a choice value.`}),text:t,response:n.response,usage:n.usage,finishReason:n.finishReason});return i.result},async parsePartialOutput({text:t}){let n=await fo(t);switch(n.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:{let t=n.value;if(typeof t!=`object`||!t||!(`result`in t)||typeof t.result!=`string`)return;let r=e.filter(e=>e.startsWith(t.result));return n.state===`successful-parse`?r.includes(t.result)?{partial:t.result}:void 0:r.length===1?{partial:r[0]}:void 0}}},createElementStreamTransform(){}}),_o=({name:e,description:t}={})=>({name:`json`,responseFormat:Promise.resolve({type:`json`,...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:e},t){let n=await xa({text:e});if(!n.success)throw new Fa({message:`No object generated: could not parse the response.`,cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return n.value},async parsePartialOutput({text:e}){let t=await fo(e);switch(t.state){case`failed-parse`:case`undefined-input`:return;case`repaired-parse`:case`successful-parse`:return t.value===void 0?void 0:{partial:t.value}}},createElementStreamTransform(){}});new TextEncoder,new TextEncoder,Xr({prefix:`aitxt`,size:24}),Xr({prefix:`call`,size:24});function vo(e,t){let n=new Headers(e??{});for(let[e,r]of Object.entries(t))n.has(e)||n.set(e,r);return n}var yo=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
17
|
-
|
|
18
|
-
`)},flush(e){e.enqueue(`data: [DONE]
|
|
19
|
-
|
|
20
|
-
`)}})}},bo={"content-type":`text/event-stream`,"cache-control":`no-cache`,connection:`keep-alive`,"x-vercel-ai-ui-message-stream":`v1`,"x-accel-buffering":`no`};function xo({status:e,statusText:t,headers:n,stream:r,consumeSseStream:i}){let a=r.pipeThrough(new yo);if(i){let[e,t]=a.tee();a=e,i({stream:t})}return new Response(a.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:vo(n,bo)})}var So=N(k(),Ua.optional()),Co=la(()=>va(A([I({type:F(`text-start`),id:k(),providerMetadata:Y.optional()}),I({type:F(`text-delta`),id:k(),delta:k(),providerMetadata:Y.optional()}),I({type:F(`text-end`),id:k(),providerMetadata:Y.optional()}),I({type:F(`error`),errorText:k()}),I({type:F(`tool-input-start`),toolCallId:k(),toolName:k(),providerExecuted:P().optional(),providerMetadata:Y.optional(),toolMetadata:So.optional(),dynamic:P().optional(),title:k().optional()}),I({type:F(`tool-input-delta`),toolCallId:k(),inputTextDelta:k()}),I({type:F(`tool-input-available`),toolCallId:k(),toolName:k(),input:M(),providerExecuted:P().optional(),providerMetadata:Y.optional(),toolMetadata:So.optional(),dynamic:P().optional(),title:k().optional()}),I({type:F(`tool-input-error`),toolCallId:k(),toolName:k(),input:M(),providerExecuted:P().optional(),providerMetadata:Y.optional(),toolMetadata:So.optional(),dynamic:P().optional(),errorText:k(),title:k().optional()}),I({type:F(`tool-approval-request`),approvalId:k(),toolCallId:k(),isAutomatic:P().optional(),signature:k().optional()}),I({type:F(`tool-approval-response`),approvalId:k(),approved:P(),reason:k().optional(),providerExecuted:P().optional(),providerMetadata:Y.optional()}),I({type:F(`tool-output-available`),toolCallId:k(),output:M(),providerExecuted:P().optional(),providerMetadata:Y.optional(),toolMetadata:So.optional(),dynamic:P().optional(),preliminary:P().optional()}),I({type:F(`tool-output-error`),toolCallId:k(),errorText:k(),providerExecuted:P().optional(),providerMetadata:Y.optional(),toolMetadata:So.optional(),dynamic:P().optional()}),I({type:F(`tool-output-denied`),toolCallId:k()}),I({type:F(`reasoning-start`),id:k(),providerMetadata:Y.optional()}),I({type:F(`reasoning-delta`),id:k(),delta:k(),providerMetadata:Y.optional()}),I({type:F(`reasoning-end`),id:k(),providerMetadata:Y.optional()}),I({type:F(`custom`),kind:k().transform(e=>e),providerMetadata:Y.optional()}),I({type:F(`source-url`),sourceId:k(),url:k(),title:k().optional(),providerMetadata:Y.optional()}),I({type:F(`source-document`),sourceId:k(),mediaType:k(),title:k(),filename:k().optional(),providerMetadata:Y.optional()}),I({type:F(`file`),url:k(),mediaType:k(),providerMetadata:Y.optional()}),I({type:F(`reasoning-file`),url:k(),mediaType:k(),providerMetadata:Y.optional()}),I({type:le(e=>typeof e==`string`&&e.startsWith(`data-`),{message:`Type must start with "data-"`}),id:k().optional(),data:M(),transient:P().optional()}),I({type:F(`start-step`)}),I({type:F(`finish-step`)}),I({type:F(`start`),messageId:k().optional(),messageMetadata:M().optional()}),I({type:F(`finish`),finishReason:he([`stop`,`length`,`content-filter`,`tool-calls`,`error`,`other`]).optional(),messageMetadata:M().optional()}),I({type:F(`abort`),reason:k().optional()}),I({type:F(`message-metadata`),messageMetadata:M()})])));function wo(e){return e.type.startsWith(`data-`)}function To(){return Object.create(null)}function Eo(e){return e.type.startsWith(`tool-`)}function Do(e){return e.type===`dynamic-tool`}function Oo(e){return Eo(e)||Do(e)}function ko(e){return e.type.split(`-`).slice(1).join(`-`)}function Ao({lastMessage:e,messageId:t}){return{message:e?.role===`assistant`?e:{id:t,metadata:void 0,role:`assistant`,parts:[]},activeTextParts:To(),activeReasoningParts:To(),partialToolCalls:To()}}function jo({stream:e,messageMetadataSchema:t,dataPartSchemas:n,runUpdateMessageJob:r,onError:i,onToolCall:a,onData:o}){return e.pipeThrough(new TransformStream({async transform(e,s){await r(async({state:r,write:c})=>{function l(){let e=r.message.parts,t=e.length-1;for(;t>=0&&e[t].type!==`step-start`;)t--;return e.slice(t+1)}function u(){return l().filter(Oo)}function d(e){let t=u().find(t=>t.toolCallId===e);if(t==null){let n=r.message.parts;for(let r=n.length-1;r>=0;r--){let i=n[r];if(Oo(i)&&i.toolCallId===e){t=i;break}}}if(t==null)throw new Ba({chunkType:`tool-invocation`,chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function f(e){let t=r.message.parts.filter(Oo).find(t=>t.approval?.id===e);if(t==null)throw new Ba({chunkType:`tool-approval-response`,chunkId:e,message:`No tool invocation found for approval ID "${e}".`});return t}function p(e,t){let n=t??l().find(t=>Eo(t)&&t.toolCallId===e.toolCallId),i=e,a=n;if(n!=null){n.state=e.state,a.input=i.input,a.output=i.output,a.errorText=i.errorText,a.rawInput=i.rawInput,a.preliminary=i.preliminary,e.title!==void 0&&(a.title=e.title),e.toolMetadata!==void 0&&(a.toolMetadata=e.toolMetadata),a.providerExecuted=i.providerExecuted??n.providerExecuted;let t=i.providerMetadata;if(t!=null){if(e.state===`output-available`||e.state===`output-error`){let e=n;e.resultProviderMetadata=t}else n.callProviderMetadata=t}}else r.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,...e.toolMetadata===void 0?{}:{toolMetadata:e.toolMetadata},input:i.input,output:i.output,rawInput:i.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,preliminary:i.preliminary,...i.providerMetadata!=null&&(e.state===`output-available`||e.state===`output-error`)?{resultProviderMetadata:i.providerMetadata}:{},...i.providerMetadata!=null&&e.state!==`output-available`&&e.state!==`output-error`?{callProviderMetadata:i.providerMetadata}:{}})}function m(e,t){let n=t??l().find(t=>t.type===`dynamic-tool`&&t.toolCallId===e.toolCallId),i=e,a=n;if(n!=null){n.state=e.state,a.toolName=e.toolName,a.input=i.input,a.output=i.output,a.errorText=i.errorText,a.rawInput=i.rawInput??a.rawInput,a.preliminary=i.preliminary,e.title!==void 0&&(a.title=e.title),e.toolMetadata!==void 0&&(a.toolMetadata=e.toolMetadata),a.providerExecuted=i.providerExecuted??n.providerExecuted;let t=i.providerMetadata;if(t!=null){if(e.state===`output-available`||e.state===`output-error`){let e=n;e.resultProviderMetadata=t}else n.callProviderMetadata=t}}else r.message.parts.push({type:`dynamic-tool`,toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:i.input,output:i.output,errorText:i.errorText,preliminary:i.preliminary,providerExecuted:i.providerExecuted,title:e.title,...e.toolMetadata===void 0?{}:{toolMetadata:e.toolMetadata},...i.providerMetadata!=null&&(e.state===`output-available`||e.state===`output-error`)?{resultProviderMetadata:i.providerMetadata}:{},...i.providerMetadata!=null&&e.state!==`output-available`&&e.state!==`output-error`?{callProviderMetadata:i.providerMetadata}:{}})}async function h(e){if(e!=null){let n=r.message.metadata==null?e:Ha(r.message.metadata,e);t!=null&&await ya({value:n,schema:t,context:{field:`message.metadata`,entityId:r.message.id}}),r.message.metadata=n}}switch(e.type){case`text-start`:{let t={type:`text`,text:``,providerMetadata:e.providerMetadata,state:`streaming`};r.activeTextParts[e.id]=t,r.message.parts.push(t),c();break}case`text-delta`:{let t=r.activeTextParts[e.id];if(t==null)throw new Ba({chunkType:`text-delta`,chunkId:e.id,message:`Received text-delta for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});t.text+=e.delta,t.providerMetadata=e.providerMetadata??t.providerMetadata,c();break}case`text-end`:{let t=r.activeTextParts[e.id];if(t==null)throw new Ba({chunkType:`text-end`,chunkId:e.id,message:`Received text-end for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});t.state=`done`,t.providerMetadata=e.providerMetadata??t.providerMetadata,delete r.activeTextParts[e.id],c();break}case`custom`:{let t={type:`custom`,kind:e.kind,providerMetadata:e.providerMetadata};r.message.parts.push(t),c();break}case`reasoning-start`:{let t={type:`reasoning`,text:``,providerMetadata:e.providerMetadata,state:`streaming`};r.activeReasoningParts[e.id]=t,r.message.parts.push(t),c();break}case`reasoning-delta`:{let t=r.activeReasoningParts[e.id];if(t==null)throw new Ba({chunkType:`reasoning-delta`,chunkId:e.id,message:`Received reasoning-delta for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});t.text+=e.delta,t.providerMetadata=e.providerMetadata??t.providerMetadata,c();break}case`reasoning-end`:{let t=r.activeReasoningParts[e.id];if(t==null)throw new Ba({chunkType:`reasoning-end`,chunkId:e.id,message:`Received reasoning-end for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});t.providerMetadata=e.providerMetadata??t.providerMetadata,t.state=`done`,delete r.activeReasoningParts[e.id],c();break}case`file`:case`reasoning-file`:r.message.parts.push({type:e.type,mediaType:e.mediaType,url:e.url,...e.providerMetadata==null?{}:{providerMetadata:e.providerMetadata}}),c();break;case`source-url`:r.message.parts.push({type:`source-url`,sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),c();break;case`source-document`:r.message.parts.push({type:`source-document`,sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),c();break;case`tool-input-start`:{let t=l().filter(Eo);r.partialToolCalls[e.toolCallId]={text:``,toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title,toolMetadata:e.toolMetadata},e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:`input-streaming`,input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}):p({toolCallId:e.toolCallId,toolName:e.toolName,state:`input-streaming`,input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}),c();break}case`tool-input-delta`:{let t=r.partialToolCalls[e.toolCallId];if(t==null)throw new Ba({chunkType:`tool-input-delta`,chunkId:e.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${e.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});t.text+=e.inputTextDelta;let{value:n}=await fo(t.text);t.dynamic?m({toolCallId:e.toolCallId,toolName:t.toolName,state:`input-streaming`,input:n,title:t.title,toolMetadata:t.toolMetadata}):p({toolCallId:e.toolCallId,toolName:t.toolName,state:`input-streaming`,input:n,title:t.title,toolMetadata:t.toolMetadata}),c();break}case`tool-input-available`:e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:`input-available`,input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}):p({toolCallId:e.toolCallId,toolName:e.toolName,state:`input-available`,input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}),c(),a&&!e.providerExecuted&&await a({toolCall:e});break;case`tool-input-error`:{let t=l().filter(Oo).find(t=>t.toolCallId===e.toolCallId);(t==null?e.dynamic:t.type===`dynamic-tool`)?m({toolCallId:e.toolCallId,toolName:e.toolName,state:`output-error`,input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}):p({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}),c();break}case`tool-approval-request`:{let t=d(e.toolCallId);t.state=`approval-requested`,t.approval={id:e.approvalId,...e.isAutomatic===!0?{isAutomatic:!0}:{},...e.signature==null?{}:{signature:e.signature}},c();break}case`tool-approval-response`:{let t=f(e.approvalId),n=t.approval==null?{id:e.approvalId}:t.approval;t.state=`approval-responded`,t.approval={id:e.approvalId,approved:e.approved,...e.reason==null?{}:{reason:e.reason},...n.isAutomatic===!0?{isAutomatic:!0}:{},...n.signature==null?{}:{signature:n.signature}},e.providerExecuted!=null&&(t.providerExecuted=e.providerExecuted),e.providerMetadata!=null&&(t.callProviderMetadata=e.providerMetadata),c();break}case`tool-output-denied`:{let t=d(e.toolCallId);t.state=`output-denied`,c();break}case`tool-output-available`:{let t=d(e.toolCallId);t.type===`dynamic-tool`?m({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},t):p({toolCallId:e.toolCallId,toolName:ko(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},t),c();break}case`tool-output-error`:{let t=d(e.toolCallId);t.type===`dynamic-tool`?m({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},t):p({toolCallId:e.toolCallId,toolName:ko(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},t),c();break}case`start-step`:r.message.parts.push({type:`step-start`});break;case`finish-step`:r.activeTextParts=To(),r.activeReasoningParts=To();break;case`start`:e.messageId!=null&&(r.message.id=e.messageId),await h(e.messageMetadata),(e.messageId!=null||e.messageMetadata!=null)&&c();break;case`finish`:e.finishReason!=null&&(r.finishReason=e.finishReason),await h(e.messageMetadata),e.messageMetadata!=null&&c();break;case`message-metadata`:await h(e.messageMetadata),e.messageMetadata!=null&&c();break;case`error`:i?.(Error(e.errorText));break;default:if(wo(e)){if(n?.[e.type]!=null){let t=r.message.parts.findIndex(t=>`id`in t&&`data`in t&&t.id===e.id&&t.type===e.type),i=t>=0?t:r.message.parts.length;await ya({value:e.data,schema:n[e.type],context:{field:`message.parts[${i}].data`,entityName:e.type,entityId:e.id}})}let t=e;if(t.transient){o?.(t);break}let i=t.id==null?void 0:r.message.parts.find(e=>t.type===e.type&&t.id===e.id);i==null?r.message.parts.push(t):i.data=t.data,o?.(t),c()}}s.enqueue(e)})}}))}async function Mo({stream:e,onError:t}){let n=e.getReader();try{for(;;){let{done:e}=await n.read();if(e)break}}catch(e){t?.(e)}finally{n.releaseLock()}}Xr({prefix:`aitxt`,size:24}),Xr({prefix:`call`,size:24}),Xr({prefix:`aitxt`,size:24}),Xr({prefix:`call`,size:24});var No=N(k(),Ua.optional()),Po=N(k(),k()),Fo=la(()=>va(j(O({id:k(),role:he([`system`,`user`,`assistant`]),metadata:M().optional(),parts:j(A([O({type:F(`text`),text:k(),state:he([`streaming`,`done`]).optional(),providerMetadata:Y.optional()}),O({type:F(`reasoning`),text:k(),state:he([`streaming`,`done`]).optional(),providerMetadata:Y.optional()}),O({type:F(`custom`),kind:k(),providerMetadata:Y.optional()}),O({type:F(`source-url`),sourceId:k(),url:k(),title:k().optional(),providerMetadata:Y.optional()}),O({type:F(`source-document`),sourceId:k(),mediaType:k(),title:k(),filename:k().optional(),providerMetadata:Y.optional()}),O({type:F(`file`),mediaType:k(),filename:k().optional(),url:k(),providerReference:Po.optional(),providerMetadata:Y.optional()}),O({type:F(`reasoning-file`),mediaType:k(),url:k(),providerMetadata:Y.optional()}),O({type:F(`step-start`)}),O({type:k().startsWith(`data-`),id:k().optional(),data:M()}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`input-streaming`),input:M().optional(),providerExecuted:P().optional(),callProviderMetadata:Y.optional(),output:L().optional(),errorText:L().optional(),approval:L().optional()}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`input-available`),input:M(),providerExecuted:P().optional(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:L().optional()}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`approval-requested`),input:M(),providerExecuted:P().optional(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:O({id:k(),approved:L().optional(),reason:L().optional(),isAutomatic:P().optional(),signature:k().optional()})}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`approval-responded`),input:M(),providerExecuted:P().optional(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:O({id:k(),approved:P(),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()})}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`output-available`),input:M(),providerExecuted:P().optional(),output:M(),errorText:L().optional(),callProviderMetadata:Y.optional(),resultProviderMetadata:Y.optional(),preliminary:P().optional(),approval:O({id:k(),approved:F(!0),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()}).optional()}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`output-error`),input:M().optional(),rawInput:M().optional(),providerExecuted:P().optional(),output:L().optional(),errorText:k(),callProviderMetadata:Y.optional(),resultProviderMetadata:Y.optional(),approval:O({id:k(),approved:F(!0),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()}).optional()}),O({type:F(`dynamic-tool`),toolName:k(),toolCallId:k(),toolMetadata:No.optional(),state:F(`output-denied`),input:M(),providerExecuted:P().optional(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:O({id:k(),approved:F(!1),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()})}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`input-streaming`),providerExecuted:P().optional(),callProviderMetadata:Y.optional(),input:M().optional(),output:L().optional(),errorText:L().optional(),approval:L().optional()}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`input-available`),providerExecuted:P().optional(),input:M(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:L().optional()}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`approval-requested`),input:M(),providerExecuted:P().optional(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:O({id:k(),approved:L().optional(),reason:L().optional(),isAutomatic:P().optional(),signature:k().optional()})}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`approval-responded`),input:M(),providerExecuted:P().optional(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:O({id:k(),approved:P(),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()})}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`output-available`),providerExecuted:P().optional(),input:M(),output:M(),errorText:L().optional(),callProviderMetadata:Y.optional(),resultProviderMetadata:Y.optional(),preliminary:P().optional(),approval:O({id:k(),approved:F(!0),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()}).optional()}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`output-error`),providerExecuted:P().optional(),input:M().optional(),rawInput:M().optional(),output:L().optional(),errorText:k(),callProviderMetadata:Y.optional(),resultProviderMetadata:Y.optional(),approval:O({id:k(),approved:F(!0),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()}).optional()}),O({type:k().startsWith(`tool-`),toolCallId:k(),toolMetadata:No.optional(),state:F(`output-denied`),providerExecuted:P().optional(),input:M(),output:L().optional(),errorText:L().optional(),callProviderMetadata:Y.optional(),approval:O({id:k(),approved:F(!1),reason:k().optional(),isAutomatic:P().optional(),signature:k().optional()})})]))}).superRefine((e,t)=>{e.role!==`assistant`&&e.parts.length===0&&t.addIssue({origin:`array`,code:`too_small`,minimum:1,inclusive:!0,input:e.parts,path:[`parts`],message:`Message must contain at least one part`})})).nonempty(`Messages array must not be empty`)));async function Io({messages:e,metadataSchema:t,dataSchemas:n,tools:r}){try{if(e==null)return{success:!1,error:new Aa({parameter:`messages`,value:e,message:`messages parameter must be provided`})};let i=await ya({value:e,schema:Fo});if(t)for(let[e,n]of i.entries())await ya({value:n.metadata,schema:t,context:{field:`messages[${e}].metadata`,entityId:n.id}});if(n||r)for(let[e,t]of i.entries())for(let[i,a]of t.parts.entries()){if(n&&a.type.startsWith(`data-`)){let t=a,r=t.type.slice(5),o=n[r];if(!o)return{success:!1,error:new dn({value:t.data,cause:`No data schema found for data part ${r}`,context:{field:`messages[${e}].parts[${i}].data`,entityName:r,entityId:t.id}})};await ya({value:t.data,schema:o,context:{field:`messages[${e}].parts[${i}].data`,entityName:r,entityId:t.id}})}if(r&&a.type.startsWith(`tool-`)){let t=a,n=t.type.slice(5),o=lo(r,n);if(!o&&(t.state===`output-available`||t.state===`output-error`||t.state===`output-denied`))continue;if(!o)return{success:!1,error:new dn({value:t.input,cause:`No tool schema found for tool part ${n}`,context:{field:`messages[${e}].parts[${i}].input`,entityName:n,entityId:t.toolCallId}})};(t.state===`input-available`||t.state===`output-available`)&&await ya({value:t.input,schema:o.inputSchema,context:{field:`messages[${e}].parts[${i}].input`,entityName:n,entityId:t.toolCallId}}),t.state===`output-available`&&o.outputSchema&&await ya({value:t.output,schema:o.outputSchema,context:{field:`messages[${e}].parts[${i}].output`,entityName:n,entityId:t.toolCallId}})}}return{success:!0,data:i}}catch(e){return{success:!1,error:e}}}Xr({prefix:`call`,size:24}),Xr({prefix:`call`,size:24}),Xr({prefix:`aiobj`,size:24});var Lo=class{constructor(){this.queue=[],this.isProcessing=!1}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,n)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){n(e)}}),this.processQueue()})}};Xr({prefix:`aiobj`,size:24}),Xr({prefix:`call`,size:24});async function Ro({stream:e,onTextPart:t}){let n=e.pipeThrough(new TextDecoderStream).getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;await t(r)}}var zo=()=>fetch;async function Bo({api:e,prompt:t,credentials:n,headers:r,body:i,streamProtocol:a=`data`,setCompletion:o,setLoading:s,setError:c,setAbortController:l,onFinish:u,onError:d,fetch:f=zo()}){try{s(!0),c(void 0);let d=new AbortController;l(d),o(``);let p=await f(e,{method:`POST`,body:JSON.stringify({prompt:t,...i}),credentials:n,headers:ei({"Content-Type":`application/json`,...r},`ai-sdk/${Va}`,Qr()),signal:d.signal}).catch(e=>{throw e});if(!p.ok)throw Error(await p.text()??`Failed to fetch the chat response.`);if(!p.body)throw Error(`The response body is empty.`);let m=``;switch(a){case`text`:await Ro({stream:p.body,onTextPart:e=>{m+=e,o(m)}});break;case`data`:await Mo({stream:Sa({stream:p.body,schema:Co}).pipeThrough(new TransformStream({async transform(e){if(!e.success)throw e.error;let t=e.value;if(t.type===`text-delta`)m+=t.delta,o(m);else if(t.type===`error`)throw Error(t.errorText)}})),onError:e=>{throw e}});break;default:throw Error(`Unknown stream protocol: ${a}`)}return u&&u(t,m),l(null),m}catch(e){if(e.name===`AbortError`)return l(null),null;e instanceof Error&&d&&d(e),c(e)}finally{s(!1)}}async function Vo(e){if(e==null)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:n}=e;return{type:`file`,mediaType:n,filename:t,url:await new Promise((t,n)=>{let r=new FileReader;r.onload=e=>{t(e.target?.result)},r.onerror=e=>n(e),r.readAsDataURL(e)})}}))}var Ho=class{constructor({api:e=`/api/chat`,credentials:t,headers:n,body:r,fetch:i,prepareSendMessagesRequest:a,prepareReconnectToStreamRequest:o}){this.api=e,this.credentials=t,this.headers=n,this.body=r,this.fetch=i,this.prepareSendMessagesRequest=a,this.prepareReconnectToStreamRequest=o}async sendMessages({abortSignal:e,...t}){let n=await Ca(this.body),r=await Ca(this.headers),i=await Ca(this.credentials),a={...$r(r),...$r(t.headers)},o=await this.prepareSendMessagesRequest?.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...n,...t.body},headers:a,credentials:i,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId}),s=o?.api??this.api,c=o?.headers===void 0?a:$r(o.headers),l=o?.body===void 0?{...n,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId}:o.body,u=o?.credentials??i,d=await(this.fetch??globalThis.fetch)(s,{method:`POST`,headers:{"Content-Type":`application/json`,...c},body:JSON.stringify(l),credentials:u,signal:e});if(!d.ok)throw Error(await d.text()??`Failed to fetch the chat response.`);if(!d.body)throw Error(`The response body is empty.`);return this.processResponseStream(d.body)}async reconnectToStream(e){let t=await Ca(this.body),n=await Ca(this.headers),r=await Ca(this.credentials),i={...$r(n),...$r(e.headers)},a=await this.prepareReconnectToStreamRequest?.call(this,{api:this.api,id:e.chatId,body:{...t,...e.body},headers:i,credentials:r,requestMetadata:e.metadata}),o=a?.api??`${this.api}/${e.chatId}/stream`,s=a?.headers===void 0?i:$r(a.headers),c=a?.credentials??r,l=await(this.fetch??globalThis.fetch)(o,{method:`GET`,headers:s,credentials:c});if(l.status===204)return null;if(!l.ok)throw Error(await l.text()??`Failed to fetch the chat response.`);if(!l.body)throw Error(`The response body is empty.`);return this.processResponseStream(l.body)}},Uo=class extends Ho{constructor(e={}){super(e)}processResponseStream(e){return Sa({stream:e,schema:Co}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},Wo=class{constructor({generateId:e=Zr,id:t=e(),transport:n=new Uo,messageMetadataSchema:r,dataPartSchemas:i,state:a,onError:o,onToolCall:s,onFinish:c,onData:l,sendAutomaticallyWhen:u}){this.activeResponse=void 0,this.jobExecutor=new Lo,this.sendMessage=async(e,t)=>{if(e==null){await this.makeRequest({trigger:`submit-message`,messageId:this.lastMessage?.id,...t});return}let n;if(n=`text`in e||`files`in e?{parts:[...Array.isArray(e.files)?e.files:await Vo(e.files),...`text`in e&&e.text!=null?[{type:`text`,text:e.text}]:[]]}:e,e.messageId!=null){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(t===-1)throw Error(`message with id ${e.messageId} not found`);if(this.state.messages[t].role!==`user`)throw Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{...n,id:e.messageId,role:n.role??`user`,metadata:e.metadata})}else this.state.pushMessage({...n,id:n.id??this.generateId(),role:n.role??`user`,metadata:e.metadata});await this.makeRequest({trigger:`submit-message`,messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let n=e==null?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(n===-1)throw Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,this.messages[n].role===`assistant`?n:n+1),await this.makeRequest({trigger:`regenerate-message`,messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:`resume-stream`,...e})},this.clearError=()=>{this.status===`error`&&(this.state.error=void 0,this.setStatus({status:`ready`}))},this.addToolApprovalResponse=async({id:e,approved:t,reason:n,options:r})=>this.jobExecutor.run(async()=>{let i=this.state.messages,a=i[i.length-1],o=r=>Oo(r)&&r.state===`approval-requested`&&r.approval.id===e?{...r,state:`approval-responded`,approval:{...r.approval,id:e,approved:t,reason:n}}:r;this.state.replaceMessage(i.length-1,{...a,parts:a.parts.map(o)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(o)),this.status!==`streaming`&&this.status!==`submitted`&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{e&&this.makeRequest({trigger:`submit-message`,messageId:this.lastMessage?.id,...r})})}),this.addToolOutput=async({state:e=`output-available`,toolCallId:t,output:n,errorText:r,options:i})=>this.jobExecutor.run(async()=>{let a=this.state.messages,o=a[a.length-1],s=i=>Oo(i)&&i.toolCallId===t?{...i,state:e,output:n,errorText:r}:i;this.state.replaceMessage(a.length-1,{...o,parts:o.parts.map(s)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(s)),this.status!==`streaming`&&this.status!==`submitted`&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{e&&this.makeRequest({trigger:`submit-message`,messageId:this.lastMessage?.id,...i})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{(this.status===`streaming`||this.status===`submitted`)&&this.activeResponse?.abortController&&this.activeResponse.abortController.abort()},this.id=t,this.transport=n,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=i,this.state=a,this.onError=o,this.onToolCall=s,this.onFinish=c,this.onData=l,this.sendAutomaticallyWhen=u}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}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&&typeof e==`object`&&`then`in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:n,body:r,messageId:i}){var a;let o;if(e===`resume-stream`)try{let e=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:n,body:r});if(e==null)return;o=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 s=this.lastMessage,c=!1,l=!1,u=!1,d;try{let a={state:Ao({lastMessage:this.state.snapshot(s),messageId:this.generateId()}),abortController:new AbortController};d=a,a.abortController.signal.addEventListener(`abort`,()=>{c=!0}),this.activeResponse=a;let l;l=e===`resume-stream`?o:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:a.abortController.signal,metadata:t,headers:n,body:r,trigger:e,messageId:i}),await Mo({stream:jo({stream:l,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:e=>this.jobExecutor.run(()=>e({state:a.state,write:()=>{this.setStatus({status:`streaming`}),a.state.message.id===this.lastMessage?.id?this.state.replaceMessage(this.state.messages.length-1,a.state.message):this.state.pushMessage(a.state.message)}})),onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:`ready`})}catch(e){if(c||e.name===`AbortError`)return c=!0,this.setStatus({status:`ready`}),null;u=!0,e instanceof TypeError&&(e.message.toLowerCase().includes(`fetch`)||e.message.toLowerCase().includes(`network`))&&(l=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:`error`,error:e})}finally{try{d&&((a=this.onFinish)==null||a.call(this,{message:d.state.message,messages:this.state.messages,isAbort:c,isDisconnect:l,isError:u,finishReason:d.state.finishReason}))}catch(e){console.error(e)}this.activeResponse===d&&(this.activeResponse=void 0)}!u&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:`submit-message`,messageId:this.lastMessage?.id,metadata:t,headers:n,body:r})}};function Go({messages:e}){let t=e[e.length-1];if(!t||t.role!==`assistant`)return!1;let n=t.parts.reduce((e,t,n)=>t.type===`step-start`?n:e,-1),r=t.parts.slice(n+1).filter(Oo);return r.filter(e=>e.state===`approval-responded`).length>0&&r.every(e=>e.state===`output-available`||e.state===`output-error`||e.state===`approval-responded`)}function Ko({messages:e}){let t=e[e.length-1];if(!t||t.role!==`assistant`)return!1;let n=t.parts.reduce((e,t,n)=>t.type===`step-start`?n:e,-1),r=t.parts.slice(n+1).filter(Oo).filter(e=>!e.providerExecuted);return r.length>0&&r.every(e=>e.state===`output-available`||e.state===`output-error`)}var X=e(c(),1),qo=Ee(),Jo=Object.prototype.hasOwnProperty;function Yo(e,t){var n,r;if(e===t)return!0;if(e&&t&&(n=e.constructor)===t.constructor){if(n===Date)return e.getTime()===t.getTime();if(n===RegExp)return e.toString()===t.toString();if(n===Array){if((r=e.length)===t.length)for(;r--&&Yo(e[r],t[r]););return r===-1}if(!n||typeof e==`object`){for(n in r=0,e)if(Jo.call(e,n)&&++r&&!Jo.call(t,n)||!(n in t)||!Yo(e[n],t[n]))return!1;return Object.keys(t).length===r}}return e!==e&&t!==t}var Xo=new WeakMap,Zo=()=>{},Qo=Object,Z=e=>e===void 0,$o=e=>typeof e==`function`,es=(e,t)=>({...e,...t}),ts=e=>$o(e.then),ns={},rs={},is=`undefined`,as=typeof window!=is,os=typeof document!=is,ss=as&&`Deno`in window,cs=()=>as&&typeof window.requestAnimationFrame!=is,ls=(e,t)=>{let n=Xo.get(e);return[()=>!Z(t)&&e.get(t)||ns,r=>{if(!Z(t)){let i=e.get(t);t in rs||(rs[t]=i),n[5](t,es(i,r),i||ns)}},n[6],()=>!Z(t)&&t in rs?rs[t]:!Z(t)&&e.get(t)||ns]},us=!0,ds=()=>us,[fs,ps]=as&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[Zo,Zo],ms=()=>{let e=os&&document.visibilityState;return Z(e)||e!==`hidden`},hs=e=>(os&&document.addEventListener(`visibilitychange`,e),fs(`focus`,e),()=>{os&&document.removeEventListener(`visibilitychange`,e),ps(`focus`,e)}),gs=e=>{let t=()=>{us=!0,e()},n=()=>{us=!1};return fs(`online`,t),fs(`offline`,n),()=>{ps(`online`,t),ps(`offline`,n)}},_s={isOnline:ds,isVisible:ms},vs={initFocus:hs,initReconnect:gs},ys=!X.useId,bs=!as||ss,xs=e=>cs()?window.requestAnimationFrame(e):setTimeout(e,1),Ss=bs?X.useEffect:X.useLayoutEffect,Cs=typeof navigator<`u`&&navigator.connection,ws=!bs&&Cs&&([`slow-2g`,`2g`].includes(Cs.effectiveType)||Cs.saveData),Ts=new WeakMap,Es=e=>Qo.prototype.toString.call(e),Ds=(e,t)=>e===`[object ${t}]`,Os=0,ks=e=>{let t=typeof e,n=Es(e),r=Ds(n,`Date`),i=Ds(n,`RegExp`),a=Ds(n,`Object`),o,s;if(Qo(e)===e&&!r&&!i){if(o=Ts.get(e),o)return o;if(o=++Os+`~`,Ts.set(e,o),Array.isArray(e)){for(o=`@`,s=0;s<e.length;s++)o+=ks(e[s])+`,`;Ts.set(e,o)}if(a){o=`#`;let t=Qo.keys(e).sort();for(;!Z(s=t.pop());)Z(e[s])||(o+=s+`:`+ks(e[s])+`,`);Ts.set(e,o)}}else o=r?e.toJSON():t==`symbol`?e.toString():t==`string`?JSON.stringify(e):``+e;return o},As=e=>{if($o(e))try{e=e()}catch{e=``}let t=e;return e=typeof e==`string`?e:(Array.isArray(e)?e.length:e)?ks(e):``,[e,t]},js=0,Ms=()=>++js;async function Ns(...e){let[t,n,r,i]=e,a=es({populateCache:!0,throwOnError:!0},typeof i==`boolean`?{revalidate:i}:i||{}),o=a.populateCache,s=a.rollbackOnError,c=a.optimisticData,l=e=>typeof s==`function`?s(e):s!==!1,u=a.throwOnError;if($o(n)){let e=n,r=[],i=t.keys();for(let n of i)!/^\$(inf|sub)\$/.test(n)&&e(t.get(n)._k)&&r.push(n);return Promise.all(r.map(d))}return d(n);async function d(n){let[i]=As(n);if(!i)return;let[s,d]=ls(t,i),[f,p,m,h]=Xo.get(t),g=()=>{let e=f[i];return($o(a.revalidate)?a.revalidate(s().data,n):a.revalidate!==!1)&&(delete m[i],delete h[i],e&&e[0])?e[0](2).then(()=>s().data):s().data};if(e.length<3)return g();let _=r,v,y=!1,b=Ms();p[i]=[b,0];let x=!Z(c),S=s(),C=S.data,w=S._c,T=Z(w)?C:w;if(x&&(c=$o(c)?c(T,C):c,d({data:c,_c:T})),$o(_))try{_=_(T)}catch(e){v=e,y=!0}if(_&&ts(_)){if(_=await _.catch(e=>{v=e,y=!0}),b!==p[i][0]){if(y)throw v;return _}y&&x&&l(v)&&(o=!0,d({data:T,_c:void 0}))}if(o&&(y||($o(o)?d({data:o(_,T),error:void 0,_c:void 0}):d({data:_,error:void 0,_c:void 0}))),p[i][1]=Ms(),Promise.resolve(g()).then(()=>{d({_c:void 0})}),y){if(u)throw v;return}return _}}var Ps=(e,t)=>{for(let n in e)e[n][0]&&e[n][0](t)},Fs=(e,t)=>{if(!Xo.has(e)){let n=es(vs,t),r=Object.create(null),i=Ns.bind(void 0,e),a=Zo,o=Object.create(null),s=(e,t)=>{let n=o[e]||[];return o[e]=n,n.push(t),()=>{let e=n.indexOf(t);e>=0&&(n[e]=n[n.length-1],n.pop())}},c=(t,n,r)=>{e.set(t,n);let i=o[t];if(i)for(let e of i)e(n,r)},l=()=>{if(!Xo.has(e)&&(Xo.set(e,[r,Object.create(null),Object.create(null),Object.create(null),i,c,s]),!bs)){let t=n.initFocus(setTimeout.bind(void 0,Ps.bind(void 0,r,0))),i=n.initReconnect(setTimeout.bind(void 0,Ps.bind(void 0,r,1)));a=()=>{t&&t(),i&&i(),Xo.delete(e)}}};return l(),[e,i,l,a]}return[e,Xo.get(e)[4]]},Is=(e,t,n,r,i)=>{let a=n.errorRetryCount,o=i.retryCount,s=~~((Math.random()+.5)*(1<<(o<8?o:8)))*n.errorRetryInterval;!Z(a)&&o>a||setTimeout(r,s,i)},Ls=Yo,[Rs,zs]=Fs(new Map),Bs=es({onLoadingSlow:Zo,onSuccess:Zo,onError:Zo,onErrorRetry:Is,onDiscarded:Zo,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:ws?1e4:5e3,focusThrottleInterval:5e3,dedupingInterval:2e3,loadingTimeout:ws?5e3:3e3,compare:Ls,isPaused:()=>!1,cache:Rs,mutate:zs,fallback:{}},_s),Vs=(e,t)=>{let n=es(e,t);if(t){let{use:r,fallback:i}=e,{use:a,fallback:o}=t;r&&a&&(n.use=r.concat(a)),i&&o&&(n.fallback=es(i,o))}return n},Hs=(0,X.createContext)({}),Us=e=>{let{value:t}=e,n=(0,X.useContext)(Hs),r=$o(t),i=(0,X.useMemo)(()=>r?t(n):t,[r,n,t]),a=(0,X.useMemo)(()=>r?i:Vs(n,i),[r,n,i]),o=i&&i.provider,s=(0,X.useRef)(void 0);o&&!s.current&&(s.current=Fs(o(a.cache||Rs),i));let c=s.current;return c&&(a.cache=c[0],a.mutate=c[1]),Ss(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,X.createElement)(Hs.Provider,es(e,{value:a}))},Ws=as&&window.__SWR_DEVTOOLS_USE__,Gs=Ws?window.__SWR_DEVTOOLS_USE__:[],Ks=()=>{Ws&&(window.__SWR_DEVTOOLS_REACT__=X.default)},qs=e=>$o(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],Js=()=>{let e=(0,X.useContext)(Hs);return(0,X.useMemo)(()=>es(Bs,e),[e])},Ys=Gs.concat(e=>(t,n,r)=>e(t,n&&((...e)=>{let[r]=As(t),[,,,i]=Xo.get(Rs);if(r.startsWith(`$inf$`))return n(...e);let a=i[r];return Z(a)?n(...e):(delete i[r],a)}),r)),Xs=e=>function(...t){let n=Js(),[r,i,a]=qs(t),o=Vs(n,a),s=e,{use:c}=o,l=(c||[]).concat(Ys);for(let e=l.length;e--;)s=l[e](s);return s(r,i||o.fetcher||null,o)},Zs=(e,t,n)=>{let r=t[e]||(t[e]=[]);return r.push(n),()=>{let e=r.indexOf(n);e>=0&&(r[e]=r[r.length-1],r.pop())}};Ks();var Qs=X.use||(e=>{switch(e.status){case`pending`:throw e;case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:throw e.status=`pending`,e.then(t=>{e.status=`fulfilled`,e.value=t},t=>{e.status=`rejected`,e.reason=t}),e}}),$s={dedupe:!0},ec=Promise.resolve(void 0);ec.status=`fulfilled`,ec.value=void 0;var tc=()=>Zo,nc=(e,t,n)=>{let{cache:r,compare:i,suspense:a,fallbackData:o,revalidateOnMount:s,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:u,refreshWhenOffline:d,keepPreviousData:f,strictServerPrefetchWarning:p}=n,[m,h,g,_]=Xo.get(r),[v,y]=As(e),b=(0,X.useRef)(!1),x=(0,X.useRef)(!1),S=(0,X.useRef)(v),C=(0,X.useRef)(t),w=(0,X.useRef)(n),T=()=>w.current,ee=()=>T().isVisible()&&T().isOnline(),[E,te,ne,re]=ls(r,v),D=(0,X.useRef)({}).current,ie=Z(o)?Z(n.fallback)?void 0:n.fallback[v]:o,ae=(e,t)=>{for(let n in D){let r=n;if(r===`data`){if(!i(e[r],t[r])&&(!Z(e[r])||!i(j,t[r])))return!1}else if(t[r]!==e[r])return!1}return!0},oe=!b.current,se=(0,X.useMemo)(()=>{let e=E(),n=re(),r=e=>{let n=es(e);return delete n._k,!(!v||!t||T().isPaused())&&(oe&&!Z(s)?s:Z(Z(ie)?n.data:ie)||c)?{isValidating:!0,isLoading:!0,...n}:n},i=r(e),a=e===n?i:r(n),o=i;return[()=>{let e=r(E());return ae(e,o)?(o.data=e.data,o.isLoading=e.isLoading,o.isValidating=e.isValidating,o.error=e.error,o):(o=e,e)},()=>a]},[r,v]),O=(0,qo.useSyncExternalStore)((0,X.useCallback)(e=>ne(v,(t,n)=>{ae(n,t)||e()}),[r,v]),se[0],se[1]),ce=m[v]&&m[v].length>0,k=O.data,le=Z(k)?ie&&ts(ie)?Qs(ie):ie:k,A=O.error,ue=(0,X.useRef)(le),j=f?Z(k)?Z(ue.current)?le:ue.current:k:le,M=v&&Z(le),de=(0,X.useRef)(null);!bs&&(0,qo.useSyncExternalStore)(tc,()=>(de.current=!1,de),()=>(de.current=!0,de));let fe=de.current;p&&fe&&!a&&M&&console.warn(`Missing pre-initiated data for serialized key "${v}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);let N=!v||!t||T().isPaused()||ce&&!Z(A)?!1:oe&&!Z(s)?s:a?!Z(le)&&c:Z(le)||c,P=oe&&N,pe=Z(O.isValidating)?P:O.isValidating,F=Z(O.isLoading)?P:O.isLoading,me=(0,X.useCallback)(async e=>{let t=C.current;if(!v||!t||x.current||T().isPaused())return!1;let r,a,o=!0,s=e||{},c=!g[v]||!s.dedupe,l=()=>ys?!x.current&&v===S.current&&b.current:v===S.current,u={isValidating:!1,isLoading:!1},d=()=>{te(u)},f=()=>{let e=g[v];e&&e[1]===a&&delete g[v]},p={isValidating:!0};Z(E().data)&&(p.isLoading=!0);try{if(c&&(te(p),n.loadingTimeout&&Z(E().data)&&setTimeout(()=>{o&&l()&&T().onLoadingSlow(v,n)},n.loadingTimeout),g[v]=[t(y),Ms()]),[r,a]=g[v],r=await r,c&&setTimeout(f,n.dedupingInterval),!g[v]||g[v][1]!==a)return c&&l()&&T().onDiscarded(v),!1;u.error=void 0;let e=h[v];if(!Z(e)&&(a<=e[0]||a<=e[1]||e[1]===0))return d(),c&&l()&&T().onDiscarded(v),!1;let s=E().data;u.data=i(s,r)?s:r,c&&l()&&T().onSuccess(r,v,n)}catch(e){f();let t=T(),{shouldRetryOnError:n}=t;t.isPaused()||(u.error=e,c&&l()&&(t.onError(e,v,t),(n===!0||$o(n)&&n(e))&&(!T().revalidateOnFocus||!T().revalidateOnReconnect||ee())&&t.onErrorRetry(e,v,t,e=>{let t=m[v];t&&t[0]&&t[0](3,e)},{retryCount:(s.retryCount||0)+1,dedupe:!0})))}return o=!1,d(),!0},[v,r]),I=(0,X.useCallback)((...e)=>Ns(r,S.current,...e),[]);if(Ss(()=>{C.current=t,w.current=n,Z(k)||(ue.current=k)}),Ss(()=>{if(!v)return;let e=me.bind(void 0,$s),t=0;T().revalidateOnFocus&&(t=Date.now()+T().focusThrottleInterval);let n=Zs(v,m,(n,r={})=>{if(n==0){let n=Date.now();T().revalidateOnFocus&&n>t&&ee()&&(t=n+T().focusThrottleInterval,e())}else if(n==1)T().revalidateOnReconnect&&ee()&&e();else if(n==2)return me();else if(n==3)return me(r)});return x.current=!1,S.current=v,b.current=!0,te({_k:y}),N&&(g[v]||(Z(le)||bs?e():xs(e))),()=>{x.current=!0,n()}},[v]),Ss(()=>{let e;function t(){let t=$o(l)?l(E().data):l;t&&e!==-1&&(e=setTimeout(n,t))}function n(){!E().error&&(u||T().isVisible())&&(d||T().isOnline())?me($s).then(t):t()}return t(),()=>{e&&=(clearTimeout(e),-1)}},[l,u,d,v]),(0,X.useDebugValue)(j),a){if(!ys&&bs&&M)throw Error(`Fallback data is required when using Suspense in SSR.`);M&&(C.current=t,w.current=n,x.current=!1);let e=_[v];if(Qs(!Z(e)&&M?I(e):ec),!Z(A)&&M)throw A;let r=M?me($s):ec;!Z(j)&&M&&(r.status=`fulfilled`,r.value=!0),Qs(r)}return{mutate:I,get data(){return D.data=!0,j},get error(){return D.error=!0,A},get isValidating(){return D.isValidating=!0,pe},get isLoading(){return D.isLoading=!0,F}}};Qo.defineProperty(Us,`defaultValue`,{value:Bs});var rc=Xs(nc),ic=e(t(((e,t)=>{function n(e,t){if(typeof e!=`function`)throw TypeError(`Expected the first argument to be a \`function\`, got \`${typeof e}\`.`);let n,r=0;return function(...i){clearTimeout(n);let a=Date.now(),o=t-(a-r);o<=0?(r=a,e.apply(this,i)):n=setTimeout(()=>{r=Date.now(),e.apply(this,i)},o)}}t.exports=n}))(),1),Q=Te(),ac=(e,t,n)=>{if(!t.has(e))throw TypeError(`Cannot `+n)},$=(e,t,n)=>(ac(e,t,`read from private field`),n?n.call(e):t.get(e)),oc=(e,t,n)=>{if(t.has(e))throw TypeError(`Cannot add the same private member more than once`);t instanceof WeakSet?t.add(e):t.set(e,n)},sc=(e,t,n,r)=>(ac(e,t,`write to private field`),r?r.call(e,n):t.set(e,n),n);function cc(e,t){return t==null?e:(0,ic.default)(e,t)}var lc,uc,dc,fc,pc,mc,hc,gc,_c,vc=class{constructor(e=[]){oc(this,lc,void 0),oc(this,uc,`ready`),oc(this,dc,void 0),oc(this,fc,new Set),oc(this,pc,new Set),oc(this,mc,new Set),this.pushMessage=e=>{sc(this,lc,$(this,lc).concat(e)),$(this,hc).call(this)},this.popMessage=()=>{sc(this,lc,$(this,lc).slice(0,-1)),$(this,hc).call(this)},this.replaceMessage=(e,t)=>{sc(this,lc,[...$(this,lc).slice(0,e),this.snapshot(t),...$(this,lc).slice(e+1)]),$(this,hc).call(this)},this.snapshot=e=>structuredClone(e),this[`~registerMessagesCallback`]=(e,t)=>{let n=t?cc(e,t):e;return $(this,fc).add(n),()=>{$(this,fc).delete(n)}},this[`~registerStatusCallback`]=e=>($(this,pc).add(e),()=>{$(this,pc).delete(e)}),this[`~registerErrorCallback`]=e=>($(this,mc).add(e),()=>{$(this,mc).delete(e)}),oc(this,hc,()=>{$(this,fc).forEach(e=>e())}),oc(this,gc,()=>{$(this,pc).forEach(e=>e())}),oc(this,_c,()=>{$(this,mc).forEach(e=>e())}),sc(this,lc,e)}get status(){return $(this,uc)}set status(e){sc(this,uc,e),$(this,gc).call(this)}get error(){return $(this,dc)}set error(e){sc(this,dc,e),$(this,_c).call(this)}get messages(){return $(this,lc)}set messages(e){sc(this,lc,[...e]),$(this,hc).call(this)}};lc=new WeakMap,uc=new WeakMap,dc=new WeakMap,fc=new WeakMap,pc=new WeakMap,mc=new WeakMap,hc=new WeakMap,gc=new WeakMap,_c=new WeakMap;var yc,bc=class extends Wo{constructor({messages:e,...t}){let n=new vc(e);super({...t,state:n}),oc(this,yc,void 0),this[`~registerMessagesCallback`]=(e,t)=>$(this,yc)[`~registerMessagesCallback`](e,t),this[`~registerStatusCallback`]=e=>$(this,yc)[`~registerStatusCallback`](e),this[`~registerErrorCallback`]=e=>$(this,yc)[`~registerErrorCallback`](e),sc(this,yc,n)}};yc=new WeakMap;function xc({throttle:e,experimental_throttle:t,resume:n=!1,...r}={}){let i=e??t,a=(0,X.useRef)({});`chat`in r||(a.current={onToolCall:r.onToolCall,onData:r.onData,onFinish:r.onFinish,onError:r.onError,sendAutomaticallyWhen:r.sendAutomaticallyWhen,transport:r.transport});let o,s=()=>a.current.transport??(o??=new Uo),c={...r,transport:{sendMessages:e=>s().sendMessages(e),reconnectToStream:e=>s().reconnectToStream(e)},onToolCall:e=>{var t;return(t=a.current).onToolCall?.call(t,e)},onData:e=>{var t;return(t=a.current).onData?.call(t,e)},onFinish:e=>{var t;return(t=a.current).onFinish?.call(t,e)},onError:e=>{var t;return(t=a.current).onError?.call(t,e)},sendAutomaticallyWhen:e=>{var t;return(t=a.current).sendAutomaticallyWhen?.call(t,e)??!1}},l=(0,X.useRef)(`chat`in r?r.chat:new bc(c));(`chat`in r&&r.chat!==l.current||`id`in r&&r.id!=null&&l.current.id!==r.id)&&(l.current=`chat`in r?r.chat:new bc(c));let u=(0,X.useCallback)(e=>l.current[`~registerMessagesCallback`](e,i),[i,l.current.id]),d=(0,X.useSyncExternalStore)(u,()=>l.current.messages,()=>l.current.messages),f=(0,X.useSyncExternalStore)(l.current[`~registerStatusCallback`],()=>l.current.status,()=>l.current.status),p=(0,X.useSyncExternalStore)(l.current[`~registerErrorCallback`],()=>l.current.error,()=>l.current.error),m=(0,X.useCallback)(e=>{typeof e==`function`&&(e=e(l.current.messages)),l.current.messages=e},[l]);return(0,X.useEffect)(()=>{n&&l.current.resumeStream()},[n,l]),{id:l.current.id,messages:d,setMessages:m,sendMessage:l.current.sendMessage,regenerate:l.current.regenerate,clearError:l.current.clearError,stop:l.current.stop,error:p,resumeStream:l.current.resumeStream,status:f,addToolResult:l.current.addToolOutput,addToolOutput:l.current.addToolOutput,addToolApprovalResponse:l.current.addToolApprovalResponse}}function Sc({api:e=`/api/completion`,id:t,initialCompletion:n=``,initialInput:r=``,credentials:i,headers:a,body:o,streamProtocol:s=`data`,fetch:c,onFinish:l,onError:u,throttle:d,experimental_throttle:f}={}){let p=d??f,m=(0,X.useId)(),h=t||m,{data:g,mutate:_}=rc([e,h],null,{fallbackData:n}),{data:v=!1,mutate:y}=rc([h,`loading`],null),[b,x]=(0,X.useState)(void 0),S=g,[C,w]=(0,X.useState)(null),T=(0,X.useRef)({credentials:i,headers:a,body:o});(0,X.useEffect)(()=>{T.current={credentials:i,headers:a,body:o}},[i,a,o]);let ee=(0,X.useCallback)(async(t,n)=>Bo({api:e,prompt:t,credentials:T.current.credentials,headers:{...T.current.headers,...n?.headers},body:{...T.current.body,...n?.body},streamProtocol:s,fetch:c,setCompletion:cc(e=>_(e,!1),p),setLoading:y,setError:x,setAbortController:w,onFinish:l,onError:u}),[_,y,e,T,w,l,u,x,s,c,p]),E=(0,X.useCallback)(()=>{C&&(C.abort(),w(null))},[C]),te=(0,X.useCallback)(e=>{_(e,!1)},[_]),ne=(0,X.useCallback)(async(e,t)=>ee(e,t),[ee]),[re,D]=(0,X.useState)(r),ie=(0,X.useCallback)(e=>{var t;return(t=e?.preventDefault)==null||t.call(e),re?ne(re):void 0},[re,ne]);return{completion:S,complete:ne,error:b,setCompletion:te,stop:E,input:re,setInput:D,handleInputChange:(0,X.useCallback)(e=>{D(e.target.value)},[D]),handleSubmit:ie,isLoading:v}}function Cc(e){return Pe.define({combine:t=>t[0]??e})}var wc=Cc({}),Tc=Re.define(),Ec=Re.define(),Dc=50,Oc=Fe.define({create(){return{prompts:[],navigationIndex:-1,originalText:``}},update(e,t){let n={...e};t.docChanged&&e.navigationIndex!==-1&&(t.effects.some(e=>e.is(Ec)||e.is(Tc))||(n.navigationIndex=-1,n.originalText=``));for(let r of t.effects)if(r.is(Tc)){let i=r.value.trim();i&&(n.prompts=[i,...e.prompts.filter(e=>e!==i)].slice(0,Dc),t.state.facet(wc).save?.(n.prompts)),n.navigationIndex=-1,n.originalText=``}else r.is(Ec)&&(n.navigationIndex=r.value.index,n.originalText=r.value.originalText);return n}}),kc=e=>{let t=e.state.field(Oc),n=e.state.doc;if(t.prompts.length===0)return!1;let r,i=t.originalText;if(t.navigationIndex===-1){if(n.length>0)return!1;r=0,i=n.toString()}else if(r=Math.min(t.navigationIndex+1,t.prompts.length-1),r===t.navigationIndex)return!1;let a=t.prompts[r];return e.dispatch({changes:{from:0,to:e.state.doc.length,insert:a},effects:Ec.of({index:r,originalText:i})}),!0},Ac=e=>{let t=e.state.field(Oc);if(t.navigationIndex===-1)return!1;let n,r;return t.navigationIndex===0?(n=t.originalText,r=-1):(r=t.navigationIndex-1,n=t.prompts[r]??``),e.dispatch({changes:{from:0,to:e.state.doc.length,insert:n},effects:Ec.of({index:r,originalText:t.originalText})}),!0},jc=e=>{let t=e.state.doc.toString();return t.trim()?(e.dispatch({effects:Tc.of(t)}),!0):!1};function Mc(e={}){let{storage:t,defaultKeymap:n=!0}=e,r=[Oc.init(()=>({prompts:t?.load?.()??[],navigationIndex:-1,originalText:``})),wc.of(t??{})];return n&&r.push(Ie.of([{key:`ArrowUp`,run:kc},{key:`ArrowDown`,run:Ac}])),r}var Nc=class extends Error{code;isRetryable;suggestedFix;meta;constructor(e,t=`TOOL_ERROR`,n=!1,r,i){super(e),this.name=`ToolExecutionError`,this.code=t,this.isRetryable=n,this.suggestedFix=r,this.meta=i}toStructuredString(){let e=JSON.stringify({message:this.message,code:this.code,is_retryable:this.isRetryable,...this.suggestedFix&&{suggested_fix:this.suggestedFix},...this.meta&&{meta:this.meta}});return`Error invoking tool ${this.name}: ${e}`}},Pc=O({status:he([`success`,`error`,`warning`]).optional(),auth_required:P().optional(),next_steps:j(k()).optional(),action_url:k().optional(),message:k().optional(),meta:N(k(),M()).optional()});function Fc(e,t){return e?!!([`image/`,`video/`,`audio/`,`application/pdf`].some(t=>e.startsWith(t))||[`svg`,`vega`].some(t=>e.includes(t))||e===`text/html`&&[`<img`,`<video`,`<audio`,`<iframe`,`<canvas`,`<svg`,`<marimo-ui-element`].some(e=>t.includes(e))):!1}var Ic=class extends _t{title=`Cell Outputs`;mentionPrefix=`@`;contextType=`cell-output`;store;constructor(e){super(),this.store=e}getItems(){let e=this.store.get(se),t=[];for(let n of e.cellIds.inOrderIds){let r=zc(n,e),i=r.cellOutput;if(!i)continue;let a=i.output.mimetype||`unknown`;t.push({uri:this.asURI(n),name:r.cellName,type:this.contextType,description:`Cell output (${a})`,data:{...r,cellOutput:i}})}return t}formatCompletion(e){let{cellOutput:t,cellName:n,cellCode:r}=e.data;return{label:`@${n}`,displayLabel:n,detail:`${t.outputType} output`,boost:t.outputType===`media`?mt.HIGH:mt.MEDIUM,type:this.contextType,section:ft.CELL_OUTPUT,apply:`@${n}`,info:()=>{let e=document.createElement(`div`);e.classList.add(`mo-cm-tooltip`,`docs-documentation`,`min-w-[300px]`,`max-w-[500px]`,`flex`,`flex-col`,`gap-2`);let i=document.createElement(`div`);i.classList.add(`flex`,`flex-col`,`gap-1`);let a=document.createElement(`div`);a.classList.add(`font-bold`,`text-base`),a.textContent=n,i.append(a);let o=document.createElement(`div`);if(o.classList.add(`text-sm`,`text-muted-foreground`),i.append(o),e.append(i),r){let t=document.createElement(`div`);t.classList.add(`text-xs`,`font-medium`,`text-muted-foreground`),t.textContent=`Code:`,e.append(t);let n=document.createElement(`div`);n.classList.add(`text-xs`,`font-mono`,`bg-muted`,`p-2`,`rounded`,`max-h-20`,`overflow-y-auto`),n.textContent=r.slice(0,200)+(r.length>200?`...`:``),e.append(n)}if(t.processedContent){let n=document.createElement(`div`);n.classList.add(`text-xs`,`font-medium`,`text-muted-foreground`,`mt-2`),n.textContent=`Output Preview:`,e.append(n);let r=document.createElement(`div`);r.classList.add(`text-xs`,`bg-muted`,`p-2`,`rounded`,`max-h-24`,`overflow-y-auto`,`mb-2`),r.textContent=t.processedContent.slice(0,300)+(t.processedContent.length>300?`...`:``),e.append(r)}if(t.outputType===`media`){let t=document.createElement(`div`);t.classList.add(`text-xs`,`text-muted-foreground`,`italic`,`mb-2`),t.textContent=`A screenshot of the output will be attached`,e.append(t)}return e}}}formatContext(e){let{cellOutput:t,cellName:n,cellId:r,cellCode:i}=e.data,a={name:n,cellId:r,outputType:t.outputType,mimetype:t.output.mimetype},o=`Cell Code:\n${i}\n\n`;return t.outputType===`text`&&t.processedContent?o+=`Output:\n${t.processedContent}`:t.outputType===`media`&&(o+=`Media Output: Contains ${t.output.mimetype} content`,t.imageUrl&&(o+=`\nImage URL: ${t.imageUrl}`)),gt({type:this.contextType,data:a,details:o})}async getAttachments(e){let t=e[0].data.cellId,n=e[0].data.cellName;return Lc(e.map(e=>e.data.cellOutput),t,n)}};async function Lc(e,t,n){let r=e.filter(e=>e.shouldDownloadImage&&e.outputType===`media`);if(r.length===0)return[];let i=r.flatMap(e=>{let r=document.getElementById(l.create(t));return r?{cellId:t,cellName:n,mimetype:e.output.mimetype,element:r}:(R.warn(`Output element not found for cell ${t}`),[])});try{return await Promise.all(i.map(async e=>({type:`file`,filename:`${n}-output-screenshot`,mediaType:`image/png`,url:await At(e.element)})))}catch(e){return R.error(`Error downloading cell output images:`,e),[]}}function Rc(e){if(at(e))return null;let t=e.mimetype,n=Fc(t,String(e.data))?`media`:`text`,r=Nt(e),i,a=!1;return n===`media`&&(typeof e.data==`string`&&e.data.startsWith(`data:`)||typeof e.data==`string`&&e.data.startsWith(`http`)?i=e.data:a=!0),{processedContent:r,imageUrl:i,shouldDownloadImage:a,outputType:n,output:e}}function zc(e,t,n){let{includeConsoleOutput:r=!1}=n||{},i=t.cellRuntime[e],a=t.cellData[e],o=t.cellIds.inOrderIds.indexOf(e),s=d(a.name,o),c;r&&(c=i.consoleOutputs.map(e=>Rc(e)).filter(e=>e!==null));let l,u=i.output;return u&&!at(u)&&(l=Rc(u)??void 0),{cellId:e,cellName:s,cellCode:a.code,cellOutput:l,consoleOutputs:c}}function Bc(e,t){let n=[`Code:\n${e.cellCode}`];if(e.tracebackHtml&&n.push(`Traceback:\n${D(e.tracebackHtml)}`),e.errorData.length>0&&n.push(e.errorData.map(e=>Ft(e)).join(`
|
|
21
|
-
|
|
22
|
-
`)),e.errorData.some(e=>e.type===`sql-error`)){let r=ht(e.cellId,t);r&&n.push(`Database schema:\n${r}`)}return n.join(`
|
|
23
|
-
|
|
24
|
-
`)}function Vc(e,t){return gt({type:`error`,data:{name:e.cellName||`Cell ${e.cellId}`,cellId:e.cellId},details:Bc(e,t)})}function Hc(e){return e.errorData.length===1?It(e.errorData[0]):e.errorData.length>1?`${e.errorData.length} errors`:e.tracebackHtml?D(e.tracebackHtml).trim().split(`
|
|
25
|
-
`).find(e=>e.trim())?.trim()||`traceback`:`error`}function Uc(e){return`Error: ${e.cellName||`Cell ${e.cellId}`}`}var Wc=new ee(`error`,`errors`),Gc=class extends _t{title=`Errors`;mentionPrefix=`@`;contextType=`error`;store;constructor(e){super(),this.store=e}getItems(){let e=Pt(this.store);if(e.length===0)return[];let t=[{uri:this.asURI(`all`),name:`Errors`,type:this.contextType,data:{type:`all-errors`,errors:e},description:`All errors in the notebook`}];for(let n of e)t.push({uri:this.asURI(n.cellId),name:Uc(n),type:this.contextType,data:{type:`cell-error`,error:n},description:Hc(n)});return t}formatCompletion(e){if(e.data.type===`all-errors`){let t=e.data.errors.length;return{label:`@Errors`,displayLabel:`Errors`,detail:`${t} ${Wc.pluralize(t)}`,type:`error`,apply:`@error://all`,section:ft.ERROR,info:()=>{let e=document.createElement(`div`);e.classList.add(`mo-cm-tooltip`,`docs-documentation`,`min-w-[200px]`,`flex`,`flex-col`,`gap-1`,`p-2`);let n=document.createElement(`div`);n.classList.add(`flex`,`flex-col`,`gap-1`);let r=document.createElement(`div`);r.classList.add(`font-bold`,`text-base`),r.textContent=`Errors`,n.append(r);let i=document.createElement(`div`);return i.classList.add(`text-sm`,`text-muted-foreground`),i.textContent=`${t} ${Wc.pluralize(t)}`,n.append(i),e.append(n),e}}}if(e.data.type===`cell-error`){let{error:t}=e.data;return{...this.createBasicCompletion(e,{detail:Hc(t),type:`error`}),section:ft.ERROR}}return{label:`Error`,displayLabel:`Error`,section:ft.ERROR}}formatContext(e){return(e.data.type===`all-errors`?e.data.errors:[e.data.error]).map(e=>Vc(e,this.store)).join(`
|
|
26
|
-
|
|
27
|
-
`)}},Kc=_(),qc={maxDepth:3,maxResults:20,defaultResultsLimit:5,includeDirectories:!1},Jc=class extends _t{title=`Files`;mentionPrefix=`#`;contextType=`file`;apiRequests;config;constructor(e,t=qc){super(),this.apiRequests=e,this.config=t}createCompletionSource(){return async e=>{let t=e.matchBefore(/#[^\s#]*/);if(!t)return null;let n=t.text;if(!n.startsWith(`#`))return null;let r=n.slice(1);if(r.length===0)return this.getDefaultCompletions(t);try{let e=(await this.searchFiles(r)||[]).map(e=>{let t={uri:this.asURI(e.path),name:e.name,type:this.contextType,description:e.isDirectory?`Directory`:`File`,data:{path:e.path,isDirectory:e.isDirectory}};return this.formatCompletion(t)});return{from:t.from,options:e}}catch(e){return R.error(`Failed to search files:`,e),null}}}searchFiles=async(e,t={})=>{let{maxDepth:n,maxResults:r,includeDirectories:i}={...this.config,...t};return(await this.apiRequests.sendSearchFiles({query:e,includeFiles:!0,includeDirectories:i,depth:n,limit:r})).files};async getDefaultCompletions(e){try{for(let t of[`py`,`md`,`csv`])try{let n=await this.searchFiles(t,{maxDepth:1,maxResults:5});if(n&&n.length>0){let t=n.map(e=>{let t={uri:this.asURI(e.path),name:e.name,type:this.contextType,description:e.isDirectory?`Directory`:`File`,data:{path:e.path,isDirectory:e.isDirectory}};return this.formatCompletion(t)});return{from:e.from,options:t}}}catch(e){R.error(`Failed to get default file completions:`,e)}return{from:e.from,options:[]}}catch(e){return R.error(`Failed to get default file completions:`,e),null}}getItems(){return[]}formatCompletion(e){let{data:t,name:n}=e,r=t.isDirectory?`📁`:`📄`;return{...this.createBasicCompletion(e),type:`file`,section:ft.FILE,boost:t.isDirectory?mt.MEDIUM:mt.LOW,detail:t.path,displayLabel:`${r} ${n}`,apply:async(e,r,i,a)=>{let o=e.state.facet(Kc)?.addAttachment;if(!o){R.warn(`No addAttachment callback provided`);return}let s=await this.apiRequests.sendFileDetails({path:t.path}).catch(e=>(xt({title:`Failed to get file details`,description:e.message}),null));if(!s)return;let c=s.mimeType||`text/plain`,l=Tt({contents:s.contents??``,mimeType:c,isBase64:s.isBase64??!1});o(new File([l],n,{type:c})),e.dispatch({changes:{from:i,to:a,insert:``}}),Ye(e)},info:()=>{let e=document.createElement(`div`);e.classList.add(`flex`,`flex-col`,`gap-1`,`p-2`);let r=document.createElement(`div`);r.classList.add(`font-bold`),r.textContent=n,e.append(r);let i=document.createElement(`div`);return i.classList.add(`text-xs`,`text-muted-foreground`),i.textContent=t.path,e.append(i),e}}}formatContext(e){let{data:t,name:n}=e;return gt({type:this.contextType,data:{name:n,path:t.path,isDirectory:t.isDirectory},details:t.isDirectory?`Directory containing files and subdirectories`:`File`})}},Yc=class extends _t{title=`Tables`;mentionPrefix=`@`;contextType=`data`;tablesMap;constructor(e){super(),this.tablesMap=e}getItems(){return[...this.tablesMap.entries()].map(([e,t])=>({uri:this.asURI(e),name:e,type:this.contextType,description:t.source===`memory`?`in-memory`:t.source,data:t}))}formatContext(e){let{data:t}=e,{columns:n,source:r,num_rows:i,num_columns:a,name:o,variable_name:s}=t,c=[i==null?void 0:`${i} rows`,a==null?void 0:`${a} columns`].filter(Boolean).join(`, `),l=``;if(c&&(l+=`Shape: ${c}\n`),s&&(l+=`Variable: ${s}\n`),n&&n.length>0){l+=`Columns:
|
|
28
|
-
`;for(let e of n){let t=` ${e.name} (${e.type})`;if(e.sample_values&&e.sample_values.length>0){let n=e.sample_values.slice(0,3).map(e=>e===null?`null`:String(e)).join(`, `);t+=` - samples: [${n}]`}l+=`${t}\n`}}return gt({type:this.contextType,data:{name:o,source:r??`unknown`},details:l.trim()})}formatCompletion(e){let t=e.data.name,n=e.data;return{label:`@${t}`,displayLabel:t,detail:n.source===`memory`?`in-memory`:n.source,boost:n.source_type===`local`?mt.LOCAL_TABLE:mt.REMOTE_TABLE,type:re(n),apply:`@${t}`,section:{name:re(n)===`dataframe`?`Dataframe`:`Table`,rank:ft.TABLE.rank},info:()=>this.createTableInfoElement(t,n)}}createTableInfoElement(e,t){let n=document.createElement(`div`);n.classList.add(`mo-cm-tooltip`,`docs-documentation`,`min-w-[200px]`,`flex`,`flex-col`,`gap-1`,`p-2`);let r=document.createElement(`div`);r.classList.add(`flex`,`flex-col`,`gap-1`);let i=document.createElement(`div`);if(i.classList.add(`font-bold`,`text-base`),i.textContent=e,r.append(i),t.source){let e=document.createElement(`div`);e.classList.add(`text-xs`,`text-muted-foreground`),e.textContent=`Source: ${t.source}`,r.append(e)}n.append(r);let a=[t.num_rows==null?void 0:`${t.num_rows} rows`,t.num_columns==null?void 0:`${t.num_columns} columns`].filter(Boolean).join(`, `);if(a){let e=document.createElement(`div`);e.classList.add(`text-xs`,`bg-muted`,`px-2`,`py-1`,`rounded`),e.textContent=a,n.append(e)}if(t.columns&&t.columns.length>0){let e=document.createElement(`div`);e.classList.add(`overflow-auto`,`max-h-60`);let r=document.createElement(`table`);r.classList.add(`w-full`,`text-xs`,`border-collapse`);let i=r.insertRow();i.classList.add(`bg-muted`);let a=i.insertCell();a.classList.add(`p-2`,`font-medium`,`text-left`),a.textContent=`Column`;let o=i.insertCell();o.classList.add(`p-2`,`font-medium`,`text-left`),o.textContent=`Type`;let s=t.columns.some(e=>this.getItemMetadata(t,e)!==void 0),c;s&&(c=i.insertCell(),c.classList.add(`p-2`,`font-medium`,`text-left`),c.textContent=`Metadata`),t.columns.forEach((e,n)=>{let i=r.insertRow();i.classList.add(n%2==0?`bg-background`:`bg-muted/30`);let a=i.insertCell();a.classList.add(`p-2`,`font-mono`),a.textContent=e.name;let o=i.insertCell();if(o.classList.add(`p-2`,`text-muted-foreground`),o.textContent=e.type,s){let n=i.insertCell();n.classList.add(`p-2`);let r=this.getItemMetadata(t,e);r&&n.append(r)}}),e.append(r),n.append(e)}return n}getItemMetadata(e,t){let n=e.primary_keys?.includes(t.name),r=e.indexes?.includes(t.name);if(n||r){let e=document.createElement(`span`);e.textContent=n?`PK`:`IDX`;let t=n?`bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200`:`bg-amber-100 text-amber-800 dark:bg-amber-900 dark:text-amber-200`;return e.classList.add(`text-xs`,`px-1.5`,`py-0.5`,`rounded-full`,`font-medium`,...t.split(` `)),e}}},Xc=class extends _t{title=`Variables`;mentionPrefix=`@`;contextType=`variable`;variables;tablesMap;constructor(e,t){super(),this.variables=e,this.tablesMap=t}getItems(){let e=new Set(this.tablesMap.keys());return Object.entries(this.variables).flatMap(([t,n])=>e.has(t)?[]:[{uri:this.asURI(t),name:t,type:this.contextType,description:n.dataType??``,dataType:n.dataType,data:{variable:n}}])}formatCompletion(e){let{data:t}=e,{variable:n}=t;return{label:`@${n.name}`,displayLabel:n.name,detail:n.dataType??``,type:this.contextType,section:ft.VARIABLE,info:()=>x(n)}}formatContext(e){let{data:t}=e,{variable:n}=t;return gt({type:this.contextType,data:{name:n.name,dataType:n.dataType},details:n.value==null?void 0:JSON.stringify(n.value)})}};function Zc(e){let t=e.get(C),n=e.get(te),r=e.get(v);return new pt().register(new Yc(n)).register(new Xc(r,n)).register(new Gc(e)).register(new Ic(e)).register(new vt(t.connectionsMap,n))}function Qc(){return new Jc($e())}function $c({input:e}){let t=``;return e.includes(`@`)&&(t=sl(e),R.debug(`Included context`,t)),{includeOtherCode:ie(``),context:{plainText:t,schema:[],variables:[]}}}var el=`data-marimo-context`,tl={marimo:{source:`context`}};function nl(e){return e.type===`file`&&e.providerMetadata?.marimo?.source===tl.marimo.source}function rl(e){return{...e,providerMetadata:{...e.providerMetadata,marimo:{...e.providerMetadata?.marimo,...tl.marimo}}}}async function il(e){if(!e.includes(`@`))return{plainText:``,contextIds:[],attachments:[]};let t=Zc(o),n=t.parseAllContextIds(e);if(n.length===0)return{plainText:``,contextIds:[],attachments:[]};let r=t.formatContextForAI(n),i=[];try{i=(await t.getAttachmentsForContext(n)).map(rl)}catch(e){R.error(`Error getting attachments:`,e)}return{plainText:r,contextIds:n,attachments:i}}async function al(e){let{plainText:t,contextIds:n,attachments:r}=await il(e),i=null;return t.trim()&&(i={type:el,data:{plainText:t,contextIds:n.map(String)}}),{contextPart:i,attachments:r}}async function ol({input:e}){let{plainText:t,attachments:n}=await il(e);return{body:{includeOtherCode:ie(``),context:{plainText:t,schema:[],variables:[]}},attachments:n}}function sl(e){let t=Zc(o),n=t.parseAllContextIds(e);return t.formatContextForAI(n)}function cl(e,t=[]){return n=>{let r=e.map(e=>n.matchBefore(e)).find(Boolean);return!r||r&&r.from===r.to&&!n.explicit?null:{from:r?.from,options:[...t]}}}function ll(e){if(e.current?.view){let t=e.current.view.state.selection.main.from;e.current.view.dispatch({changes:{from:t,to:t,insert:`@`},selection:{anchor:t+1,head:t+1}}),e.current.view.focus(),qe(e.current.view)}}function ul(e){if(e.trim().length===0)return[];if(!e.includes("```"))return[{language:`python`,code:e}];let t=[],n=0,r=e.indexOf("```",n);for(;r!==-1;){let i=e.indexOf(`
|
|
29
|
-
`,r);if(i===-1){let n=e.slice(r+3),i=n.indexOf(` `),a=i===-1?n:n.slice(0,i),o=a===`markdown`?`markdown`:a===`sql`?`sql`:`python`,s=i===-1?``:n.slice(i+1);s.trim()&&t.push({language:o,code:s.trim()});break}let a=e.slice(r+3,i).trim()||``;a=a===`markdown`?`markdown`:a===`sql`?`sql`:`python`;let o=i+1,s=e.indexOf("```",o);if(s===-1){let n=e.slice(o).replace(/\n+$/,``);n.trim()&&t.push({language:a,code:n});break}let c=e.slice(o,s).replace(/\n+$/,``);c.trim()&&t.push({language:a,code:c}),n=s+3,r=e.indexOf("```",n)}return t.length===0&&t.push({language:`python`,code:e}),t}var dl=()=>new Map,{valueAtom:fl,useActions:pl,createActions:ml,reducer:hl}=Ke(dl,{addStagedCell:(e,t)=>{let{cellId:n,edit:r}=t;return new Map([...e,[n,r]])},removeStagedCell:(e,t)=>{if(!e.has(t))return e;let n=new Map(e);return n.delete(t),n},clearStagedCells:()=>dl()});function gl(e){let t=(0,Bt.c)(2),n;return t[0]===e?n=t[1]:(n=oe(fl,t=>t.get(e),Object.is),t[0]=e,t[1]=n),a(n)}function _l(e){let t=(0,Bt.c)(27),{addStagedCell:n,removeStagedCell:r,clearStagedCells:i}=pl(),{createNewCell:a,updateCellCode:o}=f(),s=ut(),c=(0,X.useRef)(null),l;t[0]!==n||t[1]!==a?(l=e=>{let t=E.create();return n({cellId:t,edit:{type:`add_cell`}}),a({cellId:`__end__`,code:e,before:!1,newCellId:t}),t},t[0]=n,t[1]=a,t[2]=l):l=t[2];let u=l,d;t[3]!==e||t[4]!==o?(d=t=>{let{cellId:n,code:r}=t;if(!e.get(fl).has(n)){R.error(`Staged cell not found`,{cellId:n});return}let i=S(n);i?T(i,r):o({cellId:n,code:r,formattingChange:!1})},t[3]=e,t[4]=o,t[5]=d):d=t[5];let p=d,m;t[6]!==s||t[7]!==r?(m=e=>{r(e),s({cellId:e})},t[6]=s,t[7]=r,t[8]=m):m=t[8];let h=m,g;t[9]!==i||t[10]!==s||t[11]!==e?(g=()=>{let t=e.get(fl);for(let e of t.keys())s({cellId:e});i()},t[9]=i,t[10]=s,t[11]=e,t[12]=g):g=t[12];let _=g,v;t[13]!==n||t[14]!==a||t[15]!==u||t[16]!==p?(v=e=>{bb17:switch(e.type){case`text-start`:c.current=new vl(u,p,n,a);break bb17;case`text-delta`:if(!c.current){R.error(`Cell creation stream not found`);return}c.current.stream(e);break bb17;case`text-end`:case`finish`:if(!c.current){R.error(`Cell creation stream not found`);return}c.current.stop();break bb17;case`abort`:case`error`:case`tool-input-error`:case`tool-output-error`:R.error(`Error`,e.type,{chunk:e});break bb17;case`tool-approval-request`:R.log(`Tool approval request`,{chunk:e});break bb17;case`tool-output-denied`:R.error(`Tool output denied`,{chunk:e});break bb17;case`start`:case`start-step`:case`finish-step`:case`data-reasoning-signature`:break bb17;case`message-metadata`:case`tool-input-available`:case`tool-output-available`:case`tool-approval-response`:case`reasoning-start`:case`reasoning-delta`:case`reasoning-end`:case`file`:case`reasoning-file`:case`source-document`:case`source-url`:case`tool-input-start`:case`tool-input-delta`:case`custom`:R.debug(e.type,{chunk:e});break bb17;default:if(yl(e)){R.debug(`Data chunk`,{chunk:e});break bb17}Ze(e)}},t[13]=n,t[14]=a,t[15]=u,t[16]=p,t[17]=v):v=t[17];let y=v,b;return t[18]!==n||t[19]!==i||t[20]!==u||t[21]!==_||t[22]!==h||t[23]!==y||t[24]!==r||t[25]!==p?(b={createStagedCell:u,updateStagedCell:p,addStagedCell:n,removeStagedCell:r,clearStagedCells:i,deleteStagedCell:h,deleteAllStagedCells:_,onStream:y},t[18]=n,t[19]=i,t[20]=u,t[21]=_,t[22]=h,t[23]=y,t[24]=r,t[25]=p,t[26]=b):b=t[26],b}var vl=class{createdCells=[];buffer=``;onCreateCell;onUpdateCell;addStagedCell;createNewCell;hasMarimoImport=!1;constructor(e,t,n,r){this.onCreateCell=e,this.onUpdateCell=t,this.addStagedCell=n,this.createNewCell=r}stream(e){let t=e.delta;this.buffer+=t;let n=ul(this.buffer);for(let[e,t]of n.entries())if(e<this.createdCells.length){this.addMarimoImport(t.language);let n=this.createdCells[e];this.createdCells[e]={...n,cell:t},this.onUpdateCell({cellId:n.cellId,code:t.code,language:t.language})}else{let e=this.onCreateCell(t.code);this.createdCells.push({cellId:e,cell:t})}}addMarimoImport(e){if(this.hasMarimoImport||e===`python`)return;let t=h({autoInstantiate:!1,createNewCell:this.createNewCell,fromCellId:this.createdCells[0]?.cellId,before:!0});t&&this.addStagedCell({cellId:t,edit:{type:`add_cell`}}),this.hasMarimoImport=!0}stop(){this.buffer=``}};function yl(e){return e.type.startsWith(`data-`)}var bl={baseDescription:`Perform editing operations on the current notebook. You should prefer to create new cells unless you need to edit existing cells. Call this tool multiple times to perform multiple edits. Separate code into logical individual cells to take advantage of the notebook's reactive execution model.`,prerequisites:[`If you are updating existing cells, you need the cellIds. If they are not known, call the lightweight_cell_map_tool to find out.`],additionalInfo:`
|
|
30
|
-
Args:
|
|
31
|
-
edit (object): The editing operation to perform with the following structure:
|
|
32
|
-
- type: One of "update_cell", "add_cell", or "delete_cell"
|
|
33
|
-
- code (string, optional): Required for "update_cell" and "add_cell" operations. The code content for the cell.
|
|
34
|
-
- position (object): Always present, with the following structure:
|
|
35
|
-
- type: One of "relative", "column_end", or "notebook_end". Not needed for "delete_cell" or "update_cell" operations.
|
|
36
|
-
- cellId (string, optional): Required for "update_cell", "delete_cell", and "add_cell" with "relative" position type
|
|
37
|
-
- columnIndex (number, optional): Required for "add_cell" with "column_end" position type (0-based index)
|
|
38
|
-
- before (boolean, optional): Required for "add_cell" with "relative" position type (true to add before, false to add after)
|
|
39
|
-
|
|
40
|
-
Operation types:
|
|
41
|
-
- update_cell: Update the code of an existing cell. Requires: code, position.cellId
|
|
42
|
-
- add_cell: Add a new cell to the notebook. Requires: code, and position based on position.type:
|
|
43
|
-
- position.type "notebook_end": Add at the end of the notebook (no additional position fields needed)
|
|
44
|
-
- position.type "relative": Add relative to an existing cell. Requires: position.cellId, position.before
|
|
45
|
-
- position.type "column_end": Add at the end of a specific column. Requires: position.columnIndex
|
|
46
|
-
- delete_cell: Delete an existing cell. Requires: position.cellId. For deleting cells, the user needs to accept the deletion to actually delete the cell, so you may still see the cell in the notebook on subsequent edits which is fine.
|
|
47
|
-
|
|
48
|
-
For adding code, use the following guidelines:
|
|
49
|
-
- Markdown cells: use mo.md(f"""{content}""") function to insert content.
|
|
50
|
-
- SQL cells: use mo.sql(f"""{content}""") function to insert content. If a database engine is specified, use mo.sql(f"""{content}""", engine=engine) instead.
|
|
51
|
-
|
|
52
|
-
Returns:
|
|
53
|
-
- A result object containing standard tool metadata.`},xl=O({edit:O({type:he([`update_cell`,`add_cell`,`delete_cell`]),code:k().optional(),position:O({type:he([`relative`,`column_end`,`notebook_end`]).optional(),cellId:k().optional(),columnIndex:ue().optional(),before:P().optional()})})}),Sl=class{name=`edit_notebook_tool`;description=bl;schema=xl;outputSchema=Pc;mode=[`agent`];handler=async({edit:e},t)=>{let{addStagedCell:n,createNewCell:r,store:i}=t;switch(e.type){case`update_cell`:{let{position:t,code:r}=e,a=t.cellId;if(!a)throw new Nc(`Cell ID is required for update_cell`,`CELL_ID_REQUIRED_FOR_UPDATE_CELL`,!0,`Provide a cell ID to update`);if(!r)throw new Nc(`Code is required for update_cell`,`CODE_REQUIRED_FOR_UPDATE_CELL`,!0,`Provide the new code to update the cell`);let o=i.get(se);this.validateCellIdExists(a,o);let s=this.getCellEditorView(a,o);kt(a);let c=i.get(fl).get(a);if(c?.type===`add_cell`){T(s,r);break}let l=s.state.doc.toString(),u=c?.previousCode??l;if(r===u)break;n({cellId:a,edit:{type:`update_cell`,previousCode:u}}),T(s,r);break}case`add_cell`:{let{position:t,code:a}=e,o=`__end__`,s=!1,c=E.create(),l=i.get(se);switch(t.type){case`relative`:{let e=t.cellId;if(!e)throw new Nc(`Cell ID is required for add_cell with relative position`,`TOOL_ERROR`,!0,`Provide a cell ID to add the cell before`);if(t.before===void 0)throw new Nc(`Before is required for add_cell with relative position`,`TOOL_ERROR`,!0,`Provide a boolean value for before, true to add before cell ${e}, false to add after the cell`);this.validateCellIdExists(e,l),o=e,s=t.before;break}case`column_end`:if(!t.columnIndex)throw new Nc(`Column index is required for add_cell with column_end position`,`TOOL_ERROR`,!0,`Provide a column index to add the cell at the end of`);o={type:`__end__`,columnId:this.getColumnId(t.columnIndex,l)}}r({cellId:o,before:s,code:a,newCellId:c}),n({cellId:c,edit:{type:`add_cell`}}),kt(c);break}case`delete_cell`:{let{position:t}=e,r=t.cellId;if(!r)throw new Nc(`Cell ID is required for delete_cell`,`CELL_ID_REQUIRED_FOR_DELETE_CELL`,!0,`Provide a cell ID to delete`);let a=i.get(se);this.validateCellIdExists(r,a),n({cellId:r,edit:{type:`delete_cell`,previousCode:this.getCellEditorView(r,a).state.doc.toString()}}),kt(r);break}}return{status:`success`,next_steps:[`If you need to perform more edits, call this tool again.`,`You should use the lint notebook tool to check for errors and lint issues. Fix them by editing the notebook.`,`You should use the run stale cells tool to run the cells that have been edited or newly added. This allows you to see the output of the cells and fix any errors.`]}};validateCellIdExists(e,t){if(!t.cellIds.getColumns().some(t=>t.idSet.has(e)))throw new Nc(`Cell not found`,`CELL_NOT_FOUND`,!1,`Check which cells exist in the notebook`)}getColumnId(e,t){let n=t.cellIds.getColumns();if(e<0||e>=n.length)throw new Nc(`Column index is out of range`,`COLUMN_INDEX_OUT_OF_RANGE`,!0,`Choose a column index between 0 and the number of columns in the notebook (0-based)`);return n[e].id}getCellEditorView(e,t){let n=t.cellHandles[e].current;if(!n?.editorView)throw new Nc(`Cell editor not found`,`CELL_EDITOR_NOT_FOUND`,!1,`Internal error, ask the user to report this error`);return n.editorView}},Cl=200,wl=3e4,Tl=2e3,El=3e3,Dl=4e4,Ol={baseDescription:`Run cells in the current notebook that are stale. Stale cells are cells that have been edited or newly added. You can run this tool after editing the notebook or when requested. The output of the ran cells will be returned alongside metadata.`},kl=O({type:F(`file`),url:k(),mediaType:k()}),Al=class{name=`run_stale_cells_tool`;description=Ol;schema=O({});outputSchema=Pc.extend({cellsToOutput:N(k(),O({consoleOutput:k().optional(),cellOutput:k().optional(),consoleAttachments:j(kl).optional(),cellAttachments:j(kl).optional()}).nullable()).optional()});mode=[`agent`];postExecutionDelay;constructor(e){this.postExecutionDelay=e?.postExecutionDelay??Cl}handler=async(e,t)=>{let{prepareForRun:n,sendRun:r,store:i}=t,a=i.get(se),o=m(a);if(o.length===0)return{status:`success`,message:`No stale cells found.`};if(await wt({cellIds:o,sendRun:r,prepareForRun:n,notebook:a}),!await this.waitForCellsToFinish(i,o,wl,this.postExecutionDelay))return{status:`success`,message:`No output was returned because some cells have not finished executing`};let s=i.get(se),c=new Map,l=!1,u=!1,d=0;for(let e of o){let t=zc(e,s,{includeConsoleOutput:!0}),n=t.cellOutput,r=t.consoleOutputs,i=r&&r.length>0;if((n&&this.outputHasErrors(n)||i&&r.some(e=>this.outputHasErrors(e)))&&(l=!0),!n&&!i){c.set(e,null);continue}if(d>=Dl){c.set(e,{cellOutput:`Cell executed (output omitted due to context limits).`});continue}let a,o;n&&(a=this.formatOutputString(n),d+=a.length),i&&(u=!0,o=r.map(e=>this.formatOutputString(e)).join(`
|
|
54
|
-
`),o=this.truncateString(o,Tl),d+=o.length),c.set(e,{cellOutput:a,consoleOutput:o})}if(c.size===0)return{status:`success`,message:`Stale cells have been run. No output was returned.`};let f=[`Review the output of the cells. The CellId is the key of the result object.`,l?`There are errors in the cells. Please fix them by using the edit notebook tool and the given CellIds.`:`You may edit the notebook further with the given CellIds.`];return{status:`success`,cellsToOutput:Object.fromEntries(c),message:u?`Console output represents the stdout or stderr of the cell (eg. print statements).`:void 0,next_steps:f}};outputHasErrors(e){return e.output.mimetype===`application/vnd.marimo+error`||e.output.mimetype===`application/vnd.marimo+traceback`}formatOutputString(e){let{outputType:t,processedContent:n,imageUrl:r,output:i}=e;if(t===`media`){let e=`Media Output: Contains ${i.mimetype} content`;return r?`${e}\nImage URL: ${r}`:e}if(i.mimetype===`text/html`)return`HTML Output: text/html content (${(typeof i.data==`string`?i.data.length:JSON.stringify(i.data).length).toLocaleString()} chars). Full output visible in notebook UI.`;let a=this.outputHasErrors(e)?El:Tl,o=n;return o||=typeof i.data==`string`?i.data:JSON.stringify(i.data),`Output:\n${this.truncateString(o,a)}`}truncateString(e,t){return e.length<=t?e:`${e.slice(0,t)}\n\n[TRUNCATED: ${e.length.toLocaleString()} → ${t.toLocaleString()} chars. Full output visible in the notebook UI.]`}async waitForCellsToFinish(e,t,r,i){let a=e=>t.every(t=>{let n=e.cellRuntime[t];return n?.status!==`running`&&n?.status!==`queued`}),o=async()=>(i>0&&await new Promise(e=>setTimeout(e,i)),!0);if(a(e.get(se)))return await o();try{return await Promise.race([n(se,a),new Promise((e,t)=>setTimeout(()=>t(Error(`timeout`)),r))]),await o()}catch{return!1}}};function jl(e){let t=e.baseDescription;return e.whenToUse&&(t+=`\n\n## When to use:\n- ${e.whenToUse.join(`
|
|
55
|
-
- `)}`),e.avoidIf&&(t+=`\n\n## Avoid if:\n- ${e.avoidIf.join(`
|
|
56
|
-
- `)}`),e.prerequisites&&(t+=`\n\n## Prerequisites:\n- ${e.prerequisites.join(`
|
|
57
|
-
- `)}`),e.sideEffects&&(t+=`\n\n## Side effects:\n- ${e.sideEffects.join(`
|
|
58
|
-
- `)}`),e.additionalInfo&&(t+=`\n\n## Additional info:\n- ${e.additionalInfo}`),t}var Ml=class{tools=new Map;constructor(e=[]){this.tools=new Map(e.map(e=>[e.name,e]))}has(e){return this.tools.has(e)}getToolOrThrow(e){let t=this.tools.get(e);if(!t)throw Error(`Tool ${e} not found`);return t}async invoke({toolName:e,rawArgs:t,toolContext:n}){let r=this.getToolOrThrow(e),i=r.handler,a=r.schema,o=r.outputSchema;try{let r=await a.safeParseAsync(t);if(r.error)throw new Nc(`Tool ${e} returned invalid input: ${pe(r.error)}`,`INVALID_ARGUMENTS`,!0,`Please check the arguments and try again.`);let s=r.data,c=await i(s,n),l=await o.safeParseAsync(c);if(l.error){let t=pe(l.error);throw Error(`Tool ${e} returned invalid output: ${t}`)}return{tool_name:e,result:l.data,error:null}}catch(n){return n instanceof Nc?{tool_name:e,result:null,error:n.toStructuredString()}:{tool_name:e,result:null,error:new Nc(n instanceof Error?n.message:String(n),`TOOL_ERROR`,!1,`Check the error message and try again with valid arguments.`,{args:t,errorType:n?.constructor?.name??typeof n}).toStructuredString()}}}getToolSchemas(e){return[...this.tools.values()].filter(t=>t.mode.includes(e)).map(e=>({name:e.name,description:jl(e.description),parameters:ce(e.schema),source:`frontend`,mode:e.mode}))}};b([ae()],Ml.prototype,`getToolSchemas`,null);var Nl=new Ml([new Sl,new Al]),Pl=new Set([`openai`,`google`,`anthropic`]),Fl=[`image/*`,`text/*`],Il=52428800;function Ll(e){return e.length>50?`${e.slice(0,50)}...`:e}async function Rl(e){return await Promise.all(e.map(async e=>({type:`file`,mediaType:e.type,filename:e.name,url:await nt(e,`dataUrl`)})))}function zl(e){if(e.length===0)return!1;let t=e.at(-1);if(!t||t.role!==`assistant`||!t.parts)return!1;let n=t.parts;return n.length!==0&&n[n.length-1].type===`reasoning`}function Bl(e){return e.map(e=>e.type===`text`?e.text:``).join(`
|
|
59
|
-
`)}async function Vl(e){let t=await ol({input:Bl(e.flatMap(e=>e.parts))});function n(e,n){return n?{...e,parts:[...e.parts,...t.attachments]}:e}return{...t.body,uiMessages:e.map((t,r)=>n(t,r===e.length-1))}}async function Hl({invokeAiTool:e,addToolOutput:t,toolCall:n,toolContext:r}){try{if(Nl.has(n.toolName)){let e=await Nl.invoke({toolName:n.toolName,rawArgs:n.input,toolContext:r});t({tool:n.toolName,toolCallId:n.toolCallId,output:e.result||e.error})}else{let r=await e({toolName:n.toolName,arguments:n.input??{}});t({tool:n.toolName,toolCallId:n.toolCallId,output:r.result||r.error})}}catch(e){R.error(`Tool call failed:`,e),t({tool:n.toolName,toolCallId:n.toolCallId,output:`Error: ${e instanceof Error?e.message:String(e)}`})}}function Ul(e){let t=e.at(-1);if(!t||t.role!==`assistant`)return!1;let n=t.parts.at(-1);return!n||!Oo(n)?!1:Ko({messages:e})||Go({messages:e})||n.state===`output-denied`&&!n.providerExecuted}function Wl(e){let t=e.at(-1);return!t||t.role!==`assistant`?!1:t.parts.some(e=>Oo(e)&&Gl(e.state))}function Gl(e){switch(e){case`approval-requested`:case`input-streaming`:case`input-available`:return!0;case`approval-responded`:case`output-available`:case`output-error`:case`output-denied`:return!1;default:return e}}function Kl(){let e=(0,Bt.c)(7),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[0]=t):t=e[0];let[n,r]=(0,X.useState)(t),i;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(i=e=>{if(e.length!==0){if(e.reduce(ql,0)>Il){xt({title:`File size exceeded`,description:`Attachments must be under 50 MB`,variant:`danger`});return}r(t=>[...t,...e])}},e[1]=i):i=e[1];let a=s(i),o;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>r([]),e[2]=o):o=e[2];let c=o,l;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=e=>r(t=>t.filter(t=>t!==e)),e[3]=l):l=e[3];let u=l,d;return e[4]!==a||e[5]!==n?(d={files:n,addFiles:a,clearFiles:c,removeFile:u},e[4]=a,e[5]=n,e[6]=d):d=e[6],d}function ql(e,t){return e+t.size}function Jl(e){return e.isError?!1:e.isAbort?!0:!e.hasPendingToolCalls&&!e.hasUnresolvedToolCalls}function Yl(){let[e,t]=(0,X.useState)([]),n=(0,X.useRef)([]),r=(0,X.useRef)(!1);return n.current=e,r.current=e.length>0,{messages:e,enqueue:s(e=>{t(t=>{let i=[...t,{id:bt(),parts:e}];return n.current=i,r.current=!0,i})}),flushNext:s(e=>{let i=n.current;if(i.length===0)return;let[a,...o]=i;n.current=o,r.current=o.length>0,t(o),e(a.parts)}),clear:s(()=>{n.current=[],r.current=!1,t([])}),hasQueuedRef:r}}var Xl=e=>{let t=(0,Bt.c)(6),{attachment:n}=e;if(n.mediaType?.startsWith(`image/`)){let e=n.filename||`Attachment`,r;return t[0]!==n.url||t[1]!==e?(r=(0,Q.jsx)(`img`,{src:n.url,alt:e,className:`max-h-[100px] max-w-[100px] object-contain mb-1.5`}),t[0]=n.url,t[1]=e,t[2]=r):r=t[2],r}let r;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsx)(ot,{className:`h-3 w-3 mt-0.5`}),t[3]=r):r=t[3];let i=n.filename||`Attachment`,a;return t[4]===i?a=t[5]:(a=(0,Q.jsxs)(`div`,{className:`flex flex-row gap-1 items-center text-xs`,children:[r,i]}),t[4]=i,t[5]=a),a},Zl=e=>{let t=(0,Bt.c)(12),{file:n,className:r,onRemove:i}=e,[a,o]=(0,X.useState)(!1),s;t[0]===r?s=t[1]:(s=we(`py-1 px-1.5 bg-muted rounded-md cursor-pointer flex flex-row gap-1 items-center text-xs`,r),t[0]=r,t[1]=s);let c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>o(!0),l=()=>o(!1),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]!==n||t[5]!==a||t[6]!==i?(u=a?(0,Q.jsx)(rt,{className:`h-3 w-3 mt-0.5`,onClick:i}):tu(n),t[4]=n,t[5]=a,t[6]=i,t[7]=u):u=t[7];let d;return t[8]!==n.name||t[9]!==s||t[10]!==u?(d=(0,Q.jsxs)(`div`,{className:s,onMouseEnter:c,onMouseLeave:l,children:[u,n.name]}),t[8]=n.name,t[9]=s,t[10]=u,t[11]=d):d=t[11],d},Ql=e=>{let t=(0,Bt.c)(12),{isLoading:n,onStop:r,onSendClick:i,isEmpty:a,showStopLabel:o}=e,s=o!==void 0&&o,c;t[0]===s?c=t[1]:(c=s?(0,Q.jsxs)(`div`,{className:`flex flex-row items-center gap-1 px-1.5`,children:[(0,Q.jsx)(`span`,{className:`text-xs text-error`,children:`Stop`}),(0,Q.jsx)(ct,{size:`small`})]}):(0,Q.jsx)(Lt,{className:`size-4 text-error`}),t[0]=s,t[1]=c);let l=c,u=n?`Stop`:`Submit`,d=n?r:i,f=!n&&a,p;t[2]!==n||t[3]!==l?(p=n?l:(0,Q.jsx)(zt,{className:`h-3.5 w-3.5`}),t[2]=n,t[3]=l,t[4]=p):p=t[4];let m;t[5]!==d||t[6]!==f||t[7]!==p?(m=(0,Q.jsx)(Ne,{variant:`text`,size:`sm`,className:`h-6 min-w-6 p-0 hover:bg-muted/30 cursor-pointer`,onClick:d,disabled:f,children:p}),t[5]=d,t[6]=f,t[7]=p,t[8]=m):m=t[8];let h;return t[9]!==u||t[10]!==m?(h=(0,Q.jsx)(Me,{content:u,children:m}),t[9]=u,t[10]=m,t[11]=h):h=t[11],h},$l=e=>{let t=(0,Bt.c)(4),{handleAddContext:n,isLoading:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Q.jsx)(tt,{className:`h-3.5 w-3.5`}),t[0]=i):i=t[0];let a;return t[1]!==n||t[2]!==r?(a=(0,Q.jsx)(Me,{content:`Add context`,children:(0,Q.jsx)(Ne,{variant:`text`,size:`icon`,onClick:n,disabled:r,children:i})}),t[1]=n,t[2]=r,t[3]=a):a=t[3],a},eu=e=>{let t=(0,Bt.c)(15),{fileInputRef:n,isLoading:r,onAddFiles:i}=e,a;t[0]===n?a=t[1]:(a=()=>n.current?.click(),t[0]=n,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Q.jsx)(Rt,{className:`h-3.5 w-3.5`}),t[2]=o):o=t[2];let s;t[3]!==r||t[4]!==a?(s=(0,Q.jsx)(Me,{content:`Attach a file`,children:(0,Q.jsx)(Ne,{variant:`text`,size:`icon`,onClick:a,disabled:r,children:o})}),t[3]=r,t[4]=a,t[5]=s):s=t[5];let c;t[6]===i?c=t[7]:(c=e=>{e.target.files&&i([...e.target.files])},t[6]=i,t[7]=c);let l;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(l=Fl.join(`,`),t[8]=l):l=t[8];let u;t[9]!==n||t[10]!==c?(u=(0,Q.jsx)(dt,{ref:n,type:`file`,multiple:!0,hidden:!0,onChange:c,accept:l}),t[9]=n,t[10]=c,t[11]=u):u=t[11];let d;return t[12]!==s||t[13]!==u?(d=(0,Q.jsxs)(Q.Fragment,{children:[s,u]}),t[12]=s,t[13]=u,t[14]=d):d=t[14],d};function tu(e){let t=`h-3 w-3 mt-0.5`;return e.type.startsWith(`image/`)?(0,Q.jsx)(st,{className:t}):e.type.startsWith(`text/`)?(0,Q.jsx)(g,{className:t}):(0,Q.jsx)(ot,{className:t})}var nu=e=>{let t=(0,Bt.c)(15),{icon:n,title:r,subtitle:i,href:a}=e,o;t[0]===r?o=t[1]:(o=(0,Q.jsx)(`span`,{className:`truncate font-medium`,children:r}),t[0]=r,t[1]=o);let s;t[2]===i?s=t[3]:(s=i&&(0,Q.jsxs)(`span`,{className:`truncate opacity-70`,children:[`(`,i,`)`]}),t[2]=i,t[3]=s);let c;t[4]!==n||t[5]!==o||t[6]!==s?(c=(0,Q.jsxs)(Q.Fragment,{children:[n,o,s]}),t[4]=n,t[5]=o,t[6]=s,t[7]=c):c=t[7];let l=c;if(a&&St(a)){let e=i??r,n;return t[8]!==l||t[9]!==a||t[10]!==e?(n=(0,Q.jsx)(`a`,{href:a,target:`_blank`,rel:`noopener noreferrer`,title:e,className:`inline-flex max-w-full items-center gap-1.5 rounded-md border bg-muted/50 px-2 py-1 my-1 text-xs text-muted-foreground hover:bg-muted hover:text-foreground transition-colors`,children:l}),t[8]=l,t[9]=a,t[10]=e,t[11]=n):n=t[11],n}let u=i??r,d;return t[12]!==l||t[13]!==u?(d=(0,Q.jsx)(`div`,{className:`inline-flex max-w-full items-center gap-1.5 rounded-md border bg-muted/50 px-2 py-1 my-1 text-xs text-muted-foreground`,title:u,children:l}),t[12]=l,t[13]=u,t[14]=d):d=t[14],d},ru=Re.define(),iu=Fe.define({create(){return new Map},update(e,t){let n=!1,r=e;for(let i of t.effects)if(i.is(ru)){n||=(r=new Map(e),!0);for(let[e,t]of i.value)r.set(e,t)}return r}}),au=Fe.define({create(){return{onResourceClick:void 0,onResourceMouseOver:void 0,onResourceMouseOut:void 0,onPromptSubmit:void 0}},update(e){return e}}),ou=Re.define();Fe.define({create(){return new Map},update(e,t){let n=!1,r=e;for(let i of t.effects)if(i.is(ou)){n||=(r=new Map(e),!0);for(let[e,t]of i.value)r.set(e,t)}return r}});var su=(e,t)=>async n=>{let r=n.matchBefore(/@(\w+)?/);if(!r||r.from===r.to&&!n.explicit)return null;let i=await e();if(i.length===0)return null;let a=ru.of(new Map(i.map(e=>[e.uri,e])));n.view&&n.view.dispatch({effects:a});let o=i.map(e=>({label:`@${e.name}`,displayLabel:e.name,detail:e.uri,info:e.description||void 0,type:e.mimeType?`constant`:`variable`,boost:e.description?100:0,...t?.(e),apply:(t,n,r,i)=>{t.dispatch({changes:{from:r,to:i,insert:`@${e.uri} `}})}}));return{from:r.from,options:o}},cu=/@[\w-]+:\/\/(?!\/)[^\s]+/;function lu(e){return e.matchAll(new RegExp(cu.source,`g`))}var uu=class extends Be{resource;view;constructor(e,t){super(),this.resource=e,this.view=t}eq(e){return e.resource.uri===this.resource.uri}toDOM(){let e=document.createElement(`span`);e.className=`cm-resource-widget`,e.textContent=`@${this.resource.name}`;let t=this.view.state.field(au,!1),n=t?.onResourceClick,r=t?.onResourceMouseOver,i=t?.onResourceMouseOut;return n&&(e.style.cursor=`pointer`,e.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),n(this.resource)})),r&&e.addEventListener(`mouseover`,e=>{e.preventDefault(),e.stopPropagation(),r(this.resource)}),i&&e.addEventListener(`mouseout`,e=>{e.preventDefault(),e.stopPropagation(),i(this.resource)}),e}},du=class extends Be{uri;view;constructor(e,t){super(),this.uri=e,this.view=t}eq(e){return e.uri===this.uri}toDOM(){let e=document.createElement(`span`);return e.className=`cm-not-found-resource-widget`,e.textContent=`@${this.uri.split(`://`)[1]??this.uri}`,e}};function fu(e){let t=e.state.field(iu),n=[];for(let{from:r,to:i}of e.visibleRanges){let a=e.state.doc.sliceString(r,i);for(let i of lu(a)){let a=r+i.index,o=i[0].slice(1),s=t.get(o);s?n.push(ze.replace({widget:new uu(s,e)}).range(a,a+i[0].length)):n.push(ze.replace({widget:new du(o,e)}).range(a,a+i[0].length))}}return ze.set(n)}var pu=We.fromClass(class{decorations;constructor(e){this.decorations=fu(e)}update(e){(e.docChanged||e.viewportChanged||e.transactions.some(e=>e.effects.some(e=>e.is(ru))))&&(this.decorations=fu(e.view))}},{decorations:e=>e.decorations});function mu(e){let t=document.createElement(`div`);t.className=`cm-tooltip-cursor`;let n=document.createElement(`div`);if(n.className=`cm-tooltip-cursor-title`,n.textContent=`${e.name} (${e.uri})`,t.appendChild(n),e.description){let n=document.createElement(`div`);n.className=`cm-tooltip-cursor-description`,n.textContent=e.description,t.appendChild(n)}if(e.mimeType){let n=document.createElement(`div`);n.className=`cm-tooltip-cursor-mimetype`,n.textContent=e.mimeType,t.appendChild(n)}return{dom:t}}function hu(e,t,n,r=0){for(let i of lu(e)){let e=r+i.index,a=e+i[0].length;if(t>=e&&t<=a){let t=i[0].slice(1),r=n.get(t);if(r)return{resource:r,start:e,end:a}}}return null}function gu(e){return Ge((t,n)=>{let{from:r,text:i}=t.state.doc.lineAt(n),a=hu(i,n,t.state.field(iu),r);return a?{pos:a.start,end:a.end,above:!0,create(){return(e.createTooltip??mu)(a.resource)}}:null})}function _u(e,t){let n=e.field(iu),r=e.doc,i=r.lineAt(t),a=r.sliceString(i.from,i.to),o=Array.from(lu(a));if(o.length===0)return null;for(let e of o){let r=i.from+e.index,a=r+e[0].length,o=e[0].slice(1);if(t===a&&n.has(o))return{from:r,to:a,uri:o}}return null}function vu(e,t){let n=e.field(iu),r=e.doc,i=r.lineAt(t).to,a=r.sliceString(t,i),o=Array.from(lu(a));if(o.length===0)return null;let s=o[0];if(!s||s.index!==0)return null;let c=t,l=t+s[0].length,u=s[0].slice(1);return n.has(u)?{from:c,to:l,uri:u}:null}function yu(e,t){let n=e.field(iu),r=e.doc,i=r.lineAt(t),a=r.sliceString(i.from,i.to),o=Array.from(lu(a));for(let e of o){let r=i.from+e.index,a=r+e[0].length,o=e[0].slice(1);if(t>r&&t<a&&n.has(o))return{from:r,to:a,uri:o}}return null}function bu(e,t){let n=e.field(iu),r=e.doc,i=r.lineAt(t),a=r.sliceString(i.from,t),o=Array.from(lu(a)),s=null;for(let e of o){let r=i.from+e.index,a=r+e[0].length,o=e[0].slice(1);n.has(o)&&a<=t&&(t>a?s=a:t===a&&(s=r))}return s}function xu(e,t){let n=e.field(iu),r=e.doc,i=r.lineAt(t),a=r.sliceString(i.from,i.to),o=Array.from(lu(a));for(let e of o){let r=i.from+e.index,a=r+e[0].length,o=e[0].slice(1);if(n.has(o)&&r>=t){if(t<r)return r;if(t===r)return a}}return null}var Su=Le.transactionFilter.of(e=>{let t=e.annotation(Ve.userEvent);if(!t)return e;let n=e.startState.selection.main;if(!n.empty)return e;if(t===`input.type`||t.startsWith(`input`)){if(e.changes.empty)return e;let t=e.startState.field(iu),n=e.startState.doc,r=!1,i=0,a=[];if(e.changes.iterChanges((e,o,s,c,l)=>{let u=l.toString(),d=e;if(/^\s+$/.test(u)){a.push({from:e,to:o,insert:u});return}let f=n.lineAt(d),p=n.sliceString(f.from,f.to),m=Array.from(lu(p)),h=!1,g=!1;for(let e of m){let r=f.from+e.index,i=r+e[0].length,a=e[0].slice(1);if(t.has(a)){if(d===r){let e=d>0?n.sliceString(d-1,d):``;e!==``&&e!==` `&&e!==`
|
|
60
|
-
`&&e!==` `&&(h=!0)}if(d===i){let e=d<n.length?n.sliceString(d,d+1):``;(e===``||e!==` `&&e!==`
|
|
61
|
-
`&&e!==` `)&&(g=!0)}}}let _=u;h&&(_=` ${_}`,i+=1),g&&(_=` ${_}`,i+=1),_!==u&&(r=!0),a.push({from:e,to:o,insert:_})}),r)return[{changes:a,selection:e.selection?{anchor:e.selection.main.anchor+i,head:e.selection.main.head+i}:void 0,scrollIntoView:e.scrollIntoView}]}if(t===`delete.backward`||t===`delete.forward`){let r=null;return t===`delete.backward`?r=_u(e.startState,n.head):t===`delete.forward`&&(r=vu(e.startState,n.head)),r?[{changes:{from:r.from,to:r.to,insert:``},selection:{anchor:r.from},scrollIntoView:!0}]:e}if(e.selection?.main.empty&&n.empty&&!t.startsWith(`input`)&&t!==`input.type`){let t=n.head,r=e.selection.main.head,i=null;if(r<t){let n=yu(e.startState,t);i=n&&t>n.from?n.from:bu(e.startState,t)}else if(r>t){let n=yu(e.startState,t);i=n&&t<n.to?n.to:xu(e.startState,t)}if(i!==null&&i!==r)return[{selection:{anchor:i},scrollIntoView:!0}]}return e}),Cu=150;function wu(e,t){let n=new Set;for(let r of lu(e)){let e=r[0].slice(1);t.has(e)||n.add(e)}return[...n]}function Tu(e){return[...e].sort().join(`
|
|
62
|
-
`)}function Eu(e){return!lu(e).next().done}function Du(e){let t=[],n=[];return e.changes.iterChanges((r,i,a,o)=>{let s=e.startState.doc.lineAt(r),c=e.startState.doc.lineAt(i===r?r:i-1);t.push(e.startState.doc.sliceString(s.from,c.to));let l=e.state.doc.lineAt(a),u=e.state.doc.lineAt(o===a?a:o-1);n.push(e.state.doc.sliceString(l.from,u.to))}),{before:t.join(`
|
|
63
|
-
`),after:n.join(`
|
|
64
|
-
`)}}function Ou(e,t){let n=t.debounceMs??Cu,{logger:r,resolve:i}=t;return class{view;timer;running=!1;rerun=!1;lastKey=``;destroyed=!1;constructor(e){this.view=e,this.maybeSchedule(e)}update(e){if(e.docChanged){let t=Du(e);if(Eu(t.before)){this.maybeSchedule(e.view);return}this.maybeSchedule(e.view,t.after)}}destroy(){this.destroyed=!0,this.clearTimer()}maybeSchedule(e,t){let r=t??e.state.doc.toString();if(!Eu(r)){t===void 0&&(this.lastKey=``,this.clearTimer());return}let i=Tu(wu(r,e.state.field(iu)));if(i===``){t===void 0&&(this.lastKey=``,this.clearTimer());return}if(i===this.lastKey){this.clearTimer();return}this.clearTimer(),this.timer=setTimeout(()=>{this.timer=void 0,this.run(e)},n)}clearTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}async run(t){if(!this.destroyed){if(this.running){this.rerun=!0;return}this.running=!0;try{do{this.rerun=!1;let n=wu(t.state.doc.toString(),t.state.field(iu));if(n.length===0){this.lastKey=``;break}this.lastKey=Tu(n);let r=i?await i(n):await e();if(this.destroyed)return;let a=new Set(n),o=r.filter(e=>a.has(e.uri));if(o.length===0){if(this.rerun)continue;break}t.dispatch({effects:ru.of(new Map(o.map(e=>[e.uri,e])))}),this.rerun=!0}while(this.rerun)}catch(e){this.lastKey=``,r?.error(`Failed to sync resources:`,e)}finally{this.running=!1}}}}}function ku(e,t={}){return We.fromClass(Ou(e,t))}var Au=Ue.baseTheme({".cm-resource-widget":{background:`light-dark(rgba(86,156,214,0.08),rgba(86,156,214,0.18))`,borderRadius:`4px`,padding:`2px 4px`,color:`light-dark(#2367a2,#7ecbff)`,fontWeight:`500`},".cm-resource-widget:hover":{background:`light-dark(rgba(86,156,214,0.18),rgba(86,156,214,0.28))`},".cm-not-found-resource-widget":{background:`light-dark(rgba(151,151,151,0.08),rgba(151,151,151,0.18))`,borderRadius:`4px`,padding:`2px 4px`,color:`light-dark(#b00020,#ff8080)`,fontWeight:`500`}}),ju=`_none_`,Mu=[{uri:``,name:`No resources`,type:ju,data:{}}],Nu={info:`Variables, dataframes, and tables will appear here.`,apply:()=>{}};function Pu(e){let t=Zc(e).getAllItems();return t.length===0?Mu:t}function Fu(e){let{language:t,store:n,onAddFiles:r}=e,i=()=>Pu(n);return[t.data.of({autocomplete:su(async()=>i(),e=>e.type===ju?Nu:Zc(n).getProvider(e.type)?.formatCompletion(e)||{})}),He.high(Ie.of([{key:`Tab`,preventDefault:!0,run:e=>Je(e)}])),Kc.of({addAttachment:e=>r?.([e])}),...r?[t.data.of({autocomplete:Qc().createCompletionSource()})]:[],pu,Su,ku(i,{logger:R}),iu.init(()=>{let e=Pu(n);return new Map(e.map(e=>[e.uri,e]))}),Au,gu({createTooltip:e=>{let t=Zc(n).getProvider(e.type);if(!t)return R.warn(`No provider found for resource`,e),Iu(e.description||e.name);let r=t.formatCompletion(e),i=e.description||e.name;if(!r?.info)return Iu(i);if(typeof r.info==`string`)return Iu(r.info);let a=r.info(r);return a?`dom`in a?{dom:a.dom}:`then`in a?(R.warn(`info is a promise. This is not supported`,a),Iu(i)):{dom:a}:Iu(i)}})]}function Iu(e){let t=document.createElement(`div`);return t.innerHTML=e,{dom:t}}var Lu={accept:`Keep change`,decline:`Revert change`},Ru=e=>{let{handleAcceptCompletion:t,handleDeclineCompletion:n,isLoading:r,hasCompletion:i}=e;return e=>{let a=xe()?e.metaKey:e.ctrlKey;a&&e.key===`Enter`&&!r&&i&&t(),(e.key===`Delete`||e.key===`Backspace`)&&a&&e.shiftKey&&(n(),e.preventDefault(),e.stopPropagation())}},zu=e=>{let t=(0,Bt.c)(13),{isLoading:n,onAccept:r,onDecline:i,runCell:a,acceptLabel:o,declineLabel:s,size:c}=e,l;t[0]!==o||t[1]!==n||t[2]!==r||t[3]!==a||t[4]!==c?(l=(0,Q.jsx)(Bu,{isLoading:n,onAccept:r,size:c,runCell:a,label:o}),t[0]=o,t[1]=n,t[2]=r,t[3]=a,t[4]=c,t[5]=l):l=t[5];let u;t[6]!==s||t[7]!==i||t[8]!==c?(u=(0,Q.jsx)(Vu,{onDecline:i,size:c,label:s}),t[6]=s,t[7]=i,t[8]=c,t[9]=u):u=t[9];let d;return t[10]!==l||t[11]!==u?(d=(0,Q.jsxs)(Q.Fragment,{children:[l,u]}),t[10]=l,t[11]=u,t[12]=d):d=t[12],d},Bu=e=>{let t=(0,Bt.c)(33),{isLoading:n,onAccept:r,multipleCompletions:i,size:a,buttonStyles:o,acceptShortcut:s,runCell:c,playButtonStyles:l,borderless:u,label:d}=e,f=i!==void 0&&i,p=a===void 0?`sm`:a,m=u!==void 0&&u,h;t[0]!==r||t[1]!==c?(h=()=>{r(),c&&c()},t[0]=r,t[1]=c,t[2]=h):h=t[2];let g=h,_=d??(f?`Accept all`:`Accept`);if(c){let e=`h-6 text-(--grass-11) bg-(--grass-3)/60
|
|
65
|
-
hover:bg-(--grass-3) dark:bg-(--grass-4)/80 dark:hover:bg-(--grass-3) font-semibold
|
|
66
|
-
active:bg-(--grass-5) dark:active:bg-(--grass-4)
|
|
67
|
-
border-(--green-6) border hover:shadow-xs rounded-r-none ${m&&`border-none rounded-md rounded-r-none`} ${o}`,i;t[3]===s?i=t[4]:(i=s&&(0,Q.jsx)(jt,{className:`ml-1 inline`,shortcut:s}),t[3]=s,t[4]=i);let a;t[5]!==n||t[6]!==r||t[7]!==p||t[8]!==e||t[9]!==i||t[10]!==_?(a=(0,Q.jsxs)(Ne,{variant:`text`,size:p,disabled:n,onClick:r,className:e,children:[_,i]}),t[5]=n,t[6]=r,t[7]=p,t[8]=e,t[9]=i,t[10]=_,t[11]=a):a=t[11];let c=`${_} and run ${f?`all cells`:`cell`}`,u=`h-6 text-(--grass-11) bg-(--grass-3)/60
|
|
68
|
-
hover:bg-(--grass-3) dark:bg-(--grass-4)/80 dark:hover:bg-(--grass-3) font-semibold
|
|
69
|
-
active:bg-(--grass-5) dark:active:bg-(--grass-4)
|
|
70
|
-
border-(--green-6) border hover:shadow-xs rounded-l-none px-1.5 ${m&&`border-0 border-l`} ${l}`,d;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Q.jsx)(lt,{className:`h-2.5 w-2.5`}),t[12]=d):d=t[12];let h;t[13]!==g||t[14]!==n||t[15]!==p||t[16]!==u?(h=(0,Q.jsx)(Ne,{variant:`text`,size:p,disabled:n,onClick:g,className:u,children:d}),t[13]=g,t[14]=n,t[15]=p,t[16]=u,t[17]=h):h=t[17];let v;t[18]!==h||t[19]!==c?(v=(0,Q.jsx)(Me,{content:c,children:h}),t[18]=h,t[19]=c,t[20]=v):v=t[20];let y;return t[21]!==v||t[22]!==a?(y=(0,Q.jsxs)(`div`,{className:`flex`,children:[a,v]}),t[21]=v,t[22]=a,t[23]=y):y=t[23],y}let v=`h-6 text-(--grass-11) bg-(--grass-3)/60
|
|
71
|
-
hover:bg-(--grass-3) dark:bg-(--grass-4)/80 dark:hover:bg-(--grass-3) font-semibold
|
|
72
|
-
active:bg-(--grass-5) dark:active:bg-(--grass-4)
|
|
73
|
-
border-(--green-6) border hover:shadow-xs rounded px-3 ${o}`,y;t[24]===s?y=t[25]:(y=s&&(0,Q.jsx)(jt,{className:`ml-1 inline`,shortcut:s}),t[24]=s,t[25]=y);let b;return t[26]!==n||t[27]!==r||t[28]!==p||t[29]!==v||t[30]!==y||t[31]!==_?(b=(0,Q.jsxs)(Ne,{variant:`text`,size:p,disabled:n,onClick:r,className:v,children:[_,y]}),t[26]=n,t[27]=r,t[28]=p,t[29]=v,t[30]=y,t[31]=_,t[32]=b):b=t[32],b},Vu=e=>{let t=(0,Bt.c)(8),{onDecline:n,multipleCompletions:r,size:i,className:a,declineShortcut:o,borderless:s,label:c}=e,l=r!==void 0&&r,u=i===void 0?`sm`:i,d=`h-6 text-(--red-10) bg-(--red-3)/60 hover:bg-(--red-3)
|
|
74
|
-
dark:bg-(--red-4)/80 dark:hover:bg-(--red-3) rounded px-3 font-semibold
|
|
75
|
-
active:bg-(--red-5) dark:active:bg-(--red-4)
|
|
76
|
-
border-(--red-6) border hover:shadow-xs ${s!==void 0&&s&&`border-none rounded-md`} ${a}`,f=c??`Reject${l?` all`:``}`,p;t[0]===o?p=t[1]:(p=o&&(0,Q.jsx)(jt,{className:`ml-1 inline`,shortcut:o}),t[0]=o,t[1]=p);let m;return t[2]!==n||t[3]!==u||t[4]!==d||t[5]!==f||t[6]!==p?(m=(0,Q.jsxs)(Ne,{variant:`text`,size:u,onClick:n,className:d,children:[f,p]}),t[2]=n,t[3]=u,t[4]=d,t[5]=f,t[6]=p,t[7]=m):m=t[7],m},Hu=class extends Uo{onChunkReceived;constructor(e,t){super(e),this.onChunkReceived=t}processResponseStream(e){let t=this.onChunkReceived;return super.processResponseStream(e).pipeThrough(new TransformStream({async transform(e,n){t(e),n.enqueue(e)}}))}},Uu=y(`marimo:ai-language`,`python`,ne),Wu=`marimo:ai-prompt-history`,Gu=new w(j(k()),()=>[]),Ku=({onClose:e})=>{let t=i(),[n,o]=(0,X.useState)(``),{deleteAllStagedCells:s,clearStagedCells:c,onStream:l,addStagedCell:d}=_l(t),[m,h]=r(Uu),g=Ce(),{invokeAiTool:_,sendRun:v}=Qe(),y=a(fl),b=(0,X.useRef)(null),x=(0,X.useRef)(null),{files:S,addFiles:C,removeFile:w}=Kl(),T=a(Se),{createNewCell:ee,prepareForRun:E}=f(),te={store:t,addStagedCell:d,createNewCell:ee,prepareForRun:E,sendRun:v},{sendMessage:ne,stop:re,status:D,addToolOutput:ie}=xc({throttle:100,transport:new Hu({api:g.getAiURL(`completion`).toString(),headers:()=>g.headers(),prepareSendMessagesRequest:async e=>{let t=await Vl(e.messages),n={...e,...t,code:``,prompt:``,language:m};return{api:g.getAiURL(`completion`).toString(),body:n}}},e=>{l(e)}),onToolCall:async({toolCall:e})=>{await Hl({invokeAiTool:_,addToolOutput:ie,toolCall:{toolName:e.toolName,toolCallId:e.toolCallId,input:e.input},toolContext:te})},onError:e=>{xt({title:`Generate with AI failed`,description:Et(e)})}}),ae=D===`streaming`||D===`submitted`,oe=y.size>0,se=T?.models?.edit_model||`openai/gpt-4o`,O=ye.parse(se).providerId,ce=Pl.has(O),k=async()=>{if(!ae){b.current?.view&&jc(b.current.view),s();let e=S?await Rl(S):void 0;ne({text:n,files:e})}},le=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Mt,{className:`size-4 mr-2`}),`Python`]}),A=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(p,{className:`size-4 mr-2`}),`SQL`]}),ue=(0,Q.jsxs)(je,{modal:!1,children:[(0,Q.jsxs)(ke,{className:`flex items-center justify-between h-7 text-xs px-2 py-0.5 border rounded-md hover:text-accent-foreground`,"data-testid":`language-button`,children:[m===`python`?le:A,(0,Q.jsx)(it,{className:`ml-1 h-3.5 w-3.5 text-muted-foreground/70`})]}),(0,Q.jsxs)(Ae,{align:`center`,children:[(0,Q.jsx)(`div`,{className:`px-2 py-1 text-sm text-muted-foreground`,children:`Select language`}),(0,Q.jsx)(Oe,{}),(0,Q.jsx)(De,{onClick:()=>h(`python`),children:le}),(0,Q.jsx)(De,{onClick:()=>h(`sql`),children:A})]})]}),j=()=>{c(),e()},M=()=>{s(),b.current?.view?.focus()},de=()=>{s(),e()},fe=(0,Q.jsxs)(`div`,{className:`flex items-center px-3`,children:[(0,Q.jsx)(u,{className:`size-4 text-(--blue-11) mr-2`}),(0,Q.jsx)(qu,{inputRef:b,onClose:de,value:n,onChange:e=>{o(e)},onSubmit:k,onKeyDown:Ru({handleAcceptCompletion:j,handleDeclineCompletion:M,isLoading:ae,hasCompletion:oe})}),(0,Q.jsx)(Ne,{variant:`text`,size:`sm`,className:`mb-0 px-1`,onClick:de,children:(0,Q.jsx)(rt,{className:`size-4`})})]}),N=(0,Q.jsxs)(`div`,{className:`px-3 pt-1 flex flex-row items-center justify-between`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(be,{triggerClassName:`h-7 text-xs max-w-64`,iconSize:`small`,forRole:`edit`,showAddCustomModelDocs:!0}),ue]}),(0,Q.jsxs)(`div`,{className:`flex flex-row items-center`,children:[S.length>0&&(0,Q.jsx)(`div`,{className:`flex flex-row gap-1 flex-wrap pr-1`,children:S?.map((e,t)=>(0,Q.jsx)(Zl,{file:e,onRemove:()=>w(e)},`${e.name}-${t}`))}),(0,Q.jsx)($l,{handleAddContext:()=>ll(b),isLoading:ae}),ce&&(0,Q.jsx)(eu,{fileInputRef:x,isLoading:ae,onAddFiles:C}),(0,Q.jsx)(Ql,{isLoading:ae,onStop:re,onSendClick:k,isEmpty:!n.trim(),showStopLabel:!0})]})]});return(0,Q.jsxs)(`div`,{className:we(`flex flex-col w-full py-2`),children:[fe,N]})},qu=e=>{let t=(0,Bt.c)(35),{value:n,placeholder:r,inputRef:a,className:o,onChange:c,onSubmit:l,onKeyDown:u,onClose:d,onAddFiles:f,additionalCompletions:p,maxHeight:m}=e,h=l,g=d,_=i(),{theme:v}=Ct(),y;t[0]===p?y=t[1]:(y=e=>p?cl([p.triggerCompletionRegex],p.completions)(e):null,t[0]=p,t[1]=y);let b=s(y),x,S,C,w;if(t[2]!==b||t[3]!==f||t[4]!==_){let e=yt();t[9]===Symbol.for(`react.memo_cache_sentinel`)?(x=Xe({}),t[9]=x):x=t[9],S=e,C=Fu({language:e.language,store:_,onAddFiles:f}),w=e.language.data.of({autocomplete:b}),t[2]=b,t[3]=f,t[4]=_,t[5]=x,t[6]=S,t[7]=C,t[8]=w}else x=t[5],S=t[6],C=t[7],w=t[8];let T;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(T=Mc({storage:{load:Ju,save:Yu}}),t[10]=T):T=t[10];let ee;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(ee=Dt(),t[11]=ee):ee=t[11];let E;t[12]===h?E=t[13]:(E=He.highest(Ie.of([{preventDefault:!0,stopPropagation:!0,any:(e,t)=>{let n=t.metaKey||t.ctrlKey||t.shiftKey;if(t.key===`Enter`&&!n)return h(t,e.state.doc.toString()),t.preventDefault(),t.stopPropagation(),!0;if(t.key===`Enter`&&t.shiftKey){let n=e.state.selection.main.from;return e.dispatch({changes:{from:n,to:n,insert:`
|
|
77
|
-
`},selection:{anchor:n+1,head:n+1}}),t.preventDefault(),t.stopPropagation(),!0}return!1}}])),t[12]=h,t[13]=E);let te;t[14]===g?te=t[15]:(te=Ie.of([{key:`Escape`,preventDefault:!0,stopPropagation:!0,run:()=>(g(),!0)}]),t[14]=g,t[15]=te);let ne;t[16]!==x||t[17]!==S||t[18]!==C||t[19]!==w||t[20]!==E||t[21]!==te?(ne=[x,S,C,w,T,Ue.lineWrapping,ee,E,te],t[16]=x,t[17]=S,t[18]=C,t[19]=w,t[20]=E,t[21]=te,t[22]=ne):ne=t[22];let re=ne,D;t[23]===o?D=t[24]:(D=we(`flex-1 font-sans overflow-auto my-1`,o),t[23]=o,t[24]=D);let ie=v===`dark`?`dark`:`light`,ae=r||`Generate with AI, @ to include context`,oe;return t[25]!==re||t[26]!==a||t[27]!==m||t[28]!==c||t[29]!==u||t[30]!==D||t[31]!==ie||t[32]!==ae||t[33]!==n?(oe=(0,Q.jsx)(Ot,{ref:a,className:D,width:`100%`,maxHeight:m,value:n,basicSetup:!1,extensions:re,onChange:c,onKeyDown:u,theme:ie,placeholder:ae}),t[25]=re,t[26]=a,t[27]=m,t[28]=c,t[29]=u,t[30]=D,t[31]=ie,t[32]=ae,t[33]=n,t[34]=oe):oe=t[34],oe};function Ju(){return Gu.get(Wu)}function Yu(e){return Gu.set(Wu,e)}export{ll as A,xo as B,Kl as C,gl as D,fl as E,jc as F,Rt as G,Co as H,xc as I,Lt as K,Sc as L,nl as M,al as N,pl as O,Zc as P,Uo as R,Jl as S,Nl as T,Sa as U,Io as V,zt as W,Ll as _,Bu as a,Wl as b,Ru as c,Xl as d,Zl as f,Rl as g,Pl as h,Lu as i,$c as j,_l as k,$l as l,nu as m,qu as n,zu as o,Ql as p,Hu as r,Vu as s,Ku as t,eu as u,Hl as v,Yl as w,zl as x,Ul as y,Mo as z};
|