@helpai/elements 0.41.1 → 0.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/elements.esm.js CHANGED
@@ -36,5 +36,5 @@ ${i}`:i;continue}o.startsWith("id:")&&(n=o.slice(3).trim())}if(!t||t==="[DONE]")
36
36
  `?"":n,e.pending="");continue;case"_":case"*":{if(e.token===19||e.token===30||e.token===31||e.token===14)break;let i=12,a=14,s=e.pending[0];if(s==="_"&&(i=13,a=15),e.pending.length===1){if(s===n){e.pending=o;continue}if(n!==" "&&n!==`
37
37
  `){Q(e),ee(e,i),e.pending=n;continue}}else{if(s===n){Q(e),ee(e,a),ee(e,i),e.pending="";continue}if(n!==" "&&n!==`
38
38
  `){Q(e),ee(e,a),e.pending=n;continue}}break}case"~":if(e.token!==19&&e.token!==16){if(e.pending==="~"){if(n==="~"){e.pending=o;continue}}else if(n!==" "&&n!==`
39
- `){Q(e),ee(e,16),e.pending=n;continue}}break;case"$":if(e.token!==19&&e.token!==16&&e.pending==="$")if(n==="$"){e.token=105,e.pending=o;continue}else{if(Y_(n.charCodeAt(0)))break;Q(e),ee(e,31),e.pending=n;continue}break;case"[":if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n!=="]"){Q(e),ee(e,17),e.pending=n;continue}break;case"!":if(e.token!==19&&n==="["){Q(e),ee(e,19),e.pending="";continue}break;case" ":if(e.pending.length===1&&n===" ")continue;break}if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n==="h"&&(e.pending===" "||e.pending==="")){e.text+=e.pending,e.pending=n,e.token=102;continue}e.text+=e.pending,e.pending=n}Q(e)}function Fr(e){return{add_token:Q_,end_token:Z_,add_text:eu,set_attr:tu,data:{nodes:[e,,,,,],index:0}}}function Q_(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 Z_(e){e.index-=1}function eu(e,t){e.nodes[e.index].appendChild(document.createTextNode(t))}function tu(e,t,n){e.nodes[e.index].setAttribute(K_(t),n)}function Co({textSig:e,doneSig:t}){let n=M(null);return w(()=>{let o=n.current;if(!o)return;o.classList.add(`${P.cssPrefix}-md`);let i=Fr(o),a=Hr(i),s=0,l=Ke(()=>{let u=e.value,_=t.value;u.length<s&&(o.replaceChildren(),i=Fr(o),a=Hr(i),s=0);let m=u.slice(s);m&&ve(a,m),s=u.length,_&&Us(a)}),c=new MutationObserver(u=>{for(let _ of u)for(let m of _.addedNodes){if(!(m instanceof HTMLElement))continue;let g=m.matches?.("a")?[m]:[...m.querySelectorAll?.("a")??[]];for(let f of g)Ws(f)}});c.observe(o,{childList:!0,subtree:!0});for(let u of o.querySelectorAll("a"))Ws(u);let d=u=>{let _=u.target?.closest?.("a");if(!_||!(_ instanceof HTMLAnchorElement))return;let m=_.getAttribute("href")??"";!m||m.startsWith("#")||(u.preventDefault(),window.open(m,"_blank","noopener,noreferrer"))};return o.addEventListener("click",d),()=>{l(),c.disconnect(),o.removeEventListener("click",d)}},[e,t]),r("div",{ref:n})}function Gs({text:e}){let t=xe(()=>H(e),[e]),n=xe(()=>H(!0),[]);return r(Co,{textSig:t,doneSig:n})}function Ws(e){let t=e.getAttribute("href")??"";if(!t||t.startsWith("#"))return;e.target!=="_blank"&&(e.target="_blank");let n=new Set((e.rel||"").split(/\s+/).filter(Boolean));n.add("noopener"),n.add("noreferrer"),e.rel=[...n].join(" ")}var ye=P.cssPrefix;function Vs(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/[-_]+/g," ")}function Ks({part:e,strings:t,active:n,onDecision:o}){let i=re(()=>e.approvalSig.value),a=re(()=>e.inputSig.value),s=at("");if(i.value?.approved!==void 0){let d=i.value;return r("div",{class:`${ye}-tool-approval ${ye}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${ye}-tool-decided-label`,"data-approved":d?.approved?"true":"false",children:d?.approved?t.approved:t.rejected}),r("strong",{class:`${ye}-tool-title`,children:Vs(e.toolName)}),d?.reason?r("span",{class:`${ye}-tool-decided-value`,children:d.reason}):null]})}let c=ou(a.value);return r("div",{class:`${ye}-tool-approval`,"data-testid":S.toolApproval,children:[r("div",{class:`${ye}-tool-head`,children:[r("span",{class:`${ye}-tool-badge`,children:t.approvalRequired}),r("strong",{class:`${ye}-tool-title`,children:Vs(e.toolName)})]}),c?r("pre",{class:`${ye}-tool-args`,children:c}):null,n?r(ne,{children:[r("input",{class:`${ye}-field-input`,value:s.value,placeholder:t.approvalReason,onInput:d=>{s.value=d.target.value}}),r("div",{class:`${ye}-form-actions`,children:[r("button",{type:"button",class:`${ye}-tool-reject`,onClick:()=>o(e.toolCallId,!1,s.value.trim()||void 0),"data-testid":S.toolReject,children:t.reject}),r("button",{type:"button",class:`${ye}-tool-approve`,onClick:()=>o(e.toolCallId,!0,s.value.trim()||void 0),"data-testid":S.toolApprove,children:t.approve})]})]}):r("p",{class:`${ye}-tool-stale-note`,children:t.stepNoLongerActive})]})}function ou(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 js(e){let t=e&&typeof e=="object"?e:{},n=t.responseType;return{title:an(t.title),question:an(t.question)??"Please provide the missing information.",description:an(t.description),placeholder:an(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:qs(t.minSelections),maxSelections:qs(t.maxSelections),validationHint:an(t.validationHint)}}function Xs(e){if(e.responseType==="confirmation")return[];let t=(e.choices??[]).map(ru).filter(i=>i!==null),n="textarea";e.responseType==="single-choice"&&t.length>0?n="radio":e.responseType==="multi-choice"&&(n="multiselect");let o=n==="multiselect"?e.defaultValues?.join(", "):e.defaultValues?.[0];return[{name:"answer",label:e.question,type:n,placeholder:e.placeholder,required:e.required??!0,defaultValue:o,options:t.length>0?t:void 0,allowOther:e.allowOther,validationHint:e.validationHint,validation:n==="multiselect"?{minSelections:e.minSelections,maxSelections:e.maxSelections}:void 0}]}function ru(e){return typeof e=="string"?e?{value:e,label:e}:null:e&&typeof e.value=="string"&&e.value?{value:e.value,label:e.label??e.value,description:e.description}:null}function an(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function qs(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}var Pe=P.cssPrefix;function Ys({part:e,strings:t,active:n,onSubmit:o,onDecision:i}){let a=re(()=>e.stateSig.value),s=re(()=>e.approvalSig.value),l=re(()=>js(e.inputSig.value)),c=a.value==="output"||a.value==="error"||s.value?.approved!==void 0,d=s.value!==void 0,u=(g,f)=>{d?i(e.toolCallId,f,g):l.value.responseType==="confirmation"?o(e.toolCallId,{confirmed:f}):o(e.toolCallId,f?{answer:g}:{})};if(c)return r(iu,{part:e,strings:t});if(!n)return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-stale`,"data-testid":S.toolAskInput,children:[r(Js,{strings:t,title:l.value.title??l.value.question}),r("p",{class:`${Pe}-tool-stale-note`,children:t.stepNoLongerActive})]});let _=l.value,m=_.responseType==="confirmation";return r("div",{class:`${Pe}-tool-ask-input`,"data-testid":S.toolAskInput,children:[r(Js,{strings:t,title:_.title}),_.description?r("p",{class:`${Pe}-tool-desc`,children:_.description}):null,m?r("p",{class:`${Pe}-tool-question`,children:_.question}):null,m?r("div",{class:`${Pe}-form-actions`,children:[r("button",{type:"button",class:`${Pe}-form-skip`,onClick:()=>u(void 0,!1),"data-testid":S.toolInputSkip,children:t.reject}),r("button",{type:"button",class:`${Pe}-form-submit`,onClick:()=>u(void 0,!0),"data-testid":S.toolInputSubmit,children:t.approve})]}):r(ko,{fields:Xs(_),strings:t,submitLabel:t.inputSubmit,onSubmit:g=>u(g.answer??Object.values(g).join(", "),!0),skipLabel:_.required===!1?t.inputSkip:void 0,onSkip:_.required===!1?()=>u(void 0,!1):void 0,submitTestId:S.toolInputSubmit,skipTestId:S.toolInputSkip})]})}function Js({strings:e,title:t}){return r("div",{class:`${Pe}-tool-head`,children:[r("span",{class:`${Pe}-tool-badge`,children:e.inputRequired}),t?r("strong",{class:`${Pe}-tool-title`,children:t}):null]})}function iu({part:e,strings:t}){let n=re(()=>e.outputSig.value),o=re(()=>e.approvalSig.value),i=o.value?.approved!==void 0?o.value.reason??"":au(n.value),a=o.value?.approved===!1;return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${Pe}-tool-decided-label`,children:a?t.inputSkip:t.inputSubmitted}),r("span",{class:`${Pe}-tool-decided-value`,children:a?"":i||t.inputSubmitted})]})}function au(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 Qs({part:e,strings:t}){let n=P.cssPrefix;return r("span",{class:`${n}-tool-chip`,role:"status",children:[r("span",{children:[t.usedTool,":"]}),r("strong",{children:e.toolName})]})}var Ae=P.cssPrefix;function Zs({message:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:a=!1,tool:s}){let c=re(()=>e.partsSig.value).value,d=re(()=>e.partsSig.value.some(h=>h.kind==="text"&&h.textSig.value.length>0)),u=re(()=>o&&e.partsSig.value.some(h=>h.kind==="reasoning")),_=e.role==="assistant"&&e.status==="streaming",m=n==="buffered"&&_,g=_&&!d.value,f=_&&!m&&!(u.value&&g),v=su(e.createdAt);return r("div",{class:`${Ae}-bubble-row`,"data-role":e.role,"data-testid":he(S.messageBubble,e.id),children:r("div",{class:`${Ae}-bubble-col`,children:[r("div",{class:`${Ae}-bubble`,children:[m?r(pu,{label:t.loading}):c.map(h=>r(lu,{part:h,active:g,strings:t,showReasoning:o,showToolCalls:i,interactive:a,tool:s},_u(h))),f&&r(uu,{}),e.status==="error"&&e.errorText?r("div",{class:`${Ae}-error`,role:"alert",children:r("span",{children:e.errorText})}):null]}),v?r("time",{class:`${Ae}-bubble-time`,dateTime:v.iso,title:v.full,children:v.short}):null]})})}function su(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 lu({part:e,active:t,strings:n,showReasoning:o,showToolCalls:i,interactive:a,tool:s}){switch(e.kind){case"text":return r(Co,{textSig:e.textSig,doneSig:e.doneSig});case"reasoning":return o?r(du,{part:e,active:t,strings:n}):null;case"tool":return r(cu,{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 cu({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(so(e.toolName)||a.value==="awaiting-input")return r(Ys,{part:e,strings:t,active:o,onSubmit:i.onResult,onDecision:i.onDecision});if(s.value||a.value==="awaiting-approval")return r(Ks,{part:e,strings:t,active:o,onDecision:i.onDecision})}return n?r(Qs,{part:e,strings:t}):null}function du({part:e,active:t,strings:n}){return r("details",{class:`${Ae}-reasoning`,open:t,"data-active":t?"true":void 0,children:[r("summary",{class:`${Ae}-reasoning-summary`,children:r("span",{class:`${Ae}-reasoning-label`,children:t?n.thinking:n.thoughts})}),r("div",{class:`${Ae}-reasoning-body`,children:r(Co,{textSig:e.textSig,doneSig:e.doneSig})})]})}function _u(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 uu(){return r("span",{class:`${Ae}-typing`,"aria-hidden":"true",children:[r("span",{}),r("span",{}),r("span",{})]})}function pu({label:e}){return r("span",{class:`${Ae}-loading`,role:"status",children:[r("span",{class:`${Ae}-loading-spinner`,"aria-hidden":"true"}),r("span",{class:`${Ae}-loading-label`,children:e})]})}var Lt=P.cssPrefix,Br=120,fu=350,mu=1200;function el({messagesSig:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,loading:a,idle:s,tool:l,form:c,formMarkers:d,onFillForm:u}){let _=M(null),m=re(()=>e.value),[g,f]=T(!1),[v,h]=T(!1),I=M(!1),b=M(!1),C=M(!1),N=M(0),B=()=>C.current||performance.now()-N.current<fu,V=M(0),$=y=>{V.current=performance.now(),y.scrollTop=y.scrollHeight},de=m.value[0]?.id;hr(()=>{let y=_.current;if(!y||m.value.length===0||(I.current=!0,!m.value.some(Xe=>Xe.role==="user")))return;let D=()=>$(y);D();let me=new ResizeObserver(D);me.observe(y);let we=new MutationObserver(D);we.observe(y,{childList:!0,subtree:!0,characterData:!0});let Ce=setTimeout(()=>{me.disconnect(),we.disconnect()},300);return()=>{me.disconnect(),we.disconnect(),clearTimeout(Ce)}},[de]);let z=M(0);w(()=>{let y=_.current,D=m.value,me=z.current;if(z.current=D.length,!y||!I.current)return;if(D.slice(me).some(Ce=>Ce.role==="user")){b.current=!1,$(y);return}if(b.current||B())return;y.scrollHeight-y.scrollTop-y.clientHeight<Br&&$(y)},[m.value.length]),w(()=>{let y=_.current;if(!y)return;let D=m.value.at(-1);if(!D)return;let me=()=>{if(b.current||B())return;y.scrollHeight-y.scrollTop-y.clientHeight<Br*2&&$(y)};if(D.status!=="streaming"){let Ce=requestAnimationFrame(me);return()=>cancelAnimationFrame(Ce)}me();let we=new MutationObserver(me);return we.observe(y,{childList:!0,subtree:!0,characterData:!0}),()=>we.disconnect()},[m.value]);let K=c?.form.id;hr(()=>{let y=_.current;!y||!K||b.current||m.value.some(D=>D.role==="user")&&$(y)},[K]),w(()=>{let y=_.current;if(!y)return;let D=()=>f(y.scrollHeight-y.scrollTop-y.clientHeight>Br*2),me,we=()=>{D(),performance.now()-V.current>150&&(b.current=y.scrollHeight-y.scrollTop-y.clientHeight>8),h(!0),clearTimeout(me),me=setTimeout(()=>h(!1),mu)},Ce=()=>{b.current=!0},Xe=Je=>{Je.deltaY<0&&Ce()},Nt=0,ut=Je=>{Nt=Je.touches[0]?.clientY??0,C.current=!0},Dt=Je=>{(Je.touches[0]?.clientY??0)>Nt+4&&Ce()},Re=()=>{C.current=!1,N.current=performance.now()},Ot=()=>{C.current=!0};return y.addEventListener("scroll",we,{passive:!0}),y.addEventListener("wheel",Xe,{passive:!0}),y.addEventListener("touchstart",ut,{passive:!0}),y.addEventListener("touchmove",Dt,{passive:!0}),y.addEventListener("touchend",Re,{passive:!0}),y.addEventListener("touchcancel",Re,{passive:!0}),y.addEventListener("pointerdown",Ot,{passive:!0}),window.addEventListener("pointerup",Re,{passive:!0}),window.addEventListener("pointercancel",Re,{passive:!0}),D(),()=>{y.removeEventListener("scroll",we),y.removeEventListener("wheel",Xe),y.removeEventListener("touchstart",ut),y.removeEventListener("touchmove",Dt),y.removeEventListener("touchend",Re),y.removeEventListener("touchcancel",Re),y.removeEventListener("pointerdown",Ot),window.removeEventListener("pointerup",Re),window.removeEventListener("pointercancel",Re),clearTimeout(me)}},[]);let Ue=()=>{let y=_.current;y&&(b.current=!1,$(y))},ke=[],k="",J=m.value.at(-1)?.id,Z=[...d??[]].toSorted((y,D)=>(y.createdAt??1/0)-(D.createdAt??1/0)),pe=y=>r(Os,{marker:y,strings:t,onFill:!c&&u?()=>u(y.formId):void 0},y.key),fe=y=>{for(let D=Z[0];D?.createdAt!==void 0&&!(y!==void 0&&D.createdAt>y);D=Z[0])Z.shift(),ke.push(pe(D))};for(let y of m.value){fe(y.createdAt);let D=gu(y.createdAt);D&&D!==k&&(ke.push(r("div",{class:`${Lt}-date-divider`,children:r("span",{class:`${Lt}-date-pill`,title:hu(y.createdAt),children:vu(y.createdAt,t)})},`day:${D}`)),k=D),ke.push(r(Zs,{message:y,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:!!s&&y.id===J,tool:l},y.id))}for(let y of Z)ke.push(pe(y));return r("div",{class:`${Lt}-list-wrap`,children:[r("div",{ref:_,class:`${Lt}-list`,role:"log","aria-live":"polite","aria-relevant":"additions text","data-scrolling":v?"true":void 0,children:[a&&m.value.length===0?r("div",{class:`${Lt}-list-loading`,role:"status",children:t.conversationLoading}):null,ke,c?r(Ds,{form:c.form,strings:t,onSubmit:c.onSubmit,onSkip:c.onSkip}):null]}),g?r("button",{type:"button",class:`${Lt}-jump`,onClick:Ue,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":S.scrollToBottom,children:r(ps,{})}):null]})}function gu(e){if(typeof e!="number"||!Number.isFinite(e))return"";let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function hu(e){if(typeof e!="number"||!Number.isFinite(e))return"";try{return new Date(e).toLocaleDateString(void 0,{dateStyle:"full"})}catch{return""}}function vu(e,t){let n=new Date(e),o=a=>new Date(a.getFullYear(),a.getMonth(),a.getDate()).getTime(),i=Math.round((o(new Date)-o(n))/864e5);return i<=0?t.dateToday:i===1?t.dateYesterday:i<7?n.toLocaleDateString(void 0,{weekday:"long"}):n.toLocaleDateString(void 0,{month:"long",day:"numeric",year:"numeric"})}var bu=["today","yesterday","lastWeek","older"];function xu(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return"older";let o=Math.floor((tl(e)-tl(n))/(1440*60*1e3));return o<=0?"today":o===1?"yesterday":o<7?"lastWeek":"older"}function nl(e,t){let n=new Map;for(let o of t){let i=xu(e,o.lastMessageAt),a=n.get(i);a?a.push(o):n.set(i,[o])}return bu.filter(o=>n.has(o)).map(o=>({bucket:o,conversations:n.get(o)}))}function tl(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}var Pu=U.scope("history"),yu={today:"dateToday",yesterday:"dateYesterday",lastWeek:"dateLastWeek",older:"dateOlder"};function Su(e,t,n){let o=Date.parse(e);return Number.isFinite(o)?new Date(o).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:"numeric",minute:"2-digit"}).format(o):t-o<10080*60*1e3?new Intl.DateTimeFormat(n,{weekday:"short"}).format(o):new Intl.DateTimeFormat(n,{month:"short",day:"numeric"}).format(o):""}function To({transport:e,strings:t,visitorId:n,onSelect:o,onNewConversation:i}){let a=P.cssPrefix,s=e.peekConversations({visitorId:n}),[l,c]=T(s?"loaded":"loading"),[d,u]=T(s?.conversations??[]);w(()=>{let v=!1;return e.listConversations({visitorId:n}).then(h=>{v||(u(h.conversations??[]),c("loaded"))}).catch(h=>{v||(Pu.warn("listConversations failed",{err:h}),c("error"))}),()=>{v=!0}},[e,n]);let _=i?r("div",{class:`${a}-history-footer`,children:r("button",{type:"button",class:`${a}-history-new`,onClick:i,"data-testid":S.sidebarNewConversation,children:[r(qa,{}),t.newConversation]})}):null;if(l==="loading")return r(ne,{children:[r("div",{class:`${a}-history`,"aria-busy":"true","aria-label":t.historyLoading,children:r("div",{class:`${a}-history-group`,"aria-hidden":"true",children:[r("div",{class:`${a}-history-heading`,children:r("span",{class:`${a}-history-skeleton-line ${a}-skeleton-heading`})}),r("div",{class:`${a}-history-card`,children:[0,1,2].map(v=>r("div",{class:`${a}-history-skeleton-item`,children:[r("span",{class:`${a}-history-skeleton-avatar`}),r("span",{class:`${a}-history-skeleton-body`,children:[r("span",{class:`${a}-history-skeleton-line ${a}-skeleton-title`}),r("span",{class:`${a}-history-skeleton-line ${a}-skeleton-preview`})]})]},v))})]})}),_]});if(l==="error"||d.length===0)return r(ne,{children:[r("div",{class:`${a}-history-empty`,children:t.historyEmpty}),_]});let m=Date.now(),g=typeof navigator<"u"?navigator.language:"en",f=nl(m,d);return r(ne,{children:[r("div",{class:`${a}-history`,role:"list",children:f.map(v=>r("div",{class:`${a}-history-group`,children:[r("div",{class:`${a}-history-heading`,children:t[yu[v.bucket]]}),r("div",{class:`${a}-history-card`,children:v.conversations.map(h=>r("button",{type:"button",role:"listitem",class:`${a}-history-item`,onClick:()=>o(h),"data-closed":h.canContinue?void 0:"true","data-unread":(h.unreadCount??0)>0?"true":void 0,"data-testid":he(S.historyItem,h.conversationId),children:[r("span",{class:`${a}-history-avatar`,"aria-hidden":"true",children:r(Cr,{})}),r("span",{class:`${a}-history-body`,children:[r("span",{class:`${a}-history-row`,children:[r("span",{class:`${a}-history-title`,children:h.title}),r("span",{class:`${a}-history-time`,children:Su(h.lastMessageAt,m,g)})]}),r("span",{class:`${a}-history-row`,children:[r("span",{class:`${a}-history-preview`,children:h.preview??(h.canContinue?t.historyContinue:t.conversationClosed)}),(h.unreadCount??0)>0?r("span",{class:`${a}-history-dot`}):null]})]})]},h.conversationId))})]},v.bucket))}),_]})}var ol=P.cssPrefix;function rl({suggestions:e,onPick:t}){return e.length===0?null:r("div",{class:`${ol}-suggestions`,role:"group","aria-label":"Suggested replies",children:e.map((n,o)=>r("button",{type:"button",class:`${ol}-suggestion`,onClick:()=>t(n),"data-testid":he(S.suggestion,o),children:n.label},n.id))})}var Se=P.cssPrefix;function il(e){let{options:t,onClose:n}=e,o=t.strings,i=M(null);w(()=>{let c=i.current;if(!c)return;let d=bo(c),u=_=>{_.key==="Escape"&&n?.()};return c.addEventListener("keydown",u),()=>{d(),c.removeEventListener("keydown",u)}},[n]);let a=M(null),s=F(c=>{a.current?.attachFromDrop(c)},[]),{visible:l}=yo({containerRef:i,onDrop:s});return ho(i.current,t.mode==="modal"),r("div",{ref:i,class:`${Se}-panel`,role:"dialog","aria-modal":"false","aria-label":o.panelTitle,style:{position:"relative"},"data-testid":S.panel,children:[r(zr,{...e,containerEl:i.current,dragOver:l,composerAttachApiRef:a}),r(Ur,{poweredBy:e.options.poweredBy})]})}function zr(e){let{options:t,transport:n,feedback:o,bus:i,panelSize:a,view:s,canSend:l,isStreaming:c,loadingMessages:d,messagesSig:u,agent:_,suggestions:m,initialWidgetSize:g,visitorId:f,onClose:v,onBack:h,onClear:I,onToggleHistory:b,onSelectHistoryConversation:C,onNewConversation:N,onWidgetSizeChange:B,onSend:V,onStop:$,onSuggestion:de,activeForm:z,formMarkers:K,onFormSubmit:Ue,onFormSkip:ke,onFormFill:k,tool:J,containerEl:Z,dragOver:pe,composerAttachApiRef:fe}=e,y=t.strings,D;return z?D=null:l?D=r(ne,{children:[r(rl,{suggestions:m,onPick:de}),r(Is,{options:t,transport:n,feedback:o,bus:i,isStreaming:c,onSend:V,onStop:$,attachApiRef:fe})]}):D=r(wu,{label:y.conversationClosed,ctaLabel:y.startNewConversation,onNewConversation:I}),r(ne,{children:[s==="history"?r(ku,{strings:y,onBack:b,onClose:v,showClose:vo(t.mode,a,t.actions)}):r("header",{class:`${Se}-header`,"data-testid":S.panelHeader,children:[h?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:h,"aria-label":y.moduleBack,title:y.moduleBack,children:r(tn,{})}):null,_?r(Cs,{agent:_,strings:y}):r("h1",{children:y.panelTitle}),r(Be,{panelProps:e,variant:"chat"})]}),s==="history"?r(To,{transport:n,strings:y,visitorId:f,onSelect:me=>C(me.conversationId),onNewConversation:N}):r(ne,{children:[r(As,{visible:pe,strings:y}),r(el,{messagesSig:u,strings:y,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,loading:d,idle:!c,tool:J,form:z?{form:z,onSubmit:Ue,onSkip:ke}:null,formMarkers:K,onFillForm:k}),D,r(Cu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?r(go,{panelEl:Z,resize:t.size.resize,position:t.position,initialSize:g,onSizeChange:B,strings:y}):null]})}function ku({strings:e,onBack:t,onClose:n,showClose:o}){return r("header",{class:`${Se}-header`,children:[r("button",{type:"button",class:`${Se}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:r(tn,{})}),r("h1",{children:e.historyTitle}),o?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null]})}function wu({label:e,ctaLabel:t,onNewConversation:n}){return r("div",{class:`${Se}-readonly-banner`,role:"note",children:[r("span",{class:`${Se}-readonly-label`,children:e}),r("button",{type:"button",class:`${Se}-readonly-cta`,onClick:n,children:t})]})}function Cu({disclaimer:e}){return e?r("div",{class:`${Se}-composer-footer`,children:r("div",{class:`${Se}-disclaimer`,children:e})}):null}function Ur({poweredBy:e}){return e?r("div",{class:`${Se}-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(ne,{children:[e?r("img",{class:`${Se}-poweredby-logo`,src:e,alt:"",loading:"lazy"}):null,t?r("span",{children:t}):null]});return n?r("a",{class:`${Se}-poweredby`,href:n,target:"_blank",rel:"noopener noreferrer",children:o}):r("span",{class:`${Se}-poweredby`,children:o})}function al(e){let t=M(e);t.current=e;let n=M(null);return n.current??(n.current=Eu(t)),n.current}function Eu(e){let t=H(null),n=new Set,o=c=>`${e.current.conversationId()??""}:${c}`,i=c=>c.frequency==="always"?!1:c.frequency==="conversation"?n.has(o(c.id)):c.id in e.current.persistence.loadFormsDone(),a=(c,d)=>{if(t.value)return;let u=e.current;if(c==="manual"){let _=u.forms.list.find(m=>m.id===d);_&&(t.value={form:_,trigger:"manual"});return}for(let _ of u.forms.byTrigger[c]??[]){let m=_.triggers.find(g=>g.kind===c);if(!(!m||!Iu(m,u)||i(_)||!Au(_,u))){t.value={form:_,trigger:c};return}}},s=(c,d)=>{let u=t.value;if(!u)return;t.value=null;let{form:_,trigger:m}=u;_.frequency==="conversation"?n.add(o(_.id)):_.frequency!=="always"&&e.current.persistence.saveFormDone(_.id),e.current.onComplete(_,m,c,d)};return{activeForm:t,fire:a,refresh:()=>{let c=t.value;if(!c)return;let d=e.current.forms.list.find(u=>u.id===c.form.id);d&&d!==c.form&&(t.value={form:d,trigger:c.trigger})},complete:c=>s(c,!1),skip:()=>s({},!0)}}function Iu(e,t){return e.kind==="after-messages"?t.messageCount()>=Number(e.param??0):e.kind==="page-area"?t.pageArea()===e.param:!0}function Au(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 sl(e){let t=P.cssPrefix,{site:n,blocks:o,strings:i,collapsed:a}=e,s=o?.navigation??[],l=o?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return r("aside",{class:`${t}-sidebar`,"data-collapsed":a?"true":"false","data-testid":S.sidebar,children:[r("div",{class:`${t}-sidebar-header`,children:[r(Ru,{site:n}),r("button",{type:"button",class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?"false":"true",title:c,onClick:e.onToggleCollapsed,"data-testid":S.sidebarToggle,children:r(Lu,{collapsed:a})})]}),a?null:r(ne,{children:[s.length>0?r("nav",{class:`${t}-sidebar-section`,"data-section":"navigation",children:r(Mu,{items:s})}):null,l.length>0?r("div",{class:`${t}-sidebar-section`,"data-section":"link-cards",children:r(Nu,{items:l})}):null,e.showConversations?r("div",{class:`${t}-sidebar-conversations`,children:r(To,{transport:e.transport,strings:e.strings,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function Ru({site:e}){let t=P.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??P.name})}function Lu({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 Mu({items:e}){let t=P.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 Nu({items:e}){let t=P.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 ll=P.cssPrefix;function cl(e){return r("main",{class:`${ll}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?"true":"false",children:[r(sl,{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:`${ll}-page-chat`,"aria-label":"Chat",children:e.children})]})}var dl=e=>Object.fromEntries(e.map(t=>[t,[]]));function _l(e,t,n){let o=H({activeTab:e,stacks:dl(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:dl(t)}}}}var ul=e=>e.stacks[e.activeTab]??[],pl=e=>ul(e).at(-1),fl=e=>ul(e).length===0;var ml={Icon:nn};var tt=P.cssPrefix;function Eo({title:e,actions:t}){return r("header",{class:`${tt}-back-header`,"data-variant":"title",children:[r("span",{class:`${tt}-back-spacer`,"aria-hidden":"true"}),r("h1",{class:`${tt}-back-title`,children:e}),t??r("span",{class:`${tt}-back-spacer`,"aria-hidden":"true"})]})}function Io({title:e,backLabel:t,onBack:n,actions:o,testid:i}){return r("header",{class:`${tt}-back-header`,"data-testid":i,children:[r("button",{type:"button",class:`${tt}-icon-btn`,onClick:n,"aria-label":t,title:t,children:r(tn,{})}),r("h1",{class:`${tt}-back-title`,children:e}),o??r("span",{class:`${tt}-back-spacer`,"aria-hidden":"true"})]})}var Mt=P.cssPrefix;function gl({placeholder:e,onActivate:t}){return r("button",{type:"button",class:`${Mt}-home-search`,onClick:t,"data-testid":S.homeSearch,children:[r("span",{class:`${Mt}-home-search-text`,children:e}),r("span",{class:`${Mt}-home-search-icon`,"aria-hidden":"true",children:r(Er,{})})]})}function hl({placeholder:e,value:t,onInput:n}){return r("div",{class:`${Mt}-home-search`,"data-input":"true",children:[r("input",{type:"search",class:`${Mt}-home-search-input`,placeholder:e,value:t,onInput:o=>n(o.currentTarget.value),"data-testid":S.helpSearch}),r("span",{class:`${Mt}-home-search-icon`,"aria-hidden":"true",children:r(Er,{})})]})}var sn=P.cssPrefix;function Ao({title:e,subtitle:t,onClick:n,testid:o}){return r("button",{type:"button",class:`${sn}-list-row`,onClick:n,"data-testid":o,children:[r("span",{class:`${sn}-list-row-body`,children:[r("span",{class:`${sn}-list-row-title`,children:e}),t?r("span",{class:`${sn}-list-row-sub`,children:t}):null]}),r("span",{class:`${sn}-list-row-chevron`,"aria-hidden":"true",children:r(It,{})})]})}var vl=P.cssPrefix;function De({tone:e="info",message:t,onRetry:n,strings:o}){return r("div",{class:`${vl}-module-empty`,role:e==="error"?"alert":"status","aria-live":"polite",children:[r("span",{children:t}),n?r("button",{type:"button",class:`${vl}-module-retry`,onClick:n,children:o.errorRetry}):null]})}var _t=P.cssPrefix,Du=U.scope("help"),Ou=(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 bl(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 Hu(e,t){let n=t.toLowerCase().trim();return n?e.map(o=>({item:o,score:Math.max(bl(n,o.title)*2,bl(n,o.description??""))})).filter(o=>o.score>0).toSorted((o,i)=>i.score-o.score).map(o=>o.item):[]}function xl({article:e,nav:t}){return r(Ao,{title:e.title,subtitle:e.description,onClick:()=>Ou(t,e),testid:he(S.helpArticle,e.id)})}function Fu({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(""),[f,v]=T(0);w(()=>{let b=!1;return l("loading"),e.listContent({tags:a,sortBy:"order",limit:100}).then(C=>{b||(_(C.items??[]),l("loaded"))}).catch(C=>{b||(Du.warn("listContent (help) failed",{err:C}),d(st(C,t)),l("error"))}),()=>{b=!0}},[e,a,f]);let h=xe(()=>Hu(u,m),[u,m]);function I(){return m.trim().length>0?h.length===0?r(De,{message:t.helpSearchEmpty,strings:t}):r("div",{class:`${_t}-help-card`,children:h.map(b=>r(xl,{article:b,nav:o},b.id))}):s==="loading"?r(De,{message:t.helpLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>v(b=>b+1),strings:t}):u.length===0?r(De,{message:t.helpEmpty,strings:t}):$u(u).map(([b,C])=>r("section",{class:`${_t}-help-group`,children:[b?r("h2",{class:`${_t}-help-section-title`,children:b}):null,r("div",{class:`${_t}-help-card`,children:C.map(N=>r(xl,{article:N,nav:o},N.id))})]},b))}return r("div",{class:`${_t}-module`,children:[r(Eo,{title:t.helpTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${_t}-module-pad`,children:r(hl,{placeholder:t.helpSearchPlaceholder,value:m,onInput:g})}),r("div",{class:`${_t}-help-list`,children:I()})]})}var Pl={Icon:Tr,Root:e=>r(Fu,{...e})};var yl=P.cssPrefix;function Wr({onClick:e,children:t,testid:n}){return e?r("button",{type:"button",class:`${yl}-home-card`,"data-interactive":"true",onClick:e,"data-testid":n,children:t}):r("div",{class:`${yl}-home-card`,"data-testid":n,children:t})}var oe=P.cssPrefix,Sl=U.scope("home");function Bu(e){let t=e.options.userContext?.name,n=e.config.greetingText?be(e.strings,e.config.greetingText):void 0;return n?{title:t?n.replace("{name}",t):n.replace(/\s*\{name\}\s*/," ").trim(),subtitle:e.strings.homeGreetingLead}:t?{title:e.strings.homeGreetingNamed.replace("{name}",t),subtitle:e.strings.homeGreetingLead}:{title:e.strings.homeGreeting}}var zu=(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 Uu(e){let{transport:t,strings:n,config:o,nav:i,panelProps:a}=e,[s,l]=T(null),[c,d]=T([]),u=o.contentTags?.join(",");w(()=>{if(!o.showRecentConversations)return;let h=!1;return t.listConversations({limit:1}).then(I=>!h&&l(I.conversations?.[0]??null)).catch(I=>!h&&Sl.warn("listConversations (home) failed",{err:I})),()=>{h=!0}},[t,o.showRecentConversations]),w(()=>{if(!o.contentTags?.length)return;let h=!1;return t.listContent({tags:o.contentTags,limit:6}).then(I=>!h&&d(I.items??[])).catch(I=>!h&&Sl.warn("listContent (home) failed",{err:I})),()=>{h=!0}},[t,u]);let _=Bu(e),m=o.userAvatars??[],g=o.status,f=g?.text?be(n,g.text):n.homeStatus,v=o.contentBlockTitle?be(n,o.contentBlockTitle):n.homeContentTitle;return r("div",{class:`${oe}-module ${oe}-home`,"data-testid":S.homeView,children:r("div",{class:`${oe}-home-scroll`,children:[r("div",{class:`${oe}-home-hero`,children:[r("div",{class:`${oe}-home-hero-top`,children:[o.brandName?r("span",{class:`${oe}-home-brand`,"data-testid":S.homeBrand,children:o.brandName}):r("span",{class:`${oe}-home-brand-spacer`,"aria-hidden":"true"}),r("div",{class:`${oe}-home-hero-actions`,children:[m.length>0?r("div",{class:`${oe}-home-avatars`,children:m.map(h=>r("span",{class:`${oe}-home-avatar`,title:h.role?`${h.name} \xB7 ${h.role}`:h.name,children:h.avatar?r("img",{src:h.avatar,alt:"",loading:"lazy"}):r("span",{children:xo(h.name)})},h.name))}):null,r(Be,{panelProps:a,variant:"plain"})]})]}),o.showGreeting!==!1?r(ne,{children:[r("h1",{class:`${oe}-home-greeting`,"data-testid":S.homeGreeting,children:_.title}),_.subtitle?r("p",{class:`${oe}-home-lead`,children:_.subtitle}):null]}):null]}),r("div",{class:`${oe}-home-cards`,children:[o.showSearchBar!==!1?r(gl,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout("help")}):null,s?r(Wr,{onClick:()=>i.selectConversation(s.conversationId),testid:S.homeRecent,children:r("div",{class:`${oe}-home-recent-row`,"data-unread":(s.unreadCount??0)>0?"true":void 0,children:[r("span",{class:`${oe}-home-recent-avatar`,"aria-hidden":"true",children:r(nn,{})}),r("span",{class:`${oe}-home-recent-body`,children:[r("span",{class:`${oe}-home-recent-title`,children:s.title}),s.preview?r("span",{class:`${oe}-home-recent-preview`,children:s.preview}):null]}),(s.unreadCount??0)>0?r("span",{class:`${oe}-home-recent-dot`,"aria-label":"Unread"}):null]})}):null,g?r(Wr,{onClick:g.url?()=>i.push({kind:"iframe",url:g.url,title:f}):void 0,children:r("div",{class:`${oe}-home-status`,"data-level":g.level??"operational",children:[r("span",{class:`${oe}-home-status-icon`,"aria-hidden":"true",children:r(ms,{})}),r("span",{class:`${oe}-home-status-text`,children:f})]})}):null,c.length>0?r("section",{class:`${oe}-home-content`,children:[r("div",{class:`${oe}-home-content-title`,children:v}),r("div",{class:`${oe}-home-content-list`,children:c.map(h=>r(Ao,{title:h.title,subtitle:h.description,onClick:()=>zu(i,h),testid:he(S.homeContentRow,h.id)},h.id))})]}):null]})]})})}var kl={Icon:gs,Root:e=>r(Uu,{...e})};var nt=P.cssPrefix,Wu=U.scope("news");function Gu({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(0);w(()=>{let v=!1;return l("loading"),e.listContent({tags:a,sortBy:"publishedAt",sortOrder:"desc"}).then(h=>{v||(_(h.items??[]),l("loaded"))}).catch(h=>{v||(Wu.warn("listContent (news) failed",{err:h}),d(st(h,t)),l("error"))}),()=>{v=!0}},[e,a,m]);function f(){return s==="loading"?r(De,{message:t.newsLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>g(v=>v+1),strings:t}):u.length===0?r(De,{message:t.newsEmpty,strings:t}):r("div",{class:`${nt}-news-list`,children:u.map(v=>r("button",{type:"button",class:`${nt}-news-card`,onClick:()=>o.push({kind:"content",id:v.id,title:v.title}),"data-testid":he(S.newsItem,v.id),children:[v.image?r("img",{class:`${nt}-news-hero`,src:v.image,alt:"",loading:"lazy"}):null,r("span",{class:`${nt}-news-body`,children:[r("span",{class:`${nt}-news-title`,children:v.title}),v.description?r("span",{class:`${nt}-news-summary`,children:v.description}):null]})]},v.id))})}return r("div",{class:`${nt}-module`,children:[r(Eo,{title:t.newsTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${nt}-module-scroll`,children:f()})]})}var wl={Icon:hs,Root:e=>r(Gu,{...e})};var Ro={chat:ml,home:kl,help:Pl,news:wl};var ln=P.cssPrefix;function Cl({modules:e,activeTab:t,strings:n,unreadCount:o,onSelect:i}){return r("nav",{class:`${ln}-tabbar`,role:"tablist","aria-label":n.panelTitle,children:e.map(a=>{let s=Ro[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:`${ln}-tab`,onClick:()=>i(a.id),"data-testid":he(S.tab,a.id),children:[r("span",{class:`${ln}-tab-icon`,"aria-hidden":"true",children:[r(s,{}),c?r("span",{class:`${ln}-tab-badge`,"data-testid":S.tabBadge,children:c}):null]}),r("span",{class:`${ln}-tab-label`,children:be(n,a.label)})]},a.id)})})}var Tl=P.cssPrefix,Vu="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads";function El({url:e,title:t,strings:n,onBack:o,actions:i}){return r("div",{class:`${Tl}-module`,children:[r(Io,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:o,actions:i}),r("iframe",{class:`${Tl}-content-frame`,src:e,title:t||"content",sandbox:Vu,referrerpolicy:"no-referrer",loading:"lazy",allow:"fullscreen"})]})}var cn=P.cssPrefix,Ku=U.scope("content");function Il({id:e,title:t,transport:n,strings:o,onBack:i,actions:a}){let[s,l]=T(null),[c,d]=T(!1),[u,_]=T(0),m=F(()=>{d(!1),l(null),_(f=>f+1)},[]);w(()=>{let f=!1;return n.listContent({ids:[e],limit:1}).then(v=>{if(f)return;let h=v.items[0];h?l(h):d(!0)}).catch(v=>{f||(Ku.warn("listContent (reader) failed",{err:v}),d(!0))}),()=>{f=!0}},[n,e,u]);function g(){return c?r(De,{tone:"error",message:o.errorGeneric,onRetry:m,strings:o}):s===null?r(De,{message:o.contentLoading,strings:o}):r("article",{class:`${cn}-content`,"data-testid":S.contentView,children:[s.image?r("img",{class:`${cn}-content-hero`,src:s.image,alt:"",loading:"lazy"}):null,s.description?r("p",{class:`${cn}-content-subtitle`,children:s.description}):null,r(Gs,{text:s.content??""})]})}return r("div",{class:`${cn}-module`,children:[r(Io,{title:s?.title||t||o.moduleBack,backLabel:o.moduleBack,onBack:i,actions:a,testid:S.backHeader}),r("div",{class:`${cn}-module-scroll`,"data-testid":S.contentScroll,children:g()})]})}var Gr=P.cssPrefix;function Al({panelProps:e,enabledModules:t,nav:n,unreadCount:o,onSelectConversation:i,onStartNewConversation:a,onSetPanelSize:s}){let l=e.options,c=l.strings,d=M(null);w(()=>{let $=d.current;if(!$)return;let de=bo($),z=K=>{K.key==="Escape"&&e.onClose?.()};return $.addEventListener("keydown",z),()=>{de(),$.removeEventListener("keydown",z)}},[e.onClose]);let u=M(null),_=F($=>{u.current?.attachFromDrop($)},[]),{visible:m}=yo({containerRef:d,onDrop:_});ho(d.current,l.mode==="modal");let g=re(()=>n.sig.value).value,f=pl(g),v=l.modules.byId[g.activeTab],h=f?.kind==="iframe"||f?.kind==="content",I=t.length>1&&(fl(g)||!h),b=M(null);w(()=>{if(h&&b.current===null)b.current=e.panelSize,e.panelSize==="normal"&&s("expanded");else if(!h&&b.current!==null){let $=b.current;b.current=null,s($)}},[h]);let C={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:$=>{let de=t.find(z=>z.layout===$);de&&n.switchTab(de.id)},selectConversation:i,startNewConversation:a},N=$=>({options:l,transport:e.transport,strings:c,config:$,visitorId:e.visitorId,nav:C,panelProps:e}),B=r(Be,{panelProps:e,variant:"plain"}),V;if(f?.kind==="iframe")V=r(El,{url:f.url,title:f.title,strings:c,onBack:n.pop,actions:B});else if(f?.kind==="content")V=r(Il,{id:f.id,title:f.title,transport:e.transport,strings:c,onBack:n.pop,actions:B});else if(v?.layout==="chat")V=r(zr,{...e,containerEl:d.current,dragOver:m,composerAttachApiRef:u});else if(v){let $=Ro[v.layout].Root;V=$?r($,{...N(v)},v.id):null}else V=null;return r("div",{ref:d,class:`${Gr}-panel ${Gr}-messenger`,role:"dialog","aria-modal":"false","aria-label":c.panelTitle,style:{position:"relative"},"data-testid":S.messengerHome,children:[r("div",{class:`${Gr}-messenger-body`,children:V}),I?r(Cl,{modules:t,activeTab:g.activeTab,strings:c,unreadCount:o,onSelect:n.switchTab}):null,r(Ur,{poweredBy:l.poweredBy}),l.size.resize?.enabled&&!(v?.layout==="chat"&&!f)?r(go,{panelEl:d.current,resize:l.size.resize,position:l.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:c}):null]})}var dn=P.cssPrefix;function Rl({strings:e,onClose:t}){return r("div",{class:`${dn}-panel ${dn}-modules-empty`,role:"dialog","aria-label":e.panelTitle,"data-testid":S.modulesEmpty,children:[t?r("button",{type:"button",class:`${dn}-icon-btn ${dn}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null,r("p",{class:`${dn}-modules-empty-text`,children:e.modulesEmpty})]})}function Ll({callout:e,persistence:t}){let n=e?.text??"",o=e?.persistent??!0,[i,a]=T(()=>o?!1:t.loadCalloutDismissed(n));w(()=>{a(o?!1:t.loadCalloutDismissed(n))},[n,o,t]);let s=F(()=>{a(!0),o||t.saveCalloutDismissed(n)},[t,n,o]);return{dismissed:i,dismissCallout:s}}var G=U.scope("app"),Vr=P.cssPrefix;function Ml(e,t){return Fa({...e,text:be(t,e.text)})}function Nl({options:e,hostElement:t,bus:n}){let[o]=T(()=>Pt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[i,a]=T(()=>o.getVisitorId()),s=o.loadUserPrefs(),[l,c]=T(()=>s.locale??e.locale),[d,u]=T(()=>s.themeMode??e.themeMode),[_,m]=T(()=>s.textSize??e.textSize),g=at(o.loadConversationId()),f=at([]),v=at(0),[h,I]=T(!1),[b,C]=T([]);function N(){let p=e.modules.list,x=new Set(p.map(R=>R.id)),L=o.loadActiveModule();return L&&x.has(L)?L:p[0]?.id??""}function B(){return e.modules.list.find(p=>p.layout==="chat")?.id}let V=M();if(!V.current){let p=e.modules.list.map(x=>x.id);V.current=_l(N(),p,x=>o.saveActiveModule(x))}let $=V.current,de=M(void 0);de.current=B();let[z,K]=T(!1),[Ue,ke]=T(null),[k,J]=T(!1),Z=e.mode==="standalone"||e.mode==="inline",pe=M(Qt(e,Ct(),o.loadPanelOpen(),o.loadPanelSize())),[fe,y]=T(pe.current.panelOpen),[D,me]=T(pe.current.panelOpen),we=M(D);we.current=D;let Ce=M(!1),Xe=M(void 0);w(()=>{fe&&me(!0)},[fe]);let Nt=M(!1),[ut,Dt]=T(!1),{dismissed:Re,dismissCallout:Ot}=Ll({callout:e.launcher.callout,persistence:o}),Je=e.launcher.callout?.persistent??!0,_n=F(()=>{G.info("calloutDismiss"),n.emit("calloutDismiss",void 0),Ot()},[n,Ot]),[Le,pt]=T(pe.current.panelSize),Jr=M(!1),[Bl,Mo]=T("chat"),[$t,Ht]=T(!0),[We,un]=T(!1),[zl,Yr]=T(null),[No,pn]=T([]),[fn,mn]=T(null),gn=M(e.strings),[Ul,Wl]=T(void 0),[Gl,Vl]=T(void 0),[Kl,ql]=T(()=>o.loadSidebarCollapsed()??!1),[Do,jl]=T({}),[Y]=T(()=>new io({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Ta({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:"x-public-key"}),endpoints:e.endpoints})),[Oe]=T(()=>new co(f)),[ie]=T(()=>new fo(e.sound,e.haptics)),He=F(p=>{o.patchUserPrefs(p),Y.saveUserPrefs(o.loadUserPrefs()).catch(x=>{G.warn("saveUserPrefs failed",{err:x})})},[o,Y]);w(()=>{s.soundMuted!==void 0&&ie.setMuted(s.soundMuted)},[]),w(()=>{t.dataset.theme=d},[t,d,e]),w(()=>{t.dataset.textSize=_},[t,_,e]),w(()=>{ie.update(e.sound,e.haptics)},[ie,e.sound,e.haptics]),w(()=>()=>ie.destroy(),[ie]),w(()=>{let p=!0;return ie.mutedSig.subscribe(x=>{if(p){p=!1;return}He({soundMuted:x})})},[ie,He]),w(()=>{Jr.current||!e.size.initialSize||(Jr.current=!0,!o.loadPanelSize()&&pt(Pr(e.mode,e.size,Ct())))},[e.mode,e.size,o]),w(()=>{if(!z||Nt.current)return;Nt.current=!0;let p=Qt(e,Ct(),o.loadPanelOpen(),o.loadPanelSize());y(p.panelOpen),pt(p.panelSize)},[z,e,o]);let Qr=M(!1),Zr=M(!1),hn=M(null);w(()=>{if(!(!z||Qr.current)){if(Qr.current=!0,Zr.current){let p=de.current;p&&$.switchTab(p);return}$.reset(N())}},[z]);let vn=F(p=>{!p||p.length===0||(f.value=p.map(x=>Ml(x,gn.current)))},[f]),Oo=M(null),bn=F(async p=>{try{let{formSubmissions:x}=await(p?Y.bootstrap(p):Oo.current??Y.bootstrap()),L=new Map;return x.forEach((R,W)=>L.set(R.formId,W)),x.filter((R,W)=>!R.skipped||L.get(R.formId)===W).map((R,W)=>({key:`wire:${R.formId}:${R.createdAt??W}`,formId:R.formId,outcome:R.skipped?"skipped":"submitted",createdAt:ro(R.createdAt),values:R.values}))}catch(x){return G.debug("bootstrap failed \u2014 no form markers (non-fatal)",{err:x}),[]}},[Y]),Ft=M(0),Bt=F((p,x)=>{let L=[...p.map(_e=>_e.createdAt),...x.map(_e=>_e.createdAt)].filter(_e=>_e!==void 0),R=(L.length?Math.min(...L):Date.now())-1,W=new Set(p.map(_e=>_e.id));return[...(Xe.current?.messages??[]).filter(_e=>!W.has(_e.id)).map(_e=>{let Ye=Ml(_e,gn.current);return Ye.createdAt=R,Ye}),...p]},[]),$o=F(async p=>{let x=Ft.current,L=()=>x!==Ft.current;I(!0);try{let[R,W]=await Promise.all([Y.loadConversation(p),bn()]);if(L())return;let E=(R.messages??[]).map(kr);C(W);let _e=hn.current?[hn.current]:[];E.length||_e.length?(f.value=[...Bt(E,W),..._e],Ht(R.canContinue??!0),pn(R.suggestions??[])):f.value=Bt([],W)}catch(R){if(L())return;G.warn("loadThread failed; resetting conversationId",{err:R,conversationId:p}),g.value=void 0,o.saveConversationId(void 0)}finally{L()||I(!1)}},[Y,bn,f,g,o,Bt]),zt=F(async({newConversation:p})=>{let x=++Ft.current,L=()=>x!==Ft.current,R=g.value,W=p||!R?$e():R;W!==R&&(g.value=W,o.saveConversationId(W));let E;try{E=await Y.handshake({visitorId:i,conversationId:W,userPrefs:o.loadUserPrefs(),locale:l})}catch(Ye){if(L())return;n.emit("error",Ye),e.onError?.(Ye),p||K(!0);return}if(L())return;if(E.visitorId&&E.visitorId!==i&&(G.info("visitor rebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId}),o.setVisitorId(E.visitorId),a(E.visitorId),n.emit("visitorRebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId})),E.conversationId&&E.conversationId!==W&&(G.info("conversation rebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId}),n.emit("conversationRebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId})),E.agent&&Yr(E.agent),e.mode==="page"&&(E.site&&wa(E.site)?Wl(E.site):E.site&&G.warn("invalid site config, using fallback",{site:E.site}),E.blocks&&Ca(E.blocks)?Vl(E.blocks):E.blocks&&G.warn("invalid blocks config, using fallback",{blocks:E.blocks})),E.userPrefs&&!p&&(o.saveUserPrefs(E.userPrefs),E.userPrefs.locale&&c(E.userPrefs.locale),E.userPrefs.soundMuted!==void 0&&ie.setMuted(E.userPrefs.soundMuted),E.userPrefs.themeMode&&u(E.userPrefs.themeMode),E.userPrefs.textSize&&m(E.userPrefs.textSize)),Xe.current=E.welcome,p||n.emit("handshake",E),E.welcome?.suggestions){let Ye=gn.current;pn(E.welcome.suggestions.map(kn=>({...kn,label:be(Ye,kn.label),...kn.text===void 0?{}:{text:be(Ye,kn.text)}})))}!p&&R&&E.conversationId===R?we.current?$o(R):Ce.current=!0:(g.value=E.conversationId,o.saveConversationId(E.conversationId),vn(E.welcome?.messages)),p||K(!0)},[Y,i,o,e,n,g,ie,vn,$o,l]),Ut=JSON.stringify(e.userContext??null),Xl=JSON.stringify(e.pageContext??null),Jl=JSON.stringify(Do);w(()=>{let p=Object.keys(Do).length?{...Do,...e.userContext}:e.userContext;Y.setContext(p,qu(e.pageContext))},[Y,Ut,Xl,Jl]);let Te=bt(l,e.availableLocales,e.defaultLocale);w(()=>{Y.setLocale(Te)},[Y,Te]),w(()=>{t.dir=Ei(Te)?"rtl":"ltr"},[t,Te]),w(()=>{Te!==l&&c(Te)},[Te,l]);let Yl=F(async p=>{let x=null;try{for await(let L of p.iter){if(!x){x=ao(),hn.current=x,Oe.attach(x),f.value=[...f.value,x],un(!0),mn(()=>p.cancel),Zr.current=!0;let R=de.current;R&&$.switchTab(R),G.info("resumed in-flight reply on mount")}Oe.apply(L.chunk),L.chunk.type==="finish"&&L.chunk.canContinue===!1&&Ht(!1)}x&&(x.status="complete",ie.play("messageReceived"),Kr(n,e,"assistant",wr(x)))}catch(L){x&&(x.status="error",x.errorText=st(L,e.strings),ie.play("error")),G.debug("mount resume ended without completing",{err:L})}finally{hn.current=null,x&&(Oe.detach(),un(!1),mn(null),f.value=[...f.value])}},[Oe,f,ie,n,e,$]),ei=M(null);w(()=>{let p=g.value;return p&&Y.primeIdentity(i,p),zt({newConversation:!1}),()=>{Ft.current++,ei.current?.cancel()}},[]),w(()=>{if(D){if(Oo.current=Y.bootstrap(),(async()=>{try{let p=await Oo.current;ke(Kt((p??{forms:[]}).forms,Te))}catch(p){G.debug("bootstrap failed \u2014 treating as no forms",{err:p})}finally{J(!0)}})(),Ce.current){Ce.current=!1;let p=g.value;p&&$o(p)}if(g.value){let p=Y.resumeStream();ei.current=p,Yl(p)}}},[D]);let xn=M(null);w(()=>{if(!D)return;if(xn.current===null){xn.current=Te;return}if(xn.current===Te)return;xn.current=Te;let p=!1;return Y.bootstrap().then(x=>{p||ke(Kt((x??{forms:[]}).forms,Te))}).catch(x=>G.debug("forms re-localize failed \u2014 keeping current copy",{err:x})),()=>{p=!0}},[D,Te,Y]);let ti=M(Ut);w(()=>{!z||ti.current===Ut||(ti.current=Ut,zt({newConversation:!1}))},[Ut,z,zt]),w(()=>{Gn(t,oo(e.mode,Le,fe))},[t,fe,Le,e.mode]),w(()=>{if(e.mode!=="modal"||!fe)return;let p=x=>{x.composedPath().some(W=>W instanceof HTMLElement&&W.classList.contains(`${P.cssPrefix}-panel`))||y(!1)};return t.addEventListener("click",p),()=>t.removeEventListener("click",p)},[t,fe,e.mode]),w(()=>{if(e.mode!=="drawer"||!fe)return;let p=x=>{x.key==="Escape"&&y(!1)};return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[fe,e.mode]);let Pn=F(async(p,x)=>{let L=g.value??$e();g.value||(g.value=L,o.saveConversationId(L));let R=Ma({messages:f.value.slice(0,-1).map(Ba),conversationId:L,tools:e.features.tools,responseMode:e.responseMode,trigger:x,visitorId:i,userPrefs:o.loadUserPrefs()});un(!0);let W=Y.sendMessage(R);mn(()=>W.cancel);try{for await(let E of W.iter)Oe.apply(E.chunk),E.chunk.type==="finish"&&E.chunk.canContinue===!1&&Ht(!1);p.status="complete",ie.play("messageReceived"),Kr(n,e,"assistant",wr(p))}catch(E){p.status="error",p.errorText=st(E,e.strings),ie.play("error"),n.emit("error",E),e.onError?.(E)}finally{Oe.detach(),un(!1),mn(null),f.value=[...f.value]}},[Y,Oe,f,g,e,n,ie,o,i]),yn=F((p,x,L)=>{if(We)return;let R=f.value.at(-1),W=R?.partsSig.value.find(_e=>_e.kind==="tool"&&_e.toolCallId===p);if(!W){G.warn("resolveTool: tool part not found",{toolCallId:p});return}L(W),R&&(R.partsSig.value=[...R.partsSig.value]);let E=ao();f.value=[...f.value,E],Oe.attach(E),Pn(E,x)},[We,f,Oe,Pn]),ni=F((p,x)=>{G.info("toolResult",{toolCallId:p}),n.emit("toolResult",{toolCallId:p}),yn(p,lo.toolResult,L=>{L.outputSig.value=x,L.stateSig.value="output"})},[n,yn]),oi=F((p,x,L)=>{G.info("toolDecision",{toolCallId:p,approved:x}),n.emit("toolDecision",{toolCallId:p,approved:x}),yn(p,lo.toolApproval,R=>{let W=R.approvalSig.value?.id??p;R.approvalSig.value={id:W,approved:x,reason:L},R.stateSig.value="output"})},[n,yn]),Ql=xe(()=>({humanInLoop:e.features.humanInLoop,onResult:ni,onDecision:oi}),[e.features.humanInLoop,ni,oi]),Zl=()=>f.value.reduce((p,x)=>p+(x.role==="user"?1:0),0),ft=e.forms.list.length>0?e.forms:Ue??e.forms,ae=al({forms:ft,persistence:o,userContext:()=>e.userContext,messageCount:Zl,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>g.value,onComplete:(p,x,L,R)=>{G.info("formSubmit",{formId:p.id,trigger:x,skipped:R}),n.emit("formSubmit",{formId:p.id,values:L,skipped:R}),C(E=>[...E.filter(_e=>!(_e.formId===p.id&&_e.outcome==="skipped")),{key:`local:${p.id}:${Date.now()}`,formId:p.id,outcome:R?"skipped":"submitted",createdAt:Date.now(),...R?{}:{values:L}}]);let W=g.value??$e();g.value||(g.value=W,o.saveConversationId(W),Y.primeIdentity(void 0,W)),!R&&p.mirrorToContext&&jl(E=>({...E,...L})),Y.submitForm({formId:p.id,conversationId:W,trigger:x,values:L,skipped:R})}}),ec=re(()=>ae.activeForm.value);w(()=>{ae.refresh()},[ft,ae]);let ri=e.pageContext?.area?String(e.pageContext.area):void 0,tc=re(()=>f.value.length);w(()=>{z&&k&&ae.fire("pre-chat")},[z,k,ae]),w(()=>{k&&!$t&&ae.fire("conversation-closed")},[k,$t,ae]),w(()=>{z&&k&&ri&&ae.fire("page-area")},[z,k,ri,ae]);let Ho=xe(()=>{let p=ft.list.flatMap(x=>x.triggers).filter(x=>x.kind==="idle").map(x=>Number(x.param));return p.length?Math.min(...p)*1e3:0},[ft]);w(()=>{if(!Ho||!fe)return;let p=setTimeout(()=>ae.fire("idle"),Ho);return()=>clearTimeout(p)},[Ho,fe,ae,tc.value]);let ii=F(async(p,x)=>{if(G.info("send",{textLen:p.length,attachments:x.length,streaming:We}),We)return;n.emit("send",{text:p,attachmentCount:x.length}),No.length>0&&pn([]);let L=await Xu(Y,x,E=>{G.warn("upload failed",{err:E}),n.emit("error",E),e.onError?.(E)});ie.unlock(),ie.play("messageSent");let R=Ha(p,L),W=ao();f.value=[...f.value,R,W],Oe.attach(W),Kr(n,e,"user",p),await Pn(W,lo.submitMessage),ae.fire("after-messages")},[We,Y,n,e,No.length,f,Oe,Pn,ae]),nc=F(()=>{G.info("stop"),n.emit("stop",void 0),fn?.()},[fn,n]),oc=F(()=>{ie.toggleMuted();let p=ie.mutedSig.value;G.info("soundToggle",{muted:p}),n.emit("soundToggle",{muted:p})},[ie,n]),Wt=F(()=>{if(ws(e.mode,Le)==="exit-fullscreen"){G.info("close \u2192 exit-fullscreen",{mode:e.mode}),pt("normal"),n.emit("fullscreen",!1);return}G.info("close \u2192 panel closed",{mode:e.mode}),ae.fire("panel-close"),y(!1),o.savePanelOpen(!1),n.emit("close",void 0),e.onClose?.()},[n,e,o,Le,ae]),mt=F(()=>{e.modules.list.some(p=>p.layout==="chat")&&Y.listConversations({limit:50}).then(p=>{v.value=p.conversations.reduce((x,L)=>x+(L.unreadCount??0),0)}).catch(p=>G.debug("refreshUnread failed (non-fatal)",{err:p}))},[Y,e.modules,v]),ai=M(!1);w(()=>{!D||!z||ai.current||(ai.current=!0,mt())},[D,z,mt]);let Fo=F(()=>{G.info("open",{mode:e.mode}),ie.unlock(),Dt(!0),y(!0),o.savePanelOpen(!0),!Re&&!Je&&_n(),setTimeout(()=>Dt(!1),ju),mt(),n.emit("open",void 0),e.onOpen?.()},[n,e,ie,o,Re,Je,_n,mt]),Bo=F(()=>{if(!f.value.some(x=>x.role==="user")&&$t&&g.value){G.info("clear \u2192 reusing empty conversation",{conversationId:g.value}),f.value.length===0&&vn(Xe.current?.messages);return}G.info("clear \u2192 new conversation",{wasStreaming:We}),n.emit("clear",void 0),We&&fn?.(),St(()=>{f.value=[],g.value=void 0}),o.clearConversation(),Ht(!0),C([]),zt({newConversation:!0})},[We,fn,f,g,o,zt,n,$t,vn]),zo=F(()=>{Bo(),Mo("chat");let p=e.modules.list.find(x=>x.layout==="chat")?.id;p&&$.switchTab(p)},[Bo,$,e]),Uo=F(()=>{let p=Le==="expanded"?"normal":"expanded";G.info("expand",{from:Le,expanded:p==="expanded"}),pt(p),o.savePanelSize(p),n.emit("expand",p==="expanded")},[n,Le,o]),Wo=F(()=>{let p=Le==="fullscreen"?"normal":"fullscreen";G.info("fullscreen",{from:Le,fullscreen:p==="fullscreen"}),pt(p),o.savePanelSize(p),n.emit("fullscreen",p==="fullscreen")},[n,Le,o]),rc=F(()=>{Mo(p=>{let x=p==="history"?"chat":"history";return G.info("toggleHistory",{view:x}),n.emit("toggleHistory",{view:x}),x})},[n]),ic=F(p=>{G.info("localeChange",{locale:p}),c(p),He({locale:p}),n.emit("localeChange",p)},[He,n]),ac=F(p=>{G.info("themeChange",{mode:p}),u(p),t.dataset.theme=p,He({themeMode:p}),n.emit("themeChange",p)},[t,He,n]),sc=F(p=>{G.info("textSizeChange",{size:p}),m(p),t.dataset.textSize=p,He({textSize:p}),n.emit("textSizeChange",p)},[t,He,n]),lc=F(()=>{ql(p=>{let x=!p;return G.info("sidebarToggle",{collapsed:x}),o.saveSidebarCollapsed(x),n.emit("sidebarToggle",{collapsed:x}),x})},[o,n]),cc=F(p=>{G.info("resize",p),He({widgetSize:p}),n.emit("resize",p)},[He,n]),Go=F(async p=>{G.info("selectConversation",{conversationId:p}),n.emit("selectConversation",{conversationId:p});try{let[x,L]=await Promise.all([Y.loadConversation(p),bn(p)]),R=x.messages.map(kr);St(()=>{f.value=Bt(R,L),g.value=x.conversationId}),C(L),o.saveConversationId(x.conversationId),x.agent&&Yr(x.agent),Ht(x.canContinue),pn(x.suggestions??[]),Mo("chat"),await Y.markRead(p),mt()}catch(x){n.emit("error",x),e.onError?.(x)}},[Y,f,g,n,e,o,mt,bn,Bt]),Sn=M(null),si=F(p=>{typeof p=="string"&&(k?ae.fire("manual",p):Sn.current=p)},[k,ae]);w(()=>{!k||!Sn.current||(ae.fire("manual",Sn.current),Sn.current=null)},[k,ae]),w(()=>Gi(t,{open:Fo,close:Wt,expand:Uo,fullscreen:Wo,openForm:si}),[t,Fo,Wt,Uo,Wo,si]);let Ee=xe(()=>ur(e,l,d,_),[e,l,d,_]);gn.current=Ee.strings;let dc=xe(()=>b.map(p=>{let x=ft.list.find(L=>L.id===p.formId);return{...p,title:x?.title,form:x}}),[b,ft]),li={options:Ee,transport:Y,feedback:ie,bus:n,view:Bl,canSend:$t,isStreaming:We,loadingMessages:h,messagesSig:f,agent:zl,suggestions:No,initialWidgetSize:s.widgetSize??null,visitorId:i,onClose:Wt,onClear:Bo,onExpand:Uo,onFullscreen:Wo,onSoundToggle:oc,onToggleHistory:rc,onSelectHistoryConversation:Go,onNewConversation:zo,onLocaleChange:ic,onThemeChange:ac,onTextSizeChange:sc,onWidgetSizeChange:cc,onSend:ii,onStop:nc,onSuggestion:p=>{let x=p.text??p.label;G.info("suggestion",{text:x}),n.emit("suggestion",{text:x}),ii(x,[])},activeForm:ec.value?.form??null,formMarkers:dc,onFormSubmit:ae.complete,onFormSkip:ae.skip,onFormFill:p=>ae.fire("manual",p),tool:Ql},_c=p=>{Go(p);let x=B();x&&$.switchTab(x)};if(!z)return null;let Gt=Ee.modules.list,Vo=p=>{let x=on("close",Ee.mode,p);return Gt.length===0?r(Rl,{strings:Ee.strings,onClose:x?Wt:void 0}):Gt.length===1&&Gt[0]?.layout==="chat"?r(il,{...li,panelSize:p}):r(Al,{panelProps:{...li,panelSize:p,onClose:x?Wt:void 0},enabledModules:Gt,nav:$,unreadCount:v.value,onSelectConversation:_c,onStartNewConversation:zo,onSetPanelSize:pt})};if(e.mode==="page"){let p=L=>{Go(L.conversationId)},x=Gt.some(L=>L.layout==="chat");return r("div",{class:`${Vr}-anchor`,children:r(cl,{site:Ul,blocks:Gl,transport:Y,strings:Ee.strings,visitorId:i,showConversations:x,onSelectConversation:p,onNewConversation:zo,sidebarCollapsed:Kl,onToggleSidebarCollapsed:lc,children:Vo("fullscreen")})})}if(Z){let p=e.mode==="standalone"?"fullscreen":Le;return r("div",{class:`${Vr}-anchor`,children:Vo(p)})}let ci=e.mode==="drawer",di=!(e.mode==="modal")&&!e.launcher.hidden&&(!fe||ut),_i=di&&!ut&&!Re&&!ci?Ee.launcher.callout:null;return r("div",{class:`${Vr}-anchor`,"data-launcher-size":Ee.launcher.size,children:[fe?Vo(Le):null,di?r(ys,{onToggle:Fo,launcher:Ee.launcher,strings:Ee.strings,leaving:ut,edgeTab:ci}):null,_i?r(Ss,{callout:_i,launcherPosition:Ee.position,strings:Ee.strings,closeLabel:Ee.strings.close,onDismiss:_n}):null]})}function qu(e){let t=e?.url??(typeof location<"u"?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}var ju=120;async function Xu(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 Kr(e,t,n,o){let i={role:n,text:o};e.emit("message",i),t.onMessage?.(i)}var Ju=U.scope("error-boundary"),Lo=class extends Ze{constructor(){super(...arguments);j(this,"state",{crashed:!1})}componentDidCatch(n,o){Ju.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 Dl={open:()=>{},close:()=>{},expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>{},clear:()=>{},suggestion:()=>{},toggleHistory:e=>({view:e.view}),handshake:()=>{},formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>{},toolDecision:e=>({approved:e.approved}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>{},voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>{},localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>{},error:()=>{}};function Yu(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack==="1"}function Qu(){return location.origin+location.pathname}function Zu(){try{return document.referrer?new URL(document.referrer).origin:""}catch{return""}}function Ol(e,t){let n=Math.random(),o=0,i=0,a=new Set,s=(c,d)=>{let{tracking:u,publicKey:_,aiAgentDeploymentId:m,mode:g,themeMode:f}=t.getOptions();if(!u.enabled||Yu()||n>=u.sampleRate)return;let v=performance.now();if(v-o>6e4&&(o=v,i=0),++i>60)return;let h=new URLSearchParams;h.set("v","1"),h.set("e",c),u.token&&h.set("tk",u.token),_&&h.set("pk",_),m&&h.set("dep",m),h.set("vid",t.getVisitorId());let I=t.getConversationId();I&&h.set("cid",I),h.set("url",Qu());let b=Zu();b&&h.set("ref",b),h.set("sw",String(screen.width)),h.set("sh",String(screen.height)),h.set("vw",String(innerWidth)),h.set("vh",String(innerHeight)),h.set("dpr",String(devicePixelRatio)),h.set("lang",navigator.language);try{h.set("tz",Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(h.set("m",g),h.set("th",f),d)for(let[V,$]of Object.entries(d))$!==void 0&&h.set(V,String($));h.set("ts",String(Date.now()));let C=`${u.endpoint}?${h}`;if(C.length>2e3)return;let N=new Image(1,1);a.add(N);let B=()=>a.delete(N);N.addEventListener("load",B,{once:!0}),N.addEventListener("error",B,{once:!0}),N.src=C},l=Object.keys(Dl).map(c=>e.on(c,d=>s(c,Dl[c]?.(d))));return()=>{for(let c of l)c();a.clear()}}function $l(e){let{bus:t,host:n,appRoot:o,persistence:i,reportError:a}=e,s=e.initialRaw,l,c=vt(s),d=!0,u=()=>{c=vt(l?pr(s,l):s)},_=()=>{Zi(n,jt(c.mode));let f=i.loadUserPrefs().themeMode;ea(n,f?{...c,themeMode:f}:c),d&&(Gn(n,qr(c)),d=!1)},m=()=>{_(),Nn(Mn(Lo,{onError:a},Mn(Nl,{bus:t,hostElement:n,options:c})),o)};t.on("handshake",f=>{f.config&&(f.config.storageVersion&&i.rememberStorageVersion(f.config.storageVersion),l=f.config,u(),m())});let g=Ol(t,{getOptions:()=>c,getVisitorId:()=>i.getVisitorId(),getConversationId:()=>i.loadConversationId()});return{getOptions:()=>c,getUserOptions:()=>s,render:m,setUserOptions:f=>{s=f,u(),m()},patchUserOptions:f=>{s={...s,...f},u(),m()},destroy:()=>g()}}function qr(e){if(e.mode==="standalone")return"standalone";if(e.mode==="inline")return"inline";let t=Pt(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:o}=Qt(e,Ct(),t.loadPanelOpen(),t.loadPanelSize());return oo(e.mode,o,n)}var ep=U.scope("hooks"),Xr="*",jr=new Set;function Hl(e,t,n){let o={widgetId:e,event:t,listener:n};return jr.add(o),()=>{jr.delete(o)}}function tp(e,t,n){let o=[...jr];for(let i of o)if(np(i.widgetId,e.widgetId)&&!(i.event!==Xr&&i.event!==t))try{i.listener(e,t,n)}catch(a){ep.warn("hook listener threw",{event:t,error:a})}}function Fl(e,t){let n=[];for(let o of op)n.push(t.on(o,i=>{tp(e,o,i)}));return()=>{for(let o of n)o()}}function np(e,t){return e===Xr||e===t}var op=["open","close","expand","fullscreen","resize","message","send","stop","clear","selectConversation","suggestion","toggleHistory","formSubmit","toolResult","toolDecision","attach","removeAttachment","voiceStart","voiceStop","voiceCancel","localeChange","themeChange","textSizeChange","soundToggle","sidebarToggle","calloutDismiss","error","handshake","visitorRebound","conversationRebound"];var je=new Map;function rp(e){e.debug!==void 0&&Fn(e.debug);let t=U.scope("mount");t.info("mount",{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let n=vt(e),o=n.widgetId,i=je.get(o);i&&(t.debug("destroy existing instance at slot",{widgetId:o}),i.destroy());let a=qr(n),s=n.iframe?oa({position:jt(n.mode)},n.position,a,n.mode,e.target??null):Wn({position:jt(n.mode),target:e.target??null});s.hostElement.dataset.widgetId=o;let l=new Kn,c=Pt(o,n.storage,n.aiAgentDeploymentId),d=v=>{l.emit("error",v),u.getOptions().onError?.(v)},u=$l({bus:l,host:s.hostElement,appRoot:s.appRoot,persistence:c,initialRaw:e,reportError:d});u.render();let _=s.hostElement,m=null,g=v=>{v.debug!==void 0&&Fn(v.debug),u.patchUserOptions(v)},f={widgetId:o,open:()=>qt(_,"open"),close:()=>qt(_,"close"),expand:()=>qt(_,"expand"),openForm:v=>qt(_,"openForm",v),on:(v,h)=>l.on(v,h),update:v=>{t.debug("update",{patch:v}),g(v)},setUserContext:v=>{t.debug("setUserContext",{keys:Object.keys(v)}),g({userContext:{...u.getUserOptions().userContext,...v}})},clearUserContext:()=>{t.debug("clearUserContext"),g({userContext:void 0})},setPageContext:v=>{t.debug("setPageContext",{keys:Object.keys(v)}),g({pageContext:{...u.getUserOptions().pageContext,...v}})},clearPageContext:()=>{t.debug("clearPageContext"),g({pageContext:void 0})},setDebug:v=>{Fn(v),t.info("debug level set",{level:ar()})},debugLevel:()=>ar(),onLog:v=>Ni(v),destroy:()=>{t.info("destroy",{widgetId:o}),m?.(),u.destroy(),l.clear(),Nn(null,s.appRoot),s.destroy(),je.get(o)===f&&je.delete(o)}};return m=Fl(f,l),je.set(o,f),f}function IP(e){let t=e.widgetId??"default",n=je.get(t);return n?(n.update(e),n):rp(e)}function AP(e){if(e!==void 0){je.get(e)?.destroy();return}let t=[...je.values()];for(let n of t)n.destroy()}function RP(e="default"){return je.get(e)??null}function LP(){return[...je.values()]}function MP(e,t,n){return Hl(e,t,n)}var NP="0.1.0",DP=P;export{Xr as HOOK_WILDCARD,DP as brand,AP as destroy,LP as getAllInstances,RP as getInstance,MP as hook,IP as init,rp as mount,qr as resolveInitialHostMode,NP as version};
39
+ `){Q(e),ee(e,16),e.pending=n;continue}}break;case"$":if(e.token!==19&&e.token!==16&&e.pending==="$")if(n==="$"){e.token=105,e.pending=o;continue}else{if(Y_(n.charCodeAt(0)))break;Q(e),ee(e,31),e.pending=n;continue}break;case"[":if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n!=="]"){Q(e),ee(e,17),e.pending=n;continue}break;case"!":if(e.token!==19&&n==="["){Q(e),ee(e,19),e.pending="";continue}break;case" ":if(e.pending.length===1&&n===" ")continue;break}if(e.token!==19&&e.token!==17&&e.token!==30&&e.token!==31&&n==="h"&&(e.pending===" "||e.pending==="")){e.text+=e.pending,e.pending=n,e.token=102;continue}e.text+=e.pending,e.pending=n}Q(e)}function Fr(e){return{add_token:Q_,end_token:Z_,add_text:eu,set_attr:tu,data:{nodes:[e,,,,,],index:0}}}function Q_(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 Z_(e){e.index-=1}function eu(e,t){e.nodes[e.index].appendChild(document.createTextNode(t))}function tu(e,t,n){e.nodes[e.index].setAttribute(K_(t),n)}function Co({textSig:e,doneSig:t}){let n=M(null);return w(()=>{let o=n.current;if(!o)return;o.classList.add(`${P.cssPrefix}-md`);let i=Fr(o),a=Hr(i),s=0,l=Ke(()=>{let u=e.value,_=t.value;u.length<s&&(o.replaceChildren(),i=Fr(o),a=Hr(i),s=0);let m=u.slice(s);m&&ve(a,m),s=u.length,_&&Us(a)}),c=new MutationObserver(u=>{for(let _ of u)for(let m of _.addedNodes){if(!(m instanceof HTMLElement))continue;let g=m.matches?.("a")?[m]:[...m.querySelectorAll?.("a")??[]];for(let f of g)Ws(f)}});c.observe(o,{childList:!0,subtree:!0});for(let u of o.querySelectorAll("a"))Ws(u);let d=u=>{let _=u.target?.closest?.("a");if(!_||!(_ instanceof HTMLAnchorElement))return;let m=_.getAttribute("href")??"";!m||m.startsWith("#")||(u.preventDefault(),window.open(m,"_blank","noopener,noreferrer"))};return o.addEventListener("click",d),()=>{l(),c.disconnect(),o.removeEventListener("click",d)}},[e,t]),r("div",{ref:n})}function Gs({text:e}){let t=xe(()=>H(e),[e]),n=xe(()=>H(!0),[]);return r(Co,{textSig:t,doneSig:n})}function Ws(e){let t=e.getAttribute("href")??"";if(!t||t.startsWith("#"))return;e.target!=="_blank"&&(e.target="_blank");let n=new Set((e.rel||"").split(/\s+/).filter(Boolean));n.add("noopener"),n.add("noreferrer"),e.rel=[...n].join(" ")}var ye=P.cssPrefix;function Vs(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/[-_]+/g," ")}function Ks({part:e,strings:t,active:n,onDecision:o}){let i=re(()=>e.approvalSig.value),a=re(()=>e.inputSig.value),s=at("");if(i.value?.approved!==void 0){let d=i.value;return r("div",{class:`${ye}-tool-approval ${ye}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${ye}-tool-decided-label`,"data-approved":d?.approved?"true":"false",children:d?.approved?t.approved:t.rejected}),r("strong",{class:`${ye}-tool-title`,children:Vs(e.toolName)}),d?.reason?r("span",{class:`${ye}-tool-decided-value`,children:d.reason}):null]})}let c=ou(a.value);return r("div",{class:`${ye}-tool-approval`,"data-testid":S.toolApproval,children:[r("div",{class:`${ye}-tool-head`,children:[r("span",{class:`${ye}-tool-badge`,children:t.approvalRequired}),r("strong",{class:`${ye}-tool-title`,children:Vs(e.toolName)})]}),c?r("pre",{class:`${ye}-tool-args`,children:c}):null,n?r(ne,{children:[r("input",{class:`${ye}-field-input`,value:s.value,placeholder:t.approvalReason,onInput:d=>{s.value=d.target.value}}),r("div",{class:`${ye}-form-actions`,children:[r("button",{type:"button",class:`${ye}-tool-reject`,onClick:()=>o(e.toolCallId,!1,s.value.trim()||void 0),"data-testid":S.toolReject,children:t.reject}),r("button",{type:"button",class:`${ye}-tool-approve`,onClick:()=>o(e.toolCallId,!0,s.value.trim()||void 0),"data-testid":S.toolApprove,children:t.approve})]})]}):r("p",{class:`${ye}-tool-stale-note`,children:t.stepNoLongerActive})]})}function ou(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 js(e){let t=e&&typeof e=="object"?e:{},n=t.responseType;return{title:an(t.title),question:an(t.question)??"Please provide the missing information.",description:an(t.description),placeholder:an(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:qs(t.minSelections),maxSelections:qs(t.maxSelections),validationHint:an(t.validationHint)}}function Xs(e){if(e.responseType==="confirmation")return[];let t=(e.choices??[]).map(ru).filter(i=>i!==null),n="textarea";e.responseType==="single-choice"&&t.length>0?n="radio":e.responseType==="multi-choice"&&(n="multiselect");let o=n==="multiselect"?e.defaultValues?.join(", "):e.defaultValues?.[0];return[{name:"answer",label:e.question,type:n,placeholder:e.placeholder,required:e.required??!0,defaultValue:o,options:t.length>0?t:void 0,allowOther:e.allowOther,validationHint:e.validationHint,validation:n==="multiselect"?{minSelections:e.minSelections,maxSelections:e.maxSelections}:void 0}]}function ru(e){return typeof e=="string"?e?{value:e,label:e}:null:e&&typeof e.value=="string"&&e.value?{value:e.value,label:e.label??e.value,description:e.description}:null}function an(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function qs(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}var Pe=P.cssPrefix;function Ys({part:e,strings:t,active:n,onSubmit:o,onDecision:i}){let a=re(()=>e.stateSig.value),s=re(()=>e.approvalSig.value),l=re(()=>js(e.inputSig.value)),c=a.value==="output"||a.value==="error"||s.value?.approved!==void 0,d=s.value!==void 0,u=(g,f)=>{d?i(e.toolCallId,f,g):l.value.responseType==="confirmation"?o(e.toolCallId,{confirmed:f}):o(e.toolCallId,f?{answer:g}:{})};if(c)return r(iu,{part:e,strings:t});if(!n)return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-stale`,"data-testid":S.toolAskInput,children:[r(Js,{strings:t,title:l.value.title??l.value.question}),r("p",{class:`${Pe}-tool-stale-note`,children:t.stepNoLongerActive})]});let _=l.value,m=_.responseType==="confirmation";return r("div",{class:`${Pe}-tool-ask-input`,"data-testid":S.toolAskInput,children:[r(Js,{strings:t,title:_.title}),_.description?r("p",{class:`${Pe}-tool-desc`,children:_.description}):null,m?r("p",{class:`${Pe}-tool-question`,children:_.question}):null,m?r("div",{class:`${Pe}-form-actions`,children:[r("button",{type:"button",class:`${Pe}-form-skip`,onClick:()=>u(void 0,!1),"data-testid":S.toolInputSkip,children:t.reject}),r("button",{type:"button",class:`${Pe}-form-submit`,onClick:()=>u(void 0,!0),"data-testid":S.toolInputSubmit,children:t.approve})]}):r(ko,{fields:Xs(_),strings:t,submitLabel:t.inputSubmit,onSubmit:g=>u(g.answer??Object.values(g).join(", "),!0),skipLabel:_.required===!1?t.inputSkip:void 0,onSkip:_.required===!1?()=>u(void 0,!1):void 0,submitTestId:S.toolInputSubmit,skipTestId:S.toolInputSkip})]})}function Js({strings:e,title:t}){return r("div",{class:`${Pe}-tool-head`,children:[r("span",{class:`${Pe}-tool-badge`,children:e.inputRequired}),t?r("strong",{class:`${Pe}-tool-title`,children:t}):null]})}function iu({part:e,strings:t}){let n=re(()=>e.outputSig.value),o=re(()=>e.approvalSig.value),i=o.value?.approved!==void 0?o.value.reason??"":au(n.value),a=o.value?.approved===!1;return r("div",{class:`${Pe}-tool-ask-input ${Pe}-tool-decided`,"data-testid":S.toolDecision,children:[r("span",{class:`${Pe}-tool-decided-label`,children:a?t.inputSkip:t.inputSubmitted}),r("span",{class:`${Pe}-tool-decided-value`,children:a?"":i||t.inputSubmitted})]})}function au(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 Qs({part:e,strings:t}){let n=P.cssPrefix;return r("span",{class:`${n}-tool-chip`,role:"status",children:[r("span",{children:[t.usedTool,":"]}),r("strong",{children:e.toolName})]})}var Ae=P.cssPrefix;function Zs({message:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:a=!1,tool:s}){let c=re(()=>e.partsSig.value).value,d=re(()=>e.partsSig.value.some(h=>h.kind==="text"&&h.textSig.value.length>0)),u=re(()=>o&&e.partsSig.value.some(h=>h.kind==="reasoning")),_=e.role==="assistant"&&e.status==="streaming",m=n==="buffered"&&_,g=_&&!d.value,f=_&&!m&&!(u.value&&g),v=su(e.createdAt);return r("div",{class:`${Ae}-bubble-row`,"data-role":e.role,"data-testid":he(S.messageBubble,e.id),children:r("div",{class:`${Ae}-bubble-col`,children:[r("div",{class:`${Ae}-bubble`,children:[m?r(pu,{label:t.loading}):c.map(h=>r(lu,{part:h,active:g,strings:t,showReasoning:o,showToolCalls:i,interactive:a,tool:s},_u(h))),f&&r(uu,{}),e.status==="error"&&e.errorText?r("div",{class:`${Ae}-error`,role:"alert",children:r("span",{children:e.errorText})}):null]}),v?r("time",{class:`${Ae}-bubble-time`,dateTime:v.iso,title:v.full,children:v.short}):null]})})}function su(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 lu({part:e,active:t,strings:n,showReasoning:o,showToolCalls:i,interactive:a,tool:s}){switch(e.kind){case"text":return r(Co,{textSig:e.textSig,doneSig:e.doneSig});case"reasoning":return o?r(du,{part:e,active:t,strings:n}):null;case"tool":return r(cu,{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 cu({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(so(e.toolName)||a.value==="awaiting-input")return r(Ys,{part:e,strings:t,active:o,onSubmit:i.onResult,onDecision:i.onDecision});if(s.value||a.value==="awaiting-approval")return r(Ks,{part:e,strings:t,active:o,onDecision:i.onDecision})}return n?r(Qs,{part:e,strings:t}):null}function du({part:e,active:t,strings:n}){return r("details",{class:`${Ae}-reasoning`,open:t,"data-active":t?"true":void 0,children:[r("summary",{class:`${Ae}-reasoning-summary`,children:r("span",{class:`${Ae}-reasoning-label`,children:t?n.thinking:n.thoughts})}),r("div",{class:`${Ae}-reasoning-body`,children:r(Co,{textSig:e.textSig,doneSig:e.doneSig})})]})}function _u(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 uu(){return r("span",{class:`${Ae}-typing`,"aria-hidden":"true",children:[r("span",{}),r("span",{}),r("span",{})]})}function pu({label:e}){return r("span",{class:`${Ae}-loading`,role:"status",children:[r("span",{class:`${Ae}-loading-spinner`,"aria-hidden":"true"}),r("span",{class:`${Ae}-loading-label`,children:e})]})}var Lt=P.cssPrefix,Br=120,fu=350,mu=1200;function el({messagesSig:e,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,loading:a,idle:s,tool:l,form:c,formMarkers:d,onFillForm:u}){let _=M(null),m=re(()=>e.value),[g,f]=T(!1),[v,h]=T(!1),I=M(!1),b=M(!1),C=M(!1),N=M(0),B=()=>C.current||performance.now()-N.current<fu,V=M(0),$=y=>{V.current=performance.now(),y.scrollTop=y.scrollHeight},de=m.value[0]?.id;hr(()=>{let y=_.current;if(!y||m.value.length===0||(I.current=!0,!m.value.some(Xe=>Xe.role==="user")))return;let D=()=>$(y);D();let me=new ResizeObserver(D);me.observe(y);let Ce=new MutationObserver(D);Ce.observe(y,{childList:!0,subtree:!0,characterData:!0});let Te=setTimeout(()=>{me.disconnect(),Ce.disconnect()},300);return()=>{me.disconnect(),Ce.disconnect(),clearTimeout(Te)}},[de]);let z=M(0);w(()=>{let y=_.current,D=m.value,me=z.current;if(z.current=D.length,!y||!I.current)return;if(D.slice(me).some(Te=>Te.role==="user")){b.current=!1,$(y);return}if(b.current||B())return;y.scrollHeight-y.scrollTop-y.clientHeight<Br&&$(y)},[m.value.length]),w(()=>{let y=_.current;if(!y)return;let D=m.value.at(-1);if(!D)return;let me=()=>{if(b.current||B())return;y.scrollHeight-y.scrollTop-y.clientHeight<Br*2&&$(y)};if(D.status!=="streaming"){let Te=requestAnimationFrame(me);return()=>cancelAnimationFrame(Te)}me();let Ce=new MutationObserver(me);return Ce.observe(y,{childList:!0,subtree:!0,characterData:!0}),()=>Ce.disconnect()},[m.value]);let K=c?.form.id;hr(()=>{let y=_.current;!y||!K||b.current||m.value.some(D=>D.role==="user")&&$(y)},[K]),w(()=>{let y=_.current;if(!y)return;let D=()=>f(y.scrollHeight-y.scrollTop-y.clientHeight>Br*2),me,Ce=()=>{D(),performance.now()-V.current>150&&(b.current=y.scrollHeight-y.scrollTop-y.clientHeight>8),h(!0),clearTimeout(me),me=setTimeout(()=>h(!1),mu)},Te=()=>{b.current=!0},Xe=Je=>{Je.deltaY<0&&Te()},Nt=0,ut=Je=>{Nt=Je.touches[0]?.clientY??0,C.current=!0},Dt=Je=>{(Je.touches[0]?.clientY??0)>Nt+4&&Te()},Re=()=>{C.current=!1,N.current=performance.now()},Ot=()=>{C.current=!0};return y.addEventListener("scroll",Ce,{passive:!0}),y.addEventListener("wheel",Xe,{passive:!0}),y.addEventListener("touchstart",ut,{passive:!0}),y.addEventListener("touchmove",Dt,{passive:!0}),y.addEventListener("touchend",Re,{passive:!0}),y.addEventListener("touchcancel",Re,{passive:!0}),y.addEventListener("pointerdown",Ot,{passive:!0}),window.addEventListener("pointerup",Re,{passive:!0}),window.addEventListener("pointercancel",Re,{passive:!0}),D(),()=>{y.removeEventListener("scroll",Ce),y.removeEventListener("wheel",Xe),y.removeEventListener("touchstart",ut),y.removeEventListener("touchmove",Dt),y.removeEventListener("touchend",Re),y.removeEventListener("touchcancel",Re),y.removeEventListener("pointerdown",Ot),window.removeEventListener("pointerup",Re),window.removeEventListener("pointercancel",Re),clearTimeout(me)}},[]);let Ue=()=>{let y=_.current;y&&(b.current=!1,$(y))},ke=[],k="",J=m.value.at(-1)?.id,Z=[...d??[]].toSorted((y,D)=>(y.createdAt??1/0)-(D.createdAt??1/0)),pe=y=>r(Os,{marker:y,strings:t,onFill:!c&&u?()=>u(y.formId):void 0},y.key),fe=y=>{for(let D=Z[0];D?.createdAt!==void 0&&!(y!==void 0&&D.createdAt>y);D=Z[0])Z.shift(),ke.push(pe(D))};for(let y of m.value){fe(y.createdAt);let D=gu(y.createdAt);D&&D!==k&&(ke.push(r("div",{class:`${Lt}-date-divider`,children:r("span",{class:`${Lt}-date-pill`,title:hu(y.createdAt),children:vu(y.createdAt,t)})},`day:${D}`)),k=D),ke.push(r(Zs,{message:y,strings:t,responseMode:n,showReasoning:o,showToolCalls:i,interactive:!!s&&y.id===J,tool:l},y.id))}for(let y of Z)ke.push(pe(y));return r("div",{class:`${Lt}-list-wrap`,children:[r("div",{ref:_,class:`${Lt}-list`,role:"log","aria-live":"polite","aria-relevant":"additions text","data-scrolling":v?"true":void 0,children:[a&&m.value.length===0?r("div",{class:`${Lt}-list-loading`,role:"status",children:t.conversationLoading}):null,ke,c?r(Ds,{form:c.form,strings:t,onSubmit:c.onSubmit,onSkip:c.onSkip}):null]}),g?r("button",{type:"button",class:`${Lt}-jump`,onClick:Ue,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":S.scrollToBottom,children:r(ps,{})}):null]})}function gu(e){if(typeof e!="number"||!Number.isFinite(e))return"";let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function hu(e){if(typeof e!="number"||!Number.isFinite(e))return"";try{return new Date(e).toLocaleDateString(void 0,{dateStyle:"full"})}catch{return""}}function vu(e,t){let n=new Date(e),o=a=>new Date(a.getFullYear(),a.getMonth(),a.getDate()).getTime(),i=Math.round((o(new Date)-o(n))/864e5);return i<=0?t.dateToday:i===1?t.dateYesterday:i<7?n.toLocaleDateString(void 0,{weekday:"long"}):n.toLocaleDateString(void 0,{month:"long",day:"numeric",year:"numeric"})}var bu=["today","yesterday","lastWeek","older"];function xu(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return"older";let o=Math.floor((tl(e)-tl(n))/(1440*60*1e3));return o<=0?"today":o===1?"yesterday":o<7?"lastWeek":"older"}function nl(e,t){let n=new Map;for(let o of t){let i=xu(e,o.lastMessageAt),a=n.get(i);a?a.push(o):n.set(i,[o])}return bu.filter(o=>n.has(o)).map(o=>({bucket:o,conversations:n.get(o)}))}function tl(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}var Pu=U.scope("history"),yu={today:"dateToday",yesterday:"dateYesterday",lastWeek:"dateLastWeek",older:"dateOlder"};function Su(e,t,n){let o=Date.parse(e);return Number.isFinite(o)?new Date(o).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:"numeric",minute:"2-digit"}).format(o):t-o<10080*60*1e3?new Intl.DateTimeFormat(n,{weekday:"short"}).format(o):new Intl.DateTimeFormat(n,{month:"short",day:"numeric"}).format(o):""}function To({transport:e,strings:t,locale:n,visitorId:o,onSelect:i,onNewConversation:a}){let s=P.cssPrefix,l=e.peekConversations({visitorId:o}),[c,d]=T(l?"loaded":"loading"),[u,_]=T(l?.conversations??[]);w(()=>{let v=!1;return e.listConversations({visitorId:o}).then(h=>{v||(_(h.conversations??[]),d("loaded"))}).catch(h=>{v||(Pu.warn("listConversations failed",{err:h}),d("error"))}),()=>{v=!0}},[e,o]);let m=a?r("div",{class:`${s}-history-footer`,children:r("button",{type:"button",class:`${s}-history-new`,onClick:a,"data-testid":S.sidebarNewConversation,children:[r(qa,{}),t.newConversation]})}):null;if(c==="loading")return r(ne,{children:[r("div",{class:`${s}-history`,"aria-busy":"true","aria-label":t.historyLoading,children:r("div",{class:`${s}-history-group`,"aria-hidden":"true",children:[r("div",{class:`${s}-history-heading`,children:r("span",{class:`${s}-history-skeleton-line ${s}-skeleton-heading`})}),r("div",{class:`${s}-history-card`,children:[0,1,2].map(v=>r("div",{class:`${s}-history-skeleton-item`,children:[r("span",{class:`${s}-history-skeleton-avatar`}),r("span",{class:`${s}-history-skeleton-body`,children:[r("span",{class:`${s}-history-skeleton-line ${s}-skeleton-title`}),r("span",{class:`${s}-history-skeleton-line ${s}-skeleton-preview`})]})]},v))})]})}),m]});if(c==="error"||u.length===0)return r(ne,{children:[r("div",{class:`${s}-history-empty`,children:t.historyEmpty}),m]});let g=Date.now(),f=nl(g,u);return r(ne,{children:[r("div",{class:`${s}-history`,role:"list",children:f.map(v=>r("div",{class:`${s}-history-group`,children:[r("div",{class:`${s}-history-heading`,children:t[yu[v.bucket]]}),r("div",{class:`${s}-history-card`,children:v.conversations.map(h=>r("button",{type:"button",role:"listitem",class:`${s}-history-item`,onClick:()=>i(h),"data-closed":h.canContinue?void 0:"true","data-unread":(h.unreadCount??0)>0?"true":void 0,"data-testid":he(S.historyItem,h.conversationId),children:[r("span",{class:`${s}-history-avatar`,"aria-hidden":"true",children:r(Cr,{})}),r("span",{class:`${s}-history-body`,children:[r("span",{class:`${s}-history-row`,children:[r("span",{class:`${s}-history-title`,children:h.title}),r("span",{class:`${s}-history-time`,children:Su(h.lastMessageAt,g,n)})]}),r("span",{class:`${s}-history-row`,children:[r("span",{class:`${s}-history-preview`,children:h.preview??(h.canContinue?t.historyContinue:t.conversationClosed)}),(h.unreadCount??0)>0?r("span",{class:`${s}-history-dot`}):null]})]})]},h.conversationId))})]},v.bucket))}),m]})}var ol=P.cssPrefix;function rl({suggestions:e,onPick:t}){return e.length===0?null:r("div",{class:`${ol}-suggestions`,role:"group","aria-label":"Suggested replies",children:e.map((n,o)=>r("button",{type:"button",class:`${ol}-suggestion`,onClick:()=>t(n),"data-testid":he(S.suggestion,o),children:n.label},n.id))})}var Se=P.cssPrefix;function il(e){let{options:t,onClose:n}=e,o=t.strings,i=M(null);w(()=>{let c=i.current;if(!c)return;let d=bo(c),u=_=>{_.key==="Escape"&&n?.()};return c.addEventListener("keydown",u),()=>{d(),c.removeEventListener("keydown",u)}},[n]);let a=M(null),s=F(c=>{a.current?.attachFromDrop(c)},[]),{visible:l}=yo({containerRef:i,onDrop:s});return ho(i.current,t.mode==="modal"),r("div",{ref:i,class:`${Se}-panel`,role:"dialog","aria-modal":"false","aria-label":o.panelTitle,style:{position:"relative"},"data-testid":S.panel,children:[r(zr,{...e,containerEl:i.current,dragOver:l,composerAttachApiRef:a}),r(Ur,{poweredBy:e.options.poweredBy})]})}function zr(e){let{options:t,transport:n,feedback:o,bus:i,panelSize:a,view:s,canSend:l,isStreaming:c,loadingMessages:d,messagesSig:u,agent:_,suggestions:m,initialWidgetSize:g,visitorId:f,onClose:v,onBack:h,onClear:I,onToggleHistory:b,onSelectHistoryConversation:C,onNewConversation:N,onWidgetSizeChange:B,onSend:V,onStop:$,onSuggestion:de,activeForm:z,formMarkers:K,onFormSubmit:Ue,onFormSkip:ke,onFormFill:k,tool:J,containerEl:Z,dragOver:pe,composerAttachApiRef:fe}=e,y=t.strings,D;return z?D=null:l?D=r(ne,{children:[r(rl,{suggestions:m,onPick:de}),r(Is,{options:t,transport:n,feedback:o,bus:i,isStreaming:c,onSend:V,onStop:$,attachApiRef:fe})]}):D=r(wu,{label:y.conversationClosed,ctaLabel:y.startNewConversation,onNewConversation:I}),r(ne,{children:[s==="history"?r(ku,{strings:y,onBack:b,onClose:v,showClose:vo(t.mode,a,t.actions)}):r("header",{class:`${Se}-header`,"data-testid":S.panelHeader,children:[h?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:h,"aria-label":y.moduleBack,title:y.moduleBack,children:r(tn,{})}):null,_?r(Cs,{agent:_,strings:y}):r("h1",{children:y.panelTitle}),r(Be,{panelProps:e,variant:"chat"})]}),s==="history"?r(To,{transport:n,strings:y,locale:t.locale,visitorId:f,onSelect:me=>C(me.conversationId),onNewConversation:N}):r(ne,{children:[r(As,{visible:pe,strings:y}),r(el,{messagesSig:u,strings:y,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,loading:d,idle:!c,tool:J,form:z?{form:z,onSubmit:Ue,onSkip:ke}:null,formMarkers:K,onFillForm:k}),D,r(Cu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?r(go,{panelEl:Z,resize:t.size.resize,position:t.position,initialSize:g,onSizeChange:B,strings:y}):null]})}function ku({strings:e,onBack:t,onClose:n,showClose:o}){return r("header",{class:`${Se}-header`,children:[r("button",{type:"button",class:`${Se}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:r(tn,{})}),r("h1",{children:e.historyTitle}),o?r("button",{type:"button",class:`${Se}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null]})}function wu({label:e,ctaLabel:t,onNewConversation:n}){return r("div",{class:`${Se}-readonly-banner`,role:"note",children:[r("span",{class:`${Se}-readonly-label`,children:e}),r("button",{type:"button",class:`${Se}-readonly-cta`,onClick:n,children:t})]})}function Cu({disclaimer:e}){return e?r("div",{class:`${Se}-composer-footer`,children:r("div",{class:`${Se}-disclaimer`,children:e})}):null}function Ur({poweredBy:e}){return e?r("div",{class:`${Se}-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(ne,{children:[e?r("img",{class:`${Se}-poweredby-logo`,src:e,alt:"",loading:"lazy"}):null,t?r("span",{children:t}):null]});return n?r("a",{class:`${Se}-poweredby`,href:n,target:"_blank",rel:"noopener noreferrer",children:o}):r("span",{class:`${Se}-poweredby`,children:o})}function al(e){let t=M(e);t.current=e;let n=M(null);return n.current??(n.current=Eu(t)),n.current}function Eu(e){let t=H(null),n=new Set,o=c=>`${e.current.conversationId()??""}:${c}`,i=c=>c.frequency==="always"?!1:c.frequency==="conversation"?n.has(o(c.id)):c.id in e.current.persistence.loadFormsDone(),a=(c,d)=>{if(t.value)return;let u=e.current;if(c==="manual"){let _=u.forms.list.find(m=>m.id===d);_&&(t.value={form:_,trigger:"manual"});return}for(let _ of u.forms.byTrigger[c]??[]){let m=_.triggers.find(g=>g.kind===c);if(!(!m||!Iu(m,u)||i(_)||!Au(_,u))){t.value={form:_,trigger:c};return}}},s=(c,d)=>{let u=t.value;if(!u)return;t.value=null;let{form:_,trigger:m}=u;_.frequency==="conversation"?n.add(o(_.id)):_.frequency!=="always"&&e.current.persistence.saveFormDone(_.id),e.current.onComplete(_,m,c,d)};return{activeForm:t,fire:a,refresh:()=>{let c=t.value;if(!c)return;let d=e.current.forms.list.find(u=>u.id===c.form.id);d&&d!==c.form&&(t.value={form:d,trigger:c.trigger})},complete:c=>s(c,!1),skip:()=>s({},!0)}}function Iu(e,t){return e.kind==="after-messages"?t.messageCount()>=Number(e.param??0):e.kind==="page-area"?t.pageArea()===e.param:!0}function Au(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 sl(e){let t=P.cssPrefix,{site:n,blocks:o,strings:i,collapsed:a}=e,s=o?.navigation??[],l=o?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return r("aside",{class:`${t}-sidebar`,"data-collapsed":a?"true":"false","data-testid":S.sidebar,children:[r("div",{class:`${t}-sidebar-header`,children:[r(Ru,{site:n}),r("button",{type:"button",class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?"false":"true",title:c,onClick:e.onToggleCollapsed,"data-testid":S.sidebarToggle,children:r(Lu,{collapsed:a})})]}),a?null:r(ne,{children:[s.length>0?r("nav",{class:`${t}-sidebar-section`,"data-section":"navigation",children:r(Mu,{items:s})}):null,l.length>0?r("div",{class:`${t}-sidebar-section`,"data-section":"link-cards",children:r(Nu,{items:l})}):null,e.showConversations?r("div",{class:`${t}-sidebar-conversations`,children:r(To,{transport:e.transport,strings:e.strings,locale:e.locale,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function Ru({site:e}){let t=P.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??P.name})}function Lu({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 Mu({items:e}){let t=P.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 Nu({items:e}){let t=P.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 ll=P.cssPrefix;function cl(e){return r("main",{class:`${ll}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?"true":"false",children:[r(sl,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,locale:e.locale,visitorId:e.visitorId,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),r("section",{class:`${ll}-page-chat`,"aria-label":"Chat",children:e.children})]})}var dl=e=>Object.fromEntries(e.map(t=>[t,[]]));function _l(e,t,n){let o=H({activeTab:e,stacks:dl(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:dl(t)}}}}var ul=e=>e.stacks[e.activeTab]??[],pl=e=>ul(e).at(-1),fl=e=>ul(e).length===0;var ml={Icon:nn};var tt=P.cssPrefix;function Eo({title:e,actions:t}){return r("header",{class:`${tt}-back-header`,"data-variant":"title",children:[r("span",{class:`${tt}-back-spacer`,"aria-hidden":"true"}),r("h1",{class:`${tt}-back-title`,children:e}),t??r("span",{class:`${tt}-back-spacer`,"aria-hidden":"true"})]})}function Io({title:e,backLabel:t,onBack:n,actions:o,testid:i}){return r("header",{class:`${tt}-back-header`,"data-testid":i,children:[r("button",{type:"button",class:`${tt}-icon-btn`,onClick:n,"aria-label":t,title:t,children:r(tn,{})}),r("h1",{class:`${tt}-back-title`,children:e}),o??r("span",{class:`${tt}-back-spacer`,"aria-hidden":"true"})]})}var Mt=P.cssPrefix;function gl({placeholder:e,onActivate:t}){return r("button",{type:"button",class:`${Mt}-home-search`,onClick:t,"data-testid":S.homeSearch,children:[r("span",{class:`${Mt}-home-search-text`,children:e}),r("span",{class:`${Mt}-home-search-icon`,"aria-hidden":"true",children:r(Er,{})})]})}function hl({placeholder:e,value:t,onInput:n}){return r("div",{class:`${Mt}-home-search`,"data-input":"true",children:[r("input",{type:"search",class:`${Mt}-home-search-input`,placeholder:e,value:t,onInput:o=>n(o.currentTarget.value),"data-testid":S.helpSearch}),r("span",{class:`${Mt}-home-search-icon`,"aria-hidden":"true",children:r(Er,{})})]})}var sn=P.cssPrefix;function Ao({title:e,subtitle:t,onClick:n,testid:o}){return r("button",{type:"button",class:`${sn}-list-row`,onClick:n,"data-testid":o,children:[r("span",{class:`${sn}-list-row-body`,children:[r("span",{class:`${sn}-list-row-title`,children:e}),t?r("span",{class:`${sn}-list-row-sub`,children:t}):null]}),r("span",{class:`${sn}-list-row-chevron`,"aria-hidden":"true",children:r(It,{})})]})}var vl=P.cssPrefix;function De({tone:e="info",message:t,onRetry:n,strings:o}){return r("div",{class:`${vl}-module-empty`,role:e==="error"?"alert":"status","aria-live":"polite",children:[r("span",{children:t}),n?r("button",{type:"button",class:`${vl}-module-retry`,onClick:n,children:o.errorRetry}):null]})}var _t=P.cssPrefix,Du=U.scope("help"),Ou=(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 bl(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 Hu(e,t){let n=t.toLowerCase().trim();return n?e.map(o=>({item:o,score:Math.max(bl(n,o.title)*2,bl(n,o.description??""))})).filter(o=>o.score>0).toSorted((o,i)=>i.score-o.score).map(o=>o.item):[]}function xl({article:e,nav:t}){return r(Ao,{title:e.title,subtitle:e.description,onClick:()=>Ou(t,e),testid:he(S.helpArticle,e.id)})}function Fu({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(""),[f,v]=T(0);w(()=>{let b=!1;return l("loading"),e.listContent({tags:a,sortBy:"order",limit:100}).then(C=>{b||(_(C.items??[]),l("loaded"))}).catch(C=>{b||(Du.warn("listContent (help) failed",{err:C}),d(st(C,t)),l("error"))}),()=>{b=!0}},[e,a,f]);let h=xe(()=>Hu(u,m),[u,m]);function I(){return m.trim().length>0?h.length===0?r(De,{message:t.helpSearchEmpty,strings:t}):r("div",{class:`${_t}-help-card`,children:h.map(b=>r(xl,{article:b,nav:o},b.id))}):s==="loading"?r(De,{message:t.helpLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>v(b=>b+1),strings:t}):u.length===0?r(De,{message:t.helpEmpty,strings:t}):$u(u).map(([b,C])=>r("section",{class:`${_t}-help-group`,children:[b?r("h2",{class:`${_t}-help-section-title`,children:b}):null,r("div",{class:`${_t}-help-card`,children:C.map(N=>r(xl,{article:N,nav:o},N.id))})]},b))}return r("div",{class:`${_t}-module`,children:[r(Eo,{title:t.helpTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${_t}-module-pad`,children:r(hl,{placeholder:t.helpSearchPlaceholder,value:m,onInput:g})}),r("div",{class:`${_t}-help-list`,children:I()})]})}var Pl={Icon:Tr,Root:e=>r(Fu,{...e})};var yl=P.cssPrefix;function Wr({onClick:e,children:t,testid:n}){return e?r("button",{type:"button",class:`${yl}-home-card`,"data-interactive":"true",onClick:e,"data-testid":n,children:t}):r("div",{class:`${yl}-home-card`,"data-testid":n,children:t})}var oe=P.cssPrefix,Sl=U.scope("home");function Bu(e){let t=e.options.userContext?.name,n=e.config.greetingText?be(e.strings,e.config.greetingText):void 0;return n?{title:t?n.replace("{name}",t):n.replace(/\s*\{name\}\s*/," ").trim(),subtitle:e.strings.homeGreetingLead}:t?{title:e.strings.homeGreetingNamed.replace("{name}",t),subtitle:e.strings.homeGreetingLead}:{title:e.strings.homeGreeting}}var zu=(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 Uu(e){let{transport:t,strings:n,config:o,nav:i,panelProps:a}=e,[s,l]=T(null),[c,d]=T([]),u=o.contentTags?.join(",");w(()=>{if(!o.showRecentConversations)return;let h=!1;return t.listConversations({limit:1}).then(I=>!h&&l(I.conversations?.[0]??null)).catch(I=>!h&&Sl.warn("listConversations (home) failed",{err:I})),()=>{h=!0}},[t,o.showRecentConversations]),w(()=>{if(!o.contentTags?.length)return;let h=!1;return t.listContent({tags:o.contentTags,limit:6}).then(I=>!h&&d(I.items??[])).catch(I=>!h&&Sl.warn("listContent (home) failed",{err:I})),()=>{h=!0}},[t,u]);let _=Bu(e),m=o.userAvatars??[],g=o.status,f=g?.text?be(n,g.text):n.homeStatus,v=o.contentBlockTitle?be(n,o.contentBlockTitle):n.homeContentTitle;return r("div",{class:`${oe}-module ${oe}-home`,"data-testid":S.homeView,children:r("div",{class:`${oe}-home-scroll`,children:[r("div",{class:`${oe}-home-hero`,children:[r("div",{class:`${oe}-home-hero-top`,children:[o.brandName?r("span",{class:`${oe}-home-brand`,"data-testid":S.homeBrand,children:o.brandName}):r("span",{class:`${oe}-home-brand-spacer`,"aria-hidden":"true"}),r("div",{class:`${oe}-home-hero-actions`,children:[m.length>0?r("div",{class:`${oe}-home-avatars`,children:m.map(h=>r("span",{class:`${oe}-home-avatar`,title:h.role?`${h.name} \xB7 ${h.role}`:h.name,children:h.avatar?r("img",{src:h.avatar,alt:"",loading:"lazy"}):r("span",{children:xo(h.name)})},h.name))}):null,r(Be,{panelProps:a,variant:"plain"})]})]}),o.showGreeting!==!1?r(ne,{children:[r("h1",{class:`${oe}-home-greeting`,"data-testid":S.homeGreeting,children:_.title}),_.subtitle?r("p",{class:`${oe}-home-lead`,children:_.subtitle}):null]}):null]}),r("div",{class:`${oe}-home-cards`,children:[o.showSearchBar!==!1?r(gl,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout("help")}):null,s?r(Wr,{onClick:()=>i.selectConversation(s.conversationId),testid:S.homeRecent,children:r("div",{class:`${oe}-home-recent-row`,"data-unread":(s.unreadCount??0)>0?"true":void 0,children:[r("span",{class:`${oe}-home-recent-avatar`,"aria-hidden":"true",children:r(nn,{})}),r("span",{class:`${oe}-home-recent-body`,children:[r("span",{class:`${oe}-home-recent-title`,children:s.title}),s.preview?r("span",{class:`${oe}-home-recent-preview`,children:s.preview}):null]}),(s.unreadCount??0)>0?r("span",{class:`${oe}-home-recent-dot`,"aria-label":"Unread"}):null]})}):null,g?r(Wr,{onClick:g.url?()=>i.push({kind:"iframe",url:g.url,title:f}):void 0,children:r("div",{class:`${oe}-home-status`,"data-level":g.level??"operational",children:[r("span",{class:`${oe}-home-status-icon`,"aria-hidden":"true",children:r(ms,{})}),r("span",{class:`${oe}-home-status-text`,children:f})]})}):null,c.length>0?r("section",{class:`${oe}-home-content`,children:[r("div",{class:`${oe}-home-content-title`,children:v}),r("div",{class:`${oe}-home-content-list`,children:c.map(h=>r(Ao,{title:h.title,subtitle:h.description,onClick:()=>zu(i,h),testid:he(S.homeContentRow,h.id)},h.id))})]}):null]})]})})}var kl={Icon:gs,Root:e=>r(Uu,{...e})};var nt=P.cssPrefix,Wu=U.scope("news");function Gu({transport:e,strings:t,config:n,nav:o,panelProps:i}){let a=n.contentTags,[s,l]=T("loading"),[c,d]=T(t.errorGeneric),[u,_]=T([]),[m,g]=T(0);w(()=>{let v=!1;return l("loading"),e.listContent({tags:a,sortBy:"publishedAt",sortOrder:"desc"}).then(h=>{v||(_(h.items??[]),l("loaded"))}).catch(h=>{v||(Wu.warn("listContent (news) failed",{err:h}),d(st(h,t)),l("error"))}),()=>{v=!0}},[e,a,m]);function f(){return s==="loading"?r(De,{message:t.newsLoading,strings:t}):s==="error"?r(De,{tone:"error",message:c,onRetry:()=>g(v=>v+1),strings:t}):u.length===0?r(De,{message:t.newsEmpty,strings:t}):r("div",{class:`${nt}-news-list`,children:u.map(v=>r("button",{type:"button",class:`${nt}-news-card`,onClick:()=>o.push({kind:"content",id:v.id,title:v.title}),"data-testid":he(S.newsItem,v.id),children:[v.image?r("img",{class:`${nt}-news-hero`,src:v.image,alt:"",loading:"lazy"}):null,r("span",{class:`${nt}-news-body`,children:[r("span",{class:`${nt}-news-title`,children:v.title}),v.description?r("span",{class:`${nt}-news-summary`,children:v.description}):null]})]},v.id))})}return r("div",{class:`${nt}-module`,children:[r(Eo,{title:t.newsTitle,actions:r(Be,{panelProps:i,variant:"plain"})}),r("div",{class:`${nt}-module-scroll`,children:f()})]})}var wl={Icon:hs,Root:e=>r(Gu,{...e})};var Ro={chat:ml,home:kl,help:Pl,news:wl};var ln=P.cssPrefix;function Cl({modules:e,activeTab:t,strings:n,unreadCount:o,onSelect:i}){return r("nav",{class:`${ln}-tabbar`,role:"tablist","aria-label":n.panelTitle,children:e.map(a=>{let s=Ro[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:`${ln}-tab`,onClick:()=>i(a.id),"data-testid":he(S.tab,a.id),children:[r("span",{class:`${ln}-tab-icon`,"aria-hidden":"true",children:[r(s,{}),c?r("span",{class:`${ln}-tab-badge`,"data-testid":S.tabBadge,children:c}):null]}),r("span",{class:`${ln}-tab-label`,children:be(n,a.label)})]},a.id)})})}var Tl=P.cssPrefix,Vu="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads";function El({url:e,title:t,strings:n,onBack:o,actions:i}){return r("div",{class:`${Tl}-module`,children:[r(Io,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:o,actions:i}),r("iframe",{class:`${Tl}-content-frame`,src:e,title:t||"content",sandbox:Vu,referrerpolicy:"no-referrer",loading:"lazy",allow:"fullscreen"})]})}var cn=P.cssPrefix,Ku=U.scope("content");function Il({id:e,title:t,transport:n,strings:o,onBack:i,actions:a}){let[s,l]=T(null),[c,d]=T(!1),[u,_]=T(0),m=F(()=>{d(!1),l(null),_(f=>f+1)},[]);w(()=>{let f=!1;return n.listContent({ids:[e],limit:1}).then(v=>{if(f)return;let h=v.items[0];h?l(h):d(!0)}).catch(v=>{f||(Ku.warn("listContent (reader) failed",{err:v}),d(!0))}),()=>{f=!0}},[n,e,u]);function g(){return c?r(De,{tone:"error",message:o.errorGeneric,onRetry:m,strings:o}):s===null?r(De,{message:o.contentLoading,strings:o}):r("article",{class:`${cn}-content`,"data-testid":S.contentView,children:[s.image?r("img",{class:`${cn}-content-hero`,src:s.image,alt:"",loading:"lazy"}):null,s.description?r("p",{class:`${cn}-content-subtitle`,children:s.description}):null,r(Gs,{text:s.content??""})]})}return r("div",{class:`${cn}-module`,children:[r(Io,{title:s?.title||t||o.moduleBack,backLabel:o.moduleBack,onBack:i,actions:a,testid:S.backHeader}),r("div",{class:`${cn}-module-scroll`,"data-testid":S.contentScroll,children:g()})]})}var Gr=P.cssPrefix;function Al({panelProps:e,enabledModules:t,nav:n,unreadCount:o,onSelectConversation:i,onStartNewConversation:a,onSetPanelSize:s}){let l=e.options,c=l.strings,d=M(null);w(()=>{let $=d.current;if(!$)return;let de=bo($),z=K=>{K.key==="Escape"&&e.onClose?.()};return $.addEventListener("keydown",z),()=>{de(),$.removeEventListener("keydown",z)}},[e.onClose]);let u=M(null),_=F($=>{u.current?.attachFromDrop($)},[]),{visible:m}=yo({containerRef:d,onDrop:_});ho(d.current,l.mode==="modal");let g=re(()=>n.sig.value).value,f=pl(g),v=l.modules.byId[g.activeTab],h=f?.kind==="iframe"||f?.kind==="content",I=t.length>1&&(fl(g)||!h),b=M(null);w(()=>{if(h&&b.current===null)b.current=e.panelSize,e.panelSize==="normal"&&s("expanded");else if(!h&&b.current!==null){let $=b.current;b.current=null,s($)}},[h]);let C={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:$=>{let de=t.find(z=>z.layout===$);de&&n.switchTab(de.id)},selectConversation:i,startNewConversation:a},N=$=>({options:l,transport:e.transport,strings:c,config:$,visitorId:e.visitorId,nav:C,panelProps:e}),B=r(Be,{panelProps:e,variant:"plain"}),V;if(f?.kind==="iframe")V=r(El,{url:f.url,title:f.title,strings:c,onBack:n.pop,actions:B});else if(f?.kind==="content")V=r(Il,{id:f.id,title:f.title,transport:e.transport,strings:c,onBack:n.pop,actions:B});else if(v?.layout==="chat")V=r(zr,{...e,containerEl:d.current,dragOver:m,composerAttachApiRef:u});else if(v){let $=Ro[v.layout].Root;V=$?r($,{...N(v)},v.id):null}else V=null;return r("div",{ref:d,class:`${Gr}-panel ${Gr}-messenger`,role:"dialog","aria-modal":"false","aria-label":c.panelTitle,style:{position:"relative"},"data-testid":S.messengerHome,children:[r("div",{class:`${Gr}-messenger-body`,children:V}),I?r(Cl,{modules:t,activeTab:g.activeTab,strings:c,unreadCount:o,onSelect:n.switchTab}):null,r(Ur,{poweredBy:l.poweredBy}),l.size.resize?.enabled&&!(v?.layout==="chat"&&!f)?r(go,{panelEl:d.current,resize:l.size.resize,position:l.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:c}):null]})}var dn=P.cssPrefix;function Rl({strings:e,onClose:t}){return r("div",{class:`${dn}-panel ${dn}-modules-empty`,role:"dialog","aria-label":e.panelTitle,"data-testid":S.modulesEmpty,children:[t?r("button",{type:"button",class:`${dn}-icon-btn ${dn}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:r(Fe,{})}):null,r("p",{class:`${dn}-modules-empty-text`,children:e.modulesEmpty})]})}function Ll({callout:e,persistence:t}){let n=e?.text??"",o=e?.persistent??!0,[i,a]=T(()=>o?!1:t.loadCalloutDismissed(n));w(()=>{a(o?!1:t.loadCalloutDismissed(n))},[n,o,t]);let s=F(()=>{a(!0),o||t.saveCalloutDismissed(n)},[t,n,o]);return{dismissed:i,dismissCallout:s}}var G=U.scope("app"),Vr=P.cssPrefix;function Ml(e,t){return Fa({...e,text:be(t,e.text)})}function Nl({options:e,hostElement:t,bus:n}){let[o]=T(()=>Pt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[i,a]=T(()=>o.getVisitorId()),s=o.loadUserPrefs(),[l,c]=T(()=>s.locale??e.locale),[d,u]=T(()=>s.themeMode??e.themeMode),[_,m]=T(()=>s.textSize??e.textSize),g=at(o.loadConversationId()),f=at([]),v=at(0),[h,I]=T(!1),[b,C]=T([]);function N(){let p=e.modules.list,x=new Set(p.map(R=>R.id)),L=o.loadActiveModule();return L&&x.has(L)?L:p[0]?.id??""}function B(){return e.modules.list.find(p=>p.layout==="chat")?.id}let V=M();if(!V.current){let p=e.modules.list.map(x=>x.id);V.current=_l(N(),p,x=>o.saveActiveModule(x))}let $=V.current,de=M(void 0);de.current=B();let[z,K]=T(!1),[Ue,ke]=T(null),[k,J]=T(!1),Z=e.mode==="standalone"||e.mode==="inline",pe=M(Qt(e,Ct(),o.loadPanelOpen(),o.loadPanelSize())),[fe,y]=T(pe.current.panelOpen),[D,me]=T(pe.current.panelOpen),Ce=M(D);Ce.current=D;let Te=M(!1),Xe=M(void 0);w(()=>{fe&&me(!0)},[fe]);let Nt=M(!1),[ut,Dt]=T(!1),{dismissed:Re,dismissCallout:Ot}=Ll({callout:e.launcher.callout,persistence:o}),Je=e.launcher.callout?.persistent??!0,_n=F(()=>{G.info("calloutDismiss"),n.emit("calloutDismiss",void 0),Ot()},[n,Ot]),[Le,pt]=T(pe.current.panelSize),Jr=M(!1),[Bl,Mo]=T("chat"),[$t,Ht]=T(!0),[We,un]=T(!1),[zl,Yr]=T(null),[No,pn]=T([]),[fn,mn]=T(null),gn=M(e.strings),[Ul,Wl]=T(void 0),[Gl,Vl]=T(void 0),[Kl,ql]=T(()=>o.loadSidebarCollapsed()??!1),[Do,jl]=T({}),[Y]=T(()=>new io({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Ta({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:"x-public-key"}),endpoints:e.endpoints})),[Oe]=T(()=>new co(f)),[ie]=T(()=>new fo(e.sound,e.haptics)),He=F(p=>{o.patchUserPrefs(p),Y.saveUserPrefs(o.loadUserPrefs()).catch(x=>{G.warn("saveUserPrefs failed",{err:x})})},[o,Y]);w(()=>{s.soundMuted!==void 0&&ie.setMuted(s.soundMuted)},[]),w(()=>{t.dataset.theme=d},[t,d,e]),w(()=>{t.dataset.textSize=_},[t,_,e]),w(()=>{ie.update(e.sound,e.haptics)},[ie,e.sound,e.haptics]),w(()=>()=>ie.destroy(),[ie]),w(()=>{let p=!0;return ie.mutedSig.subscribe(x=>{if(p){p=!1;return}He({soundMuted:x})})},[ie,He]),w(()=>{Jr.current||!e.size.initialSize||(Jr.current=!0,!o.loadPanelSize()&&pt(Pr(e.mode,e.size,Ct())))},[e.mode,e.size,o]),w(()=>{if(!z||Nt.current)return;Nt.current=!0;let p=Qt(e,Ct(),o.loadPanelOpen(),o.loadPanelSize());y(p.panelOpen),pt(p.panelSize)},[z,e,o]);let Qr=M(!1),Zr=M(!1),hn=M(null);w(()=>{if(!(!z||Qr.current)){if(Qr.current=!0,Zr.current){let p=de.current;p&&$.switchTab(p);return}$.reset(N())}},[z]);let vn=F(p=>{!p||p.length===0||(f.value=p.map(x=>Ml(x,gn.current)))},[f]),Oo=M(null),bn=F(async p=>{try{let{formSubmissions:x}=await(p?Y.bootstrap(p):Oo.current??Y.bootstrap()),L=new Map;return x.forEach((R,W)=>L.set(R.formId,W)),x.filter((R,W)=>!R.skipped||L.get(R.formId)===W).map((R,W)=>({key:`wire:${R.formId}:${R.createdAt??W}`,formId:R.formId,outcome:R.skipped?"skipped":"submitted",createdAt:ro(R.createdAt),values:R.values}))}catch(x){return G.debug("bootstrap failed \u2014 no form markers (non-fatal)",{err:x}),[]}},[Y]),Ft=M(0),Bt=F((p,x)=>{let L=[...p.map(_e=>_e.createdAt),...x.map(_e=>_e.createdAt)].filter(_e=>_e!==void 0),R=(L.length?Math.min(...L):Date.now())-1,W=new Set(p.map(_e=>_e.id));return[...(Xe.current?.messages??[]).filter(_e=>!W.has(_e.id)).map(_e=>{let Ye=Ml(_e,gn.current);return Ye.createdAt=R,Ye}),...p]},[]),$o=F(async p=>{let x=Ft.current,L=()=>x!==Ft.current;I(!0);try{let[R,W]=await Promise.all([Y.loadConversation(p),bn()]);if(L())return;let E=(R.messages??[]).map(kr);C(W);let _e=hn.current?[hn.current]:[];E.length||_e.length?(f.value=[...Bt(E,W),..._e],Ht(R.canContinue??!0),pn(R.suggestions??[])):f.value=Bt([],W)}catch(R){if(L())return;G.warn("loadThread failed; resetting conversationId",{err:R,conversationId:p}),g.value=void 0,o.saveConversationId(void 0)}finally{L()||I(!1)}},[Y,bn,f,g,o,Bt]),zt=F(async({newConversation:p})=>{let x=++Ft.current,L=()=>x!==Ft.current,R=g.value,W=p||!R?$e():R;W!==R&&(g.value=W,o.saveConversationId(W));let E;try{E=await Y.handshake({visitorId:i,conversationId:W,userPrefs:o.loadUserPrefs(),locale:l})}catch(Ye){if(L())return;n.emit("error",Ye),e.onError?.(Ye),p||K(!0);return}if(L())return;if(E.visitorId&&E.visitorId!==i&&(G.info("visitor rebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId}),o.setVisitorId(E.visitorId),a(E.visitorId),n.emit("visitorRebound",{previous:i,current:E.visitorId,reason:E.rebind?.visitorId})),E.conversationId&&E.conversationId!==W&&(G.info("conversation rebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId}),n.emit("conversationRebound",{previous:W,current:E.conversationId,reason:E.rebind?.conversationId})),E.agent&&Yr(E.agent),e.mode==="page"&&(E.site&&wa(E.site)?Wl(E.site):E.site&&G.warn("invalid site config, using fallback",{site:E.site}),E.blocks&&Ca(E.blocks)?Vl(E.blocks):E.blocks&&G.warn("invalid blocks config, using fallback",{blocks:E.blocks})),E.userPrefs&&!p&&(o.saveUserPrefs(E.userPrefs),E.userPrefs.locale&&c(E.userPrefs.locale),E.userPrefs.soundMuted!==void 0&&ie.setMuted(E.userPrefs.soundMuted),E.userPrefs.themeMode&&u(E.userPrefs.themeMode),E.userPrefs.textSize&&m(E.userPrefs.textSize)),Xe.current=E.welcome,p||n.emit("handshake",E),E.welcome?.suggestions){let Ye=gn.current;pn(E.welcome.suggestions.map(kn=>({...kn,label:be(Ye,kn.label),...kn.text===void 0?{}:{text:be(Ye,kn.text)}})))}!p&&R&&E.conversationId===R?Ce.current?$o(R):Te.current=!0:(g.value=E.conversationId,o.saveConversationId(E.conversationId),vn(E.welcome?.messages)),p||K(!0)},[Y,i,o,e,n,g,ie,vn,$o,l]),Ut=JSON.stringify(e.userContext??null),Xl=JSON.stringify(e.pageContext??null),Jl=JSON.stringify(Do);w(()=>{let p=Object.keys(Do).length?{...Do,...e.userContext}:e.userContext;Y.setContext(p,qu(e.pageContext))},[Y,Ut,Xl,Jl]);let Ee=bt(l,e.availableLocales,e.defaultLocale);w(()=>{Y.setLocale(Ee)},[Y,Ee]),w(()=>{t.dir=Ei(Ee)?"rtl":"ltr"},[t,Ee]),w(()=>{Ee!==l&&c(Ee)},[Ee,l]);let Yl=F(async p=>{let x=null;try{for await(let L of p.iter){if(!x){x=ao(),hn.current=x,Oe.attach(x),f.value=[...f.value,x],un(!0),mn(()=>p.cancel),Zr.current=!0;let R=de.current;R&&$.switchTab(R),G.info("resumed in-flight reply on mount")}Oe.apply(L.chunk),L.chunk.type==="finish"&&L.chunk.canContinue===!1&&Ht(!1)}x&&(x.status="complete",ie.play("messageReceived"),Kr(n,e,"assistant",wr(x)))}catch(L){x&&(x.status="error",x.errorText=st(L,e.strings),ie.play("error")),G.debug("mount resume ended without completing",{err:L})}finally{hn.current=null,x&&(Oe.detach(),un(!1),mn(null),f.value=[...f.value])}},[Oe,f,ie,n,e,$]),ei=M(null);w(()=>{let p=g.value;return p&&Y.primeIdentity(i,p),zt({newConversation:!1}),()=>{Ft.current++,ei.current?.cancel()}},[]),w(()=>{if(D){if(Oo.current=Y.bootstrap(),(async()=>{try{let p=await Oo.current;ke(Kt((p??{forms:[]}).forms,Ee))}catch(p){G.debug("bootstrap failed \u2014 treating as no forms",{err:p})}finally{J(!0)}})(),Te.current){Te.current=!1;let p=g.value;p&&$o(p)}if(g.value){let p=Y.resumeStream();ei.current=p,Yl(p)}}},[D]);let xn=M(null);w(()=>{if(!D)return;if(xn.current===null){xn.current=Ee;return}if(xn.current===Ee)return;xn.current=Ee;let p=!1;return Y.bootstrap().then(x=>{p||ke(Kt((x??{forms:[]}).forms,Ee))}).catch(x=>G.debug("forms re-localize failed \u2014 keeping current copy",{err:x})),()=>{p=!0}},[D,Ee,Y]);let ti=M(Ut);w(()=>{!z||ti.current===Ut||(ti.current=Ut,zt({newConversation:!1}))},[Ut,z,zt]),w(()=>{Gn(t,oo(e.mode,Le,fe))},[t,fe,Le,e.mode]),w(()=>{if(e.mode!=="modal"||!fe)return;let p=x=>{x.composedPath().some(W=>W instanceof HTMLElement&&W.classList.contains(`${P.cssPrefix}-panel`))||y(!1)};return t.addEventListener("click",p),()=>t.removeEventListener("click",p)},[t,fe,e.mode]),w(()=>{if(e.mode!=="drawer"||!fe)return;let p=x=>{x.key==="Escape"&&y(!1)};return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[fe,e.mode]);let Pn=F(async(p,x)=>{let L=g.value??$e();g.value||(g.value=L,o.saveConversationId(L));let R=Ma({messages:f.value.slice(0,-1).map(Ba),conversationId:L,tools:e.features.tools,responseMode:e.responseMode,trigger:x,visitorId:i,userPrefs:o.loadUserPrefs()});un(!0);let W=Y.sendMessage(R);mn(()=>W.cancel);try{for await(let E of W.iter)Oe.apply(E.chunk),E.chunk.type==="finish"&&E.chunk.canContinue===!1&&Ht(!1);p.status="complete",ie.play("messageReceived"),Kr(n,e,"assistant",wr(p))}catch(E){p.status="error",p.errorText=st(E,e.strings),ie.play("error"),n.emit("error",E),e.onError?.(E)}finally{Oe.detach(),un(!1),mn(null),f.value=[...f.value]}},[Y,Oe,f,g,e,n,ie,o,i]),yn=F((p,x,L)=>{if(We)return;let R=f.value.at(-1),W=R?.partsSig.value.find(_e=>_e.kind==="tool"&&_e.toolCallId===p);if(!W){G.warn("resolveTool: tool part not found",{toolCallId:p});return}L(W),R&&(R.partsSig.value=[...R.partsSig.value]);let E=ao();f.value=[...f.value,E],Oe.attach(E),Pn(E,x)},[We,f,Oe,Pn]),ni=F((p,x)=>{G.info("toolResult",{toolCallId:p}),n.emit("toolResult",{toolCallId:p}),yn(p,lo.toolResult,L=>{L.outputSig.value=x,L.stateSig.value="output"})},[n,yn]),oi=F((p,x,L)=>{G.info("toolDecision",{toolCallId:p,approved:x}),n.emit("toolDecision",{toolCallId:p,approved:x}),yn(p,lo.toolApproval,R=>{let W=R.approvalSig.value?.id??p;R.approvalSig.value={id:W,approved:x,reason:L},R.stateSig.value="output"})},[n,yn]),Ql=xe(()=>({humanInLoop:e.features.humanInLoop,onResult:ni,onDecision:oi}),[e.features.humanInLoop,ni,oi]),Zl=()=>f.value.reduce((p,x)=>p+(x.role==="user"?1:0),0),ft=e.forms.list.length>0?e.forms:Ue??e.forms,ae=al({forms:ft,persistence:o,userContext:()=>e.userContext,messageCount:Zl,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>g.value,onComplete:(p,x,L,R)=>{G.info("formSubmit",{formId:p.id,trigger:x,skipped:R}),n.emit("formSubmit",{formId:p.id,values:L,skipped:R}),C(E=>[...E.filter(_e=>!(_e.formId===p.id&&_e.outcome==="skipped")),{key:`local:${p.id}:${Date.now()}`,formId:p.id,outcome:R?"skipped":"submitted",createdAt:Date.now(),...R?{}:{values:L}}]);let W=g.value??$e();g.value||(g.value=W,o.saveConversationId(W),Y.primeIdentity(void 0,W)),!R&&p.mirrorToContext&&jl(E=>({...E,...L})),Y.submitForm({formId:p.id,conversationId:W,trigger:x,values:L,skipped:R})}}),ec=re(()=>ae.activeForm.value);w(()=>{ae.refresh()},[ft,ae]);let ri=e.pageContext?.area?String(e.pageContext.area):void 0,tc=re(()=>f.value.length);w(()=>{z&&k&&ae.fire("pre-chat")},[z,k,ae]),w(()=>{k&&!$t&&ae.fire("conversation-closed")},[k,$t,ae]),w(()=>{z&&k&&ri&&ae.fire("page-area")},[z,k,ri,ae]);let Ho=xe(()=>{let p=ft.list.flatMap(x=>x.triggers).filter(x=>x.kind==="idle").map(x=>Number(x.param));return p.length?Math.min(...p)*1e3:0},[ft]);w(()=>{if(!Ho||!fe)return;let p=setTimeout(()=>ae.fire("idle"),Ho);return()=>clearTimeout(p)},[Ho,fe,ae,tc.value]);let ii=F(async(p,x)=>{if(G.info("send",{textLen:p.length,attachments:x.length,streaming:We}),We)return;n.emit("send",{text:p,attachmentCount:x.length}),No.length>0&&pn([]);let L=await Xu(Y,x,E=>{G.warn("upload failed",{err:E}),n.emit("error",E),e.onError?.(E)});ie.unlock(),ie.play("messageSent");let R=Ha(p,L),W=ao();f.value=[...f.value,R,W],Oe.attach(W),Kr(n,e,"user",p),await Pn(W,lo.submitMessage),ae.fire("after-messages")},[We,Y,n,e,No.length,f,Oe,Pn,ae]),nc=F(()=>{G.info("stop"),n.emit("stop",void 0),fn?.()},[fn,n]),oc=F(()=>{ie.toggleMuted();let p=ie.mutedSig.value;G.info("soundToggle",{muted:p}),n.emit("soundToggle",{muted:p})},[ie,n]),Wt=F(()=>{if(ws(e.mode,Le)==="exit-fullscreen"){G.info("close \u2192 exit-fullscreen",{mode:e.mode}),pt("normal"),n.emit("fullscreen",!1);return}G.info("close \u2192 panel closed",{mode:e.mode}),ae.fire("panel-close"),y(!1),o.savePanelOpen(!1),n.emit("close",void 0),e.onClose?.()},[n,e,o,Le,ae]),mt=F(()=>{e.modules.list.some(p=>p.layout==="chat")&&Y.listConversations({limit:50}).then(p=>{v.value=p.conversations.reduce((x,L)=>x+(L.unreadCount??0),0)}).catch(p=>G.debug("refreshUnread failed (non-fatal)",{err:p}))},[Y,e.modules,v]),ai=M(!1);w(()=>{!D||!z||ai.current||(ai.current=!0,mt())},[D,z,mt]);let Fo=F(()=>{G.info("open",{mode:e.mode}),ie.unlock(),Dt(!0),y(!0),o.savePanelOpen(!0),!Re&&!Je&&_n(),setTimeout(()=>Dt(!1),ju),mt(),n.emit("open",void 0),e.onOpen?.()},[n,e,ie,o,Re,Je,_n,mt]),Bo=F(()=>{if(!f.value.some(x=>x.role==="user")&&$t&&g.value){G.info("clear \u2192 reusing empty conversation",{conversationId:g.value}),f.value.length===0&&vn(Xe.current?.messages);return}G.info("clear \u2192 new conversation",{wasStreaming:We}),n.emit("clear",void 0),We&&fn?.(),St(()=>{f.value=[],g.value=void 0}),o.clearConversation(),Ht(!0),C([]),zt({newConversation:!0})},[We,fn,f,g,o,zt,n,$t,vn]),zo=F(()=>{Bo(),Mo("chat");let p=e.modules.list.find(x=>x.layout==="chat")?.id;p&&$.switchTab(p)},[Bo,$,e]),Uo=F(()=>{let p=Le==="expanded"?"normal":"expanded";G.info("expand",{from:Le,expanded:p==="expanded"}),pt(p),o.savePanelSize(p),n.emit("expand",p==="expanded")},[n,Le,o]),Wo=F(()=>{let p=Le==="fullscreen"?"normal":"fullscreen";G.info("fullscreen",{from:Le,fullscreen:p==="fullscreen"}),pt(p),o.savePanelSize(p),n.emit("fullscreen",p==="fullscreen")},[n,Le,o]),rc=F(()=>{Mo(p=>{let x=p==="history"?"chat":"history";return G.info("toggleHistory",{view:x}),n.emit("toggleHistory",{view:x}),x})},[n]),ic=F(p=>{G.info("localeChange",{locale:p}),c(p),He({locale:p}),n.emit("localeChange",p)},[He,n]),ac=F(p=>{G.info("themeChange",{mode:p}),u(p),t.dataset.theme=p,He({themeMode:p}),n.emit("themeChange",p)},[t,He,n]),sc=F(p=>{G.info("textSizeChange",{size:p}),m(p),t.dataset.textSize=p,He({textSize:p}),n.emit("textSizeChange",p)},[t,He,n]),lc=F(()=>{ql(p=>{let x=!p;return G.info("sidebarToggle",{collapsed:x}),o.saveSidebarCollapsed(x),n.emit("sidebarToggle",{collapsed:x}),x})},[o,n]),cc=F(p=>{G.info("resize",p),He({widgetSize:p}),n.emit("resize",p)},[He,n]),Go=F(async p=>{G.info("selectConversation",{conversationId:p}),n.emit("selectConversation",{conversationId:p});try{let[x,L]=await Promise.all([Y.loadConversation(p),bn(p)]),R=x.messages.map(kr);St(()=>{f.value=Bt(R,L),g.value=x.conversationId}),C(L),o.saveConversationId(x.conversationId),x.agent&&Yr(x.agent),Ht(x.canContinue),pn(x.suggestions??[]),Mo("chat"),await Y.markRead(p),mt()}catch(x){n.emit("error",x),e.onError?.(x)}},[Y,f,g,n,e,o,mt,bn,Bt]),Sn=M(null),si=F(p=>{typeof p=="string"&&(k?ae.fire("manual",p):Sn.current=p)},[k,ae]);w(()=>{!k||!Sn.current||(ae.fire("manual",Sn.current),Sn.current=null)},[k,ae]),w(()=>Gi(t,{open:Fo,close:Wt,expand:Uo,fullscreen:Wo,openForm:si}),[t,Fo,Wt,Uo,Wo,si]);let we=xe(()=>ur(e,l,d,_),[e,l,d,_]);gn.current=we.strings;let dc=xe(()=>b.map(p=>{let x=ft.list.find(L=>L.id===p.formId);return{...p,title:x?.title,form:x}}),[b,ft]),li={options:we,transport:Y,feedback:ie,bus:n,view:Bl,canSend:$t,isStreaming:We,loadingMessages:h,messagesSig:f,agent:zl,suggestions:No,initialWidgetSize:s.widgetSize??null,visitorId:i,onClose:Wt,onClear:Bo,onExpand:Uo,onFullscreen:Wo,onSoundToggle:oc,onToggleHistory:rc,onSelectHistoryConversation:Go,onNewConversation:zo,onLocaleChange:ic,onThemeChange:ac,onTextSizeChange:sc,onWidgetSizeChange:cc,onSend:ii,onStop:nc,onSuggestion:p=>{let x=p.text??p.label;G.info("suggestion",{text:x}),n.emit("suggestion",{text:x}),ii(x,[])},activeForm:ec.value?.form??null,formMarkers:dc,onFormSubmit:ae.complete,onFormSkip:ae.skip,onFormFill:p=>ae.fire("manual",p),tool:Ql},_c=p=>{Go(p);let x=B();x&&$.switchTab(x)};if(!z)return null;let Gt=we.modules.list,Vo=p=>{let x=on("close",we.mode,p);return Gt.length===0?r(Rl,{strings:we.strings,onClose:x?Wt:void 0}):Gt.length===1&&Gt[0]?.layout==="chat"?r(il,{...li,panelSize:p}):r(Al,{panelProps:{...li,panelSize:p,onClose:x?Wt:void 0},enabledModules:Gt,nav:$,unreadCount:v.value,onSelectConversation:_c,onStartNewConversation:zo,onSetPanelSize:pt})};if(e.mode==="page"){let p=L=>{Go(L.conversationId)},x=Gt.some(L=>L.layout==="chat");return r("div",{class:`${Vr}-anchor`,children:r(cl,{site:Ul,blocks:Gl,transport:Y,strings:we.strings,locale:we.locale,visitorId:i,showConversations:x,onSelectConversation:p,onNewConversation:zo,sidebarCollapsed:Kl,onToggleSidebarCollapsed:lc,children:Vo("fullscreen")})})}if(Z){let p=e.mode==="standalone"?"fullscreen":Le;return r("div",{class:`${Vr}-anchor`,children:Vo(p)})}let ci=e.mode==="drawer",di=!(e.mode==="modal")&&!e.launcher.hidden&&(!fe||ut),_i=di&&!ut&&!Re&&!ci?we.launcher.callout:null;return r("div",{class:`${Vr}-anchor`,"data-launcher-size":we.launcher.size,children:[fe?Vo(Le):null,di?r(ys,{onToggle:Fo,launcher:we.launcher,strings:we.strings,leaving:ut,edgeTab:ci}):null,_i?r(Ss,{callout:_i,launcherPosition:we.position,strings:we.strings,closeLabel:we.strings.close,onDismiss:_n}):null]})}function qu(e){let t=e?.url??(typeof location<"u"?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}var ju=120;async function Xu(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 Kr(e,t,n,o){let i={role:n,text:o};e.emit("message",i),t.onMessage?.(i)}var Ju=U.scope("error-boundary"),Lo=class extends Ze{constructor(){super(...arguments);j(this,"state",{crashed:!1})}componentDidCatch(n,o){Ju.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 Dl={open:()=>{},close:()=>{},expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>{},clear:()=>{},suggestion:()=>{},toggleHistory:e=>({view:e.view}),handshake:()=>{},formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>{},toolDecision:e=>({approved:e.approved}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>{},voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>{},localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>{},error:()=>{}};function Yu(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack==="1"}function Qu(){return location.origin+location.pathname}function Zu(){try{return document.referrer?new URL(document.referrer).origin:""}catch{return""}}function Ol(e,t){let n=Math.random(),o=0,i=0,a=new Set,s=(c,d)=>{let{tracking:u,publicKey:_,aiAgentDeploymentId:m,mode:g,themeMode:f}=t.getOptions();if(!u.enabled||Yu()||n>=u.sampleRate)return;let v=performance.now();if(v-o>6e4&&(o=v,i=0),++i>60)return;let h=new URLSearchParams;h.set("v","1"),h.set("e",c),u.token&&h.set("tk",u.token),_&&h.set("pk",_),m&&h.set("dep",m),h.set("vid",t.getVisitorId());let I=t.getConversationId();I&&h.set("cid",I),h.set("url",Qu());let b=Zu();b&&h.set("ref",b),h.set("sw",String(screen.width)),h.set("sh",String(screen.height)),h.set("vw",String(innerWidth)),h.set("vh",String(innerHeight)),h.set("dpr",String(devicePixelRatio)),h.set("lang",navigator.language);try{h.set("tz",Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(h.set("m",g),h.set("th",f),d)for(let[V,$]of Object.entries(d))$!==void 0&&h.set(V,String($));h.set("ts",String(Date.now()));let C=`${u.endpoint}?${h}`;if(C.length>2e3)return;let N=new Image(1,1);a.add(N);let B=()=>a.delete(N);N.addEventListener("load",B,{once:!0}),N.addEventListener("error",B,{once:!0}),N.src=C},l=Object.keys(Dl).map(c=>e.on(c,d=>s(c,Dl[c]?.(d))));return()=>{for(let c of l)c();a.clear()}}function $l(e){let{bus:t,host:n,appRoot:o,persistence:i,reportError:a}=e,s=e.initialRaw,l,c=vt(s),d=!0,u=()=>{c=vt(l?pr(s,l):s)},_=()=>{Zi(n,jt(c.mode));let f=i.loadUserPrefs().themeMode;ea(n,f?{...c,themeMode:f}:c),d&&(Gn(n,qr(c)),d=!1)},m=()=>{_(),Nn(Mn(Lo,{onError:a},Mn(Nl,{bus:t,hostElement:n,options:c})),o)};t.on("handshake",f=>{f.config&&(f.config.storageVersion&&i.rememberStorageVersion(f.config.storageVersion),l=f.config,u(),m())});let g=Ol(t,{getOptions:()=>c,getVisitorId:()=>i.getVisitorId(),getConversationId:()=>i.loadConversationId()});return{getOptions:()=>c,getUserOptions:()=>s,render:m,setUserOptions:f=>{s=f,u(),m()},patchUserOptions:f=>{s={...s,...f},u(),m()},destroy:()=>g()}}function qr(e){if(e.mode==="standalone")return"standalone";if(e.mode==="inline")return"inline";let t=Pt(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:o}=Qt(e,Ct(),t.loadPanelOpen(),t.loadPanelSize());return oo(e.mode,o,n)}var ep=U.scope("hooks"),Xr="*",jr=new Set;function Hl(e,t,n){let o={widgetId:e,event:t,listener:n};return jr.add(o),()=>{jr.delete(o)}}function tp(e,t,n){let o=[...jr];for(let i of o)if(np(i.widgetId,e.widgetId)&&!(i.event!==Xr&&i.event!==t))try{i.listener(e,t,n)}catch(a){ep.warn("hook listener threw",{event:t,error:a})}}function Fl(e,t){let n=[];for(let o of op)n.push(t.on(o,i=>{tp(e,o,i)}));return()=>{for(let o of n)o()}}function np(e,t){return e===Xr||e===t}var op=["open","close","expand","fullscreen","resize","message","send","stop","clear","selectConversation","suggestion","toggleHistory","formSubmit","toolResult","toolDecision","attach","removeAttachment","voiceStart","voiceStop","voiceCancel","localeChange","themeChange","textSizeChange","soundToggle","sidebarToggle","calloutDismiss","error","handshake","visitorRebound","conversationRebound"];var je=new Map;function rp(e){e.debug!==void 0&&Fn(e.debug);let t=U.scope("mount");t.info("mount",{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let n=vt(e),o=n.widgetId,i=je.get(o);i&&(t.debug("destroy existing instance at slot",{widgetId:o}),i.destroy());let a=qr(n),s=n.iframe?oa({position:jt(n.mode)},n.position,a,n.mode,e.target??null):Wn({position:jt(n.mode),target:e.target??null});s.hostElement.dataset.widgetId=o;let l=new Kn,c=Pt(o,n.storage,n.aiAgentDeploymentId),d=v=>{l.emit("error",v),u.getOptions().onError?.(v)},u=$l({bus:l,host:s.hostElement,appRoot:s.appRoot,persistence:c,initialRaw:e,reportError:d});u.render();let _=s.hostElement,m=null,g=v=>{v.debug!==void 0&&Fn(v.debug),u.patchUserOptions(v)},f={widgetId:o,open:()=>qt(_,"open"),close:()=>qt(_,"close"),expand:()=>qt(_,"expand"),openForm:v=>qt(_,"openForm",v),on:(v,h)=>l.on(v,h),update:v=>{t.debug("update",{patch:v}),g(v)},setUserContext:v=>{t.debug("setUserContext",{keys:Object.keys(v)}),g({userContext:{...u.getUserOptions().userContext,...v}})},clearUserContext:()=>{t.debug("clearUserContext"),g({userContext:void 0})},setPageContext:v=>{t.debug("setPageContext",{keys:Object.keys(v)}),g({pageContext:{...u.getUserOptions().pageContext,...v}})},clearPageContext:()=>{t.debug("clearPageContext"),g({pageContext:void 0})},setDebug:v=>{Fn(v),t.info("debug level set",{level:ar()})},debugLevel:()=>ar(),onLog:v=>Ni(v),destroy:()=>{t.info("destroy",{widgetId:o}),m?.(),u.destroy(),l.clear(),Nn(null,s.appRoot),s.destroy(),je.get(o)===f&&je.delete(o)}};return m=Fl(f,l),je.set(o,f),f}function IP(e){let t=e.widgetId??"default",n=je.get(t);return n?(n.update(e),n):rp(e)}function AP(e){if(e!==void 0){je.get(e)?.destroy();return}let t=[...je.values()];for(let n of t)n.destroy()}function RP(e="default"){return je.get(e)??null}function LP(){return[...je.values()]}function MP(e,t,n){return Hl(e,t,n)}var NP="0.1.0",DP=P;export{Xr as HOOK_WILDCARD,DP as brand,AP as destroy,LP as getAllInstances,RP as getInstance,MP as hook,IP as init,rp as mount,qr as resolveInitialHostMode,NP as version};
40
40
  //# sourceMappingURL=elements.esm.js.map