@helpai/elements 0.70.5 → 0.71.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/web-component.mjs CHANGED
@@ -4,10 +4,10 @@ import{Component as e,h as t,render as n}from"preact";import{useCallback as r,us
4
4
  `,`.__P__-standalone-page{margin:0;height:100vh;background:var(--__P__-bg, #fff);display:grid;place-items:stretch}
5
5
  `,`:host([data-mode="page"]){min-height:0}:host([data-mode="page"]) .__P__-page-shell{display:grid;grid-template-columns:280px 1fr;width:100%;height:100%;min-height:0;background:var(--__P__-bg);color:var(--__P__-fg);transition:grid-template-columns var(--__P__-dur-base) var(--__P__-ease-in-out)}:host([data-mode="page"]) .__P__-page-shell[data-sidebar-collapsed=true]{grid-template-columns:48px 1fr}:host([data-mode="page"]) .__P__-page-chat{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}:host([data-mode="page"]) .__P__-anchor{position:static;inset:auto;padding:0;align-items:stretch;width:100%;height:100%;min-width:0;min-height:0;flex:1 1 0}:host([data-mode="page"]) .__P__-panel{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;border-radius:0;border:0;box-shadow:none;animation:none}:host([data-mode="page"]) .__P__-sidebar{border-inline-end:1px solid var(--__P__-border);display:flex;flex-direction:column;overflow:hidden;background:var(--__P__-surface)}:host([data-mode="page"]) .__P__-sidebar-header{padding:var(--__P__-space-4) var(--__P__-space-5);border-bottom:1px solid var(--__P__-border);display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-2);min-height:56px;box-sizing:border-box}:host([data-mode="page"]) .__P__-sidebar[data-collapsed=true] .__P__-sidebar-header{padding:var(--__P__-space-4) var(--__P__-space-2);justify-content:center}:host([data-mode="page"]) .__P__-sidebar[data-collapsed=true] .__P__-sidebar-logo,:host([data-mode="page"]) .__P__-sidebar[data-collapsed=true] .__P__-sidebar-title{display:none}:host([data-mode="page"]) .__P__-sidebar-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--__P__-border);border-radius:6px;background:transparent;color:var(--__P__-fg);cursor:pointer;transition:background .12s,border-color .12s}:host([data-mode="page"]) .__P__-sidebar-toggle:hover{background:var(--__P__-hover);border-color:var(--__P__-accent)}:host([data-mode="page"]) .__P__-sidebar-toggle:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px}:host([data-mode="page"]) .__P__-sidebar-logo{height:32px;display:block}:host([data-mode="page"]) .__P__-sidebar-title{font-size:var(--__P__-text-md);font-weight:600}:host([data-mode="page"]) .__P__-sidebar-section{padding:var(--__P__-space-3) var(--__P__-space-4);border-bottom:1px solid var(--__P__-border)}:host([data-mode="page"]) .__P__-sidebar-nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}:host([data-mode="page"]) .__P__-sidebar-nav-item{display:flex;align-items:center;gap:10px;padding:var(--__P__-space-2) var(--__P__-space-3);border-radius:var(--__P__-radius-sm);color:var(--__P__-fg);text-decoration:none;font-size:calc(14px * var(--__P__-text-scale));transition:background var(--__P__-dur-quick) var(--__P__-ease-out)}:host([data-mode="page"]) .__P__-sidebar-nav-item:hover{background:var(--__P__-hover)}:host([data-mode="page"]) .__P__-sidebar-nav-item:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}:host([data-mode="page"]) .__P__-sidebar-cards{display:grid;grid-template-columns:1fr;gap:var(--__P__-space-2)}:host([data-mode="page"]) .__P__-sidebar-card{display:block;padding:10px 12px;border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-sm);text-decoration:none;color:var(--__P__-fg);transition:border-color var(--__P__-dur-quick) var(--__P__-ease-out)}:host([data-mode="page"]) .__P__-sidebar-card:hover{border-color:var(--__P__-accent)}:host([data-mode="page"]) .__P__-sidebar-card:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}:host([data-mode="page"]) .__P__-sidebar-card-label{font-weight:600;font-size:calc(14px * var(--__P__-text-scale))}:host([data-mode="page"]) .__P__-sidebar-card-desc{font-size:var(--__P__-text-xs);color:var(--__P__-muted);margin-top:2px}:host([data-mode="page"]) .__P__-sidebar-conversations{flex:1 1 auto;overflow-y:auto;padding:var(--__P__-space-3) var(--__P__-space-4)}:host([data-mode="page"]) .__P__-page-chat{display:flex;flex-direction:column;overflow:hidden}@media(max-width:768px){:host([data-mode="page"]) .__P__-page-shell{grid-template-columns:1fr}:host([data-mode="page"]) .__P__-sidebar{display:none}}
6
6
  `].join(`
7
- `).replace(/__P__/g,`helpai`).replaceAll(`__BRAND_ACCENT_TEXT__`,`#FFFFFF`).replaceAll(`__BRAND_ACCENT__`,`#5B5BD6`).replaceAll(`__BRAND_RADIUS__`,`12px`).replaceAll(`__BRAND_FONT__`,`Inter, system-ui, -apple-system, 'Segoe UI', sans-serif`),gt=M.scope(`mount`),_t=new WeakMap,vt={floating:`all: initial; position: fixed; z-index: 2147483600;`,flow:`all: initial; display: block; position: relative; width: 100%; height: 100%; z-index: 1; contain: size;`,viewport:`all: initial; display: block; position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1;`};function yt(e,t){e.style.cssText=vt[t]}function bt(e){return e===`floating`||e===`modal`||e===`drawer`?`floating`:e===`standalone`||e===`page`?`viewport`:`flow`}function xt(e={}){let t=e.position??`flow`;gt.debug(`createShadowMount`,{position:t,hasTarget:!!e.target,hasHost:!!e.existingHost});let n=`${y.cssPrefix}-chat-host`;typeof customElements<`u`&&!customElements.get(n)&&customElements.define(n,class extends HTMLElement{});let r;e.existingHost?r=e.existingHost:(r=document.createElement(n),(e.target??document.body).appendChild(r)),r.setAttribute(`data-brand`,y.id),r.style.cssText=vt[t];let i=r.shadowRoot??r.attachShadow({mode:`open`}),a=r.ownerDocument;if(!St(i,a)){let e=a.createElement(`style`);e.textContent=ht,i.appendChild(e)}let o=document.createElement(`div`);return o.className=`${y.cssPrefix}-app`,i.appendChild(o),{appRoot:o,destroy:()=>r.remove(),hostElement:r,shadowRoot:i}}function St(e,t){if(!(`adoptedStyleSheets`in e))return!1;let n=t.defaultView;if(!n||typeof n.CSSStyleSheet!=`function`)return!1;let r=_t.get(t);if(!r)try{r=new n.CSSStyleSheet,r.replaceSync(ht),_t.set(t,r)}catch{return!1}try{return e.adoptedStyleSheets=[r],!0}catch{return!1}}function Ct(e,t){let n=y.cssPrefix;t.accent&&e.style.setProperty(`--${n}-accent-user`,t.accent),t.accentText&&e.style.setProperty(`--${n}-accent-text-user`,t.accentText),t.radius&&e.style.setProperty(`--${n}-radius`,t.radius),t.fontFamily&&e.style.setProperty(`--${n}-font`,t.fontFamily),t.contentMaxWidth&&e.style.setProperty(`--${n}-conversation-max`,t.contentMaxWidth)}function wt(e,t){e.dataset.theme=t}function Tt(e,t){let n=y.cssPrefix;t.width!==void 0&&e.style.setProperty(`--${n}-panel-w`,t.width),t.height!==void 0&&e.style.setProperty(`--${n}-panel-h`,t.height),t.expanded?.width!==void 0&&e.style.setProperty(`--${n}-expanded-w`,t.expanded.width),t.expanded?.height!==void 0&&e.style.setProperty(`--${n}-expanded-h`,t.expanded.height),t.inset!==void 0&&e.style.setProperty(`--${n}-panel-inset`,t.inset)}function Et(e,t){e.dataset.position=t}function Dt(e,t){e.dataset.mode=t}function Ot(e,t){wt(e,t.themeMode),Ct(e,t.themeOverrides),Et(e,t.position),Tt(e,t.size)}function kt(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function At(e){return kt(e)}function jt(e){return!(!kt(e)||e.navigation!==void 0&&!Array.isArray(e.navigation)||e.linkCards!==void 0&&!Array.isArray(e.linkCards))}function Mt(e){return`${y.cssPrefix}:${e}`}function Nt(e,t){let n=Object.entries(t).map(([t,n])=>{let r=Mt(t),i=e=>n(e.detail);return e.addEventListener(r,i),[r,i]});return()=>{for(let[t,r]of n)e.removeEventListener(t,r)}}function Pt(e,t,n){return e===`page`?`page`:e===`standalone`?`standalone`:e===`inline`?t===`fullscreen`?`fullscreen`:`inline`:e===`modal`||e===`drawer`?n?t===`fullscreen`?`fullscreen`:e:`closed`:n?t===`fullscreen`?`fullscreen`:t===`expanded`?`expanded`:`open`:`closed`}function Ft(e,t,n){if(e===`standalone`||e===`page`)return`fullscreen`;let r=t.initialSize;return r===`expanded`||r===`fullscreen`||r===`normal`?r:n>0&&n<640?`fullscreen`:n>=(t.autoSizeBreakpoint??900)?`expanded`:`normal`}function It(e,t,n,r=null){return{panelOpen:e.mode===`inline`||e.mode===`standalone`||e.mode===`page`||(n??!e.startMinimized),panelSize:e.mode!==`standalone`&&e.mode!==`page`&&e.mode!==`inline`&&r?r:Ft(e.mode,e.size,t)}}function Lt(){return typeof window>`u`?0:window.innerWidth}function Rt(e){return{headers(){let t={};return e.aiAgentDeploymentId&&(t[`x-ai-agent-deployment-id`]=e.aiAgentDeploymentId),e.publicKey&&(t[e.publicKeyHeader??`x-public-key`]=e.publicKey),t}}}function zt(e,t){return new Promise(n=>{if(t?.aborted)return n();let r=setTimeout(a,e),i=()=>a();t?.addEventListener(`abort`,i,{once:!0});function a(){clearTimeout(r),t?.removeEventListener(`abort`,i),n()}})}const Bt=`0.70.5`;function Vt(e){"@babel/helpers - typeof";return Vt=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Vt(e)}function Ht(e,t){if(Vt(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(Vt(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function R(e){var t=Ht(e,`string`);return Vt(t)==`symbol`?t:t+``}function z(e,t,n){return(t=R(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ut=class extends Error{constructor(e,t,n,r){super(e),this.code=t,this.status=n,this.cause=r,this.name=`StreamError`}};const Wt=M.scope(`parser`);async function*Gt(e,t){if(!e.ok){let t=await e.text().catch(()=>``);throw new Ut(`server responded ${e.status}: ${t.slice(0,200)}`,`server`,e.status)}for await(let n of Kt(e,t)){let e=qt(n);if(e===`done`)return;e&&(yield e)}}async function*Kt(e,t){if(!e.body)throw new Ut(`response has no body`,`no-body`);let n=e.body.pipeThrough(new TextDecoderStream).getReader(),r=``;try{for(;;){if(t.aborted)throw new DOMException(`aborted`,`AbortError`);let{done:e,value:i}=await n.read();if(e){let e=r.trim();e&&(yield e);return}r+=i;let a;for(;(a=r.indexOf(`
7
+ `).replace(/__P__/g,`helpai`).replaceAll(`__BRAND_ACCENT_TEXT__`,`#FFFFFF`).replaceAll(`__BRAND_ACCENT__`,`#5B5BD6`).replaceAll(`__BRAND_RADIUS__`,`12px`).replaceAll(`__BRAND_FONT__`,`Inter, system-ui, -apple-system, 'Segoe UI', sans-serif`),gt=M.scope(`mount`),_t=new WeakMap,vt={floating:`all: initial; position: fixed; z-index: 2147483600;`,flow:`all: initial; display: block; position: relative; width: 100%; height: 100%; z-index: 1; contain: size;`,viewport:`all: initial; display: block; position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1;`};function yt(e,t){e.style.cssText=vt[t]}function bt(e){return e===`floating`||e===`modal`||e===`drawer`?`floating`:e===`standalone`||e===`page`?`viewport`:`flow`}function xt(e={}){let t=e.position??`flow`;gt.debug(`createShadowMount`,{position:t,hasTarget:!!e.target,hasHost:!!e.existingHost});let n=`${y.cssPrefix}-chat-host`;typeof customElements<`u`&&!customElements.get(n)&&customElements.define(n,class extends HTMLElement{});let r;e.existingHost?r=e.existingHost:(r=document.createElement(n),(e.target??document.body).appendChild(r)),r.setAttribute(`data-brand`,y.id),r.style.cssText=vt[t];let i=r.shadowRoot??r.attachShadow({mode:`open`}),a=r.ownerDocument;if(!St(i,a)){let e=a.createElement(`style`);e.textContent=ht,i.appendChild(e)}let o=document.createElement(`div`);return o.className=`${y.cssPrefix}-app`,i.appendChild(o),{appRoot:o,destroy:()=>r.remove(),hostElement:r,shadowRoot:i}}function St(e,t){if(!(`adoptedStyleSheets`in e))return!1;let n=t.defaultView;if(!n||typeof n.CSSStyleSheet!=`function`)return!1;let r=_t.get(t);if(!r)try{r=new n.CSSStyleSheet,r.replaceSync(ht),_t.set(t,r)}catch{return!1}try{return e.adoptedStyleSheets=[r],!0}catch{return!1}}function Ct(e,t){let n=y.cssPrefix;t.accent&&e.style.setProperty(`--${n}-accent-user`,t.accent),t.accentText&&e.style.setProperty(`--${n}-accent-text-user`,t.accentText),t.radius&&e.style.setProperty(`--${n}-radius`,t.radius),t.fontFamily&&e.style.setProperty(`--${n}-font`,t.fontFamily),t.contentMaxWidth&&e.style.setProperty(`--${n}-conversation-max`,t.contentMaxWidth)}function wt(e,t){e.dataset.theme=t}function Tt(e,t){let n=y.cssPrefix;t.width!==void 0&&e.style.setProperty(`--${n}-panel-w`,t.width),t.height!==void 0&&e.style.setProperty(`--${n}-panel-h`,t.height),t.expanded?.width!==void 0&&e.style.setProperty(`--${n}-expanded-w`,t.expanded.width),t.expanded?.height!==void 0&&e.style.setProperty(`--${n}-expanded-h`,t.expanded.height),t.inset!==void 0&&e.style.setProperty(`--${n}-panel-inset`,t.inset)}function Et(e,t){e.dataset.position=t}function Dt(e,t){e.dataset.mode=t}function Ot(e,t){wt(e,t.themeMode),Ct(e,t.themeOverrides),Et(e,t.position),Tt(e,t.size)}function kt(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function At(e){return kt(e)}function jt(e){return!(!kt(e)||e.navigation!==void 0&&!Array.isArray(e.navigation)||e.linkCards!==void 0&&!Array.isArray(e.linkCards))}function Mt(e){return`${y.cssPrefix}:${e}`}function Nt(e,t){let n=Object.entries(t).map(([t,n])=>{let r=Mt(t),i=e=>n(e.detail);return e.addEventListener(r,i),[r,i]});return()=>{for(let[t,r]of n)e.removeEventListener(t,r)}}function Pt(e,t,n){return e===`page`?`page`:e===`standalone`?`standalone`:e===`inline`?t===`fullscreen`?`fullscreen`:`inline`:e===`modal`||e===`drawer`?n?t===`fullscreen`?`fullscreen`:e:`closed`:n?t===`fullscreen`?`fullscreen`:t===`expanded`?`expanded`:`open`:`closed`}function Ft(e,t,n){if(e===`standalone`||e===`page`)return`fullscreen`;let r=t.initialSize;return r===`expanded`||r===`fullscreen`||r===`normal`?r:n>0&&n<640?`fullscreen`:n>=(t.autoSizeBreakpoint??900)?`expanded`:`normal`}function It(e,t,n,r=null){return{panelOpen:e.mode===`inline`||e.mode===`standalone`||e.mode===`page`||(n??!e.startMinimized),panelSize:e.mode!==`standalone`&&e.mode!==`page`&&e.mode!==`inline`&&r?r:Ft(e.mode,e.size,t)}}function Lt(){return typeof window>`u`?0:window.innerWidth}function Rt(e){return{headers(){let t={};return e.aiAgentDeploymentId&&(t[`x-ai-agent-deployment-id`]=e.aiAgentDeploymentId),e.publicKey&&(t[e.publicKeyHeader??`x-public-key`]=e.publicKey),t}}}function zt(e,t){return new Promise(n=>{if(t?.aborted)return n();let r=setTimeout(a,e),i=()=>a();t?.addEventListener(`abort`,i,{once:!0});function a(){clearTimeout(r),t?.removeEventListener(`abort`,i),n()}})}const Bt=`0.71.0`;function Vt(e){"@babel/helpers - typeof";return Vt=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Vt(e)}function Ht(e,t){if(Vt(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(Vt(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function R(e){var t=Ht(e,`string`);return Vt(t)==`symbol`?t:t+``}function z(e,t,n){return(t=R(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ut=class extends Error{constructor(e,t,n,r){super(e),this.code=t,this.status=n,this.cause=r,this.name=`StreamError`}};const Wt=M.scope(`parser`);async function*Gt(e,t){if(!e.ok){let t=await e.text().catch(()=>``);throw new Ut(`server responded ${e.status}: ${t.slice(0,200)}`,`server`,e.status)}for await(let n of Kt(e,t)){let e=qt(n);if(e===`done`)return;e&&(yield e)}}async function*Kt(e,t){if(!e.body)throw new Ut(`response has no body`,`no-body`);let n=e.body.pipeThrough(new TextDecoderStream).getReader(),r=``;try{for(;;){if(t.aborted)throw new DOMException(`aborted`,`AbortError`);let{done:e,value:i}=await n.read();if(e){let e=r.trim();e&&(yield e);return}r+=i;let a;for(;(a=r.indexOf(`
8
8
 
9
9
  `))!==-1;){let e=r.slice(0,a);r=r.slice(a+2),yield e}}}finally{n.releaseLock()}}function qt(e){let t=``,n;for(let r of e.split(`
10
- `))if(!(r===``||r.startsWith(`:`))){if(r.startsWith(`data:`)){let e=r.slice(5).replace(/^ /,``);t=t?`${t}\n${e}`:e;continue}r.startsWith(`id:`)&&(n=r.slice(3).trim())}if(t===`[DONE]`)return`done`;if(!t)return null;try{let e=JSON.parse(t);return Wt.trace(`chunk`,{type:e.type,eventId:n}),{chunk:e,eventId:n}}catch(e){return Wt.trace(`frame parse failed`,{err:e,payload:t.slice(0,200)}),null}}function Jt(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return btoa(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}const Yt=e=>e&&Object.keys(e).length>0?e:void 0;function Xt(e,t){let n=Yt(e),r=Yt(t);if(!n&&!r)return;let i={};return n&&(i.user=n),r&&(i.page=r),Jt(JSON.stringify(i))}function Zt(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function Qt(e){return`tool-${e.startsWith(`tool:`)?e.slice(5):e}`}function $t(e){return e.startsWith(`tool-`)?e.slice(5):e}const B={handshake:`/pai/handshake`,streamMessage:`/pai/stream-message`,streamResume:`/pai/stream-resume`,cancelStream:`/pai/cancel-stream`,listConversations:`/pai/list-conversations`,listMessages:`/pai/list-messages`,updateSettings:`/pai/update-settings`,markRead:`/pai/mark-read`,messageFeedback:`/pai/message-feedback`,requestOperator:`/pai/request-operator`,cancelRequestOperator:`/pai/cancel-request-operator`,bootstrap:`/pai/bootstrap`,content:`/pai/content`,submitForm:`/pai/submit-form`};function en(e){let t=e??{},n=t.controlMode;return{controlMode:n===`awaiting_operator`||n===`operator`?n:`ai-agent`,assignedOperatorInitials:typeof t.assignedOperatorInitials==`string`&&t.assignedOperatorInitials?t.assignedOperatorInitials:void 0,operatorAvailable:typeof t.operatorAvailable==`boolean`?t.operatorAvailable:void 0}}function tn(e){let t=e?.suggestions;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let{id:t,label:r,text:i}=e;typeof r!=`string`||!r||n.push({id:typeof t==`string`&&t?t:`s${n.length}`,label:r,text:typeof i==`string`&&i?i:r})}return n}function nn(e){let t=e.messages.map(e=>({id:e.serverMessageId??e.id,parts:on(e),role:e.role,createdAt:e.createdAt===void 0?void 0:new Date(e.createdAt).toISOString()})),n={messages:t,conversationId:e.conversationId,trigger:e.trigger??`submit-message`,responseType:`ack`},r=t.at(-1)?.id;r&&(n.messageId=r),e.visitorId&&(n.visitorId=e.visitorId),e.userPrefs&&(n.userPrefs=e.userPrefs);let i=e.tools?.map(an).filter(e=>e!==null);return i?.length&&(n.data={tools:i}),n}function rn(e){return e.state===`output-available`||e.state===`output-error`||e.state===`output-denied`||e.approval?.approved!==void 0}function an(e){return typeof e==`string`?e?{code:e}:null:e?.code?e:null}function on(e){let t=[];for(let n of e.parts)if(n.kind===`step-start`&&t.push({type:`step-start`}),n.kind===`reasoning`&&n.text&&t.push({type:`reasoning`,text:n.text,state:n.done?`done`:`streaming`}),n.kind===`text`&&n.text&&t.push({text:n.text,type:`text`}),n.kind===`file`&&n.url&&t.push({mediaType:n.mediaType,type:`file`,url:n.url}),n.kind===`tool`&&rn(n)){let e={type:Qt(n.toolName),toolCallId:n.toolCallId,state:n.state};n.input!==void 0&&(e.input=n.input),n.output!==void 0&&(e.output=n.output),n.error!==void 0&&(e.errorText=n.error),n.approval&&n.approval.approved!==void 0&&(e.approval=n.approval),t.push(e)}for(let n of e.attachments??[])n.url&&t.push({type:`file`,url:n.url,mediaType:n.mediaType,filename:n.name,fileId:n.id,fileSize:n.size});return t}const V=M.scope(`transport`),sn=new Set([408,425,429,500,502,503,504]);function H(e){return 400*2**e+Math.floor(Math.random()*250)}function cn(e){let t=e.get(`retry-after`);if(!t)return null;let n=Number(t),r=Number.isFinite(n)?n*1e3:Date.parse(t)-Date.now();return Number.isFinite(r)&&r>=0?Math.min(r,3e4):null}var ln=class{constructor(e){this.ttlMs=e,z(this,`map`,new Map)}getOrFetch(e,t){let n=this.map.get(e);if(n&&Date.now()-n.at<this.ttlMs)return n.result;let r={at:Date.now(),result:t().then(e=>(r.value=e,e)).catch(t=>{throw this.map.delete(e),t})};return this.map.set(e,r),r.result}peek(e){let t=this.map.get(e);if(t?.value!==void 0&&Date.now()-t.at<this.ttlMs)return t.value}clear(){this.map.clear()}},un=class{constructor(e){this.opts=e,z(this,`visitorId`,void 0),z(this,`conversationId`,void 0),z(this,`userContext`,void 0),z(this,`pageContext`,void 0),z(this,`locale`,void 0),z(this,`conversationsCache`,new ln(1e4)),z(this,`loadConversationInflight`,new Map),z(this,`contentCache`,new ln(6e4))}setContext(e,t){this.userContext=e,this.pageContext=t}setLocale(e){this.locale=e}primeIdentity(e,t){e&&(this.visitorId=e),t&&(this.conversationId=t)}envelope(){let e={_ev:Bt};this.visitorId&&(e.visitorId=this.visitorId),this.conversationId&&(e.conversationId=this.conversationId),this.locale&&(e.locale=this.locale);let t=Xt(this.userContext,this.pageContext);return t&&(e.context=t),e}withEnvelope(e){return{...this.envelope(),...e}}appendEnvelope(e){for(let[t,n]of Object.entries(this.envelope()))e.append(t,n);return e}withEnvelopeQuery(e){let t=new URL(this.url(e));for(let[e,n]of Object.entries(this.envelope()))t.searchParams.has(e)||t.searchParams.set(e,n);return t.toString()}async handshake(e){V.debug(`handshake →`,{visitorId:e.visitorId,conversationId:e.conversationId,locale:e.locale});let t=await this.postJson(B.handshake,e,`handshake`);return V.debug(`handshake ←`,{visitorId:t.visitorId,conversationId:t.conversationId,hasWelcome:!!t.welcome,hasConfig:!!t.config,rebind:t.rebind}),fn(t)||V.warn(`handshake response did not match expected shape; using raw response`,{response:t}),this.visitorId=t.visitorId??e.visitorId,this.conversationId=t.conversationId,t}async uploadFile(e){V.debug(`uploadFile →`,{name:e.name,size:e.size,type:e.type});let t=new FormData;t.append(`file`,e,e.name);let n=await this.postForm(this.uploadPath,t,`upload`);return V.debug(`uploadFile ←`,{id:n.id,url:n.url}),n}async transcribe(e,t=`audio/webm`){V.debug(`transcribe →`,{size:e.size,mimeType:t});let n=new FormData;n.append(`audio`,e,`voice.${dn(t)}`),n.append(`mimeType`,t);let r=await this.postForm(this.transcribePath,n,`transcribe`);return V.debug(`transcribe ←`,{textLen:r.text.length}),r}localeCacheKey(e){return`${this.locale??``}|${JSON.stringify(e,Object.keys(e).toSorted())}`}peekConversations(e={}){return this.conversationsCache.peek(this.localeCacheKey(e))}listConversations(e={}){return this.conversationsCache.getOrFetch(this.localeCacheKey(e),()=>this.fetchConversations(e))}async fetchConversations(e){let t=new URL(this.url(B.listConversations));e.visitorId&&t.searchParams.set(`visitorId`,e.visitorId),e.limit&&t.searchParams.set(`limit`,String(e.limit)),e.cursor&&t.searchParams.set(`cursor`,e.cursor),V.debug(`listConversations →`,{visitorId:e.visitorId??this.visitorId,limit:e.limit,cursor:e.cursor});let n=await this.getJson(t.toString(),`listConversations`),r=n.conversations??[];return V.debug(`listConversations ←`,{count:r.length,nextCursor:n.nextCursor}),{conversations:r,nextCursor:n.nextCursor}}async loadConversation(e){let t=this.loadConversationInflight.get(e);if(t)return t;let n=this.loadConversationDirect(e).finally(()=>this.loadConversationInflight.delete(e));return this.loadConversationInflight.set(e,n),n}async loadConversationDirect(e){let t=new URL(this.url(B.listMessages));t.searchParams.set(`conversationId`,e),V.debug(`loadConversation →`,{conversationId:e,visitorId:this.visitorId});let n=await this.getJson(t.toString(),`loadConversation`),r=n.messages??[];return V.debug(`loadConversation ←`,{conversationId:n.conversationId,canContinue:n.canContinue,messageCount:r.length,hasSuggestions:!!n.suggestions}),{...n,messages:r,canContinue:n.canContinue??!0}}async markRead(e){if(!(!this.visitorId||!e)){this.conversationsCache.clear(),V.debug(`markRead →`,{conversationId:e,visitorId:this.visitorId});try{await this.postJson(B.markRead,{conversationId:e},`markRead`)}catch(e){V.debug(`markRead failed (non-fatal)`,{err:e})}}}async requestOperator(){if(!(!this.visitorId||!this.conversationId)){V.debug(`requestOperator →`,{conversationId:this.conversationId,visitorId:this.visitorId});try{return(await this.postJson(B.requestOperator,{},`requestOperator`)).controlState}catch(e){V.debug(`requestOperator failed (non-fatal)`,{err:e});return}}}async cancelRequestOperator(){if(!(!this.visitorId||!this.conversationId)){V.debug(`cancelRequestOperator →`,{conversationId:this.conversationId,visitorId:this.visitorId});try{return(await this.postJson(B.cancelRequestOperator,{},`cancelRequestOperator`)).controlState}catch(e){V.debug(`cancelRequestOperator failed (non-fatal)`,{err:e});return}}}listContent(e={}){return this.contentCache.getOrFetch(this.localeCacheKey(e),()=>this.fetchContent(e))}async fetchContent(e){let t=new URL(this.dataUrl(B.content));for(let[n,r]of Object.entries(e))r!==void 0&&t.searchParams.set(n,Array.isArray(r)?r.join(`,`):String(r));V.debug(`listContent →`,e);let n=await this.getJson(t.toString(),`listContent`),r=(n.items??[]).map(e=>k(e,this.locale));return V.debug(`listContent ←`,{count:r.length,total:n.pagination?.total}),{...n,items:r}}async bootstrap(e){let t=new URL(this.dataUrl(B.bootstrap));e&&t.searchParams.set(`conversationId`,e),V.debug(`bootstrap →`,{conversationId:e??this.conversationId});let n=await this.getJson(t.toString(),`bootstrap`),r=n.forms??[],i=n.formSubmissions??[];return V.debug(`bootstrap ←`,{forms:r.length,formSubmissions:i.length}),{forms:r,formSubmissions:i}}async saveUserPrefs(e){V.debug(`saveUserPrefs →`,{visitorId:this.visitorId,conversationId:this.conversationId,settingsKeys:Object.keys(e)});let t=await this.postJson(B.updateSettings,{userPrefs:e},`saveUserPrefs`);return V.debug(`saveUserPrefs ←`,{success:t.success}),t}get uploadPath(){return this.opts.endpoints?.upload??`/pai/upload-file`}get transcribePath(){return this.opts.endpoints?.transcribe??`/pai/transcribe-audio`}get submitFormPath(){return this.opts.endpoints?.submitForm??B.submitForm}async submitForm(e){V.debug(`submitForm →`,{formId:e.formId,trigger:e.trigger,fields:Object.keys(e.values).length});try{await this.postJson(this.dataUrl(this.submitFormPath),e,`submitForm`)}catch(e){V.debug(`submitForm failed (non-fatal)`,{err:e})}}async submitFeedback(e){V.debug(`submitFeedback →`,{messageId:e.messageId,value:e.value});try{await this.postJson(B.messageFeedback,{messageId:e.messageId,set:{feedback:e.value}},`submitFeedback`)}catch(e){V.debug(`submitFeedback failed (non-fatal)`,{err:e})}}async sendTurn(e){this.conversationsCache.clear(),V.debug(`message →`,{conversationId:e.conversationId,visitorId:e.visitorId,messageId:e.messageId,messageCount:e.messages.length,trigger:e.trigger,tools:e.data?.tools?.map(e=>e.code)});let t=await this.fetchImpl(this.url(B.streamMessage),{method:`POST`,credentials:`omit`,headers:{accept:`application/json`,"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(e))});return{status:`accepted`,conversationId:(await this.assertOk(t,`sendTurn`)).conversationId??e.conversationId}}cancelTurn(e){!this.visitorId||!e||(V.debug(`cancel stream`,{conversationId:e,visitorId:this.visitorId}),this.fetchImpl(this.url(B.cancelStream),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({})),keepalive:!0}).catch(e=>V.debug(`cancel POST failed (non-fatal)`,{err:e})))}async connectResumeStream(e){let t;try{t=await this.fetchImpl(this.resumeUrl(),{method:`GET`,credentials:`omit`,headers:{accept:`text/event-stream`,...this.opts.auth.headers()},signal:e.signal})}catch(t){return e.signal.aborted||V.debug(`resume-stream fetch failed — reconnecting`,{err:t}),`held`}if(!t.ok||!t.body)return V.debug(`resume-stream → endpoint unavailable`,{status:t.status}),`unavailable`;if(!(t.headers.get(`content-type`)??``).includes(`text/event-stream`))return V.debug(`resume-stream → non-SSE response; stopping`),`unavailable`;e.onConnected();try{for await(let{chunk:n}of Gt(t,e.signal)){if(e.signal.aborted)return`held`;e.onChunk(n)}}catch(t){if(e.signal.aborted)return`held`;V.debug(`resume-stream segment dropped — reconnecting`,{err:t})}return`held`}resumeUrl(){return this.withEnvelopeQuery(B.streamResume)}async postJson(e,t,n){let r=await this.fetchWithRetry(()=>[this.url(e),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(t))}],n);return this.assertOk(r,n)}async postForm(e,t,n){let r=await this.fetchImpl(this.url(e),{method:`POST`,credentials:`omit`,headers:this.opts.auth.headers(),body:this.appendEnvelope(t)});return this.assertOk(r,n)}async getJson(e,t){let n=await this.fetchWithRetry(()=>[this.withEnvelopeQuery(e),{method:`GET`,credentials:`omit`,headers:{accept:`application/json`,...this.opts.auth.headers()}}],t);return this.assertOk(n,t)}async fetchWithRetry(e,t){for(let n=0;;n++){let[r,i]=e(),a;try{a=await this.fetchImpl(r,i)}catch(e){if(n>=3)throw new Ut(`${t} failed: network error`,`network`,void 0,e);V.debug(`request network error — retrying`,{label:t,attempt:n}),await zt(H(n));continue}if(a.ok||!sn.has(a.status)||n>=3)return a;let o=cn(a.headers)??H(n);V.debug(`request retryable status — retrying`,{label:t,status:a.status,attempt:n,wait:o}),await zt(o)}}async assertOk(e,t){if(!e.ok)throw new Ut(`${t} failed: ${e.status}`,`server`,e.status);return await e.json()}url(e){return/^https?:\/\//i.test(e)?e:`${this.opts.agentApiBaseUrl}${e}`}dataUrl(e){return/^https?:\/\//i.test(e)?e:`${this.opts.dataApiBaseUrl}${e}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function dn(e){return e.includes(`webm`)?`webm`:e.includes(`ogg`)?`ogg`:e.includes(`mp4`)||e.includes(`m4a`)?`m4a`:e.includes(`mpeg`)?`mp3`:e.includes(`wav`)?`wav`:`bin`}function fn(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.visitorId==`string`&&typeof t.conversationId==`string`}function pn(e,t){let n=e?[{kind:`text`,id:`t0`,textSig:d(e),doneSig:d(!0)}]:[];return{id:ut(),role:`user`,createdAt:Date.now(),status:`complete`,attachments:t,partsSig:d(n)}}function mn(){return{id:ut(),role:`assistant`,createdAt:Date.now(),status:`streaming`,partsSig:d([])}}function hn(e){let t=ut();return gn({id:t,role:e.role,createdAt:Date.now(),status:`complete`,ephemeral:!0,parts:[{kind:`text`,id:`${t}-t0`,text:e.text,done:!0}]})}function gn(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,canceled:e.canceled,errorText:e.errorText,finishReason:e.finishReason,serverMessageId:e.serverMessageId,ephemeral:e.ephemeral,attachments:e.attachments,feedback:e.feedback,partsSig:d(e.parts.map(Un))}}const _n=new Set([`completed`,`failed`,`canceled`]);function vn(e){return e.status===`failed`?`error`:e.role===`assistant`&&e.status!=null&&!_n.has(e.status)?`streaming`:`complete`}function yn(e){let t=new Set,n=e.parts.map((t,n)=>t.type===`text`?{kind:`text`,id:`${e.id}-t${n}`,textSig:d(t.text),doneSig:d(!0)}:t.type===`reasoning`?{kind:`reasoning`,id:`${e.id}-r${n}`,textSig:d(t.text),doneSig:d(t.state!==`streaming`)}:t.type===`step-start`?{kind:`step-start`,id:`${e.id}-ss${n}`}:t.type===`file`?{kind:`file`,url:t.url,mediaType:t.mediaType}:t.type===`source-url`?{kind:`source`,sourceId:t.sourceId,url:t.url,title:t.title}:t.type===`source-document`?{kind:`source`,sourceId:t.sourceId,title:t.title,filename:t.filename,mediaType:t.mediaType}:t.type===`data-suggestions`?null:t.type.startsWith(`tool-`)?{kind:`tool`,toolCallId:t.toolCallId,toolName:$t(t.type),inputPartialSig:d(``),inputSig:d(t.input),outputSig:d(t.output),errorSig:d(t.errorText),stateSig:d(t.state),approvalSig:d(t.approval)}:null).filter(e=>e!==null).filter(e=>e.kind===`source`?t.has(e.sourceId)?!1:(t.add(e.sourceId),!0):!0),r=e.parts.find(e=>e.type===`data-suggestions`);return{id:e.id,role:e.role,operatorInitials:e.operatorInitials,suggestions:r?.type===`data-suggestions`?tn(r.data):void 0,serverMessageId:e.id,createdAt:Zt(e.createdAt)??Date.now(),status:vn(e),canceled:e.status===`canceled`,feedback:e.feedback??null,partsSig:d(n)}}function bn(e){return!e.parts.some(e=>e.type===`text`&&e.text.trim()!==``||e.type.startsWith(`tool-`)||e.type===`file`||e.type===`source-url`||e.type===`source-document`)}function xn(e){return e.role===`assistant`&&e.status!=null&&!_n.has(e.status)&&bn(e)}function Sn(e){let t=e.length-1;return e.filter((e,n)=>n===t||!xn(e)).map(yn)}function Cn(e,t){return(!t&&e.at(-1)?.role===`assistant`?e.slice(0,-1):e).filter(e=>!e.ephemeral)}function wn(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,canceled:e.canceled,errorText:e.errorText,finishReason:e.finishReason,serverMessageId:e.serverMessageId,ephemeral:e.ephemeral,attachments:e.attachments,parts:e.partsSig.value.map(Wn)}}function Tn(e){let t=``;for(let n of e.partsSig.value)n.kind===`text`&&(t+=n.textSig.value);return t}function En(e){return Tn(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`||e.kind===`source`)}function Dn(e){return Tn(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`)}function On(e){return e.status!==`streaming`&&En(e)}function kn(e){return e===`approval-responded`||e===`output-available`||e===`output-denied`||e===`output-error`}const An=e=>e.kind===`tool`,jn=e=>e.kind===`text`&&e.textSig.value.trim()!==``||e.kind===`file`||e.kind===`source`;function Mn(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);return t.slice(n+1).some(jn)}function Nn(e){if(e.role!==`assistant`)return!1;let t=e.partsSig.value.filter(An);return t.length>0&&t.every(e=>kn(e.stateSig.value))}function Pn(e){return e.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`)&&!Mn(e)}function Fn(e,t){return!e.partsSig.value.slice(t+1).some(e=>e.kind===`step-start`||jn(e))}function In(e){return e.partsSig.value.some(e=>An(e)&&!kn(e.stateSig.value))}function Ln(e){return Nn(e)&&!Mn(e)}function Rn(e,t){let n=t.filter(e=>!e.ephemeral&&(e.status===`streaming`||En(e))),r=new Map(n.filter(e=>e.serverMessageId!==void 0).map(e=>[e.serverMessageId,e])),i=new Set,a=e.map(e=>{let t=e.serverMessageId===void 0?void 0:r.get(e.serverMessageId);return t===void 0||(i.add(e.serverMessageId),t.role!==e.role)?e:t.status===`streaming`||Tn(t).length>=Tn(e).length?t:(e.id=t.id,e)}),o=n.filter(e=>e.serverMessageId===void 0||!i.has(e.serverMessageId));return[...a,...o]}function zn(e,t){let n=new Map(t.filter(e=>e.serverMessageId!==void 0).map(e=>[e.serverMessageId,e])),r=new Set(e.flatMap(e=>[e.serverMessageId,e.id].filter(e=>e!==void 0))),i=!1,a=e.map(e=>{if(e.serverMessageId===void 0)return e;let t=n.get(e.serverMessageId);if(t===void 0||t.role!==e.role)return e;let r=Tn(t).length,a=Tn(e).length,o=In(e)&&!In(t)&&r>=a;return r>a||o?(i=!0,t.id=e.id,t):e}),o=[...n.values()].filter(e=>!r.has(e.serverMessageId));return{messages:i||o.length?[...a,...o]:e,changed:i||o.length>0}}function Bn(e){return e.role===`assistant`&&e.status!==`streaming`&&!En(e)}function Vn(e){return e.canceled===!0&&e.role===`assistant`&&e.status!==`streaming`&&!Dn(e)}function Hn(e,t){return e.operatorRoutedTurn?Bn(e)?`drop`:`complete-operator-routed`:t||Bn(e)?`error`:`complete`}function Un(e){return e.kind===`text`||e.kind===`reasoning`?{kind:e.kind,id:e.id,textSig:d(e.text),doneSig:d(e.done)}:e.kind===`tool`?{kind:`tool`,toolCallId:e.toolCallId,toolName:e.toolName,inputPartialSig:d(e.inputPartial),inputSig:d(e.input),outputSig:d(e.output),errorSig:d(e.error),stateSig:d(e.state),approvalSig:d(e.approval)}:e}function Wn(e){return e.kind===`text`||e.kind===`reasoning`?{kind:e.kind,id:e.id,text:e.textSig.value,done:e.doneSig.value}:e.kind===`tool`?{kind:`tool`,toolCallId:e.toolCallId,toolName:e.toolName,inputPartial:e.inputPartialSig.value,input:e.inputSig.value,output:e.outputSig.value,error:e.errorSig.value,state:e.stateSig.value,approval:e.approvalSig.value}:e}const Gn=M.scope(`feedback:audio`);var Kn=class{constructor(){z(this,`ctx`,null),z(this,`master`,null),z(this,`buffers`,new Map)}unlock(){if(this.ctx){this.ctx.state===`suspended`&&this.ctx.resume();return}let e=globalThis.AudioContext??globalThis.webkitAudioContext;if(e)try{this.ctx=new e,this.master=this.ctx.createGain(),this.master.gain.value=1,this.master.connect(this.ctx.destination)}catch(e){Gn.warn(`AudioContext init failed`,{err:e})}}setVolume(e){if(!this.master||!this.ctx)return;let t=Math.max(0,Math.min(1,e));this.master.gain.setTargetAtTime(t,this.ctx.currentTime,.01)}playTone(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=t.currentTime,i=e.noteMs/1e3;e.notes.forEach((a,o)=>{let s=t.createOscillator();s.type=e.type,s.frequency.value=a;let c=t.createGain(),l=r+o*i;c.gain.setValueAtTime(1e-4,l),c.gain.exponentialRampToValueAtTime(e.peakGain,l+.005),c.gain.exponentialRampToValueAtTime(1e-4,l+i),s.connect(c).connect(n),s.start(l),s.stop(l+i+.01)})}async playUrl(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=await this.getBuffer(e);if(!r)return;let i=t.createBufferSource();i.buffer=r,i.connect(n),i.start()}destroy(){this.ctx&&this.ctx.close().catch(()=>void 0),this.ctx=null,this.master=null,this.buffers.clear()}async getBuffer(e){if(!this.ctx)return null;let t=this.buffers.get(e);if(t)return t instanceof Promise,t;let n=this.ctx,r=fetch(e).then(e=>e.ok?e.arrayBuffer():Promise.reject(Error(`fetch ${e.status}`))).then(e=>n.decodeAudioData(e)).then(t=>(this.buffers.set(e,t),t)).catch(t=>(Gn.warn(`audio fetch/decode failed`,{url:e,err:t}),this.buffers.delete(e),null));return this.buffers.set(e,r),r}};const qn={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},Jn={messageReceived:{notes:[880,1318.51],noteMs:90,type:`sine`,peakGain:.45},messageSent:{notes:[1568],noteMs:60,type:`sine`,peakGain:.25},error:{notes:[523.25,392],noteMs:120,type:`triangle`,peakGain:.55},voiceStart:{notes:[1318.51],noteMs:50,type:`sine`,peakGain:.3},voiceStop:{notes:[880],noteMs:50,type:`sine`,peakGain:.3}};let Yn=null,Xn=0;function Zn(){return typeof navigator<`u`&&typeof navigator.vibrate==`function`}function Qn(){if(typeof document>`u`)return null;let e=document.createElement(`input`);e.type=`checkbox`,e.setAttribute(`switch`,``),e.setAttribute(`aria-hidden`,`true`),e.tabIndex=-1,e.id=`__${y.cssPrefix}_haptic_${Math.random().toString(36).slice(2)}`;let t=document.createElement(`label`);t.htmlFor=e.id,t.setAttribute(`aria-hidden`,`true`);let n=`position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;opacity:0!important;pointer-events:none!important;`;return e.style.cssText=n,t.style.cssText=n,document.body.append(e,t),{input:e,label:t}}function $n(e){if(!(e===0||Array.isArray(e)&&e.every(e=>e===0))){if(Zn())try{navigator.vibrate(e);return}catch{}if(Yn||(Yn=Qn()),Yn)try{Yn.label.click()}catch{}}}function er(){Xn++;let e=!1;return()=>{e||(e=!0,Xn=Math.max(0,Xn-1),Xn===0&&Yn&&(Yn.input.remove(),Yn.label.remove(),Yn=null))}}const tr=M.scope(`feedback`);var nr=class{constructor(e,t){z(this,`mutedSig`,d(!1)),z(this,`audio`,new Kn),z(this,`releaseHaptics`,void 0),z(this,`sound`,void 0),z(this,`haptics`,void 0),z(this,`lastPlayed`,new Map),z(this,`reducedMotionMq`,null),this.sound=e,this.haptics=t,this.releaseHaptics=er(),this.audio.setVolume(this.effectiveVolume()),typeof matchMedia<`u`&&(this.reducedMotionMq=matchMedia(`(prefers-reduced-motion: reduce)`))}unlock(){this.audio.unlock(),this.audio.setVolume(this.effectiveVolume())}update(e,t){this.sound=e,this.haptics=t,this.audio.setVolume(this.effectiveVolume())}setMuted(e){this.mutedSig.value!==e&&(this.mutedSig.value=e)}toggleMuted(){this.mutedSig.value=!this.mutedSig.value}play(e){this.mutedSig.value||this.isDeduped(e)||(this.lastPlayed.set(e,performance.now()),this.sound.enabled&&this.playSound(e),this.haptics.enabled&&this.isTouchDevice()&&this.playHaptic(e))}destroy(){this.audio.destroy(),this.releaseHaptics()}isDeduped(e){let t=this.lastPlayed.get(e);return t!==void 0&&performance.now()-t<100}playSound(e){let t=this.sound.events?.[e];if(t===!1)return;if(typeof t==`string`){this.audio.playUrl(t).catch(e=>tr.warn(`audio play failed`,{err:e,url:t}));return}let n=Jn[e];n&&this.audio.playTone(n)}playHaptic(e){if(this.reducedMotionMq?.matches)return;let t=this.haptics.events?.[e];t!==!1&&$n(t===!0||t===void 0?qn[e]:t)}effectiveVolume(){let e=this.sound.volume??.3;return this.reducedMotionMq?.matches?e*.5:e}isTouchDevice(){return typeof window>`u`?!1:matchMedia(`(hover: none) and (pointer: coarse)`).matches}};const U={fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,viewBox:`0 0 24 24`},rr=`${y.cssPrefix}-icon-dir`,ir=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M21 12a8 8 0 0 1-12 6.93L3 21l1.65-5.16A8 8 0 1 1 21 12Z`})}),ar=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M18 6 6 18M6 6l12 12`})}),or=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M12 5v14M5 12h14`})}),sr=()=>g(`svg`,{...U,class:rr,"aria-hidden":`true`,children:[h(`path`,{d:`m22 2-7 20-4-9-9-4Z`}),h(`path`,{d:`M22 2 11 13`})]}),cr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M12 19V5M5 12l7-7 7 7`})}),lr=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`M3 20V4l18 8-18 8Z`})}),ur=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`m9 18 6-6-6-6`})}),dr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})}),fr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`m21 11-9 9a5.5 5.5 0 0 1-7.78-7.78l8.49-8.49a3.67 3.67 0 0 1 5.19 5.19l-8.49 8.49a1.83 1.83 0 0 1-2.6-2.6l7.78-7.78`})}),pr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`rect`,{x:`9`,y:`2`,width:`6`,height:`12`,rx:`3`}),h(`path`,{d:`M5 10a7 7 0 0 0 14 0M12 19v3`})]}),mr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5`})}),hr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5`})}),gr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z`})}),_r=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7`})}),vr=()=>h(`svg`,{...U,"aria-hidden":`true`,viewBox:`0 0 10 10`,children:h(`path`,{d:`M9 1L1 9M9 5L5 9M9 9H9`,strokeWidth:`1.5`})}),yr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`5`,r:`1.5`,fill:`currentColor`,stroke:`none`}),h(`circle`,{cx:`12`,cy:`12`,r:`1.5`,fill:`currentColor`,stroke:`none`}),h(`circle`,{cx:`12`,cy:`19`,r:`1.5`,fill:`currentColor`,stroke:`none`})]}),br=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M11 5 6 9H2v6h4l5 4zM15 9a5 5 0 0 1 0 6M18 7a9 9 0 0 1 0 10`})}),xr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6`})}),Sr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M3 18 8 6l5 12M4.7 14h6.6`}),h(`path`,{d:`M14.5 18l3.2-7 3.2 7M15.6 15.8h4.2`})]}),Cr=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`m5 6 6 6-6 6M13 6l6 6-6 6`})}),wr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M20 6 9 17l-5-5`})}),Tr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M3 3v6h6`}),h(`path`,{d:`M3.05 13A9 9 0 1 0 6 5.3L3 9`}),h(`path`,{d:`M12 7v5l3 2`})]}),Er=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`10`}),h(`path`,{d:`M2 12h20`}),h(`path`,{d:`M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z`})]}),Dr=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`M19 12H5M12 19l-7-7 7-7`})}),Or=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M12 20h9`}),h(`path`,{d:`M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z`})]}),kr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`m6 9 6 6 6-6`})}),Ar=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z`}),h(`path`,{d:`M14 2v6h6`})]}),jr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`m12 3-1.5 4.5L6 9l4.5 1.5L12 15l1.5-4.5L18 9l-4.5-1.5Z`}),h(`path`,{d:`M19 15v4M17 17h4M5 3v2M4 4h2`})]}),Mr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z`})}),Nr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`10`}),h(`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}),h(`path`,{d:`M12 17h.01`})]}),Pr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`m15 4 3 3-9 9-3-3z`}),h(`path`,{d:`M18 2v2M20 4h2M3 20l3-3M3 16h2M5 14v2`})]}),Fr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`rect`,{x:`4`,y:`8`,width:`16`,height:`12`,rx:`2`}),h(`path`,{d:`M12 8V4`}),h(`circle`,{cx:`12`,cy:`3`,r:`1`}),h(`path`,{d:`M2 14h2M20 14h2M9 13h.01M15 13h.01M9.5 17h5`})]}),Ir=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M4 14v-2a8 8 0 0 1 16 0v2`}),h(`rect`,{x:`2`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),h(`rect`,{x:`18`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),h(`path`,{d:`M20 20v1a3 3 0 0 1-3 3h-5`})]}),Lr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`10`}),h(`circle`,{cx:`12`,cy:`12`,r:`4`}),h(`path`,{d:`m4.93 4.93 4.24 4.24M14.83 14.83l4.24 4.24M14.83 9.17l4.24-4.24M4.93 19.07l4.24-4.24`})]}),Rr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`11`,cy:`11`,r:`7`}),h(`path`,{d:`m21 21-4.3-4.3`})]}),zr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]}),Br=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M3 9.5 12 3l9 6.5`}),h(`path`,{d:`M5 9v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9`})]}),Vr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`m3 11 15-5v12L3 13z`}),h(`path`,{d:`M3 11v2a2 2 0 0 0 2 2h1V9H5a2 2 0 0 0-2 2z`}),h(`path`,{d:`M7 15v3a2 2 0 0 0 4 0v-2`}),h(`path`,{d:`M21 10a3 3 0 0 1 0 4`})]}),Hr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z`}),h(`path`,{d:`M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1`})]}),Ur=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`4`}),h(`path`,{d:`M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41`})]}),Wr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z`})}),Gr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`M12 3v18`}),h(`path`,{d:`M12 3a9 9 0 0 1 0 18z`,fill:`currentColor`,stroke:`none`})]}),Kr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`10.5`,cy:`10.5`,r:`6.5`}),h(`path`,{d:`M8 11a2.5 2.5 0 0 0 5 0`}),h(`path`,{d:`m20 20-4.4-4.4`})]}),qr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M12 3.5 13.6 9 19 10.5 13.6 12 12 17.5 10.4 12 5 10.5 10.4 9z`}),h(`path`,{d:`M18.5 4v3M20 5.5h-3M5.5 16v2.5M6.75 17.25h-2.5`})]}),Jr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M4 18h16`}),h(`path`,{d:`M5 18a7 7 0 0 1 14 0`}),h(`path`,{d:`M12 8V6`}),h(`path`,{d:`M10 6h4`})]}),Yr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M7 11V6.5a1.5 1.5 0 0 1 3 0V10`}),h(`path`,{d:`M10 10V5.5a1.5 1.5 0 0 1 3 0V10`}),h(`path`,{d:`M13 10V6.5a1.5 1.5 0 0 1 3 0V12`}),h(`path`,{d:`M16 9.5a1.5 1.5 0 0 1 3 0v2.5a7 7 0 0 1-7 7 7 7 0 0 1-6.4-4.2L4 12.5a1.5 1.5 0 0 1 2.6-1.5L7 11`})]}),Xr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`rect`,{x:`9`,y:`9`,width:`11`,height:`11`,rx:`2`}),h(`path`,{d:`M5 15a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2`})]}),Zr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M7 10v11H4a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1z`}),h(`path`,{d:`M7 10l4-7a2.5 2.5 0 0 1 2.5 2.5V8h5a2 2 0 0 1 2 2.3l-1.2 8A2 2 0 0 1 17.3 20H7`})]}),Qr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M17 14V3h3a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1z`}),h(`path`,{d:`M17 14l-4 7a2.5 2.5 0 0 1-2.5-2.5V16h-5a2 2 0 0 1-2-2.3l1.2-8A2 2 0 0 1 6.7 4H17`})]}),$r=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`3.5`}),h(`path`,{d:`M12 2v3M12 19v3M2 12h3M19 12h3M4.9 4.9l2.1 2.1M17 17l2.1 2.1M19.1 4.9l-2.1 2.1M7 17l-2.1 2.1`})]}),ei=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`M12 7v5l3 2`})]}),ti=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]}),ni=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`m15 9-6 6M9 9l6 6`})]}),ri={chat:ir,message:Mr,bubbles:Hr,spark:jr,wand:Pr,bot:Fr,help:Nr,lifebuoy:Lr,headset:Ir,search:Kr,sparkles:qr,concierge:Jr,wave:Yr},W=y.cssPrefix,G={launcher:`${W}-launcher`,callout:`${W}-callout`,calloutDismiss:`${W}-callout-dismiss`,panel:`${W}-panel`,panelHeader:`${W}-panel-header`,resizeGrip:`${W}-resize-grip`,scrollToBottom:`${W}-scroll-to-bottom`,actionHistory:`${W}-action-history`,actionClose:`${W}-action-close`,langSegment:`${W}-lang-segment`,composer:`${W}-composer`,composerInput:`${W}-composer-input`,composerSend:`${W}-composer-send`,composerStop:`${W}-composer-stop`,composerAttach:`${W}-composer-attach`,composerFileInput:`${W}-composer-file-input`,composerVoice:`${W}-composer-voice`,attachmentChip:`${W}-attachment-chip`,attachmentRemove:`${W}-attachment-remove`,suggestion:`${W}-suggestion`,messageBubble:`${W}-message`,messageRetry:`${W}-message-retry`,messageFeedback:`${W}-message-feedback`,feedbackUp:`${W}-feedback-up`,feedbackDown:`${W}-feedback-down`,messageCopy:`${W}-message-copy`,historyPane:`${W}-history-pane`,historyBack:`${W}-history-back`,historyItem:`${W}-history-item`,sidebar:`${W}-sidebar`,sidebarToggle:`${W}-sidebar-toggle`,sidebarNewConversation:`${W}-sidebar-new-conversation`,sidebarItem:`${W}-sidebar-item`,messengerHome:`${W}-messenger-home`,modulesEmpty:`${W}-modules-empty`,tab:`${W}-tab`,tabBadge:`${W}-tab-badge`,homeView:`${W}-home-view`,homeGreeting:`${W}-home-greeting`,homeBrand:`${W}-home-brand`,backHeader:`${W}-back-header`,contentView:`${W}-content-view`,contentScroll:`${W}-content-scroll`,homeSearch:`${W}-home-search`,helpSearch:`${W}-help-search`,homeRecent:`${W}-home-recent`,homeContentRow:`${W}-home-content-row`,helpArticle:`${W}-help-article`,newsItem:`${W}-news-item`,formGate:`${W}-form-gate`,formDone:`${W}-form-done`,formDoneToggle:`${W}-form-done-toggle`,formAnswers:`${W}-form-answers`,formFill:`${W}-form-fill`,formSubmit:`${W}-form-submit`,formSkip:`${W}-form-skip`,formField:`${W}-form-field`,toolAskQuestions:`${W}-tool-ask-questions`,toolInputSubmit:`${W}-tool-input-submit`,toolInputSkip:`${W}-tool-input-skip`,toolApproval:`${W}-tool-approval`,toolApprove:`${W}-tool-approve`,toolReject:`${W}-tool-reject`,toolEdit:`${W}-tool-edit`,toolDecision:`${W}-tool-decision`,toolAskSummary:`${W}-ask-questions-summary`,toolAskOptions:`${W}-ask-questions-options-toggle`,toolCall:`${W}-tool-call`,source:`${W}-source`,operatorRequest:`${W}-operator-request`,operatorBanner:`${W}-operator-banner`,operatorCancelRequest:`${W}-operator-cancel-request`};function ii(e,t){return`${e}-${t}`}const ai=y.cssPrefix;function oi({onToggle:e,launcher:t,strings:n,leaving:r,edgeTab:i}){let a=t.variant!==`circle`&&!!t.label;return g(`button`,{type:`button`,class:`${ai}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?`true`:void 0,"data-leaving":r?`true`:void 0,"data-testid":G.launcher,onClick:e,"aria-label":n.launcherOpen,children:[si(t.icon),a?h(`span`,{class:`${ai}-fab-label`,children:E(n,t.label??``)}):null]})}function si(e){let t=ri[e];return t?h(t,{}):h(ci,{source:e})}function ci({source:e}){return h(`span`,{ref:t=>{t&&li(t,e)},"aria-hidden":`true`})}function li(e,t){if(e.dataset.svgMounted!==t)try{let n=new DOMParser().parseFromString(t,`image/svg+xml`).documentElement;n&&n.tagName.toLowerCase()===`svg`&&(e.replaceChildren(document.importNode(n,!0)),e.dataset.svgMounted=t)}catch{}}function ui({callout:e,launcherPosition:t,strings:n,closeLabel:r,onDismiss:a}){let[o,s]=c(!1);return i(()=>{let t=setTimeout(()=>s(!0),e.delayMs);return()=>clearTimeout(t)},[e.delayMs]),i(()=>{if(!o||e.autoDismissMs<=0)return;let t=setTimeout(a,e.autoDismissMs);return()=>clearTimeout(t)},[o,e.autoDismissMs,a]),o?g(`div`,{class:`${ai}-callout`,role:`status`,"data-shape":e.shape,"data-position":di(e.position,t),"data-animated":e.animated?`true`:void 0,"data-testid":G.callout,children:[h(`span`,{children:E(n,e.text)}),h(`button`,{type:`button`,class:`${ai}-callout-close`,onClick:a,"aria-label":r,title:r,"data-testid":G.calloutDismiss,children:h(ar,{})})]}):null}function di(e,t){let n=t.endsWith(`-right`),r=t.startsWith(`bottom-`);return e===`vertical`?r?`top`:`bottom`:n?`left`:`right`}function fi({panelEl:e,resize:t,position:n,initialSize:r,onSizeChange:a,strings:o}){let c=y.cssPrefix,l=s(null);if(i(()=>{if(!e)return;let n=e.style;t.minWidth&&n.setProperty(`--${c}-resize-min-w`,t.minWidth),t.maxWidth&&n.setProperty(`--${c}-resize-max-w`,t.maxWidth),t.minHeight&&n.setProperty(`--${c}-resize-min-h`,t.minHeight),t.maxHeight&&n.setProperty(`--${c}-resize-max-h`,t.maxHeight),r&&(n.setProperty(`--${c}-widget-w`,`${r.width}px`),n.setProperty(`--${c}-widget-h`,`${r.height}px`))},[e,t.minWidth,t.maxWidth,t.minHeight,t.maxHeight,c,r]),!e)return null;let u=n.startsWith(`top-`),d=n.endsWith(`-right`),f=`${c}-resize-grip ${c}-resize-grip--${u?`bottom`:`top`}-${d?`left`:`right`}`,p=t=>{if(!e)return;let n=t.currentTarget,r=e.getBoundingClientRect();l.current={pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,startW:r.width,startH:r.height,dirX:d?-1:1,dirY:u?1:-1},n.setPointerCapture(t.pointerId),e.setAttribute(`data-resizing`,``),t.preventDefault()},m=t=>{let n=l.current;if(!n||t.pointerId!==n.pointerId||!e)return;let r=(t.clientX-n.startX)*n.dirX,i=(t.clientY-n.startY)*n.dirY;e.style.setProperty(`--${c}-widget-w`,`${n.startW+r}px`),e.style.setProperty(`--${c}-widget-h`,`${n.startH+i}px`)},g=t=>{let n=l.current;if(!n||t.pointerId!==n.pointerId||!e)return;t.currentTarget.releasePointerCapture(t.pointerId),e.removeAttribute(`data-resizing`);let r=e.getBoundingClientRect();a({width:Math.round(r.width),height:Math.round(r.height)}),l.current=null};return h(`div`,{class:f,role:`separator`,"aria-orientation":`vertical`,"aria-label":o.resizeHandle,title:o.resizeHandle,onPointerDown:p,onPointerMove:m,onPointerUp:g,onPointerCancel:g,"data-testid":G.resizeGrip,children:h(vr,{})})}const pi=y.cssPrefix,mi=`.${pi}-header, .${pi}-back-header, .${pi}-home-hero`;function hi(e,t){i(()=>{if(!t||!e)return;let n=e=>Number.parseFloat(e)||0,r=(e,t)=>Math.min(t,Math.max(-t,e)),i=null,a=t=>{let r=t.target;if(!(r instanceof Element)||!r.closest(mi)||r.closest(`button, a, input, textarea, select, [role="tab"], [contenteditable]`))return;let a=e.getBoundingClientRect();i={id:t.pointerId,x:t.clientX,y:t.clientY,dx:n(e.style.getPropertyValue(`--${pi}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${pi}-modal-dy`)),maxX:(window.innerWidth+a.width)/2-56,maxY:(window.innerHeight+a.height)/2-56},e.dataset.dragging=`true`,t.preventDefault()},o=t=>{if(!i||t.pointerId!==i.id)return;let n=r(i.dx+t.clientX-i.x,i.maxX),a=r(i.dy+t.clientY-i.y,i.maxY);e.style.setProperty(`--${pi}-modal-dx`,`${n}px`),e.style.setProperty(`--${pi}-modal-dy`,`${a}px`)},s=t=>{!i||t.pointerId!==i.id||(i=null,delete e.dataset.dragging)};return e.addEventListener(`pointerdown`,a),window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s),()=>{e.removeEventListener(`pointerdown`,a),window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[e,t])}function gi(e,t,n){switch(e){case`clear`:case`sound`:case`history`:case`language`:case`theme`:case`textSize`:return!0;case`expand`:return t===`floating`;case`fullscreen`:return t!==`standalone`;case`close`:return t===`standalone`||t===`page`?!1:t!==`inline`||n===`fullscreen`}}function _i(e,t,n){return gi(`close`,e,t)?n.includes(`close`):!1}function vi(e,t){return e===`inline`&&t===`fullscreen`?`exit-fullscreen`:`close`}function yi(e){let t=t=>{if(t.key!==`Tab`)return;let n=[...e.querySelectorAll(`a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])`)].filter(e=>e.offsetParent!==null||e===document.activeElement);if(n.length===0){t.preventDefault();return}let r=n[0],i=n[n.length-1];if(!r||!i)return;let a=e.getRootNode().activeElement;t.shiftKey&&a===r?(t.preventDefault(),i.focus()):!t.shiftKey&&a===i&&(t.preventDefault(),r.focus())};return e.addEventListener(`keydown`,t),()=>e.removeEventListener(`keydown`,t)}function bi(e){return e.trim().split(/\s+/).slice(0,2).map(e=>e.charAt(0).toUpperCase()).join(``)}const xi=y.cssPrefix;function Si({agent:e,strings:t}){let n=e.status??`online`,r=E(t,e.name),i=e.title?E(t,e.title):null;return g(`div`,{class:`${xi}-agent`,children:[h(`div`,{class:`${xi}-agent-avatar`,"data-status":n,children:e.avatar?h(`img`,{src:e.avatar,alt:``}):h(`span`,{children:bi(r)})}),g(`div`,{class:`${xi}-agent-meta`,children:[h(`strong`,{children:r}),i?h(`span`,{children:i}):null]})]})}const Ci=M.scope(`attachments`);function wi(e,t,n){let r=Di(e),i=[],a=[],o=Ai(n.accept),s=t.reduce((e,t)=>e+t.size,0),c=t.length;for(let e of r){let t=Ei(e,c,s,n,o);if(t){a.push({file:e,reason:t});continue}i.push(ki(e)),s+=e.size,c+=1}return(i.length||a.length)&&Ci.debug(`ingest`,{accepted:i.length,rejected:a.map(e=>({name:e.file.name,reason:e.reason}))}),{accepted:i,rejected:a}}function Ti(e){try{URL.revokeObjectURL(e.previewUrl)}catch(e){Ci.debug(`revokeObjectURL failed`,{error:e})}}function Ei(e,t,n,r,i){return t>=r.maxCount?`count`:n+e.size>r.maxBytes?`bytes`:ji(e,i)?null:`mime`}function Di(e){return e?Array.isArray(e)?e.filter(e=>e instanceof File):[...e].map(e=>e instanceof File?e:Oi(e)).filter(e=>e!==null):[]}function Oi(e){let t=e;return!t?.getAsFile||t.kind!==`file`?null:t.getAsFile()}function ki(e){return{file:e,id:ut(),mediaType:e.type||`application/octet-stream`,name:e.name||`pasted-file`,previewUrl:URL.createObjectURL(e),size:e.size}}function Ai(e){return e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean).map(e=>{if(e.startsWith(`.`))return{kind:`ext`,ext:e};let[t=`*`,n=`*`]=e.split(`/`);return{kind:`mime`,type:t,subtype:n}})}function ji(e,t){if(t.length===0)return!0;let[n=`*`,r=`*`]=(e.type||``).toLowerCase().split(`/`),i=(e.name||``).toLowerCase();return t.some(e=>e.kind===`ext`?i.endsWith(e.ext):(e.type===`*`||e.type===n)&&(e.subtype===`*`||e.subtype===r))}const Mi=y.cssPrefix;function Ni({attachment:e,onRemove:t}){let n=e.mediaType.startsWith(`image/`);return g(`span`,{class:`${Mi}-attachment-chip`,title:e.name,"data-testid":ii(G.attachmentChip,e.id),children:[n?h(`img`,{class:`${Mi}-attachment-thumb`,src:e.previewUrl,alt:``}):h(`span`,{class:`${Mi}-attachment-thumb`,"aria-hidden":`true`,children:h(Ar,{})}),h(`span`,{class:`${Mi}-attachment-name`,children:e.name}),h(`button`,{type:`button`,class:`${Mi}-attachment-remove`,onClick:t,"aria-label":`Remove ${e.name}`,"data-testid":ii(G.attachmentRemove,e.id),children:h(ar,{})})]})}const Pi={isSupported:!1,start:()=>void 0,stop:()=>void 0};function Fi(e,t,n){return e===`disabled`?Pi:e===`server`?zi(n):Ii(t)}function Ii(e){let t=Li();if(!t)return Pi;let n=null;return{isSupported:!0,start(r,i){n=new t,n.continuous=!0,n.interimResults=!0,n.lang=e,n.addEventListener(`result`,e=>{let t=e,n=``,i=!1;for(let e=t.resultIndex;e<t.results.length;e++){let r=t.results[e];r&&(n+=r[0].transcript,r.isFinal&&(i=!0))}r(n,i)});let a=()=>{n=null,i()};n.addEventListener(`end`,a),n.addEventListener(`error`,a),n.start()},stop(){n?.stop()}}}function Li(){return window.SpeechRecognition??window.webkitSpeechRecognition}const Ri=[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`];function zi(e){if(typeof MediaRecorder>`u`||!navigator?.mediaDevices?.getUserMedia)return Pi;let t=null,n=null,r=[],i=()=>{for(let e of n?.getTracks()??[])e.stop();n=null};return{isSupported:!0,async start(a,o){try{n=await navigator.mediaDevices.getUserMedia({audio:!0});let s=Bi();t=new MediaRecorder(n,s?{mimeType:s}:void 0),r=[],t.addEventListener(`dataavailable`,e=>{e.data.size>0&&r.push(e.data)}),t.addEventListener(`stop`,async()=>{let n=t?.mimeType??`audio/webm`;i();let s=new Blob(r,{type:n});r=[];try{let{text:t}=await e(s,n);t&&a(t,!0)}catch{}finally{o()}}),t.start()}catch{i(),o()}},stop(){t?.stop()}}}function Bi(){for(let e of Ri)if(MediaRecorder.isTypeSupported(e))return e}const K=y.cssPrefix,Vi=M.scope(`composer`);function Hi(e){return e.reduce((e,t)=>e+t.size,0)}const Ui={arrowUp:cr,paperPlane:sr,send:lr,chevron:ur};function Wi({options:e,transport:t,feedback:n,bus:r,isStreaming:a,operatorRequestEnabled:o,controlMode:l,onRequestOperator:u,onSend:d,onStop:f,attachApiRef:p}){let m=e.strings,[_,v]=c(``),[y,b]=c([]),[x,S]=c(!1),C=s(null),w=s(null),T=e.features.fileUpload,E=e.features.voice,[D,O]=c(()=>Fi(E,e.locale,(e,n)=>t.transcribe(e,n)));i(()=>{x||E===`disabled`||O(Fi(E,e.locale,(e,n)=>t.transcribe(e,n)))},[e.locale,E,t,x]),i(()=>{let e=C.current;if(!e)return;let t=e.getRootNode(),n=`activeElement`in t?t.activeElement:null;n&&e.closest(`.${K}-panel`)?.contains(n)||e.focus({preventScroll:!0})},[]),i(()=>{let e=C.current;if(!e)return;if(_.length===0){e.style.height=``;return}e.style.height=`auto`;let t=parseFloat(getComputedStyle(e).fontSize)*.7,n=Math.min(e.scrollHeight,160);e.style.height=`${n<40+t?40:n}px`},[_]);let k=s(y);k.current=y,i(()=>()=>k.current.forEach(Ti),[]),i(()=>{if(p)return p.current={attachFromDrop:t=>{let n=wi(t,k.current,e.attachments);n.accepted.length!==0&&(Vi.info(`attach (drop)`,{count:n.accepted.length,totalBytes:Hi(n.accepted)}),r.emit(`attach`,{count:n.accepted.length,totalBytes:Hi(n.accepted)}),b(e=>[...e,...n.accepted]))},fill:e=>{v(e);let t=C.current;t&&(t.focus({preventScroll:!0}),requestAnimationFrame(()=>t.setSelectionRange(t.value.length,t.value.length)))}},()=>{p.current&&(p.current=null)}},[p,e.attachments]),i(()=>{let t=C.current;if(!t)return;let n=t.closest(`.${K}-panel`);if(!n)return;let i=n=>{let i=n.clipboardData;if(!i)return;let a=n.target?.closest?.(`input, textarea, [contenteditable]:not([contenteditable='false'])`);if(a&&a!==t)return;if(T){let t=wi(i.items,k.current,e.attachments);if(t.accepted.length>0){n.preventDefault(),Vi.info(`attach (paste)`,{count:t.accepted.length,totalBytes:Hi(t.accepted)}),r.emit(`attach`,{count:t.accepted.length,totalBytes:Hi(t.accepted)}),b(e=>[...e,...t.accepted]);return}}if(a===t)return;let o=i.getData(`text/plain`);o&&(n.preventDefault(),v(e=>e+o),t.focus())};return n.addEventListener(`paste`,i),()=>n.removeEventListener(`paste`,i)},[T,e.attachments,K]);let A=()=>{let e=_.trim();!e&&y.length===0||a||(d(e,y),v(``),b([]))},ee=e=>{e.key!==`Enter`||e.shiftKey||e.isComposing||(e.preventDefault(),a?f():A())},te=t=>{let n=t.target,i=wi(n.files,y,e.attachments);i.accepted.length>0&&(Vi.info(`attach (file picker)`,{count:i.accepted.length,totalBytes:Hi(i.accepted)}),r.emit(`attach`,{count:i.accepted.length,totalBytes:Hi(i.accepted)}),b(e=>[...e,...i.accepted])),n.value=``},ne=e=>{Vi.info(`removeAttachment`,{id:e}),r.emit(`removeAttachment`,{id:e}),b(t=>{let n=t.find(t=>t.id===e);return n&&Ti(n),t.filter(t=>t.id!==e)})},j=s(null),re=()=>{if(D.isSupported){if(x){let e=j.current?Date.now()-j.current:0;Vi.info(`voiceStop`,{durationMs:e}),r.emit(`voiceStop`,{durationMs:e}),D.stop(),S(!1),n.play(`voiceStop`),j.current=null;return}j.current=Date.now(),Vi.info(`voiceStart`),r.emit(`voiceStart`,void 0),S(!0),n.play(`voiceStart`),D.start((e,t)=>v(n=>t?`${n}${e} `:n),()=>{if(S(!1),j.current){let e=Date.now()-j.current;Vi.debug(`voiceStop (auto)`,{durationMs:e}),r.emit(`voiceStop`,{durationMs:e}),j.current=null}})}},ie=Ui[e.composer.sendButton.icon];return g(`div`,{class:`${K}-composer`,"data-testid":G.composer,children:[y.length>0?h(`div`,{class:`${K}-attachments`,children:y.map(e=>h(Ni,{attachment:e,onRemove:()=>ne(e.id)},e.id))}):null,g(`div`,{class:`${K}-composer-row`,children:[g(`div`,{class:`${K}-composer-actions`,children:[T?h(`button`,{type:`button`,class:`${K}-icon-btn`,onClick:()=>w.current?.click(),"aria-label":m.attach,"data-testid":G.composerAttach,children:h(fr,{})}):null,D.isSupported?h(`button`,{type:`button`,class:`${K}-icon-btn`,onClick:re,"aria-label":x?m.micStop:m.micStart,"aria-pressed":x,"data-recording":x?`true`:void 0,"data-testid":G.composerVoice,children:h(pr,{})}):null,o&&l===`ai-agent`&&u?h(`button`,{type:`button`,class:`${K}-icon-btn`,onClick:u,"aria-label":m.talkToOperator,title:m.talkToOperator,"data-testid":G.operatorRequest,children:h(Ir,{})}):null]}),h(`textarea`,{ref:C,class:`${K}-textarea`,rows:1,value:_,placeholder:m.composerPlaceholder,onInput:e=>v(e.target.value),onKeyDown:ee,"aria-label":m.composerPlaceholder,"data-testid":G.composerInput}),a?h(`button`,{type:`button`,class:`${K}-send`,onClick:f,"aria-label":m.stop,"data-testid":G.composerStop,children:h(dr,{})}):h(`button`,{type:`button`,class:`${K}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:A,disabled:!_.trim()&&y.length===0,"aria-label":m.send,"data-testid":G.composerSend,children:h(ie,{})})]}),h(`input`,{ref:w,type:`file`,multiple:!0,accept:e.attachments.accept,onChange:te,class:`${K}-sr-only`,"data-testid":G.composerFileInput})]})}const Gi=y.cssPrefix;function Ki({visible:e,strings:t}){return e?h(`div`,{class:`${Gi}-dropzone`,role:`status`,"aria-live":`polite`,children:t.dropZone}):null}function qi({containerRef:e,onDrop:t}){let[n,r]=c(!1);return i(()=>{let n=e.current;if(!n)return;let i=0,a=e=>{i+=1,e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),r(!0))},o=()=>{--i,!(i>0)&&(i=0,r(!1))},s=e=>{e.dataTransfer?.types.includes(`Files`)&&e.preventDefault()},c=e=>{i=0,r(!1),e.dataTransfer&&(e.preventDefault(),t(e.dataTransfer.items))};return n.addEventListener(`dragenter`,a),n.addEventListener(`dragleave`,o),n.addEventListener(`dragover`,s),n.addEventListener(`drop`,c),()=>{n.removeEventListener(`dragenter`,a),n.removeEventListener(`dragleave`,o),n.removeEventListener(`dragover`,s),n.removeEventListener(`drop`,c)}},[e,t]),{visible:n}}function Ji({itemCount:e,initialFocusIndex:t}){let[n,a]=c(!1),o=s(null),l=s(null),[u,d]=c(-1),f=r(()=>{a(!1),d(-1),o.current?.focus()},[]),p=r(()=>a(e=>!e),[]);return i(()=>{if(!n)return;let e=e=>{let t=l.current,n=o.current;if(!t||!n)return;let r=e.composedPath();r.includes(t)||r.includes(n)||(a(!1),d(-1))};return document.addEventListener(`click`,e,!0),()=>document.removeEventListener(`click`,e,!0)},[n]),i(()=>{if(!n||e===0)return;let r=t?.()??0;d(r<0||r>=e?0:r)},[n,e,t]),i(()=>{!n||u<0||(l.current?.querySelectorAll(`[role='menuitem']`))?.[u]?.focus()},[n,u]),{open:n,focusIndex:u,triggerRef:o,menuRef:l,toggle:p,close:f,onTriggerKey:r(e=>{(e.key===`ArrowDown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),a(!0))},[]),onMenuKey:r(t=>{if(e!==0)switch(t.key){case`Escape`:t.preventDefault(),f();return;case`ArrowDown`:t.preventDefault(),d(t=>(t+1)%e);return;case`ArrowUp`:t.preventDefault(),d(t=>(t-1+e)%e);return;case`Home`:t.preventDefault(),d(0);return;case`End`:t.preventDefault(),d(e-1)}},[e,f])}}function Yi({items:e,triggerLabel:t}){let n=y.cssPrefix,r=Ji({itemCount:e.length}),i=e=>{e.disabled||(e.onSelect?.(),e.keepOpen||r.close())},a=(e,t)=>e.onSelectValue?.(t),o=(e,t)=>{let n=t.segments;if(!n?.length)return;let r=Math.max(0,n.findIndex(e=>e.value===t.value)),i=-1;if(e.key===`ArrowRight`||e.key===`Enter`||e.key===` `)i=(r+1)%n.length;else if(e.key===`ArrowLeft`)i=(r-1+n.length)%n.length;else return;e.preventDefault(),e.stopPropagation(),a(t,n[i].value)};return g(`div`,{class:`${n}-menu-wrap`,children:[h(`button`,{ref:r.triggerRef,type:`button`,class:`${n}-icon-btn`,"aria-label":t,"aria-haspopup":`menu`,"aria-expanded":r.open,title:t,onClick:r.toggle,onKeyDown:r.onTriggerKey,children:h(yr,{})}),r.open?h(`div`,{ref:r.menuRef,class:`${n}-menu`,role:`menu`,"aria-label":t,onKeyDown:r.onMenuKey,tabIndex:-1,children:e.map(e=>e.segments?g(`div`,{role:`menuitem`,class:`${n}-menu-item ${n}-menu-item-segmented`,"aria-label":e.label,tabIndex:-1,onKeyDown:t=>o(t,e),children:[e.icon?h(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,h(`span`,{class:`${n}-menu-label`,children:e.label}),h(`span`,{class:`${n}-segmented`,role:`group`,"aria-label":e.label,children:e.segments.map(t=>{let r=t.value===e.value;return h(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":r,class:`${n}-segment`,"data-on":r?`true`:void 0,lang:t.lang,title:t.value,tabIndex:-1,"data-testid":`${G.langSegment}-${t.value}`,onClick:()=>a(e,t.value),children:t.label},t.value)})})]},e.id):g(`button`,{type:`button`,role:`menuitem`,class:`${n}-menu-item`,"aria-pressed":e.type===`switch`?e.on:void 0,disabled:e.disabled,onClick:()=>i(e),children:[e.icon?h(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,h(`span`,{class:`${n}-menu-label`,children:e.label}),e.type===`switch`&&e.on?h(`span`,{class:`${n}-menu-check`,"aria-hidden":`true`,children:h(wr,{})}):null]},e.id))}):null]})}const Xi=y.cssPrefix;function Zi(e){let t=typeof matchMedia!=`function`||matchMedia(`(prefers-color-scheme: dark)`).matches;return e===`auto`?t?`light`:`dark`:t?e===`light`?`dark`:`auto`:e===`dark`?`light`:`auto`}const Qi={normal:`large`,large:`small`,small:`normal`};function $i(e){return h(e===`light`?Ur:e===`dark`?Wr:Gr,{})}function ea(e){return(e.split(`-`)[0]??e).toUpperCase()}function ta({panelProps:e,variant:t}){let{options:n,panelSize:r,feedback:i,onClose:a,onClear:o,onExpand:s,onFullscreen:c,onSoundToggle:l}=e,{onToggleHistory:u,onLocaleChange:d,onThemeChange:p,onTextSizeChange:m}=e,_=n.strings,v=n.mode,y=t===`chat`,b=f(()=>i.mutedSig.value).value,x=new Set(n.actions),S=e=>x.has(e),C=typeof matchMedia==`function`&&matchMedia(`(max-width: 640px)`).matches,w=e=>!C&&gi(e,v,r),T=n.themeMode,E={auto:_.themeAuto,light:_.themeLight,dark:_.themeDark},D=n.textSize,O={small:_.textSizeSmall,normal:_.textSizeNormal,large:_.textSizeLarge},k=[];if(y&&S(`clear`)&&k.push({id:`clear`,icon:h(Or,{}),label:_.newConversation,onSelect:o}),S(`expand`)&&w(`expand`)){let e=r===`expanded`;k.push({id:`expand`,icon:h(e?hr:mr,{}),label:e?_.collapse:_.expand,type:`switch`,on:e,onSelect:s})}if(S(`fullscreen`)&&w(`fullscreen`)){let e=r===`fullscreen`;k.push({id:`fullscreen`,icon:h(e?_r:gr,{}),label:e?_.exitFullscreen:_.fullscreen,type:`switch`,on:e,onSelect:c})}y&&S(`sound`)&&k.push({id:`sound`,icon:h(b?xr:br,{}),label:b?_.soundOff:_.soundOn,type:`switch`,on:!b,onSelect:l}),S(`theme`)&&k.push({id:`theme`,icon:$i(T),label:`${_.theme}: ${E[T]}`,onSelect:()=>p(Zi(T)),keepOpen:!0}),S(`textSize`)&&k.push({id:`textSize`,icon:h(Sr,{}),label:`${_.textSize}: ${O[D]}`,onSelect:()=>m(Qi[D]),keepOpen:!0}),S(`language`)&&n.availableLocales.length>1&&k.push({id:`language`,icon:h(Er,{}),label:_.language,segments:n.availableLocales.map(e=>({value:e,label:ea(e),lang:e})),value:n.locale,onSelectValue:d});let A=!!a&&_i(v,r,n.actions),ee=y&&S(`history`);return g(`div`,{class:`${Xi}-header-actions`,children:[ee?h(`button`,{type:`button`,class:`${Xi}-icon-btn`,onClick:u,"aria-label":_.history,title:_.history,"data-testid":G.actionHistory,children:h(Tr,{})}):null,k.length>0?h(Yi,{items:k,triggerLabel:_.moreActions}):null,A?h(`button`,{type:`button`,class:`${Xi}-icon-btn`,onClick:a,"aria-label":_.close,title:_.close,"data-testid":G.actionClose,children:h(ar,{})}):null]})}const na=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,ra=/^https?:\/\/[^\s.]+\.[^\s]+$/i,ia=/^[+]?[\d\s().-]{6,}$/;function aa(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>String(t[n]??`{${n}}`))}function oa(e){return Array.isArray(e)?e.length:e&&e.trim()?1:0}function sa(e,t,n){let r=e.required??!0,i=e.validation;if(e.type===`multiselect`){let e=oa(t);return r&&e===0?n.formRequired:e===0?void 0:i?.minSelections!=null&&e<i.minSelections?aa(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&e>i.maxSelections?aa(n.formChooseAtMost,{max:i.maxSelections}):void 0}let a=typeof t==`string`?t.trim():``;if(!a)return r?n.formRequired:void 0;switch(e.type){case`email`:if(!na.test(a))return n.formInvalidEmail;break;case`url`:if(!ra.test(a))return n.formInvalidUrl;break;case`tel`:if(!ia.test(a))return n.formInvalidTel;break;case`number`:{let e=Number(a);if(!Number.isFinite(e))return n.formInvalidNumber;if(i?.min!=null&&e<i.min)return aa(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&e>i.max)return aa(n.formNumberTooLarge,{max:i.max});break}default:break}if(i?.minLength!=null&&a.length<i.minLength)return aa(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return aa(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function ca(e,t,n){let r={};for(let i of e){let e=sa(i,t[i.name],n);e&&(r[i.name]=e)}return r}function la(e){let t={};for(let[n,r]of Object.entries(e)){let e=Array.isArray(r)?r.join(`, `):r;e&&e.trim()&&(t[n]=e.trim())}return t}const q=y.cssPrefix,ua=`__other__`;function da({fields:e,strings:t,submitLabel:n,onSubmit:r,skipLabel:i,onSkip:a,footerHint:o,submitOnEnter:s,disabled:l,initialValues:u,hideActions:d,fieldTypeLabels:f,rootTestId:p,submitTestId:m,skipTestId:_}){let[v,y]=c(()=>({...ha(e),...u})),[b,x]=c({}),[S,C]=c({}),w=e=>{S[e]&&C(t=>({...t,[e]:``}))},T=(e,t)=>{y(n=>({...n,[e]:t})),w(e)},E=(e,t)=>{x(n=>({...n,[e]:t})),w(e)},D=n=>{if(n.preventDefault(),l)return;let i=ga(e,v,b),a=ca(e,i,t);if(Object.keys(a).length>0){C(a);return}r(la(i))};return g(`form`,{class:`${q}-form`,onSubmit:D,onKeyDown:e=>{!s||e.key!==`Enter`||e.shiftKey||e.isComposing||e.target?.tagName===`TEXTAREA`&&D(e)},"data-testid":p,noValidate:!0,children:[e.map(e=>h(fa,{field:e,value:v[e.name],otherText:b[e.name]??``,error:S[e.name],disabled:l,typeLabel:f?.[e.name],strings:t,onChange:t=>T(e.name,t),onOtherChange:t=>E(e.name,t)},e.name)),d?null:g(`div`,{class:`${q}-form-actions`,children:[o?h(`span`,{class:`${q}-form-hint`,children:o}):null,i&&a?h(`button`,{type:`button`,class:`${q}-form-skip`,onClick:a,disabled:l,"data-testid":_,children:i}):null,h(`button`,{type:`submit`,class:`${q}-form-submit`,disabled:l,"data-testid":m,children:n})]})]})}function fa({field:e,value:t,otherText:n,error:r,disabled:i,typeLabel:a,strings:o,onChange:s,onOtherChange:c}){let l=pa({field:e,value:t,otherText:n,disabled:i,strings:o,onChange:s,onOtherChange:c,fieldTid:ii(G.formField,e.name)});return g(`label`,{class:`${q}-field`,"data-field":e.name,"data-invalid":r?`true`:void 0,children:[g(`span`,{class:`${q}-field-head`,children:[g(`span`,{class:`${q}-field-label`,children:[e.label,e.required??!0?h(`span`,{class:`${q}-field-req`,"aria-hidden":`true`,children:` *`}):null]}),a?h(`span`,{class:`${q}-field-type`,children:a}):null]}),l,e.validationHint&&!r?h(`span`,{class:`${q}-field-hint`,children:e.validationHint}):null,r?h(`span`,{class:`${q}-field-error`,role:`alert`,children:r}):null]})}function pa(e){let{field:t,value:n,otherText:r,disabled:i,strings:a,onChange:o,onOtherChange:s,fieldTid:c}=e,l=typeof n==`string`?n:``;switch(t.type){case`textarea`:return h(`textarea`,{class:`${q}-field-input`,rows:3,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.target.value),"data-testid":c});case`select`:return g(`select`,{class:`${q}-field-input`,value:l,disabled:i,onChange:e=>o(e.target.value),"data-testid":c,children:[h(`option`,{value:``,children:t.placeholder??`—`}),(t.options??[]).map(e=>h(`option`,{value:e.value,children:e.label??e.value},e.value))]});case`radio`:{let e=t.allowOther&&l===ua;return g(`div`,{class:`${q}-field-choices`,role:`radiogroup`,"data-testid":c,children:[(t.options??[]).map(e=>g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`radio`,name:`${q}-${t.name}`,checked:l===e.value,disabled:i,onChange:()=>o(e.value)}),h(`span`,{children:e.label??e.value})]},e.value)),t.allowOther?g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`radio`,name:`${q}-${t.name}`,checked:l===ua,disabled:i,onChange:()=>o(ua)}),h(`span`,{children:a.formOther})]}):null,e?h(`input`,{class:`${q}-field-input`,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.target.value)}):null]})}case`checkbox`:return g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`checkbox`,checked:l===`true`,disabled:i,onChange:e=>o(e.target.checked?`true`:``),"data-testid":c}),h(`span`,{children:t.placeholder??t.label})]});case`multiselect`:{let e=Array.isArray(n)?n:[],l=(t,n)=>o(n?[...e,t]:e.filter(e=>e!==t));return g(`div`,{class:`${q}-field-choices`,"data-testid":c,children:[(t.options??[]).map(t=>g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`checkbox`,checked:e.includes(t.value),disabled:i,onChange:e=>l(t.value,e.target.checked)}),h(`span`,{children:t.label??t.value})]},t.value)),t.allowOther||(t.options??[]).length===0?h(`textarea`,{class:`${q}-field-input`,rows:2,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.target.value)}):null]})}default:return h(`input`,{class:`${q}-field-input`,type:ma(t.type),value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.target.value),"data-testid":c})}}function ma(e){switch(e){case`number`:case`email`:case`tel`:case`url`:case`date`:case`time`:return e;default:return`text`}}function ha(e){let t={};for(let n of e)n.defaultValue!=null&&(t[n.name]=n.type===`multiselect`?n.defaultValue.split(`,`).map(e=>e.trim()).filter(Boolean):n.defaultValue);return t}function ga(e,t,n){let r={...t};for(let i of e){let e=n[i.name]?.trim();if(i.type===`radio`&&i.allowOther&&t[i.name]===ua)r[i.name]=e??``;else if(i.type===`multiselect`&&e){let n=e.split(/[,\n;]+/).map(e=>e.trim()).filter(Boolean),a=Array.isArray(t[i.name])?t[i.name]:[];r[i.name]=[...a,...n]}}return r}const _a=y.cssPrefix;function va({form:e,strings:t,onSubmit:n,onSkip:r}){return g(`div`,{class:`${_a}-form-gate`,"data-testid":G.formGate,children:[e.title?h(`h3`,{class:`${_a}-form-gate-title`,children:e.title}):null,e.description?h(`p`,{class:`${_a}-form-gate-desc`,children:e.description}):null,h(da,{fields:e.fields,strings:t,submitLabel:e.submitLabel??t.formSubmit,onSubmit:n,skipLabel:e.skippable?t.formSkip:void 0,onSkip:e.skippable?r:void 0,submitTestId:G.formSubmit,skipTestId:G.formSkip})]})}function ya({marker:e,strings:t,onFill:n}){let r=e.outcome===`skipped`,i=r?t.formSkipped:t.formSubmitted,a=e.title?g(m,{children:[h(`span`,{children:e.title}),h(`span`,{class:`${_a}-sr-only`,children:i})]}):h(`span`,{children:i}),o=e.form?.reviewable??!1,s=!r&&o&&e.values&&Object.keys(e.values).length>0?e.values:null;if(s){let t=t=>e.form?.fields.find(e=>e.name===t)?.label??t;return g(`details`,{class:`${_a}-form-done`,"data-outcome":e.outcome,"data-testid":G.formDone,children:[g(`summary`,{class:`${_a}-form-done-summary`,"data-testid":G.formDoneToggle,children:[h(wr,{}),a,h(ur,{})]}),h(`dl`,{class:`${_a}-form-answers`,"data-testid":G.formAnswers,children:Object.entries(s).map(([e,n])=>g(`div`,{class:`${_a}-form-answer`,children:[h(`dt`,{children:t(e)}),h(`dd`,{children:n})]},e))})]})}return g(`div`,{class:`${_a}-form-done`,"data-outcome":e.outcome,"data-testid":G.formDone,role:`status`,children:[h(r?Cr:wr,{}),a,r&&e.form?.reopenable&&n?h(`button`,{type:`button`,class:`${_a}-form-done-fill`,"data-testid":G.formFill,onClick:n,children:t.formFillOut}):null]})}function ba(e){if(!e)return!1;let t=e.startsWith(`tool:`)?e.slice(5):e;return t===`ask-user-questions`||t===`ask_user_questions`}function xa({textSig:e,doneSig:t}){let n=s(null);return a(()=>{let r=n.current;if(!r)return;r.classList.add(`${y.cssPrefix}-md`);let i=v.default_renderer(r),a=v.parser(i),o=0,s=u(()=>{let n=e.value,s=t.value;n.length<o&&(r.replaceChildren(),i=v.default_renderer(r),a=v.parser(i),o=0);let c=n.slice(o);c&&v.parser_write(a,c),o=n.length,s&&v.parser_end(a)}),c=new MutationObserver(e=>{for(let t of e)for(let e of t.addedNodes){if(!(e instanceof HTMLElement))continue;let t=e.matches?.(`a`)?[e]:[...e.querySelectorAll?.(`a`)??[]];for(let e of t)Ca(e)}});c.observe(r,{childList:!0,subtree:!0});for(let e of r.querySelectorAll(`a`))Ca(e);let l=e=>{let t=e.target?.closest?.(`a`);if(!t||!(t instanceof HTMLAnchorElement))return;let n=t.getAttribute(`href`)??``;!n||n.startsWith(`#`)||(e.preventDefault(),window.open(n,`_blank`,`noopener,noreferrer`))};return r.addEventListener(`click`,l),()=>{s(),c.disconnect(),r.removeEventListener(`click`,l)}},[e,t]),h(`div`,{ref:n})}function Sa({text:e}){return h(xa,{textSig:o(()=>d(e),[e]),doneSig:o(()=>d(!0),[])})}function Ca(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(` `)}const wa=y.cssPrefix;function Ta({messageId:e,initial:t,strings:n,onFeedback:r}){let[i,a]=c(t),o=t=>{let n=i===t?null:t;a(n),r(e,n)};return g(`div`,{class:`${wa}-feedback`,role:`group`,"data-testid":G.messageFeedback,children:[h(`button`,{type:`button`,class:`${wa}-msg-action`,"data-active":i===`up`?`true`:void 0,"aria-pressed":i===`up`,"aria-label":n.feedbackUp,title:n.feedbackUp,onClick:()=>o(`up`),"data-testid":G.feedbackUp,children:h(Zr,{})}),h(`button`,{type:`button`,class:`${wa}-msg-action`,"data-active":i===`down`?`true`:void 0,"aria-pressed":i===`down`,"aria-label":n.feedbackDown,title:n.feedbackDown,onClick:()=>o(`down`),"data-testid":G.feedbackDown,children:h(Qr,{})}),h(`span`,{class:`${wa}-sr-only`,role:`status`,"aria-live":`polite`,children:i?n.feedbackThanks:``})]})}const Ea=y.cssPrefix;function Da({part:e,strings:t}){let n=e.title||e.filename||e.url||t.sources;return e.url?g(`a`,{class:`${Ea}-source`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,"data-testid":G.source,children:[h(`span`,{class:`${Ea}-source-icon`,"aria-hidden":`true`,children:`🔗`}),h(`span`,{class:`${Ea}-source-label`,children:n})]}):g(`span`,{class:`${Ea}-source`,"data-testid":G.source,children:[h(`span`,{class:`${Ea}-source-icon`,"aria-hidden":`true`,children:`📄`}),h(`span`,{class:`${Ea}-source-label`,children:n})]})}const Oa=y.cssPrefix;function ka(e){return e.startsWith(`tool:`)||e.startsWith(`tool-`)?e.slice(5):e}function Aa(e,t){let n=e===`output-available`||e===`output-error`||e===`output-denied`,r=e===`approval-responded`||t?.approved!==void 0;return{terminal:n,responded:r,decided:n||r}}function ja({status:e,icon:t,label:n}){return g(`span`,{class:`${Oa}-toolui-badge ${Oa}-toolui-status`,"data-status":e,children:[h(`span`,{class:`${Oa}-toolui-status-icon`,children:t}),n]})}function Ma(e,t){return e===`output-error`?`error`:e===`output-denied`||t?.approved===!1?`denied`:e===`output-available`?`completed`:e===`approval-responded`||t?.approved===!0?`responded`:e===`approval-requested`?`awaiting`:`running`}function Na({status:e}){return h(e===`denied`||e===`error`||e===`superseded`?ni:e===`completed`||e===`responded`?ti:ei,{})}function Pa(e,t){switch(e){case`awaiting`:return t.statusAwaiting;case`responded`:return t.statusResponded;case`completed`:return t.statusCompleted;case`denied`:return t.statusDenied;case`error`:return t.statusError;case`superseded`:return t.statusSuperseded;default:return t.statusRunning}}function Fa(e,t,n){return t&&(e===`awaiting`||e===`running`)?`superseded`:!n&&e===`running`?`error`:e}function Ia({state:e,approval:t,strings:n,superseded:r,live:i=!0}){let a=Fa(Ma(e,t),r,i);return h(ja,{status:a,icon:h(Na,{status:a}),label:Pa(a,n)})}function La({name:e,state:t,approval:n,strings:r,superseded:i,live:a}){return g(m,{children:[g(`span`,{class:`${Oa}-toolui-name-pill`,children:[h($r,{}),h(`span`,{class:`${Oa}-toolui-name-text`,children:e})]}),h(Ia,{state:t,approval:n,strings:r,superseded:i,live:a}),h(`span`,{class:`${Oa}-toolui-chevron`,children:h(kr,{})})]})}function Ra({part:e,strings:t,testid:n,superseded:r,live:i}){let a=f(()=>e.inputSig.value),o=f(()=>e.outputSig.value),s=f(()=>e.errorSig.value),c=f(()=>e.stateSig.value),l=f(()=>e.approvalSig.value);return g(`details`,{class:`${Oa}-toolui ${Oa}-toolui-collapsible`,"data-testid":n,children:[h(`summary`,{class:`${Oa}-toolui-head`,children:h(La,{name:ka(e.toolName),state:c.value,approval:l.value,strings:t,superseded:r,live:i})}),h(za,{label:t.toolParameters,value:a.value}),o.value===void 0?null:h(za,{label:t.toolResult,value:o.value}),s.value?h(za,{label:t.statusError,value:s.value,error:!0}):null]})}function za({label:e,value:t,error:n}){let r=n?String(t??``):Va(Ba(t));return r?g(`div`,{class:`${Oa}-toolui-section`,children:[h(`span`,{class:`${Oa}-toolui-label`,children:e}),h(`pre`,{class:`${Oa}-toolui-code`,"data-error":n?`true`:void 0,children:r})]}):null}function Ba(e){if(e&&typeof e==`object`){let t=e;if(t.storage===`tool-result-ref`&&`summary`in t)return t.summary}return e}function Va(e){if(e==null)return``;try{let t=typeof e==`string`?e:JSON.stringify(e,null,2);return!t||t===`{}`||t===`[]`||t===`""`?``:t.length>800?`${t.slice(0,800)}…`:t}catch{return``}}const J=y.cssPrefix;function Ha({part:e,strings:t,active:n,superseded:r=!1,onDecision:i,onEdit:a}){let o=f(()=>e.approvalSig.value),s=f(()=>e.stateSig.value),c=ka(e.toolName),l=o.value?.approved,{terminal:u,responded:d,decided:p}=Aa(s.value,o.value),_=d&&n&&!u,v=r&&!p,y=e.toolCallId;return g(`div`,{class:`${J}-toolui-group`,"data-testid":p?G.toolDecision:G.toolApproval,children:[h(Ra,{part:e,strings:t,superseded:v}),v||u?null:g(`div`,{class:`${J}-toolui ${J}-toolui-body`,children:[d?g(m,{children:[g(`p`,{class:`${J}-toolui-prompt`,children:[t.approvalYourResponse.replace(`{decision}`,l?t.approve:t.reject),o.value?.reason?` — ${o.value.reason}`:``]}),_?h(`p`,{class:`${J}-toolui-subtle`,children:t.approvalEditHint}):null,!_&&!u?h(`p`,{class:`${J}-toolui-subtle`,children:t.approvalSubmitting}):null]}):g(m,{children:[h(`p`,{class:`${J}-toolui-prompt`,children:t.approvalPrompt.replace(`{tool}`,c)}),h(`p`,{class:`${J}-toolui-subtle`,children:t.approvalBody})]}),!p&&!r?g(`div`,{class:`${J}-toolui-actions`,children:[h(`button`,{type:`button`,class:`${J}-form-skip`,onClick:()=>i(y,!1),"data-testid":G.toolReject,children:t.reject}),h(`button`,{type:`button`,class:`${J}-form-submit`,onClick:()=>i(y,!0),"data-testid":G.toolApprove,children:t.approve})]}):null,_?h(`div`,{class:`${J}-toolui-actions`,children:h(`button`,{type:`button`,class:`${J}-form-skip`,onClick:()=>a(y),"data-testid":G.toolEdit,children:t.edit})}):null]})]})}const Ua=new Set([`text`,`email`,`phone`,`number`,`date`,`single-select`,`multi-select`,`boolean`]);function Wa(e){let t=e&&typeof e==`object`?e:{},n=(Array.isArray(t.questions)?t.questions:[]).map(Ga).filter(e=>e!==null);return{intro:Ja(t.intro),questions:n}}function Ga(e,t){if(!e||typeof e!=`object`)return null;let n=e,r=Ua.has(n.type)?n.type:`text`;return{key:Ja(n.key)??`q${t+1}`,question:Ja(n.question)??`Please provide the missing information.`,type:r,options:Array.isArray(n.options)?n.options.filter(e=>typeof e==`string`&&e.trim().length>0):void 0,required:typeof n.required==`boolean`?n.required:void 0,helpText:Ja(n.helpText)}}function Ka(e){switch(e){case`text`:return`textarea`;case`phone`:return`tel`;case`single-select`:case`boolean`:return`radio`;case`multi-select`:return`multiselect`;default:return e}}function qa(e,t,n){return e.questions.map(e=>{let r=Ka(e.type),i=e.type===`boolean`?[{value:`yes`,label:t},{value:`no`,label:n}]:(e.options??[]).map(e=>({value:e,label:e}));return{name:e.key,label:e.question,type:r,required:e.required??!1,options:i.length>0?i:void 0,validationHint:e.helpText}})}function Ja(e){return typeof e==`string`&&e.trim()?e.trim():void 0}const Y=y.cssPrefix,Ya={text:`qtypeText`,email:`qtypeEmail`,phone:`qtypePhone`,number:`qtypeNumber`,date:`qtypeDate`,"single-select":`qtypeChooseOne`,"multi-select":`qtypeChooseAny`,boolean:`qtypeBoolean`};function Xa(e,t){let n={};for(let r of e)n[r.key]=t[Ya[r.type]];return n}function Za({part:e,strings:t,active:n,superseded:r=!1,onDecision:i,onEdit:a}){let o=f(()=>e.stateSig.value).value,s=f(()=>e.approvalSig.value).value,l=f(()=>Wa(e.inputSig.value)).value,{terminal:u,decided:d}=Aa(o,s),p=d&&s?.approved===!0,m=!d&&!r,_=!m&&!p,v=p&&n&&!u,y=l.questions,[b,x]=c(null),S=b??(m||p),[C,w]=c(!1),T=y.length>1?ir:Nr,E=m?t.inputRequired:t.inputBadge,D=m?h(Qa,{req:l,strings:t,active:n,resolve:(t,n)=>i(e.toolCallId,n,t)}):C?h(da,{fields:qa(l,t.confirmYes,t.confirmNo),strings:t,submitLabel:t.inputSubmit,onSubmit:()=>{},disabled:!0,hideActions:!0,fieldTypeLabels:Xa(y,t),initialValues:p?io(y,s?.reason):void 0}):h($a,{questions:y,answers:p?ro(s?.reason):{},strings:t});return g(`details`,{class:`${Y}-toolui ${Y}-toolui-collapsible${r?` ${Y}-toolui-stale`:``}`,open:S,onToggle:e=>{let t=e.currentTarget.open;t!==S&&x(t)},"data-testid":m?G.toolAskQuestions:G.toolDecision,children:[g(`summary`,{class:`${Y}-toolui-head`,children:[g(`span`,{class:`${Y}-toolui-q-pill`,children:[h(T,{}),E]}),g(`span`,{class:`${Y}-toolui-head-end`,children:[m?null:h(ja,{status:_?`superseded`:`completed`,icon:h(_?ni:ti,{}),label:_?t.inputSkipped:t.inputAnswered}),h(`span`,{class:`${Y}-toolui-chevron`,children:h(kr,{})})]})]}),g(`div`,{class:`${Y}-toolui-collapse-body`,children:[l.intro?h(`div`,{class:`${Y}-toolui-desc`,children:l.intro}):null,D,m?null:g(`div`,{class:`${Y}-toolui-footer`,children:[g(`button`,{type:`button`,class:`${Y}-toolui-options-toggle`,onClick:()=>w(e=>!e),"data-testid":G.toolAskOptions,children:[h(`span`,{class:`${Y}-toolui-options-chevron${C?` ${Y}-open`:``}`,children:h(kr,{})}),C?t.hideOptions:t.showOptions]}),v?h(`button`,{type:`button`,class:`${Y}-form-skip`,onClick:()=>a(e.toolCallId),"data-testid":G.toolEdit,children:t.edit}):null]})]})]})}function Qa({req:e,strings:t,active:n,resolve:r}){let i=qa(e,t.confirmYes,t.confirmNo),a=e.questions.length===1&&e.questions[0]?.type===`text`;return h(da,{fields:i,strings:t,disabled:!n,submitLabel:t.inputSubmit,footerHint:a?t.inputSubmitHint:void 0,onSubmit:t=>r(to(e.questions,t),!0),skipLabel:t.inputSkip,onSkip:()=>r(void 0,!1),submitOnEnter:a,fieldTypeLabels:Xa(e.questions,t),submitTestId:G.toolInputSubmit,skipTestId:G.toolInputSkip})}function $a({questions:e,answers:t,strings:n}){return h(`div`,{class:`${Y}-toolui-summary`,"data-testid":G.toolAskSummary,children:e.map(e=>g(`div`,{class:`${Y}-field`,children:[h(`span`,{class:`${Y}-field-head`,children:g(`span`,{class:`${Y}-field-label`,children:[e.question,e.required?h(`span`,{class:`${Y}-field-req`,"aria-hidden":`true`,children:` *`}):null]})}),h(`p`,{class:`${Y}-toolui-answer`,children:eo(e,t[e.key],n)||`—`})]},e.key))})}function eo(e,t,n){return e.type===`boolean`?t===`yes`?n.confirmYes:t===`no`?n.confirmNo:t??``:t??``}function to(e,t){let n=e.flatMap(e=>{let n=t[e.key];if(n==null||n.trim()===``)return[];let r=e.type===`multi-select`?n.split(`,`).map(e=>e.trim()).filter(Boolean):n;return[{key:e.key,value:r}]});return JSON.stringify({answers:n})}function no(e){if(!e)return{};let t=(()=>{try{return JSON.parse(e)}catch{return}})()?.answers;if(!Array.isArray(t))return{};let n={};for(let e of t)if(e&&typeof e==`object`&&`key`in e){let{key:t,value:r}=e;if(typeof t!=`string`)continue;typeof r==`string`?n[t]=r:Array.isArray(r)&&(n[t]=r.filter(e=>typeof e==`string`))}return n}function ro(e){let t=no(e),n={};for(let[e,r]of Object.entries(t))n[e]=Array.isArray(r)?r.join(`, `):r;return n}function io(e,t){let n=no(t),r={};for(let t of e){let e=n[t.key];e!==void 0&&(t.type===`multi-select`?r[t.key]=Array.isArray(e)?e:[e]:r[t.key]=Array.isArray(e)?e[0]??``:e)}return r}function ao({part:e,strings:t,live:n}){let r=f(()=>e.inputSig.value),i=f(()=>e.outputSig.value),a=f(()=>e.errorSig.value);return f(()=>!!Va(r.value)||!!a.value||!!Va(Ba(i.value))).value?h(Ra,{part:e,strings:t,testid:G.toolCall,live:n}):null}const X=y.cssPrefix,oo=_(so);function so({message:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,interactive:o=!1,superseded:s=!1,tool:c,onRetry:l,enableMessageFeedback:u=!1,onFeedback:d}){let p=f(()=>e.partsSig.value).value,m=f(()=>Bn(e)),_=f(()=>Vn(e)),v=f(()=>e.partsSig.value.some(e=>e.kind===`text`&&e.textSig.value.length>0)),y=f(()=>r&&e.partsSig.value.some(e=>e.kind===`reasoning`)),b=e.role===`assistant`&&e.status===`streaming`,x=n===`buffered`&&b,S=b&&!v.value,C=b&&!x&&!(y.value&&S);if(_.value)return null;let w=lo(e.createdAt),T=e.role===`assistant`||e.role===`operator`,E=u&&!!d&&!!e.serverMessageId&&T&&!b&&e.status!==`error`&&!m.value,D=p.filter(e=>e.kind===`text`).map(e=>e.textSig.value).join(`
10
+ `))if(!(r===``||r.startsWith(`:`))){if(r.startsWith(`data:`)){let e=r.slice(5).replace(/^ /,``);t=t?`${t}\n${e}`:e;continue}r.startsWith(`id:`)&&(n=r.slice(3).trim())}if(t===`[DONE]`)return`done`;if(!t)return null;try{let e=JSON.parse(t);return Wt.trace(`chunk`,{type:e.type,eventId:n}),{chunk:e,eventId:n}}catch(e){return Wt.trace(`frame parse failed`,{err:e,payload:t.slice(0,200)}),null}}function Jt(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return btoa(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}const Yt=e=>e&&Object.keys(e).length>0?e:void 0;function Xt(e,t){let n=Yt(e),r=Yt(t);if(!n&&!r)return;let i={};return n&&(i.user=n),r&&(i.page=r),Jt(JSON.stringify(i))}function Zt(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function Qt(e){return`tool-${e.startsWith(`tool:`)?e.slice(5):e}`}function $t(e){return e.startsWith(`tool-`)?e.slice(5):e}const B={handshake:`/pai/handshake`,streamMessage:`/pai/stream-message`,streamResume:`/pai/stream-resume`,cancelStream:`/pai/cancel-stream`,listConversations:`/pai/list-conversations`,listMessages:`/pai/list-messages`,updateSettings:`/pai/update-settings`,markRead:`/pai/mark-read`,messageFeedback:`/pai/message-feedback`,requestOperator:`/pai/request-operator`,cancelRequestOperator:`/pai/cancel-request-operator`,bootstrap:`/pai/bootstrap`,content:`/pai/content`,submitForm:`/pai/submit-form`};function en(e){let t=e??{},n=t.controlMode;return{controlMode:n===`awaiting_operator`||n===`operator`?n:`ai-agent`,assignedOperatorInitials:typeof t.assignedOperatorInitials==`string`&&t.assignedOperatorInitials?t.assignedOperatorInitials:void 0,operatorAvailable:typeof t.operatorAvailable==`boolean`?t.operatorAvailable:void 0}}function tn(e){let t=e?.suggestions;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let{id:t,label:r,text:i}=e;typeof r!=`string`||!r||n.push({id:typeof t==`string`&&t?t:`s${n.length}`,label:r,text:typeof i==`string`&&i?i:r})}return n}function nn(e){let t=e.messages.map(e=>({id:e.serverMessageId??e.id,parts:on(e),role:e.role,createdAt:e.createdAt===void 0?void 0:new Date(e.createdAt).toISOString()})),n={messages:t,conversationId:e.conversationId,trigger:e.trigger??`submit-message`,responseType:`ack`},r=t.at(-1)?.id;r&&(n.messageId=r),e.visitorId&&(n.visitorId=e.visitorId),e.userPrefs&&(n.userPrefs=e.userPrefs);let i=e.tools?.map(an).filter(e=>e!==null);return i?.length&&(n.data={tools:i}),n}function rn(e){return e.state===`output-available`||e.state===`output-error`||e.state===`output-denied`||e.approval?.approved!==void 0}function an(e){return typeof e==`string`?e?{code:e}:null:e?.code?e:null}function on(e){let t=[];for(let n of e.parts)if(n.kind===`step-start`&&t.push({type:`step-start`}),n.kind===`reasoning`&&n.text&&t.push({type:`reasoning`,text:n.text,state:n.done?`done`:`streaming`}),n.kind===`text`&&n.text&&t.push({text:n.text,type:`text`}),n.kind===`file`&&n.url&&t.push({mediaType:n.mediaType,type:`file`,url:n.url}),n.kind===`tool`&&rn(n)){let e={type:Qt(n.toolName),toolCallId:n.toolCallId,state:n.state};n.input!==void 0&&(e.input=n.input),n.output!==void 0&&(e.output=n.output),n.error!==void 0&&(e.errorText=n.error),n.approval&&n.approval.approved!==void 0&&(e.approval=n.approval),t.push(e)}for(let n of e.attachments??[])n.url&&t.push({type:`file`,url:n.url,mediaType:n.mediaType,filename:n.name,fileId:n.id,fileSize:n.size});return t}const V=M.scope(`transport`),sn=new Set([408,425,429,500,502,503,504]);function H(e){return 400*2**e+Math.floor(Math.random()*250)}function cn(e){let t=e.get(`retry-after`);if(!t)return null;let n=Number(t),r=Number.isFinite(n)?n*1e3:Date.parse(t)-Date.now();return Number.isFinite(r)&&r>=0?Math.min(r,3e4):null}var ln=class{constructor(e){this.ttlMs=e,z(this,`map`,new Map)}getOrFetch(e,t){let n=this.map.get(e);if(n&&Date.now()-n.at<this.ttlMs)return n.result;let r={at:Date.now(),result:t().then(e=>(r.value=e,e)).catch(t=>{throw this.map.delete(e),t})};return this.map.set(e,r),r.result}peek(e){let t=this.map.get(e);if(t?.value!==void 0&&Date.now()-t.at<this.ttlMs)return t.value}clear(){this.map.clear()}},un=class{constructor(e){this.opts=e,z(this,`visitorId`,void 0),z(this,`conversationId`,void 0),z(this,`userContext`,void 0),z(this,`pageContext`,void 0),z(this,`locale`,void 0),z(this,`conversationsCache`,new ln(1e4)),z(this,`loadConversationInflight`,new Map),z(this,`contentCache`,new ln(6e4))}setContext(e,t){this.userContext=e,this.pageContext=t}setLocale(e){this.locale=e}primeIdentity(e,t){e&&(this.visitorId=e),t&&(this.conversationId=t)}envelope(){let e={_ev:Bt};this.visitorId&&(e.visitorId=this.visitorId),this.conversationId&&(e.conversationId=this.conversationId),this.locale&&(e.locale=this.locale);let t=Xt(this.userContext,this.pageContext);return t&&(e.context=t),e}withEnvelope(e){return{...this.envelope(),...e}}appendEnvelope(e){for(let[t,n]of Object.entries(this.envelope()))e.append(t,n);return e}withEnvelopeQuery(e){let t=new URL(this.url(e));for(let[e,n]of Object.entries(this.envelope()))t.searchParams.has(e)||t.searchParams.set(e,n);return t.toString()}async handshake(e){V.debug(`handshake →`,{visitorId:e.visitorId,conversationId:e.conversationId,locale:e.locale});let t=await this.postJson(B.handshake,e,`handshake`);return V.debug(`handshake ←`,{visitorId:t.visitorId,conversationId:t.conversationId,hasWelcome:!!t.welcome,hasConfig:!!t.config,rebind:t.rebind}),fn(t)||V.warn(`handshake response did not match expected shape; using raw response`,{response:t}),this.visitorId=t.visitorId??e.visitorId,this.conversationId=t.conversationId,t}async uploadFile(e){V.debug(`uploadFile →`,{name:e.name,size:e.size,type:e.type});let t=new FormData;t.append(`file`,e,e.name);let n=await this.postForm(this.uploadPath,t,`upload`);return V.debug(`uploadFile ←`,{id:n.id,url:n.url}),n}async transcribe(e,t=`audio/webm`){V.debug(`transcribe →`,{size:e.size,mimeType:t});let n=new FormData;n.append(`audio`,e,`voice.${dn(t)}`),n.append(`mimeType`,t);let r=await this.postForm(this.transcribePath,n,`transcribe`);return V.debug(`transcribe ←`,{textLen:r.text.length}),r}localeCacheKey(e){return`${this.locale??``}|${JSON.stringify(e,Object.keys(e).toSorted())}`}peekConversations(e={}){return this.conversationsCache.peek(this.localeCacheKey(e))}listConversations(e={}){return this.conversationsCache.getOrFetch(this.localeCacheKey(e),()=>this.fetchConversations(e))}async fetchConversations(e){let t=new URL(this.url(B.listConversations));e.visitorId&&t.searchParams.set(`visitorId`,e.visitorId),e.limit&&t.searchParams.set(`limit`,String(e.limit)),e.cursor&&t.searchParams.set(`cursor`,e.cursor),V.debug(`listConversations →`,{visitorId:e.visitorId??this.visitorId,limit:e.limit,cursor:e.cursor});let n=await this.getJson(t.toString(),`listConversations`),r=n.conversations??[];return V.debug(`listConversations ←`,{count:r.length,nextCursor:n.nextCursor}),{conversations:r,nextCursor:n.nextCursor}}async loadConversation(e){let t=this.loadConversationInflight.get(e);if(t)return t;let n=this.loadConversationDirect(e).finally(()=>this.loadConversationInflight.delete(e));return this.loadConversationInflight.set(e,n),n}async loadConversationDirect(e){let t=new URL(this.url(B.listMessages));t.searchParams.set(`conversationId`,e),V.debug(`loadConversation →`,{conversationId:e,visitorId:this.visitorId});let n=await this.getJson(t.toString(),`loadConversation`),r=n.messages??[];return V.debug(`loadConversation ←`,{conversationId:n.conversationId,canContinue:n.canContinue,messageCount:r.length,hasSuggestions:!!n.suggestions}),{...n,messages:r,canContinue:n.canContinue??!0}}async markRead(e){if(!(!this.visitorId||!e)){this.conversationsCache.clear(),V.debug(`markRead →`,{conversationId:e,visitorId:this.visitorId});try{await this.postJson(B.markRead,{conversationId:e},`markRead`)}catch(e){V.debug(`markRead failed (non-fatal)`,{err:e})}}}async requestOperator(){if(!(!this.visitorId||!this.conversationId)){V.debug(`requestOperator →`,{conversationId:this.conversationId,visitorId:this.visitorId});try{return(await this.postJson(B.requestOperator,{},`requestOperator`)).controlState}catch(e){V.debug(`requestOperator failed (non-fatal)`,{err:e});return}}}async cancelRequestOperator(){if(!(!this.visitorId||!this.conversationId)){V.debug(`cancelRequestOperator →`,{conversationId:this.conversationId,visitorId:this.visitorId});try{return(await this.postJson(B.cancelRequestOperator,{},`cancelRequestOperator`)).controlState}catch(e){V.debug(`cancelRequestOperator failed (non-fatal)`,{err:e});return}}}listContent(e={}){return this.contentCache.getOrFetch(this.localeCacheKey(e),()=>this.fetchContent(e))}async fetchContent(e){let t=new URL(this.dataUrl(B.content));for(let[n,r]of Object.entries(e))r!==void 0&&t.searchParams.set(n,Array.isArray(r)?r.join(`,`):String(r));V.debug(`listContent →`,e);let n=await this.getJson(t.toString(),`listContent`),r=(n.items??[]).map(e=>k(e,this.locale));return V.debug(`listContent ←`,{count:r.length,total:n.pagination?.total}),{...n,items:r}}async bootstrap(e){let t=new URL(this.dataUrl(B.bootstrap));e&&t.searchParams.set(`conversationId`,e),V.debug(`bootstrap →`,{conversationId:e??this.conversationId});let n=await this.getJson(t.toString(),`bootstrap`),r=n.forms??[],i=n.formSubmissions??[];return V.debug(`bootstrap ←`,{forms:r.length,formSubmissions:i.length}),{forms:r,formSubmissions:i}}async saveUserPrefs(e){V.debug(`saveUserPrefs →`,{visitorId:this.visitorId,conversationId:this.conversationId,settingsKeys:Object.keys(e)});let t=await this.postJson(B.updateSettings,{userPrefs:e},`saveUserPrefs`);return V.debug(`saveUserPrefs ←`,{success:t.success}),t}get uploadPath(){return this.opts.endpoints?.upload??`/pai/upload-file`}get transcribePath(){return this.opts.endpoints?.transcribe??`/pai/transcribe-audio`}get submitFormPath(){return this.opts.endpoints?.submitForm??B.submitForm}async submitForm(e){V.debug(`submitForm →`,{formId:e.formId,trigger:e.trigger,fields:Object.keys(e.values).length});try{await this.postJson(this.dataUrl(this.submitFormPath),e,`submitForm`)}catch(e){V.debug(`submitForm failed (non-fatal)`,{err:e})}}async submitFeedback(e){V.debug(`submitFeedback →`,{messageId:e.messageId,value:e.value});try{await this.postJson(B.messageFeedback,{messageId:e.messageId,set:{feedback:e.value}},`submitFeedback`)}catch(e){V.debug(`submitFeedback failed (non-fatal)`,{err:e})}}async sendTurn(e){this.conversationsCache.clear(),V.debug(`message →`,{conversationId:e.conversationId,visitorId:e.visitorId,messageId:e.messageId,messageCount:e.messages.length,trigger:e.trigger,tools:e.data?.tools?.map(e=>e.code)});let t=await this.fetchImpl(this.url(B.streamMessage),{method:`POST`,credentials:`omit`,headers:{accept:`application/json`,"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(e))});return{status:`accepted`,conversationId:(await this.assertOk(t,`sendTurn`)).conversationId??e.conversationId}}cancelTurn(e){!this.visitorId||!e||(V.debug(`cancel stream`,{conversationId:e,visitorId:this.visitorId}),this.fetchImpl(this.url(B.cancelStream),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({})),keepalive:!0}).catch(e=>V.debug(`cancel POST failed (non-fatal)`,{err:e})))}async connectResumeStream(e){let t;try{t=await this.fetchImpl(this.resumeUrl(),{method:`GET`,credentials:`omit`,headers:{accept:`text/event-stream`,...this.opts.auth.headers()},signal:e.signal})}catch(t){return e.signal.aborted||V.debug(`resume-stream fetch failed — reconnecting`,{err:t}),`held`}if(!t.ok||!t.body)return V.debug(`resume-stream → endpoint unavailable`,{status:t.status}),`unavailable`;if(!(t.headers.get(`content-type`)??``).includes(`text/event-stream`))return V.debug(`resume-stream → non-SSE response; stopping`),`unavailable`;e.onConnected();try{for await(let{chunk:n}of Gt(t,e.signal)){if(e.signal.aborted)return`held`;e.onChunk(n)}}catch(t){if(e.signal.aborted)return`held`;V.debug(`resume-stream segment dropped — reconnecting`,{err:t})}return`held`}resumeUrl(){return this.withEnvelopeQuery(B.streamResume)}async postJson(e,t,n){let r=await this.fetchWithRetry(()=>[this.url(e),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(t))}],n);return this.assertOk(r,n)}async postForm(e,t,n){let r=await this.fetchImpl(this.url(e),{method:`POST`,credentials:`omit`,headers:this.opts.auth.headers(),body:this.appendEnvelope(t)});return this.assertOk(r,n)}async getJson(e,t){let n=await this.fetchWithRetry(()=>[this.withEnvelopeQuery(e),{method:`GET`,credentials:`omit`,headers:{accept:`application/json`,...this.opts.auth.headers()}}],t);return this.assertOk(n,t)}async fetchWithRetry(e,t){for(let n=0;;n++){let[r,i]=e(),a;try{a=await this.fetchImpl(r,i)}catch(e){if(n>=3)throw new Ut(`${t} failed: network error`,`network`,void 0,e);V.debug(`request network error — retrying`,{label:t,attempt:n}),await zt(H(n));continue}if(a.ok||!sn.has(a.status)||n>=3)return a;let o=cn(a.headers)??H(n);V.debug(`request retryable status — retrying`,{label:t,status:a.status,attempt:n,wait:o}),await zt(o)}}async assertOk(e,t){if(!e.ok)throw new Ut(`${t} failed: ${e.status}`,`server`,e.status);return await e.json()}url(e){return/^https?:\/\//i.test(e)?e:`${this.opts.agentApiBaseUrl}${e}`}dataUrl(e){return/^https?:\/\//i.test(e)?e:`${this.opts.dataApiBaseUrl}${e}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function dn(e){return e.includes(`webm`)?`webm`:e.includes(`ogg`)?`ogg`:e.includes(`mp4`)||e.includes(`m4a`)?`m4a`:e.includes(`mpeg`)?`mp3`:e.includes(`wav`)?`wav`:`bin`}function fn(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.visitorId==`string`&&typeof t.conversationId==`string`}function pn(e,t){let n=e?[{kind:`text`,id:`t0`,textSig:d(e),doneSig:d(!0)}]:[];return{id:ut(),role:`user`,createdAt:Date.now(),status:`complete`,attachments:t,partsSig:d(n)}}function mn(){return{id:ut(),role:`assistant`,createdAt:Date.now(),status:`streaming`,partsSig:d([])}}function hn(e){let t=ut();return gn({id:t,role:e.role,createdAt:Date.now(),status:`complete`,ephemeral:!0,parts:[{kind:`text`,id:`${t}-t0`,text:e.text,done:!0}]})}function gn(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,canceled:e.canceled,errorText:e.errorText,finishReason:e.finishReason,serverMessageId:e.serverMessageId,ephemeral:e.ephemeral,attachments:e.attachments,feedback:e.feedback,partsSig:d(e.parts.map(Un))}}const _n=new Set([`completed`,`failed`,`canceled`]);function vn(e){return e.status===`failed`?`error`:e.role===`assistant`&&e.status!=null&&!_n.has(e.status)?`streaming`:`complete`}function yn(e){let t=new Set,n=e.parts.map((t,n)=>t.type===`text`?{kind:`text`,id:`${e.id}-t${n}`,textSig:d(t.text),doneSig:d(!0)}:t.type===`reasoning`?{kind:`reasoning`,id:`${e.id}-r${n}`,textSig:d(t.text),doneSig:d(t.state!==`streaming`)}:t.type===`step-start`?{kind:`step-start`,id:`${e.id}-ss${n}`}:t.type===`file`?{kind:`file`,url:t.url,mediaType:t.mediaType}:t.type===`source-url`?{kind:`source`,sourceId:t.sourceId,url:t.url,title:t.title}:t.type===`source-document`?{kind:`source`,sourceId:t.sourceId,title:t.title,filename:t.filename,mediaType:t.mediaType}:t.type===`data-suggestions`?null:t.type.startsWith(`tool-`)?{kind:`tool`,toolCallId:t.toolCallId,toolName:$t(t.type),inputPartialSig:d(``),inputSig:d(t.input),outputSig:d(t.output),errorSig:d(t.errorText),stateSig:d(t.state),approvalSig:d(t.approval)}:null).filter(e=>e!==null).filter(e=>e.kind===`source`?t.has(e.sourceId)?!1:(t.add(e.sourceId),!0):!0),r=e.parts.find(e=>e.type===`data-suggestions`);return{id:e.id,role:e.role,operatorInitials:e.operatorInitials,suggestions:r?.type===`data-suggestions`?tn(r.data):void 0,serverMessageId:e.id,createdAt:Zt(e.createdAt)??Date.now(),status:vn(e),canceled:e.status===`canceled`,feedback:e.feedback??null,partsSig:d(n)}}function bn(e){return!e.parts.some(e=>e.type===`text`&&e.text.trim()!==``||e.type.startsWith(`tool-`)||e.type===`file`||e.type===`source-url`||e.type===`source-document`)}function xn(e){return e.role===`assistant`&&e.status!=null&&!_n.has(e.status)&&bn(e)}function Sn(e){let t=e.length-1;return e.filter((e,n)=>n===t||!xn(e)).map(yn)}function Cn(e,t){return(!t&&e.at(-1)?.role===`assistant`?e.slice(0,-1):e).filter(e=>!e.ephemeral)}function wn(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,canceled:e.canceled,errorText:e.errorText,finishReason:e.finishReason,serverMessageId:e.serverMessageId,ephemeral:e.ephemeral,attachments:e.attachments,parts:e.partsSig.value.map(Wn)}}function Tn(e){let t=``;for(let n of e.partsSig.value)n.kind===`text`&&(t+=n.textSig.value);return t}function En(e){return Tn(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`||e.kind===`source`)}function Dn(e){return Tn(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`)}function On(e){return e.status!==`streaming`&&En(e)}function kn(e){return e===`approval-responded`||e===`output-available`||e===`output-denied`||e===`output-error`}const An=e=>e.kind===`tool`,jn=e=>e.kind===`text`&&e.textSig.value.trim()!==``||e.kind===`file`||e.kind===`source`;function Mn(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);return t.slice(n+1).some(jn)}function Nn(e){if(e.role!==`assistant`)return!1;let t=e.partsSig.value.filter(An);return t.length>0&&t.every(e=>kn(e.stateSig.value))}function Pn(e){return e.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`)&&!Mn(e)}function Fn(e,t){return!e.partsSig.value.slice(t+1).some(e=>e.kind===`step-start`||jn(e))}function In(e){return e.partsSig.value.some(e=>An(e)&&!kn(e.stateSig.value))}function Ln(e){return Nn(e)&&!Mn(e)}function Rn(e,t){let n=t.filter(e=>!e.ephemeral&&(e.status===`streaming`||En(e))),r=new Map(n.filter(e=>e.serverMessageId!==void 0).map(e=>[e.serverMessageId,e])),i=new Set,a=e.map(e=>{let t=e.serverMessageId===void 0?void 0:r.get(e.serverMessageId);return t===void 0||(i.add(e.serverMessageId),t.role!==e.role)?e:t.status===`streaming`||Tn(t).length>=Tn(e).length?t:(e.id=t.id,e)}),o=n.filter(e=>e.serverMessageId===void 0||!i.has(e.serverMessageId));return[...a,...o]}function zn(e,t){let n=new Map(t.filter(e=>e.serverMessageId!==void 0).map(e=>[e.serverMessageId,e])),r=new Set(e.flatMap(e=>[e.serverMessageId,e.id].filter(e=>e!==void 0))),i=!1,a=e.map(e=>{if(e.serverMessageId===void 0)return e;let t=n.get(e.serverMessageId);if(t===void 0||t.role!==e.role)return e;let r=Tn(t).length,a=Tn(e).length,o=In(e)&&!In(t)&&r>=a;return r>a||o?(i=!0,t.id=e.id,t):e}),o=[...n.values()].filter(e=>!r.has(e.serverMessageId));return{messages:i||o.length?[...a,...o]:e,changed:i||o.length>0}}function Bn(e){return e.role===`assistant`&&e.status!==`streaming`&&!En(e)}function Vn(e){return e.canceled===!0&&e.role===`assistant`&&e.status!==`streaming`&&!Dn(e)}function Hn(e,t){return e.operatorRoutedTurn?Bn(e)?`drop`:`complete-operator-routed`:t||Bn(e)?`error`:`complete`}function Un(e){return e.kind===`text`||e.kind===`reasoning`?{kind:e.kind,id:e.id,textSig:d(e.text),doneSig:d(e.done)}:e.kind===`tool`?{kind:`tool`,toolCallId:e.toolCallId,toolName:e.toolName,inputPartialSig:d(e.inputPartial),inputSig:d(e.input),outputSig:d(e.output),errorSig:d(e.error),stateSig:d(e.state),approvalSig:d(e.approval)}:e}function Wn(e){return e.kind===`text`||e.kind===`reasoning`?{kind:e.kind,id:e.id,text:e.textSig.value,done:e.doneSig.value}:e.kind===`tool`?{kind:`tool`,toolCallId:e.toolCallId,toolName:e.toolName,inputPartial:e.inputPartialSig.value,input:e.inputSig.value,output:e.outputSig.value,error:e.errorSig.value,state:e.stateSig.value,approval:e.approvalSig.value}:e}const Gn=M.scope(`feedback:audio`);var Kn=class{constructor(){z(this,`ctx`,null),z(this,`master`,null),z(this,`buffers`,new Map)}unlock(){if(this.ctx){this.ctx.state===`suspended`&&this.ctx.resume();return}let e=globalThis.AudioContext??globalThis.webkitAudioContext;if(e)try{this.ctx=new e,this.master=this.ctx.createGain(),this.master.gain.value=1,this.master.connect(this.ctx.destination)}catch(e){Gn.warn(`AudioContext init failed`,{err:e})}}setVolume(e){if(!this.master||!this.ctx)return;let t=Math.max(0,Math.min(1,e));this.master.gain.setTargetAtTime(t,this.ctx.currentTime,.01)}playTone(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=t.currentTime,i=e.noteMs/1e3;e.notes.forEach((a,o)=>{let s=t.createOscillator();s.type=e.type,s.frequency.value=a;let c=t.createGain(),l=r+o*i;c.gain.setValueAtTime(1e-4,l),c.gain.exponentialRampToValueAtTime(e.peakGain,l+.005),c.gain.exponentialRampToValueAtTime(1e-4,l+i),s.connect(c).connect(n),s.start(l),s.stop(l+i+.01)})}async playUrl(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=await this.getBuffer(e);if(!r)return;let i=t.createBufferSource();i.buffer=r,i.connect(n),i.start()}destroy(){this.ctx&&this.ctx.close().catch(()=>void 0),this.ctx=null,this.master=null,this.buffers.clear()}async getBuffer(e){if(!this.ctx)return null;let t=this.buffers.get(e);if(t)return t instanceof Promise,t;let n=this.ctx,r=fetch(e).then(e=>e.ok?e.arrayBuffer():Promise.reject(Error(`fetch ${e.status}`))).then(e=>n.decodeAudioData(e)).then(t=>(this.buffers.set(e,t),t)).catch(t=>(Gn.warn(`audio fetch/decode failed`,{url:e,err:t}),this.buffers.delete(e),null));return this.buffers.set(e,r),r}};const qn={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},Jn={messageReceived:{notes:[880,1318.51],noteMs:90,type:`sine`,peakGain:.45},messageSent:{notes:[1568],noteMs:60,type:`sine`,peakGain:.25},error:{notes:[523.25,392],noteMs:120,type:`triangle`,peakGain:.55},voiceStart:{notes:[1318.51],noteMs:50,type:`sine`,peakGain:.3},voiceStop:{notes:[880],noteMs:50,type:`sine`,peakGain:.3}};let Yn=null,Xn=0;function Zn(){return typeof navigator<`u`&&typeof navigator.vibrate==`function`}function Qn(){if(typeof document>`u`)return null;let e=document.createElement(`input`);e.type=`checkbox`,e.setAttribute(`switch`,``),e.setAttribute(`aria-hidden`,`true`),e.tabIndex=-1,e.id=`__${y.cssPrefix}_haptic_${Math.random().toString(36).slice(2)}`;let t=document.createElement(`label`);t.htmlFor=e.id,t.setAttribute(`aria-hidden`,`true`);let n=`position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;opacity:0!important;pointer-events:none!important;`;return e.style.cssText=n,t.style.cssText=n,document.body.append(e,t),{input:e,label:t}}function $n(e){if(!(e===0||Array.isArray(e)&&e.every(e=>e===0))){if(Zn())try{navigator.vibrate(e);return}catch{}if(Yn||(Yn=Qn()),Yn)try{Yn.label.click()}catch{}}}function er(){Xn++;let e=!1;return()=>{e||(e=!0,Xn=Math.max(0,Xn-1),Xn===0&&Yn&&(Yn.input.remove(),Yn.label.remove(),Yn=null))}}const tr=M.scope(`feedback`);var nr=class{constructor(e,t){z(this,`mutedSig`,d(!1)),z(this,`audio`,new Kn),z(this,`releaseHaptics`,void 0),z(this,`sound`,void 0),z(this,`haptics`,void 0),z(this,`lastPlayed`,new Map),z(this,`reducedMotionMq`,null),this.sound=e,this.haptics=t,this.releaseHaptics=er(),this.audio.setVolume(this.effectiveVolume()),typeof matchMedia<`u`&&(this.reducedMotionMq=matchMedia(`(prefers-reduced-motion: reduce)`))}unlock(){this.audio.unlock(),this.audio.setVolume(this.effectiveVolume())}update(e,t){this.sound=e,this.haptics=t,this.audio.setVolume(this.effectiveVolume())}setMuted(e){this.mutedSig.value!==e&&(this.mutedSig.value=e)}toggleMuted(){this.mutedSig.value=!this.mutedSig.value}play(e){this.mutedSig.value||this.isDeduped(e)||(this.lastPlayed.set(e,performance.now()),this.sound.enabled&&this.playSound(e),this.haptics.enabled&&this.isTouchDevice()&&this.playHaptic(e))}destroy(){this.audio.destroy(),this.releaseHaptics()}isDeduped(e){let t=this.lastPlayed.get(e);return t!==void 0&&performance.now()-t<100}playSound(e){let t=this.sound.events?.[e];if(t===!1)return;if(typeof t==`string`){this.audio.playUrl(t).catch(e=>tr.warn(`audio play failed`,{err:e,url:t}));return}let n=Jn[e];n&&this.audio.playTone(n)}playHaptic(e){if(this.reducedMotionMq?.matches)return;let t=this.haptics.events?.[e];t!==!1&&$n(t===!0||t===void 0?qn[e]:t)}effectiveVolume(){let e=this.sound.volume??.3;return this.reducedMotionMq?.matches?e*.5:e}isTouchDevice(){return typeof window>`u`?!1:matchMedia(`(hover: none) and (pointer: coarse)`).matches}};const U={fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,viewBox:`0 0 24 24`},rr=`${y.cssPrefix}-icon-dir`,ir=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M21 12a8 8 0 0 1-12 6.93L3 21l1.65-5.16A8 8 0 1 1 21 12Z`})}),ar=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M18 6 6 18M6 6l12 12`})}),or=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M12 5v14M5 12h14`})}),sr=()=>g(`svg`,{...U,class:rr,"aria-hidden":`true`,children:[h(`path`,{d:`m22 2-7 20-4-9-9-4Z`}),h(`path`,{d:`M22 2 11 13`})]}),cr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M12 19V5M5 12l7-7 7 7`})}),lr=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`M3 20V4l18 8-18 8Z`})}),ur=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`m9 18 6-6-6-6`})}),dr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})}),fr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`m21 11-9 9a5.5 5.5 0 0 1-7.78-7.78l8.49-8.49a3.67 3.67 0 0 1 5.19 5.19l-8.49 8.49a1.83 1.83 0 0 1-2.6-2.6l7.78-7.78`})}),pr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`rect`,{x:`9`,y:`2`,width:`6`,height:`12`,rx:`3`}),h(`path`,{d:`M5 10a7 7 0 0 0 14 0M12 19v3`})]}),mr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5`})}),hr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5`})}),gr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z`})}),_r=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7`})}),vr=()=>h(`svg`,{...U,"aria-hidden":`true`,viewBox:`0 0 10 10`,children:h(`path`,{d:`M9 1L1 9M9 5L5 9M9 9H9`,strokeWidth:`1.5`})}),yr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`5`,r:`1.5`,fill:`currentColor`,stroke:`none`}),h(`circle`,{cx:`12`,cy:`12`,r:`1.5`,fill:`currentColor`,stroke:`none`}),h(`circle`,{cx:`12`,cy:`19`,r:`1.5`,fill:`currentColor`,stroke:`none`})]}),br=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M11 5 6 9H2v6h4l5 4zM15 9a5 5 0 0 1 0 6M18 7a9 9 0 0 1 0 10`})}),xr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6`})}),Sr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M3 18 8 6l5 12M4.7 14h6.6`}),h(`path`,{d:`M14.5 18l3.2-7 3.2 7M15.6 15.8h4.2`})]}),Cr=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`m5 6 6 6-6 6M13 6l6 6-6 6`})}),wr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M20 6 9 17l-5-5`})}),Tr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M3 3v6h6`}),h(`path`,{d:`M3.05 13A9 9 0 1 0 6 5.3L3 9`}),h(`path`,{d:`M12 7v5l3 2`})]}),Er=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`10`}),h(`path`,{d:`M2 12h20`}),h(`path`,{d:`M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z`})]}),Dr=()=>h(`svg`,{...U,class:rr,"aria-hidden":`true`,children:h(`path`,{d:`M19 12H5M12 19l-7-7 7-7`})}),Or=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M12 20h9`}),h(`path`,{d:`M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z`})]}),kr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`m6 9 6 6 6-6`})}),Ar=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z`}),h(`path`,{d:`M14 2v6h6`})]}),jr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`m12 3-1.5 4.5L6 9l4.5 1.5L12 15l1.5-4.5L18 9l-4.5-1.5Z`}),h(`path`,{d:`M19 15v4M17 17h4M5 3v2M4 4h2`})]}),Mr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z`})}),Nr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`10`}),h(`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}),h(`path`,{d:`M12 17h.01`})]}),Pr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`m15 4 3 3-9 9-3-3z`}),h(`path`,{d:`M18 2v2M20 4h2M3 20l3-3M3 16h2M5 14v2`})]}),Fr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`rect`,{x:`4`,y:`8`,width:`16`,height:`12`,rx:`2`}),h(`path`,{d:`M12 8V4`}),h(`circle`,{cx:`12`,cy:`3`,r:`1`}),h(`path`,{d:`M2 14h2M20 14h2M9 13h.01M15 13h.01M9.5 17h5`})]}),Ir=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M4 14v-2a8 8 0 0 1 16 0v2`}),h(`rect`,{x:`2`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),h(`rect`,{x:`18`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),h(`path`,{d:`M20 20v1a3 3 0 0 1-3 3h-5`})]}),Lr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`10`}),h(`circle`,{cx:`12`,cy:`12`,r:`4`}),h(`path`,{d:`m4.93 4.93 4.24 4.24M14.83 14.83l4.24 4.24M14.83 9.17l4.24-4.24M4.93 19.07l4.24-4.24`})]}),Rr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`11`,cy:`11`,r:`7`}),h(`path`,{d:`m21 21-4.3-4.3`})]}),zr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]}),Br=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M3 9.5 12 3l9 6.5`}),h(`path`,{d:`M5 9v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9`})]}),Vr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`m3 11 15-5v12L3 13z`}),h(`path`,{d:`M3 11v2a2 2 0 0 0 2 2h1V9H5a2 2 0 0 0-2 2z`}),h(`path`,{d:`M7 15v3a2 2 0 0 0 4 0v-2`}),h(`path`,{d:`M21 10a3 3 0 0 1 0 4`})]}),Hr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z`}),h(`path`,{d:`M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1`})]}),Ur=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`4`}),h(`path`,{d:`M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41`})]}),Wr=()=>h(`svg`,{...U,"aria-hidden":`true`,children:h(`path`,{d:`M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z`})}),Gr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`M12 3v18`}),h(`path`,{d:`M12 3a9 9 0 0 1 0 18z`,fill:`currentColor`,stroke:`none`})]}),Kr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`10.5`,cy:`10.5`,r:`6.5`}),h(`path`,{d:`M8 11a2.5 2.5 0 0 0 5 0`}),h(`path`,{d:`m20 20-4.4-4.4`})]}),qr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M12 3.5 13.6 9 19 10.5 13.6 12 12 17.5 10.4 12 5 10.5 10.4 9z`}),h(`path`,{d:`M18.5 4v3M20 5.5h-3M5.5 16v2.5M6.75 17.25h-2.5`})]}),Jr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M4 18h16`}),h(`path`,{d:`M5 18a7 7 0 0 1 14 0`}),h(`path`,{d:`M12 8V6`}),h(`path`,{d:`M10 6h4`})]}),Yr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M7 11V6.5a1.5 1.5 0 0 1 3 0V10`}),h(`path`,{d:`M10 10V5.5a1.5 1.5 0 0 1 3 0V10`}),h(`path`,{d:`M13 10V6.5a1.5 1.5 0 0 1 3 0V12`}),h(`path`,{d:`M16 9.5a1.5 1.5 0 0 1 3 0v2.5a7 7 0 0 1-7 7 7 7 0 0 1-6.4-4.2L4 12.5a1.5 1.5 0 0 1 2.6-1.5L7 11`})]}),Xr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`rect`,{x:`9`,y:`9`,width:`11`,height:`11`,rx:`2`}),h(`path`,{d:`M5 15a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2`})]}),Zr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M7 10v11H4a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1z`}),h(`path`,{d:`M7 10l4-7a2.5 2.5 0 0 1 2.5 2.5V8h5a2 2 0 0 1 2 2.3l-1.2 8A2 2 0 0 1 17.3 20H7`})]}),Qr=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`path`,{d:`M17 14V3h3a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1z`}),h(`path`,{d:`M17 14l-4 7a2.5 2.5 0 0 1-2.5-2.5V16h-5a2 2 0 0 1-2-2.3l1.2-8A2 2 0 0 1 6.7 4H17`})]}),$r=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`3.5`}),h(`path`,{d:`M12 2v3M12 19v3M2 12h3M19 12h3M4.9 4.9l2.1 2.1M17 17l2.1 2.1M19.1 4.9l-2.1 2.1M7 17l-2.1 2.1`})]}),ei=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`M12 7v5l3 2`})]}),ti=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]}),ni=()=>g(`svg`,{...U,"aria-hidden":`true`,children:[h(`circle`,{cx:`12`,cy:`12`,r:`9`}),h(`path`,{d:`m15 9-6 6M9 9l6 6`})]}),ri={chat:ir,message:Mr,bubbles:Hr,spark:jr,wand:Pr,bot:Fr,help:Nr,lifebuoy:Lr,headset:Ir,search:Kr,sparkles:qr,concierge:Jr,wave:Yr},W=y.cssPrefix,G={launcher:`${W}-launcher`,callout:`${W}-callout`,calloutDismiss:`${W}-callout-dismiss`,panel:`${W}-panel`,panelHeader:`${W}-panel-header`,resizeGrip:`${W}-resize-grip`,scrollToBottom:`${W}-scroll-to-bottom`,actionHistory:`${W}-action-history`,actionClose:`${W}-action-close`,langSegment:`${W}-lang-segment`,composer:`${W}-composer`,composerInput:`${W}-composer-input`,composerSend:`${W}-composer-send`,composerStop:`${W}-composer-stop`,composerAttach:`${W}-composer-attach`,composerFileInput:`${W}-composer-file-input`,composerVoice:`${W}-composer-voice`,attachmentChip:`${W}-attachment-chip`,attachmentRemove:`${W}-attachment-remove`,suggestion:`${W}-suggestion`,messageBubble:`${W}-message`,messageRetry:`${W}-message-retry`,messageFeedback:`${W}-message-feedback`,feedbackUp:`${W}-feedback-up`,feedbackDown:`${W}-feedback-down`,messageCopy:`${W}-message-copy`,historyPane:`${W}-history-pane`,historyBack:`${W}-history-back`,historyItem:`${W}-history-item`,sidebar:`${W}-sidebar`,sidebarToggle:`${W}-sidebar-toggle`,sidebarNewConversation:`${W}-sidebar-new-conversation`,sidebarItem:`${W}-sidebar-item`,messengerHome:`${W}-messenger-home`,modulesEmpty:`${W}-modules-empty`,tab:`${W}-tab`,tabBadge:`${W}-tab-badge`,homeView:`${W}-home-view`,homeGreeting:`${W}-home-greeting`,homeBrand:`${W}-home-brand`,backHeader:`${W}-back-header`,contentView:`${W}-content-view`,contentScroll:`${W}-content-scroll`,homeSearch:`${W}-home-search`,helpSearch:`${W}-help-search`,homeRecent:`${W}-home-recent`,homeContentRow:`${W}-home-content-row`,helpArticle:`${W}-help-article`,newsItem:`${W}-news-item`,formGate:`${W}-form-gate`,formDone:`${W}-form-done`,formDoneToggle:`${W}-form-done-toggle`,formAnswers:`${W}-form-answers`,formFill:`${W}-form-fill`,formSubmit:`${W}-form-submit`,formSkip:`${W}-form-skip`,formField:`${W}-form-field`,toolAskQuestions:`${W}-tool-ask-questions`,toolInputSubmit:`${W}-tool-input-submit`,toolInputSkip:`${W}-tool-input-skip`,toolApproval:`${W}-tool-approval`,toolApprove:`${W}-tool-approve`,toolReject:`${W}-tool-reject`,toolEdit:`${W}-tool-edit`,toolDecision:`${W}-tool-decision`,typingDots:`${W}-typing-dots`,reasoning:`${W}-reasoning`,toolAskSummary:`${W}-ask-questions-summary`,toolAskOptions:`${W}-ask-questions-options-toggle`,toolCall:`${W}-tool-call`,source:`${W}-source`,operatorRequest:`${W}-operator-request`,operatorBanner:`${W}-operator-banner`,operatorCancelRequest:`${W}-operator-cancel-request`};function ii(e,t){return`${e}-${t}`}const ai=y.cssPrefix;function oi({onToggle:e,launcher:t,strings:n,leaving:r,edgeTab:i}){let a=t.variant!==`circle`&&!!t.label;return g(`button`,{type:`button`,class:`${ai}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?`true`:void 0,"data-leaving":r?`true`:void 0,"data-testid":G.launcher,onClick:e,"aria-label":n.launcherOpen,children:[si(t.icon),a?h(`span`,{class:`${ai}-fab-label`,children:E(n,t.label??``)}):null]})}function si(e){let t=ri[e];return t?h(t,{}):h(ci,{source:e})}function ci({source:e}){return h(`span`,{ref:t=>{t&&li(t,e)},"aria-hidden":`true`})}function li(e,t){if(e.dataset.svgMounted!==t)try{let n=new DOMParser().parseFromString(t,`image/svg+xml`).documentElement;n&&n.tagName.toLowerCase()===`svg`&&(e.replaceChildren(document.importNode(n,!0)),e.dataset.svgMounted=t)}catch{}}function ui({callout:e,launcherPosition:t,strings:n,closeLabel:r,onDismiss:a}){let[o,s]=c(!1);return i(()=>{let t=setTimeout(()=>s(!0),e.delayMs);return()=>clearTimeout(t)},[e.delayMs]),i(()=>{if(!o||e.autoDismissMs<=0)return;let t=setTimeout(a,e.autoDismissMs);return()=>clearTimeout(t)},[o,e.autoDismissMs,a]),o?g(`div`,{class:`${ai}-callout`,role:`status`,"data-shape":e.shape,"data-position":di(e.position,t),"data-animated":e.animated?`true`:void 0,"data-testid":G.callout,children:[h(`span`,{children:E(n,e.text)}),h(`button`,{type:`button`,class:`${ai}-callout-close`,onClick:a,"aria-label":r,title:r,"data-testid":G.calloutDismiss,children:h(ar,{})})]}):null}function di(e,t){let n=t.endsWith(`-right`),r=t.startsWith(`bottom-`);return e===`vertical`?r?`top`:`bottom`:n?`left`:`right`}function fi({panelEl:e,resize:t,position:n,initialSize:r,onSizeChange:a,strings:o}){let c=y.cssPrefix,l=s(null);if(i(()=>{if(!e)return;let n=e.style;t.minWidth&&n.setProperty(`--${c}-resize-min-w`,t.minWidth),t.maxWidth&&n.setProperty(`--${c}-resize-max-w`,t.maxWidth),t.minHeight&&n.setProperty(`--${c}-resize-min-h`,t.minHeight),t.maxHeight&&n.setProperty(`--${c}-resize-max-h`,t.maxHeight),r&&(n.setProperty(`--${c}-widget-w`,`${r.width}px`),n.setProperty(`--${c}-widget-h`,`${r.height}px`))},[e,t.minWidth,t.maxWidth,t.minHeight,t.maxHeight,c,r]),!e)return null;let u=n.startsWith(`top-`),d=n.endsWith(`-right`),f=`${c}-resize-grip ${c}-resize-grip--${u?`bottom`:`top`}-${d?`left`:`right`}`,p=t=>{if(!e)return;let n=t.currentTarget,r=e.getBoundingClientRect();l.current={pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,startW:r.width,startH:r.height,dirX:d?-1:1,dirY:u?1:-1},n.setPointerCapture(t.pointerId),e.setAttribute(`data-resizing`,``),t.preventDefault()},m=t=>{let n=l.current;if(!n||t.pointerId!==n.pointerId||!e)return;let r=(t.clientX-n.startX)*n.dirX,i=(t.clientY-n.startY)*n.dirY;e.style.setProperty(`--${c}-widget-w`,`${n.startW+r}px`),e.style.setProperty(`--${c}-widget-h`,`${n.startH+i}px`)},g=t=>{let n=l.current;if(!n||t.pointerId!==n.pointerId||!e)return;t.currentTarget.releasePointerCapture(t.pointerId),e.removeAttribute(`data-resizing`);let r=e.getBoundingClientRect();a({width:Math.round(r.width),height:Math.round(r.height)}),l.current=null};return h(`div`,{class:f,role:`separator`,"aria-orientation":`vertical`,"aria-label":o.resizeHandle,title:o.resizeHandle,onPointerDown:p,onPointerMove:m,onPointerUp:g,onPointerCancel:g,"data-testid":G.resizeGrip,children:h(vr,{})})}const pi=y.cssPrefix,mi=`.${pi}-header, .${pi}-back-header, .${pi}-home-hero`;function hi(e,t){i(()=>{if(!t||!e)return;let n=e=>Number.parseFloat(e)||0,r=(e,t)=>Math.min(t,Math.max(-t,e)),i=null,a=t=>{let r=t.target;if(!(r instanceof Element)||!r.closest(mi)||r.closest(`button, a, input, textarea, select, [role="tab"], [contenteditable]`))return;let a=e.getBoundingClientRect();i={id:t.pointerId,x:t.clientX,y:t.clientY,dx:n(e.style.getPropertyValue(`--${pi}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${pi}-modal-dy`)),maxX:(window.innerWidth+a.width)/2-56,maxY:(window.innerHeight+a.height)/2-56},e.dataset.dragging=`true`,t.preventDefault()},o=t=>{if(!i||t.pointerId!==i.id)return;let n=r(i.dx+t.clientX-i.x,i.maxX),a=r(i.dy+t.clientY-i.y,i.maxY);e.style.setProperty(`--${pi}-modal-dx`,`${n}px`),e.style.setProperty(`--${pi}-modal-dy`,`${a}px`)},s=t=>{!i||t.pointerId!==i.id||(i=null,delete e.dataset.dragging)};return e.addEventListener(`pointerdown`,a),window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s),()=>{e.removeEventListener(`pointerdown`,a),window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[e,t])}function gi(e,t,n){switch(e){case`clear`:case`sound`:case`history`:case`language`:case`theme`:case`textSize`:return!0;case`expand`:return t===`floating`;case`fullscreen`:return t!==`standalone`;case`close`:return t===`standalone`||t===`page`?!1:t!==`inline`||n===`fullscreen`}}function _i(e,t,n){return gi(`close`,e,t)?n.includes(`close`):!1}function vi(e,t){return e===`inline`&&t===`fullscreen`?`exit-fullscreen`:`close`}function yi(e){let t=t=>{if(t.key!==`Tab`)return;let n=[...e.querySelectorAll(`a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])`)].filter(e=>e.offsetParent!==null||e===document.activeElement);if(n.length===0){t.preventDefault();return}let r=n[0],i=n[n.length-1];if(!r||!i)return;let a=e.getRootNode().activeElement;t.shiftKey&&a===r?(t.preventDefault(),i.focus()):!t.shiftKey&&a===i&&(t.preventDefault(),r.focus())};return e.addEventListener(`keydown`,t),()=>e.removeEventListener(`keydown`,t)}function bi(e){return e.trim().split(/\s+/).slice(0,2).map(e=>e.charAt(0).toUpperCase()).join(``)}const xi=y.cssPrefix;function Si({agent:e,strings:t}){let n=e.status??`online`,r=E(t,e.name),i=e.title?E(t,e.title):null;return g(`div`,{class:`${xi}-agent`,children:[h(`div`,{class:`${xi}-agent-avatar`,"data-status":n,children:e.avatar?h(`img`,{src:e.avatar,alt:``}):h(`span`,{children:bi(r)})}),g(`div`,{class:`${xi}-agent-meta`,children:[h(`strong`,{children:r}),i?h(`span`,{children:i}):null]})]})}const Ci=M.scope(`attachments`);function wi(e,t,n){let r=Di(e),i=[],a=[],o=Ai(n.accept),s=t.reduce((e,t)=>e+t.size,0),c=t.length;for(let e of r){let t=Ei(e,c,s,n,o);if(t){a.push({file:e,reason:t});continue}i.push(ki(e)),s+=e.size,c+=1}return(i.length||a.length)&&Ci.debug(`ingest`,{accepted:i.length,rejected:a.map(e=>({name:e.file.name,reason:e.reason}))}),{accepted:i,rejected:a}}function Ti(e){try{URL.revokeObjectURL(e.previewUrl)}catch(e){Ci.debug(`revokeObjectURL failed`,{error:e})}}function Ei(e,t,n,r,i){return t>=r.maxCount?`count`:n+e.size>r.maxBytes?`bytes`:ji(e,i)?null:`mime`}function Di(e){return e?Array.isArray(e)?e.filter(e=>e instanceof File):[...e].map(e=>e instanceof File?e:Oi(e)).filter(e=>e!==null):[]}function Oi(e){let t=e;return!t?.getAsFile||t.kind!==`file`?null:t.getAsFile()}function ki(e){return{file:e,id:ut(),mediaType:e.type||`application/octet-stream`,name:e.name||`pasted-file`,previewUrl:URL.createObjectURL(e),size:e.size}}function Ai(e){return e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean).map(e=>{if(e.startsWith(`.`))return{kind:`ext`,ext:e};let[t=`*`,n=`*`]=e.split(`/`);return{kind:`mime`,type:t,subtype:n}})}function ji(e,t){if(t.length===0)return!0;let[n=`*`,r=`*`]=(e.type||``).toLowerCase().split(`/`),i=(e.name||``).toLowerCase();return t.some(e=>e.kind===`ext`?i.endsWith(e.ext):(e.type===`*`||e.type===n)&&(e.subtype===`*`||e.subtype===r))}const Mi=y.cssPrefix;function Ni({attachment:e,onRemove:t}){let n=e.mediaType.startsWith(`image/`);return g(`span`,{class:`${Mi}-attachment-chip`,title:e.name,"data-testid":ii(G.attachmentChip,e.id),children:[n?h(`img`,{class:`${Mi}-attachment-thumb`,src:e.previewUrl,alt:``}):h(`span`,{class:`${Mi}-attachment-thumb`,"aria-hidden":`true`,children:h(Ar,{})}),h(`span`,{class:`${Mi}-attachment-name`,children:e.name}),h(`button`,{type:`button`,class:`${Mi}-attachment-remove`,onClick:t,"aria-label":`Remove ${e.name}`,"data-testid":ii(G.attachmentRemove,e.id),children:h(ar,{})})]})}const Pi={isSupported:!1,start:()=>void 0,stop:()=>void 0};function Fi(e,t,n){return e===`disabled`?Pi:e===`server`?zi(n):Ii(t)}function Ii(e){let t=Li();if(!t)return Pi;let n=null;return{isSupported:!0,start(r,i){n=new t,n.continuous=!0,n.interimResults=!0,n.lang=e,n.addEventListener(`result`,e=>{let t=e,n=``,i=!1;for(let e=t.resultIndex;e<t.results.length;e++){let r=t.results[e];r&&(n+=r[0].transcript,r.isFinal&&(i=!0))}r(n,i)});let a=()=>{n=null,i()};n.addEventListener(`end`,a),n.addEventListener(`error`,a),n.start()},stop(){n?.stop()}}}function Li(){return window.SpeechRecognition??window.webkitSpeechRecognition}const Ri=[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`];function zi(e){if(typeof MediaRecorder>`u`||!navigator?.mediaDevices?.getUserMedia)return Pi;let t=null,n=null,r=[],i=()=>{for(let e of n?.getTracks()??[])e.stop();n=null};return{isSupported:!0,async start(a,o){try{n=await navigator.mediaDevices.getUserMedia({audio:!0});let s=Bi();t=new MediaRecorder(n,s?{mimeType:s}:void 0),r=[],t.addEventListener(`dataavailable`,e=>{e.data.size>0&&r.push(e.data)}),t.addEventListener(`stop`,async()=>{let n=t?.mimeType??`audio/webm`;i();let s=new Blob(r,{type:n});r=[];try{let{text:t}=await e(s,n);t&&a(t,!0)}catch{}finally{o()}}),t.start()}catch{i(),o()}},stop(){t?.stop()}}}function Bi(){for(let e of Ri)if(MediaRecorder.isTypeSupported(e))return e}const K=y.cssPrefix,Vi=M.scope(`composer`);function Hi(e){return e.reduce((e,t)=>e+t.size,0)}const Ui={arrowUp:cr,paperPlane:sr,send:lr,chevron:ur};function Wi({options:e,transport:t,feedback:n,bus:r,isStreaming:a,operatorRequestEnabled:o,controlMode:l,onRequestOperator:u,onSend:d,onStop:f,attachApiRef:p}){let m=e.strings,[_,v]=c(``),[y,b]=c([]),[x,S]=c(!1),C=s(null),w=s(null),T=e.features.fileUpload,E=e.features.voice,[D,O]=c(()=>Fi(E,e.locale,(e,n)=>t.transcribe(e,n)));i(()=>{x||E===`disabled`||O(Fi(E,e.locale,(e,n)=>t.transcribe(e,n)))},[e.locale,E,t,x]),i(()=>{let e=C.current;if(!e)return;let t=e.getRootNode(),n=`activeElement`in t?t.activeElement:null;n&&e.closest(`.${K}-panel`)?.contains(n)||e.focus({preventScroll:!0})},[]),i(()=>{let e=C.current;if(!e)return;if(_.length===0){e.style.height=``;return}e.style.height=`auto`;let t=parseFloat(getComputedStyle(e).fontSize)*.7,n=Math.min(e.scrollHeight,160);e.style.height=`${n<40+t?40:n}px`},[_]);let k=s(y);k.current=y,i(()=>()=>k.current.forEach(Ti),[]),i(()=>{if(p)return p.current={attachFromDrop:t=>{let n=wi(t,k.current,e.attachments);n.accepted.length!==0&&(Vi.info(`attach (drop)`,{count:n.accepted.length,totalBytes:Hi(n.accepted)}),r.emit(`attach`,{count:n.accepted.length,totalBytes:Hi(n.accepted)}),b(e=>[...e,...n.accepted]))},fill:e=>{v(e);let t=C.current;t&&(t.focus({preventScroll:!0}),requestAnimationFrame(()=>t.setSelectionRange(t.value.length,t.value.length)))}},()=>{p.current&&(p.current=null)}},[p,e.attachments]),i(()=>{let t=C.current;if(!t)return;let n=t.closest(`.${K}-panel`);if(!n)return;let i=n=>{let i=n.clipboardData;if(!i)return;let a=n.target?.closest?.(`input, textarea, [contenteditable]:not([contenteditable='false'])`);if(a&&a!==t)return;if(T){let t=wi(i.items,k.current,e.attachments);if(t.accepted.length>0){n.preventDefault(),Vi.info(`attach (paste)`,{count:t.accepted.length,totalBytes:Hi(t.accepted)}),r.emit(`attach`,{count:t.accepted.length,totalBytes:Hi(t.accepted)}),b(e=>[...e,...t.accepted]);return}}if(a===t)return;let o=i.getData(`text/plain`);o&&(n.preventDefault(),v(e=>e+o),t.focus())};return n.addEventListener(`paste`,i),()=>n.removeEventListener(`paste`,i)},[T,e.attachments,K]);let A=()=>{let e=_.trim();!e&&y.length===0||a||(d(e,y),v(``),b([]))},ee=e=>{e.key!==`Enter`||e.shiftKey||e.isComposing||(e.preventDefault(),a?f():A())},te=t=>{let n=t.target,i=wi(n.files,y,e.attachments);i.accepted.length>0&&(Vi.info(`attach (file picker)`,{count:i.accepted.length,totalBytes:Hi(i.accepted)}),r.emit(`attach`,{count:i.accepted.length,totalBytes:Hi(i.accepted)}),b(e=>[...e,...i.accepted])),n.value=``},ne=e=>{Vi.info(`removeAttachment`,{id:e}),r.emit(`removeAttachment`,{id:e}),b(t=>{let n=t.find(t=>t.id===e);return n&&Ti(n),t.filter(t=>t.id!==e)})},j=s(null),re=()=>{if(D.isSupported){if(x){let e=j.current?Date.now()-j.current:0;Vi.info(`voiceStop`,{durationMs:e}),r.emit(`voiceStop`,{durationMs:e}),D.stop(),S(!1),n.play(`voiceStop`),j.current=null;return}j.current=Date.now(),Vi.info(`voiceStart`),r.emit(`voiceStart`,void 0),S(!0),n.play(`voiceStart`),D.start((e,t)=>v(n=>t?`${n}${e} `:n),()=>{if(S(!1),j.current){let e=Date.now()-j.current;Vi.debug(`voiceStop (auto)`,{durationMs:e}),r.emit(`voiceStop`,{durationMs:e}),j.current=null}})}},ie=Ui[e.composer.sendButton.icon];return g(`div`,{class:`${K}-composer`,"data-testid":G.composer,children:[y.length>0?h(`div`,{class:`${K}-attachments`,children:y.map(e=>h(Ni,{attachment:e,onRemove:()=>ne(e.id)},e.id))}):null,g(`div`,{class:`${K}-composer-row`,children:[g(`div`,{class:`${K}-composer-actions`,children:[T?h(`button`,{type:`button`,class:`${K}-icon-btn`,onClick:()=>w.current?.click(),"aria-label":m.attach,"data-testid":G.composerAttach,children:h(fr,{})}):null,D.isSupported?h(`button`,{type:`button`,class:`${K}-icon-btn`,onClick:re,"aria-label":x?m.micStop:m.micStart,"aria-pressed":x,"data-recording":x?`true`:void 0,"data-testid":G.composerVoice,children:h(pr,{})}):null,o&&l===`ai-agent`&&u?h(`button`,{type:`button`,class:`${K}-icon-btn`,onClick:u,"aria-label":m.talkToOperator,title:m.talkToOperator,"data-testid":G.operatorRequest,children:h(Ir,{})}):null]}),h(`textarea`,{ref:C,class:`${K}-textarea`,rows:1,value:_,placeholder:m.composerPlaceholder,onInput:e=>v(e.target.value),onKeyDown:ee,"aria-label":m.composerPlaceholder,"data-testid":G.composerInput}),a?h(`button`,{type:`button`,class:`${K}-send`,onClick:f,"aria-label":m.stop,"data-testid":G.composerStop,children:h(dr,{})}):h(`button`,{type:`button`,class:`${K}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:A,disabled:!_.trim()&&y.length===0,"aria-label":m.send,"data-testid":G.composerSend,children:h(ie,{})})]}),h(`input`,{ref:w,type:`file`,multiple:!0,accept:e.attachments.accept,onChange:te,class:`${K}-sr-only`,"data-testid":G.composerFileInput})]})}const Gi=y.cssPrefix;function Ki({visible:e,strings:t}){return e?h(`div`,{class:`${Gi}-dropzone`,role:`status`,"aria-live":`polite`,children:t.dropZone}):null}function qi({containerRef:e,onDrop:t}){let[n,r]=c(!1);return i(()=>{let n=e.current;if(!n)return;let i=0,a=e=>{i+=1,e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),r(!0))},o=()=>{--i,!(i>0)&&(i=0,r(!1))},s=e=>{e.dataTransfer?.types.includes(`Files`)&&e.preventDefault()},c=e=>{i=0,r(!1),e.dataTransfer&&(e.preventDefault(),t(e.dataTransfer.items))};return n.addEventListener(`dragenter`,a),n.addEventListener(`dragleave`,o),n.addEventListener(`dragover`,s),n.addEventListener(`drop`,c),()=>{n.removeEventListener(`dragenter`,a),n.removeEventListener(`dragleave`,o),n.removeEventListener(`dragover`,s),n.removeEventListener(`drop`,c)}},[e,t]),{visible:n}}function Ji({itemCount:e,initialFocusIndex:t}){let[n,a]=c(!1),o=s(null),l=s(null),[u,d]=c(-1),f=r(()=>{a(!1),d(-1),o.current?.focus()},[]),p=r(()=>a(e=>!e),[]);return i(()=>{if(!n)return;let e=e=>{let t=l.current,n=o.current;if(!t||!n)return;let r=e.composedPath();r.includes(t)||r.includes(n)||(a(!1),d(-1))};return document.addEventListener(`click`,e,!0),()=>document.removeEventListener(`click`,e,!0)},[n]),i(()=>{if(!n||e===0)return;let r=t?.()??0;d(r<0||r>=e?0:r)},[n,e,t]),i(()=>{!n||u<0||(l.current?.querySelectorAll(`[role='menuitem']`))?.[u]?.focus()},[n,u]),{open:n,focusIndex:u,triggerRef:o,menuRef:l,toggle:p,close:f,onTriggerKey:r(e=>{(e.key===`ArrowDown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),a(!0))},[]),onMenuKey:r(t=>{if(e!==0)switch(t.key){case`Escape`:t.preventDefault(),f();return;case`ArrowDown`:t.preventDefault(),d(t=>(t+1)%e);return;case`ArrowUp`:t.preventDefault(),d(t=>(t-1+e)%e);return;case`Home`:t.preventDefault(),d(0);return;case`End`:t.preventDefault(),d(e-1)}},[e,f])}}function Yi({items:e,triggerLabel:t}){let n=y.cssPrefix,r=Ji({itemCount:e.length}),i=e=>{e.disabled||(e.onSelect?.(),e.keepOpen||r.close())},a=(e,t)=>e.onSelectValue?.(t),o=(e,t)=>{let n=t.segments;if(!n?.length)return;let r=Math.max(0,n.findIndex(e=>e.value===t.value)),i=-1;if(e.key===`ArrowRight`||e.key===`Enter`||e.key===` `)i=(r+1)%n.length;else if(e.key===`ArrowLeft`)i=(r-1+n.length)%n.length;else return;e.preventDefault(),e.stopPropagation(),a(t,n[i].value)};return g(`div`,{class:`${n}-menu-wrap`,children:[h(`button`,{ref:r.triggerRef,type:`button`,class:`${n}-icon-btn`,"aria-label":t,"aria-haspopup":`menu`,"aria-expanded":r.open,title:t,onClick:r.toggle,onKeyDown:r.onTriggerKey,children:h(yr,{})}),r.open?h(`div`,{ref:r.menuRef,class:`${n}-menu`,role:`menu`,"aria-label":t,onKeyDown:r.onMenuKey,tabIndex:-1,children:e.map(e=>e.segments?g(`div`,{role:`menuitem`,class:`${n}-menu-item ${n}-menu-item-segmented`,"aria-label":e.label,tabIndex:-1,onKeyDown:t=>o(t,e),children:[e.icon?h(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,h(`span`,{class:`${n}-menu-label`,children:e.label}),h(`span`,{class:`${n}-segmented`,role:`group`,"aria-label":e.label,children:e.segments.map(t=>{let r=t.value===e.value;return h(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":r,class:`${n}-segment`,"data-on":r?`true`:void 0,lang:t.lang,title:t.value,tabIndex:-1,"data-testid":`${G.langSegment}-${t.value}`,onClick:()=>a(e,t.value),children:t.label},t.value)})})]},e.id):g(`button`,{type:`button`,role:`menuitem`,class:`${n}-menu-item`,"aria-pressed":e.type===`switch`?e.on:void 0,disabled:e.disabled,onClick:()=>i(e),children:[e.icon?h(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,h(`span`,{class:`${n}-menu-label`,children:e.label}),e.type===`switch`&&e.on?h(`span`,{class:`${n}-menu-check`,"aria-hidden":`true`,children:h(wr,{})}):null]},e.id))}):null]})}const Xi=y.cssPrefix;function Zi(e){let t=typeof matchMedia!=`function`||matchMedia(`(prefers-color-scheme: dark)`).matches;return e===`auto`?t?`light`:`dark`:t?e===`light`?`dark`:`auto`:e===`dark`?`light`:`auto`}const Qi={normal:`large`,large:`small`,small:`normal`};function $i(e){return h(e===`light`?Ur:e===`dark`?Wr:Gr,{})}function ea(e){return(e.split(`-`)[0]??e).toUpperCase()}function ta({panelProps:e,variant:t}){let{options:n,panelSize:r,feedback:i,onClose:a,onClear:o,onExpand:s,onFullscreen:c,onSoundToggle:l}=e,{onToggleHistory:u,onLocaleChange:d,onThemeChange:p,onTextSizeChange:m}=e,_=n.strings,v=n.mode,y=t===`chat`,b=f(()=>i.mutedSig.value).value,x=new Set(n.actions),S=e=>x.has(e),C=typeof matchMedia==`function`&&matchMedia(`(max-width: 640px)`).matches,w=e=>!C&&gi(e,v,r),T=n.themeMode,E={auto:_.themeAuto,light:_.themeLight,dark:_.themeDark},D=n.textSize,O={small:_.textSizeSmall,normal:_.textSizeNormal,large:_.textSizeLarge},k=[];if(y&&S(`clear`)&&k.push({id:`clear`,icon:h(Or,{}),label:_.newConversation,onSelect:o}),S(`expand`)&&w(`expand`)){let e=r===`expanded`;k.push({id:`expand`,icon:h(e?hr:mr,{}),label:e?_.collapse:_.expand,type:`switch`,on:e,onSelect:s})}if(S(`fullscreen`)&&w(`fullscreen`)){let e=r===`fullscreen`;k.push({id:`fullscreen`,icon:h(e?_r:gr,{}),label:e?_.exitFullscreen:_.fullscreen,type:`switch`,on:e,onSelect:c})}y&&S(`sound`)&&k.push({id:`sound`,icon:h(b?xr:br,{}),label:b?_.soundOff:_.soundOn,type:`switch`,on:!b,onSelect:l}),S(`theme`)&&k.push({id:`theme`,icon:$i(T),label:`${_.theme}: ${E[T]}`,onSelect:()=>p(Zi(T)),keepOpen:!0}),S(`textSize`)&&k.push({id:`textSize`,icon:h(Sr,{}),label:`${_.textSize}: ${O[D]}`,onSelect:()=>m(Qi[D]),keepOpen:!0}),S(`language`)&&n.availableLocales.length>1&&k.push({id:`language`,icon:h(Er,{}),label:_.language,segments:n.availableLocales.map(e=>({value:e,label:ea(e),lang:e})),value:n.locale,onSelectValue:d});let A=!!a&&_i(v,r,n.actions),ee=y&&S(`history`);return g(`div`,{class:`${Xi}-header-actions`,children:[ee?h(`button`,{type:`button`,class:`${Xi}-icon-btn`,onClick:u,"aria-label":_.history,title:_.history,"data-testid":G.actionHistory,children:h(Tr,{})}):null,k.length>0?h(Yi,{items:k,triggerLabel:_.moreActions}):null,A?h(`button`,{type:`button`,class:`${Xi}-icon-btn`,onClick:a,"aria-label":_.close,title:_.close,"data-testid":G.actionClose,children:h(ar,{})}):null]})}const na=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,ra=/^https?:\/\/[^\s.]+\.[^\s]+$/i,ia=/^[+]?[\d\s().-]{6,}$/;function aa(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>String(t[n]??`{${n}}`))}function oa(e){return Array.isArray(e)?e.length:e&&e.trim()?1:0}function sa(e,t,n){let r=e.required??!0,i=e.validation;if(e.type===`multiselect`){let e=oa(t);return r&&e===0?n.formRequired:e===0?void 0:i?.minSelections!=null&&e<i.minSelections?aa(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&e>i.maxSelections?aa(n.formChooseAtMost,{max:i.maxSelections}):void 0}let a=typeof t==`string`?t.trim():``;if(!a)return r?n.formRequired:void 0;switch(e.type){case`email`:if(!na.test(a))return n.formInvalidEmail;break;case`url`:if(!ra.test(a))return n.formInvalidUrl;break;case`tel`:if(!ia.test(a))return n.formInvalidTel;break;case`number`:{let e=Number(a);if(!Number.isFinite(e))return n.formInvalidNumber;if(i?.min!=null&&e<i.min)return aa(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&e>i.max)return aa(n.formNumberTooLarge,{max:i.max});break}default:break}if(i?.minLength!=null&&a.length<i.minLength)return aa(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return aa(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function ca(e,t,n){let r={};for(let i of e){let e=sa(i,t[i.name],n);e&&(r[i.name]=e)}return r}function la(e){let t={};for(let[n,r]of Object.entries(e)){let e=Array.isArray(r)?r.join(`, `):r;e&&e.trim()&&(t[n]=e.trim())}return t}const q=y.cssPrefix,ua=`__other__`;function da({fields:e,strings:t,submitLabel:n,onSubmit:r,skipLabel:i,onSkip:a,footerHint:o,submitOnEnter:s,disabled:l,initialValues:u,hideActions:d,fieldTypeLabels:f,rootTestId:p,submitTestId:m,skipTestId:_}){let[v,y]=c(()=>({...ha(e),...u})),[b,x]=c({}),[S,C]=c({}),w=e=>{S[e]&&C(t=>({...t,[e]:``}))},T=(e,t)=>{y(n=>({...n,[e]:t})),w(e)},E=(e,t)=>{x(n=>({...n,[e]:t})),w(e)},D=n=>{if(n.preventDefault(),l)return;let i=ga(e,v,b),a=ca(e,i,t);if(Object.keys(a).length>0){C(a);return}r(la(i))};return g(`form`,{class:`${q}-form`,onSubmit:D,onKeyDown:e=>{!s||e.key!==`Enter`||e.shiftKey||e.isComposing||e.target?.tagName===`TEXTAREA`&&D(e)},"data-testid":p,noValidate:!0,children:[e.map(e=>h(fa,{field:e,value:v[e.name],otherText:b[e.name]??``,error:S[e.name],disabled:l,typeLabel:f?.[e.name],strings:t,onChange:t=>T(e.name,t),onOtherChange:t=>E(e.name,t)},e.name)),d?null:g(`div`,{class:`${q}-form-actions`,children:[o?h(`span`,{class:`${q}-form-hint`,children:o}):null,i&&a?h(`button`,{type:`button`,class:`${q}-form-skip`,onClick:a,disabled:l,"data-testid":_,children:i}):null,h(`button`,{type:`submit`,class:`${q}-form-submit`,disabled:l,"data-testid":m,children:n})]})]})}function fa({field:e,value:t,otherText:n,error:r,disabled:i,typeLabel:a,strings:o,onChange:s,onOtherChange:c}){let l=pa({field:e,value:t,otherText:n,disabled:i,strings:o,onChange:s,onOtherChange:c,fieldTid:ii(G.formField,e.name)});return g(`label`,{class:`${q}-field`,"data-field":e.name,"data-invalid":r?`true`:void 0,children:[g(`span`,{class:`${q}-field-head`,children:[g(`span`,{class:`${q}-field-label`,children:[e.label,e.required??!0?h(`span`,{class:`${q}-field-req`,"aria-hidden":`true`,children:` *`}):null]}),a?h(`span`,{class:`${q}-field-type`,children:a}):null]}),l,e.validationHint&&!r?h(`span`,{class:`${q}-field-hint`,children:e.validationHint}):null,r?h(`span`,{class:`${q}-field-error`,role:`alert`,children:r}):null]})}function pa(e){let{field:t,value:n,otherText:r,disabled:i,strings:a,onChange:o,onOtherChange:s,fieldTid:c}=e,l=typeof n==`string`?n:``;switch(t.type){case`textarea`:return h(`textarea`,{class:`${q}-field-input`,rows:3,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.target.value),"data-testid":c});case`select`:return g(`select`,{class:`${q}-field-input`,value:l,disabled:i,onChange:e=>o(e.target.value),"data-testid":c,children:[h(`option`,{value:``,children:t.placeholder??`—`}),(t.options??[]).map(e=>h(`option`,{value:e.value,children:e.label??e.value},e.value))]});case`radio`:{let e=t.allowOther&&l===ua;return g(`div`,{class:`${q}-field-choices`,role:`radiogroup`,"data-testid":c,children:[(t.options??[]).map(e=>g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`radio`,name:`${q}-${t.name}`,checked:l===e.value,disabled:i,onChange:()=>o(e.value)}),h(`span`,{children:e.label??e.value})]},e.value)),t.allowOther?g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`radio`,name:`${q}-${t.name}`,checked:l===ua,disabled:i,onChange:()=>o(ua)}),h(`span`,{children:a.formOther})]}):null,e?h(`input`,{class:`${q}-field-input`,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.target.value)}):null]})}case`checkbox`:return g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`checkbox`,checked:l===`true`,disabled:i,onChange:e=>o(e.target.checked?`true`:``),"data-testid":c}),h(`span`,{children:t.placeholder??t.label})]});case`multiselect`:{let e=Array.isArray(n)?n:[],l=(t,n)=>o(n?[...e,t]:e.filter(e=>e!==t));return g(`div`,{class:`${q}-field-choices`,"data-testid":c,children:[(t.options??[]).map(t=>g(`label`,{class:`${q}-choice`,children:[h(`input`,{type:`checkbox`,checked:e.includes(t.value),disabled:i,onChange:e=>l(t.value,e.target.checked)}),h(`span`,{children:t.label??t.value})]},t.value)),t.allowOther||(t.options??[]).length===0?h(`textarea`,{class:`${q}-field-input`,rows:2,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.target.value)}):null]})}default:return h(`input`,{class:`${q}-field-input`,type:ma(t.type),value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.target.value),"data-testid":c})}}function ma(e){switch(e){case`number`:case`email`:case`tel`:case`url`:case`date`:case`time`:return e;default:return`text`}}function ha(e){let t={};for(let n of e)n.defaultValue!=null&&(t[n.name]=n.type===`multiselect`?n.defaultValue.split(`,`).map(e=>e.trim()).filter(Boolean):n.defaultValue);return t}function ga(e,t,n){let r={...t};for(let i of e){let e=n[i.name]?.trim();if(i.type===`radio`&&i.allowOther&&t[i.name]===ua)r[i.name]=e??``;else if(i.type===`multiselect`&&e){let n=e.split(/[,\n;]+/).map(e=>e.trim()).filter(Boolean),a=Array.isArray(t[i.name])?t[i.name]:[];r[i.name]=[...a,...n]}}return r}const _a=y.cssPrefix;function va({form:e,strings:t,onSubmit:n,onSkip:r}){return g(`div`,{class:`${_a}-form-gate`,"data-testid":G.formGate,children:[e.title?h(`h3`,{class:`${_a}-form-gate-title`,children:e.title}):null,e.description?h(`p`,{class:`${_a}-form-gate-desc`,children:e.description}):null,h(da,{fields:e.fields,strings:t,submitLabel:e.submitLabel??t.formSubmit,onSubmit:n,skipLabel:e.skippable?t.formSkip:void 0,onSkip:e.skippable?r:void 0,submitTestId:G.formSubmit,skipTestId:G.formSkip})]})}function ya({marker:e,strings:t,onFill:n}){let r=e.outcome===`skipped`,i=r?t.formSkipped:t.formSubmitted,a=e.title?g(m,{children:[h(`span`,{children:e.title}),h(`span`,{class:`${_a}-sr-only`,children:i})]}):h(`span`,{children:i}),o=e.form?.reviewable??!1,s=!r&&o&&e.values&&Object.keys(e.values).length>0?e.values:null;if(s){let t=t=>e.form?.fields.find(e=>e.name===t)?.label??t;return g(`details`,{class:`${_a}-form-done`,"data-outcome":e.outcome,"data-testid":G.formDone,children:[g(`summary`,{class:`${_a}-form-done-summary`,"data-testid":G.formDoneToggle,children:[h(wr,{}),a,h(ur,{})]}),h(`dl`,{class:`${_a}-form-answers`,"data-testid":G.formAnswers,children:Object.entries(s).map(([e,n])=>g(`div`,{class:`${_a}-form-answer`,children:[h(`dt`,{children:t(e)}),h(`dd`,{children:n})]},e))})]})}return g(`div`,{class:`${_a}-form-done`,"data-outcome":e.outcome,"data-testid":G.formDone,role:`status`,children:[h(r?Cr:wr,{}),a,r&&e.form?.reopenable&&n?h(`button`,{type:`button`,class:`${_a}-form-done-fill`,"data-testid":G.formFill,onClick:n,children:t.formFillOut}):null]})}function ba(e){if(!e)return!1;let t=e.startsWith(`tool:`)?e.slice(5):e;return t===`ask-user-questions`||t===`ask_user_questions`}const xa=y.cssPrefix;function Sa(e){return e.startsWith(`tool:`)||e.startsWith(`tool-`)?e.slice(5):e}function Ca(e,t){let n=e===`output-available`||e===`output-error`||e===`output-denied`,r=e===`approval-responded`||t?.approved!==void 0;return{terminal:n,responded:r,decided:n||r}}function wa({status:e,icon:t,label:n}){return g(`span`,{class:`${xa}-toolui-badge ${xa}-toolui-status`,"data-status":e,children:[h(`span`,{class:`${xa}-toolui-status-icon`,children:t}),n]})}function Ta(e,t){return e===`output-error`?`error`:e===`output-denied`||t?.approved===!1?`denied`:e===`output-available`?`completed`:e===`approval-responded`||t?.approved===!0?`responded`:e===`approval-requested`?`awaiting`:`running`}function Ea(e,t,n={}){return ka(Ta(e,t),n.superseded,n.live??!0)}function Da({status:e}){return h(e===`denied`||e===`error`||e===`superseded`?ni:e===`completed`||e===`responded`?ti:ei,{})}function Oa(e,t){switch(e){case`awaiting`:return t.statusAwaiting;case`responded`:return t.statusResponded;case`completed`:return t.statusCompleted;case`denied`:return t.statusDenied;case`error`:return t.statusError;case`superseded`:return t.statusSuperseded;default:return t.statusRunning}}function ka(e,t,n){return t&&(e===`awaiting`||e===`running`)?`superseded`:!n&&e===`running`?`error`:e}function Aa({state:e,approval:t,strings:n,superseded:r,live:i=!0}){let a=Ea(e,t,{superseded:r,live:i});return h(wa,{status:a,icon:h(Da,{status:a}),label:Oa(a,n)})}function ja({name:e,state:t,approval:n,strings:r,superseded:i,live:a}){return g(m,{children:[g(`span`,{class:`${xa}-toolui-name-pill`,children:[h($r,{}),h(`span`,{class:`${xa}-toolui-name-text`,children:e})]}),h(Aa,{state:t,approval:n,strings:r,superseded:i,live:a}),h(`span`,{class:`${xa}-toolui-chevron`,children:h(kr,{})})]})}function Ma({part:e,strings:t,testid:n,superseded:r,live:i}){let a=f(()=>e.inputSig.value),o=f(()=>e.outputSig.value),s=f(()=>e.errorSig.value),c=f(()=>e.stateSig.value),l=f(()=>e.approvalSig.value);return g(`details`,{class:`${xa}-toolui ${xa}-toolui-collapsible`,"data-testid":n,children:[h(`summary`,{class:`${xa}-toolui-head`,children:h(ja,{name:Sa(e.toolName),state:c.value,approval:l.value,strings:t,superseded:r,live:i})}),h(Na,{label:t.toolParameters,value:a.value}),o.value===void 0?null:h(Na,{label:t.toolResult,value:o.value}),s.value?h(Na,{label:t.statusError,value:s.value,error:!0}):null]})}function Na({label:e,value:t,error:n}){let r=n?String(t??``):Fa(Pa(t));return r?g(`div`,{class:`${xa}-toolui-section`,children:[h(`span`,{class:`${xa}-toolui-label`,children:e}),h(`pre`,{class:`${xa}-toolui-code`,"data-error":n?`true`:void 0,children:r})]}):null}function Pa(e){if(e&&typeof e==`object`){let t=e;if(t.storage===`tool-result-ref`&&`summary`in t)return t.summary}return e}function Fa(e){if(e==null)return``;try{let t=typeof e==`string`?e:JSON.stringify(e,null,2);return!t||t===`{}`||t===`[]`||t===`""`?``:t.length>800?`${t.slice(0,800)}…`:t}catch{return``}}function Ia(e){return e.partsSig.value.some(e=>e.kind===`text`&&e.textSig.value.length>0)}function La(e){return e.partsSig.value.some(e=>e.kind===`reasoning`)}function Ra(e){return e.streaming&&!e.bufferedHold&&!(e.reasoningVisible&&e.working)}function za(e,t){let n=e.stateSig.value,r=e.approvalSig.value,{terminal:i,responded:a,decided:o}=Ca(n,r),s=t.superseded&&!o;return{pill:Ea(n,r,{superseded:s,live:t.live}),state:n,terminal:i,decided:o,showApproveReject:!o&&!t.superseded,showAnswered:a&&!i&&!s,showEdit:a&&t.active&&!i,skipped:s,answeredApproved:r?.approved}}function Ba({textSig:e,doneSig:t}){let n=s(null);return a(()=>{let r=n.current;if(!r)return;r.classList.add(`${y.cssPrefix}-md`);let i=v.default_renderer(r),a=v.parser(i),o=0,s=u(()=>{let n=e.value,s=t.value;n.length<o&&(r.replaceChildren(),i=v.default_renderer(r),a=v.parser(i),o=0);let c=n.slice(o);c&&v.parser_write(a,c),o=n.length,s&&v.parser_end(a)}),c=new MutationObserver(e=>{for(let t of e)for(let e of t.addedNodes){if(!(e instanceof HTMLElement))continue;let t=e.matches?.(`a`)?[e]:[...e.querySelectorAll?.(`a`)??[]];for(let e of t)Ha(e)}});c.observe(r,{childList:!0,subtree:!0});for(let e of r.querySelectorAll(`a`))Ha(e);let l=e=>{let t=e.target?.closest?.(`a`);if(!t||!(t instanceof HTMLAnchorElement))return;let n=t.getAttribute(`href`)??``;!n||n.startsWith(`#`)||(e.preventDefault(),window.open(n,`_blank`,`noopener,noreferrer`))};return r.addEventListener(`click`,l),()=>{s(),c.disconnect(),r.removeEventListener(`click`,l)}},[e,t]),h(`div`,{ref:n})}function Va({text:e}){return h(Ba,{textSig:o(()=>d(e),[e]),doneSig:o(()=>d(!0),[])})}function Ha(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(` `)}const Ua=y.cssPrefix;function Wa({messageId:e,initial:t,strings:n,onFeedback:r}){let[i,a]=c(t),o=t=>{let n=i===t?null:t;a(n),r(e,n)};return g(`div`,{class:`${Ua}-feedback`,role:`group`,"data-testid":G.messageFeedback,children:[h(`button`,{type:`button`,class:`${Ua}-msg-action`,"data-active":i===`up`?`true`:void 0,"aria-pressed":i===`up`,"aria-label":n.feedbackUp,title:n.feedbackUp,onClick:()=>o(`up`),"data-testid":G.feedbackUp,children:h(Zr,{})}),h(`button`,{type:`button`,class:`${Ua}-msg-action`,"data-active":i===`down`?`true`:void 0,"aria-pressed":i===`down`,"aria-label":n.feedbackDown,title:n.feedbackDown,onClick:()=>o(`down`),"data-testid":G.feedbackDown,children:h(Qr,{})}),h(`span`,{class:`${Ua}-sr-only`,role:`status`,"aria-live":`polite`,children:i?n.feedbackThanks:``})]})}const Ga=y.cssPrefix;function Ka({part:e,strings:t}){let n=e.title||e.filename||e.url||t.sources;return e.url?g(`a`,{class:`${Ga}-source`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,"data-testid":G.source,children:[h(`span`,{class:`${Ga}-source-icon`,"aria-hidden":`true`,children:`🔗`}),h(`span`,{class:`${Ga}-source-label`,children:n})]}):g(`span`,{class:`${Ga}-source`,"data-testid":G.source,children:[h(`span`,{class:`${Ga}-source-icon`,"aria-hidden":`true`,children:`📄`}),h(`span`,{class:`${Ga}-source-label`,children:n})]})}const J=y.cssPrefix;function qa({part:e,strings:t,active:n,superseded:r=!1,onDecision:i,onEdit:a}){let o=f(()=>e.approvalSig.value),s=f(()=>za(e,{active:n,superseded:r})).value,{terminal:c,showApproveReject:l,showAnswered:u,showEdit:d,skipped:p}=s,_=Sa(e.toolName),v=s.answeredApproved,y=e.toolCallId;return g(`div`,{class:`${J}-toolui-group`,"data-testid":s.decided?G.toolDecision:G.toolApproval,children:[h(Ma,{part:e,strings:t,superseded:p}),p||c?null:g(`div`,{class:`${J}-toolui ${J}-toolui-body`,children:[u?g(m,{children:[g(`p`,{class:`${J}-toolui-prompt`,children:[t.approvalYourResponse.replace(`{decision}`,v?t.approve:t.reject),o.value?.reason?` — ${o.value.reason}`:``]}),d?h(`p`,{class:`${J}-toolui-subtle`,children:t.approvalEditHint}):null,d?null:h(`p`,{class:`${J}-toolui-subtle`,children:t.approvalSubmitting})]}):g(m,{children:[h(`p`,{class:`${J}-toolui-prompt`,children:t.approvalPrompt.replace(`{tool}`,_)}),h(`p`,{class:`${J}-toolui-subtle`,children:t.approvalBody})]}),l?g(`div`,{class:`${J}-toolui-actions`,children:[h(`button`,{type:`button`,class:`${J}-form-skip`,onClick:()=>i(y,!1),"data-testid":G.toolReject,children:t.reject}),h(`button`,{type:`button`,class:`${J}-form-submit`,onClick:()=>i(y,!0),"data-testid":G.toolApprove,children:t.approve})]}):null,d?h(`div`,{class:`${J}-toolui-actions`,children:h(`button`,{type:`button`,class:`${J}-form-skip`,onClick:()=>a(y),"data-testid":G.toolEdit,children:t.edit})}):null]})]})}const Ja=new Set([`text`,`email`,`phone`,`number`,`date`,`single-select`,`multi-select`,`boolean`]);function Ya(e){let t=e&&typeof e==`object`?e:{},n=(Array.isArray(t.questions)?t.questions:[]).map(Xa).filter(e=>e!==null);return{intro:$a(t.intro),questions:n}}function Xa(e,t){if(!e||typeof e!=`object`)return null;let n=e,r=Ja.has(n.type)?n.type:`text`;return{key:$a(n.key)??`q${t+1}`,question:$a(n.question)??`Please provide the missing information.`,type:r,options:Array.isArray(n.options)?n.options.filter(e=>typeof e==`string`&&e.trim().length>0):void 0,required:typeof n.required==`boolean`?n.required:void 0,helpText:$a(n.helpText)}}function Za(e){switch(e){case`text`:return`textarea`;case`phone`:return`tel`;case`single-select`:case`boolean`:return`radio`;case`multi-select`:return`multiselect`;default:return e}}function Qa(e,t,n){return e.questions.map(e=>{let r=Za(e.type),i=e.type===`boolean`?[{value:`yes`,label:t},{value:`no`,label:n}]:(e.options??[]).map(e=>({value:e,label:e}));return{name:e.key,label:e.question,type:r,required:e.required??!1,options:i.length>0?i:void 0,validationHint:e.helpText}})}function $a(e){return typeof e==`string`&&e.trim()?e.trim():void 0}const Y=y.cssPrefix,eo={text:`qtypeText`,email:`qtypeEmail`,phone:`qtypePhone`,number:`qtypeNumber`,date:`qtypeDate`,"single-select":`qtypeChooseOne`,"multi-select":`qtypeChooseAny`,boolean:`qtypeBoolean`};function to(e,t){let n={};for(let r of e)n[r.key]=t[eo[r.type]];return n}function no({part:e,strings:t,active:n,superseded:r=!1,onDecision:i,onEdit:a}){let o=f(()=>e.stateSig.value).value,s=f(()=>e.approvalSig.value).value,l=f(()=>Ya(e.inputSig.value)).value,{terminal:u,decided:d}=Ca(o,s),p=d&&s?.approved===!0,m=!d&&!r,_=!m&&!p,v=p&&n&&!u,y=l.questions,[b,x]=c(null),S=b??(m||p),[C,w]=c(!1),T=y.length>1?ir:Nr,E=m?t.inputRequired:t.inputBadge,D=m?h(ro,{req:l,strings:t,active:n,resolve:(t,n)=>i(e.toolCallId,n,t)}):C?h(da,{fields:Qa(l,t.confirmYes,t.confirmNo),strings:t,submitLabel:t.inputSubmit,onSubmit:()=>{},disabled:!0,hideActions:!0,fieldTypeLabels:to(y,t),initialValues:p?lo(y,s?.reason):void 0}):h(io,{questions:y,answers:p?co(s?.reason):{},strings:t});return g(`details`,{class:`${Y}-toolui ${Y}-toolui-collapsible${r?` ${Y}-toolui-stale`:``}`,open:S,onToggle:e=>{let t=e.currentTarget.open;t!==S&&x(t)},"data-testid":m?G.toolAskQuestions:G.toolDecision,children:[g(`summary`,{class:`${Y}-toolui-head`,children:[g(`span`,{class:`${Y}-toolui-q-pill`,children:[h(T,{}),E]}),g(`span`,{class:`${Y}-toolui-head-end`,children:[m?null:h(wa,{status:_?`superseded`:`completed`,icon:h(_?ni:ti,{}),label:_?t.inputSkipped:t.inputAnswered}),h(`span`,{class:`${Y}-toolui-chevron`,children:h(kr,{})})]})]}),g(`div`,{class:`${Y}-toolui-collapse-body`,children:[l.intro?h(`div`,{class:`${Y}-toolui-desc`,children:l.intro}):null,D,m?null:g(`div`,{class:`${Y}-toolui-footer`,children:[g(`button`,{type:`button`,class:`${Y}-toolui-options-toggle`,onClick:()=>w(e=>!e),"data-testid":G.toolAskOptions,children:[h(`span`,{class:`${Y}-toolui-options-chevron${C?` ${Y}-open`:``}`,children:h(kr,{})}),C?t.hideOptions:t.showOptions]}),v?h(`button`,{type:`button`,class:`${Y}-form-skip`,onClick:()=>a(e.toolCallId),"data-testid":G.toolEdit,children:t.edit}):null]})]})]})}function ro({req:e,strings:t,active:n,resolve:r}){let i=Qa(e,t.confirmYes,t.confirmNo),a=e.questions.length===1&&e.questions[0]?.type===`text`;return h(da,{fields:i,strings:t,disabled:!n,submitLabel:t.inputSubmit,footerHint:a?t.inputSubmitHint:void 0,onSubmit:t=>r(oo(e.questions,t),!0),skipLabel:t.inputSkip,onSkip:()=>r(void 0,!1),submitOnEnter:a,fieldTypeLabels:to(e.questions,t),submitTestId:G.toolInputSubmit,skipTestId:G.toolInputSkip})}function io({questions:e,answers:t,strings:n}){return h(`div`,{class:`${Y}-toolui-summary`,"data-testid":G.toolAskSummary,children:e.map(e=>g(`div`,{class:`${Y}-field`,children:[h(`span`,{class:`${Y}-field-head`,children:g(`span`,{class:`${Y}-field-label`,children:[e.question,e.required?h(`span`,{class:`${Y}-field-req`,"aria-hidden":`true`,children:` *`}):null]})}),h(`p`,{class:`${Y}-toolui-answer`,children:ao(e,t[e.key],n)||`—`})]},e.key))})}function ao(e,t,n){return e.type===`boolean`?t===`yes`?n.confirmYes:t===`no`?n.confirmNo:t??``:t??``}function oo(e,t){let n=e.flatMap(e=>{let n=t[e.key];if(n==null||n.trim()===``)return[];let r=e.type===`multi-select`?n.split(`,`).map(e=>e.trim()).filter(Boolean):n;return[{key:e.key,value:r}]});return JSON.stringify({answers:n})}function so(e){if(!e)return{};let t=(()=>{try{return JSON.parse(e)}catch{return}})()?.answers;if(!Array.isArray(t))return{};let n={};for(let e of t)if(e&&typeof e==`object`&&`key`in e){let{key:t,value:r}=e;if(typeof t!=`string`)continue;typeof r==`string`?n[t]=r:Array.isArray(r)&&(n[t]=r.filter(e=>typeof e==`string`))}return n}function co(e){let t=so(e),n={};for(let[e,r]of Object.entries(t))n[e]=Array.isArray(r)?r.join(`, `):r;return n}function lo(e,t){let n=so(t),r={};for(let t of e){let e=n[t.key];e!==void 0&&(t.type===`multi-select`?r[t.key]=Array.isArray(e)?e:[e]:r[t.key]=Array.isArray(e)?e[0]??``:e)}return r}function uo({part:e,strings:t,live:n}){let r=f(()=>e.inputSig.value),i=f(()=>e.outputSig.value),a=f(()=>e.errorSig.value);return f(()=>!!Fa(r.value)||!!a.value||!!Fa(Pa(i.value))).value?h(Ma,{part:e,strings:t,testid:G.toolCall,live:n}):null}const X=y.cssPrefix,fo=_(po);function po({message:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,interactive:o=!1,superseded:s=!1,tool:c,onRetry:l,enableMessageFeedback:u=!1,onFeedback:d}){let p=f(()=>e.partsSig.value).value,m=f(()=>Bn(e)),_=f(()=>Vn(e)),v=f(()=>Ia(e)),y=f(()=>r&&La(e)),b=e.role===`assistant`&&e.status===`streaming`,x=n===`buffered`&&b,S=b&&!v.value,C=Ra({streaming:b,bufferedHold:x,reasoningVisible:y.value,working:S});if(_.value)return null;let w=ho(e.createdAt),T=e.role===`assistant`||e.role===`operator`,E=u&&!!d&&!!e.serverMessageId&&T&&!b&&e.status!==`error`&&!m.value,D=p.filter(e=>e.kind===`text`).map(e=>e.textSig.value).join(`
11
11
 
12
- `).trim(),O=!b&&e.status!==`error`&&!m.value&&D.length>0,k=E||O;return h(`div`,{class:`${X}-bubble-row`,"data-role":e.role,"data-testid":ii(G.messageBubble,e.serverMessageId??e.id),children:g(`div`,{class:`${X}-bubble-col`,children:[g(`div`,{class:`${X}-bubble`,children:[e.role===`operator`&&e.operatorInitials?h(`span`,{class:`${X}-bubble-author`,children:e.operatorInitials}):null,g(`div`,{class:`${X}-bubble-body`,children:[x?h(go,{label:t.loading}):p.map((n,l)=>h(uo,{part:n,active:S,live:b,strings:t,showReasoning:r,showToolCalls:i,showSources:a,interactive:o&&(n.kind!==`tool`||Fn(e,l)),superseded:s,tool:c},`${mo(n)}#${l}`)),C&&h(ho,{}),e.status===`error`&&e.errorText||m.value?g(`div`,{class:`${X}-error`,role:`alert`,children:[h(`span`,{children:e.errorText??t.errorGeneric}),l?h(`button`,{type:`button`,class:`${X}-error-retry`,onClick:l,"data-testid":G.messageRetry,children:t.errorRetry}):null]}):null]})]}),w||k?g(`div`,{class:`${X}-bubble-meta`,children:[w?h(`time`,{class:`${X}-bubble-time`,dateTime:w.iso,title:w.full,children:w.short}):null,k?g(`div`,{class:`${X}-bubble-actions`,children:[E&&e.serverMessageId?h(Ta,{messageId:e.serverMessageId,initial:e.feedback??null,strings:t,onFeedback:d}):null,O?h(co,{text:D,strings:t}):null]}):null]}):null]})})}function co({text:e,strings:t}){let[n,r]=c(!1),i=()=>{navigator.clipboard?.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1500)}).catch(()=>{})},a=n?t.copied:t.copy;return h(`button`,{type:`button`,class:`${X}-msg-action`,"data-active":n?`true`:void 0,"aria-label":a,title:a,onClick:i,"data-testid":G.messageCopy,children:h(n?wr:Xr,{})})}function lo(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 uo({part:e,active:t,live:n,strings:r,showReasoning:i,showToolCalls:a,showSources:o,interactive:s,superseded:c,tool:l}){switch(e.kind){case`step-start`:return null;case`text`:return h(xa,{textSig:e.textSig,doneSig:e.doneSig});case`reasoning`:return i?h(po,{part:e,active:t,strings:r}):null;case`tool`:return h(fo,{part:e,strings:r,showToolCalls:a,interactive:s,superseded:c,live:n,tool:l});case`file`:return e.mediaType.startsWith(`image/`)?h(`img`,{src:e.url,alt:``,loading:`lazy`}):h(`a`,{href:e.url,target:`_blank`,rel:`noreferrer noopener`,children:e.url});case`source`:return o?h(Da,{part:e,strings:r}):null}}function fo({part:e,strings:t,showToolCalls:n,interactive:r,superseded:i,live:a,tool:o}){let s=f(()=>e.approvalSig.value!==void 0);if(o?.humanInLoop){if(ba(e.toolName))return h(Za,{part:e,strings:t,active:r,superseded:i,onDecision:o.onDecision,onEdit:o.onEdit});if(s.value)return h(Ha,{part:e,strings:t,active:r,superseded:i,onDecision:o.onDecision,onEdit:o.onEdit})}return n?h(ao,{part:e,strings:t,live:a}):null}function po({part:e,active:t,strings:n}){return g(`details`,{class:`${X}-reasoning`,open:t,"data-active":t?`true`:void 0,children:[h(`summary`,{class:`${X}-reasoning-summary`,children:h(`span`,{class:`${X}-reasoning-label`,children:t?n.thinking:n.thoughts})}),h(`div`,{class:`${X}-reasoning-body`,children:h(xa,{textSig:e.textSig,doneSig:e.doneSig})})]})}function mo(e){switch(e.kind){case`text`:case`reasoning`:case`step-start`:return`${e.kind}:${e.id}`;case`tool`:return`tool:${e.toolCallId}`;case`file`:return`file:${e.url}`;case`source`:return`source:${e.sourceId}`}}function ho(){return g(`span`,{class:`${X}-typing`,"aria-hidden":`true`,children:[h(`span`,{}),h(`span`,{}),h(`span`,{})]})}function go({label:e}){return g(`span`,{class:`${X}-loading`,role:`status`,children:[h(`span`,{class:`${X}-loading-spinner`,"aria-hidden":`true`}),h(`span`,{class:`${X}-loading-label`,children:e})]})}const _o=y.cssPrefix;function vo({messagesSig:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:o,showSources:l,enableMessageFeedback:u,onFeedback:d,loading:p,idle:m,tool:_,onRetry:v,form:y,formMarkers:b,onFillForm:x}){let S=s(null),C=f(()=>e.value),[w,T]=c(!1),E=s(!1),D=s(!1),O=s(!1),k=s(0),A=()=>O.current||performance.now()-k.current<350,ee=s(0),te=e=>{let t=e.scrollHeight-e.clientHeight>1;e.dataset.fadeTop=t&&e.scrollTop>1?`true`:`false`,e.dataset.fadeBottom=t&&e.scrollHeight-e.scrollTop-e.clientHeight>1?`true`:`false`},ne=e=>T(e.scrollHeight-e.scrollTop-e.clientHeight>240),j=e=>{ee.current=performance.now(),e.scrollTop=e.scrollHeight,te(e)},re=(e,t)=>{j(e);let n=t,r=0,i=()=>{j(e),--n>0&&(r=requestAnimationFrame(i))};return t>0&&(r=requestAnimationFrame(i)),()=>cancelAnimationFrame(r)},ie=(e,t)=>{let n,r,i,a=-1,o=()=>{n.disconnect(),r.disconnect(),clearTimeout(i)},s=()=>{if(D.current||A()||a>=0&&e.scrollTop<a-4)return o();j(e),a=e.scrollTop};return n=new ResizeObserver(s),r=new MutationObserver(s),s(),n.observe(e),r.observe(e,{childList:!0,subtree:!0,characterData:!0}),i=setTimeout(o,t),o},ae=C.value[0]?.id;a(()=>{let e=S.current;if(e&&C.value.length!==0&&(E.current=!0,C.value.some(e=>e.role===`user`)))return ie(e,300)},[ae]);let oe=s(0);i(()=>{let e=S.current,t=C.value,n=oe.current;if(oe.current=t.length,e&&E.current){if(t.slice(n).some(e=>e.role===`user`))return D.current=!1,re(e,3);t.some(e=>e.role===`user`)&&(D.current||A()||e.scrollHeight-e.scrollTop-e.clientHeight<120&&j(e))}},[C.value.length]);let se=s(null);i(()=>{let e=S.current,t=C.value.at(-1),n=se.current;if(se.current=t?.id??null,e&&E.current&&!(!t||t.id!==n||t.status!==`streaming`))return D.current=!1,re(e,3)},[C.value]),i(()=>{let e=S.current;if(!e)return;let t=C.value.at(-1);if(!t||t.status!==`streaming`&&!C.value.some(e=>e.role===`user`))return;let n=()=>{D.current||A()||e.scrollHeight-e.scrollTop-e.clientHeight<240&&j(e)};if(t.status!==`streaming`)return ie(e,300);n();let r=new MutationObserver(n);return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>r.disconnect()},[C.value]);let ce=y?.form.id,M=!!y&&(b??[]).some(e=>e.formId===y.form.id);a(()=>{let e=S.current;!e||!ce||D.current||C.value.some(e=>e.role===`user`)&&(M?e.querySelector(`[data-testid="${G.formGate}"]`)?.scrollIntoView({block:`nearest`}):j(e))},[ce,M]),i(()=>{let e=S.current;if(!e)return;let t=()=>{ne(e),te(e),performance.now()-ee.current>150&&(D.current=e.scrollHeight-e.scrollTop-e.clientHeight>8)},n=()=>{D.current=!0},r=e=>{e.deltaY<0&&n()},i=0,a=e=>{i=e.touches[0]?.clientY??0,O.current=!0},o=e=>{(e.touches[0]?.clientY??0)>i+4&&n()},s=()=>{O.current=!1,k.current=performance.now()},c=()=>{O.current=!0};return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`wheel`,r,{passive:!0}),e.addEventListener(`touchstart`,a,{passive:!0}),e.addEventListener(`touchmove`,o,{passive:!0}),e.addEventListener(`touchend`,s,{passive:!0}),e.addEventListener(`touchcancel`,s,{passive:!0}),e.addEventListener(`pointerdown`,c,{passive:!0}),window.addEventListener(`pointerup`,s,{passive:!0}),window.addEventListener(`pointercancel`,s,{passive:!0}),ne(e),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`wheel`,r),e.removeEventListener(`touchstart`,a),e.removeEventListener(`touchmove`,o),e.removeEventListener(`touchend`,s),e.removeEventListener(`touchcancel`,s),e.removeEventListener(`pointerdown`,c),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[]);let le=()=>{let e=S.current;e&&(D.current=!1,j(e))},ue=[],de=``,fe=C.value.at(-1)?.id,N=[...b??[]].toSorted((e,t)=>(e.createdAt??1/0)-(t.createdAt??1/0)),pe=e=>y&&e.formId===y.form.id?h(va,{form:y.form,strings:t,onSubmit:y.onSubmit,onSkip:y.onSkip},`gate:${e.formId}`):h(ya,{marker:e,strings:t,onFill:!y&&x?()=>x(e.formId):void 0},e.key),me=e=>{for(let t=N[0];t?.createdAt!==void 0&&!(e!==void 0&&t.createdAt>e);t=N[0])N.shift(),ue.push(pe(t))};for(let e of C.value){if(e.role===`assistant`&&e.id!==fe&&Bn(e))continue;me(e.createdAt);let i=yo(e.createdAt);i&&i!==de&&(ue.push(h(`div`,{class:`${_o}-date-divider`,children:h(`span`,{class:`${_o}-date-pill`,title:bo(e.createdAt),children:xo(e.createdAt,t)})},`day:${i}`)),de=i),ue.push(h(oo,{message:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:o,showSources:l,interactive:!!m&&e.id===fe,superseded:e.id!==fe,tool:_,onRetry:m&&e.id===fe?v:void 0,enableMessageFeedback:u,onFeedback:d},e.id))}for(let e of N)ue.push(pe(e));return g(`div`,{class:`${_o}-list-wrap`,children:[g(`div`,{ref:S,class:`${_o}-list ${_o}-list--fade`,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,children:[p&&C.value.length===0?h(`div`,{class:`${_o}-list-loading`,role:`status`,children:t.conversationLoading}):null,ue,y&&!M?h(va,{form:y.form,strings:t,onSubmit:y.onSubmit,onSkip:y.onSkip}):null]}),w?h(`button`,{type:`button`,class:`${_o}-jump`,onClick:le,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":G.scrollToBottom,children:h(kr,{})}):null]})}function yo(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function bo(e){if(typeof e!=`number`||!Number.isFinite(e))return``;try{return new Date(e).toLocaleDateString(void 0,{dateStyle:`full`})}catch{return``}}function xo(e,t){let n=new Date(e),r=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime(),i=Math.round((r(new Date)-r(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`})}const So=[`today`,`yesterday`,`lastWeek`,`older`];function Co(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return`older`;let r=Math.floor((To(e)-To(n))/(1440*60*1e3));return r<=0?`today`:r===1?`yesterday`:r<7?`lastWeek`:`older`}function wo(e,t){let n=new Map;for(let r of t){let t=Co(e,r.lastMessageAt),i=n.get(t);i?i.push(r):n.set(t,[r])}return So.filter(e=>n.has(e)).map(e=>({bucket:e,conversations:n.get(e)}))}function To(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}const Eo=M.scope(`history`),Do={today:`dateToday`,yesterday:`dateYesterday`,lastWeek:`dateLastWeek`,older:`dateOlder`};function Oo(e,t,n){let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:`numeric`,minute:`2-digit`}).format(r):t-r<10080*60*1e3?new Intl.DateTimeFormat(n,{weekday:`short`}).format(r):new Intl.DateTimeFormat(n,{month:`short`,day:`numeric`}).format(r):``}function ko({transport:e,strings:t,locale:n,persistence:r,visitorId:a,onSelect:o,onNewConversation:s}){let l=y.cssPrefix,u=e.peekConversations({visitorId:a}),[d,f]=c(u?`loaded`:`loading`),[p,_]=c(u?.conversations??[]);i(()=>{let t=!1;return e.listConversations({visitorId:a}).then(e=>{if(t)return;let n=e.conversations??[];_(n),f(`loaded`),r.saveHistoryCount(n.length)}).catch(e=>{t||(Eo.warn(`listConversations failed`,{err:e}),f(`error`))}),()=>{t=!0}},[e,a,r]);let v=s?h(`div`,{class:`${l}-history-footer`,children:g(`button`,{type:`button`,class:`${l}-history-new`,onClick:s,"data-testid":G.sidebarNewConversation,children:[h(or,{}),t.newConversation]})}):null;if(d===`loading`){let e=Math.min(r.loadHistoryCount()??3,6);return g(m,{children:[h(`div`,{class:`${l}-history`,"aria-busy":`true`,"aria-label":t.historyLoading,children:g(`div`,{class:`${l}-history-group`,"aria-hidden":`true`,children:[h(`div`,{class:`${l}-history-heading`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-heading`})}),h(`div`,{class:`${l}-history-card`,children:Array.from({length:Math.max(1,e)},(e,t)=>g(`div`,{class:`${l}-history-item ${l}-history-item-skeleton`,children:[h(`span`,{class:`${l}-history-avatar ${l}-skeleton`}),g(`span`,{class:`${l}-history-body`,children:[g(`span`,{class:`${l}-history-row`,children:[h(`span`,{class:`${l}-history-title`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-title`})}),h(`span`,{class:`${l}-history-time`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-time`})})]}),h(`span`,{class:`${l}-history-row`,children:h(`span`,{class:`${l}-history-preview`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-preview`})})})]})]},t))})]})}),v]})}if(d===`error`||p.length===0)return g(m,{children:[h(`div`,{class:`${l}-history-empty`,children:t.historyEmpty}),v]});let b=Date.now(),x=wo(b,p);return g(m,{children:[h(`div`,{class:`${l}-history`,role:`list`,children:x.map(e=>g(`div`,{class:`${l}-history-group`,children:[h(`div`,{class:`${l}-history-heading`,children:t[Do[e.bucket]]}),h(`div`,{class:`${l}-history-card`,children:e.conversations.map(e=>g(`button`,{type:`button`,role:`listitem`,class:`${l}-history-item`,onClick:()=>o(e),"data-closed":e.canContinue?void 0:`true`,"data-unread":e.hasUnread?`true`:void 0,"data-testid":ii(G.historyItem,e.conversationId),children:[h(`span`,{class:`${l}-history-avatar`,"aria-hidden":`true`,children:h(Mr,{})}),g(`span`,{class:`${l}-history-body`,children:[g(`span`,{class:`${l}-history-row`,children:[h(`span`,{class:`${l}-history-title`,children:e.title}),h(`span`,{class:`${l}-history-time`,children:Oo(e.lastMessageAt,b,n)})]}),g(`span`,{class:`${l}-history-row`,children:[h(`span`,{class:`${l}-history-preview`,children:e.preview??(e.canContinue?t.historyContinue:t.conversationClosed)}),e.hasUnread?h(`span`,{class:`${l}-history-dot`}):null]})]})]},e.conversationId))})]},e.bucket))}),v]})}const Ao=y.cssPrefix;function jo({suggestions:e,onPick:t}){return e.length===0?null:h(`div`,{class:`${Ao}-suggestions`,role:`group`,"aria-label":`Suggested replies`,children:e.map((e,n)=>h(`button`,{type:`button`,class:`${Ao}-suggestion`,onClick:()=>t(e),"data-testid":ii(G.suggestion,n),children:e.label},e.id))})}const Z=y.cssPrefix;function Mo(e){let{options:t,onClose:n}=e,a=t.strings,o=s(null);i(()=>{let e=o.current;if(!e)return;let t=yi(e),r=e=>{e.key===`Escape`&&n?.()};return e.addEventListener(`keydown`,r),()=>{t(),e.removeEventListener(`keydown`,r)}},[n]);let c=e.composerApiRef,{visible:l}=qi({containerRef:o,onDrop:r(e=>{c.current?.attachFromDrop(e)},[c])});return hi(o.current,t.mode===`modal`),g(`div`,{ref:o,class:`${Z}-panel`,role:`dialog`,"aria-modal":`false`,"aria-label":a.panelTitle,style:{position:`relative`},"data-testid":G.panel,children:[h(No,{...e,containerEl:o.current,dragOver:l,composerAttachApiRef:c}),h(zo,{poweredBy:e.options.poweredBy})]})}function No(e){let{options:t,transport:n,feedback:r,bus:i,persistence:a,panelSize:o,view:s,canSend:c,isStreaming:l,controlMode:u,assignedOperatorInitials:d,operatorAvailable:f,operatorRequestEnabled:p,onRequestOperator:_,onCancelRequest:v,loadingMessages:y,messagesSig:b,agent:x,suggestions:S,initialWidgetSize:C,visitorId:w,onClose:T,onBack:E,onClear:D,onToggleHistory:O,onSelectHistoryConversation:k,onNewConversation:A,onWidgetSizeChange:ee,onSend:te,onStop:ne,onSuggestion:j,activeForm:re,formMarkers:ie,onFormSubmit:ae,onFormSkip:oe,onFormFill:se,tool:ce,onRetry:M,onMessageFeedback:le,containerEl:ue,dragOver:de,composerAttachApiRef:fe}=e,N=t.strings,pe;return pe=re?null:c?g(m,{children:[u&&u!==`ai-agent`?h(Io,{controlMode:u,operatorInitials:d,operatorAvailable:f,onCancelRequest:v,strings:N}):null,!l&&u===`ai-agent`&&h(jo,{suggestions:S,onPick:j}),h(Wi,{options:t,transport:n,feedback:r,bus:i,isStreaming:l,operatorRequestEnabled:p,controlMode:u,onRequestOperator:_,onSend:te,onStop:ne,attachApiRef:fe})]}):h(Fo,{label:N.conversationClosed,ctaLabel:N.startNewConversation,onNewConversation:D}),g(m,{children:[s===`history`?h(Po,{strings:N,onBack:O,onClose:T,showClose:_i(t.mode,o,t.actions)}):g(`header`,{class:`${Z}-header`,"data-testid":G.panelHeader,children:[E?h(`button`,{type:`button`,class:`${Z}-icon-btn`,onClick:E,"aria-label":N.moduleBack,title:N.moduleBack,children:h(Dr,{})}):null,x?h(Si,{agent:x,strings:N}):h(`h1`,{children:N.panelTitle}),h(ta,{panelProps:e,variant:`chat`})]}),s===`history`?h(ko,{transport:n,strings:N,locale:t.locale,persistence:a,visitorId:w,onSelect:e=>k(e.conversationId),onNewConversation:A}):g(m,{children:[h(Ki,{visible:de,strings:N}),h(vo,{messagesSig:b,strings:N,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,showSources:t.showSources,enableMessageFeedback:t.enableMessageFeedback,onFeedback:le,loading:y,idle:!l,tool:ce,onRetry:M,form:re?{form:re,onSubmit:ae,onSkip:oe}:null,formMarkers:ie,onFillForm:se}),pe,h(Ro,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?h(fi,{panelEl:ue,resize:t.size.resize,position:t.position,initialSize:C,onSizeChange:ee,strings:N}):null]})}function Po({strings:e,onBack:t,onClose:n,showClose:r}){return g(`header`,{class:`${Z}-header`,children:[h(`button`,{type:`button`,class:`${Z}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:h(Dr,{})}),h(`h1`,{children:e.historyTitle}),r?h(`button`,{type:`button`,class:`${Z}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:h(ar,{})}):null]})}function Fo({label:e,ctaLabel:t,onNewConversation:n}){return g(`div`,{class:`${Z}-readonly-banner`,role:`note`,children:[h(`span`,{class:`${Z}-readonly-label`,children:e}),h(`button`,{type:`button`,class:`${Z}-readonly-cta`,onClick:n,children:t})]})}function Io({controlMode:e,operatorInitials:t,operatorAvailable:n,onCancelRequest:r,strings:i}){let a=Lo(e,t,n,i);return g(`div`,{class:`${Z}-operator-banner`,role:`status`,"data-mode":e,"data-testid":G.operatorBanner,children:[h(`span`,{class:`${Z}-operator-pulse`,"aria-hidden":`true`}),h(`span`,{class:`${Z}-operator-label`,children:a}),e===`awaiting_operator`&&r?h(`button`,{type:`button`,class:`${Z}-operator-cancel`,"data-testid":G.operatorCancelRequest,onClick:r,children:i.cancelOperatorRequest}):null]})}function Lo(e,t,n,r){return e===`operator`?r.chattingWithOperator.replace(`{operator}`,t??``):n===!1?r.noOperatorAvailable:r.connectingOperator}function Ro({disclaimer:e}){return e?h(`div`,{class:`${Z}-composer-footer`,children:h(`div`,{class:`${Z}-disclaimer`,children:e})}):null}function zo({poweredBy:e}){return e?h(`div`,{class:`${Z}-poweredby-bar`,children:h(Bo,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function Bo({logoUrl:e,text:t,href:n}){let r=g(m,{children:[e?h(`img`,{class:`${Z}-poweredby-logo`,src:e,alt:``,loading:`lazy`}):null,t?h(`span`,{children:t}):null]});return n?h(`a`,{class:`${Z}-poweredby`,href:n,target:`_blank`,rel:`noopener noreferrer`,children:r}):h(`span`,{class:`${Z}-poweredby`,children:r})}function Vo(e){let t=s(e);t.current=e;let n=s(null);return n.current??(n.current=Ho(t)),n.current}function Ho(e){let t=d(null),n=new Set,r=t=>`${e.current.conversationId()??``}:${t}`,i=t=>t.frequency===`always`?!1:t.frequency===`conversation`?n.has(r(t.id)):t.id in e.current.persistence.loadFormsDone(),a=(n,r)=>{if(t.value)return;let a=e.current;if(n===`manual`){let e=a.forms.list.find(e=>e.id===r);e&&(t.value={form:e,trigger:`manual`});return}for(let e of a.forms.byTrigger[n]??[]){let r=e.triggers.find(e=>e.kind===n);if(!(!r||!Uo(r,a)||i(e)||!Wo(e,a))){t.value={form:e,trigger:n};return}}},o=(i,a)=>{let o=t.value;if(!o)return;t.value=null;let{form:s,trigger:c}=o;s.frequency===`conversation`?n.add(r(s.id)):s.frequency!==`always`&&e.current.persistence.saveFormDone(s.id),e.current.onComplete(s,c,i,a)};return{activeForm:t,fire:a,refresh:()=>{let n=t.value;if(!n)return;let r=e.current.forms.list.find(e=>e.id===n.form.id);r&&r!==n.form&&(t.value={form:r,trigger:n.trigger})},complete:e=>o(e,!1),skip:()=>o({},!0)}}function Uo(e,t){return e.kind===`after-messages`?t.messageCount()>=Number(e.param??0):e.kind!==`page-area`||t.pageArea()===e.param}function Wo(e,t){let n=e.when;if(!n)return!0;if(n.missingContext?.length){let e=t.userContext()??{};if(n.missingContext.some(t=>e[t]!==void 0&&e[t]!==``))return!1}if(n.pageArea&&!(Array.isArray(n.pageArea)?n.pageArea:[n.pageArea]).includes(t.pageArea()??``))return!1;let r=t.messageCount();return!(n.minMessages!=null&&r<n.minMessages||n.maxMessages!=null&&r>n.maxMessages)}function Go(e){let t=y.cssPrefix,{site:n,blocks:r,strings:i,collapsed:a}=e,o=r?.navigation??[],s=r?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return g(`aside`,{class:`${t}-sidebar`,"data-collapsed":a?`true`:`false`,"data-testid":G.sidebar,children:[g(`div`,{class:`${t}-sidebar-header`,children:[h(Ko,{site:n}),h(`button`,{type:`button`,class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?`false`:`true`,title:c,onClick:e.onToggleCollapsed,"data-testid":G.sidebarToggle,children:h(qo,{collapsed:a})})]}),a?null:g(m,{children:[o.length>0?h(`nav`,{class:`${t}-sidebar-section`,"data-section":`navigation`,children:h(Jo,{items:o})}):null,s.length>0?h(`div`,{class:`${t}-sidebar-section`,"data-section":`link-cards`,children:h(Yo,{items:s})}):null,e.showConversations?h(`div`,{class:`${t}-sidebar-conversations`,children:h(ko,{transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function Ko({site:e}){let t=y.cssPrefix;if(e?.logo?.url){let n=e.logo.alt??e.title??`Logo`;return g(`picture`,{children:[e.logoDark?.url?h(`source`,{srcset:e.logoDark.url,media:`(prefers-color-scheme: dark)`}):null,h(`img`,{class:`${t}-sidebar-logo`,src:e.logo.url,alt:n})]})}return h(`div`,{class:`${t}-sidebar-title`,children:e?.title??y.name})}function qo({collapsed:e}){return h(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"aria-hidden":`true`,children:e?h(`polyline`,{points:`9 6 15 12 9 18`}):h(`polyline`,{points:`15 6 9 12 15 18`})})}function Jo({items:e}){let t=y.cssPrefix;return h(`ul`,{class:`${t}-sidebar-nav`,children:e.map(e=>h(`li`,{children:g(`a`,{class:`${t}-sidebar-nav-item`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[e.icon?h(`span`,{class:`${t}-sidebar-nav-icon`,"data-icon":e.icon}):null,h(`span`,{class:`${t}-sidebar-nav-label`,children:e.label})]})},e.id??e.label))})}function Yo({items:e}){let t=y.cssPrefix;return h(`div`,{class:`${t}-sidebar-cards`,children:e.map(e=>g(`a`,{class:`${t}-sidebar-card`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[h(`div`,{class:`${t}-sidebar-card-label`,children:e.label}),e.description?h(`div`,{class:`${t}-sidebar-card-desc`,children:e.description}):null]},e.id??e.label))})}const Xo=y.cssPrefix;function Zo(e){return g(`main`,{class:`${Xo}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?`true`:`false`,children:[h(Go,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,visitorId:e.visitorId,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),h(`section`,{class:`${Xo}-page-chat`,"aria-label":`Chat`,children:e.children})]})}const Qo=e=>Object.fromEntries(e.map(e=>[e,[]]));function $o(e,t,n){let r=d({activeTab:e,stacks:Qo(t)});return{sig:r,switchTab(e){r.value.activeTab!==e&&(r.value={...r.value,activeTab:e},n?.(e))},push(e){let t=r.value,n=t.stacks[t.activeTab]??[];r.value={...t,stacks:{...t.stacks,[t.activeTab]:[...n,e]}}},pop(){let e=r.value,t=e.stacks[e.activeTab]??[];t.length!==0&&(r.value={...e,stacks:{...e.stacks,[e.activeTab]:t.slice(0,-1)}})},reset(e){r.value={activeTab:e,stacks:Qo(t)}}}}const es=e=>e.stacks[e.activeTab]??[],ts=e=>es(e).at(-1),ns=e=>es(e).length===0,rs={Icon:Hr},is=y.cssPrefix;function as({title:e,actions:t}){return g(`header`,{class:`${is}-back-header`,"data-variant":`title`,children:[h(`span`,{class:`${is}-back-spacer`,"aria-hidden":`true`}),h(`h1`,{class:`${is}-back-title`,children:e}),t??h(`span`,{class:`${is}-back-spacer`,"aria-hidden":`true`})]})}function os({title:e,backLabel:t,onBack:n,actions:r,testid:i}){return g(`header`,{class:`${is}-back-header`,"data-testid":i,children:[h(`button`,{type:`button`,class:`${is}-icon-btn`,onClick:n,"aria-label":t,title:t,children:h(Dr,{})}),h(`h1`,{class:`${is}-back-title`,children:e}),r??h(`span`,{class:`${is}-back-spacer`,"aria-hidden":`true`})]})}function ss(e,t){return e instanceof Ut&&e.status===429?t.errorRateLimited:t.errorGeneric}const cs=y.cssPrefix;function ls({placeholder:e,onActivate:t}){return g(`button`,{type:`button`,class:`${cs}-home-search`,onClick:t,"data-testid":G.homeSearch,children:[h(`span`,{class:`${cs}-home-search-text`,children:e}),h(`span`,{class:`${cs}-home-search-icon`,"aria-hidden":`true`,children:h(Rr,{})})]})}function us({placeholder:e,value:t,onInput:n}){return g(`div`,{class:`${cs}-home-search`,"data-input":`true`,children:[h(`input`,{type:`search`,class:`${cs}-home-search-input`,placeholder:e,value:t,onInput:e=>n(e.currentTarget.value),"data-testid":G.helpSearch}),h(`span`,{class:`${cs}-home-search-icon`,"aria-hidden":`true`,children:h(Rr,{})})]})}const ds=y.cssPrefix;function fs({title:e,subtitle:t,onClick:n,testid:r}){return g(`button`,{type:`button`,class:`${ds}-list-row`,onClick:n,"data-testid":r,children:[g(`span`,{class:`${ds}-list-row-body`,children:[h(`span`,{class:`${ds}-list-row-title`,children:e}),t?h(`span`,{class:`${ds}-list-row-sub`,children:t}):null]}),h(`span`,{class:`${ds}-list-row-chevron`,"aria-hidden":`true`,children:h(ur,{})})]})}const ps=y.cssPrefix;function ms({tone:e=`info`,message:t,onRetry:n,strings:r}){return g(`div`,{class:`${ps}-module-empty`,role:e===`error`?`alert`:`status`,"aria-live":`polite`,children:[h(`span`,{children:t}),n?h(`button`,{type:`button`,class:`${ps}-module-retry`,onClick:n,children:r.errorRetry}):null]})}const hs=y.cssPrefix,gs=M.scope(`help`),_s=(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 vs(e){let t=new Map;for(let n of e){let e=n.categories?.[0]??``;(t.get(e)??t.set(e,[]).get(e)).push(n)}return[...t.entries()]}function ys(e,t){let n=t.toLowerCase(),r=n.indexOf(e);if(r!==-1)return 100-Math.min(r,99);let i=0;for(let t of e){if(i=n.indexOf(t,i),i===-1)return 0;i+=1}return 1}function bs(e,t){let n=t.toLowerCase().trim();return n?e.map(e=>({item:e,score:Math.max(ys(n,e.title)*2,ys(n,e.description??``))})).filter(e=>e.score>0).toSorted((e,t)=>t.score-e.score).map(e=>e.item):[]}function xs({article:e,nav:t}){return h(fs,{title:e.title,subtitle:e.description,onClick:()=>_s(t,e),testid:ii(G.helpArticle,e.id)})}function Ss({transport:e,strings:t,config:n,nav:r,bus:a,panelProps:s}){let l=n.contentTags,[u,d]=c(`loading`),[f,p]=c(t.errorGeneric),[m,_]=c([]),[v,y]=c(``),[b,x]=c(0);i(()=>{let n=!1;return d(`loading`),e.listContent({tags:l,sortBy:`order`,limit:100}).then(e=>{if(n)return;let t=e.items??[];_(t),d(`loaded`),a.emit(`contentView`,{section:`help`,tags:l?.join(`,`),count:t.length})}).catch(e=>{n||(gs.warn(`listContent (help) failed`,{err:e}),p(ss(e,t)),d(`error`))}),()=>{n=!0}},[e,l,b,a]);let S=o(()=>bs(m,v),[m,v]);i(()=>{let e=v.trim();if(!e)return;let t=setTimeout(()=>a.emit(`contentSearch`,{queryLength:e.length,hitCount:S.length}),600);return()=>clearTimeout(t)},[v,S,a]);function C(){return v.trim().length>0?S.length===0?h(ms,{message:t.helpSearchEmpty,strings:t}):h(`div`,{class:`${hs}-help-card`,children:S.map(e=>h(xs,{article:e,nav:r},e.id))}):u===`loading`?h(ms,{message:t.helpLoading,strings:t}):u===`error`?h(ms,{tone:`error`,message:f,onRetry:()=>x(e=>e+1),strings:t}):m.length===0?h(ms,{message:t.helpEmpty,strings:t}):vs(m).map(([e,t])=>g(`section`,{class:`${hs}-help-group`,children:[e?h(`h2`,{class:`${hs}-help-section-title`,children:e}):null,h(`div`,{class:`${hs}-help-card`,children:t.map(e=>h(xs,{article:e,nav:r},e.id))})]},e))}return g(`div`,{class:`${hs}-module`,children:[h(as,{title:t.helpTitle,actions:h(ta,{panelProps:s,variant:`plain`})}),h(`div`,{class:`${hs}-module-pad`,children:h(us,{placeholder:t.helpSearchPlaceholder,value:v,onInput:y})}),h(`div`,{class:`${hs}-help-list`,children:C()})]})}const Cs={Icon:Nr,Root:e=>h(Ss,{...e})},ws=y.cssPrefix;function Ts({onClick:e,children:t,testid:n}){return e?h(`button`,{type:`button`,class:`${ws}-home-card`,"data-interactive":`true`,onClick:e,"data-testid":n,children:t}):h(`div`,{class:`${ws}-home-card`,"data-testid":n,children:t})}const Q=y.cssPrefix,Es=M.scope(`home`);function Ds(e){let t=e.options.userContext?.name,n=e.config.greetingText?E(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}}const Os=(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 ks(e){let{transport:t,strings:n,config:r,nav:a,bus:o,panelProps:s}=e,[l,u]=c(null),[d,f]=c([]),p=r.contentTags?.join(`,`);i(()=>{if(r.showRecentConversations===!1)return;let e=!1;return t.listConversations({limit:1}).then(t=>!e&&u(t.conversations?.[0]??null)).catch(t=>!e&&Es.warn(`listConversations (home) failed`,{err:t})),()=>{e=!0}},[t,r.showRecentConversations]),i(()=>{if(!r.contentTags?.length)return;let e=!1;return t.listContent({tags:r.contentTags,limit:6}).then(t=>{if(e)return;let n=t.items??[];f(n),o.emit(`contentView`,{section:`home`,tags:p,count:n.length})}).catch(t=>!e&&Es.warn(`listContent (home) failed`,{err:t})),()=>{e=!0}},[t,p,o]);let _=Ds(e),v=r.userAvatars??[],y=r.status,b=y?.text?E(n,y.text):n.homeStatus,x=r.contentBlockTitle?E(n,r.contentBlockTitle):n.homeContentTitle;return h(`div`,{class:`${Q}-module ${Q}-home`,"data-testid":G.homeView,children:g(`div`,{class:`${Q}-home-scroll`,children:[g(`div`,{class:`${Q}-home-hero`,children:[g(`div`,{class:`${Q}-home-hero-top`,children:[r.brandName?h(`span`,{class:`${Q}-home-brand`,"data-testid":G.homeBrand,children:r.brandName}):h(`span`,{class:`${Q}-home-brand-spacer`,"aria-hidden":`true`}),g(`div`,{class:`${Q}-home-hero-actions`,children:[v.length>0?h(`div`,{class:`${Q}-home-avatars`,children:v.map(e=>h(`span`,{class:`${Q}-home-avatar`,title:e.role?`${e.name} · ${e.role}`:e.name,children:e.avatar?h(`img`,{src:e.avatar,alt:``,loading:`lazy`}):h(`span`,{children:bi(e.name)})},e.name))}):null,h(ta,{panelProps:s,variant:`plain`})]})]}),r.showGreeting===!1?null:g(m,{children:[h(`h1`,{class:`${Q}-home-greeting`,"data-testid":G.homeGreeting,children:_.title}),_.subtitle?h(`p`,{class:`${Q}-home-lead`,children:_.subtitle}):null]})]}),g(`div`,{class:`${Q}-home-cards`,children:[r.showSearchBar===!1?null:h(ls,{placeholder:n.homeSearchPlaceholder,onActivate:()=>a.switchToLayout(`help`)}),l?h(Ts,{onClick:()=>a.selectConversation(l.conversationId),testid:G.homeRecent,children:g(`div`,{class:`${Q}-home-recent-row`,"data-unread":l.hasUnread?`true`:void 0,children:[h(`span`,{class:`${Q}-home-recent-avatar`,"aria-hidden":`true`,children:h(Hr,{})}),g(`span`,{class:`${Q}-home-recent-body`,children:[h(`span`,{class:`${Q}-home-recent-title`,children:l.title}),l.preview?h(`span`,{class:`${Q}-home-recent-preview`,children:l.preview}):null]}),l.hasUnread?h(`span`,{class:`${Q}-home-recent-dot`,"aria-label":`Unread`}):null]})}):null,y?h(Ts,{onClick:y.url?()=>a.push({kind:`iframe`,url:y.url,title:b}):void 0,children:g(`div`,{class:`${Q}-home-status`,"data-level":y.level??`operational`,children:[h(`span`,{class:`${Q}-home-status-icon`,"aria-hidden":`true`,children:h(zr,{})}),h(`span`,{class:`${Q}-home-status-text`,children:b})]})}):null,d.length>0?g(`section`,{class:`${Q}-home-content`,children:[h(`div`,{class:`${Q}-home-content-title`,children:x}),h(`div`,{class:`${Q}-home-content-list`,children:d.map(e=>h(fs,{title:e.title,subtitle:e.description,onClick:()=>Os(a,e),testid:ii(G.homeContentRow,e.id)},e.id))})]}):null]})]})})}const As={Icon:Br,Root:e=>h(ks,{...e})},js=y.cssPrefix,Ms=M.scope(`news`);function Ns({transport:e,strings:t,config:n,nav:r,bus:a,panelProps:o}){let s=n.contentTags,[l,u]=c(`loading`),[d,f]=c(t.errorGeneric),[p,m]=c([]),[_,v]=c(0);i(()=>{let n=!1;return u(`loading`),e.listContent({tags:s,sortBy:`publishedAt`,sortOrder:`desc`}).then(e=>{if(n)return;let t=e.items??[];m(t),u(`loaded`),a.emit(`contentView`,{section:`news`,tags:s?.join(`,`),count:t.length})}).catch(e=>{n||(Ms.warn(`listContent (news) failed`,{err:e}),f(ss(e,t)),u(`error`))}),()=>{n=!0}},[e,s,_,a]);function y(){return l===`loading`?h(ms,{message:t.newsLoading,strings:t}):l===`error`?h(ms,{tone:`error`,message:d,onRetry:()=>v(e=>e+1),strings:t}):p.length===0?h(ms,{message:t.newsEmpty,strings:t}):h(`div`,{class:`${js}-news-list`,children:p.map(e=>g(`button`,{type:`button`,class:`${js}-news-card`,onClick:()=>r.push({kind:`content`,id:e.id,title:e.title}),"data-testid":ii(G.newsItem,e.id),children:[e.image?h(`img`,{class:`${js}-news-hero`,src:e.image,alt:``,loading:`lazy`}):null,g(`span`,{class:`${js}-news-body`,children:[h(`span`,{class:`${js}-news-title`,children:e.title}),e.description?h(`span`,{class:`${js}-news-summary`,children:e.description}):null]})]},e.id))})}return g(`div`,{class:`${js}-module`,children:[h(as,{title:t.newsTitle,actions:h(ta,{panelProps:o,variant:`plain`})}),h(`div`,{class:`${js}-module-scroll`,children:y()})]})}const Ps={chat:rs,home:As,help:Cs,news:{Icon:Vr,Root:e=>h(Ns,{...e})}},Fs=y.cssPrefix;function Is({modules:e,activeTab:t,strings:n,hasUnread:r,onSelect:i}){return h(`nav`,{class:`${Fs}-tabbar`,role:`tablist`,"aria-label":n.panelTitle,children:e.map(e=>{let a=Ps[e.layout].Icon,o=e.id===t,s=e.layout===`chat`&&r;return g(`button`,{type:`button`,role:`tab`,"aria-selected":o,class:`${Fs}-tab`,onClick:()=>i(e.id),"data-testid":ii(G.tab,e.id),children:[g(`span`,{class:`${Fs}-tab-icon`,"aria-hidden":`true`,children:[h(a,{}),s?h(`span`,{class:`${Fs}-tab-badge`,"data-testid":G.tabBadge,"aria-label":`Unread`}):null]}),h(`span`,{class:`${Fs}-tab-label`,children:E(n,e.label)})]},e.id)})})}const Ls=y.cssPrefix;function Rs({url:e,title:t,strings:n,onBack:r,actions:i}){return g(`div`,{class:`${Ls}-module`,children:[h(os,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:r,actions:i}),h(`iframe`,{class:`${Ls}-content-frame`,src:e,title:t||`content`,sandbox:`allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads`,referrerpolicy:`no-referrer`,loading:`lazy`,allow:`fullscreen`})]})}const zs=y.cssPrefix,Bs=M.scope(`content`);function Vs({id:e,title:t,transport:n,strings:a,bus:o,onBack:s,actions:l}){let[u,d]=c(null),[f,p]=c(!1),[m,_]=c(0),v=r(()=>{p(!1),d(null),_(e=>e+1)},[]);i(()=>{let t=!1;return n.listContent({ids:[e],limit:1}).then(n=>{if(t)return;let r=n.items[0];r?(d(r),o.emit(`contentOpen`,{contentId:e,tags:r.tags?.length?r.tags.join(`,`):void 0})):p(!0)}).catch(e=>{t||(Bs.warn(`listContent (reader) failed`,{err:e}),p(!0))}),()=>{t=!0}},[n,e,m,o]),i(()=>{if(!u)return;let t=setTimeout(()=>o.emit(`contentRead`,{contentId:e}),5e3);return()=>clearTimeout(t)},[u,e,o]);let y=r(t=>{let n=(t.target?.closest?.(`a`))?.getAttribute(`href`)??``;n&&!n.startsWith(`#`)&&o.emit(`contentLinkClick`,{contentId:e})},[o,e]);function b(){return f?h(ms,{tone:`error`,message:a.errorGeneric,onRetry:v,strings:a}):u===null?h(ms,{message:a.contentLoading,strings:a}):g(`article`,{class:`${zs}-content`,"data-testid":G.contentView,onClick:y,children:[u.image?h(`img`,{class:`${zs}-content-hero`,src:u.image,alt:``,loading:`lazy`}):null,u.description?h(`p`,{class:`${zs}-content-subtitle`,children:u.description}):null,h(Sa,{text:u.content??``})]})}return g(`div`,{class:`${zs}-module`,children:[h(os,{title:u?.title||t||a.moduleBack,backLabel:a.moduleBack,onBack:s,actions:l,testid:G.backHeader}),h(`div`,{class:`${zs}-module-scroll`,"data-testid":G.contentScroll,children:b()})]})}const Hs=y.cssPrefix;function Us({panelProps:e,enabledModules:t,nav:n,bus:a,hasUnread:o,onSelectConversation:c,onStartNewConversation:l,onSetPanelSize:u}){let d=e.options,p=d.strings,m=s(null),_=s(new Set);i(()=>{let t=m.current;if(!t)return;let n=yi(t),r=t=>{t.key===`Escape`&&e.onClose?.()};return t.addEventListener(`keydown`,r),()=>{n(),t.removeEventListener(`keydown`,r)}},[e.onClose]);let v=e.composerApiRef,{visible:y}=qi({containerRef:m,onDrop:r(e=>{v.current?.attachFromDrop(e)},[v])});hi(m.current,d.mode===`modal`);let b=f(()=>n.sig.value).value,x=ts(b),S=d.modules.byId[b.activeTab],C=x?.kind===`iframe`||x?.kind===`content`,w=t.length>1&&(ns(b)||!C),T=s(null);i(()=>{if(C&&T.current===null)T.current=e.panelSize,e.panelSize===`normal`&&u(`expanded`);else if(!C&&T.current!==null){let e=T.current;T.current=null,u(e)}},[C]);let E={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:e=>{let r=t.find(t=>t.layout===e);r&&n.switchTab(r.id)},selectConversation:c,startNewConversation:l},D=t=>({options:d,transport:e.transport,strings:p,config:t,visitorId:e.visitorId,nav:E,bus:a,panelProps:e}),O=h(ta,{panelProps:e,variant:`plain`});S&&_.current.add(S.id);let k=t.filter(e=>_.current.has(e.id)),A=t=>{if(t.layout===`chat`)return h(No,{...e,containerEl:m.current,dragOver:y,composerAttachApiRef:v});let n=Ps[t.layout].Root;return n?h(n,{...D(t)}):null};return g(`div`,{ref:m,class:`${Hs}-panel ${Hs}-messenger`,role:`dialog`,"aria-modal":`false`,"aria-label":p.panelTitle,style:{position:`relative`},"data-testid":G.messengerHome,children:[g(`div`,{class:`${Hs}-messenger-body`,children:[k.map(e=>h(`div`,{class:`${Hs}-messenger-pane`,hidden:C||e.id!==S?.id,children:A(e)},e.id)),x?.kind===`iframe`?h(Rs,{url:x.url,title:x.title,strings:p,onBack:n.pop,actions:O}):x?.kind===`content`?h(Vs,{id:x.id,title:x.title,transport:e.transport,strings:p,bus:a,onBack:n.pop,actions:O}):null]}),w?h(Is,{modules:t,activeTab:b.activeTab,strings:p,hasUnread:o,onSelect:n.switchTab}):null,h(zo,{poweredBy:d.poweredBy}),d.size.resize?.enabled&&!(S?.layout===`chat`&&!x)?h(fi,{panelEl:m.current,resize:d.size.resize,position:d.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:p}):null]})}const Ws=y.cssPrefix;function Gs({strings:e,onClose:t}){return g(`div`,{class:`${Ws}-panel ${Ws}-modules-empty`,role:`dialog`,"aria-label":e.panelTitle,"data-testid":G.modulesEmpty,children:[t?h(`button`,{type:`button`,class:`${Ws}-icon-btn ${Ws}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:h(ar,{})}):null,h(`p`,{class:`${Ws}-modules-empty-text`,children:e.modulesEmpty})]})}function Ks(e,t,n,r){let i={role:n,text:r};e.emit(`message`,i),t.onMessage?.(i)}const qs=M.scope(`hitl`);function Js(e){let t=e.partsSig.value.filter(e=>e.kind===`tool`);return t.length>0&&t.every(e=>{let t=e.stateSig.value;return t===`output-available`||t===`output-error`||t===`output-denied`||t===`approval-responded`})}function Ys(e){let{streaming:t,messagesSig:n,sendAiTurn:i,bus:a,humanInLoop:s}=e,c=r((e,r)=>{if(t)return;let a=n.value.at(-1),o=a?.partsSig.value.find(t=>t.kind===`tool`&&t.toolCallId===e);if(!a||!o){qs.warn(`decideTool: tool part not found`,{toolCallId:e});return}r(o),a.partsSig.value=[...a.partsSig.value],Js(a)&&(a.status=`streaming`,a.awaitingContinuation=!0,n.value=[...n.value],i({continueExisting:!0}))},[t,n,i]),l=r((e,t)=>{qs.info(`toolResult`,{toolCallId:e}),a.emit(`toolResult`,{toolCallId:e}),c(e,e=>{e.outputSig.value=t,e.stateSig.value=`output-available`})},[a,c]),u=r((e,t,n)=>{qs.info(`toolDecision`,{toolCallId:e,approved:t}),a.emit(`toolDecision`,{toolCallId:e,approved:t}),c(e,r=>{let i=r.approvalSig.value?.id??e;r.approvalSig.value={id:i,approved:t,reason:n},r.stateSig.value=`approval-responded`})},[a,c]),d=r(e=>{if(t)return;let r=n.value.at(-1),i=r?.partsSig.value.find(t=>t.kind===`tool`&&t.toolCallId===e);if(!r||!i)return;let a=i.approvalSig.value?.id??e;i.approvalSig.value={id:a},i.stateSig.value=`approval-requested`,r.partsSig.value=[...r.partsSig.value]},[t,n]);return{toolInteraction:o(()=>({humanInLoop:s,onResult:l,onDecision:u,onEdit:d}),[s,l,u,d])}}function Xs({callout:e,persistence:t}){let n=e?.text??``,a=e?.persistent??!0,[o,s]=c(()=>!a&&t.loadCalloutDismissed(n));return i(()=>{s(!a&&t.loadCalloutDismissed(n))},[n,a,t]),{dismissed:o,dismissCallout:r(()=>{s(!0),a||t.saveCalloutDismissed(n)},[t,n,a])}}function Zs(e){let{transport:t}=e,n=p(`ai-agent`),i=p(void 0),a=p(void 0),o=r(e=>{n.value=e.controlMode,i.value=e.assignedOperatorInitials,e.operatorAvailable!==void 0&&(a.value=e.operatorAvailable)},[n,i,a]);return{controlModeSig:n,assignedOperatorInitialsSig:i,operatorAvailableSig:a,applyControlState:o,adoptControlStateChunk:r(e=>{e.type===`data-control-state`&&o(en(e.data))},[o]),requestOperator:r(async()=>{if(n.value!==`ai-agent`)return;let e=await t.requestOperator();e&&o(en(e))},[t,n,o]),cancelRequestOperator:r(async()=>{if(n.value!==`awaiting_operator`)return;let e=await t.cancelRequestOperator();e&&o(en(e))},[t,n,o])}}function Qs(e){let{hostElement:t,mode:n,panelSize:r,isOpen:o,setIsOpen:s}=e;a(()=>{Dt(t,Pt(n,r,o))},[t,o,r,n]),i(()=>{if(n!==`modal`||!o)return;let e=e=>{e.composedPath().some(e=>e instanceof HTMLElement&&e.classList.contains(`${y.cssPrefix}-panel`))||s(!1)};return t.addEventListener(`click`,e),()=>t.removeEventListener(`click`,e)},[t,o,n,s]),i(()=>{if(n!==`drawer`||!o)return;let e=e=>{e.key===`Escape`&&s(!1)};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[o,n,s])}const $s=M.scope(`reducer`);var ec=class{constructor(e,t){this.messagesSig=e,this.onReconcileNeeded=t,z(this,`active`,null),z(this,`openTextParts`,new Map),z(this,`partSeq`,0),z(this,`resumeIgnore`,!1)}attach(e){this.active=e,this.openTextParts.clear()}resetForReplay(e){e.partsSig.value=[],e.status=`streaming`,e.finishReason=void 0,e.errorText=void 0,e.suggestions=void 0,this.openTextParts.clear(),this.messagesSig.value=[...this.messagesSig.value]}truncateAfterLastTool(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);e.partsSig.value=t.slice(0,n+1),e.status=`streaming`,e.finishReason=void 0,e.errorText=void 0,e.suggestions=void 0,this.openTextParts.clear(),this.messagesSig.value=[...this.messagesSig.value]}detach(){this.active=null,this.openTextParts.clear()}applyResume(e){if(e.type===`data-control-state`||e.type===`data-conversation-rebind`)return null;if(e.type===`start`){let t=e.messageId,n=t===void 0?void 0:this.messagesSig.value.find(e=>e.serverMessageId===t||e.id===t),r=n!==void 0&&(n.awaitingContinuation===!0||Ln(n));if(n!==void 0&&!r&&On(n))return n!==void 0&&Pn(n)&&this.onReconcileNeeded?.(),this.resumeIgnore=!0,this.detach(),null;if(this.resumeIgnore=!1,n!==void 0)return r?(n.awaitingContinuation=!1,n.status=`streaming`,this.messagesSig.value=[...this.messagesSig.value]):n.status===`streaming`&&Nn(n)?this.truncateAfterLastTool(n):this.resetForReplay(n),this.attach(n),this.apply(e),null;let i=e.messageMetadata?.senderRole,a=this.messagesSig.value.at(-1);if(i===void 0&&a?.role===`assistant`&&a.status===`streaming`&&a.serverMessageId===void 0&&!En(a))return this.attach(a),this.apply(e),null;let o=mn();return this.attach(o),this.messagesSig.value=[...this.messagesSig.value,o],this.apply(e),null}if(this.resumeIgnore||!this.active)return null;if(this.apply(e),e.type===`finish`||e.type===`error`||e.type===`abort`){let e=this.active;return this.detach(),e}return null}ensureTextPart(e,t,n){let r=`${t}:${n}`,i=this.openTextParts.get(r);if(i)return i;let a={kind:t,id:`${n}#${this.partSeq++}`,textSig:d(``),doneSig:d(!1)};return this.openTextParts.set(r,a),nc(e,a),a}apply(e){let t=this.active;if(t)switch(e.type){case`start`:{e.messageId&&(t.serverMessageId=e.messageId);let n=e.messageMetadata;n?.senderRole===`operator`?(t.role=`operator`,n.operatorInitials&&(t.operatorInitials=n.operatorInitials)):n?.senderRole===`visitor`&&(t.role=`user`);return}case`finish-step`:this.openTextParts.clear();return;case`start-step`:nc(t,{kind:`step-start`,id:`ss-${this.partSeq++}`});return;case`finish`:$s.debug(`finish`,{reason:e.finishReason,canContinue:e.canContinue}),t.status=`complete`,e.finishReason&&(t.finishReason=e.finishReason),this.bumpDone(t);return;case`error`:$s.warn(`stream error chunk`,{errorText:e.errorText}),t.status=`error`,t.errorText=e.errorText,this.bumpDone(t);return;case`abort`:$s.debug(`stream abort chunk (canceled)`),t.status=`complete`,t.canceled=!0,this.bumpDone(t);return;case`text-start`:this.ensureTextPart(t,`text`,e.id);return;case`text-delta`:{let n=this.ensureTextPart(t,`text`,e.id);n.textSig.value+=e.delta;return}case`text-end`:this.ensureTextPart(t,`text`,e.id).doneSig.value=!0;return;case`reasoning-start`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!1;return;case`reasoning-delta`:{let n=this.ensureTextPart(t,`reasoning`,e.id);n.textSig.value+=e.delta;return}case`reasoning-end`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!0;return;case`tool-input-start`:case`tool-input-delta`:case`tool-input-available`:case`tool-output-available`:case`tool-output-error`:case`tool-output-denied`:case`tool-approval-request`:ic(t,e);return;case`file`:nc(t,{kind:`file`,url:e.url,mediaType:e.mediaType});return;case`source-url`:rc(t,{kind:`source`,sourceId:e.sourceId,url:e.url,title:e.title});return;case`source-document`:rc(t,{kind:`source`,sourceId:e.sourceId,title:e.title,filename:e.filename,mediaType:e.mediaType});return;case`data-notification`:return;case`data-conversation-rebind`:return;case`data-suggestions`:t.suggestions=tn(e.data);return;case`data-control-state`:t.operatorRoutedTurn=!0;return;default:}}bumpDone(e){e.partsSig.value=[...e.partsSig.value],this.messagesSig.value=[...this.messagesSig.value]}};function tc(e,t,n){let r=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);if(r)return r;let i={kind:`tool`,toolCallId:t,toolName:n??`tool`,inputPartialSig:d(``),inputSig:d(void 0),outputSig:d(void 0),errorSig:d(void 0),stateSig:d(`input-streaming`),approvalSig:d(void 0)};return nc(e,i),i}function nc(e,t){e.partsSig.value=[...e.partsSig.value,t]}function rc(e,t){e.partsSig.value.some(e=>e.kind===`source`&&e.sourceId===t.sourceId)||nc(e,t)}function ic(e,t){switch(t.type){case`tool-input-start`:tc(e,t.toolCallId,t.toolName);return;case`tool-input-delta`:{let n=tc(e,t.toolCallId);n.inputPartialSig.value+=t.inputTextDelta;return}case`tool-input-available`:{let n=tc(e,t.toolCallId,t.toolName);n.inputSig.value=t.input,n.stateSig.value=`input-available`;return}case`tool-approval-request`:{let n=tc(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value=`approval-requested`;return}case`tool-output-available`:{let n=tc(e,t.toolCallId);n.outputSig.value=t.output,n.stateSig.value=`output-available`;return}case`tool-output-error`:{let n=tc(e,t.toolCallId);n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-output-denied`:{let n=tc(e,t.toolCallId);n.stateSig.value=`output-denied`;return}default:return}}const ac=1e3;async function oc(e){let t=ac;for(;!e.signal.aborted;){let n,r=`held`;try{r=await e.connect(()=>{n=e.now(),e.backfill()})}catch{}if(e.signal.aborted||r===`unavailable`)return;n!==void 0&&e.now()-n>=1e3&&(t=ac),await e.sleep(t),t=Math.min(t*2,15e3)}}const sc=M.scope(`resume-stream`);function cc(e){let{activated:t,conversationReady:n,conversationIdSig:r,messagesSig:a,streamingRef:o,optionsRef:s,isChatActiveRef:c,transport:l,visitorId:u,adoptControlStateChunk:d,settleSuggestions:f,markActiveConversationRead:p,onReplyLanded:m,setStreaming:h,setActiveCancel:g,setCanSend:_,feedback:v,bus:y,homeNav:b}=e;i(()=>{if(!t||!n||!r.value)return;let e=r.value,i=new AbortController,x=()=>{},S=new ec(a,()=>x());l.primeIdentity(u,e),sc.debug(`resume stream opened`,{conversationId:e});let C=()=>{h(!1),g(null),p(),m()},w=e=>{let t=o.current,n=s.current;if(e.canceled){t&&C(),a.value=[...a.value];return}let r=e.status===`error`;switch(Hn(e,r)){case`drop`:a.value=a.value.filter(t=>t!==e);break;case`complete-operator-routed`:e.status=`complete`,t&&(v.play(`messageReceived`),Ks(y,n,`assistant`,Tn(e)));break;case`error`:if(e.status=`error`,e.errorText=n.strings.errorGeneric,t){v.play(`error`);let e=Error(r?`stream error chunk`:`empty reply`);y.emit(`error`,e),n.onError?.(e)}break;case`complete`:e.status=`complete`,t&&(v.play(`messageReceived`),Ks(y,n,`assistant`,Tn(e))),f(e);break}t&&C(),a.value=[...a.value]},T=t=>{d(t);let n=a.value.length,r=S.applyResume(t);if(t.type===`finish`&&t.canContinue===!1&&_(!1),a.value.length>n){let e=s.current.modules.list.find(e=>e.layout===`chat`)?.id;e&&b?.switchTab(e)}if(r){if(r.role===`operator`){v.play(`messageReceived`),Ks(y,s.current,`operator`,Tn(r)),!document.hidden&&c.current()&&l.markRead(e).catch(()=>void 0);return}w(r)}},E=async()=>{let t=await l.loadConversation(e).catch(()=>null);if(i.signal.aborted||!t?.messages?.length)return!1;let{messages:n,changed:r}=zn(a.value,Sn(t.messages));return r&&(a.value=n),r};x=()=>{(async()=>{for(let e=0;e<4&&!i.signal.aborted;e++){await E();let e=a.value.at(-1);if(!e||e.role!==`assistant`||!In(e))return;await zt(400,i.signal)}})()};let D=0;oc({signal:i.signal,now:()=>performance.now(),sleep:e=>zt(e,i.signal),connect:e=>l.connectResumeStream({signal:i.signal,onChunk:T,onConnected:e}),backfill:()=>{let e=performance.now();e-D<2e3||(D=e,E())}});let O=e=>e.partsSig.value.reduce((e,t)=>e+(t.kind===`text`||t.kind===`reasoning`?t.textSig.value.length:1),0),k=0,A=-1,ee=setInterval(()=>{let e=a.value.at(-1);if(o.current&&e&&e.role!==`user`&&e.status!==`streaming`&&(h(!1),g(null)),!(!o.current&&e!==void 0&&e.role!==`user`&&!e.ephemeral&&(e.status===`streaming`||En(e)&&Tn(e).trim()===``||In(e)))){k=0,A=-1;return}let t=O(e);if(t!==A){A=t,k=0;return}k++>=30||E().then(e=>{e&&(k=0)})},2500);return()=>{i.abort(),clearInterval(ee),S.detach(),sc.debug(`resume stream closed`,{conversationId:e})}},[t,n,r,r.value,u,l,d,f,p,m,h,g,_,a,y,v,b])}const lc=M.scope(`send`);function uc(e){let{transport:t,messagesSig:n,conversationIdSig:i,options:a,bus:o,feedback:s,persistence:c,visitorId:l,adoptConversationId:u,setStreaming:d,setActiveCancel:f}=e,p=r(()=>{let e=i.value??ut();return i.value||(i.value=e,c.saveConversationId(e)),e},[i,c]);return{sendAiTurn:r(async({continueExisting:e})=>{let r=p(),m=nn({messages:Cn(n.value,e).map(wn),conversationId:r,tools:a.features.tools,visitorId:l,userPrefs:c.loadUserPrefs()});d(!0),f(()=>()=>t.cancelTurn(i.value));try{let e=await t.sendTurn(m);u(e.conversationId)}catch(t){let r=ss(t,a.strings),i=n.value.at(-1);if(e&&i?.role===`assistant`)i.status=`error`,i.errorText=r,n.value=[...n.value];else{let e=mn();e.status=`error`,e.errorText=r,n.value=[...n.value,e]}d(!1),f(null),s.play(`error`),o.emit(`error`,t),a.onError?.(t)}},[t,n,i,a,o,s,c,l,u,p,d,f]),sendRoutedTurn:r(async e=>{let n=p(),r=nn({messages:[wn(e)],conversationId:n,tools:a.features.tools,visitorId:l,userPrefs:c.loadUserPrefs()});try{let e=await t.sendTurn(r);u(e.conversationId)}catch(e){lc.debug(`operator-routed send failed (non-fatal)`,{error:e});let t=e instanceof Error?e:Error(String(e));o.emit(`error`,t),a.onError?.(t)}},[t,a,o,c,l,u,p])}}const dc=M.scope(`unread`);function fc(e){let{transport:t,options:n,conversationIdSig:a,isChatActiveRef:o,activated:c,conversationReady:l}=e,u=p(!1),d=s(new Set),f=s();i(()=>()=>clearTimeout(f.current),[]);let m=r(()=>{let e=o.current()?a.value:void 0;u.value=[...d.current].some(t=>t!==e)},[u,a,o]),h=r(()=>{n.modules.list.some(e=>e.layout===`chat`)&&t.listConversations({limit:50}).then(e=>{d.current=new Set(e.conversations.filter(e=>e.hasUnread).map(e=>e.conversationId)),m()}).catch(e=>dc.debug(`refreshUnread failed (non-fatal)`,{err:e}))},[t,n.modules,m]),g=r(e=>{d.current.delete(e),m()},[m]),_=r(()=>{if(!o.current())return;let e=a.value;e&&(clearTimeout(f.current),f.current=setTimeout(()=>{g(e),t.markRead(e)},300))},[t,a,g,o]),v=s(!1);return i(()=>{!c||!l||v.current||(v.current=!0,h())},[c,l,h]),i(()=>{if(!c)return;let e=()=>{document.visibilityState===`visible`&&h()};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[c,h]),{hasUnreadSig:u,refreshUnread:h,clearUnread:g,markActiveConversationRead:_}}const pc=M.scope(`settings`);function mc(e){let{options:t,persistence:n,transport:a,feedback:o,hostElement:s,bus:l}=e,u=n.loadUserPrefs(),[d,f]=c(()=>u.locale??t.locale),[p,m]=c(()=>u.themeMode??t.themeMode),[h,g]=c(()=>u.textSize??t.textSize),_=r(e=>{n.patchUserPrefs(e),a.saveUserPrefs(n.loadUserPrefs()).catch(e=>pc.warn(`saveUserPrefs failed`,{err:e}))},[n,a]);i(()=>{u.soundMuted!==void 0&&o.setMuted(u.soundMuted)},[]),i(()=>{s.dataset.theme=p},[s,p,t]),i(()=>{s.dataset.textSize=h},[s,h,t]),i(()=>{let e=!0;return o.mutedSig.subscribe(t=>{if(e){e=!1;return}_({soundMuted:t})})},[o,_]);let v=De(d,t.availableLocales,t.defaultLocale);return i(()=>{a.setLocale(v)},[a,v]),i(()=>{s.dir=T(v)?`rtl`:`ltr`},[s,v]),i(()=>{v!==d&&f(v)},[v,d]),{activeLocale:d,activeThemeMode:p,activeTextSize:h,effectiveLocale:v,setActiveLocale:f,setActiveThemeMode:m,setActiveTextSize:g,patchAndSync:_,handleLocaleChange:r(e=>{pc.info(`localeChange`,{locale:e}),f(e),_({locale:e}),l.emit(`localeChange`,e)},[_,l]),handleThemeChange:r(e=>{pc.info(`themeChange`,{mode:e}),m(e),s.dataset.theme=e,_({themeMode:e}),l.emit(`themeChange`,e)},[s,_,l]),handleTextSizeChange:r(e=>{pc.info(`textSizeChange`,{size:e}),g(e),s.dataset.textSize=e,_({textSize:e}),l.emit(`textSizeChange`,e)},[s,_,l]),handleSoundToggle:r(()=>{o.toggleMuted();let e=o.mutedSig.value;pc.info(`soundToggle`,{muted:e}),l.emit(`soundToggle`,{muted:e})},[o,l])}}const $=M.scope(`app`),hc=y.cssPrefix;function gc(e,t){return hn({...e,text:E(t,e.text)})}function _c({options:e,hostElement:t,bus:n}){let[a]=c(()=>pt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[u,d]=c(()=>a.getVisitorId()),m=a.loadUserPrefs(),_=p(a.loadConversationId()),v=p([]),[y,b]=c(!1),[x,S]=c([]);function C(){let t=e.modules.list,n=new Set(t.map(e=>e.id)),r=a.loadActiveModule();return r&&n.has(r)?r:t[0]?.id??``}function w(){return e.modules.list.find(e=>e.layout===`chat`)?.id}function T(){let t=w();return t?e.modules.list.length===1||k.sig.value.activeTab===t:!1}let D=s(T);D.current=T;let O=s();if(!O.current){let t=e.modules.list.map(e=>e.id);O.current=$o(C(),t,e=>a.saveActiveModule(e))}let k=O.current,[A,ee]=c(!1),[te,ne]=c(null),[j,re]=c(!1),ie=e.mode===`standalone`||e.mode===`inline`,ae=s(It(e,Lt(),a.loadPanelOpen(),a.loadPanelSize())),[oe,se]=c(ae.current.panelOpen),[ce,M]=c(ae.current.panelOpen),le=s(!1),ue=s(void 0);i(()=>{oe&&M(!0)},[oe]);let de=s(!1),[fe,N]=c(!1),{dismissed:pe,dismissCallout:me}=Xs({callout:e.launcher.callout,persistence:a}),he=e.launcher.callout?.persistent??!0,ge=r(()=>{$.info(`calloutDismiss`),n.emit(`calloutDismiss`,void 0),me()},[n,me]),[P,_e]=c(ae.current.panelSize),ve=s(!1),[ye,be]=c(`chat`),[xe,Se]=c(!0),[F,Ce]=c(!1),we=s(F);we.current=F;let[Te,Ee]=c(null),[De,Oe]=c([]),[ke,Ae]=c(null),je=s(e.strings),Me=s(e);Me.current=e;let[Ne,Pe]=c(void 0),[Ie,Le]=c(void 0),[ze,Be]=c(()=>a.loadSidebarCollapsed()??!1),[Ve,He]=c({}),[I]=c(()=>new un({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Rt({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:`x-public-key`}),endpoints:e.endpoints})),[L]=c(()=>new nr(e.sound,e.haptics)),{activeLocale:Ue,activeThemeMode:We,activeTextSize:Ge,effectiveLocale:Ke,setActiveLocale:qe,setActiveThemeMode:Je,setActiveTextSize:Ye,patchAndSync:Xe,handleLocaleChange:Ze,handleThemeChange:Qe,handleTextSizeChange:$e,handleSoundToggle:et}=mc({options:e,persistence:a,transport:I,feedback:L,hostElement:t,bus:n}),{controlModeSig:tt,assignedOperatorInitialsSig:nt,operatorAvailableSig:rt,applyControlState:it,adoptControlStateChunk:at,requestOperator:ot,cancelRequestOperator:st}=Zs({transport:I}),{hasUnreadSig:ct,refreshUnread:lt,clearUnread:dt,markActiveConversationRead:ft}=fc({transport:I,options:e,conversationIdSig:_,isChatActiveRef:D,activated:ce,conversationReady:A});i(()=>{L.update(e.sound,e.haptics)},[L,e.sound,e.haptics]),i(()=>()=>L.destroy(),[L]),i(()=>{ve.current||!e.size.initialSize||(ve.current=!0,!a.loadPanelSize()&&_e(Ft(e.mode,e.size,Lt())))},[e.mode,e.size,a]),i(()=>{if(!A||de.current)return;de.current=!0;let t=It(e,Lt(),a.loadPanelOpen(),a.loadPanelSize());se(t.panelOpen),_e(t.panelSize)},[A,e,a]);let mt=s(!1),ht=s(null);i(()=>{!A||mt.current||(mt.current=!0,k.reset(C()))},[A]);let gt=r(e=>{!e||e.length===0||(v.value=e.map(e=>gc(e,je.current)))},[v]),_t=s(null),vt=r(async e=>{try{let{formSubmissions:t}=await(e?I.bootstrap(e):_t.current??I.bootstrap()),n=new Map;return t.forEach((e,t)=>n.set(e.formId,t)),t.filter((e,t)=>!e.skipped||n.get(e.formId)===t).map((e,t)=>({key:`wire:${e.formId}:${e.createdAt??t}`,formId:e.formId,outcome:e.skipped?`skipped`:`submitted`,createdAt:Zt(e.createdAt),values:e.values}))}catch(e){return $.debug(`bootstrap failed — no form markers (non-fatal)`,{err:e}),[]}},[I]),yt=s(0),bt=r((e,t)=>{let n=[...e.map(e=>e.createdAt),...t.map(e=>e.createdAt)].filter(e=>e!==void 0),r=(n.length?Math.min(...n):Date.now())-1;return[...(ue.current?.messages??[]).map(e=>{let t=gc(e,je.current);return t.createdAt=r,t}),...e]},[]),xt=r(async e=>{let t=yt.current,n=()=>t!==yt.current;b(!0);try{let[t,r]=await Promise.all([I.loadConversation(e),vt()]);if(n())return;let i=Sn(t.messages??[]);if(S(r),v.value=bt(Rn(i,v.value),r),i.length){Se(t.canContinue??!0),it(en(t.controlState));let e=i.findLast(e=>e.role===`assistant`&&!e.ephemeral);Oe(e?.suggestions??t.suggestions??[])}}catch(t){if(n())return;$.warn(`loadThread failed; resetting conversationId`,{err:t,conversationId:e}),_.value=void 0,a.saveConversationId(void 0)}finally{n()||b(!1)}},[I,vt,v,_,a,bt]),St=r(async({newConversation:t})=>{let r=++yt.current,i=()=>r!==yt.current,o=_.value,s=t||!o?ut():o;s!==o&&(_.value=s,a.saveConversationId(s));let c;try{c=await I.handshake({visitorId:u,conversationId:s,userPrefs:a.loadUserPrefs(),locale:Ue})}catch(r){if(i())return;n.emit(`error`,r),e.onError?.(r),t||ee(!0);return}if(!i()){if(c.visitorId&&c.visitorId!==u&&($.info(`visitor rebound`,{previous:u,current:c.visitorId,reason:c.rebind?.visitorId}),a.setVisitorId(c.visitorId),d(c.visitorId),n.emit(`visitorRebound`,{previous:u,current:c.visitorId,reason:c.rebind?.visitorId})),c.conversationId&&c.conversationId!==s&&($.info(`conversation rebound`,{previous:s,current:c.conversationId,reason:c.rebind?.conversationId}),n.emit(`conversationRebound`,{previous:s,current:c.conversationId,reason:c.rebind?.conversationId})),c.agent&&Ee(c.agent),it(en(c.controlState)),e.mode===`page`&&(c.site&&At(c.site)?Pe(c.site):c.site&&$.warn(`invalid site config, using fallback`,{site:c.site}),c.blocks&&jt(c.blocks)?Le(c.blocks):c.blocks&&$.warn(`invalid blocks config, using fallback`,{blocks:c.blocks})),c.userPrefs&&!t&&(a.saveUserPrefs(c.userPrefs),c.userPrefs.locale&&qe(c.userPrefs.locale),c.userPrefs.soundMuted!==void 0&&L.setMuted(c.userPrefs.soundMuted),c.userPrefs.themeMode&&Je(c.userPrefs.themeMode),c.userPrefs.textSize&&Ye(c.userPrefs.textSize)),ue.current=c.welcome,t||n.emit(`handshake`,c),c.welcome?.suggestions){let e=je.current;Oe(c.welcome.suggestions.map(t=>({...t,label:E(e,t.label),...t.text===void 0?{}:{text:E(e,t.text)}})))}!t&&o&&c.conversationId===o?le.current=!0:(_.value=c.conversationId,a.saveConversationId(c.conversationId),gt(c.welcome?.messages)),t||ee(!0)}},[I,u,a,e,n,_,L,gt,xt,Ue]),Ct=JSON.stringify(e.userContext??null);i(()=>{let t=Object.keys(Ve).length?{...Ve,...e.userContext}:e.userContext;I.setContext(t,vc(e.pageContext))},[I,Ct,JSON.stringify(e.pageContext??null),JSON.stringify(Ve)]);let wt=r((e,t=[])=>Oe(e.suggestions??t),[]),Tt=r(e=>{if(!e||e===_.value)return;let t=_.value;_.value=e,a.saveConversationId(e),I.primeIdentity(void 0,e),$.info(`conversation rebound`,{previous:t,current:e}),t&&n.emit(`conversationRebound`,{previous:t,current:e,reason:e})},[_,a,I,n]);i(()=>(I.primeIdentity(u,_.value),St({newConversation:!1}),()=>{yt.current++}),[]);let Et=s(!1);i(()=>{if(!(!ce||!A||Et.current)&&(Et.current=!0,_t.current=I.bootstrap(),(async()=>{try{let e=await _t.current;ne(Fe((e??{forms:[]}).forms,Ke))}catch(e){$.debug(`bootstrap failed — treating as no forms`,{err:e})}finally{re(!0)}})(),le.current)){le.current=!1;let e=_.value;e&&xt(e)}},[ce,A]);let Dt=s(null);i(()=>{if(!ce||!A)return;if(Dt.current===null){Dt.current=Ke;return}if(Dt.current===Ke)return;Dt.current=Ke;let e=!1;return I.bootstrap().then(t=>{e||ne(Fe((t??{forms:[]}).forms,Ke))}).catch(e=>$.debug(`forms re-localize failed — keeping current copy`,{err:e})),()=>{e=!0}},[ce,A,Ke,I]);let Ot=s(Ct);i(()=>{!A||Ot.current===Ct||(Ot.current=Ct,St({newConversation:!1}))},[Ct,A,St]);let kt=s(()=>{});cc({activated:ce,conversationReady:A,conversationIdSig:_,messagesSig:v,streamingRef:we,optionsRef:Me,isChatActiveRef:D,transport:I,visitorId:u,adoptControlStateChunk:at,settleSuggestions:wt,markActiveConversationRead:ft,onReplyLanded:r(()=>kt.current(),[]),setStreaming:Ce,setActiveCancel:Ae,setCanSend:Se,feedback:L,bus:n,homeNav:k}),Qs({hostElement:t,mode:e.mode,panelSize:P,isOpen:oe,setIsOpen:se});let{sendAiTurn:Mt,sendRoutedTurn:Pt}=uc({transport:I,messagesSig:v,conversationIdSig:_,options:e,bus:n,feedback:L,persistence:a,visitorId:u,adoptConversationId:Tt,setStreaming:Ce,setActiveCancel:Ae}),{toolInteraction:zt}=Ys({streaming:F,messagesSig:v,sendAiTurn:Mt,bus:n,humanInLoop:e.features.humanInLoop}),Bt=r((e,t)=>{$.info(`messageFeedback`,{messageId:e,value:t}),n.emit(`messageFeedback`,{messageId:e,value:t}),I.submitFeedback({messageId:e,value:t})},[n,I]),Vt=()=>v.value.reduce((e,t)=>e+ +(t.role===`user`),0),Ht=e.forms.list.length>0?e.forms:te??e.forms,R=Vo({forms:Ht,persistence:a,userContext:()=>e.userContext,messageCount:Vt,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>_.value,onComplete:(e,t,r,i)=>{$.info(`formSubmit`,{formId:e.id,trigger:t,skipped:i}),n.emit(`formSubmit`,{formId:e.id,values:r,skipped:i}),S(t=>{let n=t.find(t=>t.formId===e.id&&t.outcome===`skipped`)?.createdAt??Date.now();return[...t.filter(t=>!(t.formId===e.id&&t.outcome===`skipped`)),{key:`local:${e.id}:${n}`,formId:e.id,outcome:i?`skipped`:`submitted`,createdAt:n,...i?{}:{values:r}}]});let o=_.value??ut();_.value||(_.value=o,a.saveConversationId(o),I.primeIdentity(void 0,o)),!i&&e.mirrorToContext&&He(e=>({...e,...r})),I.submitForm({formId:e.id,conversationId:o,trigger:t,values:r,skipped:i})}}),z=f(()=>R.activeForm.value);kt.current=()=>R.fire(`after-messages`),i(()=>{R.refresh()},[Ht,R]);let Ut=e.pageContext?.area?String(e.pageContext.area):void 0,Wt=f(()=>v.value.length);i(()=>{A&&j&&R.fire(`pre-chat`)},[A,j,R]),i(()=>{j&&!xe&&R.fire(`conversation-closed`)},[j,xe,R]),i(()=>{A&&j&&Ut&&R.fire(`page-area`)},[A,j,Ut,R]);let Gt=o(()=>{let e=Ht.list.flatMap(e=>e.triggers).filter(e=>e.kind===`idle`).map(e=>Number(e.param));return e.length?Math.min(...e)*1e3:0},[Ht]);i(()=>{if(!Gt||!oe)return;let e=setTimeout(()=>R.fire(`idle`),Gt);return()=>clearTimeout(e)},[Gt,oe,R,Wt.value]);let Kt=r(async(t,r)=>{let i=tt.value!==`ai-agent`;if($.info(`send`,{textLen:t.length,attachments:r.length,streaming:F,routedToOperator:i}),F&&!i)return;n.emit(`send`,{text:t,attachmentCount:r.length}),De.length>0&&Oe([]);let a=await bc(I,r,t=>{$.warn(`upload failed`,{err:t}),n.emit(`error`,t),e.onError?.(t)});L.unlock(),L.play(`messageSent`);let o=pn(t,a);if(Ks(n,e,`user`,t),i){v.value=[...v.value,o],Pt(o);return}v.value=[...v.value,o,mn()],Mt({continueExisting:!1})},[F,I,n,e,De.length,v,Mt,Pt,tt]),qt=r(()=>{$.info(`stop`),n.emit(`stop`,void 0);let e=v.value.at(-1);e&&e.role!==`user`&&e.status===`streaming`&&(e.canceled=!0,v.value=[...v.value]),ke?.()},[ke,n,v]),Jt=r(()=>{if(F)return;let e=v.value,t=e.at(-1);!t||t.role!==`assistant`||t.status!==`error`&&!Bn(t)||(v.value=[...e.slice(0,-1),mn()],$.info(`retry`),Mt({continueExisting:!1}))},[F,v,Mt]),Yt=r(()=>{if(vi(e.mode,P)===`exit-fullscreen`){$.info(`close → exit-fullscreen`,{mode:e.mode}),_e(`normal`),n.emit(`fullscreen`,!1);return}$.info(`close → panel closed`,{mode:e.mode}),R.fire(`panel-close`),se(!1),a.savePanelOpen(!1),n.emit(`close`,void 0),e.onClose?.()},[n,e,a,P,R]),Xt=r(()=>{$.info(`open`,{mode:e.mode}),L.unlock(),N(!0),se(!0),a.savePanelOpen(!0),!pe&&!he&&ge(),setTimeout(()=>N(!1),yc),lt(),n.emit(`open`,void 0),e.onOpen?.()},[n,e,L,a,pe,he,ge,lt]),Qt=r(()=>{if(!v.value.some(e=>e.role===`user`)&&xe&&_.value){$.info(`clear → reusing empty conversation`,{conversationId:_.value}),v.value.length===0&&gt(ue.current?.messages);return}$.info(`clear → new conversation`,{wasStreaming:F}),n.emit(`clear`,void 0),F&&Ce(!1),l(()=>{v.value=[],_.value=void 0}),a.clearConversation(),Se(!0),S([]),St({newConversation:!0})},[F,v,_,a,St,n,xe,gt]),$t=r(()=>{Qt(),be(`chat`);let t=e.modules.list.find(e=>e.layout===`chat`)?.id;t&&k.switchTab(t)},[Qt,k,e]),B=r(()=>{let e=P===`expanded`?`normal`:`expanded`;$.info(`expand`,{from:P,expanded:e===`expanded`}),_e(e),a.savePanelSize(e),n.emit(`expand`,e===`expanded`)},[n,P,a]),tn=r(()=>{let e=P===`fullscreen`?`normal`:`fullscreen`;$.info(`fullscreen`,{from:P,fullscreen:e===`fullscreen`}),_e(e),a.savePanelSize(e),n.emit(`fullscreen`,e===`fullscreen`)},[n,P,a]),nn=r(()=>{be(e=>{let t=e===`history`?`chat`:`history`;return $.info(`toggleHistory`,{view:t}),n.emit(`toggleHistory`,{view:t}),t})},[n]),rn=r(()=>{Be(e=>{let t=!e;return $.info(`sidebarToggle`,{collapsed:t}),a.saveSidebarCollapsed(t),n.emit(`sidebarToggle`,{collapsed:t}),t})},[a,n]),an=r(e=>{$.info(`resize`,e),Xe({widgetSize:e}),n.emit(`resize`,e)},[Xe,n]),on=r(async t=>{$.info(`selectConversation`,{conversationId:t,wasStreaming:F}),n.emit(`selectConversation`,{conversationId:t}),F&&Ce(!1);try{let[e,n]=await Promise.all([I.loadConversation(t),vt(t)]),r=Sn(e.messages);l(()=>{v.value=bt(r,n),_.value=e.conversationId}),S(n),a.saveConversationId(e.conversationId),I.primeIdentity(u,e.conversationId),e.agent&&Ee(e.agent),Se(e.canContinue),it(en(e.controlState));let i=r.findLast(e=>e.role===`assistant`&&!e.ephemeral);Oe(i?.suggestions??e.suggestions??[]),be(`chat`),await I.markRead(t),dt(t)}catch(t){n.emit(`error`,t),e.onError?.(t)}},[I,v,_,n,e,a,dt,vt,bt,F,u]),V=s(null),sn=r(e=>{typeof e==`string`&&(j?R.fire(`manual`,e):V.current=e)},[j,R]);i(()=>{!j||!V.current||(R.fire(`manual`,V.current),V.current=null)},[j,R]),i(()=>Nt(t,{open:Xt,close:Yt,expand:B,fullscreen:tn,openForm:sn}),[t,Xt,Yt,B,tn,sn]);let H=o(()=>Re(e,Ue,We,Ge),[e,Ue,We,Ge]);je.current=H.strings;let cn=o(()=>x.map(e=>{let t=Ht.list.find(t=>t.id===e.formId);return{...e,title:t?.title,form:t}}),[x,Ht]),ln={options:H,transport:I,feedback:L,bus:n,persistence:a,composerApiRef:ht,view:ye,canSend:xe,isStreaming:F,controlMode:tt.value,assignedOperatorInitials:nt.value,operatorAvailable:rt.value,operatorRequestEnabled:e.features.operatorRequest,onRequestOperator:ot,onCancelRequest:st,loadingMessages:y,messagesSig:v,agent:Te,suggestions:De,initialWidgetSize:m.widgetSize??null,visitorId:u,onClose:Yt,onClear:Qt,onExpand:B,onFullscreen:tn,onSoundToggle:et,onToggleHistory:nn,onSelectHistoryConversation:on,onNewConversation:$t,onLocaleChange:Ze,onThemeChange:Qe,onTextSizeChange:$e,onWidgetSizeChange:an,onSend:Kt,onStop:qt,onSuggestion:t=>{let r=t.text??t.label;$.info(`suggestion`,{text:r,autoSend:e.autoSendSuggestions}),n.emit(`suggestion`,{text:r}),e.autoSendSuggestions?Kt(r,[]):ht.current?.fill(r)},activeForm:z.value?.form??null,formMarkers:cn,onFormSubmit:R.complete,onFormSkip:R.skip,onFormFill:e=>R.fire(`manual`,e),tool:zt,onRetry:Jt,onMessageFeedback:Bt},dn=e=>{on(e);let t=w();t&&k.switchTab(t)};if(!A)return null;let fn=H.modules.list,hn=e=>{let t=gi(`close`,H.mode,e);return fn.length===0?h(Gs,{strings:H.strings,onClose:t?Yt:void 0}):fn.length===1&&fn[0]?.layout===`chat`?h(Mo,{...ln,panelSize:e}):h(Us,{panelProps:{...ln,panelSize:e,onClose:t?Yt:void 0},enabledModules:fn,nav:k,bus:n,hasUnread:ct.value,onSelectConversation:dn,onStartNewConversation:$t,onSetPanelSize:_e})};if(e.mode===`page`){let e=e=>{on(e.conversationId)},t=fn.some(e=>e.layout===`chat`);return h(`div`,{class:`${hc}-anchor`,children:h(Zo,{site:Ne,blocks:Ie,transport:I,strings:H.strings,locale:H.locale,persistence:a,visitorId:u,showConversations:t,onSelectConversation:e,onNewConversation:$t,sidebarCollapsed:ze,onToggleSidebarCollapsed:rn,children:hn(`fullscreen`)})})}if(ie){let t=e.mode===`standalone`?`fullscreen`:P;return h(`div`,{class:`${hc}-anchor`,children:hn(t)})}let gn=e.mode===`drawer`,_n=e.mode!==`modal`&&!e.launcher.hidden&&(!oe||fe),vn=_n&&!fe&&!pe&&!gn?H.launcher.callout:null;return g(`div`,{class:`${hc}-anchor`,"data-launcher-size":H.launcher.size,children:[oe||ce?h(`div`,{class:`${hc}-surface`,hidden:!oe,children:hn(P)}):null,_n?h(oi,{onToggle:Xt,launcher:H.launcher,strings:H.strings,leaving:fe,edgeTab:gn}):null,vn?h(ui,{callout:vn,launcherPosition:H.position,strings:H.strings,closeLabel:H.strings.close,onDismiss:ge}):null]})}function vc(e){let t=e?.url??(typeof location<`u`?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}const yc=120;async function bc(e,t,n){let r=[];for(let i of t)try{let{id:t,url:n}=await e.uploadFile(i.file);r.push({id:t,name:i.name,mediaType:i.mediaType,size:i.size,url:n})}catch(e){n(e)}return r}const xc=M.scope(`error-boundary`);var Sc=class extends e{constructor(...e){super(...e),z(this,`state`,{crashed:!1})}componentDidCatch(e,t){xc.error(`widget render crashed`,{error:e,componentStack:t?.componentStack}),this.setState({crashed:!0}),this.props.onError(e,t?.componentStack)}render(){return this.state.crashed?this.props.fallback:this.props.children}};const Cc={open:()=>void 0,close:()=>void 0,expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>void 0,clear:()=>void 0,suggestion:()=>void 0,toggleHistory:e=>({view:e.view}),handshake:()=>void 0,formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>void 0,toolDecision:e=>({approved:e.approved}),messageFeedback:e=>({value:e.value??`none`}),contentView:e=>({section:e.section,tags:e.tags,count:e.count}),contentOpen:e=>({contentId:e.contentId,tags:e.tags}),contentSearch:e=>({qlen:e.queryLength,hits:e.hitCount}),contentRead:e=>({contentId:e.contentId}),contentLinkClick:e=>({contentId:e.contentId}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>void 0,voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>void 0,localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>void 0,error:()=>void 0};function wc(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack===`1`}function Tc(){return location.origin+location.pathname}function Ec(){try{return document.referrer?new URL(document.referrer).origin:``}catch{return``}}function Dc(e,t){let n=Math.random(),r=0,i=0,a=new Set,o=(e,o)=>{let{tracking:s,publicKey:c,aiAgentDeploymentId:l,mode:u,themeMode:d}=t.getOptions();if(!s.enabled||wc()||n>=s.sampleRate)return;let f=performance.now();if(f-r>6e4&&(r=f,i=0),++i>60)return;let p=new URLSearchParams;p.set(`v`,`1`),p.set(`_ev`,Bt),p.set(`e`,e),s.token&&p.set(`tk`,s.token),c&&p.set(`pk`,c),l&&p.set(`dep`,l),p.set(`vid`,t.getVisitorId());let m=t.getConversationId();m&&p.set(`cid`,m),p.set(`url`,Tc());let h=Ec();h&&p.set(`ref`,h),p.set(`sw`,String(screen.width)),p.set(`sh`,String(screen.height)),p.set(`vw`,String(innerWidth)),p.set(`vh`,String(innerHeight)),p.set(`dpr`,String(devicePixelRatio)),p.set(`lang`,navigator.language);try{p.set(`tz`,Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(p.set(`m`,u),p.set(`th`,d),o)for(let[e,t]of Object.entries(o))t!==void 0&&p.set(e,String(t));p.set(`ts`,String(Date.now()));let g=`${s.endpoint}?${p}`;if(g.length>2e3)return;let _=new Image(1,1);a.add(_);let v=()=>a.delete(_);_.addEventListener(`load`,v,{once:!0}),_.addEventListener(`error`,v,{once:!0}),_.src=g},s=Object.keys(Cc).map(t=>e.on(t,e=>o(t,Cc[t]?.(e))));return()=>{for(let e of s)e();a.clear()}}function Oc(e){let{bus:r,host:i,appRoot:a,persistence:o,reportError:s}=e,c=e.initialRaw,l,u=we(c),d=!0,f=()=>{u=we(l?Be(c,l):c)},p=()=>{yt(i,bt(u.mode));let e=o.loadUserPrefs().themeMode;Ot(i,e?{...u,themeMode:e}:u),d&&(Dt(i,kc(u)),d=!1)},m=()=>{p(),n(t(Sc,{onError:s},t(_c,{bus:r,hostElement:i,options:u})),a)};r.on(`handshake`,e=>{e.config&&(e.config.storageVersion&&o.rememberStorageVersion(e.config.storageVersion),l=e.config,f(),m())});let h=Dc(r,{getOptions:()=>u,getVisitorId:()=>o.getVisitorId(),getConversationId:()=>o.loadConversationId()});return{getOptions:()=>u,getUserOptions:()=>c,render:m,setUserOptions:e=>{c=e,f(),m()},patchUserOptions:e=>{c={...c,...e},f(),m()},destroy:()=>h()}}function kc(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:r}=It(e,Lt(),t.loadPanelOpen(),t.loadPanelSize());return Pt(e.mode,r,n)}var Ac=class{constructor(){z(this,`handlers`,new Map)}on(e,t){let n=this.handlers.get(e);return n||(n=new Set,this.handlers.set(e,n)),n.add(t),()=>this.handlers.get(e)?.delete(t)}emit(e,t){let n=this.handlers.get(e);if(n)for(let e of n)try{e(t)}catch{}}clear(){this.handlers.clear()}},jc=class extends HTMLElement{constructor(...e){super(...e),z(this,`bus`,new Ac),z(this,`mountResult`,null),z(this,`runtime`,null)}static get observedAttributes(){return at}connectedCallback(){this.boot()}disconnectedCallback(){this.mountResult&&(this.runtime?.destroy(),this.runtime=null,n(null,this.mountResult.appRoot),this.bus.clear())}attributeChangedCallback(){this.isConnected&&this.boot()}boot(){let e=ot(e=>this.getAttribute(e));if(this.runtime){this.runtime.setUserOptions(e);return}let t=we(e);this.mountResult||(this.mountResult=xt({existingHost:this,position:bt(t.mode)}));let n=pt(t.widgetId,t.storage,t.aiAgentDeploymentId);this.runtime=Oc({bus:this.bus,host:this.mountResult.hostElement,appRoot:this.mountResult.appRoot,persistence:n,initialRaw:e,reportError:e=>this.bus.emit(`error`,e)}),this.runtime.render()}};let Mc=!1;function Nc(){if(Mc||typeof customElements>`u`)return;let e=y.tagName;customElements.get(e)||customElements.define(e,jc),Mc=!0}typeof customElements<`u`&&Nc();export{Nc as registerWebComponent};
12
+ `).trim(),O=!b&&e.status!==`error`&&!m.value&&D.length>0,k=E||O;return h(`div`,{class:`${X}-bubble-row`,"data-role":e.role,"data-testid":ii(G.messageBubble,e.serverMessageId??e.id),children:g(`div`,{class:`${X}-bubble-col`,children:[g(`div`,{class:`${X}-bubble`,children:[e.role===`operator`&&e.operatorInitials?h(`span`,{class:`${X}-bubble-author`,children:e.operatorInitials}):null,g(`div`,{class:`${X}-bubble-body`,children:[x?h(xo,{label:t.loading}):p.map((n,l)=>h(go,{part:n,active:S,live:b,strings:t,showReasoning:r,showToolCalls:i,showSources:a,interactive:o&&(n.kind!==`tool`||Fn(e,l)),superseded:s,tool:c},`${yo(n)}#${l}`)),C&&h(bo,{}),e.status===`error`&&e.errorText||m.value?g(`div`,{class:`${X}-error`,role:`alert`,children:[h(`span`,{children:e.errorText??t.errorGeneric}),l?h(`button`,{type:`button`,class:`${X}-error-retry`,onClick:l,"data-testid":G.messageRetry,children:t.errorRetry}):null]}):null]})]}),w||k?g(`div`,{class:`${X}-bubble-meta`,children:[w?h(`time`,{class:`${X}-bubble-time`,dateTime:w.iso,title:w.full,children:w.short}):null,k?g(`div`,{class:`${X}-bubble-actions`,children:[E&&e.serverMessageId?h(Wa,{messageId:e.serverMessageId,initial:e.feedback??null,strings:t,onFeedback:d}):null,O?h(mo,{text:D,strings:t}):null]}):null]}):null]})})}function mo({text:e,strings:t}){let[n,r]=c(!1),i=()=>{navigator.clipboard?.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1500)}).catch(()=>{})},a=n?t.copied:t.copy;return h(`button`,{type:`button`,class:`${X}-msg-action`,"data-active":n?`true`:void 0,"aria-label":a,title:a,onClick:i,"data-testid":G.messageCopy,children:h(n?wr:Xr,{})})}function ho(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 go({part:e,active:t,live:n,strings:r,showReasoning:i,showToolCalls:a,showSources:o,interactive:s,superseded:c,tool:l}){switch(e.kind){case`step-start`:return null;case`text`:return h(Ba,{textSig:e.textSig,doneSig:e.doneSig});case`reasoning`:return i?h(vo,{part:e,active:t,strings:r}):null;case`tool`:return h(_o,{part:e,strings:r,showToolCalls:a,interactive:s,superseded:c,live:n,tool:l});case`file`:return e.mediaType.startsWith(`image/`)?h(`img`,{src:e.url,alt:``,loading:`lazy`}):h(`a`,{href:e.url,target:`_blank`,rel:`noreferrer noopener`,children:e.url});case`source`:return o?h(Ka,{part:e,strings:r}):null}}function _o({part:e,strings:t,showToolCalls:n,interactive:r,superseded:i,live:a,tool:o}){let s=f(()=>e.approvalSig.value!==void 0);if(o?.humanInLoop){if(ba(e.toolName))return h(no,{part:e,strings:t,active:r,superseded:i,onDecision:o.onDecision,onEdit:o.onEdit});if(s.value)return h(qa,{part:e,strings:t,active:r,superseded:i,onDecision:o.onDecision,onEdit:o.onEdit})}return n?h(uo,{part:e,strings:t,live:a}):null}function vo({part:e,active:t,strings:n}){return g(`details`,{class:`${X}-reasoning`,"data-testid":G.reasoning,open:t,"data-active":t?`true`:void 0,children:[h(`summary`,{class:`${X}-reasoning-summary`,children:h(`span`,{class:`${X}-reasoning-label`,children:t?n.thinking:n.thoughts})}),h(`div`,{class:`${X}-reasoning-body`,children:h(Ba,{textSig:e.textSig,doneSig:e.doneSig})})]})}function yo(e){switch(e.kind){case`text`:case`reasoning`:case`step-start`:return`${e.kind}:${e.id}`;case`tool`:return`tool:${e.toolCallId}`;case`file`:return`file:${e.url}`;case`source`:return`source:${e.sourceId}`}}function bo(){return g(`span`,{class:`${X}-typing`,"data-testid":G.typingDots,"aria-hidden":`true`,children:[h(`span`,{}),h(`span`,{}),h(`span`,{})]})}function xo({label:e}){return g(`span`,{class:`${X}-loading`,role:`status`,children:[h(`span`,{class:`${X}-loading-spinner`,"aria-hidden":`true`}),h(`span`,{class:`${X}-loading-label`,children:e})]})}const So=y.cssPrefix;function Co({messagesSig:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:o,showSources:l,enableMessageFeedback:u,onFeedback:d,loading:p,idle:m,tool:_,onRetry:v,form:y,formMarkers:b,onFillForm:x}){let S=s(null),C=f(()=>e.value),[w,T]=c(!1),E=s(!1),D=s(!1),O=s(!1),k=s(0),A=()=>O.current||performance.now()-k.current<350,ee=s(0),te=e=>{let t=e.scrollHeight-e.clientHeight>1;e.dataset.fadeTop=t&&e.scrollTop>1?`true`:`false`,e.dataset.fadeBottom=t&&e.scrollHeight-e.scrollTop-e.clientHeight>1?`true`:`false`},ne=e=>T(e.scrollHeight-e.scrollTop-e.clientHeight>240),j=e=>{ee.current=performance.now(),e.scrollTop=e.scrollHeight,te(e)},re=(e,t)=>{j(e);let n=t,r=0,i=()=>{j(e),--n>0&&(r=requestAnimationFrame(i))};return t>0&&(r=requestAnimationFrame(i)),()=>cancelAnimationFrame(r)},ie=(e,t)=>{let n,r,i,a=-1,o=()=>{n.disconnect(),r.disconnect(),clearTimeout(i)},s=()=>{if(D.current||A()||a>=0&&e.scrollTop<a-4)return o();j(e),a=e.scrollTop};return n=new ResizeObserver(s),r=new MutationObserver(s),s(),n.observe(e),r.observe(e,{childList:!0,subtree:!0,characterData:!0}),i=setTimeout(o,t),o},ae=C.value[0]?.id;a(()=>{let e=S.current;if(e&&C.value.length!==0&&(E.current=!0,C.value.some(e=>e.role===`user`)))return ie(e,300)},[ae]);let oe=s(0);i(()=>{let e=S.current,t=C.value,n=oe.current;if(oe.current=t.length,e&&E.current){if(t.slice(n).some(e=>e.role===`user`))return D.current=!1,re(e,3);t.some(e=>e.role===`user`)&&(D.current||A()||e.scrollHeight-e.scrollTop-e.clientHeight<120&&j(e))}},[C.value.length]);let se=s(null);i(()=>{let e=S.current,t=C.value.at(-1),n=se.current;if(se.current=t?.id??null,e&&E.current&&!(!t||t.id!==n||t.status!==`streaming`))return D.current=!1,re(e,3)},[C.value]),i(()=>{let e=S.current;if(!e)return;let t=C.value.at(-1);if(!t||t.status!==`streaming`&&!C.value.some(e=>e.role===`user`))return;let n=()=>{D.current||A()||e.scrollHeight-e.scrollTop-e.clientHeight<240&&j(e)};if(t.status!==`streaming`)return ie(e,300);n();let r=new MutationObserver(n);return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>r.disconnect()},[C.value]);let ce=y?.form.id,M=!!y&&(b??[]).some(e=>e.formId===y.form.id);a(()=>{let e=S.current;!e||!ce||D.current||C.value.some(e=>e.role===`user`)&&(M?e.querySelector(`[data-testid="${G.formGate}"]`)?.scrollIntoView({block:`nearest`}):j(e))},[ce,M]),i(()=>{let e=S.current;if(!e)return;let t=()=>{ne(e),te(e),performance.now()-ee.current>150&&(D.current=e.scrollHeight-e.scrollTop-e.clientHeight>8)},n=()=>{D.current=!0},r=e=>{e.deltaY<0&&n()},i=0,a=e=>{i=e.touches[0]?.clientY??0,O.current=!0},o=e=>{(e.touches[0]?.clientY??0)>i+4&&n()},s=()=>{O.current=!1,k.current=performance.now()},c=()=>{O.current=!0};return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`wheel`,r,{passive:!0}),e.addEventListener(`touchstart`,a,{passive:!0}),e.addEventListener(`touchmove`,o,{passive:!0}),e.addEventListener(`touchend`,s,{passive:!0}),e.addEventListener(`touchcancel`,s,{passive:!0}),e.addEventListener(`pointerdown`,c,{passive:!0}),window.addEventListener(`pointerup`,s,{passive:!0}),window.addEventListener(`pointercancel`,s,{passive:!0}),ne(e),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`wheel`,r),e.removeEventListener(`touchstart`,a),e.removeEventListener(`touchmove`,o),e.removeEventListener(`touchend`,s),e.removeEventListener(`touchcancel`,s),e.removeEventListener(`pointerdown`,c),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[]);let le=()=>{let e=S.current;e&&(D.current=!1,j(e))},ue=[],de=``,fe=C.value.at(-1)?.id,N=[...b??[]].toSorted((e,t)=>(e.createdAt??1/0)-(t.createdAt??1/0)),pe=e=>y&&e.formId===y.form.id?h(va,{form:y.form,strings:t,onSubmit:y.onSubmit,onSkip:y.onSkip},`gate:${e.formId}`):h(ya,{marker:e,strings:t,onFill:!y&&x?()=>x(e.formId):void 0},e.key),me=e=>{for(let t=N[0];t?.createdAt!==void 0&&!(e!==void 0&&t.createdAt>e);t=N[0])N.shift(),ue.push(pe(t))};for(let e of C.value){if(e.role===`assistant`&&e.id!==fe&&Bn(e))continue;me(e.createdAt);let i=wo(e.createdAt);i&&i!==de&&(ue.push(h(`div`,{class:`${So}-date-divider`,children:h(`span`,{class:`${So}-date-pill`,title:To(e.createdAt),children:Eo(e.createdAt,t)})},`day:${i}`)),de=i),ue.push(h(fo,{message:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:o,showSources:l,interactive:!!m&&e.id===fe,superseded:e.id!==fe,tool:_,onRetry:m&&e.id===fe?v:void 0,enableMessageFeedback:u,onFeedback:d},e.id))}for(let e of N)ue.push(pe(e));return g(`div`,{class:`${So}-list-wrap`,children:[g(`div`,{ref:S,class:`${So}-list ${So}-list--fade`,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,children:[p&&C.value.length===0?h(`div`,{class:`${So}-list-loading`,role:`status`,children:t.conversationLoading}):null,ue,y&&!M?h(va,{form:y.form,strings:t,onSubmit:y.onSubmit,onSkip:y.onSkip}):null]}),w?h(`button`,{type:`button`,class:`${So}-jump`,onClick:le,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":G.scrollToBottom,children:h(kr,{})}):null]})}function wo(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function To(e){if(typeof e!=`number`||!Number.isFinite(e))return``;try{return new Date(e).toLocaleDateString(void 0,{dateStyle:`full`})}catch{return``}}function Eo(e,t){let n=new Date(e),r=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime(),i=Math.round((r(new Date)-r(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`})}const Do=[`today`,`yesterday`,`lastWeek`,`older`];function Oo(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return`older`;let r=Math.floor((Ao(e)-Ao(n))/(1440*60*1e3));return r<=0?`today`:r===1?`yesterday`:r<7?`lastWeek`:`older`}function ko(e,t){let n=new Map;for(let r of t){let t=Oo(e,r.lastMessageAt),i=n.get(t);i?i.push(r):n.set(t,[r])}return Do.filter(e=>n.has(e)).map(e=>({bucket:e,conversations:n.get(e)}))}function Ao(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}const jo=M.scope(`history`),Mo={today:`dateToday`,yesterday:`dateYesterday`,lastWeek:`dateLastWeek`,older:`dateOlder`};function No(e,t,n){let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:`numeric`,minute:`2-digit`}).format(r):t-r<10080*60*1e3?new Intl.DateTimeFormat(n,{weekday:`short`}).format(r):new Intl.DateTimeFormat(n,{month:`short`,day:`numeric`}).format(r):``}function Po({transport:e,strings:t,locale:n,persistence:r,visitorId:a,onSelect:o,onNewConversation:s}){let l=y.cssPrefix,u=e.peekConversations({visitorId:a}),[d,f]=c(u?`loaded`:`loading`),[p,_]=c(u?.conversations??[]);i(()=>{let t=!1;return e.listConversations({visitorId:a}).then(e=>{if(t)return;let n=e.conversations??[];_(n),f(`loaded`),r.saveHistoryCount(n.length)}).catch(e=>{t||(jo.warn(`listConversations failed`,{err:e}),f(`error`))}),()=>{t=!0}},[e,a,r]);let v=s?h(`div`,{class:`${l}-history-footer`,children:g(`button`,{type:`button`,class:`${l}-history-new`,onClick:s,"data-testid":G.sidebarNewConversation,children:[h(or,{}),t.newConversation]})}):null;if(d===`loading`){let e=Math.min(r.loadHistoryCount()??3,6);return g(m,{children:[h(`div`,{class:`${l}-history`,"aria-busy":`true`,"aria-label":t.historyLoading,children:g(`div`,{class:`${l}-history-group`,"aria-hidden":`true`,children:[h(`div`,{class:`${l}-history-heading`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-heading`})}),h(`div`,{class:`${l}-history-card`,children:Array.from({length:Math.max(1,e)},(e,t)=>g(`div`,{class:`${l}-history-item ${l}-history-item-skeleton`,children:[h(`span`,{class:`${l}-history-avatar ${l}-skeleton`}),g(`span`,{class:`${l}-history-body`,children:[g(`span`,{class:`${l}-history-row`,children:[h(`span`,{class:`${l}-history-title`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-title`})}),h(`span`,{class:`${l}-history-time`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-time`})})]}),h(`span`,{class:`${l}-history-row`,children:h(`span`,{class:`${l}-history-preview`,children:h(`span`,{class:`${l}-skeleton ${l}-skeleton-preview`})})})]})]},t))})]})}),v]})}if(d===`error`||p.length===0)return g(m,{children:[h(`div`,{class:`${l}-history-empty`,children:t.historyEmpty}),v]});let b=Date.now(),x=ko(b,p);return g(m,{children:[h(`div`,{class:`${l}-history`,role:`list`,children:x.map(e=>g(`div`,{class:`${l}-history-group`,children:[h(`div`,{class:`${l}-history-heading`,children:t[Mo[e.bucket]]}),h(`div`,{class:`${l}-history-card`,children:e.conversations.map(e=>g(`button`,{type:`button`,role:`listitem`,class:`${l}-history-item`,onClick:()=>o(e),"data-closed":e.canContinue?void 0:`true`,"data-unread":e.hasUnread?`true`:void 0,"data-testid":ii(G.historyItem,e.conversationId),children:[h(`span`,{class:`${l}-history-avatar`,"aria-hidden":`true`,children:h(Mr,{})}),g(`span`,{class:`${l}-history-body`,children:[g(`span`,{class:`${l}-history-row`,children:[h(`span`,{class:`${l}-history-title`,children:e.title}),h(`span`,{class:`${l}-history-time`,children:No(e.lastMessageAt,b,n)})]}),g(`span`,{class:`${l}-history-row`,children:[h(`span`,{class:`${l}-history-preview`,children:e.preview??(e.canContinue?t.historyContinue:t.conversationClosed)}),e.hasUnread?h(`span`,{class:`${l}-history-dot`}):null]})]})]},e.conversationId))})]},e.bucket))}),v]})}const Fo=y.cssPrefix;function Io({suggestions:e,onPick:t}){return e.length===0?null:h(`div`,{class:`${Fo}-suggestions`,role:`group`,"aria-label":`Suggested replies`,children:e.map((e,n)=>h(`button`,{type:`button`,class:`${Fo}-suggestion`,onClick:()=>t(e),"data-testid":ii(G.suggestion,n),children:e.label},e.id))})}const Z=y.cssPrefix;function Lo(e){let{options:t,onClose:n}=e,a=t.strings,o=s(null);i(()=>{let e=o.current;if(!e)return;let t=yi(e),r=e=>{e.key===`Escape`&&n?.()};return e.addEventListener(`keydown`,r),()=>{t(),e.removeEventListener(`keydown`,r)}},[n]);let c=e.composerApiRef,{visible:l}=qi({containerRef:o,onDrop:r(e=>{c.current?.attachFromDrop(e)},[c])});return hi(o.current,t.mode===`modal`),g(`div`,{ref:o,class:`${Z}-panel`,role:`dialog`,"aria-modal":`false`,"aria-label":a.panelTitle,style:{position:`relative`},"data-testid":G.panel,children:[h(Ro,{...e,containerEl:o.current,dragOver:l,composerAttachApiRef:c}),h(Wo,{poweredBy:e.options.poweredBy})]})}function Ro(e){let{options:t,transport:n,feedback:r,bus:i,persistence:a,panelSize:o,view:s,canSend:c,isStreaming:l,controlMode:u,assignedOperatorInitials:d,operatorAvailable:f,operatorRequestEnabled:p,onRequestOperator:_,onCancelRequest:v,loadingMessages:y,messagesSig:b,agent:x,suggestions:S,initialWidgetSize:C,visitorId:w,onClose:T,onBack:E,onClear:D,onToggleHistory:O,onSelectHistoryConversation:k,onNewConversation:A,onWidgetSizeChange:ee,onSend:te,onStop:ne,onSuggestion:j,activeForm:re,formMarkers:ie,onFormSubmit:ae,onFormSkip:oe,onFormFill:se,tool:ce,onRetry:M,onMessageFeedback:le,containerEl:ue,dragOver:de,composerAttachApiRef:fe}=e,N=t.strings,pe;return pe=re?null:c?g(m,{children:[u&&u!==`ai-agent`?h(Vo,{controlMode:u,operatorInitials:d,operatorAvailable:f,onCancelRequest:v,strings:N}):null,!l&&u===`ai-agent`&&h(Io,{suggestions:S,onPick:j}),h(Wi,{options:t,transport:n,feedback:r,bus:i,isStreaming:l,operatorRequestEnabled:p,controlMode:u,onRequestOperator:_,onSend:te,onStop:ne,attachApiRef:fe})]}):h(Bo,{label:N.conversationClosed,ctaLabel:N.startNewConversation,onNewConversation:D}),g(m,{children:[s===`history`?h(zo,{strings:N,onBack:O,onClose:T,showClose:_i(t.mode,o,t.actions)}):g(`header`,{class:`${Z}-header`,"data-testid":G.panelHeader,children:[E?h(`button`,{type:`button`,class:`${Z}-icon-btn`,onClick:E,"aria-label":N.moduleBack,title:N.moduleBack,children:h(Dr,{})}):null,x?h(Si,{agent:x,strings:N}):h(`h1`,{children:N.panelTitle}),h(ta,{panelProps:e,variant:`chat`})]}),s===`history`?h(Po,{transport:n,strings:N,locale:t.locale,persistence:a,visitorId:w,onSelect:e=>k(e.conversationId),onNewConversation:A}):g(m,{children:[h(Ki,{visible:de,strings:N}),h(Co,{messagesSig:b,strings:N,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,showSources:t.showSources,enableMessageFeedback:t.enableMessageFeedback,onFeedback:le,loading:y,idle:!l,tool:ce,onRetry:M,form:re?{form:re,onSubmit:ae,onSkip:oe}:null,formMarkers:ie,onFillForm:se}),pe,h(Uo,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?h(fi,{panelEl:ue,resize:t.size.resize,position:t.position,initialSize:C,onSizeChange:ee,strings:N}):null]})}function zo({strings:e,onBack:t,onClose:n,showClose:r}){return g(`header`,{class:`${Z}-header`,children:[h(`button`,{type:`button`,class:`${Z}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:h(Dr,{})}),h(`h1`,{children:e.historyTitle}),r?h(`button`,{type:`button`,class:`${Z}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:h(ar,{})}):null]})}function Bo({label:e,ctaLabel:t,onNewConversation:n}){return g(`div`,{class:`${Z}-readonly-banner`,role:`note`,children:[h(`span`,{class:`${Z}-readonly-label`,children:e}),h(`button`,{type:`button`,class:`${Z}-readonly-cta`,onClick:n,children:t})]})}function Vo({controlMode:e,operatorInitials:t,operatorAvailable:n,onCancelRequest:r,strings:i}){let a=Ho(e,t,n,i);return g(`div`,{class:`${Z}-operator-banner`,role:`status`,"data-mode":e,"data-testid":G.operatorBanner,children:[h(`span`,{class:`${Z}-operator-pulse`,"aria-hidden":`true`}),h(`span`,{class:`${Z}-operator-label`,children:a}),e===`awaiting_operator`&&r?h(`button`,{type:`button`,class:`${Z}-operator-cancel`,"data-testid":G.operatorCancelRequest,onClick:r,children:i.cancelOperatorRequest}):null]})}function Ho(e,t,n,r){return e===`operator`?r.chattingWithOperator.replace(`{operator}`,t??``):n===!1?r.noOperatorAvailable:r.connectingOperator}function Uo({disclaimer:e}){return e?h(`div`,{class:`${Z}-composer-footer`,children:h(`div`,{class:`${Z}-disclaimer`,children:e})}):null}function Wo({poweredBy:e}){return e?h(`div`,{class:`${Z}-poweredby-bar`,children:h(Go,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function Go({logoUrl:e,text:t,href:n}){let r=g(m,{children:[e?h(`img`,{class:`${Z}-poweredby-logo`,src:e,alt:``,loading:`lazy`}):null,t?h(`span`,{children:t}):null]});return n?h(`a`,{class:`${Z}-poweredby`,href:n,target:`_blank`,rel:`noopener noreferrer`,children:r}):h(`span`,{class:`${Z}-poweredby`,children:r})}function Ko(e){let t=s(e);t.current=e;let n=s(null);return n.current??(n.current=qo(t)),n.current}function qo(e){let t=d(null),n=new Set,r=t=>`${e.current.conversationId()??``}:${t}`,i=t=>t.frequency===`always`?!1:t.frequency===`conversation`?n.has(r(t.id)):t.id in e.current.persistence.loadFormsDone(),a=(n,r)=>{if(t.value)return;let a=e.current;if(n===`manual`){let e=a.forms.list.find(e=>e.id===r);e&&(t.value={form:e,trigger:`manual`});return}for(let e of a.forms.byTrigger[n]??[]){let r=e.triggers.find(e=>e.kind===n);if(!(!r||!Jo(r,a)||i(e)||!Yo(e,a))){t.value={form:e,trigger:n};return}}},o=(i,a)=>{let o=t.value;if(!o)return;t.value=null;let{form:s,trigger:c}=o;s.frequency===`conversation`?n.add(r(s.id)):s.frequency!==`always`&&e.current.persistence.saveFormDone(s.id),e.current.onComplete(s,c,i,a)};return{activeForm:t,fire:a,refresh:()=>{let n=t.value;if(!n)return;let r=e.current.forms.list.find(e=>e.id===n.form.id);r&&r!==n.form&&(t.value={form:r,trigger:n.trigger})},complete:e=>o(e,!1),skip:()=>o({},!0)}}function Jo(e,t){return e.kind===`after-messages`?t.messageCount()>=Number(e.param??0):e.kind!==`page-area`||t.pageArea()===e.param}function Yo(e,t){let n=e.when;if(!n)return!0;if(n.missingContext?.length){let e=t.userContext()??{};if(n.missingContext.some(t=>e[t]!==void 0&&e[t]!==``))return!1}if(n.pageArea&&!(Array.isArray(n.pageArea)?n.pageArea:[n.pageArea]).includes(t.pageArea()??``))return!1;let r=t.messageCount();return!(n.minMessages!=null&&r<n.minMessages||n.maxMessages!=null&&r>n.maxMessages)}function Xo(e){let t=y.cssPrefix,{site:n,blocks:r,strings:i,collapsed:a}=e,o=r?.navigation??[],s=r?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return g(`aside`,{class:`${t}-sidebar`,"data-collapsed":a?`true`:`false`,"data-testid":G.sidebar,children:[g(`div`,{class:`${t}-sidebar-header`,children:[h(Zo,{site:n}),h(`button`,{type:`button`,class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?`false`:`true`,title:c,onClick:e.onToggleCollapsed,"data-testid":G.sidebarToggle,children:h(Qo,{collapsed:a})})]}),a?null:g(m,{children:[o.length>0?h(`nav`,{class:`${t}-sidebar-section`,"data-section":`navigation`,children:h($o,{items:o})}):null,s.length>0?h(`div`,{class:`${t}-sidebar-section`,"data-section":`link-cards`,children:h(es,{items:s})}):null,e.showConversations?h(`div`,{class:`${t}-sidebar-conversations`,children:h(Po,{transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,visitorId:e.visitorId,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function Zo({site:e}){let t=y.cssPrefix;if(e?.logo?.url){let n=e.logo.alt??e.title??`Logo`;return g(`picture`,{children:[e.logoDark?.url?h(`source`,{srcset:e.logoDark.url,media:`(prefers-color-scheme: dark)`}):null,h(`img`,{class:`${t}-sidebar-logo`,src:e.logo.url,alt:n})]})}return h(`div`,{class:`${t}-sidebar-title`,children:e?.title??y.name})}function Qo({collapsed:e}){return h(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"aria-hidden":`true`,children:e?h(`polyline`,{points:`9 6 15 12 9 18`}):h(`polyline`,{points:`15 6 9 12 15 18`})})}function $o({items:e}){let t=y.cssPrefix;return h(`ul`,{class:`${t}-sidebar-nav`,children:e.map(e=>h(`li`,{children:g(`a`,{class:`${t}-sidebar-nav-item`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[e.icon?h(`span`,{class:`${t}-sidebar-nav-icon`,"data-icon":e.icon}):null,h(`span`,{class:`${t}-sidebar-nav-label`,children:e.label})]})},e.id??e.label))})}function es({items:e}){let t=y.cssPrefix;return h(`div`,{class:`${t}-sidebar-cards`,children:e.map(e=>g(`a`,{class:`${t}-sidebar-card`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[h(`div`,{class:`${t}-sidebar-card-label`,children:e.label}),e.description?h(`div`,{class:`${t}-sidebar-card-desc`,children:e.description}):null]},e.id??e.label))})}const ts=y.cssPrefix;function ns(e){return g(`main`,{class:`${ts}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?`true`:`false`,children:[h(Xo,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,visitorId:e.visitorId,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),h(`section`,{class:`${ts}-page-chat`,"aria-label":`Chat`,children:e.children})]})}const rs=e=>Object.fromEntries(e.map(e=>[e,[]]));function is(e,t,n){let r=d({activeTab:e,stacks:rs(t)});return{sig:r,switchTab(e){r.value.activeTab!==e&&(r.value={...r.value,activeTab:e},n?.(e))},push(e){let t=r.value,n=t.stacks[t.activeTab]??[];r.value={...t,stacks:{...t.stacks,[t.activeTab]:[...n,e]}}},pop(){let e=r.value,t=e.stacks[e.activeTab]??[];t.length!==0&&(r.value={...e,stacks:{...e.stacks,[e.activeTab]:t.slice(0,-1)}})},reset(e){r.value={activeTab:e,stacks:rs(t)}}}}const as=e=>e.stacks[e.activeTab]??[],os=e=>as(e).at(-1),ss=e=>as(e).length===0,cs={Icon:Hr},ls=y.cssPrefix;function us({title:e,actions:t}){return g(`header`,{class:`${ls}-back-header`,"data-variant":`title`,children:[h(`span`,{class:`${ls}-back-spacer`,"aria-hidden":`true`}),h(`h1`,{class:`${ls}-back-title`,children:e}),t??h(`span`,{class:`${ls}-back-spacer`,"aria-hidden":`true`})]})}function ds({title:e,backLabel:t,onBack:n,actions:r,testid:i}){return g(`header`,{class:`${ls}-back-header`,"data-testid":i,children:[h(`button`,{type:`button`,class:`${ls}-icon-btn`,onClick:n,"aria-label":t,title:t,children:h(Dr,{})}),h(`h1`,{class:`${ls}-back-title`,children:e}),r??h(`span`,{class:`${ls}-back-spacer`,"aria-hidden":`true`})]})}function fs(e,t){return e instanceof Ut&&e.status===429?t.errorRateLimited:t.errorGeneric}const ps=y.cssPrefix;function ms({placeholder:e,onActivate:t}){return g(`button`,{type:`button`,class:`${ps}-home-search`,onClick:t,"data-testid":G.homeSearch,children:[h(`span`,{class:`${ps}-home-search-text`,children:e}),h(`span`,{class:`${ps}-home-search-icon`,"aria-hidden":`true`,children:h(Rr,{})})]})}function hs({placeholder:e,value:t,onInput:n}){return g(`div`,{class:`${ps}-home-search`,"data-input":`true`,children:[h(`input`,{type:`search`,class:`${ps}-home-search-input`,placeholder:e,value:t,onInput:e=>n(e.currentTarget.value),"data-testid":G.helpSearch}),h(`span`,{class:`${ps}-home-search-icon`,"aria-hidden":`true`,children:h(Rr,{})})]})}const gs=y.cssPrefix;function _s({title:e,subtitle:t,onClick:n,testid:r}){return g(`button`,{type:`button`,class:`${gs}-list-row`,onClick:n,"data-testid":r,children:[g(`span`,{class:`${gs}-list-row-body`,children:[h(`span`,{class:`${gs}-list-row-title`,children:e}),t?h(`span`,{class:`${gs}-list-row-sub`,children:t}):null]}),h(`span`,{class:`${gs}-list-row-chevron`,"aria-hidden":`true`,children:h(ur,{})})]})}const vs=y.cssPrefix;function ys({tone:e=`info`,message:t,onRetry:n,strings:r}){return g(`div`,{class:`${vs}-module-empty`,role:e===`error`?`alert`:`status`,"aria-live":`polite`,children:[h(`span`,{children:t}),n?h(`button`,{type:`button`,class:`${vs}-module-retry`,onClick:n,children:r.errorRetry}):null]})}const bs=y.cssPrefix,xs=M.scope(`help`),Ss=(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 Cs(e){let t=new Map;for(let n of e){let e=n.categories?.[0]??``;(t.get(e)??t.set(e,[]).get(e)).push(n)}return[...t.entries()]}function ws(e,t){let n=t.toLowerCase(),r=n.indexOf(e);if(r!==-1)return 100-Math.min(r,99);let i=0;for(let t of e){if(i=n.indexOf(t,i),i===-1)return 0;i+=1}return 1}function Ts(e,t){let n=t.toLowerCase().trim();return n?e.map(e=>({item:e,score:Math.max(ws(n,e.title)*2,ws(n,e.description??``))})).filter(e=>e.score>0).toSorted((e,t)=>t.score-e.score).map(e=>e.item):[]}function Es({article:e,nav:t}){return h(_s,{title:e.title,subtitle:e.description,onClick:()=>Ss(t,e),testid:ii(G.helpArticle,e.id)})}function Ds({transport:e,strings:t,config:n,nav:r,bus:a,panelProps:s}){let l=n.contentTags,[u,d]=c(`loading`),[f,p]=c(t.errorGeneric),[m,_]=c([]),[v,y]=c(``),[b,x]=c(0);i(()=>{let n=!1;return d(`loading`),e.listContent({tags:l,sortBy:`order`,limit:100}).then(e=>{if(n)return;let t=e.items??[];_(t),d(`loaded`),a.emit(`contentView`,{section:`help`,tags:l?.join(`,`),count:t.length})}).catch(e=>{n||(xs.warn(`listContent (help) failed`,{err:e}),p(fs(e,t)),d(`error`))}),()=>{n=!0}},[e,l,b,a]);let S=o(()=>Ts(m,v),[m,v]);i(()=>{let e=v.trim();if(!e)return;let t=setTimeout(()=>a.emit(`contentSearch`,{queryLength:e.length,hitCount:S.length}),600);return()=>clearTimeout(t)},[v,S,a]);function C(){return v.trim().length>0?S.length===0?h(ys,{message:t.helpSearchEmpty,strings:t}):h(`div`,{class:`${bs}-help-card`,children:S.map(e=>h(Es,{article:e,nav:r},e.id))}):u===`loading`?h(ys,{message:t.helpLoading,strings:t}):u===`error`?h(ys,{tone:`error`,message:f,onRetry:()=>x(e=>e+1),strings:t}):m.length===0?h(ys,{message:t.helpEmpty,strings:t}):Cs(m).map(([e,t])=>g(`section`,{class:`${bs}-help-group`,children:[e?h(`h2`,{class:`${bs}-help-section-title`,children:e}):null,h(`div`,{class:`${bs}-help-card`,children:t.map(e=>h(Es,{article:e,nav:r},e.id))})]},e))}return g(`div`,{class:`${bs}-module`,children:[h(us,{title:t.helpTitle,actions:h(ta,{panelProps:s,variant:`plain`})}),h(`div`,{class:`${bs}-module-pad`,children:h(hs,{placeholder:t.helpSearchPlaceholder,value:v,onInput:y})}),h(`div`,{class:`${bs}-help-list`,children:C()})]})}const Os={Icon:Nr,Root:e=>h(Ds,{...e})},ks=y.cssPrefix;function As({onClick:e,children:t,testid:n}){return e?h(`button`,{type:`button`,class:`${ks}-home-card`,"data-interactive":`true`,onClick:e,"data-testid":n,children:t}):h(`div`,{class:`${ks}-home-card`,"data-testid":n,children:t})}const Q=y.cssPrefix,js=M.scope(`home`);function Ms(e){let t=e.options.userContext?.name,n=e.config.greetingText?E(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}}const Ns=(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 Ps(e){let{transport:t,strings:n,config:r,nav:a,bus:o,panelProps:s}=e,[l,u]=c(null),[d,f]=c([]),p=r.contentTags?.join(`,`);i(()=>{if(r.showRecentConversations===!1)return;let e=!1;return t.listConversations({limit:1}).then(t=>!e&&u(t.conversations?.[0]??null)).catch(t=>!e&&js.warn(`listConversations (home) failed`,{err:t})),()=>{e=!0}},[t,r.showRecentConversations]),i(()=>{if(!r.contentTags?.length)return;let e=!1;return t.listContent({tags:r.contentTags,limit:6}).then(t=>{if(e)return;let n=t.items??[];f(n),o.emit(`contentView`,{section:`home`,tags:p,count:n.length})}).catch(t=>!e&&js.warn(`listContent (home) failed`,{err:t})),()=>{e=!0}},[t,p,o]);let _=Ms(e),v=r.userAvatars??[],y=r.status,b=y?.text?E(n,y.text):n.homeStatus,x=r.contentBlockTitle?E(n,r.contentBlockTitle):n.homeContentTitle;return h(`div`,{class:`${Q}-module ${Q}-home`,"data-testid":G.homeView,children:g(`div`,{class:`${Q}-home-scroll`,children:[g(`div`,{class:`${Q}-home-hero`,children:[g(`div`,{class:`${Q}-home-hero-top`,children:[r.brandName?h(`span`,{class:`${Q}-home-brand`,"data-testid":G.homeBrand,children:r.brandName}):h(`span`,{class:`${Q}-home-brand-spacer`,"aria-hidden":`true`}),g(`div`,{class:`${Q}-home-hero-actions`,children:[v.length>0?h(`div`,{class:`${Q}-home-avatars`,children:v.map(e=>h(`span`,{class:`${Q}-home-avatar`,title:e.role?`${e.name} · ${e.role}`:e.name,children:e.avatar?h(`img`,{src:e.avatar,alt:``,loading:`lazy`}):h(`span`,{children:bi(e.name)})},e.name))}):null,h(ta,{panelProps:s,variant:`plain`})]})]}),r.showGreeting===!1?null:g(m,{children:[h(`h1`,{class:`${Q}-home-greeting`,"data-testid":G.homeGreeting,children:_.title}),_.subtitle?h(`p`,{class:`${Q}-home-lead`,children:_.subtitle}):null]})]}),g(`div`,{class:`${Q}-home-cards`,children:[r.showSearchBar===!1?null:h(ms,{placeholder:n.homeSearchPlaceholder,onActivate:()=>a.switchToLayout(`help`)}),l?h(As,{onClick:()=>a.selectConversation(l.conversationId),testid:G.homeRecent,children:g(`div`,{class:`${Q}-home-recent-row`,"data-unread":l.hasUnread?`true`:void 0,children:[h(`span`,{class:`${Q}-home-recent-avatar`,"aria-hidden":`true`,children:h(Hr,{})}),g(`span`,{class:`${Q}-home-recent-body`,children:[h(`span`,{class:`${Q}-home-recent-title`,children:l.title}),l.preview?h(`span`,{class:`${Q}-home-recent-preview`,children:l.preview}):null]}),l.hasUnread?h(`span`,{class:`${Q}-home-recent-dot`,"aria-label":`Unread`}):null]})}):null,y?h(As,{onClick:y.url?()=>a.push({kind:`iframe`,url:y.url,title:b}):void 0,children:g(`div`,{class:`${Q}-home-status`,"data-level":y.level??`operational`,children:[h(`span`,{class:`${Q}-home-status-icon`,"aria-hidden":`true`,children:h(zr,{})}),h(`span`,{class:`${Q}-home-status-text`,children:b})]})}):null,d.length>0?g(`section`,{class:`${Q}-home-content`,children:[h(`div`,{class:`${Q}-home-content-title`,children:x}),h(`div`,{class:`${Q}-home-content-list`,children:d.map(e=>h(_s,{title:e.title,subtitle:e.description,onClick:()=>Ns(a,e),testid:ii(G.homeContentRow,e.id)},e.id))})]}):null]})]})})}const Fs={Icon:Br,Root:e=>h(Ps,{...e})},Is=y.cssPrefix,Ls=M.scope(`news`);function Rs({transport:e,strings:t,config:n,nav:r,bus:a,panelProps:o}){let s=n.contentTags,[l,u]=c(`loading`),[d,f]=c(t.errorGeneric),[p,m]=c([]),[_,v]=c(0);i(()=>{let n=!1;return u(`loading`),e.listContent({tags:s,sortBy:`publishedAt`,sortOrder:`desc`}).then(e=>{if(n)return;let t=e.items??[];m(t),u(`loaded`),a.emit(`contentView`,{section:`news`,tags:s?.join(`,`),count:t.length})}).catch(e=>{n||(Ls.warn(`listContent (news) failed`,{err:e}),f(fs(e,t)),u(`error`))}),()=>{n=!0}},[e,s,_,a]);function y(){return l===`loading`?h(ys,{message:t.newsLoading,strings:t}):l===`error`?h(ys,{tone:`error`,message:d,onRetry:()=>v(e=>e+1),strings:t}):p.length===0?h(ys,{message:t.newsEmpty,strings:t}):h(`div`,{class:`${Is}-news-list`,children:p.map(e=>g(`button`,{type:`button`,class:`${Is}-news-card`,onClick:()=>r.push({kind:`content`,id:e.id,title:e.title}),"data-testid":ii(G.newsItem,e.id),children:[e.image?h(`img`,{class:`${Is}-news-hero`,src:e.image,alt:``,loading:`lazy`}):null,g(`span`,{class:`${Is}-news-body`,children:[h(`span`,{class:`${Is}-news-title`,children:e.title}),e.description?h(`span`,{class:`${Is}-news-summary`,children:e.description}):null]})]},e.id))})}return g(`div`,{class:`${Is}-module`,children:[h(us,{title:t.newsTitle,actions:h(ta,{panelProps:o,variant:`plain`})}),h(`div`,{class:`${Is}-module-scroll`,children:y()})]})}const zs={chat:cs,home:Fs,help:Os,news:{Icon:Vr,Root:e=>h(Rs,{...e})}},Bs=y.cssPrefix;function Vs({modules:e,activeTab:t,strings:n,hasUnread:r,onSelect:i}){return h(`nav`,{class:`${Bs}-tabbar`,role:`tablist`,"aria-label":n.panelTitle,children:e.map(e=>{let a=zs[e.layout].Icon,o=e.id===t,s=e.layout===`chat`&&r;return g(`button`,{type:`button`,role:`tab`,"aria-selected":o,class:`${Bs}-tab`,onClick:()=>i(e.id),"data-testid":ii(G.tab,e.id),children:[g(`span`,{class:`${Bs}-tab-icon`,"aria-hidden":`true`,children:[h(a,{}),s?h(`span`,{class:`${Bs}-tab-badge`,"data-testid":G.tabBadge,"aria-label":`Unread`}):null]}),h(`span`,{class:`${Bs}-tab-label`,children:E(n,e.label)})]},e.id)})})}const Hs=y.cssPrefix;function Us({url:e,title:t,strings:n,onBack:r,actions:i}){return g(`div`,{class:`${Hs}-module`,children:[h(ds,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:r,actions:i}),h(`iframe`,{class:`${Hs}-content-frame`,src:e,title:t||`content`,sandbox:`allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads`,referrerpolicy:`no-referrer`,loading:`lazy`,allow:`fullscreen`})]})}const Ws=y.cssPrefix,Gs=M.scope(`content`);function Ks({id:e,title:t,transport:n,strings:a,bus:o,onBack:s,actions:l}){let[u,d]=c(null),[f,p]=c(!1),[m,_]=c(0),v=r(()=>{p(!1),d(null),_(e=>e+1)},[]);i(()=>{let t=!1;return n.listContent({ids:[e],limit:1}).then(n=>{if(t)return;let r=n.items[0];r?(d(r),o.emit(`contentOpen`,{contentId:e,tags:r.tags?.length?r.tags.join(`,`):void 0})):p(!0)}).catch(e=>{t||(Gs.warn(`listContent (reader) failed`,{err:e}),p(!0))}),()=>{t=!0}},[n,e,m,o]),i(()=>{if(!u)return;let t=setTimeout(()=>o.emit(`contentRead`,{contentId:e}),5e3);return()=>clearTimeout(t)},[u,e,o]);let y=r(t=>{let n=(t.target?.closest?.(`a`))?.getAttribute(`href`)??``;n&&!n.startsWith(`#`)&&o.emit(`contentLinkClick`,{contentId:e})},[o,e]);function b(){return f?h(ys,{tone:`error`,message:a.errorGeneric,onRetry:v,strings:a}):u===null?h(ys,{message:a.contentLoading,strings:a}):g(`article`,{class:`${Ws}-content`,"data-testid":G.contentView,onClick:y,children:[u.image?h(`img`,{class:`${Ws}-content-hero`,src:u.image,alt:``,loading:`lazy`}):null,u.description?h(`p`,{class:`${Ws}-content-subtitle`,children:u.description}):null,h(Va,{text:u.content??``})]})}return g(`div`,{class:`${Ws}-module`,children:[h(ds,{title:u?.title||t||a.moduleBack,backLabel:a.moduleBack,onBack:s,actions:l,testid:G.backHeader}),h(`div`,{class:`${Ws}-module-scroll`,"data-testid":G.contentScroll,children:b()})]})}const qs=y.cssPrefix;function Js({panelProps:e,enabledModules:t,nav:n,bus:a,hasUnread:o,onSelectConversation:c,onStartNewConversation:l,onSetPanelSize:u}){let d=e.options,p=d.strings,m=s(null),_=s(new Set);i(()=>{let t=m.current;if(!t)return;let n=yi(t),r=t=>{t.key===`Escape`&&e.onClose?.()};return t.addEventListener(`keydown`,r),()=>{n(),t.removeEventListener(`keydown`,r)}},[e.onClose]);let v=e.composerApiRef,{visible:y}=qi({containerRef:m,onDrop:r(e=>{v.current?.attachFromDrop(e)},[v])});hi(m.current,d.mode===`modal`);let b=f(()=>n.sig.value).value,x=os(b),S=d.modules.byId[b.activeTab],C=x?.kind===`iframe`||x?.kind===`content`,w=t.length>1&&(ss(b)||!C),T=s(null);i(()=>{if(C&&T.current===null)T.current=e.panelSize,e.panelSize===`normal`&&u(`expanded`);else if(!C&&T.current!==null){let e=T.current;T.current=null,u(e)}},[C]);let E={push:n.push,pop:n.pop,switchTab:n.switchTab,switchToLayout:e=>{let r=t.find(t=>t.layout===e);r&&n.switchTab(r.id)},selectConversation:c,startNewConversation:l},D=t=>({options:d,transport:e.transport,strings:p,config:t,visitorId:e.visitorId,nav:E,bus:a,panelProps:e}),O=h(ta,{panelProps:e,variant:`plain`});S&&_.current.add(S.id);let k=t.filter(e=>_.current.has(e.id)),A=t=>{if(t.layout===`chat`)return h(Ro,{...e,containerEl:m.current,dragOver:y,composerAttachApiRef:v});let n=zs[t.layout].Root;return n?h(n,{...D(t)}):null};return g(`div`,{ref:m,class:`${qs}-panel ${qs}-messenger`,role:`dialog`,"aria-modal":`false`,"aria-label":p.panelTitle,style:{position:`relative`},"data-testid":G.messengerHome,children:[g(`div`,{class:`${qs}-messenger-body`,children:[k.map(e=>h(`div`,{class:`${qs}-messenger-pane`,hidden:C||e.id!==S?.id,children:A(e)},e.id)),x?.kind===`iframe`?h(Us,{url:x.url,title:x.title,strings:p,onBack:n.pop,actions:O}):x?.kind===`content`?h(Ks,{id:x.id,title:x.title,transport:e.transport,strings:p,bus:a,onBack:n.pop,actions:O}):null]}),w?h(Vs,{modules:t,activeTab:b.activeTab,strings:p,hasUnread:o,onSelect:n.switchTab}):null,h(Wo,{poweredBy:d.poweredBy}),d.size.resize?.enabled&&!(S?.layout===`chat`&&!x)?h(fi,{panelEl:m.current,resize:d.size.resize,position:d.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:p}):null]})}const Ys=y.cssPrefix;function Xs({strings:e,onClose:t}){return g(`div`,{class:`${Ys}-panel ${Ys}-modules-empty`,role:`dialog`,"aria-label":e.panelTitle,"data-testid":G.modulesEmpty,children:[t?h(`button`,{type:`button`,class:`${Ys}-icon-btn ${Ys}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:h(ar,{})}):null,h(`p`,{class:`${Ys}-modules-empty-text`,children:e.modulesEmpty})]})}function Zs(e,t,n,r){let i={role:n,text:r};e.emit(`message`,i),t.onMessage?.(i)}const Qs=M.scope(`hitl`);function $s(e){let t=e.partsSig.value.filter(e=>e.kind===`tool`);return t.length>0&&t.every(e=>{let t=e.stateSig.value;return t===`output-available`||t===`output-error`||t===`output-denied`||t===`approval-responded`})}function ec(e){let{streaming:t,messagesSig:n,sendAiTurn:i,bus:a,humanInLoop:s}=e,c=r((e,r)=>{if(t)return;let a=n.value.at(-1),o=a?.partsSig.value.find(t=>t.kind===`tool`&&t.toolCallId===e);if(!a||!o){Qs.warn(`decideTool: tool part not found`,{toolCallId:e});return}r(o),a.partsSig.value=[...a.partsSig.value],$s(a)&&(a.status=`streaming`,a.awaitingContinuation=!0,n.value=[...n.value],i({continueExisting:!0}))},[t,n,i]),l=r((e,t)=>{Qs.info(`toolResult`,{toolCallId:e}),a.emit(`toolResult`,{toolCallId:e}),c(e,e=>{e.outputSig.value=t,e.stateSig.value=`output-available`})},[a,c]),u=r((e,t,n)=>{Qs.info(`toolDecision`,{toolCallId:e,approved:t}),a.emit(`toolDecision`,{toolCallId:e,approved:t}),c(e,r=>{let i=r.approvalSig.value?.id??e;r.approvalSig.value={id:i,approved:t,reason:n},r.stateSig.value=`approval-responded`})},[a,c]),d=r(e=>{if(t)return;let r=n.value.at(-1),i=r?.partsSig.value.find(t=>t.kind===`tool`&&t.toolCallId===e);if(!r||!i)return;let a=i.approvalSig.value?.id??e;i.approvalSig.value={id:a},i.stateSig.value=`approval-requested`,r.partsSig.value=[...r.partsSig.value]},[t,n]);return{toolInteraction:o(()=>({humanInLoop:s,onResult:l,onDecision:u,onEdit:d}),[s,l,u,d])}}function tc({callout:e,persistence:t}){let n=e?.text??``,a=e?.persistent??!0,[o,s]=c(()=>!a&&t.loadCalloutDismissed(n));return i(()=>{s(!a&&t.loadCalloutDismissed(n))},[n,a,t]),{dismissed:o,dismissCallout:r(()=>{s(!0),a||t.saveCalloutDismissed(n)},[t,n,a])}}function nc(e){let{transport:t}=e,n=p(`ai-agent`),i=p(void 0),a=p(void 0),o=r(e=>{n.value=e.controlMode,i.value=e.assignedOperatorInitials,e.operatorAvailable!==void 0&&(a.value=e.operatorAvailable)},[n,i,a]);return{controlModeSig:n,assignedOperatorInitialsSig:i,operatorAvailableSig:a,applyControlState:o,adoptControlStateChunk:r(e=>{e.type===`data-control-state`&&o(en(e.data))},[o]),requestOperator:r(async()=>{if(n.value!==`ai-agent`)return;let e=await t.requestOperator();e&&o(en(e))},[t,n,o]),cancelRequestOperator:r(async()=>{if(n.value!==`awaiting_operator`)return;let e=await t.cancelRequestOperator();e&&o(en(e))},[t,n,o])}}function rc(e){let{hostElement:t,mode:n,panelSize:r,isOpen:o,setIsOpen:s}=e;a(()=>{Dt(t,Pt(n,r,o))},[t,o,r,n]),i(()=>{if(n!==`modal`||!o)return;let e=e=>{e.composedPath().some(e=>e instanceof HTMLElement&&e.classList.contains(`${y.cssPrefix}-panel`))||s(!1)};return t.addEventListener(`click`,e),()=>t.removeEventListener(`click`,e)},[t,o,n,s]),i(()=>{if(n!==`drawer`||!o)return;let e=e=>{e.key===`Escape`&&s(!1)};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[o,n,s])}const ic=M.scope(`reducer`);var ac=class{constructor(e,t){this.messagesSig=e,this.onReconcileNeeded=t,z(this,`active`,null),z(this,`openTextParts`,new Map),z(this,`partSeq`,0),z(this,`resumeIgnore`,!1)}attach(e){this.active=e,this.openTextParts.clear()}resetForReplay(e){e.partsSig.value=[],e.status=`streaming`,e.finishReason=void 0,e.errorText=void 0,e.suggestions=void 0,this.openTextParts.clear(),this.messagesSig.value=[...this.messagesSig.value]}truncateAfterLastTool(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);e.partsSig.value=t.slice(0,n+1),e.status=`streaming`,e.finishReason=void 0,e.errorText=void 0,e.suggestions=void 0,this.openTextParts.clear(),this.messagesSig.value=[...this.messagesSig.value]}detach(){this.active=null,this.openTextParts.clear()}applyResume(e){if(e.type===`data-control-state`||e.type===`data-conversation-rebind`)return null;if(e.type===`start`){let t=e.messageId,n=t===void 0?void 0:this.messagesSig.value.find(e=>e.serverMessageId===t||e.id===t),r=n!==void 0&&(n.awaitingContinuation===!0||Ln(n));if(n!==void 0&&!r&&On(n))return n!==void 0&&Pn(n)&&this.onReconcileNeeded?.(),this.resumeIgnore=!0,this.detach(),null;if(this.resumeIgnore=!1,n!==void 0)return r?(n.awaitingContinuation=!1,n.status=`streaming`,this.messagesSig.value=[...this.messagesSig.value]):n.status===`streaming`&&Nn(n)?this.truncateAfterLastTool(n):this.resetForReplay(n),this.attach(n),this.apply(e),null;let i=e.messageMetadata?.senderRole,a=this.messagesSig.value.at(-1);if(i===void 0&&a?.role===`assistant`&&a.status===`streaming`&&a.serverMessageId===void 0&&!En(a))return this.attach(a),this.apply(e),null;let o=mn();return this.attach(o),this.messagesSig.value=[...this.messagesSig.value,o],this.apply(e),null}if(this.resumeIgnore||!this.active)return null;if(this.apply(e),e.type===`finish`||e.type===`error`||e.type===`abort`){let e=this.active;return this.detach(),e}return null}ensureTextPart(e,t,n){let r=`${t}:${n}`,i=this.openTextParts.get(r);if(i)return i;let a={kind:t,id:`${n}#${this.partSeq++}`,textSig:d(``),doneSig:d(!1)};return this.openTextParts.set(r,a),sc(e,a),a}apply(e){let t=this.active;if(t)switch(e.type){case`start`:{e.messageId&&(t.serverMessageId=e.messageId);let n=e.messageMetadata;n?.senderRole===`operator`?(t.role=`operator`,n.operatorInitials&&(t.operatorInitials=n.operatorInitials)):n?.senderRole===`visitor`&&(t.role=`user`);return}case`finish-step`:this.openTextParts.clear();return;case`start-step`:sc(t,{kind:`step-start`,id:`ss-${this.partSeq++}`});return;case`finish`:ic.debug(`finish`,{reason:e.finishReason,canContinue:e.canContinue}),t.status=`complete`,e.finishReason&&(t.finishReason=e.finishReason),this.bumpDone(t);return;case`error`:ic.warn(`stream error chunk`,{errorText:e.errorText}),t.status=`error`,t.errorText=e.errorText,this.bumpDone(t);return;case`abort`:ic.debug(`stream abort chunk (canceled)`),t.status=`complete`,t.canceled=!0,this.bumpDone(t);return;case`text-start`:this.ensureTextPart(t,`text`,e.id);return;case`text-delta`:{let n=this.ensureTextPart(t,`text`,e.id);n.textSig.value+=e.delta;return}case`text-end`:this.ensureTextPart(t,`text`,e.id).doneSig.value=!0;return;case`reasoning-start`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!1;return;case`reasoning-delta`:{let n=this.ensureTextPart(t,`reasoning`,e.id);n.textSig.value+=e.delta;return}case`reasoning-end`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!0;return;case`tool-input-start`:case`tool-input-delta`:case`tool-input-available`:case`tool-output-available`:case`tool-output-error`:case`tool-output-denied`:case`tool-approval-request`:lc(t,e);return;case`file`:sc(t,{kind:`file`,url:e.url,mediaType:e.mediaType});return;case`source-url`:cc(t,{kind:`source`,sourceId:e.sourceId,url:e.url,title:e.title});return;case`source-document`:cc(t,{kind:`source`,sourceId:e.sourceId,title:e.title,filename:e.filename,mediaType:e.mediaType});return;case`data-notification`:return;case`data-conversation-rebind`:return;case`data-suggestions`:t.suggestions=tn(e.data);return;case`data-control-state`:t.operatorRoutedTurn=!0;return;default:}}bumpDone(e){e.partsSig.value=[...e.partsSig.value],this.messagesSig.value=[...this.messagesSig.value]}};function oc(e,t,n){let r=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);if(r)return r;let i={kind:`tool`,toolCallId:t,toolName:n??`tool`,inputPartialSig:d(``),inputSig:d(void 0),outputSig:d(void 0),errorSig:d(void 0),stateSig:d(`input-streaming`),approvalSig:d(void 0)};return sc(e,i),i}function sc(e,t){e.partsSig.value=[...e.partsSig.value,t]}function cc(e,t){e.partsSig.value.some(e=>e.kind===`source`&&e.sourceId===t.sourceId)||sc(e,t)}function lc(e,t){switch(t.type){case`tool-input-start`:oc(e,t.toolCallId,t.toolName);return;case`tool-input-delta`:{let n=oc(e,t.toolCallId);n.inputPartialSig.value+=t.inputTextDelta;return}case`tool-input-available`:{let n=oc(e,t.toolCallId,t.toolName);n.inputSig.value=t.input,n.stateSig.value=`input-available`;return}case`tool-approval-request`:{let n=oc(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value=`approval-requested`;return}case`tool-output-available`:{let n=oc(e,t.toolCallId);n.outputSig.value=t.output,n.stateSig.value=`output-available`;return}case`tool-output-error`:{let n=oc(e,t.toolCallId);n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-output-denied`:{let n=oc(e,t.toolCallId);n.stateSig.value=`output-denied`;return}default:return}}const uc=1e3;async function dc(e){let t=uc;for(;!e.signal.aborted;){let n,r=`held`;try{r=await e.connect(()=>{n=e.now(),e.backfill()})}catch{}if(e.signal.aborted||r===`unavailable`)return;n!==void 0&&e.now()-n>=1e3&&(t=uc),await e.sleep(t),t=Math.min(t*2,15e3)}}const fc=M.scope(`resume-stream`);function pc(e){let{activated:t,conversationReady:n,conversationIdSig:r,messagesSig:a,streamingRef:o,optionsRef:s,isChatActiveRef:c,transport:l,visitorId:u,adoptControlStateChunk:d,settleSuggestions:f,markActiveConversationRead:p,onReplyLanded:m,setStreaming:h,setActiveCancel:g,setCanSend:_,feedback:v,bus:y,homeNav:b}=e;i(()=>{if(!t||!n||!r.value)return;let e=r.value,i=new AbortController,x=()=>{},S=new ac(a,()=>x());l.primeIdentity(u,e),fc.debug(`resume stream opened`,{conversationId:e});let C=()=>{h(!1),g(null),p(),m()},w=e=>{let t=o.current,n=s.current;if(e.canceled){t&&C(),a.value=[...a.value];return}let r=e.status===`error`;switch(Hn(e,r)){case`drop`:a.value=a.value.filter(t=>t!==e);break;case`complete-operator-routed`:e.status=`complete`,t&&(v.play(`messageReceived`),Zs(y,n,`assistant`,Tn(e)));break;case`error`:if(e.status=`error`,e.errorText=n.strings.errorGeneric,t){v.play(`error`);let e=Error(r?`stream error chunk`:`empty reply`);y.emit(`error`,e),n.onError?.(e)}break;case`complete`:e.status=`complete`,t&&(v.play(`messageReceived`),Zs(y,n,`assistant`,Tn(e))),f(e);break}t&&C(),a.value=[...a.value]},T=t=>{d(t);let n=a.value.length,r=S.applyResume(t);if(t.type===`finish`&&t.canContinue===!1&&_(!1),a.value.length>n){let e=s.current.modules.list.find(e=>e.layout===`chat`)?.id;e&&b?.switchTab(e)}if(r){if(r.role===`operator`){v.play(`messageReceived`),Zs(y,s.current,`operator`,Tn(r)),!document.hidden&&c.current()&&l.markRead(e).catch(()=>void 0);return}w(r)}},E=async()=>{let t=await l.loadConversation(e).catch(()=>null);if(i.signal.aborted||!t?.messages?.length)return!1;let{messages:n,changed:r}=zn(a.value,Sn(t.messages));return r&&(a.value=n),r};x=()=>{(async()=>{for(let e=0;e<8&&!i.signal.aborted;e++){if(await E()||i.signal.aborted)return;await zt(Math.min(400+e*200,1200),i.signal)}})()};let D=0;dc({signal:i.signal,now:()=>performance.now(),sleep:e=>zt(e,i.signal),connect:e=>l.connectResumeStream({signal:i.signal,onChunk:T,onConnected:e}),backfill:()=>{let e=performance.now();e-D<2e3||(D=e,E())}});let O=e=>e.partsSig.value.reduce((e,t)=>e+(t.kind===`text`||t.kind===`reasoning`?t.textSig.value.length:1),0),k=0,A=-1,ee=setInterval(()=>{let e=a.value.at(-1);if(o.current&&e&&e.role!==`user`&&e.status!==`streaming`&&(h(!1),g(null)),!(!o.current&&e!==void 0&&e.role!==`user`&&!e.ephemeral&&(e.status===`streaming`||En(e)&&Tn(e).trim()===``||In(e)))){k=0,A=-1;return}let t=O(e);if(t!==A){A=t,k=0;return}k++>=30||E().then(e=>{e&&(k=0)})},2500);return()=>{i.abort(),clearInterval(ee),S.detach(),fc.debug(`resume stream closed`,{conversationId:e})}},[t,n,r,r.value,u,l,d,f,p,m,h,g,_,a,y,v,b])}const mc=M.scope(`send`);function hc(e){let{transport:t,messagesSig:n,conversationIdSig:i,options:a,bus:o,feedback:s,persistence:c,visitorId:l,adoptConversationId:u,setStreaming:d,setActiveCancel:f}=e,p=r(()=>{let e=i.value??ut();return i.value||(i.value=e,c.saveConversationId(e)),e},[i,c]);return{sendAiTurn:r(async({continueExisting:e})=>{let r=p(),m=nn({messages:Cn(n.value,e).map(wn),conversationId:r,tools:a.features.tools,visitorId:l,userPrefs:c.loadUserPrefs()});d(!0),f(()=>()=>t.cancelTurn(i.value));try{let e=await t.sendTurn(m);u(e.conversationId)}catch(t){let r=fs(t,a.strings),i=n.value.at(-1);if(e&&i?.role===`assistant`)i.status=`error`,i.errorText=r,n.value=[...n.value];else{let e=mn();e.status=`error`,e.errorText=r,n.value=[...n.value,e]}d(!1),f(null),s.play(`error`),o.emit(`error`,t),a.onError?.(t)}},[t,n,i,a,o,s,c,l,u,p,d,f]),sendRoutedTurn:r(async e=>{let n=p(),r=nn({messages:[wn(e)],conversationId:n,tools:a.features.tools,visitorId:l,userPrefs:c.loadUserPrefs()});try{let e=await t.sendTurn(r);u(e.conversationId)}catch(e){mc.debug(`operator-routed send failed (non-fatal)`,{error:e});let t=e instanceof Error?e:Error(String(e));o.emit(`error`,t),a.onError?.(t)}},[t,a,o,c,l,u,p])}}const gc=M.scope(`unread`);function _c(e){let{transport:t,options:n,conversationIdSig:a,isChatActiveRef:o,activated:c,conversationReady:l}=e,u=p(!1),d=s(new Set),f=s();i(()=>()=>clearTimeout(f.current),[]);let m=r(()=>{let e=o.current()?a.value:void 0;u.value=[...d.current].some(t=>t!==e)},[u,a,o]),h=r(()=>{n.modules.list.some(e=>e.layout===`chat`)&&t.listConversations({limit:50}).then(e=>{d.current=new Set(e.conversations.filter(e=>e.hasUnread).map(e=>e.conversationId)),m()}).catch(e=>gc.debug(`refreshUnread failed (non-fatal)`,{err:e}))},[t,n.modules,m]),g=r(e=>{d.current.delete(e),m()},[m]),_=r(()=>{if(!o.current())return;let e=a.value;e&&(clearTimeout(f.current),f.current=setTimeout(()=>{g(e),t.markRead(e)},300))},[t,a,g,o]),v=s(!1);return i(()=>{!c||!l||v.current||(v.current=!0,h())},[c,l,h]),i(()=>{if(!c)return;let e=()=>{document.visibilityState===`visible`&&h()};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[c,h]),{hasUnreadSig:u,refreshUnread:h,clearUnread:g,markActiveConversationRead:_}}const vc=M.scope(`settings`);function yc(e){let{options:t,persistence:n,transport:a,feedback:o,hostElement:s,bus:l}=e,u=n.loadUserPrefs(),[d,f]=c(()=>u.locale??t.locale),[p,m]=c(()=>u.themeMode??t.themeMode),[h,g]=c(()=>u.textSize??t.textSize),_=r(e=>{n.patchUserPrefs(e),a.saveUserPrefs(n.loadUserPrefs()).catch(e=>vc.warn(`saveUserPrefs failed`,{err:e}))},[n,a]);i(()=>{u.soundMuted!==void 0&&o.setMuted(u.soundMuted)},[]),i(()=>{s.dataset.theme=p},[s,p,t]),i(()=>{s.dataset.textSize=h},[s,h,t]),i(()=>{let e=!0;return o.mutedSig.subscribe(t=>{if(e){e=!1;return}_({soundMuted:t})})},[o,_]);let v=De(d,t.availableLocales,t.defaultLocale);return i(()=>{a.setLocale(v)},[a,v]),i(()=>{s.dir=T(v)?`rtl`:`ltr`},[s,v]),i(()=>{v!==d&&f(v)},[v,d]),{activeLocale:d,activeThemeMode:p,activeTextSize:h,effectiveLocale:v,setActiveLocale:f,setActiveThemeMode:m,setActiveTextSize:g,patchAndSync:_,handleLocaleChange:r(e=>{vc.info(`localeChange`,{locale:e}),f(e),_({locale:e}),l.emit(`localeChange`,e)},[_,l]),handleThemeChange:r(e=>{vc.info(`themeChange`,{mode:e}),m(e),s.dataset.theme=e,_({themeMode:e}),l.emit(`themeChange`,e)},[s,_,l]),handleTextSizeChange:r(e=>{vc.info(`textSizeChange`,{size:e}),g(e),s.dataset.textSize=e,_({textSize:e}),l.emit(`textSizeChange`,e)},[s,_,l]),handleSoundToggle:r(()=>{o.toggleMuted();let e=o.mutedSig.value;vc.info(`soundToggle`,{muted:e}),l.emit(`soundToggle`,{muted:e})},[o,l])}}const $=M.scope(`app`),bc=y.cssPrefix;function xc(e,t){return hn({...e,text:E(t,e.text)})}function Sc({options:e,hostElement:t,bus:n}){let[a]=c(()=>pt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[u,d]=c(()=>a.getVisitorId()),m=a.loadUserPrefs(),_=p(a.loadConversationId()),v=p([]),[y,b]=c(!1),[x,S]=c([]);function C(){let t=e.modules.list,n=new Set(t.map(e=>e.id)),r=a.loadActiveModule();return r&&n.has(r)?r:t[0]?.id??``}function w(){return e.modules.list.find(e=>e.layout===`chat`)?.id}function T(){let t=w();return t?e.modules.list.length===1||k.sig.value.activeTab===t:!1}let D=s(T);D.current=T;let O=s();if(!O.current){let t=e.modules.list.map(e=>e.id);O.current=is(C(),t,e=>a.saveActiveModule(e))}let k=O.current,[A,ee]=c(!1),[te,ne]=c(null),[j,re]=c(!1),ie=e.mode===`standalone`||e.mode===`inline`,ae=s(It(e,Lt(),a.loadPanelOpen(),a.loadPanelSize())),[oe,se]=c(ae.current.panelOpen),[ce,M]=c(ae.current.panelOpen),le=s(!1),ue=s(void 0);i(()=>{oe&&M(!0)},[oe]);let de=s(!1),[fe,N]=c(!1),{dismissed:pe,dismissCallout:me}=tc({callout:e.launcher.callout,persistence:a}),he=e.launcher.callout?.persistent??!0,ge=r(()=>{$.info(`calloutDismiss`),n.emit(`calloutDismiss`,void 0),me()},[n,me]),[P,_e]=c(ae.current.panelSize),ve=s(!1),[ye,be]=c(`chat`),[xe,Se]=c(!0),[F,Ce]=c(!1),we=s(F);we.current=F;let[Te,Ee]=c(null),[De,Oe]=c([]),[ke,Ae]=c(null),je=s(e.strings),Me=s(e);Me.current=e;let[Ne,Pe]=c(void 0),[Ie,Le]=c(void 0),[ze,Be]=c(()=>a.loadSidebarCollapsed()??!1),[Ve,He]=c({}),[I]=c(()=>new un({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Rt({publicKey:e.publicKey,aiAgentDeploymentId:e.aiAgentDeploymentId,publicKeyHeader:`x-public-key`}),endpoints:e.endpoints})),[L]=c(()=>new nr(e.sound,e.haptics)),{activeLocale:Ue,activeThemeMode:We,activeTextSize:Ge,effectiveLocale:Ke,setActiveLocale:qe,setActiveThemeMode:Je,setActiveTextSize:Ye,patchAndSync:Xe,handleLocaleChange:Ze,handleThemeChange:Qe,handleTextSizeChange:$e,handleSoundToggle:et}=yc({options:e,persistence:a,transport:I,feedback:L,hostElement:t,bus:n}),{controlModeSig:tt,assignedOperatorInitialsSig:nt,operatorAvailableSig:rt,applyControlState:it,adoptControlStateChunk:at,requestOperator:ot,cancelRequestOperator:st}=nc({transport:I}),{hasUnreadSig:ct,refreshUnread:lt,clearUnread:dt,markActiveConversationRead:ft}=_c({transport:I,options:e,conversationIdSig:_,isChatActiveRef:D,activated:ce,conversationReady:A});i(()=>{L.update(e.sound,e.haptics)},[L,e.sound,e.haptics]),i(()=>()=>L.destroy(),[L]),i(()=>{ve.current||!e.size.initialSize||(ve.current=!0,!a.loadPanelSize()&&_e(Ft(e.mode,e.size,Lt())))},[e.mode,e.size,a]),i(()=>{if(!A||de.current)return;de.current=!0;let t=It(e,Lt(),a.loadPanelOpen(),a.loadPanelSize());se(t.panelOpen),_e(t.panelSize)},[A,e,a]);let mt=s(!1),ht=s(null);i(()=>{!A||mt.current||(mt.current=!0,k.reset(C()))},[A]);let gt=r(e=>{!e||e.length===0||(v.value=e.map(e=>xc(e,je.current)))},[v]),_t=s(null),vt=r(async e=>{try{let{formSubmissions:t}=await(e?I.bootstrap(e):_t.current??I.bootstrap()),n=new Map;return t.forEach((e,t)=>n.set(e.formId,t)),t.filter((e,t)=>!e.skipped||n.get(e.formId)===t).map((e,t)=>({key:`wire:${e.formId}:${e.createdAt??t}`,formId:e.formId,outcome:e.skipped?`skipped`:`submitted`,createdAt:Zt(e.createdAt),values:e.values}))}catch(e){return $.debug(`bootstrap failed — no form markers (non-fatal)`,{err:e}),[]}},[I]),yt=s(0),bt=r((e,t)=>{let n=[...e.map(e=>e.createdAt),...t.map(e=>e.createdAt)].filter(e=>e!==void 0),r=(n.length?Math.min(...n):Date.now())-1;return[...(ue.current?.messages??[]).map(e=>{let t=xc(e,je.current);return t.createdAt=r,t}),...e]},[]),xt=r(async e=>{let t=yt.current,n=()=>t!==yt.current;b(!0);try{let[t,r]=await Promise.all([I.loadConversation(e),vt()]);if(n())return;let i=Sn(t.messages??[]);if(S(r),v.value=bt(Rn(i,v.value),r),i.length){Se(t.canContinue??!0),it(en(t.controlState));let e=i.findLast(e=>e.role===`assistant`&&!e.ephemeral);Oe(e?.suggestions??t.suggestions??[])}}catch(t){if(n())return;$.warn(`loadThread failed; resetting conversationId`,{err:t,conversationId:e}),_.value=void 0,a.saveConversationId(void 0)}finally{n()||b(!1)}},[I,vt,v,_,a,bt]),St=r(async({newConversation:t})=>{let r=++yt.current,i=()=>r!==yt.current,o=_.value,s=t||!o?ut():o;s!==o&&(_.value=s,a.saveConversationId(s));let c;try{c=await I.handshake({visitorId:u,conversationId:s,userPrefs:a.loadUserPrefs(),locale:Ue})}catch(r){if(i())return;n.emit(`error`,r),e.onError?.(r),t||ee(!0);return}if(!i()){if(c.visitorId&&c.visitorId!==u&&($.info(`visitor rebound`,{previous:u,current:c.visitorId,reason:c.rebind?.visitorId}),a.setVisitorId(c.visitorId),d(c.visitorId),n.emit(`visitorRebound`,{previous:u,current:c.visitorId,reason:c.rebind?.visitorId})),c.conversationId&&c.conversationId!==s&&($.info(`conversation rebound`,{previous:s,current:c.conversationId,reason:c.rebind?.conversationId}),n.emit(`conversationRebound`,{previous:s,current:c.conversationId,reason:c.rebind?.conversationId})),c.agent&&Ee(c.agent),it(en(c.controlState)),e.mode===`page`&&(c.site&&At(c.site)?Pe(c.site):c.site&&$.warn(`invalid site config, using fallback`,{site:c.site}),c.blocks&&jt(c.blocks)?Le(c.blocks):c.blocks&&$.warn(`invalid blocks config, using fallback`,{blocks:c.blocks})),c.userPrefs&&!t&&(a.saveUserPrefs(c.userPrefs),c.userPrefs.locale&&qe(c.userPrefs.locale),c.userPrefs.soundMuted!==void 0&&L.setMuted(c.userPrefs.soundMuted),c.userPrefs.themeMode&&Je(c.userPrefs.themeMode),c.userPrefs.textSize&&Ye(c.userPrefs.textSize)),ue.current=c.welcome,t||n.emit(`handshake`,c),c.welcome?.suggestions){let e=je.current;Oe(c.welcome.suggestions.map(t=>({...t,label:E(e,t.label),...t.text===void 0?{}:{text:E(e,t.text)}})))}!t&&o&&c.conversationId===o?le.current=!0:(_.value=c.conversationId,a.saveConversationId(c.conversationId),gt(c.welcome?.messages)),t||ee(!0)}},[I,u,a,e,n,_,L,gt,xt,Ue]),Ct=JSON.stringify(e.userContext??null);i(()=>{let t=Object.keys(Ve).length?{...Ve,...e.userContext}:e.userContext;I.setContext(t,Cc(e.pageContext))},[I,Ct,JSON.stringify(e.pageContext??null),JSON.stringify(Ve)]);let wt=r((e,t=[])=>Oe(e.suggestions??t),[]),Tt=r(e=>{if(!e||e===_.value)return;let t=_.value;_.value=e,a.saveConversationId(e),I.primeIdentity(void 0,e),$.info(`conversation rebound`,{previous:t,current:e}),t&&n.emit(`conversationRebound`,{previous:t,current:e,reason:e})},[_,a,I,n]);i(()=>(I.primeIdentity(u,_.value),St({newConversation:!1}),()=>{yt.current++}),[]);let Et=s(!1);i(()=>{if(!(!ce||!A||Et.current)&&(Et.current=!0,_t.current=I.bootstrap(),(async()=>{try{let e=await _t.current;ne(Fe((e??{forms:[]}).forms,Ke))}catch(e){$.debug(`bootstrap failed — treating as no forms`,{err:e})}finally{re(!0)}})(),le.current)){le.current=!1;let e=_.value;e&&xt(e)}},[ce,A]);let Dt=s(null);i(()=>{if(!ce||!A)return;if(Dt.current===null){Dt.current=Ke;return}if(Dt.current===Ke)return;Dt.current=Ke;let e=!1;return I.bootstrap().then(t=>{e||ne(Fe((t??{forms:[]}).forms,Ke))}).catch(e=>$.debug(`forms re-localize failed — keeping current copy`,{err:e})),()=>{e=!0}},[ce,A,Ke,I]);let Ot=s(Ct);i(()=>{!A||Ot.current===Ct||(Ot.current=Ct,St({newConversation:!1}))},[Ct,A,St]);let kt=s(()=>{});pc({activated:ce,conversationReady:A,conversationIdSig:_,messagesSig:v,streamingRef:we,optionsRef:Me,isChatActiveRef:D,transport:I,visitorId:u,adoptControlStateChunk:at,settleSuggestions:wt,markActiveConversationRead:ft,onReplyLanded:r(()=>kt.current(),[]),setStreaming:Ce,setActiveCancel:Ae,setCanSend:Se,feedback:L,bus:n,homeNav:k}),rc({hostElement:t,mode:e.mode,panelSize:P,isOpen:oe,setIsOpen:se});let{sendAiTurn:Mt,sendRoutedTurn:Pt}=hc({transport:I,messagesSig:v,conversationIdSig:_,options:e,bus:n,feedback:L,persistence:a,visitorId:u,adoptConversationId:Tt,setStreaming:Ce,setActiveCancel:Ae}),{toolInteraction:zt}=ec({streaming:F,messagesSig:v,sendAiTurn:Mt,bus:n,humanInLoop:e.features.humanInLoop}),Bt=r((e,t)=>{$.info(`messageFeedback`,{messageId:e,value:t}),n.emit(`messageFeedback`,{messageId:e,value:t}),I.submitFeedback({messageId:e,value:t})},[n,I]),Vt=()=>v.value.reduce((e,t)=>e+ +(t.role===`user`),0),Ht=e.forms.list.length>0?e.forms:te??e.forms,R=Ko({forms:Ht,persistence:a,userContext:()=>e.userContext,messageCount:Vt,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>_.value,onComplete:(e,t,r,i)=>{$.info(`formSubmit`,{formId:e.id,trigger:t,skipped:i}),n.emit(`formSubmit`,{formId:e.id,values:r,skipped:i}),S(t=>{let n=t.find(t=>t.formId===e.id&&t.outcome===`skipped`)?.createdAt??Date.now();return[...t.filter(t=>!(t.formId===e.id&&t.outcome===`skipped`)),{key:`local:${e.id}:${n}`,formId:e.id,outcome:i?`skipped`:`submitted`,createdAt:n,...i?{}:{values:r}}]});let o=_.value??ut();_.value||(_.value=o,a.saveConversationId(o),I.primeIdentity(void 0,o)),!i&&e.mirrorToContext&&He(e=>({...e,...r})),I.submitForm({formId:e.id,conversationId:o,trigger:t,values:r,skipped:i})}}),z=f(()=>R.activeForm.value);kt.current=()=>R.fire(`after-messages`),i(()=>{R.refresh()},[Ht,R]);let Ut=e.pageContext?.area?String(e.pageContext.area):void 0,Wt=f(()=>v.value.length);i(()=>{A&&j&&R.fire(`pre-chat`)},[A,j,R]),i(()=>{j&&!xe&&R.fire(`conversation-closed`)},[j,xe,R]),i(()=>{A&&j&&Ut&&R.fire(`page-area`)},[A,j,Ut,R]);let Gt=o(()=>{let e=Ht.list.flatMap(e=>e.triggers).filter(e=>e.kind===`idle`).map(e=>Number(e.param));return e.length?Math.min(...e)*1e3:0},[Ht]);i(()=>{if(!Gt||!oe)return;let e=setTimeout(()=>R.fire(`idle`),Gt);return()=>clearTimeout(e)},[Gt,oe,R,Wt.value]);let Kt=r(async(t,r)=>{let i=tt.value!==`ai-agent`;if($.info(`send`,{textLen:t.length,attachments:r.length,streaming:F,routedToOperator:i}),F&&!i)return;n.emit(`send`,{text:t,attachmentCount:r.length}),De.length>0&&Oe([]);let a=await Tc(I,r,t=>{$.warn(`upload failed`,{err:t}),n.emit(`error`,t),e.onError?.(t)});L.unlock(),L.play(`messageSent`);let o=pn(t,a);if(Zs(n,e,`user`,t),i){v.value=[...v.value,o],Pt(o);return}v.value=[...v.value,o,mn()],Mt({continueExisting:!1})},[F,I,n,e,De.length,v,Mt,Pt,tt]),qt=r(()=>{$.info(`stop`),n.emit(`stop`,void 0);let e=v.value.at(-1);e&&e.role!==`user`&&e.status===`streaming`&&(e.canceled=!0,v.value=[...v.value]),ke?.()},[ke,n,v]),Jt=r(()=>{if(F)return;let e=v.value,t=e.at(-1);!t||t.role!==`assistant`||t.status!==`error`&&!Bn(t)||(v.value=[...e.slice(0,-1),mn()],$.info(`retry`),Mt({continueExisting:!1}))},[F,v,Mt]),Yt=r(()=>{if(vi(e.mode,P)===`exit-fullscreen`){$.info(`close → exit-fullscreen`,{mode:e.mode}),_e(`normal`),n.emit(`fullscreen`,!1);return}$.info(`close → panel closed`,{mode:e.mode}),R.fire(`panel-close`),se(!1),a.savePanelOpen(!1),n.emit(`close`,void 0),e.onClose?.()},[n,e,a,P,R]),Xt=r(()=>{$.info(`open`,{mode:e.mode}),L.unlock(),N(!0),se(!0),a.savePanelOpen(!0),!pe&&!he&&ge(),setTimeout(()=>N(!1),wc),lt(),n.emit(`open`,void 0),e.onOpen?.()},[n,e,L,a,pe,he,ge,lt]),Qt=r(()=>{if(!v.value.some(e=>e.role===`user`)&&xe&&_.value){$.info(`clear → reusing empty conversation`,{conversationId:_.value}),v.value.length===0&&gt(ue.current?.messages);return}$.info(`clear → new conversation`,{wasStreaming:F}),n.emit(`clear`,void 0),F&&Ce(!1),l(()=>{v.value=[],_.value=void 0}),a.clearConversation(),Se(!0),S([]),St({newConversation:!0})},[F,v,_,a,St,n,xe,gt]),$t=r(()=>{Qt(),be(`chat`);let t=e.modules.list.find(e=>e.layout===`chat`)?.id;t&&k.switchTab(t)},[Qt,k,e]),B=r(()=>{let e=P===`expanded`?`normal`:`expanded`;$.info(`expand`,{from:P,expanded:e===`expanded`}),_e(e),a.savePanelSize(e),n.emit(`expand`,e===`expanded`)},[n,P,a]),tn=r(()=>{let e=P===`fullscreen`?`normal`:`fullscreen`;$.info(`fullscreen`,{from:P,fullscreen:e===`fullscreen`}),_e(e),a.savePanelSize(e),n.emit(`fullscreen`,e===`fullscreen`)},[n,P,a]),nn=r(()=>{be(e=>{let t=e===`history`?`chat`:`history`;return $.info(`toggleHistory`,{view:t}),n.emit(`toggleHistory`,{view:t}),t})},[n]),rn=r(()=>{Be(e=>{let t=!e;return $.info(`sidebarToggle`,{collapsed:t}),a.saveSidebarCollapsed(t),n.emit(`sidebarToggle`,{collapsed:t}),t})},[a,n]),an=r(e=>{$.info(`resize`,e),Xe({widgetSize:e}),n.emit(`resize`,e)},[Xe,n]),on=r(async t=>{$.info(`selectConversation`,{conversationId:t,wasStreaming:F}),n.emit(`selectConversation`,{conversationId:t}),F&&Ce(!1);try{let[e,n]=await Promise.all([I.loadConversation(t),vt(t)]),r=Sn(e.messages);l(()=>{v.value=bt(r,n),_.value=e.conversationId}),S(n),a.saveConversationId(e.conversationId),I.primeIdentity(u,e.conversationId),e.agent&&Ee(e.agent),Se(e.canContinue),it(en(e.controlState));let i=r.findLast(e=>e.role===`assistant`&&!e.ephemeral);Oe(i?.suggestions??e.suggestions??[]),be(`chat`),await I.markRead(t),dt(t)}catch(t){n.emit(`error`,t),e.onError?.(t)}},[I,v,_,n,e,a,dt,vt,bt,F,u]),V=s(null),sn=r(e=>{typeof e==`string`&&(j?R.fire(`manual`,e):V.current=e)},[j,R]);i(()=>{!j||!V.current||(R.fire(`manual`,V.current),V.current=null)},[j,R]),i(()=>Nt(t,{open:Xt,close:Yt,expand:B,fullscreen:tn,openForm:sn}),[t,Xt,Yt,B,tn,sn]);let H=o(()=>Re(e,Ue,We,Ge),[e,Ue,We,Ge]);je.current=H.strings;let cn=o(()=>x.map(e=>{let t=Ht.list.find(t=>t.id===e.formId);return{...e,title:t?.title,form:t}}),[x,Ht]),ln={options:H,transport:I,feedback:L,bus:n,persistence:a,composerApiRef:ht,view:ye,canSend:xe,isStreaming:F,controlMode:tt.value,assignedOperatorInitials:nt.value,operatorAvailable:rt.value,operatorRequestEnabled:e.features.operatorRequest,onRequestOperator:ot,onCancelRequest:st,loadingMessages:y,messagesSig:v,agent:Te,suggestions:De,initialWidgetSize:m.widgetSize??null,visitorId:u,onClose:Yt,onClear:Qt,onExpand:B,onFullscreen:tn,onSoundToggle:et,onToggleHistory:nn,onSelectHistoryConversation:on,onNewConversation:$t,onLocaleChange:Ze,onThemeChange:Qe,onTextSizeChange:$e,onWidgetSizeChange:an,onSend:Kt,onStop:qt,onSuggestion:t=>{let r=t.text??t.label;$.info(`suggestion`,{text:r,autoSend:e.autoSendSuggestions}),n.emit(`suggestion`,{text:r}),e.autoSendSuggestions?Kt(r,[]):ht.current?.fill(r)},activeForm:z.value?.form??null,formMarkers:cn,onFormSubmit:R.complete,onFormSkip:R.skip,onFormFill:e=>R.fire(`manual`,e),tool:zt,onRetry:Jt,onMessageFeedback:Bt},dn=e=>{on(e);let t=w();t&&k.switchTab(t)};if(!A)return null;let fn=H.modules.list,hn=e=>{let t=gi(`close`,H.mode,e);return fn.length===0?h(Xs,{strings:H.strings,onClose:t?Yt:void 0}):fn.length===1&&fn[0]?.layout===`chat`?h(Lo,{...ln,panelSize:e}):h(Js,{panelProps:{...ln,panelSize:e,onClose:t?Yt:void 0},enabledModules:fn,nav:k,bus:n,hasUnread:ct.value,onSelectConversation:dn,onStartNewConversation:$t,onSetPanelSize:_e})};if(e.mode===`page`){let e=e=>{on(e.conversationId)},t=fn.some(e=>e.layout===`chat`);return h(`div`,{class:`${bc}-anchor`,children:h(ns,{site:Ne,blocks:Ie,transport:I,strings:H.strings,locale:H.locale,persistence:a,visitorId:u,showConversations:t,onSelectConversation:e,onNewConversation:$t,sidebarCollapsed:ze,onToggleSidebarCollapsed:rn,children:hn(`fullscreen`)})})}if(ie){let t=e.mode===`standalone`?`fullscreen`:P;return h(`div`,{class:`${bc}-anchor`,children:hn(t)})}let gn=e.mode===`drawer`,_n=e.mode!==`modal`&&!e.launcher.hidden&&(!oe||fe),vn=_n&&!fe&&!pe&&!gn?H.launcher.callout:null;return g(`div`,{class:`${bc}-anchor`,"data-launcher-size":H.launcher.size,children:[oe||ce?h(`div`,{class:`${bc}-surface`,hidden:!oe,children:hn(P)}):null,_n?h(oi,{onToggle:Xt,launcher:H.launcher,strings:H.strings,leaving:fe,edgeTab:gn}):null,vn?h(ui,{callout:vn,launcherPosition:H.position,strings:H.strings,closeLabel:H.strings.close,onDismiss:ge}):null]})}function Cc(e){let t=e?.url??(typeof location<`u`?location.href:void 0);if(!(!e&&!t))return{...e,...t?{url:t}:{}}}const wc=120;async function Tc(e,t,n){let r=[];for(let i of t)try{let{id:t,url:n}=await e.uploadFile(i.file);r.push({id:t,name:i.name,mediaType:i.mediaType,size:i.size,url:n})}catch(e){n(e)}return r}const Ec=M.scope(`error-boundary`);var Dc=class extends e{constructor(...e){super(...e),z(this,`state`,{crashed:!1})}componentDidCatch(e,t){Ec.error(`widget render crashed`,{error:e,componentStack:t?.componentStack}),this.setState({crashed:!0}),this.props.onError(e,t?.componentStack)}render(){return this.state.crashed?this.props.fallback:this.props.children}};const Oc={open:()=>void 0,close:()=>void 0,expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>void 0,clear:()=>void 0,suggestion:()=>void 0,toggleHistory:e=>({view:e.view}),handshake:()=>void 0,formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>void 0,toolDecision:e=>({approved:e.approved}),messageFeedback:e=>({value:e.value??`none`}),contentView:e=>({section:e.section,tags:e.tags,count:e.count}),contentOpen:e=>({contentId:e.contentId,tags:e.tags}),contentSearch:e=>({qlen:e.queryLength,hits:e.hitCount}),contentRead:e=>({contentId:e.contentId}),contentLinkClick:e=>({contentId:e.contentId}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>void 0,voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>void 0,localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>void 0,error:()=>void 0};function kc(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack===`1`}function Ac(){return location.origin+location.pathname}function jc(){try{return document.referrer?new URL(document.referrer).origin:``}catch{return``}}function Mc(e,t){let n=Math.random(),r=0,i=0,a=new Set,o=(e,o)=>{let{tracking:s,publicKey:c,aiAgentDeploymentId:l,mode:u,themeMode:d}=t.getOptions();if(!s.enabled||kc()||n>=s.sampleRate)return;let f=performance.now();if(f-r>6e4&&(r=f,i=0),++i>60)return;let p=new URLSearchParams;p.set(`v`,`1`),p.set(`_ev`,Bt),p.set(`e`,e),s.token&&p.set(`tk`,s.token),c&&p.set(`pk`,c),l&&p.set(`dep`,l),p.set(`vid`,t.getVisitorId());let m=t.getConversationId();m&&p.set(`cid`,m),p.set(`url`,Ac());let h=jc();h&&p.set(`ref`,h),p.set(`sw`,String(screen.width)),p.set(`sh`,String(screen.height)),p.set(`vw`,String(innerWidth)),p.set(`vh`,String(innerHeight)),p.set(`dpr`,String(devicePixelRatio)),p.set(`lang`,navigator.language);try{p.set(`tz`,Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(p.set(`m`,u),p.set(`th`,d),o)for(let[e,t]of Object.entries(o))t!==void 0&&p.set(e,String(t));p.set(`ts`,String(Date.now()));let g=`${s.endpoint}?${p}`;if(g.length>2e3)return;let _=new Image(1,1);a.add(_);let v=()=>a.delete(_);_.addEventListener(`load`,v,{once:!0}),_.addEventListener(`error`,v,{once:!0}),_.src=g},s=Object.keys(Oc).map(t=>e.on(t,e=>o(t,Oc[t]?.(e))));return()=>{for(let e of s)e();a.clear()}}function Nc(e){let{bus:r,host:i,appRoot:a,persistence:o,reportError:s}=e,c=e.initialRaw,l,u=we(c),d=!0,f=()=>{u=we(l?Be(c,l):c)},p=()=>{yt(i,bt(u.mode));let e=o.loadUserPrefs().themeMode;Ot(i,e?{...u,themeMode:e}:u),d&&(Dt(i,Pc(u)),d=!1)},m=()=>{p(),n(t(Dc,{onError:s},t(Sc,{bus:r,hostElement:i,options:u})),a)};r.on(`handshake`,e=>{e.config&&(e.config.storageVersion&&o.rememberStorageVersion(e.config.storageVersion),l=e.config,f(),m())});let h=Mc(r,{getOptions:()=>u,getVisitorId:()=>o.getVisitorId(),getConversationId:()=>o.loadConversationId()});return{getOptions:()=>u,getUserOptions:()=>c,render:m,setUserOptions:e=>{c=e,f(),m()},patchUserOptions:e=>{c={...c,...e},f(),m()},destroy:()=>h()}}function Pc(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:r}=It(e,Lt(),t.loadPanelOpen(),t.loadPanelSize());return Pt(e.mode,r,n)}var Fc=class{constructor(){z(this,`handlers`,new Map)}on(e,t){let n=this.handlers.get(e);return n||(n=new Set,this.handlers.set(e,n)),n.add(t),()=>this.handlers.get(e)?.delete(t)}emit(e,t){let n=this.handlers.get(e);if(n)for(let e of n)try{e(t)}catch{}}clear(){this.handlers.clear()}},Ic=class extends HTMLElement{constructor(...e){super(...e),z(this,`bus`,new Fc),z(this,`mountResult`,null),z(this,`runtime`,null)}static get observedAttributes(){return at}connectedCallback(){this.boot()}disconnectedCallback(){this.mountResult&&(this.runtime?.destroy(),this.runtime=null,n(null,this.mountResult.appRoot),this.bus.clear())}attributeChangedCallback(){this.isConnected&&this.boot()}boot(){let e=ot(e=>this.getAttribute(e));if(this.runtime){this.runtime.setUserOptions(e);return}let t=we(e);this.mountResult||(this.mountResult=xt({existingHost:this,position:bt(t.mode)}));let n=pt(t.widgetId,t.storage,t.aiAgentDeploymentId);this.runtime=Nc({bus:this.bus,host:this.mountResult.hostElement,appRoot:this.mountResult.appRoot,persistence:n,initialRaw:e,reportError:e=>this.bus.emit(`error`,e)}),this.runtime.render()}};let Lc=!1;function Rc(){if(Lc||typeof customElements>`u`)return;let e=y.tagName;customElements.get(e)||customElements.define(e,Ic),Lc=!0}typeof customElements<`u`&&Rc();export{Rc as registerWebComponent};
13
13
  //# sourceMappingURL=web-component.mjs.map