@copilotkit/vue 1.77.0 → 1.77.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- "use strict";var Ss=Object.create;var Gn=Object.defineProperty;var ws=Object.getOwnPropertyDescriptor;var Cs=Object.getOwnPropertyNames;var Ts=Object.getPrototypeOf,xs=Object.prototype.hasOwnProperty;var Is=(e,n,o,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of Cs(n))!xs.call(e,r)&&r!==o&&Gn(e,r,{get:()=>n[r],enumerable:!(a=ws(n,r))||a.enumerable});return e};var Vt=(e,n,o)=>(o=e!=null?Ss(Ts(e)):{},Is(n||!e||!e.__esModule?Gn(o,"default",{value:e,enumerable:!0}):o,e));const t=require("vue"),he=require("zod"),ie=require("@copilotkit/core"),G=require("@copilotkit/shared"),Sn=require("zod-to-json-schema"),Xt=require("@a2ui/web_core/v0_9"),Wn=require("@copilotkit/mcp-apps-renderer/activity"),Me=require("@a2ui/web_core/v0_9/basic_catalog"),Wt=require("@ag-ui/client"),me=require("lucide-vue-next"),Mo=require("streamdown-vue"),No=require("@ag-ui/core");let ge=(function(e){return e.TEXT_MESSAGE_START="TEXT_MESSAGE_START",e.TEXT_MESSAGE_CONTENT="TEXT_MESSAGE_CONTENT",e.TEXT_MESSAGE_END="TEXT_MESSAGE_END",e.TEXT_MESSAGE_CHUNK="TEXT_MESSAGE_CHUNK",e.TOOL_CALL_START="TOOL_CALL_START",e.TOOL_CALL_ARGS="TOOL_CALL_ARGS",e.TOOL_CALL_END="TOOL_CALL_END",e.TOOL_CALL_CHUNK="TOOL_CALL_CHUNK",e.TOOL_CALL_RESULT="TOOL_CALL_RESULT",e.STATE_SNAPSHOT="STATE_SNAPSHOT",e.STATE_DELTA="STATE_DELTA",e.MESSAGES_SNAPSHOT="MESSAGES_SNAPSHOT",e.ACTIVITY_SNAPSHOT="ACTIVITY_SNAPSHOT",e.ACTIVITY_DELTA="ACTIVITY_DELTA",e.RAW="RAW",e.CUSTOM="CUSTOM",e.RUN_STARTED="RUN_STARTED",e.RUN_FINISHED="RUN_FINISHED",e.RUN_ERROR="RUN_ERROR",e.STEP_STARTED="STEP_STARTED",e.STEP_FINISHED="STEP_FINISHED",e.REASONING_START="REASONING_START",e.REASONING_MESSAGE_START="REASONING_MESSAGE_START",e.REASONING_MESSAGE_CONTENT="REASONING_MESSAGE_CONTENT",e.REASONING_MESSAGE_END="REASONING_MESSAGE_END",e.REASONING_MESSAGE_CHUNK="REASONING_MESSAGE_CHUNK",e.REASONING_END="REASONING_END",e.REASONING_ENCRYPTED_VALUE="REASONING_ENCRYPTED_VALUE",e.SUBAGENT_STARTED="SUBAGENT_STARTED",e.SUBAGENT_FINISHED="SUBAGENT_FINISHED",e.SUBAGENT_ERROR="SUBAGENT_ERROR",e})({});function E(e,n,o){function a(l,c){var u;Object.defineProperty(l,"_zod",{value:l._zod??{},enumerable:!1}),(u=l._zod).traits??(u.traits=new Set),l._zod.traits.add(e),n(l,c);for(const p in i.prototype)p in l||Object.defineProperty(l,p,{value:i.prototype[p].bind(l)});l._zod.constr=i,l._zod.def=c}const r=o?.Parent??Object;class s extends r{}Object.defineProperty(s,"name",{value:e});function i(l){var c;const u=o?.Parent?new s:this;a(u,l),(c=u._zod).deferred??(c.deferred=[]);for(const p of u._zod.deferred)p();return u}return Object.defineProperty(i,"init",{value:a}),Object.defineProperty(i,Symbol.hasInstance,{value:l=>o?.Parent&&l instanceof o.Parent?!0:l?._zod?.traits?.has(e)}),Object.defineProperty(i,"name",{value:e}),i}class xt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}const Oo={};function pt(e){return Oo}function Es(e){const n=Object.values(e).filter(a=>typeof a=="number");return Object.entries(e).filter(([a,r])=>n.indexOf(+a)===-1).map(([a,r])=>r)}function Rs(e,n){return typeof n=="bigint"?n.toString():n}function wn(e){return{get value(){{const n=e();return Object.defineProperty(this,"value",{value:n}),n}}}}function Cn(e){return e==null}function Tn(e){const n=e.startsWith("^")?1:0,o=e.endsWith("$")?e.length-1:e.length;return e.slice(n,o)}function As(e,n){const o=(e.toString().split(".")[1]||"").length,a=(n.toString().split(".")[1]||"").length,r=o>a?o:a,s=Number.parseInt(e.toFixed(r).replace(".","")),i=Number.parseInt(n.toFixed(r).replace(".",""));return s%i/10**r}function be(e,n,o){Object.defineProperty(e,n,{get(){{const a=o();return e[n]=a,a}},set(a){Object.defineProperty(e,n,{value:a})},configurable:!0})}function xn(e,n,o){Object.defineProperty(e,n,{value:o,writable:!0,enumerable:!0,configurable:!0})}function Ct(e){return JSON.stringify(e)}const zo=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Kt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const _s=wn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function mn(e){if(Kt(e)===!1)return!1;const n=e.constructor;if(n===void 0)return!0;const o=n.prototype;return!(Kt(o)===!1||Object.prototype.hasOwnProperty.call(o,"isPrototypeOf")===!1)}const $s=new Set(["string","number","symbol"]);function _t(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ft(e,n,o){const a=new e._zod.constr(n??e._zod.def);return(!n||o?.parent)&&(a._zod.parent=e),a}function J(e){const n=e;if(!n)return{};if(typeof n=="string")return{error:()=>n};if(n?.message!==void 0){if(n?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");n.error=n.message}return delete n.message,typeof n.error=="string"?{...n,error:()=>n.error}:n}function Ms(e){return Object.keys(e).filter(n=>e[n]._zod.optin==="optional"&&e[n]._zod.optout==="optional")}const Ns={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Os(e,n){const o={},a=e._zod.def;for(const r in n){if(!(r in a.shape))throw new Error(`Unrecognized key: "${r}"`);n[r]&&(o[r]=a.shape[r])}return ft(e,{...e._zod.def,shape:o,checks:[]})}function zs(e,n){const o={...e._zod.def.shape},a=e._zod.def;for(const r in n){if(!(r in a.shape))throw new Error(`Unrecognized key: "${r}"`);n[r]&&delete o[r]}return ft(e,{...e._zod.def,shape:o,checks:[]})}function Bs(e,n){if(!mn(n))throw new Error("Invalid input to extend: expected a plain object");const o={...e._zod.def,get shape(){const a={...e._zod.def.shape,...n};return xn(this,"shape",a),a},checks:[]};return ft(e,o)}function Fs(e,n){return ft(e,{...e._zod.def,get shape(){const o={...e._zod.def.shape,...n._zod.def.shape};return xn(this,"shape",o),o},catchall:n._zod.def.catchall,checks:[]})}function Ds(e,n,o){const a=n._zod.def.shape,r={...a};if(o)for(const s in o){if(!(s in a))throw new Error(`Unrecognized key: "${s}"`);o[s]&&(r[s]=e?new e({type:"optional",innerType:a[s]}):a[s])}else for(const s in a)r[s]=e?new e({type:"optional",innerType:a[s]}):a[s];return ft(n,{...n._zod.def,shape:r,checks:[]})}function Vs(e,n,o){const a=n._zod.def.shape,r={...a};if(o)for(const s in o){if(!(s in r))throw new Error(`Unrecognized key: "${s}"`);o[s]&&(r[s]=new e({type:"nonoptional",innerType:a[s]}))}else for(const s in a)r[s]=new e({type:"nonoptional",innerType:a[s]});return ft(n,{...n._zod.def,shape:r,checks:[]})}function Tt(e,n=0){for(let o=n;o<e.issues.length;o++)if(e.issues[o]?.continue!==!0)return!0;return!1}function In(e,n){return n.map(o=>{var a;return(a=o).path??(a.path=[]),o.path.unshift(e),o})}function Pt(e){return typeof e=="string"?e:e?.message}function mt(e,n,o){const a={...e,path:e.path??[]};if(!e.message){const r=Pt(e.inst?._zod.def?.error?.(e))??Pt(n?.error?.(e))??Pt(o.customError?.(e))??Pt(o.localeError?.(e))??"Invalid input";a.message=r}return delete a.inst,delete a.continue,n?.reportInput||delete a.input,a}function En(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function It(...e){const[n,o,a]=e;return typeof n=="string"?{message:n,code:"custom",input:o,inst:a}:{...n}}const Bo=(e,n)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:n,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(n,Rs,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Fo=E("$ZodError",Bo),Do=E("$ZodError",Bo,{Parent:Error});function Ps(e,n=o=>o.message){const o={},a=[];for(const r of e.issues)r.path.length>0?(o[r.path[0]]=o[r.path[0]]||[],o[r.path[0]].push(n(r))):a.push(n(r));return{formErrors:a,fieldErrors:o}}function Ls(e,n){const o=n||function(s){return s.message},a={_errors:[]},r=s=>{for(const i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(l=>r({issues:l}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)a._errors.push(o(i));else{let l=a,c=0;for(;c<i.path.length;){const u=i.path[c];c===i.path.length-1?(l[u]=l[u]||{_errors:[]},l[u]._errors.push(o(i))):l[u]=l[u]||{_errors:[]},l=l[u],c++}}};return r(e),a}const Us=e=>(n,o,a,r)=>{const s=a?Object.assign(a,{async:!1}):{async:!1},i=n._zod.run({value:o,issues:[]},s);if(i instanceof Promise)throw new xt;if(i.issues.length){const l=new(r?.Err??e)(i.issues.map(c=>mt(c,s,pt())));throw zo(l,r?.callee),l}return i.value},js=e=>async(n,o,a,r)=>{const s=a?Object.assign(a,{async:!0}):{async:!0};let i=n._zod.run({value:o,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){const l=new(r?.Err??e)(i.issues.map(c=>mt(c,s,pt())));throw zo(l,r?.callee),l}return i.value},Vo=e=>(n,o,a)=>{const r=a?{...a,async:!1}:{async:!1},s=n._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw new xt;return s.issues.length?{success:!1,error:new(e??Fo)(s.issues.map(i=>mt(i,r,pt())))}:{success:!0,data:s.value}},Zs=Vo(Do),Po=e=>async(n,o,a)=>{const r=a?Object.assign(a,{async:!0}):{async:!0};let s=n._zod.run({value:o,issues:[]},r);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new e(s.issues.map(i=>mt(i,r,pt())))}:{success:!0,data:s.value}},Hs=Po(Do),Gs=/^[cC][^\s-]{8,}$/,Ws=/^[0-9a-z]+$/,Ks=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,qs=/^[0-9a-vA-V]{20}$/,Js=/^[A-Za-z0-9]{27}$/,Xs=/^[a-zA-Z0-9_-]{21}$/,Ys=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Qs=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Kn=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,ei=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ti="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ni(){return new RegExp(ti,"u")}const oi=/^(?:(?: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])$/,ai=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,ri=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,si=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ii=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Lo=/^[A-Za-z0-9_-]*$/,li=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,ci=/^\+(?:[0-9]){6,14}[0-9]$/,Uo="(?:(?:\\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])))",ui=new RegExp(`^${Uo}$`);function jo(e){const n="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${n}`:e.precision===0?`${n}:[0-5]\\d`:`${n}:[0-5]\\d\\.\\d{${e.precision}}`:`${n}(?::[0-5]\\d(?:\\.\\d+)?)?`}function di(e){return new RegExp(`^${jo(e)}$`)}function pi(e){const n=jo({precision:e.precision}),o=["Z"];e.local&&o.push(""),e.offset&&o.push("([+-]\\d{2}:\\d{2})");const a=`${n}(?:${o.join("|")})`;return new RegExp(`^${Uo}T(?:${a})$`)}const mi=e=>{const n=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${n}$`)},fi=/^\d+$/,hi=/^-?\d+(?:\.\d+)?/i,gi=/true|false/i,vi=/^[^A-Z]*$/,bi=/^[^a-z]*$/,qe=E("$ZodCheck",(e,n)=>{var o;e._zod??(e._zod={}),e._zod.def=n,(o=e._zod).onattach??(o.onattach=[])}),Zo={number:"number",bigint:"bigint",object:"date"},Ho=E("$ZodCheckLessThan",(e,n)=>{qe.init(e,n);const o=Zo[typeof n.value];e._zod.onattach.push(a=>{const r=a._zod.bag,s=(n.inclusive?r.maximum:r.exclusiveMaximum)??Number.POSITIVE_INFINITY;n.value<s&&(n.inclusive?r.maximum=n.value:r.exclusiveMaximum=n.value)}),e._zod.check=a=>{(n.inclusive?a.value<=n.value:a.value<n.value)||a.issues.push({origin:o,code:"too_big",maximum:n.value,input:a.value,inclusive:n.inclusive,inst:e,continue:!n.abort})}}),Go=E("$ZodCheckGreaterThan",(e,n)=>{qe.init(e,n);const o=Zo[typeof n.value];e._zod.onattach.push(a=>{const r=a._zod.bag,s=(n.inclusive?r.minimum:r.exclusiveMinimum)??Number.NEGATIVE_INFINITY;n.value>s&&(n.inclusive?r.minimum=n.value:r.exclusiveMinimum=n.value)}),e._zod.check=a=>{(n.inclusive?a.value>=n.value:a.value>n.value)||a.issues.push({origin:o,code:"too_small",minimum:n.value,input:a.value,inclusive:n.inclusive,inst:e,continue:!n.abort})}}),ki=E("$ZodCheckMultipleOf",(e,n)=>{qe.init(e,n),e._zod.onattach.push(o=>{var a;(a=o._zod.bag).multipleOf??(a.multipleOf=n.value)}),e._zod.check=o=>{if(typeof o.value!=typeof n.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof o.value=="bigint"?o.value%n.value===BigInt(0):As(o.value,n.value)===0)||o.issues.push({origin:typeof o.value,code:"not_multiple_of",divisor:n.value,input:o.value,inst:e,continue:!n.abort})}}),yi=E("$ZodCheckNumberFormat",(e,n)=>{qe.init(e,n),n.format=n.format||"float64";const o=n.format?.includes("int"),a=o?"int":"number",[r,s]=Ns[n.format];e._zod.onattach.push(i=>{const l=i._zod.bag;l.format=n.format,l.minimum=r,l.maximum=s,o&&(l.pattern=fi)}),e._zod.check=i=>{const l=i.value;if(o){if(!Number.isInteger(l)){i.issues.push({expected:a,format:n.format,code:"invalid_type",input:l,inst:e});return}if(!Number.isSafeInteger(l)){l>0?i.issues.push({input:l,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,continue:!n.abort}):i.issues.push({input:l,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,continue:!n.abort});return}}l<r&&i.issues.push({origin:"number",input:l,code:"too_small",minimum:r,inclusive:!0,inst:e,continue:!n.abort}),l>s&&i.issues.push({origin:"number",input:l,code:"too_big",maximum:s,inst:e})}}),Si=E("$ZodCheckMaxLength",(e,n)=>{var o;qe.init(e,n),(o=e._zod.def).when??(o.when=a=>{const r=a.value;return!Cn(r)&&r.length!==void 0}),e._zod.onattach.push(a=>{const r=a._zod.bag.maximum??Number.POSITIVE_INFINITY;n.maximum<r&&(a._zod.bag.maximum=n.maximum)}),e._zod.check=a=>{const r=a.value;if(r.length<=n.maximum)return;const i=En(r);a.issues.push({origin:i,code:"too_big",maximum:n.maximum,inclusive:!0,input:r,inst:e,continue:!n.abort})}}),wi=E("$ZodCheckMinLength",(e,n)=>{var o;qe.init(e,n),(o=e._zod.def).when??(o.when=a=>{const r=a.value;return!Cn(r)&&r.length!==void 0}),e._zod.onattach.push(a=>{const r=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;n.minimum>r&&(a._zod.bag.minimum=n.minimum)}),e._zod.check=a=>{const r=a.value;if(r.length>=n.minimum)return;const i=En(r);a.issues.push({origin:i,code:"too_small",minimum:n.minimum,inclusive:!0,input:r,inst:e,continue:!n.abort})}}),Ci=E("$ZodCheckLengthEquals",(e,n)=>{var o;qe.init(e,n),(o=e._zod.def).when??(o.when=a=>{const r=a.value;return!Cn(r)&&r.length!==void 0}),e._zod.onattach.push(a=>{const r=a._zod.bag;r.minimum=n.length,r.maximum=n.length,r.length=n.length}),e._zod.check=a=>{const r=a.value,s=r.length;if(s===n.length)return;const i=En(r),l=s>n.length;a.issues.push({origin:i,...l?{code:"too_big",maximum:n.length}:{code:"too_small",minimum:n.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!n.abort})}}),Yt=E("$ZodCheckStringFormat",(e,n)=>{var o,a;qe.init(e,n),e._zod.onattach.push(r=>{const s=r._zod.bag;s.format=n.format,n.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(n.pattern))}),n.pattern?(o=e._zod).check??(o.check=r=>{n.pattern.lastIndex=0,!n.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:n.format,input:r.value,...n.pattern?{pattern:n.pattern.toString()}:{},inst:e,continue:!n.abort})}):(a=e._zod).check??(a.check=()=>{})}),Ti=E("$ZodCheckRegex",(e,n)=>{Yt.init(e,n),e._zod.check=o=>{n.pattern.lastIndex=0,!n.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:"regex",input:o.value,pattern:n.pattern.toString(),inst:e,continue:!n.abort})}}),xi=E("$ZodCheckLowerCase",(e,n)=>{n.pattern??(n.pattern=vi),Yt.init(e,n)}),Ii=E("$ZodCheckUpperCase",(e,n)=>{n.pattern??(n.pattern=bi),Yt.init(e,n)}),Ei=E("$ZodCheckIncludes",(e,n)=>{qe.init(e,n);const o=_t(n.includes),a=new RegExp(typeof n.position=="number"?`^.{${n.position}}${o}`:o);n.pattern=a,e._zod.onattach.push(r=>{const s=r._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(a)}),e._zod.check=r=>{r.value.includes(n.includes,n.position)||r.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:n.includes,input:r.value,inst:e,continue:!n.abort})}}),Ri=E("$ZodCheckStartsWith",(e,n)=>{qe.init(e,n);const o=new RegExp(`^${_t(n.prefix)}.*`);n.pattern??(n.pattern=o),e._zod.onattach.push(a=>{const r=a._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(o)}),e._zod.check=a=>{a.value.startsWith(n.prefix)||a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:n.prefix,input:a.value,inst:e,continue:!n.abort})}}),Ai=E("$ZodCheckEndsWith",(e,n)=>{qe.init(e,n);const o=new RegExp(`.*${_t(n.suffix)}$`);n.pattern??(n.pattern=o),e._zod.onattach.push(a=>{const r=a._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(o)}),e._zod.check=a=>{a.value.endsWith(n.suffix)||a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:n.suffix,input:a.value,inst:e,continue:!n.abort})}}),_i=E("$ZodCheckOverwrite",(e,n)=>{qe.init(e,n),e._zod.check=o=>{o.value=n.tx(o.value)}});class $i{constructor(n=[]){this.content=[],this.indent=0,this&&(this.args=n)}indented(n){this.indent+=1,n(this),this.indent-=1}write(n){if(typeof n=="function"){n(this,{execution:"sync"}),n(this,{execution:"async"});return}const a=n.split(`
1
+ "use strict";var Ss=Object.create;var Gn=Object.defineProperty;var ws=Object.getOwnPropertyDescriptor;var Cs=Object.getOwnPropertyNames;var Ts=Object.getPrototypeOf,xs=Object.prototype.hasOwnProperty;var Is=(e,n,o,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of Cs(n))!xs.call(e,r)&&r!==o&&Gn(e,r,{get:()=>n[r],enumerable:!(a=ws(n,r))||a.enumerable});return e};var Vt=(e,n,o)=>(o=e!=null?Ss(Ts(e)):{},Is(n||!e||!e.__esModule?Gn(o,"default",{value:e,enumerable:!0}):o,e));const t=require("vue"),G=require("@copilotkit/shared"),he=require("zod"),ie=require("@copilotkit/core"),Sn=require("zod-to-json-schema"),Xt=require("@a2ui/web_core/v0_9"),Wn=require("@copilotkit/mcp-apps-renderer/activity"),Me=require("@a2ui/web_core/v0_9/basic_catalog"),Wt=require("@ag-ui/client"),me=require("lucide-vue-next"),Mo=require("streamdown-vue"),No=require("@ag-ui/core");let ge=(function(e){return e.TEXT_MESSAGE_START="TEXT_MESSAGE_START",e.TEXT_MESSAGE_CONTENT="TEXT_MESSAGE_CONTENT",e.TEXT_MESSAGE_END="TEXT_MESSAGE_END",e.TEXT_MESSAGE_CHUNK="TEXT_MESSAGE_CHUNK",e.TOOL_CALL_START="TOOL_CALL_START",e.TOOL_CALL_ARGS="TOOL_CALL_ARGS",e.TOOL_CALL_END="TOOL_CALL_END",e.TOOL_CALL_CHUNK="TOOL_CALL_CHUNK",e.TOOL_CALL_RESULT="TOOL_CALL_RESULT",e.STATE_SNAPSHOT="STATE_SNAPSHOT",e.STATE_DELTA="STATE_DELTA",e.MESSAGES_SNAPSHOT="MESSAGES_SNAPSHOT",e.ACTIVITY_SNAPSHOT="ACTIVITY_SNAPSHOT",e.ACTIVITY_DELTA="ACTIVITY_DELTA",e.RAW="RAW",e.CUSTOM="CUSTOM",e.RUN_STARTED="RUN_STARTED",e.RUN_FINISHED="RUN_FINISHED",e.RUN_ERROR="RUN_ERROR",e.STEP_STARTED="STEP_STARTED",e.STEP_FINISHED="STEP_FINISHED",e.REASONING_START="REASONING_START",e.REASONING_MESSAGE_START="REASONING_MESSAGE_START",e.REASONING_MESSAGE_CONTENT="REASONING_MESSAGE_CONTENT",e.REASONING_MESSAGE_END="REASONING_MESSAGE_END",e.REASONING_MESSAGE_CHUNK="REASONING_MESSAGE_CHUNK",e.REASONING_END="REASONING_END",e.REASONING_ENCRYPTED_VALUE="REASONING_ENCRYPTED_VALUE",e.SUBAGENT_STARTED="SUBAGENT_STARTED",e.SUBAGENT_FINISHED="SUBAGENT_FINISHED",e.SUBAGENT_ERROR="SUBAGENT_ERROR",e})({});function E(e,n,o){function a(l,c){var u;Object.defineProperty(l,"_zod",{value:l._zod??{},enumerable:!1}),(u=l._zod).traits??(u.traits=new Set),l._zod.traits.add(e),n(l,c);for(const p in i.prototype)p in l||Object.defineProperty(l,p,{value:i.prototype[p].bind(l)});l._zod.constr=i,l._zod.def=c}const r=o?.Parent??Object;class s extends r{}Object.defineProperty(s,"name",{value:e});function i(l){var c;const u=o?.Parent?new s:this;a(u,l),(c=u._zod).deferred??(c.deferred=[]);for(const p of u._zod.deferred)p();return u}return Object.defineProperty(i,"init",{value:a}),Object.defineProperty(i,Symbol.hasInstance,{value:l=>o?.Parent&&l instanceof o.Parent?!0:l?._zod?.traits?.has(e)}),Object.defineProperty(i,"name",{value:e}),i}class xt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}const Oo={};function pt(e){return Oo}function Es(e){const n=Object.values(e).filter(a=>typeof a=="number");return Object.entries(e).filter(([a,r])=>n.indexOf(+a)===-1).map(([a,r])=>r)}function Rs(e,n){return typeof n=="bigint"?n.toString():n}function wn(e){return{get value(){{const n=e();return Object.defineProperty(this,"value",{value:n}),n}}}}function Cn(e){return e==null}function Tn(e){const n=e.startsWith("^")?1:0,o=e.endsWith("$")?e.length-1:e.length;return e.slice(n,o)}function As(e,n){const o=(e.toString().split(".")[1]||"").length,a=(n.toString().split(".")[1]||"").length,r=o>a?o:a,s=Number.parseInt(e.toFixed(r).replace(".","")),i=Number.parseInt(n.toFixed(r).replace(".",""));return s%i/10**r}function be(e,n,o){Object.defineProperty(e,n,{get(){{const a=o();return e[n]=a,a}},set(a){Object.defineProperty(e,n,{value:a})},configurable:!0})}function xn(e,n,o){Object.defineProperty(e,n,{value:o,writable:!0,enumerable:!0,configurable:!0})}function Ct(e){return JSON.stringify(e)}const zo=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Kt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const _s=wn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function mn(e){if(Kt(e)===!1)return!1;const n=e.constructor;if(n===void 0)return!0;const o=n.prototype;return!(Kt(o)===!1||Object.prototype.hasOwnProperty.call(o,"isPrototypeOf")===!1)}const $s=new Set(["string","number","symbol"]);function _t(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ft(e,n,o){const a=new e._zod.constr(n??e._zod.def);return(!n||o?.parent)&&(a._zod.parent=e),a}function J(e){const n=e;if(!n)return{};if(typeof n=="string")return{error:()=>n};if(n?.message!==void 0){if(n?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");n.error=n.message}return delete n.message,typeof n.error=="string"?{...n,error:()=>n.error}:n}function Ms(e){return Object.keys(e).filter(n=>e[n]._zod.optin==="optional"&&e[n]._zod.optout==="optional")}const Ns={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Os(e,n){const o={},a=e._zod.def;for(const r in n){if(!(r in a.shape))throw new Error(`Unrecognized key: "${r}"`);n[r]&&(o[r]=a.shape[r])}return ft(e,{...e._zod.def,shape:o,checks:[]})}function zs(e,n){const o={...e._zod.def.shape},a=e._zod.def;for(const r in n){if(!(r in a.shape))throw new Error(`Unrecognized key: "${r}"`);n[r]&&delete o[r]}return ft(e,{...e._zod.def,shape:o,checks:[]})}function Bs(e,n){if(!mn(n))throw new Error("Invalid input to extend: expected a plain object");const o={...e._zod.def,get shape(){const a={...e._zod.def.shape,...n};return xn(this,"shape",a),a},checks:[]};return ft(e,o)}function Fs(e,n){return ft(e,{...e._zod.def,get shape(){const o={...e._zod.def.shape,...n._zod.def.shape};return xn(this,"shape",o),o},catchall:n._zod.def.catchall,checks:[]})}function Ds(e,n,o){const a=n._zod.def.shape,r={...a};if(o)for(const s in o){if(!(s in a))throw new Error(`Unrecognized key: "${s}"`);o[s]&&(r[s]=e?new e({type:"optional",innerType:a[s]}):a[s])}else for(const s in a)r[s]=e?new e({type:"optional",innerType:a[s]}):a[s];return ft(n,{...n._zod.def,shape:r,checks:[]})}function Vs(e,n,o){const a=n._zod.def.shape,r={...a};if(o)for(const s in o){if(!(s in r))throw new Error(`Unrecognized key: "${s}"`);o[s]&&(r[s]=new e({type:"nonoptional",innerType:a[s]}))}else for(const s in a)r[s]=new e({type:"nonoptional",innerType:a[s]});return ft(n,{...n._zod.def,shape:r,checks:[]})}function Tt(e,n=0){for(let o=n;o<e.issues.length;o++)if(e.issues[o]?.continue!==!0)return!0;return!1}function In(e,n){return n.map(o=>{var a;return(a=o).path??(a.path=[]),o.path.unshift(e),o})}function Pt(e){return typeof e=="string"?e:e?.message}function mt(e,n,o){const a={...e,path:e.path??[]};if(!e.message){const r=Pt(e.inst?._zod.def?.error?.(e))??Pt(n?.error?.(e))??Pt(o.customError?.(e))??Pt(o.localeError?.(e))??"Invalid input";a.message=r}return delete a.inst,delete a.continue,n?.reportInput||delete a.input,a}function En(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function It(...e){const[n,o,a]=e;return typeof n=="string"?{message:n,code:"custom",input:o,inst:a}:{...n}}const Bo=(e,n)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:n,enumerable:!1}),Object.defineProperty(e,"message",{get(){return JSON.stringify(n,Rs,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Fo=E("$ZodError",Bo),Do=E("$ZodError",Bo,{Parent:Error});function Ps(e,n=o=>o.message){const o={},a=[];for(const r of e.issues)r.path.length>0?(o[r.path[0]]=o[r.path[0]]||[],o[r.path[0]].push(n(r))):a.push(n(r));return{formErrors:a,fieldErrors:o}}function Ls(e,n){const o=n||function(s){return s.message},a={_errors:[]},r=s=>{for(const i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(l=>r({issues:l}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)a._errors.push(o(i));else{let l=a,c=0;for(;c<i.path.length;){const u=i.path[c];c===i.path.length-1?(l[u]=l[u]||{_errors:[]},l[u]._errors.push(o(i))):l[u]=l[u]||{_errors:[]},l=l[u],c++}}};return r(e),a}const Us=e=>(n,o,a,r)=>{const s=a?Object.assign(a,{async:!1}):{async:!1},i=n._zod.run({value:o,issues:[]},s);if(i instanceof Promise)throw new xt;if(i.issues.length){const l=new(r?.Err??e)(i.issues.map(c=>mt(c,s,pt())));throw zo(l,r?.callee),l}return i.value},js=e=>async(n,o,a,r)=>{const s=a?Object.assign(a,{async:!0}):{async:!0};let i=n._zod.run({value:o,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){const l=new(r?.Err??e)(i.issues.map(c=>mt(c,s,pt())));throw zo(l,r?.callee),l}return i.value},Vo=e=>(n,o,a)=>{const r=a?{...a,async:!1}:{async:!1},s=n._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw new xt;return s.issues.length?{success:!1,error:new(e??Fo)(s.issues.map(i=>mt(i,r,pt())))}:{success:!0,data:s.value}},Zs=Vo(Do),Po=e=>async(n,o,a)=>{const r=a?Object.assign(a,{async:!0}):{async:!0};let s=n._zod.run({value:o,issues:[]},r);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new e(s.issues.map(i=>mt(i,r,pt())))}:{success:!0,data:s.value}},Hs=Po(Do),Gs=/^[cC][^\s-]{8,}$/,Ws=/^[0-9a-z]+$/,Ks=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,qs=/^[0-9a-vA-V]{20}$/,Js=/^[A-Za-z0-9]{27}$/,Xs=/^[a-zA-Z0-9_-]{21}$/,Ys=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Qs=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Kn=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,ei=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ti="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ni(){return new RegExp(ti,"u")}const oi=/^(?:(?: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])$/,ai=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,ri=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,si=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ii=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Lo=/^[A-Za-z0-9_-]*$/,li=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,ci=/^\+(?:[0-9]){6,14}[0-9]$/,Uo="(?:(?:\\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])))",ui=new RegExp(`^${Uo}$`);function jo(e){const n="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${n}`:e.precision===0?`${n}:[0-5]\\d`:`${n}:[0-5]\\d\\.\\d{${e.precision}}`:`${n}(?::[0-5]\\d(?:\\.\\d+)?)?`}function di(e){return new RegExp(`^${jo(e)}$`)}function pi(e){const n=jo({precision:e.precision}),o=["Z"];e.local&&o.push(""),e.offset&&o.push("([+-]\\d{2}:\\d{2})");const a=`${n}(?:${o.join("|")})`;return new RegExp(`^${Uo}T(?:${a})$`)}const mi=e=>{const n=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${n}$`)},fi=/^\d+$/,hi=/^-?\d+(?:\.\d+)?/i,gi=/true|false/i,vi=/^[^A-Z]*$/,bi=/^[^a-z]*$/,qe=E("$ZodCheck",(e,n)=>{var o;e._zod??(e._zod={}),e._zod.def=n,(o=e._zod).onattach??(o.onattach=[])}),Zo={number:"number",bigint:"bigint",object:"date"},Ho=E("$ZodCheckLessThan",(e,n)=>{qe.init(e,n);const o=Zo[typeof n.value];e._zod.onattach.push(a=>{const r=a._zod.bag,s=(n.inclusive?r.maximum:r.exclusiveMaximum)??Number.POSITIVE_INFINITY;n.value<s&&(n.inclusive?r.maximum=n.value:r.exclusiveMaximum=n.value)}),e._zod.check=a=>{(n.inclusive?a.value<=n.value:a.value<n.value)||a.issues.push({origin:o,code:"too_big",maximum:n.value,input:a.value,inclusive:n.inclusive,inst:e,continue:!n.abort})}}),Go=E("$ZodCheckGreaterThan",(e,n)=>{qe.init(e,n);const o=Zo[typeof n.value];e._zod.onattach.push(a=>{const r=a._zod.bag,s=(n.inclusive?r.minimum:r.exclusiveMinimum)??Number.NEGATIVE_INFINITY;n.value>s&&(n.inclusive?r.minimum=n.value:r.exclusiveMinimum=n.value)}),e._zod.check=a=>{(n.inclusive?a.value>=n.value:a.value>n.value)||a.issues.push({origin:o,code:"too_small",minimum:n.value,input:a.value,inclusive:n.inclusive,inst:e,continue:!n.abort})}}),ki=E("$ZodCheckMultipleOf",(e,n)=>{qe.init(e,n),e._zod.onattach.push(o=>{var a;(a=o._zod.bag).multipleOf??(a.multipleOf=n.value)}),e._zod.check=o=>{if(typeof o.value!=typeof n.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof o.value=="bigint"?o.value%n.value===BigInt(0):As(o.value,n.value)===0)||o.issues.push({origin:typeof o.value,code:"not_multiple_of",divisor:n.value,input:o.value,inst:e,continue:!n.abort})}}),yi=E("$ZodCheckNumberFormat",(e,n)=>{qe.init(e,n),n.format=n.format||"float64";const o=n.format?.includes("int"),a=o?"int":"number",[r,s]=Ns[n.format];e._zod.onattach.push(i=>{const l=i._zod.bag;l.format=n.format,l.minimum=r,l.maximum=s,o&&(l.pattern=fi)}),e._zod.check=i=>{const l=i.value;if(o){if(!Number.isInteger(l)){i.issues.push({expected:a,format:n.format,code:"invalid_type",input:l,inst:e});return}if(!Number.isSafeInteger(l)){l>0?i.issues.push({input:l,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,continue:!n.abort}):i.issues.push({input:l,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,continue:!n.abort});return}}l<r&&i.issues.push({origin:"number",input:l,code:"too_small",minimum:r,inclusive:!0,inst:e,continue:!n.abort}),l>s&&i.issues.push({origin:"number",input:l,code:"too_big",maximum:s,inst:e})}}),Si=E("$ZodCheckMaxLength",(e,n)=>{var o;qe.init(e,n),(o=e._zod.def).when??(o.when=a=>{const r=a.value;return!Cn(r)&&r.length!==void 0}),e._zod.onattach.push(a=>{const r=a._zod.bag.maximum??Number.POSITIVE_INFINITY;n.maximum<r&&(a._zod.bag.maximum=n.maximum)}),e._zod.check=a=>{const r=a.value;if(r.length<=n.maximum)return;const i=En(r);a.issues.push({origin:i,code:"too_big",maximum:n.maximum,inclusive:!0,input:r,inst:e,continue:!n.abort})}}),wi=E("$ZodCheckMinLength",(e,n)=>{var o;qe.init(e,n),(o=e._zod.def).when??(o.when=a=>{const r=a.value;return!Cn(r)&&r.length!==void 0}),e._zod.onattach.push(a=>{const r=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;n.minimum>r&&(a._zod.bag.minimum=n.minimum)}),e._zod.check=a=>{const r=a.value;if(r.length>=n.minimum)return;const i=En(r);a.issues.push({origin:i,code:"too_small",minimum:n.minimum,inclusive:!0,input:r,inst:e,continue:!n.abort})}}),Ci=E("$ZodCheckLengthEquals",(e,n)=>{var o;qe.init(e,n),(o=e._zod.def).when??(o.when=a=>{const r=a.value;return!Cn(r)&&r.length!==void 0}),e._zod.onattach.push(a=>{const r=a._zod.bag;r.minimum=n.length,r.maximum=n.length,r.length=n.length}),e._zod.check=a=>{const r=a.value,s=r.length;if(s===n.length)return;const i=En(r),l=s>n.length;a.issues.push({origin:i,...l?{code:"too_big",maximum:n.length}:{code:"too_small",minimum:n.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!n.abort})}}),Yt=E("$ZodCheckStringFormat",(e,n)=>{var o,a;qe.init(e,n),e._zod.onattach.push(r=>{const s=r._zod.bag;s.format=n.format,n.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(n.pattern))}),n.pattern?(o=e._zod).check??(o.check=r=>{n.pattern.lastIndex=0,!n.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:n.format,input:r.value,...n.pattern?{pattern:n.pattern.toString()}:{},inst:e,continue:!n.abort})}):(a=e._zod).check??(a.check=()=>{})}),Ti=E("$ZodCheckRegex",(e,n)=>{Yt.init(e,n),e._zod.check=o=>{n.pattern.lastIndex=0,!n.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:"regex",input:o.value,pattern:n.pattern.toString(),inst:e,continue:!n.abort})}}),xi=E("$ZodCheckLowerCase",(e,n)=>{n.pattern??(n.pattern=vi),Yt.init(e,n)}),Ii=E("$ZodCheckUpperCase",(e,n)=>{n.pattern??(n.pattern=bi),Yt.init(e,n)}),Ei=E("$ZodCheckIncludes",(e,n)=>{qe.init(e,n);const o=_t(n.includes),a=new RegExp(typeof n.position=="number"?`^.{${n.position}}${o}`:o);n.pattern=a,e._zod.onattach.push(r=>{const s=r._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(a)}),e._zod.check=r=>{r.value.includes(n.includes,n.position)||r.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:n.includes,input:r.value,inst:e,continue:!n.abort})}}),Ri=E("$ZodCheckStartsWith",(e,n)=>{qe.init(e,n);const o=new RegExp(`^${_t(n.prefix)}.*`);n.pattern??(n.pattern=o),e._zod.onattach.push(a=>{const r=a._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(o)}),e._zod.check=a=>{a.value.startsWith(n.prefix)||a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:n.prefix,input:a.value,inst:e,continue:!n.abort})}}),Ai=E("$ZodCheckEndsWith",(e,n)=>{qe.init(e,n);const o=new RegExp(`.*${_t(n.suffix)}$`);n.pattern??(n.pattern=o),e._zod.onattach.push(a=>{const r=a._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(o)}),e._zod.check=a=>{a.value.endsWith(n.suffix)||a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:n.suffix,input:a.value,inst:e,continue:!n.abort})}}),_i=E("$ZodCheckOverwrite",(e,n)=>{qe.init(e,n),e._zod.check=o=>{o.value=n.tx(o.value)}});class $i{constructor(n=[]){this.content=[],this.indent=0,this&&(this.args=n)}indented(n){this.indent+=1,n(this),this.indent-=1}write(n){if(typeof n=="function"){n(this,{execution:"sync"}),n(this,{execution:"async"});return}const a=n.split(`
2
2
  `).filter(i=>i),r=Math.min(...a.map(i=>i.length-i.trimStart().length)),s=a.map(i=>i.slice(r)).map(i=>" ".repeat(this.indent*2)+i);for(const i of s)this.content.push(i)}compile(){const n=Function,o=this?.args,r=[...(this?.content??[""]).map(s=>` ${s}`)];return new n(...o,r.join(`
3
3
  `))}}const Mi={major:4,minor:0,patch:0},ye=E("$ZodType",(e,n)=>{var o;e??(e={}),e._zod.def=n,e._zod.bag=e._zod.bag||{},e._zod.version=Mi;const a=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&a.unshift(e);for(const r of a)for(const s of r._zod.onattach)s(e);if(a.length===0)(o=e._zod).deferred??(o.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const r=(s,i,l)=>{let c=Tt(s),u;for(const p of i){if(p._zod.def.when){if(!p._zod.def.when(s))continue}else if(c)continue;const g=s.issues.length,h=p._zod.check(s);if(h instanceof Promise&&l?.async===!1)throw new xt;if(u||h instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await h,s.issues.length!==g&&(c||(c=Tt(s,g)))});else{if(s.issues.length===g)continue;c||(c=Tt(s,g))}}return u?u.then(()=>s):s};e._zod.run=(s,i)=>{const l=e._zod.parse(s,i);if(l instanceof Promise){if(i.async===!1)throw new xt;return l.then(c=>r(c,a,i))}return r(l,a,i)}}e["~standard"]={validate:r=>{try{const s=Zs(e,r);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Hs(e,r).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Rn=E("$ZodString",(e,n)=>{ye.init(e,n),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??mi(e._zod.bag),e._zod.parse=(o,a)=>{if(n.coerce)try{o.value=String(o.value)}catch{}return typeof o.value=="string"||o.issues.push({expected:"string",code:"invalid_type",input:o.value,inst:e}),o}}),Se=E("$ZodStringFormat",(e,n)=>{Yt.init(e,n),Rn.init(e,n)}),Ni=E("$ZodGUID",(e,n)=>{n.pattern??(n.pattern=Qs),Se.init(e,n)}),Oi=E("$ZodUUID",(e,n)=>{if(n.version){const a={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[n.version];if(a===void 0)throw new Error(`Invalid UUID version: "${n.version}"`);n.pattern??(n.pattern=Kn(a))}else n.pattern??(n.pattern=Kn());Se.init(e,n)}),zi=E("$ZodEmail",(e,n)=>{n.pattern??(n.pattern=ei),Se.init(e,n)}),Bi=E("$ZodURL",(e,n)=>{Se.init(e,n),e._zod.check=o=>{try{const a=o.value,r=new URL(a),s=r.href;n.hostname&&(n.hostname.lastIndex=0,n.hostname.test(r.hostname)||o.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:li.source,input:o.value,inst:e,continue:!n.abort})),n.protocol&&(n.protocol.lastIndex=0,n.protocol.test(r.protocol.endsWith(":")?r.protocol.slice(0,-1):r.protocol)||o.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:n.protocol.source,input:o.value,inst:e,continue:!n.abort})),!a.endsWith("/")&&s.endsWith("/")?o.value=s.slice(0,-1):o.value=s;return}catch{o.issues.push({code:"invalid_format",format:"url",input:o.value,inst:e,continue:!n.abort})}}}),Fi=E("$ZodEmoji",(e,n)=>{n.pattern??(n.pattern=ni()),Se.init(e,n)}),Di=E("$ZodNanoID",(e,n)=>{n.pattern??(n.pattern=Xs),Se.init(e,n)}),Vi=E("$ZodCUID",(e,n)=>{n.pattern??(n.pattern=Gs),Se.init(e,n)}),Pi=E("$ZodCUID2",(e,n)=>{n.pattern??(n.pattern=Ws),Se.init(e,n)}),Li=E("$ZodULID",(e,n)=>{n.pattern??(n.pattern=Ks),Se.init(e,n)}),Ui=E("$ZodXID",(e,n)=>{n.pattern??(n.pattern=qs),Se.init(e,n)}),ji=E("$ZodKSUID",(e,n)=>{n.pattern??(n.pattern=Js),Se.init(e,n)}),Zi=E("$ZodISODateTime",(e,n)=>{n.pattern??(n.pattern=pi(n)),Se.init(e,n)}),Hi=E("$ZodISODate",(e,n)=>{n.pattern??(n.pattern=ui),Se.init(e,n)}),Gi=E("$ZodISOTime",(e,n)=>{n.pattern??(n.pattern=di(n)),Se.init(e,n)}),Wi=E("$ZodISODuration",(e,n)=>{n.pattern??(n.pattern=Ys),Se.init(e,n)}),Ki=E("$ZodIPv4",(e,n)=>{n.pattern??(n.pattern=oi),Se.init(e,n),e._zod.onattach.push(o=>{const a=o._zod.bag;a.format="ipv4"})}),qi=E("$ZodIPv6",(e,n)=>{n.pattern??(n.pattern=ai),Se.init(e,n),e._zod.onattach.push(o=>{const a=o._zod.bag;a.format="ipv6"}),e._zod.check=o=>{try{new URL(`http://[${o.value}]`)}catch{o.issues.push({code:"invalid_format",format:"ipv6",input:o.value,inst:e,continue:!n.abort})}}}),Ji=E("$ZodCIDRv4",(e,n)=>{n.pattern??(n.pattern=ri),Se.init(e,n)}),Xi=E("$ZodCIDRv6",(e,n)=>{n.pattern??(n.pattern=si),Se.init(e,n),e._zod.check=o=>{const[a,r]=o.value.split("/");try{if(!r)throw new Error;const s=Number(r);if(`${s}`!==r)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${a}]`)}catch{o.issues.push({code:"invalid_format",format:"cidrv6",input:o.value,inst:e,continue:!n.abort})}}});function Wo(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const Yi=E("$ZodBase64",(e,n)=>{n.pattern??(n.pattern=ii),Se.init(e,n),e._zod.onattach.push(o=>{o._zod.bag.contentEncoding="base64"}),e._zod.check=o=>{Wo(o.value)||o.issues.push({code:"invalid_format",format:"base64",input:o.value,inst:e,continue:!n.abort})}});function Qi(e){if(!Lo.test(e))return!1;const n=e.replace(/[-_]/g,a=>a==="-"?"+":"/"),o=n.padEnd(Math.ceil(n.length/4)*4,"=");return Wo(o)}const el=E("$ZodBase64URL",(e,n)=>{n.pattern??(n.pattern=Lo),Se.init(e,n),e._zod.onattach.push(o=>{o._zod.bag.contentEncoding="base64url"}),e._zod.check=o=>{Qi(o.value)||o.issues.push({code:"invalid_format",format:"base64url",input:o.value,inst:e,continue:!n.abort})}}),tl=E("$ZodE164",(e,n)=>{n.pattern??(n.pattern=ci),Se.init(e,n)});function nl(e,n=null){try{const o=e.split(".");if(o.length!==3)return!1;const[a]=o;if(!a)return!1;const r=JSON.parse(atob(a));return!("typ"in r&&r?.typ!=="JWT"||!r.alg||n&&(!("alg"in r)||r.alg!==n))}catch{return!1}}const ol=E("$ZodJWT",(e,n)=>{Se.init(e,n),e._zod.check=o=>{nl(o.value,n.alg)||o.issues.push({code:"invalid_format",format:"jwt",input:o.value,inst:e,continue:!n.abort})}}),Ko=E("$ZodNumber",(e,n)=>{ye.init(e,n),e._zod.pattern=e._zod.bag.pattern??hi,e._zod.parse=(o,a)=>{if(n.coerce)try{o.value=Number(o.value)}catch{}const r=o.value;if(typeof r=="number"&&!Number.isNaN(r)&&Number.isFinite(r))return o;const s=typeof r=="number"?Number.isNaN(r)?"NaN":Number.isFinite(r)?void 0:"Infinity":void 0;return o.issues.push({expected:"number",code:"invalid_type",input:r,inst:e,...s?{received:s}:{}}),o}}),al=E("$ZodNumber",(e,n)=>{yi.init(e,n),Ko.init(e,n)}),rl=E("$ZodBoolean",(e,n)=>{ye.init(e,n),e._zod.pattern=gi,e._zod.parse=(o,a)=>{if(n.coerce)try{o.value=!!o.value}catch{}const r=o.value;return typeof r=="boolean"||o.issues.push({expected:"boolean",code:"invalid_type",input:r,inst:e}),o}}),sl=E("$ZodAny",(e,n)=>{ye.init(e,n),e._zod.parse=o=>o}),il=E("$ZodUnknown",(e,n)=>{ye.init(e,n),e._zod.parse=o=>o}),ll=E("$ZodNever",(e,n)=>{ye.init(e,n),e._zod.parse=(o,a)=>(o.issues.push({expected:"never",code:"invalid_type",input:o.value,inst:e}),o)});function qn(e,n,o){e.issues.length&&n.issues.push(...In(o,e.issues)),n.value[o]=e.value}const cl=E("$ZodArray",(e,n)=>{ye.init(e,n),e._zod.parse=(o,a)=>{const r=o.value;if(!Array.isArray(r))return o.issues.push({expected:"array",code:"invalid_type",input:r,inst:e}),o;o.value=Array(r.length);const s=[];for(let i=0;i<r.length;i++){const l=r[i],c=n.element._zod.run({value:l,issues:[]},a);c instanceof Promise?s.push(c.then(u=>qn(u,o,i))):qn(c,o,i)}return s.length?Promise.all(s).then(()=>o):o}});function Lt(e,n,o){e.issues.length&&n.issues.push(...In(o,e.issues)),n.value[o]=e.value}function Jn(e,n,o,a){e.issues.length?a[o]===void 0?o in a?n.value[o]=void 0:n.value[o]=e.value:n.issues.push(...In(o,e.issues)):e.value===void 0?o in a&&(n.value[o]=void 0):n.value[o]=e.value}const ul=E("$ZodObject",(e,n)=>{ye.init(e,n);const o=wn(()=>{const g=Object.keys(n.shape);for(const d of g)if(!(n.shape[d]instanceof ye))throw new Error(`Invalid element at key "${d}": expected a Zod schema`);const h=Ms(n.shape);return{shape:n.shape,keys:g,keySet:new Set(g),numKeys:g.length,optionalKeys:new Set(h)}});be(e._zod,"propValues",()=>{const g=n.shape,h={};for(const d in g){const f=g[d]._zod;if(f.values){h[d]??(h[d]=new Set);for(const C of f.values)h[d].add(C)}}return h});const a=g=>{const h=new $i(["shape","payload","ctx"]),d=o.value,f=m=>{const v=Ct(m);return`shape[${v}]._zod.run({ value: input[${v}], issues: [] }, ctx)`};h.write("const input = payload.value;");const C=Object.create(null);let b=0;for(const m of d.keys)C[m]=`key_${b++}`;h.write("const newResult = {}");for(const m of d.keys)if(d.optionalKeys.has(m)){const v=C[m];h.write(`const ${v} = ${f(m)};`);const y=Ct(m);h.write(`
4
4
  if (${v}.issues.length) {
@@ -23,7 +23,7 @@
23
23
  if (${v}.issues.length) payload.issues = payload.issues.concat(${v}.issues.map(iss => ({
24
24
  ...iss,
25
25
  path: iss.path ? [${Ct(m)}, ...iss.path] : [${Ct(m)}]
26
- })));`),h.write(`newResult[${Ct(m)}] = ${v}.value`)}h.write("payload.value = newResult;"),h.write("return payload;");const k=h.compile();return(m,v)=>k(g,m,v)};let r;const s=Kt,i=!Oo.jitless,c=i&&_s.value,u=n.catchall;let p;e._zod.parse=(g,h)=>{p??(p=o.value);const d=g.value;if(!s(d))return g.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),g;const f=[];if(i&&c&&h?.async===!1&&h.jitless!==!0)r||(r=a(n.shape)),g=r(g,h);else{g.value={};const v=p.shape;for(const y of p.keys){const x=v[y],S=x._zod.run({value:d[y],issues:[]},h),A=x._zod.optin==="optional"&&x._zod.optout==="optional";S instanceof Promise?f.push(S.then(T=>A?Jn(T,g,y,d):Lt(T,g,y))):A?Jn(S,g,y,d):Lt(S,g,y)}}if(!u)return f.length?Promise.all(f).then(()=>g):g;const C=[],b=p.keySet,k=u._zod,m=k.def.type;for(const v of Object.keys(d)){if(b.has(v))continue;if(m==="never"){C.push(v);continue}const y=k.run({value:d[v],issues:[]},h);y instanceof Promise?f.push(y.then(x=>Lt(x,g,v))):Lt(y,g,v)}return C.length&&g.issues.push({code:"unrecognized_keys",keys:C,input:d,inst:e}),f.length?Promise.all(f).then(()=>g):g}});function Xn(e,n,o,a){for(const r of e)if(r.issues.length===0)return n.value=r.value,n;return n.issues.push({code:"invalid_union",input:n.value,inst:o,errors:e.map(r=>r.issues.map(s=>mt(s,a,pt())))}),n}const qo=E("$ZodUnion",(e,n)=>{ye.init(e,n),be(e._zod,"optin",()=>n.options.some(o=>o._zod.optin==="optional")?"optional":void 0),be(e._zod,"optout",()=>n.options.some(o=>o._zod.optout==="optional")?"optional":void 0),be(e._zod,"values",()=>{if(n.options.every(o=>o._zod.values))return new Set(n.options.flatMap(o=>Array.from(o._zod.values)))}),be(e._zod,"pattern",()=>{if(n.options.every(o=>o._zod.pattern)){const o=n.options.map(a=>a._zod.pattern);return new RegExp(`^(${o.map(a=>Tn(a.source)).join("|")})$`)}}),e._zod.parse=(o,a)=>{let r=!1;const s=[];for(const i of n.options){const l=i._zod.run({value:o.value,issues:[]},a);if(l instanceof Promise)s.push(l),r=!0;else{if(l.issues.length===0)return l;s.push(l)}}return r?Promise.all(s).then(i=>Xn(i,o,e,a)):Xn(s,o,e,a)}}),dl=E("$ZodDiscriminatedUnion",(e,n)=>{qo.init(e,n);const o=e._zod.parse;be(e._zod,"propValues",()=>{const r={};for(const s of n.options){const i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${n.options.indexOf(s)}"`);for(const[l,c]of Object.entries(i)){r[l]||(r[l]=new Set);for(const u of c)r[l].add(u)}}return r});const a=wn(()=>{const r=n.options,s=new Map;for(const i of r){const l=i._zod.propValues[n.discriminator];if(!l||l.size===0)throw new Error(`Invalid discriminated union option at index "${n.options.indexOf(i)}"`);for(const c of l){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});e._zod.parse=(r,s)=>{const i=r.value;if(!Kt(i))return r.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),r;const l=a.value.get(i?.[n.discriminator]);return l?l._zod.run(r,s):n.unionFallback?o(r,s):(r.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[n.discriminator],inst:e}),r)}}),pl=E("$ZodIntersection",(e,n)=>{ye.init(e,n),e._zod.parse=(o,a)=>{const r=o.value,s=n.left._zod.run({value:r,issues:[]},a),i=n.right._zod.run({value:r,issues:[]},a);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Yn(o,c,u)):Yn(o,s,i)}});function fn(e,n){if(e===n)return{valid:!0,data:e};if(e instanceof Date&&n instanceof Date&&+e==+n)return{valid:!0,data:e};if(mn(e)&&mn(n)){const o=Object.keys(n),a=Object.keys(e).filter(s=>o.indexOf(s)!==-1),r={...e,...n};for(const s of a){const i=fn(e[s],n[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};r[s]=i.data}return{valid:!0,data:r}}if(Array.isArray(e)&&Array.isArray(n)){if(e.length!==n.length)return{valid:!1,mergeErrorPath:[]};const o=[];for(let a=0;a<e.length;a++){const r=e[a],s=n[a],i=fn(r,s);if(!i.valid)return{valid:!1,mergeErrorPath:[a,...i.mergeErrorPath]};o.push(i.data)}return{valid:!0,data:o}}return{valid:!1,mergeErrorPath:[]}}function Yn(e,n,o){if(n.issues.length&&e.issues.push(...n.issues),o.issues.length&&e.issues.push(...o.issues),Tt(e))return e;const a=fn(n.value,o.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}const ml=E("$ZodEnum",(e,n)=>{ye.init(e,n);const o=Es(n.entries);e._zod.values=new Set(o),e._zod.pattern=new RegExp(`^(${o.filter(a=>$s.has(typeof a)).map(a=>typeof a=="string"?_t(a):a.toString()).join("|")})$`),e._zod.parse=(a,r)=>{const s=a.value;return e._zod.values.has(s)||a.issues.push({code:"invalid_value",values:o,input:s,inst:e}),a}}),fl=E("$ZodLiteral",(e,n)=>{ye.init(e,n),e._zod.values=new Set(n.values),e._zod.pattern=new RegExp(`^(${n.values.map(o=>typeof o=="string"?_t(o):o?o.toString():String(o)).join("|")})$`),e._zod.parse=(o,a)=>{const r=o.value;return e._zod.values.has(r)||o.issues.push({code:"invalid_value",values:n.values,input:r,inst:e}),o}}),hl=E("$ZodTransform",(e,n)=>{ye.init(e,n),e._zod.parse=(o,a)=>{const r=n.transform(o.value,o);if(a.async)return(r instanceof Promise?r:Promise.resolve(r)).then(i=>(o.value=i,o));if(r instanceof Promise)throw new xt;return o.value=r,o}}),gl=E("$ZodOptional",(e,n)=>{ye.init(e,n),e._zod.optin="optional",e._zod.optout="optional",be(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,void 0]):void 0),be(e._zod,"pattern",()=>{const o=n.innerType._zod.pattern;return o?new RegExp(`^(${Tn(o.source)})?$`):void 0}),e._zod.parse=(o,a)=>n.innerType._zod.optin==="optional"?n.innerType._zod.run(o,a):o.value===void 0?o:n.innerType._zod.run(o,a)}),vl=E("$ZodNullable",(e,n)=>{ye.init(e,n),be(e._zod,"optin",()=>n.innerType._zod.optin),be(e._zod,"optout",()=>n.innerType._zod.optout),be(e._zod,"pattern",()=>{const o=n.innerType._zod.pattern;return o?new RegExp(`^(${Tn(o.source)}|null)$`):void 0}),be(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,null]):void 0),e._zod.parse=(o,a)=>o.value===null?o:n.innerType._zod.run(o,a)}),bl=E("$ZodDefault",(e,n)=>{ye.init(e,n),e._zod.optin="optional",be(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(o,a)=>{if(o.value===void 0)return o.value=n.defaultValue,o;const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(s=>Qn(s,n)):Qn(r,n)}});function Qn(e,n){return e.value===void 0&&(e.value=n.defaultValue),e}const kl=E("$ZodPrefault",(e,n)=>{ye.init(e,n),e._zod.optin="optional",be(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(o,a)=>(o.value===void 0&&(o.value=n.defaultValue),n.innerType._zod.run(o,a))}),yl=E("$ZodNonOptional",(e,n)=>{ye.init(e,n),be(e._zod,"values",()=>{const o=n.innerType._zod.values;return o?new Set([...o].filter(a=>a!==void 0)):void 0}),e._zod.parse=(o,a)=>{const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(s=>eo(s,e)):eo(r,e)}});function eo(e,n){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:n}),e}const Sl=E("$ZodCatch",(e,n)=>{ye.init(e,n),e._zod.optin="optional",be(e._zod,"optout",()=>n.innerType._zod.optout),be(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(o,a)=>{const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(s=>(o.value=s.value,s.issues.length&&(o.value=n.catchValue({...o,error:{issues:s.issues.map(i=>mt(i,a,pt()))},input:o.value}),o.issues=[]),o)):(o.value=r.value,r.issues.length&&(o.value=n.catchValue({...o,error:{issues:r.issues.map(s=>mt(s,a,pt()))},input:o.value}),o.issues=[]),o)}}),wl=E("$ZodPipe",(e,n)=>{ye.init(e,n),be(e._zod,"values",()=>n.in._zod.values),be(e._zod,"optin",()=>n.in._zod.optin),be(e._zod,"optout",()=>n.out._zod.optout),e._zod.parse=(o,a)=>{const r=n.in._zod.run(o,a);return r instanceof Promise?r.then(s=>to(s,n,a)):to(r,n,a)}});function to(e,n,o){return Tt(e)?e:n.out._zod.run({value:e.value,issues:e.issues},o)}const Cl=E("$ZodReadonly",(e,n)=>{ye.init(e,n),be(e._zod,"propValues",()=>n.innerType._zod.propValues),be(e._zod,"values",()=>n.innerType._zod.values),be(e._zod,"optin",()=>n.innerType._zod.optin),be(e._zod,"optout",()=>n.innerType._zod.optout),e._zod.parse=(o,a)=>{const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(no):no(r)}});function no(e){return e.value=Object.freeze(e.value),e}const Tl=E("$ZodCustom",(e,n)=>{qe.init(e,n),ye.init(e,n),e._zod.parse=(o,a)=>o,e._zod.check=o=>{const a=o.value,r=n.fn(a);if(r instanceof Promise)return r.then(s=>oo(s,o,a,e));oo(r,o,a,e)}});function oo(e,n,o,a){if(!e){const r={code:"custom",input:o,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};a._zod.def.params&&(r.params=a._zod.def.params),n.issues.push(It(r))}}class xl{constructor(){this._map=new Map,this._idmap=new Map}add(n,...o){const a=o[0];if(this._map.set(n,a),a&&typeof a=="object"&&"id"in a){if(this._idmap.has(a.id))throw new Error(`ID ${a.id} already exists in the registry`);this._idmap.set(a.id,n)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(n){const o=this._map.get(n);return o&&typeof o=="object"&&"id"in o&&this._idmap.delete(o.id),this._map.delete(n),this}get(n){const o=n._zod.parent;if(o){const a={...this.get(o)??{}};return delete a.id,{...a,...this._map.get(n)}}return this._map.get(n)}has(n){return this._map.has(n)}}function Il(){return new xl}const Ut=Il();function El(e,n){return new e({type:"string",...J(n)})}function Rl(e,n){return new e({type:"string",format:"email",check:"string_format",abort:!1,...J(n)})}function ao(e,n){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...J(n)})}function Al(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...J(n)})}function _l(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...J(n)})}function $l(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...J(n)})}function Ml(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...J(n)})}function Nl(e,n){return new e({type:"string",format:"url",check:"string_format",abort:!1,...J(n)})}function Ol(e,n){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...J(n)})}function zl(e,n){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...J(n)})}function Bl(e,n){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...J(n)})}function Fl(e,n){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...J(n)})}function Dl(e,n){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...J(n)})}function Vl(e,n){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...J(n)})}function Pl(e,n){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...J(n)})}function Ll(e,n){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...J(n)})}function Ul(e,n){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...J(n)})}function jl(e,n){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...J(n)})}function Zl(e,n){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...J(n)})}function Hl(e,n){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...J(n)})}function Gl(e,n){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...J(n)})}function Wl(e,n){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...J(n)})}function Kl(e,n){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...J(n)})}function ql(e,n){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...J(n)})}function Jl(e,n){return new e({type:"string",format:"date",check:"string_format",...J(n)})}function Xl(e,n){return new e({type:"string",format:"time",check:"string_format",precision:null,...J(n)})}function Yl(e,n){return new e({type:"string",format:"duration",check:"string_format",...J(n)})}function Ql(e,n){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...J(n)})}function ec(e,n){return new e({type:"boolean",...J(n)})}function tc(e){return new e({type:"any"})}function nc(e){return new e({type:"unknown"})}function oc(e,n){return new e({type:"never",...J(n)})}function ro(e,n){return new Ho({check:"less_than",...J(n),value:e,inclusive:!1})}function ln(e,n){return new Ho({check:"less_than",...J(n),value:e,inclusive:!0})}function so(e,n){return new Go({check:"greater_than",...J(n),value:e,inclusive:!1})}function cn(e,n){return new Go({check:"greater_than",...J(n),value:e,inclusive:!0})}function io(e,n){return new ki({check:"multiple_of",...J(n),value:e})}function Jo(e,n){return new Si({check:"max_length",...J(n),maximum:e})}function qt(e,n){return new wi({check:"min_length",...J(n),minimum:e})}function Xo(e,n){return new Ci({check:"length_equals",...J(n),length:e})}function ac(e,n){return new Ti({check:"string_format",format:"regex",...J(n),pattern:e})}function rc(e){return new xi({check:"string_format",format:"lowercase",...J(e)})}function sc(e){return new Ii({check:"string_format",format:"uppercase",...J(e)})}function ic(e,n){return new Ei({check:"string_format",format:"includes",...J(n),includes:e})}function lc(e,n){return new Ri({check:"string_format",format:"starts_with",...J(n),prefix:e})}function cc(e,n){return new Ai({check:"string_format",format:"ends_with",...J(n),suffix:e})}function $t(e){return new _i({check:"overwrite",tx:e})}function uc(e){return $t(n=>n.normalize(e))}function dc(){return $t(e=>e.trim())}function pc(){return $t(e=>e.toLowerCase())}function mc(){return $t(e=>e.toUpperCase())}function fc(e,n,o){return new e({type:"array",element:n,...J(o)})}function hc(e,n,o){const a=J(o);return a.abort??(a.abort=!0),new e({type:"custom",check:"custom",fn:n,...a})}function gc(e,n,o){return new e({type:"custom",check:"custom",fn:n,...J(o)})}const vc=E("ZodISODateTime",(e,n)=>{Zi.init(e,n),Te.init(e,n)});function bc(e){return ql(vc,e)}const kc=E("ZodISODate",(e,n)=>{Hi.init(e,n),Te.init(e,n)});function yc(e){return Jl(kc,e)}const Sc=E("ZodISOTime",(e,n)=>{Gi.init(e,n),Te.init(e,n)});function wc(e){return Xl(Sc,e)}const Cc=E("ZodISODuration",(e,n)=>{Wi.init(e,n),Te.init(e,n)});function Tc(e){return Yl(Cc,e)}const xc=(e,n)=>{Fo.init(e,n),e.name="ZodError",Object.defineProperties(e,{format:{value:o=>Ls(e,o)},flatten:{value:o=>Ps(e,o)},addIssue:{value:o=>e.issues.push(o)},addIssues:{value:o=>e.issues.push(...o)},isEmpty:{get(){return e.issues.length===0}}})},Qt=E("ZodError",xc,{Parent:Error}),Ic=Us(Qt),Ec=js(Qt),Rc=Vo(Qt),Ac=Po(Qt),xe=E("ZodType",(e,n)=>(ye.init(e,n),e.def=n,Object.defineProperty(e,"_def",{value:n}),e.check=(...o)=>e.clone({...n,checks:[...n.checks??[],...o.map(a=>typeof a=="function"?{_zod:{check:a,def:{check:"custom"},onattach:[]}}:a)]}),e.clone=(o,a)=>ft(e,o,a),e.brand=()=>e,e.register=((o,a)=>(o.add(e,a),e)),e.parse=(o,a)=>Ic(e,o,a,{callee:e.parse}),e.safeParse=(o,a)=>Rc(e,o,a),e.parseAsync=async(o,a)=>Ec(e,o,a,{callee:e.parseAsync}),e.safeParseAsync=async(o,a)=>Ac(e,o,a),e.spa=e.safeParseAsync,e.refine=(o,a)=>e.check(Su(o,a)),e.superRefine=o=>e.check(wu(o)),e.overwrite=o=>e.check($t(o)),e.optional=()=>co(e),e.nullable=()=>uo(e),e.nullish=()=>co(uo(e)),e.nonoptional=o=>fu(e,o),e.array=()=>$e(e),e.or=o=>en([e,o]),e.and=o=>ru(e,o),e.transform=o=>po(e,lu(o)),e.default=o=>du(e,o),e.prefault=o=>mu(e,o),e.catch=o=>gu(e,o),e.pipe=o=>po(e,o),e.readonly=()=>ku(e),e.describe=o=>{const a=e.clone();return Ut.add(a,{description:o}),a},Object.defineProperty(e,"description",{get(){return Ut.get(e)?.description},configurable:!0}),e.meta=(...o)=>{if(o.length===0)return Ut.get(e);const a=e.clone();return Ut.add(a,o[0]),a},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Yo=E("_ZodString",(e,n)=>{Rn.init(e,n),xe.init(e,n);const o=e._zod.bag;e.format=o.format??null,e.minLength=o.minimum??null,e.maxLength=o.maximum??null,e.regex=(...a)=>e.check(ac(...a)),e.includes=(...a)=>e.check(ic(...a)),e.startsWith=(...a)=>e.check(lc(...a)),e.endsWith=(...a)=>e.check(cc(...a)),e.min=(...a)=>e.check(qt(...a)),e.max=(...a)=>e.check(Jo(...a)),e.length=(...a)=>e.check(Xo(...a)),e.nonempty=(...a)=>e.check(qt(1,...a)),e.lowercase=a=>e.check(rc(a)),e.uppercase=a=>e.check(sc(a)),e.trim=()=>e.check(dc()),e.normalize=(...a)=>e.check(uc(...a)),e.toLowerCase=()=>e.check(pc()),e.toUpperCase=()=>e.check(mc())}),_c=E("ZodString",(e,n)=>{Rn.init(e,n),Yo.init(e,n),e.email=o=>e.check(Rl($c,o)),e.url=o=>e.check(Nl(Mc,o)),e.jwt=o=>e.check(Kl(Wc,o)),e.emoji=o=>e.check(Ol(Nc,o)),e.guid=o=>e.check(ao(lo,o)),e.uuid=o=>e.check(Al(jt,o)),e.uuidv4=o=>e.check(_l(jt,o)),e.uuidv6=o=>e.check($l(jt,o)),e.uuidv7=o=>e.check(Ml(jt,o)),e.nanoid=o=>e.check(zl(Oc,o)),e.guid=o=>e.check(ao(lo,o)),e.cuid=o=>e.check(Bl(zc,o)),e.cuid2=o=>e.check(Fl(Bc,o)),e.ulid=o=>e.check(Dl(Fc,o)),e.base64=o=>e.check(Hl(Zc,o)),e.base64url=o=>e.check(Gl(Hc,o)),e.xid=o=>e.check(Vl(Dc,o)),e.ksuid=o=>e.check(Pl(Vc,o)),e.ipv4=o=>e.check(Ll(Pc,o)),e.ipv6=o=>e.check(Ul(Lc,o)),e.cidrv4=o=>e.check(jl(Uc,o)),e.cidrv6=o=>e.check(Zl(jc,o)),e.e164=o=>e.check(Wl(Gc,o)),e.datetime=o=>e.check(bc(o)),e.date=o=>e.check(yc(o)),e.time=o=>e.check(wc(o)),e.duration=o=>e.check(Tc(o))});function I(e){return El(_c,e)}const Te=E("ZodStringFormat",(e,n)=>{Se.init(e,n),Yo.init(e,n)}),$c=E("ZodEmail",(e,n)=>{zi.init(e,n),Te.init(e,n)}),lo=E("ZodGUID",(e,n)=>{Ni.init(e,n),Te.init(e,n)}),jt=E("ZodUUID",(e,n)=>{Oi.init(e,n),Te.init(e,n)}),Mc=E("ZodURL",(e,n)=>{Bi.init(e,n),Te.init(e,n)}),Nc=E("ZodEmoji",(e,n)=>{Fi.init(e,n),Te.init(e,n)}),Oc=E("ZodNanoID",(e,n)=>{Di.init(e,n),Te.init(e,n)}),zc=E("ZodCUID",(e,n)=>{Vi.init(e,n),Te.init(e,n)}),Bc=E("ZodCUID2",(e,n)=>{Pi.init(e,n),Te.init(e,n)}),Fc=E("ZodULID",(e,n)=>{Li.init(e,n),Te.init(e,n)}),Dc=E("ZodXID",(e,n)=>{Ui.init(e,n),Te.init(e,n)}),Vc=E("ZodKSUID",(e,n)=>{ji.init(e,n),Te.init(e,n)}),Pc=E("ZodIPv4",(e,n)=>{Ki.init(e,n),Te.init(e,n)}),Lc=E("ZodIPv6",(e,n)=>{qi.init(e,n),Te.init(e,n)}),Uc=E("ZodCIDRv4",(e,n)=>{Ji.init(e,n),Te.init(e,n)}),jc=E("ZodCIDRv6",(e,n)=>{Xi.init(e,n),Te.init(e,n)}),Zc=E("ZodBase64",(e,n)=>{Yi.init(e,n),Te.init(e,n)}),Hc=E("ZodBase64URL",(e,n)=>{el.init(e,n),Te.init(e,n)}),Gc=E("ZodE164",(e,n)=>{tl.init(e,n),Te.init(e,n)}),Wc=E("ZodJWT",(e,n)=>{ol.init(e,n),Te.init(e,n)}),Kc=E("ZodNumber",(e,n)=>{Ko.init(e,n),xe.init(e,n),e.gt=(a,r)=>e.check(so(a,r)),e.gte=(a,r)=>e.check(cn(a,r)),e.min=(a,r)=>e.check(cn(a,r)),e.lt=(a,r)=>e.check(ro(a,r)),e.lte=(a,r)=>e.check(ln(a,r)),e.max=(a,r)=>e.check(ln(a,r)),e.int=a=>e.check(se(a)),e.safe=a=>e.check(se(a)),e.positive=a=>e.check(so(0,a)),e.nonnegative=a=>e.check(cn(0,a)),e.negative=a=>e.check(ro(0,a)),e.nonpositive=a=>e.check(ln(0,a)),e.multipleOf=(a,r)=>e.check(io(a,r)),e.step=(a,r)=>e.check(io(a,r)),e.finite=()=>e;const o=e._zod.bag;e.minValue=Math.max(o.minimum??Number.NEGATIVE_INFINITY,o.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(o.maximum??Number.POSITIVE_INFINITY,o.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(o.format??"").includes("int")||Number.isSafeInteger(o.multipleOf??.5),e.isFinite=!0,e.format=o.format??null}),qc=E("ZodNumberFormat",(e,n)=>{al.init(e,n),Kc.init(e,n)});function se(e){return Ql(qc,e)}const Jc=E("ZodBoolean",(e,n)=>{rl.init(e,n),xe.init(e,n)});function ue(e){return ec(Jc,e)}const Xc=E("ZodAny",(e,n)=>{sl.init(e,n),xe.init(e,n)});function ee(){return tc(Xc)}const Yc=E("ZodUnknown",(e,n)=>{il.init(e,n),xe.init(e,n)});function hn(){return nc(Yc)}const Qc=E("ZodNever",(e,n)=>{ll.init(e,n),xe.init(e,n)});function eu(e){return oc(Qc,e)}const tu=E("ZodArray",(e,n)=>{cl.init(e,n),xe.init(e,n),e.element=n.element,e.min=(o,a)=>e.check(qt(o,a)),e.nonempty=o=>e.check(qt(1,o)),e.max=(o,a)=>e.check(Jo(o,a)),e.length=(o,a)=>e.check(Xo(o,a)),e.unwrap=()=>e.element});function $e(e,n){return fc(tu,e,n)}const nu=E("ZodObject",(e,n)=>{ul.init(e,n),xe.init(e,n),be(e,"shape",()=>n.shape),e.keyof=()=>St(Object.keys(e._zod.def.shape)),e.catchall=o=>e.clone({...e._zod.def,catchall:o}),e.passthrough=()=>e.clone({...e._zod.def,catchall:hn()}),e.loose=()=>e.clone({...e._zod.def,catchall:hn()}),e.strict=()=>e.clone({...e._zod.def,catchall:eu()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=o=>Bs(e,o),e.merge=o=>Fs(e,o),e.pick=o=>Os(e,o),e.omit=o=>zs(e,o),e.partial=(...o)=>Ds(ea,e,o[0]),e.required=(...o)=>Vs(ta,e,o[0])});function P(e,n){return new nu({type:"object",get shape(){return xn(this,"shape",{...e}),this.shape},catchall:hn(),...J(n)})}const Qo=E("ZodUnion",(e,n)=>{qo.init(e,n),xe.init(e,n),e.options=n.options});function en(e,n){return new Qo({type:"union",options:e,...J(n)})}const ou=E("ZodDiscriminatedUnion",(e,n)=>{Qo.init(e,n),dl.init(e,n)});function ht(e,n,o){return new ou({type:"union",options:n,discriminator:e,...J(o)})}const au=E("ZodIntersection",(e,n)=>{pl.init(e,n),xe.init(e,n)});function ru(e,n){return new au({type:"intersection",left:e,right:n})}const gn=E("ZodEnum",(e,n)=>{ml.init(e,n),xe.init(e,n),e.enum=n.entries,e.options=Object.values(n.entries);const o=new Set(Object.keys(n.entries));e.extract=(a,r)=>{const s={};for(const i of a)if(o.has(i))s[i]=n.entries[i];else throw new Error(`Key ${i} not found in enum`);return new gn({...n,checks:[],...J(r),entries:s})},e.exclude=(a,r)=>{const s={...n.entries};for(const i of a)if(o.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new gn({...n,checks:[],...J(r),entries:s})}});function St(e,n){const o=Array.isArray(e)?Object.fromEntries(e.map(a=>[a,a])):e;return new gn({type:"enum",entries:o,...J(n)})}const su=E("ZodLiteral",(e,n)=>{fl.init(e,n),xe.init(e,n),e.values=new Set(n.values),Object.defineProperty(e,"value",{get(){if(n.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return n.values[0]}})});function q(e,n){return new su({type:"literal",values:Array.isArray(e)?e:[e],...J(n)})}const iu=E("ZodTransform",(e,n)=>{hl.init(e,n),xe.init(e,n),e._zod.parse=(o,a)=>{o.addIssue=s=>{if(typeof s=="string")o.issues.push(It(s,o.value,n));else{const i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=o.value),i.inst??(i.inst=e),i.continue??(i.continue=!0),o.issues.push(It(i))}};const r=n.transform(o.value,o);return r instanceof Promise?r.then(s=>(o.value=s,o)):(o.value=r,o)}});function lu(e){return new iu({type:"transform",transform:e})}const ea=E("ZodOptional",(e,n)=>{gl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function co(e){return new ea({type:"optional",innerType:e})}const cu=E("ZodNullable",(e,n)=>{vl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function uo(e){return new cu({type:"nullable",innerType:e})}const uu=E("ZodDefault",(e,n)=>{bl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function du(e,n){return new uu({type:"default",innerType:e,get defaultValue(){return typeof n=="function"?n():n}})}const pu=E("ZodPrefault",(e,n)=>{kl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function mu(e,n){return new pu({type:"prefault",innerType:e,get defaultValue(){return typeof n=="function"?n():n}})}const ta=E("ZodNonOptional",(e,n)=>{yl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function fu(e,n){return new ta({type:"nonoptional",innerType:e,...J(n)})}const hu=E("ZodCatch",(e,n)=>{Sl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function gu(e,n){return new hu({type:"catch",innerType:e,catchValue:typeof n=="function"?n:()=>n})}const vu=E("ZodPipe",(e,n)=>{wl.init(e,n),xe.init(e,n),e.in=n.in,e.out=n.out});function po(e,n){return new vu({type:"pipe",in:e,out:n})}const bu=E("ZodReadonly",(e,n)=>{Cl.init(e,n),xe.init(e,n)});function ku(e){return new bu({type:"readonly",innerType:e})}const na=E("ZodCustom",(e,n)=>{Tl.init(e,n),xe.init(e,n)});function yu(e){const n=new qe({check:"custom"});return n._zod.check=e,n}function Mt(e,n){return hc(na,e??(()=>!0),n)}function Su(e,n={}){return gc(na,e,n)}function wu(e){const n=yu(o=>(o.addIssue=a=>{if(typeof a=="string")o.issues.push(It(a,o.value,n._zod.def));else{const r=a;r.fatal&&(r.continue=!1),r.code??(r.code="custom"),r.input??(r.input=o.value),r.inst??(r.inst=n),r.continue??(r.continue=!n._zod.def.abort),o.issues.push(It(r))}},e(o.value,o)));return n}const oa=St(ge),te=Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),le=I(),An=St(["developer","system","assistant","user"]),aa=P({type:q(ge.TEXT_MESSAGE_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),role:An.optional(),name:I().optional()}),ra=P({type:q(ge.TEXT_MESSAGE_CONTENT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),delta:I()}),sa=P({type:q(ge.TEXT_MESSAGE_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),ia=P({type:q(ge.TEXT_MESSAGE_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I().optional(),role:An.optional(),delta:I().optional(),name:I().optional()}),la=P({type:q(ge.TOOL_CALL_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I(),toolCallName:I(),parentMessageId:I().optional()}),ca=P({type:q(ge.TOOL_CALL_ARGS),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I(),delta:I()}),ua=P({type:q(ge.TOOL_CALL_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I()}),da=P({type:q(ge.TOOL_CALL_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I().optional(),toolCallName:I().optional(),parentMessageId:I().optional(),delta:I().optional()}),pa=P({type:q("text"),id:I().optional(),text:I(),metadata:ee().refine(e=>e!==null).optional()}),ma=P({type:q("data"),value:I(),mimeType:I()}),fa=P({type:q("url"),value:I(),mimeType:I().optional()}),ha=P({type:q("file"),value:I(),provider:I().optional(),mimeType:I().optional()}),Nt=ht("type",[ma,fa,ha]),ga=P({type:q("image"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),va=P({type:q("audio"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),ba=P({type:q("video"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),ka=P({type:q("document"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),tn=ht("type",[pa,ga,va,ba,ka]),ya=P({type:q(ge.TOOL_CALL_RESULT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),toolCallId:I(),content:en([I(),$e(tn)]),role:q("tool").optional()}),_n=ee(),Sa=P({type:q(ge.STATE_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),snapshot:_n.refine(e=>e!==void 0)}),it=I().regex(new RegExp("^(/([^/~]|~[01])*)*$")),wa=P({op:q("add"),path:it,value:ee().refine(e=>e!==void 0)}).meta({specOpen:!0}),Ca=P({op:q("remove"),path:it}).meta({specOpen:!0}),Ta=P({op:q("replace"),path:it,value:ee().refine(e=>e!==void 0)}).meta({specOpen:!0}),xa=P({op:q("move"),from:it,path:it}).meta({specOpen:!0}),Ia=P({op:q("copy"),from:it,path:it}).meta({specOpen:!0}),Ea=P({op:q("test"),path:it,value:ee().refine(e=>e!==void 0)}).meta({specOpen:!0}),Ra=ht("op",[wa,Ca,Ta,xa,Ia,Ea]),$n=$e(Ra),Aa=P({type:q(ge.STATE_DELTA),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),delta:$n}),_a=P({subagentRunId:le.optional(),id:I(),role:q("developer"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I()}),$a=P({subagentRunId:le.optional(),id:I(),role:q("system"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I()}),Ma=P({name:I(),arguments:I()}),Na=P({id:I(),type:q("function"),function:Ma,encryptedValue:I().optional(),metadata:te.optional()}),Oa=P({subagentRunId:le.optional(),id:I(),role:q("assistant"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I().optional(),toolCalls:$e(Na).optional()}),za=P({subagentRunId:le.optional(),id:I(),role:q("user"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:en([I(),$e(tn)])}),Ba=P({subagentRunId:le.optional(),id:I(),role:q("tool"),content:en([I(),$e(tn)]),toolCallId:I(),error:I().optional(),encryptedValue:I().optional(),metadata:te.optional()}),Fa=P({subagentRunId:le.optional(),id:I(),role:q("activity"),activityType:I(),content:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),metadata:te.optional()}),Da=P({subagentRunId:le.optional(),id:I(),role:q("reasoning"),content:I(),encryptedValue:I().optional(),metadata:te.optional()}),Mn=ht("role",[_a,$a,Oa,za,Ba,Fa,Da]),Va=P({type:q(ge.MESSAGES_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),messages:$e(Mn)}),Pa=P({type:q(ge.ACTIVITY_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),activityType:I(),content:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),replace:ue().optional()}),La=P({type:q(ge.ACTIVITY_DELTA),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),activityType:I(),patch:$n}),Ua=P({type:q(ge.RAW),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),event:ee().refine(e=>e!==void 0),source:I().optional()}),ja=P({type:q(ge.CUSTOM),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),name:I(),value:ee().refine(e=>e!==void 0)}),Nn=P({name:I(),description:I(),parameters:ee().refine(e=>e!==null).optional(),metadata:te.optional()}),Za=P({description:I(),value:I()}),Ha=P({interruptId:I(),status:St(["resolved","cancelled"]),payload:ee().refine(e=>e!==null).optional(),metadata:te.optional()}),Ga=P({threadId:I(),runId:I(),protocolVersion:I().optional(),parentRunId:I().optional(),state:_n.refine(e=>e!==null).nullable().transform(e=>e??void 0).optional(),messages:$e(Mn),tools:$e(Nn).default(()=>[]),context:$e(Za).default(()=>[]),forwardedProps:ee().refine(e=>e!==null).optional(),resume:$e(Ha).optional()}),Wa=P({type:q(ge.RUN_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),threadId:I(),runId:I(),protocolVersion:I().optional(),parentRunId:I().optional(),input:Ga.optional()}),Ka=P({type:q("success"),pendingToolCallIds:$e(I()).optional()}),qa=P({subagentRunId:le.optional(),id:I(),reason:I(),message:I().optional(),toolCallId:I().optional(),responseSchema:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)).optional(),expiresAt:I().optional(),metadata:te.optional()}),Ja=P({type:q("interrupt"),interrupts:$e(qa).min(1)}),Xa=P({type:q("cancelled")}),Ya=ht("type",[Ka,Ja,Xa]),On=P({provider:I().optional(),model:I().optional(),inputTokens:se().min(0).max(9007199254740991).optional(),outputTokens:se().min(0).max(9007199254740991).optional(),totalTokens:se().min(0).max(9007199254740991).optional(),reasoningTokens:se().min(0).max(9007199254740991).optional(),cachedInputTokens:se().min(0).max(9007199254740991).optional(),cacheWriteInputTokens:se().min(0).max(9007199254740991).optional()}),Qa=P({type:q(ge.RUN_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),threadId:I(),runId:I(),result:ee().refine(e=>e!==null).optional(),outcome:Ya.optional(),usage:$e(On).optional()}),er=P({type:q(ge.RUN_ERROR),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),message:I(),code:I().optional(),usage:$e(On).optional()}),tr=P({type:q(ge.STEP_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),stepName:I()}),nr=P({type:q(ge.STEP_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),stepName:I()}),or=P({type:q(ge.REASONING_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),ar=P({type:q(ge.REASONING_MESSAGE_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),role:q("reasoning")}),rr=P({type:q(ge.REASONING_MESSAGE_CONTENT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),delta:I()}),sr=P({type:q(ge.REASONING_MESSAGE_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),ir=P({type:q(ge.REASONING_MESSAGE_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I().optional(),delta:I().optional()}),lr=P({type:q(ge.REASONING_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),cr=St(["tool-call","message"]),ur=P({type:q(ge.REASONING_ENCRYPTED_VALUE),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),subtype:cr,entityId:I(),encryptedValue:I()}),dr=P({type:q(ge.SUBAGENT_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le,name:I(),description:I().optional(),parentSubagentRunId:le.optional(),parentToolCallId:I().optional(),parentMessageId:I().optional()}),pr=P({type:q("success")}),mr=P({type:q("suspended"),interruptIds:$e(I()).optional()}),fr=ht("type",[pr,mr]),hr=P({type:q(ge.SUBAGENT_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le,result:ee().refine(e=>e!==null).optional(),outcome:fr.optional()}),gr=P({type:q(ge.SUBAGENT_ERROR),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le,message:I(),code:I().optional()}),Cu=ht("type",[aa,ra,sa,ia,la,ca,ua,da,ya,Sa,Aa,Va,Pa,La,Ua,ja,Wa,Qa,er,tr,nr,or,ar,rr,sr,ir,lr,ur,dr,hr,gr]),Tu=St(["developer","system","assistant","user","tool","activity","reasoning"]),vr=P({name:I(),description:I().optional()}),br=P({name:I().optional(),type:I().optional(),description:I().optional(),version:I().optional(),provider:I().optional(),documentationUrl:I().optional(),metadata:te.optional()}),kr=P({streaming:ue().optional(),websocket:ue().optional(),httpBinary:ue().optional(),pushNotifications:ue().optional(),resumable:ue().optional()}),yr=P({supported:ue().optional(),items:$e(Nn).optional(),parallelCalls:ue().optional(),clientProvided:ue().optional()}),Sr=P({structuredOutput:ue().optional(),supportedMimeTypes:$e(I()).optional()}),wr=P({snapshots:ue().optional(),deltas:ue().optional(),memory:ue().optional(),persistentState:ue().optional()}),Cr=P({supported:ue().optional(),delegation:ue().optional(),handoffs:ue().optional(),subagents:$e(vr).optional()}),Tr=P({supported:ue().optional(),streaming:ue().optional(),encrypted:ue().optional()}),xr=P({image:ue().optional(),audio:ue().optional(),video:ue().optional(),pdf:ue().optional(),file:ue().optional()}),Ir=P({image:ue().optional(),audio:ue().optional()}),Er=P({input:xr.optional(),output:Ir.optional()}),Rr=P({codeExecution:ue().optional(),sandboxed:ue().optional(),maxIterations:se().min(0).max(9007199254740991).optional(),maxExecutionTime:se().min(0).max(9007199254740991).optional()}),Ar=P({supported:ue().optional(),approvals:ue().optional(),interventions:ue().optional(),feedback:ue().optional(),interrupts:ue().optional(),approveWithEdits:ue().optional()}),xu=P({identity:br.optional(),transport:kr.optional(),tools:yr.optional(),output:Sr.optional(),state:wr.optional(),multiAgent:Cr.optional(),reasoning:Tr.optional(),multimodal:Er.optional(),execution:Rr.optional(),humanInTheLoop:Ar.optional(),custom:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)).optional()}),Iu=P({subagentRunId:le.optional()}),Eu=P({type:oa,timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional()}),Ru=P({subagentRunId:le.optional(),id:I(),role:I(),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional()}),Au=te.optional(),_u="1.77.0",_r=t.defineComponent({inheritAttrs:!1,__name:"CopilotKitInspector",props:{core:{},openRequest:{}},setup(e){const n=e,o=t.useAttrs(),a=t.shallowRef(null),r=t.shallowRef(null);let s=!0,i=null;const l={created(c){i?.(c,n.core??null),r.value=c,n.openRequest&&c.openInspector?.("message_toolbar",n.openRequest)}};return t.onMounted(()=>{import("@copilotkit/web-inspector").then(c=>{s&&(c.defineWebInspector?.(),i=(u,p)=>c.configureWebInspectorElement(u,p,{development:process.env.NODE_ENV==="development",framework:"vue",sdkVersion:_u}),a.value=c.WEB_INSPECTOR_TAG)}).catch(c=>{console.error("Failed to load CopilotKit inspector:",c)})}),t.onUnmounted(()=>{s=!1,r.value=null}),t.watch(()=>n.core,c=>{r.value&&(r.value.core=c??null)}),t.watch(()=>n.openRequest,c=>{c&&r.value?.openInspector?.("message_toolbar",c)}),(c,u)=>a.value?t.withDirectives((t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.value),t.normalizeProps(t.mergeProps({key:0},t.unref(o))),null,16)),[[l]]):t.createCommentVNode("",!0)}}),$r=Symbol("CopilotKit"),vn=Symbol("CopilotChatConfiguration"),Mr=Symbol("SandboxFunctions"),$u=Symbol("CopilotKitInspector");function Ve(){const e=t.inject($r);if(!e)throw new Error("useCopilotKit must be used within CopilotKitProvider");return e}const Nr=t.defineComponent({name:"MCPAppsActivityRenderer",props:{activityType:{type:String,required:!0},content:{type:Object,required:!0},message:{type:Object,required:!0},agent:{type:Object,required:!1,default:void 0}},setup(e){const{copilotkit:n}=Ve(),o=t.ref(null),a=t.ref(null),r=t.ref(null),s=t.ref(!0),i=t.ref({}),l=t.shallowRef(null),c=t.shallowRef(null),u=t.shallowRef(null),p=t.computed(()=>e.message?.id);t.watch([o,()=>e.agent,()=>n.value,p,()=>e.content.resourceUri,()=>e.content.serverHash,()=>e.content.serverId],([h,d],f,C)=>{if(!d){a.value=new Error("No agent available to fetch resource"),s.value=!1;return}if(!h)return;let b=!0;s.value=!0,a.value=null,r.value=null,i.value={},u.value=null;const k=document.createElement("iframe");k.style.width="100%",k.style.height="100px",k.style.border="none",k.style.backgroundColor="transparent",k.style.display="block",h.appendChild(k),l.value=k,C(()=>{b=!1,c.value?.teardown(),c.value=null,k.remove(),l.value===k&&(l.value=null)}),(async()=>{try{const v=await import("@copilotkit/mcp-apps-renderer").catch(x=>{throw new Error("MCP Apps require '@copilotkit/mcp-apps-renderer' and its '@modelcontextprotocol/ext-apps' dependency. Reinstall your dependencies if this package is missing.",{cause:x})});if(!b)return;const y=v.bindMcpApp({iframe:k,getContent:()=>e.content,getAgent:()=>e.agent,host:n.value,messageId:p.value,hooks:{onResource:x=>{b&&(u.value=x,s.value=!1)},onSizeChanged:x=>{b&&(i.value=x)},onContentError:x=>{b&&(r.value=x)},onError:x=>{b&&(a.value=x,s.value=!1)}}});c.value=y,y.syncContent(e.content)}catch(v){console.error("[MCPAppsRenderer] Setup error:",v),b&&(a.value=v instanceof Error?v:new Error(String(v)),s.value=!1)}})()},{immediate:!0,flush:"post"}),t.watch(i,h=>{const d=l.value;d&&(h.width!==void 0&&(d.style.minWidth=`min(${h.width}px, 100%)`,d.style.width="100%"),h.height!==void 0&&(d.style.height=`${h.height}px`))},{deep:!0}),t.watch([()=>e.content.toolInput,()=>e.content.result],()=>{c.value?.syncContent(e.content)},{deep:!0});const g=t.computed(()=>u.value?._meta?.ui?.prefersBorder!==!0?{}:{borderRadius:"8px",backgroundColor:"#f9f9f9",border:"1px solid #e0e0e0"});return()=>t.h("div",{ref:o,style:{width:"100%",height:i.value.height!==void 0?`${i.value.height}px`:"auto",minHeight:"100px",overflow:"hidden",position:"relative",...g.value}},[s.value?t.h("div",{style:{padding:"1rem",color:"#666"}},"Loading..."):null,a.value||r.value?t.h("div",{style:{color:"red",padding:"1rem"}},`Error: ${(a.value??r.value).message}`):null])}}),Mu="a2ui-surface",Nu=he.z.object({operations:he.z.array(he.z.record(he.z.string(),he.z.unknown()))});function bn(e){return e.surfaceId??e.beginRendering?.surfaceId??e.surfaceUpdate?.surfaceId??e.dataModelUpdate?.surfaceId??e.deleteSurface?.surfaceId??e.createSurface?.surfaceId??e.updateComponents?.surfaceId??e.updateDataModel?.surfaceId??"default"}class Or extends ie.CopilotKitCore{_renderToolCalls=[];_hookRenderToolCalls=new Map;_cachedMergedRenderToolCalls=null;_renderCustomMessages=[];_renderActivityMessages=[];_interruptState=null;constructor(n){super(n),this._renderToolCalls=n.renderToolCalls??[],this._renderCustomMessages=n.renderCustomMessages??[],this._renderActivityMessages=n.renderActivityMessages??[]}get renderCustomMessages(){return this._renderCustomMessages}get renderActivityMessages(){return this._renderActivityMessages}setRenderActivityMessages(n){this._renderActivityMessages=[...n]}setRenderCustomMessages(n){this._renderCustomMessages=[...n],this.notifySubscribers(o=>{o.onRenderCustomMessagesChanged?.({copilotkit:this,renderCustomMessages:[...this.renderCustomMessages]})},"Subscriber onRenderCustomMessagesChanged error:")}get propRenderToolCalls(){return this._renderToolCalls}get renderToolCalls(){if(this._hookRenderToolCalls.size===0)return this._renderToolCalls;if(this._cachedMergedRenderToolCalls)return this._cachedMergedRenderToolCalls;const n=new Map;for(const o of this._renderToolCalls)n.set(`${o.agentId??""}:${o.name}`,o);for(const[o,a]of this._hookRenderToolCalls)n.set(o,a);return this._cachedMergedRenderToolCalls=Array.from(n.values()),this._cachedMergedRenderToolCalls}get interruptState(){return this._interruptState}setRenderToolCalls(n){this._renderToolCalls=[...n],this._cachedMergedRenderToolCalls=null,this._notifyRenderToolCallsChanged()}addHookRenderToolCall(n){const o=`${n.agentId??""}:${n.name}`;this._hookRenderToolCalls.set(o,n),this._cachedMergedRenderToolCalls=null,this._notifyRenderToolCallsChanged()}removeHookRenderToolCall(n,o){const a=`${o??""}:${n}`;this._hookRenderToolCalls.delete(a)&&(this._cachedMergedRenderToolCalls=null,this._notifyRenderToolCallsChanged())}_notifyRenderToolCallsChanged(){this.notifySubscribers(n=>{const o=n;o.onRenderToolCallsChanged&&o.onRenderToolCallsChanged({copilotkit:this,renderToolCalls:[...this.renderToolCalls]})},"Subscriber onRenderToolCallsChanged error:")}setInterruptState(n){this._interruptState=n,this.notifySubscribers(o=>{o.onInterruptStateChanged?.({copilotkit:this,interruptState:this._interruptState})},"Subscriber onInterruptStateChanged error:")}subscribe(n){return super.subscribe(n)}async waitForPendingFrameworkUpdates(){await t.nextTick()}}const mo="a2ui_operations",Ou=t.defineComponent({name:"DefaultA2UILoading",setup(){const e=[.8,.6,.4];return()=>t.h("div",{class:"cpk:flex cpk:flex-col cpk:gap-3 cpk:rounded-xl cpk:border cpk:border-gray-100 cpk:bg-gray-50/50 cpk:p-5",style:{minHeight:"120px"},"data-testid":"a2ui-loading"},[t.h("div",{class:"cpk:flex cpk:items-center cpk:gap-2"},[t.h("div",{class:"cpk:h-3 cpk:w-3 cpk:rounded-full cpk:bg-gray-200",style:{animation:"cpk-a2ui-pulse 1.5s ease-in-out infinite"},"data-testid":"a2ui-loading-dot"}),t.h("span",{class:"cpk:text-xs cpk:font-medium cpk:text-gray-400"},"Generating UI...")]),t.h("div",{class:"cpk:flex cpk:flex-col cpk:gap-2"},e.map((n,o)=>t.h("div",{key:o,class:"cpk:h-3 cpk:rounded cpk:bg-gray-200/70",style:{width:`${n*100}%`,animation:`cpk-a2ui-pulse 1.5s ease-in-out ${o*.15}s infinite`},"data-testid":"a2ui-loading-bar"}))),t.h("style",{},`@keyframes cpk-a2ui-pulse {
26
+ })));`),h.write(`newResult[${Ct(m)}] = ${v}.value`)}h.write("payload.value = newResult;"),h.write("return payload;");const k=h.compile();return(m,v)=>k(g,m,v)};let r;const s=Kt,i=!Oo.jitless,c=i&&_s.value,u=n.catchall;let p;e._zod.parse=(g,h)=>{p??(p=o.value);const d=g.value;if(!s(d))return g.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),g;const f=[];if(i&&c&&h?.async===!1&&h.jitless!==!0)r||(r=a(n.shape)),g=r(g,h);else{g.value={};const v=p.shape;for(const y of p.keys){const x=v[y],S=x._zod.run({value:d[y],issues:[]},h),A=x._zod.optin==="optional"&&x._zod.optout==="optional";S instanceof Promise?f.push(S.then(T=>A?Jn(T,g,y,d):Lt(T,g,y))):A?Jn(S,g,y,d):Lt(S,g,y)}}if(!u)return f.length?Promise.all(f).then(()=>g):g;const C=[],b=p.keySet,k=u._zod,m=k.def.type;for(const v of Object.keys(d)){if(b.has(v))continue;if(m==="never"){C.push(v);continue}const y=k.run({value:d[v],issues:[]},h);y instanceof Promise?f.push(y.then(x=>Lt(x,g,v))):Lt(y,g,v)}return C.length&&g.issues.push({code:"unrecognized_keys",keys:C,input:d,inst:e}),f.length?Promise.all(f).then(()=>g):g}});function Xn(e,n,o,a){for(const r of e)if(r.issues.length===0)return n.value=r.value,n;return n.issues.push({code:"invalid_union",input:n.value,inst:o,errors:e.map(r=>r.issues.map(s=>mt(s,a,pt())))}),n}const qo=E("$ZodUnion",(e,n)=>{ye.init(e,n),be(e._zod,"optin",()=>n.options.some(o=>o._zod.optin==="optional")?"optional":void 0),be(e._zod,"optout",()=>n.options.some(o=>o._zod.optout==="optional")?"optional":void 0),be(e._zod,"values",()=>{if(n.options.every(o=>o._zod.values))return new Set(n.options.flatMap(o=>Array.from(o._zod.values)))}),be(e._zod,"pattern",()=>{if(n.options.every(o=>o._zod.pattern)){const o=n.options.map(a=>a._zod.pattern);return new RegExp(`^(${o.map(a=>Tn(a.source)).join("|")})$`)}}),e._zod.parse=(o,a)=>{let r=!1;const s=[];for(const i of n.options){const l=i._zod.run({value:o.value,issues:[]},a);if(l instanceof Promise)s.push(l),r=!0;else{if(l.issues.length===0)return l;s.push(l)}}return r?Promise.all(s).then(i=>Xn(i,o,e,a)):Xn(s,o,e,a)}}),dl=E("$ZodDiscriminatedUnion",(e,n)=>{qo.init(e,n);const o=e._zod.parse;be(e._zod,"propValues",()=>{const r={};for(const s of n.options){const i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${n.options.indexOf(s)}"`);for(const[l,c]of Object.entries(i)){r[l]||(r[l]=new Set);for(const u of c)r[l].add(u)}}return r});const a=wn(()=>{const r=n.options,s=new Map;for(const i of r){const l=i._zod.propValues[n.discriminator];if(!l||l.size===0)throw new Error(`Invalid discriminated union option at index "${n.options.indexOf(i)}"`);for(const c of l){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});e._zod.parse=(r,s)=>{const i=r.value;if(!Kt(i))return r.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),r;const l=a.value.get(i?.[n.discriminator]);return l?l._zod.run(r,s):n.unionFallback?o(r,s):(r.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[n.discriminator],inst:e}),r)}}),pl=E("$ZodIntersection",(e,n)=>{ye.init(e,n),e._zod.parse=(o,a)=>{const r=o.value,s=n.left._zod.run({value:r,issues:[]},a),i=n.right._zod.run({value:r,issues:[]},a);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Yn(o,c,u)):Yn(o,s,i)}});function fn(e,n){if(e===n)return{valid:!0,data:e};if(e instanceof Date&&n instanceof Date&&+e==+n)return{valid:!0,data:e};if(mn(e)&&mn(n)){const o=Object.keys(n),a=Object.keys(e).filter(s=>o.indexOf(s)!==-1),r={...e,...n};for(const s of a){const i=fn(e[s],n[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};r[s]=i.data}return{valid:!0,data:r}}if(Array.isArray(e)&&Array.isArray(n)){if(e.length!==n.length)return{valid:!1,mergeErrorPath:[]};const o=[];for(let a=0;a<e.length;a++){const r=e[a],s=n[a],i=fn(r,s);if(!i.valid)return{valid:!1,mergeErrorPath:[a,...i.mergeErrorPath]};o.push(i.data)}return{valid:!0,data:o}}return{valid:!1,mergeErrorPath:[]}}function Yn(e,n,o){if(n.issues.length&&e.issues.push(...n.issues),o.issues.length&&e.issues.push(...o.issues),Tt(e))return e;const a=fn(n.value,o.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}const ml=E("$ZodEnum",(e,n)=>{ye.init(e,n);const o=Es(n.entries);e._zod.values=new Set(o),e._zod.pattern=new RegExp(`^(${o.filter(a=>$s.has(typeof a)).map(a=>typeof a=="string"?_t(a):a.toString()).join("|")})$`),e._zod.parse=(a,r)=>{const s=a.value;return e._zod.values.has(s)||a.issues.push({code:"invalid_value",values:o,input:s,inst:e}),a}}),fl=E("$ZodLiteral",(e,n)=>{ye.init(e,n),e._zod.values=new Set(n.values),e._zod.pattern=new RegExp(`^(${n.values.map(o=>typeof o=="string"?_t(o):o?o.toString():String(o)).join("|")})$`),e._zod.parse=(o,a)=>{const r=o.value;return e._zod.values.has(r)||o.issues.push({code:"invalid_value",values:n.values,input:r,inst:e}),o}}),hl=E("$ZodTransform",(e,n)=>{ye.init(e,n),e._zod.parse=(o,a)=>{const r=n.transform(o.value,o);if(a.async)return(r instanceof Promise?r:Promise.resolve(r)).then(i=>(o.value=i,o));if(r instanceof Promise)throw new xt;return o.value=r,o}}),gl=E("$ZodOptional",(e,n)=>{ye.init(e,n),e._zod.optin="optional",e._zod.optout="optional",be(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,void 0]):void 0),be(e._zod,"pattern",()=>{const o=n.innerType._zod.pattern;return o?new RegExp(`^(${Tn(o.source)})?$`):void 0}),e._zod.parse=(o,a)=>n.innerType._zod.optin==="optional"?n.innerType._zod.run(o,a):o.value===void 0?o:n.innerType._zod.run(o,a)}),vl=E("$ZodNullable",(e,n)=>{ye.init(e,n),be(e._zod,"optin",()=>n.innerType._zod.optin),be(e._zod,"optout",()=>n.innerType._zod.optout),be(e._zod,"pattern",()=>{const o=n.innerType._zod.pattern;return o?new RegExp(`^(${Tn(o.source)}|null)$`):void 0}),be(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,null]):void 0),e._zod.parse=(o,a)=>o.value===null?o:n.innerType._zod.run(o,a)}),bl=E("$ZodDefault",(e,n)=>{ye.init(e,n),e._zod.optin="optional",be(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(o,a)=>{if(o.value===void 0)return o.value=n.defaultValue,o;const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(s=>Qn(s,n)):Qn(r,n)}});function Qn(e,n){return e.value===void 0&&(e.value=n.defaultValue),e}const kl=E("$ZodPrefault",(e,n)=>{ye.init(e,n),e._zod.optin="optional",be(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(o,a)=>(o.value===void 0&&(o.value=n.defaultValue),n.innerType._zod.run(o,a))}),yl=E("$ZodNonOptional",(e,n)=>{ye.init(e,n),be(e._zod,"values",()=>{const o=n.innerType._zod.values;return o?new Set([...o].filter(a=>a!==void 0)):void 0}),e._zod.parse=(o,a)=>{const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(s=>eo(s,e)):eo(r,e)}});function eo(e,n){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:n}),e}const Sl=E("$ZodCatch",(e,n)=>{ye.init(e,n),e._zod.optin="optional",be(e._zod,"optout",()=>n.innerType._zod.optout),be(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(o,a)=>{const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(s=>(o.value=s.value,s.issues.length&&(o.value=n.catchValue({...o,error:{issues:s.issues.map(i=>mt(i,a,pt()))},input:o.value}),o.issues=[]),o)):(o.value=r.value,r.issues.length&&(o.value=n.catchValue({...o,error:{issues:r.issues.map(s=>mt(s,a,pt()))},input:o.value}),o.issues=[]),o)}}),wl=E("$ZodPipe",(e,n)=>{ye.init(e,n),be(e._zod,"values",()=>n.in._zod.values),be(e._zod,"optin",()=>n.in._zod.optin),be(e._zod,"optout",()=>n.out._zod.optout),e._zod.parse=(o,a)=>{const r=n.in._zod.run(o,a);return r instanceof Promise?r.then(s=>to(s,n,a)):to(r,n,a)}});function to(e,n,o){return Tt(e)?e:n.out._zod.run({value:e.value,issues:e.issues},o)}const Cl=E("$ZodReadonly",(e,n)=>{ye.init(e,n),be(e._zod,"propValues",()=>n.innerType._zod.propValues),be(e._zod,"values",()=>n.innerType._zod.values),be(e._zod,"optin",()=>n.innerType._zod.optin),be(e._zod,"optout",()=>n.innerType._zod.optout),e._zod.parse=(o,a)=>{const r=n.innerType._zod.run(o,a);return r instanceof Promise?r.then(no):no(r)}});function no(e){return e.value=Object.freeze(e.value),e}const Tl=E("$ZodCustom",(e,n)=>{qe.init(e,n),ye.init(e,n),e._zod.parse=(o,a)=>o,e._zod.check=o=>{const a=o.value,r=n.fn(a);if(r instanceof Promise)return r.then(s=>oo(s,o,a,e));oo(r,o,a,e)}});function oo(e,n,o,a){if(!e){const r={code:"custom",input:o,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};a._zod.def.params&&(r.params=a._zod.def.params),n.issues.push(It(r))}}class xl{constructor(){this._map=new Map,this._idmap=new Map}add(n,...o){const a=o[0];if(this._map.set(n,a),a&&typeof a=="object"&&"id"in a){if(this._idmap.has(a.id))throw new Error(`ID ${a.id} already exists in the registry`);this._idmap.set(a.id,n)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(n){const o=this._map.get(n);return o&&typeof o=="object"&&"id"in o&&this._idmap.delete(o.id),this._map.delete(n),this}get(n){const o=n._zod.parent;if(o){const a={...this.get(o)??{}};return delete a.id,{...a,...this._map.get(n)}}return this._map.get(n)}has(n){return this._map.has(n)}}function Il(){return new xl}const Ut=Il();function El(e,n){return new e({type:"string",...J(n)})}function Rl(e,n){return new e({type:"string",format:"email",check:"string_format",abort:!1,...J(n)})}function ao(e,n){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...J(n)})}function Al(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...J(n)})}function _l(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...J(n)})}function $l(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...J(n)})}function Ml(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...J(n)})}function Nl(e,n){return new e({type:"string",format:"url",check:"string_format",abort:!1,...J(n)})}function Ol(e,n){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...J(n)})}function zl(e,n){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...J(n)})}function Bl(e,n){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...J(n)})}function Fl(e,n){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...J(n)})}function Dl(e,n){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...J(n)})}function Vl(e,n){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...J(n)})}function Pl(e,n){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...J(n)})}function Ll(e,n){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...J(n)})}function Ul(e,n){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...J(n)})}function jl(e,n){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...J(n)})}function Zl(e,n){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...J(n)})}function Hl(e,n){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...J(n)})}function Gl(e,n){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...J(n)})}function Wl(e,n){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...J(n)})}function Kl(e,n){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...J(n)})}function ql(e,n){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...J(n)})}function Jl(e,n){return new e({type:"string",format:"date",check:"string_format",...J(n)})}function Xl(e,n){return new e({type:"string",format:"time",check:"string_format",precision:null,...J(n)})}function Yl(e,n){return new e({type:"string",format:"duration",check:"string_format",...J(n)})}function Ql(e,n){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...J(n)})}function ec(e,n){return new e({type:"boolean",...J(n)})}function tc(e){return new e({type:"any"})}function nc(e){return new e({type:"unknown"})}function oc(e,n){return new e({type:"never",...J(n)})}function ro(e,n){return new Ho({check:"less_than",...J(n),value:e,inclusive:!1})}function ln(e,n){return new Ho({check:"less_than",...J(n),value:e,inclusive:!0})}function so(e,n){return new Go({check:"greater_than",...J(n),value:e,inclusive:!1})}function cn(e,n){return new Go({check:"greater_than",...J(n),value:e,inclusive:!0})}function io(e,n){return new ki({check:"multiple_of",...J(n),value:e})}function Jo(e,n){return new Si({check:"max_length",...J(n),maximum:e})}function qt(e,n){return new wi({check:"min_length",...J(n),minimum:e})}function Xo(e,n){return new Ci({check:"length_equals",...J(n),length:e})}function ac(e,n){return new Ti({check:"string_format",format:"regex",...J(n),pattern:e})}function rc(e){return new xi({check:"string_format",format:"lowercase",...J(e)})}function sc(e){return new Ii({check:"string_format",format:"uppercase",...J(e)})}function ic(e,n){return new Ei({check:"string_format",format:"includes",...J(n),includes:e})}function lc(e,n){return new Ri({check:"string_format",format:"starts_with",...J(n),prefix:e})}function cc(e,n){return new Ai({check:"string_format",format:"ends_with",...J(n),suffix:e})}function $t(e){return new _i({check:"overwrite",tx:e})}function uc(e){return $t(n=>n.normalize(e))}function dc(){return $t(e=>e.trim())}function pc(){return $t(e=>e.toLowerCase())}function mc(){return $t(e=>e.toUpperCase())}function fc(e,n,o){return new e({type:"array",element:n,...J(o)})}function hc(e,n,o){const a=J(o);return a.abort??(a.abort=!0),new e({type:"custom",check:"custom",fn:n,...a})}function gc(e,n,o){return new e({type:"custom",check:"custom",fn:n,...J(o)})}const vc=E("ZodISODateTime",(e,n)=>{Zi.init(e,n),Te.init(e,n)});function bc(e){return ql(vc,e)}const kc=E("ZodISODate",(e,n)=>{Hi.init(e,n),Te.init(e,n)});function yc(e){return Jl(kc,e)}const Sc=E("ZodISOTime",(e,n)=>{Gi.init(e,n),Te.init(e,n)});function wc(e){return Xl(Sc,e)}const Cc=E("ZodISODuration",(e,n)=>{Wi.init(e,n),Te.init(e,n)});function Tc(e){return Yl(Cc,e)}const xc=(e,n)=>{Fo.init(e,n),e.name="ZodError",Object.defineProperties(e,{format:{value:o=>Ls(e,o)},flatten:{value:o=>Ps(e,o)},addIssue:{value:o=>e.issues.push(o)},addIssues:{value:o=>e.issues.push(...o)},isEmpty:{get(){return e.issues.length===0}}})},Qt=E("ZodError",xc,{Parent:Error}),Ic=Us(Qt),Ec=js(Qt),Rc=Vo(Qt),Ac=Po(Qt),xe=E("ZodType",(e,n)=>(ye.init(e,n),e.def=n,Object.defineProperty(e,"_def",{value:n}),e.check=(...o)=>e.clone({...n,checks:[...n.checks??[],...o.map(a=>typeof a=="function"?{_zod:{check:a,def:{check:"custom"},onattach:[]}}:a)]}),e.clone=(o,a)=>ft(e,o,a),e.brand=()=>e,e.register=((o,a)=>(o.add(e,a),e)),e.parse=(o,a)=>Ic(e,o,a,{callee:e.parse}),e.safeParse=(o,a)=>Rc(e,o,a),e.parseAsync=async(o,a)=>Ec(e,o,a,{callee:e.parseAsync}),e.safeParseAsync=async(o,a)=>Ac(e,o,a),e.spa=e.safeParseAsync,e.refine=(o,a)=>e.check(Su(o,a)),e.superRefine=o=>e.check(wu(o)),e.overwrite=o=>e.check($t(o)),e.optional=()=>co(e),e.nullable=()=>uo(e),e.nullish=()=>co(uo(e)),e.nonoptional=o=>fu(e,o),e.array=()=>$e(e),e.or=o=>en([e,o]),e.and=o=>ru(e,o),e.transform=o=>po(e,lu(o)),e.default=o=>du(e,o),e.prefault=o=>mu(e,o),e.catch=o=>gu(e,o),e.pipe=o=>po(e,o),e.readonly=()=>ku(e),e.describe=o=>{const a=e.clone();return Ut.add(a,{description:o}),a},Object.defineProperty(e,"description",{get(){return Ut.get(e)?.description},configurable:!0}),e.meta=(...o)=>{if(o.length===0)return Ut.get(e);const a=e.clone();return Ut.add(a,o[0]),a},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Yo=E("_ZodString",(e,n)=>{Rn.init(e,n),xe.init(e,n);const o=e._zod.bag;e.format=o.format??null,e.minLength=o.minimum??null,e.maxLength=o.maximum??null,e.regex=(...a)=>e.check(ac(...a)),e.includes=(...a)=>e.check(ic(...a)),e.startsWith=(...a)=>e.check(lc(...a)),e.endsWith=(...a)=>e.check(cc(...a)),e.min=(...a)=>e.check(qt(...a)),e.max=(...a)=>e.check(Jo(...a)),e.length=(...a)=>e.check(Xo(...a)),e.nonempty=(...a)=>e.check(qt(1,...a)),e.lowercase=a=>e.check(rc(a)),e.uppercase=a=>e.check(sc(a)),e.trim=()=>e.check(dc()),e.normalize=(...a)=>e.check(uc(...a)),e.toLowerCase=()=>e.check(pc()),e.toUpperCase=()=>e.check(mc())}),_c=E("ZodString",(e,n)=>{Rn.init(e,n),Yo.init(e,n),e.email=o=>e.check(Rl($c,o)),e.url=o=>e.check(Nl(Mc,o)),e.jwt=o=>e.check(Kl(Wc,o)),e.emoji=o=>e.check(Ol(Nc,o)),e.guid=o=>e.check(ao(lo,o)),e.uuid=o=>e.check(Al(jt,o)),e.uuidv4=o=>e.check(_l(jt,o)),e.uuidv6=o=>e.check($l(jt,o)),e.uuidv7=o=>e.check(Ml(jt,o)),e.nanoid=o=>e.check(zl(Oc,o)),e.guid=o=>e.check(ao(lo,o)),e.cuid=o=>e.check(Bl(zc,o)),e.cuid2=o=>e.check(Fl(Bc,o)),e.ulid=o=>e.check(Dl(Fc,o)),e.base64=o=>e.check(Hl(Zc,o)),e.base64url=o=>e.check(Gl(Hc,o)),e.xid=o=>e.check(Vl(Dc,o)),e.ksuid=o=>e.check(Pl(Vc,o)),e.ipv4=o=>e.check(Ll(Pc,o)),e.ipv6=o=>e.check(Ul(Lc,o)),e.cidrv4=o=>e.check(jl(Uc,o)),e.cidrv6=o=>e.check(Zl(jc,o)),e.e164=o=>e.check(Wl(Gc,o)),e.datetime=o=>e.check(bc(o)),e.date=o=>e.check(yc(o)),e.time=o=>e.check(wc(o)),e.duration=o=>e.check(Tc(o))});function I(e){return El(_c,e)}const Te=E("ZodStringFormat",(e,n)=>{Se.init(e,n),Yo.init(e,n)}),$c=E("ZodEmail",(e,n)=>{zi.init(e,n),Te.init(e,n)}),lo=E("ZodGUID",(e,n)=>{Ni.init(e,n),Te.init(e,n)}),jt=E("ZodUUID",(e,n)=>{Oi.init(e,n),Te.init(e,n)}),Mc=E("ZodURL",(e,n)=>{Bi.init(e,n),Te.init(e,n)}),Nc=E("ZodEmoji",(e,n)=>{Fi.init(e,n),Te.init(e,n)}),Oc=E("ZodNanoID",(e,n)=>{Di.init(e,n),Te.init(e,n)}),zc=E("ZodCUID",(e,n)=>{Vi.init(e,n),Te.init(e,n)}),Bc=E("ZodCUID2",(e,n)=>{Pi.init(e,n),Te.init(e,n)}),Fc=E("ZodULID",(e,n)=>{Li.init(e,n),Te.init(e,n)}),Dc=E("ZodXID",(e,n)=>{Ui.init(e,n),Te.init(e,n)}),Vc=E("ZodKSUID",(e,n)=>{ji.init(e,n),Te.init(e,n)}),Pc=E("ZodIPv4",(e,n)=>{Ki.init(e,n),Te.init(e,n)}),Lc=E("ZodIPv6",(e,n)=>{qi.init(e,n),Te.init(e,n)}),Uc=E("ZodCIDRv4",(e,n)=>{Ji.init(e,n),Te.init(e,n)}),jc=E("ZodCIDRv6",(e,n)=>{Xi.init(e,n),Te.init(e,n)}),Zc=E("ZodBase64",(e,n)=>{Yi.init(e,n),Te.init(e,n)}),Hc=E("ZodBase64URL",(e,n)=>{el.init(e,n),Te.init(e,n)}),Gc=E("ZodE164",(e,n)=>{tl.init(e,n),Te.init(e,n)}),Wc=E("ZodJWT",(e,n)=>{ol.init(e,n),Te.init(e,n)}),Kc=E("ZodNumber",(e,n)=>{Ko.init(e,n),xe.init(e,n),e.gt=(a,r)=>e.check(so(a,r)),e.gte=(a,r)=>e.check(cn(a,r)),e.min=(a,r)=>e.check(cn(a,r)),e.lt=(a,r)=>e.check(ro(a,r)),e.lte=(a,r)=>e.check(ln(a,r)),e.max=(a,r)=>e.check(ln(a,r)),e.int=a=>e.check(se(a)),e.safe=a=>e.check(se(a)),e.positive=a=>e.check(so(0,a)),e.nonnegative=a=>e.check(cn(0,a)),e.negative=a=>e.check(ro(0,a)),e.nonpositive=a=>e.check(ln(0,a)),e.multipleOf=(a,r)=>e.check(io(a,r)),e.step=(a,r)=>e.check(io(a,r)),e.finite=()=>e;const o=e._zod.bag;e.minValue=Math.max(o.minimum??Number.NEGATIVE_INFINITY,o.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(o.maximum??Number.POSITIVE_INFINITY,o.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(o.format??"").includes("int")||Number.isSafeInteger(o.multipleOf??.5),e.isFinite=!0,e.format=o.format??null}),qc=E("ZodNumberFormat",(e,n)=>{al.init(e,n),Kc.init(e,n)});function se(e){return Ql(qc,e)}const Jc=E("ZodBoolean",(e,n)=>{rl.init(e,n),xe.init(e,n)});function ue(e){return ec(Jc,e)}const Xc=E("ZodAny",(e,n)=>{sl.init(e,n),xe.init(e,n)});function ee(){return tc(Xc)}const Yc=E("ZodUnknown",(e,n)=>{il.init(e,n),xe.init(e,n)});function hn(){return nc(Yc)}const Qc=E("ZodNever",(e,n)=>{ll.init(e,n),xe.init(e,n)});function eu(e){return oc(Qc,e)}const tu=E("ZodArray",(e,n)=>{cl.init(e,n),xe.init(e,n),e.element=n.element,e.min=(o,a)=>e.check(qt(o,a)),e.nonempty=o=>e.check(qt(1,o)),e.max=(o,a)=>e.check(Jo(o,a)),e.length=(o,a)=>e.check(Xo(o,a)),e.unwrap=()=>e.element});function $e(e,n){return fc(tu,e,n)}const nu=E("ZodObject",(e,n)=>{ul.init(e,n),xe.init(e,n),be(e,"shape",()=>n.shape),e.keyof=()=>St(Object.keys(e._zod.def.shape)),e.catchall=o=>e.clone({...e._zod.def,catchall:o}),e.passthrough=()=>e.clone({...e._zod.def,catchall:hn()}),e.loose=()=>e.clone({...e._zod.def,catchall:hn()}),e.strict=()=>e.clone({...e._zod.def,catchall:eu()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=o=>Bs(e,o),e.merge=o=>Fs(e,o),e.pick=o=>Os(e,o),e.omit=o=>zs(e,o),e.partial=(...o)=>Ds(ea,e,o[0]),e.required=(...o)=>Vs(ta,e,o[0])});function P(e,n){return new nu({type:"object",get shape(){return xn(this,"shape",{...e}),this.shape},catchall:hn(),...J(n)})}const Qo=E("ZodUnion",(e,n)=>{qo.init(e,n),xe.init(e,n),e.options=n.options});function en(e,n){return new Qo({type:"union",options:e,...J(n)})}const ou=E("ZodDiscriminatedUnion",(e,n)=>{Qo.init(e,n),dl.init(e,n)});function ht(e,n,o){return new ou({type:"union",options:n,discriminator:e,...J(o)})}const au=E("ZodIntersection",(e,n)=>{pl.init(e,n),xe.init(e,n)});function ru(e,n){return new au({type:"intersection",left:e,right:n})}const gn=E("ZodEnum",(e,n)=>{ml.init(e,n),xe.init(e,n),e.enum=n.entries,e.options=Object.values(n.entries);const o=new Set(Object.keys(n.entries));e.extract=(a,r)=>{const s={};for(const i of a)if(o.has(i))s[i]=n.entries[i];else throw new Error(`Key ${i} not found in enum`);return new gn({...n,checks:[],...J(r),entries:s})},e.exclude=(a,r)=>{const s={...n.entries};for(const i of a)if(o.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new gn({...n,checks:[],...J(r),entries:s})}});function St(e,n){const o=Array.isArray(e)?Object.fromEntries(e.map(a=>[a,a])):e;return new gn({type:"enum",entries:o,...J(n)})}const su=E("ZodLiteral",(e,n)=>{fl.init(e,n),xe.init(e,n),e.values=new Set(n.values),Object.defineProperty(e,"value",{get(){if(n.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return n.values[0]}})});function q(e,n){return new su({type:"literal",values:Array.isArray(e)?e:[e],...J(n)})}const iu=E("ZodTransform",(e,n)=>{hl.init(e,n),xe.init(e,n),e._zod.parse=(o,a)=>{o.addIssue=s=>{if(typeof s=="string")o.issues.push(It(s,o.value,n));else{const i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=o.value),i.inst??(i.inst=e),i.continue??(i.continue=!0),o.issues.push(It(i))}};const r=n.transform(o.value,o);return r instanceof Promise?r.then(s=>(o.value=s,o)):(o.value=r,o)}});function lu(e){return new iu({type:"transform",transform:e})}const ea=E("ZodOptional",(e,n)=>{gl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function co(e){return new ea({type:"optional",innerType:e})}const cu=E("ZodNullable",(e,n)=>{vl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function uo(e){return new cu({type:"nullable",innerType:e})}const uu=E("ZodDefault",(e,n)=>{bl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function du(e,n){return new uu({type:"default",innerType:e,get defaultValue(){return typeof n=="function"?n():n}})}const pu=E("ZodPrefault",(e,n)=>{kl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function mu(e,n){return new pu({type:"prefault",innerType:e,get defaultValue(){return typeof n=="function"?n():n}})}const ta=E("ZodNonOptional",(e,n)=>{yl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType});function fu(e,n){return new ta({type:"nonoptional",innerType:e,...J(n)})}const hu=E("ZodCatch",(e,n)=>{Sl.init(e,n),xe.init(e,n),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function gu(e,n){return new hu({type:"catch",innerType:e,catchValue:typeof n=="function"?n:()=>n})}const vu=E("ZodPipe",(e,n)=>{wl.init(e,n),xe.init(e,n),e.in=n.in,e.out=n.out});function po(e,n){return new vu({type:"pipe",in:e,out:n})}const bu=E("ZodReadonly",(e,n)=>{Cl.init(e,n),xe.init(e,n)});function ku(e){return new bu({type:"readonly",innerType:e})}const na=E("ZodCustom",(e,n)=>{Tl.init(e,n),xe.init(e,n)});function yu(e){const n=new qe({check:"custom"});return n._zod.check=e,n}function Mt(e,n){return hc(na,e??(()=>!0),n)}function Su(e,n={}){return gc(na,e,n)}function wu(e){const n=yu(o=>(o.addIssue=a=>{if(typeof a=="string")o.issues.push(It(a,o.value,n._zod.def));else{const r=a;r.fatal&&(r.continue=!1),r.code??(r.code="custom"),r.input??(r.input=o.value),r.inst??(r.inst=n),r.continue??(r.continue=!n._zod.def.abort),o.issues.push(It(r))}},e(o.value,o)));return n}const oa=St(ge),te=Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),le=I(),An=St(["developer","system","assistant","user"]),aa=P({type:q(ge.TEXT_MESSAGE_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),role:An.optional(),name:I().optional()}),ra=P({type:q(ge.TEXT_MESSAGE_CONTENT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),delta:I()}),sa=P({type:q(ge.TEXT_MESSAGE_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),ia=P({type:q(ge.TEXT_MESSAGE_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I().optional(),role:An.optional(),delta:I().optional(),name:I().optional()}),la=P({type:q(ge.TOOL_CALL_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I(),toolCallName:I(),parentMessageId:I().optional()}),ca=P({type:q(ge.TOOL_CALL_ARGS),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I(),delta:I()}),ua=P({type:q(ge.TOOL_CALL_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I()}),da=P({type:q(ge.TOOL_CALL_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),toolCallId:I().optional(),toolCallName:I().optional(),parentMessageId:I().optional(),delta:I().optional()}),pa=P({type:q("text"),id:I().optional(),text:I(),metadata:ee().refine(e=>e!==null).optional()}),ma=P({type:q("data"),value:I(),mimeType:I()}),fa=P({type:q("url"),value:I(),mimeType:I().optional()}),ha=P({type:q("file"),value:I(),provider:I().optional(),mimeType:I().optional()}),Nt=ht("type",[ma,fa,ha]),ga=P({type:q("image"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),va=P({type:q("audio"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),ba=P({type:q("video"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),ka=P({type:q("document"),id:I().optional(),source:Nt,metadata:ee().refine(e=>e!==null).optional()}),tn=ht("type",[pa,ga,va,ba,ka]),ya=P({type:q(ge.TOOL_CALL_RESULT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),toolCallId:I(),content:en([I(),$e(tn)]),role:q("tool").optional()}),_n=ee(),Sa=P({type:q(ge.STATE_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),snapshot:_n.refine(e=>e!==void 0)}),it=I().regex(new RegExp("^(/([^/~]|~[01])*)*$")),wa=P({op:q("add"),path:it,value:ee().refine(e=>e!==void 0)}).meta({specOpen:!0}),Ca=P({op:q("remove"),path:it}).meta({specOpen:!0}),Ta=P({op:q("replace"),path:it,value:ee().refine(e=>e!==void 0)}).meta({specOpen:!0}),xa=P({op:q("move"),from:it,path:it}).meta({specOpen:!0}),Ia=P({op:q("copy"),from:it,path:it}).meta({specOpen:!0}),Ea=P({op:q("test"),path:it,value:ee().refine(e=>e!==void 0)}).meta({specOpen:!0}),Ra=ht("op",[wa,Ca,Ta,xa,Ia,Ea]),$n=$e(Ra),Aa=P({type:q(ge.STATE_DELTA),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),delta:$n}),_a=P({subagentRunId:le.optional(),id:I(),role:q("developer"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I()}),$a=P({subagentRunId:le.optional(),id:I(),role:q("system"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I()}),Ma=P({name:I(),arguments:I()}),Na=P({id:I(),type:q("function"),function:Ma,encryptedValue:I().optional(),metadata:te.optional()}),Oa=P({subagentRunId:le.optional(),id:I(),role:q("assistant"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I().optional(),toolCalls:$e(Na).optional()}),za=P({subagentRunId:le.optional(),id:I(),role:q("user"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:en([I(),$e(tn)])}),Ba=P({subagentRunId:le.optional(),id:I(),role:q("tool"),content:en([I(),$e(tn)]),toolCallId:I(),error:I().optional(),encryptedValue:I().optional(),metadata:te.optional()}),Fa=P({subagentRunId:le.optional(),id:I(),role:q("activity"),activityType:I(),content:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),metadata:te.optional()}),Da=P({subagentRunId:le.optional(),id:I(),role:q("reasoning"),content:I(),encryptedValue:I().optional(),metadata:te.optional()}),Mn=ht("role",[_a,$a,Oa,za,Ba,Fa,Da]),Va=P({type:q(ge.MESSAGES_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),messages:$e(Mn)}),Pa=P({type:q(ge.ACTIVITY_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),activityType:I(),content:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),replace:ue().optional()}),La=P({type:q(ge.ACTIVITY_DELTA),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),activityType:I(),patch:$n}),Ua=P({type:q(ge.RAW),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),event:ee().refine(e=>e!==void 0),source:I().optional()}),ja=P({type:q(ge.CUSTOM),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),name:I(),value:ee().refine(e=>e!==void 0)}),Nn=P({name:I(),description:I(),parameters:ee().refine(e=>e!==null).optional(),metadata:te.optional()}),Za=P({description:I(),value:I()}),Ha=P({interruptId:I(),status:St(["resolved","cancelled"]),payload:ee().refine(e=>e!==null).optional(),metadata:te.optional()}),Ga=P({threadId:I(),runId:I(),protocolVersion:I().optional(),parentRunId:I().optional(),state:_n.refine(e=>e!==null).nullable().transform(e=>e??void 0).optional(),messages:$e(Mn),tools:$e(Nn).default(()=>[]),context:$e(Za).default(()=>[]),forwardedProps:ee().refine(e=>e!==null).optional(),resume:$e(Ha).optional()}),Wa=P({type:q(ge.RUN_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),threadId:I(),runId:I(),protocolVersion:I().optional(),parentRunId:I().optional(),input:Ga.optional()}),Ka=P({type:q("success"),pendingToolCallIds:$e(I()).optional()}),qa=P({subagentRunId:le.optional(),id:I(),reason:I(),message:I().optional(),toolCallId:I().optional(),responseSchema:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)).optional(),expiresAt:I().optional(),metadata:te.optional()}),Ja=P({type:q("interrupt"),interrupts:$e(qa).min(1)}),Xa=P({type:q("cancelled")}),Ya=ht("type",[Ka,Ja,Xa]),On=P({provider:I().optional(),model:I().optional(),inputTokens:se().min(0).max(9007199254740991).optional(),outputTokens:se().min(0).max(9007199254740991).optional(),totalTokens:se().min(0).max(9007199254740991).optional(),reasoningTokens:se().min(0).max(9007199254740991).optional(),cachedInputTokens:se().min(0).max(9007199254740991).optional(),cacheWriteInputTokens:se().min(0).max(9007199254740991).optional()}),Qa=P({type:q(ge.RUN_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),threadId:I(),runId:I(),result:ee().refine(e=>e!==null).optional(),outcome:Ya.optional(),usage:$e(On).optional()}),er=P({type:q(ge.RUN_ERROR),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),message:I(),code:I().optional(),usage:$e(On).optional()}),tr=P({type:q(ge.STEP_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),stepName:I()}),nr=P({type:q(ge.STEP_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),stepName:I()}),or=P({type:q(ge.REASONING_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),ar=P({type:q(ge.REASONING_MESSAGE_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),role:q("reasoning")}),rr=P({type:q(ge.REASONING_MESSAGE_CONTENT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I(),delta:I()}),sr=P({type:q(ge.REASONING_MESSAGE_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),ir=P({type:q(ge.REASONING_MESSAGE_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I().optional(),delta:I().optional()}),lr=P({type:q(ge.REASONING_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),messageId:I()}),cr=St(["tool-call","message"]),ur=P({type:q(ge.REASONING_ENCRYPTED_VALUE),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le.optional(),subtype:cr,entityId:I(),encryptedValue:I()}),dr=P({type:q(ge.SUBAGENT_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le,name:I(),description:I().optional(),parentSubagentRunId:le.optional(),parentToolCallId:I().optional(),parentMessageId:I().optional()}),pr=P({type:q("success")}),mr=P({type:q("suspended"),interruptIds:$e(I()).optional()}),fr=ht("type",[pr,mr]),hr=P({type:q(ge.SUBAGENT_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le,result:ee().refine(e=>e!==null).optional(),outcome:fr.optional()}),gr=P({type:q(ge.SUBAGENT_ERROR),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:le,message:I(),code:I().optional()}),Cu=ht("type",[aa,ra,sa,ia,la,ca,ua,da,ya,Sa,Aa,Va,Pa,La,Ua,ja,Wa,Qa,er,tr,nr,or,ar,rr,sr,ir,lr,ur,dr,hr,gr]),Tu=St(["developer","system","assistant","user","tool","activity","reasoning"]),vr=P({name:I(),description:I().optional()}),br=P({name:I().optional(),type:I().optional(),description:I().optional(),version:I().optional(),provider:I().optional(),documentationUrl:I().optional(),metadata:te.optional()}),kr=P({streaming:ue().optional(),websocket:ue().optional(),httpBinary:ue().optional(),pushNotifications:ue().optional(),resumable:ue().optional()}),yr=P({supported:ue().optional(),items:$e(Nn).optional(),parallelCalls:ue().optional(),clientProvided:ue().optional()}),Sr=P({structuredOutput:ue().optional(),supportedMimeTypes:$e(I()).optional()}),wr=P({snapshots:ue().optional(),deltas:ue().optional(),memory:ue().optional(),persistentState:ue().optional()}),Cr=P({supported:ue().optional(),delegation:ue().optional(),handoffs:ue().optional(),subagents:$e(vr).optional()}),Tr=P({supported:ue().optional(),streaming:ue().optional(),encrypted:ue().optional()}),xr=P({image:ue().optional(),audio:ue().optional(),video:ue().optional(),pdf:ue().optional(),file:ue().optional()}),Ir=P({image:ue().optional(),audio:ue().optional()}),Er=P({input:xr.optional(),output:Ir.optional()}),Rr=P({codeExecution:ue().optional(),sandboxed:ue().optional(),maxIterations:se().min(0).max(9007199254740991).optional(),maxExecutionTime:se().min(0).max(9007199254740991).optional()}),Ar=P({supported:ue().optional(),approvals:ue().optional(),interventions:ue().optional(),feedback:ue().optional(),interrupts:ue().optional(),approveWithEdits:ue().optional()}),xu=P({identity:br.optional(),transport:kr.optional(),tools:yr.optional(),output:Sr.optional(),state:wr.optional(),multiAgent:Cr.optional(),reasoning:Tr.optional(),multimodal:Er.optional(),execution:Rr.optional(),humanInTheLoop:Ar.optional(),custom:Mt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)).optional()}),Iu=P({subagentRunId:le.optional()}),Eu=P({type:oa,timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:ee().refine(e=>e!==null).optional(),metadata:te.optional()}),Ru=P({subagentRunId:le.optional(),id:I(),role:I(),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional()}),Au=te.optional(),_u="1.77.2",_r=t.defineComponent({inheritAttrs:!1,__name:"CopilotKitInspector",props:{core:{},openRequest:{}},setup(e){const n=e,o=t.useAttrs(),a=t.shallowRef(null),r=t.shallowRef(null);let s=!0,i=null;const l={created(c){i?.(c,n.core??null),r.value=c,n.openRequest&&c.openInspector?.("message_toolbar",n.openRequest)}};return t.onMounted(()=>{import("@copilotkit/web-inspector").then(c=>{s&&(c.defineWebInspector?.(),i=(u,p)=>c.configureWebInspectorElement(u,p,{development:process.env.NODE_ENV==="development",framework:"vue",sdkVersion:_u}),a.value=c.WEB_INSPECTOR_TAG)}).catch(c=>{console.error("Failed to load CopilotKit inspector:",c)})}),t.onUnmounted(()=>{s=!1,r.value=null}),t.watch(()=>n.core,c=>{r.value&&(r.value.core=c??null)}),t.watch(()=>n.openRequest,c=>{c&&r.value?.openInspector?.("message_toolbar",c)}),(c,u)=>a.value?t.withDirectives((t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.value),t.normalizeProps(t.mergeProps({key:0},t.unref(o))),null,16)),[[l]]):t.createCommentVNode("",!0)}}),$r=Symbol("CopilotKit"),vn=Symbol("CopilotChatConfiguration"),Mr=Symbol("SandboxFunctions"),$u=Symbol("CopilotKitInspector");function Ve(){const e=t.inject($r);if(!e)throw new Error("useCopilotKit must be used within CopilotKitProvider");return e}const Nr=t.defineComponent({name:"MCPAppsActivityRenderer",props:{activityType:{type:String,required:!0},content:{type:Object,required:!0},message:{type:Object,required:!0},agent:{type:Object,required:!1,default:void 0}},setup(e){const{copilotkit:n}=Ve(),o=t.ref(null),a=t.ref(null),r=t.ref(null),s=t.ref(!0),i=t.ref({}),l=t.shallowRef(null),c=t.shallowRef(null),u=t.shallowRef(null),p=t.computed(()=>e.message?.id);t.watch([o,()=>e.agent,()=>n.value,p,()=>e.content.resourceUri,()=>e.content.serverHash,()=>e.content.serverId],([h,d],f,C)=>{if(!d){a.value=new Error("No agent available to fetch resource"),s.value=!1;return}if(!h)return;let b=!0;s.value=!0,a.value=null,r.value=null,i.value={},u.value=null;const k=document.createElement("iframe");k.style.width="100%",k.style.height="100px",k.style.border="none",k.style.backgroundColor="transparent",k.style.display="block",h.appendChild(k),l.value=k,C(()=>{b=!1,c.value?.teardown(),c.value=null,k.remove(),l.value===k&&(l.value=null)}),(async()=>{try{const v=await import("@copilotkit/mcp-apps-renderer").catch(x=>{throw new Error("MCP Apps require '@copilotkit/mcp-apps-renderer' and its '@modelcontextprotocol/ext-apps' dependency. Reinstall your dependencies if this package is missing.",{cause:x})});if(!b)return;const y=v.bindMcpApp({iframe:k,getContent:()=>e.content,getAgent:()=>e.agent,host:n.value,messageId:p.value,hooks:{onResource:x=>{b&&(u.value=x,s.value=!1)},onSizeChanged:x=>{b&&(i.value=x)},onContentError:x=>{b&&(r.value=x)},onError:x=>{b&&(a.value=x,s.value=!1)}}});c.value=y,y.syncContent(e.content)}catch(v){console.error("[MCPAppsRenderer] Setup error:",v),b&&(a.value=v instanceof Error?v:new Error(String(v)),s.value=!1)}})()},{immediate:!0,flush:"post"}),t.watch(i,h=>{const d=l.value;d&&(h.width!==void 0&&(d.style.minWidth=`min(${h.width}px, 100%)`,d.style.width="100%"),h.height!==void 0&&(d.style.height=`${h.height}px`))},{deep:!0}),t.watch([()=>e.content.toolInput,()=>e.content.result],()=>{c.value?.syncContent(e.content)},{deep:!0});const g=t.computed(()=>u.value?._meta?.ui?.prefersBorder!==!0?{}:{borderRadius:"8px",backgroundColor:"#f9f9f9",border:"1px solid #e0e0e0"});return()=>t.h("div",{ref:o,style:{width:"100%",height:i.value.height!==void 0?`${i.value.height}px`:"auto",minHeight:"100px",overflow:"hidden",position:"relative",...g.value}},[s.value?t.h("div",{style:{padding:"1rem",color:"#666"}},"Loading..."):null,a.value||r.value?t.h("div",{style:{color:"red",padding:"1rem"}},`Error: ${(a.value??r.value).message}`):null])}}),Mu="a2ui-surface",Nu=he.z.object({operations:he.z.array(he.z.record(he.z.string(),he.z.unknown()))});function bn(e){return e.surfaceId??e.beginRendering?.surfaceId??e.surfaceUpdate?.surfaceId??e.dataModelUpdate?.surfaceId??e.deleteSurface?.surfaceId??e.createSurface?.surfaceId??e.updateComponents?.surfaceId??e.updateDataModel?.surfaceId??"default"}class Or extends ie.CopilotKitCore{_renderToolCalls=[];_hookRenderToolCalls=new Map;_cachedMergedRenderToolCalls=null;_renderCustomMessages=[];_renderActivityMessages=[];_interruptState=null;constructor(n){super(n),this._renderToolCalls=n.renderToolCalls??[],this._renderCustomMessages=n.renderCustomMessages??[],this._renderActivityMessages=n.renderActivityMessages??[]}get renderCustomMessages(){return this._renderCustomMessages}get renderActivityMessages(){return this._renderActivityMessages}setRenderActivityMessages(n){this._renderActivityMessages=[...n]}setRenderCustomMessages(n){this._renderCustomMessages=[...n],this.notifySubscribers(o=>{o.onRenderCustomMessagesChanged?.({copilotkit:this,renderCustomMessages:[...this.renderCustomMessages]})},"Subscriber onRenderCustomMessagesChanged error:")}get propRenderToolCalls(){return this._renderToolCalls}get renderToolCalls(){if(this._hookRenderToolCalls.size===0)return this._renderToolCalls;if(this._cachedMergedRenderToolCalls)return this._cachedMergedRenderToolCalls;const n=new Map;for(const o of this._renderToolCalls)n.set(`${o.agentId??""}:${o.name}`,o);for(const[o,a]of this._hookRenderToolCalls)n.set(o,a);return this._cachedMergedRenderToolCalls=Array.from(n.values()),this._cachedMergedRenderToolCalls}get interruptState(){return this._interruptState}setRenderToolCalls(n){this._renderToolCalls=[...n],this._cachedMergedRenderToolCalls=null,this._notifyRenderToolCallsChanged()}addHookRenderToolCall(n){const o=`${n.agentId??""}:${n.name}`;this._hookRenderToolCalls.set(o,n),this._cachedMergedRenderToolCalls=null,this._notifyRenderToolCallsChanged()}removeHookRenderToolCall(n,o){const a=`${o??""}:${n}`;this._hookRenderToolCalls.delete(a)&&(this._cachedMergedRenderToolCalls=null,this._notifyRenderToolCallsChanged())}_notifyRenderToolCallsChanged(){this.notifySubscribers(n=>{const o=n;o.onRenderToolCallsChanged&&o.onRenderToolCallsChanged({copilotkit:this,renderToolCalls:[...this.renderToolCalls]})},"Subscriber onRenderToolCallsChanged error:")}setInterruptState(n){this._interruptState=n,this.notifySubscribers(o=>{o.onInterruptStateChanged?.({copilotkit:this,interruptState:this._interruptState})},"Subscriber onInterruptStateChanged error:")}subscribe(n){return super.subscribe(n)}async waitForPendingFrameworkUpdates(){await t.nextTick()}}const mo="a2ui_operations",Ou=t.defineComponent({name:"DefaultA2UILoading",setup(){const e=[.8,.6,.4];return()=>t.h("div",{class:"cpk:flex cpk:flex-col cpk:gap-3 cpk:rounded-xl cpk:border cpk:border-gray-100 cpk:bg-gray-50/50 cpk:p-5",style:{minHeight:"120px"},"data-testid":"a2ui-loading"},[t.h("div",{class:"cpk:flex cpk:items-center cpk:gap-2"},[t.h("div",{class:"cpk:h-3 cpk:w-3 cpk:rounded-full cpk:bg-gray-200",style:{animation:"cpk-a2ui-pulse 1.5s ease-in-out infinite"},"data-testid":"a2ui-loading-dot"}),t.h("span",{class:"cpk:text-xs cpk:font-medium cpk:text-gray-400"},"Generating UI...")]),t.h("div",{class:"cpk:flex cpk:flex-col cpk:gap-2"},e.map((n,o)=>t.h("div",{key:o,class:"cpk:h-3 cpk:rounded cpk:bg-gray-200/70",style:{width:`${n*100}%`,animation:`cpk-a2ui-pulse 1.5s ease-in-out ${o*.15}s infinite`},"data-testid":"a2ui-loading-bar"}))),t.h("style",{},`@keyframes cpk-a2ui-pulse {
27
27
  0%, 100% { opacity: 0.4; }
28
28
  50% { opacity: 1; }
29
29
  }`)])}});function zr(e){return{activityType:"a2ui-surface",content:he.z.any(),render:t.defineComponent({name:"A2UIMessageRendererHost",props:{activityType:{type:String,required:!0},content:{type:Object,required:!0},message:{type:Object,required:!0},agent:{type:Object,required:!1,default:void 0}},setup(n){const o=t.computed(()=>Array.isArray(n.content?.[mo])?n.content[mo]:[]);return()=>o.value.length===0?e.loadingComponent?t.h(e.loadingComponent):t.h(Ou):t.h(Jr,{activityType:"a2ui-surface",content:{operations:o.value},message:n.message,agent:n.agent,theme:e.theme,catalog:e.catalog})}})}}function Jt(e){const n=e.name==="*"&&!e.args?he.z.any():e.args;return{name:e.name,args:n,render:e.render,...e.agentId?{agentId:e.agentId}:{}}}const un="render_a2ui";function zu(e,n){t.watch([()=>e.value,n],([o,a],r,s)=>{if(!a)return;const i=Jt({name:un,args:he.z.any(),render:({status:c,args:u})=>{if(c==="complete")return null;const p=u,g=p?.items;if(Array.isArray(g)&&g.length>0)return null;const h=p?.components;return Array.isArray(h)&&h.length>2?null:Bu(u)}}),l=o.propRenderToolCalls;o.setRenderToolCalls([...l.filter(c=>c.name!==un),i]),s(()=>{const c=o.propRenderToolCalls;o.setRenderToolCalls(c.filter(u=>u.name!==un)),kn.clear()})},{immediate:!0})}const kn=new Map;function Bu(e){const n=e,o=typeof n?.name=="string"?n.name:"__default__";let a=kn.get(o);a||(a={lastTime:0,lastTokens:0},kn.set(o,a));const r=Date.now();let s=a.lastTokens;if(r-a.lastTime>200){const g=JSON.stringify(e??{}).length;s=Math.round(g/4),a.lastTime=r,a.lastTokens=s}const i=s<50?0:s<200?1:s<400?2:3,l=()=>t.h("div",{style:{width:"7px",height:"7px",borderRadius:"50%",backgroundColor:"#d4d4d8",flexShrink:0}}),c=()=>t.h("div",{style:{width:"12px"}}),u=(g,h,d,f,C,b)=>t.h("div",{style:{width:`${g}px`,height:`${h}px`,borderRadius:"9999px",backgroundColor:d,...f!==void 0?{animation:`cpk-a2ui-fade 2.4s ease-in-out ${f}s infinite`}:{},...C!==void 0?{opacity:C}:{},...b?{transition:b}:{}}}),p=(g,h,d)=>t.h("div",{style:{display:"flex",alignItems:"center",gap:"6px",opacity:g?1:0,transition:`opacity 0.4s ${h}s`}},d);return t.h("div",{style:{margin:"12px 0",maxWidth:"320px"}},[t.h("div",{style:{position:"relative",overflow:"hidden",borderRadius:"12px",border:"1px solid rgba(228,228,231,0.8)",backgroundColor:"#fff",boxShadow:"0 1px 2px rgba(0,0,0,0.04)",padding:"16px 18px 14px"}},[t.h("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginBottom:"12px"}},[t.h("div",{style:{display:"flex",gap:"4px"}},[l(),l(),l()]),u(64,6,"#e4e4e7",void 0,i>=1?1:.4,"opacity 0.5s")]),t.h("div",{style:{display:"grid",gap:"7px"}},[p(i>=0,0,[u(36,7,"rgba(147,197,253,0.7)",0),u(80,7,"rgba(219,234,254,0.8)",.2)]),p(i>=0,.1,[c(),l(),u(100,7,"rgba(24,24,27,0.2)",.3)]),p(i>=1,.15,[c(),u(48,7,"rgba(24,24,27,0.15)",.1),u(40,7,"rgba(153,246,228,0.6)",.5),u(56,7,"rgba(147,197,253,0.6)",.3)]),p(i>=1,.2,[c(),l(),u(60,7,"rgba(24,24,27,0.15)",.4)]),p(i>=2,.25,[u(40,7,"rgba(153,246,228,0.5)",.2),l(),u(48,7,"rgba(24,24,27,0.15)",.6),u(64,7,"rgba(147,197,253,0.5)",.1)]),p(i>=2,.3,[u(36,7,"rgba(147,197,253,0.6)",.5),u(36,7,"rgba(24,24,27,0.12)",.7)]),p(i>=3,.35,[l(),u(44,7,"rgba(24,24,27,0.18)",.3),l(),u(56,7,"rgba(153,246,228,0.5)",.8),u(48,7,"rgba(147,197,253,0.5)",.4)])]),t.h("div",{style:{pointerEvents:"none",position:"absolute",inset:"0",background:"linear-gradient(105deg, transparent 0%, transparent 40%, rgba(255,255,255,0.6) 50%, transparent 60%, transparent 100%)",backgroundSize:"250% 100%",animation:"cpk-a2ui-sweep 3s ease-in-out infinite"}})]),t.h("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",marginTop:"8px"}},[t.h("span",{style:{fontSize:"12px",color:"#a1a1aa",letterSpacing:"0.025em"}},"Building interface"),...s>0?[t.h("span",{style:{fontSize:"11px",color:"#d4d4d8",fontVariantNumeric:"tabular-nums"}},`~${s.toLocaleString()} tokens`)]:[]]),t.h("style",`
@@ -48,32 +48,23 @@
48
48
  - Buttons: solid fill for primary (dark bg, white text), outline for secondary (border + transparent bg). Subtle hover state (slight opacity or background shift).
49
49
  - Use CSS Grid or Flexbox for layout. Ensure the UI looks good at any width.
50
50
  - Minimal transitions (150ms) for hover/focus states only. No decorative animations.
51
- - Keep the UI focused and dense — avoid excessive padding. Use compact spacing (8–12px gaps, 10–14px padding in controls).`,wd=`Generate sandboxed UI. IMPORTANT: The generated code runs in a sandboxed iframe WITHOUT same-origin access. Do NOT use localStorage, sessionStorage, document.cookie, IndexedDB, or fetch/XMLHttpRequest to same-origin URLs. To communicate with the host application, use Websandbox.connection.remote.<functionName>(args) which returns a Promise.
52
-
53
- You CAN use external libraries from CDNs by including <script> or <link> tags in the HTML <head> (e.g., Chart.js, D3, Three.js, x-data-spreadsheet, etc.). CDN resources load normally inside the sandbox.
54
-
55
- PARAMETER ORDER IS CRITICAL — generate parameters in exactly this order:
56
- 1. initialHeight + placeholderMessages (shown to user while generating)
57
- 2. css (all styles FIRST — the user sees a placeholder until CSS is complete)
58
- 3. html (streams in live — the user watches the UI build as HTML is generated)
59
- 4. jsFunctions (reusable helper functions)
60
- 5. jsExpressions (applied one-by-one — the user sees each expression take effect)`,Cd=t.defineComponent({__name:"CopilotKitProvider",props:{runtimeUrl:{},headers:{type:[Object,Function],default:()=>({})},credentials:{},messageFilter:{},defaultThrottleMs:{},publicApiKey:{},publicLicenseKey:{},licenseToken:{},properties:{default:()=>({})},useSingleEndpoint:{type:Boolean,default:void 0},agents__unsafe_dev_only:{default:()=>({})},selfManagedAgents:{default:()=>({})},renderToolCalls:{},renderActivityMessages:{default:()=>[]},renderCustomMessages:{default:()=>[]},frontendTools:{default:()=>[]},humanInTheLoop:{default:()=>[]},openGenerativeUI:{default:void 0},showDevConsole:{type:[Boolean,String]},enableInspector:{type:Boolean,default:void 0},onError:{},a2ui:{default:void 0},debug:{type:[Boolean,Object]}},setup(e){const n={},o=e,a=t.ref(!1);function r(){a.value=G.shouldEnableInspector({enableInspector:o.enableInspector,isBrowser:!0,isDevelopment:process.env.NODE_ENV==="development"})}t.onMounted(r),t.watch(()=>o.enableInspector,r);const s=t.ref(null),i=t.computed(()=>a.value);function l(L){s.value={...L}}t.provide($u,{isInspectorEnabled:i,openInspector:l});const c=o.frontendTools,u=o.humanInTheLoop,p=o.renderCustomMessages,g=o.renderActivityMessages,h=o.openGenerativeUI?.sandboxFunctions;t.watch(()=>o.frontendTools,L=>{L!==c&&console.error(gd)}),t.watch(()=>o.humanInTheLoop,L=>{L!==u&&console.error(vd)}),t.watch(()=>o.renderCustomMessages,L=>{L!==p&&console.error(bd)}),t.watch(()=>o.renderActivityMessages,L=>{L!==g&&console.error(kd)}),t.watch(()=>o.openGenerativeUI?.sandboxFunctions,L=>{L!==h&&console.error(yd)});const d=t.computed(()=>o.publicApiKey??o.publicLicenseKey),f=t.computed(()=>({...o.agents__unsafe_dev_only,...o.selfManagedAgents})),C=t.computed(()=>Object.keys(f.value).length>0),b=t.computed(()=>typeof o.headers=="function"?o.headers():o.headers),k=t.computed(()=>{const L=b.value;return!d.value||L[go]?L:{...L,[go]:d.value}}),m=t.computed(()=>o.runtimeUrl??(d.value?hd:void 0));t.watch([m,d,C],([L,fe,pe])=>{if(L||fe||pe)return;const Ue="Missing required prop: 'runtimeUrl' or 'publicApiKey' or 'publicLicenseKey'";if(process.env.NODE_ENV==="production")throw new Error(Ue);console.warn(Ue)},{immediate:!0});const v=new Map,y=L=>{const fe=v.get(L);if(fe)return fe.detachAbort?.(),v.delete(L),fe},x=t.computed(()=>{const L=[],fe=[];for(const pe of o.humanInTheLoop)if(L.push({type:"human-in-the-loop",name:pe.name,description:pe.description,parameters:pe.parameters,followUp:pe.followUp,...pe.agentId&&{agentId:pe.agentId},handler:async(Ue,Ze)=>{const we=Ze?.signal,Oe=Ze?.toolCall?.id??pe.name;return new Promise((je,Be)=>{if(we?.aborted){Be(new Error(vo));return}const at={resolve:je};if(v.set(Oe,at),we){const st=()=>{v.delete(Oe),Be(new Error(vo))};we.addEventListener("abort",st,{once:!0}),at.detachAbort=()=>{we.removeEventListener("abort",st)}}})}}),pe.render){const Ue=pe.render,Ze=we=>{const Oe=we.toolCallId??pe.name;return t.h(Ue,{...we,name:pe.name==="*"?we.name:pe.name,description:pe.description||"",agentId:pe.agentId,respond:we.status===ie.ToolCallStatus.Executing?async je=>{y(Oe)?.resolve(je)}:void 0})};fe.push({name:pe.name,args:pe.parameters??he.z.any(),render:Ze,...pe.agentId&&{agentId:pe.agentId}})}return{tools:L,renderToolCalls:fe}}),S=t.computed(()=>{const L=[];for(const fe of o.frontendTools)L.push(fe);for(const fe of $.value)L.push(fe);return L.push(...x.value.tools),L}),A=t.computed(()=>{const L=[...o.renderToolCalls??[]];for(const fe of[...o.frontendTools,...$.value])if(fe.render){const pe=fe.parameters??(fe.name==="*"?he.z.any():void 0);pe&&L.push({name:fe.name,args:pe,render:fe.render})}return L.push(...x.value.renderToolCalls),L}),T=t.computed(()=>o.renderCustomMessages??[]),O=t.ref(!1),N=t.ref(!1),z=t.ref(void 0),F=t.ref(void 0),Z=t.ref(!1),_=t.computed(()=>N.value||!!o.openGenerativeUI),R=t.computed(()=>!!o.a2ui?.catalog),U=t.computed(()=>O.value||R.value),M=t.computed(()=>R.value?{...o.properties,a2uiCatalogAvailable:!0}:o.properties),D=t.computed(()=>o.openGenerativeUI?.sandboxFunctions??[]),ae=(L,fe)=>Sn.zodToJsonSchema(L,fe),$=t.computed(()=>_.value?[{name:"generateSandboxedUi",description:wd,parameters:Ur,handler:async()=>"UI generated",followUp:!0,render:Hr}]:[]),Y=t.computed(()=>{const L=[{activityType:Wn.MCPAppsActivityType,content:Wn.MCPAppsActivityContentSchema,render:Nr}];return _.value&&L.push({activityType:Pr,content:Lr,render:Zr}),U.value&&L.unshift(zr({theme:o.a2ui?.theme??n,catalog:o.a2ui?.catalog,loadingComponent:o.a2ui?.loadingComponent})),L}),H=t.computed(()=>[...o.renderActivityMessages??[],...Y.value]),Q=L=>{o.defaultThrottleMs!==void 0&&(!Number.isFinite(o.defaultThrottleMs)||o.defaultThrottleMs<0)&&console.error(`CopilotKitProvider: defaultThrottleMs must be a non-negative finite number, got ${o.defaultThrottleMs}. useAgent hooks without an explicit throttleMs will fall back to unthrottled.`),L.setDefaultThrottleMs(o.defaultThrottleMs)},ce=()=>{const L=new Or({runtimeUrl:m.value,runtimeTransport:o.useSingleEndpoint===!0?"single":o.useSingleEndpoint===!1?"rest":"auto",headers:k.value,credentials:o.credentials,messageFilter:o.messageFilter,properties:M.value,agents__unsafe_dev_only:f.value,tools:S.value,renderToolCalls:A.value,renderActivityMessages:H.value,renderCustomMessages:T.value,debug:o.debug});return Q(L),L},X=t.shallowRef(ce()),ve=t.ref(!1),Ae=t.ref(new Set);t.watch(X,(L,fe,pe)=>{const Ue=L.subscribe({onToolExecutionStart:({toolCallId:Be})=>{Ae.value=new Set(Ae.value).add(Be)},onToolExecutionEnd:({toolCallId:Be})=>{setTimeout(()=>{const at=new Set(Ae.value);at.delete(Be),Ae.value=at,t.triggerRef(X)},0)}}),Ze=L.subscribe({onRenderToolCallsChanged:()=>{t.triggerRef(X)}}),we=L.subscribe({onRenderCustomMessagesChanged:()=>{t.triggerRef(X)}}),Oe=L.subscribe({onRuntimeConnectionStatusChanged:()=>{O.value=L.a2uiEnabled,N.value=L.openGenerativeUIEnabled,z.value=L.licenseStatus,F.value=L.runtimeEntitlements,Z.value=L.runtimeEntitlementRetryPending,t.triggerRef(X)}}),je=L.subscribe({onError:Be=>{o.onError?.({error:Be.error,code:Be.code,context:Be.context})}});pe(()=>{Ue.unsubscribe(),Ze.unsubscribe(),we.unsubscribe(),Oe.unsubscribe(),je.unsubscribe()})},{immediate:!0}),t.watch([S],([L])=>{ve.value&&X.value.setTools(L)}),t.watch([A],([L])=>{ve.value&&X.value.setRenderToolCalls(L)}),t.watch([T],([L])=>{ve.value&&(X.value.setRenderCustomMessages(L),t.triggerRef(X))}),t.watch([H],([L])=>{ve.value&&(X.value.setRenderActivityMessages(L),t.triggerRef(X))});function Ne(){X.value.setRuntimeUrl(m.value),X.value.setRuntimeTransport(o.useSingleEndpoint===!0?"single":o.useSingleEndpoint===!1?"rest":"auto"),X.value.setHeaders(k.value),X.value.setCredentials(o.credentials),X.value.setMessageFilter(o.messageFilter),X.value.setProperties(M.value),X.value.setAgents__unsafe_dev_only(f.value),X.value.setDebug(o.debug),Q(X.value)}t.watch([()=>m.value,()=>k.value,()=>o.credentials,()=>o.messageFilter,()=>M.value,()=>f.value,()=>o.useSingleEndpoint,()=>o.debug],()=>{ve.value&&Ne()}),t.watch(()=>o.defaultThrottleMs,()=>{ve.value&&(Q(X.value),t.triggerRef(X))}),t.onMounted(()=>{Ne(),O.value=X.value.a2uiEnabled,N.value=X.value.openGenerativeUIEnabled,z.value=X.value.licenseStatus,F.value=X.value.runtimeEntitlements,Z.value=X.value.runtimeEntitlementRetryPending,ve.value=!0});const Ye=t.computed(()=>o.a2ui?.theme),Qe=t.computed(()=>o.a2ui?.catalog),Pe=t.computed(()=>o.a2ui?.loadingComponent),et=t.computed(()=>o.a2ui?.includeSchema??!0);zu(X,()=>U.value),ld(X,{enabled:()=>U.value,catalog:()=>o.a2ui?.catalog,includeSchema:()=>o.a2ui?.includeSchema??!0});const Je=t.ref([]);t.watch([_,D,()=>o.openGenerativeUI?.designSkill],([L,fe,pe],Ue,Ze)=>{if(!L)return;const we=[];if(we.push(X.value.addContext({description:"Design guidelines for the generateSandboxedUi tool. Follow these when building UI.",value:pe??Sd})),fe.length>0){const Oe=JSON.stringify(fe.map(je=>({name:je.name,description:je.description,parameters:G.schemaToJsonSchema(je.parameters,{zodToJsonSchema:ae})})));we.push(X.value.addContext({description:"Sandbox functions available in generated sandboxed UI code. Call via Websandbox.connection.remote.<functionName>(args).",value:Oe}))}Je.value=we,Ze(()=>{for(const Oe of we)X.value.removeContext(Oe)})},{immediate:!0}),t.provide($r,{copilotkit:X,executingToolCallIds:Ae,a2uiTheme:Ye,a2uiCatalog:Qe,a2uiLoadingComponent:Pe,a2uiIncludeSchema:et}),t.provide(Mr,D);const Le=t.computed(()=>F.value?.status!=="ready"&&F.value?.error.retryable===!0),ke=t.computed(()=>F.value!==void 0&&F.value.status!=="ready"),V=t.computed(()=>z.value==="valid"||z.value==="expiring"),re=t.computed(()=>Le.value&&Z.value&&!V.value),Ie=t.computed(()=>ke.value&&!re.value&&!V.value),Xe=t.computed(()=>{const L=G.createLicenseContextValue(re.value?void 0:z.value,F.value);return Ie.value?{...L,checkFeature:()=>!1,getLimit:()=>null}:L});t.provide(Fn,Xe);const Ee=t.computed(()=>re.value?void 0:Xe.value.status??void 0),lt=t.computed(()=>Ee.value==="none"&&!d.value),ct=t.computed(()=>Ee.value==="expired"),ut=t.computed(()=>Ee.value==="invalid"),gt=t.computed(()=>Ee.value==="expiring");return(L,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.renderSlot(L.$slots,"default"),a.value?(t.openBlock(),t.createBlock(_r,{key:0,core:X.value,"open-request":s.value},null,8,["core","open-request"])):t.createCommentVNode("",!0),lt.value?(t.openBlock(),t.createBlock(Zt,{key:1,type:"no_license"})):t.createCommentVNode("",!0),ct.value?(t.openBlock(),t.createBlock(Zt,{key:2,type:"expired"})):t.createCommentVNode("",!0),ut.value?(t.openBlock(),t.createBlock(Zt,{key:3,type:"invalid"})):t.createCommentVNode("",!0),gt.value?(t.openBlock(),t.createBlock(Zt,{key:4,type:"expiring"})):t.createCommentVNode("",!0)],64))}}),ot={chatInputPlaceholder:"Type a message...",chatInputToolbarStartTranscribeButtonLabel:"Transcribe",chatInputToolbarCancelTranscribeButtonLabel:"Cancel",chatInputToolbarFinishTranscribeButtonLabel:"Finish",chatInputToolbarAddButtonLabel:"Add photos or files",chatInputToolbarToolsButtonLabel:"Tools",assistantMessageToolbarCopyCodeLabel:"Copy",assistantMessageToolbarCopyCodeCopiedLabel:"Copied",assistantMessageToolbarCopyMessageLabel:"Copy",assistantMessageToolbarThumbsUpLabel:"Good response",assistantMessageToolbarThumbsDownLabel:"Bad response",assistantMessageToolbarReadAloudLabel:"Read aloud",assistantMessageToolbarRegenerateLabel:"Regenerate",userMessageToolbarCopyMessageLabel:"Copy",userMessageToolbarEditMessageLabel:"Edit",chatDisclaimerText:"AI can make mistakes. Please verify important information.",chatToggleOpenLabel:"Open chat",chatToggleCloseLabel:"Close chat",modalHeaderTitle:"CopilotKit Chat",welcomeMessageText:"How can I help you today?"};function Td(e,n){const o=Object.keys(e),a=Object.keys(n);if(o.length!==a.length)return!1;for(const r of o)if(e[r]!==n[r])return!1;return!0}function bo(e){return e!==null&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"}function Wr(e){const n=t.shallowRef(t.toValue(e));return t.watch(()=>t.toValue(e),o=>{const a=n.value;a!==o&&(bo(a)&&bo(o)&&Td(a,o)||(n.value=o))},{immediate:!0}),n}const Kr="(max-width: 767px)";function ko(){return typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia(Kr).matches}const an=t.defineComponent({__name:"CopilotChatConfigurationProvider",props:{labels:{},agentId:{},threadId:{},hasExplicitThreadId:{type:Boolean,default:void 0},isModalDefaultOpen:{type:Boolean,default:void 0}},setup(e){const n=e,o=t.inject(vn,null),a=t.computed(()=>o?.value??null),r=t.computed(()=>n.threadId!==void 0&&n.hasExplicitThreadId!==!1),s=t.ref(null),i=Wr(t.computed(()=>n.labels)),l=t.computed(()=>({...ot,...a.value?.labels,...i.value})),c=t.computed(()=>n.agentId??a.value?.agentId??G.DEFAULT_AGENT_ID),u=G.randomUUID(),p=t.computed(()=>r.value?n.threadId:s.value?s.value.threadId:n.threadId?n.threadId:a.value?.threadId?a.value.threadId:u),g=t.computed(()=>r.value?!0:(s.value?s.value.explicit:n.hasExplicitThreadId!==void 0?n.hasExplicitThreadId:!!n.threadId)||!!a.value?.hasExplicitThreadId),h=t.computed(()=>n.isModalDefaultOpen!==void 0),d=t.computed(()=>n.isModalDefaultOpen??!0),f=t.ref(a.value?.isModalOpen??d.value);function C(_){f.value=_}const b=t.computed(()=>h.value?f.value:a.value?.isModalOpen),k=t.computed(()=>h.value?C:a.value?.setModalOpen);function m(_,R){if(r.value){console.warn("[CopilotKit] Ignoring setActiveThreadId(): threadId is controlled via the `threadId` prop on CopilotChatConfigurationProvider.");return}s.value={threadId:_,explicit:R?.explicit??!0}}function v(){if(r.value){console.warn("[CopilotKit] Ignoring startNewThread(): threadId is controlled via the `threadId` prop on CopilotChatConfigurationProvider.");return}s.value={threadId:G.randomUUID(),explicit:!1}}const y=t.ref(!1),x=t.ref(0);function S(_){y.value=_,_&&ko()&&k.value?.(!1)}function A(){return x.value+=1,()=>{x.value=Math.max(0,x.value-1)}}const T=t.computed(()=>a.value?a.value.drawerOpen:y.value),O=t.computed(()=>a.value?a.value.setDrawerOpen:S),N=t.computed(()=>a.value?a.value.drawerRegistered:x.value>0),z=t.computed(()=>a.value?a.value.registerDrawer:A),F=t.computed(()=>{const _=k.value;if(_)return R=>{R&&ko()&&O.value?.(!1),_(R)}}),Z=t.computed(()=>({labels:l.value,agentId:c.value,threadId:p.value,hasExplicitThreadId:g.value,isModalOpen:b.value,setModalOpen:F.value,drawerOpen:T.value,setDrawerOpen:O.value,drawerRegistered:N.value,registerDrawer:z.value,setActiveThreadId:m,startNewThread:v}));return t.provide(vn,Z),(_,R)=>t.renderSlot(_.$slots,"default")}});function zt(){const e=t.inject(Fn,Gr(),!0);return t.computed(()=>e.value)}function Re(){const e=t.inject(vn,void 0);return t.computed(()=>e?.value??null)}const qr=t.defineComponent({name:"A2UIDeferredChild",props:{surface:{type:Object,required:!0},id:{type:String,required:!0},basePath:{type:String,required:!0}},setup(e){const n=t.ref(0),o=e.surface.componentsModel.onCreated.subscribe(s=>{s.id===e.id&&n.value++}),a=e.surface.componentsModel.onDeleted.subscribe(s=>{s===e.id&&n.value++});t.onUnmounted(()=>{o.unsubscribe(),a.unsubscribe()});function r(s,i){const l=i||e.basePath;return t.h(qr,{key:`${s}-${l}`,surface:e.surface,id:s,basePath:l})}return()=>{n.value;const s=e.surface.componentsModel.get(e.id);if(!s)return t.h("div",{style:{padding:"12px 16px",borderRadius:"8px",background:"linear-gradient(90deg, #f3f4f6 25%, #e5e7eb 50%, #f3f4f6 75%)",backgroundSize:"200% 100%",animation:"a2ui-shimmer 1.5s ease-in-out infinite",minHeight:"2rem"},innerHTML:"<style>@keyframes a2ui-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }</style>"});const i=e.surface.catalog.components.get(s.type);if(!i)return t.h("div",{style:{color:"red"}},`Unknown component: ${s.type}`);const l=new Xt.ComponentContext(e.surface,e.id,e.basePath);return t.h(i.render,{context:l,buildChild:r})}}}),xd=t.defineComponent({name:"A2uiSurface",props:{surface:{type:Object,required:!0}},setup(e){return()=>t.h(qr,{surface:e.surface,id:"root",basePath:"/"})}}),Id=["data-activity-type","data-message-id"],Ed={key:0,class:"cpk:rounded-lg cpk:border cpk:border-red-200 cpk:bg-red-50 cpk:p-3 cpk:text-sm cpk:text-red-700"},Rd={key:1,class:"cpk:flex cpk:min-h-0 cpk:flex-1 cpk:flex-col cpk:gap-6 cpk:overflow-auto cpk:py-6","data-testid":"a2ui-activity-renderer"},Ad=["data-surface-id"],_d={class:"a2ui-surface cpk:flex cpk:flex-1"},yo="default",Jr=t.defineComponent({__name:"A2UISurfaceActivityRenderer",props:{activityType:{},content:{},message:{},agent:{},theme:{},catalog:{}},setup(e){const n=e,{copilotkit:o}=Ve(),a=t.shallowRef(null),r=t.ref(0),s=t.ref(null);let i="";function l(){if(!a.value){const h=n.catalog??yt;a.value=new Xt.MessageProcessor([h],d=>{c(d)})}return a.value}async function c(h){if(n.agent)try{o.value.setProperties({...o.value.properties??{},a2uiAction:h}),await o.value.runAgent({agent:n.agent})}finally{const{a2uiAction:d,...f}=o.value.properties??{};o.value.setProperties(f)}}function u(h){if(!h?.length)return;const d=JSON.stringify(h);if(d===i)return;i=d;const f=l();try{const C=new Map;for(const b of h){const k=bn(b)??yo;C.has(k)||C.set(k,[]),C.get(k).push(b)}for(const[b,k]of C){const v=f.model.getSurface(b)?k.filter(y=>!y?.createSurface):k;f.processMessages(v)}s.value=null}catch(C){console.warn("[A2UI Vue] processMessages error:",C),s.value=C instanceof Error?C.message:String(C)}r.value++}t.watch(()=>[n.content.operations,n.theme,n.catalog,n.agent],()=>{u(n.content.operations)},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{a.value=null,i=""});const p=t.computed(()=>(n.content.operations??[]).length>0),g=t.computed(()=>{if(r.value,!a.value)return[];const h=[],d=new Map;for(const f of n.content.operations??[]){const C=bn(f)??yo;d.has(C)||d.set(C,[]),d.get(C).push(f)}for(const[f]of d){const C=a.value.model.getSurface(f);C&&h.push({surfaceId:f,surface:C})}return h});return(h,d)=>p.value?(t.openBlock(),t.createElementBlock("div",{key:0,"data-copilotkit":"","data-activity-type":e.activityType,"data-message-id":e.message.id},[s.value?(t.openBlock(),t.createElementBlock("div",Ed," A2UI render error: "+t.toDisplayString(s.value),1)):(t.openBlock(),t.createElementBlock("div",Rd,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,f=>(t.openBlock(),t.createElementBlock("div",{key:f.surfaceId,class:"cpk:flex cpk:w-full cpk:flex-none cpk:flex-col cpk:gap-4","data-surface-id":f.surfaceId},[t.createElementVNode("div",_d,[t.createVNode(t.unref(xd),{surface:f.surface},null,8,["surface"])])],8,Ad))),128))]))],8,Id)):t.createCommentVNode("",!0)}});function Dn(e,n){return e.find(o=>o.role==="tool"&&o.toolCallId===n)}function $d(e){return`tool-call-${e}`}function Xr(e,n,o){const a=n.filter(r=>r.name===e.function.name);return a.find(r=>r.agentId===o)??a.find(r=>!r.agentId)??a[0]??n.find(r=>r.name==="*")}function Md(e,n,o){const a=Dn(n,e.id),r=G.partialJSONParse(e.function.arguments);if(a)return{name:e.function.name,args:r,status:ie.ToolCallStatus.Complete,result:No.contentToText(a.content),toolCall:e,toolMessage:a};const s=o.has(e.id);return{name:e.function.name,args:r,status:s?ie.ToolCallStatus.Executing:ie.ToolCallStatus.InProgress,result:void 0,toolCall:e,toolMessage:void 0}}function Nd(e,n,o){const a=Dn(n,e.id),r=G.partialJSONParse(e.function.arguments);return a?{name:e.function.name,toolCallId:e.id,args:r,status:ie.ToolCallStatus.Complete,result:No.contentToText(a.content)}:o.has(e.id)?{name:e.function.name,toolCallId:e.id,args:r,status:ie.ToolCallStatus.Executing,result:void 0}:{name:e.function.name,toolCallId:e.id,args:r&&typeof r=="object"?r:{},status:ie.ToolCallStatus.InProgress,result:void 0}}function Od(e,n,o,a,r=G.DEFAULT_AGENT_ID){return[e.id,e.function.name,e.function.arguments,Dn(n,e.id)?.content,o.has(e.id),Xr(e,a,r)?.render]}const zd=t.defineComponent({__name:"CopilotChatToolCallItem",props:{toolCall:{},messages:{default:()=>[]}},setup(e){const n=e,{copilotkit:o,executingToolCallIds:a}=Ve(),r=Re();function s(){return Md(n.toolCall,n.messages,a.value)}function i(){return Nd(n.toolCall,n.messages,a.value)}function l(){const u=r.value?.agentId??G.DEFAULT_AGENT_ID;return Xr(n.toolCall,o.value.renderToolCalls,u)}function c(){const u=r.value?.agentId??G.DEFAULT_AGENT_ID;return Od(n.toolCall,n.messages,a.value,o.value.renderToolCalls,u)}return(u,p)=>t.renderSlot(u.$slots,t.unref($d)(e.toolCall.function.name),t.normalizeProps(t.guardReactiveProps(s())),()=>[t.renderSlot(u.$slots,"tool-call",t.normalizeProps(t.guardReactiveProps(s())),()=>[l()?t.withMemo(c(),()=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l()?.render),t.normalizeProps(t.mergeProps({key:0},i())),null,16)),p,0):t.createCommentVNode("",!0)])])}}),Yr=t.defineComponent({__name:"CopilotChatToolCallsView",props:{message:{},messages:{default:()=>[]}},setup(e){const n=t.useSlots();function o(){return Object.keys(n)}return(a,r)=>(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.message.toolCalls??[],s=>(t.openBlock(),t.createBlock(zd,{key:s.id,"tool-call":s,messages:e.messages},t.createSlots({_:2},[t.renderList(o(),i=>({name:i,fn:t.withCtx(l=>[t.renderSlot(a.$slots,i,t.mergeProps({ref_for:!0},l??{}))])}))]),1032,["tool-call","messages"]))),128))}});let So=!1;function Qr(){t.onMounted(()=>{if(So||typeof document>"u")return;So=!0,import("katex/dist/katex.min.css").catch(()=>{console.warn("[CopilotKit] Failed to load katex styles — math content may render without formatting")})})}const Bd=["data-message-id"],Fd={class:"cpk:w-full cpk:bg-transparent cpk:flex cpk:items-center cpk:-ml-[5px] cpk:-mt-[0px]"},Dd={class:"cpk:flex cpk:items-center cpk:gap-1"},Vd=["aria-label","title"],Pd=["aria-label","title"],Ld=["aria-label","title"],Ud=["aria-label","title"],jd=["aria-label","title"],wo="cpk:cursor-pointer cpk:p-1 cpk:text-muted-foreground cpk:transition-all cpk:hover:text-foreground cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50",Co="cpk:absolute cpk:top-full cpk:right-0 cpk:z-10 cpk:mt-1 cpk:min-w-[120px] cpk:overflow-hidden cpk:rounded-md cpk:border cpk:border-border cpk:bg-background cpk:shadow-lg",Ht="cpk:w-full cpk:px-3 cpk:py-2 cpk:text-left cpk:text-sm cpk:transition-colors cpk:hover:bg-muted/40",To="cpk:cursor-pointer cpk:p-1 cpk:text-muted-foreground cpk:transition-all cpk:hover:text-foreground cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50",es=t.defineComponent({__name:"CopilotChatAssistantMessage",props:{message:{},messages:{default:()=>[]},isRunning:{type:Boolean,default:!1},toolbarVisible:{type:Boolean,default:!0},onThumbsUp:{},onThumbsDown:{},onReadAloud:{},onRegenerate:{}},emits:["thumbs-up","thumbs-down","read-aloud","regenerate"],setup(e,{emit:n}){Qr();const o=e,a=n,r=Re(),s=t.computed(()=>r.value?.labels??ot),i=t.ref(!1);let l=null;const c=["cpk:inline-flex cpk:h-8 cpk:w-8 cpk:items-center cpk:justify-center cpk:rounded-md cpk:p-0","cpk:cursor-pointer cpk:text-[rgb(93,93,93)] cpk:transition-colors cpk:hover:bg-[#E8E8E8]","cpk:hover:text-[rgb(93,93,93)] cpk:dark:text-[rgb(243,243,243)] cpk:dark:hover:bg-[#303030]","cpk:dark:hover:text-[rgb(243,243,243)] cpk:disabled:pointer-events-none cpk:disabled:opacity-50"].join(" ");function u($,Y){try{const Q=new URL($,"https://copilotkit.local").pathname.split("/").filter(Boolean).pop();if(Q)return decodeURIComponent(Q)}catch{return Y}return Y}function p($,Y){if(typeof document>"u")return;const H=document.createElement("a");H.href=$,H.download=Y,H.rel="noopener noreferrer",document.body.appendChild(H),H.click(),document.body.removeChild(H)}function g($){const Y=Array.from($.querySelectorAll("thead th")).map(Q=>(Q.textContent??"").trim()),H=Array.from($.querySelectorAll("tbody tr")).map(Q=>Array.from(Q.querySelectorAll("td")).map(ce=>(ce.textContent??"").trim()));return{headers:Y,rows:H}}function h($,Y){const H=ce=>{const X=ce.includes(Y)||ce.includes('"')||ce.includes(`
51
+ - Keep the UI focused and dense — avoid excessive padding. Use compact spacing (8–12px gaps, 10–14px padding in controls).`,wd=t.defineComponent({__name:"CopilotKitProvider",props:{runtimeUrl:{},headers:{type:[Object,Function],default:()=>({})},credentials:{},messageFilter:{},defaultThrottleMs:{},publicApiKey:{},publicLicenseKey:{},licenseToken:{},properties:{default:()=>({})},useSingleEndpoint:{type:Boolean,default:void 0},agents__unsafe_dev_only:{default:()=>({})},selfManagedAgents:{default:()=>({})},renderToolCalls:{},renderActivityMessages:{default:()=>[]},renderCustomMessages:{default:()=>[]},frontendTools:{default:()=>[]},humanInTheLoop:{default:()=>[]},openGenerativeUI:{default:void 0},showDevConsole:{type:[Boolean,String]},enableInspector:{type:Boolean,default:void 0},onError:{},a2ui:{default:void 0},debug:{type:[Boolean,Object]}},setup(e){const n={},o=e,a=t.ref(!1);function r(){a.value=G.shouldEnableInspector({enableInspector:o.enableInspector,isBrowser:!0,isDevelopment:process.env.NODE_ENV==="development"})}t.onMounted(r),t.watch(()=>o.enableInspector,r);const s=t.ref(null),i=t.computed(()=>a.value);function l(L){s.value={...L}}t.provide($u,{isInspectorEnabled:i,openInspector:l});const c=o.frontendTools,u=o.humanInTheLoop,p=o.renderCustomMessages,g=o.renderActivityMessages,h=o.openGenerativeUI?.sandboxFunctions;t.watch(()=>o.frontendTools,L=>{L!==c&&console.error(gd)}),t.watch(()=>o.humanInTheLoop,L=>{L!==u&&console.error(vd)}),t.watch(()=>o.renderCustomMessages,L=>{L!==p&&console.error(bd)}),t.watch(()=>o.renderActivityMessages,L=>{L!==g&&console.error(kd)}),t.watch(()=>o.openGenerativeUI?.sandboxFunctions,L=>{L!==h&&console.error(yd)});const d=t.computed(()=>o.publicApiKey??o.publicLicenseKey),f=t.computed(()=>({...o.agents__unsafe_dev_only,...o.selfManagedAgents})),C=t.computed(()=>Object.keys(f.value).length>0),b=t.computed(()=>typeof o.headers=="function"?o.headers():o.headers),k=t.computed(()=>{const L=b.value;return!d.value||L[go]?L:{...L,[go]:d.value}}),m=t.computed(()=>o.runtimeUrl??(d.value?hd:void 0));t.watch([m,d,C],([L,fe,pe])=>{if(L||fe||pe)return;const Ue="Missing required prop: 'runtimeUrl' or 'publicApiKey' or 'publicLicenseKey'";if(process.env.NODE_ENV==="production")throw new Error(Ue);console.warn(Ue)},{immediate:!0});const v=new Map,y=L=>{const fe=v.get(L);if(fe)return fe.detachAbort?.(),v.delete(L),fe},x=t.computed(()=>{const L=[],fe=[];for(const pe of o.humanInTheLoop)if(L.push({type:"human-in-the-loop",name:pe.name,description:pe.description,parameters:pe.parameters,followUp:pe.followUp,...pe.agentId&&{agentId:pe.agentId},handler:async(Ue,Ze)=>{const we=Ze?.signal,Oe=Ze?.toolCall?.id??pe.name;return new Promise((je,Be)=>{if(we?.aborted){Be(new Error(vo));return}const at={resolve:je};if(v.set(Oe,at),we){const st=()=>{v.delete(Oe),Be(new Error(vo))};we.addEventListener("abort",st,{once:!0}),at.detachAbort=()=>{we.removeEventListener("abort",st)}}})}}),pe.render){const Ue=pe.render,Ze=we=>{const Oe=we.toolCallId??pe.name;return t.h(Ue,{...we,name:pe.name==="*"?we.name:pe.name,description:pe.description||"",agentId:pe.agentId,respond:we.status===ie.ToolCallStatus.Executing?async je=>{y(Oe)?.resolve(je)}:void 0})};fe.push({name:pe.name,args:pe.parameters??he.z.any(),render:Ze,...pe.agentId&&{agentId:pe.agentId}})}return{tools:L,renderToolCalls:fe}}),S=t.computed(()=>{const L=[];for(const fe of o.frontendTools)L.push(fe);for(const fe of $.value)L.push(fe);return L.push(...x.value.tools),L}),A=t.computed(()=>{const L=[...o.renderToolCalls??[]];for(const fe of[...o.frontendTools,...$.value])if(fe.render){const pe=fe.parameters??(fe.name==="*"?he.z.any():void 0);pe&&L.push({name:fe.name,args:pe,render:fe.render})}return L.push(...x.value.renderToolCalls),L}),T=t.computed(()=>o.renderCustomMessages??[]),O=t.ref(!1),N=t.ref(!1),z=t.ref(void 0),F=t.ref(void 0),Z=t.ref(!1),_=t.computed(()=>N.value||!!o.openGenerativeUI),R=t.computed(()=>!!o.a2ui?.catalog),U=t.computed(()=>O.value||R.value),M=t.computed(()=>R.value?{...o.properties,a2uiCatalogAvailable:!0}:o.properties),D=t.computed(()=>o.openGenerativeUI?.sandboxFunctions??[]),ae=(L,fe)=>Sn.zodToJsonSchema(L,fe),$=t.computed(()=>_.value?[{name:"generateSandboxedUi",description:G.GENERATE_SANDBOXED_UI_DESCRIPTION,parameters:Ur,handler:async()=>"UI generated",followUp:!0,render:Hr}]:[]),Y=t.computed(()=>{const L=[{activityType:Wn.MCPAppsActivityType,content:Wn.MCPAppsActivityContentSchema,render:Nr}];return _.value&&L.push({activityType:Pr,content:Lr,render:Zr}),U.value&&L.unshift(zr({theme:o.a2ui?.theme??n,catalog:o.a2ui?.catalog,loadingComponent:o.a2ui?.loadingComponent})),L}),H=t.computed(()=>[...o.renderActivityMessages??[],...Y.value]),Q=L=>{o.defaultThrottleMs!==void 0&&(!Number.isFinite(o.defaultThrottleMs)||o.defaultThrottleMs<0)&&console.error(`CopilotKitProvider: defaultThrottleMs must be a non-negative finite number, got ${o.defaultThrottleMs}. useAgent hooks without an explicit throttleMs will fall back to unthrottled.`),L.setDefaultThrottleMs(o.defaultThrottleMs)},ce=()=>{const L=new Or({runtimeUrl:m.value,runtimeTransport:o.useSingleEndpoint===!0?"single":o.useSingleEndpoint===!1?"rest":"auto",headers:k.value,credentials:o.credentials,messageFilter:o.messageFilter,properties:M.value,agents__unsafe_dev_only:f.value,tools:S.value,renderToolCalls:A.value,renderActivityMessages:H.value,renderCustomMessages:T.value,debug:o.debug});return Q(L),L},X=t.shallowRef(ce()),ve=t.ref(!1),Ae=t.ref(new Set);t.watch(X,(L,fe,pe)=>{const Ue=L.subscribe({onToolExecutionStart:({toolCallId:Be})=>{Ae.value=new Set(Ae.value).add(Be)},onToolExecutionEnd:({toolCallId:Be})=>{setTimeout(()=>{const at=new Set(Ae.value);at.delete(Be),Ae.value=at,t.triggerRef(X)},0)}}),Ze=L.subscribe({onRenderToolCallsChanged:()=>{t.triggerRef(X)}}),we=L.subscribe({onRenderCustomMessagesChanged:()=>{t.triggerRef(X)}}),Oe=L.subscribe({onRuntimeConnectionStatusChanged:()=>{O.value=L.a2uiEnabled,N.value=L.openGenerativeUIEnabled,z.value=L.licenseStatus,F.value=L.runtimeEntitlements,Z.value=L.runtimeEntitlementRetryPending,t.triggerRef(X)}}),je=L.subscribe({onError:Be=>{o.onError?.({error:Be.error,code:Be.code,context:Be.context})}});pe(()=>{Ue.unsubscribe(),Ze.unsubscribe(),we.unsubscribe(),Oe.unsubscribe(),je.unsubscribe()})},{immediate:!0}),t.watch([S],([L])=>{ve.value&&X.value.setTools(L)}),t.watch([A],([L])=>{ve.value&&X.value.setRenderToolCalls(L)}),t.watch([T],([L])=>{ve.value&&(X.value.setRenderCustomMessages(L),t.triggerRef(X))}),t.watch([H],([L])=>{ve.value&&(X.value.setRenderActivityMessages(L),t.triggerRef(X))});function Ne(){X.value.setRuntimeUrl(m.value),X.value.setRuntimeTransport(o.useSingleEndpoint===!0?"single":o.useSingleEndpoint===!1?"rest":"auto"),X.value.setHeaders(k.value),X.value.setCredentials(o.credentials),X.value.setMessageFilter(o.messageFilter),X.value.setProperties(M.value),X.value.setAgents__unsafe_dev_only(f.value),X.value.setDebug(o.debug),Q(X.value)}t.watch([()=>m.value,()=>k.value,()=>o.credentials,()=>o.messageFilter,()=>M.value,()=>f.value,()=>o.useSingleEndpoint,()=>o.debug],()=>{ve.value&&Ne()}),t.watch(()=>o.defaultThrottleMs,()=>{ve.value&&(Q(X.value),t.triggerRef(X))}),t.onMounted(()=>{Ne(),O.value=X.value.a2uiEnabled,N.value=X.value.openGenerativeUIEnabled,z.value=X.value.licenseStatus,F.value=X.value.runtimeEntitlements,Z.value=X.value.runtimeEntitlementRetryPending,ve.value=!0});const Ye=t.computed(()=>o.a2ui?.theme),Qe=t.computed(()=>o.a2ui?.catalog),Pe=t.computed(()=>o.a2ui?.loadingComponent),et=t.computed(()=>o.a2ui?.includeSchema??!0);zu(X,()=>U.value),ld(X,{enabled:()=>U.value,catalog:()=>o.a2ui?.catalog,includeSchema:()=>o.a2ui?.includeSchema??!0});const Je=t.ref([]);t.watch([_,D,()=>o.openGenerativeUI?.designSkill],([L,fe,pe],Ue,Ze)=>{if(!L)return;const we=[];if(we.push(X.value.addContext({description:"Design guidelines for the generateSandboxedUi tool. Follow these when building UI.",value:pe??Sd})),fe.length>0){const Oe=JSON.stringify(fe.map(je=>({name:je.name,description:je.description,parameters:G.schemaToJsonSchema(je.parameters,{zodToJsonSchema:ae})})));we.push(X.value.addContext({description:"Sandbox functions available in generated sandboxed UI code. Call via Websandbox.connection.remote.<functionName>(args).",value:Oe}))}Je.value=we,Ze(()=>{for(const Oe of we)X.value.removeContext(Oe)})},{immediate:!0}),t.provide($r,{copilotkit:X,executingToolCallIds:Ae,a2uiTheme:Ye,a2uiCatalog:Qe,a2uiLoadingComponent:Pe,a2uiIncludeSchema:et}),t.provide(Mr,D);const Le=t.computed(()=>F.value?.status!=="ready"&&F.value?.error.retryable===!0),ke=t.computed(()=>F.value!==void 0&&F.value.status!=="ready"),V=t.computed(()=>z.value==="valid"||z.value==="expiring"),re=t.computed(()=>Le.value&&Z.value&&!V.value),Ie=t.computed(()=>ke.value&&!re.value&&!V.value),Xe=t.computed(()=>{const L=G.createLicenseContextValue(re.value?void 0:z.value,F.value);return Ie.value?{...L,checkFeature:()=>!1,getLimit:()=>null}:L});t.provide(Fn,Xe);const Ee=t.computed(()=>re.value?void 0:Xe.value.status??void 0),lt=t.computed(()=>Ee.value==="none"&&!d.value),ct=t.computed(()=>Ee.value==="expired"),ut=t.computed(()=>Ee.value==="invalid"),gt=t.computed(()=>Ee.value==="expiring");return(L,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.renderSlot(L.$slots,"default"),a.value?(t.openBlock(),t.createBlock(_r,{key:0,core:X.value,"open-request":s.value},null,8,["core","open-request"])):t.createCommentVNode("",!0),lt.value?(t.openBlock(),t.createBlock(Zt,{key:1,type:"no_license"})):t.createCommentVNode("",!0),ct.value?(t.openBlock(),t.createBlock(Zt,{key:2,type:"expired"})):t.createCommentVNode("",!0),ut.value?(t.openBlock(),t.createBlock(Zt,{key:3,type:"invalid"})):t.createCommentVNode("",!0),gt.value?(t.openBlock(),t.createBlock(Zt,{key:4,type:"expiring"})):t.createCommentVNode("",!0)],64))}}),ot={chatInputPlaceholder:"Type a message...",chatInputToolbarStartTranscribeButtonLabel:"Transcribe",chatInputToolbarCancelTranscribeButtonLabel:"Cancel",chatInputToolbarFinishTranscribeButtonLabel:"Finish",chatInputToolbarAddButtonLabel:"Add photos or files",chatInputToolbarToolsButtonLabel:"Tools",assistantMessageToolbarCopyCodeLabel:"Copy",assistantMessageToolbarCopyCodeCopiedLabel:"Copied",assistantMessageToolbarCopyMessageLabel:"Copy",assistantMessageToolbarThumbsUpLabel:"Good response",assistantMessageToolbarThumbsDownLabel:"Bad response",assistantMessageToolbarReadAloudLabel:"Read aloud",assistantMessageToolbarRegenerateLabel:"Regenerate",userMessageToolbarCopyMessageLabel:"Copy",userMessageToolbarEditMessageLabel:"Edit",chatDisclaimerText:"AI can make mistakes. Please verify important information.",chatToggleOpenLabel:"Open chat",chatToggleCloseLabel:"Close chat",modalHeaderTitle:"CopilotKit Chat",welcomeMessageText:"How can I help you today?"};function Cd(e,n){const o=Object.keys(e),a=Object.keys(n);if(o.length!==a.length)return!1;for(const r of o)if(e[r]!==n[r])return!1;return!0}function bo(e){return e!==null&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"}function Wr(e){const n=t.shallowRef(t.toValue(e));return t.watch(()=>t.toValue(e),o=>{const a=n.value;a!==o&&(bo(a)&&bo(o)&&Cd(a,o)||(n.value=o))},{immediate:!0}),n}const Kr="(max-width: 767px)";function ko(){return typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia(Kr).matches}const an=t.defineComponent({__name:"CopilotChatConfigurationProvider",props:{labels:{},agentId:{},threadId:{},hasExplicitThreadId:{type:Boolean,default:void 0},isModalDefaultOpen:{type:Boolean,default:void 0}},setup(e){const n=e,o=t.inject(vn,null),a=t.computed(()=>o?.value??null),r=t.computed(()=>n.threadId!==void 0&&n.hasExplicitThreadId!==!1),s=t.ref(null),i=Wr(t.computed(()=>n.labels)),l=t.computed(()=>({...ot,...a.value?.labels,...i.value})),c=t.computed(()=>n.agentId??a.value?.agentId??G.DEFAULT_AGENT_ID),u=G.randomUUID(),p=t.computed(()=>r.value?n.threadId:s.value?s.value.threadId:n.threadId?n.threadId:a.value?.threadId?a.value.threadId:u),g=t.computed(()=>r.value?!0:(s.value?s.value.explicit:n.hasExplicitThreadId!==void 0?n.hasExplicitThreadId:!!n.threadId)||!!a.value?.hasExplicitThreadId),h=t.computed(()=>n.isModalDefaultOpen!==void 0),d=t.computed(()=>n.isModalDefaultOpen??!0),f=t.ref(a.value?.isModalOpen??d.value);function C(_){f.value=_}const b=t.computed(()=>h.value?f.value:a.value?.isModalOpen),k=t.computed(()=>h.value?C:a.value?.setModalOpen);function m(_,R){if(r.value){console.warn("[CopilotKit] Ignoring setActiveThreadId(): threadId is controlled via the `threadId` prop on CopilotChatConfigurationProvider.");return}s.value={threadId:_,explicit:R?.explicit??!0}}function v(){if(r.value){console.warn("[CopilotKit] Ignoring startNewThread(): threadId is controlled via the `threadId` prop on CopilotChatConfigurationProvider.");return}s.value={threadId:G.randomUUID(),explicit:!1}}const y=t.ref(!1),x=t.ref(0);function S(_){y.value=_,_&&ko()&&k.value?.(!1)}function A(){return x.value+=1,()=>{x.value=Math.max(0,x.value-1)}}const T=t.computed(()=>a.value?a.value.drawerOpen:y.value),O=t.computed(()=>a.value?a.value.setDrawerOpen:S),N=t.computed(()=>a.value?a.value.drawerRegistered:x.value>0),z=t.computed(()=>a.value?a.value.registerDrawer:A),F=t.computed(()=>{const _=k.value;if(_)return R=>{R&&ko()&&O.value?.(!1),_(R)}}),Z=t.computed(()=>({labels:l.value,agentId:c.value,threadId:p.value,hasExplicitThreadId:g.value,isModalOpen:b.value,setModalOpen:F.value,drawerOpen:T.value,setDrawerOpen:O.value,drawerRegistered:N.value,registerDrawer:z.value,setActiveThreadId:m,startNewThread:v}));return t.provide(vn,Z),(_,R)=>t.renderSlot(_.$slots,"default")}});function zt(){const e=t.inject(Fn,Gr(),!0);return t.computed(()=>e.value)}function Re(){const e=t.inject(vn,void 0);return t.computed(()=>e?.value??null)}const qr=t.defineComponent({name:"A2UIDeferredChild",props:{surface:{type:Object,required:!0},id:{type:String,required:!0},basePath:{type:String,required:!0}},setup(e){const n=t.ref(0),o=e.surface.componentsModel.onCreated.subscribe(s=>{s.id===e.id&&n.value++}),a=e.surface.componentsModel.onDeleted.subscribe(s=>{s===e.id&&n.value++});t.onUnmounted(()=>{o.unsubscribe(),a.unsubscribe()});function r(s,i){const l=i||e.basePath;return t.h(qr,{key:`${s}-${l}`,surface:e.surface,id:s,basePath:l})}return()=>{n.value;const s=e.surface.componentsModel.get(e.id);if(!s)return t.h("div",{style:{padding:"12px 16px",borderRadius:"8px",background:"linear-gradient(90deg, #f3f4f6 25%, #e5e7eb 50%, #f3f4f6 75%)",backgroundSize:"200% 100%",animation:"a2ui-shimmer 1.5s ease-in-out infinite",minHeight:"2rem"},innerHTML:"<style>@keyframes a2ui-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }</style>"});const i=e.surface.catalog.components.get(s.type);if(!i)return t.h("div",{style:{color:"red"}},`Unknown component: ${s.type}`);const l=new Xt.ComponentContext(e.surface,e.id,e.basePath);return t.h(i.render,{context:l,buildChild:r})}}}),Td=t.defineComponent({name:"A2uiSurface",props:{surface:{type:Object,required:!0}},setup(e){return()=>t.h(qr,{surface:e.surface,id:"root",basePath:"/"})}}),xd=["data-activity-type","data-message-id"],Id={key:0,class:"cpk:rounded-lg cpk:border cpk:border-red-200 cpk:bg-red-50 cpk:p-3 cpk:text-sm cpk:text-red-700"},Ed={key:1,class:"cpk:flex cpk:min-h-0 cpk:flex-1 cpk:flex-col cpk:gap-6 cpk:overflow-auto cpk:py-6","data-testid":"a2ui-activity-renderer"},Rd=["data-surface-id"],Ad={class:"a2ui-surface cpk:flex cpk:flex-1"},yo="default",Jr=t.defineComponent({__name:"A2UISurfaceActivityRenderer",props:{activityType:{},content:{},message:{},agent:{},theme:{},catalog:{}},setup(e){const n=e,{copilotkit:o}=Ve(),a=t.shallowRef(null),r=t.ref(0),s=t.ref(null);let i="";function l(){if(!a.value){const h=n.catalog??yt;a.value=new Xt.MessageProcessor([h],d=>{c(d)})}return a.value}async function c(h){if(n.agent)try{o.value.setProperties({...o.value.properties??{},a2uiAction:h}),await o.value.runAgent({agent:n.agent})}finally{const{a2uiAction:d,...f}=o.value.properties??{};o.value.setProperties(f)}}function u(h){if(!h?.length)return;const d=JSON.stringify(h);if(d===i)return;i=d;const f=l();try{const C=new Map;for(const b of h){const k=bn(b)??yo;C.has(k)||C.set(k,[]),C.get(k).push(b)}for(const[b,k]of C){const v=f.model.getSurface(b)?k.filter(y=>!y?.createSurface):k;f.processMessages(v)}s.value=null}catch(C){console.warn("[A2UI Vue] processMessages error:",C),s.value=C instanceof Error?C.message:String(C)}r.value++}t.watch(()=>[n.content.operations,n.theme,n.catalog,n.agent],()=>{u(n.content.operations)},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{a.value=null,i=""});const p=t.computed(()=>(n.content.operations??[]).length>0),g=t.computed(()=>{if(r.value,!a.value)return[];const h=[],d=new Map;for(const f of n.content.operations??[]){const C=bn(f)??yo;d.has(C)||d.set(C,[]),d.get(C).push(f)}for(const[f]of d){const C=a.value.model.getSurface(f);C&&h.push({surfaceId:f,surface:C})}return h});return(h,d)=>p.value?(t.openBlock(),t.createElementBlock("div",{key:0,"data-copilotkit":"","data-activity-type":e.activityType,"data-message-id":e.message.id},[s.value?(t.openBlock(),t.createElementBlock("div",Id," A2UI render error: "+t.toDisplayString(s.value),1)):(t.openBlock(),t.createElementBlock("div",Ed,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,f=>(t.openBlock(),t.createElementBlock("div",{key:f.surfaceId,class:"cpk:flex cpk:w-full cpk:flex-none cpk:flex-col cpk:gap-4","data-surface-id":f.surfaceId},[t.createElementVNode("div",Ad,[t.createVNode(t.unref(Td),{surface:f.surface},null,8,["surface"])])],8,Rd))),128))]))],8,xd)):t.createCommentVNode("",!0)}});function Dn(e,n){return e.find(o=>o.role==="tool"&&o.toolCallId===n)}function _d(e){return`tool-call-${e}`}function Xr(e,n,o){const a=n.filter(r=>r.name===e.function.name);return a.find(r=>r.agentId===o)??a.find(r=>!r.agentId)??a[0]??n.find(r=>r.name==="*")}function $d(e,n,o){const a=Dn(n,e.id),r=G.partialJSONParse(e.function.arguments);if(a)return{name:e.function.name,args:r,status:ie.ToolCallStatus.Complete,result:No.contentToText(a.content),toolCall:e,toolMessage:a};const s=o.has(e.id);return{name:e.function.name,args:r,status:s?ie.ToolCallStatus.Executing:ie.ToolCallStatus.InProgress,result:void 0,toolCall:e,toolMessage:void 0}}function Md(e,n,o){const a=Dn(n,e.id),r=G.partialJSONParse(e.function.arguments);return a?{name:e.function.name,toolCallId:e.id,args:r,status:ie.ToolCallStatus.Complete,result:No.contentToText(a.content)}:o.has(e.id)?{name:e.function.name,toolCallId:e.id,args:r,status:ie.ToolCallStatus.Executing,result:void 0}:{name:e.function.name,toolCallId:e.id,args:r&&typeof r=="object"?r:{},status:ie.ToolCallStatus.InProgress,result:void 0}}function Nd(e,n,o,a,r=G.DEFAULT_AGENT_ID){return[e.id,e.function.name,e.function.arguments,Dn(n,e.id)?.content,o.has(e.id),Xr(e,a,r)?.render]}const Od=t.defineComponent({__name:"CopilotChatToolCallItem",props:{toolCall:{},messages:{default:()=>[]}},setup(e){const n=e,{copilotkit:o,executingToolCallIds:a}=Ve(),r=Re();function s(){return $d(n.toolCall,n.messages,a.value)}function i(){return Md(n.toolCall,n.messages,a.value)}function l(){const u=r.value?.agentId??G.DEFAULT_AGENT_ID;return Xr(n.toolCall,o.value.renderToolCalls,u)}function c(){const u=r.value?.agentId??G.DEFAULT_AGENT_ID;return Nd(n.toolCall,n.messages,a.value,o.value.renderToolCalls,u)}return(u,p)=>t.renderSlot(u.$slots,t.unref(_d)(e.toolCall.function.name),t.normalizeProps(t.guardReactiveProps(s())),()=>[t.renderSlot(u.$slots,"tool-call",t.normalizeProps(t.guardReactiveProps(s())),()=>[l()?t.withMemo(c(),()=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l()?.render),t.normalizeProps(t.mergeProps({key:0},i())),null,16)),p,0):t.createCommentVNode("",!0)])])}}),Yr=t.defineComponent({__name:"CopilotChatToolCallsView",props:{message:{},messages:{default:()=>[]}},setup(e){const n=t.useSlots();function o(){return Object.keys(n)}return(a,r)=>(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.message.toolCalls??[],s=>(t.openBlock(),t.createBlock(Od,{key:s.id,"tool-call":s,messages:e.messages},t.createSlots({_:2},[t.renderList(o(),i=>({name:i,fn:t.withCtx(l=>[t.renderSlot(a.$slots,i,t.mergeProps({ref_for:!0},l??{}))])}))]),1032,["tool-call","messages"]))),128))}});let So=!1;function Qr(){t.onMounted(()=>{if(So||typeof document>"u")return;So=!0,import("katex/dist/katex.min.css").catch(()=>{console.warn("[CopilotKit] Failed to load katex styles — math content may render without formatting")})})}const zd=["data-message-id"],Bd={class:"cpk:w-full cpk:bg-transparent cpk:flex cpk:items-center cpk:-ml-[5px] cpk:-mt-[0px]"},Fd={class:"cpk:flex cpk:items-center cpk:gap-1"},Dd=["aria-label","title"],Vd=["aria-label","title"],Pd=["aria-label","title"],Ld=["aria-label","title"],Ud=["aria-label","title"],wo="cpk:cursor-pointer cpk:p-1 cpk:text-muted-foreground cpk:transition-all cpk:hover:text-foreground cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50",Co="cpk:absolute cpk:top-full cpk:right-0 cpk:z-10 cpk:mt-1 cpk:min-w-[120px] cpk:overflow-hidden cpk:rounded-md cpk:border cpk:border-border cpk:bg-background cpk:shadow-lg",Ht="cpk:w-full cpk:px-3 cpk:py-2 cpk:text-left cpk:text-sm cpk:transition-colors cpk:hover:bg-muted/40",To="cpk:cursor-pointer cpk:p-1 cpk:text-muted-foreground cpk:transition-all cpk:hover:text-foreground cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50",es=t.defineComponent({__name:"CopilotChatAssistantMessage",props:{message:{},messages:{default:()=>[]},isRunning:{type:Boolean,default:!1},toolbarVisible:{type:Boolean,default:!0},onThumbsUp:{},onThumbsDown:{},onReadAloud:{},onRegenerate:{}},emits:["thumbs-up","thumbs-down","read-aloud","regenerate"],setup(e,{emit:n}){Qr();const o=e,a=n,r=Re(),s=t.computed(()=>r.value?.labels??ot),i=t.ref(!1);let l=null;const c=["cpk:inline-flex cpk:h-8 cpk:w-8 cpk:items-center cpk:justify-center cpk:rounded-md cpk:p-0","cpk:cursor-pointer cpk:text-[rgb(93,93,93)] cpk:transition-colors cpk:hover:bg-[#E8E8E8]","cpk:hover:text-[rgb(93,93,93)] cpk:dark:text-[rgb(243,243,243)] cpk:dark:hover:bg-[#303030]","cpk:dark:hover:text-[rgb(243,243,243)] cpk:disabled:pointer-events-none cpk:disabled:opacity-50"].join(" ");function u($,Y){try{const Q=new URL($,"https://copilotkit.local").pathname.split("/").filter(Boolean).pop();if(Q)return decodeURIComponent(Q)}catch{return Y}return Y}function p($,Y){if(typeof document>"u")return;const H=document.createElement("a");H.href=$,H.download=Y,H.rel="noopener noreferrer",document.body.appendChild(H),H.click(),document.body.removeChild(H)}function g($){const Y=Array.from($.querySelectorAll("thead th")).map(Q=>(Q.textContent??"").trim()),H=Array.from($.querySelectorAll("tbody tr")).map(Q=>Array.from(Q.querySelectorAll("td")).map(ce=>(ce.textContent??"").trim()));return{headers:Y,rows:H}}function h($,Y){const H=ce=>{const X=ce.includes(Y)||ce.includes('"')||ce.includes(`
61
52
  `),ve=ce.replace(/"/g,'""');return X?`"${ve}"`:ve},Q=[];$.headers.length>0&&Q.push($.headers.map(H).join(Y));for(const ce of $.rows)Q.push(ce.map(H).join(Y));return Q.join(`
62
53
  `)}function d($){if($.headers.length===0)return $.rows.map(Q=>`| ${Q.join(" | ")} |`).join(`
63
54
  `);const Y=`| ${$.headers.map(()=>"---").join(" | ")} |`,H=$.rows.map(Q=>`| ${Q.join(" | ")} |`);return[`| ${$.headers.join(" | ")} |`,Y,...H].join(`
64
55
  `)}function f($,Y,H){if(typeof document>"u")return;const Q=new Blob([$],{type:H}),ce=URL.createObjectURL(Q);p(ce,Y),URL.revokeObjectURL(ce)}const C=t.defineComponent({name:"CopilotMarkdownImage",inheritAttrs:!1,props:{src:{type:String,default:""},alt:{type:String,default:""}},setup($,{attrs:Y}){async function H(){if(!$.src)return;const Q=u($.src,"image");try{const ce=await fetch($.src);if(!ce.ok)throw new Error("Failed to fetch image");const X=await ce.blob(),ve=URL.createObjectURL(X);p(ve,Q),URL.revokeObjectURL(ve)}catch{p($.src,Q)}}return()=>{const Q={...Y,src:$.src,alt:$.alt,class:["cpk:max-w-full cpk:rounded-lg",Y.class].filter(Boolean).join(" "),"data-streamdown":"image"};return delete Q.className,t.h("div",{class:"cpk:group cpk:relative cpk:my-4 cpk:inline-block","data-streamdown":"image-wrapper"},[t.h("img",Q),t.h("div",{class:"cpk:pointer-events-none cpk:absolute cpk:inset-0 cpk:hidden cpk:rounded-lg cpk:bg-black/10 cpk:group-hover:block"}),t.h("button",{type:"button",class:"cpk:absolute cpk:right-2 cpk:bottom-2 cpk:flex cpk:h-8 cpk:w-8 cpk:cursor-pointer cpk:items-center cpk:justify-center cpk:rounded-md cpk:border cpk:border-border cpk:bg-background/90 cpk:shadow-sm cpk:backdrop-blur-sm cpk:transition-all cpk:duration-200 cpk:hover:bg-background cpk:opacity-0 cpk:group-hover:opacity-100",title:"Download image",onClick:H},[t.h(me.Download,{class:"cpk:size-[14px]"})])])}}}),b=t.defineComponent({name:"CopilotMarkdownTable",inheritAttrs:!1,setup($,{attrs:Y,slots:H}){const Q=t.ref(null),ce=t.ref(!1),X=t.ref(!1),ve=t.ref(!1);let Ae=null;const Ne=()=>{ce.value=!1,X.value=!1},Ye=()=>{Ae&&clearTimeout(Ae),ve.value=!0,Ae=setTimeout(()=>{ve.value=!1,Ae=null},2e3)},Qe=()=>Q.value?Q.value.querySelector("table"):null,Pe=()=>{const ke=Qe();return ke?g(ke):null},et=async ke=>{const V=Pe();if(!V)return;const Ie=h(V,ke==="csv"?",":" ");if(typeof navigator<"u"&&navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(Ie)}catch{return}Ne(),Ye()},Je=ke=>{const V=Pe();V&&(ke==="csv"?f(h(V,","),"table.csv","text/csv"):f(d(V),"table.md","text/markdown"),Ne())},Le=ke=>{if(!Q.value)return;const V=ke.target;V&&!Q.value.contains(V)&&Ne()};return t.onMounted(()=>{typeof document<"u"&&document.addEventListener("mousedown",Le)}),t.onBeforeUnmount(()=>{Ae&&clearTimeout(Ae),typeof document<"u"&&document.removeEventListener("mousedown",Le)}),()=>{const ke={...Y,class:["cpk:w-full cpk:border-collapse cpk:border cpk:border-border",Y.class].filter(Boolean).join(" "),"data-streamdown":"table"};return delete ke.className,t.h("div",{ref:Q,class:"cpk:my-4 cpk:flex cpk:flex-col cpk:space-y-2","data-streamdown":"table-wrapper"},[t.h("div",{class:"cpk:flex cpk:items-center cpk:justify-end cpk:gap-1"},[t.h("div",{class:"cpk:relative"},[t.h("button",{type:"button",class:wo,title:"Copy table",onClick:()=>{ce.value=!ce.value,X.value=!1}},[ve.value?t.h(me.Check,{class:"cpk:size-[14px]"}):t.h(me.Copy,{class:"cpk:size-[14px]"})]),ce.value?t.h("div",{class:Co},[t.h("button",{type:"button",class:Ht,title:"Copy table as CSV",onClick:()=>et("csv")},"CSV"),t.h("button",{type:"button",class:Ht,title:"Copy table as TSV",onClick:()=>et("tsv")},"TSV")]):null]),t.h("div",{class:"cpk:relative"},[t.h("button",{type:"button",class:wo,title:"Download table",onClick:()=>{X.value=!X.value,ce.value=!1}},[t.h(me.Download,{class:"cpk:size-[14px]"})]),X.value?t.h("div",{class:Co},[t.h("button",{type:"button",class:Ht,title:"Download table as CSV",onClick:()=>Je("csv")},"CSV"),t.h("button",{type:"button",class:Ht,title:"Download table as Markdown",onClick:()=>Je("markdown")},"Markdown")]):null])]),t.h("div",{class:"cpk:overflow-x-auto"},[t.h("table",ke,H.default?H.default():[])])])}}}),k={javascript:"js",js:"js",typescript:"ts",ts:"ts",json:"json",vue:"vue",html:"html",css:"css",md:"md",markdown:"md",sh:"sh",bash:"sh",py:"py",python:"py",go:"go",rust:"rs",rs:"rs"},m=t.defineComponent({name:"CopilotCodeBlockCopyAction",props:{code:{type:String,default:""}},setup($){const Y=t.ref(!1);let H=null;const Q=async()=>{if($.code){if(typeof navigator<"u"&&navigator.clipboard?.writeText)try{await navigator.clipboard.writeText($.code)}catch{return}H&&clearTimeout(H),Y.value=!0,H=setTimeout(()=>{Y.value=!1,H=null},2e3)}};return t.onBeforeUnmount(()=>{H&&clearTimeout(H)}),()=>t.h("button",{type:"button",class:To,title:"Copy Code","data-streamdown":"code-block-copy-button",onClick:Q},[Y.value?t.h(me.Check,{class:"cpk:size-[14px]"}):t.h(me.Copy,{class:"cpk:size-[14px]"})])}}),v=t.defineComponent({name:"CopilotCodeBlockDownloadAction",props:{code:{type:String,default:""},language:{type:String,default:""}},setup($){const Y=()=>{if(!$.code)return;const H=k[$.language.toLowerCase()]??"txt";f($.code,`file.${H}`,"text/plain")};return()=>t.h("button",{type:"button",class:To,title:"Download file","data-streamdown":"code-block-download-button",onClick:Y},[t.h(me.Download,{class:"cpk:size-[14px]"})])}}),y={img:C,table:b};function x($){return $?typeof $=="string"?$:Array.isArray($)?$.map(H=>H&&typeof H=="object"&&"type"in H&&H.type==="text"&&typeof H.text=="string"?H.text:"").filter(H=>H.length>0).join(`
65
- `):"":""}const S=t.computed(()=>x(o.message.content)),A=t.computed(()=>S.value.trim().length>0),T=t.computed(()=>typeof o.onThumbsUp=="function"),O=t.computed(()=>typeof o.onThumbsDown=="function"),N=t.computed(()=>typeof o.onReadAloud=="function"),z=t.computed(()=>typeof o.onRegenerate=="function"),F=t.computed(()=>o.messages[o.messages.length-1]?.id===o.message.id),Z=t.computed(()=>o.toolbarVisible&&A.value&&!(o.isRunning&&F.value));function _(){l&&clearTimeout(l),i.value=!0,l=setTimeout(()=>{i.value=!1,l=null},2e3)}async function R(){const $=S.value;if($&&!(typeof navigator>"u"||typeof navigator.clipboard?.writeText!="function"))try{await navigator.clipboard.writeText($),_()}catch(Y){console.error("Failed to copy to clipboard:",Y)}}function U(){a("thumbs-up",o.message)}function M(){a("thumbs-down",o.message)}function D(){a("read-aloud",o.message)}function ae(){a("regenerate",o.message)}return t.onBeforeUnmount(()=>{l&&clearTimeout(l)}),($,Y)=>t.renderSlot($.$slots,"layout",{message:e.message,content:S.value,isRunning:e.isRunning,toolbarVisible:e.toolbarVisible,shouldShowToolbar:Z.value,messageRenderer:$.$slots["message-renderer"]??(()=>null),toolbar:$.$slots.toolbar??(()=>null),copyButton:$.$slots["copy-button"]??(()=>null),thumbsUpButton:$.$slots["thumbs-up-button"]??(()=>null),thumbsDownButton:$.$slots["thumbs-down-button"]??(()=>null),readAloudButton:$.$slots["read-aloud-button"]??(()=>null),regenerateButton:$.$slots["regenerate-button"]??(()=>null),toolCallsView:$.$slots["tool-calls-view"]??(()=>null),onCopy:R,onThumbsUp:U,onThumbsDown:M,onReadAloud:D,onRegenerate:ae},()=>[t.createElementVNode("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-assistant-message",class:"cpk:prose cpk:max-w-full cpk:break-words cpk:dark:prose-invert","data-message-id":e.message.id},$.$attrs),[t.renderSlot($.$slots,"message-renderer",{message:e.message,content:S.value},()=>[A.value?(t.openBlock(),t.createBlock(t.unref(Mo.StreamMarkdown),{key:0,class:"copilot-chat-assistant-markdown",content:S.value,components:y,"code-block-actions":[t.unref(v),t.unref(m)],"code-block-show-line-numbers":!1,"code-block-hide-copy":!0,"code-block-hide-download":!0,"allowed-link-prefixes":["https://","http://","#","/","./","../"],"shiki-theme":{light:"github-light",dark:"github-dark"}},null,8,["content","code-block-actions"])):t.createCommentVNode("",!0)]),t.renderSlot($.$slots,"tool-calls-view",{message:e.message,messages:e.messages},()=>[t.createVNode(Yr,{message:e.message,messages:e.messages},t.createSlots({_:2},[t.renderList($.$slots,(H,Q)=>({name:Q,fn:t.withCtx(ce=>[t.renderSlot($.$slots,Q,t.normalizeProps(t.guardReactiveProps(ce)))])}))]),1032,["message","messages"])]),Z.value?t.renderSlot($.$slots,"toolbar",{key:0,message:e.message,shouldShowToolbar:Z.value},()=>[t.createElementVNode("div",Fd,[t.createElementVNode("div",Dd,[t.renderSlot($.$slots,"copy-button",{onCopy:R,copied:i.value,label:s.value.assistantMessageToolbarCopyMessageLabel},()=>[t.createElementVNode("button",{"data-testid":"copilot-copy-button",type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarCopyMessageLabel,title:s.value.assistantMessageToolbarCopyMessageLabel,onClick:R},[i.value?(t.openBlock(),t.createBlock(t.unref(me.Check),{key:0,class:"cpk:size-[18px]"})):(t.openBlock(),t.createBlock(t.unref(me.Copy),{key:1,class:"cpk:size-[18px]"}))],10,Vd)]),T.value||$.$slots["thumbs-up-button"]?t.renderSlot($.$slots,"thumbs-up-button",{key:0,onThumbsUp:U,label:s.value.assistantMessageToolbarThumbsUpLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarThumbsUpLabel,title:s.value.assistantMessageToolbarThumbsUpLabel,onClick:U},[t.createVNode(t.unref(me.ThumbsUp),{class:"cpk:size-[18px]"})],10,Pd)]):t.createCommentVNode("",!0),O.value||$.$slots["thumbs-down-button"]?t.renderSlot($.$slots,"thumbs-down-button",{key:1,onThumbsDown:M,label:s.value.assistantMessageToolbarThumbsDownLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarThumbsDownLabel,title:s.value.assistantMessageToolbarThumbsDownLabel,onClick:M},[t.createVNode(t.unref(me.ThumbsDown),{class:"cpk:size-[18px]"})],10,Ld)]):t.createCommentVNode("",!0),N.value||$.$slots["read-aloud-button"]?t.renderSlot($.$slots,"read-aloud-button",{key:2,onReadAloud:D,label:s.value.assistantMessageToolbarReadAloudLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarReadAloudLabel,title:s.value.assistantMessageToolbarReadAloudLabel,onClick:D},[t.createVNode(t.unref(me.Volume2),{class:"cpk:size-[20px]"})],10,Ud)]):t.createCommentVNode("",!0),z.value||$.$slots["regenerate-button"]?t.renderSlot($.$slots,"regenerate-button",{key:3,onRegenerate:ae,label:s.value.assistantMessageToolbarRegenerateLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarRegenerateLabel,title:s.value.assistantMessageToolbarRegenerateLabel,onClick:ae},[t.createVNode(t.unref(me.RefreshCw),{class:"cpk:size-[18px]"})],10,jd)]):t.createCommentVNode("",!0),t.renderSlot($.$slots,"toolbar-items")])])]):t.createCommentVNode("",!0)],16,Bd)])}});class bt extends Error{constructor(n){super(n),this.name="AudioRecorderError"}}const ts=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatAudioRecorder",setup(e,{expose:n}){const o=t.useAttrs(),a=t.ref(null),r=t.ref("idle"),s=t.ref(null),i=t.ref(null),l=t.ref(null),c=t.ref(null),u=t.ref(null),p=t.ref([]),g=t.ref([]),h=t.ref(0),d=t.ref(0),f=t.ref(0);function C(){u.value!==null&&(cancelAnimationFrame(u.value),u.value=null);const y=s.value;if(y&&y.state!=="inactive")try{y.stop()}catch{}i.value&&(i.value.getTracks().forEach(S=>S.stop()),i.value=null);const x=c.value;x&&x.state!=="closed"&&x.close().catch(()=>{}),s.value=null,l.value=null,c.value=null,p.value=[],g.value=[],h.value=0,d.value=0,f.value=0}async function b(){if(r.value!=="idle")throw new bt("Recorder is already active");try{const y=await navigator.mediaDevices.getUserMedia({audio:!0});i.value=y;const x=new AudioContext;c.value=x;const S=x.createMediaStreamSource(y),A=x.createAnalyser();A.fftSize=2048,S.connect(A),l.value=A;const T=MediaRecorder.isTypeSupported("audio/webm;codecs=opus")?"audio/webm;codecs=opus":MediaRecorder.isTypeSupported("audio/webm")?"audio/webm":MediaRecorder.isTypeSupported("audio/mp4")?"audio/mp4":"",O=T?{mimeType:T}:{},N=new MediaRecorder(y,O);s.value=N,p.value=[],N.ondataavailable=z=>{z.data.size>0&&p.value.push(z.data)},N.start(100),r.value="recording"}catch(y){throw C(),y instanceof Error&&y.name==="NotAllowedError"?new bt("Microphone permission denied"):y instanceof Error&&y.name==="NotFoundError"?new bt("No microphone found"):new bt(y instanceof Error?y.message:"Failed to start recording")}}function k(){return new Promise((y,x)=>{const S=s.value;if(!S||r.value!=="recording"){x(new bt("No active recording"));return}r.value="processing",S.onstop=()=>{const A=new Blob(p.value,{type:S.mimeType||"audio/webm"});C(),r.value="idle",y(A)},S.onerror=()=>{C(),r.value="idle",x(new bt("Recording failed"))},S.stop()})}function m(y){let x=0;for(let S=0;S<y.length;S+=1){const A=(y[S]??128)/128-1;x+=A*A}return Math.sqrt(x/y.length)}function v(){const y=a.value;if(!y)return;const x=y.getContext("2d");if(!x)return;const S=y.getBoundingClientRect(),A=window.devicePixelRatio||1;(y.width!==S.width*A||y.height!==S.height*A)&&(y.width=S.width*A,y.height=S.height*A,x.scale(A,A));const T=2,N=T+1,z=Math.floor(S.width/N)+2;if(l.value&&r.value==="recording"){g.value.length===0&&(g.value=Array.from({length:z},()=>0)),f.value<1&&(f.value=Math.min(1,f.value+.03)),h.value+=1/3;const U=l.value.fftSize,M=new Uint8Array(U);l.value.getByteTimeDomainData(M);const D=m(M),Y=D>d.value?.12:.08;d.value+=(D-d.value)*Y,h.value>=N&&(h.value-=N,g.value.push(d.value),g.value.length>z&&(g.value=g.value.slice(-z)))}x.clearRect(0,0,S.width,S.height);const F=window.getComputedStyle(y);x.fillStyle=F.color,x.globalAlpha=f.value;const Z=S.height/2,_=S.height/2-2,R=12;for(let U=0;U<g.value.length;U+=1){const M=g.value[U]??0,D=Math.min(M*4,1),ae=Math.max(2,D*_*2),$=S.width-(g.value.length-U)*N-h.value,Y=Z-ae/2;if($+T<=0||$>=S.width)continue;let H=1;$<R?H=Math.max(0,$/R):$>S.width-R&&(H=Math.max(0,(S.width-$)/R)),x.globalAlpha=f.value*H,x.fillRect($,Y,T,ae)}u.value=requestAnimationFrame(v)}return t.watch(r,()=>{u.value!==null&&(cancelAnimationFrame(u.value),u.value=null),u.value=requestAnimationFrame(v)},{immediate:!0}),t.onBeforeUnmount(()=>{C()}),n({get state(){return r.value},start:b,stop:k,dispose:C}),(y,x)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"",class:"cpk:w-full cpk:px-5 cpk:py-3"},t.unref(o)),[t.createElementVNode("canvas",{ref_key:"canvasRef",ref:a,class:"cpk:block cpk:h-[26px] cpk:w-full"},null,512)],16))}}),Vn=t.defineComponent({__name:"InlineFeatureWarning",props:{featureName:{}},setup(e){const n={padding:"8px 12px",backgroundColor:"#fffbeb",border:"1px solid #fbbf24",borderRadius:"6px",fontSize:"13px",color:"#92400e",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif"},o={color:"#b45309",textDecoration:"underline"};return(a,r)=>(t.openBlock(),t.createElementBlock("div",{style:n,"data-testid":"copilot-inline-feature-warning"},[t.createTextVNode(' ⚠ The "'+t.toDisplayString(e.featureName)+'" feature requires a CopilotKit license. ',1),t.createElementVNode("a",{href:"https://copilotkit.ai/pricing",target:"_blank",rel:"noopener noreferrer",style:o}," Get one at copilotkit.ai/pricing ")]))}});var ns=(e=>(e.OnMessagesChanged="OnMessagesChanged",e.OnStateChanged="OnStateChanged",e.OnRunStatusChanged="OnRunStatusChanged",e))(ns||{});const Zd=["OnMessagesChanged","OnStateChanged","OnRunStatusChanged"];function rn(e={}){const n=e.threadId!==void 0,o=e.runtimeAgentId!==void 0,a=e.agentId!==void 0;if(n&&!o)throw new Error('useAgent: `threadId` requires `runtimeAgentId`. A threadId is written onto a single agent, but an agent resolved by agentId alone is shared, so scoping a thread to it would clobber other useAgent callers. Pass a distinct local `agentId` and the runtime agent to route to, e.g. useAgent({ agentId: "chat-1", runtimeAgentId: "assistant", threadId }).');if(o&&!n)throw new Error("useAgent: `runtimeAgentId` requires `threadId`. A proxied agent exists to scope a thread to a private instance; without a threadId it behaves like the shared agent while adding a registration and a local agentId to keep unique. Either pass the thread, or bind to the agent directly with useAgent({ agentId }).");if(o&&!a)throw new Error(`useAgent: \`runtimeAgentId\` requires an explicit \`agentId\`. The proxied agent is registered under \`agentId\`, and the usual fallbacks (chat configuration, then "${G.DEFAULT_AGENT_ID}") name agents that already exist — registering over one throws or shadows it. Pick a local id for this hook, e.g. useAgent({ agentId: "chat-1", runtimeAgentId: "assistant", threadId }).`);const r=o,s=Re(),i=t.computed(()=>t.toValue(e.agentId)??s.value?.agentId??G.DEFAULT_AGENT_ID),l=t.computed(()=>r?t.toValue(e.runtimeAgentId):void 0),c=t.computed(()=>t.toValue(e.threadId)??(s.value?.hasExplicitThreadId?s.value.threadId:void 0)),{copilotkit:u}=Ve(),p=t.computed(()=>e.updates??Zd),g=t.computed(()=>u.value.defaultThrottleMs),h=t.computed(()=>t.toValue(e.throttleMs)),d=t.shallowRef(null),f=t.shallowRef(null),C=new Map,b=(v,y,x,S)=>{const A=new ie.ProxiedCopilotRuntimeAgent({runtimeUrl:y,agentId:v,transport:x,runtimeMode:"pending"});return A.headers={...S},A},k=t.shallowRef(null);r&&t.watch([i,l,()=>u.value],([v,y],x,S)=>{const{agent:A,unregister:T}=u.value.registerProxiedAgent({agentId:v,runtimeAgentId:y});C.delete(v),k.value=A,S(()=>{T(),k.value=null})},{immediate:!0});const m=()=>{const v=i.value,y=u.value;if(r){const N=k.value;if(N){C.delete(v);const Z=d.value===N;d.value=N,f.value=N,Z&&t.triggerRef(d);return}const z=C.get(v);if(z){z.headers={...y.headers},d.value=z,f.value=z;return}const F=new ie.ProxiedCopilotRuntimeAgent({runtimeUrl:y.runtimeUrl,agentId:v,runtimeAgentId:l.value,transport:y.runtimeTransport,runtimeMode:"pending"});F.headers={...y.headers},C.set(v,F),d.value=F,f.value=F;return}const x=y.getAgent(v);if(x){C.delete(v);const N=d.value===x;d.value=x,f.value=x,N&&t.triggerRef(d);return}const S=y.runtimeUrl!==void 0,A=y.runtimeConnectionStatus;if(S&&(A===ie.CopilotKitCoreRuntimeConnectionStatus.Disconnected||A===ie.CopilotKitCoreRuntimeConnectionStatus.Connecting||A===ie.CopilotKitCoreRuntimeConnectionStatus.Error)){const N=C.get(v);if(N){N.headers={...y.headers},d.value=N,f.value=N;return}const z=b(v,y.runtimeUrl,y.runtimeTransport,y.headers);C.set(v,z),d.value=z,f.value=z;return}const T=Object.keys(y.agents??{}),O=S?`runtimeUrl=${y.runtimeUrl}`:"no runtimeUrl";throw new Error(`useAgent: Agent '${v}' not found after runtime sync (${O}). `+(T.length?`Known agents: [${T.join(", ")}]`:"No agents registered.")+" Verify your runtime /info and/or agents__unsafe_dev_only.")};return t.watch([i,k,()=>u.value.agents,()=>u.value.runtimeConnectionStatus,()=>u.value.runtimeUrl,()=>u.value.runtimeTransport,()=>JSON.stringify(Object.entries(u.value.headers??{}).sort(([v],[y])=>v.localeCompare(y)))],m,{immediate:!0}),t.watch([()=>d.value,c],([v,y])=>{!v||!y||(v.threadId=y)},{immediate:!0}),t.watch([f,()=>JSON.stringify(Object.entries(u.value.headers??{}).sort(([v],[y])=>v.localeCompare(y)))],([v])=>{ie.ɵisHttpAgent(v)&&u.value.applyHeadersToAgent(v)},{immediate:!0}),t.watch([f,p,h,g],([v,y],x,S)=>{const A=y;if(!v||A.length===0)return;let T=!0,O=!1;const N=()=>{T&&(O||(O=!0,queueMicrotask(()=>{O=!1,T&&t.triggerRef(d)})))},z={};A.includes("OnMessagesChanged")&&(z.onMessagesChanged=()=>{T&&t.triggerRef(d)}),A.includes("OnStateChanged")&&(z.onStateChanged=N),A.includes("OnRunStatusChanged")&&(z.onRunInitialized=N,z.onRunFinalized=N,z.onRunFailed=N,z.onRunErrorEvent=N);const F=u.value.subscribeToAgentWithOptions(v,z,{throttleMs:t.toValue(e.throttleMs)});S(()=>{T=!1,F.unsubscribe()})},{immediate:!0}),{agent:d}}function os(e={}){const{copilotkit:n}=Ve(),o=Re(),a=t.computed(()=>t.toValue(e.agentId)??o.value?.agentId??G.DEFAULT_AGENT_ID),r=t.ref([]),s=t.ref(!1),i=()=>{const u=n.value.getSuggestions(a.value);r.value=u.suggestions,s.value=u.isLoading};return t.watch([()=>n.value,a],()=>i(),{immediate:!0}),t.watch([()=>n.value,a],(u,p,g)=>{const h=n.value,d=a.value,f=h.subscribe({onSuggestionsChanged:({agentId:C,suggestions:b})=>{if(C!==d)return;r.value=b;const k=h.getSuggestions(d);s.value=k.isLoading},onSuggestionsStartedLoading:({agentId:C})=>{C===d&&(s.value=!0)},onSuggestionsFinishedLoading:({agentId:C})=>{C===d&&(s.value=!1)},onSuggestionsConfigChanged:()=>{const C=h.getSuggestions(d);r.value=C.suggestions,s.value=C.isLoading}});g(()=>f.unsubscribe())},{immediate:!0}),{suggestions:r,isLoading:s,reloadSuggestions:()=>{n.value.reloadSuggestions(a.value)},clearSuggestions:()=>{n.value.clearSuggestions(a.value)}}}function as(e){const n=t.shallowRef([]),o=t.ref(!1),a=t.ref(null),r=t.ref(null),s=t.ref(t.toValue(e.config)),i=t.shallowRef(n.value),l=t.computed(()=>s.value?.enabled??!1);t.watch(()=>t.toValue(e.config),m=>{s.value=m},{immediate:!0});const c=m=>{n.value=m,i.value=m},u=m=>{c(m(i.value))};async function p(m){const v=s.value,y=v?.accept??"*/*",x=v?.maxSize??20*1024*1024,S=m.filter(T=>!G.matchesAcceptFilter(T,y));for(const T of S)v?.onUploadFailed?.({reason:"invalid-type",file:T,message:`File "${T.name}" is not accepted. Supported types: ${y}`});const A=m.filter(T=>G.matchesAcceptFilter(T,y));for(const T of A){if(G.exceedsMaxSize(T,x)){v?.onUploadFailed?.({reason:"file-too-large",file:T,message:`File "${T.name}" exceeds the maximum size of ${G.formatFileSize(x)}`});continue}const O=G.getModalityFromMimeType(T.type),N=G.randomUUID();u(z=>[...z,{id:N,type:O,source:{type:"data",value:"",mimeType:T.type},filename:T.name,size:T.size,status:"uploading"}]);try{let z,F;if(v?.onUpload){const _=await v.onUpload(T),{metadata:R,...U}=_;z=U,F=R}else z={type:"data",value:await G.readFileAsBase64(T),mimeType:T.type};let Z;O==="video"&&(Z=await G.generateVideoThumbnail(T)),u(_=>_.map(R=>R.id===N?{...R,source:z,status:"ready",thumbnail:Z,metadata:F}:R))}catch(z){u(F=>F.filter(Z=>Z.id!==N)),console.error(`[CopilotKit] Failed to upload "${T.name}":`,z),v?.onUploadFailed?.({reason:"upload-failed",file:T,message:z instanceof Error?z.message:`Failed to upload "${T.name}"`})}}}async function g(m){const v=m.target;v?.files?.length&&(await p(Array.from(v.files)),v&&(v.value=""))}function h(m){l.value&&(m.preventDefault(),m.stopPropagation(),o.value=!0)}function d(m){m.preventDefault(),m.stopPropagation(),o.value=!1}async function f(m){if(m.preventDefault(),m.stopPropagation(),o.value=!1,!l.value)return;const v=Array.from(m.dataTransfer?.files??[]);v.length>0&&await p(v)}function C(m){u(v=>v.filter(y=>y.id!==m))}function b(){const m=i.value.filter(v=>v.status==="ready");return m.length===0||(u(v=>v.filter(y=>y.status!=="ready")),a.value&&(a.value.value="")),m}async function k(m){if(!l.value)return;const v=m.target;if(!v||!r.value?.contains(v))return;const y=s.value?.accept??"*/*",S=Array.from(m.clipboardData?.items??[]).filter(T=>{if(T.kind!=="file")return!1;const O=T.getAsFile();return O!==null&&G.matchesAcceptFilter(O,y)});if(S.length===0)return;m.preventDefault();const A=S.map(T=>T.getAsFile()).filter(T=>T!==null);await p(A)}return t.onMounted(()=>{typeof document<"u"&&document.addEventListener("paste",k)}),t.onBeforeUnmount(()=>{typeof document<"u"&&document.removeEventListener("paste",k)}),{attachments:n,enabled:l,dragOver:o,fileInputRef:a,containerRef:r,processFiles:p,handleFileUpload:g,handleDragOver:h,handleDragLeave:d,handleDrop:f,removeAttachment:C,consumeAttachments:b}}async function Hd(e){return await new Promise((n,o)=>{const a=new FileReader;a.onloadend=()=>{const r=a.result;n(r.split(",")[1]??"")},a.addEventListener("error",()=>o(new Error("Failed to read audio data"))),a.readAsDataURL(e)})}function Gd(e){return typeof e=="object"&&e!==null&&"error"in e&&"message"in e&&typeof e.error=="string"&&typeof e.message=="string"}function Wd(e){return{code:e.error,message:e.message,retryable:e.retryable??!1}}class kt extends Error{info;constructor(n){super(n.message),this.name="TranscriptionError",this.info=n}}async function Kd(e,n,o="recording.webm"){const a=e.runtimeUrl;if(!a)throw new kt({code:G.TranscriptionErrorCode.INVALID_REQUEST,message:"Runtime URL is not configured",retryable:!1});const r={...e.headers};let s;try{if(e.runtimeTransport==="single"){const i=await Hd(n);r["Content-Type"]="application/json",s=await fetch(a,{method:"POST",headers:r,body:JSON.stringify({method:"transcribe",body:{audio:i,mimeType:n.type||"audio/webm",filename:o}})})}else{delete r["Content-Type"];const i=new FormData;i.append("audio",n,o),s=await fetch(`${a}/transcribe`,{method:"POST",headers:r,body:i})}}catch(i){throw new kt({code:G.TranscriptionErrorCode.NETWORK_ERROR,message:i instanceof Error?i.message:"Network request failed",retryable:!0})}if(!s.ok){let i;try{i=await s.json()}catch{throw new kt({code:G.TranscriptionErrorCode.PROVIDER_ERROR,message:`HTTP ${s.status}: ${s.statusText}`,retryable:s.status>=500})}throw Gd(i)?new kt(Wd(i)):new kt({code:G.TranscriptionErrorCode.PROVIDER_ERROR,message:typeof i=="object"&&i!==null&&"message"in i?String(i.message):"Transcription failed",retryable:s.status>=500})}return await s.json()}function rs(){const e=typeof window<"u"?window.innerHeight:0,n=t.ref(!1),o=t.ref(0),a=t.ref(e),r=t.ref(e),s=()=>{if(typeof window>"u")return;const l=window.visualViewport;if(!l)return;const c=window.innerHeight,u=l.height,p=Math.max(0,c-u),g=p>150;o.value=p,n.value=g,a.value=u,r.value=c};let i=null;return t.onMounted(()=>{typeof window>"u"||(i=window.visualViewport??null,i&&(s(),i.addEventListener("resize",s),i.addEventListener("scroll",s)))}),t.onBeforeUnmount(()=>{i&&(i.removeEventListener("resize",s),i.removeEventListener("scroll",s),i=null)}),{isKeyboardOpen:t.readonly(n),keyboardHeight:t.readonly(o),availableHeight:t.readonly(a),viewportHeight:t.readonly(r)}}const qd={id:null,sendNonce:0},ss=Symbol("LastUserMessage");function Jd(){return t.ref({...qd})}function Xd({scrollRef:e,contentRef:n,spacerRef:o,topOffset:a=16}){const r=t.inject(ss,Jd(),!0);let s=-1,i=null,l=null;function c(){i!==null&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(i),i=null,l?.disconnect(),l=null}t.watch([()=>r.value.id,()=>r.value.sendNonce,e,n,o,()=>a],([u,p,g,h,d],f,C)=>{if(C(c),p===s||(s=p,!u)||!g||!h||!d)return;const b=typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(u):u.replace(/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g,"\\$&"),k=h.querySelector(`[data-message-id="${b}"]`);if(!k)return;const m=g.clientHeight,v=k.getBoundingClientRect().height,y=parseFloat(getComputedStyle(k).paddingTop)||0,x=Math.max(0,v-y),S=Math.max(0,m-x-a);d.style.height=`${S}px`,typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(()=>{const A=xo(k,g)+y-a;g.scrollTo({top:Math.max(0,A),behavior:"smooth"})})),typeof ResizeObserver<"u"&&(l=new ResizeObserver(()=>{if(!h||!d||!g)return;const A=h.getBoundingClientRect().height,T=xo(k,h),O=A-T-v,N=Math.max(0,S-O);d.style.height=`${N}px`}),l.observe(h))},{immediate:!0,flush:"post"})}function xo(e,n){const o=e.getBoundingClientRect(),a=n.getBoundingClientRect();return o.top-a.top+n.scrollTop}const Yd={class:"cpk:pointer-events-auto cpk:mx-auto cpk:max-w-3xl cpk:px-4 cpk:py-0 cpk:@3xl:px-0 cpk:[div[data-sidebar-chat]_&]:px-8 cpk:[div[data-popup-chat]_&]:px-4"},Qd=["data-layout"],ep=["data-layout"],tp=["aria-label","disabled"],np={key:0,class:"cpk:my-1 cpk:h-px cpk:bg-border cpk:dark:bg-[#333333]"},op=["onClick"],ap={key:1,class:"cpk:flex cpk:w-full cpk:items-center cpk:justify-center cpk:px-5 cpk:py-3"},rp=["value","placeholder","disabled"],sp={key:0,class:"cpk:px-3 cpk:py-2 cpk:text-sm cpk:text-muted-foreground"},ip=["data-slash-index","aria-selected","data-active","onMouseenter","onMousedown"],lp=["aria-label","disabled"],cp=["aria-label","disabled"],up=["aria-label","disabled"],dp={class:"cpk:mr-[10px]"},pp=["disabled"],mp={"data-testid":"copilot-chat-input-disclaimer",class:"cpk:mx-auto cpk:max-w-3xl cpk:px-4 cpk:py-3 cpk:text-center cpk:text-xs cpk:text-muted-foreground"},Rt=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatInput",props:{modelValue:{},disabled:{type:Boolean,default:!1},placeholder:{},autoFocus:{type:Boolean,default:!0},clearOnSubmit:{type:Boolean,default:!0},mode:{default:"input"},toolsMenu:{default:()=>[]},isRunning:{type:Boolean,default:!1},positioning:{default:"static"},keyboardHeight:{default:0},showDisclaimer:{type:Boolean,default:void 0},maxRows:{default:5},bottomAnchored:{type:Boolean,default:!1},onSubmitMessage:{},onStop:{},onAddFile:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},onFinishTranscribeWithAudio:{}},emits:["update:modelValue","submit-message","stop","add-file","start-transcribe","cancel-transcribe","finish-transcribe","finish-transcribe-with-audio"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=Re(),i=t.ref(null),l=t.ref(null),c=t.ref(null),u=t.ref(null),p=t.ref(null),g=t.ref(null),h=t.ref(null),d=t.ref(null),f=t.ref(o.modelValue??""),C=t.ref(!1),b=t.ref("compact"),k=t.ref(null),m=t.ref(0),v=t.ref(null),y=t.ref(!1),x=t.ref({singleLineHeight:0,maxHeight:0,paddingLeft:0,paddingRight:0}),S=t.ref(null),A=t.ref(!1),T=t.ref(null),O=t.ref(null),N=t.ref(!1),z=t.ref(!1);let F=null,Z=null;const _=t.computed(()=>o.modelValue!==void 0),R=t.computed(()=>_.value?o.modelValue??"":f.value),U=t.computed(()=>s.value?.labels??ot),M=t.computed(()=>o.placeholder??U.value.chatInputPlaceholder),D=t.computed(()=>o.mode==="input"&&b.value==="expanded"),ae=t.computed(()=>o.mode!=="transcribe"&&o.isRunning),$=t.computed(()=>o.showDisclaimer??o.positioning==="absolute"),Y=t.computed(()=>typeof o.onSubmitMessage=="function"),H=t.computed(()=>typeof o.onStop=="function"),Q=t.computed(()=>typeof o.onAddFile=="function"),ce=t.computed(()=>typeof o.onStartTranscribe=="function"),X=t.computed(()=>typeof o.onCancelTranscribe=="function"),ve=t.computed(()=>typeof o.onFinishTranscribe=="function"||typeof o.onFinishTranscribeWithAudio=="function"),Ae=t.computed(()=>o.mode==="input"&&!o.disabled&&Y.value&&R.value.trim().length>0),Ne=t.computed(()=>ae.value?!H.value:!Ae.value),Ye=t.computed(()=>[o.positioning==="absolute"&&"cpk:absolute cpk:bottom-0 cpk:left-0 cpk:right-0 cpk:z-20 cpk:pointer-events-none",r.class]),Qe=t.computed(()=>{const w={...r};return delete w.class,w});function Pe(w){return Array.isArray(w.items)}function et(){return Q.value?{label:U.value.chatInputToolbarAddButtonLabel,action:()=>a("add-file")}:null}function Je(){const w=[],B=et();if(B&&w.push(B),o.toolsMenu.length>0){w.length>0&&w.push("-");for(const K of o.toolsMenu){if(K==="-"){if(w.length===0||w[w.length-1]==="-")continue;w.push("-");continue}w.push(K)}}for(;w.length>0&&w[w.length-1]==="-";)w.pop();return w}const Le=t.computed(()=>Je()),ke=t.computed(()=>Le.value.length>0);function V(w){const B=new Set,K=[],oe=Ce=>{for(const de of Ce)if(de!=="-"){if(Pe(de)&&de.items.length>0){oe(de.items);continue}!de.action||B.has(de.label)||(B.add(de.label),K.push(de))}};return oe(w),K}const re=t.computed(()=>V(Le.value));function Ie(w,B=0,K="root"){const oe=[];for(const[Ce,de]of w.entries()){const _e=`${K}-${Ce}`;if(de==="-"){oe.push({type:"separator",key:`sep-${_e}`});continue}if(Pe(de)&&de.items.length>0){oe.push({type:"label",key:`label-${_e}`,label:de.label,depth:B}),oe.push(...Ie(de.items,B+1,_e));continue}de.action&&oe.push({type:"item",key:`item-${_e}`,label:de.label,depth:B,action:de.action})}return oe}const Xe=t.computed(()=>Ie(Le.value)),Ee=t.computed(()=>{if(k.value===null||re.value.length===0)return[];const w=k.value.trim().toLowerCase();if(w.length===0)return re.value;const B=[],K=[];for(const oe of re.value){const Ce=oe.label.toLowerCase();if(Ce.startsWith(w)){B.push(oe);continue}Ce.includes(w)&&K.push(oe)}return[...B,...K]}),lt=t.computed(()=>k.value!==null&&re.value.length>0);function ct(w){_.value||(f.value=w),a("update:modelValue",w)}function ut(){ct("")}function gt(w){if(re.value.length===0){k.value=null;return}if(w.startsWith("/")){const B=w.split(/\r?\n/,1)[0]??"";k.value=B.slice(1);return}k.value=null}function L(w){ut(),w.action?.(),k.value=null,m.value=0,requestAnimationFrame(()=>{l.value?.focus()})}function fe(){if(o.mode!=="input"||o.disabled||!Y.value)return;const B=(l.value?.value??R.value).trim();B&&(a("submit-message",B),o.clearOnSubmit&&ut(),l.value?.focus())}function pe(w){const B=w.target.value;ct(B),gt(B)}function Ue(){if(ae.value){H.value&&a("stop");return}fe()}function Ze(w){if(!o.disabled&&!(C.value||w.isComposing||w.keyCode===229)){if(k.value!==null&&o.mode==="input"){if(w.key==="ArrowDown"){Ee.value.length>0&&(w.preventDefault(),m.value=m.value<0?0:(m.value+1)%Ee.value.length);return}if(w.key==="ArrowUp"){Ee.value.length>0&&(w.preventDefault(),m.value<0?m.value=Ee.value.length-1:m.value=m.value<=0?Ee.value.length-1:m.value-1);return}if(w.key==="Enter"){const B=m.value>=0?Ee.value[m.value]:void 0;if(B){w.preventDefault(),L(B);return}}if(w.key==="Escape"){w.preventDefault(),k.value=null;return}}if(w.key==="Enter"&&!w.shiftKey&&o.mode==="input"){if(w.preventDefault(),ae.value){H.value&&a("stop");return}fe()}}}function we(){!ke.value||o.mode==="transcribe"||o.disabled||(y.value=!y.value)}function Oe(){y.value=!1}function je(w){w(),Oe(),t.nextTick(()=>{l.value?.focus()})}async function Be(){const w=d.value;if(w&&w.state==="recording")try{const B=await w.stop();a("finish-transcribe-with-audio",B)}catch(B){console.error("Failed to stop recording:",B)}a("finish-transcribe")}function at(w){const B=w.target;!B||o.mode!=="input"||B.tagName==="BUTTON"||B.closest("button")||l.value?.focus()}function st(){const w=l.value;if(!w||C.value)return;const B=w.value,K=w.style.height;w.style.height="auto";const oe=window.getComputedStyle(w),Ce=parseFloat(oe.paddingLeft)||0,de=parseFloat(oe.paddingRight)||0,_e=parseFloat(oe.paddingTop)||0,He=parseFloat(oe.paddingBottom)||0;w.value="";const Ge=w.scrollHeight;w.value=B;const nt=(Ge-_e-He)*o.maxRows+_e+He;x.value={singleLineHeight:Ge,maxHeight:nt,paddingLeft:Ce,paddingRight:de},w.style.height=K,w.style.maxHeight=`${nt}px`}function Ft(){const w=l.value;if(!w)return 0;x.value.singleLineHeight===0&&st();const{maxHeight:B}=x.value;B&&(w.style.maxHeight=`${B}px`),w.style.height="auto";const K=w.scrollHeight;return w.style.height=`${B?Math.min(K,B):K}px`,K}function Fe(w){b.value!==w&&(A.value=!0,b.value=w)}function sn(w){const B=window.getComputedStyle(w);if(B.font?.trim())return B.font;if(B.fontSize&&B.fontFamily){const K=`${B.fontStyle} ${B.fontVariant} ${B.fontWeight} ${B.fontSize}/${B.lineHeight} ${B.fontFamily}`;if(K.trim())return K}return process.env.NODE_ENV!=="production"&&!N.value&&(N.value=!0,console.warn("[CopilotChatInput] Could not resolve textarea font for layout measurement. Text-width-based expansion will be skipped until the next container resize.")),null}function j(){const w=c.value,B=u.value,K=p.value;if(!w||!B||!K)return O.value=null,null;const oe=window.getComputedStyle(w),Ce=parseFloat(oe.paddingLeft)||0,de=parseFloat(oe.paddingRight)||0,_e=parseFloat(oe.columnGap)||0,He=w.clientWidth-Ce-de;if(He<=0)return O.value=null,null;const Ge=B.getBoundingClientRect().width,tt=K.getBoundingClientRect().width,nt=Math.max(He-Ge-tt-_e*2,0);if(nt<=0)return O.value=null,null;const We={compactWidth:nt};return O.value=We,We}function ne(){if(o.mode!=="input"){Fe("compact");return}if(typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 767px)").matches){st(),Ft(),Fe("expanded");return}const w=l.value;if(!w||!c.value||!u.value||!p.value)return;x.value.singleLineHeight===0&&st();const B=Ft(),K=x.value.singleLineHeight,oe=R.value.includes(`
56
+ `):"":""}const S=t.computed(()=>x(o.message.content)),A=t.computed(()=>S.value.trim().length>0),T=t.computed(()=>typeof o.onThumbsUp=="function"),O=t.computed(()=>typeof o.onThumbsDown=="function"),N=t.computed(()=>typeof o.onReadAloud=="function"),z=t.computed(()=>typeof o.onRegenerate=="function"),F=t.computed(()=>o.messages[o.messages.length-1]?.id===o.message.id),Z=t.computed(()=>o.toolbarVisible&&A.value&&!(o.isRunning&&F.value));function _(){l&&clearTimeout(l),i.value=!0,l=setTimeout(()=>{i.value=!1,l=null},2e3)}async function R(){const $=S.value;if($&&!(typeof navigator>"u"||typeof navigator.clipboard?.writeText!="function"))try{await navigator.clipboard.writeText($),_()}catch(Y){console.error("Failed to copy to clipboard:",Y)}}function U(){a("thumbs-up",o.message)}function M(){a("thumbs-down",o.message)}function D(){a("read-aloud",o.message)}function ae(){a("regenerate",o.message)}return t.onBeforeUnmount(()=>{l&&clearTimeout(l)}),($,Y)=>t.renderSlot($.$slots,"layout",{message:e.message,content:S.value,isRunning:e.isRunning,toolbarVisible:e.toolbarVisible,shouldShowToolbar:Z.value,messageRenderer:$.$slots["message-renderer"]??(()=>null),toolbar:$.$slots.toolbar??(()=>null),copyButton:$.$slots["copy-button"]??(()=>null),thumbsUpButton:$.$slots["thumbs-up-button"]??(()=>null),thumbsDownButton:$.$slots["thumbs-down-button"]??(()=>null),readAloudButton:$.$slots["read-aloud-button"]??(()=>null),regenerateButton:$.$slots["regenerate-button"]??(()=>null),toolCallsView:$.$slots["tool-calls-view"]??(()=>null),onCopy:R,onThumbsUp:U,onThumbsDown:M,onReadAloud:D,onRegenerate:ae},()=>[t.createElementVNode("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-assistant-message",class:"cpk:prose cpk:max-w-full cpk:break-words cpk:dark:prose-invert","data-message-id":e.message.id},$.$attrs),[t.renderSlot($.$slots,"message-renderer",{message:e.message,content:S.value},()=>[A.value?(t.openBlock(),t.createBlock(t.unref(Mo.StreamMarkdown),{key:0,class:"copilot-chat-assistant-markdown",content:S.value,components:y,"code-block-actions":[t.unref(v),t.unref(m)],"code-block-show-line-numbers":!1,"code-block-hide-copy":!0,"code-block-hide-download":!0,"allowed-link-prefixes":["https://","http://","#","/","./","../"],"shiki-theme":{light:"github-light",dark:"github-dark"}},null,8,["content","code-block-actions"])):t.createCommentVNode("",!0)]),t.renderSlot($.$slots,"tool-calls-view",{message:e.message,messages:e.messages},()=>[t.createVNode(Yr,{message:e.message,messages:e.messages},t.createSlots({_:2},[t.renderList($.$slots,(H,Q)=>({name:Q,fn:t.withCtx(ce=>[t.renderSlot($.$slots,Q,t.normalizeProps(t.guardReactiveProps(ce)))])}))]),1032,["message","messages"])]),Z.value?t.renderSlot($.$slots,"toolbar",{key:0,message:e.message,shouldShowToolbar:Z.value},()=>[t.createElementVNode("div",Bd,[t.createElementVNode("div",Fd,[t.renderSlot($.$slots,"copy-button",{onCopy:R,copied:i.value,label:s.value.assistantMessageToolbarCopyMessageLabel},()=>[t.createElementVNode("button",{"data-testid":"copilot-copy-button",type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarCopyMessageLabel,title:s.value.assistantMessageToolbarCopyMessageLabel,onClick:R},[i.value?(t.openBlock(),t.createBlock(t.unref(me.Check),{key:0,class:"cpk:size-[18px]"})):(t.openBlock(),t.createBlock(t.unref(me.Copy),{key:1,class:"cpk:size-[18px]"}))],10,Dd)]),T.value||$.$slots["thumbs-up-button"]?t.renderSlot($.$slots,"thumbs-up-button",{key:0,onThumbsUp:U,label:s.value.assistantMessageToolbarThumbsUpLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarThumbsUpLabel,title:s.value.assistantMessageToolbarThumbsUpLabel,onClick:U},[t.createVNode(t.unref(me.ThumbsUp),{class:"cpk:size-[18px]"})],10,Vd)]):t.createCommentVNode("",!0),O.value||$.$slots["thumbs-down-button"]?t.renderSlot($.$slots,"thumbs-down-button",{key:1,onThumbsDown:M,label:s.value.assistantMessageToolbarThumbsDownLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarThumbsDownLabel,title:s.value.assistantMessageToolbarThumbsDownLabel,onClick:M},[t.createVNode(t.unref(me.ThumbsDown),{class:"cpk:size-[18px]"})],10,Pd)]):t.createCommentVNode("",!0),N.value||$.$slots["read-aloud-button"]?t.renderSlot($.$slots,"read-aloud-button",{key:2,onReadAloud:D,label:s.value.assistantMessageToolbarReadAloudLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarReadAloudLabel,title:s.value.assistantMessageToolbarReadAloudLabel,onClick:D},[t.createVNode(t.unref(me.Volume2),{class:"cpk:size-[20px]"})],10,Ld)]):t.createCommentVNode("",!0),z.value||$.$slots["regenerate-button"]?t.renderSlot($.$slots,"regenerate-button",{key:3,onRegenerate:ae,label:s.value.assistantMessageToolbarRegenerateLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.assistantMessageToolbarRegenerateLabel,title:s.value.assistantMessageToolbarRegenerateLabel,onClick:ae},[t.createVNode(t.unref(me.RefreshCw),{class:"cpk:size-[18px]"})],10,Ud)]):t.createCommentVNode("",!0),t.renderSlot($.$slots,"toolbar-items")])])]):t.createCommentVNode("",!0)],16,zd)])}});class bt extends Error{constructor(n){super(n),this.name="AudioRecorderError"}}const ts=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatAudioRecorder",setup(e,{expose:n}){const o=t.useAttrs(),a=t.ref(null),r=t.ref("idle"),s=t.ref(null),i=t.ref(null),l=t.ref(null),c=t.ref(null),u=t.ref(null),p=t.ref([]),g=t.ref([]),h=t.ref(0),d=t.ref(0),f=t.ref(0);function C(){u.value!==null&&(cancelAnimationFrame(u.value),u.value=null);const y=s.value;if(y&&y.state!=="inactive")try{y.stop()}catch{}i.value&&(i.value.getTracks().forEach(S=>S.stop()),i.value=null);const x=c.value;x&&x.state!=="closed"&&x.close().catch(()=>{}),s.value=null,l.value=null,c.value=null,p.value=[],g.value=[],h.value=0,d.value=0,f.value=0}async function b(){if(r.value!=="idle")throw new bt("Recorder is already active");try{const y=await navigator.mediaDevices.getUserMedia({audio:!0});i.value=y;const x=new AudioContext;c.value=x;const S=x.createMediaStreamSource(y),A=x.createAnalyser();A.fftSize=2048,S.connect(A),l.value=A;const T=MediaRecorder.isTypeSupported("audio/webm;codecs=opus")?"audio/webm;codecs=opus":MediaRecorder.isTypeSupported("audio/webm")?"audio/webm":MediaRecorder.isTypeSupported("audio/mp4")?"audio/mp4":"",O=T?{mimeType:T}:{},N=new MediaRecorder(y,O);s.value=N,p.value=[],N.ondataavailable=z=>{z.data.size>0&&p.value.push(z.data)},N.start(100),r.value="recording"}catch(y){throw C(),y instanceof Error&&y.name==="NotAllowedError"?new bt("Microphone permission denied"):y instanceof Error&&y.name==="NotFoundError"?new bt("No microphone found"):new bt(y instanceof Error?y.message:"Failed to start recording")}}function k(){return new Promise((y,x)=>{const S=s.value;if(!S||r.value!=="recording"){x(new bt("No active recording"));return}r.value="processing",S.onstop=()=>{const A=new Blob(p.value,{type:S.mimeType||"audio/webm"});C(),r.value="idle",y(A)},S.onerror=()=>{C(),r.value="idle",x(new bt("Recording failed"))},S.stop()})}function m(y){let x=0;for(let S=0;S<y.length;S+=1){const A=(y[S]??128)/128-1;x+=A*A}return Math.sqrt(x/y.length)}function v(){const y=a.value;if(!y)return;const x=y.getContext("2d");if(!x)return;const S=y.getBoundingClientRect(),A=window.devicePixelRatio||1;(y.width!==S.width*A||y.height!==S.height*A)&&(y.width=S.width*A,y.height=S.height*A,x.scale(A,A));const T=2,N=T+1,z=Math.floor(S.width/N)+2;if(l.value&&r.value==="recording"){g.value.length===0&&(g.value=Array.from({length:z},()=>0)),f.value<1&&(f.value=Math.min(1,f.value+.03)),h.value+=1/3;const U=l.value.fftSize,M=new Uint8Array(U);l.value.getByteTimeDomainData(M);const D=m(M),Y=D>d.value?.12:.08;d.value+=(D-d.value)*Y,h.value>=N&&(h.value-=N,g.value.push(d.value),g.value.length>z&&(g.value=g.value.slice(-z)))}x.clearRect(0,0,S.width,S.height);const F=window.getComputedStyle(y);x.fillStyle=F.color,x.globalAlpha=f.value;const Z=S.height/2,_=S.height/2-2,R=12;for(let U=0;U<g.value.length;U+=1){const M=g.value[U]??0,D=Math.min(M*4,1),ae=Math.max(2,D*_*2),$=S.width-(g.value.length-U)*N-h.value,Y=Z-ae/2;if($+T<=0||$>=S.width)continue;let H=1;$<R?H=Math.max(0,$/R):$>S.width-R&&(H=Math.max(0,(S.width-$)/R)),x.globalAlpha=f.value*H,x.fillRect($,Y,T,ae)}u.value=requestAnimationFrame(v)}return t.watch(r,()=>{u.value!==null&&(cancelAnimationFrame(u.value),u.value=null),u.value=requestAnimationFrame(v)},{immediate:!0}),t.onBeforeUnmount(()=>{C()}),n({get state(){return r.value},start:b,stop:k,dispose:C}),(y,x)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"",class:"cpk:w-full cpk:px-5 cpk:py-3"},t.unref(o)),[t.createElementVNode("canvas",{ref_key:"canvasRef",ref:a,class:"cpk:block cpk:h-[26px] cpk:w-full"},null,512)],16))}}),Vn=t.defineComponent({__name:"InlineFeatureWarning",props:{featureName:{}},setup(e){const n={padding:"8px 12px",backgroundColor:"#fffbeb",border:"1px solid #fbbf24",borderRadius:"6px",fontSize:"13px",color:"#92400e",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif"},o={color:"#b45309",textDecoration:"underline"};return(a,r)=>(t.openBlock(),t.createElementBlock("div",{style:n,"data-testid":"copilot-inline-feature-warning"},[t.createTextVNode(' ⚠ The "'+t.toDisplayString(e.featureName)+'" feature requires a CopilotKit license. ',1),t.createElementVNode("a",{href:"https://copilotkit.ai/pricing",target:"_blank",rel:"noopener noreferrer",style:o}," Get one at copilotkit.ai/pricing ")]))}});var ns=(e=>(e.OnMessagesChanged="OnMessagesChanged",e.OnStateChanged="OnStateChanged",e.OnRunStatusChanged="OnRunStatusChanged",e))(ns||{});const jd=["OnMessagesChanged","OnStateChanged","OnRunStatusChanged"];function rn(e={}){const n=e.threadId!==void 0,o=e.runtimeAgentId!==void 0,a=e.agentId!==void 0;if(n&&!o)throw new Error('useAgent: `threadId` requires `runtimeAgentId`. A threadId is written onto a single agent, but an agent resolved by agentId alone is shared, so scoping a thread to it would clobber other useAgent callers. Pass a distinct local `agentId` and the runtime agent to route to, e.g. useAgent({ agentId: "chat-1", runtimeAgentId: "assistant", threadId }).');if(o&&!n)throw new Error("useAgent: `runtimeAgentId` requires `threadId`. A proxied agent exists to scope a thread to a private instance; without a threadId it behaves like the shared agent while adding a registration and a local agentId to keep unique. Either pass the thread, or bind to the agent directly with useAgent({ agentId }).");if(o&&!a)throw new Error(`useAgent: \`runtimeAgentId\` requires an explicit \`agentId\`. The proxied agent is registered under \`agentId\`, and the usual fallbacks (chat configuration, then "${G.DEFAULT_AGENT_ID}") name agents that already exist — registering over one throws or shadows it. Pick a local id for this hook, e.g. useAgent({ agentId: "chat-1", runtimeAgentId: "assistant", threadId }).`);const r=o,s=Re(),i=t.computed(()=>t.toValue(e.agentId)??s.value?.agentId??G.DEFAULT_AGENT_ID),l=t.computed(()=>r?t.toValue(e.runtimeAgentId):void 0),c=t.computed(()=>t.toValue(e.threadId)??(s.value?.hasExplicitThreadId?s.value.threadId:void 0)),{copilotkit:u}=Ve(),p=t.computed(()=>e.updates??jd),g=t.computed(()=>u.value.defaultThrottleMs),h=t.computed(()=>t.toValue(e.throttleMs)),d=t.shallowRef(null),f=t.shallowRef(null),C=new Map,b=(v,y,x,S)=>{const A=new ie.ProxiedCopilotRuntimeAgent({runtimeUrl:y,agentId:v,transport:x,runtimeMode:"pending"});return A.headers={...S},A},k=t.shallowRef(null);r&&t.watch([i,l,()=>u.value],([v,y],x,S)=>{const{agent:A,unregister:T}=u.value.registerProxiedAgent({agentId:v,runtimeAgentId:y});C.delete(v),k.value=A,S(()=>{T(),k.value=null})},{immediate:!0});const m=()=>{const v=i.value,y=u.value;if(r){const N=k.value;if(N){C.delete(v);const Z=d.value===N;d.value=N,f.value=N,Z&&t.triggerRef(d);return}const z=C.get(v);if(z){z.headers={...y.headers},d.value=z,f.value=z;return}const F=new ie.ProxiedCopilotRuntimeAgent({runtimeUrl:y.runtimeUrl,agentId:v,runtimeAgentId:l.value,transport:y.runtimeTransport,runtimeMode:"pending"});F.headers={...y.headers},C.set(v,F),d.value=F,f.value=F;return}const x=y.getAgent(v);if(x){C.delete(v);const N=d.value===x;d.value=x,f.value=x,N&&t.triggerRef(d);return}const S=y.runtimeUrl!==void 0,A=y.runtimeConnectionStatus;if(S&&(A===ie.CopilotKitCoreRuntimeConnectionStatus.Disconnected||A===ie.CopilotKitCoreRuntimeConnectionStatus.Connecting||A===ie.CopilotKitCoreRuntimeConnectionStatus.Error)){const N=C.get(v);if(N){N.headers={...y.headers},d.value=N,f.value=N;return}const z=b(v,y.runtimeUrl,y.runtimeTransport,y.headers);C.set(v,z),d.value=z,f.value=z;return}const T=Object.keys(y.agents??{}),O=S?`runtimeUrl=${y.runtimeUrl}`:"no runtimeUrl";throw new Error(`useAgent: Agent '${v}' not found after runtime sync (${O}). `+(T.length?`Known agents: [${T.join(", ")}]`:"No agents registered.")+" Verify your runtime /info and/or agents__unsafe_dev_only.")};return t.watch([i,k,()=>u.value.agents,()=>u.value.runtimeConnectionStatus,()=>u.value.runtimeUrl,()=>u.value.runtimeTransport,()=>JSON.stringify(Object.entries(u.value.headers??{}).sort(([v],[y])=>v.localeCompare(y)))],m,{immediate:!0}),t.watch([()=>d.value,c],([v,y])=>{!v||!y||(v.threadId=y)},{immediate:!0}),t.watch([f,()=>JSON.stringify(Object.entries(u.value.headers??{}).sort(([v],[y])=>v.localeCompare(y)))],([v])=>{ie.ɵisHttpAgent(v)&&u.value.applyHeadersToAgent(v)},{immediate:!0}),t.watch([f,p,h,g],([v,y],x,S)=>{const A=y;if(!v||A.length===0)return;let T=!0,O=!1;const N=()=>{T&&(O||(O=!0,queueMicrotask(()=>{O=!1,T&&t.triggerRef(d)})))},z={};A.includes("OnMessagesChanged")&&(z.onMessagesChanged=()=>{T&&t.triggerRef(d)}),A.includes("OnStateChanged")&&(z.onStateChanged=N),A.includes("OnRunStatusChanged")&&(z.onRunInitialized=N,z.onRunFinalized=N,z.onRunFailed=N,z.onRunErrorEvent=N);const F=u.value.subscribeToAgentWithOptions(v,z,{throttleMs:t.toValue(e.throttleMs)});S(()=>{T=!1,F.unsubscribe()})},{immediate:!0}),{agent:d}}function os(e={}){const{copilotkit:n}=Ve(),o=Re(),a=t.computed(()=>t.toValue(e.agentId)??o.value?.agentId??G.DEFAULT_AGENT_ID),r=t.ref([]),s=t.ref(!1),i=()=>{const u=n.value.getSuggestions(a.value);r.value=u.suggestions,s.value=u.isLoading};return t.watch([()=>n.value,a],()=>i(),{immediate:!0}),t.watch([()=>n.value,a],(u,p,g)=>{const h=n.value,d=a.value,f=h.subscribe({onSuggestionsChanged:({agentId:C,suggestions:b})=>{if(C!==d)return;r.value=b;const k=h.getSuggestions(d);s.value=k.isLoading},onSuggestionsStartedLoading:({agentId:C})=>{C===d&&(s.value=!0)},onSuggestionsFinishedLoading:({agentId:C})=>{C===d&&(s.value=!1)},onSuggestionsConfigChanged:()=>{const C=h.getSuggestions(d);r.value=C.suggestions,s.value=C.isLoading}});g(()=>f.unsubscribe())},{immediate:!0}),{suggestions:r,isLoading:s,reloadSuggestions:()=>{n.value.reloadSuggestions(a.value)},clearSuggestions:()=>{n.value.clearSuggestions(a.value)}}}function as(e){const n=t.shallowRef([]),o=t.ref(!1),a=t.ref(null),r=t.ref(null),s=t.ref(t.toValue(e.config)),i=t.shallowRef(n.value),l=t.computed(()=>s.value?.enabled??!1);t.watch(()=>t.toValue(e.config),m=>{s.value=m},{immediate:!0});const c=m=>{n.value=m,i.value=m},u=m=>{c(m(i.value))};async function p(m){const v=s.value,y=v?.accept??"*/*",x=v?.maxSize??20*1024*1024,S=m.filter(T=>!G.matchesAcceptFilter(T,y));for(const T of S)v?.onUploadFailed?.({reason:"invalid-type",file:T,message:`File "${T.name}" is not accepted. Supported types: ${y}`});const A=m.filter(T=>G.matchesAcceptFilter(T,y));for(const T of A){if(G.exceedsMaxSize(T,x)){v?.onUploadFailed?.({reason:"file-too-large",file:T,message:`File "${T.name}" exceeds the maximum size of ${G.formatFileSize(x)}`});continue}const O=G.getModalityFromMimeType(T.type),N=G.randomUUID();u(z=>[...z,{id:N,type:O,source:{type:"data",value:"",mimeType:T.type},filename:T.name,size:T.size,status:"uploading"}]);try{let z,F;if(v?.onUpload){const _=await v.onUpload(T),{metadata:R,...U}=_;z=U,F=R}else z={type:"data",value:await G.readFileAsBase64(T),mimeType:T.type};let Z;O==="video"&&(Z=await G.generateVideoThumbnail(T)),u(_=>_.map(R=>R.id===N?{...R,source:z,status:"ready",thumbnail:Z,metadata:F}:R))}catch(z){u(F=>F.filter(Z=>Z.id!==N)),console.error(`[CopilotKit] Failed to upload "${T.name}":`,z),v?.onUploadFailed?.({reason:"upload-failed",file:T,message:z instanceof Error?z.message:`Failed to upload "${T.name}"`})}}}async function g(m){const v=m.target;v?.files?.length&&(await p(Array.from(v.files)),v&&(v.value=""))}function h(m){l.value&&(m.preventDefault(),m.stopPropagation(),o.value=!0)}function d(m){m.preventDefault(),m.stopPropagation(),o.value=!1}async function f(m){if(m.preventDefault(),m.stopPropagation(),o.value=!1,!l.value)return;const v=Array.from(m.dataTransfer?.files??[]);v.length>0&&await p(v)}function C(m){u(v=>v.filter(y=>y.id!==m))}function b(){const m=i.value.filter(v=>v.status==="ready");return m.length===0||(u(v=>v.filter(y=>y.status!=="ready")),a.value&&(a.value.value="")),m}async function k(m){if(!l.value)return;const v=m.target;if(!v||!r.value?.contains(v))return;const y=s.value?.accept??"*/*",S=Array.from(m.clipboardData?.items??[]).filter(T=>{if(T.kind!=="file")return!1;const O=T.getAsFile();return O!==null&&G.matchesAcceptFilter(O,y)});if(S.length===0)return;m.preventDefault();const A=S.map(T=>T.getAsFile()).filter(T=>T!==null);await p(A)}return t.onMounted(()=>{typeof document<"u"&&document.addEventListener("paste",k)}),t.onBeforeUnmount(()=>{typeof document<"u"&&document.removeEventListener("paste",k)}),{attachments:n,enabled:l,dragOver:o,fileInputRef:a,containerRef:r,processFiles:p,handleFileUpload:g,handleDragOver:h,handleDragLeave:d,handleDrop:f,removeAttachment:C,consumeAttachments:b}}async function Zd(e){return await new Promise((n,o)=>{const a=new FileReader;a.onloadend=()=>{const r=a.result;n(r.split(",")[1]??"")},a.addEventListener("error",()=>o(new Error("Failed to read audio data"))),a.readAsDataURL(e)})}function Hd(e){return typeof e=="object"&&e!==null&&"error"in e&&"message"in e&&typeof e.error=="string"&&typeof e.message=="string"}function Gd(e){return{code:e.error,message:e.message,retryable:e.retryable??!1}}class kt extends Error{info;constructor(n){super(n.message),this.name="TranscriptionError",this.info=n}}async function Wd(e,n,o="recording.webm"){const a=e.runtimeUrl;if(!a)throw new kt({code:G.TranscriptionErrorCode.INVALID_REQUEST,message:"Runtime URL is not configured",retryable:!1});const r={...e.headers};let s;try{if(e.runtimeTransport==="single"){const i=await Zd(n);r["Content-Type"]="application/json",s=await fetch(a,{method:"POST",headers:r,body:JSON.stringify({method:"transcribe",body:{audio:i,mimeType:n.type||"audio/webm",filename:o}})})}else{delete r["Content-Type"];const i=new FormData;i.append("audio",n,o),s=await fetch(`${a}/transcribe`,{method:"POST",headers:r,body:i})}}catch(i){throw new kt({code:G.TranscriptionErrorCode.NETWORK_ERROR,message:i instanceof Error?i.message:"Network request failed",retryable:!0})}if(!s.ok){let i;try{i=await s.json()}catch{throw new kt({code:G.TranscriptionErrorCode.PROVIDER_ERROR,message:`HTTP ${s.status}: ${s.statusText}`,retryable:s.status>=500})}throw Hd(i)?new kt(Gd(i)):new kt({code:G.TranscriptionErrorCode.PROVIDER_ERROR,message:typeof i=="object"&&i!==null&&"message"in i?String(i.message):"Transcription failed",retryable:s.status>=500})}return await s.json()}function rs(){const e=typeof window<"u"?window.innerHeight:0,n=t.ref(!1),o=t.ref(0),a=t.ref(e),r=t.ref(e),s=()=>{if(typeof window>"u")return;const l=window.visualViewport;if(!l)return;const c=window.innerHeight,u=l.height,p=Math.max(0,c-u),g=p>150;o.value=p,n.value=g,a.value=u,r.value=c};let i=null;return t.onMounted(()=>{typeof window>"u"||(i=window.visualViewport??null,i&&(s(),i.addEventListener("resize",s),i.addEventListener("scroll",s)))}),t.onBeforeUnmount(()=>{i&&(i.removeEventListener("resize",s),i.removeEventListener("scroll",s),i=null)}),{isKeyboardOpen:t.readonly(n),keyboardHeight:t.readonly(o),availableHeight:t.readonly(a),viewportHeight:t.readonly(r)}}const Kd={id:null,sendNonce:0},ss=Symbol("LastUserMessage");function qd(){return t.ref({...Kd})}function Jd({scrollRef:e,contentRef:n,spacerRef:o,topOffset:a=16}){const r=t.inject(ss,qd(),!0);let s=-1,i=null,l=null;function c(){i!==null&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(i),i=null,l?.disconnect(),l=null}t.watch([()=>r.value.id,()=>r.value.sendNonce,e,n,o,()=>a],([u,p,g,h,d],f,C)=>{if(C(c),p===s||(s=p,!u)||!g||!h||!d)return;const b=typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(u):u.replace(/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g,"\\$&"),k=h.querySelector(`[data-message-id="${b}"]`);if(!k)return;const m=g.clientHeight,v=k.getBoundingClientRect().height,y=parseFloat(getComputedStyle(k).paddingTop)||0,x=Math.max(0,v-y),S=Math.max(0,m-x-a);d.style.height=`${S}px`,typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(()=>{const A=xo(k,g)+y-a;g.scrollTo({top:Math.max(0,A),behavior:"smooth"})})),typeof ResizeObserver<"u"&&(l=new ResizeObserver(()=>{if(!h||!d||!g)return;const A=h.getBoundingClientRect().height,T=xo(k,h),O=A-T-v,N=Math.max(0,S-O);d.style.height=`${N}px`}),l.observe(h))},{immediate:!0,flush:"post"})}function xo(e,n){const o=e.getBoundingClientRect(),a=n.getBoundingClientRect();return o.top-a.top+n.scrollTop}const Xd={class:"cpk:pointer-events-auto cpk:mx-auto cpk:max-w-3xl cpk:px-4 cpk:py-0 cpk:@3xl:px-0 cpk:[div[data-sidebar-chat]_&]:px-8 cpk:[div[data-popup-chat]_&]:px-4"},Yd=["data-layout"],Qd=["data-layout"],ep=["aria-label","disabled"],tp={key:0,class:"cpk:my-1 cpk:h-px cpk:bg-border cpk:dark:bg-[#333333]"},np=["onClick"],op={key:1,class:"cpk:flex cpk:w-full cpk:items-center cpk:justify-center cpk:px-5 cpk:py-3"},ap=["value","placeholder","disabled"],rp={key:0,class:"cpk:px-3 cpk:py-2 cpk:text-sm cpk:text-muted-foreground"},sp=["data-slash-index","aria-selected","data-active","onMouseenter","onMousedown"],ip=["aria-label","disabled"],lp=["aria-label","disabled"],cp=["aria-label","disabled"],up={class:"cpk:mr-[10px]"},dp=["disabled"],pp={"data-testid":"copilot-chat-input-disclaimer",class:"cpk:mx-auto cpk:max-w-3xl cpk:px-4 cpk:py-3 cpk:text-center cpk:text-xs cpk:text-muted-foreground"},Rt=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatInput",props:{modelValue:{},disabled:{type:Boolean,default:!1},placeholder:{},autoFocus:{type:Boolean,default:!0},clearOnSubmit:{type:Boolean,default:!0},mode:{default:"input"},toolsMenu:{default:()=>[]},isRunning:{type:Boolean,default:!1},positioning:{default:"static"},keyboardHeight:{default:0},showDisclaimer:{type:Boolean,default:void 0},maxRows:{default:5},bottomAnchored:{type:Boolean,default:!1},onSubmitMessage:{},onStop:{},onAddFile:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},onFinishTranscribeWithAudio:{}},emits:["update:modelValue","submit-message","stop","add-file","start-transcribe","cancel-transcribe","finish-transcribe","finish-transcribe-with-audio"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=Re(),i=t.ref(null),l=t.ref(null),c=t.ref(null),u=t.ref(null),p=t.ref(null),g=t.ref(null),h=t.ref(null),d=t.ref(null),f=t.ref(o.modelValue??""),C=t.ref(!1),b=t.ref("compact"),k=t.ref(null),m=t.ref(0),v=t.ref(null),y=t.ref(!1),x=t.ref({singleLineHeight:0,maxHeight:0,paddingLeft:0,paddingRight:0}),S=t.ref(null),A=t.ref(!1),T=t.ref(null),O=t.ref(null),N=t.ref(!1),z=t.ref(!1);let F=null,Z=null;const _=t.computed(()=>o.modelValue!==void 0),R=t.computed(()=>_.value?o.modelValue??"":f.value),U=t.computed(()=>s.value?.labels??ot),M=t.computed(()=>o.placeholder??U.value.chatInputPlaceholder),D=t.computed(()=>o.mode==="input"&&b.value==="expanded"),ae=t.computed(()=>o.mode!=="transcribe"&&o.isRunning),$=t.computed(()=>o.showDisclaimer??o.positioning==="absolute"),Y=t.computed(()=>typeof o.onSubmitMessage=="function"),H=t.computed(()=>typeof o.onStop=="function"),Q=t.computed(()=>typeof o.onAddFile=="function"),ce=t.computed(()=>typeof o.onStartTranscribe=="function"),X=t.computed(()=>typeof o.onCancelTranscribe=="function"),ve=t.computed(()=>typeof o.onFinishTranscribe=="function"||typeof o.onFinishTranscribeWithAudio=="function"),Ae=t.computed(()=>o.mode==="input"&&!o.disabled&&Y.value&&R.value.trim().length>0),Ne=t.computed(()=>ae.value?!H.value:!Ae.value),Ye=t.computed(()=>[o.positioning==="absolute"&&"cpk:absolute cpk:bottom-0 cpk:left-0 cpk:right-0 cpk:z-20 cpk:pointer-events-none",r.class]),Qe=t.computed(()=>{const w={...r};return delete w.class,w});function Pe(w){return Array.isArray(w.items)}function et(){return Q.value?{label:U.value.chatInputToolbarAddButtonLabel,action:()=>a("add-file")}:null}function Je(){const w=[],B=et();if(B&&w.push(B),o.toolsMenu.length>0){w.length>0&&w.push("-");for(const K of o.toolsMenu){if(K==="-"){if(w.length===0||w[w.length-1]==="-")continue;w.push("-");continue}w.push(K)}}for(;w.length>0&&w[w.length-1]==="-";)w.pop();return w}const Le=t.computed(()=>Je()),ke=t.computed(()=>Le.value.length>0);function V(w){const B=new Set,K=[],oe=Ce=>{for(const de of Ce)if(de!=="-"){if(Pe(de)&&de.items.length>0){oe(de.items);continue}!de.action||B.has(de.label)||(B.add(de.label),K.push(de))}};return oe(w),K}const re=t.computed(()=>V(Le.value));function Ie(w,B=0,K="root"){const oe=[];for(const[Ce,de]of w.entries()){const _e=`${K}-${Ce}`;if(de==="-"){oe.push({type:"separator",key:`sep-${_e}`});continue}if(Pe(de)&&de.items.length>0){oe.push({type:"label",key:`label-${_e}`,label:de.label,depth:B}),oe.push(...Ie(de.items,B+1,_e));continue}de.action&&oe.push({type:"item",key:`item-${_e}`,label:de.label,depth:B,action:de.action})}return oe}const Xe=t.computed(()=>Ie(Le.value)),Ee=t.computed(()=>{if(k.value===null||re.value.length===0)return[];const w=k.value.trim().toLowerCase();if(w.length===0)return re.value;const B=[],K=[];for(const oe of re.value){const Ce=oe.label.toLowerCase();if(Ce.startsWith(w)){B.push(oe);continue}Ce.includes(w)&&K.push(oe)}return[...B,...K]}),lt=t.computed(()=>k.value!==null&&re.value.length>0);function ct(w){_.value||(f.value=w),a("update:modelValue",w)}function ut(){ct("")}function gt(w){if(re.value.length===0){k.value=null;return}if(w.startsWith("/")){const B=w.split(/\r?\n/,1)[0]??"";k.value=B.slice(1);return}k.value=null}function L(w){ut(),w.action?.(),k.value=null,m.value=0,requestAnimationFrame(()=>{l.value?.focus()})}function fe(){if(o.mode!=="input"||o.disabled||!Y.value)return;const B=(l.value?.value??R.value).trim();B&&(a("submit-message",B),o.clearOnSubmit&&ut(),l.value?.focus())}function pe(w){const B=w.target.value;ct(B),gt(B)}function Ue(){if(ae.value){H.value&&a("stop");return}fe()}function Ze(w){if(!o.disabled&&!(C.value||w.isComposing||w.keyCode===229)){if(k.value!==null&&o.mode==="input"){if(w.key==="ArrowDown"){Ee.value.length>0&&(w.preventDefault(),m.value=m.value<0?0:(m.value+1)%Ee.value.length);return}if(w.key==="ArrowUp"){Ee.value.length>0&&(w.preventDefault(),m.value<0?m.value=Ee.value.length-1:m.value=m.value<=0?Ee.value.length-1:m.value-1);return}if(w.key==="Enter"){const B=m.value>=0?Ee.value[m.value]:void 0;if(B){w.preventDefault(),L(B);return}}if(w.key==="Escape"){w.preventDefault(),k.value=null;return}}if(w.key==="Enter"&&!w.shiftKey&&o.mode==="input"){if(w.preventDefault(),ae.value){H.value&&a("stop");return}fe()}}}function we(){!ke.value||o.mode==="transcribe"||o.disabled||(y.value=!y.value)}function Oe(){y.value=!1}function je(w){w(),Oe(),t.nextTick(()=>{l.value?.focus()})}async function Be(){const w=d.value;if(w&&w.state==="recording")try{const B=await w.stop();a("finish-transcribe-with-audio",B)}catch(B){console.error("Failed to stop recording:",B)}a("finish-transcribe")}function at(w){const B=w.target;!B||o.mode!=="input"||B.tagName==="BUTTON"||B.closest("button")||l.value?.focus()}function st(){const w=l.value;if(!w||C.value)return;const B=w.value,K=w.style.height;w.style.height="auto";const oe=window.getComputedStyle(w),Ce=parseFloat(oe.paddingLeft)||0,de=parseFloat(oe.paddingRight)||0,_e=parseFloat(oe.paddingTop)||0,He=parseFloat(oe.paddingBottom)||0;w.value="";const Ge=w.scrollHeight;w.value=B;const nt=(Ge-_e-He)*o.maxRows+_e+He;x.value={singleLineHeight:Ge,maxHeight:nt,paddingLeft:Ce,paddingRight:de},w.style.height=K,w.style.maxHeight=`${nt}px`}function Ft(){const w=l.value;if(!w)return 0;x.value.singleLineHeight===0&&st();const{maxHeight:B}=x.value;B&&(w.style.maxHeight=`${B}px`),w.style.height="auto";const K=w.scrollHeight;return w.style.height=`${B?Math.min(K,B):K}px`,K}function Fe(w){b.value!==w&&(A.value=!0,b.value=w)}function sn(w){const B=window.getComputedStyle(w);if(B.font?.trim())return B.font;if(B.fontSize&&B.fontFamily){const K=`${B.fontStyle} ${B.fontVariant} ${B.fontWeight} ${B.fontSize}/${B.lineHeight} ${B.fontFamily}`;if(K.trim())return K}return process.env.NODE_ENV!=="production"&&!N.value&&(N.value=!0,console.warn("[CopilotChatInput] Could not resolve textarea font for layout measurement. Text-width-based expansion will be skipped until the next container resize.")),null}function j(){const w=c.value,B=u.value,K=p.value;if(!w||!B||!K)return O.value=null,null;const oe=window.getComputedStyle(w),Ce=parseFloat(oe.paddingLeft)||0,de=parseFloat(oe.paddingRight)||0,_e=parseFloat(oe.columnGap)||0,He=w.clientWidth-Ce-de;if(He<=0)return O.value=null,null;const Ge=B.getBoundingClientRect().width,tt=K.getBoundingClientRect().width,nt=Math.max(He-Ge-tt-_e*2,0);if(nt<=0)return O.value=null,null;const We={compactWidth:nt};return O.value=We,We}function ne(){if(o.mode!=="input"){Fe("compact");return}if(typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 767px)").matches){st(),Ft(),Fe("expanded");return}const w=l.value;if(!w||!c.value||!u.value||!p.value)return;x.value.singleLineHeight===0&&st();const B=Ft(),K=x.value.singleLineHeight,oe=R.value.includes(`
66
57
  `),Ce=K>0?B>K+1:!1;let de=oe||Ce;if(!de){const _e=O.value??j();if(_e&&_e.compactWidth>0){const He=Math.max(_e.compactWidth-x.value.paddingLeft-x.value.paddingRight,0);if(He>0){const Ge=T.value??document.createElement("canvas");T.value||(T.value=Ge);const tt=Ge.getContext("2d");if(tt){const nt=sn(w);if(nt){tt.font=nt;const We=R.value.length>0?R.value.split(`
67
- `):[""];let wt=0;for(const Ke of We){const De=tt.measureText(Ke||" ").width;De>wt&&(wt=De)}wt>He&&(de=!0)}}else process.env.NODE_ENV!=="production"&&!z.value&&(z.value=!0,console.warn("[CopilotChatInput] canvas.getContext('2d') returned null. Text-width-based expansion will be skipped."))}}}Fe(de?"expanded":"compact")}function W(w){if(A.value){A.value=!1;return}w&&(O.value=null,N.value=!1,z.value=!1),S.value!==null&&cancelAnimationFrame(S.value),S.value=requestAnimationFrame(()=>{S.value=null,ne()})}return t.watch(()=>o.modelValue,w=>{_.value&&(f.value=w??"")}),t.watch(R,w=>{gt(w),ne()}),t.watch(re,()=>{re.value.length===0&&(k.value=null)}),t.watch([k,()=>Ee.value.length],([w,B])=>{w!==null&&w!==v.value&&B>0&&(m.value=0),v.value=w},{immediate:!0}),t.watch([k,Ee],()=>{if(k.value===null){m.value=0;return}if(Ee.value.length===0){m.value=-1;return}(m.value<0||m.value>=Ee.value.length)&&(m.value=0)},{immediate:!0}),t.watch(()=>o.mode,async w=>{w!=="input"&&(b.value="compact",k.value=null,Oe());const B=d.value;if(B){if(w==="transcribe"){try{await B.start()}catch(K){console.error(K)}return}if(B.state==="recording")try{await B.stop()}catch{}}},{immediate:!0}),t.watch(d,async w=>{if(!(!w||o.mode!=="transcribe")&&w.state==="idle")try{await w.start()}catch(B){console.error(B)}},{immediate:!0}),t.watch(m,async w=>{if(!lt.value||w<0)return;await t.nextTick(),g.value?.querySelector(`[data-slash-index="${w}"]`)?.scrollIntoView?.({block:"nearest"})}),t.watch(()=>o.disabled,w=>{w&&Oe()}),t.onMounted(()=>{if(o.autoFocus&&o.mode==="input"&&l.value?.focus(),ne(),typeof ResizeObserver<"u"){const w=new Set;c.value&&w.add(c.value),u.value&&w.add(u.value),p.value&&w.add(p.value),F=new ResizeObserver(B=>{const K=B.some(oe=>w.has(oe.target));W(K)}),c.value&&F.observe(c.value),u.value&&F.observe(u.value),p.value&&F.observe(p.value),l.value&&F.observe(l.value)}Z=w=>{if(!y.value)return;const B=w.target;B&&(h.value?.contains(B)||u.value?.contains(B)||Oe())},document.addEventListener("mousedown",Z)}),t.onBeforeUnmount(()=>{Z&&(document.removeEventListener("mousedown",Z),Z=null),F?.disconnect(),F=null,S.value!==null&&(cancelAnimationFrame(S.value),S.value=null)}),(w,B)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-chat-input-container",class:Ye.value,style:{transform:e.keyboardHeight>0?`translateY(-${e.keyboardHeight}px)`:void 0,transition:"transform 0.2s ease-out",...e.positioning==="absolute"||e.bottomAnchored?{paddingBottom:"var(--copilotkit-license-banner-offset, 0px)"}:{}}},Qe.value),[t.createElementVNode("div",Yd,[t.renderSlot(w.$slots,"layout",{mode:e.mode,isMultiline:D.value,value:R.value,disabled:e.disabled,placeholder:M.value,isProcessing:ae.value,sendDisabled:Ne.value,menuOpen:y.value,menuItems:Xe.value,onToggleMenu:we,onMenuAction:je,onUpdateValue:ct,onSubmit:fe,onKeydown:Ze,onSendClick:Ue,onStartTranscribe:()=>a("start-transcribe"),onCancelTranscribe:()=>a("cancel-transcribe"),onFinishTranscribe:Be},()=>[t.createElementVNode("div",{ref_key:"shellRef",ref:i,"data-testid":"copilot-chat-input-shell",class:"cpk:flex cpk:w-full cpk:cursor-text cpk:flex-col cpk:items-center cpk:justify-center cpk:overflow-visible cpk:rounded-[28px] cpk:bg-white cpk:bg-clip-padding cpk:shadow-[0_4px_4px_0_#0000000a,0_0_1px_0_#0000009e] cpk:contain-inline-size cpk:dark:bg-[#303030]","data-layout":D.value?"expanded":"compact",onClick:at},[t.createElementVNode("div",{ref_key:"gridRef",ref:c,class:t.normalizeClass(["cpk:grid cpk:w-full cpk:gap-x-3 cpk:gap-y-3 cpk:px-3 cpk:py-2",D.value?"cpk:grid-cols-[auto_minmax(0,1fr)_auto] cpk:grid-rows-[auto_auto]":"cpk:grid-cols-[auto_minmax(0,1fr)_auto] cpk:items-center"]),"data-layout":D.value?"expanded":"compact"},[t.createElementVNode("div",{ref_key:"addButtonContainerRef",ref:u,class:t.normalizeClass(["cpk:relative cpk:flex cpk:items-center cpk:col-start-1",D.value?"cpk:row-start-2":"cpk:row-start-1"])},[t.renderSlot(w.$slots,"add-menu-button",{disabled:e.disabled||e.mode==="transcribe"||!ke.value,menuOpen:y.value,toggleMenu:we,labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-add","aria-label":U.value.chatInputToolbarAddButtonLabel,disabled:e.disabled||e.mode==="transcribe"||!ke.value,class:"cpk:ml-1 cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:disabled:hover:bg-transparent cpk:disabled:hover:text-[#444444] cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF] cpk:dark:disabled:hover:bg-transparent cpk:dark:disabled:hover:text-[#CCCCCC]",onClick:t.withModifiers(we,["stop"])},[t.createVNode(t.unref(me.Plus),{class:"cpk:size-[20px]"})],8,tp)]),y.value&&ke.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"addMenuRef",ref:h,class:"cpk:absolute cpk:bottom-full cpk:left-0 cpk:z-30 cpk:mb-2 cpk:min-w-[220px] cpk:overflow-hidden cpk:rounded-lg cpk:border cpk:border-border cpk:bg-white cpk:shadow-lg cpk:dark:border-[#3a3a3a] cpk:dark:bg-[#1f1f1f]","data-testid":"copilot-chat-input-add-menu"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Xe.value,K=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:K.key},[K.type==="separator"?(t.openBlock(),t.createElementBlock("div",np)):K.type==="label"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"cpk:flex cpk:items-center cpk:gap-1 cpk:px-3 cpk:py-1.5 cpk:text-xs cpk:font-semibold cpk:text-muted-foreground",style:t.normalizeStyle({paddingLeft:`${12+K.depth*12}px`})},[t.createElementVNode("span",null,t.toDisplayString(K.label),1),t.createVNode(t.unref(me.ChevronRight),{class:"cpk:size-3"})],4)):(t.openBlock(),t.createElementBlock("button",{key:2,type:"button",role:"menuitem",class:"cpk:w-full cpk:px-3 cpk:py-2 cpk:text-left cpk:text-sm cpk:transition-colors cpk:hover:bg-muted cpk:dark:hover:bg-[#2f2f2f]",style:t.normalizeStyle({paddingLeft:`${12+K.depth*12}px`}),onClick:oe=>je(K.action)},t.toDisplayString(K.label),13,op))],64))),128))],512)):t.createCommentVNode("",!0)],2),t.createElementVNode("div",{class:t.normalizeClass(["cpk:relative cpk:flex cpk:min-h-[50px] cpk:min-w-0 cpk:flex-col cpk:justify-center",D.value?"cpk:col-span-3 cpk:row-start-1":"cpk:col-start-2 cpk:row-start-1"])},[e.mode==="transcribe"?t.renderSlot(w.$slots,"audio-recorder",{key:0},()=>[t.createVNode(ts,{ref_key:"audioRecorderRef",ref:d},null,512)]):e.mode==="processing"?(t.openBlock(),t.createElementBlock("div",ap,[t.createVNode(t.unref(me.Loader2),{class:"cpk:size-[26px] cpk:animate-spin cpk:text-muted-foreground"})])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.renderSlot(w.$slots,"text-area",{value:R.value,disabled:e.disabled,placeholder:M.value,onInput:pe,onKeydown:Ze,autoFocus:e.autoFocus,isExpanded:D.value,rows:1,labels:U.value},()=>[t.createElementVNode("textarea",{ref_key:"textareaRef",ref:l,"data-testid":"copilot-chat-input-textarea",value:R.value,placeholder:M.value,disabled:e.disabled,rows:"1",class:t.normalizeClass(["cpk:w-full cpk:bg-transparent cpk:py-3 cpk:text-[16px] cpk:font-normal cpk:leading-relaxed cpk:text-foreground cpk:antialiased cpk:outline-none cpk:placeholder:text-[#00000077] cpk:dark:placeholder:text-[#fffc]",D.value?"cpk:px-5":"cpk:pr-5"]),style:{overflow:"auto",resize:"none"},onInput:pe,onKeydown:Ze,onCompositionstart:B[0]||(B[0]=K=>C.value=!0),onCompositionend:B[1]||(B[1]=K=>C.value=!1)},null,42,rp)]),lt.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"slashMenuRef",ref:g,"data-testid":"copilot-slash-menu",role:"listbox","aria-label":"Slash commands",class:"cpk:absolute cpk:bottom-full cpk:left-0 cpk:right-0 cpk:z-30 cpk:mb-2 cpk:max-h-64 cpk:overflow-y-auto cpk:rounded-lg cpk:border cpk:border-border cpk:bg-white cpk:shadow-lg cpk:dark:border-[#3a3a3a] cpk:dark:bg-[#1f1f1f]",style:{maxHeight:"200px"}},[Ee.value.length===0?(t.openBlock(),t.createElementBlock("div",sp," No commands found ")):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(Ee.value,(K,oe)=>(t.openBlock(),t.createElementBlock("button",{key:`${K.label}-${oe}`,type:"button",role:"option","data-slash-index":oe,"aria-selected":oe===m.value,"data-active":oe===m.value?"true":void 0,class:t.normalizeClass(["cpk:w-full cpk:px-3 cpk:py-2 cpk:text-left cpk:text-sm cpk:transition-colors cpk:hover:bg-muted cpk:dark:hover:bg-[#2f2f2f]",oe===m.value?"cpk:bg-muted cpk:dark:bg-[#2f2f2f]":"cpk:bg-transparent"]),onMouseenter:Ce=>m.value=oe,onMousedown:t.withModifiers(Ce=>L(K),["prevent"])},t.toDisplayString(K.label),43,ip))),128))],512)):t.createCommentVNode("",!0)],64))],2),t.createElementVNode("div",{ref_key:"actionsContainerRef",ref:p,class:t.normalizeClass(["cpk:flex cpk:items-center cpk:justify-end cpk:gap-2",D.value?"cpk:col-start-3 cpk:row-start-2":"cpk:col-start-3 cpk:row-start-1"])},[e.mode==="transcribe"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[X.value||w.$slots["cancel-transcribe-button"]?t.renderSlot(w.$slots,"cancel-transcribe-button",{key:0,disabled:e.disabled,onClick:()=>a("cancel-transcribe"),labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-cancel-transcribe","aria-label":U.value.chatInputToolbarCancelTranscribeButtonLabel,disabled:e.disabled,class:"cpk:mr-2 cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF]",onClick:B[2]||(B[2]=K=>a("cancel-transcribe"))},[t.createVNode(t.unref(me.X),{class:"cpk:size-[18px]"})],8,lp)]):t.createCommentVNode("",!0),ve.value||w.$slots["finish-transcribe-button"]?t.renderSlot(w.$slots,"finish-transcribe-button",{key:1,disabled:e.disabled,onClick:Be,labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-finish-transcribe","aria-label":U.value.chatInputToolbarFinishTranscribeButtonLabel,disabled:e.disabled,class:"cpk:mr-[10px] cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF]",onClick:Be},[t.createVNode(t.unref(me.Check),{class:"cpk:size-[18px]"})],8,cp)]):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[ce.value||w.$slots["start-transcribe-button"]?t.renderSlot(w.$slots,"start-transcribe-button",{key:0,disabled:e.disabled,onClick:()=>a("start-transcribe"),labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-start-transcribe","aria-label":U.value.chatInputToolbarStartTranscribeButtonLabel,disabled:e.disabled,class:"cpk:mr-2 cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:disabled:hover:bg-transparent cpk:disabled:hover:text-[#444444] cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF] cpk:dark:disabled:hover:bg-transparent cpk:dark:disabled:hover:text-[#CCCCCC]",onClick:B[3]||(B[3]=K=>a("start-transcribe"))},[t.createVNode(t.unref(me.Mic),{class:"cpk:size-[18px]"})],8,up)]):t.createCommentVNode("",!0),t.renderSlot(w.$slots,"send-button",{disabled:Ne.value,isProcessing:ae.value,onClick:Ue},()=>[t.createElementVNode("div",dp,[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-send","aria-label":"Send message",disabled:Ne.value,class:"cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-black cpk:text-white cpk:transition-colors cpk:hover:opacity-70 cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:disabled:bg-[#00000014] cpk:disabled:text-[rgb(13,13,13)] cpk:disabled:hover:opacity-100 cpk:dark:bg-white cpk:dark:text-black cpk:dark:disabled:bg-[#454545] cpk:dark:disabled:text-white",onClick:Ue},[ae.value&&H.value?(t.openBlock(),t.createBlock(t.unref(me.Square),{key:0,class:"cpk:size-[18px] cpk:fill-current"})):(t.openBlock(),t.createBlock(t.unref(me.ArrowUp),{key:1,class:"cpk:size-[18px]"}))],8,pp)])])],64))],2)],10,ep)],8,Qd)])]),$.value?t.renderSlot(w.$slots,"disclaimer",{key:0,labels:U.value},()=>[t.createElementVNode("p",mp,t.toDisplayString(U.value.chatDisclaimerText),1)]):t.createCommentVNode("",!0)],16))}}),fp=["data-card-type"],hp={key:0,class:"cpk:absolute cpk:inset-0 cpk:flex cpk:items-center cpk:justify-center cpk:bg-black/40 cpk:z-10","data-testid":"copilot-chat-attachment-uploading-overlay"},gp=["onClick"],vp=["src","alt"],bp={key:1,class:"cpk:w-full cpk:h-full cpk:relative"},kp=["src","alt"],yp=["src"],Sp=["onClick"],wp={key:2,class:"cpk:flex cpk:flex-col cpk:gap-1 cpk:w-full"},Cp=["src"],Tp={key:0,class:"cpk:text-xs cpk:font-medium cpk:overflow-hidden cpk:text-ellipsis cpk:whitespace-nowrap"},xp=["onClick"],Ip={class:"cpk:w-8 cpk:h-8 cpk:rounded-md cpk:bg-primary cpk:text-primary-foreground cpk:flex cpk:items-center cpk:justify-center cpk:text-[10px] cpk:font-semibold cpk:shrink-0"},Ep={class:"cpk:flex cpk:flex-col cpk:min-w-0"},Rp={class:"cpk:text-xs cpk:font-medium cpk:break-all cpk:leading-tight","data-testid":"copilot-chat-attachment-document-filename"},Ap={key:0,class:"cpk:text-[11px] cpk:text-muted-foreground"},_p={key:2,class:"cpk:w-full cpk:h-full cpk:bg-muted-foreground/20","data-testid":"copilot-chat-attachment-placeholder"},$p=["onClick"],Mp=["src","alt"],Np=["src"],Op=["src","title"],zp={key:1,class:"cpk:w-[90vw] cpk:max-w-[800px] cpk:max-h-[90vh] cpk:overflow-auto cpk:rounded-lg cpk:bg-white cpk:dark:bg-gray-900 cpk:p-6"},Bp={key:0,class:"cpk:text-sm cpk:whitespace-pre-wrap cpk:wrap-break-word cpk:text-gray-800 cpk:dark:text-gray-200 cpk:font-mono cpk:m-0","data-testid":"copilot-chat-attachment-lightbox-document-text"},Fp=["src","title"],Dp={key:2,class:"cpk:flex cpk:flex-col cpk:items-center cpk:gap-4 cpk:p-8 cpk:rounded-lg cpk:bg-white cpk:dark:bg-gray-900","data-testid":"copilot-chat-attachment-lightbox-document-fallback"},Vp={class:"cpk:w-16 cpk:h-16 cpk:rounded-xl cpk:bg-primary cpk:text-primary-foreground cpk:flex cpk:items-center cpk:justify-center cpk:text-xl cpk:font-bold"},Pp={class:"cpk:text-center"},Lp={class:"cpk:text-base cpk:font-medium cpk:text-gray-800 cpk:dark:text-gray-200"},Up={class:"cpk:text-sm cpk:text-gray-500 cpk:dark:text-gray-400 cpk:mt-1"},yn=t.defineComponent({__name:"CopilotChatAttachmentQueue",props:{attachments:{default:()=>[]},className:{default:""}},emits:["remove-attachment"],setup(e,{emit:n}){const o=e,a=n,r=t.ref(null),s=t.ref(null),i=t.computed(()=>r.value!==null),l=t.computed(()=>{const b=r.value;if(!b||b.type!=="document")return!1;const k=b.source.mimeType;return d(k)||f(k)}),c=t.computed(()=>{const b=r.value;if(!b||b.type!=="document")return null;const k=b.source.mimeType;if(!f(k)||b.source.type!=="data")return null;try{return atob(b.source.value)}catch{return b.source.value}}),u=t.computed(()=>{const b=r.value;return!b||b.type!=="document"?null:b.source.type==="url"?b.source.value:s.value});t.watch(r,(b,k)=>{if(s.value&&(URL.revokeObjectURL(s.value),s.value=null),!b||b.type!=="document"||b.source.type!=="data"||typeof window>"u")return;const m=b.source.mimeType;if(!d(m)&&!f(m))return;const v=C(b.source.value,m);s.value=v},{immediate:!0}),t.watch(i,(b,k,m)=>{if(!b||typeof document>"u")return;const v=y=>{y.key==="Escape"&&g()};document.addEventListener("keydown",v),m(()=>{document.removeEventListener("keydown",v)})}),t.onBeforeUnmount(()=>{s.value&&(URL.revokeObjectURL(s.value),s.value=null)});function p(b){if(typeof document<"u"){const k=document;if(typeof k.startViewTransition=="function"){k.startViewTransition(()=>{r.value=b});return}}r.value=b}function g(){r.value=null}function h(b){return b.type==="image"||b.type==="video"?"cpk:w-[72px] cpk:h-[72px]":b.type==="audio"?"cpk:min-w-[200px] cpk:max-w-[280px] cpk:flex-col cpk:p-1 cpk:pr-8":"cpk:p-2 cpk:px-3 cpk:pr-8 cpk:max-w-[240px]"}function d(b){return!!b&&b.includes("pdf")}function f(b){return!!b&&b.startsWith("text/")}function C(b,k){try{const m=atob(b),v=new Uint8Array(m.length);for(let x=0;x<m.length;x+=1)v[x]=m.charCodeAt(x);const y=new Blob([v],{type:k||"application/octet-stream"});return URL.createObjectURL(y)}catch(m){return console.error("[CopilotKit] Failed to decode attachment data:",m),null}}return(b,k)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[o.attachments.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["cpk:flex cpk:flex-wrap cpk:gap-2 cpk:p-2",o.className]),"data-testid":"copilot-chat-attachment-queue"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.attachments,m=>(t.openBlock(),t.createElementBlock("div",{key:m.id,class:t.normalizeClass(["cpk:relative cpk:inline-flex cpk:rounded-lg cpk:overflow-hidden cpk:border cpk:border-border",h(m)]),"data-testid":"copilot-chat-attachment-item","data-card-type":m.type},[m.status==="uploading"?(t.openBlock(),t.createElementBlock("div",hp,[...k[1]||(k[1]=[t.createElementVNode("div",{class:"cpk:w-5 cpk:h-5 cpk:border-2 cpk:border-white cpk:border-t-transparent cpk:rounded-full cpk:animate-spin"},null,-1)])])):t.createCommentVNode("",!0),m.status==="ready"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[m.type==="image"?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"cpk:w-full cpk:h-full cpk:border-none cpk:bg-transparent cpk:p-0 cpk:cursor-pointer","data-testid":"copilot-chat-attachment-image-button",onClick:v=>p(m)},[t.createElementVNode("img",{src:t.unref(G.getSourceUrl)(m.source),alt:m.filename||"Image attachment",class:"cpk:w-full cpk:h-full cpk:object-cover","data-testid":"copilot-chat-attachment-image-thumbnail"},null,8,vp)],8,gp)):m.type==="video"?(t.openBlock(),t.createElementBlock("div",bp,[m.thumbnail?(t.openBlock(),t.createElementBlock("img",{key:0,src:m.thumbnail,alt:m.filename||"Video thumbnail",class:"cpk:w-full cpk:h-full cpk:object-cover","data-testid":"copilot-chat-attachment-video-thumbnail"},null,8,kp)):(t.openBlock(),t.createElementBlock("video",{key:1,src:t.unref(G.getSourceUrl)(m.source),preload:"metadata",muted:"",class:"cpk:w-full cpk:h-full cpk:object-cover","data-testid":"copilot-chat-attachment-video-fallback"},null,8,yp)),t.createElementVNode("button",{type:"button",class:"cpk:absolute cpk:inset-0 cpk:flex cpk:items-center cpk:justify-center cpk:z-10 cpk:cursor-pointer cpk:bg-black/20 cpk:border-none cpk:p-0","aria-label":"Play video","data-testid":"copilot-chat-attachment-video-play",onClick:v=>p(m)},[...k[2]||(k[2]=[t.createElementVNode("div",{class:"cpk:w-8 cpk:h-8 cpk:rounded-full cpk:bg-black/60 cpk:flex cpk:items-center cpk:justify-center cpk:text-white cpk:text-xs cpk:font-semibold"}," ▶ ",-1)])],8,Sp)])):m.type==="audio"?(t.openBlock(),t.createElementBlock("div",wp,[t.createElementVNode("audio",{src:t.unref(G.getSourceUrl)(m.source),controls:"",preload:"metadata",class:"cpk:w-full cpk:h-8","data-testid":"copilot-chat-attachment-audio-player"},null,8,Cp),m.filename?(t.openBlock(),t.createElementBlock("span",Tp,t.toDisplayString(m.filename),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("button",{key:3,type:"button",class:t.normalizeClass(["cpk:flex cpk:items-center cpk:gap-2 cpk:w-full cpk:border-none cpk:bg-transparent cpk:p-0 cpk:text-left",d(m.source.mimeType)||f(m.source.mimeType)?"cpk:cursor-pointer":"cpk:cursor-default"]),"data-testid":"copilot-chat-attachment-document-button",onClick:v=>(d(m.source.mimeType)||f(m.source.mimeType))&&p(m)},[t.createElementVNode("div",Ip,t.toDisplayString(t.unref(G.getDocumentIcon)(m.source.mimeType??"")),1),t.createElementVNode("div",Ep,[t.createElementVNode("span",Rp,t.toDisplayString(m.filename||"Document"),1),m.size!=null?(t.openBlock(),t.createElementBlock("span",Ap,t.toDisplayString(t.unref(G.formatFileSize)(m.size)),1)):t.createCommentVNode("",!0)])],10,xp))],64)):(t.openBlock(),t.createElementBlock("div",_p)),t.createElementVNode("button",{type:"button",class:"cpk:absolute cpk:bg-black/60 cpk:text-white cpk:border-none cpk:rounded-full cpk:w-5 cpk:h-5 cpk:flex cpk:items-center cpk:justify-center cpk:cursor-pointer cpk:text-[10px] cpk:z-20 cpk:top-1 cpk:right-1","aria-label":"Remove attachment",onClick:v=>a("remove-attachment",m.id)}," ✕ ",8,$p)],10,fp))),128))],2)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"cpk:fixed cpk:inset-0 cpk:z-[9999] cpk:flex cpk:items-center cpk:justify-center cpk:bg-black/80","data-testid":"copilot-chat-attachment-lightbox",onClick:g},[t.createElementVNode("button",{type:"button",class:"cpk:absolute cpk:top-4 cpk:right-4 cpk:text-white cpk:bg-white/10 cpk:hover:bg-white/20 cpk:rounded-full cpk:w-10 cpk:h-10 cpk:flex cpk:items-center cpk:justify-center cpk:cursor-pointer cpk:border-none","aria-label":"Close preview",onClick:t.withModifiers(g,["stop"])}," ✕ "),t.createElementVNode("div",{"data-testid":"copilot-chat-attachment-lightbox-content",onClick:k[0]||(k[0]=t.withModifiers(()=>{},["stop"]))},[r.value.type==="image"?(t.openBlock(),t.createElementBlock("img",{key:0,src:t.unref(G.getSourceUrl)(r.value.source),alt:r.value.filename||"Image attachment",class:"cpk:max-w-[90vw] cpk:max-h-[90vh] cpk:object-contain cpk:rounded-lg","data-testid":"copilot-chat-attachment-lightbox-image"},null,8,Mp)):r.value.type==="video"?(t.openBlock(),t.createElementBlock("video",{key:1,src:t.unref(G.getSourceUrl)(r.value.source),controls:"",autoplay:"",class:"cpk:max-w-[90vw] cpk:max-h-[90vh] cpk:rounded-lg","data-testid":"copilot-chat-attachment-lightbox-video"},null,8,Np)):r.value.type==="document"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[l.value&&d(r.value.source.mimeType)&&u.value?(t.openBlock(),t.createElementBlock("iframe",{key:0,src:u.value,title:r.value.filename||"PDF preview",class:"cpk:w-[90vw] cpk:h-[90vh] cpk:max-w-[1000px] cpk:rounded-lg cpk:bg-white","data-testid":"copilot-chat-attachment-lightbox-document-iframe"},null,8,Op)):l.value&&f(r.value.source.mimeType)?(t.openBlock(),t.createElementBlock("div",zp,[c.value!==null?(t.openBlock(),t.createElementBlock("pre",Bp,t.toDisplayString(c.value),1)):u.value?(t.openBlock(),t.createElementBlock("iframe",{key:1,src:u.value,title:r.value.filename||"Text preview",class:"cpk:w-full cpk:h-[80vh] cpk:border-none","data-testid":"copilot-chat-attachment-lightbox-document-iframe"},null,8,Fp)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("div",Dp,[t.createElementVNode("div",Vp,t.toDisplayString(t.unref(G.getDocumentIcon)(r.value.source.mimeType??"")),1),t.createElementVNode("div",Pp,[t.createElementVNode("div",Lp,t.toDisplayString(r.value.filename||"Document"),1),t.createElementVNode("div",Up,t.toDisplayString(r.value.source.mimeType||"Unknown type")+" "+t.toDisplayString(r.value.size!=null?` · ${t.unref(G.formatFileSize)(r.value.size)}`:""),1)]),k[3]||(k[3]=t.createElementVNode("div",{class:"cpk:text-xs cpk:text-gray-400 cpk:dark:text-gray-500"}," No preview available for this file type ",-1))]))],64)):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)]))],64))}}),jp=["data-message-id"],Zp=["aria-expanded"],Hp={class:"cpk:font-medium"},Gp={key:0,class:"cpk:inline-flex cpk:items-center cpk:ml-1"},Wp={class:"cpk:overflow-hidden"},Kp={key:0,class:"cpk:pb-2 cpk:pt-1"},qp={class:"cpk:text-sm cpk:text-muted-foreground"},Jp={key:0,class:"cpk:inline-flex cpk:items-center cpk:ml-1 cpk:align-middle"},is=t.defineComponent({__name:"CopilotChatReasoningMessage",props:{message:{},messages:{default:()=>[]},isRunning:{type:Boolean,default:!1}},setup(e){const n=e;function o(b){if(b<1)return"a few seconds";if(b<60)return`${Math.round(b)} seconds`;const k=Math.floor(b/60),m=Math.round(b%60);return m===0?`${k} minute${k>1?"s":""}`:`${k}m ${m}s`}const a=t.computed(()=>typeof n.message.content=="string"?n.message.content:""),r=t.computed(()=>a.value.length>0),s=t.computed(()=>n.messages[n.messages.length-1]?.id===n.message.id),i=t.computed(()=>!!(n.isRunning&&s.value)),l=t.ref(0),c=t.ref(i.value),u=t.ref(!1);let p=null,g=null;function h(){g&&(clearInterval(g),g=null)}function d(){p!==null&&(l.value=(Date.now()-p)/1e3)}t.watch(i,b=>{if(b){p===null&&(p=Date.now()),h(),g=setInterval(d,1e3),u.value=!1,c.value=!0;return}h(),d(),u.value||(c.value=!1)},{immediate:!0}),t.onBeforeUnmount(()=>{h()});const f=t.computed(()=>i.value?"Thinking…":`Thought for ${o(l.value)}`);function C(){r.value&&(u.value=!0,c.value=!c.value)}return(b,k)=>(t.openBlock(),t.createElementBlock("div",{"data-copilotkit":"",class:"cpk:my-1","data-message-id":e.message.id},[t.renderSlot(b.$slots,"layout",{message:e.message,messages:e.messages,isRunning:e.isRunning,header:{isOpen:c.value,label:f.value,hasContent:r.value,isStreaming:i.value,onClick:r.value?C:void 0},contentView:{isStreaming:i.value,hasContent:r.value,content:a.value},toggle:{isOpen:c.value,contentView:{isStreaming:i.value,hasContent:r.value,content:a.value}}},()=>[t.renderSlot(b.$slots,"header",{isOpen:c.value,label:f.value,hasContent:r.value,isStreaming:i.value,onClick:r.value?C:void 0},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(["cpk:inline-flex cpk:items-center cpk:gap-1 cpk:py-1 cpk:text-sm cpk:text-muted-foreground cpk:transition-colors cpk:select-none",r.value?"cpk:hover:text-foreground cpk:cursor-pointer":"cpk:cursor-default"]),"aria-expanded":r.value?c.value:void 0,onClick:k[0]||(k[0]=m=>r.value?C():void 0)},[t.createElementVNode("span",Hp,t.toDisplayString(f.value),1),i.value&&!r.value?(t.openBlock(),t.createElementBlock("span",Gp,[...k[1]||(k[1]=[t.createElementVNode("span",{class:"cpk:w-1.5 cpk:h-1.5 cpk:rounded-full cpk:bg-muted-foreground cpk:animate-pulse"},null,-1)])])):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(me.ChevronRight),{key:1,class:t.normalizeClass(["cpk:size-3.5 cpk:shrink-0 cpk:transition-transform cpk:duration-200",{"cpk:rotate-90":c.value}])},null,8,["class"])):t.createCommentVNode("",!0)],10,Zp)]),t.renderSlot(b.$slots,"toggle",{isOpen:c.value,contentView:{isStreaming:i.value,hasContent:r.value,content:a.value}},()=>[t.createElementVNode("div",{class:"cpk:grid cpk:transition-[grid-template-rows] cpk:duration-200 cpk:ease-in-out",style:t.normalizeStyle({gridTemplateRows:c.value?"1fr":"0fr"})},[t.createElementVNode("div",Wp,[t.renderSlot(b.$slots,"content-view",{isStreaming:i.value,hasContent:r.value,content:a.value},()=>[r.value||i.value?(t.openBlock(),t.createElementBlock("div",Kp,[t.createElementVNode("div",qp,[t.createVNode(t.unref(Mo.StreamMarkdown),{content:a.value},null,8,["content"]),i.value&&r.value?(t.openBlock(),t.createElementBlock("span",Jp,[...k[2]||(k[2]=[t.createElementVNode("span",{class:"cpk:w-2 cpk:h-2 cpk:rounded-full cpk:bg-muted-foreground cpk:animate-pulse-cursor"},null,-1)])])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)])])],4)])])],8,jp))}}),Xp=["data-message-id"],Yp=["data-multiline"],Qp={class:"cpk:w-full cpk:bg-transparent cpk:flex cpk:items-center cpk:justify-end cpk:-mr-[5px] cpk:mt-[4px] cpk:invisible cpk:group-hover:visible"},em={class:"cpk:flex cpk:items-center cpk:gap-1 cpk:justify-end"},tm=["aria-label","title"],nm=["aria-label","title"],om={class:"cpk:flex cpk:items-center cpk:gap-1"},am=["disabled"],rm={class:"cpk:text-sm cpk:text-muted-foreground cpk:px-0 cpk:font-medium"},sm=["disabled"],ls=t.defineComponent({__name:"CopilotChatUserMessage",props:{message:{},branchIndex:{default:0},numberOfBranches:{default:1},onEditMessage:{},onSwitchToBranch:{}},emits:["edit-message","switch-to-branch"],setup(e,{emit:n}){const o=e,a=n,r=Re(),s=t.computed(()=>r.value?.labels??ot),i=t.ref(!1);let l=null;const c=["cpk:inline-flex cpk:h-8 cpk:w-8 cpk:items-center cpk:justify-center cpk:rounded-md cpk:p-0","cpk:cursor-pointer cpk:text-[rgb(93,93,93)] cpk:transition-colors cpk:hover:bg-[#E8E8E8]","cpk:hover:text-[rgb(93,93,93)] cpk:dark:text-[rgb(243,243,243)] cpk:dark:hover:bg-[#303030]","cpk:dark:hover:text-[rgb(243,243,243)] cpk:disabled:pointer-events-none cpk:disabled:opacity-50"].join(" ");function u(S){return S?typeof S=="string"?S:S.map(A=>A&&typeof A=="object"&&"type"in A&&A.type==="text"&&typeof A.text=="string"?A.text:"").filter(A=>A.length>0).join(`
58
+ `):[""];let wt=0;for(const Ke of We){const De=tt.measureText(Ke||" ").width;De>wt&&(wt=De)}wt>He&&(de=!0)}}else process.env.NODE_ENV!=="production"&&!z.value&&(z.value=!0,console.warn("[CopilotChatInput] canvas.getContext('2d') returned null. Text-width-based expansion will be skipped."))}}}Fe(de?"expanded":"compact")}function W(w){if(A.value){A.value=!1;return}w&&(O.value=null,N.value=!1,z.value=!1),S.value!==null&&cancelAnimationFrame(S.value),S.value=requestAnimationFrame(()=>{S.value=null,ne()})}return t.watch(()=>o.modelValue,w=>{_.value&&(f.value=w??"")}),t.watch(R,w=>{gt(w),ne()}),t.watch(re,()=>{re.value.length===0&&(k.value=null)}),t.watch([k,()=>Ee.value.length],([w,B])=>{w!==null&&w!==v.value&&B>0&&(m.value=0),v.value=w},{immediate:!0}),t.watch([k,Ee],()=>{if(k.value===null){m.value=0;return}if(Ee.value.length===0){m.value=-1;return}(m.value<0||m.value>=Ee.value.length)&&(m.value=0)},{immediate:!0}),t.watch(()=>o.mode,async w=>{w!=="input"&&(b.value="compact",k.value=null,Oe());const B=d.value;if(B){if(w==="transcribe"){try{await B.start()}catch(K){console.error(K)}return}if(B.state==="recording")try{await B.stop()}catch{}}},{immediate:!0}),t.watch(d,async w=>{if(!(!w||o.mode!=="transcribe")&&w.state==="idle")try{await w.start()}catch(B){console.error(B)}},{immediate:!0}),t.watch(m,async w=>{if(!lt.value||w<0)return;await t.nextTick(),g.value?.querySelector(`[data-slash-index="${w}"]`)?.scrollIntoView?.({block:"nearest"})}),t.watch(()=>o.disabled,w=>{w&&Oe()}),t.onMounted(()=>{if(o.autoFocus&&o.mode==="input"&&l.value?.focus(),ne(),typeof ResizeObserver<"u"){const w=new Set;c.value&&w.add(c.value),u.value&&w.add(u.value),p.value&&w.add(p.value),F=new ResizeObserver(B=>{const K=B.some(oe=>w.has(oe.target));W(K)}),c.value&&F.observe(c.value),u.value&&F.observe(u.value),p.value&&F.observe(p.value),l.value&&F.observe(l.value)}Z=w=>{if(!y.value)return;const B=w.target;B&&(h.value?.contains(B)||u.value?.contains(B)||Oe())},document.addEventListener("mousedown",Z)}),t.onBeforeUnmount(()=>{Z&&(document.removeEventListener("mousedown",Z),Z=null),F?.disconnect(),F=null,S.value!==null&&(cancelAnimationFrame(S.value),S.value=null)}),(w,B)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-chat-input-container",class:Ye.value,style:{transform:e.keyboardHeight>0?`translateY(-${e.keyboardHeight}px)`:void 0,transition:"transform 0.2s ease-out",...e.positioning==="absolute"||e.bottomAnchored?{paddingBottom:"var(--copilotkit-license-banner-offset, 0px)"}:{}}},Qe.value),[t.createElementVNode("div",Xd,[t.renderSlot(w.$slots,"layout",{mode:e.mode,isMultiline:D.value,value:R.value,disabled:e.disabled,placeholder:M.value,isProcessing:ae.value,sendDisabled:Ne.value,menuOpen:y.value,menuItems:Xe.value,onToggleMenu:we,onMenuAction:je,onUpdateValue:ct,onSubmit:fe,onKeydown:Ze,onSendClick:Ue,onStartTranscribe:()=>a("start-transcribe"),onCancelTranscribe:()=>a("cancel-transcribe"),onFinishTranscribe:Be},()=>[t.createElementVNode("div",{ref_key:"shellRef",ref:i,"data-testid":"copilot-chat-input-shell",class:"cpk:flex cpk:w-full cpk:cursor-text cpk:flex-col cpk:items-center cpk:justify-center cpk:overflow-visible cpk:rounded-[28px] cpk:bg-white cpk:bg-clip-padding cpk:shadow-[0_4px_4px_0_#0000000a,0_0_1px_0_#0000009e] cpk:contain-inline-size cpk:dark:bg-[#303030]","data-layout":D.value?"expanded":"compact",onClick:at},[t.createElementVNode("div",{ref_key:"gridRef",ref:c,class:t.normalizeClass(["cpk:grid cpk:w-full cpk:gap-x-3 cpk:gap-y-3 cpk:px-3 cpk:py-2",D.value?"cpk:grid-cols-[auto_minmax(0,1fr)_auto] cpk:grid-rows-[auto_auto]":"cpk:grid-cols-[auto_minmax(0,1fr)_auto] cpk:items-center"]),"data-layout":D.value?"expanded":"compact"},[t.createElementVNode("div",{ref_key:"addButtonContainerRef",ref:u,class:t.normalizeClass(["cpk:relative cpk:flex cpk:items-center cpk:col-start-1",D.value?"cpk:row-start-2":"cpk:row-start-1"])},[t.renderSlot(w.$slots,"add-menu-button",{disabled:e.disabled||e.mode==="transcribe"||!ke.value,menuOpen:y.value,toggleMenu:we,labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-add","aria-label":U.value.chatInputToolbarAddButtonLabel,disabled:e.disabled||e.mode==="transcribe"||!ke.value,class:"cpk:ml-1 cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:disabled:hover:bg-transparent cpk:disabled:hover:text-[#444444] cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF] cpk:dark:disabled:hover:bg-transparent cpk:dark:disabled:hover:text-[#CCCCCC]",onClick:t.withModifiers(we,["stop"])},[t.createVNode(t.unref(me.Plus),{class:"cpk:size-[20px]"})],8,ep)]),y.value&&ke.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"addMenuRef",ref:h,class:"cpk:absolute cpk:bottom-full cpk:left-0 cpk:z-30 cpk:mb-2 cpk:min-w-[220px] cpk:overflow-hidden cpk:rounded-lg cpk:border cpk:border-border cpk:bg-white cpk:shadow-lg cpk:dark:border-[#3a3a3a] cpk:dark:bg-[#1f1f1f]","data-testid":"copilot-chat-input-add-menu"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Xe.value,K=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:K.key},[K.type==="separator"?(t.openBlock(),t.createElementBlock("div",tp)):K.type==="label"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"cpk:flex cpk:items-center cpk:gap-1 cpk:px-3 cpk:py-1.5 cpk:text-xs cpk:font-semibold cpk:text-muted-foreground",style:t.normalizeStyle({paddingLeft:`${12+K.depth*12}px`})},[t.createElementVNode("span",null,t.toDisplayString(K.label),1),t.createVNode(t.unref(me.ChevronRight),{class:"cpk:size-3"})],4)):(t.openBlock(),t.createElementBlock("button",{key:2,type:"button",role:"menuitem",class:"cpk:w-full cpk:px-3 cpk:py-2 cpk:text-left cpk:text-sm cpk:transition-colors cpk:hover:bg-muted cpk:dark:hover:bg-[#2f2f2f]",style:t.normalizeStyle({paddingLeft:`${12+K.depth*12}px`}),onClick:oe=>je(K.action)},t.toDisplayString(K.label),13,np))],64))),128))],512)):t.createCommentVNode("",!0)],2),t.createElementVNode("div",{class:t.normalizeClass(["cpk:relative cpk:flex cpk:min-h-[50px] cpk:min-w-0 cpk:flex-col cpk:justify-center",D.value?"cpk:col-span-3 cpk:row-start-1":"cpk:col-start-2 cpk:row-start-1"])},[e.mode==="transcribe"?t.renderSlot(w.$slots,"audio-recorder",{key:0},()=>[t.createVNode(ts,{ref_key:"audioRecorderRef",ref:d},null,512)]):e.mode==="processing"?(t.openBlock(),t.createElementBlock("div",op,[t.createVNode(t.unref(me.Loader2),{class:"cpk:size-[26px] cpk:animate-spin cpk:text-muted-foreground"})])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.renderSlot(w.$slots,"text-area",{value:R.value,disabled:e.disabled,placeholder:M.value,onInput:pe,onKeydown:Ze,autoFocus:e.autoFocus,isExpanded:D.value,rows:1,labels:U.value},()=>[t.createElementVNode("textarea",{ref_key:"textareaRef",ref:l,"data-testid":"copilot-chat-input-textarea",value:R.value,placeholder:M.value,disabled:e.disabled,rows:"1",class:t.normalizeClass(["cpk:w-full cpk:bg-transparent cpk:py-3 cpk:text-[16px] cpk:font-normal cpk:leading-relaxed cpk:text-foreground cpk:antialiased cpk:outline-none cpk:placeholder:text-[#00000077] cpk:dark:placeholder:text-[#fffc]",D.value?"cpk:px-5":"cpk:pr-5"]),style:{overflow:"auto",resize:"none"},onInput:pe,onKeydown:Ze,onCompositionstart:B[0]||(B[0]=K=>C.value=!0),onCompositionend:B[1]||(B[1]=K=>C.value=!1)},null,42,ap)]),lt.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"slashMenuRef",ref:g,"data-testid":"copilot-slash-menu",role:"listbox","aria-label":"Slash commands",class:"cpk:absolute cpk:bottom-full cpk:left-0 cpk:right-0 cpk:z-30 cpk:mb-2 cpk:max-h-64 cpk:overflow-y-auto cpk:rounded-lg cpk:border cpk:border-border cpk:bg-white cpk:shadow-lg cpk:dark:border-[#3a3a3a] cpk:dark:bg-[#1f1f1f]",style:{maxHeight:"200px"}},[Ee.value.length===0?(t.openBlock(),t.createElementBlock("div",rp," No commands found ")):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(Ee.value,(K,oe)=>(t.openBlock(),t.createElementBlock("button",{key:`${K.label}-${oe}`,type:"button",role:"option","data-slash-index":oe,"aria-selected":oe===m.value,"data-active":oe===m.value?"true":void 0,class:t.normalizeClass(["cpk:w-full cpk:px-3 cpk:py-2 cpk:text-left cpk:text-sm cpk:transition-colors cpk:hover:bg-muted cpk:dark:hover:bg-[#2f2f2f]",oe===m.value?"cpk:bg-muted cpk:dark:bg-[#2f2f2f]":"cpk:bg-transparent"]),onMouseenter:Ce=>m.value=oe,onMousedown:t.withModifiers(Ce=>L(K),["prevent"])},t.toDisplayString(K.label),43,sp))),128))],512)):t.createCommentVNode("",!0)],64))],2),t.createElementVNode("div",{ref_key:"actionsContainerRef",ref:p,class:t.normalizeClass(["cpk:flex cpk:items-center cpk:justify-end cpk:gap-2",D.value?"cpk:col-start-3 cpk:row-start-2":"cpk:col-start-3 cpk:row-start-1"])},[e.mode==="transcribe"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[X.value||w.$slots["cancel-transcribe-button"]?t.renderSlot(w.$slots,"cancel-transcribe-button",{key:0,disabled:e.disabled,onClick:()=>a("cancel-transcribe"),labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-cancel-transcribe","aria-label":U.value.chatInputToolbarCancelTranscribeButtonLabel,disabled:e.disabled,class:"cpk:mr-2 cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF]",onClick:B[2]||(B[2]=K=>a("cancel-transcribe"))},[t.createVNode(t.unref(me.X),{class:"cpk:size-[18px]"})],8,ip)]):t.createCommentVNode("",!0),ve.value||w.$slots["finish-transcribe-button"]?t.renderSlot(w.$slots,"finish-transcribe-button",{key:1,disabled:e.disabled,onClick:Be,labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-finish-transcribe","aria-label":U.value.chatInputToolbarFinishTranscribeButtonLabel,disabled:e.disabled,class:"cpk:mr-[10px] cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF]",onClick:Be},[t.createVNode(t.unref(me.Check),{class:"cpk:size-[18px]"})],8,lp)]):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[ce.value||w.$slots["start-transcribe-button"]?t.renderSlot(w.$slots,"start-transcribe-button",{key:0,disabled:e.disabled,onClick:()=>a("start-transcribe"),labels:U.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-start-transcribe","aria-label":U.value.chatInputToolbarStartTranscribeButtonLabel,disabled:e.disabled,class:"cpk:mr-2 cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-transparent cpk:text-[#444444] cpk:transition-colors cpk:hover:bg-[#f8f8f8] cpk:hover:text-[#333333] cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:disabled:hover:bg-transparent cpk:disabled:hover:text-[#444444] cpk:dark:text-white cpk:dark:hover:bg-[#404040] cpk:dark:hover:text-[#FFFFFF] cpk:dark:disabled:hover:bg-transparent cpk:dark:disabled:hover:text-[#CCCCCC]",onClick:B[3]||(B[3]=K=>a("start-transcribe"))},[t.createVNode(t.unref(me.Mic),{class:"cpk:size-[18px]"})],8,cp)]):t.createCommentVNode("",!0),t.renderSlot(w.$slots,"send-button",{disabled:Ne.value,isProcessing:ae.value,onClick:Ue},()=>[t.createElementVNode("div",up,[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-send","aria-label":"Send message",disabled:Ne.value,class:"cpk:inline-flex cpk:h-9 cpk:w-9 cpk:shrink-0 cpk:items-center cpk:justify-center cpk:rounded-full cpk:bg-black cpk:text-white cpk:transition-colors cpk:hover:opacity-70 cpk:disabled:cursor-not-allowed cpk:disabled:opacity-50 cpk:disabled:bg-[#00000014] cpk:disabled:text-[rgb(13,13,13)] cpk:disabled:hover:opacity-100 cpk:dark:bg-white cpk:dark:text-black cpk:dark:disabled:bg-[#454545] cpk:dark:disabled:text-white",onClick:Ue},[ae.value&&H.value?(t.openBlock(),t.createBlock(t.unref(me.Square),{key:0,class:"cpk:size-[18px] cpk:fill-current"})):(t.openBlock(),t.createBlock(t.unref(me.ArrowUp),{key:1,class:"cpk:size-[18px]"}))],8,dp)])])],64))],2)],10,Qd)],8,Yd)])]),$.value?t.renderSlot(w.$slots,"disclaimer",{key:0,labels:U.value},()=>[t.createElementVNode("p",pp,t.toDisplayString(U.value.chatDisclaimerText),1)]):t.createCommentVNode("",!0)],16))}}),mp=["data-card-type"],fp={key:0,class:"cpk:absolute cpk:inset-0 cpk:flex cpk:items-center cpk:justify-center cpk:bg-black/40 cpk:z-10","data-testid":"copilot-chat-attachment-uploading-overlay"},hp=["onClick"],gp=["src","alt"],vp={key:1,class:"cpk:w-full cpk:h-full cpk:relative"},bp=["src","alt"],kp=["src"],yp=["onClick"],Sp={key:2,class:"cpk:flex cpk:flex-col cpk:gap-1 cpk:w-full"},wp=["src"],Cp={key:0,class:"cpk:text-xs cpk:font-medium cpk:overflow-hidden cpk:text-ellipsis cpk:whitespace-nowrap"},Tp=["onClick"],xp={class:"cpk:w-8 cpk:h-8 cpk:rounded-md cpk:bg-primary cpk:text-primary-foreground cpk:flex cpk:items-center cpk:justify-center cpk:text-[10px] cpk:font-semibold cpk:shrink-0"},Ip={class:"cpk:flex cpk:flex-col cpk:min-w-0"},Ep={class:"cpk:text-xs cpk:font-medium cpk:break-all cpk:leading-tight","data-testid":"copilot-chat-attachment-document-filename"},Rp={key:0,class:"cpk:text-[11px] cpk:text-muted-foreground"},Ap={key:2,class:"cpk:w-full cpk:h-full cpk:bg-muted-foreground/20","data-testid":"copilot-chat-attachment-placeholder"},_p=["onClick"],$p=["src","alt"],Mp=["src"],Np=["src","title"],Op={key:1,class:"cpk:w-[90vw] cpk:max-w-[800px] cpk:max-h-[90vh] cpk:overflow-auto cpk:rounded-lg cpk:bg-white cpk:dark:bg-gray-900 cpk:p-6"},zp={key:0,class:"cpk:text-sm cpk:whitespace-pre-wrap cpk:wrap-break-word cpk:text-gray-800 cpk:dark:text-gray-200 cpk:font-mono cpk:m-0","data-testid":"copilot-chat-attachment-lightbox-document-text"},Bp=["src","title"],Fp={key:2,class:"cpk:flex cpk:flex-col cpk:items-center cpk:gap-4 cpk:p-8 cpk:rounded-lg cpk:bg-white cpk:dark:bg-gray-900","data-testid":"copilot-chat-attachment-lightbox-document-fallback"},Dp={class:"cpk:w-16 cpk:h-16 cpk:rounded-xl cpk:bg-primary cpk:text-primary-foreground cpk:flex cpk:items-center cpk:justify-center cpk:text-xl cpk:font-bold"},Vp={class:"cpk:text-center"},Pp={class:"cpk:text-base cpk:font-medium cpk:text-gray-800 cpk:dark:text-gray-200"},Lp={class:"cpk:text-sm cpk:text-gray-500 cpk:dark:text-gray-400 cpk:mt-1"},yn=t.defineComponent({__name:"CopilotChatAttachmentQueue",props:{attachments:{default:()=>[]},className:{default:""}},emits:["remove-attachment"],setup(e,{emit:n}){const o=e,a=n,r=t.ref(null),s=t.ref(null),i=t.computed(()=>r.value!==null),l=t.computed(()=>{const b=r.value;if(!b||b.type!=="document")return!1;const k=b.source.mimeType;return d(k)||f(k)}),c=t.computed(()=>{const b=r.value;if(!b||b.type!=="document")return null;const k=b.source.mimeType;if(!f(k)||b.source.type!=="data")return null;try{return atob(b.source.value)}catch{return b.source.value}}),u=t.computed(()=>{const b=r.value;return!b||b.type!=="document"?null:b.source.type==="url"?b.source.value:s.value});t.watch(r,(b,k)=>{if(s.value&&(URL.revokeObjectURL(s.value),s.value=null),!b||b.type!=="document"||b.source.type!=="data"||typeof window>"u")return;const m=b.source.mimeType;if(!d(m)&&!f(m))return;const v=C(b.source.value,m);s.value=v},{immediate:!0}),t.watch(i,(b,k,m)=>{if(!b||typeof document>"u")return;const v=y=>{y.key==="Escape"&&g()};document.addEventListener("keydown",v),m(()=>{document.removeEventListener("keydown",v)})}),t.onBeforeUnmount(()=>{s.value&&(URL.revokeObjectURL(s.value),s.value=null)});function p(b){if(typeof document<"u"){const k=document;if(typeof k.startViewTransition=="function"){k.startViewTransition(()=>{r.value=b});return}}r.value=b}function g(){r.value=null}function h(b){return b.type==="image"||b.type==="video"?"cpk:w-[72px] cpk:h-[72px]":b.type==="audio"?"cpk:min-w-[200px] cpk:max-w-[280px] cpk:flex-col cpk:p-1 cpk:pr-8":"cpk:p-2 cpk:px-3 cpk:pr-8 cpk:max-w-[240px]"}function d(b){return!!b&&b.includes("pdf")}function f(b){return!!b&&b.startsWith("text/")}function C(b,k){try{const m=atob(b),v=new Uint8Array(m.length);for(let x=0;x<m.length;x+=1)v[x]=m.charCodeAt(x);const y=new Blob([v],{type:k||"application/octet-stream"});return URL.createObjectURL(y)}catch(m){return console.error("[CopilotKit] Failed to decode attachment data:",m),null}}return(b,k)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[o.attachments.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["cpk:flex cpk:flex-wrap cpk:gap-2 cpk:p-2",o.className]),"data-testid":"copilot-chat-attachment-queue"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.attachments,m=>(t.openBlock(),t.createElementBlock("div",{key:m.id,class:t.normalizeClass(["cpk:relative cpk:inline-flex cpk:rounded-lg cpk:overflow-hidden cpk:border cpk:border-border",h(m)]),"data-testid":"copilot-chat-attachment-item","data-card-type":m.type},[m.status==="uploading"?(t.openBlock(),t.createElementBlock("div",fp,[...k[1]||(k[1]=[t.createElementVNode("div",{class:"cpk:w-5 cpk:h-5 cpk:border-2 cpk:border-white cpk:border-t-transparent cpk:rounded-full cpk:animate-spin"},null,-1)])])):t.createCommentVNode("",!0),m.status==="ready"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[m.type==="image"?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"cpk:w-full cpk:h-full cpk:border-none cpk:bg-transparent cpk:p-0 cpk:cursor-pointer","data-testid":"copilot-chat-attachment-image-button",onClick:v=>p(m)},[t.createElementVNode("img",{src:t.unref(G.getSourceUrl)(m.source),alt:m.filename||"Image attachment",class:"cpk:w-full cpk:h-full cpk:object-cover","data-testid":"copilot-chat-attachment-image-thumbnail"},null,8,gp)],8,hp)):m.type==="video"?(t.openBlock(),t.createElementBlock("div",vp,[m.thumbnail?(t.openBlock(),t.createElementBlock("img",{key:0,src:m.thumbnail,alt:m.filename||"Video thumbnail",class:"cpk:w-full cpk:h-full cpk:object-cover","data-testid":"copilot-chat-attachment-video-thumbnail"},null,8,bp)):(t.openBlock(),t.createElementBlock("video",{key:1,src:t.unref(G.getSourceUrl)(m.source),preload:"metadata",muted:"",class:"cpk:w-full cpk:h-full cpk:object-cover","data-testid":"copilot-chat-attachment-video-fallback"},null,8,kp)),t.createElementVNode("button",{type:"button",class:"cpk:absolute cpk:inset-0 cpk:flex cpk:items-center cpk:justify-center cpk:z-10 cpk:cursor-pointer cpk:bg-black/20 cpk:border-none cpk:p-0","aria-label":"Play video","data-testid":"copilot-chat-attachment-video-play",onClick:v=>p(m)},[...k[2]||(k[2]=[t.createElementVNode("div",{class:"cpk:w-8 cpk:h-8 cpk:rounded-full cpk:bg-black/60 cpk:flex cpk:items-center cpk:justify-center cpk:text-white cpk:text-xs cpk:font-semibold"}," ▶ ",-1)])],8,yp)])):m.type==="audio"?(t.openBlock(),t.createElementBlock("div",Sp,[t.createElementVNode("audio",{src:t.unref(G.getSourceUrl)(m.source),controls:"",preload:"metadata",class:"cpk:w-full cpk:h-8","data-testid":"copilot-chat-attachment-audio-player"},null,8,wp),m.filename?(t.openBlock(),t.createElementBlock("span",Cp,t.toDisplayString(m.filename),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("button",{key:3,type:"button",class:t.normalizeClass(["cpk:flex cpk:items-center cpk:gap-2 cpk:w-full cpk:border-none cpk:bg-transparent cpk:p-0 cpk:text-left",d(m.source.mimeType)||f(m.source.mimeType)?"cpk:cursor-pointer":"cpk:cursor-default"]),"data-testid":"copilot-chat-attachment-document-button",onClick:v=>(d(m.source.mimeType)||f(m.source.mimeType))&&p(m)},[t.createElementVNode("div",xp,t.toDisplayString(t.unref(G.getDocumentIcon)(m.source.mimeType??"")),1),t.createElementVNode("div",Ip,[t.createElementVNode("span",Ep,t.toDisplayString(m.filename||"Document"),1),m.size!=null?(t.openBlock(),t.createElementBlock("span",Rp,t.toDisplayString(t.unref(G.formatFileSize)(m.size)),1)):t.createCommentVNode("",!0)])],10,Tp))],64)):(t.openBlock(),t.createElementBlock("div",Ap)),t.createElementVNode("button",{type:"button",class:"cpk:absolute cpk:bg-black/60 cpk:text-white cpk:border-none cpk:rounded-full cpk:w-5 cpk:h-5 cpk:flex cpk:items-center cpk:justify-center cpk:cursor-pointer cpk:text-[10px] cpk:z-20 cpk:top-1 cpk:right-1","aria-label":"Remove attachment",onClick:v=>a("remove-attachment",m.id)}," ✕ ",8,_p)],10,mp))),128))],2)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"cpk:fixed cpk:inset-0 cpk:z-[9999] cpk:flex cpk:items-center cpk:justify-center cpk:bg-black/80","data-testid":"copilot-chat-attachment-lightbox",onClick:g},[t.createElementVNode("button",{type:"button",class:"cpk:absolute cpk:top-4 cpk:right-4 cpk:text-white cpk:bg-white/10 cpk:hover:bg-white/20 cpk:rounded-full cpk:w-10 cpk:h-10 cpk:flex cpk:items-center cpk:justify-center cpk:cursor-pointer cpk:border-none","aria-label":"Close preview",onClick:t.withModifiers(g,["stop"])}," ✕ "),t.createElementVNode("div",{"data-testid":"copilot-chat-attachment-lightbox-content",onClick:k[0]||(k[0]=t.withModifiers(()=>{},["stop"]))},[r.value.type==="image"?(t.openBlock(),t.createElementBlock("img",{key:0,src:t.unref(G.getSourceUrl)(r.value.source),alt:r.value.filename||"Image attachment",class:"cpk:max-w-[90vw] cpk:max-h-[90vh] cpk:object-contain cpk:rounded-lg","data-testid":"copilot-chat-attachment-lightbox-image"},null,8,$p)):r.value.type==="video"?(t.openBlock(),t.createElementBlock("video",{key:1,src:t.unref(G.getSourceUrl)(r.value.source),controls:"",autoplay:"",class:"cpk:max-w-[90vw] cpk:max-h-[90vh] cpk:rounded-lg","data-testid":"copilot-chat-attachment-lightbox-video"},null,8,Mp)):r.value.type==="document"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[l.value&&d(r.value.source.mimeType)&&u.value?(t.openBlock(),t.createElementBlock("iframe",{key:0,src:u.value,title:r.value.filename||"PDF preview",class:"cpk:w-[90vw] cpk:h-[90vh] cpk:max-w-[1000px] cpk:rounded-lg cpk:bg-white","data-testid":"copilot-chat-attachment-lightbox-document-iframe"},null,8,Np)):l.value&&f(r.value.source.mimeType)?(t.openBlock(),t.createElementBlock("div",Op,[c.value!==null?(t.openBlock(),t.createElementBlock("pre",zp,t.toDisplayString(c.value),1)):u.value?(t.openBlock(),t.createElementBlock("iframe",{key:1,src:u.value,title:r.value.filename||"Text preview",class:"cpk:w-full cpk:h-[80vh] cpk:border-none","data-testid":"copilot-chat-attachment-lightbox-document-iframe"},null,8,Bp)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("div",Fp,[t.createElementVNode("div",Dp,t.toDisplayString(t.unref(G.getDocumentIcon)(r.value.source.mimeType??"")),1),t.createElementVNode("div",Vp,[t.createElementVNode("div",Pp,t.toDisplayString(r.value.filename||"Document"),1),t.createElementVNode("div",Lp,t.toDisplayString(r.value.source.mimeType||"Unknown type")+" "+t.toDisplayString(r.value.size!=null?` · ${t.unref(G.formatFileSize)(r.value.size)}`:""),1)]),k[3]||(k[3]=t.createElementVNode("div",{class:"cpk:text-xs cpk:text-gray-400 cpk:dark:text-gray-500"}," No preview available for this file type ",-1))]))],64)):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)]))],64))}}),Up=["data-message-id"],jp=["aria-expanded"],Zp={class:"cpk:font-medium"},Hp={key:0,class:"cpk:inline-flex cpk:items-center cpk:ml-1"},Gp={class:"cpk:overflow-hidden"},Wp={key:0,class:"cpk:pb-2 cpk:pt-1"},Kp={class:"cpk:text-sm cpk:text-muted-foreground"},qp={key:0,class:"cpk:inline-flex cpk:items-center cpk:ml-1 cpk:align-middle"},is=t.defineComponent({__name:"CopilotChatReasoningMessage",props:{message:{},messages:{default:()=>[]},isRunning:{type:Boolean,default:!1}},setup(e){const n=e;function o(b){if(b<1)return"a few seconds";if(b<60)return`${Math.round(b)} seconds`;const k=Math.floor(b/60),m=Math.round(b%60);return m===0?`${k} minute${k>1?"s":""}`:`${k}m ${m}s`}const a=t.computed(()=>typeof n.message.content=="string"?n.message.content:""),r=t.computed(()=>a.value.length>0),s=t.computed(()=>n.messages[n.messages.length-1]?.id===n.message.id),i=t.computed(()=>!!(n.isRunning&&s.value)),l=t.ref(0),c=t.ref(i.value),u=t.ref(!1);let p=null,g=null;function h(){g&&(clearInterval(g),g=null)}function d(){p!==null&&(l.value=(Date.now()-p)/1e3)}t.watch(i,b=>{if(b){p===null&&(p=Date.now()),h(),g=setInterval(d,1e3),u.value=!1,c.value=!0;return}h(),d(),u.value||(c.value=!1)},{immediate:!0}),t.onBeforeUnmount(()=>{h()});const f=t.computed(()=>i.value?"Thinking…":`Thought for ${o(l.value)}`);function C(){r.value&&(u.value=!0,c.value=!c.value)}return(b,k)=>(t.openBlock(),t.createElementBlock("div",{"data-copilotkit":"",class:"cpk:my-1","data-message-id":e.message.id},[t.renderSlot(b.$slots,"layout",{message:e.message,messages:e.messages,isRunning:e.isRunning,header:{isOpen:c.value,label:f.value,hasContent:r.value,isStreaming:i.value,onClick:r.value?C:void 0},contentView:{isStreaming:i.value,hasContent:r.value,content:a.value},toggle:{isOpen:c.value,contentView:{isStreaming:i.value,hasContent:r.value,content:a.value}}},()=>[t.renderSlot(b.$slots,"header",{isOpen:c.value,label:f.value,hasContent:r.value,isStreaming:i.value,onClick:r.value?C:void 0},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(["cpk:inline-flex cpk:items-center cpk:gap-1 cpk:py-1 cpk:text-sm cpk:text-muted-foreground cpk:transition-colors cpk:select-none",r.value?"cpk:hover:text-foreground cpk:cursor-pointer":"cpk:cursor-default"]),"aria-expanded":r.value?c.value:void 0,onClick:k[0]||(k[0]=m=>r.value?C():void 0)},[t.createElementVNode("span",Zp,t.toDisplayString(f.value),1),i.value&&!r.value?(t.openBlock(),t.createElementBlock("span",Hp,[...k[1]||(k[1]=[t.createElementVNode("span",{class:"cpk:w-1.5 cpk:h-1.5 cpk:rounded-full cpk:bg-muted-foreground cpk:animate-pulse"},null,-1)])])):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(me.ChevronRight),{key:1,class:t.normalizeClass(["cpk:size-3.5 cpk:shrink-0 cpk:transition-transform cpk:duration-200",{"cpk:rotate-90":c.value}])},null,8,["class"])):t.createCommentVNode("",!0)],10,jp)]),t.renderSlot(b.$slots,"toggle",{isOpen:c.value,contentView:{isStreaming:i.value,hasContent:r.value,content:a.value}},()=>[t.createElementVNode("div",{class:"cpk:grid cpk:transition-[grid-template-rows] cpk:duration-200 cpk:ease-in-out",style:t.normalizeStyle({gridTemplateRows:c.value?"1fr":"0fr"})},[t.createElementVNode("div",Gp,[t.renderSlot(b.$slots,"content-view",{isStreaming:i.value,hasContent:r.value,content:a.value},()=>[r.value||i.value?(t.openBlock(),t.createElementBlock("div",Wp,[t.createElementVNode("div",Kp,[t.createVNode(t.unref(Mo.StreamMarkdown),{content:a.value},null,8,["content"]),i.value&&r.value?(t.openBlock(),t.createElementBlock("span",qp,[...k[2]||(k[2]=[t.createElementVNode("span",{class:"cpk:w-2 cpk:h-2 cpk:rounded-full cpk:bg-muted-foreground cpk:animate-pulse-cursor"},null,-1)])])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)])])],4)])])],8,Up))}}),Jp=["data-message-id"],Xp=["data-multiline"],Yp={class:"cpk:w-full cpk:bg-transparent cpk:flex cpk:items-center cpk:justify-end cpk:-mr-[5px] cpk:mt-[4px] cpk:invisible cpk:group-hover:visible"},Qp={class:"cpk:flex cpk:items-center cpk:gap-1 cpk:justify-end"},em=["aria-label","title"],tm=["aria-label","title"],nm={class:"cpk:flex cpk:items-center cpk:gap-1"},om=["disabled"],am={class:"cpk:text-sm cpk:text-muted-foreground cpk:px-0 cpk:font-medium"},rm=["disabled"],ls=t.defineComponent({__name:"CopilotChatUserMessage",props:{message:{},branchIndex:{default:0},numberOfBranches:{default:1},onEditMessage:{},onSwitchToBranch:{}},emits:["edit-message","switch-to-branch"],setup(e,{emit:n}){const o=e,a=n,r=Re(),s=t.computed(()=>r.value?.labels??ot),i=t.ref(!1);let l=null;const c=["cpk:inline-flex cpk:h-8 cpk:w-8 cpk:items-center cpk:justify-center cpk:rounded-md cpk:p-0","cpk:cursor-pointer cpk:text-[rgb(93,93,93)] cpk:transition-colors cpk:hover:bg-[#E8E8E8]","cpk:hover:text-[rgb(93,93,93)] cpk:dark:text-[rgb(243,243,243)] cpk:dark:hover:bg-[#303030]","cpk:dark:hover:text-[rgb(243,243,243)] cpk:disabled:pointer-events-none cpk:disabled:opacity-50"].join(" ");function u(S){return S?typeof S=="string"?S:S.map(A=>A&&typeof A=="object"&&"type"in A&&A.type==="text"&&typeof A.text=="string"?A.text:"").filter(A=>A.length>0).join(`
68
59
  `):""}const p=t.computed(()=>u(o.message.content)),g=t.computed(()=>p.value.includes(`
69
- `)),h=t.computed(()=>typeof o.onEditMessage=="function"),d=t.computed(()=>o.numberOfBranches>1&&typeof o.onSwitchToBranch=="function"),f=t.computed(()=>d.value&&o.branchIndex>0),C=t.computed(()=>d.value&&o.branchIndex<o.numberOfBranches-1);function b(){l&&clearTimeout(l),i.value=!0,l=setTimeout(()=>{i.value=!1,l=null},2e3)}async function k(){if(p.value&&!(typeof navigator>"u"||typeof navigator.clipboard?.writeText!="function"))try{await navigator.clipboard.writeText(p.value),b()}catch(S){console.error("Failed to copy to clipboard:",S)}}function m(){if(!h.value)return;const S={message:o.message};a("edit-message",S)}function v(S){if(!d.value)return;const A={branchIndex:S,numberOfBranches:o.numberOfBranches,message:o.message};a("switch-to-branch",A)}function y(){f.value&&v(o.branchIndex-1)}function x(){C.value&&v(o.branchIndex+1)}return t.onBeforeUnmount(()=>{l&&clearTimeout(l)}),(S,A)=>t.renderSlot(S.$slots,"layout",{message:e.message,content:p.value,isMultiline:g.value,showBranchNavigation:d.value,hasEditAction:h.value,branchIndex:e.branchIndex,numberOfBranches:e.numberOfBranches,canGoPrev:f.value,canGoNext:C.value,onCopy:k,onEdit:m,goPrev:y,goNext:x,copied:i.value},()=>[t.createElementVNode("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-user-message",class:"cpk:flex cpk:flex-col cpk:items-end cpk:group cpk:pt-10","data-message-id":e.message.id},S.$attrs),[t.renderSlot(S.$slots,"message-renderer",{message:e.message,content:p.value,isMultiline:g.value},()=>[t.createElementVNode("div",{class:t.normalizeClass(["cpk:prose cpk:dark:prose-invert cpk:bg-muted cpk:relative cpk:max-w-[80%] cpk:rounded-[18px] cpk:px-4 cpk:py-1.5 cpk:inline-block cpk:whitespace-pre-wrap",{"cpk:py-3":g.value}]),"data-multiline":g.value?"true":void 0},t.toDisplayString(p.value),11,Yp)]),t.renderSlot(S.$slots,"toolbar",{message:e.message,showBranchNavigation:d.value,hasEditAction:h.value},()=>[t.createElementVNode("div",Qp,[t.createElementVNode("div",em,[t.renderSlot(S.$slots,"toolbar-items"),t.renderSlot(S.$slots,"copy-button",{onCopy:k,copied:i.value,label:s.value.userMessageToolbarCopyMessageLabel},()=>[t.createElementVNode("button",{"data-testid":"copilot-user-copy-button",type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.userMessageToolbarCopyMessageLabel,title:s.value.userMessageToolbarCopyMessageLabel,onClick:k},[i.value?(t.openBlock(),t.createBlock(t.unref(me.Check),{key:0,class:"cpk:size-[18px]"})):(t.openBlock(),t.createBlock(t.unref(me.Copy),{key:1,class:"cpk:size-[18px]"}))],10,tm)]),h.value||S.$slots["edit-button"]?t.renderSlot(S.$slots,"edit-button",{key:0,onEdit:m,label:s.value.userMessageToolbarEditMessageLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.userMessageToolbarEditMessageLabel,title:s.value.userMessageToolbarEditMessageLabel,onClick:m},[t.createVNode(t.unref(me.Edit),{class:"cpk:size-[18px]"})],10,nm)]):t.createCommentVNode("",!0),e.numberOfBranches>1&&(d.value||S.$slots["branch-navigation"])?t.renderSlot(S.$slots,"branch-navigation",{key:1,branchIndex:e.branchIndex,numberOfBranches:e.numberOfBranches,canGoPrev:f.value,canGoNext:C.value,goPrev:y,goNext:x},()=>[t.createElementVNode("div",om,[t.createElementVNode("button",{type:"button",class:t.normalizeClass([t.unref(c),"cpk:h-6 cpk:w-6 cpk:p-0"]),disabled:!f.value,"aria-label":"Previous branch",title:"Previous branch",onClick:y},[t.createVNode(t.unref(me.ChevronLeft),{class:"cpk:size-[20px]"})],10,am),t.createElementVNode("span",rm,t.toDisplayString(e.branchIndex+1)+"/"+t.toDisplayString(e.numberOfBranches),1),t.createElementVNode("button",{type:"button",class:t.normalizeClass([t.unref(c),"cpk:h-6 cpk:w-6 cpk:p-0"]),disabled:!C.value,"aria-label":"Next branch",title:"Next branch",onClick:x},[t.createVNode(t.unref(me.ChevronRight),{class:"cpk:size-[20px]"})],10,sm)])]):t.createCommentVNode("",!0)])])])],16,Xp)])}}),cs=t.defineComponent({__name:"CopilotChatMessageView",props:{messages:{default:()=>[]},isRunning:{type:Boolean,default:!1}},setup(e){const n=e,{copilotkit:o}=Ve(),a=Re(),r=t.ref(0),s=t.ref(null),i=t.useSlots(),l=t.computed(()=>Object.keys(i)),c=t.computed(()=>a.value?.agentId??G.DEFAULT_AGENT_ID),u=t.computed(()=>(o.value.agents,o.value.getAgent(c.value)));t.watch([c,()=>a.value?.threadId,()=>o.value,()=>o.value.runtimeConnectionStatus],(S,A,T)=>{const O=u.value;if(!O)return;const N=O.subscribe({onStateChanged:()=>{r.value+=1},onRunStartedEvent:()=>{r.value+=1},onRunFinishedEvent:()=>{r.value+=1},onRunErrorEvent:()=>{r.value+=1}});T(()=>N.unsubscribe())},{immediate:!0}),t.watch(()=>o.value,(S,A,T)=>{s.value=S.interruptState;const O=S.subscribe({onInterruptStateChanged:({interruptState:N})=>{s.value=N},onRuntimeConnectionStatusChanged:()=>{r.value+=1}});T(()=>O.unsubscribe())},{immediate:!0});function p(S){const A=new Map;for(const T of S){const O=A.get(T.id);if(O&&T.role==="assistant"&&O.role==="assistant"){const N=T.content||O.content,z=T.toolCalls??O.toolCalls;A.set(T.id,{...O,...T,content:N,toolCalls:z})}else A.set(T.id,T)}return[...A.values()]}const g=t.computed(()=>p(n.messages)),h=G.createRowKeyStore(),d=t.computed(()=>G.resolveRowRenderKeysById(h,g.value));t.onMounted(()=>G.commitRowKeyStore(h,g.value)),t.watch(g,S=>G.commitRowKeyStore(h,S),{flush:"post"});const f=t.computed(()=>n.messages[n.messages.length-1]),C=t.computed(()=>n.isRunning&&f.value?.role!=="reasoning");t.watch([()=>n.messages.length,()=>g.value.length],([S,A])=>{process.env.NODE_ENV==="development"&&A<S&&console.warn(`CopilotChatMessageView: Deduplicated ${S-A} message(s) with duplicate IDs.`)},{immediate:!0});function b(S){r.value+=0;const A=c.value,T=a.value?.threadId??"",O=o.value,N=O.getRunIdForMessage(A,T,S.id)??O.getRunIdsForThread(A,T).slice(-1)[0],z=N??`missing-run-id:${S.id}`,F=u.value??O.getAgent(A),Z=N&&F?F.messages.filter($=>O.getRunIdForMessage(A,T,$.id)===N).map($=>$.id):[S.id],_=F?F.messages.findIndex($=>$.id===S.id):-1,R=_>=0?_:0,U=N?Math.max(Z.indexOf(S.id),0):0,M=N?Z.length:1;let D,ae=!1;return{runId:z,messageIndex:R,messageIndexInRun:U,numberOfMessagesInRun:M,agentId:A,get stateSnapshot(){return ae||(ae=!0,D=N?O.getStateByRun(A,T,N):void 0),D}}}function k(S,A){return Object.assign(b(S),{message:S,position:A})}const m=({render:S,slotProps:A})=>S(A);m.props=["render","slotProps"];function v(S){return`activity-${S}`}function y(S,A){if(r.value+=0,i[A==="before"?"message-before":"message-after"])return null;const O=c.value,z=[...o.value.renderCustomMessages].filter(F=>F.agentId===void 0||F.agentId===O).sort((F,Z)=>{const _=F.agentId!==void 0,R=Z.agentId!==void 0;return _===R?0:_?-1:1})[0];return z?.render?{renderer:z.render,props:k(S,A)}:null}function x(S){r.value+=0;const A=c.value,T=[...o.value.renderActivityMessages].filter(N=>N.activityType===S.activityType&&(N.agentId===void 0||N.agentId===A)).sort((N,z)=>{const F=N.agentId!==void 0,Z=z.agentId!==void 0;return F===Z?0:F?-1:1})[0];if(!T)return null;const O=T.content.safeParse(S.content);return O.success?{renderer:T.render,props:{activityType:S.activityType,content:O.data,message:S,agent:u.value}}:null}return(S,A)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"",class:"cpk:flex cpk:flex-col"},S.$attrs),[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,T=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:d.value.get(T.id)??T.id},[t.unref(i)["message-before"]?(t.openBlock(),t.createBlock(m,{key:0,render:t.unref(i)["message-before"],"slot-props":k(T,"before")},null,8,["render","slot-props"])):y(T,"before")?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y(T,"before").renderer),t.mergeProps({key:1,ref_for:!0},y(T,"before").props),null,16)):t.createCommentVNode("",!0),T.role==="assistant"?t.renderSlot(S.$slots,"assistant-message",{key:2,message:T,messages:e.messages,isRunning:e.isRunning},()=>[t.createVNode(es,{message:T,messages:e.messages,"is-running":e.isRunning},t.createSlots({_:2},[t.renderList(l.value,O=>({name:O,fn:t.withCtx(N=>[t.renderSlot(S.$slots,O,t.mergeProps({ref_for:!0},N))])}))]),1032,["message","messages","is-running"])]):T.role==="user"?t.renderSlot(S.$slots,"user-message",{key:3,message:T},()=>[t.createVNode(ls,{message:T},t.createSlots({_:2},[t.renderList(l.value,O=>({name:O,fn:t.withCtx(N=>[t.renderSlot(S.$slots,O,t.mergeProps({ref_for:!0},N))])}))]),1032,["message"])]):T.role==="reasoning"?t.renderSlot(S.$slots,"reasoning-message",{key:4,message:T,messages:e.messages,isRunning:e.isRunning},()=>[t.createVNode(is,{message:T,messages:e.messages,"is-running":e.isRunning},null,8,["message","messages","is-running"])]):T.role==="activity"?t.renderSlot(S.$slots,v(T.activityType),{key:5,activityType:T.activityType,content:T.content,message:T,agent:u.value},()=>[t.renderSlot(S.$slots,"activity-message",{activityType:T.activityType,content:T.content,message:T,agent:u.value},()=>[x(T)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(x(T).renderer),t.mergeProps({key:0,ref_for:!0},x(T).props),null,16)):t.createCommentVNode("",!0)])]):t.createCommentVNode("",!0),t.unref(i)["message-after"]?(t.openBlock(),t.createBlock(m,{key:6,render:t.unref(i)["message-after"],"slot-props":k(T,"after")},null,8,["render","slot-props"])):y(T,"after")?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y(T,"after").renderer),t.mergeProps({key:7,ref_for:!0},y(T,"after").props),null,16)):t.createCommentVNode("",!0)],64))),128)),s.value?t.renderSlot(S.$slots,"interrupt",{key:0,event:s.value.event,interrupt:s.value.interrupt,interrupts:s.value.interrupts,result:s.value.result,resolve:s.value.resolve,cancel:s.value.cancel}):t.createCommentVNode("",!0),C.value?t.renderSlot(S.$slots,"cursor",{key:1},()=>[A[0]||(A[0]=t.createElementVNode("div",{class:"cpk:w-[11px] cpk:h-[11px] cpk:rounded-full cpk:bg-foreground cpk:animate-pulse cpk:ml-1","data-testid":"copilot-loading-cursor"},null,-1))]):t.createCommentVNode("",!0)],16))}}),im=["type","aria-busy","disabled"],lm={key:0,class:"cpk:flex cpk:h-3.5 cpk:w-3.5 cpk:items-center cpk:justify-center cpk:text-muted-foreground cpk:sm:h-4 cpk:sm:w-4"},cm={key:1,class:"cpk:flex cpk:h-3.5 cpk:w-3.5 cpk:items-center cpk:justify-center cpk:text-muted-foreground cpk:sm:h-4 cpk:sm:w-4"},um={class:"cpk:whitespace-nowrap cpk:font-medium cpk:leading-none"},us=t.defineComponent({__name:"CopilotChatSuggestionPill",props:{icon:{default:void 0},isLoading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},type:{default:"button"}},setup(e){const n=e,o=t.computed(()=>n.isLoading||n.disabled);return(a,r)=>(t.openBlock(),t.createElementBlock("button",t.mergeProps({"data-copilotkit":"","data-slot":"suggestion-pill","data-testid":"copilot-chat-suggestion-pill",type:e.type,"aria-busy":e.isLoading?"true":void 0,disabled:o.value,class:"cpk:group cpk:inline-flex cpk:h-7 cpk:w-fit cpk:items-center cpk:gap-1 cpk:rounded-full cpk:border cpk:border-border/60 cpk:bg-background cpk:px-2.5 cpk:text-[11px] cpk:leading-none cpk:text-foreground cpk:transition-colors cpk:cursor-pointer cpk:hover:bg-accent/60 cpk:hover:text-foreground cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-ring cpk:focus-visible:ring-offset-2 cpk:focus-visible:ring-offset-background cpk:disabled:cursor-not-allowed cpk:disabled:text-muted-foreground cpk:disabled:hover:bg-background cpk:disabled:hover:text-muted-foreground cpk:pointer-events-auto cpk:sm:h-8 cpk:sm:gap-1.5 cpk:sm:px-3 cpk:sm:text-xs"},a.$attrs),[e.isLoading?(t.openBlock(),t.createElementBlock("span",lm,[t.createVNode(t.unref(me.Loader2),{class:"cpk:h-3.5 cpk:w-3.5 cpk:animate-spin cpk:sm:h-4 cpk:sm:w-4","aria-hidden":"true"})])):a.$slots.icon||e.icon?(t.openBlock(),t.createElementBlock("span",cm,[t.renderSlot(a.$slots,"icon",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.icon)))])])):t.createCommentVNode("",!0),t.createElementVNode("span",um,[t.renderSlot(a.$slots,"default")])],16,im))}}),At=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatSuggestionView",props:{suggestions:{},loadingIndexes:{default:()=>[]}},emits:["select-suggestion"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.computed(()=>new Set(o.loadingIndexes)),i=t.computed(()=>["cpk:flex cpk:flex-wrap cpk:items-center cpk:gap-1.5 cpk:pl-0 cpk:pr-4 cpk:pointer-events-none cpk:sm:gap-2 cpk:@3xl:px-0",r.class]),l=t.computed(()=>{const{class:g,...h}=r;return h});function c(g,h){return s.value.has(g)||h.isLoading===!0}function u(g,h){a("select-suggestion",g,h)}const p=t.computed(()=>({suggestions:o.suggestions,loadingIndexes:o.loadingIndexes,onSelectSuggestion:u,containerClass:i.value,containerAttrs:l.value}));return(g,h)=>t.renderSlot(g.$slots,"layout",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.renderSlot(g.$slots,"container",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.createElementVNode("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-chat-suggestion-view",class:i.value},l.value),[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.suggestions,(d,f)=>t.renderSlot(g.$slots,"suggestion",{key:`${d.title}-${f}`,suggestion:d,index:f,isLoading:c(f,d),onSelect:()=>u(d,f)},()=>[t.createVNode(us,{"is-loading":c(f,d),type:"button",onClick:C=>u(d,f)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(d.title),1)]),_:2},1032,["is-loading","onClick"])])),128))],16)])])}}),dm=["pin-to-bottom","pin-to-send","none"];function pm(e){return e===void 0||e===!0?"pin-to-bottom":e===!1?"none":dm.includes(e)?e:"pin-to-bottom"}const mm={key:0,class:"cpk:absolute cpk:inset-0 cpk:z-50 cpk:pointer-events-none cpk:flex cpk:items-center cpk:justify-center cpk:bg-primary/5 cpk:border-2 cpk:border-dashed cpk:border-primary/40 cpk:rounded-lg cpk:m-2","data-testid":"copilot-chat-drop-overlay"},fm={class:"cpk:flex cpk:h-full cpk:flex-col cpk:items-center cpk:justify-center cpk:px-4","data-testid":"copilot-chat-view-welcome-screen"},hm={class:"cpk:w-full cpk:max-w-3xl cpk:flex cpk:flex-col cpk:items-center"},gm={class:"cpk:mb-6"},vm={class:"cpk:text-xl cpk:sm:text-2xl cpk:font-medium cpk:text-foreground cpk:text-center"},bm={class:"cpk:w-full"},km={key:0,class:"cpk:mt-4 cpk:flex cpk:justify-center"},ym={class:"cpk:px-4 cpk:@3xl:px-0 cpk:[div[data-sidebar-chat]_&]:px-8 cpk:[div[data-popup-chat]_&]:px-6"},Sm={class:"cpk:max-w-3xl cpk:mx-auto"},wm={key:0,class:"cpk:mt-4 cpk:pl-0 cpk:pr-4 cpk:@3xl:px-0"},Cm={key:0,class:"cpk:max-w-3xl cpk:mx-auto cpk:w-full cpk:pointer-events-auto"},Tm=16,xm=12,Bt=t.defineComponent({__name:"CopilotChatView",props:{messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean,default:!1},hasExplicitThreadId:{type:Boolean,default:!1},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=Re(),s=t.computed(()=>r.value?.labels??ot),i=t.useSlots(),l=t.ref(null),c=t.ref(null),u=t.ref(null),p=t.ref(null),g=t.ref(0),h=t.ref(!0),d=t.computed(()=>o.inputValue!==void 0),f=t.ref(o.inputValue??""),C=t.computed(()=>pm(o.autoScroll)),b=t.computed(()=>C.value==="pin-to-bottom"),k=t.computed(()=>C.value==="pin-to-send");Xd({scrollRef:l,contentRef:c,spacerRef:u,topOffset:16});const{isKeyboardOpen:m,keyboardHeight:v}=rs(),y=t.computed(()=>m.value?v.value:0),x=t.computed(()=>d.value?o.inputValue??"":f.value),S=t.computed(()=>!o.isConnecting&&!o.isRunning&&Array.isArray(o.suggestions)&&o.suggestions.length>0),A=t.computed(()=>Array.isArray(o.attachments)&&o.attachments.length>0),T=t.computed(()=>Object.keys(i).filter(V=>V!=="message-view"&&V!=="scroll-view"&&V!=="feather"&&V!=="scroll-to-bottom-button"&&V!=="input"&&V!=="suggestion-view"&&V!=="welcome-screen"&&V!=="welcome-message")),O=t.computed(()=>o.messages.length===0&&o.welcomeScreen!==!1&&!o.isConnecting&&!o.hasExplicitThreadId),N=t.computed(()=>`${g.value+(S.value?4:32)}px`),z=t.computed(()=>!O.value&&!h.value);let F=null,Z=null;function _(){if(typeof ResizeObserver>"u")return;F?.disconnect(),F=null;const V=p.value;V&&(F=new ResizeObserver(re=>{const Ie=h.value,Xe=re[0]?.contentRect?.height;typeof Xe=="number"?g.value=Xe:M(),U(),b.value&&Ie&&D("auto")}),F.observe(V))}function R(){if(typeof ResizeObserver>"u")return;Z?.disconnect(),Z=null;const V=c.value;V&&(Z=new ResizeObserver(()=>{const re=h.value;U(),b.value&&re&&D("auto")}),Z.observe(V))}t.watch(O,async V=>{V||(await t.nextTick(),M(),_(),R())}),t.watch(()=>o.inputValue,V=>{d.value&&(f.value=V??"")}),t.watch([()=>o.messages,()=>o.suggestions,()=>o.isRunning],async()=>{const V=h.value;await t.nextTick(),!(!b.value||!V)&&(D("auto"),typeof requestAnimationFrame=="function"&&requestAnimationFrame(()=>{D("auto")}))},{deep:!0});function U(){const V=l.value;if(!V){h.value=!0;return}const re=V.scrollHeight-V.scrollTop-V.clientHeight;h.value=re<=xm}function M(){const V=p.value;g.value=V?.offsetHeight??0}function D(V="smooth"){const re=l.value;re&&(typeof re.scrollTo=="function"?re.scrollTo({top:re.scrollHeight,behavior:V}):re.scrollTop=re.scrollHeight,U())}function ae(){U()}function $(V){d.value||(f.value=V),a("input-change",V)}function Y(V){a("submit-message",V)}function H(){a("stop")}function Q(V,re){a("select-suggestion",V,re)}function ce(){a("add-file")}function X(V){o.onDragOver?.(V)}function ve(V){o.onDragLeave?.(V)}function Ae(V){o.onDrop?.(V)}function Ne(){a("start-transcribe")}function Ye(){a("cancel-transcribe")}function Qe(){a("finish-transcribe")}async function Pe(V){await o.onFinishTranscribeWithAudio?.(V)}const et=t.computed(()=>{const V={"onUpdate:modelValue":$,onSubmitMessage:o.onSubmitMessage?Y:void 0};return o.onStop&&(V.onStop=H),o.onAddFile&&(V.onAddFile=ce),o.onStartTranscribe&&(V.onStartTranscribe=Ne),o.onCancelTranscribe&&(V.onCancelTranscribe=Ye),o.onFinishTranscribe&&(V.onFinishTranscribe=Qe),o.onFinishTranscribeWithAudio&&(V.onFinishTranscribeWithAudio=Pe),V}),Je=t.computed(()=>!!o.onStop),Le=t.computed(()=>!!o.onAddFile),ke=t.computed(()=>!!o.onStartTranscribe);return t.onMounted(async()=>{await t.nextTick(),M(),U(),b.value&&(D("auto"),typeof requestAnimationFrame=="function"&&requestAnimationFrame(()=>{D("auto")})),_(),R()}),t.onBeforeUnmount(()=>{F?.disconnect(),Z?.disconnect(),F=null,Z=null}),(V,re)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"",class:"cpk:@container cpk:relative cpk:h-full","data-testid":"copilot-chat-view"},V.$attrs,{onDragover:X,onDragleave:ve,onDrop:Ae}),[e.dragOver?(t.openBlock(),t.createElementBlock("div",mm,[...re[3]||(re[3]=[t.createElementVNode("span",{class:"cpk:text-sm cpk:font-medium cpk:text-primary/70"}," Drop files here ",-1)])])):t.createCommentVNode("",!0),O.value?t.renderSlot(V.$slots,"welcome-screen",{key:1,suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,attachments:e.attachments??[],modelValue:x.value,isRunning:e.isRunning,inputMode:e.inputMode,inputToolsMenu:e.inputToolsMenu,canStop:Je.value,canAddFile:Le.value,canTranscribe:ke.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:H,onAddFile:ce,onStartTranscribe:Ne,onCancelTranscribe:Ye,onFinishTranscribe:Qe,onFinishTranscribeWithAudio:Pe,onSelectSuggestion:Q},()=>[t.createElementVNode("div",fm,[t.createElementVNode("div",hm,[t.createElementVNode("div",gm,[t.renderSlot(V.$slots,"welcome-message",{},()=>[t.createElementVNode("h1",vm,t.toDisplayString(s.value.welcomeMessageText),1)])]),t.createElementVNode("div",bm,[A.value?(t.openBlock(),t.createBlock(yn,{key:0,attachments:e.attachments??[],"class-name":"cpk:mb-2",onRemoveAttachment:re[0]||(re[0]=Ie=>e.onRemoveAttachment&&e.onRemoveAttachment(Ie))},null,8,["attachments"])):t.createCommentVNode("",!0),t.renderSlot(V.$slots,"input",{modelValue:x.value,isRunning:e.isRunning,inputMode:e.inputMode,inputToolsMenu:e.inputToolsMenu,attachments:e.attachments??[],canStop:Je.value,canAddFile:Le.value,canTranscribe:ke.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:H,onAddFile:ce,onStartTranscribe:Ne,onCancelTranscribe:Ye,onFinishTranscribe:Qe,onFinishTranscribeWithAudio:Pe},()=>[t.createVNode(Rt,t.mergeProps({"model-value":x.value,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0,"keyboard-height":y.value},et.value),null,16,["model-value","is-running","mode","tools-menu","keyboard-height"])])]),S.value?(t.openBlock(),t.createElementBlock("div",km,[t.renderSlot(V.$slots,"suggestion-view",{suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,onSelectSuggestion:Q},()=>[t.createVNode(At,{suggestions:e.suggestions,"loading-indexes":e.suggestionLoadingIndexes,onSelectSuggestion:Q},null,8,["suggestions","loading-indexes"])])])):t.createCommentVNode("",!0)])])]):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.renderSlot(V.$slots,"scroll-view",{messages:e.messages,isRunning:e.isRunning,suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,messagePaddingBottom:N.value,showScrollToBottomButton:z.value,onSelectSuggestion:Q,onScroll:ae,scrollToBottom:D},()=>[t.createElementVNode("div",{ref_key:"scrollContainerRef",ref:l,"data-testid":"copilot-chat-view-scroll",class:"cpk:h-full cpk:max-h-full cpk:min-h-0 cpk:overflow-y-scroll cpk:overflow-x-hidden cpk:relative",onScroll:ae},[t.createElementVNode("div",ym,[t.createElementVNode("div",{ref_key:"scrollContentRef",ref:c,"data-testid":"copilot-scroll-content",style:t.normalizeStyle({paddingBottom:N.value})},[t.createElementVNode("div",Sm,[t.renderSlot(V.$slots,"message-view",{messages:e.messages,isRunning:e.isRunning},()=>[t.createVNode(cs,{messages:e.messages,"is-running":e.isRunning},t.createSlots({_:2},[t.renderList(T.value,Ie=>({name:Ie,fn:t.withCtx(Xe=>[t.renderSlot(V.$slots,Ie,t.normalizeProps(t.guardReactiveProps(Xe)))])}))]),1032,["messages","is-running"])]),S.value?(t.openBlock(),t.createElementBlock("div",wm,[t.renderSlot(V.$slots,"suggestion-view",{suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,onSelectSuggestion:Q},()=>[t.createVNode(At,{class:"cpk:mb-3 cpk:lg:ml-4 cpk:lg:mr-4 cpk:ml-0 cpk:mr-0",suggestions:e.suggestions,"loading-indexes":e.suggestionLoadingIndexes,onSelectSuggestion:Q},null,8,["suggestions","loading-indexes"])])])):t.createCommentVNode("",!0)])],4),k.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"spacerRef",ref:u,"data-pin-to-send-spacer":"","aria-hidden":"true",style:{height:"0px",flex:"0 0 auto"}},null,512)):t.createCommentVNode("",!0)])],544)]),t.renderSlot(V.$slots,"feather",{},()=>[re[4]||(re[4]=t.createElementVNode("div",{"data-testid":"copilot-chat-view-feather"},null,-1))]),z.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"cpk:absolute cpk:inset-x-0 cpk:flex cpk:justify-center cpk:z-30 cpk:pointer-events-none",style:t.normalizeStyle({bottom:`${g.value+Tm}px`})},[t.renderSlot(V.$slots,"scroll-to-bottom-button",{onClick:()=>D()},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-view-scroll-to-bottom",class:"cpk:rounded-full cpk:w-10 cpk:h-10 cpk:p-0 cpk:pointer-events-auto cpk:bg-white cpk:dark:bg-gray-900 cpk:shadow-lg cpk:border cpk:border-gray-200 cpk:dark:border-gray-700 cpk:hover:bg-gray-50 cpk:dark:hover:bg-gray-800 cpk:flex cpk:items-center cpk:justify-center cpk:cursor-pointer",onClick:re[1]||(re[1]=Ie=>D())},[t.createVNode(t.unref(me.ChevronDown),{class:"cpk:w-4 cpk:h-4 cpk:text-gray-600 cpk:dark:text-white"})])])],4)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"inputContainerRef",ref:p,class:"cpk:absolute cpk:bottom-0 cpk:left-0 cpk:right-0 cpk:z-20 cpk:pointer-events-none","data-testid":"copilot-input-overlay"},[A.value?(t.openBlock(),t.createElementBlock("div",Cm,[t.createVNode(yn,{attachments:e.attachments??[],"class-name":"cpk:px-4",onRemoveAttachment:re[2]||(re[2]=Ie=>e.onRemoveAttachment&&e.onRemoveAttachment(Ie))},null,8,["attachments"])])):t.createCommentVNode("",!0),t.renderSlot(V.$slots,"input",{modelValue:x.value,isRunning:e.isRunning,inputMode:e.inputMode,inputToolsMenu:e.inputToolsMenu,attachments:e.attachments??[],canStop:Je.value,canAddFile:Le.value,canTranscribe:ke.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:H,onAddFile:ce,onStartTranscribe:Ne,onCancelTranscribe:Ye,onFinishTranscribe:Qe,onFinishTranscribeWithAudio:Pe},()=>[t.createVNode(Rt,t.mergeProps({"model-value":x.value,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0,"keyboard-height":y.value,"bottom-anchored":!0},et.value),null,16,["model-value","is-running","mode","tools-menu","keyboard-height"])])],512)],64))],16))}});function Im(e){const n=t.ref(null),o=(r,s)=>{n.value=null,ie.emitInspectorActiveThread({requestId:r.requestId,threadId:s,agentId:r.agentId,source:"app"})},a=r=>{const s=n.value;!s||s.requestId!==r||(ie.emitInspectorViewThreadResult({requestId:r,threadId:s.threadId,agentId:s.agentId,ok:!1,reason:"connect-failed"}),o(s,s.previousThreadId))};if(ie.isInspectorThreadBridgeEnabled()){const r=ie.onInspectorViewThread(i=>i.agentId!==e.agentId.value?!1:(n.value=n.value?{...n.value,...i}:{...i,previousThreadId:e.baseThreadId.value},ie.emitInspectorViewThreadResult({...i,ok:!0}),ie.emitInspectorActiveThread({...i,source:"override"}),!0)),s=ie.onInspectorStopViewing(i=>{const l=n.value;l&&i.requestId===l.requestId&&i.agentId===l.agentId&&o(l,l.previousThreadId)});t.onBeforeUnmount(()=>{r(),s()})}return t.watch([e.agentId,e.baseThreadId],([r,s])=>{const i=n.value;if(i){if(r!==i.agentId){o(i,i.previousThreadId);return}s!==i.previousThreadId&&s!==i.threadId&&o(i,s)}}),{inspectorThreadId:t.computed(()=>n.value?.threadId??null),inspectorRequestId:t.computed(()=>n.value?.requestId??null),failInspectorOverride:a}}const Em=["accept"],Rm={key:2,style:{position:"absolute",bottom:"100px",left:"50%",transform:"translateX(-50%)","background-color":"#ef4444",color:"white",padding:"8px 16px","border-radius":"8px","font-size":"14px","z-index":"50"}},Pn=t.defineComponent({inheritAttrs:!1,__name:"CopilotChat",props:{agentId:{},threadId:{},throttleMs:{},labels:{},attachments:{},onError:{},autoScroll:{type:[String,Boolean],default:!0},welcomeScreen:{type:Boolean,default:!0},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.useSlots(),i=Re(),{copilotkit:l}=Ve(),c=t.computed(()=>Object.keys(s).filter(j=>j!=="chat-view")),u=t.ref(G.randomUUID()),p=t.ref("input"),g=t.ref(o.inputValue??""),h=t.ref(null),d=t.ref(!1),f=t.ref(!1),C=t.ref(!1),b=t.shallowRef(null);let k=null;const m=new WeakMap;let v=Promise.resolve();const y=new WeakMap,x=t.computed(()=>o.agentId??i.value?.agentId??G.DEFAULT_AGENT_ID),S=t.computed(()=>o.threadId??i.value?.threadId),A=t.computed(()=>S.value??u.value),T=t.computed(()=>!!o.threadId||!!i.value?.hasExplicitThreadId),{inspectorThreadId:O,inspectorRequestId:N,failInspectorOverride:z}=Im({agentId:x,baseThreadId:A}),F=t.computed(()=>O.value??A.value),Z=t.computed(()=>O.value!==null||T.value),_=t.ref(null),R=t.computed(()=>Z.value&&_.value!==F.value),U=Wr(t.computed(()=>o.labels)),M=t.computed(()=>U.value),{agent:D}=rn({agentId:x,throttleMs:t.computed(()=>o.throttleMs)}),{suggestions:ae}=os({agentId:x}),$=zt(),Y=t.computed(()=>$.value.checkFeature("chat"));t.watch(Y,j=>{j||console.warn('[CopilotKit] Warning: "chat" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0});const H=t.computed(()=>l.value.audioFileTranscriptionEnabled),Q=t.computed(()=>typeof window<"u"&&typeof MediaRecorder<"u"),ce=t.computed(()=>H.value&&Q.value),{attachments:X,enabled:ve,dragOver:Ae,fileInputRef:Ne,containerRef:Ye,handleFileUpload:Qe,handleDragOver:Pe,handleDragLeave:et,handleDrop:Je,removeAttachment:Le,consumeAttachments:ke}=as({config:t.computed(()=>o.attachments)}),V=t.computed(()=>d.value?"processing":p.value),re=t.ref(0),Ie=t.computed(()=>[...D.value?.messages??[]]),Xe=t.computed(()=>(re.value,D.value?.isRunning??!1)),Ee=t.computed(()=>Xe.value&&Ie.value.length>0),lt=t.computed(()=>{for(let j=Ie.value.length-1;j>=0;j--){const ne=Ie.value[j];if(ne?.role==="user")return ne.id}return null}),ct=t.ref(0);let ut=lt.value;t.watch(lt,j=>{j&&j!==ut&&(ct.value+=1,ut=j)});const gt=t.computed(()=>({id:lt.value,sendNonce:ct.value}));t.provide(ss,gt),t.watch(()=>D.value,(j,ne,W)=>{if(!j)return;const w=j.subscribe({onRunStartedEvent:()=>{re.value+=1},onRunFinishedEvent:()=>{re.value+=1},onRunErrorEvent:()=>{re.value+=1}});W(()=>w.unsubscribe())},{immediate:!0}),t.watch(()=>o.inputValue,j=>{j!==void 0&&(g.value=j)}),t.watch([()=>o.threadId,()=>i.value?.threadId],([j,ne],W)=>{j||ne||W&&(W[0]||W[1])&&(u.value=G.randomUUID())}),t.watch([()=>l.value,x,()=>o.onError],([j,ne,W],w,B)=>{if(!W)return;const K=j.subscribe({onError:oe=>{(oe.context?.agentId===ne||!oe.context?.agentId)&&W({error:oe.error,code:oe.code,context:oe.context})}});B(()=>K.unsubscribe())},{immediate:!0}),t.watch([()=>l.value,x,F,N],([j,ne,W,w],B,K)=>{if(!w)return;const oe=j.subscribe({onError:Ce=>{Ce.code===ie.CopilotKitCoreErrorCode.AGENT_CONNECT_FAILED&&Ce.context?.agentId===ne&&Ce.context?.threadId===W&&z(w)}});K(()=>oe.unsubscribe())},{immediate:!0}),t.watch([f,()=>l.value,()=>D.value,F,Z,N],([j,ne,W,w,B,K],oe,Ce)=>{if(!j||typeof window>"u"||!W)return;const de=b.value;if(de!==null&&de.threadId!==w&&de.inspectorRequestId!==K&&(de.inspectorRequestId!==null||K!==null))try{ne.stopAgent({agent:W})}catch{}if(y.set(W,W.threadId),W.threadId=w,!B)return;const He=Wt.AbstractAgent.prototype,Ge=W,tt=Ge.connect!==He.connect,nt=Ge.connectAgent!==He.connectAgent;if(!tt&&!nt){_.value=w;return}const We=b.value,wt=We&&We.core===ne&&We.agent===W&&We.threadId===w&&We.inspectorRequestId===K;let Ke;if(wt&&We)Ke=We;else{const De=new AbortController;Ke={core:ne,agent:W,threadId:w,inspectorRequestId:K,abortController:De,detached:!1},b.value=Ke,k=Ke,v.then(()=>{if(!Ke.detached)return ie.ɵisHttpAgent(W)&&(W.abortController=De),ne.connectAgent({agent:W})}).catch(Dt=>{if(Ke.detached){Ke.clearDiscardedBaseline?.();return}Dt instanceof Wt.AGUIConnectNotImplementedError||(console.error("CopilotChat: connectAgent failed",Dt),K&&z(K))}).finally(()=>{if(Ke.detached){Ke.clearDiscardedBaseline?.();return}(typeof requestAnimationFrame=="function"?requestAnimationFrame:vt=>setTimeout(vt,16))(()=>{Ke.detached||(_.value=Ke.threadId)})})}Ce(()=>{const De=b.value;if(!De||De!==Ke||!(C.value||l.value!==De.core||D.value!==De.agent||F.value!==De.threadId))return;De.detached=!0,De.abortController.abort();const vt=De.agent.detachActiveRun().catch(ys=>{console.error("CopilotChat: detachActiveRun failed",ys)});m.set(De.agent,vt),v=Promise.all([v,vt]).then(()=>{}),vt.then(()=>{m.get(De.agent)===vt&&m.delete(De.agent)}),b.value=null})},{immediate:!0});let L;t.watch([F,Z,()=>D.value],([j,ne,W],w,B)=>{const K=L,oe={threadId:j,agent:W};if(L=oe,!W||ne||K===void 0||j===K.threadId)return;let Ce=!0,de=!0;B(()=>{Ce=!1});const _e=K.agent===W?K.threadId:y.get(W),He=()=>{_e&&("clearReplayCursor"in W&&typeof W.clearReplayCursor=="function"&&W.clearReplayCursor(_e),"clearReconnectCursor"in W&&typeof W.clearReconnectCursor=="function"&&W.clearReconnectCursor(_e))},Ge=()=>{!Ce||!de||C.value||L!==oe||D.value!==W||(W.setMessages([]),W.setState({}),W.pendingInterrupts=[],He())};k?.agent===W&&k.threadId===_e&&(k.clearDiscardedBaseline=Ge);const tt=m.get(W)??W.detachActiveRun();m.set(W,tt);const nt=()=>{de&&(He(),Ge(),de=!1)};Ge(),v=Promise.all([v,tt]).then(nt).catch(We=>{console.error("CopilotChat: detachActiveRun failed",We)}).finally(()=>{m.get(W)===tt&&m.delete(W)})},{immediate:!0}),t.onBeforeUnmount(()=>{C.value=!0}),t.onMounted(()=>{f.value=!0}),t.watch(h,(j,ne,W)=>{if(!j)return;const w=setTimeout(()=>{h.value=null},5e3);W(()=>clearTimeout(w))});async function fe(){const j=D.value;if(j)try{const ne=b.value;ne&&ne.agent===j&&ne.threadId===F.value&&(ne.detached=!0,ne.abortController.abort(),b.value=null,await ne.agent.detachActiveRun?.()),await l.value.runAgent({agent:j})}catch(ne){console.error("CopilotChat: runAgent failed",ne)}}async function pe(j){if(X.value.some(w=>w.status==="uploading")){console.error("[CopilotKit] Cannot send while attachments are uploading");return}if(a("submit-message",j),!D.value){console.error("[CopilotKit] Cannot send message: no agent available");return}const W=ke();if(W.length>0){const w=[];j.trim()&&w.push({type:"text",text:j});for(const B of W)w.push(G.createAttachmentContent(B));D.value.addMessage({id:G.randomUUID(),role:"user",content:w})}else D.value.addMessage({id:G.randomUUID(),role:"user",content:j});g.value="",await fe()}async function Ue(j,ne){a("select-suggestion",j,ne),D.value?.addMessage({id:G.randomUUID(),role:"user",content:j.message}),await fe()}function Ze(){const j=D.value;if(j)try{l.value.stopAgent({agent:j})}catch(ne){console.error("CopilotChat: stopAgent failed",ne);try{j.abortRun()}catch(W){console.error("CopilotChat: abortRun fallback failed",W)}}}function we(){a("stop"),Ee.value&&Ze()}function Oe(j){g.value=j,a("input-change",j)}function je(){a("add-file"),ve.value&&setTimeout(()=>{Ne.value?.click()},100)}function Be(){ce.value&&(h.value=null,p.value="transcribe",a("start-transcribe"))}function at(){ce.value&&(h.value=null,p.value="input",a("cancel-transcribe"))}function st(){ce.value&&(p.value="input",a("finish-transcribe"))}async function Ft(j){if(ce.value){if(o.onFinishTranscribeWithAudio){await o.onFinishTranscribeWithAudio(j);return}d.value=!0;try{h.value=null;const ne=await Kd(l.value,j),W=g.value.trim();g.value=W?`${W} ${ne.text}`:ne.text}catch(ne){if(console.error("CopilotChat: Transcription failed",ne),ne instanceof kt){const{code:W,retryable:w,message:B}=ne.info;switch(W){case G.TranscriptionErrorCode.RATE_LIMITED:h.value="Too many requests. Please wait a moment.";break;case G.TranscriptionErrorCode.AUTH_FAILED:h.value="Authentication error. Please check your configuration.";break;case G.TranscriptionErrorCode.AUDIO_TOO_LONG:h.value="Recording is too long. Please try a shorter recording.";break;case G.TranscriptionErrorCode.AUDIO_TOO_SHORT:h.value="Recording is too short. Please try again.";break;case G.TranscriptionErrorCode.INVALID_AUDIO_FORMAT:h.value="Audio format not supported.";break;case G.TranscriptionErrorCode.SERVICE_NOT_CONFIGURED:h.value="Transcription service is not available.";break;case G.TranscriptionErrorCode.NETWORK_ERROR:h.value="Network error. Please check your connection.";break;default:h.value=w?"Transcription failed. Please try again.":B}}else h.value="Transcription failed. Please try again."}finally{d.value=!1}}}const Fe=t.computed(()=>({messages:Ie.value,autoScroll:o.autoScroll,isRunning:Xe.value,suggestions:ae.value,suggestionLoadingIndexes:[],welcomeScreen:o.welcomeScreen,attachments:X.value,dragOver:Ae.value,inputValue:g.value,inputMode:V.value,inputToolsMenu:o.inputToolsMenu,isConnecting:R.value,hasExplicitThreadId:Z.value,canStop:Ee.value,canAddFile:ve.value,canTranscribe:ce.value,onSubmitMessage:pe,onStop:we,onInputChange:Oe,onSelectSuggestion:Ue,onRemoveAttachment:Le,onAddFile:je,onDragOver:ve.value?Pe:void 0,onDragLeave:ve.value?et:void 0,onDrop:ve.value?Je:void 0,onStartTranscribe:Be,onCancelTranscribe:at,onFinishTranscribe:st,onFinishTranscribeWithAudio:Ft})),sn=t.computed(()=>{const j={...r,onSubmitMessage:pe,onInputChange:Oe,onSelectSuggestion:Ue};return Ee.value&&(j.onStop=we),ve.value&&(j.onAddFile=je,j.attachments=X.value,j.onRemoveAttachment=Le,j.dragOver=Ae.value,j.onDragOver=Pe,j.onDragLeave=et,j.onDrop=Je),ce.value&&(j.onStartTranscribe=Be,j.onCancelTranscribe=at,j.onFinishTranscribe=st),j});return(j,ne)=>(t.openBlock(),t.createBlock(an,{"agent-id":x.value,"thread-id":F.value,"has-explicit-thread-id":Z.value,labels:M.value},{default:t.withCtx(()=>[t.createElementVNode("div",{ref_key:"attachmentContainerRef",ref:Ye,style:{display:"contents"}},[t.unref(ve)?(t.openBlock(),t.createElementBlock("input",{key:0,ref_key:"fileInputRef",ref:Ne,type:"file",multiple:"",accept:o.attachments?.accept??"*/*",style:{display:"none"},onChange:ne[0]||(ne[0]=W=>{t.unref(Qe)(W)})},null,40,Em)):t.createCommentVNode("",!0),Y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vn,{key:1,"feature-name":"Chat"})),h.value?(t.openBlock(),t.createElementBlock("div",Rm,t.toDisplayString(h.value),1)):t.createCommentVNode("",!0),t.renderSlot(j.$slots,"chat-view",t.normalizeProps(t.guardReactiveProps(Fe.value)),()=>[t.createVNode(Bt,t.mergeProps(sn.value,{messages:Fe.value.messages,"auto-scroll":Fe.value.autoScroll,"is-running":Fe.value.isRunning,suggestions:Fe.value.suggestions,"suggestion-loading-indexes":Fe.value.suggestionLoadingIndexes,"welcome-screen":Fe.value.welcomeScreen,"input-value":Fe.value.inputValue,"input-mode":Fe.value.inputMode,"input-tools-menu":Fe.value.inputToolsMenu,"is-connecting":Fe.value.isConnecting,"has-explicit-thread-id":Fe.value.hasExplicitThreadId,"on-finish-transcribe-with-audio":Fe.value.onFinishTranscribeWithAudio}),t.createSlots({_:2},[t.renderList(c.value,W=>({name:W,fn:t.withCtx(w=>[t.renderSlot(j.$slots,W,t.normalizeProps(t.guardReactiveProps(w)))])}))]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","is-connecting","has-explicit-thread-id","on-finish-transcribe-with-audio"])])],512)]),_:3},8,["agent-id","thread-id","has-explicit-thread-id","labels"]))}}),Am=["src"],_m=["src"],$m={key:0,class:"cpk:text-xs cpk:text-muted-foreground cpk:truncate cpk:max-w-[300px]","data-testid":"copilot-chat-attachment-renderer-audio-filename"},Mm=["src"],Nm={class:"cpk:text-xs cpk:font-bold cpk:uppercase","data-testid":"copilot-chat-attachment-renderer-document-icon"},Om={class:"cpk:text-sm cpk:text-muted-foreground cpk:truncate","data-testid":"copilot-chat-attachment-renderer-document-label"},zm=t.defineComponent({__name:"CopilotChatAttachmentRenderer",props:{type:{},source:{},filename:{default:void 0},className:{default:""}},setup(e){const n=e,o=t.ref(!1),a=t.computed(()=>G.getSourceUrl(n.source)),r=t.computed(()=>n.filename||n.source.mimeType||"Unknown type");return(s,i)=>n.type==="image"&&!o.value?(t.openBlock(),t.createElementBlock("img",{key:0,src:a.value,alt:"Image attachment",class:t.normalizeClass(["cpk:max-w-full cpk:h-auto cpk:rounded-lg",n.className]),"data-testid":"copilot-chat-attachment-renderer-image",onError:i[0]||(i[0]=l=>o.value=!0)},null,42,Am)):n.type==="image"?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["cpk:flex cpk:flex-col cpk:items-center cpk:justify-center cpk:rounded-lg cpk:bg-muted cpk:p-4 cpk:text-sm cpk:text-muted-foreground",n.className]),"data-testid":"copilot-chat-attachment-renderer-image-fallback"},[...i[1]||(i[1]=[t.createElementVNode("span",null,"Failed to load image",-1)])],2)):n.type==="audio"?(t.openBlock(),t.createElementBlock("div",{key:2,class:t.normalizeClass(["cpk:flex cpk:flex-col cpk:gap-1",n.className]),"data-testid":"copilot-chat-attachment-renderer-audio"},[t.createElementVNode("audio",{src:a.value,controls:"",preload:"metadata",class:"cpk:max-w-[300px] cpk:w-full cpk:h-10"},null,8,_m),n.filename?(t.openBlock(),t.createElementBlock("span",$m,t.toDisplayString(n.filename),1)):t.createCommentVNode("",!0)],2)):n.type==="video"?(t.openBlock(),t.createElementBlock("video",{key:3,src:a.value,controls:"",preload:"metadata",class:t.normalizeClass(["cpk:max-w-[400px] cpk:w-full cpk:rounded-lg",n.className]),"data-testid":"copilot-chat-attachment-renderer-video"},null,10,Mm)):(t.openBlock(),t.createElementBlock("div",{key:4,class:t.normalizeClass(["cpk:inline-flex cpk:items-center cpk:gap-2 cpk:px-3 cpk:py-2 cpk:border cpk:border-border cpk:rounded-lg cpk:bg-muted",n.className]),"data-testid":"copilot-chat-attachment-renderer-document"},[t.createElementVNode("span",Nm,t.toDisplayString(t.unref(G.getDocumentIcon)(n.source.mimeType??"")),1),t.createElementVNode("span",Om,t.toDisplayString(r.value),1)],2))}});function dt(e,n,o){o.value=n(e.getState());const a=e.select(n).subscribe(()=>{o.value=n(e.getState())});t.onScopeDispose(()=>a.unsubscribe())}function ds(e){const{copilotkit:n}=Ve(),o=ie.ɵcreateThreadStore({fetch:n.value.ɵruntimeFetch}),a=t.computed(()=>t.toValue(e.agentId)),r=t.computed(()=>t.toValue(e.includeArchived)),s=t.computed(()=>t.toValue(e.limit)),i=t.computed(()=>t.toValue(e.enabled)??!0),l=t.computed(()=>n.value.threadEndpoints?.list!==!1),c=t.computed(()=>n.value.threadEndpoints?.mutations!==!1),u=t.computed(()=>!!n.value.runtimeUrl&&n.value.runtimeConnectionStatus===ie.CopilotKitCoreRuntimeConnectionStatus.Connected&&!l.value),p=t.computed(()=>u.value?new Error("Thread endpoints are not available on this CopilotKit runtime"):null),g=t.computed(()=>c.value?null:new Error("Thread mutations are not available on this CopilotKit runtime")),h=t.computed(()=>JSON.stringify(Object.entries(n.value.headers??{}).sort(([z],[F])=>z.localeCompare(F)))),d=t.ref([]),f=t.ref(!1),C=t.ref(null),b=t.ref(null),k=t.ref(!1),m=t.ref(!1),v=t.ref(!1);dt(o,ie.ɵselectThreads,d),dt(o,ie.ɵselectThreadsIsLoading,f),dt(o,ie.ɵselectThreadsError,C),dt(o,ie.ɵselectFetchMoreError,b),dt(o,ie.ɵselectHasNextPage,k),dt(o,ie.ɵselectIsFetchingNextPage,m),dt(o,ie.ɵselectIsMutating,v),o.start(),t.onScopeDispose(()=>{o.stop()}),t.watch([i,a],([z,F],Z,_)=>{z&&(n.value.registerThreadStore(F,o),_(()=>{n.value.unregisterThreadStore(F)}))},{immediate:!0});const y=t.ref(!1);t.watch([()=>n.value.runtimeUrl,()=>n.value.runtimeConnectionStatus,h,()=>n.value.intelligence?.wsUrl,a,r,s,i,l],([z,F,,Z,_,R,U,M,D])=>{if(!z||!M){o.setContext(null),y.value=!1;return}if(F!==ie.CopilotKitCoreRuntimeConnectionStatus.Connected)return;if(!D){o.setContext(null),y.value=!1;return}const ae={runtimeUrl:z,headers:{...n.value.headers},wsUrl:Z,agentId:_,includeArchived:R,limit:U};o.setContext(ae),y.value=!0},{immediate:!0});const x=t.computed(()=>n.value.runtimeUrl?null:new Error("Runtime URL is not configured")),S=t.computed(()=>!!n.value.runtimeUrl&&i.value&&!u.value&&!y.value),A=t.computed(()=>x.value||p.value?!1:S.value||f.value),T=t.computed(()=>x.value??p.value??C.value),O=t.computed(()=>C.value);function N(z){return(...F)=>g.value?Promise.reject(g.value):z(...F)}return{threads:t.computed(()=>d.value.map(({id:z,agentId:F,name:Z,archived:_,createdAt:R,updatedAt:U,lastRunAt:M})=>({id:z,agentId:F,name:Z,archived:_,createdAt:R,updatedAt:U,...M!==void 0?{lastRunAt:M}:{}}))),isLoading:A,error:T,listError:O,fetchMoreError:b,hasMoreThreads:k,isFetchingMoreThreads:m,isMutating:v,fetchMoreThreads:()=>o.fetchNextPage(),refetchThreads:()=>o.refetchThreads(),startNewThread:()=>o.startNewThread(),renameThread:N((z,F)=>o.renameThread(z,F)),archiveThread:N(z=>o.archiveThread(z)),unarchiveThread:N(z=>o.unarchiveThread(z)),deleteThread:N(z=>o.deleteThread(z))}}const Io="copilot-chat-input-textarea",Bm="copilot-chat-view",Fm=t.defineComponent({__name:"CopilotThreadsDrawer",props:{agentId:{},onThreadSelect:{},onNewThread:{},onLicensed:{},licenseUrl:{},label:{},recentLabel:{},collapsible:{type:Boolean,default:!0},limit:{},dataTestId:{default:"copilot-threads-drawer"}},emits:["collapse-change"],setup(e,{emit:n}){const o=e,a=n,r=Re(),s=zt(),i=t.computed(()=>{const M=s.value.status;return M==="unknown"?!0:(M==="valid"||M==="expiring")&&s.value.checkFeature("threads")}),l=t.computed(()=>s.value.status===null),c=t.computed(()=>o.agentId??r.value?.agentId??G.DEFAULT_AGENT_ID),u=t.computed(()=>r.value?.threadId??null),p=t.ref(!1),g=t.computed(()=>r.value?r.value.drawerOpen:p.value);function h(M){r.value?r.value.setDrawerOpen?.(M):p.value=M}const d=ds({agentId:c,includeArchived:!0,enabled:i,limit:()=>o.limit});function f(M){return{id:M.id,name:M.name,archived:M.archived,createdAt:M.createdAt,updatedAt:M.updatedAt,...M.lastRunAt!==void 0?{lastRunAt:M.lastRunAt}:{}}}const C=t.computed(()=>d.threads.value.map(f)),b=t.ref(!1),k=t.ref(null),m=t.ref(null);t.onMounted(async()=>{const M=await import("@copilotkit/web-components/threads-drawer");M.defineCopilotKitThreadsDrawer(),k.value=M.COPILOTKIT_THREADS_DRAWER_TAG,b.value=!0}),t.watchEffect(()=>{const M=m.value;M&&(M.threads=C.value,M.loading=d.isLoading.value||l.value,M.error=d.listError.value?.message??null,M.activeThreadId=u.value,M.licensed=i.value||l.value,M.hasMore=d.hasMoreThreads.value,M.fetchingMore=d.isFetchingMoreThreads.value,M.fetchMoreError=d.fetchMoreError.value?.message??null,M.open=g.value,o.label!==void 0&&(M.label=o.label),o.licenseUrl!==void 0&&(M.licenseUrl=o.licenseUrl),o.collapsible!==void 0&&(M.collapsible=o.collapsible))},{flush:"post"});const v=r.value?.registerDrawer?.();v&&t.onScopeDispose(v);function y(M){if(typeof document>"u")return null;const D=M?.closest?.(`[data-testid="${Bm}"]`);if(D){const ae=D.querySelector(`[data-testid="${Io}"]`);if(ae)return ae}return document.querySelector(`[data-testid="${Io}"]`)}function x(){y(m.value)?.focus()}function S(M){const{threadId:D}=M.detail;o.onThreadSelect?o.onThreadSelect(D):r.value?.setActiveThreadId?.(D,{explicit:!0}),x()}function A(){d.startNewThread(),o.onNewThread?o.onNewThread():r.value?.startNewThread?.()}function T(M){const{threadId:D}=M.detail;d.archiveThread(D).catch(ae=>console.error("CopilotThreadsDrawer: archiveThread failed",ae))}function O(M){const{threadId:D}=M.detail;d.unarchiveThread(D).catch(ae=>console.error("CopilotThreadsDrawer: unarchiveThread failed",ae))}function N(M){const{threadId:D}=M.detail,ae=D===u.value;d.deleteThread(D).then(()=>{ae&&A()}).catch($=>console.error("CopilotThreadsDrawer: deleteThread failed",$))}function z(){d.refetchThreads()}function F(M){const{collapsed:D}=M.detail;a("collapse-change",D)}function Z(M){const{scope:D}=M.detail;D==="fetch-more"?d.fetchMoreThreads():d.refetchThreads()}function _(){d.fetchMoreThreads()}function R(M){const{open:D}=M.detail;h(D)}function U(){o.onLicensed?.()}return(M,D)=>b.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(k.value),{key:0,ref_key:"elRef",ref:m,"data-testid":e.dataTestId,"recent-label":e.recentLabel,onThreadSelected:S,onNewThread:A,onArchive:T,onUnarchive:O,onDelete:N,onFilterChange:z,onCollapseChange:F,onRetry:Z,onLoadMore:_,onOpenChange:R,onLicensed:U},{default:t.withCtx(()=>[t.renderSlot(M.$slots,"default"),M.$slots.row?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(d).threads.value,ae=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:ae.id},{ref_for:!0},{slot:`row:${ae.id}`}),[t.renderSlot(M.$slots,"row",{thread:ae})],16))),128)):t.createCommentVNode("",!0)]),_:3},40,["data-testid","recent-label"])):t.createCommentVNode("",!0)}}),Ln=t.defineComponent({name:"CopilotChatToggleButtonCloseIcon",inheritAttrs:!1,setup(e,{attrs:n}){return()=>{const{class:o,...a}=n;return t.h(me.X,{...a,class:["cpk:h-6 cpk:w-6",o],strokeWidth:1.75})}}}),Un=t.defineComponent({name:"CopilotChatToggleButtonOpenIcon",inheritAttrs:!1,setup(e,{attrs:n}){return()=>{const{class:o,...a}=n;return t.h(me.MessageCircle,{...a,class:["cpk:h-6 cpk:w-6",o],strokeWidth:1.75,fill:"currentColor"})}}}),Dm=["type","data-state","aria-label","aria-pressed","disabled"],Gt="cpk:h-6 cpk:w-6",Eo="cpk:pointer-events-none cpk:absolute cpk:inset-0 cpk:flex cpk:items-center cpk:justify-center cpk:will-change-transform",jn=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatToggleButton",props:{disabled:{type:Boolean,default:!1},type:{default:"button"}},setup(e){const n=e,o=t.useAttrs(),a=Re(),r=t.ref(!1),s=t.computed(()=>a.value?.labels??ot),i=t.computed(()=>a.value?.isModalOpen??r.value),l=t.computed(()=>i.value?s.value.chatToggleCloseLabel:s.value.chatToggleOpenLabel),c=t.computed(()=>["cpk:fixed cpk:bottom-6 cpk:right-6 cpk:z-[1100] cpk:flex cpk:h-14 cpk:w-14 cpk:items-center cpk:justify-center","cpk:rounded-full cpk:border cpk:border-primary cpk:bg-primary cpk:text-primary-foreground","cpk:shadow-sm cpk:transition-all cpk:duration-200 cpk:ease-out","cpk:hover:scale-[1.04] cpk:hover:shadow-md cpk:cursor-pointer cpk:active:scale-[0.96]","cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-primary/50 cpk:focus-visible:ring-offset-2 cpk:focus-visible:ring-offset-background","cpk:disabled:pointer-events-none cpk:disabled:opacity-60",o.class]),u=t.computed(()=>{const{class:f,onClick:C,...b}=o;return b}),p=Object.freeze({transition:"opacity 120ms ease-out, transform 260ms cubic-bezier(0.22, 1, 0.36, 1)"});function g(f){if(a.value?.setModalOpen){a.value.setModalOpen(f);return}r.value=f}function h(){const f=o.onClick;return Array.isArray(f)?f.filter(C=>typeof C=="function"):typeof f=="function"?[f]:[]}function d(f){if(!n.disabled){for(const C of h())C(f);f.defaultPrevented||g(!i.value)}}return(f,C)=>(t.openBlock(),t.createElementBlock("button",t.mergeProps({"data-copilotkit":"",type:e.type,"data-slot":"chat-toggle-button","data-state":i.value?"open":"closed",class:c.value,"aria-label":l.value,"aria-pressed":i.value,disabled:e.disabled},u.value,{onClick:d}),[t.createElementVNode("span",{"aria-hidden":"true","data-slot":"chat-toggle-button-open-icon",class:t.normalizeClass(Eo),style:t.normalizeStyle({...t.unref(p),opacity:i.value?0:1,transform:`scale(${i.value?.75:1}) rotate(${i.value?90:0}deg)`})},[t.renderSlot(f.$slots,"open-icon",{iconClass:Gt,isOpen:i.value},()=>[t.createVNode(t.unref(Un),{class:t.normalizeClass(Gt),"aria-hidden":"true",focusable:!1})])],4),t.createElementVNode("span",{"aria-hidden":"true","data-slot":"chat-toggle-button-close-icon",class:t.normalizeClass(Eo),style:t.normalizeStyle({...t.unref(p),opacity:i.value?1:0,transform:`scale(${i.value?1:.75}) rotate(${i.value?0:-90}deg)`})},[t.renderSlot(f.$slots,"close-icon",{iconClass:Gt,isOpen:i.value},()=>[t.createVNode(t.unref(Ln),{class:t.normalizeClass(Gt),"aria-hidden":"true",focusable:!1})])],4)],16,Dm))}}),ps=t.defineComponent({name:"CopilotModalHeaderCloseButton",inheritAttrs:!1,setup(e,{slots:n}){const o=t.useAttrs(),a=t.computed(()=>typeof o["aria-label"]=="string"?o["aria-label"]:"Close");return()=>{const{class:r,type:s,...i}=o;return t.h("button",{...i,type:typeof s=="string"?s:"button",class:["cpk:inline-flex cpk:size-8 cpk:items-center cpk:justify-center cpk:rounded-full cpk:text-muted-foreground cpk:transition cpk:cursor-pointer","cpk:hover:bg-muted cpk:hover:text-foreground cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-ring",r],"aria-label":a.value},n.default?n.default():[t.h(me.X,{class:"cpk:h-4 cpk:w-4","aria-hidden":!0})])}}}),ms=t.defineComponent({name:"CopilotModalHeaderTitle",inheritAttrs:!1,setup(e,{attrs:n,slots:o}){return()=>{const{class:a,...r}=n;return t.h("div",{...r,class:["cpk:w-full cpk:text-base cpk:font-medium cpk:leading-none cpk:tracking-tight cpk:text-foreground",a]},o.default?o.default():[])}}}),Vm={class:"cpk:flex cpk:w-full cpk:items-center cpk:gap-2"},Pm={class:"cpk:flex cpk:flex-1 cpk:justify-start"},Lm=["aria-expanded"],Um={key:1,"aria-hidden":"true"},jm={class:"cpk:flex cpk:flex-1 cpk:justify-center cpk:text-center"},Zm={class:"cpk:flex cpk:flex-1 cpk:justify-end"},Zn=t.defineComponent({inheritAttrs:!1,__name:"CopilotModalHeader",props:{title:{}},setup(e){const n=e,o=t.useAttrs(),a=Re(),r=t.computed(()=>n.title??a.value?.labels.modalHeaderTitle??ot.modalHeaderTitle),s=t.computed(()=>["cpk:flex cpk:items-center cpk:justify-between cpk:border-b cpk:border-border cpk:px-4 cpk:py-4","cpk:bg-background/95 cpk:backdrop-blur cpk:supports-[backdrop-filter]:bg-background/80",o.class]),i=t.computed(()=>{const{class:d,...f}=o;return f});function l(){a.value?.setModalOpen?.(!1)}const c=t.ref(!1);let u=null;function p(){u&&(c.value=u.matches)}t.onMounted(()=>{typeof window>"u"||typeof window.matchMedia!="function"||(u=window.matchMedia(Kr),u.addEventListener("change",p),p())}),t.onBeforeUnmount(()=>{u?.removeEventListener("change",p),u=null});const g=t.computed(()=>(a.value?.drawerRegistered??!1)&&c.value);function h(){a.value?.setDrawerOpen?.(!a.value?.drawerOpen)}return(d,f)=>(t.openBlock(),t.createElementBlock("header",t.mergeProps({"data-copilotkit":"","data-slot":"copilot-modal-header",class:s.value},i.value),[t.renderSlot(d.$slots,"layout",{title:r.value,onClose:l},()=>[t.createElementVNode("div",Vm,[t.createElementVNode("div",Pm,[g.value?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button","data-testid":"drawer-launcher",class:"cpk:inline-flex cpk:size-8 cpk:items-center cpk:justify-center cpk:rounded-full cpk:text-muted-foreground cpk:transition cpk:cursor-pointer cpk:hover:bg-muted cpk:hover:text-foreground cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-ring","aria-expanded":t.unref(a)?.drawerOpen??!1,"aria-label":"Open threads",onClick:h},[t.createVNode(t.unref(me.PanelLeftOpen),{class:"cpk:h-4 cpk:w-4","aria-hidden":"true"})],8,Lm)):(t.openBlock(),t.createElementBlock("span",Um))]),t.createElementVNode("div",jm,[t.renderSlot(d.$slots,"title-content",{title:r.value},()=>[t.createVNode(t.unref(ms),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(r.value),1)]),_:1})])]),t.createElementVNode("div",Zm,[t.renderSlot(d.$slots,"close-button",{onClose:l},()=>[t.createVNode(t.unref(ps),{onClick:l})])])])])],16))}}),Hm={key:0,"data-copilotkit":"",class:"cpk:fixed cpk:inset-0 cpk:z-[1200] cpk:flex cpk:max-w-full cpk:flex-col cpk:items-stretch cpk:bg-transparent cpk:md:inset-auto cpk:md:bottom-24 cpk:md:right-6 cpk:md:items-end cpk:md:gap-4"},Gm=["aria-label"],Wm={class:"cpk:flex-1 cpk:overflow-hidden","data-popup-chat":""},Km=420,qm=560,Ro=200,Jm=t.defineComponent({inheritAttrs:!1,__name:"CopilotPopupViewInternal",props:{width:{default:void 0},height:{default:void 0},clickOutsideToClose:{type:Boolean,default:!1},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=Re(),i=t.ref(null),l=t.ref(s.value?.isModalOpen??!1),c=t.ref(!1);let u,p;const g=t.computed(()=>s.value?.isModalOpen??!1),h=t.computed(()=>s.value?.labels??ot),d=t.computed(()=>h.value.modalHeaderTitle),f=t.computed(()=>g.value&&!c.value?"cpk:pointer-events-auto cpk:translate-y-0 cpk:opacity-100 cpk:md:scale-100":"cpk:pointer-events-none cpk:translate-y-4 cpk:opacity-0 cpk:md:translate-y-5 cpk:md:scale-[0.95]"),C=t.computed(()=>({"--copilot-popup-width":b(o.width,Km),"--copilot-popup-height":b(o.height,qm),"--copilot-popup-max-width":"calc(100vw - 3rem)","--copilot-popup-max-height":"calc(100dvh - 7.5rem)",width:"var(--copilot-popup-width)",height:"var(--copilot-popup-height)",maxWidth:"var(--copilot-popup-max-width)",maxHeight:"var(--copilot-popup-max-height)",paddingTop:"env(safe-area-inset-top)",paddingBottom:"env(safe-area-inset-bottom)",paddingLeft:"env(safe-area-inset-left)",paddingRight:"env(safe-area-inset-right)"}));function b(_,R){return typeof _=="number"&&Number.isFinite(_)?`${_}px`:typeof _=="string"&&_.trim().length>0?_:`${R}px`}function k(){s.value?.setModalOpen?.(!1)}function m(){s.value?.setModalOpen?.(!0)}function v(){s.value?.setModalOpen?.(!g.value)}function y(_){a("submit-message",_)}function x(){a("stop")}function S(_){a("input-change",_)}function A(_,R){a("select-suggestion",_,R)}function T(){a("add-file")}function O(){a("start-transcribe")}function N(){a("cancel-transcribe")}function z(){a("finish-transcribe")}const F=t.computed(()=>{const _={onSubmitMessage:y,onInputChange:S,onSelectSuggestion:A};return o.onStop&&(_.onStop=x),o.onAddFile&&(_.onAddFile=T),o.onStartTranscribe&&(_.onStartTranscribe=O),o.onCancelTranscribe&&(_.onCancelTranscribe=N),o.onFinishTranscribe&&(_.onFinishTranscribe=z),_}),Z=t.computed(()=>({...r,...F.value}));return t.watch(g,_=>{if(u&&(clearTimeout(u),u=void 0),_){l.value=!0,c.value=!1;return}l.value&&(c.value=!0,u=setTimeout(()=>{l.value=!1,c.value=!1,u=void 0},Ro))},{immediate:!0}),t.watch(g,(_,R,U)=>{if(!_||typeof window>"u")return;const M=D=>{D.key==="Escape"&&(D.preventDefault(),k())};window.addEventListener("keydown",M),U(()=>{window.removeEventListener("keydown",M)})},{immediate:!0}),t.watch(g,(_,R,U)=>{_&&(p=setTimeout(()=>{if(typeof document>"u")return;const M=i.value;M&&!M.contains(document.activeElement)&&M.focus({preventScroll:!0})},Ro),U(()=>{p&&(clearTimeout(p),p=void 0)}))},{immediate:!0}),t.watch([g,()=>o.clickOutsideToClose],([_,R],U,M)=>{if(!_||!R||typeof document>"u")return;const D=ae=>{const $=ae.target;!$||i.value?.contains($)||document.querySelector("[data-slot='chat-toggle-button']")?.contains($)||k()};document.addEventListener("pointerdown",D),M(()=>{document.removeEventListener("pointerdown",D)})},{immediate:!0}),t.onMounted(async()=>{await t.nextTick()}),t.onBeforeUnmount(()=>{u&&clearTimeout(u),p&&clearTimeout(p)}),(_,R)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.renderSlot(_.$slots,"toggle-button",{isOpen:g.value,toggle:v,open:m,close:k},()=>[t.createVNode(jn)]),l.value?(t.openBlock(),t.createElementBlock("div",Hm,[t.createElementVNode("div",{ref_key:"containerRef",ref:i,tabindex:"-1",role:"dialog","aria-label":h.value.modalHeaderTitle,"data-copilot-popup":"",class:t.normalizeClass(["cpk:relative cpk:flex cpk:h-full cpk:w-full cpk:flex-col cpk:overflow-hidden cpk:bg-background cpk:text-foreground","cpk:origin-bottom cpk:focus:outline-none cpk:transform-gpu cpk:transition-transform cpk:transition-opacity cpk:duration-200 cpk:ease-out","cpk:md:transition-transform cpk:md:transition-opacity","cpk:rounded-none cpk:border cpk:border-border/0 cpk:shadow-none cpk:ring-0","cpk:md:h-[var(--copilot-popup-height)] cpk:md:w-[var(--copilot-popup-width)]","cpk:md:max-h-[var(--copilot-popup-max-height)] cpk:md:max-w-[var(--copilot-popup-max-width)]","cpk:md:origin-bottom-right cpk:md:rounded-2xl cpk:md:border-border cpk:md:shadow-xl cpk:md:ring-1 cpk:md:ring-border/40",f.value]),style:t.normalizeStyle(C.value)},[t.renderSlot(_.$slots,"header",{title:d.value,onClose:k,isOpen:g.value},()=>[t.createVNode(Zn,{title:d.value},null,8,["title"])]),t.createElementVNode("div",Wm,[t.createVNode(Bt,t.mergeProps({messages:e.messages,"auto-scroll":e.autoScroll,"is-running":e.isRunning,suggestions:e.suggestions,"suggestion-loading-indexes":e.suggestionLoadingIndexes,"welcome-screen":e.welcomeScreen,"input-value":e.inputValue,"input-mode":e.inputMode,"input-tools-menu":e.inputToolsMenu,"on-finish-transcribe-with-audio":e.onFinishTranscribeWithAudio},Z.value),t.createSlots({_:2},[_.$slots["message-view"]?{name:"message-view",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(U)))]),key:"0"}:void 0,_.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(U)))]),key:"1"}:void 0,_.$slots.feather?{name:"feather",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"feather")]),key:"2"}:void 0,_.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(U)))]),key:"3"}:void 0,_.$slots.input?{name:"input",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"input",t.normalizeProps(t.guardReactiveProps(U)))]),key:"4"}:void 0,_.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(U)))]),key:"5"}:void 0,_.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(U)))]),key:"6"}:void 0,_.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"welcome-message")]),key:"7"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","on-finish-transcribe-with-audio"])])],14,Gm)])):t.createCommentVNode("",!0)],64))}}),fs=t.defineComponent({inheritAttrs:!1,__name:"CopilotPopupView",props:{width:{default:void 0},height:{default:void 0},clickOutsideToClose:{type:Boolean,default:!1},defaultOpen:{type:Boolean,default:!0},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.computed(()=>{const{defaultOpen:c,...u}=o;return u}),i=t.computed(()=>{const c={onSubmitMessage:u=>a("submit-message",u),onInputChange:u=>a("input-change",u),onSelectSuggestion:(u,p)=>a("select-suggestion",u,p)};return o.onStop&&(c.onStop=()=>a("stop")),o.onAddFile&&(c.onAddFile=()=>a("add-file")),o.onStartTranscribe&&(c.onStartTranscribe=()=>a("start-transcribe")),o.onCancelTranscribe&&(c.onCancelTranscribe=()=>a("cancel-transcribe")),o.onFinishTranscribe&&(c.onFinishTranscribe=()=>a("finish-transcribe")),c}),l=t.computed(()=>({...r,...s.value,...i.value}));return(c,u)=>(t.openBlock(),t.createBlock(an,{"is-modal-default-open":e.defaultOpen},{default:t.withCtx(()=>[t.createVNode(Jm,t.normalizeProps(t.guardReactiveProps(l.value)),t.createSlots({_:2},[c.$slots.header?{name:"header",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"header",t.normalizeProps(t.guardReactiveProps(p)))]),key:"0"}:void 0,c.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"1"}:void 0,c.$slots["message-view"]?{name:"message-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"2"}:void 0,c.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"3"}:void 0,c.$slots.feather?{name:"feather",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"feather",t.normalizeProps(t.guardReactiveProps(p)))]),key:"4"}:void 0,c.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"5"}:void 0,c.$slots.input?{name:"input",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"input",t.normalizeProps(t.guardReactiveProps(p)))]),key:"6"}:void 0,c.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"7"}:void 0,c.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(p)))]),key:"8"}:void 0,c.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"welcome-message")]),key:"9"}:void 0]),1040)]),_:3},8,["is-modal-default-open"]))}}),Xm={"data-copilotkit":"",class:"cpk:h-full cpk:flex cpk:flex-col","data-testid":"copilot-popup-welcome-screen"},Ym={class:"cpk:flex-1 cpk:flex cpk:flex-col cpk:items-center cpk:justify-center cpk:px-4"},Qm={class:"cpk:text-xl cpk:sm:text-2xl cpk:font-medium cpk:text-foreground cpk:text-center"},ef={class:"cpk:mb-4 cpk:flex cpk:justify-center cpk:px-4"},hs=t.defineComponent({__name:"CopilotPopupWelcomeScreen",props:{modelValue:{default:""},isRunning:{type:Boolean,default:!1},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onUpdateModelValue:{},onSubmitMessage:{},suggestions:{default:()=>[]},loadingIndexes:{default:()=>[]},onSelectSuggestion:{},onStop:{},onAddFile:{type:Function,default:void 0},onStartTranscribe:{type:Function,default:void 0},onCancelTranscribe:{type:Function,default:void 0},onFinishTranscribe:{type:Function,default:void 0},onFinishTranscribeWithAudio:{type:Function,default:void 0},canStop:{type:Boolean,default:void 0},canAddFile:{type:Boolean,default:void 0},canTranscribe:{type:Boolean,default:void 0}},setup(e){const n=e,o=Re(),a=t.computed(()=>o.value?.labels??ot);function r(){n.onStop?.()}function s(){n.onAddFile?.()}function i(){n.onStartTranscribe?.()}function l(){n.onCancelTranscribe?.()}function c(){n.onFinishTranscribe?.()}async function u(f){await n.onFinishTranscribeWithAudio?.(f)}const p=t.computed(()=>({modelValue:n.modelValue,isRunning:n.isRunning,inputMode:n.inputMode,inputToolsMenu:n.inputToolsMenu,canStop:n.canStop??!!n.onStop,canAddFile:n.canAddFile??!!n.onAddFile,canTranscribe:n.canTranscribe??!!n.onStartTranscribe,onUpdateModelValue:n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:r,onAddFile:s,onStartTranscribe:i,onCancelTranscribe:l,onFinishTranscribe:c,onFinishTranscribeWithAudio:u})),g=t.computed(()=>({suggestions:n.suggestions,loadingIndexes:n.loadingIndexes,onSelectSuggestion:n.onSelectSuggestion})),h=t.computed(()=>({...p.value,...g.value})),d=t.computed(()=>{const f={"onUpdate:modelValue":n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:n.onStop};return n.onAddFile&&(f.onAddFile=n.onAddFile),n.onStartTranscribe&&(f.onStartTranscribe=n.onStartTranscribe),n.onCancelTranscribe&&(f.onCancelTranscribe=n.onCancelTranscribe),n.onFinishTranscribe&&(f.onFinishTranscribe=n.onFinishTranscribe),n.onFinishTranscribeWithAudio&&(f.onFinishTranscribeWithAudio=n.onFinishTranscribeWithAudio),f});return(f,C)=>t.renderSlot(f.$slots,"layout",t.normalizeProps(t.guardReactiveProps(h.value)),()=>[t.createElementVNode("div",Xm,[t.createElementVNode("div",Ym,[t.renderSlot(f.$slots,"welcome-message",{},()=>[t.createElementVNode("h1",Qm,t.toDisplayString(a.value.welcomeMessageText),1)])]),t.createElementVNode("div",null,[t.createElementVNode("div",ef,[t.renderSlot(f.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(g.value)),()=>[t.createVNode(At,{suggestions:e.suggestions,"loading-indexes":e.loadingIndexes,onSelectSuggestion:e.onSelectSuggestion},null,8,["suggestions","loading-indexes","onSelectSuggestion"])])]),t.renderSlot(f.$slots,"input",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.createVNode(Rt,t.mergeProps({"model-value":e.modelValue,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0},d.value),null,16,["model-value","is-running","mode","tools-menu"])])])])])}}),tf=["aria-hidden"],nf={class:"cpk:flex cpk:h-full cpk:w-full cpk:flex-col cpk:overflow-hidden"},of={class:"cpk:flex-1 cpk:overflow-hidden","data-sidebar-chat":""},af=480,rf=260,sf=t.defineComponent({inheritAttrs:!1,__name:"CopilotSidebarViewInternal",props:{width:{default:void 0},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=Re(),i=t.ref(null),l=t.ref(o.width??af);let c=null;const u=t.computed(()=>s.value?.isModalOpen??!1),p=t.computed(()=>o.width??l.value),g=t.computed(()=>s.value?.labels.modalHeaderTitle??ot.modalHeaderTitle),h=t.computed(()=>["cpk:fixed cpk:right-0 cpk:top-0 cpk:z-[1200] cpk:flex cpk:h-[100vh] cpk:h-[100dvh] cpk:max-h-screen cpk:w-full","cpk:border-l cpk:border-border cpk:bg-background cpk:text-foreground cpk:shadow-xl","cpk:transition-transform cpk:duration-300 cpk:ease-out",u.value?"cpk:translate-x-0":"cpk:translate-x-full cpk:pointer-events-none",r.class]),d=t.computed(()=>{const{class:R,...U}=r;return U}),f=t.computed(()=>({"--sidebar-width":b(p.value),paddingTop:"env(safe-area-inset-top)",paddingBottom:"env(safe-area-inset-bottom)"})),C=t.computed(()=>`
60
+ `)),h=t.computed(()=>typeof o.onEditMessage=="function"),d=t.computed(()=>o.numberOfBranches>1&&typeof o.onSwitchToBranch=="function"),f=t.computed(()=>d.value&&o.branchIndex>0),C=t.computed(()=>d.value&&o.branchIndex<o.numberOfBranches-1);function b(){l&&clearTimeout(l),i.value=!0,l=setTimeout(()=>{i.value=!1,l=null},2e3)}async function k(){if(p.value&&!(typeof navigator>"u"||typeof navigator.clipboard?.writeText!="function"))try{await navigator.clipboard.writeText(p.value),b()}catch(S){console.error("Failed to copy to clipboard:",S)}}function m(){if(!h.value)return;const S={message:o.message};a("edit-message",S)}function v(S){if(!d.value)return;const A={branchIndex:S,numberOfBranches:o.numberOfBranches,message:o.message};a("switch-to-branch",A)}function y(){f.value&&v(o.branchIndex-1)}function x(){C.value&&v(o.branchIndex+1)}return t.onBeforeUnmount(()=>{l&&clearTimeout(l)}),(S,A)=>t.renderSlot(S.$slots,"layout",{message:e.message,content:p.value,isMultiline:g.value,showBranchNavigation:d.value,hasEditAction:h.value,branchIndex:e.branchIndex,numberOfBranches:e.numberOfBranches,canGoPrev:f.value,canGoNext:C.value,onCopy:k,onEdit:m,goPrev:y,goNext:x,copied:i.value},()=>[t.createElementVNode("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-user-message",class:"cpk:flex cpk:flex-col cpk:items-end cpk:group cpk:pt-10","data-message-id":e.message.id},S.$attrs),[t.renderSlot(S.$slots,"message-renderer",{message:e.message,content:p.value,isMultiline:g.value},()=>[t.createElementVNode("div",{class:t.normalizeClass(["cpk:prose cpk:dark:prose-invert cpk:bg-muted cpk:relative cpk:max-w-[80%] cpk:rounded-[18px] cpk:px-4 cpk:py-1.5 cpk:inline-block cpk:whitespace-pre-wrap",{"cpk:py-3":g.value}]),"data-multiline":g.value?"true":void 0},t.toDisplayString(p.value),11,Xp)]),t.renderSlot(S.$slots,"toolbar",{message:e.message,showBranchNavigation:d.value,hasEditAction:h.value},()=>[t.createElementVNode("div",Yp,[t.createElementVNode("div",Qp,[t.renderSlot(S.$slots,"toolbar-items"),t.renderSlot(S.$slots,"copy-button",{onCopy:k,copied:i.value,label:s.value.userMessageToolbarCopyMessageLabel},()=>[t.createElementVNode("button",{"data-testid":"copilot-user-copy-button",type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.userMessageToolbarCopyMessageLabel,title:s.value.userMessageToolbarCopyMessageLabel,onClick:k},[i.value?(t.openBlock(),t.createBlock(t.unref(me.Check),{key:0,class:"cpk:size-[18px]"})):(t.openBlock(),t.createBlock(t.unref(me.Copy),{key:1,class:"cpk:size-[18px]"}))],10,em)]),h.value||S.$slots["edit-button"]?t.renderSlot(S.$slots,"edit-button",{key:0,onEdit:m,label:s.value.userMessageToolbarEditMessageLabel},()=>[t.createElementVNode("button",{type:"button",class:t.normalizeClass(t.unref(c)),"aria-label":s.value.userMessageToolbarEditMessageLabel,title:s.value.userMessageToolbarEditMessageLabel,onClick:m},[t.createVNode(t.unref(me.Edit),{class:"cpk:size-[18px]"})],10,tm)]):t.createCommentVNode("",!0),e.numberOfBranches>1&&(d.value||S.$slots["branch-navigation"])?t.renderSlot(S.$slots,"branch-navigation",{key:1,branchIndex:e.branchIndex,numberOfBranches:e.numberOfBranches,canGoPrev:f.value,canGoNext:C.value,goPrev:y,goNext:x},()=>[t.createElementVNode("div",nm,[t.createElementVNode("button",{type:"button",class:t.normalizeClass([t.unref(c),"cpk:h-6 cpk:w-6 cpk:p-0"]),disabled:!f.value,"aria-label":"Previous branch",title:"Previous branch",onClick:y},[t.createVNode(t.unref(me.ChevronLeft),{class:"cpk:size-[20px]"})],10,om),t.createElementVNode("span",am,t.toDisplayString(e.branchIndex+1)+"/"+t.toDisplayString(e.numberOfBranches),1),t.createElementVNode("button",{type:"button",class:t.normalizeClass([t.unref(c),"cpk:h-6 cpk:w-6 cpk:p-0"]),disabled:!C.value,"aria-label":"Next branch",title:"Next branch",onClick:x},[t.createVNode(t.unref(me.ChevronRight),{class:"cpk:size-[20px]"})],10,rm)])]):t.createCommentVNode("",!0)])])])],16,Jp)])}}),cs=t.defineComponent({__name:"CopilotChatMessageView",props:{messages:{default:()=>[]},isRunning:{type:Boolean,default:!1}},setup(e){const n=e,{copilotkit:o}=Ve(),a=Re(),r=t.ref(0),s=t.ref(null),i=t.useSlots(),l=t.computed(()=>Object.keys(i)),c=t.computed(()=>a.value?.agentId??G.DEFAULT_AGENT_ID),u=t.computed(()=>(o.value.agents,o.value.getAgent(c.value)));t.watch([c,()=>a.value?.threadId,()=>o.value,()=>o.value.runtimeConnectionStatus],(S,A,T)=>{const O=u.value;if(!O)return;const N=O.subscribe({onStateChanged:()=>{r.value+=1},onRunStartedEvent:()=>{r.value+=1},onRunFinishedEvent:()=>{r.value+=1},onRunErrorEvent:()=>{r.value+=1}});T(()=>N.unsubscribe())},{immediate:!0}),t.watch(()=>o.value,(S,A,T)=>{s.value=S.interruptState;const O=S.subscribe({onInterruptStateChanged:({interruptState:N})=>{s.value=N},onRuntimeConnectionStatusChanged:()=>{r.value+=1}});T(()=>O.unsubscribe())},{immediate:!0});function p(S){const A=new Map;for(const T of S){const O=A.get(T.id);if(O&&T.role==="assistant"&&O.role==="assistant"){const N=T.content||O.content,z=T.toolCalls??O.toolCalls;A.set(T.id,{...O,...T,content:N,toolCalls:z})}else A.set(T.id,T)}return[...A.values()]}const g=t.computed(()=>p(n.messages)),h=G.createRowKeyStore(),d=t.computed(()=>G.resolveRowRenderKeysById(h,g.value));t.onMounted(()=>G.commitRowKeyStore(h,g.value)),t.watch(g,S=>G.commitRowKeyStore(h,S),{flush:"post"});const f=t.computed(()=>n.messages[n.messages.length-1]),C=t.computed(()=>n.isRunning&&f.value?.role!=="reasoning");t.watch([()=>n.messages.length,()=>g.value.length],([S,A])=>{process.env.NODE_ENV==="development"&&A<S&&console.warn(`CopilotChatMessageView: Deduplicated ${S-A} message(s) with duplicate IDs.`)},{immediate:!0});function b(S){r.value+=0;const A=c.value,T=a.value?.threadId??"",O=o.value,N=O.getRunIdForMessage(A,T,S.id)??O.getRunIdsForThread(A,T).slice(-1)[0],z=N??`missing-run-id:${S.id}`,F=u.value??O.getAgent(A),Z=N&&F?F.messages.filter($=>O.getRunIdForMessage(A,T,$.id)===N).map($=>$.id):[S.id],_=F?F.messages.findIndex($=>$.id===S.id):-1,R=_>=0?_:0,U=N?Math.max(Z.indexOf(S.id),0):0,M=N?Z.length:1;let D,ae=!1;return{runId:z,messageIndex:R,messageIndexInRun:U,numberOfMessagesInRun:M,agentId:A,get stateSnapshot(){return ae||(ae=!0,D=N?O.getStateByRun(A,T,N):void 0),D}}}function k(S,A){return Object.assign(b(S),{message:S,position:A})}const m=({render:S,slotProps:A})=>S(A);m.props=["render","slotProps"];function v(S){return`activity-${S}`}function y(S,A){if(r.value+=0,i[A==="before"?"message-before":"message-after"])return null;const O=c.value,z=[...o.value.renderCustomMessages].filter(F=>F.agentId===void 0||F.agentId===O).sort((F,Z)=>{const _=F.agentId!==void 0,R=Z.agentId!==void 0;return _===R?0:_?-1:1})[0];return z?.render?{renderer:z.render,props:k(S,A)}:null}function x(S){r.value+=0;const A=c.value,T=[...o.value.renderActivityMessages].filter(N=>N.activityType===S.activityType&&(N.agentId===void 0||N.agentId===A)).sort((N,z)=>{const F=N.agentId!==void 0,Z=z.agentId!==void 0;return F===Z?0:F?-1:1})[0];if(!T)return null;const O=T.content.safeParse(S.content);return O.success?{renderer:T.render,props:{activityType:S.activityType,content:O.data,message:S,agent:u.value}}:null}return(S,A)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"",class:"cpk:flex cpk:flex-col"},S.$attrs),[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,T=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:d.value.get(T.id)??T.id},[t.unref(i)["message-before"]?(t.openBlock(),t.createBlock(m,{key:0,render:t.unref(i)["message-before"],"slot-props":k(T,"before")},null,8,["render","slot-props"])):y(T,"before")?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y(T,"before").renderer),t.mergeProps({key:1,ref_for:!0},y(T,"before").props),null,16)):t.createCommentVNode("",!0),T.role==="assistant"?t.renderSlot(S.$slots,"assistant-message",{key:2,message:T,messages:e.messages,isRunning:e.isRunning},()=>[t.createVNode(es,{message:T,messages:e.messages,"is-running":e.isRunning},t.createSlots({_:2},[t.renderList(l.value,O=>({name:O,fn:t.withCtx(N=>[t.renderSlot(S.$slots,O,t.mergeProps({ref_for:!0},N))])}))]),1032,["message","messages","is-running"])]):T.role==="user"?t.renderSlot(S.$slots,"user-message",{key:3,message:T},()=>[t.createVNode(ls,{message:T},t.createSlots({_:2},[t.renderList(l.value,O=>({name:O,fn:t.withCtx(N=>[t.renderSlot(S.$slots,O,t.mergeProps({ref_for:!0},N))])}))]),1032,["message"])]):T.role==="reasoning"?t.renderSlot(S.$slots,"reasoning-message",{key:4,message:T,messages:e.messages,isRunning:e.isRunning},()=>[t.createVNode(is,{message:T,messages:e.messages,"is-running":e.isRunning},null,8,["message","messages","is-running"])]):T.role==="activity"?t.renderSlot(S.$slots,v(T.activityType),{key:5,activityType:T.activityType,content:T.content,message:T,agent:u.value},()=>[t.renderSlot(S.$slots,"activity-message",{activityType:T.activityType,content:T.content,message:T,agent:u.value},()=>[x(T)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(x(T).renderer),t.mergeProps({key:0,ref_for:!0},x(T).props),null,16)):t.createCommentVNode("",!0)])]):t.createCommentVNode("",!0),t.unref(i)["message-after"]?(t.openBlock(),t.createBlock(m,{key:6,render:t.unref(i)["message-after"],"slot-props":k(T,"after")},null,8,["render","slot-props"])):y(T,"after")?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y(T,"after").renderer),t.mergeProps({key:7,ref_for:!0},y(T,"after").props),null,16)):t.createCommentVNode("",!0)],64))),128)),s.value?t.renderSlot(S.$slots,"interrupt",{key:0,event:s.value.event,interrupt:s.value.interrupt,interrupts:s.value.interrupts,result:s.value.result,resolve:s.value.resolve,cancel:s.value.cancel}):t.createCommentVNode("",!0),C.value?t.renderSlot(S.$slots,"cursor",{key:1},()=>[A[0]||(A[0]=t.createElementVNode("div",{class:"cpk:w-[11px] cpk:h-[11px] cpk:rounded-full cpk:bg-foreground cpk:animate-pulse cpk:ml-1","data-testid":"copilot-loading-cursor"},null,-1))]):t.createCommentVNode("",!0)],16))}}),sm=["type","aria-busy","disabled"],im={key:0,class:"cpk:flex cpk:h-3.5 cpk:w-3.5 cpk:items-center cpk:justify-center cpk:text-muted-foreground cpk:sm:h-4 cpk:sm:w-4"},lm={key:1,class:"cpk:flex cpk:h-3.5 cpk:w-3.5 cpk:items-center cpk:justify-center cpk:text-muted-foreground cpk:sm:h-4 cpk:sm:w-4"},cm={class:"cpk:whitespace-nowrap cpk:font-medium cpk:leading-none"},us=t.defineComponent({__name:"CopilotChatSuggestionPill",props:{icon:{default:void 0},isLoading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},type:{default:"button"}},setup(e){const n=e,o=t.computed(()=>n.isLoading||n.disabled);return(a,r)=>(t.openBlock(),t.createElementBlock("button",t.mergeProps({"data-copilotkit":"","data-slot":"suggestion-pill","data-testid":"copilot-chat-suggestion-pill",type:e.type,"aria-busy":e.isLoading?"true":void 0,disabled:o.value,class:"cpk:group cpk:inline-flex cpk:h-7 cpk:w-fit cpk:items-center cpk:gap-1 cpk:rounded-full cpk:border cpk:border-border/60 cpk:bg-background cpk:px-2.5 cpk:text-[11px] cpk:leading-none cpk:text-foreground cpk:transition-colors cpk:cursor-pointer cpk:hover:bg-accent/60 cpk:hover:text-foreground cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-ring cpk:focus-visible:ring-offset-2 cpk:focus-visible:ring-offset-background cpk:disabled:cursor-not-allowed cpk:disabled:text-muted-foreground cpk:disabled:hover:bg-background cpk:disabled:hover:text-muted-foreground cpk:pointer-events-auto cpk:sm:h-8 cpk:sm:gap-1.5 cpk:sm:px-3 cpk:sm:text-xs"},a.$attrs),[e.isLoading?(t.openBlock(),t.createElementBlock("span",im,[t.createVNode(t.unref(me.Loader2),{class:"cpk:h-3.5 cpk:w-3.5 cpk:animate-spin cpk:sm:h-4 cpk:sm:w-4","aria-hidden":"true"})])):a.$slots.icon||e.icon?(t.openBlock(),t.createElementBlock("span",lm,[t.renderSlot(a.$slots,"icon",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.icon)))])])):t.createCommentVNode("",!0),t.createElementVNode("span",cm,[t.renderSlot(a.$slots,"default")])],16,sm))}}),At=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatSuggestionView",props:{suggestions:{},loadingIndexes:{default:()=>[]}},emits:["select-suggestion"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.computed(()=>new Set(o.loadingIndexes)),i=t.computed(()=>["cpk:flex cpk:flex-wrap cpk:items-center cpk:gap-1.5 cpk:pl-0 cpk:pr-4 cpk:pointer-events-none cpk:sm:gap-2 cpk:@3xl:px-0",r.class]),l=t.computed(()=>{const{class:g,...h}=r;return h});function c(g,h){return s.value.has(g)||h.isLoading===!0}function u(g,h){a("select-suggestion",g,h)}const p=t.computed(()=>({suggestions:o.suggestions,loadingIndexes:o.loadingIndexes,onSelectSuggestion:u,containerClass:i.value,containerAttrs:l.value}));return(g,h)=>t.renderSlot(g.$slots,"layout",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.renderSlot(g.$slots,"container",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.createElementVNode("div",t.mergeProps({"data-copilotkit":"","data-testid":"copilot-chat-suggestion-view",class:i.value},l.value),[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.suggestions,(d,f)=>t.renderSlot(g.$slots,"suggestion",{key:`${d.title}-${f}`,suggestion:d,index:f,isLoading:c(f,d),onSelect:()=>u(d,f)},()=>[t.createVNode(us,{"is-loading":c(f,d),type:"button",onClick:C=>u(d,f)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(d.title),1)]),_:2},1032,["is-loading","onClick"])])),128))],16)])])}}),um=["pin-to-bottom","pin-to-send","none"];function dm(e){return e===void 0||e===!0?"pin-to-bottom":e===!1?"none":um.includes(e)?e:"pin-to-bottom"}const pm={key:0,class:"cpk:absolute cpk:inset-0 cpk:z-50 cpk:pointer-events-none cpk:flex cpk:items-center cpk:justify-center cpk:bg-primary/5 cpk:border-2 cpk:border-dashed cpk:border-primary/40 cpk:rounded-lg cpk:m-2","data-testid":"copilot-chat-drop-overlay"},mm={class:"cpk:flex cpk:h-full cpk:flex-col cpk:items-center cpk:justify-center cpk:px-4","data-testid":"copilot-chat-view-welcome-screen"},fm={class:"cpk:w-full cpk:max-w-3xl cpk:flex cpk:flex-col cpk:items-center"},hm={class:"cpk:mb-6"},gm={class:"cpk:text-xl cpk:sm:text-2xl cpk:font-medium cpk:text-foreground cpk:text-center"},vm={class:"cpk:w-full"},bm={key:0,class:"cpk:mt-4 cpk:flex cpk:justify-center"},km={class:"cpk:px-4 cpk:@3xl:px-0 cpk:[div[data-sidebar-chat]_&]:px-8 cpk:[div[data-popup-chat]_&]:px-6"},ym={class:"cpk:max-w-3xl cpk:mx-auto"},Sm={key:0,class:"cpk:mt-4 cpk:pl-0 cpk:pr-4 cpk:@3xl:px-0"},wm={key:0,class:"cpk:max-w-3xl cpk:mx-auto cpk:w-full cpk:pointer-events-auto"},Cm=16,Tm=12,Bt=t.defineComponent({__name:"CopilotChatView",props:{messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean,default:!1},hasExplicitThreadId:{type:Boolean,default:!1},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=Re(),s=t.computed(()=>r.value?.labels??ot),i=t.useSlots(),l=t.ref(null),c=t.ref(null),u=t.ref(null),p=t.ref(null),g=t.ref(0),h=t.ref(!0),d=t.computed(()=>o.inputValue!==void 0),f=t.ref(o.inputValue??""),C=t.computed(()=>dm(o.autoScroll)),b=t.computed(()=>C.value==="pin-to-bottom"),k=t.computed(()=>C.value==="pin-to-send");Jd({scrollRef:l,contentRef:c,spacerRef:u,topOffset:16});const{isKeyboardOpen:m,keyboardHeight:v}=rs(),y=t.computed(()=>m.value?v.value:0),x=t.computed(()=>d.value?o.inputValue??"":f.value),S=t.computed(()=>!o.isConnecting&&!o.isRunning&&Array.isArray(o.suggestions)&&o.suggestions.length>0),A=t.computed(()=>Array.isArray(o.attachments)&&o.attachments.length>0),T=t.computed(()=>Object.keys(i).filter(V=>V!=="message-view"&&V!=="scroll-view"&&V!=="feather"&&V!=="scroll-to-bottom-button"&&V!=="input"&&V!=="suggestion-view"&&V!=="welcome-screen"&&V!=="welcome-message")),O=t.computed(()=>o.messages.length===0&&o.welcomeScreen!==!1&&!o.isConnecting&&!o.hasExplicitThreadId),N=t.computed(()=>`${g.value+(S.value?4:32)}px`),z=t.computed(()=>!O.value&&!h.value);let F=null,Z=null;function _(){if(typeof ResizeObserver>"u")return;F?.disconnect(),F=null;const V=p.value;V&&(F=new ResizeObserver(re=>{const Ie=h.value,Xe=re[0]?.contentRect?.height;typeof Xe=="number"?g.value=Xe:M(),U(),b.value&&Ie&&D("auto")}),F.observe(V))}function R(){if(typeof ResizeObserver>"u")return;Z?.disconnect(),Z=null;const V=c.value;V&&(Z=new ResizeObserver(()=>{const re=h.value;U(),b.value&&re&&D("auto")}),Z.observe(V))}t.watch(O,async V=>{V||(await t.nextTick(),M(),_(),R())}),t.watch(()=>o.inputValue,V=>{d.value&&(f.value=V??"")}),t.watch([()=>o.messages,()=>o.suggestions,()=>o.isRunning],async()=>{const V=h.value;await t.nextTick(),!(!b.value||!V)&&(D("auto"),typeof requestAnimationFrame=="function"&&requestAnimationFrame(()=>{D("auto")}))},{deep:!0});function U(){const V=l.value;if(!V){h.value=!0;return}const re=V.scrollHeight-V.scrollTop-V.clientHeight;h.value=re<=Tm}function M(){const V=p.value;g.value=V?.offsetHeight??0}function D(V="smooth"){const re=l.value;re&&(typeof re.scrollTo=="function"?re.scrollTo({top:re.scrollHeight,behavior:V}):re.scrollTop=re.scrollHeight,U())}function ae(){U()}function $(V){d.value||(f.value=V),a("input-change",V)}function Y(V){a("submit-message",V)}function H(){a("stop")}function Q(V,re){a("select-suggestion",V,re)}function ce(){a("add-file")}function X(V){o.onDragOver?.(V)}function ve(V){o.onDragLeave?.(V)}function Ae(V){o.onDrop?.(V)}function Ne(){a("start-transcribe")}function Ye(){a("cancel-transcribe")}function Qe(){a("finish-transcribe")}async function Pe(V){await o.onFinishTranscribeWithAudio?.(V)}const et=t.computed(()=>{const V={"onUpdate:modelValue":$,onSubmitMessage:o.onSubmitMessage?Y:void 0};return o.onStop&&(V.onStop=H),o.onAddFile&&(V.onAddFile=ce),o.onStartTranscribe&&(V.onStartTranscribe=Ne),o.onCancelTranscribe&&(V.onCancelTranscribe=Ye),o.onFinishTranscribe&&(V.onFinishTranscribe=Qe),o.onFinishTranscribeWithAudio&&(V.onFinishTranscribeWithAudio=Pe),V}),Je=t.computed(()=>!!o.onStop),Le=t.computed(()=>!!o.onAddFile),ke=t.computed(()=>!!o.onStartTranscribe);return t.onMounted(async()=>{await t.nextTick(),M(),U(),b.value&&(D("auto"),typeof requestAnimationFrame=="function"&&requestAnimationFrame(()=>{D("auto")})),_(),R()}),t.onBeforeUnmount(()=>{F?.disconnect(),Z?.disconnect(),F=null,Z=null}),(V,re)=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({"data-copilotkit":"",class:"cpk:@container cpk:relative cpk:h-full","data-testid":"copilot-chat-view"},V.$attrs,{onDragover:X,onDragleave:ve,onDrop:Ae}),[e.dragOver?(t.openBlock(),t.createElementBlock("div",pm,[...re[3]||(re[3]=[t.createElementVNode("span",{class:"cpk:text-sm cpk:font-medium cpk:text-primary/70"}," Drop files here ",-1)])])):t.createCommentVNode("",!0),O.value?t.renderSlot(V.$slots,"welcome-screen",{key:1,suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,attachments:e.attachments??[],modelValue:x.value,isRunning:e.isRunning,inputMode:e.inputMode,inputToolsMenu:e.inputToolsMenu,canStop:Je.value,canAddFile:Le.value,canTranscribe:ke.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:H,onAddFile:ce,onStartTranscribe:Ne,onCancelTranscribe:Ye,onFinishTranscribe:Qe,onFinishTranscribeWithAudio:Pe,onSelectSuggestion:Q},()=>[t.createElementVNode("div",mm,[t.createElementVNode("div",fm,[t.createElementVNode("div",hm,[t.renderSlot(V.$slots,"welcome-message",{},()=>[t.createElementVNode("h1",gm,t.toDisplayString(s.value.welcomeMessageText),1)])]),t.createElementVNode("div",vm,[A.value?(t.openBlock(),t.createBlock(yn,{key:0,attachments:e.attachments??[],"class-name":"cpk:mb-2",onRemoveAttachment:re[0]||(re[0]=Ie=>e.onRemoveAttachment&&e.onRemoveAttachment(Ie))},null,8,["attachments"])):t.createCommentVNode("",!0),t.renderSlot(V.$slots,"input",{modelValue:x.value,isRunning:e.isRunning,inputMode:e.inputMode,inputToolsMenu:e.inputToolsMenu,attachments:e.attachments??[],canStop:Je.value,canAddFile:Le.value,canTranscribe:ke.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:H,onAddFile:ce,onStartTranscribe:Ne,onCancelTranscribe:Ye,onFinishTranscribe:Qe,onFinishTranscribeWithAudio:Pe},()=>[t.createVNode(Rt,t.mergeProps({"model-value":x.value,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0,"keyboard-height":y.value},et.value),null,16,["model-value","is-running","mode","tools-menu","keyboard-height"])])]),S.value?(t.openBlock(),t.createElementBlock("div",bm,[t.renderSlot(V.$slots,"suggestion-view",{suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,onSelectSuggestion:Q},()=>[t.createVNode(At,{suggestions:e.suggestions,"loading-indexes":e.suggestionLoadingIndexes,onSelectSuggestion:Q},null,8,["suggestions","loading-indexes"])])])):t.createCommentVNode("",!0)])])]):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.renderSlot(V.$slots,"scroll-view",{messages:e.messages,isRunning:e.isRunning,suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,messagePaddingBottom:N.value,showScrollToBottomButton:z.value,onSelectSuggestion:Q,onScroll:ae,scrollToBottom:D},()=>[t.createElementVNode("div",{ref_key:"scrollContainerRef",ref:l,"data-testid":"copilot-chat-view-scroll",class:"cpk:h-full cpk:max-h-full cpk:min-h-0 cpk:overflow-y-scroll cpk:overflow-x-hidden cpk:relative",onScroll:ae},[t.createElementVNode("div",km,[t.createElementVNode("div",{ref_key:"scrollContentRef",ref:c,"data-testid":"copilot-scroll-content",style:t.normalizeStyle({paddingBottom:N.value})},[t.createElementVNode("div",ym,[t.renderSlot(V.$slots,"message-view",{messages:e.messages,isRunning:e.isRunning},()=>[t.createVNode(cs,{messages:e.messages,"is-running":e.isRunning},t.createSlots({_:2},[t.renderList(T.value,Ie=>({name:Ie,fn:t.withCtx(Xe=>[t.renderSlot(V.$slots,Ie,t.normalizeProps(t.guardReactiveProps(Xe)))])}))]),1032,["messages","is-running"])]),S.value?(t.openBlock(),t.createElementBlock("div",Sm,[t.renderSlot(V.$slots,"suggestion-view",{suggestions:e.suggestions,loadingIndexes:e.suggestionLoadingIndexes,onSelectSuggestion:Q},()=>[t.createVNode(At,{class:"cpk:mb-3 cpk:lg:ml-4 cpk:lg:mr-4 cpk:ml-0 cpk:mr-0",suggestions:e.suggestions,"loading-indexes":e.suggestionLoadingIndexes,onSelectSuggestion:Q},null,8,["suggestions","loading-indexes"])])])):t.createCommentVNode("",!0)])],4),k.value?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"spacerRef",ref:u,"data-pin-to-send-spacer":"","aria-hidden":"true",style:{height:"0px",flex:"0 0 auto"}},null,512)):t.createCommentVNode("",!0)])],544)]),t.renderSlot(V.$slots,"feather",{},()=>[re[4]||(re[4]=t.createElementVNode("div",{"data-testid":"copilot-chat-view-feather"},null,-1))]),z.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"cpk:absolute cpk:inset-x-0 cpk:flex cpk:justify-center cpk:z-30 cpk:pointer-events-none",style:t.normalizeStyle({bottom:`${g.value+Cm}px`})},[t.renderSlot(V.$slots,"scroll-to-bottom-button",{onClick:()=>D()},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-view-scroll-to-bottom",class:"cpk:rounded-full cpk:w-10 cpk:h-10 cpk:p-0 cpk:pointer-events-auto cpk:bg-white cpk:dark:bg-gray-900 cpk:shadow-lg cpk:border cpk:border-gray-200 cpk:dark:border-gray-700 cpk:hover:bg-gray-50 cpk:dark:hover:bg-gray-800 cpk:flex cpk:items-center cpk:justify-center cpk:cursor-pointer",onClick:re[1]||(re[1]=Ie=>D())},[t.createVNode(t.unref(me.ChevronDown),{class:"cpk:w-4 cpk:h-4 cpk:text-gray-600 cpk:dark:text-white"})])])],4)):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"inputContainerRef",ref:p,class:"cpk:absolute cpk:bottom-0 cpk:left-0 cpk:right-0 cpk:z-20 cpk:pointer-events-none","data-testid":"copilot-input-overlay"},[A.value?(t.openBlock(),t.createElementBlock("div",wm,[t.createVNode(yn,{attachments:e.attachments??[],"class-name":"cpk:px-4",onRemoveAttachment:re[2]||(re[2]=Ie=>e.onRemoveAttachment&&e.onRemoveAttachment(Ie))},null,8,["attachments"])])):t.createCommentVNode("",!0),t.renderSlot(V.$slots,"input",{modelValue:x.value,isRunning:e.isRunning,inputMode:e.inputMode,inputToolsMenu:e.inputToolsMenu,attachments:e.attachments??[],canStop:Je.value,canAddFile:Le.value,canTranscribe:ke.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:H,onAddFile:ce,onStartTranscribe:Ne,onCancelTranscribe:Ye,onFinishTranscribe:Qe,onFinishTranscribeWithAudio:Pe},()=>[t.createVNode(Rt,t.mergeProps({"model-value":x.value,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0,"keyboard-height":y.value,"bottom-anchored":!0},et.value),null,16,["model-value","is-running","mode","tools-menu","keyboard-height"])])],512)],64))],16))}});function xm(e){const n=t.ref(null),o=(r,s)=>{n.value=null,ie.emitInspectorActiveThread({requestId:r.requestId,threadId:s,agentId:r.agentId,source:"app"})},a=r=>{const s=n.value;!s||s.requestId!==r||(ie.emitInspectorViewThreadResult({requestId:r,threadId:s.threadId,agentId:s.agentId,ok:!1,reason:"connect-failed"}),o(s,s.previousThreadId))};if(ie.isInspectorThreadBridgeEnabled()){const r=ie.onInspectorViewThread(i=>i.agentId!==e.agentId.value?!1:(n.value=n.value?{...n.value,...i}:{...i,previousThreadId:e.baseThreadId.value},ie.emitInspectorViewThreadResult({...i,ok:!0}),ie.emitInspectorActiveThread({...i,source:"override"}),!0)),s=ie.onInspectorStopViewing(i=>{const l=n.value;l&&i.requestId===l.requestId&&i.agentId===l.agentId&&o(l,l.previousThreadId)});t.onBeforeUnmount(()=>{r(),s()})}return t.watch([e.agentId,e.baseThreadId],([r,s])=>{const i=n.value;if(i){if(r!==i.agentId){o(i,i.previousThreadId);return}s!==i.previousThreadId&&s!==i.threadId&&o(i,s)}}),{inspectorThreadId:t.computed(()=>n.value?.threadId??null),inspectorRequestId:t.computed(()=>n.value?.requestId??null),failInspectorOverride:a}}const Im=["accept"],Em={key:2,style:{position:"absolute",bottom:"100px",left:"50%",transform:"translateX(-50%)","background-color":"#ef4444",color:"white",padding:"8px 16px","border-radius":"8px","font-size":"14px","z-index":"50"}},Pn=t.defineComponent({inheritAttrs:!1,__name:"CopilotChat",props:{agentId:{},threadId:{},throttleMs:{},labels:{},attachments:{},onError:{},autoScroll:{type:[String,Boolean],default:!0},welcomeScreen:{type:Boolean,default:!0},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.useSlots(),i=Re(),{copilotkit:l}=Ve(),c=t.computed(()=>Object.keys(s).filter(j=>j!=="chat-view")),u=t.ref(G.randomUUID()),p=t.ref("input"),g=t.ref(o.inputValue??""),h=t.ref(null),d=t.ref(!1),f=t.ref(!1),C=t.ref(!1),b=t.shallowRef(null);let k=null;const m=new WeakMap;let v=Promise.resolve();const y=new WeakMap,x=t.computed(()=>o.agentId??i.value?.agentId??G.DEFAULT_AGENT_ID),S=t.computed(()=>o.threadId??i.value?.threadId),A=t.computed(()=>S.value??u.value),T=t.computed(()=>!!o.threadId||!!i.value?.hasExplicitThreadId),{inspectorThreadId:O,inspectorRequestId:N,failInspectorOverride:z}=xm({agentId:x,baseThreadId:A}),F=t.computed(()=>O.value??A.value),Z=t.computed(()=>O.value!==null||T.value),_=t.ref(null),R=t.computed(()=>Z.value&&_.value!==F.value),U=Wr(t.computed(()=>o.labels)),M=t.computed(()=>U.value),{agent:D}=rn({agentId:x,throttleMs:t.computed(()=>o.throttleMs)}),{suggestions:ae}=os({agentId:x}),$=zt(),Y=t.computed(()=>$.value.checkFeature("chat"));t.watch(Y,j=>{j||console.warn('[CopilotKit] Warning: "chat" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0});const H=t.computed(()=>l.value.audioFileTranscriptionEnabled),Q=t.computed(()=>typeof window<"u"&&typeof MediaRecorder<"u"),ce=t.computed(()=>H.value&&Q.value),{attachments:X,enabled:ve,dragOver:Ae,fileInputRef:Ne,containerRef:Ye,handleFileUpload:Qe,handleDragOver:Pe,handleDragLeave:et,handleDrop:Je,removeAttachment:Le,consumeAttachments:ke}=as({config:t.computed(()=>o.attachments)}),V=t.computed(()=>d.value?"processing":p.value),re=t.ref(0),Ie=t.computed(()=>[...D.value?.messages??[]]),Xe=t.computed(()=>(re.value,D.value?.isRunning??!1)),Ee=t.computed(()=>Xe.value&&Ie.value.length>0),lt=t.computed(()=>{for(let j=Ie.value.length-1;j>=0;j--){const ne=Ie.value[j];if(ne?.role==="user")return ne.id}return null}),ct=t.ref(0);let ut=lt.value;t.watch(lt,j=>{j&&j!==ut&&(ct.value+=1,ut=j)});const gt=t.computed(()=>({id:lt.value,sendNonce:ct.value}));t.provide(ss,gt),t.watch(()=>D.value,(j,ne,W)=>{if(!j)return;const w=j.subscribe({onRunStartedEvent:()=>{re.value+=1},onRunFinishedEvent:()=>{re.value+=1},onRunErrorEvent:()=>{re.value+=1}});W(()=>w.unsubscribe())},{immediate:!0}),t.watch(()=>o.inputValue,j=>{j!==void 0&&(g.value=j)}),t.watch([()=>o.threadId,()=>i.value?.threadId],([j,ne],W)=>{j||ne||W&&(W[0]||W[1])&&(u.value=G.randomUUID())}),t.watch([()=>l.value,x,()=>o.onError],([j,ne,W],w,B)=>{if(!W)return;const K=j.subscribe({onError:oe=>{(oe.context?.agentId===ne||!oe.context?.agentId)&&W({error:oe.error,code:oe.code,context:oe.context})}});B(()=>K.unsubscribe())},{immediate:!0}),t.watch([()=>l.value,x,F,N],([j,ne,W,w],B,K)=>{if(!w)return;const oe=j.subscribe({onError:Ce=>{Ce.code===ie.CopilotKitCoreErrorCode.AGENT_CONNECT_FAILED&&Ce.context?.agentId===ne&&Ce.context?.threadId===W&&z(w)}});K(()=>oe.unsubscribe())},{immediate:!0}),t.watch([f,()=>l.value,()=>D.value,F,Z,N],([j,ne,W,w,B,K],oe,Ce)=>{if(!j||typeof window>"u"||!W)return;const de=b.value;if(de!==null&&de.threadId!==w&&de.inspectorRequestId!==K&&(de.inspectorRequestId!==null||K!==null))try{ne.stopAgent({agent:W})}catch{}if(y.set(W,W.threadId),W.threadId=w,!B)return;const He=Wt.AbstractAgent.prototype,Ge=W,tt=Ge.connect!==He.connect,nt=Ge.connectAgent!==He.connectAgent;if(!tt&&!nt){_.value=w;return}const We=b.value,wt=We&&We.core===ne&&We.agent===W&&We.threadId===w&&We.inspectorRequestId===K;let Ke;if(wt&&We)Ke=We;else{const De=new AbortController;Ke={core:ne,agent:W,threadId:w,inspectorRequestId:K,abortController:De,detached:!1},b.value=Ke,k=Ke,v.then(()=>{if(!Ke.detached)return ie.ɵisHttpAgent(W)&&(W.abortController=De),ne.connectAgent({agent:W})}).catch(Dt=>{if(Ke.detached){Ke.clearDiscardedBaseline?.();return}Dt instanceof Wt.AGUIConnectNotImplementedError||(console.error("CopilotChat: connectAgent failed",Dt),K&&z(K))}).finally(()=>{if(Ke.detached){Ke.clearDiscardedBaseline?.();return}(typeof requestAnimationFrame=="function"?requestAnimationFrame:vt=>setTimeout(vt,16))(()=>{Ke.detached||(_.value=Ke.threadId)})})}Ce(()=>{const De=b.value;if(!De||De!==Ke||!(C.value||l.value!==De.core||D.value!==De.agent||F.value!==De.threadId))return;De.detached=!0,De.abortController.abort();const vt=De.agent.detachActiveRun().catch(ys=>{console.error("CopilotChat: detachActiveRun failed",ys)});m.set(De.agent,vt),v=Promise.all([v,vt]).then(()=>{}),vt.then(()=>{m.get(De.agent)===vt&&m.delete(De.agent)}),b.value=null})},{immediate:!0});let L;t.watch([F,Z,()=>D.value],([j,ne,W],w,B)=>{const K=L,oe={threadId:j,agent:W};if(L=oe,!W||ne||K===void 0||j===K.threadId)return;let Ce=!0,de=!0;B(()=>{Ce=!1});const _e=K.agent===W?K.threadId:y.get(W),He=()=>{_e&&("clearReplayCursor"in W&&typeof W.clearReplayCursor=="function"&&W.clearReplayCursor(_e),"clearReconnectCursor"in W&&typeof W.clearReconnectCursor=="function"&&W.clearReconnectCursor(_e))},Ge=()=>{!Ce||!de||C.value||L!==oe||D.value!==W||(W.setMessages([]),W.setState({}),W.pendingInterrupts=[],He())};k?.agent===W&&k.threadId===_e&&(k.clearDiscardedBaseline=Ge);const tt=m.get(W)??W.detachActiveRun();m.set(W,tt);const nt=()=>{de&&(He(),Ge(),de=!1)};Ge(),v=Promise.all([v,tt]).then(nt).catch(We=>{console.error("CopilotChat: detachActiveRun failed",We)}).finally(()=>{m.get(W)===tt&&m.delete(W)})},{immediate:!0}),t.onBeforeUnmount(()=>{C.value=!0}),t.onMounted(()=>{f.value=!0}),t.watch(h,(j,ne,W)=>{if(!j)return;const w=setTimeout(()=>{h.value=null},5e3);W(()=>clearTimeout(w))});async function fe(){const j=D.value;if(j)try{const ne=b.value;ne&&ne.agent===j&&ne.threadId===F.value&&(ne.detached=!0,ne.abortController.abort(),b.value=null,await ne.agent.detachActiveRun?.()),await l.value.runAgent({agent:j})}catch(ne){console.error("CopilotChat: runAgent failed",ne)}}async function pe(j){if(X.value.some(w=>w.status==="uploading")){console.error("[CopilotKit] Cannot send while attachments are uploading");return}if(a("submit-message",j),!D.value){console.error("[CopilotKit] Cannot send message: no agent available");return}const W=ke();if(W.length>0){const w=[];j.trim()&&w.push({type:"text",text:j});for(const B of W)w.push(G.createAttachmentContent(B));D.value.addMessage({id:G.randomUUID(),role:"user",content:w})}else D.value.addMessage({id:G.randomUUID(),role:"user",content:j});g.value="",await fe()}async function Ue(j,ne){a("select-suggestion",j,ne),D.value?.addMessage({id:G.randomUUID(),role:"user",content:j.message}),await fe()}function Ze(){const j=D.value;if(j)try{l.value.stopAgent({agent:j})}catch(ne){console.error("CopilotChat: stopAgent failed",ne);try{j.abortRun()}catch(W){console.error("CopilotChat: abortRun fallback failed",W)}}}function we(){a("stop"),Ee.value&&Ze()}function Oe(j){g.value=j,a("input-change",j)}function je(){a("add-file"),ve.value&&setTimeout(()=>{Ne.value?.click()},100)}function Be(){ce.value&&(h.value=null,p.value="transcribe",a("start-transcribe"))}function at(){ce.value&&(h.value=null,p.value="input",a("cancel-transcribe"))}function st(){ce.value&&(p.value="input",a("finish-transcribe"))}async function Ft(j){if(ce.value){if(o.onFinishTranscribeWithAudio){await o.onFinishTranscribeWithAudio(j);return}d.value=!0;try{h.value=null;const ne=await Wd(l.value,j),W=g.value.trim();g.value=W?`${W} ${ne.text}`:ne.text}catch(ne){if(console.error("CopilotChat: Transcription failed",ne),ne instanceof kt){const{code:W,retryable:w,message:B}=ne.info;switch(W){case G.TranscriptionErrorCode.RATE_LIMITED:h.value="Too many requests. Please wait a moment.";break;case G.TranscriptionErrorCode.AUTH_FAILED:h.value="Authentication error. Please check your configuration.";break;case G.TranscriptionErrorCode.AUDIO_TOO_LONG:h.value="Recording is too long. Please try a shorter recording.";break;case G.TranscriptionErrorCode.AUDIO_TOO_SHORT:h.value="Recording is too short. Please try again.";break;case G.TranscriptionErrorCode.INVALID_AUDIO_FORMAT:h.value="Audio format not supported.";break;case G.TranscriptionErrorCode.SERVICE_NOT_CONFIGURED:h.value="Transcription service is not available.";break;case G.TranscriptionErrorCode.NETWORK_ERROR:h.value="Network error. Please check your connection.";break;default:h.value=w?"Transcription failed. Please try again.":B}}else h.value="Transcription failed. Please try again."}finally{d.value=!1}}}const Fe=t.computed(()=>({messages:Ie.value,autoScroll:o.autoScroll,isRunning:Xe.value,suggestions:ae.value,suggestionLoadingIndexes:[],welcomeScreen:o.welcomeScreen,attachments:X.value,dragOver:Ae.value,inputValue:g.value,inputMode:V.value,inputToolsMenu:o.inputToolsMenu,isConnecting:R.value,hasExplicitThreadId:Z.value,canStop:Ee.value,canAddFile:ve.value,canTranscribe:ce.value,onSubmitMessage:pe,onStop:we,onInputChange:Oe,onSelectSuggestion:Ue,onRemoveAttachment:Le,onAddFile:je,onDragOver:ve.value?Pe:void 0,onDragLeave:ve.value?et:void 0,onDrop:ve.value?Je:void 0,onStartTranscribe:Be,onCancelTranscribe:at,onFinishTranscribe:st,onFinishTranscribeWithAudio:Ft})),sn=t.computed(()=>{const j={...r,onSubmitMessage:pe,onInputChange:Oe,onSelectSuggestion:Ue};return Ee.value&&(j.onStop=we),ve.value&&(j.onAddFile=je,j.attachments=X.value,j.onRemoveAttachment=Le,j.dragOver=Ae.value,j.onDragOver=Pe,j.onDragLeave=et,j.onDrop=Je),ce.value&&(j.onStartTranscribe=Be,j.onCancelTranscribe=at,j.onFinishTranscribe=st),j});return(j,ne)=>(t.openBlock(),t.createBlock(an,{"agent-id":x.value,"thread-id":F.value,"has-explicit-thread-id":Z.value,labels:M.value},{default:t.withCtx(()=>[t.createElementVNode("div",{ref_key:"attachmentContainerRef",ref:Ye,style:{display:"contents"}},[t.unref(ve)?(t.openBlock(),t.createElementBlock("input",{key:0,ref_key:"fileInputRef",ref:Ne,type:"file",multiple:"",accept:o.attachments?.accept??"*/*",style:{display:"none"},onChange:ne[0]||(ne[0]=W=>{t.unref(Qe)(W)})},null,40,Im)):t.createCommentVNode("",!0),Y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vn,{key:1,"feature-name":"Chat"})),h.value?(t.openBlock(),t.createElementBlock("div",Em,t.toDisplayString(h.value),1)):t.createCommentVNode("",!0),t.renderSlot(j.$slots,"chat-view",t.normalizeProps(t.guardReactiveProps(Fe.value)),()=>[t.createVNode(Bt,t.mergeProps(sn.value,{messages:Fe.value.messages,"auto-scroll":Fe.value.autoScroll,"is-running":Fe.value.isRunning,suggestions:Fe.value.suggestions,"suggestion-loading-indexes":Fe.value.suggestionLoadingIndexes,"welcome-screen":Fe.value.welcomeScreen,"input-value":Fe.value.inputValue,"input-mode":Fe.value.inputMode,"input-tools-menu":Fe.value.inputToolsMenu,"is-connecting":Fe.value.isConnecting,"has-explicit-thread-id":Fe.value.hasExplicitThreadId,"on-finish-transcribe-with-audio":Fe.value.onFinishTranscribeWithAudio}),t.createSlots({_:2},[t.renderList(c.value,W=>({name:W,fn:t.withCtx(w=>[t.renderSlot(j.$slots,W,t.normalizeProps(t.guardReactiveProps(w)))])}))]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","is-connecting","has-explicit-thread-id","on-finish-transcribe-with-audio"])])],512)]),_:3},8,["agent-id","thread-id","has-explicit-thread-id","labels"]))}}),Rm=["src"],Am=["src"],_m={key:0,class:"cpk:text-xs cpk:text-muted-foreground cpk:truncate cpk:max-w-[300px]","data-testid":"copilot-chat-attachment-renderer-audio-filename"},$m=["src"],Mm={class:"cpk:text-xs cpk:font-bold cpk:uppercase","data-testid":"copilot-chat-attachment-renderer-document-icon"},Nm={class:"cpk:text-sm cpk:text-muted-foreground cpk:truncate","data-testid":"copilot-chat-attachment-renderer-document-label"},Om=t.defineComponent({__name:"CopilotChatAttachmentRenderer",props:{type:{},source:{},filename:{default:void 0},className:{default:""}},setup(e){const n=e,o=t.ref(!1),a=t.computed(()=>G.getSourceUrl(n.source)),r=t.computed(()=>n.filename||n.source.mimeType||"Unknown type");return(s,i)=>n.type==="image"&&!o.value?(t.openBlock(),t.createElementBlock("img",{key:0,src:a.value,alt:"Image attachment",class:t.normalizeClass(["cpk:max-w-full cpk:h-auto cpk:rounded-lg",n.className]),"data-testid":"copilot-chat-attachment-renderer-image",onError:i[0]||(i[0]=l=>o.value=!0)},null,42,Rm)):n.type==="image"?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["cpk:flex cpk:flex-col cpk:items-center cpk:justify-center cpk:rounded-lg cpk:bg-muted cpk:p-4 cpk:text-sm cpk:text-muted-foreground",n.className]),"data-testid":"copilot-chat-attachment-renderer-image-fallback"},[...i[1]||(i[1]=[t.createElementVNode("span",null,"Failed to load image",-1)])],2)):n.type==="audio"?(t.openBlock(),t.createElementBlock("div",{key:2,class:t.normalizeClass(["cpk:flex cpk:flex-col cpk:gap-1",n.className]),"data-testid":"copilot-chat-attachment-renderer-audio"},[t.createElementVNode("audio",{src:a.value,controls:"",preload:"metadata",class:"cpk:max-w-[300px] cpk:w-full cpk:h-10"},null,8,Am),n.filename?(t.openBlock(),t.createElementBlock("span",_m,t.toDisplayString(n.filename),1)):t.createCommentVNode("",!0)],2)):n.type==="video"?(t.openBlock(),t.createElementBlock("video",{key:3,src:a.value,controls:"",preload:"metadata",class:t.normalizeClass(["cpk:max-w-[400px] cpk:w-full cpk:rounded-lg",n.className]),"data-testid":"copilot-chat-attachment-renderer-video"},null,10,$m)):(t.openBlock(),t.createElementBlock("div",{key:4,class:t.normalizeClass(["cpk:inline-flex cpk:items-center cpk:gap-2 cpk:px-3 cpk:py-2 cpk:border cpk:border-border cpk:rounded-lg cpk:bg-muted",n.className]),"data-testid":"copilot-chat-attachment-renderer-document"},[t.createElementVNode("span",Mm,t.toDisplayString(t.unref(G.getDocumentIcon)(n.source.mimeType??"")),1),t.createElementVNode("span",Nm,t.toDisplayString(r.value),1)],2))}});function dt(e,n,o){o.value=n(e.getState());const a=e.select(n).subscribe(()=>{o.value=n(e.getState())});t.onScopeDispose(()=>a.unsubscribe())}function ds(e){const{copilotkit:n}=Ve(),o=ie.ɵcreateThreadStore({fetch:n.value.ɵruntimeFetch}),a=t.computed(()=>t.toValue(e.agentId)),r=t.computed(()=>t.toValue(e.includeArchived)),s=t.computed(()=>t.toValue(e.limit)),i=t.computed(()=>t.toValue(e.enabled)??!0),l=t.computed(()=>n.value.threadEndpoints?.list!==!1),c=t.computed(()=>n.value.threadEndpoints?.mutations!==!1),u=t.computed(()=>!!n.value.runtimeUrl&&n.value.runtimeConnectionStatus===ie.CopilotKitCoreRuntimeConnectionStatus.Connected&&!l.value),p=t.computed(()=>u.value?new Error("Thread endpoints are not available on this CopilotKit runtime"):null),g=t.computed(()=>c.value?null:new Error("Thread mutations are not available on this CopilotKit runtime")),h=t.computed(()=>JSON.stringify(Object.entries(n.value.headers??{}).sort(([z],[F])=>z.localeCompare(F)))),d=t.ref([]),f=t.ref(!1),C=t.ref(null),b=t.ref(null),k=t.ref(!1),m=t.ref(!1),v=t.ref(!1);dt(o,ie.ɵselectThreads,d),dt(o,ie.ɵselectThreadsIsLoading,f),dt(o,ie.ɵselectThreadsError,C),dt(o,ie.ɵselectFetchMoreError,b),dt(o,ie.ɵselectHasNextPage,k),dt(o,ie.ɵselectIsFetchingNextPage,m),dt(o,ie.ɵselectIsMutating,v),o.start(),t.onScopeDispose(()=>{o.stop()}),t.watch([i,a],([z,F],Z,_)=>{z&&(n.value.registerThreadStore(F,o),_(()=>{n.value.unregisterThreadStore(F)}))},{immediate:!0});const y=t.ref(!1);t.watch([()=>n.value.runtimeUrl,()=>n.value.runtimeConnectionStatus,h,()=>n.value.intelligence?.wsUrl,a,r,s,i,l],([z,F,,Z,_,R,U,M,D])=>{if(!z||!M){o.setContext(null),y.value=!1;return}if(F!==ie.CopilotKitCoreRuntimeConnectionStatus.Connected)return;if(!D){o.setContext(null),y.value=!1;return}const ae={runtimeUrl:z,headers:{...n.value.headers},wsUrl:Z,agentId:_,includeArchived:R,limit:U};o.setContext(ae),y.value=!0},{immediate:!0});const x=t.computed(()=>n.value.runtimeUrl?null:new Error("Runtime URL is not configured")),S=t.computed(()=>!!n.value.runtimeUrl&&i.value&&!u.value&&!y.value),A=t.computed(()=>x.value||p.value?!1:S.value||f.value),T=t.computed(()=>x.value??p.value??C.value),O=t.computed(()=>C.value);function N(z){return(...F)=>g.value?Promise.reject(g.value):z(...F)}return{threads:t.computed(()=>d.value.map(({id:z,agentId:F,name:Z,archived:_,createdAt:R,updatedAt:U,lastRunAt:M})=>({id:z,agentId:F,name:Z,archived:_,createdAt:R,updatedAt:U,...M!==void 0?{lastRunAt:M}:{}}))),isLoading:A,error:T,listError:O,fetchMoreError:b,hasMoreThreads:k,isFetchingMoreThreads:m,isMutating:v,fetchMoreThreads:()=>o.fetchNextPage(),refetchThreads:()=>o.refetchThreads(),startNewThread:()=>o.startNewThread(),renameThread:N((z,F)=>o.renameThread(z,F)),archiveThread:N(z=>o.archiveThread(z)),unarchiveThread:N(z=>o.unarchiveThread(z)),deleteThread:N(z=>o.deleteThread(z))}}const Io="copilot-chat-input-textarea",zm="copilot-chat-view",Bm=t.defineComponent({__name:"CopilotThreadsDrawer",props:{agentId:{},onThreadSelect:{},onNewThread:{},onLicensed:{},licenseUrl:{},label:{},recentLabel:{},collapsible:{type:Boolean,default:!0},limit:{},dataTestId:{default:"copilot-threads-drawer"}},emits:["collapse-change"],setup(e,{emit:n}){const o=e,a=n,r=Re(),s=zt(),i=t.computed(()=>{const M=s.value.status;return M==="unknown"?!0:(M==="valid"||M==="expiring")&&s.value.checkFeature("threads")}),l=t.computed(()=>s.value.status===null),c=t.computed(()=>o.agentId??r.value?.agentId??G.DEFAULT_AGENT_ID),u=t.computed(()=>r.value?.threadId??null),p=t.ref(!1),g=t.computed(()=>r.value?r.value.drawerOpen:p.value);function h(M){r.value?r.value.setDrawerOpen?.(M):p.value=M}const d=ds({agentId:c,includeArchived:!0,enabled:i,limit:()=>o.limit});function f(M){return{id:M.id,name:M.name,archived:M.archived,createdAt:M.createdAt,updatedAt:M.updatedAt,...M.lastRunAt!==void 0?{lastRunAt:M.lastRunAt}:{}}}const C=t.computed(()=>d.threads.value.map(f)),b=t.ref(!1),k=t.ref(null),m=t.ref(null);t.onMounted(async()=>{const M=await import("@copilotkit/web-components/threads-drawer");M.defineCopilotKitThreadsDrawer(),k.value=M.COPILOTKIT_THREADS_DRAWER_TAG,b.value=!0}),t.watchEffect(()=>{const M=m.value;M&&(M.threads=C.value,M.loading=d.isLoading.value||l.value,M.error=d.listError.value?.message??null,M.activeThreadId=u.value,M.licensed=i.value||l.value,M.hasMore=d.hasMoreThreads.value,M.fetchingMore=d.isFetchingMoreThreads.value,M.fetchMoreError=d.fetchMoreError.value?.message??null,M.open=g.value,o.label!==void 0&&(M.label=o.label),o.licenseUrl!==void 0&&(M.licenseUrl=o.licenseUrl),o.collapsible!==void 0&&(M.collapsible=o.collapsible))},{flush:"post"});const v=r.value?.registerDrawer?.();v&&t.onScopeDispose(v);function y(M){if(typeof document>"u")return null;const D=M?.closest?.(`[data-testid="${zm}"]`);if(D){const ae=D.querySelector(`[data-testid="${Io}"]`);if(ae)return ae}return document.querySelector(`[data-testid="${Io}"]`)}function x(){y(m.value)?.focus()}function S(M){const{threadId:D}=M.detail;o.onThreadSelect?o.onThreadSelect(D):r.value?.setActiveThreadId?.(D,{explicit:!0}),x()}function A(){d.startNewThread(),o.onNewThread?o.onNewThread():r.value?.startNewThread?.()}function T(M){const{threadId:D}=M.detail;d.archiveThread(D).catch(ae=>console.error("CopilotThreadsDrawer: archiveThread failed",ae))}function O(M){const{threadId:D}=M.detail;d.unarchiveThread(D).catch(ae=>console.error("CopilotThreadsDrawer: unarchiveThread failed",ae))}function N(M){const{threadId:D}=M.detail,ae=D===u.value;d.deleteThread(D).then(()=>{ae&&A()}).catch($=>console.error("CopilotThreadsDrawer: deleteThread failed",$))}function z(){d.refetchThreads()}function F(M){const{collapsed:D}=M.detail;a("collapse-change",D)}function Z(M){const{scope:D}=M.detail;D==="fetch-more"?d.fetchMoreThreads():d.refetchThreads()}function _(){d.fetchMoreThreads()}function R(M){const{open:D}=M.detail;h(D)}function U(){o.onLicensed?.()}return(M,D)=>b.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(k.value),{key:0,ref_key:"elRef",ref:m,"data-testid":e.dataTestId,"recent-label":e.recentLabel,onThreadSelected:S,onNewThread:A,onArchive:T,onUnarchive:O,onDelete:N,onFilterChange:z,onCollapseChange:F,onRetry:Z,onLoadMore:_,onOpenChange:R,onLicensed:U},{default:t.withCtx(()=>[t.renderSlot(M.$slots,"default"),M.$slots.row?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(d).threads.value,ae=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:ae.id},{ref_for:!0},{slot:`row:${ae.id}`}),[t.renderSlot(M.$slots,"row",{thread:ae})],16))),128)):t.createCommentVNode("",!0)]),_:3},40,["data-testid","recent-label"])):t.createCommentVNode("",!0)}}),Ln=t.defineComponent({name:"CopilotChatToggleButtonCloseIcon",inheritAttrs:!1,setup(e,{attrs:n}){return()=>{const{class:o,...a}=n;return t.h(me.X,{...a,class:["cpk:h-6 cpk:w-6",o],strokeWidth:1.75})}}}),Un=t.defineComponent({name:"CopilotChatToggleButtonOpenIcon",inheritAttrs:!1,setup(e,{attrs:n}){return()=>{const{class:o,...a}=n;return t.h(me.MessageCircle,{...a,class:["cpk:h-6 cpk:w-6",o],strokeWidth:1.75,fill:"currentColor"})}}}),Fm=["type","data-state","aria-label","aria-pressed","disabled"],Gt="cpk:h-6 cpk:w-6",Eo="cpk:pointer-events-none cpk:absolute cpk:inset-0 cpk:flex cpk:items-center cpk:justify-center cpk:will-change-transform",jn=t.defineComponent({inheritAttrs:!1,__name:"CopilotChatToggleButton",props:{disabled:{type:Boolean,default:!1},type:{default:"button"}},setup(e){const n=e,o=t.useAttrs(),a=Re(),r=t.ref(!1),s=t.computed(()=>a.value?.labels??ot),i=t.computed(()=>a.value?.isModalOpen??r.value),l=t.computed(()=>i.value?s.value.chatToggleCloseLabel:s.value.chatToggleOpenLabel),c=t.computed(()=>["cpk:fixed cpk:bottom-6 cpk:right-6 cpk:z-[1100] cpk:flex cpk:h-14 cpk:w-14 cpk:items-center cpk:justify-center","cpk:rounded-full cpk:border cpk:border-primary cpk:bg-primary cpk:text-primary-foreground","cpk:shadow-sm cpk:transition-all cpk:duration-200 cpk:ease-out","cpk:hover:scale-[1.04] cpk:hover:shadow-md cpk:cursor-pointer cpk:active:scale-[0.96]","cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-primary/50 cpk:focus-visible:ring-offset-2 cpk:focus-visible:ring-offset-background","cpk:disabled:pointer-events-none cpk:disabled:opacity-60",o.class]),u=t.computed(()=>{const{class:f,onClick:C,...b}=o;return b}),p=Object.freeze({transition:"opacity 120ms ease-out, transform 260ms cubic-bezier(0.22, 1, 0.36, 1)"});function g(f){if(a.value?.setModalOpen){a.value.setModalOpen(f);return}r.value=f}function h(){const f=o.onClick;return Array.isArray(f)?f.filter(C=>typeof C=="function"):typeof f=="function"?[f]:[]}function d(f){if(!n.disabled){for(const C of h())C(f);f.defaultPrevented||g(!i.value)}}return(f,C)=>(t.openBlock(),t.createElementBlock("button",t.mergeProps({"data-copilotkit":"",type:e.type,"data-slot":"chat-toggle-button","data-state":i.value?"open":"closed",class:c.value,"aria-label":l.value,"aria-pressed":i.value,disabled:e.disabled},u.value,{onClick:d}),[t.createElementVNode("span",{"aria-hidden":"true","data-slot":"chat-toggle-button-open-icon",class:t.normalizeClass(Eo),style:t.normalizeStyle({...t.unref(p),opacity:i.value?0:1,transform:`scale(${i.value?.75:1}) rotate(${i.value?90:0}deg)`})},[t.renderSlot(f.$slots,"open-icon",{iconClass:Gt,isOpen:i.value},()=>[t.createVNode(t.unref(Un),{class:t.normalizeClass(Gt),"aria-hidden":"true",focusable:!1})])],4),t.createElementVNode("span",{"aria-hidden":"true","data-slot":"chat-toggle-button-close-icon",class:t.normalizeClass(Eo),style:t.normalizeStyle({...t.unref(p),opacity:i.value?1:0,transform:`scale(${i.value?1:.75}) rotate(${i.value?0:-90}deg)`})},[t.renderSlot(f.$slots,"close-icon",{iconClass:Gt,isOpen:i.value},()=>[t.createVNode(t.unref(Ln),{class:t.normalizeClass(Gt),"aria-hidden":"true",focusable:!1})])],4)],16,Fm))}}),ps=t.defineComponent({name:"CopilotModalHeaderCloseButton",inheritAttrs:!1,setup(e,{slots:n}){const o=t.useAttrs(),a=t.computed(()=>typeof o["aria-label"]=="string"?o["aria-label"]:"Close");return()=>{const{class:r,type:s,...i}=o;return t.h("button",{...i,type:typeof s=="string"?s:"button",class:["cpk:inline-flex cpk:size-8 cpk:items-center cpk:justify-center cpk:rounded-full cpk:text-muted-foreground cpk:transition cpk:cursor-pointer","cpk:hover:bg-muted cpk:hover:text-foreground cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-ring",r],"aria-label":a.value},n.default?n.default():[t.h(me.X,{class:"cpk:h-4 cpk:w-4","aria-hidden":!0})])}}}),ms=t.defineComponent({name:"CopilotModalHeaderTitle",inheritAttrs:!1,setup(e,{attrs:n,slots:o}){return()=>{const{class:a,...r}=n;return t.h("div",{...r,class:["cpk:w-full cpk:text-base cpk:font-medium cpk:leading-none cpk:tracking-tight cpk:text-foreground",a]},o.default?o.default():[])}}}),Dm={class:"cpk:flex cpk:w-full cpk:items-center cpk:gap-2"},Vm={class:"cpk:flex cpk:flex-1 cpk:justify-start"},Pm=["aria-expanded"],Lm={key:1,"aria-hidden":"true"},Um={class:"cpk:flex cpk:flex-1 cpk:justify-center cpk:text-center"},jm={class:"cpk:flex cpk:flex-1 cpk:justify-end"},Zn=t.defineComponent({inheritAttrs:!1,__name:"CopilotModalHeader",props:{title:{}},setup(e){const n=e,o=t.useAttrs(),a=Re(),r=t.computed(()=>n.title??a.value?.labels.modalHeaderTitle??ot.modalHeaderTitle),s=t.computed(()=>["cpk:flex cpk:items-center cpk:justify-between cpk:border-b cpk:border-border cpk:px-4 cpk:py-4","cpk:bg-background/95 cpk:backdrop-blur cpk:supports-[backdrop-filter]:bg-background/80",o.class]),i=t.computed(()=>{const{class:d,...f}=o;return f});function l(){a.value?.setModalOpen?.(!1)}const c=t.ref(!1);let u=null;function p(){u&&(c.value=u.matches)}t.onMounted(()=>{typeof window>"u"||typeof window.matchMedia!="function"||(u=window.matchMedia(Kr),u.addEventListener("change",p),p())}),t.onBeforeUnmount(()=>{u?.removeEventListener("change",p),u=null});const g=t.computed(()=>(a.value?.drawerRegistered??!1)&&c.value);function h(){a.value?.setDrawerOpen?.(!a.value?.drawerOpen)}return(d,f)=>(t.openBlock(),t.createElementBlock("header",t.mergeProps({"data-copilotkit":"","data-slot":"copilot-modal-header",class:s.value},i.value),[t.renderSlot(d.$slots,"layout",{title:r.value,onClose:l},()=>[t.createElementVNode("div",Dm,[t.createElementVNode("div",Vm,[g.value?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button","data-testid":"drawer-launcher",class:"cpk:inline-flex cpk:size-8 cpk:items-center cpk:justify-center cpk:rounded-full cpk:text-muted-foreground cpk:transition cpk:cursor-pointer cpk:hover:bg-muted cpk:hover:text-foreground cpk:focus-visible:outline-none cpk:focus-visible:ring-2 cpk:focus-visible:ring-ring","aria-expanded":t.unref(a)?.drawerOpen??!1,"aria-label":"Open threads",onClick:h},[t.createVNode(t.unref(me.PanelLeftOpen),{class:"cpk:h-4 cpk:w-4","aria-hidden":"true"})],8,Pm)):(t.openBlock(),t.createElementBlock("span",Lm))]),t.createElementVNode("div",Um,[t.renderSlot(d.$slots,"title-content",{title:r.value},()=>[t.createVNode(t.unref(ms),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(r.value),1)]),_:1})])]),t.createElementVNode("div",jm,[t.renderSlot(d.$slots,"close-button",{onClose:l},()=>[t.createVNode(t.unref(ps),{onClick:l})])])])])],16))}}),Zm={key:0,"data-copilotkit":"",class:"cpk:fixed cpk:inset-0 cpk:z-[1200] cpk:flex cpk:max-w-full cpk:flex-col cpk:items-stretch cpk:bg-transparent cpk:md:inset-auto cpk:md:bottom-24 cpk:md:right-6 cpk:md:items-end cpk:md:gap-4"},Hm=["aria-label"],Gm={class:"cpk:flex-1 cpk:overflow-hidden","data-popup-chat":""},Wm=420,Km=560,Ro=200,qm=t.defineComponent({inheritAttrs:!1,__name:"CopilotPopupViewInternal",props:{width:{default:void 0},height:{default:void 0},clickOutsideToClose:{type:Boolean,default:!1},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=Re(),i=t.ref(null),l=t.ref(s.value?.isModalOpen??!1),c=t.ref(!1);let u,p;const g=t.computed(()=>s.value?.isModalOpen??!1),h=t.computed(()=>s.value?.labels??ot),d=t.computed(()=>h.value.modalHeaderTitle),f=t.computed(()=>g.value&&!c.value?"cpk:pointer-events-auto cpk:translate-y-0 cpk:opacity-100 cpk:md:scale-100":"cpk:pointer-events-none cpk:translate-y-4 cpk:opacity-0 cpk:md:translate-y-5 cpk:md:scale-[0.95]"),C=t.computed(()=>({"--copilot-popup-width":b(o.width,Wm),"--copilot-popup-height":b(o.height,Km),"--copilot-popup-max-width":"calc(100vw - 3rem)","--copilot-popup-max-height":"calc(100dvh - 7.5rem)",width:"var(--copilot-popup-width)",height:"var(--copilot-popup-height)",maxWidth:"var(--copilot-popup-max-width)",maxHeight:"var(--copilot-popup-max-height)",paddingTop:"env(safe-area-inset-top)",paddingBottom:"env(safe-area-inset-bottom)",paddingLeft:"env(safe-area-inset-left)",paddingRight:"env(safe-area-inset-right)"}));function b(_,R){return typeof _=="number"&&Number.isFinite(_)?`${_}px`:typeof _=="string"&&_.trim().length>0?_:`${R}px`}function k(){s.value?.setModalOpen?.(!1)}function m(){s.value?.setModalOpen?.(!0)}function v(){s.value?.setModalOpen?.(!g.value)}function y(_){a("submit-message",_)}function x(){a("stop")}function S(_){a("input-change",_)}function A(_,R){a("select-suggestion",_,R)}function T(){a("add-file")}function O(){a("start-transcribe")}function N(){a("cancel-transcribe")}function z(){a("finish-transcribe")}const F=t.computed(()=>{const _={onSubmitMessage:y,onInputChange:S,onSelectSuggestion:A};return o.onStop&&(_.onStop=x),o.onAddFile&&(_.onAddFile=T),o.onStartTranscribe&&(_.onStartTranscribe=O),o.onCancelTranscribe&&(_.onCancelTranscribe=N),o.onFinishTranscribe&&(_.onFinishTranscribe=z),_}),Z=t.computed(()=>({...r,...F.value}));return t.watch(g,_=>{if(u&&(clearTimeout(u),u=void 0),_){l.value=!0,c.value=!1;return}l.value&&(c.value=!0,u=setTimeout(()=>{l.value=!1,c.value=!1,u=void 0},Ro))},{immediate:!0}),t.watch(g,(_,R,U)=>{if(!_||typeof window>"u")return;const M=D=>{D.key==="Escape"&&(D.preventDefault(),k())};window.addEventListener("keydown",M),U(()=>{window.removeEventListener("keydown",M)})},{immediate:!0}),t.watch(g,(_,R,U)=>{_&&(p=setTimeout(()=>{if(typeof document>"u")return;const M=i.value;M&&!M.contains(document.activeElement)&&M.focus({preventScroll:!0})},Ro),U(()=>{p&&(clearTimeout(p),p=void 0)}))},{immediate:!0}),t.watch([g,()=>o.clickOutsideToClose],([_,R],U,M)=>{if(!_||!R||typeof document>"u")return;const D=ae=>{const $=ae.target;!$||i.value?.contains($)||document.querySelector("[data-slot='chat-toggle-button']")?.contains($)||k()};document.addEventListener("pointerdown",D),M(()=>{document.removeEventListener("pointerdown",D)})},{immediate:!0}),t.onMounted(async()=>{await t.nextTick()}),t.onBeforeUnmount(()=>{u&&clearTimeout(u),p&&clearTimeout(p)}),(_,R)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.renderSlot(_.$slots,"toggle-button",{isOpen:g.value,toggle:v,open:m,close:k},()=>[t.createVNode(jn)]),l.value?(t.openBlock(),t.createElementBlock("div",Zm,[t.createElementVNode("div",{ref_key:"containerRef",ref:i,tabindex:"-1",role:"dialog","aria-label":h.value.modalHeaderTitle,"data-copilot-popup":"",class:t.normalizeClass(["cpk:relative cpk:flex cpk:h-full cpk:w-full cpk:flex-col cpk:overflow-hidden cpk:bg-background cpk:text-foreground","cpk:origin-bottom cpk:focus:outline-none cpk:transform-gpu cpk:transition-transform cpk:transition-opacity cpk:duration-200 cpk:ease-out","cpk:md:transition-transform cpk:md:transition-opacity","cpk:rounded-none cpk:border cpk:border-border/0 cpk:shadow-none cpk:ring-0","cpk:md:h-[var(--copilot-popup-height)] cpk:md:w-[var(--copilot-popup-width)]","cpk:md:max-h-[var(--copilot-popup-max-height)] cpk:md:max-w-[var(--copilot-popup-max-width)]","cpk:md:origin-bottom-right cpk:md:rounded-2xl cpk:md:border-border cpk:md:shadow-xl cpk:md:ring-1 cpk:md:ring-border/40",f.value]),style:t.normalizeStyle(C.value)},[t.renderSlot(_.$slots,"header",{title:d.value,onClose:k,isOpen:g.value},()=>[t.createVNode(Zn,{title:d.value},null,8,["title"])]),t.createElementVNode("div",Gm,[t.createVNode(Bt,t.mergeProps({messages:e.messages,"auto-scroll":e.autoScroll,"is-running":e.isRunning,suggestions:e.suggestions,"suggestion-loading-indexes":e.suggestionLoadingIndexes,"welcome-screen":e.welcomeScreen,"input-value":e.inputValue,"input-mode":e.inputMode,"input-tools-menu":e.inputToolsMenu,"on-finish-transcribe-with-audio":e.onFinishTranscribeWithAudio},Z.value),t.createSlots({_:2},[_.$slots["message-view"]?{name:"message-view",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(U)))]),key:"0"}:void 0,_.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(U)))]),key:"1"}:void 0,_.$slots.feather?{name:"feather",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"feather")]),key:"2"}:void 0,_.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(U)))]),key:"3"}:void 0,_.$slots.input?{name:"input",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"input",t.normalizeProps(t.guardReactiveProps(U)))]),key:"4"}:void 0,_.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(U)))]),key:"5"}:void 0,_.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(U=>[t.renderSlot(_.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(U)))]),key:"6"}:void 0,_.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"welcome-message")]),key:"7"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","on-finish-transcribe-with-audio"])])],14,Hm)])):t.createCommentVNode("",!0)],64))}}),fs=t.defineComponent({inheritAttrs:!1,__name:"CopilotPopupView",props:{width:{default:void 0},height:{default:void 0},clickOutsideToClose:{type:Boolean,default:!1},defaultOpen:{type:Boolean,default:!0},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.computed(()=>{const{defaultOpen:c,...u}=o;return u}),i=t.computed(()=>{const c={onSubmitMessage:u=>a("submit-message",u),onInputChange:u=>a("input-change",u),onSelectSuggestion:(u,p)=>a("select-suggestion",u,p)};return o.onStop&&(c.onStop=()=>a("stop")),o.onAddFile&&(c.onAddFile=()=>a("add-file")),o.onStartTranscribe&&(c.onStartTranscribe=()=>a("start-transcribe")),o.onCancelTranscribe&&(c.onCancelTranscribe=()=>a("cancel-transcribe")),o.onFinishTranscribe&&(c.onFinishTranscribe=()=>a("finish-transcribe")),c}),l=t.computed(()=>({...r,...s.value,...i.value}));return(c,u)=>(t.openBlock(),t.createBlock(an,{"is-modal-default-open":e.defaultOpen},{default:t.withCtx(()=>[t.createVNode(qm,t.normalizeProps(t.guardReactiveProps(l.value)),t.createSlots({_:2},[c.$slots.header?{name:"header",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"header",t.normalizeProps(t.guardReactiveProps(p)))]),key:"0"}:void 0,c.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"1"}:void 0,c.$slots["message-view"]?{name:"message-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"2"}:void 0,c.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"3"}:void 0,c.$slots.feather?{name:"feather",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"feather",t.normalizeProps(t.guardReactiveProps(p)))]),key:"4"}:void 0,c.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"5"}:void 0,c.$slots.input?{name:"input",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"input",t.normalizeProps(t.guardReactiveProps(p)))]),key:"6"}:void 0,c.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"7"}:void 0,c.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(p)))]),key:"8"}:void 0,c.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"welcome-message")]),key:"9"}:void 0]),1040)]),_:3},8,["is-modal-default-open"]))}}),Jm={"data-copilotkit":"",class:"cpk:h-full cpk:flex cpk:flex-col","data-testid":"copilot-popup-welcome-screen"},Xm={class:"cpk:flex-1 cpk:flex cpk:flex-col cpk:items-center cpk:justify-center cpk:px-4"},Ym={class:"cpk:text-xl cpk:sm:text-2xl cpk:font-medium cpk:text-foreground cpk:text-center"},Qm={class:"cpk:mb-4 cpk:flex cpk:justify-center cpk:px-4"},hs=t.defineComponent({__name:"CopilotPopupWelcomeScreen",props:{modelValue:{default:""},isRunning:{type:Boolean,default:!1},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onUpdateModelValue:{},onSubmitMessage:{},suggestions:{default:()=>[]},loadingIndexes:{default:()=>[]},onSelectSuggestion:{},onStop:{},onAddFile:{type:Function,default:void 0},onStartTranscribe:{type:Function,default:void 0},onCancelTranscribe:{type:Function,default:void 0},onFinishTranscribe:{type:Function,default:void 0},onFinishTranscribeWithAudio:{type:Function,default:void 0},canStop:{type:Boolean,default:void 0},canAddFile:{type:Boolean,default:void 0},canTranscribe:{type:Boolean,default:void 0}},setup(e){const n=e,o=Re(),a=t.computed(()=>o.value?.labels??ot);function r(){n.onStop?.()}function s(){n.onAddFile?.()}function i(){n.onStartTranscribe?.()}function l(){n.onCancelTranscribe?.()}function c(){n.onFinishTranscribe?.()}async function u(f){await n.onFinishTranscribeWithAudio?.(f)}const p=t.computed(()=>({modelValue:n.modelValue,isRunning:n.isRunning,inputMode:n.inputMode,inputToolsMenu:n.inputToolsMenu,canStop:n.canStop??!!n.onStop,canAddFile:n.canAddFile??!!n.onAddFile,canTranscribe:n.canTranscribe??!!n.onStartTranscribe,onUpdateModelValue:n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:r,onAddFile:s,onStartTranscribe:i,onCancelTranscribe:l,onFinishTranscribe:c,onFinishTranscribeWithAudio:u})),g=t.computed(()=>({suggestions:n.suggestions,loadingIndexes:n.loadingIndexes,onSelectSuggestion:n.onSelectSuggestion})),h=t.computed(()=>({...p.value,...g.value})),d=t.computed(()=>{const f={"onUpdate:modelValue":n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:n.onStop};return n.onAddFile&&(f.onAddFile=n.onAddFile),n.onStartTranscribe&&(f.onStartTranscribe=n.onStartTranscribe),n.onCancelTranscribe&&(f.onCancelTranscribe=n.onCancelTranscribe),n.onFinishTranscribe&&(f.onFinishTranscribe=n.onFinishTranscribe),n.onFinishTranscribeWithAudio&&(f.onFinishTranscribeWithAudio=n.onFinishTranscribeWithAudio),f});return(f,C)=>t.renderSlot(f.$slots,"layout",t.normalizeProps(t.guardReactiveProps(h.value)),()=>[t.createElementVNode("div",Jm,[t.createElementVNode("div",Xm,[t.renderSlot(f.$slots,"welcome-message",{},()=>[t.createElementVNode("h1",Ym,t.toDisplayString(a.value.welcomeMessageText),1)])]),t.createElementVNode("div",null,[t.createElementVNode("div",Qm,[t.renderSlot(f.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(g.value)),()=>[t.createVNode(At,{suggestions:e.suggestions,"loading-indexes":e.loadingIndexes,onSelectSuggestion:e.onSelectSuggestion},null,8,["suggestions","loading-indexes","onSelectSuggestion"])])]),t.renderSlot(f.$slots,"input",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.createVNode(Rt,t.mergeProps({"model-value":e.modelValue,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0},d.value),null,16,["model-value","is-running","mode","tools-menu"])])])])])}}),ef=["aria-hidden"],tf={class:"cpk:flex cpk:h-full cpk:w-full cpk:flex-col cpk:overflow-hidden"},nf={class:"cpk:flex-1 cpk:overflow-hidden","data-sidebar-chat":""},of=480,af=260,rf=t.defineComponent({inheritAttrs:!1,__name:"CopilotSidebarViewInternal",props:{width:{default:void 0},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=Re(),i=t.ref(null),l=t.ref(o.width??of);let c=null;const u=t.computed(()=>s.value?.isModalOpen??!1),p=t.computed(()=>o.width??l.value),g=t.computed(()=>s.value?.labels.modalHeaderTitle??ot.modalHeaderTitle),h=t.computed(()=>["cpk:fixed cpk:right-0 cpk:top-0 cpk:z-[1200] cpk:flex cpk:h-[100vh] cpk:h-[100dvh] cpk:max-h-screen cpk:w-full","cpk:border-l cpk:border-border cpk:bg-background cpk:text-foreground cpk:shadow-xl","cpk:transition-transform cpk:duration-300 cpk:ease-out",u.value?"cpk:translate-x-0":"cpk:translate-x-full cpk:pointer-events-none",r.class]),d=t.computed(()=>{const{class:R,...U}=r;return U}),f=t.computed(()=>({"--sidebar-width":b(p.value),paddingTop:"env(safe-area-inset-top)",paddingBottom:"env(safe-area-inset-bottom)"})),C=t.computed(()=>`
70
61
  @media (min-width: 768px) {
71
62
  body {
72
63
  margin-inline-end: ${k(p.value)};
73
- transition: margin-inline-end ${rf}ms ease;
64
+ transition: margin-inline-end ${af}ms ease;
74
65
  }
75
66
  }
76
- `);function b(R){return typeof R=="number"?`${R}px`:R}function k(R){return typeof R=="number"?`${R}px`:R}function m(){if(o.width!==void 0||!i.value)return;const R=i.value.getBoundingClientRect().width;R>0&&(l.value=R)}function v(){s.value?.setModalOpen?.(!1)}function y(){s.value?.setModalOpen?.(!0)}function x(){s.value?.setModalOpen?.(!u.value)}function S(R){a("submit-message",R)}function A(){a("stop")}function T(R){a("input-change",R)}function O(R,U){a("select-suggestion",R,U)}function N(){a("add-file")}function z(){a("start-transcribe")}function F(){a("cancel-transcribe")}function Z(){a("finish-transcribe")}const _=t.computed(()=>{const R={onSubmitMessage:S,onInputChange:T,onSelectSuggestion:O};return o.onStop&&(R.onStop=A),o.onAddFile&&(R.onAddFile=N),o.onStartTranscribe&&(R.onStartTranscribe=z),o.onCancelTranscribe&&(R.onCancelTranscribe=F),o.onFinishTranscribe&&(R.onFinishTranscribe=Z),R});return t.watch(()=>o.width,R=>{if(R!==void 0){l.value=R;return}m()}),t.onMounted(async()=>{await t.nextTick(),m(),!(o.width!==void 0||!i.value||typeof ResizeObserver>"u")&&(c=new ResizeObserver(()=>{m()}),c.observe(i.value))}),t.onBeforeUnmount(()=>{c?.disconnect(),c=null}),(R,U)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[u.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent("style"),{key:0},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(C.value),1)]),_:1})):t.createCommentVNode("",!0),t.renderSlot(R.$slots,"toggle-button",{isOpen:u.value,toggle:x,open:y,close:v},()=>[t.createVNode(jn)]),t.createElementVNode("aside",t.mergeProps({ref_key:"sidebarRef",ref:i,"data-copilotkit":"","data-copilot-sidebar":"",class:h.value,style:f.value,"aria-label":"Copilot chat sidebar","aria-hidden":!u.value,role:"complementary"},d.value),[t.createElementVNode("div",nf,[t.renderSlot(R.$slots,"header",{title:g.value,onClose:v,isOpen:u.value},()=>[t.createVNode(Zn,{title:g.value},null,8,["title"])]),t.createElementVNode("div",of,[t.createVNode(Bt,t.mergeProps({messages:e.messages,"auto-scroll":e.autoScroll,"is-running":e.isRunning,suggestions:e.suggestions,"suggestion-loading-indexes":e.suggestionLoadingIndexes,"welcome-screen":e.welcomeScreen,"input-value":e.inputValue,"input-mode":e.inputMode,"input-tools-menu":e.inputToolsMenu,"on-finish-transcribe-with-audio":e.onFinishTranscribeWithAudio},_.value),t.createSlots({_:2},[R.$slots["message-view"]?{name:"message-view",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"0"}:void 0,R.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"1"}:void 0,R.$slots.feather?{name:"feather",fn:t.withCtx(()=>[t.renderSlot(R.$slots,"feather")]),key:"2"}:void 0,R.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(M)))]),key:"3"}:void 0,R.$slots.input?{name:"input",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"input",t.normalizeProps(t.guardReactiveProps(M)))]),key:"4"}:void 0,R.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"5"}:void 0,R.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(M)))]),key:"6"}:void 0,R.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(R.$slots,"welcome-message")]),key:"7"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","on-finish-transcribe-with-audio"])])])],16,tf)],64))}}),gs=t.defineComponent({inheritAttrs:!1,__name:"CopilotSidebarView",props:{width:{default:void 0},defaultOpen:{type:Boolean,default:!0},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.computed(()=>{const{defaultOpen:c,...u}=o;return u}),i=t.computed(()=>({...r,...s.value,...l.value})),l=t.computed(()=>{const c={onSubmitMessage:u=>a("submit-message",u),onInputChange:u=>a("input-change",u),onSelectSuggestion:(u,p)=>a("select-suggestion",u,p)};return o.onStop&&(c.onStop=()=>a("stop")),o.onAddFile&&(c.onAddFile=()=>a("add-file")),o.onStartTranscribe&&(c.onStartTranscribe=()=>a("start-transcribe")),o.onCancelTranscribe&&(c.onCancelTranscribe=()=>a("cancel-transcribe")),o.onFinishTranscribe&&(c.onFinishTranscribe=()=>a("finish-transcribe")),c});return(c,u)=>(t.openBlock(),t.createBlock(an,{"is-modal-default-open":e.defaultOpen},{default:t.withCtx(()=>[t.createVNode(sf,t.normalizeProps(t.guardReactiveProps(i.value)),t.createSlots({_:2},[c.$slots.header?{name:"header",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"header",t.normalizeProps(t.guardReactiveProps(p)))]),key:"0"}:void 0,c.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"1"}:void 0,c.$slots["message-view"]?{name:"message-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"2"}:void 0,c.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"3"}:void 0,c.$slots.feather?{name:"feather",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"feather",t.normalizeProps(t.guardReactiveProps(p)))]),key:"4"}:void 0,c.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"5"}:void 0,c.$slots.input?{name:"input",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"input",t.normalizeProps(t.guardReactiveProps(p)))]),key:"6"}:void 0,c.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"7"}:void 0,c.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(p)))]),key:"8"}:void 0,c.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"welcome-message")]),key:"9"}:void 0]),1040)]),_:3},8,["is-modal-default-open"]))}}),lf={"data-copilotkit":"",class:"cpk:h-full cpk:flex cpk:flex-col","data-testid":"copilot-sidebar-welcome-screen"},cf={class:"cpk:flex-1 cpk:flex cpk:flex-col cpk:items-center cpk:justify-center cpk:px-4"},uf={class:"cpk:text-xl cpk:sm:text-2xl cpk:font-medium cpk:text-foreground cpk:text-center"},df={class:"cpk:px-8 cpk:pb-4"},pf={class:"cpk:max-w-3xl cpk:mx-auto"},mf={class:"cpk:mb-4 cpk:flex cpk:justify-center"},vs=t.defineComponent({__name:"CopilotSidebarWelcomeScreen",props:{modelValue:{default:""},isRunning:{type:Boolean,default:!1},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onUpdateModelValue:{},onSubmitMessage:{},suggestions:{default:()=>[]},loadingIndexes:{default:()=>[]},onSelectSuggestion:{},onStop:{},onAddFile:{type:Function,default:void 0},onStartTranscribe:{type:Function,default:void 0},onCancelTranscribe:{type:Function,default:void 0},onFinishTranscribe:{type:Function,default:void 0},onFinishTranscribeWithAudio:{type:Function,default:void 0},canStop:{type:Boolean,default:void 0},canAddFile:{type:Boolean,default:void 0},canTranscribe:{type:Boolean,default:void 0}},setup(e){const n=e,o=Re(),a=t.computed(()=>o.value?.labels??ot);function r(){n.onStop?.()}function s(){n.onAddFile?.()}function i(){n.onStartTranscribe?.()}function l(){n.onCancelTranscribe?.()}function c(){n.onFinishTranscribe?.()}async function u(f){await n.onFinishTranscribeWithAudio?.(f)}const p=t.computed(()=>({modelValue:n.modelValue,isRunning:n.isRunning,inputMode:n.inputMode,inputToolsMenu:n.inputToolsMenu,canStop:n.canStop??!!n.onStop,canAddFile:n.canAddFile??!!n.onAddFile,canTranscribe:n.canTranscribe??!!n.onStartTranscribe,onUpdateModelValue:n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:r,onAddFile:s,onStartTranscribe:i,onCancelTranscribe:l,onFinishTranscribe:c,onFinishTranscribeWithAudio:u})),g=t.computed(()=>({suggestions:n.suggestions,loadingIndexes:n.loadingIndexes,onSelectSuggestion:n.onSelectSuggestion})),h=t.computed(()=>({...p.value,...g.value})),d=t.computed(()=>{const f={"onUpdate:modelValue":n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:n.onStop};return n.onAddFile&&(f.onAddFile=n.onAddFile),n.onStartTranscribe&&(f.onStartTranscribe=n.onStartTranscribe),n.onCancelTranscribe&&(f.onCancelTranscribe=n.onCancelTranscribe),n.onFinishTranscribe&&(f.onFinishTranscribe=n.onFinishTranscribe),n.onFinishTranscribeWithAudio&&(f.onFinishTranscribeWithAudio=n.onFinishTranscribeWithAudio),f});return(f,C)=>t.renderSlot(f.$slots,"layout",t.normalizeProps(t.guardReactiveProps(h.value)),()=>[t.createElementVNode("div",lf,[t.createElementVNode("div",cf,[t.renderSlot(f.$slots,"welcome-message",{},()=>[t.createElementVNode("h1",uf,t.toDisplayString(a.value.welcomeMessageText),1)])]),t.createElementVNode("div",df,[t.createElementVNode("div",pf,[t.createElementVNode("div",mf,[t.renderSlot(f.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(g.value)),()=>[t.createVNode(At,{suggestions:e.suggestions,"loading-indexes":e.loadingIndexes,onSelectSuggestion:e.onSelectSuggestion},null,8,["suggestions","loading-indexes","onSelectSuggestion"])])]),t.renderSlot(f.$slots,"input",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.createVNode(Rt,t.mergeProps({"model-value":e.modelValue,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0},d.value),null,16,["model-value","is-running","mode","tools-menu"])])])])])])}}),ff=t.defineComponent({__name:"CopilotPopup",props:{width:{default:void 0},height:{default:void 0},clickOutsideToClose:{type:Boolean,default:!1},defaultOpen:{type:Boolean,default:!0},agentId:{},threadId:{},throttleMs:{},labels:{},attachments:{},onError:{},autoScroll:{type:[String,Boolean],default:!0},welcomeScreen:{type:Boolean,default:!0},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e){function n(s){return{onSubmitMessage:s.onSubmitMessage,onInputChange:s.onInputChange,onSelectSuggestion:s.onSelectSuggestion,...s.canStop?{onStop:s.onStop}:{},...s.canAddFile?{onAddFile:s.onAddFile}:{},...s.canTranscribe?{onStartTranscribe:s.onStartTranscribe,onCancelTranscribe:s.onCancelTranscribe,onFinishTranscribe:s.onFinishTranscribe}:{}}}const o=e,a=zt(),r=t.computed(()=>a.value.checkFeature("popup"));return t.watch(r,s=>{s||console.warn('[CopilotKit] Warning: "popup" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0}),(s,i)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[r.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vn,{key:0,"feature-name":"Popup"})),t.createVNode(Pn,t.mergeProps(o,{onSubmitMessage:i[0]||(i[0]=l=>s.$emit("submit-message",l)),onStop:i[1]||(i[1]=l=>s.$emit("stop")),onInputChange:i[2]||(i[2]=l=>s.$emit("input-change",l)),onSelectSuggestion:i[3]||(i[3]=(l,c)=>s.$emit("select-suggestion",l,c)),onAddFile:i[4]||(i[4]=l=>s.$emit("add-file")),onStartTranscribe:i[5]||(i[5]=l=>s.$emit("start-transcribe")),onCancelTranscribe:i[6]||(i[6]=l=>s.$emit("cancel-transcribe")),onFinishTranscribe:i[7]||(i[7]=l=>s.$emit("finish-transcribe"))}),{"chat-view":t.withCtx(l=>[s.$slots["chat-view"]?t.renderSlot(s.$slots,"chat-view",t.normalizeProps(t.mergeProps({key:0},l))):(t.openBlock(),t.createBlock(fs,t.mergeProps({key:1,messages:l.messages,"auto-scroll":l.autoScroll,"is-running":l.isRunning,suggestions:l.suggestions,"suggestion-loading-indexes":l.suggestionLoadingIndexes,"welcome-screen":l.welcomeScreen,"input-value":l.inputValue,"input-mode":l.inputMode,"input-tools-menu":l.inputToolsMenu,width:e.width,height:e.height,"click-outside-to-close":e.clickOutsideToClose,"default-open":e.defaultOpen,"on-finish-transcribe-with-audio":l.onFinishTranscribeWithAudio},n(l)),t.createSlots({"welcome-screen":t.withCtx(c=>[s.$slots["welcome-screen"]?t.renderSlot(s.$slots,"welcome-screen",t.normalizeProps(t.mergeProps({key:0},c))):(t.openBlock(),t.createBlock(hs,t.normalizeProps(t.mergeProps({key:1},c)),t.createSlots({_:2},[s.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(s.$slots,"welcome-message")]),key:"0"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(u)))]),key:"1"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(u)))]),key:"2"}:void 0]),1040))]),_:2},[s.$slots.header?{name:"header",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"header",t.normalizeProps(t.guardReactiveProps(c)))]),key:"0"}:void 0,s.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(c)))]),key:"1"}:void 0,s.$slots["message-view"]?{name:"message-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"2"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(c)))]),key:"3"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"4"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","width","height","click-outside-to-close","default-open","on-finish-transcribe-with-audio"]))]),_:3},16)],64))}}),hf=t.defineComponent({__name:"CopilotSidebar",props:{width:{default:void 0},defaultOpen:{type:Boolean,default:!0},agentId:{},threadId:{},throttleMs:{},labels:{},attachments:{},onError:{},autoScroll:{type:[String,Boolean],default:!0},welcomeScreen:{type:Boolean,default:!0},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e){function n(s){return{onSubmitMessage:s.onSubmitMessage,onInputChange:s.onInputChange,onSelectSuggestion:s.onSelectSuggestion,...s.canStop?{onStop:s.onStop}:{},...s.canAddFile?{onAddFile:s.onAddFile}:{},...s.canTranscribe?{onStartTranscribe:s.onStartTranscribe,onCancelTranscribe:s.onCancelTranscribe,onFinishTranscribe:s.onFinishTranscribe}:{}}}const o=e,a=zt(),r=t.computed(()=>a.value.checkFeature("sidebar"));return t.watch(r,s=>{s||console.warn('[CopilotKit] Warning: "sidebar" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0}),(s,i)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[r.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vn,{key:0,"feature-name":"Sidebar"})),t.createVNode(Pn,t.mergeProps(o,{onSubmitMessage:i[0]||(i[0]=l=>s.$emit("submit-message",l)),onStop:i[1]||(i[1]=l=>s.$emit("stop")),onInputChange:i[2]||(i[2]=l=>s.$emit("input-change",l)),onSelectSuggestion:i[3]||(i[3]=(l,c)=>s.$emit("select-suggestion",l,c)),onAddFile:i[4]||(i[4]=l=>s.$emit("add-file")),onStartTranscribe:i[5]||(i[5]=l=>s.$emit("start-transcribe")),onCancelTranscribe:i[6]||(i[6]=l=>s.$emit("cancel-transcribe")),onFinishTranscribe:i[7]||(i[7]=l=>s.$emit("finish-transcribe"))}),{"chat-view":t.withCtx(l=>[s.$slots["chat-view"]?t.renderSlot(s.$slots,"chat-view",t.normalizeProps(t.mergeProps({key:0},l))):(t.openBlock(),t.createBlock(gs,t.mergeProps({key:1,messages:l.messages,"auto-scroll":l.autoScroll,"is-running":l.isRunning,suggestions:l.suggestions,"suggestion-loading-indexes":l.suggestionLoadingIndexes,"welcome-screen":l.welcomeScreen,"input-value":l.inputValue,"input-mode":l.inputMode,"input-tools-menu":l.inputToolsMenu,width:e.width,"default-open":e.defaultOpen,"on-finish-transcribe-with-audio":l.onFinishTranscribeWithAudio},n(l)),t.createSlots({"welcome-screen":t.withCtx(c=>[s.$slots["welcome-screen"]?t.renderSlot(s.$slots,"welcome-screen",t.normalizeProps(t.mergeProps({key:0},c))):(t.openBlock(),t.createBlock(vs,t.normalizeProps(t.mergeProps({key:1},c)),t.createSlots({_:2},[s.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(s.$slots,"welcome-message")]),key:"0"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(u)))]),key:"1"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(u)))]),key:"2"}:void 0]),1040))]),_:2},[s.$slots.header?{name:"header",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"header",t.normalizeProps(t.guardReactiveProps(c)))]),key:"0"}:void 0,s.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(c)))]),key:"1"}:void 0,s.$slots["message-view"]?{name:"message-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"2"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(c)))]),key:"3"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"4"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","width","default-open","on-finish-transcribe-with-audio"]))]),_:3},16)],64))}}),gf=Object.assign(Pn,{View:Bt}),vf=Object.assign(jn,{OpenIcon:Un,CloseIcon:Ln}),bf=Object.assign(Zn,{Title:ms,CloseButton:ps}),kf=Object.assign(fs,{WelcomeScreen:hs}),yf=Object.assign(gs,{WelcomeScreen:vs});function Sf(e){const{copilotkit:n}=Ve(),o=t.computed(()=>t.toValue(e.description)),a=t.computed(()=>t.toValue(e.value)),r=t.computed(()=>typeof a.value=="string"?a.value:JSON.stringify(a.value));t.watch([()=>n.value,o,r],(s,i,l)=>{const c=n.value,u=c.addContext({description:o.value,value:r.value});l(()=>c.removeContext(u))},{immediate:!0})}const wf=[];function Hn(e,n){const{copilotkit:o}=Ve(),a=n??wf;t.watch([()=>e.name,()=>e.available,()=>JSON.stringify(e.webmcp??null),()=>a.length,...a],(r,s,i)=>{const l=o.value,c=e.name;l.getTool({toolName:c,agentId:e.agentId})&&(console.warn(`Tool '${c}' already exists for agent '${e.agentId||"global"}'. Overriding with latest registration.`),l.removeTool(c,e.agentId)),l.addTool(e),e.render&&l.addHookRenderToolCall({name:c,args:e.parameters,agentId:e.agentId,render:e.render}),i(()=>{l.removeTool(c,e.agentId)})},{immediate:!0})}function Cf(e,n){const o=`Use this tool to display the "${e.name}" component in the chat. This tool renders a visual UI component for the user.`,a=e.description?`${o}
67
+ `);function b(R){return typeof R=="number"?`${R}px`:R}function k(R){return typeof R=="number"?`${R}px`:R}function m(){if(o.width!==void 0||!i.value)return;const R=i.value.getBoundingClientRect().width;R>0&&(l.value=R)}function v(){s.value?.setModalOpen?.(!1)}function y(){s.value?.setModalOpen?.(!0)}function x(){s.value?.setModalOpen?.(!u.value)}function S(R){a("submit-message",R)}function A(){a("stop")}function T(R){a("input-change",R)}function O(R,U){a("select-suggestion",R,U)}function N(){a("add-file")}function z(){a("start-transcribe")}function F(){a("cancel-transcribe")}function Z(){a("finish-transcribe")}const _=t.computed(()=>{const R={onSubmitMessage:S,onInputChange:T,onSelectSuggestion:O};return o.onStop&&(R.onStop=A),o.onAddFile&&(R.onAddFile=N),o.onStartTranscribe&&(R.onStartTranscribe=z),o.onCancelTranscribe&&(R.onCancelTranscribe=F),o.onFinishTranscribe&&(R.onFinishTranscribe=Z),R});return t.watch(()=>o.width,R=>{if(R!==void 0){l.value=R;return}m()}),t.onMounted(async()=>{await t.nextTick(),m(),!(o.width!==void 0||!i.value||typeof ResizeObserver>"u")&&(c=new ResizeObserver(()=>{m()}),c.observe(i.value))}),t.onBeforeUnmount(()=>{c?.disconnect(),c=null}),(R,U)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[u.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent("style"),{key:0},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(C.value),1)]),_:1})):t.createCommentVNode("",!0),t.renderSlot(R.$slots,"toggle-button",{isOpen:u.value,toggle:x,open:y,close:v},()=>[t.createVNode(jn)]),t.createElementVNode("aside",t.mergeProps({ref_key:"sidebarRef",ref:i,"data-copilotkit":"","data-copilot-sidebar":"",class:h.value,style:f.value,"aria-label":"Copilot chat sidebar","aria-hidden":!u.value,role:"complementary"},d.value),[t.createElementVNode("div",tf,[t.renderSlot(R.$slots,"header",{title:g.value,onClose:v,isOpen:u.value},()=>[t.createVNode(Zn,{title:g.value},null,8,["title"])]),t.createElementVNode("div",nf,[t.createVNode(Bt,t.mergeProps({messages:e.messages,"auto-scroll":e.autoScroll,"is-running":e.isRunning,suggestions:e.suggestions,"suggestion-loading-indexes":e.suggestionLoadingIndexes,"welcome-screen":e.welcomeScreen,"input-value":e.inputValue,"input-mode":e.inputMode,"input-tools-menu":e.inputToolsMenu,"on-finish-transcribe-with-audio":e.onFinishTranscribeWithAudio},_.value),t.createSlots({_:2},[R.$slots["message-view"]?{name:"message-view",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"0"}:void 0,R.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"1"}:void 0,R.$slots.feather?{name:"feather",fn:t.withCtx(()=>[t.renderSlot(R.$slots,"feather")]),key:"2"}:void 0,R.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(M)))]),key:"3"}:void 0,R.$slots.input?{name:"input",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"input",t.normalizeProps(t.guardReactiveProps(M)))]),key:"4"}:void 0,R.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"5"}:void 0,R.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(M=>[t.renderSlot(R.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(M)))]),key:"6"}:void 0,R.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(R.$slots,"welcome-message")]),key:"7"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","on-finish-transcribe-with-audio"])])])],16,ef)],64))}}),gs=t.defineComponent({inheritAttrs:!1,__name:"CopilotSidebarView",props:{width:{default:void 0},defaultOpen:{type:Boolean,default:!0},messages:{default:()=>[]},autoScroll:{type:[String,Boolean],default:!0},isRunning:{type:Boolean,default:!1},suggestions:{default:()=>[]},suggestionLoadingIndexes:{default:()=>[]},welcomeScreen:{type:Boolean,default:!0},attachments:{},dragOver:{type:Boolean},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onSubmitMessage:{},onStop:{},onInputChange:{},onSelectSuggestion:{},onStartTranscribe:{},onCancelTranscribe:{},onFinishTranscribe:{},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onRemoveAttachment:{},onAddFile:{},onDragOver:{},onDragLeave:{},onDrop:{},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e,{emit:n}){const o=e,a=n,r=t.useAttrs(),s=t.computed(()=>{const{defaultOpen:c,...u}=o;return u}),i=t.computed(()=>({...r,...s.value,...l.value})),l=t.computed(()=>{const c={onSubmitMessage:u=>a("submit-message",u),onInputChange:u=>a("input-change",u),onSelectSuggestion:(u,p)=>a("select-suggestion",u,p)};return o.onStop&&(c.onStop=()=>a("stop")),o.onAddFile&&(c.onAddFile=()=>a("add-file")),o.onStartTranscribe&&(c.onStartTranscribe=()=>a("start-transcribe")),o.onCancelTranscribe&&(c.onCancelTranscribe=()=>a("cancel-transcribe")),o.onFinishTranscribe&&(c.onFinishTranscribe=()=>a("finish-transcribe")),c});return(c,u)=>(t.openBlock(),t.createBlock(an,{"is-modal-default-open":e.defaultOpen},{default:t.withCtx(()=>[t.createVNode(rf,t.normalizeProps(t.guardReactiveProps(i.value)),t.createSlots({_:2},[c.$slots.header?{name:"header",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"header",t.normalizeProps(t.guardReactiveProps(p)))]),key:"0"}:void 0,c.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"1"}:void 0,c.$slots["message-view"]?{name:"message-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"2"}:void 0,c.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"3"}:void 0,c.$slots.feather?{name:"feather",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"feather",t.normalizeProps(t.guardReactiveProps(p)))]),key:"4"}:void 0,c.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(p)))]),key:"5"}:void 0,c.$slots.input?{name:"input",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"input",t.normalizeProps(t.guardReactiveProps(p)))]),key:"6"}:void 0,c.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(p)))]),key:"7"}:void 0,c.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(p=>[t.renderSlot(c.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(p)))]),key:"8"}:void 0,c.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"welcome-message")]),key:"9"}:void 0]),1040)]),_:3},8,["is-modal-default-open"]))}}),sf={"data-copilotkit":"",class:"cpk:h-full cpk:flex cpk:flex-col","data-testid":"copilot-sidebar-welcome-screen"},lf={class:"cpk:flex-1 cpk:flex cpk:flex-col cpk:items-center cpk:justify-center cpk:px-4"},cf={class:"cpk:text-xl cpk:sm:text-2xl cpk:font-medium cpk:text-foreground cpk:text-center"},uf={class:"cpk:px-8 cpk:pb-4"},df={class:"cpk:max-w-3xl cpk:mx-auto"},pf={class:"cpk:mb-4 cpk:flex cpk:justify-center"},vs=t.defineComponent({__name:"CopilotSidebarWelcomeScreen",props:{modelValue:{default:""},isRunning:{type:Boolean,default:!1},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},onUpdateModelValue:{},onSubmitMessage:{},suggestions:{default:()=>[]},loadingIndexes:{default:()=>[]},onSelectSuggestion:{},onStop:{},onAddFile:{type:Function,default:void 0},onStartTranscribe:{type:Function,default:void 0},onCancelTranscribe:{type:Function,default:void 0},onFinishTranscribe:{type:Function,default:void 0},onFinishTranscribeWithAudio:{type:Function,default:void 0},canStop:{type:Boolean,default:void 0},canAddFile:{type:Boolean,default:void 0},canTranscribe:{type:Boolean,default:void 0}},setup(e){const n=e,o=Re(),a=t.computed(()=>o.value?.labels??ot);function r(){n.onStop?.()}function s(){n.onAddFile?.()}function i(){n.onStartTranscribe?.()}function l(){n.onCancelTranscribe?.()}function c(){n.onFinishTranscribe?.()}async function u(f){await n.onFinishTranscribeWithAudio?.(f)}const p=t.computed(()=>({modelValue:n.modelValue,isRunning:n.isRunning,inputMode:n.inputMode,inputToolsMenu:n.inputToolsMenu,canStop:n.canStop??!!n.onStop,canAddFile:n.canAddFile??!!n.onAddFile,canTranscribe:n.canTranscribe??!!n.onStartTranscribe,onUpdateModelValue:n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:r,onAddFile:s,onStartTranscribe:i,onCancelTranscribe:l,onFinishTranscribe:c,onFinishTranscribeWithAudio:u})),g=t.computed(()=>({suggestions:n.suggestions,loadingIndexes:n.loadingIndexes,onSelectSuggestion:n.onSelectSuggestion})),h=t.computed(()=>({...p.value,...g.value})),d=t.computed(()=>{const f={"onUpdate:modelValue":n.onUpdateModelValue,onSubmitMessage:n.onSubmitMessage,onStop:n.onStop};return n.onAddFile&&(f.onAddFile=n.onAddFile),n.onStartTranscribe&&(f.onStartTranscribe=n.onStartTranscribe),n.onCancelTranscribe&&(f.onCancelTranscribe=n.onCancelTranscribe),n.onFinishTranscribe&&(f.onFinishTranscribe=n.onFinishTranscribe),n.onFinishTranscribeWithAudio&&(f.onFinishTranscribeWithAudio=n.onFinishTranscribeWithAudio),f});return(f,C)=>t.renderSlot(f.$slots,"layout",t.normalizeProps(t.guardReactiveProps(h.value)),()=>[t.createElementVNode("div",sf,[t.createElementVNode("div",lf,[t.renderSlot(f.$slots,"welcome-message",{},()=>[t.createElementVNode("h1",cf,t.toDisplayString(a.value.welcomeMessageText),1)])]),t.createElementVNode("div",uf,[t.createElementVNode("div",df,[t.createElementVNode("div",pf,[t.renderSlot(f.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(g.value)),()=>[t.createVNode(At,{suggestions:e.suggestions,"loading-indexes":e.loadingIndexes,onSelectSuggestion:e.onSelectSuggestion},null,8,["suggestions","loading-indexes","onSelectSuggestion"])])]),t.renderSlot(f.$slots,"input",t.normalizeProps(t.guardReactiveProps(p.value)),()=>[t.createVNode(Rt,t.mergeProps({"model-value":e.modelValue,"is-running":e.isRunning,mode:e.inputMode,"tools-menu":e.inputToolsMenu,positioning:"static","show-disclaimer":!0},d.value),null,16,["model-value","is-running","mode","tools-menu"])])])])])])}}),mf=t.defineComponent({__name:"CopilotPopup",props:{width:{default:void 0},height:{default:void 0},clickOutsideToClose:{type:Boolean,default:!1},defaultOpen:{type:Boolean,default:!0},agentId:{},threadId:{},throttleMs:{},labels:{},attachments:{},onError:{},autoScroll:{type:[String,Boolean],default:!0},welcomeScreen:{type:Boolean,default:!0},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e){function n(s){return{onSubmitMessage:s.onSubmitMessage,onInputChange:s.onInputChange,onSelectSuggestion:s.onSelectSuggestion,...s.canStop?{onStop:s.onStop}:{},...s.canAddFile?{onAddFile:s.onAddFile}:{},...s.canTranscribe?{onStartTranscribe:s.onStartTranscribe,onCancelTranscribe:s.onCancelTranscribe,onFinishTranscribe:s.onFinishTranscribe}:{}}}const o=e,a=zt(),r=t.computed(()=>a.value.checkFeature("popup"));return t.watch(r,s=>{s||console.warn('[CopilotKit] Warning: "popup" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0}),(s,i)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[r.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vn,{key:0,"feature-name":"Popup"})),t.createVNode(Pn,t.mergeProps(o,{onSubmitMessage:i[0]||(i[0]=l=>s.$emit("submit-message",l)),onStop:i[1]||(i[1]=l=>s.$emit("stop")),onInputChange:i[2]||(i[2]=l=>s.$emit("input-change",l)),onSelectSuggestion:i[3]||(i[3]=(l,c)=>s.$emit("select-suggestion",l,c)),onAddFile:i[4]||(i[4]=l=>s.$emit("add-file")),onStartTranscribe:i[5]||(i[5]=l=>s.$emit("start-transcribe")),onCancelTranscribe:i[6]||(i[6]=l=>s.$emit("cancel-transcribe")),onFinishTranscribe:i[7]||(i[7]=l=>s.$emit("finish-transcribe"))}),{"chat-view":t.withCtx(l=>[s.$slots["chat-view"]?t.renderSlot(s.$slots,"chat-view",t.normalizeProps(t.mergeProps({key:0},l))):(t.openBlock(),t.createBlock(fs,t.mergeProps({key:1,messages:l.messages,"auto-scroll":l.autoScroll,"is-running":l.isRunning,suggestions:l.suggestions,"suggestion-loading-indexes":l.suggestionLoadingIndexes,"welcome-screen":l.welcomeScreen,"input-value":l.inputValue,"input-mode":l.inputMode,"input-tools-menu":l.inputToolsMenu,width:e.width,height:e.height,"click-outside-to-close":e.clickOutsideToClose,"default-open":e.defaultOpen,"on-finish-transcribe-with-audio":l.onFinishTranscribeWithAudio},n(l)),t.createSlots({"welcome-screen":t.withCtx(c=>[s.$slots["welcome-screen"]?t.renderSlot(s.$slots,"welcome-screen",t.normalizeProps(t.mergeProps({key:0},c))):(t.openBlock(),t.createBlock(hs,t.normalizeProps(t.mergeProps({key:1},c)),t.createSlots({_:2},[s.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(s.$slots,"welcome-message")]),key:"0"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(u)))]),key:"1"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(u)))]),key:"2"}:void 0]),1040))]),_:2},[s.$slots.header?{name:"header",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"header",t.normalizeProps(t.guardReactiveProps(c)))]),key:"0"}:void 0,s.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(c)))]),key:"1"}:void 0,s.$slots["message-view"]?{name:"message-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"2"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(c)))]),key:"3"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"4"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","width","height","click-outside-to-close","default-open","on-finish-transcribe-with-audio"]))]),_:3},16)],64))}}),ff=t.defineComponent({__name:"CopilotSidebar",props:{width:{default:void 0},defaultOpen:{type:Boolean,default:!0},agentId:{},threadId:{},throttleMs:{},labels:{},attachments:{},onError:{},autoScroll:{type:[String,Boolean],default:!0},welcomeScreen:{type:Boolean,default:!0},inputValue:{default:void 0},inputMode:{default:"input"},inputToolsMenu:{default:()=>[]},isConnecting:{type:Boolean},hasExplicitThreadId:{type:Boolean},onFinishTranscribeWithAudio:{type:Function,default:void 0}},emits:["submit-message","stop","input-change","select-suggestion","add-file","start-transcribe","cancel-transcribe","finish-transcribe"],setup(e){function n(s){return{onSubmitMessage:s.onSubmitMessage,onInputChange:s.onInputChange,onSelectSuggestion:s.onSelectSuggestion,...s.canStop?{onStop:s.onStop}:{},...s.canAddFile?{onAddFile:s.onAddFile}:{},...s.canTranscribe?{onStartTranscribe:s.onStartTranscribe,onCancelTranscribe:s.onCancelTranscribe,onFinishTranscribe:s.onFinishTranscribe}:{}}}const o=e,a=zt(),r=t.computed(()=>a.value.checkFeature("sidebar"));return t.watch(r,s=>{s||console.warn('[CopilotKit] Warning: "sidebar" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0}),(s,i)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[r.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vn,{key:0,"feature-name":"Sidebar"})),t.createVNode(Pn,t.mergeProps(o,{onSubmitMessage:i[0]||(i[0]=l=>s.$emit("submit-message",l)),onStop:i[1]||(i[1]=l=>s.$emit("stop")),onInputChange:i[2]||(i[2]=l=>s.$emit("input-change",l)),onSelectSuggestion:i[3]||(i[3]=(l,c)=>s.$emit("select-suggestion",l,c)),onAddFile:i[4]||(i[4]=l=>s.$emit("add-file")),onStartTranscribe:i[5]||(i[5]=l=>s.$emit("start-transcribe")),onCancelTranscribe:i[6]||(i[6]=l=>s.$emit("cancel-transcribe")),onFinishTranscribe:i[7]||(i[7]=l=>s.$emit("finish-transcribe"))}),{"chat-view":t.withCtx(l=>[s.$slots["chat-view"]?t.renderSlot(s.$slots,"chat-view",t.normalizeProps(t.mergeProps({key:0},l))):(t.openBlock(),t.createBlock(gs,t.mergeProps({key:1,messages:l.messages,"auto-scroll":l.autoScroll,"is-running":l.isRunning,suggestions:l.suggestions,"suggestion-loading-indexes":l.suggestionLoadingIndexes,"welcome-screen":l.welcomeScreen,"input-value":l.inputValue,"input-mode":l.inputMode,"input-tools-menu":l.inputToolsMenu,width:e.width,"default-open":e.defaultOpen,"on-finish-transcribe-with-audio":l.onFinishTranscribeWithAudio},n(l)),t.createSlots({"welcome-screen":t.withCtx(c=>[s.$slots["welcome-screen"]?t.renderSlot(s.$slots,"welcome-screen",t.normalizeProps(t.mergeProps({key:0},c))):(t.openBlock(),t.createBlock(vs,t.normalizeProps(t.mergeProps({key:1},c)),t.createSlots({_:2},[s.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(s.$slots,"welcome-message")]),key:"0"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(u)))]),key:"1"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(u=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(u)))]),key:"2"}:void 0]),1040))]),_:2},[s.$slots.header?{name:"header",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"header",t.normalizeProps(t.guardReactiveProps(c)))]),key:"0"}:void 0,s.$slots["toggle-button"]?{name:"toggle-button",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"toggle-button",t.normalizeProps(t.guardReactiveProps(c)))]),key:"1"}:void 0,s.$slots["message-view"]?{name:"message-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"2"}:void 0,s.$slots.input?{name:"input",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"input",t.normalizeProps(t.guardReactiveProps(c)))]),key:"3"}:void 0,s.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(c=>[t.renderSlot(s.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(c)))]),key:"4"}:void 0]),1040,["messages","auto-scroll","is-running","suggestions","suggestion-loading-indexes","welcome-screen","input-value","input-mode","input-tools-menu","width","default-open","on-finish-transcribe-with-audio"]))]),_:3},16)],64))}}),hf=Object.assign(Pn,{View:Bt}),gf=Object.assign(jn,{OpenIcon:Un,CloseIcon:Ln}),vf=Object.assign(Zn,{Title:ms,CloseButton:ps}),bf=Object.assign(fs,{WelcomeScreen:hs}),kf=Object.assign(gs,{WelcomeScreen:vs});function yf(e){const{copilotkit:n}=Ve(),o=t.computed(()=>t.toValue(e.description)),a=t.computed(()=>t.toValue(e.value)),r=t.computed(()=>typeof a.value=="string"?a.value:JSON.stringify(a.value));t.watch([()=>n.value,o,r],(s,i,l)=>{const c=n.value,u=c.addContext({description:o.value,value:r.value});l(()=>c.removeContext(u))},{immediate:!0})}const Sf=[];function Hn(e,n){const{copilotkit:o}=Ve(),a=n??Sf;t.watch([()=>e.name,()=>e.available,()=>JSON.stringify(e.webmcp??null),()=>a.length,...a],(r,s,i)=>{const l=o.value,c=e.name;l.getTool({toolName:c,agentId:e.agentId})&&(console.warn(`Tool '${c}' already exists for agent '${e.agentId||"global"}'. Overriding with latest registration.`),l.removeTool(c,e.agentId)),l.addTool(e),e.render&&l.addHookRenderToolCall({name:c,args:e.parameters,agentId:e.agentId,render:e.render}),i(()=>{l.removeTool(c,e.agentId)})},{immediate:!0})}function wf(e,n){const o=`Use this tool to display the "${e.name}" component in the chat. This tool renders a visual UI component for the user.`,a=e.description?`${o}
77
68
 
78
- ${e.description}`:o;Hn({name:e.name,description:a,parameters:e.parameters,render:({args:r})=>{const s=e.render;return t.h(s,r)},agentId:e.agentId},n)}const Tf=[];function bs(e,n){const{copilotkit:o}=Ve(),a=n??Tf;t.watch([()=>o.value,()=>e.name,()=>e.agentId,()=>a.length,...a],()=>{const r=i=>typeof e.render=="function"?e.render(i):t.h(e.render,i),s=e.name==="*"&&!e.parameters?Jt({name:"*",render:i=>r({...i,parameters:i.args}),...e.agentId?{agentId:e.agentId}:{}}):Jt({name:e.name,args:e.parameters,render:i=>r({...i,parameters:i.args}),...e.agentId?{agentId:e.agentId}:{}});o.value.addHookRenderToolCall(s)},{immediate:!0})}const Ao=new Set;function xf(e){switch(e){case ie.ToolCallStatus.Complete:return"complete";case ie.ToolCallStatus.Executing:return"executing";case ie.ToolCallStatus.InProgress:return"inProgress";default:{const n=String(e);return Ao.has(n)||(Ao.add(n),console.warn(`[CopilotKit] Unknown ToolCallStatus "${n}" in default tool-call renderer; falling back to "inProgress".`)),"inProgress"}}}function dn(e){const n=e.parameters!==void 0?e.parameters:e.args,o=e.status,a=o==="inProgress"||o==="executing"||o==="complete"?o:xf(o);return{name:e.name,toolCallId:e.toolCallId,parameters:n,status:a,result:e.result}}function _o(e){try{return JSON.stringify(e,null,2)}catch(n){console.warn("[CopilotKit] Failed to JSON.stringify tool-call payload for default renderer; falling back to String():",n);try{return String(e)}catch(o){return console.warn("[CopilotKit] safeStringifyForPre: value could not be stringified:",o),"[unserializable]"}}}const If=t.defineComponent({props:{name:{type:String,required:!0},toolCallId:{type:String,required:!0},parameters:{type:null,required:!1,default:void 0},status:{type:String,required:!0},result:{type:null,required:!1,default:void 0}},setup(e){const n=t.ref(!1);return()=>{const o=e.status==="inProgress"||e.status==="executing",a=e.status==="complete",r=o?"Running":a?"Done":e.status;return t.h("div",{"data-testid":"copilot-tool-render","data-tool-name":e.name,"data-tool-call-id":e.toolCallId,"data-status":e.status,"data-args":$o(e.parameters),"data-result":$o(e.result),style:{marginTop:"8px",paddingBottom:"8px"}},[t.h("div",{style:{borderRadius:"12px",border:"1px solid #e4e4e7",backgroundColor:"#fafafa",padding:"14px 16px"}},[t.h("button",{type:"button","aria-expanded":String(n.value),onClick:()=>{n.value=!n.value},style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px",cursor:"pointer",border:"none",padding:0,margin:0,background:"transparent",textAlign:"left"}},[t.h("span",{"data-testid":"copilot-tool-render-name",style:{fontWeight:"600"}},e.name),t.h("span",{"data-testid":"copilot-tool-render-status"},r)]),n.value?t.h("div",{style:{marginTop:"12px"}},[t.h("div","Arguments"),t.h("pre",_o(e.parameters??{})),e.result!==void 0?t.h("div",[t.h("div","Result"),t.h("pre",typeof e.result=="string"?e.result:_o(e.result))]):null]):null])])}}});function $o(e){if(e==null)return"";if(typeof e=="string")return e;try{return JSON.stringify(e)}catch(n){console.warn("[CopilotKit] Failed to JSON.stringify tool-call payload for data-* attribute; falling back to String():",n);try{return String(e)}catch(o){return console.warn("[CopilotKit] safeStringifyForAttr: value could not be stringified:",o),""}}}function Ef(e,n){const o=e?.render;let a;if(typeof o=="function"){const r=o;a=(s=>{const i=dn(s);return r(i)})}else if(o){const r=o;a=(s=>{const i=dn(s);return t.h(r,{name:i.name,toolCallId:i.toolCallId,parameters:i.parameters,status:i.status,result:i.result})})}else a=(r=>{const s=dn(r);return t.h(If,{name:s.name,toolCallId:s.toolCallId,parameters:s.parameters,status:s.status,result:s.result})});bs({name:"*",render:a},n)}function Rf(e,n){const{copilotkit:o}=Ve(),a=t.ref(null),r=t.ref(null),s=t.ref(null),i=async p=>{a.value&&(s.value?.(),s.value=null,a.value(p),a.value=null,r.value=null)},u={...e,type:"human-in-the-loop",handler:async(p,g)=>{const h=g?.signal;return new Promise((d,f)=>{if(h?.aborted){f(new Error("Human-in-the-loop interaction aborted"));return}if(a.value=d,r.value=f,h){const C=()=>{s.value=null,a.value=null;const b=r.value;r.value=null,b?.(new Error("Human-in-the-loop interaction aborted"))};h.addEventListener("abort",C,{once:!0}),s.value=()=>{h.removeEventListener("abort",C)}}})},render:p=>{const g=e.render;return p.status===ie.ToolCallStatus.InProgress?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:void 0}):p.status===ie.ToolCallStatus.Executing?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:i}):p.status===ie.ToolCallStatus.Complete?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:void 0}):p}};Hn(u,n),t.onScopeDispose(()=>{o.value.removeHookRenderToolCall(e.name,e.agentId)})}function Af(e){return"instructions"in e}function _f(e){return e.map(n=>({...n,isLoading:n.isLoading??!1}))}function $f(e,n){const{copilotkit:o}=Ve(),a=Re(),r=n??[],s=t.computed(()=>a.value?.agentId??G.DEFAULT_AGENT_ID),i=t.computed(()=>e?e.consumerAgentId:void 0),l=t.computed(()=>{if(!e||e.available==="disabled")return null;if(Af(e))return{...e};const b=_f(e.suggestions);return{...e,suggestions:b}}),c=t.computed(()=>l.value?JSON.stringify(l.value):null),u=t.computed(()=>{if(!l.value)return s.value;const b=l.value.consumerAgentId;return!b||b==="*"?s.value:b}),p=t.computed(()=>i.value===void 0||i.value==="*"),g=t.ref(!1),h=t.ref(null),d=t.ref(null),f=()=>{if(!g.value||!p.value)return;if(Object.values(o.value.agents??{}).some(k=>!!k.agentId&&k.isRunning)){h.value=setTimeout(()=>{h.value=null,f()},0);return}g.value=!1,C()},C=()=>{if(l.value){if(p.value){let b=!1;const k=Object.values(o.value.agents??{});for(const m of k){const v=m.agentId;v&&(m.isRunning?b=!0:o.value.reloadSuggestions(v))}g.value=b,b&&h.value===null&&(h.value=setTimeout(()=>{h.value=null,f()},0));return}u.value&&o.value.reloadSuggestions(u.value)}};t.watch([()=>o.value,c],([b,k],m,v)=>{if(!k||!l.value)return;const y=o.value,x=l.value,S=y.addSuggestionsConfig(x);C(),v(()=>y.removeSuggestionsConfig(S))},{immediate:!0}),t.watch([l,c],([b,k])=>{if(!b){d.value=null;return}k&&d.value===k||(k&&(d.value=k),C())},{immediate:!1}),t.watch([l,()=>r.length,...r],([b])=>{!b||r.length===0||C()},{immediate:!0}),t.watch([()=>o.value,g],(b,k,m)=>{m(()=>{h.value!==null&&(clearTimeout(h.value),h.value=null)})},{immediate:!0}),t.watch([()=>o.value,p],([b,k],m,v)=>{if(!k)return;const y=Object.values(b.agents??{}).filter(x=>!!x).map(x=>x.subscribe({onRunStartedEvent:f,onRunFinishedEvent:f,onRunFinalized:f,onRunFailed:f,onRunErrorEvent:f}));v(()=>{for(const x of y)x.unsubscribe()})},{immediate:!0})}const ks="on_interrupt";function Mf(e){return(typeof e=="object"||typeof e=="function")&&e!==null&&typeof Reflect.get(e,"then")=="function"}function Nf(e){return e instanceof Promise?e:new Promise((n,o)=>{try{e.then(n,o)}catch(a){o(a)}})}function pn(e){return e.kind==="legacy"?e.event:{name:ks,value:e.interrupts[0]}}function Of(e={}){const{copilotkit:n}=Ve(),{agent:o}=rn({agentId:e.agentId}),a=t.shallowRef(null),r=t.shallowRef(null),s={};t.watch(o,(d,f,C)=>{if(!d){a.value=null,r.value=null;return}let b=null,k=null;const m=d.subscribe({onCustomEvent:({event:v})=>{v.name===ks&&(b={name:v.name,value:v.value})},onRunFinishedEvent:v=>{v.outcome==="interrupt"&&(k=v.interrupts)},onRunStartedEvent:()=>{b=null,k=null;for(const v of Object.keys(s))delete s[v];a.value=null},onRunFinalized:()=>{k&&k.length>0?a.value={kind:"standard",interrupts:k}:b&&(a.value={kind:"legacy",event:b}),b=null,k=null},onRunFailed:()=>{b=null,k=null;for(const v of Object.keys(s))delete s[v];a.value=null}});C(()=>m.unsubscribe())},{immediate:!0});const i=async d=>{if(!d.every(m=>s[m.id]))return;const C=d.find(m=>Wt.isInterruptExpired(m));if(C){console.error(`[CopilotKit] useInterrupt: interrupt ${C.id} expired at ${C.expiresAt}; not resuming.`);for(const m of Object.keys(s))delete s[m];a.value=null;return}const b=Wt.buildResumeArray(d,s);for(const m of Object.keys(s))delete s[m];const k=o.value;if(k)try{return await n.value.runAgent({agent:k,resume:b})}catch(m){throw console.error("[CopilotKit] useInterrupt resolve: runAgent rejected; clearing pending + rethrowing",m),a.value=null,m}},l=async(d,f)=>{const C=a.value;if(!C)return;const b=o.value;if(!b)return;if(C.kind==="legacy"){const m=C.event.value;try{return await n.value.runAgent({agent:b,forwardedProps:{command:{resume:d,interruptEvent:m}}})}catch(v){throw console.error("[CopilotKit] useInterrupt resolve: runAgent rejected; clearing pending + rethrowing",v),a.value=null,v}}C.interrupts.length>1&&f===void 0&&console.warn(`[CopilotKit] useInterrupt: resolve()/cancel() called without an interruptId while ${C.interrupts.length} interrupts are open; defaulting to the first. Pass an interruptId to address a specific interrupt.`);const k=f??C.interrupts[0]?.id;if(k)return s[k]={status:"resolved",payload:d},i(C.interrupts)},c=async d=>{const f=a.value;if(!f)return;if(f.kind==="legacy"){console.warn("[CopilotKit] useInterrupt: cancel() is not supported for legacy on_interrupt interrupts; dismissing."),a.value=null;return}f.interrupts.length>1&&d===void 0&&console.warn(`[CopilotKit] useInterrupt: resolve()/cancel() called without an interruptId while ${f.interrupts.length} interrupts are open; defaulting to the first. Pass an interruptId to address a specific interrupt.`);const C=d??f.interrupts[0]?.id;if(C)return s[C]={status:"cancelled"},i(f.interrupts)},u=l,p=c;t.watch(a,(d,f,C)=>{if(!d){r.value=null;return}const b=pn(d);if(e.enabled&&!e.enabled(b)){r.value=null;return}const k=e.handler;if(!k){r.value=null;return}let m=!1;const v=k({event:b,interrupt:d.kind==="standard"?d.interrupts[0]??null:null,interrupts:d.kind==="standard"?d.interrupts:[],resolve:l,cancel:c});Mf(v)?Nf(v).then(y=>{m||(r.value=y)}).catch(y=>{m||(console.error("[CopilotKit] useInterrupt handler failed:",y),r.value=null)}):r.value=v,C(()=>{m=!0})},{immediate:!0});const g=t.computed(()=>a.value?pn(a.value):null),h=t.computed(()=>{const d=a.value;if(!d)return null;const f=pn(d);return e.enabled&&!e.enabled(f)?null:{event:f,interrupt:d.kind==="standard"?d.interrupts[0]??null:null,interrupts:d.kind==="standard"?d.interrupts:[],result:r.value,resolve:l,cancel:c}});return t.watch([()=>n.value,h,()=>e.renderInChat!==!1],([d,f,C],b,k)=>{if(!C)return;d.setInterruptState(f);const m=f;k(()=>{d.interruptState===m&&d.setInterruptState(null)})},{immediate:!0}),t.onScopeDispose(()=>{const d=n.value;e.renderInChat!==!1&&d.interruptState===h.value&&d.setInterruptState(null)}),{interrupt:g,result:r,hasInterrupt:t.computed(()=>h.value!==null),resolve:l,resolveInterrupt:u,cancel:c,cancelInterrupt:p,slotProps:h}}function zf(e){const{agent:n}=rn({agentId:e});return t.computed(()=>{const o=n.value;if(o&&"capabilities"in o)return o.capabilities})}function Bf(){const{copilotkit:e}=Ve(),n=Re();return function(a){const r=n.value;if(!r)return null;const s=r.agentId||G.DEFAULT_AGENT_ID,{threadId:i}=r,l=e.value,c=[...l.renderCustomMessages].filter(x=>x.agentId===void 0||x.agentId===s).sort((x,S)=>{const A=x.agentId!==void 0,T=S.agentId!==void 0;return A===T?0:A?-1:1});if(!c.length)return null;const{message:u,position:p}=a,g=l.getRunIdForMessage(s,i,u.id)??l.getRunIdsForThread(s,i).slice(-1)[0],h=g??`missing-run-id:${u.id}`,d=l.getAgent(s);if(!d)return null;const f=g?d.messages.filter(x=>l.getRunIdForMessage(s,i,x.id)===g).map(x=>x.id):[u.id],C=d.messages.findIndex(x=>x.id===u.id);C<0&&console.warn(`[CopilotKit] useRenderCustomMessages: message "${u.id}" not found in agent "${s}" messages`);const b=Math.max(0,C),k=g?Math.max(f.indexOf(u.id),0):0,m=g?f.length:1,v=g?l.getStateByRun(s,i,g):void 0,y={message:u,position:p,runId:h,messageIndex:b,messageIndexInRun:k,numberOfMessagesInRun:m,agentId:s,stateSnapshot:v};for(const x of c)if(x.render)return{renderer:x.render,props:y};return null}}function Ff(){const{copilotkit:e}=Ve(),n=Re(),o=t.computed(()=>n.value?.agentId??G.DEFAULT_AGENT_ID),a=t.computed(()=>[...e.value.renderActivityMessages]);function r(i){const l=a.value;if(!l.length)return null;const c=l.filter(u=>u.activityType===i);return c.find(u=>u.agentId===o.value)??c.find(u=>u.agentId===void 0)??l.find(u=>u.activityType==="*")??null}function s(i){const l=r(i.activityType);if(!l)return null;const c=l.content.safeParse(i.content);if(!c.success)return console.warn(`Failed to parse content for activity message '${i.activityType}':`,c.error),null;const u=e.value.getAgent(o.value);return{renderer:l.render,props:{activityType:i.activityType,content:c.data,message:i,agent:u}}}return{renderActivityMessage:s,findRenderer:r}}exports.A2UIActivityContentSchema=Nu;exports.A2UISurfaceActivityType=Mu;exports.ActivityDeltaEventSchema=La;exports.ActivityMessageSchema=Fa;exports.ActivitySnapshotEventSchema=Pa;exports.AddOperationSchema=wa;exports.AgentCapabilitiesSchema=xu;exports.AssistantMessageSchema=Oa;exports.AttributableSchema=Iu;exports.AudioPartSchema=va;exports.BaseEventSchema=Eu;exports.BaseMessageSchema=Ru;exports.ContentPartSchema=tn;exports.ContextSchema=Za;exports.CopilotChat=gf;exports.CopilotChatDefaultLabels=ot;exports.CopilotChatToggleButton=vf;exports.CopilotChatToggleButtonCloseIcon=Ln;exports.CopilotChatToggleButtonOpenIcon=Un;exports.CopilotKitCoreVue=Or;exports.CopilotModalHeader=bf;exports.CopilotPopupView=kf;exports.CopilotSidebarView=yf;exports.CopyOperationSchema=Ia;exports.CustomEventSchema=ja;exports.DataSourceSchema=ma;exports.DeveloperMessageSchema=_a;exports.DocumentPartSchema=ka;exports.EventSchema=Cu;exports.EventTypeSchema=oa;exports.ExecutionCapabilitiesSchema=Rr;exports.FileSourceSchema=ha;exports.FunctionCallSchema=Ma;exports.GenerateSandboxedUiArgsSchema=Ur;exports.HumanInTheLoopCapabilitiesSchema=Ar;exports.IdentityCapabilitiesSchema=br;exports.ImagePartSchema=ga;exports.InterruptSchema=qa;exports.JsonPatchOperationSchema=Ra;exports.JsonPatchSchema=$n;exports.JsonPointerSchema=it;exports.LicenseContextKey=Fn;exports.MCPAppsActivityRenderer=Nr;exports.MessageSchema=Mn;exports.MessagesSnapshotEventSchema=Va;exports.MetadataSchema=te;exports.MoveOperationSchema=xa;exports.MultiAgentCapabilitiesSchema=Cr;exports.MultimodalCapabilitiesSchema=Er;exports.MultimodalInputCapabilitiesSchema=xr;exports.MultimodalOutputCapabilitiesSchema=Ir;exports.OpenGenerativeUIActivityRenderer=Zr;exports.OpenGenerativeUIActivityType=Pr;exports.OpenGenerativeUIContentSchema=Lr;exports.OpenGenerativeUIRenderer=jr;exports.OpenGenerativeUIToolRenderer=Hr;exports.OptionalMetadataSchema=Au;exports.OutputCapabilitiesSchema=Sr;exports.PartSourceSchema=Nt;exports.RawEventSchema=Ua;exports.ReasoningCapabilitiesSchema=Tr;exports.ReasoningEncryptedValueEventSchema=ur;exports.ReasoningEncryptedValueSubtypeSchema=cr;exports.ReasoningEndEventSchema=lr;exports.ReasoningMessageChunkEventSchema=ir;exports.ReasoningMessageContentEventSchema=rr;exports.ReasoningMessageEndEventSchema=sr;exports.ReasoningMessageSchema=Da;exports.ReasoningMessageStartEventSchema=ar;exports.ReasoningStartEventSchema=or;exports.RemoveOperationSchema=Ca;exports.ReplaceOperationSchema=Ta;exports.ResumeEntrySchema=Ha;exports.RoleSchema=Tu;exports.RunAgentInputSchema=Ga;exports.RunErrorEventSchema=er;exports.RunFinishedCancelledOutcomeSchema=Xa;exports.RunFinishedEventSchema=Qa;exports.RunFinishedInterruptOutcomeSchema=Ja;exports.RunFinishedOutcomeSchema=Ya;exports.RunFinishedSuccessOutcomeSchema=Ka;exports.RunStartedEventSchema=Wa;exports.StateCapabilitiesSchema=wr;exports.StateDeltaEventSchema=Aa;exports.StateSchema=_n;exports.StateSnapshotEventSchema=Sa;exports.StepFinishedEventSchema=nr;exports.StepStartedEventSchema=tr;exports.SubagentErrorEventSchema=gr;exports.SubagentFinishedEventSchema=hr;exports.SubagentFinishedOutcomeSchema=fr;exports.SubagentFinishedSuccessOutcomeSchema=pr;exports.SubagentFinishedSuspendedOutcomeSchema=mr;exports.SubagentInfoSchema=vr;exports.SubagentRunIdSchema=le;exports.SubagentStartedEventSchema=dr;exports.SystemMessageSchema=$a;exports.TestOperationSchema=Ea;exports.TextMessageChunkEventSchema=ia;exports.TextMessageContentEventSchema=ra;exports.TextMessageEndEventSchema=sa;exports.TextMessageRoleSchema=An;exports.TextMessageStartEventSchema=aa;exports.TextPartSchema=pa;exports.TokenUsageSchema=On;exports.ToolCallArgsEventSchema=ca;exports.ToolCallChunkEventSchema=da;exports.ToolCallEndEventSchema=ua;exports.ToolCallResultEventSchema=ya;exports.ToolCallSchema=Na;exports.ToolCallStartEventSchema=la;exports.ToolMessageSchema=Ba;exports.ToolSchema=Nn;exports.ToolsCapabilitiesSchema=yr;exports.TransportCapabilitiesSchema=kr;exports.UrlSourceSchema=fa;exports.UseAgentUpdate=ns;exports.UserMessageSchema=za;exports.VideoPartSchema=ba;exports._sfc_main=Jr;exports._sfc_main$1=es;exports._sfc_main$10=At;exports._sfc_main$11=Yr;exports._sfc_main$12=ls;exports._sfc_main$13=Bt;exports._sfc_main$14=_r;exports._sfc_main$15=Cd;exports._sfc_main$16=ff;exports._sfc_main$17=hf;exports._sfc_main$18=Fm;exports._sfc_main$2=yn;exports._sfc_main$3=zm;exports._sfc_main$4=ts;exports._sfc_main$5=an;exports._sfc_main$6=Rt;exports._sfc_main$7=cs;exports._sfc_main$8=is;exports._sfc_main$9=us;exports.createA2UIMessageRenderer=zr;exports.createDefaultLicenseRef=Gr;exports.defineToolCallRenderer=Jt;exports.extractCompleteStyles=Fr;exports.getOperationSurfaceId=bn;exports.processPartialHtml=Dr;exports.useAgent=rn;exports.useAgentContext=Sf;exports.useAttachments=as;exports.useCapabilities=zf;exports.useComponent=Cf;exports.useConfigureSuggestions=$f;exports.useCopilotChatConfiguration=Re;exports.useCopilotKit=Ve;exports.useDefaultRenderTool=Ef;exports.useFrontendTool=Hn;exports.useHumanInTheLoop=Rf;exports.useInterrupt=Of;exports.useKatexStyles=Qr;exports.useKeyboardHeight=rs;exports.useLicenseContext=zt;exports.useRenderActivityMessage=Ff;exports.useRenderCustomMessages=Bf;exports.useRenderTool=bs;exports.useSandboxFunctions=Vr;exports.useSuggestions=os;exports.useThreads=ds;exports.vueBasicCatalog=yt;
79
- //# sourceMappingURL=use-render-activity-message-JCCE1lgH.cjs.map
69
+ ${e.description}`:o;Hn({name:e.name,description:a,parameters:e.parameters,render:({args:r})=>{const s=e.render;return t.h(s,r)},agentId:e.agentId},n)}const Cf=[];function bs(e,n){const{copilotkit:o}=Ve(),a=n??Cf;t.watch([()=>o.value,()=>e.name,()=>e.agentId,()=>a.length,...a],()=>{const r=i=>typeof e.render=="function"?e.render(i):t.h(e.render,i),s=e.name==="*"&&!e.parameters?Jt({name:"*",render:i=>r({...i,parameters:i.args}),...e.agentId?{agentId:e.agentId}:{}}):Jt({name:e.name,args:e.parameters,render:i=>r({...i,parameters:i.args}),...e.agentId?{agentId:e.agentId}:{}});o.value.addHookRenderToolCall(s)},{immediate:!0})}const Ao=new Set;function Tf(e){switch(e){case ie.ToolCallStatus.Complete:return"complete";case ie.ToolCallStatus.Executing:return"executing";case ie.ToolCallStatus.InProgress:return"inProgress";default:{const n=String(e);return Ao.has(n)||(Ao.add(n),console.warn(`[CopilotKit] Unknown ToolCallStatus "${n}" in default tool-call renderer; falling back to "inProgress".`)),"inProgress"}}}function dn(e){const n=e.parameters!==void 0?e.parameters:e.args,o=e.status,a=o==="inProgress"||o==="executing"||o==="complete"?o:Tf(o);return{name:e.name,toolCallId:e.toolCallId,parameters:n,status:a,result:e.result}}function _o(e){try{return JSON.stringify(e,null,2)}catch(n){console.warn("[CopilotKit] Failed to JSON.stringify tool-call payload for default renderer; falling back to String():",n);try{return String(e)}catch(o){return console.warn("[CopilotKit] safeStringifyForPre: value could not be stringified:",o),"[unserializable]"}}}const xf=t.defineComponent({props:{name:{type:String,required:!0},toolCallId:{type:String,required:!0},parameters:{type:null,required:!1,default:void 0},status:{type:String,required:!0},result:{type:null,required:!1,default:void 0}},setup(e){const n=t.ref(!1);return()=>{const o=e.status==="inProgress"||e.status==="executing",a=e.status==="complete",r=o?"Running":a?"Done":e.status;return t.h("div",{"data-testid":"copilot-tool-render","data-tool-name":e.name,"data-tool-call-id":e.toolCallId,"data-status":e.status,"data-args":$o(e.parameters),"data-result":$o(e.result),style:{marginTop:"8px",paddingBottom:"8px"}},[t.h("div",{style:{borderRadius:"12px",border:"1px solid #e4e4e7",backgroundColor:"#fafafa",padding:"14px 16px"}},[t.h("button",{type:"button","aria-expanded":String(n.value),onClick:()=>{n.value=!n.value},style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px",cursor:"pointer",border:"none",padding:0,margin:0,background:"transparent",textAlign:"left"}},[t.h("span",{"data-testid":"copilot-tool-render-name",style:{fontWeight:"600"}},e.name),t.h("span",{"data-testid":"copilot-tool-render-status"},r)]),n.value?t.h("div",{style:{marginTop:"12px"}},[t.h("div","Arguments"),t.h("pre",_o(e.parameters??{})),e.result!==void 0?t.h("div",[t.h("div","Result"),t.h("pre",typeof e.result=="string"?e.result:_o(e.result))]):null]):null])])}}});function $o(e){if(e==null)return"";if(typeof e=="string")return e;try{return JSON.stringify(e)}catch(n){console.warn("[CopilotKit] Failed to JSON.stringify tool-call payload for data-* attribute; falling back to String():",n);try{return String(e)}catch(o){return console.warn("[CopilotKit] safeStringifyForAttr: value could not be stringified:",o),""}}}function If(e,n){const o=e?.render;let a;if(typeof o=="function"){const r=o;a=(s=>{const i=dn(s);return r(i)})}else if(o){const r=o;a=(s=>{const i=dn(s);return t.h(r,{name:i.name,toolCallId:i.toolCallId,parameters:i.parameters,status:i.status,result:i.result})})}else a=(r=>{const s=dn(r);return t.h(xf,{name:s.name,toolCallId:s.toolCallId,parameters:s.parameters,status:s.status,result:s.result})});bs({name:"*",render:a},n)}function Ef(e,n){const{copilotkit:o}=Ve(),a=t.ref(null),r=t.ref(null),s=t.ref(null),i=async p=>{a.value&&(s.value?.(),s.value=null,a.value(p),a.value=null,r.value=null)},u={...e,type:"human-in-the-loop",handler:async(p,g)=>{const h=g?.signal;return new Promise((d,f)=>{if(h?.aborted){f(new Error("Human-in-the-loop interaction aborted"));return}if(a.value=d,r.value=f,h){const C=()=>{s.value=null,a.value=null;const b=r.value;r.value=null,b?.(new Error("Human-in-the-loop interaction aborted"))};h.addEventListener("abort",C,{once:!0}),s.value=()=>{h.removeEventListener("abort",C)}}})},render:p=>{const g=e.render;return p.status===ie.ToolCallStatus.InProgress?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:void 0}):p.status===ie.ToolCallStatus.Executing?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:i}):p.status===ie.ToolCallStatus.Complete?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:void 0}):p}};Hn(u,n),t.onScopeDispose(()=>{o.value.removeHookRenderToolCall(e.name,e.agentId)})}function Rf(e){return"instructions"in e}function Af(e){return e.map(n=>({...n,isLoading:n.isLoading??!1}))}function _f(e,n){const{copilotkit:o}=Ve(),a=Re(),r=n??[],s=t.computed(()=>a.value?.agentId??G.DEFAULT_AGENT_ID),i=t.computed(()=>e?e.consumerAgentId:void 0),l=t.computed(()=>{if(!e||e.available==="disabled")return null;if(Rf(e))return{...e};const b=Af(e.suggestions);return{...e,suggestions:b}}),c=t.computed(()=>l.value?JSON.stringify(l.value):null),u=t.computed(()=>{if(!l.value)return s.value;const b=l.value.consumerAgentId;return!b||b==="*"?s.value:b}),p=t.computed(()=>i.value===void 0||i.value==="*"),g=t.ref(!1),h=t.ref(null),d=t.ref(null),f=()=>{if(!g.value||!p.value)return;if(Object.values(o.value.agents??{}).some(k=>!!k.agentId&&k.isRunning)){h.value=setTimeout(()=>{h.value=null,f()},0);return}g.value=!1,C()},C=()=>{if(l.value){if(p.value){let b=!1;const k=Object.values(o.value.agents??{});for(const m of k){const v=m.agentId;v&&(m.isRunning?b=!0:o.value.reloadSuggestions(v))}g.value=b,b&&h.value===null&&(h.value=setTimeout(()=>{h.value=null,f()},0));return}u.value&&o.value.reloadSuggestions(u.value)}};t.watch([()=>o.value,c],([b,k],m,v)=>{if(!k||!l.value)return;const y=o.value,x=l.value,S=y.addSuggestionsConfig(x);C(),v(()=>y.removeSuggestionsConfig(S))},{immediate:!0}),t.watch([l,c],([b,k])=>{if(!b){d.value=null;return}k&&d.value===k||(k&&(d.value=k),C())},{immediate:!1}),t.watch([l,()=>r.length,...r],([b])=>{!b||r.length===0||C()},{immediate:!0}),t.watch([()=>o.value,g],(b,k,m)=>{m(()=>{h.value!==null&&(clearTimeout(h.value),h.value=null)})},{immediate:!0}),t.watch([()=>o.value,p],([b,k],m,v)=>{if(!k)return;const y=Object.values(b.agents??{}).filter(x=>!!x).map(x=>x.subscribe({onRunStartedEvent:f,onRunFinishedEvent:f,onRunFinalized:f,onRunFailed:f,onRunErrorEvent:f}));v(()=>{for(const x of y)x.unsubscribe()})},{immediate:!0})}const ks="on_interrupt";function $f(e){return(typeof e=="object"||typeof e=="function")&&e!==null&&typeof Reflect.get(e,"then")=="function"}function Mf(e){return e instanceof Promise?e:new Promise((n,o)=>{try{e.then(n,o)}catch(a){o(a)}})}function pn(e){return e.kind==="legacy"?e.event:{name:ks,value:e.interrupts[0]}}function Nf(e={}){const{copilotkit:n}=Ve(),{agent:o}=rn({agentId:e.agentId}),a=t.shallowRef(null),r=t.shallowRef(null),s={};t.watch(o,(d,f,C)=>{if(!d){a.value=null,r.value=null;return}let b=null,k=null;const m=d.subscribe({onCustomEvent:({event:v})=>{v.name===ks&&(b={name:v.name,value:v.value})},onRunFinishedEvent:v=>{v.outcome==="interrupt"&&(k=v.interrupts)},onRunStartedEvent:()=>{b=null,k=null;for(const v of Object.keys(s))delete s[v];a.value=null},onRunFinalized:()=>{k&&k.length>0?a.value={kind:"standard",interrupts:k}:b&&(a.value={kind:"legacy",event:b}),b=null,k=null},onRunFailed:()=>{b=null,k=null;for(const v of Object.keys(s))delete s[v];a.value=null}});C(()=>m.unsubscribe())},{immediate:!0});const i=async d=>{if(!d.every(m=>s[m.id]))return;const C=d.find(m=>Wt.isInterruptExpired(m));if(C){console.error(`[CopilotKit] useInterrupt: interrupt ${C.id} expired at ${C.expiresAt}; not resuming.`);for(const m of Object.keys(s))delete s[m];a.value=null;return}const b=Wt.buildResumeArray(d,s);for(const m of Object.keys(s))delete s[m];const k=o.value;if(k)try{return await n.value.runAgent({agent:k,resume:b})}catch(m){throw console.error("[CopilotKit] useInterrupt resolve: runAgent rejected; clearing pending + rethrowing",m),a.value=null,m}},l=async(d,f)=>{const C=a.value;if(!C)return;const b=o.value;if(!b)return;if(C.kind==="legacy"){const m=C.event.value;try{return await n.value.runAgent({agent:b,forwardedProps:{command:{resume:d,interruptEvent:m}}})}catch(v){throw console.error("[CopilotKit] useInterrupt resolve: runAgent rejected; clearing pending + rethrowing",v),a.value=null,v}}C.interrupts.length>1&&f===void 0&&console.warn(`[CopilotKit] useInterrupt: resolve()/cancel() called without an interruptId while ${C.interrupts.length} interrupts are open; defaulting to the first. Pass an interruptId to address a specific interrupt.`);const k=f??C.interrupts[0]?.id;if(k)return s[k]={status:"resolved",payload:d},i(C.interrupts)},c=async d=>{const f=a.value;if(!f)return;if(f.kind==="legacy"){console.warn("[CopilotKit] useInterrupt: cancel() is not supported for legacy on_interrupt interrupts; dismissing."),a.value=null;return}f.interrupts.length>1&&d===void 0&&console.warn(`[CopilotKit] useInterrupt: resolve()/cancel() called without an interruptId while ${f.interrupts.length} interrupts are open; defaulting to the first. Pass an interruptId to address a specific interrupt.`);const C=d??f.interrupts[0]?.id;if(C)return s[C]={status:"cancelled"},i(f.interrupts)},u=l,p=c;t.watch(a,(d,f,C)=>{if(!d){r.value=null;return}const b=pn(d);if(e.enabled&&!e.enabled(b)){r.value=null;return}const k=e.handler;if(!k){r.value=null;return}let m=!1;const v=k({event:b,interrupt:d.kind==="standard"?d.interrupts[0]??null:null,interrupts:d.kind==="standard"?d.interrupts:[],resolve:l,cancel:c});$f(v)?Mf(v).then(y=>{m||(r.value=y)}).catch(y=>{m||(console.error("[CopilotKit] useInterrupt handler failed:",y),r.value=null)}):r.value=v,C(()=>{m=!0})},{immediate:!0});const g=t.computed(()=>a.value?pn(a.value):null),h=t.computed(()=>{const d=a.value;if(!d)return null;const f=pn(d);return e.enabled&&!e.enabled(f)?null:{event:f,interrupt:d.kind==="standard"?d.interrupts[0]??null:null,interrupts:d.kind==="standard"?d.interrupts:[],result:r.value,resolve:l,cancel:c}});return t.watch([()=>n.value,h,()=>e.renderInChat!==!1],([d,f,C],b,k)=>{if(!C)return;d.setInterruptState(f);const m=f;k(()=>{d.interruptState===m&&d.setInterruptState(null)})},{immediate:!0}),t.onScopeDispose(()=>{const d=n.value;e.renderInChat!==!1&&d.interruptState===h.value&&d.setInterruptState(null)}),{interrupt:g,result:r,hasInterrupt:t.computed(()=>h.value!==null),resolve:l,resolveInterrupt:u,cancel:c,cancelInterrupt:p,slotProps:h}}function Of(e){const{agent:n}=rn({agentId:e});return t.computed(()=>{const o=n.value;if(o&&"capabilities"in o)return o.capabilities})}function zf(){const{copilotkit:e}=Ve(),n=Re();return function(a){const r=n.value;if(!r)return null;const s=r.agentId||G.DEFAULT_AGENT_ID,{threadId:i}=r,l=e.value,c=[...l.renderCustomMessages].filter(x=>x.agentId===void 0||x.agentId===s).sort((x,S)=>{const A=x.agentId!==void 0,T=S.agentId!==void 0;return A===T?0:A?-1:1});if(!c.length)return null;const{message:u,position:p}=a,g=l.getRunIdForMessage(s,i,u.id)??l.getRunIdsForThread(s,i).slice(-1)[0],h=g??`missing-run-id:${u.id}`,d=l.getAgent(s);if(!d)return null;const f=g?d.messages.filter(x=>l.getRunIdForMessage(s,i,x.id)===g).map(x=>x.id):[u.id],C=d.messages.findIndex(x=>x.id===u.id);C<0&&console.warn(`[CopilotKit] useRenderCustomMessages: message "${u.id}" not found in agent "${s}" messages`);const b=Math.max(0,C),k=g?Math.max(f.indexOf(u.id),0):0,m=g?f.length:1,v=g?l.getStateByRun(s,i,g):void 0,y={message:u,position:p,runId:h,messageIndex:b,messageIndexInRun:k,numberOfMessagesInRun:m,agentId:s,stateSnapshot:v};for(const x of c)if(x.render)return{renderer:x.render,props:y};return null}}function Bf(){const{copilotkit:e}=Ve(),n=Re(),o=t.computed(()=>n.value?.agentId??G.DEFAULT_AGENT_ID),a=t.computed(()=>[...e.value.renderActivityMessages]);function r(i){const l=a.value;if(!l.length)return null;const c=l.filter(u=>u.activityType===i);return c.find(u=>u.agentId===o.value)??c.find(u=>u.agentId===void 0)??l.find(u=>u.activityType==="*")??null}function s(i){const l=r(i.activityType);if(!l)return null;const c=l.content.safeParse(i.content);if(!c.success)return console.warn(`Failed to parse content for activity message '${i.activityType}':`,c.error),null;const u=e.value.getAgent(o.value);return{renderer:l.render,props:{activityType:i.activityType,content:c.data,message:i,agent:u}}}return{renderActivityMessage:s,findRenderer:r}}exports.A2UIActivityContentSchema=Nu;exports.A2UISurfaceActivityType=Mu;exports.ActivityDeltaEventSchema=La;exports.ActivityMessageSchema=Fa;exports.ActivitySnapshotEventSchema=Pa;exports.AddOperationSchema=wa;exports.AgentCapabilitiesSchema=xu;exports.AssistantMessageSchema=Oa;exports.AttributableSchema=Iu;exports.AudioPartSchema=va;exports.BaseEventSchema=Eu;exports.BaseMessageSchema=Ru;exports.ContentPartSchema=tn;exports.ContextSchema=Za;exports.CopilotChat=hf;exports.CopilotChatDefaultLabels=ot;exports.CopilotChatToggleButton=gf;exports.CopilotChatToggleButtonCloseIcon=Ln;exports.CopilotChatToggleButtonOpenIcon=Un;exports.CopilotKitCoreVue=Or;exports.CopilotModalHeader=vf;exports.CopilotPopupView=bf;exports.CopilotSidebarView=kf;exports.CopyOperationSchema=Ia;exports.CustomEventSchema=ja;exports.DataSourceSchema=ma;exports.DeveloperMessageSchema=_a;exports.DocumentPartSchema=ka;exports.EventSchema=Cu;exports.EventTypeSchema=oa;exports.ExecutionCapabilitiesSchema=Rr;exports.FileSourceSchema=ha;exports.FunctionCallSchema=Ma;exports.GenerateSandboxedUiArgsSchema=Ur;exports.HumanInTheLoopCapabilitiesSchema=Ar;exports.IdentityCapabilitiesSchema=br;exports.ImagePartSchema=ga;exports.InterruptSchema=qa;exports.JsonPatchOperationSchema=Ra;exports.JsonPatchSchema=$n;exports.JsonPointerSchema=it;exports.LicenseContextKey=Fn;exports.MCPAppsActivityRenderer=Nr;exports.MessageSchema=Mn;exports.MessagesSnapshotEventSchema=Va;exports.MetadataSchema=te;exports.MoveOperationSchema=xa;exports.MultiAgentCapabilitiesSchema=Cr;exports.MultimodalCapabilitiesSchema=Er;exports.MultimodalInputCapabilitiesSchema=xr;exports.MultimodalOutputCapabilitiesSchema=Ir;exports.OpenGenerativeUIActivityRenderer=Zr;exports.OpenGenerativeUIActivityType=Pr;exports.OpenGenerativeUIContentSchema=Lr;exports.OpenGenerativeUIRenderer=jr;exports.OpenGenerativeUIToolRenderer=Hr;exports.OptionalMetadataSchema=Au;exports.OutputCapabilitiesSchema=Sr;exports.PartSourceSchema=Nt;exports.RawEventSchema=Ua;exports.ReasoningCapabilitiesSchema=Tr;exports.ReasoningEncryptedValueEventSchema=ur;exports.ReasoningEncryptedValueSubtypeSchema=cr;exports.ReasoningEndEventSchema=lr;exports.ReasoningMessageChunkEventSchema=ir;exports.ReasoningMessageContentEventSchema=rr;exports.ReasoningMessageEndEventSchema=sr;exports.ReasoningMessageSchema=Da;exports.ReasoningMessageStartEventSchema=ar;exports.ReasoningStartEventSchema=or;exports.RemoveOperationSchema=Ca;exports.ReplaceOperationSchema=Ta;exports.ResumeEntrySchema=Ha;exports.RoleSchema=Tu;exports.RunAgentInputSchema=Ga;exports.RunErrorEventSchema=er;exports.RunFinishedCancelledOutcomeSchema=Xa;exports.RunFinishedEventSchema=Qa;exports.RunFinishedInterruptOutcomeSchema=Ja;exports.RunFinishedOutcomeSchema=Ya;exports.RunFinishedSuccessOutcomeSchema=Ka;exports.RunStartedEventSchema=Wa;exports.StateCapabilitiesSchema=wr;exports.StateDeltaEventSchema=Aa;exports.StateSchema=_n;exports.StateSnapshotEventSchema=Sa;exports.StepFinishedEventSchema=nr;exports.StepStartedEventSchema=tr;exports.SubagentErrorEventSchema=gr;exports.SubagentFinishedEventSchema=hr;exports.SubagentFinishedOutcomeSchema=fr;exports.SubagentFinishedSuccessOutcomeSchema=pr;exports.SubagentFinishedSuspendedOutcomeSchema=mr;exports.SubagentInfoSchema=vr;exports.SubagentRunIdSchema=le;exports.SubagentStartedEventSchema=dr;exports.SystemMessageSchema=$a;exports.TestOperationSchema=Ea;exports.TextMessageChunkEventSchema=ia;exports.TextMessageContentEventSchema=ra;exports.TextMessageEndEventSchema=sa;exports.TextMessageRoleSchema=An;exports.TextMessageStartEventSchema=aa;exports.TextPartSchema=pa;exports.TokenUsageSchema=On;exports.ToolCallArgsEventSchema=ca;exports.ToolCallChunkEventSchema=da;exports.ToolCallEndEventSchema=ua;exports.ToolCallResultEventSchema=ya;exports.ToolCallSchema=Na;exports.ToolCallStartEventSchema=la;exports.ToolMessageSchema=Ba;exports.ToolSchema=Nn;exports.ToolsCapabilitiesSchema=yr;exports.TransportCapabilitiesSchema=kr;exports.UrlSourceSchema=fa;exports.UseAgentUpdate=ns;exports.UserMessageSchema=za;exports.VideoPartSchema=ba;exports._sfc_main=Jr;exports._sfc_main$1=es;exports._sfc_main$10=At;exports._sfc_main$11=Yr;exports._sfc_main$12=ls;exports._sfc_main$13=Bt;exports._sfc_main$14=_r;exports._sfc_main$15=wd;exports._sfc_main$16=mf;exports._sfc_main$17=ff;exports._sfc_main$18=Bm;exports._sfc_main$2=yn;exports._sfc_main$3=Om;exports._sfc_main$4=ts;exports._sfc_main$5=an;exports._sfc_main$6=Rt;exports._sfc_main$7=cs;exports._sfc_main$8=is;exports._sfc_main$9=us;exports.createA2UIMessageRenderer=zr;exports.createDefaultLicenseRef=Gr;exports.defineToolCallRenderer=Jt;exports.extractCompleteStyles=Fr;exports.getOperationSurfaceId=bn;exports.processPartialHtml=Dr;exports.useAgent=rn;exports.useAgentContext=yf;exports.useAttachments=as;exports.useCapabilities=Of;exports.useComponent=wf;exports.useConfigureSuggestions=_f;exports.useCopilotChatConfiguration=Re;exports.useCopilotKit=Ve;exports.useDefaultRenderTool=If;exports.useFrontendTool=Hn;exports.useHumanInTheLoop=Ef;exports.useInterrupt=Nf;exports.useKatexStyles=Qr;exports.useKeyboardHeight=rs;exports.useLicenseContext=zt;exports.useRenderActivityMessage=Bf;exports.useRenderCustomMessages=zf;exports.useRenderTool=bs;exports.useSandboxFunctions=Vr;exports.useSuggestions=os;exports.useThreads=ds;exports.vueBasicCatalog=yt;
70
+ //# sourceMappingURL=use-render-activity-message-DDzIvzlJ.cjs.map