@copilotkit/vue 1.78.0 → 1.79.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.mjs +2 -2
  3. package/dist/use-render-activity-message-DxYudLWg.cjs +70 -0
  4. package/dist/use-render-activity-message-DxYudLWg.cjs.map +1 -0
  5. package/dist/{use-render-activity-message-B9MOLfR_.js → use-render-activity-message-sBoXH1Ew.js} +2359 -2373
  6. package/dist/use-render-activity-message-sBoXH1Ew.js.map +1 -0
  7. package/dist/v2/hooks/use-agent.d.ts.map +1 -1
  8. package/dist/v2/hooks/use-threads.d.ts.map +1 -1
  9. package/dist/v2/index.cjs +1 -1
  10. package/dist/v2/index.mjs +1 -1
  11. package/dist/v2/providers/CopilotKitProvider.types.d.ts +7 -2
  12. package/dist/v2/providers/CopilotKitProvider.types.d.ts.map +1 -1
  13. package/dist/v2/providers/CopilotKitProvider.vue.d.ts +2 -1
  14. package/dist/v2/providers/CopilotKitProvider.vue.d.ts.map +1 -1
  15. package/package.json +6 -6
  16. package/src/v2/hooks/__tests__/use-agent-stability.test.ts +11 -0
  17. package/src/v2/hooks/__tests__/use-threads.test.ts +27 -6
  18. package/src/v2/hooks/use-agent.ts +28 -22
  19. package/src/v2/hooks/use-threads.ts +9 -8
  20. package/src/v2/lib/__tests__/transcription-client.test.ts +2 -0
  21. package/src/v2/lib/transcription-client.ts +1 -1
  22. package/src/v2/providers/CopilotKitProvider.types.ts +7 -1
  23. package/src/v2/providers/CopilotKitProvider.vue +62 -12
  24. package/src/v2/providers/__tests__/CopilotKitProvider.headersAtSendTime.test.ts +598 -0
  25. package/src/v2/providers/__tests__/CopilotKitProvider.test.ts +8 -3
  26. package/dist/use-render-activity-message-B9MOLfR_.js.map +0 -1
  27. package/dist/use-render-activity-message-eN0gdzOa.cjs +0 -70
  28. package/dist/use-render-activity-message-eN0gdzOa.cjs.map +0 -1
