@helpai/elements 0.17.1 → 0.17.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/elements.cjs.js CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  `))!==-1;){let l=o.slice(0,s);o=o.slice(s+2);let c=ta(l);c&&(yield c)}}}finally{n.releaseLock()}}function ta(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 ea.trace("chunk",{type:o.type,eventId:n}),{chunk:o,eventId:n}}catch(o){return ea.trace("frame parse failed",{err:o,payload:t.slice(0,200)}),null}}function pd(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 na=e=>e&&Object.keys(e).length>0?e:void 0;function oa(e,t){let n=na(e),o=na(t);if(!n&&!o)return;let i={};return n&&(i.user=n),o&&(i.page=o),pd(JSON.stringify(i))}function An(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}var Re={startConversation:"/ai/agent/start-conversation",streamMessage:"/ai/agent/stream-message",streamResume:"/ai/agent/stream-resume",cancelStream:"/ai/agent/cancel-stream",listConversations:"/ai/agent/list-conversations",listMessages:"/ai/agent/list-messages",updateSettings:"/ai/agent/update-settings",markRead:"/ai/agent/mark-read",content:"/ai/agent/content",submitForm:"/ai/agent/submit-form"},ra="context";function ia(e){let n={messages:e.messages.map(a=>({id:a.id,parts:gd(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(md).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 fd(e){return e.state==="output"||e.state==="error"||e.approval?.approved!==void 0}function md(e){return typeof e=="string"?e?{code:e}:null:e?.code?e:null}function gd(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"&&fd(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 J=H.scope("transport"),hd=3,la=400,aa=3,vd=new Set([408,425,429,500,502,503,504]);function sa(e){return la*2**e+Math.floor(Math.random()*250)}function bd(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 rr(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 In=class{constructor(t){j(this,"opts",t);j(this,"visitorId");j(this,"conversationId");j(this,"userContext");j(this,"pageContext")}setContext(t,n){this.userContext=t,this.pageContext=n}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);let n=oa(this.userContext,this.pageContext);return n&&(t[ra]=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 startConversation(t){J.debug("startConversation \u2192",{visitorId:t.visitorId,conversationId:t.conversationId,locale:t.locale});let n=await this.postJson(Re.startConversation,t,"startConversation");return J.debug("startConversation \u2190",{visitorId:n.visitorId,conversationId:n.conversationId,canContinue:n.canContinue,hasMessages:!!n.messages?.length,hasWelcome:!!n.welcome,hasConfig:!!n.config,rebind:n.rebind}),Pd(n)||J.warn("startConversation 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){J.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 J.debug("uploadFile \u2190",{id:o.id,url:o.url}),o}async transcribe(t,n="audio/webm"){J.debug("transcribe \u2192",{size:t.size,mimeType:n});let o=new FormData;o.append("audio",t,`voice.${xd(n)}`),o.append("mimeType",n);let i=await this.postForm(this.transcribePath,o,"transcribe");return J.debug("transcribe \u2190",{textLen:i.text.length}),i}async listConversations(t={}){let n=new URL(this.url(Re.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),J.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 J.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(Re.listMessages));n.searchParams.set("conversationId",t),J.debug("loadConversation \u2192",{conversationId:t,visitorId:this.visitorId});let o=await this.getJson(n.toString(),"loadConversation"),i=o.messages??[];return J.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)){J.debug("markRead \u2192",{conversationId:t,visitorId:this.visitorId});try{await this.postJson(Re.markRead,{conversationId:t},"markRead")}catch(n){J.debug("markRead failed (non-fatal)",{err:n})}}}async listContent(t={}){let n=new URL(this.url(Re.content));for(let[a,s]of Object.entries(t))s!==void 0&&n.searchParams.set(a,Array.isArray(s)?s.join(","):String(s));J.debug("listContent \u2192",t);let o=await this.getJson(n.toString(),"listContent"),i=o.items??[];return J.debug("listContent \u2190",{count:i.length,total:o.pagination?.total}),{...o,items:i}}async saveUserPrefs(t){J.debug("saveUserPrefs \u2192",{visitorId:this.visitorId,conversationId:this.conversationId,settingsKeys:Object.keys(t)});let n=await this.postJson(Re.updateSettings,{userPrefs:t},"saveUserPrefs");return J.debug("saveUserPrefs \u2190",{ok:n.ok}),n}get uploadPath(){return this.opts.endpoints?.upload??"/ai/agent/upload-file"}get transcribePath(){return this.opts.endpoints?.transcribe??"/ai/agent/transcribe-audio"}get submitFormPath(){return this.opts.endpoints?.submitForm??Re.submitForm}async submitForm(t){J.debug("submitForm \u2192",{formId:t.formId,trigger:t.trigger,fields:Object.keys(t.values).length});try{await this.postJson(this.submitFormPath,t,"submitForm")}catch(n){J.debug("submitForm failed (non-fatal)",{err:n})}}sendMessage(t){J.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<=hd&&!t.signal.aborted;i++){if((!o||i>1)&&(await rr(la*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;J.debug("resume fetch failed \u2014 retrying",{attempt:i,err:l});continue}if(a.status===204||!a.ok){J.debug("resume \u2192 no in-flight stream",{status:a.status});return}let s=n.size;if(yield*this.drain(or(a,t.signal),n,t))return;if(n.size===s){J.debug("resume \u2192 stream closed with no new events; nothing to resume");return}}if(!t.signal.aborted)throw new ke("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 ke&&i.status!==void 0)throw i;J.debug("stream segment dropped",{err:i})}return!1}cancelStream(t,n){t.signal.aborted||(J.debug("cancel stream",{conversationId:n,visitorId:this.visitorId}),t.abort(),!(!this.visitorId||!n)&&this.fetchImpl(this.url(Re.cancelStream),{method:"POST",credentials:"omit",headers:{"content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({})),keepalive:!0}).catch(o=>J.debug("cancel POST failed (non-fatal)",{err:o})))}async*openMessageStream(t,n){let o=await this.fetchImpl(this.url(Re.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*or(o,n)}resumeUrl(t){let n=new URL(this.withEnvelopeQuery(Re.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>=aa)throw new ke(`${n} failed: network error`,"network",void 0,c);J.debug("request network error \u2014 retrying",{label:n,attempt:o}),await rr(sa(o));continue}if(s.ok||!vd.has(s.status)||o>=aa)return s;let l=bd(s.headers)??sa(o);J.debug("request retryable status \u2014 retrying",{label:n,status:s.status,attempt:o,wait:l}),await rr(l)}}async assertOk(t,n){if(!t.ok)throw new ke(`${n} failed: ${t.status}`,"server",t.status);return await t.json()}url(t){return/^https?:\/\//i.test(t)?t:`${this.opts.baseUrl}${t}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function xd(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 Pd(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.visitorId=="string"&&typeof t.conversationId=="string"&&typeof t.canContinue=="boolean"}function ca(e,t){let n=e?[{kind:"text",id:"t0",textSig:L(e),doneSig:L(!0)}]:[];return{id:Ie(),role:"user",createdAt:Date.now(),status:"complete",attachments:t,partsSig:L(n)}}function Rn(){return{id:Ie(),role:"assistant",createdAt:Date.now(),status:"streaming",partsSig:L([])}}function da(e){return{id:e.id,role:e.role,createdAt:Date.now(),status:"streaming",partsSig:L([{kind:"text",id:`${e.id}-t0`,textSig:L(""),doneSig:L(!1)}])}}function _a(e){return yd({id:e.id,role:e.role,createdAt:Date.now(),status:"complete",parts:[{kind:"text",id:`${e.id}-t0`,text:e.text,done:!0}]})}function yd(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,errorText:e.errorText,finishReason:e.finishReason,attachments:e.attachments,partsSig:L(e.parts.map(Sd))}}function ir(e){let t=e.parts.map((n,o)=>n.type==="text"?{kind:"text",id:`${e.id}-t${o}`,textSig:L(n.text),doneSig:L(!0)}:n.type==="file"?{kind:"file",url:n.url,mediaType:n.mediaType}:n.type==="tool"?{kind:"tool",toolCallId:n.toolCallId,toolName:n.toolName,inputPartialSig:L(""),inputSig:L(n.input),outputSig:L(n.output),errorSig:L(n.errorText),stateSig:L(n.state),approvalSig:L(n.approval)}:null).filter(n=>n!==null);return{id:e.id,role:e.role,createdAt:An(e.createdAt)??Date.now(),status:"complete",partsSig:L(t)}}function ua(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(wd)}}function ar(e){let t="";for(let n of e.partsSig.value)n.kind==="text"&&(t+=n.textSig.value);return t}function Sd(e){return e.kind==="text"||e.kind==="reasoning"?{kind:e.kind,id:e.id,textSig:L(e.text),doneSig:L(e.done)}:e.kind==="tool"?{kind:"tool",toolCallId:e.toolCallId,toolName:e.toolName,inputPartialSig:L(e.inputPartial),inputSig:L(e.input),outputSig:L(e.output),errorSig:L(e.error),stateSig:L(e.state),approvalSig:L(e.approval)}:e}function wd(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}var kd="tool:ask-user-input";function Ln(e){return e===kd}var Mn={submitMessage:"submit-message",toolResult:"tool-result",toolApproval:"tool-approval"};var pa=H.scope("reducer"),Nn=class{constructor(t){j(this,"messagesSig",t);j(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":pa.debug("finish",{reason:t.finishReason,canContinue:t.canContinue}),n.status="complete",t.finishReason&&(n.finishReason=t.finishReason),this.bumpDone(n);return;case"error":pa.warn("stream error chunk",{errorText:t.errorText}),n.status="error",n.errorText=t.errorText,this.bumpDone(n);return;case"text-start":ut(n,"text",t.id);return;case"text-delta":{let o=ut(n,"text",t.id);o.textSig.value+=t.delta;return}case"text-end":ut(n,"text",t.id).doneSig.value=!0;return;case"reasoning-start":ut(n,"reasoning",t.id).doneSig.value=!1;return;case"reasoning-delta":{let o=ut(n,"reasoning",t.id);o.textSig.value+=t.delta;return}case"reasoning-end":ut(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":Cd(n,t);return;case"file":On(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;On(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 ut(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:L(""),doneSig:L(!1)};return On(e,i),i}function pt(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:L(""),inputSig:L(void 0),outputSig:L(void 0),errorSig:L(void 0),stateSig:L("input"),approvalSig:L(void 0)};return On(e,i),i}function On(e,t){e.partsSig.value=[...e.partsSig.value,t]}function Cd(e,t){switch(t.type){case"tool-input-start":pt(e,t.toolCallId,t.toolName);return;case"tool-input-delta":{let n=pt(e,t.toolCallId);n.inputPartialSig.value+=t.delta;return}case"tool-input-available":{let n=pt(e,t.toolCallId,t.toolName);n.inputSig.value=t.input,n.stateSig.value=Ln(n.toolName)?"awaiting-input":"awaiting";return}case"tool-approval-request":{let n=pt(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value="awaiting-approval";return}case"tool-output-available":{let n=pt(e,t.toolCallId);n.outputSig.value=t.output,n.stateSig.value="output";return}case"tool-output-error":{let n=pt(e,t.toolCallId);n.errorSig.value=t.errorText,n.stateSig.value="error";return}default:return}}var ft=H.scope("persistence");function Rt(e,t=bn){let n=`${v.cssPrefix}.${e}`,o=`${n}.visitorId`,i=`${n}.conversationId`,a=`${n}.userPrefs`,s=`${n}.panelOpen`,l=`${n}.panelSize`,c=`${n}.calloutDismissed`,d=`${n}.sidebarCollapsed`,u=`${n}.activeModule`,_=`${n}.formsDone`,g={getVisitorId(){let p=t.get(o);if(p)return p;let m=Ie();return t.set(o,m),m},setVisitorId(p){ft.debug("setVisitorId (rebind)",{id:p,widgetId:e}),t.set(o,p)},loadConversationId(){return t.get(i)??void 0},saveConversationId(p){ft.trace("saveConversationId",{id:p,widgetId:e}),p?t.set(i,p):t.remove(i)},loadUserPrefs(){let p=t.get(a);if(!p)return{};try{let m=JSON.parse(p);return fa(m)?m:{}}catch(m){return ft.warn("loadUserPrefs parse failed",{error:m}),{}}},saveUserPrefs(p){try{t.set(a,JSON.stringify(p))}catch(m){ft.warn("saveUserPrefs serialise failed",{error:m})}},patchUserPrefs(p){let m=g.loadUserPrefs();g.saveUserPrefs({...m,...p})},loadPanelOpen(){let p=t.get(s);return p==="1"?!0:p==="0"?!1:null},savePanelOpen(p){t.set(s,p?"1":"0")},loadPanelSize(){let p=t.get(l);return p==="normal"||p==="expanded"||p==="fullscreen"?p:null},savePanelSize(p){t.set(l,p)},loadCalloutDismissed(p){if(!p)return!1;let m=t.get(c);return!!m&&m===p},saveCalloutDismissed(p){p?t.set(c,p):t.remove(c)},loadSidebarCollapsed(){let p=t.get(d);return p==="1"?!0:p==="0"?!1:null},saveSidebarCollapsed(p){t.set(d,p?"1":"0")},loadActiveModule(){return t.get(u)||null},saveActiveModule(p){t.set(u,p)},loadFormsDone(){let p=t.get(_);if(!p)return{};try{let m=JSON.parse(p);return fa(m)?m:{}}catch(m){return ft.warn("loadFormsDone parse failed",{error:m}),{}}},saveFormDone(p){try{let m=g.loadFormsDone();m[p]=Date.now(),t.set(_,JSON.stringify(m))}catch(m){ft.warn("saveFormDone serialise failed",{error:m})}},clearConversation(){t.remove(i)}};return g}function fa(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var ma=H.scope("feedback:audio"),Dn=class{constructor(){j(this,"ctx",null);j(this,"master",null);j(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){ma.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=>(ma.warn("audio fetch/decode failed",{url:t,err:a}),this.buffers.delete(t),null));return this.buffers.set(t,i),i}};var ga={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},ha={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 qe=null,$n=0;function Td(){return typeof navigator<"u"&&typeof navigator.vibrate=="function"}function Ed(){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=`__${v.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 va(e){if(!(e===0||Array.isArray(e)&&e.every(t=>t===0))){if(Td())try{navigator.vibrate(e);return}catch{}if(qe||(qe=Ed()),!!qe)try{qe.label.click()}catch{}}}function ba(){$n++;let e=!1;return()=>{e||(e=!0,$n=Math.max(0,$n-1),$n===0&&qe&&(qe.input.remove(),qe.label.remove(),qe=null))}}var Ad=H.scope("feedback"),Id=100,Hn=class{constructor(t,n){j(this,"mutedSig",L(!1));j(this,"audio",new Dn);j(this,"releaseHaptics");j(this,"sound");j(this,"haptics");j(this,"lastPlayed",new Map);j(this,"reducedMotionMq",null);this.sound=t,this.haptics=n,this.releaseHaptics=ba(),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<Id}playSound(t){let n=this.sound.events?.[t];if(n===!1)return;if(typeof n=="string"){this.audio.playUrl(n).catch(i=>Ad.warn("audio play failed",{err:i,url:n}));return}let o=ha[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?ga[t]:n;va(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 Je(e,t){return e instanceof ke&&e.status===429?t.errorRateLimited:t.errorGeneric}var Rd=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:--Rd,__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 W.vnode&&W.vnode(d),d}var N={fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,viewBox:"0 0 24 24"},Ld=()=>r("svg",{...N,"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"})}),Me=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M18 6 6 18M6 6l12 12"})}),xa=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M12 5v14M5 12h14"})}),Pa=()=>r("svg",{...N,"aria-hidden":"true",children:[r("path",{d:"m22 2-7 20-4-9-9-4Z"}),r("path",{d:"M22 2 11 13"})]}),ya=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M12 19V5M5 12l7-7 7 7"})}),Sa=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M3 20V4l18 8-18 8Z"})}),Bn=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"m9 18 6-6-6-6"})}),wa=()=>r("svg",{...N,"aria-hidden":"true",children:r("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})}),ka=()=>r("svg",{...N,"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"})}),Ca=()=>r("svg",{...N,"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"})]}),Ta=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5"})}),Ea=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5"})}),Aa=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z"})}),Ia=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7"})}),Ra=()=>r("svg",{...N,"aria-hidden":"true",viewBox:"0 0 10 10",children:r("path",{d:"M9 1L1 9M9 5L5 9M9 9H9",strokeWidth:"1.5"})}),La=()=>r("svg",{...N,"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"})]}),Ma=()=>r("svg",{...N,"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"})}),Na=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6"})}),Oa=()=>r("svg",{...N,"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"})]}),zn=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M20 6 9 17l-5-5"})}),Da=()=>r("svg",{...N,"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"})]});var Lt=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M19 12H5M12 19l-7-7 7-7"})}),$a=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"M15 3h6v6M10 14 21 3M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})}),Ha=()=>r("svg",{...N,"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"})]}),Ba=()=>r("svg",{...N,"aria-hidden":"true",children:r("path",{d:"m6 9 6 6 6-6"})}),za=()=>r("svg",{...N,"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"})]}),Md=()=>r("svg",{...N,"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"})]}),Nd=()=>r("svg",{...N,"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"})}),sr=()=>r("svg",{...N,"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"})]}),Od=()=>r("svg",{...N,"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"})]}),Dd=()=>r("svg",{...N,"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"})]}),$d=()=>r("svg",{...N,"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"})]}),Hd=()=>r("svg",{...N,"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"})]}),lr=()=>r("svg",{...N,"aria-hidden":"true",children:[r("circle",{cx:"11",cy:"11",r:"7"}),r("path",{d:"m21 21-4.3-4.3"})]}),Fa=()=>r("svg",{...N,"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"})]}),Ua=()=>r("svg",{...N,"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"})]}),Wa=()=>r("svg",{...N,"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"})]}),Mt=()=>r("svg",{...N,"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"})]}),Ga=()=>r("svg",{...N,"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"})]}),qa=()=>r("svg",{...N,"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"})}),Va=()=>r("svg",{...N,"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"})]}),Bd=()=>r("svg",{...N,"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"})]}),zd=()=>r("svg",{...N,"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"})]}),Fd=()=>r("svg",{...N,"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"})]}),Ud=()=>r("svg",{...N,"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"})]}),Ka={chat:Ld,message:Nd,bubbles:Mt,spark:Md,wand:Od,bot:Dd,help:sr,lifebuoy:Hd,headset:$d,search:Bd,sparkles:zd,concierge:Fd,wave:Ud};var I=v.cssPrefix,w={launcher:`${I}-launcher`,callout:`${I}-callout`,calloutDismiss:`${I}-callout-dismiss`,panel:`${I}-panel`,panelHeader:`${I}-panel-header`,resizeGrip:`${I}-resize-grip`,scrollToBottom:`${I}-scroll-to-bottom`,actionHistory:`${I}-action-history`,actionClose:`${I}-action-close`,composer:`${I}-composer`,composerInput:`${I}-composer-input`,composerSend:`${I}-composer-send`,composerStop:`${I}-composer-stop`,composerAttach:`${I}-composer-attach`,composerFileInput:`${I}-composer-file-input`,composerVoice:`${I}-composer-voice`,attachmentChip:`${I}-attachment-chip`,attachmentRemove:`${I}-attachment-remove`,suggestion:`${I}-suggestion`,messageBubble:`${I}-message`,messageRetry:`${I}-message-retry`,historyPane:`${I}-history-pane`,historyBack:`${I}-history-back`,historyItem:`${I}-history-item`,sidebar:`${I}-sidebar`,sidebarToggle:`${I}-sidebar-toggle`,sidebarNewConversation:`${I}-sidebar-new-conversation`,sidebarItem:`${I}-sidebar-item`,messengerHome:`${I}-messenger-home`,modulesEmpty:`${I}-modules-empty`,tab:`${I}-tab`,tabBadge:`${I}-tab-badge`,homeView:`${I}-home-view`,homeGreeting:`${I}-home-greeting`,homeBrand:`${I}-home-brand`,backHeader:`${I}-back-header`,contentView:`${I}-content-view`,contentScroll:`${I}-content-scroll`,homeSearch:`${I}-home-search`,helpSearch:`${I}-help-search`,homeRecent:`${I}-home-recent`,homeContentRow:`${I}-home-content-row`,helpArticle:`${I}-help-article`,newsItem:`${I}-news-item`,formGate:`${I}-form-gate`,formDone:`${I}-form-done`,formSubmit:`${I}-form-submit`,formSkip:`${I}-form-skip`,formField:`${I}-form-field`,toolAskInput:`${I}-tool-ask-input`,toolInputSubmit:`${I}-tool-input-submit`,toolInputSkip:`${I}-tool-input-skip`,toolApproval:`${I}-tool-approval`,toolApprove:`${I}-tool-approve`,toolReject:`${I}-tool-reject`,toolDecision:`${I}-tool-decision`};function _e(e,t){return`${e}-${t}`}var Fn=v.cssPrefix;function ja({onToggle:e,launcher:t,strings:n,leaving:o,edgeTab:i}){let a=t.variant!=="circle"&&!!t.label;return r("button",{type:"button",class:`${Fn}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?"true":void 0,"data-leaving":o?"true":void 0,"data-testid":w.launcher,onClick:e,"aria-label":n.launcherOpen,children:[Wd(t.icon),a?r("span",{class:`${Fn}-fab-label`,children:t.label}):null]})}function Wd(e){let t=Ka[e];return t?r(t,{}):r(Gd,{source:e})}function Gd({source:e}){return r("span",{ref:t=>{t&&qd(t,e)},"aria-hidden":"true"})}function qd(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 Xa({callout:e,launcherPosition:t,closeLabel:n,onDismiss:o}){let[i,a]=T(!1);return E(()=>{let s=setTimeout(()=>a(!0),e.delayMs);return()=>clearTimeout(s)},[e.delayMs]),E(()=>{if(!i||e.autoDismissMs<=0)return;let s=setTimeout(o,e.autoDismissMs);return()=>clearTimeout(s)},[i,e.autoDismissMs,o]),i?r("div",{class:`${Fn}-callout`,role:"status","data-shape":e.shape,"data-position":Vd(e.position,t),"data-animated":e.animated?"true":void 0,"data-testid":w.callout,children:[r("span",{children:e.text}),r("button",{type:"button",class:`${Fn}-callout-close`,onClick:o,"aria-label":n,title:n,"data-testid":w.calloutDismiss,children:r(Me,{})})]}):null}function Vd(e,t){let n=t.endsWith("-right"),o=t.startsWith("bottom-");return e==="vertical"?o?"top":"bottom":n?"left":"right"}function Un({panelEl:e,resize:t,position:n,initialSize:o,onSizeChange:i,strings:a}){let s=v.cssPrefix,l=$(null);if(E(()=>{if(!e)return;let m=e.style;t.minWidth&&m.setProperty(`--${s}-resize-min-w`,t.minWidth),t.maxWidth&&m.setProperty(`--${s}-resize-max-w`,t.maxWidth),t.minHeight&&m.setProperty(`--${s}-resize-min-h`,t.minHeight),t.maxHeight&&m.setProperty(`--${s}-resize-max-h`,t.maxHeight),o&&(m.setProperty(`--${s}-widget-w`,`${o.width}px`),m.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"}`,_=m=>{if(!e)return;let h=m.currentTarget,y=e.getBoundingClientRect();l.current={pointerId:m.pointerId,startX:m.clientX,startY:m.clientY,startW:y.width,startH:y.height,dirX:d?-1:1,dirY:c?1:-1},h.setPointerCapture(m.pointerId),m.preventDefault()},g=m=>{let h=l.current;if(!h||m.pointerId!==h.pointerId||!e)return;let y=(m.clientX-h.startX)*h.dirX,S=(m.clientY-h.startY)*h.dirY;e.style.setProperty(`--${s}-widget-w`,`${h.startW+y}px`),e.style.setProperty(`--${s}-widget-h`,`${h.startH+S}px`)},p=m=>{let h=l.current;if(!h||m.pointerId!==h.pointerId||!e)return;m.currentTarget.releasePointerCapture(m.pointerId);let y=e.getBoundingClientRect();i({width:Math.round(y.width),height:Math.round(y.height)}),l.current=null};return r("div",{class:u,role:"separator","aria-orientation":"vertical","aria-label":a.resizeHandle,title:a.resizeHandle,onPointerDown:_,onPointerMove:g,onPointerUp:p,onPointerCancel:p,"data-testid":w.resizeGrip,children:r(Ra,{})})}var Ye=v.cssPrefix,Kd=`.${Ye}-header, .${Ye}-back-header, .${Ye}-home-hero`,jd='button, a, input, textarea, select, [role="tab"], [contenteditable]',Ja=56;function Wn(e,t){E(()=>{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(Kd)||d.closest(jd))return;let u=e.getBoundingClientRect();i={id:c.pointerId,x:c.clientX,y:c.clientY,dx:n(e.style.getPropertyValue(`--${Ye}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${Ye}-modal-dy`)),maxX:(window.innerWidth+u.width)/2-Ja,maxY:(window.innerHeight+u.height)/2-Ja},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(`--${Ye}-modal-dx`,`${d}px`),e.style.setProperty(`--${Ye}-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 Nt(e,t,n,o){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"popOut":return t!=="standalone"&&!!o?.popOutUrl;case"close":return t==="standalone"||t==="page"?!1:t==="inline"?n==="fullscreen":!0}}function Gn(e,t,n){return Nt("close",e,t)?n.includes("close"):!1}function Ya(e,t){return e==="inline"&&t==="fullscreen"?"exit-fullscreen":"close"}var Xd='a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])';function qn(e){let t=n=>{if(n.key!=="Tab")return;let o=[...e.querySelectorAll(Xd)].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 Vn(e){return e.trim().split(/\s+/).slice(0,2).map(t=>t.charAt(0).toUpperCase()).join("")}var cr=v.cssPrefix;function Qa({agent:e}){let t=e.status??"online";return r("div",{class:`${cr}-agent`,children:[r("div",{class:`${cr}-agent-avatar`,"data-status":t,children:e.avatar?r("img",{src:e.avatar,alt:""}):r("span",{children:Vn(e.name)})}),r("div",{class:`${cr}-agent-meta`,children:[r("strong",{children:e.name}),e.title?r("span",{children:e.title}):null]})]})}var Za=H.scope("attachments");function Kn(e,t,n){let o=Yd(e),i=[],a=[],s=e_(n.accept),l=t.reduce((d,u)=>d+u.size,0),c=t.length;for(let d of o){let u=Jd(d,c,l,n,s);if(u){a.push({file:d,reason:u});continue}i.push(Zd(d)),l+=d.size,c+=1}return(i.length||a.length)&&Za.debug("ingest",{accepted:i.length,rejected:a.map(d=>({name:d.file.name,reason:d.reason}))}),{accepted:i,rejected:a}}function dr(e){try{URL.revokeObjectURL(e.previewUrl)}catch(t){Za.debug("revokeObjectURL failed",{error:t})}}function Jd(e,t,n,o,i){return t>=o.maxCount?"count":n+e.size>o.maxBytes?"bytes":t_(e,i)?null:"mime"}function Yd(e){return e?Array.isArray(e)?e.filter(t=>t instanceof File):[...e].map(t=>t instanceof File?t:Qd(t)).filter(t=>t!==null):[]}function Qd(e){let t=e;return!t?.getAsFile||t.kind!=="file"?null:t.getAsFile()}function Zd(e){return{file:e,id:Ie(),mediaType:e.type||"application/octet-stream",name:e.name||"pasted-file",previewUrl:URL.createObjectURL(e),size:e.size}}function e_(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 t_(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 Ot=v.cssPrefix;function es({attachment:e,onRemove:t}){let n=e.mediaType.startsWith("image/");return r("span",{class:`${Ot}-attachment-chip`,title:e.name,"data-testid":_e(w.attachmentChip,e.id),children:[n?r("img",{class:`${Ot}-attachment-thumb`,src:e.previewUrl,alt:""}):r("span",{class:`${Ot}-attachment-thumb`,"aria-hidden":"true",children:r(za,{})}),r("span",{class:`${Ot}-attachment-name`,children:e.name}),r("button",{type:"button",class:`${Ot}-attachment-remove`,onClick:t,"aria-label":`Remove ${e.name}`,"data-testid":_e(w.attachmentRemove,e.id),children:r(Me,{})})]})}var _r={isSupported:!1,start:()=>{},stop:()=>{}};function ur(e,t,n){return e==="disabled"?_r:e==="server"?i_(n):n_(t)}function n_(e){let t=o_();if(!t)return _r;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 o_(){let e=globalThis;return e.SpeechRecognition??e.webkitSpeechRecognition}var r_=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/mp4"];function i_(e){if(typeof MediaRecorder>"u"||!navigator?.mediaDevices?.getUserMedia)return _r;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=a_();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 a_(){for(let e of r_)if(MediaRecorder.isTypeSupported(e))return e}var ye=v.cssPrefix,Qe=H.scope("composer");function mt(e){return e.reduce((t,n)=>t+n.size,0)}var s_={arrowUp:ya,paperPlane:Pa,send:Sa,chevron:Bn};function ts({options:e,transport:t,feedback:n,bus:o,isStreaming:i,onSend:a,onStop:s,attachApiRef:l}){let c=e.strings,[d,u]=T(""),[_,g]=T([]),[p,m]=T(!1),h=$(null),y=$(null),S=e.features.files,C=e.features.voice,[F,R]=T(()=>ur(C,e.locale,(P,U)=>t.transcribe(P,U)));E(()=>{p||C==="disabled"||R(ur(C,e.locale,(P,U)=>t.transcribe(P,U)))},[e.locale,C,t,p]),E(()=>{let P=h.current;if(!P)return;let U=P.getRootNode(),Q="activeElement"in U?U.activeElement:null;Q&&P.closest(`.${ye}-panel`)?.contains(Q)||P.focus({preventScroll:!0})},[]),E(()=>{let P=h.current;if(P){if(d.length===0){P.style.height="";return}P.style.height="auto",P.style.height=`${Math.min(P.scrollHeight,160)}px`}},[d]);let B=$(_);B.current=_,E(()=>()=>B.current.forEach(dr),[]),E(()=>{if(l)return l.current={attachFromDrop:P=>{let U=Kn(P,B.current,e.attachments);U.accepted.length!==0&&(Qe.info("attach (drop)",{count:U.accepted.length,totalBytes:mt(U.accepted)}),o.emit("attach",{count:U.accepted.length,totalBytes:mt(U.accepted)}),g(Q=>[...Q,...U.accepted]))}},()=>{l.current&&(l.current=null)}},[l,e.attachments]),E(()=>{let P=h.current;if(!P)return;let U=P.closest(`.${ye}-panel`);if(!U)return;let Q=fe=>{let me=fe.clipboardData;if(!me)return;if(S){let Pe=Kn(me.items,B.current,e.attachments);if(Pe.accepted.length>0){fe.preventDefault(),Qe.info("attach (paste)",{count:Pe.accepted.length,totalBytes:mt(Pe.accepted)}),o.emit("attach",{count:Pe.accepted.length,totalBytes:mt(Pe.accepted)}),g(Ft=>[...Ft,...Pe.accepted]);return}}if(fe.target===P)return;let Te=me.getData("text/plain");Te&&(fe.preventDefault(),u(Pe=>Pe+Te),P.focus())};return U.addEventListener("paste",Q),()=>U.removeEventListener("paste",Q)},[S,e.attachments,ye]);let q=()=>{let P=d.trim();!P&&_.length===0||i||(a(P,_),u(""),g([]))},D=P=>{P.key!=="Enter"||P.shiftKey||P.isComposing||(P.preventDefault(),i?s():q())},se=P=>{let U=P.target,Q=Kn(U.files,_,e.attachments);Q.accepted.length>0&&(Qe.info("attach (file picker)",{count:Q.accepted.length,totalBytes:mt(Q.accepted)}),o.emit("attach",{count:Q.accepted.length,totalBytes:mt(Q.accepted)}),g(fe=>[...fe,...Q.accepted])),U.value=""},x=P=>{Qe.info("removeAttachment",{id:P}),o.emit("removeAttachment",{id:P}),g(U=>{let Q=U.find(fe=>fe.id===P);return Q&&dr(Q),U.filter(fe=>fe.id!==P)})},A=$(null),ce=()=>{if(F.isSupported){if(p){let P=A.current?Date.now()-A.current:0;Qe.info("voiceStop",{durationMs:P}),o.emit("voiceStop",{durationMs:P}),F.stop(),m(!1),n.play("voiceStop"),A.current=null;return}A.current=Date.now(),Qe.info("voiceStart"),o.emit("voiceStart",void 0),m(!0),n.play("voiceStart"),F.start((P,U)=>u(Q=>U?`${Q}${P} `:Q),()=>{if(m(!1),A.current){let P=Date.now()-A.current;Qe.debug("voiceStop (auto)",{durationMs:P}),o.emit("voiceStop",{durationMs:P}),A.current=null}})}},ue=s_[e.composer.sendButton.icon];return r("div",{class:`${ye}-composer`,"data-testid":w.composer,children:[_.length>0?r("div",{class:`${ye}-attachments`,children:_.map(P=>r(es,{attachment:P,onRemove:()=>x(P.id)},P.id))}):null,r("div",{class:`${ye}-composer-row`,children:[r("div",{class:`${ye}-composer-actions`,children:[S?r("button",{type:"button",class:`${ye}-icon-btn`,onClick:()=>y.current?.click(),"aria-label":c.attach,"data-testid":w.composerAttach,children:r(ka,{})}):null,F.isSupported?r("button",{type:"button",class:`${ye}-icon-btn`,onClick:ce,"aria-label":p?c.micStop:c.micStart,"aria-pressed":p,"data-recording":p?"true":void 0,"data-testid":w.composerVoice,children:r(Ca,{})}):null]}),r("textarea",{ref:h,class:`${ye}-textarea`,rows:1,value:d,placeholder:c.composerPlaceholder,onInput:P=>u(P.target.value),onKeyDown:D,"aria-label":c.composerPlaceholder,"data-testid":w.composerInput}),i?r("button",{type:"button",class:`${ye}-send`,onClick:s,"aria-label":c.stop,"data-testid":w.composerStop,children:r(wa,{})}):r("button",{type:"button",class:`${ye}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:q,disabled:!d.trim()&&_.length===0,"aria-label":c.send,"data-testid":w.composerSend,children:r(ue,{})})]}),r("input",{ref:y,type:"file",multiple:!0,accept:e.attachments.accept,onChange:se,class:`${ye}-sr-only`,"data-testid":w.composerFileInput})]})}var l_=v.cssPrefix;function ns({visible:e,strings:t}){return e?r("div",{class:`${l_}-dropzone`,role:"status","aria-live":"polite",children:t.dropZone}):null}function jn({containerRef:e,onDrop:t}){let[n,o]=T(!1);return E(()=>{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 os({itemCount:e,initialFocusIndex:t}){let[n,o]=T(!1),i=$(null),a=$(null),[s,l]=T(-1),c=O(()=>{o(!1),l(-1),i.current?.focus()},[]),d=O(()=>o(g=>!g),[]);E(()=>{if(!n)return;let g=p=>{let m=a.current,h=i.current;if(!m||!h)return;let y=p.composedPath();y.includes(m)||y.includes(h)||(o(!1),l(-1))};return document.addEventListener("click",g,!0),()=>document.removeEventListener("click",g,!0)},[n]),E(()=>{if(!n||e===0)return;let g=t?.()??0,p=g<0||g>=e?0:g;l(p)},[n,e,t]),E(()=>{if(!n||s<0)return;a.current?.querySelectorAll("[role='menuitem']")?.[s]?.focus()},[n,s]);let u=O(g=>{(g.key==="ArrowDown"||g.key==="Enter"||g.key===" ")&&(g.preventDefault(),o(!0))},[]),_=O(g=>{if(e!==0)switch(g.key){case"Escape":g.preventDefault(),c();return;case"ArrowDown":g.preventDefault(),l(p=>(p+1)%e);return;case"ArrowUp":g.preventDefault(),l(p=>(p-1+e)%e);return;case"Home":g.preventDefault(),l(0);return;case"End":g.preventDefault(),l(e-1)}},[e,c]);return{open:n,focusIndex:s,triggerRef:i,menuRef:a,toggle:d,close:c,onTriggerKey:u,onMenuKey:_}}function rs({items:e,triggerLabel:t}){let n=v.cssPrefix,o=os({itemCount:e.length}),i=a=>{a.disabled||(a.onSelect(),a.keepOpen||o.close())};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(La,{})}),o.open?r("div",{ref:o.menuRef,class:`${n}-menu`,role:"menu","aria-label":t,onKeyDown:o.onMenuKey,tabIndex:-1,children:e.map(a=>r("button",{type:"button",role:"menuitem",class:`${n}-menu-item`,"aria-pressed":a.type==="switch"?a.on:void 0,disabled:a.disabled,lang:a.lang,onClick:()=>i(a),children:[a.icon?r("span",{class:`${n}-menu-icon`,children:a.icon}):null,r("span",{class:`${n}-menu-label`,children:a.label}),a.type==="switch"&&a.on?r("span",{class:`${n}-menu-check`,"aria-hidden":"true",children:r(zn,{})}):null]},a.id))}):null]})}var pr=v.cssPrefix,c_={auto:"dark",dark:"light",light:"auto"},d_={normal:"large",large:"small",small:"normal"};function __(e){return e==="light"?r(Ga,{}):e==="dark"?r(qa,{}):r(Va,{})}function Ne({panelProps:e,variant:t}){let{options:n,panelSize:o,feedback:i,onClose:a,onClear:s,onExpand:l,onFullscreen:c,onPopOut:d,onSoundToggle:u}=e,{onToggleHistory:_,onLocaleChange:g,onThemeChange:p,onTextSizeChange:m}=e,h=n.strings,y=n.mode,S=t==="chat",C=re(()=>i.mutedSig.value).value,F=new Set(n.actions),R=P=>F.has(P),B=P=>Nt(P,y,o,{popOutUrl:n.popOutUrl}),q=n.themeMode,D={auto:h.themeAuto,light:h.themeLight,dark:h.themeDark},se=n.textSize,x={small:h.textSizeSmall,normal:h.textSizeNormal,large:h.textSizeLarge},A=[];if(S&&R("clear")&&A.push({id:"clear",icon:r(Ha,{}),label:h.newConversation,onSelect:s}),R("expand")&&B("expand")){let P=o==="expanded";A.push({id:"expand",icon:P?r(Ea,{}):r(Ta,{}),label:P?h.collapse:h.expand,type:"switch",on:P,onSelect:l})}if(R("fullscreen")&&B("fullscreen")){let P=o==="fullscreen";A.push({id:"fullscreen",icon:P?r(Ia,{}):r(Aa,{}),label:P?h.exitFullscreen:h.fullscreen,type:"switch",on:P,onSelect:c})}if(R("popOut")&&B("popOut")&&A.push({id:"popOut",icon:r($a,{}),label:h.popOut,onSelect:d}),S&&R("sound")&&A.push({id:"sound",icon:C?r(Na,{}):r(Ma,{}),label:C?h.soundOff:h.soundOn,type:"switch",on:!C,onSelect:u}),R("theme")&&A.push({id:"theme",icon:__(q),label:`${h.theme}: ${D[q]}`,onSelect:()=>p(c_[q]),keepOpen:!0}),R("textSize")&&A.push({id:"textSize",icon:r(Oa,{}),label:`${h.textSize}: ${x[se]}`,onSelect:()=>m(d_[se]),keepOpen:!0}),R("language")&&n.availableLocales.length>1)for(let P of n.availableLocales)A.push({id:`language:${P}`,label:`${h.language} \u2014 ${P}`,lang:P,type:"switch",on:P===n.locale,onSelect:()=>g(P)});let ce=!!a&&Gn(y,o,n.actions),ue=S&&R("history");return r("div",{class:`${pr}-header-actions`,children:[ue?r("button",{type:"button",class:`${pr}-icon-btn`,onClick:_,"aria-label":h.history,title:h.history,"data-testid":w.actionHistory,children:r(Da,{})}):null,A.length>0?r(rs,{items:A,triggerLabel:h.moreActions}):null,ce?r("button",{type:"button",class:`${pr}-icon-btn`,onClick:a,"aria-label":h.close,title:h.close,"data-testid":w.actionClose,children:r(Me,{})}):null]})}var u_=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,p_=/^https?:\/\/[^\s.]+\.[^\s]+$/i,f_=/^[+]?[\d\s().-]{6,}$/;function gt(e,t){return e.replace(/\{(\w+)\}/g,(n,o)=>String(t[o]??`{${o}}`))}function m_(e){return Array.isArray(e)?e.length:e&&e.trim()?1:0}function g_(e,t,n){let o=e.required??!0,i=e.validation;if(e.type==="multiselect"){let s=m_(t);return o&&s===0?n.formRequired:s===0?void 0:i?.minSelections!=null&&s<i.minSelections?gt(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&s>i.maxSelections?gt(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(!u_.test(a))return n.formInvalidEmail;break;case"url":if(!p_.test(a))return n.formInvalidUrl;break;case"tel":if(!f_.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 gt(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&s>i.max)return gt(n.formNumberTooLarge,{max:i.max});break}default:break}if(i?.minLength!=null&&a.length<i.minLength)return gt(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return gt(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function is(e,t,n){let o={};for(let i of e){let a=g_(i,t[i.name],n);a&&(o[i.name]=a)}return o}function as(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 ie=v.cssPrefix,Xn="__other__";function Jn({fields:e,strings:t,submitLabel:n,onSubmit:o,skipLabel:i,onSkip:a,disabled:s,rootTestId:l,submitTestId:c,skipTestId:d}){let[u,_]=T(()=>x_(e)),[g,p]=T({}),[m,h]=T({}),y=R=>{m[R]&&h(B=>({...B,[R]:""}))},S=(R,B)=>{_(q=>({...q,[R]:B})),y(R)},C=(R,B)=>{p(q=>({...q,[R]:B})),y(R)},F=R=>{if(R.preventDefault(),s)return;let B=P_(e,u,g),q=is(e,B,t);if(Object.keys(q).length>0){h(q);return}o(as(B))};return r("form",{class:`${ie}-form`,onSubmit:F,"data-testid":l,noValidate:!0,children:[e.map(R=>r(h_,{field:R,value:u[R.name],otherText:g[R.name]??"",error:m[R.name],disabled:s,strings:t,onChange:B=>S(R.name,B),onOtherChange:B=>C(R.name,B)},R.name)),r("div",{class:`${ie}-form-actions`,children:[i&&a?r("button",{type:"button",class:`${ie}-form-skip`,onClick:a,disabled:s,"data-testid":d,children:i}):null,r("button",{type:"submit",class:`${ie}-form-submit`,disabled:s,"data-testid":c,children:n})]})]})}function h_({field:e,value:t,otherText:n,error:o,disabled:i,strings:a,onChange:s,onOtherChange:l}){let c=_e(w.formField,e.name),d=v_({field:e,value:t,otherText:n,disabled:i,strings:a,onChange:s,onOtherChange:l,fieldTid:c});return r("label",{class:`${ie}-field`,"data-field":e.name,"data-invalid":o?"true":void 0,children:[r("span",{class:`${ie}-field-label`,children:[e.label,e.required??!0?r("span",{class:`${ie}-field-req`,"aria-hidden":"true",children:" *"}):null]}),d,e.validationHint&&!o?r("span",{class:`${ie}-field-hint`,children:e.validationHint}):null,o?r("span",{class:`${ie}-field-error`,role:"alert",children:o}):null]})}function v_(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:`${ie}-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:`${ie}-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===Xn;return r("div",{class:`${ie}-field-choices`,role:"radiogroup","data-testid":c,children:[(t.options??[]).map(_=>r("label",{class:`${ie}-choice`,children:[r("input",{type:"radio",name:`${ie}-${t.name}`,checked:d===_.value,disabled:i,onChange:()=>s(_.value)}),r("span",{children:_.label??_.value})]},_.value)),t.allowOther?r("label",{class:`${ie}-choice`,children:[r("input",{type:"radio",name:`${ie}-${t.name}`,checked:d===Xn,disabled:i,onChange:()=>s(Xn)}),r("span",{children:a.formOther})]}):null,u?r("input",{class:`${ie}-field-input`,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:_=>l(_.target.value)}):null]})}case"checkbox":return r("label",{class:`${ie}-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:[],_=(g,p)=>s(p?[...u,g]:u.filter(m=>m!==g));return r("div",{class:`${ie}-field-choices`,"data-testid":c,children:[(t.options??[]).map(g=>r("label",{class:`${ie}-choice`,children:[r("input",{type:"checkbox",checked:u.includes(g.value),disabled:i,onChange:p=>_(g.value,p.target.checked)}),r("span",{children:g.label??g.value})]},g.value)),t.allowOther||(t.options??[]).length===0?r("textarea",{class:`${ie}-field-input`,rows:2,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:g=>l(g.target.value)}):null]})}default:return r("input",{class:`${ie}-field-input`,type:b_(t.type),value:d,placeholder:t.placeholder,disabled:i,onInput:u=>s(u.target.value),"data-testid":c})}}function b_(e){switch(e){case"number":case"email":case"tel":case"url":case"date":case"time":return e;default:return"text"}}function x_(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 P_(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]===Xn)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 Dt=v.cssPrefix;function ss({form:e,strings:t,onSubmit:n,onSkip:o}){return r("div",{class:`${Dt}-form-gate`,"data-testid":w.formGate,children:[e.title?r("h3",{class:`${Dt}-form-gate-title`,children:e.title}):null,e.description?r("p",{class:`${Dt}-form-gate-desc`,children:e.description}):null,r(Jn,{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:w.formSubmit,skipTestId:w.formSkip})]})}function fr({marker:e,strings:t}){let n=e.outcome==="skipped"?t.formSkipped:t.formSubmitted;return r("div",{class:`${Dt}-form-done`,"data-testid":w.formDone,role:"status",children:[r(zn,{}),r("span",{children:n}),e.title?r("span",{class:`${Dt}-form-done-title`,children:["\xB7 ",e.title]}):null]})}var hr=1,cs=2,ds=4,_s=8,us=16;function y_(e){switch(e){case hr:return"href";case cs:return"src";case ds:return"class";case _s:return"checked";case us:return"start"}}var S_=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}},w_=S_;var ls=24;function br(e){let t=new Uint32Array(ls);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(ls),indent:"",indent_len:0,table_state:0}}function ps(e){e.pending.length>0&&pe(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 ea.trace("chunk",{type:o.type,eventId:n}),{chunk:o,eventId:n}}catch(o){return ea.trace("frame parse failed",{err:o,payload:t.slice(0,200)}),null}}function pd(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 na=e=>e&&Object.keys(e).length>0?e:void 0;function oa(e,t){let n=na(e),o=na(t);if(!n&&!o)return;let i={};return n&&(i.user=n),o&&(i.page=o),pd(JSON.stringify(i))}function An(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}var Re={startConversation:"/ai/agent/start-conversation",streamMessage:"/ai/agent/stream-message",streamResume:"/ai/agent/stream-resume",cancelStream:"/ai/agent/cancel-stream",listConversations:"/ai/agent/list-conversations",listMessages:"/ai/agent/list-messages",updateSettings:"/ai/agent/update-settings",markRead:"/ai/agent/mark-read",content:"/ai/agent/content",submitForm:"/ai/agent/submit-form"},ra="context";function ia(e){let n={messages:e.messages.map(a=>({id:a.id,parts:gd(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(md).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 fd(e){return e.state==="output"||e.state==="error"||e.approval?.approved!==void 0}function md(e){return typeof e=="string"?e?{code:e}:null:e?.code?e:null}function gd(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"&&fd(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 J=H.scope("transport"),hd=3,la=400,aa=3,vd=new Set([408,425,429,500,502,503,504]);function sa(e){return la*2**e+Math.floor(Math.random()*250)}function bd(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 rr(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 In=class{constructor(t){j(this,"opts",t);j(this,"visitorId");j(this,"conversationId");j(this,"userContext");j(this,"pageContext")}setContext(t,n){this.userContext=t,this.pageContext=n}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);let n=oa(this.userContext,this.pageContext);return n&&(t[ra]=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 startConversation(t){J.debug("startConversation \u2192",{visitorId:t.visitorId,conversationId:t.conversationId,locale:t.locale});let n=await this.postJson(Re.startConversation,t,"startConversation");return J.debug("startConversation \u2190",{visitorId:n.visitorId,conversationId:n.conversationId,canContinue:n.canContinue,hasMessages:!!n.messages?.length,hasWelcome:!!n.welcome,hasConfig:!!n.config,rebind:n.rebind}),Pd(n)||J.warn("startConversation 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){J.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 J.debug("uploadFile \u2190",{id:o.id,url:o.url}),o}async transcribe(t,n="audio/webm"){J.debug("transcribe \u2192",{size:t.size,mimeType:n});let o=new FormData;o.append("audio",t,`voice.${xd(n)}`),o.append("mimeType",n);let i=await this.postForm(this.transcribePath,o,"transcribe");return J.debug("transcribe \u2190",{textLen:i.text.length}),i}async listConversations(t={}){let n=new URL(this.url(Re.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),J.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 J.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(Re.listMessages));n.searchParams.set("conversationId",t),J.debug("loadConversation \u2192",{conversationId:t,visitorId:this.visitorId});let o=await this.getJson(n.toString(),"loadConversation"),i=o.messages??[];return J.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)){J.debug("markRead \u2192",{conversationId:t,visitorId:this.visitorId});try{await this.postJson(Re.markRead,{conversationId:t},"markRead")}catch(n){J.debug("markRead failed (non-fatal)",{err:n})}}}async listContent(t={}){let n=new URL(this.url(Re.content));for(let[a,s]of Object.entries(t))s!==void 0&&n.searchParams.set(a,Array.isArray(s)?s.join(","):String(s));J.debug("listContent \u2192",t);let o=await this.getJson(n.toString(),"listContent"),i=o.items??[];return J.debug("listContent \u2190",{count:i.length,total:o.pagination?.total}),{...o,items:i}}async saveUserPrefs(t){J.debug("saveUserPrefs \u2192",{visitorId:this.visitorId,conversationId:this.conversationId,settingsKeys:Object.keys(t)});let n=await this.postJson(Re.updateSettings,{userPrefs:t},"saveUserPrefs");return J.debug("saveUserPrefs \u2190",{ok:n.ok}),n}get uploadPath(){return this.opts.endpoints?.upload??"/ai/agent/upload-file"}get transcribePath(){return this.opts.endpoints?.transcribe??"/ai/agent/transcribe-audio"}get submitFormPath(){return this.opts.endpoints?.submitForm??Re.submitForm}async submitForm(t){J.debug("submitForm \u2192",{formId:t.formId,trigger:t.trigger,fields:Object.keys(t.values).length});try{await this.postJson(this.submitFormPath,t,"submitForm")}catch(n){J.debug("submitForm failed (non-fatal)",{err:n})}}sendMessage(t){J.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<=hd&&!t.signal.aborted;i++){if((!o||i>1)&&(await rr(la*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;J.debug("resume fetch failed \u2014 retrying",{attempt:i,err:l});continue}if(a.status===204||!a.ok){J.debug("resume \u2192 no in-flight stream",{status:a.status});return}let s=n.size;if(yield*this.drain(or(a,t.signal),n,t))return;if(n.size===s){J.debug("resume \u2192 stream closed with no new events; nothing to resume");return}}if(!t.signal.aborted)throw new ke("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 ke&&i.status!==void 0)throw i;J.debug("stream segment dropped",{err:i})}return!1}cancelStream(t,n){t.signal.aborted||(J.debug("cancel stream",{conversationId:n,visitorId:this.visitorId}),t.abort(),!(!this.visitorId||!n)&&this.fetchImpl(this.url(Re.cancelStream),{method:"POST",credentials:"omit",headers:{"content-type":"application/json",...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({})),keepalive:!0}).catch(o=>J.debug("cancel POST failed (non-fatal)",{err:o})))}async*openMessageStream(t,n){let o=await this.fetchImpl(this.url(Re.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*or(o,n)}resumeUrl(t){let n=new URL(this.withEnvelopeQuery(Re.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>=aa)throw new ke(`${n} failed: network error`,"network",void 0,c);J.debug("request network error \u2014 retrying",{label:n,attempt:o}),await rr(sa(o));continue}if(s.ok||!vd.has(s.status)||o>=aa)return s;let l=bd(s.headers)??sa(o);J.debug("request retryable status \u2014 retrying",{label:n,status:s.status,attempt:o,wait:l}),await rr(l)}}async assertOk(t,n){if(!t.ok)throw new ke(`${n} failed: ${t.status}`,"server",t.status);return await t.json()}url(t){return/^https?:\/\//i.test(t)?t:`${this.opts.baseUrl}${t}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function xd(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 Pd(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.visitorId=="string"&&typeof t.conversationId=="string"&&typeof t.canContinue=="boolean"}function ca(e,t){let n=e?[{kind:"text",id:"t0",textSig:L(e),doneSig:L(!0)}]:[];return{id:Ie(),role:"user",createdAt:Date.now(),status:"complete",attachments:t,partsSig:L(n)}}function Rn(){return{id:Ie(),role:"assistant",createdAt:Date.now(),status:"streaming",partsSig:L([])}}function da(e){return{id:e.id,role:e.role,createdAt:Date.now(),status:"streaming",partsSig:L([{kind:"text",id:`${e.id}-t0`,textSig:L(""),doneSig:L(!1)}])}}function _a(e){return yd({id:e.id,role:e.role,createdAt:Date.now(),status:"complete",parts:[{kind:"text",id:`${e.id}-t0`,text:e.text,done:!0}]})}function yd(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,errorText:e.errorText,finishReason:e.finishReason,attachments:e.attachments,partsSig:L(e.parts.map(Sd))}}function ir(e){let t=e.parts.map((n,o)=>n.type==="text"?{kind:"text",id:`${e.id}-t${o}`,textSig:L(n.text),doneSig:L(!0)}:n.type==="file"?{kind:"file",url:n.url,mediaType:n.mediaType}:n.type==="tool"?{kind:"tool",toolCallId:n.toolCallId,toolName:n.toolName,inputPartialSig:L(""),inputSig:L(n.input),outputSig:L(n.output),errorSig:L(n.errorText),stateSig:L(n.state),approvalSig:L(n.approval)}:null).filter(n=>n!==null);return{id:e.id,role:e.role,createdAt:An(e.createdAt)??Date.now(),status:"complete",partsSig:L(t)}}function ua(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(wd)}}function ar(e){let t="";for(let n of e.partsSig.value)n.kind==="text"&&(t+=n.textSig.value);return t}function Sd(e){return e.kind==="text"||e.kind==="reasoning"?{kind:e.kind,id:e.id,textSig:L(e.text),doneSig:L(e.done)}:e.kind==="tool"?{kind:"tool",toolCallId:e.toolCallId,toolName:e.toolName,inputPartialSig:L(e.inputPartial),inputSig:L(e.input),outputSig:L(e.output),errorSig:L(e.error),stateSig:L(e.state),approvalSig:L(e.approval)}:e}function wd(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}var kd="tool:ask-user-input";function Ln(e){return e===kd}var Mn={submitMessage:"submit-message",toolResult:"tool-result",toolApproval:"tool-approval"};var pa=H.scope("reducer"),Nn=class{constructor(t){j(this,"messagesSig",t);j(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":pa.debug("finish",{reason:t.finishReason,canContinue:t.canContinue}),n.status="complete",t.finishReason&&(n.finishReason=t.finishReason),this.bumpDone(n);return;case"error":pa.warn("stream error chunk",{errorText:t.errorText}),n.status="error",n.errorText=t.errorText,this.bumpDone(n);return;case"text-start":ut(n,"text",t.id);return;case"text-delta":{let o=ut(n,"text",t.id);o.textSig.value+=t.delta;return}case"text-end":ut(n,"text",t.id).doneSig.value=!0;return;case"reasoning-start":ut(n,"reasoning",t.id).doneSig.value=!1;return;case"reasoning-delta":{let o=ut(n,"reasoning",t.id);o.textSig.value+=t.delta;return}case"reasoning-end":ut(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":Cd(n,t);return;case"file":On(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;On(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 ut(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:L(""),doneSig:L(!1)};return On(e,i),i}function pt(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:L(""),inputSig:L(void 0),outputSig:L(void 0),errorSig:L(void 0),stateSig:L("input"),approvalSig:L(void 0)};return On(e,i),i}function On(e,t){e.partsSig.value=[...e.partsSig.value,t]}function Cd(e,t){switch(t.type){case"tool-input-start":pt(e,t.toolCallId,t.toolName);return;case"tool-input-delta":{let n=pt(e,t.toolCallId);n.inputPartialSig.value+=t.delta;return}case"tool-input-available":{let n=pt(e,t.toolCallId,t.toolName);n.inputSig.value=t.input,n.stateSig.value=Ln(n.toolName)?"awaiting-input":"awaiting";return}case"tool-approval-request":{let n=pt(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value="awaiting-approval";return}case"tool-output-available":{let n=pt(e,t.toolCallId);n.outputSig.value=t.output,n.stateSig.value="output";return}case"tool-output-error":{let n=pt(e,t.toolCallId);n.errorSig.value=t.errorText,n.stateSig.value="error";return}default:return}}var ft=H.scope("persistence");function Rt(e,t=bn){let n=`${v.cssPrefix}.${e}`,o=`${n}.visitorId`,i=`${n}.conversationId`,a=`${n}.userPrefs`,s=`${n}.panelOpen`,l=`${n}.panelSize`,c=`${n}.calloutDismissed`,d=`${n}.sidebarCollapsed`,u=`${n}.activeModule`,_=`${n}.formsDone`,g={getVisitorId(){let p=t.get(o);if(p)return p;let m=Ie();return t.set(o,m),m},setVisitorId(p){ft.debug("setVisitorId (rebind)",{id:p,widgetId:e}),t.set(o,p)},loadConversationId(){return t.get(i)??void 0},saveConversationId(p){ft.trace("saveConversationId",{id:p,widgetId:e}),p?t.set(i,p):t.remove(i)},loadUserPrefs(){let p=t.get(a);if(!p)return{};try{let m=JSON.parse(p);return fa(m)?m:{}}catch(m){return ft.warn("loadUserPrefs parse failed",{error:m}),{}}},saveUserPrefs(p){try{t.set(a,JSON.stringify(p))}catch(m){ft.warn("saveUserPrefs serialise failed",{error:m})}},patchUserPrefs(p){let m=g.loadUserPrefs();g.saveUserPrefs({...m,...p})},loadPanelOpen(){let p=t.get(s);return p==="1"?!0:p==="0"?!1:null},savePanelOpen(p){t.set(s,p?"1":"0")},loadPanelSize(){let p=t.get(l);return p==="normal"||p==="expanded"||p==="fullscreen"?p:null},savePanelSize(p){t.set(l,p)},loadCalloutDismissed(p){if(!p)return!1;let m=t.get(c);return!!m&&m===p},saveCalloutDismissed(p){p?t.set(c,p):t.remove(c)},loadSidebarCollapsed(){let p=t.get(d);return p==="1"?!0:p==="0"?!1:null},saveSidebarCollapsed(p){t.set(d,p?"1":"0")},loadActiveModule(){return t.get(u)||null},saveActiveModule(p){t.set(u,p)},loadFormsDone(){let p=t.get(_);if(!p)return{};try{let m=JSON.parse(p);return fa(m)?m:{}}catch(m){return ft.warn("loadFormsDone parse failed",{error:m}),{}}},saveFormDone(p){try{let m=g.loadFormsDone();m[p]=Date.now(),t.set(_,JSON.stringify(m))}catch(m){ft.warn("saveFormDone serialise failed",{error:m})}},clearConversation(){t.remove(i)}};return g}function fa(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var ma=H.scope("feedback:audio"),Dn=class{constructor(){j(this,"ctx",null);j(this,"master",null);j(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){ma.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=>(ma.warn("audio fetch/decode failed",{url:t,err:a}),this.buffers.delete(t),null));return this.buffers.set(t,i),i}};var ga={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},ha={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 qe=null,$n=0;function Td(){return typeof navigator<"u"&&typeof navigator.vibrate=="function"}function Ed(){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=`__${v.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 va(e){if(!(e===0||Array.isArray(e)&&e.every(t=>t===0))){if(Td())try{navigator.vibrate(e);return}catch{}if(qe||(qe=Ed()),!!qe)try{qe.label.click()}catch{}}}function ba(){$n++;let e=!1;return()=>{e||(e=!0,$n=Math.max(0,$n-1),$n===0&&qe&&(qe.input.remove(),qe.label.remove(),qe=null))}}var Ad=H.scope("feedback"),Id=100,Hn=class{constructor(t,n){j(this,"mutedSig",L(!1));j(this,"audio",new Dn);j(this,"releaseHaptics");j(this,"sound");j(this,"haptics");j(this,"lastPlayed",new Map);j(this,"reducedMotionMq",null);this.sound=t,this.haptics=n,this.releaseHaptics=ba(),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<Id}playSound(t){let n=this.sound.events?.[t];if(n===!1)return;if(typeof n=="string"){this.audio.playUrl(n).catch(i=>Ad.warn("audio play failed",{err:i,url:n}));return}let o=ha[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?ga[t]:n;va(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 Je(e,t){return e instanceof ke&&e.status===429?t.errorRateLimited:t.errorGeneric}var Rd=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:--Rd,__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 W.vnode&&W.vnode(d),d}var M={fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,viewBox:"0 0 24 24"},Ld=()=>r("svg",{...M,"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"})}),Me=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M18 6 6 18M6 6l12 12"})}),xa=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M12 5v14M5 12h14"})}),Pa=()=>r("svg",{...M,"aria-hidden":"true",children:[r("path",{d:"m22 2-7 20-4-9-9-4Z"}),r("path",{d:"M22 2 11 13"})]}),ya=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M12 19V5M5 12l7-7 7 7"})}),Sa=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M3 20V4l18 8-18 8Z"})}),Bn=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"m9 18 6-6-6-6"})}),wa=()=>r("svg",{...M,"aria-hidden":"true",children:r("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})}),ka=()=>r("svg",{...M,"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"})}),Ca=()=>r("svg",{...M,"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"})]}),Ta=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5"})}),Ea=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5"})}),Aa=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z"})}),Ia=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7"})}),Ra=()=>r("svg",{...M,"aria-hidden":"true",viewBox:"0 0 10 10",children:r("path",{d:"M9 1L1 9M9 5L5 9M9 9H9",strokeWidth:"1.5"})}),La=()=>r("svg",{...M,"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"})]}),Ma=()=>r("svg",{...M,"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"})}),Na=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6"})}),Oa=()=>r("svg",{...M,"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"})]}),zn=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M20 6 9 17l-5-5"})}),Da=()=>r("svg",{...M,"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"})]});var Lt=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M19 12H5M12 19l-7-7 7-7"})}),$a=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"M15 3h6v6M10 14 21 3M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})}),Ha=()=>r("svg",{...M,"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"})]}),Ba=()=>r("svg",{...M,"aria-hidden":"true",children:r("path",{d:"m6 9 6 6 6-6"})}),za=()=>r("svg",{...M,"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"})]}),Md=()=>r("svg",{...M,"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"})]}),Nd=()=>r("svg",{...M,"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"})}),sr=()=>r("svg",{...M,"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"})]}),Od=()=>r("svg",{...M,"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"})]}),Dd=()=>r("svg",{...M,"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"})]}),$d=()=>r("svg",{...M,"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"})]}),Hd=()=>r("svg",{...M,"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"})]}),lr=()=>r("svg",{...M,"aria-hidden":"true",children:[r("circle",{cx:"11",cy:"11",r:"7"}),r("path",{d:"m21 21-4.3-4.3"})]}),Fa=()=>r("svg",{...M,"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"})]}),Ua=()=>r("svg",{...M,"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"})]}),Wa=()=>r("svg",{...M,"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"})]}),Mt=()=>r("svg",{...M,"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"})]}),Ga=()=>r("svg",{...M,"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"})]}),qa=()=>r("svg",{...M,"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"})}),Va=()=>r("svg",{...M,"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"})]}),Bd=()=>r("svg",{...M,"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"})]}),zd=()=>r("svg",{...M,"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"})]}),Fd=()=>r("svg",{...M,"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"})]}),Ud=()=>r("svg",{...M,"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"})]}),Ka={chat:Ld,message:Nd,bubbles:Mt,spark:Md,wand:Od,bot:Dd,help:sr,lifebuoy:Hd,headset:$d,search:Bd,sparkles:zd,concierge:Fd,wave:Ud};var I=v.cssPrefix,w={launcher:`${I}-launcher`,callout:`${I}-callout`,calloutDismiss:`${I}-callout-dismiss`,panel:`${I}-panel`,panelHeader:`${I}-panel-header`,resizeGrip:`${I}-resize-grip`,scrollToBottom:`${I}-scroll-to-bottom`,actionHistory:`${I}-action-history`,actionClose:`${I}-action-close`,composer:`${I}-composer`,composerInput:`${I}-composer-input`,composerSend:`${I}-composer-send`,composerStop:`${I}-composer-stop`,composerAttach:`${I}-composer-attach`,composerFileInput:`${I}-composer-file-input`,composerVoice:`${I}-composer-voice`,attachmentChip:`${I}-attachment-chip`,attachmentRemove:`${I}-attachment-remove`,suggestion:`${I}-suggestion`,messageBubble:`${I}-message`,messageRetry:`${I}-message-retry`,historyPane:`${I}-history-pane`,historyBack:`${I}-history-back`,historyItem:`${I}-history-item`,sidebar:`${I}-sidebar`,sidebarToggle:`${I}-sidebar-toggle`,sidebarNewConversation:`${I}-sidebar-new-conversation`,sidebarItem:`${I}-sidebar-item`,messengerHome:`${I}-messenger-home`,modulesEmpty:`${I}-modules-empty`,tab:`${I}-tab`,tabBadge:`${I}-tab-badge`,homeView:`${I}-home-view`,homeGreeting:`${I}-home-greeting`,homeBrand:`${I}-home-brand`,backHeader:`${I}-back-header`,contentView:`${I}-content-view`,contentScroll:`${I}-content-scroll`,homeSearch:`${I}-home-search`,helpSearch:`${I}-help-search`,homeRecent:`${I}-home-recent`,homeContentRow:`${I}-home-content-row`,helpArticle:`${I}-help-article`,newsItem:`${I}-news-item`,formGate:`${I}-form-gate`,formDone:`${I}-form-done`,formSubmit:`${I}-form-submit`,formSkip:`${I}-form-skip`,formField:`${I}-form-field`,toolAskInput:`${I}-tool-ask-input`,toolInputSubmit:`${I}-tool-input-submit`,toolInputSkip:`${I}-tool-input-skip`,toolApproval:`${I}-tool-approval`,toolApprove:`${I}-tool-approve`,toolReject:`${I}-tool-reject`,toolDecision:`${I}-tool-decision`};function _e(e,t){return`${e}-${t}`}var Fn=v.cssPrefix;function ja({onToggle:e,launcher:t,strings:n,leaving:o,edgeTab:i}){let a=t.variant!=="circle"&&!!t.label;return r("button",{type:"button",class:`${Fn}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?"true":void 0,"data-leaving":o?"true":void 0,"data-testid":w.launcher,onClick:e,"aria-label":n.launcherOpen,children:[Wd(t.icon),a?r("span",{class:`${Fn}-fab-label`,children:t.label}):null]})}function Wd(e){let t=Ka[e];return t?r(t,{}):r(Gd,{source:e})}function Gd({source:e}){return r("span",{ref:t=>{t&&qd(t,e)},"aria-hidden":"true"})}function qd(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 Xa({callout:e,launcherPosition:t,closeLabel:n,onDismiss:o}){let[i,a]=T(!1);return E(()=>{let s=setTimeout(()=>a(!0),e.delayMs);return()=>clearTimeout(s)},[e.delayMs]),E(()=>{if(!i||e.autoDismissMs<=0)return;let s=setTimeout(o,e.autoDismissMs);return()=>clearTimeout(s)},[i,e.autoDismissMs,o]),i?r("div",{class:`${Fn}-callout`,role:"status","data-shape":e.shape,"data-position":Vd(e.position,t),"data-animated":e.animated?"true":void 0,"data-testid":w.callout,children:[r("span",{children:e.text}),r("button",{type:"button",class:`${Fn}-callout-close`,onClick:o,"aria-label":n,title:n,"data-testid":w.calloutDismiss,children:r(Me,{})})]}):null}function Vd(e,t){let n=t.endsWith("-right"),o=t.startsWith("bottom-");return e==="vertical"?o?"top":"bottom":n?"left":"right"}function Un({panelEl:e,resize:t,position:n,initialSize:o,onSizeChange:i,strings:a}){let s=v.cssPrefix,l=$(null);if(E(()=>{if(!e)return;let m=e.style;t.minWidth&&m.setProperty(`--${s}-resize-min-w`,t.minWidth),t.maxWidth&&m.setProperty(`--${s}-resize-max-w`,t.maxWidth),t.minHeight&&m.setProperty(`--${s}-resize-min-h`,t.minHeight),t.maxHeight&&m.setProperty(`--${s}-resize-max-h`,t.maxHeight),o&&(m.setProperty(`--${s}-widget-w`,`${o.width}px`),m.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"}`,_=m=>{if(!e)return;let h=m.currentTarget,y=e.getBoundingClientRect();l.current={pointerId:m.pointerId,startX:m.clientX,startY:m.clientY,startW:y.width,startH:y.height,dirX:d?-1:1,dirY:c?1:-1},h.setPointerCapture(m.pointerId),m.preventDefault()},g=m=>{let h=l.current;if(!h||m.pointerId!==h.pointerId||!e)return;let y=(m.clientX-h.startX)*h.dirX,S=(m.clientY-h.startY)*h.dirY;e.style.setProperty(`--${s}-widget-w`,`${h.startW+y}px`),e.style.setProperty(`--${s}-widget-h`,`${h.startH+S}px`)},p=m=>{let h=l.current;if(!h||m.pointerId!==h.pointerId||!e)return;m.currentTarget.releasePointerCapture(m.pointerId);let y=e.getBoundingClientRect();i({width:Math.round(y.width),height:Math.round(y.height)}),l.current=null};return r("div",{class:u,role:"separator","aria-orientation":"vertical","aria-label":a.resizeHandle,title:a.resizeHandle,onPointerDown:_,onPointerMove:g,onPointerUp:p,onPointerCancel:p,"data-testid":w.resizeGrip,children:r(Ra,{})})}var Ye=v.cssPrefix,Kd=`.${Ye}-header, .${Ye}-back-header, .${Ye}-home-hero`,jd='button, a, input, textarea, select, [role="tab"], [contenteditable]',Ja=56;function Wn(e,t){E(()=>{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(Kd)||d.closest(jd))return;let u=e.getBoundingClientRect();i={id:c.pointerId,x:c.clientX,y:c.clientY,dx:n(e.style.getPropertyValue(`--${Ye}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${Ye}-modal-dy`)),maxX:(window.innerWidth+u.width)/2-Ja,maxY:(window.innerHeight+u.height)/2-Ja},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(`--${Ye}-modal-dx`,`${d}px`),e.style.setProperty(`--${Ye}-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 Nt(e,t,n,o){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"popOut":return t!=="standalone"&&!!o?.popOutUrl;case"close":return t==="standalone"||t==="page"?!1:t==="inline"?n==="fullscreen":!0}}function Gn(e,t,n){return Nt("close",e,t)?n.includes("close"):!1}function Ya(e,t){return e==="inline"&&t==="fullscreen"?"exit-fullscreen":"close"}var Xd='a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])';function qn(e){let t=n=>{if(n.key!=="Tab")return;let o=[...e.querySelectorAll(Xd)].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 Vn(e){return e.trim().split(/\s+/).slice(0,2).map(t=>t.charAt(0).toUpperCase()).join("")}var cr=v.cssPrefix;function Qa({agent:e}){let t=e.status??"online";return r("div",{class:`${cr}-agent`,children:[r("div",{class:`${cr}-agent-avatar`,"data-status":t,children:e.avatar?r("img",{src:e.avatar,alt:""}):r("span",{children:Vn(e.name)})}),r("div",{class:`${cr}-agent-meta`,children:[r("strong",{children:e.name}),e.title?r("span",{children:e.title}):null]})]})}var Za=H.scope("attachments");function Kn(e,t,n){let o=Yd(e),i=[],a=[],s=e_(n.accept),l=t.reduce((d,u)=>d+u.size,0),c=t.length;for(let d of o){let u=Jd(d,c,l,n,s);if(u){a.push({file:d,reason:u});continue}i.push(Zd(d)),l+=d.size,c+=1}return(i.length||a.length)&&Za.debug("ingest",{accepted:i.length,rejected:a.map(d=>({name:d.file.name,reason:d.reason}))}),{accepted:i,rejected:a}}function dr(e){try{URL.revokeObjectURL(e.previewUrl)}catch(t){Za.debug("revokeObjectURL failed",{error:t})}}function Jd(e,t,n,o,i){return t>=o.maxCount?"count":n+e.size>o.maxBytes?"bytes":t_(e,i)?null:"mime"}function Yd(e){return e?Array.isArray(e)?e.filter(t=>t instanceof File):[...e].map(t=>t instanceof File?t:Qd(t)).filter(t=>t!==null):[]}function Qd(e){let t=e;return!t?.getAsFile||t.kind!=="file"?null:t.getAsFile()}function Zd(e){return{file:e,id:Ie(),mediaType:e.type||"application/octet-stream",name:e.name||"pasted-file",previewUrl:URL.createObjectURL(e),size:e.size}}function e_(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 t_(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 Ot=v.cssPrefix;function es({attachment:e,onRemove:t}){let n=e.mediaType.startsWith("image/");return r("span",{class:`${Ot}-attachment-chip`,title:e.name,"data-testid":_e(w.attachmentChip,e.id),children:[n?r("img",{class:`${Ot}-attachment-thumb`,src:e.previewUrl,alt:""}):r("span",{class:`${Ot}-attachment-thumb`,"aria-hidden":"true",children:r(za,{})}),r("span",{class:`${Ot}-attachment-name`,children:e.name}),r("button",{type:"button",class:`${Ot}-attachment-remove`,onClick:t,"aria-label":`Remove ${e.name}`,"data-testid":_e(w.attachmentRemove,e.id),children:r(Me,{})})]})}var _r={isSupported:!1,start:()=>{},stop:()=>{}};function ur(e,t,n){return e==="disabled"?_r:e==="server"?i_(n):n_(t)}function n_(e){let t=o_();if(!t)return _r;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 o_(){let e=globalThis;return e.SpeechRecognition??e.webkitSpeechRecognition}var r_=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/mp4"];function i_(e){if(typeof MediaRecorder>"u"||!navigator?.mediaDevices?.getUserMedia)return _r;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=a_();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 a_(){for(let e of r_)if(MediaRecorder.isTypeSupported(e))return e}var ye=v.cssPrefix,Qe=H.scope("composer");function mt(e){return e.reduce((t,n)=>t+n.size,0)}var s_={arrowUp:ya,paperPlane:Pa,send:Sa,chevron:Bn};function ts({options:e,transport:t,feedback:n,bus:o,isStreaming:i,onSend:a,onStop:s,attachApiRef:l}){let c=e.strings,[d,u]=T(""),[_,g]=T([]),[p,m]=T(!1),h=$(null),y=$(null),S=e.features.files,C=e.features.voice,[F,R]=T(()=>ur(C,e.locale,(P,U)=>t.transcribe(P,U)));E(()=>{p||C==="disabled"||R(ur(C,e.locale,(P,U)=>t.transcribe(P,U)))},[e.locale,C,t,p]),E(()=>{let P=h.current;if(!P)return;let U=P.getRootNode(),Q="activeElement"in U?U.activeElement:null;Q&&P.closest(`.${ye}-panel`)?.contains(Q)||P.focus({preventScroll:!0})},[]),E(()=>{let P=h.current;if(P){if(d.length===0){P.style.height="";return}P.style.height="auto",P.style.height=`${Math.min(P.scrollHeight,160)}px`}},[d]);let B=$(_);B.current=_,E(()=>()=>B.current.forEach(dr),[]),E(()=>{if(l)return l.current={attachFromDrop:P=>{let U=Kn(P,B.current,e.attachments);U.accepted.length!==0&&(Qe.info("attach (drop)",{count:U.accepted.length,totalBytes:mt(U.accepted)}),o.emit("attach",{count:U.accepted.length,totalBytes:mt(U.accepted)}),g(Q=>[...Q,...U.accepted]))}},()=>{l.current&&(l.current=null)}},[l,e.attachments]),E(()=>{let P=h.current;if(!P)return;let U=P.closest(`.${ye}-panel`);if(!U)return;let Q=fe=>{let me=fe.clipboardData;if(!me)return;if(S){let Pe=Kn(me.items,B.current,e.attachments);if(Pe.accepted.length>0){fe.preventDefault(),Qe.info("attach (paste)",{count:Pe.accepted.length,totalBytes:mt(Pe.accepted)}),o.emit("attach",{count:Pe.accepted.length,totalBytes:mt(Pe.accepted)}),g(Ft=>[...Ft,...Pe.accepted]);return}}if(fe.target===P)return;let Te=me.getData("text/plain");Te&&(fe.preventDefault(),u(Pe=>Pe+Te),P.focus())};return U.addEventListener("paste",Q),()=>U.removeEventListener("paste",Q)},[S,e.attachments,ye]);let q=()=>{let P=d.trim();!P&&_.length===0||i||(a(P,_),u(""),g([]))},D=P=>{P.key!=="Enter"||P.shiftKey||P.isComposing||(P.preventDefault(),i?s():q())},se=P=>{let U=P.target,Q=Kn(U.files,_,e.attachments);Q.accepted.length>0&&(Qe.info("attach (file picker)",{count:Q.accepted.length,totalBytes:mt(Q.accepted)}),o.emit("attach",{count:Q.accepted.length,totalBytes:mt(Q.accepted)}),g(fe=>[...fe,...Q.accepted])),U.value=""},x=P=>{Qe.info("removeAttachment",{id:P}),o.emit("removeAttachment",{id:P}),g(U=>{let Q=U.find(fe=>fe.id===P);return Q&&dr(Q),U.filter(fe=>fe.id!==P)})},A=$(null),ce=()=>{if(F.isSupported){if(p){let P=A.current?Date.now()-A.current:0;Qe.info("voiceStop",{durationMs:P}),o.emit("voiceStop",{durationMs:P}),F.stop(),m(!1),n.play("voiceStop"),A.current=null;return}A.current=Date.now(),Qe.info("voiceStart"),o.emit("voiceStart",void 0),m(!0),n.play("voiceStart"),F.start((P,U)=>u(Q=>U?`${Q}${P} `:Q),()=>{if(m(!1),A.current){let P=Date.now()-A.current;Qe.debug("voiceStop (auto)",{durationMs:P}),o.emit("voiceStop",{durationMs:P}),A.current=null}})}},ue=s_[e.composer.sendButton.icon];return r("div",{class:`${ye}-composer`,"data-testid":w.composer,children:[_.length>0?r("div",{class:`${ye}-attachments`,children:_.map(P=>r(es,{attachment:P,onRemove:()=>x(P.id)},P.id))}):null,r("div",{class:`${ye}-composer-row`,children:[r("div",{class:`${ye}-composer-actions`,children:[S?r("button",{type:"button",class:`${ye}-icon-btn`,onClick:()=>y.current?.click(),"aria-label":c.attach,"data-testid":w.composerAttach,children:r(ka,{})}):null,F.isSupported?r("button",{type:"button",class:`${ye}-icon-btn`,onClick:ce,"aria-label":p?c.micStop:c.micStart,"aria-pressed":p,"data-recording":p?"true":void 0,"data-testid":w.composerVoice,children:r(Ca,{})}):null]}),r("textarea",{ref:h,class:`${ye}-textarea`,rows:1,value:d,placeholder:c.composerPlaceholder,onInput:P=>u(P.target.value),onKeyDown:D,"aria-label":c.composerPlaceholder,"data-testid":w.composerInput}),i?r("button",{type:"button",class:`${ye}-send`,onClick:s,"aria-label":c.stop,"data-testid":w.composerStop,children:r(wa,{})}):r("button",{type:"button",class:`${ye}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:q,disabled:!d.trim()&&_.length===0,"aria-label":c.send,"data-testid":w.composerSend,children:r(ue,{})})]}),r("input",{ref:y,type:"file",multiple:!0,accept:e.attachments.accept,onChange:se,class:`${ye}-sr-only`,"data-testid":w.composerFileInput})]})}var l_=v.cssPrefix;function ns({visible:e,strings:t}){return e?r("div",{class:`${l_}-dropzone`,role:"status","aria-live":"polite",children:t.dropZone}):null}function jn({containerRef:e,onDrop:t}){let[n,o]=T(!1);return E(()=>{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 os({itemCount:e,initialFocusIndex:t}){let[n,o]=T(!1),i=$(null),a=$(null),[s,l]=T(-1),c=O(()=>{o(!1),l(-1),i.current?.focus()},[]),d=O(()=>o(g=>!g),[]);E(()=>{if(!n)return;let g=p=>{let m=a.current,h=i.current;if(!m||!h)return;let y=p.composedPath();y.includes(m)||y.includes(h)||(o(!1),l(-1))};return document.addEventListener("click",g,!0),()=>document.removeEventListener("click",g,!0)},[n]),E(()=>{if(!n||e===0)return;let g=t?.()??0,p=g<0||g>=e?0:g;l(p)},[n,e,t]),E(()=>{if(!n||s<0)return;a.current?.querySelectorAll("[role='menuitem']")?.[s]?.focus()},[n,s]);let u=O(g=>{(g.key==="ArrowDown"||g.key==="Enter"||g.key===" ")&&(g.preventDefault(),o(!0))},[]),_=O(g=>{if(e!==0)switch(g.key){case"Escape":g.preventDefault(),c();return;case"ArrowDown":g.preventDefault(),l(p=>(p+1)%e);return;case"ArrowUp":g.preventDefault(),l(p=>(p-1+e)%e);return;case"Home":g.preventDefault(),l(0);return;case"End":g.preventDefault(),l(e-1)}},[e,c]);return{open:n,focusIndex:s,triggerRef:i,menuRef:a,toggle:d,close:c,onTriggerKey:u,onMenuKey:_}}function rs({items:e,triggerLabel:t}){let n=v.cssPrefix,o=os({itemCount:e.length}),i=a=>{a.disabled||(a.onSelect(),a.keepOpen||o.close())};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(La,{})}),o.open?r("div",{ref:o.menuRef,class:`${n}-menu`,role:"menu","aria-label":t,onKeyDown:o.onMenuKey,tabIndex:-1,children:e.map(a=>r("button",{type:"button",role:"menuitem",class:`${n}-menu-item`,"aria-pressed":a.type==="switch"?a.on:void 0,disabled:a.disabled,lang:a.lang,onClick:()=>i(a),children:[a.icon?r("span",{class:`${n}-menu-icon`,children:a.icon}):null,r("span",{class:`${n}-menu-label`,children:a.label}),a.type==="switch"&&a.on?r("span",{class:`${n}-menu-check`,"aria-hidden":"true",children:r(zn,{})}):null]},a.id))}):null]})}var pr=v.cssPrefix,c_={auto:"dark",dark:"light",light:"auto"},d_={normal:"large",large:"small",small:"normal"};function __(e){return e==="light"?r(Ga,{}):e==="dark"?r(qa,{}):r(Va,{})}function Ne({panelProps:e,variant:t}){let{options:n,panelSize:o,feedback:i,onClose:a,onClear:s,onExpand:l,onFullscreen:c,onPopOut:d,onSoundToggle:u}=e,{onToggleHistory:_,onLocaleChange:g,onThemeChange:p,onTextSizeChange:m}=e,h=n.strings,y=n.mode,S=t==="chat",C=re(()=>i.mutedSig.value).value,F=new Set(n.actions),R=P=>F.has(P),B=P=>Nt(P,y,o,{popOutUrl:n.popOutUrl}),q=n.themeMode,D={auto:h.themeAuto,light:h.themeLight,dark:h.themeDark},se=n.textSize,x={small:h.textSizeSmall,normal:h.textSizeNormal,large:h.textSizeLarge},A=[];if(S&&R("clear")&&A.push({id:"clear",icon:r(Ha,{}),label:h.newConversation,onSelect:s}),R("expand")&&B("expand")){let P=o==="expanded";A.push({id:"expand",icon:P?r(Ea,{}):r(Ta,{}),label:P?h.collapse:h.expand,type:"switch",on:P,onSelect:l})}if(R("fullscreen")&&B("fullscreen")){let P=o==="fullscreen";A.push({id:"fullscreen",icon:P?r(Ia,{}):r(Aa,{}),label:P?h.exitFullscreen:h.fullscreen,type:"switch",on:P,onSelect:c})}if(R("popOut")&&B("popOut")&&A.push({id:"popOut",icon:r($a,{}),label:h.popOut,onSelect:d}),S&&R("sound")&&A.push({id:"sound",icon:C?r(Na,{}):r(Ma,{}),label:C?h.soundOff:h.soundOn,type:"switch",on:!C,onSelect:u}),R("theme")&&A.push({id:"theme",icon:__(q),label:`${h.theme}: ${D[q]}`,onSelect:()=>p(c_[q]),keepOpen:!0}),R("textSize")&&A.push({id:"textSize",icon:r(Oa,{}),label:`${h.textSize}: ${x[se]}`,onSelect:()=>m(d_[se]),keepOpen:!0}),R("language")&&n.availableLocales.length>1)for(let P of n.availableLocales)A.push({id:`language:${P}`,label:`${h.language} \u2014 ${P}`,lang:P,type:"switch",on:P===n.locale,onSelect:()=>g(P)});let ce=!!a&&Gn(y,o,n.actions),ue=S&&R("history");return r("div",{class:`${pr}-header-actions`,children:[ue?r("button",{type:"button",class:`${pr}-icon-btn`,onClick:_,"aria-label":h.history,title:h.history,"data-testid":w.actionHistory,children:r(Da,{})}):null,A.length>0?r(rs,{items:A,triggerLabel:h.moreActions}):null,ce?r("button",{type:"button",class:`${pr}-icon-btn`,onClick:a,"aria-label":h.close,title:h.close,"data-testid":w.actionClose,children:r(Me,{})}):null]})}var u_=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,p_=/^https?:\/\/[^\s.]+\.[^\s]+$/i,f_=/^[+]?[\d\s().-]{6,}$/;function gt(e,t){return e.replace(/\{(\w+)\}/g,(n,o)=>String(t[o]??`{${o}}`))}function m_(e){return Array.isArray(e)?e.length:e&&e.trim()?1:0}function g_(e,t,n){let o=e.required??!0,i=e.validation;if(e.type==="multiselect"){let s=m_(t);return o&&s===0?n.formRequired:s===0?void 0:i?.minSelections!=null&&s<i.minSelections?gt(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&s>i.maxSelections?gt(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(!u_.test(a))return n.formInvalidEmail;break;case"url":if(!p_.test(a))return n.formInvalidUrl;break;case"tel":if(!f_.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 gt(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&s>i.max)return gt(n.formNumberTooLarge,{max:i.max});break}default:break}if(i?.minLength!=null&&a.length<i.minLength)return gt(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return gt(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function is(e,t,n){let o={};for(let i of e){let a=g_(i,t[i.name],n);a&&(o[i.name]=a)}return o}function as(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 ie=v.cssPrefix,Xn="__other__";function Jn({fields:e,strings:t,submitLabel:n,onSubmit:o,skipLabel:i,onSkip:a,disabled:s,rootTestId:l,submitTestId:c,skipTestId:d}){let[u,_]=T(()=>x_(e)),[g,p]=T({}),[m,h]=T({}),y=R=>{m[R]&&h(B=>({...B,[R]:""}))},S=(R,B)=>{_(q=>({...q,[R]:B})),y(R)},C=(R,B)=>{p(q=>({...q,[R]:B})),y(R)},F=R=>{if(R.preventDefault(),s)return;let B=P_(e,u,g),q=is(e,B,t);if(Object.keys(q).length>0){h(q);return}o(as(B))};return r("form",{class:`${ie}-form`,onSubmit:F,"data-testid":l,noValidate:!0,children:[e.map(R=>r(h_,{field:R,value:u[R.name],otherText:g[R.name]??"",error:m[R.name],disabled:s,strings:t,onChange:B=>S(R.name,B),onOtherChange:B=>C(R.name,B)},R.name)),r("div",{class:`${ie}-form-actions`,children:[i&&a?r("button",{type:"button",class:`${ie}-form-skip`,onClick:a,disabled:s,"data-testid":d,children:i}):null,r("button",{type:"submit",class:`${ie}-form-submit`,disabled:s,"data-testid":c,children:n})]})]})}function h_({field:e,value:t,otherText:n,error:o,disabled:i,strings:a,onChange:s,onOtherChange:l}){let c=_e(w.formField,e.name),d=v_({field:e,value:t,otherText:n,disabled:i,strings:a,onChange:s,onOtherChange:l,fieldTid:c});return r("label",{class:`${ie}-field`,"data-field":e.name,"data-invalid":o?"true":void 0,children:[r("span",{class:`${ie}-field-label`,children:[e.label,e.required??!0?r("span",{class:`${ie}-field-req`,"aria-hidden":"true",children:" *"}):null]}),d,e.validationHint&&!o?r("span",{class:`${ie}-field-hint`,children:e.validationHint}):null,o?r("span",{class:`${ie}-field-error`,role:"alert",children:o}):null]})}function v_(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:`${ie}-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:`${ie}-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===Xn;return r("div",{class:`${ie}-field-choices`,role:"radiogroup","data-testid":c,children:[(t.options??[]).map(_=>r("label",{class:`${ie}-choice`,children:[r("input",{type:"radio",name:`${ie}-${t.name}`,checked:d===_.value,disabled:i,onChange:()=>s(_.value)}),r("span",{children:_.label??_.value})]},_.value)),t.allowOther?r("label",{class:`${ie}-choice`,children:[r("input",{type:"radio",name:`${ie}-${t.name}`,checked:d===Xn,disabled:i,onChange:()=>s(Xn)}),r("span",{children:a.formOther})]}):null,u?r("input",{class:`${ie}-field-input`,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:_=>l(_.target.value)}):null]})}case"checkbox":return r("label",{class:`${ie}-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:[],_=(g,p)=>s(p?[...u,g]:u.filter(m=>m!==g));return r("div",{class:`${ie}-field-choices`,"data-testid":c,children:[(t.options??[]).map(g=>r("label",{class:`${ie}-choice`,children:[r("input",{type:"checkbox",checked:u.includes(g.value),disabled:i,onChange:p=>_(g.value,p.target.checked)}),r("span",{children:g.label??g.value})]},g.value)),t.allowOther||(t.options??[]).length===0?r("textarea",{class:`${ie}-field-input`,rows:2,value:o,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:g=>l(g.target.value)}):null]})}default:return r("input",{class:`${ie}-field-input`,type:b_(t.type),value:d,placeholder:t.placeholder,disabled:i,onInput:u=>s(u.target.value),"data-testid":c})}}function b_(e){switch(e){case"number":case"email":case"tel":case"url":case"date":case"time":return e;default:return"text"}}function x_(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 P_(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]===Xn)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 Dt=v.cssPrefix;function ss({form:e,strings:t,onSubmit:n,onSkip:o}){return r("div",{class:`${Dt}-form-gate`,"data-testid":w.formGate,children:[e.title?r("h3",{class:`${Dt}-form-gate-title`,children:e.title}):null,e.description?r("p",{class:`${Dt}-form-gate-desc`,children:e.description}):null,r(Jn,{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:w.formSubmit,skipTestId:w.formSkip})]})}function fr({marker:e,strings:t}){let n=e.outcome==="skipped"?t.formSkipped:t.formSubmitted;return r("div",{class:`${Dt}-form-done`,"data-testid":w.formDone,role:"status",children:[r(zn,{}),r("span",{children:n}),e.title?r("span",{class:`${Dt}-form-done-title`,children:["\xB7 ",e.title]}):null]})}var hr=1,cs=2,ds=4,_s=8,us=16;function y_(e){switch(e){case hr:return"href";case cs:return"src";case ds:return"class";case _s:return"checked";case us:return"start"}}var S_=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}},w_=S_;var ls=24;function br(e){let t=new Uint32Array(ls);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(ls),indent:"",indent_len:0,table_state:0}}function ps(e){e.pending.length>0&&pe(e,`
12
12
  `)}function K(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 ae(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 X(e,t){(e.tokens[e.len]===24||e.tokens[e.len]===23)&&t!==25&&ae(e),e.len+=1,e.tokens[e.len]=t,e.token=t,e.renderer.add_token(e.renderer.data,t)}function k_(e,t,n){for(;n<=e.len;){if(e.tokens[n]===t)return n;n+=1}return-1}function Ze(e,t){for(e.fence_start=0;e.len>t;)ae(e)}function Yn(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;)ae(e);return t}function mr(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?(Ze(e,e.blockquote_idx),X(e,t),!0):(Ze(e,n),!1):(Ze(e,o),X(e,t),!0)}function gr(e,t){X(e,25),e.spaces[e.len]=e.indent_len+t,Fe(e),e.token=103}function Fe(e){e.indent="",e.indent_len=0,e.pending=""}function vr(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 C_(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 T_(e){return vr(e)||C_(e)}function pe(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=Yn(e,e.indent_len);e.indent_len=0,e.token=e.tokens[e.len],i>0&&pe(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){ae(e),Fe(e),e.pending=n;continue}Ze(e,e.blockquote_idx),Fe(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" ":Yn(e,e.indent_len),X(e,w_(e.pending.length)),Fe(e);continue}break;case">":{let a=k_(e,20,e.blockquote_idx+1);a===-1?(Ze(e,e.blockquote_idx),e.blockquote_idx+=1,e.fence_start=0,X(e,20)):e.blockquote_idx=a,Fe(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;Yn(e,e.indent_len),e.renderer.add_token(e.renderer.data,22),e.renderer.end_token(e.renderer.data),Fe(e),e.hr_chars=0;continue}e.hr_chars=0}if(e.pending[0]!=="_"&&e.pending[1]===" "){mr(e,23),gr(e,2),pe(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):(X(e,2),Fe(e),e.fence_start=0,pe(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
  `){K(e),X(e,i),e.pending=n;continue}}else{if(s===n){K(e),X(e,a),X(e,i),e.pending="";continue}if(n!==" "&&n!==`
38
38
  `){K(e),X(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
- `){K(e),X(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(T_(n.charCodeAt(0)))break;K(e),X(e,31),e.pending=n;continue}break;case"[":if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n!=="]"){K(e),X(e,17),e.pending=n;continue}break;case"!":if(e.token!==19&&n==="["){K(e),X(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}K(e)}function xr(e){return{add_token:E_,end_token:A_,add_text:I_,set_attr:R_,data:{nodes:[e,,,,,],index:0}}}function E_(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 A_(e){e.index-=1}function I_(e,t){e.nodes[e.index].appendChild(document.createTextNode(t))}function R_(e,t,n){e.nodes[e.index].setAttribute(y_(t),n)}function Qn({textSig:e,doneSig:t}){let n=$(null);return E(()=>{let o=n.current;if(!o)return;o.classList.add(`${v.cssPrefix}-md`);let i=xr(o),a=br(i),s=0,l=ze(()=>{let u=e.value,_=t.value;u.length<s&&(o.replaceChildren(),i=xr(o),a=br(i),s=0);let g=u.slice(s);g&&pe(a,g),s=u.length,_&&ps(a)}),c=new MutationObserver(u=>{for(let _ of u)for(let g of _.addedNodes){if(!(g instanceof HTMLElement))continue;let p=g.matches?.("a")?[g]:[...g.querySelectorAll?.("a")??[]];for(let m of p)fs(m)}});c.observe(o,{childList:!0,subtree:!0});for(let u of o.querySelectorAll("a"))fs(u);let d=u=>{let _=u.target?.closest?.("a");if(!_||!(_ instanceof HTMLAnchorElement))return;let g=_.getAttribute("href")??"";!g||g.startsWith("#")||(u.preventDefault(),window.open(g,"_blank","noopener,noreferrer"))};return o.addEventListener("click",d),()=>{l(),c.disconnect(),o.removeEventListener("click",d)}},[e,t]),r("div",{ref:n})}function ms({text:e}){let t=ve(()=>L(e),[e]),n=ve(()=>L(!0),[]);return r(Qn,{textSig:t,doneSig:n})}function fs(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 be=v.cssPrefix;function gs({part:e,strings:t,active:n,onDecision:o}){let i=re(()=>e.approvalSig.value),a=re(()=>e.inputSig.value),s=je("");if(i.value?.approved!==void 0){let d=i.value;return r("div",{class:`${be}-tool-approval ${be}-tool-decided`,"data-testid":w.toolDecision,children:[r("span",{class:`${be}-tool-decided-label`,"data-approved":d?.approved?"true":"false",children:d?.approved?t.approved:t.rejected}),r("strong",{class:`${be}-tool-title`,children:e.toolName}),d?.reason?r("span",{class:`${be}-tool-decided-value`,children:d.reason}):null]})}let c=M_(a.value);return r("div",{class:`${be}-tool-approval`,"data-testid":w.toolApproval,children:[r("div",{class:`${be}-tool-head`,children:[r("span",{class:`${be}-tool-badge`,children:t.approvalRequired}),r("strong",{class:`${be}-tool-title`,children:e.toolName})]}),c?r("pre",{class:`${be}-tool-args`,children:c}):null,n?r(te,{children:[r("input",{class:`${be}-field-input`,value:s.value,placeholder:t.approvalReason,onInput:d=>{s.value=d.target.value}}),r("div",{class:`${be}-form-actions`,children:[r("button",{type:"button",class:`${be}-tool-reject`,onClick:()=>o(e.toolCallId,!1,s.value.trim()||void 0),"data-testid":w.toolReject,children:t.reject}),r("button",{type:"button",class:`${be}-tool-approve`,onClick:()=>o(e.toolCallId,!0,s.value.trim()||void 0),"data-testid":w.toolApprove,children:t.approve})]})]}):r("p",{class:`${be}-tool-stale-note`,children:t.stepNoLongerActive})]})}function M_(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 vs(e){let t=e&&typeof e=="object"?e:{},n=t.responseType;return{title:$t(t.title),question:$t(t.question)??"Please provide the missing information.",description:$t(t.description),placeholder:$t(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:hs(t.minSelections),maxSelections:hs(t.maxSelections),validationHint:$t(t.validationHint)}}function bs(e){if(e.responseType==="confirmation")return[];let t=(e.choices??[]).map(N_).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 N_(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 $t(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function hs(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}var he=v.cssPrefix;function Ps({part:e,strings:t,active:n,onSubmit:o}){let i=re(()=>e.stateSig.value),a=re(()=>vs(e.inputSig.value));if(i.value==="output"||i.value==="error")return r(O_,{part:e,strings:t});if(!n)return r("div",{class:`${he}-tool-ask-input ${he}-tool-stale`,"data-testid":w.toolAskInput,children:[r(xs,{strings:t,title:a.value.title??a.value.question}),r("p",{class:`${he}-tool-stale-note`,children:t.stepNoLongerActive})]});let l=a.value,c=l.responseType==="confirmation";return r("div",{class:`${he}-tool-ask-input`,"data-testid":w.toolAskInput,children:[r(xs,{strings:t,title:l.title}),l.description?r("p",{class:`${he}-tool-desc`,children:l.description}):null,c?r("p",{class:`${he}-tool-question`,children:l.question}):null,c?r("div",{class:`${he}-form-actions`,children:[r("button",{type:"button",class:`${he}-form-skip`,onClick:()=>o(e.toolCallId,{confirmed:!1}),"data-testid":w.toolInputSkip,children:t.reject}),r("button",{type:"button",class:`${he}-form-submit`,onClick:()=>o(e.toolCallId,{confirmed:!0}),"data-testid":w.toolInputSubmit,children:t.approve})]}):r(Jn,{fields:bs(l),strings:t,submitLabel:t.inputSubmit,onSubmit:d=>o(e.toolCallId,d),skipLabel:l.required===!1?t.inputSkip:void 0,onSkip:l.required===!1?()=>o(e.toolCallId,{}):void 0,submitTestId:w.toolInputSubmit,skipTestId:w.toolInputSkip})]})}function xs({strings:e,title:t}){return r("div",{class:`${he}-tool-head`,children:[r("span",{class:`${he}-tool-badge`,children:e.inputRequired}),t?r("strong",{class:`${he}-tool-title`,children:t}):null]})}function O_({part:e,strings:t}){let n=re(()=>e.outputSig.value),o=D_(n.value)||t.inputSubmitted;return r("div",{class:`${he}-tool-ask-input ${he}-tool-decided`,"data-testid":w.toolDecision,children:[r("span",{class:`${he}-tool-decided-label`,children:t.inputSubmitted}),r("span",{class:`${he}-tool-decided-value`,children:o})]})}function D_(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 ys({part:e,strings:t}){let n=v.cssPrefix;return r("span",{class:`${n}-tool-chip`,role:"status",children:[r("span",{children:[t.usedTool,":"]}),r("strong",{children:e.toolName})]})}var Se=v.cssPrefix;function Ss({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(y=>y.kind==="text"&&y.textSig.value.length>0)),u=re(()=>o&&e.partsSig.value.some(y=>y.kind==="reasoning")),_=e.role==="assistant"&&e.status==="streaming",g=n==="buffered"&&_,p=_&&!d.value,m=_&&!g&&!(u.value&&p),h=$_(e.createdAt);return r("div",{class:`${Se}-bubble-row`,"data-role":e.role,"data-testid":_e(w.messageBubble,e.id),children:r("div",{class:`${Se}-bubble-col`,children:[r("div",{class:`${Se}-bubble`,children:[g?r(W_,{label:t.loading}):c.map(y=>r(H_,{part:y,active:p,strings:t,showReasoning:o,showToolCalls:i,interactive:a,tool:s},F_(y))),m&&r(U_,{}),e.status==="error"&&e.errorText?r("div",{class:`${Se}-error`,role:"alert",children:r("span",{children:e.errorText})}):null]}),h?r("time",{class:`${Se}-bubble-time`,dateTime:h.iso,title:h.full,children:h.short}):null]})})}function $_(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 H_({part:e,active:t,strings:n,showReasoning:o,showToolCalls:i,interactive:a,tool:s}){switch(e.kind){case"text":return r(Qn,{textSig:e.textSig,doneSig:e.doneSig});case"reasoning":return o?r(z_,{part:e,active:t,strings:n}):null;case"tool":return r(B_,{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 B_({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(s.value||a.value==="awaiting-approval")return r(gs,{part:e,strings:t,active:o,onDecision:i.onDecision});if(Ln(e.toolName)||a.value==="awaiting-input")return r(Ps,{part:e,strings:t,active:o,onSubmit:i.onResult})}return n?r(ys,{part:e,strings:t}):null}function z_({part:e,active:t,strings:n}){return r("details",{class:`${Se}-reasoning`,open:t,"data-active":t?"true":void 0,children:[r("summary",{class:`${Se}-reasoning-summary`,children:r("span",{class:`${Se}-reasoning-label`,children:t?n.thinking:n.thoughts})}),r("div",{class:`${Se}-reasoning-body`,children:r(Qn,{textSig:e.textSig,doneSig:e.doneSig})})]})}function F_(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 U_(){return r("span",{class:`${Se}-typing`,"aria-hidden":"true",children:[r("span",{}),r("span",{}),r("span",{})]})}function W_({label:e}){return r("span",{class:`${Se}-loading`,role:"status",children:[r("span",{class:`${Se}-loading-spinner`,"aria-hidden":"true"}),r("span",{class:`${Se}-loading-label`,children:e})]})}var ht=v.cssPrefix,Pr=120,G_=1200;function ws({messagesSig:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,loading:a,idle:s,tool:l,form:c,formMarkers:d}){let u=$(null),_=re(()=>e.value),[g,p]=T(!1),[m,h]=T(!1),y=$(!1),S=_.value[0]?.id;Ho(()=>{let x=u.current;if(!x||_.value.length===0)return;y.current=!0;let A=()=>{x.scrollTop=x.scrollHeight};A();let ce=new ResizeObserver(A);ce.observe(x);let ue=new MutationObserver(A);ue.observe(x,{childList:!0,subtree:!0,characterData:!0});let P=setTimeout(()=>{ce.disconnect(),ue.disconnect()},300);return()=>{ce.disconnect(),ue.disconnect(),clearTimeout(P)}},[S]),E(()=>{let x=u.current;if(!x||!y.current)return;x.scrollHeight-x.scrollTop-x.clientHeight<Pr&&(x.scrollTop=x.scrollHeight)},[_.value.length]),E(()=>{let x=u.current;if(!x)return;let A=_.value.at(-1);if(!A)return;let ce=()=>{x.scrollHeight-x.scrollTop-x.clientHeight<Pr*2&&(x.scrollTop=x.scrollHeight)};if(A.status!=="streaming"){let P=requestAnimationFrame(ce);return()=>cancelAnimationFrame(P)}ce();let ue=new MutationObserver(ce);return ue.observe(x,{childList:!0,subtree:!0,characterData:!0}),()=>ue.disconnect()},[_.value]);let C=c?.form.id;Ho(()=>{let x=u.current;!x||!C||(x.scrollTop=x.scrollHeight)},[C]),E(()=>{let x=u.current;if(!x)return;let A=()=>p(x.scrollHeight-x.scrollTop-x.clientHeight>Pr*2),ce,ue=()=>{A(),h(!0),clearTimeout(ce),ce=setTimeout(()=>h(!1),G_)};return x.addEventListener("scroll",ue,{passive:!0}),A(),()=>{x.removeEventListener("scroll",ue),clearTimeout(ce)}},[]);let F=()=>{let x=u.current;x&&(x.scrollTop=x.scrollHeight)},R=[],B="",q=_.value.at(-1)?.id,D=[...d??[]].toSorted((x,A)=>(x.createdAt??1/0)-(A.createdAt??1/0)),se=x=>{let A=D[0];for(;A&&A.createdAt!==void 0&&(x===void 0||A.createdAt<=x);)D.shift(),R.push(r(fr,{marker:A,strings:t},A.key)),A=D[0]};for(let x of _.value){se(x.createdAt);let A=q_(x.createdAt);A&&A!==B&&(R.push(r("div",{class:`${ht}-date-divider`,children:r("span",{class:`${ht}-date-pill`,title:V_(x.createdAt),children:K_(x.createdAt,t)})},`day:${A}`)),B=A),R.push(r(Ss,{message:x,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:!!s&&x.id===q,tool:l},x.id))}for(let x of D)R.push(r(fr,{marker:x,strings:t},x.key));return r("div",{class:`${ht}-list-wrap`,children:[r("div",{ref:u,class:`${ht}-list`,role:"log","aria-live":"polite","aria-relevant":"additions text","data-scrolling":m?"true":void 0,children:[a&&_.value.length===0?r("div",{class:`${ht}-list-loading`,role:"status",children:t.conversationLoading}):null,R,c?r(ss,{form:c.form,strings:t,onSubmit:c.onSubmit,onSkip:c.onSkip}):null]}),g?r("button",{type:"button",class:`${ht}-jump`,onClick:F,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":w.scrollToBottom,children:r(Ba,{})}):null]})}function q_(e){if(typeof e!="number"||!Number.isFinite(e))return"";let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function V_(e){if(typeof e!="number"||!Number.isFinite(e))return"";try{return new Date(e).toLocaleDateString(void 0,{dateStyle:"full"})}catch{return""}}function K_(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 j_=["today","yesterday","lastWeek","older"];function X_(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return"older";let o=Math.floor((ks(e)-ks(n))/(1440*60*1e3));return o<=0?"today":o===1?"yesterday":o<7?"lastWeek":"older"}function Cs(e,t){let n=new Map;for(let o of t){let i=X_(e,o.lastMessageAt),a=n.get(i);a?a.push(o):n.set(i,[o])}return j_.filter(o=>n.has(o)).map(o=>({bucket:o,conversations:n.get(o)}))}function ks(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}var J_=H.scope("history"),Y_={today:"dateToday",yesterday:"dateYesterday",lastWeek:"dateLastWeek",older:"dateOlder"};function Zn({transport:e,strings:t,visitorId:n,onSelect:o,onNewConversation:i}){let a=v.cssPrefix,[s,l]=T("loading"),[c,d]=T([]);E(()=>{let g=!1;return e.listConversations({visitorId:n}).then(p=>{g||(d(p.conversations??[]),l("loaded"))}).catch(p=>{g||(J_.warn("listConversations failed",{err:p}),l("error"))}),()=>{g=!0}},[e,n]);let u=i?r("div",{class:`${a}-history-footer`,children:r("button",{type:"button",class:`${a}-history-new`,onClick:i,"data-testid":w.sidebarNewConversation,children:[r(xa,{}),t.newConversation]})}):null;if(s==="loading")return r(te,{children:[r("div",{class:`${a}-history-empty`,children:t.historyLoading}),u]});if(s==="error"||c.length===0)return r(te,{children:[r("div",{class:`${a}-history-empty`,children:t.historyEmpty}),u]});let _=Cs(Date.now(),c);return r(te,{children:[r("div",{class:`${a}-history`,role:"list",children:_.map(g=>r("div",{class:`${a}-history-group`,children:[r("div",{class:`${a}-history-heading`,children:t[Y_[g.bucket]]}),g.conversations.map(p=>r("button",{type:"button",role:"listitem",class:`${a}-history-item`,onClick:()=>o(p),"data-closed":p.canContinue?void 0:"true","data-testid":_e(w.historyItem,p.conversationId),children:[r("span",{class:`${a}-history-title`,children:p.title}),p.preview?r("span",{class:`${a}-history-preview`,children:p.preview}):null]},p.conversationId))]},g.bucket))}),u]})}var Ts=v.cssPrefix;function Es({suggestions:e,onPick:t}){return e.length===0?null:r("div",{class:`${Ts}-suggestions`,role:"group","aria-label":"Suggested replies",children:e.map((n,o)=>r("button",{type:"button",class:`${Ts}-suggestion`,onClick:()=>t(n),"data-testid":_e(w.suggestion,o),children:n.label},n.id))})}var xe=v.cssPrefix;function As(e){let{options:t,onClose:n}=e,o=t.strings,i=$(null);E(()=>{let c=i.current;if(!c)return;let d=qn(c),u=_=>{_.key==="Escape"&&n?.()};return c.addEventListener("keydown",u),()=>{d(),c.removeEventListener("keydown",u)}},[n]);let a=$(null),s=O(c=>{a.current?.attachFromDrop(c)},[]),{visible:l}=jn({containerRef:i,onDrop:s});return Wn(i.current,t.mode==="modal"),r("div",{ref:i,class:`${xe}-panel`,role:"dialog","aria-modal":"false","aria-label":o.panelTitle,style:{position:"relative"},"data-testid":w.panel,children:[r(yr,{...e,containerEl:i.current,dragOver:l,composerAttachApiRef:a}),r(Sr,{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:g,initialWidgetSize:p,visitorId:m,onClose:h,onBack:y,onClear:S,onToggleHistory:C,onSelectHistoryConversation:F,onNewConversation:R,onWidgetSizeChange:B,onSend:q,onStop:D,onSuggestion:se,activeForm:x,formMarkers:A,onFormSubmit:ce,onFormSkip:ue,tool:P,containerEl:U,dragOver:Q,composerAttachApiRef:fe}=e,me=t.strings,Te;return x?Te=null:l?Te=r(te,{children:[r(Es,{suggestions:g,onPick:se}),r(ts,{options:t,transport:n,feedback:o,bus:i,isStreaming:c,onSend:q,onStop:D,attachApiRef:fe})]}):Te=r(Z_,{label:me.conversationClosed,ctaLabel:me.startNewConversation,onNewConversation:S}),r(te,{children:[s==="history"?r(Q_,{strings:me,onBack:C,onClose:h,showClose:Gn(t.mode,a,t.actions)}):r("header",{class:`${xe}-header`,"data-testid":w.panelHeader,children:[y?r("button",{type:"button",class:`${xe}-icon-btn`,onClick:y,"aria-label":me.moduleBack,title:me.moduleBack,children:r(Lt,{})}):null,_?r(Qa,{agent:_}):r("h1",{children:me.panelTitle}),r(Ne,{panelProps:e,variant:"chat"})]}),s==="history"?r(Zn,{transport:n,strings:me,visitorId:m,onSelect:Pe=>F(Pe.conversationId),onNewConversation:R}):r(te,{children:[r(ns,{visible:Q,strings:me}),r(ws,{messagesSig:u,strings:me,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,loading:d,idle:!c,tool:P,form:x?{form:x,onSubmit:ce,onSkip:ue}:null,formMarkers:A}),Te,r(eu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?r(Un,{panelEl:U,resize:t.size.resize,position:t.position,initialSize:p,onSizeChange:B,strings:me}):null]})}function Q_({strings:e,onBack:t,onClose:n,showClose:o}){return r("header",{class:`${xe}-header`,children:[r("button",{type:"button",class:`${xe}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:r(Lt,{})}),r("h1",{children:e.historyTitle}),o?r("button",{type:"button",class:`${xe}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:r(Me,{})}):null]})}function Z_({label:e,ctaLabel:t,onNewConversation:n}){return r("div",{class:`${xe}-readonly-banner`,role:"note",children:[r("span",{class:`${xe}-readonly-label`,children:e}),r("button",{type:"button",class:`${xe}-readonly-cta`,onClick:n,children:t})]})}function eu({disclaimer:e}){return e?r("div",{class:`${xe}-composer-footer`,children:r("div",{class:`${xe}-disclaimer`,children:e})}):null}function Sr({poweredBy:e}){return e?r("div",{class:`${xe}-poweredby-bar`,children:r(tu,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function tu({logoUrl:e,text:t,href:n}){let o=r(te,{children:[e?r("img",{class:`${xe}-poweredby-logo`,src:e,alt:"",loading:"lazy"}):null,t?r("span",{children:t}):null]});return n?r("a",{class:`${xe}-poweredby`,href:n,target:"_blank",rel:"noopener noreferrer",children:o}):r("span",{class:`${xe}-poweredby`,children:o})}function Is(e){let t=$(e);t.current=e;let n=$(null);return n.current??(n.current=nu(t)),n.current}function nu(e){let t=L(null),n=new Set,o=l=>`${e.current.conversationId()??""}:${l}`,i=l=>l.frequency==="always"?!1:l.frequency==="conversation"?n.has(o(l.id)):l.id in e.current.persistence.loadFormsDone(),a=(l,c)=>{if(t.value)return;let d=e.current;if(l==="manual"){let u=d.forms.list.find(_=>_.id===c);u&&(t.value={form:u,trigger:"manual"});return}for(let u of d.forms.byTrigger[l]??[]){let _=u.triggers.find(g=>g.kind===l);if(!(!_||!ou(_,d)||i(u)||!ru(u,d))){t.value={form:u,trigger:l};return}}},s=(l,c)=>{let d=t.value;if(!d)return;t.value=null;let{form:u,trigger:_}=d;u.frequency==="conversation"?n.add(o(u.id)):u.frequency!=="always"&&e.current.persistence.saveFormDone(u.id),e.current.onComplete(u,_,l,c)};return{activeForm:t,fire:a,complete:l=>s(l,!1),skip:()=>s({},!0)}}function ou(e,t){return e.kind==="after-messages"?t.messageCount()>=Number(e.param??0):e.kind==="page-area"?t.pageArea()===e.param:!0}function ru(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 Rs(e){let t=v.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":w.sidebar,children:[r("div",{class:`${t}-sidebar-header`,children:[r(iu,{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":w.sidebarToggle,children:r(au,{collapsed:a})})]}),a?null:r(te,{children:[s.length>0?r("nav",{class:`${t}-sidebar-section`,"data-section":"navigation",children:r(su,{items:s})}):null,l.length>0?r("div",{class:`${t}-sidebar-section`,"data-section":"link-cards",children:r(lu,{items:l})}):null,e.showConversations?r("div",{class:`${t}-sidebar-conversations`,children:r(Zn,{transport:e.transport,strings:e.strings,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function iu({site:e}){let t=v.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??v.name})}function au({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 su({items:e}){let t=v.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 lu({items:e}){let t=v.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 Ls=v.cssPrefix;function Ms(e){return r("main",{class:`${Ls}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?"true":"false",children:[r(Rs,{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:`${Ls}-page-chat`,"aria-label":"Chat",children:e.children})]})}var Ns=e=>Object.fromEntries(e.map(t=>[t,[]]));function Os(e,t,n){let o=L({activeTab:e,stacks:Ns(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:Ns(t)}}}}var Ds=e=>e.stacks[e.activeTab]??[],$s=e=>Ds(e).at(-1),Hs=e=>Ds(e).length===0;var Bs={Icon:Mt};var Ve=v.cssPrefix;function eo({title:e,actions:t}){return r("header",{class:`${Ve}-back-header`,"data-variant":"title",children:[r("span",{class:`${Ve}-back-spacer`,"aria-hidden":"true"}),r("h1",{class:`${Ve}-back-title`,children:e}),t??r("span",{class:`${Ve}-back-spacer`,"aria-hidden":"true"})]})}function to({title:e,backLabel:t,onBack:n,actions:o,testid:i}){return r("header",{class:`${Ve}-back-header`,"data-testid":i,children:[r("button",{type:"button",class:`${Ve}-icon-btn`,onClick:n,"aria-label":t,title:t,children:r(Lt,{})}),r("h1",{class:`${Ve}-back-title`,children:e}),o??r("span",{class:`${Ve}-back-spacer`,"aria-hidden":"true"})]})}var vt=v.cssPrefix;function zs({placeholder:e,onActivate:t}){return r("button",{type:"button",class:`${vt}-home-search`,onClick:t,"data-testid":w.homeSearch,children:[r("span",{class:`${vt}-home-search-text`,children:e}),r("span",{class:`${vt}-home-search-icon`,"aria-hidden":"true",children:r(lr,{})})]})}function Fs({placeholder:e,value:t,onInput:n}){return r("div",{class:`${vt}-home-search`,"data-input":"true",children:[r("input",{type:"search",class:`${vt}-home-search-input`,placeholder:e,value:t,onInput:o=>n(o.currentTarget.value),"data-testid":w.helpSearch}),r("span",{class:`${vt}-home-search-icon`,"aria-hidden":"true",children:r(lr,{})})]})}var Ht=v.cssPrefix;function no({title:e,subtitle:t,onClick:n,testid:o}){return r("button",{type:"button",class:`${Ht}-list-row`,onClick:n,"data-testid":o,children:[r("span",{class:`${Ht}-list-row-body`,children:[r("span",{class:`${Ht}-list-row-title`,children:e}),t?r("span",{class:`${Ht}-list-row-sub`,children:t}):null]}),r("span",{class:`${Ht}-list-row-chevron`,"aria-hidden":"true",children:r(Bn,{})})]})}var Us=v.cssPrefix;function Ce({tone:e="info",message:t,onRetry:n,strings:o}){return r("div",{class:`${Us}-module-empty`,role:e==="error"?"alert":"status","aria-live":"polite",children:[r("span",{children:t}),n?r("button",{type:"button",class:`${Us}-module-retry`,onClick:n,children:o.errorRetry}):null]})}var et=v.cssPrefix,cu=H.scope("help"),du=(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 _u(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 Ws(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 uu(e,t){let n=t.toLowerCase().trim();return n?e.map(o=>({item:o,score:Math.max(Ws(n,o.title)*2,Ws(n,o.description??""))})).filter(o=>o.score>0).toSorted((o,i)=>i.score-o.score).map(o=>o.item):[]}function Gs({article:e,nav:t}){return r(no,{title:e.title,subtitle:e.description,onClick:()=>du(t,e),testid:_e(w.helpArticle,e.id)})}function pu({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([]),[g,p]=T(""),[m,h]=T(0);E(()=>{let C=!1;return l("loading"),e.listContent({tags:a,sortBy:"order",limit:100}).then(F=>{C||(_(F.items??[]),l("loaded"))}).catch(F=>{C||(cu.warn("listContent (help) failed",{err:F}),d(Je(F,t)),l("error"))}),()=>{C=!0}},[e,a,m]);let y=ve(()=>uu(u,g),[u,g]);function S(){return g.trim().length>0?y.length===0?r(Ce,{message:t.helpSearchEmpty,strings:t}):r("div",{class:`${et}-help-card`,children:y.map(C=>r(Gs,{article:C,nav:o},C.id))}):s==="loading"?r(Ce,{message:t.helpLoading,strings:t}):s==="error"?r(Ce,{tone:"error",message:c,onRetry:()=>h(C=>C+1),strings:t}):u.length===0?r(Ce,{message:t.helpEmpty,strings:t}):_u(u).map(([C,F])=>r("section",{class:`${et}-help-group`,children:[C?r("h2",{class:`${et}-help-section-title`,children:C}):null,r("div",{class:`${et}-help-card`,children:F.map(R=>r(Gs,{article:R,nav:o},R.id))})]},C))}return r("div",{class:`${et}-module`,children:[r(eo,{title:t.helpTitle,actions:r(Ne,{panelProps:i,variant:"plain"})}),r("div",{class:`${et}-module-pad`,children:r(Fs,{placeholder:t.helpSearchPlaceholder,value:g,onInput:p})}),r("div",{class:`${et}-help-list`,children:S()})]})}var qs={Icon:sr,Root:e=>r(pu,{...e})};var Vs=v.cssPrefix;function wr({onClick:e,children:t,testid:n}){return e?r("button",{type:"button",class:`${Vs}-home-card`,"data-interactive":"true",onClick:e,"data-testid":n,children:t}):r("div",{class:`${Vs}-home-card`,"data-testid":n,children:t})}var Z=v.cssPrefix,Ks=H.scope("home");function fu(e){let t=e.options.userContext?.name,n=e.config.greetingText;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 mu=(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 gu(e){let{transport:t,strings:n,config:o,nav:i,panelProps:a}=e,[s,l]=T(null),[c,d]=T([]),u=o.contentTags?.join(",");E(()=>{if(!o.showRecentConversations)return;let h=!1;return t.listConversations({limit:1}).then(y=>!h&&l(y.conversations?.[0]??null)).catch(y=>!h&&Ks.warn("listConversations (home) failed",{err:y})),()=>{h=!0}},[t,o.showRecentConversations]),E(()=>{if(!o.contentTags?.length)return;let h=!1;return t.listContent({tags:o.contentTags,limit:6}).then(y=>!h&&d(y.items??[])).catch(y=>!h&&Ks.warn("listContent (home) failed",{err:y})),()=>{h=!0}},[t,u]);let _=fu(e),g=o.userAvatars??[],p=o.status,m=o.contentBlockTitle?hn(n,o.contentBlockTitle):n.homeContentTitle;return r("div",{class:`${Z}-module ${Z}-home`,"data-testid":w.homeView,children:r("div",{class:`${Z}-home-scroll`,children:[r("div",{class:`${Z}-home-hero`,children:[r("div",{class:`${Z}-home-hero-top`,children:[o.brandName?r("span",{class:`${Z}-home-brand`,"data-testid":w.homeBrand,children:o.brandName}):r("span",{class:`${Z}-home-brand-spacer`,"aria-hidden":"true"}),r("div",{class:`${Z}-home-hero-actions`,children:[g.length>0?r("div",{class:`${Z}-home-avatars`,children:g.map(h=>r("span",{class:`${Z}-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:Vn(h.name)})},h.name))}):null,r(Ne,{panelProps:a,variant:"plain"})]})]}),o.showGreeting!==!1?r(te,{children:[r("h1",{class:`${Z}-home-greeting`,"data-testid":w.homeGreeting,children:_.title}),_.subtitle?r("p",{class:`${Z}-home-lead`,children:_.subtitle}):null]}):null]}),r("div",{class:`${Z}-home-cards`,children:[o.showSearchBar!==!1?r(zs,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout("help")}):null,s?r(wr,{onClick:()=>i.selectConversation(s.conversationId),testid:w.homeRecent,children:r("div",{class:`${Z}-home-recent-row`,"data-unread":(s.unreadCount??0)>0?"true":void 0,children:[r("span",{class:`${Z}-home-recent-avatar`,"aria-hidden":"true",children:r(Mt,{})}),r("span",{class:`${Z}-home-recent-body`,children:[r("span",{class:`${Z}-home-recent-title`,children:s.title}),s.preview?r("span",{class:`${Z}-home-recent-preview`,children:s.preview}):null]}),(s.unreadCount??0)>0?r("span",{class:`${Z}-home-recent-dot`,"aria-label":"Unread"}):null]})}):null,p?r(wr,{onClick:p.url?()=>i.push({kind:"iframe",url:p.url,title:p.text}):void 0,children:r("div",{class:`${Z}-home-status`,"data-level":p.level??"operational",children:[r("span",{class:`${Z}-home-status-icon`,"aria-hidden":"true",children:r(Fa,{})}),r("span",{class:`${Z}-home-status-text`,children:p.text})]})}):null,c.length>0?r("section",{class:`${Z}-home-content`,children:[r("div",{class:`${Z}-home-content-title`,children:m}),r("div",{class:`${Z}-home-content-list`,children:c.map(h=>r(no,{title:h.title,subtitle:h.description,onClick:()=>mu(i,h),testid:_e(w.homeContentRow,h.id)},h.id))})]}):null]})]})})}var js={Icon:Ua,Root:e=>r(gu,{...e})};var Oe=v.cssPrefix,hu=H.scope("news");function vu({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([]),[g,p]=T(0);E(()=>{let h=!1;return l("loading"),e.listContent({tags:a,sortBy:"publishedAt",sortOrder:"desc"}).then(y=>{h||(_(y.items??[]),l("loaded"))}).catch(y=>{h||(hu.warn("listContent (news) failed",{err:y}),d(Je(y,t)),l("error"))}),()=>{h=!0}},[e,a,g]);function m(){return s==="loading"?r(Ce,{message:t.newsLoading,strings:t}):s==="error"?r(Ce,{tone:"error",message:c,onRetry:()=>p(h=>h+1),strings:t}):u.length===0?r(Ce,{message:t.newsEmpty,strings:t}):r("div",{class:`${Oe}-news-list`,children:u.map(h=>r("button",{type:"button",class:`${Oe}-news-card`,onClick:()=>o.push({kind:"content",id:h.id,title:h.title}),"data-testid":_e(w.newsItem,h.id),children:[h.image?r("img",{class:`${Oe}-news-hero`,src:h.image,alt:"",loading:"lazy"}):null,r("span",{class:`${Oe}-news-body`,children:[h.tags&&h.tags.length>0?r("span",{class:`${Oe}-news-tags`,children:h.tags.map(y=>r("span",{class:`${Oe}-news-tag`,children:y},y))}):null,r("span",{class:`${Oe}-news-title`,children:h.title}),h.description?r("span",{class:`${Oe}-news-summary`,children:h.description}):null]})]},h.id))})}return r("div",{class:`${Oe}-module`,children:[r(eo,{title:t.newsTitle,actions:r(Ne,{panelProps:i,variant:"plain"})}),r("div",{class:`${Oe}-module-scroll`,children:m()})]})}var Xs={Icon:Wa,Root:e=>r(vu,{...e})};var oo={chat:Bs,home:js,help:qs,news:Xs};var Bt=v.cssPrefix;function Js({modules:e,activeTab:t,strings:n,unreadCount:o,onSelect:i}){return r("nav",{class:`${Bt}-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:`${Bt}-tab`,onClick:()=>i(a.id),"data-testid":_e(w.tab,a.id),children:[r("span",{class:`${Bt}-tab-icon`,"aria-hidden":"true",children:[r(s,{}),c?r("span",{class:`${Bt}-tab-badge`,"data-testid":w.tabBadge,children:c}):null]}),r("span",{class:`${Bt}-tab-label`,children:hn(n,a.label)})]},a.id)})})}var Ys=v.cssPrefix,bu="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads";function Qs({url:e,title:t,strings:n,onBack:o,actions:i}){return r("div",{class:`${Ys}-module`,children:[r(to,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:o,actions:i}),r("iframe",{class:`${Ys}-content-frame`,src:e,title:t||"content",sandbox:bu,referrerpolicy:"no-referrer",loading:"lazy",allow:"fullscreen"})]})}var tt=v.cssPrefix,xu=H.scope("content");function Zs({id:e,title:t,transport:n,strings:o,onBack:i,actions:a}){let[s,l]=T(null),[c,d]=T(!1),[u,_]=T(0),g=O(()=>{d(!1),l(null),_(m=>m+1)},[]);E(()=>{let m=!1;return n.listContent({ids:[e],limit:1}).then(h=>{if(m)return;let y=h.items[0];y?l(y):d(!0)}).catch(h=>{m||(xu.warn("listContent (reader) failed",{err:h}),d(!0))}),()=>{m=!0}},[n,e,u]);function p(){return c?r(Ce,{tone:"error",message:o.errorGeneric,onRetry:g,strings:o}):s===null?r(Ce,{message:o.contentLoading,strings:o}):r("article",{class:`${tt}-content`,"data-testid":w.contentView,children:[s.image?r("img",{class:`${tt}-content-hero`,src:s.image,alt:"",loading:"lazy"}):null,s.description?r("p",{class:`${tt}-content-subtitle`,children:s.description}):null,s.tags&&s.tags.length>0?r("span",{class:`${tt}-news-tags`,children:s.tags.map(m=>r("span",{class:`${tt}-news-tag`,children:m},m))}):null,r(ms,{text:s.content??""})]})}return r("div",{class:`${tt}-module`,children:[r(to,{title:s?.title||t||o.moduleBack,backLabel:o.moduleBack,onBack:i,actions:a,testid:w.backHeader}),r("div",{class:`${tt}-module-scroll`,"data-testid":w.contentScroll,children:p()})]})}var kr=v.cssPrefix;function el({panelProps:e,enabledModules:t,nav:n,unreadCount:o,onSelectConversation:i,onStartNewConversation:a,onSetPanelSize:s}){let l=e.options,c=l.strings,d=$(null);E(()=>{let D=d.current;if(!D)return;let se=qn(D),x=A=>{A.key==="Escape"&&e.onClose?.()};return D.addEventListener("keydown",x),()=>{se(),D.removeEventListener("keydown",x)}},[e.onClose]);let u=$(null),_=O(D=>{u.current?.attachFromDrop(D)},[]),{visible:g}=jn({containerRef:d,onDrop:_});Wn(d.current,l.mode==="modal");let p=re(()=>n.sig.value).value,m=$s(p),h=l.modules.byId[p.activeTab],y=m?.kind==="iframe"||m?.kind==="content",S=t.length>1&&(Hs(p)||!y),C=$(null);E(()=>{if(y&&C.current===null)C.current=e.panelSize,e.panelSize==="normal"&&s("expanded");else if(!y&&C.current!==null){let D=C.current;C.current=null,s(D)}},[y]);let F={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:D=>{let se=t.find(x=>x.layout===D);se&&n.switchTab(se.id)},selectConversation:i,startNewConversation:a},R=D=>({options:l,transport:e.transport,strings:c,config:D,visitorId:e.visitorId,nav:F,panelProps:e}),B=r(Ne,{panelProps:e,variant:"plain"}),q;if(m?.kind==="iframe")q=r(Qs,{url:m.url,title:m.title,strings:c,onBack:n.pop,actions:B});else if(m?.kind==="content")q=r(Zs,{id:m.id,title:m.title,transport:e.transport,strings:c,onBack:n.pop,actions:B});else if(h?.layout==="chat")q=r(yr,{...e,containerEl:d.current,dragOver:g,composerAttachApiRef:u});else if(h){let D=oo[h.layout].Root;q=D?r(D,{...R(h)},h.id):null}else q=null;return r("div",{ref:d,class:`${kr}-panel ${kr}-messenger`,role:"dialog","aria-modal":"false","aria-label":c.panelTitle,style:{position:"relative"},"data-testid":w.messengerHome,children:[r("div",{class:`${kr}-messenger-body`,children:q}),S?r(Js,{modules:t,activeTab:p.activeTab,strings:c,unreadCount:o,onSelect:n.switchTab}):null,r(Sr,{poweredBy:l.poweredBy}),l.size.resize?.enabled&&!(h?.layout==="chat"&&!m)?r(Un,{panelEl:d.current,resize:l.size.resize,position:l.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:c}):null]})}var zt=v.cssPrefix;function tl({strings:e,onClose:t}){return r("div",{class:`${zt}-panel ${zt}-modules-empty`,role:"dialog","aria-label":e.panelTitle,"data-testid":w.modulesEmpty,children:[t?r("button",{type:"button",class:`${zt}-icon-btn ${zt}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:r(Me,{})}):null,r("p",{class:`${zt}-modules-empty-text`,children:e.modulesEmpty})]})}async function nl(e,t,n,o){for(let i=0;i<e.length;i++){if(o.aborted)return;let a=e[i],s=t[i];!a||!s||await Pu(a,s.text,n,o)}}function Pu(e,t,n,o){return new Promise(i=>{let a=e.partsSig.value[0];if(!a||a.kind!=="text"){i();return}let s=()=>{a.textSig.value=t,a.doneSig.value=!0,e.status="complete",e.partsSig.value=[...e.partsSig.value],i()};if(typeof requestAnimationFrame>"u"){s();return}let l=t.length/Math.max(1,n)*1e3,c=performance.now(),d=_=>{if(o.aborted)return s();let g=l===0?1:Math.min(1,(_-c)/l);if(a.textSig.value=t.slice(0,Math.floor(g*t.length)),g>=1)return s();u=requestAnimationFrame(d)},u=requestAnimationFrame(d);o.addEventListener("abort",()=>{cancelAnimationFrame(u),s()},{once:!0})})}function ol({callout:e,persistence:t}){let n=e?.text??"",o=e?.persistent??!0,[i,a]=T(()=>o?!1:t.loadCalloutDismissed(n));E(()=>{a(o?!1:t.loadCalloutDismissed(n))},[n,o,t]);let s=O(()=>{a(!0),o||t.saveCalloutDismissed(n)},[t,n,o]);return{dismissed:i,dismissCallout:s}}var G=H.scope("app"),Cr=v.cssPrefix;function rl({options:e,hostElement:t,bus:n}){let[o]=T(()=>Rt(e.widgetId,e.storage)),[i,a]=T(()=>o.getVisitorId()),s=o.loadUserPrefs(),[l,c]=T(()=>s.locale??e.locale),[d,u]=T(()=>s.themeMode??e.themeMode),[_,g]=T(()=>s.textSize??e.textSize),p=je(o.loadConversationId()),m=je([]),h=je(0),[y,S]=T(!1),[C,F]=T([]);function R(){let f=e.modules.list,b=new Set(f.map(z=>z.id)),M=o.loadActiveModule();return M&&b.has(M)?M:f[0]?.id??""}function B(){return e.modules.list.find(f=>f.layout==="chat")?.id}let q=$();if(!q.current){let f=e.modules.list.map(b=>b.id);q.current=Os(R(),f,b=>o.saveActiveModule(b))}let D=q.current,se=$(void 0);se.current=B();let[x,A]=T(!1),ce=e.mode==="standalone"||e.mode==="inline",ue=$(It(e,_t(),o.loadPanelOpen(),o.loadPanelSize())),[P,U]=T(ue.current.panelOpen),Q=$(!1),[fe,me]=T(!1),{dismissed:Te,dismissCallout:Pe}=ol({callout:e.launcher.callout,persistence:o}),Ft=e.launcher.callout?.persistent??!0,so=O(()=>{G.info("calloutDismiss"),n.emit("calloutDismiss",void 0),Pe()},[n,Pe]),[we,nt]=T(ue.current.panelSize),Ir=$(!1),[ul,lo]=T("chat"),[co,bt]=T(!0),[De,Ut]=T(!1),[pl,Rr]=T(null),[_o,Wt]=T([]),[Gt,qt]=T(null),uo=$(null),[fl,ml]=T(void 0),[gl,hl]=T(void 0),[vl,bl]=T(()=>o.loadSidebarCollapsed()??!1),[po,xl]=T({}),[ne]=T(()=>new In({baseUrl:e.baseUrl,auth:Zi({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:"x-public-key"}),endpoints:e.endpoints})),[Ee]=T(()=>new Nn(m)),[ee]=T(()=>new Hn(e.sound,e.haptics)),Le=O(f=>{o.patchUserPrefs(f),ne.saveUserPrefs(o.loadUserPrefs()).catch(b=>{G.warn("saveUserPrefs failed",{err:b})})},[o,ne]);E(()=>{s.soundMuted!==void 0&&ee.setMuted(s.soundMuted)},[]),E(()=>{t.dataset.theme=d},[t,d,e]),E(()=>{t.dataset.textSize=_},[t,_,e]),E(()=>{ee.update(e.sound,e.haptics)},[ee,e.sound,e.haptics]),E(()=>()=>ee.destroy(),[ee]),E(()=>{let f=!0;return ee.mutedSig.subscribe(b=>{if(f){f=!1;return}Le({soundMuted:b})})},[ee,Le]),E(()=>{Ir.current||!e.size.initialSize||(Ir.current=!0,!o.loadPanelSize()&&nt(nr(e.mode,e.size,_t())))},[e.mode,e.size,o]),E(()=>{if(!x||Q.current)return;Q.current=!0;let f=It(e,_t(),o.loadPanelOpen(),o.loadPanelSize());U(f.panelOpen),nt(f.panelSize)},[x,e,o]);let Lr=$(!1),Mr=$(!1),Vt=$(null);E(()=>{if(!(!x||Lr.current)){if(Lr.current=!0,Mr.current){let f=se.current;f&&D.switchTab(f);return}D.reset(R())}},[x]);let fo=O(f=>{if(!f||f.length===0)return;let{animation:b,speed:M}=e.welcome;if(b==="instant"){m.value=f.map(_a);return}uo.current?.abort();let z=new AbortController;uo.current=z;let V=f.map(da);m.value=V,nl(V,f,M,z.signal)},[m,e.welcome]),mo=$(0),xt=O(async({newConversation:f})=>{let b=++mo.current,M=()=>b!==mo.current,z=p.value,V=f||!z?Ie():z;V!==z&&(p.value=V,o.saveConversationId(V));let k;try{k=await ne.startConversation({visitorId:i,conversationId:V,userPrefs:o.loadUserPrefs(),locale:e.locale})}catch($e){if(M())return;n.emit("error",$e),e.onError?.($e),f||A(!0);return}if(M())return;if(k.visitorId&&k.visitorId!==i&&(G.info("visitor rebound",{previous:i,current:k.visitorId,reason:k.rebind?.visitorId}),o.setVisitorId(k.visitorId),a(k.visitorId),n.emit("visitorRebound",{previous:i,current:k.visitorId,reason:k.rebind?.visitorId})),k.conversationId&&k.conversationId!==V&&(G.info("conversation rebound",{previous:V,current:k.conversationId,reason:k.rebind?.conversationId}),n.emit("conversationRebound",{previous:V,current:k.conversationId,reason:k.rebind?.conversationId})),k.agent&&Rr(k.agent),k.welcome?.suggestions&&Wt(k.welcome.suggestions),e.mode==="page"&&(k.site&&zi(k.site)?ml(k.site):k.site&&G.warn("invalid site config, using fallback",{site:k.site}),k.blocks&&Fi(k.blocks)?hl(k.blocks):k.blocks&&G.warn("invalid blocks config, using fallback",{blocks:k.blocks})),k.userPrefs&&!f&&(o.saveUserPrefs(k.userPrefs),k.userPrefs.locale&&c(k.userPrefs.locale),k.userPrefs.soundMuted!==void 0&&ee.setMuted(k.userPrefs.soundMuted),k.userPrefs.themeMode&&u(k.userPrefs.themeMode),k.userPrefs.textSize&&g(k.userPrefs.textSize)),!f&&z&&k.conversationId===z){S(!0);try{let $e=k.messages?.length?{conversationId:z,canContinue:k.canContinue??!0,messages:k.messages,formSubmissions:k.formSubmissions}:await ne.loadConversation(z);if(M())return;let Gr=($e.messages??[]).map(ir),$l=$e.formSubmissions??k.formSubmissions??[];F($l.map((wt,Hl)=>({key:`wire:${wt.formId}:${wt.createdAt??Hl}`,formId:wt.formId,outcome:wt.skipped?"skipped":"submitted",createdAt:An(wt.createdAt)})));let qr=Vt.current?[Vt.current]:[];Gr.length||qr.length?(m.value=[...Gr,...qr],bt($e.canContinue??!0),Wt($e.suggestions??[])):fo(k.welcome?.messages)}catch($e){if(M())return;G.warn("loadConversation failed; resetting conversationId",{err:$e,conversationId:z}),p.value=void 0,o.saveConversationId(void 0)}finally{M()||S(!1)}}else p.value=k.conversationId,o.saveConversationId(k.conversationId),fo(k.welcome?.messages);f||(n.emit("conversationStarted",k),A(!0))},[ne,i,o,e,n,m,p,ee,fo]),Pt=JSON.stringify(e.userContext??null),Pl=JSON.stringify(e.pageContext??null),yl=JSON.stringify(po);E(()=>{let f=Object.keys(po).length?{...po,...e.userContext}:e.userContext;ne.setContext(f,yu(e.pageContext))},[ne,Pt,Pl,yl]);let Sl=O(async f=>{let b=null;try{for await(let M of f.iter){if(!b){b=Rn(),Vt.current=b,Ee.attach(b),m.value=[...m.value,b],Ut(!0),qt(()=>f.cancel),Mr.current=!0;let z=se.current;z&&D.switchTab(z),G.info("resumed in-flight reply on mount")}Ee.apply(M.chunk),M.chunk.type==="finish"&&M.chunk.canContinue===!1&&bt(!1)}b&&(b.status="complete",ee.play("messageReceived"),Tr(n,e,"assistant",ar(b)))}catch(M){b&&(b.status="error",b.errorText=Je(M,e.strings),ee.play("error")),G.debug("mount resume ended without completing",{err:M})}finally{Vt.current=null,b&&(Ee.detach(),Ut(!1),qt(null),m.value=[...m.value])}},[Ee,m,ee,n,e,D]);E(()=>{xt({newConversation:!1});let f=p.value,b=null;return f&&(ne.primeIdentity(i,f),b=ne.resumeStream(),Sl(b)),()=>{mo.current++,b?.cancel()}},[]);let Nr=$(Pt);E(()=>{!x||Nr.current===Pt||(Nr.current=Pt,xt({newConversation:!1}))},[Pt,x,xt]),E(()=>{Tn(t,En(e.mode,we,P))},[t,P,we,e.mode]),E(()=>{if(e.mode!=="modal"||!P)return;let f=b=>{b.composedPath().some(V=>V instanceof HTMLElement&&V.classList.contains(`${v.cssPrefix}-panel`))||U(!1)};return t.addEventListener("click",f),()=>t.removeEventListener("click",f)},[t,P,e.mode]),E(()=>{if(e.mode!=="drawer"||!P)return;let f=b=>{b.key==="Escape"&&U(!1)};return document.addEventListener("keydown",f),()=>document.removeEventListener("keydown",f)},[P,e.mode]);let Kt=O(async(f,b)=>{let M=p.value??Ie();p.value||(p.value=M,o.saveConversationId(M));let z=ia({messages:m.value.slice(0,-1).map(ua),conversationId:M,tools:e.features.tools,responseMode:e.responseMode,trigger:b,visitorId:i,userPrefs:o.loadUserPrefs()});Ut(!0);let V=ne.sendMessage(z);qt(()=>V.cancel);try{for await(let k of V.iter)Ee.apply(k.chunk),k.chunk.type==="finish"&&k.chunk.canContinue===!1&&bt(!1);f.status="complete",ee.play("messageReceived"),Tr(n,e,"assistant",ar(f))}catch(k){f.status="error",f.errorText=Je(k,e.strings),ee.play("error"),n.emit("error",k),e.onError?.(k)}finally{Ee.detach(),Ut(!1),qt(null),m.value=[...m.value]}},[ne,Ee,m,p,e,n,ee,o,i]),jt=O((f,b,M)=>{if(De)return;let z=m.value.at(-1),V=z?.partsSig.value.find(ko=>ko.kind==="tool"&&ko.toolCallId===f);if(!V){G.warn("resolveTool: tool part not found",{toolCallId:f});return}M(V),z&&(z.partsSig.value=[...z.partsSig.value]);let k=Rn();m.value=[...m.value,k],Ee.attach(k),Kt(k,b)},[De,m,Ee,Kt]),Or=O((f,b)=>{G.info("toolResult",{toolCallId:f}),n.emit("toolResult",{toolCallId:f}),jt(f,Mn.toolResult,M=>{M.outputSig.value=b,M.stateSig.value="output"})},[n,jt]),Dr=O((f,b,M)=>{G.info("toolDecision",{toolCallId:f,approved:b}),n.emit("toolDecision",{toolCallId:f,approved:b}),jt(f,Mn.toolApproval,z=>{let V=z.approvalSig.value?.id??f;z.approvalSig.value={id:V,approved:b,reason:M},z.stateSig.value="output"})},[n,jt]),wl=ve(()=>({humanInLoop:e.features.humanInLoop,onResult:Or,onDecision:Dr}),[e.features.humanInLoop,Or,Dr]),kl=()=>m.value.reduce((f,b)=>f+(b.role==="user"?1:0),0),ge=Is({forms:e.forms,persistence:o,userContext:()=>e.userContext,messageCount:kl,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>p.value,onComplete:(f,b,M,z)=>{if(G.info("formSubmit",{formId:f.id,trigger:b,skipped:z}),n.emit("formSubmit",{formId:f.id,values:M,skipped:z}),F(k=>[...k,{key:`local:${f.id}:${k.length}`,formId:f.id,outcome:z?"skipped":"submitted"}]),z||Object.keys(M).length===0)return;let V=p.value??Ie();p.value||(p.value=V,o.saveConversationId(V),ne.primeIdentity(void 0,V)),f.mirrorToContext&&xl(k=>({...k,...M})),ne.submitForm({formId:f.id,conversationId:V,trigger:b,values:M})}}),Cl=re(()=>ge.activeForm.value),$r=e.pageContext?.area?String(e.pageContext.area):void 0,Tl=re(()=>m.value.length);E(()=>{x&&ge.fire("pre-chat")},[x,ge]),E(()=>{co||ge.fire("conversation-closed")},[co,ge]),E(()=>{x&&$r&&ge.fire("page-area")},[x,$r,ge]);let go=ve(()=>{let f=e.forms.list.flatMap(b=>b.triggers).filter(b=>b.kind==="idle").map(b=>Number(b.param));return f.length?Math.min(...f)*1e3:0},[e.forms]);E(()=>{if(!go||!P)return;let f=setTimeout(()=>ge.fire("idle"),go);return()=>clearTimeout(f)},[go,P,ge,Tl.value]);let Hr=O(async(f,b)=>{if(G.info("send",{textLen:f.length,attachments:b.length,streaming:De}),De)return;n.emit("send",{text:f,attachmentCount:b.length}),_o.length>0&&Wt([]);let M=await wu(ne,b,k=>{G.warn("upload failed",{err:k}),n.emit("error",k),e.onError?.(k)});ee.unlock(),ee.play("messageSent");let z=ca(f,M),V=Rn();m.value=[...m.value,z,V],Ee.attach(V),Tr(n,e,"user",f),await Kt(V,Mn.submitMessage),ge.fire("after-messages")},[De,ne,n,e,_o.length,m,Ee,Kt,ge]),El=O(()=>{G.info("stop"),n.emit("stop",void 0),Gt?.()},[Gt,n]),Al=O(()=>{ee.toggleMuted();let f=ee.mutedSig.value;G.info("soundToggle",{muted:f}),n.emit("soundToggle",{muted:f})},[ee,n]),yt=O(()=>{if(Ya(e.mode,we)==="exit-fullscreen"){G.info("close \u2192 exit-fullscreen",{mode:e.mode}),nt("normal"),n.emit("fullscreen",!1);return}G.info("close \u2192 panel closed",{mode:e.mode}),ge.fire("panel-close"),U(!1),o.savePanelOpen(!1),n.emit("close",void 0),e.onClose?.()},[n,e,o,we,ge]),ot=O(()=>{e.modules.list.some(f=>f.layout==="chat")&&ne.listConversations({limit:50}).then(f=>{h.value=f.conversations.reduce((b,M)=>b+(M.unreadCount??0),0)}).catch(f=>G.debug("refreshUnread failed (non-fatal)",{err:f}))},[ne,e.modules,h]),Br=$(!1);E(()=>{!x||Br.current||(Br.current=!0,ot())},[x,ot]);let ho=O(()=>{G.info("open",{mode:e.mode}),ee.unlock(),me(!0),U(!0),o.savePanelOpen(!0),!Te&&!Ft&&so(),setTimeout(()=>me(!1),Su),ot(),n.emit("open",void 0),e.onOpen?.()},[n,e,ee,o,Te,Ft,so,ot]),vo=O(()=>{G.info("clear \u2192 new conversation",{wasStreaming:De}),n.emit("clear",void 0),De&&Gt?.(),uo.current?.abort(),m.value=[],p.value=void 0,o.clearConversation(),bt(!0),F([]),xt({newConversation:!0})},[De,Gt,m,p,o,xt,n]),bo=O(()=>{vo(),lo("chat");let f=e.modules.list.find(b=>b.layout==="chat")?.id;f&&D.switchTab(f)},[vo,D,e]),xo=O(()=>{let f=we==="expanded"?"normal":"expanded";G.info("expand",{from:we,expanded:f==="expanded"}),nt(f),o.savePanelSize(f),n.emit("expand",f==="expanded")},[n,we,o]),Po=O(()=>{let f=we==="fullscreen"?"normal":"fullscreen";G.info("fullscreen",{from:we,fullscreen:f==="fullscreen"}),nt(f),o.savePanelSize(f),n.emit("fullscreen",f==="fullscreen")},[n,we,o]),yo=O(()=>{if(!e.popOutUrl)return;let f=new URL(e.popOutUrl);p.value&&f.searchParams.set("conversation",p.value),e.widgetId!=="default"&&f.searchParams.set("widgetId",e.widgetId),G.info("popOut",{url:f.toString()}),window.open(f.toString(),"_blank","noopener,noreferrer"),n.emit("popOut",void 0)},[n,p,e.popOutUrl,e.widgetId]),Il=O(()=>{lo(f=>{let b=f==="history"?"chat":"history";return G.info("toggleHistory",{view:b}),n.emit("toggleHistory",{view:b}),b})},[n]),Rl=O(f=>{G.info("localeChange",{locale:f}),c(f),Le({locale:f}),n.emit("localeChange",f)},[Le,n]),Ll=O(f=>{G.info("themeChange",{mode:f}),u(f),t.dataset.theme=f,Le({themeMode:f}),n.emit("themeChange",f)},[t,Le,n]),Ml=O(f=>{G.info("textSizeChange",{size:f}),g(f),t.dataset.textSize=f,Le({textSize:f}),n.emit("textSizeChange",f)},[t,Le,n]),Nl=O(()=>{bl(f=>{let b=!f;return G.info("sidebarToggle",{collapsed:b}),o.saveSidebarCollapsed(b),n.emit("sidebarToggle",{collapsed:b}),b})},[o,n]),Ol=O(f=>{G.info("resize",f),Le({widgetSize:f}),n.emit("resize",f)},[Le,n]),So=O(async f=>{G.info("selectConversation",{conversationId:f}),n.emit("selectConversation",{conversationId:f});try{let b=await ne.loadConversation(f),M=b.messages.map(ir);m.value=M,p.value=b.conversationId,o.saveConversationId(b.conversationId),b.agent&&Rr(b.agent),bt(b.canContinue),Wt(b.suggestions??[]),lo("chat"),await ne.markRead(f),ot()}catch(b){n.emit("error",b),e.onError?.(b)}},[ne,m,p,n,e,o,ot]);E(()=>Wi(t,{open:ho,close:yt,expand:xo,fullscreen:Po,popout:yo,openForm:b=>ge.fire("manual",typeof b=="string"?b:void 0)}),[t,ho,yt,xo,Po,yo,ge]);let Ae=ve(()=>Zo(e,l,d,_),[e,l,d,_]),zr={options:Ae,transport:ne,feedback:ee,bus:n,view:ul,canSend:co,isStreaming:De,loadingMessages:y,messagesSig:m,agent:pl,suggestions:_o,initialWidgetSize:s.widgetSize??null,visitorId:i,onClose:yt,onClear:vo,onExpand:xo,onFullscreen:Po,onPopOut:yo,onSoundToggle:Al,onToggleHistory:Il,onSelectHistoryConversation:So,onNewConversation:bo,onLocaleChange:Rl,onThemeChange:Ll,onTextSizeChange:Ml,onWidgetSizeChange:Ol,onSend:Hr,onStop:El,onSuggestion:f=>{let b=f.text??f.label;G.info("suggestion",{text:b}),n.emit("suggestion",{text:b}),Hr(b,[])},activeForm:Cl.value?.form??null,formMarkers:C.map(f=>({...f,title:e.forms.list.find(b=>b.id===f.formId)?.title})),onFormSubmit:ge.complete,onFormSkip:ge.skip,tool:wl},Dl=f=>{So(f);let b=B();b&&D.switchTab(b)};if(!x)return null;let St=Ae.modules.list,wo=f=>{let b=Nt("close",Ae.mode,f);return St.length===0?r(tl,{strings:Ae.strings,onClose:b?yt:void 0}):St.length===1&&St[0]?.layout==="chat"?r(As,{...zr,panelSize:f}):r(el,{panelProps:{...zr,panelSize:f,onClose:b?yt:void 0},enabledModules:St,nav:D,unreadCount:h.value,onSelectConversation:Dl,onStartNewConversation:bo,onSetPanelSize:nt})};if(e.mode==="page"){let f=M=>{So(M.conversationId)},b=St.some(M=>M.layout==="chat");return r("div",{class:`${Cr}-anchor`,children:r(Ms,{site:fl,blocks:gl,transport:ne,strings:Ae.strings,visitorId:i,showConversations:b,onSelectConversation:f,onNewConversation:bo,sidebarCollapsed:vl,onToggleSidebarCollapsed:Nl,children:wo("fullscreen")})})}if(ce){let f=e.mode==="standalone"?"fullscreen":we;return r("div",{class:`${Cr}-anchor`,children:wo(f)})}let Fr=e.mode==="drawer",Ur=!(e.mode==="modal")&&!e.launcher.hidden&&(!P||fe),Wr=Ur&&!fe&&!Te&&!Fr?Ae.launcher.callout:null;return r("div",{class:`${Cr}-anchor`,"data-launcher-size":Ae.launcher.size,children:[P?wo(we):null,Ur?r(ja,{onToggle:ho,launcher:Ae.launcher,strings:Ae.strings,leaving:fe,edgeTab:Fr}):null,Wr?r(Xa,{callout:Wr,launcherPosition:Ae.position,closeLabel:Ae.strings.close,onDismiss:so}):null]})}function yu(e){let t=e?.url??(typeof location<"u"?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}var Su=120;async function wu(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 Tr(e,t,n,o){let i={role:n,text:o};e.emit("message",i),t.onMessage?.(i)}var ku=H.scope("error-boundary"),ro=class extends Ge{constructor(){super(...arguments);j(this,"state",{crashed:!1})}componentDidCatch(n,o){ku.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 Cu=H.scope("iframe"),Tu='<!doctype html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:transparent;overflow:hidden}</style></head><body></body></html>';function sl(e,t,n="closed",o="floating",i=null){Cu.debug("createIframeMount",{position:t,initialMode:n,layoutMode:o,hasTarget:!!i});let a=document.createElement("iframe");a.title=`${v.name} chat`,a.setAttribute("allow","microphone; clipboard-write"),al(a,t,n,o),(o==="inline"&&i?i:document.body).appendChild(a);let l=a.contentDocument;if(!l)throw new Error("iframe contentDocument unavailable (cross-origin?)");l.open(),l.write(Tu),l.close();let c=Cn({...e,target:l.body}),d=new MutationObserver(()=>{al(a,t,c.hostElement.dataset.mode??"closed",o)});return d.observe(c.hostElement,{attributes:!0,attributeFilter:["data-mode"]}),{...c,iframeElement:a,destroy(){d.disconnect(),c.destroy(),a.remove()}}}var Er="border:0;background:transparent;z-index:2147483647;pointer-events:auto;",il={closed:{w:"88px",h:"88px"},expanded:{w:"min(calc(100vw - 32px), 680px)",h:"min(calc(100vh - 32px), 860px)"},open:{w:"min(calc(100vw - 32px), 440px)",h:"min(calc(100vh - 32px), 700px)"}};function al(e,t,n,o){if(n==="fullscreen"||o==="standalone"){e.style.cssText=`${Er}position:fixed;inset:0;width:100vw;height:100vh;`;return}if(o==="inline"){e.style.cssText=`${Er}position:static;display:block;width:100%;height:100%;`;return}let i=t.startsWith("top-")?"top":"bottom",a=t.endsWith("-left")?"left":"right",{w:s,h:l}=il[n]??il.open;e.style.cssText=`${Er}position:fixed;${i}:16px;${a}:16px;width:${s};height:${l};`}var io=class{constructor(){j(this,"handlers",new Map)}on(t,n){let o=this.handlers.get(t);return o||(o=new Set,this.handlers.set(t,o)),o.add(n),()=>this.handlers.get(t)?.delete(n)}emit(t,n){let o=this.handlers.get(t);if(o)for(let i of o)try{i(n)}catch{}}clear(){this.handlers.clear()}};var Eu=H.scope("hooks"),ao="*",Ar=new Set;function ll(e,t,n){let o={widgetId:e,event:t,listener:n};return Ar.add(o),()=>{Ar.delete(o)}}function Au(e,t,n){let o=[...Ar];for(let i of o)if(Iu(i.widgetId,e.widgetId)&&!(i.event!==ao&&i.event!==t))try{i.listener(e,t,n)}catch(a){Eu.warn("hook listener threw",{event:t,error:a})}}function cl(e,t){let n=[];for(let o of Ru)n.push(t.on(o,i=>{Au(e,o,i)}));return()=>{for(let o of n)o()}}function Iu(e,t){return e===ao||e===t}var Ru=["open","close","expand","fullscreen","popOut","resize","message","send","stop","clear","selectConversation","suggestion","toggleHistory","formSubmit","toolResult","toolDecision","attach","removeAttachment","voiceStart","voiceStop","voiceCancel","localeChange","themeChange","textSizeChange","soundToggle","sidebarToggle","calloutDismiss","error","conversationStarted","visitorRebound","conversationRebound"];var Ue=new Map;function dl(e){e.debug!==void 0&&Pn(e.debug);let t=H.scope("mount");t.info("mount",{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let n=e,o=At(n),i=o.widgetId,a=Ue.get(i);a&&(t.debug("destroy existing instance at slot",{widgetId:i}),a.destroy());let s=_l(o),l=o.iframe?sl({position:kn(o.mode)},o.position,s,o.mode,e.target??null):Cn({position:kn(o.mode),target:e.target??null}),c=Rt(o.widgetId,o.storage),d=()=>{let S=c.loadUserPrefs().themeMode;Qi(l.hostElement,S?{...o,themeMode:S}:o)};d(),Tn(l.hostElement,s),l.hostElement.dataset.widgetId=i;let u=new io,_=S=>{u.emit("error",S),o.onError?.(S)},g=()=>{Oo(rn(ro,{onError:_},rn(rl,{bus:u,hostElement:l.hostElement,options:o})),l.appRoot)};g(),u.on("conversationStarted",S=>{S.config&&(n=er(n,S.config),o=At(n),Yi(l.hostElement,kn(o.mode)),d(),g())});let p=l.hostElement,m=null,h=S=>{S.debug!==void 0&&Pn(S.debug),n={...n,...S},o=At(n),d(),g()},y={widgetId:i,open:()=>dt(p,"open"),close:()=>dt(p,"close"),expand:()=>dt(p,"expand"),popOut:()=>dt(p,"popout"),openForm:S=>dt(p,"openForm",S),on:(S,C)=>u.on(S,C),update:S=>{t.debug("update",{patch:S}),h(S)},setUserContext:S=>{t.debug("setUserContext",{keys:Object.keys(S)}),h({userContext:{...n.userContext,...S}})},clearUserContext:()=>{t.debug("clearUserContext"),h({userContext:void 0})},setPageContext:S=>{t.debug("setPageContext",{keys:Object.keys(S)}),h({pageContext:{...n.pageContext,...S}})},clearPageContext:()=>{t.debug("clearPageContext"),h({pageContext:void 0})},setDebug:S=>{Pn(S),t.info("debug level set",{level:jo()})},debugLevel:()=>jo(),onLog:S=>Ai(S),destroy:()=>{t.info("destroy",{widgetId:i}),m?.(),u.clear(),Oo(null,l.appRoot),l.destroy(),Ue.get(i)===y&&Ue.delete(i)}};return m=cl(y,u),Ue.set(i,y),y}function Lu(e){let t=e.widgetId??"default",n=Ue.get(t);return n?(n.update(e),n):dl(e)}function Mu(e){if(e!==void 0){Ue.get(e)?.destroy();return}let t=[...Ue.values()];for(let n of t)n.destroy()}function Nu(e="default"){return Ue.get(e)??null}function Ou(){return[...Ue.values()]}function Du(e,t,n){return ll(e,t,n)}var $u="0.1.0",Hu=v;function _l(e){if(e.mode==="standalone")return"standalone";if(e.mode==="inline")return"inline";let t=Rt(e.widgetId,e.storage),{panelOpen:n,panelSize:o}=It(e,_t(),t.loadPanelOpen(),t.loadPanelSize());return En(e.mode,o,n)}
39
+ `){K(e),X(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(T_(n.charCodeAt(0)))break;K(e),X(e,31),e.pending=n;continue}break;case"[":if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n!=="]"){K(e),X(e,17),e.pending=n;continue}break;case"!":if(e.token!==19&&n==="["){K(e),X(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}K(e)}function xr(e){return{add_token:E_,end_token:A_,add_text:I_,set_attr:R_,data:{nodes:[e,,,,,],index:0}}}function E_(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 A_(e){e.index-=1}function I_(e,t){e.nodes[e.index].appendChild(document.createTextNode(t))}function R_(e,t,n){e.nodes[e.index].setAttribute(y_(t),n)}function Qn({textSig:e,doneSig:t}){let n=$(null);return E(()=>{let o=n.current;if(!o)return;o.classList.add(`${v.cssPrefix}-md`);let i=xr(o),a=br(i),s=0,l=ze(()=>{let u=e.value,_=t.value;u.length<s&&(o.replaceChildren(),i=xr(o),a=br(i),s=0);let g=u.slice(s);g&&pe(a,g),s=u.length,_&&ps(a)}),c=new MutationObserver(u=>{for(let _ of u)for(let g of _.addedNodes){if(!(g instanceof HTMLElement))continue;let p=g.matches?.("a")?[g]:[...g.querySelectorAll?.("a")??[]];for(let m of p)fs(m)}});c.observe(o,{childList:!0,subtree:!0});for(let u of o.querySelectorAll("a"))fs(u);let d=u=>{let _=u.target?.closest?.("a");if(!_||!(_ instanceof HTMLAnchorElement))return;let g=_.getAttribute("href")??"";!g||g.startsWith("#")||(u.preventDefault(),window.open(g,"_blank","noopener,noreferrer"))};return o.addEventListener("click",d),()=>{l(),c.disconnect(),o.removeEventListener("click",d)}},[e,t]),r("div",{ref:n})}function ms({text:e}){let t=ve(()=>L(e),[e]),n=ve(()=>L(!0),[]);return r(Qn,{textSig:t,doneSig:n})}function fs(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 be=v.cssPrefix;function gs({part:e,strings:t,active:n,onDecision:o}){let i=re(()=>e.approvalSig.value),a=re(()=>e.inputSig.value),s=je("");if(i.value?.approved!==void 0){let d=i.value;return r("div",{class:`${be}-tool-approval ${be}-tool-decided`,"data-testid":w.toolDecision,children:[r("span",{class:`${be}-tool-decided-label`,"data-approved":d?.approved?"true":"false",children:d?.approved?t.approved:t.rejected}),r("strong",{class:`${be}-tool-title`,children:e.toolName}),d?.reason?r("span",{class:`${be}-tool-decided-value`,children:d.reason}):null]})}let c=M_(a.value);return r("div",{class:`${be}-tool-approval`,"data-testid":w.toolApproval,children:[r("div",{class:`${be}-tool-head`,children:[r("span",{class:`${be}-tool-badge`,children:t.approvalRequired}),r("strong",{class:`${be}-tool-title`,children:e.toolName})]}),c?r("pre",{class:`${be}-tool-args`,children:c}):null,n?r(te,{children:[r("input",{class:`${be}-field-input`,value:s.value,placeholder:t.approvalReason,onInput:d=>{s.value=d.target.value}}),r("div",{class:`${be}-form-actions`,children:[r("button",{type:"button",class:`${be}-tool-reject`,onClick:()=>o(e.toolCallId,!1,s.value.trim()||void 0),"data-testid":w.toolReject,children:t.reject}),r("button",{type:"button",class:`${be}-tool-approve`,onClick:()=>o(e.toolCallId,!0,s.value.trim()||void 0),"data-testid":w.toolApprove,children:t.approve})]})]}):r("p",{class:`${be}-tool-stale-note`,children:t.stepNoLongerActive})]})}function M_(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 vs(e){let t=e&&typeof e=="object"?e:{},n=t.responseType;return{title:$t(t.title),question:$t(t.question)??"Please provide the missing information.",description:$t(t.description),placeholder:$t(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:hs(t.minSelections),maxSelections:hs(t.maxSelections),validationHint:$t(t.validationHint)}}function bs(e){if(e.responseType==="confirmation")return[];let t=(e.choices??[]).map(N_).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 N_(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 $t(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function hs(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}var he=v.cssPrefix;function Ps({part:e,strings:t,active:n,onSubmit:o}){let i=re(()=>e.stateSig.value),a=re(()=>vs(e.inputSig.value));if(i.value==="output"||i.value==="error")return r(O_,{part:e,strings:t});if(!n)return r("div",{class:`${he}-tool-ask-input ${he}-tool-stale`,"data-testid":w.toolAskInput,children:[r(xs,{strings:t,title:a.value.title??a.value.question}),r("p",{class:`${he}-tool-stale-note`,children:t.stepNoLongerActive})]});let l=a.value,c=l.responseType==="confirmation";return r("div",{class:`${he}-tool-ask-input`,"data-testid":w.toolAskInput,children:[r(xs,{strings:t,title:l.title}),l.description?r("p",{class:`${he}-tool-desc`,children:l.description}):null,c?r("p",{class:`${he}-tool-question`,children:l.question}):null,c?r("div",{class:`${he}-form-actions`,children:[r("button",{type:"button",class:`${he}-form-skip`,onClick:()=>o(e.toolCallId,{confirmed:!1}),"data-testid":w.toolInputSkip,children:t.reject}),r("button",{type:"button",class:`${he}-form-submit`,onClick:()=>o(e.toolCallId,{confirmed:!0}),"data-testid":w.toolInputSubmit,children:t.approve})]}):r(Jn,{fields:bs(l),strings:t,submitLabel:t.inputSubmit,onSubmit:d=>o(e.toolCallId,d),skipLabel:l.required===!1?t.inputSkip:void 0,onSkip:l.required===!1?()=>o(e.toolCallId,{}):void 0,submitTestId:w.toolInputSubmit,skipTestId:w.toolInputSkip})]})}function xs({strings:e,title:t}){return r("div",{class:`${he}-tool-head`,children:[r("span",{class:`${he}-tool-badge`,children:e.inputRequired}),t?r("strong",{class:`${he}-tool-title`,children:t}):null]})}function O_({part:e,strings:t}){let n=re(()=>e.outputSig.value),o=D_(n.value)||t.inputSubmitted;return r("div",{class:`${he}-tool-ask-input ${he}-tool-decided`,"data-testid":w.toolDecision,children:[r("span",{class:`${he}-tool-decided-label`,children:t.inputSubmitted}),r("span",{class:`${he}-tool-decided-value`,children:o})]})}function D_(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 ys({part:e,strings:t}){let n=v.cssPrefix;return r("span",{class:`${n}-tool-chip`,role:"status",children:[r("span",{children:[t.usedTool,":"]}),r("strong",{children:e.toolName})]})}var Se=v.cssPrefix;function Ss({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(y=>y.kind==="text"&&y.textSig.value.length>0)),u=re(()=>o&&e.partsSig.value.some(y=>y.kind==="reasoning")),_=e.role==="assistant"&&e.status==="streaming",g=n==="buffered"&&_,p=_&&!d.value,m=_&&!g&&!(u.value&&p),h=$_(e.createdAt);return r("div",{class:`${Se}-bubble-row`,"data-role":e.role,"data-testid":_e(w.messageBubble,e.id),children:r("div",{class:`${Se}-bubble-col`,children:[r("div",{class:`${Se}-bubble`,children:[g?r(W_,{label:t.loading}):c.map(y=>r(H_,{part:y,active:p,strings:t,showReasoning:o,showToolCalls:i,interactive:a,tool:s},F_(y))),m&&r(U_,{}),e.status==="error"&&e.errorText?r("div",{class:`${Se}-error`,role:"alert",children:r("span",{children:e.errorText})}):null]}),h?r("time",{class:`${Se}-bubble-time`,dateTime:h.iso,title:h.full,children:h.short}):null]})})}function $_(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 H_({part:e,active:t,strings:n,showReasoning:o,showToolCalls:i,interactive:a,tool:s}){switch(e.kind){case"text":return r(Qn,{textSig:e.textSig,doneSig:e.doneSig});case"reasoning":return o?r(z_,{part:e,active:t,strings:n}):null;case"tool":return r(B_,{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 B_({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(s.value||a.value==="awaiting-approval")return r(gs,{part:e,strings:t,active:o,onDecision:i.onDecision});if(Ln(e.toolName)||a.value==="awaiting-input")return r(Ps,{part:e,strings:t,active:o,onSubmit:i.onResult})}return n?r(ys,{part:e,strings:t}):null}function z_({part:e,active:t,strings:n}){return r("details",{class:`${Se}-reasoning`,open:t,"data-active":t?"true":void 0,children:[r("summary",{class:`${Se}-reasoning-summary`,children:r("span",{class:`${Se}-reasoning-label`,children:t?n.thinking:n.thoughts})}),r("div",{class:`${Se}-reasoning-body`,children:r(Qn,{textSig:e.textSig,doneSig:e.doneSig})})]})}function F_(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 U_(){return r("span",{class:`${Se}-typing`,"aria-hidden":"true",children:[r("span",{}),r("span",{}),r("span",{})]})}function W_({label:e}){return r("span",{class:`${Se}-loading`,role:"status",children:[r("span",{class:`${Se}-loading-spinner`,"aria-hidden":"true"}),r("span",{class:`${Se}-loading-label`,children:e})]})}var ht=v.cssPrefix,Pr=120,G_=1200;function ws({messagesSig:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,loading:a,idle:s,tool:l,form:c,formMarkers:d}){let u=$(null),_=re(()=>e.value),[g,p]=T(!1),[m,h]=T(!1),y=$(!1),S=_.value[0]?.id;Ho(()=>{let x=u.current;if(!x||_.value.length===0)return;y.current=!0;let A=()=>{x.scrollTop=x.scrollHeight};A();let ce=new ResizeObserver(A);ce.observe(x);let ue=new MutationObserver(A);ue.observe(x,{childList:!0,subtree:!0,characterData:!0});let P=setTimeout(()=>{ce.disconnect(),ue.disconnect()},300);return()=>{ce.disconnect(),ue.disconnect(),clearTimeout(P)}},[S]),E(()=>{let x=u.current;if(!x||!y.current)return;x.scrollHeight-x.scrollTop-x.clientHeight<Pr&&(x.scrollTop=x.scrollHeight)},[_.value.length]),E(()=>{let x=u.current;if(!x)return;let A=_.value.at(-1);if(!A)return;let ce=()=>{x.scrollHeight-x.scrollTop-x.clientHeight<Pr*2&&(x.scrollTop=x.scrollHeight)};if(A.status!=="streaming"){let P=requestAnimationFrame(ce);return()=>cancelAnimationFrame(P)}ce();let ue=new MutationObserver(ce);return ue.observe(x,{childList:!0,subtree:!0,characterData:!0}),()=>ue.disconnect()},[_.value]);let C=c?.form.id;Ho(()=>{let x=u.current;!x||!C||(x.scrollTop=x.scrollHeight)},[C]),E(()=>{let x=u.current;if(!x)return;let A=()=>p(x.scrollHeight-x.scrollTop-x.clientHeight>Pr*2),ce,ue=()=>{A(),h(!0),clearTimeout(ce),ce=setTimeout(()=>h(!1),G_)};return x.addEventListener("scroll",ue,{passive:!0}),A(),()=>{x.removeEventListener("scroll",ue),clearTimeout(ce)}},[]);let F=()=>{let x=u.current;x&&(x.scrollTop=x.scrollHeight)},R=[],B="",q=_.value.at(-1)?.id,D=[...d??[]].toSorted((x,A)=>(x.createdAt??1/0)-(A.createdAt??1/0)),se=x=>{let A=D[0];for(;A&&A.createdAt!==void 0&&(x===void 0||A.createdAt<=x);)D.shift(),R.push(r(fr,{marker:A,strings:t},A.key)),A=D[0]};for(let x of _.value){se(x.createdAt);let A=q_(x.createdAt);A&&A!==B&&(R.push(r("div",{class:`${ht}-date-divider`,children:r("span",{class:`${ht}-date-pill`,title:V_(x.createdAt),children:K_(x.createdAt,t)})},`day:${A}`)),B=A),R.push(r(Ss,{message:x,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:!!s&&x.id===q,tool:l},x.id))}for(let x of D)R.push(r(fr,{marker:x,strings:t},x.key));return r("div",{class:`${ht}-list-wrap`,children:[r("div",{ref:u,class:`${ht}-list`,role:"log","aria-live":"polite","aria-relevant":"additions text","data-scrolling":m?"true":void 0,children:[a&&_.value.length===0?r("div",{class:`${ht}-list-loading`,role:"status",children:t.conversationLoading}):null,R,c?r(ss,{form:c.form,strings:t,onSubmit:c.onSubmit,onSkip:c.onSkip}):null]}),g?r("button",{type:"button",class:`${ht}-jump`,onClick:F,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":w.scrollToBottom,children:r(Ba,{})}):null]})}function q_(e){if(typeof e!="number"||!Number.isFinite(e))return"";let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function V_(e){if(typeof e!="number"||!Number.isFinite(e))return"";try{return new Date(e).toLocaleDateString(void 0,{dateStyle:"full"})}catch{return""}}function K_(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 j_=["today","yesterday","lastWeek","older"];function X_(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return"older";let o=Math.floor((ks(e)-ks(n))/(1440*60*1e3));return o<=0?"today":o===1?"yesterday":o<7?"lastWeek":"older"}function Cs(e,t){let n=new Map;for(let o of t){let i=X_(e,o.lastMessageAt),a=n.get(i);a?a.push(o):n.set(i,[o])}return j_.filter(o=>n.has(o)).map(o=>({bucket:o,conversations:n.get(o)}))}function ks(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}var J_=H.scope("history"),Y_={today:"dateToday",yesterday:"dateYesterday",lastWeek:"dateLastWeek",older:"dateOlder"};function Zn({transport:e,strings:t,visitorId:n,onSelect:o,onNewConversation:i}){let a=v.cssPrefix,[s,l]=T("loading"),[c,d]=T([]);E(()=>{let g=!1;return e.listConversations({visitorId:n}).then(p=>{g||(d(p.conversations??[]),l("loaded"))}).catch(p=>{g||(J_.warn("listConversations failed",{err:p}),l("error"))}),()=>{g=!0}},[e,n]);let u=i?r("div",{class:`${a}-history-footer`,children:r("button",{type:"button",class:`${a}-history-new`,onClick:i,"data-testid":w.sidebarNewConversation,children:[r(xa,{}),t.newConversation]})}):null;if(s==="loading")return r(te,{children:[r("div",{class:`${a}-history-empty`,children:t.historyLoading}),u]});if(s==="error"||c.length===0)return r(te,{children:[r("div",{class:`${a}-history-empty`,children:t.historyEmpty}),u]});let _=Cs(Date.now(),c);return r(te,{children:[r("div",{class:`${a}-history`,role:"list",children:_.map(g=>r("div",{class:`${a}-history-group`,children:[r("div",{class:`${a}-history-heading`,children:t[Y_[g.bucket]]}),g.conversations.map(p=>r("button",{type:"button",role:"listitem",class:`${a}-history-item`,onClick:()=>o(p),"data-closed":p.canContinue?void 0:"true","data-testid":_e(w.historyItem,p.conversationId),children:[r("span",{class:`${a}-history-title`,children:p.title}),p.preview?r("span",{class:`${a}-history-preview`,children:p.preview}):null]},p.conversationId))]},g.bucket))}),u]})}var Ts=v.cssPrefix;function Es({suggestions:e,onPick:t}){return e.length===0?null:r("div",{class:`${Ts}-suggestions`,role:"group","aria-label":"Suggested replies",children:e.map((n,o)=>r("button",{type:"button",class:`${Ts}-suggestion`,onClick:()=>t(n),"data-testid":_e(w.suggestion,o),children:n.label},n.id))})}var xe=v.cssPrefix;function As(e){let{options:t,onClose:n}=e,o=t.strings,i=$(null);E(()=>{let c=i.current;if(!c)return;let d=qn(c),u=_=>{_.key==="Escape"&&n?.()};return c.addEventListener("keydown",u),()=>{d(),c.removeEventListener("keydown",u)}},[n]);let a=$(null),s=O(c=>{a.current?.attachFromDrop(c)},[]),{visible:l}=jn({containerRef:i,onDrop:s});return Wn(i.current,t.mode==="modal"),r("div",{ref:i,class:`${xe}-panel`,role:"dialog","aria-modal":"false","aria-label":o.panelTitle,style:{position:"relative"},"data-testid":w.panel,children:[r(yr,{...e,containerEl:i.current,dragOver:l,composerAttachApiRef:a}),r(Sr,{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:g,initialWidgetSize:p,visitorId:m,onClose:h,onBack:y,onClear:S,onToggleHistory:C,onSelectHistoryConversation:F,onNewConversation:R,onWidgetSizeChange:B,onSend:q,onStop:D,onSuggestion:se,activeForm:x,formMarkers:A,onFormSubmit:ce,onFormSkip:ue,tool:P,containerEl:U,dragOver:Q,composerAttachApiRef:fe}=e,me=t.strings,Te;return x?Te=null:l?Te=r(te,{children:[r(Es,{suggestions:g,onPick:se}),r(ts,{options:t,transport:n,feedback:o,bus:i,isStreaming:c,onSend:q,onStop:D,attachApiRef:fe})]}):Te=r(Z_,{label:me.conversationClosed,ctaLabel:me.startNewConversation,onNewConversation:S}),r(te,{children:[s==="history"?r(Q_,{strings:me,onBack:C,onClose:h,showClose:Gn(t.mode,a,t.actions)}):r("header",{class:`${xe}-header`,"data-testid":w.panelHeader,children:[y?r("button",{type:"button",class:`${xe}-icon-btn`,onClick:y,"aria-label":me.moduleBack,title:me.moduleBack,children:r(Lt,{})}):null,_?r(Qa,{agent:_}):r("h1",{children:me.panelTitle}),r(Ne,{panelProps:e,variant:"chat"})]}),s==="history"?r(Zn,{transport:n,strings:me,visitorId:m,onSelect:Pe=>F(Pe.conversationId),onNewConversation:R}):r(te,{children:[r(ns,{visible:Q,strings:me}),r(ws,{messagesSig:u,strings:me,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,loading:d,idle:!c,tool:P,form:x?{form:x,onSubmit:ce,onSkip:ue}:null,formMarkers:A}),Te,r(eu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?r(Un,{panelEl:U,resize:t.size.resize,position:t.position,initialSize:p,onSizeChange:B,strings:me}):null]})}function Q_({strings:e,onBack:t,onClose:n,showClose:o}){return r("header",{class:`${xe}-header`,children:[r("button",{type:"button",class:`${xe}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:r(Lt,{})}),r("h1",{children:e.historyTitle}),o?r("button",{type:"button",class:`${xe}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:r(Me,{})}):null]})}function Z_({label:e,ctaLabel:t,onNewConversation:n}){return r("div",{class:`${xe}-readonly-banner`,role:"note",children:[r("span",{class:`${xe}-readonly-label`,children:e}),r("button",{type:"button",class:`${xe}-readonly-cta`,onClick:n,children:t})]})}function eu({disclaimer:e}){return e?r("div",{class:`${xe}-composer-footer`,children:r("div",{class:`${xe}-disclaimer`,children:e})}):null}function Sr({poweredBy:e}){return e?r("div",{class:`${xe}-poweredby-bar`,children:r(tu,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function tu({logoUrl:e,text:t,href:n}){let o=r(te,{children:[e?r("img",{class:`${xe}-poweredby-logo`,src:e,alt:"",loading:"lazy"}):null,t?r("span",{children:t}):null]});return n?r("a",{class:`${xe}-poweredby`,href:n,target:"_blank",rel:"noopener noreferrer",children:o}):r("span",{class:`${xe}-poweredby`,children:o})}function Is(e){let t=$(e);t.current=e;let n=$(null);return n.current??(n.current=nu(t)),n.current}function nu(e){let t=L(null),n=new Set,o=l=>`${e.current.conversationId()??""}:${l}`,i=l=>l.frequency==="always"?!1:l.frequency==="conversation"?n.has(o(l.id)):l.id in e.current.persistence.loadFormsDone(),a=(l,c)=>{if(t.value)return;let d=e.current;if(l==="manual"){let u=d.forms.list.find(_=>_.id===c);u&&(t.value={form:u,trigger:"manual"});return}for(let u of d.forms.byTrigger[l]??[]){let _=u.triggers.find(g=>g.kind===l);if(!(!_||!ou(_,d)||i(u)||!ru(u,d))){t.value={form:u,trigger:l};return}}},s=(l,c)=>{let d=t.value;if(!d)return;t.value=null;let{form:u,trigger:_}=d;u.frequency==="conversation"?n.add(o(u.id)):u.frequency!=="always"&&e.current.persistence.saveFormDone(u.id),e.current.onComplete(u,_,l,c)};return{activeForm:t,fire:a,complete:l=>s(l,!1),skip:()=>s({},!0)}}function ou(e,t){return e.kind==="after-messages"?t.messageCount()>=Number(e.param??0):e.kind==="page-area"?t.pageArea()===e.param:!0}function ru(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 Rs(e){let t=v.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":w.sidebar,children:[r("div",{class:`${t}-sidebar-header`,children:[r(iu,{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":w.sidebarToggle,children:r(au,{collapsed:a})})]}),a?null:r(te,{children:[s.length>0?r("nav",{class:`${t}-sidebar-section`,"data-section":"navigation",children:r(su,{items:s})}):null,l.length>0?r("div",{class:`${t}-sidebar-section`,"data-section":"link-cards",children:r(lu,{items:l})}):null,e.showConversations?r("div",{class:`${t}-sidebar-conversations`,children:r(Zn,{transport:e.transport,strings:e.strings,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function iu({site:e}){let t=v.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??v.name})}function au({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 su({items:e}){let t=v.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 lu({items:e}){let t=v.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 Ls=v.cssPrefix;function Ms(e){return r("main",{class:`${Ls}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?"true":"false",children:[r(Rs,{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:`${Ls}-page-chat`,"aria-label":"Chat",children:e.children})]})}var Ns=e=>Object.fromEntries(e.map(t=>[t,[]]));function Os(e,t,n){let o=L({activeTab:e,stacks:Ns(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:Ns(t)}}}}var Ds=e=>e.stacks[e.activeTab]??[],$s=e=>Ds(e).at(-1),Hs=e=>Ds(e).length===0;var Bs={Icon:Mt};var Ve=v.cssPrefix;function eo({title:e,actions:t}){return r("header",{class:`${Ve}-back-header`,"data-variant":"title",children:[r("span",{class:`${Ve}-back-spacer`,"aria-hidden":"true"}),r("h1",{class:`${Ve}-back-title`,children:e}),t??r("span",{class:`${Ve}-back-spacer`,"aria-hidden":"true"})]})}function to({title:e,backLabel:t,onBack:n,actions:o,testid:i}){return r("header",{class:`${Ve}-back-header`,"data-testid":i,children:[r("button",{type:"button",class:`${Ve}-icon-btn`,onClick:n,"aria-label":t,title:t,children:r(Lt,{})}),r("h1",{class:`${Ve}-back-title`,children:e}),o??r("span",{class:`${Ve}-back-spacer`,"aria-hidden":"true"})]})}var vt=v.cssPrefix;function zs({placeholder:e,onActivate:t}){return r("button",{type:"button",class:`${vt}-home-search`,onClick:t,"data-testid":w.homeSearch,children:[r("span",{class:`${vt}-home-search-text`,children:e}),r("span",{class:`${vt}-home-search-icon`,"aria-hidden":"true",children:r(lr,{})})]})}function Fs({placeholder:e,value:t,onInput:n}){return r("div",{class:`${vt}-home-search`,"data-input":"true",children:[r("input",{type:"search",class:`${vt}-home-search-input`,placeholder:e,value:t,onInput:o=>n(o.currentTarget.value),"data-testid":w.helpSearch}),r("span",{class:`${vt}-home-search-icon`,"aria-hidden":"true",children:r(lr,{})})]})}var Ht=v.cssPrefix;function no({title:e,subtitle:t,onClick:n,testid:o}){return r("button",{type:"button",class:`${Ht}-list-row`,onClick:n,"data-testid":o,children:[r("span",{class:`${Ht}-list-row-body`,children:[r("span",{class:`${Ht}-list-row-title`,children:e}),t?r("span",{class:`${Ht}-list-row-sub`,children:t}):null]}),r("span",{class:`${Ht}-list-row-chevron`,"aria-hidden":"true",children:r(Bn,{})})]})}var Us=v.cssPrefix;function Ce({tone:e="info",message:t,onRetry:n,strings:o}){return r("div",{class:`${Us}-module-empty`,role:e==="error"?"alert":"status","aria-live":"polite",children:[r("span",{children:t}),n?r("button",{type:"button",class:`${Us}-module-retry`,onClick:n,children:o.errorRetry}):null]})}var et=v.cssPrefix,cu=H.scope("help"),du=(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 _u(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 Ws(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 uu(e,t){let n=t.toLowerCase().trim();return n?e.map(o=>({item:o,score:Math.max(Ws(n,o.title)*2,Ws(n,o.description??""))})).filter(o=>o.score>0).toSorted((o,i)=>i.score-o.score).map(o=>o.item):[]}function Gs({article:e,nav:t}){return r(no,{title:e.title,subtitle:e.description,onClick:()=>du(t,e),testid:_e(w.helpArticle,e.id)})}function pu({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([]),[g,p]=T(""),[m,h]=T(0);E(()=>{let C=!1;return l("loading"),e.listContent({tags:a,sortBy:"order",limit:100}).then(F=>{C||(_(F.items??[]),l("loaded"))}).catch(F=>{C||(cu.warn("listContent (help) failed",{err:F}),d(Je(F,t)),l("error"))}),()=>{C=!0}},[e,a,m]);let y=ve(()=>uu(u,g),[u,g]);function S(){return g.trim().length>0?y.length===0?r(Ce,{message:t.helpSearchEmpty,strings:t}):r("div",{class:`${et}-help-card`,children:y.map(C=>r(Gs,{article:C,nav:o},C.id))}):s==="loading"?r(Ce,{message:t.helpLoading,strings:t}):s==="error"?r(Ce,{tone:"error",message:c,onRetry:()=>h(C=>C+1),strings:t}):u.length===0?r(Ce,{message:t.helpEmpty,strings:t}):_u(u).map(([C,F])=>r("section",{class:`${et}-help-group`,children:[C?r("h2",{class:`${et}-help-section-title`,children:C}):null,r("div",{class:`${et}-help-card`,children:F.map(R=>r(Gs,{article:R,nav:o},R.id))})]},C))}return r("div",{class:`${et}-module`,children:[r(eo,{title:t.helpTitle,actions:r(Ne,{panelProps:i,variant:"plain"})}),r("div",{class:`${et}-module-pad`,children:r(Fs,{placeholder:t.helpSearchPlaceholder,value:g,onInput:p})}),r("div",{class:`${et}-help-list`,children:S()})]})}var qs={Icon:sr,Root:e=>r(pu,{...e})};var Vs=v.cssPrefix;function wr({onClick:e,children:t,testid:n}){return e?r("button",{type:"button",class:`${Vs}-home-card`,"data-interactive":"true",onClick:e,"data-testid":n,children:t}):r("div",{class:`${Vs}-home-card`,"data-testid":n,children:t})}var Z=v.cssPrefix,Ks=H.scope("home");function fu(e){let t=e.options.userContext?.name,n=e.config.greetingText;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 mu=(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 gu(e){let{transport:t,strings:n,config:o,nav:i,panelProps:a}=e,[s,l]=T(null),[c,d]=T([]),u=o.contentTags?.join(",");E(()=>{if(!o.showRecentConversations)return;let h=!1;return t.listConversations({limit:1}).then(y=>!h&&l(y.conversations?.[0]??null)).catch(y=>!h&&Ks.warn("listConversations (home) failed",{err:y})),()=>{h=!0}},[t,o.showRecentConversations]),E(()=>{if(!o.contentTags?.length)return;let h=!1;return t.listContent({tags:o.contentTags,limit:6}).then(y=>!h&&d(y.items??[])).catch(y=>!h&&Ks.warn("listContent (home) failed",{err:y})),()=>{h=!0}},[t,u]);let _=fu(e),g=o.userAvatars??[],p=o.status,m=o.contentBlockTitle?hn(n,o.contentBlockTitle):n.homeContentTitle;return r("div",{class:`${Z}-module ${Z}-home`,"data-testid":w.homeView,children:r("div",{class:`${Z}-home-scroll`,children:[r("div",{class:`${Z}-home-hero`,children:[r("div",{class:`${Z}-home-hero-top`,children:[o.brandName?r("span",{class:`${Z}-home-brand`,"data-testid":w.homeBrand,children:o.brandName}):r("span",{class:`${Z}-home-brand-spacer`,"aria-hidden":"true"}),r("div",{class:`${Z}-home-hero-actions`,children:[g.length>0?r("div",{class:`${Z}-home-avatars`,children:g.map(h=>r("span",{class:`${Z}-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:Vn(h.name)})},h.name))}):null,r(Ne,{panelProps:a,variant:"plain"})]})]}),o.showGreeting!==!1?r(te,{children:[r("h1",{class:`${Z}-home-greeting`,"data-testid":w.homeGreeting,children:_.title}),_.subtitle?r("p",{class:`${Z}-home-lead`,children:_.subtitle}):null]}):null]}),r("div",{class:`${Z}-home-cards`,children:[o.showSearchBar!==!1?r(zs,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout("help")}):null,s?r(wr,{onClick:()=>i.selectConversation(s.conversationId),testid:w.homeRecent,children:r("div",{class:`${Z}-home-recent-row`,"data-unread":(s.unreadCount??0)>0?"true":void 0,children:[r("span",{class:`${Z}-home-recent-avatar`,"aria-hidden":"true",children:r(Mt,{})}),r("span",{class:`${Z}-home-recent-body`,children:[r("span",{class:`${Z}-home-recent-title`,children:s.title}),s.preview?r("span",{class:`${Z}-home-recent-preview`,children:s.preview}):null]}),(s.unreadCount??0)>0?r("span",{class:`${Z}-home-recent-dot`,"aria-label":"Unread"}):null]})}):null,p?r(wr,{onClick:p.url?()=>i.push({kind:"iframe",url:p.url,title:p.text}):void 0,children:r("div",{class:`${Z}-home-status`,"data-level":p.level??"operational",children:[r("span",{class:`${Z}-home-status-icon`,"aria-hidden":"true",children:r(Fa,{})}),r("span",{class:`${Z}-home-status-text`,children:p.text})]})}):null,c.length>0?r("section",{class:`${Z}-home-content`,children:[r("div",{class:`${Z}-home-content-title`,children:m}),r("div",{class:`${Z}-home-content-list`,children:c.map(h=>r(no,{title:h.title,subtitle:h.description,onClick:()=>mu(i,h),testid:_e(w.homeContentRow,h.id)},h.id))})]}):null]})]})})}var js={Icon:Ua,Root:e=>r(gu,{...e})};var Oe=v.cssPrefix,hu=H.scope("news");function vu({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([]),[g,p]=T(0);E(()=>{let h=!1;return l("loading"),e.listContent({tags:a,sortBy:"publishedAt",sortOrder:"desc"}).then(y=>{h||(_(y.items??[]),l("loaded"))}).catch(y=>{h||(hu.warn("listContent (news) failed",{err:y}),d(Je(y,t)),l("error"))}),()=>{h=!0}},[e,a,g]);function m(){return s==="loading"?r(Ce,{message:t.newsLoading,strings:t}):s==="error"?r(Ce,{tone:"error",message:c,onRetry:()=>p(h=>h+1),strings:t}):u.length===0?r(Ce,{message:t.newsEmpty,strings:t}):r("div",{class:`${Oe}-news-list`,children:u.map(h=>r("button",{type:"button",class:`${Oe}-news-card`,onClick:()=>o.push({kind:"content",id:h.id,title:h.title}),"data-testid":_e(w.newsItem,h.id),children:[h.image?r("img",{class:`${Oe}-news-hero`,src:h.image,alt:"",loading:"lazy"}):null,r("span",{class:`${Oe}-news-body`,children:[h.tags&&h.tags.length>0?r("span",{class:`${Oe}-news-tags`,children:h.tags.map(y=>r("span",{class:`${Oe}-news-tag`,children:y},y))}):null,r("span",{class:`${Oe}-news-title`,children:h.title}),h.description?r("span",{class:`${Oe}-news-summary`,children:h.description}):null]})]},h.id))})}return r("div",{class:`${Oe}-module`,children:[r(eo,{title:t.newsTitle,actions:r(Ne,{panelProps:i,variant:"plain"})}),r("div",{class:`${Oe}-module-scroll`,children:m()})]})}var Xs={Icon:Wa,Root:e=>r(vu,{...e})};var oo={chat:Bs,home:js,help:qs,news:Xs};var Bt=v.cssPrefix;function Js({modules:e,activeTab:t,strings:n,unreadCount:o,onSelect:i}){return r("nav",{class:`${Bt}-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:`${Bt}-tab`,onClick:()=>i(a.id),"data-testid":_e(w.tab,a.id),children:[r("span",{class:`${Bt}-tab-icon`,"aria-hidden":"true",children:[r(s,{}),c?r("span",{class:`${Bt}-tab-badge`,"data-testid":w.tabBadge,children:c}):null]}),r("span",{class:`${Bt}-tab-label`,children:hn(n,a.label)})]},a.id)})})}var Ys=v.cssPrefix,bu="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads";function Qs({url:e,title:t,strings:n,onBack:o,actions:i}){return r("div",{class:`${Ys}-module`,children:[r(to,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:o,actions:i}),r("iframe",{class:`${Ys}-content-frame`,src:e,title:t||"content",sandbox:bu,referrerpolicy:"no-referrer",loading:"lazy",allow:"fullscreen"})]})}var tt=v.cssPrefix,xu=H.scope("content");function Zs({id:e,title:t,transport:n,strings:o,onBack:i,actions:a}){let[s,l]=T(null),[c,d]=T(!1),[u,_]=T(0),g=O(()=>{d(!1),l(null),_(m=>m+1)},[]);E(()=>{let m=!1;return n.listContent({ids:[e],limit:1}).then(h=>{if(m)return;let y=h.items[0];y?l(y):d(!0)}).catch(h=>{m||(xu.warn("listContent (reader) failed",{err:h}),d(!0))}),()=>{m=!0}},[n,e,u]);function p(){return c?r(Ce,{tone:"error",message:o.errorGeneric,onRetry:g,strings:o}):s===null?r(Ce,{message:o.contentLoading,strings:o}):r("article",{class:`${tt}-content`,"data-testid":w.contentView,children:[s.image?r("img",{class:`${tt}-content-hero`,src:s.image,alt:"",loading:"lazy"}):null,s.description?r("p",{class:`${tt}-content-subtitle`,children:s.description}):null,s.tags&&s.tags.length>0?r("span",{class:`${tt}-news-tags`,children:s.tags.map(m=>r("span",{class:`${tt}-news-tag`,children:m},m))}):null,r(ms,{text:s.content??""})]})}return r("div",{class:`${tt}-module`,children:[r(to,{title:s?.title||t||o.moduleBack,backLabel:o.moduleBack,onBack:i,actions:a,testid:w.backHeader}),r("div",{class:`${tt}-module-scroll`,"data-testid":w.contentScroll,children:p()})]})}var kr=v.cssPrefix;function el({panelProps:e,enabledModules:t,nav:n,unreadCount:o,onSelectConversation:i,onStartNewConversation:a,onSetPanelSize:s}){let l=e.options,c=l.strings,d=$(null);E(()=>{let D=d.current;if(!D)return;let se=qn(D),x=A=>{A.key==="Escape"&&e.onClose?.()};return D.addEventListener("keydown",x),()=>{se(),D.removeEventListener("keydown",x)}},[e.onClose]);let u=$(null),_=O(D=>{u.current?.attachFromDrop(D)},[]),{visible:g}=jn({containerRef:d,onDrop:_});Wn(d.current,l.mode==="modal");let p=re(()=>n.sig.value).value,m=$s(p),h=l.modules.byId[p.activeTab],y=m?.kind==="iframe"||m?.kind==="content",S=t.length>1&&(Hs(p)||!y),C=$(null);E(()=>{if(y&&C.current===null)C.current=e.panelSize,e.panelSize==="normal"&&s("expanded");else if(!y&&C.current!==null){let D=C.current;C.current=null,s(D)}},[y]);let F={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:D=>{let se=t.find(x=>x.layout===D);se&&n.switchTab(se.id)},selectConversation:i,startNewConversation:a},R=D=>({options:l,transport:e.transport,strings:c,config:D,visitorId:e.visitorId,nav:F,panelProps:e}),B=r(Ne,{panelProps:e,variant:"plain"}),q;if(m?.kind==="iframe")q=r(Qs,{url:m.url,title:m.title,strings:c,onBack:n.pop,actions:B});else if(m?.kind==="content")q=r(Zs,{id:m.id,title:m.title,transport:e.transport,strings:c,onBack:n.pop,actions:B});else if(h?.layout==="chat")q=r(yr,{...e,containerEl:d.current,dragOver:g,composerAttachApiRef:u});else if(h){let D=oo[h.layout].Root;q=D?r(D,{...R(h)},h.id):null}else q=null;return r("div",{ref:d,class:`${kr}-panel ${kr}-messenger`,role:"dialog","aria-modal":"false","aria-label":c.panelTitle,style:{position:"relative"},"data-testid":w.messengerHome,children:[r("div",{class:`${kr}-messenger-body`,children:q}),S?r(Js,{modules:t,activeTab:p.activeTab,strings:c,unreadCount:o,onSelect:n.switchTab}):null,r(Sr,{poweredBy:l.poweredBy}),l.size.resize?.enabled&&!(h?.layout==="chat"&&!m)?r(Un,{panelEl:d.current,resize:l.size.resize,position:l.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:c}):null]})}var zt=v.cssPrefix;function tl({strings:e,onClose:t}){return r("div",{class:`${zt}-panel ${zt}-modules-empty`,role:"dialog","aria-label":e.panelTitle,"data-testid":w.modulesEmpty,children:[t?r("button",{type:"button",class:`${zt}-icon-btn ${zt}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:r(Me,{})}):null,r("p",{class:`${zt}-modules-empty-text`,children:e.modulesEmpty})]})}async function nl(e,t,n,o){for(let i=0;i<e.length;i++){if(o.aborted)return;let a=e[i],s=t[i];!a||!s||await Pu(a,s.text,n,o)}}function Pu(e,t,n,o){return new Promise(i=>{let a=e.partsSig.value[0];if(!a||a.kind!=="text"){i();return}let s=()=>{a.textSig.value=t,a.doneSig.value=!0,e.status="complete",e.partsSig.value=[...e.partsSig.value],i()};if(typeof requestAnimationFrame>"u"){s();return}let l=t.length/Math.max(1,n)*1e3,c=performance.now(),d=_=>{if(o.aborted)return s();let g=l===0?1:Math.min(1,(_-c)/l);if(a.textSig.value=t.slice(0,Math.floor(g*t.length)),g>=1)return s();u=requestAnimationFrame(d)},u=requestAnimationFrame(d);o.addEventListener("abort",()=>{cancelAnimationFrame(u),s()},{once:!0})})}function ol({callout:e,persistence:t}){let n=e?.text??"",o=e?.persistent??!0,[i,a]=T(()=>o?!1:t.loadCalloutDismissed(n));E(()=>{a(o?!1:t.loadCalloutDismissed(n))},[n,o,t]);let s=O(()=>{a(!0),o||t.saveCalloutDismissed(n)},[t,n,o]);return{dismissed:i,dismissCallout:s}}var G=H.scope("app"),Cr=v.cssPrefix;function rl({options:e,hostElement:t,bus:n}){let[o]=T(()=>Rt(e.widgetId,e.storage)),[i,a]=T(()=>o.getVisitorId()),s=o.loadUserPrefs(),[l,c]=T(()=>s.locale??e.locale),[d,u]=T(()=>s.themeMode??e.themeMode),[_,g]=T(()=>s.textSize??e.textSize),p=je(o.loadConversationId()),m=je([]),h=je(0),[y,S]=T(!1),[C,F]=T([]);function R(){let f=e.modules.list,b=new Set(f.map(z=>z.id)),N=o.loadActiveModule();return N&&b.has(N)?N:f[0]?.id??""}function B(){return e.modules.list.find(f=>f.layout==="chat")?.id}let q=$();if(!q.current){let f=e.modules.list.map(b=>b.id);q.current=Os(R(),f,b=>o.saveActiveModule(b))}let D=q.current,se=$(void 0);se.current=B();let[x,A]=T(!1),ce=e.mode==="standalone"||e.mode==="inline",ue=$(It(e,_t(),o.loadPanelOpen(),o.loadPanelSize())),[P,U]=T(ue.current.panelOpen),Q=$(!1),[fe,me]=T(!1),{dismissed:Te,dismissCallout:Pe}=ol({callout:e.launcher.callout,persistence:o}),Ft=e.launcher.callout?.persistent??!0,so=O(()=>{G.info("calloutDismiss"),n.emit("calloutDismiss",void 0),Pe()},[n,Pe]),[we,nt]=T(ue.current.panelSize),Ir=$(!1),[ul,lo]=T("chat"),[co,bt]=T(!0),[De,Ut]=T(!1),[pl,Rr]=T(null),[_o,Wt]=T([]),[Gt,qt]=T(null),uo=$(null),[fl,ml]=T(void 0),[gl,hl]=T(void 0),[vl,bl]=T(()=>o.loadSidebarCollapsed()??!1),[po,xl]=T({}),[ne]=T(()=>new In({baseUrl:e.baseUrl,auth:Zi({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:"x-public-key"}),endpoints:e.endpoints})),[Ee]=T(()=>new Nn(m)),[ee]=T(()=>new Hn(e.sound,e.haptics)),Le=O(f=>{o.patchUserPrefs(f),ne.saveUserPrefs(o.loadUserPrefs()).catch(b=>{G.warn("saveUserPrefs failed",{err:b})})},[o,ne]);E(()=>{s.soundMuted!==void 0&&ee.setMuted(s.soundMuted)},[]),E(()=>{t.dataset.theme=d},[t,d,e]),E(()=>{t.dataset.textSize=_},[t,_,e]),E(()=>{ee.update(e.sound,e.haptics)},[ee,e.sound,e.haptics]),E(()=>()=>ee.destroy(),[ee]),E(()=>{let f=!0;return ee.mutedSig.subscribe(b=>{if(f){f=!1;return}Le({soundMuted:b})})},[ee,Le]),E(()=>{Ir.current||!e.size.initialSize||(Ir.current=!0,!o.loadPanelSize()&&nt(nr(e.mode,e.size,_t())))},[e.mode,e.size,o]),E(()=>{if(!x||Q.current)return;Q.current=!0;let f=It(e,_t(),o.loadPanelOpen(),o.loadPanelSize());U(f.panelOpen),nt(f.panelSize)},[x,e,o]);let Lr=$(!1),Mr=$(!1),Vt=$(null);E(()=>{if(!(!x||Lr.current)){if(Lr.current=!0,Mr.current){let f=se.current;f&&D.switchTab(f);return}D.reset(R())}},[x]);let fo=O(f=>{if(!f||f.length===0)return;let{animation:b,speed:N}=e.welcome;if(b==="instant"){m.value=f.map(_a);return}uo.current?.abort();let z=new AbortController;uo.current=z;let V=f.map(da);m.value=V,nl(V,f,N,z.signal)},[m,e.welcome]),mo=$(0),xt=O(async({newConversation:f})=>{let b=++mo.current,N=()=>b!==mo.current,z=p.value,V=f||!z?Ie():z;V!==z&&(p.value=V,o.saveConversationId(V));let k;try{k=await ne.startConversation({visitorId:i,conversationId:V,userPrefs:o.loadUserPrefs(),locale:e.locale})}catch($e){if(N())return;n.emit("error",$e),e.onError?.($e),f||A(!0);return}if(N())return;if(k.visitorId&&k.visitorId!==i&&(G.info("visitor rebound",{previous:i,current:k.visitorId,reason:k.rebind?.visitorId}),o.setVisitorId(k.visitorId),a(k.visitorId),n.emit("visitorRebound",{previous:i,current:k.visitorId,reason:k.rebind?.visitorId})),k.conversationId&&k.conversationId!==V&&(G.info("conversation rebound",{previous:V,current:k.conversationId,reason:k.rebind?.conversationId}),n.emit("conversationRebound",{previous:V,current:k.conversationId,reason:k.rebind?.conversationId})),k.agent&&Rr(k.agent),k.welcome?.suggestions&&Wt(k.welcome.suggestions),e.mode==="page"&&(k.site&&zi(k.site)?ml(k.site):k.site&&G.warn("invalid site config, using fallback",{site:k.site}),k.blocks&&Fi(k.blocks)?hl(k.blocks):k.blocks&&G.warn("invalid blocks config, using fallback",{blocks:k.blocks})),k.userPrefs&&!f&&(o.saveUserPrefs(k.userPrefs),k.userPrefs.locale&&c(k.userPrefs.locale),k.userPrefs.soundMuted!==void 0&&ee.setMuted(k.userPrefs.soundMuted),k.userPrefs.themeMode&&u(k.userPrefs.themeMode),k.userPrefs.textSize&&g(k.userPrefs.textSize)),!f&&z&&k.conversationId===z){S(!0);try{let $e=k.messages?.length?{conversationId:z,canContinue:k.canContinue??!0,messages:k.messages,formSubmissions:k.formSubmissions}:await ne.loadConversation(z);if(N())return;let Gr=($e.messages??[]).map(ir),$l=$e.formSubmissions??k.formSubmissions??[];F($l.map((wt,Hl)=>({key:`wire:${wt.formId}:${wt.createdAt??Hl}`,formId:wt.formId,outcome:wt.skipped?"skipped":"submitted",createdAt:An(wt.createdAt)})));let qr=Vt.current?[Vt.current]:[];Gr.length||qr.length?(m.value=[...Gr,...qr],bt($e.canContinue??!0),Wt($e.suggestions??[])):fo(k.welcome?.messages)}catch($e){if(N())return;G.warn("loadConversation failed; resetting conversationId",{err:$e,conversationId:z}),p.value=void 0,o.saveConversationId(void 0)}finally{N()||S(!1)}}else p.value=k.conversationId,o.saveConversationId(k.conversationId),fo(k.welcome?.messages);f||(n.emit("conversationStarted",k),A(!0))},[ne,i,o,e,n,m,p,ee,fo]),Pt=JSON.stringify(e.userContext??null),Pl=JSON.stringify(e.pageContext??null),yl=JSON.stringify(po);E(()=>{let f=Object.keys(po).length?{...po,...e.userContext}:e.userContext;ne.setContext(f,yu(e.pageContext))},[ne,Pt,Pl,yl]);let Sl=O(async f=>{let b=null;try{for await(let N of f.iter){if(!b){b=Rn(),Vt.current=b,Ee.attach(b),m.value=[...m.value,b],Ut(!0),qt(()=>f.cancel),Mr.current=!0;let z=se.current;z&&D.switchTab(z),G.info("resumed in-flight reply on mount")}Ee.apply(N.chunk),N.chunk.type==="finish"&&N.chunk.canContinue===!1&&bt(!1)}b&&(b.status="complete",ee.play("messageReceived"),Tr(n,e,"assistant",ar(b)))}catch(N){b&&(b.status="error",b.errorText=Je(N,e.strings),ee.play("error")),G.debug("mount resume ended without completing",{err:N})}finally{Vt.current=null,b&&(Ee.detach(),Ut(!1),qt(null),m.value=[...m.value])}},[Ee,m,ee,n,e,D]);E(()=>{xt({newConversation:!1});let f=p.value,b=null;return f&&(ne.primeIdentity(i,f),b=ne.resumeStream(),Sl(b)),()=>{mo.current++,b?.cancel()}},[]);let Nr=$(Pt);E(()=>{!x||Nr.current===Pt||(Nr.current=Pt,xt({newConversation:!1}))},[Pt,x,xt]),E(()=>{Tn(t,En(e.mode,we,P))},[t,P,we,e.mode]),E(()=>{if(e.mode!=="modal"||!P)return;let f=b=>{b.composedPath().some(V=>V instanceof HTMLElement&&V.classList.contains(`${v.cssPrefix}-panel`))||U(!1)};return t.addEventListener("click",f),()=>t.removeEventListener("click",f)},[t,P,e.mode]),E(()=>{if(e.mode!=="drawer"||!P)return;let f=b=>{b.key==="Escape"&&U(!1)};return document.addEventListener("keydown",f),()=>document.removeEventListener("keydown",f)},[P,e.mode]);let Kt=O(async(f,b)=>{let N=p.value??Ie();p.value||(p.value=N,o.saveConversationId(N));let z=ia({messages:m.value.slice(0,-1).map(ua),conversationId:N,tools:e.features.tools,responseMode:e.responseMode,trigger:b,visitorId:i,userPrefs:o.loadUserPrefs()});Ut(!0);let V=ne.sendMessage(z);qt(()=>V.cancel);try{for await(let k of V.iter)Ee.apply(k.chunk),k.chunk.type==="finish"&&k.chunk.canContinue===!1&&bt(!1);f.status="complete",ee.play("messageReceived"),Tr(n,e,"assistant",ar(f))}catch(k){f.status="error",f.errorText=Je(k,e.strings),ee.play("error"),n.emit("error",k),e.onError?.(k)}finally{Ee.detach(),Ut(!1),qt(null),m.value=[...m.value]}},[ne,Ee,m,p,e,n,ee,o,i]),jt=O((f,b,N)=>{if(De)return;let z=m.value.at(-1),V=z?.partsSig.value.find(ko=>ko.kind==="tool"&&ko.toolCallId===f);if(!V){G.warn("resolveTool: tool part not found",{toolCallId:f});return}N(V),z&&(z.partsSig.value=[...z.partsSig.value]);let k=Rn();m.value=[...m.value,k],Ee.attach(k),Kt(k,b)},[De,m,Ee,Kt]),Or=O((f,b)=>{G.info("toolResult",{toolCallId:f}),n.emit("toolResult",{toolCallId:f}),jt(f,Mn.toolResult,N=>{N.outputSig.value=b,N.stateSig.value="output"})},[n,jt]),Dr=O((f,b,N)=>{G.info("toolDecision",{toolCallId:f,approved:b}),n.emit("toolDecision",{toolCallId:f,approved:b}),jt(f,Mn.toolApproval,z=>{let V=z.approvalSig.value?.id??f;z.approvalSig.value={id:V,approved:b,reason:N},z.stateSig.value="output"})},[n,jt]),wl=ve(()=>({humanInLoop:e.features.humanInLoop,onResult:Or,onDecision:Dr}),[e.features.humanInLoop,Or,Dr]),kl=()=>m.value.reduce((f,b)=>f+(b.role==="user"?1:0),0),ge=Is({forms:e.forms,persistence:o,userContext:()=>e.userContext,messageCount:kl,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>p.value,onComplete:(f,b,N,z)=>{G.info("formSubmit",{formId:f.id,trigger:b,skipped:z}),n.emit("formSubmit",{formId:f.id,values:N,skipped:z}),F(k=>[...k,{key:`local:${f.id}:${k.length}`,formId:f.id,outcome:z?"skipped":"submitted",createdAt:Date.now()}]);let V=p.value??Ie();p.value||(p.value=V,o.saveConversationId(V),ne.primeIdentity(void 0,V)),!z&&f.mirrorToContext&&xl(k=>({...k,...N})),ne.submitForm({formId:f.id,conversationId:V,trigger:b,values:N,skipped:z})}}),Cl=re(()=>ge.activeForm.value),$r=e.pageContext?.area?String(e.pageContext.area):void 0,Tl=re(()=>m.value.length);E(()=>{x&&ge.fire("pre-chat")},[x,ge]),E(()=>{co||ge.fire("conversation-closed")},[co,ge]),E(()=>{x&&$r&&ge.fire("page-area")},[x,$r,ge]);let go=ve(()=>{let f=e.forms.list.flatMap(b=>b.triggers).filter(b=>b.kind==="idle").map(b=>Number(b.param));return f.length?Math.min(...f)*1e3:0},[e.forms]);E(()=>{if(!go||!P)return;let f=setTimeout(()=>ge.fire("idle"),go);return()=>clearTimeout(f)},[go,P,ge,Tl.value]);let Hr=O(async(f,b)=>{if(G.info("send",{textLen:f.length,attachments:b.length,streaming:De}),De)return;n.emit("send",{text:f,attachmentCount:b.length}),_o.length>0&&Wt([]);let N=await wu(ne,b,k=>{G.warn("upload failed",{err:k}),n.emit("error",k),e.onError?.(k)});ee.unlock(),ee.play("messageSent");let z=ca(f,N),V=Rn();m.value=[...m.value,z,V],Ee.attach(V),Tr(n,e,"user",f),await Kt(V,Mn.submitMessage),ge.fire("after-messages")},[De,ne,n,e,_o.length,m,Ee,Kt,ge]),El=O(()=>{G.info("stop"),n.emit("stop",void 0),Gt?.()},[Gt,n]),Al=O(()=>{ee.toggleMuted();let f=ee.mutedSig.value;G.info("soundToggle",{muted:f}),n.emit("soundToggle",{muted:f})},[ee,n]),yt=O(()=>{if(Ya(e.mode,we)==="exit-fullscreen"){G.info("close \u2192 exit-fullscreen",{mode:e.mode}),nt("normal"),n.emit("fullscreen",!1);return}G.info("close \u2192 panel closed",{mode:e.mode}),ge.fire("panel-close"),U(!1),o.savePanelOpen(!1),n.emit("close",void 0),e.onClose?.()},[n,e,o,we,ge]),ot=O(()=>{e.modules.list.some(f=>f.layout==="chat")&&ne.listConversations({limit:50}).then(f=>{h.value=f.conversations.reduce((b,N)=>b+(N.unreadCount??0),0)}).catch(f=>G.debug("refreshUnread failed (non-fatal)",{err:f}))},[ne,e.modules,h]),Br=$(!1);E(()=>{!x||Br.current||(Br.current=!0,ot())},[x,ot]);let ho=O(()=>{G.info("open",{mode:e.mode}),ee.unlock(),me(!0),U(!0),o.savePanelOpen(!0),!Te&&!Ft&&so(),setTimeout(()=>me(!1),Su),ot(),n.emit("open",void 0),e.onOpen?.()},[n,e,ee,o,Te,Ft,so,ot]),vo=O(()=>{G.info("clear \u2192 new conversation",{wasStreaming:De}),n.emit("clear",void 0),De&&Gt?.(),uo.current?.abort(),m.value=[],p.value=void 0,o.clearConversation(),bt(!0),F([]),xt({newConversation:!0})},[De,Gt,m,p,o,xt,n]),bo=O(()=>{vo(),lo("chat");let f=e.modules.list.find(b=>b.layout==="chat")?.id;f&&D.switchTab(f)},[vo,D,e]),xo=O(()=>{let f=we==="expanded"?"normal":"expanded";G.info("expand",{from:we,expanded:f==="expanded"}),nt(f),o.savePanelSize(f),n.emit("expand",f==="expanded")},[n,we,o]),Po=O(()=>{let f=we==="fullscreen"?"normal":"fullscreen";G.info("fullscreen",{from:we,fullscreen:f==="fullscreen"}),nt(f),o.savePanelSize(f),n.emit("fullscreen",f==="fullscreen")},[n,we,o]),yo=O(()=>{if(!e.popOutUrl)return;let f=new URL(e.popOutUrl);p.value&&f.searchParams.set("conversation",p.value),e.widgetId!=="default"&&f.searchParams.set("widgetId",e.widgetId),G.info("popOut",{url:f.toString()}),window.open(f.toString(),"_blank","noopener,noreferrer"),n.emit("popOut",void 0)},[n,p,e.popOutUrl,e.widgetId]),Il=O(()=>{lo(f=>{let b=f==="history"?"chat":"history";return G.info("toggleHistory",{view:b}),n.emit("toggleHistory",{view:b}),b})},[n]),Rl=O(f=>{G.info("localeChange",{locale:f}),c(f),Le({locale:f}),n.emit("localeChange",f)},[Le,n]),Ll=O(f=>{G.info("themeChange",{mode:f}),u(f),t.dataset.theme=f,Le({themeMode:f}),n.emit("themeChange",f)},[t,Le,n]),Ml=O(f=>{G.info("textSizeChange",{size:f}),g(f),t.dataset.textSize=f,Le({textSize:f}),n.emit("textSizeChange",f)},[t,Le,n]),Nl=O(()=>{bl(f=>{let b=!f;return G.info("sidebarToggle",{collapsed:b}),o.saveSidebarCollapsed(b),n.emit("sidebarToggle",{collapsed:b}),b})},[o,n]),Ol=O(f=>{G.info("resize",f),Le({widgetSize:f}),n.emit("resize",f)},[Le,n]),So=O(async f=>{G.info("selectConversation",{conversationId:f}),n.emit("selectConversation",{conversationId:f});try{let b=await ne.loadConversation(f),N=b.messages.map(ir);m.value=N,p.value=b.conversationId,o.saveConversationId(b.conversationId),b.agent&&Rr(b.agent),bt(b.canContinue),Wt(b.suggestions??[]),lo("chat"),await ne.markRead(f),ot()}catch(b){n.emit("error",b),e.onError?.(b)}},[ne,m,p,n,e,o,ot]);E(()=>Wi(t,{open:ho,close:yt,expand:xo,fullscreen:Po,popout:yo,openForm:b=>ge.fire("manual",typeof b=="string"?b:void 0)}),[t,ho,yt,xo,Po,yo,ge]);let Ae=ve(()=>Zo(e,l,d,_),[e,l,d,_]),zr={options:Ae,transport:ne,feedback:ee,bus:n,view:ul,canSend:co,isStreaming:De,loadingMessages:y,messagesSig:m,agent:pl,suggestions:_o,initialWidgetSize:s.widgetSize??null,visitorId:i,onClose:yt,onClear:vo,onExpand:xo,onFullscreen:Po,onPopOut:yo,onSoundToggle:Al,onToggleHistory:Il,onSelectHistoryConversation:So,onNewConversation:bo,onLocaleChange:Rl,onThemeChange:Ll,onTextSizeChange:Ml,onWidgetSizeChange:Ol,onSend:Hr,onStop:El,onSuggestion:f=>{let b=f.text??f.label;G.info("suggestion",{text:b}),n.emit("suggestion",{text:b}),Hr(b,[])},activeForm:Cl.value?.form??null,formMarkers:C.map(f=>({...f,title:e.forms.list.find(b=>b.id===f.formId)?.title})),onFormSubmit:ge.complete,onFormSkip:ge.skip,tool:wl},Dl=f=>{So(f);let b=B();b&&D.switchTab(b)};if(!x)return null;let St=Ae.modules.list,wo=f=>{let b=Nt("close",Ae.mode,f);return St.length===0?r(tl,{strings:Ae.strings,onClose:b?yt:void 0}):St.length===1&&St[0]?.layout==="chat"?r(As,{...zr,panelSize:f}):r(el,{panelProps:{...zr,panelSize:f,onClose:b?yt:void 0},enabledModules:St,nav:D,unreadCount:h.value,onSelectConversation:Dl,onStartNewConversation:bo,onSetPanelSize:nt})};if(e.mode==="page"){let f=N=>{So(N.conversationId)},b=St.some(N=>N.layout==="chat");return r("div",{class:`${Cr}-anchor`,children:r(Ms,{site:fl,blocks:gl,transport:ne,strings:Ae.strings,visitorId:i,showConversations:b,onSelectConversation:f,onNewConversation:bo,sidebarCollapsed:vl,onToggleSidebarCollapsed:Nl,children:wo("fullscreen")})})}if(ce){let f=e.mode==="standalone"?"fullscreen":we;return r("div",{class:`${Cr}-anchor`,children:wo(f)})}let Fr=e.mode==="drawer",Ur=!(e.mode==="modal")&&!e.launcher.hidden&&(!P||fe),Wr=Ur&&!fe&&!Te&&!Fr?Ae.launcher.callout:null;return r("div",{class:`${Cr}-anchor`,"data-launcher-size":Ae.launcher.size,children:[P?wo(we):null,Ur?r(ja,{onToggle:ho,launcher:Ae.launcher,strings:Ae.strings,leaving:fe,edgeTab:Fr}):null,Wr?r(Xa,{callout:Wr,launcherPosition:Ae.position,closeLabel:Ae.strings.close,onDismiss:so}):null]})}function yu(e){let t=e?.url??(typeof location<"u"?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}var Su=120;async function wu(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 Tr(e,t,n,o){let i={role:n,text:o};e.emit("message",i),t.onMessage?.(i)}var ku=H.scope("error-boundary"),ro=class extends Ge{constructor(){super(...arguments);j(this,"state",{crashed:!1})}componentDidCatch(n,o){ku.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 Cu=H.scope("iframe"),Tu='<!doctype html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:transparent;overflow:hidden}</style></head><body></body></html>';function sl(e,t,n="closed",o="floating",i=null){Cu.debug("createIframeMount",{position:t,initialMode:n,layoutMode:o,hasTarget:!!i});let a=document.createElement("iframe");a.title=`${v.name} chat`,a.setAttribute("allow","microphone; clipboard-write"),al(a,t,n,o),(o==="inline"&&i?i:document.body).appendChild(a);let l=a.contentDocument;if(!l)throw new Error("iframe contentDocument unavailable (cross-origin?)");l.open(),l.write(Tu),l.close();let c=Cn({...e,target:l.body}),d=new MutationObserver(()=>{al(a,t,c.hostElement.dataset.mode??"closed",o)});return d.observe(c.hostElement,{attributes:!0,attributeFilter:["data-mode"]}),{...c,iframeElement:a,destroy(){d.disconnect(),c.destroy(),a.remove()}}}var Er="border:0;background:transparent;z-index:2147483647;pointer-events:auto;",il={closed:{w:"88px",h:"88px"},expanded:{w:"min(calc(100vw - 32px), 680px)",h:"min(calc(100vh - 32px), 860px)"},open:{w:"min(calc(100vw - 32px), 440px)",h:"min(calc(100vh - 32px), 700px)"}};function al(e,t,n,o){if(n==="fullscreen"||o==="standalone"){e.style.cssText=`${Er}position:fixed;inset:0;width:100vw;height:100vh;`;return}if(o==="inline"){e.style.cssText=`${Er}position:static;display:block;width:100%;height:100%;`;return}let i=t.startsWith("top-")?"top":"bottom",a=t.endsWith("-left")?"left":"right",{w:s,h:l}=il[n]??il.open;e.style.cssText=`${Er}position:fixed;${i}:16px;${a}:16px;width:${s};height:${l};`}var io=class{constructor(){j(this,"handlers",new Map)}on(t,n){let o=this.handlers.get(t);return o||(o=new Set,this.handlers.set(t,o)),o.add(n),()=>this.handlers.get(t)?.delete(n)}emit(t,n){let o=this.handlers.get(t);if(o)for(let i of o)try{i(n)}catch{}}clear(){this.handlers.clear()}};var Eu=H.scope("hooks"),ao="*",Ar=new Set;function ll(e,t,n){let o={widgetId:e,event:t,listener:n};return Ar.add(o),()=>{Ar.delete(o)}}function Au(e,t,n){let o=[...Ar];for(let i of o)if(Iu(i.widgetId,e.widgetId)&&!(i.event!==ao&&i.event!==t))try{i.listener(e,t,n)}catch(a){Eu.warn("hook listener threw",{event:t,error:a})}}function cl(e,t){let n=[];for(let o of Ru)n.push(t.on(o,i=>{Au(e,o,i)}));return()=>{for(let o of n)o()}}function Iu(e,t){return e===ao||e===t}var Ru=["open","close","expand","fullscreen","popOut","resize","message","send","stop","clear","selectConversation","suggestion","toggleHistory","formSubmit","toolResult","toolDecision","attach","removeAttachment","voiceStart","voiceStop","voiceCancel","localeChange","themeChange","textSizeChange","soundToggle","sidebarToggle","calloutDismiss","error","conversationStarted","visitorRebound","conversationRebound"];var Ue=new Map;function dl(e){e.debug!==void 0&&Pn(e.debug);let t=H.scope("mount");t.info("mount",{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let n=e,o=At(n),i=o.widgetId,a=Ue.get(i);a&&(t.debug("destroy existing instance at slot",{widgetId:i}),a.destroy());let s=_l(o),l=o.iframe?sl({position:kn(o.mode)},o.position,s,o.mode,e.target??null):Cn({position:kn(o.mode),target:e.target??null}),c=Rt(o.widgetId,o.storage),d=()=>{let S=c.loadUserPrefs().themeMode;Qi(l.hostElement,S?{...o,themeMode:S}:o)};d(),Tn(l.hostElement,s),l.hostElement.dataset.widgetId=i;let u=new io,_=S=>{u.emit("error",S),o.onError?.(S)},g=()=>{Oo(rn(ro,{onError:_},rn(rl,{bus:u,hostElement:l.hostElement,options:o})),l.appRoot)};g(),u.on("conversationStarted",S=>{S.config&&(n=er(n,S.config),o=At(n),Yi(l.hostElement,kn(o.mode)),d(),g())});let p=l.hostElement,m=null,h=S=>{S.debug!==void 0&&Pn(S.debug),n={...n,...S},o=At(n),d(),g()},y={widgetId:i,open:()=>dt(p,"open"),close:()=>dt(p,"close"),expand:()=>dt(p,"expand"),popOut:()=>dt(p,"popout"),openForm:S=>dt(p,"openForm",S),on:(S,C)=>u.on(S,C),update:S=>{t.debug("update",{patch:S}),h(S)},setUserContext:S=>{t.debug("setUserContext",{keys:Object.keys(S)}),h({userContext:{...n.userContext,...S}})},clearUserContext:()=>{t.debug("clearUserContext"),h({userContext:void 0})},setPageContext:S=>{t.debug("setPageContext",{keys:Object.keys(S)}),h({pageContext:{...n.pageContext,...S}})},clearPageContext:()=>{t.debug("clearPageContext"),h({pageContext:void 0})},setDebug:S=>{Pn(S),t.info("debug level set",{level:jo()})},debugLevel:()=>jo(),onLog:S=>Ai(S),destroy:()=>{t.info("destroy",{widgetId:i}),m?.(),u.clear(),Oo(null,l.appRoot),l.destroy(),Ue.get(i)===y&&Ue.delete(i)}};return m=cl(y,u),Ue.set(i,y),y}function Lu(e){let t=e.widgetId??"default",n=Ue.get(t);return n?(n.update(e),n):dl(e)}function Mu(e){if(e!==void 0){Ue.get(e)?.destroy();return}let t=[...Ue.values()];for(let n of t)n.destroy()}function Nu(e="default"){return Ue.get(e)??null}function Ou(){return[...Ue.values()]}function Du(e,t,n){return ll(e,t,n)}var $u="0.1.0",Hu=v;function _l(e){if(e.mode==="standalone")return"standalone";if(e.mode==="inline")return"inline";let t=Rt(e.widgetId,e.storage),{panelOpen:n,panelSize:o}=It(e,_t(),t.loadPanelOpen(),t.loadPanelSize());return En(e.mode,o,n)}
40
40
  //# sourceMappingURL=elements.cjs.js.map