@runtypelabs/persona 3.36.0 → 4.0.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.
- package/README.md +0 -1
- package/dist/animations/glyph-cycle.d.cts +1 -1
- package/dist/animations/glyph-cycle.d.ts +1 -1
- package/dist/animations/{types-DgYsuwXL.d.cts → types-B_xbfvR0.d.cts} +263 -181
- package/dist/animations/{types-DgYsuwXL.d.ts → types-B_xbfvR0.d.ts} +263 -181
- package/dist/animations/wipe.d.cts +1 -1
- package/dist/animations/wipe.d.ts +1 -1
- package/dist/codegen.cjs +1 -1
- package/dist/codegen.js +1 -1
- package/dist/index.cjs +47 -47
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +328 -821
- package/dist/index.d.ts +328 -821
- package/dist/index.global.js +39 -39
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +47 -47
- package/dist/index.js.map +1 -1
- package/dist/install.global.js +1 -1
- package/dist/install.global.js.map +1 -1
- package/dist/smart-dom-reader.d.cts +268 -181
- package/dist/smart-dom-reader.d.ts +268 -181
- package/dist/theme-editor-preview.cjs +41 -41
- package/dist/theme-editor-preview.d.cts +268 -181
- package/dist/theme-editor-preview.d.ts +268 -181
- package/dist/theme-editor-preview.js +41 -41
- package/dist/theme-editor.d.cts +268 -181
- package/dist/theme-editor.d.ts +268 -181
- package/package.json +1 -1
- package/src/client.test.ts +506 -1003
- package/src/client.ts +676 -909
- package/src/components/tool-bubble.ts +46 -33
- package/src/generated/runtype-openapi-contract.ts +211 -714
- package/src/index-core.ts +2 -3
- package/src/install.test.ts +1 -34
- package/src/install.ts +1 -22
- package/src/runtime/init.test.ts +8 -67
- package/src/runtime/init.ts +2 -17
- package/src/session.test.ts +8 -8
- package/src/session.ts +1 -1
- package/src/types.ts +11 -2
- package/src/ui.postprocess.test.ts +107 -0
- package/src/ui.ts +40 -5
- package/src/utils/__fixtures__/unified-translator.oracle.ts +717 -0
- package/src/utils/copy-selection.test.ts +37 -0
- package/src/utils/copy-selection.ts +19 -0
- package/src/utils/event-stream-capture.test.ts +9 -64
- package/src/utils/sequence-buffer.test.ts +0 -256
- package/src/utils/sequence-buffer.ts +0 -130
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
var sg=Object.defineProperty;var qs=(n,e)=>()=>(n&&(e=n(n=0)),e);var _p=(n,e)=>{for(var t in e)sg(n,t,{get:e[t],enumerable:!0})};var $p={};_p($p,{DOMPurify:()=>ig,Marked:()=>ag});import{Marked as ag}from"marked";import ig from"dompurify";var qp=qs(()=>{"use strict"});var ms,Ki=qs(()=>{"use strict";ms=class{constructor(e=24e3,t={}){this.ctx=null;this.nextStartTime=0;this.activeSources=[];this.finishedCallbacks=[];this.startedCallbacks=[];this.playing=!1;this.streamEnded=!1;this.pendingCount=0;this.started=!1;this.userPaused=!1;this.pendingBuffers=[];this.pendingSamples=0;this.remainder=null;var o;this.sampleRate=e;let r=Math.max(0,(o=t.prebufferMs)!=null?o:0);this.waterlineSamples=Math.round(e*r/1e3),this.buffering=this.waterlineSamples>0}ensureContext(){if(!this.ctx){let t=typeof window!="undefined"?window:void 0;if(!t)throw new Error("AudioPlaybackManager requires a browser environment");let r=t.AudioContext||t.webkitAudioContext;this.ctx=new r({sampleRate:this.sampleRate})}let e=this.ctx;return e.state==="suspended"&&!this.userPaused&&e.resume(),e}enqueue(e){if(e.length===0)return;let t=e;if(this.remainder){let o=new Uint8Array(this.remainder.length+e.length);o.set(this.remainder),o.set(e,this.remainder.length),t=o,this.remainder=null}if(t.length%2!==0&&(this.remainder=new Uint8Array([t[t.length-1]]),t=t.subarray(0,t.length-1)),t.length===0)return;let r=this.pcmToFloat32(t);r.length!==0&&(this.buffering?(this.pendingBuffers.push(r),this.pendingSamples+=r.length,this.pendingSamples>=this.waterlineSamples&&this.releaseBuffer()):this.scheduleSamples(r))}markStreamEnd(){this.pendingBuffers.length>0&&this.releaseBuffer(),this.streamEnded=!0,this.checkFinished()}flush(){for(let e of this.activeSources)try{e.stop(),e.disconnect()}catch{}this.activeSources=[],this.pendingCount=0,this.nextStartTime=0,this.playing=!1,this.streamEnded=!1,this.finishedCallbacks=[],this.startedCallbacks=[],this.remainder=null,this.pendingBuffers=[],this.pendingSamples=0,this.buffering=this.waterlineSamples>0,this.started=!1}isPlaying(){return this.playing}onFinished(e){this.finishedCallbacks.push(e)}onStarted(e){this.startedCallbacks.push(e)}pause(){this.userPaused=!0,this.ctx&&this.ctx.state==="running"&&this.ctx.suspend()}resume(){this.userPaused=!1,this.ctx&&this.ctx.state==="suspended"&&this.ctx.resume()}async destroy(){this.flush(),this.ctx&&(await this.ctx.close(),this.ctx=null)}releaseBuffer(){this.buffering=!1;let e=this.pendingBuffers;this.pendingBuffers=[],this.pendingSamples=0;for(let t of e)this.scheduleSamples(t)}scheduleSamples(e){if(e.length===0)return;let t=this.ensureContext(),r=t.createBuffer(1,e.length,this.sampleRate);r.getChannelData(0).set(e);let o=t.createBufferSource();o.buffer=r,o.connect(t.destination);let s=t.currentTime;if(this.nextStartTime===0?this.nextStartTime=s:this.nextStartTime<s&&(this.nextStartTime=s,this.waterlineSamples>0&&(this.buffering=!0)),o.start(this.nextStartTime),this.nextStartTime+=r.duration,this.activeSources.push(o),this.pendingCount++,this.playing=!0,!this.started){this.started=!0;let a=this.startedCallbacks.slice();this.startedCallbacks=[];for(let i of a)i()}o.onended=()=>{let a=this.activeSources.indexOf(o);a!==-1&&this.activeSources.splice(a,1),this.pendingCount--,this.checkFinished()}}checkFinished(){if(this.streamEnded&&this.pendingCount<=0&&this.pendingBuffers.length===0){this.playing=!1,this.streamEnded=!1;let e=this.finishedCallbacks.slice();this.finishedCallbacks=[];for(let t of e)t()}}pcmToFloat32(e){let t=Math.floor(e.length/2),r=new Float32Array(t),o=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let s=0;s<t;s++){let a=o.getInt16(s*2,!0);r[s]=a/32768}return r}}});function yf(n){return n.replace(/\/+$/,"")}async function bf(n){var e,t;try{let r=await n.json();return r.detail?`${(e=r.error)!=null?e:`Runtype TTS ${n.status}`}: ${r.detail}`:(t=r.error)!=null?t:`Runtype TTS request failed (${n.status})`}catch{return`Runtype TTS request failed (${n.status})`}}var Ja,Mu=qs(()=>{"use strict";Ki();Ja=class{constructor(e){this.opts=e;this.id="runtype-tts";this.supportsPause=!0;this.player=null;this.playerPromise=null;this.generation=0}ensurePlayer(){var e,t;return(t=this.playerPromise)!=null?t:this.playerPromise=Promise.resolve(this.opts.createPlaybackEngine?this.opts.createPlaybackEngine():new ms(24e3,{prebufferMs:(e=this.opts.prebufferMs)!=null?e:200})).then(r=>this.player=r)}speak(e,t){let r=++this.generation;this.run(r,e,t)}async run(e,t,r){var o,s,a,i;try{let d=await this.ensurePlayer();if(e!==this.generation)return;d.flush(),d.resume(),d.onStarted(()=>{var u;e===this.generation&&((u=r.onStart)==null||u.call(r))}),d.onFinished(()=>{var u;e===this.generation&&((u=r.onEnd)==null||u.call(r))});let c=`${yf(this.opts.host)}/v1/agents/${encodeURIComponent(this.opts.agentId)}/speak`,g=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.opts.clientToken}`},body:JSON.stringify({text:t.text,voice:(o=t.voice)!=null?o:this.opts.voice,format:"pcm"})});if(e!==this.generation)return;if(!g.ok||!g.body)throw new Error(await bf(g));let f=g.body.getReader();for(;;){let{done:u,value:m}=await f.read();if(e!==this.generation){await f.cancel().catch(()=>{});return}if(u)break;m&&m.byteLength>0&&d.enqueue(m)}d.markStreamEnd()}catch(d){if(e!==this.generation)return;let c=d instanceof Error?d:new Error(String(d));(a=(s=this.opts).onError)==null||a.call(s,c),(i=r.onError)==null||i.call(r,c)}}pause(){var e;(e=this.player)==null||e.pause()}resume(){var e;(e=this.player)==null||e.resume()}stop(){var e;this.generation++,(e=this.player)==null||e.flush()}destroy(){var e;this.generation++,(e=this.player)==null||e.destroy(),this.player=null,this.playerPromise=null}}});var Ya,Eu=qs(()=>{"use strict";Ya=class{constructor(e,t,r={}){this.primary=e;this.fallback=t;this.options=r;this.id="fallback";this.active=e}get supportsPause(){return this.active.supportsPause}speak(e,t){this.active=this.primary;let r=!1;this.primary.speak(e,{onStart:()=>{var o;r=!0,(o=t.onStart)==null||o.call(t)},onEnd:()=>{var o;return(o=t.onEnd)==null?void 0:o.call(t)},onError:o=>{var s,a,i;if(r){(s=t.onError)==null||s.call(t,o);return}(i=(a=this.options).onFallback)==null||i.call(a,o),this.active=this.fallback,this.fallback.speak(e,t)}})}pause(){this.active.pause()}resume(){this.active.resume()}stop(){this.active.stop()}destroy(){var e,t,r,o;(t=(e=this.primary).destroy)==null||t.call(e),(o=(r=this.fallback).destroy)==null||o.call(r)}}});var ku={};_p(ku,{FallbackSpeechEngine:()=>Ya,RuntypeSpeechEngine:()=>Ja});var Lu=qs(()=>{"use strict";Mu();Eu()});var Up=null,Us=null,as=null;var zp=()=>Us?Promise.resolve(Us):as||(Up?(as=Up().then(n=>(Us=n,n)),as):(as=Promise.resolve().then(()=>(qp(),$p)).then(n=>(Us=n,n)),as)),is=()=>Us;var lg=n=>{if(n)return n},Ii=n=>{let e=null;return t=>{var o,s;let r=is();if(!r)return fo(t);if(!e){let{Marked:a}=r,i=n==null?void 0:n.markedOptions;e=new a({gfm:(o=i==null?void 0:i.gfm)!=null?o:!0,breaks:(s=i==null?void 0:i.breaks)!=null?s:!0,pedantic:i==null?void 0:i.pedantic,silent:i==null?void 0:i.silent});let d=lg(n==null?void 0:n.renderer);d&&e.use({renderer:d})}return e.parse(t)}},Ba=n=>n?Ii({markedOptions:n.options,renderer:n.renderer}):Ii(),Ov=Ii();var fo=n=>n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");var cg={ALLOWED_TAGS:["h1","h2","h3","h4","h5","h6","p","br","hr","div","span","ul","ol","li","dl","dt","dd","strong","em","b","i","u","s","del","ins","mark","small","sub","sup","abbr","kbd","var","samp","code","a","img","blockquote","pre","details","summary","table","thead","tbody","tfoot","tr","th","td","caption","colgroup","col","input","label","select","option","textarea","button"],ALLOWED_ATTR:["href","src","alt","title","target","rel","loading","width","height","colspan","rowspan","scope","class","id","type","name","value","placeholder","disabled","checked","for","aria-label","aria-hidden","aria-expanded","role","tabindex","data-tv-form","data-message-id","data-persona-component-directive","data-preserve-animation","data-persona-instance"]},dg=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,pg=()=>{let n=null;return e=>{let t=is();if(!t)return fo(e);if(!n){let{DOMPurify:r}=t;n=r(typeof window!="undefined"?window:void 0),n.addHook("uponSanitizeAttribute",(o,s)=>{if(s.attrName==="src"||s.attrName==="href"){let a=s.attrValue;a.toLowerCase().startsWith("data:")&&!dg.test(a)&&(s.attrValue="",s.keepAttr=!1)}})}return n.sanitize(e,cg)}},Da=n=>n===!1?null:typeof n=="function"?n:pg();var Bo="webmcp:",Wi=new Map,jp=n=>{var e;Wi.clear();for(let t of n){let r=(e=t.title)==null?void 0:e.trim();r&&Wi.set(t.name,r)}},Ri=n=>Wi.get(Qp(n)),Na={warn(n,...e){typeof console!="undefined"&&typeof console.warn=="function"&&console.warn(`[Persona/WebMCP] ${n}`,...e)}},Vp=null;function Gp(n){if(n.length===0)return"0:empty";let e=n.map(t=>{var r,o;return[t.name,(r=t.description)!=null?r:"",t.parametersSchema?JSON.stringify(t.parametersSchema):"",(o=t.origin)!=null?o:"",t.annotations?JSON.stringify(t.annotations):""].join("")}).sort();return`${n.length}:${ug(e.join(""))}`}function Kp(n,e){let t=3735928559^e,r=1103547991^e;for(let o=0;o<n.length;o++){let s=n.charCodeAt(o);t=Math.imul(t^s,2654435761),r=Math.imul(r^s,1597334677)}return t=Math.imul(t^t>>>16,2246822507),t^=Math.imul(r^r>>>13,3266489909),r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(t^t>>>13,3266489909),4294967296*(2097151&r)+(t>>>0)}function ug(n){let e=Kp(n,0).toString(36),t=Kp(n,2654435761).toString(36);return`${e}.${t}`}var Fa=class{constructor(e){this.config=e;this.installed=!1;this.readyPromise=null;this.incompatibleContextWarned=!1;var t;this.confirmHandler=(t=e.onConfirm)!=null?t:null,this.timeoutMs=3e4}setConfirmHandler(e){this.confirmHandler=e}isOperational(){return this.config.enabled!==!0||!this.installed?!1:this.getModelContext()!==null}async snapshotForDispatch(){if(await this.ensureReady(),this.config.enabled!==!0)return[];let e=this.getModelContext();if(!e)return[];let t;try{t=await e.getTools()}catch(o){return Na.warn("getTools() threw: shipping an empty WebMCP snapshot.",o),[]}jp(t);let r=typeof location!="undefined"?location.origin:"";return t.filter(o=>this.passesClientAllowlist(o.name)).map(o=>{let s={name:o.name,description:o.description,origin:"webmcp",...r?{pageOrigin:r}:{}},a=gg(o.inputSchema);return a&&(s.parametersSchema=a),s})}async executeToolCall(e,t,r){if(await this.ensureReady(),this.config.enabled!==!0)return br("WebMCP is not enabled on this widget.");let o=this.getModelContext();if(!o){let v=typeof document!="undefined"&&!!document.modelContext;return br(v?"WebMCP is not operational: document.modelContext is present but does not expose the strict getTools()/executeTool() surface (likely a different or older WebMCP polyfill).":"WebMCP bridge is not operational on this page (document.modelContext not available).")}let s=Qp(e),a;try{a=await o.getTools()}catch(v){let x=v instanceof Error?v.message:String(v);return br(`Failed to read WebMCP registry: ${x}`)}jp(a);let i=a.find(v=>v.name===s);if(!i)return br(`WebMCP tool not registered on this page: ${s}`);if(!this.passesClientAllowlist(s))return br(`WebMCP tool not allowed by client allowlist: ${s}`);if(r!=null&&r.aborted)return br("Aborted by cancel()");let d=Ri(s),c={toolName:s,args:t,description:i.description,...d?{title:d}:{},reason:"gate"};if(!await this.requestConfirm(c))return br("User declined the tool call.");if(r!=null&&r.aborted)return br("Aborted by cancel()");let g=new AbortController,f=!1,u=setTimeout(()=>{f=!0,g.abort()},this.timeoutMs),m=()=>g.abort();r&&(r.aborted?g.abort():r.addEventListener("abort",m,{once:!0}));try{let v=await o.executeTool(i,bg(t),{signal:g.signal});return fg(v)}catch(v){if(f)return br(`WebMCP tool '${s}' timed out after ${this.timeoutMs}ms`);if(r!=null&&r.aborted)return br("Aborted by cancel()");let x=v instanceof Error?v.message:String(v);return br(x)}finally{clearTimeout(u),r&&r.removeEventListener("abort",m)}}ensureReady(){return this.config.enabled!==!0?Promise.resolve():(this.readyPromise||(this.readyPromise=this.install()),this.readyPromise)}async install(){try{if(this.getModelContext()){this.installed=!0;return}(Vp?await Vp():await import("@mcp-b/webmcp-polyfill")).initializeWebMCPPolyfill(),this.installed=!0}catch(e){Na.warn("Failed to load @mcp-b/webmcp-polyfill: WebMCP consumption disabled.",e),this.installed=!1}}getModelContext(){if(typeof document=="undefined")return null;let e=document.modelContext;if(!e||typeof e!="object")return null;let t=e;return typeof t.getTools!="function"||typeof t.executeTool!="function"?(this.incompatibleContextWarned||(this.incompatibleContextWarned=!0,Na.warn("document.modelContext is present but does not expose getTools()/executeTool(): WebMCP consumption is disabled. Another (incompatible or older) WebMCP polyfill likely installed document.modelContext before Persona. Remove it, or use a polyfill implementing the strict standard surface (e.g. @mcp-b/webmcp-polyfill).")),null):e}async requestConfirm(e){var r;let t=(r=this.confirmHandler)!=null?r:hg;try{return await t(e)}catch(o){return Na.warn(`Confirm handler threw for WebMCP tool '${e.toolName}'; declining.`,o),!1}}passesClientAllowlist(e){let t=this.config.allowlist;return!t||t.length===0?!0:t.some(r=>mg(e,r))}},Qp=n=>n.startsWith(Bo)?n.slice(Bo.length):n,zs=n=>n.startsWith(Bo),mg=(n,e)=>{if(e==="*")return!0;let t=e.replace(/[.+?^${}()|[\]\\]/g,"\\$&");return new RegExp("^"+t.replace(/\*/g,".*")+"$").test(n)},gg=n=>{if(!(n===void 0||n===""))try{let e=JSON.parse(n);return e!==null&&typeof e=="object"?e:void 0}catch{return}},fg=n=>{if(n==null)return{content:[{type:"text",text:""}]};let e;try{e=JSON.parse(n)}catch{return{content:[{type:"text",text:n}]}}return e!==null&&typeof e=="object"&&Array.isArray(e.content)?e:{content:[{type:"text",text:typeof e=="string"?e:vg(e)}]}},br=n=>({isError:!0,content:[{type:"text",text:n}]}),hg=async n=>{if(typeof window=="undefined"||typeof window.confirm!="function")return!1;let e=yg(n.args),t=`Allow the AI to call ${n.toolName}`+(e?`
|
|
1
|
+
var ag=Object.defineProperty;var Ss=(n,e)=>()=>(n&&(e=n(n=0)),e);var Lp=(n,e)=>{for(var t in e)ag(n,t,{get:e[t],enumerable:!0})};var Pp={};Lp(Pp,{DOMPurify:()=>lg,Marked:()=>ig});import{Marked as ig}from"marked";import lg from"dompurify";var Ip=Ss(()=>{"use strict"});var ts,Mi=Ss(()=>{"use strict";ts=class{constructor(e=24e3,t={}){this.ctx=null;this.nextStartTime=0;this.activeSources=[];this.finishedCallbacks=[];this.startedCallbacks=[];this.playing=!1;this.streamEnded=!1;this.pendingCount=0;this.started=!1;this.userPaused=!1;this.pendingBuffers=[];this.pendingSamples=0;this.remainder=null;var o;this.sampleRate=e;let r=Math.max(0,(o=t.prebufferMs)!=null?o:0);this.waterlineSamples=Math.round(e*r/1e3),this.buffering=this.waterlineSamples>0}ensureContext(){if(!this.ctx){let t=typeof window!="undefined"?window:void 0;if(!t)throw new Error("AudioPlaybackManager requires a browser environment");let r=t.AudioContext||t.webkitAudioContext;this.ctx=new r({sampleRate:this.sampleRate})}let e=this.ctx;return e.state==="suspended"&&!this.userPaused&&e.resume(),e}enqueue(e){if(e.length===0)return;let t=e;if(this.remainder){let o=new Uint8Array(this.remainder.length+e.length);o.set(this.remainder),o.set(e,this.remainder.length),t=o,this.remainder=null}if(t.length%2!==0&&(this.remainder=new Uint8Array([t[t.length-1]]),t=t.subarray(0,t.length-1)),t.length===0)return;let r=this.pcmToFloat32(t);r.length!==0&&(this.buffering?(this.pendingBuffers.push(r),this.pendingSamples+=r.length,this.pendingSamples>=this.waterlineSamples&&this.releaseBuffer()):this.scheduleSamples(r))}markStreamEnd(){this.pendingBuffers.length>0&&this.releaseBuffer(),this.streamEnded=!0,this.checkFinished()}flush(){for(let e of this.activeSources)try{e.stop(),e.disconnect()}catch{}this.activeSources=[],this.pendingCount=0,this.nextStartTime=0,this.playing=!1,this.streamEnded=!1,this.finishedCallbacks=[],this.startedCallbacks=[],this.remainder=null,this.pendingBuffers=[],this.pendingSamples=0,this.buffering=this.waterlineSamples>0,this.started=!1}isPlaying(){return this.playing}onFinished(e){this.finishedCallbacks.push(e)}onStarted(e){this.startedCallbacks.push(e)}pause(){this.userPaused=!0,this.ctx&&this.ctx.state==="running"&&this.ctx.suspend()}resume(){this.userPaused=!1,this.ctx&&this.ctx.state==="suspended"&&this.ctx.resume()}async destroy(){this.flush(),this.ctx&&(await this.ctx.close(),this.ctx=null)}releaseBuffer(){this.buffering=!1;let e=this.pendingBuffers;this.pendingBuffers=[],this.pendingSamples=0;for(let t of e)this.scheduleSamples(t)}scheduleSamples(e){if(e.length===0)return;let t=this.ensureContext(),r=t.createBuffer(1,e.length,this.sampleRate);r.getChannelData(0).set(e);let o=t.createBufferSource();o.buffer=r,o.connect(t.destination);let s=t.currentTime;if(this.nextStartTime===0?this.nextStartTime=s:this.nextStartTime<s&&(this.nextStartTime=s,this.waterlineSamples>0&&(this.buffering=!0)),o.start(this.nextStartTime),this.nextStartTime+=r.duration,this.activeSources.push(o),this.pendingCount++,this.playing=!0,!this.started){this.started=!0;let a=this.startedCallbacks.slice();this.startedCallbacks=[];for(let i of a)i()}o.onended=()=>{let a=this.activeSources.indexOf(o);a!==-1&&this.activeSources.splice(a,1),this.pendingCount--,this.checkFinished()}}checkFinished(){if(this.streamEnded&&this.pendingCount<=0&&this.pendingBuffers.length===0){this.playing=!1,this.streamEnded=!1;let e=this.finishedCallbacks.slice();this.finishedCallbacks=[];for(let t of e)t()}}pcmToFloat32(e){let t=Math.floor(e.length/2),r=new Float32Array(t),o=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let s=0;s<t;s++){let a=o.getInt16(s*2,!0);r[s]=a/32768}return r}}});function bf(n){return n.replace(/\/+$/,"")}async function vf(n){var e,t;try{let r=await n.json();return r.detail?`${(e=r.error)!=null?e:`Runtype TTS ${n.status}`}: ${r.detail}`:(t=r.error)!=null?t:`Runtype TTS request failed (${n.status})`}catch{return`Runtype TTS request failed (${n.status})`}}var Ta,fu=Ss(()=>{"use strict";Mi();Ta=class{constructor(e){this.opts=e;this.id="runtype-tts";this.supportsPause=!0;this.player=null;this.playerPromise=null;this.generation=0}ensurePlayer(){var e,t;return(t=this.playerPromise)!=null?t:this.playerPromise=Promise.resolve(this.opts.createPlaybackEngine?this.opts.createPlaybackEngine():new ts(24e3,{prebufferMs:(e=this.opts.prebufferMs)!=null?e:200})).then(r=>this.player=r)}speak(e,t){let r=++this.generation;this.run(r,e,t)}async run(e,t,r){var o,s,a,i;try{let d=await this.ensurePlayer();if(e!==this.generation)return;d.flush(),d.resume(),d.onStarted(()=>{var g;e===this.generation&&((g=r.onStart)==null||g.call(r))}),d.onFinished(()=>{var g;e===this.generation&&((g=r.onEnd)==null||g.call(r))});let c=`${bf(this.opts.host)}/v1/agents/${encodeURIComponent(this.opts.agentId)}/speak`,m=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.opts.clientToken}`},body:JSON.stringify({text:t.text,voice:(o=t.voice)!=null?o:this.opts.voice,format:"pcm"})});if(e!==this.generation)return;if(!m.ok||!m.body)throw new Error(await vf(m));let f=m.body.getReader();for(;;){let{done:g,value:u}=await f.read();if(e!==this.generation){await f.cancel().catch(()=>{});return}if(g)break;u&&u.byteLength>0&&d.enqueue(u)}d.markStreamEnd()}catch(d){if(e!==this.generation)return;let c=d instanceof Error?d:new Error(String(d));(a=(s=this.opts).onError)==null||a.call(s,c),(i=r.onError)==null||i.call(r,c)}}pause(){var e;(e=this.player)==null||e.pause()}resume(){var e;(e=this.player)==null||e.resume()}stop(){var e;this.generation++,(e=this.player)==null||e.flush()}destroy(){var e;this.generation++,(e=this.player)==null||e.destroy(),this.player=null,this.playerPromise=null}}});var Ma,hu=Ss(()=>{"use strict";Ma=class{constructor(e,t,r={}){this.primary=e;this.fallback=t;this.options=r;this.id="fallback";this.active=e}get supportsPause(){return this.active.supportsPause}speak(e,t){this.active=this.primary;let r=!1;this.primary.speak(e,{onStart:()=>{var o;r=!0,(o=t.onStart)==null||o.call(t)},onEnd:()=>{var o;return(o=t.onEnd)==null?void 0:o.call(t)},onError:o=>{var s,a,i;if(r){(s=t.onError)==null||s.call(t,o);return}(i=(a=this.options).onFallback)==null||i.call(a,o),this.active=this.fallback,this.fallback.speak(e,t)}})}pause(){this.active.pause()}resume(){this.active.resume()}stop(){this.active.stop()}destroy(){var e,t,r,o;(t=(e=this.primary).destroy)==null||t.call(e),(o=(r=this.fallback).destroy)==null||o.call(r)}}});var yu={};Lp(yu,{FallbackSpeechEngine:()=>Ma,RuntypeSpeechEngine:()=>Ta});var bu=Ss(()=>{"use strict";fu();hu()});var Wp=null,Ts=null,Go=null;var Rp=()=>Ts?Promise.resolve(Ts):Go||(Wp?(Go=Wp().then(n=>(Ts=n,n)),Go):(Go=Promise.resolve().then(()=>(Ip(),Pp)).then(n=>(Ts=n,n)),Go)),To=()=>Ts;var cg=n=>{if(n)return n},di=n=>{let e=null;return t=>{var o,s;let r=To();if(!r)return oo(t);if(!e){let{Marked:a}=r,i=n==null?void 0:n.markedOptions;e=new a({gfm:(o=i==null?void 0:i.gfm)!=null?o:!0,breaks:(s=i==null?void 0:i.breaks)!=null?s:!0,pedantic:i==null?void 0:i.pedantic,silent:i==null?void 0:i.silent});let d=cg(n==null?void 0:n.renderer);d&&e.use({renderer:d})}return e.parse(t)}},da=n=>n?di({markedOptions:n.options,renderer:n.renderer}):di(),_v=di();var oo=n=>n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");var dg={ALLOWED_TAGS:["h1","h2","h3","h4","h5","h6","p","br","hr","div","span","ul","ol","li","dl","dt","dd","strong","em","b","i","u","s","del","ins","mark","small","sub","sup","abbr","kbd","var","samp","code","a","img","blockquote","pre","details","summary","table","thead","tbody","tfoot","tr","th","td","caption","colgroup","col","input","label","select","option","textarea","button"],ALLOWED_ATTR:["href","src","alt","title","target","rel","loading","width","height","colspan","rowspan","scope","class","id","type","name","value","placeholder","disabled","checked","for","aria-label","aria-hidden","aria-expanded","role","tabindex","data-tv-form","data-message-id","data-persona-component-directive","data-preserve-animation","data-persona-instance"]},pg=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,ug=()=>{let n=null;return e=>{let t=To();if(!t)return oo(e);if(!n){let{DOMPurify:r}=t;n=r(typeof window!="undefined"?window:void 0),n.addHook("uponSanitizeAttribute",(o,s)=>{if(s.attrName==="src"||s.attrName==="href"){let a=s.attrValue;a.toLowerCase().startsWith("data:")&&!pg.test(a)&&(s.attrValue="",s.keepAttr=!1)}})}return n.sanitize(e,dg)}},pa=n=>n===!1?null:typeof n=="function"?n:ug();var Mo="webmcp:",pi=new Map,Hp=n=>{var e;pi.clear();for(let t of n){let r=(e=t.title)==null?void 0:e.trim();r&&pi.set(t.name,r)}},ui=n=>pi.get(Fp(n)),ua={warn(n,...e){typeof console!="undefined"&&typeof console.warn=="function"&&console.warn(`[Persona/WebMCP] ${n}`,...e)}},Bp=null;function Np(n){if(n.length===0)return"0:empty";let e=n.map(t=>{var r,o;return[t.name,(r=t.description)!=null?r:"",t.parametersSchema?JSON.stringify(t.parametersSchema):"",(o=t.origin)!=null?o:"",t.annotations?JSON.stringify(t.annotations):""].join("")}).sort();return`${n.length}:${mg(e.join(""))}`}function Dp(n,e){let t=3735928559^e,r=1103547991^e;for(let o=0;o<n.length;o++){let s=n.charCodeAt(o);t=Math.imul(t^s,2654435761),r=Math.imul(r^s,1597334677)}return t=Math.imul(t^t>>>16,2246822507),t^=Math.imul(r^r>>>13,3266489909),r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(t^t>>>13,3266489909),4294967296*(2097151&r)+(t>>>0)}function mg(n){let e=Dp(n,0).toString(36),t=Dp(n,2654435761).toString(36);return`${e}.${t}`}var ma=class{constructor(e){this.config=e;this.installed=!1;this.readyPromise=null;this.incompatibleContextWarned=!1;var t;this.confirmHandler=(t=e.onConfirm)!=null?t:null,this.timeoutMs=3e4}setConfirmHandler(e){this.confirmHandler=e}isOperational(){return this.config.enabled!==!0||!this.installed?!1:this.getModelContext()!==null}async snapshotForDispatch(){if(await this.ensureReady(),this.config.enabled!==!0)return[];let e=this.getModelContext();if(!e)return[];let t;try{t=await e.getTools()}catch(o){return ua.warn("getTools() threw: shipping an empty WebMCP snapshot.",o),[]}Hp(t);let r=typeof location!="undefined"?location.origin:"";return t.filter(o=>this.passesClientAllowlist(o.name)).map(o=>{let s={name:o.name,description:o.description,origin:"webmcp",...r?{pageOrigin:r}:{}},a=fg(o.inputSchema);return a&&(s.parametersSchema=a),s})}async executeToolCall(e,t,r){if(await this.ensureReady(),this.config.enabled!==!0)return ur("WebMCP is not enabled on this widget.");let o=this.getModelContext();if(!o){let v=typeof document!="undefined"&&!!document.modelContext;return ur(v?"WebMCP is not operational: document.modelContext is present but does not expose the strict getTools()/executeTool() surface (likely a different or older WebMCP polyfill).":"WebMCP bridge is not operational on this page (document.modelContext not available).")}let s=Fp(e),a;try{a=await o.getTools()}catch(v){let x=v instanceof Error?v.message:String(v);return ur(`Failed to read WebMCP registry: ${x}`)}Hp(a);let i=a.find(v=>v.name===s);if(!i)return ur(`WebMCP tool not registered on this page: ${s}`);if(!this.passesClientAllowlist(s))return ur(`WebMCP tool not allowed by client allowlist: ${s}`);if(r!=null&&r.aborted)return ur("Aborted by cancel()");let d=ui(s),c={toolName:s,args:t,description:i.description,...d?{title:d}:{},reason:"gate"};if(!await this.requestConfirm(c))return ur("User declined the tool call.");if(r!=null&&r.aborted)return ur("Aborted by cancel()");let m=new AbortController,f=!1,g=setTimeout(()=>{f=!0,m.abort()},this.timeoutMs),u=()=>m.abort();r&&(r.aborted?m.abort():r.addEventListener("abort",u,{once:!0}));try{let v=await o.executeTool(i,vg(t),{signal:m.signal});return hg(v)}catch(v){if(f)return ur(`WebMCP tool '${s}' timed out after ${this.timeoutMs}ms`);if(r!=null&&r.aborted)return ur("Aborted by cancel()");let x=v instanceof Error?v.message:String(v);return ur(x)}finally{clearTimeout(g),r&&r.removeEventListener("abort",u)}}ensureReady(){return this.config.enabled!==!0?Promise.resolve():(this.readyPromise||(this.readyPromise=this.install()),this.readyPromise)}async install(){try{if(this.getModelContext()){this.installed=!0;return}(Bp?await Bp():await import("@mcp-b/webmcp-polyfill")).initializeWebMCPPolyfill(),this.installed=!0}catch(e){ua.warn("Failed to load @mcp-b/webmcp-polyfill: WebMCP consumption disabled.",e),this.installed=!1}}getModelContext(){if(typeof document=="undefined")return null;let e=document.modelContext;if(!e||typeof e!="object")return null;let t=e;return typeof t.getTools!="function"||typeof t.executeTool!="function"?(this.incompatibleContextWarned||(this.incompatibleContextWarned=!0,ua.warn("document.modelContext is present but does not expose getTools()/executeTool(): WebMCP consumption is disabled. Another (incompatible or older) WebMCP polyfill likely installed document.modelContext before Persona. Remove it, or use a polyfill implementing the strict standard surface (e.g. @mcp-b/webmcp-polyfill).")),null):e}async requestConfirm(e){var r;let t=(r=this.confirmHandler)!=null?r:yg;try{return await t(e)}catch(o){return ua.warn(`Confirm handler threw for WebMCP tool '${e.toolName}'; declining.`,o),!1}}passesClientAllowlist(e){let t=this.config.allowlist;return!t||t.length===0?!0:t.some(r=>gg(e,r))}},Fp=n=>n.startsWith(Mo)?n.slice(Mo.length):n,Qo=n=>n.startsWith(Mo),gg=(n,e)=>{if(e==="*")return!0;let t=e.replace(/[.+?^${}()|[\]\\]/g,"\\$&");return new RegExp("^"+t.replace(/\*/g,".*")+"$").test(n)},fg=n=>{if(!(n===void 0||n===""))try{let e=JSON.parse(n);return e!==null&&typeof e=="object"?e:void 0}catch{return}},hg=n=>{if(n==null)return{content:[{type:"text",text:""}]};let e;try{e=JSON.parse(n)}catch{return{content:[{type:"text",text:n}]}}return e!==null&&typeof e=="object"&&Array.isArray(e.content)?e:{content:[{type:"text",text:typeof e=="string"?e:xg(e)}]}},ur=n=>({isError:!0,content:[{type:"text",text:n}]}),yg=async n=>{if(typeof window=="undefined"||typeof window.confirm!="function")return!1;let e=bg(n.args),t=`Allow the AI to call ${n.toolName}`+(e?`
|
|
2
2
|
|
|
3
3
|
Arguments:
|
|
4
4
|
${e}`:"")+(n.description?`
|
|
5
5
|
|
|
6
|
-
${n.description}`:"");return window.confirm(t)},yg=n=>{if(n==null)return"";try{let e=JSON.stringify(n,null,2);return e.length>500?e.slice(0,500)+"\u2026":e}catch{return String(n)}},bg=n=>{if(n===void 0)return"{}";try{let e=JSON.stringify(n);return e===void 0?"{}":e}catch{return"{}"}},vg=n=>{if(n===void 0)return"";try{return JSON.stringify(n)}catch{return String(n)}};import{parse as xg,ARR as wg,OBJ as Cg,STR as Ag}from"partial-json";var b=(n,e)=>{let t=document.createElement(n);return e&&(t.className=e),t},Dr=(n,e,t)=>{let r=n.createElement(e);return t&&(r.className=t),r};var kt=(n,e={},...t)=>{let r=document.createElement(n);if(e.className&&(r.className=e.className),e.text!==void 0&&(r.textContent=e.text),e.attrs)for(let[s,a]of Object.entries(e.attrs))r.setAttribute(s,a);if(e.style){let s=r.style,a=e.style;for(let i of Object.keys(a)){let d=a[i];d!=null&&(s[i]=d)}}let o=t.filter(s=>s!=null);return o.length>0&&r.append(...o),r},js=(...n)=>n.filter(Boolean).join(" ");var Hi="ask_user_question",Vs=8,ls="data-persona-ask-sheet-for",Sg="Other",Tg="Other\u2026",Jp="Type your own answer here",Yp="Send",Mg="Next",Eg="Back",kg="Submit all",Lg="Skip",Pg=3,Bi="data-ask-current-index",Di="data-ask-question-count",Zp="data-ask-answers",Ni="data-ask-grouped",eu="data-ask-layout",Ig=n=>n.layout==="pills"?"pills":"rows",Wg=n=>n.getAttribute(eu)==="pills"?"pills":"rows",Xp=!1,tu=n=>n.replace(/["\\]/g,"\\$&"),Do=n=>n.variant==="tool"&&!!n.toolCall&&n.toolCall.name===Hi,Fi=n=>{var e,t;return(t=(e=n==null?void 0:n.features)==null?void 0:e.askUserQuestion)!=null?t:{}},cs=n=>{let e=n.toolCall;if(!e)return{payload:null,complete:!1};let t=e.status==="complete";if(e.args&&typeof e.args=="object")return{payload:e.args,complete:t};let r=e.chunks;if(!r||r.length===0)return{payload:null,complete:t};try{let o=r.join(""),s=xg(o,Ag|Cg|wg);if(s&&typeof s=="object")return{payload:s,complete:t}}catch{}return{payload:null,complete:t}},Ks=n=>{let e=Array.isArray(n==null?void 0:n.questions)?n.questions:[];return e.length>Vs&&!Xp&&(Xp=!0,typeof console!="undefined"&&console.warn(`[AgentWidget] ask_user_question received ${e.length} questions; truncating to ${Vs}.`)),e.slice(0,Vs)},Rg=n=>{var e;return(e=Ks(n)[0])!=null?e:null},Hg=(n,e)=>{var t;return(t=Ks(n)[e])!=null?t:null},Bg=(n,e)=>{let t=e.styles;t&&(t.sheetBackground&&n.style.setProperty("--persona-ask-sheet-bg",t.sheetBackground),t.sheetBorder&&n.style.setProperty("--persona-ask-sheet-border",t.sheetBorder),t.sheetShadow&&n.style.setProperty("--persona-ask-sheet-shadow",t.sheetShadow),t.pillBackground&&n.style.setProperty("--persona-ask-pill-bg",t.pillBackground),t.pillBackgroundSelected&&n.style.setProperty("--persona-ask-pill-bg-selected",t.pillBackgroundSelected),t.pillTextColor&&n.style.setProperty("--persona-ask-pill-fg",t.pillTextColor),t.pillTextColorSelected&&n.style.setProperty("--persona-ask-pill-fg-selected",t.pillTextColorSelected),t.pillBorderRadius&&n.style.setProperty("--persona-ask-pill-radius",t.pillBorderRadius),t.customInputBackground&&n.style.setProperty("--persona-ask-input-bg",t.customInputBackground))},nu=(n,e,t)=>{if(n!=="rows")return null;let r=b("span","persona-ask-row-affordance");if(r.setAttribute("aria-hidden","true"),e){let o=b("span","persona-ask-row-check");r.appendChild(o)}else{let o=b("span","persona-ask-row-badge");o.textContent=String(t+1),r.appendChild(o)}return r},Dg=(n,e,t,r)=>{let s=b("button",t==="rows"?"persona-ask-pill persona-ask-row persona-pointer-events-auto":"persona-ask-pill persona-pointer-events-auto");if(s.type="button",s.setAttribute("role",r?"checkbox":"button"),s.setAttribute("aria-pressed","false"),s.setAttribute("data-ask-user-action","pick"),s.setAttribute("data-option-index",String(e)),s.setAttribute("data-option-label",n.label),t==="rows"){let a=b("span","persona-ask-row-content"),i=b("span","persona-ask-row-label");if(i.textContent=n.label,a.appendChild(i),n.description){let c=b("span","persona-ask-row-description");c.textContent=n.description,a.appendChild(c)}s.appendChild(a);let d=nu(t,r,e);d&&s.appendChild(d)}else s.textContent=n.label,n.description&&(s.title=n.description);return s},Ng=n=>{let t=b("span",n==="rows"?"persona-ask-pill persona-ask-row persona-ask-pill-skeleton persona-pointer-events-none":"persona-ask-pill persona-ask-pill-skeleton persona-pointer-events-none");return t.setAttribute("aria-hidden","true"),t},Fg=(n,e,t,r)=>{var g,f,u;let s=b("div",r==="rows"?"persona-ask-pills persona-ask-pills--rows persona-flex persona-flex-col persona-gap-2":"persona-ask-pills persona-flex persona-flex-wrap persona-gap-2");s.setAttribute("role","group"),s.setAttribute("data-ask-pill-list","true");let a=!!(n!=null&&n.multiSelect),d=(Array.isArray(n==null?void 0:n.options)?n.options:[]).filter(m=>m&&typeof m.label=="string"&&m.label.length>0);if(d.length===0&&!t){for(let m=0;m<Pg;m++)s.appendChild(Ng(r));return s}if(d.forEach((m,v)=>{s.appendChild(Dg(m,v,r,a))}),(n==null?void 0:n.allowFreeText)!==!1){let m=r==="rows"?Sg:Tg;if(r==="rows"){let v=b("div","persona-ask-pill persona-ask-row persona-ask-row--other persona-ask-pill-custom persona-pointer-events-auto");v.setAttribute("data-ask-user-action","focus-free-text"),v.setAttribute("data-option-index",String(d.length)),v.setAttribute("data-ask-other-row","true");let x=b("span","persona-ask-row-content"),M=document.createElement("input");M.type="text",M.className="persona-ask-row-input persona-flex-1 persona-pointer-events-auto",M.placeholder=(g=e.freeTextPlaceholder)!=null?g:Jp,M.setAttribute("data-ask-free-text-input","true"),M.setAttribute("aria-label",(f=e.freeTextLabel)!=null?f:m),x.appendChild(M),v.appendChild(x);let E=nu(r,a,d.length);E&&v.appendChild(E),s.appendChild(v)}else{let v=b("button","persona-ask-pill persona-ask-pill-custom persona-pointer-events-auto");v.type="button",v.setAttribute("data-ask-user-action","open-free-text"),v.textContent=(u=e.freeTextLabel)!=null?u:m,s.appendChild(v)}}return s},ru=(n,e)=>{var s,a;let r=b("div",e==="rows"?"persona-ask-free-text persona-ask-free-text--rows persona-flex persona-gap-2 persona-mt-2":"persona-ask-free-text persona-hidden persona-flex persona-gap-2 persona-mt-2");r.setAttribute("data-ask-free-text-row","true");let o=document.createElement("input");if(o.type="text",o.className="persona-ask-free-text-input persona-flex-1 persona-pointer-events-auto",o.placeholder=(s=n.freeTextPlaceholder)!=null?s:Jp,o.setAttribute("data-ask-free-text-input","true"),r.appendChild(o),e!=="rows"){let i=b("button","persona-ask-free-text-submit persona-pointer-events-auto");i.type="button",i.textContent=(a=n.submitLabel)!=null?a:Yp,i.setAttribute("data-ask-user-action","submit-free-text"),r.appendChild(i)}return r},Og=n=>{var r;let e=b("div","persona-ask-multi-actions persona-flex persona-justify-end persona-mt-2");e.setAttribute("data-ask-multi-actions","true");let t=b("button","persona-ask-multi-submit persona-pointer-events-auto");return t.type="button",t.textContent=(r=n.submitLabel)!=null?r:Yp,t.setAttribute("data-ask-user-action","submit-multi"),t.disabled=!0,e.appendChild(t),e},_g=(n,e,t)=>{var c,g,f,u;let r=b("div","persona-ask-nav persona-flex persona-justify-between persona-items-center persona-gap-2 persona-mt-2");r.setAttribute("data-ask-nav-row","true");let o=b("button","persona-ask-nav-back persona-pointer-events-auto");o.type="button",o.textContent=(c=t.backLabel)!=null?c:Eg,o.setAttribute("data-ask-user-action","back"),o.disabled=n===0,r.appendChild(o);let s=b("div","persona-ask-nav-right persona-flex persona-items-center persona-gap-2"),a=b("button","persona-ask-nav-skip persona-pointer-events-auto");a.type="button",a.textContent=(g=t.skipLabel)!=null?g:Lg,a.setAttribute("data-ask-user-action","skip"),s.appendChild(a);let i=b("button","persona-ask-nav-next persona-pointer-events-auto");i.type="button";let d=n===e-1;return i.textContent=d?(f=t.submitAllLabel)!=null?f:kg:(u=t.nextLabel)!=null?u:Mg,i.setAttribute("data-ask-user-action",d?"submit-all":"next"),i.disabled=!0,s.appendChild(i),r.appendChild(s),r},No=n=>{let e=n.getAttribute(Zp);if(!e)return{};try{let t=JSON.parse(e);return t&&typeof t=="object"?t:{}}catch{return{}}},ou=(n,e)=>{n.setAttribute(Zp,JSON.stringify(e))},dr=n=>{var t;let e=Number((t=n.getAttribute(Bi))!=null?t:"0");return Number.isFinite(e)?Math.max(0,Math.floor(e)):0},$g=(n,e)=>{n.setAttribute(Bi,String(Math.max(0,Math.floor(e))))},ds=n=>{var t;let e=Number((t=n.getAttribute(Di))!=null?t:"1");return Number.isFinite(e)?Math.max(1,Math.floor(e)):1},ho=n=>n.getAttribute(Ni)==="true",qg=(n,e)=>{var o;let t=(o=n.agentMetadata)==null?void 0:o.askUserQuestionAnswers;if(!t||typeof t!="object")return{};let r={};return e.forEach((s,a)=>{let i=typeof(s==null?void 0:s.question)=="string"?s.question:"";if(i&&Object.prototype.hasOwnProperty.call(t,i)){let d=t[i];(typeof d=="string"||Array.isArray(d))&&(r[a]=d)}}),r},Ug=(n,e)=>{var r;let t=(r=n.agentMetadata)==null?void 0:r.askUserQuestionIndex;return typeof t!="number"||!Number.isFinite(t)?0:Math.max(0,Math.min(e-1,Math.floor(t)))},Oa=(n,e)=>{let{payload:t}=cs(e),r=Ks(t),o=No(n),s={},a=new Set;return r.forEach((i,d)=>{let c=typeof(i==null?void 0:i.question)=="string"?i.question:"";c&&(a.has(c)&&typeof console!="undefined"&&console.warn(`[AgentWidget] ask_user_question has duplicate question text "${c}"; later answer wins.`),a.add(c),Object.prototype.hasOwnProperty.call(o,d)&&(s[c]=o[d]))}),s},su=n=>{let e=No(n),t=dr(n),r=e[t],o=new Set;typeof r=="string"?o.add(r):Array.isArray(r)&&r.forEach(d=>o.add(d));let s=n.querySelectorAll('[data-ask-user-action="pick"][data-option-label]');s.forEach(d=>{var f;let c=(f=d.getAttribute("data-option-label"))!=null?f:"",g=o.has(c);d.setAttribute("aria-pressed",g?"true":"false"),d.classList.toggle("persona-ask-pill-selected",g)});let a=new Set(Array.from(s).map(d=>{var c;return(c=d.getAttribute("data-option-label"))!=null?c:""})),i=n.querySelector('[data-ask-free-text-input="true"]');if(i)if(typeof r=="string"&&r.length>0&&!a.has(r)){i.value=r;let d=i.closest('[data-ask-free-text-row="true"]');d==null||d.classList.remove("persona-hidden")}else i.value=""},au=n=>{if(!ho(n))return;let e=No(n),t=dr(n),r=e[t],o=typeof r=="string"&&r.length>0||Array.isArray(r)&&r.length>0,s=n.querySelector('[data-ask-user-action="next"], [data-ask-user-action="submit-all"]');s&&(s.disabled=!o);let a=n.querySelector('[data-ask-user-action="submit-multi"]');if(a){let i=Array.from(n.querySelectorAll('[aria-pressed="true"][data-option-label]'));a.disabled=i.length===0}},Oi=(n,e,t)=>{let r=Fi(t),o=Wg(n),{payload:s,complete:a}=cs(e),i=ho(n),d=dr(n),c=ds(n),g=i?Hg(s,d):Rg(s),f=!!(g!=null&&g.multiSelect),u=n.querySelector('[data-ask-step-inline="true"]');u&&(u.textContent=i?`${d+1}/${c}`:"");let m=n.querySelector('[data-ask-stepper="true"]');m&&m.remove();let v=n.querySelector('[data-ask-question="true"]');if(v){let k=typeof(g==null?void 0:g.question)=="string"?g.question:"";v.textContent=k,v.classList.toggle("persona-ask-question-skeleton",!k&&!a)}let x=n.querySelector('[data-ask-pill-list="true"]');if(x){let k=Fg(g,r,a,o);x.replaceWith(k)}if(o!=="rows"){let k=n.querySelector('[data-ask-free-text-row="true"]');k&&k.replaceWith(ru(r,o))}let M=n.querySelector('[data-ask-multi-actions="true"]');!i&&f&&!M?n.appendChild(Og(r)):(!f||i)&&M&&M.remove(),n.setAttribute("data-multi-select",f?"true":"false");let E=n.querySelector('[data-ask-nav-row="true"]');if(i){let k=_g(d,c,r);E?E.replaceWith(k):n.appendChild(k)}else E&&E.remove();su(n),au(n)},zg=(n,e,t)=>{let r=Fi(e),o=Ig(r),s=n.toolCall.id,a=Ks(t),i=Math.max(1,a.length),d=i>1,c=qg(n,a),g=d?Ug(n,i):0,f=b("div",["persona-ask-sheet",`persona-ask-sheet--${o}`,"persona-pointer-events-auto","persona-ask-sheet-enter"].join(" "));f.setAttribute(ls,s),f.setAttribute("data-tool-call-id",s),f.setAttribute("data-message-id",n.id),f.setAttribute(Di,String(i)),f.setAttribute(Bi,String(g)),f.setAttribute(Ni,d?"true":"false"),f.setAttribute(eu,o),ou(f,c),f.setAttribute("role","group"),f.setAttribute("aria-label","Suggested answers"),r.slideInMs!==void 0&&f.style.setProperty("--persona-ask-sheet-duration",`${r.slideInMs}ms`),Bg(f,r);let u=b("div","persona-ask-sheet-header persona-flex persona-items-center persona-gap-3"),m=b("div","persona-ask-sheet-question persona-flex-1");m.setAttribute("data-ask-question","true"),m.textContent="",u.appendChild(m);let v=b("span","persona-ask-sheet-step-inline");v.setAttribute("data-ask-step-inline","true"),v.textContent="",u.appendChild(v),f.appendChild(u);let M=b("div",o==="rows"?"persona-ask-pills persona-ask-pills--rows persona-flex persona-flex-col persona-gap-2":"persona-ask-pills persona-flex persona-flex-wrap persona-gap-2");return M.setAttribute("data-ask-pill-list","true"),M.setAttribute("role","group"),f.appendChild(M),o!=="rows"&&f.appendChild(ru(r,o)),Oi(f,n,e),requestAnimationFrame(()=>{requestAnimationFrame(()=>f.classList.remove("persona-ask-sheet-enter"))}),f},jg=(n,e,t)=>{let{payload:r}=cs(e),o=Math.max(1,Ks(r).length);o>ds(n)&&(n.setAttribute(Di,String(o)),o>1&&!ho(n)&&n.setAttribute(Ni,"true")),Oi(n,e,t)};var _a=(n,e,t)=>{if(!t||!Do(n)||Fi(e).enabled===!1)return;let o=n.toolCall.id;t.querySelectorAll(`[${ls}]`).forEach(c=>{c.getAttribute(ls)!==o&&c.remove()});let a=t.querySelector(`[${ls}="${tu(o)}"]`);if(a){jg(a,n,e);return}let{payload:i}=cs(n),d=zg(n,e,i);t.appendChild(d)},ps=(n,e)=>{if(!n)return;let t=e?`[${ls}="${tu(e)}"]`:`[${ls}]`;n.querySelectorAll(t).forEach(o=>{o.classList.add("persona-ask-sheet-leave");let s=Number.parseInt(getComputedStyle(o).getPropertyValue("--persona-ask-sheet-duration")||"180",10);setTimeout(()=>o.remove(),Number.isFinite(s)?s:180)})},_i=n=>Array.from(n.querySelectorAll('[aria-pressed="true"][data-option-label]')).map(e=>e.getAttribute("data-option-label")).filter(e=>typeof e=="string"&&e.length>0),yo=(n,e)=>{let t=No(n),r=dr(n);typeof e=="string"&&e.length===0||Array.isArray(e)&&e.length===0?delete t[r]:t[r]=e,ou(n,t),su(n),au(n)},$a=(n,e,t,r)=>{let o=ds(n),s=Math.max(0,Math.min(o-1,r));$g(n,s),Oi(n,e,t)};var Kr="suggest_replies";var Vg={type:"object",properties:{suggestions:{type:"array",minItems:1,maxItems:4,description:"1-4 short, distinct follow-up replies, phrased in the user's voice.",items:{type:"string",minLength:1,maxLength:60}}},required:["suggestions"],additionalProperties:!1},iu={name:Kr,description:`Offer the user tappable quick-reply suggestions for their next message. Call at most once per turn, as the LAST action after your reply text is complete. Each suggestion is sent verbatim as the user's next message, so phrase suggestions in the user's voice (e.g. "Tell me more about pricing"). Keep them short and distinct. The result only confirms the suggestions were shown: do not add further commentary after calling this tool; end your turn.`,parametersSchema:Vg,origin:"sdk",annotations:{readOnlyHint:!0}},$i=()=>({content:[{type:"text",text:"Suggestions shown to the user."}]}),qi=n=>{var e;return n.variant==="tool"&&((e=n.toolCall)==null?void 0:e.name)===Kr},Kg=n=>{let e=n;if(typeof e=="string")try{e=JSON.parse(e)}catch{return[]}let t=e==null?void 0:e.suggestions;if(!Array.isArray(t))return[];let r=t.filter(o=>typeof o=="string").map(o=>o.trim()).filter(o=>o.length>0);return r.length>4?(console.warn(`[persona] suggest_replies: ${r.length} suggestions exceeds the cap of 4; extra suggestions dropped.`),r.slice(0,4)):r},lu=n=>{var e;for(let t=n.length-1;t>=0;t--){let r=n[t];if(r.role==="user")return null;if(!qi(r))continue;let o=Kg((e=r.toolCall)==null?void 0:e.args);return o.length>0?o:null}return null},cu=n=>{var t;let e=(t=n==null?void 0:n.features)==null?void 0:t.suggestReplies;return(e==null?void 0:e.expose)===!0&&e.enabled!==!1};var Gg={type:"object",properties:{questions:{type:"array",minItems:1,maxItems:Vs,description:"Questions to ask the user. Prefer a single question.",items:{type:"object",properties:{question:{type:"string",description:"The complete question, ending with a question mark."},header:{type:"string",maxLength:12,description:'Short topic label, e.g. "Auth method".'},options:{type:"array",minItems:2,maxItems:4,description:'2-4 distinct choices. Do NOT add an "Other" option: free text is automatic.',items:{type:"object",properties:{label:{type:"string",description:"Concise choice text (1-5 words)."},description:{type:"string",description:"What the option means or implies."}},required:["label"],additionalProperties:!1}},multiSelect:{type:"boolean",description:"Allow selecting multiple options. Default false."},allowFreeText:{type:"boolean",description:"Show a free-text input. Default true."}},required:["question","options"],additionalProperties:!1}}},required:["questions"],additionalProperties:!1},Qg={name:Hi,description:"Ask the user multiple-choice questions and wait for their answers. Use only when blocked on a decision that is the user's to make: a preference, a choice between valid approaches, or information you cannot infer. Each question offers 2-4 options plus an automatic free-text input. The result maps each question to its answer (an array when multiSelect); a question absent from the result was skipped.",parametersSchema:Gg,origin:"sdk",annotations:{readOnlyHint:!0}},Ui=n=>{var r;let e=[],t=(r=n==null?void 0:n.features)==null?void 0:r.askUserQuestion;return(t==null?void 0:t.expose)===!0&&t.enabled!==!1&&e.push(Qg),cu(n)&&e.push(iu),e};import{parse as Xg,STR as Jg,OBJ as Yg}from"partial-json";var du=n=>n.replace(/\\n/g,`
|
|
7
|
-
`).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\"),
|
|
6
|
+
${n.description}`:"");return window.confirm(t)},bg=n=>{if(n==null)return"";try{let e=JSON.stringify(n,null,2);return e.length>500?e.slice(0,500)+"\u2026":e}catch{return String(n)}},vg=n=>{if(n===void 0)return"{}";try{let e=JSON.stringify(n);return e===void 0?"{}":e}catch{return"{}"}},xg=n=>{if(n===void 0)return"";try{return JSON.stringify(n)}catch{return String(n)}};import{parse as wg,ARR as Cg,OBJ as Ag,STR as Sg}from"partial-json";var b=(n,e)=>{let t=document.createElement(n);return e&&(t.className=e),t},kr=(n,e,t)=>{let r=n.createElement(e);return t&&(r.className=t),r};var Tt=(n,e={},...t)=>{let r=document.createElement(n);if(e.className&&(r.className=e.className),e.text!==void 0&&(r.textContent=e.text),e.attrs)for(let[s,a]of Object.entries(e.attrs))r.setAttribute(s,a);if(e.style){let s=r.style,a=e.style;for(let i of Object.keys(a)){let d=a[i];d!=null&&(s[i]=d)}}let o=t.filter(s=>s!=null);return o.length>0&&r.append(...o),r},Ms=(...n)=>n.filter(Boolean).join(" ");var mi="ask_user_question",Es=8,Xo="data-persona-ask-sheet-for",Tg="Other",Mg="Other\u2026",_p="Type your own answer here",$p="Send",Eg="Next",kg="Back",Lg="Submit all",Pg="Skip",Ig=3,gi="data-ask-current-index",fi="data-ask-question-count",Up="data-ask-answers",hi="data-ask-grouped",qp="data-ask-layout",Wg=n=>n.layout==="pills"?"pills":"rows",Rg=n=>n.getAttribute(qp)==="pills"?"pills":"rows",Op=!1,zp=n=>n.replace(/["\\]/g,"\\$&"),Eo=n=>n.variant==="tool"&&!!n.toolCall&&n.toolCall.name===mi,yi=n=>{var e,t;return(t=(e=n==null?void 0:n.features)==null?void 0:e.askUserQuestion)!=null?t:{}},Jo=n=>{let e=n.toolCall;if(!e)return{payload:null,complete:!1};let t=e.status==="complete";if(e.args&&typeof e.args=="object")return{payload:e.args,complete:t};let r=e.chunks;if(!r||r.length===0)return{payload:null,complete:t};try{let o=r.join(""),s=wg(o,Sg|Ag|Cg);if(s&&typeof s=="object")return{payload:s,complete:t}}catch{}return{payload:null,complete:t}},ks=n=>{let e=Array.isArray(n==null?void 0:n.questions)?n.questions:[];return e.length>Es&&!Op&&(Op=!0,typeof console!="undefined"&&console.warn(`[AgentWidget] ask_user_question received ${e.length} questions; truncating to ${Es}.`)),e.slice(0,Es)},Hg=n=>{var e;return(e=ks(n)[0])!=null?e:null},Bg=(n,e)=>{var t;return(t=ks(n)[e])!=null?t:null},Dg=(n,e)=>{let t=e.styles;t&&(t.sheetBackground&&n.style.setProperty("--persona-ask-sheet-bg",t.sheetBackground),t.sheetBorder&&n.style.setProperty("--persona-ask-sheet-border",t.sheetBorder),t.sheetShadow&&n.style.setProperty("--persona-ask-sheet-shadow",t.sheetShadow),t.pillBackground&&n.style.setProperty("--persona-ask-pill-bg",t.pillBackground),t.pillBackgroundSelected&&n.style.setProperty("--persona-ask-pill-bg-selected",t.pillBackgroundSelected),t.pillTextColor&&n.style.setProperty("--persona-ask-pill-fg",t.pillTextColor),t.pillTextColorSelected&&n.style.setProperty("--persona-ask-pill-fg-selected",t.pillTextColorSelected),t.pillBorderRadius&&n.style.setProperty("--persona-ask-pill-radius",t.pillBorderRadius),t.customInputBackground&&n.style.setProperty("--persona-ask-input-bg",t.customInputBackground))},jp=(n,e,t)=>{if(n!=="rows")return null;let r=b("span","persona-ask-row-affordance");if(r.setAttribute("aria-hidden","true"),e){let o=b("span","persona-ask-row-check");r.appendChild(o)}else{let o=b("span","persona-ask-row-badge");o.textContent=String(t+1),r.appendChild(o)}return r},Ng=(n,e,t,r)=>{let s=b("button",t==="rows"?"persona-ask-pill persona-ask-row persona-pointer-events-auto":"persona-ask-pill persona-pointer-events-auto");if(s.type="button",s.setAttribute("role",r?"checkbox":"button"),s.setAttribute("aria-pressed","false"),s.setAttribute("data-ask-user-action","pick"),s.setAttribute("data-option-index",String(e)),s.setAttribute("data-option-label",n.label),t==="rows"){let a=b("span","persona-ask-row-content"),i=b("span","persona-ask-row-label");if(i.textContent=n.label,a.appendChild(i),n.description){let c=b("span","persona-ask-row-description");c.textContent=n.description,a.appendChild(c)}s.appendChild(a);let d=jp(t,r,e);d&&s.appendChild(d)}else s.textContent=n.label,n.description&&(s.title=n.description);return s},Fg=n=>{let t=b("span",n==="rows"?"persona-ask-pill persona-ask-row persona-ask-pill-skeleton persona-pointer-events-none":"persona-ask-pill persona-ask-pill-skeleton persona-pointer-events-none");return t.setAttribute("aria-hidden","true"),t},Og=(n,e,t,r)=>{var m,f,g;let s=b("div",r==="rows"?"persona-ask-pills persona-ask-pills--rows persona-flex persona-flex-col persona-gap-2":"persona-ask-pills persona-flex persona-flex-wrap persona-gap-2");s.setAttribute("role","group"),s.setAttribute("data-ask-pill-list","true");let a=!!(n!=null&&n.multiSelect),d=(Array.isArray(n==null?void 0:n.options)?n.options:[]).filter(u=>u&&typeof u.label=="string"&&u.label.length>0);if(d.length===0&&!t){for(let u=0;u<Ig;u++)s.appendChild(Fg(r));return s}if(d.forEach((u,v)=>{s.appendChild(Ng(u,v,r,a))}),(n==null?void 0:n.allowFreeText)!==!1){let u=r==="rows"?Tg:Mg;if(r==="rows"){let v=b("div","persona-ask-pill persona-ask-row persona-ask-row--other persona-ask-pill-custom persona-pointer-events-auto");v.setAttribute("data-ask-user-action","focus-free-text"),v.setAttribute("data-option-index",String(d.length)),v.setAttribute("data-ask-other-row","true");let x=b("span","persona-ask-row-content"),P=document.createElement("input");P.type="text",P.className="persona-ask-row-input persona-flex-1 persona-pointer-events-auto",P.placeholder=(m=e.freeTextPlaceholder)!=null?m:_p,P.setAttribute("data-ask-free-text-input","true"),P.setAttribute("aria-label",(f=e.freeTextLabel)!=null?f:u),x.appendChild(P),v.appendChild(x);let T=jp(r,a,d.length);T&&v.appendChild(T),s.appendChild(v)}else{let v=b("button","persona-ask-pill persona-ask-pill-custom persona-pointer-events-auto");v.type="button",v.setAttribute("data-ask-user-action","open-free-text"),v.textContent=(g=e.freeTextLabel)!=null?g:u,s.appendChild(v)}}return s},Vp=(n,e)=>{var s,a;let r=b("div",e==="rows"?"persona-ask-free-text persona-ask-free-text--rows persona-flex persona-gap-2 persona-mt-2":"persona-ask-free-text persona-hidden persona-flex persona-gap-2 persona-mt-2");r.setAttribute("data-ask-free-text-row","true");let o=document.createElement("input");if(o.type="text",o.className="persona-ask-free-text-input persona-flex-1 persona-pointer-events-auto",o.placeholder=(s=n.freeTextPlaceholder)!=null?s:_p,o.setAttribute("data-ask-free-text-input","true"),r.appendChild(o),e!=="rows"){let i=b("button","persona-ask-free-text-submit persona-pointer-events-auto");i.type="button",i.textContent=(a=n.submitLabel)!=null?a:$p,i.setAttribute("data-ask-user-action","submit-free-text"),r.appendChild(i)}return r},_g=n=>{var r;let e=b("div","persona-ask-multi-actions persona-flex persona-justify-end persona-mt-2");e.setAttribute("data-ask-multi-actions","true");let t=b("button","persona-ask-multi-submit persona-pointer-events-auto");return t.type="button",t.textContent=(r=n.submitLabel)!=null?r:$p,t.setAttribute("data-ask-user-action","submit-multi"),t.disabled=!0,e.appendChild(t),e},$g=(n,e,t)=>{var c,m,f,g;let r=b("div","persona-ask-nav persona-flex persona-justify-between persona-items-center persona-gap-2 persona-mt-2");r.setAttribute("data-ask-nav-row","true");let o=b("button","persona-ask-nav-back persona-pointer-events-auto");o.type="button",o.textContent=(c=t.backLabel)!=null?c:kg,o.setAttribute("data-ask-user-action","back"),o.disabled=n===0,r.appendChild(o);let s=b("div","persona-ask-nav-right persona-flex persona-items-center persona-gap-2"),a=b("button","persona-ask-nav-skip persona-pointer-events-auto");a.type="button",a.textContent=(m=t.skipLabel)!=null?m:Pg,a.setAttribute("data-ask-user-action","skip"),s.appendChild(a);let i=b("button","persona-ask-nav-next persona-pointer-events-auto");i.type="button";let d=n===e-1;return i.textContent=d?(f=t.submitAllLabel)!=null?f:Lg:(g=t.nextLabel)!=null?g:Eg,i.setAttribute("data-ask-user-action",d?"submit-all":"next"),i.disabled=!0,s.appendChild(i),r.appendChild(s),r},ko=n=>{let e=n.getAttribute(Up);if(!e)return{};try{let t=JSON.parse(e);return t&&typeof t=="object"?t:{}}catch{return{}}},Kp=(n,e)=>{n.setAttribute(Up,JSON.stringify(e))},or=n=>{var t;let e=Number((t=n.getAttribute(gi))!=null?t:"0");return Number.isFinite(e)?Math.max(0,Math.floor(e)):0},Ug=(n,e)=>{n.setAttribute(gi,String(Math.max(0,Math.floor(e))))},Yo=n=>{var t;let e=Number((t=n.getAttribute(fi))!=null?t:"1");return Number.isFinite(e)?Math.max(1,Math.floor(e)):1},so=n=>n.getAttribute(hi)==="true",qg=(n,e)=>{var o;let t=(o=n.agentMetadata)==null?void 0:o.askUserQuestionAnswers;if(!t||typeof t!="object")return{};let r={};return e.forEach((s,a)=>{let i=typeof(s==null?void 0:s.question)=="string"?s.question:"";if(i&&Object.prototype.hasOwnProperty.call(t,i)){let d=t[i];(typeof d=="string"||Array.isArray(d))&&(r[a]=d)}}),r},zg=(n,e)=>{var r;let t=(r=n.agentMetadata)==null?void 0:r.askUserQuestionIndex;return typeof t!="number"||!Number.isFinite(t)?0:Math.max(0,Math.min(e-1,Math.floor(t)))},ga=(n,e)=>{let{payload:t}=Jo(e),r=ks(t),o=ko(n),s={},a=new Set;return r.forEach((i,d)=>{let c=typeof(i==null?void 0:i.question)=="string"?i.question:"";c&&(a.has(c)&&typeof console!="undefined"&&console.warn(`[AgentWidget] ask_user_question has duplicate question text "${c}"; later answer wins.`),a.add(c),Object.prototype.hasOwnProperty.call(o,d)&&(s[c]=o[d]))}),s},Gp=n=>{let e=ko(n),t=or(n),r=e[t],o=new Set;typeof r=="string"?o.add(r):Array.isArray(r)&&r.forEach(d=>o.add(d));let s=n.querySelectorAll('[data-ask-user-action="pick"][data-option-label]');s.forEach(d=>{var f;let c=(f=d.getAttribute("data-option-label"))!=null?f:"",m=o.has(c);d.setAttribute("aria-pressed",m?"true":"false"),d.classList.toggle("persona-ask-pill-selected",m)});let a=new Set(Array.from(s).map(d=>{var c;return(c=d.getAttribute("data-option-label"))!=null?c:""})),i=n.querySelector('[data-ask-free-text-input="true"]');if(i)if(typeof r=="string"&&r.length>0&&!a.has(r)){i.value=r;let d=i.closest('[data-ask-free-text-row="true"]');d==null||d.classList.remove("persona-hidden")}else i.value=""},Qp=n=>{if(!so(n))return;let e=ko(n),t=or(n),r=e[t],o=typeof r=="string"&&r.length>0||Array.isArray(r)&&r.length>0,s=n.querySelector('[data-ask-user-action="next"], [data-ask-user-action="submit-all"]');s&&(s.disabled=!o);let a=n.querySelector('[data-ask-user-action="submit-multi"]');if(a){let i=Array.from(n.querySelectorAll('[aria-pressed="true"][data-option-label]'));a.disabled=i.length===0}},bi=(n,e,t)=>{let r=yi(t),o=Rg(n),{payload:s,complete:a}=Jo(e),i=so(n),d=or(n),c=Yo(n),m=i?Bg(s,d):Hg(s),f=!!(m!=null&&m.multiSelect),g=n.querySelector('[data-ask-step-inline="true"]');g&&(g.textContent=i?`${d+1}/${c}`:"");let u=n.querySelector('[data-ask-stepper="true"]');u&&u.remove();let v=n.querySelector('[data-ask-question="true"]');if(v){let M=typeof(m==null?void 0:m.question)=="string"?m.question:"";v.textContent=M,v.classList.toggle("persona-ask-question-skeleton",!M&&!a)}let x=n.querySelector('[data-ask-pill-list="true"]');if(x){let M=Og(m,r,a,o);x.replaceWith(M)}if(o!=="rows"){let M=n.querySelector('[data-ask-free-text-row="true"]');M&&M.replaceWith(Vp(r,o))}let P=n.querySelector('[data-ask-multi-actions="true"]');!i&&f&&!P?n.appendChild(_g(r)):(!f||i)&&P&&P.remove(),n.setAttribute("data-multi-select",f?"true":"false");let T=n.querySelector('[data-ask-nav-row="true"]');if(i){let M=$g(d,c,r);T?T.replaceWith(M):n.appendChild(M)}else T&&T.remove();Gp(n),Qp(n)},jg=(n,e,t)=>{let r=yi(e),o=Wg(r),s=n.toolCall.id,a=ks(t),i=Math.max(1,a.length),d=i>1,c=qg(n,a),m=d?zg(n,i):0,f=b("div",["persona-ask-sheet",`persona-ask-sheet--${o}`,"persona-pointer-events-auto","persona-ask-sheet-enter"].join(" "));f.setAttribute(Xo,s),f.setAttribute("data-tool-call-id",s),f.setAttribute("data-message-id",n.id),f.setAttribute(fi,String(i)),f.setAttribute(gi,String(m)),f.setAttribute(hi,d?"true":"false"),f.setAttribute(qp,o),Kp(f,c),f.setAttribute("role","group"),f.setAttribute("aria-label","Suggested answers"),r.slideInMs!==void 0&&f.style.setProperty("--persona-ask-sheet-duration",`${r.slideInMs}ms`),Dg(f,r);let g=b("div","persona-ask-sheet-header persona-flex persona-items-center persona-gap-3"),u=b("div","persona-ask-sheet-question persona-flex-1");u.setAttribute("data-ask-question","true"),u.textContent="",g.appendChild(u);let v=b("span","persona-ask-sheet-step-inline");v.setAttribute("data-ask-step-inline","true"),v.textContent="",g.appendChild(v),f.appendChild(g);let P=b("div",o==="rows"?"persona-ask-pills persona-ask-pills--rows persona-flex persona-flex-col persona-gap-2":"persona-ask-pills persona-flex persona-flex-wrap persona-gap-2");return P.setAttribute("data-ask-pill-list","true"),P.setAttribute("role","group"),f.appendChild(P),o!=="rows"&&f.appendChild(Vp(r,o)),bi(f,n,e),requestAnimationFrame(()=>{requestAnimationFrame(()=>f.classList.remove("persona-ask-sheet-enter"))}),f},Vg=(n,e,t)=>{let{payload:r}=Jo(e),o=Math.max(1,ks(r).length);o>Yo(n)&&(n.setAttribute(fi,String(o)),o>1&&!so(n)&&n.setAttribute(hi,"true")),bi(n,e,t)};var fa=(n,e,t)=>{if(!t||!Eo(n)||yi(e).enabled===!1)return;let o=n.toolCall.id;t.querySelectorAll(`[${Xo}]`).forEach(c=>{c.getAttribute(Xo)!==o&&c.remove()});let a=t.querySelector(`[${Xo}="${zp(o)}"]`);if(a){Vg(a,n,e);return}let{payload:i}=Jo(n),d=jg(n,e,i);t.appendChild(d)},Zo=(n,e)=>{if(!n)return;let t=e?`[${Xo}="${zp(e)}"]`:`[${Xo}]`;n.querySelectorAll(t).forEach(o=>{o.classList.add("persona-ask-sheet-leave");let s=Number.parseInt(getComputedStyle(o).getPropertyValue("--persona-ask-sheet-duration")||"180",10);setTimeout(()=>o.remove(),Number.isFinite(s)?s:180)})},vi=n=>Array.from(n.querySelectorAll('[aria-pressed="true"][data-option-label]')).map(e=>e.getAttribute("data-option-label")).filter(e=>typeof e=="string"&&e.length>0),ao=(n,e)=>{let t=ko(n),r=or(n);typeof e=="string"&&e.length===0||Array.isArray(e)&&e.length===0?delete t[r]:t[r]=e,Kp(n,t),Gp(n),Qp(n)},ha=(n,e,t,r)=>{let o=Yo(n),s=Math.max(0,Math.min(o-1,r));Ug(n,s),bi(n,e,t)};var _r="suggest_replies";var Kg={type:"object",properties:{suggestions:{type:"array",minItems:1,maxItems:4,description:"1-4 short, distinct follow-up replies, phrased in the user's voice.",items:{type:"string",minLength:1,maxLength:60}}},required:["suggestions"],additionalProperties:!1},Xp={name:_r,description:`Offer the user tappable quick-reply suggestions for their next message. Call at most once per turn, as the LAST action after your reply text is complete. Each suggestion is sent verbatim as the user's next message, so phrase suggestions in the user's voice (e.g. "Tell me more about pricing"). Keep them short and distinct. The result only confirms the suggestions were shown: do not add further commentary after calling this tool; end your turn.`,parametersSchema:Kg,origin:"sdk",annotations:{readOnlyHint:!0}},xi=()=>({content:[{type:"text",text:"Suggestions shown to the user."}]}),wi=n=>{var e;return n.variant==="tool"&&((e=n.toolCall)==null?void 0:e.name)===_r},Gg=n=>{let e=n;if(typeof e=="string")try{e=JSON.parse(e)}catch{return[]}let t=e==null?void 0:e.suggestions;if(!Array.isArray(t))return[];let r=t.filter(o=>typeof o=="string").map(o=>o.trim()).filter(o=>o.length>0);return r.length>4?(console.warn(`[persona] suggest_replies: ${r.length} suggestions exceeds the cap of 4; extra suggestions dropped.`),r.slice(0,4)):r},Jp=n=>{var e;for(let t=n.length-1;t>=0;t--){let r=n[t];if(r.role==="user")return null;if(!wi(r))continue;let o=Gg((e=r.toolCall)==null?void 0:e.args);return o.length>0?o:null}return null},Yp=n=>{var t;let e=(t=n==null?void 0:n.features)==null?void 0:t.suggestReplies;return(e==null?void 0:e.expose)===!0&&e.enabled!==!1};var Qg={type:"object",properties:{questions:{type:"array",minItems:1,maxItems:Es,description:"Questions to ask the user. Prefer a single question.",items:{type:"object",properties:{question:{type:"string",description:"The complete question, ending with a question mark."},header:{type:"string",maxLength:12,description:'Short topic label, e.g. "Auth method".'},options:{type:"array",minItems:2,maxItems:4,description:'2-4 distinct choices. Do NOT add an "Other" option: free text is automatic.',items:{type:"object",properties:{label:{type:"string",description:"Concise choice text (1-5 words)."},description:{type:"string",description:"What the option means or implies."}},required:["label"],additionalProperties:!1}},multiSelect:{type:"boolean",description:"Allow selecting multiple options. Default false."},allowFreeText:{type:"boolean",description:"Show a free-text input. Default true."}},required:["question","options"],additionalProperties:!1}}},required:["questions"],additionalProperties:!1},Xg={name:mi,description:"Ask the user multiple-choice questions and wait for their answers. Use only when blocked on a decision that is the user's to make: a preference, a choice between valid approaches, or information you cannot infer. Each question offers 2-4 options plus an automatic free-text input. The result maps each question to its answer (an array when multiSelect); a question absent from the result was skipped.",parametersSchema:Qg,origin:"sdk",annotations:{readOnlyHint:!0}},Ci=n=>{var r;let e=[],t=(r=n==null?void 0:n.features)==null?void 0:r.askUserQuestion;return(t==null?void 0:t.expose)===!0&&t.enabled!==!1&&e.push(Xg),Yp(n)&&e.push(Xp),e};import{parse as Jg,STR as Yg,OBJ as Zg}from"partial-json";var Zp=n=>n.replace(/\\n/g,`
|
|
7
|
+
`).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\"),es=n=>{if(n===null)return"null";if(n===void 0)return"";if(typeof n=="string")return n;if(typeof n=="number"||typeof n=="boolean")return String(n);try{return JSON.stringify(n,null,2)}catch{return String(n)}},ef=n=>{var a,i;let e=(a=n.completedAt)!=null?a:Date.now(),t=(i=n.startedAt)!=null?i:e,o=(n.durationMs!==void 0?n.durationMs:Math.max(0,e-t))/1e3;return o<.1?"Thought for <0.1 seconds":`Thought for ${o>=10?Math.round(o).toString():o.toFixed(1).replace(/\.0$/,"")} seconds`},eu=n=>n.status==="complete"?ef(n):n.status==="pending"?"Waiting":"",tf=n=>{var o,s,a;let t=(typeof n.duration=="number"?n.duration:typeof n.durationMs=="number"?n.durationMs:Math.max(0,((o=n.completedAt)!=null?o:Date.now())-((a=(s=n.startedAt)!=null?s:n.completedAt)!=null?a:Date.now())))/1e3;return t<.1?"Used tool for <0.1 seconds":`Used tool for ${t>=10?Math.round(t).toString():t.toFixed(1).replace(/\.0$/,"")} seconds`};var tu=n=>n.status==="complete"?tf(n):"Using tool...",ya=n=>{let e=n/1e3;return e<.1?"<0.1s":e>=10?`${Math.round(e)}s`:`${e.toFixed(1).replace(/\.0$/,"")}s`},Ps=n=>{var t,r,o;let e=typeof n.duration=="number"?n.duration:typeof n.durationMs=="number"?n.durationMs:Math.max(0,((t=n.completedAt)!=null?t:Date.now())-((o=(r=n.startedAt)!=null?r:n.completedAt)!=null?o:Date.now()));return ya(e)},ba=n=>{var t,r,o;let e=n.durationMs!==void 0?n.durationMs:Math.max(0,((t=n.completedAt)!=null?t:Date.now())-((o=(r=n.startedAt)!=null?r:n.completedAt)!=null?o:Date.now()));return ya(e)},Ai=(n,e,t)=>{var s;if(!e)return t;let r=((s=n.name)==null?void 0:s.trim())||"tool",o=Ps(n);return e.replace(/\{toolName\}/g,r).replace(/\{duration\}/g,o)},va=(n,e)=>{let t=n.replace(/\{toolName\}/g,e),r=[],o=/\*\*(.+?)\*\*|\*(.+?)\*|~(.+?)~/g,s=0,a;for(;(a=o.exec(t))!==null;)a.index>s&&Ls(r,t.slice(s,a.index),[]),a[1]!==void 0?Ls(r,a[1],["bold"]):a[2]!==void 0?Ls(r,a[2],["italic"]):a[3]!==void 0&&Ls(r,a[3],["dim"]),s=a.index+a[0].length;return s<t.length&&Ls(r,t.slice(s),[]),r},Ls=(n,e,t)=>{let r=e.split("{duration}");for(let o=0;o<r.length;o++)r[o]&&n.push({text:r[o],styles:t}),o<r.length-1&&n.push({text:"{duration}",styles:t,isDuration:!0})},nf=()=>{let n=null,e=0,t=r=>{let o=/"text"\s*:\s*"((?:[^"\\]|\\.|")*?)"/,s=r.match(o);if(s&&s[1])try{return s[1].replace(/\\n/g,`
|
|
8
8
|
`).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}catch{return s[1]}let a=/"text"\s*:\s*"((?:[^"\\]|\\.)*)/,i=r.match(a);if(i&&i[1])try{return i[1].replace(/\\n/g,`
|
|
9
|
-
`).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}catch{return i[1]}return null};return{getExtractedText:()=>n,processChunk:async r=>{if(r.length<=e)return n!==null?{text:n,raw:r}:null;let o=r.trim();if(!o.startsWith("{")&&!o.startsWith("["))return null;let s=t(r);return s!==null&&(n=s),e=r.length,n!==null?{text:n,raw:r}:null},close:async()=>{}}},Fo=n=>{try{let e=JSON.parse(n);if(e&&typeof e=="object"&&typeof e.text=="string")return e.text}catch{return null}return null},mu=()=>{let n={processChunk:e=>null,getExtractedText:()=>null};return n.__isPlainTextParser=!0,n},gu=()=>{var e;let n=tf();return{processChunk:async t=>{let r=t.trim();return!r.startsWith("{")&&!r.startsWith("[")?null:n.processChunk(t)},getExtractedText:n.getExtractedText.bind(n),close:(e=n.close)==null?void 0:e.bind(n)}},fu=()=>{let n=null,e=0;return{getExtractedText:()=>n,processChunk:t=>{let r=t.trim();if(!r.startsWith("{")&&!r.startsWith("["))return null;if(t.length<=e)return n!==null||n===""?{text:n||"",raw:t}:null;try{let o=Xg(t,Jg|Yg);o&&typeof o=="object"&&(o.component&&typeof o.component=="string"?n=typeof o.text=="string"?du(o.text):"":o.type==="init"&&o.form?n="":typeof o.text=="string"&&(n=du(o.text)))}catch{}return e=t.length,n!==null?{text:n,raw:t}:null},close:()=>{}}};var hu=()=>{let n=null;return{processChunk:e=>{if(!e.trim().startsWith("<"))return null;let r=e.match(/<text[^>]*>([\s\S]*?)<\/text>/);return r&&r[1]?(n=r[1],{text:n,raw:e}):null},getExtractedText:()=>n}};var ja=class{constructor(e,t=50){this.nextExpectedSeq=null;this.buffer=new Map;this.flushTimer=null;this.emitter=e,this.gapTimeoutMs=t}push(e,t){var s,a,i;let r=(i=(s=t==null?void 0:t.seq)!=null?s:t==null?void 0:t.sequenceIndex)!=null?i:(a=t==null?void 0:t.agentContext)==null?void 0:a.seq;if(r==null){this.buffer.size>0&&this.flushAll(),this.emitter(e,t);return}if(this.nextExpectedSeq===null&&(this.nextExpectedSeq=1),r===this.nextExpectedSeq){this.emitter(e,t),this.nextExpectedSeq=r+1,this.drainConsecutive();return}if(r<this.nextExpectedSeq){this.emitter(e,t);return}let o=this.buffer.get(r);o!==void 0&&(typeof console!="undefined"&&typeof console.warn=="function"&&console.warn(`[persona] SequenceReorderBuffer: duplicate seq=${r} (${o.payloadType} vs ${e}); emitting earlier event out-of-order to avoid loss`),this.emitter(o.payloadType,o.payload)),this.buffer.set(r,{payloadType:e,payload:t,seq:r}),this.startGapTimer()}drainConsecutive(){for(;this.buffer.has(this.nextExpectedSeq);){let e=this.buffer.get(this.nextExpectedSeq);this.buffer.delete(this.nextExpectedSeq),this.emitter(e.payloadType,e.payload),this.nextExpectedSeq++}this.buffer.size===0&&this.clearGapTimer()}startGapTimer(){this.flushTimer===null&&(this.flushTimer=setTimeout(()=>{this.flushAll()},this.gapTimeoutMs))}clearGapTimer(){this.flushTimer!==null&&(clearTimeout(this.flushTimer),this.flushTimer=null)}flushAll(){if(this.clearGapTimer(),this.buffer.size===0)return;let e=[...this.buffer.entries()].sort((t,r)=>t[0]-r[0]);for(let[t,r]of e)this.buffer.delete(t),this.emitter(r.payloadType,r.payload);e.length>0&&(this.nextExpectedSeq=e[e.length-1][0]+1)}destroy(){this.clearGapTimer(),this.buffer.clear()}flushPending(){this.flushAll()}};var yu="3.36.0";var Xs=yu;var rf="https://api.runtype.com/v1/dispatch",Va="https://api.runtype.com";function of(n){var s,a;let e=n.toLowerCase(),r={"application/pdf":"pdf","application/json":"json","application/zip":"zip","text/plain":"txt","text/csv":"csv","text/markdown":"md"}[e];if(r)return`attachment.${r}`;let o=e.indexOf("/");if(o>0){let i=(a=(s=e.slice(o+1).split(";")[0])==null?void 0:s.trim())!=null?a:"";if(i&&i!=="octet-stream"&&/^[a-z0-9.+-]+$/i.test(i))return`attachment.${i}`}return"attachment"}var ji=n=>!!(n.contentParts&&n.contentParts.length>0||n.llmContent&&n.llmContent.trim().length>0||n.rawContent&&n.rawContent.trim().length>0||n.content&&n.content.trim().length>0);function sf(n){switch(n){case"json":return fu;case"regex-json":return gu;case"xml":return hu;default:return mu}}var bu=n=>n.startsWith("{")||n.startsWith("[")||n.startsWith("<");function af(n,e){if(!n)return e;let t=n.trim(),r=e.trim();if(t.length===0)return e;if(r.length===0)return n;let o=bu(t);if(!bu(r))return n;if(!o||r===t||r.startsWith(t))return e;let a=Fo(n);return Fo(e)!==null&&a===null?e:n}var Js=class{constructor(e={}){this.config=e;this.clientSession=null;this.sessionInitPromise=null;this.lastSentClientToolsFingerprint=null;this.clientToolsFingerprintSessionId=null;var t,r,o,s;this.apiUrl=(t=e.apiUrl)!=null?t:rf,this.headers={"Content-Type":"application/json","X-Persona-Version":Xs,...e.headers},this.debug=!!e.debug,this.createStreamParser=(r=e.streamParser)!=null?r:sf(e.parserType),this.contextProviders=(o=e.contextProviders)!=null?o:[],this.requestMiddleware=e.requestMiddleware,this.customFetch=e.customFetch,this.parseSSEEvent=e.parseSSEEvent,this.getHeaders=e.getHeaders,this.webMcpBridge=((s=e.webmcp)==null?void 0:s.enabled)===!0?new Fa(e.webmcp):null}updateConfig(e){this.config=e}setSSEEventCallback(e){this.onSSEEvent=e}setWebMcpConfirmHandler(e){var t;(t=this.webMcpBridge)==null||t.setConfirmHandler(e)}isWebMcpOperational(){var e;return((e=this.webMcpBridge)==null?void 0:e.isOperational())===!0}executeWebMcpToolCall(e,t,r){return this.webMcpBridge?this.webMcpBridge.executeToolCall(e,t,r):null}getSSEEventCallback(){return this.onSSEEvent}isClientTokenMode(){return!!this.config.clientToken}isAgentMode(){return!!this.config.agent}getClientApiUrl(e){var r;return`${((r=this.config.apiUrl)==null?void 0:r.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||Va}/v1/client/${e}`}getClientSession(){return this.clientSession}async initSession(){var e,t;if(!this.isClientTokenMode())throw new Error("initSession() only available in client token mode");if(this.clientSession&&new Date<this.clientSession.expiresAt)return this.clientSession;if(this.sessionInitPromise)return this.sessionInitPromise;this.sessionInitPromise=this._doInitSession();try{let r=await this.sessionInitPromise;return this.clientSession=r,this.resetClientToolsFingerprint(),(t=(e=this.config).onSessionInit)==null||t.call(e,r),r}finally{this.sessionInitPromise=null}}async _doInitSession(){var s,a;let e=((a=(s=this.config).getStoredSessionId)==null?void 0:a.call(s))||null,t={token:this.config.clientToken,...this.config.flowId&&{flowId:this.config.flowId},...e&&{sessionId:e}},r=await fetch(this.getClientApiUrl("init"),{method:"POST",headers:{"Content-Type":"application/json","X-Persona-Version":Xs},body:JSON.stringify(t)});if(!r.ok){let i=await r.json().catch(()=>({error:"Session initialization failed"}));throw r.status===401?new Error(`Invalid client token: ${i.hint||i.error}`):r.status===403?new Error(`Origin not allowed: ${i.hint||i.error}`):new Error(i.error||"Failed to initialize session")}let o=await r.json();return this.config.setStoredSessionId&&this.config.setStoredSessionId(o.sessionId),{sessionId:o.sessionId,expiresAt:new Date(o.expiresAt),flow:o.flow,config:{welcomeMessage:o.config.welcomeMessage,placeholder:o.config.placeholder,theme:o.config.theme}}}clearClientSession(){this.clientSession=null,this.sessionInitPromise=null,this.resetClientToolsFingerprint()}resetClientToolsFingerprint(){this.lastSentClientToolsFingerprint=null,this.clientToolsFingerprintSessionId=null}getFeedbackApiUrl(){var t;return`${((t=this.config.apiUrl)==null?void 0:t.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||Va}/v1/client/feedback`}async sendFeedback(e){var a,i;if(!this.isClientTokenMode())throw new Error("sendFeedback() only available in client token mode");if(!this.getClientSession())throw new Error("No active session. Please initialize session first.");if(["upvote","downvote","copy"].includes(e.type)&&!e.messageId)throw new Error(`messageId is required for ${e.type} feedback type`);if(e.type==="csat"&&(e.rating===void 0||e.rating<1||e.rating>5))throw new Error("CSAT rating must be between 1 and 5");if(e.type==="nps"&&(e.rating===void 0||e.rating<0||e.rating>10))throw new Error("NPS rating must be between 0 and 10");this.debug&&console.debug("[AgentWidgetClient] sending feedback",e);let o={...e,...this.config.clientToken&&{token:this.config.clientToken}},s=await fetch(this.getFeedbackApiUrl(),{method:"POST",headers:{"Content-Type":"application/json","X-Persona-Version":Xs},body:JSON.stringify(o)});if(!s.ok){let d=await s.json().catch(()=>({error:"Feedback submission failed"}));throw s.status===401?(this.clientSession=null,(i=(a=this.config).onSessionExpired)==null||i.call(a),new Error("Session expired. Please refresh to continue.")):new Error(d.error||"Failed to submit feedback")}}async submitMessageFeedback(e,t){let r=this.getClientSession();if(!r)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:r.sessionId,messageId:e,type:t})}async submitCSATFeedback(e,t){let r=this.getClientSession();if(!r)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:r.sessionId,type:"csat",rating:e,comment:t})}async submitNPSFeedback(e,t){let r=this.getClientSession();if(!r)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:r.sessionId,type:"nps",rating:e,comment:t})}async dispatch(e,t){return this.isAgentMode()?this.dispatchAgent(e,t):this.isClientTokenMode()?this.dispatchClientToken(e,t):this.dispatchProxy(e,t)}async dispatchClientToken(e,t){var o,s,a,i;let r=new AbortController;e.signal&&e.signal.addEventListener("abort",()=>r.abort()),t({type:"status",status:"connecting"});try{let d=await this.initSession();if(new Date>=new Date(d.expiresAt.getTime()-6e4)){this.clearClientSession(),(s=(o=this.config).onSessionExpired)==null||s.call(o);let P=new Error("Session expired. Please refresh to continue.");throw t({type:"error",error:P}),P}let c=await this.buildPayload(e.messages),g=c.metadata?Object.fromEntries(Object.entries(c.metadata).filter(([P])=>P!=="sessionId"&&P!=="session_id")):void 0,f={sessionId:d.sessionId,messages:e.messages.filter(ji).map(P=>{var W,C,I;return{id:P.id,role:P.role,content:(I=(C=(W=P.contentParts)!=null?W:P.llmContent)!=null?C:P.rawContent)!=null?I:P.content}}),...e.assistantMessageId&&{assistantMessageId:e.assistantMessageId},...g&&Object.keys(g).length>0&&{metadata:g},...c.inputs&&Object.keys(c.inputs).length>0&&{inputs:c.inputs},...c.context&&{context:c.context}},u=c.clientTools,m=!!(u&&u.length>0),v=m?Gp(u):void 0,x=this.clientToolsFingerprintSessionId===d.sessionId,M=m&&x&&this.lastSentClientToolsFingerprint===v,E=!1,k=null,N;for(let P=0;;P++){let C={...f,...m&&(E||!M)&&u?{clientTools:u}:{},...v?{clientToolsFingerprint:v}:{}};if(this.debug&&console.debug("[AgentWidgetClient] client token dispatch",C),N=await fetch(this.getClientApiUrl("chat"),{method:"POST",headers:{"Content-Type":"application/json","X-Persona-Version":Xs},body:JSON.stringify(C),signal:r.signal}),N.status===409&&P===0&&m){let I=await N.json().catch(()=>null);if((I==null?void 0:I.error)==="client_tools_resend_required"){E=!0,this.lastSentClientToolsFingerprint=null;continue}k=I!=null?I:{error:"Chat request failed"}}break}if(!N.ok){let P=k!=null?k:await N.json().catch(()=>({error:"Chat request failed"}));if(N.status===401){this.clearClientSession(),(i=(a=this.config).onSessionExpired)==null||i.call(a);let C=new Error("Session expired. Please refresh to continue.");throw t({type:"error",error:C}),C}if(N.status===429){let C=new Error(P.hint||"Message limit reached for this session.");throw t({type:"error",error:C}),C}let W=new Error(P.error||"Failed to send message");throw t({type:"error",error:W}),W}if(!N.body){let P=new Error("No response body received");throw t({type:"error",error:P}),P}this.lastSentClientToolsFingerprint=v!=null?v:null,this.clientToolsFingerprintSessionId=d.sessionId,t({type:"status",status:"connected"});try{await this.streamResponse(N.body,t,e.assistantMessageId)}finally{t({type:"status",status:"idle"})}}catch(d){let c=d instanceof Error?d:new Error(String(d));throw!c.message.includes("Session expired")&&!c.message.includes("Message limit")&&t({type:"error",error:c}),c}}async dispatchProxy(e,t){let r=new AbortController;e.signal&&e.signal.addEventListener("abort",()=>r.abort()),t({type:"status",status:"connecting"});let o=await this.buildPayload(e.messages);this.debug&&console.debug("[AgentWidgetClient] dispatch payload",o);let s={...this.headers};if(this.getHeaders)try{let i=await this.getHeaders();s={...s,...i}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] getHeaders error:",i)}let a;if(this.customFetch)try{a=await this.customFetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal},o)}catch(i){let d=i instanceof Error?i:new Error(String(i));throw t({type:"error",error:d}),d}else a=await fetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal});if(!a.ok||!a.body){let i=new Error(`Chat backend request failed: ${a.status} ${a.statusText}`);throw t({type:"error",error:i}),i}t({type:"status",status:"connected"});try{await this.streamResponse(a.body,t)}finally{t({type:"status",status:"idle"})}}async dispatchAgent(e,t){let r=new AbortController;e.signal&&e.signal.addEventListener("abort",()=>r.abort()),t({type:"status",status:"connecting"});let o=await this.buildAgentPayload(e.messages);this.debug&&console.debug("[AgentWidgetClient] agent dispatch payload",o);let s={...this.headers};if(this.getHeaders)try{let i=await this.getHeaders();s={...s,...i}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] getHeaders error:",i)}let a;if(this.customFetch)try{a=await this.customFetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal},o)}catch(i){let d=i instanceof Error?i:new Error(String(i));throw t({type:"error",error:d}),d}else a=await fetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal});if(!a.ok||!a.body){let i=new Error(`Agent execution request failed: ${a.status} ${a.statusText}`);throw t({type:"error",error:i}),i}t({type:"status",status:"connected"});try{await this.streamResponse(a.body,t,e.assistantMessageId)}finally{t({type:"status",status:"idle"})}}async processStream(e,t,r){t({type:"status",status:"connected"});try{await this.streamResponse(e,t,r)}finally{t({type:"status",status:"idle"})}}async resolveApproval(e,t){var a;let o=`${((a=this.config.apiUrl)==null?void 0:a.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||Va}/v1/agents/${e.agentId}/approve`,s={"Content-Type":"application/json",...this.headers};return this.getHeaders&&Object.assign(s,await this.getHeaders()),fetch(o,{method:"POST",headers:s,body:JSON.stringify({executionId:e.executionId,approvalId:e.approvalId,decision:t,streamResponse:!0})})}async resumeFlow(e,t,r){var c,g;let o=this.isClientTokenMode(),s=o?this.getClientApiUrl("resume"):`${((c=this.config.apiUrl)==null?void 0:c.replace(/\/+$/,""))||Va}/resume`,a;o&&(a=(await this.initSession()).sessionId);let i={"Content-Type":"application/json",...this.headers};this.getHeaders&&Object.assign(i,await this.getHeaders());let d={executionId:e,toolOutputs:t,streamResponse:(g=r==null?void 0:r.streamResponse)!=null?g:!0};return a&&(d.sessionId=a),fetch(s,{method:"POST",headers:i,body:JSON.stringify(d),signal:r==null?void 0:r.signal})}async buildAgentPayload(e){var s,a;if(!this.config.agent)throw new Error("Agent configuration required for agent mode");let t=e.slice().filter(ji).filter(i=>i.role==="user"||i.role==="assistant"||i.role==="system").filter(i=>!i.variant||i.variant==="assistant").sort((i,d)=>{let c=new Date(i.createdAt).getTime(),g=new Date(d.createdAt).getTime();return c-g}).map(i=>{var d,c,g;return{role:i.role,content:(g=(c=(d=i.contentParts)!=null?d:i.llmContent)!=null?c:i.rawContent)!=null?g:i.content,createdAt:i.createdAt}}),r={agent:this.config.agent,messages:t,options:{streamResponse:!0,recordMode:"virtual",...this.config.agentOptions}},o=[...Ui(this.config),...(a=await((s=this.webMcpBridge)==null?void 0:s.snapshotForDispatch()))!=null?a:[]];if(o.length>0&&(r.clientTools=o),this.contextProviders.length){let i={};await Promise.all(this.contextProviders.map(async d=>{try{let c=await d({messages:e,config:this.config});c&&typeof c=="object"&&Object.assign(i,c)}catch(c){typeof console!="undefined"&&console.warn("[AgentWidget] Context provider failed:",c)}})),Object.keys(i).length&&(r.context=i)}return r}async buildPayload(e){var s,a;let r={messages:e.slice().filter(ji).sort((i,d)=>{let c=new Date(i.createdAt).getTime(),g=new Date(d.createdAt).getTime();return c-g}).map(i=>{var d,c,g;return{role:i.role,content:(g=(c=(d=i.contentParts)!=null?d:i.llmContent)!=null?c:i.rawContent)!=null?g:i.content,createdAt:i.createdAt}}),...this.config.flowId&&{flowId:this.config.flowId}},o=[...Ui(this.config),...(a=await((s=this.webMcpBridge)==null?void 0:s.snapshotForDispatch()))!=null?a:[]];if(o.length>0&&(r.clientTools=o),this.contextProviders.length){let i={};await Promise.all(this.contextProviders.map(async d=>{try{let c=await d({messages:e,config:this.config});c&&typeof c=="object"&&Object.assign(i,c)}catch(c){typeof console!="undefined"&&console.warn("[AgentWidget] Context provider failed:",c)}})),Object.keys(i).length&&(r.context=i)}if(this.requestMiddleware)try{let i=await this.requestMiddleware({payload:{...r},config:this.config});if(i&&typeof i=="object"){let d=i;return r.clientTools!==void 0&&!("clientTools"in d)&&(d.clientTools=r.clientTools),d}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] Request middleware error:",i)}return r}async handleCustomSSEEvent(e,t,r,o,s,a){if(!this.parseSSEEvent)return!1;try{let i=await this.parseSSEEvent(e);if(i===null)return!1;let d=g=>{let f={id:`assistant-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"assistant",sequence:s(),...g!==void 0&&{partId:g}};return r.current=f,o(f),f},c=g=>r.current?r.current:d(g);if(i.text!==void 0){i.partId!==void 0&&a.current!==null&&i.partId!==a.current&&(r.current&&(r.current.streaming=!1,o(r.current)),d(i.partId)),i.partId!==void 0&&(a.current=i.partId);let g=c(i.partId);i.partId!==void 0&&!g.partId&&(g.partId=i.partId),g.content+=i.text,o(g)}return i.done&&(r.current&&(r.current.streaming=!1,o(r.current)),a.current=null,t({type:"status",status:"idle"})),i.error&&(a.current=null,t({type:"error",error:new Error(i.error)})),!0}catch(i){return typeof console!="undefined"&&console.error("[AgentWidget] parseSSEEvent error:",i),!1}}async streamResponse(e,t,r){var bn,Wt,dn,wr;let o=e.getReader(),s=new TextDecoder,a="",i=Date.now(),d=0,c=()=>i+d++,g=$=>{let K=$.reasoning?{...$.reasoning,chunks:[...$.reasoning.chunks]}:void 0,he=$.toolCall?{...$.toolCall,chunks:$.toolCall.chunks?[...$.toolCall.chunks]:void 0}:void 0,Ge=$.tools?$.tools.map(Ze=>({...Ze,chunks:Ze.chunks?[...Ze.chunks]:void 0})):void 0;return{...$,reasoning:K,toolCall:he,tools:Ge}},f=$=>{if($.role!=="assistant"||$.variant)return!0;let K=Array.isArray($.contentParts)&&$.contentParts.length>0,he=typeof $.rawContent=="string"&&$.rawContent.trim()!=="";return typeof $.content=="string"&&$.content.trim()!==""||K||he||!!$.stopReason},u=$=>{f($)&&t({type:"message",message:g($)})},m=null,v=null,x={current:null},M={current:null},E=!1,k=new Map,N=new Map,P=new Map,W=new Map,C={lastId:null,byStep:new Map},I={lastId:null,byCall:new Map},B=($,K,he="")=>`${$}::${K}::${he}`,D=($,K)=>`${$}::${K}::`,T=($,K,he,Ge)=>{let Ze=B($,K,he),$e=P.get(Ze);if($e)return $e;let Oe=he?`-${he}`:"",Lt={id:`nested-${$}-${K}${Oe}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:c(),...he?{partId:he}:{},agentMetadata:{executionId:Ge,parentToolId:$,parentStepId:K}};return P.set(Ze,Lt),u(Lt),Lt},U=$=>{if($==null)return null;try{return String($)}catch{return null}},z=$=>{var K,he,Ge,Ze,$e;return U(($e=(Ze=(Ge=(he=(K=$.stepId)!=null?K:$.step_id)!=null?he:$.step)!=null?Ge:$.parentId)!=null?Ze:$.flowStepId)!=null?$e:$.flow_step_id)},re=$=>{var K,he,Ge,Ze,$e,Oe,Lt;return U((Lt=(Oe=($e=(Ze=(Ge=(he=(K=$.callId)!=null?K:$.call_id)!=null?he:$.requestId)!=null?Ge:$.request_id)!=null?Ze:$.toolCallId)!=null?$e:$.tool_call_id)!=null?Oe:$.stepId)!=null?Lt:$.step_id)},ke=r,je=!1,be=()=>{if(m)return m;let $;return!je&&ke?($=ke,je=!0):ke&&M.current?$=`${ke}_${M.current}`:$=`assistant-${Date.now()}-${Math.random().toString(16).slice(2)}`,m={id:$,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:c()},u(m),m},He=($,K)=>{C.lastId=K,$&&C.byStep.set($,K)},Fe=($,K)=>{var $e;let he=($e=$.reasoningId)!=null?$e:$.id,Ge=z($);if(he){let Oe=String(he);return He(Ge,Oe),Oe}if(Ge){let Oe=C.byStep.get(Ge);if(Oe)return C.lastId=Oe,Oe}if(C.lastId&&!K)return C.lastId;if(!K)return null;let Ze=`reason-${c()}`;return He(Ge,Ze),Ze},Se=$=>{let K=k.get($);if(K)return K;let he={id:`reason-${$}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"reasoning",sequence:c(),reasoning:{id:$,status:"streaming",chunks:[]}};return k.set($,he),u(he),he},xe=($,K)=>{I.lastId=K,$&&I.byCall.set($,K)},oe=new Set,G=new Map,se=new Set,ge=new Map,pe=$=>{if(!$)return!1;let K=$.replace(/_+/g,"_").replace(/^_|_$/g,"");return K==="emit_artifact_markdown"||K==="emit_artifact_component"},V=($,K)=>{var $e;let he=($e=$.toolId)!=null?$e:$.id,Ge=re($);if(he){let Oe=String(he);return xe(Ge,Oe),Oe}if(Ge){let Oe=I.byCall.get(Ge);if(Oe)return I.lastId=Oe,Oe}if(I.lastId&&!K)return I.lastId;if(!K)return null;let Ze=`tool-${c()}`;return xe(Ge,Ze),Ze},ae=$=>{let K=N.get($);if(K)return K;let he={id:`tool-${$}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"tool",sequence:c(),toolCall:{id:$,status:"pending"}};return N.set($,he),u(he),he},Ie=$=>{if(typeof $=="number"&&Number.isFinite($))return $;if(typeof $=="string"){let K=Number($);if(!Number.isNaN(K)&&Number.isFinite(K))return K;let he=Date.parse($);if(!Number.isNaN(he))return he}return Date.now()},ee=$=>{if(typeof $=="string")return $;if($==null)return"";try{return JSON.stringify($)}catch{return String($)}},Z=new Map,ne=new Map,at=new Map,it=new Map,ot=null,Me=($,K,he)=>{var Lt;let Ge=at.get($);Ge||(Ge=[],at.set($,Ge));let Ze=0,$e=Ge.length;for(;Ze<$e;){let Vt=Ze+$e>>>1;Ge[Vt].seq<K?Ze=Vt+1:$e=Vt}((Lt=Ge[Ze])==null?void 0:Lt.seq)===K?Ge[Ze]={seq:K,text:he}:Ge.splice(Ze,0,{seq:K,text:he});let Oe="";for(let Vt=0;Vt<Ge.length;Vt++)Oe+=Ge[Vt].text;return Oe},fe=($,K)=>{let he=ee(K),Ge=ne.get($.id),Ze=af(Ge,he);$.rawContent=Ze;let $e=Z.get($.id),Oe=j=>{var le;let Rt=(le=$.content)!=null?le:"";j.trim()!==""&&(Rt.trim().length===0||j.startsWith(Rt)||j.trimStart().startsWith(Rt.trim()))&&($.content=j)},Lt=()=>{var j;if($e){let Rt=(j=$e.close)==null?void 0:j.call($e);Rt instanceof Promise&&Rt.catch(()=>{})}Z.delete($.id),ne.delete($.id),$.streaming=!1,u($)};if(!$e){Oe(he),Lt();return}let Vt=Fo(Ze);if(Vt!==null&&Vt.trim()!==""){Oe(Vt),Lt();return}let Xt=j=>{var we;let Rt=typeof j=="string"?j:(we=j==null?void 0:j.text)!=null?we:null;if(Rt!==null&&Rt.trim()!=="")return Rt;let le=$e.getExtractedText();return le!==null&&le.trim()!==""?le:he},kn;try{kn=$e.processChunk(Ze)}catch{Oe(he),Lt();return}if(kn instanceof Promise){kn.then(j=>{Oe(Xt(j)),Lt()}).catch(()=>{Oe(he),Lt()});return}Oe(Xt(kn)),Lt()},Xe=[],J=!1,ue,Ee=()=>{J||(J=!0,queueMicrotask(()=>{J=!1,ue()}))},Je=new ja(($,K)=>{Xe.push({payloadType:$,payload:K}),Ee()}),Ke=null,Pe=new Map,Ve=(bn=this.config.iterationDisplay)!=null?bn:"separate";for(ue=()=>{var $,K,he,Ge,Ze,$e,Oe,Lt,Vt,Xt,kn,j,Rt,le,we,Ne,St,rn,on,vn,Dt,nt,Bt,dt,Jt,tr,Ln,sn,Fn,Cr,vt,Un,Ar,Nr,ur,yt,xo,Sr,wo,On,jo,Jr,Fr,Yr,Zr,Co,Ao,eo,wt,zn,jn,Pn,Tt,nr,rr,Vn,to,Or,no,Kn,Nt,In,or,ro,_r,oo,Tr,Gn,ye,pt,en,pn,Mr,Ss,$r,So,Er,O,Vo,kr,Lr,qr,Pr,mr,Ko,ba,Qn,Xn,gr,fr,To,Ur,Cn,Ir,Go,Mo,Qo,va,Xo,xa,Jo,ht,Ts,sr,_n,wa,Ca,Yo,zr,Ms,so,Es,ks,Ls,Ps,$n,Zo,Wr,Rr,Is,Aa,Ws,Rs,Eo,Sa,Ta,Ma,Ea,ka,ao,io,La,Hs,lo,Pa,Bs,co,Ds;for(let es=0;es<Xe.length;es++){let qe=Xe[es].payloadType,w=Xe[es].payload;if(qe==="reason_start"){let _=($=Fe(w,!0))!=null?$:`reason-${c()}`,S=Se(_);S.reasoning=(K=S.reasoning)!=null?K:{id:_,status:"streaming",chunks:[]},S.reasoning.startedAt=(Ge=S.reasoning.startedAt)!=null?Ge:Ie((he=w.startedAt)!=null?he:w.timestamp),S.reasoning.completedAt=void 0,S.reasoning.durationMs=void 0,S.streaming=!0,S.reasoning.status="streaming",u(S)}else if(qe==="reason_delta"||qe==="reason_chunk"){let _=($e=(Ze=Fe(w,!1))!=null?Ze:Fe(w,!0))!=null?$e:`reason-${c()}`,S=Se(_);S.reasoning=(Oe=S.reasoning)!=null?Oe:{id:_,status:"streaming",chunks:[]},S.reasoning.startedAt=(Vt=S.reasoning.startedAt)!=null?Vt:Ie((Lt=w.startedAt)!=null?Lt:w.timestamp);let X=(j=(kn=(Xt=w.reasoningText)!=null?Xt:w.text)!=null?kn:w.delta)!=null?j:"";if(X&&w.hidden!==!0){let ie=typeof w.sequenceIndex=="number"?w.sequenceIndex:void 0;if(ie!==void 0){let Q=Me(_,ie,String(X));S.reasoning.chunks=[Q]}else S.reasoning.chunks.push(String(X))}if(S.reasoning.status=w.done?"complete":"streaming",w.done){S.reasoning.completedAt=Ie((Rt=w.completedAt)!=null?Rt:w.timestamp);let ie=(le=S.reasoning.startedAt)!=null?le:Date.now();S.reasoning.durationMs=Math.max(0,((we=S.reasoning.completedAt)!=null?we:Date.now())-ie)}S.streaming=S.reasoning.status!=="complete",u(S)}else if(qe==="reason_complete"){let _=(St=(Ne=Fe(w,!1))!=null?Ne:Fe(w,!0))!=null?St:`reason-${c()}`,S=k.get(_);if(S!=null&&S.reasoning){S.reasoning.status="complete",S.reasoning.completedAt=Ie((rn=w.completedAt)!=null?rn:w.timestamp);let ie=(on=S.reasoning.startedAt)!=null?on:Date.now();S.reasoning.durationMs=Math.max(0,((vn=S.reasoning.completedAt)!=null?vn:Date.now())-ie),S.streaming=!1,u(S)}let X=z(w);X&&C.byStep.delete(X)}else if(qe==="tool_start"){let _=(Dt=V(w,!0))!=null?Dt:`tool-${c()}`,S=(nt=w.toolName)!=null?nt:w.name;if(pe(S)){oe.add(_);continue}let X=ae(_),ie=(Bt=X.toolCall)!=null?Bt:{id:_,status:"pending"};ie.name=S!=null?S:ie.name,ie.status="running",w.args!==void 0?ie.args=w.args:w.parameters!==void 0&&(ie.args=w.parameters),ie.startedAt=(Jt=ie.startedAt)!=null?Jt:Ie((dt=w.startedAt)!=null?dt:w.timestamp),ie.completedAt=void 0,ie.durationMs=void 0,X.toolCall=ie,X.streaming=!0;let Q=w.agentContext;(Q||w.executionId)&&(X.agentMetadata={executionId:(tr=Q==null?void 0:Q.executionId)!=null?tr:w.executionId,iteration:(Ln=Q==null?void 0:Q.iteration)!=null?Ln:w.iteration}),u(X)}else if(qe==="tool_chunk"||qe==="tool_delta"){let _=(Fn=(sn=V(w,!1))!=null?sn:V(w,!0))!=null?Fn:`tool-${c()}`;if(oe.has(_))continue;let S=ae(_),X=(Cr=S.toolCall)!=null?Cr:{id:_,status:"running"};X.startedAt=(Un=X.startedAt)!=null?Un:Ie((vt=w.startedAt)!=null?vt:w.timestamp);let ie=(ur=(Nr=(Ar=w.text)!=null?Ar:w.delta)!=null?Nr:w.message)!=null?ur:"";ie&&(X.chunks=(yt=X.chunks)!=null?yt:[],X.chunks.push(String(ie))),X.status="running",S.toolCall=X,S.streaming=!0;let Q=w.agentContext;(Q||w.executionId)&&(S.agentMetadata=(wo=S.agentMetadata)!=null?wo:{executionId:(xo=Q==null?void 0:Q.executionId)!=null?xo:w.executionId,iteration:(Sr=Q==null?void 0:Q.iteration)!=null?Sr:w.iteration}),u(S)}else if(qe==="tool_complete"){let _=(jo=(On=V(w,!1))!=null?On:V(w,!0))!=null?jo:`tool-${c()}`;if(oe.has(_)){oe.delete(_);continue}let S=ae(_),X=(Jr=S.toolCall)!=null?Jr:{id:_,status:"running"};X.status="complete",w.result!==void 0&&(X.result=w.result),typeof w.duration=="number"&&(X.duration=w.duration),X.completedAt=Ie((Fr=w.completedAt)!=null?Fr:w.timestamp);let ie=(Yr=w.duration)!=null?Yr:w.executionTime;if(typeof ie=="number")X.durationMs=ie;else{let _e=(Zr=X.startedAt)!=null?Zr:Date.now();X.durationMs=Math.max(0,((Co=X.completedAt)!=null?Co:Date.now())-_e)}S.toolCall=X,S.streaming=!1;let Q=w.agentContext;(Q||w.executionId)&&(S.agentMetadata=(wt=S.agentMetadata)!=null?wt:{executionId:(Ao=Q==null?void 0:Q.executionId)!=null?Ao:w.executionId,iteration:(eo=Q==null?void 0:Q.iteration)!=null?eo:w.iteration}),u(S);let Te=re(w);Te&&I.byCall.delete(Te)}else if(qe==="step_await"&&w.awaitReason==="local_tool_required"&&w.toolName){let _=typeof w.toolCallId=="string"&&w.toolCallId.length>0?w.toolCallId:void 0,S=(zn=_!=null?_:w.toolId)!=null?zn:`local-${c()}`,X=ae(S),ie=w.toolName,Q=zs(ie),Te=(jn=X.toolCall)!=null?jn:{id:S,status:"pending"};Te.name=ie,Te.args=w.parameters,Te.status=Q?"running":"complete",Te.chunks=(Pn=Te.chunks)!=null?Pn:[],Te.startedAt=(nr=Te.startedAt)!=null?nr:Ie((Tt=w.startedAt)!=null?Tt:w.timestamp),Q?(Te.completedAt=void 0,Te.duration=void 0,Te.durationMs=void 0):Te.completedAt=(rr=Te.completedAt)!=null?rr:Te.startedAt,X.toolCall=Te,X.streaming=!1,X.agentMetadata={...X.agentMetadata,executionId:(to=w.executionId)!=null?to:(Vn=X.agentMetadata)==null?void 0:Vn.executionId,awaitingLocalTool:!0,..._?{webMcpToolCallId:_}:{}},u(X)}else if(qe==="text_start"){if((Or=w.toolContext)!=null&&Or.toolId)continue;let _=w.partId;if(_!==void 0&&M.current!==null&&_!==M.current){let S=m;S&&(S.streaming=!1,u(S),ot=S,m=null,E=!0)}_!==void 0&&(M.current=_)}else if(qe==="text_end"){if((no=w.toolContext)!=null&&no.toolId)continue;let _=m;_&&(_.streaming=!1,u(_),ot=_,m=null,E=!0)}else if(qe==="step_chunk"||qe==="step_delta"){let _=w.stepType,S=w.executionType;if(_==="tool"||S==="context")continue;let X=w.toolContext;if(X!=null&&X.toolId){let _e=String((Nt=(Kn=w.id)!=null?Kn:X.stepId)!=null?Nt:`step-${c()}`),st=w.partId!==void 0&&w.partId!==null?String(w.partId):"",et=`${X.toolId}::${_e}`,Ht=W.get(et);if(st!==""&&Ht!==void 0&&Ht!==""&&Ht!==st){let Ct=P.get(B(X.toolId,_e,Ht));Ct&&Ct.streaming!==!1&&(Ct.streaming=!1,u(Ct))}st!==""&&W.set(et,st);let Ut=T(X.toolId,_e,st,X.executionId),an=(_r=(ro=(or=(In=w.text)!=null?In:w.delta)!=null?or:w.content)!=null?ro:w.chunk)!=null?_r:"";an&&(Ut.content+=String(an),Ut.streaming=!0,u(Ut)),w.isComplete&&(Ut.streaming=!1,u(Ut));continue}let ie=w.partId;if(ie!==void 0&&M.current!==null&&ie!==M.current){let _e=m;_e&&(_e.streaming=!1,u(_e),ot=_e,m=null,E=!0)}ie!==void 0&&(M.current=ie);let Q=ie!==void 0&&(oo=it.get(ie))!=null?oo:be();ie!==void 0&&(Q.partId||(Q.partId=ie),it.set(ie,Q));let Te=(pt=(ye=(Gn=(Tr=w.text)!=null?Tr:w.delta)!=null?Gn:w.content)!=null?ye:w.chunk)!=null?pt:"";if(Te){let _e=typeof w.seq=="number"?w.seq:void 0,st=ie!=null?ie:Q.id,et=_e!==void 0?Me(st,_e,String(Te)):((en=ne.get(Q.id))!=null?en:"")+Te;Q.rawContent=et,Z.has(Q.id)||Z.set(Q.id,this.createStreamParser());let Ht=Z.get(Q.id),Ut=et.trim().startsWith("{")||et.trim().startsWith("[");if(Ut&&ne.set(Q.id,et),Ht.__isPlainTextParser===!0){Q.content=_e!==void 0?et:Q.content+Te,ne.delete(Q.id),Z.delete(Q.id),Q.rawContent=void 0,u(Q);continue}let Ct=Ht.processChunk(et);if(Ct instanceof Promise)Ct.then(Mt=>{var Wn;let hn=typeof Mt=="string"?Mt:(Wn=Mt==null?void 0:Mt.text)!=null?Wn:null;if(hn!==null&&hn.trim()!=="")Q.content=hn,u(Q);else if(!Ut&&!et.trim().startsWith("<")){let xn=m,Yt=xn&&xn.id===Q.id?xn:Q;Yt.id===Q.id&&(Yt.content=_e!==void 0?et:Yt.content+Te,ne.delete(Yt.id),Z.delete(Yt.id),Yt.rawContent=void 0,u(Yt))}}).catch(()=>{Q.content=_e!==void 0?et:Q.content+Te,ne.delete(Q.id),Z.delete(Q.id),Q.rawContent=void 0,u(Q)});else{let Mt=typeof Ct=="string"?Ct:(pn=Ct==null?void 0:Ct.text)!=null?pn:null;Mt!==null&&Mt.trim()!==""?(Q.content=Mt,u(Q)):!Ut&&!et.trim().startsWith("<")&&(Q.content=_e!==void 0?et:Q.content+Te,ne.delete(Q.id),Z.delete(Q.id),Q.rawContent=void 0,u(Q))}}if(w.isComplete){let _e=(Ss=(Mr=w.result)==null?void 0:Mr.response)!=null?Ss:Q.content;if(_e){let st=ne.get(Q.id),et=st!=null?st:ee(_e);Q.rawContent=et;let Ht=Z.get(Q.id),Ut=null,an=!1;if(Ht&&(Ut=Ht.getExtractedText(),Ut===null&&(Ut=Fo(et)),Ut===null)){let Ct=Ht.processChunk(et);Ct instanceof Promise?(an=!0,Ct.then(Mt=>{var Wn;let hn=typeof Mt=="string"?Mt:(Wn=Mt==null?void 0:Mt.text)!=null?Wn:null;if(hn!==null){let xn=m;xn&&xn.id===Q.id&&(xn.content=hn,xn.streaming=!1,Z.delete(xn.id),ne.delete(xn.id),u(xn))}})):Ut=typeof Ct=="string"?Ct:($r=Ct==null?void 0:Ct.text)!=null?$r:null}if(!an){Ut!==null&&Ut.trim()!==""?Q.content=Ut:ne.has(Q.id)||(Q.content=ee(_e));let Ct=Z.get(Q.id);if(Ct){let Mt=(So=Ct.close)==null?void 0:So.call(Ct);Mt instanceof Promise&&Mt.catch(()=>{}),Z.delete(Q.id)}ne.delete(Q.id),Q.streaming=!1,u(Q)}}}}else if(qe==="step_complete"){let _=w.stepType,S=w.executionType;if(_==="tool"||S==="context")continue;let X=w.toolContext;if(X!=null&&X.toolId){let _e=String((O=(Er=w.id)!=null?Er:X.stepId)!=null?O:"");if(_e){let st=D(X.toolId,_e);for(let[et,Ht]of P)et.startsWith(st)&&Ht.streaming!==!1&&(Ht.streaming=!1,u(Ht));W.delete(`${X.toolId}::${_e}`)}continue}let ie=w.stopReason;if(E){if(m!==null){let et=m;ie&&(et.stopReason=ie),Z.delete(et.id),ne.delete(et.id),et.streaming!==!1&&(et.streaming=!1,u(et))}let _e=(Vo=w.result)==null?void 0:Vo.response,st=ot;st&&(ie&&(st.stopReason=ie),_e!=null?fe(st,_e):(Z.delete(st.id),ne.delete(st.id))),ot=null;continue}let Q=(kr=w.result)==null?void 0:kr.response,Te=be();if(ie&&(Te.stopReason=ie),Q!=null){let _e=Z.get(Te.id),st=!1,et=!1;if(_e){let Ht=_e.getExtractedText(),Ut=ne.get(Te.id),an=Ut!=null?Ut:ee(Q);if(Te.rawContent=an,Ht!==null&&Ht.trim()!=="")Te.content=Ht,st=!0;else{let Ct=Fo(an);if(Ct!==null)Te.content=Ct,st=!0;else{let Mt=_e.processChunk(an);if(Mt instanceof Promise)et=!0,Mt.then(hn=>{var xn;let Wn=typeof hn=="string"?hn:(xn=hn==null?void 0:hn.text)!=null?xn:null;if(Wn!==null&&Wn.trim()!==""){let Yt=m;Yt&&Yt.id===Te.id&&(Yt.content=Wn,Yt.streaming=!1,Z.delete(Yt.id),ne.delete(Yt.id),u(Yt))}else{let Yt=_e.getExtractedText(),ar=m;ar&&ar.id===Te.id&&(Yt!==null&&Yt.trim()!==""?ar.content=Yt:ne.has(ar.id)||(ar.content=ee(Q)),ar.streaming=!1,Z.delete(ar.id),ne.delete(ar.id),u(ar))}});else{let hn=typeof Mt=="string"?Mt:(Lr=Mt==null?void 0:Mt.text)!=null?Lr:null;if(hn!==null&&hn.trim()!=="")Te.content=hn,st=!0;else{let Wn=_e.getExtractedText();Wn!==null&&Wn.trim()!==""&&(Te.content=Wn,st=!0)}}}}}if(!et){if(!Te.rawContent){let Ht=ne.get(Te.id);Te.rawContent=Ht!=null?Ht:ee(Q)}if(!st&&!ne.has(Te.id)&&(Te.content=ee(Q)),_e){let Ht=(qr=_e.close)==null?void 0:qr.call(_e);Ht instanceof Promise&&Ht.catch(()=>{})}Z.delete(Te.id),ne.delete(Te.id),Te.streaming=!1,u(Te)}}else Z.delete(Te.id),ne.delete(Te.id),Te.streaming=!1,u(Te)}else if(qe==="flow_complete"){let _=(Pr=w.result)==null?void 0:Pr.response;if(E){if(m!==null){let S=m;Z.delete(S.id),ne.delete(S.id),S.streaming!==!1&&(S.streaming=!1,u(S))}}else if(_!=null){let S=be(),X=ne.get(S.id),ie=X!=null?X:ee(_);S.rawContent=ie;let Q=ee(_),Te=Z.get(S.id);if(Te){let et=Fo(ie);if(et!==null)Q=et;else{let Ht=Te.processChunk(ie);Ht instanceof Promise&&Ht.then(an=>{var Mt;let Ct=typeof an=="string"?an:(Mt=an==null?void 0:an.text)!=null?Mt:null;Ct!==null&&(S.content=Ct,S.streaming=!1,u(S))});let Ut=Te.getExtractedText();Ut!==null&&(Q=Ut)}}Z.delete(S.id),ne.delete(S.id);let _e=Q!==S.content,st=S.streaming!==!1;_e&&(S.content=Q),S.streaming=!1,(_e||st)&&u(S)}else if(m!==null){let S=m;Z.delete(S.id),ne.delete(S.id),S.streaming!==!1&&(S.streaming=!1,u(S))}t({type:"status",status:"idle"})}else if(qe==="agent_start")Ke={executionId:w.executionId,agentId:(mr=w.agentId)!=null?mr:"virtual",agentName:(Ko=w.agentName)!=null?Ko:"",status:"running",currentIteration:0,maxTurns:(ba=w.maxTurns)!=null?ba:1,startedAt:Ie(w.startedAt)};else if(qe==="agent_iteration_start"){if(Ke&&(Ke.currentIteration=w.iteration),Ve==="separate"&&w.iteration>1){let _=m;_&&(_.streaming=!1,u(_),Pe.set(w.iteration-1,_),m=null)}}else if(qe==="agent_turn_start")v=null;else if(qe==="agent_turn_delta"){if(w.contentType==="text"){let _=be();_.content+=(Qn=w.delta)!=null?Qn:"",_.agentMetadata={executionId:w.executionId,iteration:w.iteration,turnId:w.turnId,agentName:Ke==null?void 0:Ke.agentName},v=_,u(_)}else if(w.contentType==="thinking"){let _=(Xn=w.turnId)!=null?Xn:`agent-think-${w.iteration}`,S=Se(_);S.reasoning=(gr=S.reasoning)!=null?gr:{id:_,status:"streaming",chunks:[]},S.reasoning.chunks.push((fr=w.delta)!=null?fr:""),S.agentMetadata={executionId:w.executionId,iteration:w.iteration,turnId:w.turnId},u(S)}else if(w.contentType==="tool_input"){let _=(To=w.toolCallId)!=null?To:I.lastId;if(_){let S=N.get(_);S!=null&&S.toolCall&&(S.toolCall.chunks=(Ur=S.toolCall.chunks)!=null?Ur:[],S.toolCall.chunks.push((Cn=w.delta)!=null?Cn:""),u(S))}}}else if(qe==="agent_turn_complete"){let _=w.turnId;if(_){let ie=k.get(_);if(ie!=null&&ie.reasoning){ie.reasoning.status="complete",ie.reasoning.completedAt=Ie(w.completedAt);let Q=(Ir=ie.reasoning.startedAt)!=null?Ir:Date.now();ie.reasoning.durationMs=Math.max(0,((Go=ie.reasoning.completedAt)!=null?Go:Date.now())-Q),ie.streaming=!1,u(ie)}}let S=w.stopReason,X=m!=null?m:v;if(S&&X!==null){let ie=w.turnId;(!ie||((Mo=X.agentMetadata)==null?void 0:Mo.turnId)===ie)&&(X.stopReason=S,u(X))}}else if(qe==="agent_tool_start"){m&&(m.streaming=!1,u(m),m=null);let _=(Qo=w.toolCallId)!=null?Qo:`agent-tool-${c()}`;xe(re(w),_);let S=ae(_),X=(va=S.toolCall)!=null?va:{id:_,status:"pending",name:void 0,args:void 0,chunks:void 0,result:void 0,duration:void 0,startedAt:void 0,completedAt:void 0,durationMs:void 0};X.name=(xa=(Xo=w.toolName)!=null?Xo:w.name)!=null?xa:X.name,X.status="running",w.parameters!==void 0&&(X.args=w.parameters),X.startedAt=Ie((Jo=w.startedAt)!=null?Jo:w.timestamp),S.toolCall=X,S.streaming=!0,S.agentMetadata={executionId:w.executionId,iteration:w.iteration},u(S)}else if(qe==="agent_tool_delta"){let _=(ht=w.toolCallId)!=null?ht:I.lastId;if(_){let S=(Ts=N.get(_))!=null?Ts:ae(_);S.toolCall&&(S.toolCall.chunks=(sr=S.toolCall.chunks)!=null?sr:[],S.toolCall.chunks.push((_n=w.delta)!=null?_n:""),S.toolCall.status="running",S.streaming=!0,u(S))}}else if(qe==="agent_tool_complete"){let _=(wa=w.toolCallId)!=null?wa:I.lastId;if(_){let S=(Ca=N.get(_))!=null?Ca:ae(_);if(S.toolCall){S.toolCall.status="complete",w.result!==void 0&&(S.toolCall.result=w.result),typeof w.executionTime=="number"&&(S.toolCall.durationMs=w.executionTime),S.toolCall.completedAt=Ie((Yo=w.completedAt)!=null?Yo:w.timestamp),S.streaming=!1,u(S);let X=re(w);X&&I.byCall.delete(X)}}}else if(qe==="agent_media"){let _=Array.isArray(w.media)?w.media:[],S=[];for(let X of _){if(!X||typeof X!="object")continue;let ie=X,Q=typeof ie.type=="string"?ie.type:void 0,Te=typeof ie.mediaType=="string"?ie.mediaType.toLowerCase():"",_e=null,st="";if(Q==="media"){let et=typeof ie.data=="string"?ie.data:void 0;if(!et)continue;st=Te.length>0?Te:"application/octet-stream",_e=`data:${st};base64,${et}`}else if(Q==="image-url"){let et=typeof ie.url=="string"?ie.url:void 0;if(!et)continue;st=Te,_e=et}else if(Q==="file-url"){let et=typeof ie.url=="string"?ie.url:void 0;if(!et)continue;st=Te,_e=et}else continue;if(_e)if(Q==="image-url"||st.startsWith("image/"))S.push({type:"image",image:_e,...st?{mimeType:st}:{}});else if(st.startsWith("audio/"))S.push({type:"audio",audio:_e,mimeType:st});else if(st.startsWith("video/"))S.push({type:"video",video:_e,mimeType:st});else{let et=st||"application/octet-stream";S.push({type:"file",data:_e,mimeType:et,filename:of(et)})}}if(S.length>0){let X=c(),ie=w.toolCallId,Te={id:`agent-media-${typeof ie=="string"&&ie.length>0?`${ie}-${X}`:String(X)}`,role:"assistant",content:"",contentParts:S,createdAt:new Date().toISOString(),streaming:!1,sequence:X,agentMetadata:{executionId:w.executionId,iteration:w.iteration}};u(Te);let _e=m;_e&&(_e.streaming=!1,u(_e)),m=null,x.current=null}}else if(qe!=="agent_iteration_complete"){if(qe==="agent_reflection"||qe==="agent_reflect"){let _=`agent-reflection-${w.executionId}-${w.iteration}`,S={id:_,role:"assistant",content:(zr=w.reflection)!=null?zr:"",createdAt:new Date().toISOString(),streaming:!1,variant:"reasoning",sequence:c(),reasoning:{id:_,status:"complete",chunks:[(Ms=w.reflection)!=null?Ms:""]},agentMetadata:{executionId:w.executionId,iteration:w.iteration}};u(S)}else if(qe==="agent_complete"){Ke&&(Ke.status=w.success?"complete":"error",Ke.completedAt=Ie(w.completedAt),Ke.stopReason=w.stopReason);let _=m;_&&(_.streaming=!1,u(_)),t({type:"status",status:"idle"})}else if(qe==="agent_error"){let _=typeof w.error=="string"?w.error:(Es=(so=w.error)==null?void 0:so.message)!=null?Es:"Agent execution error";w.recoverable?typeof console!="undefined"&&console.warn("[AgentWidget] Recoverable agent error:",_):t({type:"error",error:new Error(_)})}else if(qe!=="agent_ping"){if(qe==="agent_approval_start"){let _=(ks=w.approvalId)!=null?ks:`approval-${c()}`,S={id:`approval-${_}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",sequence:c(),approval:{id:_,status:"pending",agentId:(Ls=Ke==null?void 0:Ke.agentId)!=null?Ls:"virtual",executionId:($n=(Ps=w.executionId)!=null?Ps:Ke==null?void 0:Ke.executionId)!=null?$n:"",toolName:(Zo=w.toolName)!=null?Zo:"",toolType:w.toolType,description:(Rr=w.description)!=null?Rr:`Execute ${(Wr=w.toolName)!=null?Wr:"tool"}`,...typeof w.reason=="string"&&w.reason?{reason:w.reason}:{},parameters:w.parameters}};u(S)}else if(qe==="step_await"&&w.awaitReason==="approval_required"){let _=(Is=w.approvalId)!=null?Is:`approval-${c()}`,S={id:`approval-${_}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",sequence:c(),approval:{id:_,status:"pending",agentId:(Aa=Ke==null?void 0:Ke.agentId)!=null?Aa:"virtual",executionId:(Rs=(Ws=w.executionId)!=null?Ws:Ke==null?void 0:Ke.executionId)!=null?Rs:"",toolName:(Eo=w.toolName)!=null?Eo:"",toolType:w.toolType,description:(Ta=w.description)!=null?Ta:`Execute ${(Sa=w.toolName)!=null?Sa:"tool"}`,...typeof w.reason=="string"&&w.reason?{reason:w.reason}:{},parameters:w.parameters}};u(S)}else if(qe==="agent_approval_complete"){let _=w.approvalId;if(_){let X={id:`approval-${_}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",sequence:c(),approval:{id:_,status:(Ma=w.decision)!=null?Ma:"approved",agentId:(Ea=Ke==null?void 0:Ke.agentId)!=null?Ea:"virtual",executionId:(ao=(ka=w.executionId)!=null?ka:Ke==null?void 0:Ke.executionId)!=null?ao:"",toolName:(io=w.toolName)!=null?io:"",description:(La=w.description)!=null?La:"",resolvedAt:Date.now()}};u(X)}}else if(qe==="artifact_start"||qe==="artifact_delta"||qe==="artifact_update"||qe==="artifact_complete"){if(qe==="artifact_start"){let _=w.artifactType,S=String(w.id),X=typeof w.title=="string"?w.title:void 0;if(t({type:"artifact_start",id:S,artifactType:_,title:X,component:typeof w.component=="string"?w.component:void 0}),ge.set(S,{markdown:"",title:X}),!se.has(S)){se.add(S);let ie={id:`artifact-ref-${S}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:c(),rawContent:JSON.stringify({component:"PersonaArtifactCard",props:{artifactId:S,title:X,artifactType:_,status:"streaming"}})};G.set(S,ie),u(ie)}}else if(qe==="artifact_delta"){let _=String(w.id),S=typeof w.delta=="string"?w.delta:String((Hs=w.delta)!=null?Hs:"");t({type:"artifact_delta",id:_,artDelta:S});let X=ge.get(_);X&&(X.markdown+=S)}else if(qe==="artifact_update"){let _=w.props&&typeof w.props=="object"&&!Array.isArray(w.props)?w.props:{};t({type:"artifact_update",id:String(w.id),props:_,component:typeof w.component=="string"?w.component:void 0})}else if(qe==="artifact_complete"){let _=String(w.id);t({type:"artifact_complete",id:_});let S=G.get(_);if(S){S.streaming=!1;try{let X=JSON.parse((lo=S.rawContent)!=null?lo:"{}");if(X.props){X.props.status="complete";let ie=ge.get(_);ie!=null&&ie.markdown&&(X.props.markdown=ie.markdown)}S.rawContent=JSON.stringify(X)}catch{}ge.delete(_),u(S),G.delete(_)}}}else if(qe==="transcript_insert"){let _=w.message;if(!_||typeof _!="object")continue;let S=String((Pa=_.id)!=null?Pa:`msg-${c()}`),X=_.role,Q={id:S,role:X==="user"?"user":X==="system"?"system":"assistant",content:typeof _.content=="string"?_.content:"",rawContent:typeof _.rawContent=="string"?_.rawContent:void 0,createdAt:typeof _.createdAt=="string"?_.createdAt:new Date().toISOString(),streaming:_.streaming===!0,...typeof _.variant=="string"?{variant:_.variant}:{},sequence:c()};if(u(Q),Q.rawContent)try{let Te=JSON.parse(Q.rawContent),_e=(Bs=Te==null?void 0:Te.props)==null?void 0:Bs.artifactId;typeof _e=="string"&&se.add(_e)}catch{}m=null,x.current=null,Z.delete(S),ne.delete(S)}else if(qe==="error"||qe==="step_error"||qe==="dispatch_error"||qe==="flow_error"){let _=null;if(w.error instanceof Error)_=w.error;else if(qe==="dispatch_error"){let S=(co=w.message)!=null?co:w.error;S!=null&&S!==""&&(_=new Error(String(S)))}else if(qe==="step_error"||qe==="flow_error"){let S=w.error;typeof S=="string"&&S!==""?_=new Error(S):S!=null&&typeof S=="object"&&"message"in S&&(_=new Error(String((Ds=S.message)!=null?Ds:S)))}else qe==="error"&&w.error!=null&&w.error!==""&&(_=new Error(String(w.error)));if(_){t({type:"error",error:_});let S=m;S&&S.streaming&&(S.streaming=!1,u(S)),t({type:"status",status:"idle"})}}}}}Xe.length=0};;){let{done:$,value:K}=await o.read();if($)break;a+=s.decode(K,{stream:!0});let he=a.split(`
|
|
9
|
+
`).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}catch{return i[1]}return null};return{getExtractedText:()=>n,processChunk:async r=>{if(r.length<=e)return n!==null?{text:n,raw:r}:null;let o=r.trim();if(!o.startsWith("{")&&!o.startsWith("["))return null;let s=t(r);return s!==null&&(n=s),e=r.length,n!==null?{text:n,raw:r}:null},close:async()=>{}}},Is=n=>{try{let e=JSON.parse(n);if(e&&typeof e=="object"&&typeof e.text=="string")return e.text}catch{return null}return null},nu=()=>{let n={processChunk:e=>null,getExtractedText:()=>null};return n.__isPlainTextParser=!0,n},ru=()=>{var e;let n=nf();return{processChunk:async t=>{let r=t.trim();return!r.startsWith("{")&&!r.startsWith("[")?null:n.processChunk(t)},getExtractedText:n.getExtractedText.bind(n),close:(e=n.close)==null?void 0:e.bind(n)}},ou=()=>{let n=null,e=0;return{getExtractedText:()=>n,processChunk:t=>{let r=t.trim();if(!r.startsWith("{")&&!r.startsWith("["))return null;if(t.length<=e)return n!==null||n===""?{text:n||"",raw:t}:null;try{let o=Jg(t,Yg|Zg);o&&typeof o=="object"&&(o.component&&typeof o.component=="string"?n=typeof o.text=="string"?Zp(o.text):"":o.type==="init"&&o.form?n="":typeof o.text=="string"&&(n=Zp(o.text)))}catch{}return e=t.length,n!==null?{text:n,raw:t}:null},close:()=>{}}};var su=()=>{let n=null;return{processChunk:e=>{if(!e.trim().startsWith("<"))return null;let r=e.match(/<text[^>]*>([\s\S]*?)<\/text>/);return r&&r[1]?(n=r[1],{text:n,raw:e}):null},getExtractedText:()=>n}};var au="4.0.0";var Ws=au;var of="https://api.runtype.com/v1/dispatch",xa="https://api.runtype.com";function sf(n){var s,a;let e=n.toLowerCase(),r={"application/pdf":"pdf","application/json":"json","application/zip":"zip","text/plain":"txt","text/csv":"csv","text/markdown":"md"}[e];if(r)return`attachment.${r}`;let o=e.indexOf("/");if(o>0){let i=(a=(s=e.slice(o+1).split(";")[0])==null?void 0:s.trim())!=null?a:"";if(i&&i!=="octet-stream"&&/^[a-z0-9.+-]+$/i.test(i))return`attachment.${i}`}return"attachment"}var Si=n=>!!(n.contentParts&&n.contentParts.length>0||n.llmContent&&n.llmContent.trim().length>0||n.rawContent&&n.rawContent.trim().length>0||n.content&&n.content.trim().length>0);function af(n){switch(n){case"json":return ou;case"regex-json":return ru;case"xml":return su;default:return nu}}var iu=n=>n.startsWith("{")||n.startsWith("[")||n.startsWith("<");function lf(n,e){if(!n)return e;let t=n.trim(),r=e.trim();if(t.length===0)return e;if(r.length===0)return n;let o=iu(t);if(!iu(r))return n;if(!o||r===t||r.startsWith(t))return e;let a=Is(n);return Is(e)!==null&&a===null?e:n}var Rs=class{constructor(e={}){this.config=e;this.clientSession=null;this.sessionInitPromise=null;this.lastSentClientToolsFingerprint=null;this.clientToolsFingerprintSessionId=null;var t,r,o,s;this.apiUrl=(t=e.apiUrl)!=null?t:of,this.headers={"Content-Type":"application/json","X-Persona-Version":Ws,...e.headers},this.debug=!!e.debug,this.createStreamParser=(r=e.streamParser)!=null?r:af(e.parserType),this.contextProviders=(o=e.contextProviders)!=null?o:[],this.requestMiddleware=e.requestMiddleware,this.customFetch=e.customFetch,this.parseSSEEvent=e.parseSSEEvent,this.getHeaders=e.getHeaders,this.webMcpBridge=((s=e.webmcp)==null?void 0:s.enabled)===!0?new ma(e.webmcp):null}updateConfig(e){this.config=e}setSSEEventCallback(e){this.onSSEEvent=e}setWebMcpConfirmHandler(e){var t;(t=this.webMcpBridge)==null||t.setConfirmHandler(e)}isWebMcpOperational(){var e;return((e=this.webMcpBridge)==null?void 0:e.isOperational())===!0}executeWebMcpToolCall(e,t,r){return this.webMcpBridge?this.webMcpBridge.executeToolCall(e,t,r):null}getSSEEventCallback(){return this.onSSEEvent}isClientTokenMode(){return!!this.config.clientToken}isAgentMode(){return!!this.config.agent}getClientApiUrl(e){var r;return`${((r=this.config.apiUrl)==null?void 0:r.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||xa}/v1/client/${e}`}getClientSession(){return this.clientSession}async initSession(){var e,t;if(!this.isClientTokenMode())throw new Error("initSession() only available in client token mode");if(this.clientSession&&new Date<this.clientSession.expiresAt)return this.clientSession;if(this.sessionInitPromise)return this.sessionInitPromise;this.sessionInitPromise=this._doInitSession();try{let r=await this.sessionInitPromise;return this.clientSession=r,this.resetClientToolsFingerprint(),(t=(e=this.config).onSessionInit)==null||t.call(e,r),r}finally{this.sessionInitPromise=null}}async _doInitSession(){var s,a;let e=((a=(s=this.config).getStoredSessionId)==null?void 0:a.call(s))||null,t={token:this.config.clientToken,...this.config.flowId&&{flowId:this.config.flowId},...e&&{sessionId:e}},r=await fetch(this.getClientApiUrl("init"),{method:"POST",headers:{"Content-Type":"application/json","X-Persona-Version":Ws},body:JSON.stringify(t)});if(!r.ok){let i=await r.json().catch(()=>({error:"Session initialization failed"}));throw r.status===401?new Error(`Invalid client token: ${i.hint||i.error}`):r.status===403?new Error(`Origin not allowed: ${i.hint||i.error}`):new Error(i.error||"Failed to initialize session")}let o=await r.json();return this.config.setStoredSessionId&&this.config.setStoredSessionId(o.sessionId),{sessionId:o.sessionId,expiresAt:new Date(o.expiresAt),flow:o.flow,config:{welcomeMessage:o.config.welcomeMessage,placeholder:o.config.placeholder,theme:o.config.theme}}}clearClientSession(){this.clientSession=null,this.sessionInitPromise=null,this.resetClientToolsFingerprint()}resetClientToolsFingerprint(){this.lastSentClientToolsFingerprint=null,this.clientToolsFingerprintSessionId=null}getFeedbackApiUrl(){var t;return`${((t=this.config.apiUrl)==null?void 0:t.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||xa}/v1/client/feedback`}async sendFeedback(e){var a,i;if(!this.isClientTokenMode())throw new Error("sendFeedback() only available in client token mode");if(!this.getClientSession())throw new Error("No active session. Please initialize session first.");if(["upvote","downvote","copy"].includes(e.type)&&!e.messageId)throw new Error(`messageId is required for ${e.type} feedback type`);if(e.type==="csat"&&(e.rating===void 0||e.rating<1||e.rating>5))throw new Error("CSAT rating must be between 1 and 5");if(e.type==="nps"&&(e.rating===void 0||e.rating<0||e.rating>10))throw new Error("NPS rating must be between 0 and 10");this.debug&&console.debug("[AgentWidgetClient] sending feedback",e);let o={...e,...this.config.clientToken&&{token:this.config.clientToken}},s=await fetch(this.getFeedbackApiUrl(),{method:"POST",headers:{"Content-Type":"application/json","X-Persona-Version":Ws},body:JSON.stringify(o)});if(!s.ok){let d=await s.json().catch(()=>({error:"Feedback submission failed"}));throw s.status===401?(this.clientSession=null,(i=(a=this.config).onSessionExpired)==null||i.call(a),new Error("Session expired. Please refresh to continue.")):new Error(d.error||"Failed to submit feedback")}}async submitMessageFeedback(e,t){let r=this.getClientSession();if(!r)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:r.sessionId,messageId:e,type:t})}async submitCSATFeedback(e,t){let r=this.getClientSession();if(!r)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:r.sessionId,type:"csat",rating:e,comment:t})}async submitNPSFeedback(e,t){let r=this.getClientSession();if(!r)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:r.sessionId,type:"nps",rating:e,comment:t})}async dispatch(e,t){return this.isAgentMode()?this.dispatchAgent(e,t):this.isClientTokenMode()?this.dispatchClientToken(e,t):this.dispatchProxy(e,t)}async dispatchClientToken(e,t){var o,s,a,i;let r=new AbortController;e.signal&&e.signal.addEventListener("abort",()=>r.abort()),t({type:"status",status:"connecting"});try{let d=await this.initSession();if(new Date>=new Date(d.expiresAt.getTime()-6e4)){this.clearClientSession(),(s=(o=this.config).onSessionExpired)==null||s.call(o);let k=new Error("Session expired. Please refresh to continue.");throw t({type:"error",error:k}),k}let c=await this.buildPayload(e.messages),m=c.metadata?Object.fromEntries(Object.entries(c.metadata).filter(([k])=>k!=="sessionId"&&k!=="session_id")):void 0,f={sessionId:d.sessionId,messages:e.messages.filter(Si).map(k=>{var W,C,I;return{id:k.id,role:k.role,content:(I=(C=(W=k.contentParts)!=null?W:k.llmContent)!=null?C:k.rawContent)!=null?I:k.content}}),...e.assistantMessageId&&{assistantMessageId:e.assistantMessageId},...m&&Object.keys(m).length>0&&{metadata:m},...c.inputs&&Object.keys(c.inputs).length>0&&{inputs:c.inputs},...c.context&&{context:c.context}},g=c.clientTools,u=!!(g&&g.length>0),v=u?Np(g):void 0,x=this.clientToolsFingerprintSessionId===d.sessionId,P=u&&x&&this.lastSentClientToolsFingerprint===v,T=!1,M=null,N;for(let k=0;;k++){let C={...f,...u&&(T||!P)&&g?{clientTools:g}:{},...v?{clientToolsFingerprint:v}:{}};if(this.debug&&console.debug("[AgentWidgetClient] client token dispatch",C),N=await fetch(this.getClientApiUrl("chat"),{method:"POST",headers:{"Content-Type":"application/json","X-Persona-Version":Ws},body:JSON.stringify(C),signal:r.signal}),N.status===409&&k===0&&u){let I=await N.json().catch(()=>null);if((I==null?void 0:I.error)==="client_tools_resend_required"){T=!0,this.lastSentClientToolsFingerprint=null;continue}M=I!=null?I:{error:"Chat request failed"}}break}if(!N.ok){let k=M!=null?M:await N.json().catch(()=>({error:"Chat request failed"}));if(N.status===401){this.clearClientSession(),(i=(a=this.config).onSessionExpired)==null||i.call(a);let C=new Error("Session expired. Please refresh to continue.");throw t({type:"error",error:C}),C}if(N.status===429){let C=new Error(k.hint||"Message limit reached for this session.");throw t({type:"error",error:C}),C}let W=new Error(k.error||"Failed to send message");throw t({type:"error",error:W}),W}if(!N.body){let k=new Error("No response body received");throw t({type:"error",error:k}),k}this.lastSentClientToolsFingerprint=v!=null?v:null,this.clientToolsFingerprintSessionId=d.sessionId,t({type:"status",status:"connected"});try{await this.streamResponse(N.body,t,e.assistantMessageId)}finally{t({type:"status",status:"idle"})}}catch(d){let c=d instanceof Error?d:new Error(String(d));throw!c.message.includes("Session expired")&&!c.message.includes("Message limit")&&t({type:"error",error:c}),c}}async dispatchProxy(e,t){let r=new AbortController;e.signal&&e.signal.addEventListener("abort",()=>r.abort()),t({type:"status",status:"connecting"});let o=await this.buildPayload(e.messages);this.debug&&console.debug("[AgentWidgetClient] dispatch payload",o);let s={...this.headers};if(this.getHeaders)try{let i=await this.getHeaders();s={...s,...i}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] getHeaders error:",i)}let a;if(this.customFetch)try{a=await this.customFetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal},o)}catch(i){let d=i instanceof Error?i:new Error(String(i));throw t({type:"error",error:d}),d}else a=await fetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal});if(!a.ok||!a.body){let i=new Error(`Chat backend request failed: ${a.status} ${a.statusText}`);throw t({type:"error",error:i}),i}t({type:"status",status:"connected"});try{await this.streamResponse(a.body,t)}finally{t({type:"status",status:"idle"})}}async dispatchAgent(e,t){let r=new AbortController;e.signal&&e.signal.addEventListener("abort",()=>r.abort()),t({type:"status",status:"connecting"});let o=await this.buildAgentPayload(e.messages);this.debug&&console.debug("[AgentWidgetClient] agent dispatch payload",o);let s={...this.headers};if(this.getHeaders)try{let i=await this.getHeaders();s={...s,...i}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] getHeaders error:",i)}let a;if(this.customFetch)try{a=await this.customFetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal},o)}catch(i){let d=i instanceof Error?i:new Error(String(i));throw t({type:"error",error:d}),d}else a=await fetch(this.apiUrl,{method:"POST",headers:s,body:JSON.stringify(o),signal:r.signal});if(!a.ok||!a.body){let i=new Error(`Agent execution request failed: ${a.status} ${a.statusText}`);throw t({type:"error",error:i}),i}t({type:"status",status:"connected"});try{await this.streamResponse(a.body,t,e.assistantMessageId)}finally{t({type:"status",status:"idle"})}}async processStream(e,t,r){t({type:"status",status:"connected"});try{await this.streamResponse(e,t,r)}finally{t({type:"status",status:"idle"})}}async resolveApproval(e,t){var a;let o=`${((a=this.config.apiUrl)==null?void 0:a.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||xa}/v1/agents/${e.agentId}/approve`,s={"Content-Type":"application/json",...this.headers};return this.getHeaders&&Object.assign(s,await this.getHeaders()),fetch(o,{method:"POST",headers:s,body:JSON.stringify({executionId:e.executionId,approvalId:e.approvalId,decision:t,streamResponse:!0})})}async resumeFlow(e,t,r){var c,m;let o=this.isClientTokenMode(),s=o?this.getClientApiUrl("resume"):`${((c=this.config.apiUrl)==null?void 0:c.replace(/\/+$/,""))||xa}/resume`,a;o&&(a=(await this.initSession()).sessionId);let i={"Content-Type":"application/json",...this.headers};this.getHeaders&&Object.assign(i,await this.getHeaders());let d={executionId:e,toolOutputs:t,streamResponse:(m=r==null?void 0:r.streamResponse)!=null?m:!0};return a&&(d.sessionId=a),fetch(s,{method:"POST",headers:i,body:JSON.stringify(d),signal:r==null?void 0:r.signal})}async buildAgentPayload(e){var s,a;if(!this.config.agent)throw new Error("Agent configuration required for agent mode");let t=e.slice().filter(Si).filter(i=>i.role==="user"||i.role==="assistant"||i.role==="system").filter(i=>!i.variant||i.variant==="assistant").sort((i,d)=>{let c=new Date(i.createdAt).getTime(),m=new Date(d.createdAt).getTime();return c-m}).map(i=>{var d,c,m;return{role:i.role,content:(m=(c=(d=i.contentParts)!=null?d:i.llmContent)!=null?c:i.rawContent)!=null?m:i.content,createdAt:i.createdAt}}),r={agent:this.config.agent,messages:t,options:{streamResponse:!0,recordMode:"virtual",...this.config.agentOptions}},o=[...Ci(this.config),...(a=await((s=this.webMcpBridge)==null?void 0:s.snapshotForDispatch()))!=null?a:[]];if(o.length>0&&(r.clientTools=o),this.contextProviders.length){let i={};await Promise.all(this.contextProviders.map(async d=>{try{let c=await d({messages:e,config:this.config});c&&typeof c=="object"&&Object.assign(i,c)}catch(c){typeof console!="undefined"&&console.warn("[AgentWidget] Context provider failed:",c)}})),Object.keys(i).length&&(r.context=i)}return r}async buildPayload(e){var s,a;let r={messages:e.slice().filter(Si).sort((i,d)=>{let c=new Date(i.createdAt).getTime(),m=new Date(d.createdAt).getTime();return c-m}).map(i=>{var d,c,m;return{role:i.role,content:(m=(c=(d=i.contentParts)!=null?d:i.llmContent)!=null?c:i.rawContent)!=null?m:i.content,createdAt:i.createdAt}}),...this.config.flowId&&{flowId:this.config.flowId}},o=[...Ci(this.config),...(a=await((s=this.webMcpBridge)==null?void 0:s.snapshotForDispatch()))!=null?a:[]];if(o.length>0&&(r.clientTools=o),this.contextProviders.length){let i={};await Promise.all(this.contextProviders.map(async d=>{try{let c=await d({messages:e,config:this.config});c&&typeof c=="object"&&Object.assign(i,c)}catch(c){typeof console!="undefined"&&console.warn("[AgentWidget] Context provider failed:",c)}})),Object.keys(i).length&&(r.context=i)}if(this.requestMiddleware)try{let i=await this.requestMiddleware({payload:{...r},config:this.config});if(i&&typeof i=="object"){let d=i;return r.clientTools!==void 0&&!("clientTools"in d)&&(d.clientTools=r.clientTools),d}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] Request middleware error:",i)}return r}async handleCustomSSEEvent(e,t,r,o,s,a){if(!this.parseSSEEvent)return!1;try{let i=await this.parseSSEEvent(e);if(i===null)return!1;let d=m=>{let f={id:`assistant-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"assistant",sequence:s(),...m!==void 0&&{partId:m}};return r.current=f,o(f),f},c=m=>r.current?r.current:d(m);if(i.text!==void 0){i.partId!==void 0&&a.current!==null&&i.partId!==a.current&&(r.current&&(r.current.streaming=!1,o(r.current)),d(i.partId)),i.partId!==void 0&&(a.current=i.partId);let m=c(i.partId);i.partId!==void 0&&!m.partId&&(m.partId=i.partId),m.content+=i.text,o(m)}return i.done&&(r.current&&(r.current.streaming=!1,o(r.current)),a.current=null,t({type:"status",status:"idle"})),i.error&&(a.current=null,t({type:"error",error:new Error(i.error)})),!0}catch(i){return typeof console!="undefined"&&console.error("[AgentWidget] parseSSEEvent error:",i),!1}}async streamResponse(e,t,r){var nn,fr,fn,je;let o=e.getReader(),s=new TextDecoder,a="",i=Date.now(),d=0,c=()=>i+d++,m=S=>{let pe=S.reasoning?{...S.reasoning,chunks:[...S.reasoning.chunks]}:void 0,ke=S.toolCall?{...S.toolCall,chunks:S.toolCall.chunks?[...S.toolCall.chunks]:void 0}:void 0,Te=S.tools?S.tools.map(Re=>({...Re,chunks:Re.chunks?[...Re.chunks]:void 0})):void 0;return{...S,reasoning:pe,toolCall:ke,tools:Te}},f=S=>{if(S.role!=="assistant"||S.variant)return!0;let pe=Array.isArray(S.contentParts)&&S.contentParts.length>0,ke=typeof S.rawContent=="string"&&S.rawContent.trim()!=="";return typeof S.content=="string"&&S.content.trim()!==""||pe||ke||!!S.stopReason},g=S=>{f(S)&&t({type:"message",message:m(S)})},u=null,v=null,x={current:null},P={current:null},T=null,M="",N=new Map,k=new Map,W=new Map,C=new Map,I=new Map,D={lastId:null,byStep:new Map},B={lastId:null,byCall:new Map},E=S=>{if(S==null)return null;try{return String(S)}catch{return null}},z=S=>{var pe,ke,Te,Re,Ye;return E((Ye=(Re=(Te=(ke=(pe=S.stepId)!=null?pe:S.step_id)!=null?ke:S.step)!=null?Te:S.parentId)!=null?Re:S.flowStepId)!=null?Ye:S.flow_step_id)},j=S=>{var pe,ke,Te,Re,Ye,Ke,pt;return E((pt=(Ke=(Ye=(Re=(Te=(ke=(pe=S.callId)!=null?pe:S.call_id)!=null?ke:S.requestId)!=null?Te:S.request_id)!=null?Re:S.toolCallId)!=null?Ye:S.tool_call_id)!=null?Ke:S.stepId)!=null?pt:S.step_id)},te=r,We=!1,$e=()=>{if(u)return u;let S,pe=T;return!We&&te?(S=te,We=!0):te&&pe?S=`${te}_${pe}`:S=`assistant-${Date.now()}-${Math.random().toString(16).slice(2)}`,u={id:S,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:c()},g(u),u},ve=(S,pe)=>{D.lastId=pe,S&&D.byStep.set(S,pe)},Pe=(S,pe)=>{var Ye;let ke=(Ye=S.reasoningId)!=null?Ye:S.id,Te=z(S);if(ke){let Ke=String(ke);return ve(Te,Ke),Ke}if(Te){let Ke=D.byStep.get(Te);if(Ke)return D.lastId=Ke,Ke}if(D.lastId&&!pe)return D.lastId;if(!pe)return null;let Re=`reason-${c()}`;return ve(Te,Re),Re},Oe=S=>{let pe=C.get(S);if(pe)return pe;let ke={id:`reason-${S}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"reasoning",sequence:c(),reasoning:{id:S,status:"streaming",chunks:[]}};return C.set(S,ke),g(ke),ke},Ae=(S,pe)=>{B.lastId=pe,S&&B.byCall.set(S,pe)},be=new Set,ne=new Map,Q=new Set,ae=new Map,fe=S=>{if(!S)return!1;let pe=S.replace(/_+/g,"_").replace(/^_|_$/g,"");return pe==="emit_artifact_markdown"||pe==="emit_artifact_component"},re=(S,pe)=>{var Ye;let ke=(Ye=S.toolId)!=null?Ye:S.id,Te=j(S);if(ke){let Ke=String(ke);return Ae(Te,Ke),Ke}if(Te){let Ke=B.byCall.get(Te);if(Ke)return B.lastId=Ke,Ke}if(B.lastId&&!pe)return B.lastId;if(!pe)return null;let Re=`tool-${c()}`;return Ae(Te,Re),Re},V=S=>{let pe=I.get(S);if(pe)return pe;let ke={id:`tool-${S}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"tool",sequence:c(),toolCall:{id:S,status:"pending"}};return I.set(S,ke),g(ke),ke},ee=S=>{if(typeof S=="number"&&Number.isFinite(S))return S;if(typeof S=="string"){let pe=Number(S);if(!Number.isNaN(pe)&&Number.isFinite(pe))return pe;let ke=Date.parse(S);if(!Number.isNaN(ke))return ke}return Date.now()},Ue=S=>{if(typeof S=="string")return S;if(S==null)return"";try{return JSON.stringify(S)}catch{return String(S)}},J=new Map,ie=new Map,Le=new Map,at=(S,pe,ke)=>{var pt;let Te=Le.get(S);Te||(Te=[],Le.set(S,Te));let Re=0,Ye=Te.length;for(;Re<Ye;){let It=Re+Ye>>>1;Te[It].seq<pe?Re=It+1:Ye=It}((pt=Te[Re])==null?void 0:pt.seq)===pe?Te[Re]={seq:pe,text:ke}:Te.splice(Re,0,{seq:pe,text:ke});let Ke="";for(let It=0;It<Te.length;It++)Ke+=Te[It].text;return Ke},it=(S,pe)=>{let ke=Ue(pe),Te=ie.get(S.id),Re=lf(Te,ke);S.rawContent=Re;let Ye=J.get(S.id),Ke=K=>{var Ee;let ce=(Ee=S.content)!=null?Ee:"";K.trim()!==""&&(ce.trim().length===0||K.startsWith(ce)||K.trimStart().startsWith(ce.trim()))&&(S.content=K)},pt=()=>{var K;if(Ye){let ce=(K=Ye.close)==null?void 0:K.call(Ye);ce instanceof Promise&&ce.catch(()=>{})}J.delete(S.id),ie.delete(S.id),S.streaming=!1,g(S)};if(!Ye){Ke(ke),pt();return}let It=Is(Re);if(It!==null&&It.trim()!==""){Ke(It),pt();return}let U=K=>{var bt;let ce=typeof K=="string"?K:(bt=K==null?void 0:K.text)!=null?bt:null;if(ce!==null&&ce.trim()!=="")return ce;let Ee=Ye.getExtractedText();return Ee!==null&&Ee.trim()!==""?Ee:ke},rt;try{rt=Ye.processChunk(Re)}catch{Ke(ke),pt();return}if(rt instanceof Promise){rt.then(K=>{Ke(U(K)),pt()}).catch(()=>{Ke(ke),pt()});return}Ke(U(rt)),pt()},nt=null,Me=(S,pe,ke,Te)=>{var It;S.rawContent=pe,J.has(S.id)||J.set(S.id,this.createStreamParser());let Re=J.get(S.id),Ye=pe.trim().startsWith("{")||pe.trim().startsWith("[");if(Ye&&ie.set(S.id,pe),Re.__isPlainTextParser===!0){S.content=Te!==void 0?pe:S.content+ke,ie.delete(S.id),J.delete(S.id),S.rawContent=void 0,g(S);return}let pt=Re.processChunk(pe);if(pt instanceof Promise)pt.then(U=>{var K;let rt=typeof U=="string"?U:(K=U==null?void 0:U.text)!=null?K:null;rt!==null&&rt.trim()!==""?(S.content=rt,g(S)):!Ye&&!pe.trim().startsWith("<")&&(S.content=Te!==void 0?pe:S.content+ke,ie.delete(S.id),J.delete(S.id),S.rawContent=void 0,g(S))}).catch(()=>{S.content=Te!==void 0?pe:S.content+ke,ie.delete(S.id),J.delete(S.id),S.rawContent=void 0,g(S)});else{let U=typeof pt=="string"?pt:(It=pt==null?void 0:pt.text)!=null?It:null;U!==null&&U.trim()!==""?(S.content=U,g(S)):!Ye&&!pe.trim().startsWith("<")&&(S.content=Te!==void 0?pe:S.content+ke,ie.delete(S.id),J.delete(S.id),S.rawContent=void 0,g(S))}},de=(S,pe)=>{var It,U;let ke=pe!=null?pe:S.content;if(ke==null||ke===""){S.streaming=!1,g(S);return}let Te=ie.get(S.id),Re=Te!=null?Te:Ue(ke);S.rawContent=Re;let Ye=J.get(S.id),Ke=null,pt=!1;if(Ye&&(Ke=Ye.getExtractedText(),Ke===null&&(Ke=Is(Re)),Ke===null)){let rt=Ye.processChunk(Re);rt instanceof Promise?(pt=!0,rt.then(K=>{var Ee;let ce=typeof K=="string"?K:(Ee=K==null?void 0:K.text)!=null?Ee:null;ce!==null&&(S.content=ce,S.streaming=!1,J.delete(S.id),ie.delete(S.id),g(S))}).catch(()=>{})):Ke=typeof rt=="string"?rt:(It=rt==null?void 0:rt.text)!=null?It:null}if(!pt){Ke!==null&&Ke.trim()!==""?S.content=Ke:ie.has(S.id)||(S.content=Ue(ke));let rt=J.get(S.id);if(rt){let K=(U=rt.close)==null?void 0:U.call(rt);K instanceof Promise&&K.catch(()=>{}),J.delete(S.id)}ie.delete(S.id),S.streaming=!1,g(S)}},Qe=(S,pe,ke)=>{let Te=k.get(S);if(Te)return Te;let Re={id:`nested-${pe}-${S}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:c(),...ke?{variant:ke}:{},...ke==="reasoning"?{reasoning:{id:S,status:"streaming",chunks:[]}}:{},agentMetadata:{parentToolId:pe}};return k.set(S,Re),g(Re),Re},X=[],le,xe=new Map,ze=0,Lt="agent",Se=null,ue=null,gn=new Map,Pt=(nn=this.config.iterationDisplay)!=null?nn:"separate";for(le=()=>{var S,pe,ke,Te,Re,Ye,Ke,pt,It,U,rt,K,ce,Ee,bt,Jt,Yt,dn,Rt,Ze,Wt,lt,Vt,Xn,Cn,Zt,Pn,hr,vt,Dn,yr,Lr,ar,ht,co,br,po,In,Bo,zr,Pr,jr,Vr,uo,mo,Kr,wt,Nn,Fn,An,At,Jn,Yn,On,Gr,Ir,Qr,_n,Ht,Sn,Zn,Xr,Wr,Jr,vr,$n,he,ct,Gt,rn,xr,us,Rr,go,wr,O,Do,Cr,Ar,Hr,Sr,ir,No,ea,Un,qn,lr,cr,fo,Br,hn,Tr,Fo,ho,Oo,ta,_o,na,$o,ft,ms,er,Wn,ra,oa;for(let Yr=0;Yr<X.length;Yr++){let et=X[Yr].payloadType,w=X[Yr].payload;if(et==="reasoning_start"){let $=typeof w.id=="string"?w.id:null,_=typeof w.parentToolCallId=="string"&&w.parentToolCallId?w.parentToolCallId:null;if($&&_){N.set($,_),Qe($,_,"reasoning");continue}let G=(S=Pe(w,!0))!=null?S:`reason-${c()}`,ge=Oe(G);ge.reasoning=(pe=ge.reasoning)!=null?pe:{id:G,status:"streaming",chunks:[]},ge.reasoning.startedAt=(Te=ge.reasoning.startedAt)!=null?Te:ee((ke=w.startedAt)!=null?ke:w.timestamp),ge.reasoning.completedAt=void 0,ge.reasoning.durationMs=void 0,(w.scope==="loop"||w.scope==="turn")&&(ge.reasoning.scope=w.scope),ge.streaming=!0,ge.reasoning.status="streaming",g(ge)}else if(et==="reasoning_delta"){let $=typeof w.id=="string"?w.id:null;if($&&N.has($)&&k.has($)){let Fe=k.get($),Xe=(Ke=(Ye=(Re=w.reasoningText)!=null?Re:w.text)!=null?Ye:w.delta)!=null?Ke:"";Xe&&w.hidden!==!0&&Fe.reasoning&&(Fe.reasoning.chunks.push(String(Xe)),g(Fe));continue}let _=(It=(pt=Pe(w,!1))!=null?pt:Pe(w,!0))!=null?It:`reason-${c()}`,G=Oe(_);G.reasoning=(U=G.reasoning)!=null?U:{id:_,status:"streaming",chunks:[]},G.reasoning.startedAt=(K=G.reasoning.startedAt)!=null?K:ee((rt=w.startedAt)!=null?rt:w.timestamp);let ge=(bt=(Ee=(ce=w.reasoningText)!=null?ce:w.text)!=null?Ee:w.delta)!=null?bt:"";if(ge&&w.hidden!==!0){let Fe=typeof w.sequenceIndex=="number"?w.sequenceIndex:void 0;if(Fe!==void 0){let Xe=at(_,Fe,String(ge));G.reasoning.chunks=[Xe]}else G.reasoning.chunks.push(String(ge))}if(G.reasoning.status=w.done?"complete":"streaming",w.done){G.reasoning.completedAt=ee((Jt=w.completedAt)!=null?Jt:w.timestamp);let Fe=(Yt=G.reasoning.startedAt)!=null?Yt:Date.now();G.reasoning.durationMs=Math.max(0,((dn=G.reasoning.completedAt)!=null?dn:Date.now())-Fe)}G.streaming=G.reasoning.status!=="complete",g(G)}else if(et==="reasoning_complete"){let $=typeof w.id=="string"?w.id:null;if($&&N.has($)&&k.has($)){let Xe=k.get($);if(Xe.reasoning){let Mt=typeof w.text=="string"?w.text:"";Mt&&Xe.reasoning.chunks.length===0&&Xe.reasoning.chunks.push(Mt),Xe.reasoning.status="complete",Xe.streaming=!1,g(Xe)}N.delete($),k.delete($);continue}let _=(Ze=(Rt=Pe(w,!1))!=null?Rt:Pe(w,!0))!=null?Ze:`reason-${c()}`,G=typeof w.text=="string"?w.text:"";!C.get(_)&&(G||w.scope==="loop")&&Oe(_);let ge=C.get(_);if(ge!=null&&ge.reasoning){(w.scope==="loop"||w.scope==="turn")&&(ge.reasoning.scope=w.scope),G&&ge.reasoning.chunks.length===0&&ge.reasoning.chunks.push(G),ge.reasoning.status="complete",ge.reasoning.completedAt=ee((Wt=w.completedAt)!=null?Wt:w.timestamp);let Xe=(lt=ge.reasoning.startedAt)!=null?lt:Date.now();ge.reasoning.durationMs=Math.max(0,((Vt=ge.reasoning.completedAt)!=null?Vt:Date.now())-Xe),ge.streaming=!1,g(ge)}let Fe=z(w);Fe&&D.byStep.delete(Fe)}else if(et==="tool_start"){u&&(u.streaming=!1,g(u),u=null),typeof w.iteration=="number"&&(ze=w.iteration);let $=(Cn=(Xn=typeof w.toolCallId=="string"?w.toolCallId:void 0)!=null?Xn:re(w,!0))!=null?Cn:`tool-${c()}`,_=(Zt=w.toolName)!=null?Zt:w.name;if(fe(_)){be.add($);continue}Ae(j(w),$);let G=V($),ge=(Pn=G.toolCall)!=null?Pn:{id:$,status:"pending"};ge.name=_!=null?_:ge.name,ge.status="running",w.parameters!==void 0?ge.args=w.parameters:w.args!==void 0&&(ge.args=w.args),ge.startedAt=(vt=ge.startedAt)!=null?vt:ee((hr=w.startedAt)!=null?hr:w.timestamp),ge.completedAt=void 0,ge.durationMs=void 0,G.toolCall=ge,G.streaming=!0,w.executionId&&(G.agentMetadata={executionId:w.executionId,iteration:w.iteration}),g(G)}else if(et==="tool_output_delta"){let $=(yr=(Dn=re(w,!1))!=null?Dn:re(w,!0))!=null?yr:`tool-${c()}`;if(be.has($))continue;let _=V($),G=(Lr=_.toolCall)!=null?Lr:{id:$,status:"running"};G.startedAt=(ht=G.startedAt)!=null?ht:ee((ar=w.startedAt)!=null?ar:w.timestamp);let ge=(po=(br=(co=w.text)!=null?co:w.delta)!=null?br:w.message)!=null?po:"";ge&&(G.chunks=(In=G.chunks)!=null?In:[],G.chunks.push(String(ge))),G.status="running",_.toolCall=G,_.streaming=!0;let Fe=w.agentContext;(Fe||w.executionId)&&(_.agentMetadata=(Pr=_.agentMetadata)!=null?Pr:{executionId:(Bo=Fe==null?void 0:Fe.executionId)!=null?Bo:w.executionId,iteration:(zr=Fe==null?void 0:Fe.iteration)!=null?zr:w.iteration}),g(_)}else if(et==="tool_complete"){let $=(Vr=(jr=re(w,!1))!=null?jr:re(w,!0))!=null?Vr:`tool-${c()}`;if(be.has($)){be.delete($);continue}let _=V($),G=(uo=_.toolCall)!=null?uo:{id:$,status:"running"};G.status="complete",w.result!==void 0&&(G.result=w.result),typeof w.duration=="number"&&(G.duration=w.duration),G.completedAt=ee((mo=w.completedAt)!=null?mo:w.timestamp);let ge=(Kr=w.duration)!=null?Kr:w.executionTime;if(typeof ge=="number")G.durationMs=ge;else{let Mt=(wt=G.startedAt)!=null?wt:Date.now();G.durationMs=Math.max(0,((Nn=G.completedAt)!=null?Nn:Date.now())-Mt)}_.toolCall=G,_.streaming=!1;let Fe=w.agentContext;(Fe||w.executionId)&&(_.agentMetadata=(At=_.agentMetadata)!=null?At:{executionId:(Fn=Fe==null?void 0:Fe.executionId)!=null?Fn:w.executionId,iteration:(An=Fe==null?void 0:Fe.iteration)!=null?An:w.iteration}),g(_);let Xe=j(w);Xe&&B.byCall.delete(Xe)}else if(et==="await"&&w.toolName){let $=typeof w.toolCallId=="string"&&w.toolCallId.length>0?w.toolCallId:void 0,_=(Jn=$!=null?$:w.toolId)!=null?Jn:`local-${c()}`,G=V(_),ge=w.toolName,Fe=w.origin==="webmcp"&&!Qo(ge)?`webmcp:${ge}`:ge,Xe=Qo(Fe),Mt=(Yn=G.toolCall)!=null?Yn:{id:_,status:"pending"};Mt.name=Fe,Mt.args=w.parameters,Mt.status=Xe?"running":"complete",Mt.chunks=(On=Mt.chunks)!=null?On:[],Mt.startedAt=(Qr=Mt.startedAt)!=null?Qr:ee((Ir=(Gr=w.startedAt)!=null?Gr:w.timestamp)!=null?Ir:w.awaitedAt),Xe?(Mt.completedAt=void 0,Mt.duration=void 0,Mt.durationMs=void 0):Mt.completedAt=(_n=Mt.completedAt)!=null?_n:Mt.startedAt,G.toolCall=Mt,G.streaming=!1,G.agentMetadata={...G.agentMetadata,executionId:(Sn=w.executionId)!=null?Sn:(Ht=G.agentMetadata)==null?void 0:Ht.executionId,awaitingLocalTool:!0,...$?{webMcpToolCallId:$}:{}},g(G)}else if(et==="text_start"){let $=typeof w.id=="string"?w.id:null,_=typeof w.parentToolCallId=="string"&&w.parentToolCallId?w.parentToolCallId:null;if($&&_){N.set($,_);continue}let G=u;G&&(Lt==="flow"?(de(G),nt=G):(G.streaming=!1,g(G)),u=null),T=typeof w.id=="string"?w.id:T,M=""}else if(et==="text_delta"){let $=typeof w.id=="string"?w.id:null,_=$?N.get($):void 0;if($&&_){let ge=typeof w.delta=="string"?w.delta:"",Fe=((Zn=W.get($))!=null?Zn:"")+ge;if(W.set($,Fe),Fe.trim()==="")continue;let Xe=Qe($,_);Xe.agentMetadata={...Xe.agentMetadata,executionId:w.executionId,parentToolId:_},Me(Xe,Fe,ge,void 0);continue}if(T=typeof w.id=="string"?w.id:T,Lt==="flow"){let ge=typeof w.delta=="string"?w.delta:"";if(M+=ge,M.trim()==="")continue;let Fe=$e();Fe.agentMetadata={executionId:w.executionId,iteration:w.iteration},Me(Fe,M,ge,void 0),v=Fe;continue}let G=$e();G.content+=(Xr=w.delta)!=null?Xr:"",G.agentMetadata={executionId:w.executionId,iteration:w.iteration,turnId:Se!=null?Se:void 0,agentName:ue==null?void 0:ue.agentName},v=G,g(G)}else if(et==="text_complete"){let $=typeof w.id=="string"?w.id:null;if($&&N.has($)){let G=k.get($);G&&de(G),N.delete($),W.delete($),k.delete($);continue}let _=u;_&&(Lt==="flow"?(de(_),nt=_):(((Wr=_.content)!=null?Wr:"")===""&&typeof w.text=="string"&&(_.content=w.text),_.streaming=!1,g(_)),u=null),T=null,M=""}else if(et==="step_complete"){let $=w.stepType,_=w.executionType;if($==="tool"||_==="context")continue;if(w.success===!1){let G=w.error,ge=typeof G=="string"&&G!==""?G:G!=null&&typeof G=="object"&&"message"in G?String((Jr=G.message)!=null?Jr:"Step failed"):"Step failed";t({type:"error",error:new Error(ge)});let Fe=u;Fe&&Fe.streaming&&(Fe.streaming=!1,g(Fe)),t({type:"status",status:"idle"});continue}{let G=nt;nt=null;let ge=w.stopReason,Fe=(vr=w.result)==null?void 0:vr.response;if(G)ge&&(G.stopReason=ge),Fe!=null?it(G,Fe):G.streaming!==!1&&(J.delete(G.id),ie.delete(G.id),G.streaming=!1,g(G));else{let Xe=Fe!=null&&Fe!=="";if(Xe||ge){let Mt=$e();ge&&(Mt.stopReason=ge),Xe?de(Mt,Fe):(Mt.streaming=!1,g(Mt))}}continue}}else if(et==="execution_start")Lt=w.kind==="flow"?"flow":"agent",Lt==="agent"&&(ue={executionId:w.executionId,agentId:($n=w.agentId)!=null?$n:"virtual",agentName:(he=w.agentName)!=null?he:"",status:"running",currentIteration:0,maxTurns:(ct=w.maxTurns)!=null?ct:1,startedAt:ee(w.startedAt)});else if(et==="turn_start"){let $=typeof w.iteration=="number"?w.iteration:ze;if($!==ze){if(ue&&(ue.currentIteration=$),Pt==="separate"&&$>1){let _=u;_&&(_.streaming=!1,g(_),gn.set($-1,_),u=null)}ze=$}Se=typeof w.id=="string"?w.id:null,v=null}else if(et==="tool_input_delta"){let $=(Gt=w.toolCallId)!=null?Gt:B.lastId;if($){let _=I.get($);_!=null&&_.toolCall&&(_.toolCall.chunks=(rn=_.toolCall.chunks)!=null?rn:[],_.toolCall.chunks.push((xr=w.delta)!=null?xr:""),g(_))}}else{if(et==="tool_input_complete")continue;if(et==="turn_complete"){let $=w.stopReason,_=u!=null?u:v;if($&&_!==null){let G=w.id;(!G||((us=_.agentMetadata)==null?void 0:us.turnId)===G)&&(_.stopReason=$,g(_))}Se===w.id&&(Se=null)}else if(et==="media_start"){let $=String(w.id);xe.set($,{mediaType:typeof w.mediaType=="string"?w.mediaType:void 0,role:typeof w.role=="string"?w.role:void 0,toolCallId:w.toolCallId,parts:[]})}else if(et==="media_delta"){let $=xe.get(String(w.id));$&&typeof w.delta=="string"&&$.parts.push(w.delta)}else if(et==="media_complete"){let $=String(w.id),_=xe.get($);xe.delete($);let G=(go=(Rr=typeof w.mediaType=="string"?w.mediaType:void 0)!=null?Rr:_==null?void 0:_.mediaType)!=null?go:"application/octet-stream",ge=typeof w.data=="string"?w.data:void 0,Fe=typeof w.url=="string"?w.url:_&&_.parts.length>0?_.parts.join(""):void 0,Xe=null;if(ge)Xe={type:"media",data:ge,mediaType:G};else if(Fe){let zn=G.toLowerCase();Xe={type:zn==="image"||zn.startsWith("image/")?"image-url":"file-url",url:Fe,mediaType:G}}let Mt=(wr=w.toolCallId)!=null?wr:_==null?void 0:_.toolCallId,Dr=Xe?[Xe]:[],Rn=[];for(let zn of Dr){if(!zn||typeof zn!="object")continue;let pn=zn,Zr=typeof pn.type=="string"?pn.type:void 0,Nr=typeof pn.mediaType=="string"?pn.mediaType.toLowerCase():"",un=null,Hn="";if(Zr==="media"){let jn=typeof pn.data=="string"?pn.data:void 0;if(!jn)continue;Hn=Nr.length>0?Nr:"application/octet-stream",un=`data:${Hn};base64,${jn}`}else if(Zr==="image-url"){let jn=typeof pn.url=="string"?pn.url:void 0;if(!jn)continue;Hn=Nr,un=jn}else if(Zr==="file-url"){let jn=typeof pn.url=="string"?pn.url:void 0;if(!jn)continue;Hn=Nr,un=jn}else continue;if(un)if(Zr==="image-url"||Hn.startsWith("image/"))Rn.push({type:"image",image:un,...Hn.includes("/")?{mimeType:Hn}:{}});else if(Hn.startsWith("audio/"))Rn.push({type:"audio",audio:un,mimeType:Hn});else if(Hn.startsWith("video/"))Rn.push({type:"video",video:un,mimeType:Hn});else{let jn=Hn||"application/octet-stream";Rn.push({type:"file",data:un,mimeType:jn,filename:sf(jn)})}}if(Rn.length>0){let zn=c(),pn=Mt,Nr={id:`agent-media-${typeof pn=="string"&&pn.length>0?`${pn}-${zn}`:String(zn)}`,role:"assistant",content:"",contentParts:Rn,createdAt:new Date().toISOString(),streaming:!1,sequence:zn,agentMetadata:{executionId:w.executionId,iteration:typeof w.iteration=="number"?w.iteration:ze}};g(Nr);let un=u;un&&(un.streaming=!1,g(un)),u=null,x.current=null}}else if(et==="execution_complete"){let $=(O=w.kind)!=null?O:Lt;$==="agent"&&ue&&(ue.status=w.success?"complete":"error",ue.completedAt=ee(w.completedAt),ue.stopReason=w.stopReason);let _=u;_&&($==="flow"&&_.streaming!==!1?de(_):(_.streaming=!1,g(_)),u=null),T=null,M="",nt=null,t({type:"status",status:"idle"})}else if(et==="execution_error"){let $=typeof w.error=="string"?w.error:(Cr=(Do=w.error)==null?void 0:Do.message)!=null?Cr:"Execution error";t({type:"error",error:new Error($)})}else if(et!=="ping"){if(et==="approval_start"){let $=(Ar=w.approvalId)!=null?Ar:`approval-${c()}`,_={id:`approval-${$}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",sequence:c(),approval:{id:$,status:"pending",agentId:(Hr=ue==null?void 0:ue.agentId)!=null?Hr:"virtual",executionId:(ir=(Sr=w.executionId)!=null?Sr:ue==null?void 0:ue.executionId)!=null?ir:"",toolName:(No=w.toolName)!=null?No:"",toolType:w.toolType,description:(Un=w.description)!=null?Un:`Execute ${(ea=w.toolName)!=null?ea:"tool"}`,...typeof w.reason=="string"&&w.reason?{reason:w.reason}:{},parameters:w.parameters}};g(_)}else if(et==="step_await"&&w.awaitReason==="approval_required"){let $=(qn=w.approvalId)!=null?qn:`approval-${c()}`,_={id:`approval-${$}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",sequence:c(),approval:{id:$,status:"pending",agentId:(lr=ue==null?void 0:ue.agentId)!=null?lr:"virtual",executionId:(fo=(cr=w.executionId)!=null?cr:ue==null?void 0:ue.executionId)!=null?fo:"",toolName:(Br=w.toolName)!=null?Br:"",toolType:w.toolType,description:(Tr=w.description)!=null?Tr:`Execute ${(hn=w.toolName)!=null?hn:"tool"}`,...typeof w.reason=="string"&&w.reason?{reason:w.reason}:{},parameters:w.parameters}};g(_)}else if(et==="approval_complete"){let $=w.approvalId;if($){let G={id:`approval-${$}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",sequence:c(),approval:{id:$,status:(Fo=w.decision)!=null?Fo:"approved",agentId:(ho=ue==null?void 0:ue.agentId)!=null?ho:"virtual",executionId:(ta=(Oo=w.executionId)!=null?Oo:ue==null?void 0:ue.executionId)!=null?ta:"",toolName:(_o=w.toolName)!=null?_o:"",description:(na=w.description)!=null?na:"",resolvedAt:Date.now()}};g(G)}}else if(et==="artifact_start"||et==="artifact_delta"||et==="artifact_update"||et==="artifact_complete"){if(et==="artifact_start"){let $=w.artifactType,_=String(w.id),G=typeof w.title=="string"?w.title:void 0;if(t({type:"artifact_start",id:_,artifactType:$,title:G,component:typeof w.component=="string"?w.component:void 0}),ae.set(_,{markdown:"",title:G}),!Q.has(_)){Q.add(_);let ge={id:`artifact-ref-${_}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:c(),rawContent:JSON.stringify({component:"PersonaArtifactCard",props:{artifactId:_,title:G,artifactType:$,status:"streaming"}})};ne.set(_,ge),g(ge)}}else if(et==="artifact_delta"){let $=String(w.id),_=typeof w.delta=="string"?w.delta:String(($o=w.delta)!=null?$o:"");t({type:"artifact_delta",id:$,artDelta:_});let G=ae.get($);G&&(G.markdown+=_)}else if(et==="artifact_update"){let $=w.props&&typeof w.props=="object"&&!Array.isArray(w.props)?w.props:{};t({type:"artifact_update",id:String(w.id),props:$,component:typeof w.component=="string"?w.component:void 0})}else if(et==="artifact_complete"){let $=String(w.id);t({type:"artifact_complete",id:$});let _=ne.get($);if(_){_.streaming=!1;try{let G=JSON.parse((ft=_.rawContent)!=null?ft:"{}");if(G.props){G.props.status="complete";let ge=ae.get($);ge!=null&&ge.markdown&&(G.props.markdown=ge.markdown)}_.rawContent=JSON.stringify(G)}catch{}ae.delete($),g(_),ne.delete($)}}}else if(et==="transcript_insert"){let $=w.message;if(!$||typeof $!="object")continue;let _=String((ms=$.id)!=null?ms:`msg-${c()}`),G=$.role,Fe={id:_,role:G==="user"?"user":G==="system"?"system":"assistant",content:typeof $.content=="string"?$.content:"",rawContent:typeof $.rawContent=="string"?$.rawContent:void 0,createdAt:typeof $.createdAt=="string"?$.createdAt:new Date().toISOString(),streaming:$.streaming===!0,...typeof $.variant=="string"?{variant:$.variant}:{},sequence:c()};if(g(Fe),Fe.rawContent)try{let Xe=JSON.parse(Fe.rawContent),Mt=(er=Xe==null?void 0:Xe.props)==null?void 0:er.artifactId;typeof Mt=="string"&&Q.add(Mt)}catch{}u=null,x.current=null,J.delete(_),ie.delete(_)}else if(et==="error"){if(w.recoverable===!1&&w.error!=null&&w.error!==""){let $=typeof w.error=="string"?w.error:((Wn=w.error)==null?void 0:Wn.message)!=null?String(w.error.message):"Execution error";t({type:"error",error:new Error($)});let _=u;_&&_.streaming&&(_.streaming=!1,g(_)),t({type:"status",status:"idle"})}}else if(et==="step_error"||et==="dispatch_error"||et==="flow_error"){let $=null;if(w.error instanceof Error)$=w.error;else if(et==="dispatch_error"){let _=(ra=w.message)!=null?ra:w.error;_!=null&&_!==""&&($=new Error(String(_)))}else{let _=w.error;typeof _=="string"&&_!==""?$=new Error(_):_!=null&&typeof _=="object"&&"message"in _&&($=new Error(String((oa=_.message)!=null?oa:_)))}if($){t({type:"error",error:$});let _=u;_&&_.streaming&&(_.streaming=!1,g(_)),t({type:"status",status:"idle"})}}}}}X.length=0};;){let{done:S,value:pe}=await o.read();if(S)break;a+=s.decode(pe,{stream:!0});let ke=a.split(`
|
|
10
10
|
|
|
11
|
-
`);a=(
|
|
12
|
-
`),$e="message",Oe="";for(let Xt of Ze)Xt.startsWith("event:")?$e=Xt.replace("event:","").trim():Xt.startsWith("data:")&&(Oe+=Xt.replace("data:","").trim());if(!Oe)continue;let Lt;try{Lt=JSON.parse(Oe)}catch(Xt){t({type:"error",error:Xt instanceof Error?Xt:new Error("Failed to parse chat stream payload")});continue}let Vt=$e!=="message"?$e:(dn=Lt.type)!=null?dn:"message";if((wr=this.onSSEEvent)==null||wr.call(this,Vt,Lt),this.parseSSEEvent){x.current=m;let Xt=await this.handleCustomSSEEvent(Lt,t,x,u,c,M);if(x.current&&x.current!==m&&(m=x.current),Xt)continue}Je.push(Vt,Lt),ue()}}Je.flushPending(),ue(),Je.destroy()}};function Ka(){let n=Date.now().toString(36),e=Math.random().toString(36).substring(2,10);return`usr_${n}_${e}`}function Ys(){let n=Date.now().toString(36),e=Math.random().toString(36).substring(2,10);return`ast_${n}_${e}`}var Ga="[Image]";function Vi(n){return{type:"text",text:n}}var vu=["image/png","image/jpeg","image/gif","image/webp","image/svg+xml","image/bmp"],lf=["application/pdf","text/plain","text/markdown","text/csv","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json"],Gr=[...vu,...lf];function cf(n){return vu.includes(n)||n.startsWith("image/")}function Qa(n){return cf(n.type)}async function xu(n){return new Promise((e,t)=>{let r=new FileReader;r.onload=()=>{let o=r.result;Qa(n)?e({type:"image",image:o,mimeType:n.type,alt:n.name}):e({type:"file",data:o,mimeType:n.type,filename:n.name})},r.onerror=()=>t(new Error("Failed to read file")),r.readAsDataURL(n)})}function wu(n,e=Gr,t=10*1024*1024){return e.includes(n.type)?n.size>t?{valid:!1,error:`File too large. Maximum size: ${Math.round(t/1048576)}MB`}:{valid:!0}:{valid:!1,error:`Invalid file type "${n.type}". Accepted types: ${e.join(", ")}`}}function df(n){let e=n.split(".");return e.length>1?e.pop().toLowerCase():""}function Cu(n,e){let t=df(e).toUpperCase();return{"application/pdf":"PDF","text/plain":"TXT","text/markdown":"MD","text/csv":"CSV","application/msword":"DOC","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"DOCX","application/vnd.ms-excel":"XLS","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"XLSX","application/json":"JSON"}[n]||t||"FILE"}Ki();var Au=16e3,pf=24e3,uf=4096,mf=1380533830;function gf(n){return n.byteLength>=44&&new DataView(n).getUint32(0,!1)===mf?new Uint8Array(n,44):new Uint8Array(n)}function ff(n){var r;let e=n.replace(/\/+$/,"");return/^wss?:\/\//i.test(e)?e:/^https?:\/\//i.test(e)?e.replace(/^http/i,"ws"):`${typeof window!="undefined"&&((r=window.location)==null?void 0:r.protocol)==="https:"?"wss:":"ws:"}//${e}`}var Zs=class{constructor(e){this.config=e;this.type="runtype";this.ws=null;this.captureContext=null;this.mediaStream=null;this.sourceNode=null;this.processor=null;this.playback=null;this.callLive=!1;this.isSpeaking=!1;this.callGeneration=0;this.intentionalClose=!1;this.resultCallbacks=[];this.errorCallbacks=[];this.statusCallbacks=[];this.transcriptCallbacks=[];this.metricsCallbacks=[]}async connect(){}async startListening(){var s,a,i,d;if(this.callLive)return;let e=(s=this.config)==null?void 0:s.agentId,t=(a=this.config)==null?void 0:a.clientToken,r=(i=this.config)==null?void 0:i.host;if(!e)throw new Error("Runtype voice requires an agentId");if(!t)throw new Error("Runtype voice requires a clientToken");if(!r)throw new Error("Runtype voice requires a host (or widget apiUrl)");let o=++this.callGeneration;this.intentionalClose=!1,this.callLive=!0;try{let c=await navigator.mediaDevices.getUserMedia({audio:{sampleRate:Au,channelCount:1,echoCancellation:!0}});if(o!==this.callGeneration){c.getTracks().forEach(x=>x.stop());return}this.mediaStream=c;let g=window.AudioContext||window.webkitAudioContext,f=new g({sampleRate:Au});f.state==="suspended"&&await f.resume().catch(()=>{}),this.captureContext=f;let u=(d=this.config)!=null&&d.createPlaybackEngine?await this.config.createPlaybackEngine():new ms(pf);if(o!==this.callGeneration){u.destroy(),c.getTracks().forEach(x=>x.stop()),f.close().catch(()=>{});return}this.playback=u,u.onFinished(()=>{o===this.callGeneration&&(this.isSpeaking=!1,this.ws&&this.ws.readyState===WebSocket.OPEN&&this.emitStatus("listening"))});let m=`${ff(r)}/ws/agents/${encodeURIComponent(e)}/voice`,v=new WebSocket(m,["runtype.bearer",t]);v.binaryType="arraybuffer",this.ws=v,v.onopen=()=>{o===this.callGeneration&&(this.emitStatus("listening"),this.startCapture(f,c,v,o))},v.onmessage=x=>this.handleMessage(x,o),v.onerror=()=>{o===this.callGeneration&&(this.emitError(new Error("Voice connection failed")),this.emitStatus("error"),this.cleanup())},v.onclose=x=>{if(this.intentionalClose){this.intentionalClose=!1;return}if(o===this.callGeneration){if(x.code!==1e3){let M=x.code?` (code ${x.code})`:"";this.emitError(new Error(`Voice connection closed${M}`)),this.emitStatus("error")}else this.emitStatus("idle");this.cleanup()}}}catch(c){throw this.cleanup(),this.emitError(c),this.emitStatus("error"),c}}async stopListening(){this.cleanup(),this.emitStatus("idle")}async disconnect(){this.cleanup(),this.emitStatus("disconnected"),this.resultCallbacks=[],this.errorCallbacks=[],this.statusCallbacks=[],this.transcriptCallbacks=[],this.metricsCallbacks=[]}stopPlayback(){this.playback&&this.playback.flush(),this.isSpeaking=!1,this.ws&&this.ws.readyState===WebSocket.OPEN&&this.emitStatus("listening")}getInterruptionMode(){return"barge-in"}isBargeInActive(){return this.callLive}async deactivateBargeIn(){this.cleanup(),this.emitStatus("idle")}startCapture(e,t,r,o){let s=e.createMediaStreamSource(t);this.sourceNode=s;let a=e.createScriptProcessor(uf,1,1);this.processor=a,a.onaudioprocess=i=>{if(o!==this.callGeneration||r.readyState!==WebSocket.OPEN)return;let d=i.inputBuffer.getChannelData(0),c=new Int16Array(d.length);for(let g=0;g<d.length;g++){let f=Math.max(-1,Math.min(1,d[g]));c[g]=f<0?f*32768:f*32767}r.send(c.buffer)},s.connect(a),a.connect(e.destination)}handleMessage(e,t){var o,s;if(t!==this.callGeneration)return;if(e.data instanceof ArrayBuffer){this.handleAudioFrame(e.data,t);return}let r;try{r=JSON.parse(e.data)}catch{return}switch(r.type){case"transcript_interim":this.emitStatus("listening"),this.emitTranscript("user",(o=r.text)!=null?o:"",!1);break;case"transcript_final":{let a=r.role==="assistant"?"assistant":"user";this.emitStatus(a==="user"?"processing":"speaking"),this.emitTranscript(a,(s=r.text)!=null?s:"",!0);break}case"audio_end":this.playback?this.playback.markStreamEnd():(this.isSpeaking=!1,this.emitStatus("listening"));break;case"metrics":this.emitMetrics({llmMs:r.llm_ms,ttsMs:r.tts_ms,firstAudioMs:r.first_audio_ms,totalMs:r.total_ms});break;case"error":this.emitError(new Error(r.error||"Voice error")),this.emitStatus("error");break}}handleAudioFrame(e,t){if(t!==this.callGeneration||!this.playback)return;let r=gf(e);r.length!==0&&(this.isSpeaking||(this.isSpeaking=!0,this.emitStatus("speaking")),this.playback.enqueue(r))}cleanup(){if(this.callGeneration+=1,this.callLive=!1,this.isSpeaking=!1,this.processor&&(this.processor.onaudioprocess=null,this.processor.disconnect(),this.processor=null),this.sourceNode&&(this.sourceNode.disconnect(),this.sourceNode=null),this.mediaStream&&(this.mediaStream.getTracks().forEach(e=>e.stop()),this.mediaStream=null),this.captureContext&&(this.captureContext.close().catch(()=>{}),this.captureContext=null),this.playback&&(this.playback.destroy(),this.playback=null),this.ws){this.intentionalClose=!0;try{this.ws.close(1e3,"client ended call")}catch{}this.ws=null}}onResult(e){this.resultCallbacks.push(e)}onError(e){this.errorCallbacks.push(e)}onStatusChange(e){this.statusCallbacks.push(e)}onTranscript(e){this.transcriptCallbacks.push(e)}onMetrics(e){this.metricsCallbacks.push(e)}emitStatus(e){this.statusCallbacks.forEach(t=>t(e))}emitError(e){this.errorCallbacks.forEach(t=>t(e))}emitTranscript(e,t,r){this.transcriptCallbacks.forEach(o=>o(e,t,r))}emitMetrics(e){this.metricsCallbacks.forEach(t=>t(e))}};var Oo=class{constructor(e={}){this.config=e;this.type="browser";this.recognition=null;this.resultCallbacks=[];this.errorCallbacks=[];this.statusCallbacks=[];this.isListening=!1;this.w=typeof window!="undefined"?window:void 0}async connect(){this.statusCallbacks.forEach(e=>e("connected"))}async startListening(){var e,t;try{if(this.isListening)throw new Error("Already listening");if(!this.w)throw new Error("Window object not available");let r=this.w.SpeechRecognition||this.w.webkitSpeechRecognition;if(!r)throw new Error("Browser speech recognition not supported");this.recognition=new r,this.recognition.lang=((e=this.config)==null?void 0:e.language)||"en-US",this.recognition.continuous=((t=this.config)==null?void 0:t.continuous)||!1,this.recognition.interimResults=!0,this.recognition.onresult=o=>{var i;let s=Array.from(o.results).map(d=>d[0]).map(d=>d.transcript).join(""),a=o.results[o.results.length-1].isFinal;this.resultCallbacks.forEach(d=>d({text:s,confidence:a?.8:.5,provider:"browser"})),a&&!((i=this.config)!=null&&i.continuous)&&this.stopListening()},this.recognition.onerror=o=>{this.errorCallbacks.forEach(s=>s(new Error(o.error))),this.statusCallbacks.forEach(s=>s("error"))},this.recognition.onstart=()=>{this.isListening=!0,this.statusCallbacks.forEach(o=>o("listening"))},this.recognition.onend=()=>{this.isListening=!1,this.statusCallbacks.forEach(o=>o("idle"))},this.recognition.start()}catch(r){throw this.errorCallbacks.forEach(o=>o(r)),this.statusCallbacks.forEach(o=>o("error")),r}}async stopListening(){this.recognition&&(this.recognition.stop(),this.recognition=null),this.isListening=!1,this.statusCallbacks.forEach(e=>e("idle"))}onResult(e){this.resultCallbacks.push(e)}onError(e){this.errorCallbacks.push(e)}onStatusChange(e){this.statusCallbacks.push(e)}async disconnect(){await this.stopListening(),this.statusCallbacks.forEach(e=>e("disconnected"))}static isSupported(){return"SpeechRecognition"in window||"webkitSpeechRecognition"in window}};function gs(n){switch(n.type){case"runtype":if(!n.runtype)throw new Error("Runtype voice provider requires configuration");return new Zs(n.runtype);case"browser":if(!Oo.isSupported())throw new Error("Browser speech recognition not supported");return new Oo(n.browser||{});case"custom":{let e=n.custom;if(!e)throw new Error("Custom voice provider requires a `custom` provider instance or factory");let t=typeof e=="function"?e():e;if(!t||typeof t.startListening!="function")throw new Error("Custom voice provider `custom` must be a VoiceProvider (or a factory returning one)");return t}default:throw new Error(`Unknown voice provider type: ${n.type}`)}}function Su(n){if((n==null?void 0:n.type)==="custom"&&n.custom)return gs({type:"custom",custom:n.custom});if((n==null?void 0:n.type)==="runtype"&&n.runtype)return gs({type:"runtype",runtype:n.runtype});if(Oo.isSupported())return gs({type:"browser",browser:(n==null?void 0:n.browser)||{language:"en-US"}});throw new Error("No supported voice providers available")}function Gi(n){try{return Su(n),!0}catch{return!1}}function Xa(n){var t;let e=["Microsoft Jenny Online (Natural) - English (United States)","Microsoft Aria Online (Natural) - English (United States)","Microsoft Guy Online (Natural) - English (United States)","Google US English","Google UK English Female","Ava (Premium)","Evan (Enhanced)","Samantha (Enhanced)","Samantha","Daniel","Karen","Microsoft David Desktop - English (United States)","Microsoft Zira Desktop - English (United States)"];for(let r of e){let o=n.find(s=>s.name===r);if(o)return o}return(t=n.find(r=>r.lang.startsWith("en")))!=null?t:n[0]}var fs=class n{constructor(e={}){this.options=e;this.id="browser";this.supportsPause=!0}static isSupported(){return typeof window!="undefined"&&"speechSynthesis"in window}speak(e,t){var a;if(!n.isSupported()){(a=t.onError)==null||a.call(t,new Error("Web Speech API is unavailable"));return}let r=window.speechSynthesis;r.cancel();let o=new SpeechSynthesisUtterance(e.text),s=r.getVoices();if(e.voice){let i=s.find(d=>d.name===e.voice);i&&(o.voice=i)}else s.length>0&&(o.voice=this.options.pickVoice?this.options.pickVoice(s):Xa(s));e.rate!==void 0&&(o.rate=e.rate),e.pitch!==void 0&&(o.pitch=e.pitch),o.onend=()=>{var i;return(i=t.onEnd)==null?void 0:i.call(t)},o.onerror=i=>{var c,g;let d=i.error;d==="canceled"||d==="interrupted"?(c=t.onEnd)==null||c.call(t):(g=t.onError)==null||g.call(t,new Error(d||"Speech synthesis failed"))},setTimeout(()=>{var i;r.speak(o),(i=t.onStart)==null||i.call(t)},50)}pause(){n.isSupported()&&window.speechSynthesis.pause()}resume(){n.isSupported()&&window.speechSynthesis.resume()}stop(){n.isSupported()&&window.speechSynthesis.cancel()}};var ea=class{constructor(e){this.resolveEngine=e;this.engine=null;this.activeId=null;this.state="idle";this.listeners=new Set;this.generation=0}get supportsPause(){var e,t;return(t=(e=this.engine)==null?void 0:e.supportsPause)!=null?t:!0}stateFor(e){return this.activeId===e?this.state:"idle"}activeMessageId(){return this.activeId}onChange(e){return this.listeners.add(e),()=>this.listeners.delete(e)}toggle(e,t){var r,o;if(this.activeId===e){if(this.state==="playing"){(r=this.engine)!=null&&r.supportsPause?(this.engine.pause(),this.set(e,"paused")):this.stop();return}if(this.state==="paused"){(o=this.engine)==null||o.resume(),this.set(e,"playing");return}if(this.state==="loading"){this.stop();return}}this.play(e,t)}async play(e,t){var o;let r=++this.generation;(o=this.engine)==null||o.stop(),this.set(e,"loading");try{if(!this.engine){let s=await this.resolveEngine();if(r!==this.generation)return;if(!s){this.set(null,"idle");return}this.engine=s}this.engine.speak(t,{onStart:()=>{r===this.generation&&this.set(e,"playing")},onEnd:()=>{r===this.generation&&this.set(null,"idle")},onError:()=>{r===this.generation&&this.set(null,"idle")}})}catch{r===this.generation&&this.set(null,"idle")}}stop(){var e;this.generation++,(e=this.engine)==null||e.stop(),this.set(null,"idle")}destroy(){var e,t;this.stop(),(t=(e=this.engine)==null?void 0:e.destroy)==null||t.call(e),this.engine=null,this.listeners.clear()}set(e,t){this.activeId=t==="idle"?null:e,this.state=t;for(let r of this.listeners)r(this.activeId,this.state)}};function Qi(n){if(!n)return"";let e=hf(n);return Tu(e!==null?e:n)}function hf(n){let e=n.trim(),t=e.match(/^```(?:json)?\s*([\s\S]*?)\s*```$/i);if(t&&(e=t[1].trim()),!e.startsWith("{"))return null;try{let r=JSON.parse(e);if(r&&typeof r=="object"&&typeof r.text=="string")return r.text}catch{}return null}function Tu(n){if(!n)return"";let e=n;return e=e.replace(/```[\s\S]*?```/g," "),e=e.replace(/~~~[\s\S]*?~~~/g," "),e=e.replace(/`([^`]+)`/g,"$1"),e=e.replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1"),e=e.replace(/\[([^\]]+)\]\([^)]*\)/g,"$1"),e=e.replace(/\[([^\]]+)\]\[[^\]]*\]/g,"$1"),e=e.replace(/<\/?[a-zA-Z][^>]*>/g," "),e=e.replace(/^[ \t]*#{1,6}[ \t]+/gm,""),e=e.replace(/^[ \t]*>[ \t]?/gm,""),e=e.replace(/^[ \t]*[-*+][ \t]+/gm,""),e=e.replace(/^[ \t]*\d+\.[ \t]+/gm,""),e=e.replace(/^[ \t]*([-*_])([ \t]*\1){2,}[ \t]*$/gm," "),e=e.replace(/(\*\*|__)(.*?)\1/g,"$2"),e=e.replace(/(\*|_)(.*?)\1/g,"$2"),e=e.replace(/~~(.*?)~~/g,"$1"),e=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/ /g," "),e=e.replace(/[ \t]+/g," "),e=e.replace(/[ \t]*\n[ \t]*/g,`
|
|
11
|
+
`);a=(fr=ke.pop())!=null?fr:"";for(let Te of ke){let Re=Te.split(`
|
|
12
|
+
`),Ye="message",Ke="";for(let U of Re)U.startsWith("event:")?Ye=U.replace("event:","").trim():U.startsWith("data:")&&(Ke+=U.replace("data:","").trim());if(!Ke)continue;let pt;try{pt=JSON.parse(Ke)}catch(U){t({type:"error",error:U instanceof Error?U:new Error("Failed to parse chat stream payload")});continue}let It=Ye!=="message"?Ye:(fn=pt.type)!=null?fn:"message";if((je=this.onSSEEvent)==null||je.call(this,It,pt),this.parseSSEEvent){x.current=u;let U=await this.handleCustomSSEEvent(pt,t,x,g,c,P);if(x.current&&x.current!==u&&(u=x.current),U)continue}X.push({payloadType:It,payload:pt}),le()}}le()}};function wa(){let n=Date.now().toString(36),e=Math.random().toString(36).substring(2,10);return`usr_${n}_${e}`}function Hs(){let n=Date.now().toString(36),e=Math.random().toString(36).substring(2,10);return`ast_${n}_${e}`}var Ca="[Image]";function Ti(n){return{type:"text",text:n}}var lu=["image/png","image/jpeg","image/gif","image/webp","image/svg+xml","image/bmp"],cf=["application/pdf","text/plain","text/markdown","text/csv","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json"],$r=[...lu,...cf];function df(n){return lu.includes(n)||n.startsWith("image/")}function Aa(n){return df(n.type)}async function cu(n){return new Promise((e,t)=>{let r=new FileReader;r.onload=()=>{let o=r.result;Aa(n)?e({type:"image",image:o,mimeType:n.type,alt:n.name}):e({type:"file",data:o,mimeType:n.type,filename:n.name})},r.onerror=()=>t(new Error("Failed to read file")),r.readAsDataURL(n)})}function du(n,e=$r,t=10*1024*1024){return e.includes(n.type)?n.size>t?{valid:!1,error:`File too large. Maximum size: ${Math.round(t/1048576)}MB`}:{valid:!0}:{valid:!1,error:`Invalid file type "${n.type}". Accepted types: ${e.join(", ")}`}}function pf(n){let e=n.split(".");return e.length>1?e.pop().toLowerCase():""}function pu(n,e){let t=pf(e).toUpperCase();return{"application/pdf":"PDF","text/plain":"TXT","text/markdown":"MD","text/csv":"CSV","application/msword":"DOC","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"DOCX","application/vnd.ms-excel":"XLS","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"XLSX","application/json":"JSON"}[n]||t||"FILE"}Mi();var uu=16e3,uf=24e3,mf=4096,gf=1380533830;function ff(n){return n.byteLength>=44&&new DataView(n).getUint32(0,!1)===gf?new Uint8Array(n,44):new Uint8Array(n)}function hf(n){var r;let e=n.replace(/\/+$/,"");return/^wss?:\/\//i.test(e)?e:/^https?:\/\//i.test(e)?e.replace(/^http/i,"ws"):`${typeof window!="undefined"&&((r=window.location)==null?void 0:r.protocol)==="https:"?"wss:":"ws:"}//${e}`}var Bs=class{constructor(e){this.config=e;this.type="runtype";this.ws=null;this.captureContext=null;this.mediaStream=null;this.sourceNode=null;this.processor=null;this.playback=null;this.callLive=!1;this.isSpeaking=!1;this.callGeneration=0;this.intentionalClose=!1;this.resultCallbacks=[];this.errorCallbacks=[];this.statusCallbacks=[];this.transcriptCallbacks=[];this.metricsCallbacks=[]}async connect(){}async startListening(){var s,a,i,d;if(this.callLive)return;let e=(s=this.config)==null?void 0:s.agentId,t=(a=this.config)==null?void 0:a.clientToken,r=(i=this.config)==null?void 0:i.host;if(!e)throw new Error("Runtype voice requires an agentId");if(!t)throw new Error("Runtype voice requires a clientToken");if(!r)throw new Error("Runtype voice requires a host (or widget apiUrl)");let o=++this.callGeneration;this.intentionalClose=!1,this.callLive=!0;try{let c=await navigator.mediaDevices.getUserMedia({audio:{sampleRate:uu,channelCount:1,echoCancellation:!0}});if(o!==this.callGeneration){c.getTracks().forEach(x=>x.stop());return}this.mediaStream=c;let m=window.AudioContext||window.webkitAudioContext,f=new m({sampleRate:uu});f.state==="suspended"&&await f.resume().catch(()=>{}),this.captureContext=f;let g=(d=this.config)!=null&&d.createPlaybackEngine?await this.config.createPlaybackEngine():new ts(uf);if(o!==this.callGeneration){g.destroy(),c.getTracks().forEach(x=>x.stop()),f.close().catch(()=>{});return}this.playback=g,g.onFinished(()=>{o===this.callGeneration&&(this.isSpeaking=!1,this.ws&&this.ws.readyState===WebSocket.OPEN&&this.emitStatus("listening"))});let u=`${hf(r)}/ws/agents/${encodeURIComponent(e)}/voice`,v=new WebSocket(u,["runtype.bearer",t]);v.binaryType="arraybuffer",this.ws=v,v.onopen=()=>{o===this.callGeneration&&(this.emitStatus("listening"),this.startCapture(f,c,v,o))},v.onmessage=x=>this.handleMessage(x,o),v.onerror=()=>{o===this.callGeneration&&(this.emitError(new Error("Voice connection failed")),this.emitStatus("error"),this.cleanup())},v.onclose=x=>{if(this.intentionalClose){this.intentionalClose=!1;return}if(o===this.callGeneration){if(x.code!==1e3){let P=x.code?` (code ${x.code})`:"";this.emitError(new Error(`Voice connection closed${P}`)),this.emitStatus("error")}else this.emitStatus("idle");this.cleanup()}}}catch(c){throw this.cleanup(),this.emitError(c),this.emitStatus("error"),c}}async stopListening(){this.cleanup(),this.emitStatus("idle")}async disconnect(){this.cleanup(),this.emitStatus("disconnected"),this.resultCallbacks=[],this.errorCallbacks=[],this.statusCallbacks=[],this.transcriptCallbacks=[],this.metricsCallbacks=[]}stopPlayback(){this.playback&&this.playback.flush(),this.isSpeaking=!1,this.ws&&this.ws.readyState===WebSocket.OPEN&&this.emitStatus("listening")}getInterruptionMode(){return"barge-in"}isBargeInActive(){return this.callLive}async deactivateBargeIn(){this.cleanup(),this.emitStatus("idle")}startCapture(e,t,r,o){let s=e.createMediaStreamSource(t);this.sourceNode=s;let a=e.createScriptProcessor(mf,1,1);this.processor=a,a.onaudioprocess=i=>{if(o!==this.callGeneration||r.readyState!==WebSocket.OPEN)return;let d=i.inputBuffer.getChannelData(0),c=new Int16Array(d.length);for(let m=0;m<d.length;m++){let f=Math.max(-1,Math.min(1,d[m]));c[m]=f<0?f*32768:f*32767}r.send(c.buffer)},s.connect(a),a.connect(e.destination)}handleMessage(e,t){var o,s;if(t!==this.callGeneration)return;if(e.data instanceof ArrayBuffer){this.handleAudioFrame(e.data,t);return}let r;try{r=JSON.parse(e.data)}catch{return}switch(r.type){case"transcript_interim":this.emitStatus("listening"),this.emitTranscript("user",(o=r.text)!=null?o:"",!1);break;case"transcript_final":{let a=r.role==="assistant"?"assistant":"user";this.emitStatus(a==="user"?"processing":"speaking"),this.emitTranscript(a,(s=r.text)!=null?s:"",!0);break}case"audio_end":this.playback?this.playback.markStreamEnd():(this.isSpeaking=!1,this.emitStatus("listening"));break;case"metrics":this.emitMetrics({llmMs:r.llm_ms,ttsMs:r.tts_ms,firstAudioMs:r.first_audio_ms,totalMs:r.total_ms});break;case"error":this.emitError(new Error(r.error||"Voice error")),this.emitStatus("error");break}}handleAudioFrame(e,t){if(t!==this.callGeneration||!this.playback)return;let r=ff(e);r.length!==0&&(this.isSpeaking||(this.isSpeaking=!0,this.emitStatus("speaking")),this.playback.enqueue(r))}cleanup(){if(this.callGeneration+=1,this.callLive=!1,this.isSpeaking=!1,this.processor&&(this.processor.onaudioprocess=null,this.processor.disconnect(),this.processor=null),this.sourceNode&&(this.sourceNode.disconnect(),this.sourceNode=null),this.mediaStream&&(this.mediaStream.getTracks().forEach(e=>e.stop()),this.mediaStream=null),this.captureContext&&(this.captureContext.close().catch(()=>{}),this.captureContext=null),this.playback&&(this.playback.destroy(),this.playback=null),this.ws){this.intentionalClose=!0;try{this.ws.close(1e3,"client ended call")}catch{}this.ws=null}}onResult(e){this.resultCallbacks.push(e)}onError(e){this.errorCallbacks.push(e)}onStatusChange(e){this.statusCallbacks.push(e)}onTranscript(e){this.transcriptCallbacks.push(e)}onMetrics(e){this.metricsCallbacks.push(e)}emitStatus(e){this.statusCallbacks.forEach(t=>t(e))}emitError(e){this.errorCallbacks.forEach(t=>t(e))}emitTranscript(e,t,r){this.transcriptCallbacks.forEach(o=>o(e,t,r))}emitMetrics(e){this.metricsCallbacks.forEach(t=>t(e))}};var Lo=class{constructor(e={}){this.config=e;this.type="browser";this.recognition=null;this.resultCallbacks=[];this.errorCallbacks=[];this.statusCallbacks=[];this.isListening=!1;this.w=typeof window!="undefined"?window:void 0}async connect(){this.statusCallbacks.forEach(e=>e("connected"))}async startListening(){var e,t;try{if(this.isListening)throw new Error("Already listening");if(!this.w)throw new Error("Window object not available");let r=this.w.SpeechRecognition||this.w.webkitSpeechRecognition;if(!r)throw new Error("Browser speech recognition not supported");this.recognition=new r,this.recognition.lang=((e=this.config)==null?void 0:e.language)||"en-US",this.recognition.continuous=((t=this.config)==null?void 0:t.continuous)||!1,this.recognition.interimResults=!0,this.recognition.onresult=o=>{var i;let s=Array.from(o.results).map(d=>d[0]).map(d=>d.transcript).join(""),a=o.results[o.results.length-1].isFinal;this.resultCallbacks.forEach(d=>d({text:s,confidence:a?.8:.5,provider:"browser"})),a&&!((i=this.config)!=null&&i.continuous)&&this.stopListening()},this.recognition.onerror=o=>{this.errorCallbacks.forEach(s=>s(new Error(o.error))),this.statusCallbacks.forEach(s=>s("error"))},this.recognition.onstart=()=>{this.isListening=!0,this.statusCallbacks.forEach(o=>o("listening"))},this.recognition.onend=()=>{this.isListening=!1,this.statusCallbacks.forEach(o=>o("idle"))},this.recognition.start()}catch(r){throw this.errorCallbacks.forEach(o=>o(r)),this.statusCallbacks.forEach(o=>o("error")),r}}async stopListening(){this.recognition&&(this.recognition.stop(),this.recognition=null),this.isListening=!1,this.statusCallbacks.forEach(e=>e("idle"))}onResult(e){this.resultCallbacks.push(e)}onError(e){this.errorCallbacks.push(e)}onStatusChange(e){this.statusCallbacks.push(e)}async disconnect(){await this.stopListening(),this.statusCallbacks.forEach(e=>e("disconnected"))}static isSupported(){return"SpeechRecognition"in window||"webkitSpeechRecognition"in window}};function ns(n){switch(n.type){case"runtype":if(!n.runtype)throw new Error("Runtype voice provider requires configuration");return new Bs(n.runtype);case"browser":if(!Lo.isSupported())throw new Error("Browser speech recognition not supported");return new Lo(n.browser||{});case"custom":{let e=n.custom;if(!e)throw new Error("Custom voice provider requires a `custom` provider instance or factory");let t=typeof e=="function"?e():e;if(!t||typeof t.startListening!="function")throw new Error("Custom voice provider `custom` must be a VoiceProvider (or a factory returning one)");return t}default:throw new Error(`Unknown voice provider type: ${n.type}`)}}function mu(n){if((n==null?void 0:n.type)==="custom"&&n.custom)return ns({type:"custom",custom:n.custom});if((n==null?void 0:n.type)==="runtype"&&n.runtype)return ns({type:"runtype",runtype:n.runtype});if(Lo.isSupported())return ns({type:"browser",browser:(n==null?void 0:n.browser)||{language:"en-US"}});throw new Error("No supported voice providers available")}function Ei(n){try{return mu(n),!0}catch{return!1}}function Sa(n){var t;let e=["Microsoft Jenny Online (Natural) - English (United States)","Microsoft Aria Online (Natural) - English (United States)","Microsoft Guy Online (Natural) - English (United States)","Google US English","Google UK English Female","Ava (Premium)","Evan (Enhanced)","Samantha (Enhanced)","Samantha","Daniel","Karen","Microsoft David Desktop - English (United States)","Microsoft Zira Desktop - English (United States)"];for(let r of e){let o=n.find(s=>s.name===r);if(o)return o}return(t=n.find(r=>r.lang.startsWith("en")))!=null?t:n[0]}var rs=class n{constructor(e={}){this.options=e;this.id="browser";this.supportsPause=!0}static isSupported(){return typeof window!="undefined"&&"speechSynthesis"in window}speak(e,t){var a;if(!n.isSupported()){(a=t.onError)==null||a.call(t,new Error("Web Speech API is unavailable"));return}let r=window.speechSynthesis;r.cancel();let o=new SpeechSynthesisUtterance(e.text),s=r.getVoices();if(e.voice){let i=s.find(d=>d.name===e.voice);i&&(o.voice=i)}else s.length>0&&(o.voice=this.options.pickVoice?this.options.pickVoice(s):Sa(s));e.rate!==void 0&&(o.rate=e.rate),e.pitch!==void 0&&(o.pitch=e.pitch),o.onend=()=>{var i;return(i=t.onEnd)==null?void 0:i.call(t)},o.onerror=i=>{var c,m;let d=i.error;d==="canceled"||d==="interrupted"?(c=t.onEnd)==null||c.call(t):(m=t.onError)==null||m.call(t,new Error(d||"Speech synthesis failed"))},setTimeout(()=>{var i;r.speak(o),(i=t.onStart)==null||i.call(t)},50)}pause(){n.isSupported()&&window.speechSynthesis.pause()}resume(){n.isSupported()&&window.speechSynthesis.resume()}stop(){n.isSupported()&&window.speechSynthesis.cancel()}};var Ds=class{constructor(e){this.resolveEngine=e;this.engine=null;this.activeId=null;this.state="idle";this.listeners=new Set;this.generation=0}get supportsPause(){var e,t;return(t=(e=this.engine)==null?void 0:e.supportsPause)!=null?t:!0}stateFor(e){return this.activeId===e?this.state:"idle"}activeMessageId(){return this.activeId}onChange(e){return this.listeners.add(e),()=>this.listeners.delete(e)}toggle(e,t){var r,o;if(this.activeId===e){if(this.state==="playing"){(r=this.engine)!=null&&r.supportsPause?(this.engine.pause(),this.set(e,"paused")):this.stop();return}if(this.state==="paused"){(o=this.engine)==null||o.resume(),this.set(e,"playing");return}if(this.state==="loading"){this.stop();return}}this.play(e,t)}async play(e,t){var o;let r=++this.generation;(o=this.engine)==null||o.stop(),this.set(e,"loading");try{if(!this.engine){let s=await this.resolveEngine();if(r!==this.generation)return;if(!s){this.set(null,"idle");return}this.engine=s}this.engine.speak(t,{onStart:()=>{r===this.generation&&this.set(e,"playing")},onEnd:()=>{r===this.generation&&this.set(null,"idle")},onError:()=>{r===this.generation&&this.set(null,"idle")}})}catch{r===this.generation&&this.set(null,"idle")}}stop(){var e;this.generation++,(e=this.engine)==null||e.stop(),this.set(null,"idle")}destroy(){var e,t;this.stop(),(t=(e=this.engine)==null?void 0:e.destroy)==null||t.call(e),this.engine=null,this.listeners.clear()}set(e,t){this.activeId=t==="idle"?null:e,this.state=t;for(let r of this.listeners)r(this.activeId,this.state)}};function ki(n){if(!n)return"";let e=yf(n);return gu(e!==null?e:n)}function yf(n){let e=n.trim(),t=e.match(/^```(?:json)?\s*([\s\S]*?)\s*```$/i);if(t&&(e=t[1].trim()),!e.startsWith("{"))return null;try{let r=JSON.parse(e);if(r&&typeof r=="object"&&typeof r.text=="string")return r.text}catch{}return null}function gu(n){if(!n)return"";let e=n;return e=e.replace(/```[\s\S]*?```/g," "),e=e.replace(/~~~[\s\S]*?~~~/g," "),e=e.replace(/`([^`]+)`/g,"$1"),e=e.replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1"),e=e.replace(/\[([^\]]+)\]\([^)]*\)/g,"$1"),e=e.replace(/\[([^\]]+)\]\[[^\]]*\]/g,"$1"),e=e.replace(/<\/?[a-zA-Z][^>]*>/g," "),e=e.replace(/^[ \t]*#{1,6}[ \t]+/gm,""),e=e.replace(/^[ \t]*>[ \t]?/gm,""),e=e.replace(/^[ \t]*[-*+][ \t]+/gm,""),e=e.replace(/^[ \t]*\d+\.[ \t]+/gm,""),e=e.replace(/^[ \t]*([-*_])([ \t]*\1){2,}[ \t]*$/gm," "),e=e.replace(/(\*\*|__)(.*?)\1/g,"$2"),e=e.replace(/(\*|_)(.*?)\1/g,"$2"),e=e.replace(/~~(.*?)~~/g,"$1"),e=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/ /g," "),e=e.replace(/[ \t]+/g," "),e=e.replace(/[ \t]*\n[ \t]*/g,`
|
|
13
13
|
`),e=e.replace(/\n{2,}/g,`
|
|
14
|
-
`),e.trim()}var
|
|
14
|
+
`),e.trim()}var vu=null;var Li=()=>vu?vu():Promise.resolve().then(()=>(bu(),yu));var xf=["apiUrl","clientToken","flowId","agent","agentOptions","headers","getHeaders","webmcp","streamParser","parserType","contextProviders","requestMiddleware","customFetch","parseSSEEvent","onSessionInit","onSessionExpired","getStoredSessionId","setStoredSessionId"];function wf(n,e){return xf.some(t=>n[t]!==e[t])}function xu(n,e){let t=n instanceof Error?n:new Error(String(n));if(typeof e=="string")return e;if(typeof e=="function")return e(t);let r="Sorry: I couldn't reach the assistant. The chat service didn't respond. Please check that your proxy or backend is running and reachable, then try again.";return t.message?`${r}
|
|
15
15
|
|
|
16
|
-
_Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]}),Wu=(n,e="WebMCP tool execution failed.")=>n instanceof Error&&n.message?n.message:typeof n=="string"&&n?n:e,Ru=n=>zs(n)||n===Kr,Za=class{constructor(e={},t){this.config=e;this.callbacks=t;this.status="idle";this.streaming=!1;this.abortController=null;this.sequenceCounter=Date.now();this.clientSession=null;this.agentExecution=null;this.artifacts=new Map;this.selectedArtifactId=null;this.webMcpInflightKeys=new Set;this.webMcpResolvedKeys=new Set;this.webMcpResolveControllers=new Set;this.webMcpEpoch=0;this.webMcpApprovalResolvers=new Map;this.webMcpApprovalSeq=0;this.webMcpAwaitBatches=new Map;this.voiceProvider=null;this.voiceActive=!1;this.voiceStatus="disconnected";this.pendingVoiceUserMessageId=null;this.pendingVoiceAssistantMessageId=null;this.ttsSpokenMessageIds=new Set;this.readAloud=new ea(()=>this.createSpeechEngine());this.handleEvent=e=>{var t,r,o,s,a,i,d,c,g,f;if(e.type==="message"){this.upsertMessage(e.message);let u=e.message.toolCall,m=!!(u!=null&&u.name)&&(zs(u.name)||u.name===Kr&&((r=(t=this.config.features)==null?void 0:t.suggestReplies)==null?void 0:r.enabled)!==!1);((o=e.message.agentMetadata)==null?void 0:o.awaitingLocalTool)===!0&&m&&this.enqueueWebMcpAwait(e.message),(s=e.message.agentMetadata)!=null&&s.executionId&&(this.agentExecution?e.message.agentMetadata.iteration!==void 0&&(this.agentExecution.currentIteration=e.message.agentMetadata.iteration):this.agentExecution={executionId:e.message.agentMetadata.executionId,agentId:"",agentName:(a=e.message.agentMetadata.agentName)!=null?a:"",status:"running",currentIteration:(i=e.message.agentMetadata.iteration)!=null?i:0,maxTurns:0})}else if(e.type==="status"){if(this.setStatus(e.status),e.status==="connecting")this.setStreaming(!0);else if(e.status==="idle"||e.status==="error"){this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null);let u=this.webMcpAwaitBatches.size>0||this.webMcpResolveControllers.size>0;((d=this.agentExecution)==null?void 0:d.status)==="running"&&(e.status==="error"?this.agentExecution.status="error":u||(this.agentExecution.status="complete")),this.scheduleWebMcpBatchFlush()}}else e.type==="error"?(this.setStatus("error"),this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null),((c=this.agentExecution)==null?void 0:c.status)==="running"&&(this.agentExecution.status="error"),(f=(g=this.callbacks).onError)==null||f.call(g,e.error)):(e.type==="artifact_start"||e.type==="artifact_delta"||e.type==="artifact_update"||e.type==="artifact_complete")&&this.applyArtifactStreamEvent(e)};var r,o;this.messages=[...(r=e.initialMessages)!=null?r:[]].map(s=>{var a;return{...s,sequence:(a=s.sequence)!=null?a:this.nextSequence()}}),this.messages=this.sortMessages(this.messages),this.client=new Js(e),this.wireDefaultWebMcpConfirm();for(let s of(o=e.initialArtifacts)!=null?o:[])this.artifacts.set(s.id,{...s,status:"complete"});e.initialSelectedArtifactId!=null&&(this.selectedArtifactId=e.initialSelectedArtifactId),this.messages.length&&this.callbacks.onMessagesChanged([...this.messages]),this.artifacts.size>0&&this.emitArtifactsState(),this.callbacks.onStatusChanged(this.status),this.prefetchRuntypeTts()}prefetchRuntypeTts(){var o,s,a,i,d;let e=this.config.textToSpeech;if((e==null?void 0:e.provider)!=="runtype"||e.createEngine)return;let t=(o=e.host)!=null?o:this.config.apiUrl,r=(d=e.agentId)!=null?d:(i=(a=(s=this.config.voiceRecognition)==null?void 0:s.provider)==null?void 0:a.runtype)==null?void 0:i.agentId;!t||!r||!this.config.clientToken||Xi().catch(()=>{})}setSSEEventCallback(e){this.client.setSSEEventCallback(e)}isClientTokenMode(){return this.client.isClientTokenMode()}isAgentMode(){return this.client.isAgentMode()}getAgentExecution(){return this.agentExecution}isAgentExecuting(){var e;return((e=this.agentExecution)==null?void 0:e.status)==="running"}isVoiceSupported(){var e;return Gi((e=this.config.voiceRecognition)==null?void 0:e.provider)}isVoiceActive(){return this.voiceActive}getVoiceStatus(){return this.voiceStatus}getVoiceInterruptionMode(){var e;return(e=this.voiceProvider)!=null&&e.getInterruptionMode?this.voiceProvider.getInterruptionMode():"none"}stopVoicePlayback(){var e;(e=this.voiceProvider)!=null&&e.stopPlayback&&this.voiceProvider.stopPlayback()}isBargeInActive(){var e,t,r;return(r=(t=(e=this.voiceProvider)==null?void 0:e.isBargeInActive)==null?void 0:t.call(e))!=null?r:!1}async deactivateBargeIn(){var e;(e=this.voiceProvider)!=null&&e.deactivateBargeIn&&await this.voiceProvider.deactivateBargeIn()}createSpeechEngine(){var r,o,s,a,i;let e=this.config.textToSpeech;if(e!=null&&e.createEngine)return e.createEngine();let t=fs.isSupported()?new fs({pickVoice:e==null?void 0:e.pickVoice}):null;if((e==null?void 0:e.provider)==="runtype"){let d=(r=e.host)!=null?r:this.config.apiUrl,c=(i=e.agentId)!=null?i:(a=(s=(o=this.config.voiceRecognition)==null?void 0:o.provider)==null?void 0:s.runtype)==null?void 0:a.agentId,g=this.config.clientToken,f=e.browserFallback!==!1;if(d&&c&&g)return Xi().then(({RuntypeSpeechEngine:u,FallbackSpeechEngine:m})=>{let v=new u({host:d,agentId:c,clientToken:g,voice:e.voice,prebufferMs:e.prebufferMs,createPlaybackEngine:e.createPlaybackEngine});return f&&t?new m(v,t,{onFallback:x=>console.warn(`[persona] Runtype read-aloud failed; using browser voice. ${x.message}`)}):v});if(f&&t)return g&&console.warn("[persona] textToSpeech.provider 'runtype' is missing an agentId; using the browser voice. Set textToSpeech.agentId (or voiceRecognition.provider.runtype.agentId)."),t}return t}setupVoice(e){var t,r;try{let o=e||this.getVoiceConfigFromConfig();if(!o)throw new Error("Voice configuration not provided");this.voiceProvider=gs(o);let a=(r=((t=this.config.voiceRecognition)!=null?t:{}).processingErrorText)!=null?r:"Voice processing failed. Please try again.";this.voiceProvider.onResult(i=>{i.provider!=="runtype"&&i.text&&i.text.trim()&&this.sendMessage(i.text,{viaVoice:!0})}),this.voiceProvider.onTranscript&&this.voiceProvider.onTranscript((i,d,c)=>{if(i==="user"){if(this.pendingVoiceUserMessageId)this.upsertMessage({id:this.pendingVoiceUserMessageId,role:"user",content:d,createdAt:new Date().toISOString(),streaming:!1,voiceProcessing:!c});else{let g=this.injectMessage({role:"user",content:d,streaming:!1,voiceProcessing:!c});this.pendingVoiceUserMessageId=g.id}if(c){this.pendingVoiceUserMessageId=null;let g=this.injectMessage({role:"assistant",content:"",streaming:!0,voiceProcessing:!0});this.pendingVoiceAssistantMessageId=g.id,this.setStreaming(!0)}}else{if(this.pendingVoiceAssistantMessageId)this.upsertMessage({id:this.pendingVoiceAssistantMessageId,role:"assistant",content:d,createdAt:new Date().toISOString(),streaming:!c,voiceProcessing:!c});else{let g=this.injectMessage({role:"assistant",content:d,streaming:!c,voiceProcessing:!c});this.pendingVoiceAssistantMessageId=g.id}c&&(this.pendingVoiceAssistantMessageId&&this.ttsSpokenMessageIds.add(this.pendingVoiceAssistantMessageId),this.setStreaming(!1),this.pendingVoiceAssistantMessageId=null)}}),this.voiceProvider.onMetrics&&this.voiceProvider.onMetrics(i=>{var d,c;(c=(d=this.config.voiceRecognition)==null?void 0:d.onMetrics)==null||c.call(d,i)}),this.voiceProvider.onError(i=>{console.error("Voice error:",i),this.pendingVoiceAssistantMessageId&&(this.upsertMessage({id:this.pendingVoiceAssistantMessageId,role:"assistant",content:a,createdAt:new Date().toISOString(),streaming:!1,voiceProcessing:!1}),this.setStreaming(!1),this.pendingVoiceUserMessageId=null,this.pendingVoiceAssistantMessageId=null)}),this.voiceProvider.onStatusChange(i=>{var d,c;this.voiceStatus=i,this.voiceActive=i==="listening",(c=(d=this.callbacks).onVoiceStatusChanged)==null||c.call(d,i)}),this.voiceProvider.connect()}catch(o){console.error("Failed to setup voice:",o)}}async toggleVoice(){if(!this.voiceProvider){console.error("Voice not configured");return}if(this.voiceActive)await this.voiceProvider.stopListening();else{this.stopSpeaking();try{await this.voiceProvider.startListening()}catch(e){console.error("Failed to start voice:",e)}}}cleanupVoice(){this.voiceProvider&&(this.voiceProvider.disconnect(),this.voiceProvider=null),this.voiceActive=!1,this.voiceStatus="disconnected"}getVoiceConfigFromConfig(){var t,r,o,s,a,i,d,c,g,f;if(!((t=this.config.voiceRecognition)!=null&&t.provider))return;let e=this.config.voiceRecognition.provider;switch(e.type){case"runtype":return{type:"runtype",runtype:{agentId:((r=e.runtype)==null?void 0:r.agentId)||"",clientToken:(s=(o=e.runtype)==null?void 0:o.clientToken)!=null?s:this.config.clientToken,host:(i=(a=e.runtype)==null?void 0:a.host)!=null?i:this.config.apiUrl,voiceId:(d=e.runtype)==null?void 0:d.voiceId,createPlaybackEngine:(c=e.runtype)==null?void 0:c.createPlaybackEngine}};case"browser":return{type:"browser",browser:{language:((g=e.browser)==null?void 0:g.language)||"en-US",continuous:(f=e.browser)==null?void 0:f.continuous}};case"custom":return{type:"custom",custom:e.custom};default:return}}async initClientSession(){var e,t;if(!this.isClientTokenMode())return null;try{let r=await this.client.initSession();return this.setClientSession(r),r}catch(r){return(t=(e=this.callbacks).onError)==null||t.call(e,r instanceof Error?r:new Error(String(r))),null}}setClientSession(e){if(this.clientSession=e,e.config.welcomeMessage&&this.messages.length===0){let t={id:`welcome-${Date.now()}`,role:"assistant",content:e.config.welcomeMessage,createdAt:new Date().toISOString(),sequence:this.nextSequence()};this.appendMessage(t)}}getClientSession(){var e;return(e=this.clientSession)!=null?e:this.client.getClientSession()}isSessionValid(){let e=this.getClientSession();return e?new Date<e.expiresAt:!1}clearClientSession(){this.clientSession=null,this.client.clearClientSession()}getClient(){return this.client}async submitMessageFeedback(e,t){return this.client.submitMessageFeedback(e,t)}async submitCSATFeedback(e,t){return this.client.submitCSATFeedback(e,t)}async submitNPSFeedback(e,t){return this.client.submitNPSFeedback(e,t)}updateConfig(e){let t={...this.config,...e};if(!xf(this.config,t)){this.config=t,this.client.updateConfig(t);return}this.abortWebMcpResolves(),this.webMcpInflightKeys.clear(),this.webMcpResolvedKeys.clear();let r=this.client.getSSEEventCallback();this.config=t,this.client=new Js(this.config),this.wireDefaultWebMcpConfirm(),r&&this.client.setSSEEventCallback(r)}getMessages(){return[...this.messages]}getStatus(){return this.status}isStreaming(){return this.streaming}injectTestEvent(e){this.handleEvent(e)}injectMessage(e){let{role:t,content:r,llmContent:o,contentParts:s,id:a,createdAt:i,sequence:d,streaming:c=!1,voiceProcessing:g,rawContent:f}=e,m={id:a!=null?a:t==="user"?Ka():t==="assistant"?Ys():`system-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:t,content:r,createdAt:i!=null?i:new Date().toISOString(),sequence:d!=null?d:this.nextSequence(),streaming:c,...o!==void 0&&{llmContent:o},...s!==void 0&&{contentParts:s},...g!==void 0&&{voiceProcessing:g},...f!==void 0&&{rawContent:f}};return this.upsertMessage(m),m}injectAssistantMessage(e){return this.injectMessage({...e,role:"assistant"})}injectUserMessage(e){return this.injectMessage({...e,role:"user"})}injectSystemMessage(e){return this.injectMessage({...e,role:"system"})}injectMessageBatch(e){let t=[];for(let r of e){let{role:o,content:s,llmContent:a,contentParts:i,id:d,createdAt:c,sequence:g,streaming:f=!1,voiceProcessing:u,rawContent:m}=r,x={id:d!=null?d:o==="user"?Ka():o==="assistant"?Ys():`system-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:o,content:s,createdAt:c!=null?c:new Date().toISOString(),sequence:g!=null?g:this.nextSequence(),streaming:f,...a!==void 0&&{llmContent:a},...i!==void 0&&{contentParts:i},...u!==void 0&&{voiceProcessing:u},...m!==void 0&&{rawContent:m}};t.push(x)}return this.messages=this.sortMessages([...this.messages,...t]),this.callbacks.onMessagesChanged([...this.messages]),t}injectComponentDirective(e){let{component:t,props:r={},text:o="",llmContent:s,id:a,createdAt:i,sequence:d}=e,c={text:o,component:t,props:r};return this.injectMessage({role:"assistant",content:o,rawContent:JSON.stringify(c),...s!==void 0&&{llmContent:s},...a!==void 0&&{id:a},...i!==void 0&&{createdAt:i},...d!==void 0&&{sequence:d}})}async sendMessage(e,t){var c,g,f,u,m;let r=e.trim();if(!r&&(!(t!=null&&t.contentParts)||t.contentParts.length===0))return;this.stopSpeaking(),(c=this.abortController)==null||c.abort(),this.abortWebMcpResolves();let o=Ka(),s=Ys(),a={id:o,role:"user",content:r||Ga,createdAt:new Date().toISOString(),sequence:this.nextSequence(),viaVoice:(t==null?void 0:t.viaVoice)||!1,...(t==null?void 0:t.contentParts)&&t.contentParts.length>0&&{contentParts:t.contentParts}};this.appendMessage(a),this.setStreaming(!0);let i=new AbortController;this.abortController=i;let d=[...this.messages];try{await this.client.dispatch({messages:d,signal:i.signal,assistantMessageId:s},this.handleEvent)}catch(v){let x=v instanceof Error&&(v.name==="AbortError"||v.message.includes("aborted")||v.message.includes("abort"));if(!x){let M=Iu(v,this.config.errorMessage);if(M){let E={id:s,role:"assistant",createdAt:new Date().toISOString(),content:M,sequence:this.nextSequence()};this.appendMessage(E)}}this.setStatus("idle"),this.setStreaming(!1),this.abortController=null,x||(v instanceof Error?(f=(g=this.callbacks).onError)==null||f.call(g,v):(m=(u=this.callbacks).onError)==null||m.call(u,new Error(String(v))))}}async continueConversation(){var o,s,a,i,d;if(this.streaming)return;(o=this.abortController)==null||o.abort();let e=Ys();this.setStreaming(!0);let t=new AbortController;this.abortController=t;let r=[...this.messages];try{await this.client.dispatch({messages:r,signal:t.signal,assistantMessageId:e},this.handleEvent)}catch(c){let g=c instanceof Error&&(c.name==="AbortError"||c.message.includes("aborted")||c.message.includes("abort"));if(!g){let f=Iu(c,this.config.errorMessage);if(f){let u={id:e,role:"assistant",createdAt:new Date().toISOString(),content:f,sequence:this.nextSequence()};this.appendMessage(u)}}this.setStatus("idle"),this.setStreaming(!1),this.abortController=null,g||(c instanceof Error?(a=(s=this.callbacks).onError)==null||a.call(s,c):(d=(i=this.callbacks).onError)==null||d.call(i,new Error(String(c))))}}async connectStream(e,t){var o,s,a;if(this.streaming&&!(t!=null&&t.allowReentry))return;t!=null&&t.allowReentry||(o=this.abortController)==null||o.abort();let r=!1;for(let i of this.messages)i.streaming&&(i.streaming=!1,r=!0);r&&this.callbacks.onMessagesChanged([...this.messages]),this.setStreaming(!0);try{await this.client.processStream(e,this.handleEvent,t==null?void 0:t.assistantMessageId)}catch(i){this.setStatus("error"),this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null),(a=(s=this.callbacks).onError)==null||a.call(s,i instanceof Error?i:new Error(String(i)))}}wireDefaultWebMcpConfirm(){let e=this.config.webmcp;(e==null?void 0:e.enabled)===!0&&!e.onConfirm&&this.client.setWebMcpConfirmHandler(t=>this.requestWebMcpApproval(t))}requestWebMcpApproval(e){var o,s,a;try{if(((s=(o=this.config.webmcp)==null?void 0:o.autoApprove)==null?void 0:s.call(o,e))===!0)return Promise.resolve(!0)}catch{}let t={id:`webmcp-${++this.webMcpApprovalSeq}`,status:"pending",agentId:"",executionId:"",toolName:e.toolName,toolType:"webmcp",description:(a=e.description)!=null?a:`Allow the assistant to run ${e.toolName}?`,parameters:e.args},r=`approval-${t.id}`;return this.upsertMessage({id:r,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",approval:t}),new Promise(i=>{this.webMcpApprovalResolvers.set(r,i)})}resolveWebMcpApproval(e,t){let r=this.webMcpApprovalResolvers.get(e);if(!r)return;this.webMcpApprovalResolvers.delete(e);let o=this.messages.find(s=>s.id===e);o!=null&&o.approval&&this.upsertMessage({...o,approval:{...o.approval,status:t,resolvedAt:Date.now()}}),r(t==="approved")}async resolveApproval(e,t,r){var g,f,u,m,v;let o=`approval-${e.id}`,s={...e,status:t,resolvedAt:Date.now()},a=this.messages.find(x=>x.id===o),i={id:o,role:"assistant",content:"",createdAt:(g=a==null?void 0:a.createdAt)!=null?g:new Date().toISOString(),...(a==null?void 0:a.sequence)!==void 0?{sequence:a.sequence}:{},streaming:!1,variant:"approval",approval:s};this.upsertMessage(i),(f=this.abortController)==null||f.abort(),this.abortController=new AbortController,this.setStreaming(!0);let d=this.config.approval,c=d&&typeof d=="object"?d.onDecision:void 0;try{let x;if(c?x=await c({approvalId:e.id,executionId:e.executionId,agentId:e.agentId,toolName:e.toolName},t,r):x=await this.client.resolveApproval({agentId:e.agentId,executionId:e.executionId,approvalId:e.id},t),x){let M=null;if(x instanceof Response){if(!x.ok){let E=await x.json().catch(()=>null);throw new Error((u=E==null?void 0:E.error)!=null?u:`Approval request failed: ${x.status}`)}M=x.body}else x instanceof ReadableStream&&(M=x);M?await this.connectStream(M,{allowReentry:!0}):(t==="denied"&&this.appendMessage({id:`denial-${e.id}`,role:"assistant",content:"Tool execution was denied by user.",createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()}),this.setStreaming(!1),this.abortController=null)}else this.setStreaming(!1),this.abortController=null}catch(x){let M=x instanceof Error&&(x.name==="AbortError"||x.message.includes("aborted")||x.message.includes("abort"));this.setStreaming(!1),this.abortController=null,M||(v=(m=this.callbacks).onError)==null||v.call(m,x instanceof Error?x:new Error(String(x)))}}persistAskUserQuestionProgress(e,t){let r=this.messages.find(o=>o.id===e.id);r&&this.upsertMessage({...r,agentMetadata:{...r.agentMetadata,askUserQuestionAnswers:t.answers,askUserQuestionIndex:t.currentIndex}})}markAskUserQuestionResolved(e,t){let r=this.messages.find(o=>o.id===e.id);r&&this.upsertMessage({...r,agentMetadata:{...r.agentMetadata,awaitingLocalTool:!1,askUserQuestionAnswered:!0,...t?{askUserQuestionAnswers:t}:{}}})}async resolveAskUserQuestion(e,t){var g,f,u,m,v,x,M,E,k,N,P,W;let r=this.messages.find(C=>C.id===e.id);if(((g=r==null?void 0:r.agentMetadata)==null?void 0:g.askUserQuestionAnswered)===!0)return;let o=(f=e.agentMetadata)==null?void 0:f.executionId,s=(u=e.toolCall)==null?void 0:u.name;if(!o||!s){(v=(m=this.callbacks).onError)==null||v.call(m,new Error("resolveAskUserQuestion: message is missing executionId or toolCall.name"));return}let a=typeof t=="string"?void 0:t;if(a===void 0&&typeof t=="string"){let C=(x=e.toolCall)==null?void 0:x.args,I=Array.isArray(C==null?void 0:C.questions)?C.questions:[];if(I.length===1){let B=typeof((M=I[0])==null?void 0:M.question)=="string"?I[0].question:"";B&&(a={[B]:t})}}this.markAskUserQuestionResolved(e,a),(E=this.abortController)==null||E.abort(),this.abortController=new AbortController,this.setStreaming(!0);let i=e.toolCall.id,d=(k=e.toolCall)==null?void 0:k.args,c=Array.isArray(d==null?void 0:d.questions)?d.questions:[];if(c.length===0){let C=typeof t=="string"?t:Object.entries(t).map(([I,B])=>`${I}: ${Array.isArray(B)?B.join(", "):B}`).join(" | ");this.appendMessage({id:`ask-user-answer-${i}`,role:"user",content:C,createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()})}else{let C=a!=null?a:{};c.forEach((I,B)=>{let D=typeof(I==null?void 0:I.question)=="string"?I.question:"";if(!D)return;let T=C[D],U=Array.isArray(T)?T.join(", "):typeof T=="string"?T:"";this.appendMessage({id:`ask-user-q-${i}-${B}`,role:"assistant",content:D,createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()}),this.appendMessage({id:`ask-user-a-${i}-${B}`,role:"user",content:U||"*Skipped*",createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()})})}try{let C=await this.client.resumeFlow(o,{[s]:t});if(!C.ok){let I=await C.json().catch(()=>null);throw new Error((N=I==null?void 0:I.error)!=null?N:`Resume failed: ${C.status}`)}C.body?await this.connectStream(C.body,{allowReentry:!0}):(this.setStreaming(!1),this.abortController=null)}catch(C){let I=C instanceof Error&&(C.name==="AbortError"||C.message.includes("aborted")||C.message.includes("abort"));this.setStreaming(!1),this.abortController=null,I||(W=(P=this.callbacks).onError)==null||W.call(P,C instanceof Error?C:new Error(String(C)))}}enqueueWebMcpAwait(e){var s,a;let t=(s=e.agentMetadata)==null?void 0:s.executionId,r=(a=e.toolCall)==null?void 0:a.id;if(!t||!r){let i=this.webMcpEpoch;queueMicrotask(()=>{i===this.webMcpEpoch&&this.resolveWebMcpToolCall(e)});return}let o=this.webMcpAwaitBatches.get(t);o||(o={snapshots:[],seen:new Set},this.webMcpAwaitBatches.set(t,o)),!o.seen.has(r)&&(o.seen.add(r),o.snapshots.push(e))}scheduleWebMcpBatchFlush(){if(this.webMcpAwaitBatches.size===0)return;let e=this.webMcpEpoch;queueMicrotask(()=>{if(e===this.webMcpEpoch)for(let t of[...this.webMcpAwaitBatches.keys()])this.flushWebMcpAwaitBatch(t)})}flushWebMcpAwaitBatch(e){let t=this.webMcpAwaitBatches.get(e);if(!t)return;this.webMcpAwaitBatches.delete(e);let{snapshots:r}=t;r.length===1?this.resolveWebMcpToolCall(r[0]):r.length>1&&this.resolveWebMcpToolCallBatch(e,r)}resolveWebMcpToolStartedAt(e){var o,s;let t=this.messages.find(a=>a.id===e.id),r=[(o=t==null?void 0:t.toolCall)==null?void 0:o.startedAt,(s=e.toolCall)==null?void 0:s.startedAt];for(let a of r)if(typeof a=="number"&&Number.isFinite(a))return a;return Date.now()}isSuggestRepliesAlreadyResolved(e){var r,o;if(((r=e.toolCall)==null?void 0:r.name)!==Kr)return!1;let t=this.messages.find(s=>s.id===e.id);return((o=(t!=null?t:e).agentMetadata)==null?void 0:o.suggestRepliesResolved)===!0}markWebMcpToolRunning(e){let t=this.resolveWebMcpToolStartedAt(e);return this.upsertMessage({...e,streaming:!0,agentMetadata:{...e.agentMetadata,awaitingLocalTool:!1},toolCall:e.toolCall?{...e.toolCall,status:"running",startedAt:t,completedAt:void 0,duration:void 0,durationMs:void 0}:e.toolCall}),t}markWebMcpToolComplete(e,t,r,o=Date.now(),s){this.messages.some(a=>a.id===e.id)&&this.upsertMessage({...e,streaming:!1,agentMetadata:{...e.agentMetadata,awaitingLocalTool:!1,...s},toolCall:e.toolCall?{...e.toolCall,status:"complete",result:t,startedAt:r,completedAt:o,duration:void 0,durationMs:Math.max(0,o-r)}:e.toolCall})}async resolveWebMcpToolCallBatch(e,t){var d,c,g,f;let r=[],o=[],s=new AbortController;this.webMcpResolveControllers.add(s),this.setStreaming(!0);let a=await Promise.all(t.map(async u=>{var W,C,I,B,D,T,U;let m=(W=u.toolCall)==null?void 0:W.name,v=(C=u.toolCall)==null?void 0:C.id;if(!m||!v)return null;let x=`${e}:${v}`;if(this.webMcpInflightKeys.has(x)||this.webMcpResolvedKeys.has(x)||this.isSuggestRepliesAlreadyResolved(u))return null;this.webMcpInflightKeys.add(x),r.push(x);let M=this.markWebMcpToolRunning(u),E=(B=(I=u.agentMetadata)==null?void 0:I.webMcpToolCallId)!=null?B:m;if(m===Kr)return{dedupeKey:x,resumeKey:E,output:$i(),toolMessage:u,startedAt:M,completedAt:Date.now()};let k=new AbortController;this.webMcpResolveControllers.add(k),o.push(k);let N=this.client.executeWebMcpToolCall(m,(D=u.toolCall)==null?void 0:D.args,k.signal),P;if(!N)P={isError:!0,content:[{type:"text",text:"WebMCP not enabled on this widget."}]};else try{P=await N}catch(z){let re=z instanceof Error&&(z.name==="AbortError"||z.message.includes("aborted")||z.message.includes("abort"));return re||(U=(T=this.callbacks).onError)==null||U.call(T,z instanceof Error?z:new Error(String(z))),this.markWebMcpToolComplete(u,ta(re?"Aborted by cancel()":Wu(z)),M),this.webMcpInflightKeys.delete(x),null}return k.signal.aborted?(this.markWebMcpToolComplete(u,ta("Aborted by cancel()"),M),this.webMcpInflightKeys.delete(x),null):{dedupeKey:x,resumeKey:E,output:P,toolMessage:u,startedAt:M,completedAt:Date.now()}})),i=[];try{if(i=a.filter(v=>v!==null),i.length===0)return;let u={};for(let v of i)u[v.resumeKey]=v.output;let m=await this.client.resumeFlow(e,u,{signal:s.signal});if(!m.ok){let v=await m.json().catch(()=>null);throw new Error((d=v==null?void 0:v.error)!=null?d:`Resume failed: ${m.status}`)}for(let v of i)this.webMcpResolvedKeys.add(v.dedupeKey),this.markWebMcpToolComplete(v.toolMessage,v.output,v.startedAt,v.completedAt,((c=v.toolMessage.toolCall)==null?void 0:c.name)===Kr?{suggestRepliesResolved:!0}:void 0);m.body&&await this.connectStream(m.body,{allowReentry:!0})}catch(u){if(!(u instanceof Error&&(u.name==="AbortError"||u.message.includes("aborted")||u.message.includes("abort"))))(f=(g=this.callbacks).onError)==null||f.call(g,u instanceof Error?u:new Error(String(u)));else for(let v of i)this.markWebMcpToolComplete(v.toolMessage,ta("Aborted by cancel()"),v.startedAt)}finally{for(let u of r)this.webMcpInflightKeys.delete(u);for(let u of o)this.webMcpResolveControllers.delete(u);this.webMcpResolveControllers.delete(s),this.webMcpResolveControllers.size===0&&!this.abortController&&this.setStreaming(!1)}}async resolveWebMcpToolCall(e){var v,x,M,E,k,N,P,W,C,I,B,D;let t=(v=e.agentMetadata)==null?void 0:v.executionId,r=(x=e.toolCall)==null?void 0:x.name,o=(M=e.toolCall)==null?void 0:M.id;if(!t){(k=(E=this.callbacks).onError)==null||k.call(E,new Error("WebMCP step_await missing executionId: dispatch left paused."));return}if(!r)return;if(!o){let T=`${t}:__no_tool_id__:${r}`;if(this.webMcpInflightKeys.has(T)||this.webMcpResolvedKeys.has(T))return;this.webMcpInflightKeys.add(T);try{await this.resumeWithToolOutput(t,r,{isError:!0,content:[{type:"text",text:"WebMCP step_await missing toolCall.id: cannot execute the page tool."}]}),this.webMcpResolvedKeys.add(T)}catch(U){(P=(N=this.callbacks).onError)==null||P.call(N,U instanceof Error?U:new Error(String(U)))}finally{this.webMcpInflightKeys.delete(T)}return}let s=`${t}:${o}`;if(this.webMcpInflightKeys.has(s)||this.webMcpResolvedKeys.has(s)||this.isSuggestRepliesAlreadyResolved(e))return;this.webMcpInflightKeys.add(s);let a=this.markWebMcpToolRunning(e),i=new AbortController;this.webMcpResolveControllers.add(i);let{signal:d}=i;this.setStreaming(!0);let c=r===Kr,g=(W=e.toolCall)==null?void 0:W.args,f=c?null:this.client.executeWebMcpToolCall(r,g,d),u="execute",m=a;try{let T;if(c?T=$i():f?T=await f:T={isError:!0,content:[{type:"text",text:"WebMCP not enabled on this widget."}]},m=Date.now(),d.aborted){this.markWebMcpToolComplete(e,ta("Aborted by cancel()"),a);return}let U=(I=(C=e.agentMetadata)==null?void 0:C.webMcpToolCallId)!=null?I:r;u="resume",await this.resumeWithToolOutput(t,U,T,{onHttpOk:()=>{this.webMcpResolvedKeys.add(s),this.markWebMcpToolComplete(e,T,a,m,c?{suggestRepliesResolved:!0}:void 0)},signal:d})}catch(T){let U=T instanceof Error&&(T.name==="AbortError"||T.message.includes("aborted")||T.message.includes("abort"));(u==="execute"||U||d.aborted)&&this.markWebMcpToolComplete(e,ta(U||d.aborted?"Aborted by cancel()":Wu(T)),a),U||(D=(B=this.callbacks).onError)==null||D.call(B,T instanceof Error?T:new Error(String(T)))}finally{this.webMcpInflightKeys.delete(s),this.webMcpResolveControllers.delete(i),this.webMcpResolveControllers.size===0&&!this.abortController&&this.setStreaming(!1)}}async resumeWithToolOutput(e,t,r,o){var a,i;let s=await this.client.resumeFlow(e,{[t]:r},{signal:o==null?void 0:o.signal});if(!s.ok){let d=await s.json().catch(()=>null);throw new Error((a=d==null?void 0:d.error)!=null?a:`Resume failed: ${s.status}`)}(i=o==null?void 0:o.onHttpOk)==null||i.call(o),s.body?await this.connectStream(s.body,{allowReentry:!0}):this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null)}abortWebMcpResolves(){for(let e of this.webMcpResolveControllers)e.abort();this.webMcpResolveControllers.clear();for(let e of[...this.webMcpApprovalResolvers.keys()])this.resolveWebMcpApproval(e,"denied");this.webMcpAwaitBatches.clear(),this.webMcpEpoch++}cancel(){var e;(e=this.abortController)==null||e.abort(),this.abortController=null,this.abortWebMcpResolves(),this.webMcpInflightKeys.clear(),this.stopSpeaking(),this.stopVoicePlayback(),this.setStreaming(!1),this.setStatus("idle")}clearMessages(){var e;this.stopSpeaking(),(e=this.abortController)==null||e.abort(),this.abortController=null,this.abortWebMcpResolves(),this.messages=[],this.agentExecution=null,this.clearArtifactState(),this.webMcpInflightKeys.clear(),this.webMcpResolvedKeys.clear(),this.client.resetClientToolsFingerprint(),this.setStreaming(!1),this.setStatus("idle"),this.callbacks.onMessagesChanged([...this.messages])}getArtifacts(){return[...this.artifacts.values()]}getArtifactById(e){return this.artifacts.get(e)}getSelectedArtifactId(){return this.selectedArtifactId}selectArtifact(e){this.selectedArtifactId=e,this.emitArtifactsState()}clearArtifacts(){this.clearArtifactState()}upsertArtifact(e){var o;let t=e.id||`art_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,9)}`;if(e.artifactType==="markdown"){let s={id:t,artifactType:"markdown",title:e.title,status:"complete",markdown:e.content};return this.artifacts.set(t,s),this.selectedArtifactId=t,this.emitArtifactsState(),s}let r={id:t,artifactType:"component",title:e.title,status:"complete",component:e.component,props:(o=e.props)!=null?o:{}};return this.artifacts.set(t,r),this.selectedArtifactId=t,this.emitArtifactsState(),r}clearArtifactState(){this.artifacts.size===0&&this.selectedArtifactId===null||(this.artifacts.clear(),this.selectedArtifactId=null,this.emitArtifactsState())}emitArtifactsState(){var e,t;(t=(e=this.callbacks).onArtifactsState)==null||t.call(e,{artifacts:[...this.artifacts.values()],selectedId:this.selectedArtifactId})}applyArtifactStreamEvent(e){var t,r;switch(e.type){case"artifact_start":{e.artifactType==="markdown"?this.artifacts.set(e.id,{id:e.id,artifactType:"markdown",title:e.title,status:"streaming",markdown:""}):this.artifacts.set(e.id,{id:e.id,artifactType:"component",title:e.title,status:"streaming",component:(t=e.component)!=null?t:"",props:{}}),this.selectedArtifactId=e.id;break}case"artifact_delta":{let o=this.artifacts.get(e.id);(o==null?void 0:o.artifactType)==="markdown"&&(o.markdown=((r=o.markdown)!=null?r:"")+e.artDelta);break}case"artifact_update":{let o=this.artifacts.get(e.id);(o==null?void 0:o.artifactType)==="component"&&(o.props={...o.props,...e.props},e.component&&(o.component=e.component));break}case"artifact_complete":{let o=this.artifacts.get(e.id);o&&(o.status="complete");break}default:return}this.emitArtifactsState()}hydrateMessages(e){var t;(t=this.abortController)==null||t.abort(),this.abortController=null,this.abortWebMcpResolves(),this.webMcpInflightKeys.clear(),this.webMcpResolvedKeys.clear(),this.messages=this.sortMessages(e.map(r=>{var o;return{...r,streaming:!1,sequence:(o=r.sequence)!=null?o:this.nextSequence()}})),this.setStreaming(!1),this.setStatus("idle"),this.callbacks.onMessagesChanged([...this.messages])}hydrateArtifacts(e,t=null){this.artifacts.clear();for(let r of e)this.artifacts.set(r.id,{...r,status:"complete"});this.selectedArtifactId=t,this.emitArtifactsState()}setStatus(e){this.status!==e&&(this.status=e,this.callbacks.onStatusChanged(e))}setStreaming(e){if(this.streaming===e)return;let t=this.streaming;this.streaming=e,this.callbacks.onStreamingChanged(e),t&&!e&&this.speakLatestAssistantMessage()}speakLatestAssistantMessage(){let e=this.config.textToSpeech;if(!(e!=null&&e.enabled)||!(!e.provider||e.provider==="browser"||e.provider==="runtype"&&e.browserFallback))return;let r=[...this.messages].reverse().find(s=>s.role==="assistant"&&s.content&&!s.voiceProcessing);if(!r)return;if(this.ttsSpokenMessageIds.has(r.id)){this.ttsSpokenMessageIds.delete(r.id);return}let o=Qi(r.content);o.trim()&&this.readAloud.play(r.id,{text:o,voice:e.voice,rate:e.rate,pitch:e.pitch})}static pickBestVoice(e){return Xa(e)}toggleReadAloud(e){let t=this.messages.find(s=>s.id===e);if(!t||t.role!=="assistant")return;let r=Qi(t.content||"");if(!r.trim())return;let o=this.config.textToSpeech;this.readAloud.toggle(e,{text:r,voice:o==null?void 0:o.voice,rate:o==null?void 0:o.rate,pitch:o==null?void 0:o.pitch})}getReadAloudState(e){return this.readAloud.stateFor(e)}onReadAloudChange(e){return this.readAloud.onChange(e)}stopSpeaking(){this.readAloud.stop(),typeof window!="undefined"&&"speechSynthesis"in window&&window.speechSynthesis.cancel()}appendMessage(e){let t=this.ensureSequence(e);this.messages=this.sortMessages([...this.messages,t]),this.callbacks.onMessagesChanged([...this.messages])}upsertMessage(e){let t=this.ensureSequence(e),r=this.messages.findIndex(o=>o.id===t.id);if(r===-1){this.appendMessage(t);return}this.messages=this.messages.map((o,s)=>{var g,f,u,m,v,x,M,E,k,N,P,W,C,I,B;if(s!==r)return o;let a={...o,...t};if(((g=o.agentMetadata)==null?void 0:g.askUserQuestionAnswered)===!0&&t.agentMetadata&&(a.agentMetadata={...t.agentMetadata,askUserQuestionAnswered:!0,...o.agentMetadata.askUserQuestionAnswers?{askUserQuestionAnswers:o.agentMetadata.askUserQuestionAnswers}:{},awaitingLocalTool:!1}),((f=o.agentMetadata)==null?void 0:f.suggestRepliesResolved)===!0&&t.agentMetadata&&(a.agentMetadata={...(u=a.agentMetadata)!=null?u:t.agentMetadata,suggestRepliesResolved:!0,awaitingLocalTool:!1}),o.approval&&t.approval&&o.approval.id===t.approval.id){let D=o.approval,T=t.approval;a.approval={...D,...T,executionId:T.executionId||D.executionId,toolName:T.toolName||D.toolName,description:T.description||D.description,toolType:(m=T.toolType)!=null?m:D.toolType,reason:(v=T.reason)!=null?v:D.reason,parameters:(x=T.parameters)!=null?x:D.parameters}}let i=(M=t.toolCall)==null?void 0:M.name,d=(E=t.agentMetadata)==null?void 0:E.executionId,c=(k=t.toolCall)==null?void 0:k.id;if(i&&Ru(i)&&d&&c&&((N=t.agentMetadata)==null?void 0:N.awaitingLocalTool)===!0){let D=`${d}:${c}`,T=this.webMcpInflightKeys.has(D),U=this.webMcpResolvedKeys.has(D),z=(P=o.toolCall)==null?void 0:P.name,re=((W=o.agentMetadata)==null?void 0:W.executionId)===d&&((C=o.toolCall)==null?void 0:C.id)===c&&z!==void 0&&Ru(z)&&((I=o.toolCall)==null?void 0:I.status)==="complete";(T||U||re)&&(a.agentMetadata={...(B=a.agentMetadata)!=null?B:{},awaitingLocalTool:!1},a.toolCall=o.toolCall,a.streaming=o.streaming)}return a}),this.messages=this.sortMessages(this.messages),this.callbacks.onMessagesChanged([...this.messages])}ensureSequence(e){return e.sequence!==void 0?{...e}:{...e,sequence:this.nextSequence()}}nextSequence(){return this.sequenceCounter++}sortMessages(e){return[...e].sort((t,r)=>{var d,c;let o=new Date(t.createdAt).getTime(),s=new Date(r.createdAt).getTime();if(!Number.isNaN(o)&&!Number.isNaN(s)&&o!==s)return o-s;let a=(d=t.sequence)!=null?d:0,i=(c=r.sequence)!=null?c:0;return a!==i?a-i:t.id.localeCompare(r.id)})}};import{Activity as wf,ArrowDown as Cf,ArrowUp as Af,ArrowUpRight as Sf,Bot as Tf,ChevronDown as Mf,ChevronUp as Ef,ChevronRight as kf,ChevronLeft as Lf,Check as Pf,Clipboard as If,ClipboardCopy as Wf,Copy as Rf,File as Hf,FileCode as Bf,FileSpreadsheet as Df,FileText as Nf,ImagePlus as Ff,Loader as Of,LoaderCircle as _f,Mic as $f,Paperclip as qf,RefreshCw as Uf,Search as zf,Send as jf,ShieldAlert as Vf,ShieldCheck as Kf,ShieldX as Gf,Square as Qf,ThumbsDown as Xf,ThumbsUp as Jf,Upload as Yf,Volume2 as Zf,X as eh,User as th,Mail as nh,Phone as rh,Calendar as oh,Clock as sh,Building as ah,MapPin as ih,Lock as lh,Key as ch,CreditCard as dh,AtSign as ph,Hash as uh,Globe as mh,Link as gh,CircleCheck as fh,CircleX as hh,TriangleAlert as yh,Info as bh,Ban as vh,Shield as xh,ArrowLeft as wh,ArrowRight as Ch,ExternalLink as Ah,Ellipsis as Sh,EllipsisVertical as Th,Menu as Mh,House as Eh,Plus as kh,Minus as Lh,Pencil as Ph,Trash as Ih,Trash2 as Wh,Save as Rh,Download as Hh,Share as Bh,Funnel as Dh,Settings as Nh,RotateCw as Fh,Maximize as Oh,Minimize as _h,ShoppingCart as $h,ShoppingBag as qh,Package as Uh,Truck as zh,Tag as jh,Gift as Vh,Receipt as Kh,Wallet as Gh,Store as Qh,DollarSign as Xh,Percent as Jh,Play as Yh,Pause as Zh,VolumeX as ey,Camera as ty,Image as ny,Film as ry,Headphones as oy,MessageCircle as sy,MessageSquare as ay,Bell as iy,Heart as ly,Star as cy,Eye as dy,EyeOff as py,Bookmark as uy,CalendarDays as my,History as gy,Timer as fy,Folder as hy,FolderOpen as yy,Files as by,Sparkles as vy,Zap as xy,Sun as wy,Moon as Cy,Flag as Ay,Monitor as Sy,Smartphone as Ty}from"lucide";var My={activity:wf,"arrow-down":Cf,"arrow-up":Af,"arrow-up-right":Sf,bot:Tf,"chevron-down":Mf,"chevron-up":Ef,"chevron-right":kf,"chevron-left":Lf,check:Pf,clipboard:If,"clipboard-copy":Wf,copy:Rf,file:Hf,"file-code":Bf,"file-spreadsheet":Df,"file-text":Nf,"image-plus":Ff,loader:Of,"loader-circle":_f,mic:$f,paperclip:qf,"refresh-cw":Uf,search:zf,send:jf,"shield-alert":Vf,"shield-check":Kf,"shield-x":Gf,square:Qf,"thumbs-down":Xf,"thumbs-up":Jf,upload:Yf,"volume-2":Zf,x:eh,user:th,mail:nh,phone:rh,calendar:oh,clock:sh,building:ah,"map-pin":ih,lock:lh,key:ch,"credit-card":dh,"at-sign":ph,hash:uh,globe:mh,link:gh,"circle-check":fh,"circle-x":hh,"triangle-alert":yh,info:bh,ban:vh,shield:xh,"arrow-left":wh,"arrow-right":Ch,"external-link":Ah,ellipsis:Sh,"ellipsis-vertical":Th,menu:Mh,house:Eh,plus:kh,minus:Lh,pencil:Ph,trash:Ih,"trash-2":Wh,save:Rh,download:Hh,share:Bh,funnel:Dh,settings:Nh,"rotate-cw":Fh,maximize:Oh,minimize:_h,"shopping-cart":$h,"shopping-bag":qh,package:Uh,truck:zh,tag:jh,gift:Vh,receipt:Kh,wallet:Gh,store:Qh,"dollar-sign":Xh,percent:Jh,play:Yh,pause:Zh,"volume-x":ey,camera:ty,image:ny,film:ry,headphones:oy,"message-circle":sy,"message-square":ay,bell:iy,heart:ly,star:cy,eye:dy,"eye-off":py,bookmark:uy,"calendar-days":my,history:gy,timer:fy,folder:hy,"folder-open":yy,files:by,sparkles:vy,zap:xy,sun:wy,moon:Cy,flag:Ay,monitor:Sy,smartphone:Ty},Ae=(n,e=24,t="currentColor",r=2)=>{let o=My[n];return o?Ey(o,e,t,r):(console.warn(`Lucide icon "${n}" is not in the Persona registry. Add it to packages/widget/src/utils/icons.ts (see docs/icon-registry-shortlist.md).`),null)};function Ey(n,e,t,r){if(!Array.isArray(n))return null;let o=document.createElementNS("http://www.w3.org/2000/svg","svg");return o.setAttribute("width",String(e)),o.setAttribute("height",String(e)),o.setAttribute("viewBox","0 0 24 24"),o.setAttribute("fill","none"),o.setAttribute("stroke",t),o.setAttribute("stroke-width",String(r)),o.setAttribute("stroke-linecap","round"),o.setAttribute("stroke-linejoin","round"),o.setAttribute("aria-hidden","true"),n.forEach(s=>{if(!Array.isArray(s)||s.length<2)return;let a=s[0],i=s[1];if(!i)return;let d=document.createElementNS("http://www.w3.org/2000/svg",a);Object.entries(i).forEach(([c,g])=>{c!=="stroke"&&d.setAttribute(c,String(g))}),o.appendChild(d)}),o}var ei={allowedTypes:Gr,maxFileSize:10*1024*1024,maxFiles:4};function ky(){return`attach_${Date.now()}_${Math.random().toString(36).substring(2,9)}`}function Ly(n){return n==="application/pdf"||n.startsWith("text/")||n.includes("word")?"file-text":n.includes("excel")||n.includes("spreadsheet")?"file-spreadsheet":n==="application/json"?"file-code":"file"}var na=class n{constructor(e={}){this.attachments=[];this.previewsContainer=null;var t,r,o;this.config={allowedTypes:(t=e.allowedTypes)!=null?t:ei.allowedTypes,maxFileSize:(r=e.maxFileSize)!=null?r:ei.maxFileSize,maxFiles:(o=e.maxFiles)!=null?o:ei.maxFiles,onFileRejected:e.onFileRejected,onAttachmentsChange:e.onAttachmentsChange}}setPreviewsContainer(e){this.previewsContainer=e}updateConfig(e){e.allowedTypes!==void 0&&(this.config.allowedTypes=e.allowedTypes.length>0?e.allowedTypes:ei.allowedTypes),e.maxFileSize!==void 0&&(this.config.maxFileSize=e.maxFileSize),e.maxFiles!==void 0&&(this.config.maxFiles=e.maxFiles),e.onFileRejected!==void 0&&(this.config.onFileRejected=e.onFileRejected),e.onAttachmentsChange!==void 0&&(this.config.onAttachmentsChange=e.onAttachmentsChange)}getAttachments(){return[...this.attachments]}getContentParts(){return this.attachments.map(e=>e.contentPart)}hasAttachments(){return this.attachments.length>0}count(){return this.attachments.length}async handleFileSelect(e){!e||e.length===0||await this.handleFiles(Array.from(e))}async handleFiles(e){var t,r,o,s,a,i,d;if(e.length){for(let c of e){if(this.attachments.length>=this.config.maxFiles){(r=(t=this.config).onFileRejected)==null||r.call(t,c,"count");continue}let g=wu(c,this.config.allowedTypes,this.config.maxFileSize);if(!g.valid){let f=(o=g.error)!=null&&o.includes("type")?"type":"size";(a=(s=this.config).onFileRejected)==null||a.call(s,c,f);continue}try{let f=await xu(c),u=Qa(c)?URL.createObjectURL(c):null,m={id:ky(),file:c,previewUrl:u,contentPart:f};this.attachments.push(m),this.renderPreview(m)}catch(f){console.error("[AttachmentManager] Failed to process file:",f)}}this.updatePreviewsVisibility(),(d=(i=this.config).onAttachmentsChange)==null||d.call(i,this.getAttachments())}}removeAttachment(e){var s,a,i;let t=this.attachments.findIndex(d=>d.id===e);if(t===-1)return;let r=this.attachments[t];r.previewUrl&&URL.revokeObjectURL(r.previewUrl),this.attachments.splice(t,1);let o=(s=this.previewsContainer)==null?void 0:s.querySelector(`[data-attachment-id="${e}"]`);o&&o.remove(),this.updatePreviewsVisibility(),(i=(a=this.config).onAttachmentsChange)==null||i.call(a,this.getAttachments())}clearAttachments(){var e,t;for(let r of this.attachments)r.previewUrl&&URL.revokeObjectURL(r.previewUrl);this.attachments=[],this.previewsContainer&&(this.previewsContainer.innerHTML=""),this.updatePreviewsVisibility(),(t=(e=this.config).onAttachmentsChange)==null||t.call(e,this.getAttachments())}renderPreview(e){if(!this.previewsContainer)return;let t=Qa(e.file),r=b("div","persona-attachment-preview persona-relative persona-inline-block");if(r.setAttribute("data-attachment-id",e.id),r.style.width="48px",r.style.height="48px",t&&e.previewUrl){let a=b("img");a.src=e.previewUrl,a.alt=e.file.name,a.className="persona-w-full persona-h-full persona-object-cover persona-rounded-lg persona-border persona-border-gray-200",a.style.width="48px",a.style.height="48px",a.style.objectFit="cover",a.style.borderRadius="8px",r.appendChild(a)}else{let a=b("div");a.style.width="48px",a.style.height="48px",a.style.borderRadius="8px",a.style.backgroundColor="var(--persona-container, #f3f4f6)",a.style.border="1px solid var(--persona-border, #e5e7eb)",a.style.display="flex",a.style.flexDirection="column",a.style.alignItems="center",a.style.justifyContent="center",a.style.gap="2px",a.style.overflow="hidden";let i=Ly(e.file.type),d=Ae(i,20,"var(--persona-muted, #6b7280)",1.5);d&&a.appendChild(d);let c=b("span");c.textContent=Cu(e.file.type,e.file.name),c.style.fontSize="8px",c.style.fontWeight="600",c.style.color="var(--persona-muted, #6b7280)",c.style.textTransform="uppercase",c.style.lineHeight="1",a.appendChild(c),r.appendChild(a)}let o=b("button","persona-attachment-remove persona-absolute persona-flex persona-items-center persona-justify-center");o.type="button",o.setAttribute("aria-label","Remove attachment"),o.style.position="absolute",o.style.top="-4px",o.style.right="-4px",o.style.width="18px",o.style.height="18px",o.style.borderRadius="50%",o.style.backgroundColor="var(--persona-palette-colors-black-alpha-60, rgba(0, 0, 0, 0.6))",o.style.border="none",o.style.cursor="pointer",o.style.display="flex",o.style.alignItems="center",o.style.justifyContent="center",o.style.padding="0";let s=Ae("x",10,"var(--persona-text-inverse, #ffffff)",2);s?o.appendChild(s):(o.textContent="\xD7",o.style.color="var(--persona-text-inverse, #ffffff)",o.style.fontSize="14px",o.style.lineHeight="1"),o.addEventListener("click",a=>{a.preventDefault(),a.stopPropagation(),this.removeAttachment(e.id)}),r.appendChild(o),this.previewsContainer.appendChild(r)}updatePreviewsVisibility(){this.previewsContainer&&(this.previewsContainer.style.display=this.attachments.length>0?"flex":"none")}static fromConfig(e,t){return new n({allowedTypes:e==null?void 0:e.allowedTypes,maxFileSize:e==null?void 0:e.maxFileSize,maxFiles:e==null?void 0:e.maxFiles,onFileRejected:e==null?void 0:e.onFileRejected,onAttachmentsChange:t})}};var Hu=n=>typeof n=="object"&&n!==null&&!Array.isArray(n);function ra(n,e){if(!n)return e;if(!e)return n;let t={...n};for(let[r,o]of Object.entries(e)){let s=t[r];Hu(s)&&Hu(o)?t[r]=ra(s,o):t[r]=o}return t}var Qr="min(440px, calc(100vw - 24px))",Du="440px",Py={enabled:!0,mountMode:"floating",dock:{side:"right",width:"420px"},title:"Chat Assistant",subtitle:"Here to help you get answers fast",agentIconText:"\u{1F4AC}",agentIconName:"bot",headerIconName:"bot",position:"bottom-right",width:Qr,heightOffset:0,autoExpand:!1,callToActionIconHidden:!1,agentIconSize:"40px",headerIconSize:"40px",closeButtonSize:"32px",closeButtonPaddingX:"0px",closeButtonPaddingY:"0px",callToActionIconName:"arrow-up-right",callToActionIconText:"",callToActionIconSize:"32px",callToActionIconPadding:"5px",callToActionIconColor:void 0,callToActionIconBackgroundColor:void 0,closeButtonBackgroundColor:"transparent",clearChat:{backgroundColor:"transparent",borderColor:"transparent",enabled:!0,placement:"inline",iconName:"refresh-cw",size:"32px",showTooltip:!0,tooltipText:"Clear chat",paddingX:"0px",paddingY:"0px"},headerIconHidden:!1,border:void 0,shadow:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)"},Ot={apiUrl:"https://api.runtype.com/api/chat/dispatch",clientToken:void 0,theme:void 0,darkTheme:void 0,colorScheme:"light",launcher:Py,copy:{welcomeTitle:"Hello \u{1F44B}",welcomeSubtitle:"Ask anything about your account or products.",inputPlaceholder:"How can I help...",sendButtonLabel:"Send"},sendButton:{borderWidth:"0px",paddingX:"12px",paddingY:"10px",borderColor:void 0,useIcon:!0,iconText:"\u2191",size:"40px",showTooltip:!0,tooltipText:"Send message",iconName:"send"},statusIndicator:{visible:!0,idleText:"Online",connectingText:"Connecting\u2026",connectedText:"Streaming\u2026",errorText:"Offline"},voiceRecognition:{enabled:!0,pauseDuration:2e3,iconName:"mic",iconSize:"39px",borderWidth:"0px",paddingX:"9px",paddingY:"14px",iconColor:void 0,backgroundColor:"transparent",borderColor:"transparent",recordingIconColor:void 0,recordingBackgroundColor:void 0,recordingBorderColor:"transparent",showTooltip:!0,tooltipText:"Start voice recognition"},features:{showReasoning:!0,showToolCalls:!0,scrollToBottom:{enabled:!0,iconName:"arrow-down",label:""},scrollBehavior:{mode:"follow",anchorTopOffset:16},toolCallDisplay:{collapsedMode:"tool-call",activePreview:!1,grouped:!1,previewMaxLines:3,expandable:!0,loadingAnimation:"none"},reasoningDisplay:{activePreview:!1,previewMaxLines:3,expandable:!0,loadingAnimation:"none"},streamAnimation:{type:"none",placeholder:"none",speed:120,duration:1800},askUserQuestion:{enabled:!0,slideInMs:180,freeTextLabel:"Other\u2026",freeTextPlaceholder:"Type your answer\u2026",submitLabel:"Send"}},suggestionChips:["What can you help me with?","Tell me about your features","How does this work?"],suggestionChipsConfig:{fontFamily:"sans-serif",fontWeight:"500",paddingX:"12px",paddingY:"6px"},layout:{header:{layout:"default",showIcon:!0,showTitle:!0,showSubtitle:!0,showCloseButton:!0,showClearChat:!0},messages:{layout:"bubble",avatar:{show:!1,position:"left"},timestamp:{show:!1,position:"below"},groupConsecutive:!1},slots:{}},markdown:{options:{gfm:!0,breaks:!0},disableDefaultStyles:!1},messageActions:{enabled:!0,showCopy:!0,showUpvote:!1,showDownvote:!1,visibility:"hover",align:"right",layout:"pill-inside"},debug:!1};function Bu(n,e){if(!(!n&&!e))return n?e?ra(n,e):n:e}function Nu(n){var e,t,r,o,s,a,i,d,c,g,f,u,m,v,x,M,E,k,N,P,W;return n?{...Ot,...n,theme:Bu(Ot.theme,n.theme),darkTheme:Bu(Ot.darkTheme,n.darkTheme),launcher:{...Ot.launcher,...n.launcher,dock:{...(e=Ot.launcher)==null?void 0:e.dock,...(t=n.launcher)==null?void 0:t.dock},clearChat:{...(r=Ot.launcher)==null?void 0:r.clearChat,...(o=n.launcher)==null?void 0:o.clearChat}},copy:{...Ot.copy,...n.copy},sendButton:{...Ot.sendButton,...n.sendButton},statusIndicator:{...Ot.statusIndicator,...n.statusIndicator},voiceRecognition:{...Ot.voiceRecognition,...n.voiceRecognition},features:(()=>{var oe,G,se,ge,pe,V,ae,Ie,ee,Z;let C=(oe=Ot.features)==null?void 0:oe.artifacts,I=(G=n.features)==null?void 0:G.artifacts,B=(se=Ot.features)==null?void 0:se.scrollToBottom,D=(ge=n.features)==null?void 0:ge.scrollToBottom,T=(pe=Ot.features)==null?void 0:pe.scrollBehavior,U=(V=n.features)==null?void 0:V.scrollBehavior,z=(ae=Ot.features)==null?void 0:ae.streamAnimation,re=(Ie=n.features)==null?void 0:Ie.streamAnimation,ke=(ee=Ot.features)==null?void 0:ee.askUserQuestion,je=(Z=n.features)==null?void 0:Z.askUserQuestion,be=C===void 0&&I===void 0?void 0:{...C,...I,layout:{...C==null?void 0:C.layout,...I==null?void 0:I.layout}},He=B===void 0&&D===void 0?void 0:{...B,...D},Fe=T===void 0&&U===void 0?void 0:{...T,...U},Se=z===void 0&&re===void 0?void 0:{...z,...re},xe=ke===void 0&&je===void 0?void 0:{...ke,...je,styles:{...ke==null?void 0:ke.styles,...je==null?void 0:je.styles}};return{...Ot.features,...n.features,...He!==void 0?{scrollToBottom:He}:{},...Fe!==void 0?{scrollBehavior:Fe}:{},...be!==void 0?{artifacts:be}:{},...Se!==void 0?{streamAnimation:Se}:{},...xe!==void 0?{askUserQuestion:xe}:{}}})(),suggestionChips:(s=n.suggestionChips)!=null?s:Ot.suggestionChips,suggestionChipsConfig:{...Ot.suggestionChipsConfig,...n.suggestionChipsConfig},layout:{...Ot.layout,...n.layout,header:{...(a=Ot.layout)==null?void 0:a.header,...(i=n.layout)==null?void 0:i.header},messages:{...(d=Ot.layout)==null?void 0:d.messages,...(c=n.layout)==null?void 0:c.messages,avatar:{...(f=(g=Ot.layout)==null?void 0:g.messages)==null?void 0:f.avatar,...(m=(u=n.layout)==null?void 0:u.messages)==null?void 0:m.avatar},timestamp:{...(x=(v=Ot.layout)==null?void 0:v.messages)==null?void 0:x.timestamp,...(E=(M=n.layout)==null?void 0:M.messages)==null?void 0:E.timestamp}},slots:{...(k=Ot.layout)==null?void 0:k.slots,...(N=n.layout)==null?void 0:N.slots}},markdown:{...Ot.markdown,...n.markdown,options:{...(P=Ot.markdown)==null?void 0:P.options,...(W=n.markdown)==null?void 0:W.options}},messageActions:{...Ot.messageActions,...n.messageActions}}:Ot}var Iy={colors:{primary:{50:"#ffffff",100:"#f5f5f5",200:"#d4d4d4",300:"#a3a3a3",400:"#737373",500:"#171717",600:"#0f0f0f",700:"#0a0a0a",800:"#050505",900:"#030303",950:"#000000"},secondary:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},accent:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},success:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},warning:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},error:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},info:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"}},spacing:{0:"0px",1:"0.25rem",2:"0.5rem",3:"0.75rem",4:"1rem",5:"1.25rem",6:"1.5rem",8:"2rem",10:"2.5rem",12:"3rem",16:"4rem",20:"5rem",24:"6rem",32:"8rem",40:"10rem",48:"12rem",56:"14rem",64:"16rem"},typography:{fontFamily:{sans:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',serif:'Georgia, Cambria, "Times New Roman", Times, serif',mono:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{normal:"400",medium:"500",semibold:"600",bold:"700"},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.625"}},shadows:{none:"none",sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.25)"},borders:{none:"none",sm:"1px solid",md:"2px solid",lg:"4px solid"},radius:{none:"0px",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem",full:"9999px"}},Wy={colors:{primary:"palette.colors.primary.500",secondary:"palette.colors.secondary.500",accent:"palette.colors.primary.600",surface:"palette.colors.gray.50",background:"palette.colors.gray.50",container:"palette.colors.gray.50",text:"palette.colors.gray.900",textMuted:"palette.colors.gray.500",textInverse:"palette.colors.gray.50",border:"palette.colors.gray.200",divider:"palette.colors.gray.200",interactive:{default:"palette.colors.primary.600",hover:"palette.colors.primary.700",focus:"palette.colors.primary.600",active:"palette.colors.primary.600",disabled:"palette.colors.gray.300"},feedback:{success:"palette.colors.success.500",warning:"palette.colors.warning.500",error:"palette.colors.error.500",info:"palette.colors.info.500"}},spacing:{xs:"palette.spacing.1",sm:"palette.spacing.2",md:"palette.spacing.4",lg:"palette.spacing.6",xl:"palette.spacing.8","2xl":"palette.spacing.10"},typography:{fontFamily:"palette.typography.fontFamily.sans",fontSize:"palette.typography.fontSize.base",fontWeight:"palette.typography.fontWeight.normal",lineHeight:"palette.typography.lineHeight.normal"}},Ry={button:{primary:{background:"palette.colors.primary.500",foreground:"palette.colors.primary.50",borderRadius:"palette.radius.lg",padding:"semantic.spacing.md"},secondary:{background:"semantic.colors.surface",foreground:"semantic.colors.secondary",borderRadius:"palette.radius.lg",padding:"semantic.spacing.md"},ghost:{background:"transparent",foreground:"semantic.colors.text",borderRadius:"palette.radius.md",padding:"semantic.spacing.sm"}},input:{background:"palette.colors.gray.50",placeholder:"palette.colors.gray.400",borderRadius:"palette.radius.lg",padding:"semantic.spacing.md",focus:{border:"palette.colors.gray.400",ring:"palette.colors.gray.400"}},launcher:{background:"palette.colors.primary.500",foreground:"palette.colors.primary.50",border:"palette.colors.gray.200",size:"60px",iconSize:"28px",borderRadius:"palette.radius.full",shadow:"palette.shadows.lg"},panel:{width:Qr,maxWidth:Du,height:"600px",maxHeight:"calc(100vh - 80px)",borderRadius:"palette.radius.xl",shadow:"palette.shadows.xl"},header:{background:"palette.colors.primary.500",border:"palette.colors.primary.600",borderRadius:"palette.radius.xl palette.radius.xl 0 0",padding:"semantic.spacing.md",iconBackground:"palette.colors.primary.600",iconForeground:"palette.colors.primary.50",titleForeground:"palette.colors.primary.50",subtitleForeground:"palette.colors.primary.200",actionIconForeground:"palette.colors.primary.200"},message:{user:{background:"palette.colors.primary.500",text:"palette.colors.primary.50",borderRadius:"palette.radius.lg",shadow:"palette.shadows.sm"},assistant:{background:"palette.colors.gray.50",text:"palette.colors.gray.900",borderRadius:"palette.radius.lg",border:"palette.colors.gray.200",shadow:"palette.shadows.sm"},border:"semantic.colors.border"},introCard:{background:"semantic.colors.surface",borderRadius:"palette.radius.2xl",padding:"semantic.spacing.lg",shadow:"0 5px 15px rgba(15, 23, 42, 0.08)"},toolBubble:{shadow:"palette.shadows.sm"},reasoningBubble:{shadow:"palette.shadows.sm"},composer:{shadow:"palette.shadows.none"},markdown:{inlineCode:{background:"palette.colors.gray.50",foreground:"palette.colors.gray.900"},link:{foreground:"palette.colors.primary.600"},prose:{fontFamily:"inherit"},codeBlock:{background:"semantic.colors.container",borderColor:"semantic.colors.border",textColor:"inherit"},table:{headerBackground:"semantic.colors.container",borderColor:"semantic.colors.border"},hr:{color:"semantic.colors.divider"},blockquote:{borderColor:"palette.colors.gray.900",background:"transparent",textColor:"palette.colors.gray.500"}},collapsibleWidget:{container:"palette.colors.gray.50",surface:"semantic.colors.surface",border:"semantic.colors.border"},voice:{recording:{indicator:"palette.colors.error.500",background:"palette.colors.error.50",border:"palette.colors.error.200"},processing:{icon:"palette.colors.primary.500",background:"palette.colors.primary.50"},speaking:{icon:"palette.colors.success.500"}},approval:{requested:{background:"palette.colors.warning.50",border:"palette.colors.warning.200",text:"palette.colors.gray.900",shadow:"0 5px 15px rgba(15, 23, 42, 0.08)"},approve:{background:"palette.colors.success.500",foreground:"palette.colors.gray.50",borderRadius:"palette.radius.md",padding:"semantic.spacing.sm"},deny:{background:"palette.colors.error.500",foreground:"palette.colors.gray.50",borderRadius:"palette.radius.md",padding:"semantic.spacing.sm"}},attachment:{image:{background:"palette.colors.gray.100",border:"palette.colors.gray.200"}},scrollToBottom:{background:"components.button.primary.background",foreground:"components.button.primary.foreground",border:"semantic.colors.primary",size:"40px",borderRadius:"palette.radius.full",shadow:"palette.shadows.sm",padding:"0.5rem 0.875rem",gap:"0.5rem",fontSize:"0.875rem",iconSize:"14px"},artifact:{pane:{background:"semantic.colors.container",toolbarBackground:"semantic.colors.container"}}};function hs(n,e){if(!e.startsWith("palette.")&&!e.startsWith("semantic.")&&!e.startsWith("components."))return e;let t=e.split("."),r=n;for(let o of t){if(r==null)return;r=r[o]}return typeof r=="string"&&(r.startsWith("palette.")||r.startsWith("semantic.")||r.startsWith("components."))?hs(n,r):r}function Fu(n){let e={};function t(r,o){for(let[s,a]of Object.entries(r)){let i=`${o}.${s}`;if(typeof a=="string"){let d=hs(n,a);d!==void 0&&(e[i]={path:i,value:d,type:o.includes("color")?"color":o.includes("spacing")?"spacing":o.includes("typography")?"typography":o.includes("shadow")?"shadow":o.includes("border")?"border":"color"})}else typeof a=="object"&&a!==null&&t(a,i)}}return t(n.palette,"palette"),t(n.semantic,"semantic"),t(n.components,"components"),e}function Hy(n){let e=[],t=[];return n.palette||e.push({path:"palette",message:"Theme must include a palette",severity:"error"}),n.semantic||t.push({path:"semantic",message:"No semantic tokens defined - defaults will be used",severity:"warning"}),n.components||t.push({path:"components",message:"No component tokens defined - defaults will be used",severity:"warning"}),{valid:e.length===0,errors:e,warnings:t}}function Ou(n,e){let t={...n};for(let[r,o]of Object.entries(e)){let s=t[r];s&&typeof s=="object"&&!Array.isArray(s)&&o&&typeof o=="object"&&!Array.isArray(o)?t[r]=Ou(s,o):t[r]=o}return t}function By(n,e){return e?Ou(n,e):n}function _o(n,e={}){var o,s,a,i,d,c,g,f,u,m,v,x,M;let t={palette:Iy,semantic:Wy,components:Ry},r={palette:{...t.palette,...n==null?void 0:n.palette,colors:{...t.palette.colors,...(o=n==null?void 0:n.palette)==null?void 0:o.colors},spacing:{...t.palette.spacing,...(s=n==null?void 0:n.palette)==null?void 0:s.spacing},typography:{...t.palette.typography,...(a=n==null?void 0:n.palette)==null?void 0:a.typography},shadows:{...t.palette.shadows,...(i=n==null?void 0:n.palette)==null?void 0:i.shadows},borders:{...t.palette.borders,...(d=n==null?void 0:n.palette)==null?void 0:d.borders},radius:{...t.palette.radius,...(c=n==null?void 0:n.palette)==null?void 0:c.radius}},semantic:{...t.semantic,...n==null?void 0:n.semantic,colors:{...t.semantic.colors,...(g=n==null?void 0:n.semantic)==null?void 0:g.colors,interactive:{...t.semantic.colors.interactive,...(u=(f=n==null?void 0:n.semantic)==null?void 0:f.colors)==null?void 0:u.interactive},feedback:{...t.semantic.colors.feedback,...(v=(m=n==null?void 0:n.semantic)==null?void 0:m.colors)==null?void 0:v.feedback}},spacing:{...t.semantic.spacing,...(x=n==null?void 0:n.semantic)==null?void 0:x.spacing},typography:{...t.semantic.typography,...(M=n==null?void 0:n.semantic)==null?void 0:M.typography}},components:By(t.components,n==null?void 0:n.components)};if(e.validate!==!1){let E=Hy(r);if(!E.valid)throw new Error(`Theme validation failed: ${E.errors.map(k=>k.message).join(", ")}`)}if(e.plugins)for(let E of e.plugins)r=E.transform(r);return r}function _u(n){var x,M,E,k,N,P,W,C,I,B,D,T,U,z,re,ke,je,be,He,Fe,Se,xe,oe,G,se,ge,pe,V,ae,Ie,ee,Z,ne,at,it,ot,Me,fe,Xe,J,ue,Ee,Je,Ke,Pe,Ve,bn,Wt,dn,wr,$,K,he,Ge,Ze,$e,Oe,Lt,Vt,Xt,kn,j,Rt,le,we,Ne,St,rn,on,vn,Dt,nt,Bt,dt,Jt,tr,Ln,sn,Fn,Cr,vt,Un,Ar,Nr,ur,yt,xo,Sr,wo,On,jo,Jr,Fr,Yr,Zr,Co,Ao,eo,wt,zn,jn,Pn,Tt,nr,rr,Vn,to,Or,no,Kn,Nt,In,or,ro,_r,oo,Tr,Gn;let e=Fu(n),t={};for(let[ye,pt]of Object.entries(e)){let en=ye.replace(/\./g,"-");t[`--persona-${en}`]=pt.value}t["--persona-primary"]=(x=t["--persona-semantic-colors-primary"])!=null?x:t["--persona-palette-colors-primary-500"],t["--persona-secondary"]=(M=t["--persona-semantic-colors-secondary"])!=null?M:t["--persona-palette-colors-secondary-500"],t["--persona-accent"]=(E=t["--persona-semantic-colors-accent"])!=null?E:t["--persona-palette-colors-accent-500"],t["--persona-surface"]=(k=t["--persona-semantic-colors-surface"])!=null?k:t["--persona-palette-colors-gray-50"],t["--persona-background"]=(N=t["--persona-semantic-colors-background"])!=null?N:t["--persona-palette-colors-gray-50"],t["--persona-container"]=(P=t["--persona-semantic-colors-container"])!=null?P:t["--persona-palette-colors-gray-100"],t["--persona-text"]=(W=t["--persona-semantic-colors-text"])!=null?W:t["--persona-palette-colors-gray-900"],t["--persona-text-muted"]=(C=t["--persona-semantic-colors-text-muted"])!=null?C:t["--persona-palette-colors-gray-500"],t["--persona-text-inverse"]=(I=t["--persona-semantic-colors-text-inverse"])!=null?I:t["--persona-palette-colors-gray-50"],t["--persona-border"]=(B=t["--persona-semantic-colors-border"])!=null?B:t["--persona-palette-colors-gray-200"],t["--persona-divider"]=(D=t["--persona-semantic-colors-divider"])!=null?D:t["--persona-palette-colors-gray-200"],t["--persona-muted"]=t["--persona-text-muted"],t["--persona-voice-recording-indicator"]=(T=t["--persona-components-voice-recording-indicator"])!=null?T:t["--persona-palette-colors-error-500"],t["--persona-voice-recording-bg"]=(U=t["--persona-components-voice-recording-background"])!=null?U:t["--persona-palette-colors-error-50"],t["--persona-voice-processing-icon"]=(z=t["--persona-components-voice-processing-icon"])!=null?z:t["--persona-palette-colors-primary-500"],t["--persona-voice-speaking-icon"]=(re=t["--persona-components-voice-speaking-icon"])!=null?re:t["--persona-palette-colors-success-500"],t["--persona-approval-bg"]=(ke=t["--persona-components-approval-requested-background"])!=null?ke:t["--persona-palette-colors-warning-50"],t["--persona-approval-border"]=(je=t["--persona-components-approval-requested-border"])!=null?je:t["--persona-palette-colors-warning-200"],t["--persona-approval-text"]=(be=t["--persona-components-approval-requested-text"])!=null?be:t["--persona-palette-colors-gray-900"],t["--persona-approval-shadow"]=(He=t["--persona-components-approval-requested-shadow"])!=null?He:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-approval-approve-bg"]=(Fe=t["--persona-components-approval-approve-background"])!=null?Fe:t["--persona-palette-colors-success-500"],t["--persona-approval-deny-bg"]=(Se=t["--persona-components-approval-deny-background"])!=null?Se:t["--persona-palette-colors-error-500"],t["--persona-attachment-image-bg"]=(xe=t["--persona-components-attachment-image-background"])!=null?xe:t["--persona-palette-colors-gray-100"],t["--persona-attachment-image-border"]=(oe=t["--persona-components-attachment-image-border"])!=null?oe:t["--persona-palette-colors-gray-200"],t["--persona-font-family"]=(G=t["--persona-semantic-typography-fontFamily"])!=null?G:t["--persona-palette-typography-fontFamily-sans"],t["--persona-font-size"]=(se=t["--persona-semantic-typography-fontSize"])!=null?se:t["--persona-palette-typography-fontSize-base"],t["--persona-font-weight"]=(ge=t["--persona-semantic-typography-fontWeight"])!=null?ge:t["--persona-palette-typography-fontWeight-normal"],t["--persona-line-height"]=(pe=t["--persona-semantic-typography-lineHeight"])!=null?pe:t["--persona-palette-typography-lineHeight-normal"],t["--persona-input-font-family"]=t["--persona-font-family"],t["--persona-input-font-weight"]=t["--persona-font-weight"],t["--persona-radius-sm"]=(V=t["--persona-palette-radius-sm"])!=null?V:"0.125rem",t["--persona-radius-md"]=(ae=t["--persona-palette-radius-md"])!=null?ae:"0.375rem",t["--persona-radius-lg"]=(Ie=t["--persona-palette-radius-lg"])!=null?Ie:"0.5rem",t["--persona-radius-xl"]=(ee=t["--persona-palette-radius-xl"])!=null?ee:"0.75rem",t["--persona-radius-full"]=(Z=t["--persona-palette-radius-full"])!=null?Z:"9999px",t["--persona-launcher-radius"]=(at=(ne=t["--persona-components-launcher-borderRadius"])!=null?ne:t["--persona-palette-radius-full"])!=null?at:"9999px",t["--persona-launcher-bg"]=(it=t["--persona-components-launcher-background"])!=null?it:t["--persona-primary"],t["--persona-launcher-fg"]=(ot=t["--persona-components-launcher-foreground"])!=null?ot:t["--persona-text-inverse"],t["--persona-launcher-border"]=(Me=t["--persona-components-launcher-border"])!=null?Me:t["--persona-border"],t["--persona-button-primary-bg"]=(fe=t["--persona-components-button-primary-background"])!=null?fe:t["--persona-primary"],t["--persona-button-primary-fg"]=(Xe=t["--persona-components-button-primary-foreground"])!=null?Xe:t["--persona-text-inverse"],t["--persona-button-radius"]=(ue=(J=t["--persona-components-button-primary-borderRadius"])!=null?J:t["--persona-palette-radius-full"])!=null?ue:"9999px",t["--persona-panel-radius"]=(Je=(Ee=t["--persona-components-panel-borderRadius"])!=null?Ee:t["--persona-radius-xl"])!=null?Je:"0.75rem",t["--persona-panel-border"]=(Ke=t["--persona-components-panel-border"])!=null?Ke:`1px solid ${t["--persona-border"]}`,t["--persona-panel-shadow"]=(Ve=(Pe=t["--persona-components-panel-shadow"])!=null?Pe:t["--persona-palette-shadows-xl"])!=null?Ve:"0 25px 50px -12px rgba(0, 0, 0, 0.25)",t["--persona-launcher-shadow"]=(bn=t["--persona-components-launcher-shadow"])!=null?bn:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",t["--persona-input-radius"]=(dn=(Wt=t["--persona-components-input-borderRadius"])!=null?Wt:t["--persona-radius-lg"])!=null?dn:"0.5rem",t["--persona-message-user-radius"]=($=(wr=t["--persona-components-message-user-borderRadius"])!=null?wr:t["--persona-radius-lg"])!=null?$:"0.5rem",t["--persona-message-assistant-radius"]=(he=(K=t["--persona-components-message-assistant-borderRadius"])!=null?K:t["--persona-radius-lg"])!=null?he:"0.5rem",t["--persona-header-bg"]=(Ge=t["--persona-components-header-background"])!=null?Ge:t["--persona-surface"],t["--persona-header-border"]=(Ze=t["--persona-components-header-border"])!=null?Ze:t["--persona-divider"],t["--persona-header-icon-bg"]=($e=t["--persona-components-header-iconBackground"])!=null?$e:t["--persona-primary"],t["--persona-header-icon-fg"]=(Oe=t["--persona-components-header-iconForeground"])!=null?Oe:t["--persona-text-inverse"],t["--persona-header-title-fg"]=(Lt=t["--persona-components-header-titleForeground"])!=null?Lt:t["--persona-primary"],t["--persona-header-subtitle-fg"]=(Vt=t["--persona-components-header-subtitleForeground"])!=null?Vt:t["--persona-text-muted"],t["--persona-header-action-icon-fg"]=(Xt=t["--persona-components-header-actionIconForeground"])!=null?Xt:t["--persona-muted"];let r=(kn=n.components)==null?void 0:kn.header;r!=null&&r.shadow&&(t["--persona-header-shadow"]=r.shadow),r!=null&&r.borderBottom&&(t["--persona-header-border-bottom"]=r.borderBottom);let o=(j=n.components)==null?void 0:j.introCard;t["--persona-intro-card-bg"]=(Rt=t["--persona-components-introCard-background"])!=null?Rt:t["--persona-surface"],t["--persona-intro-card-radius"]=(le=t["--persona-components-introCard-borderRadius"])!=null?le:"1rem",t["--persona-intro-card-padding"]=(we=t["--persona-components-introCard-padding"])!=null?we:"1.5rem",t["--persona-intro-card-shadow"]=(St=(Ne=o==null?void 0:o.shadow)!=null?Ne:t["--persona-components-introCard-shadow"])!=null?St:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-input-background"]=(rn=t["--persona-components-input-background"])!=null?rn:t["--persona-surface"],t["--persona-input-placeholder"]=(on=t["--persona-components-input-placeholder"])!=null?on:t["--persona-text-muted"],t["--persona-message-user-bg"]=(vn=t["--persona-components-message-user-background"])!=null?vn:t["--persona-accent"],t["--persona-message-user-text"]=(Dt=t["--persona-components-message-user-text"])!=null?Dt:t["--persona-text-inverse"],t["--persona-message-user-shadow"]=(nt=t["--persona-components-message-user-shadow"])!=null?nt:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-message-assistant-bg"]=(Bt=t["--persona-components-message-assistant-background"])!=null?Bt:t["--persona-surface"],t["--persona-message-assistant-text"]=(dt=t["--persona-components-message-assistant-text"])!=null?dt:t["--persona-text"],t["--persona-message-assistant-border"]=(Jt=t["--persona-components-message-assistant-border"])!=null?Jt:t["--persona-border"],t["--persona-message-assistant-shadow"]=(tr=t["--persona-components-message-assistant-shadow"])!=null?tr:"0 1px 2px 0 rgb(0 0 0 / 0.05)",t["--persona-scroll-to-bottom-bg"]=(sn=(Ln=t["--persona-components-scrollToBottom-background"])!=null?Ln:t["--persona-button-primary-bg"])!=null?sn:t["--persona-accent"],t["--persona-scroll-to-bottom-fg"]=(Cr=(Fn=t["--persona-components-scrollToBottom-foreground"])!=null?Fn:t["--persona-button-primary-fg"])!=null?Cr:t["--persona-text-inverse"],t["--persona-scroll-to-bottom-border"]=(vt=t["--persona-components-scrollToBottom-border"])!=null?vt:t["--persona-primary"],t["--persona-scroll-to-bottom-size"]=(Un=t["--persona-components-scrollToBottom-size"])!=null?Un:"40px",t["--persona-scroll-to-bottom-radius"]=(ur=(Nr=(Ar=t["--persona-components-scrollToBottom-borderRadius"])!=null?Ar:t["--persona-button-radius"])!=null?Nr:t["--persona-radius-full"])!=null?ur:"9999px",t["--persona-scroll-to-bottom-shadow"]=(xo=(yt=t["--persona-components-scrollToBottom-shadow"])!=null?yt:t["--persona-palette-shadows-sm"])!=null?xo:"0 1px 2px 0 rgb(0 0 0 / 0.05)",t["--persona-scroll-to-bottom-padding"]=(Sr=t["--persona-components-scrollToBottom-padding"])!=null?Sr:"0.5rem 0.875rem",t["--persona-scroll-to-bottom-gap"]=(wo=t["--persona-components-scrollToBottom-gap"])!=null?wo:"0.5rem",t["--persona-scroll-to-bottom-font-size"]=(jo=(On=t["--persona-components-scrollToBottom-fontSize"])!=null?On:t["--persona-palette-typography-fontSize-sm"])!=null?jo:"0.875rem",t["--persona-scroll-to-bottom-icon-size"]=(Jr=t["--persona-components-scrollToBottom-iconSize"])!=null?Jr:"14px",t["--persona-tool-bubble-shadow"]=(Fr=t["--persona-components-toolBubble-shadow"])!=null?Fr:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-reasoning-bubble-shadow"]=(Yr=t["--persona-components-reasoningBubble-shadow"])!=null?Yr:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-composer-shadow"]=(Zr=t["--persona-components-composer-shadow"])!=null?Zr:"none",t["--persona-md-inline-code-bg"]=(Co=t["--persona-components-markdown-inlineCode-background"])!=null?Co:t["--persona-container"],t["--persona-md-inline-code-color"]=(Ao=t["--persona-components-markdown-inlineCode-foreground"])!=null?Ao:t["--persona-text"],t["--persona-md-link-color"]=(wt=(eo=t["--persona-components-markdown-link-foreground"])!=null?eo:t["--persona-accent"])!=null?wt:"#0f0f0f";let s=t["--persona-components-markdown-heading-h1-fontSize"];s&&(t["--persona-md-h1-size"]=s);let a=t["--persona-components-markdown-heading-h1-fontWeight"];a&&(t["--persona-md-h1-weight"]=a);let i=t["--persona-components-markdown-heading-h2-fontSize"];i&&(t["--persona-md-h2-size"]=i);let d=t["--persona-components-markdown-heading-h2-fontWeight"];d&&(t["--persona-md-h2-weight"]=d);let c=t["--persona-components-markdown-prose-fontFamily"];c&&c!=="inherit"&&(t["--persona-md-prose-font-family"]=c),t["--persona-md-code-block-bg"]=(zn=t["--persona-components-markdown-codeBlock-background"])!=null?zn:t["--persona-container"],t["--persona-md-code-block-border-color"]=(jn=t["--persona-components-markdown-codeBlock-borderColor"])!=null?jn:t["--persona-border"],t["--persona-md-code-block-text-color"]=(Pn=t["--persona-components-markdown-codeBlock-textColor"])!=null?Pn:"inherit",t["--persona-md-table-header-bg"]=(Tt=t["--persona-components-markdown-table-headerBackground"])!=null?Tt:t["--persona-container"],t["--persona-md-table-border-color"]=(nr=t["--persona-components-markdown-table-borderColor"])!=null?nr:t["--persona-border"],t["--persona-md-hr-color"]=(rr=t["--persona-components-markdown-hr-color"])!=null?rr:t["--persona-divider"],t["--persona-md-blockquote-border-color"]=(Vn=t["--persona-components-markdown-blockquote-borderColor"])!=null?Vn:t["--persona-palette-colors-gray-900"],t["--persona-md-blockquote-bg"]=(to=t["--persona-components-markdown-blockquote-background"])!=null?to:"transparent",t["--persona-md-blockquote-text-color"]=(Or=t["--persona-components-markdown-blockquote-textColor"])!=null?Or:t["--persona-palette-colors-gray-500"],t["--cw-container"]=(no=t["--persona-components-collapsibleWidget-container"])!=null?no:t["--persona-surface"],t["--cw-surface"]=(Kn=t["--persona-components-collapsibleWidget-surface"])!=null?Kn:t["--persona-surface"],t["--cw-border"]=(Nt=t["--persona-components-collapsibleWidget-border"])!=null?Nt:t["--persona-border"],t["--persona-message-border"]=(In=t["--persona-components-message-border"])!=null?In:t["--persona-border"];let g=n.components,f=g==null?void 0:g.iconButton;f&&(f.background&&(t["--persona-icon-btn-bg"]=f.background),f.border&&(t["--persona-icon-btn-border"]=f.border),f.color&&(t["--persona-icon-btn-color"]=f.color),f.padding&&(t["--persona-icon-btn-padding"]=f.padding),f.borderRadius&&(t["--persona-icon-btn-radius"]=f.borderRadius),f.hoverBackground&&(t["--persona-icon-btn-hover-bg"]=f.hoverBackground),f.hoverColor&&(t["--persona-icon-btn-hover-color"]=f.hoverColor),f.activeBackground&&(t["--persona-icon-btn-active-bg"]=f.activeBackground),f.activeBorder&&(t["--persona-icon-btn-active-border"]=f.activeBorder));let u=g==null?void 0:g.labelButton;u&&(u.background&&(t["--persona-label-btn-bg"]=u.background),u.border&&(t["--persona-label-btn-border"]=u.border),u.color&&(t["--persona-label-btn-color"]=u.color),u.padding&&(t["--persona-label-btn-padding"]=u.padding),u.borderRadius&&(t["--persona-label-btn-radius"]=u.borderRadius),u.hoverBackground&&(t["--persona-label-btn-hover-bg"]=u.hoverBackground),u.fontSize&&(t["--persona-label-btn-font-size"]=u.fontSize),u.gap&&(t["--persona-label-btn-gap"]=u.gap));let m=g==null?void 0:g.toggleGroup;m&&(m.gap&&(t["--persona-toggle-group-gap"]=m.gap),m.borderRadius&&(t["--persona-toggle-group-radius"]=m.borderRadius));let v=g==null?void 0:g.artifact;if(v!=null&&v.toolbar){let ye=v.toolbar;ye.iconHoverColor&&(t["--persona-artifact-toolbar-icon-hover-color"]=ye.iconHoverColor),ye.iconHoverBackground&&(t["--persona-artifact-toolbar-icon-hover-bg"]=ye.iconHoverBackground),ye.iconPadding&&(t["--persona-artifact-toolbar-icon-padding"]=ye.iconPadding),ye.iconBorderRadius&&(t["--persona-artifact-toolbar-icon-radius"]=ye.iconBorderRadius),ye.iconBorder&&(t["--persona-artifact-toolbar-icon-border"]=ye.iconBorder),ye.toggleGroupGap&&(t["--persona-artifact-toolbar-toggle-group-gap"]=ye.toggleGroupGap),ye.toggleBorderRadius&&(t["--persona-artifact-toolbar-toggle-radius"]=ye.toggleBorderRadius),ye.copyBackground&&(t["--persona-artifact-toolbar-copy-bg"]=ye.copyBackground),ye.copyBorder&&(t["--persona-artifact-toolbar-copy-border"]=ye.copyBorder),ye.copyColor&&(t["--persona-artifact-toolbar-copy-color"]=ye.copyColor),ye.copyBorderRadius&&(t["--persona-artifact-toolbar-copy-radius"]=ye.copyBorderRadius),ye.copyPadding&&(t["--persona-artifact-toolbar-copy-padding"]=ye.copyPadding),ye.copyMenuBackground&&(t["--persona-artifact-toolbar-copy-menu-bg"]=ye.copyMenuBackground,t["--persona-dropdown-bg"]=(or=t["--persona-dropdown-bg"])!=null?or:ye.copyMenuBackground),ye.copyMenuBorder&&(t["--persona-artifact-toolbar-copy-menu-border"]=ye.copyMenuBorder,t["--persona-dropdown-border"]=(ro=t["--persona-dropdown-border"])!=null?ro:ye.copyMenuBorder),ye.copyMenuShadow&&(t["--persona-artifact-toolbar-copy-menu-shadow"]=ye.copyMenuShadow,t["--persona-dropdown-shadow"]=(_r=t["--persona-dropdown-shadow"])!=null?_r:ye.copyMenuShadow),ye.copyMenuBorderRadius&&(t["--persona-artifact-toolbar-copy-menu-radius"]=ye.copyMenuBorderRadius,t["--persona-dropdown-radius"]=(oo=t["--persona-dropdown-radius"])!=null?oo:ye.copyMenuBorderRadius),ye.copyMenuItemHoverBackground&&(t["--persona-artifact-toolbar-copy-menu-item-hover-bg"]=ye.copyMenuItemHoverBackground,t["--persona-dropdown-item-hover-bg"]=(Tr=t["--persona-dropdown-item-hover-bg"])!=null?Tr:ye.copyMenuItemHoverBackground),ye.iconBackground&&(t["--persona-artifact-toolbar-icon-bg"]=ye.iconBackground),ye.toolbarBorder&&(t["--persona-artifact-toolbar-border"]=ye.toolbarBorder)}if(v!=null&&v.tab){let ye=v.tab;ye.background&&(t["--persona-artifact-tab-bg"]=ye.background),ye.activeBackground&&(t["--persona-artifact-tab-active-bg"]=ye.activeBackground),ye.activeBorder&&(t["--persona-artifact-tab-active-border"]=ye.activeBorder),ye.borderRadius&&(t["--persona-artifact-tab-radius"]=ye.borderRadius),ye.textColor&&(t["--persona-artifact-tab-color"]=ye.textColor),ye.hoverBackground&&(t["--persona-artifact-tab-hover-bg"]=ye.hoverBackground),ye.listBackground&&(t["--persona-artifact-tab-list-bg"]=ye.listBackground),ye.listBorderColor&&(t["--persona-artifact-tab-list-border-color"]=ye.listBorderColor),ye.listPadding&&(t["--persona-artifact-tab-list-padding"]=ye.listPadding)}if(v!=null&&v.pane){let ye=v.pane;if(ye.toolbarBackground){let pt=(Gn=hs(n,ye.toolbarBackground))!=null?Gn:ye.toolbarBackground;t["--persona-artifact-toolbar-bg"]=pt}}return t}var Dy={colors:{primary:{50:"#ffffff",100:"#f5f5f5",200:"#d4d4d4",300:"#a3a3a3",400:"#737373",500:"#171717",600:"#0f0f0f",700:"#0a0a0a",800:"#050505",900:"#030303",950:"#000000"},secondary:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},accent:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},success:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},warning:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},error:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"}}},$u=n=>{if(!(!n||typeof n!="object"||Array.isArray(n)))return n},Ji=()=>{var n;return typeof document!="undefined"&&document.documentElement.classList.contains("dark")||typeof window!="undefined"&&((n=window.matchMedia)!=null&&n.call(window,"(prefers-color-scheme: dark)").matches)?"dark":"light"},Ny=n=>{var t;let e=(t=n==null?void 0:n.colorScheme)!=null?t:"light";return e==="light"?"light":e==="dark"?"dark":Ji()},Fy=n=>Ny(n),Oy=n=>_o(n),_y=n=>{var t;let e=_o(void 0,{validate:!1});return _o({...n,palette:{...e.palette,colors:{...Dy.colors,...(t=n==null?void 0:n.palette)==null?void 0:t.colors}}},{validate:!1})},ti=n=>{let e=Fy(n),t=$u(n==null?void 0:n.theme),r=$u(n==null?void 0:n.darkTheme);return e==="dark"?_y(ra(t!=null?t:{},r!=null?r:{})):Oy(t)},$y=n=>_u(n),ys=(n,e)=>{let t=ti(e),r=$y(t);for(let[o,s]of Object.entries(r))n.style.setProperty(o,s)},qu=n=>{let e=[];if(typeof document!="undefined"&&typeof MutationObserver!="undefined"){let t=new MutationObserver(()=>{n(Ji())});t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),e.push(()=>t.disconnect())}if(typeof window!="undefined"&&window.matchMedia){let t=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>n(Ji());t.addEventListener?(t.addEventListener("change",r),e.push(()=>t.removeEventListener("change",r))):t.addListener&&(t.addListener(r),e.push(()=>t.removeListener(r)))}return()=>{e.forEach(t=>t())}};import{Idiomorph as qy}from"idiomorph";var ni=(n,e,t={})=>{let{preserveTypingAnimation:r=!0}=t;qy.morph(n,e.innerHTML,{morphStyle:"innerHTML",callbacks:{beforeNodeMorphed(o,s){var a,i;if(o instanceof HTMLElement&&r){if(o.classList.contains("persona-animate-typing")||o.hasAttribute("data-preserve-runtime"))return!1;if(o.hasAttribute("data-preserve-animation")){if(s instanceof HTMLElement&&!s.hasAttribute("data-preserve-animation"))return;if(s instanceof HTMLElement&&s.hasAttribute("data-preserve-animation")){let d=(a=o.textContent)!=null?a:"",c=(i=s.textContent)!=null?i:"";if(d!==c)return}return!1}}}}})};var ri={index:-1,draft:""};function Uu(n){let{direction:e,history:t,currentValue:r,atStart:o,state:s}=n,a=s.index!==-1;if(t.length===0)return{handled:!1,state:s};if(e==="up"){if(!a&&!o)return{handled:!1,state:s};if(!a){let i=t.length-1;return{handled:!0,value:t[i],state:{index:i,draft:r}}}if(s.index>0){let i=s.index-1;return{handled:!0,value:t[i],state:{index:i,draft:s.draft}}}return{handled:!0,state:s}}if(!a)return{handled:!1,state:s};if(s.index<t.length-1){let i=s.index+1;return{handled:!0,value:t[i],state:{index:i,draft:s.draft}}}return{handled:!0,value:s.draft,state:{...ri}}}function zu(n,e){var t,r,o,s,a,i,d,c,g,f,u,m,v,x,M,E,k,N,P,W,C,I,B,D,T,U,z,re,ke,je,be,He,Fe,Se,xe,oe,G,se;return[n.id,n.role,(r=(t=n.content)==null?void 0:t.length)!=null?r:0,(s=(o=n.content)==null?void 0:o.slice(-32))!=null?s:"",n.streaming?"1":"0",n.voiceProcessing?"1":"0",(a=n.variant)!=null?a:"",(d=(i=n.rawContent)==null?void 0:i.length)!=null?d:0,(g=(c=n.llmContent)==null?void 0:c.length)!=null?g:0,(u=(f=n.approval)==null?void 0:f.status)!=null?u:"",(v=(m=n.toolCall)==null?void 0:m.status)!=null?v:"",(M=(x=n.toolCall)==null?void 0:x.name)!=null?M:"",(N=(k=(E=n.toolCall)==null?void 0:E.chunks)==null?void 0:k.length)!=null?N:0,(I=(C=(W=(P=n.toolCall)==null?void 0:P.chunks)==null?void 0:W[n.toolCall.chunks.length-1])==null?void 0:C.slice(-32))!=null?I:"",typeof((B=n.toolCall)==null?void 0:B.args)=="string"?n.toolCall.args.length:(D=n.toolCall)!=null&&D.args?JSON.stringify(n.toolCall.args).length:0,(z=(U=(T=n.reasoning)==null?void 0:T.chunks)==null?void 0:U.length)!=null?z:0,(be=(je=(ke=(re=n.reasoning)==null?void 0:re.chunks)==null?void 0:ke[n.reasoning.chunks.length-1])==null?void 0:je.length)!=null?be:0,(xe=(Se=(Fe=(He=n.reasoning)==null?void 0:He.chunks)==null?void 0:Fe[n.reasoning.chunks.length-1])==null?void 0:Se.slice(-32))!=null?xe:"",(G=(oe=n.contentParts)==null?void 0:oe.length)!=null?G:0,(se=n.stopReason)!=null?se:"",e].join("\0")}function ju(){return new Map}function Vu(n,e,t){let r=n.get(e);return r&&r.fingerprint===t?r.wrapper:null}function Ku(n,e,t,r){n.set(e,{fingerprint:t,wrapper:r})}function Gu(n,e){for(let t of n.keys())e.has(t)||n.delete(t)}function oi(n=!0){let e=n;return{isFollowing:()=>e,pause:()=>e?(e=!1,!0):!1,resume:()=>e?!1:(e=!0,!0)}}function Xr(n){return Math.max(0,n.scrollHeight-n.clientHeight)}function $o(n,e){return Xr(n)-n.scrollTop<=e}function si(n){let{following:e,currentScrollTop:t,lastScrollTop:r,nearBottom:o,userScrollThreshold:s,isAutoScrolling:a=!1,pauseOnUpwardScroll:i=!1,pauseWhenAwayFromBottom:d=!0,resumeRequiresDownwardScroll:c=!1}=n,g=t-r;return a||Math.abs(g)<s?{action:"none",delta:g,nextLastScrollTop:t}:!e&&o&&(!c||g>0)?{action:"resume",delta:g,nextLastScrollTop:t}:e&&i&&g<0?{action:"pause",delta:g,nextLastScrollTop:t}:e&&d&&!o?{action:"pause",delta:g,nextLastScrollTop:t}:{action:"none",delta:g,nextLastScrollTop:t}}function ai(n){let{following:e,deltaY:t,nearBottom:r=!1,resumeWhenNearBottom:o=!1}=n;return e&&t<0?"pause":!e&&o&&t>0&&r?"resume":"none"}function Qu(n,e){return!n||n.isCollapsed?!1:e.contains(n.anchorNode)||e.contains(n.focusNode)}function Xu(n){let e=Math.max(0,n.anchorOffsetTop-n.topOffset),t=Math.max(0,e+n.viewportHeight-n.contentHeight);return{targetScrollTop:e,spacerHeight:t}}function Ju(n){let e=Math.max(0,n.currentContentHeight-n.contentHeightAtAnchor);return Math.max(0,n.initialSpacerHeight-e)}var Tn={idle:"Online",connecting:"Connecting\u2026",connected:"Streaming\u2026",error:"Offline"},Mn=1e5,bo=Mn+1;var oa={type:"none",placeholder:"none",speed:120,duration:1800,buffer:"none"},Uy=["pre","code","a","script","style"],ii=n=>{var e,t,r,o,s;return{type:(e=n==null?void 0:n.type)!=null?e:oa.type,placeholder:(t=n==null?void 0:n.placeholder)!=null?t:oa.placeholder,speed:(r=n==null?void 0:n.speed)!=null?r:oa.speed,duration:(o=n==null?void 0:n.duration)!=null?o:oa.duration,buffer:(s=n==null?void 0:n.buffer)!=null?s:oa.buffer}},zy=[{name:"typewriter",containerClass:"persona-stream-typewriter",wrap:"char",useCaret:!0},{name:"pop-bubble",bubbleClass:"persona-stream-pop",wrap:"none"},{name:"letter-rise",containerClass:"persona-stream-letter-rise",wrap:"char"},{name:"word-fade",containerClass:"persona-stream-word-fade",wrap:"word"}],Zu=new Map;for(let n of zy)Zu.set(n.name,n);var sa=(n,e)=>{var t,r;return n==="none"?null:e&&Object.prototype.hasOwnProperty.call(e,n)?(t=e[n])!=null?t:null:(r=Zu.get(n))!=null?r:null},li=(n,e,t,r,o)=>{if(!o)return n;if(t!=null&&t.bufferContent)return t.bufferContent(n,r);if(!n)return n;if(e==="word"){let s=n.search(/\s(?=\S*$)/);return s<0?"":n.slice(0,s)}if(e==="line"){let s=n.lastIndexOf(`
|
|
17
|
-
`);return s<0?"":n.slice(0,s)}return n},jy=(n,e,t,r)=>{let o=n.createElement("span");return o.className="persona-stream-char",o.id=`stream-c-${t}-${r}`,o.style.setProperty("--char-index",String(r)),o.textContent=e,o},Vy=(n,e,t,r)=>{let o=n.createElement("span");return o.className="persona-stream-word",o.id=`stream-w-${t}-${r}`,o.style.setProperty("--word-index",String(r)),o.textContent=e,o},Yi=/\s/,Ky=(n,e)=>{let t=n.parentNode;for(;t;){if(t.nodeType===1){let r=t;if(e.has(r.tagName.toLowerCase()))return!0}t=t.parentNode}return!1},Gy=(n,e,t)=>{var d;let r=n.ownerDocument,o=n.parentNode;if(!r||!o)return;let s=(d=n.nodeValue)!=null?d:"";if(!s)return;let a=r.createDocumentFragment(),i=0;for(;i<s.length;)if(Yi.test(s[i])){let c=i;for(;c<s.length&&Yi.test(s[c]);)c+=1;a.appendChild(r.createTextNode(s.slice(i,c))),i=c}else{let c=r.createElement("span");c.className="persona-stream-word-group";let g=i;for(;g<s.length&&!Yi.test(s[g]);)c.appendChild(jy(r,s[g],e,t.value)),t.value+=1,g+=1;a.appendChild(c),i=g}o.replaceChild(a,n)},Qy=(n,e,t)=>{var d;let r=n.ownerDocument,o=n.parentNode;if(!r||!o)return;let s=(d=n.nodeValue)!=null?d:"";if(!s)return;let a=r.createDocumentFragment(),i=s.split(/(\s+)/);for(let c of i)c&&(/^\s+$/.test(c)?a.appendChild(r.createTextNode(c)):(a.appendChild(Vy(r,c,e,t.value)),t.value+=1));o.replaceChild(a,n)},aa=(n,e,t,r)=>{var f,u;if(!n||typeof document=="undefined")return n;let o=document.createElement("div");o.innerHTML=n;let s=new Set(((f=r==null?void 0:r.skipTags)!=null?f:Uy).map(m=>m.toLowerCase())),a=document.createTreeWalker(o,NodeFilter.SHOW_TEXT,null),i=[],d=a.nextNode();for(;d;)Ky(d,s)||i.push(d),d=a.nextNode();let c={value:(u=r==null?void 0:r.startIndex)!=null?u:0},g=e==="char"?Gy:Qy;for(let m of i)g(m,t,c);return o.innerHTML},ci=(n=document)=>{let e=n.createElement("span");return e.className="persona-stream-caret",e.setAttribute("aria-hidden","true"),e.setAttribute("data-preserve-animation","stream-caret"),e},ia=(n=document)=>{let e=n.createElement("div");e.className="persona-stream-skeleton",e.setAttribute("data-preserve-animation","stream-skeleton"),e.setAttribute("aria-hidden","true");let t=n.createElement("div");return t.className="persona-stream-skeleton-line",e.appendChild(t),e},Yu=new WeakMap,Xy=(n,e)=>{var s;if(!n.styles)return;let t=Yu.get(e);if(t||(t=new Set,Yu.set(e,t)),t.has(n.name)){let a=n.name.replace(/["\\]/g,"\\$&");if(e.querySelector(`style[data-persona-animation="${a}"]`))return;t.delete(n.name)}t.add(n.name);let o=(e instanceof ShadowRoot?e.ownerDocument:(s=e.ownerDocument)!=null?s:document).createElement("style");o.setAttribute("data-persona-animation",n.name),o.textContent=n.styles,e.appendChild(o)},Zi=new WeakMap,Jy=(n,e)=>{if(!n.onAttach)return;let t=Zi.get(e);if(t||(t=new Map,Zi.set(e,t)),t.has(n.name))return;let r=n.onAttach(e);t.set(n.name,r)},em=n=>{let e=Zi.get(n);if(e){for(let t of e.values())typeof t=="function"&&t();e.clear()}},el=(n,e)=>{Xy(n,e),Jy(n,e)};function tl(n,e=Mn){let t=n.style.position,r=n.style.zIndex,o=n.style.isolation,s=getComputedStyle(n),a=s.position==="static"||s.position==="";return a&&(n.style.position="relative"),n.style.zIndex=String(e),n.style.isolation="isolate",()=>{a&&(n.style.position=t),n.style.zIndex=r,n.style.isolation=o}}var la=0,vo=null;function nl(n=document){var t;if(la++,la===1){let r=n.body,s=((t=n.defaultView)!=null?t:window).scrollY||n.documentElement.scrollTop;vo={originalOverflow:r.style.overflow,originalPosition:r.style.position,originalTop:r.style.top,originalWidth:r.style.width,scrollY:s},r.style.overflow="hidden",r.style.position="fixed",r.style.top=`-${s}px`,r.style.width="100%"}let e=!1;return()=>{var r;if(!e&&(e=!0,la=Math.max(0,la-1),la===0&&vo)){let o=n.body,s=(r=n.defaultView)!=null?r:window;o.style.overflow=vo.originalOverflow,o.style.position=vo.originalPosition,o.style.top=vo.originalTop,o.style.width=vo.originalWidth,s.scrollTo(0,vo.scrollY),vo=null}}}var ca={side:"right",width:"420px",animate:!0,reveal:"resize",maxHeight:"100dvh"},wn=n=>{var e,t;return((t=(e=n==null?void 0:n.launcher)==null?void 0:e.mountMode)!=null?t:"floating")==="docked"},da=n=>{var e,t;return((t=(e=n==null?void 0:n.launcher)==null?void 0:e.mountMode)!=null?t:"floating")==="composer-bar"},vr=n=>{var t,r,o,s,a,i;let e=(t=n==null?void 0:n.launcher)==null?void 0:t.dock;return{side:(r=e==null?void 0:e.side)!=null?r:ca.side,width:(o=e==null?void 0:e.width)!=null?o:ca.width,animate:(s=e==null?void 0:e.animate)!=null?s:ca.animate,reveal:(a=e==null?void 0:e.reveal)!=null?a:ca.reveal,maxHeight:(i=e==null?void 0:e.maxHeight)!=null?i:ca.maxHeight}};var xr={"bottom-right":"persona-bottom-6 persona-right-6","bottom-left":"persona-bottom-6 persona-left-6","top-right":"persona-top-6 persona-right-6","top-left":"persona-top-6 persona-left-6"};var Yy="persona-relative persona-ml-auto persona-inline-flex persona-items-center persona-justify-center",di=(n,e={})=>{var M,E,k,N,P,W;let{showClose:t=!0,wrapperClassName:r=Yy,buttonSize:o,iconSize:s="28px"}=e,a=(M=n==null?void 0:n.launcher)!=null?M:{},i=(E=o!=null?o:a.closeButtonSize)!=null?E:"32px",d=b("div",r),c=(k=a.closeButtonTooltipText)!=null?k:"Close chat",g=(N=a.closeButtonShowTooltip)!=null?N:!0,f=(P=a.closeButtonIconName)!=null?P:"x",u=(W=a.closeButtonIconText)!=null?W:"\xD7",m=!!(a.closeButtonBorderWidth||a.closeButtonBorderColor),v=kt("button",{className:js("persona-inline-flex persona-items-center persona-justify-center persona-cursor-pointer",!a.closeButtonBackgroundColor&&"hover:persona-bg-gray-100",!m&&"persona-border-none",!a.closeButtonBorderRadius&&"persona-rounded-full"),attrs:{type:"button","aria-label":c},style:{height:i,width:i,display:t?void 0:"none",color:a.closeButtonColor||Nn.actionIconColor,backgroundColor:a.closeButtonBackgroundColor||void 0,border:m?`${a.closeButtonBorderWidth||"0px"} solid ${a.closeButtonBorderColor||"transparent"}`:void 0,borderRadius:a.closeButtonBorderRadius||void 0,paddingLeft:a.closeButtonPaddingX||void 0,paddingRight:a.closeButtonPaddingX||void 0,paddingTop:a.closeButtonPaddingY||void 0,paddingBottom:a.closeButtonPaddingY||void 0}}),x=Ae(f,s,"currentColor",1);if(x?(x.style.display="block",v.appendChild(x)):v.textContent=u,d.appendChild(v),g&&c){let C=null,I=()=>{if(C)return;let D=v.ownerDocument,T=D.body;if(!T)return;C=Dr(D,"div","persona-clear-chat-tooltip"),C.textContent=c;let U=Dr(D,"div");U.className="persona-clear-chat-tooltip-arrow",C.appendChild(U);let z=v.getBoundingClientRect();C.style.position="fixed",C.style.zIndex=String(bo),C.style.left=`${z.left+z.width/2}px`,C.style.top=`${z.top-8}px`,C.style.transform="translate(-50%, -100%)",T.appendChild(C)},B=()=>{C&&C.parentNode&&(C.parentNode.removeChild(C),C=null)};d.addEventListener("mouseenter",I),d.addEventListener("mouseleave",B),v.addEventListener("focus",I),v.addEventListener("blur",B),d._cleanupTooltip=()=>{B(),d.removeEventListener("mouseenter",I),d.removeEventListener("mouseleave",B),v.removeEventListener("focus",I),v.removeEventListener("blur",B)}}return{button:v,wrapper:d}},Zy="persona-relative persona-ml-auto persona-clear-chat-button-wrapper",pi=(n,e={})=>{var C,I,B,D,T,U,z,re,ke,je,be,He,Fe;let{wrapperClassName:t=Zy,buttonSize:r,iconSize:o="20px"}=e,a=(I=((C=n==null?void 0:n.launcher)!=null?C:{}).clearChat)!=null?I:{},i=(B=r!=null?r:a.size)!=null?B:"32px",d=(D=a.iconName)!=null?D:"refresh-cw",c=(T=a.iconColor)!=null?T:"",g=(U=a.backgroundColor)!=null?U:"",f=(z=a.borderWidth)!=null?z:"",u=(re=a.borderColor)!=null?re:"",m=(ke=a.borderRadius)!=null?ke:"",v=(je=a.paddingX)!=null?je:"",x=(be=a.paddingY)!=null?be:"",M=(He=a.tooltipText)!=null?He:"Clear chat",E=(Fe=a.showTooltip)!=null?Fe:!0,k=b("div",t),N=!!(f||u),P=kt("button",{className:js("persona-inline-flex persona-items-center persona-justify-center persona-cursor-pointer",!g&&"hover:persona-bg-gray-100",!N&&"persona-border-none",!m&&"persona-rounded-full"),attrs:{type:"button","aria-label":M},style:{height:i,width:i,color:c||Nn.actionIconColor,backgroundColor:g||void 0,border:N?`${f||"0px"} solid ${u||"transparent"}`:void 0,borderRadius:m||void 0,paddingLeft:v||void 0,paddingRight:v||void 0,paddingTop:x||void 0,paddingBottom:x||void 0}}),W=Ae(d,o,"currentColor",1);if(W&&(W.style.display="block",P.appendChild(W)),k.appendChild(P),E&&M){let Se=null,xe=()=>{if(Se)return;let G=P.ownerDocument,se=G.body;if(!se)return;Se=Dr(G,"div","persona-clear-chat-tooltip"),Se.textContent=M;let ge=Dr(G,"div");ge.className="persona-clear-chat-tooltip-arrow",Se.appendChild(ge);let pe=P.getBoundingClientRect();Se.style.position="fixed",Se.style.zIndex=String(bo),Se.style.left=`${pe.left+pe.width/2}px`,Se.style.top=`${pe.top-8}px`,Se.style.transform="translate(-50%, -100%)",se.appendChild(Se)},oe=()=>{Se&&Se.parentNode&&(Se.parentNode.removeChild(Se),Se=null)};k.addEventListener("mouseenter",xe),k.addEventListener("mouseleave",oe),P.addEventListener("focus",xe),P.addEventListener("blur",oe),k._cleanupTooltip=()=>{oe(),k.removeEventListener("mouseenter",xe),k.removeEventListener("mouseleave",oe),P.removeEventListener("focus",xe),P.removeEventListener("blur",oe)}}return{button:P,wrapper:k}};var Nn={titleColor:"var(--persona-header-title-fg, var(--persona-primary, #0f0f0f))",subtitleColor:"var(--persona-header-subtitle-fg, var(--persona-text-muted, var(--persona-muted, #9ca3af)))",actionIconColor:"var(--persona-header-action-icon-fg, var(--persona-muted, #9ca3af))"},qo=n=>{var W,C,I,B,D,T,U,z,re,ke,je,be,He,Fe,Se,xe;let{config:e,showClose:t=!0}=n,r=kt("div",{className:"persona-widget-header persona-flex persona-items-center persona-gap-3 persona-px-6 persona-py-5",attrs:{"data-persona-theme-zone":"header"},style:{backgroundColor:"var(--persona-header-bg, var(--persona-surface, #ffffff))",borderBottomColor:"var(--persona-header-border, var(--persona-divider, #f1f5f9))",boxShadow:"var(--persona-header-shadow, none)",borderBottom:"var(--persona-header-border-bottom, 1px solid var(--persona-header-border, var(--persona-divider, #f1f5f9)))"}}),o=(W=e==null?void 0:e.launcher)!=null?W:{},s=(C=o.headerIconSize)!=null?C:"48px",a=(I=o.closeButtonPlacement)!=null?I:"inline",i=(B=o.headerIconHidden)!=null?B:!1,d=o.headerIconName,c=kt("div",{className:"persona-flex persona-items-center persona-justify-center persona-rounded-xl persona-text-xl",style:{height:s,width:s,backgroundColor:"var(--persona-header-icon-bg, var(--persona-primary, #0f0f0f))",color:"var(--persona-header-icon-fg, var(--persona-text-inverse, #ffffff))"}});if(!i)if(d){let oe=parseFloat(s)||24,G=Ae(d,oe*.6,"currentColor",1);G?c.replaceChildren(G):c.textContent=(T=(D=e==null?void 0:e.launcher)==null?void 0:D.agentIconText)!=null?T:"\u{1F4AC}"}else if((U=e==null?void 0:e.launcher)!=null&&U.iconUrl){let oe=b("img");oe.src=e.launcher.iconUrl,oe.alt="",oe.className="persona-rounded-xl persona-object-cover",oe.style.height=s,oe.style.width=s,c.replaceChildren(oe)}else c.textContent=(re=(z=e==null?void 0:e.launcher)==null?void 0:z.agentIconText)!=null?re:"\u{1F4AC}";let g=b("div","persona-flex persona-flex-col persona-flex-1 persona-min-w-0"),f=kt("span",{className:"persona-text-base persona-font-semibold",text:(je=(ke=e==null?void 0:e.launcher)==null?void 0:ke.title)!=null?je:"Chat Assistant",style:{color:Nn.titleColor}}),u=kt("span",{className:"persona-text-xs",text:(He=(be=e==null?void 0:e.launcher)==null?void 0:be.subtitle)!=null?He:"Here to help you get answers fast",style:{color:Nn.subtitleColor}});g.append(f,u),i?r.append(g):r.append(c,g);let m=(Fe=o.clearChat)!=null?Fe:{},v=(Se=m.enabled)!=null?Se:!0,x=(xe=m.placement)!=null?xe:"inline",M=null,E=null;if(v){let G=pi(e,{wrapperClassName:x==="top-right"?"persona-absolute persona-top-4 persona-z-50":"persona-relative persona-ml-auto persona-clear-chat-button-wrapper"});M=G.button,E=G.wrapper,x==="top-right"&&(E.style.right="48px"),x==="inline"&&r.appendChild(E)}let k=a==="top-right"?"persona-absolute persona-top-4 persona-right-4 persona-z-50":v&&x==="inline"?"persona-relative persona-inline-flex persona-items-center persona-justify-center":"persona-relative persona-ml-auto persona-inline-flex persona-items-center persona-justify-center",{button:N,wrapper:P}=di(e,{showClose:t,wrapperClassName:k});return a!=="top-right"&&r.appendChild(P),{header:r,iconHolder:c,headerTitle:f,headerSubtitle:u,closeButton:N,closeButtonWrapper:P,clearChatButton:M,clearChatButtonWrapper:E}},pa=(n,e,t)=>{var a,i,d,c;let r=(a=t==null?void 0:t.launcher)!=null?a:{},o=(i=r.closeButtonPlacement)!=null?i:"inline",s=(c=(d=r.clearChat)==null?void 0:d.placement)!=null?c:"inline";n.appendChild(e.header),o==="top-right"&&(n.style.position="relative",n.appendChild(e.closeButtonWrapper)),e.clearChatButtonWrapper&&s==="top-right"&&(n.style.position="relative",n.appendChild(e.clearChatButtonWrapper))};function bs(n){let{items:e,onSelect:t,anchor:r,position:o="bottom-left",portal:s}=n,a=b("div","persona-dropdown-menu persona-hidden");a.setAttribute("role","menu"),a.setAttribute("data-persona-theme-zone","dropdown"),s?(a.style.position="fixed",a.style.zIndex=String(bo)):(a.style.position="absolute",a.style.top="100%",a.style.marginTop="4px",o==="bottom-right"?a.style.right="0":a.style.left="0");for(let m of e){if(m.dividerBefore){let M=document.createElement("hr");a.appendChild(M)}let v=document.createElement("button");if(v.type="button",v.setAttribute("role","menuitem"),v.setAttribute("data-dropdown-item-id",m.id),m.destructive&&v.setAttribute("data-destructive",""),m.icon){let M=Ae(m.icon,16,"currentColor",1.5);M&&v.appendChild(M)}let x=document.createElement("span");x.textContent=m.label,v.appendChild(x),v.addEventListener("click",M=>{M.stopPropagation(),g(),t(m.id)}),a.appendChild(v)}let i=null;function d(){if(!s)return;let m=r.getBoundingClientRect();a.style.top=`${m.bottom+4}px`,o==="bottom-right"?(a.style.right=`${window.innerWidth-m.right}px`,a.style.left="auto"):(a.style.left=`${m.left}px`,a.style.right="auto")}function c(){d(),a.classList.remove("persona-hidden"),requestAnimationFrame(()=>{let m=v=>{!a.contains(v.target)&&!r.contains(v.target)&&g()};document.addEventListener("click",m,!0),i=()=>document.removeEventListener("click",m,!0)})}function g(){a.classList.add("persona-hidden"),i==null||i(),i=null}function f(){a.classList.contains("persona-hidden")?c():g()}function u(){g(),a.remove()}return s&&s.appendChild(a),{element:a,show:c,hide:g,toggle:f,destroy:u}}function En(n){let{icon:e,label:t,size:r,strokeWidth:o,className:s,onClick:a,aria:i}=n,d=b("button","persona-icon-btn"+(s?" "+s:""));d.type="button",d.setAttribute("aria-label",t),d.title=t;let c=Ae(e,r!=null?r:16,"currentColor",o!=null?o:2);if(c&&d.appendChild(c),a&&d.addEventListener("click",a),i)for(let[g,f]of Object.entries(i))d.setAttribute(g,f);return d}function rl(n){let{icon:e,label:t,variant:r="default",size:o="sm",iconSize:s,className:a,onClick:i,aria:d}=n,c="persona-label-btn";r!=="default"&&(c+=" persona-label-btn--"+r),c+=" persona-label-btn--"+o,a&&(c+=" "+a);let g=b("button",c);if(g.type="button",g.setAttribute("aria-label",t),e){let u=Ae(e,s!=null?s:14,"currentColor",2);u&&g.appendChild(u)}let f=b("span");if(f.textContent=t,g.appendChild(f),i&&g.addEventListener("click",i),d)for(let[u,m]of Object.entries(d))g.setAttribute(u,m);return g}function tm(n){var m,v;let{label:e,icon:t="chevron-down",menuItems:r,onSelect:o,position:s="bottom-left",portal:a,className:i,hover:d}=n,c=b("div","persona-combo-btn"+(i?" "+i:""));c.style.position="relative",c.style.display="inline-flex",c.style.alignItems="center",c.style.cursor="pointer",c.setAttribute("role","button"),c.setAttribute("tabindex","0"),c.setAttribute("aria-haspopup","true"),c.setAttribute("aria-expanded","false"),c.setAttribute("aria-label",e);let g=b("span","persona-combo-btn-label");g.textContent=e,c.appendChild(g);let f=Ae(t,14,"currentColor",2);f&&(f.style.marginLeft="4px",f.style.opacity="0.6",c.appendChild(f)),d&&(c.style.borderRadius=(m=d.borderRadius)!=null?m:"10px",c.style.padding=(v=d.padding)!=null?v:"6px 4px 6px 12px",c.style.border="1px solid transparent",c.style.transition="background-color 0.15s ease, border-color 0.15s ease",c.addEventListener("mouseenter",()=>{var x,M;c.style.backgroundColor=(x=d.background)!=null?x:"",c.style.borderColor=(M=d.border)!=null?M:""}),c.addEventListener("mouseleave",()=>{c.style.backgroundColor="",c.style.borderColor="transparent"}));let u=bs({items:r,onSelect:x=>{c.setAttribute("aria-expanded","false"),o(x)},anchor:c,position:s,portal:a});return a||c.appendChild(u.element),c.addEventListener("click",x=>{x.stopPropagation();let M=!u.element.classList.contains("persona-hidden");c.setAttribute("aria-expanded",M?"false":"true"),u.toggle()}),c.addEventListener("keydown",x=>{(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),c.click())}),{element:c,setLabel:x=>{g.textContent=x,c.setAttribute("aria-label",x)},open:()=>{c.setAttribute("aria-expanded","true"),u.show()},close:()=>{c.setAttribute("aria-expanded","false"),u.hide()},toggle:()=>{let x=!u.element.classList.contains("persona-hidden");c.setAttribute("aria-expanded",x?"false":"true"),u.toggle()},destroy:()=>{u.destroy(),c.remove()}}}var eb=n=>{var r;let e=qo({config:n.config,showClose:n.showClose,onClose:n.onClose,onClearChat:n.onClearChat}),t=(r=n.layoutHeaderConfig)==null?void 0:r.onTitleClick;if(t){let o=e.headerTitle.parentElement;o&&(o.style.cursor="pointer",o.setAttribute("role","button"),o.setAttribute("tabindex","0"),o.addEventListener("click",()=>t()),o.addEventListener("keydown",s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),t())}))}return e};function tb(n,e,t){var r,o,s;if(e!=null&&e.length)for(let a of e){let i=b("button","persona-inline-flex persona-items-center persona-justify-center persona-rounded-md persona-border-none persona-bg-transparent persona-p-0 persona-text-persona-muted hover:persona-opacity-80");if(i.type="button",i.setAttribute("aria-label",(o=(r=a.ariaLabel)!=null?r:a.label)!=null?o:a.id),a.icon){let d=Ae(a.icon,14,"currentColor",2);d&&i.appendChild(d)}else a.label&&(i.textContent=a.label);if((s=a.menuItems)!=null&&s.length){let d=b("div","persona-relative");d.appendChild(i);let c=bs({items:a.menuItems,onSelect:g=>t==null?void 0:t(g),anchor:d,position:"bottom-left"});d.appendChild(c.element),i.addEventListener("click",g=>{g.stopPropagation(),c.toggle()}),n.appendChild(d)}else i.addEventListener("click",()=>t==null?void 0:t(a.id)),n.appendChild(i)}}var nb=n=>{var k,N,P,W,C,I,B,D,T;let{config:e,showClose:t=!0,onClose:r,layoutHeaderConfig:o,onHeaderAction:s}=n,a=(k=e==null?void 0:e.launcher)!=null?k:{},i=b("div","persona-flex persona-items-center persona-justify-between persona-px-6 persona-py-4");i.setAttribute("data-persona-theme-zone","header"),i.style.backgroundColor="var(--persona-header-bg, var(--persona-surface, #ffffff))",i.style.borderBottomColor="var(--persona-header-border, var(--persona-divider, #f1f5f9))",i.style.boxShadow="var(--persona-header-shadow, none)",i.style.borderBottom="var(--persona-header-border-bottom, 1px solid var(--persona-header-border, var(--persona-divider, #f1f5f9)))";let d=o==null?void 0:o.titleMenu,c,g;if(d)c=tm({label:(N=a.title)!=null?N:"Chat Assistant",menuItems:d.menuItems,onSelect:d.onSelect,hover:d.hover,className:""}).element,c.style.color=Nn.titleColor,g=(P=c.querySelector(".persona-combo-btn-label"))!=null?P:c;else{if(c=b("div","persona-flex persona-min-w-0 persona-flex-1 persona-items-center persona-gap-1"),g=b("span","persona-text-base persona-font-semibold persona-truncate"),g.style.color=Nn.titleColor,g.textContent=(W=a.title)!=null?W:"Chat Assistant",c.appendChild(g),tb(c,o==null?void 0:o.trailingActions,(C=o==null?void 0:o.onAction)!=null?C:s),o!=null&&o.onTitleClick){c.style.cursor="pointer",c.setAttribute("role","button"),c.setAttribute("tabindex","0");let z=o.onTitleClick;c.addEventListener("click",re=>{re.target.closest("button")||z()}),c.addEventListener("keydown",re=>{(re.key==="Enter"||re.key===" ")&&(re.preventDefault(),z())})}let U=o==null?void 0:o.titleRowHover;U&&(c.style.borderRadius=(I=U.borderRadius)!=null?I:"10px",c.style.padding=(B=U.padding)!=null?B:"6px 4px 6px 12px",c.style.margin="-6px 0 -6px -12px",c.style.border="1px solid transparent",c.style.transition="background-color 0.15s ease, border-color 0.15s ease",c.style.width="fit-content",c.style.flex="none",c.addEventListener("mouseenter",()=>{var z,re;c.style.backgroundColor=(z=U.background)!=null?z:"",c.style.borderColor=(re=U.border)!=null?re:""}),c.addEventListener("mouseleave",()=>{c.style.backgroundColor="",c.style.borderColor="transparent"}))}i.appendChild(c);let f=(D=a.closeButtonSize)!=null?D:"32px",u=b("div",""),m=b("button","persona-inline-flex persona-items-center persona-justify-center persona-rounded-full hover:persona-bg-gray-100 persona-cursor-pointer persona-border-none");m.style.height=f,m.style.width=f,m.type="button",m.setAttribute("aria-label","Close chat"),m.style.display=t?"":"none",m.style.color=a.closeButtonColor||Nn.actionIconColor;let v=(T=a.closeButtonIconName)!=null?T:"x",x=Ae(v,"28px","currentColor",1);x?m.appendChild(x):m.textContent="\xD7",r&&m.addEventListener("click",r),u.appendChild(m),i.appendChild(u);let M=b("div");M.style.display="none";let E=b("span");return E.style.display="none",{header:i,iconHolder:M,headerTitle:g,headerSubtitle:E,closeButton:m,closeButtonWrapper:u,clearChatButton:null,clearChatButtonWrapper:null}},nm={default:eb,minimal:nb},rb=n=>{var e;return(e=nm[n])!=null?e:nm.default},ui=(n,e,t)=>{var a,i,d;if(e!=null&&e.render){let c=e.render({config:n,onClose:t==null?void 0:t.onClose,onClearChat:t==null?void 0:t.onClearChat,trailingActions:e.trailingActions,onAction:e.onAction}),g=b("div");g.style.display="none";let f=b("span"),u=b("span"),m=b("button");m.style.display="none";let v=b("div");return v.style.display="none",{header:c,iconHolder:g,headerTitle:f,headerSubtitle:u,closeButton:m,closeButtonWrapper:v,clearChatButton:null,clearChatButtonWrapper:null}}let r=(a=e==null?void 0:e.layout)!=null?a:"default",s=rb(r)({config:n,showClose:(d=(i=e==null?void 0:e.showCloseButton)!=null?i:t==null?void 0:t.showClose)!=null?d:!0,onClose:t==null?void 0:t.onClose,onClearChat:t==null?void 0:t.onClearChat,layoutHeaderConfig:e,onHeaderAction:e==null?void 0:e.onAction});return e&&(e.showIcon===!1&&(s.iconHolder.style.display="none"),e.showTitle===!1&&(s.headerTitle.style.display="none"),e.showSubtitle===!1&&(s.headerSubtitle.style.display="none"),e.showCloseButton===!1&&(s.closeButton.style.display="none"),e.showClearChat===!1&&s.clearChatButtonWrapper&&(s.clearChatButtonWrapper.style.display="none")),s};var mi=n=>{var a,i;let e=b("textarea");e.setAttribute("data-persona-composer-input",""),e.placeholder=(i=(a=n==null?void 0:n.copy)==null?void 0:a.inputPlaceholder)!=null?i:"Type your message\u2026",e.className="persona-w-full persona-min-h-[24px] persona-resize-none persona-border-none persona-bg-transparent persona-text-sm persona-text-persona-primary focus:persona-outline-none focus:persona-border-none persona-composer-textarea",e.rows=1,e.style.fontFamily='var(--persona-input-font-family, var(--persona-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif))',e.style.fontWeight="var(--persona-input-font-weight, var(--persona-font-weight, 400))";let t=3,r=20;e.style.maxHeight=`${t*r}px`,e.style.overflowY="auto";let o=()=>{let d=parseFloat(e.style.maxHeight);return Number.isFinite(d)&&d>0?d:t*r},s=()=>{e.addEventListener("input",()=>{e.style.height="auto";let d=Math.min(e.scrollHeight,o());e.style.height=`${d}px`})};return e.style.border="none",e.style.outline="none",e.style.borderWidth="0",e.style.borderStyle="none",e.style.borderColor="transparent",e.addEventListener("focus",()=>{e.style.border="none",e.style.outline="none",e.style.borderWidth="0",e.style.borderStyle="none",e.style.borderColor="transparent",e.style.boxShadow="none"}),e.addEventListener("blur",()=>{e.style.border="none",e.style.outline="none"}),{textarea:e,attachAutoResize:s}},gi=n=>{var W,C,I,B,D,T,U,z,re,ke,je,be;let e=(W=n==null?void 0:n.sendButton)!=null?W:{},t=(C=e.useIcon)!=null?C:!1,r=(I=e.iconText)!=null?I:"\u2191",o=e.iconName,s=(B=e.stopIconName)!=null?B:"square",a=(D=e.tooltipText)!=null?D:"Send message",i=(T=e.stopTooltipText)!=null?T:"Stop generating",d=(z=(U=n==null?void 0:n.copy)==null?void 0:U.sendButtonLabel)!=null?z:"Send",c=(ke=(re=n==null?void 0:n.copy)==null?void 0:re.stopButtonLabel)!=null?ke:"Stop",g=(je=e.showTooltip)!=null?je:!1,f=(be=e.size)!=null?be:"40px",u=e.backgroundColor,m=e.textColor,v=b("div","persona-send-button-wrapper"),x=kt("button",{className:js("persona-rounded-button disabled:persona-opacity-50 persona-cursor-pointer",t?"persona-flex persona-items-center persona-justify-center":"persona-bg-persona-accent persona-px-4 persona-py-2 persona-text-sm persona-font-semibold",t&&!u&&"persona-bg-persona-primary",!t&&!m&&"persona-text-white"),attrs:{type:"submit","data-persona-composer-submit":""},style:{width:t?f:void 0,height:t?f:void 0,minWidth:t?f:void 0,minHeight:t?f:void 0,fontSize:t?"18px":void 0,lineHeight:t?"1":void 0,color:t?m||"var(--persona-button-primary-fg, #ffffff)":m||void 0,backgroundColor:t&&u||void 0,borderWidth:e.borderWidth||void 0,borderStyle:e.borderWidth?"solid":void 0,borderColor:e.borderColor||void 0,paddingLeft:e.paddingX||void 0,paddingRight:e.paddingX||void 0,paddingTop:e.paddingY||void 0,paddingBottom:e.paddingY||void 0}}),M=null,E=null;if(t){let He=parseFloat(f)||24,Fe=(m==null?void 0:m.trim())||"currentColor";o?(M=Ae(o,He,Fe,2),M?x.appendChild(M):x.textContent=r):x.textContent=r,E=Ae(s,He,Fe,2)}else x.textContent=d;let k=null;g&&a&&(k=b("div","persona-send-button-tooltip"),k.textContent=a,v.appendChild(k)),x.setAttribute("aria-label",a),v.appendChild(x);let N="send";return{button:x,wrapper:v,setMode:He=>{if(He===N)return;N=He;let Fe=He==="stop"?i:a;if(x.setAttribute("aria-label",Fe),k&&(k.textContent=Fe),t){if(M&&E){let Se=He==="stop"?E:M;x.replaceChildren(Se)}}else x.textContent=He==="stop"?c:d}}},fi=n=>{var k,N,P,W,C,I,B,D,T,U,z,re;let e=(k=n==null?void 0:n.voiceRecognition)!=null?k:{};if(!(e.enabled===!0))return null;let r=typeof window!="undefined"&&(typeof window.webkitSpeechRecognition!="undefined"||typeof window.SpeechRecognition!="undefined"),o=((N=e.provider)==null?void 0:N.type)==="runtype";if(!(r||o))return null;let a=(W=(P=n==null?void 0:n.sendButton)==null?void 0:P.size)!=null?W:"40px",i=(C=e.iconName)!=null?C:"mic",d=(I=e.iconSize)!=null?I:a,c=parseFloat(d)||24,g=(D=e.backgroundColor)!=null?D:(B=n==null?void 0:n.sendButton)==null?void 0:B.backgroundColor,f=(U=e.iconColor)!=null?U:(T=n==null?void 0:n.sendButton)==null?void 0:T.textColor,u=b("div","persona-send-button-wrapper"),m=kt("button",{className:"persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer",attrs:{type:"button","data-persona-composer-mic":"","aria-label":"Start voice recognition"},style:{width:d,height:d,minWidth:d,minHeight:d,fontSize:"18px",lineHeight:"1",color:f||"var(--persona-text, #111827)",backgroundColor:g||void 0,borderWidth:e.borderWidth||void 0,borderStyle:e.borderWidth?"solid":void 0,borderColor:e.borderColor||void 0,paddingLeft:e.paddingX||void 0,paddingRight:e.paddingX||void 0,paddingTop:e.paddingY||void 0,paddingBottom:e.paddingY||void 0}}),x=Ae(i,c,f||"currentColor",1.5);x?m.appendChild(x):m.textContent="\u{1F3A4}",u.appendChild(m);let M=(z=e.tooltipText)!=null?z:"Start voice recognition";if(((re=e.showTooltip)!=null?re:!1)&&M){let ke=b("div","persona-send-button-tooltip");ke.textContent=M,u.appendChild(ke)}return{button:m,wrapper:u}},hi=n=>{var v,x,M,E,k,N,P,W;let e=(v=n==null?void 0:n.attachments)!=null?v:{};if(e.enabled!==!0)return null;let t=(M=(x=n==null?void 0:n.sendButton)==null?void 0:x.size)!=null?M:"40px",r=b("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2");r.setAttribute("data-persona-composer-attachment-previews",""),r.style.display="none";let o=b("input");o.type="file",o.setAttribute("data-persona-composer-attachment-input",""),o.accept=((E=e.allowedTypes)!=null?E:Gr).join(","),o.multiple=((k=e.maxFiles)!=null?k:4)>1,o.style.display="none",o.setAttribute("aria-label","Attach files");let s=(N=e.buttonIconName)!=null?N:"paperclip",a=t,i=parseFloat(a)||40,d=Math.round(i*.6),c=b("div","persona-send-button-wrapper"),g=kt("button",{className:"persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer persona-attachment-button",attrs:{type:"button","data-persona-composer-attachment-button":"","aria-label":(P=e.buttonTooltipText)!=null?P:"Attach file"},style:{width:a,height:a,minWidth:a,minHeight:a,fontSize:"18px",lineHeight:"1",backgroundColor:"transparent",color:"var(--persona-primary, #111827)",border:"none",borderRadius:"6px",transition:"background-color 0.15s ease"}});g.addEventListener("mouseenter",()=>{g.style.backgroundColor="var(--persona-palette-colors-black-alpha-50, rgba(0, 0, 0, 0.05))"}),g.addEventListener("mouseleave",()=>{g.style.backgroundColor="transparent"});let f=Ae(s,d,"currentColor",1.5);f?g.appendChild(f):g.textContent="\u{1F4CE}",g.addEventListener("click",C=>{C.preventDefault(),o.click()}),c.appendChild(g);let u=(W=e.buttonTooltipText)!=null?W:"Attach file",m=b("div","persona-send-button-tooltip");return m.textContent=u,c.appendChild(m),{button:g,wrapper:c,input:o,previewsContainer:r}},yi=n=>{var a,i,d;let e=(a=n==null?void 0:n.statusIndicator)!=null?a:{},t=e.align==="left"?"persona-text-left":e.align==="center"?"persona-text-center":"persona-text-right",r=b("div",`persona-mt-2 ${t} persona-text-xs persona-text-persona-muted`);r.setAttribute("data-persona-composer-status","");let o=(i=e.visible)!=null?i:!0;r.style.display=o?"":"none";let s=(d=e.idleText)!=null?d:"Online";if(e.idleLink){let c=b("a");c.href=e.idleLink,c.target="_blank",c.rel="noopener noreferrer",c.textContent=s,c.style.color="inherit",c.style.textDecoration="none",r.appendChild(c)}else r.textContent=s;return r},bi=()=>kt("div",{className:"persona-mb-3 persona-flex persona-flex-wrap persona-gap-2",attrs:{"data-persona-composer-suggestions":""}});var vi=n=>{var v,x,M,E,k,N;let{config:e}=n,t=kt("div",{className:"persona-widget-footer persona-border-t-persona-divider persona-bg-persona-surface persona-px-6 persona-py-4",attrs:{"data-persona-theme-zone":"composer"}}),r=bi(),o=kt("form",{className:"persona-widget-composer persona-flex persona-flex-col persona-gap-2 persona-rounded-2xl persona-border persona-border-gray-200 persona-bg-persona-input-background persona-px-4 persona-py-3",attrs:{"data-persona-composer-form":""},style:{outline:"none"}}),{textarea:s,attachAutoResize:a}=mi(e);a();let i=gi(e),d=fi(e),c=hi(e),g=yi(e);c&&(c.previewsContainer.style.gap="8px",o.append(c.previewsContainer,c.input)),o.append(s);let f=kt("div",{className:"persona-widget-composer__actions persona-flex persona-items-center persona-justify-between persona-w-full",attrs:{"data-persona-composer-actions":""}}),u=b("div","persona-widget-composer__left-actions persona-flex persona-items-center persona-gap-2"),m=b("div","persona-widget-composer__right-actions persona-flex persona-items-center persona-gap-1");return c&&u.append(c.wrapper),d&&m.append(d.wrapper),m.append(i.wrapper),f.append(u,m),o.append(f),o.addEventListener("click",P=>{P.target!==i.button&&P.target!==i.wrapper&&P.target!==(d==null?void 0:d.button)&&P.target!==(d==null?void 0:d.wrapper)&&P.target!==(c==null?void 0:c.button)&&P.target!==(c==null?void 0:c.wrapper)&&s.focus()}),t.append(r,o,g),{footer:t,suggestions:r,composerForm:o,textarea:s,sendButton:i.button,sendButtonWrapper:i.wrapper,micButton:(v=d==null?void 0:d.button)!=null?v:null,micButtonWrapper:(x=d==null?void 0:d.wrapper)!=null?x:null,statusText:g,attachmentButton:(M=c==null?void 0:c.button)!=null?M:null,attachmentButtonWrapper:(E=c==null?void 0:c.wrapper)!=null?E:null,attachmentInput:(k=c==null?void 0:c.input)!=null?k:null,attachmentPreviewsContainer:(N=c==null?void 0:c.previewsContainer)!=null?N:null,actionsRow:f,leftActions:u,rightActions:m,setSendButtonMode:i.setMode}};var rm=()=>{let n=kt("button",{className:"persona-pill-peek",attrs:{type:"button","data-persona-pill-peek":"","aria-label":"Show conversation",tabindex:"-1"}}),e=b("span","persona-pill-peek__icon"),t=Ae("message-square",16,"currentColor",1.5);t&&e.appendChild(t);let r=b("span","persona-pill-peek__text"),o=b("span","persona-pill-peek__caret"),s=Ae("chevron-up",16,"currentColor",1.5);return s&&o.appendChild(s),n.append(e,r,o),{root:n,textNode:r}},om=n=>{var v,x,M,E,k,N;let{config:e}=n,t=kt("div",{className:"persona-widget-footer persona-widget-footer--pill",attrs:{"data-persona-theme-zone":"composer"}}),r=bi();r.style.display="none";let o=yi(e);o.style.display="none";let{textarea:s,attachAutoResize:a}=mi(e);s.style.maxHeight="100px",a();let i=gi(e),d=fi(e),c=hi(e);c&&c.previewsContainer.classList.add("persona-pill-composer__previews");let g=kt("form",{className:"persona-widget-composer persona-pill-composer",attrs:{"data-persona-composer-form":""},style:{outline:"none"}}),f=b("div","persona-widget-composer__left-actions persona-pill-composer__left");c&&f.append(c.wrapper);let u=b("div","persona-widget-composer__right-actions persona-pill-composer__right");d&&u.append(d.wrapper),u.append(i.wrapper),g.addEventListener("click",P=>{P.target!==i.button&&P.target!==i.wrapper&&P.target!==(d==null?void 0:d.button)&&P.target!==(d==null?void 0:d.wrapper)&&P.target!==(c==null?void 0:c.button)&&P.target!==(c==null?void 0:c.wrapper)&&s.focus()}),c&&g.append(c.input),g.append(f,s,u),c&&t.append(c.previewsContainer),t.append(g,r,o);let m=g;return{footer:t,suggestions:r,composerForm:g,textarea:s,sendButton:i.button,sendButtonWrapper:i.wrapper,micButton:(v=d==null?void 0:d.button)!=null?v:null,micButtonWrapper:(x=d==null?void 0:d.wrapper)!=null?x:null,statusText:o,attachmentButton:(M=c==null?void 0:c.button)!=null?M:null,attachmentButtonWrapper:(E=c==null?void 0:c.wrapper)!=null?E:null,attachmentInput:(k=c==null?void 0:c.input)!=null?k:null,attachmentPreviewsContainer:(N=c==null?void 0:c.previewsContainer)!=null?N:null,actionsRow:m,leftActions:f,rightActions:u,setSendButtonMode:i.setMode}};var sm=n=>{var g,f,u,m,v,x,M,E,k,N,P,W,C,I,B,D,T;let e=(f=(g=n==null?void 0:n.launcher)==null?void 0:g.enabled)!=null?f:!0,t=wn(n);if(da(n)){let U=(m=(u=n==null?void 0:n.launcher)==null?void 0:u.composerBar)!=null?m:{},z=b("div","persona-widget-wrapper persona-fixed persona-transition");z.setAttribute("data-persona-composer-bar",""),z.dataset.state="collapsed",z.dataset.expandedSize=(v=U.expandedSize)!=null?v:"anchored",z.style.zIndex=String((M=(x=n==null?void 0:n.launcher)==null?void 0:x.zIndex)!=null?M:Mn);let re=b("div","persona-widget-panel persona-relative persona-flex persona-flex-1 persona-min-h-0 persona-flex-col");re.style.width="100%",z.appendChild(re);let ke=b("div","persona-widget-pill-root");return ke.setAttribute("data-persona-composer-bar",""),ke.dataset.state="collapsed",ke.dataset.expandedSize=(E=U.expandedSize)!=null?E:"anchored",ke.style.zIndex=String((N=(k=n==null?void 0:n.launcher)==null?void 0:k.zIndex)!=null?N:Mn),{wrapper:z,panel:re,pillRoot:ke}}if(t){let U=b("div","persona-relative persona-h-full persona-w-full persona-flex persona-flex-1 persona-min-h-0 persona-flex-col"),z=b("div","persona-relative persona-h-full persona-w-full persona-flex persona-flex-1 persona-min-h-0 persona-flex-col");return U.appendChild(z),{wrapper:U,panel:z}}if(!e){let U=b("div","persona-relative persona-h-full persona-flex persona-flex-col persona-flex-1 persona-min-h-0"),z=b("div","persona-relative persona-flex-1 persona-flex persona-flex-col persona-min-h-0"),re=(W=(P=n==null?void 0:n.launcher)==null?void 0:P.width)!=null?W:"100%";return U.style.width=re,z.style.width="100%",U.appendChild(z),{wrapper:U,panel:z}}let o=(C=n==null?void 0:n.launcher)!=null?C:{},s=o.position&&xr[o.position]?xr[o.position]:xr["bottom-right"],a=b("div",`persona-widget-wrapper persona-fixed ${s} persona-transition`);a.style.zIndex=String((B=(I=n==null?void 0:n.launcher)==null?void 0:I.zIndex)!=null?B:Mn);let i=b("div","persona-widget-panel persona-relative persona-min-h-[320px]"),d=(T=(D=n==null?void 0:n.launcher)==null?void 0:D.width)!=null?T:n==null?void 0:n.launcherWidth,c=d!=null?d:Qr;return i.style.width=c,i.style.maxWidth=c,a.appendChild(i),{wrapper:a,panel:i}},ob=(n,e)=>{var P,W,C,I,B,D,T,U,z;let t=b("div","persona-widget-container persona-relative persona-flex persona-flex-1 persona-min-h-0 persona-flex-col persona-text-persona-primary");t.setAttribute("data-persona-theme-zone","container");let{button:r,wrapper:o}=di(n,{showClose:e,wrapperClassName:"persona-composer-bar-close",buttonSize:"16px",iconSize:"14px"});o.style.position="absolute",o.style.top="8px",o.style.right="8px",o.style.zIndex="10";let s=(C=(W=(P=n==null?void 0:n.launcher)==null?void 0:P.clearChat)==null?void 0:W.enabled)!=null?C:!0,a=null,i=null;if(s){let re=pi(n,{wrapperClassName:"persona-composer-bar-clear-chat",buttonSize:"16px",iconSize:"14px"});a=re.button,i=re.wrapper,i.style.position="absolute",i.style.top="8px",i.style.right="32px",i.style.zIndex="10"}let d=kt("span",{className:"persona-widget-header",attrs:{"data-persona-theme-zone":"header"},style:{display:"none"}}),c=kt("div",{className:"persona-widget-body persona-flex persona-flex-1 persona-min-h-0 persona-flex-col persona-gap-6 persona-overflow-y-auto persona-bg-persona-container persona-px-6 persona-py-6",attrs:{id:"persona-scroll-container","data-persona-theme-zone":"messages"},style:{paddingTop:"48px"}});c.style.setProperty("scrollbar-gutter","stable");let g=kt("h2",{className:"persona-text-lg persona-font-semibold persona-text-persona-primary",text:(B=(I=n==null?void 0:n.copy)==null?void 0:I.welcomeTitle)!=null?B:"Hello \u{1F44B}"}),f=kt("p",{className:"persona-mt-2 persona-text-sm persona-text-persona-muted",text:(T=(D=n==null?void 0:n.copy)==null?void 0:D.welcomeSubtitle)!=null?T:"Ask anything about your account or products."}),u=kt("div",{className:"persona-rounded-2xl persona-bg-persona-surface persona-p-6",attrs:{"data-persona-intro-card":""},style:{boxShadow:"var(--persona-intro-card-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))"}},g,f),m=b("div","persona-flex persona-flex-col persona-gap-3"),v=(U=n==null?void 0:n.layout)==null?void 0:U.contentMaxWidth;v&&(m.style.maxWidth=v,m.style.marginLeft="auto",m.style.marginRight="auto",m.style.width="100%"),((z=n==null?void 0:n.copy)==null?void 0:z.showWelcomeCard)!==!1||(u.style.display="none",c.classList.remove("persona-gap-6"),c.classList.add("persona-gap-3")),c.append(u,m);let M=kt("div",{className:"persona-composer-overlay persona-pointer-events-none",attrs:{"data-persona-composer-overlay":""},style:{position:"absolute",left:"0",right:"0",bottom:"0",zIndex:"20"}}),E=om({config:n}),{root:k,textNode:N}=rm();return t.append(d,o,c,M),i&&t.appendChild(i),{container:t,body:c,messagesWrapper:m,composerOverlay:M,suggestions:E.suggestions,textarea:E.textarea,sendButton:E.sendButton,sendButtonWrapper:E.sendButtonWrapper,micButton:E.micButton,micButtonWrapper:E.micButtonWrapper,composerForm:E.composerForm,statusText:E.statusText,introTitle:g,introSubtitle:f,closeButton:r,closeButtonWrapper:o,clearChatButton:a,clearChatButtonWrapper:i,iconHolder:b("span"),headerTitle:b("span"),headerSubtitle:b("span"),header:d,footer:E.footer,attachmentButton:E.attachmentButton,attachmentButtonWrapper:E.attachmentButtonWrapper,attachmentInput:E.attachmentInput,attachmentPreviewsContainer:E.attachmentPreviewsContainer,actionsRow:E.actionsRow,leftActions:E.leftActions,rightActions:E.rightActions,setSendButtonMode:E.setSendButtonMode,peekBanner:k,peekTextNode:N}},am=(n,e=!0)=>{var M,E,k,N,P,W,C,I,B;if(da(n))return ob(n,e);let t=kt("div",{className:"persona-widget-container persona-flex persona-h-full persona-w-full persona-flex-1 persona-min-h-0 persona-flex-col persona-text-persona-primary persona-bg-persona-surface persona-rounded-2xl persona-overflow-hidden persona-border persona-border-persona-border",attrs:{"data-persona-theme-zone":"container"}}),r=(M=n==null?void 0:n.layout)==null?void 0:M.header,o=((E=n==null?void 0:n.layout)==null?void 0:E.showHeader)!==!1,s=r?ui(n,r,{showClose:e}):qo({config:n,showClose:e}),a=kt("div",{className:"persona-widget-body persona-flex persona-flex-1 persona-min-h-0 persona-flex-col persona-gap-6 persona-overflow-y-auto persona-bg-persona-container persona-px-6 persona-py-6",attrs:{id:"persona-scroll-container","data-persona-theme-zone":"messages"}});a.style.setProperty("scrollbar-gutter","stable");let i=kt("h2",{className:"persona-text-lg persona-font-semibold persona-text-persona-primary",text:(N=(k=n==null?void 0:n.copy)==null?void 0:k.welcomeTitle)!=null?N:"Hello \u{1F44B}"}),d=kt("p",{className:"persona-mt-2 persona-text-sm persona-text-persona-muted",text:(W=(P=n==null?void 0:n.copy)==null?void 0:P.welcomeSubtitle)!=null?W:"Ask anything about your account or products."}),c=kt("div",{className:"persona-rounded-2xl persona-bg-persona-surface persona-p-6",attrs:{"data-persona-intro-card":""},style:{boxShadow:wn(n)?"none":"var(--persona-intro-card-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))"}},i,d),g=b("div","persona-flex persona-flex-col persona-gap-3"),f=(C=n==null?void 0:n.layout)==null?void 0:C.contentMaxWidth;f&&(g.style.maxWidth=f,g.style.marginLeft="auto",g.style.marginRight="auto",g.style.width="100%"),((I=n==null?void 0:n.copy)==null?void 0:I.showWelcomeCard)!==!1||(c.style.display="none",a.classList.remove("persona-gap-6"),a.classList.add("persona-gap-3")),a.append(c,g);let m=vi({config:n}),v=((B=n==null?void 0:n.layout)==null?void 0:B.showFooter)!==!1;o?pa(t,s,n):(s.header.style.display="none",pa(t,s,n)),t.append(a);let x=kt("div",{className:"persona-composer-overlay persona-pointer-events-none",attrs:{"data-persona-composer-overlay":""},style:{position:"absolute",left:"0",right:"0",bottom:"0",zIndex:"20"}});return v||(m.footer.style.display="none"),t.append(m.footer),t.append(x),{container:t,body:a,messagesWrapper:g,composerOverlay:x,suggestions:m.suggestions,textarea:m.textarea,sendButton:m.sendButton,sendButtonWrapper:m.sendButtonWrapper,micButton:m.micButton,micButtonWrapper:m.micButtonWrapper,composerForm:m.composerForm,statusText:m.statusText,introTitle:i,introSubtitle:d,closeButton:s.closeButton,closeButtonWrapper:s.closeButtonWrapper,clearChatButton:s.clearChatButton,clearChatButtonWrapper:s.clearChatButtonWrapper,iconHolder:s.iconHolder,headerTitle:s.headerTitle,headerSubtitle:s.headerSubtitle,header:s.header,footer:m.footer,attachmentButton:m.attachmentButton,attachmentButtonWrapper:m.attachmentButtonWrapper,attachmentInput:m.attachmentInput,attachmentPreviewsContainer:m.attachmentPreviewsContainer,actionsRow:m.actionsRow,leftActions:m.leftActions,rightActions:m.rightActions,setSendButtonMode:m.setSendButtonMode}};var ol=(n,e)=>{let t=b("button");t.type="button",t.innerHTML=`
|
|
16
|
+
_Details: ${t.message}_`:r}var Ns=n=>({isError:!0,content:[{type:"text",text:n}]}),wu=(n,e="WebMCP tool execution failed.")=>n instanceof Error&&n.message?n.message:typeof n=="string"&&n?n:e,Cu=n=>Qo(n)||n===_r,Ea=class{constructor(e={},t){this.config=e;this.callbacks=t;this.status="idle";this.streaming=!1;this.abortController=null;this.sequenceCounter=Date.now();this.clientSession=null;this.agentExecution=null;this.artifacts=new Map;this.selectedArtifactId=null;this.webMcpInflightKeys=new Set;this.webMcpResolvedKeys=new Set;this.webMcpResolveControllers=new Set;this.webMcpEpoch=0;this.webMcpApprovalResolvers=new Map;this.webMcpApprovalSeq=0;this.webMcpAwaitBatches=new Map;this.voiceProvider=null;this.voiceActive=!1;this.voiceStatus="disconnected";this.pendingVoiceUserMessageId=null;this.pendingVoiceAssistantMessageId=null;this.ttsSpokenMessageIds=new Set;this.readAloud=new Ds(()=>this.createSpeechEngine());this.handleEvent=e=>{var t,r,o,s,a,i,d,c,m,f;if(e.type==="message"){this.upsertMessage(e.message);let g=e.message.toolCall,u=!!(g!=null&&g.name)&&(Qo(g.name)||g.name===_r&&((r=(t=this.config.features)==null?void 0:t.suggestReplies)==null?void 0:r.enabled)!==!1);((o=e.message.agentMetadata)==null?void 0:o.awaitingLocalTool)===!0&&u&&this.enqueueWebMcpAwait(e.message),(s=e.message.agentMetadata)!=null&&s.executionId&&(this.agentExecution?e.message.agentMetadata.iteration!==void 0&&(this.agentExecution.currentIteration=e.message.agentMetadata.iteration):this.agentExecution={executionId:e.message.agentMetadata.executionId,agentId:"",agentName:(a=e.message.agentMetadata.agentName)!=null?a:"",status:"running",currentIteration:(i=e.message.agentMetadata.iteration)!=null?i:0,maxTurns:0})}else if(e.type==="status"){if(this.setStatus(e.status),e.status==="connecting")this.setStreaming(!0);else if(e.status==="idle"||e.status==="error"){this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null);let g=this.webMcpAwaitBatches.size>0||this.webMcpResolveControllers.size>0;((d=this.agentExecution)==null?void 0:d.status)==="running"&&(e.status==="error"?this.agentExecution.status="error":g||(this.agentExecution.status="complete")),this.scheduleWebMcpBatchFlush()}}else e.type==="error"?(this.setStatus("error"),this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null),((c=this.agentExecution)==null?void 0:c.status)==="running"&&(this.agentExecution.status="error"),(f=(m=this.callbacks).onError)==null||f.call(m,e.error)):(e.type==="artifact_start"||e.type==="artifact_delta"||e.type==="artifact_update"||e.type==="artifact_complete")&&this.applyArtifactStreamEvent(e)};var r,o;this.messages=[...(r=e.initialMessages)!=null?r:[]].map(s=>{var a;return{...s,sequence:(a=s.sequence)!=null?a:this.nextSequence()}}),this.messages=this.sortMessages(this.messages),this.client=new Rs(e),this.wireDefaultWebMcpConfirm();for(let s of(o=e.initialArtifacts)!=null?o:[])this.artifacts.set(s.id,{...s,status:"complete"});e.initialSelectedArtifactId!=null&&(this.selectedArtifactId=e.initialSelectedArtifactId),this.messages.length&&this.callbacks.onMessagesChanged([...this.messages]),this.artifacts.size>0&&this.emitArtifactsState(),this.callbacks.onStatusChanged(this.status),this.prefetchRuntypeTts()}prefetchRuntypeTts(){var o,s,a,i,d;let e=this.config.textToSpeech;if((e==null?void 0:e.provider)!=="runtype"||e.createEngine)return;let t=(o=e.host)!=null?o:this.config.apiUrl,r=(d=e.agentId)!=null?d:(i=(a=(s=this.config.voiceRecognition)==null?void 0:s.provider)==null?void 0:a.runtype)==null?void 0:i.agentId;!t||!r||!this.config.clientToken||Li().catch(()=>{})}setSSEEventCallback(e){this.client.setSSEEventCallback(e)}isClientTokenMode(){return this.client.isClientTokenMode()}isAgentMode(){return this.client.isAgentMode()}getAgentExecution(){return this.agentExecution}isAgentExecuting(){var e;return((e=this.agentExecution)==null?void 0:e.status)==="running"}isVoiceSupported(){var e;return Ei((e=this.config.voiceRecognition)==null?void 0:e.provider)}isVoiceActive(){return this.voiceActive}getVoiceStatus(){return this.voiceStatus}getVoiceInterruptionMode(){var e;return(e=this.voiceProvider)!=null&&e.getInterruptionMode?this.voiceProvider.getInterruptionMode():"none"}stopVoicePlayback(){var e;(e=this.voiceProvider)!=null&&e.stopPlayback&&this.voiceProvider.stopPlayback()}isBargeInActive(){var e,t,r;return(r=(t=(e=this.voiceProvider)==null?void 0:e.isBargeInActive)==null?void 0:t.call(e))!=null?r:!1}async deactivateBargeIn(){var e;(e=this.voiceProvider)!=null&&e.deactivateBargeIn&&await this.voiceProvider.deactivateBargeIn()}createSpeechEngine(){var r,o,s,a,i;let e=this.config.textToSpeech;if(e!=null&&e.createEngine)return e.createEngine();let t=rs.isSupported()?new rs({pickVoice:e==null?void 0:e.pickVoice}):null;if((e==null?void 0:e.provider)==="runtype"){let d=(r=e.host)!=null?r:this.config.apiUrl,c=(i=e.agentId)!=null?i:(a=(s=(o=this.config.voiceRecognition)==null?void 0:o.provider)==null?void 0:s.runtype)==null?void 0:a.agentId,m=this.config.clientToken,f=e.browserFallback!==!1;if(d&&c&&m)return Li().then(({RuntypeSpeechEngine:g,FallbackSpeechEngine:u})=>{let v=new g({host:d,agentId:c,clientToken:m,voice:e.voice,prebufferMs:e.prebufferMs,createPlaybackEngine:e.createPlaybackEngine});return f&&t?new u(v,t,{onFallback:x=>console.warn(`[persona] Runtype read-aloud failed; using browser voice. ${x.message}`)}):v});if(f&&t)return m&&console.warn("[persona] textToSpeech.provider 'runtype' is missing an agentId; using the browser voice. Set textToSpeech.agentId (or voiceRecognition.provider.runtype.agentId)."),t}return t}setupVoice(e){var t,r;try{let o=e||this.getVoiceConfigFromConfig();if(!o)throw new Error("Voice configuration not provided");this.voiceProvider=ns(o);let a=(r=((t=this.config.voiceRecognition)!=null?t:{}).processingErrorText)!=null?r:"Voice processing failed. Please try again.";this.voiceProvider.onResult(i=>{i.provider!=="runtype"&&i.text&&i.text.trim()&&this.sendMessage(i.text,{viaVoice:!0})}),this.voiceProvider.onTranscript&&this.voiceProvider.onTranscript((i,d,c)=>{if(i==="user"){if(this.pendingVoiceUserMessageId)this.upsertMessage({id:this.pendingVoiceUserMessageId,role:"user",content:d,createdAt:new Date().toISOString(),streaming:!1,voiceProcessing:!c});else{let m=this.injectMessage({role:"user",content:d,streaming:!1,voiceProcessing:!c});this.pendingVoiceUserMessageId=m.id}if(c){this.pendingVoiceUserMessageId=null;let m=this.injectMessage({role:"assistant",content:"",streaming:!0,voiceProcessing:!0});this.pendingVoiceAssistantMessageId=m.id,this.setStreaming(!0)}}else{if(this.pendingVoiceAssistantMessageId)this.upsertMessage({id:this.pendingVoiceAssistantMessageId,role:"assistant",content:d,createdAt:new Date().toISOString(),streaming:!c,voiceProcessing:!c});else{let m=this.injectMessage({role:"assistant",content:d,streaming:!c,voiceProcessing:!c});this.pendingVoiceAssistantMessageId=m.id}c&&(this.pendingVoiceAssistantMessageId&&this.ttsSpokenMessageIds.add(this.pendingVoiceAssistantMessageId),this.setStreaming(!1),this.pendingVoiceAssistantMessageId=null)}}),this.voiceProvider.onMetrics&&this.voiceProvider.onMetrics(i=>{var d,c;(c=(d=this.config.voiceRecognition)==null?void 0:d.onMetrics)==null||c.call(d,i)}),this.voiceProvider.onError(i=>{console.error("Voice error:",i),this.pendingVoiceAssistantMessageId&&(this.upsertMessage({id:this.pendingVoiceAssistantMessageId,role:"assistant",content:a,createdAt:new Date().toISOString(),streaming:!1,voiceProcessing:!1}),this.setStreaming(!1),this.pendingVoiceUserMessageId=null,this.pendingVoiceAssistantMessageId=null)}),this.voiceProvider.onStatusChange(i=>{var d,c;this.voiceStatus=i,this.voiceActive=i==="listening",(c=(d=this.callbacks).onVoiceStatusChanged)==null||c.call(d,i)}),this.voiceProvider.connect()}catch(o){console.error("Failed to setup voice:",o)}}async toggleVoice(){if(!this.voiceProvider){console.error("Voice not configured");return}if(this.voiceActive)await this.voiceProvider.stopListening();else{this.stopSpeaking();try{await this.voiceProvider.startListening()}catch(e){console.error("Failed to start voice:",e)}}}cleanupVoice(){this.voiceProvider&&(this.voiceProvider.disconnect(),this.voiceProvider=null),this.voiceActive=!1,this.voiceStatus="disconnected"}getVoiceConfigFromConfig(){var t,r,o,s,a,i,d,c,m,f;if(!((t=this.config.voiceRecognition)!=null&&t.provider))return;let e=this.config.voiceRecognition.provider;switch(e.type){case"runtype":return{type:"runtype",runtype:{agentId:((r=e.runtype)==null?void 0:r.agentId)||"",clientToken:(s=(o=e.runtype)==null?void 0:o.clientToken)!=null?s:this.config.clientToken,host:(i=(a=e.runtype)==null?void 0:a.host)!=null?i:this.config.apiUrl,voiceId:(d=e.runtype)==null?void 0:d.voiceId,createPlaybackEngine:(c=e.runtype)==null?void 0:c.createPlaybackEngine}};case"browser":return{type:"browser",browser:{language:((m=e.browser)==null?void 0:m.language)||"en-US",continuous:(f=e.browser)==null?void 0:f.continuous}};case"custom":return{type:"custom",custom:e.custom};default:return}}async initClientSession(){var e,t;if(!this.isClientTokenMode())return null;try{let r=await this.client.initSession();return this.setClientSession(r),r}catch(r){return(t=(e=this.callbacks).onError)==null||t.call(e,r instanceof Error?r:new Error(String(r))),null}}setClientSession(e){if(this.clientSession=e,e.config.welcomeMessage&&this.messages.length===0){let t={id:`welcome-${Date.now()}`,role:"assistant",content:e.config.welcomeMessage,createdAt:new Date().toISOString(),sequence:this.nextSequence()};this.appendMessage(t)}}getClientSession(){var e;return(e=this.clientSession)!=null?e:this.client.getClientSession()}isSessionValid(){let e=this.getClientSession();return e?new Date<e.expiresAt:!1}clearClientSession(){this.clientSession=null,this.client.clearClientSession()}getClient(){return this.client}async submitMessageFeedback(e,t){return this.client.submitMessageFeedback(e,t)}async submitCSATFeedback(e,t){return this.client.submitCSATFeedback(e,t)}async submitNPSFeedback(e,t){return this.client.submitNPSFeedback(e,t)}updateConfig(e){let t={...this.config,...e};if(!wf(this.config,t)){this.config=t,this.client.updateConfig(t);return}this.abortWebMcpResolves(),this.webMcpInflightKeys.clear(),this.webMcpResolvedKeys.clear();let r=this.client.getSSEEventCallback();this.config=t,this.client=new Rs(this.config),this.wireDefaultWebMcpConfirm(),r&&this.client.setSSEEventCallback(r)}getMessages(){return[...this.messages]}getStatus(){return this.status}isStreaming(){return this.streaming}injectTestEvent(e){this.handleEvent(e)}injectMessage(e){let{role:t,content:r,llmContent:o,contentParts:s,id:a,createdAt:i,sequence:d,streaming:c=!1,voiceProcessing:m,rawContent:f}=e,u={id:a!=null?a:t==="user"?wa():t==="assistant"?Hs():`system-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:t,content:r,createdAt:i!=null?i:new Date().toISOString(),sequence:d!=null?d:this.nextSequence(),streaming:c,...o!==void 0&&{llmContent:o},...s!==void 0&&{contentParts:s},...m!==void 0&&{voiceProcessing:m},...f!==void 0&&{rawContent:f}};return this.upsertMessage(u),u}injectAssistantMessage(e){return this.injectMessage({...e,role:"assistant"})}injectUserMessage(e){return this.injectMessage({...e,role:"user"})}injectSystemMessage(e){return this.injectMessage({...e,role:"system"})}injectMessageBatch(e){let t=[];for(let r of e){let{role:o,content:s,llmContent:a,contentParts:i,id:d,createdAt:c,sequence:m,streaming:f=!1,voiceProcessing:g,rawContent:u}=r,x={id:d!=null?d:o==="user"?wa():o==="assistant"?Hs():`system-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:o,content:s,createdAt:c!=null?c:new Date().toISOString(),sequence:m!=null?m:this.nextSequence(),streaming:f,...a!==void 0&&{llmContent:a},...i!==void 0&&{contentParts:i},...g!==void 0&&{voiceProcessing:g},...u!==void 0&&{rawContent:u}};t.push(x)}return this.messages=this.sortMessages([...this.messages,...t]),this.callbacks.onMessagesChanged([...this.messages]),t}injectComponentDirective(e){let{component:t,props:r={},text:o="",llmContent:s,id:a,createdAt:i,sequence:d}=e,c={text:o,component:t,props:r};return this.injectMessage({role:"assistant",content:o,rawContent:JSON.stringify(c),...s!==void 0&&{llmContent:s},...a!==void 0&&{id:a},...i!==void 0&&{createdAt:i},...d!==void 0&&{sequence:d}})}async sendMessage(e,t){var c,m,f,g,u;let r=e.trim();if(!r&&(!(t!=null&&t.contentParts)||t.contentParts.length===0))return;this.stopSpeaking(),(c=this.abortController)==null||c.abort(),this.abortWebMcpResolves();let o=wa(),s=Hs(),a={id:o,role:"user",content:r||Ca,createdAt:new Date().toISOString(),sequence:this.nextSequence(),viaVoice:(t==null?void 0:t.viaVoice)||!1,...(t==null?void 0:t.contentParts)&&t.contentParts.length>0&&{contentParts:t.contentParts}};this.appendMessage(a),this.setStreaming(!0);let i=new AbortController;this.abortController=i;let d=[...this.messages];try{await this.client.dispatch({messages:d,signal:i.signal,assistantMessageId:s},this.handleEvent)}catch(v){let x=v instanceof Error&&(v.name==="AbortError"||v.message.includes("aborted")||v.message.includes("abort"));if(!x){let P=xu(v,this.config.errorMessage);if(P){let T={id:s,role:"assistant",createdAt:new Date().toISOString(),content:P,sequence:this.nextSequence()};this.appendMessage(T)}}this.setStatus("idle"),this.setStreaming(!1),this.abortController=null,x||(v instanceof Error?(f=(m=this.callbacks).onError)==null||f.call(m,v):(u=(g=this.callbacks).onError)==null||u.call(g,new Error(String(v))))}}async continueConversation(){var o,s,a,i,d;if(this.streaming)return;(o=this.abortController)==null||o.abort();let e=Hs();this.setStreaming(!0);let t=new AbortController;this.abortController=t;let r=[...this.messages];try{await this.client.dispatch({messages:r,signal:t.signal,assistantMessageId:e},this.handleEvent)}catch(c){let m=c instanceof Error&&(c.name==="AbortError"||c.message.includes("aborted")||c.message.includes("abort"));if(!m){let f=xu(c,this.config.errorMessage);if(f){let g={id:e,role:"assistant",createdAt:new Date().toISOString(),content:f,sequence:this.nextSequence()};this.appendMessage(g)}}this.setStatus("idle"),this.setStreaming(!1),this.abortController=null,m||(c instanceof Error?(a=(s=this.callbacks).onError)==null||a.call(s,c):(d=(i=this.callbacks).onError)==null||d.call(i,new Error(String(c))))}}async connectStream(e,t){var o,s,a;if(this.streaming&&!(t!=null&&t.allowReentry))return;t!=null&&t.allowReentry||(o=this.abortController)==null||o.abort();let r=!1;for(let i of this.messages)i.streaming&&(i.streaming=!1,r=!0);r&&this.callbacks.onMessagesChanged([...this.messages]),this.setStreaming(!0);try{await this.client.processStream(e,this.handleEvent,t==null?void 0:t.assistantMessageId)}catch(i){this.setStatus("error"),this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null),(a=(s=this.callbacks).onError)==null||a.call(s,i instanceof Error?i:new Error(String(i)))}}wireDefaultWebMcpConfirm(){let e=this.config.webmcp;(e==null?void 0:e.enabled)===!0&&!e.onConfirm&&this.client.setWebMcpConfirmHandler(t=>this.requestWebMcpApproval(t))}requestWebMcpApproval(e){var o,s,a;try{if(((s=(o=this.config.webmcp)==null?void 0:o.autoApprove)==null?void 0:s.call(o,e))===!0)return Promise.resolve(!0)}catch{}let t={id:`webmcp-${++this.webMcpApprovalSeq}`,status:"pending",agentId:"",executionId:"",toolName:e.toolName,toolType:"webmcp",description:(a=e.description)!=null?a:`Allow the assistant to run ${e.toolName}?`,parameters:e.args},r=`approval-${t.id}`;return this.upsertMessage({id:r,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!1,variant:"approval",approval:t}),new Promise(i=>{this.webMcpApprovalResolvers.set(r,i)})}resolveWebMcpApproval(e,t){let r=this.webMcpApprovalResolvers.get(e);if(!r)return;this.webMcpApprovalResolvers.delete(e);let o=this.messages.find(s=>s.id===e);o!=null&&o.approval&&this.upsertMessage({...o,approval:{...o.approval,status:t,resolvedAt:Date.now()}}),r(t==="approved")}async resolveApproval(e,t,r){var m,f,g,u,v;let o=`approval-${e.id}`,s={...e,status:t,resolvedAt:Date.now()},a=this.messages.find(x=>x.id===o),i={id:o,role:"assistant",content:"",createdAt:(m=a==null?void 0:a.createdAt)!=null?m:new Date().toISOString(),...(a==null?void 0:a.sequence)!==void 0?{sequence:a.sequence}:{},streaming:!1,variant:"approval",approval:s};this.upsertMessage(i),(f=this.abortController)==null||f.abort(),this.abortController=new AbortController,this.setStreaming(!0);let d=this.config.approval,c=d&&typeof d=="object"?d.onDecision:void 0;try{let x;if(c?x=await c({approvalId:e.id,executionId:e.executionId,agentId:e.agentId,toolName:e.toolName},t,r):x=await this.client.resolveApproval({agentId:e.agentId,executionId:e.executionId,approvalId:e.id},t),x){let P=null;if(x instanceof Response){if(!x.ok){let T=await x.json().catch(()=>null);throw new Error((g=T==null?void 0:T.error)!=null?g:`Approval request failed: ${x.status}`)}P=x.body}else x instanceof ReadableStream&&(P=x);P?await this.connectStream(P,{allowReentry:!0}):(t==="denied"&&this.appendMessage({id:`denial-${e.id}`,role:"assistant",content:"Tool execution was denied by user.",createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()}),this.setStreaming(!1),this.abortController=null)}else this.setStreaming(!1),this.abortController=null}catch(x){let P=x instanceof Error&&(x.name==="AbortError"||x.message.includes("aborted")||x.message.includes("abort"));this.setStreaming(!1),this.abortController=null,P||(v=(u=this.callbacks).onError)==null||v.call(u,x instanceof Error?x:new Error(String(x)))}}persistAskUserQuestionProgress(e,t){let r=this.messages.find(o=>o.id===e.id);r&&this.upsertMessage({...r,agentMetadata:{...r.agentMetadata,askUserQuestionAnswers:t.answers,askUserQuestionIndex:t.currentIndex}})}markAskUserQuestionResolved(e,t){let r=this.messages.find(o=>o.id===e.id);r&&this.upsertMessage({...r,agentMetadata:{...r.agentMetadata,awaitingLocalTool:!1,askUserQuestionAnswered:!0,...t?{askUserQuestionAnswers:t}:{}}})}async resolveAskUserQuestion(e,t){var m,f,g,u,v,x,P,T,M,N,k,W;let r=this.messages.find(C=>C.id===e.id);if(((m=r==null?void 0:r.agentMetadata)==null?void 0:m.askUserQuestionAnswered)===!0)return;let o=(f=e.agentMetadata)==null?void 0:f.executionId,s=(g=e.toolCall)==null?void 0:g.name;if(!o||!s){(v=(u=this.callbacks).onError)==null||v.call(u,new Error("resolveAskUserQuestion: message is missing executionId or toolCall.name"));return}let a=typeof t=="string"?void 0:t;if(a===void 0&&typeof t=="string"){let C=(x=e.toolCall)==null?void 0:x.args,I=Array.isArray(C==null?void 0:C.questions)?C.questions:[];if(I.length===1){let D=typeof((P=I[0])==null?void 0:P.question)=="string"?I[0].question:"";D&&(a={[D]:t})}}this.markAskUserQuestionResolved(e,a),(T=this.abortController)==null||T.abort(),this.abortController=new AbortController,this.setStreaming(!0);let i=e.toolCall.id,d=(M=e.toolCall)==null?void 0:M.args,c=Array.isArray(d==null?void 0:d.questions)?d.questions:[];if(c.length===0){let C=typeof t=="string"?t:Object.entries(t).map(([I,D])=>`${I}: ${Array.isArray(D)?D.join(", "):D}`).join(" | ");this.appendMessage({id:`ask-user-answer-${i}`,role:"user",content:C,createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()})}else{let C=a!=null?a:{};c.forEach((I,D)=>{let B=typeof(I==null?void 0:I.question)=="string"?I.question:"";if(!B)return;let E=C[B],z=Array.isArray(E)?E.join(", "):typeof E=="string"?E:"";this.appendMessage({id:`ask-user-q-${i}-${D}`,role:"assistant",content:B,createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()}),this.appendMessage({id:`ask-user-a-${i}-${D}`,role:"user",content:z||"*Skipped*",createdAt:new Date().toISOString(),streaming:!1,sequence:this.nextSequence()})})}try{let C=await this.client.resumeFlow(o,{[s]:t});if(!C.ok){let I=await C.json().catch(()=>null);throw new Error((N=I==null?void 0:I.error)!=null?N:`Resume failed: ${C.status}`)}C.body?await this.connectStream(C.body,{allowReentry:!0}):(this.setStreaming(!1),this.abortController=null)}catch(C){let I=C instanceof Error&&(C.name==="AbortError"||C.message.includes("aborted")||C.message.includes("abort"));this.setStreaming(!1),this.abortController=null,I||(W=(k=this.callbacks).onError)==null||W.call(k,C instanceof Error?C:new Error(String(C)))}}enqueueWebMcpAwait(e){var s,a;let t=(s=e.agentMetadata)==null?void 0:s.executionId,r=(a=e.toolCall)==null?void 0:a.id;if(!t||!r){let i=this.webMcpEpoch;queueMicrotask(()=>{i===this.webMcpEpoch&&this.resolveWebMcpToolCall(e)});return}let o=this.webMcpAwaitBatches.get(t);o||(o={snapshots:[],seen:new Set},this.webMcpAwaitBatches.set(t,o)),!o.seen.has(r)&&(o.seen.add(r),o.snapshots.push(e))}scheduleWebMcpBatchFlush(){if(this.webMcpAwaitBatches.size===0)return;let e=this.webMcpEpoch;queueMicrotask(()=>{if(e===this.webMcpEpoch)for(let t of[...this.webMcpAwaitBatches.keys()])this.flushWebMcpAwaitBatch(t)})}flushWebMcpAwaitBatch(e){let t=this.webMcpAwaitBatches.get(e);if(!t)return;this.webMcpAwaitBatches.delete(e);let{snapshots:r}=t;r.length===1?this.resolveWebMcpToolCall(r[0]):r.length>1&&this.resolveWebMcpToolCallBatch(e,r)}resolveWebMcpToolStartedAt(e){var o,s;let t=this.messages.find(a=>a.id===e.id),r=[(o=t==null?void 0:t.toolCall)==null?void 0:o.startedAt,(s=e.toolCall)==null?void 0:s.startedAt];for(let a of r)if(typeof a=="number"&&Number.isFinite(a))return a;return Date.now()}isSuggestRepliesAlreadyResolved(e){var r,o;if(((r=e.toolCall)==null?void 0:r.name)!==_r)return!1;let t=this.messages.find(s=>s.id===e.id);return((o=(t!=null?t:e).agentMetadata)==null?void 0:o.suggestRepliesResolved)===!0}markWebMcpToolRunning(e){let t=this.resolveWebMcpToolStartedAt(e);return this.upsertMessage({...e,streaming:!0,agentMetadata:{...e.agentMetadata,awaitingLocalTool:!1},toolCall:e.toolCall?{...e.toolCall,status:"running",startedAt:t,completedAt:void 0,duration:void 0,durationMs:void 0}:e.toolCall}),t}markWebMcpToolComplete(e,t,r,o=Date.now(),s){this.messages.some(a=>a.id===e.id)&&this.upsertMessage({...e,streaming:!1,agentMetadata:{...e.agentMetadata,awaitingLocalTool:!1,...s},toolCall:e.toolCall?{...e.toolCall,status:"complete",result:t,startedAt:r,completedAt:o,duration:void 0,durationMs:Math.max(0,o-r)}:e.toolCall})}async resolveWebMcpToolCallBatch(e,t){var d,c,m,f;let r=[],o=[],s=new AbortController;this.webMcpResolveControllers.add(s),this.setStreaming(!0);let a=await Promise.all(t.map(async g=>{var W,C,I,D,B,E,z;let u=(W=g.toolCall)==null?void 0:W.name,v=(C=g.toolCall)==null?void 0:C.id;if(!u||!v)return null;let x=`${e}:${v}`;if(this.webMcpInflightKeys.has(x)||this.webMcpResolvedKeys.has(x)||this.isSuggestRepliesAlreadyResolved(g))return null;this.webMcpInflightKeys.add(x),r.push(x);let P=this.markWebMcpToolRunning(g),T=(D=(I=g.agentMetadata)==null?void 0:I.webMcpToolCallId)!=null?D:u;if(u===_r)return{dedupeKey:x,resumeKey:T,output:xi(),toolMessage:g,startedAt:P,completedAt:Date.now()};let M=new AbortController;this.webMcpResolveControllers.add(M),o.push(M);let N=this.client.executeWebMcpToolCall(u,(B=g.toolCall)==null?void 0:B.args,M.signal),k;if(!N)k={isError:!0,content:[{type:"text",text:"WebMCP not enabled on this widget."}]};else try{k=await N}catch(j){let te=j instanceof Error&&(j.name==="AbortError"||j.message.includes("aborted")||j.message.includes("abort"));return te||(z=(E=this.callbacks).onError)==null||z.call(E,j instanceof Error?j:new Error(String(j))),this.markWebMcpToolComplete(g,Ns(te?"Aborted by cancel()":wu(j)),P),this.webMcpInflightKeys.delete(x),null}return M.signal.aborted?(this.markWebMcpToolComplete(g,Ns("Aborted by cancel()"),P),this.webMcpInflightKeys.delete(x),null):{dedupeKey:x,resumeKey:T,output:k,toolMessage:g,startedAt:P,completedAt:Date.now()}})),i=[];try{if(i=a.filter(v=>v!==null),i.length===0)return;let g={};for(let v of i)g[v.resumeKey]=v.output;let u=await this.client.resumeFlow(e,g,{signal:s.signal});if(!u.ok){let v=await u.json().catch(()=>null);throw new Error((d=v==null?void 0:v.error)!=null?d:`Resume failed: ${u.status}`)}for(let v of i)this.webMcpResolvedKeys.add(v.dedupeKey),this.markWebMcpToolComplete(v.toolMessage,v.output,v.startedAt,v.completedAt,((c=v.toolMessage.toolCall)==null?void 0:c.name)===_r?{suggestRepliesResolved:!0}:void 0);u.body&&await this.connectStream(u.body,{allowReentry:!0})}catch(g){if(!(g instanceof Error&&(g.name==="AbortError"||g.message.includes("aborted")||g.message.includes("abort"))))(f=(m=this.callbacks).onError)==null||f.call(m,g instanceof Error?g:new Error(String(g)));else for(let v of i)this.markWebMcpToolComplete(v.toolMessage,Ns("Aborted by cancel()"),v.startedAt)}finally{for(let g of r)this.webMcpInflightKeys.delete(g);for(let g of o)this.webMcpResolveControllers.delete(g);this.webMcpResolveControllers.delete(s),this.webMcpResolveControllers.size===0&&!this.abortController&&this.setStreaming(!1)}}async resolveWebMcpToolCall(e){var v,x,P,T,M,N,k,W,C,I,D,B;let t=(v=e.agentMetadata)==null?void 0:v.executionId,r=(x=e.toolCall)==null?void 0:x.name,o=(P=e.toolCall)==null?void 0:P.id;if(!t){(M=(T=this.callbacks).onError)==null||M.call(T,new Error("WebMCP step_await missing executionId: dispatch left paused."));return}if(!r)return;if(!o){let E=`${t}:__no_tool_id__:${r}`;if(this.webMcpInflightKeys.has(E)||this.webMcpResolvedKeys.has(E))return;this.webMcpInflightKeys.add(E);try{await this.resumeWithToolOutput(t,r,{isError:!0,content:[{type:"text",text:"WebMCP step_await missing toolCall.id: cannot execute the page tool."}]}),this.webMcpResolvedKeys.add(E)}catch(z){(k=(N=this.callbacks).onError)==null||k.call(N,z instanceof Error?z:new Error(String(z)))}finally{this.webMcpInflightKeys.delete(E)}return}let s=`${t}:${o}`;if(this.webMcpInflightKeys.has(s)||this.webMcpResolvedKeys.has(s)||this.isSuggestRepliesAlreadyResolved(e))return;this.webMcpInflightKeys.add(s);let a=this.markWebMcpToolRunning(e),i=new AbortController;this.webMcpResolveControllers.add(i);let{signal:d}=i;this.setStreaming(!0);let c=r===_r,m=(W=e.toolCall)==null?void 0:W.args,f=c?null:this.client.executeWebMcpToolCall(r,m,d),g="execute",u=a;try{let E;if(c?E=xi():f?E=await f:E={isError:!0,content:[{type:"text",text:"WebMCP not enabled on this widget."}]},u=Date.now(),d.aborted){this.markWebMcpToolComplete(e,Ns("Aborted by cancel()"),a);return}let z=(I=(C=e.agentMetadata)==null?void 0:C.webMcpToolCallId)!=null?I:r;g="resume",await this.resumeWithToolOutput(t,z,E,{onHttpOk:()=>{this.webMcpResolvedKeys.add(s),this.markWebMcpToolComplete(e,E,a,u,c?{suggestRepliesResolved:!0}:void 0)},signal:d})}catch(E){let z=E instanceof Error&&(E.name==="AbortError"||E.message.includes("aborted")||E.message.includes("abort"));(g==="execute"||z||d.aborted)&&this.markWebMcpToolComplete(e,Ns(z||d.aborted?"Aborted by cancel()":wu(E)),a),z||(B=(D=this.callbacks).onError)==null||B.call(D,E instanceof Error?E:new Error(String(E)))}finally{this.webMcpInflightKeys.delete(s),this.webMcpResolveControllers.delete(i),this.webMcpResolveControllers.size===0&&!this.abortController&&this.setStreaming(!1)}}async resumeWithToolOutput(e,t,r,o){var a,i;let s=await this.client.resumeFlow(e,{[t]:r},{signal:o==null?void 0:o.signal});if(!s.ok){let d=await s.json().catch(()=>null);throw new Error((a=d==null?void 0:d.error)!=null?a:`Resume failed: ${s.status}`)}(i=o==null?void 0:o.onHttpOk)==null||i.call(o),s.body?await this.connectStream(s.body,{allowReentry:!0}):this.webMcpResolveControllers.size===0&&(this.setStreaming(!1),this.abortController=null)}abortWebMcpResolves(){for(let e of this.webMcpResolveControllers)e.abort();this.webMcpResolveControllers.clear();for(let e of[...this.webMcpApprovalResolvers.keys()])this.resolveWebMcpApproval(e,"denied");this.webMcpAwaitBatches.clear(),this.webMcpEpoch++}cancel(){var e;(e=this.abortController)==null||e.abort(),this.abortController=null,this.abortWebMcpResolves(),this.webMcpInflightKeys.clear(),this.stopSpeaking(),this.stopVoicePlayback(),this.setStreaming(!1),this.setStatus("idle")}clearMessages(){var e;this.stopSpeaking(),(e=this.abortController)==null||e.abort(),this.abortController=null,this.abortWebMcpResolves(),this.messages=[],this.agentExecution=null,this.clearArtifactState(),this.webMcpInflightKeys.clear(),this.webMcpResolvedKeys.clear(),this.client.resetClientToolsFingerprint(),this.setStreaming(!1),this.setStatus("idle"),this.callbacks.onMessagesChanged([...this.messages])}getArtifacts(){return[...this.artifacts.values()]}getArtifactById(e){return this.artifacts.get(e)}getSelectedArtifactId(){return this.selectedArtifactId}selectArtifact(e){this.selectedArtifactId=e,this.emitArtifactsState()}clearArtifacts(){this.clearArtifactState()}upsertArtifact(e){var o;let t=e.id||`art_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,9)}`;if(e.artifactType==="markdown"){let s={id:t,artifactType:"markdown",title:e.title,status:"complete",markdown:e.content};return this.artifacts.set(t,s),this.selectedArtifactId=t,this.emitArtifactsState(),s}let r={id:t,artifactType:"component",title:e.title,status:"complete",component:e.component,props:(o=e.props)!=null?o:{}};return this.artifacts.set(t,r),this.selectedArtifactId=t,this.emitArtifactsState(),r}clearArtifactState(){this.artifacts.size===0&&this.selectedArtifactId===null||(this.artifacts.clear(),this.selectedArtifactId=null,this.emitArtifactsState())}emitArtifactsState(){var e,t;(t=(e=this.callbacks).onArtifactsState)==null||t.call(e,{artifacts:[...this.artifacts.values()],selectedId:this.selectedArtifactId})}applyArtifactStreamEvent(e){var t,r;switch(e.type){case"artifact_start":{e.artifactType==="markdown"?this.artifacts.set(e.id,{id:e.id,artifactType:"markdown",title:e.title,status:"streaming",markdown:""}):this.artifacts.set(e.id,{id:e.id,artifactType:"component",title:e.title,status:"streaming",component:(t=e.component)!=null?t:"",props:{}}),this.selectedArtifactId=e.id;break}case"artifact_delta":{let o=this.artifacts.get(e.id);(o==null?void 0:o.artifactType)==="markdown"&&(o.markdown=((r=o.markdown)!=null?r:"")+e.artDelta);break}case"artifact_update":{let o=this.artifacts.get(e.id);(o==null?void 0:o.artifactType)==="component"&&(o.props={...o.props,...e.props},e.component&&(o.component=e.component));break}case"artifact_complete":{let o=this.artifacts.get(e.id);o&&(o.status="complete");break}default:return}this.emitArtifactsState()}hydrateMessages(e){var t;(t=this.abortController)==null||t.abort(),this.abortController=null,this.abortWebMcpResolves(),this.webMcpInflightKeys.clear(),this.webMcpResolvedKeys.clear(),this.messages=this.sortMessages(e.map(r=>{var o;return{...r,streaming:!1,sequence:(o=r.sequence)!=null?o:this.nextSequence()}})),this.setStreaming(!1),this.setStatus("idle"),this.callbacks.onMessagesChanged([...this.messages])}hydrateArtifacts(e,t=null){this.artifacts.clear();for(let r of e)this.artifacts.set(r.id,{...r,status:"complete"});this.selectedArtifactId=t,this.emitArtifactsState()}setStatus(e){this.status!==e&&(this.status=e,this.callbacks.onStatusChanged(e))}setStreaming(e){if(this.streaming===e)return;let t=this.streaming;this.streaming=e,this.callbacks.onStreamingChanged(e),t&&!e&&this.speakLatestAssistantMessage()}speakLatestAssistantMessage(){let e=this.config.textToSpeech;if(!(e!=null&&e.enabled)||!(!e.provider||e.provider==="browser"||e.provider==="runtype"&&e.browserFallback))return;let r=[...this.messages].reverse().find(s=>s.role==="assistant"&&s.content&&!s.voiceProcessing);if(!r)return;if(this.ttsSpokenMessageIds.has(r.id)){this.ttsSpokenMessageIds.delete(r.id);return}let o=ki(r.content);o.trim()&&this.readAloud.play(r.id,{text:o,voice:e.voice,rate:e.rate,pitch:e.pitch})}static pickBestVoice(e){return Sa(e)}toggleReadAloud(e){let t=this.messages.find(s=>s.id===e);if(!t||t.role!=="assistant")return;let r=ki(t.content||"");if(!r.trim())return;let o=this.config.textToSpeech;this.readAloud.toggle(e,{text:r,voice:o==null?void 0:o.voice,rate:o==null?void 0:o.rate,pitch:o==null?void 0:o.pitch})}getReadAloudState(e){return this.readAloud.stateFor(e)}onReadAloudChange(e){return this.readAloud.onChange(e)}stopSpeaking(){this.readAloud.stop(),typeof window!="undefined"&&"speechSynthesis"in window&&window.speechSynthesis.cancel()}appendMessage(e){let t=this.ensureSequence(e);this.messages=this.sortMessages([...this.messages,t]),this.callbacks.onMessagesChanged([...this.messages])}upsertMessage(e){let t=this.ensureSequence(e),r=this.messages.findIndex(o=>o.id===t.id);if(r===-1){this.appendMessage(t);return}this.messages=this.messages.map((o,s)=>{var m,f,g,u,v,x,P,T,M,N,k,W,C,I,D;if(s!==r)return o;let a={...o,...t};if(((m=o.agentMetadata)==null?void 0:m.askUserQuestionAnswered)===!0&&t.agentMetadata&&(a.agentMetadata={...t.agentMetadata,askUserQuestionAnswered:!0,...o.agentMetadata.askUserQuestionAnswers?{askUserQuestionAnswers:o.agentMetadata.askUserQuestionAnswers}:{},awaitingLocalTool:!1}),((f=o.agentMetadata)==null?void 0:f.suggestRepliesResolved)===!0&&t.agentMetadata&&(a.agentMetadata={...(g=a.agentMetadata)!=null?g:t.agentMetadata,suggestRepliesResolved:!0,awaitingLocalTool:!1}),o.approval&&t.approval&&o.approval.id===t.approval.id){let B=o.approval,E=t.approval;a.approval={...B,...E,executionId:E.executionId||B.executionId,toolName:E.toolName||B.toolName,description:E.description||B.description,toolType:(u=E.toolType)!=null?u:B.toolType,reason:(v=E.reason)!=null?v:B.reason,parameters:(x=E.parameters)!=null?x:B.parameters}}let i=(P=t.toolCall)==null?void 0:P.name,d=(T=t.agentMetadata)==null?void 0:T.executionId,c=(M=t.toolCall)==null?void 0:M.id;if(i&&Cu(i)&&d&&c&&((N=t.agentMetadata)==null?void 0:N.awaitingLocalTool)===!0){let B=`${d}:${c}`,E=this.webMcpInflightKeys.has(B),z=this.webMcpResolvedKeys.has(B),j=(k=o.toolCall)==null?void 0:k.name,te=((W=o.agentMetadata)==null?void 0:W.executionId)===d&&((C=o.toolCall)==null?void 0:C.id)===c&&j!==void 0&&Cu(j)&&((I=o.toolCall)==null?void 0:I.status)==="complete";(E||z||te)&&(a.agentMetadata={...(D=a.agentMetadata)!=null?D:{},awaitingLocalTool:!1},a.toolCall=o.toolCall,a.streaming=o.streaming)}return a}),this.messages=this.sortMessages(this.messages),this.callbacks.onMessagesChanged([...this.messages])}ensureSequence(e){return e.sequence!==void 0?{...e}:{...e,sequence:this.nextSequence()}}nextSequence(){return this.sequenceCounter++}sortMessages(e){return[...e].sort((t,r)=>{var d,c;let o=new Date(t.createdAt).getTime(),s=new Date(r.createdAt).getTime();if(!Number.isNaN(o)&&!Number.isNaN(s)&&o!==s)return o-s;let a=(d=t.sequence)!=null?d:0,i=(c=r.sequence)!=null?c:0;return a!==i?a-i:t.id.localeCompare(r.id)})}};import{Activity as Cf,ArrowDown as Af,ArrowUp as Sf,ArrowUpRight as Tf,Bot as Mf,ChevronDown as Ef,ChevronUp as kf,ChevronRight as Lf,ChevronLeft as Pf,Check as If,Clipboard as Wf,ClipboardCopy as Rf,Copy as Hf,File as Bf,FileCode as Df,FileSpreadsheet as Nf,FileText as Ff,ImagePlus as Of,Loader as _f,LoaderCircle as $f,Mic as Uf,Paperclip as qf,RefreshCw as zf,Search as jf,Send as Vf,ShieldAlert as Kf,ShieldCheck as Gf,ShieldX as Qf,Square as Xf,ThumbsDown as Jf,ThumbsUp as Yf,Upload as Zf,Volume2 as eh,X as th,User as nh,Mail as rh,Phone as oh,Calendar as sh,Clock as ah,Building as ih,MapPin as lh,Lock as ch,Key as dh,CreditCard as ph,AtSign as uh,Hash as mh,Globe as gh,Link as fh,CircleCheck as hh,CircleX as yh,TriangleAlert as bh,Info as vh,Ban as xh,Shield as wh,ArrowLeft as Ch,ArrowRight as Ah,ExternalLink as Sh,Ellipsis as Th,EllipsisVertical as Mh,Menu as Eh,House as kh,Plus as Lh,Minus as Ph,Pencil as Ih,Trash as Wh,Trash2 as Rh,Save as Hh,Download as Bh,Share as Dh,Funnel as Nh,Settings as Fh,RotateCw as Oh,Maximize as _h,Minimize as $h,ShoppingCart as Uh,ShoppingBag as qh,Package as zh,Truck as jh,Tag as Vh,Gift as Kh,Receipt as Gh,Wallet as Qh,Store as Xh,DollarSign as Jh,Percent as Yh,Play as Zh,Pause as ey,VolumeX as ty,Camera as ny,Image as ry,Film as oy,Headphones as sy,MessageCircle as ay,MessageSquare as iy,Bell as ly,Heart as cy,Star as dy,Eye as py,EyeOff as uy,Bookmark as my,CalendarDays as gy,History as fy,Timer as hy,Folder as yy,FolderOpen as by,Files as vy,Sparkles as xy,Zap as wy,Sun as Cy,Moon as Ay,Flag as Sy,Monitor as Ty,Smartphone as My}from"lucide";var Ey={activity:Cf,"arrow-down":Af,"arrow-up":Sf,"arrow-up-right":Tf,bot:Mf,"chevron-down":Ef,"chevron-up":kf,"chevron-right":Lf,"chevron-left":Pf,check:If,clipboard:Wf,"clipboard-copy":Rf,copy:Hf,file:Bf,"file-code":Df,"file-spreadsheet":Nf,"file-text":Ff,"image-plus":Of,loader:_f,"loader-circle":$f,mic:Uf,paperclip:qf,"refresh-cw":zf,search:jf,send:Vf,"shield-alert":Kf,"shield-check":Gf,"shield-x":Qf,square:Xf,"thumbs-down":Jf,"thumbs-up":Yf,upload:Zf,"volume-2":eh,x:th,user:nh,mail:rh,phone:oh,calendar:sh,clock:ah,building:ih,"map-pin":lh,lock:ch,key:dh,"credit-card":ph,"at-sign":uh,hash:mh,globe:gh,link:fh,"circle-check":hh,"circle-x":yh,"triangle-alert":bh,info:vh,ban:xh,shield:wh,"arrow-left":Ch,"arrow-right":Ah,"external-link":Sh,ellipsis:Th,"ellipsis-vertical":Mh,menu:Eh,house:kh,plus:Lh,minus:Ph,pencil:Ih,trash:Wh,"trash-2":Rh,save:Hh,download:Bh,share:Dh,funnel:Nh,settings:Fh,"rotate-cw":Oh,maximize:_h,minimize:$h,"shopping-cart":Uh,"shopping-bag":qh,package:zh,truck:jh,tag:Vh,gift:Kh,receipt:Gh,wallet:Qh,store:Xh,"dollar-sign":Jh,percent:Yh,play:Zh,pause:ey,"volume-x":ty,camera:ny,image:ry,film:oy,headphones:sy,"message-circle":ay,"message-square":iy,bell:ly,heart:cy,star:dy,eye:py,"eye-off":uy,bookmark:my,"calendar-days":gy,history:fy,timer:hy,folder:yy,"folder-open":by,files:vy,sparkles:xy,zap:wy,sun:Cy,moon:Ay,flag:Sy,monitor:Ty,smartphone:My},Ce=(n,e=24,t="currentColor",r=2)=>{let o=Ey[n];return o?ky(o,e,t,r):(console.warn(`Lucide icon "${n}" is not in the Persona registry. Add it to packages/widget/src/utils/icons.ts (see docs/icon-registry-shortlist.md).`),null)};function ky(n,e,t,r){if(!Array.isArray(n))return null;let o=document.createElementNS("http://www.w3.org/2000/svg","svg");return o.setAttribute("width",String(e)),o.setAttribute("height",String(e)),o.setAttribute("viewBox","0 0 24 24"),o.setAttribute("fill","none"),o.setAttribute("stroke",t),o.setAttribute("stroke-width",String(r)),o.setAttribute("stroke-linecap","round"),o.setAttribute("stroke-linejoin","round"),o.setAttribute("aria-hidden","true"),n.forEach(s=>{if(!Array.isArray(s)||s.length<2)return;let a=s[0],i=s[1];if(!i)return;let d=document.createElementNS("http://www.w3.org/2000/svg",a);Object.entries(i).forEach(([c,m])=>{c!=="stroke"&&d.setAttribute(c,String(m))}),o.appendChild(d)}),o}var ka={allowedTypes:$r,maxFileSize:10*1024*1024,maxFiles:4};function Ly(){return`attach_${Date.now()}_${Math.random().toString(36).substring(2,9)}`}function Py(n){return n==="application/pdf"||n.startsWith("text/")||n.includes("word")?"file-text":n.includes("excel")||n.includes("spreadsheet")?"file-spreadsheet":n==="application/json"?"file-code":"file"}var Fs=class n{constructor(e={}){this.attachments=[];this.previewsContainer=null;var t,r,o;this.config={allowedTypes:(t=e.allowedTypes)!=null?t:ka.allowedTypes,maxFileSize:(r=e.maxFileSize)!=null?r:ka.maxFileSize,maxFiles:(o=e.maxFiles)!=null?o:ka.maxFiles,onFileRejected:e.onFileRejected,onAttachmentsChange:e.onAttachmentsChange}}setPreviewsContainer(e){this.previewsContainer=e}updateConfig(e){e.allowedTypes!==void 0&&(this.config.allowedTypes=e.allowedTypes.length>0?e.allowedTypes:ka.allowedTypes),e.maxFileSize!==void 0&&(this.config.maxFileSize=e.maxFileSize),e.maxFiles!==void 0&&(this.config.maxFiles=e.maxFiles),e.onFileRejected!==void 0&&(this.config.onFileRejected=e.onFileRejected),e.onAttachmentsChange!==void 0&&(this.config.onAttachmentsChange=e.onAttachmentsChange)}getAttachments(){return[...this.attachments]}getContentParts(){return this.attachments.map(e=>e.contentPart)}hasAttachments(){return this.attachments.length>0}count(){return this.attachments.length}async handleFileSelect(e){!e||e.length===0||await this.handleFiles(Array.from(e))}async handleFiles(e){var t,r,o,s,a,i,d;if(e.length){for(let c of e){if(this.attachments.length>=this.config.maxFiles){(r=(t=this.config).onFileRejected)==null||r.call(t,c,"count");continue}let m=du(c,this.config.allowedTypes,this.config.maxFileSize);if(!m.valid){let f=(o=m.error)!=null&&o.includes("type")?"type":"size";(a=(s=this.config).onFileRejected)==null||a.call(s,c,f);continue}try{let f=await cu(c),g=Aa(c)?URL.createObjectURL(c):null,u={id:Ly(),file:c,previewUrl:g,contentPart:f};this.attachments.push(u),this.renderPreview(u)}catch(f){console.error("[AttachmentManager] Failed to process file:",f)}}this.updatePreviewsVisibility(),(d=(i=this.config).onAttachmentsChange)==null||d.call(i,this.getAttachments())}}removeAttachment(e){var s,a,i;let t=this.attachments.findIndex(d=>d.id===e);if(t===-1)return;let r=this.attachments[t];r.previewUrl&&URL.revokeObjectURL(r.previewUrl),this.attachments.splice(t,1);let o=(s=this.previewsContainer)==null?void 0:s.querySelector(`[data-attachment-id="${e}"]`);o&&o.remove(),this.updatePreviewsVisibility(),(i=(a=this.config).onAttachmentsChange)==null||i.call(a,this.getAttachments())}clearAttachments(){var e,t;for(let r of this.attachments)r.previewUrl&&URL.revokeObjectURL(r.previewUrl);this.attachments=[],this.previewsContainer&&(this.previewsContainer.innerHTML=""),this.updatePreviewsVisibility(),(t=(e=this.config).onAttachmentsChange)==null||t.call(e,this.getAttachments())}renderPreview(e){if(!this.previewsContainer)return;let t=Aa(e.file),r=b("div","persona-attachment-preview persona-relative persona-inline-block");if(r.setAttribute("data-attachment-id",e.id),r.style.width="48px",r.style.height="48px",t&&e.previewUrl){let a=b("img");a.src=e.previewUrl,a.alt=e.file.name,a.className="persona-w-full persona-h-full persona-object-cover persona-rounded-lg persona-border persona-border-gray-200",a.style.width="48px",a.style.height="48px",a.style.objectFit="cover",a.style.borderRadius="8px",r.appendChild(a)}else{let a=b("div");a.style.width="48px",a.style.height="48px",a.style.borderRadius="8px",a.style.backgroundColor="var(--persona-container, #f3f4f6)",a.style.border="1px solid var(--persona-border, #e5e7eb)",a.style.display="flex",a.style.flexDirection="column",a.style.alignItems="center",a.style.justifyContent="center",a.style.gap="2px",a.style.overflow="hidden";let i=Py(e.file.type),d=Ce(i,20,"var(--persona-muted, #6b7280)",1.5);d&&a.appendChild(d);let c=b("span");c.textContent=pu(e.file.type,e.file.name),c.style.fontSize="8px",c.style.fontWeight="600",c.style.color="var(--persona-muted, #6b7280)",c.style.textTransform="uppercase",c.style.lineHeight="1",a.appendChild(c),r.appendChild(a)}let o=b("button","persona-attachment-remove persona-absolute persona-flex persona-items-center persona-justify-center");o.type="button",o.setAttribute("aria-label","Remove attachment"),o.style.position="absolute",o.style.top="-4px",o.style.right="-4px",o.style.width="18px",o.style.height="18px",o.style.borderRadius="50%",o.style.backgroundColor="var(--persona-palette-colors-black-alpha-60, rgba(0, 0, 0, 0.6))",o.style.border="none",o.style.cursor="pointer",o.style.display="flex",o.style.alignItems="center",o.style.justifyContent="center",o.style.padding="0";let s=Ce("x",10,"var(--persona-text-inverse, #ffffff)",2);s?o.appendChild(s):(o.textContent="\xD7",o.style.color="var(--persona-text-inverse, #ffffff)",o.style.fontSize="14px",o.style.lineHeight="1"),o.addEventListener("click",a=>{a.preventDefault(),a.stopPropagation(),this.removeAttachment(e.id)}),r.appendChild(o),this.previewsContainer.appendChild(r)}updatePreviewsVisibility(){this.previewsContainer&&(this.previewsContainer.style.display=this.attachments.length>0?"flex":"none")}static fromConfig(e,t){return new n({allowedTypes:e==null?void 0:e.allowedTypes,maxFileSize:e==null?void 0:e.maxFileSize,maxFiles:e==null?void 0:e.maxFiles,onFileRejected:e==null?void 0:e.onFileRejected,onAttachmentsChange:t})}};var Au=n=>typeof n=="object"&&n!==null&&!Array.isArray(n);function Os(n,e){if(!n)return e;if(!e)return n;let t={...n};for(let[r,o]of Object.entries(e)){let s=t[r];Au(s)&&Au(o)?t[r]=Os(s,o):t[r]=o}return t}var Ur="min(440px, calc(100vw - 24px))",Tu="440px",Iy={enabled:!0,mountMode:"floating",dock:{side:"right",width:"420px"},title:"Chat Assistant",subtitle:"Here to help you get answers fast",agentIconText:"\u{1F4AC}",agentIconName:"bot",headerIconName:"bot",position:"bottom-right",width:Ur,heightOffset:0,autoExpand:!1,callToActionIconHidden:!1,agentIconSize:"40px",headerIconSize:"40px",closeButtonSize:"32px",closeButtonPaddingX:"0px",closeButtonPaddingY:"0px",callToActionIconName:"arrow-up-right",callToActionIconText:"",callToActionIconSize:"32px",callToActionIconPadding:"5px",callToActionIconColor:void 0,callToActionIconBackgroundColor:void 0,closeButtonBackgroundColor:"transparent",clearChat:{backgroundColor:"transparent",borderColor:"transparent",enabled:!0,placement:"inline",iconName:"refresh-cw",size:"32px",showTooltip:!0,tooltipText:"Clear chat",paddingX:"0px",paddingY:"0px"},headerIconHidden:!1,border:void 0,shadow:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)"},Dt={apiUrl:"https://api.runtype.com/api/chat/dispatch",clientToken:void 0,theme:void 0,darkTheme:void 0,colorScheme:"light",launcher:Iy,copy:{welcomeTitle:"Hello \u{1F44B}",welcomeSubtitle:"Ask anything about your account or products.",inputPlaceholder:"How can I help...",sendButtonLabel:"Send"},sendButton:{borderWidth:"0px",paddingX:"12px",paddingY:"10px",borderColor:void 0,useIcon:!0,iconText:"\u2191",size:"40px",showTooltip:!0,tooltipText:"Send message",iconName:"send"},statusIndicator:{visible:!0,idleText:"Online",connectingText:"Connecting\u2026",connectedText:"Streaming\u2026",errorText:"Offline"},voiceRecognition:{enabled:!0,pauseDuration:2e3,iconName:"mic",iconSize:"39px",borderWidth:"0px",paddingX:"9px",paddingY:"14px",iconColor:void 0,backgroundColor:"transparent",borderColor:"transparent",recordingIconColor:void 0,recordingBackgroundColor:void 0,recordingBorderColor:"transparent",showTooltip:!0,tooltipText:"Start voice recognition"},features:{showReasoning:!0,showToolCalls:!0,scrollToBottom:{enabled:!0,iconName:"arrow-down",label:""},scrollBehavior:{mode:"follow",anchorTopOffset:16},toolCallDisplay:{collapsedMode:"tool-call",activePreview:!1,grouped:!1,previewMaxLines:3,expandable:!0,loadingAnimation:"none"},reasoningDisplay:{activePreview:!1,previewMaxLines:3,expandable:!0,loadingAnimation:"none"},streamAnimation:{type:"none",placeholder:"none",speed:120,duration:1800},askUserQuestion:{enabled:!0,slideInMs:180,freeTextLabel:"Other\u2026",freeTextPlaceholder:"Type your answer\u2026",submitLabel:"Send"}},suggestionChips:["What can you help me with?","Tell me about your features","How does this work?"],suggestionChipsConfig:{fontFamily:"sans-serif",fontWeight:"500",paddingX:"12px",paddingY:"6px"},layout:{header:{layout:"default",showIcon:!0,showTitle:!0,showSubtitle:!0,showCloseButton:!0,showClearChat:!0},messages:{layout:"bubble",avatar:{show:!1,position:"left"},timestamp:{show:!1,position:"below"},groupConsecutive:!1},slots:{}},markdown:{options:{gfm:!0,breaks:!0},disableDefaultStyles:!1},messageActions:{enabled:!0,showCopy:!0,showUpvote:!1,showDownvote:!1,visibility:"hover",align:"right",layout:"pill-inside"},debug:!1};function Su(n,e){if(!(!n&&!e))return n?e?Os(n,e):n:e}function Mu(n){var e,t,r,o,s,a,i,d,c,m,f,g,u,v,x,P,T,M,N,k,W;return n?{...Dt,...n,theme:Su(Dt.theme,n.theme),darkTheme:Su(Dt.darkTheme,n.darkTheme),launcher:{...Dt.launcher,...n.launcher,dock:{...(e=Dt.launcher)==null?void 0:e.dock,...(t=n.launcher)==null?void 0:t.dock},clearChat:{...(r=Dt.launcher)==null?void 0:r.clearChat,...(o=n.launcher)==null?void 0:o.clearChat}},copy:{...Dt.copy,...n.copy},sendButton:{...Dt.sendButton,...n.sendButton},statusIndicator:{...Dt.statusIndicator,...n.statusIndicator},voiceRecognition:{...Dt.voiceRecognition,...n.voiceRecognition},features:(()=>{var ne,Q,ae,fe,re,V,ee,Ue,J,ie;let C=(ne=Dt.features)==null?void 0:ne.artifacts,I=(Q=n.features)==null?void 0:Q.artifacts,D=(ae=Dt.features)==null?void 0:ae.scrollToBottom,B=(fe=n.features)==null?void 0:fe.scrollToBottom,E=(re=Dt.features)==null?void 0:re.scrollBehavior,z=(V=n.features)==null?void 0:V.scrollBehavior,j=(ee=Dt.features)==null?void 0:ee.streamAnimation,te=(Ue=n.features)==null?void 0:Ue.streamAnimation,We=(J=Dt.features)==null?void 0:J.askUserQuestion,$e=(ie=n.features)==null?void 0:ie.askUserQuestion,ve=C===void 0&&I===void 0?void 0:{...C,...I,layout:{...C==null?void 0:C.layout,...I==null?void 0:I.layout}},Pe=D===void 0&&B===void 0?void 0:{...D,...B},Oe=E===void 0&&z===void 0?void 0:{...E,...z},Ae=j===void 0&&te===void 0?void 0:{...j,...te},be=We===void 0&&$e===void 0?void 0:{...We,...$e,styles:{...We==null?void 0:We.styles,...$e==null?void 0:$e.styles}};return{...Dt.features,...n.features,...Pe!==void 0?{scrollToBottom:Pe}:{},...Oe!==void 0?{scrollBehavior:Oe}:{},...ve!==void 0?{artifacts:ve}:{},...Ae!==void 0?{streamAnimation:Ae}:{},...be!==void 0?{askUserQuestion:be}:{}}})(),suggestionChips:(s=n.suggestionChips)!=null?s:Dt.suggestionChips,suggestionChipsConfig:{...Dt.suggestionChipsConfig,...n.suggestionChipsConfig},layout:{...Dt.layout,...n.layout,header:{...(a=Dt.layout)==null?void 0:a.header,...(i=n.layout)==null?void 0:i.header},messages:{...(d=Dt.layout)==null?void 0:d.messages,...(c=n.layout)==null?void 0:c.messages,avatar:{...(f=(m=Dt.layout)==null?void 0:m.messages)==null?void 0:f.avatar,...(u=(g=n.layout)==null?void 0:g.messages)==null?void 0:u.avatar},timestamp:{...(x=(v=Dt.layout)==null?void 0:v.messages)==null?void 0:x.timestamp,...(T=(P=n.layout)==null?void 0:P.messages)==null?void 0:T.timestamp}},slots:{...(M=Dt.layout)==null?void 0:M.slots,...(N=n.layout)==null?void 0:N.slots}},markdown:{...Dt.markdown,...n.markdown,options:{...(k=Dt.markdown)==null?void 0:k.options,...(W=n.markdown)==null?void 0:W.options}},messageActions:{...Dt.messageActions,...n.messageActions}}:Dt}var Wy={colors:{primary:{50:"#ffffff",100:"#f5f5f5",200:"#d4d4d4",300:"#a3a3a3",400:"#737373",500:"#171717",600:"#0f0f0f",700:"#0a0a0a",800:"#050505",900:"#030303",950:"#000000"},secondary:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},accent:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},success:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},warning:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},error:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},info:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"}},spacing:{0:"0px",1:"0.25rem",2:"0.5rem",3:"0.75rem",4:"1rem",5:"1.25rem",6:"1.5rem",8:"2rem",10:"2.5rem",12:"3rem",16:"4rem",20:"5rem",24:"6rem",32:"8rem",40:"10rem",48:"12rem",56:"14rem",64:"16rem"},typography:{fontFamily:{sans:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',serif:'Georgia, Cambria, "Times New Roman", Times, serif',mono:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{normal:"400",medium:"500",semibold:"600",bold:"700"},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.625"}},shadows:{none:"none",sm:"0 1px 2px 0 rgb(0 0 0 / 0.05)",md:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",lg:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",xl:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)","2xl":"0 25px 50px -12px rgb(0 0 0 / 0.25)"},borders:{none:"none",sm:"1px solid",md:"2px solid",lg:"4px solid"},radius:{none:"0px",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem",full:"9999px"}},Ry={colors:{primary:"palette.colors.primary.500",secondary:"palette.colors.secondary.500",accent:"palette.colors.primary.600",surface:"palette.colors.gray.50",background:"palette.colors.gray.50",container:"palette.colors.gray.50",text:"palette.colors.gray.900",textMuted:"palette.colors.gray.500",textInverse:"palette.colors.gray.50",border:"palette.colors.gray.200",divider:"palette.colors.gray.200",interactive:{default:"palette.colors.primary.600",hover:"palette.colors.primary.700",focus:"palette.colors.primary.600",active:"palette.colors.primary.600",disabled:"palette.colors.gray.300"},feedback:{success:"palette.colors.success.500",warning:"palette.colors.warning.500",error:"palette.colors.error.500",info:"palette.colors.info.500"}},spacing:{xs:"palette.spacing.1",sm:"palette.spacing.2",md:"palette.spacing.4",lg:"palette.spacing.6",xl:"palette.spacing.8","2xl":"palette.spacing.10"},typography:{fontFamily:"palette.typography.fontFamily.sans",fontSize:"palette.typography.fontSize.base",fontWeight:"palette.typography.fontWeight.normal",lineHeight:"palette.typography.lineHeight.normal"}},Hy={button:{primary:{background:"palette.colors.primary.500",foreground:"palette.colors.primary.50",borderRadius:"palette.radius.lg",padding:"semantic.spacing.md"},secondary:{background:"semantic.colors.surface",foreground:"semantic.colors.secondary",borderRadius:"palette.radius.lg",padding:"semantic.spacing.md"},ghost:{background:"transparent",foreground:"semantic.colors.text",borderRadius:"palette.radius.md",padding:"semantic.spacing.sm"}},input:{background:"palette.colors.gray.50",placeholder:"palette.colors.gray.400",borderRadius:"palette.radius.lg",padding:"semantic.spacing.md",focus:{border:"palette.colors.gray.400",ring:"palette.colors.gray.400"}},launcher:{background:"palette.colors.primary.500",foreground:"palette.colors.primary.50",border:"palette.colors.gray.200",size:"60px",iconSize:"28px",borderRadius:"palette.radius.full",shadow:"palette.shadows.lg"},panel:{width:Ur,maxWidth:Tu,height:"600px",maxHeight:"calc(100vh - 80px)",borderRadius:"palette.radius.xl",shadow:"palette.shadows.xl"},header:{background:"palette.colors.primary.500",border:"palette.colors.primary.600",borderRadius:"palette.radius.xl palette.radius.xl 0 0",padding:"semantic.spacing.md",iconBackground:"palette.colors.primary.600",iconForeground:"palette.colors.primary.50",titleForeground:"palette.colors.primary.50",subtitleForeground:"palette.colors.primary.200",actionIconForeground:"palette.colors.primary.200"},message:{user:{background:"palette.colors.primary.500",text:"palette.colors.primary.50",borderRadius:"palette.radius.lg",shadow:"palette.shadows.sm"},assistant:{background:"palette.colors.gray.50",text:"palette.colors.gray.900",borderRadius:"palette.radius.lg",border:"palette.colors.gray.200",shadow:"palette.shadows.sm"},border:"semantic.colors.border"},introCard:{background:"semantic.colors.surface",borderRadius:"palette.radius.2xl",padding:"semantic.spacing.lg",shadow:"0 5px 15px rgba(15, 23, 42, 0.08)"},toolBubble:{shadow:"palette.shadows.sm"},reasoningBubble:{shadow:"palette.shadows.sm"},composer:{shadow:"palette.shadows.none"},markdown:{inlineCode:{background:"palette.colors.gray.50",foreground:"palette.colors.gray.900"},link:{foreground:"palette.colors.primary.600"},prose:{fontFamily:"inherit"},codeBlock:{background:"semantic.colors.container",borderColor:"semantic.colors.border",textColor:"inherit"},table:{headerBackground:"semantic.colors.container",borderColor:"semantic.colors.border"},hr:{color:"semantic.colors.divider"},blockquote:{borderColor:"palette.colors.gray.900",background:"transparent",textColor:"palette.colors.gray.500"}},collapsibleWidget:{container:"palette.colors.gray.50",surface:"semantic.colors.surface",border:"semantic.colors.border"},voice:{recording:{indicator:"palette.colors.error.500",background:"palette.colors.error.50",border:"palette.colors.error.200"},processing:{icon:"palette.colors.primary.500",background:"palette.colors.primary.50"},speaking:{icon:"palette.colors.success.500"}},approval:{requested:{background:"palette.colors.warning.50",border:"palette.colors.warning.200",text:"palette.colors.gray.900",shadow:"0 5px 15px rgba(15, 23, 42, 0.08)"},approve:{background:"palette.colors.success.500",foreground:"palette.colors.gray.50",borderRadius:"palette.radius.md",padding:"semantic.spacing.sm"},deny:{background:"palette.colors.error.500",foreground:"palette.colors.gray.50",borderRadius:"palette.radius.md",padding:"semantic.spacing.sm"}},attachment:{image:{background:"palette.colors.gray.100",border:"palette.colors.gray.200"}},scrollToBottom:{background:"components.button.primary.background",foreground:"components.button.primary.foreground",border:"semantic.colors.primary",size:"40px",borderRadius:"palette.radius.full",shadow:"palette.shadows.sm",padding:"0.5rem 0.875rem",gap:"0.5rem",fontSize:"0.875rem",iconSize:"14px"},artifact:{pane:{background:"semantic.colors.container",toolbarBackground:"semantic.colors.container"}}};function os(n,e){if(!e.startsWith("palette.")&&!e.startsWith("semantic.")&&!e.startsWith("components."))return e;let t=e.split("."),r=n;for(let o of t){if(r==null)return;r=r[o]}return typeof r=="string"&&(r.startsWith("palette.")||r.startsWith("semantic.")||r.startsWith("components."))?os(n,r):r}function Eu(n){let e={};function t(r,o){for(let[s,a]of Object.entries(r)){let i=`${o}.${s}`;if(typeof a=="string"){let d=os(n,a);d!==void 0&&(e[i]={path:i,value:d,type:o.includes("color")?"color":o.includes("spacing")?"spacing":o.includes("typography")?"typography":o.includes("shadow")?"shadow":o.includes("border")?"border":"color"})}else typeof a=="object"&&a!==null&&t(a,i)}}return t(n.palette,"palette"),t(n.semantic,"semantic"),t(n.components,"components"),e}function By(n){let e=[],t=[];return n.palette||e.push({path:"palette",message:"Theme must include a palette",severity:"error"}),n.semantic||t.push({path:"semantic",message:"No semantic tokens defined - defaults will be used",severity:"warning"}),n.components||t.push({path:"components",message:"No component tokens defined - defaults will be used",severity:"warning"}),{valid:e.length===0,errors:e,warnings:t}}function ku(n,e){let t={...n};for(let[r,o]of Object.entries(e)){let s=t[r];s&&typeof s=="object"&&!Array.isArray(s)&&o&&typeof o=="object"&&!Array.isArray(o)?t[r]=ku(s,o):t[r]=o}return t}function Dy(n,e){return e?ku(n,e):n}function Po(n,e={}){var o,s,a,i,d,c,m,f,g,u,v,x,P;let t={palette:Wy,semantic:Ry,components:Hy},r={palette:{...t.palette,...n==null?void 0:n.palette,colors:{...t.palette.colors,...(o=n==null?void 0:n.palette)==null?void 0:o.colors},spacing:{...t.palette.spacing,...(s=n==null?void 0:n.palette)==null?void 0:s.spacing},typography:{...t.palette.typography,...(a=n==null?void 0:n.palette)==null?void 0:a.typography},shadows:{...t.palette.shadows,...(i=n==null?void 0:n.palette)==null?void 0:i.shadows},borders:{...t.palette.borders,...(d=n==null?void 0:n.palette)==null?void 0:d.borders},radius:{...t.palette.radius,...(c=n==null?void 0:n.palette)==null?void 0:c.radius}},semantic:{...t.semantic,...n==null?void 0:n.semantic,colors:{...t.semantic.colors,...(m=n==null?void 0:n.semantic)==null?void 0:m.colors,interactive:{...t.semantic.colors.interactive,...(g=(f=n==null?void 0:n.semantic)==null?void 0:f.colors)==null?void 0:g.interactive},feedback:{...t.semantic.colors.feedback,...(v=(u=n==null?void 0:n.semantic)==null?void 0:u.colors)==null?void 0:v.feedback}},spacing:{...t.semantic.spacing,...(x=n==null?void 0:n.semantic)==null?void 0:x.spacing},typography:{...t.semantic.typography,...(P=n==null?void 0:n.semantic)==null?void 0:P.typography}},components:Dy(t.components,n==null?void 0:n.components)};if(e.validate!==!1){let T=By(r);if(!T.valid)throw new Error(`Theme validation failed: ${T.errors.map(M=>M.message).join(", ")}`)}if(e.plugins)for(let T of e.plugins)r=T.transform(r);return r}function Lu(n){var x,P,T,M,N,k,W,C,I,D,B,E,z,j,te,We,$e,ve,Pe,Oe,Ae,be,ne,Q,ae,fe,re,V,ee,Ue,J,ie,Le,at,it,nt,Me,de,Qe,X,le,xe,ze,Lt,Se,ue,gn,Pt,nn,fr,fn,je,S,pe,ke,Te,Re,Ye,Ke,pt,It,U,rt,K,ce,Ee,bt,Jt,Yt,dn,Rt,Ze,Wt,lt,Vt,Xn,Cn,Zt,Pn,hr,vt,Dn,yr,Lr,ar,ht,co,br,po,In,Bo,zr,Pr,jr,Vr,uo,mo,Kr,wt,Nn,Fn,An,At,Jn,Yn,On,Gr,Ir,Qr,_n,Ht,Sn,Zn,Xr,Wr,Jr,vr,$n;let e=Eu(n),t={};for(let[he,ct]of Object.entries(e)){let Gt=he.replace(/\./g,"-");t[`--persona-${Gt}`]=ct.value}t["--persona-primary"]=(x=t["--persona-semantic-colors-primary"])!=null?x:t["--persona-palette-colors-primary-500"],t["--persona-secondary"]=(P=t["--persona-semantic-colors-secondary"])!=null?P:t["--persona-palette-colors-secondary-500"],t["--persona-accent"]=(T=t["--persona-semantic-colors-accent"])!=null?T:t["--persona-palette-colors-accent-500"],t["--persona-surface"]=(M=t["--persona-semantic-colors-surface"])!=null?M:t["--persona-palette-colors-gray-50"],t["--persona-background"]=(N=t["--persona-semantic-colors-background"])!=null?N:t["--persona-palette-colors-gray-50"],t["--persona-container"]=(k=t["--persona-semantic-colors-container"])!=null?k:t["--persona-palette-colors-gray-100"],t["--persona-text"]=(W=t["--persona-semantic-colors-text"])!=null?W:t["--persona-palette-colors-gray-900"],t["--persona-text-muted"]=(C=t["--persona-semantic-colors-text-muted"])!=null?C:t["--persona-palette-colors-gray-500"],t["--persona-text-inverse"]=(I=t["--persona-semantic-colors-text-inverse"])!=null?I:t["--persona-palette-colors-gray-50"],t["--persona-border"]=(D=t["--persona-semantic-colors-border"])!=null?D:t["--persona-palette-colors-gray-200"],t["--persona-divider"]=(B=t["--persona-semantic-colors-divider"])!=null?B:t["--persona-palette-colors-gray-200"],t["--persona-muted"]=t["--persona-text-muted"],t["--persona-voice-recording-indicator"]=(E=t["--persona-components-voice-recording-indicator"])!=null?E:t["--persona-palette-colors-error-500"],t["--persona-voice-recording-bg"]=(z=t["--persona-components-voice-recording-background"])!=null?z:t["--persona-palette-colors-error-50"],t["--persona-voice-processing-icon"]=(j=t["--persona-components-voice-processing-icon"])!=null?j:t["--persona-palette-colors-primary-500"],t["--persona-voice-speaking-icon"]=(te=t["--persona-components-voice-speaking-icon"])!=null?te:t["--persona-palette-colors-success-500"],t["--persona-approval-bg"]=(We=t["--persona-components-approval-requested-background"])!=null?We:t["--persona-palette-colors-warning-50"],t["--persona-approval-border"]=($e=t["--persona-components-approval-requested-border"])!=null?$e:t["--persona-palette-colors-warning-200"],t["--persona-approval-text"]=(ve=t["--persona-components-approval-requested-text"])!=null?ve:t["--persona-palette-colors-gray-900"],t["--persona-approval-shadow"]=(Pe=t["--persona-components-approval-requested-shadow"])!=null?Pe:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-approval-approve-bg"]=(Oe=t["--persona-components-approval-approve-background"])!=null?Oe:t["--persona-palette-colors-success-500"],t["--persona-approval-deny-bg"]=(Ae=t["--persona-components-approval-deny-background"])!=null?Ae:t["--persona-palette-colors-error-500"],t["--persona-attachment-image-bg"]=(be=t["--persona-components-attachment-image-background"])!=null?be:t["--persona-palette-colors-gray-100"],t["--persona-attachment-image-border"]=(ne=t["--persona-components-attachment-image-border"])!=null?ne:t["--persona-palette-colors-gray-200"],t["--persona-font-family"]=(Q=t["--persona-semantic-typography-fontFamily"])!=null?Q:t["--persona-palette-typography-fontFamily-sans"],t["--persona-font-size"]=(ae=t["--persona-semantic-typography-fontSize"])!=null?ae:t["--persona-palette-typography-fontSize-base"],t["--persona-font-weight"]=(fe=t["--persona-semantic-typography-fontWeight"])!=null?fe:t["--persona-palette-typography-fontWeight-normal"],t["--persona-line-height"]=(re=t["--persona-semantic-typography-lineHeight"])!=null?re:t["--persona-palette-typography-lineHeight-normal"],t["--persona-input-font-family"]=t["--persona-font-family"],t["--persona-input-font-weight"]=t["--persona-font-weight"],t["--persona-radius-sm"]=(V=t["--persona-palette-radius-sm"])!=null?V:"0.125rem",t["--persona-radius-md"]=(ee=t["--persona-palette-radius-md"])!=null?ee:"0.375rem",t["--persona-radius-lg"]=(Ue=t["--persona-palette-radius-lg"])!=null?Ue:"0.5rem",t["--persona-radius-xl"]=(J=t["--persona-palette-radius-xl"])!=null?J:"0.75rem",t["--persona-radius-full"]=(ie=t["--persona-palette-radius-full"])!=null?ie:"9999px",t["--persona-launcher-radius"]=(at=(Le=t["--persona-components-launcher-borderRadius"])!=null?Le:t["--persona-palette-radius-full"])!=null?at:"9999px",t["--persona-launcher-bg"]=(it=t["--persona-components-launcher-background"])!=null?it:t["--persona-primary"],t["--persona-launcher-fg"]=(nt=t["--persona-components-launcher-foreground"])!=null?nt:t["--persona-text-inverse"],t["--persona-launcher-border"]=(Me=t["--persona-components-launcher-border"])!=null?Me:t["--persona-border"],t["--persona-button-primary-bg"]=(de=t["--persona-components-button-primary-background"])!=null?de:t["--persona-primary"],t["--persona-button-primary-fg"]=(Qe=t["--persona-components-button-primary-foreground"])!=null?Qe:t["--persona-text-inverse"],t["--persona-button-radius"]=(le=(X=t["--persona-components-button-primary-borderRadius"])!=null?X:t["--persona-palette-radius-full"])!=null?le:"9999px",t["--persona-panel-radius"]=(ze=(xe=t["--persona-components-panel-borderRadius"])!=null?xe:t["--persona-radius-xl"])!=null?ze:"0.75rem",t["--persona-panel-border"]=(Lt=t["--persona-components-panel-border"])!=null?Lt:`1px solid ${t["--persona-border"]}`,t["--persona-panel-shadow"]=(ue=(Se=t["--persona-components-panel-shadow"])!=null?Se:t["--persona-palette-shadows-xl"])!=null?ue:"0 25px 50px -12px rgba(0, 0, 0, 0.25)",t["--persona-launcher-shadow"]=(gn=t["--persona-components-launcher-shadow"])!=null?gn:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",t["--persona-input-radius"]=(nn=(Pt=t["--persona-components-input-borderRadius"])!=null?Pt:t["--persona-radius-lg"])!=null?nn:"0.5rem",t["--persona-message-user-radius"]=(fn=(fr=t["--persona-components-message-user-borderRadius"])!=null?fr:t["--persona-radius-lg"])!=null?fn:"0.5rem",t["--persona-message-assistant-radius"]=(S=(je=t["--persona-components-message-assistant-borderRadius"])!=null?je:t["--persona-radius-lg"])!=null?S:"0.5rem",t["--persona-header-bg"]=(pe=t["--persona-components-header-background"])!=null?pe:t["--persona-surface"],t["--persona-header-border"]=(ke=t["--persona-components-header-border"])!=null?ke:t["--persona-divider"],t["--persona-header-icon-bg"]=(Te=t["--persona-components-header-iconBackground"])!=null?Te:t["--persona-primary"],t["--persona-header-icon-fg"]=(Re=t["--persona-components-header-iconForeground"])!=null?Re:t["--persona-text-inverse"],t["--persona-header-title-fg"]=(Ye=t["--persona-components-header-titleForeground"])!=null?Ye:t["--persona-primary"],t["--persona-header-subtitle-fg"]=(Ke=t["--persona-components-header-subtitleForeground"])!=null?Ke:t["--persona-text-muted"],t["--persona-header-action-icon-fg"]=(pt=t["--persona-components-header-actionIconForeground"])!=null?pt:t["--persona-muted"];let r=(It=n.components)==null?void 0:It.header;r!=null&&r.shadow&&(t["--persona-header-shadow"]=r.shadow),r!=null&&r.borderBottom&&(t["--persona-header-border-bottom"]=r.borderBottom);let o=(U=n.components)==null?void 0:U.introCard;t["--persona-intro-card-bg"]=(rt=t["--persona-components-introCard-background"])!=null?rt:t["--persona-surface"],t["--persona-intro-card-radius"]=(K=t["--persona-components-introCard-borderRadius"])!=null?K:"1rem",t["--persona-intro-card-padding"]=(ce=t["--persona-components-introCard-padding"])!=null?ce:"1.5rem",t["--persona-intro-card-shadow"]=(bt=(Ee=o==null?void 0:o.shadow)!=null?Ee:t["--persona-components-introCard-shadow"])!=null?bt:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-input-background"]=(Jt=t["--persona-components-input-background"])!=null?Jt:t["--persona-surface"],t["--persona-input-placeholder"]=(Yt=t["--persona-components-input-placeholder"])!=null?Yt:t["--persona-text-muted"],t["--persona-message-user-bg"]=(dn=t["--persona-components-message-user-background"])!=null?dn:t["--persona-accent"],t["--persona-message-user-text"]=(Rt=t["--persona-components-message-user-text"])!=null?Rt:t["--persona-text-inverse"],t["--persona-message-user-shadow"]=(Ze=t["--persona-components-message-user-shadow"])!=null?Ze:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-message-assistant-bg"]=(Wt=t["--persona-components-message-assistant-background"])!=null?Wt:t["--persona-surface"],t["--persona-message-assistant-text"]=(lt=t["--persona-components-message-assistant-text"])!=null?lt:t["--persona-text"],t["--persona-message-assistant-border"]=(Vt=t["--persona-components-message-assistant-border"])!=null?Vt:t["--persona-border"],t["--persona-message-assistant-shadow"]=(Xn=t["--persona-components-message-assistant-shadow"])!=null?Xn:"0 1px 2px 0 rgb(0 0 0 / 0.05)",t["--persona-scroll-to-bottom-bg"]=(Zt=(Cn=t["--persona-components-scrollToBottom-background"])!=null?Cn:t["--persona-button-primary-bg"])!=null?Zt:t["--persona-accent"],t["--persona-scroll-to-bottom-fg"]=(hr=(Pn=t["--persona-components-scrollToBottom-foreground"])!=null?Pn:t["--persona-button-primary-fg"])!=null?hr:t["--persona-text-inverse"],t["--persona-scroll-to-bottom-border"]=(vt=t["--persona-components-scrollToBottom-border"])!=null?vt:t["--persona-primary"],t["--persona-scroll-to-bottom-size"]=(Dn=t["--persona-components-scrollToBottom-size"])!=null?Dn:"40px",t["--persona-scroll-to-bottom-radius"]=(ar=(Lr=(yr=t["--persona-components-scrollToBottom-borderRadius"])!=null?yr:t["--persona-button-radius"])!=null?Lr:t["--persona-radius-full"])!=null?ar:"9999px",t["--persona-scroll-to-bottom-shadow"]=(co=(ht=t["--persona-components-scrollToBottom-shadow"])!=null?ht:t["--persona-palette-shadows-sm"])!=null?co:"0 1px 2px 0 rgb(0 0 0 / 0.05)",t["--persona-scroll-to-bottom-padding"]=(br=t["--persona-components-scrollToBottom-padding"])!=null?br:"0.5rem 0.875rem",t["--persona-scroll-to-bottom-gap"]=(po=t["--persona-components-scrollToBottom-gap"])!=null?po:"0.5rem",t["--persona-scroll-to-bottom-font-size"]=(Bo=(In=t["--persona-components-scrollToBottom-fontSize"])!=null?In:t["--persona-palette-typography-fontSize-sm"])!=null?Bo:"0.875rem",t["--persona-scroll-to-bottom-icon-size"]=(zr=t["--persona-components-scrollToBottom-iconSize"])!=null?zr:"14px",t["--persona-tool-bubble-shadow"]=(Pr=t["--persona-components-toolBubble-shadow"])!=null?Pr:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-reasoning-bubble-shadow"]=(jr=t["--persona-components-reasoningBubble-shadow"])!=null?jr:"0 5px 15px rgba(15, 23, 42, 0.08)",t["--persona-composer-shadow"]=(Vr=t["--persona-components-composer-shadow"])!=null?Vr:"none",t["--persona-md-inline-code-bg"]=(uo=t["--persona-components-markdown-inlineCode-background"])!=null?uo:t["--persona-container"],t["--persona-md-inline-code-color"]=(mo=t["--persona-components-markdown-inlineCode-foreground"])!=null?mo:t["--persona-text"],t["--persona-md-link-color"]=(wt=(Kr=t["--persona-components-markdown-link-foreground"])!=null?Kr:t["--persona-accent"])!=null?wt:"#0f0f0f";let s=t["--persona-components-markdown-heading-h1-fontSize"];s&&(t["--persona-md-h1-size"]=s);let a=t["--persona-components-markdown-heading-h1-fontWeight"];a&&(t["--persona-md-h1-weight"]=a);let i=t["--persona-components-markdown-heading-h2-fontSize"];i&&(t["--persona-md-h2-size"]=i);let d=t["--persona-components-markdown-heading-h2-fontWeight"];d&&(t["--persona-md-h2-weight"]=d);let c=t["--persona-components-markdown-prose-fontFamily"];c&&c!=="inherit"&&(t["--persona-md-prose-font-family"]=c),t["--persona-md-code-block-bg"]=(Nn=t["--persona-components-markdown-codeBlock-background"])!=null?Nn:t["--persona-container"],t["--persona-md-code-block-border-color"]=(Fn=t["--persona-components-markdown-codeBlock-borderColor"])!=null?Fn:t["--persona-border"],t["--persona-md-code-block-text-color"]=(An=t["--persona-components-markdown-codeBlock-textColor"])!=null?An:"inherit",t["--persona-md-table-header-bg"]=(At=t["--persona-components-markdown-table-headerBackground"])!=null?At:t["--persona-container"],t["--persona-md-table-border-color"]=(Jn=t["--persona-components-markdown-table-borderColor"])!=null?Jn:t["--persona-border"],t["--persona-md-hr-color"]=(Yn=t["--persona-components-markdown-hr-color"])!=null?Yn:t["--persona-divider"],t["--persona-md-blockquote-border-color"]=(On=t["--persona-components-markdown-blockquote-borderColor"])!=null?On:t["--persona-palette-colors-gray-900"],t["--persona-md-blockquote-bg"]=(Gr=t["--persona-components-markdown-blockquote-background"])!=null?Gr:"transparent",t["--persona-md-blockquote-text-color"]=(Ir=t["--persona-components-markdown-blockquote-textColor"])!=null?Ir:t["--persona-palette-colors-gray-500"],t["--cw-container"]=(Qr=t["--persona-components-collapsibleWidget-container"])!=null?Qr:t["--persona-surface"],t["--cw-surface"]=(_n=t["--persona-components-collapsibleWidget-surface"])!=null?_n:t["--persona-surface"],t["--cw-border"]=(Ht=t["--persona-components-collapsibleWidget-border"])!=null?Ht:t["--persona-border"],t["--persona-message-border"]=(Sn=t["--persona-components-message-border"])!=null?Sn:t["--persona-border"];let m=n.components,f=m==null?void 0:m.iconButton;f&&(f.background&&(t["--persona-icon-btn-bg"]=f.background),f.border&&(t["--persona-icon-btn-border"]=f.border),f.color&&(t["--persona-icon-btn-color"]=f.color),f.padding&&(t["--persona-icon-btn-padding"]=f.padding),f.borderRadius&&(t["--persona-icon-btn-radius"]=f.borderRadius),f.hoverBackground&&(t["--persona-icon-btn-hover-bg"]=f.hoverBackground),f.hoverColor&&(t["--persona-icon-btn-hover-color"]=f.hoverColor),f.activeBackground&&(t["--persona-icon-btn-active-bg"]=f.activeBackground),f.activeBorder&&(t["--persona-icon-btn-active-border"]=f.activeBorder));let g=m==null?void 0:m.labelButton;g&&(g.background&&(t["--persona-label-btn-bg"]=g.background),g.border&&(t["--persona-label-btn-border"]=g.border),g.color&&(t["--persona-label-btn-color"]=g.color),g.padding&&(t["--persona-label-btn-padding"]=g.padding),g.borderRadius&&(t["--persona-label-btn-radius"]=g.borderRadius),g.hoverBackground&&(t["--persona-label-btn-hover-bg"]=g.hoverBackground),g.fontSize&&(t["--persona-label-btn-font-size"]=g.fontSize),g.gap&&(t["--persona-label-btn-gap"]=g.gap));let u=m==null?void 0:m.toggleGroup;u&&(u.gap&&(t["--persona-toggle-group-gap"]=u.gap),u.borderRadius&&(t["--persona-toggle-group-radius"]=u.borderRadius));let v=m==null?void 0:m.artifact;if(v!=null&&v.toolbar){let he=v.toolbar;he.iconHoverColor&&(t["--persona-artifact-toolbar-icon-hover-color"]=he.iconHoverColor),he.iconHoverBackground&&(t["--persona-artifact-toolbar-icon-hover-bg"]=he.iconHoverBackground),he.iconPadding&&(t["--persona-artifact-toolbar-icon-padding"]=he.iconPadding),he.iconBorderRadius&&(t["--persona-artifact-toolbar-icon-radius"]=he.iconBorderRadius),he.iconBorder&&(t["--persona-artifact-toolbar-icon-border"]=he.iconBorder),he.toggleGroupGap&&(t["--persona-artifact-toolbar-toggle-group-gap"]=he.toggleGroupGap),he.toggleBorderRadius&&(t["--persona-artifact-toolbar-toggle-radius"]=he.toggleBorderRadius),he.copyBackground&&(t["--persona-artifact-toolbar-copy-bg"]=he.copyBackground),he.copyBorder&&(t["--persona-artifact-toolbar-copy-border"]=he.copyBorder),he.copyColor&&(t["--persona-artifact-toolbar-copy-color"]=he.copyColor),he.copyBorderRadius&&(t["--persona-artifact-toolbar-copy-radius"]=he.copyBorderRadius),he.copyPadding&&(t["--persona-artifact-toolbar-copy-padding"]=he.copyPadding),he.copyMenuBackground&&(t["--persona-artifact-toolbar-copy-menu-bg"]=he.copyMenuBackground,t["--persona-dropdown-bg"]=(Zn=t["--persona-dropdown-bg"])!=null?Zn:he.copyMenuBackground),he.copyMenuBorder&&(t["--persona-artifact-toolbar-copy-menu-border"]=he.copyMenuBorder,t["--persona-dropdown-border"]=(Xr=t["--persona-dropdown-border"])!=null?Xr:he.copyMenuBorder),he.copyMenuShadow&&(t["--persona-artifact-toolbar-copy-menu-shadow"]=he.copyMenuShadow,t["--persona-dropdown-shadow"]=(Wr=t["--persona-dropdown-shadow"])!=null?Wr:he.copyMenuShadow),he.copyMenuBorderRadius&&(t["--persona-artifact-toolbar-copy-menu-radius"]=he.copyMenuBorderRadius,t["--persona-dropdown-radius"]=(Jr=t["--persona-dropdown-radius"])!=null?Jr:he.copyMenuBorderRadius),he.copyMenuItemHoverBackground&&(t["--persona-artifact-toolbar-copy-menu-item-hover-bg"]=he.copyMenuItemHoverBackground,t["--persona-dropdown-item-hover-bg"]=(vr=t["--persona-dropdown-item-hover-bg"])!=null?vr:he.copyMenuItemHoverBackground),he.iconBackground&&(t["--persona-artifact-toolbar-icon-bg"]=he.iconBackground),he.toolbarBorder&&(t["--persona-artifact-toolbar-border"]=he.toolbarBorder)}if(v!=null&&v.tab){let he=v.tab;he.background&&(t["--persona-artifact-tab-bg"]=he.background),he.activeBackground&&(t["--persona-artifact-tab-active-bg"]=he.activeBackground),he.activeBorder&&(t["--persona-artifact-tab-active-border"]=he.activeBorder),he.borderRadius&&(t["--persona-artifact-tab-radius"]=he.borderRadius),he.textColor&&(t["--persona-artifact-tab-color"]=he.textColor),he.hoverBackground&&(t["--persona-artifact-tab-hover-bg"]=he.hoverBackground),he.listBackground&&(t["--persona-artifact-tab-list-bg"]=he.listBackground),he.listBorderColor&&(t["--persona-artifact-tab-list-border-color"]=he.listBorderColor),he.listPadding&&(t["--persona-artifact-tab-list-padding"]=he.listPadding)}if(v!=null&&v.pane){let he=v.pane;if(he.toolbarBackground){let ct=($n=os(n,he.toolbarBackground))!=null?$n:he.toolbarBackground;t["--persona-artifact-toolbar-bg"]=ct}}return t}var Ny={colors:{primary:{50:"#ffffff",100:"#f5f5f5",200:"#d4d4d4",300:"#a3a3a3",400:"#737373",500:"#171717",600:"#0f0f0f",700:"#0a0a0a",800:"#050505",900:"#030303",950:"#000000"},secondary:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},accent:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},success:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},warning:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},error:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"}}},Pu=n=>{if(!(!n||typeof n!="object"||Array.isArray(n)))return n},Pi=()=>{var n;return typeof document!="undefined"&&document.documentElement.classList.contains("dark")||typeof window!="undefined"&&((n=window.matchMedia)!=null&&n.call(window,"(prefers-color-scheme: dark)").matches)?"dark":"light"},Fy=n=>{var t;let e=(t=n==null?void 0:n.colorScheme)!=null?t:"light";return e==="light"?"light":e==="dark"?"dark":Pi()},Oy=n=>Fy(n),_y=n=>Po(n),$y=n=>{var t;let e=Po(void 0,{validate:!1});return Po({...n,palette:{...e.palette,colors:{...Ny.colors,...(t=n==null?void 0:n.palette)==null?void 0:t.colors}}},{validate:!1})},La=n=>{let e=Oy(n),t=Pu(n==null?void 0:n.theme),r=Pu(n==null?void 0:n.darkTheme);return e==="dark"?$y(Os(t!=null?t:{},r!=null?r:{})):_y(t)},Uy=n=>Lu(n),ss=(n,e)=>{let t=La(e),r=Uy(t);for(let[o,s]of Object.entries(r))n.style.setProperty(o,s)},Iu=n=>{let e=[];if(typeof document!="undefined"&&typeof MutationObserver!="undefined"){let t=new MutationObserver(()=>{n(Pi())});t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),e.push(()=>t.disconnect())}if(typeof window!="undefined"&&window.matchMedia){let t=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>n(Pi());t.addEventListener?(t.addEventListener("change",r),e.push(()=>t.removeEventListener("change",r))):t.addListener&&(t.addListener(r),e.push(()=>t.removeListener(r)))}return()=>{e.forEach(t=>t())}};import{Idiomorph as qy}from"idiomorph";var Pa=(n,e,t={})=>{let{preserveTypingAnimation:r=!0}=t;qy.morph(n,e.innerHTML,{morphStyle:"innerHTML",callbacks:{beforeNodeMorphed(o,s){var a,i;if(o instanceof HTMLElement&&r){if(o.classList.contains("persona-animate-typing")||o.hasAttribute("data-preserve-runtime"))return!1;if(o.hasAttribute("data-preserve-animation")){if(s instanceof HTMLElement&&!s.hasAttribute("data-preserve-animation"))return;if(s instanceof HTMLElement&&s.hasAttribute("data-preserve-animation")){let d=(a=o.textContent)!=null?a:"",c=(i=s.textContent)!=null?i:"";if(d!==c)return}return!1}}}}})};var Wu=n=>n.replace(/^\n+/,"").replace(/\s+$/,"");var Ia={index:-1,draft:""};function Ru(n){let{direction:e,history:t,currentValue:r,atStart:o,state:s}=n,a=s.index!==-1;if(t.length===0)return{handled:!1,state:s};if(e==="up"){if(!a&&!o)return{handled:!1,state:s};if(!a){let i=t.length-1;return{handled:!0,value:t[i],state:{index:i,draft:r}}}if(s.index>0){let i=s.index-1;return{handled:!0,value:t[i],state:{index:i,draft:s.draft}}}return{handled:!0,state:s}}if(!a)return{handled:!1,state:s};if(s.index<t.length-1){let i=s.index+1;return{handled:!0,value:t[i],state:{index:i,draft:s.draft}}}return{handled:!0,value:s.draft,state:{...Ia}}}function Hu(n,e){var t,r,o,s,a,i,d,c,m,f,g,u,v,x,P,T,M,N,k,W,C,I,D,B,E,z,j,te,We,$e,ve,Pe,Oe,Ae,be,ne,Q,ae;return[n.id,n.role,(r=(t=n.content)==null?void 0:t.length)!=null?r:0,(s=(o=n.content)==null?void 0:o.slice(-32))!=null?s:"",n.streaming?"1":"0",n.voiceProcessing?"1":"0",(a=n.variant)!=null?a:"",(d=(i=n.rawContent)==null?void 0:i.length)!=null?d:0,(m=(c=n.llmContent)==null?void 0:c.length)!=null?m:0,(g=(f=n.approval)==null?void 0:f.status)!=null?g:"",(v=(u=n.toolCall)==null?void 0:u.status)!=null?v:"",(P=(x=n.toolCall)==null?void 0:x.name)!=null?P:"",(N=(M=(T=n.toolCall)==null?void 0:T.chunks)==null?void 0:M.length)!=null?N:0,(I=(C=(W=(k=n.toolCall)==null?void 0:k.chunks)==null?void 0:W[n.toolCall.chunks.length-1])==null?void 0:C.slice(-32))!=null?I:"",typeof((D=n.toolCall)==null?void 0:D.args)=="string"?n.toolCall.args.length:(B=n.toolCall)!=null&&B.args?JSON.stringify(n.toolCall.args).length:0,(j=(z=(E=n.reasoning)==null?void 0:E.chunks)==null?void 0:z.length)!=null?j:0,(ve=($e=(We=(te=n.reasoning)==null?void 0:te.chunks)==null?void 0:We[n.reasoning.chunks.length-1])==null?void 0:$e.length)!=null?ve:0,(be=(Ae=(Oe=(Pe=n.reasoning)==null?void 0:Pe.chunks)==null?void 0:Oe[n.reasoning.chunks.length-1])==null?void 0:Ae.slice(-32))!=null?be:"",(Q=(ne=n.contentParts)==null?void 0:ne.length)!=null?Q:0,(ae=n.stopReason)!=null?ae:"",e].join("\0")}function Bu(){return new Map}function Du(n,e,t){let r=n.get(e);return r&&r.fingerprint===t?r.wrapper:null}function Nu(n,e,t,r){n.set(e,{fingerprint:t,wrapper:r})}function Fu(n,e){for(let t of n.keys())e.has(t)||n.delete(t)}function Wa(n=!0){let e=n;return{isFollowing:()=>e,pause:()=>e?(e=!1,!0):!1,resume:()=>e?!1:(e=!0,!0)}}function qr(n){return Math.max(0,n.scrollHeight-n.clientHeight)}function Io(n,e){return qr(n)-n.scrollTop<=e}function Ra(n){let{following:e,currentScrollTop:t,lastScrollTop:r,nearBottom:o,userScrollThreshold:s,isAutoScrolling:a=!1,pauseOnUpwardScroll:i=!1,pauseWhenAwayFromBottom:d=!0,resumeRequiresDownwardScroll:c=!1}=n,m=t-r;return a||Math.abs(m)<s?{action:"none",delta:m,nextLastScrollTop:t}:!e&&o&&(!c||m>0)?{action:"resume",delta:m,nextLastScrollTop:t}:e&&i&&m<0?{action:"pause",delta:m,nextLastScrollTop:t}:e&&d&&!o?{action:"pause",delta:m,nextLastScrollTop:t}:{action:"none",delta:m,nextLastScrollTop:t}}function Ha(n){let{following:e,deltaY:t,nearBottom:r=!1,resumeWhenNearBottom:o=!1}=n;return e&&t<0?"pause":!e&&o&&t>0&&r?"resume":"none"}function Ou(n,e){return!n||n.isCollapsed?!1:e.contains(n.anchorNode)||e.contains(n.focusNode)}function _u(n){let e=Math.max(0,n.anchorOffsetTop-n.topOffset),t=Math.max(0,e+n.viewportHeight-n.contentHeight);return{targetScrollTop:e,spacerHeight:t}}function $u(n){let e=Math.max(0,n.currentContentHeight-n.contentHeightAtAnchor);return Math.max(0,n.initialSpacerHeight-e)}var vn={idle:"Online",connecting:"Connecting\u2026",connected:"Streaming\u2026",error:"Offline"},xn=1e5,io=xn+1;var _s={type:"none",placeholder:"none",speed:120,duration:1800,buffer:"none"},zy=["pre","code","a","script","style"],Ba=n=>{var e,t,r,o,s;return{type:(e=n==null?void 0:n.type)!=null?e:_s.type,placeholder:(t=n==null?void 0:n.placeholder)!=null?t:_s.placeholder,speed:(r=n==null?void 0:n.speed)!=null?r:_s.speed,duration:(o=n==null?void 0:n.duration)!=null?o:_s.duration,buffer:(s=n==null?void 0:n.buffer)!=null?s:_s.buffer}},jy=[{name:"typewriter",containerClass:"persona-stream-typewriter",wrap:"char",useCaret:!0},{name:"pop-bubble",bubbleClass:"persona-stream-pop",wrap:"none"},{name:"letter-rise",containerClass:"persona-stream-letter-rise",wrap:"char"},{name:"word-fade",containerClass:"persona-stream-word-fade",wrap:"word"}],qu=new Map;for(let n of jy)qu.set(n.name,n);var $s=(n,e)=>{var t,r;return n==="none"?null:e&&Object.prototype.hasOwnProperty.call(e,n)?(t=e[n])!=null?t:null:(r=qu.get(n))!=null?r:null},Da=(n,e,t,r,o)=>{if(!o)return n;if(t!=null&&t.bufferContent)return t.bufferContent(n,r);if(!n)return n;if(e==="word"){let s=n.search(/\s(?=\S*$)/);return s<0?"":n.slice(0,s)}if(e==="line"){let s=n.lastIndexOf(`
|
|
17
|
+
`);return s<0?"":n.slice(0,s)}return n},Vy=(n,e,t,r)=>{let o=n.createElement("span");return o.className="persona-stream-char",o.id=`stream-c-${t}-${r}`,o.style.setProperty("--char-index",String(r)),o.textContent=e,o},Ky=(n,e,t,r)=>{let o=n.createElement("span");return o.className="persona-stream-word",o.id=`stream-w-${t}-${r}`,o.style.setProperty("--word-index",String(r)),o.textContent=e,o},Ii=/\s/,Gy=(n,e)=>{let t=n.parentNode;for(;t;){if(t.nodeType===1){let r=t;if(e.has(r.tagName.toLowerCase()))return!0}t=t.parentNode}return!1},Qy=(n,e,t)=>{var d;let r=n.ownerDocument,o=n.parentNode;if(!r||!o)return;let s=(d=n.nodeValue)!=null?d:"";if(!s)return;let a=r.createDocumentFragment(),i=0;for(;i<s.length;)if(Ii.test(s[i])){let c=i;for(;c<s.length&&Ii.test(s[c]);)c+=1;a.appendChild(r.createTextNode(s.slice(i,c))),i=c}else{let c=r.createElement("span");c.className="persona-stream-word-group";let m=i;for(;m<s.length&&!Ii.test(s[m]);)c.appendChild(Vy(r,s[m],e,t.value)),t.value+=1,m+=1;a.appendChild(c),i=m}o.replaceChild(a,n)},Xy=(n,e,t)=>{var d;let r=n.ownerDocument,o=n.parentNode;if(!r||!o)return;let s=(d=n.nodeValue)!=null?d:"";if(!s)return;let a=r.createDocumentFragment(),i=s.split(/(\s+)/);for(let c of i)c&&(/^\s+$/.test(c)?a.appendChild(r.createTextNode(c)):(a.appendChild(Ky(r,c,e,t.value)),t.value+=1));o.replaceChild(a,n)},Us=(n,e,t,r)=>{var f,g;if(!n||typeof document=="undefined")return n;let o=document.createElement("div");o.innerHTML=n;let s=new Set(((f=r==null?void 0:r.skipTags)!=null?f:zy).map(u=>u.toLowerCase())),a=document.createTreeWalker(o,NodeFilter.SHOW_TEXT,null),i=[],d=a.nextNode();for(;d;)Gy(d,s)||i.push(d),d=a.nextNode();let c={value:(g=r==null?void 0:r.startIndex)!=null?g:0},m=e==="char"?Qy:Xy;for(let u of i)m(u,t,c);return o.innerHTML},Na=(n=document)=>{let e=n.createElement("span");return e.className="persona-stream-caret",e.setAttribute("aria-hidden","true"),e.setAttribute("data-preserve-animation","stream-caret"),e},qs=(n=document)=>{let e=n.createElement("div");e.className="persona-stream-skeleton",e.setAttribute("data-preserve-animation","stream-skeleton"),e.setAttribute("aria-hidden","true");let t=n.createElement("div");return t.className="persona-stream-skeleton-line",e.appendChild(t),e},Uu=new WeakMap,Jy=(n,e)=>{var s;if(!n.styles)return;let t=Uu.get(e);if(t||(t=new Set,Uu.set(e,t)),t.has(n.name)){let a=n.name.replace(/["\\]/g,"\\$&");if(e.querySelector(`style[data-persona-animation="${a}"]`))return;t.delete(n.name)}t.add(n.name);let o=(e instanceof ShadowRoot?e.ownerDocument:(s=e.ownerDocument)!=null?s:document).createElement("style");o.setAttribute("data-persona-animation",n.name),o.textContent=n.styles,e.appendChild(o)},Wi=new WeakMap,Yy=(n,e)=>{if(!n.onAttach)return;let t=Wi.get(e);if(t||(t=new Map,Wi.set(e,t)),t.has(n.name))return;let r=n.onAttach(e);t.set(n.name,r)},zu=n=>{let e=Wi.get(n);if(e){for(let t of e.values())typeof t=="function"&&t();e.clear()}},Ri=(n,e)=>{Jy(n,e),Yy(n,e)};function Hi(n,e=xn){let t=n.style.position,r=n.style.zIndex,o=n.style.isolation,s=getComputedStyle(n),a=s.position==="static"||s.position==="";return a&&(n.style.position="relative"),n.style.zIndex=String(e),n.style.isolation="isolate",()=>{a&&(n.style.position=t),n.style.zIndex=r,n.style.isolation=o}}var zs=0,lo=null;function Bi(n=document){var t;if(zs++,zs===1){let r=n.body,s=((t=n.defaultView)!=null?t:window).scrollY||n.documentElement.scrollTop;lo={originalOverflow:r.style.overflow,originalPosition:r.style.position,originalTop:r.style.top,originalWidth:r.style.width,scrollY:s},r.style.overflow="hidden",r.style.position="fixed",r.style.top=`-${s}px`,r.style.width="100%"}let e=!1;return()=>{var r;if(!e&&(e=!0,zs=Math.max(0,zs-1),zs===0&&lo)){let o=n.body,s=(r=n.defaultView)!=null?r:window;o.style.overflow=lo.originalOverflow,o.style.position=lo.originalPosition,o.style.top=lo.originalTop,o.style.width=lo.originalWidth,s.scrollTo(0,lo.scrollY),lo=null}}}var js={side:"right",width:"420px",animate:!0,reveal:"resize",maxHeight:"100dvh"},mn=n=>{var e,t;return((t=(e=n==null?void 0:n.launcher)==null?void 0:e.mountMode)!=null?t:"floating")==="docked"},Vs=n=>{var e,t;return((t=(e=n==null?void 0:n.launcher)==null?void 0:e.mountMode)!=null?t:"floating")==="composer-bar"},mr=n=>{var t,r,o,s,a,i;let e=(t=n==null?void 0:n.launcher)==null?void 0:t.dock;return{side:(r=e==null?void 0:e.side)!=null?r:js.side,width:(o=e==null?void 0:e.width)!=null?o:js.width,animate:(s=e==null?void 0:e.animate)!=null?s:js.animate,reveal:(a=e==null?void 0:e.reveal)!=null?a:js.reveal,maxHeight:(i=e==null?void 0:e.maxHeight)!=null?i:js.maxHeight}};var gr={"bottom-right":"persona-bottom-6 persona-right-6","bottom-left":"persona-bottom-6 persona-left-6","top-right":"persona-top-6 persona-right-6","top-left":"persona-top-6 persona-left-6"};var Zy="persona-relative persona-ml-auto persona-inline-flex persona-items-center persona-justify-center",Fa=(n,e={})=>{var P,T,M,N,k,W;let{showClose:t=!0,wrapperClassName:r=Zy,buttonSize:o,iconSize:s="28px"}=e,a=(P=n==null?void 0:n.launcher)!=null?P:{},i=(T=o!=null?o:a.closeButtonSize)!=null?T:"32px",d=b("div",r),c=(M=a.closeButtonTooltipText)!=null?M:"Close chat",m=(N=a.closeButtonShowTooltip)!=null?N:!0,f=(k=a.closeButtonIconName)!=null?k:"x",g=(W=a.closeButtonIconText)!=null?W:"\xD7",u=!!(a.closeButtonBorderWidth||a.closeButtonBorderColor),v=Tt("button",{className:Ms("persona-inline-flex persona-items-center persona-justify-center persona-cursor-pointer",!a.closeButtonBackgroundColor&&"hover:persona-bg-gray-100",!u&&"persona-border-none",!a.closeButtonBorderRadius&&"persona-rounded-full"),attrs:{type:"button","aria-label":c},style:{height:i,width:i,display:t?void 0:"none",color:a.closeButtonColor||Ln.actionIconColor,backgroundColor:a.closeButtonBackgroundColor||void 0,border:u?`${a.closeButtonBorderWidth||"0px"} solid ${a.closeButtonBorderColor||"transparent"}`:void 0,borderRadius:a.closeButtonBorderRadius||void 0,paddingLeft:a.closeButtonPaddingX||void 0,paddingRight:a.closeButtonPaddingX||void 0,paddingTop:a.closeButtonPaddingY||void 0,paddingBottom:a.closeButtonPaddingY||void 0}}),x=Ce(f,s,"currentColor",1);if(x?(x.style.display="block",v.appendChild(x)):v.textContent=g,d.appendChild(v),m&&c){let C=null,I=()=>{if(C)return;let B=v.ownerDocument,E=B.body;if(!E)return;C=kr(B,"div","persona-clear-chat-tooltip"),C.textContent=c;let z=kr(B,"div");z.className="persona-clear-chat-tooltip-arrow",C.appendChild(z);let j=v.getBoundingClientRect();C.style.position="fixed",C.style.zIndex=String(io),C.style.left=`${j.left+j.width/2}px`,C.style.top=`${j.top-8}px`,C.style.transform="translate(-50%, -100%)",E.appendChild(C)},D=()=>{C&&C.parentNode&&(C.parentNode.removeChild(C),C=null)};d.addEventListener("mouseenter",I),d.addEventListener("mouseleave",D),v.addEventListener("focus",I),v.addEventListener("blur",D),d._cleanupTooltip=()=>{D(),d.removeEventListener("mouseenter",I),d.removeEventListener("mouseleave",D),v.removeEventListener("focus",I),v.removeEventListener("blur",D)}}return{button:v,wrapper:d}},eb="persona-relative persona-ml-auto persona-clear-chat-button-wrapper",Oa=(n,e={})=>{var C,I,D,B,E,z,j,te,We,$e,ve,Pe,Oe;let{wrapperClassName:t=eb,buttonSize:r,iconSize:o="20px"}=e,a=(I=((C=n==null?void 0:n.launcher)!=null?C:{}).clearChat)!=null?I:{},i=(D=r!=null?r:a.size)!=null?D:"32px",d=(B=a.iconName)!=null?B:"refresh-cw",c=(E=a.iconColor)!=null?E:"",m=(z=a.backgroundColor)!=null?z:"",f=(j=a.borderWidth)!=null?j:"",g=(te=a.borderColor)!=null?te:"",u=(We=a.borderRadius)!=null?We:"",v=($e=a.paddingX)!=null?$e:"",x=(ve=a.paddingY)!=null?ve:"",P=(Pe=a.tooltipText)!=null?Pe:"Clear chat",T=(Oe=a.showTooltip)!=null?Oe:!0,M=b("div",t),N=!!(f||g),k=Tt("button",{className:Ms("persona-inline-flex persona-items-center persona-justify-center persona-cursor-pointer",!m&&"hover:persona-bg-gray-100",!N&&"persona-border-none",!u&&"persona-rounded-full"),attrs:{type:"button","aria-label":P},style:{height:i,width:i,color:c||Ln.actionIconColor,backgroundColor:m||void 0,border:N?`${f||"0px"} solid ${g||"transparent"}`:void 0,borderRadius:u||void 0,paddingLeft:v||void 0,paddingRight:v||void 0,paddingTop:x||void 0,paddingBottom:x||void 0}}),W=Ce(d,o,"currentColor",1);if(W&&(W.style.display="block",k.appendChild(W)),M.appendChild(k),T&&P){let Ae=null,be=()=>{if(Ae)return;let Q=k.ownerDocument,ae=Q.body;if(!ae)return;Ae=kr(Q,"div","persona-clear-chat-tooltip"),Ae.textContent=P;let fe=kr(Q,"div");fe.className="persona-clear-chat-tooltip-arrow",Ae.appendChild(fe);let re=k.getBoundingClientRect();Ae.style.position="fixed",Ae.style.zIndex=String(io),Ae.style.left=`${re.left+re.width/2}px`,Ae.style.top=`${re.top-8}px`,Ae.style.transform="translate(-50%, -100%)",ae.appendChild(Ae)},ne=()=>{Ae&&Ae.parentNode&&(Ae.parentNode.removeChild(Ae),Ae=null)};M.addEventListener("mouseenter",be),M.addEventListener("mouseleave",ne),k.addEventListener("focus",be),k.addEventListener("blur",ne),M._cleanupTooltip=()=>{ne(),M.removeEventListener("mouseenter",be),M.removeEventListener("mouseleave",ne),k.removeEventListener("focus",be),k.removeEventListener("blur",ne)}}return{button:k,wrapper:M}};var Ln={titleColor:"var(--persona-header-title-fg, var(--persona-primary, #0f0f0f))",subtitleColor:"var(--persona-header-subtitle-fg, var(--persona-text-muted, var(--persona-muted, #9ca3af)))",actionIconColor:"var(--persona-header-action-icon-fg, var(--persona-muted, #9ca3af))"},Wo=n=>{var W,C,I,D,B,E,z,j,te,We,$e,ve,Pe,Oe,Ae,be;let{config:e,showClose:t=!0}=n,r=Tt("div",{className:"persona-widget-header persona-flex persona-items-center persona-gap-3 persona-px-6 persona-py-5",attrs:{"data-persona-theme-zone":"header"},style:{backgroundColor:"var(--persona-header-bg, var(--persona-surface, #ffffff))",borderBottomColor:"var(--persona-header-border, var(--persona-divider, #f1f5f9))",boxShadow:"var(--persona-header-shadow, none)",borderBottom:"var(--persona-header-border-bottom, 1px solid var(--persona-header-border, var(--persona-divider, #f1f5f9)))"}}),o=(W=e==null?void 0:e.launcher)!=null?W:{},s=(C=o.headerIconSize)!=null?C:"48px",a=(I=o.closeButtonPlacement)!=null?I:"inline",i=(D=o.headerIconHidden)!=null?D:!1,d=o.headerIconName,c=Tt("div",{className:"persona-flex persona-items-center persona-justify-center persona-rounded-xl persona-text-xl",style:{height:s,width:s,backgroundColor:"var(--persona-header-icon-bg, var(--persona-primary, #0f0f0f))",color:"var(--persona-header-icon-fg, var(--persona-text-inverse, #ffffff))"}});if(!i)if(d){let ne=parseFloat(s)||24,Q=Ce(d,ne*.6,"currentColor",1);Q?c.replaceChildren(Q):c.textContent=(E=(B=e==null?void 0:e.launcher)==null?void 0:B.agentIconText)!=null?E:"\u{1F4AC}"}else if((z=e==null?void 0:e.launcher)!=null&&z.iconUrl){let ne=b("img");ne.src=e.launcher.iconUrl,ne.alt="",ne.className="persona-rounded-xl persona-object-cover",ne.style.height=s,ne.style.width=s,c.replaceChildren(ne)}else c.textContent=(te=(j=e==null?void 0:e.launcher)==null?void 0:j.agentIconText)!=null?te:"\u{1F4AC}";let m=b("div","persona-flex persona-flex-col persona-flex-1 persona-min-w-0"),f=Tt("span",{className:"persona-text-base persona-font-semibold",text:($e=(We=e==null?void 0:e.launcher)==null?void 0:We.title)!=null?$e:"Chat Assistant",style:{color:Ln.titleColor}}),g=Tt("span",{className:"persona-text-xs",text:(Pe=(ve=e==null?void 0:e.launcher)==null?void 0:ve.subtitle)!=null?Pe:"Here to help you get answers fast",style:{color:Ln.subtitleColor}});m.append(f,g),i?r.append(m):r.append(c,m);let u=(Oe=o.clearChat)!=null?Oe:{},v=(Ae=u.enabled)!=null?Ae:!0,x=(be=u.placement)!=null?be:"inline",P=null,T=null;if(v){let Q=Oa(e,{wrapperClassName:x==="top-right"?"persona-absolute persona-top-4 persona-z-50":"persona-relative persona-ml-auto persona-clear-chat-button-wrapper"});P=Q.button,T=Q.wrapper,x==="top-right"&&(T.style.right="48px"),x==="inline"&&r.appendChild(T)}let M=a==="top-right"?"persona-absolute persona-top-4 persona-right-4 persona-z-50":v&&x==="inline"?"persona-relative persona-inline-flex persona-items-center persona-justify-center":"persona-relative persona-ml-auto persona-inline-flex persona-items-center persona-justify-center",{button:N,wrapper:k}=Fa(e,{showClose:t,wrapperClassName:M});return a!=="top-right"&&r.appendChild(k),{header:r,iconHolder:c,headerTitle:f,headerSubtitle:g,closeButton:N,closeButtonWrapper:k,clearChatButton:P,clearChatButtonWrapper:T}},Ks=(n,e,t)=>{var a,i,d,c;let r=(a=t==null?void 0:t.launcher)!=null?a:{},o=(i=r.closeButtonPlacement)!=null?i:"inline",s=(c=(d=r.clearChat)==null?void 0:d.placement)!=null?c:"inline";n.appendChild(e.header),o==="top-right"&&(n.style.position="relative",n.appendChild(e.closeButtonWrapper)),e.clearChatButtonWrapper&&s==="top-right"&&(n.style.position="relative",n.appendChild(e.clearChatButtonWrapper))};function as(n){let{items:e,onSelect:t,anchor:r,position:o="bottom-left",portal:s}=n,a=b("div","persona-dropdown-menu persona-hidden");a.setAttribute("role","menu"),a.setAttribute("data-persona-theme-zone","dropdown"),s?(a.style.position="fixed",a.style.zIndex=String(io)):(a.style.position="absolute",a.style.top="100%",a.style.marginTop="4px",o==="bottom-right"?a.style.right="0":a.style.left="0");for(let u of e){if(u.dividerBefore){let P=document.createElement("hr");a.appendChild(P)}let v=document.createElement("button");if(v.type="button",v.setAttribute("role","menuitem"),v.setAttribute("data-dropdown-item-id",u.id),u.destructive&&v.setAttribute("data-destructive",""),u.icon){let P=Ce(u.icon,16,"currentColor",1.5);P&&v.appendChild(P)}let x=document.createElement("span");x.textContent=u.label,v.appendChild(x),v.addEventListener("click",P=>{P.stopPropagation(),m(),t(u.id)}),a.appendChild(v)}let i=null;function d(){if(!s)return;let u=r.getBoundingClientRect();a.style.top=`${u.bottom+4}px`,o==="bottom-right"?(a.style.right=`${window.innerWidth-u.right}px`,a.style.left="auto"):(a.style.left=`${u.left}px`,a.style.right="auto")}function c(){d(),a.classList.remove("persona-hidden"),requestAnimationFrame(()=>{let u=v=>{!a.contains(v.target)&&!r.contains(v.target)&&m()};document.addEventListener("click",u,!0),i=()=>document.removeEventListener("click",u,!0)})}function m(){a.classList.add("persona-hidden"),i==null||i(),i=null}function f(){a.classList.contains("persona-hidden")?c():m()}function g(){m(),a.remove()}return s&&s.appendChild(a),{element:a,show:c,hide:m,toggle:f,destroy:g}}function wn(n){let{icon:e,label:t,size:r,strokeWidth:o,className:s,onClick:a,aria:i}=n,d=b("button","persona-icon-btn"+(s?" "+s:""));d.type="button",d.setAttribute("aria-label",t),d.title=t;let c=Ce(e,r!=null?r:16,"currentColor",o!=null?o:2);if(c&&d.appendChild(c),a&&d.addEventListener("click",a),i)for(let[m,f]of Object.entries(i))d.setAttribute(m,f);return d}function Di(n){let{icon:e,label:t,variant:r="default",size:o="sm",iconSize:s,className:a,onClick:i,aria:d}=n,c="persona-label-btn";r!=="default"&&(c+=" persona-label-btn--"+r),c+=" persona-label-btn--"+o,a&&(c+=" "+a);let m=b("button",c);if(m.type="button",m.setAttribute("aria-label",t),e){let g=Ce(e,s!=null?s:14,"currentColor",2);g&&m.appendChild(g)}let f=b("span");if(f.textContent=t,m.appendChild(f),i&&m.addEventListener("click",i),d)for(let[g,u]of Object.entries(d))m.setAttribute(g,u);return m}function ju(n){var u,v;let{label:e,icon:t="chevron-down",menuItems:r,onSelect:o,position:s="bottom-left",portal:a,className:i,hover:d}=n,c=b("div","persona-combo-btn"+(i?" "+i:""));c.style.position="relative",c.style.display="inline-flex",c.style.alignItems="center",c.style.cursor="pointer",c.setAttribute("role","button"),c.setAttribute("tabindex","0"),c.setAttribute("aria-haspopup","true"),c.setAttribute("aria-expanded","false"),c.setAttribute("aria-label",e);let m=b("span","persona-combo-btn-label");m.textContent=e,c.appendChild(m);let f=Ce(t,14,"currentColor",2);f&&(f.style.marginLeft="4px",f.style.opacity="0.6",c.appendChild(f)),d&&(c.style.borderRadius=(u=d.borderRadius)!=null?u:"10px",c.style.padding=(v=d.padding)!=null?v:"6px 4px 6px 12px",c.style.border="1px solid transparent",c.style.transition="background-color 0.15s ease, border-color 0.15s ease",c.addEventListener("mouseenter",()=>{var x,P;c.style.backgroundColor=(x=d.background)!=null?x:"",c.style.borderColor=(P=d.border)!=null?P:""}),c.addEventListener("mouseleave",()=>{c.style.backgroundColor="",c.style.borderColor="transparent"}));let g=as({items:r,onSelect:x=>{c.setAttribute("aria-expanded","false"),o(x)},anchor:c,position:s,portal:a});return a||c.appendChild(g.element),c.addEventListener("click",x=>{x.stopPropagation();let P=!g.element.classList.contains("persona-hidden");c.setAttribute("aria-expanded",P?"false":"true"),g.toggle()}),c.addEventListener("keydown",x=>{(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),c.click())}),{element:c,setLabel:x=>{m.textContent=x,c.setAttribute("aria-label",x)},open:()=>{c.setAttribute("aria-expanded","true"),g.show()},close:()=>{c.setAttribute("aria-expanded","false"),g.hide()},toggle:()=>{let x=!g.element.classList.contains("persona-hidden");c.setAttribute("aria-expanded",x?"false":"true"),g.toggle()},destroy:()=>{g.destroy(),c.remove()}}}var tb=n=>{var r;let e=Wo({config:n.config,showClose:n.showClose,onClose:n.onClose,onClearChat:n.onClearChat}),t=(r=n.layoutHeaderConfig)==null?void 0:r.onTitleClick;if(t){let o=e.headerTitle.parentElement;o&&(o.style.cursor="pointer",o.setAttribute("role","button"),o.setAttribute("tabindex","0"),o.addEventListener("click",()=>t()),o.addEventListener("keydown",s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),t())}))}return e};function nb(n,e,t){var r,o,s;if(e!=null&&e.length)for(let a of e){let i=b("button","persona-inline-flex persona-items-center persona-justify-center persona-rounded-md persona-border-none persona-bg-transparent persona-p-0 persona-text-persona-muted hover:persona-opacity-80");if(i.type="button",i.setAttribute("aria-label",(o=(r=a.ariaLabel)!=null?r:a.label)!=null?o:a.id),a.icon){let d=Ce(a.icon,14,"currentColor",2);d&&i.appendChild(d)}else a.label&&(i.textContent=a.label);if((s=a.menuItems)!=null&&s.length){let d=b("div","persona-relative");d.appendChild(i);let c=as({items:a.menuItems,onSelect:m=>t==null?void 0:t(m),anchor:d,position:"bottom-left"});d.appendChild(c.element),i.addEventListener("click",m=>{m.stopPropagation(),c.toggle()}),n.appendChild(d)}else i.addEventListener("click",()=>t==null?void 0:t(a.id)),n.appendChild(i)}}var rb=n=>{var M,N,k,W,C,I,D,B,E;let{config:e,showClose:t=!0,onClose:r,layoutHeaderConfig:o,onHeaderAction:s}=n,a=(M=e==null?void 0:e.launcher)!=null?M:{},i=b("div","persona-flex persona-items-center persona-justify-between persona-px-6 persona-py-4");i.setAttribute("data-persona-theme-zone","header"),i.style.backgroundColor="var(--persona-header-bg, var(--persona-surface, #ffffff))",i.style.borderBottomColor="var(--persona-header-border, var(--persona-divider, #f1f5f9))",i.style.boxShadow="var(--persona-header-shadow, none)",i.style.borderBottom="var(--persona-header-border-bottom, 1px solid var(--persona-header-border, var(--persona-divider, #f1f5f9)))";let d=o==null?void 0:o.titleMenu,c,m;if(d)c=ju({label:(N=a.title)!=null?N:"Chat Assistant",menuItems:d.menuItems,onSelect:d.onSelect,hover:d.hover,className:""}).element,c.style.color=Ln.titleColor,m=(k=c.querySelector(".persona-combo-btn-label"))!=null?k:c;else{if(c=b("div","persona-flex persona-min-w-0 persona-flex-1 persona-items-center persona-gap-1"),m=b("span","persona-text-base persona-font-semibold persona-truncate"),m.style.color=Ln.titleColor,m.textContent=(W=a.title)!=null?W:"Chat Assistant",c.appendChild(m),nb(c,o==null?void 0:o.trailingActions,(C=o==null?void 0:o.onAction)!=null?C:s),o!=null&&o.onTitleClick){c.style.cursor="pointer",c.setAttribute("role","button"),c.setAttribute("tabindex","0");let j=o.onTitleClick;c.addEventListener("click",te=>{te.target.closest("button")||j()}),c.addEventListener("keydown",te=>{(te.key==="Enter"||te.key===" ")&&(te.preventDefault(),j())})}let z=o==null?void 0:o.titleRowHover;z&&(c.style.borderRadius=(I=z.borderRadius)!=null?I:"10px",c.style.padding=(D=z.padding)!=null?D:"6px 4px 6px 12px",c.style.margin="-6px 0 -6px -12px",c.style.border="1px solid transparent",c.style.transition="background-color 0.15s ease, border-color 0.15s ease",c.style.width="fit-content",c.style.flex="none",c.addEventListener("mouseenter",()=>{var j,te;c.style.backgroundColor=(j=z.background)!=null?j:"",c.style.borderColor=(te=z.border)!=null?te:""}),c.addEventListener("mouseleave",()=>{c.style.backgroundColor="",c.style.borderColor="transparent"}))}i.appendChild(c);let f=(B=a.closeButtonSize)!=null?B:"32px",g=b("div",""),u=b("button","persona-inline-flex persona-items-center persona-justify-center persona-rounded-full hover:persona-bg-gray-100 persona-cursor-pointer persona-border-none");u.style.height=f,u.style.width=f,u.type="button",u.setAttribute("aria-label","Close chat"),u.style.display=t?"":"none",u.style.color=a.closeButtonColor||Ln.actionIconColor;let v=(E=a.closeButtonIconName)!=null?E:"x",x=Ce(v,"28px","currentColor",1);x?u.appendChild(x):u.textContent="\xD7",r&&u.addEventListener("click",r),g.appendChild(u),i.appendChild(g);let P=b("div");P.style.display="none";let T=b("span");return T.style.display="none",{header:i,iconHolder:P,headerTitle:m,headerSubtitle:T,closeButton:u,closeButtonWrapper:g,clearChatButton:null,clearChatButtonWrapper:null}},Vu={default:tb,minimal:rb},ob=n=>{var e;return(e=Vu[n])!=null?e:Vu.default},_a=(n,e,t)=>{var a,i,d;if(e!=null&&e.render){let c=e.render({config:n,onClose:t==null?void 0:t.onClose,onClearChat:t==null?void 0:t.onClearChat,trailingActions:e.trailingActions,onAction:e.onAction}),m=b("div");m.style.display="none";let f=b("span"),g=b("span"),u=b("button");u.style.display="none";let v=b("div");return v.style.display="none",{header:c,iconHolder:m,headerTitle:f,headerSubtitle:g,closeButton:u,closeButtonWrapper:v,clearChatButton:null,clearChatButtonWrapper:null}}let r=(a=e==null?void 0:e.layout)!=null?a:"default",s=ob(r)({config:n,showClose:(d=(i=e==null?void 0:e.showCloseButton)!=null?i:t==null?void 0:t.showClose)!=null?d:!0,onClose:t==null?void 0:t.onClose,onClearChat:t==null?void 0:t.onClearChat,layoutHeaderConfig:e,onHeaderAction:e==null?void 0:e.onAction});return e&&(e.showIcon===!1&&(s.iconHolder.style.display="none"),e.showTitle===!1&&(s.headerTitle.style.display="none"),e.showSubtitle===!1&&(s.headerSubtitle.style.display="none"),e.showCloseButton===!1&&(s.closeButton.style.display="none"),e.showClearChat===!1&&s.clearChatButtonWrapper&&(s.clearChatButtonWrapper.style.display="none")),s};var $a=n=>{var a,i;let e=b("textarea");e.setAttribute("data-persona-composer-input",""),e.placeholder=(i=(a=n==null?void 0:n.copy)==null?void 0:a.inputPlaceholder)!=null?i:"Type your message\u2026",e.className="persona-w-full persona-min-h-[24px] persona-resize-none persona-border-none persona-bg-transparent persona-text-sm persona-text-persona-primary focus:persona-outline-none focus:persona-border-none persona-composer-textarea",e.rows=1,e.style.fontFamily='var(--persona-input-font-family, var(--persona-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif))',e.style.fontWeight="var(--persona-input-font-weight, var(--persona-font-weight, 400))";let t=3,r=20;e.style.maxHeight=`${t*r}px`,e.style.overflowY="auto";let o=()=>{let d=parseFloat(e.style.maxHeight);return Number.isFinite(d)&&d>0?d:t*r},s=()=>{e.addEventListener("input",()=>{e.style.height="auto";let d=Math.min(e.scrollHeight,o());e.style.height=`${d}px`})};return e.style.border="none",e.style.outline="none",e.style.borderWidth="0",e.style.borderStyle="none",e.style.borderColor="transparent",e.addEventListener("focus",()=>{e.style.border="none",e.style.outline="none",e.style.borderWidth="0",e.style.borderStyle="none",e.style.borderColor="transparent",e.style.boxShadow="none"}),e.addEventListener("blur",()=>{e.style.border="none",e.style.outline="none"}),{textarea:e,attachAutoResize:s}},Ua=n=>{var W,C,I,D,B,E,z,j,te,We,$e,ve;let e=(W=n==null?void 0:n.sendButton)!=null?W:{},t=(C=e.useIcon)!=null?C:!1,r=(I=e.iconText)!=null?I:"\u2191",o=e.iconName,s=(D=e.stopIconName)!=null?D:"square",a=(B=e.tooltipText)!=null?B:"Send message",i=(E=e.stopTooltipText)!=null?E:"Stop generating",d=(j=(z=n==null?void 0:n.copy)==null?void 0:z.sendButtonLabel)!=null?j:"Send",c=(We=(te=n==null?void 0:n.copy)==null?void 0:te.stopButtonLabel)!=null?We:"Stop",m=($e=e.showTooltip)!=null?$e:!1,f=(ve=e.size)!=null?ve:"40px",g=e.backgroundColor,u=e.textColor,v=b("div","persona-send-button-wrapper"),x=Tt("button",{className:Ms("persona-rounded-button disabled:persona-opacity-50 persona-cursor-pointer",t?"persona-flex persona-items-center persona-justify-center":"persona-bg-persona-accent persona-px-4 persona-py-2 persona-text-sm persona-font-semibold",t&&!g&&"persona-bg-persona-primary",!t&&!u&&"persona-text-white"),attrs:{type:"submit","data-persona-composer-submit":""},style:{width:t?f:void 0,height:t?f:void 0,minWidth:t?f:void 0,minHeight:t?f:void 0,fontSize:t?"18px":void 0,lineHeight:t?"1":void 0,color:t?u||"var(--persona-button-primary-fg, #ffffff)":u||void 0,backgroundColor:t&&g||void 0,borderWidth:e.borderWidth||void 0,borderStyle:e.borderWidth?"solid":void 0,borderColor:e.borderColor||void 0,paddingLeft:e.paddingX||void 0,paddingRight:e.paddingX||void 0,paddingTop:e.paddingY||void 0,paddingBottom:e.paddingY||void 0}}),P=null,T=null;if(t){let Pe=parseFloat(f)||24,Oe=(u==null?void 0:u.trim())||"currentColor";o?(P=Ce(o,Pe,Oe,2),P?x.appendChild(P):x.textContent=r):x.textContent=r,T=Ce(s,Pe,Oe,2)}else x.textContent=d;let M=null;m&&a&&(M=b("div","persona-send-button-tooltip"),M.textContent=a,v.appendChild(M)),x.setAttribute("aria-label",a),v.appendChild(x);let N="send";return{button:x,wrapper:v,setMode:Pe=>{if(Pe===N)return;N=Pe;let Oe=Pe==="stop"?i:a;if(x.setAttribute("aria-label",Oe),M&&(M.textContent=Oe),t){if(P&&T){let Ae=Pe==="stop"?T:P;x.replaceChildren(Ae)}}else x.textContent=Pe==="stop"?c:d}}},qa=n=>{var M,N,k,W,C,I,D,B,E,z,j,te;let e=(M=n==null?void 0:n.voiceRecognition)!=null?M:{};if(!(e.enabled===!0))return null;let r=typeof window!="undefined"&&(typeof window.webkitSpeechRecognition!="undefined"||typeof window.SpeechRecognition!="undefined"),o=((N=e.provider)==null?void 0:N.type)==="runtype";if(!(r||o))return null;let a=(W=(k=n==null?void 0:n.sendButton)==null?void 0:k.size)!=null?W:"40px",i=(C=e.iconName)!=null?C:"mic",d=(I=e.iconSize)!=null?I:a,c=parseFloat(d)||24,m=(B=e.backgroundColor)!=null?B:(D=n==null?void 0:n.sendButton)==null?void 0:D.backgroundColor,f=(z=e.iconColor)!=null?z:(E=n==null?void 0:n.sendButton)==null?void 0:E.textColor,g=b("div","persona-send-button-wrapper"),u=Tt("button",{className:"persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer",attrs:{type:"button","data-persona-composer-mic":"","aria-label":"Start voice recognition"},style:{width:d,height:d,minWidth:d,minHeight:d,fontSize:"18px",lineHeight:"1",color:f||"var(--persona-text, #111827)",backgroundColor:m||void 0,borderWidth:e.borderWidth||void 0,borderStyle:e.borderWidth?"solid":void 0,borderColor:e.borderColor||void 0,paddingLeft:e.paddingX||void 0,paddingRight:e.paddingX||void 0,paddingTop:e.paddingY||void 0,paddingBottom:e.paddingY||void 0}}),x=Ce(i,c,f||"currentColor",1.5);x?u.appendChild(x):u.textContent="\u{1F3A4}",g.appendChild(u);let P=(j=e.tooltipText)!=null?j:"Start voice recognition";if(((te=e.showTooltip)!=null?te:!1)&&P){let We=b("div","persona-send-button-tooltip");We.textContent=P,g.appendChild(We)}return{button:u,wrapper:g}},za=n=>{var v,x,P,T,M,N,k,W;let e=(v=n==null?void 0:n.attachments)!=null?v:{};if(e.enabled!==!0)return null;let t=(P=(x=n==null?void 0:n.sendButton)==null?void 0:x.size)!=null?P:"40px",r=b("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2");r.setAttribute("data-persona-composer-attachment-previews",""),r.style.display="none";let o=b("input");o.type="file",o.setAttribute("data-persona-composer-attachment-input",""),o.accept=((T=e.allowedTypes)!=null?T:$r).join(","),o.multiple=((M=e.maxFiles)!=null?M:4)>1,o.style.display="none",o.setAttribute("aria-label","Attach files");let s=(N=e.buttonIconName)!=null?N:"paperclip",a=t,i=parseFloat(a)||40,d=Math.round(i*.6),c=b("div","persona-send-button-wrapper"),m=Tt("button",{className:"persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer persona-attachment-button",attrs:{type:"button","data-persona-composer-attachment-button":"","aria-label":(k=e.buttonTooltipText)!=null?k:"Attach file"},style:{width:a,height:a,minWidth:a,minHeight:a,fontSize:"18px",lineHeight:"1",backgroundColor:"transparent",color:"var(--persona-primary, #111827)",border:"none",borderRadius:"6px",transition:"background-color 0.15s ease"}});m.addEventListener("mouseenter",()=>{m.style.backgroundColor="var(--persona-palette-colors-black-alpha-50, rgba(0, 0, 0, 0.05))"}),m.addEventListener("mouseleave",()=>{m.style.backgroundColor="transparent"});let f=Ce(s,d,"currentColor",1.5);f?m.appendChild(f):m.textContent="\u{1F4CE}",m.addEventListener("click",C=>{C.preventDefault(),o.click()}),c.appendChild(m);let g=(W=e.buttonTooltipText)!=null?W:"Attach file",u=b("div","persona-send-button-tooltip");return u.textContent=g,c.appendChild(u),{button:m,wrapper:c,input:o,previewsContainer:r}},ja=n=>{var a,i,d;let e=(a=n==null?void 0:n.statusIndicator)!=null?a:{},t=e.align==="left"?"persona-text-left":e.align==="center"?"persona-text-center":"persona-text-right",r=b("div",`persona-mt-2 ${t} persona-text-xs persona-text-persona-muted`);r.setAttribute("data-persona-composer-status","");let o=(i=e.visible)!=null?i:!0;r.style.display=o?"":"none";let s=(d=e.idleText)!=null?d:"Online";if(e.idleLink){let c=b("a");c.href=e.idleLink,c.target="_blank",c.rel="noopener noreferrer",c.textContent=s,c.style.color="inherit",c.style.textDecoration="none",r.appendChild(c)}else r.textContent=s;return r},Va=()=>Tt("div",{className:"persona-mb-3 persona-flex persona-flex-wrap persona-gap-2",attrs:{"data-persona-composer-suggestions":""}});var Ka=n=>{var v,x,P,T,M,N;let{config:e}=n,t=Tt("div",{className:"persona-widget-footer persona-border-t-persona-divider persona-bg-persona-surface persona-px-6 persona-py-4",attrs:{"data-persona-theme-zone":"composer"}}),r=Va(),o=Tt("form",{className:"persona-widget-composer persona-flex persona-flex-col persona-gap-2 persona-rounded-2xl persona-border persona-border-gray-200 persona-bg-persona-input-background persona-px-4 persona-py-3",attrs:{"data-persona-composer-form":""},style:{outline:"none"}}),{textarea:s,attachAutoResize:a}=$a(e);a();let i=Ua(e),d=qa(e),c=za(e),m=ja(e);c&&(c.previewsContainer.style.gap="8px",o.append(c.previewsContainer,c.input)),o.append(s);let f=Tt("div",{className:"persona-widget-composer__actions persona-flex persona-items-center persona-justify-between persona-w-full",attrs:{"data-persona-composer-actions":""}}),g=b("div","persona-widget-composer__left-actions persona-flex persona-items-center persona-gap-2"),u=b("div","persona-widget-composer__right-actions persona-flex persona-items-center persona-gap-1");return c&&g.append(c.wrapper),d&&u.append(d.wrapper),u.append(i.wrapper),f.append(g,u),o.append(f),o.addEventListener("click",k=>{k.target!==i.button&&k.target!==i.wrapper&&k.target!==(d==null?void 0:d.button)&&k.target!==(d==null?void 0:d.wrapper)&&k.target!==(c==null?void 0:c.button)&&k.target!==(c==null?void 0:c.wrapper)&&s.focus()}),t.append(r,o,m),{footer:t,suggestions:r,composerForm:o,textarea:s,sendButton:i.button,sendButtonWrapper:i.wrapper,micButton:(v=d==null?void 0:d.button)!=null?v:null,micButtonWrapper:(x=d==null?void 0:d.wrapper)!=null?x:null,statusText:m,attachmentButton:(P=c==null?void 0:c.button)!=null?P:null,attachmentButtonWrapper:(T=c==null?void 0:c.wrapper)!=null?T:null,attachmentInput:(M=c==null?void 0:c.input)!=null?M:null,attachmentPreviewsContainer:(N=c==null?void 0:c.previewsContainer)!=null?N:null,actionsRow:f,leftActions:g,rightActions:u,setSendButtonMode:i.setMode}};var Ku=()=>{let n=Tt("button",{className:"persona-pill-peek",attrs:{type:"button","data-persona-pill-peek":"","aria-label":"Show conversation",tabindex:"-1"}}),e=b("span","persona-pill-peek__icon"),t=Ce("message-square",16,"currentColor",1.5);t&&e.appendChild(t);let r=b("span","persona-pill-peek__text"),o=b("span","persona-pill-peek__caret"),s=Ce("chevron-up",16,"currentColor",1.5);return s&&o.appendChild(s),n.append(e,r,o),{root:n,textNode:r}},Gu=n=>{var v,x,P,T,M,N;let{config:e}=n,t=Tt("div",{className:"persona-widget-footer persona-widget-footer--pill",attrs:{"data-persona-theme-zone":"composer"}}),r=Va();r.style.display="none";let o=ja(e);o.style.display="none";let{textarea:s,attachAutoResize:a}=$a(e);s.style.maxHeight="100px",a();let i=Ua(e),d=qa(e),c=za(e);c&&c.previewsContainer.classList.add("persona-pill-composer__previews");let m=Tt("form",{className:"persona-widget-composer persona-pill-composer",attrs:{"data-persona-composer-form":""},style:{outline:"none"}}),f=b("div","persona-widget-composer__left-actions persona-pill-composer__left");c&&f.append(c.wrapper);let g=b("div","persona-widget-composer__right-actions persona-pill-composer__right");d&&g.append(d.wrapper),g.append(i.wrapper),m.addEventListener("click",k=>{k.target!==i.button&&k.target!==i.wrapper&&k.target!==(d==null?void 0:d.button)&&k.target!==(d==null?void 0:d.wrapper)&&k.target!==(c==null?void 0:c.button)&&k.target!==(c==null?void 0:c.wrapper)&&s.focus()}),c&&m.append(c.input),m.append(f,s,g),c&&t.append(c.previewsContainer),t.append(m,r,o);let u=m;return{footer:t,suggestions:r,composerForm:m,textarea:s,sendButton:i.button,sendButtonWrapper:i.wrapper,micButton:(v=d==null?void 0:d.button)!=null?v:null,micButtonWrapper:(x=d==null?void 0:d.wrapper)!=null?x:null,statusText:o,attachmentButton:(P=c==null?void 0:c.button)!=null?P:null,attachmentButtonWrapper:(T=c==null?void 0:c.wrapper)!=null?T:null,attachmentInput:(M=c==null?void 0:c.input)!=null?M:null,attachmentPreviewsContainer:(N=c==null?void 0:c.previewsContainer)!=null?N:null,actionsRow:u,leftActions:f,rightActions:g,setSendButtonMode:i.setMode}};var Qu=n=>{var m,f,g,u,v,x,P,T,M,N,k,W,C,I,D,B,E;let e=(f=(m=n==null?void 0:n.launcher)==null?void 0:m.enabled)!=null?f:!0,t=mn(n);if(Vs(n)){let z=(u=(g=n==null?void 0:n.launcher)==null?void 0:g.composerBar)!=null?u:{},j=b("div","persona-widget-wrapper persona-fixed persona-transition");j.setAttribute("data-persona-composer-bar",""),j.dataset.state="collapsed",j.dataset.expandedSize=(v=z.expandedSize)!=null?v:"anchored",j.style.zIndex=String((P=(x=n==null?void 0:n.launcher)==null?void 0:x.zIndex)!=null?P:xn);let te=b("div","persona-widget-panel persona-relative persona-flex persona-flex-1 persona-min-h-0 persona-flex-col");te.style.width="100%",j.appendChild(te);let We=b("div","persona-widget-pill-root");return We.setAttribute("data-persona-composer-bar",""),We.dataset.state="collapsed",We.dataset.expandedSize=(T=z.expandedSize)!=null?T:"anchored",We.style.zIndex=String((N=(M=n==null?void 0:n.launcher)==null?void 0:M.zIndex)!=null?N:xn),{wrapper:j,panel:te,pillRoot:We}}if(t){let z=b("div","persona-relative persona-h-full persona-w-full persona-flex persona-flex-1 persona-min-h-0 persona-flex-col"),j=b("div","persona-relative persona-h-full persona-w-full persona-flex persona-flex-1 persona-min-h-0 persona-flex-col");return z.appendChild(j),{wrapper:z,panel:j}}if(!e){let z=b("div","persona-relative persona-h-full persona-flex persona-flex-col persona-flex-1 persona-min-h-0"),j=b("div","persona-relative persona-flex-1 persona-flex persona-flex-col persona-min-h-0"),te=(W=(k=n==null?void 0:n.launcher)==null?void 0:k.width)!=null?W:"100%";return z.style.width=te,j.style.width="100%",z.appendChild(j),{wrapper:z,panel:j}}let o=(C=n==null?void 0:n.launcher)!=null?C:{},s=o.position&&gr[o.position]?gr[o.position]:gr["bottom-right"],a=b("div",`persona-widget-wrapper persona-fixed ${s} persona-transition`);a.style.zIndex=String((D=(I=n==null?void 0:n.launcher)==null?void 0:I.zIndex)!=null?D:xn);let i=b("div","persona-widget-panel persona-relative persona-min-h-[320px]"),d=(E=(B=n==null?void 0:n.launcher)==null?void 0:B.width)!=null?E:n==null?void 0:n.launcherWidth,c=d!=null?d:Ur;return i.style.width=c,i.style.maxWidth=c,a.appendChild(i),{wrapper:a,panel:i}},sb=(n,e)=>{var k,W,C,I,D,B,E,z,j;let t=b("div","persona-widget-container persona-relative persona-flex persona-flex-1 persona-min-h-0 persona-flex-col persona-text-persona-primary");t.setAttribute("data-persona-theme-zone","container");let{button:r,wrapper:o}=Fa(n,{showClose:e,wrapperClassName:"persona-composer-bar-close",buttonSize:"16px",iconSize:"14px"});o.style.position="absolute",o.style.top="8px",o.style.right="8px",o.style.zIndex="10";let s=(C=(W=(k=n==null?void 0:n.launcher)==null?void 0:k.clearChat)==null?void 0:W.enabled)!=null?C:!0,a=null,i=null;if(s){let te=Oa(n,{wrapperClassName:"persona-composer-bar-clear-chat",buttonSize:"16px",iconSize:"14px"});a=te.button,i=te.wrapper,i.style.position="absolute",i.style.top="8px",i.style.right="32px",i.style.zIndex="10"}let d=Tt("span",{className:"persona-widget-header",attrs:{"data-persona-theme-zone":"header"},style:{display:"none"}}),c=Tt("div",{className:"persona-widget-body persona-flex persona-flex-1 persona-min-h-0 persona-flex-col persona-gap-6 persona-overflow-y-auto persona-bg-persona-container persona-px-6 persona-py-6",attrs:{id:"persona-scroll-container","data-persona-theme-zone":"messages"},style:{paddingTop:"48px"}});c.style.setProperty("scrollbar-gutter","stable");let m=Tt("h2",{className:"persona-text-lg persona-font-semibold persona-text-persona-primary",text:(D=(I=n==null?void 0:n.copy)==null?void 0:I.welcomeTitle)!=null?D:"Hello \u{1F44B}"}),f=Tt("p",{className:"persona-mt-2 persona-text-sm persona-text-persona-muted",text:(E=(B=n==null?void 0:n.copy)==null?void 0:B.welcomeSubtitle)!=null?E:"Ask anything about your account or products."}),g=Tt("div",{className:"persona-rounded-2xl persona-bg-persona-surface persona-p-6",attrs:{"data-persona-intro-card":""},style:{boxShadow:"var(--persona-intro-card-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))"}},m,f),u=b("div","persona-flex persona-flex-col persona-gap-3"),v=(z=n==null?void 0:n.layout)==null?void 0:z.contentMaxWidth;v&&(u.style.maxWidth=v,u.style.marginLeft="auto",u.style.marginRight="auto",u.style.width="100%"),((j=n==null?void 0:n.copy)==null?void 0:j.showWelcomeCard)!==!1||(g.style.display="none",c.classList.remove("persona-gap-6"),c.classList.add("persona-gap-3")),c.append(g,u);let P=Tt("div",{className:"persona-composer-overlay persona-pointer-events-none",attrs:{"data-persona-composer-overlay":""},style:{position:"absolute",left:"0",right:"0",bottom:"0",zIndex:"20"}}),T=Gu({config:n}),{root:M,textNode:N}=Ku();return t.append(d,o,c,P),i&&t.appendChild(i),{container:t,body:c,messagesWrapper:u,composerOverlay:P,suggestions:T.suggestions,textarea:T.textarea,sendButton:T.sendButton,sendButtonWrapper:T.sendButtonWrapper,micButton:T.micButton,micButtonWrapper:T.micButtonWrapper,composerForm:T.composerForm,statusText:T.statusText,introTitle:m,introSubtitle:f,closeButton:r,closeButtonWrapper:o,clearChatButton:a,clearChatButtonWrapper:i,iconHolder:b("span"),headerTitle:b("span"),headerSubtitle:b("span"),header:d,footer:T.footer,attachmentButton:T.attachmentButton,attachmentButtonWrapper:T.attachmentButtonWrapper,attachmentInput:T.attachmentInput,attachmentPreviewsContainer:T.attachmentPreviewsContainer,actionsRow:T.actionsRow,leftActions:T.leftActions,rightActions:T.rightActions,setSendButtonMode:T.setSendButtonMode,peekBanner:M,peekTextNode:N}},Xu=(n,e=!0)=>{var P,T,M,N,k,W,C,I,D;if(Vs(n))return sb(n,e);let t=Tt("div",{className:"persona-widget-container persona-flex persona-h-full persona-w-full persona-flex-1 persona-min-h-0 persona-flex-col persona-text-persona-primary persona-bg-persona-surface persona-rounded-2xl persona-overflow-hidden persona-border persona-border-persona-border",attrs:{"data-persona-theme-zone":"container"}}),r=(P=n==null?void 0:n.layout)==null?void 0:P.header,o=((T=n==null?void 0:n.layout)==null?void 0:T.showHeader)!==!1,s=r?_a(n,r,{showClose:e}):Wo({config:n,showClose:e}),a=Tt("div",{className:"persona-widget-body persona-flex persona-flex-1 persona-min-h-0 persona-flex-col persona-gap-6 persona-overflow-y-auto persona-bg-persona-container persona-px-6 persona-py-6",attrs:{id:"persona-scroll-container","data-persona-theme-zone":"messages"}});a.style.setProperty("scrollbar-gutter","stable");let i=Tt("h2",{className:"persona-text-lg persona-font-semibold persona-text-persona-primary",text:(N=(M=n==null?void 0:n.copy)==null?void 0:M.welcomeTitle)!=null?N:"Hello \u{1F44B}"}),d=Tt("p",{className:"persona-mt-2 persona-text-sm persona-text-persona-muted",text:(W=(k=n==null?void 0:n.copy)==null?void 0:k.welcomeSubtitle)!=null?W:"Ask anything about your account or products."}),c=Tt("div",{className:"persona-rounded-2xl persona-bg-persona-surface persona-p-6",attrs:{"data-persona-intro-card":""},style:{boxShadow:mn(n)?"none":"var(--persona-intro-card-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))"}},i,d),m=b("div","persona-flex persona-flex-col persona-gap-3"),f=(C=n==null?void 0:n.layout)==null?void 0:C.contentMaxWidth;f&&(m.style.maxWidth=f,m.style.marginLeft="auto",m.style.marginRight="auto",m.style.width="100%"),((I=n==null?void 0:n.copy)==null?void 0:I.showWelcomeCard)!==!1||(c.style.display="none",a.classList.remove("persona-gap-6"),a.classList.add("persona-gap-3")),a.append(c,m);let u=Ka({config:n}),v=((D=n==null?void 0:n.layout)==null?void 0:D.showFooter)!==!1;o?Ks(t,s,n):(s.header.style.display="none",Ks(t,s,n)),t.append(a);let x=Tt("div",{className:"persona-composer-overlay persona-pointer-events-none",attrs:{"data-persona-composer-overlay":""},style:{position:"absolute",left:"0",right:"0",bottom:"0",zIndex:"20"}});return v||(u.footer.style.display="none"),t.append(u.footer),t.append(x),{container:t,body:a,messagesWrapper:m,composerOverlay:x,suggestions:u.suggestions,textarea:u.textarea,sendButton:u.sendButton,sendButtonWrapper:u.sendButtonWrapper,micButton:u.micButton,micButtonWrapper:u.micButtonWrapper,composerForm:u.composerForm,statusText:u.statusText,introTitle:i,introSubtitle:d,closeButton:s.closeButton,closeButtonWrapper:s.closeButtonWrapper,clearChatButton:s.clearChatButton,clearChatButtonWrapper:s.clearChatButtonWrapper,iconHolder:s.iconHolder,headerTitle:s.headerTitle,headerSubtitle:s.headerSubtitle,header:s.header,footer:u.footer,attachmentButton:u.attachmentButton,attachmentButtonWrapper:u.attachmentButtonWrapper,attachmentInput:u.attachmentInput,attachmentPreviewsContainer:u.attachmentPreviewsContainer,actionsRow:u.actionsRow,leftActions:u.leftActions,rightActions:u.rightActions,setSendButtonMode:u.setSendButtonMode}};var Ni=(n,e)=>{let t=b("button");t.type="button",t.innerHTML=`
|
|
18
18
|
<span class="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full persona-bg-persona-primary persona-text-white" data-role="launcher-icon">\u{1F4AC}</span>
|
|
19
19
|
<img data-role="launcher-image" class="persona-rounded-full persona-object-cover" alt="" style="display:none" />
|
|
20
20
|
<span class="persona-flex persona-min-w-0 persona-flex-1 persona-flex-col persona-items-start persona-text-left">
|
|
@@ -22,14 +22,14 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
22
22
|
<span class="persona-block persona-w-full persona-truncate persona-text-xs persona-text-persona-muted" data-role="launcher-subtitle"></span>
|
|
23
23
|
</span>
|
|
24
24
|
<span class="persona-ml-2 persona-grid persona-place-items-center persona-rounded-full persona-bg-persona-primary persona-text-persona-call-to-action" data-role="launcher-call-to-action-icon">\u2197</span>
|
|
25
|
-
`,t.addEventListener("click",e);let r=s=>{var N,P,W,C,I,B,D,T,U,z,re,ke,je;let a=(N=s.launcher)!=null?N:{},i=wn(s),d=t.querySelector("[data-role='launcher-title']");if(d){let be=(P=a.title)!=null?P:"Chat Assistant";d.textContent=be,d.setAttribute("title",be)}let c=t.querySelector("[data-role='launcher-subtitle']");if(c){let be=(W=a.subtitle)!=null?W:"Here to help you get answers fast";c.textContent=be,c.setAttribute("title",be)}let g=t.querySelector(".persona-flex-col");g&&(a.textHidden||i?g.style.display="none":g.style.display="");let f=t.querySelector("[data-role='launcher-icon']");if(f)if(a.agentIconHidden)f.style.display="none";else{let be=(C=a.agentIconSize)!=null?C:"40px";if(f.style.height=be,f.style.width=be,f.innerHTML="",a.agentIconName){let He=parseFloat(be)||24,Fe=Ae(a.agentIconName,He*.6,"var(--persona-text-inverse, #ffffff)",2);Fe?(f.appendChild(Fe),f.style.display=""):(f.textContent=(I=a.agentIconText)!=null?I:"\u{1F4AC}",f.style.display="")}else a.iconUrl?f.style.display="none":(f.textContent=(B=a.agentIconText)!=null?B:"\u{1F4AC}",f.style.display="")}let u=t.querySelector("[data-role='launcher-image']");if(u){let be=(D=a.agentIconSize)!=null?D:"40px";u.style.height=be,u.style.width=be,a.iconUrl&&!a.agentIconName&&!a.agentIconHidden?(u.src=a.iconUrl,u.style.display="block"):u.style.display="none"}let m=t.querySelector("[data-role='launcher-call-to-action-icon']");if(m){let be=(T=a.callToActionIconSize)!=null?T:"32px";m.style.height=be,m.style.width=be,a.callToActionIconBackgroundColor?(m.style.backgroundColor=a.callToActionIconBackgroundColor,m.classList.remove("persona-bg-persona-primary")):(m.style.backgroundColor="",m.classList.add("persona-bg-persona-primary")),a.callToActionIconColor?(m.style.color=a.callToActionIconColor,m.classList.remove("persona-text-persona-call-to-action")):(m.style.color="",m.classList.add("persona-text-persona-call-to-action"));let He=0;if(a.callToActionIconPadding?(m.style.boxSizing="border-box",m.style.padding=a.callToActionIconPadding,He=(parseFloat(a.callToActionIconPadding)||0)*2):(m.style.boxSizing="",m.style.padding=""),a.callToActionIconHidden)m.style.display="none";else if(m.style.display=i?"none":"",m.innerHTML="",a.callToActionIconName){let Fe=parseFloat(be)||24,Se=Math.max(Fe-He,8),xe=Ae(a.callToActionIconName,Se,"currentColor",2);xe?m.appendChild(xe):m.textContent=(U=a.callToActionIconText)!=null?U:"\u2197"}else m.textContent=(z=a.callToActionIconText)!=null?z:"\u2197"}let v=a.position&&xr[a.position]?xr[a.position]:xr["bottom-right"],x="persona-fixed persona-flex persona-items-center persona-gap-3 persona-rounded-launcher persona-bg-persona-surface persona-py-2.5 persona-pl-3 persona-pr-3 persona-transition hover:persona-translate-y-[-2px] persona-cursor-pointer",M="persona-relative persona-mt-4 persona-mb-4 persona-mx-auto persona-flex persona-items-center persona-justify-center persona-rounded-launcher persona-bg-persona-surface persona-transition hover:persona-translate-y-[-2px] persona-cursor-pointer";t.className=i?M:`${x} ${v}`,i||(t.style.zIndex=String((re=a.zIndex)!=null?re:Mn));let E="1px solid var(--persona-border, #e5e7eb)",k="var(--persona-launcher-shadow, 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1))";t.style.border=(ke=a.border)!=null?ke:E,t.style.boxShadow=a.shadow!==void 0?a.shadow.trim()===""?"none":a.shadow:k,i?(t.style.width="0",t.style.minWidth="0",t.style.maxWidth="0",t.style.padding="0",t.style.overflow="hidden",t.style.border="none",t.style.boxShadow="none"):(t.style.width="",t.style.minWidth="",t.style.maxWidth=(je=a.collapsedMaxWidth)!=null?je:"",t.style.justifyContent="",t.style.padding="",t.style.overflow="")},o=()=>{t.removeEventListener("click",e),t.remove()};return n&&r(n),{element:t,update:r,destroy:o}};var im=({config:n,showClose:e})=>{let{wrapper:t,panel:r,pillRoot:o}=sm(n),s=am(n,e),a={wrapper:t,panel:r,pillRoot:o},i={container:s.container,body:s.body,messagesWrapper:s.messagesWrapper,composerOverlay:s.composerOverlay,introTitle:s.introTitle,introSubtitle:s.introSubtitle},d={element:s.header,iconHolder:s.iconHolder,headerTitle:s.headerTitle,headerSubtitle:s.headerSubtitle,closeButton:s.closeButton,closeButtonWrapper:s.closeButtonWrapper,clearChatButton:s.clearChatButton,clearChatButtonWrapper:s.clearChatButtonWrapper},c={footer:s.footer,form:s.composerForm,textarea:s.textarea,sendButton:s.sendButton,sendButtonWrapper:s.sendButtonWrapper,micButton:s.micButton,micButtonWrapper:s.micButtonWrapper,statusText:s.statusText,suggestions:s.suggestions,attachmentButton:s.attachmentButton,attachmentButtonWrapper:s.attachmentButtonWrapper,attachmentInput:s.attachmentInput,attachmentPreviewsContainer:s.attachmentPreviewsContainer,actionsRow:s.actionsRow,leftActions:s.leftActions,rightActions:s.rightActions,setSendButtonMode:s.setSendButtonMode,peekBanner:s.peekBanner,peekTextNode:s.peekTextNode};return{shell:a,panelElements:s,transcript:i,header:d,composer:c,replaceHeader:u=>(d.element.replaceWith(u.header),d.element=u.header,d.iconHolder=u.iconHolder,d.headerTitle=u.headerTitle,d.headerSubtitle=u.headerSubtitle,d.closeButton=u.closeButton,d.closeButtonWrapper=u.closeButtonWrapper,d.clearChatButton=u.clearChatButton,d.clearChatButtonWrapper=u.clearChatButtonWrapper,u),replaceComposer:u=>{c.footer.replaceWith(u),c.footer=u}}},sl=({config:n,plugins:e,onToggle:t})=>{let r=e.find(s=>s.renderLauncher);if(r!=null&&r.renderLauncher){let s=r.renderLauncher({config:n,defaultRenderer:()=>ol(n,t).element,onToggle:t});if(s)return{instance:null,element:s}}let o=ol(n,t);return{instance:o,element:o.element}};var sb=n=>{switch(n){case"max_tool_calls":return"Stopped after calling a tool. Send a follow-up to continue.";case"length":return"Response cut off as max tokens reached. Ask for more to continue.";case"content_filter":return"The provider filtered this response.";case"error":return"Something went wrong generating this response.";default:return null}},ab=(n,e)=>{if(!n)return null;let t=sb(n);if(t===null)return null;let r=e==null?void 0:e[n],o=r!==void 0?r:t;return o||null},ib=(n,e)=>{let t=b("div","persona-message-stop-reason persona-text-xs persona-mt-2 persona-italic");return t.setAttribute("data-stop-reason",n),t.setAttribute("role","note"),t.style.opacity="0.75",t.textContent=e,t},lb=n=>{let e=n.toLowerCase();return e.startsWith("data:image/svg+xml")?!1:!!(/^(?:https?|blob):/i.test(n)||e.startsWith("data:image/")||!n.includes(":"))},al=n=>{let e=n.toLowerCase();return e.startsWith("javascript:")||e.startsWith("data:text/html")||e.startsWith("data:text/javascript")||e.startsWith("data:text/xml")||e.startsWith("data:application/xhtml")||e.startsWith("data:image/svg+xml")?!1:!!(/^(?:https?|blob):/i.test(n)||e.startsWith("data:")||!n.includes(":"))},il=320,cm=320,cb=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="image"&&typeof e.image=="string"&&e.image.trim().length>0),db=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="audio"&&typeof e.audio=="string"&&e.audio.trim().length>0),pb=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="video"&&typeof e.video=="string"&&e.video.trim().length>0),ub=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="file"&&typeof e.data=="string"&&e.data.trim().length>0),mb=(n,e,t)=>{if(n.length===0)return null;try{let r=b("div","persona-flex persona-flex-col persona-gap-2");r.setAttribute("data-message-attachments","images"),e&&(r.style.marginBottom="8px");let o=0,s=!1,a=()=>{s||(s=!0,r.remove(),t==null||t())};return n.forEach((i,d)=>{var f;let c=b("img");c.alt=((f=i.alt)==null?void 0:f.trim())||`Attached image ${d+1}`,c.loading="lazy",c.decoding="async",c.referrerPolicy="no-referrer",c.style.display="block",c.style.width="100%",c.style.maxWidth=`${il}px`,c.style.maxHeight=`${cm}px`,c.style.height="auto",c.style.objectFit="contain",c.style.borderRadius="10px",c.style.backgroundColor="var(--persona-attachment-image-bg, var(--persona-container, #f3f4f6))",c.style.border="1px solid var(--persona-attachment-image-border, var(--persona-border, #e5e7eb))";let g=!1;o+=1,c.addEventListener("error",()=>{g||(g=!0,o=Math.max(0,o-1),c.remove(),o===0&&a())}),c.addEventListener("load",()=>{g=!0}),lb(i.image)?(c.src=i.image,r.appendChild(c)):(g=!0,o=Math.max(0,o-1),c.remove())}),o===0?(a(),null):r}catch{return t==null||t(),null}},gb=n=>{if(n.length===0)return null;try{let e=b("div","persona-flex persona-flex-col persona-gap-2");e.setAttribute("data-message-attachments","audio");let t=0;return n.forEach(r=>{if(!al(r.audio))return;let o=b("audio");o.controls=!0,o.preload="metadata",o.src=r.audio,o.style.display="block",o.style.width="100%",o.style.maxWidth=`${il}px`,e.appendChild(o),t+=1}),t===0?(e.remove(),null):e}catch{return null}},fb=n=>{if(n.length===0)return null;try{let e=b("div","persona-flex persona-flex-col persona-gap-2");e.setAttribute("data-message-attachments","video");let t=0;return n.forEach(r=>{if(!al(r.video))return;let o=b("video");o.controls=!0,o.preload="metadata",o.src=r.video,o.style.display="block",o.style.width="100%",o.style.maxWidth=`${il}px`,o.style.maxHeight=`${cm}px`,o.style.borderRadius="10px",o.style.backgroundColor="var(--persona-attachment-image-bg, var(--persona-container, #f3f4f6))",e.appendChild(o),t+=1}),t===0?(e.remove(),null):e}catch{return null}},hb=n=>{if(n.length===0)return null;try{let e=b("div","persona-flex persona-flex-col persona-gap-2");e.setAttribute("data-message-attachments","files");let t=0;return n.forEach(r=>{if(!al(r.data))return;let o=b("a");o.href=r.data,o.download=r.filename,o.target="_blank",o.rel="noopener noreferrer",o.textContent=r.filename,o.className="persona-message-file-attachment",o.style.display="inline-flex",o.style.alignItems="center",o.style.gap="6px",o.style.padding="6px 10px",o.style.borderRadius="8px",o.style.fontSize="0.875rem",o.style.textDecoration="underline",o.style.backgroundColor="var(--persona-attachment-file-bg, var(--persona-container, #f3f4f6))",o.style.border="1px solid var(--persona-attachment-file-border, var(--persona-border, #e5e7eb))",o.style.color="inherit",e.appendChild(o),t+=1}),t===0?(e.remove(),null):e}catch{return null}},ua=()=>{let n=document.createElement("div");n.className="persona-flex persona-items-center persona-space-x-1 persona-h-5 persona-mt-2";let e=document.createElement("div");e.className="persona-animate-typing persona-rounded-full persona-h-1.5 persona-w-1.5",e.style.backgroundColor="currentColor",e.style.opacity="0.4",e.style.animationDelay="0ms";let t=document.createElement("div");t.className="persona-animate-typing persona-rounded-full persona-h-1.5 persona-w-1.5",t.style.backgroundColor="currentColor",t.style.opacity="0.4",t.style.animationDelay="250ms";let r=document.createElement("div");r.className="persona-animate-typing persona-rounded-full persona-h-1.5 persona-w-1.5",r.style.backgroundColor="currentColor",r.style.opacity="0.4",r.style.animationDelay="500ms";let o=document.createElement("span");return o.className="persona-sr-only",o.textContent="Loading",n.appendChild(e),n.appendChild(t),n.appendChild(r),n.appendChild(o),n},yb=(n,e,t)=>{let r={config:t!=null?t:{},streaming:!0,location:n,defaultRenderer:ua};if(e){let o=e(r);if(o!==null)return o}return ua()},bb=(n,e)=>{let t=b("div","persona-flex-shrink-0 persona-w-8 persona-h-8 persona-rounded-full persona-flex persona-items-center persona-justify-center persona-text-sm"),r=e==="user"?n.userAvatar:n.assistantAvatar;if(r)if(r.startsWith("http")||r.startsWith("/")||r.startsWith("data:")){let o=b("img");o.src=r,o.alt=e==="user"?"User":"Assistant",o.className="persona-w-full persona-h-full persona-rounded-full persona-object-cover",t.appendChild(o)}else t.textContent=r,t.classList.add(e==="user"?"persona-bg-persona-accent":"persona-bg-persona-primary","persona-text-white");else t.textContent=e==="user"?"U":"A",t.classList.add(e==="user"?"persona-bg-persona-accent":"persona-bg-persona-primary","persona-text-white");return t},lm=(n,e,t="div")=>{let r=b(t,"persona-text-xs persona-text-persona-muted"),o=new Date(n.createdAt);return e.format?r.textContent=e.format(o):r.textContent=o.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}),r},vb=(n,e="bubble")=>{let t=["persona-message-bubble","persona-max-w-[85%]"];switch(e){case"flat":n==="user"?t.push("persona-message-user-bubble","persona-ml-auto","persona-text-persona-primary","persona-py-2"):t.push("persona-message-assistant-bubble","persona-text-persona-primary","persona-py-2");break;case"minimal":t.push("persona-text-sm","persona-leading-relaxed"),n==="user"?t.push("persona-message-user-bubble","persona-ml-auto","persona-bg-persona-accent","persona-text-white","persona-px-3","persona-py-2","persona-rounded-lg"):t.push("persona-message-assistant-bubble","persona-bg-persona-surface","persona-text-persona-primary","persona-px-3","persona-py-2","persona-rounded-lg");break;default:t.push("persona-rounded-2xl","persona-text-sm","persona-leading-relaxed","persona-shadow-sm"),n==="user"?t.push("persona-message-user-bubble","persona-ml-auto","persona-bg-persona-accent","persona-text-white","persona-px-5","persona-py-3"):t.push("persona-message-assistant-bubble","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-px-5","persona-py-3");break}return t},xb=(n,e,t)=>{var v,x,M,E,k,N,P;let r=(v=e.showCopy)!=null?v:!0,o=(x=e.showUpvote)!=null?x:!0,s=(M=e.showDownvote)!=null?M:!0,a=(E=e.showReadAloud)!=null?E:!1;if(!r&&!o&&!s&&!a){let W=b("div");return W.style.display="none",W.id=`actions-${n.id}`,W.setAttribute("data-actions-for",n.id),W}let i=(k=e.visibility)!=null?k:"hover",d=(N=e.align)!=null?N:"right",c=(P=e.layout)!=null?P:"pill-inside",g={left:"persona-message-actions-left",center:"persona-message-actions-center",right:"persona-message-actions-right"}[d],f={"pill-inside":"persona-message-actions-pill","row-inside":"persona-message-actions-row"}[c],u=b("div",`persona-message-actions persona-flex persona-items-center persona-gap-1 persona-mt-2 ${g} ${f} ${i==="hover"?"persona-message-actions-hover":""}`);u.id=`actions-${n.id}`,u.setAttribute("data-actions-for",n.id);let m=(W,C,I)=>{let B=En({icon:W,label:C,size:14,className:"persona-message-action-btn"});return B.setAttribute("data-action",I),B};return r&&u.appendChild(m("copy","Copy message","copy")),a&&u.appendChild(m("volume-2","Read aloud","read-aloud")),o&&u.appendChild(m("thumbs-up","Upvote","upvote")),s&&u.appendChild(m("thumbs-down","Downvote","downvote")),u},ll=(n,e,t,r,o,s)=>{var oe,G,se,ge,pe,V,ae,Ie,ee,Z,ne,at,it,ot,Me,fe,Xe;let a=t!=null?t:{},i=(oe=a.layout)!=null?oe:"bubble",d=a.avatar,c=a.timestamp,g=(G=d==null?void 0:d.show)!=null?G:!1,f=(se=c==null?void 0:c.show)!=null?se:!1,u=(ge=d==null?void 0:d.position)!=null?ge:"left",m=(pe=c==null?void 0:c.position)!=null?pe:"below",v=vb(n.role,i),x=b("div",v.join(" "));x.id=`bubble-${n.id}`,x.setAttribute("data-message-id",n.id),x.setAttribute("data-persona-theme-zone",n.role==="user"?"user-message":"assistant-message"),n.role==="user"?(x.style.backgroundColor="var(--persona-message-user-bg, var(--persona-accent))",x.style.color="var(--persona-message-user-text, white)"):n.role==="assistant"&&(x.style.backgroundColor="var(--persona-message-assistant-bg, var(--persona-surface))",x.style.color="var(--persona-message-assistant-text, var(--persona-text))");let M=cb(n),E=(ae=(V=n.content)==null?void 0:V.trim())!=null?ae:"",N=M.length>0&&E===Ga,P=ii((ee=(Ie=s==null?void 0:s.widgetConfig)==null?void 0:Ie.features)==null?void 0:ee.streamAnimation),W=(at=(ne=(Z=s==null?void 0:s.widgetConfig)==null?void 0:Z.features)==null?void 0:ne.streamAnimation)==null?void 0:at.plugins,C=n.role==="assistant"&&P.type!=="none"?sa(P.type,W):null,I=n.role==="assistant"&&((it=C==null?void 0:C.isAnimating)==null?void 0:it.call(C,n))===!0,B=n.role==="assistant"&&C!==null&&(!!n.streaming||I);B&&(C!=null&&C.bubbleClass)&&x.classList.add(C.bubbleClass);let D=document.createElement("div");D.classList.add("persona-message-content"),B&&C&&(C.containerClass&&D.classList.add(C.containerClass),D.style.setProperty("--persona-stream-step",`${P.speed}ms`),D.style.setProperty("--persona-stream-duration",`${P.duration}ms`));let T=B?li((ot=n.content)!=null?ot:"",P.buffer,C,n,!!n.streaming):(Me=n.content)!=null?Me:"",U=e({text:T,message:n,streaming:!!n.streaming,raw:n.rawContent}),z=U;B&&(C==null?void 0:C.wrap)==="char"?z=aa(U,"char",n.id,{skipTags:C.skipTags}):B&&(C==null?void 0:C.wrap)==="word"&&(z=aa(U,"word",n.id,{skipTags:C.skipTags}));let re=null;if(N?(re=document.createElement("div"),re.innerHTML=z,re.style.display="none",D.appendChild(re)):D.innerHTML=z,B&&(C!=null&&C.useCaret)&&!N&&E){let J=ci(),ue=D.querySelectorAll(".persona-stream-char, .persona-stream-word"),Ee=ue[ue.length-1];if(Ee!=null&&Ee.parentNode)Ee.parentNode.insertBefore(J,Ee.nextSibling);else{let Je=D.lastElementChild;Je?Je.appendChild(J):D.appendChild(J)}}if(f&&m==="inline"&&n.createdAt){let J=lm(n,c,"span");J.classList.add("persona-timestamp-inline");let ue=D.lastElementChild;ue?ue.appendChild(J):D.appendChild(J)}if(M.length>0){let J=mb(M,!N&&!!E,()=>{N&&re&&(re.style.display="")});J?x.appendChild(J):N&&re&&(re.style.display="")}let ke=db(n);if(ke.length>0){let J=gb(ke);J&&x.appendChild(J)}let je=pb(n);if(je.length>0){let J=fb(je);J&&x.appendChild(J)}let be=ub(n);if(be.length>0){let J=hb(be);J&&x.appendChild(J)}if(x.appendChild(D),f&&m==="below"&&n.createdAt){let J=lm(n,c);J.classList.add("persona-mt-1"),x.appendChild(J)}let He=n.role==="assistant"?ab(n.stopReason,(Xe=(fe=s==null?void 0:s.widgetConfig)==null?void 0:fe.copy)==null?void 0:Xe.stopReasonNotice):null;if(n.streaming&&n.role==="assistant"){let J=!!(T&&T.trim()),ue=P.placeholder==="skeleton",Ee=ue&&P.buffer==="line"&&J;if(J)Ee&&x.appendChild(ia());else if(ue)x.appendChild(ia());else{let Je=yb("inline",s==null?void 0:s.loadingIndicatorRenderer,s==null?void 0:s.widgetConfig);Je&&x.appendChild(Je)}}if(He&&n.stopReason&&!n.streaming&&(E||(D.style.display="none"),x.appendChild(ib(n.stopReason,He))),n.role==="assistant"&&!n.streaming&&n.content&&n.content.trim()&&(r==null?void 0:r.enabled)!==!1&&r){let J=xb(n,r,o);x.appendChild(J)}if(!g||n.role==="system")return x;let Se=b("div",`persona-flex persona-gap-2 ${n.role==="user"?"persona-flex-row-reverse":""}`),xe=bb(d,n.role);return u==="right"||u==="left"&&n.role==="user"?Se.append(x,xe):Se.append(xe,x),x.classList.remove("persona-max-w-[85%]"),x.classList.add("persona-max-w-[calc(85%-2.5rem)]"),Se};var vs=new Set,wb=(n,e)=>e==null?!1:typeof e=="string"?(n.textContent=e,!0):(n.appendChild(e),!0),Cb=(n,e)=>{var r,o;let t=(o=(r=n.reasoning)==null?void 0:r.chunks.join("").trim())!=null?o:"";return t?t.split(/\r?\n/).map(s=>s.trim()).filter(Boolean).slice(0,e).join(`
|
|
26
|
-
`):""},
|
|
27
|
-
`);let o=
|
|
28
|
-
`):""},Tb=(n,e)=>{var g,f,u,m,v;let t=n.toolCall,r=(g=e==null?void 0:e.features)==null?void 0:g.toolCallDisplay,o=(f=r==null?void 0:r.collapsedMode)!=null?f:"tool-call",s=Sb(n,(u=r==null?void 0:r.previewMaxLines)!=null?u:3),a=t?uu(t):"";if(!t)return{summary:a,previewText:s,isActive:!1};let i=t.status!=="complete",d=(m=e==null?void 0:e.toolCall)!=null?m:{},c=a;return o==="tool-name"?c=((v=t.name)==null?void 0:v.trim())||a:o==="tool-preview"&&s&&(c=s),i&&d.activeTextTemplate?c=zi(t,d.activeTextTemplate,c):!i&&d.completeTextTemplate&&(c=zi(t,d.completeTextTemplate,c)),{summary:c,previewText:s,isActive:i}},pm=(n,e,t)=>{var g;let r=xs.has(n),o=(g=t==null?void 0:t.toolCall)!=null?g:{},s=e.querySelector('button[data-expand-header="true"]'),a=e.querySelector(".persona-border-t"),i=e.querySelector('[data-persona-collapsed-preview="tool"]');if(!s||!a)return;s.setAttribute("aria-expanded",r?"true":"false");let d=s.querySelector(".persona-ml-auto"),c=d==null?void 0:d.querySelector(":scope > .persona-flex.persona-items-center");if(c){c.innerHTML="";let f=o.toggleTextColor||o.headerTextColor||"currentColor",u=Ae(r?"chevron-up":"chevron-down",16,f,2);u?c.appendChild(u):c.textContent=r?"Hide":"Show"}a.style.display=r?"":"none",i&&(i.style.display=r?"none":i.textContent||i.childNodes.length?"":"none")},dl=(n,e)=>{var z,re,ke,je,be,He,Fe,Se,xe;let t=n.toolCall,r=(z=e==null?void 0:e.toolCall)!=null?z:{},o=b("div",["persona-message-bubble","persona-tool-bubble","persona-w-full","persona-max-w-[85%]","persona-rounded-2xl","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-shadow-sm","persona-overflow-hidden","persona-px-0","persona-py-0"].join(" "));if(o.id=`bubble-${n.id}`,o.setAttribute("data-message-id",n.id),r.backgroundColor&&(o.style.backgroundColor=r.backgroundColor),r.borderColor&&(o.style.borderColor=r.borderColor),r.borderWidth&&(o.style.borderWidth=r.borderWidth),r.borderRadius&&(o.style.borderRadius=r.borderRadius),o.style.boxShadow=r.shadow!==void 0?r.shadow.trim()===""?"none":r.shadow:"var(--persona-tool-bubble-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))",!t)return o;let s=(ke=(re=e==null?void 0:e.features)==null?void 0:re.toolCallDisplay)!=null?ke:{},a=s.expandable!==!1,i=a&&xs.has(n.id),{summary:d,previewText:c,isActive:g}=Tb(n,e),f=b("button",a?"persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none":"persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none");f.type="button",a&&(f.setAttribute("aria-expanded",i?"true":"false"),f.setAttribute("data-expand-header","true")),f.setAttribute("data-bubble-type","tool"),r.headerBackgroundColor&&(f.style.backgroundColor=r.headerBackgroundColor),r.headerPaddingX&&(f.style.paddingLeft=r.headerPaddingX,f.style.paddingRight=r.headerPaddingX),r.headerPaddingY&&(f.style.paddingTop=r.headerPaddingY,f.style.paddingBottom=r.headerPaddingY);let u=b("div","persona-flex persona-flex-col persona-text-left"),m=b("span","persona-text-xs persona-text-persona-primary");r.headerTextColor&&(m.style.color=r.headerTextColor);let v=String((je=t.startedAt)!=null?je:Date.now()),x=()=>{let oe=b("span","");return oe.setAttribute("data-tool-elapsed",v),oe.textContent=Qs(t),oe},M=(He=r.renderCollapsedSummary)==null?void 0:He.call(r,{message:n,toolCall:t,defaultSummary:d,previewText:c,collapsedMode:(be=s.collapsedMode)!=null?be:"tool-call",isActive:g,config:e!=null?e:{},elapsed:Qs(t),createElapsedElement:x});typeof M=="string"&&M.trim()?(m.textContent=M,u.appendChild(m)):M instanceof HTMLElement?u.appendChild(M):(m.textContent=d,u.appendChild(m));let E=(Fe=s.loadingAnimation)!=null?Fe:"none",k=r.activeTextTemplate,N=r.completeTextTemplate,P=g?k:N,W=M instanceof HTMLElement,C=(oe,G,se)=>{let ge=se;for(let pe of G){let V=b("span","persona-tool-char");V.style.setProperty("--char-index",String(ge)),V.textContent=pe===" "?"\xA0":pe,oe.appendChild(V),ge++}return ge},I=(oe,G)=>{var V;m.textContent="";let se=((V=t.name)==null?void 0:V.trim())||"tool",ge=za(oe,se),pe=0;for(let ae of ge){let Ie=ae.styles.length>0?(()=>{let ee=b("span",ae.styles.map(Z=>`persona-tool-text-${Z}`).join(" "));return m.appendChild(ee),ee})():m;if(ae.isDuration&&g)Ie.appendChild(x());else{let ee=ae.isDuration?Qs(t):ae.text;G?pe=C(Ie,ee,pe):Ie.appendChild(document.createTextNode(ee))}}};if(!W)if(g&&E!=="none"){let oe=(Se=r.loadingAnimationDuration)!=null?Se:2e3;if(m.setAttribute("data-preserve-animation","true"),E==="pulse")m.classList.add("persona-tool-loading-pulse"),m.style.setProperty("--persona-tool-anim-duration",`${oe}ms`),P&&I(P,!1);else if(m.classList.add(`persona-tool-loading-${E}`),m.style.setProperty("--persona-tool-anim-duration",`${oe}ms`),E==="shimmer-color"&&(r.loadingAnimationColor&&m.style.setProperty("--persona-tool-anim-color",r.loadingAnimationColor),r.loadingAnimationSecondaryColor&&m.style.setProperty("--persona-tool-anim-secondary-color",r.loadingAnimationSecondaryColor)),P)I(P,!0);else{let G=m.textContent||d;m.textContent="",C(m,G,0)}}else P&&I(P,!1);let B=null;if(a){B=b("div","persona-flex persona-items-center");let oe=r.toggleTextColor||r.headerTextColor||"currentColor",G=Ae(i?"chevron-up":"chevron-down",16,oe,2);G?B.appendChild(G):B.textContent=i?"Hide":"Show";let se=b("div","persona-flex persona-items-center persona-gap-2 persona-ml-auto");se.append(B),f.append(u,se)}else f.append(u);let D=b("div","persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted");if(D.setAttribute("data-persona-collapsed-preview","tool"),D.style.display="none",D.style.whiteSpace="pre-wrap",!i&&g&&s.activePreview&&c){let oe=(xe=r.renderCollapsedPreview)==null?void 0:xe.call(r,{message:n,toolCall:t,defaultPreview:c,isActive:g,config:e!=null?e:{}});Ab(D,oe)||(D.textContent=c),D.style.display=""}if(!i&&g&&s.activeMinHeight&&(o.style.minHeight=s.activeMinHeight),!a)return o.append(f,D),o;let T=b("div","persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-space-y-3 persona-px-4 persona-py-3");if(T.style.display=i?"":"none",r.contentBackgroundColor&&(T.style.backgroundColor=r.contentBackgroundColor),r.contentTextColor&&(T.style.color=r.contentTextColor),r.contentPaddingX&&(T.style.paddingLeft=r.contentPaddingX,T.style.paddingRight=r.contentPaddingX),r.contentPaddingY&&(T.style.paddingTop=r.contentPaddingY,T.style.paddingBottom=r.contentPaddingY),t.name){let oe=b("div","persona-text-xs persona-text-persona-muted persona-italic");r.contentTextColor?oe.style.color=r.contentTextColor:r.headerTextColor&&(oe.style.color=r.headerTextColor),oe.textContent=t.name,T.appendChild(oe)}if(t.args!==void 0){let oe=b("div","persona-space-y-1"),G=b("div","persona-text-xs persona-text-persona-muted");r.labelTextColor&&(G.style.color=r.labelTextColor),G.textContent="Arguments";let se=b("pre","persona-max-h-48 persona-overflow-auto persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-border-gray-100 persona-bg-white persona-px-3 persona-py-2 persona-text-xs persona-text-persona-primary");se.style.fontSize="0.75rem",se.style.lineHeight="1rem",r.codeBlockBackgroundColor&&(se.style.backgroundColor=r.codeBlockBackgroundColor),r.codeBlockBorderColor&&(se.style.borderColor=r.codeBlockBorderColor),r.codeBlockTextColor&&(se.style.color=r.codeBlockTextColor),se.textContent=us(t.args),oe.append(G,se),T.appendChild(oe)}if(t.chunks&&t.chunks.length){let oe=b("div","persona-space-y-1"),G=b("div","persona-text-xs persona-text-persona-muted");r.labelTextColor&&(G.style.color=r.labelTextColor),G.textContent="Activity";let se=b("pre","persona-max-h-48 persona-overflow-auto persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-border-gray-100 persona-bg-white persona-px-3 persona-py-2 persona-text-xs persona-text-persona-primary");se.style.fontSize="0.75rem",se.style.lineHeight="1rem",r.codeBlockBackgroundColor&&(se.style.backgroundColor=r.codeBlockBackgroundColor),r.codeBlockBorderColor&&(se.style.borderColor=r.codeBlockBorderColor),r.codeBlockTextColor&&(se.style.color=r.codeBlockTextColor),se.textContent=t.chunks.join(""),oe.append(G,se),T.appendChild(oe)}if(t.status==="complete"&&t.result!==void 0){let oe=b("div","persona-space-y-1"),G=b("div","persona-text-xs persona-text-persona-muted");r.labelTextColor&&(G.style.color=r.labelTextColor),G.textContent="Result";let se=b("pre","persona-max-h-48 persona-overflow-auto persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-border-gray-100 persona-bg-white persona-px-3 persona-py-2 persona-text-xs persona-text-persona-primary");se.style.fontSize="0.75rem",se.style.lineHeight="1rem",r.codeBlockBackgroundColor&&(se.style.backgroundColor=r.codeBlockBackgroundColor),r.codeBlockBorderColor&&(se.style.borderColor=r.codeBlockBorderColor),r.codeBlockTextColor&&(se.style.color=r.codeBlockTextColor),se.textContent=us(t.result),oe.append(G,se),T.appendChild(oe)}if(t.status==="complete"&&typeof t.duration=="number"){let oe=b("div","persona-text-xs persona-text-persona-muted");r.contentTextColor&&(oe.style.color=r.contentTextColor),oe.textContent=`Duration: ${t.duration}ms`,T.appendChild(oe)}return(()=>{if(f.setAttribute("aria-expanded",i?"true":"false"),B){B.innerHTML="";let oe=r.toggleTextColor||r.headerTextColor||"currentColor",G=Ae(i?"chevron-up":"chevron-down",16,oe,2);G?B.appendChild(G):B.textContent=i?"Hide":"Show"}T.style.display=i?"":"none",D.style.display=i?"none":D.textContent||D.childNodes.length?"":"none"})(),o.append(f,D,T),o};var xi=new Map,Mb=n=>{let t=(n.startsWith(Bo)?n.slice(Bo.length):n).replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[_\-\s.]+/).filter(Boolean);if(t.length===0)return n;let r=t.join(" ").toLowerCase();return r.charAt(0).toUpperCase()+r.slice(1)},um=n=>(n==null?void 0:n.approval)!==!1?n==null?void 0:n.approval:void 0,mm=(n,e)=>{var r,o,s;let t=(o=(r=um(e))==null?void 0:r.detailsDisplay)!=null?o:"collapsed";return(s=xi.get(n))!=null?s:t==="expanded"},gm=(n,e,t)=>{var a,i;let r=um(t);n.setAttribute("aria-expanded",e?"true":"false");let o=n.querySelector("[data-approval-details-label]");o&&(o.textContent=e?(a=r==null?void 0:r.hideDetailsLabel)!=null?a:"Hide details":(i=r==null?void 0:r.showDetailsLabel)!=null?i:"Show details");let s=n.querySelector("[data-approval-details-chevron]");if(s){s.innerHTML="";let d=Ae(e?"chevron-up":"chevron-down",14,"currentColor",2);d&&s.appendChild(d)}},fm=(n,e,t)=>{let r=e.querySelector('button[data-bubble-type="approval"]'),o=e.querySelector("[data-approval-details]");if(!r||!o)return;let s=mm(n,t);gm(r,s,t),o.style.display=s?"":"none"};var wi=(n,e)=>{var I,B,D,T,U,z,re,ke,je,be,He,Fe,Se,xe,oe;let t=n.approval,r=(e==null?void 0:e.approval)!==!1?e==null?void 0:e.approval:void 0,o=(t==null?void 0:t.status)==="pending",s=b("div",["persona-approval-bubble","persona-w-full","persona-max-w-[85%]","persona-rounded-2xl","persona-border","persona-shadow-sm","persona-overflow-hidden"].join(" "));if(s.id=`bubble-${n.id}`,s.setAttribute("data-message-id",n.id),s.style.backgroundColor=(I=r==null?void 0:r.backgroundColor)!=null?I:"var(--persona-approval-bg, #fefce8)",s.style.borderColor=(B=r==null?void 0:r.borderColor)!=null?B:"var(--persona-approval-border, #fef08a)",s.style.boxShadow=(r==null?void 0:r.shadow)!==void 0?r.shadow.trim()===""?"none":r.shadow:"var(--persona-approval-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))",!t)return s;let a=b("div","persona-flex persona-items-start persona-gap-3 persona-px-4 persona-py-3"),i=b("div","persona-flex-shrink-0 persona-mt-0.5");i.setAttribute("data-approval-icon","true");let d=t.status==="denied"?"shield-x":t.status==="timeout"?"shield-alert":"shield-check",c=t.status==="approved"?"var(--persona-feedback-success, #16a34a)":t.status==="denied"?"var(--persona-feedback-error, #dc2626)":t.status==="timeout"?"var(--persona-feedback-warning, #ca8a04)":(D=r==null?void 0:r.titleColor)!=null?D:"currentColor",g=Ae(d,20,c,2);g&&i.appendChild(g);let f=b("div","persona-flex-1 persona-min-w-0"),u=b("div","persona-flex persona-items-center persona-gap-2"),m=b("span","persona-text-sm persona-font-medium persona-text-persona-primary");if(r!=null&&r.titleColor&&(m.style.color=r.titleColor),m.textContent=(T=r==null?void 0:r.title)!=null?T:"Approval Required",u.appendChild(m),!o){let G=b("span","persona-inline-flex persona-items-center persona-px-2 persona-py-0.5 persona-rounded-full persona-text-xs persona-font-medium");G.setAttribute("data-approval-status",t.status),t.status==="approved"?(G.style.backgroundColor="var(--persona-palette-colors-success-100, #dcfce7)",G.style.color="var(--persona-palette-colors-success-700, #15803d)",G.textContent="Approved"):t.status==="denied"?(G.style.backgroundColor="var(--persona-palette-colors-error-100, #fee2e2)",G.style.color="var(--persona-palette-colors-error-700, #b91c1c)",G.textContent="Denied"):t.status==="timeout"&&(G.style.backgroundColor="var(--persona-palette-colors-warning-100, #fef3c7)",G.style.color="var(--persona-palette-colors-warning-700, #b45309)",G.textContent="Timeout"),u.appendChild(G)}f.appendChild(u);let x=t.toolType==="webmcp"||t.toolName.startsWith(Bo)?Ri(t.toolName):void 0,M=(U=r==null?void 0:r.formatDescription)==null?void 0:U.call(r,{toolName:t.toolName,toolType:t.toolType,description:t.description,parameters:t.parameters,...x?{displayTitle:x}:{},...t.reason?{reason:t.reason}:{}}),E=!t.toolName,k=M||(E?t.description:`The assistant wants to use \u201C${x!=null?x:Mb(t.toolName)}\u201D.`),N=b("p","persona-text-sm persona-mt-0.5 persona-text-persona-muted");if(N.setAttribute("data-approval-summary","true"),r!=null&&r.descriptionColor&&(N.style.color=r.descriptionColor),N.textContent=k,f.appendChild(N),t.reason){let G=b("p","persona-text-sm persona-mt-1 persona-text-persona-muted");G.setAttribute("data-approval-reason","true"),r!=null&&r.reasonColor?G.style.color=r.reasonColor:r!=null&&r.descriptionColor&&(G.style.color=r.descriptionColor);let se=b("span","persona-font-medium");se.textContent=`${(z=r==null?void 0:r.reasonLabel)!=null?z:"Agent's stated reason:"} `,G.appendChild(se),G.appendChild(document.createTextNode(t.reason)),f.appendChild(G)}let P=(re=r==null?void 0:r.detailsDisplay)!=null?re:"collapsed",W=!!t.description&&!E,C=W||!!t.parameters;if(P!=="hidden"&&C){let G=mm(n.id,e),se=b("button","persona-inline-flex persona-items-center persona-gap-1 persona-mt-1 persona-p-0 persona-border-none persona-bg-transparent persona-text-xs persona-font-medium persona-cursor-pointer persona-text-persona-muted");se.type="button",se.setAttribute("data-expand-header","true"),se.setAttribute("data-bubble-type","approval"),r!=null&&r.descriptionColor&&(se.style.color=r.descriptionColor);let ge=b("span");ge.setAttribute("data-approval-details-label","true");let pe=b("span","persona-inline-flex persona-items-center");pe.setAttribute("data-approval-details-chevron","true"),se.append(ge,pe),gm(se,G,e),f.appendChild(se);let V=b("div");if(V.setAttribute("data-approval-details","true"),V.style.display=G?"":"none",W){let ae=b("p","persona-text-sm persona-mt-1 persona-text-persona-muted");r!=null&&r.descriptionColor&&(ae.style.color=r.descriptionColor),ae.textContent=t.description,V.appendChild(ae)}if(t.parameters){let ae=b("pre","persona-mt-2 persona-text-xs persona-p-2 persona-rounded persona-overflow-x-auto persona-max-h-32 persona-bg-persona-container persona-text-persona-primary");r!=null&&r.parameterBackgroundColor&&(ae.style.backgroundColor=r.parameterBackgroundColor),r!=null&&r.parameterTextColor&&(ae.style.color=r.parameterTextColor),ae.style.fontSize="0.75rem",ae.style.lineHeight="1rem",ae.textContent=us(t.parameters),V.appendChild(ae)}f.appendChild(V)}if(o){let G=b("div","persona-flex persona-gap-2 persona-mt-2");G.setAttribute("data-approval-buttons","true");let se=b("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-border-none persona-cursor-pointer");se.type="button",se.style.backgroundColor=(ke=r==null?void 0:r.approveButtonColor)!=null?ke:"var(--persona-approval-approve-bg, #22c55e)",se.style.color=(je=r==null?void 0:r.approveButtonTextColor)!=null?je:"#ffffff",se.setAttribute("data-approval-action","approve");let ge=Ae("shield-check",14,(be=r==null?void 0:r.approveButtonTextColor)!=null?be:"#ffffff",2);ge&&(ge.style.marginRight="4px",se.appendChild(ge));let pe=document.createTextNode((He=r==null?void 0:r.approveLabel)!=null?He:"Approve");se.appendChild(pe);let V=b("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-cursor-pointer");V.type="button",V.style.backgroundColor=(Fe=r==null?void 0:r.denyButtonColor)!=null?Fe:"transparent",V.style.color=(Se=r==null?void 0:r.denyButtonTextColor)!=null?Se:"var(--persona-feedback-error, #dc2626)",V.style.border=`1px solid ${r!=null&&r.denyButtonTextColor?r.denyButtonTextColor:"var(--persona-palette-colors-error-200, #fca5a5)"}`,V.setAttribute("data-approval-action","deny");let ae=Ae("shield-x",14,(xe=r==null?void 0:r.denyButtonTextColor)!=null?xe:"var(--persona-feedback-error, #dc2626)",2);ae&&(ae.style.marginRight="4px",V.appendChild(ae));let Ie=document.createTextNode((oe=r==null?void 0:r.denyLabel)!=null?oe:"Deny");V.appendChild(Ie),G.append(se,V),f.appendChild(G)}return a.append(i,f),s.appendChild(a),s};var hm=n=>{let e=[],t=null;return{buttons:e,render:(o,s,a,i,d,c)=>{n.innerHTML="",e.length=0;let g=(c==null?void 0:c.agentPushed)===!0;if(g||(t=null),!o||!o.length||!g&&(i!=null?i:s?s.getMessages():[]).some(M=>M.role==="user"))return;let f=document.createDocumentFragment(),u=s?s.isStreaming():!1,m=v=>{switch(v){case"serif":return'Georgia, "Times New Roman", Times, serif';case"mono":return'"Courier New", Courier, "Lucida Console", Monaco, monospace';default:return'-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif'}};if(o.forEach(v=>{let x=b("button","persona-rounded-button persona-bg-persona-surface persona-px-3 persona-py-1.5 persona-text-xs persona-font-medium persona-text-persona-primary hover:persona-opacity-80 persona-cursor-pointer persona-border persona-border-persona-border");x.type="button",x.textContent=v,x.disabled=u,d!=null&&d.fontFamily&&(x.style.fontFamily=m(d.fontFamily)),d!=null&&d.fontWeight&&(x.style.fontWeight=d.fontWeight),d!=null&&d.paddingX&&(x.style.paddingLeft=d.paddingX,x.style.paddingRight=d.paddingX),d!=null&&d.paddingY&&(x.style.paddingTop=d.paddingY,x.style.paddingBottom=d.paddingY),x.addEventListener("click",()=>{!s||s.isStreaming()||(a.value="",g&&n.dispatchEvent(new CustomEvent("persona:suggestReplies:selected",{detail:{suggestion:v},bubbles:!0,composed:!0})),s.sendMessage(v))}),f.appendChild(x),e.push(x)}),n.appendChild(f),g){let v=JSON.stringify(o);v!==t&&(t=v,n.dispatchEvent(new CustomEvent("persona:suggestReplies:shown",{detail:{suggestions:[...o]},bubbles:!0,composed:!0})))}}}};var ma=class{constructor(e=2e3,t=null){this.head=0;this.count=0;this.totalCaptured=0;this.eventTypesSet=new Set;this.maxSize=e,this.buffer=new Array(e),this.store=t}push(e){var t;this.buffer[this.head]=e,this.head=(this.head+1)%this.maxSize,this.count<this.maxSize&&this.count++,this.totalCaptured++,this.eventTypesSet.add(e.type),(t=this.store)==null||t.put(e)}getAll(){return this.count===0?[]:this.count<this.maxSize?this.buffer.slice(0,this.count):[...this.buffer.slice(this.head,this.maxSize),...this.buffer.slice(0,this.head)]}async restore(){if(!this.store)return 0;let e=await this.store.getAll();if(e.length===0)return 0;let t=e.length>this.maxSize?e.slice(e.length-this.maxSize):e;for(let r of t)this.buffer[this.head]=r,this.head=(this.head+1)%this.maxSize,this.count<this.maxSize&&this.count++,this.eventTypesSet.add(r.type);return this.totalCaptured=e.length,t.length}getAllFromStore(){return this.store?this.store.getAll():Promise.resolve(this.getAll())}getRecent(e){let t=this.getAll();return e>=t.length?t:t.slice(t.length-e)}getSize(){return this.count}getTotalCaptured(){return this.totalCaptured}getEvictedCount(){return this.totalCaptured-this.count}clear(){var e;this.buffer=new Array(this.maxSize),this.head=0,this.count=0,this.totalCaptured=0,this.eventTypesSet.clear(),(e=this.store)==null||e.clear()}destroy(){var e;this.buffer=[],this.head=0,this.count=0,this.totalCaptured=0,this.eventTypesSet.clear(),(e=this.store)==null||e.destroy()}getEventTypes(){return Array.from(this.eventTypesSet)}};var ga=class{constructor(e="persona-event-stream",t="events"){this.db=null;this.pendingWrites=[];this.flushScheduled=!1;this.isDestroyed=!1;this.dbName=e,this.storeName=t}open(){return new Promise((e,t)=>{try{let r=indexedDB.open(this.dbName,1);r.onupgradeneeded=()=>{let o=r.result;o.objectStoreNames.contains(this.storeName)||o.createObjectStore(this.storeName,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})},r.onsuccess=()=>{this.db=r.result,e()},r.onerror=()=>{t(r.error)}}catch(r){t(r)}})}put(e){!this.db||this.isDestroyed||(this.pendingWrites.push(e),this.flushScheduled||(this.flushScheduled=!0,queueMicrotask(()=>this.flushWrites())))}putBatch(e){if(!(!this.db||this.isDestroyed||e.length===0))try{let r=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName);for(let o of e)r.put(o)}catch{}}getAll(){return new Promise((e,t)=>{if(!this.db){e([]);return}try{let a=this.db.transaction(this.storeName,"readonly").objectStore(this.storeName).index("timestamp").getAll();a.onsuccess=()=>{e(a.result)},a.onerror=()=>{t(a.error)}}catch(r){t(r)}})}getCount(){return new Promise((e,t)=>{if(!this.db){e(0);return}try{let s=this.db.transaction(this.storeName,"readonly").objectStore(this.storeName).count();s.onsuccess=()=>{e(s.result)},s.onerror=()=>{t(s.error)}}catch(r){t(r)}})}clear(){return new Promise((e,t)=>{if(!this.db){e();return}this.pendingWrites=[];try{let s=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).clear();s.onsuccess=()=>{e()},s.onerror=()=>{t(s.error)}}catch(r){t(r)}})}close(){this.db&&(this.db.close(),this.db=null)}destroy(){return this.isDestroyed=!0,this.pendingWrites=[],this.close(),new Promise((e,t)=>{try{let r=indexedDB.deleteDatabase(this.dbName);r.onsuccess=()=>{e()},r.onerror=()=>{t(r.error)}}catch(r){t(r)}})}flushWrites(){if(this.flushScheduled=!1,!this.db||this.isDestroyed||this.pendingWrites.length===0)return;let e=this.pendingWrites;this.pendingWrites=[];try{let r=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName);for(let o of e)r.put(o)}catch{}}};var Eb=new Set(["flow_start","flow_run_start","agent_start","dispatch_start","run_start"]),kb=new Set(["step_start","execution_start"]),Lb=new Set(["step_delta","step_chunk","chunk","agent_turn_delta"]),Pb=new Set(["step_complete","agent_turn_complete"]),Ib=new Set(["flow_complete","agent_complete"]),ym=new Set(["step_error","flow_error","agent_error","dispatch_error","error"]),vm=n=>typeof n=="object"&&n!==null&&!Array.isArray(n),er=n=>typeof n=="number"&&Number.isFinite(n)?n:void 0,Uo=(n,e)=>{let t=n[e];return vm(t)?t:void 0};function pl(n){return n>0?Math.max(1,Math.ceil(n/4)):0}function Ci(n,e){if(!(n<=0||e===void 0||e<250))return n/(e/1e3)}function Wb(n,e){return typeof e.type=="string"?e.type:n}function Rb(n){return typeof n.text=="string"?n.text:typeof n.delta=="string"?n.delta:typeof n.content=="string"?n.content:typeof n.chunk=="string"?n.chunk:""}function Hb(n,e){return n==="step_delta"||n==="step_chunk"?e.stepType!=="tool"&&e.executionType!=="context":n!=="agent_turn_delta"?!0:(typeof e.contentType=="string"?e.contentType:typeof e.content_type=="string"?e.content_type:void 0)==="text"}function bm(n){var r,o,s,a,i;let e=Uo(n,"result"),t=[Uo(n,"tokens"),Uo(n,"totalTokens"),e?Uo(e,"tokens"):void 0,Uo(n,"usage"),e?Uo(e,"usage"):void 0];for(let d of t){if(!d)continue;let c=(o=(r=er(d.output))!=null?r:er(d.outputTokens))!=null?o:er(d.completionTokens);if(c!==void 0)return c}return(i=(s=er(n.outputTokens))!=null?s:er(n.completionTokens))!=null?i:e?(a=er(e.outputTokens))!=null?a:er(e.completionTokens):void 0}function Bb(n){var t,r,o,s,a;let e=Uo(n,"result");return(a=(o=(r=(t=er(n.executionTime))!=null?t:er(n.executionTimeMs))!=null?r:er(n.execution_time))!=null?o:er(n.duration))!=null?a:e?(s=er(e.executionTime))!=null?s:er(e.executionTimeMs):void 0}function Db(){return typeof performance!="undefined"&&typeof performance.now=="function"?performance.now():Date.now()}var fa=class{constructor(e=Db){this.metric={status:"idle"};this.run=null;this.now=e}getMetric(){let e=this.run;if(e&&this.metric.status==="running"&&e.firstDeltaAt!==void 0&&this.metric.outputTokens!==void 0){let t=this.now()-e.firstDeltaAt;return{...this.metric,durationMs:t,tokensPerSecond:Ci(this.metric.outputTokens,t)}}return this.metric}reset(){this.run=null,this.metric={status:"idle"}}startRun(e){this.run={startedAt:e,visibleCharCount:0,exactOutputTokens:0},this.metric={status:"running"}}processEvent(e,t){var s;if(!vm(t)){ym.has(e)&&this.run&&(this.run=null,this.metric={status:"error"});return}let r=Wb(e,t),o=this.now();if(Eb.has(r)){this.startRun(o);return}if(kb.has(r)){this.run||this.startRun(o);return}if(Lb.has(r)){if(!Hb(r,t))return;let a=Rb(t);if(!a)return;this.run||this.startRun(o);let i=this.run;(s=i.firstDeltaAt)!=null||(i.firstDeltaAt=o),i.visibleCharCount+=a.length;let d=i.exactOutputTokens+pl(i.visibleCharCount),c=o-i.firstDeltaAt;this.metric={status:"running",tokensPerSecond:Ci(d,c),outputTokens:d,durationMs:c,source:i.exactOutputTokens>0?"usage":"estimate"};return}if(Pb.has(r)){if(!this.run)return;let a=this.run,i=bm(t);i!==void 0&&(a.exactOutputTokens+=i,a.visibleCharCount=0);let d=a.exactOutputTokens>0,c=a.exactOutputTokens+pl(a.visibleCharCount),g=this.resolveDuration(a,t,o);this.metric={status:"running",tokensPerSecond:Ci(c,g),outputTokens:c,durationMs:g,source:d?"usage":"estimate"};return}if(Ib.has(r)){if(!this.run)return;let a=this.run,i=bm(t),d=i!=null?i:a.exactOutputTokens+pl(a.visibleCharCount),c=i!==void 0||a.exactOutputTokens>0?"usage":"estimate",g=this.resolveDuration(a,t,o);this.metric={status:"complete",tokensPerSecond:Ci(d,g),outputTokens:d,durationMs:g,source:c},this.run=null;return}if(ym.has(r)){if(!this.run)return;this.run=null,this.metric={status:"error"}}}resolveDuration(e,t,r){let o=e.firstDeltaAt!==void 0?r-e.firstDeltaAt:void 0;if(o!==void 0&&o>=250)return o;let s=Bb(t);return s!=null?s:r-e.startedAt}};function ws(n,e){e&&e.split(/\s+/).forEach(t=>t&&n.classList.add(t))}var Nb={flow_:{bg:"var(--persona-palette-colors-success-100, #dcfce7)",text:"var(--persona-palette-colors-success-700, #166534)"},step_:{bg:"var(--persona-palette-colors-primary-100, #f5f5f5)",text:"var(--persona-palette-colors-primary-700, #0a0a0a)"},reason_:{bg:"var(--persona-palette-colors-warning-100, #ffedd5)",text:"var(--persona-palette-colors-warning-700, #9a3412)"},tool_:{bg:"var(--persona-palette-colors-purple-100, #f3e8ff)",text:"var(--persona-palette-colors-purple-700, #6b21a8)"},agent_:{bg:"var(--persona-palette-colors-teal-100, #ccfbf1)",text:"var(--persona-palette-colors-teal-700, #115e59)"},error:{bg:"var(--persona-palette-colors-error-100, #fecaca)",text:"var(--persona-palette-colors-error-700, #991b1b)"}},Fb={bg:"var(--persona-palette-colors-gray-100, #f3f4f6)",text:"var(--persona-palette-colors-gray-600, #4b5563)"},Ob=["flowName","stepName","reasoningText","text","name","tool","toolName"],_b=100;function $b(n,e){let t={...Nb,...e};if(t[n])return t[n];for(let r of Object.keys(t))if(r.endsWith("_")&&n.startsWith(r))return t[r];return Fb}function qb(n,e){return`+${((n-e)/1e3).toFixed(3)}s`}function Ub(n){let e=new Date(n),t=String(e.getHours()).padStart(2,"0"),r=String(e.getMinutes()).padStart(2,"0"),o=String(e.getSeconds()).padStart(2,"0"),s=String(e.getMilliseconds()).padStart(3,"0");return`${t}:${r}:${o}.${s}`}function zb(n,e){try{let t=JSON.parse(n);if(typeof t!="object"||t===null)return null;for(let r of e){let o=r.split("."),s=t;for(let a of o)if(s&&typeof s=="object"&&s!==null)s=s[a];else{s=void 0;break}if(typeof s=="string"&&s.trim())return s.trim()}}catch{}return null}function jb(n){var e;return(e=navigator.clipboard)!=null&&e.writeText?navigator.clipboard.writeText(n):new Promise(t=>{let r=document.createElement("textarea");r.value=n,r.style.position="fixed",r.style.opacity="0",document.body.appendChild(r),r.select(),document.execCommand("copy"),document.body.removeChild(r),t()})}function Vb(n){let e;try{e=JSON.parse(n.payload)}catch{e=n.payload}return JSON.stringify({type:n.type,timestamp:new Date(n.timestamp).toISOString(),payload:e},null,2)}function Kb(n){return n.tokensPerSecond===void 0||!Number.isFinite(n.tokensPerSecond)?"-- tok/s":`${n.tokensPerSecond.toFixed(1)} tok/s`}function Gb(n){let e=[];return n.outputTokens!==void 0&&e.push(`${n.outputTokens.toLocaleString()} tok`),n.durationMs!==void 0&&e.push(`${(n.durationMs/1e3).toFixed(2)}s`),n.source&&e.push(n.source),e.join(" \xB7 ")}function Qb(n,e,t){let r,o;try{o=JSON.parse(n.payload),r=JSON.stringify(o,null,2)}catch{o=n.payload,r=n.payload}let s=e.find(i=>i.renderEventStreamPayload);if(s!=null&&s.renderEventStreamPayload&&t){let i=s.renderEventStreamPayload({event:n,config:t,defaultRenderer:()=>a(),parsedPayload:o});if(i)return i}return a();function a(){let i=b("div","persona-bg-persona-container persona-border-t persona-border-persona-divider persona-px-3 persona-py-2 persona-ml-4 persona-mr-3 persona-mb-1 persona-rounded-b persona-overflow-auto persona-max-h-[300px]"),d=b("pre","persona-m-0 persona-whitespace-pre-wrap persona-break-all persona-text-[11px] persona-text-persona-secondary persona-font-mono");return d.textContent=r,i.appendChild(d),i}}function ul(n,e,t,r,o,s,a,i){var u;let d=o.has(n.id),c=b("div","persona-border-b persona-border-persona-divider persona-text-xs");ws(c,(u=r.classNames)==null?void 0:u.eventRow);let g=a.find(m=>m.renderEventStreamRow);if(g!=null&&g.renderEventStreamRow&&i){let m=g.renderEventStreamRow({event:n,index:e,config:i,defaultRenderer:()=>f(),isExpanded:d,onToggleExpand:()=>s(n.id)});if(m)return c.appendChild(m),c}return c.appendChild(f()),c;function f(){var z,re;let m=b("div",""),v=b("div","persona-flex persona-items-center persona-gap-2 persona-px-3 persona-py-3 hover:persona-bg-persona-container persona-cursor-pointer persona-group");v.setAttribute("data-event-id",n.id);let x=b("span","persona-flex-shrink-0 persona-text-persona-muted persona-w-4 persona-text-center persona-flex persona-items-center persona-justify-center"),M=Ae(d?"chevron-down":"chevron-right","14px","currentColor",2);M&&x.appendChild(M);let E=b("span","persona-text-[11px] persona-text-persona-muted persona-whitespace-nowrap persona-flex-shrink-0 persona-font-mono persona-w-[70px]"),k=(z=r.timestampFormat)!=null?z:"relative";E.textContent=k==="relative"?qb(n.timestamp,t):Ub(n.timestamp);let N=null;r.showSequenceNumbers!==!1&&(N=b("span","persona-text-[11px] persona-text-persona-muted persona-font-mono persona-flex-shrink-0 persona-w-[28px] persona-text-right"),N.textContent=String(e+1));let P=$b(n.type,r.badgeColors),W=b("span","persona-inline-flex persona-items-center persona-px-2 persona-py-0.5 persona-rounded persona-text-[11px] persona-font-mono persona-font-medium persona-whitespace-nowrap persona-flex-shrink-0 persona-border");W.style.backgroundColor=P.bg,W.style.color=P.text,W.style.borderColor=P.text+"50",W.textContent=n.type;let C=(re=r.descriptionFields)!=null?re:Ob,I=zb(n.payload,C),B=null;I&&(B=b("span","persona-text-[11px] persona-text-persona-secondary persona-truncate persona-min-w-0"),B.textContent=I);let D=b("div","persona-flex-1 persona-min-w-0"),T=b("button","persona-text-persona-muted hover:persona-text-persona-primary persona-cursor-pointer persona-flex-shrink-0 persona-border-none persona-bg-transparent persona-p-0"),U=Ae("clipboard","12px","currentColor",1.5);return U&&T.appendChild(U),T.addEventListener("click",async ke=>{ke.stopPropagation(),await jb(Vb(n)),T.innerHTML="";let je=Ae("check","12px","currentColor",1.5);je&&T.appendChild(je),setTimeout(()=>{T.innerHTML="";let be=Ae("clipboard","12px","currentColor",1.5);be&&T.appendChild(be)},1500)}),v.appendChild(x),v.appendChild(E),N&&v.appendChild(N),v.appendChild(W),B&&v.appendChild(B),v.appendChild(D),v.appendChild(T),m.appendChild(v),d&&m.appendChild(Qb(n,a,i)),m}}function xm(n){var v,x,M,E,k;let{buffer:e,getFullHistory:t,onClose:r,config:o,plugins:s=[],getThroughput:a}=n,i=(v=o==null?void 0:o.features)==null?void 0:v.scrollToBottom,d=(i==null?void 0:i.enabled)!==!1,c=(x=i==null?void 0:i.iconName)!=null?x:"arrow-down",g=(M=i==null?void 0:i.label)!=null?M:"",f=(k=(E=o==null?void 0:o.features)==null?void 0:E.eventStream)!=null?k:{},u=s.find(N=>N.renderEventStreamView);if(u!=null&&u.renderEventStreamView&&o){let N=u.renderEventStreamView({config:o,events:e.getAll(),defaultRenderer:()=>m().element,onClose:r});if(N)return{element:N,update:()=>{},destroy:()=>{}}}return m();function m(){let N=f.classNames,P=b("div","persona-event-stream-view persona-flex persona-flex-col persona-flex-1 persona-min-h-0");ws(P,N==null?void 0:N.panel);let W=[],C="",I="",B=null,D=[],T={},U=0,z=oi(),re=0,ke=0,je=!1,be=null,He=!1,Fe=0,Se=new Set,xe=new Map,oe="",G="",se=null,ge,pe,V,ae,Ie,ee=null,Z=null,ne=null;function at(){let le=b("div","persona-relative persona-flex persona-flex-col persona-flex-shrink-0"),we=b("div","persona-flex persona-items-center persona-gap-2 persona-px-4 persona-py-3 persona-pb-0 persona-border-persona-divider persona-bg-persona-surface persona-overflow-hidden");ws(we,N==null?void 0:N.headerBar);let Ne=b("span","persona-text-sm persona-font-medium persona-text-persona-primary persona-whitespace-nowrap");if(Ne.textContent="Events",ge=b("span","persona-text-[11px] persona-font-mono persona-bg-persona-container persona-text-persona-muted persona-px-2 persona-py-0.5 persona-rounded persona-border persona-border-persona-border"),ge.textContent="0",a){Z=b("div","persona-relative persona-flex persona-items-center persona-gap-1.5 persona-whitespace-nowrap persona-ml-1"),Z.style.cursor="help";let tr=b("span","persona-text-sm persona-font-medium persona-text-persona-primary persona-whitespace-nowrap");tr.textContent="Throughput",ee=b("span","persona-text-[11px] persona-font-mono persona-bg-persona-container persona-text-persona-muted persona-px-2 persona-py-0.5 persona-rounded persona-border persona-border-persona-border persona-tabular-nums"),ee.textContent="-- tok/s",ne=b("div","persona-absolute persona-z-50 persona-whitespace-nowrap persona-rounded persona-border persona-border-persona-border persona-bg-persona-container persona-text-persona-primary persona-text-[11px] persona-font-mono persona-px-2 persona-py-1 persona-shadow"),ne.style.display="none",ne.style.pointerEvents="none";let Ln=Z,sn=ne,Fn=()=>{if(!sn.textContent)return;let vt=Ln.getBoundingClientRect(),Un=le.getBoundingClientRect();sn.style.left=`${vt.left-Un.left}px`,sn.style.top=`${vt.bottom-Un.top+4}px`,sn.style.display="block"},Cr=()=>{sn.style.display="none"};Z.addEventListener("mouseenter",Fn),Z.addEventListener("mouseleave",Cr),Z.appendChild(tr),Z.appendChild(ee)}let St=b("div","persona-flex-1");pe=b("select","persona-text-xs persona-bg-persona-surface persona-border persona-border-persona-border persona-rounded persona-px-2.5 persona-py-1 persona-text-persona-primary persona-cursor-pointer");let rn=b("option","");rn.value="",rn.textContent="All events",pe.appendChild(rn),V=b("button","persona-inline-flex persona-items-center persona-gap-1.5 persona-rounded persona-text-xs persona-text-persona-muted hover:persona-bg-persona-container hover:persona-text-persona-primary persona-cursor-pointer persona-border persona-border-persona-border persona-bg-persona-surface persona-flex-shrink-0 persona-px-2.5 persona-py-1"),V.type="button",V.title="Copy All";let vn=Ae("clipboard-copy","12px","currentColor",1.5);vn&&V.appendChild(vn);let Dt=b("span","persona-text-xs");Dt.textContent="Copy All",V.appendChild(Dt),we.appendChild(Ne),we.appendChild(ge),Z&&we.appendChild(Z),we.appendChild(St),we.appendChild(pe),we.appendChild(V);let nt=b("div","persona-relative persona-px-4 persona-py-2.5 persona-border-b persona-border-persona-divider persona-bg-persona-surface");ws(nt,N==null?void 0:N.searchBar);let Bt=Ae("search","14px","var(--persona-muted, #9ca3af)",1.5),dt=b("span","persona-absolute persona-left-6 persona-top-1/2 persona--translate-y-1/2 persona-pointer-events-none persona-flex persona-items-center");Bt&&dt.appendChild(Bt),ae=b("input","persona-text-sm persona-bg-persona-surface persona-border persona-border-persona-border persona-rounded-md persona-pl-8 persona-pr-3 persona-py-1 persona-w-full persona-text-persona-primary"),ws(ae,N==null?void 0:N.searchInput),ae.type="text",ae.placeholder="Search event payloads...",Ie=b("button","persona-absolute persona-right-5 persona-top-1/2 persona--translate-y-1/2 persona-text-persona-muted hover:persona-text-persona-primary persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-0 persona-leading-none"),Ie.type="button",Ie.style.display="none";let Jt=Ae("x","12px","currentColor",2);return Jt&&Ie.appendChild(Jt),nt.appendChild(dt),nt.appendChild(ae),nt.appendChild(Ie),le.appendChild(we),le.appendChild(nt),ne&&le.appendChild(ne),le}let it,ot=s.find(le=>le.renderEventStreamToolbar);if(ot!=null&&ot.renderEventStreamToolbar&&o){let le=ot.renderEventStreamToolbar({config:o,defaultRenderer:()=>at(),eventCount:e.getSize(),filteredCount:0,onFilterChange:we=>{C=we,Wt(),$()},onSearchChange:we=>{I=we,Wt(),$()}});it=le!=null?le:at()}else it=at();let Me=b("div","persona-text-xs persona-text-persona-muted persona-text-center persona-py-0.5 persona-px-4 persona-bg-persona-container persona-border-b persona-border-persona-divider persona-italic persona-flex-shrink-0");Me.style.display="none";function fe(){if(!a||!ee||!Z)return;let le=a();ee.textContent=Kb(le);let we=Gb(le);ne&&(ne.textContent=we,we||(ne.style.display="none")),we?Z.setAttribute("aria-label",we):Z.removeAttribute("aria-label")}let Xe=b("div","persona-flex-1 persona-min-h-0 persona-relative"),J=b("div","persona-event-stream-list persona-overflow-y-auto persona-min-h-0");J.style.height="100%";let ue=b("div","persona-scroll-to-bottom-indicator persona-absolute persona-bottom-3 persona-left-1/2 persona-transform persona--translate-x-1/2 persona-cursor-pointer persona-z-10 persona-text-xs");ws(ue,N==null?void 0:N.scrollIndicator),ue.style.display="none",ue.setAttribute("data-persona-scroll-to-bottom-has-label",g?"true":"false");let Ee=Ae(c,"14px","currentColor",2);Ee&&ue.appendChild(Ee);let Je=b("span","");Je.textContent=g,ue.appendChild(Je);let Ke=b("div","persona-flex persona-items-center persona-justify-center persona-h-full persona-text-sm persona-text-persona-muted");Ke.style.display="none",Xe.appendChild(J),Xe.appendChild(Ke),Xe.appendChild(ue),P.setAttribute("tabindex","0"),P.appendChild(it),P.appendChild(Me),P.appendChild(Xe);function Pe(){let le=e.getAll(),we={};for(let Dt of le)we[Dt.type]=(we[Dt.type]||0)+1;let Ne=Object.keys(we).sort(),St=Ne.length!==D.length||!Ne.every((Dt,nt)=>Dt===D[nt]),rn=!St&&Ne.some(Dt=>we[Dt]!==T[Dt]),on=le.length!==Object.values(T).reduce((Dt,nt)=>Dt+nt,0);if(!St&&!rn&&!on||(D=Ne,T=we,!pe))return;let vn=pe.value;if(pe.options[0].textContent="All events",St){for(;pe.options.length>1;)pe.remove(1);for(let Dt of Ne){let nt=b("option","");nt.value=Dt,nt.textContent=`${Dt} (${we[Dt]||0})`,pe.appendChild(nt)}vn&&Ne.includes(vn)?pe.value=vn:vn&&(pe.value="",C="")}else for(let Dt=1;Dt<pe.options.length;Dt++){let nt=pe.options[Dt];nt.textContent=`${nt.value} (${we[nt.value]||0})`}}function Ve(){let le=e.getAll();if(C&&(le=le.filter(we=>we.type===C)),I){let we=I.toLowerCase();le=le.filter(Ne=>Ne.type.toLowerCase().includes(we)||Ne.payload.toLowerCase().includes(we))}return le}function bn(){return C!==""||I!==""}function Wt(){U=0,re=0,z.resume(),ue.style.display="none"}function dn(le){Se.has(le)?Se.delete(le):Se.add(le),se=le;let we=J.scrollTop,Ne=z.isFollowing();He=!0,z.pause(),$(),J.scrollTop=we,Ne&&z.resume(),He=!1}function wr(){return $o(J,50)}function $(){ke=Date.now(),je=!1,fe(),Pe();let le=e.getEvictedCount();le>0?(Me.textContent=`${le.toLocaleString()} older events truncated`,Me.style.display=""):Me.style.display="none",W=Ve();let we=W.length,Ne=e.getSize()>0;ge&&(ge.textContent=String(e.getSize())),we===0&&Ne&&bn()?(Ke.textContent=I?`No events matching '${I}'`:"No events matching filter",Ke.style.display="",J.style.display="none"):(Ke.style.display="none",J.style.display=""),V&&(V.title=bn()?`Copy Filtered (${we})`:"Copy All"),d&&!z.isFollowing()&&we>U&&(re+=we-U,Je.textContent=g?`${g}${re>0?` (${re})`:""}`:"",ue.style.display=""),U=we;let St=e.getAll(),rn=St.length>0?St[0].timestamp:0,on=new Set(W.map(nt=>nt.id));for(let nt of Se)on.has(nt)||Se.delete(nt);let vn=C!==oe||I!==G,Dt=xe.size===0&&W.length>0;if(vn||Dt||W.length===0){J.innerHTML="",xe.clear();let nt=document.createDocumentFragment();for(let Bt=0;Bt<W.length;Bt++){let dt=ul(W[Bt],Bt,rn,f,Se,dn,s,o);xe.set(W[Bt].id,dt),nt.appendChild(dt)}J.appendChild(nt),oe=C,G=I,se=null}else{if(se!==null){let Bt=xe.get(se);if(Bt&&Bt.parentNode===J){let dt=W.findIndex(Jt=>Jt.id===se);if(dt>=0){let Jt=ul(W[dt],dt,rn,f,Se,dn,s,o);J.insertBefore(Jt,Bt),Bt.remove(),xe.set(se,Jt)}}se=null}let nt=new Set(W.map(Bt=>Bt.id));for(let[Bt,dt]of xe)nt.has(Bt)||(dt.remove(),xe.delete(Bt));for(let Bt=0;Bt<W.length;Bt++){let dt=W[Bt];if(!xe.has(dt.id)){let Jt=ul(dt,Bt,rn,f,Se,dn,s,o);xe.set(dt.id,Jt),J.appendChild(Jt)}}}z.isFollowing()&&(J.scrollTop=J.scrollHeight)}function K(){if(Date.now()-ke>=_b){be!==null&&(cancelAnimationFrame(be),be=null),$();return}je||(je=!0,be=requestAnimationFrame(()=>{be=null,$()}))}let he=(le,we)=>{if(!V)return;V.innerHTML="";let Ne=Ae(le,"12px","currentColor",1.5);Ne&&V.appendChild(Ne);let St=b("span","persona-text-xs");St.textContent="Copy All",V.appendChild(St),setTimeout(()=>{V.innerHTML="";let rn=Ae("clipboard-copy","12px","currentColor",1.5);rn&&V.appendChild(rn);let on=b("span","persona-text-xs");on.textContent="Copy All",V.appendChild(on),V.disabled=!1},we)},Ge=async()=>{if(V){V.disabled=!0;try{let le;bn()?le=W:t?(le=await t(),le.length===0&&(le=e.getAll())):le=e.getAll();let we=le.map(Ne=>{try{return JSON.parse(Ne.payload)}catch{return Ne.payload}});await navigator.clipboard.writeText(JSON.stringify(we,null,2)),he("check",1500)}catch{he("x",1500)}}},Ze=()=>{pe&&(C=pe.value,Wt(),$())},$e=()=>{!ae||!Ie||(Ie.style.display=ae.value?"":"none",B&&clearTimeout(B),B=setTimeout(()=>{I=ae.value,Wt(),$()},150))},Oe=()=>{!ae||!Ie||(ae.value="",I="",Ie.style.display="none",B&&clearTimeout(B),Wt(),$())},Lt=()=>{if(He)return;let le=J.scrollTop,{action:we,nextLastScrollTop:Ne}=si({following:z.isFollowing(),currentScrollTop:le,lastScrollTop:Fe,nearBottom:wr(),userScrollThreshold:1,resumeRequiresDownwardScroll:!0});Fe=Ne,we==="resume"?(z.resume(),re=0,ue.style.display="none"):we==="pause"&&(z.pause(),d&&(Je.textContent=g,ue.style.display=""))},Vt=le=>{let we=ai({following:z.isFollowing(),deltaY:le.deltaY,nearBottom:wr(),resumeWhenNearBottom:!0});we==="pause"?(z.pause(),d&&(Je.textContent=g,ue.style.display="")):we==="resume"&&(z.resume(),re=0,ue.style.display="none")},Xt=()=>{d&&(J.scrollTop=J.scrollHeight,z.resume(),re=0,ue.style.display="none")},kn=le=>{let we=le.target;if(!we||we.closest("button"))return;let Ne=we.closest("[data-event-id]");if(!Ne)return;let St=Ne.getAttribute("data-event-id");St&&dn(St)},j=le=>{if((le.metaKey||le.ctrlKey)&&le.key==="f"){le.preventDefault(),ae==null||ae.focus(),ae==null||ae.select();return}le.key==="Escape"&&(ae&&document.activeElement===ae?(Oe(),ae.blur(),P.focus()):r&&r())};V&&V.addEventListener("click",Ge),pe&&pe.addEventListener("change",Ze),ae&&ae.addEventListener("input",$e),Ie&&Ie.addEventListener("click",Oe),J.addEventListener("scroll",Lt),J.addEventListener("wheel",Vt,{passive:!0}),J.addEventListener("click",kn),ue.addEventListener("click",Xt),P.addEventListener("keydown",j);function Rt(){B&&clearTimeout(B),be!==null&&(cancelAnimationFrame(be),be=null),je=!1,xe.clear(),V&&V.removeEventListener("click",Ge),pe&&pe.removeEventListener("change",Ze),ae&&ae.removeEventListener("input",$e),Ie&&Ie.removeEventListener("click",Oe),J.removeEventListener("scroll",Lt),J.removeEventListener("wheel",Vt),J.removeEventListener("click",kn),ue.removeEventListener("click",Xt),P.removeEventListener("keydown",j)}return{element:P,update:K,destroy:Rt}}}function wm(n,e){let t=typeof n.title=="string"&&n.title?n.title:"Untitled artifact",r=typeof n.artifactId=="string"?n.artifactId:"",o=n.status==="streaming"?"streaming":"complete",a=(typeof n.artifactType=="string"?n.artifactType:"markdown")==="component"?"Component":"Document",i=document.createElement("div");i.className="persona-flex persona-w-full persona-max-w-full persona-items-center persona-gap-3 persona-rounded-xl persona-px-4 persona-py-3",i.style.border="1px solid var(--persona-border, #e5e7eb)",i.style.backgroundColor="var(--persona-surface, #ffffff)",i.style.cursor="pointer",i.tabIndex=0,i.setAttribute("role","button"),i.setAttribute("aria-label",`Open ${t} in artifact panel`),r&&i.setAttribute("data-open-artifact",r);let d=document.createElement("div");d.className="persona-flex persona-h-10 persona-w-10 persona-flex-shrink-0 persona-items-center persona-justify-center persona-rounded-lg",d.style.border="1px solid var(--persona-border, #e5e7eb)",d.style.color="var(--persona-muted, #9ca3af)",d.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/><polyline points="14 2 14 8 20 8"/></svg>';let c=document.createElement("div");c.className="persona-min-w-0 persona-flex-1 persona-flex persona-flex-col persona-gap-0.5";let g=document.createElement("div");g.className="persona-truncate persona-text-sm persona-font-medium",g.style.color="var(--persona-text, #1f2937)",g.textContent=t;let f=document.createElement("div");if(f.className="persona-text-xs persona-flex persona-items-center persona-gap-1.5",f.style.color="var(--persona-muted, #9ca3af)",o==="streaming"){let u=document.createElement("span");u.className="persona-inline-block persona-w-1.5 persona-h-1.5 persona-rounded-full",u.style.backgroundColor="var(--persona-primary, #171717)",u.style.animation="persona-pulse 1.5s ease-in-out infinite",f.appendChild(u);let m=document.createElement("span");m.textContent=`Generating ${a.toLowerCase()}...`,f.appendChild(m)}else f.textContent=a;if(c.append(g,f),i.append(d,c),o==="complete"){let u=document.createElement("button");u.type="button",u.textContent="Download",u.title=`Download ${t}`,u.className="persona-flex-shrink-0 persona-rounded-md persona-px-3 persona-py-1.5 persona-text-xs persona-font-medium",u.style.border="1px solid var(--persona-border, #e5e7eb)",u.style.color="var(--persona-text, #1f2937)",u.style.backgroundColor="transparent",u.style.cursor="pointer",u.setAttribute("data-download-artifact",r),i.append(u)}return i}var Cm=(n,e)=>{var r,o,s;let t=(s=(o=(r=e==null?void 0:e.config)==null?void 0:r.features)==null?void 0:o.artifacts)==null?void 0:s.renderCard;if(t){let a=typeof n.title=="string"&&n.title?n.title:"Untitled artifact",i=typeof n.artifactId=="string"?n.artifactId:"",d=n.status==="streaming"?"streaming":"complete",c=typeof n.artifactType=="string"?n.artifactType:"markdown",g=t({artifact:{artifactId:i,title:a,artifactType:c,status:d},config:e.config,defaultRenderer:()=>wm(n,e)});if(g)return g}return wm(n,e)};var ml=class{constructor(){this.components=new Map}register(e,t){this.components.has(e)&&console.warn(`[ComponentRegistry] Component "${e}" is already registered. Overwriting.`),this.components.set(e,t)}unregister(e){this.components.delete(e)}get(e){return this.components.get(e)}has(e){return this.components.has(e)}getAllNames(){return Array.from(this.components.keys())}clear(){this.components.clear()}registerAll(e){Object.entries(e).forEach(([t,r])=>{this.register(t,r)})}},zo=new ml;zo.register("PersonaArtifactCard",Cm);function Xb(n){var o;let e=b("div","persona-rounded-lg persona-border persona-border-persona-border persona-p-3 persona-text-persona-primary"),t=b("div","persona-font-semibold persona-text-sm persona-mb-2");t.textContent=n.component?`Component: ${n.component}`:"Component";let r=b("pre","persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-overflow-x-auto");return r.textContent=JSON.stringify((o=n.props)!=null?o:{},null,2),e.appendChild(t),e.appendChild(r),e}function Am(n,e){var pe,V,ae,Ie;let t=(V=(pe=n.features)==null?void 0:pe.artifacts)==null?void 0:V.layout,o=((ae=t==null?void 0:t.toolbarPreset)!=null?ae:"default")==="document",s=(Ie=t==null?void 0:t.panePadding)==null?void 0:Ie.trim(),a=n.markdown?Ba(n.markdown):null,i=Da(n.sanitize),d=ee=>{let Z=a?a(ee):fo(ee);return i?i(Z):Z},c=typeof document!="undefined"?b("div","persona-artifact-backdrop persona-fixed persona-inset-0 persona-z-[55] persona-bg-black/30 persona-hidden md:persona-hidden"):null,g=()=>{c==null||c.classList.add("persona-hidden"),f.classList.remove("persona-artifact-drawer-open"),U==null||U.hide()};c&&c.addEventListener("click",()=>{var ee;g(),(ee=e.onDismiss)==null||ee.call(e)});let f=b("aside","persona-artifact-pane persona-flex persona-flex-col persona-min-h-0 persona-min-w-0 persona-bg-persona-surface persona-text-persona-primary persona-border-l persona-border-persona-border");f.setAttribute("data-persona-theme-zone","artifact-pane"),o&&f.classList.add("persona-artifact-pane-document");let u=b("div","persona-artifact-toolbar persona-flex persona-items-center persona-justify-between persona-gap-2 persona-px-2 persona-py-2 persona-border-b persona-border-persona-border persona-shrink-0");u.setAttribute("data-persona-theme-zone","artifact-toolbar"),o&&u.classList.add("persona-artifact-toolbar-document");let m=b("span","persona-text-xs persona-font-medium persona-truncate");m.textContent="Artifacts";let v=b("button","persona-rounded-md persona-border persona-border-persona-border persona-px-2 persona-py-1 persona-text-xs persona-bg-persona-surface");v.type="button",v.textContent="Close",v.setAttribute("aria-label","Close artifacts panel"),v.addEventListener("click",()=>{var ee;g(),(ee=e.onDismiss)==null||ee.call(e)});let x="rendered",M=b("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0 persona-artifact-toggle-group"),E=o?En({icon:"eye",label:"Rendered view",className:"persona-artifact-doc-icon-btn persona-artifact-view-btn"}):En({icon:"eye",label:"Rendered view"}),k=o?En({icon:"code-2",label:"Source",className:"persona-artifact-doc-icon-btn persona-artifact-code-btn"}):En({icon:"code-2",label:"Source"}),N=b("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0"),P=(t==null?void 0:t.documentToolbarShowCopyLabel)===!0,W=(t==null?void 0:t.documentToolbarShowCopyChevron)===!0,C=t==null?void 0:t.documentToolbarCopyMenuItems,I=!!(W&&C&&C.length>0),B=null,D,T=null,U=null;if(o&&(P||W)&&!I){if(D=P?rl({icon:"copy",label:"Copy",iconSize:14,className:"persona-artifact-doc-copy-btn"}):En({icon:"copy",label:"Copy",className:"persona-artifact-doc-copy-btn"}),W){let ee=Ae("chevron-down",14,"currentColor",2);ee&&D.appendChild(ee)}}else o&&I?(B=b("div","persona-relative persona-inline-flex persona-items-center persona-gap-0 persona-rounded-md"),D=P?rl({icon:"copy",label:"Copy",iconSize:14,className:"persona-artifact-doc-copy-btn"}):En({icon:"copy",label:"Copy",className:"persona-artifact-doc-copy-btn"}),T=En({icon:"chevron-down",label:"More copy options",size:14,className:"persona-artifact-doc-copy-menu-chevron persona-artifact-doc-icon-btn",aria:{"aria-haspopup":"true","aria-expanded":"false"}}),B.append(D,T)):o?D=En({icon:"copy",label:"Copy",className:"persona-artifact-doc-icon-btn"}):D=En({icon:"copy",label:"Copy"});let z=o?En({icon:"refresh-cw",label:"Refresh",className:"persona-artifact-doc-icon-btn"}):En({icon:"refresh-cw",label:"Refresh"}),re=o?En({icon:"x",label:"Close",className:"persona-artifact-doc-icon-btn"}):En({icon:"x",label:"Close"}),ke=()=>{var it,ot,Me;let ee=(it=xe.find(fe=>fe.id===oe))!=null?it:xe[xe.length-1],Z=(ot=ee==null?void 0:ee.id)!=null?ot:null,ne=(ee==null?void 0:ee.artifactType)==="markdown"&&(Me=ee.markdown)!=null?Me:"",at=ee?JSON.stringify({component:ee.component,props:ee.props},null,2):"";return{markdown:ne,jsonPayload:at,id:Z}},je=async()=>{var it;let{markdown:ee,jsonPayload:Z}=ke(),ne=(it=xe.find(ot=>ot.id===oe))!=null?it:xe[xe.length-1],at=(ne==null?void 0:ne.artifactType)==="markdown"?ee:ne?Z:"";try{await navigator.clipboard.writeText(at)}catch{}};if(D.addEventListener("click",async()=>{let ee=t==null?void 0:t.onDocumentToolbarCopyMenuSelect;if(ee&&I){let{markdown:Z,jsonPayload:ne,id:at}=ke();try{await ee({actionId:"primary",artifactId:at,markdown:Z,jsonPayload:ne})}catch{}return}await je()}),T&&(C!=null&&C.length)){let ee=()=>{var ne;return(ne=f.closest("[data-persona-root]"))!=null?ne:document.body},Z=()=>{U=bs({items:C.map(ne=>({id:ne.id,label:ne.label})),onSelect:async ne=>{let{markdown:at,jsonPayload:it,id:ot}=ke(),Me=t==null?void 0:t.onDocumentToolbarCopyMenuSelect;try{Me?await Me({actionId:ne,artifactId:ot,markdown:at,jsonPayload:it}):ne==="markdown"||ne==="md"?await navigator.clipboard.writeText(at):ne==="json"||ne==="source"?await navigator.clipboard.writeText(it):await navigator.clipboard.writeText(at||it)}catch{}},anchor:B!=null?B:T,position:"bottom-right",portal:ee()})};f.isConnected?Z():requestAnimationFrame(Z),T.addEventListener("click",ne=>{ne.stopPropagation(),U==null||U.toggle()})}z.addEventListener("click",async()=>{var ee;try{await((ee=t==null?void 0:t.onDocumentToolbarRefresh)==null?void 0:ee.call(t))}catch{}se()}),re.addEventListener("click",()=>{var ee;g(),(ee=e.onDismiss)==null||ee.call(e)});let be=()=>{o&&(E.setAttribute("aria-pressed",x==="rendered"?"true":"false"),k.setAttribute("aria-pressed",x==="source"?"true":"false"))};E.addEventListener("click",()=>{x="rendered",be(),se()}),k.addEventListener("click",()=>{x="source",be(),se()});let He=b("span","persona-min-w-0 persona-flex-1 persona-text-xs persona-font-medium persona-text-persona-primary persona-truncate persona-text-center md:persona-text-left");o?(u.replaceChildren(),M.append(E,k),B?N.append(B,z,re):N.append(D,z,re),u.append(M,He,N),be()):(u.appendChild(m),u.appendChild(v)),s&&(u.style.paddingLeft=s,u.style.paddingRight=s);let Fe=b("div","persona-artifact-list persona-shrink-0 persona-flex persona-gap-1 persona-overflow-x-auto persona-p-2 persona-border-b persona-border-persona-border"),Se=b("div","persona-artifact-content persona-flex-1 persona-min-h-0 persona-overflow-y-auto persona-p-3");s&&(Fe.style.paddingLeft=s,Fe.style.paddingRight=s,Se.style.padding=s),f.appendChild(u),f.appendChild(Fe),f.appendChild(Se);let xe=[],oe=null,G=!1,se=()=>{var at,it,ot,Me;let ee=o&&xe.length<=1;Fe.classList.toggle("persona-hidden",ee),Fe.replaceChildren();for(let fe of xe){let Xe=b("button","persona-artifact-tab persona-shrink-0 persona-rounded-lg persona-px-2 persona-py-1 persona-text-xs persona-border persona-border-transparent persona-text-persona-primary");Xe.type="button",Xe.textContent=fe.title||fe.id.slice(0,8),fe.id===oe&&Xe.classList.add("persona-bg-persona-container","persona-border-persona-border"),Xe.addEventListener("click",()=>e.onSelect(fe.id)),Fe.appendChild(Xe)}Se.replaceChildren();let Z=oe&&xe.find(fe=>fe.id===oe)||xe[xe.length-1];if(!Z)return;if(o){let fe=Z.artifactType==="markdown"?"MD":(at=Z.component)!=null?at:"Component",J=(Z.title||"Document").trim().replace(/\s*·\s*MD\s*$/i,"").trim()||"Document";He.textContent=`${J} \xB7 ${fe}`}else m.textContent="Artifacts";if(Z.artifactType==="markdown"){if(o&&x==="source"){let Xe=b("pre","persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-break-words persona-text-persona-primary");Xe.textContent=(it=Z.markdown)!=null?it:"",Se.appendChild(Xe);return}let fe=b("div","persona-text-sm persona-leading-relaxed persona-markdown-bubble");fe.innerHTML=d((ot=Z.markdown)!=null?ot:""),Se.appendChild(fe);return}let ne=Z.component?zo.get(Z.component):void 0;if(ne){let Xe={message:{id:Z.id,role:"assistant",content:"",createdAt:new Date().toISOString()},config:n,updateProps:()=>{}};try{let J=ne((Me=Z.props)!=null?Me:{},Xe);if(J){Se.appendChild(J);return}}catch{}}Se.appendChild(Xb(Z))},ge=()=>{var Z;let ee=xe.length>0;if(f.classList.toggle("persona-hidden",!ee),c){let ne=typeof f.closest=="function"?f.closest("[data-persona-root]"):null,it=((Z=ne==null?void 0:ne.classList.contains("persona-artifact-narrow-host"))!=null?Z:!1)||typeof window!="undefined"&&window.matchMedia("(max-width: 640px)").matches;ee&&it&&G?(c.classList.remove("persona-hidden"),f.classList.add("persona-artifact-drawer-open")):(c.classList.add("persona-hidden"),f.classList.remove("persona-artifact-drawer-open"))}};return{element:f,backdrop:c,update(ee){var Z,ne,at;xe=ee.artifacts,oe=(at=(ne=ee.selectedId)!=null?ne:(Z=ee.artifacts[ee.artifacts.length-1])==null?void 0:Z.id)!=null?at:null,xe.length>0&&(G=!0),se(),ge()},setMobileOpen(ee){G=ee,!ee&&c?(c.classList.add("persona-hidden"),f.classList.remove("persona-artifact-drawer-open")):ge()}}}function pr(n){var e,t;return((t=(e=n==null?void 0:n.features)==null?void 0:e.artifacts)==null?void 0:t.enabled)===!0}function Sm(n,e){var s,a,i,d;if(n.classList.remove("persona-artifact-border-full","persona-artifact-border-left"),n.style.removeProperty("--persona-artifact-pane-border"),n.style.removeProperty("--persona-artifact-pane-border-left"),!pr(e))return;let t=(a=(s=e.features)==null?void 0:s.artifacts)==null?void 0:a.layout,r=(i=t==null?void 0:t.paneBorder)==null?void 0:i.trim(),o=(d=t==null?void 0:t.paneBorderLeft)==null?void 0:d.trim();r?(n.classList.add("persona-artifact-border-full"),n.style.setProperty("--persona-artifact-pane-border",r)):o&&(n.classList.add("persona-artifact-border-left"),n.style.setProperty("--persona-artifact-pane-border-left",o))}function Jb(n){n.style.removeProperty("--persona-artifact-doc-toolbar-icon-color"),n.style.removeProperty("--persona-artifact-doc-toggle-active-bg"),n.style.removeProperty("--persona-artifact-doc-toggle-active-border")}function Ai(n,e){var d,c,g,f,u,m,v,x,M,E;if(!pr(e)){n.style.removeProperty("--persona-artifact-split-gap"),n.style.removeProperty("--persona-artifact-pane-width"),n.style.removeProperty("--persona-artifact-pane-max-width"),n.style.removeProperty("--persona-artifact-pane-min-width"),n.style.removeProperty("--persona-artifact-pane-bg"),n.style.removeProperty("--persona-artifact-pane-padding"),Jb(n),Sm(n,e);return}let t=(c=(d=e.features)==null?void 0:d.artifacts)==null?void 0:c.layout;n.style.setProperty("--persona-artifact-split-gap",(g=t==null?void 0:t.splitGap)!=null?g:"0.5rem"),n.style.setProperty("--persona-artifact-pane-width",(f=t==null?void 0:t.paneWidth)!=null?f:"40%"),n.style.setProperty("--persona-artifact-pane-max-width",(u=t==null?void 0:t.paneMaxWidth)!=null?u:"28rem"),t!=null&&t.paneMinWidth?n.style.setProperty("--persona-artifact-pane-min-width",t.paneMinWidth):n.style.removeProperty("--persona-artifact-pane-min-width");let r=(m=t==null?void 0:t.paneBackground)==null?void 0:m.trim();r?n.style.setProperty("--persona-artifact-pane-bg",r):n.style.removeProperty("--persona-artifact-pane-bg");let o=(v=t==null?void 0:t.panePadding)==null?void 0:v.trim();o?n.style.setProperty("--persona-artifact-pane-padding",o):n.style.removeProperty("--persona-artifact-pane-padding");let s=(x=t==null?void 0:t.documentToolbarIconColor)==null?void 0:x.trim();s?n.style.setProperty("--persona-artifact-doc-toolbar-icon-color",s):n.style.removeProperty("--persona-artifact-doc-toolbar-icon-color");let a=(M=t==null?void 0:t.documentToolbarToggleActiveBackground)==null?void 0:M.trim();a?n.style.setProperty("--persona-artifact-doc-toggle-active-bg",a):n.style.removeProperty("--persona-artifact-doc-toggle-active-bg");let i=(E=t==null?void 0:t.documentToolbarToggleActiveBorderColor)==null?void 0:E.trim();i?n.style.setProperty("--persona-artifact-doc-toggle-active-border",i):n.style.removeProperty("--persona-artifact-doc-toggle-active-border"),Sm(n,e)}var Tm=["panel","seamless"];function Si(n,e){var i,d,c,g,f,u;for(let m of Tm)n.classList.remove(`persona-artifact-appearance-${m}`);if(n.classList.remove("persona-artifact-unified-split"),n.style.removeProperty("--persona-artifact-pane-radius"),n.style.removeProperty("--persona-artifact-pane-shadow"),n.style.removeProperty("--persona-artifact-unified-outer-radius"),!pr(e))return;let t=(d=(i=e.features)==null?void 0:i.artifacts)==null?void 0:d.layout,r=(c=t==null?void 0:t.paneAppearance)!=null?c:"panel",o=Tm.includes(r)?r:"panel";n.classList.add(`persona-artifact-appearance-${o}`);let s=(g=t==null?void 0:t.paneBorderRadius)==null?void 0:g.trim();s&&n.style.setProperty("--persona-artifact-pane-radius",s);let a=(f=t==null?void 0:t.paneShadow)==null?void 0:f.trim();if(a&&n.style.setProperty("--persona-artifact-pane-shadow",a),(t==null?void 0:t.unifiedSplitChrome)===!0){n.classList.add("persona-artifact-unified-split");let m=((u=t.unifiedSplitOuterRadius)==null?void 0:u.trim())||s;m&&n.style.setProperty("--persona-artifact-unified-outer-radius",m)}}function Mm(n,e){var t,r,o;return!e||!pr(n)?!1:((o=(r=(t=n.features)==null?void 0:t.artifacts)==null?void 0:r.layout)==null?void 0:o.expandLauncherPanelWhenOpen)!==!1}function Yb(n,e){if(!(n!=null&&n.trim()))return e;let t=/^(\d+(?:\.\d+)?)px\s*$/i.exec(n.trim());return t?Math.max(0,Number(t[1])):e}function Zb(n){if(!(n!=null&&n.trim()))return null;let e=/^(\d+(?:\.\d+)?)px\s*$/i.exec(n.trim());return e?Math.max(0,Number(e[1])):null}function ev(n,e,t){return t<e?e:Math.min(t,Math.max(e,n))}function tv(n,e,t,r){let o=n-r-2*e-t;return Math.max(0,o)}function Em(n,e){var a;let r=(a=(e.getComputedStyle(n).gap||"0px").trim().split(/\s+/)[0])!=null?a:"0px",o=/^([\d.]+)px$/i.exec(r);if(o)return Number(o[1]);let s=/^([\d.]+)/.exec(r);return s?Number(s[1]):8}function km(n,e,t,r,o,s){let a=Yb(o,200),i=tv(e,t,r,200);i=Math.max(a,i);let d=Zb(s);return d!==null&&(i=Math.min(i,d)),ev(n,a,i)}var Lm={init:{title:"Schedule a Demo",description:"Share the basics and we'll follow up with a confirmation.",fields:[{name:"name",label:"Full name",placeholder:"Jane Doe",required:!0},{name:"email",label:"Work email",placeholder:"jane@example.com",type:"email",required:!0},{name:"notes",label:"What would you like to cover?",type:"textarea"}],submitLabel:"Submit details"},followup:{title:"Additional Information",description:"Provide any extra details to tailor the next steps.",fields:[{name:"company",label:"Company",placeholder:"Acme Inc."},{name:"context",label:"Context",type:"textarea",placeholder:"Share more about your use case"}],submitLabel:"Send"}},gl=(n,e,t,r)=>{let o=n.querySelectorAll("[data-tv-form]");o.length&&o.forEach(s=>{var v,x,M;if(s.dataset.enhanced==="true")return;let a=(v=s.dataset.tvForm)!=null?v:"init";s.dataset.enhanced="true";let i=(x=Lm[a])!=null?x:Lm.init;s.classList.add("persona-form-card","persona-space-y-4");let d=b("div","persona-space-y-1"),c=b("h3","persona-text-base persona-font-semibold persona-text-persona-primary");if(c.textContent=i.title,d.appendChild(c),i.description){let E=b("p","persona-text-sm persona-text-persona-muted");E.textContent=i.description,d.appendChild(E)}let g=document.createElement("form");g.className="persona-form-grid persona-space-y-3",i.fields.forEach(E=>{var C,I;let k=b("label","persona-form-field persona-flex persona-flex-col persona-gap-1");k.htmlFor=`${e.id}-${a}-${E.name}`;let N=b("span","persona-text-xs persona-font-medium persona-text-persona-muted");N.textContent=E.label,k.appendChild(N);let P=(C=E.type)!=null?C:"text",W;P==="textarea"?(W=document.createElement("textarea"),W.rows=3):(W=document.createElement("input"),W.type=P),W.className="persona-rounded-xl persona-border persona-border-gray-200 persona-bg-white persona-px-3 persona-py-2 persona-text-sm persona-text-persona-primary focus:persona-outline-none focus:persona-border-persona-primary",W.id=`${e.id}-${a}-${E.name}`,W.name=E.name,W.placeholder=(I=E.placeholder)!=null?I:"",E.required&&(W.required=!0),k.appendChild(W),g.appendChild(k)});let f=b("div","persona-flex persona-items-center persona-justify-between persona-gap-2"),u=b("div","persona-text-xs persona-text-persona-muted persona-min-h-[1.5rem]"),m=b("button","persona-inline-flex persona-items-center persona-rounded-full persona-bg-persona-primary persona-px-4 persona-py-2 persona-text-sm persona-font-semibold persona-text-white disabled:persona-opacity-60 persona-cursor-pointer");m.type="submit",m.textContent=(M=i.submitLabel)!=null?M:"Submit",f.appendChild(u),f.appendChild(m),g.appendChild(f),s.replaceChildren(d,g),g.addEventListener("submit",async E=>{var W,C;E.preventDefault();let k=(W=t.formEndpoint)!=null?W:"/form",N=new FormData(g),P={};N.forEach((I,B)=>{P[B]=I}),P.type=a,m.disabled=!0,u.textContent="Submitting\u2026";try{let I=await fetch(k,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)});if(!I.ok)throw new Error(`Form submission failed (${I.status})`);let B=await I.json();u.textContent=(C=B.message)!=null?C:"Thanks! We'll be in touch soon.",B.success&&B.nextPrompt&&await r.sendMessage(String(B.nextPrompt))}catch(I){u.textContent=I instanceof Error?I.message:"Something went wrong. Please try again."}finally{m.disabled=!1}})})};var fl=class{constructor(){this.plugins=new Map}register(e){var t;this.plugins.has(e.id)&&console.warn(`Plugin "${e.id}" is already registered. Overwriting.`),this.plugins.set(e.id,e),(t=e.onRegister)==null||t.call(e)}unregister(e){var r;let t=this.plugins.get(e);t&&((r=t.onUnregister)==null||r.call(t),this.plugins.delete(e))}getAll(){return Array.from(this.plugins.values()).sort((e,t)=>{var r,o;return((r=t.priority)!=null?r:0)-((o=e.priority)!=null?o:0)})}getForInstance(e){let t=this.getAll();if(!e||e.length===0)return t;let r=new Set(e.map(s=>s.id));return[...t.filter(s=>!r.has(s.id)),...e].sort((s,a)=>{var i,d;return((i=a.priority)!=null?i:0)-((d=s.priority)!=null?d:0)})}clear(){this.plugins.forEach(e=>{var t;return(t=e.onUnregister)==null?void 0:t.call(e)}),this.plugins.clear()}},hl=new fl;var Pm=()=>{let n=new Map,e=(o,s)=>(n.has(o)||n.set(o,new Set),n.get(o).add(s),()=>t(o,s)),t=(o,s)=>{var a;(a=n.get(o))==null||a.delete(s)};return{on:e,off:t,emit:(o,s)=>{var a;(a=n.get(o))==null||a.forEach(i=>{try{i(s)}catch(d){typeof console!="undefined"&&console.error("[AgentWidget] Event handler error:",d)}})}}};var nv=n=>{let e=n.match(/```(?:json)?\s*([\s\S]*?)```/i);return e?e[1]:n},rv=n=>{let e=n.trim(),t=e.indexOf("{");if(t===-1)return null;let r=0;for(let o=t;o<e.length;o+=1){let s=e[o];if(s==="{"&&(r+=1),s==="}"&&(r-=1,r===0))return e.slice(t,o+1)}return null},bl=({text:n})=>{if(!n||!n.includes("{"))return null;try{let e=nv(n),t=rv(e);if(!t)return null;let r=JSON.parse(t);if(!r||typeof r!="object"||!r.action)return null;let{action:o,...s}=r;return{type:String(o),payload:s,raw:r}}catch{return null}},yl=n=>typeof n=="string"?n:n==null?"":String(n),ha={message:n=>n.type!=="message"?void 0:{handled:!0,displayText:yl(n.payload.text)},messageAndClick:(n,e)=>{var o;if(n.type!=="message_and_click")return;let t=n.payload,r=yl(t.element);if(r&&((o=e.document)!=null&&o.querySelector)){let s=e.document.querySelector(r);s?setTimeout(()=>{s.click()},400):typeof console!="undefined"&&console.warn("[AgentWidget] Element not found for selector:",r)}return{handled:!0,displayText:yl(t.text)}}},Im=n=>Array.isArray(n)?n.map(e=>String(e)):[],vl=n=>{let e=new Set(Im(n.getSessionMetadata().processedActionMessageIds)),t=()=>{e=new Set(Im(n.getSessionMetadata().processedActionMessageIds))},r=()=>{let s=Array.from(e);n.updateSessionMetadata(a=>({...a,processedActionMessageIds:s}))};return{process:s=>{if(s.streaming||s.message.role!=="assistant"||!s.text||e.has(s.message.id))return null;let a=typeof s.raw=="string"&&s.raw||typeof s.message.rawContent=="string"&&s.message.rawContent||typeof s.text=="string"&&s.text||null;!a&&typeof s.text=="string"&&s.text.trim().startsWith("{")&&typeof console!="undefined"&&console.warn("[AgentWidget] Structured response detected but no raw payload was provided. Ensure your stream parser returns { text, raw }.");let i=a?n.parsers.reduce((c,g)=>c||(g==null?void 0:g({text:a,message:s.message}))||null,null):null;if(!i)return null;e.add(s.message.id),r();let d={action:i,message:s.message};n.emit("action:detected",d);for(let c of n.handlers)if(c)try{let g=()=>{n.emit("action:resubmit",d)},f=c(i,{message:s.message,metadata:n.getSessionMetadata(),updateMetadata:n.updateSessionMetadata,document:n.documentRef,triggerResubmit:g});if(!f)continue;if(f.handled){let u=f.persistMessage!==!1;return{text:f.displayText!==void 0?f.displayText:"",persist:u,resubmit:f.resubmit}}}catch(g){typeof console!="undefined"&&console.error("[AgentWidget] Action handler error:",g)}return{text:"",persist:!0}},syncFromMetadata:t}};var ov=n=>{if(!n)return null;try{return JSON.parse(n)}catch(e){return typeof console!="undefined"&&console.error("[AgentWidget] Failed to parse stored state:",e),null}},sv=n=>n.map(e=>({...e,streaming:!1})),av=n=>n.map(e=>({...e,status:"complete"})),Wm=(n="persona-state")=>{let e=()=>typeof window=="undefined"||!window.localStorage?null:window.localStorage;return{load:()=>{let t=e();return t?ov(t.getItem(n)):null},save:t=>{let r=e();if(r)try{let o={...t,messages:t.messages?sv(t.messages):void 0,artifacts:t.artifacts?av(t.artifacts):void 0};r.setItem(n,JSON.stringify(o))}catch(o){typeof console!="undefined"&&console.error("[AgentWidget] Failed to persist state:",o)}},clear:()=>{let t=e();if(t)try{t.removeItem(n)}catch(r){typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear stored state:",r)}}}};import{parse as fA,STR as hA,OBJ as yA}from"partial-json";function Rm(n,e){let{config:t,message:r,onPropsUpdate:o}=e,s=zo.get(n.component);if(!s)return console.warn(`[ComponentMiddleware] Component "${n.component}" not found in registry. Falling back to default rendering.`),null;let a={message:r,config:t,updateProps:i=>{o&&o(i)}};try{return s(n.props,a)}catch(i){return console.error(`[ComponentMiddleware] Error rendering component "${n.component}":`,i),null}}function Hm(n){if(typeof n.rawContent=="string"&&n.rawContent.length>0)return n.rawContent;if(typeof n.content=="string"){let e=n.content.trim();if(e.startsWith("{")||e.startsWith("["))return n.content}return null}function Bm(n){let e=Hm(n);if(!e)return!1;try{let t=JSON.parse(e);return typeof t=="object"&&t!==null&&"component"in t&&typeof t.component=="string"}catch{return!1}}function Dm(n){let e=Hm(n);if(!e)return null;try{let t=JSON.parse(e);if(typeof t=="object"&&t!==null&&"component"in t&&typeof t.component=="string"){let r=t;return{component:r.component,props:r.props&&typeof r.props=="object"&&r.props!==null?r.props:{},raw:e}}}catch{}return null}var iv=["Very dissatisfied","Dissatisfied","Neutral","Satisfied","Very satisfied"];function Nm(n){let{onSubmit:e,onDismiss:t,title:r="How satisfied are you?",subtitle:o="Please rate your experience",commentPlaceholder:s="Share your thoughts (optional)...",submitText:a="Submit",skipText:i="Skip",showComment:d=!0,ratingLabels:c=iv}=n,g=document.createElement("div");g.className="persona-feedback-container persona-feedback-csat",g.setAttribute("role","dialog"),g.setAttribute("aria-label","Customer satisfaction feedback");let f=null,u=document.createElement("div");u.className="persona-feedback-content";let m=document.createElement("div");m.className="persona-feedback-header";let v=document.createElement("h3");v.className="persona-feedback-title",v.textContent=r,m.appendChild(v);let x=document.createElement("p");x.className="persona-feedback-subtitle",x.textContent=o,m.appendChild(x),u.appendChild(m);let M=document.createElement("div");M.className="persona-feedback-rating persona-feedback-rating-csat",M.setAttribute("role","radiogroup"),M.setAttribute("aria-label","Satisfaction rating from 1 to 5");let E=[];for(let C=1;C<=5;C++){let I=document.createElement("button");I.type="button",I.className="persona-feedback-rating-btn persona-feedback-star-btn",I.setAttribute("role","radio"),I.setAttribute("aria-checked","false"),I.setAttribute("aria-label",`${C} star${C>1?"s":""}: ${c[C-1]}`),I.title=c[C-1],I.dataset.rating=String(C),I.innerHTML=`
|
|
25
|
+
`,t.addEventListener("click",e);let r=s=>{var N,k,W,C,I,D,B,E,z,j,te,We,$e;let a=(N=s.launcher)!=null?N:{},i=mn(s),d=t.querySelector("[data-role='launcher-title']");if(d){let ve=(k=a.title)!=null?k:"Chat Assistant";d.textContent=ve,d.setAttribute("title",ve)}let c=t.querySelector("[data-role='launcher-subtitle']");if(c){let ve=(W=a.subtitle)!=null?W:"Here to help you get answers fast";c.textContent=ve,c.setAttribute("title",ve)}let m=t.querySelector(".persona-flex-col");m&&(a.textHidden||i?m.style.display="none":m.style.display="");let f=t.querySelector("[data-role='launcher-icon']");if(f)if(a.agentIconHidden)f.style.display="none";else{let ve=(C=a.agentIconSize)!=null?C:"40px";if(f.style.height=ve,f.style.width=ve,f.innerHTML="",a.agentIconName){let Pe=parseFloat(ve)||24,Oe=Ce(a.agentIconName,Pe*.6,"var(--persona-text-inverse, #ffffff)",2);Oe?(f.appendChild(Oe),f.style.display=""):(f.textContent=(I=a.agentIconText)!=null?I:"\u{1F4AC}",f.style.display="")}else a.iconUrl?f.style.display="none":(f.textContent=(D=a.agentIconText)!=null?D:"\u{1F4AC}",f.style.display="")}let g=t.querySelector("[data-role='launcher-image']");if(g){let ve=(B=a.agentIconSize)!=null?B:"40px";g.style.height=ve,g.style.width=ve,a.iconUrl&&!a.agentIconName&&!a.agentIconHidden?(g.src=a.iconUrl,g.style.display="block"):g.style.display="none"}let u=t.querySelector("[data-role='launcher-call-to-action-icon']");if(u){let ve=(E=a.callToActionIconSize)!=null?E:"32px";u.style.height=ve,u.style.width=ve,a.callToActionIconBackgroundColor?(u.style.backgroundColor=a.callToActionIconBackgroundColor,u.classList.remove("persona-bg-persona-primary")):(u.style.backgroundColor="",u.classList.add("persona-bg-persona-primary")),a.callToActionIconColor?(u.style.color=a.callToActionIconColor,u.classList.remove("persona-text-persona-call-to-action")):(u.style.color="",u.classList.add("persona-text-persona-call-to-action"));let Pe=0;if(a.callToActionIconPadding?(u.style.boxSizing="border-box",u.style.padding=a.callToActionIconPadding,Pe=(parseFloat(a.callToActionIconPadding)||0)*2):(u.style.boxSizing="",u.style.padding=""),a.callToActionIconHidden)u.style.display="none";else if(u.style.display=i?"none":"",u.innerHTML="",a.callToActionIconName){let Oe=parseFloat(ve)||24,Ae=Math.max(Oe-Pe,8),be=Ce(a.callToActionIconName,Ae,"currentColor",2);be?u.appendChild(be):u.textContent=(z=a.callToActionIconText)!=null?z:"\u2197"}else u.textContent=(j=a.callToActionIconText)!=null?j:"\u2197"}let v=a.position&&gr[a.position]?gr[a.position]:gr["bottom-right"],x="persona-fixed persona-flex persona-items-center persona-gap-3 persona-rounded-launcher persona-bg-persona-surface persona-py-2.5 persona-pl-3 persona-pr-3 persona-transition hover:persona-translate-y-[-2px] persona-cursor-pointer",P="persona-relative persona-mt-4 persona-mb-4 persona-mx-auto persona-flex persona-items-center persona-justify-center persona-rounded-launcher persona-bg-persona-surface persona-transition hover:persona-translate-y-[-2px] persona-cursor-pointer";t.className=i?P:`${x} ${v}`,i||(t.style.zIndex=String((te=a.zIndex)!=null?te:xn));let T="1px solid var(--persona-border, #e5e7eb)",M="var(--persona-launcher-shadow, 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1))";t.style.border=(We=a.border)!=null?We:T,t.style.boxShadow=a.shadow!==void 0?a.shadow.trim()===""?"none":a.shadow:M,i?(t.style.width="0",t.style.minWidth="0",t.style.maxWidth="0",t.style.padding="0",t.style.overflow="hidden",t.style.border="none",t.style.boxShadow="none"):(t.style.width="",t.style.minWidth="",t.style.maxWidth=($e=a.collapsedMaxWidth)!=null?$e:"",t.style.justifyContent="",t.style.padding="",t.style.overflow="")},o=()=>{t.removeEventListener("click",e),t.remove()};return n&&r(n),{element:t,update:r,destroy:o}};var Ju=({config:n,showClose:e})=>{let{wrapper:t,panel:r,pillRoot:o}=Qu(n),s=Xu(n,e),a={wrapper:t,panel:r,pillRoot:o},i={container:s.container,body:s.body,messagesWrapper:s.messagesWrapper,composerOverlay:s.composerOverlay,introTitle:s.introTitle,introSubtitle:s.introSubtitle},d={element:s.header,iconHolder:s.iconHolder,headerTitle:s.headerTitle,headerSubtitle:s.headerSubtitle,closeButton:s.closeButton,closeButtonWrapper:s.closeButtonWrapper,clearChatButton:s.clearChatButton,clearChatButtonWrapper:s.clearChatButtonWrapper},c={footer:s.footer,form:s.composerForm,textarea:s.textarea,sendButton:s.sendButton,sendButtonWrapper:s.sendButtonWrapper,micButton:s.micButton,micButtonWrapper:s.micButtonWrapper,statusText:s.statusText,suggestions:s.suggestions,attachmentButton:s.attachmentButton,attachmentButtonWrapper:s.attachmentButtonWrapper,attachmentInput:s.attachmentInput,attachmentPreviewsContainer:s.attachmentPreviewsContainer,actionsRow:s.actionsRow,leftActions:s.leftActions,rightActions:s.rightActions,setSendButtonMode:s.setSendButtonMode,peekBanner:s.peekBanner,peekTextNode:s.peekTextNode};return{shell:a,panelElements:s,transcript:i,header:d,composer:c,replaceHeader:g=>(d.element.replaceWith(g.header),d.element=g.header,d.iconHolder=g.iconHolder,d.headerTitle=g.headerTitle,d.headerSubtitle=g.headerSubtitle,d.closeButton=g.closeButton,d.closeButtonWrapper=g.closeButtonWrapper,d.clearChatButton=g.clearChatButton,d.clearChatButtonWrapper=g.clearChatButtonWrapper,g),replaceComposer:g=>{c.footer.replaceWith(g),c.footer=g}}},Fi=({config:n,plugins:e,onToggle:t})=>{let r=e.find(s=>s.renderLauncher);if(r!=null&&r.renderLauncher){let s=r.renderLauncher({config:n,defaultRenderer:()=>Ni(n,t).element,onToggle:t});if(s)return{instance:null,element:s}}let o=Ni(n,t);return{instance:o,element:o.element}};var ab=n=>{switch(n){case"max_tool_calls":return"Stopped after calling a tool. Send a follow-up to continue.";case"length":return"Response cut off as max tokens reached. Ask for more to continue.";case"content_filter":return"The provider filtered this response.";case"error":return"Something went wrong generating this response.";default:return null}},ib=(n,e)=>{if(!n)return null;let t=ab(n);if(t===null)return null;let r=e==null?void 0:e[n],o=r!==void 0?r:t;return o||null},lb=(n,e)=>{let t=b("div","persona-message-stop-reason persona-text-xs persona-mt-2 persona-italic");return t.setAttribute("data-stop-reason",n),t.setAttribute("role","note"),t.style.opacity="0.75",t.textContent=e,t},cb=n=>{let e=n.toLowerCase();return e.startsWith("data:image/svg+xml")?!1:!!(/^(?:https?|blob):/i.test(n)||e.startsWith("data:image/")||!n.includes(":"))},Oi=n=>{let e=n.toLowerCase();return e.startsWith("javascript:")||e.startsWith("data:text/html")||e.startsWith("data:text/javascript")||e.startsWith("data:text/xml")||e.startsWith("data:application/xhtml")||e.startsWith("data:image/svg+xml")?!1:!!(/^(?:https?|blob):/i.test(n)||e.startsWith("data:")||!n.includes(":"))},_i=320,Zu=320,db=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="image"&&typeof e.image=="string"&&e.image.trim().length>0),pb=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="audio"&&typeof e.audio=="string"&&e.audio.trim().length>0),ub=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="video"&&typeof e.video=="string"&&e.video.trim().length>0),mb=n=>!n.contentParts||n.contentParts.length===0?[]:n.contentParts.filter(e=>e.type==="file"&&typeof e.data=="string"&&e.data.trim().length>0),gb=(n,e,t)=>{if(n.length===0)return null;try{let r=b("div","persona-flex persona-flex-col persona-gap-2");r.setAttribute("data-message-attachments","images"),e&&(r.style.marginBottom="8px");let o=0,s=!1,a=()=>{s||(s=!0,r.remove(),t==null||t())};return n.forEach((i,d)=>{var f;let c=b("img");c.alt=((f=i.alt)==null?void 0:f.trim())||`Attached image ${d+1}`,c.loading="lazy",c.decoding="async",c.referrerPolicy="no-referrer",c.style.display="block",c.style.width="100%",c.style.maxWidth=`${_i}px`,c.style.maxHeight=`${Zu}px`,c.style.height="auto",c.style.objectFit="contain",c.style.borderRadius="10px",c.style.backgroundColor="var(--persona-attachment-image-bg, var(--persona-container, #f3f4f6))",c.style.border="1px solid var(--persona-attachment-image-border, var(--persona-border, #e5e7eb))";let m=!1;o+=1,c.addEventListener("error",()=>{m||(m=!0,o=Math.max(0,o-1),c.remove(),o===0&&a())}),c.addEventListener("load",()=>{m=!0}),cb(i.image)?(c.src=i.image,r.appendChild(c)):(m=!0,o=Math.max(0,o-1),c.remove())}),o===0?(a(),null):r}catch{return t==null||t(),null}},fb=n=>{if(n.length===0)return null;try{let e=b("div","persona-flex persona-flex-col persona-gap-2");e.setAttribute("data-message-attachments","audio");let t=0;return n.forEach(r=>{if(!Oi(r.audio))return;let o=b("audio");o.controls=!0,o.preload="metadata",o.src=r.audio,o.style.display="block",o.style.width="100%",o.style.maxWidth=`${_i}px`,e.appendChild(o),t+=1}),t===0?(e.remove(),null):e}catch{return null}},hb=n=>{if(n.length===0)return null;try{let e=b("div","persona-flex persona-flex-col persona-gap-2");e.setAttribute("data-message-attachments","video");let t=0;return n.forEach(r=>{if(!Oi(r.video))return;let o=b("video");o.controls=!0,o.preload="metadata",o.src=r.video,o.style.display="block",o.style.width="100%",o.style.maxWidth=`${_i}px`,o.style.maxHeight=`${Zu}px`,o.style.borderRadius="10px",o.style.backgroundColor="var(--persona-attachment-image-bg, var(--persona-container, #f3f4f6))",e.appendChild(o),t+=1}),t===0?(e.remove(),null):e}catch{return null}},yb=n=>{if(n.length===0)return null;try{let e=b("div","persona-flex persona-flex-col persona-gap-2");e.setAttribute("data-message-attachments","files");let t=0;return n.forEach(r=>{if(!Oi(r.data))return;let o=b("a");o.href=r.data,o.download=r.filename,o.target="_blank",o.rel="noopener noreferrer",o.textContent=r.filename,o.className="persona-message-file-attachment",o.style.display="inline-flex",o.style.alignItems="center",o.style.gap="6px",o.style.padding="6px 10px",o.style.borderRadius="8px",o.style.fontSize="0.875rem",o.style.textDecoration="underline",o.style.backgroundColor="var(--persona-attachment-file-bg, var(--persona-container, #f3f4f6))",o.style.border="1px solid var(--persona-attachment-file-border, var(--persona-border, #e5e7eb))",o.style.color="inherit",e.appendChild(o),t+=1}),t===0?(e.remove(),null):e}catch{return null}},Gs=()=>{let n=document.createElement("div");n.className="persona-flex persona-items-center persona-space-x-1 persona-h-5 persona-mt-2";let e=document.createElement("div");e.className="persona-animate-typing persona-rounded-full persona-h-1.5 persona-w-1.5",e.style.backgroundColor="currentColor",e.style.opacity="0.4",e.style.animationDelay="0ms";let t=document.createElement("div");t.className="persona-animate-typing persona-rounded-full persona-h-1.5 persona-w-1.5",t.style.backgroundColor="currentColor",t.style.opacity="0.4",t.style.animationDelay="250ms";let r=document.createElement("div");r.className="persona-animate-typing persona-rounded-full persona-h-1.5 persona-w-1.5",r.style.backgroundColor="currentColor",r.style.opacity="0.4",r.style.animationDelay="500ms";let o=document.createElement("span");return o.className="persona-sr-only",o.textContent="Loading",n.appendChild(e),n.appendChild(t),n.appendChild(r),n.appendChild(o),n},bb=(n,e,t)=>{let r={config:t!=null?t:{},streaming:!0,location:n,defaultRenderer:Gs};if(e){let o=e(r);if(o!==null)return o}return Gs()},vb=(n,e)=>{let t=b("div","persona-flex-shrink-0 persona-w-8 persona-h-8 persona-rounded-full persona-flex persona-items-center persona-justify-center persona-text-sm"),r=e==="user"?n.userAvatar:n.assistantAvatar;if(r)if(r.startsWith("http")||r.startsWith("/")||r.startsWith("data:")){let o=b("img");o.src=r,o.alt=e==="user"?"User":"Assistant",o.className="persona-w-full persona-h-full persona-rounded-full persona-object-cover",t.appendChild(o)}else t.textContent=r,t.classList.add(e==="user"?"persona-bg-persona-accent":"persona-bg-persona-primary","persona-text-white");else t.textContent=e==="user"?"U":"A",t.classList.add(e==="user"?"persona-bg-persona-accent":"persona-bg-persona-primary","persona-text-white");return t},Yu=(n,e,t="div")=>{let r=b(t,"persona-text-xs persona-text-persona-muted"),o=new Date(n.createdAt);return e.format?r.textContent=e.format(o):r.textContent=o.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}),r},xb=(n,e="bubble")=>{let t=["persona-message-bubble","persona-max-w-[85%]"];switch(e){case"flat":n==="user"?t.push("persona-message-user-bubble","persona-ml-auto","persona-text-persona-primary","persona-py-2"):t.push("persona-message-assistant-bubble","persona-text-persona-primary","persona-py-2");break;case"minimal":t.push("persona-text-sm","persona-leading-relaxed"),n==="user"?t.push("persona-message-user-bubble","persona-ml-auto","persona-bg-persona-accent","persona-text-white","persona-px-3","persona-py-2","persona-rounded-lg"):t.push("persona-message-assistant-bubble","persona-bg-persona-surface","persona-text-persona-primary","persona-px-3","persona-py-2","persona-rounded-lg");break;default:t.push("persona-rounded-2xl","persona-text-sm","persona-leading-relaxed","persona-shadow-sm"),n==="user"?t.push("persona-message-user-bubble","persona-ml-auto","persona-bg-persona-accent","persona-text-white","persona-px-5","persona-py-3"):t.push("persona-message-assistant-bubble","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-px-5","persona-py-3");break}return t},wb=(n,e,t)=>{var v,x,P,T,M,N,k;let r=(v=e.showCopy)!=null?v:!0,o=(x=e.showUpvote)!=null?x:!0,s=(P=e.showDownvote)!=null?P:!0,a=(T=e.showReadAloud)!=null?T:!1;if(!r&&!o&&!s&&!a){let W=b("div");return W.style.display="none",W.id=`actions-${n.id}`,W.setAttribute("data-actions-for",n.id),W}let i=(M=e.visibility)!=null?M:"hover",d=(N=e.align)!=null?N:"right",c=(k=e.layout)!=null?k:"pill-inside",m={left:"persona-message-actions-left",center:"persona-message-actions-center",right:"persona-message-actions-right"}[d],f={"pill-inside":"persona-message-actions-pill","row-inside":"persona-message-actions-row"}[c],g=b("div",`persona-message-actions persona-flex persona-items-center persona-gap-1 persona-mt-2 ${m} ${f} ${i==="hover"?"persona-message-actions-hover":""}`);g.id=`actions-${n.id}`,g.setAttribute("data-actions-for",n.id);let u=(W,C,I)=>{let D=wn({icon:W,label:C,size:14,className:"persona-message-action-btn"});return D.setAttribute("data-action",I),D};return r&&g.appendChild(u("copy","Copy message","copy")),a&&g.appendChild(u("volume-2","Read aloud","read-aloud")),o&&g.appendChild(u("thumbs-up","Upvote","upvote")),s&&g.appendChild(u("thumbs-down","Downvote","downvote")),g},$i=(n,e,t,r,o,s)=>{var ne,Q,ae,fe,re,V,ee,Ue,J,ie,Le,at,it,nt,Me,de,Qe;let a=t!=null?t:{},i=(ne=a.layout)!=null?ne:"bubble",d=a.avatar,c=a.timestamp,m=(Q=d==null?void 0:d.show)!=null?Q:!1,f=(ae=c==null?void 0:c.show)!=null?ae:!1,g=(fe=d==null?void 0:d.position)!=null?fe:"left",u=(re=c==null?void 0:c.position)!=null?re:"below",v=xb(n.role,i),x=b("div",v.join(" "));x.id=`bubble-${n.id}`,x.setAttribute("data-message-id",n.id),x.setAttribute("data-persona-theme-zone",n.role==="user"?"user-message":"assistant-message"),n.role==="user"?(x.style.backgroundColor="var(--persona-message-user-bg, var(--persona-accent))",x.style.color="var(--persona-message-user-text, white)"):n.role==="assistant"&&(x.style.backgroundColor="var(--persona-message-assistant-bg, var(--persona-surface))",x.style.color="var(--persona-message-assistant-text, var(--persona-text))");let P=db(n),T=(ee=(V=n.content)==null?void 0:V.trim())!=null?ee:"",N=P.length>0&&T===Ca,k=Ba((J=(Ue=s==null?void 0:s.widgetConfig)==null?void 0:Ue.features)==null?void 0:J.streamAnimation),W=(at=(Le=(ie=s==null?void 0:s.widgetConfig)==null?void 0:ie.features)==null?void 0:Le.streamAnimation)==null?void 0:at.plugins,C=n.role==="assistant"&&k.type!=="none"?$s(k.type,W):null,I=n.role==="assistant"&&((it=C==null?void 0:C.isAnimating)==null?void 0:it.call(C,n))===!0,D=n.role==="assistant"&&C!==null&&(!!n.streaming||I);D&&(C!=null&&C.bubbleClass)&&x.classList.add(C.bubbleClass);let B=document.createElement("div");B.classList.add("persona-message-content"),D&&C&&(C.containerClass&&B.classList.add(C.containerClass),B.style.setProperty("--persona-stream-step",`${k.speed}ms`),B.style.setProperty("--persona-stream-duration",`${k.duration}ms`));let E=D?Da((nt=n.content)!=null?nt:"",k.buffer,C,n,!!n.streaming):(Me=n.content)!=null?Me:"",z=e({text:E,message:n,streaming:!!n.streaming,raw:n.rawContent}),j=z;D&&(C==null?void 0:C.wrap)==="char"?j=Us(z,"char",n.id,{skipTags:C.skipTags}):D&&(C==null?void 0:C.wrap)==="word"&&(j=Us(z,"word",n.id,{skipTags:C.skipTags}));let te=null;if(N?(te=document.createElement("div"),te.innerHTML=j,te.style.display="none",B.appendChild(te)):B.innerHTML=j,D&&(C!=null&&C.useCaret)&&!N&&T){let X=Na(),le=B.querySelectorAll(".persona-stream-char, .persona-stream-word"),xe=le[le.length-1];if(xe!=null&&xe.parentNode)xe.parentNode.insertBefore(X,xe.nextSibling);else{let ze=B.lastElementChild;ze?ze.appendChild(X):B.appendChild(X)}}if(f&&u==="inline"&&n.createdAt){let X=Yu(n,c,"span");X.classList.add("persona-timestamp-inline");let le=B.lastElementChild;le?le.appendChild(X):B.appendChild(X)}if(P.length>0){let X=gb(P,!N&&!!T,()=>{N&&te&&(te.style.display="")});X?x.appendChild(X):N&&te&&(te.style.display="")}let We=pb(n);if(We.length>0){let X=fb(We);X&&x.appendChild(X)}let $e=ub(n);if($e.length>0){let X=hb($e);X&&x.appendChild(X)}let ve=mb(n);if(ve.length>0){let X=yb(ve);X&&x.appendChild(X)}if(x.appendChild(B),f&&u==="below"&&n.createdAt){let X=Yu(n,c);X.classList.add("persona-mt-1"),x.appendChild(X)}let Pe=n.role==="assistant"?ib(n.stopReason,(Qe=(de=s==null?void 0:s.widgetConfig)==null?void 0:de.copy)==null?void 0:Qe.stopReasonNotice):null;if(n.streaming&&n.role==="assistant"){let X=!!(E&&E.trim()),le=k.placeholder==="skeleton",xe=le&&k.buffer==="line"&&X;if(X)xe&&x.appendChild(qs());else if(le)x.appendChild(qs());else{let ze=bb("inline",s==null?void 0:s.loadingIndicatorRenderer,s==null?void 0:s.widgetConfig);ze&&x.appendChild(ze)}}if(Pe&&n.stopReason&&!n.streaming&&(T||(B.style.display="none"),x.appendChild(lb(n.stopReason,Pe))),n.role==="assistant"&&!n.streaming&&n.content&&n.content.trim()&&(r==null?void 0:r.enabled)!==!1&&r){let X=wb(n,r,o);x.appendChild(X)}if(!m||n.role==="system")return x;let Ae=b("div",`persona-flex persona-gap-2 ${n.role==="user"?"persona-flex-row-reverse":""}`),be=vb(d,n.role);return g==="right"||g==="left"&&n.role==="user"?Ae.append(x,be):Ae.append(be,x),x.classList.remove("persona-max-w-[85%]"),x.classList.add("persona-max-w-[calc(85%-2.5rem)]"),Ae};var is=new Set,Cb=(n,e)=>e==null?!1:typeof e=="string"?(n.textContent=e,!0):(n.appendChild(e),!0),Ab=(n,e)=>{var r,o;let t=(o=(r=n.reasoning)==null?void 0:r.chunks.join("").trim())!=null?o:"";return t?t.split(/\r?\n/).map(s=>s.trim()).filter(Boolean).slice(0,e).join(`
|
|
26
|
+
`):""},em=(n,e)=>{let t=is.has(n),r=e.querySelector('button[data-expand-header="true"]'),o=e.querySelector(".persona-border-t"),s=e.querySelector('[data-persona-collapsed-preview="reasoning"]');if(!r||!o)return;r.setAttribute("aria-expanded",t?"true":"false");let a=r.querySelector(".persona-ml-auto"),i=a==null?void 0:a.querySelector(":scope > .persona-flex.persona-items-center");if(i){i.innerHTML="";let c=Ce(t?"chevron-up":"chevron-down",16,"currentColor",2);c?i.appendChild(c):i.textContent=t?"Hide":"Show"}o.style.display=t?"":"none",s&&(s.style.display=t?"none":s.textContent||s.childNodes.length?"":"none")},Ui=(n,e)=>{var $e,ve,Pe,Oe,Ae,be,ne,Q,ae,fe,re;let t=n.reasoning,r=b("div",["persona-message-bubble","persona-reasoning-bubble","persona-w-full","persona-max-w-[85%]","persona-rounded-2xl","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-shadow-sm","persona-overflow-hidden","persona-px-0","persona-py-0"].join(" "));if(r.id=`bubble-${n.id}`,r.setAttribute("data-message-id",n.id),!t)return r;let o=(ve=($e=e==null?void 0:e.features)==null?void 0:$e.reasoningDisplay)!=null?ve:{},s=o.expandable!==!1,a=s&&is.has(n.id),i=t.status!=="complete",d=Ab(n,(Pe=o.previewMaxLines)!=null?Pe:3),c=b("button",s?"persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none":"persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none");c.type="button",s&&(c.setAttribute("aria-expanded",a?"true":"false"),c.setAttribute("data-expand-header","true")),c.setAttribute("data-bubble-type","reasoning");let m=b("div","persona-flex persona-flex-col persona-text-left"),f=b("span","persona-text-xs persona-text-persona-primary"),g="Thinking...",u=(Oe=e==null?void 0:e.reasoning)!=null?Oe:{},v=String((Ae=t.startedAt)!=null?Ae:Date.now()),x=()=>{let V=b("span","");return V.setAttribute("data-tool-elapsed",v),V.textContent=ba(t),V},P=(be=u.renderCollapsedSummary)==null?void 0:be.call(u,{message:n,reasoning:t,defaultSummary:g,previewText:d,isActive:i,config:e!=null?e:{},elapsed:ba(t),createElapsedElement:x});typeof P=="string"&&P.trim()?(f.textContent=P,m.appendChild(f)):P instanceof HTMLElement?m.appendChild(P):(f.textContent=g,m.appendChild(f));let T=b("span","persona-text-xs persona-text-persona-primary");T.textContent=eu(t),m.appendChild(T);let M=(ne=o.loadingAnimation)!=null?ne:"none",N=u.activeTextTemplate,k=u.completeTextTemplate,W=i?N:k,C=P instanceof HTMLElement,I=(V,ee,Ue)=>{let J=Ue;for(let ie of ee){let Le=b("span","persona-tool-char");Le.style.setProperty("--char-index",String(J)),Le.textContent=ie===" "?"\xA0":ie,V.appendChild(Le),J++}return J},D=(V,ee)=>{f.textContent="";let Ue=va(V,""),J=0;for(let ie of Ue){let Le=ie.styles.length>0?(()=>{let at=b("span",ie.styles.map(it=>`persona-tool-text-${it}`).join(" "));return f.appendChild(at),at})():f;if(ie.isDuration&&i)Le.appendChild(x());else{let at=ie.isDuration?ba(t):ie.text;ee?J=I(Le,at,J):Le.appendChild(document.createTextNode(at))}}};if(!C&&W)if(T.style.display="none",f.style.display="",i&&M!=="none"){let V=(Q=u.loadingAnimationDuration)!=null?Q:2e3;f.setAttribute("data-preserve-animation","true"),M==="pulse"?(f.classList.add("persona-tool-loading-pulse"),f.style.setProperty("--persona-tool-anim-duration",`${V}ms`),D(W,!1)):(f.classList.add(`persona-tool-loading-${M}`),f.style.setProperty("--persona-tool-anim-duration",`${V}ms`),M==="shimmer-color"&&(u.loadingAnimationColor&&f.style.setProperty("--persona-tool-anim-color",u.loadingAnimationColor),u.loadingAnimationSecondaryColor&&f.style.setProperty("--persona-tool-anim-secondary-color",u.loadingAnimationSecondaryColor)),D(W,!0))}else D(W,!1);else if(!C&&i&&M!=="none"){f.style.display="";let V=(ae=u.loadingAnimationDuration)!=null?ae:2e3;if(f.setAttribute("data-preserve-animation","true"),M==="pulse")f.classList.add("persona-tool-loading-pulse"),f.style.setProperty("--persona-tool-anim-duration",`${V}ms`);else{f.classList.add(`persona-tool-loading-${M}`),f.style.setProperty("--persona-tool-anim-duration",`${V}ms`),M==="shimmer-color"&&(u.loadingAnimationColor&&f.style.setProperty("--persona-tool-anim-color",u.loadingAnimationColor),u.loadingAnimationSecondaryColor&&f.style.setProperty("--persona-tool-anim-secondary-color",u.loadingAnimationSecondaryColor));let ee=f.textContent||g;f.textContent="",I(f,ee,0)}t.status==="complete"&&(f.style.display="none")}else C||(t.status==="complete"?f.style.display="none":f.style.display="");let B=null;if(s){B=b("div","persona-flex persona-items-center");let ee=Ce(a?"chevron-up":"chevron-down",16,"currentColor",2);ee?B.appendChild(ee):B.textContent=a?"Hide":"Show";let Ue=b("div","persona-flex persona-items-center persona-ml-auto");Ue.append(B),c.append(m,Ue)}else c.append(m);let E=b("div","persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted");if(E.setAttribute("data-persona-collapsed-preview","reasoning"),E.style.display="none",E.style.whiteSpace="pre-wrap",!a&&i&&o.activePreview&&d){let V=(re=(fe=e==null?void 0:e.reasoning)==null?void 0:fe.renderCollapsedPreview)==null?void 0:re.call(fe,{message:n,reasoning:t,defaultPreview:d,isActive:i,config:e!=null?e:{}});Cb(E,V)||(E.textContent=d),E.style.display=""}if(!a&&i&&o.activeMinHeight&&(r.style.minHeight=o.activeMinHeight),!s)return r.append(c,E),r;let z=b("div","persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-px-4 persona-py-3");z.style.display=a?"":"none";let j=t.chunks.join(""),te=b("div","persona-whitespace-pre-wrap persona-text-xs persona-leading-snug persona-text-persona-muted");return te.textContent=j||(t.status==="complete"?"No additional context was shared.":"Waiting for details\u2026"),z.appendChild(te),(()=>{if(c.setAttribute("aria-expanded",a?"true":"false"),B){B.innerHTML="";let ee=Ce(a?"chevron-up":"chevron-down",16,"currentColor",2);ee?B.appendChild(ee):B.textContent=a?"Hide":"Show"}z.style.display=a?"":"none",E.style.display=a?"none":E.textContent||E.childNodes.length?"":"none"})(),r.append(c,E,z),r};var ls=new Set,Sb=(n,e)=>e==null?!1:typeof e=="string"?(n.textContent=e,!0):(n.appendChild(e),!0),Tb=(n,e)=>{var s;let t=n.toolCall;if(!t)return"";let r=((s=t.chunks)!=null?s:[]).join("").trim();if(r)return r.split(/\r?\n/).map(i=>i.trim()).filter(Boolean).slice(-e).join(`
|
|
27
|
+
`);let o=es(t.args).trim();return o?o.split(/\r?\n/).map(a=>a.trim()).filter(Boolean).slice(0,e).join(`
|
|
28
|
+
`):""},qi=(n,e)=>{var t,r,o;n.style.backgroundColor=(t=e.codeBlockBackgroundColor)!=null?t:"var(--persona-container, #f3f4f6)",n.style.borderColor=(r=e.codeBlockBorderColor)!=null?r:"var(--persona-border, #e5e7eb)",n.style.color=(o=e.codeBlockTextColor)!=null?o:"var(--persona-text, #171717)"},Mb=(n,e)=>{var m,f,g,u,v;let t=n.toolCall,r=(m=e==null?void 0:e.features)==null?void 0:m.toolCallDisplay,o=(f=r==null?void 0:r.collapsedMode)!=null?f:"tool-call",s=Tb(n,(g=r==null?void 0:r.previewMaxLines)!=null?g:3),a=t?tu(t):"";if(!t)return{summary:a,previewText:s,isActive:!1};let i=t.status!=="complete",d=(u=e==null?void 0:e.toolCall)!=null?u:{},c=a;return o==="tool-name"?c=((v=t.name)==null?void 0:v.trim())||a:o==="tool-preview"&&s&&(c=s),i&&d.activeTextTemplate?c=Ai(t,d.activeTextTemplate,c):!i&&d.completeTextTemplate&&(c=Ai(t,d.completeTextTemplate,c)),{summary:c,previewText:s,isActive:i}},tm=(n,e,t)=>{var m;let r=ls.has(n),o=(m=t==null?void 0:t.toolCall)!=null?m:{},s=e.querySelector('button[data-expand-header="true"]'),a=e.querySelector(".persona-border-t"),i=e.querySelector('[data-persona-collapsed-preview="tool"]');if(!s||!a)return;s.setAttribute("aria-expanded",r?"true":"false");let d=s.querySelector(".persona-ml-auto"),c=d==null?void 0:d.querySelector(":scope > .persona-flex.persona-items-center");if(c){c.innerHTML="";let f=o.toggleTextColor||o.headerTextColor||"var(--persona-primary, #171717)",g=Ce(r?"chevron-up":"chevron-down",16,f,2);g?c.appendChild(g):c.textContent=r?"Hide":"Show"}a.style.display=r?"":"none",i&&(i.style.display=r?"none":i.textContent||i.childNodes.length?"":"none")},zi=(n,e)=>{var j,te,We,$e,ve,Pe,Oe,Ae,be;let t=n.toolCall,r=(j=e==null?void 0:e.toolCall)!=null?j:{},o=b("div",["persona-message-bubble","persona-tool-bubble","persona-w-full","persona-max-w-[85%]","persona-rounded-2xl","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-shadow-sm","persona-overflow-hidden","persona-px-0","persona-py-0"].join(" "));if(o.id=`bubble-${n.id}`,o.setAttribute("data-message-id",n.id),r.backgroundColor&&(o.style.backgroundColor=r.backgroundColor),r.borderColor&&(o.style.borderColor=r.borderColor),r.borderWidth&&(o.style.borderWidth=r.borderWidth),r.borderRadius&&(o.style.borderRadius=r.borderRadius),o.style.boxShadow=r.shadow!==void 0?r.shadow.trim()===""?"none":r.shadow:"var(--persona-tool-bubble-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))",!t)return o;let s=(We=(te=e==null?void 0:e.features)==null?void 0:te.toolCallDisplay)!=null?We:{},a=s.expandable!==!1,i=a&&ls.has(n.id),{summary:d,previewText:c,isActive:m}=Mb(n,e),f=b("button",a?"persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none":"persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none");f.type="button",a&&(f.setAttribute("aria-expanded",i?"true":"false"),f.setAttribute("data-expand-header","true")),f.setAttribute("data-bubble-type","tool"),r.headerBackgroundColor&&(f.style.backgroundColor=r.headerBackgroundColor),r.headerPaddingX&&(f.style.paddingLeft=r.headerPaddingX,f.style.paddingRight=r.headerPaddingX),r.headerPaddingY&&(f.style.paddingTop=r.headerPaddingY,f.style.paddingBottom=r.headerPaddingY);let g=b("div","persona-flex persona-flex-col persona-text-left"),u=b("span","persona-text-xs persona-text-persona-primary");r.headerTextColor&&(u.style.color=r.headerTextColor);let v=String(($e=t.startedAt)!=null?$e:Date.now()),x=()=>{let ne=b("span","");return ne.setAttribute("data-tool-elapsed",v),ne.textContent=Ps(t),ne},P=(Pe=r.renderCollapsedSummary)==null?void 0:Pe.call(r,{message:n,toolCall:t,defaultSummary:d,previewText:c,collapsedMode:(ve=s.collapsedMode)!=null?ve:"tool-call",isActive:m,config:e!=null?e:{},elapsed:Ps(t),createElapsedElement:x});typeof P=="string"&&P.trim()?(u.textContent=P,g.appendChild(u)):P instanceof HTMLElement?g.appendChild(P):(u.textContent=d,g.appendChild(u));let T=(Oe=s.loadingAnimation)!=null?Oe:"none",M=r.activeTextTemplate,N=r.completeTextTemplate,k=m?M:N,W=P instanceof HTMLElement,C=(ne,Q,ae)=>{let fe=ae;for(let re of Q){let V=b("span","persona-tool-char");V.style.setProperty("--char-index",String(fe)),V.textContent=re===" "?"\xA0":re,ne.appendChild(V),fe++}return fe},I=(ne,Q)=>{var V;u.textContent="";let ae=((V=t.name)==null?void 0:V.trim())||"tool",fe=va(ne,ae),re=0;for(let ee of fe){let Ue=ee.styles.length>0?(()=>{let J=b("span",ee.styles.map(ie=>`persona-tool-text-${ie}`).join(" "));return u.appendChild(J),J})():u;if(ee.isDuration&&m)Ue.appendChild(x());else{let J=ee.isDuration?Ps(t):ee.text;Q?re=C(Ue,J,re):Ue.appendChild(document.createTextNode(J))}}};if(!W)if(m&&T!=="none"){let ne=(Ae=r.loadingAnimationDuration)!=null?Ae:2e3;if(u.setAttribute("data-preserve-animation","true"),T==="pulse")u.classList.add("persona-tool-loading-pulse"),u.style.setProperty("--persona-tool-anim-duration",`${ne}ms`),k&&I(k,!1);else if(u.classList.add(`persona-tool-loading-${T}`),u.style.setProperty("--persona-tool-anim-duration",`${ne}ms`),T==="shimmer-color"&&(r.loadingAnimationColor&&u.style.setProperty("--persona-tool-anim-color",r.loadingAnimationColor),r.loadingAnimationSecondaryColor&&u.style.setProperty("--persona-tool-anim-secondary-color",r.loadingAnimationSecondaryColor)),k)I(k,!0);else{let Q=u.textContent||d;u.textContent="",C(u,Q,0)}}else k&&I(k,!1);let D=null;if(a){D=b("div","persona-flex persona-items-center");let ne=r.toggleTextColor||r.headerTextColor||"var(--persona-primary, #171717)",Q=Ce(i?"chevron-up":"chevron-down",16,ne,2);Q?D.appendChild(Q):D.textContent=i?"Hide":"Show";let ae=b("div","persona-flex persona-items-center persona-gap-2 persona-ml-auto");ae.append(D),f.append(g,ae)}else f.append(g);let B=b("div","persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted");if(B.setAttribute("data-persona-collapsed-preview","tool"),B.style.display="none",B.style.whiteSpace="pre-wrap",!i&&m&&s.activePreview&&c){let ne=(be=r.renderCollapsedPreview)==null?void 0:be.call(r,{message:n,toolCall:t,defaultPreview:c,isActive:m,config:e!=null?e:{}});Sb(B,ne)||(B.textContent=c),B.style.display=""}if(!i&&m&&s.activeMinHeight&&(o.style.minHeight=s.activeMinHeight),!a)return o.append(f,B),o;let E=b("div","persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-space-y-3 persona-px-4 persona-py-3");if(E.style.display=i?"":"none",r.contentBackgroundColor&&(E.style.backgroundColor=r.contentBackgroundColor),r.contentTextColor&&(E.style.color=r.contentTextColor),r.contentPaddingX&&(E.style.paddingLeft=r.contentPaddingX,E.style.paddingRight=r.contentPaddingX),r.contentPaddingY&&(E.style.paddingTop=r.contentPaddingY,E.style.paddingBottom=r.contentPaddingY),t.name){let ne=b("div","persona-text-xs persona-text-persona-muted persona-italic");r.contentTextColor?ne.style.color=r.contentTextColor:r.headerTextColor&&(ne.style.color=r.headerTextColor),ne.textContent=t.name,E.appendChild(ne)}if(t.args!==void 0){let ne=b("div","persona-space-y-1"),Q=b("div","persona-text-xs persona-text-persona-muted");r.labelTextColor&&(Q.style.color=r.labelTextColor),Q.textContent="Arguments";let ae=b("pre","persona-max-h-48 persona-overflow-auto persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs");ae.style.fontSize="0.75rem",ae.style.lineHeight="1rem",qi(ae,r),ae.textContent=es(t.args),ne.append(Q,ae),E.appendChild(ne)}if(t.chunks&&t.chunks.length){let ne=b("div","persona-space-y-1"),Q=b("div","persona-text-xs persona-text-persona-muted");r.labelTextColor&&(Q.style.color=r.labelTextColor),Q.textContent="Activity";let ae=b("pre","persona-max-h-48 persona-overflow-auto persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs");ae.style.fontSize="0.75rem",ae.style.lineHeight="1rem",qi(ae,r),ae.textContent=t.chunks.join(""),ne.append(Q,ae),E.appendChild(ne)}if(t.status==="complete"&&t.result!==void 0){let ne=b("div","persona-space-y-1"),Q=b("div","persona-text-xs persona-text-persona-muted");r.labelTextColor&&(Q.style.color=r.labelTextColor),Q.textContent="Result";let ae=b("pre","persona-max-h-48 persona-overflow-auto persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs");ae.style.fontSize="0.75rem",ae.style.lineHeight="1rem",qi(ae,r),ae.textContent=es(t.result),ne.append(Q,ae),E.appendChild(ne)}if(t.status==="complete"&&typeof t.duration=="number"){let ne=b("div","persona-text-xs persona-text-persona-muted");r.contentTextColor&&(ne.style.color=r.contentTextColor),ne.textContent=`Duration: ${t.duration}ms`,E.appendChild(ne)}return(()=>{if(f.setAttribute("aria-expanded",i?"true":"false"),D){D.innerHTML="";let ne=r.toggleTextColor||r.headerTextColor||"var(--persona-primary, #171717)",Q=Ce(i?"chevron-up":"chevron-down",16,ne,2);Q?D.appendChild(Q):D.textContent=i?"Hide":"Show"}E.style.display=i?"":"none",B.style.display=i?"none":B.textContent||B.childNodes.length?"":"none"})(),o.append(f,B,E),o};var Ga=new Map,Eb=n=>{let t=(n.startsWith(Mo)?n.slice(Mo.length):n).replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[_\-\s.]+/).filter(Boolean);if(t.length===0)return n;let r=t.join(" ").toLowerCase();return r.charAt(0).toUpperCase()+r.slice(1)},nm=n=>(n==null?void 0:n.approval)!==!1?n==null?void 0:n.approval:void 0,rm=(n,e)=>{var r,o,s;let t=(o=(r=nm(e))==null?void 0:r.detailsDisplay)!=null?o:"collapsed";return(s=Ga.get(n))!=null?s:t==="expanded"},om=(n,e,t)=>{var a,i;let r=nm(t);n.setAttribute("aria-expanded",e?"true":"false");let o=n.querySelector("[data-approval-details-label]");o&&(o.textContent=e?(a=r==null?void 0:r.hideDetailsLabel)!=null?a:"Hide details":(i=r==null?void 0:r.showDetailsLabel)!=null?i:"Show details");let s=n.querySelector("[data-approval-details-chevron]");if(s){s.innerHTML="";let d=Ce(e?"chevron-up":"chevron-down",14,"currentColor",2);d&&s.appendChild(d)}},sm=(n,e,t)=>{let r=e.querySelector('button[data-bubble-type="approval"]'),o=e.querySelector("[data-approval-details]");if(!r||!o)return;let s=rm(n,t);om(r,s,t),o.style.display=s?"":"none"};var Qa=(n,e)=>{var I,D,B,E,z,j,te,We,$e,ve,Pe,Oe,Ae,be,ne;let t=n.approval,r=(e==null?void 0:e.approval)!==!1?e==null?void 0:e.approval:void 0,o=(t==null?void 0:t.status)==="pending",s=b("div",["persona-approval-bubble","persona-w-full","persona-max-w-[85%]","persona-rounded-2xl","persona-border","persona-shadow-sm","persona-overflow-hidden"].join(" "));if(s.id=`bubble-${n.id}`,s.setAttribute("data-message-id",n.id),s.style.backgroundColor=(I=r==null?void 0:r.backgroundColor)!=null?I:"var(--persona-approval-bg, #fefce8)",s.style.borderColor=(D=r==null?void 0:r.borderColor)!=null?D:"var(--persona-approval-border, #fef08a)",s.style.boxShadow=(r==null?void 0:r.shadow)!==void 0?r.shadow.trim()===""?"none":r.shadow:"var(--persona-approval-shadow, 0 5px 15px rgba(15, 23, 42, 0.08))",!t)return s;let a=b("div","persona-flex persona-items-start persona-gap-3 persona-px-4 persona-py-3"),i=b("div","persona-flex-shrink-0 persona-mt-0.5");i.setAttribute("data-approval-icon","true");let d=t.status==="denied"?"shield-x":t.status==="timeout"?"shield-alert":"shield-check",c=t.status==="approved"?"var(--persona-feedback-success, #16a34a)":t.status==="denied"?"var(--persona-feedback-error, #dc2626)":t.status==="timeout"?"var(--persona-feedback-warning, #ca8a04)":(B=r==null?void 0:r.titleColor)!=null?B:"currentColor",m=Ce(d,20,c,2);m&&i.appendChild(m);let f=b("div","persona-flex-1 persona-min-w-0"),g=b("div","persona-flex persona-items-center persona-gap-2"),u=b("span","persona-text-sm persona-font-medium persona-text-persona-primary");if(r!=null&&r.titleColor&&(u.style.color=r.titleColor),u.textContent=(E=r==null?void 0:r.title)!=null?E:"Approval Required",g.appendChild(u),!o){let Q=b("span","persona-inline-flex persona-items-center persona-px-2 persona-py-0.5 persona-rounded-full persona-text-xs persona-font-medium");Q.setAttribute("data-approval-status",t.status),t.status==="approved"?(Q.style.backgroundColor="var(--persona-palette-colors-success-100, #dcfce7)",Q.style.color="var(--persona-palette-colors-success-700, #15803d)",Q.textContent="Approved"):t.status==="denied"?(Q.style.backgroundColor="var(--persona-palette-colors-error-100, #fee2e2)",Q.style.color="var(--persona-palette-colors-error-700, #b91c1c)",Q.textContent="Denied"):t.status==="timeout"&&(Q.style.backgroundColor="var(--persona-palette-colors-warning-100, #fef3c7)",Q.style.color="var(--persona-palette-colors-warning-700, #b45309)",Q.textContent="Timeout"),g.appendChild(Q)}f.appendChild(g);let x=t.toolType==="webmcp"||t.toolName.startsWith(Mo)?ui(t.toolName):void 0,P=(z=r==null?void 0:r.formatDescription)==null?void 0:z.call(r,{toolName:t.toolName,toolType:t.toolType,description:t.description,parameters:t.parameters,...x?{displayTitle:x}:{},...t.reason?{reason:t.reason}:{}}),T=!t.toolName,M=P||(T?t.description:`The assistant wants to use \u201C${x!=null?x:Eb(t.toolName)}\u201D.`),N=b("p","persona-text-sm persona-mt-0.5 persona-text-persona-muted");if(N.setAttribute("data-approval-summary","true"),r!=null&&r.descriptionColor&&(N.style.color=r.descriptionColor),N.textContent=M,f.appendChild(N),t.reason){let Q=b("p","persona-text-sm persona-mt-1 persona-text-persona-muted");Q.setAttribute("data-approval-reason","true"),r!=null&&r.reasonColor?Q.style.color=r.reasonColor:r!=null&&r.descriptionColor&&(Q.style.color=r.descriptionColor);let ae=b("span","persona-font-medium");ae.textContent=`${(j=r==null?void 0:r.reasonLabel)!=null?j:"Agent's stated reason:"} `,Q.appendChild(ae),Q.appendChild(document.createTextNode(t.reason)),f.appendChild(Q)}let k=(te=r==null?void 0:r.detailsDisplay)!=null?te:"collapsed",W=!!t.description&&!T,C=W||!!t.parameters;if(k!=="hidden"&&C){let Q=rm(n.id,e),ae=b("button","persona-inline-flex persona-items-center persona-gap-1 persona-mt-1 persona-p-0 persona-border-none persona-bg-transparent persona-text-xs persona-font-medium persona-cursor-pointer persona-text-persona-muted");ae.type="button",ae.setAttribute("data-expand-header","true"),ae.setAttribute("data-bubble-type","approval"),r!=null&&r.descriptionColor&&(ae.style.color=r.descriptionColor);let fe=b("span");fe.setAttribute("data-approval-details-label","true");let re=b("span","persona-inline-flex persona-items-center");re.setAttribute("data-approval-details-chevron","true"),ae.append(fe,re),om(ae,Q,e),f.appendChild(ae);let V=b("div");if(V.setAttribute("data-approval-details","true"),V.style.display=Q?"":"none",W){let ee=b("p","persona-text-sm persona-mt-1 persona-text-persona-muted");r!=null&&r.descriptionColor&&(ee.style.color=r.descriptionColor),ee.textContent=t.description,V.appendChild(ee)}if(t.parameters){let ee=b("pre","persona-mt-2 persona-text-xs persona-p-2 persona-rounded persona-overflow-x-auto persona-max-h-32 persona-bg-persona-container persona-text-persona-primary");r!=null&&r.parameterBackgroundColor&&(ee.style.backgroundColor=r.parameterBackgroundColor),r!=null&&r.parameterTextColor&&(ee.style.color=r.parameterTextColor),ee.style.fontSize="0.75rem",ee.style.lineHeight="1rem",ee.textContent=es(t.parameters),V.appendChild(ee)}f.appendChild(V)}if(o){let Q=b("div","persona-flex persona-gap-2 persona-mt-2");Q.setAttribute("data-approval-buttons","true");let ae=b("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-border-none persona-cursor-pointer");ae.type="button",ae.style.backgroundColor=(We=r==null?void 0:r.approveButtonColor)!=null?We:"var(--persona-approval-approve-bg, #22c55e)",ae.style.color=($e=r==null?void 0:r.approveButtonTextColor)!=null?$e:"#ffffff",ae.setAttribute("data-approval-action","approve");let fe=Ce("shield-check",14,(ve=r==null?void 0:r.approveButtonTextColor)!=null?ve:"#ffffff",2);fe&&(fe.style.marginRight="4px",ae.appendChild(fe));let re=document.createTextNode((Pe=r==null?void 0:r.approveLabel)!=null?Pe:"Approve");ae.appendChild(re);let V=b("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-cursor-pointer");V.type="button",V.style.backgroundColor=(Oe=r==null?void 0:r.denyButtonColor)!=null?Oe:"transparent",V.style.color=(Ae=r==null?void 0:r.denyButtonTextColor)!=null?Ae:"var(--persona-feedback-error, #dc2626)",V.style.border=`1px solid ${r!=null&&r.denyButtonTextColor?r.denyButtonTextColor:"var(--persona-palette-colors-error-200, #fca5a5)"}`,V.setAttribute("data-approval-action","deny");let ee=Ce("shield-x",14,(be=r==null?void 0:r.denyButtonTextColor)!=null?be:"var(--persona-feedback-error, #dc2626)",2);ee&&(ee.style.marginRight="4px",V.appendChild(ee));let Ue=document.createTextNode((ne=r==null?void 0:r.denyLabel)!=null?ne:"Deny");V.appendChild(Ue),Q.append(ae,V),f.appendChild(Q)}return a.append(i,f),s.appendChild(a),s};var am=n=>{let e=[],t=null;return{buttons:e,render:(o,s,a,i,d,c)=>{n.innerHTML="",e.length=0;let m=(c==null?void 0:c.agentPushed)===!0;if(m||(t=null),!o||!o.length||!m&&(i!=null?i:s?s.getMessages():[]).some(P=>P.role==="user"))return;let f=document.createDocumentFragment(),g=s?s.isStreaming():!1,u=v=>{switch(v){case"serif":return'Georgia, "Times New Roman", Times, serif';case"mono":return'"Courier New", Courier, "Lucida Console", Monaco, monospace';default:return'-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif'}};if(o.forEach(v=>{let x=b("button","persona-rounded-button persona-bg-persona-surface persona-px-3 persona-py-1.5 persona-text-xs persona-font-medium persona-text-persona-primary hover:persona-opacity-80 persona-cursor-pointer persona-border persona-border-persona-border");x.type="button",x.textContent=v,x.disabled=g,d!=null&&d.fontFamily&&(x.style.fontFamily=u(d.fontFamily)),d!=null&&d.fontWeight&&(x.style.fontWeight=d.fontWeight),d!=null&&d.paddingX&&(x.style.paddingLeft=d.paddingX,x.style.paddingRight=d.paddingX),d!=null&&d.paddingY&&(x.style.paddingTop=d.paddingY,x.style.paddingBottom=d.paddingY),x.addEventListener("click",()=>{!s||s.isStreaming()||(a.value="",m&&n.dispatchEvent(new CustomEvent("persona:suggestReplies:selected",{detail:{suggestion:v},bubbles:!0,composed:!0})),s.sendMessage(v))}),f.appendChild(x),e.push(x)}),n.appendChild(f),m){let v=JSON.stringify(o);v!==t&&(t=v,n.dispatchEvent(new CustomEvent("persona:suggestReplies:shown",{detail:{suggestions:[...o]},bubbles:!0,composed:!0})))}}}};var Qs=class{constructor(e=2e3,t=null){this.head=0;this.count=0;this.totalCaptured=0;this.eventTypesSet=new Set;this.maxSize=e,this.buffer=new Array(e),this.store=t}push(e){var t;this.buffer[this.head]=e,this.head=(this.head+1)%this.maxSize,this.count<this.maxSize&&this.count++,this.totalCaptured++,this.eventTypesSet.add(e.type),(t=this.store)==null||t.put(e)}getAll(){return this.count===0?[]:this.count<this.maxSize?this.buffer.slice(0,this.count):[...this.buffer.slice(this.head,this.maxSize),...this.buffer.slice(0,this.head)]}async restore(){if(!this.store)return 0;let e=await this.store.getAll();if(e.length===0)return 0;let t=e.length>this.maxSize?e.slice(e.length-this.maxSize):e;for(let r of t)this.buffer[this.head]=r,this.head=(this.head+1)%this.maxSize,this.count<this.maxSize&&this.count++,this.eventTypesSet.add(r.type);return this.totalCaptured=e.length,t.length}getAllFromStore(){return this.store?this.store.getAll():Promise.resolve(this.getAll())}getRecent(e){let t=this.getAll();return e>=t.length?t:t.slice(t.length-e)}getSize(){return this.count}getTotalCaptured(){return this.totalCaptured}getEvictedCount(){return this.totalCaptured-this.count}clear(){var e;this.buffer=new Array(this.maxSize),this.head=0,this.count=0,this.totalCaptured=0,this.eventTypesSet.clear(),(e=this.store)==null||e.clear()}destroy(){var e;this.buffer=[],this.head=0,this.count=0,this.totalCaptured=0,this.eventTypesSet.clear(),(e=this.store)==null||e.destroy()}getEventTypes(){return Array.from(this.eventTypesSet)}};var Xs=class{constructor(e="persona-event-stream",t="events"){this.db=null;this.pendingWrites=[];this.flushScheduled=!1;this.isDestroyed=!1;this.dbName=e,this.storeName=t}open(){return new Promise((e,t)=>{try{let r=indexedDB.open(this.dbName,1);r.onupgradeneeded=()=>{let o=r.result;o.objectStoreNames.contains(this.storeName)||o.createObjectStore(this.storeName,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})},r.onsuccess=()=>{this.db=r.result,e()},r.onerror=()=>{t(r.error)}}catch(r){t(r)}})}put(e){!this.db||this.isDestroyed||(this.pendingWrites.push(e),this.flushScheduled||(this.flushScheduled=!0,queueMicrotask(()=>this.flushWrites())))}putBatch(e){if(!(!this.db||this.isDestroyed||e.length===0))try{let r=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName);for(let o of e)r.put(o)}catch{}}getAll(){return new Promise((e,t)=>{if(!this.db){e([]);return}try{let a=this.db.transaction(this.storeName,"readonly").objectStore(this.storeName).index("timestamp").getAll();a.onsuccess=()=>{e(a.result)},a.onerror=()=>{t(a.error)}}catch(r){t(r)}})}getCount(){return new Promise((e,t)=>{if(!this.db){e(0);return}try{let s=this.db.transaction(this.storeName,"readonly").objectStore(this.storeName).count();s.onsuccess=()=>{e(s.result)},s.onerror=()=>{t(s.error)}}catch(r){t(r)}})}clear(){return new Promise((e,t)=>{if(!this.db){e();return}this.pendingWrites=[];try{let s=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).clear();s.onsuccess=()=>{e()},s.onerror=()=>{t(s.error)}}catch(r){t(r)}})}close(){this.db&&(this.db.close(),this.db=null)}destroy(){return this.isDestroyed=!0,this.pendingWrites=[],this.close(),new Promise((e,t)=>{try{let r=indexedDB.deleteDatabase(this.dbName);r.onsuccess=()=>{e()},r.onerror=()=>{t(r.error)}}catch(r){t(r)}})}flushWrites(){if(this.flushScheduled=!1,!this.db||this.isDestroyed||this.pendingWrites.length===0)return;let e=this.pendingWrites;this.pendingWrites=[];try{let r=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName);for(let o of e)r.put(o)}catch{}}};var kb=new Set(["flow_start","flow_run_start","agent_start","dispatch_start","run_start"]),Lb=new Set(["step_start","execution_start"]),Pb=new Set(["step_delta","step_chunk","chunk","agent_turn_delta"]),Ib=new Set(["step_complete","agent_turn_complete"]),Wb=new Set(["flow_complete","agent_complete"]),im=new Set(["step_error","flow_error","agent_error","dispatch_error","error"]),cm=n=>typeof n=="object"&&n!==null&&!Array.isArray(n),Qn=n=>typeof n=="number"&&Number.isFinite(n)?n:void 0,Ro=(n,e)=>{let t=n[e];return cm(t)?t:void 0};function ji(n){return n>0?Math.max(1,Math.ceil(n/4)):0}function Xa(n,e){if(!(n<=0||e===void 0||e<250))return n/(e/1e3)}function Rb(n,e){return typeof e.type=="string"?e.type:n}function Hb(n){return typeof n.text=="string"?n.text:typeof n.delta=="string"?n.delta:typeof n.content=="string"?n.content:typeof n.chunk=="string"?n.chunk:""}function Bb(n,e){return n==="step_delta"||n==="step_chunk"?e.stepType!=="tool"&&e.executionType!=="context":n!=="agent_turn_delta"?!0:(typeof e.contentType=="string"?e.contentType:typeof e.content_type=="string"?e.content_type:void 0)==="text"}function lm(n){var r,o,s,a,i;let e=Ro(n,"result"),t=[Ro(n,"tokens"),Ro(n,"totalTokens"),e?Ro(e,"tokens"):void 0,Ro(n,"usage"),e?Ro(e,"usage"):void 0];for(let d of t){if(!d)continue;let c=(o=(r=Qn(d.output))!=null?r:Qn(d.outputTokens))!=null?o:Qn(d.completionTokens);if(c!==void 0)return c}return(i=(s=Qn(n.outputTokens))!=null?s:Qn(n.completionTokens))!=null?i:e?(a=Qn(e.outputTokens))!=null?a:Qn(e.completionTokens):void 0}function Db(n){var t,r,o,s,a;let e=Ro(n,"result");return(a=(o=(r=(t=Qn(n.executionTime))!=null?t:Qn(n.executionTimeMs))!=null?r:Qn(n.execution_time))!=null?o:Qn(n.duration))!=null?a:e?(s=Qn(e.executionTime))!=null?s:Qn(e.executionTimeMs):void 0}function Nb(){return typeof performance!="undefined"&&typeof performance.now=="function"?performance.now():Date.now()}var Js=class{constructor(e=Nb){this.metric={status:"idle"};this.run=null;this.now=e}getMetric(){let e=this.run;if(e&&this.metric.status==="running"&&e.firstDeltaAt!==void 0&&this.metric.outputTokens!==void 0){let t=this.now()-e.firstDeltaAt;return{...this.metric,durationMs:t,tokensPerSecond:Xa(this.metric.outputTokens,t)}}return this.metric}reset(){this.run=null,this.metric={status:"idle"}}startRun(e){this.run={startedAt:e,visibleCharCount:0,exactOutputTokens:0},this.metric={status:"running"}}processEvent(e,t){var s;if(!cm(t)){im.has(e)&&this.run&&(this.run=null,this.metric={status:"error"});return}let r=Rb(e,t),o=this.now();if(kb.has(r)){this.startRun(o);return}if(Lb.has(r)){this.run||this.startRun(o);return}if(Pb.has(r)){if(!Bb(r,t))return;let a=Hb(t);if(!a)return;this.run||this.startRun(o);let i=this.run;(s=i.firstDeltaAt)!=null||(i.firstDeltaAt=o),i.visibleCharCount+=a.length;let d=i.exactOutputTokens+ji(i.visibleCharCount),c=o-i.firstDeltaAt;this.metric={status:"running",tokensPerSecond:Xa(d,c),outputTokens:d,durationMs:c,source:i.exactOutputTokens>0?"usage":"estimate"};return}if(Ib.has(r)){if(!this.run)return;let a=this.run,i=lm(t);i!==void 0&&(a.exactOutputTokens+=i,a.visibleCharCount=0);let d=a.exactOutputTokens>0,c=a.exactOutputTokens+ji(a.visibleCharCount),m=this.resolveDuration(a,t,o);this.metric={status:"running",tokensPerSecond:Xa(c,m),outputTokens:c,durationMs:m,source:d?"usage":"estimate"};return}if(Wb.has(r)){if(!this.run)return;let a=this.run,i=lm(t),d=i!=null?i:a.exactOutputTokens+ji(a.visibleCharCount),c=i!==void 0||a.exactOutputTokens>0?"usage":"estimate",m=this.resolveDuration(a,t,o);this.metric={status:"complete",tokensPerSecond:Xa(d,m),outputTokens:d,durationMs:m,source:c},this.run=null;return}if(im.has(r)){if(!this.run)return;this.run=null,this.metric={status:"error"}}}resolveDuration(e,t,r){let o=e.firstDeltaAt!==void 0?r-e.firstDeltaAt:void 0;if(o!==void 0&&o>=250)return o;let s=Db(t);return s!=null?s:r-e.startedAt}};function cs(n,e){e&&e.split(/\s+/).forEach(t=>t&&n.classList.add(t))}var Fb={flow_:{bg:"var(--persona-palette-colors-success-100, #dcfce7)",text:"var(--persona-palette-colors-success-700, #166534)"},step_:{bg:"var(--persona-palette-colors-primary-100, #f5f5f5)",text:"var(--persona-palette-colors-primary-700, #0a0a0a)"},reason_:{bg:"var(--persona-palette-colors-warning-100, #ffedd5)",text:"var(--persona-palette-colors-warning-700, #9a3412)"},tool_:{bg:"var(--persona-palette-colors-purple-100, #f3e8ff)",text:"var(--persona-palette-colors-purple-700, #6b21a8)"},agent_:{bg:"var(--persona-palette-colors-teal-100, #ccfbf1)",text:"var(--persona-palette-colors-teal-700, #115e59)"},error:{bg:"var(--persona-palette-colors-error-100, #fecaca)",text:"var(--persona-palette-colors-error-700, #991b1b)"}},Ob={bg:"var(--persona-palette-colors-gray-100, #f3f4f6)",text:"var(--persona-palette-colors-gray-600, #4b5563)"},_b=["flowName","stepName","reasoningText","text","name","tool","toolName"],$b=100;function Ub(n,e){let t={...Fb,...e};if(t[n])return t[n];for(let r of Object.keys(t))if(r.endsWith("_")&&n.startsWith(r))return t[r];return Ob}function qb(n,e){return`+${((n-e)/1e3).toFixed(3)}s`}function zb(n){let e=new Date(n),t=String(e.getHours()).padStart(2,"0"),r=String(e.getMinutes()).padStart(2,"0"),o=String(e.getSeconds()).padStart(2,"0"),s=String(e.getMilliseconds()).padStart(3,"0");return`${t}:${r}:${o}.${s}`}function jb(n,e){try{let t=JSON.parse(n);if(typeof t!="object"||t===null)return null;for(let r of e){let o=r.split("."),s=t;for(let a of o)if(s&&typeof s=="object"&&s!==null)s=s[a];else{s=void 0;break}if(typeof s=="string"&&s.trim())return s.trim()}}catch{}return null}function Vb(n){var e;return(e=navigator.clipboard)!=null&&e.writeText?navigator.clipboard.writeText(n):new Promise(t=>{let r=document.createElement("textarea");r.value=n,r.style.position="fixed",r.style.opacity="0",document.body.appendChild(r),r.select(),document.execCommand("copy"),document.body.removeChild(r),t()})}function Kb(n){let e;try{e=JSON.parse(n.payload)}catch{e=n.payload}return JSON.stringify({type:n.type,timestamp:new Date(n.timestamp).toISOString(),payload:e},null,2)}function Gb(n){return n.tokensPerSecond===void 0||!Number.isFinite(n.tokensPerSecond)?"-- tok/s":`${n.tokensPerSecond.toFixed(1)} tok/s`}function Qb(n){let e=[];return n.outputTokens!==void 0&&e.push(`${n.outputTokens.toLocaleString()} tok`),n.durationMs!==void 0&&e.push(`${(n.durationMs/1e3).toFixed(2)}s`),n.source&&e.push(n.source),e.join(" \xB7 ")}function Xb(n,e,t){let r,o;try{o=JSON.parse(n.payload),r=JSON.stringify(o,null,2)}catch{o=n.payload,r=n.payload}let s=e.find(i=>i.renderEventStreamPayload);if(s!=null&&s.renderEventStreamPayload&&t){let i=s.renderEventStreamPayload({event:n,config:t,defaultRenderer:()=>a(),parsedPayload:o});if(i)return i}return a();function a(){let i=b("div","persona-bg-persona-container persona-border-t persona-border-persona-divider persona-px-3 persona-py-2 persona-ml-4 persona-mr-3 persona-mb-1 persona-rounded-b persona-overflow-auto persona-max-h-[300px]"),d=b("pre","persona-m-0 persona-whitespace-pre-wrap persona-break-all persona-text-[11px] persona-text-persona-secondary persona-font-mono");return d.textContent=r,i.appendChild(d),i}}function Vi(n,e,t,r,o,s,a,i){var g;let d=o.has(n.id),c=b("div","persona-border-b persona-border-persona-divider persona-text-xs");cs(c,(g=r.classNames)==null?void 0:g.eventRow);let m=a.find(u=>u.renderEventStreamRow);if(m!=null&&m.renderEventStreamRow&&i){let u=m.renderEventStreamRow({event:n,index:e,config:i,defaultRenderer:()=>f(),isExpanded:d,onToggleExpand:()=>s(n.id)});if(u)return c.appendChild(u),c}return c.appendChild(f()),c;function f(){var j,te;let u=b("div",""),v=b("div","persona-flex persona-items-center persona-gap-2 persona-px-3 persona-py-3 hover:persona-bg-persona-container persona-cursor-pointer persona-group");v.setAttribute("data-event-id",n.id);let x=b("span","persona-flex-shrink-0 persona-text-persona-muted persona-w-4 persona-text-center persona-flex persona-items-center persona-justify-center"),P=Ce(d?"chevron-down":"chevron-right","14px","currentColor",2);P&&x.appendChild(P);let T=b("span","persona-text-[11px] persona-text-persona-muted persona-whitespace-nowrap persona-flex-shrink-0 persona-font-mono persona-w-[70px]"),M=(j=r.timestampFormat)!=null?j:"relative";T.textContent=M==="relative"?qb(n.timestamp,t):zb(n.timestamp);let N=null;r.showSequenceNumbers!==!1&&(N=b("span","persona-text-[11px] persona-text-persona-muted persona-font-mono persona-flex-shrink-0 persona-w-[28px] persona-text-right"),N.textContent=String(e+1));let k=Ub(n.type,r.badgeColors),W=b("span","persona-inline-flex persona-items-center persona-px-2 persona-py-0.5 persona-rounded persona-text-[11px] persona-font-mono persona-font-medium persona-whitespace-nowrap persona-flex-shrink-0 persona-border");W.style.backgroundColor=k.bg,W.style.color=k.text,W.style.borderColor=k.text+"50",W.textContent=n.type;let C=(te=r.descriptionFields)!=null?te:_b,I=jb(n.payload,C),D=null;I&&(D=b("span","persona-text-[11px] persona-text-persona-secondary persona-truncate persona-min-w-0"),D.textContent=I);let B=b("div","persona-flex-1 persona-min-w-0"),E=b("button","persona-text-persona-muted hover:persona-text-persona-primary persona-cursor-pointer persona-flex-shrink-0 persona-border-none persona-bg-transparent persona-p-0"),z=Ce("clipboard","12px","currentColor",1.5);return z&&E.appendChild(z),E.addEventListener("click",async We=>{We.stopPropagation(),await Vb(Kb(n)),E.innerHTML="";let $e=Ce("check","12px","currentColor",1.5);$e&&E.appendChild($e),setTimeout(()=>{E.innerHTML="";let ve=Ce("clipboard","12px","currentColor",1.5);ve&&E.appendChild(ve)},1500)}),v.appendChild(x),v.appendChild(T),N&&v.appendChild(N),v.appendChild(W),D&&v.appendChild(D),v.appendChild(B),v.appendChild(E),u.appendChild(v),d&&u.appendChild(Xb(n,a,i)),u}}function dm(n){var v,x,P,T,M;let{buffer:e,getFullHistory:t,onClose:r,config:o,plugins:s=[],getThroughput:a}=n,i=(v=o==null?void 0:o.features)==null?void 0:v.scrollToBottom,d=(i==null?void 0:i.enabled)!==!1,c=(x=i==null?void 0:i.iconName)!=null?x:"arrow-down",m=(P=i==null?void 0:i.label)!=null?P:"",f=(M=(T=o==null?void 0:o.features)==null?void 0:T.eventStream)!=null?M:{},g=s.find(N=>N.renderEventStreamView);if(g!=null&&g.renderEventStreamView&&o){let N=g.renderEventStreamView({config:o,events:e.getAll(),defaultRenderer:()=>u().element,onClose:r});if(N)return{element:N,update:()=>{},destroy:()=>{}}}return u();function u(){let N=f.classNames,k=b("div","persona-event-stream-view persona-flex persona-flex-col persona-flex-1 persona-min-h-0");cs(k,N==null?void 0:N.panel);let W=[],C="",I="",D=null,B=[],E={},z=0,j=Wa(),te=0,We=0,$e=!1,ve=null,Pe=!1,Oe=0,Ae=new Set,be=new Map,ne="",Q="",ae=null,fe,re,V,ee,Ue,J=null,ie=null,Le=null;function at(){let K=b("div","persona-relative persona-flex persona-flex-col persona-flex-shrink-0"),ce=b("div","persona-flex persona-items-center persona-gap-2 persona-px-4 persona-py-3 persona-pb-0 persona-border-persona-divider persona-bg-persona-surface persona-overflow-hidden");cs(ce,N==null?void 0:N.headerBar);let Ee=b("span","persona-text-sm persona-font-medium persona-text-persona-primary persona-whitespace-nowrap");if(Ee.textContent="Events",fe=b("span","persona-text-[11px] persona-font-mono persona-bg-persona-container persona-text-persona-muted persona-px-2 persona-py-0.5 persona-rounded persona-border persona-border-persona-border"),fe.textContent="0",a){ie=b("div","persona-relative persona-flex persona-items-center persona-gap-1.5 persona-whitespace-nowrap persona-ml-1"),ie.style.cursor="help";let Xn=b("span","persona-text-sm persona-font-medium persona-text-persona-primary persona-whitespace-nowrap");Xn.textContent="Throughput",J=b("span","persona-text-[11px] persona-font-mono persona-bg-persona-container persona-text-persona-muted persona-px-2 persona-py-0.5 persona-rounded persona-border persona-border-persona-border persona-tabular-nums"),J.textContent="-- tok/s",Le=b("div","persona-absolute persona-z-50 persona-whitespace-nowrap persona-rounded persona-border persona-border-persona-border persona-bg-persona-container persona-text-persona-primary persona-text-[11px] persona-font-mono persona-px-2 persona-py-1 persona-shadow"),Le.style.display="none",Le.style.pointerEvents="none";let Cn=ie,Zt=Le,Pn=()=>{if(!Zt.textContent)return;let vt=Cn.getBoundingClientRect(),Dn=K.getBoundingClientRect();Zt.style.left=`${vt.left-Dn.left}px`,Zt.style.top=`${vt.bottom-Dn.top+4}px`,Zt.style.display="block"},hr=()=>{Zt.style.display="none"};ie.addEventListener("mouseenter",Pn),ie.addEventListener("mouseleave",hr),ie.appendChild(Xn),ie.appendChild(J)}let bt=b("div","persona-flex-1");re=b("select","persona-text-xs persona-bg-persona-surface persona-border persona-border-persona-border persona-rounded persona-px-2.5 persona-py-1 persona-text-persona-primary persona-cursor-pointer");let Jt=b("option","");Jt.value="",Jt.textContent="All events",re.appendChild(Jt),V=b("button","persona-inline-flex persona-items-center persona-gap-1.5 persona-rounded persona-text-xs persona-text-persona-muted hover:persona-bg-persona-container hover:persona-text-persona-primary persona-cursor-pointer persona-border persona-border-persona-border persona-bg-persona-surface persona-flex-shrink-0 persona-px-2.5 persona-py-1"),V.type="button",V.title="Copy All";let dn=Ce("clipboard-copy","12px","currentColor",1.5);dn&&V.appendChild(dn);let Rt=b("span","persona-text-xs");Rt.textContent="Copy All",V.appendChild(Rt),ce.appendChild(Ee),ce.appendChild(fe),ie&&ce.appendChild(ie),ce.appendChild(bt),ce.appendChild(re),ce.appendChild(V);let Ze=b("div","persona-relative persona-px-4 persona-py-2.5 persona-border-b persona-border-persona-divider persona-bg-persona-surface");cs(Ze,N==null?void 0:N.searchBar);let Wt=Ce("search","14px","var(--persona-muted, #9ca3af)",1.5),lt=b("span","persona-absolute persona-left-6 persona-top-1/2 persona--translate-y-1/2 persona-pointer-events-none persona-flex persona-items-center");Wt&<.appendChild(Wt),ee=b("input","persona-text-sm persona-bg-persona-surface persona-border persona-border-persona-border persona-rounded-md persona-pl-8 persona-pr-3 persona-py-1 persona-w-full persona-text-persona-primary"),cs(ee,N==null?void 0:N.searchInput),ee.type="text",ee.placeholder="Search event payloads...",Ue=b("button","persona-absolute persona-right-5 persona-top-1/2 persona--translate-y-1/2 persona-text-persona-muted hover:persona-text-persona-primary persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-0 persona-leading-none"),Ue.type="button",Ue.style.display="none";let Vt=Ce("x","12px","currentColor",2);return Vt&&Ue.appendChild(Vt),Ze.appendChild(lt),Ze.appendChild(ee),Ze.appendChild(Ue),K.appendChild(ce),K.appendChild(Ze),Le&&K.appendChild(Le),K}let it,nt=s.find(K=>K.renderEventStreamToolbar);if(nt!=null&&nt.renderEventStreamToolbar&&o){let K=nt.renderEventStreamToolbar({config:o,defaultRenderer:()=>at(),eventCount:e.getSize(),filteredCount:0,onFilterChange:ce=>{C=ce,Pt(),fn()},onSearchChange:ce=>{I=ce,Pt(),fn()}});it=K!=null?K:at()}else it=at();let Me=b("div","persona-text-xs persona-text-persona-muted persona-text-center persona-py-0.5 persona-px-4 persona-bg-persona-container persona-border-b persona-border-persona-divider persona-italic persona-flex-shrink-0");Me.style.display="none";function de(){if(!a||!J||!ie)return;let K=a();J.textContent=Gb(K);let ce=Qb(K);Le&&(Le.textContent=ce,ce||(Le.style.display="none")),ce?ie.setAttribute("aria-label",ce):ie.removeAttribute("aria-label")}let Qe=b("div","persona-flex-1 persona-min-h-0 persona-relative"),X=b("div","persona-event-stream-list persona-overflow-y-auto persona-min-h-0");X.style.height="100%";let le=b("div","persona-scroll-to-bottom-indicator persona-absolute persona-bottom-3 persona-left-1/2 persona-transform persona--translate-x-1/2 persona-cursor-pointer persona-z-10 persona-text-xs");cs(le,N==null?void 0:N.scrollIndicator),le.style.display="none",le.setAttribute("data-persona-scroll-to-bottom-has-label",m?"true":"false");let xe=Ce(c,"14px","currentColor",2);xe&&le.appendChild(xe);let ze=b("span","");ze.textContent=m,le.appendChild(ze);let Lt=b("div","persona-flex persona-items-center persona-justify-center persona-h-full persona-text-sm persona-text-persona-muted");Lt.style.display="none",Qe.appendChild(X),Qe.appendChild(Lt),Qe.appendChild(le),k.setAttribute("tabindex","0"),k.appendChild(it),k.appendChild(Me),k.appendChild(Qe);function Se(){let K=e.getAll(),ce={};for(let Rt of K)ce[Rt.type]=(ce[Rt.type]||0)+1;let Ee=Object.keys(ce).sort(),bt=Ee.length!==B.length||!Ee.every((Rt,Ze)=>Rt===B[Ze]),Jt=!bt&&Ee.some(Rt=>ce[Rt]!==E[Rt]),Yt=K.length!==Object.values(E).reduce((Rt,Ze)=>Rt+Ze,0);if(!bt&&!Jt&&!Yt||(B=Ee,E=ce,!re))return;let dn=re.value;if(re.options[0].textContent="All events",bt){for(;re.options.length>1;)re.remove(1);for(let Rt of Ee){let Ze=b("option","");Ze.value=Rt,Ze.textContent=`${Rt} (${ce[Rt]||0})`,re.appendChild(Ze)}dn&&Ee.includes(dn)?re.value=dn:dn&&(re.value="",C="")}else for(let Rt=1;Rt<re.options.length;Rt++){let Ze=re.options[Rt];Ze.textContent=`${Ze.value} (${ce[Ze.value]||0})`}}function ue(){let K=e.getAll();if(C&&(K=K.filter(ce=>ce.type===C)),I){let ce=I.toLowerCase();K=K.filter(Ee=>Ee.type.toLowerCase().includes(ce)||Ee.payload.toLowerCase().includes(ce))}return K}function gn(){return C!==""||I!==""}function Pt(){z=0,te=0,j.resume(),le.style.display="none"}function nn(K){Ae.has(K)?Ae.delete(K):Ae.add(K),ae=K;let ce=X.scrollTop,Ee=j.isFollowing();Pe=!0,j.pause(),fn(),X.scrollTop=ce,Ee&&j.resume(),Pe=!1}function fr(){return Io(X,50)}function fn(){We=Date.now(),$e=!1,de(),Se();let K=e.getEvictedCount();K>0?(Me.textContent=`${K.toLocaleString()} older events truncated`,Me.style.display=""):Me.style.display="none",W=ue();let ce=W.length,Ee=e.getSize()>0;fe&&(fe.textContent=String(e.getSize())),ce===0&&Ee&&gn()?(Lt.textContent=I?`No events matching '${I}'`:"No events matching filter",Lt.style.display="",X.style.display="none"):(Lt.style.display="none",X.style.display=""),V&&(V.title=gn()?`Copy Filtered (${ce})`:"Copy All"),d&&!j.isFollowing()&&ce>z&&(te+=ce-z,ze.textContent=m?`${m}${te>0?` (${te})`:""}`:"",le.style.display=""),z=ce;let bt=e.getAll(),Jt=bt.length>0?bt[0].timestamp:0,Yt=new Set(W.map(Ze=>Ze.id));for(let Ze of Ae)Yt.has(Ze)||Ae.delete(Ze);let dn=C!==ne||I!==Q,Rt=be.size===0&&W.length>0;if(dn||Rt||W.length===0){X.innerHTML="",be.clear();let Ze=document.createDocumentFragment();for(let Wt=0;Wt<W.length;Wt++){let lt=Vi(W[Wt],Wt,Jt,f,Ae,nn,s,o);be.set(W[Wt].id,lt),Ze.appendChild(lt)}X.appendChild(Ze),ne=C,Q=I,ae=null}else{if(ae!==null){let Wt=be.get(ae);if(Wt&&Wt.parentNode===X){let lt=W.findIndex(Vt=>Vt.id===ae);if(lt>=0){let Vt=Vi(W[lt],lt,Jt,f,Ae,nn,s,o);X.insertBefore(Vt,Wt),Wt.remove(),be.set(ae,Vt)}}ae=null}let Ze=new Set(W.map(Wt=>Wt.id));for(let[Wt,lt]of be)Ze.has(Wt)||(lt.remove(),be.delete(Wt));for(let Wt=0;Wt<W.length;Wt++){let lt=W[Wt];if(!be.has(lt.id)){let Vt=Vi(lt,Wt,Jt,f,Ae,nn,s,o);be.set(lt.id,Vt),X.appendChild(Vt)}}}j.isFollowing()&&(X.scrollTop=X.scrollHeight)}function je(){if(Date.now()-We>=$b){ve!==null&&(cancelAnimationFrame(ve),ve=null),fn();return}$e||($e=!0,ve=requestAnimationFrame(()=>{ve=null,fn()}))}let S=(K,ce)=>{if(!V)return;V.innerHTML="";let Ee=Ce(K,"12px","currentColor",1.5);Ee&&V.appendChild(Ee);let bt=b("span","persona-text-xs");bt.textContent="Copy All",V.appendChild(bt),setTimeout(()=>{V.innerHTML="";let Jt=Ce("clipboard-copy","12px","currentColor",1.5);Jt&&V.appendChild(Jt);let Yt=b("span","persona-text-xs");Yt.textContent="Copy All",V.appendChild(Yt),V.disabled=!1},ce)},pe=async()=>{if(V){V.disabled=!0;try{let K;gn()?K=W:t?(K=await t(),K.length===0&&(K=e.getAll())):K=e.getAll();let ce=K.map(Ee=>{try{return JSON.parse(Ee.payload)}catch{return Ee.payload}});await navigator.clipboard.writeText(JSON.stringify(ce,null,2)),S("check",1500)}catch{S("x",1500)}}},ke=()=>{re&&(C=re.value,Pt(),fn())},Te=()=>{!ee||!Ue||(Ue.style.display=ee.value?"":"none",D&&clearTimeout(D),D=setTimeout(()=>{I=ee.value,Pt(),fn()},150))},Re=()=>{!ee||!Ue||(ee.value="",I="",Ue.style.display="none",D&&clearTimeout(D),Pt(),fn())},Ye=()=>{if(Pe)return;let K=X.scrollTop,{action:ce,nextLastScrollTop:Ee}=Ra({following:j.isFollowing(),currentScrollTop:K,lastScrollTop:Oe,nearBottom:fr(),userScrollThreshold:1,resumeRequiresDownwardScroll:!0});Oe=Ee,ce==="resume"?(j.resume(),te=0,le.style.display="none"):ce==="pause"&&(j.pause(),d&&(ze.textContent=m,le.style.display=""))},Ke=K=>{let ce=Ha({following:j.isFollowing(),deltaY:K.deltaY,nearBottom:fr(),resumeWhenNearBottom:!0});ce==="pause"?(j.pause(),d&&(ze.textContent=m,le.style.display="")):ce==="resume"&&(j.resume(),te=0,le.style.display="none")},pt=()=>{d&&(X.scrollTop=X.scrollHeight,j.resume(),te=0,le.style.display="none")},It=K=>{let ce=K.target;if(!ce||ce.closest("button"))return;let Ee=ce.closest("[data-event-id]");if(!Ee)return;let bt=Ee.getAttribute("data-event-id");bt&&nn(bt)},U=K=>{if((K.metaKey||K.ctrlKey)&&K.key==="f"){K.preventDefault(),ee==null||ee.focus(),ee==null||ee.select();return}K.key==="Escape"&&(ee&&document.activeElement===ee?(Re(),ee.blur(),k.focus()):r&&r())};V&&V.addEventListener("click",pe),re&&re.addEventListener("change",ke),ee&&ee.addEventListener("input",Te),Ue&&Ue.addEventListener("click",Re),X.addEventListener("scroll",Ye),X.addEventListener("wheel",Ke,{passive:!0}),X.addEventListener("click",It),le.addEventListener("click",pt),k.addEventListener("keydown",U);function rt(){D&&clearTimeout(D),ve!==null&&(cancelAnimationFrame(ve),ve=null),$e=!1,be.clear(),V&&V.removeEventListener("click",pe),re&&re.removeEventListener("change",ke),ee&&ee.removeEventListener("input",Te),Ue&&Ue.removeEventListener("click",Re),X.removeEventListener("scroll",Ye),X.removeEventListener("wheel",Ke),X.removeEventListener("click",It),le.removeEventListener("click",pt),k.removeEventListener("keydown",U)}return{element:k,update:je,destroy:rt}}}function pm(n,e){let t=typeof n.title=="string"&&n.title?n.title:"Untitled artifact",r=typeof n.artifactId=="string"?n.artifactId:"",o=n.status==="streaming"?"streaming":"complete",a=(typeof n.artifactType=="string"?n.artifactType:"markdown")==="component"?"Component":"Document",i=document.createElement("div");i.className="persona-flex persona-w-full persona-max-w-full persona-items-center persona-gap-3 persona-rounded-xl persona-px-4 persona-py-3",i.style.border="1px solid var(--persona-border, #e5e7eb)",i.style.backgroundColor="var(--persona-surface, #ffffff)",i.style.cursor="pointer",i.tabIndex=0,i.setAttribute("role","button"),i.setAttribute("aria-label",`Open ${t} in artifact panel`),r&&i.setAttribute("data-open-artifact",r);let d=document.createElement("div");d.className="persona-flex persona-h-10 persona-w-10 persona-flex-shrink-0 persona-items-center persona-justify-center persona-rounded-lg",d.style.border="1px solid var(--persona-border, #e5e7eb)",d.style.color="var(--persona-muted, #9ca3af)",d.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/><polyline points="14 2 14 8 20 8"/></svg>';let c=document.createElement("div");c.className="persona-min-w-0 persona-flex-1 persona-flex persona-flex-col persona-gap-0.5";let m=document.createElement("div");m.className="persona-truncate persona-text-sm persona-font-medium",m.style.color="var(--persona-text, #1f2937)",m.textContent=t;let f=document.createElement("div");if(f.className="persona-text-xs persona-flex persona-items-center persona-gap-1.5",f.style.color="var(--persona-muted, #9ca3af)",o==="streaming"){let g=document.createElement("span");g.className="persona-inline-block persona-w-1.5 persona-h-1.5 persona-rounded-full",g.style.backgroundColor="var(--persona-primary, #171717)",g.style.animation="persona-pulse 1.5s ease-in-out infinite",f.appendChild(g);let u=document.createElement("span");u.textContent=`Generating ${a.toLowerCase()}...`,f.appendChild(u)}else f.textContent=a;if(c.append(m,f),i.append(d,c),o==="complete"){let g=document.createElement("button");g.type="button",g.textContent="Download",g.title=`Download ${t}`,g.className="persona-flex-shrink-0 persona-rounded-md persona-px-3 persona-py-1.5 persona-text-xs persona-font-medium",g.style.border="1px solid var(--persona-border, #e5e7eb)",g.style.color="var(--persona-text, #1f2937)",g.style.backgroundColor="transparent",g.style.cursor="pointer",g.setAttribute("data-download-artifact",r),i.append(g)}return i}var um=(n,e)=>{var r,o,s;let t=(s=(o=(r=e==null?void 0:e.config)==null?void 0:r.features)==null?void 0:o.artifacts)==null?void 0:s.renderCard;if(t){let a=typeof n.title=="string"&&n.title?n.title:"Untitled artifact",i=typeof n.artifactId=="string"?n.artifactId:"",d=n.status==="streaming"?"streaming":"complete",c=typeof n.artifactType=="string"?n.artifactType:"markdown",m=t({artifact:{artifactId:i,title:a,artifactType:c,status:d},config:e.config,defaultRenderer:()=>pm(n,e)});if(m)return m}return pm(n,e)};var Ki=class{constructor(){this.components=new Map}register(e,t){this.components.has(e)&&console.warn(`[ComponentRegistry] Component "${e}" is already registered. Overwriting.`),this.components.set(e,t)}unregister(e){this.components.delete(e)}get(e){return this.components.get(e)}has(e){return this.components.has(e)}getAllNames(){return Array.from(this.components.keys())}clear(){this.components.clear()}registerAll(e){Object.entries(e).forEach(([t,r])=>{this.register(t,r)})}},Ho=new Ki;Ho.register("PersonaArtifactCard",um);function Jb(n){var o;let e=b("div","persona-rounded-lg persona-border persona-border-persona-border persona-p-3 persona-text-persona-primary"),t=b("div","persona-font-semibold persona-text-sm persona-mb-2");t.textContent=n.component?`Component: ${n.component}`:"Component";let r=b("pre","persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-overflow-x-auto");return r.textContent=JSON.stringify((o=n.props)!=null?o:{},null,2),e.appendChild(t),e.appendChild(r),e}function mm(n,e){var re,V,ee,Ue;let t=(V=(re=n.features)==null?void 0:re.artifacts)==null?void 0:V.layout,o=((ee=t==null?void 0:t.toolbarPreset)!=null?ee:"default")==="document",s=(Ue=t==null?void 0:t.panePadding)==null?void 0:Ue.trim(),a=n.markdown?da(n.markdown):null,i=pa(n.sanitize),d=J=>{let ie=a?a(J):oo(J);return i?i(ie):ie},c=typeof document!="undefined"?b("div","persona-artifact-backdrop persona-fixed persona-inset-0 persona-z-[55] persona-bg-black/30 persona-hidden md:persona-hidden"):null,m=()=>{c==null||c.classList.add("persona-hidden"),f.classList.remove("persona-artifact-drawer-open"),z==null||z.hide()};c&&c.addEventListener("click",()=>{var J;m(),(J=e.onDismiss)==null||J.call(e)});let f=b("aside","persona-artifact-pane persona-flex persona-flex-col persona-min-h-0 persona-min-w-0 persona-bg-persona-surface persona-text-persona-primary persona-border-l persona-border-persona-border");f.setAttribute("data-persona-theme-zone","artifact-pane"),o&&f.classList.add("persona-artifact-pane-document");let g=b("div","persona-artifact-toolbar persona-flex persona-items-center persona-justify-between persona-gap-2 persona-px-2 persona-py-2 persona-border-b persona-border-persona-border persona-shrink-0");g.setAttribute("data-persona-theme-zone","artifact-toolbar"),o&&g.classList.add("persona-artifact-toolbar-document");let u=b("span","persona-text-xs persona-font-medium persona-truncate");u.textContent="Artifacts";let v=b("button","persona-rounded-md persona-border persona-border-persona-border persona-px-2 persona-py-1 persona-text-xs persona-bg-persona-surface");v.type="button",v.textContent="Close",v.setAttribute("aria-label","Close artifacts panel"),v.addEventListener("click",()=>{var J;m(),(J=e.onDismiss)==null||J.call(e)});let x="rendered",P=b("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0 persona-artifact-toggle-group"),T=o?wn({icon:"eye",label:"Rendered view",className:"persona-artifact-doc-icon-btn persona-artifact-view-btn"}):wn({icon:"eye",label:"Rendered view"}),M=o?wn({icon:"code-2",label:"Source",className:"persona-artifact-doc-icon-btn persona-artifact-code-btn"}):wn({icon:"code-2",label:"Source"}),N=b("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0"),k=(t==null?void 0:t.documentToolbarShowCopyLabel)===!0,W=(t==null?void 0:t.documentToolbarShowCopyChevron)===!0,C=t==null?void 0:t.documentToolbarCopyMenuItems,I=!!(W&&C&&C.length>0),D=null,B,E=null,z=null;if(o&&(k||W)&&!I){if(B=k?Di({icon:"copy",label:"Copy",iconSize:14,className:"persona-artifact-doc-copy-btn"}):wn({icon:"copy",label:"Copy",className:"persona-artifact-doc-copy-btn"}),W){let J=Ce("chevron-down",14,"currentColor",2);J&&B.appendChild(J)}}else o&&I?(D=b("div","persona-relative persona-inline-flex persona-items-center persona-gap-0 persona-rounded-md"),B=k?Di({icon:"copy",label:"Copy",iconSize:14,className:"persona-artifact-doc-copy-btn"}):wn({icon:"copy",label:"Copy",className:"persona-artifact-doc-copy-btn"}),E=wn({icon:"chevron-down",label:"More copy options",size:14,className:"persona-artifact-doc-copy-menu-chevron persona-artifact-doc-icon-btn",aria:{"aria-haspopup":"true","aria-expanded":"false"}}),D.append(B,E)):o?B=wn({icon:"copy",label:"Copy",className:"persona-artifact-doc-icon-btn"}):B=wn({icon:"copy",label:"Copy"});let j=o?wn({icon:"refresh-cw",label:"Refresh",className:"persona-artifact-doc-icon-btn"}):wn({icon:"refresh-cw",label:"Refresh"}),te=o?wn({icon:"x",label:"Close",className:"persona-artifact-doc-icon-btn"}):wn({icon:"x",label:"Close"}),We=()=>{var it,nt,Me;let J=(it=be.find(de=>de.id===ne))!=null?it:be[be.length-1],ie=(nt=J==null?void 0:J.id)!=null?nt:null,Le=(J==null?void 0:J.artifactType)==="markdown"&&(Me=J.markdown)!=null?Me:"",at=J?JSON.stringify({component:J.component,props:J.props},null,2):"";return{markdown:Le,jsonPayload:at,id:ie}},$e=async()=>{var it;let{markdown:J,jsonPayload:ie}=We(),Le=(it=be.find(nt=>nt.id===ne))!=null?it:be[be.length-1],at=(Le==null?void 0:Le.artifactType)==="markdown"?J:Le?ie:"";try{await navigator.clipboard.writeText(at)}catch{}};if(B.addEventListener("click",async()=>{let J=t==null?void 0:t.onDocumentToolbarCopyMenuSelect;if(J&&I){let{markdown:ie,jsonPayload:Le,id:at}=We();try{await J({actionId:"primary",artifactId:at,markdown:ie,jsonPayload:Le})}catch{}return}await $e()}),E&&(C!=null&&C.length)){let J=()=>{var Le;return(Le=f.closest("[data-persona-root]"))!=null?Le:document.body},ie=()=>{z=as({items:C.map(Le=>({id:Le.id,label:Le.label})),onSelect:async Le=>{let{markdown:at,jsonPayload:it,id:nt}=We(),Me=t==null?void 0:t.onDocumentToolbarCopyMenuSelect;try{Me?await Me({actionId:Le,artifactId:nt,markdown:at,jsonPayload:it}):Le==="markdown"||Le==="md"?await navigator.clipboard.writeText(at):Le==="json"||Le==="source"?await navigator.clipboard.writeText(it):await navigator.clipboard.writeText(at||it)}catch{}},anchor:D!=null?D:E,position:"bottom-right",portal:J()})};f.isConnected?ie():requestAnimationFrame(ie),E.addEventListener("click",Le=>{Le.stopPropagation(),z==null||z.toggle()})}j.addEventListener("click",async()=>{var J;try{await((J=t==null?void 0:t.onDocumentToolbarRefresh)==null?void 0:J.call(t))}catch{}ae()}),te.addEventListener("click",()=>{var J;m(),(J=e.onDismiss)==null||J.call(e)});let ve=()=>{o&&(T.setAttribute("aria-pressed",x==="rendered"?"true":"false"),M.setAttribute("aria-pressed",x==="source"?"true":"false"))};T.addEventListener("click",()=>{x="rendered",ve(),ae()}),M.addEventListener("click",()=>{x="source",ve(),ae()});let Pe=b("span","persona-min-w-0 persona-flex-1 persona-text-xs persona-font-medium persona-text-persona-primary persona-truncate persona-text-center md:persona-text-left");o?(g.replaceChildren(),P.append(T,M),D?N.append(D,j,te):N.append(B,j,te),g.append(P,Pe,N),ve()):(g.appendChild(u),g.appendChild(v)),s&&(g.style.paddingLeft=s,g.style.paddingRight=s);let Oe=b("div","persona-artifact-list persona-shrink-0 persona-flex persona-gap-1 persona-overflow-x-auto persona-p-2 persona-border-b persona-border-persona-border"),Ae=b("div","persona-artifact-content persona-flex-1 persona-min-h-0 persona-overflow-y-auto persona-p-3");s&&(Oe.style.paddingLeft=s,Oe.style.paddingRight=s,Ae.style.padding=s),f.appendChild(g),f.appendChild(Oe),f.appendChild(Ae);let be=[],ne=null,Q=!1,ae=()=>{var at,it,nt,Me;let J=o&&be.length<=1;Oe.classList.toggle("persona-hidden",J),Oe.replaceChildren();for(let de of be){let Qe=b("button","persona-artifact-tab persona-shrink-0 persona-rounded-lg persona-px-2 persona-py-1 persona-text-xs persona-border persona-border-transparent persona-text-persona-primary");Qe.type="button",Qe.textContent=de.title||de.id.slice(0,8),de.id===ne&&Qe.classList.add("persona-bg-persona-container","persona-border-persona-border"),Qe.addEventListener("click",()=>e.onSelect(de.id)),Oe.appendChild(Qe)}Ae.replaceChildren();let ie=ne&&be.find(de=>de.id===ne)||be[be.length-1];if(!ie)return;if(o){let de=ie.artifactType==="markdown"?"MD":(at=ie.component)!=null?at:"Component",X=(ie.title||"Document").trim().replace(/\s*·\s*MD\s*$/i,"").trim()||"Document";Pe.textContent=`${X} \xB7 ${de}`}else u.textContent="Artifacts";if(ie.artifactType==="markdown"){if(o&&x==="source"){let Qe=b("pre","persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-break-words persona-text-persona-primary");Qe.textContent=(it=ie.markdown)!=null?it:"",Ae.appendChild(Qe);return}let de=b("div","persona-text-sm persona-leading-relaxed persona-markdown-bubble");de.innerHTML=d((nt=ie.markdown)!=null?nt:""),Ae.appendChild(de);return}let Le=ie.component?Ho.get(ie.component):void 0;if(Le){let Qe={message:{id:ie.id,role:"assistant",content:"",createdAt:new Date().toISOString()},config:n,updateProps:()=>{}};try{let X=Le((Me=ie.props)!=null?Me:{},Qe);if(X){Ae.appendChild(X);return}}catch{}}Ae.appendChild(Jb(ie))},fe=()=>{var ie;let J=be.length>0;if(f.classList.toggle("persona-hidden",!J),c){let Le=typeof f.closest=="function"?f.closest("[data-persona-root]"):null,it=((ie=Le==null?void 0:Le.classList.contains("persona-artifact-narrow-host"))!=null?ie:!1)||typeof window!="undefined"&&window.matchMedia("(max-width: 640px)").matches;J&&it&&Q?(c.classList.remove("persona-hidden"),f.classList.add("persona-artifact-drawer-open")):(c.classList.add("persona-hidden"),f.classList.remove("persona-artifact-drawer-open"))}};return{element:f,backdrop:c,update(J){var ie,Le,at;be=J.artifacts,ne=(at=(Le=J.selectedId)!=null?Le:(ie=J.artifacts[J.artifacts.length-1])==null?void 0:ie.id)!=null?at:null,be.length>0&&(Q=!0),ae(),fe()},setMobileOpen(J){Q=J,!J&&c?(c.classList.add("persona-hidden"),f.classList.remove("persona-artifact-drawer-open")):fe()}}}function sr(n){var e,t;return((t=(e=n==null?void 0:n.features)==null?void 0:e.artifacts)==null?void 0:t.enabled)===!0}function gm(n,e){var s,a,i,d;if(n.classList.remove("persona-artifact-border-full","persona-artifact-border-left"),n.style.removeProperty("--persona-artifact-pane-border"),n.style.removeProperty("--persona-artifact-pane-border-left"),!sr(e))return;let t=(a=(s=e.features)==null?void 0:s.artifacts)==null?void 0:a.layout,r=(i=t==null?void 0:t.paneBorder)==null?void 0:i.trim(),o=(d=t==null?void 0:t.paneBorderLeft)==null?void 0:d.trim();r?(n.classList.add("persona-artifact-border-full"),n.style.setProperty("--persona-artifact-pane-border",r)):o&&(n.classList.add("persona-artifact-border-left"),n.style.setProperty("--persona-artifact-pane-border-left",o))}function Yb(n){n.style.removeProperty("--persona-artifact-doc-toolbar-icon-color"),n.style.removeProperty("--persona-artifact-doc-toggle-active-bg"),n.style.removeProperty("--persona-artifact-doc-toggle-active-border")}function Ja(n,e){var d,c,m,f,g,u,v,x,P,T;if(!sr(e)){n.style.removeProperty("--persona-artifact-split-gap"),n.style.removeProperty("--persona-artifact-pane-width"),n.style.removeProperty("--persona-artifact-pane-max-width"),n.style.removeProperty("--persona-artifact-pane-min-width"),n.style.removeProperty("--persona-artifact-pane-bg"),n.style.removeProperty("--persona-artifact-pane-padding"),Yb(n),gm(n,e);return}let t=(c=(d=e.features)==null?void 0:d.artifacts)==null?void 0:c.layout;n.style.setProperty("--persona-artifact-split-gap",(m=t==null?void 0:t.splitGap)!=null?m:"0.5rem"),n.style.setProperty("--persona-artifact-pane-width",(f=t==null?void 0:t.paneWidth)!=null?f:"40%"),n.style.setProperty("--persona-artifact-pane-max-width",(g=t==null?void 0:t.paneMaxWidth)!=null?g:"28rem"),t!=null&&t.paneMinWidth?n.style.setProperty("--persona-artifact-pane-min-width",t.paneMinWidth):n.style.removeProperty("--persona-artifact-pane-min-width");let r=(u=t==null?void 0:t.paneBackground)==null?void 0:u.trim();r?n.style.setProperty("--persona-artifact-pane-bg",r):n.style.removeProperty("--persona-artifact-pane-bg");let o=(v=t==null?void 0:t.panePadding)==null?void 0:v.trim();o?n.style.setProperty("--persona-artifact-pane-padding",o):n.style.removeProperty("--persona-artifact-pane-padding");let s=(x=t==null?void 0:t.documentToolbarIconColor)==null?void 0:x.trim();s?n.style.setProperty("--persona-artifact-doc-toolbar-icon-color",s):n.style.removeProperty("--persona-artifact-doc-toolbar-icon-color");let a=(P=t==null?void 0:t.documentToolbarToggleActiveBackground)==null?void 0:P.trim();a?n.style.setProperty("--persona-artifact-doc-toggle-active-bg",a):n.style.removeProperty("--persona-artifact-doc-toggle-active-bg");let i=(T=t==null?void 0:t.documentToolbarToggleActiveBorderColor)==null?void 0:T.trim();i?n.style.setProperty("--persona-artifact-doc-toggle-active-border",i):n.style.removeProperty("--persona-artifact-doc-toggle-active-border"),gm(n,e)}var fm=["panel","seamless"];function Ya(n,e){var i,d,c,m,f,g;for(let u of fm)n.classList.remove(`persona-artifact-appearance-${u}`);if(n.classList.remove("persona-artifact-unified-split"),n.style.removeProperty("--persona-artifact-pane-radius"),n.style.removeProperty("--persona-artifact-pane-shadow"),n.style.removeProperty("--persona-artifact-unified-outer-radius"),!sr(e))return;let t=(d=(i=e.features)==null?void 0:i.artifacts)==null?void 0:d.layout,r=(c=t==null?void 0:t.paneAppearance)!=null?c:"panel",o=fm.includes(r)?r:"panel";n.classList.add(`persona-artifact-appearance-${o}`);let s=(m=t==null?void 0:t.paneBorderRadius)==null?void 0:m.trim();s&&n.style.setProperty("--persona-artifact-pane-radius",s);let a=(f=t==null?void 0:t.paneShadow)==null?void 0:f.trim();if(a&&n.style.setProperty("--persona-artifact-pane-shadow",a),(t==null?void 0:t.unifiedSplitChrome)===!0){n.classList.add("persona-artifact-unified-split");let u=((g=t.unifiedSplitOuterRadius)==null?void 0:g.trim())||s;u&&n.style.setProperty("--persona-artifact-unified-outer-radius",u)}}function hm(n,e){var t,r,o;return!e||!sr(n)?!1:((o=(r=(t=n.features)==null?void 0:t.artifacts)==null?void 0:r.layout)==null?void 0:o.expandLauncherPanelWhenOpen)!==!1}function Zb(n,e){if(!(n!=null&&n.trim()))return e;let t=/^(\d+(?:\.\d+)?)px\s*$/i.exec(n.trim());return t?Math.max(0,Number(t[1])):e}function ev(n){if(!(n!=null&&n.trim()))return null;let e=/^(\d+(?:\.\d+)?)px\s*$/i.exec(n.trim());return e?Math.max(0,Number(e[1])):null}function tv(n,e,t){return t<e?e:Math.min(t,Math.max(e,n))}function nv(n,e,t,r){let o=n-r-2*e-t;return Math.max(0,o)}function ym(n,e){var a;let r=(a=(e.getComputedStyle(n).gap||"0px").trim().split(/\s+/)[0])!=null?a:"0px",o=/^([\d.]+)px$/i.exec(r);if(o)return Number(o[1]);let s=/^([\d.]+)/.exec(r);return s?Number(s[1]):8}function bm(n,e,t,r,o,s){let a=Zb(o,200),i=nv(e,t,r,200);i=Math.max(a,i);let d=ev(s);return d!==null&&(i=Math.min(i,d)),tv(n,a,i)}var vm={init:{title:"Schedule a Demo",description:"Share the basics and we'll follow up with a confirmation.",fields:[{name:"name",label:"Full name",placeholder:"Jane Doe",required:!0},{name:"email",label:"Work email",placeholder:"jane@example.com",type:"email",required:!0},{name:"notes",label:"What would you like to cover?",type:"textarea"}],submitLabel:"Submit details"},followup:{title:"Additional Information",description:"Provide any extra details to tailor the next steps.",fields:[{name:"company",label:"Company",placeholder:"Acme Inc."},{name:"context",label:"Context",type:"textarea",placeholder:"Share more about your use case"}],submitLabel:"Send"}},Gi=(n,e,t,r)=>{let o=n.querySelectorAll("[data-tv-form]");o.length&&o.forEach(s=>{var v,x,P;if(s.dataset.enhanced==="true")return;let a=(v=s.dataset.tvForm)!=null?v:"init";s.dataset.enhanced="true";let i=(x=vm[a])!=null?x:vm.init;s.classList.add("persona-form-card","persona-space-y-4");let d=b("div","persona-space-y-1"),c=b("h3","persona-text-base persona-font-semibold persona-text-persona-primary");if(c.textContent=i.title,d.appendChild(c),i.description){let T=b("p","persona-text-sm persona-text-persona-muted");T.textContent=i.description,d.appendChild(T)}let m=document.createElement("form");m.className="persona-form-grid persona-space-y-3",i.fields.forEach(T=>{var C,I;let M=b("label","persona-form-field persona-flex persona-flex-col persona-gap-1");M.htmlFor=`${e.id}-${a}-${T.name}`;let N=b("span","persona-text-xs persona-font-medium persona-text-persona-muted");N.textContent=T.label,M.appendChild(N);let k=(C=T.type)!=null?C:"text",W;k==="textarea"?(W=document.createElement("textarea"),W.rows=3):(W=document.createElement("input"),W.type=k),W.className="persona-rounded-xl persona-border persona-border-gray-200 persona-bg-white persona-px-3 persona-py-2 persona-text-sm persona-text-persona-primary focus:persona-outline-none focus:persona-border-persona-primary",W.id=`${e.id}-${a}-${T.name}`,W.name=T.name,W.placeholder=(I=T.placeholder)!=null?I:"",T.required&&(W.required=!0),M.appendChild(W),m.appendChild(M)});let f=b("div","persona-flex persona-items-center persona-justify-between persona-gap-2"),g=b("div","persona-text-xs persona-text-persona-muted persona-min-h-[1.5rem]"),u=b("button","persona-inline-flex persona-items-center persona-rounded-full persona-bg-persona-primary persona-px-4 persona-py-2 persona-text-sm persona-font-semibold persona-text-white disabled:persona-opacity-60 persona-cursor-pointer");u.type="submit",u.textContent=(P=i.submitLabel)!=null?P:"Submit",f.appendChild(g),f.appendChild(u),m.appendChild(f),s.replaceChildren(d,m),m.addEventListener("submit",async T=>{var W,C;T.preventDefault();let M=(W=t.formEndpoint)!=null?W:"/form",N=new FormData(m),k={};N.forEach((I,D)=>{k[D]=I}),k.type=a,u.disabled=!0,g.textContent="Submitting\u2026";try{let I=await fetch(M,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(k)});if(!I.ok)throw new Error(`Form submission failed (${I.status})`);let D=await I.json();g.textContent=(C=D.message)!=null?C:"Thanks! We'll be in touch soon.",D.success&&D.nextPrompt&&await r.sendMessage(String(D.nextPrompt))}catch(I){g.textContent=I instanceof Error?I.message:"Something went wrong. Please try again."}finally{u.disabled=!1}})})};var Qi=class{constructor(){this.plugins=new Map}register(e){var t;this.plugins.has(e.id)&&console.warn(`Plugin "${e.id}" is already registered. Overwriting.`),this.plugins.set(e.id,e),(t=e.onRegister)==null||t.call(e)}unregister(e){var r;let t=this.plugins.get(e);t&&((r=t.onUnregister)==null||r.call(t),this.plugins.delete(e))}getAll(){return Array.from(this.plugins.values()).sort((e,t)=>{var r,o;return((r=t.priority)!=null?r:0)-((o=e.priority)!=null?o:0)})}getForInstance(e){let t=this.getAll();if(!e||e.length===0)return t;let r=new Set(e.map(s=>s.id));return[...t.filter(s=>!r.has(s.id)),...e].sort((s,a)=>{var i,d;return((i=a.priority)!=null?i:0)-((d=s.priority)!=null?d:0)})}clear(){this.plugins.forEach(e=>{var t;return(t=e.onUnregister)==null?void 0:t.call(e)}),this.plugins.clear()}},Xi=new Qi;var xm=()=>{let n=new Map,e=(o,s)=>(n.has(o)||n.set(o,new Set),n.get(o).add(s),()=>t(o,s)),t=(o,s)=>{var a;(a=n.get(o))==null||a.delete(s)};return{on:e,off:t,emit:(o,s)=>{var a;(a=n.get(o))==null||a.forEach(i=>{try{i(s)}catch(d){typeof console!="undefined"&&console.error("[AgentWidget] Event handler error:",d)}})}}};var rv=n=>{let e=n.match(/```(?:json)?\s*([\s\S]*?)```/i);return e?e[1]:n},ov=n=>{let e=n.trim(),t=e.indexOf("{");if(t===-1)return null;let r=0;for(let o=t;o<e.length;o+=1){let s=e[o];if(s==="{"&&(r+=1),s==="}"&&(r-=1,r===0))return e.slice(t,o+1)}return null},Yi=({text:n})=>{if(!n||!n.includes("{"))return null;try{let e=rv(n),t=ov(e);if(!t)return null;let r=JSON.parse(t);if(!r||typeof r!="object"||!r.action)return null;let{action:o,...s}=r;return{type:String(o),payload:s,raw:r}}catch{return null}},Ji=n=>typeof n=="string"?n:n==null?"":String(n),Ys={message:n=>n.type!=="message"?void 0:{handled:!0,displayText:Ji(n.payload.text)},messageAndClick:(n,e)=>{var o;if(n.type!=="message_and_click")return;let t=n.payload,r=Ji(t.element);if(r&&((o=e.document)!=null&&o.querySelector)){let s=e.document.querySelector(r);s?setTimeout(()=>{s.click()},400):typeof console!="undefined"&&console.warn("[AgentWidget] Element not found for selector:",r)}return{handled:!0,displayText:Ji(t.text)}}},wm=n=>Array.isArray(n)?n.map(e=>String(e)):[],Zi=n=>{let e=new Set(wm(n.getSessionMetadata().processedActionMessageIds)),t=()=>{e=new Set(wm(n.getSessionMetadata().processedActionMessageIds))},r=()=>{let s=Array.from(e);n.updateSessionMetadata(a=>({...a,processedActionMessageIds:s}))};return{process:s=>{if(s.streaming||s.message.role!=="assistant"||!s.text||e.has(s.message.id))return null;let a=typeof s.raw=="string"&&s.raw||typeof s.message.rawContent=="string"&&s.message.rawContent||typeof s.text=="string"&&s.text||null;!a&&typeof s.text=="string"&&s.text.trim().startsWith("{")&&typeof console!="undefined"&&console.warn("[AgentWidget] Structured response detected but no raw payload was provided. Ensure your stream parser returns { text, raw }.");let i=a?n.parsers.reduce((c,m)=>c||(m==null?void 0:m({text:a,message:s.message}))||null,null):null;if(!i)return null;e.add(s.message.id),r();let d={action:i,message:s.message};n.emit("action:detected",d);for(let c of n.handlers)if(c)try{let m=()=>{n.emit("action:resubmit",d)},f=c(i,{message:s.message,metadata:n.getSessionMetadata(),updateMetadata:n.updateSessionMetadata,document:n.documentRef,triggerResubmit:m});if(!f)continue;if(f.handled){let g=f.persistMessage!==!1;return{text:f.displayText!==void 0?f.displayText:"",persist:g,resubmit:f.resubmit}}}catch(m){typeof console!="undefined"&&console.error("[AgentWidget] Action handler error:",m)}return{text:"",persist:!0}},syncFromMetadata:t}};var sv=n=>{if(!n)return null;try{return JSON.parse(n)}catch(e){return typeof console!="undefined"&&console.error("[AgentWidget] Failed to parse stored state:",e),null}},av=n=>n.map(e=>({...e,streaming:!1})),iv=n=>n.map(e=>({...e,status:"complete"})),Cm=(n="persona-state")=>{let e=()=>typeof window=="undefined"||!window.localStorage?null:window.localStorage;return{load:()=>{let t=e();return t?sv(t.getItem(n)):null},save:t=>{let r=e();if(r)try{let o={...t,messages:t.messages?av(t.messages):void 0,artifacts:t.artifacts?iv(t.artifacts):void 0};r.setItem(n,JSON.stringify(o))}catch(o){typeof console!="undefined"&&console.error("[AgentWidget] Failed to persist state:",o)}},clear:()=>{let t=e();if(t)try{t.removeItem(n)}catch(r){typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear stored state:",r)}}}};import{parse as fA,STR as hA,OBJ as yA}from"partial-json";function Am(n,e){let{config:t,message:r,onPropsUpdate:o}=e,s=Ho.get(n.component);if(!s)return console.warn(`[ComponentMiddleware] Component "${n.component}" not found in registry. Falling back to default rendering.`),null;let a={message:r,config:t,updateProps:i=>{o&&o(i)}};try{return s(n.props,a)}catch(i){return console.error(`[ComponentMiddleware] Error rendering component "${n.component}":`,i),null}}function Sm(n){if(typeof n.rawContent=="string"&&n.rawContent.length>0)return n.rawContent;if(typeof n.content=="string"){let e=n.content.trim();if(e.startsWith("{")||e.startsWith("["))return n.content}return null}function Tm(n){let e=Sm(n);if(!e)return!1;try{let t=JSON.parse(e);return typeof t=="object"&&t!==null&&"component"in t&&typeof t.component=="string"}catch{return!1}}function Mm(n){let e=Sm(n);if(!e)return null;try{let t=JSON.parse(e);if(typeof t=="object"&&t!==null&&"component"in t&&typeof t.component=="string"){let r=t;return{component:r.component,props:r.props&&typeof r.props=="object"&&r.props!==null?r.props:{},raw:e}}}catch{}return null}var lv=["Very dissatisfied","Dissatisfied","Neutral","Satisfied","Very satisfied"];function Em(n){let{onSubmit:e,onDismiss:t,title:r="How satisfied are you?",subtitle:o="Please rate your experience",commentPlaceholder:s="Share your thoughts (optional)...",submitText:a="Submit",skipText:i="Skip",showComment:d=!0,ratingLabels:c=lv}=n,m=document.createElement("div");m.className="persona-feedback-container persona-feedback-csat",m.setAttribute("role","dialog"),m.setAttribute("aria-label","Customer satisfaction feedback");let f=null,g=document.createElement("div");g.className="persona-feedback-content";let u=document.createElement("div");u.className="persona-feedback-header";let v=document.createElement("h3");v.className="persona-feedback-title",v.textContent=r,u.appendChild(v);let x=document.createElement("p");x.className="persona-feedback-subtitle",x.textContent=o,u.appendChild(x),g.appendChild(u);let P=document.createElement("div");P.className="persona-feedback-rating persona-feedback-rating-csat",P.setAttribute("role","radiogroup"),P.setAttribute("aria-label","Satisfaction rating from 1 to 5");let T=[];for(let C=1;C<=5;C++){let I=document.createElement("button");I.type="button",I.className="persona-feedback-rating-btn persona-feedback-star-btn",I.setAttribute("role","radio"),I.setAttribute("aria-checked","false"),I.setAttribute("aria-label",`${C} star${C>1?"s":""}: ${c[C-1]}`),I.title=c[C-1],I.dataset.rating=String(C),I.innerHTML=`
|
|
29
29
|
<svg class="persona-feedback-star" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
30
30
|
<polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>
|
|
31
31
|
</svg>
|
|
32
|
-
`,I.addEventListener("click",()=>{f=C,E.forEach((B,D)=>{let T=D<C;B.classList.toggle("selected",T),B.setAttribute("aria-checked",D===C-1?"true":"false")})}),E.push(I),M.appendChild(I)}u.appendChild(M);let k=null;if(d){let C=document.createElement("div");C.className="persona-feedback-comment-container",k=document.createElement("textarea"),k.className="persona-feedback-comment",k.placeholder=s,k.rows=3,k.setAttribute("aria-label","Additional comments"),C.appendChild(k),u.appendChild(C)}let N=document.createElement("div");N.className="persona-feedback-actions";let P=document.createElement("button");P.type="button",P.className="persona-feedback-btn persona-feedback-btn-skip",P.textContent=i,P.addEventListener("click",()=>{t==null||t(),g.remove()});let W=document.createElement("button");return W.type="button",W.className="persona-feedback-btn persona-feedback-btn-submit",W.textContent=a,W.addEventListener("click",async()=>{if(f===null){M.classList.add("persona-feedback-shake"),setTimeout(()=>M.classList.remove("persona-feedback-shake"),500);return}W.disabled=!0,W.textContent="Submitting...";try{let C=(k==null?void 0:k.value.trim())||void 0;await e(f,C),g.remove()}catch(C){W.disabled=!1,W.textContent=a,console.error("[CSAT Feedback] Failed to submit:",C)}}),N.appendChild(P),N.appendChild(W),u.appendChild(N),g.appendChild(u),g}function Fm(n){let{onSubmit:e,onDismiss:t,title:r="How likely are you to recommend us?",subtitle:o="On a scale of 0 to 10",commentPlaceholder:s="What could we do better? (optional)...",submitText:a="Submit",skipText:i="Skip",showComment:d=!0,lowLabel:c="Not likely",highLabel:g="Very likely"}=n,f=document.createElement("div");f.className="persona-feedback-container persona-feedback-nps",f.setAttribute("role","dialog"),f.setAttribute("aria-label","Net Promoter Score feedback");let u=null,m=document.createElement("div");m.className="persona-feedback-content";let v=document.createElement("div");v.className="persona-feedback-header";let x=document.createElement("h3");x.className="persona-feedback-title",x.textContent=r,v.appendChild(x);let M=document.createElement("p");M.className="persona-feedback-subtitle",M.textContent=o,v.appendChild(M),m.appendChild(v);let E=document.createElement("div");E.className="persona-feedback-rating persona-feedback-rating-nps",E.setAttribute("role","radiogroup"),E.setAttribute("aria-label","Likelihood rating from 0 to 10");let k=document.createElement("div");k.className="persona-feedback-labels";let N=document.createElement("span");N.className="persona-feedback-label-low",N.textContent=c;let P=document.createElement("span");P.className="persona-feedback-label-high",P.textContent=g,k.appendChild(N),k.appendChild(P);let W=document.createElement("div");W.className="persona-feedback-numbers";let C=[];for(let U=0;U<=10;U++){let z=document.createElement("button");z.type="button",z.className="persona-feedback-rating-btn persona-feedback-number-btn",z.setAttribute("role","radio"),z.setAttribute("aria-checked","false"),z.setAttribute("aria-label",`Rating ${U} out of 10`),z.textContent=String(U),z.dataset.rating=String(U),U<=6?z.classList.add("persona-feedback-detractor"):U<=8?z.classList.add("persona-feedback-passive"):z.classList.add("persona-feedback-promoter"),z.addEventListener("click",()=>{u=U,C.forEach((re,ke)=>{re.classList.toggle("selected",ke===U),re.setAttribute("aria-checked",ke===U?"true":"false")})}),C.push(z),W.appendChild(z)}E.appendChild(k),E.appendChild(W),m.appendChild(E);let I=null;if(d){let U=document.createElement("div");U.className="persona-feedback-comment-container",I=document.createElement("textarea"),I.className="persona-feedback-comment",I.placeholder=s,I.rows=3,I.setAttribute("aria-label","Additional comments"),U.appendChild(I),m.appendChild(U)}let B=document.createElement("div");B.className="persona-feedback-actions";let D=document.createElement("button");D.type="button",D.className="persona-feedback-btn persona-feedback-btn-skip",D.textContent=i,D.addEventListener("click",()=>{t==null||t(),f.remove()});let T=document.createElement("button");return T.type="button",T.className="persona-feedback-btn persona-feedback-btn-submit",T.textContent=a,T.addEventListener("click",async()=>{if(u===null){W.classList.add("persona-feedback-shake"),setTimeout(()=>W.classList.remove("persona-feedback-shake"),500);return}T.disabled=!0,T.textContent="Submitting...";try{let U=(I==null?void 0:I.value.trim())||void 0;await e(u,U),f.remove()}catch(U){T.disabled=!1,T.textContent=a,console.error("[NPS Feedback] Failed to submit:",U)}}),B.appendChild(D),B.appendChild(T),m.appendChild(B),f.appendChild(m),f}var Cs="persona-chat-history",lv=30*1e3,cv={"image/png":"png","image/jpeg":"jpg","image/jpg":"jpg","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg","image/bmp":"bmp","image/tiff":"tiff"};function dv(n){var r,o,s;if(!n)return[];let e=[],t=Array.from((r=n.items)!=null?r:[]);for(let a of t){if(a.kind!=="file"||!a.type.startsWith("image/"))continue;let i=a.getAsFile();if(!i)continue;if(i.name){e.push(i);continue}let d=(o=cv[i.type])!=null?o:"png";e.push(new File([i],`clipboard-image-${Date.now()}.${d}`,{type:i.type,lastModified:Date.now()}))}if(e.length>0)return e;for(let a of Array.from((s=n.files)!=null?s:[]))a.type.startsWith("image/")&&e.push(a);return e}function Ti(n){if(!n)return!1;let e=n.types;return e?typeof e.contains=="function"?e.contains("Files"):Array.from(e).includes("Files"):!1}function pv(n){var e,t,r,o,s,a,i,d,c;return n?n===!0?{storage:"session",keyPrefix:"persona-",persist:{openState:!0,voiceState:!0,focusInput:!0},clearOnChatClear:!0}:{storage:(e=n.storage)!=null?e:"session",keyPrefix:(t=n.keyPrefix)!=null?t:"persona-",persist:{openState:(o=(r=n.persist)==null?void 0:r.openState)!=null?o:!0,voiceState:(a=(s=n.persist)==null?void 0:s.voiceState)!=null?a:!0,focusInput:(d=(i=n.persist)==null?void 0:i.focusInput)!=null?d:!0},clearOnChatClear:(c=n.clearOnChatClear)!=null?c:!0}:null}function uv(n){try{let e=n==="local"?localStorage:sessionStorage,t="__persist_test__";return e.setItem(t,"1"),e.removeItem(t),e}catch{return null}}var xl=n=>!n||typeof n!="object"?{}:{...n},Om=n=>n.map(e=>({...e,streaming:!1})),_m=(n,e,t)=>{let r=n!=null&&n.markdown?Ba(n.markdown):null,o=Da(n==null?void 0:n.sanitize);return n!=null&&n.postprocessMessage&&o&&(n==null?void 0:n.sanitize)===void 0&&console.warn("[Persona] A custom postprocessMessage is active with the default HTML sanitizer. Tags or attributes not in the built-in allowlist will be stripped. To keep custom HTML, set `sanitize: false` or provide a custom sanitize function."),s=>{var c,g,f;let a=(c=s.text)!=null?c:"",i=(g=s.message.rawContent)!=null?g:null;if(e){let u=e.process({text:a,raw:i!=null?i:a,message:s.message,streaming:s.streaming});u!==null&&(a=u.text,u.persist||(s.message.__skipPersist=!0),u.resubmit&&!s.streaming&&t&&t())}let d;return n!=null&&n.postprocessMessage?d=n.postprocessMessage({...s,text:a,raw:(f=i!=null?i:s.text)!=null?f:""}):r?d=r(a):d=fo(a),o?o(d):d}};function $m(n){var i,d,c,g;let e=b("div","persona-attachment-drop-overlay");n!=null&&n.background&&e.style.setProperty("--persona-drop-overlay-bg",n.background),(n==null?void 0:n.backdropBlur)!==void 0&&e.style.setProperty("--persona-drop-overlay-blur",n.backdropBlur),n!=null&&n.border&&e.style.setProperty("--persona-drop-overlay-border",n.border),n!=null&&n.borderRadius&&e.style.setProperty("--persona-drop-overlay-radius",n.borderRadius),n!=null&&n.inset&&e.style.setProperty("--persona-drop-overlay-inset",n.inset),n!=null&&n.labelSize&&e.style.setProperty("--persona-drop-overlay-label-size",n.labelSize),n!=null&&n.labelColor&&e.style.setProperty("--persona-drop-overlay-label-color",n.labelColor);let t=(i=n==null?void 0:n.iconName)!=null?i:"upload",r=(d=n==null?void 0:n.iconSize)!=null?d:"48px",o=(c=n==null?void 0:n.iconColor)!=null?c:"rgba(59, 130, 246, 0.6)",s=(g=n==null?void 0:n.iconStrokeWidth)!=null?g:.5,a=Ae(t,r,o,s);if(a&&e.appendChild(a),n!=null&&n.label){let f=b("span","persona-drop-overlay-label");f.textContent=n.label,e.appendChild(f)}return e}var qm=(n,e,t)=>{var jl,Vl,Kl,Gl,Ql,Xl,Jl,Yl,Zl,ec,tc,nc,rc,oc,sc,ac,ic,lc,cc,dc,pc,uc,mc,gc,fc,hc,yc,bc,vc,xc,wc,Cc,Ac,Sc,Tc,Mc,Ec,kc,Lc,Pc,Ic,Wc,Rc,Hc,Bc,Dc,Nc,Fc,Oc,_c;if(n==null)throw new Error('createAgentExperience: mount must be a non-null HTMLElement (e.g. pass document.getElementById("my-root") after the node exists).');n.id&&!n.getAttribute("data-persona-instance")&&n.setAttribute("data-persona-instance",n.id),n.hasAttribute("data-persona-root")||n.setAttribute("data-persona-root","true");let r=Nu(e),o=hl.getForInstance(r.plugins);r.components&&zo.registerAll(r.components);let s=Pm(),i=r.persistState===!1?null:(jl=r.storageAdapter)!=null?jl:Wm(),d={},c=null,g=!1,f=l=>{if(r.onStateLoaded)try{let p=r.onStateLoaded(l);if(p&&typeof p=="object"&&"state"in p){let{state:h,open:y}=p;return y&&(g=!0),h}return p}catch(p){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",p)}return l};if(i!=null&&i.load)try{let l=i.load();if(l&&typeof l.then=="function")c=l.then(p=>{let h=p!=null?p:{messages:[],metadata:{}};return f(h)});else{let p=l!=null?l:{messages:[],metadata:{}},h=f(p);h.metadata&&(d=xl(h.metadata)),(Vl=h.messages)!=null&&Vl.length&&(r={...r,initialMessages:h.messages}),(Kl=h.artifacts)!=null&&Kl.length&&(r={...r,initialArtifacts:h.artifacts,initialSelectedArtifactId:(Gl=h.selectedArtifactId)!=null?Gl:null})}}catch(l){typeof console!="undefined"&&console.error("[AgentWidget] Failed to load stored state:",l)}else if(r.onStateLoaded)try{let l=f({messages:[],metadata:{}});(Ql=l.messages)!=null&&Ql.length&&(r={...r,initialMessages:l.messages})}catch(l){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",l)}let u=()=>d,m=l=>{var h;d=(h=l({...d}))!=null?h:{},Yo()},v=r.actionParsers&&r.actionParsers.length?r.actionParsers:[bl],x=r.actionHandlers&&r.actionHandlers.length?r.actionHandlers:[ha.message,ha.messageAndClick],M=vl({parsers:v,handlers:x,getSessionMetadata:u,updateSessionMetadata:m,emit:s.emit,documentRef:typeof document!="undefined"?document:null});M.syncFromMetadata();let E=(Jl=(Xl=r.launcher)==null?void 0:Xl.enabled)!=null?Jl:!0,k=(Zl=(Yl=r.launcher)==null?void 0:Yl.autoExpand)!=null?Zl:!1,N=(ec=r.autoFocusInput)!=null?ec:!1,P=k,W=E,C=(nc=(tc=r.layout)==null?void 0:tc.header)==null?void 0:nc.layout,I=!1,B=()=>da(r),D=()=>E||B(),T=B()?!1:E?k:!0,U=!1,z=null,re=()=>{U=!0,z&&clearTimeout(z),z=setTimeout(()=>{U&&(typeof console!="undefined"&&console.warn("[AgentWidget] Resubmit requested but no injection occurred within 10s"),U=!1)},1e4)},ke=_m(r,M,re),je=(oc=(rc=r.features)==null?void 0:rc.showReasoning)!=null?oc:!0,be=(ac=(sc=r.features)==null?void 0:sc.showToolCalls)!=null?ac:!0,He=(lc=(ic=r.features)==null?void 0:ic.showEventStreamToggle)!=null?lc:!1,Fe=(dc=(cc=r.features)==null?void 0:cc.scrollToBottom)!=null?dc:{},Se=(uc=(pc=r.features)==null?void 0:pc.scrollBehavior)!=null?uc:{},oe=`${(gc=typeof r.persistState=="object"?(mc=r.persistState)==null?void 0:mc.keyPrefix:void 0)!=null?gc:"persona-"}event-stream`,G=He?new ga(oe):null,se=(yc=(hc=(fc=r.features)==null?void 0:fc.eventStream)==null?void 0:hc.maxEvents)!=null?yc:2e3,ge=He?new ma(se,G):null,pe=He?new fa:null,V=null,ae=!1,Ie=null,ee=0;G==null||G.open().then(()=>ge==null?void 0:ge.restore()).catch(l=>{r.debug&&console.warn("[AgentWidget] IndexedDB not available for event stream:",l)});let Z={onCopy:l=>{var p,h;s.emit("message:copy",l),O!=null&&O.isClientTokenMode()&&O.submitMessageFeedback(l.id,"copy").catch(y=>{r.debug&&console.error("[AgentWidget] Failed to submit copy feedback:",y)}),(h=(p=r.messageActions)==null?void 0:p.onCopy)==null||h.call(p,l)},onFeedback:l=>{var p,h;s.emit("message:feedback",l),O!=null&&O.isClientTokenMode()&&O.submitMessageFeedback(l.messageId,l.type).catch(y=>{r.debug&&console.error("[AgentWidget] Failed to submit feedback:",y)}),(h=(p=r.messageActions)==null?void 0:p.onFeedback)==null||h.call(p,l)}},ne=(bc=r.statusIndicator)!=null?bc:{},at=l=>{var p,h,y,A;return l==="idle"?(p=ne.idleText)!=null?p:Tn.idle:l==="connecting"?(h=ne.connectingText)!=null?h:Tn.connecting:l==="connected"?(y=ne.connectedText)!=null?y:Tn.connected:l==="error"?(A=ne.errorText)!=null?A:Tn.error:Tn[l]};function it(l,p,h,y){if(y==="idle"&&h.idleLink){l.textContent="";let A=document.createElement("a");A.href=h.idleLink,A.target="_blank",A.rel="noopener noreferrer",A.textContent=p,A.style.color="inherit",A.style.textDecoration="none",l.appendChild(A)}else l.textContent=p}let ot=im({config:r,showClose:D()}),{wrapper:Me,panel:fe,pillRoot:Xe}=ot.shell,J=ot.panelElements,{container:ue,body:Ee,messagesWrapper:Je,suggestions:Ke,textarea:Pe,sendButton:Ve,sendButtonWrapper:bn,composerForm:Wt,statusText:dn,introTitle:wr,introSubtitle:$,closeButton:K,iconHolder:he,headerTitle:Ge,headerSubtitle:Ze,header:$e,footer:Oe,actionsRow:Lt,leftActions:Vt,rightActions:Xt}=J,kn=J.setSendButtonMode,j=J.micButton,Rt=J.micButtonWrapper,le=J.attachmentButton,we=J.attachmentButtonWrapper,Ne=J.attachmentInput,St=J.attachmentPreviewsContainer;ue.classList.add("persona-relative"),Ee.classList.add("persona-relative");let rn=12,on=()=>{var l;return(l=Fe.label)!=null?l:""},vn=()=>{var l;return(l=Fe.iconName)!=null?l:"arrow-down"},Dt=()=>Fe.enabled!==!1,nt=()=>{var l;return(l=Se.mode)!=null?l:"follow"},Bt=()=>{var l;return(l=Se.anchorTopOffset)!=null?l:16},dt=b("button","persona-scroll-to-bottom-indicator persona-absolute persona-bottom-3 persona-left-1/2 persona-z-10 persona-flex persona-items-center persona-gap-1 persona-text-xs persona-transform persona--translate-x-1/2 persona-cursor-pointer");dt.type="button",dt.style.display="none",dt.setAttribute("data-persona-scroll-to-bottom","true");let Jt=b("span","persona-flex persona-items-center"),tr=b("span",""),Ln=b("span","");Ln.setAttribute("data-persona-scroll-to-bottom-count",""),Ln.style.display="none",dt.append(Jt,tr,Ln),ue.appendChild(dt);let sn=b("div","persona-stream-anchor-spacer");sn.setAttribute("aria-hidden","true"),sn.setAttribute("data-persona-anchor-spacer",""),sn.style.flexShrink="0",sn.style.pointerEvents="none",sn.style.height="0px",Ee.appendChild(sn);let Fn=()=>{let p=Oe.style.display==="none"?0:Oe.offsetHeight;dt.style.bottom=`${p+rn}px`};Fn();let Cr=()=>{let l=!!on();dt.setAttribute("aria-label",on()||"Jump to latest"),dt.title=on(),dt.setAttribute("data-persona-scroll-to-bottom-has-label",l?"true":"false"),Jt.innerHTML="";let p=Ae(vn(),"14px","currentColor",2);p?(Jt.appendChild(p),Jt.style.display=""):Jt.style.display="none",tr.textContent=on(),tr.style.display=l?"":"none"};Cr();let vt=null,Un=null,Ar=o.find(l=>l.renderHeader);if(Ar!=null&&Ar.renderHeader){let l=Ar.renderHeader({config:r,defaultRenderer:()=>{let p=qo({config:r,showClose:D()});return pa(ue,p,r),p.header},onClose:()=>S(!1,"user")});if(l){let p=ue.querySelector(".persona-border-b-persona-divider");p&&(p.replaceWith(l),$e=l,ot.header.element=l)}}let Nr=()=>{var p,h,y,A;if(!ge)return;if(ae=!0,!V&&ge&&(V=xm({buffer:ge,getFullHistory:()=>ge.getAllFromStore(),onClose:()=>ur(),config:r,plugins:o,getThroughput:()=>{var H;return(H=pe==null?void 0:pe.getMetric())!=null?H:{status:"idle"}}})),V&&(Ee.style.display="none",(p=Oe.parentNode)==null||p.insertBefore(V.element,Oe),V.update()),yt){yt.style.boxShadow=`inset 0 0 0 1.5px ${Nn.actionIconColor}`;let H=(A=(y=(h=r.features)==null?void 0:h.eventStream)==null?void 0:y.classNames)==null?void 0:A.toggleButtonActive;H&&H.split(/\s+/).forEach(q=>q&&yt.classList.add(q))}let l=()=>{if(!ae)return;let H=Date.now();H-ee>=200&&(V==null||V.update(),ee=H),Ie=requestAnimationFrame(l)};ee=0,Ie=requestAnimationFrame(l),$n(),s.emit("eventStream:opened",{timestamp:Date.now()})},ur=()=>{var l,p,h;if(ae){if(ae=!1,V&&V.element.remove(),Ee.style.display="",yt){yt.style.boxShadow="";let y=(h=(p=(l=r.features)==null?void 0:l.eventStream)==null?void 0:p.classNames)==null?void 0:h.toggleButtonActive;y&&y.split(/\s+/).forEach(A=>A&&yt.classList.remove(A))}Ie!==null&&(cancelAnimationFrame(Ie),Ie=null),$n(),s.emit("eventStream:closed",{timestamp:Date.now()})}},yt=null;if(He){let l=(xc=(vc=r.features)==null?void 0:vc.eventStream)==null?void 0:xc.classNames,p="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full hover:persona-opacity-80 persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-1"+(l!=null&&l.toggleButton?" "+l.toggleButton:"");yt=b("button",p),yt.style.width="28px",yt.style.height="28px",yt.style.color=Nn.actionIconColor,yt.type="button",yt.setAttribute("aria-label","Event Stream"),yt.title="Event Stream";let h=Ae("activity","18px","currentColor",1.5);h&&yt.appendChild(h);let y=J.clearChatButtonWrapper,A=J.closeButtonWrapper,H=y||A;H&&H.parentNode===$e?$e.insertBefore(yt,H):$e.appendChild(yt),yt.addEventListener("click",()=>{ae?ur():Nr()})}let xo=l=>{var A,H,q,F,R;let p=r.attachments;if(!(p!=null&&p.enabled))return;let h=(A=l.querySelector("[data-persona-composer-attachment-previews]"))!=null?A:l.querySelector(".persona-attachment-previews");if(!h){h=b("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2"),h.setAttribute("data-persona-composer-attachment-previews",""),h.style.display="none";let ce=l.querySelector("[data-persona-composer-form]");ce!=null&&ce.parentNode?ce.parentNode.insertBefore(h,ce):l.insertBefore(h,l.firstChild)}if(!((H=l.querySelector("[data-persona-composer-attachment-input]"))!=null?H:l.querySelector('input[type="file"]'))){let ce=b("input");ce.type="file",ce.setAttribute("data-persona-composer-attachment-input",""),ce.accept=((q=p.allowedTypes)!=null?q:Gr).join(","),ce.multiple=((F=p.maxFiles)!=null?F:4)>1,ce.style.display="none",ce.setAttribute("aria-label",(R=p.buttonTooltipText)!=null?R:"Attach files"),l.appendChild(ce)}},Sr=o.find(l=>l.renderComposer);if(Sr!=null&&Sr.renderComposer){let l=r.composer,p=Sr.renderComposer({config:r,defaultRenderer:()=>vi({config:r}).footer,onSubmit:h=>{var q;if(!O||O.isStreaming())return;let y=h.trim(),A=(q=vt==null?void 0:vt.hasAttachments())!=null?q:!1;if(!y&&!A)return;et();let H;A&&(H=[],H.push(...vt.getContentParts()),y&&H.push(Vi(y))),O.sendMessage(y,{contentParts:H}),A&&vt.clearAttachments()},streaming:!1,disabled:!1,openAttachmentPicker:()=>{Ne==null||Ne.click()},models:l==null?void 0:l.models,selectedModelId:l==null?void 0:l.selectedModelId,onModelChange:h=>{r.composer={...r.composer,selectedModelId:h},r.agent&&(r.agent={...r.agent,model:h})},onVoiceToggle:((wc=r.voiceRecognition)==null?void 0:wc.enabled)===!0?()=>{Un==null||Un()}:void 0});p&&(ot.replaceComposer(p),Oe=ot.composer.footer)}let wo=l=>{let p=(...de)=>{for(let Y of de){let ve=l.querySelector(Y);if(ve)return ve}return null},h=l.querySelector("[data-persona-composer-form]"),y=l.querySelector("[data-persona-composer-input]"),A=l.querySelector("[data-persona-composer-submit]"),H=l.querySelector("[data-persona-composer-mic]"),q=l.querySelector("[data-persona-composer-status]");h&&(Wt=h),y&&(Pe=y),A&&(Ve=A),H&&(j=H,Rt=H.parentElement),q&&(dn=q);let F=p("[data-persona-composer-suggestions]",".persona-mb-3.persona-flex.persona-flex-wrap.persona-gap-2");F&&(Ke=F);let R=p("[data-persona-composer-attachment-button]",".persona-attachment-button");R&&(le=R,we=R.parentElement),Ne=p("[data-persona-composer-attachment-input]",'input[type="file"]'),St=p("[data-persona-composer-attachment-previews]",".persona-attachment-previews");let ce=p("[data-persona-composer-actions]",".persona-widget-composer .persona-flex.persona-items-center.persona-justify-between");ce&&(Lt=ce)};xo(Oe),wo(Oe);let On=(Mc=(Cc=r.layout)==null?void 0:Cc.contentMaxWidth)!=null?Mc:B()?(Tc=(Sc=(Ac=r.launcher)==null?void 0:Ac.composerBar)==null?void 0:Sc.contentMaxWidth)!=null?Tc:"720px":void 0;if(On&&(Je.style.maxWidth=On,Je.style.marginLeft="auto",Je.style.marginRight="auto",Je.style.width="100%"),On&&Wt&&!B()&&(Wt.style.maxWidth=On,Wt.style.marginLeft="auto",Wt.style.marginRight="auto"),On&&Ke&&!B()&&(Ke.style.maxWidth=On,Ke.style.marginLeft="auto",Ke.style.marginRight="auto"),On&&St&&!B()&&(St.style.maxWidth=On,St.style.marginLeft="auto",St.style.marginRight="auto"),(Ec=r.attachments)!=null&&Ec.enabled&&Ne&&St){vt=na.fromConfig(r.attachments),vt.setPreviewsContainer(St),Ne.addEventListener("change",h=>{let y=h.target;vt==null||vt.handleFileSelect(y.files),y.value=""});let l=r.attachments.dropOverlay,p=$m(l);ue.appendChild(p)}(()=>{var y,A;let l=(A=(y=r.layout)==null?void 0:y.slots)!=null?A:{},p=H=>{switch(H){case"body-top":return ue.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6")||null;case"messages":return Je;case"footer-top":return Ke;case"composer":return Wt;case"footer-bottom":return dn;default:return null}},h=(H,q)=>{var F;switch(H){case"header-left":case"header-center":case"header-right":if(H==="header-left")$e.insertBefore(q,$e.firstChild);else if(H==="header-right")$e.appendChild(q);else{let R=$e.querySelector(".persona-flex-col");R?(F=R.parentNode)==null||F.insertBefore(q,R.nextSibling):$e.appendChild(q)}break;case"body-top":{let R=Ee.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6");R?R.replaceWith(q):Ee.insertBefore(q,Ee.firstChild);break}case"body-bottom":Ee.appendChild(q);break;case"footer-top":Ke.replaceWith(q);break;case"footer-bottom":dn.replaceWith(q);break;default:break}};for(let[H,q]of Object.entries(l))if(q)try{let F=q({config:r,defaultContent:()=>p(H)});F&&h(H,F)}catch(F){typeof console!="undefined"&&console.error(`[AgentWidget] Error rendering slot "${H}":`,F)}})();let Jr=l=>{var q,F;let h=l.target.closest('button[data-expand-header="true"]');if(!h)return;let y=h.closest(".persona-reasoning-bubble, .persona-tool-bubble, .persona-approval-bubble");if(!y)return;let A=y.getAttribute("data-message-id");if(!A)return;let H=h.getAttribute("data-bubble-type");if(H==="reasoning")vs.has(A)?vs.delete(A):vs.add(A),dm(A,y);else if(H==="tool")xs.has(A)?xs.delete(A):xs.add(A),pm(A,y,r);else if(H==="approval"){let R=r.approval!==!1?r.approval:void 0,ce=((q=R==null?void 0:R.detailsDisplay)!=null?q:"collapsed")==="expanded",de=(F=xi.get(A))!=null?F:ce;xi.set(A,!de),fm(A,y,r)}Lr.delete(A)};Je.addEventListener("pointerdown",l=>{l.target.closest('button[data-expand-header="true"]')&&(l.preventDefault(),Jr(l))}),Je.addEventListener("keydown",l=>{let p=l.target;(l.key==="Enter"||l.key===" ")&&p.closest('button[data-expand-header="true"]')&&(l.preventDefault(),Jr(l))});let Fr=new Map,Yr=null,Zr="idle",Co={idle:{icon:"volume-2",label:"Read aloud"},loading:{icon:"loader-circle",label:"Loading\u2026"},playing:{icon:"pause",label:"Pause"},paused:{icon:"play",label:"Resume"}},Ao=(l,p)=>{let{icon:h,label:y}=Co[p];l.setAttribute("aria-label",y),l.title=y,l.setAttribute("aria-pressed",p==="idle"?"false":"true"),l.classList.toggle("persona-message-action-active",p!=="idle"),l.classList.toggle("persona-message-action-loading",p==="loading");let A=Ae(h,14,"currentColor",2);A&&(l.innerHTML="",l.appendChild(A))},eo=()=>{Je.querySelectorAll('[data-action="read-aloud"]').forEach(p=>{var H;let h=p.closest("[data-actions-for]"),y=(H=h==null?void 0:h.getAttribute("data-actions-for"))!=null?H:null;Ao(p,y&&y===Yr?Zr:"idle")})};Je.addEventListener("click",l=>{var q;let h=l.target.closest(".persona-message-action-btn[data-action]");if(!h)return;l.preventDefault(),l.stopPropagation();let y=h.closest("[data-actions-for]");if(!y)return;let A=y.getAttribute("data-actions-for");if(!A)return;let H=h.getAttribute("data-action");if(H==="copy"){let R=O.getMessages().find(ce=>ce.id===A);if(R&&Z.onCopy){let ce=R.content||"";navigator.clipboard.writeText(ce).then(()=>{h.classList.add("persona-message-action-success");let de=Ae("check",14,"currentColor",2);de&&(h.innerHTML="",h.appendChild(de)),setTimeout(()=>{h.classList.remove("persona-message-action-success");let Y=Ae("copy",14,"currentColor",2);Y&&(h.innerHTML="",h.appendChild(Y))},2e3)}).catch(de=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to copy message:",de)}),Z.onCopy(R)}}else if(H==="read-aloud")O.toggleReadAloud(A);else if(H==="upvote"||H==="downvote"){let R=((q=Fr.get(A))!=null?q:null)===H,ce=H==="upvote"?"thumbs-up":"thumbs-down";if(R){Fr.delete(A),h.classList.remove("persona-message-action-active");let de=Ae(ce,14,"currentColor",2);de&&(h.innerHTML="",h.appendChild(de))}else{let de=H==="upvote"?"downvote":"upvote",Y=y.querySelector(`[data-action="${de}"]`);if(Y){Y.classList.remove("persona-message-action-active");let Ue=Ae(de==="upvote"?"thumbs-up":"thumbs-down",14,"currentColor",2);Ue&&(Y.innerHTML="",Y.appendChild(Ue))}Fr.set(A,H),h.classList.add("persona-message-action-active");let ve=Ae(ce,14,"currentColor",2);ve&&(ve.setAttribute("fill","currentColor"),h.innerHTML="",h.appendChild(ve)),h.classList.remove("persona-message-action-pop"),h.offsetWidth,h.classList.add("persona-message-action-pop");let Ce=O.getMessages().find(rt=>rt.id===A);Ce&&Z.onFeedback&&Z.onFeedback({type:H,messageId:Ce.id,message:Ce})}}}),Je.addEventListener("click",l=>{let h=l.target.closest("button[data-approval-action]");if(!h)return;l.preventDefault(),l.stopPropagation();let y=h.closest(".persona-approval-bubble");if(!y)return;let A=y.getAttribute("data-message-id");if(!A)return;let H=h.getAttribute("data-approval-action");if(!H)return;let q=H==="approve"?"approved":"denied",R=O.getMessages().find(de=>de.id===A);if(!(R!=null&&R.approval))return;let ce=y.querySelector("[data-approval-buttons]");ce&&ce.querySelectorAll("button").forEach(Y=>{Y.disabled=!0,Y.style.opacity="0.5",Y.style.cursor="not-allowed"}),R.approval.toolType==="webmcp"?O.resolveWebMcpApproval(A,q):O.resolveApproval(R.approval,q)});let wt=null,zn=null,jn={artifacts:[],selectedId:null},Pn=!1,Tt={current:null};Je.addEventListener("click",l=>{var Y,ve,De,Ce,rt;let h=l.target.closest("[data-download-artifact]");if(!h)return;l.preventDefault(),l.stopPropagation();let y=h.getAttribute("data-download-artifact");if(!y||((De=(ve=(Y=r.features)==null?void 0:Y.artifacts)==null?void 0:ve.onArtifactAction)==null?void 0:De.call(ve,{type:"download",artifactId:y}))===!0)return;let H=O.getArtifactById(y),q=H==null?void 0:H.markdown,F=(H==null?void 0:H.title)||"artifact";if(!q){let Ue=h.closest("[data-open-artifact]"),gt=Ue==null?void 0:Ue.closest("[data-message-id]"),lt=gt==null?void 0:gt.getAttribute("data-message-id");if(lt){let Le=O.getMessages().find(ze=>ze.id===lt);if(Le!=null&&Le.rawContent)try{let ze=JSON.parse(Le.rawContent);q=(Ce=ze==null?void 0:ze.props)==null?void 0:Ce.markdown,F=((rt=ze==null?void 0:ze.props)==null?void 0:rt.title)||F}catch{}}}if(!q)return;let R=new Blob([q],{type:"text/markdown"}),ce=URL.createObjectURL(R),de=document.createElement("a");de.href=ce,de.download=`${F}.md`,de.click(),URL.revokeObjectURL(ce)}),Je.addEventListener("click",l=>{var H,q,F;let h=l.target.closest("[data-open-artifact]");if(!h)return;let y=h.getAttribute("data-open-artifact");!y||((F=(q=(H=r.features)==null?void 0:H.artifacts)==null?void 0:q.onArtifactAction)==null?void 0:F.call(q,{type:"open",artifactId:y}))===!0||(l.preventDefault(),l.stopPropagation(),Pn=!1,O.selectArtifact(y),Gn())}),Je.addEventListener("keydown",l=>{if(l.key!=="Enter"&&l.key!==" ")return;let p=l.target;p.hasAttribute("data-open-artifact")&&(l.preventDefault(),p.click())});let nr=J.composerOverlay,rr=(l,p,h)=>{var F,R,ce,de;let y=p.trim();if(!y||!Tt.current)return;let A=(F=l.getAttribute("data-tool-call-id"))!=null?F:"",H=h.source==="free-text";n.dispatchEvent(new CustomEvent("persona:askUserQuestion:answered",{detail:{toolUseId:A,answer:y,answers:h.structured,values:(R=h.values)!=null?R:h.source==="multi"?y.split(", "):[y],isFreeText:H,source:h.source},bubbles:!0,composed:!0})),ps(nr,A);let q=Tt.current.getMessages().find(Y=>{var ve;return((ve=Y.toolCall)==null?void 0:ve.id)===A});(ce=q==null?void 0:q.agentMetadata)!=null&&ce.awaitingLocalTool?Tt.current.resolveAskUserQuestion(q,(de=h.structured)!=null?de:y):Tt.current.sendMessage(y)},Vn=l=>{var A;let p=Tt.current;if(!p)return;let h=(A=l.getAttribute("data-tool-call-id"))!=null?A:"",y=p.getMessages().find(H=>{var q;return((q=H.toolCall)==null?void 0:q.id)===h});y&&p.persistAskUserQuestionProgress(y,{answers:Oa(l,y),currentIndex:dr(l)})},to=l=>Object.entries(l).map(([p,h])=>`${p}: ${Array.isArray(h)?h.join(", "):h}`).join(" | "),Or=l=>{var A,H,q;if(((H=(A=r.features)==null?void 0:A.askUserQuestion)==null?void 0:H.groupedAutoAdvance)===!1)return;let p=dr(l),h=ds(l);if(p>=h-1)return;let y=(q=Tt.current)==null?void 0:q.getMessages().find(F=>{var R;return((R=F.toolCall)==null?void 0:R.id)===l.getAttribute("data-tool-call-id")});y&&($a(l,y,r,p+1),Vn(l))};nr.addEventListener("click",l=>{var H,q,F,R,ce,de,Y,ve,De,Ce,rt,Ue,gt,lt;let h=l.target.closest("[data-ask-user-action]");if(!h)return;let y=h.closest("[data-persona-ask-sheet-for]");if(!y)return;let A=h.getAttribute("data-ask-user-action");if(l.preventDefault(),l.stopPropagation(),A==="dismiss"){let We=(H=y.getAttribute("data-tool-call-id"))!=null?H:"";n.dispatchEvent(new CustomEvent("persona:askUserQuestion:dismissed",{detail:{toolUseId:We},bubbles:!0,composed:!0})),ps(nr,We);let Le=(q=Tt.current)==null?void 0:q.getMessages().find(ze=>{var Qe;return((Qe=ze.toolCall)==null?void 0:Qe.id)===We});(F=Le==null?void 0:Le.agentMetadata)!=null&&F.awaitingLocalTool&&((R=Tt.current)==null||R.markAskUserQuestionResolved(Le),(ce=Tt.current)==null||ce.resolveAskUserQuestion(Le,"(dismissed)"));return}if(A==="pick"){let We=h.getAttribute("data-option-label");if(!We)return;let Le=y.getAttribute("data-multi-select")==="true",ze=ho(y);if(ze&&Le){let Qe=No(y)[dr(y)],bt=new Set(Array.isArray(Qe)?Qe:[]);bt.has(We)?bt.delete(We):bt.add(We),yo(y,Array.from(bt)),Vn(y);return}if(ze){yo(y,We),Vn(y),Or(y);return}if(Le){let Qe=h.getAttribute("aria-pressed")==="true";h.setAttribute("aria-pressed",Qe?"false":"true"),h.classList.toggle("persona-ask-pill-selected",!Qe);let bt=y.querySelector('[data-ask-user-action="submit-multi"]');bt&&(bt.disabled=_i(y).length===0);return}rr(y,We,{source:"pick",values:[We]});return}if(A==="submit-multi"){let We=_i(y);if(We.length===0)return;rr(y,We.join(", "),{source:"multi",values:We});return}if(A==="open-free-text"){let We=y.querySelector('[data-ask-free-text-row="true"]');if(We){We.classList.remove("persona-hidden");let Le=We.querySelector('[data-ask-free-text-input="true"]');Le==null||Le.focus()}return}if(A==="focus-free-text"){let We=y.querySelector('[data-ask-free-text-input="true"]');We==null||We.focus();return}if(A==="submit-free-text"){let We=y.querySelector('[data-ask-free-text-input="true"]'),Le=(de=We==null?void 0:We.value)!=null?de:"";if(!Le.trim())return;if(ho(y)){yo(y,Le.trim()),Vn(y),Or(y);return}rr(y,Le,{source:"free-text"});return}if(A==="next"||A==="back"){if(!Tt.current)return;let We=(Y=y.getAttribute("data-tool-call-id"))!=null?Y:"",Le=Tt.current.getMessages().find(Be=>{var Re;return((Re=Be.toolCall)==null?void 0:Re.id)===We});if(!Le)return;let ze=y.querySelector('[data-ask-free-text-input="true"]'),Qe=(De=(ve=ze==null?void 0:ze.value)==null?void 0:ve.trim())!=null?De:"";if(Qe){let Be=No(y)[dr(y)];(typeof Be!="string"||Be!==Qe)&&yo(y,Qe)}let bt=A==="next"?1:-1,L=dr(y)+bt;$a(y,Le,r,L),Vn(y);return}if(A==="submit-all"){if(!Tt.current)return;let We=(Ce=y.getAttribute("data-tool-call-id"))!=null?Ce:"",Le=Tt.current.getMessages().find(Be=>{var Re;return((Re=Be.toolCall)==null?void 0:Re.id)===We});if(!Le)return;let ze=y.querySelector('[data-ask-free-text-input="true"]'),Qe=(Ue=(rt=ze==null?void 0:ze.value)==null?void 0:rt.trim())!=null?Ue:"";Qe&&yo(y,Qe);let bt=Oa(y,Le);Tt.current.persistAskUserQuestionProgress(Le,{answers:bt,currentIndex:dr(y)});let L=to(bt);rr(y,L||"(submitted)",{source:"submit-all",structured:bt});return}if(A==="skip"){if(!Tt.current)return;let We=(gt=y.getAttribute("data-tool-call-id"))!=null?gt:"",Le=Tt.current.getMessages().find(Re=>{var me;return((me=Re.toolCall)==null?void 0:me.id)===We});if(!Le)return;let ze=ho(y),Qe=dr(y),bt=ds(y),L=Qe>=bt-1;if(!ze){n.dispatchEvent(new CustomEvent("persona:askUserQuestion:dismissed",{detail:{toolUseId:We},bubbles:!0,composed:!0})),ps(nr,We),(lt=Le.agentMetadata)!=null&<.awaitingLocalTool&&(Tt.current.markAskUserQuestionResolved(Le),Tt.current.resolveAskUserQuestion(Le,"(dismissed)"));return}yo(y,"");let Be=y.querySelector('[data-ask-free-text-input="true"]');if(Be&&(Be.value=""),L){let Re=Oa(y,Le),me=to(Re);rr(y,me||"(skipped)",{source:"submit-all",structured:Re});return}$a(y,Le,r,Qe+1),Vn(y);return}}),nr.addEventListener("keydown",l=>{var H;if(l.key!=="Enter")return;let h=l.target;if(!((H=h.matches)!=null&&H.call(h,'[data-ask-free-text-input="true"]')))return;let y=h.closest("[data-persona-ask-sheet-for]");if(!y)return;l.preventDefault();let A=h.value;if(A.trim()){if(ho(y)){yo(y,A.trim()),Vn(y),Or(y);return}rr(y,A,{source:"free-text"})}});let no=l=>{if(!/^[1-9]$/.test(l.key)||l.metaKey||l.ctrlKey||l.altKey)return;let p=l.target;if((p==null?void 0:p.tagName)==="INPUT"||(p==null?void 0:p.tagName)==="TEXTAREA"||p!=null&&p.isContentEditable)return;let h=nr.querySelector("[data-persona-ask-sheet-for]");if(!h||h.getAttribute("data-ask-layout")!=="rows"||h.getAttribute("data-multi-select")==="true")return;let y=Number(l.key),H=h.querySelectorAll('[data-ask-pill-list="true"] [data-ask-user-action="pick"], [data-ask-pill-list="true"] [data-ask-user-action="focus-free-text"]')[y-1];H&&(l.preventDefault(),H.click())};document.addEventListener("keydown",no);let Kn=null,Nt=null,In=null,or=null,ro=()=>{};function _r(){or==null||or(),or=null}let oo=()=>{var q;if(!Kn||!Nt)return;let l=n.classList.contains("persona-artifact-appearance-seamless"),h=((q=n.ownerDocument.defaultView)!=null?q:window).innerWidth<=640;if(!l||n.classList.contains("persona-artifact-narrow-host")||h){Nt.style.removeProperty("position"),Nt.style.removeProperty("left"),Nt.style.removeProperty("top"),Nt.style.removeProperty("bottom"),Nt.style.removeProperty("width"),Nt.style.removeProperty("z-index");return}let y=Kn.firstElementChild;if(!y||y===Nt)return;let A=10;Nt.style.position="absolute",Nt.style.top="0",Nt.style.bottom="0",Nt.style.width=`${A}px`,Nt.style.zIndex="5";let H=y.offsetWidth-A/2;Nt.style.left=`${Math.max(0,H)}px`},Tr=()=>{},Gn=()=>{var h,y,A,H,q;if(!wt||!pr(r))return;Ai(n,r),Si(n,r),Tr();let l=(H=(A=(y=(h=r.features)==null?void 0:h.artifacts)==null?void 0:y.layout)==null?void 0:A.narrowHostMaxWidth)!=null?H:520,p=fe.getBoundingClientRect().width||0;n.classList.toggle("persona-artifact-narrow-host",p>0&&p<=l),wt.update(jn),Pn?(wt.setMobileOpen(!1),wt.element.classList.add("persona-hidden"),(q=wt.backdrop)==null||q.classList.add("persona-hidden")):jn.artifacts.length>0&&(wt.element.classList.remove("persona-hidden"),wt.setMobileOpen(!0)),ro()};if(pr(r)){fe.style.position="relative";let l=b("div","persona-flex persona-flex-1 persona-flex-col persona-min-w-0 persona-min-h-0"),p=b("div","persona-flex persona-h-full persona-w-full persona-min-h-0 persona-artifact-split-root");l.appendChild(ue),wt=Am(r,{onSelect:h=>{var y;return(y=Tt.current)==null?void 0:y.selectArtifact(h)},onDismiss:()=>{Pn=!0,Gn()}}),wt.element.classList.add("persona-hidden"),Kn=p,p.appendChild(l),p.appendChild(wt.element),wt.backdrop&&fe.appendChild(wt.backdrop),fe.appendChild(p),ro=()=>{var y,A,H,q;if(!Kn||!wt)return;if(!(((H=(A=(y=r.features)==null?void 0:y.artifacts)==null?void 0:A.layout)==null?void 0:H.resizable)===!0)){In==null||In(),In=null,_r(),Nt&&(Nt.remove(),Nt=null),wt.element.style.removeProperty("width"),wt.element.style.removeProperty("maxWidth");return}if(!Nt){let F=b("div","persona-artifact-split-handle persona-shrink-0 persona-h-full");F.setAttribute("role","separator"),F.setAttribute("aria-orientation","vertical"),F.setAttribute("aria-label","Resize artifacts panel"),F.tabIndex=0;let R=n.ownerDocument,ce=(q=R.defaultView)!=null?q:window,de=Y=>{var gt,lt;if(!wt||Y.button!==0||n.classList.contains("persona-artifact-narrow-host")||ce.innerWidth<=640)return;Y.preventDefault(),_r();let ve=Y.clientX,De=wt.element.getBoundingClientRect().width,Ce=(lt=(gt=r.features)==null?void 0:gt.artifacts)==null?void 0:lt.layout,rt=We=>{let Le=Kn.getBoundingClientRect().width,ze=n.classList.contains("persona-artifact-appearance-seamless"),Qe=ze?0:Em(Kn,ce),bt=ze?0:F.getBoundingClientRect().width||6,L=De-(We.clientX-ve),Be=km(L,Le,Qe,bt,Ce==null?void 0:Ce.resizableMinWidth,Ce==null?void 0:Ce.resizableMaxWidth);wt.element.style.width=`${Be}px`,wt.element.style.maxWidth="none",oo()},Ue=()=>{R.removeEventListener("pointermove",rt),R.removeEventListener("pointerup",Ue),R.removeEventListener("pointercancel",Ue),or=null;try{F.releasePointerCapture(Y.pointerId)}catch{}};or=Ue,R.addEventListener("pointermove",rt),R.addEventListener("pointerup",Ue),R.addEventListener("pointercancel",Ue);try{F.setPointerCapture(Y.pointerId)}catch{}};F.addEventListener("pointerdown",de),Nt=F,Kn.insertBefore(F,wt.element),In=()=>{F.removeEventListener("pointerdown",de)}}if(Nt){let F=jn.artifacts.length>0&&!Pn;Nt.classList.toggle("persona-hidden",!F),oo()}},Tr=()=>{var ce,de,Y,ve,De,Ce,rt,Ue,gt,lt,We,Le,ze,Qe;if(!E||!wt||((de=(ce=r.launcher)==null?void 0:ce.sidebarMode)!=null?de:!1)||wn(r)&&vr(r).reveal==="emerge")return;let y=(Y=n.ownerDocument.defaultView)!=null?Y:window,A=(De=(ve=r.launcher)==null?void 0:ve.mobileFullscreen)!=null?De:!0,H=(rt=(Ce=r.launcher)==null?void 0:Ce.mobileBreakpoint)!=null?rt:640;if(A&&y.innerWidth<=H||!Mm(r,E))return;let q=(lt=(gt=(Ue=r.launcher)==null?void 0:Ue.width)!=null?gt:r.launcherWidth)!=null?lt:Qr,F=(Qe=(ze=(Le=(We=r.features)==null?void 0:We.artifacts)==null?void 0:Le.layout)==null?void 0:ze.expandedPanelWidth)!=null?Qe:"min(720px, calc(100vw - 24px))";jn.artifacts.length>0&&!Pn?(fe.style.width=F,fe.style.maxWidth=F):(fe.style.width=q,fe.style.maxWidth=q)},typeof ResizeObserver!="undefined"&&(zn=new ResizeObserver(()=>{Gn()}),zn.observe(fe))}else fe.appendChild(ue),B()&&Xe&&(J.peekBanner&&Xe.appendChild(J.peekBanner),Xe.appendChild(Oe));n.appendChild(Me),Xe&&n.appendChild(Xe);let ye=()=>{var Be,Re,me,_t,Ft,Kt,xt,zt,Jn,nn,Ye,Pt,cn,cr,Yn,ko,Lo,os,ss,Gt,Po,mo,go,Vr,Io,hr,tt,mn;if(B()){fe.style.width="100%",fe.style.maxWidth="100%";let qt=(Re=(Be=r.launcher)==null?void 0:Be.composerBar)!=null?Re:{},$t=Me.dataset.state==="expanded",ft=(me=qt.expandedSize)!=null?me:"anchored";if(!($t&&ft!=="fullscreen")){ue.style.background="",ue.style.border="",ue.style.borderRadius="",ue.style.overflow="",ue.style.boxShadow="";return}let At=(Ft=(_t=r.theme)==null?void 0:_t.components)==null?void 0:Ft.panel,An=ti(r),Rn=(Bn,Wo)=>{var Os;return Bn==null||Bn===""?Wo:(Os=hs(An,Bn))!=null?Os:Bn},Br="1px solid var(--persona-border)",yn="var(--persona-palette-shadows-xl, 0 25px 50px -12px rgba(0, 0, 0, 0.25))",Hn="var(--persona-panel-radius, var(--persona-radius-xl, 0.75rem))";ue.style.background="var(--persona-surface, #ffffff)",ue.style.border=Rn(At==null?void 0:At.border,Br),ue.style.borderRadius=Rn(At==null?void 0:At.borderRadius,Hn),ue.style.boxShadow=Rn(At==null?void 0:At.shadow,yn),ue.style.overflow="hidden";return}let l=wn(r),p=(xt=(Kt=r.launcher)==null?void 0:Kt.sidebarMode)!=null?xt:!1,h=l||p||((Jn=(zt=r.launcher)==null?void 0:zt.fullHeight)!=null?Jn:!1),y=((nn=r.launcher)==null?void 0:nn.enabled)===!1,A=(Pt=(Ye=r.theme)==null?void 0:Ye.components)==null?void 0:Pt.panel,H=ti(r),q=(qt,$t)=>{var ft;return qt==null||qt===""?$t:(ft=hs(H,qt))!=null?ft:qt},F=(cn=n.ownerDocument.defaultView)!=null?cn:window,R=(Yn=(cr=r.launcher)==null?void 0:cr.mobileFullscreen)!=null?Yn:!0,ce=(Lo=(ko=r.launcher)==null?void 0:ko.mobileBreakpoint)!=null?Lo:640,de=F.innerWidth<=ce,Y=R&&de&&E,ve=(ss=(os=r.launcher)==null?void 0:os.position)!=null?ss:"bottom-left",De=ve==="bottom-left"||ve==="top-left",Ce=(Po=(Gt=r.launcher)==null?void 0:Gt.zIndex)!=null?Po:Mn,rt=p||Y?"none":"1px solid var(--persona-border)",Ue=Y?"none":p?De?"var(--persona-palette-shadows-sidebar-left, 2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-sidebar-right, -2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-xl, 0 25px 50px -12px rgba(0, 0, 0, 0.25))";l&&!Y&&(Ue="none",rt="none");let gt=p||Y?"0":"var(--persona-panel-radius, var(--persona-radius-xl, 0.75rem))",lt=q(A==null?void 0:A.border,rt),We=q(A==null?void 0:A.shadow,Ue),Le=q(A==null?void 0:A.borderRadius,gt),ze=Ee.scrollTop;n.style.cssText="",Me.style.cssText="",fe.style.cssText="",ue.style.cssText="",Ee.style.cssText="",Oe.style.cssText="";let Qe=()=>{var $t;if(ze<=0)return;(($t=Ee.ownerDocument.defaultView)!=null?$t:window).requestAnimationFrame(()=>{if(Ee.scrollTop===ze)return;let ft=Ee.scrollHeight-Ee.clientHeight;ft<=0||(Ee.scrollTop=Math.min(ze,ft))})};if(Y){Me.classList.remove("persona-bottom-6","persona-right-6","persona-left-6","persona-top-6","persona-bottom-4","persona-right-4","persona-left-4","persona-top-4"),Me.style.cssText=`
|
|
32
|
+
`,I.addEventListener("click",()=>{f=C,T.forEach((D,B)=>{let E=B<C;D.classList.toggle("selected",E),D.setAttribute("aria-checked",B===C-1?"true":"false")})}),T.push(I),P.appendChild(I)}g.appendChild(P);let M=null;if(d){let C=document.createElement("div");C.className="persona-feedback-comment-container",M=document.createElement("textarea"),M.className="persona-feedback-comment",M.placeholder=s,M.rows=3,M.setAttribute("aria-label","Additional comments"),C.appendChild(M),g.appendChild(C)}let N=document.createElement("div");N.className="persona-feedback-actions";let k=document.createElement("button");k.type="button",k.className="persona-feedback-btn persona-feedback-btn-skip",k.textContent=i,k.addEventListener("click",()=>{t==null||t(),m.remove()});let W=document.createElement("button");return W.type="button",W.className="persona-feedback-btn persona-feedback-btn-submit",W.textContent=a,W.addEventListener("click",async()=>{if(f===null){P.classList.add("persona-feedback-shake"),setTimeout(()=>P.classList.remove("persona-feedback-shake"),500);return}W.disabled=!0,W.textContent="Submitting...";try{let C=(M==null?void 0:M.value.trim())||void 0;await e(f,C),m.remove()}catch(C){W.disabled=!1,W.textContent=a,console.error("[CSAT Feedback] Failed to submit:",C)}}),N.appendChild(k),N.appendChild(W),g.appendChild(N),m.appendChild(g),m}function km(n){let{onSubmit:e,onDismiss:t,title:r="How likely are you to recommend us?",subtitle:o="On a scale of 0 to 10",commentPlaceholder:s="What could we do better? (optional)...",submitText:a="Submit",skipText:i="Skip",showComment:d=!0,lowLabel:c="Not likely",highLabel:m="Very likely"}=n,f=document.createElement("div");f.className="persona-feedback-container persona-feedback-nps",f.setAttribute("role","dialog"),f.setAttribute("aria-label","Net Promoter Score feedback");let g=null,u=document.createElement("div");u.className="persona-feedback-content";let v=document.createElement("div");v.className="persona-feedback-header";let x=document.createElement("h3");x.className="persona-feedback-title",x.textContent=r,v.appendChild(x);let P=document.createElement("p");P.className="persona-feedback-subtitle",P.textContent=o,v.appendChild(P),u.appendChild(v);let T=document.createElement("div");T.className="persona-feedback-rating persona-feedback-rating-nps",T.setAttribute("role","radiogroup"),T.setAttribute("aria-label","Likelihood rating from 0 to 10");let M=document.createElement("div");M.className="persona-feedback-labels";let N=document.createElement("span");N.className="persona-feedback-label-low",N.textContent=c;let k=document.createElement("span");k.className="persona-feedback-label-high",k.textContent=m,M.appendChild(N),M.appendChild(k);let W=document.createElement("div");W.className="persona-feedback-numbers";let C=[];for(let z=0;z<=10;z++){let j=document.createElement("button");j.type="button",j.className="persona-feedback-rating-btn persona-feedback-number-btn",j.setAttribute("role","radio"),j.setAttribute("aria-checked","false"),j.setAttribute("aria-label",`Rating ${z} out of 10`),j.textContent=String(z),j.dataset.rating=String(z),z<=6?j.classList.add("persona-feedback-detractor"):z<=8?j.classList.add("persona-feedback-passive"):j.classList.add("persona-feedback-promoter"),j.addEventListener("click",()=>{g=z,C.forEach((te,We)=>{te.classList.toggle("selected",We===z),te.setAttribute("aria-checked",We===z?"true":"false")})}),C.push(j),W.appendChild(j)}T.appendChild(M),T.appendChild(W),u.appendChild(T);let I=null;if(d){let z=document.createElement("div");z.className="persona-feedback-comment-container",I=document.createElement("textarea"),I.className="persona-feedback-comment",I.placeholder=s,I.rows=3,I.setAttribute("aria-label","Additional comments"),z.appendChild(I),u.appendChild(z)}let D=document.createElement("div");D.className="persona-feedback-actions";let B=document.createElement("button");B.type="button",B.className="persona-feedback-btn persona-feedback-btn-skip",B.textContent=i,B.addEventListener("click",()=>{t==null||t(),f.remove()});let E=document.createElement("button");return E.type="button",E.className="persona-feedback-btn persona-feedback-btn-submit",E.textContent=a,E.addEventListener("click",async()=>{if(g===null){W.classList.add("persona-feedback-shake"),setTimeout(()=>W.classList.remove("persona-feedback-shake"),500);return}E.disabled=!0,E.textContent="Submitting...";try{let z=(I==null?void 0:I.value.trim())||void 0;await e(g,z),f.remove()}catch(z){E.disabled=!1,E.textContent=a,console.error("[NPS Feedback] Failed to submit:",z)}}),D.appendChild(B),D.appendChild(E),u.appendChild(D),f.appendChild(u),f}var ds="persona-chat-history",cv=30*1e3,dv={"image/png":"png","image/jpeg":"jpg","image/jpg":"jpg","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg","image/bmp":"bmp","image/tiff":"tiff"};function pv(n){var r,o,s;if(!n)return[];let e=[],t=Array.from((r=n.items)!=null?r:[]);for(let a of t){if(a.kind!=="file"||!a.type.startsWith("image/"))continue;let i=a.getAsFile();if(!i)continue;if(i.name){e.push(i);continue}let d=(o=dv[i.type])!=null?o:"png";e.push(new File([i],`clipboard-image-${Date.now()}.${d}`,{type:i.type,lastModified:Date.now()}))}if(e.length>0)return e;for(let a of Array.from((s=n.files)!=null?s:[]))a.type.startsWith("image/")&&e.push(a);return e}function Za(n){if(!n)return!1;let e=n.types;return e?typeof e.contains=="function"?e.contains("Files"):Array.from(e).includes("Files"):!1}function uv(n){var e,t,r,o,s,a,i,d,c;return n?n===!0?{storage:"session",keyPrefix:"persona-",persist:{openState:!0,voiceState:!0,focusInput:!0},clearOnChatClear:!0}:{storage:(e=n.storage)!=null?e:"session",keyPrefix:(t=n.keyPrefix)!=null?t:"persona-",persist:{openState:(o=(r=n.persist)==null?void 0:r.openState)!=null?o:!0,voiceState:(a=(s=n.persist)==null?void 0:s.voiceState)!=null?a:!0,focusInput:(d=(i=n.persist)==null?void 0:i.focusInput)!=null?d:!0},clearOnChatClear:(c=n.clearOnChatClear)!=null?c:!0}:null}function mv(n){try{let e=n==="local"?localStorage:sessionStorage,t="__persist_test__";return e.setItem(t,"1"),e.removeItem(t),e}catch{return null}}var el=n=>!n||typeof n!="object"?{}:{...n},Lm=n=>n.map(e=>({...e,streaming:!1})),Pm=(n,e,t)=>{let r=n!=null&&n.markdown?da(n.markdown):null,o=pa(n==null?void 0:n.sanitize);return n!=null&&n.postprocessMessage&&o&&(n==null?void 0:n.sanitize)===void 0&&console.warn("[Persona] A custom postprocessMessage is active with the default HTML sanitizer. Tags or attributes not in the built-in allowlist will be stripped. To keep custom HTML, set `sanitize: false` or provide a custom sanitize function."),s=>{var m,f,g;let a=(m=s.text)!=null?m:"",i=(f=s.message.rawContent)!=null?f:null;if(e){let u=e.process({text:a,raw:i!=null?i:a,message:s.message,streaming:s.streaming});u!==null&&(a=u.text,u.persist||(s.message.__skipPersist=!0),u.resubmit&&!s.streaming&&t&&t())}let d=To()!==null,c;if(n!=null&&n.postprocessMessage){let u=n.postprocessMessage({...s,text:a,raw:(g=i!=null?i:s.text)!=null?g:""});c=o?o(u):u}else if(r){let u=r(a);c=o&&d?o(u):u}else c=oo(a);return c}};function Im(n){var i,d,c,m;let e=b("div","persona-attachment-drop-overlay");n!=null&&n.background&&e.style.setProperty("--persona-drop-overlay-bg",n.background),(n==null?void 0:n.backdropBlur)!==void 0&&e.style.setProperty("--persona-drop-overlay-blur",n.backdropBlur),n!=null&&n.border&&e.style.setProperty("--persona-drop-overlay-border",n.border),n!=null&&n.borderRadius&&e.style.setProperty("--persona-drop-overlay-radius",n.borderRadius),n!=null&&n.inset&&e.style.setProperty("--persona-drop-overlay-inset",n.inset),n!=null&&n.labelSize&&e.style.setProperty("--persona-drop-overlay-label-size",n.labelSize),n!=null&&n.labelColor&&e.style.setProperty("--persona-drop-overlay-label-color",n.labelColor);let t=(i=n==null?void 0:n.iconName)!=null?i:"upload",r=(d=n==null?void 0:n.iconSize)!=null?d:"48px",o=(c=n==null?void 0:n.iconColor)!=null?c:"rgba(59, 130, 246, 0.6)",s=(m=n==null?void 0:n.iconStrokeWidth)!=null?m:.5,a=Ce(t,r,o,s);if(a&&e.appendChild(a),n!=null&&n.label){let f=b("span","persona-drop-overlay-label");f.textContent=n.label,e.appendChild(f)}return e}var Wm=(n,e,t)=>{var Hl,Bl,Dl,Nl,Fl,Ol,_l,$l,Ul,ql,zl,jl,Vl,Kl,Gl,Ql,Xl,Jl,Yl,Zl,ec,tc,nc,rc,oc,sc,ac,ic,lc,cc,dc,pc,uc,mc,gc,fc,hc,yc,bc,vc,xc,wc,Cc,Ac,Sc,Tc,Mc,Ec,kc,Lc;if(n==null)throw new Error('createAgentExperience: mount must be a non-null HTMLElement (e.g. pass document.getElementById("my-root") after the node exists).');n.id&&!n.getAttribute("data-persona-instance")&&n.setAttribute("data-persona-instance",n.id),n.hasAttribute("data-persona-root")||n.setAttribute("data-persona-root","true");let r=Mu(e),o=Xi.getForInstance(r.plugins);r.components&&Ho.registerAll(r.components);let s=xm(),i=r.persistState===!1?null:(Hl=r.storageAdapter)!=null?Hl:Cm(),d={},c=null,m=!1,f=l=>{if(r.onStateLoaded)try{let p=r.onStateLoaded(l);if(p&&typeof p=="object"&&"state"in p){let{state:h,open:y}=p;return y&&(m=!0),h}return p}catch(p){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",p)}return l};if(i!=null&&i.load)try{let l=i.load();if(l&&typeof l.then=="function")c=l.then(p=>{let h=p!=null?p:{messages:[],metadata:{}};return f(h)});else{let p=l!=null?l:{messages:[],metadata:{}},h=f(p);h.metadata&&(d=el(h.metadata)),(Bl=h.messages)!=null&&Bl.length&&(r={...r,initialMessages:h.messages}),(Dl=h.artifacts)!=null&&Dl.length&&(r={...r,initialArtifacts:h.artifacts,initialSelectedArtifactId:(Nl=h.selectedArtifactId)!=null?Nl:null})}}catch(l){typeof console!="undefined"&&console.error("[AgentWidget] Failed to load stored state:",l)}else if(r.onStateLoaded)try{let l=f({messages:[],metadata:{}});(Fl=l.messages)!=null&&Fl.length&&(r={...r,initialMessages:l.messages})}catch(l){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",l)}let g=()=>d,u=l=>{var h;d=(h=l({...d}))!=null?h:{},Yr()},v=r.actionParsers&&r.actionParsers.length?r.actionParsers:[Yi],x=r.actionHandlers&&r.actionHandlers.length?r.actionHandlers:[Ys.message,Ys.messageAndClick],P=Zi({parsers:v,handlers:x,getSessionMetadata:g,updateSessionMetadata:u,emit:s.emit,documentRef:typeof document!="undefined"?document:null});P.syncFromMetadata();let T=(_l=(Ol=r.launcher)==null?void 0:Ol.enabled)!=null?_l:!0,M=(Ul=($l=r.launcher)==null?void 0:$l.autoExpand)!=null?Ul:!1,N=(ql=r.autoFocusInput)!=null?ql:!1,k=M,W=T,C=(jl=(zl=r.layout)==null?void 0:zl.header)==null?void 0:jl.layout,I=!1,D=()=>Vs(r),B=()=>T||D(),E=D()?!1:T?M:!0,z=!1,j=null,te=()=>{z=!0,j&&clearTimeout(j),j=setTimeout(()=>{z&&(typeof console!="undefined"&&console.warn("[AgentWidget] Resubmit requested but no injection occurred within 10s"),z=!1)},1e4)},We=Pm(r,P,te),$e=(Kl=(Vl=r.features)==null?void 0:Vl.showReasoning)!=null?Kl:!0,ve=(Ql=(Gl=r.features)==null?void 0:Gl.showToolCalls)!=null?Ql:!0,Pe=(Jl=(Xl=r.features)==null?void 0:Xl.showEventStreamToggle)!=null?Jl:!1,Oe=(Zl=(Yl=r.features)==null?void 0:Yl.scrollToBottom)!=null?Zl:{},Ae=(tc=(ec=r.features)==null?void 0:ec.scrollBehavior)!=null?tc:{},ne=`${(rc=typeof r.persistState=="object"?(nc=r.persistState)==null?void 0:nc.keyPrefix:void 0)!=null?rc:"persona-"}event-stream`,Q=Pe?new Xs(ne):null,ae=(ac=(sc=(oc=r.features)==null?void 0:oc.eventStream)==null?void 0:sc.maxEvents)!=null?ac:2e3,fe=Pe?new Qs(ae,Q):null,re=Pe?new Js:null,V=null,ee=!1,Ue=null,J=0;Q==null||Q.open().then(()=>fe==null?void 0:fe.restore()).catch(l=>{r.debug&&console.warn("[AgentWidget] IndexedDB not available for event stream:",l)});let ie={onCopy:l=>{var p,h;s.emit("message:copy",l),O!=null&&O.isClientTokenMode()&&O.submitMessageFeedback(l.id,"copy").catch(y=>{r.debug&&console.error("[AgentWidget] Failed to submit copy feedback:",y)}),(h=(p=r.messageActions)==null?void 0:p.onCopy)==null||h.call(p,l)},onFeedback:l=>{var p,h;s.emit("message:feedback",l),O!=null&&O.isClientTokenMode()&&O.submitMessageFeedback(l.messageId,l.type).catch(y=>{r.debug&&console.error("[AgentWidget] Failed to submit feedback:",y)}),(h=(p=r.messageActions)==null?void 0:p.onFeedback)==null||h.call(p,l)}},Le=(ic=r.statusIndicator)!=null?ic:{},at=l=>{var p,h,y,A;return l==="idle"?(p=Le.idleText)!=null?p:vn.idle:l==="connecting"?(h=Le.connectingText)!=null?h:vn.connecting:l==="connected"?(y=Le.connectedText)!=null?y:vn.connected:l==="error"?(A=Le.errorText)!=null?A:vn.error:vn[l]};function it(l,p,h,y){if(y==="idle"&&h.idleLink){l.textContent="";let A=document.createElement("a");A.href=h.idleLink,A.target="_blank",A.rel="noopener noreferrer",A.textContent=p,A.style.color="inherit",A.style.textDecoration="none",l.appendChild(A)}else l.textContent=p}let nt=Ju({config:r,showClose:B()}),{wrapper:Me,panel:de,pillRoot:Qe}=nt.shell,X=nt.panelElements,{container:le,body:xe,messagesWrapper:ze,suggestions:Lt,textarea:Se,sendButton:ue,sendButtonWrapper:gn,composerForm:Pt,statusText:nn,introTitle:fr,introSubtitle:fn,closeButton:je,iconHolder:S,headerTitle:pe,headerSubtitle:ke,header:Te,footer:Re,actionsRow:Ye,leftActions:Ke,rightActions:pt}=X,It=X.setSendButtonMode,U=X.micButton,rt=X.micButtonWrapper,K=X.attachmentButton,ce=X.attachmentButtonWrapper,Ee=X.attachmentInput,bt=X.attachmentPreviewsContainer;le.classList.add("persona-relative"),xe.classList.add("persona-relative");let Jt=12,Yt=()=>{var l;return(l=Oe.label)!=null?l:""},dn=()=>{var l;return(l=Oe.iconName)!=null?l:"arrow-down"},Rt=()=>Oe.enabled!==!1,Ze=()=>{var l;return(l=Ae.mode)!=null?l:"follow"},Wt=()=>{var l;return(l=Ae.anchorTopOffset)!=null?l:16},lt=b("button","persona-scroll-to-bottom-indicator persona-absolute persona-bottom-3 persona-left-1/2 persona-z-10 persona-flex persona-items-center persona-gap-1 persona-text-xs persona-transform persona--translate-x-1/2 persona-cursor-pointer");lt.type="button",lt.style.display="none",lt.setAttribute("data-persona-scroll-to-bottom","true");let Vt=b("span","persona-flex persona-items-center"),Xn=b("span",""),Cn=b("span","");Cn.setAttribute("data-persona-scroll-to-bottom-count",""),Cn.style.display="none",lt.append(Vt,Xn,Cn),le.appendChild(lt);let Zt=b("div","persona-stream-anchor-spacer");Zt.setAttribute("aria-hidden","true"),Zt.setAttribute("data-persona-anchor-spacer",""),Zt.style.flexShrink="0",Zt.style.pointerEvents="none",Zt.style.height="0px",xe.appendChild(Zt);let Pn=()=>{let p=Re.style.display==="none"?0:Re.offsetHeight;lt.style.bottom=`${p+Jt}px`};Pn();let hr=()=>{let l=!!Yt();lt.setAttribute("aria-label",Yt()||"Jump to latest"),lt.title=Yt(),lt.setAttribute("data-persona-scroll-to-bottom-has-label",l?"true":"false"),Vt.innerHTML="";let p=Ce(dn(),"14px","currentColor",2);p?(Vt.appendChild(p),Vt.style.display=""):Vt.style.display="none",Xn.textContent=Yt(),Xn.style.display=l?"":"none"};hr();let vt=null,Dn=null,yr=o.find(l=>l.renderHeader);if(yr!=null&&yr.renderHeader){let l=yr.renderHeader({config:r,defaultRenderer:()=>{let p=Wo({config:r,showClose:B()});return Ks(le,p,r),p.header},onClose:()=>_t(!1,"user")});if(l){let p=le.querySelector(".persona-border-b-persona-divider");p&&(p.replaceWith(l),Te=l,nt.header.element=l)}}let Lr=()=>{var p,h,y,A;if(!fe)return;if(ee=!0,!V&&fe&&(V=dm({buffer:fe,getFullHistory:()=>fe.getAllFromStore(),onClose:()=>ar(),config:r,plugins:o,getThroughput:()=>{var R;return(R=re==null?void 0:re.getMetric())!=null?R:{status:"idle"}}})),V&&(xe.style.display="none",(p=Re.parentNode)==null||p.insertBefore(V.element,Re),V.update()),ht){ht.style.boxShadow=`inset 0 0 0 1.5px ${Ln.actionIconColor}`;let R=(A=(y=(h=r.features)==null?void 0:h.eventStream)==null?void 0:y.classNames)==null?void 0:A.toggleButtonActive;R&&R.split(/\s+/).forEach(q=>q&&ht.classList.add(q))}let l=()=>{if(!ee)return;let R=Date.now();R-J>=200&&(V==null||V.update(),J=R),Ue=requestAnimationFrame(l)};J=0,Ue=requestAnimationFrame(l),Xe(),s.emit("eventStream:opened",{timestamp:Date.now()})},ar=()=>{var l,p,h;if(ee){if(ee=!1,V&&V.element.remove(),xe.style.display="",ht){ht.style.boxShadow="";let y=(h=(p=(l=r.features)==null?void 0:l.eventStream)==null?void 0:p.classNames)==null?void 0:h.toggleButtonActive;y&&y.split(/\s+/).forEach(A=>A&&ht.classList.remove(A))}Ue!==null&&(cancelAnimationFrame(Ue),Ue=null),Xe(),s.emit("eventStream:closed",{timestamp:Date.now()})}},ht=null;if(Pe){let l=(cc=(lc=r.features)==null?void 0:lc.eventStream)==null?void 0:cc.classNames,p="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full hover:persona-opacity-80 persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-1"+(l!=null&&l.toggleButton?" "+l.toggleButton:"");ht=b("button",p),ht.style.width="28px",ht.style.height="28px",ht.style.color=Ln.actionIconColor,ht.type="button",ht.setAttribute("aria-label","Event Stream"),ht.title="Event Stream";let h=Ce("activity","18px","currentColor",1.5);h&&ht.appendChild(h);let y=X.clearChatButtonWrapper,A=X.closeButtonWrapper,R=y||A;R&&R.parentNode===Te?Te.insertBefore(ht,R):Te.appendChild(ht),ht.addEventListener("click",()=>{ee?ar():Lr()})}let co=l=>{var A,R,q,F,H;let p=r.attachments;if(!(p!=null&&p.enabled))return;let h=(A=l.querySelector("[data-persona-composer-attachment-previews]"))!=null?A:l.querySelector(".persona-attachment-previews");if(!h){h=b("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2"),h.setAttribute("data-persona-composer-attachment-previews",""),h.style.display="none";let oe=l.querySelector("[data-persona-composer-form]");oe!=null&&oe.parentNode?oe.parentNode.insertBefore(h,oe):l.insertBefore(h,l.firstChild)}if(!((R=l.querySelector("[data-persona-composer-attachment-input]"))!=null?R:l.querySelector('input[type="file"]'))){let oe=b("input");oe.type="file",oe.setAttribute("data-persona-composer-attachment-input",""),oe.accept=((q=p.allowedTypes)!=null?q:$r).join(","),oe.multiple=((F=p.maxFiles)!=null?F:4)>1,oe.style.display="none",oe.setAttribute("aria-label",(H=p.buttonTooltipText)!=null?H:"Attach files"),l.appendChild(oe)}},br=o.find(l=>l.renderComposer);if(br!=null&&br.renderComposer){let l=r.composer,p=br.renderComposer({config:r,defaultRenderer:()=>Ka({config:r}).footer,onSubmit:h=>{var q;if(!O||O.isStreaming())return;let y=h.trim(),A=(q=vt==null?void 0:vt.hasAttachments())!=null?q:!1;if(!y&&!A)return;pl();let R;A&&(R=[],R.push(...vt.getContentParts()),y&&R.push(Ti(y))),O.sendMessage(y,{contentParts:R}),A&&vt.clearAttachments()},streaming:!1,disabled:!1,openAttachmentPicker:()=>{Ee==null||Ee.click()},models:l==null?void 0:l.models,selectedModelId:l==null?void 0:l.selectedModelId,onModelChange:h=>{r.composer={...r.composer,selectedModelId:h},r.agent&&(r.agent={...r.agent,model:h})},onVoiceToggle:((dc=r.voiceRecognition)==null?void 0:dc.enabled)===!0?()=>{Dn==null||Dn()}:void 0});p&&(nt.replaceComposer(p),Re=nt.composer.footer)}let po=l=>{let p=(...se)=>{for(let Y of se){let ye=l.querySelector(Y);if(ye)return ye}return null},h=l.querySelector("[data-persona-composer-form]"),y=l.querySelector("[data-persona-composer-input]"),A=l.querySelector("[data-persona-composer-submit]"),R=l.querySelector("[data-persona-composer-mic]"),q=l.querySelector("[data-persona-composer-status]");h&&(Pt=h),y&&(Se=y),A&&(ue=A),R&&(U=R,rt=R.parentElement),q&&(nn=q);let F=p("[data-persona-composer-suggestions]",".persona-mb-3.persona-flex.persona-flex-wrap.persona-gap-2");F&&(Lt=F);let H=p("[data-persona-composer-attachment-button]",".persona-attachment-button");H&&(K=H,ce=H.parentElement),Ee=p("[data-persona-composer-attachment-input]",'input[type="file"]'),bt=p("[data-persona-composer-attachment-previews]",".persona-attachment-previews");let oe=p("[data-persona-composer-actions]",".persona-widget-composer .persona-flex.persona-items-center.persona-justify-between");oe&&(Ye=oe)};co(Re),po(Re);let In=(fc=(pc=r.layout)==null?void 0:pc.contentMaxWidth)!=null?fc:D()?(gc=(mc=(uc=r.launcher)==null?void 0:uc.composerBar)==null?void 0:mc.contentMaxWidth)!=null?gc:"720px":void 0;if(In&&(ze.style.maxWidth=In,ze.style.marginLeft="auto",ze.style.marginRight="auto",ze.style.width="100%"),In&&Pt&&!D()&&(Pt.style.maxWidth=In,Pt.style.marginLeft="auto",Pt.style.marginRight="auto"),In&&Lt&&!D()&&(Lt.style.maxWidth=In,Lt.style.marginLeft="auto",Lt.style.marginRight="auto"),In&&bt&&!D()&&(bt.style.maxWidth=In,bt.style.marginLeft="auto",bt.style.marginRight="auto"),(hc=r.attachments)!=null&&hc.enabled&&Ee&&bt){vt=Fs.fromConfig(r.attachments),vt.setPreviewsContainer(bt),Ee.addEventListener("change",h=>{let y=h.target;vt==null||vt.handleFileSelect(y.files),y.value=""});let l=r.attachments.dropOverlay,p=Im(l);le.appendChild(p)}(()=>{var y,A;let l=(A=(y=r.layout)==null?void 0:y.slots)!=null?A:{},p=R=>{switch(R){case"body-top":return le.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6")||null;case"messages":return ze;case"footer-top":return Lt;case"composer":return Pt;case"footer-bottom":return nn;default:return null}},h=(R,q)=>{var F;switch(R){case"header-left":case"header-center":case"header-right":if(R==="header-left")Te.insertBefore(q,Te.firstChild);else if(R==="header-right")Te.appendChild(q);else{let H=Te.querySelector(".persona-flex-col");H?(F=H.parentNode)==null||F.insertBefore(q,H.nextSibling):Te.appendChild(q)}break;case"body-top":{let H=xe.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6");H?H.replaceWith(q):xe.insertBefore(q,xe.firstChild);break}case"body-bottom":xe.appendChild(q);break;case"footer-top":Lt.replaceWith(q);break;case"footer-bottom":nn.replaceWith(q);break;default:break}};for(let[R,q]of Object.entries(l))if(q)try{let F=q({config:r,defaultContent:()=>p(R)});F&&h(R,F)}catch(F){typeof console!="undefined"&&console.error(`[AgentWidget] Error rendering slot "${R}":`,F)}})();let zr=l=>{var q,F;let h=l.target.closest('button[data-expand-header="true"]');if(!h)return;let y=h.closest(".persona-reasoning-bubble, .persona-tool-bubble, .persona-approval-bubble");if(!y)return;let A=y.getAttribute("data-message-id");if(!A)return;let R=h.getAttribute("data-bubble-type");if(R==="reasoning")is.has(A)?is.delete(A):is.add(A),em(A,y);else if(R==="tool")ls.has(A)?ls.delete(A):ls.add(A),tm(A,y,r);else if(R==="approval"){let H=r.approval!==!1?r.approval:void 0,oe=((q=H==null?void 0:H.detailsDisplay)!=null?q:"collapsed")==="expanded",se=(F=Ga.get(A))!=null?F:oe;Ga.set(A,!se),sm(A,y,r)}Ar.delete(A)};ze.addEventListener("pointerdown",l=>{l.target.closest('button[data-expand-header="true"]')&&(l.preventDefault(),zr(l))}),ze.addEventListener("keydown",l=>{let p=l.target;(l.key==="Enter"||l.key===" ")&&p.closest('button[data-expand-header="true"]')&&(l.preventDefault(),zr(l))}),ze.addEventListener("copy",l=>{let{clipboardData:p}=l;if(!p)return;let h=ze.getRootNode(),y=typeof h.getSelection=="function"?h.getSelection():window.getSelection();if(!y||y.isCollapsed)return;let A=y.toString(),R=Wu(A);!R||R===A||(p.setData("text/plain",R),l.preventDefault())});let Pr=new Map,jr=null,Vr="idle",uo={idle:{icon:"volume-2",label:"Read aloud"},loading:{icon:"loader-circle",label:"Loading\u2026"},playing:{icon:"pause",label:"Pause"},paused:{icon:"play",label:"Resume"}},mo=(l,p)=>{let{icon:h,label:y}=uo[p];l.setAttribute("aria-label",y),l.title=y,l.setAttribute("aria-pressed",p==="idle"?"false":"true"),l.classList.toggle("persona-message-action-active",p!=="idle"),l.classList.toggle("persona-message-action-loading",p==="loading");let A=Ce(h,14,"currentColor",2);A&&(l.innerHTML="",l.appendChild(A))},Kr=()=>{ze.querySelectorAll('[data-action="read-aloud"]').forEach(p=>{var R;let h=p.closest("[data-actions-for]"),y=(R=h==null?void 0:h.getAttribute("data-actions-for"))!=null?R:null;mo(p,y&&y===jr?Vr:"idle")})};ze.addEventListener("click",l=>{var q;let h=l.target.closest(".persona-message-action-btn[data-action]");if(!h)return;l.preventDefault(),l.stopPropagation();let y=h.closest("[data-actions-for]");if(!y)return;let A=y.getAttribute("data-actions-for");if(!A)return;let R=h.getAttribute("data-action");if(R==="copy"){let H=O.getMessages().find(oe=>oe.id===A);if(H&&ie.onCopy){let oe=H.content||"";navigator.clipboard.writeText(oe).then(()=>{h.classList.add("persona-message-action-success");let se=Ce("check",14,"currentColor",2);se&&(h.innerHTML="",h.appendChild(se)),setTimeout(()=>{h.classList.remove("persona-message-action-success");let Y=Ce("copy",14,"currentColor",2);Y&&(h.innerHTML="",h.appendChild(Y))},2e3)}).catch(se=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to copy message:",se)}),ie.onCopy(H)}}else if(R==="read-aloud")O.toggleReadAloud(A);else if(R==="upvote"||R==="downvote"){let H=((q=Pr.get(A))!=null?q:null)===R,oe=R==="upvote"?"thumbs-up":"thumbs-down";if(H){Pr.delete(A),h.classList.remove("persona-message-action-active");let se=Ce(oe,14,"currentColor",2);se&&(h.innerHTML="",h.appendChild(se))}else{let se=R==="upvote"?"downvote":"upvote",Y=y.querySelector(`[data-action="${se}"]`);if(Y){Y.classList.remove("persona-message-action-active");let _e=Ce(se==="upvote"?"thumbs-up":"thumbs-down",14,"currentColor",2);_e&&(Y.innerHTML="",Y.appendChild(_e))}Pr.set(A,R),h.classList.add("persona-message-action-active");let ye=Ce(oe,14,"currentColor",2);ye&&(ye.setAttribute("fill","currentColor"),h.innerHTML="",h.appendChild(ye)),h.classList.remove("persona-message-action-pop"),h.offsetWidth,h.classList.add("persona-message-action-pop");let we=O.getMessages().find(tt=>tt.id===A);we&&ie.onFeedback&&ie.onFeedback({type:R,messageId:we.id,message:we})}}}),ze.addEventListener("click",l=>{let h=l.target.closest("button[data-approval-action]");if(!h)return;l.preventDefault(),l.stopPropagation();let y=h.closest(".persona-approval-bubble");if(!y)return;let A=y.getAttribute("data-message-id");if(!A)return;let R=h.getAttribute("data-approval-action");if(!R)return;let q=R==="approve"?"approved":"denied",H=O.getMessages().find(se=>se.id===A);if(!(H!=null&&H.approval))return;let oe=y.querySelector("[data-approval-buttons]");oe&&oe.querySelectorAll("button").forEach(Y=>{Y.disabled=!0,Y.style.opacity="0.5",Y.style.cursor="not-allowed"}),H.approval.toolType==="webmcp"?O.resolveWebMcpApproval(A,q):O.resolveApproval(H.approval,q)});let wt=null,Nn=null,Fn={artifacts:[],selectedId:null},An=!1,At={current:null};ze.addEventListener("click",l=>{var Y,ye,Ne,we,tt;let h=l.target.closest("[data-download-artifact]");if(!h)return;l.preventDefault(),l.stopPropagation();let y=h.getAttribute("data-download-artifact");if(!y||((Ne=(ye=(Y=r.features)==null?void 0:Y.artifacts)==null?void 0:ye.onArtifactAction)==null?void 0:Ne.call(ye,{type:"download",artifactId:y}))===!0)return;let R=O.getArtifactById(y),q=R==null?void 0:R.markdown,F=(R==null?void 0:R.title)||"artifact";if(!q){let _e=h.closest("[data-open-artifact]"),mt=_e==null?void 0:_e.closest("[data-message-id]"),ot=mt==null?void 0:mt.getAttribute("data-message-id");if(ot){let Ie=O.getMessages().find(qe=>qe.id===ot);if(Ie!=null&&Ie.rawContent)try{let qe=JSON.parse(Ie.rawContent);q=(we=qe==null?void 0:qe.props)==null?void 0:we.markdown,F=((tt=qe==null?void 0:qe.props)==null?void 0:tt.title)||F}catch{}}}if(!q)return;let H=new Blob([q],{type:"text/markdown"}),oe=URL.createObjectURL(H),se=document.createElement("a");se.href=oe,se.download=`${F}.md`,se.click(),URL.revokeObjectURL(oe)}),ze.addEventListener("click",l=>{var R,q,F;let h=l.target.closest("[data-open-artifact]");if(!h)return;let y=h.getAttribute("data-open-artifact");!y||((F=(q=(R=r.features)==null?void 0:R.artifacts)==null?void 0:q.onArtifactAction)==null?void 0:F.call(q,{type:"open",artifactId:y}))===!0||(l.preventDefault(),l.stopPropagation(),An=!1,O.selectArtifact(y),$n())}),ze.addEventListener("keydown",l=>{if(l.key!=="Enter"&&l.key!==" ")return;let p=l.target;p.hasAttribute("data-open-artifact")&&(l.preventDefault(),p.click())});let Jn=X.composerOverlay,Yn=(l,p,h)=>{var F,H,oe,se;let y=p.trim();if(!y||!At.current)return;let A=(F=l.getAttribute("data-tool-call-id"))!=null?F:"",R=h.source==="free-text";n.dispatchEvent(new CustomEvent("persona:askUserQuestion:answered",{detail:{toolUseId:A,answer:y,answers:h.structured,values:(H=h.values)!=null?H:h.source==="multi"?y.split(", "):[y],isFreeText:R,source:h.source},bubbles:!0,composed:!0})),Zo(Jn,A);let q=At.current.getMessages().find(Y=>{var ye;return((ye=Y.toolCall)==null?void 0:ye.id)===A});(oe=q==null?void 0:q.agentMetadata)!=null&&oe.awaitingLocalTool?At.current.resolveAskUserQuestion(q,(se=h.structured)!=null?se:y):At.current.sendMessage(y)},On=l=>{var A;let p=At.current;if(!p)return;let h=(A=l.getAttribute("data-tool-call-id"))!=null?A:"",y=p.getMessages().find(R=>{var q;return((q=R.toolCall)==null?void 0:q.id)===h});y&&p.persistAskUserQuestionProgress(y,{answers:ga(l,y),currentIndex:or(l)})},Gr=l=>Object.entries(l).map(([p,h])=>`${p}: ${Array.isArray(h)?h.join(", "):h}`).join(" | "),Ir=l=>{var A,R,q;if(((R=(A=r.features)==null?void 0:A.askUserQuestion)==null?void 0:R.groupedAutoAdvance)===!1)return;let p=or(l),h=Yo(l);if(p>=h-1)return;let y=(q=At.current)==null?void 0:q.getMessages().find(F=>{var H;return((H=F.toolCall)==null?void 0:H.id)===l.getAttribute("data-tool-call-id")});y&&(ha(l,y,r,p+1),On(l))};Jn.addEventListener("click",l=>{var R,q,F,H,oe,se,Y,ye,Ne,we,tt,_e,mt,ot;let h=l.target.closest("[data-ask-user-action]");if(!h)return;let y=h.closest("[data-persona-ask-sheet-for]");if(!y)return;let A=h.getAttribute("data-ask-user-action");if(l.preventDefault(),l.stopPropagation(),A==="dismiss"){let He=(R=y.getAttribute("data-tool-call-id"))!=null?R:"";n.dispatchEvent(new CustomEvent("persona:askUserQuestion:dismissed",{detail:{toolUseId:He},bubbles:!0,composed:!0})),Zo(Jn,He);let Ie=(q=At.current)==null?void 0:q.getMessages().find(qe=>{var Ve;return((Ve=qe.toolCall)==null?void 0:Ve.id)===He});(F=Ie==null?void 0:Ie.agentMetadata)!=null&&F.awaitingLocalTool&&((H=At.current)==null||H.markAskUserQuestionResolved(Ie),(oe=At.current)==null||oe.resolveAskUserQuestion(Ie,"(dismissed)"));return}if(A==="pick"){let He=h.getAttribute("data-option-label");if(!He)return;let Ie=y.getAttribute("data-multi-select")==="true",qe=so(y);if(qe&&Ie){let Ve=ko(y)[or(y)],yt=new Set(Array.isArray(Ve)?Ve:[]);yt.has(He)?yt.delete(He):yt.add(He),ao(y,Array.from(yt)),On(y);return}if(qe){ao(y,He),On(y),Ir(y);return}if(Ie){let Ve=h.getAttribute("aria-pressed")==="true";h.setAttribute("aria-pressed",Ve?"false":"true"),h.classList.toggle("persona-ask-pill-selected",!Ve);let yt=y.querySelector('[data-ask-user-action="submit-multi"]');yt&&(yt.disabled=vi(y).length===0);return}Yn(y,He,{source:"pick",values:[He]});return}if(A==="submit-multi"){let He=vi(y);if(He.length===0)return;Yn(y,He.join(", "),{source:"multi",values:He});return}if(A==="open-free-text"){let He=y.querySelector('[data-ask-free-text-row="true"]');if(He){He.classList.remove("persona-hidden");let Ie=He.querySelector('[data-ask-free-text-input="true"]');Ie==null||Ie.focus()}return}if(A==="focus-free-text"){let He=y.querySelector('[data-ask-free-text-input="true"]');He==null||He.focus();return}if(A==="submit-free-text"){let He=y.querySelector('[data-ask-free-text-input="true"]'),Ie=(se=He==null?void 0:He.value)!=null?se:"";if(!Ie.trim())return;if(so(y)){ao(y,Ie.trim()),On(y),Ir(y);return}Yn(y,Ie,{source:"free-text"});return}if(A==="next"||A==="back"){if(!At.current)return;let He=(Y=y.getAttribute("data-tool-call-id"))!=null?Y:"",Ie=At.current.getMessages().find(De=>{var Be;return((Be=De.toolCall)==null?void 0:Be.id)===He});if(!Ie)return;let qe=y.querySelector('[data-ask-free-text-input="true"]'),Ve=(Ne=(ye=qe==null?void 0:qe.value)==null?void 0:ye.trim())!=null?Ne:"";if(Ve){let De=ko(y)[or(y)];(typeof De!="string"||De!==Ve)&&ao(y,Ve)}let yt=A==="next"?1:-1,L=or(y)+yt;ha(y,Ie,r,L),On(y);return}if(A==="submit-all"){if(!At.current)return;let He=(we=y.getAttribute("data-tool-call-id"))!=null?we:"",Ie=At.current.getMessages().find(De=>{var Be;return((Be=De.toolCall)==null?void 0:Be.id)===He});if(!Ie)return;let qe=y.querySelector('[data-ask-free-text-input="true"]'),Ve=(_e=(tt=qe==null?void 0:qe.value)==null?void 0:tt.trim())!=null?_e:"";Ve&&ao(y,Ve);let yt=ga(y,Ie);At.current.persistAskUserQuestionProgress(Ie,{answers:yt,currentIndex:or(y)});let L=Gr(yt);Yn(y,L||"(submitted)",{source:"submit-all",structured:yt});return}if(A==="skip"){if(!At.current)return;let He=(mt=y.getAttribute("data-tool-call-id"))!=null?mt:"",Ie=At.current.getMessages().find(Be=>{var me;return((me=Be.toolCall)==null?void 0:me.id)===He});if(!Ie)return;let qe=so(y),Ve=or(y),yt=Yo(y),L=Ve>=yt-1;if(!qe){n.dispatchEvent(new CustomEvent("persona:askUserQuestion:dismissed",{detail:{toolUseId:He},bubbles:!0,composed:!0})),Zo(Jn,He),(ot=Ie.agentMetadata)!=null&&ot.awaitingLocalTool&&(At.current.markAskUserQuestionResolved(Ie),At.current.resolveAskUserQuestion(Ie,"(dismissed)"));return}ao(y,"");let De=y.querySelector('[data-ask-free-text-input="true"]');if(De&&(De.value=""),L){let Be=ga(y,Ie),me=Gr(Be);Yn(y,me||"(skipped)",{source:"submit-all",structured:Be});return}ha(y,Ie,r,Ve+1),On(y);return}}),Jn.addEventListener("keydown",l=>{var R;if(l.key!=="Enter")return;let h=l.target;if(!((R=h.matches)!=null&&R.call(h,'[data-ask-free-text-input="true"]')))return;let y=h.closest("[data-persona-ask-sheet-for]");if(!y)return;l.preventDefault();let A=h.value;if(A.trim()){if(so(y)){ao(y,A.trim()),On(y),Ir(y);return}Yn(y,A,{source:"free-text"})}});let Qr=l=>{if(!/^[1-9]$/.test(l.key)||l.metaKey||l.ctrlKey||l.altKey)return;let p=l.target;if((p==null?void 0:p.tagName)==="INPUT"||(p==null?void 0:p.tagName)==="TEXTAREA"||p!=null&&p.isContentEditable)return;let h=Jn.querySelector("[data-persona-ask-sheet-for]");if(!h||h.getAttribute("data-ask-layout")!=="rows"||h.getAttribute("data-multi-select")==="true")return;let y=Number(l.key),R=h.querySelectorAll('[data-ask-pill-list="true"] [data-ask-user-action="pick"], [data-ask-pill-list="true"] [data-ask-user-action="focus-free-text"]')[y-1];R&&(l.preventDefault(),R.click())};document.addEventListener("keydown",Qr);let _n=null,Ht=null,Sn=null,Zn=null,Xr=()=>{};function Wr(){Zn==null||Zn(),Zn=null}let Jr=()=>{var q;if(!_n||!Ht)return;let l=n.classList.contains("persona-artifact-appearance-seamless"),h=((q=n.ownerDocument.defaultView)!=null?q:window).innerWidth<=640;if(!l||n.classList.contains("persona-artifact-narrow-host")||h){Ht.style.removeProperty("position"),Ht.style.removeProperty("left"),Ht.style.removeProperty("top"),Ht.style.removeProperty("bottom"),Ht.style.removeProperty("width"),Ht.style.removeProperty("z-index");return}let y=_n.firstElementChild;if(!y||y===Ht)return;let A=10;Ht.style.position="absolute",Ht.style.top="0",Ht.style.bottom="0",Ht.style.width=`${A}px`,Ht.style.zIndex="5";let R=y.offsetWidth-A/2;Ht.style.left=`${Math.max(0,R)}px`},vr=()=>{},$n=()=>{var h,y,A,R,q;if(!wt||!sr(r))return;Ja(n,r),Ya(n,r),vr();let l=(R=(A=(y=(h=r.features)==null?void 0:h.artifacts)==null?void 0:y.layout)==null?void 0:A.narrowHostMaxWidth)!=null?R:520,p=de.getBoundingClientRect().width||0;n.classList.toggle("persona-artifact-narrow-host",p>0&&p<=l),wt.update(Fn),An?(wt.setMobileOpen(!1),wt.element.classList.add("persona-hidden"),(q=wt.backdrop)==null||q.classList.add("persona-hidden")):Fn.artifacts.length>0&&(wt.element.classList.remove("persona-hidden"),wt.setMobileOpen(!0)),Xr()};if(sr(r)){de.style.position="relative";let l=b("div","persona-flex persona-flex-1 persona-flex-col persona-min-w-0 persona-min-h-0"),p=b("div","persona-flex persona-h-full persona-w-full persona-min-h-0 persona-artifact-split-root");l.appendChild(le),wt=mm(r,{onSelect:h=>{var y;return(y=At.current)==null?void 0:y.selectArtifact(h)},onDismiss:()=>{An=!0,$n()}}),wt.element.classList.add("persona-hidden"),_n=p,p.appendChild(l),p.appendChild(wt.element),wt.backdrop&&de.appendChild(wt.backdrop),de.appendChild(p),Xr=()=>{var y,A,R,q;if(!_n||!wt)return;if(!(((R=(A=(y=r.features)==null?void 0:y.artifacts)==null?void 0:A.layout)==null?void 0:R.resizable)===!0)){Sn==null||Sn(),Sn=null,Wr(),Ht&&(Ht.remove(),Ht=null),wt.element.style.removeProperty("width"),wt.element.style.removeProperty("maxWidth");return}if(!Ht){let F=b("div","persona-artifact-split-handle persona-shrink-0 persona-h-full");F.setAttribute("role","separator"),F.setAttribute("aria-orientation","vertical"),F.setAttribute("aria-label","Resize artifacts panel"),F.tabIndex=0;let H=n.ownerDocument,oe=(q=H.defaultView)!=null?q:window,se=Y=>{var mt,ot;if(!wt||Y.button!==0||n.classList.contains("persona-artifact-narrow-host")||oe.innerWidth<=640)return;Y.preventDefault(),Wr();let ye=Y.clientX,Ne=wt.element.getBoundingClientRect().width,we=(ot=(mt=r.features)==null?void 0:mt.artifacts)==null?void 0:ot.layout,tt=He=>{let Ie=_n.getBoundingClientRect().width,qe=n.classList.contains("persona-artifact-appearance-seamless"),Ve=qe?0:ym(_n,oe),yt=qe?0:F.getBoundingClientRect().width||6,L=Ne-(He.clientX-ye),De=bm(L,Ie,Ve,yt,we==null?void 0:we.resizableMinWidth,we==null?void 0:we.resizableMaxWidth);wt.element.style.width=`${De}px`,wt.element.style.maxWidth="none",Jr()},_e=()=>{H.removeEventListener("pointermove",tt),H.removeEventListener("pointerup",_e),H.removeEventListener("pointercancel",_e),Zn=null;try{F.releasePointerCapture(Y.pointerId)}catch{}};Zn=_e,H.addEventListener("pointermove",tt),H.addEventListener("pointerup",_e),H.addEventListener("pointercancel",_e);try{F.setPointerCapture(Y.pointerId)}catch{}};F.addEventListener("pointerdown",se),Ht=F,_n.insertBefore(F,wt.element),Sn=()=>{F.removeEventListener("pointerdown",se)}}if(Ht){let F=Fn.artifacts.length>0&&!An;Ht.classList.toggle("persona-hidden",!F),Jr()}},vr=()=>{var oe,se,Y,ye,Ne,we,tt,_e,mt,ot,He,Ie,qe,Ve;if(!T||!wt||((se=(oe=r.launcher)==null?void 0:oe.sidebarMode)!=null?se:!1)||mn(r)&&mr(r).reveal==="emerge")return;let y=(Y=n.ownerDocument.defaultView)!=null?Y:window,A=(Ne=(ye=r.launcher)==null?void 0:ye.mobileFullscreen)!=null?Ne:!0,R=(tt=(we=r.launcher)==null?void 0:we.mobileBreakpoint)!=null?tt:640;if(A&&y.innerWidth<=R||!hm(r,T))return;let q=(ot=(mt=(_e=r.launcher)==null?void 0:_e.width)!=null?mt:r.launcherWidth)!=null?ot:Ur,F=(Ve=(qe=(Ie=(He=r.features)==null?void 0:He.artifacts)==null?void 0:Ie.layout)==null?void 0:qe.expandedPanelWidth)!=null?Ve:"min(720px, calc(100vw - 24px))";Fn.artifacts.length>0&&!An?(de.style.width=F,de.style.maxWidth=F):(de.style.width=q,de.style.maxWidth=q)},typeof ResizeObserver!="undefined"&&(Nn=new ResizeObserver(()=>{$n()}),Nn.observe(de))}else de.appendChild(le),D()&&Qe&&(X.peekBanner&&Qe.appendChild(X.peekBanner),Qe.appendChild(Re));n.appendChild(Me),Qe&&n.appendChild(Qe);let he=()=>{var De,Be,me,Nt,Bt,qt,xt,$t,Vn,Xt,Ge,Et,tn,rr,Kn,bo,vo,Vo,Ko,zt,xo,no,ro,Or,wo,dr,Je,sn;if(D()){de.style.width="100%",de.style.maxWidth="100%";let Ot=(Be=(De=r.launcher)==null?void 0:De.composerBar)!=null?Be:{},Ft=Me.dataset.state==="expanded",gt=(me=Ot.expandedSize)!=null?me:"anchored";if(!(Ft&>!=="fullscreen")){le.style.background="",le.style.border="",le.style.borderRadius="",le.style.overflow="",le.style.boxShadow="";return}let Ct=(Bt=(Nt=r.theme)==null?void 0:Nt.components)==null?void 0:Bt.panel,yn=La(r),Tn=(En,Co)=>{var ws;return En==null||En===""?Co:(ws=os(yn,En))!=null?ws:En},Er="1px solid var(--persona-border)",cn="var(--persona-palette-shadows-xl, 0 25px 50px -12px rgba(0, 0, 0, 0.25))",Mn="var(--persona-panel-radius, var(--persona-radius-xl, 0.75rem))";le.style.background="var(--persona-surface, #ffffff)",le.style.border=Tn(Ct==null?void 0:Ct.border,Er),le.style.borderRadius=Tn(Ct==null?void 0:Ct.borderRadius,Mn),le.style.boxShadow=Tn(Ct==null?void 0:Ct.shadow,cn),le.style.overflow="hidden";return}let l=mn(r),p=(xt=(qt=r.launcher)==null?void 0:qt.sidebarMode)!=null?xt:!1,h=l||p||((Vn=($t=r.launcher)==null?void 0:$t.fullHeight)!=null?Vn:!1),y=((Xt=r.launcher)==null?void 0:Xt.enabled)===!1,A=(Et=(Ge=r.theme)==null?void 0:Ge.components)==null?void 0:Et.panel,R=La(r),q=(Ot,Ft)=>{var gt;return Ot==null||Ot===""?Ft:(gt=os(R,Ot))!=null?gt:Ot},F=(tn=n.ownerDocument.defaultView)!=null?tn:window,H=(Kn=(rr=r.launcher)==null?void 0:rr.mobileFullscreen)!=null?Kn:!0,oe=(vo=(bo=r.launcher)==null?void 0:bo.mobileBreakpoint)!=null?vo:640,se=F.innerWidth<=oe,Y=H&&se&&T,ye=(Ko=(Vo=r.launcher)==null?void 0:Vo.position)!=null?Ko:"bottom-left",Ne=ye==="bottom-left"||ye==="top-left",we=(xo=(zt=r.launcher)==null?void 0:zt.zIndex)!=null?xo:xn,tt=p||Y?"none":"1px solid var(--persona-border)",_e=Y?"none":p?Ne?"var(--persona-palette-shadows-sidebar-left, 2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-sidebar-right, -2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-xl, 0 25px 50px -12px rgba(0, 0, 0, 0.25))";l&&!Y&&(_e="none",tt="none");let mt=p||Y?"0":"var(--persona-panel-radius, var(--persona-radius-xl, 0.75rem))",ot=q(A==null?void 0:A.border,tt),He=q(A==null?void 0:A.shadow,_e),Ie=q(A==null?void 0:A.borderRadius,mt),qe=xe.scrollTop;n.style.cssText="",Me.style.cssText="",de.style.cssText="",le.style.cssText="",xe.style.cssText="",Re.style.cssText="";let Ve=()=>{var Ft;if(qe<=0)return;((Ft=xe.ownerDocument.defaultView)!=null?Ft:window).requestAnimationFrame(()=>{if(xe.scrollTop===qe)return;let gt=xe.scrollHeight-xe.clientHeight;gt<=0||(xe.scrollTop=Math.min(qe,gt))})};if(Y){Me.classList.remove("persona-bottom-6","persona-right-6","persona-left-6","persona-top-6","persona-bottom-4","persona-right-4","persona-left-4","persona-top-4"),Me.style.cssText=`
|
|
33
33
|
position: fixed !important;
|
|
34
34
|
inset: 0 !important;
|
|
35
35
|
width: 100% !important;
|
|
@@ -39,9 +39,9 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
39
39
|
padding: 0 !important;
|
|
40
40
|
display: flex !important;
|
|
41
41
|
flex-direction: column !important;
|
|
42
|
-
z-index: ${
|
|
42
|
+
z-index: ${we} !important;
|
|
43
43
|
background-color: var(--persona-surface, #ffffff) !important;
|
|
44
|
-
`,
|
|
44
|
+
`,de.style.cssText=`
|
|
45
45
|
position: relative !important;
|
|
46
46
|
display: flex !important;
|
|
47
47
|
flex-direction: column !important;
|
|
@@ -54,7 +54,7 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
54
54
|
padding: 0 !important;
|
|
55
55
|
box-shadow: none !important;
|
|
56
56
|
border-radius: 0 !important;
|
|
57
|
-
`,
|
|
57
|
+
`,le.style.cssText=`
|
|
58
58
|
display: flex !important;
|
|
59
59
|
flex-direction: column !important;
|
|
60
60
|
flex: 1 1 0% !important;
|
|
@@ -65,20 +65,20 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
65
65
|
overflow: hidden !important;
|
|
66
66
|
border-radius: 0 !important;
|
|
67
67
|
border: none !important;
|
|
68
|
-
`,
|
|
68
|
+
`,xe.style.flex="1 1 0%",xe.style.minHeight="0",xe.style.overflowY="auto",Re.style.flexShrink="0",I=!0,Ve();return}let yt=(ro=(no=r==null?void 0:r.launcher)==null?void 0:no.width)!=null?ro:r==null?void 0:r.launcherWidth,L=yt!=null?yt:Ur;if(!p&&!l)y&&h?(de.style.width="100%",de.style.maxWidth="100%"):(de.style.width=L,de.style.maxWidth=L);else if(l)if(mr(r).reveal==="emerge"){let Ft=mr(r).width;de.style.width=Ft,de.style.maxWidth=Ft}else de.style.width="100%",de.style.maxWidth="100%";if(vr(),de.style.boxShadow=He,de.style.borderRadius=Ie,le.style.border=ot,le.style.borderRadius=Ie,l&&!Y&&(A==null?void 0:A.border)===void 0&&(le.style.border="none",mr(r).side==="right"?le.style.borderLeft="1px solid var(--persona-border)":le.style.borderRight="1px solid var(--persona-border)"),h&&(n.style.display="flex",n.style.flexDirection="column",n.style.height="100%",n.style.minHeight="0",y&&(n.style.width="100%"),Me.style.display="flex",Me.style.flexDirection="column",Me.style.flex="1 1 0%",Me.style.minHeight="0",Me.style.maxHeight="100%",Me.style.height="100%",y&&(Me.style.overflow="hidden"),de.style.display="flex",de.style.flexDirection="column",de.style.flex="1 1 0%",de.style.minHeight="0",de.style.maxHeight="100%",de.style.height="100%",de.style.overflow="hidden",le.style.display="flex",le.style.flexDirection="column",le.style.flex="1 1 0%",le.style.minHeight="0",le.style.maxHeight="100%",le.style.overflow="hidden",xe.style.flex="1 1 0%",xe.style.minHeight="0",xe.style.overflowY="auto",Re.style.flexShrink="0"),Me.classList.remove("persona-bottom-6","persona-right-6","persona-left-6","persona-top-6","persona-bottom-4","persona-right-4","persona-left-4","persona-top-4"),!p&&!y&&!l&&((Or=gr[ye])!=null?Or:gr["bottom-right"]).split(" ").forEach(Ft=>Me.classList.add(Ft)),p){let Ot=(dr=(wo=r.launcher)==null?void 0:wo.sidebarWidth)!=null?dr:"420px";Me.style.cssText=`
|
|
69
69
|
position: fixed !important;
|
|
70
70
|
top: 0 !important;
|
|
71
71
|
bottom: 0 !important;
|
|
72
|
-
width: ${
|
|
72
|
+
width: ${Ot} !important;
|
|
73
73
|
height: 100vh !important;
|
|
74
74
|
max-height: 100vh !important;
|
|
75
75
|
margin: 0 !important;
|
|
76
76
|
padding: 0 !important;
|
|
77
77
|
display: flex !important;
|
|
78
78
|
flex-direction: column !important;
|
|
79
|
-
z-index: ${
|
|
80
|
-
${
|
|
81
|
-
`,
|
|
79
|
+
z-index: ${we} !important;
|
|
80
|
+
${Ne?"left: 0 !important; right: auto !important;":"left: auto !important; right: 0 !important;"}
|
|
81
|
+
`,de.style.cssText=`
|
|
82
82
|
position: relative !important;
|
|
83
83
|
display: flex !important;
|
|
84
84
|
flex-direction: column !important;
|
|
@@ -89,9 +89,9 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
89
89
|
min-height: 0 !important;
|
|
90
90
|
margin: 0 !important;
|
|
91
91
|
padding: 0 !important;
|
|
92
|
-
box-shadow: ${
|
|
93
|
-
border-radius: ${
|
|
94
|
-
`,
|
|
92
|
+
box-shadow: ${He} !important;
|
|
93
|
+
border-radius: ${Ie} !important;
|
|
94
|
+
`,de.style.setProperty("width","100%","important"),de.style.setProperty("max-width","100%","important"),le.style.cssText=`
|
|
95
95
|
display: flex !important;
|
|
96
96
|
flex-direction: column !important;
|
|
97
97
|
flex: 1 1 0% !important;
|
|
@@ -100,13 +100,13 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
100
100
|
min-height: 0 !important;
|
|
101
101
|
max-height: 100% !important;
|
|
102
102
|
overflow: hidden !important;
|
|
103
|
-
border-radius: ${
|
|
104
|
-
border: ${
|
|
105
|
-
`,
|
|
103
|
+
border-radius: ${Ie} !important;
|
|
104
|
+
border: ${ot} !important;
|
|
105
|
+
`,Re.style.cssText=`
|
|
106
106
|
flex-shrink: 0 !important;
|
|
107
107
|
border-top: none !important;
|
|
108
108
|
padding: 8px 16px 12px 16px !important;
|
|
109
|
-
`}if(!y&&!l){let qt="max-height: -moz-available !important; max-height: stretch !important;",$t=p?"":"padding-top: 1.25em !important;",ft=p?"":`z-index: ${(mn=(tt=r.launcher)==null?void 0:tt.zIndex)!=null?mn:Mn} !important;`;Me.style.cssText+=qt+$t+ft}Qe()};ye(),ys(n,r),Ai(n,r),Si(n,r);let pt=[];pt.push(()=>{document.removeEventListener("keydown",no)});let en=null,pn=null;pt.push(()=>{en==null||en(),en=null,pn==null||pn(),pn=null}),zn&&pt.push(()=>{zn==null||zn.disconnect(),zn=null}),pt.push(()=>{In==null||In(),In=null,_r(),Nt&&(Nt.remove(),Nt=null),wt==null||wt.element.style.removeProperty("width"),wt==null||wt.element.style.removeProperty("maxWidth")}),He&&pt.push(()=>{Ie!==null&&(cancelAnimationFrame(Ie),Ie=null),V==null||V.destroy(),V=null,ge==null||ge.destroy(),ge=null,G=null});let Mr=null,Ss=()=>{Mr&&(Mr(),Mr=null),r.colorScheme==="auto"&&(Mr=qu(()=>{ys(n,r)}))};Ss(),pt.push(()=>{Mr&&(Mr(),Mr=null)});let $r=(kc=r.features)==null?void 0:kc.streamAnimation;if($r!=null&&$r.type&&$r.type!=="none"){let l=sa($r.type,$r.plugins);l&&(el(l,n),pt.push(()=>em(n)))}let So=hm(Ke),Er=null,O,Vo=l=>{var y,A;if(!O)return;let p=l!=null?l:O.getMessages(),h=((A=(y=r.features)==null?void 0:y.suggestReplies)==null?void 0:A.enabled)!==!1?lu(p):null;h?So.render(h,O,Pe,p,r.suggestionChipsConfig,{agentPushed:!0}):p.some(H=>H.role==="user")?So.render([],O,Pe,p):So.render(r.suggestionChips,O,Pe,p,r.suggestionChipsConfig)},kr=!1,Lr=ju(),qr=new Map,Pr=new Map,mr=new Map,Ko=0,ba=is()!==null,Qn=oi(),Xn=0,gr=null,fr=!1,To=!1,Ur=0,Cn=null,Ir=null,Go=!1,Mo=!1,Qo=null,va=4,Xo=24,xa=80,Jo=new Map,ht={active:!1,manuallyDeactivated:!1,lastUserMessageWasVoice:!1,lastUserMessageId:null},Ts=(Pc=(Lc=r.voiceRecognition)==null?void 0:Lc.autoResume)!=null?Pc:!1,sr=l=>{s.emit("voice:state",{active:ht.active,source:l,timestamp:Date.now()})},_n=()=>{m(l=>({...l,voiceState:{active:ht.active,timestamp:Date.now(),manuallyDeactivated:ht.manuallyDeactivated}}))},wa=()=>{var y,A;if(((y=r.voiceRecognition)==null?void 0:y.enabled)===!1)return;let l=xl(d.voiceState),p=!!l.active,h=Number((A=l.timestamp)!=null?A:0);ht.manuallyDeactivated=!!l.manuallyDeactivated,p&&Date.now()-h<lv&&setTimeout(()=>{var H,q;ht.active||(ht.manuallyDeactivated=!1,((q=(H=r.voiceRecognition)==null?void 0:H.provider)==null?void 0:q.type)==="runtype"?O.toggleVoice().then(()=>{ht.active=O.isVoiceActive(),sr("restore"),O.isVoiceActive()&&ns()}):Ia("restore"))},1e3)},Ca=()=>O?Om(O.getMessages()).filter(l=>!l.__skipPersist):[];function Yo(l){if(!(i!=null&&i.save))return;let h={messages:l?Om(l):O?Ca():[],metadata:d,artifacts:jn.artifacts,selectedArtifactId:jn.selectedId};try{let y=i.save(h);y instanceof Promise&&y.catch(A=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to persist state:",A)})}catch(y){typeof console!="undefined"&&console.error("[AgentWidget] Failed to persist state:",y)}}let zr=null,Ms=()=>Me.querySelector("#persona-scroll-container")||Ee,so=()=>{zr!==null&&(cancelAnimationFrame(zr),zr=null),fr=!1},Es=()=>{gr!==null&&(cancelAnimationFrame(gr),gr=null),To=!1,so()},ks=()=>{Ur>0?(Ln.textContent=String(Ur),Ln.style.display="",dt.setAttribute("aria-label",`${on()||"Jump to latest"} (${Ur} new)`)):(Ln.textContent="",Ln.style.display="none",dt.setAttribute("aria-label",on()||"Jump to latest"))},Ls=()=>{Ur!==0&&(Ur=0,ks())},Ps=()=>nt()==="follow"?!Qn.isFollowing():!$o(Ee,Xo),$n=()=>{if(!Dt()||ae){dt.parentNode&&dt.remove(),dt.style.display="none";return}dt.parentNode!==ue&&ue.appendChild(dt),Fn();let p=Xr(Ee)>0&&Ps();p||Ls(),dt.style.display=p?"":"none"},Zo=()=>{Qn.pause()&&(Es(),$n())},Wr=()=>{Qn.resume(),Ls(),$n()},Rr=(l=!1)=>{nt()==="follow"&&Qn.isFollowing()&&(!l&&!kr||(gr!==null&&(cancelAnimationFrame(gr),gr=null),To=!0,gr=requestAnimationFrame(()=>{gr=null,To=!1,Qn.isFollowing()&&Aa(Ms(),l?220:140)})))},Is=(l,p,h,y=()=>!0)=>{let A=l.scrollTop,H=p(),q=H-A;so();let F=performance.now();fr=!0;let R=de=>1-Math.pow(1-de,3),ce=de=>{if(!y()){so();return}let Y=p();Y!==H&&(H=Y,q=H-A);let ve=de-F,De=Math.min(ve/h,1),Ce=R(De),rt=A+q*Ce;l.scrollTop=rt,Xn=l.scrollTop,De<1?zr=requestAnimationFrame(ce):(l.scrollTop=H,Xn=l.scrollTop,zr=null,fr=!1)};zr=requestAnimationFrame(ce)},Aa=(l,p=500)=>{let h=Xr(l)-l.scrollTop;if(Math.abs(h)<1){Xn=l.scrollTop;return}if(Math.abs(h)>=xa){so(),fr=!0,l.scrollTop=Xr(l),Xn=l.scrollTop,fr=!1;return}Is(l,()=>Xr(l),p,()=>Qn.isFollowing())},Ws=()=>{let l=Ms();fr=!0,l.scrollTop=Xr(l),Xn=l.scrollTop,fr=!1,$n()},Rs=l=>{sn.style.height=`${Math.max(0,Math.round(l))}px`,Cn&&(Cn.spacerHeight=Math.max(0,l))},Eo=()=>{Ir!==null&&(cancelAnimationFrame(Ir),Ir=null),so(),Cn=null,sn.style.height="0px"},Sa=l=>{Ir!==null&&cancelAnimationFrame(Ir),Ir=requestAnimationFrame(()=>{var ce;Ir=null;let p=typeof CSS!="undefined"&&typeof CSS.escape=="function"?CSS.escape(l):l.replace(/"/g,'\\"'),h=Ee.querySelector(`[data-message-id="${p}"]`);if(!h)return;let y=0,A=h;for(;A&&A!==Ee;)y+=A.offsetTop,A=A.offsetParent;let H=(ce=Cn==null?void 0:Cn.spacerHeight)!=null?ce:0,q=Ee.scrollHeight-H,{targetScrollTop:F,spacerHeight:R}=Xu({anchorOffsetTop:y,topOffset:Bt(),viewportHeight:Ee.clientHeight,contentHeight:q});Cn={initialSpacerHeight:R,contentHeightAtAnchor:q,spacerHeight:R},Rs(R),Is(Ee,()=>F,220)})},Ta=()=>{if(nt()==="follow"){if(!Qn.isFollowing()||$o(Ee,1))return;Rr(!kr);return}if(Cn&&Cn.initialSpacerHeight>0){let l=Ee.scrollHeight-Cn.spacerHeight,p=Ju({initialSpacerHeight:Cn.initialSpacerHeight,contentHeightAtAnchor:Cn.contentHeightAtAnchor,currentContentHeight:l});p!==Cn.spacerHeight&&Rs(p)}$n()},Ma=l=>{let p=nt();p==="follow"?(Wr(),Rr(!0)):p==="anchor-top"&&Sa(l)},Ea=l=>{let p=new Map;l.forEach(h=>{let y=Jo.get(h.id);p.set(h.id,{streaming:h.streaming,role:h.role}),!y&&h.role==="assistant"&&(s.emit("assistant:message",h),!Mo&&nt()!=="anchor-top"&&Ps()&&(Ur+=1,ks(),$n())),h.role==="assistant"&&(y!=null&&y.streaming)&&h.streaming===!1&&s.emit("assistant:complete",h),h.variant==="approval"&&h.approval&&(y?h.approval.status!=="pending"&&s.emit("approval:resolved",{approval:h.approval,decision:h.approval.status}):s.emit("approval:requested",{approval:h.approval,message:h}))}),Jo.clear(),p.forEach((h,y)=>{Jo.set(y,h)})},ka=(l,p,h)=>{var lt,We,Le,ze,Qe,bt;let y=document.createElement("div"),H=(()=>{var Be;let L=o.find(Re=>Re.renderLoadingIndicator);if(L!=null&&L.renderLoadingIndicator)return L.renderLoadingIndicator;if((Be=r.loadingIndicator)!=null&&Be.render)return r.loadingIndicator.render})(),q=(L,Be)=>Be==null?!1:typeof Be=="string"?(L.textContent=Be,!0):(L.appendChild(Be),!0),F=new Set,R=new Set,ce=o.some(L=>L.renderAskUserQuestion),de=[],Y=[],ve=r.enableComponentStreaming!==!1,De=o.some(L=>L.renderApproval)&&r.approval!==!1,Ce=[];if(p.forEach(L=>{var Ye,Pt,cn,cr,Yn,ko,Lo,os,ss,Gt,Po,mo,go,Vr,Io,hr;F.add(L.id);let Be=ce&&Do(L),Re=De&&L.variant==="approval"&&!!L.approval,me=!Be&&L.role==="assistant"&&!L.variant&&ve&&Bm(L);if(!Re&&mr.has(L.id)){let tt=l.querySelector(`#wrapper-${L.id}`);tt==null||tt.removeAttribute("data-preserve-runtime"),mr.delete(L.id)}if(!me&&Pr.has(L.id)){let tt=l.querySelector(`#wrapper-${L.id}`);tt==null||tt.removeAttribute("data-preserve-runtime"),Pr.delete(L.id)}let _t=Do(L)?`:${(Ye=L.agentMetadata)!=null&&Ye.askUserQuestionAnswered?"a":"u"}:${(Pt=L.agentMetadata)!=null&&Pt.askUserQuestionAnswers?Object.keys(L.agentMetadata.askUserQuestionAnswers).length:0}`:"",Ft=zu(L,Ko)+_t,Kt=Be||Re||me?null:Vu(Lr,L.id,Ft);if(Kt){y.appendChild(Kt.cloneNode(!0)),Do(L)&&((cn=L.toolCall)!=null&&cn.id)&&((cr=L.agentMetadata)==null?void 0:cr.awaitingLocalTool)===!0&&!((Yn=L.agentMetadata)!=null&&Yn.askUserQuestionAnswered)&&(R.add(L.toolCall.id),_a(L,r,J.composerOverlay));return}let xt=null,zt=o.find(tt=>!!(L.variant==="reasoning"&&tt.renderReasoning||L.variant==="tool"&&tt.renderToolCall||!L.variant&&tt.renderMessage)),Jn=(ko=r.layout)==null?void 0:ko.messages;if(Do(L)&&((Lo=L.agentMetadata)==null?void 0:Lo.askUserQuestionAnswered)===!0){qr.delete(L.id);let tt=l.querySelector(`#wrapper-${L.id}`);tt==null||tt.removeAttribute("data-preserve-runtime");return}if(qi(L)&&((ss=(os=r.features)==null?void 0:os.suggestReplies)==null?void 0:ss.enabled)!==!1)return;if(Do(L)&&((Po=(Gt=r.features)==null?void 0:Gt.askUserQuestion)==null?void 0:Po.enabled)!==!1){let tt=o.find(mn=>typeof mn.renderAskUserQuestion=="function");if(tt&&Tt.current){let mn=qr.get(L.id),qt=mn!==Ft,$t=null;if(qt){let{payload:At,complete:An}=cs(L),Rn=L.id,Br=()=>{var yn;return(yn=Tt.current)==null?void 0:yn.getMessages().find(Hn=>Hn.id===Rn)};$t=tt.renderAskUserQuestion({message:L,payload:At,complete:An,resolve:yn=>{var Bn;let Hn=Br();Hn&&((Bn=Tt.current)==null||Bn.resolveAskUserQuestion(Hn,yn))},dismiss:()=>{var Hn,Bn,Wo;let yn=Br();(Hn=yn==null?void 0:yn.agentMetadata)!=null&&Hn.awaitingLocalTool&&((Bn=Tt.current)==null||Bn.markAskUserQuestionResolved(yn),(Wo=Tt.current)==null||Wo.resolveAskUserQuestion(yn,"(dismissed)"))},config:r})}let ft=mn!=null;if(qt&&$t===null&&!ft){((mo=L.agentMetadata)==null?void 0:mo.awaitingLocalTool)===!0&&!((go=L.agentMetadata)!=null&&go.askUserQuestionAnswered)&&(R.add(L.toolCall.id),_a(L,r,J.composerOverlay));return}let Qt=document.createElement("div");Qt.className="persona-flex",Qt.id=`wrapper-${L.id}`,Qt.setAttribute("data-wrapper-id",L.id),Qt.setAttribute("data-ask-plugin-stub","true"),Qt.setAttribute("data-preserve-runtime","true"),y.appendChild(Qt),de.push({messageId:L.id,fingerprint:Ft,bubble:$t});return}else{((Vr=L.agentMetadata)==null?void 0:Vr.awaitingLocalTool)===!0&&!((Io=L.agentMetadata)!=null&&Io.askUserQuestionAnswered)&&(R.add(L.toolCall.id),_a(L,r,J.composerOverlay));return}}else if(Re){let tt=o.find(ft=>typeof ft.renderApproval=="function"),qt=mr.get(L.id)!==Ft,$t=null;if(qt&&(tt!=null&&tt.renderApproval)){let ft=L.id,Qt=(At,An)=>{var Br,yn,Hn;let Rn=(Br=Tt.current)==null?void 0:Br.getMessages().find(Bn=>Bn.id===ft);Rn!=null&&Rn.approval&&(Rn.approval.toolType==="webmcp"?(yn=Tt.current)==null||yn.resolveWebMcpApproval(Rn.id,At):(Hn=Tt.current)==null||Hn.resolveApproval(Rn.approval,At,An))};$t=tt.renderApproval({message:L,defaultRenderer:()=>wi(L,r),config:r,approve:At=>Qt("approved",At),deny:At=>Qt("denied",At)})}if(qt&&$t===null){let ft=l.querySelector(`#wrapper-${L.id}`);ft==null||ft.removeAttribute("data-preserve-runtime"),mr.delete(L.id),xt=wi(L,r)}else{let ft=document.createElement("div");ft.className="persona-flex",ft.id=`wrapper-${L.id}`,ft.setAttribute("data-wrapper-id",L.id),ft.setAttribute("data-approval-plugin-stub","true"),ft.setAttribute("data-preserve-runtime","true"),y.appendChild(ft),Ce.push({messageId:L.id,fingerprint:Ft,bubble:$t});return}}else if(zt)if(L.variant==="reasoning"&&L.reasoning&&zt.renderReasoning){if(!je)return;xt=zt.renderReasoning({message:L,defaultRenderer:()=>cl(L,r),config:r})}else if(L.variant==="tool"&&L.toolCall&&zt.renderToolCall){if(!be)return;xt=zt.renderToolCall({message:L,defaultRenderer:()=>dl(L,r),config:r})}else zt.renderMessage&&(xt=zt.renderMessage({message:L,defaultRenderer:()=>{let tt=ll(L,h,Jn,r.messageActions,Z,{loadingIndicatorRenderer:H,widgetConfig:r});return L.role!=="user"&&gl(tt,L,r,O),tt},config:r}));if(!xt&&me){let tt=Dm(L);if(tt){let mn=Pr.get(L.id),qt=mn!==Ft,$t=r.wrapComponentDirectiveInBubble!==!1,ft=null;if(qt){let Qt=Rm(tt,{config:r,message:L,transform:h});if(Qt)if($t){let At=document.createElement("div");if(At.className=["persona-message-bubble","persona-max-w-[85%]","persona-rounded-2xl","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-p-4"].join(" "),At.id=`bubble-${L.id}`,At.setAttribute("data-message-id",L.id),L.content&&L.content.trim()){let An=document.createElement("div");An.className="persona-mb-3 persona-text-sm persona-leading-relaxed",An.innerHTML=h({text:L.content,message:L,streaming:!!L.streaming,raw:L.rawContent}),At.appendChild(An)}At.appendChild(Qt),ft=At}else{let At=document.createElement("div");if(At.className="persona-flex persona-flex-col persona-w-full persona-max-w-full persona-gap-3 persona-items-stretch",At.id=`bubble-${L.id}`,At.setAttribute("data-message-id",L.id),At.setAttribute("data-persona-component-directive","true"),L.content&&L.content.trim()){let An=document.createElement("div");An.className="persona-text-sm persona-leading-relaxed persona-text-persona-primary persona-w-full",An.innerHTML=h({text:L.content,message:L,streaming:!!L.streaming,raw:L.rawContent}),At.appendChild(An)}At.appendChild(Qt),ft=At}}if(ft||mn!=null){let Qt=document.createElement("div");Qt.className="persona-flex",Qt.id=`wrapper-${L.id}`,Qt.setAttribute("data-wrapper-id",L.id),Qt.setAttribute("data-component-directive-stub","true"),Qt.setAttribute("data-preserve-runtime","true"),$t||Qt.classList.add("persona-w-full"),y.appendChild(Qt),Y.push({messageId:L.id,fingerprint:Ft,bubble:ft});return}}}if(!xt)if(L.variant==="reasoning"&&L.reasoning){if(!je)return;xt=cl(L,r)}else if(L.variant==="tool"&&L.toolCall){if(!be)return;xt=dl(L,r)}else if(L.variant==="approval"&&L.approval){if(r.approval===!1)return;xt=wi(L,r)}else{let tt=(hr=r.layout)==null?void 0:hr.messages;tt!=null&&tt.renderUserMessage&&L.role==="user"?xt=tt.renderUserMessage({message:L,config:r,streaming:!!L.streaming}):tt!=null&&tt.renderAssistantMessage&&L.role==="assistant"?xt=tt.renderAssistantMessage({message:L,config:r,streaming:!!L.streaming}):xt=ll(L,h,tt,r.messageActions,Z,{loadingIndicatorRenderer:H,widgetConfig:r}),L.role!=="user"&&xt&&gl(xt,L,r,O)}let nn=document.createElement("div");nn.className="persona-flex",nn.id=`wrapper-${L.id}`,nn.setAttribute("data-wrapper-id",L.id),L.role==="user"&&nn.classList.add("persona-justify-end"),(xt==null?void 0:xt.getAttribute("data-persona-component-directive"))==="true"&&nn.classList.add("persona-w-full"),nn.appendChild(xt),Ku(Lr,L.id,Ft,nn),y.appendChild(nn)}),J.composerOverlay&&J.composerOverlay.querySelectorAll("[data-persona-ask-sheet-for]").forEach(Be=>{let Re=Be.getAttribute("data-persona-ask-sheet-for");Re&&!R.has(Re)&&ps(J.composerOverlay,Re)}),(We=(lt=r.features)==null?void 0:lt.toolCallDisplay)!=null&&We.grouped){let L=[],Be=[];p.forEach(Re=>{if(Re.variant==="tool"&&Re.toolCall&&be){Be.push(Re);return}Be.length>1&&L.push(Be),Be=[]}),Be.length>1&&L.push(Be),L.forEach((Re,me)=>{var Ye,Pt;let _t=Re.map(cn=>Array.from(y.children).find(cr=>cr instanceof HTMLElement&&cr.getAttribute("data-wrapper-id")===cn.id)).filter(cn=>!!cn);if(_t.length<2)return;let Ft=document.createElement("div");Ft.className="persona-flex",Ft.id=`wrapper-tool-group-${me}-${Re[0].id}`,Ft.setAttribute("data-wrapper-id",`tool-group-${me}-${Re[0].id}`);let Kt=document.createElement("div");Kt.className="persona-tool-group persona-flex persona-w-full persona-flex-col persona-gap-2",Kt.setAttribute("data-persona-tool-group","true");let xt=document.createElement("div");xt.className="persona-tool-group-summary persona-text-xs persona-text-persona-muted";let zt=`Called ${Re.length} tools`,Jn=(Pt=(Ye=r.toolCall)==null?void 0:Ye.renderGroupedSummary)==null?void 0:Pt.call(Ye,{messages:Re,toolCalls:Re.map(cn=>cn.toolCall).filter(cn=>!!cn),defaultSummary:zt,config:r});q(xt,Jn)||(xt.textContent=zt);let nn=document.createElement("div");nn.className="persona-tool-group-stack persona-flex persona-flex-col",Kt.append(xt,nn),Ft.appendChild(Kt),_t[0].before(Ft),_t.forEach((cn,cr)=>{let Yn=document.createElement("div");Yn.className="persona-tool-group-item persona-relative",Yn.setAttribute("data-persona-tool-group-item","true"),cr<_t.length-1&&Yn.setAttribute("data-persona-tool-group-connector","true"),Yn.appendChild(cn),nn.appendChild(Yn)})})}Gu(Lr,F);let rt=p.some(L=>L.role==="assistant"&&L.streaming),Ue=p[p.length-1],gt=(Ue==null?void 0:Ue.role)==="assistant"&&!Ue.streaming&&Ue.variant!=="approval";if(kr&&p.some(L=>L.role==="user")&&!rt&&!gt){let L={config:r,streaming:!0,location:"standalone",defaultRenderer:ua},Be=o.find(me=>me.renderLoadingIndicator),Re=null;if(Be!=null&&Be.renderLoadingIndicator&&(Re=Be.renderLoadingIndicator(L)),Re===null&&((Le=r.loadingIndicator)!=null&&Le.render)&&(Re=r.loadingIndicator.render(L)),Re===null&&(Re=ua()),Re){let me=document.createElement("div"),_t=((ze=r.loadingIndicator)==null?void 0:ze.showBubble)!==!1;me.className=_t?["persona-max-w-[85%]","persona-rounded-2xl","persona-text-sm","persona-leading-relaxed","persona-shadow-sm","persona-bg-persona-surface","persona-border","persona-text-persona-primary","persona-px-5","persona-py-3"].join(" "):["persona-max-w-[85%]","persona-text-sm","persona-leading-relaxed","persona-text-persona-primary"].join(" "),me.setAttribute("data-typing-indicator","true"),me.style.borderColor="var(--persona-message-assistant-border, var(--persona-border, #e5e7eb))",me.appendChild(Re);let Ft=document.createElement("div");Ft.className="persona-flex",Ft.id="wrapper-typing-indicator",Ft.setAttribute("data-wrapper-id","typing-indicator"),Ft.appendChild(me),y.appendChild(Ft)}}if(!kr&&p.length>0){let L=p[p.length-1],Be={config:r,lastMessage:L,messageCount:p.length},Re=o.find(_t=>_t.renderIdleIndicator),me=null;if(Re!=null&&Re.renderIdleIndicator&&(me=Re.renderIdleIndicator(Be)),me===null&&((Qe=r.loadingIndicator)!=null&&Qe.renderIdle)&&(me=r.loadingIndicator.renderIdle(Be)),me){let _t=document.createElement("div"),Ft=((bt=r.loadingIndicator)==null?void 0:bt.showBubble)!==!1;_t.className=Ft?["persona-max-w-[85%]","persona-rounded-2xl","persona-text-sm","persona-leading-relaxed","persona-shadow-sm","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-px-5","persona-py-3"].join(" "):["persona-max-w-[85%]","persona-text-sm","persona-leading-relaxed","persona-text-persona-primary"].join(" "),_t.setAttribute("data-idle-indicator","true"),_t.appendChild(me);let Kt=document.createElement("div");Kt.className="persona-flex",Kt.id="wrapper-idle-indicator",Kt.setAttribute("data-wrapper-id","idle-indicator"),Kt.appendChild(_t),y.appendChild(Kt)}}if(ni(l,y),de.length>0)for(let{messageId:L,fingerprint:Be,bubble:Re}of de){let me=l.querySelector(`#wrapper-${L}`);me&&Re!==null&&(me.replaceChildren(Re),me.setAttribute("data-bubble-fp",Be),qr.set(L,Be))}if(qr.size>0)for(let L of qr.keys())F.has(L)||qr.delete(L);if(Y.length>0)for(let{messageId:L,fingerprint:Be,bubble:Re}of Y){let me=l.querySelector(`#wrapper-${L}`);me&&Re!==null&&(me.replaceChildren(Re),me.setAttribute("data-bubble-fp",Be),Pr.set(L,Be))}if(Pr.size>0)for(let L of Pr.keys())F.has(L)||Pr.delete(L);if(Ce.length>0)for(let{messageId:L,fingerprint:Be,bubble:Re}of Ce){let me=l.querySelector(`#wrapper-${L}`);me&&Re!==null&&(me.replaceChildren(Re),me.setAttribute("data-bubble-fp",Be),mr.set(L,Be))}if(mr.size>0)for(let L of mr.keys())F.has(L)||mr.delete(L)},ao=(l,p,h)=>{ka(l,p,h),eo()},io=null,La=()=>{var h;if(io)return;let l=y=>{let A=y.composedPath();A.includes(Me)||Xe&&A.includes(Xe)||S(!1,"user")};io=l,((h=n.ownerDocument)!=null?h:document).addEventListener("pointerdown",l,!0)},Hs=()=>{var p;if(!io)return;((p=n.ownerDocument)!=null?p:document).removeEventListener("pointerdown",io,!0),io=null};pt.push(()=>Hs());let lo=null,Pa=()=>{var h;if(lo)return;let l=y=>{y.key==="Escape"&&(y.isComposing||S(!1,"user"))};lo=l,((h=n.ownerDocument)!=null?h:document).addEventListener("keydown",l,!0)},Bs=()=>{var p;if(!lo)return;((p=n.ownerDocument)!=null?p:document).removeEventListener("keydown",lo,!0),lo=null};pt.push(()=>Bs());let co=!1,Ds=new Set,es=()=>{var p,h,y,A;let l=(y=(h=(p=r.launcher)==null?void 0:p.composerBar)==null?void 0:h.peek)==null?void 0:y.streamAnimation;return l||((A=r.features)==null?void 0:A.streamAnimation)},qe=()=>{var gt,lt,We,Le;if(!B())return;let l=J.peekBanner,p=J.peekTextNode;if(!l||!p)return;if(T){l.classList.remove("persona-pill-peek--visible");return}let h=(gt=O==null?void 0:O.getMessages())!=null?gt:[],y;for(let ze=h.length-1;ze>=0;ze--){let Qe=h[ze];if(Qe.role==="assistant"&&Qe.content){y=Qe;break}}if(!y){l.classList.remove("persona-pill-peek--visible");return}let A=y.content,H=!!y.streaming,q=es(),F=ii(q),R=F.type!=="none"?sa(F.type,q==null?void 0:q.plugins):null,ce=((lt=R==null?void 0:R.isAnimating)==null?void 0:lt.call(R,y))===!0,de=R!==null&&(H||ce);de&&R&&!Ds.has(R.name)&&(el(R,n),Ds.add(R.name));let Y=de&&(R!=null&&R.containerClass)?R.containerClass:null,ve=(We=p.dataset.personaPeekStreamClass)!=null?We:null;ve&&ve!==Y&&(p.classList.remove(ve),delete p.dataset.personaPeekStreamClass),Y&&ve!==Y&&(p.classList.add(Y),p.dataset.personaPeekStreamClass=Y),de?(p.style.setProperty("--persona-stream-step",`${F.speed}ms`),p.style.setProperty("--persona-stream-duration",`${F.duration}ms`)):(p.style.removeProperty("--persona-stream-step"),p.style.removeProperty("--persona-stream-duration"));let De=de?li(A,F.buffer,R,y,H):A;if(de&&F.placeholder==="skeleton"&&H&&(!De||!De.trim())){let ze=document.createElement("div"),Qe=ia();Qe.classList.add("persona-pill-peek__skeleton"),ze.appendChild(Qe),ni(p,ze)}else{let ze=Math.max(0,De.length-100),Qe=De.length>100?De.slice(-100):De,bt=fo(Qe);if(!de||!R){let L=De.length>100?`\u2026${Qe}`:Qe;p.textContent!==L&&(p.textContent=L)}else{let L=bt;(R.wrap==="char"||R.wrap==="word")&&(L=aa(bt,R.wrap,`peek-${y.id}`,{skipTags:R.skipTags,startIndex:ze}));let Be=document.createElement("div");if(Be.innerHTML=L,R.useCaret&&Qe.length>0){let Re=ci(),me=Be.querySelectorAll(".persona-stream-char, .persona-stream-word"),_t=me[me.length-1];_t!=null&&_t.parentNode?_t.parentNode.insertBefore(Re,_t.nextSibling):Be.appendChild(Re)}ni(p,Be),(Le=R.onAfterRender)==null||Le.call(R,{container:p,bubble:l,messageId:y.id,message:y,speed:F.speed,duration:F.duration})}}let Ue=kr||co;l.classList.toggle("persona-pill-peek--visible",Ue)};if(B()){let l=J.peekBanner;if(l){let y=A=>{A.preventDefault(),A.stopPropagation(),S(!0,"user")};l.addEventListener("pointerdown",y),pt.push(()=>{l.removeEventListener("pointerdown",y)})}let p=()=>{co||(co=!0,qe())},h=()=>{co&&(co=!1,qe())};fe.addEventListener("pointerenter",p),fe.addEventListener("pointerleave",h),pt.push(()=>{fe.removeEventListener("pointerenter",p),fe.removeEventListener("pointerleave",h)}),Xe&&(Xe.addEventListener("pointerenter",p),Xe.addEventListener("pointerleave",h),pt.push(()=>{Xe.removeEventListener("pointerenter",p),Xe.removeEventListener("pointerleave",h)}))}let w=l=>{var ve,De,Ce,rt,Ue,gt,lt,We;let p=(De=(ve=r.launcher)==null?void 0:ve.composerBar)!=null?De:{},h=(Ce=p.expandedSize)!=null?Ce:"anchored",y=(rt=p.bottomOffset)!=null?rt:"16px",A=p.collapsedMaxWidth,H=(Ue=p.expandedMaxWidth)!=null?Ue:"880px",q=(gt=p.expandedTopOffset)!=null?gt:"5vh",F=(lt=p.modalMaxWidth)!=null?lt:"880px",R=(We=p.modalMaxHeight)!=null?We:"min(90vh, 800px)",ce="calc(100vw - 32px)",de="var(--persona-pill-area-height, 80px)",Y=Me.style;if(Y.left="",Y.right="",Y.top="",Y.bottom="",Y.transform="",Y.width="",Y.maxWidth="",Y.height="",Y.maxHeight="",Xe){let Le=Xe.style;Le.bottom=y,Le.width=A!=null?A:""}if(l&&h!=="fullscreen"){if(h==="modal"){Y.top="50%",Y.left="50%",Y.transform="translate(-50%, -50%)",Y.bottom="auto",Y.right="auto",Y.width=F,Y.maxWidth=ce,Y.maxHeight=R,Y.height=R;return}Y.left="50%",Y.transform="translateX(-50%)",Y.bottom=`calc(${y} + ${de})`,Y.top=q,Y.width=H,Y.maxWidth=ce}},_=()=>{var R,ce,de,Y,ve,De,Ce,rt;if(!D())return;if(B()){let gt=(de=((ce=(R=r.launcher)==null?void 0:R.composerBar)!=null?ce:{}).expandedSize)!=null?de:"anchored",lt=T?"expanded":"collapsed";Me.dataset.state=lt,Me.dataset.expandedSize=gt,Xe&&(Xe.dataset.state=lt,Xe.dataset.expandedSize=gt),Me.style.removeProperty("display"),Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),fe.classList.remove("persona-scale-95","persona-opacity-0","persona-scale-100","persona-opacity-100"),w(T),ue.style.display=T?"flex":"none",ye(),T?(La(),Pa()):(Hs(),Bs()),qe();return}let l=wn(r),p=(Y=n.ownerDocument.defaultView)!=null?Y:window,h=(De=(ve=r.launcher)==null?void 0:ve.mobileBreakpoint)!=null?De:640,y=(rt=(Ce=r.launcher)==null?void 0:Ce.mobileFullscreen)!=null?rt:!0,A=p.innerWidth<=h,H=y&&A&&E,q=vr(r).reveal;T?(Me.style.removeProperty("display"),Me.style.display=l?"flex":"",Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),fe.classList.remove("persona-scale-95","persona-opacity-0"),fe.classList.add("persona-scale-100","persona-opacity-100"),tn?tn.element.style.display="none":un&&(un.style.display="none")):(l?l&&(q==="overlay"||q==="push")&&!H?(Me.style.removeProperty("display"),Me.style.display="flex",Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),fe.classList.remove("persona-scale-100","persona-opacity-100","persona-scale-95","persona-opacity-0")):(Me.style.setProperty("display","none","important"),Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),fe.classList.remove("persona-scale-100","persona-opacity-100","persona-scale-95","persona-opacity-0")):(Me.style.display="",Me.classList.add("persona-pointer-events-none","persona-opacity-0"),fe.classList.remove("persona-scale-100","persona-opacity-100"),fe.classList.add("persona-scale-95","persona-opacity-0")),tn?tn.element.style.display=l?"none":"":un&&(un.style.display=l?"none":""))},S=(l,p="user")=>{var H,q;if(!D()||T===l)return;let h=T;T=l,_();let y=(()=>{var Ce,rt,Ue,gt,lt,We,Le,ze,Qe,bt;let F=(rt=(Ce=r.launcher)==null?void 0:Ce.sidebarMode)!=null?rt:!1,R=(Ue=n.ownerDocument.defaultView)!=null?Ue:window,ce=(lt=(gt=r.launcher)==null?void 0:gt.mobileFullscreen)!=null?lt:!0,de=(Le=(We=r.launcher)==null?void 0:We.mobileBreakpoint)!=null?Le:640,Y=R.innerWidth<=de,ve=wn(r)&&ce&&Y,De=B()&&((bt=(Qe=(ze=r.launcher)==null?void 0:ze.composerBar)==null?void 0:Qe.expandedSize)!=null?bt:"fullscreen")==="fullscreen";return F||ce&&Y&&E||ve||De})();if(T&&y){if(!en){let F=n.getRootNode(),R=F instanceof ShadowRoot?F.host:n.closest(".persona-host");R&&(en=tl(R,(q=(H=r.launcher)==null?void 0:H.zIndex)!=null?q:Mn))}pn||(pn=nl(n.ownerDocument))}else T||(en==null||en(),en=null,pn==null||pn(),pn=null);T&&(Ns(),nt()==="follow"?Rr(!0):Ws());let A={open:T,source:p,timestamp:Date.now()};T&&!h?s.emit("widget:opened",A):!T&&h&&s.emit("widget:closed",A),s.emit("widget:state",{open:T,launcherEnabled:E,voiceActive:ht.active,streaming:O.isStreaming()})},X=l=>{kn(l?"stop":"send"),j&&(j.disabled=l),So.buttons.forEach(p=>{p.disabled=l}),Oe.dataset.personaComposerStreaming=l?"true":"false",Oe.querySelectorAll("[data-persona-composer-disable-when-streaming]").forEach(p=>{(p instanceof HTMLButtonElement||p instanceof HTMLInputElement||p instanceof HTMLTextAreaElement||p instanceof HTMLSelectElement)&&(p.disabled=l)})},ie=()=>{ht.active||Pe&&Pe.focus()};s.on("widget:opened",()=>{r.autoFocusInput&&setTimeout(()=>ie(),200)});let Q=()=>{var h,y,A,H,q,F,R,ce,de,Y,ve;wr.textContent=(y=(h=r.copy)==null?void 0:h.welcomeTitle)!=null?y:"Hello \u{1F44B}",$.textContent=(H=(A=r.copy)==null?void 0:A.welcomeSubtitle)!=null?H:"Ask anything about your account or products.",Pe.placeholder=(F=(q=r.copy)==null?void 0:q.inputPlaceholder)!=null?F:"How can I help...";let l=Ee.querySelector("[data-persona-intro-card]");if(l){let De=((R=r.copy)==null?void 0:R.showWelcomeCard)!==!1;l.style.display=De?"":"none",De?(Ee.classList.remove("persona-gap-3"),Ee.classList.add("persona-gap-6")):(Ee.classList.remove("persona-gap-6"),Ee.classList.add("persona-gap-3"))}!((de=(ce=r.sendButton)==null?void 0:ce.useIcon)!=null&&de)&&!(O!=null&&O.isStreaming())&&(Ve.textContent=(ve=(Y=r.copy)==null?void 0:Y.sendButtonLabel)!=null?ve:"Send"),Pe.style.fontFamily='var(--persona-input-font-family, var(--persona-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif))',Pe.style.fontWeight="var(--persona-input-font-weight, var(--persona-font-weight, 400))"};r.clientToken&&(r={...r,getStoredSessionId:()=>{let l=d.sessionId;return typeof l=="string"?l:null},setStoredSessionId:l=>{m(p=>({...p,sessionId:l}))}});let Te=null,_e=()=>{Te==null&&(Te=setInterval(()=>{let l=Je.querySelectorAll("[data-tool-elapsed]");if(l.length===0){clearInterval(Te),Te=null;return}let p=Date.now();l.forEach(h=>{let y=Number(h.getAttribute("data-tool-elapsed"));y&&(h.textContent=qa(p-y))})},100))};O=new Za(r,{onMessagesChanged(l){var y;ao(Je,l,ke),_e(),Vo(l),Rr(!kr),Ea(l);let p=[...l].reverse().find(A=>A.role==="user");l.length===0&&Eo(),!Go||Mo?(Go=!0,Qo=(y=p==null?void 0:p.id)!=null?y:null):p&&p.id!==Qo&&(Qo=p.id,Ma(p.id));let h=ht.lastUserMessageId;p&&p.id!==h&&(ht.lastUserMessageId=p.id,s.emit("user:message",p)),ht.lastUserMessageWasVoice=!!(p!=null&&p.viaVoice),Yo(l),qe()},onStatusChanged(l){var y;let p=(y=r.statusIndicator)!=null?y:{};it(dn,(A=>{var H,q,F,R;return A==="idle"?(H=p.idleText)!=null?H:Tn.idle:A==="connecting"?(q=p.connectingText)!=null?q:Tn.connecting:A==="connected"?(F=p.connectedText)!=null?F:Tn.connected:A==="error"?(R=p.errorText)!=null?R:Tn.error:Tn[A]})(l),p,l)},onStreamingChanged(l){kr=l,X(l),O&&ao(Je,O.getMessages(),ke),l||Rr(!0),qe()},onVoiceStatusChanged(l){var p,h;if(s.emit("voice:status",{status:l,timestamp:Date.now()}),((h=(p=r.voiceRecognition)==null?void 0:p.provider)==null?void 0:h.type)==="runtype")switch(l){case"listening":jr(),ns();break;case"processing":jr(),eg();break;case"speaking":jr(),tg();break;default:l==="idle"&&O.isBargeInActive()?(jr(),ns(),j==null||j.setAttribute("aria-label","End voice session")):(ht.active=!1,jr(),sr("system"),_n());break}},onArtifactsState(l){jn=l,Gn(),Yo()}}),Tt.current=O;let st=null;if(O.onReadAloudChange((l,p)=>{var A;Yr=l,Zr=p,eo();let h=l!=null?l:st;l&&(st=l);let y=h&&(A=O.getMessages().find(H=>H.id===h))!=null?A:null;s.emit("message:read-aloud",{messageId:h,message:y,state:p,timestamp:Date.now()}),p==="idle"&&(st=null)}),Go=!0,((Wc=(Ic=r.voiceRecognition)==null?void 0:Ic.provider)==null?void 0:Wc.type)==="runtype")try{O.setupVoice()}catch(l){typeof console!="undefined"&&console.warn("[AgentWidget] Runtype voice setup failed:",l)}r.clientToken&&O.initClientSession().catch(l=>{r.debug&&console.warn("[AgentWidget] Pre-init client session failed:",l)}),(ge||r.onSSEEvent)&&O.setSSEEventCallback((l,p)=>{var h;(h=r.onSSEEvent)==null||h.call(r,l,p),pe==null||pe.processEvent(l,p),ge==null||ge.push({id:`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:l,timestamp:Date.now(),payload:JSON.stringify(p)})}),c&&c.then(l=>{var p,h,y;if(l){if(l.metadata&&(d=xl(l.metadata),M.syncFromMetadata()),(p=l.messages)!=null&&p.length){Mo=!0;try{O.hydrateMessages(l.messages)}finally{Mo=!1}}(h=l.artifacts)!=null&&h.length&&O.hydrateArtifacts(l.artifacts,(y=l.selectedArtifactId)!=null?y:null)}}).catch(l=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to hydrate stored state:",l)});let et=()=>{var p,h,y;!B()||T||!((y=(h=(p=r.launcher)==null?void 0:p.composerBar)==null?void 0:h.expandOnSubmit)==null||y)||S(!0,"auto")},Ht=l=>{var A;if(l.preventDefault(),O.isStreaming()){O.cancel(),pe==null||pe.reset(),V==null||V.update();return}let p=Pe.value.trim(),h=(A=vt==null?void 0:vt.hasAttachments())!=null?A:!1;if(!p&&!h)return;et();let y;h&&(y=[],y.push(...vt.getContentParts()),p&&y.push(Vi(p))),Pe.value="",Pe.style.height="auto",Mt(),O.sendMessage(p,{contentParts:y}),h&&vt.clearAttachments()},Ut=()=>{var l;return((l=r.features)==null?void 0:l.composerHistory)!==!1},an={...ri},Ct=!1,Mt=()=>{an={...ri}},hn=()=>O.getMessages().filter(l=>l.role==="user").map(l=>{var p;return(p=l.content)!=null?p:""}).filter(l=>l.length>0),Wn=l=>{if(!Pe)return;Ct=!0,Pe.value=l,Pe.dispatchEvent(new Event("input",{bubbles:!0})),Ct=!1;let p=Pe.value.length;Pe.setSelectionRange(p,p)},xn=()=>{Ct||Mt()},Yt=l=>{if(Pe){if(Ut()&&(l.key==="ArrowUp"||l.key==="ArrowDown")&&!l.shiftKey&&!l.metaKey&&!l.ctrlKey&&!l.altKey&&!l.isComposing){let p=Pe.selectionStart===0&&Pe.selectionEnd===0,h=Uu({direction:l.key==="ArrowUp"?"up":"down",history:hn(),currentValue:Pe.value,atStart:p,state:an});if(an=h.state,h.handled){l.preventDefault(),h.value!==void 0&&Wn(h.value);return}}if(l.key==="Enter"&&!l.shiftKey){if(O.isStreaming()){l.preventDefault();return}Mt(),l.preventDefault(),Ve.click()}}},ar=l=>{l.key!=="Escape"||l.isComposing||O.isStreaming()&&l.composedPath().includes(ue)&&(O.cancel(),pe==null||pe.reset(),V==null||V.update(),Mt(),l.preventDefault(),l.stopImmediatePropagation())},El=async l=>{var h;if(((h=r.attachments)==null?void 0:h.enabled)!==!0||!vt)return;let p=dv(l.clipboardData);p.length!==0&&(l.preventDefault(),await vt.handleFiles(p))},ir=null,Hr=!1,ts=null,mt=null,kl=()=>typeof window=="undefined"?null:window.webkitSpeechRecognition||window.SpeechRecognition||null,Ia=(l="user")=>{var H,q,F,R,ce,de,Y;if(Hr||O.isStreaming())return;let p=kl();if(!p)return;ir=new p;let y=(q=((H=r.voiceRecognition)!=null?H:{}).pauseDuration)!=null?q:2e3;ir.continuous=!0,ir.interimResults=!0,ir.lang="en-US";let A=Pe.value;ir.onresult=ve=>{let De="",Ce="";for(let Ue=0;Ue<ve.results.length;Ue++){let gt=ve.results[Ue],lt=gt[0].transcript;gt.isFinal?De+=lt+" ":Ce=lt}let rt=A+De+Ce;Pe.value=rt,ts&&clearTimeout(ts),(De||Ce)&&(ts=window.setTimeout(()=>{let Ue=Pe.value.trim();Ue&&ir&&Hr&&(po(),Pe.value="",Pe.style.height="auto",O.sendMessage(Ue,{viaVoice:!0}))},y))},ir.onerror=ve=>{ve.error!=="no-speech"&&po()},ir.onend=()=>{if(Hr){let ve=Pe.value.trim();ve&&ve!==A.trim()&&(Pe.value="",Pe.style.height="auto",O.sendMessage(ve,{viaVoice:!0})),po()}};try{if(ir.start(),Hr=!0,ht.active=!0,l!=="system"&&(ht.manuallyDeactivated=!1),sr(l),_n(),j){let ve=(F=r.voiceRecognition)!=null?F:{};mt={backgroundColor:j.style.backgroundColor,color:j.style.color,borderColor:j.style.borderColor,iconName:(R=ve.iconName)!=null?R:"mic",iconSize:parseFloat((Y=(de=ve.iconSize)!=null?de:(ce=r.sendButton)==null?void 0:ce.size)!=null?Y:"40")||24};let De=ve.recordingBackgroundColor,Ce=ve.recordingIconColor,rt=ve.recordingBorderColor;if(j.classList.add("persona-voice-recording"),j.style.backgroundColor=De!=null?De:"var(--persona-voice-recording-bg, #ef4444)",j.style.color=Ce!=null?Ce:"var(--persona-voice-recording-indicator, #ffffff)",Ce){let Ue=j.querySelector("svg");Ue&&Ue.setAttribute("stroke",Ce)}rt&&(j.style.borderColor=rt),j.setAttribute("aria-label","Stop voice recognition")}}catch{po("system")}},po=(l="user")=>{if(Hr){if(Hr=!1,ts&&(clearTimeout(ts),ts=null),ir){try{ir.stop()}catch{}ir=null}if(ht.active=!1,sr(l),_n(),j){if(j.classList.remove("persona-voice-recording"),mt){j.style.backgroundColor=mt.backgroundColor,j.style.color=mt.color,j.style.borderColor=mt.borderColor;let p=j.querySelector("svg");p&&p.setAttribute("stroke",mt.color||"currentColor"),mt=null}j.setAttribute("aria-label","Start voice recognition")}}},Zm=(l,p)=>{var lt,We,Le,ze,Qe,bt,L,Be,Re;let h=typeof window!="undefined"&&(typeof window.webkitSpeechRecognition!="undefined"||typeof window.SpeechRecognition!="undefined"),y=((lt=l==null?void 0:l.provider)==null?void 0:lt.type)==="runtype",A=((We=l==null?void 0:l.provider)==null?void 0:We.type)==="custom";if(!(h||y||A))return null;let q=b("div","persona-send-button-wrapper"),F=b("button","persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer");F.type="button",F.setAttribute("aria-label","Start voice recognition");let R=(Le=l==null?void 0:l.iconName)!=null?Le:"mic",ce=(ze=p==null?void 0:p.size)!=null?ze:"40px",de=(Qe=l==null?void 0:l.iconSize)!=null?Qe:ce,Y=parseFloat(de)||24,ve=(bt=l==null?void 0:l.backgroundColor)!=null?bt:p==null?void 0:p.backgroundColor,De=(L=l==null?void 0:l.iconColor)!=null?L:p==null?void 0:p.textColor;F.style.width=de,F.style.height=de,F.style.minWidth=de,F.style.minHeight=de,F.style.fontSize="18px",F.style.lineHeight="1",De?F.style.color=De:F.style.color="var(--persona-text, #111827)";let rt=Ae(R,Y,De||"currentColor",1.5);rt?F.appendChild(rt):F.textContent="\u{1F3A4}",ve?F.style.backgroundColor=ve:F.style.backgroundColor="",l!=null&&l.borderWidth&&(F.style.borderWidth=l.borderWidth,F.style.borderStyle="solid"),l!=null&&l.borderColor&&(F.style.borderColor=l.borderColor),l!=null&&l.paddingX&&(F.style.paddingLeft=l.paddingX,F.style.paddingRight=l.paddingX),l!=null&&l.paddingY&&(F.style.paddingTop=l.paddingY,F.style.paddingBottom=l.paddingY),q.appendChild(F);let Ue=(Be=l==null?void 0:l.tooltipText)!=null?Be:"Start voice recognition";if(((Re=l==null?void 0:l.showTooltip)!=null?Re:!1)&&Ue){let me=b("div","persona-send-button-tooltip");me.textContent=Ue,q.appendChild(me)}return{micButton:F,micButtonWrapper:q}},Ei=()=>{var p,h,y,A,H;if(!j||mt)return;let l=(p=r.voiceRecognition)!=null?p:{};mt={backgroundColor:j.style.backgroundColor,color:j.style.color,borderColor:j.style.borderColor,iconName:(h=l.iconName)!=null?h:"mic",iconSize:parseFloat((H=(A=l.iconSize)!=null?A:(y=r.sendButton)==null?void 0:y.size)!=null?H:"40")||24}},ki=(l,p)=>{var H,q,F,R,ce;if(!j)return;let h=j.querySelector("svg");h&&h.remove();let y=(ce=mt==null?void 0:mt.iconSize)!=null?ce:parseFloat((R=(F=(H=r.voiceRecognition)==null?void 0:H.iconSize)!=null?F:(q=r.sendButton)==null?void 0:q.size)!=null?R:"40")||24,A=Ae(l,y,p,1.5);A&&j.appendChild(A)},Wa=()=>{j&&j.classList.remove("persona-voice-recording","persona-voice-processing","persona-voice-speaking")},ns=()=>{var A;if(!j)return;Ei();let l=(A=r.voiceRecognition)!=null?A:{},p=l.recordingBackgroundColor,h=l.recordingIconColor,y=l.recordingBorderColor;if(Wa(),j.classList.add("persona-voice-recording"),j.style.backgroundColor=p!=null?p:"var(--persona-voice-recording-bg, #ef4444)",j.style.color=h!=null?h:"var(--persona-voice-recording-indicator, #ffffff)",h){let H=j.querySelector("svg");H&&H.setAttribute("stroke",h)}y&&(j.style.borderColor=y),j.setAttribute("aria-label","Stop voice recognition")},eg=()=>{var F,R,ce,de,Y,ve,De,Ce;if(!j)return;Ei();let l=(F=r.voiceRecognition)!=null?F:{},p=O.getVoiceInterruptionMode(),h=(R=l.processingIconName)!=null?R:"loader",y=(de=(ce=l.processingIconColor)!=null?ce:mt==null?void 0:mt.color)!=null?de:"",A=(ve=(Y=l.processingBackgroundColor)!=null?Y:mt==null?void 0:mt.backgroundColor)!=null?ve:"",H=(Ce=(De=l.processingBorderColor)!=null?De:mt==null?void 0:mt.borderColor)!=null?Ce:"";Wa(),j.classList.add("persona-voice-processing"),j.style.backgroundColor=A,j.style.borderColor=H;let q=y||"currentColor";j.style.color=q,ki(h,q),j.setAttribute("aria-label","Processing voice input"),p==="none"&&(j.style.cursor="default")},tg=()=>{var ce,de,Y,ve,De,Ce,rt,Ue,gt,lt,We,Le;if(!j)return;Ei();let l=(ce=r.voiceRecognition)!=null?ce:{},p=O.getVoiceInterruptionMode(),h=p==="cancel"?"square":p==="barge-in"?"mic":"volume-2",y=(de=l.speakingIconName)!=null?de:h,A=(Ce=l.speakingIconColor)!=null?Ce:p==="barge-in"?(ve=(Y=l.recordingIconColor)!=null?Y:mt==null?void 0:mt.color)!=null?ve:"":(De=mt==null?void 0:mt.color)!=null?De:"",H=(gt=l.speakingBackgroundColor)!=null?gt:p==="barge-in"?(rt=l.recordingBackgroundColor)!=null?rt:"var(--persona-voice-recording-bg, #ef4444)":(Ue=mt==null?void 0:mt.backgroundColor)!=null?Ue:"",q=(Le=l.speakingBorderColor)!=null?Le:p==="barge-in"?(lt=l.recordingBorderColor)!=null?lt:"":(We=mt==null?void 0:mt.borderColor)!=null?We:"";Wa(),j.classList.add("persona-voice-speaking"),j.style.backgroundColor=H,j.style.borderColor=q;let F=A||"currentColor";j.style.color=F,ki(y,F);let R=p==="cancel"?"Stop playback and re-record":p==="barge-in"?"Speak to interrupt":"Agent is speaking";j.setAttribute("aria-label",R),p==="none"&&(j.style.cursor="default"),p==="barge-in"&&j.classList.add("persona-voice-recording")},jr=()=>{var l,p,h;j&&(Wa(),mt&&(j.style.backgroundColor=(l=mt.backgroundColor)!=null?l:"",j.style.color=(p=mt.color)!=null?p:"",j.style.borderColor=(h=mt.borderColor)!=null?h:"",ki(mt.iconName,mt.color||"currentColor"),mt=null),j.style.cursor="",j.setAttribute("aria-label","Start voice recognition"))},Ra=()=>{var l,p;if(((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"){let h=O.getVoiceStatus(),y=O.getVoiceInterruptionMode();if(y==="none"&&(h==="processing"||h==="speaking"))return;if(y==="cancel"&&(h==="processing"||h==="speaking")){O.stopVoicePlayback();return}if(O.isBargeInActive()){O.stopVoicePlayback(),O.deactivateBargeIn().then(()=>{ht.active=!1,ht.manuallyDeactivated=!0,_n(),sr("user"),jr()});return}O.toggleVoice().then(()=>{ht.active=O.isVoiceActive(),ht.manuallyDeactivated=!O.isVoiceActive(),_n(),sr("user"),O.isVoiceActive()?ns():jr()});return}if(Hr){let h=Pe.value.trim();ht.manuallyDeactivated=!0,_n(),po("user"),h&&(Pe.value="",Pe.style.height="auto",O.sendMessage(h))}else ht.manuallyDeactivated=!1,_n(),Ia("user")};Un=Ra,j&&(j.addEventListener("click",Ra),pt.push(()=>{var l,p;((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"?(O.isVoiceActive()&&O.toggleVoice(),jr()):po("system"),j&&j.removeEventListener("click",Ra)}));let ng=s.on("assistant:complete",()=>{Ts&&(ht.active||ht.manuallyDeactivated||Ts==="assistant"&&!ht.lastUserMessageWasVoice||setTimeout(()=>{var l,p;!ht.active&&!ht.manuallyDeactivated&&(((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"?O.toggleVoice().then(()=>{ht.active=O.isVoiceActive(),sr("auto"),O.isVoiceActive()&&ns()}):Ia("auto"))},600))});pt.push(ng);let rg=s.on("action:resubmit",()=>{setTimeout(()=>{O&&!O.isStreaming()&&O.continueConversation()},100)});pt.push(rg);let Ll=()=>{S(!T,"user")},tn=null,un=null;if(E&&!B()){let{instance:l,element:p}=sl({config:r,plugins:o,onToggle:Ll});tn=l,l||(un=p)}tn?n.appendChild(tn.element):un&&n.appendChild(un),_(),Vo(),Q(),X(O.isStreaming()),nt()==="follow"?Rr(!0):Ws(),wa(),N&&(!E||B()?setTimeout(()=>ie(),0):T&&setTimeout(()=>ie(),200));let Ns=()=>{var R,ce,de,Y,ve,De,Ce,rt,Ue,gt,lt,We,Le,ze,Qe,bt,L,Be,Re,me,_t,Ft;if(B()){Fn(),_();return}let l=wn(r),p=(ce=(R=r.launcher)==null?void 0:R.sidebarMode)!=null?ce:!1,h=l||p||((Y=(de=r.launcher)==null?void 0:de.fullHeight)!=null?Y:!1),y=(ve=n.ownerDocument.defaultView)!=null?ve:window,A=(Ce=(De=r.launcher)==null?void 0:De.mobileFullscreen)!=null?Ce:!0,H=(Ue=(rt=r.launcher)==null?void 0:rt.mobileBreakpoint)!=null?Ue:640,q=y.innerWidth<=H,F=A&&q&&E;try{if(F){ye(),ys(n,r);return}if(I&&(I=!1,ye(),ys(n,r)),!E&&!l){fe.style.height="",fe.style.width="";return}if(!p&&!l){let Kt=(lt=(gt=r==null?void 0:r.launcher)==null?void 0:gt.width)!=null?lt:r==null?void 0:r.launcherWidth,xt=Kt!=null?Kt:Qr;fe.style.width=xt,fe.style.maxWidth=xt}if(Tr(),!h){let Kt=y.innerHeight,xt=64,zt=(Le=(We=r.launcher)==null?void 0:We.heightOffset)!=null?Le:0,Jn=Math.max(200,Kt-xt),nn=Math.min(640,Jn),Ye=Math.max(200,nn-zt);fe.style.height=`${Ye}px`}}finally{if(Fn(),_(),T&&E){let xt=((ze=n.ownerDocument.defaultView)!=null?ze:window).innerWidth<=((bt=(Qe=r.launcher)==null?void 0:Qe.mobileBreakpoint)!=null?bt:640),zt=(Be=(L=r.launcher)==null?void 0:L.sidebarMode)!=null?Be:!1,Jn=(me=(Re=r.launcher)==null?void 0:Re.mobileFullscreen)!=null?me:!0,nn=wn(r)&&Jn&&xt,Ye=zt||Jn&&xt&&E||nn;if(Ye&&!pn){let Pt=n.getRootNode(),cn=Pt instanceof ShadowRoot?Pt.host:n.closest(".persona-host");cn&&!en&&(en=tl(cn,(Ft=(_t=r.launcher)==null?void 0:_t.zIndex)!=null?Ft:Mn)),pn=nl(n.ownerDocument)}else Ye||(en==null||en(),en=null,pn==null||pn(),pn=null)}}};Ns();let Pl=(Rc=n.ownerDocument.defaultView)!=null?Rc:window;if(Pl.addEventListener("resize",Ns),pt.push(()=>Pl.removeEventListener("resize",Ns)),typeof ResizeObserver!="undefined"){let l=new ResizeObserver(()=>{Fn()});l.observe(Oe),pt.push(()=>l.disconnect())}Xn=Ee.scrollTop;let Il=Xr(Ee),og=()=>{let l=Ee.getRootNode(),p=typeof l.getSelection=="function"?l.getSelection():null;return p!=null?p:Ee.ownerDocument.getSelection()},Li=()=>Qu(og(),Ee),Wl=()=>{let l=Ee.scrollTop,p=Xr(Ee),h=p<Il;if(Il=p,nt()!=="follow"){Xn=l,$n();return}let{action:y,nextLastScrollTop:A}=si({following:Qn.isFollowing(),currentScrollTop:l,lastScrollTop:Xn,nearBottom:$o(Ee,Xo),userScrollThreshold:va,isAutoScrolling:fr||To||h,pauseOnUpwardScroll:!0,pauseWhenAwayFromBottom:!1,resumeRequiresDownwardScroll:!0});if(Xn=A,y==="resume"){Li()||Wr();return}y==="pause"&&Zo()};if(Ee.addEventListener("scroll",Wl,{passive:!0}),pt.push(()=>Ee.removeEventListener("scroll",Wl)),typeof ResizeObserver!="undefined"){let l=new ResizeObserver(()=>{Ta()});l.observe(Je),l.observe(Ee),pt.push(()=>l.disconnect())}let Rl=()=>{nt()==="follow"&&Qn.isFollowing()&&Li()&&Zo()},Hl=Ee.ownerDocument;Hl.addEventListener("selectionchange",Rl),pt.push(()=>{Hl.removeEventListener("selectionchange",Rl)});let Bl=l=>{if(nt()!=="follow")return;let p=ai({following:Qn.isFollowing(),deltaY:l.deltaY,nearBottom:$o(Ee,Xo),resumeWhenNearBottom:!0});p==="pause"?Zo():p==="resume"&&!Li()&&Wr()};Ee.addEventListener("wheel",Bl,{passive:!0}),pt.push(()=>Ee.removeEventListener("wheel",Bl)),dt.addEventListener("click",()=>{Eo(),Ee.scrollTop=Ee.scrollHeight,Xn=Ee.scrollTop,Wr(),Rr(!0),$n()}),pt.push(()=>dt.remove()),pt.push(()=>{Es(),Eo()});let Dl=()=>{K&&(Er&&(K.removeEventListener("click",Er),Er=null),D()?(K.style.display="",Er=()=>{S(!1,"user")},K.addEventListener("click",Er)):K.style.display="none")};Dl(),(()=>{let{clearChatButton:l}=J;l&&l.addEventListener("click",()=>{O.clearMessages(),Lr.clear(),Wr(),ps(J.composerOverlay);try{localStorage.removeItem(Cs),r.debug&&console.log(`[AgentWidget] Cleared default localStorage key: ${Cs}`)}catch(h){console.error("[AgentWidget] Failed to clear default localStorage:",h)}if(r.clearChatHistoryStorageKey&&r.clearChatHistoryStorageKey!==Cs)try{localStorage.removeItem(r.clearChatHistoryStorageKey),r.debug&&console.log(`[AgentWidget] Cleared custom localStorage key: ${r.clearChatHistoryStorageKey}`)}catch(h){console.error("[AgentWidget] Failed to clear custom localStorage:",h)}let p=new CustomEvent("persona:clear-chat",{detail:{timestamp:new Date().toISOString()}});if(window.dispatchEvent(p),i!=null&&i.clear)try{let h=i.clear();h instanceof Promise&&h.catch(y=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",y)})}catch(h){typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",h)}d={},M.syncFromMetadata(),ge==null||ge.clear(),pe==null||pe.reset(),V==null||V.update()})})(),Wt&&Wt.addEventListener("submit",Ht),Pe==null||Pe.addEventListener("keydown",Yt),Pe==null||Pe.addEventListener("input",xn),Pe==null||Pe.addEventListener("paste",El);let Nl=(Hc=n.ownerDocument)!=null?Hc:document;Nl.addEventListener("keydown",ar,!0);let Fl="persona-attachment-drop-active",Fs=0,Pi=()=>{Fs=0,ue.classList.remove(Fl)},rs=()=>{var l;return((l=r.attachments)==null?void 0:l.enabled)===!0&&vt!==null},Ol=l=>{!Ti(l.dataTransfer)||!rs()||(Fs++,Fs===1&&ue.classList.add(Fl))},_l=l=>{!Ti(l.dataTransfer)||!rs()||(Fs--,Fs<=0&&Pi())},$l=l=>{!Ti(l.dataTransfer)||!rs()||(l.preventDefault(),l.dataTransfer.dropEffect="copy")},ql=l=>{var h;if(!Ti(l.dataTransfer)||!rs())return;l.preventDefault(),l.stopPropagation(),Pi();let p=Array.from((h=l.dataTransfer.files)!=null?h:[]);p.length!==0&&vt.handleFiles(p)},uo=!0;ue.addEventListener("dragenter",Ol,uo),ue.addEventListener("dragleave",_l,uo),n.addEventListener("dragover",$l,uo),n.addEventListener("drop",ql,uo);let Ha=n.ownerDocument,Ul=l=>{rs()&&l.preventDefault()},zl=l=>{rs()&&l.preventDefault()};Ha.addEventListener("dragover",Ul),Ha.addEventListener("drop",zl),pt.push(()=>{Wt&&Wt.removeEventListener("submit",Ht),Pe==null||Pe.removeEventListener("keydown",Yt),Pe==null||Pe.removeEventListener("input",xn),Pe==null||Pe.removeEventListener("paste",El),Nl.removeEventListener("keydown",ar,!0)}),pt.push(()=>{ue.removeEventListener("dragenter",Ol,uo),ue.removeEventListener("dragleave",_l,uo),n.removeEventListener("dragover",$l,uo),n.removeEventListener("drop",ql,uo),Ha.removeEventListener("dragover",Ul),Ha.removeEventListener("drop",zl),Pi()}),pt.push(()=>{O.cancel()}),tn?pt.push(()=>{tn==null||tn.destroy()}):un&&pt.push(()=>{un==null||un.remove()});let ln={update(l){var An,Rn,Br,yn,Hn,Bn,Wo,Os,$c,qc,Uc,zc,jc,Vc,Kc,Gc,Qc,Xc,Jc,Yc,Zc,ed,td,nd,rd,od,sd,ad,id,ld,cd,dd,pd,ud,md,gd,fd,hd,yd,bd,vd,xd,wd,Cd,Ad,Sd,Td,Md,Ed,kd,Ld,Pd,Id,Wd,Rd,Hd,Bd,Dd,Nd,Fd,Od,_d,$d,qd,Ud,zd,jd,Vd,Kd,Gd,Qd,Xd,Jd,Yd,Zd,ep,tp,np,rp,op,sp,ap,ip,lp,cp,dp,pp,up,mp,gp,fp,hp,yp,bp,vp,xp,wp,Cp,Ap,Sp,Tp,Mp,Ep,kp,Lp,Pp,Ip,Wp,Rp,Hp,Bp,Dp,Np,Fp,Op;let p=r.toolCall,h=r.messageActions,y=(An=r.layout)==null?void 0:An.messages,A=r.colorScheme,H=r.loadingIndicator,q=r.iterationDisplay,F=(Rn=r.features)==null?void 0:Rn.showReasoning,R=(Br=r.features)==null?void 0:Br.showToolCalls,ce=(yn=r.features)==null?void 0:yn.toolCallDisplay,de=(Hn=r.features)==null?void 0:Hn.reasoningDisplay;r={...r,...l},ye(),ys(n,r),Ai(n,r),Si(n,r),Gn(),r.colorScheme!==A&&Ss();let Y=hl.getForInstance(r.plugins);o.length=0,o.push(...Y),E=(Wo=(Bn=r.launcher)==null?void 0:Bn.enabled)!=null?Wo:!0,k=($c=(Os=r.launcher)==null?void 0:Os.autoExpand)!=null?$c:!1,je=(Uc=(qc=r.features)==null?void 0:qc.showReasoning)!=null?Uc:!0,be=(jc=(zc=r.features)==null?void 0:zc.showToolCalls)!=null?jc:!0,Fe=(Kc=(Vc=r.features)==null?void 0:Vc.scrollToBottom)!=null?Kc:{};let ve=nt();Se=(Qc=(Gc=r.features)==null?void 0:Gc.scrollBehavior)!=null?Qc:{},ve!==nt()&&(Eo(),Wr()),Cr(),$n();let De=He;if(He=(Jc=(Xc=r.features)==null?void 0:Xc.showEventStreamToggle)!=null?Jc:!1,He&&!De){if(ge||(G=new ga(oe),ge=new ma(se,G),pe=pe!=null?pe:new fa,G.open().then(()=>ge==null?void 0:ge.restore()).catch(()=>{}),O.setSSEEventCallback((te,Et)=>{var jt;(jt=r.onSSEEvent)==null||jt.call(r,te,Et),pe==null||pe.processEvent(te,Et),ge.push({id:`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:te,timestamp:Date.now(),payload:JSON.stringify(Et)})})),!yt&&$e){let te=(Zc=(Yc=r.features)==null?void 0:Yc.eventStream)==null?void 0:Zc.classNames,Et="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full hover:persona-opacity-80 persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-1"+(te!=null&&te.toggleButton?" "+te.toggleButton:"");yt=b("button",Et),yt.style.width="28px",yt.style.height="28px",yt.style.color=Nn.actionIconColor,yt.type="button",yt.setAttribute("aria-label","Event Stream"),yt.title="Event Stream";let jt=Ae("activity","18px","currentColor",1.5);jt&&yt.appendChild(jt);let ct=J.clearChatButtonWrapper,It=J.closeButtonWrapper,gn=ct||It;gn&&gn.parentNode===$e?$e.insertBefore(yt,gn):$e.appendChild(yt),yt.addEventListener("click",()=>{ae?ur():Nr()})}}else!He&&De&&(ur(),yt&&(yt.remove(),yt=null),ge==null||ge.clear(),G==null||G.destroy(),ge=null,G=null,pe==null||pe.reset(),pe=null);if(((ed=r.launcher)==null?void 0:ed.enabled)===!1&&tn&&(tn.destroy(),tn=null),((td=r.launcher)==null?void 0:td.enabled)===!1&&un&&(un.remove(),un=null),((nd=r.launcher)==null?void 0:nd.enabled)!==!1&&!tn&&!un){let{instance:te,element:Et}=sl({config:r,plugins:o,onToggle:Ll});tn=te,te||(un=Et),n.appendChild(Et)}tn&&tn.update(r),Ge&&((rd=r.launcher)==null?void 0:rd.title)!==void 0&&(Ge.textContent=r.launcher.title),Ze&&((od=r.launcher)==null?void 0:od.subtitle)!==void 0&&(Ze.textContent=r.launcher.subtitle);let Ce=(sd=r.layout)==null?void 0:sd.header;if((Ce==null?void 0:Ce.layout)!==C&&$e){let te=Ce?ui(r,Ce,{showClose:D(),onClose:()=>S(!1,"user")}):qo({config:r,showClose:D(),onClose:()=>S(!1,"user")});ot.replaceHeader(te),$e=ot.header.element,he=ot.header.iconHolder,Ge=ot.header.headerTitle,Ze=ot.header.headerSubtitle,K=ot.header.closeButton,C=Ce==null?void 0:Ce.layout}else if(Ce&&(he&&(he.style.display=Ce.showIcon===!1?"none":""),Ge&&(Ge.style.display=Ce.showTitle===!1?"none":""),Ze&&(Ze.style.display=Ce.showSubtitle===!1?"none":""),K&&(K.style.display=Ce.showCloseButton===!1?"none":""),J.clearChatButtonWrapper)){let te=Ce.showClearChat;if(te!==void 0){J.clearChatButtonWrapper.style.display=te?"":"none";let{closeButtonWrapper:Et}=J;Et&&!Et.classList.contains("persona-absolute")&&(te?Et.classList.remove("persona-ml-auto"):Et.classList.add("persona-ml-auto"))}}let Ue=((ad=r.layout)==null?void 0:ad.showHeader)!==!1;$e&&($e.style.display=Ue?"":"none");let gt=((id=r.layout)==null?void 0:id.showFooter)!==!1;Oe&&(Oe.style.display=gt?"":"none"),Fn(),$n(),E!==W?E?S(k,"auto"):(T=!0,_()):k!==P&&S(k,"auto"),P=k,W=E,Ns(),Dl();let Le=JSON.stringify(l.toolCall)!==JSON.stringify(p),ze=JSON.stringify(r.messageActions)!==JSON.stringify(h),Qe=JSON.stringify((ld=r.layout)==null?void 0:ld.messages)!==JSON.stringify(y),bt=((cd=r.loadingIndicator)==null?void 0:cd.render)!==(H==null?void 0:H.render)||((dd=r.loadingIndicator)==null?void 0:dd.renderIdle)!==(H==null?void 0:H.renderIdle)||((pd=r.loadingIndicator)==null?void 0:pd.showBubble)!==(H==null?void 0:H.showBubble),L=r.iterationDisplay!==q,Be=((md=(ud=r.features)==null?void 0:ud.showReasoning)!=null?md:!0)!==(F!=null?F:!0)||((fd=(gd=r.features)==null?void 0:gd.showToolCalls)!=null?fd:!0)!==(R!=null?R:!0)||JSON.stringify((hd=r.features)==null?void 0:hd.toolCallDisplay)!==JSON.stringify(ce)||JSON.stringify((yd=r.features)==null?void 0:yd.reasoningDisplay)!==JSON.stringify(de);(Le||ze||Qe||bt||L||Be)&&O&&(Ko++,ao(Je,O.getMessages(),ke));let me=(bd=r.launcher)!=null?bd:{},_t=(vd=me.headerIconHidden)!=null?vd:!1,Ft=(wd=(xd=r.layout)==null?void 0:xd.header)==null?void 0:wd.showIcon,Kt=_t||Ft===!1,xt=me.headerIconName,zt=(Cd=me.headerIconSize)!=null?Cd:"48px";if(he){let te=ue.querySelector(".persona-border-b-persona-divider"),Et=te==null?void 0:te.querySelector(".persona-flex-col");if(Kt)he.style.display="none",te&&Et&&!te.contains(Et)&&te.insertBefore(Et,te.firstChild);else{if(he.style.display="",he.style.height=zt,he.style.width=zt,te&&Et&&(te.contains(he)?he.nextSibling!==Et&&(he.remove(),te.insertBefore(he,Et)):te.insertBefore(he,Et)),xt){let ct=parseFloat(zt)||24,It=Ae(xt,ct*.6,"currentColor",1);It?he.replaceChildren(It):he.textContent=(Ad=me.agentIconText)!=null?Ad:"\u{1F4AC}"}else if(me.iconUrl){let ct=he.querySelector("img");if(ct)ct.src=me.iconUrl,ct.style.height=zt,ct.style.width=zt;else{let It=document.createElement("img");It.src=me.iconUrl,It.alt="",It.className="persona-rounded-xl persona-object-cover",It.style.height=zt,It.style.width=zt,he.replaceChildren(It)}}else{let ct=he.querySelector("svg"),It=he.querySelector("img");(ct||It)&&he.replaceChildren(),he.textContent=(Sd=me.agentIconText)!=null?Sd:"\u{1F4AC}"}let jt=he.querySelector("img");jt&&(jt.style.height=zt,jt.style.width=zt)}}let Jn=(Md=(Td=r.layout)==null?void 0:Td.header)==null?void 0:Md.showTitle,nn=(kd=(Ed=r.layout)==null?void 0:Ed.header)==null?void 0:kd.showSubtitle;if(Ge&&(Ge.style.display=Jn===!1?"none":""),Ze&&(Ze.style.display=nn===!1?"none":""),K){((Pd=(Ld=r.layout)==null?void 0:Ld.header)==null?void 0:Pd.showCloseButton)===!1?K.style.display="none":K.style.display="";let Et=(Id=me.closeButtonSize)!=null?Id:"32px",jt=(Wd=me.closeButtonPlacement)!=null?Wd:"inline";K.style.height=Et,K.style.width=Et;let{closeButtonWrapper:ct}=J,It=jt==="top-right",gn=ct==null?void 0:ct.classList.contains("persona-absolute");if(ct&&It!==gn)if(ct.remove(),It)ct.className="persona-absolute persona-top-4 persona-right-4 persona-z-50",ue.style.position="relative",ue.appendChild(ct);else{let ut=(Hd=(Rd=me.clearChat)==null?void 0:Rd.placement)!=null?Hd:"inline",fn=(Dd=(Bd=me.clearChat)==null?void 0:Bd.enabled)!=null?Dd:!0;ct.className=fn&&ut==="inline"?"":"persona-ml-auto";let qn=ue.querySelector(".persona-border-b-persona-divider");qn&&qn.appendChild(ct)}if(K.style.color=me.closeButtonColor||Nn.actionIconColor,me.closeButtonBackgroundColor?(K.style.backgroundColor=me.closeButtonBackgroundColor,K.classList.remove("hover:persona-bg-gray-100")):(K.style.backgroundColor="",K.classList.add("hover:persona-bg-gray-100")),me.closeButtonBorderWidth||me.closeButtonBorderColor){let ut=me.closeButtonBorderWidth||"0px",fn=me.closeButtonBorderColor||"transparent";K.style.border=`${ut} solid ${fn}`,K.classList.remove("persona-border-none")}else K.style.border="",K.classList.add("persona-border-none");me.closeButtonBorderRadius?(K.style.borderRadius=me.closeButtonBorderRadius,K.classList.remove("persona-rounded-full")):(K.style.borderRadius="",K.classList.add("persona-rounded-full")),me.closeButtonPaddingX?(K.style.paddingLeft=me.closeButtonPaddingX,K.style.paddingRight=me.closeButtonPaddingX):(K.style.paddingLeft="",K.style.paddingRight=""),me.closeButtonPaddingY?(K.style.paddingTop=me.closeButtonPaddingY,K.style.paddingBottom=me.closeButtonPaddingY):(K.style.paddingTop="",K.style.paddingBottom="");let Sn=(Nd=me.closeButtonIconName)!=null?Nd:"x",yr=(Fd=me.closeButtonIconText)!=null?Fd:"\xD7";K.innerHTML="";let Dn=Ae(Sn,"28px","currentColor",1);Dn?K.appendChild(Dn):K.textContent=yr;let Zt=(Od=me.closeButtonTooltipText)!=null?Od:"Close chat",Zn=(_d=me.closeButtonShowTooltip)!=null?_d:!0;if(K.setAttribute("aria-label",Zt),ct&&(ct._cleanupTooltip&&(ct._cleanupTooltip(),delete ct._cleanupTooltip),Zn&&Zt)){let ut=null,fn=()=>{if(ut||!K)return;let Ro=K.ownerDocument,_s=Ro.body;if(!_s)return;ut=Dr(Ro,"div","persona-clear-chat-tooltip"),ut.textContent=Zt;let $s=Dr(Ro,"div");$s.className="persona-clear-chat-tooltip-arrow",ut.appendChild($s);let Ho=K.getBoundingClientRect();ut.style.position="fixed",ut.style.zIndex=String(bo),ut.style.left=`${Ho.left+Ho.width/2}px`,ut.style.top=`${Ho.top-8}px`,ut.style.transform="translate(-50%, -100%)",_s.appendChild(ut)},qn=()=>{ut&&ut.parentNode&&(ut.parentNode.removeChild(ut),ut=null)};ct.addEventListener("mouseenter",fn),ct.addEventListener("mouseleave",qn),K.addEventListener("focus",fn),K.addEventListener("blur",qn),ct._cleanupTooltip=()=>{qn(),ct&&(ct.removeEventListener("mouseenter",fn),ct.removeEventListener("mouseleave",qn)),K&&(K.removeEventListener("focus",fn),K.removeEventListener("blur",qn))}}}let{clearChatButton:Ye,clearChatButtonWrapper:Pt}=J;if(Ye){let te=($d=me.clearChat)!=null?$d:{},Et=(qd=te.enabled)!=null?qd:!0,jt=(zd=(Ud=r.layout)==null?void 0:Ud.header)==null?void 0:zd.showClearChat,ct=jt!==void 0?jt:Et,It=(jd=te.placement)!=null?jd:"inline";if(Pt){Pt.style.display=ct?"":"none";let{closeButtonWrapper:gn}=J;!B()&&gn&&!gn.classList.contains("persona-absolute")&&(ct?gn.classList.remove("persona-ml-auto"):gn.classList.add("persona-ml-auto"));let Sn=It==="top-right",yr=Pt.classList.contains("persona-absolute");if(!B()&&Sn!==yr&&ct){if(Pt.remove(),Sn)Pt.className="persona-absolute persona-top-4 persona-z-50",Pt.style.right="48px",ue.style.position="relative",ue.appendChild(Pt);else{Pt.className="persona-relative persona-ml-auto persona-clear-chat-button-wrapper",Pt.style.right="";let Zt=ue.querySelector(".persona-border-b-persona-divider"),Zn=J.closeButtonWrapper;Zt&&Zn&&Zn.parentElement===Zt?Zt.insertBefore(Pt,Zn):Zt&&Zt.appendChild(Pt)}let Dn=J.closeButtonWrapper;Dn&&!Dn.classList.contains("persona-absolute")&&(Sn?Dn.classList.add("persona-ml-auto"):Dn.classList.remove("persona-ml-auto"))}}if(ct){if(!B()){let ut=(Vd=te.size)!=null?Vd:"32px";Ye.style.height=ut,Ye.style.width=ut}let gn=(Kd=te.iconName)!=null?Kd:"refresh-cw",Sn=(Gd=te.iconColor)!=null?Gd:"";Ye.style.color=Sn||Nn.actionIconColor,Ye.innerHTML="";let yr=B()?"14px":"20px",Dn=Ae(gn,yr,"currentColor",2);if(Dn&&Ye.appendChild(Dn),te.backgroundColor?(Ye.style.backgroundColor=te.backgroundColor,Ye.classList.remove("hover:persona-bg-gray-100")):(Ye.style.backgroundColor="",Ye.classList.add("hover:persona-bg-gray-100")),te.borderWidth||te.borderColor){let ut=te.borderWidth||"0px",fn=te.borderColor||"transparent";Ye.style.border=`${ut} solid ${fn}`,Ye.classList.remove("persona-border-none")}else Ye.style.border="",Ye.classList.add("persona-border-none");te.borderRadius?(Ye.style.borderRadius=te.borderRadius,Ye.classList.remove("persona-rounded-full")):(Ye.style.borderRadius="",Ye.classList.add("persona-rounded-full")),te.paddingX?(Ye.style.paddingLeft=te.paddingX,Ye.style.paddingRight=te.paddingX):(Ye.style.paddingLeft="",Ye.style.paddingRight=""),te.paddingY?(Ye.style.paddingTop=te.paddingY,Ye.style.paddingBottom=te.paddingY):(Ye.style.paddingTop="",Ye.style.paddingBottom="");let Zt=(Qd=te.tooltipText)!=null?Qd:"Clear chat",Zn=(Xd=te.showTooltip)!=null?Xd:!0;if(Ye.setAttribute("aria-label",Zt),Pt&&(Pt._cleanupTooltip&&(Pt._cleanupTooltip(),delete Pt._cleanupTooltip),Zn&&Zt)){let ut=null,fn=()=>{if(ut||!Ye)return;let Ro=Ye.ownerDocument,_s=Ro.body;if(!_s)return;ut=Dr(Ro,"div","persona-clear-chat-tooltip"),ut.textContent=Zt;let $s=Dr(Ro,"div");$s.className="persona-clear-chat-tooltip-arrow",ut.appendChild($s);let Ho=Ye.getBoundingClientRect();ut.style.position="fixed",ut.style.zIndex=String(bo),ut.style.left=`${Ho.left+Ho.width/2}px`,ut.style.top=`${Ho.top-8}px`,ut.style.transform="translate(-50%, -100%)",_s.appendChild(ut)},qn=()=>{ut&&ut.parentNode&&(ut.parentNode.removeChild(ut),ut=null)};Pt.addEventListener("mouseenter",fn),Pt.addEventListener("mouseleave",qn),Ye.addEventListener("focus",fn),Ye.addEventListener("blur",qn),Pt._cleanupTooltip=()=>{qn(),Pt&&(Pt.removeEventListener("mouseenter",fn),Pt.removeEventListener("mouseleave",qn)),Ye&&(Ye.removeEventListener("focus",fn),Ye.removeEventListener("blur",qn))}}}}let cn=r.actionParsers&&r.actionParsers.length?r.actionParsers:[bl],cr=r.actionHandlers&&r.actionHandlers.length?r.actionHandlers:[ha.message,ha.messageAndClick];M=vl({parsers:cn,handlers:cr,getSessionMetadata:u,updateSessionMetadata:m,emit:s.emit,documentRef:typeof document!="undefined"?document:null}),ke=_m(r,M,re),O.updateConfig(r),ao(Je,O.getMessages(),ke),Vo(),Q(),X(O.isStreaming());let Yn=((Jd=r.voiceRecognition)==null?void 0:Jd.enabled)===!0,ko=typeof window!="undefined"&&(typeof window.webkitSpeechRecognition!="undefined"||typeof window.SpeechRecognition!="undefined"),Lo=((Zd=(Yd=r.voiceRecognition)==null?void 0:Yd.provider)==null?void 0:Zd.type)==="runtype";if(Yn&&(ko||Lo))if(!j||!Rt){let te=Zm(r.voiceRecognition,r.sendButton);te&&(j=te.micButton,Rt=te.micButtonWrapper,Xt.insertBefore(Rt,bn),j.addEventListener("click",Ra),j.disabled=O.isStreaming())}else{let te=(ep=r.voiceRecognition)!=null?ep:{},Et=(tp=r.sendButton)!=null?tp:{},jt=(np=te.iconName)!=null?np:"mic",ct=(rp=Et.size)!=null?rp:"40px",It=(op=te.iconSize)!=null?op:ct,gn=parseFloat(It)||24;j.style.width=It,j.style.height=It,j.style.minWidth=It,j.style.minHeight=It;let Sn=(ap=(sp=te.iconColor)!=null?sp:Et.textColor)!=null?ap:"currentColor";j.innerHTML="";let yr=Ae(jt,gn,Sn,2);yr?j.appendChild(yr):j.textContent="\u{1F3A4}";let Dn=(ip=te.backgroundColor)!=null?ip:Et.backgroundColor;Dn?j.style.backgroundColor=Dn:j.style.backgroundColor="",Sn?j.style.color=Sn:j.style.color="var(--persona-text, #111827)",te.borderWidth?(j.style.borderWidth=te.borderWidth,j.style.borderStyle="solid"):(j.style.borderWidth="",j.style.borderStyle=""),te.borderColor?j.style.borderColor=te.borderColor:j.style.borderColor="",te.paddingX?(j.style.paddingLeft=te.paddingX,j.style.paddingRight=te.paddingX):(j.style.paddingLeft="",j.style.paddingRight=""),te.paddingY?(j.style.paddingTop=te.paddingY,j.style.paddingBottom=te.paddingY):(j.style.paddingTop="",j.style.paddingBottom="");let Zt=Rt==null?void 0:Rt.querySelector(".persona-send-button-tooltip"),Zn=(lp=te.tooltipText)!=null?lp:"Start voice recognition";if(((cp=te.showTooltip)!=null?cp:!1)&&Zn)if(Zt)Zt.textContent=Zn,Zt.style.display="";else{let fn=document.createElement("div");fn.className="persona-send-button-tooltip",fn.textContent=Zn,Rt==null||Rt.insertBefore(fn,j)}else Zt&&(Zt.style.display="none");Rt.style.display="",j.disabled=O.isStreaming()}else j&&Rt&&(Rt.style.display="none",((pp=(dp=r.voiceRecognition)==null?void 0:dp.provider)==null?void 0:pp.type)==="runtype"?O.isVoiceActive()&&O.toggleVoice():Hr&&po());if(((up=r.attachments)==null?void 0:up.enabled)===!0)if(!we||!le){let te=(mp=r.attachments)!=null?mp:{},jt=(fp=((gp=r.sendButton)!=null?gp:{}).size)!=null?fp:"40px";St||(St=b("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2"),St.style.display="none",Wt.insertBefore(St,Pe)),Ne||(Ne=document.createElement("input"),Ne.type="file",Ne.accept=((hp=te.allowedTypes)!=null?hp:Gr).join(","),Ne.multiple=((yp=te.maxFiles)!=null?yp:4)>1,Ne.style.display="none",Ne.setAttribute("aria-label","Attach files"),Wt.insertBefore(Ne,Pe)),we=b("div","persona-send-button-wrapper"),le=b("button","persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer persona-attachment-button"),le.type="button",le.setAttribute("aria-label",(bp=te.buttonTooltipText)!=null?bp:"Attach file");let ct=(vp=te.buttonIconName)!=null?vp:"paperclip",It=jt,gn=parseFloat(It)||40,Sn=Math.round(gn*.6);le.style.width=It,le.style.height=It,le.style.minWidth=It,le.style.minHeight=It,le.style.fontSize="18px",le.style.lineHeight="1",le.style.backgroundColor="transparent",le.style.color="var(--persona-primary, #111827)",le.style.border="none",le.style.borderRadius="6px",le.style.transition="background-color 0.15s ease",le.addEventListener("mouseenter",()=>{le.style.backgroundColor="var(--persona-palette-colors-black-alpha-50, rgba(0, 0, 0, 0.05))"}),le.addEventListener("mouseleave",()=>{le.style.backgroundColor="transparent"});let yr=Ae(ct,Sn,"currentColor",1.5);yr?le.appendChild(yr):le.textContent="\u{1F4CE}",le.addEventListener("click",Zn=>{Zn.preventDefault(),Ne==null||Ne.click()}),we.appendChild(le);let Dn=(xp=te.buttonTooltipText)!=null?xp:"Attach file",Zt=b("div","persona-send-button-tooltip");Zt.textContent=Dn,we.appendChild(Zt),Vt.append(we),!vt&&Ne&&St&&(vt=na.fromConfig(te),vt.setPreviewsContainer(St),Ne.addEventListener("change",async()=>{vt&&(Ne!=null&&Ne.files)&&(await vt.handleFileSelect(Ne.files),Ne.value="")})),ue.querySelector(".persona-attachment-drop-overlay")||ue.appendChild($m(te.dropOverlay))}else{we.style.display="";let te=(wp=r.attachments)!=null?wp:{};Ne&&(Ne.accept=((Cp=te.allowedTypes)!=null?Cp:Gr).join(","),Ne.multiple=((Ap=te.maxFiles)!=null?Ap:4)>1),vt&&vt.updateConfig({allowedTypes:te.allowedTypes,maxFileSize:te.maxFileSize,maxFiles:te.maxFiles})}else we&&(we.style.display="none"),vt&&vt.clearAttachments(),(Sp=ue.querySelector(".persona-attachment-drop-overlay"))==null||Sp.remove();let Gt=(Tp=r.sendButton)!=null?Tp:{},Po=(Mp=Gt.useIcon)!=null?Mp:!1,mo=(Ep=Gt.iconText)!=null?Ep:"\u2191",go=Gt.iconName,Vr=(kp=Gt.tooltipText)!=null?kp:"Send message",Io=(Lp=Gt.showTooltip)!=null?Lp:!1,hr=(Pp=Gt.size)!=null?Pp:"40px",tt=Gt.backgroundColor,mn=Gt.textColor;if(Po){if(Ve.style.width=hr,Ve.style.height=hr,Ve.style.minWidth=hr,Ve.style.minHeight=hr,Ve.style.fontSize="18px",Ve.style.lineHeight="1",Ve.innerHTML="",mn?Ve.style.color=mn:Ve.style.color="var(--persona-button-primary-fg, #ffffff)",go){let te=parseFloat(hr)||24,Et=(mn==null?void 0:mn.trim())||"currentColor",jt=Ae(go,te,Et,2);jt?Ve.appendChild(jt):Ve.textContent=mo}else Ve.textContent=mo;Ve.className="persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer",tt?(Ve.style.backgroundColor=tt,Ve.classList.remove("persona-bg-persona-primary")):(Ve.style.backgroundColor="",Ve.classList.add("persona-bg-persona-primary"))}else Ve.textContent=(Wp=(Ip=r.copy)==null?void 0:Ip.sendButtonLabel)!=null?Wp:"Send",Ve.style.width="",Ve.style.height="",Ve.style.minWidth="",Ve.style.minHeight="",Ve.style.fontSize="",Ve.style.lineHeight="",Ve.className="persona-rounded-button persona-bg-persona-accent persona-px-4 persona-py-2 persona-text-sm persona-font-semibold persona-text-white disabled:persona-opacity-50 persona-cursor-pointer",tt?(Ve.style.backgroundColor=tt,Ve.classList.remove("persona-bg-persona-accent")):Ve.classList.add("persona-bg-persona-accent"),mn?Ve.style.color=mn:Ve.classList.add("persona-text-white");Gt.borderWidth?(Ve.style.borderWidth=Gt.borderWidth,Ve.style.borderStyle="solid"):(Ve.style.borderWidth="",Ve.style.borderStyle=""),Gt.borderColor?Ve.style.borderColor=Gt.borderColor:Ve.style.borderColor="",Gt.paddingX?(Ve.style.paddingLeft=Gt.paddingX,Ve.style.paddingRight=Gt.paddingX):(Ve.style.paddingLeft="",Ve.style.paddingRight=""),Gt.paddingY?(Ve.style.paddingTop=Gt.paddingY,Ve.style.paddingBottom=Gt.paddingY):(Ve.style.paddingTop="",Ve.style.paddingBottom="");let qt=bn==null?void 0:bn.querySelector(".persona-send-button-tooltip");if(Io&&Vr)if(qt)qt.textContent=Vr,qt.style.display="";else{let te=document.createElement("div");te.className="persona-send-button-tooltip",te.textContent=Vr,bn==null||bn.insertBefore(te,Ve)}else qt&&(qt.style.display="none");let $t=(Np=(Rp=r.layout)==null?void 0:Rp.contentMaxWidth)!=null?Np:B()?(Dp=(Bp=(Hp=r.launcher)==null?void 0:Hp.composerBar)==null?void 0:Bp.contentMaxWidth)!=null?Dp:"720px":void 0;$t?(Je.style.maxWidth=$t,Je.style.marginLeft="auto",Je.style.marginRight="auto",Je.style.width="100%",Wt&&(Wt.style.maxWidth=$t,Wt.style.marginLeft="auto",Wt.style.marginRight="auto"),Ke&&(Ke.style.maxWidth=$t,Ke.style.marginLeft="auto",Ke.style.marginRight="auto")):(Je.style.maxWidth="",Je.style.marginLeft="",Je.style.marginRight="",Je.style.width="",Wt&&(Wt.style.maxWidth="",Wt.style.marginLeft="",Wt.style.marginRight=""),Ke&&(Ke.style.maxWidth="",Ke.style.marginLeft="",Ke.style.marginRight=""));let ft=(Fp=r.statusIndicator)!=null?Fp:{},Qt=(Op=ft.visible)!=null?Op:!0;if(dn.style.display=Qt?"":"none",O){let te=O.getStatus();it(dn,(jt=>{var ct,It,gn,Sn;return jt==="idle"?(ct=ft.idleText)!=null?ct:Tn.idle:jt==="connecting"?(It=ft.connectingText)!=null?It:Tn.connecting:jt==="connected"?(gn=ft.connectedText)!=null?gn:Tn.connected:jt==="error"?(Sn=ft.errorText)!=null?Sn:Tn.error:Tn[jt]})(te),ft,te)}dn.classList.remove("persona-text-left","persona-text-center","persona-text-right");let At=ft.align==="left"?"persona-text-left":ft.align==="center"?"persona-text-center":"persona-text-right";dn.classList.add(At)},open(){D()&&S(!0,"api")},close(){D()&&S(!1,"api")},toggle(){D()&&S(!T,"api")},clearChat(){Pn=!1,O.clearMessages(),Lr.clear(),Wr();try{localStorage.removeItem(Cs),r.debug&&console.log(`[AgentWidget] Cleared default localStorage key: ${Cs}`)}catch(p){console.error("[AgentWidget] Failed to clear default localStorage:",p)}if(r.clearChatHistoryStorageKey&&r.clearChatHistoryStorageKey!==Cs)try{localStorage.removeItem(r.clearChatHistoryStorageKey),r.debug&&console.log(`[AgentWidget] Cleared custom localStorage key: ${r.clearChatHistoryStorageKey}`)}catch(p){console.error("[AgentWidget] Failed to clear custom localStorage:",p)}let l=new CustomEvent("persona:clear-chat",{detail:{timestamp:new Date().toISOString()}});if(window.dispatchEvent(l),i!=null&&i.clear)try{let p=i.clear();p instanceof Promise&&p.catch(h=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",h)})}catch(p){typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",p)}d={},M.syncFromMetadata(),ge==null||ge.clear(),pe==null||pe.reset(),V==null||V.update()},setMessage(l){return!Pe||O.isStreaming()?!1:(!T&&D()&&S(!0,"system"),Pe.value=l,Pe.dispatchEvent(new Event("input",{bubbles:!0})),!0)},submitMessage(l){if(O.isStreaming())return!1;let p=(l==null?void 0:l.trim())||Pe.value.trim();return p?(!T&&D()&&S(!0,"system"),Pe.value="",Pe.style.height="auto",O.sendMessage(p),!0):!1},startVoiceRecognition(){var p,h;return O.isStreaming()?!1:((h=(p=r.voiceRecognition)==null?void 0:p.provider)==null?void 0:h.type)==="runtype"?(O.isVoiceActive()||(!T&&D()&&S(!0,"system"),ht.manuallyDeactivated=!1,_n(),O.toggleVoice().then(()=>{ht.active=O.isVoiceActive(),sr("user"),O.isVoiceActive()&&ns()})),!0):Hr?!0:kl()?(!T&&D()&&S(!0,"system"),ht.manuallyDeactivated=!1,_n(),Ia("user"),!0):!1},stopVoiceRecognition(){var l,p;return((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"?O.isVoiceActive()?(O.toggleVoice().then(()=>{ht.active=!1,ht.manuallyDeactivated=!0,_n(),sr("user"),jr()}),!0):!1:Hr?(ht.manuallyDeactivated=!0,_n(),po("user"),!0):!1},injectMessage(l){return!T&&D()&&S(!0,"system"),O.injectMessage(l)},injectAssistantMessage(l){!T&&D()&&S(!0,"system");let p=O.injectAssistantMessage(l);return U&&(U=!1,z&&(clearTimeout(z),z=null),setTimeout(()=>{O&&!O.isStreaming()&&O.continueConversation()},100)),p},injectUserMessage(l){return!T&&D()&&S(!0,"system"),O.injectUserMessage(l)},injectSystemMessage(l){return!T&&D()&&S(!0,"system"),O.injectSystemMessage(l)},injectMessageBatch(l){return!T&&D()&&S(!0,"system"),O.injectMessageBatch(l)},injectComponentDirective(l){return!T&&D()&&S(!0,"system"),O.injectComponentDirective(l)},injectTestMessage(l){!T&&D()&&S(!0,"system"),O.injectTestEvent(l)},async connectStream(l,p){return O.connectStream(l,p)},__pushEventStreamEvent(l){ge&&(pe==null||pe.processEvent(l.type,l.payload),ge.push({id:`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:l.type,timestamp:Date.now(),payload:JSON.stringify(l.payload)}))},showEventStream(){!He||!ge||Nr()},hideEventStream(){ae&&ur()},isEventStreamVisible(){return ae},showArtifacts(){pr(r)&&(Pn=!1,Gn(),wt==null||wt.setMobileOpen(!0))},hideArtifacts(){pr(r)&&(Pn=!0,Gn())},upsertArtifact(l){return pr(r)?(Pn=!1,O.upsertArtifact(l)):null},selectArtifact(l){pr(r)&&O.selectArtifact(l)},clearArtifacts(){pr(r)&&O.clearArtifacts()},getArtifacts(){var l;return(l=O==null?void 0:O.getArtifacts())!=null?l:[]},getSelectedArtifactId(){var l;return(l=O==null?void 0:O.getSelectedArtifactId())!=null?l:null},focusInput(){return E&&!T&&!B()||!Pe?!1:(Pe.focus(),!0)},async resolveApproval(l,p,h){let A=O.getMessages().find(H=>{var q;return H.variant==="approval"&&((q=H.approval)==null?void 0:q.id)===l});if(!(A!=null&&A.approval))throw new Error(`Approval not found: ${l}`);if(A.approval.toolType==="webmcp"){O.resolveWebMcpApproval(A.id,p);return}return O.resolveApproval(A.approval,p,h)},getMessages(){return O.getMessages()},getStatus(){return O.getStatus()},getPersistentMetadata(){return{...d}},updatePersistentMetadata(l){m(l)},on(l,p){return s.on(l,p)},off(l,p){s.off(l,p)},isOpen(){return D()&&T},isVoiceActive(){return ht.active},toggleReadAloud(l){O.toggleReadAloud(l)},stopReadAloud(){O.stopSpeaking()},getReadAloudState(l){return O.getReadAloudState(l)},onReadAloudChange(l){return O.onReadAloudChange(l)},getState(){return{open:D()&&T,launcherEnabled:E,voiceActive:ht.active,streaming:O.isStreaming()}},showCSATFeedback(l){!T&&D()&&S(!0,"system");let p=Je.querySelector(".persona-feedback-container");p&&p.remove();let h=Nm({onSubmit:async(y,A)=>{var H;O.isClientTokenMode()&&await O.submitCSATFeedback(y,A),(H=l==null?void 0:l.onSubmit)==null||H.call(l,y,A)},onDismiss:l==null?void 0:l.onDismiss,...l});Je.appendChild(h),h.scrollIntoView({behavior:"smooth",block:"end"})},showNPSFeedback(l){!T&&D()&&S(!0,"system");let p=Je.querySelector(".persona-feedback-container");p&&p.remove();let h=Fm({onSubmit:async(y,A)=>{var H;O.isClientTokenMode()&&await O.submitNPSFeedback(y,A),(H=l==null?void 0:l.onSubmit)==null||H.call(l,y,A)},onDismiss:l==null?void 0:l.onDismiss,...l});Je.appendChild(h),h.scrollIntoView({behavior:"smooth",block:"end"})},async submitCSATFeedback(l,p){return O.submitCSATFeedback(l,p)},async submitNPSFeedback(l,p){return O.submitNPSFeedback(l,p)},destroy(){Te!=null&&(clearInterval(Te),Te=null),pt.forEach(l=>l()),Me.remove(),Xe==null||Xe.remove(),tn==null||tn.destroy(),un==null||un.remove(),Er&&K.removeEventListener("click",Er)}};if((((Bc=t==null?void 0:t.debugTools)!=null?Bc:!1)||!!r.debug)&&typeof window!="undefined"){let l=window.AgentWidgetBrowser,p={controller:ln,getMessages:ln.getMessages,getStatus:ln.getStatus,getMetadata:ln.getPersistentMetadata,updateMetadata:ln.updatePersistentMetadata,clearHistory:()=>ln.clearChat(),setVoiceActive:h=>h?ln.startVoiceRecognition():ln.stopVoiceRecognition()};window.AgentWidgetBrowser=p,pt.push(()=>{window.AgentWidgetBrowser===p&&(window.AgentWidgetBrowser=l)})}if(typeof window!="undefined"){let l=n.getAttribute("data-persona-instance")||n.id||"persona-"+Math.random().toString(36).slice(2,8),p=F=>{let R=F.detail;(!(R!=null&&R.instanceId)||R.instanceId===l)&&ln.focusInput()};if(window.addEventListener("persona:focusInput",p),pt.push(()=>{window.removeEventListener("persona:focusInput",p)}),He){let F=ce=>{let de=ce.detail;(!(de!=null&&de.instanceId)||de.instanceId===l)&&ln.showEventStream()},R=ce=>{let de=ce.detail;(!(de!=null&&de.instanceId)||de.instanceId===l)&&ln.hideEventStream()};window.addEventListener("persona:showEventStream",F),window.addEventListener("persona:hideEventStream",R),pt.push(()=>{window.removeEventListener("persona:showEventStream",F),window.removeEventListener("persona:hideEventStream",R)})}let h=F=>{let R=F.detail;(!(R!=null&&R.instanceId)||R.instanceId===l)&&ln.showArtifacts()},y=F=>{let R=F.detail;(!(R!=null&&R.instanceId)||R.instanceId===l)&&ln.hideArtifacts()},A=F=>{let R=F.detail;R!=null&&R.instanceId&&R.instanceId!==l||R!=null&&R.artifact&&ln.upsertArtifact(R.artifact)},H=F=>{let R=F.detail;R!=null&&R.instanceId&&R.instanceId!==l||typeof(R==null?void 0:R.id)=="string"&&ln.selectArtifact(R.id)},q=F=>{let R=F.detail;(!(R!=null&&R.instanceId)||R.instanceId===l)&&ln.clearArtifacts()};window.addEventListener("persona:showArtifacts",h),window.addEventListener("persona:hideArtifacts",y),window.addEventListener("persona:upsertArtifact",A),window.addEventListener("persona:selectArtifact",H),window.addEventListener("persona:clearArtifacts",q),pt.push(()=>{window.removeEventListener("persona:showArtifacts",h),window.removeEventListener("persona:hideArtifacts",y),window.removeEventListener("persona:upsertArtifact",A),window.removeEventListener("persona:selectArtifact",H),window.removeEventListener("persona:clearArtifacts",q)})}let lr=pv(r.persistState);if(lr&&D()){let l=uv(lr.storage),p=`${lr.keyPrefix}widget-open`,h=`${lr.keyPrefix}widget-voice`,y=`${lr.keyPrefix}widget-voice-mode`;if(l){let A=((Dc=lr.persist)==null?void 0:Dc.openState)&&l.getItem(p)==="true",H=((Nc=lr.persist)==null?void 0:Nc.voiceState)&&l.getItem(h)==="true",q=((Fc=lr.persist)==null?void 0:Fc.voiceState)&&l.getItem(y)==="true";if(A&&setTimeout(()=>{ln.open(),setTimeout(()=>{var F;if(H||q)ln.startVoiceRecognition();else if((F=lr.persist)!=null&&F.focusInput){let R=n.querySelector("textarea");R&&R.focus()}},100)},0),(Oc=lr.persist)!=null&&Oc.openState&&(s.on("widget:opened",()=>{l.setItem(p,"true")}),s.on("widget:closed",()=>{l.setItem(p,"false")})),(_c=lr.persist)!=null&&_c.voiceState&&(s.on("voice:state",F=>{l.setItem(h,F.active?"true":"false")}),s.on("user:message",F=>{l.setItem(y,F.viaVoice?"true":"false")})),lr.clearOnChatClear){let F=()=>{l.removeItem(p),l.removeItem(h),l.removeItem(y)},R=()=>F();window.addEventListener("persona:clear-chat",R),pt.push(()=>{window.removeEventListener("persona:clear-chat",R)})}}}return g&&D()&&setTimeout(()=>{ln.open()},0),qe(),ba||zp().then(()=>{O&&(Ko++,Lr.clear(),ao(Je,O.getMessages(),ke))}).catch(()=>{}),ln};var mv=(n,e)=>{let t=n.trim(),r=/^(\d+(?:\.\d+)?)px$/i.exec(t);if(r)return Math.max(0,parseFloat(r[1]));let o=/^(\d+(?:\.\d+)?)%$/i.exec(t);return o?Math.max(0,e*parseFloat(o[1])/100):420},gv=(n,e)=>{if(e===!1){n.style.maxHeight="";return}n.style.maxHeight="100vh",n.style.maxHeight=e},fv=(n,e)=>{e===!1?(n.style.position="relative",n.style.top=""):(n.style.position="sticky",n.style.top="0")},hv=(n,e)=>{let t=n.parentElement;if(!t)return;let r=n.ownerDocument.createElement("div");r.style.cssText="width:0;height:1px;margin:0;padding:0;border:0;visibility:hidden;",t.appendChild(r);let o=r.offsetHeight>0;r.style.height="100%";let s=r.offsetHeight>0;r.remove(),!(!o||s)&&console.warn("[AgentWidget] Docked mode: no ancestor of the dock target provides a definite height, so the dock panel cannot size to your layout."+(e.maxHeight===!1?" The viewport guard is disabled (dock.maxHeight: false), so the panel will grow with the conversation and overflow the viewport.":` Falling back to clamping the panel to ${e.maxHeight} (configurable via launcher.dock.maxHeight).`)+" To size the panel from your layout instead, give the height chain a definite height (e.g. `html, body { height: 100% }`) down to the dock target's parent.")},Um=(n,e)=>{var r,o;let t=(o=(r=e==null?void 0:e.launcher)==null?void 0:r.enabled)!=null?o:!0;n.className="persona-host",n.style.height=t?"":"100%",n.style.display=t?"":"flex",n.style.flexDirection=t?"":"column",n.style.flex=t?"":"1 1 auto",n.style.minHeight=t?"":"0"},Sl=n=>{n.style.position="",n.style.top="",n.style.bottom="",n.style.left="",n.style.right="",n.style.zIndex="",n.style.transform="",n.style.pointerEvents=""},zm=n=>{n.style.inset="",n.style.width="",n.style.height="",n.style.maxWidth="",n.style.maxHeight="",n.style.minWidth="",Sl(n)},wl=n=>{n.style.transition=""},Cl=n=>{n.style.display="",n.style.flexDirection="",n.style.flex="",n.style.minHeight="",n.style.minWidth="",n.style.width="",n.style.height="",n.style.alignItems="",n.style.transition="",n.style.transform="",n.style.marginLeft=""},Al=n=>{n.style.width="",n.style.maxWidth="",n.style.minWidth="",n.style.flex="1 1 auto"},Mi=(n,e)=>{n.style.width="",n.style.minWidth="",n.style.maxWidth="",n.style.boxSizing="",e.style.alignItems=""},yv=(n,e,t,r,o)=>{o?t.parentElement!==e&&(n.replaceChildren(),e.replaceChildren(t,r),n.appendChild(e)):t.parentElement===e&&(e.replaceChildren(),n.appendChild(t),n.appendChild(r))},bv=(n,e,t,r,o,s)=>{let a=s?e:n;o==="left"?a.firstElementChild!==r&&a.replaceChildren(r,t):a.lastElementChild!==r&&a.replaceChildren(t,r)},jm=(n,e,t,r,o,s,a)=>{var v,x,M,E,k,N;let i=vr(s),d=i.reveal==="push";yv(n,e,t,r,d),bv(n,e,t,r,i.side,d),n.dataset.personaHostLayout="docked",n.dataset.personaDockSide=i.side,n.dataset.personaDockOpen=a?"true":"false",n.style.width="100%",n.style.maxWidth="100%",n.style.minWidth="0",n.style.height="100%",n.style.minHeight="0",n.style.position="relative",t.style.display="flex",t.style.flexDirection="column",t.style.minHeight="0",t.style.position="relative",o.className="persona-host",o.style.height="100%",o.style.minHeight="0",o.style.display="flex",o.style.flexDirection="column",o.style.flex="1 1 auto";let c=n.ownerDocument.defaultView,g=(x=(v=s==null?void 0:s.launcher)==null?void 0:v.mobileFullscreen)!=null?x:!0,f=(E=(M=s==null?void 0:s.launcher)==null?void 0:M.mobileBreakpoint)!=null?E:640,u=c!=null?c.innerWidth<=f:!1;if(g&&u&&a){n.dataset.personaDockMobileFullscreen="true",n.removeAttribute("data-persona-dock-reveal"),Cl(e),wl(r),zm(r),Al(t),Mi(o,r),n.style.display="flex",n.style.flexDirection="column",n.style.alignItems="stretch",n.style.overflow="hidden",t.style.flex="1 1 auto",t.style.width="100%",t.style.minWidth="0",r.style.display="flex",r.style.flexDirection="column",r.style.position="fixed",r.style.inset="0",r.style.width="100%",r.style.height="100%",r.style.maxWidth="100%",r.style.minWidth="0",r.style.minHeight="0",r.style.overflow="hidden",r.style.zIndex=String((N=(k=s==null?void 0:s.launcher)==null?void 0:k.zIndex)!=null?N:Mn),r.style.transform="none",r.style.transition="none",r.style.pointerEvents="auto",r.style.flex="none",d&&(e.style.display="flex",e.style.flexDirection="column",e.style.width="100%",e.style.height="100%",e.style.minHeight="0",e.style.minWidth="0",e.style.flex="1 1 auto",e.style.alignItems="stretch",e.style.transform="none",e.style.marginLeft="0",e.style.transition="none",t.style.flex="1 1 auto",t.style.width="100%",t.style.maxWidth="100%",t.style.minWidth="0");return}if(n.removeAttribute("data-persona-dock-mobile-fullscreen"),zm(r),gv(r,i.maxHeight),i.reveal==="overlay"){n.style.display="flex",n.style.flexDirection="row",n.style.alignItems="stretch",n.style.overflow="hidden",n.dataset.personaDockReveal="overlay",Cl(e),wl(r),Al(t),Mi(o,r);let P=i.animate?"transform 180ms ease":"none",W=i.side==="right"?"translateX(100%)":"translateX(-100%)",C=a?"translateX(0)":W;r.style.display="flex",r.style.flexDirection="column",r.style.flex="none",r.style.position="absolute",r.style.top="0",r.style.bottom="0",r.style.width=i.width,r.style.maxWidth=i.width,r.style.minWidth=i.width,r.style.minHeight="0",r.style.overflow="hidden",r.style.transition=P,r.style.transform=C,r.style.pointerEvents=a?"auto":"none",r.style.zIndex="2",i.side==="right"?(r.style.right="0",r.style.left=""):(r.style.left="0",r.style.right="")}else if(i.reveal==="push"){n.style.display="flex",n.style.flexDirection="row",n.style.alignItems="stretch",n.style.overflow="hidden",n.dataset.personaDockReveal="push",wl(r),Sl(r),Mi(o,r);let P=mv(i.width,n.clientWidth),W=Math.max(0,n.clientWidth),C=i.animate?"margin-left 180ms ease":"none",I=i.side==="right"?a?-P:0:a?0:-P;e.style.display="flex",e.style.flexDirection="row",e.style.flex="0 0 auto",e.style.minHeight="0",e.style.minWidth="0",e.style.alignItems="stretch",e.style.height="100%",e.style.width=`${W+P}px`,e.style.transition=C,e.style.marginLeft=`${I}px`,e.style.transform="",t.style.flex="0 0 auto",t.style.flexGrow="0",t.style.flexShrink="0",t.style.width=`${W}px`,t.style.maxWidth=`${W}px`,t.style.minWidth=`${W}px`,r.style.display="flex",r.style.flexDirection="column",r.style.flex="0 0 auto",r.style.flexShrink="0",r.style.width=i.width,r.style.minWidth=i.width,r.style.maxWidth=i.width,r.style.position="relative",r.style.top="",r.style.overflow="hidden",r.style.transition="none",r.style.pointerEvents=a?"auto":"none"}else{n.style.display="flex",n.style.flexDirection="row",n.style.alignItems="stretch",n.style.overflow="",Cl(e),Sl(r),Al(t),Mi(o,r);let P=i.reveal==="emerge";P?n.dataset.personaDockReveal="emerge":n.removeAttribute("data-persona-dock-reveal");let W=a?i.width:"0px",C=i.animate?"width 180ms ease, min-width 180ms ease, max-width 180ms ease, flex-basis 180ms ease":"none",I=!a;r.style.display="flex",r.style.flexDirection="column",r.style.flex=`0 0 ${W}`,r.style.width=W,r.style.maxWidth=W,r.style.minWidth=W,r.style.minHeight="0",fv(r,i.maxHeight),r.style.overflow=P||I?"hidden":"visible",r.style.transition=C,P&&(r.style.alignItems=i.side==="right"?"flex-start":"flex-end",o.style.width=i.width,o.style.minWidth=i.width,o.style.maxWidth=i.width,o.style.boxSizing="border-box")}},vv=(n,e)=>{let t=n.ownerDocument.createElement("div");return Um(t,e),n.appendChild(t),{mode:"direct",host:t,shell:null,syncWidgetState:()=>{},updateConfig(r){Um(t,r)},destroy(){t.remove()}}},xv=(n,e)=>{var N,P,W,C;let{ownerDocument:t}=n,r=n.parentElement;if(!r)throw new Error("Docked widget target must be attached to the DOM");let o=n.tagName.toUpperCase();if(o==="BODY"||o==="HTML")throw new Error('Docked widget target must be a concrete container element, not "body" or "html"');let s=n.nextSibling,a=t.createElement("div"),i=t.createElement("div"),d=t.createElement("div"),c=t.createElement("aside"),g=t.createElement("div"),f=(P=(N=e==null?void 0:e.launcher)==null?void 0:N.enabled)==null||P?(C=(W=e==null?void 0:e.launcher)==null?void 0:W.autoExpand)!=null?C:!1:!0;i.dataset.personaDockRole="push-track",d.dataset.personaDockRole="content",c.dataset.personaDockRole="panel",g.dataset.personaDockRole="host",c.appendChild(g),r.insertBefore(a,n),d.appendChild(n);let u=null,m=()=>{u==null||u.disconnect(),u=null},v=()=>{m(),vr(e).reveal==="push"&&typeof ResizeObserver!="undefined"&&(u=new ResizeObserver(()=>{jm(a,i,d,c,g,e,f)}),u.observe(a))},x=!1,M=()=>{jm(a,i,d,c,g,e,f),v(),f&&!x&&a.dataset.personaDockMobileFullscreen!=="true"&&(x=!0,hv(a,vr(e)))},E=a.ownerDocument.defaultView,k=()=>{M()};return E==null||E.addEventListener("resize",k),vr(e).reveal==="push"?(i.appendChild(d),i.appendChild(c),a.appendChild(i)):(a.appendChild(d),a.appendChild(c)),M(),{mode:"docked",host:g,shell:a,syncWidgetState(I){let B=I.launcherEnabled?I.open:!0;f!==B&&(f=B,M())},updateConfig(I){var B,D;e=I,((D=(B=e==null?void 0:e.launcher)==null?void 0:B.enabled)!=null?D:!0)===!1&&(f=!0),M()},destroy(){E==null||E.removeEventListener("resize",k),m(),r.isConnected&&(s&&s.parentNode===r?r.insertBefore(n,s):r.appendChild(n)),a.remove()}}},Vm=(n,e)=>wn(e)?xv(n,e):vv(n,e);var ya={desktop:{w:1280,h:800},mobile:{w:390,h:844}},Km=.15,Gm=1.5,Tl="persona-preview-shell-theme",wv={load:()=>null,save:()=>{},clear:()=>{}},Cv=["How do I get started?","Pricing & plans","Talk to support"];function Ml(n){return n.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function Av(n){return n==="dark"?{pageBg:"linear-gradient(180deg, #0f172a 0%, #020617 100%)",chromeBg:"#111827",chromeBorder:"#1f2937",dot:"#475569",skeleton:"#334155",cardBg:"#1e293b",cardBorder:"rgba(148, 163, 184, 0.16)"}:{pageBg:"linear-gradient(180deg, #ffffff 0%, #f8fafc 100%)",chromeBg:"#ffffff",chromeBorder:"#e5e7eb",dot:"#cbd5e1",skeleton:"#e2e8f0",cardBg:"#e2e8f0",cardBorder:"rgba(148, 163, 184, 0.18)"}}function Qm(n){let e=Av(n);return`* { box-sizing: border-box; }
|
|
109
|
+
`}if(!y&&!l){let Ot="max-height: -moz-available !important; max-height: stretch !important;",Ft=p?"":"padding-top: 1.25em !important;",gt=p?"":`z-index: ${(sn=(Je=r.launcher)==null?void 0:Je.zIndex)!=null?sn:xn} !important;`;Me.style.cssText+=Ot+Ft+gt}Ve()};he(),ss(n,r),Ja(n,r),Ya(n,r);let ct=[];ct.push(()=>{document.removeEventListener("keydown",Qr)});let Gt=null,rn=null;ct.push(()=>{Gt==null||Gt(),Gt=null,rn==null||rn(),rn=null}),Nn&&ct.push(()=>{Nn==null||Nn.disconnect(),Nn=null}),ct.push(()=>{Sn==null||Sn(),Sn=null,Wr(),Ht&&(Ht.remove(),Ht=null),wt==null||wt.element.style.removeProperty("width"),wt==null||wt.element.style.removeProperty("maxWidth")}),Pe&&ct.push(()=>{Ue!==null&&(cancelAnimationFrame(Ue),Ue=null),V==null||V.destroy(),V=null,fe==null||fe.destroy(),fe=null,Q=null});let xr=null,us=()=>{xr&&(xr(),xr=null),r.colorScheme==="auto"&&(xr=Iu(()=>{ss(n,r)}))};us(),ct.push(()=>{xr&&(xr(),xr=null)});let Rr=(yc=r.features)==null?void 0:yc.streamAnimation;if(Rr!=null&&Rr.type&&Rr.type!=="none"){let l=$s(Rr.type,Rr.plugins);l&&(Ri(l,n),ct.push(()=>zu(n)))}let go=am(Lt),wr=null,O,Do=l=>{var y,A;if(!O)return;let p=l!=null?l:O.getMessages(),h=((A=(y=r.features)==null?void 0:y.suggestReplies)==null?void 0:A.enabled)!==!1?Jp(p):null;h?go.render(h,O,Se,p,r.suggestionChipsConfig,{agentPushed:!0}):p.some(R=>R.role==="user")?go.render([],O,Se,p):go.render(r.suggestionChips,O,Se,p,r.suggestionChipsConfig)},Cr=!1,Ar=Bu(),Hr=new Map,Sr=new Map,ir=new Map,No=0,ea=To()!==null,Un=Wa(),qn=0,lr=null,cr=!1,fo=!1,Br=0,hn=null,Tr=null,Fo=!1,ho=!1,Oo=null,ta=4,_o=24,na=80,$o=new Map,ft={active:!1,manuallyDeactivated:!1,lastUserMessageWasVoice:!1,lastUserMessageId:null},ms=(vc=(bc=r.voiceRecognition)==null?void 0:bc.autoResume)!=null?vc:!1,er=l=>{s.emit("voice:state",{active:ft.active,source:l,timestamp:Date.now()})},Wn=()=>{u(l=>({...l,voiceState:{active:ft.active,timestamp:Date.now(),manuallyDeactivated:ft.manuallyDeactivated}}))},ra=()=>{var y,A;if(((y=r.voiceRecognition)==null?void 0:y.enabled)===!1)return;let l=el(d.voiceState),p=!!l.active,h=Number((A=l.timestamp)!=null?A:0);ft.manuallyDeactivated=!!l.manuallyDeactivated,p&&Date.now()-h<cv&&setTimeout(()=>{var R,q;ft.active||(ft.manuallyDeactivated=!1,((q=(R=r.voiceRecognition)==null?void 0:R.provider)==null?void 0:q.type)==="runtype"?O.toggleVoice().then(()=>{ft.active=O.isVoiceActive(),er("restore"),O.isVoiceActive()&&zo()}):aa("restore"))},1e3)},oa=()=>O?Lm(O.getMessages()).filter(l=>!l.__skipPersist):[];function Yr(l){if(!(i!=null&&i.save))return;let h={messages:l?Lm(l):O?oa():[],metadata:d,artifacts:Fn.artifacts,selectedArtifactId:Fn.selectedId};try{let y=i.save(h);y instanceof Promise&&y.catch(A=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to persist state:",A)})}catch(y){typeof console!="undefined"&&console.error("[AgentWidget] Failed to persist state:",y)}}let et=null,w=()=>Me.querySelector("#persona-scroll-container")||xe,$=()=>{et!==null&&(cancelAnimationFrame(et),et=null),cr=!1},_=()=>{lr!==null&&(cancelAnimationFrame(lr),lr=null),fo=!1,$()},G=()=>{Br>0?(Cn.textContent=String(Br),Cn.style.display="",lt.setAttribute("aria-label",`${Yt()||"Jump to latest"} (${Br} new)`)):(Cn.textContent="",Cn.style.display="none",lt.setAttribute("aria-label",Yt()||"Jump to latest"))},ge=()=>{Br!==0&&(Br=0,G())},Fe=()=>Ze()==="follow"?!Un.isFollowing():!Io(xe,_o),Xe=()=>{if(!Rt()||ee){lt.parentNode&<.remove(),lt.style.display="none";return}lt.parentNode!==le&&le.appendChild(lt),Pn();let p=qr(xe)>0&&Fe();p||ge(),lt.style.display=p?"":"none"},Mt=()=>{Un.pause()&&(_(),Xe())},Dr=()=>{Un.resume(),ge(),Xe()},Rn=(l=!1)=>{Ze()==="follow"&&Un.isFollowing()&&(!l&&!Cr||(lr!==null&&(cancelAnimationFrame(lr),lr=null),fo=!0,lr=requestAnimationFrame(()=>{lr=null,fo=!1,Un.isFollowing()&&pn(w(),l?220:140)})))},zn=(l,p,h,y=()=>!0)=>{let A=l.scrollTop,R=p(),q=R-A;$();let F=performance.now();cr=!0;let H=se=>1-Math.pow(1-se,3),oe=se=>{if(!y()){$();return}let Y=p();Y!==R&&(R=Y,q=R-A);let ye=se-F,Ne=Math.min(ye/h,1),we=H(Ne),tt=A+q*we;l.scrollTop=tt,qn=l.scrollTop,Ne<1?et=requestAnimationFrame(oe):(l.scrollTop=R,qn=l.scrollTop,et=null,cr=!1)};et=requestAnimationFrame(oe)},pn=(l,p=500)=>{let h=qr(l)-l.scrollTop;if(Math.abs(h)<1){qn=l.scrollTop;return}if(Math.abs(h)>=na){$(),cr=!0,l.scrollTop=qr(l),qn=l.scrollTop,cr=!1;return}zn(l,()=>qr(l),p,()=>Un.isFollowing())},Zr=()=>{let l=w();cr=!0,l.scrollTop=qr(l),qn=l.scrollTop,cr=!1,Xe()},Nr=l=>{Zt.style.height=`${Math.max(0,Math.round(l))}px`,hn&&(hn.spacerHeight=Math.max(0,l))},un=()=>{Tr!==null&&(cancelAnimationFrame(Tr),Tr=null),$(),hn=null,Zt.style.height="0px"},Hn=l=>{Tr!==null&&cancelAnimationFrame(Tr),Tr=requestAnimationFrame(()=>{var oe;Tr=null;let p=typeof CSS!="undefined"&&typeof CSS.escape=="function"?CSS.escape(l):l.replace(/"/g,'\\"'),h=xe.querySelector(`[data-message-id="${p}"]`);if(!h)return;let y=0,A=h;for(;A&&A!==xe;)y+=A.offsetTop,A=A.offsetParent;let R=(oe=hn==null?void 0:hn.spacerHeight)!=null?oe:0,q=xe.scrollHeight-R,{targetScrollTop:F,spacerHeight:H}=_u({anchorOffsetTop:y,topOffset:Wt(),viewportHeight:xe.clientHeight,contentHeight:q});hn={initialSpacerHeight:H,contentHeightAtAnchor:q,spacerHeight:H},Nr(H),zn(xe,()=>F,220)})},jn=()=>{if(Ze()==="follow"){if(!Un.isFollowing()||Io(xe,1))return;Rn(!Cr);return}if(hn&&hn.initialSpacerHeight>0){let l=xe.scrollHeight-hn.spacerHeight,p=$u({initialSpacerHeight:hn.initialSpacerHeight,contentHeightAtAnchor:hn.contentHeightAtAnchor,currentContentHeight:l});p!==hn.spacerHeight&&Nr(p)}Xe()},qm=l=>{let p=Ze();p==="follow"?(Dr(),Rn(!0)):p==="anchor-top"&&Hn(l)},zm=l=>{let p=new Map;l.forEach(h=>{let y=$o.get(h.id);p.set(h.id,{streaming:h.streaming,role:h.role}),!y&&h.role==="assistant"&&(s.emit("assistant:message",h),!ho&&Ze()!=="anchor-top"&&Fe()&&(Br+=1,G(),Xe())),h.role==="assistant"&&(y!=null&&y.streaming)&&h.streaming===!1&&s.emit("assistant:complete",h),h.variant==="approval"&&h.approval&&(y?h.approval.status!=="pending"&&s.emit("approval:resolved",{approval:h.approval,decision:h.approval.status}):s.emit("approval:requested",{approval:h.approval,message:h}))}),$o.clear(),p.forEach((h,y)=>{$o.set(y,h)})},jm=(l,p,h)=>{var ot,He,Ie,qe,Ve,yt;let y=document.createElement("div"),R=(()=>{var De;let L=o.find(Be=>Be.renderLoadingIndicator);if(L!=null&&L.renderLoadingIndicator)return L.renderLoadingIndicator;if((De=r.loadingIndicator)!=null&&De.render)return r.loadingIndicator.render})(),q=(L,De)=>De==null?!1:typeof De=="string"?(L.textContent=De,!0):(L.appendChild(De),!0),F=new Set,H=new Set,oe=o.some(L=>L.renderAskUserQuestion),se=[],Y=[],ye=r.enableComponentStreaming!==!1,Ne=o.some(L=>L.renderApproval)&&r.approval!==!1,we=[];if(p.forEach(L=>{var Ge,Et,tn,rr,Kn,bo,vo,Vo,Ko,zt,xo,no,ro,Or,wo,dr;F.add(L.id);let De=oe&&Eo(L),Be=Ne&&L.variant==="approval"&&!!L.approval,me=!De&&L.role==="assistant"&&!L.variant&&ye&&Tm(L);if(!Be&&ir.has(L.id)){let Je=l.querySelector(`#wrapper-${L.id}`);Je==null||Je.removeAttribute("data-preserve-runtime"),ir.delete(L.id)}if(!me&&Sr.has(L.id)){let Je=l.querySelector(`#wrapper-${L.id}`);Je==null||Je.removeAttribute("data-preserve-runtime"),Sr.delete(L.id)}let Nt=Eo(L)?`:${(Ge=L.agentMetadata)!=null&&Ge.askUserQuestionAnswered?"a":"u"}:${(Et=L.agentMetadata)!=null&&Et.askUserQuestionAnswers?Object.keys(L.agentMetadata.askUserQuestionAnswers).length:0}`:"",Bt=Hu(L,No)+Nt,qt=De||Be||me?null:Du(Ar,L.id,Bt);if(qt){y.appendChild(qt.cloneNode(!0)),Eo(L)&&((tn=L.toolCall)!=null&&tn.id)&&((rr=L.agentMetadata)==null?void 0:rr.awaitingLocalTool)===!0&&!((Kn=L.agentMetadata)!=null&&Kn.askUserQuestionAnswered)&&(H.add(L.toolCall.id),fa(L,r,X.composerOverlay));return}let xt=null,$t=o.find(Je=>!!(L.variant==="reasoning"&&Je.renderReasoning||L.variant==="tool"&&Je.renderToolCall||!L.variant&&Je.renderMessage)),Vn=(bo=r.layout)==null?void 0:bo.messages;if(Eo(L)&&((vo=L.agentMetadata)==null?void 0:vo.askUserQuestionAnswered)===!0){Hr.delete(L.id);let Je=l.querySelector(`#wrapper-${L.id}`);Je==null||Je.removeAttribute("data-preserve-runtime");return}if(wi(L)&&((Ko=(Vo=r.features)==null?void 0:Vo.suggestReplies)==null?void 0:Ko.enabled)!==!1)return;if(Eo(L)&&((xo=(zt=r.features)==null?void 0:zt.askUserQuestion)==null?void 0:xo.enabled)!==!1){let Je=o.find(sn=>typeof sn.renderAskUserQuestion=="function");if(Je&&At.current){let sn=Hr.get(L.id),Ot=sn!==Bt,Ft=null;if(Ot){let{payload:Ct,complete:yn}=Jo(L),Tn=L.id,Er=()=>{var cn;return(cn=At.current)==null?void 0:cn.getMessages().find(Mn=>Mn.id===Tn)};Ft=Je.renderAskUserQuestion({message:L,payload:Ct,complete:yn,resolve:cn=>{var En;let Mn=Er();Mn&&((En=At.current)==null||En.resolveAskUserQuestion(Mn,cn))},dismiss:()=>{var Mn,En,Co;let cn=Er();(Mn=cn==null?void 0:cn.agentMetadata)!=null&&Mn.awaitingLocalTool&&((En=At.current)==null||En.markAskUserQuestionResolved(cn),(Co=At.current)==null||Co.resolveAskUserQuestion(cn,"(dismissed)"))},config:r})}let gt=sn!=null;if(Ot&&Ft===null&&!gt){((no=L.agentMetadata)==null?void 0:no.awaitingLocalTool)===!0&&!((ro=L.agentMetadata)!=null&&ro.askUserQuestionAnswered)&&(H.add(L.toolCall.id),fa(L,r,X.composerOverlay));return}let jt=document.createElement("div");jt.className="persona-flex",jt.id=`wrapper-${L.id}`,jt.setAttribute("data-wrapper-id",L.id),jt.setAttribute("data-ask-plugin-stub","true"),jt.setAttribute("data-preserve-runtime","true"),y.appendChild(jt),se.push({messageId:L.id,fingerprint:Bt,bubble:Ft});return}else{((Or=L.agentMetadata)==null?void 0:Or.awaitingLocalTool)===!0&&!((wo=L.agentMetadata)!=null&&wo.askUserQuestionAnswered)&&(H.add(L.toolCall.id),fa(L,r,X.composerOverlay));return}}else if(Be){let Je=o.find(gt=>typeof gt.renderApproval=="function"),Ot=ir.get(L.id)!==Bt,Ft=null;if(Ot&&(Je!=null&&Je.renderApproval)){let gt=L.id,jt=(Ct,yn)=>{var Er,cn,Mn;let Tn=(Er=At.current)==null?void 0:Er.getMessages().find(En=>En.id===gt);Tn!=null&&Tn.approval&&(Tn.approval.toolType==="webmcp"?(cn=At.current)==null||cn.resolveWebMcpApproval(Tn.id,Ct):(Mn=At.current)==null||Mn.resolveApproval(Tn.approval,Ct,yn))};Ft=Je.renderApproval({message:L,defaultRenderer:()=>Qa(L,r),config:r,approve:Ct=>jt("approved",Ct),deny:Ct=>jt("denied",Ct)})}if(Ot&&Ft===null){let gt=l.querySelector(`#wrapper-${L.id}`);gt==null||gt.removeAttribute("data-preserve-runtime"),ir.delete(L.id),xt=Qa(L,r)}else{let gt=document.createElement("div");gt.className="persona-flex",gt.id=`wrapper-${L.id}`,gt.setAttribute("data-wrapper-id",L.id),gt.setAttribute("data-approval-plugin-stub","true"),gt.setAttribute("data-preserve-runtime","true"),y.appendChild(gt),we.push({messageId:L.id,fingerprint:Bt,bubble:Ft});return}}else if($t)if(L.variant==="reasoning"&&L.reasoning&&$t.renderReasoning){if(!$e)return;xt=$t.renderReasoning({message:L,defaultRenderer:()=>Ui(L,r),config:r})}else if(L.variant==="tool"&&L.toolCall&&$t.renderToolCall){if(!ve)return;xt=$t.renderToolCall({message:L,defaultRenderer:()=>zi(L,r),config:r})}else $t.renderMessage&&(xt=$t.renderMessage({message:L,defaultRenderer:()=>{let Je=$i(L,h,Vn,r.messageActions,ie,{loadingIndicatorRenderer:R,widgetConfig:r});return L.role!=="user"&&Gi(Je,L,r,O),Je},config:r}));if(!xt&&me){let Je=Mm(L);if(Je){let sn=Sr.get(L.id),Ot=sn!==Bt,Ft=r.wrapComponentDirectiveInBubble!==!1,gt=null;if(Ot){let jt=Am(Je,{config:r,message:L,transform:h});if(jt)if(Ft){let Ct=document.createElement("div");if(Ct.className=["persona-message-bubble","persona-max-w-[85%]","persona-rounded-2xl","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-p-4"].join(" "),Ct.id=`bubble-${L.id}`,Ct.setAttribute("data-message-id",L.id),L.content&&L.content.trim()){let yn=document.createElement("div");yn.className="persona-mb-3 persona-text-sm persona-leading-relaxed",yn.innerHTML=h({text:L.content,message:L,streaming:!!L.streaming,raw:L.rawContent}),Ct.appendChild(yn)}Ct.appendChild(jt),gt=Ct}else{let Ct=document.createElement("div");if(Ct.className="persona-flex persona-flex-col persona-w-full persona-max-w-full persona-gap-3 persona-items-stretch",Ct.id=`bubble-${L.id}`,Ct.setAttribute("data-message-id",L.id),Ct.setAttribute("data-persona-component-directive","true"),L.content&&L.content.trim()){let yn=document.createElement("div");yn.className="persona-text-sm persona-leading-relaxed persona-text-persona-primary persona-w-full",yn.innerHTML=h({text:L.content,message:L,streaming:!!L.streaming,raw:L.rawContent}),Ct.appendChild(yn)}Ct.appendChild(jt),gt=Ct}}if(gt||sn!=null){let jt=document.createElement("div");jt.className="persona-flex",jt.id=`wrapper-${L.id}`,jt.setAttribute("data-wrapper-id",L.id),jt.setAttribute("data-component-directive-stub","true"),jt.setAttribute("data-preserve-runtime","true"),Ft||jt.classList.add("persona-w-full"),y.appendChild(jt),Y.push({messageId:L.id,fingerprint:Bt,bubble:gt});return}}}if(!xt)if(L.variant==="reasoning"&&L.reasoning){if(!$e)return;xt=Ui(L,r)}else if(L.variant==="tool"&&L.toolCall){if(!ve)return;xt=zi(L,r)}else if(L.variant==="approval"&&L.approval){if(r.approval===!1)return;xt=Qa(L,r)}else{let Je=(dr=r.layout)==null?void 0:dr.messages;Je!=null&&Je.renderUserMessage&&L.role==="user"?xt=Je.renderUserMessage({message:L,config:r,streaming:!!L.streaming}):Je!=null&&Je.renderAssistantMessage&&L.role==="assistant"?xt=Je.renderAssistantMessage({message:L,config:r,streaming:!!L.streaming}):xt=$i(L,h,Je,r.messageActions,ie,{loadingIndicatorRenderer:R,widgetConfig:r}),L.role!=="user"&&xt&&Gi(xt,L,r,O)}let Xt=document.createElement("div");Xt.className="persona-flex",Xt.id=`wrapper-${L.id}`,Xt.setAttribute("data-wrapper-id",L.id),L.role==="user"&&Xt.classList.add("persona-justify-end"),(xt==null?void 0:xt.getAttribute("data-persona-component-directive"))==="true"&&Xt.classList.add("persona-w-full"),Xt.appendChild(xt),Nu(Ar,L.id,Bt,Xt),y.appendChild(Xt)}),X.composerOverlay&&X.composerOverlay.querySelectorAll("[data-persona-ask-sheet-for]").forEach(De=>{let Be=De.getAttribute("data-persona-ask-sheet-for");Be&&!H.has(Be)&&Zo(X.composerOverlay,Be)}),(He=(ot=r.features)==null?void 0:ot.toolCallDisplay)!=null&&He.grouped){let L=[],De=[];p.forEach(Be=>{if(Be.variant==="tool"&&Be.toolCall&&ve){De.push(Be);return}De.length>1&&L.push(De),De=[]}),De.length>1&&L.push(De),L.forEach((Be,me)=>{var Ge,Et;let Nt=Be.map(tn=>Array.from(y.children).find(rr=>rr instanceof HTMLElement&&rr.getAttribute("data-wrapper-id")===tn.id)).filter(tn=>!!tn);if(Nt.length<2)return;let Bt=document.createElement("div");Bt.className="persona-flex",Bt.id=`wrapper-tool-group-${me}-${Be[0].id}`,Bt.setAttribute("data-wrapper-id",`tool-group-${me}-${Be[0].id}`);let qt=document.createElement("div");qt.className="persona-tool-group persona-flex persona-w-full persona-flex-col persona-gap-2",qt.setAttribute("data-persona-tool-group","true");let xt=document.createElement("div");xt.className="persona-tool-group-summary persona-text-xs persona-text-persona-muted";let $t=`Called ${Be.length} tools`,Vn=(Et=(Ge=r.toolCall)==null?void 0:Ge.renderGroupedSummary)==null?void 0:Et.call(Ge,{messages:Be,toolCalls:Be.map(tn=>tn.toolCall).filter(tn=>!!tn),defaultSummary:$t,config:r});q(xt,Vn)||(xt.textContent=$t);let Xt=document.createElement("div");Xt.className="persona-tool-group-stack persona-flex persona-flex-col",qt.append(xt,Xt),Bt.appendChild(qt),Nt[0].before(Bt),Nt.forEach((tn,rr)=>{let Kn=document.createElement("div");Kn.className="persona-tool-group-item persona-relative",Kn.setAttribute("data-persona-tool-group-item","true"),rr<Nt.length-1&&Kn.setAttribute("data-persona-tool-group-connector","true"),Kn.appendChild(tn),Xt.appendChild(Kn)})})}Fu(Ar,F);let tt=p.some(L=>L.role==="assistant"&&L.streaming),_e=p[p.length-1],mt=(_e==null?void 0:_e.role)==="assistant"&&!_e.streaming&&_e.variant!=="approval";if(Cr&&p.some(L=>L.role==="user")&&!tt&&!mt){let L={config:r,streaming:!0,location:"standalone",defaultRenderer:Gs},De=o.find(me=>me.renderLoadingIndicator),Be=null;if(De!=null&&De.renderLoadingIndicator&&(Be=De.renderLoadingIndicator(L)),Be===null&&((Ie=r.loadingIndicator)!=null&&Ie.render)&&(Be=r.loadingIndicator.render(L)),Be===null&&(Be=Gs()),Be){let me=document.createElement("div"),Nt=((qe=r.loadingIndicator)==null?void 0:qe.showBubble)!==!1;me.className=Nt?["persona-max-w-[85%]","persona-rounded-2xl","persona-text-sm","persona-leading-relaxed","persona-shadow-sm","persona-bg-persona-surface","persona-border","persona-text-persona-primary","persona-px-5","persona-py-3"].join(" "):["persona-max-w-[85%]","persona-text-sm","persona-leading-relaxed","persona-text-persona-primary"].join(" "),me.setAttribute("data-typing-indicator","true"),me.style.borderColor="var(--persona-message-assistant-border, var(--persona-border, #e5e7eb))",me.appendChild(Be);let Bt=document.createElement("div");Bt.className="persona-flex",Bt.id="wrapper-typing-indicator",Bt.setAttribute("data-wrapper-id","typing-indicator"),Bt.appendChild(me),y.appendChild(Bt)}}if(!Cr&&p.length>0){let L=p[p.length-1],De={config:r,lastMessage:L,messageCount:p.length},Be=o.find(Nt=>Nt.renderIdleIndicator),me=null;if(Be!=null&&Be.renderIdleIndicator&&(me=Be.renderIdleIndicator(De)),me===null&&((Ve=r.loadingIndicator)!=null&&Ve.renderIdle)&&(me=r.loadingIndicator.renderIdle(De)),me){let Nt=document.createElement("div"),Bt=((yt=r.loadingIndicator)==null?void 0:yt.showBubble)!==!1;Nt.className=Bt?["persona-max-w-[85%]","persona-rounded-2xl","persona-text-sm","persona-leading-relaxed","persona-shadow-sm","persona-bg-persona-surface","persona-border","persona-border-persona-message-border","persona-text-persona-primary","persona-px-5","persona-py-3"].join(" "):["persona-max-w-[85%]","persona-text-sm","persona-leading-relaxed","persona-text-persona-primary"].join(" "),Nt.setAttribute("data-idle-indicator","true"),Nt.appendChild(me);let qt=document.createElement("div");qt.className="persona-flex",qt.id="wrapper-idle-indicator",qt.setAttribute("data-wrapper-id","idle-indicator"),qt.appendChild(Nt),y.appendChild(qt)}}if(Pa(l,y),se.length>0)for(let{messageId:L,fingerprint:De,bubble:Be}of se){let me=l.querySelector(`#wrapper-${L}`);me&&Be!==null&&(me.replaceChildren(Be),me.setAttribute("data-bubble-fp",De),Hr.set(L,De))}if(Hr.size>0)for(let L of Hr.keys())F.has(L)||Hr.delete(L);if(Y.length>0)for(let{messageId:L,fingerprint:De,bubble:Be}of Y){let me=l.querySelector(`#wrapper-${L}`);me&&Be!==null&&(me.replaceChildren(Be),me.setAttribute("data-bubble-fp",De),Sr.set(L,De))}if(Sr.size>0)for(let L of Sr.keys())F.has(L)||Sr.delete(L);if(we.length>0)for(let{messageId:L,fingerprint:De,bubble:Be}of we){let me=l.querySelector(`#wrapper-${L}`);me&&Be!==null&&(me.replaceChildren(Be),me.setAttribute("data-bubble-fp",De),ir.set(L,De))}if(ir.size>0)for(let L of ir.keys())F.has(L)||ir.delete(L)},gs=(l,p,h)=>{jm(l,p,h),Kr()},fs=null,Vm=()=>{var h;if(fs)return;let l=y=>{let A=y.composedPath();A.includes(Me)||Qe&&A.includes(Qe)||_t(!1,"user")};fs=l,((h=n.ownerDocument)!=null?h:document).addEventListener("pointerdown",l,!0)},il=()=>{var p;if(!fs)return;((p=n.ownerDocument)!=null?p:document).removeEventListener("pointerdown",fs,!0),fs=null};ct.push(()=>il());let hs=null,Km=()=>{var h;if(hs)return;let l=y=>{y.key==="Escape"&&(y.isComposing||_t(!1,"user"))};hs=l,((h=n.ownerDocument)!=null?h:document).addEventListener("keydown",l,!0)},ll=()=>{var p;if(!hs)return;((p=n.ownerDocument)!=null?p:document).removeEventListener("keydown",hs,!0),hs=null};ct.push(()=>ll());let ys=!1,cl=new Set,Gm=()=>{var p,h,y,A;let l=(y=(h=(p=r.launcher)==null?void 0:p.composerBar)==null?void 0:h.peek)==null?void 0:y.streamAnimation;return l||((A=r.features)==null?void 0:A.streamAnimation)},Uo=()=>{var mt,ot,He,Ie;if(!D())return;let l=X.peekBanner,p=X.peekTextNode;if(!l||!p)return;if(E){l.classList.remove("persona-pill-peek--visible");return}let h=(mt=O==null?void 0:O.getMessages())!=null?mt:[],y;for(let qe=h.length-1;qe>=0;qe--){let Ve=h[qe];if(Ve.role==="assistant"&&Ve.content){y=Ve;break}}if(!y){l.classList.remove("persona-pill-peek--visible");return}let A=y.content,R=!!y.streaming,q=Gm(),F=Ba(q),H=F.type!=="none"?$s(F.type,q==null?void 0:q.plugins):null,oe=((ot=H==null?void 0:H.isAnimating)==null?void 0:ot.call(H,y))===!0,se=H!==null&&(R||oe);se&&H&&!cl.has(H.name)&&(Ri(H,n),cl.add(H.name));let Y=se&&(H!=null&&H.containerClass)?H.containerClass:null,ye=(He=p.dataset.personaPeekStreamClass)!=null?He:null;ye&&ye!==Y&&(p.classList.remove(ye),delete p.dataset.personaPeekStreamClass),Y&&ye!==Y&&(p.classList.add(Y),p.dataset.personaPeekStreamClass=Y),se?(p.style.setProperty("--persona-stream-step",`${F.speed}ms`),p.style.setProperty("--persona-stream-duration",`${F.duration}ms`)):(p.style.removeProperty("--persona-stream-step"),p.style.removeProperty("--persona-stream-duration"));let Ne=se?Da(A,F.buffer,H,y,R):A;if(se&&F.placeholder==="skeleton"&&R&&(!Ne||!Ne.trim())){let qe=document.createElement("div"),Ve=qs();Ve.classList.add("persona-pill-peek__skeleton"),qe.appendChild(Ve),Pa(p,qe)}else{let qe=Math.max(0,Ne.length-100),Ve=Ne.length>100?Ne.slice(-100):Ne,yt=oo(Ve);if(!se||!H){let L=Ne.length>100?`\u2026${Ve}`:Ve;p.textContent!==L&&(p.textContent=L)}else{let L=yt;(H.wrap==="char"||H.wrap==="word")&&(L=Us(yt,H.wrap,`peek-${y.id}`,{skipTags:H.skipTags,startIndex:qe}));let De=document.createElement("div");if(De.innerHTML=L,H.useCaret&&Ve.length>0){let Be=Na(),me=De.querySelectorAll(".persona-stream-char, .persona-stream-word"),Nt=me[me.length-1];Nt!=null&&Nt.parentNode?Nt.parentNode.insertBefore(Be,Nt.nextSibling):De.appendChild(Be)}Pa(p,De),(Ie=H.onAfterRender)==null||Ie.call(H,{container:p,bubble:l,messageId:y.id,message:y,speed:F.speed,duration:F.duration})}}let _e=Cr||ys;l.classList.toggle("persona-pill-peek--visible",_e)};if(D()){let l=X.peekBanner;if(l){let y=A=>{A.preventDefault(),A.stopPropagation(),_t(!0,"user")};l.addEventListener("pointerdown",y),ct.push(()=>{l.removeEventListener("pointerdown",y)})}let p=()=>{ys||(ys=!0,Uo())},h=()=>{ys&&(ys=!1,Uo())};de.addEventListener("pointerenter",p),de.addEventListener("pointerleave",h),ct.push(()=>{de.removeEventListener("pointerenter",p),de.removeEventListener("pointerleave",h)}),Qe&&(Qe.addEventListener("pointerenter",p),Qe.addEventListener("pointerleave",h),ct.push(()=>{Qe.removeEventListener("pointerenter",p),Qe.removeEventListener("pointerleave",h)}))}let Qm=l=>{var ye,Ne,we,tt,_e,mt,ot,He;let p=(Ne=(ye=r.launcher)==null?void 0:ye.composerBar)!=null?Ne:{},h=(we=p.expandedSize)!=null?we:"anchored",y=(tt=p.bottomOffset)!=null?tt:"16px",A=p.collapsedMaxWidth,R=(_e=p.expandedMaxWidth)!=null?_e:"880px",q=(mt=p.expandedTopOffset)!=null?mt:"5vh",F=(ot=p.modalMaxWidth)!=null?ot:"880px",H=(He=p.modalMaxHeight)!=null?He:"min(90vh, 800px)",oe="calc(100vw - 32px)",se="var(--persona-pill-area-height, 80px)",Y=Me.style;if(Y.left="",Y.right="",Y.top="",Y.bottom="",Y.transform="",Y.width="",Y.maxWidth="",Y.height="",Y.maxHeight="",Qe){let Ie=Qe.style;Ie.bottom=y,Ie.width=A!=null?A:""}if(l&&h!=="fullscreen"){if(h==="modal"){Y.top="50%",Y.left="50%",Y.transform="translate(-50%, -50%)",Y.bottom="auto",Y.right="auto",Y.width=F,Y.maxWidth=oe,Y.maxHeight=H,Y.height=H;return}Y.left="50%",Y.transform="translateX(-50%)",Y.bottom=`calc(${y} + ${se})`,Y.top=q,Y.width=R,Y.maxWidth=oe}},bs=()=>{var H,oe,se,Y,ye,Ne,we,tt;if(!B())return;if(D()){let mt=(se=((oe=(H=r.launcher)==null?void 0:H.composerBar)!=null?oe:{}).expandedSize)!=null?se:"anchored",ot=E?"expanded":"collapsed";Me.dataset.state=ot,Me.dataset.expandedSize=mt,Qe&&(Qe.dataset.state=ot,Qe.dataset.expandedSize=mt),Me.style.removeProperty("display"),Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),de.classList.remove("persona-scale-95","persona-opacity-0","persona-scale-100","persona-opacity-100"),Qm(E),le.style.display=E?"flex":"none",he(),E?(Vm(),Km()):(il(),ll()),Uo();return}let l=mn(r),p=(Y=n.ownerDocument.defaultView)!=null?Y:window,h=(Ne=(ye=r.launcher)==null?void 0:ye.mobileBreakpoint)!=null?Ne:640,y=(tt=(we=r.launcher)==null?void 0:we.mobileFullscreen)!=null?tt:!0,A=p.innerWidth<=h,R=y&&A&&T,q=mr(r).reveal;E?(Me.style.removeProperty("display"),Me.style.display=l?"flex":"",Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),de.classList.remove("persona-scale-95","persona-opacity-0"),de.classList.add("persona-scale-100","persona-opacity-100"),Qt?Qt.element.style.display="none":on&&(on.style.display="none")):(l?l&&(q==="overlay"||q==="push")&&!R?(Me.style.removeProperty("display"),Me.style.display="flex",Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),de.classList.remove("persona-scale-100","persona-opacity-100","persona-scale-95","persona-opacity-0")):(Me.style.setProperty("display","none","important"),Me.classList.remove("persona-pointer-events-none","persona-opacity-0"),de.classList.remove("persona-scale-100","persona-opacity-100","persona-scale-95","persona-opacity-0")):(Me.style.display="",Me.classList.add("persona-pointer-events-none","persona-opacity-0"),de.classList.remove("persona-scale-100","persona-opacity-100"),de.classList.add("persona-scale-95","persona-opacity-0")),Qt?Qt.element.style.display=l?"none":"":on&&(on.style.display=l?"none":""))},_t=(l,p="user")=>{var R,q;if(!B()||E===l)return;let h=E;E=l,bs();let y=(()=>{var we,tt,_e,mt,ot,He,Ie,qe,Ve,yt;let F=(tt=(we=r.launcher)==null?void 0:we.sidebarMode)!=null?tt:!1,H=(_e=n.ownerDocument.defaultView)!=null?_e:window,oe=(ot=(mt=r.launcher)==null?void 0:mt.mobileFullscreen)!=null?ot:!0,se=(Ie=(He=r.launcher)==null?void 0:He.mobileBreakpoint)!=null?Ie:640,Y=H.innerWidth<=se,ye=mn(r)&&oe&&Y,Ne=D()&&((yt=(Ve=(qe=r.launcher)==null?void 0:qe.composerBar)==null?void 0:Ve.expandedSize)!=null?yt:"fullscreen")==="fullscreen";return F||oe&&Y&&T||ye||Ne})();if(E&&y){if(!Gt){let F=n.getRootNode(),H=F instanceof ShadowRoot?F.host:n.closest(".persona-host");H&&(Gt=Hi(H,(q=(R=r.launcher)==null?void 0:R.zIndex)!=null?q:xn))}rn||(rn=Bi(n.ownerDocument))}else E||(Gt==null||Gt(),Gt=null,rn==null||rn(),rn=null);E&&(vs(),Ze()==="follow"?Rn(!0):Zr());let A={open:E,source:p,timestamp:Date.now()};E&&!h?s.emit("widget:opened",A):!E&&h&&s.emit("widget:closed",A),s.emit("widget:state",{open:E,launcherEnabled:T,voiceActive:ft.active,streaming:O.isStreaming()})},ti=l=>{It(l?"stop":"send"),U&&(U.disabled=l),go.buttons.forEach(p=>{p.disabled=l}),Re.dataset.personaComposerStreaming=l?"true":"false",Re.querySelectorAll("[data-persona-composer-disable-when-streaming]").forEach(p=>{(p instanceof HTMLButtonElement||p instanceof HTMLInputElement||p instanceof HTMLTextAreaElement||p instanceof HTMLSelectElement)&&(p.disabled=l)})},ni=()=>{ft.active||Se&&Se.focus()};s.on("widget:opened",()=>{r.autoFocusInput&&setTimeout(()=>ni(),200)});let dl=()=>{var h,y,A,R,q,F,H,oe,se,Y,ye;fr.textContent=(y=(h=r.copy)==null?void 0:h.welcomeTitle)!=null?y:"Hello \u{1F44B}",fn.textContent=(R=(A=r.copy)==null?void 0:A.welcomeSubtitle)!=null?R:"Ask anything about your account or products.",Se.placeholder=(F=(q=r.copy)==null?void 0:q.inputPlaceholder)!=null?F:"How can I help...";let l=xe.querySelector("[data-persona-intro-card]");if(l){let Ne=((H=r.copy)==null?void 0:H.showWelcomeCard)!==!1;l.style.display=Ne?"":"none",Ne?(xe.classList.remove("persona-gap-3"),xe.classList.add("persona-gap-6")):(xe.classList.remove("persona-gap-6"),xe.classList.add("persona-gap-3"))}!((se=(oe=r.sendButton)==null?void 0:oe.useIcon)!=null&&se)&&!(O!=null&&O.isStreaming())&&(ue.textContent=(ye=(Y=r.copy)==null?void 0:Y.sendButtonLabel)!=null?ye:"Send"),Se.style.fontFamily='var(--persona-input-font-family, var(--persona-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif))',Se.style.fontWeight="var(--persona-input-font-weight, var(--persona-font-weight, 400))"};r.clientToken&&(r={...r,getStoredSessionId:()=>{let l=d.sessionId;return typeof l=="string"?l:null},setStoredSessionId:l=>{u(p=>({...p,sessionId:l}))}});let yo=null,Xm=()=>{yo==null&&(yo=setInterval(()=>{let l=ze.querySelectorAll("[data-tool-elapsed]");if(l.length===0){clearInterval(yo),yo=null;return}let p=Date.now();l.forEach(h=>{let y=Number(h.getAttribute("data-tool-elapsed"));y&&(h.textContent=ya(p-y))})},100))};O=new Ea(r,{onMessagesChanged(l){var y;gs(ze,l,We),Xm(),Do(l),Rn(!Cr),zm(l);let p=[...l].reverse().find(A=>A.role==="user");l.length===0&&un(),!Fo||ho?(Fo=!0,Oo=(y=p==null?void 0:p.id)!=null?y:null):p&&p.id!==Oo&&(Oo=p.id,qm(p.id));let h=ft.lastUserMessageId;p&&p.id!==h&&(ft.lastUserMessageId=p.id,s.emit("user:message",p)),ft.lastUserMessageWasVoice=!!(p!=null&&p.viaVoice),Yr(l),Uo()},onStatusChanged(l){var y;let p=(y=r.statusIndicator)!=null?y:{};it(nn,(A=>{var R,q,F,H;return A==="idle"?(R=p.idleText)!=null?R:vn.idle:A==="connecting"?(q=p.connectingText)!=null?q:vn.connecting:A==="connected"?(F=p.connectedText)!=null?F:vn.connected:A==="error"?(H=p.errorText)!=null?H:vn.error:vn[A]})(l),p,l)},onStreamingChanged(l){Cr=l,ti(l),O&&gs(ze,O.getMessages(),We),l||Rn(!0),Uo()},onVoiceStatusChanged(l){var p,h;if(s.emit("voice:status",{status:l,timestamp:Date.now()}),((h=(p=r.voiceRecognition)==null?void 0:p.provider)==null?void 0:h.type)==="runtype")switch(l){case"listening":Fr(),zo();break;case"processing":Fr(),tg();break;case"speaking":Fr(),ng();break;default:l==="idle"&&O.isBargeInActive()?(Fr(),zo(),U==null||U.setAttribute("aria-label","End voice session")):(ft.active=!1,Fr(),er("system"),Wn());break}},onArtifactsState(l){Fn=l,$n(),Yr()}}),At.current=O;let ri=null;if(O.onReadAloudChange((l,p)=>{var A;jr=l,Vr=p,Kr();let h=l!=null?l:ri;l&&(ri=l);let y=h&&(A=O.getMessages().find(R=>R.id===h))!=null?A:null;s.emit("message:read-aloud",{messageId:h,message:y,state:p,timestamp:Date.now()}),p==="idle"&&(ri=null)}),Fo=!0,((wc=(xc=r.voiceRecognition)==null?void 0:xc.provider)==null?void 0:wc.type)==="runtype")try{O.setupVoice()}catch(l){typeof console!="undefined"&&console.warn("[AgentWidget] Runtype voice setup failed:",l)}r.clientToken&&O.initClientSession().catch(l=>{r.debug&&console.warn("[AgentWidget] Pre-init client session failed:",l)}),(fe||r.onSSEEvent)&&O.setSSEEventCallback((l,p)=>{var h;(h=r.onSSEEvent)==null||h.call(r,l,p),re==null||re.processEvent(l,p),fe==null||fe.push({id:`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:l,timestamp:Date.now(),payload:JSON.stringify(p)})}),c&&c.then(l=>{var p,h,y;if(l){if(l.metadata&&(d=el(l.metadata),P.syncFromMetadata()),(p=l.messages)!=null&&p.length){ho=!0;try{O.hydrateMessages(l.messages)}finally{ho=!1}}(h=l.artifacts)!=null&&h.length&&O.hydrateArtifacts(l.artifacts,(y=l.selectedArtifactId)!=null?y:null)}}).catch(l=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to hydrate stored state:",l)});let pl=()=>{var p,h,y;!D()||E||!((y=(h=(p=r.launcher)==null?void 0:p.composerBar)==null?void 0:h.expandOnSubmit)==null||y)||_t(!0,"auto")},ul=l=>{var A;if(l.preventDefault(),O.isStreaming()){O.cancel(),re==null||re.reset(),V==null||V.update();return}let p=Se.value.trim(),h=(A=vt==null?void 0:vt.hasAttachments())!=null?A:!1;if(!p&&!h)return;pl();let y;h&&(y=[],y.push(...vt.getContentParts()),p&&y.push(Ti(p))),Se.value="",Se.style.height="auto",sa(),O.sendMessage(p,{contentParts:y}),h&&vt.clearAttachments()},Jm=()=>{var l;return((l=r.features)==null?void 0:l.composerHistory)!==!1},oi={...Ia},si=!1,sa=()=>{oi={...Ia}},Ym=()=>O.getMessages().filter(l=>l.role==="user").map(l=>{var p;return(p=l.content)!=null?p:""}).filter(l=>l.length>0),Zm=l=>{if(!Se)return;si=!0,Se.value=l,Se.dispatchEvent(new Event("input",{bubbles:!0})),si=!1;let p=Se.value.length;Se.setSelectionRange(p,p)},ml=()=>{si||sa()},gl=l=>{if(Se){if(Jm()&&(l.key==="ArrowUp"||l.key==="ArrowDown")&&!l.shiftKey&&!l.metaKey&&!l.ctrlKey&&!l.altKey&&!l.isComposing){let p=Se.selectionStart===0&&Se.selectionEnd===0,h=Ru({direction:l.key==="ArrowUp"?"up":"down",history:Ym(),currentValue:Se.value,atStart:p,state:oi});if(oi=h.state,h.handled){l.preventDefault(),h.value!==void 0&&Zm(h.value);return}}if(l.key==="Enter"&&!l.shiftKey){if(O.isStreaming()){l.preventDefault();return}sa(),l.preventDefault(),ue.click()}}},fl=l=>{l.key!=="Escape"||l.isComposing||O.isStreaming()&&l.composedPath().includes(le)&&(O.cancel(),re==null||re.reset(),V==null||V.update(),sa(),l.preventDefault(),l.stopImmediatePropagation())},hl=async l=>{var h;if(((h=r.attachments)==null?void 0:h.enabled)!==!0||!vt)return;let p=pv(l.clipboardData);p.length!==0&&(l.preventDefault(),await vt.handleFiles(p))},tr=null,Mr=!1,qo=null,ut=null,yl=()=>typeof window=="undefined"?null:window.webkitSpeechRecognition||window.SpeechRecognition||null,aa=(l="user")=>{var R,q,F,H,oe,se,Y;if(Mr||O.isStreaming())return;let p=yl();if(!p)return;tr=new p;let y=(q=((R=r.voiceRecognition)!=null?R:{}).pauseDuration)!=null?q:2e3;tr.continuous=!0,tr.interimResults=!0,tr.lang="en-US";let A=Se.value;tr.onresult=ye=>{let Ne="",we="";for(let _e=0;_e<ye.results.length;_e++){let mt=ye.results[_e],ot=mt[0].transcript;mt.isFinal?Ne+=ot+" ":we=ot}let tt=A+Ne+we;Se.value=tt,qo&&clearTimeout(qo),(Ne||we)&&(qo=window.setTimeout(()=>{let _e=Se.value.trim();_e&&tr&&Mr&&(eo(),Se.value="",Se.style.height="auto",O.sendMessage(_e,{viaVoice:!0}))},y))},tr.onerror=ye=>{ye.error!=="no-speech"&&eo()},tr.onend=()=>{if(Mr){let ye=Se.value.trim();ye&&ye!==A.trim()&&(Se.value="",Se.style.height="auto",O.sendMessage(ye,{viaVoice:!0})),eo()}};try{if(tr.start(),Mr=!0,ft.active=!0,l!=="system"&&(ft.manuallyDeactivated=!1),er(l),Wn(),U){let ye=(F=r.voiceRecognition)!=null?F:{};ut={backgroundColor:U.style.backgroundColor,color:U.style.color,borderColor:U.style.borderColor,iconName:(H=ye.iconName)!=null?H:"mic",iconSize:parseFloat((Y=(se=ye.iconSize)!=null?se:(oe=r.sendButton)==null?void 0:oe.size)!=null?Y:"40")||24};let Ne=ye.recordingBackgroundColor,we=ye.recordingIconColor,tt=ye.recordingBorderColor;if(U.classList.add("persona-voice-recording"),U.style.backgroundColor=Ne!=null?Ne:"var(--persona-voice-recording-bg, #ef4444)",U.style.color=we!=null?we:"var(--persona-voice-recording-indicator, #ffffff)",we){let _e=U.querySelector("svg");_e&&_e.setAttribute("stroke",we)}tt&&(U.style.borderColor=tt),U.setAttribute("aria-label","Stop voice recognition")}}catch{eo("system")}},eo=(l="user")=>{if(Mr){if(Mr=!1,qo&&(clearTimeout(qo),qo=null),tr){try{tr.stop()}catch{}tr=null}if(ft.active=!1,er(l),Wn(),U){if(U.classList.remove("persona-voice-recording"),ut){U.style.backgroundColor=ut.backgroundColor,U.style.color=ut.color,U.style.borderColor=ut.borderColor;let p=U.querySelector("svg");p&&p.setAttribute("stroke",ut.color||"currentColor"),ut=null}U.setAttribute("aria-label","Start voice recognition")}}},eg=(l,p)=>{var ot,He,Ie,qe,Ve,yt,L,De,Be;let h=typeof window!="undefined"&&(typeof window.webkitSpeechRecognition!="undefined"||typeof window.SpeechRecognition!="undefined"),y=((ot=l==null?void 0:l.provider)==null?void 0:ot.type)==="runtype",A=((He=l==null?void 0:l.provider)==null?void 0:He.type)==="custom";if(!(h||y||A))return null;let q=b("div","persona-send-button-wrapper"),F=b("button","persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer");F.type="button",F.setAttribute("aria-label","Start voice recognition");let H=(Ie=l==null?void 0:l.iconName)!=null?Ie:"mic",oe=(qe=p==null?void 0:p.size)!=null?qe:"40px",se=(Ve=l==null?void 0:l.iconSize)!=null?Ve:oe,Y=parseFloat(se)||24,ye=(yt=l==null?void 0:l.backgroundColor)!=null?yt:p==null?void 0:p.backgroundColor,Ne=(L=l==null?void 0:l.iconColor)!=null?L:p==null?void 0:p.textColor;F.style.width=se,F.style.height=se,F.style.minWidth=se,F.style.minHeight=se,F.style.fontSize="18px",F.style.lineHeight="1",Ne?F.style.color=Ne:F.style.color="var(--persona-text, #111827)";let tt=Ce(H,Y,Ne||"currentColor",1.5);tt?F.appendChild(tt):F.textContent="\u{1F3A4}",ye?F.style.backgroundColor=ye:F.style.backgroundColor="",l!=null&&l.borderWidth&&(F.style.borderWidth=l.borderWidth,F.style.borderStyle="solid"),l!=null&&l.borderColor&&(F.style.borderColor=l.borderColor),l!=null&&l.paddingX&&(F.style.paddingLeft=l.paddingX,F.style.paddingRight=l.paddingX),l!=null&&l.paddingY&&(F.style.paddingTop=l.paddingY,F.style.paddingBottom=l.paddingY),q.appendChild(F);let _e=(De=l==null?void 0:l.tooltipText)!=null?De:"Start voice recognition";if(((Be=l==null?void 0:l.showTooltip)!=null?Be:!1)&&_e){let me=b("div","persona-send-button-tooltip");me.textContent=_e,q.appendChild(me)}return{micButton:F,micButtonWrapper:q}},ai=()=>{var p,h,y,A,R;if(!U||ut)return;let l=(p=r.voiceRecognition)!=null?p:{};ut={backgroundColor:U.style.backgroundColor,color:U.style.color,borderColor:U.style.borderColor,iconName:(h=l.iconName)!=null?h:"mic",iconSize:parseFloat((R=(A=l.iconSize)!=null?A:(y=r.sendButton)==null?void 0:y.size)!=null?R:"40")||24}},ii=(l,p)=>{var R,q,F,H,oe;if(!U)return;let h=U.querySelector("svg");h&&h.remove();let y=(oe=ut==null?void 0:ut.iconSize)!=null?oe:parseFloat((H=(F=(R=r.voiceRecognition)==null?void 0:R.iconSize)!=null?F:(q=r.sendButton)==null?void 0:q.size)!=null?H:"40")||24,A=Ce(l,y,p,1.5);A&&U.appendChild(A)},ia=()=>{U&&U.classList.remove("persona-voice-recording","persona-voice-processing","persona-voice-speaking")},zo=()=>{var A;if(!U)return;ai();let l=(A=r.voiceRecognition)!=null?A:{},p=l.recordingBackgroundColor,h=l.recordingIconColor,y=l.recordingBorderColor;if(ia(),U.classList.add("persona-voice-recording"),U.style.backgroundColor=p!=null?p:"var(--persona-voice-recording-bg, #ef4444)",U.style.color=h!=null?h:"var(--persona-voice-recording-indicator, #ffffff)",h){let R=U.querySelector("svg");R&&R.setAttribute("stroke",h)}y&&(U.style.borderColor=y),U.setAttribute("aria-label","Stop voice recognition")},tg=()=>{var F,H,oe,se,Y,ye,Ne,we;if(!U)return;ai();let l=(F=r.voiceRecognition)!=null?F:{},p=O.getVoiceInterruptionMode(),h=(H=l.processingIconName)!=null?H:"loader",y=(se=(oe=l.processingIconColor)!=null?oe:ut==null?void 0:ut.color)!=null?se:"",A=(ye=(Y=l.processingBackgroundColor)!=null?Y:ut==null?void 0:ut.backgroundColor)!=null?ye:"",R=(we=(Ne=l.processingBorderColor)!=null?Ne:ut==null?void 0:ut.borderColor)!=null?we:"";ia(),U.classList.add("persona-voice-processing"),U.style.backgroundColor=A,U.style.borderColor=R;let q=y||"currentColor";U.style.color=q,ii(h,q),U.setAttribute("aria-label","Processing voice input"),p==="none"&&(U.style.cursor="default")},ng=()=>{var oe,se,Y,ye,Ne,we,tt,_e,mt,ot,He,Ie;if(!U)return;ai();let l=(oe=r.voiceRecognition)!=null?oe:{},p=O.getVoiceInterruptionMode(),h=p==="cancel"?"square":p==="barge-in"?"mic":"volume-2",y=(se=l.speakingIconName)!=null?se:h,A=(we=l.speakingIconColor)!=null?we:p==="barge-in"?(ye=(Y=l.recordingIconColor)!=null?Y:ut==null?void 0:ut.color)!=null?ye:"":(Ne=ut==null?void 0:ut.color)!=null?Ne:"",R=(mt=l.speakingBackgroundColor)!=null?mt:p==="barge-in"?(tt=l.recordingBackgroundColor)!=null?tt:"var(--persona-voice-recording-bg, #ef4444)":(_e=ut==null?void 0:ut.backgroundColor)!=null?_e:"",q=(Ie=l.speakingBorderColor)!=null?Ie:p==="barge-in"?(ot=l.recordingBorderColor)!=null?ot:"":(He=ut==null?void 0:ut.borderColor)!=null?He:"";ia(),U.classList.add("persona-voice-speaking"),U.style.backgroundColor=R,U.style.borderColor=q;let F=A||"currentColor";U.style.color=F,ii(y,F);let H=p==="cancel"?"Stop playback and re-record":p==="barge-in"?"Speak to interrupt":"Agent is speaking";U.setAttribute("aria-label",H),p==="none"&&(U.style.cursor="default"),p==="barge-in"&&U.classList.add("persona-voice-recording")},Fr=()=>{var l,p,h;U&&(ia(),ut&&(U.style.backgroundColor=(l=ut.backgroundColor)!=null?l:"",U.style.color=(p=ut.color)!=null?p:"",U.style.borderColor=(h=ut.borderColor)!=null?h:"",ii(ut.iconName,ut.color||"currentColor"),ut=null),U.style.cursor="",U.setAttribute("aria-label","Start voice recognition"))},la=()=>{var l,p;if(((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"){let h=O.getVoiceStatus(),y=O.getVoiceInterruptionMode();if(y==="none"&&(h==="processing"||h==="speaking"))return;if(y==="cancel"&&(h==="processing"||h==="speaking")){O.stopVoicePlayback();return}if(O.isBargeInActive()){O.stopVoicePlayback(),O.deactivateBargeIn().then(()=>{ft.active=!1,ft.manuallyDeactivated=!0,Wn(),er("user"),Fr()});return}O.toggleVoice().then(()=>{ft.active=O.isVoiceActive(),ft.manuallyDeactivated=!O.isVoiceActive(),Wn(),er("user"),O.isVoiceActive()?zo():Fr()});return}if(Mr){let h=Se.value.trim();ft.manuallyDeactivated=!0,Wn(),eo("user"),h&&(Se.value="",Se.style.height="auto",O.sendMessage(h))}else ft.manuallyDeactivated=!1,Wn(),aa("user")};Dn=la,U&&(U.addEventListener("click",la),ct.push(()=>{var l,p;((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"?(O.isVoiceActive()&&O.toggleVoice(),Fr()):eo("system"),U&&U.removeEventListener("click",la)}));let rg=s.on("assistant:complete",()=>{ms&&(ft.active||ft.manuallyDeactivated||ms==="assistant"&&!ft.lastUserMessageWasVoice||setTimeout(()=>{var l,p;!ft.active&&!ft.manuallyDeactivated&&(((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"?O.toggleVoice().then(()=>{ft.active=O.isVoiceActive(),er("auto"),O.isVoiceActive()&&zo()}):aa("auto"))},600))});ct.push(rg);let og=s.on("action:resubmit",()=>{setTimeout(()=>{O&&!O.isStreaming()&&O.continueConversation()},100)});ct.push(og);let bl=()=>{_t(!E,"user")},Qt=null,on=null;if(T&&!D()){let{instance:l,element:p}=Fi({config:r,plugins:o,onToggle:bl});Qt=l,l||(on=p)}Qt?n.appendChild(Qt.element):on&&n.appendChild(on),bs(),Do(),dl(),ti(O.isStreaming()),Ze()==="follow"?Rn(!0):Zr(),ra(),N&&(!T||D()?setTimeout(()=>ni(),0):E&&setTimeout(()=>ni(),200));let vs=()=>{var H,oe,se,Y,ye,Ne,we,tt,_e,mt,ot,He,Ie,qe,Ve,yt,L,De,Be,me,Nt,Bt;if(D()){Pn(),bs();return}let l=mn(r),p=(oe=(H=r.launcher)==null?void 0:H.sidebarMode)!=null?oe:!1,h=l||p||((Y=(se=r.launcher)==null?void 0:se.fullHeight)!=null?Y:!1),y=(ye=n.ownerDocument.defaultView)!=null?ye:window,A=(we=(Ne=r.launcher)==null?void 0:Ne.mobileFullscreen)!=null?we:!0,R=(_e=(tt=r.launcher)==null?void 0:tt.mobileBreakpoint)!=null?_e:640,q=y.innerWidth<=R,F=A&&q&&T;try{if(F){he(),ss(n,r);return}if(I&&(I=!1,he(),ss(n,r)),!T&&!l){de.style.height="",de.style.width="";return}if(!p&&!l){let qt=(ot=(mt=r==null?void 0:r.launcher)==null?void 0:mt.width)!=null?ot:r==null?void 0:r.launcherWidth,xt=qt!=null?qt:Ur;de.style.width=xt,de.style.maxWidth=xt}if(vr(),!h){let qt=y.innerHeight,xt=64,$t=(Ie=(He=r.launcher)==null?void 0:He.heightOffset)!=null?Ie:0,Vn=Math.max(200,qt-xt),Xt=Math.min(640,Vn),Ge=Math.max(200,Xt-$t);de.style.height=`${Ge}px`}}finally{if(Pn(),bs(),E&&T){let xt=((qe=n.ownerDocument.defaultView)!=null?qe:window).innerWidth<=((yt=(Ve=r.launcher)==null?void 0:Ve.mobileBreakpoint)!=null?yt:640),$t=(De=(L=r.launcher)==null?void 0:L.sidebarMode)!=null?De:!1,Vn=(me=(Be=r.launcher)==null?void 0:Be.mobileFullscreen)!=null?me:!0,Xt=mn(r)&&Vn&&xt,Ge=$t||Vn&&xt&&T||Xt;if(Ge&&!rn){let Et=n.getRootNode(),tn=Et instanceof ShadowRoot?Et.host:n.closest(".persona-host");tn&&!Gt&&(Gt=Hi(tn,(Bt=(Nt=r.launcher)==null?void 0:Nt.zIndex)!=null?Bt:xn)),rn=Bi(n.ownerDocument)}else Ge||(Gt==null||Gt(),Gt=null,rn==null||rn(),rn=null)}}};vs();let vl=(Cc=n.ownerDocument.defaultView)!=null?Cc:window;if(vl.addEventListener("resize",vs),ct.push(()=>vl.removeEventListener("resize",vs)),typeof ResizeObserver!="undefined"){let l=new ResizeObserver(()=>{Pn()});l.observe(Re),ct.push(()=>l.disconnect())}qn=xe.scrollTop;let xl=qr(xe),sg=()=>{let l=xe.getRootNode(),p=typeof l.getSelection=="function"?l.getSelection():null;return p!=null?p:xe.ownerDocument.getSelection()},li=()=>Ou(sg(),xe),wl=()=>{let l=xe.scrollTop,p=qr(xe),h=p<xl;if(xl=p,Ze()!=="follow"){qn=l,Xe();return}let{action:y,nextLastScrollTop:A}=Ra({following:Un.isFollowing(),currentScrollTop:l,lastScrollTop:qn,nearBottom:Io(xe,_o),userScrollThreshold:ta,isAutoScrolling:cr||fo||h,pauseOnUpwardScroll:!0,pauseWhenAwayFromBottom:!1,resumeRequiresDownwardScroll:!0});if(qn=A,y==="resume"){li()||Dr();return}y==="pause"&&Mt()};if(xe.addEventListener("scroll",wl,{passive:!0}),ct.push(()=>xe.removeEventListener("scroll",wl)),typeof ResizeObserver!="undefined"){let l=new ResizeObserver(()=>{jn()});l.observe(ze),l.observe(xe),ct.push(()=>l.disconnect())}let Cl=()=>{Ze()==="follow"&&Un.isFollowing()&&li()&&Mt()},Al=xe.ownerDocument;Al.addEventListener("selectionchange",Cl),ct.push(()=>{Al.removeEventListener("selectionchange",Cl)});let Sl=l=>{if(Ze()!=="follow")return;let p=Ha({following:Un.isFollowing(),deltaY:l.deltaY,nearBottom:Io(xe,_o),resumeWhenNearBottom:!0});p==="pause"?Mt():p==="resume"&&!li()&&Dr()};xe.addEventListener("wheel",Sl,{passive:!0}),ct.push(()=>xe.removeEventListener("wheel",Sl)),lt.addEventListener("click",()=>{un(),xe.scrollTop=xe.scrollHeight,qn=xe.scrollTop,Dr(),Rn(!0),Xe()}),ct.push(()=>lt.remove()),ct.push(()=>{_(),un()});let Tl=()=>{je&&(wr&&(je.removeEventListener("click",wr),wr=null),B()?(je.style.display="",wr=()=>{_t(!1,"user")},je.addEventListener("click",wr)):je.style.display="none")};Tl(),(()=>{let{clearChatButton:l}=X;l&&l.addEventListener("click",()=>{O.clearMessages(),Ar.clear(),Dr(),Zo(X.composerOverlay);try{localStorage.removeItem(ds),r.debug&&console.log(`[AgentWidget] Cleared default localStorage key: ${ds}`)}catch(h){console.error("[AgentWidget] Failed to clear default localStorage:",h)}if(r.clearChatHistoryStorageKey&&r.clearChatHistoryStorageKey!==ds)try{localStorage.removeItem(r.clearChatHistoryStorageKey),r.debug&&console.log(`[AgentWidget] Cleared custom localStorage key: ${r.clearChatHistoryStorageKey}`)}catch(h){console.error("[AgentWidget] Failed to clear custom localStorage:",h)}let p=new CustomEvent("persona:clear-chat",{detail:{timestamp:new Date().toISOString()}});if(window.dispatchEvent(p),i!=null&&i.clear)try{let h=i.clear();h instanceof Promise&&h.catch(y=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",y)})}catch(h){typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",h)}d={},P.syncFromMetadata(),fe==null||fe.clear(),re==null||re.reset(),V==null||V.update()})})(),Pt&&Pt.addEventListener("submit",ul),Se==null||Se.addEventListener("keydown",gl),Se==null||Se.addEventListener("input",ml),Se==null||Se.addEventListener("paste",hl);let Ml=(Ac=n.ownerDocument)!=null?Ac:document;Ml.addEventListener("keydown",fl,!0);let El="persona-attachment-drop-active",xs=0,ci=()=>{xs=0,le.classList.remove(El)},jo=()=>{var l;return((l=r.attachments)==null?void 0:l.enabled)===!0&&vt!==null},kl=l=>{!Za(l.dataTransfer)||!jo()||(xs++,xs===1&&le.classList.add(El))},Ll=l=>{!Za(l.dataTransfer)||!jo()||(xs--,xs<=0&&ci())},Pl=l=>{!Za(l.dataTransfer)||!jo()||(l.preventDefault(),l.dataTransfer.dropEffect="copy")},Il=l=>{var h;if(!Za(l.dataTransfer)||!jo())return;l.preventDefault(),l.stopPropagation(),ci();let p=Array.from((h=l.dataTransfer.files)!=null?h:[]);p.length!==0&&vt.handleFiles(p)},to=!0;le.addEventListener("dragenter",kl,to),le.addEventListener("dragleave",Ll,to),n.addEventListener("dragover",Pl,to),n.addEventListener("drop",Il,to);let ca=n.ownerDocument,Wl=l=>{jo()&&l.preventDefault()},Rl=l=>{jo()&&l.preventDefault()};ca.addEventListener("dragover",Wl),ca.addEventListener("drop",Rl),ct.push(()=>{Pt&&Pt.removeEventListener("submit",ul),Se==null||Se.removeEventListener("keydown",gl),Se==null||Se.removeEventListener("input",ml),Se==null||Se.removeEventListener("paste",hl),Ml.removeEventListener("keydown",fl,!0)}),ct.push(()=>{le.removeEventListener("dragenter",kl,to),le.removeEventListener("dragleave",Ll,to),n.removeEventListener("dragover",Pl,to),n.removeEventListener("drop",Il,to),ca.removeEventListener("dragover",Wl),ca.removeEventListener("drop",Rl),ci()}),ct.push(()=>{O.cancel()}),Qt?ct.push(()=>{Qt==null||Qt.destroy()}):on&&ct.push(()=>{on==null||on.remove()});let en={update(l){var yn,Tn,Er,cn,Mn,En,Co,ws,Pc,Ic,Wc,Rc,Hc,Bc,Dc,Nc,Fc,Oc,_c,$c,Uc,qc,zc,jc,Vc,Kc,Gc,Qc,Xc,Jc,Yc,Zc,ed,td,nd,rd,od,sd,ad,id,ld,cd,dd,pd,ud,md,gd,fd,hd,yd,bd,vd,xd,wd,Cd,Ad,Sd,Td,Md,Ed,kd,Ld,Pd,Id,Wd,Rd,Hd,Bd,Dd,Nd,Fd,Od,_d,$d,Ud,qd,zd,jd,Vd,Kd,Gd,Qd,Xd,Jd,Yd,Zd,ep,tp,np,rp,op,sp,ap,ip,lp,cp,dp,pp,up,mp,gp,fp,hp,yp,bp,vp,xp,wp,Cp,Ap,Sp,Tp,Mp,Ep,kp;let p=r.toolCall,h=r.messageActions,y=(yn=r.layout)==null?void 0:yn.messages,A=r.colorScheme,R=r.loadingIndicator,q=r.iterationDisplay,F=(Tn=r.features)==null?void 0:Tn.showReasoning,H=(Er=r.features)==null?void 0:Er.showToolCalls,oe=(cn=r.features)==null?void 0:cn.toolCallDisplay,se=(Mn=r.features)==null?void 0:Mn.reasoningDisplay;r={...r,...l},he(),ss(n,r),Ja(n,r),Ya(n,r),$n(),r.colorScheme!==A&&us();let Y=Xi.getForInstance(r.plugins);o.length=0,o.push(...Y),T=(Co=(En=r.launcher)==null?void 0:En.enabled)!=null?Co:!0,M=(Pc=(ws=r.launcher)==null?void 0:ws.autoExpand)!=null?Pc:!1,$e=(Wc=(Ic=r.features)==null?void 0:Ic.showReasoning)!=null?Wc:!0,ve=(Hc=(Rc=r.features)==null?void 0:Rc.showToolCalls)!=null?Hc:!0,Oe=(Dc=(Bc=r.features)==null?void 0:Bc.scrollToBottom)!=null?Dc:{};let ye=Ze();Ae=(Fc=(Nc=r.features)==null?void 0:Nc.scrollBehavior)!=null?Fc:{},ye!==Ze()&&(un(),Dr()),hr(),Xe();let Ne=Pe;if(Pe=(_c=(Oc=r.features)==null?void 0:Oc.showEventStreamToggle)!=null?_c:!1,Pe&&!Ne){if(fe||(Q=new Xs(ne),fe=new Qs(ae,Q),re=re!=null?re:new Js,Q.open().then(()=>fe==null?void 0:fe.restore()).catch(()=>{}),O.setSSEEventCallback((Z,St)=>{var Ut;(Ut=r.onSSEEvent)==null||Ut.call(r,Z,St),re==null||re.processEvent(Z,St),fe.push({id:`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:Z,timestamp:Date.now(),payload:JSON.stringify(St)})})),!ht&&Te){let Z=(Uc=($c=r.features)==null?void 0:$c.eventStream)==null?void 0:Uc.classNames,St="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full hover:persona-opacity-80 persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-1"+(Z!=null&&Z.toggleButton?" "+Z.toggleButton:"");ht=b("button",St),ht.style.width="28px",ht.style.height="28px",ht.style.color=Ln.actionIconColor,ht.type="button",ht.setAttribute("aria-label","Event Stream"),ht.title="Event Stream";let Ut=Ce("activity","18px","currentColor",1.5);Ut&&ht.appendChild(Ut);let st=X.clearChatButtonWrapper,kt=X.closeButtonWrapper,an=st||kt;an&&an.parentNode===Te?Te.insertBefore(ht,an):Te.appendChild(ht),ht.addEventListener("click",()=>{ee?ar():Lr()})}}else!Pe&&Ne&&(ar(),ht&&(ht.remove(),ht=null),fe==null||fe.clear(),Q==null||Q.destroy(),fe=null,Q=null,re==null||re.reset(),re=null);if(((qc=r.launcher)==null?void 0:qc.enabled)===!1&&Qt&&(Qt.destroy(),Qt=null),((zc=r.launcher)==null?void 0:zc.enabled)===!1&&on&&(on.remove(),on=null),((jc=r.launcher)==null?void 0:jc.enabled)!==!1&&!Qt&&!on){let{instance:Z,element:St}=Fi({config:r,plugins:o,onToggle:bl});Qt=Z,Z||(on=St),n.appendChild(St)}Qt&&Qt.update(r),pe&&((Vc=r.launcher)==null?void 0:Vc.title)!==void 0&&(pe.textContent=r.launcher.title),ke&&((Kc=r.launcher)==null?void 0:Kc.subtitle)!==void 0&&(ke.textContent=r.launcher.subtitle);let we=(Gc=r.layout)==null?void 0:Gc.header;if((we==null?void 0:we.layout)!==C&&Te){let Z=we?_a(r,we,{showClose:B(),onClose:()=>_t(!1,"user")}):Wo({config:r,showClose:B(),onClose:()=>_t(!1,"user")});nt.replaceHeader(Z),Te=nt.header.element,S=nt.header.iconHolder,pe=nt.header.headerTitle,ke=nt.header.headerSubtitle,je=nt.header.closeButton,C=we==null?void 0:we.layout}else if(we&&(S&&(S.style.display=we.showIcon===!1?"none":""),pe&&(pe.style.display=we.showTitle===!1?"none":""),ke&&(ke.style.display=we.showSubtitle===!1?"none":""),je&&(je.style.display=we.showCloseButton===!1?"none":""),X.clearChatButtonWrapper)){let Z=we.showClearChat;if(Z!==void 0){X.clearChatButtonWrapper.style.display=Z?"":"none";let{closeButtonWrapper:St}=X;St&&!St.classList.contains("persona-absolute")&&(Z?St.classList.remove("persona-ml-auto"):St.classList.add("persona-ml-auto"))}}let _e=((Qc=r.layout)==null?void 0:Qc.showHeader)!==!1;Te&&(Te.style.display=_e?"":"none");let mt=((Xc=r.layout)==null?void 0:Xc.showFooter)!==!1;Re&&(Re.style.display=mt?"":"none"),Pn(),Xe(),T!==W?T?_t(M,"auto"):(E=!0,bs()):M!==k&&_t(M,"auto"),k=M,W=T,vs(),Tl();let Ie=JSON.stringify(l.toolCall)!==JSON.stringify(p),qe=JSON.stringify(r.messageActions)!==JSON.stringify(h),Ve=JSON.stringify((Jc=r.layout)==null?void 0:Jc.messages)!==JSON.stringify(y),yt=((Yc=r.loadingIndicator)==null?void 0:Yc.render)!==(R==null?void 0:R.render)||((Zc=r.loadingIndicator)==null?void 0:Zc.renderIdle)!==(R==null?void 0:R.renderIdle)||((ed=r.loadingIndicator)==null?void 0:ed.showBubble)!==(R==null?void 0:R.showBubble),L=r.iterationDisplay!==q,De=((nd=(td=r.features)==null?void 0:td.showReasoning)!=null?nd:!0)!==(F!=null?F:!0)||((od=(rd=r.features)==null?void 0:rd.showToolCalls)!=null?od:!0)!==(H!=null?H:!0)||JSON.stringify((sd=r.features)==null?void 0:sd.toolCallDisplay)!==JSON.stringify(oe)||JSON.stringify((ad=r.features)==null?void 0:ad.reasoningDisplay)!==JSON.stringify(se);(Ie||qe||Ve||yt||L||De)&&O&&(No++,gs(ze,O.getMessages(),We));let me=(id=r.launcher)!=null?id:{},Nt=(ld=me.headerIconHidden)!=null?ld:!1,Bt=(dd=(cd=r.layout)==null?void 0:cd.header)==null?void 0:dd.showIcon,qt=Nt||Bt===!1,xt=me.headerIconName,$t=(pd=me.headerIconSize)!=null?pd:"48px";if(S){let Z=le.querySelector(".persona-border-b-persona-divider"),St=Z==null?void 0:Z.querySelector(".persona-flex-col");if(qt)S.style.display="none",Z&&St&&!Z.contains(St)&&Z.insertBefore(St,Z.firstChild);else{if(S.style.display="",S.style.height=$t,S.style.width=$t,Z&&St&&(Z.contains(S)?S.nextSibling!==St&&(S.remove(),Z.insertBefore(S,St)):Z.insertBefore(S,St)),xt){let st=parseFloat($t)||24,kt=Ce(xt,st*.6,"currentColor",1);kt?S.replaceChildren(kt):S.textContent=(ud=me.agentIconText)!=null?ud:"\u{1F4AC}"}else if(me.iconUrl){let st=S.querySelector("img");if(st)st.src=me.iconUrl,st.style.height=$t,st.style.width=$t;else{let kt=document.createElement("img");kt.src=me.iconUrl,kt.alt="",kt.className="persona-rounded-xl persona-object-cover",kt.style.height=$t,kt.style.width=$t,S.replaceChildren(kt)}}else{let st=S.querySelector("svg"),kt=S.querySelector("img");(st||kt)&&S.replaceChildren(),S.textContent=(md=me.agentIconText)!=null?md:"\u{1F4AC}"}let Ut=S.querySelector("img");Ut&&(Ut.style.height=$t,Ut.style.width=$t)}}let Vn=(fd=(gd=r.layout)==null?void 0:gd.header)==null?void 0:fd.showTitle,Xt=(yd=(hd=r.layout)==null?void 0:hd.header)==null?void 0:yd.showSubtitle;if(pe&&(pe.style.display=Vn===!1?"none":""),ke&&(ke.style.display=Xt===!1?"none":""),je){((vd=(bd=r.layout)==null?void 0:bd.header)==null?void 0:vd.showCloseButton)===!1?je.style.display="none":je.style.display="";let St=(xd=me.closeButtonSize)!=null?xd:"32px",Ut=(wd=me.closeButtonPlacement)!=null?wd:"inline";je.style.height=St,je.style.width=St;let{closeButtonWrapper:st}=X,kt=Ut==="top-right",an=st==null?void 0:st.classList.contains("persona-absolute");if(st&&kt!==an)if(st.remove(),kt)st.className="persona-absolute persona-top-4 persona-right-4 persona-z-50",le.style.position="relative",le.appendChild(st);else{let dt=(Ad=(Cd=me.clearChat)==null?void 0:Cd.placement)!=null?Ad:"inline",ln=(Td=(Sd=me.clearChat)==null?void 0:Sd.enabled)!=null?Td:!0;st.className=ln&&dt==="inline"?"":"persona-ml-auto";let Bn=le.querySelector(".persona-border-b-persona-divider");Bn&&Bn.appendChild(st)}if(je.style.color=me.closeButtonColor||Ln.actionIconColor,me.closeButtonBackgroundColor?(je.style.backgroundColor=me.closeButtonBackgroundColor,je.classList.remove("hover:persona-bg-gray-100")):(je.style.backgroundColor="",je.classList.add("hover:persona-bg-gray-100")),me.closeButtonBorderWidth||me.closeButtonBorderColor){let dt=me.closeButtonBorderWidth||"0px",ln=me.closeButtonBorderColor||"transparent";je.style.border=`${dt} solid ${ln}`,je.classList.remove("persona-border-none")}else je.style.border="",je.classList.add("persona-border-none");me.closeButtonBorderRadius?(je.style.borderRadius=me.closeButtonBorderRadius,je.classList.remove("persona-rounded-full")):(je.style.borderRadius="",je.classList.add("persona-rounded-full")),me.closeButtonPaddingX?(je.style.paddingLeft=me.closeButtonPaddingX,je.style.paddingRight=me.closeButtonPaddingX):(je.style.paddingLeft="",je.style.paddingRight=""),me.closeButtonPaddingY?(je.style.paddingTop=me.closeButtonPaddingY,je.style.paddingBottom=me.closeButtonPaddingY):(je.style.paddingTop="",je.style.paddingBottom="");let bn=(Md=me.closeButtonIconName)!=null?Md:"x",pr=(Ed=me.closeButtonIconText)!=null?Ed:"\xD7";je.innerHTML="";let kn=Ce(bn,"28px","currentColor",1);kn?je.appendChild(kn):je.textContent=pr;let Kt=(kd=me.closeButtonTooltipText)!=null?kd:"Close chat",Gn=(Ld=me.closeButtonShowTooltip)!=null?Ld:!0;if(je.setAttribute("aria-label",Kt),st&&(st._cleanupTooltip&&(st._cleanupTooltip(),delete st._cleanupTooltip),Gn&&Kt)){let dt=null,ln=()=>{if(dt||!je)return;let Ao=je.ownerDocument,Cs=Ao.body;if(!Cs)return;dt=kr(Ao,"div","persona-clear-chat-tooltip"),dt.textContent=Kt;let As=kr(Ao,"div");As.className="persona-clear-chat-tooltip-arrow",dt.appendChild(As);let So=je.getBoundingClientRect();dt.style.position="fixed",dt.style.zIndex=String(io),dt.style.left=`${So.left+So.width/2}px`,dt.style.top=`${So.top-8}px`,dt.style.transform="translate(-50%, -100%)",Cs.appendChild(dt)},Bn=()=>{dt&&dt.parentNode&&(dt.parentNode.removeChild(dt),dt=null)};st.addEventListener("mouseenter",ln),st.addEventListener("mouseleave",Bn),je.addEventListener("focus",ln),je.addEventListener("blur",Bn),st._cleanupTooltip=()=>{Bn(),st&&(st.removeEventListener("mouseenter",ln),st.removeEventListener("mouseleave",Bn)),je&&(je.removeEventListener("focus",ln),je.removeEventListener("blur",Bn))}}}let{clearChatButton:Ge,clearChatButtonWrapper:Et}=X;if(Ge){let Z=(Pd=me.clearChat)!=null?Pd:{},St=(Id=Z.enabled)!=null?Id:!0,Ut=(Rd=(Wd=r.layout)==null?void 0:Wd.header)==null?void 0:Rd.showClearChat,st=Ut!==void 0?Ut:St,kt=(Hd=Z.placement)!=null?Hd:"inline";if(Et){Et.style.display=st?"":"none";let{closeButtonWrapper:an}=X;!D()&&an&&!an.classList.contains("persona-absolute")&&(st?an.classList.remove("persona-ml-auto"):an.classList.add("persona-ml-auto"));let bn=kt==="top-right",pr=Et.classList.contains("persona-absolute");if(!D()&&bn!==pr&&st){if(Et.remove(),bn)Et.className="persona-absolute persona-top-4 persona-z-50",Et.style.right="48px",le.style.position="relative",le.appendChild(Et);else{Et.className="persona-relative persona-ml-auto persona-clear-chat-button-wrapper",Et.style.right="";let Kt=le.querySelector(".persona-border-b-persona-divider"),Gn=X.closeButtonWrapper;Kt&&Gn&&Gn.parentElement===Kt?Kt.insertBefore(Et,Gn):Kt&&Kt.appendChild(Et)}let kn=X.closeButtonWrapper;kn&&!kn.classList.contains("persona-absolute")&&(bn?kn.classList.add("persona-ml-auto"):kn.classList.remove("persona-ml-auto"))}}if(st){if(!D()){let dt=(Bd=Z.size)!=null?Bd:"32px";Ge.style.height=dt,Ge.style.width=dt}let an=(Dd=Z.iconName)!=null?Dd:"refresh-cw",bn=(Nd=Z.iconColor)!=null?Nd:"";Ge.style.color=bn||Ln.actionIconColor,Ge.innerHTML="";let pr=D()?"14px":"20px",kn=Ce(an,pr,"currentColor",2);if(kn&&Ge.appendChild(kn),Z.backgroundColor?(Ge.style.backgroundColor=Z.backgroundColor,Ge.classList.remove("hover:persona-bg-gray-100")):(Ge.style.backgroundColor="",Ge.classList.add("hover:persona-bg-gray-100")),Z.borderWidth||Z.borderColor){let dt=Z.borderWidth||"0px",ln=Z.borderColor||"transparent";Ge.style.border=`${dt} solid ${ln}`,Ge.classList.remove("persona-border-none")}else Ge.style.border="",Ge.classList.add("persona-border-none");Z.borderRadius?(Ge.style.borderRadius=Z.borderRadius,Ge.classList.remove("persona-rounded-full")):(Ge.style.borderRadius="",Ge.classList.add("persona-rounded-full")),Z.paddingX?(Ge.style.paddingLeft=Z.paddingX,Ge.style.paddingRight=Z.paddingX):(Ge.style.paddingLeft="",Ge.style.paddingRight=""),Z.paddingY?(Ge.style.paddingTop=Z.paddingY,Ge.style.paddingBottom=Z.paddingY):(Ge.style.paddingTop="",Ge.style.paddingBottom="");let Kt=(Fd=Z.tooltipText)!=null?Fd:"Clear chat",Gn=(Od=Z.showTooltip)!=null?Od:!0;if(Ge.setAttribute("aria-label",Kt),Et&&(Et._cleanupTooltip&&(Et._cleanupTooltip(),delete Et._cleanupTooltip),Gn&&Kt)){let dt=null,ln=()=>{if(dt||!Ge)return;let Ao=Ge.ownerDocument,Cs=Ao.body;if(!Cs)return;dt=kr(Ao,"div","persona-clear-chat-tooltip"),dt.textContent=Kt;let As=kr(Ao,"div");As.className="persona-clear-chat-tooltip-arrow",dt.appendChild(As);let So=Ge.getBoundingClientRect();dt.style.position="fixed",dt.style.zIndex=String(io),dt.style.left=`${So.left+So.width/2}px`,dt.style.top=`${So.top-8}px`,dt.style.transform="translate(-50%, -100%)",Cs.appendChild(dt)},Bn=()=>{dt&&dt.parentNode&&(dt.parentNode.removeChild(dt),dt=null)};Et.addEventListener("mouseenter",ln),Et.addEventListener("mouseleave",Bn),Ge.addEventListener("focus",ln),Ge.addEventListener("blur",Bn),Et._cleanupTooltip=()=>{Bn(),Et&&(Et.removeEventListener("mouseenter",ln),Et.removeEventListener("mouseleave",Bn)),Ge&&(Ge.removeEventListener("focus",ln),Ge.removeEventListener("blur",Bn))}}}}let tn=r.actionParsers&&r.actionParsers.length?r.actionParsers:[Yi],rr=r.actionHandlers&&r.actionHandlers.length?r.actionHandlers:[Ys.message,Ys.messageAndClick];P=Zi({parsers:tn,handlers:rr,getSessionMetadata:g,updateSessionMetadata:u,emit:s.emit,documentRef:typeof document!="undefined"?document:null}),We=Pm(r,P,te),O.updateConfig(r),gs(ze,O.getMessages(),We),Do(),dl(),ti(O.isStreaming());let Kn=((_d=r.voiceRecognition)==null?void 0:_d.enabled)===!0,bo=typeof window!="undefined"&&(typeof window.webkitSpeechRecognition!="undefined"||typeof window.SpeechRecognition!="undefined"),vo=((Ud=($d=r.voiceRecognition)==null?void 0:$d.provider)==null?void 0:Ud.type)==="runtype";if(Kn&&(bo||vo))if(!U||!rt){let Z=eg(r.voiceRecognition,r.sendButton);Z&&(U=Z.micButton,rt=Z.micButtonWrapper,pt.insertBefore(rt,gn),U.addEventListener("click",la),U.disabled=O.isStreaming())}else{let Z=(qd=r.voiceRecognition)!=null?qd:{},St=(zd=r.sendButton)!=null?zd:{},Ut=(jd=Z.iconName)!=null?jd:"mic",st=(Vd=St.size)!=null?Vd:"40px",kt=(Kd=Z.iconSize)!=null?Kd:st,an=parseFloat(kt)||24;U.style.width=kt,U.style.height=kt,U.style.minWidth=kt,U.style.minHeight=kt;let bn=(Qd=(Gd=Z.iconColor)!=null?Gd:St.textColor)!=null?Qd:"currentColor";U.innerHTML="";let pr=Ce(Ut,an,bn,2);pr?U.appendChild(pr):U.textContent="\u{1F3A4}";let kn=(Xd=Z.backgroundColor)!=null?Xd:St.backgroundColor;kn?U.style.backgroundColor=kn:U.style.backgroundColor="",bn?U.style.color=bn:U.style.color="var(--persona-text, #111827)",Z.borderWidth?(U.style.borderWidth=Z.borderWidth,U.style.borderStyle="solid"):(U.style.borderWidth="",U.style.borderStyle=""),Z.borderColor?U.style.borderColor=Z.borderColor:U.style.borderColor="",Z.paddingX?(U.style.paddingLeft=Z.paddingX,U.style.paddingRight=Z.paddingX):(U.style.paddingLeft="",U.style.paddingRight=""),Z.paddingY?(U.style.paddingTop=Z.paddingY,U.style.paddingBottom=Z.paddingY):(U.style.paddingTop="",U.style.paddingBottom="");let Kt=rt==null?void 0:rt.querySelector(".persona-send-button-tooltip"),Gn=(Jd=Z.tooltipText)!=null?Jd:"Start voice recognition";if(((Yd=Z.showTooltip)!=null?Yd:!1)&&Gn)if(Kt)Kt.textContent=Gn,Kt.style.display="";else{let ln=document.createElement("div");ln.className="persona-send-button-tooltip",ln.textContent=Gn,rt==null||rt.insertBefore(ln,U)}else Kt&&(Kt.style.display="none");rt.style.display="",U.disabled=O.isStreaming()}else U&&rt&&(rt.style.display="none",((ep=(Zd=r.voiceRecognition)==null?void 0:Zd.provider)==null?void 0:ep.type)==="runtype"?O.isVoiceActive()&&O.toggleVoice():Mr&&eo());if(((tp=r.attachments)==null?void 0:tp.enabled)===!0)if(!ce||!K){let Z=(np=r.attachments)!=null?np:{},Ut=(op=((rp=r.sendButton)!=null?rp:{}).size)!=null?op:"40px";bt||(bt=b("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2"),bt.style.display="none",Pt.insertBefore(bt,Se)),Ee||(Ee=document.createElement("input"),Ee.type="file",Ee.accept=((sp=Z.allowedTypes)!=null?sp:$r).join(","),Ee.multiple=((ap=Z.maxFiles)!=null?ap:4)>1,Ee.style.display="none",Ee.setAttribute("aria-label","Attach files"),Pt.insertBefore(Ee,Se)),ce=b("div","persona-send-button-wrapper"),K=b("button","persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer persona-attachment-button"),K.type="button",K.setAttribute("aria-label",(ip=Z.buttonTooltipText)!=null?ip:"Attach file");let st=(lp=Z.buttonIconName)!=null?lp:"paperclip",kt=Ut,an=parseFloat(kt)||40,bn=Math.round(an*.6);K.style.width=kt,K.style.height=kt,K.style.minWidth=kt,K.style.minHeight=kt,K.style.fontSize="18px",K.style.lineHeight="1",K.style.backgroundColor="transparent",K.style.color="var(--persona-primary, #111827)",K.style.border="none",K.style.borderRadius="6px",K.style.transition="background-color 0.15s ease",K.addEventListener("mouseenter",()=>{K.style.backgroundColor="var(--persona-palette-colors-black-alpha-50, rgba(0, 0, 0, 0.05))"}),K.addEventListener("mouseleave",()=>{K.style.backgroundColor="transparent"});let pr=Ce(st,bn,"currentColor",1.5);pr?K.appendChild(pr):K.textContent="\u{1F4CE}",K.addEventListener("click",Gn=>{Gn.preventDefault(),Ee==null||Ee.click()}),ce.appendChild(K);let kn=(cp=Z.buttonTooltipText)!=null?cp:"Attach file",Kt=b("div","persona-send-button-tooltip");Kt.textContent=kn,ce.appendChild(Kt),Ke.append(ce),!vt&&Ee&&bt&&(vt=Fs.fromConfig(Z),vt.setPreviewsContainer(bt),Ee.addEventListener("change",async()=>{vt&&(Ee!=null&&Ee.files)&&(await vt.handleFileSelect(Ee.files),Ee.value="")})),le.querySelector(".persona-attachment-drop-overlay")||le.appendChild(Im(Z.dropOverlay))}else{ce.style.display="";let Z=(dp=r.attachments)!=null?dp:{};Ee&&(Ee.accept=((pp=Z.allowedTypes)!=null?pp:$r).join(","),Ee.multiple=((up=Z.maxFiles)!=null?up:4)>1),vt&&vt.updateConfig({allowedTypes:Z.allowedTypes,maxFileSize:Z.maxFileSize,maxFiles:Z.maxFiles})}else ce&&(ce.style.display="none"),vt&&vt.clearAttachments(),(mp=le.querySelector(".persona-attachment-drop-overlay"))==null||mp.remove();let zt=(gp=r.sendButton)!=null?gp:{},xo=(fp=zt.useIcon)!=null?fp:!1,no=(hp=zt.iconText)!=null?hp:"\u2191",ro=zt.iconName,Or=(yp=zt.tooltipText)!=null?yp:"Send message",wo=(bp=zt.showTooltip)!=null?bp:!1,dr=(vp=zt.size)!=null?vp:"40px",Je=zt.backgroundColor,sn=zt.textColor;if(xo){if(ue.style.width=dr,ue.style.height=dr,ue.style.minWidth=dr,ue.style.minHeight=dr,ue.style.fontSize="18px",ue.style.lineHeight="1",ue.innerHTML="",sn?ue.style.color=sn:ue.style.color="var(--persona-button-primary-fg, #ffffff)",ro){let Z=parseFloat(dr)||24,St=(sn==null?void 0:sn.trim())||"currentColor",Ut=Ce(ro,Z,St,2);Ut?ue.appendChild(Ut):ue.textContent=no}else ue.textContent=no;ue.className="persona-rounded-button persona-flex persona-items-center persona-justify-center disabled:persona-opacity-50 persona-cursor-pointer",Je?(ue.style.backgroundColor=Je,ue.classList.remove("persona-bg-persona-primary")):(ue.style.backgroundColor="",ue.classList.add("persona-bg-persona-primary"))}else ue.textContent=(wp=(xp=r.copy)==null?void 0:xp.sendButtonLabel)!=null?wp:"Send",ue.style.width="",ue.style.height="",ue.style.minWidth="",ue.style.minHeight="",ue.style.fontSize="",ue.style.lineHeight="",ue.className="persona-rounded-button persona-bg-persona-accent persona-px-4 persona-py-2 persona-text-sm persona-font-semibold persona-text-white disabled:persona-opacity-50 persona-cursor-pointer",Je?(ue.style.backgroundColor=Je,ue.classList.remove("persona-bg-persona-accent")):ue.classList.add("persona-bg-persona-accent"),sn?ue.style.color=sn:ue.classList.add("persona-text-white");zt.borderWidth?(ue.style.borderWidth=zt.borderWidth,ue.style.borderStyle="solid"):(ue.style.borderWidth="",ue.style.borderStyle=""),zt.borderColor?ue.style.borderColor=zt.borderColor:ue.style.borderColor="",zt.paddingX?(ue.style.paddingLeft=zt.paddingX,ue.style.paddingRight=zt.paddingX):(ue.style.paddingLeft="",ue.style.paddingRight=""),zt.paddingY?(ue.style.paddingTop=zt.paddingY,ue.style.paddingBottom=zt.paddingY):(ue.style.paddingTop="",ue.style.paddingBottom="");let Ot=gn==null?void 0:gn.querySelector(".persona-send-button-tooltip");if(wo&&Or)if(Ot)Ot.textContent=Or,Ot.style.display="";else{let Z=document.createElement("div");Z.className="persona-send-button-tooltip",Z.textContent=Or,gn==null||gn.insertBefore(Z,ue)}else Ot&&(Ot.style.display="none");let Ft=(Mp=(Cp=r.layout)==null?void 0:Cp.contentMaxWidth)!=null?Mp:D()?(Tp=(Sp=(Ap=r.launcher)==null?void 0:Ap.composerBar)==null?void 0:Sp.contentMaxWidth)!=null?Tp:"720px":void 0;Ft?(ze.style.maxWidth=Ft,ze.style.marginLeft="auto",ze.style.marginRight="auto",ze.style.width="100%",Pt&&(Pt.style.maxWidth=Ft,Pt.style.marginLeft="auto",Pt.style.marginRight="auto"),Lt&&(Lt.style.maxWidth=Ft,Lt.style.marginLeft="auto",Lt.style.marginRight="auto")):(ze.style.maxWidth="",ze.style.marginLeft="",ze.style.marginRight="",ze.style.width="",Pt&&(Pt.style.maxWidth="",Pt.style.marginLeft="",Pt.style.marginRight=""),Lt&&(Lt.style.maxWidth="",Lt.style.marginLeft="",Lt.style.marginRight=""));let gt=(Ep=r.statusIndicator)!=null?Ep:{},jt=(kp=gt.visible)!=null?kp:!0;if(nn.style.display=jt?"":"none",O){let Z=O.getStatus();it(nn,(Ut=>{var st,kt,an,bn;return Ut==="idle"?(st=gt.idleText)!=null?st:vn.idle:Ut==="connecting"?(kt=gt.connectingText)!=null?kt:vn.connecting:Ut==="connected"?(an=gt.connectedText)!=null?an:vn.connected:Ut==="error"?(bn=gt.errorText)!=null?bn:vn.error:vn[Ut]})(Z),gt,Z)}nn.classList.remove("persona-text-left","persona-text-center","persona-text-right");let Ct=gt.align==="left"?"persona-text-left":gt.align==="center"?"persona-text-center":"persona-text-right";nn.classList.add(Ct)},open(){B()&&_t(!0,"api")},close(){B()&&_t(!1,"api")},toggle(){B()&&_t(!E,"api")},clearChat(){An=!1,O.clearMessages(),Ar.clear(),Dr();try{localStorage.removeItem(ds),r.debug&&console.log(`[AgentWidget] Cleared default localStorage key: ${ds}`)}catch(p){console.error("[AgentWidget] Failed to clear default localStorage:",p)}if(r.clearChatHistoryStorageKey&&r.clearChatHistoryStorageKey!==ds)try{localStorage.removeItem(r.clearChatHistoryStorageKey),r.debug&&console.log(`[AgentWidget] Cleared custom localStorage key: ${r.clearChatHistoryStorageKey}`)}catch(p){console.error("[AgentWidget] Failed to clear custom localStorage:",p)}let l=new CustomEvent("persona:clear-chat",{detail:{timestamp:new Date().toISOString()}});if(window.dispatchEvent(l),i!=null&&i.clear)try{let p=i.clear();p instanceof Promise&&p.catch(h=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",h)})}catch(p){typeof console!="undefined"&&console.error("[AgentWidget] Failed to clear storage adapter:",p)}d={},P.syncFromMetadata(),fe==null||fe.clear(),re==null||re.reset(),V==null||V.update()},setMessage(l){return!Se||O.isStreaming()?!1:(!E&&B()&&_t(!0,"system"),Se.value=l,Se.dispatchEvent(new Event("input",{bubbles:!0})),!0)},submitMessage(l){if(O.isStreaming())return!1;let p=(l==null?void 0:l.trim())||Se.value.trim();return p?(!E&&B()&&_t(!0,"system"),Se.value="",Se.style.height="auto",O.sendMessage(p),!0):!1},startVoiceRecognition(){var p,h;return O.isStreaming()?!1:((h=(p=r.voiceRecognition)==null?void 0:p.provider)==null?void 0:h.type)==="runtype"?(O.isVoiceActive()||(!E&&B()&&_t(!0,"system"),ft.manuallyDeactivated=!1,Wn(),O.toggleVoice().then(()=>{ft.active=O.isVoiceActive(),er("user"),O.isVoiceActive()&&zo()})),!0):Mr?!0:yl()?(!E&&B()&&_t(!0,"system"),ft.manuallyDeactivated=!1,Wn(),aa("user"),!0):!1},stopVoiceRecognition(){var l,p;return((p=(l=r.voiceRecognition)==null?void 0:l.provider)==null?void 0:p.type)==="runtype"?O.isVoiceActive()?(O.toggleVoice().then(()=>{ft.active=!1,ft.manuallyDeactivated=!0,Wn(),er("user"),Fr()}),!0):!1:Mr?(ft.manuallyDeactivated=!0,Wn(),eo("user"),!0):!1},injectMessage(l){return!E&&B()&&_t(!0,"system"),O.injectMessage(l)},injectAssistantMessage(l){!E&&B()&&_t(!0,"system");let p=O.injectAssistantMessage(l);return z&&(z=!1,j&&(clearTimeout(j),j=null),setTimeout(()=>{O&&!O.isStreaming()&&O.continueConversation()},100)),p},injectUserMessage(l){return!E&&B()&&_t(!0,"system"),O.injectUserMessage(l)},injectSystemMessage(l){return!E&&B()&&_t(!0,"system"),O.injectSystemMessage(l)},injectMessageBatch(l){return!E&&B()&&_t(!0,"system"),O.injectMessageBatch(l)},injectComponentDirective(l){return!E&&B()&&_t(!0,"system"),O.injectComponentDirective(l)},injectTestMessage(l){!E&&B()&&_t(!0,"system"),O.injectTestEvent(l)},async connectStream(l,p){return O.connectStream(l,p)},__pushEventStreamEvent(l){fe&&(re==null||re.processEvent(l.type,l.payload),fe.push({id:`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:l.type,timestamp:Date.now(),payload:JSON.stringify(l.payload)}))},showEventStream(){!Pe||!fe||Lr()},hideEventStream(){ee&&ar()},isEventStreamVisible(){return ee},showArtifacts(){sr(r)&&(An=!1,$n(),wt==null||wt.setMobileOpen(!0))},hideArtifacts(){sr(r)&&(An=!0,$n())},upsertArtifact(l){return sr(r)?(An=!1,O.upsertArtifact(l)):null},selectArtifact(l){sr(r)&&O.selectArtifact(l)},clearArtifacts(){sr(r)&&O.clearArtifacts()},getArtifacts(){var l;return(l=O==null?void 0:O.getArtifacts())!=null?l:[]},getSelectedArtifactId(){var l;return(l=O==null?void 0:O.getSelectedArtifactId())!=null?l:null},focusInput(){return T&&!E&&!D()||!Se?!1:(Se.focus(),!0)},async resolveApproval(l,p,h){let A=O.getMessages().find(R=>{var q;return R.variant==="approval"&&((q=R.approval)==null?void 0:q.id)===l});if(!(A!=null&&A.approval))throw new Error(`Approval not found: ${l}`);if(A.approval.toolType==="webmcp"){O.resolveWebMcpApproval(A.id,p);return}return O.resolveApproval(A.approval,p,h)},getMessages(){return O.getMessages()},getStatus(){return O.getStatus()},getPersistentMetadata(){return{...d}},updatePersistentMetadata(l){u(l)},on(l,p){return s.on(l,p)},off(l,p){s.off(l,p)},isOpen(){return B()&&E},isVoiceActive(){return ft.active},toggleReadAloud(l){O.toggleReadAloud(l)},stopReadAloud(){O.stopSpeaking()},getReadAloudState(l){return O.getReadAloudState(l)},onReadAloudChange(l){return O.onReadAloudChange(l)},getState(){return{open:B()&&E,launcherEnabled:T,voiceActive:ft.active,streaming:O.isStreaming()}},showCSATFeedback(l){!E&&B()&&_t(!0,"system");let p=ze.querySelector(".persona-feedback-container");p&&p.remove();let h=Em({onSubmit:async(y,A)=>{var R;O.isClientTokenMode()&&await O.submitCSATFeedback(y,A),(R=l==null?void 0:l.onSubmit)==null||R.call(l,y,A)},onDismiss:l==null?void 0:l.onDismiss,...l});ze.appendChild(h),h.scrollIntoView({behavior:"smooth",block:"end"})},showNPSFeedback(l){!E&&B()&&_t(!0,"system");let p=ze.querySelector(".persona-feedback-container");p&&p.remove();let h=km({onSubmit:async(y,A)=>{var R;O.isClientTokenMode()&&await O.submitNPSFeedback(y,A),(R=l==null?void 0:l.onSubmit)==null||R.call(l,y,A)},onDismiss:l==null?void 0:l.onDismiss,...l});ze.appendChild(h),h.scrollIntoView({behavior:"smooth",block:"end"})},async submitCSATFeedback(l,p){return O.submitCSATFeedback(l,p)},async submitNPSFeedback(l,p){return O.submitNPSFeedback(l,p)},destroy(){yo!=null&&(clearInterval(yo),yo=null),ct.forEach(l=>l()),Me.remove(),Qe==null||Qe.remove(),Qt==null||Qt.destroy(),on==null||on.remove(),wr&&je.removeEventListener("click",wr)}};if((((Sc=t==null?void 0:t.debugTools)!=null?Sc:!1)||!!r.debug)&&typeof window!="undefined"){let l=window.AgentWidgetBrowser,p={controller:en,getMessages:en.getMessages,getStatus:en.getStatus,getMetadata:en.getPersistentMetadata,updateMetadata:en.updatePersistentMetadata,clearHistory:()=>en.clearChat(),setVoiceActive:h=>h?en.startVoiceRecognition():en.stopVoiceRecognition()};window.AgentWidgetBrowser=p,ct.push(()=>{window.AgentWidgetBrowser===p&&(window.AgentWidgetBrowser=l)})}if(typeof window!="undefined"){let l=n.getAttribute("data-persona-instance")||n.id||"persona-"+Math.random().toString(36).slice(2,8),p=F=>{let H=F.detail;(!(H!=null&&H.instanceId)||H.instanceId===l)&&en.focusInput()};if(window.addEventListener("persona:focusInput",p),ct.push(()=>{window.removeEventListener("persona:focusInput",p)}),Pe){let F=oe=>{let se=oe.detail;(!(se!=null&&se.instanceId)||se.instanceId===l)&&en.showEventStream()},H=oe=>{let se=oe.detail;(!(se!=null&&se.instanceId)||se.instanceId===l)&&en.hideEventStream()};window.addEventListener("persona:showEventStream",F),window.addEventListener("persona:hideEventStream",H),ct.push(()=>{window.removeEventListener("persona:showEventStream",F),window.removeEventListener("persona:hideEventStream",H)})}let h=F=>{let H=F.detail;(!(H!=null&&H.instanceId)||H.instanceId===l)&&en.showArtifacts()},y=F=>{let H=F.detail;(!(H!=null&&H.instanceId)||H.instanceId===l)&&en.hideArtifacts()},A=F=>{let H=F.detail;H!=null&&H.instanceId&&H.instanceId!==l||H!=null&&H.artifact&&en.upsertArtifact(H.artifact)},R=F=>{let H=F.detail;H!=null&&H.instanceId&&H.instanceId!==l||typeof(H==null?void 0:H.id)=="string"&&en.selectArtifact(H.id)},q=F=>{let H=F.detail;(!(H!=null&&H.instanceId)||H.instanceId===l)&&en.clearArtifacts()};window.addEventListener("persona:showArtifacts",h),window.addEventListener("persona:hideArtifacts",y),window.addEventListener("persona:upsertArtifact",A),window.addEventListener("persona:selectArtifact",R),window.addEventListener("persona:clearArtifacts",q),ct.push(()=>{window.removeEventListener("persona:showArtifacts",h),window.removeEventListener("persona:hideArtifacts",y),window.removeEventListener("persona:upsertArtifact",A),window.removeEventListener("persona:selectArtifact",R),window.removeEventListener("persona:clearArtifacts",q)})}let nr=uv(r.persistState);if(nr&&B()){let l=mv(nr.storage),p=`${nr.keyPrefix}widget-open`,h=`${nr.keyPrefix}widget-voice`,y=`${nr.keyPrefix}widget-voice-mode`;if(l){let A=((Tc=nr.persist)==null?void 0:Tc.openState)&&l.getItem(p)==="true",R=((Mc=nr.persist)==null?void 0:Mc.voiceState)&&l.getItem(h)==="true",q=((Ec=nr.persist)==null?void 0:Ec.voiceState)&&l.getItem(y)==="true";if(A&&setTimeout(()=>{en.open(),setTimeout(()=>{var F;if(R||q)en.startVoiceRecognition();else if((F=nr.persist)!=null&&F.focusInput){let H=n.querySelector("textarea");H&&H.focus()}},100)},0),(kc=nr.persist)!=null&&kc.openState&&(s.on("widget:opened",()=>{l.setItem(p,"true")}),s.on("widget:closed",()=>{l.setItem(p,"false")})),(Lc=nr.persist)!=null&&Lc.voiceState&&(s.on("voice:state",F=>{l.setItem(h,F.active?"true":"false")}),s.on("user:message",F=>{l.setItem(y,F.viaVoice?"true":"false")})),nr.clearOnChatClear){let F=()=>{l.removeItem(p),l.removeItem(h),l.removeItem(y)},H=()=>F();window.addEventListener("persona:clear-chat",H),ct.push(()=>{window.removeEventListener("persona:clear-chat",H)})}}}return m&&B()&&setTimeout(()=>{en.open()},0),Uo(),ea||Rp().then(()=>{O&&(No++,Ar.clear(),gs(ze,O.getMessages(),We))}).catch(()=>{}),en};var gv=(n,e)=>{let t=n.trim(),r=/^(\d+(?:\.\d+)?)px$/i.exec(t);if(r)return Math.max(0,parseFloat(r[1]));let o=/^(\d+(?:\.\d+)?)%$/i.exec(t);return o?Math.max(0,e*parseFloat(o[1])/100):420},fv=(n,e)=>{if(e===!1){n.style.maxHeight="";return}n.style.maxHeight="100vh",n.style.maxHeight=e},hv=(n,e)=>{e===!1?(n.style.position="relative",n.style.top=""):(n.style.position="sticky",n.style.top="0")},yv=(n,e)=>{let t=n.parentElement;if(!t)return;let r=n.ownerDocument.createElement("div");r.style.cssText="width:0;height:1px;margin:0;padding:0;border:0;visibility:hidden;",t.appendChild(r);let o=r.offsetHeight>0;r.style.height="100%";let s=r.offsetHeight>0;r.remove(),!(!o||s)&&console.warn("[AgentWidget] Docked mode: no ancestor of the dock target provides a definite height, so the dock panel cannot size to your layout."+(e.maxHeight===!1?" The viewport guard is disabled (dock.maxHeight: false), so the panel will grow with the conversation and overflow the viewport.":` Falling back to clamping the panel to ${e.maxHeight} (configurable via launcher.dock.maxHeight).`)+" To size the panel from your layout instead, give the height chain a definite height (e.g. `html, body { height: 100% }`) down to the dock target's parent.")},Rm=(n,e)=>{var r,o;let t=(o=(r=e==null?void 0:e.launcher)==null?void 0:r.enabled)!=null?o:!0;n.className="persona-host",n.style.height=t?"":"100%",n.style.display=t?"":"flex",n.style.flexDirection=t?"":"column",n.style.flex=t?"":"1 1 auto",n.style.minHeight=t?"":"0"},ol=n=>{n.style.position="",n.style.top="",n.style.bottom="",n.style.left="",n.style.right="",n.style.zIndex="",n.style.transform="",n.style.pointerEvents=""},Hm=n=>{n.style.inset="",n.style.width="",n.style.height="",n.style.maxWidth="",n.style.maxHeight="",n.style.minWidth="",ol(n)},tl=n=>{n.style.transition=""},nl=n=>{n.style.display="",n.style.flexDirection="",n.style.flex="",n.style.minHeight="",n.style.minWidth="",n.style.width="",n.style.height="",n.style.alignItems="",n.style.transition="",n.style.transform="",n.style.marginLeft=""},rl=n=>{n.style.width="",n.style.maxWidth="",n.style.minWidth="",n.style.flex="1 1 auto"},ei=(n,e)=>{n.style.width="",n.style.minWidth="",n.style.maxWidth="",n.style.boxSizing="",e.style.alignItems=""},bv=(n,e,t,r,o)=>{o?t.parentElement!==e&&(n.replaceChildren(),e.replaceChildren(t,r),n.appendChild(e)):t.parentElement===e&&(e.replaceChildren(),n.appendChild(t),n.appendChild(r))},vv=(n,e,t,r,o,s)=>{let a=s?e:n;o==="left"?a.firstElementChild!==r&&a.replaceChildren(r,t):a.lastElementChild!==r&&a.replaceChildren(t,r)},Bm=(n,e,t,r,o,s,a)=>{var v,x,P,T,M,N;let i=mr(s),d=i.reveal==="push";bv(n,e,t,r,d),vv(n,e,t,r,i.side,d),n.dataset.personaHostLayout="docked",n.dataset.personaDockSide=i.side,n.dataset.personaDockOpen=a?"true":"false",n.style.width="100%",n.style.maxWidth="100%",n.style.minWidth="0",n.style.height="100%",n.style.minHeight="0",n.style.position="relative",t.style.display="flex",t.style.flexDirection="column",t.style.minHeight="0",t.style.position="relative",o.className="persona-host",o.style.height="100%",o.style.minHeight="0",o.style.display="flex",o.style.flexDirection="column",o.style.flex="1 1 auto";let c=n.ownerDocument.defaultView,m=(x=(v=s==null?void 0:s.launcher)==null?void 0:v.mobileFullscreen)!=null?x:!0,f=(T=(P=s==null?void 0:s.launcher)==null?void 0:P.mobileBreakpoint)!=null?T:640,g=c!=null?c.innerWidth<=f:!1;if(m&&g&&a){n.dataset.personaDockMobileFullscreen="true",n.removeAttribute("data-persona-dock-reveal"),nl(e),tl(r),Hm(r),rl(t),ei(o,r),n.style.display="flex",n.style.flexDirection="column",n.style.alignItems="stretch",n.style.overflow="hidden",t.style.flex="1 1 auto",t.style.width="100%",t.style.minWidth="0",r.style.display="flex",r.style.flexDirection="column",r.style.position="fixed",r.style.inset="0",r.style.width="100%",r.style.height="100%",r.style.maxWidth="100%",r.style.minWidth="0",r.style.minHeight="0",r.style.overflow="hidden",r.style.zIndex=String((N=(M=s==null?void 0:s.launcher)==null?void 0:M.zIndex)!=null?N:xn),r.style.transform="none",r.style.transition="none",r.style.pointerEvents="auto",r.style.flex="none",d&&(e.style.display="flex",e.style.flexDirection="column",e.style.width="100%",e.style.height="100%",e.style.minHeight="0",e.style.minWidth="0",e.style.flex="1 1 auto",e.style.alignItems="stretch",e.style.transform="none",e.style.marginLeft="0",e.style.transition="none",t.style.flex="1 1 auto",t.style.width="100%",t.style.maxWidth="100%",t.style.minWidth="0");return}if(n.removeAttribute("data-persona-dock-mobile-fullscreen"),Hm(r),fv(r,i.maxHeight),i.reveal==="overlay"){n.style.display="flex",n.style.flexDirection="row",n.style.alignItems="stretch",n.style.overflow="hidden",n.dataset.personaDockReveal="overlay",nl(e),tl(r),rl(t),ei(o,r);let k=i.animate?"transform 180ms ease":"none",W=i.side==="right"?"translateX(100%)":"translateX(-100%)",C=a?"translateX(0)":W;r.style.display="flex",r.style.flexDirection="column",r.style.flex="none",r.style.position="absolute",r.style.top="0",r.style.bottom="0",r.style.width=i.width,r.style.maxWidth=i.width,r.style.minWidth=i.width,r.style.minHeight="0",r.style.overflow="hidden",r.style.transition=k,r.style.transform=C,r.style.pointerEvents=a?"auto":"none",r.style.zIndex="2",i.side==="right"?(r.style.right="0",r.style.left=""):(r.style.left="0",r.style.right="")}else if(i.reveal==="push"){n.style.display="flex",n.style.flexDirection="row",n.style.alignItems="stretch",n.style.overflow="hidden",n.dataset.personaDockReveal="push",tl(r),ol(r),ei(o,r);let k=gv(i.width,n.clientWidth),W=Math.max(0,n.clientWidth),C=i.animate?"margin-left 180ms ease":"none",I=i.side==="right"?a?-k:0:a?0:-k;e.style.display="flex",e.style.flexDirection="row",e.style.flex="0 0 auto",e.style.minHeight="0",e.style.minWidth="0",e.style.alignItems="stretch",e.style.height="100%",e.style.width=`${W+k}px`,e.style.transition=C,e.style.marginLeft=`${I}px`,e.style.transform="",t.style.flex="0 0 auto",t.style.flexGrow="0",t.style.flexShrink="0",t.style.width=`${W}px`,t.style.maxWidth=`${W}px`,t.style.minWidth=`${W}px`,r.style.display="flex",r.style.flexDirection="column",r.style.flex="0 0 auto",r.style.flexShrink="0",r.style.width=i.width,r.style.minWidth=i.width,r.style.maxWidth=i.width,r.style.position="relative",r.style.top="",r.style.overflow="hidden",r.style.transition="none",r.style.pointerEvents=a?"auto":"none"}else{n.style.display="flex",n.style.flexDirection="row",n.style.alignItems="stretch",n.style.overflow="",nl(e),ol(r),rl(t),ei(o,r);let k=i.reveal==="emerge";k?n.dataset.personaDockReveal="emerge":n.removeAttribute("data-persona-dock-reveal");let W=a?i.width:"0px",C=i.animate?"width 180ms ease, min-width 180ms ease, max-width 180ms ease, flex-basis 180ms ease":"none",I=!a;r.style.display="flex",r.style.flexDirection="column",r.style.flex=`0 0 ${W}`,r.style.width=W,r.style.maxWidth=W,r.style.minWidth=W,r.style.minHeight="0",hv(r,i.maxHeight),r.style.overflow=k||I?"hidden":"visible",r.style.transition=C,k&&(r.style.alignItems=i.side==="right"?"flex-start":"flex-end",o.style.width=i.width,o.style.minWidth=i.width,o.style.maxWidth=i.width,o.style.boxSizing="border-box")}},xv=(n,e)=>{let t=n.ownerDocument.createElement("div");return Rm(t,e),n.appendChild(t),{mode:"direct",host:t,shell:null,syncWidgetState:()=>{},updateConfig(r){Rm(t,r)},destroy(){t.remove()}}},wv=(n,e)=>{var N,k,W,C;let{ownerDocument:t}=n,r=n.parentElement;if(!r)throw new Error("Docked widget target must be attached to the DOM");let o=n.tagName.toUpperCase();if(o==="BODY"||o==="HTML")throw new Error('Docked widget target must be a concrete container element, not "body" or "html"');let s=n.nextSibling,a=t.createElement("div"),i=t.createElement("div"),d=t.createElement("div"),c=t.createElement("aside"),m=t.createElement("div"),f=(k=(N=e==null?void 0:e.launcher)==null?void 0:N.enabled)==null||k?(C=(W=e==null?void 0:e.launcher)==null?void 0:W.autoExpand)!=null?C:!1:!0;i.dataset.personaDockRole="push-track",d.dataset.personaDockRole="content",c.dataset.personaDockRole="panel",m.dataset.personaDockRole="host",c.appendChild(m),r.insertBefore(a,n),d.appendChild(n);let g=null,u=()=>{g==null||g.disconnect(),g=null},v=()=>{u(),mr(e).reveal==="push"&&typeof ResizeObserver!="undefined"&&(g=new ResizeObserver(()=>{Bm(a,i,d,c,m,e,f)}),g.observe(a))},x=!1,P=()=>{Bm(a,i,d,c,m,e,f),v(),f&&!x&&a.dataset.personaDockMobileFullscreen!=="true"&&(x=!0,yv(a,mr(e)))},T=a.ownerDocument.defaultView,M=()=>{P()};return T==null||T.addEventListener("resize",M),mr(e).reveal==="push"?(i.appendChild(d),i.appendChild(c),a.appendChild(i)):(a.appendChild(d),a.appendChild(c)),P(),{mode:"docked",host:m,shell:a,syncWidgetState(I){let D=I.launcherEnabled?I.open:!0;f!==D&&(f=D,P())},updateConfig(I){var D,B;e=I,((B=(D=e==null?void 0:e.launcher)==null?void 0:D.enabled)!=null?B:!0)===!1&&(f=!0),P()},destroy(){T==null||T.removeEventListener("resize",M),u(),r.isConnected&&(s&&s.parentNode===r?r.insertBefore(n,s):r.appendChild(n)),a.remove()}}},Dm=(n,e)=>mn(e)?wv(n,e):xv(n,e);var Zs={desktop:{w:1280,h:800},mobile:{w:390,h:844}},Nm=.15,Fm=1.5,sl="persona-preview-shell-theme",Cv={load:()=>null,save:()=>{},clear:()=>{}},Av=["How do I get started?","Pricing & plans","Talk to support"];function al(n){return n.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function Sv(n){return n==="dark"?{pageBg:"linear-gradient(180deg, #0f172a 0%, #020617 100%)",chromeBg:"#111827",chromeBorder:"#1f2937",dot:"#475569",skeleton:"#334155",cardBg:"#1e293b",cardBorder:"rgba(148, 163, 184, 0.16)"}:{pageBg:"linear-gradient(180deg, #ffffff 0%, #f8fafc 100%)",chromeBg:"#ffffff",chromeBorder:"#e5e7eb",dot:"#cbd5e1",skeleton:"#e2e8f0",cardBg:"#e2e8f0",cardBorder:"rgba(148, 163, 184, 0.18)"}}function Om(n){let e=Sv(n);return`* { box-sizing: border-box; }
|
|
110
110
|
html, body { margin: 0; padding: 0; height: 100%; overflow: hidden; }
|
|
111
111
|
html { color-scheme: ${n}; }
|
|
112
112
|
body { font-family: system-ui, sans-serif; background: ${e.pageBg}; }
|
|
@@ -130,7 +130,7 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
130
130
|
.preview-workspace-content-shell { position: relative; z-index: 1; flex: 1 1 auto; min-height: 100%; padding: 24px; }
|
|
131
131
|
.preview-workspace-row { display: flex; gap: 16px; margin-top: 20px; }
|
|
132
132
|
.preview-workspace-card { flex: 1; min-width: 0; height: 168px; border-radius: 18px; background: ${e.cardBg}; box-shadow: inset 0 0 0 1px ${e.cardBorder}; }
|
|
133
|
-
.preview-workspace-card.short { height: 96px; }`}function
|
|
133
|
+
.preview-workspace-card.short { height: 96px; }`}function _m(n,e){let t=n.contentDocument;if(!(t!=null&&t.documentElement))return;let r=t.getElementById(sl);r||(r=t.createElement("style"),r.id=sl,t.head.appendChild(r)),r.textContent=Om(e)}var Tv=`
|
|
134
134
|
<div class="preview-iframe-mock" aria-hidden="true">
|
|
135
135
|
<div class="preview-iframe-chrome">
|
|
136
136
|
<span class="preview-iframe-dot"></span>
|
|
@@ -149,7 +149,7 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
149
149
|
<div class="preview-iframe-line body"></div>
|
|
150
150
|
<div class="preview-iframe-line body"></div>
|
|
151
151
|
</div>
|
|
152
|
-
</div>`,
|
|
152
|
+
</div>`,Mv=`
|
|
153
153
|
<div class="preview-workspace-content-shell" aria-hidden="true">
|
|
154
154
|
<div class="preview-iframe-line hero"></div>
|
|
155
155
|
<div class="preview-iframe-line body"></div>
|
|
@@ -162,8 +162,8 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
162
162
|
<div class="preview-workspace-card short"></div>
|
|
163
163
|
<div class="preview-workspace-card short"></div>
|
|
164
164
|
</div>
|
|
165
|
-
</div>`;function
|
|
166
|
-
${
|
|
165
|
+
</div>`;function $m(n,e,t,r){let o=`
|
|
166
|
+
${Tv}
|
|
167
167
|
<div style="position:fixed;inset:0;z-index:9999;"><div id="${n}" data-mount-id="${n}"></div></div>`,s=`
|
|
168
168
|
<div class="preview-workspace-shell">
|
|
169
169
|
<div class="preview-workspace-topbar">
|
|
@@ -175,7 +175,7 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
175
175
|
</div>
|
|
176
176
|
<div class="preview-workspace-body">
|
|
177
177
|
<div id="preview-content-${n}" class="preview-workspace-content" data-mount-id="${n}">
|
|
178
|
-
${
|
|
178
|
+
${Mv}
|
|
179
179
|
</div>
|
|
180
180
|
</div>
|
|
181
181
|
</div>`;return`<!DOCTYPE html>
|
|
@@ -183,16 +183,16 @@ _Details: ${t.message}_`:r}var ta=n=>({isError:!0,content:[{type:"text",text:n}]
|
|
|
183
183
|
<head>
|
|
184
184
|
<meta charset="UTF-8">
|
|
185
185
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
186
|
-
<link rel="stylesheet" href="${
|
|
187
|
-
<style id="${
|
|
186
|
+
<link rel="stylesheet" href="${al(r)}">
|
|
187
|
+
<style id="${sl}">${Om(e)}</style>
|
|
188
188
|
</head>
|
|
189
189
|
<body>
|
|
190
190
|
${t?s:o}
|
|
191
191
|
</body>
|
|
192
|
-
</html>`}var
|
|
193
|
-
${W?`<div class="preview-frame-meta"><span class="preview-frame-label">${
|
|
194
|
-
<iframe class="preview-iframe" sandbox="allow-scripts allow-same-origin" data-mount-id="${
|
|
195
|
-
</div>`,
|
|
192
|
+
</html>`}var Ev=()=>[{id:"preview-adv-1",role:"user",content:"Can you create the product and gather the docs?",createdAt:new Date(Date.now()-18e4).toISOString()},{id:"preview-adv-2",role:"assistant",content:"",createdAt:new Date(Date.now()-15e4).toISOString(),streaming:!0,variant:"reasoning",reasoning:{id:"preview-reasoning",status:"streaming",chunks:["Now let me get the Persona embed documentation and builtin tools catalog."]}},{id:"preview-adv-3",role:"assistant",content:"",createdAt:new Date(Date.now()-12e4).toISOString(),streaming:!0,variant:"tool",toolCall:{id:"preview-tool-1",name:"Load tools",status:"running",chunks:["Loaded tools, used Runtype integration"]}},{id:"preview-adv-4",role:"assistant",content:"",createdAt:new Date(Date.now()-9e4).toISOString(),streaming:!0,variant:"tool",toolCall:{id:"preview-tool-2",name:"Get platform documentation",status:"running",chunks:["Get platform documentation"]}},{id:"preview-adv-5",role:"assistant",content:"I loaded the tools and fetched the docs. Next I can assemble the product details.",createdAt:new Date(Date.now()-3e4).toISOString()}],kv=n=>{var e,t,r,o,s,a,i,d;return!!((t=(e=n==null?void 0:n.features)==null?void 0:e.toolCallDisplay)!=null&&t.activePreview||(o=(r=n==null?void 0:n.features)==null?void 0:r.toolCallDisplay)!=null&&o.grouped||(a=(s=n==null?void 0:n.features)==null?void 0:s.toolCallDisplay)!=null&&a.collapsedMode&&n.features.toolCallDisplay.collapsedMode!=="tool-call"||(d=(i=n==null?void 0:n.features)==null?void 0:i.reasoningDisplay)!=null&&d.activePreview)};function Lv(n,e,t=[]){return n==="home"?[{id:"preview-home-1",role:"assistant",content:"Hi there! How can we help today?",createdAt:new Date().toISOString()}]:n==="minimized"?[{id:"preview-min-1",role:"assistant",content:"We are here whenever you are ready.",createdAt:new Date().toISOString()}]:n==="artifact"?[{id:"preview-art-1",role:"user",content:"Can you draft a quick overview of the project?",createdAt:new Date(Date.now()-12e4).toISOString()},{id:"preview-art-2",role:"assistant",content:"Here\u2019s a project overview document for you.",createdAt:new Date(Date.now()-6e4).toISOString()}]:n==="conversation"&&kv(e)?[...Ev(),...t]:[{id:"preview-conv-1",role:"assistant",content:"Hello! How can I help you today?",createdAt:new Date(Date.now()-18e4).toISOString()},{id:"preview-conv-2",role:"user",content:"I want to customize the theme editor preview.",createdAt:new Date(Date.now()-12e4).toISOString()},{id:"preview-conv-3",role:"assistant",content:"Absolutely. Check out the [getting started guide](https://example.com) to see what\u2019s possible, then adjust colors and tokens to match your brand.",createdAt:new Date(Date.now()-6e4).toISOString()},...t]}function Pv(n,e,t=[]){var s,a;let r={...n.launcher,enabled:!0,autoExpand:e!=="minimized"},o={...n,launcher:r,suggestionChips:e==="home"?(s=n.suggestionChips)!=null&&s.length?n.suggestionChips:Av:n.suggestionChips,initialMessages:Lv(e,n,t),storageAdapter:Cv};return e==="artifact"&&(o.features={...o.features,artifacts:{...(a=o.features)==null?void 0:a.artifacts,enabled:!0}}),o}function Iv(n,e){var r,o;let t=n.theme?Po(n.theme,{validate:!1}):Po();return{...Dt,...n.config,theme:t,darkTheme:n.darkTheme,colorScheme:(o=e!=null?e:(r=n.config)==null?void 0:r.colorScheme)!=null?o:"light"}}function ps(n,e){var r,o;let t=(r=n.scene)!=null?r:"conversation";return Pv(Iv(n,e),t,(o=n.appendedMessages)!=null?o:[])}function Um(n){var r,o,s,a,i;let e=(r=n.compareMode)!=null?r:"off",t=(o=n.shellMode)!=null?o:"light";if(e==="themes")return[{mountId:"preview-light",label:"Light",config:ps(n,"light"),shellMode:"light"},{mountId:"preview-dark",label:"Dark",config:ps(n,"dark"),shellMode:"dark"}];if(e==="baseline"&&(n.baselineConfig||n.baselineTheme)){let d={...n,config:(s=n.baselineConfig)!=null?s:n.config,theme:(a=n.baselineTheme)!=null?a:n.theme,darkTheme:(i=n.baselineDarkTheme)!=null?i:n.darkTheme};return[{mountId:"preview-baseline",label:"Baseline",config:ps(d,t),shellMode:t},{mountId:"preview-current",label:"Current",config:ps(n,t),shellMode:t}]}return[{mountId:"preview-current",label:"Current",config:ps(n,t),shellMode:t}]}function Wv(n,e){let t={...e},r=[],o=[],s=null,a=!1,i=1,d=1,c=0;function m(){var M;return(M=t.device)!=null?M:"desktop"}function f(){var M;return(M=t.zoom)!=null?M:i}function g(){var E,z;let M=getComputedStyle(n),N=parseFloat(M.paddingLeft)+parseFloat(M.paddingRight),k=parseFloat(M.paddingTop)+parseFloat(M.paddingBottom),W=40,C=((E=t.compareMode)!=null?E:"off")!=="off",I=(n.clientWidth-N-W)/(C?2:1),D=n.clientHeight-k-W;if(I<=0||D<=0)return 1;let B=(z=Zs[m()])!=null?z:Zs.desktop;return Math.min(I/B.w,D/B.h,1)}function u(){var k,W,C;i=g();let M=Math.max(Nm,Math.min(Fm,f()));d=M;let N=Array.from(n.querySelectorAll(".preview-iframe-wrapper"));for(let I of N){let D=(k=I.dataset.device)!=null?k:"desktop",B=(W=Zs[D])!=null?W:Zs.desktop;I.style.width=`${B.w*M}px`,I.style.height=`${B.h*M}px`,D==="mobile"&&(I.style.borderRadius=`${32*M}px`);let E=I.querySelector("iframe");E&&(E.style.width=`${B.w}px`,E.style.height=`${B.h}px`,E.style.transformOrigin="top left",E.style.transition="none",E.style.transform=`scale(${M})`)}(C=t.onScaleChange)==null||C.call(t,M)}function v(){var M;(M=t.onBeforeDestroy)==null||M.call(t);for(let N of r)N.destroy();for(let N of o)N();r=[],o=[]}function x(){return Array.from(n.querySelectorAll("iframe[data-mount-id]"))}function P(){var ve,Pe,Oe,Ae;if(a)return;v();let M=++c,N=Um(t),k=m(),W=((ve=t.compareMode)!=null?ve:"off")!=="off",C=((Pe=t.scene)!=null?Pe:"conversation")==="minimized",I=(Oe=t.widgetCssPath)!=null?Oe:"/widget-dist/widget.css",D=(Ae=t.buildSrcdoc)!=null?Ae:$m,B=k==="mobile"?"preview-iframe-wrapper preview-iframe-wrapper-mobile":"preview-iframe-wrapper",E=be=>`<div class="${B}" data-mount-id="${be.mountId}" data-device="${k}" data-shell-mode="${be.shellMode}">
|
|
193
|
+
${W?`<div class="preview-frame-meta"><span class="preview-frame-label">${al(be.label)}</span></div>`:""}
|
|
194
|
+
<iframe class="preview-iframe" sandbox="allow-scripts allow-same-origin" data-mount-id="${be.mountId}"></iframe>
|
|
195
|
+
</div>`,z=W?`<div class="preview-compare-grid">${N.map(be=>`<div class="preview-compare-cell">${E(be)}</div>`).join("")}</div>`:`<div class="preview-single">${E(N[0])}</div>`;t.morphContainer?t.morphContainer(n,z):n.innerHTML=z,u();let j=x(),te=0,We=j.length,$e=()=>{var ne,Q,ae,fe,re;if(a||M!==c)return;for(let V of j){let ee=V.dataset.mountId;if(!ee||!V.contentDocument)continue;let Ue=N.find(it=>it.mountId===ee);if(!Ue)continue;let J=()=>{},ie=mn(Ue.config),Le=ie?(()=>{var X;let it=(X=V.contentDocument)==null?void 0:X.getElementById(`preview-content-${ee}`);if(!it)return null;let nt=Dm(it,Ue.config),Me=V.contentDocument.createElement("div");Me.id=ee,Me.style.height="100%",Me.style.display="flex",Me.style.flexDirection="column",Me.style.flex="1",Me.style.minHeight="0",nt.host.appendChild(Me);let de=()=>nt.syncWidgetState(at.getState()),Qe=J;return J=()=>{nt.destroy(),Qe()},Me.__syncDock=de,Me.__hostLayout=nt,Me})():V.contentDocument.getElementById(ee);if(!Le)continue;let at=Wm(Le,Ue.config);if(r.push(at),ie&&Le.__syncDock){let it=Le.__syncDock,nt=at.on("widget:opened",it),Me=at.on("widget:closed",it),de=J;J=()=>{nt(),Me(),de()},it()}o.push(J),C&&at.close()}if(((ne=t.scene)!=null?ne:"conversation")==="artifact"||(fe=(ae=(Q=t.config)==null?void 0:Q.features)==null?void 0:ae.artifacts)!=null&&fe.enabled)for(let V of r)V.upsertArtifact({id:"preview-sample",artifactType:"markdown",title:"Sample Document",content:`# Sample Artifact
|
|
196
196
|
|
|
197
197
|
This is a preview of the artifact sidebar.
|
|
198
198
|
|
|
@@ -200,4 +200,4 @@ This is a preview of the artifact sidebar.
|
|
|
200
200
|
|
|
201
201
|
- Markdown rendering
|
|
202
202
|
- Document toolbar
|
|
203
|
-
- Resizable panes`});(
|
|
203
|
+
- Resizable panes`});(re=t.onAfterMount)==null||re.call(t,{iframes:j,controllers:[...r]})};for(let be of j){let ne=be.dataset.mountId;if(!ne)continue;let Q=N.find(ae=>ae.mountId===ne);Q&&(be.addEventListener("load",()=>{te++,te>=We&&$e()},{once:!0}),be.srcdoc=D(ne,Q.shellMode,mn(Q.config),I))}We===0&&$e()}function T(){var k;if(a)return;let M=Um(t);if(r.length!==M.length){P();return}if(M.some(W=>{let C=n.querySelector(`.preview-iframe-wrapper[data-mount-id="${W.mountId}"]`);return!C||C.dataset.shellMode!==W.shellMode})){P();return}r.forEach((W,C)=>{var I;W.update(M[C].config),((I=t.scene)!=null?I:"conversation")==="minimized"&&W.close()});for(let W of M){let C=n.querySelector(`iframe[data-mount-id="${W.mountId}"]`);C&&_m(C,W.shellMode)}(k=t.onAfterUpdate)==null||k.call(t,{iframes:x(),controllers:[...r]})}return typeof ResizeObserver!="undefined"&&(s=new ResizeObserver(()=>{a||u()}),s.observe(n)),P(),{update(M){if(a)return;let N=M.device!==void 0&&M.device!==t.device||M.scene!==void 0&&M.scene!==t.scene||M.compareMode!==void 0&&M.compareMode!==t.compareMode||M.widgetCssPath!==void 0&&M.widgetCssPath!==t.widgetCssPath;t={...t,...M},N?P():T()},destroy(){a||(a=!0,v(),s==null||s.disconnect(),n.innerHTML="")},getControllers(){return[...r]},fitToContainer(){a||(t={...t,zoom:void 0},u())},getIframes(){return x()},getScale(){return d},setZoom(M){a||(t={...t,zoom:M},u())}}}export{Wv as createThemePreview};
|