@helpai/elements 0.41.1 → 0.42.1
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/elements-web-component.esm.js +2 -2
- package/elements-web-component.esm.js.map +2 -2
- package/elements.cjs.js +2 -2
- package/elements.cjs.js.map +2 -2
- package/elements.esm.js +2 -2
- package/elements.esm.js.map +2 -2
- package/elements.js +2 -2
- package/elements.js.map +2 -2
- package/index.mjs +6 -2
- package/package.json +1 -1
- package/web-component.mjs +6 -2
package/elements.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
`))!==-1;){let l=o.slice(0,s);o=o.slice(s+2);let c=os(l);c&&(yield c)}}}finally{n.releaseLock()}}function os(e){let t="",n;for(let o of e.split(`
|
|
10
10
|
`))if(!(o===""||o.startsWith(":"))){if(o.startsWith("data:")){let i=o.slice(5).replace(/^ /,"");t=t?`${t}
|
|
11
|
-
${i}`:i;continue}o.startsWith("id:")&&(n=o.slice(3).trim())}if(!t||t==="[DONE]")return null;try{let o=JSON.parse(t);return ns.trace("chunk",{type:o.type,eventId:n}),{chunk:o,eventId:n}}catch(o){return ns.trace("frame parse failed",{err:o,payload:t.slice(0,200)}),null}}function d_(e){let t=new TextEncoder().encode(e),n="";for(let o of t)n+=String.fromCharCode(o);return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var rs=e=>e&&Object.keys(e).length>0?e:void 0;function is(e,t){let n=rs(e),o=rs(t);if(!n&&!o)return;let i={};return n&&(i.user=n),o&&(i.page=o),d_(JSON.stringify(i))}function co(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}var Ne={handshake:"/pai/handshake",streamMessage:"/pai/stream-message",streamResume:"/pai/stream-resume",cancelStream:"/pai/cancel-stream",listConversations:"/pai/list-conversations",listMessages:"/pai/list-messages",updateSettings:"/pai/update-settings",markRead:"/pai/mark-read",bootstrap:"/pai/bootstrap",content:"/pai/content",submitForm:"/pai/submit-form"},as="context";function ss(e){let n={messages:e.messages.map(a=>({id:a.id,parts:p_(a),role:a.role,createdAt:a.createdAt!==void 0?new Date(a.createdAt).toISOString():void 0})),conversationId:e.conversationId,trigger:e.trigger??"submit-message"};e.visitorId&&(n.visitorId=e.visitorId),e.userPrefs&&(n.userPrefs=e.userPrefs);let o={},i=e.tools?.map(u_).filter(a=>a!==null);return i?.length&&(o.tools=i),e.responseMode&&(o.responseMode=e.responseMode),Object.keys(o).length>0&&(n.data=o),n}function __(e){return e.state==="output"||e.state==="error"||e.approval?.approved!==void 0}function u_(e){return typeof e=="string"?e?{code:e}:null:e?.code?e:null}function p_(e){let t=[];for(let n of e.parts)if(n.kind==="text"&&n.text&&t.push({text:n.text,type:"text"}),n.kind==="file"&&n.url&&t.push({mediaType:n.mediaType,type:"file",url:n.url}),n.kind==="tool"&&__(n)){let o={type:"tool",toolCallId:n.toolCallId,toolName:n.toolName,state:n.state};n.input!==void 0&&(o.input=n.input),n.output!==void 0&&(o.output=n.output),n.error!==void 0&&(o.errorText=n.error),n.approval&&n.approval.approved!==void 0&&(o.approval=n.approval),t.push(o)}for(let n of e.attachments??[])n.url&&t.push({type:"file",url:n.url,mediaType:n.mediaType,filename:n.name,fileId:n.id,fileSize:n.size});return t}var X=B.scope("transport"),f_=3,_s=400,m_=6e4,ls=1e4,cs=3,g_=new Set([408,425,429,500,502,503,504]);function ds(e){return _s*2**e+Math.floor(Math.random()*250)}function h_(e){let t=e.get("retry-after");if(!t)return null;let n=Number(t),o=Number.isFinite(n)?n*1e3:Date.parse(t)-Date.now();return Number.isFinite(o)&&o>=0?Math.min(o,3e4):null}function Mr(e,t){return new Promise(n=>{if(t?.aborted)return n();let o=setTimeout(a,e),i=()=>a();t?.addEventListener("abort",i,{once:!0});function a(){clearTimeout(o),t?.removeEventListener("abort",i),n()}})}var _o=class{constructor(t){G(this,"opts",t);G(this,"visitorId");G(this,"conversationId");G(this,"userContext");G(this,"pageContext");G(this,"locale");G(this,"conversationsCache",new Map);G(this,"contentCache",new Map)}setContext(t,n){this.userContext=t,this.pageContext=n}setLocale(t){this.locale=t}primeIdentity(t,n){t&&(this.visitorId=t),n&&(this.conversationId=n)}envelope(){let t={};this.visitorId&&(t.visitorId=this.visitorId),this.conversationId&&(t.conversationId=this.conversationId),this.locale&&(t.locale=this.locale);let n=is(this.userContext,this.pageContext);return n&&(t[as]=n),t}withEnvelope(t){return{...this.envelope(),...t}}appendEnvelope(t){for(let[n,o]of Object.entries(this.envelope()))t.append(n,o);return t}withEnvelopeQuery(t){let n=new URL(this.url(t));for(let[o,i]of Object.entries(this.envelope()))n.searchParams.has(o)||n.searchParams.set(o,i);return n.toString()}async handshake(t){X.debug("handshake \u2192",{visitorId:t.visitorId,conversationId:t.conversationId,locale:t.locale});let n=await this.postJson(Ne.handshake,t,"handshake");return X.debug("handshake \u2190",{visitorId:n.visitorId,conversationId:n.conversationId,hasWelcome:!!n.welcome,hasConfig:!!n.config,rebind:n.rebind}),b_(n)||X.warn("handshake response did not match expected shape; using raw response",{response:n}),this.visitorId=n.visitorId??t.visitorId,this.conversationId=n.conversationId,n}async uploadFile(t){X.debug("uploadFile \u2192",{name:t.name,size:t.size,type:t.type});let n=new FormData;n.append("file",t,t.name);let o=await this.postForm(this.uploadPath,n,"upload");return X.debug("uploadFile \u2190",{id:o.id,url:o.url}),o}async transcribe(t,n="audio/webm"){X.debug("transcribe \u2192",{size:t.size,mimeType:n});let o=new FormData;o.append("audio",t,`voice.${v_(n)}`),o.append("mimeType",n);let i=await this.postForm(this.transcribePath,o,"transcribe");return X.debug("transcribe \u2190",{textLen:i.text.length}),i}conversationsKey(t){return JSON.stringify(t,Object.keys(t).toSorted())}peekConversations(t={}){let n=this.conversationsCache.get(this.conversationsKey(t));if(n?.value&&Date.now()-n.at<ls)return n.value}listConversations(t={}){let n=this.conversationsKey(t),o=this.conversationsCache.get(n);if(o&&Date.now()-o.at<ls)return X.debug("listConversations \u2192 cache",t),o.result;let i={at:Date.now(),result:this.fetchConversations(t).then(a=>(i.value=a,a)).catch(a=>{throw this.conversationsCache.delete(n),a})};return this.conversationsCache.set(n,i),i.result}async fetchConversations(t){let n=new URL(this.url(Ne.listConversations));t.visitorId&&n.searchParams.set("visitorId",t.visitorId),t.limit&&n.searchParams.set("limit",String(t.limit)),t.cursor&&n.searchParams.set("cursor",t.cursor),X.debug("listConversations \u2192",{visitorId:t.visitorId??this.visitorId,limit:t.limit,cursor:t.cursor});let o=await this.getJson(n.toString(),"listConversations"),i=o.conversations??[];return X.debug("listConversations \u2190",{count:i.length,nextCursor:o.nextCursor}),{conversations:i.map(a=>({conversationId:a.conversationId,title:a.title,lastMessageAt:a.lastMessageAt,preview:a.preview,canContinue:a.canContinue,unreadCount:a.unreadCount})),nextCursor:o.nextCursor}}async loadConversation(t){let n=new URL(this.url(Ne.listMessages));n.searchParams.set("conversationId",t),X.debug("loadConversation \u2192",{conversationId:t,visitorId:this.visitorId});let o=await this.getJson(n.toString(),"loadConversation"),i=o.messages??[];return X.debug("loadConversation \u2190",{conversationId:o.conversationId,canContinue:o.canContinue,messageCount:i.length,hasSuggestions:!!o.suggestions}),{conversationId:o.conversationId,canContinue:o.canContinue??!0,messages:i,agent:o.agent,suggestions:o.suggestions}}async markRead(t){if(!(!this.visitorId||!t)){this.conversationsCache.clear(),X.debug("markRead \u2192",{conversationId:t,visitorId:this.visitorId});try{await this.postJson(Ne.markRead,{conversationId:t},"markRead")}catch(n){X.debug("markRead failed (non-fatal)",{err:n})}}}listContent(t={}){let n=`${this.locale??""}|${JSON.stringify(t,Object.keys(t).toSorted())}`,o=this.contentCache.get(n);if(o&&Date.now()-o.at<m_)return X.debug("listContent \u2192 cache",t),o.result;let i=this.fetchContent(t).catch(a=>{throw this.contentCache.delete(n),a});return this.contentCache.set(n,{at:Date.now(),result:i}),i}async fetchContent(t){let n=new URL(this.dataUrl(Ne.content));for(let[a,s]of Object.entries(t))s!==void 0&&n.searchParams.set(a,Array.isArray(s)?s.join(","):String(s));X.debug("listContent \u2192",t);let o=await this.getJson(n.toString(),"listContent"),i=(o.items??[]).map(a=>Mi(a,this.locale));return X.debug("listContent \u2190",{count:i.length,total:o.pagination?.total}),{...o,items:i}}async bootstrap(t){let n=new URL(this.dataUrl(Ne.bootstrap));t&&n.searchParams.set("conversationId",t),X.debug("bootstrap \u2192",{conversationId:t??this.conversationId});let o=await this.getJson(n.toString(),"bootstrap"),i=o.forms??[],a=o.formSubmissions??[];return X.debug("bootstrap \u2190",{forms:i.length,formSubmissions:a.length}),{forms:i,formSubmissions:a}}async saveUserPrefs(t){X.debug("saveUserPrefs \u2192",{visitorId:this.visitorId,conversationId:this.conversationId,settingsKeys:Object.keys(t)});let n=await this.postJson(Ne.updateSettings,{userPrefs:t},"saveUserPrefs");return X.debug("saveUserPrefs \u2190",{ok:n.ok}),n}get uploadPath(){return this.opts.endpoints?.upload??"/pai/upload-file"}get transcribePath(){return this.opts.endpoints?.transcribe??"/pai/transcribe-audio"}get submitFormPath(){return this.opts.endpoints?.submitForm??Ne.submitForm}async submitForm(t){X.debug("submitForm \u2192",{formId:t.formId,trigger:t.trigger,fields:Object.keys(t.values).length});try{await this.postJson(this.dataUrl(this.submitFormPath),t,"submitForm")}catch(n){X.debug("submitForm failed (non-fatal)",{err:n})}}sendMessage(t){this.conversationsCache.clear(),X.debug("message \u2192",{conversationId:t.conversationId,visitorId:t.visitorId,messageCount:t.messages.length,trigger:t.trigger,responseMode:t.data?.responseMode,tools:t.data?.tools?.map(s=>s.code)});let n=new AbortController,o=new Set;return{iter:this.runStream(t,n,o),cancel:()=>this.cancelStream(n,t.conversationId)}}resumeStream(){let t=new AbortController,n=new Set;return{iter:this.resumeStreamGen(t,n,!0),cancel:()=>t.abort()}}async*runStream(t,n,o){(yield*this.drain(this.openMessageStream(t,n.signal),o,n))||(yield*this.resumeStreamGen(n,o,!1))}async*resumeStreamGen(t,n,o){for(let i=1;i<=f_&&!t.signal.aborted;i++){if((!o||i>1)&&(await Mr(_s*i,t.signal),t.signal.aborted))return;let a;try{a=await this.fetchImpl(this.resumeUrl(n.size),{method:"GET",credentials:"omit",headers:{accept:"text/event-stream",...this.opts.auth.headers()},signal:t.signal})}catch(l){if(t.signal.aborted)return;X.debug("resume fetch failed \u2014 retrying",{attempt:i,err:l});continue}if(a.status===204||!a.ok){X.debug("resume \u2192 no in-flight stream",{status:a.status});return}let s=n.size;if(yield*this.drain(Lr(a,t.signal),n,t))return;if(n.size===s){X.debug("resume \u2192 stream closed with no new events; nothing to resume");return}}if(!t.signal.aborted)throw new Me("stream incomplete after resume attempts","server")}async*drain(t,n,o){try{for await(let i of t){if(o.signal.aborted)return!0;if(i.eventId){if(n.has(i.eventId))continue;n.add(i.eventId)}if(yield i,i.chunk.type==="finish"||i.chunk.type==="error")return!0}}catch(i){if(o.signal.aborted)return!0;if(i instanceof Me&&i.status!==void 0)throw i;X.debug("stream segment dropped",{err:i})}return!1}cancelStream(t,n){t.signal.aborted||(X.debug("cancel stream",{conversationId:n,visitorId:this.visitorId}),t.abort(),!(!this.visitorId||!n)&&this.fetchImpl(this.url(Ne.cancelStream),{method:"POST",credentials:"omit",headers:{"content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({})),keepalive:!0}).catch(o=>X.debug("cancel POST failed (non-fatal)",{err:o})))}async*openMessageStream(t,n){let o=await this.fetchImpl(this.url(Ne.streamMessage),{method:"POST",credentials:"omit",headers:{accept:"text/event-stream","content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(t)),signal:n});yield*Lr(o,n)}resumeUrl(t){let n=new URL(this.withEnvelopeQuery(Ne.streamResume));return n.searchParams.set("resumeAt",String(t)),n.toString()}async postJson(t,n,o){let i=await this.fetchWithRetry(()=>[this.url(t),{method:"POST",credentials:"omit",headers:{"content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(n))}],o);return this.assertOk(i,o)}async postForm(t,n,o){let i=await this.fetchImpl(this.url(t),{method:"POST",credentials:"omit",headers:this.opts.auth.headers(),body:this.appendEnvelope(n)});return this.assertOk(i,o)}async getJson(t,n){let o=await this.fetchWithRetry(()=>[this.withEnvelopeQuery(t),{method:"GET",credentials:"omit",headers:{accept:"application/json",...this.opts.auth.headers()}}],n);return this.assertOk(o,n)}async fetchWithRetry(t,n){for(let o=0;;o++){let[i,a]=t(),s;try{s=await this.fetchImpl(i,a)}catch(c){if(o>=cs)throw new Me(`${n} failed: network error`,"network",void 0,c);X.debug("request network error \u2014 retrying",{label:n,attempt:o}),await Mr(ds(o));continue}if(s.ok||!g_.has(s.status)||o>=cs)return s;let l=h_(s.headers)??ds(o);X.debug("request retryable status \u2014 retrying",{label:n,status:s.status,attempt:o,wait:l}),await Mr(l)}}async assertOk(t,n){if(!t.ok)throw new Me(`${n} failed: ${t.status}`,"server",t.status);return await t.json()}url(t){return/^https?:\/\//i.test(t)?t:`${this.opts.agentApiBaseUrl}${t}`}dataUrl(t){return/^https?:\/\//i.test(t)?t:`${this.opts.dataApiBaseUrl}${t}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function v_(e){return e.includes("webm")?"webm":e.includes("ogg")?"ogg":e.includes("mp4")||e.includes("m4a")?"m4a":e.includes("mpeg")?"mp3":e.includes("wav")?"wav":"bin"}function b_(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.visitorId=="string"&&typeof t.conversationId=="string"}function us(e,t){let n=e?[{kind:"text",id:"t0",textSig:H(e),doneSig:H(!0)}]:[];return{id:$e(),role:"user",createdAt:Date.now(),status:"complete",attachments:t,partsSig:H(n)}}function uo(){return{id:$e(),role:"assistant",createdAt:Date.now(),status:"streaming",partsSig:H([])}}function ps(e){return x_({id:e.id,role:e.role,createdAt:Date.now(),status:"complete",parts:[{kind:"text",id:`${e.id}-t0`,text:e.text,done:!0}]})}function x_(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,errorText:e.errorText,finishReason:e.finishReason,attachments:e.attachments,partsSig:H(e.parts.map(P_))}}function Nr(e){let t=e.parts.map((n,o)=>n.type==="text"?{kind:"text",id:`${e.id}-t${o}`,textSig:H(n.text),doneSig:H(!0)}:n.type==="file"?{kind:"file",url:n.url,mediaType:n.mediaType}:n.type==="tool"?{kind:"tool",toolCallId:n.toolCallId,toolName:n.toolName,inputPartialSig:H(""),inputSig:H(n.input),outputSig:H(n.output),errorSig:H(n.errorText),stateSig:H(n.state),approvalSig:H(n.approval)}:null).filter(n=>n!==null);return{id:e.id,role:e.role,createdAt:co(e.createdAt)??Date.now(),status:"complete",partsSig:H(t)}}function fs(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,errorText:e.errorText,finishReason:e.finishReason,attachments:e.attachments,parts:e.partsSig.value.map(y_)}}function Dr(e){let t="";for(let n of e.partsSig.value)n.kind==="text"&&(t+=n.textSig.value);return t}function P_(e){return e.kind==="text"||e.kind==="reasoning"?{kind:e.kind,id:e.id,textSig:H(e.text),doneSig:H(e.done)}:e.kind==="tool"?{kind:"tool",toolCallId:e.toolCallId,toolName:e.toolName,inputPartialSig:H(e.inputPartial),inputSig:H(e.input),outputSig:H(e.output),errorSig:H(e.error),stateSig:H(e.state),approvalSig:H(e.approval)}:e}function y_(e){return e.kind==="text"||e.kind==="reasoning"?{kind:e.kind,id:e.id,text:e.textSig.value,done:e.doneSig.value}:e.kind==="tool"?{kind:"tool",toolCallId:e.toolCallId,toolName:e.toolName,inputPartial:e.inputPartialSig.value,input:e.inputSig.value,output:e.outputSig.value,error:e.errorSig.value,state:e.stateSig.value,approval:e.approvalSig.value}:e}function po(e){if(!e)return!1;let t=e.startsWith("tool:")?e.slice(5):e;return t==="ask-user-input"||t==="ask_user_input"||t==="request-user-input"||t==="request_user_input"}var fo={submitMessage:"submit-message",toolResult:"tool-result",toolApproval:"tool-approval"};var ms=B.scope("reducer"),mo=class{constructor(t){G(this,"messagesSig",t);G(this,"active",null)}attach(t){this.active=t}detach(){this.active=null}apply(t){let n=this.active;if(n)switch(t.type){case"start":case"start-step":case"finish-step":return;case"finish":ms.debug("finish",{reason:t.finishReason,canContinue:t.canContinue}),n.status="complete",t.finishReason&&(n.finishReason=t.finishReason),this.bumpDone(n);return;case"error":ms.warn("stream error chunk",{errorText:t.errorText}),n.status="error",n.errorText=t.errorText,this.bumpDone(n);return;case"text-start":Mt(n,"text",t.id);return;case"text-delta":{let o=Mt(n,"text",t.id);o.textSig.value+=t.delta;return}case"text-end":Mt(n,"text",t.id).doneSig.value=!0;return;case"reasoning-start":Mt(n,"reasoning",t.id).doneSig.value=!1;return;case"reasoning-delta":{let o=Mt(n,"reasoning",t.id);o.textSig.value+=t.delta;return}case"reasoning-end":Mt(n,"reasoning",t.id).doneSig.value=!0;return;case"tool-input-start":case"tool-input-delta":case"tool-input-available":case"tool-output-available":case"tool-output-error":case"tool-approval-request":S_(n,t);return;case"file":go(n,{kind:"file",url:t.url,mediaType:t.mediaType});return;case"source-url":{if(n.partsSig.value.some(i=>i.kind==="source"&&i.sourceId===t.sourceId))return;go(n,{kind:"source",sourceId:t.sourceId,url:t.url,title:t.title});return}case"data-notification":return;default:{let o=t}}}bumpDone(t){t.partsSig.value=[...t.partsSig.value],this.messagesSig.value=[...this.messagesSig.value]}};function Mt(e,t,n){let o=e.partsSig.value.find(a=>a.kind===t&&a.id===n);if(o)return o;let i={kind:t,id:n,textSig:H(""),doneSig:H(!1)};return go(e,i),i}function Nt(e,t,n){let o=e.partsSig.value.find(a=>a.kind==="tool"&&a.toolCallId===t);if(o)return o;let i={kind:"tool",toolCallId:t,toolName:n??"tool",inputPartialSig:H(""),inputSig:H(void 0),outputSig:H(void 0),errorSig:H(void 0),stateSig:H("input"),approvalSig:H(void 0)};return go(e,i),i}function go(e,t){e.partsSig.value=[...e.partsSig.value,t]}function S_(e,t){switch(t.type){case"tool-input-start":Nt(e,t.toolCallId,t.toolName);return;case"tool-input-delta":{let n=Nt(e,t.toolCallId);n.inputPartialSig.value+=t.delta;return}case"tool-input-available":{let n=Nt(e,t.toolCallId,t.toolName);n.inputSig.value=t.input,n.stateSig.value=po(n.toolName)?"awaiting-input":"awaiting";return}case"tool-approval-request":{let n=Nt(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value="awaiting-approval";return}case"tool-output-available":{let n=Nt(e,t.toolCallId);n.outputSig.value=t.output,n.stateSig.value="output";return}case"tool-output-error":{let n=Nt(e,t.toolCallId);n.errorSig.value=t.errorText,n.stateSig.value="error";return}default:return}}var gs=B.scope("feedback:audio"),ho=class{constructor(){G(this,"ctx",null);G(this,"master",null);G(this,"buffers",new Map)}unlock(){if(this.ctx){this.ctx.state==="suspended"&&this.ctx.resume();return}let t=globalThis.AudioContext??globalThis.webkitAudioContext;if(t)try{this.ctx=new t,this.master=this.ctx.createGain(),this.master.gain.value=1,this.master.connect(this.ctx.destination)}catch(n){gs.warn("AudioContext init failed",{err:n})}}setVolume(t){if(!this.master||!this.ctx)return;let n=Math.max(0,Math.min(1,t));this.master.gain.setTargetAtTime(n,this.ctx.currentTime,.01)}playTone(t){let n=this.ctx,o=this.master;if(!n||!o||n.state!=="running")return;let i=n.currentTime,a=t.noteMs/1e3;t.notes.forEach((s,l)=>{let c=n.createOscillator();c.type=t.type,c.frequency.value=s;let d=n.createGain(),u=i+l*a;d.gain.setValueAtTime(1e-4,u),d.gain.exponentialRampToValueAtTime(t.peakGain,u+.005),d.gain.exponentialRampToValueAtTime(1e-4,u+a),c.connect(d).connect(o),c.start(u),c.stop(u+a+.01)})}async playUrl(t){let n=this.ctx,o=this.master;if(!n||!o||n.state!=="running")return;let i=await this.getBuffer(t);if(!i)return;let a=n.createBufferSource();a.buffer=i,a.connect(o),a.start()}destroy(){this.ctx&&this.ctx.close().catch(()=>{}),this.ctx=null,this.master=null,this.buffers.clear()}async getBuffer(t){if(!this.ctx)return null;let n=this.buffers.get(t);if(n)return n instanceof Promise,n;let o=this.ctx,i=fetch(t).then(a=>a.ok?a.arrayBuffer():Promise.reject(new Error(`fetch ${a.status}`))).then(a=>o.decodeAudioData(a)).then(a=>(this.buffers.set(t,a),a)).catch(a=>(gs.warn("audio fetch/decode failed",{url:t,err:a}),this.buffers.delete(t),null));return this.buffers.set(t,i),i}};var hs={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},vs={messageReceived:{notes:[880,1318.51],noteMs:90,type:"sine",peakGain:.45},messageSent:{notes:[1568],noteMs:60,type:"sine",peakGain:.25},error:{notes:[523.25,392],noteMs:120,type:"triangle",peakGain:.55},voiceStart:{notes:[1318.51],noteMs:50,type:"sine",peakGain:.3},voiceStop:{notes:[880],noteMs:50,type:"sine",peakGain:.3}};var ot=null,vo=0;function k_(){return typeof navigator<"u"&&typeof navigator.vibrate=="function"}function w_(){if(typeof document>"u")return null;let e=document.createElement("input");e.type="checkbox",e.setAttribute("switch",""),e.setAttribute("aria-hidden","true"),e.tabIndex=-1,e.id=`__${x.cssPrefix}_haptic_${Math.random().toString(36).slice(2)}`;let t=document.createElement("label");t.htmlFor=e.id,t.setAttribute("aria-hidden","true");let n="position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;opacity:0!important;pointer-events:none!important;";return e.style.cssText=n,t.style.cssText=n,document.body.append(e,t),{input:e,label:t}}function bs(e){if(!(e===0||Array.isArray(e)&&e.every(t=>t===0))){if(k_())try{navigator.vibrate(e);return}catch{}if(ot||(ot=w_()),!!ot)try{ot.label.click()}catch{}}}function xs(){vo++;let e=!1;return()=>{e||(e=!0,vo=Math.max(0,vo-1),vo===0&&ot&&(ot.input.remove(),ot.label.remove(),ot=null))}}var C_=B.scope("feedback"),T_=100,bo=class{constructor(t,n){G(this,"mutedSig",H(!1));G(this,"audio",new ho);G(this,"releaseHaptics");G(this,"sound");G(this,"haptics");G(this,"lastPlayed",new Map);G(this,"reducedMotionMq",null);this.sound=t,this.haptics=n,this.releaseHaptics=xs(),this.audio.setVolume(this.effectiveVolume()),typeof matchMedia<"u"&&(this.reducedMotionMq=matchMedia("(prefers-reduced-motion: reduce)"))}unlock(){this.audio.unlock(),this.audio.setVolume(this.effectiveVolume())}update(t,n){this.sound=t,this.haptics=n,this.audio.setVolume(this.effectiveVolume())}setMuted(t){this.mutedSig.value!==t&&(this.mutedSig.value=t)}toggleMuted(){this.mutedSig.value=!this.mutedSig.value}play(t){this.mutedSig.value||this.isDeduped(t)||(this.lastPlayed.set(t,performance.now()),this.sound.enabled&&this.playSound(t),this.haptics.enabled&&this.isTouchDevice()&&this.playHaptic(t))}destroy(){this.audio.destroy(),this.releaseHaptics()}isDeduped(t){let n=this.lastPlayed.get(t);return n===void 0?!1:performance.now()-n<T_}playSound(t){let n=this.sound.events?.[t];if(n===!1)return;if(typeof n=="string"){this.audio.playUrl(n).catch(i=>C_.warn("audio play failed",{err:i,url:n}));return}let o=vs[t];o&&this.audio.playTone(o)}playHaptic(t){if(this.reducedMotionMq?.matches)return;let n=this.haptics.events?.[t];if(n===!1)return;let o=n===!0||n===void 0?hs[t]:n;bs(o)}effectiveVolume(){let t=this.sound.volume??.3;return this.reducedMotionMq?.matches?t*.5:t}isTouchDevice(){return typeof window>"u"?!1:matchMedia("(hover: none) and (pointer: coarse)").matches}};function ut(e,t){return e instanceof Me&&e.status===429?t.errorRateLimited:t.errorGeneric}var E_=0;function r(e,t,n,o,i,a){t||(t={});var s,l,c=t;if("ref"in c)for(l in c={},t)l=="ref"?s=t[l]:c[l]=t[l];var d={type:e,props:c,key:n,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--E_,__i:-1,__u:0,__source:i,__self:a};if(typeof e=="function"&&(s=e.defaultProps))for(l in s)c[l]===void 0&&(c[l]=s[l]);return j.vnode&&j.vnode(d),d}var O={fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,viewBox:"0 0 24 24"},sn=`${x.cssPrefix}-icon-dir`,I_=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M21 12a8 8 0 0 1-12 6.93L3 21l1.65-5.16A8 8 0 1 1 21 12Z"})}),Fe=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M18 6 6 18M6 6l12 12"})}),Ps=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M12 5v14M5 12h14"})}),ys=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:[r("path",{d:"m22 2-7 20-4-9-9-4Z"}),r("path",{d:"M22 2 11 13"})]}),Ss=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M12 19V5M5 12l7-7 7 7"})}),ks=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"M3 20V4l18 8-18 8Z"})}),Dt=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"m9 18 6-6-6-6"})}),ws=()=>r("svg",{...O,"aria-hidden":"true",children:r("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})}),Cs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"m21 11-9 9a5.5 5.5 0 0 1-7.78-7.78l8.49-8.49a3.67 3.67 0 0 1 5.19 5.19l-8.49 8.49a1.83 1.83 0 0 1-2.6-2.6l7.78-7.78"})}),Ts=()=>r("svg",{...O,"aria-hidden":"true",children:[r("rect",{x:"9",y:"2",width:"6",height:"12",rx:"3"}),r("path",{d:"M5 10a7 7 0 0 0 14 0M12 19v3"})]}),Es=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5"})}),Is=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5"})}),As=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z"})}),Rs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7"})}),Ls=()=>r("svg",{...O,"aria-hidden":"true",viewBox:"0 0 10 10",children:r("path",{d:"M9 1L1 9M9 5L5 9M9 9H9",strokeWidth:"1.5"})}),Ms=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"5",r:"1.5",fill:"currentColor",stroke:"none"}),r("circle",{cx:"12",cy:"12",r:"1.5",fill:"currentColor",stroke:"none"}),r("circle",{cx:"12",cy:"19",r:"1.5",fill:"currentColor",stroke:"none"})]}),Ns=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M11 5 6 9H2v6h4l5 4zM15 9a5 5 0 0 1 0 6M18 7a9 9 0 0 1 0 10"})}),Ds=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6"})}),Os=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M3 18 8 6l5 12M4.7 14h6.6"}),r("path",{d:"M14.5 18l3.2-7 3.2 7M15.6 15.8h4.2"})]}),$s=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"m5 6 6 6-6 6M13 6l6 6-6 6"})}),ln=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M20 6 9 17l-5-5"})}),Hs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M3 3v6h6"}),r("path",{d:"M3.05 13A9 9 0 1 0 6 5.3L3 9"}),r("path",{d:"M12 7v5l3 2"})]}),Fs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"10"}),r("path",{d:"M2 12h20"}),r("path",{d:"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"})]}),cn=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"M19 12H5M12 19l-7-7 7-7"})}),Bs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M12 20h9"}),r("path",{d:"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z"})]}),zs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"m6 9 6 6 6-6"})}),Us=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),r("path",{d:"M14 2v6h6"})]}),A_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"m12 3-1.5 4.5L6 9l4.5 1.5L12 15l1.5-4.5L18 9l-4.5-1.5Z"}),r("path",{d:"M19 15v4M17 17h4M5 3v2M4 4h2"})]}),Or=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z"})}),$r=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"10"}),r("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"}),r("path",{d:"M12 17h.01"})]}),R_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"m15 4 3 3-9 9-3-3z"}),r("path",{d:"M18 2v2M20 4h2M3 20l3-3M3 16h2M5 14v2"})]}),L_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("rect",{x:"4",y:"8",width:"16",height:"12",rx:"2"}),r("path",{d:"M12 8V4"}),r("circle",{cx:"12",cy:"3",r:"1"}),r("path",{d:"M2 14h2M20 14h2M9 13h.01M15 13h.01M9.5 17h5"})]}),M_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M4 14v-2a8 8 0 0 1 16 0v2"}),r("rect",{x:"2",y:"14",width:"4",height:"6",rx:"1.5"}),r("rect",{x:"18",y:"14",width:"4",height:"6",rx:"1.5"}),r("path",{d:"M20 20v1a3 3 0 0 1-3 3h-5"})]}),N_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"10"}),r("circle",{cx:"12",cy:"12",r:"4"}),r("path",{d:"m4.93 4.93 4.24 4.24M14.83 14.83l4.24 4.24M14.83 9.17l4.24-4.24M4.93 19.07l4.24-4.24"})]}),Hr=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"11",cy:"11",r:"7"}),r("path",{d:"m21 21-4.3-4.3"})]}),Ws=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"9"}),r("path",{d:"m8.5 12 2.5 2.5 4.5-5"})]}),Gs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M3 9.5 12 3l9 6.5"}),r("path",{d:"M5 9v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9"})]}),Vs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"m3 11 15-5v12L3 13z"}),r("path",{d:"M3 11v2a2 2 0 0 0 2 2h1V9H5a2 2 0 0 0-2 2z"}),r("path",{d:"M7 15v3a2 2 0 0 0 4 0v-2"}),r("path",{d:"M21 10a3 3 0 0 1 0 4"})]}),dn=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z"}),r("path",{d:"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"})]}),Ks=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"4"}),r("path",{d:"M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41"})]}),qs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})}),js=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"9"}),r("path",{d:"M12 3v18"}),r("path",{d:"M12 3a9 9 0 0 1 0 18z",fill:"currentColor",stroke:"none"})]}),D_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"10.5",cy:"10.5",r:"6.5"}),r("path",{d:"M8 11a2.5 2.5 0 0 0 5 0"}),r("path",{d:"m20 20-4.4-4.4"})]}),O_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M12 3.5 13.6 9 19 10.5 13.6 12 12 17.5 10.4 12 5 10.5 10.4 9z"}),r("path",{d:"M18.5 4v3M20 5.5h-3M5.5 16v2.5M6.75 17.25h-2.5"})]}),$_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M4 18h16"}),r("path",{d:"M5 18a7 7 0 0 1 14 0"}),r("path",{d:"M12 8V6"}),r("path",{d:"M10 6h4"})]}),H_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M7 11V6.5a1.5 1.5 0 0 1 3 0V10"}),r("path",{d:"M10 10V5.5a1.5 1.5 0 0 1 3 0V10"}),r("path",{d:"M13 10V6.5a1.5 1.5 0 0 1 3 0V12"}),r("path",{d:"M16 9.5a1.5 1.5 0 0 1 3 0v2.5a7 7 0 0 1-7 7 7 7 0 0 1-6.4-4.2L4 12.5a1.5 1.5 0 0 1 2.6-1.5L7 11"})]}),Xs={chat:I_,message:Or,bubbles:dn,spark:A_,wand:R_,bot:L_,help:$r,lifebuoy:N_,headset:M_,search:D_,sparkles:O_,concierge:$_,wave:H_};var A=x.cssPrefix,S={launcher:`${A}-launcher`,callout:`${A}-callout`,calloutDismiss:`${A}-callout-dismiss`,panel:`${A}-panel`,panelHeader:`${A}-panel-header`,resizeGrip:`${A}-resize-grip`,scrollToBottom:`${A}-scroll-to-bottom`,actionHistory:`${A}-action-history`,actionClose:`${A}-action-close`,langSegment:`${A}-lang-segment`,composer:`${A}-composer`,composerInput:`${A}-composer-input`,composerSend:`${A}-composer-send`,composerStop:`${A}-composer-stop`,composerAttach:`${A}-composer-attach`,composerFileInput:`${A}-composer-file-input`,composerVoice:`${A}-composer-voice`,attachmentChip:`${A}-attachment-chip`,attachmentRemove:`${A}-attachment-remove`,suggestion:`${A}-suggestion`,messageBubble:`${A}-message`,messageRetry:`${A}-message-retry`,historyPane:`${A}-history-pane`,historyBack:`${A}-history-back`,historyItem:`${A}-history-item`,sidebar:`${A}-sidebar`,sidebarToggle:`${A}-sidebar-toggle`,sidebarNewConversation:`${A}-sidebar-new-conversation`,sidebarItem:`${A}-sidebar-item`,messengerHome:`${A}-messenger-home`,modulesEmpty:`${A}-modules-empty`,tab:`${A}-tab`,tabBadge:`${A}-tab-badge`,homeView:`${A}-home-view`,homeGreeting:`${A}-home-greeting`,homeBrand:`${A}-home-brand`,backHeader:`${A}-back-header`,contentView:`${A}-content-view`,contentScroll:`${A}-content-scroll`,homeSearch:`${A}-home-search`,helpSearch:`${A}-help-search`,homeRecent:`${A}-home-recent`,homeContentRow:`${A}-home-content-row`,helpArticle:`${A}-help-article`,newsItem:`${A}-news-item`,formGate:`${A}-form-gate`,formDone:`${A}-form-done`,formDoneToggle:`${A}-form-done-toggle`,formAnswers:`${A}-form-answers`,formFill:`${A}-form-fill`,formSubmit:`${A}-form-submit`,formSkip:`${A}-form-skip`,formField:`${A}-form-field`,toolAskInput:`${A}-tool-ask-input`,toolInputSubmit:`${A}-tool-input-submit`,toolInputSkip:`${A}-tool-input-skip`,toolApproval:`${A}-tool-approval`,toolApprove:`${A}-tool-approve`,toolReject:`${A}-tool-reject`,toolDecision:`${A}-tool-decision`};function he(e,t){return`${e}-${t}`}var xo=x.cssPrefix;function Js({onToggle:e,launcher:t,strings:n,leaving:o,edgeTab:i}){let a=t.variant!=="circle"&&!!t.label;return r("button",{type:"button",class:`${xo}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?"true":void 0,"data-leaving":o?"true":void 0,"data-testid":S.launcher,onClick:e,"aria-label":n.launcherOpen,children:[F_(t.icon),a?r("span",{class:`${xo}-fab-label`,children:be(n,t.label??"")}):null]})}function F_(e){let t=Xs[e];return t?r(t,{}):r(B_,{source:e})}function B_({source:e}){return r("span",{ref:t=>{t&&z_(t,e)},"aria-hidden":"true"})}function z_(e,t){if(e.dataset.svgMounted!==t)try{let o=new DOMParser().parseFromString(t,"image/svg+xml").documentElement;o&&o.tagName.toLowerCase()==="svg"&&(e.replaceChildren(document.importNode(o,!0)),e.dataset.svgMounted=t)}catch{}}function Ys({callout:e,launcherPosition:t,strings:n,closeLabel:o,onDismiss:i}){let[a,s]=T(!1);return w(()=>{let l=setTimeout(()=>s(!0),e.delayMs);return()=>clearTimeout(l)},[e.delayMs]),w(()=>{if(!a||e.autoDismissMs<=0)return;let l=setTimeout(i,e.autoDismissMs);return()=>clearTimeout(l)},[a,e.autoDismissMs,i]),a?r("div",{class:`${xo}-callout`,role:"status","data-shape":e.shape,"data-position":U_(e.position,t),"data-animated":e.animated?"true":void 0,"data-testid":S.callout,children:[r("span",{children:be(n,e.text)}),r("button",{type:"button",class:`${xo}-callout-close`,onClick:i,"aria-label":o,title:o,"data-testid":S.calloutDismiss,children:r(Fe,{})})]}):null}function U_(e,t){let n=t.endsWith("-right"),o=t.startsWith("bottom-");return e==="vertical"?o?"top":"bottom":n?"left":"right"}function Po({panelEl:e,resize:t,position:n,initialSize:o,onSizeChange:i,strings:a}){let s=x.cssPrefix,l=M(null);if(w(()=>{if(!e)return;let f=e.style;t.minWidth&&f.setProperty(`--${s}-resize-min-w`,t.minWidth),t.maxWidth&&f.setProperty(`--${s}-resize-max-w`,t.maxWidth),t.minHeight&&f.setProperty(`--${s}-resize-min-h`,t.minHeight),t.maxHeight&&f.setProperty(`--${s}-resize-max-h`,t.maxHeight),o&&(f.setProperty(`--${s}-widget-w`,`${o.width}px`),f.setProperty(`--${s}-widget-h`,`${o.height}px`))},[e,t.minWidth,t.maxWidth,t.minHeight,t.maxHeight,s,o]),!e)return null;let c=n.startsWith("top-"),d=n.endsWith("-right"),u=`${s}-resize-grip ${s}-resize-grip--${c?"bottom":"top"}-${d?"left":"right"}`,_=f=>{if(!e)return;let v=f.currentTarget,h=e.getBoundingClientRect();l.current={pointerId:f.pointerId,startX:f.clientX,startY:f.clientY,startW:h.width,startH:h.height,dirX:d?-1:1,dirY:c?1:-1},v.setPointerCapture(f.pointerId),e.setAttribute("data-resizing",""),f.preventDefault()},m=f=>{let v=l.current;if(!v||f.pointerId!==v.pointerId||!e)return;let h=(f.clientX-v.startX)*v.dirX,I=(f.clientY-v.startY)*v.dirY;e.style.setProperty(`--${s}-widget-w`,`${v.startW+h}px`),e.style.setProperty(`--${s}-widget-h`,`${v.startH+I}px`)},g=f=>{let v=l.current;if(!v||f.pointerId!==v.pointerId||!e)return;f.currentTarget.releasePointerCapture(f.pointerId),e.removeAttribute("data-resizing");let h=e.getBoundingClientRect();i({width:Math.round(h.width),height:Math.round(h.height)}),l.current=null};return r("div",{class:u,role:"separator","aria-orientation":"vertical","aria-label":a.resizeHandle,title:a.resizeHandle,onPointerDown:_,onPointerMove:m,onPointerUp:g,onPointerCancel:g,"data-testid":S.resizeGrip,children:r(Ls,{})})}var pt=x.cssPrefix,W_=`.${pt}-header, .${pt}-back-header, .${pt}-home-hero`,G_='button, a, input, textarea, select, [role="tab"], [contenteditable]',Qs=56;function yo(e,t){w(()=>{if(!t||!e)return;let n=c=>Number.parseFloat(c)||0,o=(c,d)=>Math.min(d,Math.max(-d,c)),i=null,a=c=>{let d=c.target;if(!(d instanceof Element)||!d.closest(W_)||d.closest(G_))return;let u=e.getBoundingClientRect();i={id:c.pointerId,x:c.clientX,y:c.clientY,dx:n(e.style.getPropertyValue(`--${pt}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${pt}-modal-dy`)),maxX:(window.innerWidth+u.width)/2-Qs,maxY:(window.innerHeight+u.height)/2-Qs},e.dataset.dragging="true",c.preventDefault()},s=c=>{if(!i||c.pointerId!==i.id)return;let d=o(i.dx+c.clientX-i.x,i.maxX),u=o(i.dy+c.clientY-i.y,i.maxY);e.style.setProperty(`--${pt}-modal-dx`,`${d}px`),e.style.setProperty(`--${pt}-modal-dy`,`${u}px`)},l=c=>{!i||c.pointerId!==i.id||(i=null,delete e.dataset.dragging)};return e.addEventListener("pointerdown",a),window.addEventListener("pointermove",s),window.addEventListener("pointerup",l),window.addEventListener("pointercancel",l),()=>{e.removeEventListener("pointerdown",a),window.removeEventListener("pointermove",s),window.removeEventListener("pointerup",l),window.removeEventListener("pointercancel",l)}},[e,t])}function _n(e,t,n){switch(e){case"clear":case"sound":case"history":case"language":case"theme":case"textSize":return!0;case"expand":return t==="floating";case"fullscreen":return t!=="standalone";case"close":return t==="standalone"||t==="page"?!1:t==="inline"?n==="fullscreen":!0}}function So(e,t,n){return _n("close",e,t)?n.includes("close"):!1}function Zs(e,t){return e==="inline"&&t==="fullscreen"?"exit-fullscreen":"close"}var V_='a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])';function ko(e){let t=n=>{if(n.key!=="Tab")return;let o=[...e.querySelectorAll(V_)].filter(l=>l.offsetParent!==null||l===document.activeElement);if(o.length===0){n.preventDefault();return}let i=o[0],a=o[o.length-1];if(!i||!a)return;let s=e.getRootNode().activeElement;n.shiftKey&&s===i?(n.preventDefault(),a.focus()):!n.shiftKey&&s===a&&(n.preventDefault(),i.focus())};return e.addEventListener("keydown",t),()=>e.removeEventListener("keydown",t)}function wo(e){return e.trim().split(/\s+/).slice(0,2).map(t=>t.charAt(0).toUpperCase()).join("")}var Fr=x.cssPrefix;function el({agent:e,strings:t}){let n=e.status??"online",o=be(t,e.name),i=e.title?be(t,e.title):null;return r("div",{class:`${Fr}-agent`,children:[r("div",{class:`${Fr}-agent-avatar`,"data-status":n,children:e.avatar?r("img",{src:e.avatar,alt:""}):r("span",{children:wo(o)})}),r("div",{class:`${Fr}-agent-meta`,children:[r("strong",{children:o}),i?r("span",{children:i}):null]})]})}var tl=B.scope("attachments");function Co(e,t,n){let o=q_(e),i=[],a=[],s=J_(n.accept),l=t.reduce((d,u)=>d+u.size,0),c=t.length;for(let d of o){let u=K_(d,c,l,n,s);if(u){a.push({file:d,reason:u});continue}i.push(X_(d)),l+=d.size,c+=1}return(i.length||a.length)&&tl.debug("ingest",{accepted:i.length,rejected:a.map(d=>({name:d.file.name,reason:d.reason}))}),{accepted:i,rejected:a}}function Br(e){try{URL.revokeObjectURL(e.previewUrl)}catch(t){tl.debug("revokeObjectURL failed",{error:t})}}function K_(e,t,n,o,i){return t>=o.maxCount?"count":n+e.size>o.maxBytes?"bytes":Y_(e,i)?null:"mime"}function q_(e){return e?Array.isArray(e)?e.filter(t=>t instanceof File):[...e].map(t=>t instanceof File?t:j_(t)).filter(t=>t!==null):[]}function j_(e){let t=e;return!t?.getAsFile||t.kind!=="file"?null:t.getAsFile()}function X_(e){return{file:e,id:$e(),mediaType:e.type||"application/octet-stream",name:e.name||"pasted-file",previewUrl:URL.createObjectURL(e),size:e.size}}function J_(e){return e.split(",").map(t=>t.trim().toLowerCase()).filter(Boolean).map(t=>{if(t.startsWith("."))return{kind:"ext",ext:t};let[n="*",o="*"]=t.split("/");return{kind:"mime",type:n,subtype:o}})}function Y_(e,t){if(t.length===0)return!0;let[n="*",o="*"]=(e.type||"").toLowerCase().split("/"),i=(e.name||"").toLowerCase();return t.some(a=>a.kind==="ext"?i.endsWith(a.ext):(a.type==="*"||a.type===n)&&(a.subtype==="*"||a.subtype===o))}var un=x.cssPrefix;function nl({attachment:e,onRemove:t}){let n=e.mediaType.startsWith("image/");return r("span",{class:`${un}-attachment-chip`,title:e.name,"data-testid":he(S.attachmentChip,e.id),children:[n?r("img",{class:`${un}-attachment-thumb`,src:e.previewUrl,alt:""}):r("span",{class:`${un}-attachment-thumb`,"aria-hidden":"true",children:r(Us,{})}),r("span",{class:`${un}-attachment-name`,children:e.name}),r("button",{type:"button",class:`${un}-attachment-remove`,onClick:t,"aria-label":`Remove ${e.name}`,"data-testid":he(S.attachmentRemove,e.id),children:r(Fe,{})})]})}var zr={isSupported:!1,start:()=>{},stop:()=>{}};function Ur(e,t,n){return e==="disabled"?zr:e==="server"?tu(n):Q_(t)}function Q_(e){let t=Z_();if(!t)return zr;let n=null;return{isSupported:!0,start(o,i){n=new t,n.continuous=!0,n.interimResults=!0,n.lang=e,n.addEventListener("result",s=>{let l=s,c="",d=!1;for(let u=l.resultIndex;u<l.results.length;u++){let _=l.results[u];_&&(c+=_[0].transcript,_.isFinal&&(d=!0))}o(c,d)});let a=()=>{n=null,i()};n.addEventListener("end",a),n.addEventListener("error",a),n.start()},stop(){n?.stop()}}}function Z_(){let e=globalThis;return e.SpeechRecognition??e.webkitSpeechRecognition}var eu=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/mp4"];function tu(e){if(typeof MediaRecorder>"u"||!navigator?.mediaDevices?.getUserMedia)return zr;let t=null,n=null,o=[],i=()=>{for(let a of n?.getTracks()??[])a.stop();n=null};return{isSupported:!0,async start(a,s){try{n=await navigator.mediaDevices.getUserMedia({audio:!0});let l=nu();t=new MediaRecorder(n,l?{mimeType:l}:void 0),o=[],t.addEventListener("dataavailable",c=>{c.data.size>0&&o.push(c.data)}),t.addEventListener("stop",async()=>{let c=t?.mimeType??"audio/webm";i();let d=new Blob(o,{type:c});o=[];try{let{text:u}=await e(d,c);u&&a(u,!0)}catch{}finally{s()}}),t.start()}catch{i(),s()}},stop(){t?.stop()}}}function nu(){for(let e of eu)if(MediaRecorder.isTypeSupported(e))return e}var Ie=x.cssPrefix,ft=B.scope("composer");function Ot(e){return e.reduce((t,n)=>t+n.size,0)}var ou={arrowUp:Ss,paperPlane:ys,send:ks,chevron:Dt};function ol({options:e,transport:t,feedback:n,bus:o,isStreaming:i,onSend:a,onStop:s,attachApiRef:l}){let c=e.strings,[d,u]=T(""),[_,m]=T([]),[g,f]=T(!1),v=M(null),h=M(null),I=e.features.files,b=e.features.voice,[C,N]=T(()=>Ur(b,e.locale,(k,J)=>t.transcribe(k,J)));w(()=>{g||b==="disabled"||N(Ur(b,e.locale,(k,J)=>t.transcribe(k,J)))},[e.locale,b,t,g]),w(()=>{let k=v.current;if(!k)return;let J=k.getRootNode(),Z="activeElement"in J?J.activeElement:null;Z&&k.closest(`.${Ie}-panel`)?.contains(Z)||k.focus({preventScroll:!0})},[]),w(()=>{let k=v.current;if(k){if(d.length===0){k.style.height="";return}k.style.height="auto",k.style.height=`${Math.min(k.scrollHeight,160)}px`}},[d]);let z=M(_);z.current=_,w(()=>()=>z.current.forEach(Br),[]),w(()=>{if(l)return l.current={attachFromDrop:k=>{let J=Co(k,z.current,e.attachments);J.accepted.length!==0&&(ft.info("attach (drop)",{count:J.accepted.length,totalBytes:Ot(J.accepted)}),o.emit("attach",{count:J.accepted.length,totalBytes:Ot(J.accepted)}),m(Z=>[...Z,...J.accepted]))}},()=>{l.current&&(l.current=null)}},[l,e.attachments]),w(()=>{let k=v.current;if(!k)return;let J=k.closest(`.${Ie}-panel`);if(!J)return;let Z=pe=>{let fe=pe.clipboardData;if(!fe)return;if(I){let D=Co(fe.items,z.current,e.attachments);if(D.accepted.length>0){pe.preventDefault(),ft.info("attach (paste)",{count:D.accepted.length,totalBytes:Ot(D.accepted)}),o.emit("attach",{count:D.accepted.length,totalBytes:Ot(D.accepted)}),m(me=>[...me,...D.accepted]);return}}if(pe.target===k)return;let y=fe.getData("text/plain");y&&(pe.preventDefault(),u(D=>D+y),k.focus())};return J.addEventListener("paste",Z),()=>J.removeEventListener("paste",Z)},[I,e.attachments,Ie]);let K=()=>{let k=d.trim();!k&&_.length===0||i||(a(k,_),u(""),m([]))},$=k=>{k.key!=="Enter"||k.shiftKey||k.isComposing||(k.preventDefault(),i?s():K())},de=k=>{let J=k.target,Z=Co(J.files,_,e.attachments);Z.accepted.length>0&&(ft.info("attach (file picker)",{count:Z.accepted.length,totalBytes:Ot(Z.accepted)}),o.emit("attach",{count:Z.accepted.length,totalBytes:Ot(Z.accepted)}),m(pe=>[...pe,...Z.accepted])),J.value=""},U=k=>{ft.info("removeAttachment",{id:k}),o.emit("removeAttachment",{id:k}),m(J=>{let Z=J.find(pe=>pe.id===k);return Z&&Br(Z),J.filter(pe=>pe.id!==k)})},q=M(null),We=()=>{if(C.isSupported){if(g){let k=q.current?Date.now()-q.current:0;ft.info("voiceStop",{durationMs:k}),o.emit("voiceStop",{durationMs:k}),C.stop(),f(!1),n.play("voiceStop"),q.current=null;return}q.current=Date.now(),ft.info("voiceStart"),o.emit("voiceStart",void 0),f(!0),n.play("voiceStart"),C.start((k,J)=>u(Z=>J?`${Z}${k} `:Z),()=>{if(f(!1),q.current){let k=Date.now()-q.current;ft.debug("voiceStop (auto)",{durationMs:k}),o.emit("voiceStop",{durationMs:k}),q.current=null}})}},ke=ou[e.composer.sendButton.icon];return r("div",{class:`${Ie}-composer`,"data-testid":S.composer,children:[_.length>0?r("div",{class:`${Ie}-attachments`,children:_.map(k=>r(nl,{attachment:k,onRemove:()=>U(k.id)},k.id))}):null,r("div",{class:`${Ie}-composer-row`,children:[r("div",{class:`${Ie}-composer-actions`,children:[I?r("button",{type:"button",class:`${Ie}-icon-btn`,onClick:()=>h.current?.click(),"aria-label":c.attach,"data-testid":S.composerAttach,children:r(Cs,{})}):null,C.isSupported?r("button",{type:"button",class:`${Ie}-icon-btn`,onClick:We,"aria-label":g?c.micStop:c.micStart,"aria-pressed":g,"data-recording":g?"true":void 0,"data-testid":S.composerVoice,children:r(Ts,{})}):null]}),r("textarea",{ref:v,class:`${Ie}-textarea`,rows:1,value:d,placeholder:c.composerPlaceholder,onInput:k=>u(k.target.value),onKeyDown:$,"aria-label":c.composerPlaceholder,"data-testid":S.composerInput}),i?r("button",{type:"button",class:`${Ie}-send`,onClick:s,"aria-label":c.stop,"data-testid":S.composerStop,children:r(ws,{})}):r("button",{type:"button",class:`${Ie}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:K,disabled:!d.trim()&&_.length===0,"aria-label":c.send,"data-testid":S.composerSend,children:r(ke,{})})]}),r("input",{ref:h,type:"file",multiple:!0,accept:e.attachments.accept,onChange:de,class:`${Ie}-sr-only`,"data-testid":S.composerFileInput})]})}var ru=x.cssPrefix;function rl({visible:e,strings:t}){return e?r("div",{class:`${ru}-dropzone`,role:"status","aria-live":"polite",children:t.dropZone}):null}function To({containerRef:e,onDrop:t}){let[n,o]=T(!1);return w(()=>{let i=e.current;if(!i)return;let a=0,s=u=>{a+=1,u.dataTransfer?.types.includes("Files")&&(u.preventDefault(),o(!0))},l=()=>{a-=1,!(a>0)&&(a=0,o(!1))},c=u=>{u.dataTransfer?.types.includes("Files")&&u.preventDefault()},d=u=>{a=0,o(!1),u.dataTransfer&&(u.preventDefault(),t(u.dataTransfer.items))};return i.addEventListener("dragenter",s),i.addEventListener("dragleave",l),i.addEventListener("dragover",c),i.addEventListener("drop",d),()=>{i.removeEventListener("dragenter",s),i.removeEventListener("dragleave",l),i.removeEventListener("dragover",c),i.removeEventListener("drop",d)}},[e,t]),{visible:n}}function il({itemCount:e,initialFocusIndex:t}){let[n,o]=T(!1),i=M(null),a=M(null),[s,l]=T(-1),c=F(()=>{o(!1),l(-1),i.current?.focus()},[]),d=F(()=>o(m=>!m),[]);w(()=>{if(!n)return;let m=g=>{let f=a.current,v=i.current;if(!f||!v)return;let h=g.composedPath();h.includes(f)||h.includes(v)||(o(!1),l(-1))};return document.addEventListener("click",m,!0),()=>document.removeEventListener("click",m,!0)},[n]),w(()=>{if(!n||e===0)return;let m=t?.()??0,g=m<0||m>=e?0:m;l(g)},[n,e,t]),w(()=>{if(!n||s<0)return;a.current?.querySelectorAll("[role='menuitem']")?.[s]?.focus()},[n,s]);let u=F(m=>{(m.key==="ArrowDown"||m.key==="Enter"||m.key===" ")&&(m.preventDefault(),o(!0))},[]),_=F(m=>{if(e!==0)switch(m.key){case"Escape":m.preventDefault(),c();return;case"ArrowDown":m.preventDefault(),l(g=>(g+1)%e);return;case"ArrowUp":m.preventDefault(),l(g=>(g-1+e)%e);return;case"Home":m.preventDefault(),l(0);return;case"End":m.preventDefault(),l(e-1)}},[e,c]);return{open:n,focusIndex:s,triggerRef:i,menuRef:a,toggle:d,close:c,onTriggerKey:u,onMenuKey:_}}function al({items:e,triggerLabel:t}){let n=x.cssPrefix,o=il({itemCount:e.length}),i=l=>{l.disabled||(l.onSelect?.(),l.keepOpen||o.close())},a=(l,c)=>l.onSelectValue?.(c),s=(l,c)=>{let d=c.segments;if(!d?.length)return;let u=Math.max(0,d.findIndex(m=>m.value===c.value)),_=-1;if(l.key==="ArrowRight"||l.key==="Enter"||l.key===" ")_=(u+1)%d.length;else if(l.key==="ArrowLeft")_=(u-1+d.length)%d.length;else return;l.preventDefault(),l.stopPropagation(),a(c,d[_].value)};return r("div",{class:`${n}-menu-wrap`,children:[r("button",{ref:o.triggerRef,type:"button",class:`${n}-icon-btn`,"aria-label":t,"aria-haspopup":"menu","aria-expanded":o.open,title:t,onClick:o.toggle,onKeyDown:o.onTriggerKey,children:r(Ms,{})}),o.open?r("div",{ref:o.menuRef,class:`${n}-menu`,role:"menu","aria-label":t,onKeyDown:o.onMenuKey,tabIndex:-1,children:e.map(l=>l.segments?r("div",{role:"menuitem",class:`${n}-menu-item ${n}-menu-item-segmented`,"aria-label":l.label,tabIndex:-1,onKeyDown:c=>s(c,l),children:[l.icon?r("span",{class:`${n}-menu-icon`,children:l.icon}):null,r("span",{class:`${n}-menu-label`,children:l.label}),r("span",{class:`${n}-segmented`,role:"group","aria-label":l.label,children:l.segments.map(c=>{let d=c.value===l.value;return r("button",{type:"button",role:"menuitemradio","aria-checked":d,class:`${n}-segment`,"data-on":d?"true":void 0,lang:c.lang,title:c.value,tabIndex:-1,"data-testid":`${S.langSegment}-${c.value}`,onClick:()=>a(l,c.value),children:c.label},c.value)})})]},l.id):r("button",{type:"button",role:"menuitem",class:`${n}-menu-item`,"aria-pressed":l.type==="switch"?l.on:void 0,disabled:l.disabled,onClick:()=>i(l),children:[l.icon?r("span",{class:`${n}-menu-icon`,children:l.icon}):null,r("span",{class:`${n}-menu-label`,children:l.label}),l.type==="switch"&&l.on?r("span",{class:`${n}-menu-check`,"aria-hidden":"true",children:r(ln,{})}):null]},l.id))}):null]})}var Wr=x.cssPrefix;function iu(e){let t=typeof matchMedia=="function"?matchMedia("(prefers-color-scheme: dark)").matches:!0;return e==="auto"?t?"light":"dark":t?e==="light"?"dark":"auto":e==="dark"?"light":"auto"}var au={normal:"large",large:"small",small:"normal"};function su(e){return e==="light"?r(Ks,{}):e==="dark"?r(qs,{}):r(js,{})}function lu(e){return(e.split("-")[0]??e).toUpperCase()}function Be({panelProps:e,variant:t}){let{options:n,panelSize:o,feedback:i,onClose:a,onClear:s,onExpand:l,onFullscreen:c,onSoundToggle:d}=e,{onToggleHistory:u,onLocaleChange:_,onThemeChange:m,onTextSizeChange:g}=e,f=n.strings,v=n.mode,h=t==="chat",I=re(()=>i.mutedSig.value).value,b=new Set(n.actions),C=k=>b.has(k),N=typeof matchMedia=="function"&&matchMedia("(max-width: 640px)").matches,z=k=>N?!1:_n(k,v,o),K=n.themeMode,$={auto:f.themeAuto,light:f.themeLight,dark:f.themeDark},de=n.textSize,U={small:f.textSizeSmall,normal:f.textSizeNormal,large:f.textSizeLarge},q=[];if(h&&C("clear")&&q.push({id:"clear",icon:r(Bs,{}),label:f.newConversation,onSelect:s}),C("expand")&&z("expand")){let k=o==="expanded";q.push({id:"expand",icon:k?r(Is,{}):r(Es,{}),label:k?f.collapse:f.expand,type:"switch",on:k,onSelect:l})}if(C("fullscreen")&&z("fullscreen")){let k=o==="fullscreen";q.push({id:"fullscreen",icon:k?r(Rs,{}):r(As,{}),label:k?f.exitFullscreen:f.fullscreen,type:"switch",on:k,onSelect:c})}h&&C("sound")&&q.push({id:"sound",icon:I?r(Ds,{}):r(Ns,{}),label:I?f.soundOff:f.soundOn,type:"switch",on:!I,onSelect:d}),C("theme")&&q.push({id:"theme",icon:su(K),label:`${f.theme}: ${$[K]}`,onSelect:()=>m(iu(K)),keepOpen:!0}),C("textSize")&&q.push({id:"textSize",icon:r(Os,{}),label:`${f.textSize}: ${U[de]}`,onSelect:()=>g(au[de]),keepOpen:!0}),C("language")&&n.availableLocales.length>1&&q.push({id:"language",icon:r(Fs,{}),label:f.language,segments:n.availableLocales.map(k=>({value:k,label:lu(k),lang:k})),value:n.locale,onSelectValue:_});let We=!!a&&So(v,o,n.actions),ke=h&&C("history");return r("div",{class:`${Wr}-header-actions`,children:[ke?r("button",{type:"button",class:`${Wr}-icon-btn`,onClick:u,"aria-label":f.history,title:f.history,"data-testid":S.actionHistory,children:r(Hs,{})}):null,q.length>0?r(al,{items:q,triggerLabel:f.moreActions}):null,We?r("button",{type:"button",class:`${Wr}-icon-btn`,onClick:a,"aria-label":f.close,title:f.close,"data-testid":S.actionClose,children:r(Fe,{})}):null]})}var cu=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,du=/^https?:\/\/[^\s.]+\.[^\s]+$/i,_u=/^[+]?[\d\s().-]{6,}$/;function $t(e,t){return e.replace(/\{(\w+)\}/g,(n,o)=>String(t[o]??`{${o}}`))}function uu(e){return Array.isArray(e)?e.length:e&&e.trim()?1:0}function pu(e,t,n){let o=e.required??!0,i=e.validation;if(e.type==="multiselect"){let s=uu(t);return o&&s===0?n.formRequired:s===0?void 0:i?.minSelections!=null&&s<i.minSelections?$t(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&s>i.maxSelections?$t(n.formChooseAtMost,{max:i.maxSelections}):void 0}let a=typeof t=="string"?t.trim():"";if(!a)return o?n.formRequired:void 0;switch(e.type){case"email":if(!cu.test(a))return n.formInvalidEmail;break;case"url":if(!du.test(a))return n.formInvalidUrl;break;case"tel":if(!_u.test(a))return n.formInvalidTel;break;case"number":{let s=Number(a);if(!Number.isFinite(s))return n.formInvalidNumber;if(i?.min!=null&&s<i.min)return $t(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&s>i.max)return $t(n.formNumberTooLarge,{max:i.max});break}default:break}if(i?.minLength!=null&&a.length<i.minLength)return $t(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return $t(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function sl(e,t,n){let o={};for(let i of e){let a=pu(i,t[i.name],n);a&&(o[i.name]=a)}return o}function ll(e){let t={};for(let[n,o]of Object.entries(e)){let i=Array.isArray(o)?o.join(", "):o;i&&i.trim()&&(t[n]=i.trim())}return t}var le=x.cssPrefix,Eo="__other__";function Io({fields:e,strings:t,submitLabel:n,onSubmit:o,skipLabel:i,onSkip:a,disabled:s,rootTestId:l,submitTestId:c,skipTestId:d}){let[u,_]=T(()=>hu(e)),[m,g]=T({}),[f,v]=T({}),h=N=>{f[N]&&v(z=>({...z,[N]:""}))},I=(N,z)=>{_(K=>({...K,[N]:z})),h(N)},b=(N,z)=>{g(K=>({...K,[N]:z})),h(N)},C=N=>{if(N.preventDefault(),s)return;let z=vu(e,u,m),K=sl(e,z,t);if(Object.keys(K).length>0){v(K);return}o(ll(z))};return r("form",{class:`${le}-form`,onSubmit:C,"data-testid":l,noValidate:!0,children:[e.map(N=>r(fu,{field:N,value:u[N.name],otherText:m[N.name]??"",error:f[N.name],disabled:s,strings:t,onChange:z=>I(N.name,z),onOtherChange:z=>b(N.name,z)},N.name)),r("div",{class:`${le}-form-actions`,children:[i&&a?r("button",{type:"button",class:`${le}-form-skip`,onClick:a,disabled:s,"data-testid":d,children:i}):null,r("button",{type:"submit",class:`${le}-form-submit`,disabled:s,"data-testid":c,children:n})]})]})}function fu({field:e,value:t,otherText:n,error:o,disabled:i,strings:a,onChange:s,onOtherChange:l}){let c=he(S.formField,e.name),d=mu({field:e,value:t,otherText:n,disabled:i,strings:a,onChange:s,onOtherChange:l,fieldTid:c});return r("label",{class:`${le}-field`,"data-field":e.name,"data-invalid":o?"true":void 0,children:[r("span",{class:`${le}-field-label`,children:[e.label,e.required??!0?r("span",{class:`${le}-field-req`,"aria-hidden":"true",children:" *"}):null]}),d,e.validationHint&&!o?r("span",{class:`${le}-field-hint`,children:e.validationHint}):null,o?r("span",{class:`${le}-field-error`,role:"alert",children:o}):null]})}function mu(e){let{field:t,value:n,otherText:o,disabled:i,strings:a,onChange:s,onOtherChange:l,fieldTid:c}=e,d=typeof n=="string"?n:"";switch(t.type){case"textarea":return r("textarea",{class:`${le}-field-input`,rows:3,value:d,placeholder:t.placeholder,disabled:i,onInput:u=>s(u.target.value),"data-testid":c});case"select":return r("select",{class:`${le}-field-input`,value:d,disabled:i,onChange:u=>s(u.target.value),"data-testid":c,children:[r("option",{value:"",children:t.placeholder??"\u2014"}),(t.options??[]).map(u=>r("option",{value:u.value,children:u.label??u.value},u.value))]});case"radio":{let u=t.allowOther&&d===Eo;return r("div",{class:`${le}-field-choices`,role:"radiogroup","data-testid":c,children:[(t.options??[]).map(_=>r("label",{class:`${le}-choice`,children:[r("input",{type:"radio",name:`${le}-${t.name}`,checked:d===_.value,disabled:i,onChange:()=>s(_.value)}),r("span",{children:_.label??_.value})]},_.value)),t.allowOther?r("label",{class:`${le}-choice`,children:[r("input",{type:"radio",name:`${le}-${t.name}`,checked:d===Eo,disabled:i,onChange:()=>s(Eo)}),r("span",{children:a.formOther})]}):null,u?r("input",{class:`${le}-field-input`,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:_=>l(_.target.value)}):null]})}case"checkbox":return r("label",{class:`${le}-choice`,children:[r("input",{type:"checkbox",checked:d==="true",disabled:i,onChange:u=>s(u.target.checked?"true":""),"data-testid":c}),r("span",{children:t.placeholder??t.label})]});case"multiselect":{let u=Array.isArray(n)?n:[],_=(m,g)=>s(g?[...u,m]:u.filter(f=>f!==m));return r("div",{class:`${le}-field-choices`,"data-testid":c,children:[(t.options??[]).map(m=>r("label",{class:`${le}-choice`,children:[r("input",{type:"checkbox",checked:u.includes(m.value),disabled:i,onChange:g=>_(m.value,g.target.checked)}),r("span",{children:m.label??m.value})]},m.value)),t.allowOther||(t.options??[]).length===0?r("textarea",{class:`${le}-field-input`,rows:2,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:m=>l(m.target.value)}):null]})}default:return r("input",{class:`${le}-field-input`,type:gu(t.type),value:d,placeholder:t.placeholder,disabled:i,onInput:u=>s(u.target.value),"data-testid":c})}}function gu(e){switch(e){case"number":case"email":case"tel":case"url":case"date":case"time":return e;default:return"text"}}function hu(e){let t={};for(let n of e)n.defaultValue!=null&&(t[n.name]=n.type==="multiselect"?n.defaultValue.split(",").map(o=>o.trim()).filter(Boolean):n.defaultValue);return t}function vu(e,t,n){let o={...t};for(let i of e){let a=n[i.name]?.trim();if(i.type==="radio"&&i.allowOther&&t[i.name]===Eo)o[i.name]=a??"";else if(i.type==="multiselect"&&a){let s=a.split(/[,\n;]+/).map(c=>c.trim()).filter(Boolean),l=Array.isArray(t[i.name])?t[i.name]:[];o[i.name]=[...l,...s]}}return o}var ze=x.cssPrefix;function cl({form:e,strings:t,onSubmit:n,onSkip:o}){return r("div",{class:`${ze}-form-gate`,"data-testid":S.formGate,children:[e.title?r("h3",{class:`${ze}-form-gate-title`,children:e.title}):null,e.description?r("p",{class:`${ze}-form-gate-desc`,children:e.description}):null,r(Io,{fields:e.fields,strings:t,submitLabel:e.submitLabel??t.formSubmit,onSubmit:n,skipLabel:e.skippable?t.formSkip:void 0,onSkip:e.skippable?o:void 0,submitTestId:S.formSubmit,skipTestId:S.formSkip})]})}function dl({marker:e,strings:t,onFill:n}){let o=e.outcome==="skipped",i=o?t.formSkipped:t.formSubmitted,a=e.title?r(ne,{children:[r("span",{children:e.title}),r("span",{class:`${ze}-sr-only`,children:i})]}):r("span",{children:i}),s=e.form?.reviewable??!1,l=!o&&s&&e.values&&Object.keys(e.values).length>0?e.values:null;if(l){let c=d=>e.form?.fields.find(u=>u.name===d)?.label??d;return r("details",{class:`${ze}-form-done`,"data-outcome":e.outcome,"data-testid":S.formDone,children:[r("summary",{class:`${ze}-form-done-summary`,"data-testid":S.formDoneToggle,children:[r(ln,{}),a,r(Dt,{})]}),r("dl",{class:`${ze}-form-answers`,"data-testid":S.formAnswers,children:Object.entries(l).map(([d,u])=>r("div",{class:`${ze}-form-answer`,children:[r("dt",{children:c(d)}),r("dd",{children:u})]},d))})]})}return r("div",{class:`${ze}-form-done`,"data-outcome":e.outcome,"data-testid":S.formDone,role:"status",children:[o?r($s,{}):r(ln,{}),a,o&&e.form?.reopenable&&n?r("button",{type:"button",class:`${ze}-form-done-fill`,"data-testid":S.formFill,onClick:n,children:t.formFillOut}):null]})}var Kr=1,ul=2,pl=4,fl=8,ml=16;function bu(e){switch(e){case Kr:return"href";case ul:return"src";case pl:return"class";case fl:return"checked";case ml:return"start"}}var xu=e=>{switch(e){case 1:return 3;case 2:return 4;case 3:return 5;case 4:return 6;case 5:return 7;default:return 8}},Pu=xu;var _l=24;function jr(e){let t=new Uint32Array(_l);return t[0]=1,{renderer:e,text:"",pending:"",tokens:t,len:0,token:1,fence_end:0,blockquote_idx:0,hr_char:"",hr_chars:0,fence_start:0,spaces:new Uint8Array(_l),indent:"",indent_len:0,table_state:0}}function gl(e){e.pending.length>0&&ve(e,`
|
|
11
|
+
${i}`:i;continue}o.startsWith("id:")&&(n=o.slice(3).trim())}if(!t||t==="[DONE]")return null;try{let o=JSON.parse(t);return ns.trace("chunk",{type:o.type,eventId:n}),{chunk:o,eventId:n}}catch(o){return ns.trace("frame parse failed",{err:o,payload:t.slice(0,200)}),null}}function d_(e){let t=new TextEncoder().encode(e),n="";for(let o of t)n+=String.fromCharCode(o);return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var rs=e=>e&&Object.keys(e).length>0?e:void 0;function is(e,t){let n=rs(e),o=rs(t);if(!n&&!o)return;let i={};return n&&(i.user=n),o&&(i.page=o),d_(JSON.stringify(i))}function co(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}var Ne={handshake:"/pai/handshake",streamMessage:"/pai/stream-message",streamResume:"/pai/stream-resume",cancelStream:"/pai/cancel-stream",listConversations:"/pai/list-conversations",listMessages:"/pai/list-messages",updateSettings:"/pai/update-settings",markRead:"/pai/mark-read",bootstrap:"/pai/bootstrap",content:"/pai/content",submitForm:"/pai/submit-form"},as="context";function ss(e){let n={messages:e.messages.map(a=>({id:a.id,parts:p_(a),role:a.role,createdAt:a.createdAt!==void 0?new Date(a.createdAt).toISOString():void 0})),conversationId:e.conversationId,trigger:e.trigger??"submit-message"};e.visitorId&&(n.visitorId=e.visitorId),e.userPrefs&&(n.userPrefs=e.userPrefs);let o={},i=e.tools?.map(u_).filter(a=>a!==null);return i?.length&&(o.tools=i),e.responseMode&&(o.responseMode=e.responseMode),Object.keys(o).length>0&&(n.data=o),n}function __(e){return e.state==="output"||e.state==="error"||e.approval?.approved!==void 0}function u_(e){return typeof e=="string"?e?{code:e}:null:e?.code?e:null}function p_(e){let t=[];for(let n of e.parts)if(n.kind==="text"&&n.text&&t.push({text:n.text,type:"text"}),n.kind==="file"&&n.url&&t.push({mediaType:n.mediaType,type:"file",url:n.url}),n.kind==="tool"&&__(n)){let o={type:"tool",toolCallId:n.toolCallId,toolName:n.toolName,state:n.state};n.input!==void 0&&(o.input=n.input),n.output!==void 0&&(o.output=n.output),n.error!==void 0&&(o.errorText=n.error),n.approval&&n.approval.approved!==void 0&&(o.approval=n.approval),t.push(o)}for(let n of e.attachments??[])n.url&&t.push({type:"file",url:n.url,mediaType:n.mediaType,filename:n.name,fileId:n.id,fileSize:n.size});return t}var X=B.scope("transport"),f_=3,_s=400,m_=6e4,ls=1e4,cs=3,g_=new Set([408,425,429,500,502,503,504]);function ds(e){return _s*2**e+Math.floor(Math.random()*250)}function h_(e){let t=e.get("retry-after");if(!t)return null;let n=Number(t),o=Number.isFinite(n)?n*1e3:Date.parse(t)-Date.now();return Number.isFinite(o)&&o>=0?Math.min(o,3e4):null}function Mr(e,t){return new Promise(n=>{if(t?.aborted)return n();let o=setTimeout(a,e),i=()=>a();t?.addEventListener("abort",i,{once:!0});function a(){clearTimeout(o),t?.removeEventListener("abort",i),n()}})}var _o=class{constructor(t){G(this,"opts",t);G(this,"visitorId");G(this,"conversationId");G(this,"userContext");G(this,"pageContext");G(this,"locale");G(this,"conversationsCache",new Map);G(this,"contentCache",new Map)}setContext(t,n){this.userContext=t,this.pageContext=n}setLocale(t){this.locale=t}primeIdentity(t,n){t&&(this.visitorId=t),n&&(this.conversationId=n)}envelope(){let t={};this.visitorId&&(t.visitorId=this.visitorId),this.conversationId&&(t.conversationId=this.conversationId),this.locale&&(t.locale=this.locale);let n=is(this.userContext,this.pageContext);return n&&(t[as]=n),t}withEnvelope(t){return{...this.envelope(),...t}}appendEnvelope(t){for(let[n,o]of Object.entries(this.envelope()))t.append(n,o);return t}withEnvelopeQuery(t){let n=new URL(this.url(t));for(let[o,i]of Object.entries(this.envelope()))n.searchParams.has(o)||n.searchParams.set(o,i);return n.toString()}async handshake(t){X.debug("handshake \u2192",{visitorId:t.visitorId,conversationId:t.conversationId,locale:t.locale});let n=await this.postJson(Ne.handshake,t,"handshake");return X.debug("handshake \u2190",{visitorId:n.visitorId,conversationId:n.conversationId,hasWelcome:!!n.welcome,hasConfig:!!n.config,rebind:n.rebind}),b_(n)||X.warn("handshake response did not match expected shape; using raw response",{response:n}),this.visitorId=n.visitorId??t.visitorId,this.conversationId=n.conversationId,n}async uploadFile(t){X.debug("uploadFile \u2192",{name:t.name,size:t.size,type:t.type});let n=new FormData;n.append("file",t,t.name);let o=await this.postForm(this.uploadPath,n,"upload");return X.debug("uploadFile \u2190",{id:o.id,url:o.url}),o}async transcribe(t,n="audio/webm"){X.debug("transcribe \u2192",{size:t.size,mimeType:n});let o=new FormData;o.append("audio",t,`voice.${v_(n)}`),o.append("mimeType",n);let i=await this.postForm(this.transcribePath,o,"transcribe");return X.debug("transcribe \u2190",{textLen:i.text.length}),i}conversationsKey(t){return`${this.locale??""}|${JSON.stringify(t,Object.keys(t).toSorted())}`}peekConversations(t={}){let n=this.conversationsCache.get(this.conversationsKey(t));if(n?.value&&Date.now()-n.at<ls)return n.value}listConversations(t={}){let n=this.conversationsKey(t),o=this.conversationsCache.get(n);if(o&&Date.now()-o.at<ls)return X.debug("listConversations \u2192 cache",t),o.result;let i={at:Date.now(),result:this.fetchConversations(t).then(a=>(i.value=a,a)).catch(a=>{throw this.conversationsCache.delete(n),a})};return this.conversationsCache.set(n,i),i.result}async fetchConversations(t){let n=new URL(this.url(Ne.listConversations));t.visitorId&&n.searchParams.set("visitorId",t.visitorId),t.limit&&n.searchParams.set("limit",String(t.limit)),t.cursor&&n.searchParams.set("cursor",t.cursor),X.debug("listConversations \u2192",{visitorId:t.visitorId??this.visitorId,limit:t.limit,cursor:t.cursor});let o=await this.getJson(n.toString(),"listConversations"),i=o.conversations??[];return X.debug("listConversations \u2190",{count:i.length,nextCursor:o.nextCursor}),{conversations:i.map(a=>({conversationId:a.conversationId,title:a.title,lastMessageAt:a.lastMessageAt,preview:a.preview,canContinue:a.canContinue,unreadCount:a.unreadCount})),nextCursor:o.nextCursor}}async loadConversation(t){let n=new URL(this.url(Ne.listMessages));n.searchParams.set("conversationId",t),X.debug("loadConversation \u2192",{conversationId:t,visitorId:this.visitorId});let o=await this.getJson(n.toString(),"loadConversation"),i=o.messages??[];return X.debug("loadConversation \u2190",{conversationId:o.conversationId,canContinue:o.canContinue,messageCount:i.length,hasSuggestions:!!o.suggestions}),{conversationId:o.conversationId,canContinue:o.canContinue??!0,messages:i,agent:o.agent,suggestions:o.suggestions}}async markRead(t){if(!(!this.visitorId||!t)){this.conversationsCache.clear(),X.debug("markRead \u2192",{conversationId:t,visitorId:this.visitorId});try{await this.postJson(Ne.markRead,{conversationId:t},"markRead")}catch(n){X.debug("markRead failed (non-fatal)",{err:n})}}}listContent(t={}){let n=`${this.locale??""}|${JSON.stringify(t,Object.keys(t).toSorted())}`,o=this.contentCache.get(n);if(o&&Date.now()-o.at<m_)return X.debug("listContent \u2192 cache",t),o.result;let i=this.fetchContent(t).catch(a=>{throw this.contentCache.delete(n),a});return this.contentCache.set(n,{at:Date.now(),result:i}),i}async fetchContent(t){let n=new URL(this.dataUrl(Ne.content));for(let[a,s]of Object.entries(t))s!==void 0&&n.searchParams.set(a,Array.isArray(s)?s.join(","):String(s));X.debug("listContent \u2192",t);let o=await this.getJson(n.toString(),"listContent"),i=(o.items??[]).map(a=>Mi(a,this.locale));return X.debug("listContent \u2190",{count:i.length,total:o.pagination?.total}),{...o,items:i}}async bootstrap(t){let n=new URL(this.dataUrl(Ne.bootstrap));t&&n.searchParams.set("conversationId",t),X.debug("bootstrap \u2192",{conversationId:t??this.conversationId});let o=await this.getJson(n.toString(),"bootstrap"),i=o.forms??[],a=o.formSubmissions??[];return X.debug("bootstrap \u2190",{forms:i.length,formSubmissions:a.length}),{forms:i,formSubmissions:a}}async saveUserPrefs(t){X.debug("saveUserPrefs \u2192",{visitorId:this.visitorId,conversationId:this.conversationId,settingsKeys:Object.keys(t)});let n=await this.postJson(Ne.updateSettings,{userPrefs:t},"saveUserPrefs");return X.debug("saveUserPrefs \u2190",{ok:n.ok}),n}get uploadPath(){return this.opts.endpoints?.upload??"/pai/upload-file"}get transcribePath(){return this.opts.endpoints?.transcribe??"/pai/transcribe-audio"}get submitFormPath(){return this.opts.endpoints?.submitForm??Ne.submitForm}async submitForm(t){X.debug("submitForm \u2192",{formId:t.formId,trigger:t.trigger,fields:Object.keys(t.values).length});try{await this.postJson(this.dataUrl(this.submitFormPath),t,"submitForm")}catch(n){X.debug("submitForm failed (non-fatal)",{err:n})}}sendMessage(t){this.conversationsCache.clear(),X.debug("message \u2192",{conversationId:t.conversationId,visitorId:t.visitorId,messageCount:t.messages.length,trigger:t.trigger,responseMode:t.data?.responseMode,tools:t.data?.tools?.map(s=>s.code)});let n=new AbortController,o=new Set;return{iter:this.runStream(t,n,o),cancel:()=>this.cancelStream(n,t.conversationId)}}resumeStream(){let t=new AbortController,n=new Set;return{iter:this.resumeStreamGen(t,n,!0),cancel:()=>t.abort()}}async*runStream(t,n,o){(yield*this.drain(this.openMessageStream(t,n.signal),o,n))||(yield*this.resumeStreamGen(n,o,!1))}async*resumeStreamGen(t,n,o){for(let i=1;i<=f_&&!t.signal.aborted;i++){if((!o||i>1)&&(await Mr(_s*i,t.signal),t.signal.aborted))return;let a;try{a=await this.fetchImpl(this.resumeUrl(n.size),{method:"GET",credentials:"omit",headers:{accept:"text/event-stream",...this.opts.auth.headers()},signal:t.signal})}catch(l){if(t.signal.aborted)return;X.debug("resume fetch failed \u2014 retrying",{attempt:i,err:l});continue}if(a.status===204||!a.ok){X.debug("resume \u2192 no in-flight stream",{status:a.status});return}let s=n.size;if(yield*this.drain(Lr(a,t.signal),n,t))return;if(n.size===s){X.debug("resume \u2192 stream closed with no new events; nothing to resume");return}}if(!t.signal.aborted)throw new Me("stream incomplete after resume attempts","server")}async*drain(t,n,o){try{for await(let i of t){if(o.signal.aborted)return!0;if(i.eventId){if(n.has(i.eventId))continue;n.add(i.eventId)}if(yield i,i.chunk.type==="finish"||i.chunk.type==="error")return!0}}catch(i){if(o.signal.aborted)return!0;if(i instanceof Me&&i.status!==void 0)throw i;X.debug("stream segment dropped",{err:i})}return!1}cancelStream(t,n){t.signal.aborted||(X.debug("cancel stream",{conversationId:n,visitorId:this.visitorId}),t.abort(),!(!this.visitorId||!n)&&this.fetchImpl(this.url(Ne.cancelStream),{method:"POST",credentials:"omit",headers:{"content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({})),keepalive:!0}).catch(o=>X.debug("cancel POST failed (non-fatal)",{err:o})))}async*openMessageStream(t,n){let o=await this.fetchImpl(this.url(Ne.streamMessage),{method:"POST",credentials:"omit",headers:{accept:"text/event-stream","content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(t)),signal:n});yield*Lr(o,n)}resumeUrl(t){let n=new URL(this.withEnvelopeQuery(Ne.streamResume));return n.searchParams.set("resumeAt",String(t)),n.toString()}async postJson(t,n,o){let i=await this.fetchWithRetry(()=>[this.url(t),{method:"POST",credentials:"omit",headers:{"content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(n))}],o);return this.assertOk(i,o)}async postForm(t,n,o){let i=await this.fetchImpl(this.url(t),{method:"POST",credentials:"omit",headers:this.opts.auth.headers(),body:this.appendEnvelope(n)});return this.assertOk(i,o)}async getJson(t,n){let o=await this.fetchWithRetry(()=>[this.withEnvelopeQuery(t),{method:"GET",credentials:"omit",headers:{accept:"application/json",...this.opts.auth.headers()}}],n);return this.assertOk(o,n)}async fetchWithRetry(t,n){for(let o=0;;o++){let[i,a]=t(),s;try{s=await this.fetchImpl(i,a)}catch(c){if(o>=cs)throw new Me(`${n} failed: network error`,"network",void 0,c);X.debug("request network error \u2014 retrying",{label:n,attempt:o}),await Mr(ds(o));continue}if(s.ok||!g_.has(s.status)||o>=cs)return s;let l=h_(s.headers)??ds(o);X.debug("request retryable status \u2014 retrying",{label:n,status:s.status,attempt:o,wait:l}),await Mr(l)}}async assertOk(t,n){if(!t.ok)throw new Me(`${n} failed: ${t.status}`,"server",t.status);return await t.json()}url(t){return/^https?:\/\//i.test(t)?t:`${this.opts.agentApiBaseUrl}${t}`}dataUrl(t){return/^https?:\/\//i.test(t)?t:`${this.opts.dataApiBaseUrl}${t}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function v_(e){return e.includes("webm")?"webm":e.includes("ogg")?"ogg":e.includes("mp4")||e.includes("m4a")?"m4a":e.includes("mpeg")?"mp3":e.includes("wav")?"wav":"bin"}function b_(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.visitorId=="string"&&typeof t.conversationId=="string"}function us(e,t){let n=e?[{kind:"text",id:"t0",textSig:H(e),doneSig:H(!0)}]:[];return{id:$e(),role:"user",createdAt:Date.now(),status:"complete",attachments:t,partsSig:H(n)}}function uo(){return{id:$e(),role:"assistant",createdAt:Date.now(),status:"streaming",partsSig:H([])}}function ps(e){return x_({id:e.id,role:e.role,createdAt:Date.now(),status:"complete",parts:[{kind:"text",id:`${e.id}-t0`,text:e.text,done:!0}]})}function x_(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,errorText:e.errorText,finishReason:e.finishReason,attachments:e.attachments,partsSig:H(e.parts.map(P_))}}function Nr(e){let t=e.parts.map((n,o)=>n.type==="text"?{kind:"text",id:`${e.id}-t${o}`,textSig:H(n.text),doneSig:H(!0)}:n.type==="file"?{kind:"file",url:n.url,mediaType:n.mediaType}:n.type==="tool"?{kind:"tool",toolCallId:n.toolCallId,toolName:n.toolName,inputPartialSig:H(""),inputSig:H(n.input),outputSig:H(n.output),errorSig:H(n.errorText),stateSig:H(n.state),approvalSig:H(n.approval)}:null).filter(n=>n!==null);return{id:e.id,role:e.role,createdAt:co(e.createdAt)??Date.now(),status:"complete",partsSig:H(t)}}function fs(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,errorText:e.errorText,finishReason:e.finishReason,attachments:e.attachments,parts:e.partsSig.value.map(y_)}}function Dr(e){let t="";for(let n of e.partsSig.value)n.kind==="text"&&(t+=n.textSig.value);return t}function P_(e){return e.kind==="text"||e.kind==="reasoning"?{kind:e.kind,id:e.id,textSig:H(e.text),doneSig:H(e.done)}:e.kind==="tool"?{kind:"tool",toolCallId:e.toolCallId,toolName:e.toolName,inputPartialSig:H(e.inputPartial),inputSig:H(e.input),outputSig:H(e.output),errorSig:H(e.error),stateSig:H(e.state),approvalSig:H(e.approval)}:e}function y_(e){return e.kind==="text"||e.kind==="reasoning"?{kind:e.kind,id:e.id,text:e.textSig.value,done:e.doneSig.value}:e.kind==="tool"?{kind:"tool",toolCallId:e.toolCallId,toolName:e.toolName,inputPartial:e.inputPartialSig.value,input:e.inputSig.value,output:e.outputSig.value,error:e.errorSig.value,state:e.stateSig.value,approval:e.approvalSig.value}:e}function po(e){if(!e)return!1;let t=e.startsWith("tool:")?e.slice(5):e;return t==="ask-user-input"||t==="ask_user_input"||t==="request-user-input"||t==="request_user_input"}var fo={submitMessage:"submit-message",toolResult:"tool-result",toolApproval:"tool-approval"};var ms=B.scope("reducer"),mo=class{constructor(t){G(this,"messagesSig",t);G(this,"active",null)}attach(t){this.active=t}detach(){this.active=null}apply(t){let n=this.active;if(n)switch(t.type){case"start":case"start-step":case"finish-step":return;case"finish":ms.debug("finish",{reason:t.finishReason,canContinue:t.canContinue}),n.status="complete",t.finishReason&&(n.finishReason=t.finishReason),this.bumpDone(n);return;case"error":ms.warn("stream error chunk",{errorText:t.errorText}),n.status="error",n.errorText=t.errorText,this.bumpDone(n);return;case"text-start":Mt(n,"text",t.id);return;case"text-delta":{let o=Mt(n,"text",t.id);o.textSig.value+=t.delta;return}case"text-end":Mt(n,"text",t.id).doneSig.value=!0;return;case"reasoning-start":Mt(n,"reasoning",t.id).doneSig.value=!1;return;case"reasoning-delta":{let o=Mt(n,"reasoning",t.id);o.textSig.value+=t.delta;return}case"reasoning-end":Mt(n,"reasoning",t.id).doneSig.value=!0;return;case"tool-input-start":case"tool-input-delta":case"tool-input-available":case"tool-output-available":case"tool-output-error":case"tool-approval-request":S_(n,t);return;case"file":go(n,{kind:"file",url:t.url,mediaType:t.mediaType});return;case"source-url":{if(n.partsSig.value.some(i=>i.kind==="source"&&i.sourceId===t.sourceId))return;go(n,{kind:"source",sourceId:t.sourceId,url:t.url,title:t.title});return}case"data-notification":return;default:{let o=t}}}bumpDone(t){t.partsSig.value=[...t.partsSig.value],this.messagesSig.value=[...this.messagesSig.value]}};function Mt(e,t,n){let o=e.partsSig.value.find(a=>a.kind===t&&a.id===n);if(o)return o;let i={kind:t,id:n,textSig:H(""),doneSig:H(!1)};return go(e,i),i}function Nt(e,t,n){let o=e.partsSig.value.find(a=>a.kind==="tool"&&a.toolCallId===t);if(o)return o;let i={kind:"tool",toolCallId:t,toolName:n??"tool",inputPartialSig:H(""),inputSig:H(void 0),outputSig:H(void 0),errorSig:H(void 0),stateSig:H("input"),approvalSig:H(void 0)};return go(e,i),i}function go(e,t){e.partsSig.value=[...e.partsSig.value,t]}function S_(e,t){switch(t.type){case"tool-input-start":Nt(e,t.toolCallId,t.toolName);return;case"tool-input-delta":{let n=Nt(e,t.toolCallId);n.inputPartialSig.value+=t.delta;return}case"tool-input-available":{let n=Nt(e,t.toolCallId,t.toolName);n.inputSig.value=t.input,n.stateSig.value=po(n.toolName)?"awaiting-input":"awaiting";return}case"tool-approval-request":{let n=Nt(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value="awaiting-approval";return}case"tool-output-available":{let n=Nt(e,t.toolCallId);n.outputSig.value=t.output,n.stateSig.value="output";return}case"tool-output-error":{let n=Nt(e,t.toolCallId);n.errorSig.value=t.errorText,n.stateSig.value="error";return}default:return}}var gs=B.scope("feedback:audio"),ho=class{constructor(){G(this,"ctx",null);G(this,"master",null);G(this,"buffers",new Map)}unlock(){if(this.ctx){this.ctx.state==="suspended"&&this.ctx.resume();return}let t=globalThis.AudioContext??globalThis.webkitAudioContext;if(t)try{this.ctx=new t,this.master=this.ctx.createGain(),this.master.gain.value=1,this.master.connect(this.ctx.destination)}catch(n){gs.warn("AudioContext init failed",{err:n})}}setVolume(t){if(!this.master||!this.ctx)return;let n=Math.max(0,Math.min(1,t));this.master.gain.setTargetAtTime(n,this.ctx.currentTime,.01)}playTone(t){let n=this.ctx,o=this.master;if(!n||!o||n.state!=="running")return;let i=n.currentTime,a=t.noteMs/1e3;t.notes.forEach((s,l)=>{let c=n.createOscillator();c.type=t.type,c.frequency.value=s;let d=n.createGain(),u=i+l*a;d.gain.setValueAtTime(1e-4,u),d.gain.exponentialRampToValueAtTime(t.peakGain,u+.005),d.gain.exponentialRampToValueAtTime(1e-4,u+a),c.connect(d).connect(o),c.start(u),c.stop(u+a+.01)})}async playUrl(t){let n=this.ctx,o=this.master;if(!n||!o||n.state!=="running")return;let i=await this.getBuffer(t);if(!i)return;let a=n.createBufferSource();a.buffer=i,a.connect(o),a.start()}destroy(){this.ctx&&this.ctx.close().catch(()=>{}),this.ctx=null,this.master=null,this.buffers.clear()}async getBuffer(t){if(!this.ctx)return null;let n=this.buffers.get(t);if(n)return n instanceof Promise,n;let o=this.ctx,i=fetch(t).then(a=>a.ok?a.arrayBuffer():Promise.reject(new Error(`fetch ${a.status}`))).then(a=>o.decodeAudioData(a)).then(a=>(this.buffers.set(t,a),a)).catch(a=>(gs.warn("audio fetch/decode failed",{url:t,err:a}),this.buffers.delete(t),null));return this.buffers.set(t,i),i}};var hs={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},vs={messageReceived:{notes:[880,1318.51],noteMs:90,type:"sine",peakGain:.45},messageSent:{notes:[1568],noteMs:60,type:"sine",peakGain:.25},error:{notes:[523.25,392],noteMs:120,type:"triangle",peakGain:.55},voiceStart:{notes:[1318.51],noteMs:50,type:"sine",peakGain:.3},voiceStop:{notes:[880],noteMs:50,type:"sine",peakGain:.3}};var ot=null,vo=0;function k_(){return typeof navigator<"u"&&typeof navigator.vibrate=="function"}function w_(){if(typeof document>"u")return null;let e=document.createElement("input");e.type="checkbox",e.setAttribute("switch",""),e.setAttribute("aria-hidden","true"),e.tabIndex=-1,e.id=`__${x.cssPrefix}_haptic_${Math.random().toString(36).slice(2)}`;let t=document.createElement("label");t.htmlFor=e.id,t.setAttribute("aria-hidden","true");let n="position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;opacity:0!important;pointer-events:none!important;";return e.style.cssText=n,t.style.cssText=n,document.body.append(e,t),{input:e,label:t}}function bs(e){if(!(e===0||Array.isArray(e)&&e.every(t=>t===0))){if(k_())try{navigator.vibrate(e);return}catch{}if(ot||(ot=w_()),!!ot)try{ot.label.click()}catch{}}}function xs(){vo++;let e=!1;return()=>{e||(e=!0,vo=Math.max(0,vo-1),vo===0&&ot&&(ot.input.remove(),ot.label.remove(),ot=null))}}var C_=B.scope("feedback"),T_=100,bo=class{constructor(t,n){G(this,"mutedSig",H(!1));G(this,"audio",new ho);G(this,"releaseHaptics");G(this,"sound");G(this,"haptics");G(this,"lastPlayed",new Map);G(this,"reducedMotionMq",null);this.sound=t,this.haptics=n,this.releaseHaptics=xs(),this.audio.setVolume(this.effectiveVolume()),typeof matchMedia<"u"&&(this.reducedMotionMq=matchMedia("(prefers-reduced-motion: reduce)"))}unlock(){this.audio.unlock(),this.audio.setVolume(this.effectiveVolume())}update(t,n){this.sound=t,this.haptics=n,this.audio.setVolume(this.effectiveVolume())}setMuted(t){this.mutedSig.value!==t&&(this.mutedSig.value=t)}toggleMuted(){this.mutedSig.value=!this.mutedSig.value}play(t){this.mutedSig.value||this.isDeduped(t)||(this.lastPlayed.set(t,performance.now()),this.sound.enabled&&this.playSound(t),this.haptics.enabled&&this.isTouchDevice()&&this.playHaptic(t))}destroy(){this.audio.destroy(),this.releaseHaptics()}isDeduped(t){let n=this.lastPlayed.get(t);return n===void 0?!1:performance.now()-n<T_}playSound(t){let n=this.sound.events?.[t];if(n===!1)return;if(typeof n=="string"){this.audio.playUrl(n).catch(i=>C_.warn("audio play failed",{err:i,url:n}));return}let o=vs[t];o&&this.audio.playTone(o)}playHaptic(t){if(this.reducedMotionMq?.matches)return;let n=this.haptics.events?.[t];if(n===!1)return;let o=n===!0||n===void 0?hs[t]:n;bs(o)}effectiveVolume(){let t=this.sound.volume??.3;return this.reducedMotionMq?.matches?t*.5:t}isTouchDevice(){return typeof window>"u"?!1:matchMedia("(hover: none) and (pointer: coarse)").matches}};function ut(e,t){return e instanceof Me&&e.status===429?t.errorRateLimited:t.errorGeneric}var E_=0;function r(e,t,n,o,i,a){t||(t={});var s,l,c=t;if("ref"in c)for(l in c={},t)l=="ref"?s=t[l]:c[l]=t[l];var d={type:e,props:c,key:n,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--E_,__i:-1,__u:0,__source:i,__self:a};if(typeof e=="function"&&(s=e.defaultProps))for(l in s)c[l]===void 0&&(c[l]=s[l]);return j.vnode&&j.vnode(d),d}var O={fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,viewBox:"0 0 24 24"},sn=`${x.cssPrefix}-icon-dir`,I_=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M21 12a8 8 0 0 1-12 6.93L3 21l1.65-5.16A8 8 0 1 1 21 12Z"})}),Fe=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M18 6 6 18M6 6l12 12"})}),Ps=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M12 5v14M5 12h14"})}),ys=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:[r("path",{d:"m22 2-7 20-4-9-9-4Z"}),r("path",{d:"M22 2 11 13"})]}),Ss=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M12 19V5M5 12l7-7 7 7"})}),ks=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"M3 20V4l18 8-18 8Z"})}),Dt=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"m9 18 6-6-6-6"})}),ws=()=>r("svg",{...O,"aria-hidden":"true",children:r("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})}),Cs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"m21 11-9 9a5.5 5.5 0 0 1-7.78-7.78l8.49-8.49a3.67 3.67 0 0 1 5.19 5.19l-8.49 8.49a1.83 1.83 0 0 1-2.6-2.6l7.78-7.78"})}),Ts=()=>r("svg",{...O,"aria-hidden":"true",children:[r("rect",{x:"9",y:"2",width:"6",height:"12",rx:"3"}),r("path",{d:"M5 10a7 7 0 0 0 14 0M12 19v3"})]}),Es=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5"})}),Is=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5"})}),As=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z"})}),Rs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7"})}),Ls=()=>r("svg",{...O,"aria-hidden":"true",viewBox:"0 0 10 10",children:r("path",{d:"M9 1L1 9M9 5L5 9M9 9H9",strokeWidth:"1.5"})}),Ms=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"5",r:"1.5",fill:"currentColor",stroke:"none"}),r("circle",{cx:"12",cy:"12",r:"1.5",fill:"currentColor",stroke:"none"}),r("circle",{cx:"12",cy:"19",r:"1.5",fill:"currentColor",stroke:"none"})]}),Ns=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M11 5 6 9H2v6h4l5 4zM15 9a5 5 0 0 1 0 6M18 7a9 9 0 0 1 0 10"})}),Ds=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6"})}),Os=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M3 18 8 6l5 12M4.7 14h6.6"}),r("path",{d:"M14.5 18l3.2-7 3.2 7M15.6 15.8h4.2"})]}),$s=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"m5 6 6 6-6 6M13 6l6 6-6 6"})}),ln=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M20 6 9 17l-5-5"})}),Hs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M3 3v6h6"}),r("path",{d:"M3.05 13A9 9 0 1 0 6 5.3L3 9"}),r("path",{d:"M12 7v5l3 2"})]}),Fs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"10"}),r("path",{d:"M2 12h20"}),r("path",{d:"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"})]}),cn=()=>r("svg",{...O,class:sn,"aria-hidden":"true",children:r("path",{d:"M19 12H5M12 19l-7-7 7-7"})}),Bs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M12 20h9"}),r("path",{d:"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z"})]}),zs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"m6 9 6 6 6-6"})}),Us=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),r("path",{d:"M14 2v6h6"})]}),A_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"m12 3-1.5 4.5L6 9l4.5 1.5L12 15l1.5-4.5L18 9l-4.5-1.5Z"}),r("path",{d:"M19 15v4M17 17h4M5 3v2M4 4h2"})]}),Or=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z"})}),$r=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"10"}),r("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"}),r("path",{d:"M12 17h.01"})]}),R_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"m15 4 3 3-9 9-3-3z"}),r("path",{d:"M18 2v2M20 4h2M3 20l3-3M3 16h2M5 14v2"})]}),L_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("rect",{x:"4",y:"8",width:"16",height:"12",rx:"2"}),r("path",{d:"M12 8V4"}),r("circle",{cx:"12",cy:"3",r:"1"}),r("path",{d:"M2 14h2M20 14h2M9 13h.01M15 13h.01M9.5 17h5"})]}),M_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M4 14v-2a8 8 0 0 1 16 0v2"}),r("rect",{x:"2",y:"14",width:"4",height:"6",rx:"1.5"}),r("rect",{x:"18",y:"14",width:"4",height:"6",rx:"1.5"}),r("path",{d:"M20 20v1a3 3 0 0 1-3 3h-5"})]}),N_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"10"}),r("circle",{cx:"12",cy:"12",r:"4"}),r("path",{d:"m4.93 4.93 4.24 4.24M14.83 14.83l4.24 4.24M14.83 9.17l4.24-4.24M4.93 19.07l4.24-4.24"})]}),Hr=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"11",cy:"11",r:"7"}),r("path",{d:"m21 21-4.3-4.3"})]}),Ws=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"9"}),r("path",{d:"m8.5 12 2.5 2.5 4.5-5"})]}),Gs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M3 9.5 12 3l9 6.5"}),r("path",{d:"M5 9v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9"})]}),Vs=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"m3 11 15-5v12L3 13z"}),r("path",{d:"M3 11v2a2 2 0 0 0 2 2h1V9H5a2 2 0 0 0-2 2z"}),r("path",{d:"M7 15v3a2 2 0 0 0 4 0v-2"}),r("path",{d:"M21 10a3 3 0 0 1 0 4"})]}),dn=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z"}),r("path",{d:"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"})]}),Ks=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"4"}),r("path",{d:"M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41"})]}),qs=()=>r("svg",{...O,"aria-hidden":"true",children:r("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})}),js=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"12",cy:"12",r:"9"}),r("path",{d:"M12 3v18"}),r("path",{d:"M12 3a9 9 0 0 1 0 18z",fill:"currentColor",stroke:"none"})]}),D_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("circle",{cx:"10.5",cy:"10.5",r:"6.5"}),r("path",{d:"M8 11a2.5 2.5 0 0 0 5 0"}),r("path",{d:"m20 20-4.4-4.4"})]}),O_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M12 3.5 13.6 9 19 10.5 13.6 12 12 17.5 10.4 12 5 10.5 10.4 9z"}),r("path",{d:"M18.5 4v3M20 5.5h-3M5.5 16v2.5M6.75 17.25h-2.5"})]}),$_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M4 18h16"}),r("path",{d:"M5 18a7 7 0 0 1 14 0"}),r("path",{d:"M12 8V6"}),r("path",{d:"M10 6h4"})]}),H_=()=>r("svg",{...O,"aria-hidden":"true",children:[r("path",{d:"M7 11V6.5a1.5 1.5 0 0 1 3 0V10"}),r("path",{d:"M10 10V5.5a1.5 1.5 0 0 1 3 0V10"}),r("path",{d:"M13 10V6.5a1.5 1.5 0 0 1 3 0V12"}),r("path",{d:"M16 9.5a1.5 1.5 0 0 1 3 0v2.5a7 7 0 0 1-7 7 7 7 0 0 1-6.4-4.2L4 12.5a1.5 1.5 0 0 1 2.6-1.5L7 11"})]}),Xs={chat:I_,message:Or,bubbles:dn,spark:A_,wand:R_,bot:L_,help:$r,lifebuoy:N_,headset:M_,search:D_,sparkles:O_,concierge:$_,wave:H_};var A=x.cssPrefix,S={launcher:`${A}-launcher`,callout:`${A}-callout`,calloutDismiss:`${A}-callout-dismiss`,panel:`${A}-panel`,panelHeader:`${A}-panel-header`,resizeGrip:`${A}-resize-grip`,scrollToBottom:`${A}-scroll-to-bottom`,actionHistory:`${A}-action-history`,actionClose:`${A}-action-close`,langSegment:`${A}-lang-segment`,composer:`${A}-composer`,composerInput:`${A}-composer-input`,composerSend:`${A}-composer-send`,composerStop:`${A}-composer-stop`,composerAttach:`${A}-composer-attach`,composerFileInput:`${A}-composer-file-input`,composerVoice:`${A}-composer-voice`,attachmentChip:`${A}-attachment-chip`,attachmentRemove:`${A}-attachment-remove`,suggestion:`${A}-suggestion`,messageBubble:`${A}-message`,messageRetry:`${A}-message-retry`,historyPane:`${A}-history-pane`,historyBack:`${A}-history-back`,historyItem:`${A}-history-item`,sidebar:`${A}-sidebar`,sidebarToggle:`${A}-sidebar-toggle`,sidebarNewConversation:`${A}-sidebar-new-conversation`,sidebarItem:`${A}-sidebar-item`,messengerHome:`${A}-messenger-home`,modulesEmpty:`${A}-modules-empty`,tab:`${A}-tab`,tabBadge:`${A}-tab-badge`,homeView:`${A}-home-view`,homeGreeting:`${A}-home-greeting`,homeBrand:`${A}-home-brand`,backHeader:`${A}-back-header`,contentView:`${A}-content-view`,contentScroll:`${A}-content-scroll`,homeSearch:`${A}-home-search`,helpSearch:`${A}-help-search`,homeRecent:`${A}-home-recent`,homeContentRow:`${A}-home-content-row`,helpArticle:`${A}-help-article`,newsItem:`${A}-news-item`,formGate:`${A}-form-gate`,formDone:`${A}-form-done`,formDoneToggle:`${A}-form-done-toggle`,formAnswers:`${A}-form-answers`,formFill:`${A}-form-fill`,formSubmit:`${A}-form-submit`,formSkip:`${A}-form-skip`,formField:`${A}-form-field`,toolAskInput:`${A}-tool-ask-input`,toolInputSubmit:`${A}-tool-input-submit`,toolInputSkip:`${A}-tool-input-skip`,toolApproval:`${A}-tool-approval`,toolApprove:`${A}-tool-approve`,toolReject:`${A}-tool-reject`,toolDecision:`${A}-tool-decision`};function he(e,t){return`${e}-${t}`}var xo=x.cssPrefix;function Js({onToggle:e,launcher:t,strings:n,leaving:o,edgeTab:i}){let a=t.variant!=="circle"&&!!t.label;return r("button",{type:"button",class:`${xo}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?"true":void 0,"data-leaving":o?"true":void 0,"data-testid":S.launcher,onClick:e,"aria-label":n.launcherOpen,children:[F_(t.icon),a?r("span",{class:`${xo}-fab-label`,children:be(n,t.label??"")}):null]})}function F_(e){let t=Xs[e];return t?r(t,{}):r(B_,{source:e})}function B_({source:e}){return r("span",{ref:t=>{t&&z_(t,e)},"aria-hidden":"true"})}function z_(e,t){if(e.dataset.svgMounted!==t)try{let o=new DOMParser().parseFromString(t,"image/svg+xml").documentElement;o&&o.tagName.toLowerCase()==="svg"&&(e.replaceChildren(document.importNode(o,!0)),e.dataset.svgMounted=t)}catch{}}function Ys({callout:e,launcherPosition:t,strings:n,closeLabel:o,onDismiss:i}){let[a,s]=T(!1);return w(()=>{let l=setTimeout(()=>s(!0),e.delayMs);return()=>clearTimeout(l)},[e.delayMs]),w(()=>{if(!a||e.autoDismissMs<=0)return;let l=setTimeout(i,e.autoDismissMs);return()=>clearTimeout(l)},[a,e.autoDismissMs,i]),a?r("div",{class:`${xo}-callout`,role:"status","data-shape":e.shape,"data-position":U_(e.position,t),"data-animated":e.animated?"true":void 0,"data-testid":S.callout,children:[r("span",{children:be(n,e.text)}),r("button",{type:"button",class:`${xo}-callout-close`,onClick:i,"aria-label":o,title:o,"data-testid":S.calloutDismiss,children:r(Fe,{})})]}):null}function U_(e,t){let n=t.endsWith("-right"),o=t.startsWith("bottom-");return e==="vertical"?o?"top":"bottom":n?"left":"right"}function Po({panelEl:e,resize:t,position:n,initialSize:o,onSizeChange:i,strings:a}){let s=x.cssPrefix,l=M(null);if(w(()=>{if(!e)return;let f=e.style;t.minWidth&&f.setProperty(`--${s}-resize-min-w`,t.minWidth),t.maxWidth&&f.setProperty(`--${s}-resize-max-w`,t.maxWidth),t.minHeight&&f.setProperty(`--${s}-resize-min-h`,t.minHeight),t.maxHeight&&f.setProperty(`--${s}-resize-max-h`,t.maxHeight),o&&(f.setProperty(`--${s}-widget-w`,`${o.width}px`),f.setProperty(`--${s}-widget-h`,`${o.height}px`))},[e,t.minWidth,t.maxWidth,t.minHeight,t.maxHeight,s,o]),!e)return null;let c=n.startsWith("top-"),d=n.endsWith("-right"),u=`${s}-resize-grip ${s}-resize-grip--${c?"bottom":"top"}-${d?"left":"right"}`,_=f=>{if(!e)return;let v=f.currentTarget,h=e.getBoundingClientRect();l.current={pointerId:f.pointerId,startX:f.clientX,startY:f.clientY,startW:h.width,startH:h.height,dirX:d?-1:1,dirY:c?1:-1},v.setPointerCapture(f.pointerId),e.setAttribute("data-resizing",""),f.preventDefault()},m=f=>{let v=l.current;if(!v||f.pointerId!==v.pointerId||!e)return;let h=(f.clientX-v.startX)*v.dirX,I=(f.clientY-v.startY)*v.dirY;e.style.setProperty(`--${s}-widget-w`,`${v.startW+h}px`),e.style.setProperty(`--${s}-widget-h`,`${v.startH+I}px`)},g=f=>{let v=l.current;if(!v||f.pointerId!==v.pointerId||!e)return;f.currentTarget.releasePointerCapture(f.pointerId),e.removeAttribute("data-resizing");let h=e.getBoundingClientRect();i({width:Math.round(h.width),height:Math.round(h.height)}),l.current=null};return r("div",{class:u,role:"separator","aria-orientation":"vertical","aria-label":a.resizeHandle,title:a.resizeHandle,onPointerDown:_,onPointerMove:m,onPointerUp:g,onPointerCancel:g,"data-testid":S.resizeGrip,children:r(Ls,{})})}var pt=x.cssPrefix,W_=`.${pt}-header, .${pt}-back-header, .${pt}-home-hero`,G_='button, a, input, textarea, select, [role="tab"], [contenteditable]',Qs=56;function yo(e,t){w(()=>{if(!t||!e)return;let n=c=>Number.parseFloat(c)||0,o=(c,d)=>Math.min(d,Math.max(-d,c)),i=null,a=c=>{let d=c.target;if(!(d instanceof Element)||!d.closest(W_)||d.closest(G_))return;let u=e.getBoundingClientRect();i={id:c.pointerId,x:c.clientX,y:c.clientY,dx:n(e.style.getPropertyValue(`--${pt}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${pt}-modal-dy`)),maxX:(window.innerWidth+u.width)/2-Qs,maxY:(window.innerHeight+u.height)/2-Qs},e.dataset.dragging="true",c.preventDefault()},s=c=>{if(!i||c.pointerId!==i.id)return;let d=o(i.dx+c.clientX-i.x,i.maxX),u=o(i.dy+c.clientY-i.y,i.maxY);e.style.setProperty(`--${pt}-modal-dx`,`${d}px`),e.style.setProperty(`--${pt}-modal-dy`,`${u}px`)},l=c=>{!i||c.pointerId!==i.id||(i=null,delete e.dataset.dragging)};return e.addEventListener("pointerdown",a),window.addEventListener("pointermove",s),window.addEventListener("pointerup",l),window.addEventListener("pointercancel",l),()=>{e.removeEventListener("pointerdown",a),window.removeEventListener("pointermove",s),window.removeEventListener("pointerup",l),window.removeEventListener("pointercancel",l)}},[e,t])}function _n(e,t,n){switch(e){case"clear":case"sound":case"history":case"language":case"theme":case"textSize":return!0;case"expand":return t==="floating";case"fullscreen":return t!=="standalone";case"close":return t==="standalone"||t==="page"?!1:t==="inline"?n==="fullscreen":!0}}function So(e,t,n){return _n("close",e,t)?n.includes("close"):!1}function Zs(e,t){return e==="inline"&&t==="fullscreen"?"exit-fullscreen":"close"}var V_='a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])';function ko(e){let t=n=>{if(n.key!=="Tab")return;let o=[...e.querySelectorAll(V_)].filter(l=>l.offsetParent!==null||l===document.activeElement);if(o.length===0){n.preventDefault();return}let i=o[0],a=o[o.length-1];if(!i||!a)return;let s=e.getRootNode().activeElement;n.shiftKey&&s===i?(n.preventDefault(),a.focus()):!n.shiftKey&&s===a&&(n.preventDefault(),i.focus())};return e.addEventListener("keydown",t),()=>e.removeEventListener("keydown",t)}function wo(e){return e.trim().split(/\s+/).slice(0,2).map(t=>t.charAt(0).toUpperCase()).join("")}var Fr=x.cssPrefix;function el({agent:e,strings:t}){let n=e.status??"online",o=be(t,e.name),i=e.title?be(t,e.title):null;return r("div",{class:`${Fr}-agent`,children:[r("div",{class:`${Fr}-agent-avatar`,"data-status":n,children:e.avatar?r("img",{src:e.avatar,alt:""}):r("span",{children:wo(o)})}),r("div",{class:`${Fr}-agent-meta`,children:[r("strong",{children:o}),i?r("span",{children:i}):null]})]})}var tl=B.scope("attachments");function Co(e,t,n){let o=q_(e),i=[],a=[],s=J_(n.accept),l=t.reduce((d,u)=>d+u.size,0),c=t.length;for(let d of o){let u=K_(d,c,l,n,s);if(u){a.push({file:d,reason:u});continue}i.push(X_(d)),l+=d.size,c+=1}return(i.length||a.length)&&tl.debug("ingest",{accepted:i.length,rejected:a.map(d=>({name:d.file.name,reason:d.reason}))}),{accepted:i,rejected:a}}function Br(e){try{URL.revokeObjectURL(e.previewUrl)}catch(t){tl.debug("revokeObjectURL failed",{error:t})}}function K_(e,t,n,o,i){return t>=o.maxCount?"count":n+e.size>o.maxBytes?"bytes":Y_(e,i)?null:"mime"}function q_(e){return e?Array.isArray(e)?e.filter(t=>t instanceof File):[...e].map(t=>t instanceof File?t:j_(t)).filter(t=>t!==null):[]}function j_(e){let t=e;return!t?.getAsFile||t.kind!=="file"?null:t.getAsFile()}function X_(e){return{file:e,id:$e(),mediaType:e.type||"application/octet-stream",name:e.name||"pasted-file",previewUrl:URL.createObjectURL(e),size:e.size}}function J_(e){return e.split(",").map(t=>t.trim().toLowerCase()).filter(Boolean).map(t=>{if(t.startsWith("."))return{kind:"ext",ext:t};let[n="*",o="*"]=t.split("/");return{kind:"mime",type:n,subtype:o}})}function Y_(e,t){if(t.length===0)return!0;let[n="*",o="*"]=(e.type||"").toLowerCase().split("/"),i=(e.name||"").toLowerCase();return t.some(a=>a.kind==="ext"?i.endsWith(a.ext):(a.type==="*"||a.type===n)&&(a.subtype==="*"||a.subtype===o))}var un=x.cssPrefix;function nl({attachment:e,onRemove:t}){let n=e.mediaType.startsWith("image/");return r("span",{class:`${un}-attachment-chip`,title:e.name,"data-testid":he(S.attachmentChip,e.id),children:[n?r("img",{class:`${un}-attachment-thumb`,src:e.previewUrl,alt:""}):r("span",{class:`${un}-attachment-thumb`,"aria-hidden":"true",children:r(Us,{})}),r("span",{class:`${un}-attachment-name`,children:e.name}),r("button",{type:"button",class:`${un}-attachment-remove`,onClick:t,"aria-label":`Remove ${e.name}`,"data-testid":he(S.attachmentRemove,e.id),children:r(Fe,{})})]})}var zr={isSupported:!1,start:()=>{},stop:()=>{}};function Ur(e,t,n){return e==="disabled"?zr:e==="server"?tu(n):Q_(t)}function Q_(e){let t=Z_();if(!t)return zr;let n=null;return{isSupported:!0,start(o,i){n=new t,n.continuous=!0,n.interimResults=!0,n.lang=e,n.addEventListener("result",s=>{let l=s,c="",d=!1;for(let u=l.resultIndex;u<l.results.length;u++){let _=l.results[u];_&&(c+=_[0].transcript,_.isFinal&&(d=!0))}o(c,d)});let a=()=>{n=null,i()};n.addEventListener("end",a),n.addEventListener("error",a),n.start()},stop(){n?.stop()}}}function Z_(){let e=globalThis;return e.SpeechRecognition??e.webkitSpeechRecognition}var eu=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/mp4"];function tu(e){if(typeof MediaRecorder>"u"||!navigator?.mediaDevices?.getUserMedia)return zr;let t=null,n=null,o=[],i=()=>{for(let a of n?.getTracks()??[])a.stop();n=null};return{isSupported:!0,async start(a,s){try{n=await navigator.mediaDevices.getUserMedia({audio:!0});let l=nu();t=new MediaRecorder(n,l?{mimeType:l}:void 0),o=[],t.addEventListener("dataavailable",c=>{c.data.size>0&&o.push(c.data)}),t.addEventListener("stop",async()=>{let c=t?.mimeType??"audio/webm";i();let d=new Blob(o,{type:c});o=[];try{let{text:u}=await e(d,c);u&&a(u,!0)}catch{}finally{s()}}),t.start()}catch{i(),s()}},stop(){t?.stop()}}}function nu(){for(let e of eu)if(MediaRecorder.isTypeSupported(e))return e}var Ie=x.cssPrefix,ft=B.scope("composer");function Ot(e){return e.reduce((t,n)=>t+n.size,0)}var ou={arrowUp:Ss,paperPlane:ys,send:ks,chevron:Dt};function ol({options:e,transport:t,feedback:n,bus:o,isStreaming:i,onSend:a,onStop:s,attachApiRef:l}){let c=e.strings,[d,u]=T(""),[_,m]=T([]),[g,f]=T(!1),v=M(null),h=M(null),I=e.features.files,b=e.features.voice,[C,N]=T(()=>Ur(b,e.locale,(k,J)=>t.transcribe(k,J)));w(()=>{g||b==="disabled"||N(Ur(b,e.locale,(k,J)=>t.transcribe(k,J)))},[e.locale,b,t,g]),w(()=>{let k=v.current;if(!k)return;let J=k.getRootNode(),Z="activeElement"in J?J.activeElement:null;Z&&k.closest(`.${Ie}-panel`)?.contains(Z)||k.focus({preventScroll:!0})},[]),w(()=>{let k=v.current;if(k){if(d.length===0){k.style.height="";return}k.style.height="auto",k.style.height=`${Math.min(k.scrollHeight,160)}px`}},[d]);let z=M(_);z.current=_,w(()=>()=>z.current.forEach(Br),[]),w(()=>{if(l)return l.current={attachFromDrop:k=>{let J=Co(k,z.current,e.attachments);J.accepted.length!==0&&(ft.info("attach (drop)",{count:J.accepted.length,totalBytes:Ot(J.accepted)}),o.emit("attach",{count:J.accepted.length,totalBytes:Ot(J.accepted)}),m(Z=>[...Z,...J.accepted]))}},()=>{l.current&&(l.current=null)}},[l,e.attachments]),w(()=>{let k=v.current;if(!k)return;let J=k.closest(`.${Ie}-panel`);if(!J)return;let Z=pe=>{let fe=pe.clipboardData;if(!fe)return;if(I){let D=Co(fe.items,z.current,e.attachments);if(D.accepted.length>0){pe.preventDefault(),ft.info("attach (paste)",{count:D.accepted.length,totalBytes:Ot(D.accepted)}),o.emit("attach",{count:D.accepted.length,totalBytes:Ot(D.accepted)}),m(me=>[...me,...D.accepted]);return}}if(pe.target===k)return;let y=fe.getData("text/plain");y&&(pe.preventDefault(),u(D=>D+y),k.focus())};return J.addEventListener("paste",Z),()=>J.removeEventListener("paste",Z)},[I,e.attachments,Ie]);let K=()=>{let k=d.trim();!k&&_.length===0||i||(a(k,_),u(""),m([]))},$=k=>{k.key!=="Enter"||k.shiftKey||k.isComposing||(k.preventDefault(),i?s():K())},de=k=>{let J=k.target,Z=Co(J.files,_,e.attachments);Z.accepted.length>0&&(ft.info("attach (file picker)",{count:Z.accepted.length,totalBytes:Ot(Z.accepted)}),o.emit("attach",{count:Z.accepted.length,totalBytes:Ot(Z.accepted)}),m(pe=>[...pe,...Z.accepted])),J.value=""},U=k=>{ft.info("removeAttachment",{id:k}),o.emit("removeAttachment",{id:k}),m(J=>{let Z=J.find(pe=>pe.id===k);return Z&&Br(Z),J.filter(pe=>pe.id!==k)})},q=M(null),We=()=>{if(C.isSupported){if(g){let k=q.current?Date.now()-q.current:0;ft.info("voiceStop",{durationMs:k}),o.emit("voiceStop",{durationMs:k}),C.stop(),f(!1),n.play("voiceStop"),q.current=null;return}q.current=Date.now(),ft.info("voiceStart"),o.emit("voiceStart",void 0),f(!0),n.play("voiceStart"),C.start((k,J)=>u(Z=>J?`${Z}${k} `:Z),()=>{if(f(!1),q.current){let k=Date.now()-q.current;ft.debug("voiceStop (auto)",{durationMs:k}),o.emit("voiceStop",{durationMs:k}),q.current=null}})}},ke=ou[e.composer.sendButton.icon];return r("div",{class:`${Ie}-composer`,"data-testid":S.composer,children:[_.length>0?r("div",{class:`${Ie}-attachments`,children:_.map(k=>r(nl,{attachment:k,onRemove:()=>U(k.id)},k.id))}):null,r("div",{class:`${Ie}-composer-row`,children:[r("div",{class:`${Ie}-composer-actions`,children:[I?r("button",{type:"button",class:`${Ie}-icon-btn`,onClick:()=>h.current?.click(),"aria-label":c.attach,"data-testid":S.composerAttach,children:r(Cs,{})}):null,C.isSupported?r("button",{type:"button",class:`${Ie}-icon-btn`,onClick:We,"aria-label":g?c.micStop:c.micStart,"aria-pressed":g,"data-recording":g?"true":void 0,"data-testid":S.composerVoice,children:r(Ts,{})}):null]}),r("textarea",{ref:v,class:`${Ie}-textarea`,rows:1,value:d,placeholder:c.composerPlaceholder,onInput:k=>u(k.target.value),onKeyDown:$,"aria-label":c.composerPlaceholder,"data-testid":S.composerInput}),i?r("button",{type:"button",class:`${Ie}-send`,onClick:s,"aria-label":c.stop,"data-testid":S.composerStop,children:r(ws,{})}):r("button",{type:"button",class:`${Ie}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:K,disabled:!d.trim()&&_.length===0,"aria-label":c.send,"data-testid":S.composerSend,children:r(ke,{})})]}),r("input",{ref:h,type:"file",multiple:!0,accept:e.attachments.accept,onChange:de,class:`${Ie}-sr-only`,"data-testid":S.composerFileInput})]})}var ru=x.cssPrefix;function rl({visible:e,strings:t}){return e?r("div",{class:`${ru}-dropzone`,role:"status","aria-live":"polite",children:t.dropZone}):null}function To({containerRef:e,onDrop:t}){let[n,o]=T(!1);return w(()=>{let i=e.current;if(!i)return;let a=0,s=u=>{a+=1,u.dataTransfer?.types.includes("Files")&&(u.preventDefault(),o(!0))},l=()=>{a-=1,!(a>0)&&(a=0,o(!1))},c=u=>{u.dataTransfer?.types.includes("Files")&&u.preventDefault()},d=u=>{a=0,o(!1),u.dataTransfer&&(u.preventDefault(),t(u.dataTransfer.items))};return i.addEventListener("dragenter",s),i.addEventListener("dragleave",l),i.addEventListener("dragover",c),i.addEventListener("drop",d),()=>{i.removeEventListener("dragenter",s),i.removeEventListener("dragleave",l),i.removeEventListener("dragover",c),i.removeEventListener("drop",d)}},[e,t]),{visible:n}}function il({itemCount:e,initialFocusIndex:t}){let[n,o]=T(!1),i=M(null),a=M(null),[s,l]=T(-1),c=F(()=>{o(!1),l(-1),i.current?.focus()},[]),d=F(()=>o(m=>!m),[]);w(()=>{if(!n)return;let m=g=>{let f=a.current,v=i.current;if(!f||!v)return;let h=g.composedPath();h.includes(f)||h.includes(v)||(o(!1),l(-1))};return document.addEventListener("click",m,!0),()=>document.removeEventListener("click",m,!0)},[n]),w(()=>{if(!n||e===0)return;let m=t?.()??0,g=m<0||m>=e?0:m;l(g)},[n,e,t]),w(()=>{if(!n||s<0)return;a.current?.querySelectorAll("[role='menuitem']")?.[s]?.focus()},[n,s]);let u=F(m=>{(m.key==="ArrowDown"||m.key==="Enter"||m.key===" ")&&(m.preventDefault(),o(!0))},[]),_=F(m=>{if(e!==0)switch(m.key){case"Escape":m.preventDefault(),c();return;case"ArrowDown":m.preventDefault(),l(g=>(g+1)%e);return;case"ArrowUp":m.preventDefault(),l(g=>(g-1+e)%e);return;case"Home":m.preventDefault(),l(0);return;case"End":m.preventDefault(),l(e-1)}},[e,c]);return{open:n,focusIndex:s,triggerRef:i,menuRef:a,toggle:d,close:c,onTriggerKey:u,onMenuKey:_}}function al({items:e,triggerLabel:t}){let n=x.cssPrefix,o=il({itemCount:e.length}),i=l=>{l.disabled||(l.onSelect?.(),l.keepOpen||o.close())},a=(l,c)=>l.onSelectValue?.(c),s=(l,c)=>{let d=c.segments;if(!d?.length)return;let u=Math.max(0,d.findIndex(m=>m.value===c.value)),_=-1;if(l.key==="ArrowRight"||l.key==="Enter"||l.key===" ")_=(u+1)%d.length;else if(l.key==="ArrowLeft")_=(u-1+d.length)%d.length;else return;l.preventDefault(),l.stopPropagation(),a(c,d[_].value)};return r("div",{class:`${n}-menu-wrap`,children:[r("button",{ref:o.triggerRef,type:"button",class:`${n}-icon-btn`,"aria-label":t,"aria-haspopup":"menu","aria-expanded":o.open,title:t,onClick:o.toggle,onKeyDown:o.onTriggerKey,children:r(Ms,{})}),o.open?r("div",{ref:o.menuRef,class:`${n}-menu`,role:"menu","aria-label":t,onKeyDown:o.onMenuKey,tabIndex:-1,children:e.map(l=>l.segments?r("div",{role:"menuitem",class:`${n}-menu-item ${n}-menu-item-segmented`,"aria-label":l.label,tabIndex:-1,onKeyDown:c=>s(c,l),children:[l.icon?r("span",{class:`${n}-menu-icon`,children:l.icon}):null,r("span",{class:`${n}-menu-label`,children:l.label}),r("span",{class:`${n}-segmented`,role:"group","aria-label":l.label,children:l.segments.map(c=>{let d=c.value===l.value;return r("button",{type:"button",role:"menuitemradio","aria-checked":d,class:`${n}-segment`,"data-on":d?"true":void 0,lang:c.lang,title:c.value,tabIndex:-1,"data-testid":`${S.langSegment}-${c.value}`,onClick:()=>a(l,c.value),children:c.label},c.value)})})]},l.id):r("button",{type:"button",role:"menuitem",class:`${n}-menu-item`,"aria-pressed":l.type==="switch"?l.on:void 0,disabled:l.disabled,onClick:()=>i(l),children:[l.icon?r("span",{class:`${n}-menu-icon`,children:l.icon}):null,r("span",{class:`${n}-menu-label`,children:l.label}),l.type==="switch"&&l.on?r("span",{class:`${n}-menu-check`,"aria-hidden":"true",children:r(ln,{})}):null]},l.id))}):null]})}var Wr=x.cssPrefix;function iu(e){let t=typeof matchMedia=="function"?matchMedia("(prefers-color-scheme: dark)").matches:!0;return e==="auto"?t?"light":"dark":t?e==="light"?"dark":"auto":e==="dark"?"light":"auto"}var au={normal:"large",large:"small",small:"normal"};function su(e){return e==="light"?r(Ks,{}):e==="dark"?r(qs,{}):r(js,{})}function lu(e){return(e.split("-")[0]??e).toUpperCase()}function Be({panelProps:e,variant:t}){let{options:n,panelSize:o,feedback:i,onClose:a,onClear:s,onExpand:l,onFullscreen:c,onSoundToggle:d}=e,{onToggleHistory:u,onLocaleChange:_,onThemeChange:m,onTextSizeChange:g}=e,f=n.strings,v=n.mode,h=t==="chat",I=re(()=>i.mutedSig.value).value,b=new Set(n.actions),C=k=>b.has(k),N=typeof matchMedia=="function"&&matchMedia("(max-width: 640px)").matches,z=k=>N?!1:_n(k,v,o),K=n.themeMode,$={auto:f.themeAuto,light:f.themeLight,dark:f.themeDark},de=n.textSize,U={small:f.textSizeSmall,normal:f.textSizeNormal,large:f.textSizeLarge},q=[];if(h&&C("clear")&&q.push({id:"clear",icon:r(Bs,{}),label:f.newConversation,onSelect:s}),C("expand")&&z("expand")){let k=o==="expanded";q.push({id:"expand",icon:k?r(Is,{}):r(Es,{}),label:k?f.collapse:f.expand,type:"switch",on:k,onSelect:l})}if(C("fullscreen")&&z("fullscreen")){let k=o==="fullscreen";q.push({id:"fullscreen",icon:k?r(Rs,{}):r(As,{}),label:k?f.exitFullscreen:f.fullscreen,type:"switch",on:k,onSelect:c})}h&&C("sound")&&q.push({id:"sound",icon:I?r(Ds,{}):r(Ns,{}),label:I?f.soundOff:f.soundOn,type:"switch",on:!I,onSelect:d}),C("theme")&&q.push({id:"theme",icon:su(K),label:`${f.theme}: ${$[K]}`,onSelect:()=>m(iu(K)),keepOpen:!0}),C("textSize")&&q.push({id:"textSize",icon:r(Os,{}),label:`${f.textSize}: ${U[de]}`,onSelect:()=>g(au[de]),keepOpen:!0}),C("language")&&n.availableLocales.length>1&&q.push({id:"language",icon:r(Fs,{}),label:f.language,segments:n.availableLocales.map(k=>({value:k,label:lu(k),lang:k})),value:n.locale,onSelectValue:_});let We=!!a&&So(v,o,n.actions),ke=h&&C("history");return r("div",{class:`${Wr}-header-actions`,children:[ke?r("button",{type:"button",class:`${Wr}-icon-btn`,onClick:u,"aria-label":f.history,title:f.history,"data-testid":S.actionHistory,children:r(Hs,{})}):null,q.length>0?r(al,{items:q,triggerLabel:f.moreActions}):null,We?r("button",{type:"button",class:`${Wr}-icon-btn`,onClick:a,"aria-label":f.close,title:f.close,"data-testid":S.actionClose,children:r(Fe,{})}):null]})}var cu=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,du=/^https?:\/\/[^\s.]+\.[^\s]+$/i,_u=/^[+]?[\d\s().-]{6,}$/;function $t(e,t){return e.replace(/\{(\w+)\}/g,(n,o)=>String(t[o]??`{${o}}`))}function uu(e){return Array.isArray(e)?e.length:e&&e.trim()?1:0}function pu(e,t,n){let o=e.required??!0,i=e.validation;if(e.type==="multiselect"){let s=uu(t);return o&&s===0?n.formRequired:s===0?void 0:i?.minSelections!=null&&s<i.minSelections?$t(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&s>i.maxSelections?$t(n.formChooseAtMost,{max:i.maxSelections}):void 0}let a=typeof t=="string"?t.trim():"";if(!a)return o?n.formRequired:void 0;switch(e.type){case"email":if(!cu.test(a))return n.formInvalidEmail;break;case"url":if(!du.test(a))return n.formInvalidUrl;break;case"tel":if(!_u.test(a))return n.formInvalidTel;break;case"number":{let s=Number(a);if(!Number.isFinite(s))return n.formInvalidNumber;if(i?.min!=null&&s<i.min)return $t(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&s>i.max)return $t(n.formNumberTooLarge,{max:i.max});break}default:break}if(i?.minLength!=null&&a.length<i.minLength)return $t(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return $t(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function sl(e,t,n){let o={};for(let i of e){let a=pu(i,t[i.name],n);a&&(o[i.name]=a)}return o}function ll(e){let t={};for(let[n,o]of Object.entries(e)){let i=Array.isArray(o)?o.join(", "):o;i&&i.trim()&&(t[n]=i.trim())}return t}var le=x.cssPrefix,Eo="__other__";function Io({fields:e,strings:t,submitLabel:n,onSubmit:o,skipLabel:i,onSkip:a,disabled:s,rootTestId:l,submitTestId:c,skipTestId:d}){let[u,_]=T(()=>hu(e)),[m,g]=T({}),[f,v]=T({}),h=N=>{f[N]&&v(z=>({...z,[N]:""}))},I=(N,z)=>{_(K=>({...K,[N]:z})),h(N)},b=(N,z)=>{g(K=>({...K,[N]:z})),h(N)},C=N=>{if(N.preventDefault(),s)return;let z=vu(e,u,m),K=sl(e,z,t);if(Object.keys(K).length>0){v(K);return}o(ll(z))};return r("form",{class:`${le}-form`,onSubmit:C,"data-testid":l,noValidate:!0,children:[e.map(N=>r(fu,{field:N,value:u[N.name],otherText:m[N.name]??"",error:f[N.name],disabled:s,strings:t,onChange:z=>I(N.name,z),onOtherChange:z=>b(N.name,z)},N.name)),r("div",{class:`${le}-form-actions`,children:[i&&a?r("button",{type:"button",class:`${le}-form-skip`,onClick:a,disabled:s,"data-testid":d,children:i}):null,r("button",{type:"submit",class:`${le}-form-submit`,disabled:s,"data-testid":c,children:n})]})]})}function fu({field:e,value:t,otherText:n,error:o,disabled:i,strings:a,onChange:s,onOtherChange:l}){let c=he(S.formField,e.name),d=mu({field:e,value:t,otherText:n,disabled:i,strings:a,onChange:s,onOtherChange:l,fieldTid:c});return r("label",{class:`${le}-field`,"data-field":e.name,"data-invalid":o?"true":void 0,children:[r("span",{class:`${le}-field-label`,children:[e.label,e.required??!0?r("span",{class:`${le}-field-req`,"aria-hidden":"true",children:" *"}):null]}),d,e.validationHint&&!o?r("span",{class:`${le}-field-hint`,children:e.validationHint}):null,o?r("span",{class:`${le}-field-error`,role:"alert",children:o}):null]})}function mu(e){let{field:t,value:n,otherText:o,disabled:i,strings:a,onChange:s,onOtherChange:l,fieldTid:c}=e,d=typeof n=="string"?n:"";switch(t.type){case"textarea":return r("textarea",{class:`${le}-field-input`,rows:3,value:d,placeholder:t.placeholder,disabled:i,onInput:u=>s(u.target.value),"data-testid":c});case"select":return r("select",{class:`${le}-field-input`,value:d,disabled:i,onChange:u=>s(u.target.value),"data-testid":c,children:[r("option",{value:"",children:t.placeholder??"\u2014"}),(t.options??[]).map(u=>r("option",{value:u.value,children:u.label??u.value},u.value))]});case"radio":{let u=t.allowOther&&d===Eo;return r("div",{class:`${le}-field-choices`,role:"radiogroup","data-testid":c,children:[(t.options??[]).map(_=>r("label",{class:`${le}-choice`,children:[r("input",{type:"radio",name:`${le}-${t.name}`,checked:d===_.value,disabled:i,onChange:()=>s(_.value)}),r("span",{children:_.label??_.value})]},_.value)),t.allowOther?r("label",{class:`${le}-choice`,children:[r("input",{type:"radio",name:`${le}-${t.name}`,checked:d===Eo,disabled:i,onChange:()=>s(Eo)}),r("span",{children:a.formOther})]}):null,u?r("input",{class:`${le}-field-input`,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:_=>l(_.target.value)}):null]})}case"checkbox":return r("label",{class:`${le}-choice`,children:[r("input",{type:"checkbox",checked:d==="true",disabled:i,onChange:u=>s(u.target.checked?"true":""),"data-testid":c}),r("span",{children:t.placeholder??t.label})]});case"multiselect":{let u=Array.isArray(n)?n:[],_=(m,g)=>s(g?[...u,m]:u.filter(f=>f!==m));return r("div",{class:`${le}-field-choices`,"data-testid":c,children:[(t.options??[]).map(m=>r("label",{class:`${le}-choice`,children:[r("input",{type:"checkbox",checked:u.includes(m.value),disabled:i,onChange:g=>_(m.value,g.target.checked)}),r("span",{children:m.label??m.value})]},m.value)),t.allowOther||(t.options??[]).length===0?r("textarea",{class:`${le}-field-input`,rows:2,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:m=>l(m.target.value)}):null]})}default:return r("input",{class:`${le}-field-input`,type:gu(t.type),value:d,placeholder:t.placeholder,disabled:i,onInput:u=>s(u.target.value),"data-testid":c})}}function gu(e){switch(e){case"number":case"email":case"tel":case"url":case"date":case"time":return e;default:return"text"}}function hu(e){let t={};for(let n of e)n.defaultValue!=null&&(t[n.name]=n.type==="multiselect"?n.defaultValue.split(",").map(o=>o.trim()).filter(Boolean):n.defaultValue);return t}function vu(e,t,n){let o={...t};for(let i of e){let a=n[i.name]?.trim();if(i.type==="radio"&&i.allowOther&&t[i.name]===Eo)o[i.name]=a??"";else if(i.type==="multiselect"&&a){let s=a.split(/[,\n;]+/).map(c=>c.trim()).filter(Boolean),l=Array.isArray(t[i.name])?t[i.name]:[];o[i.name]=[...l,...s]}}return o}var ze=x.cssPrefix;function cl({form:e,strings:t,onSubmit:n,onSkip:o}){return r("div",{class:`${ze}-form-gate`,"data-testid":S.formGate,children:[e.title?r("h3",{class:`${ze}-form-gate-title`,children:e.title}):null,e.description?r("p",{class:`${ze}-form-gate-desc`,children:e.description}):null,r(Io,{fields:e.fields,strings:t,submitLabel:e.submitLabel??t.formSubmit,onSubmit:n,skipLabel:e.skippable?t.formSkip:void 0,onSkip:e.skippable?o:void 0,submitTestId:S.formSubmit,skipTestId:S.formSkip})]})}function dl({marker:e,strings:t,onFill:n}){let o=e.outcome==="skipped",i=o?t.formSkipped:t.formSubmitted,a=e.title?r(ne,{children:[r("span",{children:e.title}),r("span",{class:`${ze}-sr-only`,children:i})]}):r("span",{children:i}),s=e.form?.reviewable??!1,l=!o&&s&&e.values&&Object.keys(e.values).length>0?e.values:null;if(l){let c=d=>e.form?.fields.find(u=>u.name===d)?.label??d;return r("details",{class:`${ze}-form-done`,"data-outcome":e.outcome,"data-testid":S.formDone,children:[r("summary",{class:`${ze}-form-done-summary`,"data-testid":S.formDoneToggle,children:[r(ln,{}),a,r(Dt,{})]}),r("dl",{class:`${ze}-form-answers`,"data-testid":S.formAnswers,children:Object.entries(l).map(([d,u])=>r("div",{class:`${ze}-form-answer`,children:[r("dt",{children:c(d)}),r("dd",{children:u})]},d))})]})}return r("div",{class:`${ze}-form-done`,"data-outcome":e.outcome,"data-testid":S.formDone,role:"status",children:[o?r($s,{}):r(ln,{}),a,o&&e.form?.reopenable&&n?r("button",{type:"button",class:`${ze}-form-done-fill`,"data-testid":S.formFill,onClick:n,children:t.formFillOut}):null]})}var Kr=1,ul=2,pl=4,fl=8,ml=16;function bu(e){switch(e){case Kr:return"href";case ul:return"src";case pl:return"class";case fl:return"checked";case ml:return"start"}}var xu=e=>{switch(e){case 1:return 3;case 2:return 4;case 3:return 5;case 4:return 6;case 5:return 7;default:return 8}},Pu=xu;var _l=24;function jr(e){let t=new Uint32Array(_l);return t[0]=1,{renderer:e,text:"",pending:"",tokens:t,len:0,token:1,fence_end:0,blockquote_idx:0,hr_char:"",hr_chars:0,fence_start:0,spaces:new Uint8Array(_l),indent:"",indent_len:0,table_state:0}}function gl(e){e.pending.length>0&&ve(e,`
|
|
12
12
|
`)}function Q(e){e.text.length!==0&&(console.assert(e.len>0,"Never adding text to root"),e.renderer.add_text(e.renderer.data,e.text),e.text="")}function ce(e){console.assert(e.len>0,"No nodes to end"),e.len-=1,e.token=e.tokens[e.len],e.renderer.end_token(e.renderer.data)}function ee(e,t){(e.tokens[e.len]===24||e.tokens[e.len]===23)&&t!==25&&ce(e),e.len+=1,e.tokens[e.len]=t,e.token=t,e.renderer.add_token(e.renderer.data,t)}function yu(e,t,n){for(;n<=e.len;){if(e.tokens[n]===t)return n;n+=1}return-1}function mt(e,t){for(e.fence_start=0;e.len>t;)ce(e)}function Ao(e,t){let n=0;for(let o=0;o<=e.len&&(t-=e.spaces[o],!(t<0));o+=1)switch(e.tokens[o]){case 9:case 10:case 20:case 25:n=o;break}for(;e.len>n;)ce(e);return t}function Gr(e,t){let n=-1,o=-1;for(let i=e.blockquote_idx+1;i<=e.len;i+=1)if(e.tokens[i]===25){if(e.indent_len<e.spaces[i]){o=-1;break}o=i}else e.tokens[i]===t&&(n=i);return o===-1?n===-1?(mt(e,e.blockquote_idx),ee(e,t),!0):(mt(e,n),!1):(mt(e,o),ee(e,t),!0)}function Vr(e,t){ee(e,25),e.spaces[e.len]=e.indent_len+t,je(e),e.token=103}function je(e){e.indent="",e.indent_len=0,e.pending=""}function qr(e){switch(e){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return!0;default:return!1}}function Su(e){switch(e){case 32:case 58:case 59:case 41:case 44:case 33:case 46:case 63:case 93:case 10:return!0;default:return!1}}function ku(e){return qr(e)||Su(e)}function ve(e,t){for(let n of t){if(e.token===101){switch(n){case" ":e.indent_len+=1;continue;case" ":e.indent_len+=4;continue}let i=Ao(e,e.indent_len);e.indent_len=0,e.token=e.tokens[e.len],i>0&&ve(e," ".repeat(i))}let o=e.pending+n;switch(e.token){case 21:case 1:case 20:case 24:case 23:switch(console.assert(e.text.length===0,"Root should not have any text"),e.pending[0]){case void 0:e.pending=n;continue;case" ":console.assert(e.pending.length===1),e.pending=n,e.indent+=" ",e.indent_len+=1;continue;case" ":console.assert(e.pending.length===1),e.pending=n,e.indent+=" ",e.indent_len+=4;continue;case`
|
|
13
13
|
`:if(console.assert(e.pending.length===1),e.tokens[e.len]===25&&e.token===21){ce(e),je(e),e.pending=n;continue}mt(e,e.blockquote_idx),je(e),e.blockquote_idx=0,e.fence_start=0,e.pending=n;continue;case"#":switch(n){case"#":if(e.pending.length<6){e.pending=o;continue}break;case" ":Ao(e,e.indent_len),ee(e,Pu(e.pending.length)),je(e);continue}break;case">":{let a=yu(e,20,e.blockquote_idx+1);a===-1?(mt(e,e.blockquote_idx),e.blockquote_idx+=1,e.fence_start=0,ee(e,20)):e.blockquote_idx=a,je(e),e.pending=n;continue}case"-":case"*":case"_":if(e.hr_chars===0&&(console.assert(e.pending.length===1,"Pending should be one character"),e.hr_chars=1,e.hr_char=e.pending),e.hr_chars>0){switch(n){case e.hr_char:e.hr_chars+=1,e.pending=o;continue;case" ":e.pending=o;continue;case`
|
|
14
14
|
`:if(e.hr_chars<3)break;Ao(e,e.indent_len),e.renderer.add_token(e.renderer.data,22),e.renderer.end_token(e.renderer.data),je(e),e.hr_chars=0;continue}e.hr_chars=0}if(e.pending[0]!=="_"&&e.pending[1]===" "){Gr(e,23),Vr(e,2),ve(e,o.slice(2));continue}break;case"`":if(e.pending.length<3){if(n==="`"){e.pending=o,e.fence_start=o.length;continue}e.fence_start=0;break}switch(n){case"`":e.pending.length===e.fence_start?(e.pending=o,e.fence_start=o.length):(ee(e,2),je(e),e.fence_start=0,ve(e,o));continue;case`
|
|
@@ -36,5 +36,5 @@ ${i}`:i;continue}o.startsWith("id:")&&(n=o.slice(3).trim())}if(!t||t==="[DONE]")
|
|
|
36
36
|
`?"":n,e.pending="");continue;case"_":case"*":{if(e.token===19||e.token===30||e.token===31||e.token===14)break;let i=12,a=14,s=e.pending[0];if(s==="_"&&(i=13,a=15),e.pending.length===1){if(s===n){e.pending=o;continue}if(n!==" "&&n!==`
|
|
37
37
|
`){Q(e),ee(e,i),e.pending=n;continue}}else{if(s===n){Q(e),ee(e,a),ee(e,i),e.pending="";continue}if(n!==" "&&n!==`
|
|
38
38
|
`){Q(e),ee(e,a),e.pending=n;continue}}break}case"~":if(e.token!==19&&e.token!==16){if(e.pending==="~"){if(n==="~"){e.pending=o;continue}}else if(n!==" "&&n!==`
|
|
39
|
-
`){Q(e),ee(e,16),e.pending=n;continue}}break;case"$":if(e.token!==19&&e.token!==16&&e.pending==="$")if(n==="$"){e.token=105,e.pending=o;continue}else{if(ku(n.charCodeAt(0)))break;Q(e),ee(e,31),e.pending=n;continue}break;case"[":if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n!=="]"){Q(e),ee(e,17),e.pending=n;continue}break;case"!":if(e.token!==19&&n==="["){Q(e),ee(e,19),e.pending="";continue}break;case" ":if(e.pending.length===1&&n===" ")continue;break}if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n==="h"&&(e.pending===" "||e.pending==="")){e.text+=e.pending,e.pending=n,e.token=102;continue}e.text+=e.pending,e.pending=n}Q(e)}function Xr(e){return{add_token:wu,end_token:Cu,add_text:Tu,set_attr:Eu,data:{nodes:[e,,,,,],index:0}}}function wu(e,t){let n=e.nodes[e.index],o;switch(t){case 1:return;case 20:o=document.createElement("blockquote");break;case 2:o=document.createElement("p");break;case 21:o=document.createElement("br");break;case 22:o=document.createElement("hr");break;case 3:o=document.createElement("h1");break;case 4:o=document.createElement("h2");break;case 5:o=document.createElement("h3");break;case 6:o=document.createElement("h4");break;case 7:o=document.createElement("h5");break;case 8:o=document.createElement("h6");break;case 12:case 13:o=document.createElement("em");break;case 14:case 15:o=document.createElement("strong");break;case 16:o=document.createElement("s");break;case 11:o=document.createElement("code");break;case 18:case 17:o=document.createElement("a");break;case 19:o=document.createElement("img");break;case 23:o=document.createElement("ul");break;case 24:o=document.createElement("ol");break;case 25:o=document.createElement("li");break;case 26:let i=o=document.createElement("input");i.type="checkbox",i.disabled=!0;break;case 9:case 10:n=n.appendChild(document.createElement("pre")),o=document.createElement("code");break;case 27:o=document.createElement("table");break;case 28:switch(n.children.length){case 0:n=n.appendChild(document.createElement("thead"));break;case 1:n=n.appendChild(document.createElement("tbody"));break;default:n=n.children[1]}o=document.createElement("tr");break;case 29:o=document.createElement(n.parentElement?.tagName==="THEAD"?"th":"td");break;case 30:o=document.createElement("equation-block");break;case 31:o=document.createElement("equation-inline");break}e.nodes[++e.index]=n.appendChild(o)}function Cu(e){e.index-=1}function Tu(e,t){e.nodes[e.index].appendChild(document.createTextNode(t))}function Eu(e,t,n){e.nodes[e.index].setAttribute(bu(t),n)}function Ro({textSig:e,doneSig:t}){let n=M(null);return w(()=>{let o=n.current;if(!o)return;o.classList.add(`${x.cssPrefix}-md`);let i=Xr(o),a=jr(i),s=0,l=qe(()=>{let u=e.value,_=t.value;u.length<s&&(o.replaceChildren(),i=Xr(o),a=jr(i),s=0);let m=u.slice(s);m&&ve(a,m),s=u.length,_&&gl(a)}),c=new MutationObserver(u=>{for(let _ of u)for(let m of _.addedNodes){if(!(m instanceof HTMLElement))continue;let g=m.matches?.("a")?[m]:[...m.querySelectorAll?.("a")??[]];for(let f of g)hl(f)}});c.observe(o,{childList:!0,subtree:!0});for(let u of o.querySelectorAll("a"))hl(u);let d=u=>{let _=u.target?.closest?.("a");if(!_||!(_ instanceof HTMLAnchorElement))return;let m=_.getAttribute("href")??"";!m||m.startsWith("#")||(u.preventDefault(),window.open(m,"_blank","noopener,noreferrer"))};return o.addEventListener("click",d),()=>{l(),c.disconnect(),o.removeEventListener("click",d)}},[e,t]),r("div",{ref:n})}function vl({text:e}){let t=xe(()=>H(e),[e]),n=xe(()=>H(!0),[]);return r(Ro,{textSig:t,doneSig:n})}function hl(e){let t=e.getAttribute("href")??"";if(!t||t.startsWith("#"))return;e.target!=="_blank"&&(e.target="_blank");let n=new Set((e.rel||"").split(/\s+/).filter(Boolean));n.add("noopener"),n.add("noreferrer"),e.rel=[...n].join(" ")}var ye=x.cssPrefix;function bl(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/[-_]+/g," ")}function xl({part:e,strings:t,active:n,onDecision:o}){let i=re(()=>e.approvalSig.value),a=re(()=>e.inputSig.value),s=_t("");if(i.value?.approved!==void 0){let d=i.value;return r("div",{class:`${ye}-tool-approval ${ye}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${ye}-tool-decided-label`,"data-approved":d?.approved?"true":"false",children:d?.approved?t.approved:t.rejected}),r("strong",{class:`${ye}-tool-title`,children:bl(e.toolName)}),d?.reason?r("span",{class:`${ye}-tool-decided-value`,children:d.reason}):null]})}let c=Au(a.value);return r("div",{class:`${ye}-tool-approval`,"data-testid":S.toolApproval,children:[r("div",{class:`${ye}-tool-head`,children:[r("span",{class:`${ye}-tool-badge`,children:t.approvalRequired}),r("strong",{class:`${ye}-tool-title`,children:bl(e.toolName)})]}),c?r("pre",{class:`${ye}-tool-args`,children:c}):null,n?r(ne,{children:[r("input",{class:`${ye}-field-input`,value:s.value,placeholder:t.approvalReason,onInput:d=>{s.value=d.target.value}}),r("div",{class:`${ye}-form-actions`,children:[r("button",{type:"button",class:`${ye}-tool-reject`,onClick:()=>o(e.toolCallId,!1,s.value.trim()||void 0),"data-testid":S.toolReject,children:t.reject}),r("button",{type:"button",class:`${ye}-tool-approve`,onClick:()=>o(e.toolCallId,!0,s.value.trim()||void 0),"data-testid":S.toolApprove,children:t.approve})]})]}):r("p",{class:`${ye}-tool-stale-note`,children:t.stepNoLongerActive})]})}function Au(e){if(e==null)return"";try{let t=typeof e=="string"?e:JSON.stringify(e,null,2);return t.length>600?`${t.slice(0,600)}\u2026`:t}catch{return""}}function yl(e){let t=e&&typeof e=="object"?e:{},n=t.responseType;return{title:pn(t.title),question:pn(t.question)??"Please provide the missing information.",description:pn(t.description),placeholder:pn(t.placeholder),responseType:n==="single-choice"||n==="multi-choice"||n==="confirmation"||n==="free-text"?n:"free-text",choices:Array.isArray(t.choices)?t.choices:void 0,allowOther:typeof t.allowOther=="boolean"?t.allowOther:void 0,required:typeof t.required=="boolean"?t.required:!0,defaultValues:Array.isArray(t.defaultValues)?t.defaultValues.filter(o=>typeof o=="string"):void 0,minSelections:Pl(t.minSelections),maxSelections:Pl(t.maxSelections),validationHint:pn(t.validationHint)}}function Sl(e){if(e.responseType==="confirmation")return[];let t=(e.choices??[]).map(Ru).filter(i=>i!==null),n="textarea";e.responseType==="single-choice"&&t.length>0?n="radio":e.responseType==="multi-choice"&&(n="multiselect");let o=n==="multiselect"?e.defaultValues?.join(", "):e.defaultValues?.[0];return[{name:"answer",label:e.question,type:n,placeholder:e.placeholder,required:e.required??!0,defaultValue:o,options:t.length>0?t:void 0,allowOther:e.allowOther,validationHint:e.validationHint,validation:n==="multiselect"?{minSelections:e.minSelections,maxSelections:e.maxSelections}:void 0}]}function Ru(e){return typeof e=="string"?e?{value:e,label:e}:null:e&&typeof e.value=="string"&&e.value?{value:e.value,label:e.label??e.value,description:e.description}:null}function pn(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function Pl(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}var Pe=x.cssPrefix;function wl({part:e,strings:t,active:n,onSubmit:o,onDecision:i}){let a=re(()=>e.stateSig.value),s=re(()=>e.approvalSig.value),l=re(()=>yl(e.inputSig.value)),c=a.value==="output"||a.value==="error"||s.value?.approved!==void 0,d=s.value!==void 0,u=(g,f)=>{d?i(e.toolCallId,f,g):l.value.responseType==="confirmation"?o(e.toolCallId,{confirmed:f}):o(e.toolCallId,f?{answer:g}:{})};if(c)return r(Lu,{part:e,strings:t});if(!n)return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-stale`,"data-testid":S.toolAskInput,children:[r(kl,{strings:t,title:l.value.title??l.value.question}),r("p",{class:`${Pe}-tool-stale-note`,children:t.stepNoLongerActive})]});let _=l.value,m=_.responseType==="confirmation";return r("div",{class:`${Pe}-tool-ask-input`,"data-testid":S.toolAskInput,children:[r(kl,{strings:t,title:_.title}),_.description?r("p",{class:`${Pe}-tool-desc`,children:_.description}):null,m?r("p",{class:`${Pe}-tool-question`,children:_.question}):null,m?r("div",{class:`${Pe}-form-actions`,children:[r("button",{type:"button",class:`${Pe}-form-skip`,onClick:()=>u(void 0,!1),"data-testid":S.toolInputSkip,children:t.reject}),r("button",{type:"button",class:`${Pe}-form-submit`,onClick:()=>u(void 0,!0),"data-testid":S.toolInputSubmit,children:t.approve})]}):r(Io,{fields:Sl(_),strings:t,submitLabel:t.inputSubmit,onSubmit:g=>u(g.answer??Object.values(g).join(", "),!0),skipLabel:_.required===!1?t.inputSkip:void 0,onSkip:_.required===!1?()=>u(void 0,!1):void 0,submitTestId:S.toolInputSubmit,skipTestId:S.toolInputSkip})]})}function kl({strings:e,title:t}){return r("div",{class:`${Pe}-tool-head`,children:[r("span",{class:`${Pe}-tool-badge`,children:e.inputRequired}),t?r("strong",{class:`${Pe}-tool-title`,children:t}):null]})}function Lu({part:e,strings:t}){let n=re(()=>e.outputSig.value),o=re(()=>e.approvalSig.value),i=o.value?.approved!==void 0?o.value.reason??"":Mu(n.value),a=o.value?.approved===!1;return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${Pe}-tool-decided-label`,children:a?t.inputSkip:t.inputSubmitted}),r("span",{class:`${Pe}-tool-decided-value`,children:a?"":i||t.inputSubmitted})]})}function Mu(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="object"){let t=e;return"confirmed"in t?t.confirmed?"Yes":"No":Object.values(t).filter(n=>typeof n=="string"||typeof n=="number").join(", ")}return String(e)}function Cl({part:e,strings:t}){let n=x.cssPrefix;return r("span",{class:`${n}-tool-chip`,role:"status",children:[r("span",{children:[t.usedTool,":"]}),r("strong",{children:e.toolName})]})}var Ae=x.cssPrefix;function Tl({message:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:a=!1,tool:s}){let c=re(()=>e.partsSig.value).value,d=re(()=>e.partsSig.value.some(h=>h.kind==="text"&&h.textSig.value.length>0)),u=re(()=>o&&e.partsSig.value.some(h=>h.kind==="reasoning")),_=e.role==="assistant"&&e.status==="streaming",m=n==="buffered"&&_,g=_&&!d.value,f=_&&!m&&!(u.value&&g),v=Nu(e.createdAt);return r("div",{class:`${Ae}-bubble-row`,"data-role":e.role,"data-testid":he(S.messageBubble,e.id),children:r("div",{class:`${Ae}-bubble-col`,children:[r("div",{class:`${Ae}-bubble`,children:[m?r(Bu,{label:t.loading}):c.map(h=>r(Du,{part:h,active:g,strings:t,showReasoning:o,showToolCalls:i,interactive:a,tool:s},Hu(h))),f&&r(Fu,{}),e.status==="error"&&e.errorText?r("div",{class:`${Ae}-error`,role:"alert",children:r("span",{children:e.errorText})}):null]}),v?r("time",{class:`${Ae}-bubble-time`,dateTime:v.iso,title:v.full,children:v.short}):null]})})}function Nu(e){if(typeof e!="number"||!Number.isFinite(e))return null;try{let t=new Date(e);return{short:t.toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit"}),full:t.toLocaleString(void 0,{dateStyle:"full",timeStyle:"short"}),iso:t.toISOString()}}catch{return null}}function Du({part:e,active:t,strings:n,showReasoning:o,showToolCalls:i,interactive:a,tool:s}){switch(e.kind){case"text":return r(Ro,{textSig:e.textSig,doneSig:e.doneSig});case"reasoning":return o?r($u,{part:e,active:t,strings:n}):null;case"tool":return r(Ou,{part:e,strings:n,showToolCalls:i,interactive:a,tool:s});case"file":return e.mediaType.startsWith("image/")?r("img",{src:e.url,alt:"",loading:"lazy"}):r("a",{href:e.url,target:"_blank",rel:"noreferrer noopener",children:e.url});case"source":return null}}function Ou({part:e,strings:t,showToolCalls:n,interactive:o,tool:i}){let a=re(()=>e.stateSig.value),s=re(()=>e.approvalSig.value!==void 0);if(i?.humanInLoop){if(po(e.toolName)||a.value==="awaiting-input")return r(wl,{part:e,strings:t,active:o,onSubmit:i.onResult,onDecision:i.onDecision});if(s.value||a.value==="awaiting-approval")return r(xl,{part:e,strings:t,active:o,onDecision:i.onDecision})}return n?r(Cl,{part:e,strings:t}):null}function $u({part:e,active:t,strings:n}){return r("details",{class:`${Ae}-reasoning`,open:t,"data-active":t?"true":void 0,children:[r("summary",{class:`${Ae}-reasoning-summary`,children:r("span",{class:`${Ae}-reasoning-label`,children:t?n.thinking:n.thoughts})}),r("div",{class:`${Ae}-reasoning-body`,children:r(Ro,{textSig:e.textSig,doneSig:e.doneSig})})]})}function Hu(e){switch(e.kind){case"text":case"reasoning":return`${e.kind}:${e.id}`;case"tool":return`tool:${e.toolCallId}`;case"file":return`file:${e.url}`;case"source":return`source:${e.sourceId}`}}function Fu(){return r("span",{class:`${Ae}-typing`,"aria-hidden":"true",children:[r("span",{}),r("span",{}),r("span",{})]})}function Bu({label:e}){return r("span",{class:`${Ae}-loading`,role:"status",children:[r("span",{class:`${Ae}-loading-spinner`,"aria-hidden":"true"}),r("span",{class:`${Ae}-loading-label`,children:e})]})}var Ht=x.cssPrefix,Jr=120,zu=350,Uu=1200;function El({messagesSig:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,loading:a,idle:s,tool:l,form:c,formMarkers:d,onFillForm:u}){let _=M(null),m=re(()=>e.value),[g,f]=T(!1),[v,h]=T(!1),I=M(!1),b=M(!1),C=M(!1),N=M(0),z=()=>C.current||performance.now()-N.current<zu,K=M(0),$=y=>{K.current=performance.now(),y.scrollTop=y.scrollHeight},de=m.value[0]?.id;Tr(()=>{let y=_.current;if(!y||m.value.length===0||(I.current=!0,!m.value.some(Je=>Je.role==="user")))return;let D=()=>$(y);D();let me=new ResizeObserver(D);me.observe(y);let we=new MutationObserver(D);we.observe(y,{childList:!0,subtree:!0,characterData:!0});let Ce=setTimeout(()=>{me.disconnect(),we.disconnect()},300);return()=>{me.disconnect(),we.disconnect(),clearTimeout(Ce)}},[de]);let U=M(0);w(()=>{let y=_.current,D=m.value,me=U.current;if(U.current=D.length,!y||!I.current)return;if(D.slice(me).some(Ce=>Ce.role==="user")){b.current=!1,$(y);return}if(b.current||z())return;y.scrollHeight-y.scrollTop-y.clientHeight<Jr&&$(y)},[m.value.length]),w(()=>{let y=_.current;if(!y)return;let D=m.value.at(-1);if(!D)return;let me=()=>{if(b.current||z())return;y.scrollHeight-y.scrollTop-y.clientHeight<Jr*2&&$(y)};if(D.status!=="streaming"){let Ce=requestAnimationFrame(me);return()=>cancelAnimationFrame(Ce)}me();let we=new MutationObserver(me);return we.observe(y,{childList:!0,subtree:!0,characterData:!0}),()=>we.disconnect()},[m.value]);let q=c?.form.id;Tr(()=>{let y=_.current;!y||!q||b.current||m.value.some(D=>D.role==="user")&&$(y)},[q]),w(()=>{let y=_.current;if(!y)return;let D=()=>f(y.scrollHeight-y.scrollTop-y.clientHeight>Jr*2),me,we=()=>{D(),performance.now()-K.current>150&&(b.current=y.scrollHeight-y.scrollTop-y.clientHeight>8),h(!0),clearTimeout(me),me=setTimeout(()=>h(!1),Uu)},Ce=()=>{b.current=!0},Je=Ye=>{Ye.deltaY<0&&Ce()},Bt=0,ht=Ye=>{Bt=Ye.touches[0]?.clientY??0,C.current=!0},zt=Ye=>{(Ye.touches[0]?.clientY??0)>Bt+4&&Ce()},Re=()=>{C.current=!1,N.current=performance.now()},Ut=()=>{C.current=!0};return y.addEventListener("scroll",we,{passive:!0}),y.addEventListener("wheel",Je,{passive:!0}),y.addEventListener("touchstart",ht,{passive:!0}),y.addEventListener("touchmove",zt,{passive:!0}),y.addEventListener("touchend",Re,{passive:!0}),y.addEventListener("touchcancel",Re,{passive:!0}),y.addEventListener("pointerdown",Ut,{passive:!0}),window.addEventListener("pointerup",Re,{passive:!0}),window.addEventListener("pointercancel",Re,{passive:!0}),D(),()=>{y.removeEventListener("scroll",we),y.removeEventListener("wheel",Je),y.removeEventListener("touchstart",ht),y.removeEventListener("touchmove",zt),y.removeEventListener("touchend",Re),y.removeEventListener("touchcancel",Re),y.removeEventListener("pointerdown",Ut),window.removeEventListener("pointerup",Re),window.removeEventListener("pointercancel",Re),clearTimeout(me)}},[]);let We=()=>{let y=_.current;y&&(b.current=!1,$(y))},ke=[],k="",J=m.value.at(-1)?.id,Z=[...d??[]].toSorted((y,D)=>(y.createdAt??1/0)-(D.createdAt??1/0)),pe=y=>r(dl,{marker:y,strings:t,onFill:!c&&u?()=>u(y.formId):void 0},y.key),fe=y=>{for(let D=Z[0];D?.createdAt!==void 0&&!(y!==void 0&&D.createdAt>y);D=Z[0])Z.shift(),ke.push(pe(D))};for(let y of m.value){fe(y.createdAt);let D=Wu(y.createdAt);D&&D!==k&&(ke.push(r("div",{class:`${Ht}-date-divider`,children:r("span",{class:`${Ht}-date-pill`,title:Gu(y.createdAt),children:Vu(y.createdAt,t)})},`day:${D}`)),k=D),ke.push(r(Tl,{message:y,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:!!s&&y.id===J,tool:l},y.id))}for(let y of Z)ke.push(pe(y));return r("div",{class:`${Ht}-list-wrap`,children:[r("div",{ref:_,class:`${Ht}-list`,role:"log","aria-live":"polite","aria-relevant":"additions text","data-scrolling":v?"true":void 0,children:[a&&m.value.length===0?r("div",{class:`${Ht}-list-loading`,role:"status",children:t.conversationLoading}):null,ke,c?r(cl,{form:c.form,strings:t,onSubmit:c.onSubmit,onSkip:c.onSkip}):null]}),g?r("button",{type:"button",class:`${Ht}-jump`,onClick:We,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":S.scrollToBottom,children:r(zs,{})}):null]})}function Wu(e){if(typeof e!="number"||!Number.isFinite(e))return"";let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function Gu(e){if(typeof e!="number"||!Number.isFinite(e))return"";try{return new Date(e).toLocaleDateString(void 0,{dateStyle:"full"})}catch{return""}}function Vu(e,t){let n=new Date(e),o=a=>new Date(a.getFullYear(),a.getMonth(),a.getDate()).getTime(),i=Math.round((o(new Date)-o(n))/864e5);return i<=0?t.dateToday:i===1?t.dateYesterday:i<7?n.toLocaleDateString(void 0,{weekday:"long"}):n.toLocaleDateString(void 0,{month:"long",day:"numeric",year:"numeric"})}var Ku=["today","yesterday","lastWeek","older"];function qu(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return"older";let o=Math.floor((Il(e)-Il(n))/(1440*60*1e3));return o<=0?"today":o===1?"yesterday":o<7?"lastWeek":"older"}function Al(e,t){let n=new Map;for(let o of t){let i=qu(e,o.lastMessageAt),a=n.get(i);a?a.push(o):n.set(i,[o])}return Ku.filter(o=>n.has(o)).map(o=>({bucket:o,conversations:n.get(o)}))}function Il(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}var ju=B.scope("history"),Xu={today:"dateToday",yesterday:"dateYesterday",lastWeek:"dateLastWeek",older:"dateOlder"};function Ju(e,t,n){let o=Date.parse(e);return Number.isFinite(o)?new Date(o).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:"numeric",minute:"2-digit"}).format(o):t-o<10080*60*1e3?new Intl.DateTimeFormat(n,{weekday:"short"}).format(o):new Intl.DateTimeFormat(n,{month:"short",day:"numeric"}).format(o):""}function Lo({transport:e,strings:t,visitorId:n,onSelect:o,onNewConversation:i}){let a=x.cssPrefix,s=e.peekConversations({visitorId:n}),[l,c]=T(s?"loaded":"loading"),[d,u]=T(s?.conversations??[]);w(()=>{let v=!1;return e.listConversations({visitorId:n}).then(h=>{v||(u(h.conversations??[]),c("loaded"))}).catch(h=>{v||(ju.warn("listConversations failed",{err:h}),c("error"))}),()=>{v=!0}},[e,n]);let _=i?r("div",{class:`${a}-history-footer`,children:r("button",{type:"button",class:`${a}-history-new`,onClick:i,"data-testid":S.sidebarNewConversation,children:[r(Ps,{}),t.newConversation]})}):null;if(l==="loading")return r(ne,{children:[r("div",{class:`${a}-history`,"aria-busy":"true","aria-label":t.historyLoading,children:r("div",{class:`${a}-history-group`,"aria-hidden":"true",children:[r("div",{class:`${a}-history-heading`,children:r("span",{class:`${a}-history-skeleton-line ${a}-skeleton-heading`})}),r("div",{class:`${a}-history-card`,children:[0,1,2].map(v=>r("div",{class:`${a}-history-skeleton-item`,children:[r("span",{class:`${a}-history-skeleton-avatar`}),r("span",{class:`${a}-history-skeleton-body`,children:[r("span",{class:`${a}-history-skeleton-line ${a}-skeleton-title`}),r("span",{class:`${a}-history-skeleton-line ${a}-skeleton-preview`})]})]},v))})]})}),_]});if(l==="error"||d.length===0)return r(ne,{children:[r("div",{class:`${a}-history-empty`,children:t.historyEmpty}),_]});let m=Date.now(),g=typeof navigator<"u"?navigator.language:"en",f=Al(m,d);return r(ne,{children:[r("div",{class:`${a}-history`,role:"list",children:f.map(v=>r("div",{class:`${a}-history-group`,children:[r("div",{class:`${a}-history-heading`,children:t[Xu[v.bucket]]}),r("div",{class:`${a}-history-card`,children:v.conversations.map(h=>r("button",{type:"button",role:"listitem",class:`${a}-history-item`,onClick:()=>o(h),"data-closed":h.canContinue?void 0:"true","data-unread":(h.unreadCount??0)>0?"true":void 0,"data-testid":he(S.historyItem,h.conversationId),children:[r("span",{class:`${a}-history-avatar`,"aria-hidden":"true",children:r(Or,{})}),r("span",{class:`${a}-history-body`,children:[r("span",{class:`${a}-history-row`,children:[r("span",{class:`${a}-history-title`,children:h.title}),r("span",{class:`${a}-history-time`,children:Ju(h.lastMessageAt,m,g)})]}),r("span",{class:`${a}-history-row`,children:[r("span",{class:`${a}-history-preview`,children:h.preview??(h.canContinue?t.historyContinue:t.conversationClosed)}),(h.unreadCount??0)>0?r("span",{class:`${a}-history-dot`}):null]})]})]},h.conversationId))})]},v.bucket))}),_]})}var Rl=x.cssPrefix;function Ll({suggestions:e,onPick:t}){return e.length===0?null:r("div",{class:`${Rl}-suggestions`,role:"group","aria-label":"Suggested replies",children:e.map((n,o)=>r("button",{type:"button",class:`${Rl}-suggestion`,onClick:()=>t(n),"data-testid":he(S.suggestion,o),children:n.label},n.id))})}var Se=x.cssPrefix;function Ml(e){let{options:t,onClose:n}=e,o=t.strings,i=M(null);w(()=>{let c=i.current;if(!c)return;let d=ko(c),u=_=>{_.key==="Escape"&&n?.()};return c.addEventListener("keydown",u),()=>{d(),c.removeEventListener("keydown",u)}},[n]);let a=M(null),s=F(c=>{a.current?.attachFromDrop(c)},[]),{visible:l}=To({containerRef:i,onDrop:s});return yo(i.current,t.mode==="modal"),r("div",{ref:i,class:`${Se}-panel`,role:"dialog","aria-modal":"false","aria-label":o.panelTitle,style:{position:"relative"},"data-testid":S.panel,children:[r(Yr,{...e,containerEl:i.current,dragOver:l,composerAttachApiRef:a}),r(Qr,{poweredBy:e.options.poweredBy})]})}function Yr(e){let{options:t,transport:n,feedback:o,bus:i,panelSize:a,view:s,canSend:l,isStreaming:c,loadingMessages:d,messagesSig:u,agent:_,suggestions:m,initialWidgetSize:g,visitorId:f,onClose:v,onBack:h,onClear:I,onToggleHistory:b,onSelectHistoryConversation:C,onNewConversation:N,onWidgetSizeChange:z,onSend:K,onStop:$,onSuggestion:de,activeForm:U,formMarkers:q,onFormSubmit:We,onFormSkip:ke,onFormFill:k,tool:J,containerEl:Z,dragOver:pe,composerAttachApiRef:fe}=e,y=t.strings,D;return U?D=null:l?D=r(ne,{children:[r(Ll,{suggestions:m,onPick:de}),r(ol,{options:t,transport:n,feedback:o,bus:i,isStreaming:c,onSend:K,onStop:$,attachApiRef:fe})]}):D=r(Qu,{label:y.conversationClosed,ctaLabel:y.startNewConversation,onNewConversation:I}),r(ne,{children:[s==="history"?r(Yu,{strings:y,onBack:b,onClose:v,showClose:So(t.mode,a,t.actions)}):r("header",{class:`${Se}-header`,"data-testid":S.panelHeader,children:[h?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:h,"aria-label":y.moduleBack,title:y.moduleBack,children:r(cn,{})}):null,_?r(el,{agent:_,strings:y}):r("h1",{children:y.panelTitle}),r(Be,{panelProps:e,variant:"chat"})]}),s==="history"?r(Lo,{transport:n,strings:y,visitorId:f,onSelect:me=>C(me.conversationId),onNewConversation:N}):r(ne,{children:[r(rl,{visible:pe,strings:y}),r(El,{messagesSig:u,strings:y,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,loading:d,idle:!c,tool:J,form:U?{form:U,onSubmit:We,onSkip:ke}:null,formMarkers:q,onFillForm:k}),D,r(Zu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?r(Po,{panelEl:Z,resize:t.size.resize,position:t.position,initialSize:g,onSizeChange:z,strings:y}):null]})}function Yu({strings:e,onBack:t,onClose:n,showClose:o}){return r("header",{class:`${Se}-header`,children:[r("button",{type:"button",class:`${Se}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:r(cn,{})}),r("h1",{children:e.historyTitle}),o?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null]})}function Qu({label:e,ctaLabel:t,onNewConversation:n}){return r("div",{class:`${Se}-readonly-banner`,role:"note",children:[r("span",{class:`${Se}-readonly-label`,children:e}),r("button",{type:"button",class:`${Se}-readonly-cta`,onClick:n,children:t})]})}function Zu({disclaimer:e}){return e?r("div",{class:`${Se}-composer-footer`,children:r("div",{class:`${Se}-disclaimer`,children:e})}):null}function Qr({poweredBy:e}){return e?r("div",{class:`${Se}-poweredby-bar`,children:r(ep,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function ep({logoUrl:e,text:t,href:n}){let o=r(ne,{children:[e?r("img",{class:`${Se}-poweredby-logo`,src:e,alt:"",loading:"lazy"}):null,t?r("span",{children:t}):null]});return n?r("a",{class:`${Se}-poweredby`,href:n,target:"_blank",rel:"noopener noreferrer",children:o}):r("span",{class:`${Se}-poweredby`,children:o})}function Nl(e){let t=M(e);t.current=e;let n=M(null);return n.current??(n.current=tp(t)),n.current}function tp(e){let t=H(null),n=new Set,o=c=>`${e.current.conversationId()??""}:${c}`,i=c=>c.frequency==="always"?!1:c.frequency==="conversation"?n.has(o(c.id)):c.id in e.current.persistence.loadFormsDone(),a=(c,d)=>{if(t.value)return;let u=e.current;if(c==="manual"){let _=u.forms.list.find(m=>m.id===d);_&&(t.value={form:_,trigger:"manual"});return}for(let _ of u.forms.byTrigger[c]??[]){let m=_.triggers.find(g=>g.kind===c);if(!(!m||!np(m,u)||i(_)||!op(_,u))){t.value={form:_,trigger:c};return}}},s=(c,d)=>{let u=t.value;if(!u)return;t.value=null;let{form:_,trigger:m}=u;_.frequency==="conversation"?n.add(o(_.id)):_.frequency!=="always"&&e.current.persistence.saveFormDone(_.id),e.current.onComplete(_,m,c,d)};return{activeForm:t,fire:a,refresh:()=>{let c=t.value;if(!c)return;let d=e.current.forms.list.find(u=>u.id===c.form.id);d&&d!==c.form&&(t.value={form:d,trigger:c.trigger})},complete:c=>s(c,!1),skip:()=>s({},!0)}}function np(e,t){return e.kind==="after-messages"?t.messageCount()>=Number(e.param??0):e.kind==="page-area"?t.pageArea()===e.param:!0}function op(e,t){let n=e.when;if(!n)return!0;if(n.missingContext?.length){let i=t.userContext()??{};if(n.missingContext.some(a=>i[a]!==void 0&&i[a]!==""))return!1}if(n.pageArea&&!(Array.isArray(n.pageArea)?n.pageArea:[n.pageArea]).includes(t.pageArea()??""))return!1;let o=t.messageCount();return!(n.minMessages!=null&&o<n.minMessages||n.maxMessages!=null&&o>n.maxMessages)}function Dl(e){let t=x.cssPrefix,{site:n,blocks:o,strings:i,collapsed:a}=e,s=o?.navigation??[],l=o?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return r("aside",{class:`${t}-sidebar`,"data-collapsed":a?"true":"false","data-testid":S.sidebar,children:[r("div",{class:`${t}-sidebar-header`,children:[r(rp,{site:n}),r("button",{type:"button",class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?"false":"true",title:c,onClick:e.onToggleCollapsed,"data-testid":S.sidebarToggle,children:r(ip,{collapsed:a})})]}),a?null:r(ne,{children:[s.length>0?r("nav",{class:`${t}-sidebar-section`,"data-section":"navigation",children:r(ap,{items:s})}):null,l.length>0?r("div",{class:`${t}-sidebar-section`,"data-section":"link-cards",children:r(sp,{items:l})}):null,e.showConversations?r("div",{class:`${t}-sidebar-conversations`,children:r(Lo,{transport:e.transport,strings:e.strings,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function rp({site:e}){let t=x.cssPrefix;if(e?.logo?.url){let n=e.logo.alt??e.title??"Logo";return r("picture",{children:[e.logoDark?.url?r("source",{srcset:e.logoDark.url,media:"(prefers-color-scheme: dark)"}):null,r("img",{class:`${t}-sidebar-logo`,src:e.logo.url,alt:n})]})}return r("div",{class:`${t}-sidebar-title`,children:e?.title??x.name})}function ip({collapsed:e}){return r("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","aria-hidden":"true",children:e?r("polyline",{points:"9 6 15 12 9 18"}):r("polyline",{points:"15 6 9 12 15 18"})})}function ap({items:e}){let t=x.cssPrefix;return r("ul",{class:`${t}-sidebar-nav`,children:e.map(n=>r("li",{children:r("a",{class:`${t}-sidebar-nav-item`,href:n.href,target:n.href?"_blank":void 0,rel:n.href?"noreferrer":void 0,children:[n.icon?r("span",{class:`${t}-sidebar-nav-icon`,"data-icon":n.icon}):null,r("span",{class:`${t}-sidebar-nav-label`,children:n.label})]})},n.id??n.label))})}function sp({items:e}){let t=x.cssPrefix;return r("div",{class:`${t}-sidebar-cards`,children:e.map(n=>r("a",{class:`${t}-sidebar-card`,href:n.href,target:n.href?"_blank":void 0,rel:n.href?"noreferrer":void 0,children:[r("div",{class:`${t}-sidebar-card-label`,children:n.label}),n.description?r("div",{class:`${t}-sidebar-card-desc`,children:n.description}):null]},n.id??n.label))})}var Ol=x.cssPrefix;function $l(e){return r("main",{class:`${Ol}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?"true":"false",children:[r(Dl,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,visitorId:e.visitorId,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),r("section",{class:`${Ol}-page-chat`,"aria-label":"Chat",children:e.children})]})}var Hl=e=>Object.fromEntries(e.map(t=>[t,[]]));function Fl(e,t,n){let o=H({activeTab:e,stacks:Hl(t)});return{sig:o,switchTab(i){o.value.activeTab!==i&&(o.value={...o.value,activeTab:i},n?.(i))},push(i){let a=o.value,s=a.stacks[a.activeTab]??[];o.value={...a,stacks:{...a.stacks,[a.activeTab]:[...s,i]}}},pop(){let i=o.value,a=i.stacks[i.activeTab]??[];a.length!==0&&(o.value={...i,stacks:{...i.stacks,[i.activeTab]:a.slice(0,-1)}})},reset(i){o.value={activeTab:i,stacks:Hl(t)}}}}var Bl=e=>e.stacks[e.activeTab]??[],zl=e=>Bl(e).at(-1),Ul=e=>Bl(e).length===0;var Wl={Icon:dn};var rt=x.cssPrefix;function Mo({title:e,actions:t}){return r("header",{class:`${rt}-back-header`,"data-variant":"title",children:[r("span",{class:`${rt}-back-spacer`,"aria-hidden":"true"}),r("h1",{class:`${rt}-back-title`,children:e}),t??r("span",{class:`${rt}-back-spacer`,"aria-hidden":"true"})]})}function No({title:e,backLabel:t,onBack:n,actions:o,testid:i}){return r("header",{class:`${rt}-back-header`,"data-testid":i,children:[r("button",{type:"button",class:`${rt}-icon-btn`,onClick:n,"aria-label":t,title:t,children:r(cn,{})}),r("h1",{class:`${rt}-back-title`,children:e}),o??r("span",{class:`${rt}-back-spacer`,"aria-hidden":"true"})]})}var Ft=x.cssPrefix;function Gl({placeholder:e,onActivate:t}){return r("button",{type:"button",class:`${Ft}-home-search`,onClick:t,"data-testid":S.homeSearch,children:[r("span",{class:`${Ft}-home-search-text`,children:e}),r("span",{class:`${Ft}-home-search-icon`,"aria-hidden":"true",children:r(Hr,{})})]})}function Vl({placeholder:e,value:t,onInput:n}){return r("div",{class:`${Ft}-home-search`,"data-input":"true",children:[r("input",{type:"search",class:`${Ft}-home-search-input`,placeholder:e,value:t,onInput:o=>n(o.currentTarget.value),"data-testid":S.helpSearch}),r("span",{class:`${Ft}-home-search-icon`,"aria-hidden":"true",children:r(Hr,{})})]})}var fn=x.cssPrefix;function Do({title:e,subtitle:t,onClick:n,testid:o}){return r("button",{type:"button",class:`${fn}-list-row`,onClick:n,"data-testid":o,children:[r("span",{class:`${fn}-list-row-body`,children:[r("span",{class:`${fn}-list-row-title`,children:e}),t?r("span",{class:`${fn}-list-row-sub`,children:t}):null]}),r("span",{class:`${fn}-list-row-chevron`,"aria-hidden":"true",children:r(Dt,{})})]})}var Kl=x.cssPrefix;function De({tone:e="info",message:t,onRetry:n,strings:o}){return r("div",{class:`${Kl}-module-empty`,role:e==="error"?"alert":"status","aria-live":"polite",children:[r("span",{children:t}),n?r("button",{type:"button",class:`${Kl}-module-retry`,onClick:n,children:o.errorRetry}):null]})}var gt=x.cssPrefix,lp=B.scope("help"),cp=(e,t)=>t.url?e.push({kind:"iframe",url:t.url,title:t.title}):e.push({kind:"content",id:t.id,title:t.title});function dp(e){let t=new Map;for(let n of e){let o=n.categories?.[0]??"";(t.get(o)??t.set(o,[]).get(o)).push(n)}return[...t.entries()]}function ql(e,t){let n=t.toLowerCase(),o=n.indexOf(e);if(o!==-1)return 100-Math.min(o,99);let i=0;for(let a of e){if(i=n.indexOf(a,i),i===-1)return 0;i+=1}return 1}function _p(e,t){let n=t.toLowerCase().trim();return n?e.map(o=>({item:o,score:Math.max(ql(n,o.title)*2,ql(n,o.description??""))})).filter(o=>o.score>0).toSorted((o,i)=>i.score-o.score).map(o=>o.item):[]}function jl({article:e,nav:t}){return r(Do,{title:e.title,subtitle:e.description,onClick:()=>cp(t,e),testid:he(S.helpArticle,e.id)})}function up({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(""),[f,v]=T(0);w(()=>{let b=!1;return l("loading"),e.listContent({tags:a,sortBy:"order",limit:100}).then(C=>{b||(_(C.items??[]),l("loaded"))}).catch(C=>{b||(lp.warn("listContent (help) failed",{err:C}),d(ut(C,t)),l("error"))}),()=>{b=!0}},[e,a,f]);let h=xe(()=>_p(u,m),[u,m]);function I(){return m.trim().length>0?h.length===0?r(De,{message:t.helpSearchEmpty,strings:t}):r("div",{class:`${gt}-help-card`,children:h.map(b=>r(jl,{article:b,nav:o},b.id))}):s==="loading"?r(De,{message:t.helpLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>v(b=>b+1),strings:t}):u.length===0?r(De,{message:t.helpEmpty,strings:t}):dp(u).map(([b,C])=>r("section",{class:`${gt}-help-group`,children:[b?r("h2",{class:`${gt}-help-section-title`,children:b}):null,r("div",{class:`${gt}-help-card`,children:C.map(N=>r(jl,{article:N,nav:o},N.id))})]},b))}return r("div",{class:`${gt}-module`,children:[r(Mo,{title:t.helpTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${gt}-module-pad`,children:r(Vl,{placeholder:t.helpSearchPlaceholder,value:m,onInput:g})}),r("div",{class:`${gt}-help-list`,children:I()})]})}var Xl={Icon:$r,Root:e=>r(up,{...e})};var Jl=x.cssPrefix;function Zr({onClick:e,children:t,testid:n}){return e?r("button",{type:"button",class:`${Jl}-home-card`,"data-interactive":"true",onClick:e,"data-testid":n,children:t}):r("div",{class:`${Jl}-home-card`,"data-testid":n,children:t})}var oe=x.cssPrefix,Yl=B.scope("home");function pp(e){let t=e.options.userContext?.name,n=e.config.greetingText?be(e.strings,e.config.greetingText):void 0;return n?{title:t?n.replace("{name}",t):n.replace(/\s*\{name\}\s*/," ").trim(),subtitle:e.strings.homeGreetingLead}:t?{title:e.strings.homeGreetingNamed.replace("{name}",t),subtitle:e.strings.homeGreetingLead}:{title:e.strings.homeGreeting}}var fp=(e,t)=>t.url?e.push({kind:"iframe",url:t.url,title:t.title}):e.push({kind:"content",id:t.id,title:t.title});function mp(e){let{transport:t,strings:n,config:o,nav:i,panelProps:a}=e,[s,l]=T(null),[c,d]=T([]),u=o.contentTags?.join(",");w(()=>{if(!o.showRecentConversations)return;let h=!1;return t.listConversations({limit:1}).then(I=>!h&&l(I.conversations?.[0]??null)).catch(I=>!h&&Yl.warn("listConversations (home) failed",{err:I})),()=>{h=!0}},[t,o.showRecentConversations]),w(()=>{if(!o.contentTags?.length)return;let h=!1;return t.listContent({tags:o.contentTags,limit:6}).then(I=>!h&&d(I.items??[])).catch(I=>!h&&Yl.warn("listContent (home) failed",{err:I})),()=>{h=!0}},[t,u]);let _=pp(e),m=o.userAvatars??[],g=o.status,f=g?.text?be(n,g.text):n.homeStatus,v=o.contentBlockTitle?be(n,o.contentBlockTitle):n.homeContentTitle;return r("div",{class:`${oe}-module ${oe}-home`,"data-testid":S.homeView,children:r("div",{class:`${oe}-home-scroll`,children:[r("div",{class:`${oe}-home-hero`,children:[r("div",{class:`${oe}-home-hero-top`,children:[o.brandName?r("span",{class:`${oe}-home-brand`,"data-testid":S.homeBrand,children:o.brandName}):r("span",{class:`${oe}-home-brand-spacer`,"aria-hidden":"true"}),r("div",{class:`${oe}-home-hero-actions`,children:[m.length>0?r("div",{class:`${oe}-home-avatars`,children:m.map(h=>r("span",{class:`${oe}-home-avatar`,title:h.role?`${h.name} \xB7 ${h.role}`:h.name,children:h.avatar?r("img",{src:h.avatar,alt:"",loading:"lazy"}):r("span",{children:wo(h.name)})},h.name))}):null,r(Be,{panelProps:a,variant:"plain"})]})]}),o.showGreeting!==!1?r(ne,{children:[r("h1",{class:`${oe}-home-greeting`,"data-testid":S.homeGreeting,children:_.title}),_.subtitle?r("p",{class:`${oe}-home-lead`,children:_.subtitle}):null]}):null]}),r("div",{class:`${oe}-home-cards`,children:[o.showSearchBar!==!1?r(Gl,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout("help")}):null,s?r(Zr,{onClick:()=>i.selectConversation(s.conversationId),testid:S.homeRecent,children:r("div",{class:`${oe}-home-recent-row`,"data-unread":(s.unreadCount??0)>0?"true":void 0,children:[r("span",{class:`${oe}-home-recent-avatar`,"aria-hidden":"true",children:r(dn,{})}),r("span",{class:`${oe}-home-recent-body`,children:[r("span",{class:`${oe}-home-recent-title`,children:s.title}),s.preview?r("span",{class:`${oe}-home-recent-preview`,children:s.preview}):null]}),(s.unreadCount??0)>0?r("span",{class:`${oe}-home-recent-dot`,"aria-label":"Unread"}):null]})}):null,g?r(Zr,{onClick:g.url?()=>i.push({kind:"iframe",url:g.url,title:f}):void 0,children:r("div",{class:`${oe}-home-status`,"data-level":g.level??"operational",children:[r("span",{class:`${oe}-home-status-icon`,"aria-hidden":"true",children:r(Ws,{})}),r("span",{class:`${oe}-home-status-text`,children:f})]})}):null,c.length>0?r("section",{class:`${oe}-home-content`,children:[r("div",{class:`${oe}-home-content-title`,children:v}),r("div",{class:`${oe}-home-content-list`,children:c.map(h=>r(Do,{title:h.title,subtitle:h.description,onClick:()=>fp(i,h),testid:he(S.homeContentRow,h.id)},h.id))})]}):null]})]})})}var Ql={Icon:Gs,Root:e=>r(mp,{...e})};var it=x.cssPrefix,gp=B.scope("news");function hp({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(0);w(()=>{let v=!1;return l("loading"),e.listContent({tags:a,sortBy:"publishedAt",sortOrder:"desc"}).then(h=>{v||(_(h.items??[]),l("loaded"))}).catch(h=>{v||(gp.warn("listContent (news) failed",{err:h}),d(ut(h,t)),l("error"))}),()=>{v=!0}},[e,a,m]);function f(){return s==="loading"?r(De,{message:t.newsLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>g(v=>v+1),strings:t}):u.length===0?r(De,{message:t.newsEmpty,strings:t}):r("div",{class:`${it}-news-list`,children:u.map(v=>r("button",{type:"button",class:`${it}-news-card`,onClick:()=>o.push({kind:"content",id:v.id,title:v.title}),"data-testid":he(S.newsItem,v.id),children:[v.image?r("img",{class:`${it}-news-hero`,src:v.image,alt:"",loading:"lazy"}):null,r("span",{class:`${it}-news-body`,children:[r("span",{class:`${it}-news-title`,children:v.title}),v.description?r("span",{class:`${it}-news-summary`,children:v.description}):null]})]},v.id))})}return r("div",{class:`${it}-module`,children:[r(Mo,{title:t.newsTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${it}-module-scroll`,children:f()})]})}var Zl={Icon:Vs,Root:e=>r(hp,{...e})};var Oo={chat:Wl,home:Ql,help:Xl,news:Zl};var mn=x.cssPrefix;function ec({modules:e,activeTab:t,strings:n,unreadCount:o,onSelect:i}){return r("nav",{class:`${mn}-tabbar`,role:"tablist","aria-label":n.panelTitle,children:e.map(a=>{let s=Oo[a.layout].Icon,l=a.id===t,c=a.layout==="chat"&&o>0?o>9?"9+":String(o):null;return r("button",{type:"button",role:"tab","aria-selected":l,class:`${mn}-tab`,onClick:()=>i(a.id),"data-testid":he(S.tab,a.id),children:[r("span",{class:`${mn}-tab-icon`,"aria-hidden":"true",children:[r(s,{}),c?r("span",{class:`${mn}-tab-badge`,"data-testid":S.tabBadge,children:c}):null]}),r("span",{class:`${mn}-tab-label`,children:be(n,a.label)})]},a.id)})})}var tc=x.cssPrefix,vp="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads";function nc({url:e,title:t,strings:n,onBack:o,actions:i}){return r("div",{class:`${tc}-module`,children:[r(No,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:o,actions:i}),r("iframe",{class:`${tc}-content-frame`,src:e,title:t||"content",sandbox:vp,referrerpolicy:"no-referrer",loading:"lazy",allow:"fullscreen"})]})}var gn=x.cssPrefix,bp=B.scope("content");function oc({id:e,title:t,transport:n,strings:o,onBack:i,actions:a}){let[s,l]=T(null),[c,d]=T(!1),[u,_]=T(0),m=F(()=>{d(!1),l(null),_(f=>f+1)},[]);w(()=>{let f=!1;return n.listContent({ids:[e],limit:1}).then(v=>{if(f)return;let h=v.items[0];h?l(h):d(!0)}).catch(v=>{f||(bp.warn("listContent (reader) failed",{err:v}),d(!0))}),()=>{f=!0}},[n,e,u]);function g(){return c?r(De,{tone:"error",message:o.errorGeneric,onRetry:m,strings:o}):s===null?r(De,{message:o.contentLoading,strings:o}):r("article",{class:`${gn}-content`,"data-testid":S.contentView,children:[s.image?r("img",{class:`${gn}-content-hero`,src:s.image,alt:"",loading:"lazy"}):null,s.description?r("p",{class:`${gn}-content-subtitle`,children:s.description}):null,r(vl,{text:s.content??""})]})}return r("div",{class:`${gn}-module`,children:[r(No,{title:s?.title||t||o.moduleBack,backLabel:o.moduleBack,onBack:i,actions:a,testid:S.backHeader}),r("div",{class:`${gn}-module-scroll`,"data-testid":S.contentScroll,children:g()})]})}var ei=x.cssPrefix;function rc({panelProps:e,enabledModules:t,nav:n,unreadCount:o,onSelectConversation:i,onStartNewConversation:a,onSetPanelSize:s}){let l=e.options,c=l.strings,d=M(null);w(()=>{let $=d.current;if(!$)return;let de=ko($),U=q=>{q.key==="Escape"&&e.onClose?.()};return $.addEventListener("keydown",U),()=>{de(),$.removeEventListener("keydown",U)}},[e.onClose]);let u=M(null),_=F($=>{u.current?.attachFromDrop($)},[]),{visible:m}=To({containerRef:d,onDrop:_});yo(d.current,l.mode==="modal");let g=re(()=>n.sig.value).value,f=zl(g),v=l.modules.byId[g.activeTab],h=f?.kind==="iframe"||f?.kind==="content",I=t.length>1&&(Ul(g)||!h),b=M(null);w(()=>{if(h&&b.current===null)b.current=e.panelSize,e.panelSize==="normal"&&s("expanded");else if(!h&&b.current!==null){let $=b.current;b.current=null,s($)}},[h]);let C={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:$=>{let de=t.find(U=>U.layout===$);de&&n.switchTab(de.id)},selectConversation:i,startNewConversation:a},N=$=>({options:l,transport:e.transport,strings:c,config:$,visitorId:e.visitorId,nav:C,panelProps:e}),z=r(Be,{panelProps:e,variant:"plain"}),K;if(f?.kind==="iframe")K=r(nc,{url:f.url,title:f.title,strings:c,onBack:n.pop,actions:z});else if(f?.kind==="content")K=r(oc,{id:f.id,title:f.title,transport:e.transport,strings:c,onBack:n.pop,actions:z});else if(v?.layout==="chat")K=r(Yr,{...e,containerEl:d.current,dragOver:m,composerAttachApiRef:u});else if(v){let $=Oo[v.layout].Root;K=$?r($,{...N(v)},v.id):null}else K=null;return r("div",{ref:d,class:`${ei}-panel ${ei}-messenger`,role:"dialog","aria-modal":"false","aria-label":c.panelTitle,style:{position:"relative"},"data-testid":S.messengerHome,children:[r("div",{class:`${ei}-messenger-body`,children:K}),I?r(ec,{modules:t,activeTab:g.activeTab,strings:c,unreadCount:o,onSelect:n.switchTab}):null,r(Qr,{poweredBy:l.poweredBy}),l.size.resize?.enabled&&!(v?.layout==="chat"&&!f)?r(Po,{panelEl:d.current,resize:l.size.resize,position:l.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:c}):null]})}var hn=x.cssPrefix;function ic({strings:e,onClose:t}){return r("div",{class:`${hn}-panel ${hn}-modules-empty`,role:"dialog","aria-label":e.panelTitle,"data-testid":S.modulesEmpty,children:[t?r("button",{type:"button",class:`${hn}-icon-btn ${hn}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null,r("p",{class:`${hn}-modules-empty-text`,children:e.modulesEmpty})]})}function ac({callout:e,persistence:t}){let n=e?.text??"",o=e?.persistent??!0,[i,a]=T(()=>o?!1:t.loadCalloutDismissed(n));w(()=>{a(o?!1:t.loadCalloutDismissed(n))},[n,o,t]);let s=F(()=>{a(!0),o||t.saveCalloutDismissed(n)},[t,n,o]);return{dismissed:i,dismissCallout:s}}var V=B.scope("app"),ti=x.cssPrefix;function sc(e,t){return ps({...e,text:be(t,e.text)})}function lc({options:e,hostElement:t,bus:n}){let[o]=T(()=>nt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[i,a]=T(()=>o.getVisitorId()),s=o.loadUserPrefs(),[l,c]=T(()=>s.locale??e.locale),[d,u]=T(()=>s.themeMode??e.themeMode),[_,m]=T(()=>s.textSize??e.textSize),g=_t(o.loadConversationId()),f=_t([]),v=_t(0),[h,I]=T(!1),[b,C]=T([]);function N(){let p=e.modules.list,P=new Set(p.map(R=>R.id)),L=o.loadActiveModule();return L&&P.has(L)?L:p[0]?.id??""}function z(){return e.modules.list.find(p=>p.layout==="chat")?.id}let K=M();if(!K.current){let p=e.modules.list.map(P=>P.id);K.current=Fl(N(),p,P=>o.saveActiveModule(P))}let $=K.current,de=M(void 0);de.current=z();let[U,q]=T(!1),[We,ke]=T(null),[k,J]=T(!1),Z=e.mode==="standalone"||e.mode==="inline",pe=M(an(e,Lt(),o.loadPanelOpen(),o.loadPanelSize())),[fe,y]=T(pe.current.panelOpen),[D,me]=T(pe.current.panelOpen),we=M(D);we.current=D;let Ce=M(!1),Je=M(void 0);w(()=>{fe&&me(!0)},[fe]);let Bt=M(!1),[ht,zt]=T(!1),{dismissed:Re,dismissCallout:Ut}=ac({callout:e.launcher.callout,persistence:o}),Ye=e.launcher.callout?.persistent??!0,vn=F(()=>{V.info("calloutDismiss"),n.emit("calloutDismiss",void 0),Ut()},[n,Ut]),[Le,vt]=T(pe.current.panelSize),pi=M(!1),[hc,zo]=T("chat"),[Wt,Gt]=T(!0),[Ge,bn]=T(!1),[vc,fi]=T(null),[Uo,xn]=T([]),[Pn,yn]=T(null),Sn=M(e.strings),[bc,xc]=T(void 0),[Pc,yc]=T(void 0),[Sc,kc]=T(()=>o.loadSidebarCollapsed()??!1),[Wo,wc]=T({}),[Y]=T(()=>new _o({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:ts({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:"x-public-key"}),endpoints:e.endpoints})),[Oe]=T(()=>new mo(f)),[ie]=T(()=>new bo(e.sound,e.haptics)),He=F(p=>{o.patchUserPrefs(p),Y.saveUserPrefs(o.loadUserPrefs()).catch(P=>{V.warn("saveUserPrefs failed",{err:P})})},[o,Y]);w(()=>{s.soundMuted!==void 0&&ie.setMuted(s.soundMuted)},[]),w(()=>{t.dataset.theme=d},[t,d,e]),w(()=>{t.dataset.textSize=_},[t,_,e]),w(()=>{ie.update(e.sound,e.haptics)},[ie,e.sound,e.haptics]),w(()=>()=>ie.destroy(),[ie]),w(()=>{let p=!0;return ie.mutedSig.subscribe(P=>{if(p){p=!1;return}He({soundMuted:P})})},[ie,He]),w(()=>{pi.current||!e.size.initialSize||(pi.current=!0,!o.loadPanelSize()&&vt(Rr(e.mode,e.size,Lt())))},[e.mode,e.size,o]),w(()=>{if(!U||Bt.current)return;Bt.current=!0;let p=an(e,Lt(),o.loadPanelOpen(),o.loadPanelSize());y(p.panelOpen),vt(p.panelSize)},[U,e,o]);let mi=M(!1),gi=M(!1),kn=M(null);w(()=>{if(!(!U||mi.current)){if(mi.current=!0,gi.current){let p=de.current;p&&$.switchTab(p);return}$.reset(N())}},[U]);let wn=F(p=>{!p||p.length===0||(f.value=p.map(P=>sc(P,Sn.current)))},[f]),Go=M(null),Cn=F(async p=>{try{let{formSubmissions:P}=await(p?Y.bootstrap(p):Go.current??Y.bootstrap()),L=new Map;return P.forEach((R,W)=>L.set(R.formId,W)),P.filter((R,W)=>!R.skipped||L.get(R.formId)===W).map((R,W)=>({key:`wire:${R.formId}:${R.createdAt??W}`,formId:R.formId,outcome:R.skipped?"skipped":"submitted",createdAt:co(R.createdAt),values:R.values}))}catch(P){return V.debug("bootstrap failed \u2014 no form markers (non-fatal)",{err:P}),[]}},[Y]),Vt=M(0),Kt=F((p,P)=>{let L=[...p.map(_e=>_e.createdAt),...P.map(_e=>_e.createdAt)].filter(_e=>_e!==void 0),R=(L.length?Math.min(...L):Date.now())-1,W=new Set(p.map(_e=>_e.id));return[...(Je.current?.messages??[]).filter(_e=>!W.has(_e.id)).map(_e=>{let Qe=sc(_e,Sn.current);return Qe.createdAt=R,Qe}),...p]},[]),Vo=F(async p=>{let P=Vt.current,L=()=>P!==Vt.current;I(!0);try{let[R,W]=await Promise.all([Y.loadConversation(p),Cn()]);if(L())return;let E=(R.messages??[]).map(Nr);C(W);let _e=kn.current?[kn.current]:[];E.length||_e.length?(f.value=[...Kt(E,W),..._e],Gt(R.canContinue??!0),xn(R.suggestions??[])):f.value=Kt([],W)}catch(R){if(L())return;V.warn("loadThread failed; resetting conversationId",{err:R,conversationId:p}),g.value=void 0,o.saveConversationId(void 0)}finally{L()||I(!1)}},[Y,Cn,f,g,o,Kt]),qt=F(async({newConversation:p})=>{let P=++Vt.current,L=()=>P!==Vt.current,R=g.value,W=p||!R?$e():R;W!==R&&(g.value=W,o.saveConversationId(W));let E;try{E=await Y.handshake({visitorId:i,conversationId:W,userPrefs:o.loadUserPrefs(),locale:l})}catch(Qe){if(L())return;n.emit("error",Qe),e.onError?.(Qe),p||q(!0);return}if(L())return;if(E.visitorId&&E.visitorId!==i&&(V.info("visitor rebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId}),o.setVisitorId(E.visitorId),a(E.visitorId),n.emit("visitorRebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId})),E.conversationId&&E.conversationId!==W&&(V.info("conversation rebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId}),n.emit("conversationRebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId})),E.agent&&fi(E.agent),e.mode==="page"&&(E.site&&Za(E.site)?xc(E.site):E.site&&V.warn("invalid site config, using fallback",{site:E.site}),E.blocks&&es(E.blocks)?yc(E.blocks):E.blocks&&V.warn("invalid blocks config, using fallback",{blocks:E.blocks})),E.userPrefs&&!p&&(o.saveUserPrefs(E.userPrefs),E.userPrefs.locale&&c(E.userPrefs.locale),E.userPrefs.soundMuted!==void 0&&ie.setMuted(E.userPrefs.soundMuted),E.userPrefs.themeMode&&u(E.userPrefs.themeMode),E.userPrefs.textSize&&m(E.userPrefs.textSize)),Je.current=E.welcome,p||n.emit("handshake",E),E.welcome?.suggestions){let Qe=Sn.current;xn(E.welcome.suggestions.map(Rn=>({...Rn,label:be(Qe,Rn.label),...Rn.text===void 0?{}:{text:be(Qe,Rn.text)}})))}!p&&R&&E.conversationId===R?we.current?Vo(R):Ce.current=!0:(g.value=E.conversationId,o.saveConversationId(E.conversationId),wn(E.welcome?.messages)),p||q(!0)},[Y,i,o,e,n,g,ie,wn,Vo,l]),jt=JSON.stringify(e.userContext??null),Cc=JSON.stringify(e.pageContext??null),Tc=JSON.stringify(Wo);w(()=>{let p=Object.keys(Wo).length?{...Wo,...e.userContext}:e.userContext;Y.setContext(p,xp(e.pageContext))},[Y,jt,Cc,Tc]);let Te=yt(l,e.availableLocales,e.defaultLocale);w(()=>{Y.setLocale(Te)},[Y,Te]),w(()=>{t.dir=Ri(Te)?"rtl":"ltr"},[t,Te]),w(()=>{Te!==l&&c(Te)},[Te,l]);let Ec=F(async p=>{let P=null;try{for await(let L of p.iter){if(!P){P=uo(),kn.current=P,Oe.attach(P),f.value=[...f.value,P],bn(!0),yn(()=>p.cancel),gi.current=!0;let R=de.current;R&&$.switchTab(R),V.info("resumed in-flight reply on mount")}Oe.apply(L.chunk),L.chunk.type==="finish"&&L.chunk.canContinue===!1&&Gt(!1)}P&&(P.status="complete",ie.play("messageReceived"),ni(n,e,"assistant",Dr(P)))}catch(L){P&&(P.status="error",P.errorText=ut(L,e.strings),ie.play("error")),V.debug("mount resume ended without completing",{err:L})}finally{kn.current=null,P&&(Oe.detach(),bn(!1),yn(null),f.value=[...f.value])}},[Oe,f,ie,n,e,$]),hi=M(null);w(()=>{let p=g.value;return p&&Y.primeIdentity(i,p),qt({newConversation:!1}),()=>{Vt.current++,hi.current?.cancel()}},[]),w(()=>{if(D){if(Go.current=Y.bootstrap(),(async()=>{try{let p=await Go.current;ke(Zt((p??{forms:[]}).forms,Te))}catch(p){V.debug("bootstrap failed \u2014 treating as no forms",{err:p})}finally{J(!0)}})(),Ce.current){Ce.current=!1;let p=g.value;p&&Vo(p)}if(g.value){let p=Y.resumeStream();hi.current=p,Ec(p)}}},[D]);let Tn=M(null);w(()=>{if(!D)return;if(Tn.current===null){Tn.current=Te;return}if(Tn.current===Te)return;Tn.current=Te;let p=!1;return Y.bootstrap().then(P=>{p||ke(Zt((P??{forms:[]}).forms,Te))}).catch(P=>V.debug("forms re-localize failed \u2014 keeping current copy",{err:P})),()=>{p=!0}},[D,Te,Y]);let vi=M(jt);w(()=>{!U||vi.current===jt||(vi.current=jt,qt({newConversation:!1}))},[jt,U,qt]),w(()=>{Jn(t,lo(e.mode,Le,fe))},[t,fe,Le,e.mode]),w(()=>{if(e.mode!=="modal"||!fe)return;let p=P=>{P.composedPath().some(W=>W instanceof HTMLElement&&W.classList.contains(`${x.cssPrefix}-panel`))||y(!1)};return t.addEventListener("click",p),()=>t.removeEventListener("click",p)},[t,fe,e.mode]),w(()=>{if(e.mode!=="drawer"||!fe)return;let p=P=>{P.key==="Escape"&&y(!1)};return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[fe,e.mode]);let En=F(async(p,P)=>{let L=g.value??$e();g.value||(g.value=L,o.saveConversationId(L));let R=ss({messages:f.value.slice(0,-1).map(fs),conversationId:L,tools:e.features.tools,responseMode:e.responseMode,trigger:P,visitorId:i,userPrefs:o.loadUserPrefs()});bn(!0);let W=Y.sendMessage(R);yn(()=>W.cancel);try{for await(let E of W.iter)Oe.apply(E.chunk),E.chunk.type==="finish"&&E.chunk.canContinue===!1&&Gt(!1);p.status="complete",ie.play("messageReceived"),ni(n,e,"assistant",Dr(p))}catch(E){p.status="error",p.errorText=ut(E,e.strings),ie.play("error"),n.emit("error",E),e.onError?.(E)}finally{Oe.detach(),bn(!1),yn(null),f.value=[...f.value]}},[Y,Oe,f,g,e,n,ie,o,i]),In=F((p,P,L)=>{if(Ge)return;let R=f.value.at(-1),W=R?.partsSig.value.find(_e=>_e.kind==="tool"&&_e.toolCallId===p);if(!W){V.warn("resolveTool: tool part not found",{toolCallId:p});return}L(W),R&&(R.partsSig.value=[...R.partsSig.value]);let E=uo();f.value=[...f.value,E],Oe.attach(E),En(E,P)},[Ge,f,Oe,En]),bi=F((p,P)=>{V.info("toolResult",{toolCallId:p}),n.emit("toolResult",{toolCallId:p}),In(p,fo.toolResult,L=>{L.outputSig.value=P,L.stateSig.value="output"})},[n,In]),xi=F((p,P,L)=>{V.info("toolDecision",{toolCallId:p,approved:P}),n.emit("toolDecision",{toolCallId:p,approved:P}),In(p,fo.toolApproval,R=>{let W=R.approvalSig.value?.id??p;R.approvalSig.value={id:W,approved:P,reason:L},R.stateSig.value="output"})},[n,In]),Ic=xe(()=>({humanInLoop:e.features.humanInLoop,onResult:bi,onDecision:xi}),[e.features.humanInLoop,bi,xi]),Ac=()=>f.value.reduce((p,P)=>p+(P.role==="user"?1:0),0),bt=e.forms.list.length>0?e.forms:We??e.forms,ae=Nl({forms:bt,persistence:o,userContext:()=>e.userContext,messageCount:Ac,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>g.value,onComplete:(p,P,L,R)=>{V.info("formSubmit",{formId:p.id,trigger:P,skipped:R}),n.emit("formSubmit",{formId:p.id,values:L,skipped:R}),C(E=>[...E.filter(_e=>!(_e.formId===p.id&&_e.outcome==="skipped")),{key:`local:${p.id}:${Date.now()}`,formId:p.id,outcome:R?"skipped":"submitted",createdAt:Date.now(),...R?{}:{values:L}}]);let W=g.value??$e();g.value||(g.value=W,o.saveConversationId(W),Y.primeIdentity(void 0,W)),!R&&p.mirrorToContext&&wc(E=>({...E,...L})),Y.submitForm({formId:p.id,conversationId:W,trigger:P,values:L,skipped:R})}}),Rc=re(()=>ae.activeForm.value);w(()=>{ae.refresh()},[bt,ae]);let Pi=e.pageContext?.area?String(e.pageContext.area):void 0,Lc=re(()=>f.value.length);w(()=>{U&&k&&ae.fire("pre-chat")},[U,k,ae]),w(()=>{k&&!Wt&&ae.fire("conversation-closed")},[k,Wt,ae]),w(()=>{U&&k&&Pi&&ae.fire("page-area")},[U,k,Pi,ae]);let Ko=xe(()=>{let p=bt.list.flatMap(P=>P.triggers).filter(P=>P.kind==="idle").map(P=>Number(P.param));return p.length?Math.min(...p)*1e3:0},[bt]);w(()=>{if(!Ko||!fe)return;let p=setTimeout(()=>ae.fire("idle"),Ko);return()=>clearTimeout(p)},[Ko,fe,ae,Lc.value]);let yi=F(async(p,P)=>{if(V.info("send",{textLen:p.length,attachments:P.length,streaming:Ge}),Ge)return;n.emit("send",{text:p,attachmentCount:P.length}),Uo.length>0&&xn([]);let L=await yp(Y,P,E=>{V.warn("upload failed",{err:E}),n.emit("error",E),e.onError?.(E)});ie.unlock(),ie.play("messageSent");let R=us(p,L),W=uo();f.value=[...f.value,R,W],Oe.attach(W),ni(n,e,"user",p),await En(W,fo.submitMessage),ae.fire("after-messages")},[Ge,Y,n,e,Uo.length,f,Oe,En,ae]),Mc=F(()=>{V.info("stop"),n.emit("stop",void 0),Pn?.()},[Pn,n]),Nc=F(()=>{ie.toggleMuted();let p=ie.mutedSig.value;V.info("soundToggle",{muted:p}),n.emit("soundToggle",{muted:p})},[ie,n]),Xt=F(()=>{if(Zs(e.mode,Le)==="exit-fullscreen"){V.info("close \u2192 exit-fullscreen",{mode:e.mode}),vt("normal"),n.emit("fullscreen",!1);return}V.info("close \u2192 panel closed",{mode:e.mode}),ae.fire("panel-close"),y(!1),o.savePanelOpen(!1),n.emit("close",void 0),e.onClose?.()},[n,e,o,Le,ae]),xt=F(()=>{e.modules.list.some(p=>p.layout==="chat")&&Y.listConversations({limit:50}).then(p=>{v.value=p.conversations.reduce((P,L)=>P+(L.unreadCount??0),0)}).catch(p=>V.debug("refreshUnread failed (non-fatal)",{err:p}))},[Y,e.modules,v]),Si=M(!1);w(()=>{!D||!U||Si.current||(Si.current=!0,xt())},[D,U,xt]);let qo=F(()=>{V.info("open",{mode:e.mode}),ie.unlock(),zt(!0),y(!0),o.savePanelOpen(!0),!Re&&!Ye&&vn(),setTimeout(()=>zt(!1),Pp),xt(),n.emit("open",void 0),e.onOpen?.()},[n,e,ie,o,Re,Ye,vn,xt]),jo=F(()=>{if(!f.value.some(P=>P.role==="user")&&Wt&&g.value){V.info("clear \u2192 reusing empty conversation",{conversationId:g.value}),f.value.length===0&&wn(Je.current?.messages);return}V.info("clear \u2192 new conversation",{wasStreaming:Ge}),n.emit("clear",void 0),Ge&&Pn?.(),It(()=>{f.value=[],g.value=void 0}),o.clearConversation(),Gt(!0),C([]),qt({newConversation:!0})},[Ge,Pn,f,g,o,qt,n,Wt,wn]),Xo=F(()=>{jo(),zo("chat");let p=e.modules.list.find(P=>P.layout==="chat")?.id;p&&$.switchTab(p)},[jo,$,e]),Jo=F(()=>{let p=Le==="expanded"?"normal":"expanded";V.info("expand",{from:Le,expanded:p==="expanded"}),vt(p),o.savePanelSize(p),n.emit("expand",p==="expanded")},[n,Le,o]),Yo=F(()=>{let p=Le==="fullscreen"?"normal":"fullscreen";V.info("fullscreen",{from:Le,fullscreen:p==="fullscreen"}),vt(p),o.savePanelSize(p),n.emit("fullscreen",p==="fullscreen")},[n,Le,o]),Dc=F(()=>{zo(p=>{let P=p==="history"?"chat":"history";return V.info("toggleHistory",{view:P}),n.emit("toggleHistory",{view:P}),P})},[n]),Oc=F(p=>{V.info("localeChange",{locale:p}),c(p),He({locale:p}),n.emit("localeChange",p)},[He,n]),$c=F(p=>{V.info("themeChange",{mode:p}),u(p),t.dataset.theme=p,He({themeMode:p}),n.emit("themeChange",p)},[t,He,n]),Hc=F(p=>{V.info("textSizeChange",{size:p}),m(p),t.dataset.textSize=p,He({textSize:p}),n.emit("textSizeChange",p)},[t,He,n]),Fc=F(()=>{kc(p=>{let P=!p;return V.info("sidebarToggle",{collapsed:P}),o.saveSidebarCollapsed(P),n.emit("sidebarToggle",{collapsed:P}),P})},[o,n]),Bc=F(p=>{V.info("resize",p),He({widgetSize:p}),n.emit("resize",p)},[He,n]),Qo=F(async p=>{V.info("selectConversation",{conversationId:p}),n.emit("selectConversation",{conversationId:p});try{let[P,L]=await Promise.all([Y.loadConversation(p),Cn(p)]),R=P.messages.map(Nr);It(()=>{f.value=Kt(R,L),g.value=P.conversationId}),C(L),o.saveConversationId(P.conversationId),P.agent&&fi(P.agent),Gt(P.canContinue),xn(P.suggestions??[]),zo("chat"),await Y.markRead(p),xt()}catch(P){n.emit("error",P),e.onError?.(P)}},[Y,f,g,n,e,o,xt,Cn,Kt]),An=M(null),ki=F(p=>{typeof p=="string"&&(k?ae.fire("manual",p):An.current=p)},[k,ae]);w(()=>{!k||!An.current||(ae.fire("manual",An.current),An.current=null)},[k,ae]),w(()=>va(t,{open:qo,close:Xt,expand:Jo,fullscreen:Yo,openForm:ki}),[t,qo,Xt,Jo,Yo,ki]);let Ee=xe(()=>_r(e,l,d,_),[e,l,d,_]);Sn.current=Ee.strings;let zc=xe(()=>b.map(p=>{let P=bt.list.find(L=>L.id===p.formId);return{...p,title:P?.title,form:P}}),[b,bt]),wi={options:Ee,transport:Y,feedback:ie,bus:n,view:hc,canSend:Wt,isStreaming:Ge,loadingMessages:h,messagesSig:f,agent:vc,suggestions:Uo,initialWidgetSize:s.widgetSize??null,visitorId:i,onClose:Xt,onClear:jo,onExpand:Jo,onFullscreen:Yo,onSoundToggle:Nc,onToggleHistory:Dc,onSelectHistoryConversation:Qo,onNewConversation:Xo,onLocaleChange:Oc,onThemeChange:$c,onTextSizeChange:Hc,onWidgetSizeChange:Bc,onSend:yi,onStop:Mc,onSuggestion:p=>{let P=p.text??p.label;V.info("suggestion",{text:P}),n.emit("suggestion",{text:P}),yi(P,[])},activeForm:Rc.value?.form??null,formMarkers:zc,onFormSubmit:ae.complete,onFormSkip:ae.skip,onFormFill:p=>ae.fire("manual",p),tool:Ic},Uc=p=>{Qo(p);let P=z();P&&$.switchTab(P)};if(!U)return null;let Jt=Ee.modules.list,Zo=p=>{let P=_n("close",Ee.mode,p);return Jt.length===0?r(ic,{strings:Ee.strings,onClose:P?Xt:void 0}):Jt.length===1&&Jt[0]?.layout==="chat"?r(Ml,{...wi,panelSize:p}):r(rc,{panelProps:{...wi,panelSize:p,onClose:P?Xt:void 0},enabledModules:Jt,nav:$,unreadCount:v.value,onSelectConversation:Uc,onStartNewConversation:Xo,onSetPanelSize:vt})};if(e.mode==="page"){let p=L=>{Qo(L.conversationId)},P=Jt.some(L=>L.layout==="chat");return r("div",{class:`${ti}-anchor`,children:r($l,{site:bc,blocks:Pc,transport:Y,strings:Ee.strings,visitorId:i,showConversations:P,onSelectConversation:p,onNewConversation:Xo,sidebarCollapsed:Sc,onToggleSidebarCollapsed:Fc,children:Zo("fullscreen")})})}if(Z){let p=e.mode==="standalone"?"fullscreen":Le;return r("div",{class:`${ti}-anchor`,children:Zo(p)})}let Ci=e.mode==="drawer",Ti=!(e.mode==="modal")&&!e.launcher.hidden&&(!fe||ht),Ei=Ti&&!ht&&!Re&&!Ci?Ee.launcher.callout:null;return r("div",{class:`${ti}-anchor`,"data-launcher-size":Ee.launcher.size,children:[fe?Zo(Le):null,Ti?r(Js,{onToggle:qo,launcher:Ee.launcher,strings:Ee.strings,leaving:ht,edgeTab:Ci}):null,Ei?r(Ys,{callout:Ei,launcherPosition:Ee.position,strings:Ee.strings,closeLabel:Ee.strings.close,onDismiss:vn}):null]})}function xp(e){let t=e?.url??(typeof location<"u"?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}var Pp=120;async function yp(e,t,n){let o=[];for(let i of t)try{let{id:a,url:s}=await e.uploadFile(i.file);o.push({id:a,name:i.name,mediaType:i.mediaType,size:i.size,url:s})}catch(a){n(a)}return o}function ni(e,t,n,o){let i={role:n,text:o};e.emit("message",i),t.onMessage?.(i)}var Sp=B.scope("error-boundary"),$o=class extends tt{constructor(){super(...arguments);G(this,"state",{crashed:!1})}componentDidCatch(n,o){Sp.error("widget render crashed",{error:n,componentStack:o?.componentStack}),this.setState({crashed:!0}),this.props.onError(n,o?.componentStack)}render(){return this.state.crashed?this.props.fallback:this.props.children}};var cc={open:()=>{},close:()=>{},expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>{},clear:()=>{},suggestion:()=>{},toggleHistory:e=>({view:e.view}),handshake:()=>{},formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>{},toolDecision:e=>({approved:e.approved}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>{},voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>{},localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>{},error:()=>{}};function kp(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack==="1"}function wp(){return location.origin+location.pathname}function Cp(){try{return document.referrer?new URL(document.referrer).origin:""}catch{return""}}function dc(e,t){let n=Math.random(),o=0,i=0,a=new Set,s=(c,d)=>{let{tracking:u,publicKey:_,aiAgentDeploymentId:m,mode:g,themeMode:f}=t.getOptions();if(!u.enabled||kp()||n>=u.sampleRate)return;let v=performance.now();if(v-o>6e4&&(o=v,i=0),++i>60)return;let h=new URLSearchParams;h.set("v","1"),h.set("e",c),u.token&&h.set("tk",u.token),_&&h.set("pk",_),m&&h.set("dep",m),h.set("vid",t.getVisitorId());let I=t.getConversationId();I&&h.set("cid",I),h.set("url",wp());let b=Cp();b&&h.set("ref",b),h.set("sw",String(screen.width)),h.set("sh",String(screen.height)),h.set("vw",String(innerWidth)),h.set("vh",String(innerHeight)),h.set("dpr",String(devicePixelRatio)),h.set("lang",navigator.language);try{h.set("tz",Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(h.set("m",g),h.set("th",f),d)for(let[K,$]of Object.entries(d))$!==void 0&&h.set(K,String($));h.set("ts",String(Date.now()));let C=`${u.endpoint}?${h}`;if(C.length>2e3)return;let N=new Image(1,1);a.add(N);let z=()=>a.delete(N);N.addEventListener("load",z,{once:!0}),N.addEventListener("error",z,{once:!0}),N.src=C},l=Object.keys(cc).map(c=>e.on(c,d=>s(c,cc[c]?.(d))));return()=>{for(let c of l)c();a.clear()}}function Ho(e){let{bus:t,host:n,appRoot:o,persistence:i,reportError:a}=e,s=e.initialRaw,l,c=Ze(s),d=!0,u=()=>{c=Ze(l?ur(s,l):s)},_=()=>{Ta(n,ct(c.mode));let f=i.loadUserPrefs().themeMode;Ea(n,f?{...c,themeMode:f}:c),d&&(Jn(n,oi(c)),d=!1)},m=()=>{_(),wt(Xn($o,{onError:a},Xn(lc,{bus:t,hostElement:n,options:c})),o)};t.on("handshake",f=>{f.config&&(f.config.storageVersion&&i.rememberStorageVersion(f.config.storageVersion),l=f.config,u(),m())});let g=dc(t,{getOptions:()=>c,getVisitorId:()=>i.getVisitorId(),getConversationId:()=>i.loadConversationId()});return{getOptions:()=>c,getUserOptions:()=>s,render:m,setUserOptions:f=>{s=f,u(),m()},patchUserOptions:f=>{s={...s,...f},u(),m()},destroy:()=>g()}}function oi(e){if(e.mode==="standalone")return"standalone";if(e.mode==="inline")return"inline";let t=nt(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:o}=an(e,Lt(),t.loadPanelOpen(),t.loadPanelSize());return lo(e.mode,o,n)}var Tp=B.scope("hooks"),ii="*",ri=new Set;function ai(e,t,n){let o={widgetId:e,event:t,listener:n};return ri.add(o),()=>{ri.delete(o)}}function Ep(e,t,n){let o=[...ri];for(let i of o)if(Ip(i.widgetId,e.widgetId)&&!(i.event!==ii&&i.event!==t))try{i.listener(e,t,n)}catch(a){Tp.warn("hook listener threw",{event:t,error:a})}}function _c(e,t){let n=[];for(let o of Ap)n.push(t.on(o,i=>{Ep(e,o,i)}));return()=>{for(let o of n)o()}}function si(e){if(Array.isArray(e))for(let t of e){let n=Rp(t);n&&ai(n.widgetId,n.event,n.listener)}}function Ip(e,t){return e===ii||e===t}var Ap=["open","close","expand","fullscreen","resize","message","send","stop","clear","selectConversation","suggestion","toggleHistory","formSubmit","toolResult","toolDecision","attach","removeAttachment","voiceStart","voiceStop","voiceCancel","localeChange","themeChange","textSizeChange","soundToggle","sidebarToggle","calloutDismiss","error","handshake","visitorRebound","conversationRebound"];function Rp(e){let t,n,o;if(Array.isArray(e))[t,n,o]=e;else if(e&&typeof e=="object")({widgetId:t,event:n,listener:o}=e);else return null;return typeof t!="string"||typeof n!="string"||typeof o!="function"?null:{widgetId:t,event:n,listener:o}}var Xe=new Map;function Fo(e){e.debug!==void 0&&On(e.debug);let t=B.scope("mount");t.info("mount",{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let n=Ze(e),o=n.widgetId,i=Xe.get(o);i&&(t.debug("destroy existing instance at slot",{widgetId:o}),i.destroy());let a=oi(n),s=n.iframe?Ra({position:ct(n.mode)},n.position,a,n.mode,e.target??null):Ct({position:ct(n.mode),target:e.target??null});s.hostElement.dataset.widgetId=o;let l=new Tt,c=nt(o,n.storage,n.aiAgentDeploymentId),d=v=>{l.emit("error",v),u.getOptions().onError?.(v)},u=Ho({bus:l,host:s.hostElement,appRoot:s.appRoot,persistence:c,initialRaw:e,reportError:d});u.render();let _=s.hostElement,m=null,g=v=>{v.debug!==void 0&&On(v.debug),u.patchUserOptions(v)},f={widgetId:o,open:()=>tn(_,"open"),close:()=>tn(_,"close"),expand:()=>tn(_,"expand"),openForm:v=>tn(_,"openForm",v),on:(v,h)=>l.on(v,h),update:v=>{t.debug("update",{patch:v}),g(v)},setUserContext:v=>{t.debug("setUserContext",{keys:Object.keys(v)}),g({userContext:{...u.getUserOptions().userContext,...v}})},clearUserContext:()=>{t.debug("clearUserContext"),g({userContext:void 0})},setPageContext:v=>{t.debug("setPageContext",{keys:Object.keys(v)}),g({pageContext:{...u.getUserOptions().pageContext,...v}})},clearPageContext:()=>{t.debug("clearPageContext"),g({pageContext:void 0})},setDebug:v=>{On(v),t.info("debug level set",{level:Yt()})},debugLevel:()=>Yt(),onLog:v=>Qt(v),destroy:()=>{t.info("destroy",{widgetId:o}),m?.(),u.destroy(),l.clear(),wt(null,s.appRoot),s.destroy(),Xe.get(o)===f&&Xe.delete(o)}};return m=_c(f,l),Xe.set(o,f),f}function Bo(e){let t=e.widgetId??"default",n=Xe.get(t);return n?(n.update(e),n):Fo(e)}function li(e){if(e!==void 0){Xe.get(e)?.destroy();return}let t=[...Xe.values()];for(let n of t)n.destroy()}function Ue(e="default"){return Xe.get(e)??null}function uc(){return[...Xe.values()]}function ci(e,t,n){return ai(e,t,n)}var pc="0.1.0";var di=class extends HTMLElement{constructor(){super(...arguments);G(this,"bus",new Tt);G(this,"mountResult",null);G(this,"runtime",null)}static get observedAttributes(){return pr}connectedCallback(){this.boot()}disconnectedCallback(){this.mountResult&&(this.runtime?.destroy(),this.runtime=null,wt(null,this.mountResult.appRoot),this.bus.clear())}attributeChangedCallback(){this.isConnected&&this.boot()}boot(){let n=Bn(a=>this.getAttribute(a));if(this.runtime){this.runtime.setUserOptions(n);return}let o=Ze(n);this.mountResult||(this.mountResult=Ct({existingHost:this,position:ct(o.mode)}));let i=nt(o.widgetId,o.storage,o.aiAgentDeploymentId);this.runtime=Ho({bus:this.bus,host:this.mountResult.hostElement,appRoot:this.mountResult.appRoot,persistence:i,initialRaw:n,reportError:a=>this.bus.emit("error",a)}),this.runtime.render()}},fc=!1;function _i(){if(fc||typeof customElements>"u")return;let e=x.tagName;customElements.get(e)||customElements.define(e,di),fc=!0}typeof customElements<"u"&&_i();var mc=B.scope("iife"),ui={close:()=>Ue()?.close(),destroy:()=>li(),expand:()=>Ue()?.expand(),hook:(e,t,n)=>typeof e=="string"&&typeof t=="string"&&typeof n=="function"?ci(e,t,n):void 0,init:e=>Bo(e),mount:e=>Fo(e),on:(e,t)=>Ue()?.on(e,t),onLog:e=>Qt(e),open:()=>Ue()?.open(),setDebug:e=>Ue()?.setDebug(e),update:e=>Ue()?.update(e)};function gc(e,...t){let n=ui[e];if(!n){mc.warn("unknown command",{command:e});return}return n(...t)}function Lp(){let e=((n,...o)=>gc(n,...o));e.init=Bo,e.mount=Fo,e.destroy=li,e.getInstance=Ue,e.getAllInstances=uc,e.version=pc,e.hook=ci,e.debugLevel=()=>Yt(),e.onLog=Qt;let t=new Set(["init","mount","hook","onLog"]);for(let n of Object.keys(ui))t.has(n)||(e[n]=(...o)=>ui[n](...o));return e}function Mp(e){let t=e?.q;if(t)for(let n of t){let o=[...n],[i,...a]=o;if(typeof i=="string")try{gc(i,...a)}catch(s){mc.warn("queued command failed",{command:i,error:s})}}}function Np(){let e=[],t=e.push.bind(e);return e.push=(...n)=>{for(let o of n)si([o]);return t(...n)},e}function Dp(){let e=document.scripts;for(let t=e.length-1;t>=0;t--){let n=e[t];if(n?.src.includes("elements"))return n}return null}function Op(){if(typeof window>"u"||typeof document>"u")return;let e=globalThis[x.global],t=Lp();globalThis[x.global]=t,_i();let n=`${x.global}Hooks`,o=globalThis[n];if(si(o),globalThis[n]=Np(),Mp(e),Ue())return;let i=document.currentScript??Dp(),a=fr(i?.dataset);if(!a.publicKey)return;let s=()=>{Ue()||Bo(a)};if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",s,{once:!0});return}s()}Op();return jc($p);})();
|
|
39
|
+
`){Q(e),ee(e,16),e.pending=n;continue}}break;case"$":if(e.token!==19&&e.token!==16&&e.pending==="$")if(n==="$"){e.token=105,e.pending=o;continue}else{if(ku(n.charCodeAt(0)))break;Q(e),ee(e,31),e.pending=n;continue}break;case"[":if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n!=="]"){Q(e),ee(e,17),e.pending=n;continue}break;case"!":if(e.token!==19&&n==="["){Q(e),ee(e,19),e.pending="";continue}break;case" ":if(e.pending.length===1&&n===" ")continue;break}if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n==="h"&&(e.pending===" "||e.pending==="")){e.text+=e.pending,e.pending=n,e.token=102;continue}e.text+=e.pending,e.pending=n}Q(e)}function Xr(e){return{add_token:wu,end_token:Cu,add_text:Tu,set_attr:Eu,data:{nodes:[e,,,,,],index:0}}}function wu(e,t){let n=e.nodes[e.index],o;switch(t){case 1:return;case 20:o=document.createElement("blockquote");break;case 2:o=document.createElement("p");break;case 21:o=document.createElement("br");break;case 22:o=document.createElement("hr");break;case 3:o=document.createElement("h1");break;case 4:o=document.createElement("h2");break;case 5:o=document.createElement("h3");break;case 6:o=document.createElement("h4");break;case 7:o=document.createElement("h5");break;case 8:o=document.createElement("h6");break;case 12:case 13:o=document.createElement("em");break;case 14:case 15:o=document.createElement("strong");break;case 16:o=document.createElement("s");break;case 11:o=document.createElement("code");break;case 18:case 17:o=document.createElement("a");break;case 19:o=document.createElement("img");break;case 23:o=document.createElement("ul");break;case 24:o=document.createElement("ol");break;case 25:o=document.createElement("li");break;case 26:let i=o=document.createElement("input");i.type="checkbox",i.disabled=!0;break;case 9:case 10:n=n.appendChild(document.createElement("pre")),o=document.createElement("code");break;case 27:o=document.createElement("table");break;case 28:switch(n.children.length){case 0:n=n.appendChild(document.createElement("thead"));break;case 1:n=n.appendChild(document.createElement("tbody"));break;default:n=n.children[1]}o=document.createElement("tr");break;case 29:o=document.createElement(n.parentElement?.tagName==="THEAD"?"th":"td");break;case 30:o=document.createElement("equation-block");break;case 31:o=document.createElement("equation-inline");break}e.nodes[++e.index]=n.appendChild(o)}function Cu(e){e.index-=1}function Tu(e,t){e.nodes[e.index].appendChild(document.createTextNode(t))}function Eu(e,t,n){e.nodes[e.index].setAttribute(bu(t),n)}function Ro({textSig:e,doneSig:t}){let n=M(null);return w(()=>{let o=n.current;if(!o)return;o.classList.add(`${x.cssPrefix}-md`);let i=Xr(o),a=jr(i),s=0,l=qe(()=>{let u=e.value,_=t.value;u.length<s&&(o.replaceChildren(),i=Xr(o),a=jr(i),s=0);let m=u.slice(s);m&&ve(a,m),s=u.length,_&&gl(a)}),c=new MutationObserver(u=>{for(let _ of u)for(let m of _.addedNodes){if(!(m instanceof HTMLElement))continue;let g=m.matches?.("a")?[m]:[...m.querySelectorAll?.("a")??[]];for(let f of g)hl(f)}});c.observe(o,{childList:!0,subtree:!0});for(let u of o.querySelectorAll("a"))hl(u);let d=u=>{let _=u.target?.closest?.("a");if(!_||!(_ instanceof HTMLAnchorElement))return;let m=_.getAttribute("href")??"";!m||m.startsWith("#")||(u.preventDefault(),window.open(m,"_blank","noopener,noreferrer"))};return o.addEventListener("click",d),()=>{l(),c.disconnect(),o.removeEventListener("click",d)}},[e,t]),r("div",{ref:n})}function vl({text:e}){let t=xe(()=>H(e),[e]),n=xe(()=>H(!0),[]);return r(Ro,{textSig:t,doneSig:n})}function hl(e){let t=e.getAttribute("href")??"";if(!t||t.startsWith("#"))return;e.target!=="_blank"&&(e.target="_blank");let n=new Set((e.rel||"").split(/\s+/).filter(Boolean));n.add("noopener"),n.add("noreferrer"),e.rel=[...n].join(" ")}var ye=x.cssPrefix;function bl(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/[-_]+/g," ")}function xl({part:e,strings:t,active:n,onDecision:o}){let i=re(()=>e.approvalSig.value),a=re(()=>e.inputSig.value),s=_t("");if(i.value?.approved!==void 0){let d=i.value;return r("div",{class:`${ye}-tool-approval ${ye}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${ye}-tool-decided-label`,"data-approved":d?.approved?"true":"false",children:d?.approved?t.approved:t.rejected}),r("strong",{class:`${ye}-tool-title`,children:bl(e.toolName)}),d?.reason?r("span",{class:`${ye}-tool-decided-value`,children:d.reason}):null]})}let c=Au(a.value);return r("div",{class:`${ye}-tool-approval`,"data-testid":S.toolApproval,children:[r("div",{class:`${ye}-tool-head`,children:[r("span",{class:`${ye}-tool-badge`,children:t.approvalRequired}),r("strong",{class:`${ye}-tool-title`,children:bl(e.toolName)})]}),c?r("pre",{class:`${ye}-tool-args`,children:c}):null,n?r(ne,{children:[r("input",{class:`${ye}-field-input`,value:s.value,placeholder:t.approvalReason,onInput:d=>{s.value=d.target.value}}),r("div",{class:`${ye}-form-actions`,children:[r("button",{type:"button",class:`${ye}-tool-reject`,onClick:()=>o(e.toolCallId,!1,s.value.trim()||void 0),"data-testid":S.toolReject,children:t.reject}),r("button",{type:"button",class:`${ye}-tool-approve`,onClick:()=>o(e.toolCallId,!0,s.value.trim()||void 0),"data-testid":S.toolApprove,children:t.approve})]})]}):r("p",{class:`${ye}-tool-stale-note`,children:t.stepNoLongerActive})]})}function Au(e){if(e==null)return"";try{let t=typeof e=="string"?e:JSON.stringify(e,null,2);return t.length>600?`${t.slice(0,600)}\u2026`:t}catch{return""}}function yl(e){let t=e&&typeof e=="object"?e:{},n=t.responseType;return{title:pn(t.title),question:pn(t.question)??"Please provide the missing information.",description:pn(t.description),placeholder:pn(t.placeholder),responseType:n==="single-choice"||n==="multi-choice"||n==="confirmation"||n==="free-text"?n:"free-text",choices:Array.isArray(t.choices)?t.choices:void 0,allowOther:typeof t.allowOther=="boolean"?t.allowOther:void 0,required:typeof t.required=="boolean"?t.required:!0,defaultValues:Array.isArray(t.defaultValues)?t.defaultValues.filter(o=>typeof o=="string"):void 0,minSelections:Pl(t.minSelections),maxSelections:Pl(t.maxSelections),validationHint:pn(t.validationHint)}}function Sl(e){if(e.responseType==="confirmation")return[];let t=(e.choices??[]).map(Ru).filter(i=>i!==null),n="textarea";e.responseType==="single-choice"&&t.length>0?n="radio":e.responseType==="multi-choice"&&(n="multiselect");let o=n==="multiselect"?e.defaultValues?.join(", "):e.defaultValues?.[0];return[{name:"answer",label:e.question,type:n,placeholder:e.placeholder,required:e.required??!0,defaultValue:o,options:t.length>0?t:void 0,allowOther:e.allowOther,validationHint:e.validationHint,validation:n==="multiselect"?{minSelections:e.minSelections,maxSelections:e.maxSelections}:void 0}]}function Ru(e){return typeof e=="string"?e?{value:e,label:e}:null:e&&typeof e.value=="string"&&e.value?{value:e.value,label:e.label??e.value,description:e.description}:null}function pn(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function Pl(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}var Pe=x.cssPrefix;function wl({part:e,strings:t,active:n,onSubmit:o,onDecision:i}){let a=re(()=>e.stateSig.value),s=re(()=>e.approvalSig.value),l=re(()=>yl(e.inputSig.value)),c=a.value==="output"||a.value==="error"||s.value?.approved!==void 0,d=s.value!==void 0,u=(g,f)=>{d?i(e.toolCallId,f,g):l.value.responseType==="confirmation"?o(e.toolCallId,{confirmed:f}):o(e.toolCallId,f?{answer:g}:{})};if(c)return r(Lu,{part:e,strings:t});if(!n)return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-stale`,"data-testid":S.toolAskInput,children:[r(kl,{strings:t,title:l.value.title??l.value.question}),r("p",{class:`${Pe}-tool-stale-note`,children:t.stepNoLongerActive})]});let _=l.value,m=_.responseType==="confirmation";return r("div",{class:`${Pe}-tool-ask-input`,"data-testid":S.toolAskInput,children:[r(kl,{strings:t,title:_.title}),_.description?r("p",{class:`${Pe}-tool-desc`,children:_.description}):null,m?r("p",{class:`${Pe}-tool-question`,children:_.question}):null,m?r("div",{class:`${Pe}-form-actions`,children:[r("button",{type:"button",class:`${Pe}-form-skip`,onClick:()=>u(void 0,!1),"data-testid":S.toolInputSkip,children:t.reject}),r("button",{type:"button",class:`${Pe}-form-submit`,onClick:()=>u(void 0,!0),"data-testid":S.toolInputSubmit,children:t.approve})]}):r(Io,{fields:Sl(_),strings:t,submitLabel:t.inputSubmit,onSubmit:g=>u(g.answer??Object.values(g).join(", "),!0),skipLabel:_.required===!1?t.inputSkip:void 0,onSkip:_.required===!1?()=>u(void 0,!1):void 0,submitTestId:S.toolInputSubmit,skipTestId:S.toolInputSkip})]})}function kl({strings:e,title:t}){return r("div",{class:`${Pe}-tool-head`,children:[r("span",{class:`${Pe}-tool-badge`,children:e.inputRequired}),t?r("strong",{class:`${Pe}-tool-title`,children:t}):null]})}function Lu({part:e,strings:t}){let n=re(()=>e.outputSig.value),o=re(()=>e.approvalSig.value),i=o.value?.approved!==void 0?o.value.reason??"":Mu(n.value),a=o.value?.approved===!1;return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${Pe}-tool-decided-label`,children:a?t.inputSkip:t.inputSubmitted}),r("span",{class:`${Pe}-tool-decided-value`,children:a?"":i||t.inputSubmitted})]})}function Mu(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="object"){let t=e;return"confirmed"in t?t.confirmed?"Yes":"No":Object.values(t).filter(n=>typeof n=="string"||typeof n=="number").join(", ")}return String(e)}function Cl({part:e,strings:t}){let n=x.cssPrefix;return r("span",{class:`${n}-tool-chip`,role:"status",children:[r("span",{children:[t.usedTool,":"]}),r("strong",{children:e.toolName})]})}var Ae=x.cssPrefix;function Tl({message:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:a=!1,tool:s}){let c=re(()=>e.partsSig.value).value,d=re(()=>e.partsSig.value.some(h=>h.kind==="text"&&h.textSig.value.length>0)),u=re(()=>o&&e.partsSig.value.some(h=>h.kind==="reasoning")),_=e.role==="assistant"&&e.status==="streaming",m=n==="buffered"&&_,g=_&&!d.value,f=_&&!m&&!(u.value&&g),v=Nu(e.createdAt);return r("div",{class:`${Ae}-bubble-row`,"data-role":e.role,"data-testid":he(S.messageBubble,e.id),children:r("div",{class:`${Ae}-bubble-col`,children:[r("div",{class:`${Ae}-bubble`,children:[m?r(Bu,{label:t.loading}):c.map(h=>r(Du,{part:h,active:g,strings:t,showReasoning:o,showToolCalls:i,interactive:a,tool:s},Hu(h))),f&&r(Fu,{}),e.status==="error"&&e.errorText?r("div",{class:`${Ae}-error`,role:"alert",children:r("span",{children:e.errorText})}):null]}),v?r("time",{class:`${Ae}-bubble-time`,dateTime:v.iso,title:v.full,children:v.short}):null]})})}function Nu(e){if(typeof e!="number"||!Number.isFinite(e))return null;try{let t=new Date(e);return{short:t.toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit"}),full:t.toLocaleString(void 0,{dateStyle:"full",timeStyle:"short"}),iso:t.toISOString()}}catch{return null}}function Du({part:e,active:t,strings:n,showReasoning:o,showToolCalls:i,interactive:a,tool:s}){switch(e.kind){case"text":return r(Ro,{textSig:e.textSig,doneSig:e.doneSig});case"reasoning":return o?r($u,{part:e,active:t,strings:n}):null;case"tool":return r(Ou,{part:e,strings:n,showToolCalls:i,interactive:a,tool:s});case"file":return e.mediaType.startsWith("image/")?r("img",{src:e.url,alt:"",loading:"lazy"}):r("a",{href:e.url,target:"_blank",rel:"noreferrer noopener",children:e.url});case"source":return null}}function Ou({part:e,strings:t,showToolCalls:n,interactive:o,tool:i}){let a=re(()=>e.stateSig.value),s=re(()=>e.approvalSig.value!==void 0);if(i?.humanInLoop){if(po(e.toolName)||a.value==="awaiting-input")return r(wl,{part:e,strings:t,active:o,onSubmit:i.onResult,onDecision:i.onDecision});if(s.value||a.value==="awaiting-approval")return r(xl,{part:e,strings:t,active:o,onDecision:i.onDecision})}return n?r(Cl,{part:e,strings:t}):null}function $u({part:e,active:t,strings:n}){return r("details",{class:`${Ae}-reasoning`,open:t,"data-active":t?"true":void 0,children:[r("summary",{class:`${Ae}-reasoning-summary`,children:r("span",{class:`${Ae}-reasoning-label`,children:t?n.thinking:n.thoughts})}),r("div",{class:`${Ae}-reasoning-body`,children:r(Ro,{textSig:e.textSig,doneSig:e.doneSig})})]})}function Hu(e){switch(e.kind){case"text":case"reasoning":return`${e.kind}:${e.id}`;case"tool":return`tool:${e.toolCallId}`;case"file":return`file:${e.url}`;case"source":return`source:${e.sourceId}`}}function Fu(){return r("span",{class:`${Ae}-typing`,"aria-hidden":"true",children:[r("span",{}),r("span",{}),r("span",{})]})}function Bu({label:e}){return r("span",{class:`${Ae}-loading`,role:"status",children:[r("span",{class:`${Ae}-loading-spinner`,"aria-hidden":"true"}),r("span",{class:`${Ae}-loading-label`,children:e})]})}var Ht=x.cssPrefix,Jr=120,zu=350,Uu=1200;function El({messagesSig:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,loading:a,idle:s,tool:l,form:c,formMarkers:d,onFillForm:u}){let _=M(null),m=re(()=>e.value),[g,f]=T(!1),[v,h]=T(!1),I=M(!1),b=M(!1),C=M(!1),N=M(0),z=()=>C.current||performance.now()-N.current<zu,K=M(0),$=y=>{K.current=performance.now(),y.scrollTop=y.scrollHeight},de=m.value[0]?.id;Tr(()=>{let y=_.current;if(!y||m.value.length===0||(I.current=!0,!m.value.some(Je=>Je.role==="user")))return;let D=()=>$(y);D();let me=new ResizeObserver(D);me.observe(y);let Ce=new MutationObserver(D);Ce.observe(y,{childList:!0,subtree:!0,characterData:!0});let Te=setTimeout(()=>{me.disconnect(),Ce.disconnect()},300);return()=>{me.disconnect(),Ce.disconnect(),clearTimeout(Te)}},[de]);let U=M(0);w(()=>{let y=_.current,D=m.value,me=U.current;if(U.current=D.length,!y||!I.current)return;if(D.slice(me).some(Te=>Te.role==="user")){b.current=!1,$(y);return}if(b.current||z())return;y.scrollHeight-y.scrollTop-y.clientHeight<Jr&&$(y)},[m.value.length]),w(()=>{let y=_.current;if(!y)return;let D=m.value.at(-1);if(!D)return;let me=()=>{if(b.current||z())return;y.scrollHeight-y.scrollTop-y.clientHeight<Jr*2&&$(y)};if(D.status!=="streaming"){let Te=requestAnimationFrame(me);return()=>cancelAnimationFrame(Te)}me();let Ce=new MutationObserver(me);return Ce.observe(y,{childList:!0,subtree:!0,characterData:!0}),()=>Ce.disconnect()},[m.value]);let q=c?.form.id;Tr(()=>{let y=_.current;!y||!q||b.current||m.value.some(D=>D.role==="user")&&$(y)},[q]),w(()=>{let y=_.current;if(!y)return;let D=()=>f(y.scrollHeight-y.scrollTop-y.clientHeight>Jr*2),me,Ce=()=>{D(),performance.now()-K.current>150&&(b.current=y.scrollHeight-y.scrollTop-y.clientHeight>8),h(!0),clearTimeout(me),me=setTimeout(()=>h(!1),Uu)},Te=()=>{b.current=!0},Je=Ye=>{Ye.deltaY<0&&Te()},Bt=0,ht=Ye=>{Bt=Ye.touches[0]?.clientY??0,C.current=!0},zt=Ye=>{(Ye.touches[0]?.clientY??0)>Bt+4&&Te()},Re=()=>{C.current=!1,N.current=performance.now()},Ut=()=>{C.current=!0};return y.addEventListener("scroll",Ce,{passive:!0}),y.addEventListener("wheel",Je,{passive:!0}),y.addEventListener("touchstart",ht,{passive:!0}),y.addEventListener("touchmove",zt,{passive:!0}),y.addEventListener("touchend",Re,{passive:!0}),y.addEventListener("touchcancel",Re,{passive:!0}),y.addEventListener("pointerdown",Ut,{passive:!0}),window.addEventListener("pointerup",Re,{passive:!0}),window.addEventListener("pointercancel",Re,{passive:!0}),D(),()=>{y.removeEventListener("scroll",Ce),y.removeEventListener("wheel",Je),y.removeEventListener("touchstart",ht),y.removeEventListener("touchmove",zt),y.removeEventListener("touchend",Re),y.removeEventListener("touchcancel",Re),y.removeEventListener("pointerdown",Ut),window.removeEventListener("pointerup",Re),window.removeEventListener("pointercancel",Re),clearTimeout(me)}},[]);let We=()=>{let y=_.current;y&&(b.current=!1,$(y))},ke=[],k="",J=m.value.at(-1)?.id,Z=[...d??[]].toSorted((y,D)=>(y.createdAt??1/0)-(D.createdAt??1/0)),pe=y=>r(dl,{marker:y,strings:t,onFill:!c&&u?()=>u(y.formId):void 0},y.key),fe=y=>{for(let D=Z[0];D?.createdAt!==void 0&&!(y!==void 0&&D.createdAt>y);D=Z[0])Z.shift(),ke.push(pe(D))};for(let y of m.value){fe(y.createdAt);let D=Wu(y.createdAt);D&&D!==k&&(ke.push(r("div",{class:`${Ht}-date-divider`,children:r("span",{class:`${Ht}-date-pill`,title:Gu(y.createdAt),children:Vu(y.createdAt,t)})},`day:${D}`)),k=D),ke.push(r(Tl,{message:y,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:!!s&&y.id===J,tool:l},y.id))}for(let y of Z)ke.push(pe(y));return r("div",{class:`${Ht}-list-wrap`,children:[r("div",{ref:_,class:`${Ht}-list`,role:"log","aria-live":"polite","aria-relevant":"additions text","data-scrolling":v?"true":void 0,children:[a&&m.value.length===0?r("div",{class:`${Ht}-list-loading`,role:"status",children:t.conversationLoading}):null,ke,c?r(cl,{form:c.form,strings:t,onSubmit:c.onSubmit,onSkip:c.onSkip}):null]}),g?r("button",{type:"button",class:`${Ht}-jump`,onClick:We,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":S.scrollToBottom,children:r(zs,{})}):null]})}function Wu(e){if(typeof e!="number"||!Number.isFinite(e))return"";let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function Gu(e){if(typeof e!="number"||!Number.isFinite(e))return"";try{return new Date(e).toLocaleDateString(void 0,{dateStyle:"full"})}catch{return""}}function Vu(e,t){let n=new Date(e),o=a=>new Date(a.getFullYear(),a.getMonth(),a.getDate()).getTime(),i=Math.round((o(new Date)-o(n))/864e5);return i<=0?t.dateToday:i===1?t.dateYesterday:i<7?n.toLocaleDateString(void 0,{weekday:"long"}):n.toLocaleDateString(void 0,{month:"long",day:"numeric",year:"numeric"})}var Ku=["today","yesterday","lastWeek","older"];function qu(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return"older";let o=Math.floor((Il(e)-Il(n))/(1440*60*1e3));return o<=0?"today":o===1?"yesterday":o<7?"lastWeek":"older"}function Al(e,t){let n=new Map;for(let o of t){let i=qu(e,o.lastMessageAt),a=n.get(i);a?a.push(o):n.set(i,[o])}return Ku.filter(o=>n.has(o)).map(o=>({bucket:o,conversations:n.get(o)}))}function Il(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}var ju=B.scope("history"),Xu={today:"dateToday",yesterday:"dateYesterday",lastWeek:"dateLastWeek",older:"dateOlder"};function Ju(e,t,n){let o=Date.parse(e);return Number.isFinite(o)?new Date(o).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:"numeric",minute:"2-digit"}).format(o):t-o<10080*60*1e3?new Intl.DateTimeFormat(n,{weekday:"short"}).format(o):new Intl.DateTimeFormat(n,{month:"short",day:"numeric"}).format(o):""}function Lo({transport:e,strings:t,locale:n,visitorId:o,onSelect:i,onNewConversation:a}){let s=x.cssPrefix,l=e.peekConversations({visitorId:o}),[c,d]=T(l?"loaded":"loading"),[u,_]=T(l?.conversations??[]);w(()=>{let v=!1;return e.listConversations({visitorId:o}).then(h=>{v||(_(h.conversations??[]),d("loaded"))}).catch(h=>{v||(ju.warn("listConversations failed",{err:h}),d("error"))}),()=>{v=!0}},[e,o]);let m=a?r("div",{class:`${s}-history-footer`,children:r("button",{type:"button",class:`${s}-history-new`,onClick:a,"data-testid":S.sidebarNewConversation,children:[r(Ps,{}),t.newConversation]})}):null;if(c==="loading")return r(ne,{children:[r("div",{class:`${s}-history`,"aria-busy":"true","aria-label":t.historyLoading,children:r("div",{class:`${s}-history-group`,"aria-hidden":"true",children:[r("div",{class:`${s}-history-heading`,children:r("span",{class:`${s}-history-skeleton-line ${s}-skeleton-heading`})}),r("div",{class:`${s}-history-card`,children:[0,1,2].map(v=>r("div",{class:`${s}-history-skeleton-item`,children:[r("span",{class:`${s}-history-skeleton-avatar`}),r("span",{class:`${s}-history-skeleton-body`,children:[r("span",{class:`${s}-history-skeleton-line ${s}-skeleton-title`}),r("span",{class:`${s}-history-skeleton-line ${s}-skeleton-preview`})]})]},v))})]})}),m]});if(c==="error"||u.length===0)return r(ne,{children:[r("div",{class:`${s}-history-empty`,children:t.historyEmpty}),m]});let g=Date.now(),f=Al(g,u);return r(ne,{children:[r("div",{class:`${s}-history`,role:"list",children:f.map(v=>r("div",{class:`${s}-history-group`,children:[r("div",{class:`${s}-history-heading`,children:t[Xu[v.bucket]]}),r("div",{class:`${s}-history-card`,children:v.conversations.map(h=>r("button",{type:"button",role:"listitem",class:`${s}-history-item`,onClick:()=>i(h),"data-closed":h.canContinue?void 0:"true","data-unread":(h.unreadCount??0)>0?"true":void 0,"data-testid":he(S.historyItem,h.conversationId),children:[r("span",{class:`${s}-history-avatar`,"aria-hidden":"true",children:r(Or,{})}),r("span",{class:`${s}-history-body`,children:[r("span",{class:`${s}-history-row`,children:[r("span",{class:`${s}-history-title`,children:h.title}),r("span",{class:`${s}-history-time`,children:Ju(h.lastMessageAt,g,n)})]}),r("span",{class:`${s}-history-row`,children:[r("span",{class:`${s}-history-preview`,children:h.preview??(h.canContinue?t.historyContinue:t.conversationClosed)}),(h.unreadCount??0)>0?r("span",{class:`${s}-history-dot`}):null]})]})]},h.conversationId))})]},v.bucket))}),m]})}var Rl=x.cssPrefix;function Ll({suggestions:e,onPick:t}){return e.length===0?null:r("div",{class:`${Rl}-suggestions`,role:"group","aria-label":"Suggested replies",children:e.map((n,o)=>r("button",{type:"button",class:`${Rl}-suggestion`,onClick:()=>t(n),"data-testid":he(S.suggestion,o),children:n.label},n.id))})}var Se=x.cssPrefix;function Ml(e){let{options:t,onClose:n}=e,o=t.strings,i=M(null);w(()=>{let c=i.current;if(!c)return;let d=ko(c),u=_=>{_.key==="Escape"&&n?.()};return c.addEventListener("keydown",u),()=>{d(),c.removeEventListener("keydown",u)}},[n]);let a=M(null),s=F(c=>{a.current?.attachFromDrop(c)},[]),{visible:l}=To({containerRef:i,onDrop:s});return yo(i.current,t.mode==="modal"),r("div",{ref:i,class:`${Se}-panel`,role:"dialog","aria-modal":"false","aria-label":o.panelTitle,style:{position:"relative"},"data-testid":S.panel,children:[r(Yr,{...e,containerEl:i.current,dragOver:l,composerAttachApiRef:a}),r(Qr,{poweredBy:e.options.poweredBy})]})}function Yr(e){let{options:t,transport:n,feedback:o,bus:i,panelSize:a,view:s,canSend:l,isStreaming:c,loadingMessages:d,messagesSig:u,agent:_,suggestions:m,initialWidgetSize:g,visitorId:f,onClose:v,onBack:h,onClear:I,onToggleHistory:b,onSelectHistoryConversation:C,onNewConversation:N,onWidgetSizeChange:z,onSend:K,onStop:$,onSuggestion:de,activeForm:U,formMarkers:q,onFormSubmit:We,onFormSkip:ke,onFormFill:k,tool:J,containerEl:Z,dragOver:pe,composerAttachApiRef:fe}=e,y=t.strings,D;return U?D=null:l?D=r(ne,{children:[r(Ll,{suggestions:m,onPick:de}),r(ol,{options:t,transport:n,feedback:o,bus:i,isStreaming:c,onSend:K,onStop:$,attachApiRef:fe})]}):D=r(Qu,{label:y.conversationClosed,ctaLabel:y.startNewConversation,onNewConversation:I}),r(ne,{children:[s==="history"?r(Yu,{strings:y,onBack:b,onClose:v,showClose:So(t.mode,a,t.actions)}):r("header",{class:`${Se}-header`,"data-testid":S.panelHeader,children:[h?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:h,"aria-label":y.moduleBack,title:y.moduleBack,children:r(cn,{})}):null,_?r(el,{agent:_,strings:y}):r("h1",{children:y.panelTitle}),r(Be,{panelProps:e,variant:"chat"})]}),s==="history"?r(Lo,{transport:n,strings:y,locale:t.locale,visitorId:f,onSelect:me=>C(me.conversationId),onNewConversation:N}):r(ne,{children:[r(rl,{visible:pe,strings:y}),r(El,{messagesSig:u,strings:y,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,loading:d,idle:!c,tool:J,form:U?{form:U,onSubmit:We,onSkip:ke}:null,formMarkers:q,onFillForm:k}),D,r(Zu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?r(Po,{panelEl:Z,resize:t.size.resize,position:t.position,initialSize:g,onSizeChange:z,strings:y}):null]})}function Yu({strings:e,onBack:t,onClose:n,showClose:o}){return r("header",{class:`${Se}-header`,children:[r("button",{type:"button",class:`${Se}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:r(cn,{})}),r("h1",{children:e.historyTitle}),o?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null]})}function Qu({label:e,ctaLabel:t,onNewConversation:n}){return r("div",{class:`${Se}-readonly-banner`,role:"note",children:[r("span",{class:`${Se}-readonly-label`,children:e}),r("button",{type:"button",class:`${Se}-readonly-cta`,onClick:n,children:t})]})}function Zu({disclaimer:e}){return e?r("div",{class:`${Se}-composer-footer`,children:r("div",{class:`${Se}-disclaimer`,children:e})}):null}function Qr({poweredBy:e}){return e?r("div",{class:`${Se}-poweredby-bar`,children:r(ep,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function ep({logoUrl:e,text:t,href:n}){let o=r(ne,{children:[e?r("img",{class:`${Se}-poweredby-logo`,src:e,alt:"",loading:"lazy"}):null,t?r("span",{children:t}):null]});return n?r("a",{class:`${Se}-poweredby`,href:n,target:"_blank",rel:"noopener noreferrer",children:o}):r("span",{class:`${Se}-poweredby`,children:o})}function Nl(e){let t=M(e);t.current=e;let n=M(null);return n.current??(n.current=tp(t)),n.current}function tp(e){let t=H(null),n=new Set,o=c=>`${e.current.conversationId()??""}:${c}`,i=c=>c.frequency==="always"?!1:c.frequency==="conversation"?n.has(o(c.id)):c.id in e.current.persistence.loadFormsDone(),a=(c,d)=>{if(t.value)return;let u=e.current;if(c==="manual"){let _=u.forms.list.find(m=>m.id===d);_&&(t.value={form:_,trigger:"manual"});return}for(let _ of u.forms.byTrigger[c]??[]){let m=_.triggers.find(g=>g.kind===c);if(!(!m||!np(m,u)||i(_)||!op(_,u))){t.value={form:_,trigger:c};return}}},s=(c,d)=>{let u=t.value;if(!u)return;t.value=null;let{form:_,trigger:m}=u;_.frequency==="conversation"?n.add(o(_.id)):_.frequency!=="always"&&e.current.persistence.saveFormDone(_.id),e.current.onComplete(_,m,c,d)};return{activeForm:t,fire:a,refresh:()=>{let c=t.value;if(!c)return;let d=e.current.forms.list.find(u=>u.id===c.form.id);d&&d!==c.form&&(t.value={form:d,trigger:c.trigger})},complete:c=>s(c,!1),skip:()=>s({},!0)}}function np(e,t){return e.kind==="after-messages"?t.messageCount()>=Number(e.param??0):e.kind==="page-area"?t.pageArea()===e.param:!0}function op(e,t){let n=e.when;if(!n)return!0;if(n.missingContext?.length){let i=t.userContext()??{};if(n.missingContext.some(a=>i[a]!==void 0&&i[a]!==""))return!1}if(n.pageArea&&!(Array.isArray(n.pageArea)?n.pageArea:[n.pageArea]).includes(t.pageArea()??""))return!1;let o=t.messageCount();return!(n.minMessages!=null&&o<n.minMessages||n.maxMessages!=null&&o>n.maxMessages)}function Dl(e){let t=x.cssPrefix,{site:n,blocks:o,strings:i,collapsed:a}=e,s=o?.navigation??[],l=o?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return r("aside",{class:`${t}-sidebar`,"data-collapsed":a?"true":"false","data-testid":S.sidebar,children:[r("div",{class:`${t}-sidebar-header`,children:[r(rp,{site:n}),r("button",{type:"button",class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?"false":"true",title:c,onClick:e.onToggleCollapsed,"data-testid":S.sidebarToggle,children:r(ip,{collapsed:a})})]}),a?null:r(ne,{children:[s.length>0?r("nav",{class:`${t}-sidebar-section`,"data-section":"navigation",children:r(ap,{items:s})}):null,l.length>0?r("div",{class:`${t}-sidebar-section`,"data-section":"link-cards",children:r(sp,{items:l})}):null,e.showConversations?r("div",{class:`${t}-sidebar-conversations`,children:r(Lo,{transport:e.transport,strings:e.strings,locale:e.locale,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function rp({site:e}){let t=x.cssPrefix;if(e?.logo?.url){let n=e.logo.alt??e.title??"Logo";return r("picture",{children:[e.logoDark?.url?r("source",{srcset:e.logoDark.url,media:"(prefers-color-scheme: dark)"}):null,r("img",{class:`${t}-sidebar-logo`,src:e.logo.url,alt:n})]})}return r("div",{class:`${t}-sidebar-title`,children:e?.title??x.name})}function ip({collapsed:e}){return r("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","aria-hidden":"true",children:e?r("polyline",{points:"9 6 15 12 9 18"}):r("polyline",{points:"15 6 9 12 15 18"})})}function ap({items:e}){let t=x.cssPrefix;return r("ul",{class:`${t}-sidebar-nav`,children:e.map(n=>r("li",{children:r("a",{class:`${t}-sidebar-nav-item`,href:n.href,target:n.href?"_blank":void 0,rel:n.href?"noreferrer":void 0,children:[n.icon?r("span",{class:`${t}-sidebar-nav-icon`,"data-icon":n.icon}):null,r("span",{class:`${t}-sidebar-nav-label`,children:n.label})]})},n.id??n.label))})}function sp({items:e}){let t=x.cssPrefix;return r("div",{class:`${t}-sidebar-cards`,children:e.map(n=>r("a",{class:`${t}-sidebar-card`,href:n.href,target:n.href?"_blank":void 0,rel:n.href?"noreferrer":void 0,children:[r("div",{class:`${t}-sidebar-card-label`,children:n.label}),n.description?r("div",{class:`${t}-sidebar-card-desc`,children:n.description}):null]},n.id??n.label))})}var Ol=x.cssPrefix;function $l(e){return r("main",{class:`${Ol}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?"true":"false",children:[r(Dl,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,locale:e.locale,visitorId:e.visitorId,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),r("section",{class:`${Ol}-page-chat`,"aria-label":"Chat",children:e.children})]})}var Hl=e=>Object.fromEntries(e.map(t=>[t,[]]));function Fl(e,t,n){let o=H({activeTab:e,stacks:Hl(t)});return{sig:o,switchTab(i){o.value.activeTab!==i&&(o.value={...o.value,activeTab:i},n?.(i))},push(i){let a=o.value,s=a.stacks[a.activeTab]??[];o.value={...a,stacks:{...a.stacks,[a.activeTab]:[...s,i]}}},pop(){let i=o.value,a=i.stacks[i.activeTab]??[];a.length!==0&&(o.value={...i,stacks:{...i.stacks,[i.activeTab]:a.slice(0,-1)}})},reset(i){o.value={activeTab:i,stacks:Hl(t)}}}}var Bl=e=>e.stacks[e.activeTab]??[],zl=e=>Bl(e).at(-1),Ul=e=>Bl(e).length===0;var Wl={Icon:dn};var rt=x.cssPrefix;function Mo({title:e,actions:t}){return r("header",{class:`${rt}-back-header`,"data-variant":"title",children:[r("span",{class:`${rt}-back-spacer`,"aria-hidden":"true"}),r("h1",{class:`${rt}-back-title`,children:e}),t??r("span",{class:`${rt}-back-spacer`,"aria-hidden":"true"})]})}function No({title:e,backLabel:t,onBack:n,actions:o,testid:i}){return r("header",{class:`${rt}-back-header`,"data-testid":i,children:[r("button",{type:"button",class:`${rt}-icon-btn`,onClick:n,"aria-label":t,title:t,children:r(cn,{})}),r("h1",{class:`${rt}-back-title`,children:e}),o??r("span",{class:`${rt}-back-spacer`,"aria-hidden":"true"})]})}var Ft=x.cssPrefix;function Gl({placeholder:e,onActivate:t}){return r("button",{type:"button",class:`${Ft}-home-search`,onClick:t,"data-testid":S.homeSearch,children:[r("span",{class:`${Ft}-home-search-text`,children:e}),r("span",{class:`${Ft}-home-search-icon`,"aria-hidden":"true",children:r(Hr,{})})]})}function Vl({placeholder:e,value:t,onInput:n}){return r("div",{class:`${Ft}-home-search`,"data-input":"true",children:[r("input",{type:"search",class:`${Ft}-home-search-input`,placeholder:e,value:t,onInput:o=>n(o.currentTarget.value),"data-testid":S.helpSearch}),r("span",{class:`${Ft}-home-search-icon`,"aria-hidden":"true",children:r(Hr,{})})]})}var fn=x.cssPrefix;function Do({title:e,subtitle:t,onClick:n,testid:o}){return r("button",{type:"button",class:`${fn}-list-row`,onClick:n,"data-testid":o,children:[r("span",{class:`${fn}-list-row-body`,children:[r("span",{class:`${fn}-list-row-title`,children:e}),t?r("span",{class:`${fn}-list-row-sub`,children:t}):null]}),r("span",{class:`${fn}-list-row-chevron`,"aria-hidden":"true",children:r(Dt,{})})]})}var Kl=x.cssPrefix;function De({tone:e="info",message:t,onRetry:n,strings:o}){return r("div",{class:`${Kl}-module-empty`,role:e==="error"?"alert":"status","aria-live":"polite",children:[r("span",{children:t}),n?r("button",{type:"button",class:`${Kl}-module-retry`,onClick:n,children:o.errorRetry}):null]})}var gt=x.cssPrefix,lp=B.scope("help"),cp=(e,t)=>t.url?e.push({kind:"iframe",url:t.url,title:t.title}):e.push({kind:"content",id:t.id,title:t.title});function dp(e){let t=new Map;for(let n of e){let o=n.categories?.[0]??"";(t.get(o)??t.set(o,[]).get(o)).push(n)}return[...t.entries()]}function ql(e,t){let n=t.toLowerCase(),o=n.indexOf(e);if(o!==-1)return 100-Math.min(o,99);let i=0;for(let a of e){if(i=n.indexOf(a,i),i===-1)return 0;i+=1}return 1}function _p(e,t){let n=t.toLowerCase().trim();return n?e.map(o=>({item:o,score:Math.max(ql(n,o.title)*2,ql(n,o.description??""))})).filter(o=>o.score>0).toSorted((o,i)=>i.score-o.score).map(o=>o.item):[]}function jl({article:e,nav:t}){return r(Do,{title:e.title,subtitle:e.description,onClick:()=>cp(t,e),testid:he(S.helpArticle,e.id)})}function up({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(""),[f,v]=T(0);w(()=>{let b=!1;return l("loading"),e.listContent({tags:a,sortBy:"order",limit:100}).then(C=>{b||(_(C.items??[]),l("loaded"))}).catch(C=>{b||(lp.warn("listContent (help) failed",{err:C}),d(ut(C,t)),l("error"))}),()=>{b=!0}},[e,a,f]);let h=xe(()=>_p(u,m),[u,m]);function I(){return m.trim().length>0?h.length===0?r(De,{message:t.helpSearchEmpty,strings:t}):r("div",{class:`${gt}-help-card`,children:h.map(b=>r(jl,{article:b,nav:o},b.id))}):s==="loading"?r(De,{message:t.helpLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>v(b=>b+1),strings:t}):u.length===0?r(De,{message:t.helpEmpty,strings:t}):dp(u).map(([b,C])=>r("section",{class:`${gt}-help-group`,children:[b?r("h2",{class:`${gt}-help-section-title`,children:b}):null,r("div",{class:`${gt}-help-card`,children:C.map(N=>r(jl,{article:N,nav:o},N.id))})]},b))}return r("div",{class:`${gt}-module`,children:[r(Mo,{title:t.helpTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${gt}-module-pad`,children:r(Vl,{placeholder:t.helpSearchPlaceholder,value:m,onInput:g})}),r("div",{class:`${gt}-help-list`,children:I()})]})}var Xl={Icon:$r,Root:e=>r(up,{...e})};var Jl=x.cssPrefix;function Zr({onClick:e,children:t,testid:n}){return e?r("button",{type:"button",class:`${Jl}-home-card`,"data-interactive":"true",onClick:e,"data-testid":n,children:t}):r("div",{class:`${Jl}-home-card`,"data-testid":n,children:t})}var oe=x.cssPrefix,Yl=B.scope("home");function pp(e){let t=e.options.userContext?.name,n=e.config.greetingText?be(e.strings,e.config.greetingText):void 0;return n?{title:t?n.replace("{name}",t):n.replace(/\s*\{name\}\s*/," ").trim(),subtitle:e.strings.homeGreetingLead}:t?{title:e.strings.homeGreetingNamed.replace("{name}",t),subtitle:e.strings.homeGreetingLead}:{title:e.strings.homeGreeting}}var fp=(e,t)=>t.url?e.push({kind:"iframe",url:t.url,title:t.title}):e.push({kind:"content",id:t.id,title:t.title});function mp(e){let{transport:t,strings:n,config:o,nav:i,panelProps:a}=e,[s,l]=T(null),[c,d]=T([]),u=o.contentTags?.join(",");w(()=>{if(!o.showRecentConversations)return;let h=!1;return t.listConversations({limit:1}).then(I=>!h&&l(I.conversations?.[0]??null)).catch(I=>!h&&Yl.warn("listConversations (home) failed",{err:I})),()=>{h=!0}},[t,o.showRecentConversations]),w(()=>{if(!o.contentTags?.length)return;let h=!1;return t.listContent({tags:o.contentTags,limit:6}).then(I=>!h&&d(I.items??[])).catch(I=>!h&&Yl.warn("listContent (home) failed",{err:I})),()=>{h=!0}},[t,u]);let _=pp(e),m=o.userAvatars??[],g=o.status,f=g?.text?be(n,g.text):n.homeStatus,v=o.contentBlockTitle?be(n,o.contentBlockTitle):n.homeContentTitle;return r("div",{class:`${oe}-module ${oe}-home`,"data-testid":S.homeView,children:r("div",{class:`${oe}-home-scroll`,children:[r("div",{class:`${oe}-home-hero`,children:[r("div",{class:`${oe}-home-hero-top`,children:[o.brandName?r("span",{class:`${oe}-home-brand`,"data-testid":S.homeBrand,children:o.brandName}):r("span",{class:`${oe}-home-brand-spacer`,"aria-hidden":"true"}),r("div",{class:`${oe}-home-hero-actions`,children:[m.length>0?r("div",{class:`${oe}-home-avatars`,children:m.map(h=>r("span",{class:`${oe}-home-avatar`,title:h.role?`${h.name} \xB7 ${h.role}`:h.name,children:h.avatar?r("img",{src:h.avatar,alt:"",loading:"lazy"}):r("span",{children:wo(h.name)})},h.name))}):null,r(Be,{panelProps:a,variant:"plain"})]})]}),o.showGreeting!==!1?r(ne,{children:[r("h1",{class:`${oe}-home-greeting`,"data-testid":S.homeGreeting,children:_.title}),_.subtitle?r("p",{class:`${oe}-home-lead`,children:_.subtitle}):null]}):null]}),r("div",{class:`${oe}-home-cards`,children:[o.showSearchBar!==!1?r(Gl,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout("help")}):null,s?r(Zr,{onClick:()=>i.selectConversation(s.conversationId),testid:S.homeRecent,children:r("div",{class:`${oe}-home-recent-row`,"data-unread":(s.unreadCount??0)>0?"true":void 0,children:[r("span",{class:`${oe}-home-recent-avatar`,"aria-hidden":"true",children:r(dn,{})}),r("span",{class:`${oe}-home-recent-body`,children:[r("span",{class:`${oe}-home-recent-title`,children:s.title}),s.preview?r("span",{class:`${oe}-home-recent-preview`,children:s.preview}):null]}),(s.unreadCount??0)>0?r("span",{class:`${oe}-home-recent-dot`,"aria-label":"Unread"}):null]})}):null,g?r(Zr,{onClick:g.url?()=>i.push({kind:"iframe",url:g.url,title:f}):void 0,children:r("div",{class:`${oe}-home-status`,"data-level":g.level??"operational",children:[r("span",{class:`${oe}-home-status-icon`,"aria-hidden":"true",children:r(Ws,{})}),r("span",{class:`${oe}-home-status-text`,children:f})]})}):null,c.length>0?r("section",{class:`${oe}-home-content`,children:[r("div",{class:`${oe}-home-content-title`,children:v}),r("div",{class:`${oe}-home-content-list`,children:c.map(h=>r(Do,{title:h.title,subtitle:h.description,onClick:()=>fp(i,h),testid:he(S.homeContentRow,h.id)},h.id))})]}):null]})]})})}var Ql={Icon:Gs,Root:e=>r(mp,{...e})};var it=x.cssPrefix,gp=B.scope("news");function hp({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(0);w(()=>{let v=!1;return l("loading"),e.listContent({tags:a,sortBy:"publishedAt",sortOrder:"desc"}).then(h=>{v||(_(h.items??[]),l("loaded"))}).catch(h=>{v||(gp.warn("listContent (news) failed",{err:h}),d(ut(h,t)),l("error"))}),()=>{v=!0}},[e,a,m]);function f(){return s==="loading"?r(De,{message:t.newsLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>g(v=>v+1),strings:t}):u.length===0?r(De,{message:t.newsEmpty,strings:t}):r("div",{class:`${it}-news-list`,children:u.map(v=>r("button",{type:"button",class:`${it}-news-card`,onClick:()=>o.push({kind:"content",id:v.id,title:v.title}),"data-testid":he(S.newsItem,v.id),children:[v.image?r("img",{class:`${it}-news-hero`,src:v.image,alt:"",loading:"lazy"}):null,r("span",{class:`${it}-news-body`,children:[r("span",{class:`${it}-news-title`,children:v.title}),v.description?r("span",{class:`${it}-news-summary`,children:v.description}):null]})]},v.id))})}return r("div",{class:`${it}-module`,children:[r(Mo,{title:t.newsTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${it}-module-scroll`,children:f()})]})}var Zl={Icon:Vs,Root:e=>r(hp,{...e})};var Oo={chat:Wl,home:Ql,help:Xl,news:Zl};var mn=x.cssPrefix;function ec({modules:e,activeTab:t,strings:n,unreadCount:o,onSelect:i}){return r("nav",{class:`${mn}-tabbar`,role:"tablist","aria-label":n.panelTitle,children:e.map(a=>{let s=Oo[a.layout].Icon,l=a.id===t,c=a.layout==="chat"&&o>0?o>9?"9+":String(o):null;return r("button",{type:"button",role:"tab","aria-selected":l,class:`${mn}-tab`,onClick:()=>i(a.id),"data-testid":he(S.tab,a.id),children:[r("span",{class:`${mn}-tab-icon`,"aria-hidden":"true",children:[r(s,{}),c?r("span",{class:`${mn}-tab-badge`,"data-testid":S.tabBadge,children:c}):null]}),r("span",{class:`${mn}-tab-label`,children:be(n,a.label)})]},a.id)})})}var tc=x.cssPrefix,vp="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads";function nc({url:e,title:t,strings:n,onBack:o,actions:i}){return r("div",{class:`${tc}-module`,children:[r(No,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:o,actions:i}),r("iframe",{class:`${tc}-content-frame`,src:e,title:t||"content",sandbox:vp,referrerpolicy:"no-referrer",loading:"lazy",allow:"fullscreen"})]})}var gn=x.cssPrefix,bp=B.scope("content");function oc({id:e,title:t,transport:n,strings:o,onBack:i,actions:a}){let[s,l]=T(null),[c,d]=T(!1),[u,_]=T(0),m=F(()=>{d(!1),l(null),_(f=>f+1)},[]);w(()=>{let f=!1;return n.listContent({ids:[e],limit:1}).then(v=>{if(f)return;let h=v.items[0];h?l(h):d(!0)}).catch(v=>{f||(bp.warn("listContent (reader) failed",{err:v}),d(!0))}),()=>{f=!0}},[n,e,u]);function g(){return c?r(De,{tone:"error",message:o.errorGeneric,onRetry:m,strings:o}):s===null?r(De,{message:o.contentLoading,strings:o}):r("article",{class:`${gn}-content`,"data-testid":S.contentView,children:[s.image?r("img",{class:`${gn}-content-hero`,src:s.image,alt:"",loading:"lazy"}):null,s.description?r("p",{class:`${gn}-content-subtitle`,children:s.description}):null,r(vl,{text:s.content??""})]})}return r("div",{class:`${gn}-module`,children:[r(No,{title:s?.title||t||o.moduleBack,backLabel:o.moduleBack,onBack:i,actions:a,testid:S.backHeader}),r("div",{class:`${gn}-module-scroll`,"data-testid":S.contentScroll,children:g()})]})}var ei=x.cssPrefix;function rc({panelProps:e,enabledModules:t,nav:n,unreadCount:o,onSelectConversation:i,onStartNewConversation:a,onSetPanelSize:s}){let l=e.options,c=l.strings,d=M(null);w(()=>{let $=d.current;if(!$)return;let de=ko($),U=q=>{q.key==="Escape"&&e.onClose?.()};return $.addEventListener("keydown",U),()=>{de(),$.removeEventListener("keydown",U)}},[e.onClose]);let u=M(null),_=F($=>{u.current?.attachFromDrop($)},[]),{visible:m}=To({containerRef:d,onDrop:_});yo(d.current,l.mode==="modal");let g=re(()=>n.sig.value).value,f=zl(g),v=l.modules.byId[g.activeTab],h=f?.kind==="iframe"||f?.kind==="content",I=t.length>1&&(Ul(g)||!h),b=M(null);w(()=>{if(h&&b.current===null)b.current=e.panelSize,e.panelSize==="normal"&&s("expanded");else if(!h&&b.current!==null){let $=b.current;b.current=null,s($)}},[h]);let C={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:$=>{let de=t.find(U=>U.layout===$);de&&n.switchTab(de.id)},selectConversation:i,startNewConversation:a},N=$=>({options:l,transport:e.transport,strings:c,config:$,visitorId:e.visitorId,nav:C,panelProps:e}),z=r(Be,{panelProps:e,variant:"plain"}),K;if(f?.kind==="iframe")K=r(nc,{url:f.url,title:f.title,strings:c,onBack:n.pop,actions:z});else if(f?.kind==="content")K=r(oc,{id:f.id,title:f.title,transport:e.transport,strings:c,onBack:n.pop,actions:z});else if(v?.layout==="chat")K=r(Yr,{...e,containerEl:d.current,dragOver:m,composerAttachApiRef:u});else if(v){let $=Oo[v.layout].Root;K=$?r($,{...N(v)},v.id):null}else K=null;return r("div",{ref:d,class:`${ei}-panel ${ei}-messenger`,role:"dialog","aria-modal":"false","aria-label":c.panelTitle,style:{position:"relative"},"data-testid":S.messengerHome,children:[r("div",{class:`${ei}-messenger-body`,children:K}),I?r(ec,{modules:t,activeTab:g.activeTab,strings:c,unreadCount:o,onSelect:n.switchTab}):null,r(Qr,{poweredBy:l.poweredBy}),l.size.resize?.enabled&&!(v?.layout==="chat"&&!f)?r(Po,{panelEl:d.current,resize:l.size.resize,position:l.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:c}):null]})}var hn=x.cssPrefix;function ic({strings:e,onClose:t}){return r("div",{class:`${hn}-panel ${hn}-modules-empty`,role:"dialog","aria-label":e.panelTitle,"data-testid":S.modulesEmpty,children:[t?r("button",{type:"button",class:`${hn}-icon-btn ${hn}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null,r("p",{class:`${hn}-modules-empty-text`,children:e.modulesEmpty})]})}function ac({callout:e,persistence:t}){let n=e?.text??"",o=e?.persistent??!0,[i,a]=T(()=>o?!1:t.loadCalloutDismissed(n));w(()=>{a(o?!1:t.loadCalloutDismissed(n))},[n,o,t]);let s=F(()=>{a(!0),o||t.saveCalloutDismissed(n)},[t,n,o]);return{dismissed:i,dismissCallout:s}}var V=B.scope("app"),ti=x.cssPrefix;function sc(e,t){return ps({...e,text:be(t,e.text)})}function lc({options:e,hostElement:t,bus:n}){let[o]=T(()=>nt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[i,a]=T(()=>o.getVisitorId()),s=o.loadUserPrefs(),[l,c]=T(()=>s.locale??e.locale),[d,u]=T(()=>s.themeMode??e.themeMode),[_,m]=T(()=>s.textSize??e.textSize),g=_t(o.loadConversationId()),f=_t([]),v=_t(0),[h,I]=T(!1),[b,C]=T([]);function N(){let p=e.modules.list,P=new Set(p.map(R=>R.id)),L=o.loadActiveModule();return L&&P.has(L)?L:p[0]?.id??""}function z(){return e.modules.list.find(p=>p.layout==="chat")?.id}let K=M();if(!K.current){let p=e.modules.list.map(P=>P.id);K.current=Fl(N(),p,P=>o.saveActiveModule(P))}let $=K.current,de=M(void 0);de.current=z();let[U,q]=T(!1),[We,ke]=T(null),[k,J]=T(!1),Z=e.mode==="standalone"||e.mode==="inline",pe=M(an(e,Lt(),o.loadPanelOpen(),o.loadPanelSize())),[fe,y]=T(pe.current.panelOpen),[D,me]=T(pe.current.panelOpen),Ce=M(D);Ce.current=D;let Te=M(!1),Je=M(void 0);w(()=>{fe&&me(!0)},[fe]);let Bt=M(!1),[ht,zt]=T(!1),{dismissed:Re,dismissCallout:Ut}=ac({callout:e.launcher.callout,persistence:o}),Ye=e.launcher.callout?.persistent??!0,vn=F(()=>{V.info("calloutDismiss"),n.emit("calloutDismiss",void 0),Ut()},[n,Ut]),[Le,vt]=T(pe.current.panelSize),pi=M(!1),[hc,zo]=T("chat"),[Wt,Gt]=T(!0),[Ge,bn]=T(!1),[vc,fi]=T(null),[Uo,xn]=T([]),[Pn,yn]=T(null),Sn=M(e.strings),[bc,xc]=T(void 0),[Pc,yc]=T(void 0),[Sc,kc]=T(()=>o.loadSidebarCollapsed()??!1),[Wo,wc]=T({}),[Y]=T(()=>new _o({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:ts({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:"x-public-key"}),endpoints:e.endpoints})),[Oe]=T(()=>new mo(f)),[ie]=T(()=>new bo(e.sound,e.haptics)),He=F(p=>{o.patchUserPrefs(p),Y.saveUserPrefs(o.loadUserPrefs()).catch(P=>{V.warn("saveUserPrefs failed",{err:P})})},[o,Y]);w(()=>{s.soundMuted!==void 0&&ie.setMuted(s.soundMuted)},[]),w(()=>{t.dataset.theme=d},[t,d,e]),w(()=>{t.dataset.textSize=_},[t,_,e]),w(()=>{ie.update(e.sound,e.haptics)},[ie,e.sound,e.haptics]),w(()=>()=>ie.destroy(),[ie]),w(()=>{let p=!0;return ie.mutedSig.subscribe(P=>{if(p){p=!1;return}He({soundMuted:P})})},[ie,He]),w(()=>{pi.current||!e.size.initialSize||(pi.current=!0,!o.loadPanelSize()&&vt(Rr(e.mode,e.size,Lt())))},[e.mode,e.size,o]),w(()=>{if(!U||Bt.current)return;Bt.current=!0;let p=an(e,Lt(),o.loadPanelOpen(),o.loadPanelSize());y(p.panelOpen),vt(p.panelSize)},[U,e,o]);let mi=M(!1),gi=M(!1),kn=M(null);w(()=>{if(!(!U||mi.current)){if(mi.current=!0,gi.current){let p=de.current;p&&$.switchTab(p);return}$.reset(N())}},[U]);let wn=F(p=>{!p||p.length===0||(f.value=p.map(P=>sc(P,Sn.current)))},[f]),Go=M(null),Cn=F(async p=>{try{let{formSubmissions:P}=await(p?Y.bootstrap(p):Go.current??Y.bootstrap()),L=new Map;return P.forEach((R,W)=>L.set(R.formId,W)),P.filter((R,W)=>!R.skipped||L.get(R.formId)===W).map((R,W)=>({key:`wire:${R.formId}:${R.createdAt??W}`,formId:R.formId,outcome:R.skipped?"skipped":"submitted",createdAt:co(R.createdAt),values:R.values}))}catch(P){return V.debug("bootstrap failed \u2014 no form markers (non-fatal)",{err:P}),[]}},[Y]),Vt=M(0),Kt=F((p,P)=>{let L=[...p.map(_e=>_e.createdAt),...P.map(_e=>_e.createdAt)].filter(_e=>_e!==void 0),R=(L.length?Math.min(...L):Date.now())-1,W=new Set(p.map(_e=>_e.id));return[...(Je.current?.messages??[]).filter(_e=>!W.has(_e.id)).map(_e=>{let Qe=sc(_e,Sn.current);return Qe.createdAt=R,Qe}),...p]},[]),Vo=F(async p=>{let P=Vt.current,L=()=>P!==Vt.current;I(!0);try{let[R,W]=await Promise.all([Y.loadConversation(p),Cn()]);if(L())return;let E=(R.messages??[]).map(Nr);C(W);let _e=kn.current?[kn.current]:[];E.length||_e.length?(f.value=[...Kt(E,W),..._e],Gt(R.canContinue??!0),xn(R.suggestions??[])):f.value=Kt([],W)}catch(R){if(L())return;V.warn("loadThread failed; resetting conversationId",{err:R,conversationId:p}),g.value=void 0,o.saveConversationId(void 0)}finally{L()||I(!1)}},[Y,Cn,f,g,o,Kt]),qt=F(async({newConversation:p})=>{let P=++Vt.current,L=()=>P!==Vt.current,R=g.value,W=p||!R?$e():R;W!==R&&(g.value=W,o.saveConversationId(W));let E;try{E=await Y.handshake({visitorId:i,conversationId:W,userPrefs:o.loadUserPrefs(),locale:l})}catch(Qe){if(L())return;n.emit("error",Qe),e.onError?.(Qe),p||q(!0);return}if(L())return;if(E.visitorId&&E.visitorId!==i&&(V.info("visitor rebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId}),o.setVisitorId(E.visitorId),a(E.visitorId),n.emit("visitorRebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId})),E.conversationId&&E.conversationId!==W&&(V.info("conversation rebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId}),n.emit("conversationRebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId})),E.agent&&fi(E.agent),e.mode==="page"&&(E.site&&Za(E.site)?xc(E.site):E.site&&V.warn("invalid site config, using fallback",{site:E.site}),E.blocks&&es(E.blocks)?yc(E.blocks):E.blocks&&V.warn("invalid blocks config, using fallback",{blocks:E.blocks})),E.userPrefs&&!p&&(o.saveUserPrefs(E.userPrefs),E.userPrefs.locale&&c(E.userPrefs.locale),E.userPrefs.soundMuted!==void 0&&ie.setMuted(E.userPrefs.soundMuted),E.userPrefs.themeMode&&u(E.userPrefs.themeMode),E.userPrefs.textSize&&m(E.userPrefs.textSize)),Je.current=E.welcome,p||n.emit("handshake",E),E.welcome?.suggestions){let Qe=Sn.current;xn(E.welcome.suggestions.map(Rn=>({...Rn,label:be(Qe,Rn.label),...Rn.text===void 0?{}:{text:be(Qe,Rn.text)}})))}!p&&R&&E.conversationId===R?Ce.current?Vo(R):Te.current=!0:(g.value=E.conversationId,o.saveConversationId(E.conversationId),wn(E.welcome?.messages)),p||q(!0)},[Y,i,o,e,n,g,ie,wn,Vo,l]),jt=JSON.stringify(e.userContext??null),Cc=JSON.stringify(e.pageContext??null),Tc=JSON.stringify(Wo);w(()=>{let p=Object.keys(Wo).length?{...Wo,...e.userContext}:e.userContext;Y.setContext(p,xp(e.pageContext))},[Y,jt,Cc,Tc]);let Ee=yt(l,e.availableLocales,e.defaultLocale);w(()=>{Y.setLocale(Ee)},[Y,Ee]),w(()=>{t.dir=Ri(Ee)?"rtl":"ltr"},[t,Ee]),w(()=>{Ee!==l&&c(Ee)},[Ee,l]);let Ec=F(async p=>{let P=null;try{for await(let L of p.iter){if(!P){P=uo(),kn.current=P,Oe.attach(P),f.value=[...f.value,P],bn(!0),yn(()=>p.cancel),gi.current=!0;let R=de.current;R&&$.switchTab(R),V.info("resumed in-flight reply on mount")}Oe.apply(L.chunk),L.chunk.type==="finish"&&L.chunk.canContinue===!1&&Gt(!1)}P&&(P.status="complete",ie.play("messageReceived"),ni(n,e,"assistant",Dr(P)))}catch(L){P&&(P.status="error",P.errorText=ut(L,e.strings),ie.play("error")),V.debug("mount resume ended without completing",{err:L})}finally{kn.current=null,P&&(Oe.detach(),bn(!1),yn(null),f.value=[...f.value])}},[Oe,f,ie,n,e,$]),hi=M(null);w(()=>{let p=g.value;return p&&Y.primeIdentity(i,p),qt({newConversation:!1}),()=>{Vt.current++,hi.current?.cancel()}},[]),w(()=>{if(D){if(Go.current=Y.bootstrap(),(async()=>{try{let p=await Go.current;ke(Zt((p??{forms:[]}).forms,Ee))}catch(p){V.debug("bootstrap failed \u2014 treating as no forms",{err:p})}finally{J(!0)}})(),Te.current){Te.current=!1;let p=g.value;p&&Vo(p)}if(g.value){let p=Y.resumeStream();hi.current=p,Ec(p)}}},[D]);let Tn=M(null);w(()=>{if(!D)return;if(Tn.current===null){Tn.current=Ee;return}if(Tn.current===Ee)return;Tn.current=Ee;let p=!1;return Y.bootstrap().then(P=>{p||ke(Zt((P??{forms:[]}).forms,Ee))}).catch(P=>V.debug("forms re-localize failed \u2014 keeping current copy",{err:P})),()=>{p=!0}},[D,Ee,Y]);let vi=M(jt);w(()=>{!U||vi.current===jt||(vi.current=jt,qt({newConversation:!1}))},[jt,U,qt]),w(()=>{Jn(t,lo(e.mode,Le,fe))},[t,fe,Le,e.mode]),w(()=>{if(e.mode!=="modal"||!fe)return;let p=P=>{P.composedPath().some(W=>W instanceof HTMLElement&&W.classList.contains(`${x.cssPrefix}-panel`))||y(!1)};return t.addEventListener("click",p),()=>t.removeEventListener("click",p)},[t,fe,e.mode]),w(()=>{if(e.mode!=="drawer"||!fe)return;let p=P=>{P.key==="Escape"&&y(!1)};return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[fe,e.mode]);let En=F(async(p,P)=>{let L=g.value??$e();g.value||(g.value=L,o.saveConversationId(L));let R=ss({messages:f.value.slice(0,-1).map(fs),conversationId:L,tools:e.features.tools,responseMode:e.responseMode,trigger:P,visitorId:i,userPrefs:o.loadUserPrefs()});bn(!0);let W=Y.sendMessage(R);yn(()=>W.cancel);try{for await(let E of W.iter)Oe.apply(E.chunk),E.chunk.type==="finish"&&E.chunk.canContinue===!1&&Gt(!1);p.status="complete",ie.play("messageReceived"),ni(n,e,"assistant",Dr(p))}catch(E){p.status="error",p.errorText=ut(E,e.strings),ie.play("error"),n.emit("error",E),e.onError?.(E)}finally{Oe.detach(),bn(!1),yn(null),f.value=[...f.value]}},[Y,Oe,f,g,e,n,ie,o,i]),In=F((p,P,L)=>{if(Ge)return;let R=f.value.at(-1),W=R?.partsSig.value.find(_e=>_e.kind==="tool"&&_e.toolCallId===p);if(!W){V.warn("resolveTool: tool part not found",{toolCallId:p});return}L(W),R&&(R.partsSig.value=[...R.partsSig.value]);let E=uo();f.value=[...f.value,E],Oe.attach(E),En(E,P)},[Ge,f,Oe,En]),bi=F((p,P)=>{V.info("toolResult",{toolCallId:p}),n.emit("toolResult",{toolCallId:p}),In(p,fo.toolResult,L=>{L.outputSig.value=P,L.stateSig.value="output"})},[n,In]),xi=F((p,P,L)=>{V.info("toolDecision",{toolCallId:p,approved:P}),n.emit("toolDecision",{toolCallId:p,approved:P}),In(p,fo.toolApproval,R=>{let W=R.approvalSig.value?.id??p;R.approvalSig.value={id:W,approved:P,reason:L},R.stateSig.value="output"})},[n,In]),Ic=xe(()=>({humanInLoop:e.features.humanInLoop,onResult:bi,onDecision:xi}),[e.features.humanInLoop,bi,xi]),Ac=()=>f.value.reduce((p,P)=>p+(P.role==="user"?1:0),0),bt=e.forms.list.length>0?e.forms:We??e.forms,ae=Nl({forms:bt,persistence:o,userContext:()=>e.userContext,messageCount:Ac,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>g.value,onComplete:(p,P,L,R)=>{V.info("formSubmit",{formId:p.id,trigger:P,skipped:R}),n.emit("formSubmit",{formId:p.id,values:L,skipped:R}),C(E=>[...E.filter(_e=>!(_e.formId===p.id&&_e.outcome==="skipped")),{key:`local:${p.id}:${Date.now()}`,formId:p.id,outcome:R?"skipped":"submitted",createdAt:Date.now(),...R?{}:{values:L}}]);let W=g.value??$e();g.value||(g.value=W,o.saveConversationId(W),Y.primeIdentity(void 0,W)),!R&&p.mirrorToContext&&wc(E=>({...E,...L})),Y.submitForm({formId:p.id,conversationId:W,trigger:P,values:L,skipped:R})}}),Rc=re(()=>ae.activeForm.value);w(()=>{ae.refresh()},[bt,ae]);let Pi=e.pageContext?.area?String(e.pageContext.area):void 0,Lc=re(()=>f.value.length);w(()=>{U&&k&&ae.fire("pre-chat")},[U,k,ae]),w(()=>{k&&!Wt&&ae.fire("conversation-closed")},[k,Wt,ae]),w(()=>{U&&k&&Pi&&ae.fire("page-area")},[U,k,Pi,ae]);let Ko=xe(()=>{let p=bt.list.flatMap(P=>P.triggers).filter(P=>P.kind==="idle").map(P=>Number(P.param));return p.length?Math.min(...p)*1e3:0},[bt]);w(()=>{if(!Ko||!fe)return;let p=setTimeout(()=>ae.fire("idle"),Ko);return()=>clearTimeout(p)},[Ko,fe,ae,Lc.value]);let yi=F(async(p,P)=>{if(V.info("send",{textLen:p.length,attachments:P.length,streaming:Ge}),Ge)return;n.emit("send",{text:p,attachmentCount:P.length}),Uo.length>0&&xn([]);let L=await yp(Y,P,E=>{V.warn("upload failed",{err:E}),n.emit("error",E),e.onError?.(E)});ie.unlock(),ie.play("messageSent");let R=us(p,L),W=uo();f.value=[...f.value,R,W],Oe.attach(W),ni(n,e,"user",p),await En(W,fo.submitMessage),ae.fire("after-messages")},[Ge,Y,n,e,Uo.length,f,Oe,En,ae]),Mc=F(()=>{V.info("stop"),n.emit("stop",void 0),Pn?.()},[Pn,n]),Nc=F(()=>{ie.toggleMuted();let p=ie.mutedSig.value;V.info("soundToggle",{muted:p}),n.emit("soundToggle",{muted:p})},[ie,n]),Xt=F(()=>{if(Zs(e.mode,Le)==="exit-fullscreen"){V.info("close \u2192 exit-fullscreen",{mode:e.mode}),vt("normal"),n.emit("fullscreen",!1);return}V.info("close \u2192 panel closed",{mode:e.mode}),ae.fire("panel-close"),y(!1),o.savePanelOpen(!1),n.emit("close",void 0),e.onClose?.()},[n,e,o,Le,ae]),xt=F(()=>{e.modules.list.some(p=>p.layout==="chat")&&Y.listConversations({limit:50}).then(p=>{v.value=p.conversations.reduce((P,L)=>P+(L.unreadCount??0),0)}).catch(p=>V.debug("refreshUnread failed (non-fatal)",{err:p}))},[Y,e.modules,v]),Si=M(!1);w(()=>{!D||!U||Si.current||(Si.current=!0,xt())},[D,U,xt]);let qo=F(()=>{V.info("open",{mode:e.mode}),ie.unlock(),zt(!0),y(!0),o.savePanelOpen(!0),!Re&&!Ye&&vn(),setTimeout(()=>zt(!1),Pp),xt(),n.emit("open",void 0),e.onOpen?.()},[n,e,ie,o,Re,Ye,vn,xt]),jo=F(()=>{if(!f.value.some(P=>P.role==="user")&&Wt&&g.value){V.info("clear \u2192 reusing empty conversation",{conversationId:g.value}),f.value.length===0&&wn(Je.current?.messages);return}V.info("clear \u2192 new conversation",{wasStreaming:Ge}),n.emit("clear",void 0),Ge&&Pn?.(),It(()=>{f.value=[],g.value=void 0}),o.clearConversation(),Gt(!0),C([]),qt({newConversation:!0})},[Ge,Pn,f,g,o,qt,n,Wt,wn]),Xo=F(()=>{jo(),zo("chat");let p=e.modules.list.find(P=>P.layout==="chat")?.id;p&&$.switchTab(p)},[jo,$,e]),Jo=F(()=>{let p=Le==="expanded"?"normal":"expanded";V.info("expand",{from:Le,expanded:p==="expanded"}),vt(p),o.savePanelSize(p),n.emit("expand",p==="expanded")},[n,Le,o]),Yo=F(()=>{let p=Le==="fullscreen"?"normal":"fullscreen";V.info("fullscreen",{from:Le,fullscreen:p==="fullscreen"}),vt(p),o.savePanelSize(p),n.emit("fullscreen",p==="fullscreen")},[n,Le,o]),Dc=F(()=>{zo(p=>{let P=p==="history"?"chat":"history";return V.info("toggleHistory",{view:P}),n.emit("toggleHistory",{view:P}),P})},[n]),Oc=F(p=>{V.info("localeChange",{locale:p}),c(p),He({locale:p}),n.emit("localeChange",p)},[He,n]),$c=F(p=>{V.info("themeChange",{mode:p}),u(p),t.dataset.theme=p,He({themeMode:p}),n.emit("themeChange",p)},[t,He,n]),Hc=F(p=>{V.info("textSizeChange",{size:p}),m(p),t.dataset.textSize=p,He({textSize:p}),n.emit("textSizeChange",p)},[t,He,n]),Fc=F(()=>{kc(p=>{let P=!p;return V.info("sidebarToggle",{collapsed:P}),o.saveSidebarCollapsed(P),n.emit("sidebarToggle",{collapsed:P}),P})},[o,n]),Bc=F(p=>{V.info("resize",p),He({widgetSize:p}),n.emit("resize",p)},[He,n]),Qo=F(async p=>{V.info("selectConversation",{conversationId:p}),n.emit("selectConversation",{conversationId:p});try{let[P,L]=await Promise.all([Y.loadConversation(p),Cn(p)]),R=P.messages.map(Nr);It(()=>{f.value=Kt(R,L),g.value=P.conversationId}),C(L),o.saveConversationId(P.conversationId),P.agent&&fi(P.agent),Gt(P.canContinue),xn(P.suggestions??[]),zo("chat"),await Y.markRead(p),xt()}catch(P){n.emit("error",P),e.onError?.(P)}},[Y,f,g,n,e,o,xt,Cn,Kt]),An=M(null),ki=F(p=>{typeof p=="string"&&(k?ae.fire("manual",p):An.current=p)},[k,ae]);w(()=>{!k||!An.current||(ae.fire("manual",An.current),An.current=null)},[k,ae]),w(()=>va(t,{open:qo,close:Xt,expand:Jo,fullscreen:Yo,openForm:ki}),[t,qo,Xt,Jo,Yo,ki]);let we=xe(()=>_r(e,l,d,_),[e,l,d,_]);Sn.current=we.strings;let zc=xe(()=>b.map(p=>{let P=bt.list.find(L=>L.id===p.formId);return{...p,title:P?.title,form:P}}),[b,bt]),wi={options:we,transport:Y,feedback:ie,bus:n,view:hc,canSend:Wt,isStreaming:Ge,loadingMessages:h,messagesSig:f,agent:vc,suggestions:Uo,initialWidgetSize:s.widgetSize??null,visitorId:i,onClose:Xt,onClear:jo,onExpand:Jo,onFullscreen:Yo,onSoundToggle:Nc,onToggleHistory:Dc,onSelectHistoryConversation:Qo,onNewConversation:Xo,onLocaleChange:Oc,onThemeChange:$c,onTextSizeChange:Hc,onWidgetSizeChange:Bc,onSend:yi,onStop:Mc,onSuggestion:p=>{let P=p.text??p.label;V.info("suggestion",{text:P}),n.emit("suggestion",{text:P}),yi(P,[])},activeForm:Rc.value?.form??null,formMarkers:zc,onFormSubmit:ae.complete,onFormSkip:ae.skip,onFormFill:p=>ae.fire("manual",p),tool:Ic},Uc=p=>{Qo(p);let P=z();P&&$.switchTab(P)};if(!U)return null;let Jt=we.modules.list,Zo=p=>{let P=_n("close",we.mode,p);return Jt.length===0?r(ic,{strings:we.strings,onClose:P?Xt:void 0}):Jt.length===1&&Jt[0]?.layout==="chat"?r(Ml,{...wi,panelSize:p}):r(rc,{panelProps:{...wi,panelSize:p,onClose:P?Xt:void 0},enabledModules:Jt,nav:$,unreadCount:v.value,onSelectConversation:Uc,onStartNewConversation:Xo,onSetPanelSize:vt})};if(e.mode==="page"){let p=L=>{Qo(L.conversationId)},P=Jt.some(L=>L.layout==="chat");return r("div",{class:`${ti}-anchor`,children:r($l,{site:bc,blocks:Pc,transport:Y,strings:we.strings,locale:we.locale,visitorId:i,showConversations:P,onSelectConversation:p,onNewConversation:Xo,sidebarCollapsed:Sc,onToggleSidebarCollapsed:Fc,children:Zo("fullscreen")})})}if(Z){let p=e.mode==="standalone"?"fullscreen":Le;return r("div",{class:`${ti}-anchor`,children:Zo(p)})}let Ci=e.mode==="drawer",Ti=!(e.mode==="modal")&&!e.launcher.hidden&&(!fe||ht),Ei=Ti&&!ht&&!Re&&!Ci?we.launcher.callout:null;return r("div",{class:`${ti}-anchor`,"data-launcher-size":we.launcher.size,children:[fe?Zo(Le):null,Ti?r(Js,{onToggle:qo,launcher:we.launcher,strings:we.strings,leaving:ht,edgeTab:Ci}):null,Ei?r(Ys,{callout:Ei,launcherPosition:we.position,strings:we.strings,closeLabel:we.strings.close,onDismiss:vn}):null]})}function xp(e){let t=e?.url??(typeof location<"u"?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}var Pp=120;async function yp(e,t,n){let o=[];for(let i of t)try{let{id:a,url:s}=await e.uploadFile(i.file);o.push({id:a,name:i.name,mediaType:i.mediaType,size:i.size,url:s})}catch(a){n(a)}return o}function ni(e,t,n,o){let i={role:n,text:o};e.emit("message",i),t.onMessage?.(i)}var Sp=B.scope("error-boundary"),$o=class extends tt{constructor(){super(...arguments);G(this,"state",{crashed:!1})}componentDidCatch(n,o){Sp.error("widget render crashed",{error:n,componentStack:o?.componentStack}),this.setState({crashed:!0}),this.props.onError(n,o?.componentStack)}render(){return this.state.crashed?this.props.fallback:this.props.children}};var cc={open:()=>{},close:()=>{},expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>{},clear:()=>{},suggestion:()=>{},toggleHistory:e=>({view:e.view}),handshake:()=>{},formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>{},toolDecision:e=>({approved:e.approved}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>{},voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>{},localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>{},error:()=>{}};function kp(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack==="1"}function wp(){return location.origin+location.pathname}function Cp(){try{return document.referrer?new URL(document.referrer).origin:""}catch{return""}}function dc(e,t){let n=Math.random(),o=0,i=0,a=new Set,s=(c,d)=>{let{tracking:u,publicKey:_,aiAgentDeploymentId:m,mode:g,themeMode:f}=t.getOptions();if(!u.enabled||kp()||n>=u.sampleRate)return;let v=performance.now();if(v-o>6e4&&(o=v,i=0),++i>60)return;let h=new URLSearchParams;h.set("v","1"),h.set("e",c),u.token&&h.set("tk",u.token),_&&h.set("pk",_),m&&h.set("dep",m),h.set("vid",t.getVisitorId());let I=t.getConversationId();I&&h.set("cid",I),h.set("url",wp());let b=Cp();b&&h.set("ref",b),h.set("sw",String(screen.width)),h.set("sh",String(screen.height)),h.set("vw",String(innerWidth)),h.set("vh",String(innerHeight)),h.set("dpr",String(devicePixelRatio)),h.set("lang",navigator.language);try{h.set("tz",Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(h.set("m",g),h.set("th",f),d)for(let[K,$]of Object.entries(d))$!==void 0&&h.set(K,String($));h.set("ts",String(Date.now()));let C=`${u.endpoint}?${h}`;if(C.length>2e3)return;let N=new Image(1,1);a.add(N);let z=()=>a.delete(N);N.addEventListener("load",z,{once:!0}),N.addEventListener("error",z,{once:!0}),N.src=C},l=Object.keys(cc).map(c=>e.on(c,d=>s(c,cc[c]?.(d))));return()=>{for(let c of l)c();a.clear()}}function Ho(e){let{bus:t,host:n,appRoot:o,persistence:i,reportError:a}=e,s=e.initialRaw,l,c=Ze(s),d=!0,u=()=>{c=Ze(l?ur(s,l):s)},_=()=>{Ta(n,ct(c.mode));let f=i.loadUserPrefs().themeMode;Ea(n,f?{...c,themeMode:f}:c),d&&(Jn(n,oi(c)),d=!1)},m=()=>{_(),wt(Xn($o,{onError:a},Xn(lc,{bus:t,hostElement:n,options:c})),o)};t.on("handshake",f=>{f.config&&(f.config.storageVersion&&i.rememberStorageVersion(f.config.storageVersion),l=f.config,u(),m())});let g=dc(t,{getOptions:()=>c,getVisitorId:()=>i.getVisitorId(),getConversationId:()=>i.loadConversationId()});return{getOptions:()=>c,getUserOptions:()=>s,render:m,setUserOptions:f=>{s=f,u(),m()},patchUserOptions:f=>{s={...s,...f},u(),m()},destroy:()=>g()}}function oi(e){if(e.mode==="standalone")return"standalone";if(e.mode==="inline")return"inline";let t=nt(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:o}=an(e,Lt(),t.loadPanelOpen(),t.loadPanelSize());return lo(e.mode,o,n)}var Tp=B.scope("hooks"),ii="*",ri=new Set;function ai(e,t,n){let o={widgetId:e,event:t,listener:n};return ri.add(o),()=>{ri.delete(o)}}function Ep(e,t,n){let o=[...ri];for(let i of o)if(Ip(i.widgetId,e.widgetId)&&!(i.event!==ii&&i.event!==t))try{i.listener(e,t,n)}catch(a){Tp.warn("hook listener threw",{event:t,error:a})}}function _c(e,t){let n=[];for(let o of Ap)n.push(t.on(o,i=>{Ep(e,o,i)}));return()=>{for(let o of n)o()}}function si(e){if(Array.isArray(e))for(let t of e){let n=Rp(t);n&&ai(n.widgetId,n.event,n.listener)}}function Ip(e,t){return e===ii||e===t}var Ap=["open","close","expand","fullscreen","resize","message","send","stop","clear","selectConversation","suggestion","toggleHistory","formSubmit","toolResult","toolDecision","attach","removeAttachment","voiceStart","voiceStop","voiceCancel","localeChange","themeChange","textSizeChange","soundToggle","sidebarToggle","calloutDismiss","error","handshake","visitorRebound","conversationRebound"];function Rp(e){let t,n,o;if(Array.isArray(e))[t,n,o]=e;else if(e&&typeof e=="object")({widgetId:t,event:n,listener:o}=e);else return null;return typeof t!="string"||typeof n!="string"||typeof o!="function"?null:{widgetId:t,event:n,listener:o}}var Xe=new Map;function Fo(e){e.debug!==void 0&&On(e.debug);let t=B.scope("mount");t.info("mount",{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let n=Ze(e),o=n.widgetId,i=Xe.get(o);i&&(t.debug("destroy existing instance at slot",{widgetId:o}),i.destroy());let a=oi(n),s=n.iframe?Ra({position:ct(n.mode)},n.position,a,n.mode,e.target??null):Ct({position:ct(n.mode),target:e.target??null});s.hostElement.dataset.widgetId=o;let l=new Tt,c=nt(o,n.storage,n.aiAgentDeploymentId),d=v=>{l.emit("error",v),u.getOptions().onError?.(v)},u=Ho({bus:l,host:s.hostElement,appRoot:s.appRoot,persistence:c,initialRaw:e,reportError:d});u.render();let _=s.hostElement,m=null,g=v=>{v.debug!==void 0&&On(v.debug),u.patchUserOptions(v)},f={widgetId:o,open:()=>tn(_,"open"),close:()=>tn(_,"close"),expand:()=>tn(_,"expand"),openForm:v=>tn(_,"openForm",v),on:(v,h)=>l.on(v,h),update:v=>{t.debug("update",{patch:v}),g(v)},setUserContext:v=>{t.debug("setUserContext",{keys:Object.keys(v)}),g({userContext:{...u.getUserOptions().userContext,...v}})},clearUserContext:()=>{t.debug("clearUserContext"),g({userContext:void 0})},setPageContext:v=>{t.debug("setPageContext",{keys:Object.keys(v)}),g({pageContext:{...u.getUserOptions().pageContext,...v}})},clearPageContext:()=>{t.debug("clearPageContext"),g({pageContext:void 0})},setDebug:v=>{On(v),t.info("debug level set",{level:Yt()})},debugLevel:()=>Yt(),onLog:v=>Qt(v),destroy:()=>{t.info("destroy",{widgetId:o}),m?.(),u.destroy(),l.clear(),wt(null,s.appRoot),s.destroy(),Xe.get(o)===f&&Xe.delete(o)}};return m=_c(f,l),Xe.set(o,f),f}function Bo(e){let t=e.widgetId??"default",n=Xe.get(t);return n?(n.update(e),n):Fo(e)}function li(e){if(e!==void 0){Xe.get(e)?.destroy();return}let t=[...Xe.values()];for(let n of t)n.destroy()}function Ue(e="default"){return Xe.get(e)??null}function uc(){return[...Xe.values()]}function ci(e,t,n){return ai(e,t,n)}var pc="0.1.0";var di=class extends HTMLElement{constructor(){super(...arguments);G(this,"bus",new Tt);G(this,"mountResult",null);G(this,"runtime",null)}static get observedAttributes(){return pr}connectedCallback(){this.boot()}disconnectedCallback(){this.mountResult&&(this.runtime?.destroy(),this.runtime=null,wt(null,this.mountResult.appRoot),this.bus.clear())}attributeChangedCallback(){this.isConnected&&this.boot()}boot(){let n=Bn(a=>this.getAttribute(a));if(this.runtime){this.runtime.setUserOptions(n);return}let o=Ze(n);this.mountResult||(this.mountResult=Ct({existingHost:this,position:ct(o.mode)}));let i=nt(o.widgetId,o.storage,o.aiAgentDeploymentId);this.runtime=Ho({bus:this.bus,host:this.mountResult.hostElement,appRoot:this.mountResult.appRoot,persistence:i,initialRaw:n,reportError:a=>this.bus.emit("error",a)}),this.runtime.render()}},fc=!1;function _i(){if(fc||typeof customElements>"u")return;let e=x.tagName;customElements.get(e)||customElements.define(e,di),fc=!0}typeof customElements<"u"&&_i();var mc=B.scope("iife"),ui={close:()=>Ue()?.close(),destroy:()=>li(),expand:()=>Ue()?.expand(),hook:(e,t,n)=>typeof e=="string"&&typeof t=="string"&&typeof n=="function"?ci(e,t,n):void 0,init:e=>Bo(e),mount:e=>Fo(e),on:(e,t)=>Ue()?.on(e,t),onLog:e=>Qt(e),open:()=>Ue()?.open(),setDebug:e=>Ue()?.setDebug(e),update:e=>Ue()?.update(e)};function gc(e,...t){let n=ui[e];if(!n){mc.warn("unknown command",{command:e});return}return n(...t)}function Lp(){let e=((n,...o)=>gc(n,...o));e.init=Bo,e.mount=Fo,e.destroy=li,e.getInstance=Ue,e.getAllInstances=uc,e.version=pc,e.hook=ci,e.debugLevel=()=>Yt(),e.onLog=Qt;let t=new Set(["init","mount","hook","onLog"]);for(let n of Object.keys(ui))t.has(n)||(e[n]=(...o)=>ui[n](...o));return e}function Mp(e){let t=e?.q;if(t)for(let n of t){let o=[...n],[i,...a]=o;if(typeof i=="string")try{gc(i,...a)}catch(s){mc.warn("queued command failed",{command:i,error:s})}}}function Np(){let e=[],t=e.push.bind(e);return e.push=(...n)=>{for(let o of n)si([o]);return t(...n)},e}function Dp(){let e=document.scripts;for(let t=e.length-1;t>=0;t--){let n=e[t];if(n?.src.includes("elements"))return n}return null}function Op(){if(typeof window>"u"||typeof document>"u")return;let e=globalThis[x.global],t=Lp();globalThis[x.global]=t,_i();let n=`${x.global}Hooks`,o=globalThis[n];if(si(o),globalThis[n]=Np(),Mp(e),Ue())return;let i=document.currentScript??Dp(),a=fr(i?.dataset);if(!a.publicKey)return;let s=()=>{Ue()||Bo(a)};if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",s,{once:!0});return}s()}Op();return jc($p);})();
|
|
40
40
|
//# sourceMappingURL=elements.js.map
|