@@ -0,0 +1,70 @@
1
+ "use strict";var ys=Object.create;var Gn=Object.defineProperty;var Ss=Object.getOwnPropertyDescriptor;var ws=Object.getOwnPropertyNames;var Cs=Object.getPrototypeOf,Ts=Object.prototype.hasOwnProperty;var xs=(e,n,o,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of ws(n))!Ts.call(e,r)&&r!==o&&Gn(e,r,{get:()=>n[r],enumerable:!(a=Ss(n,r))||a.enumerable});return e};var Vt=(e,n,o)=>(o=e!=null?ys(Cs(e)):{},xs(n||!e||!e.__esModule?Gn(o,"default",{value:e,enumerable:!0}):o,e));const t=require("vue"),H=require("@copilotkit/shared"),he=require("zod"),re=require("@copilotkit/core"),Sn=require("zod-to-json-schema"),Xt=require("@a2ui/web_core/v0_9"),Wn=require("@copilotkit/mcp-apps-renderer/activity"),Ne=require("@a2ui/web_core/v0_9/basic_catalog"),Wt=require("@ag-ui/client"),me=require("lucide-vue-next"),$o=require("streamdown-vue"),Mo=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 R(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 It extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}const No={};function mt(e){return No}function Is(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 Es(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 Rs(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 ve(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 Tt(e){return JSON.stringify(e)}const Oo=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function Kt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const As=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 ht(e,n,o){const a=new e._zod.constr(n??e._zod.def);return(!n||o?.parent)&&(a._zod.parent=e),a}function X(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 $s(e){return Object.keys(e).filter(n=>e[n]._zod.optin==="optional"&&e[n]._zod.optout==="optional")}const Ms={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 Ns(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 ht(e,{...e._zod.def,shape:o,checks:[]})}function Os(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 ht(e,{...e._zod.def,shape:o,checks:[]})}function zs(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 ht(e,o)}function Bs(e,n){return ht(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 Fs(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 ht(n,{...n._zod.def,shape:r,checks:[]})}function Ds(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 ht(n,{...n._zod.def,shape:r,checks:[]})}function xt(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 ft(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 Et(...e){const[n,o,a]=e;return typeof n=="string"?{message:n,code:"custom",input:o,inst:a}:{...n}}const zo=(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,Es,2)},enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Bo=R("$ZodError",zo),Fo=R("$ZodError",zo,{Parent:Error});function Vs(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 Ps(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 Ls=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 It;if(i.issues.length){const l=new(r?.Err??e)(i.issues.map(c=>ft(c,s,mt())));throw Oo(l,r?.callee),l}return i.value},Us=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=>ft(c,s,mt())));throw Oo(l,r?.callee),l}return i.value},Do=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 It;return s.issues.length?{success:!1,error:new(e??Bo)(s.issues.map(i=>ft(i,r,mt())))}:{success:!0,data:s.value}},js=Do(Fo),Vo=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=>ft(i,r,mt())))}:{success:!0,data:s.value}},Zs=Vo(Fo),Hs=/^[cC][^\s-]{8,}$/,Gs=/^[0-9a-z]+$/,Ws=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ks=/^[0-9a-vA-V]{20}$/,qs=/^[A-Za-z0-9]{27}$/,Js=/^[a-zA-Z0-9_-]{21}$/,Xs=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ys=/^([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)$/,Qs=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ei="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ti(){return new RegExp(ei,"u")}const ni=/^(?:(?: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])$/,oi=/^(([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})$/,ai=/^((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])$/,ri=/^(([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])$/,si=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Po=/^[A-Za-z0-9_-]*$/,ii=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,li=/^\+(?:[0-9]){6,14}[0-9]$/,Lo="(?:(?:\\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])))",ci=new RegExp(`^${Lo}$`);function Uo(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 ui(e){return new RegExp(`^${Uo(e)}$`)}function di(e){const n=Uo({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(`^${Lo}T(?:${a})$`)}const pi=e=>{const n=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${n}$`)},mi=/^\d+$/,fi=/^-?\d+(?:\.\d+)?/i,hi=/true|false/i,gi=/^[^A-Z]*$/,vi=/^[^a-z]*$/,qe=R("$ZodCheck",(e,n)=>{var o;e._zod??(e._zod={}),e._zod.def=n,(o=e._zod).onattach??(o.onattach=[])}),jo={number:"number",bigint:"bigint",object:"date"},Zo=R("$ZodCheckLessThan",(e,n)=>{qe.init(e,n);const o=jo[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})}}),Ho=R("$ZodCheckGreaterThan",(e,n)=>{qe.init(e,n);const o=jo[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})}}),bi=R("$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):Rs(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})}}),ki=R("$ZodCheckNumberFormat",(e,n)=>{qe.init(e,n),n.format=n.format||"float64";const o=n.format?.includes("int"),a=o?"int":"number",[r,s]=Ms[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=mi)}),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})}}),yi=R("$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})}}),Si=R("$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})}}),wi=R("$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=R("$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=()=>{})}),Ci=R("$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})}}),Ti=R("$ZodCheckLowerCase",(e,n)=>{n.pattern??(n.pattern=gi),Yt.init(e,n)}),xi=R("$ZodCheckUpperCase",(e,n)=>{n.pattern??(n.pattern=vi),Yt.init(e,n)}),Ii=R("$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})}}),Ei=R("$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})}}),Ri=R("$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})}}),Ai=R("$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
+ `).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
+ `))}}const $i={major:4,minor:0,patch:0},ke=R("$ZodType",(e,n)=>{var o;e??(e={}),e._zod.def=n,e._zod.bag=e._zod.bag||{},e._zod.version=$i;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=xt(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 It;if(u||h instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await h,s.issues.length!==g&&(c||(c=xt(s,g)))});else{if(s.issues.length===g)continue;c||(c=xt(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 It;return l.then(c=>r(c,a,i))}return r(l,a,i)}}e["~standard"]={validate:r=>{try{const s=js(e,r);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Zs(e,r).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Rn=R("$ZodString",(e,n)=>{ke.init(e,n),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??pi(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}}),ye=R("$ZodStringFormat",(e,n)=>{Yt.init(e,n),Rn.init(e,n)}),Mi=R("$ZodGUID",(e,n)=>{n.pattern??(n.pattern=Ys),ye.init(e,n)}),Ni=R("$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());ye.init(e,n)}),Oi=R("$ZodEmail",(e,n)=>{n.pattern??(n.pattern=Qs),ye.init(e,n)}),zi=R("$ZodURL",(e,n)=>{ye.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:ii.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})}}}),Bi=R("$ZodEmoji",(e,n)=>{n.pattern??(n.pattern=ti()),ye.init(e,n)}),Fi=R("$ZodNanoID",(e,n)=>{n.pattern??(n.pattern=Js),ye.init(e,n)}),Di=R("$ZodCUID",(e,n)=>{n.pattern??(n.pattern=Hs),ye.init(e,n)}),Vi=R("$ZodCUID2",(e,n)=>{n.pattern??(n.pattern=Gs),ye.init(e,n)}),Pi=R("$ZodULID",(e,n)=>{n.pattern??(n.pattern=Ws),ye.init(e,n)}),Li=R("$ZodXID",(e,n)=>{n.pattern??(n.pattern=Ks),ye.init(e,n)}),Ui=R("$ZodKSUID",(e,n)=>{n.pattern??(n.pattern=qs),ye.init(e,n)}),ji=R("$ZodISODateTime",(e,n)=>{n.pattern??(n.pattern=di(n)),ye.init(e,n)}),Zi=R("$ZodISODate",(e,n)=>{n.pattern??(n.pattern=ci),ye.init(e,n)}),Hi=R("$ZodISOTime",(e,n)=>{n.pattern??(n.pattern=ui(n)),ye.init(e,n)}),Gi=R("$ZodISODuration",(e,n)=>{n.pattern??(n.pattern=Xs),ye.init(e,n)}),Wi=R("$ZodIPv4",(e,n)=>{n.pattern??(n.pattern=ni),ye.init(e,n),e._zod.onattach.push(o=>{const a=o._zod.bag;a.format="ipv4"})}),Ki=R("$ZodIPv6",(e,n)=>{n.pattern??(n.pattern=oi),ye.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})}}}),qi=R("$ZodCIDRv4",(e,n)=>{n.pattern??(n.pattern=ai),ye.init(e,n)}),Ji=R("$ZodCIDRv6",(e,n)=>{n.pattern??(n.pattern=ri),ye.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 Go(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const Xi=R("$ZodBase64",(e,n)=>{n.pattern??(n.pattern=si),ye.init(e,n),e._zod.onattach.push(o=>{o._zod.bag.contentEncoding="base64"}),e._zod.check=o=>{Go(o.value)||o.issues.push({code:"invalid_format",format:"base64",input:o.value,inst:e,continue:!n.abort})}});function Yi(e){if(!Po.test(e))return!1;const n=e.replace(/[-_]/g,a=>a==="-"?"+":"/"),o=n.padEnd(Math.ceil(n.length/4)*4,"=");return Go(o)}const Qi=R("$ZodBase64URL",(e,n)=>{n.pattern??(n.pattern=Po),ye.init(e,n),e._zod.onattach.push(o=>{o._zod.bag.contentEncoding="base64url"}),e._zod.check=o=>{Yi(o.value)||o.issues.push({code:"invalid_format",format:"base64url",input:o.value,inst:e,continue:!n.abort})}}),el=R("$ZodE164",(e,n)=>{n.pattern??(n.pattern=li),ye.init(e,n)});function tl(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 nl=R("$ZodJWT",(e,n)=>{ye.init(e,n),e._zod.check=o=>{tl(o.value,n.alg)||o.issues.push({code:"invalid_format",format:"jwt",input:o.value,inst:e,continue:!n.abort})}}),Wo=R("$ZodNumber",(e,n)=>{ke.init(e,n),e._zod.pattern=e._zod.bag.pattern??fi,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}}),ol=R("$ZodNumber",(e,n)=>{ki.init(e,n),Wo.init(e,n)}),al=R("$ZodBoolean",(e,n)=>{ke.init(e,n),e._zod.pattern=hi,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}}),rl=R("$ZodAny",(e,n)=>{ke.init(e,n),e._zod.parse=o=>o}),sl=R("$ZodUnknown",(e,n)=>{ke.init(e,n),e._zod.parse=o=>o}),il=R("$ZodNever",(e,n)=>{ke.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 ll=R("$ZodArray",(e,n)=>{ke.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 cl=R("$ZodObject",(e,n)=>{ke.init(e,n);const o=wn(()=>{const g=Object.keys(n.shape);for(const d of g)if(!(n.shape[d]instanceof ke))throw new Error(`Invalid element at key "${d}": expected a Zod schema`);const h=$s(n.shape);return{shape:n.shape,keys:g,keySet:new Set(g),numKeys:g.length,optionalKeys:new Set(h)}});ve(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=Tt(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=Tt(m);h.write(`
4
+ if (${v}.issues.length) {
5
+ if (input[${y}] === undefined) {
6
+ if (${y} in input) {
7
+ newResult[${y}] = undefined;
8
+ }
9
+ } else {
10
+ payload.issues = payload.issues.concat(
11
+ ${v}.issues.map((iss) => ({
12
+ ...iss,
13
+ path: iss.path ? [${y}, ...iss.path] : [${y}],
14
+ }))
15
+ );
16
+ }
17
+ } else if (${v}.value === undefined) {
18
+ if (${y} in input) newResult[${y}] = undefined;
19
+ } else {
20
+ newResult[${y}] = ${v}.value;
21
+ }
22
+ `)}else{const v=C[m];h.write(`const ${v} = ${f(m)};`),h.write(`
23
+ if (${v}.issues.length) payload.issues = payload.issues.concat(${v}.issues.map(iss => ({
24
+ ...iss,
25
+ path: iss.path ? [${Tt(m)}, ...iss.path] : [${Tt(m)}]
26
+ })));`),h.write(`newResult[${Tt(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=!No.jitless,c=i&&As.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=>ft(s,a,mt())))}),n}const Ko=R("$ZodUnion",(e,n)=>{ke.init(e,n),ve(e._zod,"optin",()=>n.options.some(o=>o._zod.optin==="optional")?"optional":void 0),ve(e._zod,"optout",()=>n.options.some(o=>o._zod.optout==="optional")?"optional":void 0),ve(e._zod,"values",()=>{if(n.options.every(o=>o._zod.values))return new Set(n.options.flatMap(o=>Array.from(o._zod.values)))}),ve(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)}}),ul=R("$ZodDiscriminatedUnion",(e,n)=>{Ko.init(e,n);const o=e._zod.parse;ve(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)}}),dl=R("$ZodIntersection",(e,n)=>{ke.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),xt(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 pl=R("$ZodEnum",(e,n)=>{ke.init(e,n);const o=Is(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}}),ml=R("$ZodLiteral",(e,n)=>{ke.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}}),fl=R("$ZodTransform",(e,n)=>{ke.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 It;return o.value=r,o}}),hl=R("$ZodOptional",(e,n)=>{ke.init(e,n),e._zod.optin="optional",e._zod.optout="optional",ve(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,void 0]):void 0),ve(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)}),gl=R("$ZodNullable",(e,n)=>{ke.init(e,n),ve(e._zod,"optin",()=>n.innerType._zod.optin),ve(e._zod,"optout",()=>n.innerType._zod.optout),ve(e._zod,"pattern",()=>{const o=n.innerType._zod.pattern;return o?new RegExp(`^(${Tn(o.source)}|null)$`):void 0}),ve(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)}),vl=R("$ZodDefault",(e,n)=>{ke.init(e,n),e._zod.optin="optional",ve(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 bl=R("$ZodPrefault",(e,n)=>{ke.init(e,n),e._zod.optin="optional",ve(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))}),kl=R("$ZodNonOptional",(e,n)=>{ke.init(e,n),ve(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 yl=R("$ZodCatch",(e,n)=>{ke.init(e,n),e._zod.optin="optional",ve(e._zod,"optout",()=>n.innerType._zod.optout),ve(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=>ft(i,a,mt()))},input:o.value}),o.issues=[]),o)):(o.value=r.value,r.issues.length&&(o.value=n.catchValue({...o,error:{issues:r.issues.map(s=>ft(s,a,mt()))},input:o.value}),o.issues=[]),o)}}),Sl=R("$ZodPipe",(e,n)=>{ke.init(e,n),ve(e._zod,"values",()=>n.in._zod.values),ve(e._zod,"optin",()=>n.in._zod.optin),ve(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 xt(e)?e:n.out._zod.run({value:e.value,issues:e.issues},o)}const wl=R("$ZodReadonly",(e,n)=>{ke.init(e,n),ve(e._zod,"propValues",()=>n.innerType._zod.propValues),ve(e._zod,"values",()=>n.innerType._zod.values),ve(e._zod,"optin",()=>n.innerType._zod.optin),ve(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 Cl=R("$ZodCustom",(e,n)=>{qe.init(e,n),ke.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(Et(r))}}class Tl{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 xl(){return new Tl}const Ut=xl();function Il(e,n){return new e({type:"string",...X(n)})}function El(e,n){return new e({type:"string",format:"email",check:"string_format",abort:!1,...X(n)})}function ao(e,n){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...X(n)})}function Rl(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...X(n)})}function Al(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...X(n)})}function _l(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...X(n)})}function $l(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...X(n)})}function Ml(e,n){return new e({type:"string",format:"url",check:"string_format",abort:!1,...X(n)})}function Nl(e,n){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...X(n)})}function Ol(e,n){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...X(n)})}function zl(e,n){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...X(n)})}function Bl(e,n){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...X(n)})}function Fl(e,n){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...X(n)})}function Dl(e,n){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...X(n)})}function Vl(e,n){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...X(n)})}function Pl(e,n){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...X(n)})}function Ll(e,n){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...X(n)})}function Ul(e,n){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...X(n)})}function jl(e,n){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...X(n)})}function Zl(e,n){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...X(n)})}function Hl(e,n){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...X(n)})}function Gl(e,n){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...X(n)})}function Wl(e,n){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...X(n)})}function Kl(e,n){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...X(n)})}function ql(e,n){return new e({type:"string",format:"date",check:"string_format",...X(n)})}function Jl(e,n){return new e({type:"string",format:"time",check:"string_format",precision:null,...X(n)})}function Xl(e,n){return new e({type:"string",format:"duration",check:"string_format",...X(n)})}function Yl(e,n){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...X(n)})}function Ql(e,n){return new e({type:"boolean",...X(n)})}function ec(e){return new e({type:"any"})}function tc(e){return new e({type:"unknown"})}function nc(e,n){return new e({type:"never",...X(n)})}function ro(e,n){return new Zo({check:"less_than",...X(n),value:e,inclusive:!1})}function ln(e,n){return new Zo({check:"less_than",...X(n),value:e,inclusive:!0})}function so(e,n){return new Ho({check:"greater_than",...X(n),value:e,inclusive:!1})}function cn(e,n){return new Ho({check:"greater_than",...X(n),value:e,inclusive:!0})}function io(e,n){return new bi({check:"multiple_of",...X(n),value:e})}function qo(e,n){return new yi({check:"max_length",...X(n),maximum:e})}function qt(e,n){return new Si({check:"min_length",...X(n),minimum:e})}function Jo(e,n){return new wi({check:"length_equals",...X(n),length:e})}function oc(e,n){return new Ci({check:"string_format",format:"regex",...X(n),pattern:e})}function ac(e){return new Ti({check:"string_format",format:"lowercase",...X(e)})}function rc(e){return new xi({check:"string_format",format:"uppercase",...X(e)})}function sc(e,n){return new Ii({check:"string_format",format:"includes",...X(n),includes:e})}function ic(e,n){return new Ei({check:"string_format",format:"starts_with",...X(n),prefix:e})}function lc(e,n){return new Ri({check:"string_format",format:"ends_with",...X(n),suffix:e})}function Mt(e){return new Ai({check:"overwrite",tx:e})}function cc(e){return Mt(n=>n.normalize(e))}function uc(){return Mt(e=>e.trim())}function dc(){return Mt(e=>e.toLowerCase())}function pc(){return Mt(e=>e.toUpperCase())}function mc(e,n,o){return new e({type:"array",element:n,...X(o)})}function fc(e,n,o){const a=X(o);return a.abort??(a.abort=!0),new e({type:"custom",check:"custom",fn:n,...a})}function hc(e,n,o){return new e({type:"custom",check:"custom",fn:n,...X(o)})}const gc=R("ZodISODateTime",(e,n)=>{ji.init(e,n),Ce.init(e,n)});function vc(e){return Kl(gc,e)}const bc=R("ZodISODate",(e,n)=>{Zi.init(e,n),Ce.init(e,n)});function kc(e){return ql(bc,e)}const yc=R("ZodISOTime",(e,n)=>{Hi.init(e,n),Ce.init(e,n)});function Sc(e){return Jl(yc,e)}const wc=R("ZodISODuration",(e,n)=>{Gi.init(e,n),Ce.init(e,n)});function Cc(e){return Xl(wc,e)}const Tc=(e,n)=>{Bo.init(e,n),e.name="ZodError",Object.defineProperties(e,{format:{value:o=>Ps(e,o)},flatten:{value:o=>Vs(e,o)},addIssue:{value:o=>e.issues.push(o)},addIssues:{value:o=>e.issues.push(...o)},isEmpty:{get(){return e.issues.length===0}}})},Qt=R("ZodError",Tc,{Parent:Error}),xc=Ls(Qt),Ic=Us(Qt),Ec=Do(Qt),Rc=Vo(Qt),Ie=R("ZodType",(e,n)=>(ke.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)=>ht(e,o,a),e.brand=()=>e,e.register=((o,a)=>(o.add(e,a),e)),e.parse=(o,a)=>xc(e,o,a,{callee:e.parse}),e.safeParse=(o,a)=>Ec(e,o,a),e.parseAsync=async(o,a)=>Ic(e,o,a,{callee:e.parseAsync}),e.safeParseAsync=async(o,a)=>Rc(e,o,a),e.spa=e.safeParseAsync,e.refine=(o,a)=>e.check(yu(o,a)),e.superRefine=o=>e.check(Su(o)),e.overwrite=o=>e.check(Mt(o)),e.optional=()=>co(e),e.nullable=()=>uo(e),e.nullish=()=>co(uo(e)),e.nonoptional=o=>mu(e,o),e.array=()=>Me(e),e.or=o=>en([e,o]),e.and=o=>au(e,o),e.transform=o=>po(e,iu(o)),e.default=o=>uu(e,o),e.prefault=o=>pu(e,o),e.catch=o=>hu(e,o),e.pipe=o=>po(e,o),e.readonly=()=>bu(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)),Xo=R("_ZodString",(e,n)=>{Rn.init(e,n),Ie.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(oc(...a)),e.includes=(...a)=>e.check(sc(...a)),e.startsWith=(...a)=>e.check(ic(...a)),e.endsWith=(...a)=>e.check(lc(...a)),e.min=(...a)=>e.check(qt(...a)),e.max=(...a)=>e.check(qo(...a)),e.length=(...a)=>e.check(Jo(...a)),e.nonempty=(...a)=>e.check(qt(1,...a)),e.lowercase=a=>e.check(ac(a)),e.uppercase=a=>e.check(rc(a)),e.trim=()=>e.check(uc()),e.normalize=(...a)=>e.check(cc(...a)),e.toLowerCase=()=>e.check(dc()),e.toUpperCase=()=>e.check(pc())}),Ac=R("ZodString",(e,n)=>{Rn.init(e,n),Xo.init(e,n),e.email=o=>e.check(El(_c,o)),e.url=o=>e.check(Ml($c,o)),e.jwt=o=>e.check(Wl(Gc,o)),e.emoji=o=>e.check(Nl(Mc,o)),e.guid=o=>e.check(ao(lo,o)),e.uuid=o=>e.check(Rl(jt,o)),e.uuidv4=o=>e.check(Al(jt,o)),e.uuidv6=o=>e.check(_l(jt,o)),e.uuidv7=o=>e.check($l(jt,o)),e.nanoid=o=>e.check(Ol(Nc,o)),e.guid=o=>e.check(ao(lo,o)),e.cuid=o=>e.check(zl(Oc,o)),e.cuid2=o=>e.check(Bl(zc,o)),e.ulid=o=>e.check(Fl(Bc,o)),e.base64=o=>e.check(Zl(jc,o)),e.base64url=o=>e.check(Hl(Zc,o)),e.xid=o=>e.check(Dl(Fc,o)),e.ksuid=o=>e.check(Vl(Dc,o)),e.ipv4=o=>e.check(Pl(Vc,o)),e.ipv6=o=>e.check(Ll(Pc,o)),e.cidrv4=o=>e.check(Ul(Lc,o)),e.cidrv6=o=>e.check(jl(Uc,o)),e.e164=o=>e.check(Gl(Hc,o)),e.datetime=o=>e.check(vc(o)),e.date=o=>e.check(kc(o)),e.time=o=>e.check(Sc(o)),e.duration=o=>e.check(Cc(o))});function I(e){return Il(Ac,e)}const Ce=R("ZodStringFormat",(e,n)=>{ye.init(e,n),Xo.init(e,n)}),_c=R("ZodEmail",(e,n)=>{Oi.init(e,n),Ce.init(e,n)}),lo=R("ZodGUID",(e,n)=>{Mi.init(e,n),Ce.init(e,n)}),jt=R("ZodUUID",(e,n)=>{Ni.init(e,n),Ce.init(e,n)}),$c=R("ZodURL",(e,n)=>{zi.init(e,n),Ce.init(e,n)}),Mc=R("ZodEmoji",(e,n)=>{Bi.init(e,n),Ce.init(e,n)}),Nc=R("ZodNanoID",(e,n)=>{Fi.init(e,n),Ce.init(e,n)}),Oc=R("ZodCUID",(e,n)=>{Di.init(e,n),Ce.init(e,n)}),zc=R("ZodCUID2",(e,n)=>{Vi.init(e,n),Ce.init(e,n)}),Bc=R("ZodULID",(e,n)=>{Pi.init(e,n),Ce.init(e,n)}),Fc=R("ZodXID",(e,n)=>{Li.init(e,n),Ce.init(e,n)}),Dc=R("ZodKSUID",(e,n)=>{Ui.init(e,n),Ce.init(e,n)}),Vc=R("ZodIPv4",(e,n)=>{Wi.init(e,n),Ce.init(e,n)}),Pc=R("ZodIPv6",(e,n)=>{Ki.init(e,n),Ce.init(e,n)}),Lc=R("ZodCIDRv4",(e,n)=>{qi.init(e,n),Ce.init(e,n)}),Uc=R("ZodCIDRv6",(e,n)=>{Ji.init(e,n),Ce.init(e,n)}),jc=R("ZodBase64",(e,n)=>{Xi.init(e,n),Ce.init(e,n)}),Zc=R("ZodBase64URL",(e,n)=>{Qi.init(e,n),Ce.init(e,n)}),Hc=R("ZodE164",(e,n)=>{el.init(e,n),Ce.init(e,n)}),Gc=R("ZodJWT",(e,n)=>{nl.init(e,n),Ce.init(e,n)}),Wc=R("ZodNumber",(e,n)=>{Wo.init(e,n),Ie.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}),Kc=R("ZodNumberFormat",(e,n)=>{ol.init(e,n),Wc.init(e,n)});function se(e){return Yl(Kc,e)}const qc=R("ZodBoolean",(e,n)=>{al.init(e,n),Ie.init(e,n)});function ue(e){return Ql(qc,e)}const Jc=R("ZodAny",(e,n)=>{rl.init(e,n),Ie.init(e,n)});function Q(){return ec(Jc)}const Xc=R("ZodUnknown",(e,n)=>{sl.init(e,n),Ie.init(e,n)});function hn(){return tc(Xc)}const Yc=R("ZodNever",(e,n)=>{il.init(e,n),Ie.init(e,n)});function Qc(e){return nc(Yc,e)}const eu=R("ZodArray",(e,n)=>{ll.init(e,n),Ie.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(qo(o,a)),e.length=(o,a)=>e.check(Jo(o,a)),e.unwrap=()=>e.element});function Me(e,n){return mc(eu,e,n)}const tu=R("ZodObject",(e,n)=>{cl.init(e,n),Ie.init(e,n),ve(e,"shape",()=>n.shape),e.keyof=()=>wt(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:Qc()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=o=>zs(e,o),e.merge=o=>Bs(e,o),e.pick=o=>Ns(e,o),e.omit=o=>Os(e,o),e.partial=(...o)=>Fs(Qo,e,o[0]),e.required=(...o)=>Ds(ea,e,o[0])});function P(e,n){return new tu({type:"object",get shape(){return xn(this,"shape",{...e}),this.shape},catchall:hn(),...X(n)})}const Yo=R("ZodUnion",(e,n)=>{Ko.init(e,n),Ie.init(e,n),e.options=n.options});function en(e,n){return new Yo({type:"union",options:e,...X(n)})}const nu=R("ZodDiscriminatedUnion",(e,n)=>{Yo.init(e,n),ul.init(e,n)});function gt(e,n,o){return new nu({type:"union",options:n,discriminator:e,...X(o)})}const ou=R("ZodIntersection",(e,n)=>{dl.init(e,n),Ie.init(e,n)});function au(e,n){return new ou({type:"intersection",left:e,right:n})}const gn=R("ZodEnum",(e,n)=>{pl.init(e,n),Ie.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:[],...X(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:[],...X(r),entries:s})}});function wt(e,n){const o=Array.isArray(e)?Object.fromEntries(e.map(a=>[a,a])):e;return new gn({type:"enum",entries:o,...X(n)})}const ru=R("ZodLiteral",(e,n)=>{ml.init(e,n),Ie.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 ru({type:"literal",values:Array.isArray(e)?e:[e],...X(n)})}const su=R("ZodTransform",(e,n)=>{fl.init(e,n),Ie.init(e,n),e._zod.parse=(o,a)=>{o.addIssue=s=>{if(typeof s=="string")o.issues.push(Et(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(Et(i))}};const r=n.transform(o.value,o);return r instanceof Promise?r.then(s=>(o.value=s,o)):(o.value=r,o)}});function iu(e){return new su({type:"transform",transform:e})}const Qo=R("ZodOptional",(e,n)=>{hl.init(e,n),Ie.init(e,n),e.unwrap=()=>e._zod.def.innerType});function co(e){return new Qo({type:"optional",innerType:e})}const lu=R("ZodNullable",(e,n)=>{gl.init(e,n),Ie.init(e,n),e.unwrap=()=>e._zod.def.innerType});function uo(e){return new lu({type:"nullable",innerType:e})}const cu=R("ZodDefault",(e,n)=>{vl.init(e,n),Ie.init(e,n),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function uu(e,n){return new cu({type:"default",innerType:e,get defaultValue(){return typeof n=="function"?n():n}})}const du=R("ZodPrefault",(e,n)=>{bl.init(e,n),Ie.init(e,n),e.unwrap=()=>e._zod.def.innerType});function pu(e,n){return new du({type:"prefault",innerType:e,get defaultValue(){return typeof n=="function"?n():n}})}const ea=R("ZodNonOptional",(e,n)=>{kl.init(e,n),Ie.init(e,n),e.unwrap=()=>e._zod.def.innerType});function mu(e,n){return new ea({type:"nonoptional",innerType:e,...X(n)})}const fu=R("ZodCatch",(e,n)=>{yl.init(e,n),Ie.init(e,n),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function hu(e,n){return new fu({type:"catch",innerType:e,catchValue:typeof n=="function"?n:()=>n})}const gu=R("ZodPipe",(e,n)=>{Sl.init(e,n),Ie.init(e,n),e.in=n.in,e.out=n.out});function po(e,n){return new gu({type:"pipe",in:e,out:n})}const vu=R("ZodReadonly",(e,n)=>{wl.init(e,n),Ie.init(e,n)});function bu(e){return new vu({type:"readonly",innerType:e})}const ta=R("ZodCustom",(e,n)=>{Cl.init(e,n),Ie.init(e,n)});function ku(e){const n=new qe({check:"custom"});return n._zod.check=e,n}function Nt(e,n){return fc(ta,e??(()=>!0),n)}function yu(e,n={}){return hc(ta,e,n)}function Su(e){const n=ku(o=>(o.addIssue=a=>{if(typeof a=="string")o.issues.push(Et(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(Et(r))}},e(o.value,o)));return n}const na=wt(ge),te=Nt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),ce=I(),An=wt(["developer","system","assistant","user"]),oa=P({type:q(ge.TEXT_MESSAGE_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),role:An.optional(),name:I().optional()}),aa=P({type:q(ge.TEXT_MESSAGE_CONTENT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),delta:I()}),ra=P({type:q(ge.TEXT_MESSAGE_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I()}),sa=P({type:q(ge.TEXT_MESSAGE_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I().optional(),role:An.optional(),delta:I().optional(),name:I().optional()}),ia=P({type:q(ge.TOOL_CALL_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),toolCallId:I(),toolCallName:I(),parentMessageId:I().optional()}),la=P({type:q(ge.TOOL_CALL_ARGS),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),toolCallId:I(),delta:I()}),ca=P({type:q(ge.TOOL_CALL_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),toolCallId:I()}),ua=P({type:q(ge.TOOL_CALL_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),toolCallId:I().optional(),toolCallName:I().optional(),parentMessageId:I().optional(),delta:I().optional()}),da=P({type:q("text"),id:I().optional(),text:I(),metadata:Q().refine(e=>e!==null).optional()}),pa=P({type:q("data"),value:I(),mimeType:I()}),ma=P({type:q("url"),value:I(),mimeType:I().optional()}),fa=P({type:q("file"),value:I(),provider:I().optional(),mimeType:I().optional()}),Ot=gt("type",[pa,ma,fa]),ha=P({type:q("image"),id:I().optional(),source:Ot,metadata:Q().refine(e=>e!==null).optional()}),ga=P({type:q("audio"),id:I().optional(),source:Ot,metadata:Q().refine(e=>e!==null).optional()}),va=P({type:q("video"),id:I().optional(),source:Ot,metadata:Q().refine(e=>e!==null).optional()}),ba=P({type:q("document"),id:I().optional(),source:Ot,metadata:Q().refine(e=>e!==null).optional()}),tn=gt("type",[da,ha,ga,va,ba]),ka=P({type:q(ge.TOOL_CALL_RESULT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),toolCallId:I(),content:en([I(),Me(tn)]),role:q("tool").optional()}),_n=Q(),ya=P({type:q(ge.STATE_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),snapshot:_n.refine(e=>e!==void 0)}),lt=I().regex(new RegExp("^(/([^/~]|~[01])*)*$")),Sa=P({op:q("add"),path:lt,value:Q().refine(e=>e!==void 0)}).meta({specOpen:!0}),wa=P({op:q("remove"),path:lt}).meta({specOpen:!0}),Ca=P({op:q("replace"),path:lt,value:Q().refine(e=>e!==void 0)}).meta({specOpen:!0}),Ta=P({op:q("move"),from:lt,path:lt}).meta({specOpen:!0}),xa=P({op:q("copy"),from:lt,path:lt}).meta({specOpen:!0}),Ia=P({op:q("test"),path:lt,value:Q().refine(e=>e!==void 0)}).meta({specOpen:!0}),Ea=gt("op",[Sa,wa,Ca,Ta,xa,Ia]),$n=Me(Ea),Ra=P({type:q(ge.STATE_DELTA),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),delta:$n}),Aa=P({subagentRunId:ce.optional(),id:I(),role:q("developer"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I()}),_a=P({subagentRunId:ce.optional(),id:I(),role:q("system"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I()}),$a=P({name:I(),arguments:I()}),Ma=P({id:I(),type:q("function"),function:$a,encryptedValue:I().optional(),metadata:te.optional()}),Na=P({subagentRunId:ce.optional(),id:I(),role:q("assistant"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:I().optional(),toolCalls:Me(Ma).optional()}),Oa=P({subagentRunId:ce.optional(),id:I(),role:q("user"),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional(),content:en([I(),Me(tn)])}),za=P({subagentRunId:ce.optional(),id:I(),role:q("tool"),content:en([I(),Me(tn)]),toolCallId:I(),error:I().optional(),encryptedValue:I().optional(),metadata:te.optional()}),Ba=P({subagentRunId:ce.optional(),id:I(),role:q("activity"),activityType:I(),content:Nt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),metadata:te.optional()}),Fa=P({subagentRunId:ce.optional(),id:I(),role:q("reasoning"),content:I(),encryptedValue:I().optional(),metadata:te.optional()}),Mn=gt("role",[Aa,_a,Na,Oa,za,Ba,Fa]),Da=P({type:q(ge.MESSAGES_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),messages:Me(Mn)}),Va=P({type:q(ge.ACTIVITY_SNAPSHOT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),activityType:I(),content:Nt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)),replace:ue().optional()}),Pa=P({type:q(ge.ACTIVITY_DELTA),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),activityType:I(),patch:$n}),La=P({type:q(ge.RAW),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),event:Q().refine(e=>e!==void 0),source:I().optional()}),Ua=P({type:q(ge.CUSTOM),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),name:I(),value:Q().refine(e=>e!==void 0)}),Nn=P({name:I(),description:I(),parameters:Q().refine(e=>e!==null).optional(),metadata:te.optional()}),ja=P({description:I(),value:I()}),Za=P({interruptId:I(),status:wt(["resolved","cancelled"]),payload:Q().refine(e=>e!==null).optional(),metadata:te.optional()}),Ha=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:Me(Mn),tools:Me(Nn).default(()=>[]),context:Me(ja).default(()=>[]),forwardedProps:Q().refine(e=>e!==null).optional(),resume:Me(Za).optional()}),Ga=P({type:q(ge.RUN_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),threadId:I(),runId:I(),protocolVersion:I().optional(),parentRunId:I().optional(),input:Ha.optional()}),Wa=P({type:q("success"),pendingToolCallIds:Me(I()).optional()}),Ka=P({subagentRunId:ce.optional(),id:I(),reason:I(),message:I().optional(),toolCallId:I().optional(),responseSchema:Nt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)).optional(),expiresAt:I().optional(),metadata:te.optional()}),qa=P({type:q("interrupt"),interrupts:Me(Ka).min(1)}),Ja=P({type:q("cancelled")}),Xa=gt("type",[Wa,qa,Ja]),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()}),Ya=P({type:q(ge.RUN_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),threadId:I(),runId:I(),result:Q().refine(e=>e!==null).optional(),outcome:Xa.optional(),usage:Me(On).optional()}),Qa=P({type:q(ge.RUN_ERROR),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),message:I(),code:I().optional(),usage:Me(On).optional()}),er=P({type:q(ge.STEP_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),stepName:I()}),tr=P({type:q(ge.STEP_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),stepName:I()}),nr=P({type:q(ge.REASONING_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I()}),or=P({type:q(ge.REASONING_MESSAGE_START),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),role:q("reasoning")}),ar=P({type:q(ge.REASONING_MESSAGE_CONTENT),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I(),delta:I()}),rr=P({type:q(ge.REASONING_MESSAGE_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I()}),sr=P({type:q(ge.REASONING_MESSAGE_CHUNK),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I().optional(),delta:I().optional()}),ir=P({type:q(ge.REASONING_END),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),messageId:I()}),lr=wt(["tool-call","message"]),cr=P({type:q(ge.REASONING_ENCRYPTED_VALUE),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce.optional(),subtype:lr,entityId:I(),encryptedValue:I()}),ur=P({type:q(ge.SUBAGENT_STARTED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce,name:I(),description:I().optional(),parentSubagentRunId:ce.optional(),parentToolCallId:I().optional(),parentMessageId:I().optional()}),dr=P({type:q("success")}),pr=P({type:q("suspended"),interruptIds:Me(I()).optional()}),mr=gt("type",[dr,pr]),fr=P({type:q(ge.SUBAGENT_FINISHED),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce,result:Q().refine(e=>e!==null).optional(),outcome:mr.optional()}),hr=P({type:q(ge.SUBAGENT_ERROR),timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional(),subagentRunId:ce,message:I(),code:I().optional()}),wu=gt("type",[oa,aa,ra,sa,ia,la,ca,ua,ka,ya,Ra,Da,Va,Pa,La,Ua,Ga,Ya,Qa,er,tr,nr,or,ar,rr,sr,ir,cr,ur,fr,hr]),Cu=wt(["developer","system","assistant","user","tool","activity","reasoning"]),gr=P({name:I(),description:I().optional()}),vr=P({name:I().optional(),type:I().optional(),description:I().optional(),version:I().optional(),provider:I().optional(),documentationUrl:I().optional(),metadata:te.optional()}),br=P({streaming:ue().optional(),websocket:ue().optional(),httpBinary:ue().optional(),pushNotifications:ue().optional(),resumable:ue().optional()}),kr=P({supported:ue().optional(),items:Me(Nn).optional(),parallelCalls:ue().optional(),clientProvided:ue().optional()}),yr=P({structuredOutput:ue().optional(),supportedMimeTypes:Me(I()).optional()}),Sr=P({snapshots:ue().optional(),deltas:ue().optional(),memory:ue().optional(),persistentState:ue().optional()}),wr=P({supported:ue().optional(),delegation:ue().optional(),handoffs:ue().optional(),subagents:Me(gr).optional()}),Cr=P({supported:ue().optional(),streaming:ue().optional(),encrypted:ue().optional()}),Tr=P({image:ue().optional(),audio:ue().optional(),video:ue().optional(),pdf:ue().optional(),file:ue().optional()}),xr=P({image:ue().optional(),audio:ue().optional()}),Ir=P({input:Tr.optional(),output:xr.optional()}),Er=P({codeExecution:ue().optional(),sandboxed:ue().optional(),maxIterations:se().min(0).max(9007199254740991).optional(),maxExecutionTime:se().min(0).max(9007199254740991).optional()}),Rr=P({supported:ue().optional(),approvals:ue().optional(),interventions:ue().optional(),feedback:ue().optional(),interrupts:ue().optional(),approveWithEdits:ue().optional()}),Tu=P({identity:vr.optional(),transport:br.optional(),tools:kr.optional(),output:yr.optional(),state:Sr.optional(),multiAgent:wr.optional(),reasoning:Cr.optional(),multimodal:Ir.optional(),execution:Er.optional(),humanInTheLoop:Rr.optional(),custom:Nt(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)).optional()}),xu=P({subagentRunId:ce.optional()}),Iu=P({type:na,timestamp:se().min(-9007199254740991).max(9007199254740991).optional(),rawEvent:Q().refine(e=>e!==null).optional(),metadata:te.optional()}),Eu=P({subagentRunId:ce.optional(),id:I(),role:I(),name:I().optional(),encryptedValue:I().optional(),metadata:te.optional()}),Ru=te.optional(),Au="1.79.0",Ar=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:Au}),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"),$r=Symbol("SandboxFunctions"),_u=Symbol("CopilotKitInspector");function De(){const e=t.inject(_r);if(!e)throw new Error("useCopilotKit must be used within CopilotKitProvider");return e}const Mr=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}=De(),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])}}),$u="a2ui-surface",Mu=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 Nr extends re.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",Nu=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
+ 0%, 100% { opacity: 0.4; }
28
+ 50% { opacity: 1; }
29
+ }`)])}});function Or(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(Nu):t.h(qr,{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 Ou(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:zu(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 zu(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",`
30
+ @keyframes cpk-a2ui-fade {
31
+ 0%, 100% { opacity: 1; }
32
+ 50% { opacity: 0.5; }
33
+ }
34
+ @keyframes cpk-a2ui-sweep {
35
+ 0% { background-position: 250% 0; }
36
+ 100% { background-position: -250% 0; }
37
+ }
38
+ `)])}function ze(e,n,o){const a=t.defineComponent({name:`A2UI_${e.name}`,props:{context:{type:Object,required:!0},buildChild:{type:Function,required:!0}},setup(r){const s=t.ref({});let i=null;const l=o?o():void 0;function c(u){i&&i.dispose(),i=new Xt.GenericBinder(u,e.schema),s.value=i.snapshot,i.subscribe(p=>{s.value=p})}return c(r.context),t.watch(()=>r.context,u=>{c(u)}),t.onUnmounted(()=>{i&&(i.dispose(),i=null)}),()=>n({props:s.value,buildChild:r.buildChild,context:r.context,state:l})}});return{name:e.name,schema:e.schema,render:a}}const st="8px",Bu="16px",Rt="1px solid #ccc",nn="8px",zr=e=>{switch(e){case"center":return"center";case"end":return"flex-end";case"spaceAround":return"space-around";case"spaceBetween":return"space-between";case"spaceEvenly":return"space-evenly";case"start":return"flex-start";case"stretch":return"stretch";default:return"flex-start"}},zn=e=>{switch(e){case"start":return"flex-start";case"center":return"center";case"end":return"flex-end";case"stretch":return"stretch";default:return"stretch"}},zt=()=>({margin:st,boxSizing:"border-box"}),Fu=()=>({margin:st,padding:Bu,border:Rt,borderRadius:nn,boxSizing:"border-box"});function Bn(e,n){return Array.isArray(e)?e.map(o=>{if(o&&typeof o=="object"&&"id"in o){const a=o;return n(a.id,a.basePath)}return typeof o=="string"?n(o):null}).filter(o=>o!==null):[]}let Du=0;function on(){return`a2ui-vue-${++Du}`}const Vu=ze(Ne.TextApi,({props:e})=>{const n=e.text??"",o={...zt(),display:"inline-block"};switch(e.variant){case"h1":return t.h("h1",{style:o},n);case"h2":return t.h("h2",{style:o},n);case"h3":return t.h("h3",{style:o},n);case"h4":return t.h("h4",{style:o},n);case"h5":return t.h("h5",{style:o},n);case"caption":return t.h("small",{style:{...o,color:"#666",textAlign:"left"}},n);default:return t.h("span",{style:o},n)}}),Pu=ze(Ne.ImageApi,({props:e})=>{const n=a=>a==="scaleDown"?"scale-down":a||"fill",o={...zt(),objectFit:n(e.fit),width:"100%",height:"auto",display:"block"};return e.variant==="icon"?(o.width="24px",o.height="24px"):e.variant==="avatar"?(o.width="40px",o.height="40px",o.borderRadius="50%"):e.variant==="smallFeature"?o.maxWidth="100px":e.variant==="largeFeature"?o.maxHeight="400px":e.variant==="header"&&(o.height="200px",o.objectFit="cover"),t.h("img",{src:e.url,alt:e.description||"",style:o})}),Lu=ze(Ne.IconApi,({props:e})=>{const n=typeof e.name=="string"?e.name:e.name?.path,o={...zt(),fontSize:"24px",width:"24px",height:"24px",display:"inline-flex",alignItems:"center",justifyContent:"center"};return t.h("span",{class:"material-symbols-outlined",style:o},n)}),Uu=ze(Ne.VideoApi,({props:e})=>{const n={...zt(),width:"100%",aspectRatio:"16/9"};return t.h("video",{src:e.url,controls:!0,style:n})}),ju=ze(Ne.AudioPlayerApi,({props:e})=>{const n={...zt(),width:"100%"};return t.h("div",{style:{display:"flex",flexDirection:"column",gap:"4px",width:"100%"}},[e.description?t.h("span",{style:{fontSize:"12px",color:"#666"}},e.description):null,t.h("audio",{src:e.url,controls:!0,style:n})])}),Zu=ze(Ne.RowApi,({props:e,buildChild:n})=>t.h("div",{style:{display:"flex",flexDirection:"row",justifyContent:zr(e.justify),alignItems:zn(e.align),width:"100%",margin:"0",padding:"0"}},Bn(e.children,n))),Hu=ze(Ne.ColumnApi,({props:e,buildChild:n})=>t.h("div",{style:{display:"flex",flexDirection:"column",justifyContent:zr(e.justify),alignItems:zn(e.align),width:"100%",margin:"0",padding:"0"}},Bn(e.children,n))),Gu=ze(Ne.ListApi,({props:e,buildChild:n})=>{const o=e.direction==="horizontal",a={display:"flex",flexDirection:o?"row":"column",alignItems:zn(e.align),overflowX:o?"auto":"hidden",overflowY:o?"hidden":"auto",width:"100%",margin:"0",padding:"0"};return t.h("div",{style:a},Bn(e.children,n))}),Wu=ze(Ne.CardApi,({props:e,buildChild:n})=>{const o={...Fu(),backgroundColor:"#fff",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",width:"100%"};return t.h("div",{style:o},[e.child?n(e.child):null])}),Ku=ze(Ne.TabsApi,({props:e,buildChild:n,state:o})=>{const a=e.tabs||[];return t.h("div",{style:{display:"flex",flexDirection:"column",width:"100%",margin:st}},[t.h("div",{style:{display:"flex",borderBottom:"1px solid #ccc",marginBottom:"8px"}},a.map((r,s)=>{const i=typeof r.title=="string"?r.title:String(r.title??"");return t.h("button",{key:s,onClick:()=>{o.selectedIndex.value=s},style:{padding:"8px 16px",border:"none",background:"none",borderBottom:o.selectedIndex.value===s?"2px solid var(--a2ui-primary-color, #007bff)":"none",fontWeight:o.selectedIndex.value===s?"bold":"normal",cursor:"pointer",color:o.selectedIndex.value===s?"var(--a2ui-primary-color, #007bff)":"inherit"}},i)})),t.h("div",{style:{flex:"1"}},[a[o.selectedIndex.value]?.child?n(a[o.selectedIndex.value].child):null])])},()=>({selectedIndex:t.ref(0)})),qu=ze(Ne.DividerApi,({props:e})=>{const n=e.axis==="vertical",o={margin:st,border:"none",backgroundColor:"#ccc"};return n?(o.width="1px",o.height="100%"):(o.width="100%",o.height="1px"),t.h("div",{style:o})}),Ju=ze(Ne.ModalApi,({props:e,buildChild:n,state:o})=>t.h("div",{},[t.h("div",{onClick:()=>{o.isOpen.value=!0},style:{display:"inline-block"}},[e.trigger?n(e.trigger):null]),o.isOpen.value?t.h("div",{style:{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"},onClick:()=>{o.isOpen.value=!1}},[t.h("div",{style:{backgroundColor:"#fff",padding:"24px",borderRadius:"8px",maxWidth:"90%",maxHeight:"90%",overflow:"auto",display:"flex",flexDirection:"column"},onClick:a=>a.stopPropagation()},[t.h("div",{style:{display:"flex",justifyContent:"flex-end"}},[t.h("button",{onClick:()=>{o.isOpen.value=!1},style:{border:"none",background:"none",fontSize:"20px",cursor:"pointer",padding:"4px"}},"×")]),t.h("div",{style:{flex:"1"}},[e.content?n(e.content):null])])]):null]),()=>({isOpen:t.ref(!1)})),Xu=ze(Ne.ButtonApi,({props:e,buildChild:n})=>{const o={margin:st,padding:"8px 16px",cursor:"pointer",border:e.variant==="borderless"?"none":"1px solid #ccc",backgroundColor:e.variant==="primary"?"var(--a2ui-primary-color, #007bff)":e.variant==="borderless"?"transparent":"#fff",color:e.variant==="primary"?"#fff":"inherit",borderRadius:"4px",display:"inline-flex",alignItems:"center",justifyContent:"center",boxSizing:"border-box"};return t.h("button",{style:o,onClick:e.action,disabled:e.isValid===!1},[e.child?n(e.child):null])}),Yu=ze(Ne.TextFieldApi,({props:e,state:n})=>{const o=n.id,a=e.variant==="longText",r=e.variant==="number"?"number":e.variant==="obscured"?"password":"text",s={padding:"8px",width:"100%",border:e.validationErrors&&e.validationErrors.length>0?"1px solid red":Rt,borderRadius:nn,boxSizing:"border-box"},i=e.validationErrors&&e.validationErrors.length>0;return t.h("div",{style:{display:"flex",flexDirection:"column",gap:"4px",width:"100%",margin:st}},[e.label?t.h("label",{for:o,style:{fontSize:"14px",fontWeight:"bold"}},e.label):null,a?t.h("textarea",{id:o,style:s,value:e.value||"",onInput:l=>e.setValue(l.target.value)}):t.h("input",{id:o,type:r,style:s,value:e.value||"",onInput:l=>e.setValue(l.target.value)}),i?t.h("span",{style:{fontSize:"12px",color:"red"}},e.validationErrors[0]):null])},()=>({id:on()})),Qu=ze(Ne.CheckBoxApi,({props:e,state:n})=>{const o=n.id,a=e.validationErrors&&e.validationErrors.length>0;return t.h("div",{style:{display:"flex",flexDirection:"column",margin:st}},[t.h("div",{style:{display:"flex",alignItems:"center",gap:"8px"}},[t.h("input",{id:o,type:"checkbox",checked:!!e.value,onChange:r=>e.setValue(r.target.checked),style:{cursor:"pointer",outline:a?"1px solid red":"none"}}),e.label?t.h("label",{for:o,style:{cursor:"pointer",color:a?"red":"inherit"}},e.label):null]),a?t.h("span",{style:{fontSize:"12px",color:"red",marginTop:"4px"}},e.validationErrors?.[0]):null])},()=>({id:on()})),ed=ze(Ne.ChoicePickerApi,({props:e,context:n,state:o})=>{const a=Array.isArray(e.value)?e.value:[],r=e.variant==="mutuallyExclusive",s=l=>{if(r)e.setValue([l]);else{const c=a.includes(l)?a.filter(u=>u!==l):[...a,l];e.setValue(c)}},i=(e.options||[]).filter(l=>!e.filterable||o.filter.value===""||String(typeof l.label=="string"?l.label:"").toLowerCase().includes(o.filter.value.toLowerCase()));return t.h("div",{style:{display:"flex",flexDirection:"column",gap:"8px",margin:st,width:"100%"}},[e.label?t.h("strong",{style:{fontSize:"14px"}},e.label):null,e.filterable?t.h("input",{type:"text",placeholder:"Filter options...",value:o.filter.value,onInput:l=>{o.filter.value=l.target.value},style:{padding:"4px 8px",border:Rt,borderRadius:nn}}):null,t.h("div",{style:{display:"flex",flexDirection:e.displayStyle==="chips"?"row":"column",flexWrap:e.displayStyle==="chips"?"wrap":"nowrap",gap:"8px"}},i.map((l,c)=>{const u=a.includes(l.value),p=typeof l.label=="string"?l.label:String(l.label??l.value);return e.displayStyle==="chips"?t.h("button",{key:c,onClick:()=>s(l.value),style:{padding:"4px 12px",borderRadius:"16px",border:u?"1px solid var(--a2ui-primary-color, #007bff)":Rt,backgroundColor:u?"var(--a2ui-primary-color, #007bff)":"#fff",color:u?"#fff":"inherit",cursor:"pointer",fontSize:"12px"}},p):t.h("label",{key:c,style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"}},[t.h("input",{type:r?"radio":"checkbox",checked:u,onChange:()=>s(l.value),name:r?`choice-${n.componentModel.id}`:void 0}),t.h("span",{style:{fontSize:"14px"}},p)])}))])},()=>({filter:t.ref("")})),td=ze(Ne.SliderApi,({props:e,state:n})=>{const o=n.id;return t.h("div",{style:{display:"flex",flexDirection:"column",gap:"4px",margin:st,width:"100%"}},[t.h("div",{style:{display:"flex",justifyContent:"space-between"}},[e.label?t.h("label",{for:o,style:{fontSize:"14px",fontWeight:"bold"}},e.label):null,t.h("span",{style:{fontSize:"12px",color:"#666"}},String(e.value))]),t.h("input",{id:o,type:"range",min:e.min??0,max:e.max,value:e.value??0,onInput:a=>e.setValue(Number(a.target.value)),style:{width:"100%",cursor:"pointer"}})])},()=>({id:on()})),nd=ze(Ne.DateTimeInputApi,({props:e,state:n})=>{const o=n.id;let a="datetime-local";e.enableDate&&!e.enableTime&&(a="date"),!e.enableDate&&e.enableTime&&(a="time");const r={padding:"8px",width:"100%",border:Rt,borderRadius:nn,boxSizing:"border-box"};return t.h("div",{style:{display:"flex",flexDirection:"column",gap:"4px",width:"100%",margin:st}},[e.label?t.h("label",{for:o,style:{fontSize:"14px",fontWeight:"bold"}},e.label):null,t.h("input",{id:o,type:a,style:r,value:e.value||"",onInput:s=>e.setValue(s.target.value),min:typeof e.min=="string"?e.min:void 0,max:typeof e.max=="string"?e.max:void 0})])},()=>({id:on()})),od=[Vu,Pu,Lu,Uu,ju,Zu,Hu,Gu,Wu,Ku,qu,Ju,Xu,Yu,Qu,ed,td,nd],St=new Xt.Catalog("https://a2ui.org/specification/v0_9/basic_catalog.json",od,Ne.BASIC_FUNCTIONS),ad="A2UI Component Schema — available components for generating UI surfaces. Use these component names and properties when creating A2UI operations.";function rd(e){const n=e??St,o="https://a2ui.org/specification/v0_9/basic_catalog.json",a=[];if(a.push("Available A2UI catalog:"),n.id===o)return a.push(`- ${n.id} (basic catalog)`),a.join(`
39
+ `);let r=!0;for(const i of St.components.keys())if(!n.components.has(i)){r=!1;break}const s=[];for(const i of n.components.keys())St.components.has(i)||s.push(i);a.push(`- ${n.id}`),r?a.push(" Extends the basic catalog with all standard components plus:"):(a.push(" Custom catalog (does NOT include all basic components)."),a.push(" Custom components:"));for(const i of s){const l=n.components.get(i);if(!l)continue;const c=Sn.zodToJsonSchema(l.schema);a.push(` - ${i}:`),a.push(` ${JSON.stringify(c,null,2).split(`
40
+ `).join(`
41
+ `)}`)}return a.join(`
42
+ `)}function sd(e){const n=e??St,o={};for(const[a,r]of n.components){const s=Sn.zodToJsonSchema(r.schema,{target:"jsonSchema2019-09"});o[a]={allOf:[{$ref:"common_types.json#/$defs/ComponentCommon"},{properties:{component:{const:a},...s.properties},required:["component",...s.required??[]]}]}}return{catalogId:n.id,components:o}}function id(e,n){const o=t.computed(()=>rd(n.catalog()));t.watch([()=>e.value,n.enabled,o],([r,s,i],l,c)=>{if(!s)return;const u=r.a2uiAgents,p=r.addContext({description:"A2UI catalog capabilities: available catalog IDs and custom component definitions the client can render.",value:i,...u?{agentIds:u}:{}});c(()=>r.removeContext(p))},{immediate:!0});const a=t.computed(()=>n.includeSchema()?JSON.stringify(sd(n.catalog())):null);t.watch([()=>e.value,n.enabled,a],([r,s,i],l,c)=>{if(!s||!i)return;const u=r.a2uiAgents,p=u?{agentIds:u}:{},g=[];g.push(r.addContext({description:ad,value:i,...p})),g.push(r.addContext({description:"A2UI generation guidelines — protocol rules, tool arguments, path rules, data model format, and form/two-way-binding instructions.",value:H.A2UI_DEFAULT_GENERATION_GUIDELINES,...p})),g.push(r.addContext({description:"A2UI design guidelines — visual design rules, component hierarchy tips, and action handler patterns.",value:H.A2UI_DEFAULT_DESIGN_GUIDELINES,...p})),c(()=>{for(const h of g)r.removeContext(h)})},{immediate:!0})}function Br(e){const n=e.match(/<style\b[^>]*>[\s\S]*?<\/style>/gi);return n?n.join(""):""}function Fr(e){let n=e;n=n.replace(/<[^>]*$/,""),n=n.replace(/<(style|script|head)\b[^>]*>[\s\S]*?<\/\1>/gi,""),n=n.replace(/<(style|script|head)\b[^>]*>[\s\S]*$/gi,""),n=n.replace(/&[a-zA-Z0-9#]*$/,"");const o=n.match(/<body[^>]*>([\s\S]*)/i);return o&&(n=o[1],n=n.replace(/<\/body>[\s\S]*/i,"")),n}function Dr(){const e=t.inject($r,t.computed(()=>[]));return t.computed(()=>e.value)}const Vr="open-generative-ui",Pr=he.z.object({initialHeight:he.z.number().optional(),generating:he.z.boolean().optional(),css:he.z.string().optional(),cssComplete:he.z.boolean().optional(),html:he.z.array(he.z.string()).optional(),htmlComplete:he.z.boolean().optional(),jsFunctions:he.z.string().optional(),jsFunctionsComplete:he.z.boolean().optional(),jsExpressions:he.z.array(he.z.string()).optional(),jsExpressionsComplete:he.z.boolean().optional()}),Lr=he.z.object({initialHeight:he.z.number().optional(),placeholderMessages:he.z.array(he.z.string()).optional(),css:he.z.string().optional(),html:he.z.string().optional(),jsFunctions:he.z.string().optional(),jsExpressions:he.z.array(he.z.string()).optional()});function ld(e,n){return!!(n.cssComplete&&(!e||!e.cssComplete)||n.htmlComplete||n.generating===!1||n.jsFunctions&&(!e||!e.jsFunctions)||(n.jsExpressions?.length??0)>(e?.jsExpressions?.length??0)||n.html?.length&&(!e||!e.html?.length))}function cd(e){return/<head[\s>]/i.test(e)?e:`<head></head>${e}`}function ud(e,n){const o=e.indexOf("</head>");return o!==-1?e.slice(0,o)+`<style>${n}</style>`+e.slice(o):`<head><style>${n}</style></head>${e}`}async function fo(){const e=await import("@jetbrains/websandbox");return e.default?.default??e.default}const Ur=t.defineComponent({name:"OpenGenerativeUIRenderer",props:{content:{type:Object,required:!0}},setup(e){const n=Dr(),o=t.ref(null),a=t.ref(e.content),r=t.ref(e.content),s=t.ref(null),i=t.ref(null),l=t.ref(null),c=t.ref(!1),u=t.ref(!1),p=t.ref(0),g=t.ref(!1),h=t.ref([]),d=t.computed(()=>{const O={};for(const N of n.value)O[N.name]=N.handler;return O});t.watch(()=>e.content,O=>{if(r.value=O,ld(a.value,O)){s.value!==null&&(window.clearTimeout(s.value),s.value=null),a.value=O;return}s.value===null&&(s.value=window.setTimeout(()=>{a.value=r.value,s.value=null},1e3))},{immediate:!0}),t.onBeforeUnmount(()=>{s.value!==null&&window.clearTimeout(s.value)});const f=t.computed(()=>{if(!a.value.htmlComplete&&a.value.html?.length)return a.value.html.join("")}),C=t.computed(()=>f.value?Fr(f.value):void 0),b=t.computed(()=>f.value?Br(f.value):""),k=t.computed(()=>a.value.htmlComplete&&a.value.html?.length?a.value.html.join(""):void 0),m=t.computed(()=>a.value.cssComplete?a.value.css:void 0),v=t.computed(()=>!!a.value.cssComplete&&!!C.value&&C.value.trim().length>0),y=t.computed(()=>!!k.value||v.value),x=t.computed(()=>`${a.value.initialHeight??200}px`),S=()=>{l.value&&(l.value.destroy(),l.value=null),u.value=!1},A=()=>{i.value&&(i.value.destroy(),i.value=null),c.value=!1,h.value=[],p.value=0,g.value=!1};t.watch([v,k,m,C,b,()=>o.value],async([O,N],z,D)=>{if(!O||N||!o.value||l.value)return;let U=!1;try{const _=await fo();if(U||!o.value)return;const E=_.create({},{frameContainer:o.value,frameContent:"<head></head><body></body>",allowAdditionalAttributes:""});l.value=E,E.iframe.setAttribute("data-testid","open-generative-ui-preview-sandbox"),E.iframe.style.width="100%",E.iframe.style.height="100%",E.iframe.style.border="none",E.iframe.style.backgroundColor="transparent",E.promise.then(()=>{U||!l.value||(u.value=!0,E.run("var s=document.createElement('style');s.textContent='html, body { overflow: hidden !important; }';document.head.appendChild(s);"))})}catch(_){console.error("[OpenGenerativeUI] Failed to load sandbox module:",_)}D(()=>{U=!0})},{immediate:!0}),t.watch([C,b,m,u],([O,N,z,D])=>{if(!l.value||!D)return;const U=[];z&&U.push(`<style>${z}</style>`),N&&U.push(N),U.length&&l.value.run(`document.head.innerHTML = ${JSON.stringify(U.join(""))}`),O&&l.value.run(`document.body.innerHTML = ${JSON.stringify(O)}`)},{immediate:!0}),t.watch([k,m,d,()=>o.value],async([O,N,z],D,U)=>{if(A(),!O||!o.value)return;S();let _=!1;try{const E=await fo();if(_||!o.value)return;const j=cd(O),M=N?ud(j,N):j,F=E.create(z,{frameContainer:o.value,frameContent:M,allowAdditionalAttributes:""});i.value=F,F.iframe.setAttribute("data-testid","open-generative-ui-final-sandbox"),F.iframe.style.width="100%",F.iframe.style.height="100%",F.iframe.style.border="none",F.iframe.style.backgroundColor="transparent",F.promise.then(()=>{if(_||!i.value)return;c.value=!0,F.run("var s=document.createElement('style');s.textContent='html, body { overflow: hidden !important; }';document.head.appendChild(s);");const ne=a.value.jsFunctions;ne&&!g.value&&(g.value=!0,h.value.unshift(ne));const $=a.value.jsExpressions;if($?.length){const G=p.value;G<$.length&&(h.value.push(...$.slice(G)),p.value=$.length)}const Y=[...h.value];h.value=[];for(const G of Y)F.run(G)})}catch(E){console.error("[OpenGenerativeUI] Failed to load sandbox module:",E)}U(()=>{_=!0})},{immediate:!0}),t.watch(()=>a.value.jsFunctions,O=>{!O||g.value||(g.value=!0,c.value&&i.value?i.value.run(O):h.value.push(O))}),t.watch(()=>a.value.jsExpressions,O=>{if(!O?.length)return;const N=p.value;if(N>=O.length)return;const z=O.slice(N);if(p.value=O.length,c.value&&i.value)for(const D of z)i.value.run(D);else h.value.push(...z)},{deep:!0});const T=t.computed(()=>a.value.generating!==!1);return t.watch([v,k],([O,N])=>{N&&S(),O||S()},{immediate:!0}),t.onBeforeUnmount(()=>{s.value!==null&&window.clearTimeout(s.value),S(),A()}),()=>t.h("div",{ref:o,"data-testid":"open-generative-ui-renderer",style:{position:"relative",width:"100%",height:x.value,borderRadius:"8px",backgroundColor:y.value?"transparent":"#f5f5f5",border:y.value?"none":"1px solid #e0e0e0",overflow:"hidden",display:y.value?"block":"flex",alignItems:y.value?void 0:"center",justifyContent:y.value?void 0:"center"}},[y.value?null:t.h("div",{"data-testid":"open-generative-ui-placeholder"},[t.h("svg",{width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",style:{animation:"ck-spin 1s linear infinite"}},[t.h("circle",{cx:"12",cy:"12",r:"10",stroke:"#e0e0e0","stroke-width":"3"}),t.h("path",{d:"M12 2a10 10 0 0 1 10 10",stroke:"#999","stroke-width":"3","stroke-linecap":"round"})]),t.h("style","@keyframes ck-spin { to { transform: rotate(360deg) } }")]),T.value?t.h("div",{"data-testid":"open-generative-ui-progress-overlay",style:{position:"absolute",inset:0,backgroundColor:"rgba(255,255,255,0.45)"}}):null])}}),jr=t.defineComponent({name:"OpenGenerativeUIActivityRenderer",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){return()=>t.h(Ur,{content:e.content})}}),Zr=t.defineComponent({name:"OpenGenerativeUIToolRenderer",props:{name:{type:String,required:!0},args:{type:Object,required:!0},status:{type:String,required:!0},result:{type:String,required:!1}},setup(e){const n=t.ref(0);return t.watch(()=>e.args.placeholderMessages,(o,a,r)=>{if(!o?.length||e.status===re.ToolCallStatus.Complete)return;n.value=Math.max(o.length-1,0);const s=window.setInterval(()=>{n.value=(n.value+1)%Math.max(o.length,1)},5e3);r(()=>window.clearInterval(s))},{immediate:!0}),()=>{if(e.status===re.ToolCallStatus.Complete)return null;const o=e.args.placeholderMessages;if(!o?.length)return null;const a=o[n.value]??o[0];return t.h("div",{style:{padding:"8px 12px",color:"#999",fontSize:"14px"},"data-testid":"open-generative-ui-tool-placeholder"},a)}}}),Fn=Symbol("LicenseContext");function Hr(){return t.ref(H.createLicenseContextValue(null))}const dd={style:{display:"flex",gap:"8px",alignItems:"center"}},pd=["href"],md=52,ho="--copilotkit-license-banner-offset",Zt=t.defineComponent({__name:"LicenseWarningBanner",props:{type:{},featureName:{default:void 0},expiryDate:{default:void 0},graceRemaining:{default:void 0},onDismiss:{type:Function,default:void 0}},setup(e){const n=e,o=t.computed(()=>{switch(n.type){case"no_license":return{severity:"info",message:"Powered by CopilotKit",actionLabel:"Get a license",actionUrl:"https://copilotkit.ai/pricing"};case"feature_unlicensed":return{severity:"warning",message:`⚠ The "${n.featureName??""}" feature requires a CopilotKit license.`,actionLabel:"Get a license",actionUrl:"https://copilotkit.ai/pricing"};case"expiring":{const i=n.graceRemaining;return{severity:"warning",message:`Your CopilotKit license expires in ${i} ${i===1?"day":"days"}. Please renew.`,actionLabel:"Renew",actionUrl:"https://dashboard.operations.copilotkit.ai"}}case"expired":return{severity:"critical",message:`Your CopilotKit license expired${n.expiryDate?` on ${n.expiryDate}`:""}. Please renew at copilotkit.ai/pricing`,actionLabel:"Renew now",actionUrl:"https://copilotkit.ai/pricing"};case"invalid":return{severity:"critical",message:"Invalid CopilotKit license token. Please check your configuration.",actionLabel:"Get a license",actionUrl:"https://copilotkit.ai/pricing"};default:return null}}),a={position:"fixed",bottom:"8px",left:"50%",transform:"translateX(-50%)",zIndex:99999,display:"inline-flex",alignItems:"center",gap:"12px",whiteSpace:"nowrap",padding:"8px 16px",fontSize:"13px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif",borderRadius:"6px",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.15)"},r=t.computed(()=>{switch(o.value?.severity){case"warning":return{backgroundColor:"#fffbeb",border:"1px solid #fbbf24",color:"#92400e"};case"critical":return{backgroundColor:"#fef2f2",border:"1px solid #fca5a5",color:"#991b1b"};default:return{backgroundColor:"#eff6ff",border:"1px solid #93c5fd",color:"#1e40af"}}}),s=t.computed(()=>({...a,...r.value}));return t.onMounted(()=>{typeof document>"u"||document.documentElement.style.setProperty(ho,`${md}px`)}),t.onBeforeUnmount(()=>{typeof document>"u"||document.documentElement.style.removeProperty(ho)}),(i,l)=>o.value?(t.openBlock(),t.createElementBlock("div",{key:0,style:t.normalizeStyle(s.value),"data-testid":"copilot-license-banner"},[t.createElementVNode("span",null,t.toDisplayString(o.value.message),1),t.createElementVNode("div",dd,[t.createElementVNode("a",{href:o.value.actionUrl,target:"_blank",rel:"noopener noreferrer",style:{fontWeight:600,textDecoration:"underline",color:"inherit"}},t.toDisplayString(o.value.actionLabel),9,pd),n.onDismiss?(t.openBlock(),t.createElementBlock("button",{key:0,style:{background:"none",border:"none",cursor:"pointer",color:"inherit",fontSize:"16px"},onClick:l[0]||(l[0]=(...c)=>n.onDismiss&&n.onDismiss(...c))}," × ")):t.createCommentVNode("",!0)])],4)):t.createCommentVNode("",!0)}}),fd="X-CopilotCloud-Public-Api-Key",hd="https://api.cloud.copilotkit.ai/copilotkit/v1",gd="frontendTools must be a stable array. If you want to dynamically add or remove tools, use `useFrontendTool` instead.",vd="humanInTheLoop must be a stable array. If you want to dynamically add or remove human-in-the-loop tools, use `useHumanInTheLoop` instead.",bd="renderCustomMessages must be a stable array.",kd="renderActivityMessages must be a stable array.",yd="openGenerativeUI.sandboxFunctions must be a stable array.",go="Human-in-the-loop interaction aborted",Sd=`When generating UI with generateSandboxedUi, follow these design principles inspired by shadcn/ui:
43
+
44
+ - Use a minimal, flat aesthetic. Avoid drop shadows and gradients — rely on subtle borders (1px solid, light gray like #e5e7eb) to define surfaces.
45
+ - Neutral base palette: white backgrounds, zinc/slate gray text (#09090b for headings, #71717a for secondary text). One accent color for interactive elements.
46
+ - Use system font stacks (system-ui, -apple-system, sans-serif) at readable sizes (14px body, 600 weight for headings). Tight line-heights.
47
+ - Small, consistent border-radius (6–8px). Cards and containers use border, not shadow, for separation.
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
+ - Use CSS Grid or Flexbox for layout. Ensure the UI looks good at any width.
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=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=H.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"),k=(()=>typeof o.headers=="function"?o.headers():o.headers),m=t.computed(()=>re.ɵwithHeaderDefaults(b.value?k:o.headers,d.value?{[fd]:d.value}:{})),v=t.computed(()=>o.runtimeUrl??(d.value?hd:void 0));t.watch([v,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 y=new Map,x=L=>{const fe=y.get(L);if(fe)return fe.detachAbort?.(),y.delete(L),fe},S=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,Ve)=>{const xe=Ve?.signal,Be=Ve?.toolCall?.id??pe.name;return new Promise((Ze,rt)=>{if(xe?.aborted){rt(new Error(go));return}const je={resolve:Ze};if(y.set(Be,je),xe){const Se=()=>{y.delete(Be),rt(new Error(go))};xe.addEventListener("abort",Se,{once:!0}),je.detachAbort=()=>{xe.removeEventListener("abort",Se)}}})}}),pe.render){const Ue=pe.render,Ve=xe=>{const Be=xe.toolCallId??pe.name;return t.h(Ue,{...xe,name:pe.name==="*"?xe.name:pe.name,description:pe.description||"",agentId:pe.agentId,respond:xe.status===re.ToolCallStatus.Executing?async Ze=>{x(Be)?.resolve(Ze)}:void 0})};fe.push({name:pe.name,args:pe.parameters??he.z.any(),render:Ve,...pe.agentId&&{agentId:pe.agentId}})}return{tools:L,renderToolCalls:fe}}),A=t.computed(()=>{const L=[];for(const fe of o.frontendTools)L.push(fe);for(const fe of Y.value)L.push(fe);return L.push(...S.value.tools),L}),T=t.computed(()=>{const L=[...o.renderToolCalls??[]];for(const fe of[...o.frontendTools,...Y.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(...S.value.renderToolCalls),L}),O=t.computed(()=>o.renderCustomMessages??[]),N=t.ref(!1),z=t.ref(!1),D=t.ref(void 0),U=t.ref(void 0),_=t.ref(!1),E=t.computed(()=>z.value||!!o.openGenerativeUI),j=t.computed(()=>!!o.a2ui?.catalog),M=t.computed(()=>N.value||j.value),F=t.computed(()=>j.value?{...o.properties,a2uiCatalogAvailable:!0}:o.properties),ne=t.computed(()=>o.openGenerativeUI?.sandboxFunctions??[]),$=(L,fe)=>Sn.zodToJsonSchema(L,fe),Y=t.computed(()=>E.value?[{name:"generateSandboxedUi",description:H.GENERATE_SANDBOXED_UI_DESCRIPTION,parameters:Lr,handler:async()=>"UI generated",followUp:!0,render:Zr}]:[]),G=t.computed(()=>{const L=[{activityType:Wn.MCPAppsActivityType,content:Wn.MCPAppsActivityContentSchema,render:Mr}];return E.value&&L.push({activityType:Vr,content:Pr,render:jr}),M.value&&L.unshift(Or({theme:o.a2ui?.theme??n,catalog:o.a2ui?.catalog,loadingComponent:o.a2ui?.loadingComponent})),L}),ee=t.computed(()=>[...o.renderActivityMessages??[],...G.value]),le=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)},_e=()=>{const L=new Nr({runtimeUrl:v.value,runtimeTransport:o.useSingleEndpoint===!0?"single":o.useSingleEndpoint===!1?"rest":"auto",headers:m.value,credentials:o.credentials,messageFilter:o.messageFilter,properties:F.value,agents__unsafe_dev_only:f.value,tools:A.value,renderToolCalls:T.value,renderActivityMessages:ee.value,renderCustomMessages:O.value,debug:o.debug});return le(L),L},J=t.shallowRef(_e()),Ee=t.ref(!1),Re=t.ref(new Set);t.watch(J,(L,fe,pe)=>{const Ue=L.subscribe({onToolExecutionStart:({toolCallId:je})=>{Re.value=new Set(Re.value).add(je)},onToolExecutionEnd:({toolCallId:je})=>{setTimeout(()=>{const Se=new Set(Re.value);Se.delete(je),Re.value=Se,t.triggerRef(J)},0)}}),Ve=L.subscribe({onRenderToolCallsChanged:()=>{t.triggerRef(J)}}),xe=L.subscribe({onRenderCustomMessagesChanged:()=>{t.triggerRef(J)}}),Be=L.subscribe({onRuntimeConnectionStatusChanged:()=>{N.value=L.a2uiEnabled,z.value=L.openGenerativeUIEnabled,D.value=L.licenseStatus,U.value=L.runtimeEntitlements,_.value=L.runtimeEntitlementRetryPending,t.triggerRef(J)}}),Ze=L.subscribe({onError:je=>{o.onError?.({error:je.error,code:je.code,context:je.context})}}),rt=L.subscribe({onHeadersChanged:()=>{t.triggerRef(J)}});pe(()=>{Ue.unsubscribe(),Ve.unsubscribe(),xe.unsubscribe(),Be.unsubscribe(),Ze.unsubscribe(),rt.unsubscribe()})},{immediate:!0}),t.watch([A],([L])=>{Ee.value&&J.value.setTools(L)}),t.watch([T],([L])=>{Ee.value&&J.value.setRenderToolCalls(L)}),t.watch([O],([L])=>{Ee.value&&(J.value.setRenderCustomMessages(L),t.triggerRef(J))}),t.watch([ee],([L])=>{Ee.value&&(J.value.setRenderActivityMessages(L),t.triggerRef(J))});let Je=m.value;function Xe(){J.value.setRuntimeUrl(v.value),J.value.setRuntimeTransport(o.useSingleEndpoint===!0?"single":o.useSingleEndpoint===!1?"rest":"auto"),m.value!==Je&&(Je=m.value,J.value.setHeaders(m.value)),J.value.setCredentials(o.credentials),J.value.setMessageFilter(o.messageFilter),J.value.setProperties(F.value),J.value.setAgents__unsafe_dev_only(f.value),J.value.setDebug(o.debug),le(J.value)}t.watch([()=>v.value,()=>m.value,()=>o.credentials,()=>o.messageFilter,()=>F.value,()=>f.value,()=>o.useSingleEndpoint,()=>o.debug],()=>{Ee.value&&Xe()}),t.watch(()=>o.defaultThrottleMs,()=>{Ee.value&&(le(J.value),t.triggerRef(J))}),t.onMounted(()=>{Xe(),N.value=J.value.a2uiEnabled,z.value=J.value.openGenerativeUIEnabled,D.value=J.value.licenseStatus,U.value=J.value.runtimeEntitlements,_.value=J.value.runtimeEntitlementRetryPending,Ee.value=!0});const Pe=t.computed(()=>o.a2ui?.theme),et=t.computed(()=>o.a2ui?.catalog),Ye=t.computed(()=>o.a2ui?.loadingComponent),Le=t.computed(()=>o.a2ui?.includeSchema??!0);Ou(J,()=>M.value),id(J,{enabled:()=>M.value,catalog:()=>o.a2ui?.catalog,includeSchema:()=>o.a2ui?.includeSchema??!0});const be=t.ref([]);t.watch([E,ne,()=>o.openGenerativeUI?.designSkill],([L,fe,pe],Ue,Ve)=>{if(!L)return;const xe=[];if(xe.push(J.value.addContext({description:"Design guidelines for the generateSandboxedUi tool. Follow these when building UI.",value:pe??Sd})),fe.length>0){const Be=JSON.stringify(fe.map(Ze=>({name:Ze.name,description:Ze.description,parameters:H.schemaToJsonSchema(Ze.parameters,{zodToJsonSchema:$})})));xe.push(J.value.addContext({description:"Sandbox functions available in generated sandboxed UI code. Call via Websandbox.connection.remote.<functionName>(args).",value:Be}))}be.value=xe,Ve(()=>{for(const Be of xe)J.value.removeContext(Be)})},{immediate:!0}),t.provide(_r,{copilotkit:J,executingToolCallIds:Re,a2uiTheme:Pe,a2uiCatalog:et,a2uiLoadingComponent:Ye,a2uiIncludeSchema:Le}),t.provide($r,ne);const V=t.computed(()=>U.value?.status!=="ready"&&U.value?.error.retryable===!0),ie=t.computed(()=>U.value!==void 0&&U.value.status!=="ready"),Te=t.computed(()=>D.value==="valid"||D.value==="expiring"),Qe=t.computed(()=>V.value&&_.value&&!Te.value),Oe=t.computed(()=>ie.value&&!V.value&&!Te.value),it=t.computed(()=>{const L=H.createLicenseContextValue(Qe.value?void 0:D.value,U.value);return Oe.value?{...L,checkFeature:()=>!1,getLimit:()=>null}:L});t.provide(Fn,it);const at=t.computed(()=>Qe.value?void 0:it.value.status??void 0),dt=t.computed(()=>at.value==="none"&&!d.value),vt=t.computed(()=>at.value==="expired"),ct=t.computed(()=>at.value==="invalid"),ut=t.computed(()=>at.value==="expiring");return(L,fe)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.renderSlot(L.$slots,"default"),a.value?(t.openBlock(),t.createBlock(Ar,{key:0,core:J.value,"open-request":s.value},null,8,["core","open-request"])):t.createCommentVNode("",!0),dt.value?(t.openBlock(),t.createBlock(Zt,{key:1,type:"no_license"})):t.createCommentVNode("",!0),vt.value?(t.openBlock(),t.createBlock(Zt,{key:2,type:"expired"})):t.createCommentVNode("",!0),ct.value?(t.openBlock(),t.createBlock(Zt,{key:3,type:"invalid"})):t.createCommentVNode("",!0),ut.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 vo(e){return e!==null&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"}function Gr(e){const n=t.shallowRef(t.toValue(e));return t.watch(()=>t.toValue(e),o=>{const a=n.value;a!==o&&(vo(a)&&vo(o)&&Cd(a,o)||(n.value=o))},{immediate:!0}),n}const Wr="(max-width: 767px)";function bo(){return typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia(Wr).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=Gr(t.computed(()=>n.labels)),l=t.computed(()=>({...ot,...a.value?.labels,...i.value})),c=t.computed(()=>n.agentId??a.value?.agentId??H.DEFAULT_AGENT_ID),u=H.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(_,E){if(r.value){console.warn("[CopilotKit] Ignoring setActiveThreadId(): threadId is controlled via the `threadId` prop on CopilotChatConfigurationProvider.");return}s.value={threadId:_,explicit:E?.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:H.randomUUID(),explicit:!1}}const y=t.ref(!1),x=t.ref(0);function S(_){y.value=_,_&&bo()&&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),D=t.computed(()=>{const _=k.value;if(_)return E=>{E&&bo()&&O.value?.(!1),_(E)}}),U=t.computed(()=>({labels:l.value,agentId:c.value,threadId:p.value,hasExplicitThreadId:g.value,isModalOpen:b.value,setModalOpen:D.value,drawerOpen:T.value,setDrawerOpen:O.value,drawerRegistered:N.value,registerDrawer:z.value,setActiveThreadId:m,startNewThread:v}));return t.provide(vn,U),(_,E)=>t.renderSlot(_.$slots,"default")}});function Bt(){const e=t.inject(Fn,Hr(),!0);return t.computed(()=>e.value)}function Ae(){const e=t.inject(vn,void 0);return t.computed(()=>e?.value??null)}const Kr=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(Kr,{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(Kr,{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"},ko="default",qr=t.defineComponent({__name:"A2UISurfaceActivityRenderer",props:{activityType:{},content:{},message:{},agent:{},theme:{},catalog:{}},setup(e){const n=e,{copilotkit:o}=De(),a=t.shallowRef(null),r=t.ref(0),s=t.ref(null);let i="";function l(){if(!a.value){const h=n.catalog??St;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)??ko;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)??ko;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 Jr(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=H.partialJSONParse(e.function.arguments);if(a)return{name:e.function.name,args:r,status:re.ToolCallStatus.Complete,result:Mo.contentToText(a.content),toolCall:e,toolMessage:a};const s=o.has(e.id);return{name:e.function.name,args:r,status:s?re.ToolCallStatus.Executing:re.ToolCallStatus.InProgress,result:void 0,toolCall:e,toolMessage:void 0}}function Md(e,n,o){const a=Dn(n,e.id),r=H.partialJSONParse(e.function.arguments);return a?{name:e.function.name,toolCallId:e.id,args:r,status:re.ToolCallStatus.Complete,result:Mo.contentToText(a.content)}:o.has(e.id)?{name:e.function.name,toolCallId:e.id,args:r,status:re.ToolCallStatus.Executing,result:void 0}:{name:e.function.name,toolCallId:e.id,args:r&&typeof r=="object"?r:{},status:re.ToolCallStatus.InProgress,result:void 0}}function Nd(e,n,o,a,r=H.DEFAULT_AGENT_ID){return[e.id,e.function.name,e.function.arguments,Dn(n,e.id)?.content,o.has(e.id),Jr(e,a,r)?.render]}const Od=t.defineComponent({__name:"CopilotChatToolCallItem",props:{toolCall:{},messages:{default:()=>[]}},setup(e){const n=e,{copilotkit:o,executingToolCallIds:a}=De(),r=Ae();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??H.DEFAULT_AGENT_ID;return Jr(n.toolCall,o.value.renderToolCalls,u)}function c(){const u=r.value?.agentId??H.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)])])}}),Xr=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 yo=!1;function Yr(){t.onMounted(()=>{if(yo||typeof document>"u")return;yo=!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"],So="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",wo="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",Co="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",Qr=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}){Yr();const o=e,a=n,r=Ae(),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 ee=new URL($,"https://copilotkit.local").pathname.split("/").filter(Boolean).pop();if(ee)return decodeURIComponent(ee)}catch{return Y}return Y}function p($,Y){if(typeof document>"u")return;const G=document.createElement("a");G.href=$,G.download=Y,G.rel="noopener noreferrer",document.body.appendChild(G),G.click(),document.body.removeChild(G)}function g($){const Y=Array.from($.querySelectorAll("thead th")).map(ee=>(ee.textContent??"").trim()),G=Array.from($.querySelectorAll("tbody tr")).map(ee=>Array.from(ee.querySelectorAll("td")).map(le=>(le.textContent??"").trim()));return{headers:Y,rows:G}}function h($,Y){const G=le=>{const _e=le.includes(Y)||le.includes('"')||le.includes(`
52
+ `),J=le.replace(/"/g,'""');return _e?`"${J}"`:J},ee=[];$.headers.length>0&&ee.push($.headers.map(G).join(Y));for(const le of $.rows)ee.push(le.map(G).join(Y));return ee.join(`
53
+ `)}function d($){if($.headers.length===0)return $.rows.map(ee=>`| ${ee.join(" | ")} |`).join(`
54
+ `);const Y=`| ${$.headers.map(()=>"---").join(" | ")} |`,G=$.rows.map(ee=>`| ${ee.join(" | ")} |`);return[`| ${$.headers.join(" | ")} |`,Y,...G].join(`
55
+ `)}function f($,Y,G){if(typeof document>"u")return;const ee=new Blob([$],{type:G}),le=URL.createObjectURL(ee);p(le,Y),URL.revokeObjectURL(le)}const C=t.defineComponent({name:"CopilotMarkdownImage",inheritAttrs:!1,props:{src:{type:String,default:""},alt:{type:String,default:""}},setup($,{attrs:Y}){async function G(){if(!$.src)return;const ee=u($.src,"image");try{const le=await fetch($.src);if(!le.ok)throw new Error("Failed to fetch image");const _e=await le.blob(),J=URL.createObjectURL(_e);p(J,ee),URL.revokeObjectURL(J)}catch{p($.src,ee)}}return()=>{const ee={...Y,src:$.src,alt:$.alt,class:["cpk:max-w-full cpk:rounded-lg",Y.class].filter(Boolean).join(" "),"data-streamdown":"image"};return delete ee.className,t.h("div",{class:"cpk:group cpk:relative cpk:my-4 cpk:inline-block","data-streamdown":"image-wrapper"},[t.h("img",ee),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:G},[t.h(me.Download,{class:"cpk:size-[14px]"})])])}}}),b=t.defineComponent({name:"CopilotMarkdownTable",inheritAttrs:!1,setup($,{attrs:Y,slots:G}){const ee=t.ref(null),le=t.ref(!1),_e=t.ref(!1),J=t.ref(!1);let Ee=null;const Re=()=>{le.value=!1,_e.value=!1},Je=()=>{Ee&&clearTimeout(Ee),J.value=!0,Ee=setTimeout(()=>{J.value=!1,Ee=null},2e3)},Xe=()=>ee.value?ee.value.querySelector("table"):null,Pe=()=>{const be=Xe();return be?g(be):null},et=async be=>{const V=Pe();if(!V)return;const Te=h(V,be==="csv"?",":" ");if(typeof navigator<"u"&&navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(Te)}catch{return}Re(),Je()},Ye=be=>{const V=Pe();V&&(be==="csv"?f(h(V,","),"table.csv","text/csv"):f(d(V),"table.md","text/markdown"),Re())},Le=be=>{if(!ee.value)return;const V=be.target;V&&!ee.value.contains(V)&&Re()};return t.onMounted(()=>{typeof document<"u"&&document.addEventListener("mousedown",Le)}),t.onBeforeUnmount(()=>{Ee&&clearTimeout(Ee),typeof document<"u"&&document.removeEventListener("mousedown",Le)}),()=>{const be={...Y,class:["cpk:w-full cpk:border-collapse cpk:border cpk:border-border",Y.class].filter(Boolean).join(" "),"data-streamdown":"table"};return delete be.className,t.h("div",{ref:ee,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:So,title:"Copy table",onClick:()=>{le.value=!le.value,_e.value=!1}},[J.value?t.h(me.Check,{class:"cpk:size-[14px]"}):t.h(me.Copy,{class:"cpk:size-[14px]"})]),le.value?t.h("div",{class:wo},[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:So,title:"Download table",onClick:()=>{_e.value=!_e.value,le.value=!1}},[t.h(me.Download,{class:"cpk:size-[14px]"})]),_e.value?t.h("div",{class:wo},[t.h("button",{type:"button",class:Ht,title:"Download table as CSV",onClick:()=>Ye("csv")},"CSV"),t.h("button",{type:"button",class:Ht,title:"Download table as Markdown",onClick:()=>Ye("markdown")},"Markdown")]):null])]),t.h("div",{class:"cpk:overflow-x-auto"},[t.h("table",be,G.default?G.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 G=null;const ee=async()=>{if($.code){if(typeof navigator<"u"&&navigator.clipboard?.writeText)try{await navigator.clipboard.writeText($.code)}catch{return}G&&clearTimeout(G),Y.value=!0,G=setTimeout(()=>{Y.value=!1,G=null},2e3)}};return t.onBeforeUnmount(()=>{G&&clearTimeout(G)}),()=>t.h("button",{type:"button",class:Co,title:"Copy Code","data-streamdown":"code-block-copy-button",onClick:ee},[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 G=k[$.language.toLowerCase()]??"txt";f($.code,`file.${G}`,"text/plain")};return()=>t.h("button",{type:"button",class:Co,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(G=>G&&typeof G=="object"&&"type"in G&&G.type==="text"&&typeof G.text=="string"?G.text:"").filter(G=>G.length>0).join(`
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"),D=t.computed(()=>o.messages[o.messages.length-1]?.id===o.message.id),U=t.computed(()=>o.toolbarVisible&&A.value&&!(o.isRunning&&D.value));function _(){l&&clearTimeout(l),i.value=!0,l=setTimeout(()=>{i.value=!1,l=null},2e3)}async function E(){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 j(){a("thumbs-up",o.message)}function M(){a("thumbs-down",o.message)}function F(){a("read-aloud",o.message)}function ne(){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:U.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:E,onThumbsUp:j,onThumbsDown:M,onReadAloud:F,onRegenerate:ne},()=>[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($o.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(Xr,{message:e.message,messages:e.messages},t.createSlots({_:2},[t.renderList($.$slots,(G,ee)=>({name:ee,fn:t.withCtx(le=>[t.renderSlot($.$slots,ee,t.normalizeProps(t.guardReactiveProps(le)))])}))]),1032,["message","messages"])]),U.value?t.renderSlot($.$slots,"toolbar",{key:0,message:e.message,shouldShowToolbar:U.value},()=>[t.createElementVNode("div",Bd,[t.createElementVNode("div",Fd,[t.renderSlot($.$slots,"copy-button",{onCopy:E,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:E},[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:j,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:j},[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:F,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:F},[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:ne,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:ne},[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 kt extends Error{constructor(n){super(n),this.name="AudioRecorderError"}}const es=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 kt("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 kt("Microphone permission denied"):y instanceof Error&&y.name==="NotFoundError"?new kt("No microphone found"):new kt(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 kt("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 kt("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 j=l.value.fftSize,M=new Uint8Array(j);l.value.getByteTimeDomainData(M);const F=m(M),Y=F>d.value?.12:.08;d.value+=(F-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 D=window.getComputedStyle(y);x.fillStyle=D.color,x.globalAlpha=f.value;const U=S.height/2,_=S.height/2-2,E=12;for(let j=0;j<g.value.length;j+=1){const M=g.value[j]??0,F=Math.min(M*4,1),ne=Math.max(2,F*_*2),$=S.width-(g.value.length-j)*N-h.value,Y=U-ne/2;if($+T<=0||$>=S.width)continue;let G=1;$<E?G=Math.max(0,$/E):$>S.width-E&&(G=Math.max(0,(S.width-$)/E)),x.globalAlpha=f.value*G,x.fillRect($,Y,T,ne)}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 ts=(e=>(e.OnMessagesChanged="OnMessagesChanged",e.OnStateChanged="OnStateChanged",e.OnRunStatusChanged="OnRunStatusChanged",e))(ts||{});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 "${H.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=Ae(),i=t.computed(()=>t.toValue(e.agentId)??s.value?.agentId??H.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}=De(),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)=>{const S=new re.ProxiedCopilotRuntimeAgent({runtimeUrl:y,agentId:v,transport:x,runtimeMode:"pending"});return u.value.applyHeadersToAgent(S),S},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 U=d.value===N;d.value=N,f.value=N,U&&t.triggerRef(d);return}const z=C.get(v);if(z){y.applyHeadersToAgent(z),d.value=z,f.value=z;return}const D=new re.ProxiedCopilotRuntimeAgent({runtimeUrl:y.runtimeUrl,agentId:v,runtimeAgentId:l.value,transport:y.runtimeTransport,runtimeMode:"pending"});y.applyHeadersToAgent(D),C.set(v,D),d.value=D,f.value=D;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===re.CopilotKitCoreRuntimeConnectionStatus.Disconnected||A===re.CopilotKitCoreRuntimeConnectionStatus.Connecting||A===re.CopilotKitCoreRuntimeConnectionStatus.Error)){const N=C.get(v);if(N){y.applyHeadersToAgent(N),d.value=N,f.value=N;return}const z=b(v,y.runtimeUrl,y.runtimeTransport);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.value,()=>u.value.agents,()=>u.value.runtimeConnectionStatus,()=>u.value.runtimeUrl,()=>u.value.runtimeTransport,()=>u.value.ɵheadersGeneration],m,{immediate:!0}),t.watch([()=>d.value,c],([v,y])=>{!v||!y||(v.threadId=y)},{immediate:!0}),t.watch([f,()=>u.value.ɵheadersGeneration],([v])=>{re.ɵ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 D=u.value.subscribeToAgentWithOptions(v,z,{throttleMs:t.toValue(e.throttleMs)});S(()=>{T=!1,D.unsubscribe()})},{immediate:!0}),{agent:d}}function ns(e={}){const{copilotkit:n}=De(),o=Ae(),a=t.computed(()=>t.toValue(e.agentId)??o.value?.agentId??H.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 os(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=>!H.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=>H.matchesAcceptFilter(T,y));for(const T of A){if(H.exceedsMaxSize(T,x)){v?.onUploadFailed?.({reason:"file-too-large",file:T,message:`File "${T.name}" exceeds the maximum size of ${H.formatFileSize(x)}`});continue}const O=H.getModalityFromMimeType(T.type),N=H.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,D;if(v?.onUpload){const _=await v.onUpload(T),{metadata:E,...j}=_;z=j,D=E}else z={type:"data",value:await H.readFileAsBase64(T),mimeType:T.type};let U;O==="video"&&(U=await H.generateVideoThumbnail(T)),u(_=>_.map(E=>E.id===N?{...E,source:z,status:"ready",thumbnail:U,metadata:D}:E))}catch(z){u(D=>D.filter(U=>U.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&&H.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 yt 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 yt({code:H.TranscriptionErrorCode.INVALID_REQUEST,message:"Runtime URL is not configured",retryable:!1});const r={...await e.resolveHeaders()};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 yt({code:H.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 yt({code:H.TranscriptionErrorCode.PROVIDER_ERROR,message:`HTTP ${s.status}: ${s.statusText}`,retryable:s.status>=500})}throw Hd(i)?new yt(Gd(i)):new yt({code:H.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 as(){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},rs=Symbol("LastUserMessage");function qd(){return t.ref({...Kd})}function Jd({scrollRef:e,contentRef:n,spacerRef:o,topOffset:a=16}){const r=t.inject(rs,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=To(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=To(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 To(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"},At=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=Ae(),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 D=null,U=null;const _=t.computed(()=>o.modelValue!==void 0),E=t.computed(()=>_.value?o.modelValue??"":f.value),j=t.computed(()=>s.value?.labels??ot),M=t.computed(()=>o.placeholder??j.value.chatInputPlaceholder),F=t.computed(()=>o.mode==="input"&&b.value==="expanded"),ne=t.computed(()=>o.mode!=="transcribe"&&o.isRunning),$=t.computed(()=>o.showDisclaimer??o.positioning==="absolute"),Y=t.computed(()=>typeof o.onSubmitMessage=="function"),G=t.computed(()=>typeof o.onStop=="function"),ee=t.computed(()=>typeof o.onAddFile=="function"),le=t.computed(()=>typeof o.onStartTranscribe=="function"),_e=t.computed(()=>typeof o.onCancelTranscribe=="function"),J=t.computed(()=>typeof o.onFinishTranscribe=="function"||typeof o.onFinishTranscribeWithAudio=="function"),Ee=t.computed(()=>o.mode==="input"&&!o.disabled&&Y.value&&E.value.trim().length>0),Re=t.computed(()=>ne.value?!G.value:!Ee.value),Je=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]),Xe=t.computed(()=>{const w={...r};return delete w.class,w});function Pe(w){return Array.isArray(w.items)}function et(){return ee.value?{label:j.value.chatInputToolbarAddButtonLabel,action:()=>a("add-file")}:null}function Ye(){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(()=>Ye()),be=t.computed(()=>Le.value.length>0);function V(w){const B=new Set,K=[],ae=we=>{for(const de of we)if(de!=="-"){if(Pe(de)&&de.items.length>0){ae(de.items);continue}!de.action||B.has(de.label)||(B.add(de.label),K.push(de))}};return ae(w),K}const ie=t.computed(()=>V(Le.value));function Te(w,B=0,K="root"){const ae=[];for(const[we,de]of w.entries()){const $e=`${K}-${we}`;if(de==="-"){ae.push({type:"separator",key:`sep-${$e}`});continue}if(Pe(de)&&de.items.length>0){ae.push({type:"label",key:`label-${$e}`,label:de.label,depth:B}),ae.push(...Te(de.items,B+1,$e));continue}de.action&&ae.push({type:"item",key:`item-${$e}`,label:de.label,depth:B,action:de.action})}return ae}const Qe=t.computed(()=>Te(Le.value)),Oe=t.computed(()=>{if(k.value===null||ie.value.length===0)return[];const w=k.value.trim().toLowerCase();if(w.length===0)return ie.value;const B=[],K=[];for(const ae of ie.value){const we=ae.label.toLowerCase();if(we.startsWith(w)){B.push(ae);continue}we.includes(w)&&K.push(ae)}return[...B,...K]}),it=t.computed(()=>k.value!==null&&ie.value.length>0);function at(w){_.value||(f.value=w),a("update:modelValue",w)}function dt(){at("")}function vt(w){if(ie.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 ct(w){dt(),w.action?.(),k.value=null,m.value=0,requestAnimationFrame(()=>{l.value?.focus()})}function ut(){if(o.mode!=="input"||o.disabled||!Y.value)return;const B=(l.value?.value??E.value).trim();B&&(a("submit-message",B),o.clearOnSubmit&&dt(),l.value?.focus())}function L(w){const B=w.target.value;at(B),vt(B)}function fe(){if(ne.value){G.value&&a("stop");return}ut()}function pe(w){if(!o.disabled&&!(C.value||w.isComposing||w.keyCode===229)){if(k.value!==null&&o.mode==="input"){if(w.key==="ArrowDown"){Oe.value.length>0&&(w.preventDefault(),m.value=m.value<0?0:(m.value+1)%Oe.value.length);return}if(w.key==="ArrowUp"){Oe.value.length>0&&(w.preventDefault(),m.value<0?m.value=Oe.value.length-1:m.value=m.value<=0?Oe.value.length-1:m.value-1);return}if(w.key==="Enter"){const B=m.value>=0?Oe.value[m.value]:void 0;if(B){w.preventDefault(),ct(B);return}}if(w.key==="Escape"){w.preventDefault(),k.value=null;return}}if(w.key==="Enter"&&!w.shiftKey&&o.mode==="input"){if(w.preventDefault(),ne.value){G.value&&a("stop");return}ut()}}}function Ue(){!be.value||o.mode==="transcribe"||o.disabled||(y.value=!y.value)}function Ve(){y.value=!1}function xe(w){w(),Ve(),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 Ze(w){const B=w.target;!B||o.mode!=="input"||B.tagName==="BUTTON"||B.closest("button")||l.value?.focus()}function rt(){const w=l.value;if(!w||C.value)return;const B=w.value,K=w.style.height;w.style.height="auto";const ae=window.getComputedStyle(w),we=parseFloat(ae.paddingLeft)||0,de=parseFloat(ae.paddingRight)||0,$e=parseFloat(ae.paddingTop)||0,He=parseFloat(ae.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:we,paddingRight:de},w.style.height=K,w.style.maxHeight=`${nt}px`}function je(){const w=l.value;if(!w)return 0;x.value.singleLineHeight===0&&rt();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 Se(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 Z(){const w=c.value,B=u.value,K=p.value;if(!w||!B||!K)return O.value=null,null;const ae=window.getComputedStyle(w),we=parseFloat(ae.paddingLeft)||0,de=parseFloat(ae.paddingRight)||0,$e=parseFloat(ae.columnGap)||0,He=w.clientWidth-we-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 oe(){if(o.mode!=="input"){Se("compact");return}if(typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 767px)").matches){rt(),je(),Se("expanded");return}const w=l.value;if(!w||!c.value||!u.value||!p.value)return;x.value.singleLineHeight===0&&rt();const B=je(),K=x.value.singleLineHeight,ae=E.value.includes(`
57
+ `),we=K>0?B>K+1:!1;let de=ae||we;if(!de){const $e=O.value??Z();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=E.value.length>0?E.value.split(`
58
+ `):[""];let Ct=0;for(const Ke of We){const Fe=tt.measureText(Ke||" ").width;Fe>Ct&&(Ct=Fe)}Ct>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."))}}}Se(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,oe()})}return t.watch(()=>o.modelValue,w=>{_.value&&(f.value=w??"")}),t.watch(E,w=>{vt(w),oe()}),t.watch(ie,()=>{ie.value.length===0&&(k.value=null)}),t.watch([k,()=>Oe.value.length],([w,B])=>{w!==null&&w!==v.value&&B>0&&(m.value=0),v.value=w},{immediate:!0}),t.watch([k,Oe],()=>{if(k.value===null){m.value=0;return}if(Oe.value.length===0){m.value=-1;return}(m.value<0||m.value>=Oe.value.length)&&(m.value=0)},{immediate:!0}),t.watch(()=>o.mode,async w=>{w!=="input"&&(b.value="compact",k.value=null,Ve());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(!it.value||w<0)return;await t.nextTick(),g.value?.querySelector(`[data-slash-index="${w}"]`)?.scrollIntoView?.({block:"nearest"})}),t.watch(()=>o.disabled,w=>{w&&Ve()}),t.onMounted(()=>{if(o.autoFocus&&o.mode==="input"&&l.value?.focus(),oe(),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),D=new ResizeObserver(B=>{const K=B.some(ae=>w.has(ae.target));W(K)}),c.value&&D.observe(c.value),u.value&&D.observe(u.value),p.value&&D.observe(p.value),l.value&&D.observe(l.value)}U=w=>{if(!y.value)return;const B=w.target;B&&(h.value?.contains(B)||u.value?.contains(B)||Ve())},document.addEventListener("mousedown",U)}),t.onBeforeUnmount(()=>{U&&(document.removeEventListener("mousedown",U),U=null),D?.disconnect(),D=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:Je.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)"}:{}}},Xe.value),[t.createElementVNode("div",Xd,[t.renderSlot(w.$slots,"layout",{mode:e.mode,isMultiline:F.value,value:E.value,disabled:e.disabled,placeholder:M.value,isProcessing:ne.value,sendDisabled:Re.value,menuOpen:y.value,menuItems:Qe.value,onToggleMenu:Ue,onMenuAction:xe,onUpdateValue:at,onSubmit:ut,onKeydown:pe,onSendClick:fe,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":F.value?"expanded":"compact",onClick:Ze},[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",F.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":F.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",F.value?"cpk:row-start-2":"cpk:row-start-1"])},[t.renderSlot(w.$slots,"add-menu-button",{disabled:e.disabled||e.mode==="transcribe"||!be.value,menuOpen:y.value,toggleMenu:Ue,labels:j.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-add","aria-label":j.value.chatInputToolbarAddButtonLabel,disabled:e.disabled||e.mode==="transcribe"||!be.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(Ue,["stop"])},[t.createVNode(t.unref(me.Plus),{class:"cpk:size-[20px]"})],8,ep)]),y.value&&be.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(Qe.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:ae=>xe(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",F.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(es,{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:E.value,disabled:e.disabled,placeholder:M.value,onInput:L,onKeydown:pe,autoFocus:e.autoFocus,isExpanded:F.value,rows:1,labels:j.value},()=>[t.createElementVNode("textarea",{ref_key:"textareaRef",ref:l,"data-testid":"copilot-chat-input-textarea",value:E.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]",F.value?"cpk:px-5":"cpk:pr-5"]),style:{overflow:"auto",resize:"none"},onInput:L,onKeydown:pe,onCompositionstart:B[0]||(B[0]=K=>C.value=!0),onCompositionend:B[1]||(B[1]=K=>C.value=!1)},null,42,ap)]),it.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"}},[Oe.value.length===0?(t.openBlock(),t.createElementBlock("div",rp," No commands found ")):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(Oe.value,(K,ae)=>(t.openBlock(),t.createElementBlock("button",{key:`${K.label}-${ae}`,type:"button",role:"option","data-slash-index":ae,"aria-selected":ae===m.value,"data-active":ae===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]",ae===m.value?"cpk:bg-muted cpk:dark:bg-[#2f2f2f]":"cpk:bg-transparent"]),onMouseenter:we=>m.value=ae,onMousedown:t.withModifiers(we=>ct(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",F.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},[_e.value||w.$slots["cancel-transcribe-button"]?t.renderSlot(w.$slots,"cancel-transcribe-button",{key:0,disabled:e.disabled,onClick:()=>a("cancel-transcribe"),labels:j.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-cancel-transcribe","aria-label":j.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),J.value||w.$slots["finish-transcribe-button"]?t.renderSlot(w.$slots,"finish-transcribe-button",{key:1,disabled:e.disabled,onClick:Be,labels:j.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-finish-transcribe","aria-label":j.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},[le.value||w.$slots["start-transcribe-button"]?t.renderSlot(w.$slots,"start-transcribe-button",{key:0,disabled:e.disabled,onClick:()=>a("start-transcribe"),labels:j.value},()=>[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-start-transcribe","aria-label":j.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:Re.value,isProcessing:ne.value,onClick:fe},()=>[t.createElementVNode("div",up,[t.createElementVNode("button",{type:"button","data-testid":"copilot-chat-input-send","aria-label":"Send message",disabled:Re.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:fe},[ne.value&&G.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:j.value},()=>[t.createElementVNode("p",pp,t.toDisplayString(j.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(H.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(H.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(H.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(H.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(H.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(H.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(H.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(H.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(H.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"},ss=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($o.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"],is=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=Ae(),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(`
59
+ `):""}const p=t.computed(()=>u(o.message.content)),g=t.computed(()=>p.value.includes(`
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)])}}),ls=t.defineComponent({__name:"CopilotChatMessageView",props:{messages:{default:()=>[]},isRunning:{type:Boolean,default:!1}},setup(e){const n=e,{copilotkit:o}=De(),a=Ae(),r=t.ref(0),s=t.ref(null),i=t.useSlots(),l=t.computed(()=>Object.keys(i)),c=t.computed(()=>a.value?.agentId??H.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=H.createRowKeyStore(),d=t.computed(()=>H.resolveRowRenderKeysById(h,g.value));t.onMounted(()=>H.commitRowKeyStore(h,g.value)),t.watch(g,S=>H.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}`,D=u.value??O.getAgent(A),U=N&&D?D.messages.filter($=>O.getRunIdForMessage(A,T,$.id)===N).map($=>$.id):[S.id],_=D?D.messages.findIndex($=>$.id===S.id):-1,E=_>=0?_:0,j=N?Math.max(U.indexOf(S.id),0):0,M=N?U.length:1;let F,ne=!1;return{runId:z,messageIndex:E,messageIndexInRun:j,numberOfMessagesInRun:M,agentId:A,get stateSnapshot(){return ne||(ne=!0,F=N?O.getStateByRun(A,T,N):void 0),F}}}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(D=>D.agentId===void 0||D.agentId===O).sort((D,U)=>{const _=D.agentId!==void 0,E=U.agentId!==void 0;return _===E?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 D=N.agentId!==void 0,U=z.agentId!==void 0;return D===U?0:D?-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(Qr,{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(is,{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(ss,{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"},cs=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))}}),_t=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(cs,{"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,Ft=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=Ae(),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}=as(),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 D=null,U=null;function _(){if(typeof ResizeObserver>"u")return;D?.disconnect(),D=null;const V=p.value;V&&(D=new ResizeObserver(ie=>{const Te=h.value,Qe=ie[0]?.contentRect?.height;typeof Qe=="number"?g.value=Qe:M(),j(),b.value&&Te&&F("auto")}),D.observe(V))}function E(){if(typeof ResizeObserver>"u")return;U?.disconnect(),U=null;const V=c.value;V&&(U=new ResizeObserver(()=>{const ie=h.value;j(),b.value&&ie&&F("auto")}),U.observe(V))}t.watch(O,async V=>{V||(await t.nextTick(),M(),_(),E())}),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)&&(F("auto"),typeof requestAnimationFrame=="function"&&requestAnimationFrame(()=>{F("auto")}))},{deep:!0});function j(){const V=l.value;if(!V){h.value=!0;return}const ie=V.scrollHeight-V.scrollTop-V.clientHeight;h.value=ie<=Tm}function M(){const V=p.value;g.value=V?.offsetHeight??0}function F(V="smooth"){const ie=l.value;ie&&(typeof ie.scrollTo=="function"?ie.scrollTo({top:ie.scrollHeight,behavior:V}):ie.scrollTop=ie.scrollHeight,j())}function ne(){j()}function $(V){d.value||(f.value=V),a("input-change",V)}function Y(V){a("submit-message",V)}function G(){a("stop")}function ee(V,ie){a("select-suggestion",V,ie)}function le(){a("add-file")}function _e(V){o.onDragOver?.(V)}function J(V){o.onDragLeave?.(V)}function Ee(V){o.onDrop?.(V)}function Re(){a("start-transcribe")}function Je(){a("cancel-transcribe")}function Xe(){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=G),o.onAddFile&&(V.onAddFile=le),o.onStartTranscribe&&(V.onStartTranscribe=Re),o.onCancelTranscribe&&(V.onCancelTranscribe=Je),o.onFinishTranscribe&&(V.onFinishTranscribe=Xe),o.onFinishTranscribeWithAudio&&(V.onFinishTranscribeWithAudio=Pe),V}),Ye=t.computed(()=>!!o.onStop),Le=t.computed(()=>!!o.onAddFile),be=t.computed(()=>!!o.onStartTranscribe);return t.onMounted(async()=>{await t.nextTick(),M(),j(),b.value&&(F("auto"),typeof requestAnimationFrame=="function"&&requestAnimationFrame(()=>{F("auto")})),_(),E()}),t.onBeforeUnmount(()=>{D?.disconnect(),U?.disconnect(),D=null,U=null}),(V,ie)=>(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:_e,onDragleave:J,onDrop:Ee}),[e.dragOver?(t.openBlock(),t.createElementBlock("div",pm,[...ie[3]||(ie[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:Ye.value,canAddFile:Le.value,canTranscribe:be.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:G,onAddFile:le,onStartTranscribe:Re,onCancelTranscribe:Je,onFinishTranscribe:Xe,onFinishTranscribeWithAudio:Pe,onSelectSuggestion:ee},()=>[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:ie[0]||(ie[0]=Te=>e.onRemoveAttachment&&e.onRemoveAttachment(Te))},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:Ye.value,canAddFile:Le.value,canTranscribe:be.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:G,onAddFile:le,onStartTranscribe:Re,onCancelTranscribe:Je,onFinishTranscribe:Xe,onFinishTranscribeWithAudio:Pe},()=>[t.createVNode(At,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:ee},()=>[t.createVNode(_t,{suggestions:e.suggestions,"loading-indexes":e.suggestionLoadingIndexes,onSelectSuggestion:ee},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:ee,onScroll:ne,scrollToBottom:F},()=>[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:ne},[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(ls,{messages:e.messages,"is-running":e.isRunning},t.createSlots({_:2},[t.renderList(T.value,Te=>({name:Te,fn:t.withCtx(Qe=>[t.renderSlot(V.$slots,Te,t.normalizeProps(t.guardReactiveProps(Qe)))])}))]),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:ee},()=>[t.createVNode(_t,{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:ee},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",{},()=>[ie[4]||(ie[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:()=>F()},()=>[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:ie[1]||(ie[1]=Te=>F())},[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:ie[2]||(ie[2]=Te=>e.onRemoveAttachment&&e.onRemoveAttachment(Te))},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:Ye.value,canAddFile:Le.value,canTranscribe:be.value,onUpdateModelValue:$,onSubmitMessage:Y,onStop:G,onAddFile:le,onStartTranscribe:Re,onCancelTranscribe:Je,onFinishTranscribe:Xe,onFinishTranscribeWithAudio:Pe},()=>[t.createVNode(At,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,re.emitInspectorActiveThread({requestId:r.requestId,threadId:s,agentId:r.agentId,source:"app"})},a=r=>{const s=n.value;!s||s.requestId!==r||(re.emitInspectorViewThreadResult({requestId:r,threadId:s.threadId,agentId:s.agentId,ok:!1,reason:"connect-failed"}),o(s,s.previousThreadId))};if(re.isInspectorThreadBridgeEnabled()){const r=re.onInspectorViewThread(i=>i.agentId!==e.agentId.value?!1:(n.value=n.value?{...n.value,...i}:{...i,previousThreadId:e.baseThreadId.value},re.emitInspectorViewThreadResult({...i,ok:!0}),re.emitInspectorActiveThread({...i,source:"override"}),!0)),s=re.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=Ae(),{copilotkit:l}=De(),c=t.computed(()=>Object.keys(s).filter(Z=>Z!=="chat-view")),u=t.ref(H.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??H.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}),D=t.computed(()=>O.value??A.value),U=t.computed(()=>O.value!==null||T.value),_=t.ref(null),E=t.computed(()=>U.value&&_.value!==D.value),j=Gr(t.computed(()=>o.labels)),M=t.computed(()=>j.value),{agent:F}=rn({agentId:x,throttleMs:t.computed(()=>o.throttleMs)}),{suggestions:ne}=ns({agentId:x}),$=Bt(),Y=t.computed(()=>$.value.checkFeature("chat"));t.watch(Y,Z=>{Z||console.warn('[CopilotKit] Warning: "chat" feature is not licensed. Visit copilotkit.ai/pricing')},{immediate:!0});const G=t.computed(()=>l.value.audioFileTranscriptionEnabled),ee=t.computed(()=>typeof window<"u"&&typeof MediaRecorder<"u"),le=t.computed(()=>G.value&&ee.value),{attachments:_e,enabled:J,dragOver:Ee,fileInputRef:Re,containerRef:Je,handleFileUpload:Xe,handleDragOver:Pe,handleDragLeave:et,handleDrop:Ye,removeAttachment:Le,consumeAttachments:be}=os({config:t.computed(()=>o.attachments)}),V=t.computed(()=>d.value?"processing":p.value),ie=t.ref(0),Te=t.computed(()=>[...F.value?.messages??[]]),Qe=t.computed(()=>(ie.value,F.value?.isRunning??!1)),Oe=t.computed(()=>Qe.value&&Te.value.length>0),it=t.computed(()=>{for(let Z=Te.value.length-1;Z>=0;Z--){const oe=Te.value[Z];if(oe?.role==="user")return oe.id}return null}),at=t.ref(0);let dt=it.value;t.watch(it,Z=>{Z&&Z!==dt&&(at.value+=1,dt=Z)});const vt=t.computed(()=>({id:it.value,sendNonce:at.value}));t.provide(rs,vt),t.watch(()=>F.value,(Z,oe,W)=>{if(!Z)return;const w=Z.subscribe({onRunStartedEvent:()=>{ie.value+=1},onRunFinishedEvent:()=>{ie.value+=1},onRunErrorEvent:()=>{ie.value+=1}});W(()=>w.unsubscribe())},{immediate:!0}),t.watch(()=>o.inputValue,Z=>{Z!==void 0&&(g.value=Z)}),t.watch([()=>o.threadId,()=>i.value?.threadId],([Z,oe],W)=>{Z||oe||W&&(W[0]||W[1])&&(u.value=H.randomUUID())}),t.watch([()=>l.value,x,()=>o.onError],([Z,oe,W],w,B)=>{if(!W)return;const K=Z.subscribe({onError:ae=>{(ae.context?.agentId===oe||!ae.context?.agentId)&&W({error:ae.error,code:ae.code,context:ae.context})}});B(()=>K.unsubscribe())},{immediate:!0}),t.watch([()=>l.value,x,D,N],([Z,oe,W,w],B,K)=>{if(!w)return;const ae=Z.subscribe({onError:we=>{we.code===re.CopilotKitCoreErrorCode.AGENT_CONNECT_FAILED&&we.context?.agentId===oe&&we.context?.threadId===W&&z(w)}});K(()=>ae.unsubscribe())},{immediate:!0}),t.watch([f,()=>l.value,()=>F.value,D,U,N],([Z,oe,W,w,B,K],ae,we)=>{if(!Z||typeof window>"u"||!W)return;const de=b.value;if(de!==null&&de.threadId!==w&&de.inspectorRequestId!==K&&(de.inspectorRequestId!==null||K!==null))try{oe.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,Ct=We&&We.core===oe&&We.agent===W&&We.threadId===w&&We.inspectorRequestId===K;let Ke;if(Ct&&We)Ke=We;else{const Fe=new AbortController;Ke={core:oe,agent:W,threadId:w,inspectorRequestId:K,abortController:Fe,detached:!1},b.value=Ke,k=Ke,v.then(()=>{if(!Ke.detached)return re.ɵisHttpAgent(W)&&(W.abortController=Fe),oe.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:bt=>setTimeout(bt,16))(()=>{Ke.detached||(_.value=Ke.threadId)})})}we(()=>{const Fe=b.value;if(!Fe||Fe!==Ke||!(C.value||l.value!==Fe.core||F.value!==Fe.agent||D.value!==Fe.threadId))return;Fe.detached=!0,Fe.abortController.abort();const bt=Fe.agent.detachActiveRun().catch(ks=>{console.error("CopilotChat: detachActiveRun failed",ks)});m.set(Fe.agent,bt),v=Promise.all([v,bt]).then(()=>{}),bt.then(()=>{m.get(Fe.agent)===bt&&m.delete(Fe.agent)}),b.value=null})},{immediate:!0});let ct;t.watch([D,U,()=>F.value],([Z,oe,W],w,B)=>{const K=ct,ae={threadId:Z,agent:W};if(ct=ae,!W||oe||K===void 0||Z===K.threadId)return;let we=!0,de=!0;B(()=>{we=!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=()=>{!we||!de||C.value||ct!==ae||F.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,(Z,oe,W)=>{if(!Z)return;const w=setTimeout(()=>{h.value=null},5e3);W(()=>clearTimeout(w))});async function ut(){const Z=F.value;if(Z)try{const oe=b.value;oe&&oe.agent===Z&&oe.threadId===D.value&&(oe.detached=!0,oe.abortController.abort(),b.value=null,await oe.agent.detachActiveRun?.()),await l.value.runAgent({agent:Z})}catch(oe){console.error("CopilotChat: runAgent failed",oe)}}async function L(Z){if(_e.value.some(w=>w.status==="uploading")){console.error("[CopilotKit] Cannot send while attachments are uploading");return}if(a("submit-message",Z),!F.value){console.error("[CopilotKit] Cannot send message: no agent available");return}const W=be();if(W.length>0){const w=[];Z.trim()&&w.push({type:"text",text:Z});for(const B of W)w.push(H.createAttachmentContent(B));F.value.addMessage({id:H.randomUUID(),role:"user",content:w})}else F.value.addMessage({id:H.randomUUID(),role:"user",content:Z});g.value="",await ut()}async function fe(Z,oe){a("select-suggestion",Z,oe),F.value?.addMessage({id:H.randomUUID(),role:"user",content:Z.message}),await ut()}function pe(){const Z=F.value;if(Z)try{l.value.stopAgent({agent:Z})}catch(oe){console.error("CopilotChat: stopAgent failed",oe);try{Z.abortRun()}catch(W){console.error("CopilotChat: abortRun fallback failed",W)}}}function Ue(){a("stop"),Oe.value&&pe()}function Ve(Z){g.value=Z,a("input-change",Z)}function xe(){a("add-file"),J.value&&setTimeout(()=>{Re.value?.click()},100)}function Be(){le.value&&(h.value=null,p.value="transcribe",a("start-transcribe"))}function Ze(){le.value&&(h.value=null,p.value="input",a("cancel-transcribe"))}function rt(){le.value&&(p.value="input",a("finish-transcribe"))}async function je(Z){if(le.value){if(o.onFinishTranscribeWithAudio){await o.onFinishTranscribeWithAudio(Z);return}d.value=!0;try{h.value=null;const oe=await Wd(l.value,Z),W=g.value.trim();g.value=W?`${W} ${oe.text}`:oe.text}catch(oe){if(console.error("CopilotChat: Transcription failed",oe),oe instanceof yt){const{code:W,retryable:w,message:B}=oe.info;switch(W){case H.TranscriptionErrorCode.RATE_LIMITED:h.value="Too many requests. Please wait a moment.";break;case H.TranscriptionErrorCode.AUTH_FAILED:h.value="Authentication error. Please check your configuration.";break;case H.TranscriptionErrorCode.AUDIO_TOO_LONG:h.value="Recording is too long. Please try a shorter recording.";break;case H.TranscriptionErrorCode.AUDIO_TOO_SHORT:h.value="Recording is too short. Please try again.";break;case H.TranscriptionErrorCode.INVALID_AUDIO_FORMAT:h.value="Audio format not supported.";break;case H.TranscriptionErrorCode.SERVICE_NOT_CONFIGURED:h.value="Transcription service is not available.";break;case H.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 Se=t.computed(()=>({messages:Te.value,autoScroll:o.autoScroll,isRunning:Qe.value,suggestions:ne.value,suggestionLoadingIndexes:[],welcomeScreen:o.welcomeScreen,attachments:_e.value,dragOver:Ee.value,inputValue:g.value,inputMode:V.value,inputToolsMenu:o.inputToolsMenu,isConnecting:E.value,hasExplicitThreadId:U.value,canStop:Oe.value,canAddFile:J.value,canTranscribe:le.value,onSubmitMessage:L,onStop:Ue,onInputChange:Ve,onSelectSuggestion:fe,onRemoveAttachment:Le,onAddFile:xe,onDragOver:J.value?Pe:void 0,onDragLeave:J.value?et:void 0,onDrop:J.value?Ye:void 0,onStartTranscribe:Be,onCancelTranscribe:Ze,onFinishTranscribe:rt,onFinishTranscribeWithAudio:je})),sn=t.computed(()=>{const Z={...r,onSubmitMessage:L,onInputChange:Ve,onSelectSuggestion:fe};return Oe.value&&(Z.onStop=Ue),J.value&&(Z.onAddFile=xe,Z.attachments=_e.value,Z.onRemoveAttachment=Le,Z.dragOver=Ee.value,Z.onDragOver=Pe,Z.onDragLeave=et,Z.onDrop=Ye),le.value&&(Z.onStartTranscribe=Be,Z.onCancelTranscribe=Ze,Z.onFinishTranscribe=rt),Z});return(Z,oe)=>(t.openBlock(),t.createBlock(an,{"agent-id":x.value,"thread-id":D.value,"has-explicit-thread-id":U.value,labels:M.value},{default:t.withCtx(()=>[t.createElementVNode("div",{ref_key:"attachmentContainerRef",ref:Je,style:{display:"contents"}},[t.unref(J)?(t.openBlock(),t.createElementBlock("input",{key:0,ref_key:"fileInputRef",ref:Re,type:"file",multiple:"",accept:o.attachments?.accept??"*/*",style:{display:"none"},onChange:oe[0]||(oe[0]=W=>{t.unref(Xe)(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(Z.$slots,"chat-view",t.normalizeProps(t.guardReactiveProps(Se.value)),()=>[t.createVNode(Ft,t.mergeProps(sn.value,{messages:Se.value.messages,"auto-scroll":Se.value.autoScroll,"is-running":Se.value.isRunning,suggestions:Se.value.suggestions,"suggestion-loading-indexes":Se.value.suggestionLoadingIndexes,"welcome-screen":Se.value.welcomeScreen,"input-value":Se.value.inputValue,"input-mode":Se.value.inputMode,"input-tools-menu":Se.value.inputToolsMenu,"is-connecting":Se.value.isConnecting,"has-explicit-thread-id":Se.value.hasExplicitThreadId,"on-finish-transcribe-with-audio":Se.value.onFinishTranscribeWithAudio}),t.createSlots({_:2},[t.renderList(c.value,W=>({name:W,fn:t.withCtx(w=>[t.renderSlot(Z.$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(()=>H.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(H.getDocumentIcon)(n.source.mimeType??"")),1),t.createElementVNode("span",Nm,t.toDisplayString(r.value),1)],2))}});function pt(e,n,o){o.value=n(e.getState());const a=e.select(n).subscribe(()=>{o.value=n(e.getState())});t.onScopeDispose(()=>a.unsubscribe())}function us(e){const{copilotkit:n}=De(),o=re.ɵ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===re.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(()=>n.value.ɵheadersGeneration),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);pt(o,re.ɵselectThreads,d),pt(o,re.ɵselectThreadsIsLoading,f),pt(o,re.ɵselectThreadsError,C),pt(o,re.ɵselectFetchMoreError,b),pt(o,re.ɵselectHasNextPage,k),pt(o,re.ɵselectIsFetchingNextPage,m),pt(o,re.ɵselectIsMutating,v),o.start(),t.onScopeDispose(()=>{o.stop()}),t.watch([i,a],([z,D],U,_)=>{z&&(n.value.registerThreadStore(D,o),_(()=>{n.value.unregisterThreadStore(D)}))},{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,D,,U,_,E,j,M,F])=>{if(!z||!M){o.setContext(null),y.value=!1;return}if(D!==re.CopilotKitCoreRuntimeConnectionStatus.Connected)return;if(!F){o.setContext(null),y.value=!1;return}const ne={runtimeUrl:z,wsUrl:U,agentId:_,includeArchived:E,limit:j};o.setContext(ne),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(...D)=>g.value?Promise.reject(g.value):z(...D)}return{threads:t.computed(()=>d.value.map(({id:z,agentId:D,name:U,archived:_,createdAt:E,updatedAt:j,lastRunAt:M})=>({id:z,agentId:D,name:U,archived:_,createdAt:E,updatedAt:j,...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,D)=>o.renameThread(z,D)),archiveThread:N(z=>o.archiveThread(z)),unarchiveThread:N(z=>o.unarchiveThread(z)),deleteThread:N(z=>o.deleteThread(z))}}const xo="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=Ae(),s=Bt(),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??H.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=us({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 F=M?.closest?.(`[data-testid="${zm}"]`);if(F){const ne=F.querySelector(`[data-testid="${xo}"]`);if(ne)return ne}return document.querySelector(`[data-testid="${xo}"]`)}function x(){y(m.value)?.focus()}function S(M){const{threadId:F}=M.detail;o.onThreadSelect?o.onThreadSelect(F):r.value?.setActiveThreadId?.(F,{explicit:!0}),x()}function A(){d.startNewThread(),o.onNewThread?o.onNewThread():r.value?.startNewThread?.()}function T(M){const{threadId:F}=M.detail;d.archiveThread(F).catch(ne=>console.error("CopilotThreadsDrawer: archiveThread failed",ne))}function O(M){const{threadId:F}=M.detail;d.unarchiveThread(F).catch(ne=>console.error("CopilotThreadsDrawer: unarchiveThread failed",ne))}function N(M){const{threadId:F}=M.detail,ne=F===u.value;d.deleteThread(F).then(()=>{ne&&A()}).catch($=>console.error("CopilotThreadsDrawer: deleteThread failed",$))}function z(){d.refetchThreads()}function D(M){const{collapsed:F}=M.detail;a("collapse-change",F)}function U(M){const{scope:F}=M.detail;F==="fetch-more"?d.fetchMoreThreads():d.refetchThreads()}function _(){d.fetchMoreThreads()}function E(M){const{open:F}=M.detail;h(F)}function j(){o.onLicensed?.()}return(M,F)=>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:D,onRetry:U,onLoadMore:_,onOpenChange:E,onLicensed:j},{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,ne=>(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:ne.id},{ref_for:!0},{slot:`row:${ne.id}`}),[t.renderSlot(M.$slots,"row",{thread:ne})],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",Io="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=Ae(),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(Io),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(Io),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))}}),ds=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})])}}}),ps=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=Ae(),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(Wr),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(ps),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(ds),{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,Eo=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=Ae(),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(_,E){return typeof _=="number"&&Number.isFinite(_)?`${_}px`:typeof _=="string"&&_.trim().length>0?_:`${E}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(_,E){a("select-suggestion",_,E)}function T(){a("add-file")}function O(){a("start-transcribe")}function N(){a("cancel-transcribe")}function z(){a("finish-transcribe")}const D=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),_}),U=t.computed(()=>({...r,...D.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},Eo))},{immediate:!0}),t.watch(g,(_,E,j)=>{if(!_||typeof window>"u")return;const M=F=>{F.key==="Escape"&&(F.preventDefault(),k())};window.addEventListener("keydown",M),j(()=>{window.removeEventListener("keydown",M)})},{immediate:!0}),t.watch(g,(_,E,j)=>{_&&(p=setTimeout(()=>{if(typeof document>"u")return;const M=i.value;M&&!M.contains(document.activeElement)&&M.focus({preventScroll:!0})},Eo),j(()=>{p&&(clearTimeout(p),p=void 0)}))},{immediate:!0}),t.watch([g,()=>o.clickOutsideToClose],([_,E],j,M)=>{if(!_||!E||typeof document>"u")return;const F=ne=>{const $=ne.target;!$||i.value?.contains($)||document.querySelector("[data-slot='chat-toggle-button']")?.contains($)||k()};document.addEventListener("pointerdown",F),M(()=>{document.removeEventListener("pointerdown",F)})},{immediate:!0}),t.onMounted(async()=>{await t.nextTick()}),t.onBeforeUnmount(()=>{u&&clearTimeout(u),p&&clearTimeout(p)}),(_,E)=>(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(Ft,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},U.value),t.createSlots({_:2},[_.$slots["message-view"]?{name:"message-view",fn:t.withCtx(j=>[t.renderSlot(_.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(j)))]),key:"0"}:void 0,_.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(j=>[t.renderSlot(_.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(j)))]),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(j=>[t.renderSlot(_.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(j)))]),key:"3"}:void 0,_.$slots.input?{name:"input",fn:t.withCtx(j=>[t.renderSlot(_.$slots,"input",t.normalizeProps(t.guardReactiveProps(j)))]),key:"4"}:void 0,_.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(j=>[t.renderSlot(_.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(j)))]),key:"5"}:void 0,_.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(j=>[t.renderSlot(_.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(j)))]),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))}}),ms=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"},fs=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=Ae(),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(_t,{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(At,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=Ae(),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:E,...j}=r;return j}),f=t.computed(()=>({"--sidebar-width":b(p.value),paddingTop:"env(safe-area-inset-top)",paddingBottom:"env(safe-area-inset-bottom)"})),C=t.computed(()=>`
61
+ @media (min-width: 768px) {
62
+ body {
63
+ margin-inline-end: ${k(p.value)};
64
+ transition: margin-inline-end ${af}ms ease;
65
+ }
66
+ }
67
+ `);function b(E){return typeof E=="number"?`${E}px`:E}function k(E){return typeof E=="number"?`${E}px`:E}function m(){if(o.width!==void 0||!i.value)return;const E=i.value.getBoundingClientRect().width;E>0&&(l.value=E)}function v(){s.value?.setModalOpen?.(!1)}function y(){s.value?.setModalOpen?.(!0)}function x(){s.value?.setModalOpen?.(!u.value)}function S(E){a("submit-message",E)}function A(){a("stop")}function T(E){a("input-change",E)}function O(E,j){a("select-suggestion",E,j)}function N(){a("add-file")}function z(){a("start-transcribe")}function D(){a("cancel-transcribe")}function U(){a("finish-transcribe")}const _=t.computed(()=>{const E={onSubmitMessage:S,onInputChange:T,onSelectSuggestion:O};return o.onStop&&(E.onStop=A),o.onAddFile&&(E.onAddFile=N),o.onStartTranscribe&&(E.onStartTranscribe=z),o.onCancelTranscribe&&(E.onCancelTranscribe=D),o.onFinishTranscribe&&(E.onFinishTranscribe=U),E});return t.watch(()=>o.width,E=>{if(E!==void 0){l.value=E;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}),(E,j)=>(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(E.$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(E.$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(Ft,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},[E.$slots["message-view"]?{name:"message-view",fn:t.withCtx(M=>[t.renderSlot(E.$slots,"message-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"0"}:void 0,E.$slots["scroll-view"]?{name:"scroll-view",fn:t.withCtx(M=>[t.renderSlot(E.$slots,"scroll-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"1"}:void 0,E.$slots.feather?{name:"feather",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"feather")]),key:"2"}:void 0,E.$slots["scroll-to-bottom-button"]?{name:"scroll-to-bottom-button",fn:t.withCtx(M=>[t.renderSlot(E.$slots,"scroll-to-bottom-button",t.normalizeProps(t.guardReactiveProps(M)))]),key:"3"}:void 0,E.$slots.input?{name:"input",fn:t.withCtx(M=>[t.renderSlot(E.$slots,"input",t.normalizeProps(t.guardReactiveProps(M)))]),key:"4"}:void 0,E.$slots["suggestion-view"]?{name:"suggestion-view",fn:t.withCtx(M=>[t.renderSlot(E.$slots,"suggestion-view",t.normalizeProps(t.guardReactiveProps(M)))]),key:"5"}:void 0,E.$slots["welcome-screen"]?{name:"welcome-screen",fn:t.withCtx(M=>[t.renderSlot(E.$slots,"welcome-screen",t.normalizeProps(t.guardReactiveProps(M)))]),key:"6"}:void 0,E.$slots["welcome-message"]?{name:"welcome-message",fn:t.withCtx(()=>[t.renderSlot(E.$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))}}),hs=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"},gs=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=Ae(),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(_t,{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(At,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=Bt(),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(ms,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(fs,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=Bt(),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(hs,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(gs,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:Ft}),gf=Object.assign(jn,{OpenIcon:Un,CloseIcon:Ln}),vf=Object.assign(Zn,{Title:ps,CloseButton:ds}),bf=Object.assign(ms,{WelcomeScreen:fs}),kf=Object.assign(hs,{WelcomeScreen:gs});function yf(e){const{copilotkit:n}=De(),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}=De(),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}
68
+
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 vs(e,n){const{copilotkit:o}=De(),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 Ro=new Set;function Tf(e){switch(e){case re.ToolCallStatus.Complete:return"complete";case re.ToolCallStatus.Executing:return"executing";case re.ToolCallStatus.InProgress:return"inProgress";default:{const n=String(e);return Ro.has(n)||(Ro.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 Ao(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",Ao(e.parameters??{})),e.result!==void 0?t.h("div",[t.h("div","Result"),t.h("pre",typeof e.result=="string"?e.result:Ao(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})});vs({name:"*",render:a},n)}function Ef(e,n){const{copilotkit:o}=De(),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===re.ToolCallStatus.InProgress?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:void 0}):p.status===re.ToolCallStatus.Executing?t.h(g,{...p,name:e.name,description:e.description||"",agentId:e.agentId,respond:i}):p.status===re.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}=De(),a=Ae(),r=n??[],s=t.computed(()=>a.value?.agentId??H.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 bs="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:bs,value:e.interrupts[0]}}function Nf(e={}){const{copilotkit:n}=De(),{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===bs&&(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}=De(),n=Ae();return function(a){const r=n.value;if(!r)return null;const s=r.agentId||H.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}=De(),n=Ae(),o=t.computed(()=>n.value?.agentId??H.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=Mu;exports.A2UISurfaceActivityType=$u;exports.ActivityDeltaEventSchema=Pa;exports.ActivityMessageSchema=Ba;exports.ActivitySnapshotEventSchema=Va;exports.AddOperationSchema=Sa;exports.AgentCapabilitiesSchema=Tu;exports.AssistantMessageSchema=Na;exports.AttributableSchema=xu;exports.AudioPartSchema=ga;exports.BaseEventSchema=Iu;exports.BaseMessageSchema=Eu;exports.ContentPartSchema=tn;exports.ContextSchema=ja;exports.CopilotChat=hf;exports.CopilotChatDefaultLabels=ot;exports.CopilotChatToggleButton=gf;exports.CopilotChatToggleButtonCloseIcon=Ln;exports.CopilotChatToggleButtonOpenIcon=Un;exports.CopilotKitCoreVue=Nr;exports.CopilotModalHeader=vf;exports.CopilotPopupView=bf;exports.CopilotSidebarView=kf;exports.CopyOperationSchema=xa;exports.CustomEventSchema=Ua;exports.DataSourceSchema=pa;exports.DeveloperMessageSchema=Aa;exports.DocumentPartSchema=ba;exports.EventSchema=wu;exports.EventTypeSchema=na;exports.ExecutionCapabilitiesSchema=Er;exports.FileSourceSchema=fa;exports.FunctionCallSchema=$a;exports.GenerateSandboxedUiArgsSchema=Lr;exports.HumanInTheLoopCapabilitiesSchema=Rr;exports.IdentityCapabilitiesSchema=vr;exports.ImagePartSchema=ha;exports.InterruptSchema=Ka;exports.JsonPatchOperationSchema=Ea;exports.JsonPatchSchema=$n;exports.JsonPointerSchema=lt;exports.LicenseContextKey=Fn;exports.MCPAppsActivityRenderer=Mr;exports.MessageSchema=Mn;exports.MessagesSnapshotEventSchema=Da;exports.MetadataSchema=te;exports.MoveOperationSchema=Ta;exports.MultiAgentCapabilitiesSchema=wr;exports.MultimodalCapabilitiesSchema=Ir;exports.MultimodalInputCapabilitiesSchema=Tr;exports.MultimodalOutputCapabilitiesSchema=xr;exports.OpenGenerativeUIActivityRenderer=jr;exports.OpenGenerativeUIActivityType=Vr;exports.OpenGenerativeUIContentSchema=Pr;exports.OpenGenerativeUIRenderer=Ur;exports.OpenGenerativeUIToolRenderer=Zr;exports.OptionalMetadataSchema=Ru;exports.OutputCapabilitiesSchema=yr;exports.PartSourceSchema=Ot;exports.RawEventSchema=La;exports.ReasoningCapabilitiesSchema=Cr;exports.ReasoningEncryptedValueEventSchema=cr;exports.ReasoningEncryptedValueSubtypeSchema=lr;exports.ReasoningEndEventSchema=ir;exports.ReasoningMessageChunkEventSchema=sr;exports.ReasoningMessageContentEventSchema=ar;exports.ReasoningMessageEndEventSchema=rr;exports.ReasoningMessageSchema=Fa;exports.ReasoningMessageStartEventSchema=or;exports.ReasoningStartEventSchema=nr;exports.RemoveOperationSchema=wa;exports.ReplaceOperationSchema=Ca;exports.ResumeEntrySchema=Za;exports.RoleSchema=Cu;exports.RunAgentInputSchema=Ha;exports.RunErrorEventSchema=Qa;exports.RunFinishedCancelledOutcomeSchema=Ja;exports.RunFinishedEventSchema=Ya;exports.RunFinishedInterruptOutcomeSchema=qa;exports.RunFinishedOutcomeSchema=Xa;exports.RunFinishedSuccessOutcomeSchema=Wa;exports.RunStartedEventSchema=Ga;exports.StateCapabilitiesSchema=Sr;exports.StateDeltaEventSchema=Ra;exports.StateSchema=_n;exports.StateSnapshotEventSchema=ya;exports.StepFinishedEventSchema=tr;exports.StepStartedEventSchema=er;exports.SubagentErrorEventSchema=hr;exports.SubagentFinishedEventSchema=fr;exports.SubagentFinishedOutcomeSchema=mr;exports.SubagentFinishedSuccessOutcomeSchema=dr;exports.SubagentFinishedSuspendedOutcomeSchema=pr;exports.SubagentInfoSchema=gr;exports.SubagentRunIdSchema=ce;exports.SubagentStartedEventSchema=ur;exports.SystemMessageSchema=_a;exports.TestOperationSchema=Ia;exports.TextMessageChunkEventSchema=sa;exports.TextMessageContentEventSchema=aa;exports.TextMessageEndEventSchema=ra;exports.TextMessageRoleSchema=An;exports.TextMessageStartEventSchema=oa;exports.TextPartSchema=da;exports.TokenUsageSchema=On;exports.ToolCallArgsEventSchema=la;exports.ToolCallChunkEventSchema=ua;exports.ToolCallEndEventSchema=ca;exports.ToolCallResultEventSchema=ka;exports.ToolCallSchema=Ma;exports.ToolCallStartEventSchema=ia;exports.ToolMessageSchema=za;exports.ToolSchema=Nn;exports.ToolsCapabilitiesSchema=kr;exports.TransportCapabilitiesSchema=br;exports.UrlSourceSchema=ma;exports.UseAgentUpdate=ts;exports.UserMessageSchema=Oa;exports.VideoPartSchema=va;exports._sfc_main=qr;exports._sfc_main$1=Qr;exports._sfc_main$10=_t;exports._sfc_main$11=Xr;exports._sfc_main$12=is;exports._sfc_main$13=Ft;exports._sfc_main$14=Ar;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=es;exports._sfc_main$5=an;exports._sfc_main$6=At;exports._sfc_main$7=ls;exports._sfc_main$8=ss;exports._sfc_main$9=cs;exports.createA2UIMessageRenderer=Or;exports.createDefaultLicenseRef=Hr;exports.defineToolCallRenderer=Jt;exports.extractCompleteStyles=Br;exports.getOperationSurfaceId=bn;exports.processPartialHtml=Fr;exports.useAgent=rn;exports.useAgentContext=yf;exports.useAttachments=os;exports.useCapabilities=Of;exports.useComponent=wf;exports.useConfigureSuggestions=_f;exports.useCopilotChatConfiguration=Ae;exports.useCopilotKit=De;exports.useDefaultRenderTool=If;exports.useFrontendTool=Hn;exports.useHumanInTheLoop=Ef;exports.useInterrupt=Nf;exports.useKatexStyles=Yr;exports.useKeyboardHeight=as;exports.useLicenseContext=Bt;exports.useRenderActivityMessage=Bf;exports.useRenderCustomMessages=zf;exports.useRenderTool=vs;exports.useSandboxFunctions=Dr;exports.useSuggestions=ns;exports.useThreads=us;exports.vueBasicCatalog=St;
70
+ //# sourceMappingURL=use-render-activity-message-DxYudLWg.cjs.map