@deepdesk/deepdesk-sdk 18.1.2-beta.3 → 18.1.2-beta.5

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/dist/index.esm.js CHANGED
@@ -4,9 +4,9 @@ Try polyfilling it using "@formatjs/intl-pluralrules"
4
4
  c-17.9,17.9-27.3,40.1-27.3,65.7C163.4,163,163.4,233,163.4,233z M465.5,267.9V477c0,9.4-3.4,17.9-10.2,24.7
5
5
  c-6.8,6.8-15.4,10.2-24.7,10.2h-349c-9.4,0-17.9-3.4-24.7-10.2c-6.8-6.8-10.2-15.4-10.2-24.7V267.9c0-9.4,3.4-17.9,10.2-24.7
6
6
  c6.8-6.8,15.4-10.2,24.7-10.2h11.9v-70c0-44.4,16.2-82.8,47.8-115.2S212.1,0,256.4,0s82.8,16.2,115.2,47.8
7
- c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as Wl}from"react/jsx-runtime";var Rf={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Vl=({className:t,color:e})=>Wl("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Wl("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:Rf[e||"pink"]})});var jl={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var yr={};Z(yr,{enUS:()=>If,nlNL:()=>Pf});var If={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Pf={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Mf}from"react-redux";import{jsx as vr,jsxs as $l}from"react/jsx-runtime";var ql=({onLogIn:t})=>{let e=k(yr),n=T("floatingMenu"),o=T("productName"),s=Mf(),r=Af(q),i=S("FloatingMenu",jl);if(r===null||n===!1)return null;let l=()=>{r===!0?s(me(!0)):t()};return $l("button",{type:"button",className:Lf(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:l,children:[vr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),$l("div",{className:i.icon,children:[vr(Vl,{className:i.logo,color:"pink"}),r===!1&&vr(zl,{className:i.lock})]})]})};import{useEffect as th,useRef as nh}from"react";import{useDispatch as oh,useSelector as _t}from"react-redux";import{useEffect as Nf}from"react";function lt(t){Nf(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function dt(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}function be(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.start!==r.end?!1:r.end>=s.length?!0:e?n&&new RegExp(n).test(s.substring(r.end))||o&&new RegExp(o).test(s.substring(0,r.end))?!0:n===!1&&o===!1:!1}import{createSlice as Of}from"@reduxjs/toolkit";var Df={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},_o=({ui:t})=>t.overlayCollapsed,Gl=Of({name:"ui",initialState:Df,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputFocus(t,e){t.overlayCollapsedUserOverwrite!==!0&&(e.payload===!0&&(t.overlayCollapsed=!1),t.inputHasFocus=e.payload)},setOverlayCollapsed(t,e){e.payload.collapse===!1&&(t.openOverlayWhenTyping=!1),!(e.payload.skipWhenInputFocus&&t.inputHasFocus)&&(t.overlayCollapsed=e.payload.collapse)},setOpenOverlayWhenTyping(t,e){t.openOverlayWhenTyping=e.payload},setOverlayCollapsedUserOverwrite(t,e){t.overlayCollapsedUserOverwrite=e.payload,t.overlayCollapsed=e.payload}}}),{setShowTabHint:An,setInputFocus:Fo,setOverlayCollapsed:je,setOpenOverlayWhenTyping:Xl,setOverlayCollapsedUserOverwrite:Jl}=Gl.actions,Zl=Gl.reducer;import{useMemo as Qf}from"react";import{Interweave as Uf}from"interweave";import{useEffect as zf,useMemo as Wf,useRef as Vf,useState as jf}from"react";import{useDispatch as $f,useSelector as nd}from"react-redux";import{useEffect as _f}from"react";function Ql(t,e,n){_f(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Yl={root:"dd-1MBCO",actions:"dd--x4cy",closeIconContainer:"dd-1z5NR",closeIcon:"dd-8qMF-",badge:"dd-4Fpkz",formattedText:"dd-EzvTB"};import{jsx as ed,jsxs as Ff}from"react/jsx-runtime";var td=({title:t})=>Ff("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[ed("title",{id:"closeTitle",children:t}),ed("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})]});var xr={};Z(xr,{enUS:()=>Hf,nlNL:()=>Bf});var Hf={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Bf={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as ct,jsxs as Zf}from"react/jsx-runtime";var qf=["search","personal-collection-search","search-autocomplete"];function Gf(t,e,n,o={}){var r;let s="";return qf.includes(e)?s=Za(or(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=or(t,n,o),o.placeholders===!0&&(s=Qa(s)),s}var Xf=()=>{},Jf=({selected:t,suggestion:e})=>{let n=k(xr),o=T("inlineSuggestions"),s=nd(Rt),[r,i]=jf(!1),l=T("enableSuggestionFeedback"),d=nd(h=>h.input.text),a=$f(),c=S("TextSuggestion",Yl),m=Vf(null),u=e.source==="assistant",p=l&&!u;zf(()=>{let h=setTimeout(()=>{a(Qi({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(h)}},[e]),Ql(m,"click",()=>{a(pe({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let y=()=>{a(et({source:e.source,text:e.text,assistantCode:e.assistantCode}))},g=Wf(()=>Gf(e.text,e.source,s,{stripAgentPart:o,placeholders:!0,searchKeywords:e.searchKeywords}),[o,e.text,e.source,s,e.searchKeywords]);return e.source==="gpt"&&!o?null:Zf("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[ct(A,{ref:m,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:Xf,children:ct(Uf,{attributes:e.source==="assistant"?{"data-label":n("assistant")}:void 0,containerTagName:"div",noWrap:!1,tagName:"span",className:c.formattedText,content:g})}),p&&r&&ct("div",{className:c.actions,children:ct(Mo,{source:"overlay",context:d,suggestion:e})}),u&&r&&ct("div",{className:c.closeIconContainer,children:ct("button",{type:"button",className:c.closeIcon,onClick:y,title:n("close"),children:ct(td,{title:n("close")})})})]})},od=Jf;import{jsx as eh}from"react/jsx-runtime";var Yf=({suggestions:t,selectedIndex:e,reverse:n})=>Qf(()=>{let s=t.map((r,i)=>eh(od,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),Ho=Yf;var sd={root:"dd-PfvRI",paper:"dd-HYlyY"};import{jsx as Bo}from"react/jsx-runtime";var sh=()=>{let t=nh(null),e=S("InlineSuggestionsOverlay",sd),n=_t(be),o=oh(),s=_t(q),r=_t(kt),i=_t(_o),l=T("showTextSuggestions"),d=_t(Ye),a=_t(an);return lt(()=>{setTimeout(()=>{o(je({collapse:!0,skipWhenInputFocus:!0}))})}),th(()=>{let c=t.current;if(!c||!c.parentElement)return;c.parentElement.style.left="0px";let m=c.getBoundingClientRect();c.parentElement.style.left=`${Math.min(window.innerWidth-4-m.right,0)}px`}),i||!n||!l||d.length===0||s!==!0||r===!1?null:Bo("div",{className:e.root,"data-variant":"inline",children:Bo("div",{ref:t,className:e.paper,children:Bo(te,{children:Bo(Ho,{suggestions:d,selectedIndex:a})})})})},rd=sh;import{Provider as rh}from"react-redux";import{jsx as Ko}from"react/jsx-runtime";var ih=({children:t})=>{let n=T("locale").replace("-","");return Ko(Js.Provider,{value:n,children:t})},ah=({store:t,customStyles:e={},children:n})=>Ko(rh,{store:t,children:Ko(ih,{children:Ko(en.Provider,{value:e,children:n})})}),$e=ah;import wr from"classnames";import{useEffect as xh,useRef as Sh,useState as bh}from"react";import{useDispatch as Ch,useSelector as ut}from"react-redux";import{useState as lh}from"react";function id(t,e){let[n,o]=lh(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return C.error(r),e}});return[n,r=>{try{let i=r instanceof Function?r(n):r;o(i),typeof window!="undefined"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){C.error(i)}}]}var ad=()=>/Mac/i.test(navigator.platform);import uh from"classnames";import{Fragment as ph,useCallback as br,useMemo as dd}from"react";var Sr={};Z(Sr,{enUS:()=>dh,nlNL:()=>ch});var dh={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Sign in"}]},{type:0,value:" to enable "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze for "},{type:8,value:"min",children:[{type:0,value:"10 minutes"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 hour"}]},{type:0,value:" or "},{type:8,value:"day",children:[{type:0,value:"1 day"}]}]},ch={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Log in"}]},{type:0,value:" bij "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze voor "},{type:8,value:"min",children:[{type:0,value:"10 minuten"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 uur"}]},{type:0,value:" of "},{type:8,value:"day",children:[{type:0,value:"1 dag"}]}]};var ld={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as Uo,jsxs as cd}from"react/jsx-runtime";var Cr=(t,e,n)=>o=>Uo("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),mh=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=k(Sr),i=oe(),l=S("Login",ld),d=T("productName"),a=br(h=>{h.preventDefault(),o&&o(Number.parseInt(h.target.value,10))},[]),c=br(h=>{h.preventDefault(),i.send(At,!0)},[e]),m=dd(()=>h=>Uo("a",{onClick:E=>{E.preventDefault(),s()},href:e,className:l.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),u=br(h=>Uo("button",{type:"button",className:l.anchorButton,onClick:c,children:h},"prompt"),[c]),{min:p,hour:y,day:g}=dd(()=>({min:Cr(l,60*10,a),hour:Cr(l,60*60,a),day:Cr(l,60*60*12,a)}),[]);return cd("div",{className:uh(t,l.root),children:[r("loginPlease",{login:n?u:m,productName:d}),o&&cd(ph,{children:[Uo("br",{}),r("snooze",{min:p,hour:y,day:g})]})]})},zo=mh;import{useDispatch as gh}from"react-redux";var ud={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as pd,jsxs as hh}from"react/jsx-runtime";var fh=({title:t})=>{let e=S("SearchTrigger",ud),n=gh(),o=G();return hh("button",{type:"button",className:e.root,onClick:()=>{n(me(!0)),o("open search",{via:"autocomplete-overlay"})},children:[pd(Nt,{}),pd("span",{className:e.text,children:t})]})},md=fh;var Tr={};Z(Tr,{enUS:()=>yh,nlNL:()=>vh});var yh={arrowHint:[{type:0,value:"Tip: use arrow keys to navigate suggestions"}],searchHintWindows:[{type:0,value:"Press CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],searchHintMac:[{type:0,value:"Press CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Close"}],search:[{type:0,value:"Search"}]},vh={arrowHint:[{type:0,value:"Tip: Selecteer suggesties met pijltoetsen"}],searchHintWindows:[{type:0,value:"Druk CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],searchHintMac:[{type:0,value:"Druk CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Sluiten"}],search:[{type:0,value:"Zoeken"}]};var gd={root:"dd-oa7Vc",isInline:"dd-bwk31",toggleButton:"dd-MSB8Z",toggleButtonWrapper:"dd-ZkCzT",toggleButtonWrapperHidden:"dd-Sq66c",isCollapsed:"dd-vkrPk",collapsible:"dd-CWQJe",hints:"dd-IOoo3",hintsHidden:"dd-psVuT",triggers:"dd-toIoo",triggersRight:"dd-mc4l2"};import{jsx as X,jsxs as Mn}from"react/jsx-runtime";var Th=({onLogIn:t})=>{let e=S("SuggestionsOverlay",gd),n=k(Tr),o=ut(be),s=ut(Zi),r=Ch(),i=Sh(null),l=T("searchTriggerKey"),d=T("productName"),a=ut(_o),c=ut(q),m=ut(kt),[u,p]=bh(null),y=T("showSearch"),g=T("showTextSuggestions"),h=T("adminUrl"),w=T("isEmbedded"),[E,b]=id("dd-snooze-until-ms",0),R=a||E>Date.now(),N=ut(Ye),D=ut(an),_=N.filter(de=>de.source!=="gpt").length,K=()=>{R&&b(0),r(Jl(!R))},Re=de=>{let M=Date.now()+de*1e3;b(M),C.info(`Snooze until: ${new Date(M)}`),r(je({collapse:!0}))};return xh(()=>{_===0&&p(null)},[N,_]),lt(()=>{r(je({collapse:!0,skipWhenInputFocus:!0}))}),c===null||m===!1?null:c===!1?Mn("div",{ref:i,className:wr(e.root,{[e.isCollapsed]:R}),children:[!R&&Mn("div",{className:e.triggers,children:[X("div",{style:{flex:1}}),X("div",{className:e.triggersRight,children:X(Tt,{className:e.toggleButton,title:n("collapse"),onClick:K,isCollapsed:!1})})]}),X("div",{className:e.toggleButtonWrapper,children:X(Tt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:K,isCollapsed:!0})}),X("div",{className:e.collapsible,children:X(zo,{loginUrl:h,isEmbedded:w,onLogIn:t,onSnooze:Re})})]}):!s||!o?null:Mn("div",{ref:i,className:wr(e.root,{[e.isCollapsed]:R}),children:[!R&&Mn("div",{className:e.triggers,children:[X("div",{style:{flex:1},children:y&&X("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>p(n(ad()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>p(null),children:X(md,{title:n("search")})})}),Mn("div",{className:e.triggersRight,onFocus:()=>{},children:[X("div",{className:wr(!u&&e.hintsHidden,e.hints),children:u}),X(Tt,{className:e.toggleButton,title:n("collapse"),onClick:K,isCollapsed:!1})]})]}),X("div",{className:e.toggleButtonWrapper,children:X(Tt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:K,isCollapsed:!0})}),_>0&&g&&X("div",{className:e.collapsible,onFocus:()=>{},children:X(te,{children:X(Ho,{suggestions:N,selectedIndex:D,reverse:!0})})})]})},fd=Th;import Dr from"classnames";import{Interweave as by}from"interweave";import{useCallback as Cy,useEffect as Ty,useMemo as Kd,useRef as wy}from"react";import{connect as Ey}from"react-redux";import{useEffect as wh,useRef as Eh,useState as kh}from"react";function Wo(t){return t.contentEditable==="true"}function Rh(t){let e=0,n=0,o=window.getSelection();if(o.rangeCount!==0){let s=o.getRangeAt(0),r=s.cloneRange();r.selectNodeContents(t),r.setEnd(s.endContainer,s.endOffset),n=r.toString().length,r.selectNodeContents(t),r.setEnd(s.startContainer,s.startOffset),e=r.toString().length}return{selectionStart:e,selectionEnd:n}}function hd(t){let{selectionStart:e,selectionEnd:n}=Wo(t)?Rh(t):t;return[e,n]}function yd(t){let[,e]=kh(),n=Eh(null);return n.current=hd(t),wh(()=>{let o=()=>{var l;let[s,r]=(l=n.current)!=null?l:[],i=hd(t);(!i||s!==i[0]||r!==i[1])&&(n.current=i,e({}))};return t.addEventListener("keyup",o),t.addEventListener("click",o),t.addEventListener("focus",o),document.addEventListener("selectionchange",o),()=>{t.removeEventListener("keyup",o),t.removeEventListener("click",o),t.removeEventListener("focus",o),document.removeEventListener("selectionchange",o)}},[t]),n.current}function vd(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(Yn);if(!i||i.length===0)return;let l=0;i.find(d=>{let a=o.indexOf(d,l);return s>a&&r<a+d.length?(n.selectionStart=a,n.selectionEnd=a+d.length,!0):(l=a+d.length,!1)})}import{cloneElement as Ih}from"react";var Ph=["div","span","mark","strong","b","i","u","em"];function Er(t,e,n=0){var r;let o=t[t.length-1],s=typeof o=="object"&&o!==null?(r=o.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,o];if(Ph.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),Ih(o,{children:Er(i,e,n+1)})]}return[...t,...e]}function pt(t){return t.tagName.toLowerCase()==="textarea"}var xd={root:"dd-7-cgW",container:"dd-PsRQ8",agentText:"dd-qnW-V",tabText:"dd-cUHUr",hint:"dd-v7fSg",matchSelection:"dd-8cr8y",focus:"dd-3tr9l",resetIndent:"dd-TvQfZ",matchKeyword:"dd-oJkRD",matchPlaceholder:"dd-QvNoo",hover:"dd--wi0R",hintText:"dd-7gQQh",popover:"dd-xbRu-",popoverRoot:"dd-rA2x8",popoverContentContainer:"dd-JHICl",popoverContent:"dd--mfkC",selectionOptions:"dd-p52wn",selectionOptionsIsHidden:"dd-sSTDp",selectionOptionsButton:"dd-Q6kRY",caret:"dd-jIhc8",popoverSuggestionsRoot:"dd-iFDbL",suggestionsOverlayInputStyles:"dd-zzENA"};import Xh from"classnames";import{Matcher as Jh}from"interweave";import{useEffect as Zh,useMemo as Qh}from"react";import{useEffect as Lh,useRef as Ah,useState as Mh}from"react";function Sd(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function Vo(t){let e=Ah(null),[n,o]=Mh(!1);return Lh(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,l]=Sd((m,u)=>{let p=e.current;if(!p)return;let y=m/r,g=u/r,h=p.getBoundingClientRect(),w=y>h.x&&y<h.x+h.width&&g>h.y&&g<h.y+h.height;w&&!s?(s=!0,o(!0)):!w&&s&&(s=!1,o(!1))},({clientX:m,clientY:u})=>[m,u]),[d,a]=Sd(()=>{s=!1,o(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",d),()=>{l(),a(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",d)}},[e]),[e,n]}function bd(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function jo(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function Cd(t){return t!=null}import Rd from"classnames";import{createRef as zh,useCallback as Rr,useMemo as Wh,useRef as Vh,useState as jh}from"react";import{useState as Nh,useLayoutEffect as Oh}from"react";var Dh=["bottom","height","left","right","top","width"],_h=(t={},e={})=>Dh.some(n=>t[n]!==e[n]),Ne=new Map,Td,wd=()=>{let t=[],e=[];Ne.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();_h(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{Ne.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),Td=window.requestAnimationFrame(wd)};function Fh(t,e){return{observe(){let n=Ne.size===0;if(Ne.has(t)){let o=Ne.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else Ne.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&wd()},unobserve(){let n=Ne.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Ne.delete(t),Ne.size||cancelAnimationFrame(Td)}}}}function kr(t){let[e,n]=Nh(null);return Oh(()=>{if(!t.current)return;let o=Fh(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Hh,useLayoutEffect as Bh,useState as Kh}from"react";import{createPortal as Uh}from"react-dom";var Ed={root:"dd-r-dgo"};var kd=({children:t,parentNode:e})=>{let[n,o]=Kh(null),s=Hh(en);return Bh(()=>{let r=document.createElement("div");return dt(r),r.classList.add(Ed.root),s!=null&&s.portalRootNode&&r.classList.add(s==null?void 0:s.portalRootNode),(e||document.body).appendChild(r),o(r),()=>{r.isConnected&&r.remove()}},[]),n?Uh(t,n):null};var Ce={ref:"dd-iz-KP",root:"dd-vEMon",positionAbove:"dd-mUCxM",positionBelow:"dd-7oZI7",positionLeft:"dd-BiWvD",positionRight:"dd-JIWea",alignStart:"dd-5ivu6",alignCenter:"dd-rnVkP",alignEnd:"dd-gZBp4"};import{jsx as Ir}from"react/jsx-runtime";var $o=(t=!1)=>{let[e,n]=jh(t),o=Rr(()=>n(!0),[]),s=Rr(()=>n(!1),[]),r=Rr(()=>n(l=>!l),[]),i=Vh(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function Pr(t,e=null,n=0){if(!t)return{display:"none"};let o=e?t.top-e.top<0||t.top<e.top-n?e.top-n:t.top+t.height>e.top+e.height+n?e.top+e.height+n-t.height:t.top:t.top,s=e?t.left<e.left-n?e.left-n:t.left+t.width>e.left+e.width+n?e.left+e.width+n-t.width:t.left:t.left;return{top:o,left:s,height:t.height,width:t.width}}var Ft=a=>{var c=a,{className:t,triggerRef:e,boundaryRef:n=zh(),position:o="above",align:s="center",children:r,toStyle:i=Pr,parentNode:l}=c,d=P(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let m=kr(e),u=kr(n),p=Wh(()=>i(m,u,0),[m,u]);return Ir(kd,{parentNode:l,children:Ir("div",x(f({className:Rd(Ce.ref,{[Ce.positionAbove]:o==="above",[Ce.positionBelow]:o==="below",[Ce.positionLeft]:o==="left",[Ce.positionRight]:o==="right",[Ce.alignStart]:s==="start",[Ce.alignCenter]:s==="center",[Ce.alignEnd]:s==="end"}),style:p},d),{role:"dialog",children:Ir("div",{className:Rd(t,Ce.root),children:r})}))})};import $h from"classnames";import{forwardRef as qh,useRef as Gh}from"react";var Oe={root:"dd-7-cgW",container:"dd-PsRQ8",agentText:"dd-qnW-V",tabText:"dd-cUHUr",hint:"dd-v7fSg",matchSelection:"dd-8cr8y",focus:"dd-3tr9l",resetIndent:"dd-TvQfZ",matchKeyword:"dd-oJkRD",matchPlaceholder:"dd-QvNoo",hover:"dd--wi0R",hintText:"dd-7gQQh",popover:"dd-xbRu-",popoverRoot:"dd-rA2x8",popoverContentContainer:"dd-JHICl",popoverContent:"dd--mfkC",selectionOptions:"dd-p52wn",selectionOptionsIsHidden:"dd-sSTDp",selectionOptionsButton:"dd-Q6kRY",caret:"dd-jIhc8",popoverSuggestionsRoot:"dd-iFDbL",suggestionsOverlayInputStyles:"dd-zzENA"};import{jsx as Id}from"react/jsx-runtime";var qo=qh((s,o)=>{var r=s,{className:t,children:e}=r,n=P(r,["className","children"]);let i=Gh(null),l=S("TabCompletion",Oe);return Id("div",x(f({ref:jo([i,o]),className:$h(t,l.popoverContentContainer)},n),{children:Id("div",{className:l.popoverContent,children:e})}))});import{jsx as Nn,jsxs as ty}from"react/jsx-runtime";var Yh=t=>e=>{let n=Pr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},ey=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=S("TabCompletion",Oe),i=$o(),l=Qh(()=>Yh(t.getBoundingClientRect()),[t]),[d,a]=Vo(t);return Zh(()=>{a?i.open():i.close()},[a]),ty("span",{children:[Nn("mark",{ref:jo([d,i.triggerRef]),className:Xh(r.matchKeyword,{[r.hover]:a}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Nn(Ft,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:l,children:Nn(qo,{style:n,children:Nn("div",{className:r.hintText,children:s})})})]})},Go=class extends Jh{constructor(){super(...arguments);this.keywordMatches=[];this.preparedKeywordMatches=[];this.usedKeywordMatches=new Set}onBeforeParse(n,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(s=>x(f({},s),{keywordRegex:new RegExp(`\\b${bd(s.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),n}match(n){let o=this.preparedKeywordMatches.map(r=>{if(this.usedKeywordMatches.has(r))return null;let i=n.match(r.keywordRegex);if(!i)return null;let l=n.charAt(i.index-1),d=n.charAt(i.index+r.keyword.length);return l==="{"&&d==="}"?null:{index:i.index,length:i[0].length,match:i[0],matchString:i[0],suggestion:r.suggestion,preparedKeywordMatch:r,valid:!0}}).filter(Cd);if(o.length===0)return null;let s=o.reduce((r,i)=>i.index<r.index?i:r);return this.usedKeywordMatches.add(s.preparedKeywordMatch),s}replaceWith(n,o){return Nn(ey,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:n},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{Matcher as ny}from"interweave";import oy from"classnames";import{jsx as Pd}from"react/jsx-runtime";var sy=({inputElement:t,children:e})=>{let n=S("TabCompletion",Oe),[o,s]=Vo(t);return Pd("mark",{ref:o,className:oy(n.matchPlaceholder,{[n.hover]:s}),children:e})},Xo=class extends ny{match(e){let n=e.match(/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\}(?!\}))/);return n?{index:n.index,length:n[0].length,match:n[0],matchString:n[0],valid:!0}:null}replaceWith(e,n){return Pd(sy,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Or from"classnames";import{Matcher as gy}from"interweave";import{createRef as fy,forwardRef as hy,useCallback as yy,useEffect as Fd,useRef as Hd,useState as Bd}from"react";import{useDispatch as vy}from"react-redux";import{jsx as Ld}from"react/jsx-runtime";var Ad=()=>Ld("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:Ld("path",{fill:"currentColor",d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"})});import{useCallback as ry,useEffect as Nd,useMemo as iy,useState as Od}from"react";import{useDispatch as ay,useSelector as Dd}from"react-redux";import ly from"lodash.debounce";var Md={root:"dd-ky-Bv",content:"dd-kV5e1"};function Jo(t,e,n){var s;let o=((s=t.imageSizes)==null?void 0:s[e])||t.image||n;if(!o)return null;try{return new URL(o).toString()}catch(r){return null}}function Lr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as mt,jsxs as Ar}from"react/jsx-runtime";var dy=3,cy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),uy=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=dy})=>{let r=S("LinkSearch",Md),[i,l]=Od(""),d=ay(),a=Dd(Al("url")),c=Dd(xa("URL")),m=iy(()=>c.map(cy),[c]),[u,p]=Od(m.length-1),y=T("fallbackImage"),g=b=>{let R=b.target;l(R.value)},h=(b,R)=>{b.stopPropagation(),b.preventDefault(),window.open(R,"_blank")},w=b=>{var D;let R=u-1<0?m.length-1:u-1,N=u+1===m.length?0:u+1;b.code==="Escape"&&(l(""),e()),b.code==="ArrowUp"&&p(R),b.code==="ArrowDown"&&p(N),b.code==="Enter"&&t(((D=m[u])==null?void 0:D.text)||i)},E=ry(ly(b=>{d(nt({query:b,type:"URL",tags:["link-search"]}))},300),[]);return Nd(()=>{i&&E(i)},[i]),Nd(()=>()=>{d(go())},[]),Ar("div",{className:r.root,children:[mt(te,{withDivider:!0,children:(i?m:a).slice(0,s).map((b,R)=>mt(A,{selected:u===R,onClick:()=>t(b.text),"data-testid":"linksearch-suggestion",children:Ar(O,{children:[mt(O.Image,{src:Jo(b,"small",y||void 0),title:b.title||b.text}),Ar(O.Content,{className:r.content,cropText:!0,children:[mt(O.Title,{children:b.title||Lr(b.text)}),b.title&&Lr(b.text)]}),mt(A.Actions,{children:mt(A.ActionButton,{label:o,onClick:N=>h(N,b.text)})})]})},b.text))}),mt(Cn,{value:i,onChange:g,autoFocus:!0,placeholder:n,onKeyUp:w})]})},_d=uy;var Mr={};Z(Mr,{enUS:()=>py,nlNL:()=>my});var py={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},my={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as Te,jsxs as Nr}from"react/jsx-runtime";var xy=hy((t,e)=>{let n=S("TabCompletion",Oe);return Te("mark",{ref:e,className:Or(n.matchSelection)},"selection-start")}),Sy=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=k(Mr),i=S("TabCompletion",Oe),l=Hd(null),d=Hd(null),[a,c]=Bd(null),m=vy(),u=$o(document.activeElement===o),[p]=Bd(()=>document.createRange());u.triggerRef.current=p,Fd(()=>()=>p.detach(),[]),Fd(()=>{let g=t.current,h=l.current;!g||!h||(p.setStart(g,0),p.setEnd(h,0))},[t.current,l.current]),lt(()=>{u.close()});let y=yy(g=>{let h=p.toString(),w=/^http(s?):\/\//.test(g)?g:`https://${g}`;m(io({text:`[${h}](${w})`,replace:"selection"}))},[]);return Nr("span",{children:[Te("mark",{ref:l,className:Or(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":u.opened?"true":"false",children:s}),u.opened&&Te(Ft,{className:i.popoverRoot,triggerRef:u.triggerRef,boundaryRef:e,position:"above",align:"start",children:Nr(qo,{style:n,ref:d,children:[Te("div",{className:Or(i.selectionOptions,{[i.selectionOptionsIsHidden]:a!==null}),children:Nr("button",{type:"button",tabIndex:a===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>c("insertLink"),children:[Te(Ad,{}),Te("span",{children:"\xA0"}),Te("span",{children:r("insertLink")})]})}),a==="insertLink"&&Te(_d,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:y,onDismiss:()=>{c(null),u.close()}})]})})]},"selection-end")},Zo=class extends gy{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=fy(),this.foundIndex=0,n}match(n){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,s]=this.props.selection;if(o===s)return null;let r=this.foundIndex===0?o:s,i=r>=this.charCount&&r<=this.charCount+n.length?{index:r-this.charCount,length:0,match:"",valid:!0}:null;i&&this.foundIndex++;let l=this.foundIndex===1;return i&&l?this.charCount+=r-this.charCount:this.charCount+=n.length,i?f({isStart:l},i):null}replaceWith(n,o){return o.isStart?Te(xy,{ref:this.startRef}):Te(Sy,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as ky}from"react-redux";import{jsx as Ht,jsxs as Py}from"react/jsx-runtime";var Ry=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:l,source:d})=>{let a=S("TabCompletion",xd),c=T("insertLink"),m=T("showMidSentenceSuggestions"),u=T("inlineSuggestions"),p=yd(l),y=wy(null),g=ky(q);Ty(()=>{pt(l)&&p&&vd(l,p)},[p]);let h=Cy(b=>{if(!s||!n)return b;let R=[Ht("span",{className:a.resetIndent,children:"\u200B"},"u200B"),Ht("span",{"data-testid":"tab-completion",className:Dr(a.tabText,a.resetIndent),"data-source":d,children:n},"tabText")];return o&&R.push(Ht("span",{className:Dr(a.hint,a.resetIndent),children:Ht(ks,{keyCode:"tab"},"tabHint")},"tabHint")),Er(b,R)},[s,n,o]),w=Kd(()=>{let b=[];return c&&b.push(new Zo("selection")),b.push(new Xo("placeholders")),r&&b.push(new Go("keywords")),b},[u,c,r]),E=Kd(()=>{let b=window.getComputedStyle(l);return{"--dd-color":b.color,"--dd-font-size":b.fontSize,"--dd-font-family":b.fontFamily,"--dd-font-variant":b.fontVariant}},[]);return!t||!g?null:Py("div",{ref:b=>{b!=null&&b.parentElement&&(y.current=b==null?void 0:b.parentElement)},className:a.root,style:E,children:[Ht(by,{tagName:"span",containerTagName:"div",className:Dr(a.container,a.agentText),disableLineBreaks:pt(l),content:e||"\u200B",onAfterParse:h,matchers:w,selection:p,keywordMatches:i,inputElement:l,inputStyle:E,boundaryRef:y,inlineSuggestionsOnlyAtEnd:!m}),Ht("br",{})]},"tab-completion")},Iy=t=>{var h,w,E;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=It({input:e}),l=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",a=(h=e.html)!=null?h:Rn(e.text),c=l.indexOf(e.text)===0?l.slice(e.text.length):"",{showTabHint:m}=n,{isSupported:u}=r,{showTabCompletion:p,visible:y,showStyleSuggestions:g}=o;return{showTabHint:m,showStyleSuggestions:g,showTabCompletion:p&&be(t),content:a,tabText:c,source:d,keywordMatches:(E=(w=s.list)==null?void 0:w.keywordMatches)!=null?E:[],enabled:y&&u!==!1}},Ud=Ey(Iy)(Ry);import{Fragment as Jv,useEffect as Jr,useState as Zv}from"react";import{useDispatch as zc,useSelector as J}from"react-redux";import{createAction as Vd,createAsyncThunk as Qo,createSlice as Ay}from"@reduxjs/toolkit";import{Marked as Ly}from"marked";var zd=(t,e)=>{let n=[],o=new Ly,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var On="__summarizerAssistant__",Wd={cues:[],threads:{},pending:[]},jd=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var _r=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Yo=Vd("assistants/callToAction"),De=Qo("assistants/evaluateSummaryAssistant",(t,e)=>v(void 0,null,function*(){try{let o=e.getState().profile.data;if(!o)throw new Error("No Profile is loaded");let{summarizerAssistantNew:s}=o;if(!s)throw new Error("No Summarizer Assistant set in Profile");let r=yield e.dispatch(he(f({assistantCode:s,expectFormat:"text",transcript:"in-memory-transcript",skipState:!0},t)));if(r.error)throw new Error(r.error.message);if(typeof r.payload.output!="string")throw C.warn("Unexpected summary output",r),new Error("Unexpected summary output");return{output:r.payload.output,evaluationId:r.payload.evaluationId}}catch(n){return n instanceof Error?e.rejectWithValue(n.message):e.rejectWithValue("Unknown error")}})),My=1,Dn=Qo("assistants/evaluateKnowledgeAssistantLegacy",(t,e)=>v(void 0,null,function*(){var p,y,g,h;let{threadId:n}=t,{onNewThreadId:o,input:s}=t,{deepdeskAPI:r}=e.extra,i=e.getState(),{platformVariables:l}=i.info;n||(n=My++,o&&o(n));let d=(p=_r(n)(i))!=null?p:[],a=yield r.getKnowledgeAssistant(t.assistantCode),c=(y=i.conversation.current)==null?void 0:y.externalId,m=(h=(g=i.info)==null?void 0:g.agentInfo)==null?void 0:h.agentId;if(!a)throw new Error("KnowledgeAssistant is not found");let u=yield r.knowledgeAssist({customerInstruction:a.customerInstruction,doNotKnowAnswer:a.doNotKnowAnswer,question:s},d,a.code,{agentId:m,conversationId:c});return l&&(u.answer=ne(u.answer,l)),{threadId:n,question:s,answer:u,evaluationId:"??"}})),_n=Qo("assistants/evaluateKnowledgeAssistant",(t,e)=>v(void 0,null,function*(){let{threadId:n}=t,{onNewThreadId:o}=t,{deepdeskAPI:s}=e.extra,r=e.getState(),{platformVariables:i}=r.info;n||(n=(yield s.createAssistantThread({assistantCode:t.assistantCode})).id,o&&o(n)),yield s.postMessageToAssistantThread({assistantCode:t.assistantCode,threadId:n,message:t.input});let l=yield e.dispatch(he(x(f({expectFormat:"json-schema:knowledge-assist",skipState:!0},t),{input:{},threadId:n})));if(l.error)throw new Error(l.error.message);let d=l.payload.output;return{threadId:n,question:t.input,evaluationId:l.payload.evaluationId,answer:{answer:ne(d.response,i!=null?i:{}),sources:d.sources}}})),eM=Vd("assistants/extractedTextSuggestions"),he=Qo("assistants/evaluate",(t,e)=>v(void 0,null,function*(){var p;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},expectFormat:i,threadId:l}=t,d=e.getState(),{platformVariables:a}=d.info,c=(p=d.conversation.current)==null?void 0:p.externalId,m;if(s==="in-memory-transcript"){if(!o.conversationQuery)throw new Error("Can't include in-memory-transcript, setConversationQuery is not defined");m=yield o.conversationQuery()}else Array.isArray(s)&&(m=s);if(t.includeMetadata){if(!d.conversation.current)throw new Error("Can't include metadata, no current conversation");let{metadata:y}=d.conversation.current;Object.assign(r,{metadata:y})}let u=yield n.evaluateAssistant(t.assistantCode,{expectFormat:i,input:r,transcript:m,externalConversationId:c,threadId:l});if(u.evaluationStatus!=="success")throw new Error(`Assistant ${t.assistantCode} evaluation failed: ${u.evaluationStatus}`);switch(i){case"text":return{evaluationId:u.evaluationId,output:ne(u.output,a)};case"json-schema:cues":{if(!Array.isArray(u.output))return x(f({},u),{output:[]});let y=u.output.map(h=>x(f({},h),{name:ne(h.name,a),response:ne(h.response,a)})),g=[];return y.forEach(h=>{let w=zd(h.response,"reply");g.push(...w.map(E=>({text:E,type:"text",source:"assistant",assistantCode:h.code,sourceLabel:h.name})))}),g.length>0&&e.dispatch(uo(g)),x(f({},u),{output:y})}case"json-schema:knowledge-assist":{let y=u.output;if(u.output==="")throw new Error("No output from assistant");return{output:y,evaluationId:u.evaluationId,answer:ne(y.response,a)}}default:return u}})),$d=Ay({name:"assistants",initialState:Wd,reducers:{resetCues(t){t.cues=[]},removeCueByCode(t,e){t.cues=t.cues.filter(n=>n.code!==e.payload.code)},removeThreadById(t,e){delete t.threads[e.payload]},receiveChunk(t,e){let{code:n,name:o,payload:s,evaluationId:r}=e.payload,i=t.cues.findIndex(l=>l.code===n);i!==-1?t.cues[i].response+=s.text:t.cues.push({code:n,name:o,evaluationId:r,response:s.text})},userNotification(t,e){let n=t.cues.filter(d=>d.code!==e.payload.code),{code:o,name:s,evaluationId:r,payload:i}=e.payload,{callToAction:l}=i;t.cues=[...n,{code:o,name:s,evaluationId:r,response:i.message,editable:i.editableMessage,callToAction:l&&{label:l.displayName,event:l.onClickEvent,value:l.eventPayload}}]}},extraReducers:t=>{t.addCase(he.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&C.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(he.rejected,(e,n)=>{var s;C.warn((s=n.error)==null?void 0:s.message);let o=e.pending.indexOf(n.meta.arg.assistantCode);o!==-1&&e.pending.splice(o,1)}).addCase(he.fulfilled,(e,n)=>{let o=e.pending.indexOf(n.meta.arg.assistantCode);if(o!==-1&&e.pending.splice(o,1),!n.meta.arg.skipState)switch(n.meta.arg.expectFormat){case"json-schema:cues":{let{evaluationId:s,output:r}=n.payload,i=r.map(a=>a.code),l=e.cues.filter(a=>!i.includes(a.code)),d=r.map(a=>x(f({},a),{evaluationId:s}));e.cues=[...l,...d];break}}}).addCase(_n.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=P(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(Dn.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=P(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(De.pending,e=>{let n={code:On,name:"Summary",response:"",isLoading:!0,evaluationId:""},o=e.cues.filter(s=>s.code!==On);e.cues=[...o,n]}).addCase(De.rejected,e=>{let n=e.cues.filter(o=>o.code!==On);e.cues=n}).addCase(De.fulfilled,(e,n)=>{let o={code:On,name:"Summary",response:n.payload.output,specialType:"summary",evaluationId:n.payload.evaluationId},s=e.cues.filter(r=>r.code!==On);e.cues=[...s,o]}).addCase(W,()=>Wd)}}),{removeCueByCode:es,resetCues:tM,removeThreadById:qd,receiveChunk:Gd,userNotification:Xd}=$d.actions,Jd=$d.reducer;import{createAsyncThunk as Zd,createSlice as Ny}from"@reduxjs/toolkit";var Oy={token:null,interval:null},Fr=Zd("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Hr=Zd("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Fr()),setInterval(()=>o(Fr()),n)}),Qd=Ny({name:"passwordlessToken",initialState:Oy,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Fr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Hr.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:Yd}=Qd.actions,ec=Qd.reducer;import{createSelector as Dy}from"@reduxjs/toolkit";function _y(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var tc=Dy([jd],t=>t.map(n=>({text:n.response,title:n.name,callToAction:n.callToAction,editable:n.editable,isLoading:n.isLoading,specialType:n.specialType,evaluationId:n.evaluationId,rule:{id:_y(n.code),label:n.code,name:n.name,description:n.name}})));import{useEffect as Fy,useState as Hy}from"react";import{useDispatch as By}from"react-redux";import sc from"classnames";import{jsx as nc}from"react/jsx-runtime";var Fn=()=>nc("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:nc("path",{d:"M502.6 70.63l-61.25-61.25C435.4 3.371 427.2 0 418.7 0H255.1c-35.35 0-64 28.66-64 64l.0195 256C192 355.4 220.7 384 256 384h192c35.2 0 64-28.8 64-64V93.25C512 84.77 508.6 76.63 502.6 70.63zM464 320c0 8.836-7.164 16-16 16H255.1c-8.838 0-16-7.164-16-16L239.1 64.13c0-8.836 7.164-16 16-16h128L384 96c0 17.67 14.33 32 32 32h47.1V320zM272 448c0 8.836-7.164 16-16 16H63.1c-8.838 0-16-7.164-16-16L47.98 192.1c0-8.836 7.164-16 16-16H160V128H63.99c-35.35 0-64 28.65-64 64l.0098 256C.002 483.3 28.66 512 64 512h192c35.2 0 64-28.8 64-64v-32h-47.1L272 448z"})});var oc={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as Bt,jsxs as rc}from"react/jsx-runtime";var Ky=({entities:t})=>{let e=S("EntitiesWidgetList",oc),[n,o]=Hy(void 0),s=By(),r=()=>{o(void 0)},i=l=>{t&&(o(t.indexOf(l)),ve(l.text),s(Ue({name:"entity copied",data:{entity:l,type:"copy"}})))};return Fy(()=>{let l=setTimeout(r,500);return()=>{clearTimeout(l)}},[n]),!t||t.length===0?null:Bt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((l,d)=>rc("button",{title:l.text,className:e.entity,type:"button",onClick:()=>i(l),children:[Bt("span",{className:e.entityText,children:l.text}),rc("span",{className:e.iconWrapper,children:[Bt("span",{className:sc(e.icon),children:Bt(Fn,{})}),Bt("span",{className:sc(e.icon,n===d&&e.iconClicked),children:Bt(Fn,{})})]})]},l.text))})},ic=Ky;import{jsx as ac}from"react/jsx-runtime";var lc=()=>ac("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:ac("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useRef as Gy}from"react";import{useSelector as hc}from"react-redux";import{useRef as Uy,useState as Br}from"react";import{useDispatch as zy}from"react-redux";function Hn(t,e){let n=Uy(t);n.current=t;let[o,s]=Br(void 0),[r,i]=Br(void 0),[l,d]=Br("idle"),a=zy();return{error:r,state:l,data:o,call:u=>v(this,null,function*(){d("loading"),yield a(n.current(u)).unwrap().then(p=>{s(p),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(p))}).catch(p=>{i(p),d("error"),e!=null&&e.onError&&(e==null||e.onError(p))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}var dc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var cc={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as Vy}from"react/jsx-runtime";var Wy=({size:t=12})=>{let e=S("LoadingSpinner",cc);return Vy("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},uc=Wy;import{jsx as pc}from"react/jsx-runtime";var mc=()=>pc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:pc("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});import{jsx as gc,jsxs as jy}from"react/jsx-runtime";var fc=t=>jy("svg",x(f({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[gc("title",{id:"checkTitle",children:"Check"}),gc("path",{fill:"#666",d:"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"})]}));var Kr={};Z(Kr,{enUS:()=>$y,nlNL:()=>qy});var $y={error:[{type:0,value:"Something went wrong"}]},qy={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as _e,jsxs as yc}from"react/jsx-runtime";var Xy=3e3,Jy=({assistantOptions:t})=>{let e=S("OnDemandAssistants",dc),n=k(Kr),o=Gy(),s=Hn(he),r=Hn(De),i=hc(za),l=hc(Wa),d=G(),a=l.filter(u=>u.isPinned),c=l.filter(u=>!u.isPinned),m=u=>v(void 0,null,function*(){clearTimeout(o.current),d("trigger on demand assistant",{assistantCode:u}),u===i?yield r.call({transcript:t.transcript}):yield s.call(x(f({},t),{assistantCode:u})),o.current=setTimeout(()=>s.reset(),Xy)});return l.length===0?null:yc("div",{className:e.root,children:[a.map(({assistant:u,assistantName:p,displayName:y})=>_e("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>m(u),children:y||p},u)),c.length>0&&yc(j,{placement:"top-end",children:[_e(j.Trigger,{className:e.trigger,disabled:s.state==="loading",children:_e(Po,{"data-testid":"trigger"})}),_e(j.Content,{className:e.nav,"data-testid":"popover",children:c.map(({assistant:u,assistantName:p,displayName:y})=>_e(j.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>m(u),children:y||p},u))})]}),s.state==="loading"&&_e(uc,{}),s.state==="done"&&_e(fc,{"data-testid":"trigger-done"}),s.state==="error"&&_e(sl,{trigger:_e(mc,{}),children:n("error")})]})},vc=Jy;import{useDispatch as Cv}from"react-redux";import{useRef as Yy}from"react";var xc={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as Qy}from"react/jsx-runtime";var Zy=({width:t})=>{let e=S("LoadingProgressBar",xc);return Qy("div",{className:e.loadingBar,style:{width:t}})},ts=Zy;import{jsx as Kt,jsxs as ev}from"react/jsx-runtime";var ns=({title:t})=>{let e=Yy(null);return Qn(e),Kt(A,{ref:e,children:Kt(O,{children:ev(O.Content,{children:[Kt(O.Title,{children:t}),Kt(ts,{width:"60%"}),Kt(ts,{width:"90%"}),Kt(ts,{width:"50%"})]})})})};var Bn={};Z(Bn,{enUS:()=>tv,nlNL:()=>nv});var tv={useCue:[{type:0,value:"Add to message"}],__summarizerAssistant__:[{type:0,value:"Summary"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},nv={useCue:[{type:0,value:"Voeg toe aan bericht"}],__summarizerAssistant__:[{type:0,value:"Samenvatting"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useEffect as Rc,useRef as hv,useState as yv}from"react";import Wr from"classnames";import{useState as rv}from"react";import{jsx as Sc}from"react/jsx-runtime";var Ur=t=>Sc("svg",x(f({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Sc("path",{fillRule:"evenodd",d:"M6.57086468,14.9173453 C6.38997052,14.9711236 6.19835748,15 6,15 L4,15 C2.8954305,15 2,14.1045695 2,13 L2,4 C2,2.8954305 2.8954305,2 4,2 L6,2 C6.68685475,2 7.29284112,2.34623869 7.65294381,2.87370078 C7.95642355,2.67736738 8.29504785,2.51351337 8.66312366,2.3818197 C9.50544052,2.08044754 10.3408482,1.9879107 10.9989281,1.99971266 C11.0150698,2.00005426 13.3487605,2.00015005 18,2 C20.7551411,2 22,6.05643086 22,12 C22,13.6824804 20.8695981,15 19,15 L15.9269768,15 C15.9359266,15.0245465 15.9451954,15.0497804 15.9547911,15.0757271 C16.007193,15.2174219 16.2391583,15.8256341 16.2970775,15.9810953 C16.4872151,16.4914441 16.6259612,16.9026411 16.7382242,17.3098712 C16.9079007,17.9253665 17,18.4798886 17,19 C17,20.4720069 16.091867,21.3862822 14.748281,21.777514 C14.1422801,21.9539723 13.6147967,22.0000922 13.0076976,22.0000008 L12.5204954,22 L12.2202699,21.6261158 C11.2556275,20.4248034 7.64562469,16.4822788 6.57086468,14.9173453 Z M8,13 C8,13.2401953 8.04443154,13.4528921 8.14171093,13.6800176 C8.40663864,14.2985643 11.914268,18.1371493 13.4599624,19.9848695 C13.7113931,19.9660111 13.9483736,19.9273712 14.1891338,19.8572655 C14.7621788,19.6904035 15,19.4509737 15,19 C15,18.6834183 14.9359344,18.2976852 14.8101464,17.8413935 C14.7161494,17.500423 14.5944107,17.1396301 14.4229225,16.6793379 C14.3689242,16.5344009 14.1358033,15.923159 14.0789589,15.7694517 C13.9489218,15.4178313 13.8632547,15.1589343 13.8046536,14.9236885 C13.5555377,13.9236468 13.8054549,13 15,13 L19,13 C19.6912225,13 20,12.6401099 20,12 C20,7.20925475 19.015127,4 18,4 C15.9322103,4 15.9322103,4 10.9655994,3.99940813 C10.5253746,3.99154158 9.91062406,4.05963657 9.33687634,4.2649175 C8.45196659,4.58152894 8,5.09776992 8,6 L8,13 Z M4,4 L4,13 L6,13 L6,4 L4,4 Z"})}));import{jsx as bc}from"react/jsx-runtime";var Cc=t=>bc("svg",x(f({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:bc("path",{fillRule:"evenodd",d:"M7.65336736,21.1256786 C7.2933164,21.6534897 6.68712411,22 6,22 L4,22 C2.8954305,22 2,21.1045695 2,20 L2,11 C2,9.8954305 2.8954305,9 4,9 L6,9 C6.198171,9 6.38961023,9.02882212 6.57035446,9.08250314 C7.6444817,7.51807482 11.2554748,3.57449216 12.2202699,2.37298955 L12.5204954,1.99910538 L13,1.99910538 C13.6147967,1.99901314 14.1422801,2.04513312 14.748281,2.22159137 C16.091867,2.61282321 17,3.52709845 17,4.99910538 C17,5.51921677 16.9079007,6.07373891 16.7382242,6.68923415 C16.6259612,7.09646424 16.4872151,7.50766133 16.2970775,8.01801005 C16.2391583,8.17347129 16.007193,8.78168345 15.9547911,8.92337824 C15.9451954,8.94932503 15.9359266,8.9745589 15.9269768,8.99910538 L19,8.99910538 C20.8695981,8.99910538 22,10.316625 22,11.9991054 C22,17.9426745 20.7551411,21.9991054 18,21.9991054 L11.0344006,21.9985135 C10.3408482,22.0111947 9.50544052,21.9186578 8.66312366,21.6172857 C8.29521907,21.4856533 7.9567386,21.3218904 7.65336736,21.1256786 Z M8,17.9991054 C8,18.9013355 8.45196659,19.4175764 9.33687634,19.7341879 C9.91062406,19.9394688 10.5253746,20.0075638 10.963066,19.9997143 C10.9703499,19.9995545 10.9703499,19.9995545 11,19.9991054 L18,19.9991054 C19.015127,19.9991054 20,16.7898506 20,11.9991054 C20,11.3589955 19.6912225,10.9991054 19,10.9991054 L15,10.9991054 C13.8054549,10.9991054 13.5555377,10.0754586 13.8046536,9.07541689 C13.8632547,8.84017106 13.9489218,8.5812741 14.0789589,8.22965366 C14.1358033,8.07594642 14.3689242,7.46470447 14.4229225,7.31976744 C14.5944107,6.85947528 14.7161494,6.4986824 14.8101464,6.1577119 C14.9359344,5.70142019 15,5.31568707 15,4.99910538 C15,4.54813166 14.7621788,4.30870189 14.1891338,4.1418399 C13.9483736,4.07173418 13.7113931,4.0330943 13.4599624,4.01423587 C11.914268,5.86195611 8.40663864,9.70054105 8.14171093,10.3190878 C8.04443154,10.5462133 8,10.7589101 8,10.9991054 L8,17.9991054 Z M4,11 L4,20 L6,20 L6,11 L4,11 Z"})}));function Ut(t,e){var s;let n=t.cloneNode(!0);n.style.top=`${t.offsetTop}px`,n.style.left=`${t.offsetLeft}px`,n.style.position="absolute",e.split(" ").forEach(r=>{n.classList.add(r)}),n.addEventListener("animationend",()=>n.remove()),(s=t.parentElement)==null||s.appendChild(n)}var zr={};Z(zr,{enUS:()=>ov,nlNL:()=>sv});var ov={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},sv={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Tc={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as wc}from"react-redux";import{jsx as zt,jsxs as av}from"react/jsx-runtime";var iv=({eventName:t,eventData:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=S("FeedbackThumbs",Tc),i=T("enableFeedbackForm"),l=wc(ye),d=wc(Dt(`/admin/feedback?conversationId=${l}&evaluationId=${n}&type=${o}&text=${s}&data=${JSON.stringify(e)}`)),a=k(zr),c=G(),[m,u]=rv(null),p=g=>{g.stopPropagation(),Ut(g.target,r.fadeup),u("up"),c(t,x(f({},e),{evaluationId:n,rating:"up"}))},y=g=>{g.stopPropagation(),Ut(g.target,r.fadedown),u("down"),c(t,x(f({},e),{evaluationId:n,rating:"down"}))};return av("div",{className:r.thumbs,children:[zt(A.Button,{title:a("thumbsUp"),onClick:p,icon:zt(Cc,{}),className:Wr(r.thumbsUp,m==="up"&&r.selected),disabled:!!m}),i&&d?zt(A.Button,{as:"a",title:a("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:y,icon:zt(Ur,{}),className:Wr(r.thumbsDown,m==="down"&&r.selected),disabled:!!m}):zt(A.Button,{title:a("thumbsDown"),onClick:y,icon:zt(Ur,{}),className:Wr(r.thumbsDown,m==="down"&&r.selected),disabled:!!m})]})},Kn=iv;import lv from"dompurify";import{Fragment as kc,useMemo as dv,useRef as cv,useState as uv}from"react";var Ec={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",arrow:"dd-cv33T",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{marked as pv}from"marked";import{jsx as Un,jsxs as os}from"react/jsx-runtime";function mv(t){return`<button type="button" data-copy-icon class=${t}><svg version="1.1" x="0px" y="0px" viewBox="0 0 115.77 122.88" width="10px" height="10px" fill="black"><g><path d="M89.62,13.96v7.73h12.19h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02v0.02 v73.27v0.01h-0.02c-0.01,3.84-1.57,7.33-4.1,9.86c-2.51,2.5-5.98,4.06-9.82,4.07v0.02h-0.02h-61.7H40.1v-0.02 c-3.84-0.01-7.34-1.57-9.86-4.1c-2.5-2.51-4.06-5.98-4.07-9.82h-0.02v-0.02V92.51H13.96h-0.01v-0.02c-3.84-0.01-7.34-1.57-9.86-4.1 c-2.5-2.51-4.06-5.98-4.07-9.82H0v-0.02V13.96v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07V0h0.02h61.7 h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02V13.96L89.62,13.96z M79.04,21.69v-7.73v-0.02h0.02 c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v64.59v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h12.19V35.65 v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02 h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02 v0.02c0.91,0,1.75-0.39,2.37-1.01c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z"/></g></svg></button>`}function Vr(t){var n,o;let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(s=>s.remove()),(o=(n=e.textContent)==null?void 0:n.trim())!=null?o:""}function gv(t){return t.replace(/\r\n/g,`
7
+ c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as Wl}from"react/jsx-runtime";var Rf={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Vl=({className:t,color:e})=>Wl("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Wl("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:Rf[e||"pink"]})});var jl={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var yr={};Z(yr,{enUS:()=>If,nlNL:()=>Pf});var If={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Pf={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Mf}from"react-redux";import{jsx as vr,jsxs as $l}from"react/jsx-runtime";var ql=({onLogIn:t})=>{let e=k(yr),n=T("floatingMenu"),o=T("productName"),s=Mf(),r=Af(q),i=S("FloatingMenu",jl);if(r===null||n===!1)return null;let l=()=>{r===!0?s(me(!0)):t()};return $l("button",{type:"button",className:Lf(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:l,children:[vr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),$l("div",{className:i.icon,children:[vr(Vl,{className:i.logo,color:"pink"}),r===!1&&vr(zl,{className:i.lock})]})]})};import{useEffect as th,useRef as nh}from"react";import{useDispatch as oh,useSelector as _t}from"react-redux";import{useEffect as Nf}from"react";function lt(t){Nf(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function dt(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}function be(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.start!==r.end?!1:r.end>=s.length?!0:e?n&&new RegExp(n).test(s.substring(r.end))||o&&new RegExp(o).test(s.substring(0,r.end))?!0:n===!1&&o===!1:!1}import{createSlice as Of}from"@reduxjs/toolkit";var Df={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},_o=({ui:t})=>t.overlayCollapsed,Gl=Of({name:"ui",initialState:Df,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputFocus(t,e){t.overlayCollapsedUserOverwrite!==!0&&(e.payload===!0&&(t.overlayCollapsed=!1),t.inputHasFocus=e.payload)},setOverlayCollapsed(t,e){e.payload.collapse===!1&&(t.openOverlayWhenTyping=!1),!(e.payload.skipWhenInputFocus&&t.inputHasFocus)&&(t.overlayCollapsed=e.payload.collapse)},setOpenOverlayWhenTyping(t,e){t.openOverlayWhenTyping=e.payload},setOverlayCollapsedUserOverwrite(t,e){t.overlayCollapsedUserOverwrite=e.payload,t.overlayCollapsed=e.payload}}}),{setShowTabHint:An,setInputFocus:Fo,setOverlayCollapsed:je,setOpenOverlayWhenTyping:Xl,setOverlayCollapsedUserOverwrite:Jl}=Gl.actions,Zl=Gl.reducer;import{useMemo as Qf}from"react";import{Interweave as Uf}from"interweave";import{useEffect as zf,useMemo as Wf,useRef as Vf,useState as jf}from"react";import{useDispatch as $f,useSelector as nd}from"react-redux";import{useEffect as _f}from"react";function Ql(t,e,n){_f(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Yl={root:"dd-1MBCO",actions:"dd--x4cy",closeIconContainer:"dd-1z5NR",closeIcon:"dd-8qMF-",badge:"dd-4Fpkz",formattedText:"dd-EzvTB"};import{jsx as ed,jsxs as Ff}from"react/jsx-runtime";var td=({title:t})=>Ff("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[ed("title",{id:"closeTitle",children:t}),ed("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})]});var xr={};Z(xr,{enUS:()=>Hf,nlNL:()=>Bf});var Hf={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Bf={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as ct,jsxs as Zf}from"react/jsx-runtime";var qf=["search","personal-collection-search","search-autocomplete"];function Gf(t,e,n,o={}){var r;let s="";return qf.includes(e)?s=Za(or(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=or(t,n,o),o.placeholders===!0&&(s=Qa(s)),s}var Xf=()=>{},Jf=({selected:t,suggestion:e})=>{let n=k(xr),o=T("inlineSuggestions"),s=nd(Rt),[r,i]=jf(!1),l=T("enableSuggestionFeedback"),d=nd(h=>h.input.text),a=$f(),c=S("TextSuggestion",Yl),m=Vf(null),u=e.source==="assistant",p=l&&!u;zf(()=>{let h=setTimeout(()=>{a(Qi({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(h)}},[e]),Ql(m,"click",()=>{a(pe({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let y=()=>{a(et({source:e.source,text:e.text,assistantCode:e.assistantCode}))},g=Wf(()=>Gf(e.text,e.source,s,{stripAgentPart:o,placeholders:!0,searchKeywords:e.searchKeywords}),[o,e.text,e.source,s,e.searchKeywords]);return e.source==="gpt"&&!o?null:Zf("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[ct(A,{ref:m,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:Xf,children:ct(Uf,{attributes:e.source==="assistant"?{"data-label":n("assistant")}:void 0,containerTagName:"div",noWrap:!1,tagName:"span",className:c.formattedText,content:g})}),p&&r&&ct("div",{className:c.actions,children:ct(Mo,{source:"overlay",context:d,suggestion:e})}),u&&r&&ct("div",{className:c.closeIconContainer,children:ct("button",{type:"button",className:c.closeIcon,onClick:y,title:n("close"),children:ct(td,{title:n("close")})})})]})},od=Jf;import{jsx as eh}from"react/jsx-runtime";var Yf=({suggestions:t,selectedIndex:e,reverse:n})=>Qf(()=>{let s=t.map((r,i)=>eh(od,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),Ho=Yf;var sd={root:"dd-PfvRI",paper:"dd-HYlyY"};import{jsx as Bo}from"react/jsx-runtime";var sh=()=>{let t=nh(null),e=S("InlineSuggestionsOverlay",sd),n=_t(be),o=oh(),s=_t(q),r=_t(kt),i=_t(_o),l=T("showTextSuggestions"),d=_t(Ye),a=_t(an);return lt(()=>{setTimeout(()=>{o(je({collapse:!0,skipWhenInputFocus:!0}))})}),th(()=>{let c=t.current;if(!c||!c.parentElement)return;c.parentElement.style.left="0px";let m=c.getBoundingClientRect();c.parentElement.style.left=`${Math.min(window.innerWidth-4-m.right,0)}px`}),i||!n||!l||d.length===0||s!==!0||r===!1?null:Bo("div",{className:e.root,"data-variant":"inline",children:Bo("div",{ref:t,className:e.paper,children:Bo(te,{children:Bo(Ho,{suggestions:d,selectedIndex:a})})})})},rd=sh;import{Provider as rh}from"react-redux";import{jsx as Ko}from"react/jsx-runtime";var ih=({children:t})=>{let n=T("locale").replace("-","");return Ko(Js.Provider,{value:n,children:t})},ah=({store:t,customStyles:e={},children:n})=>Ko(rh,{store:t,children:Ko(ih,{children:Ko(en.Provider,{value:e,children:n})})}),$e=ah;import wr from"classnames";import{useEffect as xh,useRef as Sh,useState as bh}from"react";import{useDispatch as Ch,useSelector as ut}from"react-redux";import{useState as lh}from"react";function id(t,e){let[n,o]=lh(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return C.error(r),e}});return[n,r=>{try{let i=r instanceof Function?r(n):r;o(i),typeof window!="undefined"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){C.error(i)}}]}var ad=()=>/Mac/i.test(navigator.platform);import uh from"classnames";import{Fragment as ph,useCallback as br,useMemo as dd}from"react";var Sr={};Z(Sr,{enUS:()=>dh,nlNL:()=>ch});var dh={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Sign in"}]},{type:0,value:" to enable "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze for "},{type:8,value:"min",children:[{type:0,value:"10 minutes"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 hour"}]},{type:0,value:" or "},{type:8,value:"day",children:[{type:0,value:"1 day"}]}]},ch={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Log in"}]},{type:0,value:" bij "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze voor "},{type:8,value:"min",children:[{type:0,value:"10 minuten"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 uur"}]},{type:0,value:" of "},{type:8,value:"day",children:[{type:0,value:"1 dag"}]}]};var ld={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as Uo,jsxs as cd}from"react/jsx-runtime";var Cr=(t,e,n)=>o=>Uo("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),mh=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=k(Sr),i=oe(),l=S("Login",ld),d=T("productName"),a=br(h=>{h.preventDefault(),o&&o(Number.parseInt(h.target.value,10))},[]),c=br(h=>{h.preventDefault(),i.send(At,!0)},[e]),m=dd(()=>h=>Uo("a",{onClick:E=>{E.preventDefault(),s()},href:e,className:l.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),u=br(h=>Uo("button",{type:"button",className:l.anchorButton,onClick:c,children:h},"prompt"),[c]),{min:p,hour:y,day:g}=dd(()=>({min:Cr(l,60*10,a),hour:Cr(l,60*60,a),day:Cr(l,60*60*12,a)}),[]);return cd("div",{className:uh(t,l.root),children:[r("loginPlease",{login:n?u:m,productName:d}),o&&cd(ph,{children:[Uo("br",{}),r("snooze",{min:p,hour:y,day:g})]})]})},zo=mh;import{useDispatch as gh}from"react-redux";var ud={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as pd,jsxs as hh}from"react/jsx-runtime";var fh=({title:t})=>{let e=S("SearchTrigger",ud),n=gh(),o=G();return hh("button",{type:"button",className:e.root,onClick:()=>{n(me(!0)),o("open search",{via:"autocomplete-overlay"})},children:[pd(Nt,{}),pd("span",{className:e.text,children:t})]})},md=fh;var Tr={};Z(Tr,{enUS:()=>yh,nlNL:()=>vh});var yh={arrowHint:[{type:0,value:"Tip: use arrow keys to navigate suggestions"}],searchHintWindows:[{type:0,value:"Press CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],searchHintMac:[{type:0,value:"Press CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Close"}],search:[{type:0,value:"Search"}]},vh={arrowHint:[{type:0,value:"Tip: Selecteer suggesties met pijltoetsen"}],searchHintWindows:[{type:0,value:"Druk CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],searchHintMac:[{type:0,value:"Druk CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Sluiten"}],search:[{type:0,value:"Zoeken"}]};var gd={root:"dd-oa7Vc",isInline:"dd-bwk31",toggleButton:"dd-MSB8Z",toggleButtonWrapper:"dd-ZkCzT",toggleButtonWrapperHidden:"dd-Sq66c",isCollapsed:"dd-vkrPk",collapsible:"dd-CWQJe",hints:"dd-IOoo3",hintsHidden:"dd-psVuT",triggers:"dd-toIoo",triggersRight:"dd-mc4l2"};import{jsx as X,jsxs as Mn}from"react/jsx-runtime";var Th=({onLogIn:t})=>{let e=S("SuggestionsOverlay",gd),n=k(Tr),o=ut(be),s=ut(Zi),r=Ch(),i=Sh(null),l=T("searchTriggerKey"),d=T("productName"),a=ut(_o),c=ut(q),m=ut(kt),[u,p]=bh(null),y=T("showSearch"),g=T("showTextSuggestions"),h=T("adminUrl"),w=T("isEmbedded"),[E,b]=id("dd-snooze-until-ms",0),R=a||E>Date.now(),N=ut(Ye),D=ut(an),_=N.filter(de=>de.source!=="gpt").length,K=()=>{R&&b(0),r(Jl(!R))},Re=de=>{let M=Date.now()+de*1e3;b(M),C.info(`Snooze until: ${new Date(M)}`),r(je({collapse:!0}))};return xh(()=>{_===0&&p(null)},[N,_]),lt(()=>{r(je({collapse:!0,skipWhenInputFocus:!0}))}),c===null||m===!1?null:c===!1?Mn("div",{ref:i,className:wr(e.root,{[e.isCollapsed]:R}),children:[!R&&Mn("div",{className:e.triggers,children:[X("div",{style:{flex:1}}),X("div",{className:e.triggersRight,children:X(Tt,{className:e.toggleButton,title:n("collapse"),onClick:K,isCollapsed:!1})})]}),X("div",{className:e.toggleButtonWrapper,children:X(Tt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:K,isCollapsed:!0})}),X("div",{className:e.collapsible,children:X(zo,{loginUrl:h,isEmbedded:w,onLogIn:t,onSnooze:Re})})]}):!s||!o?null:Mn("div",{ref:i,className:wr(e.root,{[e.isCollapsed]:R}),children:[!R&&Mn("div",{className:e.triggers,children:[X("div",{style:{flex:1},children:y&&X("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>p(n(ad()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>p(null),children:X(md,{title:n("search")})})}),Mn("div",{className:e.triggersRight,onFocus:()=>{},children:[X("div",{className:wr(!u&&e.hintsHidden,e.hints),children:u}),X(Tt,{className:e.toggleButton,title:n("collapse"),onClick:K,isCollapsed:!1})]})]}),X("div",{className:e.toggleButtonWrapper,children:X(Tt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:K,isCollapsed:!0})}),_>0&&g&&X("div",{className:e.collapsible,onFocus:()=>{},children:X(te,{children:X(Ho,{suggestions:N,selectedIndex:D,reverse:!0})})})]})},fd=Th;import Dr from"classnames";import{Interweave as by}from"interweave";import{useCallback as Cy,useEffect as Ty,useMemo as Kd,useRef as wy}from"react";import{connect as Ey}from"react-redux";import{useEffect as wh,useRef as Eh,useState as kh}from"react";function Wo(t){return t.contentEditable==="true"}function Rh(t){let e=0,n=0,o=window.getSelection();if(o.rangeCount!==0){let s=o.getRangeAt(0),r=s.cloneRange();r.selectNodeContents(t),r.setEnd(s.endContainer,s.endOffset),n=r.toString().length,r.selectNodeContents(t),r.setEnd(s.startContainer,s.startOffset),e=r.toString().length}return{selectionStart:e,selectionEnd:n}}function hd(t){let{selectionStart:e,selectionEnd:n}=Wo(t)?Rh(t):t;return[e,n]}function yd(t){let[,e]=kh(),n=Eh(null);return n.current=hd(t),wh(()=>{let o=()=>{var l;let[s,r]=(l=n.current)!=null?l:[],i=hd(t);(!i||s!==i[0]||r!==i[1])&&(n.current=i,e({}))};return t.addEventListener("keyup",o),t.addEventListener("click",o),t.addEventListener("focus",o),document.addEventListener("selectionchange",o),()=>{t.removeEventListener("keyup",o),t.removeEventListener("click",o),t.removeEventListener("focus",o),document.removeEventListener("selectionchange",o)}},[t]),n.current}function vd(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(Yn);if(!i||i.length===0)return;let l=0;i.find(d=>{let a=o.indexOf(d,l);return s>a&&r<a+d.length?(n.selectionStart=a,n.selectionEnd=a+d.length,!0):(l=a+d.length,!1)})}import{cloneElement as Ih}from"react";var Ph=["div","span","mark","strong","b","i","u","em"];function Er(t,e,n=0){var r;let o=t[t.length-1],s=typeof o=="object"&&o!==null?(r=o.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,o];if(Ph.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),Ih(o,{children:Er(i,e,n+1)})]}return[...t,...e]}function pt(t){return t.tagName.toLowerCase()==="textarea"}var xd={root:"dd-7-cgW",container:"dd-PsRQ8",agentText:"dd-qnW-V",tabText:"dd-cUHUr",hint:"dd-v7fSg",matchSelection:"dd-8cr8y",focus:"dd-3tr9l",resetIndent:"dd-TvQfZ",matchKeyword:"dd-oJkRD",matchPlaceholder:"dd-QvNoo",hover:"dd--wi0R",hintText:"dd-7gQQh",popover:"dd-xbRu-",popoverRoot:"dd-rA2x8",popoverContentContainer:"dd-JHICl",popoverContent:"dd--mfkC",selectionOptions:"dd-p52wn",selectionOptionsIsHidden:"dd-sSTDp",selectionOptionsButton:"dd-Q6kRY",caret:"dd-jIhc8",popoverSuggestionsRoot:"dd-iFDbL",suggestionsOverlayInputStyles:"dd-zzENA"};import Xh from"classnames";import{Matcher as Jh}from"interweave";import{useEffect as Zh,useMemo as Qh}from"react";import{useEffect as Lh,useRef as Ah,useState as Mh}from"react";function Sd(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function Vo(t){let e=Ah(null),[n,o]=Mh(!1);return Lh(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,l]=Sd((m,u)=>{let p=e.current;if(!p)return;let y=m/r,g=u/r,h=p.getBoundingClientRect(),w=y>h.x&&y<h.x+h.width&&g>h.y&&g<h.y+h.height;w&&!s?(s=!0,o(!0)):!w&&s&&(s=!1,o(!1))},({clientX:m,clientY:u})=>[m,u]),[d,a]=Sd(()=>{s=!1,o(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",d),()=>{l(),a(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",d)}},[e]),[e,n]}function bd(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function jo(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function Cd(t){return t!=null}import Rd from"classnames";import{createRef as zh,useCallback as Rr,useMemo as Wh,useRef as Vh,useState as jh}from"react";import{useState as Nh,useLayoutEffect as Oh}from"react";var Dh=["bottom","height","left","right","top","width"],_h=(t={},e={})=>Dh.some(n=>t[n]!==e[n]),Ne=new Map,Td,wd=()=>{let t=[],e=[];Ne.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();_h(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{Ne.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),Td=window.requestAnimationFrame(wd)};function Fh(t,e){return{observe(){let n=Ne.size===0;if(Ne.has(t)){let o=Ne.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else Ne.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&wd()},unobserve(){let n=Ne.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Ne.delete(t),Ne.size||cancelAnimationFrame(Td)}}}}function kr(t){let[e,n]=Nh(null);return Oh(()=>{if(!t.current)return;let o=Fh(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Hh,useLayoutEffect as Bh,useState as Kh}from"react";import{createPortal as Uh}from"react-dom";var Ed={root:"dd-r-dgo"};var kd=({children:t,parentNode:e})=>{let[n,o]=Kh(null),s=Hh(en);return Bh(()=>{let r=document.createElement("div");return dt(r),r.classList.add(Ed.root),s!=null&&s.portalRootNode&&r.classList.add(s==null?void 0:s.portalRootNode),(e||document.body).appendChild(r),o(r),()=>{r.isConnected&&r.remove()}},[]),n?Uh(t,n):null};var Ce={ref:"dd-iz-KP",root:"dd-vEMon",positionAbove:"dd-mUCxM",positionBelow:"dd-7oZI7",positionLeft:"dd-BiWvD",positionRight:"dd-JIWea",alignStart:"dd-5ivu6",alignCenter:"dd-rnVkP",alignEnd:"dd-gZBp4"};import{jsx as Ir}from"react/jsx-runtime";var $o=(t=!1)=>{let[e,n]=jh(t),o=Rr(()=>n(!0),[]),s=Rr(()=>n(!1),[]),r=Rr(()=>n(l=>!l),[]),i=Vh(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function Pr(t,e=null,n=0){if(!t)return{display:"none"};let o=e?t.top-e.top<0||t.top<e.top-n?e.top-n:t.top+t.height>e.top+e.height+n?e.top+e.height+n-t.height:t.top:t.top,s=e?t.left<e.left-n?e.left-n:t.left+t.width>e.left+e.width+n?e.left+e.width+n-t.width:t.left:t.left;return{top:o,left:s,height:t.height,width:t.width}}var Ft=a=>{var c=a,{className:t,triggerRef:e,boundaryRef:n=zh(),position:o="above",align:s="center",children:r,toStyle:i=Pr,parentNode:l}=c,d=P(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let m=kr(e),u=kr(n),p=Wh(()=>i(m,u,0),[m,u]);return Ir(kd,{parentNode:l,children:Ir("div",x(f({className:Rd(Ce.ref,{[Ce.positionAbove]:o==="above",[Ce.positionBelow]:o==="below",[Ce.positionLeft]:o==="left",[Ce.positionRight]:o==="right",[Ce.alignStart]:s==="start",[Ce.alignCenter]:s==="center",[Ce.alignEnd]:s==="end"}),style:p},d),{role:"dialog",children:Ir("div",{className:Rd(t,Ce.root),children:r})}))})};import $h from"classnames";import{forwardRef as qh,useRef as Gh}from"react";var Oe={root:"dd-7-cgW",container:"dd-PsRQ8",agentText:"dd-qnW-V",tabText:"dd-cUHUr",hint:"dd-v7fSg",matchSelection:"dd-8cr8y",focus:"dd-3tr9l",resetIndent:"dd-TvQfZ",matchKeyword:"dd-oJkRD",matchPlaceholder:"dd-QvNoo",hover:"dd--wi0R",hintText:"dd-7gQQh",popover:"dd-xbRu-",popoverRoot:"dd-rA2x8",popoverContentContainer:"dd-JHICl",popoverContent:"dd--mfkC",selectionOptions:"dd-p52wn",selectionOptionsIsHidden:"dd-sSTDp",selectionOptionsButton:"dd-Q6kRY",caret:"dd-jIhc8",popoverSuggestionsRoot:"dd-iFDbL",suggestionsOverlayInputStyles:"dd-zzENA"};import{jsx as Id}from"react/jsx-runtime";var qo=qh((s,o)=>{var r=s,{className:t,children:e}=r,n=P(r,["className","children"]);let i=Gh(null),l=S("TabCompletion",Oe);return Id("div",x(f({ref:jo([i,o]),className:$h(t,l.popoverContentContainer)},n),{children:Id("div",{className:l.popoverContent,children:e})}))});import{jsx as Nn,jsxs as ty}from"react/jsx-runtime";var Yh=t=>e=>{let n=Pr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},ey=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=S("TabCompletion",Oe),i=$o(),l=Qh(()=>Yh(t.getBoundingClientRect()),[t]),[d,a]=Vo(t);return Zh(()=>{a?i.open():i.close()},[a]),ty("span",{children:[Nn("mark",{ref:jo([d,i.triggerRef]),className:Xh(r.matchKeyword,{[r.hover]:a}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Nn(Ft,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:l,children:Nn(qo,{style:n,children:Nn("div",{className:r.hintText,children:s})})})]})},Go=class extends Jh{constructor(){super(...arguments);this.keywordMatches=[];this.preparedKeywordMatches=[];this.usedKeywordMatches=new Set}onBeforeParse(n,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(s=>x(f({},s),{keywordRegex:new RegExp(`\\b${bd(s.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),n}match(n){let o=this.preparedKeywordMatches.map(r=>{if(this.usedKeywordMatches.has(r))return null;let i=n.match(r.keywordRegex);if(!i)return null;let l=n.charAt(i.index-1),d=n.charAt(i.index+r.keyword.length);return l==="{"&&d==="}"?null:{index:i.index,length:i[0].length,match:i[0],matchString:i[0],suggestion:r.suggestion,preparedKeywordMatch:r,valid:!0}}).filter(Cd);if(o.length===0)return null;let s=o.reduce((r,i)=>i.index<r.index?i:r);return this.usedKeywordMatches.add(s.preparedKeywordMatch),s}replaceWith(n,o){return Nn(ey,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:n},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{Matcher as ny}from"interweave";import oy from"classnames";import{jsx as Pd}from"react/jsx-runtime";var sy=({inputElement:t,children:e})=>{let n=S("TabCompletion",Oe),[o,s]=Vo(t);return Pd("mark",{ref:o,className:oy(n.matchPlaceholder,{[n.hover]:s}),children:e})},Xo=class extends ny{match(e){let n=e.match(/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\}(?!\}))/);return n?{index:n.index,length:n[0].length,match:n[0],matchString:n[0],valid:!0}:null}replaceWith(e,n){return Pd(sy,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Or from"classnames";import{Matcher as gy}from"interweave";import{createRef as fy,forwardRef as hy,useCallback as yy,useEffect as Fd,useRef as Hd,useState as Bd}from"react";import{useDispatch as vy}from"react-redux";import{jsx as Ld}from"react/jsx-runtime";var Ad=()=>Ld("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:Ld("path",{fill:"currentColor",d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"})});import{useCallback as ry,useEffect as Nd,useMemo as iy,useState as Od}from"react";import{useDispatch as ay,useSelector as Dd}from"react-redux";import ly from"lodash.debounce";var Md={root:"dd-ky-Bv",content:"dd-kV5e1"};function Jo(t,e,n){var s;let o=((s=t.imageSizes)==null?void 0:s[e])||t.image||n;if(!o)return null;try{return new URL(o).toString()}catch(r){return null}}function Lr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as mt,jsxs as Ar}from"react/jsx-runtime";var dy=3,cy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),uy=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=dy})=>{let r=S("LinkSearch",Md),[i,l]=Od(""),d=ay(),a=Dd(Al("url")),c=Dd(xa("URL")),m=iy(()=>c.map(cy),[c]),[u,p]=Od(m.length-1),y=T("fallbackImage"),g=b=>{let R=b.target;l(R.value)},h=(b,R)=>{b.stopPropagation(),b.preventDefault(),window.open(R,"_blank")},w=b=>{var D;let R=u-1<0?m.length-1:u-1,N=u+1===m.length?0:u+1;b.code==="Escape"&&(l(""),e()),b.code==="ArrowUp"&&p(R),b.code==="ArrowDown"&&p(N),b.code==="Enter"&&t(((D=m[u])==null?void 0:D.text)||i)},E=ry(ly(b=>{d(nt({query:b,type:"URL",tags:["link-search"]}))},300),[]);return Nd(()=>{i&&E(i)},[i]),Nd(()=>()=>{d(go())},[]),Ar("div",{className:r.root,children:[mt(te,{withDivider:!0,children:(i?m:a).slice(0,s).map((b,R)=>mt(A,{selected:u===R,onClick:()=>t(b.text),"data-testid":"linksearch-suggestion",children:Ar(O,{children:[mt(O.Image,{src:Jo(b,"small",y||void 0),title:b.title||b.text}),Ar(O.Content,{className:r.content,cropText:!0,children:[mt(O.Title,{children:b.title||Lr(b.text)}),b.title&&Lr(b.text)]}),mt(A.Actions,{children:mt(A.ActionButton,{label:o,onClick:N=>h(N,b.text)})})]})},b.text))}),mt(Cn,{value:i,onChange:g,autoFocus:!0,placeholder:n,onKeyUp:w})]})},_d=uy;var Mr={};Z(Mr,{enUS:()=>py,nlNL:()=>my});var py={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},my={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as Te,jsxs as Nr}from"react/jsx-runtime";var xy=hy((t,e)=>{let n=S("TabCompletion",Oe);return Te("mark",{ref:e,className:Or(n.matchSelection)},"selection-start")}),Sy=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=k(Mr),i=S("TabCompletion",Oe),l=Hd(null),d=Hd(null),[a,c]=Bd(null),m=vy(),u=$o(document.activeElement===o),[p]=Bd(()=>document.createRange());u.triggerRef.current=p,Fd(()=>()=>p.detach(),[]),Fd(()=>{let g=t.current,h=l.current;!g||!h||(p.setStart(g,0),p.setEnd(h,0))},[t.current,l.current]),lt(()=>{u.close()});let y=yy(g=>{let h=p.toString(),w=/^http(s?):\/\//.test(g)?g:`https://${g}`;m(io({text:`[${h}](${w})`,replace:"selection"}))},[]);return Nr("span",{children:[Te("mark",{ref:l,className:Or(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":u.opened?"true":"false",children:s}),u.opened&&Te(Ft,{className:i.popoverRoot,triggerRef:u.triggerRef,boundaryRef:e,position:"above",align:"start",children:Nr(qo,{style:n,ref:d,children:[Te("div",{className:Or(i.selectionOptions,{[i.selectionOptionsIsHidden]:a!==null}),children:Nr("button",{type:"button",tabIndex:a===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>c("insertLink"),children:[Te(Ad,{}),Te("span",{children:"\xA0"}),Te("span",{children:r("insertLink")})]})}),a==="insertLink"&&Te(_d,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:y,onDismiss:()=>{c(null),u.close()}})]})})]},"selection-end")},Zo=class extends gy{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=fy(),this.foundIndex=0,n}match(n){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,s]=this.props.selection;if(o===s)return null;let r=this.foundIndex===0?o:s,i=r>=this.charCount&&r<=this.charCount+n.length?{index:r-this.charCount,length:0,match:"",valid:!0}:null;i&&this.foundIndex++;let l=this.foundIndex===1;return i&&l?this.charCount+=r-this.charCount:this.charCount+=n.length,i?f({isStart:l},i):null}replaceWith(n,o){return o.isStart?Te(xy,{ref:this.startRef}):Te(Sy,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as ky}from"react-redux";import{jsx as Ht,jsxs as Py}from"react/jsx-runtime";var Ry=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:l,source:d})=>{let a=S("TabCompletion",xd),c=T("insertLink"),m=T("showMidSentenceSuggestions"),u=T("inlineSuggestions"),p=yd(l),y=wy(null),g=ky(q);Ty(()=>{pt(l)&&p&&vd(l,p)},[p]);let h=Cy(b=>{if(!s||!n)return b;let R=[Ht("span",{className:a.resetIndent,children:"\u200B"},"u200B"),Ht("span",{"data-testid":"tab-completion",className:Dr(a.tabText,a.resetIndent),"data-source":d,children:n},"tabText")];return o&&R.push(Ht("span",{className:Dr(a.hint,a.resetIndent),children:Ht(ks,{keyCode:"tab"},"tabHint")},"tabHint")),Er(b,R)},[s,n,o]),w=Kd(()=>{let b=[];return c&&b.push(new Zo("selection")),b.push(new Xo("placeholders")),r&&b.push(new Go("keywords")),b},[u,c,r]),E=Kd(()=>{let b=window.getComputedStyle(l);return{"--dd-color":b.color,"--dd-font-size":b.fontSize,"--dd-font-family":b.fontFamily,"--dd-font-variant":b.fontVariant}},[]);return!t||!g?null:Py("div",{ref:b=>{b!=null&&b.parentElement&&(y.current=b==null?void 0:b.parentElement)},className:a.root,style:E,children:[Ht(by,{tagName:"span",containerTagName:"div",className:Dr(a.container,a.agentText),disableLineBreaks:pt(l),content:e||"\u200B",onAfterParse:h,matchers:w,selection:p,keywordMatches:i,inputElement:l,inputStyle:E,boundaryRef:y,inlineSuggestionsOnlyAtEnd:!m}),Ht("br",{})]},"tab-completion")},Iy=t=>{var h,w,E;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=It({input:e}),l=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",a=(h=e.html)!=null?h:Rn(e.text),c=l.indexOf(e.text)===0?l.slice(e.text.length):"",{showTabHint:m}=n,{isSupported:u}=r,{showTabCompletion:p,visible:y,showStyleSuggestions:g}=o;return{showTabHint:m,showStyleSuggestions:g,showTabCompletion:p&&be(t),content:a,tabText:c,source:d,keywordMatches:(E=(w=s.list)==null?void 0:w.keywordMatches)!=null?E:[],enabled:y&&u!==!1}},Ud=Ey(Iy)(Ry);import{Fragment as Jv,useEffect as Jr,useState as Zv}from"react";import{useDispatch as zc,useSelector as J}from"react-redux";import{createAction as Vd,createAsyncThunk as Qo,createSlice as Ay}from"@reduxjs/toolkit";import{Marked as Ly}from"marked";var zd=(t,e)=>{let n=[],o=new Ly,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var On="__summarizerAssistant__",Wd={cues:[],threads:{},pending:[]},jd=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var _r=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Yo=Vd("assistants/callToAction"),De=Qo("assistants/evaluateSummaryAssistant",(t,e)=>v(void 0,null,function*(){try{let o=e.getState().profile.data;if(!o)throw new Error("No Profile is loaded");let{summarizerAssistantNew:s}=o;if(!s)throw new Error("No Summarizer Assistant set in Profile");let r=yield e.dispatch(he(f({assistantCode:s,expectFormat:"text",transcript:"in-memory-transcript",skipState:!0},t)));if(r.error)throw new Error(r.error.message);if(typeof r.payload.output!="string")throw C.warn("Unexpected summary output",r),new Error("Unexpected summary output");return{output:r.payload.output,evaluationId:r.payload.evaluationId}}catch(n){return n instanceof Error?e.rejectWithValue(n.message):e.rejectWithValue("Unknown error")}})),My=1,Dn=Qo("assistants/evaluateKnowledgeAssistantLegacy",(t,e)=>v(void 0,null,function*(){var p,y,g,h;let{threadId:n}=t,{onNewThreadId:o,input:s}=t,{deepdeskAPI:r}=e.extra,i=e.getState(),{platformVariables:l}=i.info;n||(n=My++,o&&o(n));let d=(p=_r(n)(i))!=null?p:[],a=yield r.getKnowledgeAssistant(t.assistantCode),c=(y=i.conversation.current)==null?void 0:y.externalId,m=(h=(g=i.info)==null?void 0:g.agentInfo)==null?void 0:h.agentId;if(!a)throw new Error("KnowledgeAssistant is not found");let u=yield r.knowledgeAssist({customerInstruction:a.customerInstruction,doNotKnowAnswer:a.doNotKnowAnswer,question:s},d,a.code,{agentId:m,conversationId:c});return l&&(u.answer=ne(u.answer,l)),{threadId:n,question:s,answer:u,evaluationId:"??"}})),_n=Qo("assistants/evaluateKnowledgeAssistant",(t,e)=>v(void 0,null,function*(){let{threadId:n}=t,{onNewThreadId:o}=t,{deepdeskAPI:s}=e.extra,r=e.getState(),{platformVariables:i}=r.info;n||(n=(yield s.createAssistantThread({assistantCode:t.assistantCode})).id,o&&o(n)),yield s.postMessageToAssistantThread({assistantCode:t.assistantCode,threadId:n,message:t.input});let l=yield e.dispatch(he(x(f({expectFormat:"json-schema:knowledge-assist",skipState:!0},t),{input:{},threadId:n})));if(l.error)throw new Error(l.error.message);let d=l.payload.output;return{threadId:n,question:t.input,evaluationId:l.payload.evaluationId,answer:{answer:ne(d.response,i!=null?i:{}),sources:d.sources}}})),eM=Vd("assistants/extractedTextSuggestions"),he=Qo("assistants/evaluate",(t,e)=>v(void 0,null,function*(){var p;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},expectFormat:i,threadId:l}=t,d=e.getState(),{platformVariables:a}=d.info,c=(p=d.conversation.current)==null?void 0:p.externalId,m;if(s==="in-memory-transcript"){if(!o.conversationQuery)throw new Error("Can't include in-memory-transcript, setConversationQuery is not defined");m=yield o.conversationQuery()}else Array.isArray(s)&&(m=s);if(t.includeMetadata){if(!d.conversation.current)throw new Error("Can't include metadata, no current conversation");let{metadata:y}=d.conversation.current;Object.assign(r,{metadata:y})}let u=yield n.evaluateAssistant(t.assistantCode,{expectFormat:i,input:r,transcript:m,externalConversationId:c,threadId:l});if(u.evaluationStatus!=="success")return e.rejectWithValue(`Assistant ${t.assistantCode} evaluation failed: ${u.evaluationStatus}`);switch(i){case"text":return{evaluationId:u.evaluationId,output:ne(u.output,a)};case"json-schema:cues":{if(!Array.isArray(u.output))return x(f({},u),{output:[]});let y=u.output.map(h=>x(f({},h),{name:ne(h.name,a),response:ne(h.response,a)})),g=[];return y.forEach(h=>{let w=zd(h.response,"reply");g.push(...w.map(E=>({text:E,type:"text",source:"assistant",assistantCode:h.code,sourceLabel:h.name})))}),g.length>0&&e.dispatch(uo(g)),x(f({},u),{output:y})}case"json-schema:knowledge-assist":{let y=u.output;if(u.output==="")throw new Error("No output from assistant");return{output:y,evaluationId:u.evaluationId,answer:ne(y.response,a)}}default:return u}})),$d=Ay({name:"assistants",initialState:Wd,reducers:{resetCues(t){t.cues=[]},removeCueByCode(t,e){t.cues=t.cues.filter(n=>n.code!==e.payload.code)},removeThreadById(t,e){delete t.threads[e.payload]},receiveChunk(t,e){let{code:n,name:o,payload:s,evaluationId:r}=e.payload,i=t.cues.findIndex(l=>l.code===n);i!==-1?t.cues[i].response+=s.text:t.cues.push({code:n,name:o,evaluationId:r,response:s.text})},userNotification(t,e){let n=t.cues.filter(d=>d.code!==e.payload.code),{code:o,name:s,evaluationId:r,payload:i}=e.payload,{callToAction:l}=i;t.cues=[...n,{code:o,name:s,evaluationId:r,response:i.message,editable:i.editableMessage,callToAction:l&&{label:l.displayName,event:l.onClickEvent,value:l.eventPayload}}]}},extraReducers:t=>{t.addCase(he.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&C.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(he.rejected,(e,n)=>{var s;C.warn((s=n.error)==null?void 0:s.message);let o=e.pending.indexOf(n.meta.arg.assistantCode);o!==-1&&e.pending.splice(o,1)}).addCase(he.fulfilled,(e,n)=>{let o=e.pending.indexOf(n.meta.arg.assistantCode);if(o!==-1&&e.pending.splice(o,1),!n.meta.arg.skipState)switch(n.meta.arg.expectFormat){case"json-schema:cues":{let{evaluationId:s,output:r}=n.payload,i=r.map(a=>a.code),l=e.cues.filter(a=>!i.includes(a.code)),d=r.map(a=>x(f({},a),{evaluationId:s}));e.cues=[...l,...d];break}}}).addCase(_n.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=P(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(Dn.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=P(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(De.pending,e=>{let n={code:On,name:"Summary",response:"",isLoading:!0,evaluationId:""},o=e.cues.filter(s=>s.code!==On);e.cues=[...o,n]}).addCase(De.rejected,e=>{let n=e.cues.filter(o=>o.code!==On);e.cues=n}).addCase(De.fulfilled,(e,n)=>{let o={code:On,name:"Summary",response:n.payload.output,specialType:"summary",evaluationId:n.payload.evaluationId},s=e.cues.filter(r=>r.code!==On);e.cues=[...s,o]}).addCase(W,()=>Wd)}}),{removeCueByCode:es,resetCues:tM,removeThreadById:qd,receiveChunk:Gd,userNotification:Xd}=$d.actions,Jd=$d.reducer;import{createAsyncThunk as Zd,createSlice as Ny}from"@reduxjs/toolkit";var Oy={token:null,interval:null},Fr=Zd("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Hr=Zd("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Fr()),setInterval(()=>o(Fr()),n)}),Qd=Ny({name:"passwordlessToken",initialState:Oy,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Fr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Hr.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:Yd}=Qd.actions,ec=Qd.reducer;import{createSelector as Dy}from"@reduxjs/toolkit";function _y(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var tc=Dy([jd],t=>t.map(n=>({text:n.response,title:n.name,callToAction:n.callToAction,editable:n.editable,isLoading:n.isLoading,specialType:n.specialType,evaluationId:n.evaluationId,rule:{id:_y(n.code),label:n.code,name:n.name,description:n.name}})));import{useEffect as Fy,useState as Hy}from"react";import{useDispatch as By}from"react-redux";import sc from"classnames";import{jsx as nc}from"react/jsx-runtime";var Fn=()=>nc("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:nc("path",{d:"M502.6 70.63l-61.25-61.25C435.4 3.371 427.2 0 418.7 0H255.1c-35.35 0-64 28.66-64 64l.0195 256C192 355.4 220.7 384 256 384h192c35.2 0 64-28.8 64-64V93.25C512 84.77 508.6 76.63 502.6 70.63zM464 320c0 8.836-7.164 16-16 16H255.1c-8.838 0-16-7.164-16-16L239.1 64.13c0-8.836 7.164-16 16-16h128L384 96c0 17.67 14.33 32 32 32h47.1V320zM272 448c0 8.836-7.164 16-16 16H63.1c-8.838 0-16-7.164-16-16L47.98 192.1c0-8.836 7.164-16 16-16H160V128H63.99c-35.35 0-64 28.65-64 64l.0098 256C.002 483.3 28.66 512 64 512h192c35.2 0 64-28.8 64-64v-32h-47.1L272 448z"})});var oc={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as Bt,jsxs as rc}from"react/jsx-runtime";var Ky=({entities:t})=>{let e=S("EntitiesWidgetList",oc),[n,o]=Hy(void 0),s=By(),r=()=>{o(void 0)},i=l=>{t&&(o(t.indexOf(l)),ve(l.text),s(Ue({name:"entity copied",data:{entity:l,type:"copy"}})))};return Fy(()=>{let l=setTimeout(r,500);return()=>{clearTimeout(l)}},[n]),!t||t.length===0?null:Bt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((l,d)=>rc("button",{title:l.text,className:e.entity,type:"button",onClick:()=>i(l),children:[Bt("span",{className:e.entityText,children:l.text}),rc("span",{className:e.iconWrapper,children:[Bt("span",{className:sc(e.icon),children:Bt(Fn,{})}),Bt("span",{className:sc(e.icon,n===d&&e.iconClicked),children:Bt(Fn,{})})]})]},l.text))})},ic=Ky;import{jsx as ac}from"react/jsx-runtime";var lc=()=>ac("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:ac("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useRef as Gy}from"react";import{useSelector as hc}from"react-redux";import{useRef as Uy,useState as Br}from"react";import{useDispatch as zy}from"react-redux";function Hn(t,e){let n=Uy(t);n.current=t;let[o,s]=Br(void 0),[r,i]=Br(void 0),[l,d]=Br("idle"),a=zy();return{error:r,state:l,data:o,call:u=>v(this,null,function*(){d("loading"),yield a(n.current(u)).unwrap().then(p=>{s(p),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(p))}).catch(p=>{i(p),d("error"),e!=null&&e.onError&&(e==null||e.onError(p))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}var dc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var cc={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as Vy}from"react/jsx-runtime";var Wy=({size:t=12})=>{let e=S("LoadingSpinner",cc);return Vy("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},uc=Wy;import{jsx as pc}from"react/jsx-runtime";var mc=()=>pc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:pc("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});import{jsx as gc,jsxs as jy}from"react/jsx-runtime";var fc=t=>jy("svg",x(f({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[gc("title",{id:"checkTitle",children:"Check"}),gc("path",{fill:"#666",d:"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"})]}));var Kr={};Z(Kr,{enUS:()=>$y,nlNL:()=>qy});var $y={error:[{type:0,value:"Something went wrong"}]},qy={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as _e,jsxs as yc}from"react/jsx-runtime";var Xy=3e3,Jy=({assistantOptions:t})=>{let e=S("OnDemandAssistants",dc),n=k(Kr),o=Gy(),s=Hn(he),r=Hn(De),i=hc(za),l=hc(Wa),d=G(),a=l.filter(u=>u.isPinned),c=l.filter(u=>!u.isPinned),m=u=>v(void 0,null,function*(){clearTimeout(o.current),d("trigger on demand assistant",{assistantCode:u}),u===i?yield r.call({transcript:t.transcript}):yield s.call(x(f({},t),{assistantCode:u})),o.current=setTimeout(()=>s.reset(),Xy)});return l.length===0?null:yc("div",{className:e.root,children:[a.map(({assistant:u,assistantName:p,displayName:y})=>_e("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>m(u),children:y||p},u)),c.length>0&&yc(j,{placement:"top-end",children:[_e(j.Trigger,{className:e.trigger,disabled:s.state==="loading",children:_e(Po,{"data-testid":"trigger"})}),_e(j.Content,{className:e.nav,"data-testid":"popover",children:c.map(({assistant:u,assistantName:p,displayName:y})=>_e(j.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>m(u),children:y||p},u))})]}),s.state==="loading"&&_e(uc,{}),s.state==="done"&&_e(fc,{"data-testid":"trigger-done"}),s.state==="error"&&_e(sl,{trigger:_e(mc,{}),children:n("error")})]})},vc=Jy;import{useDispatch as Cv}from"react-redux";import{useRef as Yy}from"react";var xc={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as Qy}from"react/jsx-runtime";var Zy=({width:t})=>{let e=S("LoadingProgressBar",xc);return Qy("div",{className:e.loadingBar,style:{width:t}})},ts=Zy;import{jsx as Kt,jsxs as ev}from"react/jsx-runtime";var ns=({title:t})=>{let e=Yy(null);return Qn(e),Kt(A,{ref:e,children:Kt(O,{children:ev(O.Content,{children:[Kt(O.Title,{children:t}),Kt(ts,{width:"60%"}),Kt(ts,{width:"90%"}),Kt(ts,{width:"50%"})]})})})};var Bn={};Z(Bn,{enUS:()=>tv,nlNL:()=>nv});var tv={useCue:[{type:0,value:"Add to message"}],__summarizerAssistant__:[{type:0,value:"Summary"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},nv={useCue:[{type:0,value:"Voeg toe aan bericht"}],__summarizerAssistant__:[{type:0,value:"Samenvatting"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useEffect as Rc,useRef as hv,useState as yv}from"react";import Wr from"classnames";import{useState as rv}from"react";import{jsx as Sc}from"react/jsx-runtime";var Ur=t=>Sc("svg",x(f({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Sc("path",{fillRule:"evenodd",d:"M6.57086468,14.9173453 C6.38997052,14.9711236 6.19835748,15 6,15 L4,15 C2.8954305,15 2,14.1045695 2,13 L2,4 C2,2.8954305 2.8954305,2 4,2 L6,2 C6.68685475,2 7.29284112,2.34623869 7.65294381,2.87370078 C7.95642355,2.67736738 8.29504785,2.51351337 8.66312366,2.3818197 C9.50544052,2.08044754 10.3408482,1.9879107 10.9989281,1.99971266 C11.0150698,2.00005426 13.3487605,2.00015005 18,2 C20.7551411,2 22,6.05643086 22,12 C22,13.6824804 20.8695981,15 19,15 L15.9269768,15 C15.9359266,15.0245465 15.9451954,15.0497804 15.9547911,15.0757271 C16.007193,15.2174219 16.2391583,15.8256341 16.2970775,15.9810953 C16.4872151,16.4914441 16.6259612,16.9026411 16.7382242,17.3098712 C16.9079007,17.9253665 17,18.4798886 17,19 C17,20.4720069 16.091867,21.3862822 14.748281,21.777514 C14.1422801,21.9539723 13.6147967,22.0000922 13.0076976,22.0000008 L12.5204954,22 L12.2202699,21.6261158 C11.2556275,20.4248034 7.64562469,16.4822788 6.57086468,14.9173453 Z M8,13 C8,13.2401953 8.04443154,13.4528921 8.14171093,13.6800176 C8.40663864,14.2985643 11.914268,18.1371493 13.4599624,19.9848695 C13.7113931,19.9660111 13.9483736,19.9273712 14.1891338,19.8572655 C14.7621788,19.6904035 15,19.4509737 15,19 C15,18.6834183 14.9359344,18.2976852 14.8101464,17.8413935 C14.7161494,17.500423 14.5944107,17.1396301 14.4229225,16.6793379 C14.3689242,16.5344009 14.1358033,15.923159 14.0789589,15.7694517 C13.9489218,15.4178313 13.8632547,15.1589343 13.8046536,14.9236885 C13.5555377,13.9236468 13.8054549,13 15,13 L19,13 C19.6912225,13 20,12.6401099 20,12 C20,7.20925475 19.015127,4 18,4 C15.9322103,4 15.9322103,4 10.9655994,3.99940813 C10.5253746,3.99154158 9.91062406,4.05963657 9.33687634,4.2649175 C8.45196659,4.58152894 8,5.09776992 8,6 L8,13 Z M4,4 L4,13 L6,13 L6,4 L4,4 Z"})}));import{jsx as bc}from"react/jsx-runtime";var Cc=t=>bc("svg",x(f({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:bc("path",{fillRule:"evenodd",d:"M7.65336736,21.1256786 C7.2933164,21.6534897 6.68712411,22 6,22 L4,22 C2.8954305,22 2,21.1045695 2,20 L2,11 C2,9.8954305 2.8954305,9 4,9 L6,9 C6.198171,9 6.38961023,9.02882212 6.57035446,9.08250314 C7.6444817,7.51807482 11.2554748,3.57449216 12.2202699,2.37298955 L12.5204954,1.99910538 L13,1.99910538 C13.6147967,1.99901314 14.1422801,2.04513312 14.748281,2.22159137 C16.091867,2.61282321 17,3.52709845 17,4.99910538 C17,5.51921677 16.9079007,6.07373891 16.7382242,6.68923415 C16.6259612,7.09646424 16.4872151,7.50766133 16.2970775,8.01801005 C16.2391583,8.17347129 16.007193,8.78168345 15.9547911,8.92337824 C15.9451954,8.94932503 15.9359266,8.9745589 15.9269768,8.99910538 L19,8.99910538 C20.8695981,8.99910538 22,10.316625 22,11.9991054 C22,17.9426745 20.7551411,21.9991054 18,21.9991054 L11.0344006,21.9985135 C10.3408482,22.0111947 9.50544052,21.9186578 8.66312366,21.6172857 C8.29521907,21.4856533 7.9567386,21.3218904 7.65336736,21.1256786 Z M8,17.9991054 C8,18.9013355 8.45196659,19.4175764 9.33687634,19.7341879 C9.91062406,19.9394688 10.5253746,20.0075638 10.963066,19.9997143 C10.9703499,19.9995545 10.9703499,19.9995545 11,19.9991054 L18,19.9991054 C19.015127,19.9991054 20,16.7898506 20,11.9991054 C20,11.3589955 19.6912225,10.9991054 19,10.9991054 L15,10.9991054 C13.8054549,10.9991054 13.5555377,10.0754586 13.8046536,9.07541689 C13.8632547,8.84017106 13.9489218,8.5812741 14.0789589,8.22965366 C14.1358033,8.07594642 14.3689242,7.46470447 14.4229225,7.31976744 C14.5944107,6.85947528 14.7161494,6.4986824 14.8101464,6.1577119 C14.9359344,5.70142019 15,5.31568707 15,4.99910538 C15,4.54813166 14.7621788,4.30870189 14.1891338,4.1418399 C13.9483736,4.07173418 13.7113931,4.0330943 13.4599624,4.01423587 C11.914268,5.86195611 8.40663864,9.70054105 8.14171093,10.3190878 C8.04443154,10.5462133 8,10.7589101 8,10.9991054 L8,17.9991054 Z M4,11 L4,20 L6,20 L6,11 L4,11 Z"})}));function Ut(t,e){var s;let n=t.cloneNode(!0);n.style.top=`${t.offsetTop}px`,n.style.left=`${t.offsetLeft}px`,n.style.position="absolute",e.split(" ").forEach(r=>{n.classList.add(r)}),n.addEventListener("animationend",()=>n.remove()),(s=t.parentElement)==null||s.appendChild(n)}var zr={};Z(zr,{enUS:()=>ov,nlNL:()=>sv});var ov={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},sv={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Tc={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as wc}from"react-redux";import{jsx as zt,jsxs as av}from"react/jsx-runtime";var iv=({eventName:t,eventData:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=S("FeedbackThumbs",Tc),i=T("enableFeedbackForm"),l=wc(ye),d=wc(Dt(`/admin/feedback?conversationId=${l}&evaluationId=${n}&type=${o}&text=${s}&data=${JSON.stringify(e)}`)),a=k(zr),c=G(),[m,u]=rv(null),p=g=>{g.stopPropagation(),Ut(g.target,r.fadeup),u("up"),c(t,x(f({},e),{evaluationId:n,rating:"up"}))},y=g=>{g.stopPropagation(),Ut(g.target,r.fadedown),u("down"),c(t,x(f({},e),{evaluationId:n,rating:"down"}))};return av("div",{className:r.thumbs,children:[zt(A.Button,{title:a("thumbsUp"),onClick:p,icon:zt(Cc,{}),className:Wr(r.thumbsUp,m==="up"&&r.selected),disabled:!!m}),i&&d?zt(A.Button,{as:"a",title:a("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:y,icon:zt(Ur,{}),className:Wr(r.thumbsDown,m==="down"&&r.selected),disabled:!!m}):zt(A.Button,{title:a("thumbsDown"),onClick:y,icon:zt(Ur,{}),className:Wr(r.thumbsDown,m==="down"&&r.selected),disabled:!!m})]})},Kn=iv;import lv from"dompurify";import{Fragment as kc,useMemo as dv,useRef as cv,useState as uv}from"react";var Ec={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",arrow:"dd-cv33T",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{marked as pv}from"marked";import{jsx as Un,jsxs as os}from"react/jsx-runtime";function mv(t){return`<button type="button" data-copy-icon class=${t}><svg version="1.1" x="0px" y="0px" viewBox="0 0 115.77 122.88" width="10px" height="10px" fill="black"><g><path d="M89.62,13.96v7.73h12.19h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02v0.02 v73.27v0.01h-0.02c-0.01,3.84-1.57,7.33-4.1,9.86c-2.51,2.5-5.98,4.06-9.82,4.07v0.02h-0.02h-61.7H40.1v-0.02 c-3.84-0.01-7.34-1.57-9.86-4.1c-2.5-2.51-4.06-5.98-4.07-9.82h-0.02v-0.02V92.51H13.96h-0.01v-0.02c-3.84-0.01-7.34-1.57-9.86-4.1 c-2.5-2.51-4.06-5.98-4.07-9.82H0v-0.02V13.96v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07V0h0.02h61.7 h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02V13.96L89.62,13.96z M79.04,21.69v-7.73v-0.02h0.02 c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v64.59v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h12.19V35.65 v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02 h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02 v0.02c0.91,0,1.75-0.39,2.37-1.01c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z"/></g></svg></button>`}function Vr(t){var n,o;let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(s=>s.remove()),(o=(n=e.textContent)==null?void 0:n.trim())!=null?o:""}function gv(t){return t.replace(/\r\n/g,`
8
8
  `)}var fv=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=S("Markdown",Ec),i=cv(null),[l,d]=uv(null),a=dv(()=>{let g=pv.parse(gv(t));return lv.sanitize(g.toString()).replaceAll("</code>",`${mv(r.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),c=g=>{var E;let h=g.target,w=!!((E=i.current)!=null&&E.querySelector("code"));if(["A","BUTTON"].includes(h.tagName)){d(null);return}l||w&&h.tagName!=="CODE"||!w&&h!==i.current||(h.addEventListener("mouseleave",()=>d(null),{once:!0}),d(h))},m=()=>{if(!l)return;d(null);let g=l.querySelector("button");g&&(Ut(g,r.fadeup),o==null||o(Vr(l)))},u=g=>{let h=g.target;if(h.tagName==="A"){g.stopPropagation();return}"copyIcon"in h.dataset&&(Ut(h,r.fadeup),o==null||o(Vr(h.parentElement)))},p=()=>{!l||!s||(d(null),s(Vr(l)))},y=g=>{if(g===null)return;let h=g.getBoundingClientRect();h.left<0?g.style.transform=`translateX(${-h.left+2}px)`:h.right>window.innerWidth&&(g.style.transform=`translateX(${window.innerWidth-h.right-2}px)`)};return os(kc,{children:[l&&(o||s)&&os(Ft,{triggerRef:{current:l},className:r.popover,parentNode:l,children:[os("div",{className:r.options,ref:y,children:[o&&Un("button",{type:"button",className:r.option,onClick:m,children:n}),s&&os(kc,{children:[Un("div",{className:r.divider}),Un("button",{type:"button",className:r.option,onClick:p,children:e})]})]}),Un("div",{className:r.arrow})]}),Un("div",{ref:i,"data-testid":"widget-markdown-content",className:r.root,dangerouslySetInnerHTML:{__html:a},onMouseOver:c,onClick:u})]})},gt=fv;var jr={title:"dd-YBHrC",fadeup:"dd-cRM0K",fadedown:"dd-7D4Pq",selected:"dd-bueui",actions:"dd-9Iqn9",thumbsUp:"dd-6QwVx",thumbsDown:"dd-d3E8l",form:"dd-sPNU2",formInput:"dd-F3E4I",formSubmit:"dd-vw5S0",actionButton:"dd-cCWyJ",editableCue:"dd-nWSD-",inputSpace:"dd-DGYB1"};import{jsx as we,jsxs as ss}from"react/jsx-runtime";var vv=500,xv=100,Sv=({content:t,onChange:e,onCopy:n})=>{let o=hv(null),s=S("WidgetCue",jr);return Rc(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,xv),vv);r.style.setProperty("height",`${i}px`)},[t]),we("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},bv=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s})=>{var g;let r=S("WidgetCue",jr),i=k(Bn),l=G(),d=T("hasKeyboardInput"),[a,c]=yv(t.text),m=()=>{e&&e(a,t),n(t)},u=h=>{o&&o(h,t)},p=h=>{s&&s(h,t)},y=h=>{h.preventDefault(),h.stopPropagation(),n(t)};return Rc(()=>{l("Assistant response displayed",{evaluationId:t.evaluationId,name:t.rule.name,description:t.rule.description,group:t.rule.label,cueText:t.text})},[]),ss(A,{"data-testid":"cue",children:[we(O,{children:ss(O.Content,{children:[t.title&&we(O.Title,{className:r.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?i(t.rule.label):t.title}),t.specialType==="summary"||t.editable?we(Sv,{content:a,onCopy:()=>{let h=document.getSelection();h&&u(h.toString())},onChange:h=>{var w;return c((w=h.target.value)!=null?w:"")}}):we(gt,{content:t.text,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:u,onUse:d?p:void 0})]})}),ss(A.ButtonsContainer,{children:[ss("div",{className:r.actions,children:[(t.specialType==="summary"||t.editable)&&we(A.Button,{onClick:()=>u(a),children:i("copyCue")}),t.callToAction&&we(A.Button,{onClick:m,children:t.callToAction.label}),we(A.Button,{onClick:y,children:i("removeCue")})]}),t.specialType==="summary"?we(Kn,{eventName:"summary feedback",evaluationId:t.evaluationId,feedbackText:(g=t.text)!=null?g:"",feedbackType:"summary",eventData:{summary:t.text}}):we(Kn,{eventName:"Assistant response feedback",evaluationId:t.evaluationId,eventData:{name:t.rule.name,group:t.rule.label,description:t.rule.description,cueText:t.text},feedbackText:t.text,feedbackType:"assistant"})]})]})},Ic=bv;import{Fragment as wv,jsx as $r}from"react/jsx-runtime";var Tv=({cues:t})=>{let e=Cv(),n=oe(),o=k(Bn),s=G(),r=a=>{e(es({code:a.rule.label})),s("Assistant response closed",{evaluationId:a.evaluationId,name:a.rule.name,group:a.rule.label,description:a.rule.description,cueText:a.text})},i=(a,c)=>{switch(ve(a),c.specialType){case"summary":s("summary copied to clipboard",{originalText:c.text,finalText:a,assistant:c.rule.label});break;default:s("Assistant response copied",{evaluationId:c.evaluationId,name:c.rule.name,group:c.rule.label,description:c.rule.description,copiedText:a,originalText:c.text})}},l=(a,c)=>{var m;c.callToAction&&(e(Yo(c)),s("Assistant call to action",{evaluationId:c.evaluationId,name:c.rule.name,group:c.rule.label,description:c.rule.description,eventName:c.callToAction.event,value:(m=c.callToAction.value)!=null?m:a,originalText:c.text}))},d=(a,c)=>{var m;n.send(Le,{text:a,suggestion:{source:"assistant",assistantCode:(m=c.rule)==null?void 0:m.label,sourceText:a}}),s("Assistant response used",{evaluationId:c.evaluationId,name:c.rule.name,group:c.rule.label,description:c.rule.description,usedText:a,originalText:c.text})};return $r(wv,{children:t.map(a=>a.isLoading?$r(ns,{title:a.rule.label.startsWith("__")?o(a.rule.label):a.title},a.rule.id):$r(Ic,{cue:a,onCallToAction:l,onRemove:r,onCopy:i,onUse:d},a.evaluationId))})},Pc=Tv;import{Fragment as Ev,useEffect as kv}from"react";var Lc={root:"dd-cvTAY",label:"dd-QWQxD",value:"dd-WSUHF",copyButton:"dd-67o9H",copyButtonText:"dd-oos-l",isTrue:"dd--1g2O",isFalse:"dd-sz2ir"};import{jsx as ft,jsxs as Ac}from"react/jsx-runtime";function Rv(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Mc=({data:t,schema:e})=>{let n=S("WidgetCustomData",Lc),o=s=>{ve(s)};return kv(()=>{C.info("Custom data",t,e)},[t]),ft("dl",{className:n.root,children:e.map(s=>{let r=Rv(t,s.path);return Ac(Ev,{children:[ft("dt",{className:n.label,children:s.label}),ft("dd",{className:n.value,children:s.type==="boolean"&&r?ft("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?ft("span",{className:n.isFalse,children:s.falseValue}):typeof r=="string"||typeof r=="number"?Ac("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[ft("span",{className:n.copyButtonText,children:r}),ft(Fn,{})]}):"-"})]},s.label)})})};import{createContext as Ov,Fragment as Dv,useContext as Gr,useEffect as _v,useRef as _c,useState as ht}from"react";import{useDispatch as Fv,useSelector as Hv}from"react-redux";var Wt={};Z(Wt,{enUS:()=>Iv,nlNL:()=>Pv});var Iv={inputPlaceholder:[{type:0,value:"What is your question?"}],useCue:[{type:0,value:"Add to message"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Submit"}],resetLabel:[{type:0,value:"Reset"}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},Pv={inputPlaceholder:[{type:0,value:"Wat is je vraag?"}],useCue:[{type:0,value:"Voeg toe aan bericht"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Verzend"}],resetLabel:[{type:0,value:"Gesprek wissen"}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};var rs={form:"dd-pleCH",formInput:"dd-pGJMY",formSubmit:"dd--gkRg",actionButton:"dd-I2NEH",resetContainer:"dd-qKIDX",sources:"dd-xf9c6",source:"dd-a-vyX",tooltip:"dd-EsgcZ",linkContent:"dd-gARDA",showMoreSources:"dd-uDGi-"};import{useRef as Mv}from"react";var Nc={error:"dd-CoAuB"};var qr={};Z(qr,{enUS:()=>Lv,nlNL:()=>Av});var Lv={errorPrefix:[{type:0,value:"Error:"}]},Av={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as Oc,jsxs as Nv}from"react/jsx-runtime";var Dc=({message:t})=>{let e=Mv(null),n=S("WidgetCardError",Nc),o=k(qr);return Qn(e),Oc(A,{ref:e,children:Oc(O,{children:Nv(O.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as H,jsxs as Fe}from"react/jsx-runtime";var Bv=3,Kv=({sources:t,onClick:e})=>{let n=k(Wt),o=S("WidgetKnowledgeAssistant",rs),[s,r]=ht(!1),i=s?t:t.slice(0,Bv);return i.length===0?null:Fe("ul",{className:o.sources,children:[i.map(l=>H("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Fe(j,{tooltip:!0,placement:"top-start",children:[H(j.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:l.url,onClick:d=>{d.stopPropagation(),e(l)},children:H("span",{className:o.linkContent,children:l.name})}),l.url&&H(j.Content,{className:o.tooltip,children:decodeURIComponent(l.url)})]})},l.name)),i<t&&H("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},Uv=({title:t,description:e})=>H(A,{"data-testid":"knowledge-assist-empty-state",children:H(O,{children:Fe(O.Content,{children:[H(O.Title,{children:t}),H(gt,{content:e})]})})}),zv=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=k(Wt),l=Gr(is);return Fe(A,{"data-testid":"knowledge-assist-answer",ref:t,children:[H(O,{children:Fe(O.Content,{children:[H(O.Title,{children:e.question}),H(gt,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),H(Kv,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),Fe(A.ButtonsContainer,{children:[H("div",{}),H(Kn,{evaluationId:e.evaluationId,eventName:"Assistant response feedback",feedbackType:"assistant",eventData:{group:l.assistantCode,cueText:e.answer.answer},feedbackText:e.answer.answer})]})]})},is=Ov(null),as=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,children:o})=>{let[s,r]=ht(null),[i,l]=ht(!1),[d,a]=ht(null),[c,m]=ht(!!n),[u,p]=ht(null),y=Fv(),g=G(),h=Hn(b=>{if(!t)throw new Error("No knowledge assistant was defined");return a(null),e({assistantCode:t,input:b,threadId:s,onNewThreadId(R){r(R)}})},{onSuccess(b){var R;g("Assistant response displayed",{evaluationId:b.evaluationId,group:t,cueText:b.answer.answer,input:b.question,sources:(R=b.answer.sources)!=null?R:[]}),m(!1)},onError(b){var R;a((R=b.message)!=null?R:"Unknown error")}}),w=b=>v(void 0,null,function*(){l(!0),p(b),yield h.call(b),l(!1),p(null)}),E={isEnabled:!!t,assistantCode:t,isSubmitting:i,threadId:s,pendingInput:u,errorMessage:d,onSubmit:w,onReset(){s&&y(qd(s)),a(null),r(null),t&&g("Assistant thread reset",{threadId:s!=null?s:void 0,assistantCode:t})}};return _v(()=>{n&&E.isEnabled&&w(n)},[n]),H(is.Provider,{value:E,children:o})},ls=()=>{let t=k(Wt),e=S("WidgetKnowledgeAssistant",rs),n=Gr(is),o=_c(null),[s,r]=ht(""),i=d=>{r(d.target.value)},l=d=>{d.preventDefault(),n.onSubmit(s).then(()=>{var a;o.current&&((a=o.current)==null||a.focus(),r(""))})};return n.isEnabled?Fe("form",{className:e.form,onSubmit:l,children:[H("input",{ref:o,className:e.formInput,placeholder:t("inputPlaceholder"),type:"text",disabled:n.isSubmitting,value:s,onChange:i}),H("button",{type:"submit",disabled:n.isSubmitting||s==="",className:e.formSubmit,children:t("submitLabel")})]}):null},ds=({title:t,emptyState:e})=>{var y,g;let n=k(Wt),o=G(),s=S("WidgetKnowledgeAssistant",rs),r=_c(null),i=Gr(is),l=(g=Hv(_r((y=i.threadId)!=null?y:-1)))!=null?g:[],d=T("hasKeyboardInput"),a=oe(),c=(h,w)=>{ve(h),i.assistantCode&&o("Assistant response copied",{group:i.assistantCode,copiedText:h,originalText:h,evaluationId:w.evaluationId})},m=(h,w)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:w.evaluationId,assistantCode:i.assistantCode,source:h})},u=h=>{h.preventDefault(),i.onReset()},p=(h,w)=>{a.send(Le,{text:h,suggestion:{source:"assistant",sourceText:h}}),i.assistantCode&&o("Assistant response used",{group:i.assistantCode,usedText:h,originalText:h,evaluationId:w.evaluationId})};return!i.isEnabled||(l==null?void 0:l.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Fe(Dv,{children:[H(Ie,{type:"knowledge",title:t,"data-testid":"knowledge",children:Fe(te,{withDivider:!0,children:[e&&l.length===0&&!i.pendingInput&&H(Uv,f({},e)),l.map((h,w)=>H(zv,{innerRef:w===l.length-1?r:void 0,item:h,hasKeyboardInput:d,onCopy:E=>c(E,h),onUse:E=>p(E,h),onSourceClick:E=>m(E,h)},`${h.question}_${h.answer}_${w}`)),i.pendingInput&&H(ns,{title:i.pendingInput}),i.errorMessage&&H(Dc,{message:i.errorMessage})]})}),l.length>0&&H("div",{className:s.resetContainer,children:H(A.Button,{disabled:i.threadId===null||i.isSubmitting,onClick:u,children:n("resetLabel")})})]})};import{useCallback as Vv}from"react";var Wv=/(https?:\/\/[^\s]+)/,Hc=t=>t.split(" ").find(e=>Wv.test(e));import{jsx as Vt,jsxs as cs}from"react/jsx-runtime";var jv=({suggestion:t,lines:e,onUse:n})=>{var m;let o=t.text||t.url||t.message,s=Hc(o),r=k(In),i=T("showImages"),l=T("fallbackImage"),d=T("hasKeyboardInput"),a=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=Vv(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return cs(A,{onClick:d?a:void 0,"data-testid":"edit-suggestion",children:[cs(O,{children:[i&&t.image&&Vt(O.Image,{src:Jo(t,"small",l||void 0),title:t.title}),cs(O.Content,{children:[t.title&&Vt(O.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((m=t.searchKeywords)==null?void 0:m.length)>0&&Vt(A.Labels,{labels:t.searchKeywords}),Vt(O.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),cs(A.Actions,{children:[s&&Vt(A.ActionButton,{onClick:c,label:r("visitUrl")}),d&&Vt(A.ActionButton,{primary:!0,onClick:a,label:r("useSuggestion")})]})]})},Bc=jv;import{Fragment as qv,jsx as Kc}from"react/jsx-runtime";var $v=({lines:t,suggestions:e})=>{let n=oe(),o=(s,r)=>{n.send(Le,{text:s,suggestion:x(f({},r),{source:r.source,sourceText:r.text})})};return Kc(qv,{children:e.map(s=>Kc(Bc,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},Uc=$v;var zn={};Z(zn,{enUS:()=>Gv,nlNL:()=>Xv});var Gv={waiting:[{type:0,value:"Loading\u2026"}],waitingForConversation:[{type:0,value:"Waiting for conversation\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"My "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}],close:[{type:0,value:"Close"}]},Xv={waiting:[{type:0,value:"Laden\u2026"}],waitingForConversation:[{type:0,value:"Wachten op gesprek\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}],close:[{type:0,value:"Sluiten"}]};var jt={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",footer:"dd-tvofr",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",footerShortcut:"dd-dH7XJ",link:"dd-DRo0x"};import{jsx as I,jsxs as Wn}from"react/jsx-runtime";var Wc=(t,e)=>{let n=J(q);Jr(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Qv=({onLogIn:t})=>{let e=S("Widget",jt),n=T("isEmbedded"),o=T("adminUrl");return I("div",{className:e.loginText,children:I("div",{children:I(zo,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},Xr=({text:t})=>{let e=S("Widget",jt);return I("div",{className:e.stateText,children:I("div",{children:I("p",{children:t})})},"notification")},Yv=()=>{let t=k(zn),e=zc(),n=S("Widget",jt),o=T("showSearch"),s=T("isEmbedded"),r=J(Dt("/admin/")),i=oe(),l=T("productName"),d=G();return Wc(()=>{if(s)return e(Hr()),()=>{e(Yd())}},[e,s]),!o&&!r?null:Wn("div",{className:n.shortcutList,children:[o&&I(A.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:I(Nt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&I(A.Button,{as:"a",target:"_blank",icon:I(lc,{}),href:r,"data-testid":"shortcut-studio-login","aria-label":t("linkStudioLogin",{productName:l}),className:n.shortcut,rel:"noreferrer",onClick:()=>{d("open my deepdesk",{via:"widget-shortcut"})},children:t("linkStudioLogin",{productName:l})})]})},ex=({title:t,content:e})=>{let n=k(zn),[o,s]=Zv(!0);return o?I(Ie,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:I(te,{withDivider:!0,children:Wn(A,{children:[I(O,{children:I(O.Content,{children:I(gt,{content:e})})}),I(A.ButtonsContainer,{children:I(A.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},tx=()=>{let t=zc(),e=J(En),n=J(ja),o=J(tc),s=J(ca),r=J(Io),i=J(No),l=J(st),d=J(ye);return Jr(()=>{!!s&&!n&&C.warn("Custom data provided, but no schema.")},[s,n]),Wc(()=>{e.forEach(({type:a})=>{a==="entities"?t(ge()):eo.includes(a)||t(fe(a))})},[t,d,l]),Jr(()=>{o.length>0&&!e.some(a=>a.type==="cues")&&C.warn("Received cues, but cues are not configured in widget.")},[e,o]),I(Jv,{children:e.map(({type:a,title:c,amount:m,lines:u,schema:p,property:y})=>{var g,h;switch(a){case"entities":return r&&r.length>0&&I(Ie,{type:a,title:c,"data-testid":`type-${a}`,children:I(ic,{entities:r})},a);case"cues":return o&&o.length>0&&I(Ie,{type:a,title:c,"data-testid":`type-${a}`,children:I(te,{withDivider:!0,children:I(Pc,{cues:o})})},a);case"custom-data-banner":return s&&y&&s[y]&&I(ex,{title:c,content:String(s[y])},a);case"custom-data":return s&&p&&I(Ie,{type:a,title:c,"data-testid":`type-${a}`,children:I(te,{withDivider:!0,children:I(Mc,{data:s,schema:p})})},a);default:return((h=(g=i[a])==null?void 0:g.suggestions)==null?void 0:h.length)>0&&I(Ie,{type:a,title:c,"data-testid":`type-${a}`,children:I(te,{withDivider:!0,children:I(Uc,{lines:u,contentType:a,suggestions:i[a].suggestions.slice(0,m)||[]})})},a)}})})},Zr=({children:t})=>{let e=S("Widget",jt);return I("div",{className:e.footer,children:t})},Qr=({children:t})=>{let e=S("Widget",jt);return I("div",{className:e.root,"data-testid":"widget",children:t})},nx=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript",expectFormat:"json-schema:cues"}})=>{var m;let o=k(zn),s=J(kt),r=J(q),i=J(qi),l=J(st),d=J(Va("knowledge-assist")),a=J($a),c=J(qa);return s===!1?I(Xr,{text:o("notSupported")}):r===!1?I(Qv,{onLogIn:t}):r===null?I(Xr,{text:o("waiting")}):!i||!l?I(Xr,{text:o("waitingForConversation")}):I(Qr,{children:Wn(as,{initialQuestion:e.initialQuestion,assistantCode:(m=a!=null?a:c)!=null?m:void 0,evaluateKnowledgeAssistFn:c?Dn:_n,children:[Wn(tn,{children:[I(Yv,{}),I(tx,{}),d&&I(ds,{title:d.title,emptyState:e.emptyState})]}),Wn(Zr,{children:[d&&I(ls,{}),I(vc,{assistantOptions:n})]})]})})},Vc=nx;function jn(t){let e=new Range;return e.selectNodeContents(t),e}function jc(t,e,n){try{return yt(t,e,n),!0}catch(o){return!1}}function us(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function ps(t){return"tagName"in t&&t.tagName==="BR"}var Vn=/[\u200B-\u200D\uFEFF]/g;function yt(t,e,n){let o=new Range;if(t.firstChild===null&&e===0&&n===0)return o.selectNodeContents(t),o;let s=0,r=!1;function i(d,a){let c=-1,m=/[\u200B-\u200D\uFEFF]/;if(!m.test(d))return a;for(let u=0;u<=d.length;u++)if(m.test(d[u])||c++,c===a)return u;throw new Error("Offset out of range")}function l(d){switch(d.nodeType){case Node.TEXT_NODE:{let a=d.textContent,c=a.replace(Vn,""),m=s+c.length,u=e>=s&&e<=m,p=n>=s&&n<=m;if(u){let y=i(a,e-s);y===0&&!p?o.setStartBefore(d):o.setStart(d,y)}p&&(o.setEnd(d,i(a,n-s)),r=!0),s=m;break}case Node.ELEMENT_NODE:{if(ps(d)&&(s===e&&o.setStartBefore(d),s++,s===n)){o.setEndAfter(d),r=!0;return}for(let c=0;c<d.childNodes.length&&(l(d.childNodes[c]),!r);c++);let a=d.lastChild;us(d)&&a&&!us(a)&&!ps(a)&&s++;break}default:break}}if(l(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function ms(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:n,startOffset:o,endContainer:s,endOffset:r,collapsed:i}=e,l,d,a=0;function c(m){let u=m===t,p=m===n,y=m===s;switch(m.nodeType){case Node.TEXT_NODE:{let g=m.textContent;p&&(l=a+g.substring(0,o).replace(Vn,"").length),y&&(d=a+g.substring(0,r).replace(Vn,"").length),a+=g.replace(Vn,"").length;break}case Node.ELEMENT_NODE:{if(ps(m)&&m.nextSibling){a++;break}!u&&us(m)&&m.previousSibling&&a++;for(let g=0;g<m.childNodes.length;g++){let h=p&&g===o,w=y&&g===r;if(h&&(l=a),w&&(d=a),d!==void 0||((!h||!i)&&c(m.childNodes[g]),y&&g===r-1&&(d=a),d!==void 0))break}y&&(d=a);break}default:break}}if(c(t),d===void 0)throw new Error("Could not determine start and end");return{start:l!=null?l:d,end:d}}function gs(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:n,startOffset:o,endContainer:s,endOffset:r,collapsed:i}=e,l=0,d="";function a(c){let m=c===t,u=c===n,p=c===s;switch(u&&(l=1),c.nodeType){case Node.TEXT_NODE:{if(l!==1)return;let y=u?o:0,g=p?r:void 0;d+=c.textContent.replace(Vn,"").substring(y,g);break}case Node.ELEMENT_NODE:{if(!i&&l===1&&ps(c)&&c.nextSibling){d+=`
9
9
  `;break}!m&&!i&&l===1&&us(c)&&c.previousSibling&&(d+=`
10
- `);let y=u?o:0,g=p?Math.min(r,c.childNodes.length):c.childNodes.length;for(let h=y;h<g&&(a(c.childNodes[h]),l!==2);h++);break}default:break}p&&(l=2)}return a(t),d}var $c=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))($c||{}),qe=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedHTML=this.getHTML(),this.cachedSelection=this.getSelection(),this.listen()}addEventListener(e,n){let o=s=>{n(s)};this.element.addEventListener(e,o),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,o)})}removeEventListener(e,n){this.element.removeEventListener(e,n)}handleInteraction(){let e=this.getText(),n=this.getHTML(),o=this.getSelection(),s=this.cachedCaretPosition===null;if(!this.isActive||(e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit"),e!==this.cachedText?(this.cachedText=e,this.cachedHTML=n,s=!0,this.emit("change",{plainText:e,rawHTML:n})):n!==null&&n!==this.cachedHTML&&(this.cachedHTML=n,s=!0,this.emit("change",{plainText:e,rawHTML:n})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,s=!0,this.emit("selection",o)),!s))return;let r=this.getCaretPosition();Ke(r,this.cachedCaretPosition)||(this.cachedCaretPosition=r,this.emit("caretposition",r))}handleClick(){this.handleInteraction()}handleFocus(){let e=!this.isFocused;this.isFocused=!0,e&&this.emit("focus"),this.handleInteraction()}handleBlur(){this.isPossibleClearInputAction=!1;let e=this.isFocused;this.isFocused=!1,e&&this.emit("blur")}handleKeyDown(e){let{key:n,ctrlKey:o,metaKey:s}=e;this.isPossibleClearInputAction=Object.values($c).includes(n)||n.toLowerCase()==="z"&&(o||s),this.emit("keydown",e)}handleKeyUp(e){this.handleInteraction(),this.emit("keyup",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var o,s;let n=((o=e.clipboardData)==null?void 0:o.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:n,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.handleInteraction()),this.addEventListener("change",()=>this.handleInteraction()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",n=>this.handlePaste(n)),this.addEventListener("click",()=>this.handleInteraction()),document.activeElement===this.element&&(this.isFocused=!0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()})}focus(){this.element.focus()}emit(e,...n){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(o=>{o(...n)})}on(e,n){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n))}off(e,n){if(!this.eventListeners[e])return;let o=this.eventListeners[e].indexOf(n);o!==-1&&this.eventListeners[e].splice(o,1)}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.handleInteraction()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};function qc(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var $t=class extends qe{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),gs(this.element,n)}getHTML(){return this.element.innerHTML||""}getRange(){var i;let n=this.getRootNode();if(n.activeElement!==this.element)return null;let o="getSelection"in n?n.getSelection():window.getSelection();if(!o)return null;let s="getComposedRanges"in o&&n instanceof ShadowRoot?(i=o.getComposedRanges(n))==null?void 0:i[0]:o.rangeCount>0?o.getRangeAt(0):null;if(!s)return null;let r=this.element.ownerDocument.createRange();return r.setStart(s==null?void 0:s.startContainer,s==null?void 0:s.startOffset),r.setEnd(s==null?void 0:s.endContainer,s==null?void 0:s.endOffset),!r||!this.element.contains(r.startContainer)||!this.element.contains(r.endContainer)?null:r}getCaretPosition(){let n=this.getRange();if(!n||!n.collapsed||!("getBoundingClientRect"in n))return null;let o=n.getBoundingClientRect();return!qc(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!qc(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return ms(this.element,n);let o=this.lastKnownSelection;if(o&&jc(this.element,o.start,o.end))return o;let s=jn(this.element);return s.collapse(!1),ms(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return gs(this.element,yt(this.element,n,o))}listen(){super.listen();let n=new MutationObserver(r=>{var i,l;r.length===2&&r[0].addedNodes.length===1&&((i=r[0].addedNodes[0])==null?void 0:i.textContent)==="\u2060"&&((l=r[1].removedNodes[0])==null?void 0:l.textContent)==="\u2060"||setTimeout(()=>{this.handleInteraction()},0)});n.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),this.disposeHandlers.push(()=>n.disconnect());let o=this.element.isContentEditable,s=new MutationObserver(()=>{this.element.isContentEditable!==o&&(o=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>s.disconnect())}};var ox=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize"];function Gc(t,e){let n="mozInnerScreenX"in window,o=document.createElement("div");o.id="input-textarea-caret-position-mirror-div";let s=o.style,r=window.getComputedStyle(t),i=t.ownerDocument.body;s.whiteSpace="pre-wrap",s.wordWrap="break-word",s.position="absolute",s.visibility="hidden",ox.forEach(c=>{s[c]=r[c]}),n?t.scrollHeight>Number.parseInt(r.height)&&(s.overflowY="scroll"):s.overflow="hidden",o.textContent=t.value.substring(0,e);let l=document.createElement("span");l.textContent=t.value.substring(e)||".",o.appendChild(l),i.appendChild(o);let d=t.getBoundingClientRect(),a={top:d.top-t.scrollTop+l.offsetTop+Number.parseInt(r.borderTopWidth)+l.offsetHeight,left:d.left-t.scrollLeft+l.offsetLeft+Number.parseInt(r.borderLeftWidth)};return i.removeChild(o),a}var qt=class extends qe{constructor(){super(...arguments);this.lastKnownSelection=null}getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:n,selectionEnd:o}=this.element;return{start:n,end:o}}getSelectedText(){let n=this.getSelection();return n?this.getText().slice(n.start,n.end):""}getCaretPosition(){return Gc(this.element,this.element.selectionEnd)}listen(){super.listen();let n=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var r;return(r=n==null?void 0:n.get)==null?void 0:r.call(this.element)},set:r=>{var i;(i=n==null?void 0:n.set)==null||i.call(this.element,r),this.handleInteraction()}}),this.addEventListener("scroll",()=>{this.emit("caretposition",this.getCaretPosition())});let o=this.element.disabled,s=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>s.disconnect())}};function Xc(t,e,n){let o=`deepdesk-iframe-${t}`,s=document.getElementById(o);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(n).forEach(([l,d])=>{i.searchParams.append(l,d)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=o,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}function sx(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var Yr=class{constructor(e){this.name=e;this.disposeHandlers=[];this.broadcastChannel=new BroadcastChannel(e)}onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},ei=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=Xc(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var n;(n=this.iframe.contentWindow)==null||n.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(n=>n()),(e=this.iframe)==null||e.remove()}},ti=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.externalId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setExternalId(e){this.externalId!==e&&(this.cleanup(),C.info("Set externalId",e),this.externalId=e,this.channel=this.createChannel(e))}createChannel(e){let n=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new ei(e,this.deepdeskUrl,{debug:!0}):new Yr(e),o=s=>{var i,l;if(s.origin!==this.deepdeskUrl)return;let r=sx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(C.info("Received broadcast event",this.externalId,s),(l=(i=this.eventMap)[r.name])==null||l.call(i,r.payload))};return n.onMessage(o),n}send(e,n,o){var i,l;C.info("Broadcast event",{externalId:this.externalId,name:e,payload:n});let s={type:"event",name:e,payload:n};o!==!1&&((l=(i=this.eventMap)[e])==null||l.call(i,n));let r=this.externalId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage(x(f({},s),{channel:this.externalId}))}cleanup(e=!1){var n,o;(n=this.channel)==null||n.close(),this.channel=void 0,e&&((o=this.defaultChannel)==null||o.close(),this.defaultChannel=void 0)}},Jc=ti;function rx(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function F(t){return Array.isArray(t)?t.map(F):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(f({},e),{[rx(n)]:F(t[n])}),{}):t}function ix(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function Y(t){return Array.isArray(t)?t.map(Y):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(f({},e),{[ix(n)]:Y(t[n])}),{}):t}var Gt=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var ni=t=>new Promise(e=>{setTimeout(e,t)});var Xt=class extends Gt{constructor(){super(...arguments);this.name="ClientError"}},si=class extends Gt{constructor(){super(...arguments);this.name="ServerError"}},oi=new Map;function ax(t){return v(this,null,function*(){if(t.status===204)return t.text().catch(()=>{}),null;let e=t.headers.get("content-type");if(e!=null&&e.includes("application/json"))return t.json();let n=yield t.text();return n===""?null:(C.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var Ge=class Ge{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};var o;this.fetch=(o=n.fetch)!=null?o:window.fetch.bind(window)}patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,l=this.fetch,d=n.method===void 0||n.method.toLowerCase()==="get",D=n,{useCache:a=!1,abortLatest:c=!1,attempts:m=1,retryDelay:u=500,refreshTokenOn401:p=!0,retryOnError:y=_=>_ instanceof TypeError,retryOnResponse:g=_=>_.status>=500,version:h=null}=D,w=P(D,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(a){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(oi.has(i)){o(oi.get(i));return}}let E=x(f({credentials:"include"},w),{headers:f({Accept:"application/json","Content-Type":"application/json"},w.headers)});!d&&this.csrfToken&&(E.headers=x(f({},E.headers),{"X-CSRFToken":this.csrfToken})),typeof h=="string"&&(E.headers=x(f({},E.headers),{"X-Deepdesk-API-Version":h}));let b=m,R=!1;if(!l)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&c&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let N=()=>v(this,null,function*(){return b--,l(i,E).then(_=>v(this,null,function*(){return g(_)&&!r.isAborted&&b>0?(yield ni(u),N()):_.status===401&&p===!0&&R===!1?(R=!0,yield this.refreshToken(),N()):_})).catch(_=>v(this,null,function*(){if(y(_)&&!r.isAborted&&b>0)return yield ni(u),N();throw _}))});N().then(_=>v(this,null,function*(){let K=yield ax(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new si("Server Error",K));return}if(_.status===401){s(new Xt("Unauthorized",K));return}if(_.status===403){s(new Xt("Forbidden",K));return}if(_.status===404){s(new Xt("Not Found",K));return}if(_.status>=400){s(new Xt("Bad Request",K));return}a&&oi.set(i,K),o(K)})).catch(_=>{s(_)})})}validateToken(){return v(this,null,function*(){let{has_valid_access_token:e,is_logged_in:n}=yield this.get("/apis/admin/session/validate/");if(!e)try{yield this.refreshToken();let{is_logged_in:o}=yield this.get("/apis/admin/session/validate/");return o}catch(o){return!1}return n})}refreshToken(){return Ge.refreshingToken||(Ge.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{Ge.refreshingToken=null},1e3*60)})),Ge.refreshingToken}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,f({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,f({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,f({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,f({method:"DELETE"},n))}};Ge.refreshingToken=null;var Jt=Ge;var Zc;(e=>{let t;(l=>(l.SUCCESS="success",l.FAILURE="failure",l.CONDITIONS_NOT_MET="conditions_not_met",l.MAX_RECURSION_LEVEL="max_recursion_level",l.NO_ACCESS_TO_ASSISTANT="no_access_to_assistant"))(t=e.EvaluationStatus||(e.EvaluationStatus={}))})(Zc||(Zc={}));function ri(t){return x(f({},F(t)),{metadata:t.metadata})}var vt=class vt{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new Jt(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>v(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return v(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(vt.exchangeTokenPromise||(vt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),vt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),C.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",x(f({chat_start_time:new Date().toISOString()},Y(e)),{metadata:(o=e.metadata)!=null?o:{}}));return ri(n)})}getMe(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/me/");return F(e)})}postIdentity(e){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",Y(e))})}patchMe(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",Y(e));return F(n)})}getProfile(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return F(n)})}getKnowledgeAssistant(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return F(n)})}getContentTypes(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return F(e)})}getAccount(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return F(e)})}getPlatformConfig(e){return v(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return F(o)})}checkUserExists(e){return v(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return v(this,arguments,function*(e,n={}){yield this.preflight(),C.info(`Getting conversation for session ${e}`);let{attempts:s=1,retryDelay:r=1e3}=n,i=yield this.client.get(`/api/v2/conversations/by_external_id/${e}`,{attempts:s,retryDelay:r,retryOnResponse:l=>l.status===404||l.status>=500,version:"v2"});return C.info(`Successfully retrieved conversation ${i.id} for session ${e}`),ri(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){C.info(`Check if conversation for session ${e} is supported`);let{attempts:s=1,retryDelay:r=1e3}=n;return(yield this.client.get(`/api/v2/conversations/by_external_id/${e}/has_active_profile`,{attempts:s,retryDelay:r,retryOnResponse:l=>l.status===404||l.status>=500})).has_active_profile})}updateConversation(e,n){return v(this,null,function*(){var r;yield this.preflight();let o=Y(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return ri(s)})}postMessages(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>x(f({},Y(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let l=n,{data:o}=l,s=P(l,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[a,c])=>x(f({},d),{[a]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,a)=>(s[a]&&(d[a]=s[a]),d),{});return this.client.post("/api/v2/events",Y(x(f(f({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return v(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return v(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return v(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw C.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",Y(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return v(this,arguments,function*(e,n={},o){if(yield this.preflight(),o==="sticky-messages")throw new Error("Use getPinnedMessages instead");return(yield this.client.post(`/api/v2/conversations/${e}/recommend/${o}`,Y(n),{abortLatest:!0})).map(i=>x(f({},F(i)),{text:i.text||i.url||i.message,source:o,type:o})).filter((i,l,d)=>l===d.findIndex(a=>a.text===i.text))})}isLoggedIn(){return v(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return v(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,Y(n),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(l=>l.text===s.text))})}getPinnedMessages(e){return v(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return F(n).map(o=>x(f({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return v(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",Y(e),{abortLatest:!0,version:"v2"});return F(n)})}search(e){return v(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,Y(e));return F(n)})}knowledgeAssist(r,i,l){return v(this,arguments,function*(e,n,o,s={}){yield this.preflight();let d=yield this.client.post(`/api/knowledge-assist/assistants/${o}/search`,Y({question:e.question,doNotKnowAnswer:e.doNotKnowAnswer,customerInstruction:e.customerInstruction,chatHistory:n.map(a=>({question:a.question,answer:a.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return F(d)})}requestLoginByEmail(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return F(n)})}requestPasswordlessToken(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return F(e.token)})}getCsrfToken(){return v(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return v(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return F(n)})}getSummary(o){return v(this,arguments,function*(e,n={}){yield this.preflight();let s=yield this.client.post("/api/summary",{conversation:{messages:e.filter(r=>r.text&&r.source),agent_id:n.agentId,id:n.externalConversationId},prompt_instruction:n.promptInstruction,model:n.model},{version:"v1"});return F(s)})}evaluateAssistant(e,n){return v(this,null,function*(){var l;yield this.preflight();let o=new URLSearchParams,{expectFormat:s="text"}=n||{};if(s.startsWith("json-schema:")){let d=s.replace("json-schema:","");o.append("expect_response_format","json-schema"),o.append("expect_response_format_schema",d)}else o.append("expect_response_format",s);n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let r=n!=null&&n.threadId?`/api/v2/assistants/${e}/threads/${n==null?void 0:n.threadId}/evaluate?${o.toString()}`:`/api/v2/assistants/${e}/evaluate?${o.toString()}`,i=yield this.client.post(r,{input:(l=n==null?void 0:n.input)!=null?l:{},conversation:n==null?void 0:n.transcript});return F(i)})}createAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return F(o)})}postMessageToAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n,threadId:o,message:s}=e,r=yield this.client.post(`/apis/admin/assistants/${n}/threads/${o}/messages/`,{content:s,role:"user"});return F(r)})}translateMessages(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",Y(e));return F(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(Ni);if(!n||!r)return;let i=r[1].replace("-","_"),l=this.latestReceivedDeepdeskVersions[i];l&&n&&l!==n&&C.warn(`Overwritten Version header ${s}: ${JSON.stringify(l)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};vt.exchangeTokenPromise=null;var Xe=vt;import{combineReducers as gx,configureStore as fx}from"@reduxjs/toolkit";import{createSlice as lx}from"@reduxjs/toolkit";var Qc={startTime:null,stopTime:null},Yc=t=>t.handlingTime,eu=lx({name:"handlingTime",initialState:Qc,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(W,()=>Qc)}}),{handlingTimeStart:tu,handlingTimeStop:fs,handlingTimeReset:nu}=eu.actions,ou=eu.reducer;var su=(t={})=>{let e=f({onAuthError:wt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};import{createAsyncThunk as dx,createSlice as cx}from"@reduxjs/toolkit";var hs={list:{keywordMatches:[]},fetchState:"idle"};var xt=dx("styleSuggestions/getAll",(n,o)=>v(void 0,[n,o],function*({text:t},e){var d;let{deepdeskAPI:s}=e.extra,r=e.getState(),{showStyleSuggestions:i}=r.settings,l=(d=r.conversation.current)==null?void 0:d.profileCode;if(!i)return hs.list;if(!l)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:l,message:t})})),ux=cx({name:"styleSuggestions",initialState:hs,reducers:{},extraReducers:t=>{t.addCase(xt.pending,e=>{e.fetchState="loading"}).addCase(xt.rejected,e=>{e.fetchState="error"}).addCase(xt.fulfilled,(e,n)=>{e.fetchState="done",Ke(e.list,n.payload)||(e.list=n.payload)}).addCase(tt,e=>{e.list=hs.list}).addCase(W,()=>hs)}}),ru=ux.reducer;var iu=(t={})=>{let e,n=!0,o=f({getStyleSuggestions:xt,debounce:500},t);return s=>r=>i=>{var p;let l=s.getState().input.text,d=r(i),a=s.getState();if(a.auth.isLoggedIn!==!0)return d;let{showStyleSuggestions:c}=a.settings;if(!((p=a.conversation.current)==null?void 0:p.id)||!c)return d;let{text:u}=a.input;return u===l&&!n||(clearTimeout(e),u==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:u}))},t.debounce)),d}};function px(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var au=(t={})=>{let e=f({getTextSuggestions:fe,getAutocompleteSuggestions:Ln,debounce:200,check:be},t),n;return o=>s=>r=>{var g;let{input:i}=o.getState(),l=s(r),d=o.getState();if(d.auth.isLoggedIn!==!0)return l;let{recommendTextSuggestions:a,showTabCompletion:c}=d.settings,m=(g=d.conversation.current)==null?void 0:g.id,u=r.type===Oo.toString();if(!m||!a&&!c)return l;let{input:p}=d;return px(p,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let h=Rt(d);h===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(h))},u?0:e.debounce)),l}};var lu=xt.fulfilled.toString();function mx(t,e){let n=new Set([...e.keywordMatches.map(s=>s.keyword)]),o=[];return n.forEach(s=>{let r=t.keywordMatches.filter(d=>d.keyword===s),i=e.keywordMatches.filter(d=>d.keyword===s),l=i.length-r.length;l<=0||o.push(...i.slice(0,l))}),o}var du=t=>e=>n=>o=>{var a;if(o.type!==lu){n(o);return}let s=e.getState().styleSuggestions.list;n(o);let r=e.getState(),i=r.styleSuggestions.list,l=(a=r.conversation)==null?void 0:a.current;if(s===i)return;let d=mx(s,i);o.type===lu&&d.length>0&&t.sendEvent("style suggested",{conversationId:l==null?void 0:l.id,data:{keywordMatches:d}})};var hx=gx({assistants:Jd,auth:zi,conversation:Gi,contentTypes:Ua,passwordlessToken:ec,entities:Sl,handlingTime:ou,info:fa,input:aa,settings:_i,profile:Ga,search:ba,styleSuggestions:ru,ui:Zl,textSuggestions:Ol});function cu(t){return fx({reducer:hx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(su()).concat(au({debounce:200})).concat(iu({debounce:500})).concat(du(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}var yx=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},vx=t=>e=>n=>o=>{var l,d,a,c,m,u,p;let s=e.getState(),r=sn("inlineSuggestions")(s);switch(o.type){case wt.toString():{!o.payload&&t.emit("logout",void 0);break}case ge.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(l=s.conversation.current)==null?void 0:l.id,data:{entities:o.payload}});break;case Ue.toString():t.sendEvent(o.payload.name,{conversationId:((d=o.payload.options)==null?void 0:d.includeConversationData)&&((a=s.conversation.current)==null?void 0:a.id),data:o.payload.data});break;case tt.toString():t.logSendMessage(o.payload);break;case Yo.toString():t.emit("call-to-action",{cue:o.payload});break;case he.fulfilled.toString():o.isBroadcasted||t.broadcast(Ks,o,!1);break;default:break}let i=n(o);switch(o.type){case tt.toString():t.handleAfterSendMessage(o.payload);break;case An.toString():t.onUpdateShowTabHint(o.payload);break;case fs.toString():t.logHandlingTime();break;case uo.toString():t.broadcast(un,o);break;case et.toString():t.broadcast(un,o);break;case es.toString():e.dispatch(et({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{t.emit("event",o.meta.arg);break}case io.toString():{let{start:y,end:g}=s.input.selection;t.emit("replace",x(f({},o.payload),{replace:o.payload.replace==="selection"?{start:y,end:g}:{start:0,end:g}}));break}case pe.toString():{let{start:y,end:g}=s.input.selection;t.emit("select-suggestion",x(f({type:yx(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:y,end:g}:{start:0,end:g}})),r&&e.dispatch(ze([]));break}case ao.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(c=s.conversation.current)==null?void 0:c.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case ze.toString():{r&&o.payload.length>0&&e.dispatch(lo(0));break}case De.fulfilled.toString():{if(o.isBroadcasted)break;t.broadcast(un,o,!1),t.sendEvent("conversation summarized",{conversationId:(m=s.conversation.current)==null?void 0:m.id,data:{summary:o.payload.output,assistant:(p=(u=e.getState().profile.data)==null?void 0:u.summarizerAssistantNew)!=null?p:void 0}}),t.emit("summary-generated",{summary:o.payload.output});break}default:break}return i},uu=vx;import{createSelector as xx}from"@reduxjs/toolkit";function ii(t){return t.toISOString().replace("T"," ").replace("Z","")}var Sx=(t,e)=>e.version,pu=xx([Pt,ye,Yc,Sx],(t,e,n,o)=>{if(!e)return C.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(C.warn("No startTime and stopTime for handling time metrics"),null):{conversationId:e,clientVersion:o,agentId:t==null?void 0:t.agentId,agentName:t==null?void 0:t.agentName,agentEmail:t==null?void 0:t.agentEmail,timeStart:ii(s),timeStop:ii(r)}});function mu(t,e){let{text:n,metrics:{numPaste:o,pastes:s,textSuggestions:r}}=t.input,i=n.length;return{source:"agent",clientVersion:e.version,pastes:s,lenTextTotal:i,numPastes:o,suggestions:r}}function ai(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return ai(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ai(s,e):null}function li(t,e){return ai(t,e)}function gu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function bx(t){return typeof t=="object"&&t!==null&&"tagName"in t}function di(t){return bx(t)&&(pt(t)||Wo(t))}var hu,Ee=new Map,Cx=["bottom","height","left","right","top","width"],fu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:Cx.some(n=>t[n]!==e[n]);function yu(t){var n,o,s;if(t.ownerDocument===document)return[];let e=(s=(o=(n=t.ownerDocument)==null?void 0:n.defaultView)==null?void 0:o.frameElement)!=null?s:null;return e?[e,...yu(e)]:[]}function vu(t,e){return!t||!e?null:x(f({},t),{top:t.top+e.top,left:t.left+e.left})}var ys=!1,xu=()=>{ys=!0;let t=[];if(Ee.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),Ee.delete(n);return}let o=n.getBoundingClientRect();fu(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(vu,e.rect):e.rect;fu(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Ee.size===0){ys=!1;return}hu=window.requestAnimationFrame(xu)};function ci(t,e){let n=yu(t),o=[],s=n.map((r,i)=>ci(r,l=>{o[i]=l;let d=Ee.get(t);if(!d)return;let a=o.reduce(vu,d.rect);d.callbacks.forEach(c=>c(a))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),Ee.has(t)){let i=Ee.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else Ee.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!ys&&xu()},unobserve(){s.forEach(i=>i.unobserve());let r=Ee.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||Ee.delete(t),Ee.size||(cancelAnimationFrame(hu),ys=!1)}}}}var Su,ke=new Map,bu=()=>{ke.forEach((t,e)=>{if(!e.isConnected){ke.delete(e);return}let{clientHeight:n,scrollHeight:o}=e,s=o>n;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),ke.size!==0&&(Su=window.requestAnimationFrame(bu))};function Cu(t,e){return{observe(){let n=ke.size===0;ke.has(t)?ke.get(t).callbacks.push(e):ke.set(t,{visible:void 0,callbacks:[e]}),n&&bu()},unobserve(){let n=ke.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||ke.delete(t),ke.size||cancelAnimationFrame(Su)}}}}var ui=["borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderStyle","boxSizing","color","overflowWrap","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontWeight","fontKerning","lineHeight","letterSpacing","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","textIndent","whiteSpace","wordBreak","wordSpacing","wordWrap"];function pi(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function Zt(t){return Number.parseFloat(t)}function vs(t){return Math.round(t*1e6)}function Tu(t){return t/1e6}function mi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=Zt(t.width),r=Zt(t.borderLeftWidth),i=Zt(t.borderRightWidth),l=Zt(t.paddingRight),d=Tu(vs(s)-vs(r)-vs(i)),a=Tu(vs(o));if(d-a>2){let c=d-a;n.style.paddingRight=`${l+c}px`}}function xs(t,e={}){var c,m;let n=e.overlayContainer||document.createElement("div");n.style.display="none",n.style.position=(c=e.position)!=null?c:"fixed",n.style.pointerEvents="none",n.style.borderColor="transparent",dt(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};pi(o,n,ui),mi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Cu(t,()=>{pi(o,n,ui),mi(o,t,n),r(),setTimeout(r,0)}),l,d=!0,a=ci(t,u=>{if(u===null){e.onRemove&&e.onRemove(),n.remove();return}if(!d&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),d=!0),clearTimeout(l),l=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),d=!1},200),u.height===0&&u.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(pi(o,n,ui),mi(o,t,n),r(),n.style.top=`${u.top}px`,n.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),y=window.getComputedStyle(e.closestScrollElement),g=Zt(y.borderTopWidth),h=Zt(y.borderBottomWidth),w=p.top+g-u.top,E=u.top+u.height+-(p.top+p.height-h);n.style.clipPath=`inset(${w}px 0px ${E}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(m=t.parentElement)==null||m.appendChild(n),a.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),a.unobserve(),i.unobserve(),n.remove()}]}var wu=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){C.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function Tx(t){return t.offsetParent!==null}function Eu(t){if(!Tx(t))return!1;let e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}function gi(t,e,n=100){let o=Eu(t);e({isVisible:o});let s=setInterval(()=>{let r=Eu(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var $n=class extends Error{};function wx(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Ss=class{constructor(){this.queues={}}push(e,n){let o=()=>{let r=this.queues[e][1];r?(this.queues[e]=[r.promise,null],r.resolve()):delete this.queues[e]};if(!this.queues[e]){let r=n().finally(o);return this.queues[e]=[r,null],r}this.queues[e][1]&&this.queues[e][1].reject(new $n("Queued async function is outdated"));let s=wx();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};var Ex={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},ku=(t,e)=>{let n=t[Ex[e]];return n&&n.length>0?n.map(o=>o.code):(C.warn(`No assistant set in profile for conversation event "${e}"`),[])};var bs=class{constructor(e){this.options=e;this.socket=null;this.maxReconnectAttempts=5;this.reconnectInterval=25e3;this.cleanupCallbacks=[];var n,o;this.socket,this.eventListeners=new Map,this.url=e.url,this.maxReconnectAttempts=(n=e.maxReconnectAttempts)!=null?n:this.maxReconnectAttempts,this.reconnectInterval=(o=e.reconnectInterval)!=null?o:this.reconnectInterval,this.shouldReconnect=e.shouldReconnect}connect(){let e=()=>this.cleanup();window.addEventListener("beforeunload",e),this.cleanupCallbacks.push(()=>window.removeEventListener("beforeunload",e)),this.reconnect()}setupListeners(){this.socket&&(this.socket.onmessage=e=>{var n;try{let o=F(JSON.parse(e.data));o.event&&this.eventListeners.has(o.event)&&((n=this.eventListeners.get(o.event))==null||n.forEach(s=>s(o.data)))}catch(o){console.error("Error parsing WebSocket message:",o)}},this.socket.onclose=e=>{console.log("WebSocket connection closed:",e),setTimeout(()=>{this.reconnect()},this.reconnectInterval)},this.socket.onerror=e=>{console.error("WebSocket error:",e)})}reconnect(){var e,n;if(this.maxReconnectAttempts<=0){console.error("Max reconnect attempts reached, closing WebSocket connection."),(e=this.socket)==null||e.close();return}if(!this.shouldReconnect()){console.error("Should not reconnect, closing WebSocket connection."),(n=this.socket)==null||n.close();return}this.socket&&(this.socket.onmessage=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.close()),this.socket=new WebSocket(this.url),this.setupListeners(),this.maxReconnectAttempts--}send(e,n){if(!this.socket){console.error("WebSocket connection is not open.");return}this.socket.send(JSON.stringify({event:e,data:n}))}on(e,n){this.eventListeners.has(e)||this.eventListeners.set(e,[]);let o=this.eventListeners.get(e);o&&!o.includes(n)&&o.push(n)}close(){var e;(e=this.socket)==null||e.close()}cleanup(){this.close(),this.cleanupCallbacks.forEach(e=>e()),this.cleanupCallbacks=[]}};import{jsx as B,jsxs as kx}from"react/jsx-runtime";var Ru=wu("showTabHint",!0),Qt=class Qt{constructor({deepdeskUrl:e,version:n=Qt.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:l,websocketClient:d=bs}){this.inputMediator=null;this.eventListeners={};this.unmountHandlers=[];this.disposeHandlers=[];this.inlineSuggestions=null;this.aboveSuggestions=null;this.floatingMenu=null;this.widgetElement=null;this.widgetRoot=null;this.dynamicThunkObject={};this.queues=new Ss;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let a=e.replace(/\/api$/,"");this.deepdeskApi=new Xe(a,{token:s,fetch:r}),this.version=n,this.instanceId=Qt.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[uu({broadcast:(p,y,g)=>{this.broadcastEvents.send(p,y,g)},emit:(p,y)=>this.emit(p,y),handleAfterSendMessage:p=>this.handleAfterSendMessage(p),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:p=>this.logSendMessage(p),onUpdateShowTabHint:p=>Ru.update(p),sendEvent:(p,y)=>this.deepdeskApi.sendEvent(p,y)})]};this.store=cu(c),this.broadcastEvents=new Jc({debug:!0,deepdeskUrl:a,eventMap:Ca(this.store),createCustomChannel:l}),this.disposeHandlers.push(()=>{this.broadcastEvents.cleanup()}),this.ws=new d({url:`${a}/api/v2/me/realtime`.replace("https","wss"),reconnectInterval:25e3,shouldReconnect:()=>v(this,null,function*(){var p;return(p=q(this.state))!=null?p:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(An(Ru.value())),this.store.dispatch(no({locale:o,adminUrl:a,productName:i}));let m=[];this.ws.on("assistants::user_notification",p=>{if(!p.conversationId)return;let y=()=>{this.conversationId()===p.conversationId&&this.store.dispatch(Xd(p))};this.hasConversation()?y():m.push(y)}),this.ws.on("assistants::response_chunk",p=>{if(!p.conversationId)return;let y=()=>{this.conversationId()===p.conversationId&&this.store.dispatch(Gd(p))};this.hasConversation()?y():m.push(y)});let u=this.whenConversationLoaded(()=>{var p;this.broadcastEvents.setExternalId((p=this.state.conversation.current)==null?void 0:p.externalId),m.forEach(y=>y()),m.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),m.length=0,u()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=Ye(this.state)[this.state.input.selectedSuggestionIndex])!=null?e:null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}externalId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.externalId}shouldAbort(){return this.state.conversation.isSupported===!1?(C.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(C.warn("Profile has not been loaded (yet)"),!0):(C.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(q(this.state))e();else{let n=this.subscribe(q,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(wt(null)),this.store.dispatch(Pe()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Pe())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(As({externalId:e,options:n}))).payload})}createConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(oo(x(f({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return v(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(so({externalId:e,options:n}))).payload})}upsertConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(Ms(x(f({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(Ns(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(ro(e))).payload})}resetConversation(){this.store.dispatch(W()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(no(e))}setVisitorInfo(e){this.store.dispatch(pa(e))}setCustomData(e){this.store.dispatch(ma(e))}setAgentInfo(e,n){return v(this,null,function*(){yield this.store.dispatch(ln(f(f({},e),n)))})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(Fs(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch(Hs())).payload})}refresh(){return v(this,null,function*(){if(this.shouldAbort())return Promise.resolve();let e=[];return e.push(this.refreshTextSuggestions()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})})}syncInputMediator(){this.inputMediator&&this.store.dispatch(co({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()}))}notifyExternalSuggestion(e){this.store.dispatch(pe(e))}evaluateAssistant(e,n){return v(this,null,function*(){let c=n||{},{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i,expectFormat:l}=c,d=P(c,["input","transcript","showCuesInWidget","includeMetadata","expectFormat"]);Object.assign(o,d);let a=yield this.store.dispatch(he({assistantCode:e,expectFormat:l||"json-schema:cues",transcript:s,includeMetadata:i,input:o,skipState:!r}));if(a.error)throw new Error(a.error.message);return a.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){yield this.loadProfileConfig();let o=this.state.profile.data;if(!o){C.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=ku(o,e);yield Promise.all(s.map(r=>this.queues.push(r,()=>v(this,null,function*(){if(r===o.summarizerAssistantNew)return this.getSummary(f({includeMetadata:!0},n));yield this.evaluateAssistant(r,f({includeMetadata:!0},n))})).catch(i=>{if(i instanceof $n){C.warn(`Queued assistant "${r}" was outdated and dropped`);return}throw i})))})}getSummary(){return v(this,arguments,function*(e={}){var o;if(!this.hasConversation())return C.warn("No conversation to create summary for."),null;(o=this.state.profile.data)!=null&&o.summarizerAssistantNew||C.warn("No profile loaded yet, or no summarizer assistant set in profile");let n=yield this.store.dispatch(De(e));return n.error?(C.error("Error evaluating summary assistant",n.error),null):n.payload.output})}handleKeyDown(e){let{overlayCollapsed:n,openOverlayWhenTyping:o}=this.state.ui,{textSuggestions:s,selectedSuggestionIndex:r,selection:i}=this.state.input,{inlineSuggestions:l,showTextSuggestions:d}=this.settings,a=l?"below":"above",c=s.length>0;if(this.store.dispatch(ea(Ds(e))),!be(this.state)||e.key!=="Tab"&&!d)return;let m=()=>{n||!c||i&&(e.shiftKey||(this.store.dispatch(oa()),e.preventDefault()))},u=()=>{n||!c||l&&r<=0||i&&(e.shiftKey||(this.store.dispatch(sa()),e.preventDefault()))};switch(e.key){case"ArrowUp":a==="below"?u():m();break;case"ArrowDown":{a==="below"?m():u();break}case"Escape":{n||(this.store.dispatch(lo(-1)),this.store.dispatch(je({collapse:!0})),this.store.dispatch(Xl(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let p=It(this.state);if(!p)return;this.store.dispatch(An(!1)),this.store.dispatch(pe({text:p.text,suggestion:p,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(this.settings.inlineSuggestions||this.state.input.selectedSuggestionIndex===-1)return;let p=It(this.state);if(!p)return;this.store.dispatch(pe({text:p.text,suggestion:p,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(this.settings.inlineSuggestions||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let p=It(this.state);if(!p)return;this.store.dispatch(pe({text:p.text,suggestion:p,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(je({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(ze([]))}handlingTimeStart(){this.state.handlingTime.startTime||(C.info("Start handling time"),this.store.dispatch(tu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(C.info("Stop handling time"),this.store.dispatch(fs()))}logSendMessage(e){let n=mu(this.state,{version:this.version});n&&(e&&(Object.assign(n,{text:e}),Object.assign(n,{lenTextTotal:e.length})),this.deepdeskApi.sendEvent("Send Message",{conversationId:this.conversationId(),data:n}),this.emit("send-message-event",n))}logHandlingTime(){let e=pu(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(nu()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(tt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(ia()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){C.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),C.error(r)}})}on(e,n){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n),()=>{this.off(e,n)}}off(e,n){if(!e&&!n){this.eventListeners={};return}let o;this.eventListeners[e]&&(o=this.eventListeners[e].indexOf(n),o>-1&&this.eventListeners[e].splice(o,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}setPlatformVariables(e){this.store.dispatch(ga(e))}whenConversationLoaded(e){let n=r=>{var i;return(i=r.conversation.current)==null?void 0:i.id},o=()=>this.loadProfileConfig().then(()=>e());return n(this.state)&&o(),this.subscribe(n,r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=xs(n,o);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),[r,i]}createInlineContainer(e,n){var l;let o=document.createElement("div");o.style.position="absolute",o.style.top="0px",o.style.left="0px",o.style.height="0px",o.style.width="0px";let s=document.createElement("div");s.style.display="none",s.style.position="absolute",s.style.height="0px",s.style.width="0px",s.style.backgroundColor="red",o.appendChild(s);let r=(l=e.ownerDocument.defaultView)==null?void 0:l.frameElement,i=r?r.ownerDocument.defaultView:null;if(r&&(i===window||(i==null?void 0:i.parent)===window)){let[d,a]=xs(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});d.dataset.testid=n,d.style.zIndex="2",d.appendChild(o),this.unmountHandlers.push(()=>{a()})}else document.body.appendChild(o);return s}createContainer(e,n=document.body){let o=window.getComputedStyle(n),s=document.createElement("div");return dt(s),s.dataset.testid=e,s.style.color=o.color,s.style.fontSize=o.fontSize,s.style.fontFamily=o.fontFamily,s.style.fontVariant=o.fontVariant,s.setAttribute("translate","no"),n.appendChild(s),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,n),C.info(`Stored analytics for ${this.conversationId()}`)}catch(e){}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=window.sessionStorage.getItem(e);if(!n)return;let o=JSON.parse(n);o.text.trim()===this.state.input.text.trim()?(C.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(ra(o.metrics))):C.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch(e){}}mount(e,n={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!di(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let u=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:l}=u,d=P(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),a={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),dt(e),this.inputMediator=l||(pt(e)?new qt(e):new $t(e)),this.inputMediator.on("change",({plainText:p,rawHTML:y})=>{this.store.dispatch(co({text:p,html:y}))}),this.inputMediator.on("keyup",p=>{this.store.dispatch(ta(Ds(p)))}),this.inputMediator.on("keydown",p=>{this.handleKeyDown(p)}),this.inputMediator.on("paste",({pastedText:p,selectionText:y})=>{this.store.dispatch(na({text:p,selectionText:y}))}),this.inputMediator.on("cut",({selectionText:p})=>{this.store.dispatch(Yi(p))});let c;this.inputMediator.on("selection",p=>{clearTimeout(c),p===null?c=setTimeout(()=>{p!==null&&this.store.dispatch(po(p))},500):this.store.dispatch(po(p))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var p;(p=this.inputMediator)==null||p.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(Fo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Fo(!0))}),this.renderSuggestions(e,a),this.subscribe(sn("inlineSuggestions"),()=>{this.renderSuggestions(e,a)});let m=this.renderOverlays(n);this.unmountHandlers.push(()=>{m.unmount()}),this.store.dispatch(co({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()})),this.store.dispatch(po(this.inputMediator.getSelection())),this.store.dispatch(Fo(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions()}),this.isMounted=!0}subscribe(e,n){let o=e(this.store.getState());return this.store.subscribe(()=>{let s=e(this.store.getState());s!==o&&(o=s,n(o))})}unmount(){var e,n,o,s;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.floatingMenu)==null||o.unmount(),this.unmountHandlers.forEach(r=>r()),this.unmountHandlers=[],(s=this.inputMediator)==null||s.dispose(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.aboveSuggestions=this.renderAboveSuggestions(e,n)}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=St(s);r.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(rd,{})})}));let i=l=>{l?(s.style.display="block",s.style.top=`${l.top}px`,s.style.left=`${l.left}px`):s.style.display="none"};return this.inputMediator.on("caretposition",i),{unmount:()=>{var l;(l=this.inputMediator)==null||l.off("caretposition",i),r.unmount(),s.remove()}}}renderAboveSuggestions(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r}=n,i=s&&li(e,s)||void 0,[l,d]=this.overlayContainerFactory("deepdesk-tab-completion",i||e,{appendTo:r,closestScrollElement:i,mirrorOverflow:!0,onRemove:()=>this.unmount()},o==null?void 0:o.rootNode),[a,c]=this.overlayContainerFactory("deepdesk-suggestions-overlay",i||e,{appendTo:r},o==null?void 0:o.suggestionsRootNode),m=St(l);m.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Ud,{inputElement:e})})}));let u=St(a);return u.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(fd,{onLogIn:()=>this.loginViaPopup().catch(p=>C.warn(p.message))})})})),{unmount(){m.unmount(),u.unmount(),d(),c()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,l=s&&li(e,s)||void 0,[d,a]=this.overlayContainerFactory("floating-menu",l||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=St(d);return c.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(ql,{onLogIn:()=>this.loginViaPopup().catch(m=>C.warn(m.message))})})})),{unmount(){c.unmount(),a()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=St(o);return s.render(B($e,{store:this.store,customStyles:n,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Ul,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&C.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:o,showImages:s,isEmbedded:r}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r}),this.widgetRoot=St(e),this.widgetRoot.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Vc,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>C.warn(i.message))})})}))}unmountWidget(){var e,n;(n=(e=this.widgetRoot)==null?void 0:e.unmount)==null||n.call(e),this.widgetRoot=null,this.widgetElement=null}renderKnowledgeAssistantWidget(e,n,o={}){let{customStyles:s,initialQuestion:r}=o,i=St(n);return i.render(B($e,{store:this.store,customStyles:s,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Qr,{children:kx(as,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:o.isLegacyKnowledgeAssist?Dn:_n,children:[B(tn,{children:B(ds,{title:o.title,emptyState:o.emptyState})}),B(Zr,{children:B(ls,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=gi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){gu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(()=>v(this,null,function*(){yield this.store.dispatch(wn());let e=st(this.state);e&&this.store.dispatch(no({showSearch:e.search,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:!!e.summarizerAssistantNew,showKnowledgeSearch:!!e.knowledgeAssistantNew||!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions}))})),this.loadProfileConfigPromise)}loginViaPopup(e){return v(this,null,function*(){return new Promise((n,o)=>{let s=new MessageChannel,r=s.port1,i=this.settings.adminUrl,l=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);l.searchParams.append("redirect","/sdk/popup/close.html");let d=!1,a=()=>{c&&!c.closed&&c.close(),window.removeEventListener("message",m),clearInterval(u)};r.onmessage=p=>v(this,null,function*(){var y,g;if((y=p.data)!=null&&y.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((g=p.data)==null?void 0:g.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(cn),d=!0,s.port1.close(),n()}catch(h){console.error(h),o(h)}finally{d=!0,a()}});let c=window.open(l.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");c===null&&o(new Error("Popup blocked by browser"));let m=p=>v(this,null,function*(){var y;if(p.origin===l.origin)switch((y=p.data)==null?void 0:y.type){case"deepdesk-popup-loaded":{try{let g=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(g,l.origin,[s.port2])}catch(g){C.error("Error posting message to popup",g),o(g)}break}case"deepdesk-popup-error":{a(),p.data.message==="Timeout"&&C.warn("Popup timed out. Check if the account's platform url is configured correctly."),o(new Error(p.data.message));break}}});window.addEventListener("message",m);let u=setInterval(()=>{c&&!c.closed||(a(),d||o(new Error("Popup closed by user")))},200);this.disposeHandlers.push(a)})})}translateMessages(e){return this.deepdeskApi.translateMessages(e)}refreshTextSuggestions(){return v(this,null,function*(){this.isMounted&&(yield this.store.dispatch(Oo()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=En(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(ge());break;case"pinned-messages":case"sticky-messages":break;default:eo.includes(o)||this.store.dispatch(fe(o))}})}catch(o){this.handleError(o)}})}};Qt.version="18.1.2-beta.3",Qt.count=0;var Cs=Qt;function Rx(t){return v(this,null,function*(){var s,r,i;let n=yield((s=t.fetch)!=null?s:window.fetch)(t.url),o=yield n.blob();return new File([o],t.name,{type:(i=(r=t.mimeType)!=null?r:n.headers.get("Content-Type"))!=null?i:"image/jpeg"})})}function Ix(t,e){return v(this,null,function*(){let n=yield Rx(e),o=new Event("change",{bubbles:!0,cancelable:!0});try{Object.defineProperty(t,"files",{configurable:!0,get:()=>[n]}),t.dispatchEvent(o)}finally{Object.hasOwn(t,"files")&&delete t.files}})}function Px(t,e,n){return v(this,null,function*(){yield new Xe(t).authenticateWithKey(e,n)})}function Lx(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function Ax(o,s){return v(this,arguments,function*(t,e,n={}){var m,u;let{value:r}=t,{start:i,end:l}=(m=n.replace)!=null?m:{start:0,end:r.length},d=`${r.slice(0,i)}${e}${r.slice(l)}`,a=(u=n.selectionAfter)!=null?u:{start:i+e.length,end:i+e.length},c=()=>{if(n.setValue)return n.setValue(d);t.value=d};return Promise.resolve(c()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})})}function Mx(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?yt(t,n.replace.start,n.replace.end):jn(t),i,l=()=>{if(n.setRange)return n.setRange(r.cloneRange());r.deleteContents(),i=document.createElement("span"),r.insertNode(i),n.insertBRs!==!1?e.split(`
10
+ `);let y=u?o:0,g=p?Math.min(r,c.childNodes.length):c.childNodes.length;for(let h=y;h<g&&(a(c.childNodes[h]),l!==2);h++);break}default:break}p&&(l=2)}return a(t),d}var $c=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))($c||{}),qe=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedHTML=this.getHTML(),this.cachedSelection=this.getSelection(),this.listen()}addEventListener(e,n){let o=s=>{n(s)};this.element.addEventListener(e,o),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,o)})}removeEventListener(e,n){this.element.removeEventListener(e,n)}handleInteraction(){let e=this.getText(),n=this.getHTML(),o=this.getSelection(),s=this.cachedCaretPosition===null;if(!this.isActive||(e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit"),e!==this.cachedText?(this.cachedText=e,this.cachedHTML=n,s=!0,this.emit("change",{plainText:e,rawHTML:n})):n!==null&&n!==this.cachedHTML&&(this.cachedHTML=n,s=!0,this.emit("change",{plainText:e,rawHTML:n})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,s=!0,this.emit("selection",o)),!s))return;let r=this.getCaretPosition();Ke(r,this.cachedCaretPosition)||(this.cachedCaretPosition=r,this.emit("caretposition",r))}handleClick(){this.handleInteraction()}handleFocus(){let e=!this.isFocused;this.isFocused=!0,e&&this.emit("focus"),this.handleInteraction()}handleBlur(){this.isPossibleClearInputAction=!1;let e=this.isFocused;this.isFocused=!1,e&&this.emit("blur")}handleKeyDown(e){let{key:n,ctrlKey:o,metaKey:s}=e;this.isPossibleClearInputAction=Object.values($c).includes(n)||n.toLowerCase()==="z"&&(o||s),this.emit("keydown",e)}handleKeyUp(e){this.handleInteraction(),this.emit("keyup",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var o,s;let n=((o=e.clipboardData)==null?void 0:o.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:n,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.handleInteraction()),this.addEventListener("change",()=>this.handleInteraction()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",n=>this.handlePaste(n)),this.addEventListener("click",()=>this.handleInteraction()),document.activeElement===this.element&&(this.isFocused=!0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()})}focus(){this.element.focus()}emit(e,...n){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(o=>{o(...n)})}on(e,n){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n))}off(e,n){if(!this.eventListeners[e])return;let o=this.eventListeners[e].indexOf(n);o!==-1&&this.eventListeners[e].splice(o,1)}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.handleInteraction()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};function qc(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var $t=class extends qe{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),gs(this.element,n)}getHTML(){return this.element.innerHTML||""}getRange(){var i;let n=this.getRootNode();if(n.activeElement!==this.element)return null;let o="getSelection"in n?n.getSelection():window.getSelection();if(!o)return null;let s="getComposedRanges"in o&&n instanceof ShadowRoot?(i=o.getComposedRanges(n))==null?void 0:i[0]:o.rangeCount>0?o.getRangeAt(0):null;if(!s)return null;let r=this.element.ownerDocument.createRange();return r.setStart(s==null?void 0:s.startContainer,s==null?void 0:s.startOffset),r.setEnd(s==null?void 0:s.endContainer,s==null?void 0:s.endOffset),!r||!this.element.contains(r.startContainer)||!this.element.contains(r.endContainer)?null:r}getCaretPosition(){let n=this.getRange();if(!n||!n.collapsed||!("getBoundingClientRect"in n))return null;let o=n.getBoundingClientRect();return!qc(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!qc(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return ms(this.element,n);let o=this.lastKnownSelection;if(o&&jc(this.element,o.start,o.end))return o;let s=jn(this.element);return s.collapse(!1),ms(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return gs(this.element,yt(this.element,n,o))}listen(){super.listen();let n=new MutationObserver(r=>{var i,l;r.length===2&&r[0].addedNodes.length===1&&((i=r[0].addedNodes[0])==null?void 0:i.textContent)==="\u2060"&&((l=r[1].removedNodes[0])==null?void 0:l.textContent)==="\u2060"||setTimeout(()=>{this.handleInteraction()},0)});n.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),this.disposeHandlers.push(()=>n.disconnect());let o=this.element.isContentEditable,s=new MutationObserver(()=>{this.element.isContentEditable!==o&&(o=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>s.disconnect())}};var ox=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize"];function Gc(t,e){let n="mozInnerScreenX"in window,o=document.createElement("div");o.id="input-textarea-caret-position-mirror-div";let s=o.style,r=window.getComputedStyle(t),i=t.ownerDocument.body;s.whiteSpace="pre-wrap",s.wordWrap="break-word",s.position="absolute",s.visibility="hidden",ox.forEach(c=>{s[c]=r[c]}),n?t.scrollHeight>Number.parseInt(r.height)&&(s.overflowY="scroll"):s.overflow="hidden",o.textContent=t.value.substring(0,e);let l=document.createElement("span");l.textContent=t.value.substring(e)||".",o.appendChild(l),i.appendChild(o);let d=t.getBoundingClientRect(),a={top:d.top-t.scrollTop+l.offsetTop+Number.parseInt(r.borderTopWidth)+l.offsetHeight,left:d.left-t.scrollLeft+l.offsetLeft+Number.parseInt(r.borderLeftWidth)};return i.removeChild(o),a}var qt=class extends qe{constructor(){super(...arguments);this.lastKnownSelection=null}getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:n,selectionEnd:o}=this.element;return{start:n,end:o}}getSelectedText(){let n=this.getSelection();return n?this.getText().slice(n.start,n.end):""}getCaretPosition(){return Gc(this.element,this.element.selectionEnd)}listen(){super.listen();let n=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var r;return(r=n==null?void 0:n.get)==null?void 0:r.call(this.element)},set:r=>{var i;(i=n==null?void 0:n.set)==null||i.call(this.element,r),this.handleInteraction()}}),this.addEventListener("scroll",()=>{this.emit("caretposition",this.getCaretPosition())});let o=this.element.disabled,s=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>s.disconnect())}};function Xc(t,e,n){let o=`deepdesk-iframe-${t}`,s=document.getElementById(o);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(n).forEach(([l,d])=>{i.searchParams.append(l,d)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=o,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}function sx(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var Yr=class{constructor(e){this.name=e;this.disposeHandlers=[];this.broadcastChannel=new BroadcastChannel(e)}onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},ei=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=Xc(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var n;(n=this.iframe.contentWindow)==null||n.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(n=>n()),(e=this.iframe)==null||e.remove()}},ti=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.externalId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setExternalId(e){this.externalId!==e&&(this.cleanup(),C.info("Set externalId",e),this.externalId=e,this.channel=this.createChannel(e))}createChannel(e){let n=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new ei(e,this.deepdeskUrl,{debug:!0}):new Yr(e),o=s=>{var i,l;if(s.origin!==this.deepdeskUrl)return;let r=sx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(C.info("Received broadcast event",this.externalId,s),(l=(i=this.eventMap)[r.name])==null||l.call(i,r.payload))};return n.onMessage(o),n}send(e,n,o){var i,l;C.info("Broadcast event",{externalId:this.externalId,name:e,payload:n});let s={type:"event",name:e,payload:n};o!==!1&&((l=(i=this.eventMap)[e])==null||l.call(i,n));let r=this.externalId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage(x(f({},s),{channel:this.externalId}))}cleanup(e=!1){var n,o;(n=this.channel)==null||n.close(),this.channel=void 0,e&&((o=this.defaultChannel)==null||o.close(),this.defaultChannel=void 0)}},Jc=ti;function rx(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function F(t){return Array.isArray(t)?t.map(F):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(f({},e),{[rx(n)]:F(t[n])}),{}):t}function ix(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function Y(t){return Array.isArray(t)?t.map(Y):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(f({},e),{[ix(n)]:Y(t[n])}),{}):t}var Gt=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var ni=t=>new Promise(e=>{setTimeout(e,t)});var Xt=class extends Gt{constructor(){super(...arguments);this.name="ClientError"}},si=class extends Gt{constructor(){super(...arguments);this.name="ServerError"}},oi=new Map;function ax(t){return v(this,null,function*(){if(t.status===204)return t.text().catch(()=>{}),null;let e=t.headers.get("content-type");if(e!=null&&e.includes("application/json"))return t.json();let n=yield t.text();return n===""?null:(C.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var Ge=class Ge{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};var o;this.fetch=(o=n.fetch)!=null?o:window.fetch.bind(window)}patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,l=this.fetch,d=n.method===void 0||n.method.toLowerCase()==="get",D=n,{useCache:a=!1,abortLatest:c=!1,attempts:m=1,retryDelay:u=500,refreshTokenOn401:p=!0,retryOnError:y=_=>_ instanceof TypeError,retryOnResponse:g=_=>_.status>=500,version:h=null}=D,w=P(D,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(a){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(oi.has(i)){o(oi.get(i));return}}let E=x(f({credentials:"include"},w),{headers:f({Accept:"application/json","Content-Type":"application/json"},w.headers)});!d&&this.csrfToken&&(E.headers=x(f({},E.headers),{"X-CSRFToken":this.csrfToken})),typeof h=="string"&&(E.headers=x(f({},E.headers),{"X-Deepdesk-API-Version":h}));let b=m,R=!1;if(!l)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&c&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let N=()=>v(this,null,function*(){return b--,l(i,E).then(_=>v(this,null,function*(){return g(_)&&!r.isAborted&&b>0?(yield ni(u),N()):_.status===401&&p===!0&&R===!1?(R=!0,yield this.refreshToken(),N()):_})).catch(_=>v(this,null,function*(){if(y(_)&&!r.isAborted&&b>0)return yield ni(u),N();throw _}))});N().then(_=>v(this,null,function*(){let K=yield ax(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new si("Server Error",K));return}if(_.status===401){s(new Xt("Unauthorized",K));return}if(_.status===403){s(new Xt("Forbidden",K));return}if(_.status===404){s(new Xt("Not Found",K));return}if(_.status>=400){s(new Xt("Bad Request",K));return}a&&oi.set(i,K),o(K)})).catch(_=>{s(_)})})}validateToken(){return v(this,null,function*(){let{has_valid_access_token:e,is_logged_in:n}=yield this.get("/apis/admin/session/validate/");if(!e)try{yield this.refreshToken();let{is_logged_in:o}=yield this.get("/apis/admin/session/validate/");return o}catch(o){return!1}return n})}refreshToken(){return Ge.refreshingToken||(Ge.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{Ge.refreshingToken=null},1e3*60)})),Ge.refreshingToken}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,f({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,f({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,f({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,f({method:"DELETE"},n))}};Ge.refreshingToken=null;var Jt=Ge;var Zc;(e=>{let t;(l=>(l.SUCCESS="success",l.FAILURE="failure",l.CONDITIONS_NOT_MET="conditions_not_met",l.MAX_RECURSION_LEVEL="max_recursion_level",l.NO_ACCESS_TO_ASSISTANT="no_access_to_assistant"))(t=e.EvaluationStatus||(e.EvaluationStatus={}))})(Zc||(Zc={}));function ri(t){return x(f({},F(t)),{metadata:t.metadata})}var vt=class vt{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new Jt(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>v(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return v(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(vt.exchangeTokenPromise||(vt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),vt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),C.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",x(f({chat_start_time:new Date().toISOString()},Y(e)),{metadata:(o=e.metadata)!=null?o:{}}));return ri(n)})}getMe(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/me/");return F(e)})}postIdentity(e){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",Y(e))})}patchMe(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",Y(e));return F(n)})}getProfile(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return F(n)})}getKnowledgeAssistant(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return F(n)})}getContentTypes(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return F(e)})}getAccount(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return F(e)})}getPlatformConfig(e){return v(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return F(o)})}checkUserExists(e){return v(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return v(this,arguments,function*(e,n={}){yield this.preflight(),C.info(`Getting conversation for session ${e}`);let{attempts:s=1,retryDelay:r=1e3}=n,i=yield this.client.get(`/api/v2/conversations/by_external_id/${e}`,{attempts:s,retryDelay:r,retryOnResponse:l=>l.status===404||l.status>=500,version:"v2"});return C.info(`Successfully retrieved conversation ${i.id} for session ${e}`),ri(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){C.info(`Check if conversation for session ${e} is supported`);let{attempts:s=1,retryDelay:r=1e3}=n;return(yield this.client.get(`/api/v2/conversations/by_external_id/${e}/has_active_profile`,{attempts:s,retryDelay:r,retryOnResponse:l=>l.status===404||l.status>=500})).has_active_profile})}updateConversation(e,n){return v(this,null,function*(){var r;yield this.preflight();let o=Y(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return ri(s)})}postMessages(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>x(f({},Y(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let l=n,{data:o}=l,s=P(l,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[a,c])=>x(f({},d),{[a]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,a)=>(s[a]&&(d[a]=s[a]),d),{});return this.client.post("/api/v2/events",Y(x(f(f({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return v(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return v(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return v(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw C.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",Y(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return v(this,arguments,function*(e,n={},o){if(yield this.preflight(),o==="sticky-messages")throw new Error("Use getPinnedMessages instead");return(yield this.client.post(`/api/v2/conversations/${e}/recommend/${o}`,Y(n),{abortLatest:!0})).map(i=>x(f({},F(i)),{text:i.text||i.url||i.message,source:o,type:o})).filter((i,l,d)=>l===d.findIndex(a=>a.text===i.text))})}isLoggedIn(){return v(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return v(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,Y(n),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(l=>l.text===s.text))})}getPinnedMessages(e){return v(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return F(n).map(o=>x(f({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return v(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",Y(e),{abortLatest:!0,version:"v2"});return F(n)})}search(e){return v(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,Y(e));return F(n)})}knowledgeAssist(r,i,l){return v(this,arguments,function*(e,n,o,s={}){yield this.preflight();let d=yield this.client.post(`/api/knowledge-assist/assistants/${o}/search`,Y({question:e.question,doNotKnowAnswer:e.doNotKnowAnswer,customerInstruction:e.customerInstruction,chatHistory:n.map(a=>({question:a.question,answer:a.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return F(d)})}requestLoginByEmail(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return F(n)})}requestPasswordlessToken(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return F(e.token)})}getCsrfToken(){return v(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return v(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return F(n)})}getSummary(o){return v(this,arguments,function*(e,n={}){yield this.preflight();let s=yield this.client.post("/api/summary",{conversation:{messages:e.filter(r=>r.text&&r.source),agent_id:n.agentId,id:n.externalConversationId},prompt_instruction:n.promptInstruction,model:n.model},{version:"v1"});return F(s)})}evaluateAssistant(e,n){return v(this,null,function*(){var l;yield this.preflight();let o=new URLSearchParams,{expectFormat:s="text"}=n||{};if(s.startsWith("json-schema:")){let d=s.replace("json-schema:","");o.append("expect_response_format","json-schema"),o.append("expect_response_format_schema",d)}else o.append("expect_response_format",s);n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let r=n!=null&&n.threadId?`/api/v2/assistants/${e}/threads/${n==null?void 0:n.threadId}/evaluate?${o.toString()}`:`/api/v2/assistants/${e}/evaluate?${o.toString()}`,i=yield this.client.post(r,{input:(l=n==null?void 0:n.input)!=null?l:{},conversation:n==null?void 0:n.transcript});return F(i)})}createAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return F(o)})}postMessageToAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n,threadId:o,message:s}=e,r=yield this.client.post(`/apis/admin/assistants/${n}/threads/${o}/messages/`,{content:s,role:"user"});return F(r)})}translateMessages(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",Y(e));return F(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(Ni);if(!n||!r)return;let i=r[1].replace("-","_"),l=this.latestReceivedDeepdeskVersions[i];l&&n&&l!==n&&C.warn(`Overwritten Version header ${s}: ${JSON.stringify(l)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};vt.exchangeTokenPromise=null;var Xe=vt;import{combineReducers as gx,configureStore as fx}from"@reduxjs/toolkit";import{createSlice as lx}from"@reduxjs/toolkit";var Qc={startTime:null,stopTime:null},Yc=t=>t.handlingTime,eu=lx({name:"handlingTime",initialState:Qc,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(W,()=>Qc)}}),{handlingTimeStart:tu,handlingTimeStop:fs,handlingTimeReset:nu}=eu.actions,ou=eu.reducer;var su=(t={})=>{let e=f({onAuthError:wt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};import{createAsyncThunk as dx,createSlice as cx}from"@reduxjs/toolkit";var hs={list:{keywordMatches:[]},fetchState:"idle"};var xt=dx("styleSuggestions/getAll",(n,o)=>v(void 0,[n,o],function*({text:t},e){var d;let{deepdeskAPI:s}=e.extra,r=e.getState(),{showStyleSuggestions:i}=r.settings,l=(d=r.conversation.current)==null?void 0:d.profileCode;if(!i)return hs.list;if(!l)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:l,message:t})})),ux=cx({name:"styleSuggestions",initialState:hs,reducers:{},extraReducers:t=>{t.addCase(xt.pending,e=>{e.fetchState="loading"}).addCase(xt.rejected,e=>{e.fetchState="error"}).addCase(xt.fulfilled,(e,n)=>{e.fetchState="done",Ke(e.list,n.payload)||(e.list=n.payload)}).addCase(tt,e=>{e.list=hs.list}).addCase(W,()=>hs)}}),ru=ux.reducer;var iu=(t={})=>{let e,n=!0,o=f({getStyleSuggestions:xt,debounce:500},t);return s=>r=>i=>{var p;let l=s.getState().input.text,d=r(i),a=s.getState();if(a.auth.isLoggedIn!==!0)return d;let{showStyleSuggestions:c}=a.settings;if(!((p=a.conversation.current)==null?void 0:p.id)||!c)return d;let{text:u}=a.input;return u===l&&!n||(clearTimeout(e),u==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:u}))},t.debounce)),d}};function px(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var au=(t={})=>{let e=f({getTextSuggestions:fe,getAutocompleteSuggestions:Ln,debounce:200,check:be},t),n;return o=>s=>r=>{var g;let{input:i}=o.getState(),l=s(r),d=o.getState();if(d.auth.isLoggedIn!==!0)return l;let{recommendTextSuggestions:a,showTabCompletion:c}=d.settings,m=(g=d.conversation.current)==null?void 0:g.id,u=r.type===Oo.toString();if(!m||!a&&!c)return l;let{input:p}=d;return px(p,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let h=Rt(d);h===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(h))},u?0:e.debounce)),l}};var lu=xt.fulfilled.toString();function mx(t,e){let n=new Set([...e.keywordMatches.map(s=>s.keyword)]),o=[];return n.forEach(s=>{let r=t.keywordMatches.filter(d=>d.keyword===s),i=e.keywordMatches.filter(d=>d.keyword===s),l=i.length-r.length;l<=0||o.push(...i.slice(0,l))}),o}var du=t=>e=>n=>o=>{var a;if(o.type!==lu){n(o);return}let s=e.getState().styleSuggestions.list;n(o);let r=e.getState(),i=r.styleSuggestions.list,l=(a=r.conversation)==null?void 0:a.current;if(s===i)return;let d=mx(s,i);o.type===lu&&d.length>0&&t.sendEvent("style suggested",{conversationId:l==null?void 0:l.id,data:{keywordMatches:d}})};var hx=gx({assistants:Jd,auth:zi,conversation:Gi,contentTypes:Ua,passwordlessToken:ec,entities:Sl,handlingTime:ou,info:fa,input:aa,settings:_i,profile:Ga,search:ba,styleSuggestions:ru,ui:Zl,textSuggestions:Ol});function cu(t){return fx({reducer:hx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(su()).concat(au({debounce:200})).concat(iu({debounce:500})).concat(du(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}var yx=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},vx=t=>e=>n=>o=>{var l,d,a,c,m,u,p;let s=e.getState(),r=sn("inlineSuggestions")(s);switch(o.type){case wt.toString():{!o.payload&&t.emit("logout",void 0);break}case ge.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(l=s.conversation.current)==null?void 0:l.id,data:{entities:o.payload}});break;case Ue.toString():t.sendEvent(o.payload.name,{conversationId:((d=o.payload.options)==null?void 0:d.includeConversationData)&&((a=s.conversation.current)==null?void 0:a.id),data:o.payload.data});break;case tt.toString():t.logSendMessage(o.payload);break;case Yo.toString():t.emit("call-to-action",{cue:o.payload});break;case he.fulfilled.toString():o.isBroadcasted||t.broadcast(Ks,o,!1);break;default:break}let i=n(o);switch(o.type){case tt.toString():t.handleAfterSendMessage(o.payload);break;case An.toString():t.onUpdateShowTabHint(o.payload);break;case fs.toString():t.logHandlingTime();break;case uo.toString():t.broadcast(un,o);break;case et.toString():t.broadcast(un,o);break;case es.toString():e.dispatch(et({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{t.emit("event",o.meta.arg);break}case io.toString():{let{start:y,end:g}=s.input.selection;t.emit("replace",x(f({},o.payload),{replace:o.payload.replace==="selection"?{start:y,end:g}:{start:0,end:g}}));break}case pe.toString():{let{start:y,end:g}=s.input.selection;t.emit("select-suggestion",x(f({type:yx(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:y,end:g}:{start:0,end:g}})),r&&e.dispatch(ze([]));break}case ao.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(c=s.conversation.current)==null?void 0:c.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case ze.toString():{r&&o.payload.length>0&&e.dispatch(lo(0));break}case De.fulfilled.toString():{if(o.isBroadcasted)break;t.broadcast(un,o,!1),t.sendEvent("conversation summarized",{conversationId:(m=s.conversation.current)==null?void 0:m.id,data:{summary:o.payload.output,assistant:(p=(u=e.getState().profile.data)==null?void 0:u.summarizerAssistantNew)!=null?p:void 0}}),t.emit("summary-generated",{summary:o.payload.output});break}default:break}return i},uu=vx;import{createSelector as xx}from"@reduxjs/toolkit";function ii(t){return t.toISOString().replace("T"," ").replace("Z","")}var Sx=(t,e)=>e.version,pu=xx([Pt,ye,Yc,Sx],(t,e,n,o)=>{if(!e)return C.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(C.warn("No startTime and stopTime for handling time metrics"),null):{conversationId:e,clientVersion:o,agentId:t==null?void 0:t.agentId,agentName:t==null?void 0:t.agentName,agentEmail:t==null?void 0:t.agentEmail,timeStart:ii(s),timeStop:ii(r)}});function mu(t,e){let{text:n,metrics:{numPaste:o,pastes:s,textSuggestions:r}}=t.input,i=n.length;return{source:"agent",clientVersion:e.version,pastes:s,lenTextTotal:i,numPastes:o,suggestions:r}}function ai(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return ai(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ai(s,e):null}function li(t,e){return ai(t,e)}function gu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function bx(t){return typeof t=="object"&&t!==null&&"tagName"in t}function di(t){return bx(t)&&(pt(t)||Wo(t))}var hu,Ee=new Map,Cx=["bottom","height","left","right","top","width"],fu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:Cx.some(n=>t[n]!==e[n]);function yu(t){var n,o,s;if(t.ownerDocument===document)return[];let e=(s=(o=(n=t.ownerDocument)==null?void 0:n.defaultView)==null?void 0:o.frameElement)!=null?s:null;return e?[e,...yu(e)]:[]}function vu(t,e){return!t||!e?null:x(f({},t),{top:t.top+e.top,left:t.left+e.left})}var ys=!1,xu=()=>{ys=!0;let t=[];if(Ee.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),Ee.delete(n);return}let o=n.getBoundingClientRect();fu(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(vu,e.rect):e.rect;fu(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Ee.size===0){ys=!1;return}hu=window.requestAnimationFrame(xu)};function ci(t,e){let n=yu(t),o=[],s=n.map((r,i)=>ci(r,l=>{o[i]=l;let d=Ee.get(t);if(!d)return;let a=o.reduce(vu,d.rect);d.callbacks.forEach(c=>c(a))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),Ee.has(t)){let i=Ee.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else Ee.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!ys&&xu()},unobserve(){s.forEach(i=>i.unobserve());let r=Ee.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||Ee.delete(t),Ee.size||(cancelAnimationFrame(hu),ys=!1)}}}}var Su,ke=new Map,bu=()=>{ke.forEach((t,e)=>{if(!e.isConnected){ke.delete(e);return}let{clientHeight:n,scrollHeight:o}=e,s=o>n;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),ke.size!==0&&(Su=window.requestAnimationFrame(bu))};function Cu(t,e){return{observe(){let n=ke.size===0;ke.has(t)?ke.get(t).callbacks.push(e):ke.set(t,{visible:void 0,callbacks:[e]}),n&&bu()},unobserve(){let n=ke.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||ke.delete(t),ke.size||cancelAnimationFrame(Su)}}}}var ui=["borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderStyle","boxSizing","color","overflowWrap","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontWeight","fontKerning","lineHeight","letterSpacing","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","textIndent","whiteSpace","wordBreak","wordSpacing","wordWrap"];function pi(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function Zt(t){return Number.parseFloat(t)}function vs(t){return Math.round(t*1e6)}function Tu(t){return t/1e6}function mi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=Zt(t.width),r=Zt(t.borderLeftWidth),i=Zt(t.borderRightWidth),l=Zt(t.paddingRight),d=Tu(vs(s)-vs(r)-vs(i)),a=Tu(vs(o));if(d-a>2){let c=d-a;n.style.paddingRight=`${l+c}px`}}function xs(t,e={}){var c,m;let n=e.overlayContainer||document.createElement("div");n.style.display="none",n.style.position=(c=e.position)!=null?c:"fixed",n.style.pointerEvents="none",n.style.borderColor="transparent",dt(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};pi(o,n,ui),mi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Cu(t,()=>{pi(o,n,ui),mi(o,t,n),r(),setTimeout(r,0)}),l,d=!0,a=ci(t,u=>{if(u===null){e.onRemove&&e.onRemove(),n.remove();return}if(!d&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),d=!0),clearTimeout(l),l=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),d=!1},200),u.height===0&&u.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(pi(o,n,ui),mi(o,t,n),r(),n.style.top=`${u.top}px`,n.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),y=window.getComputedStyle(e.closestScrollElement),g=Zt(y.borderTopWidth),h=Zt(y.borderBottomWidth),w=p.top+g-u.top,E=u.top+u.height+-(p.top+p.height-h);n.style.clipPath=`inset(${w}px 0px ${E}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(m=t.parentElement)==null||m.appendChild(n),a.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),a.unobserve(),i.unobserve(),n.remove()}]}var wu=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){C.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function Tx(t){return t.offsetParent!==null}function Eu(t){if(!Tx(t))return!1;let e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}function gi(t,e,n=100){let o=Eu(t);e({isVisible:o});let s=setInterval(()=>{let r=Eu(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var $n=class extends Error{};function wx(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Ss=class{constructor(){this.queues={}}push(e,n){let o=()=>{let r=this.queues[e][1];r?(this.queues[e]=[r.promise,null],r.resolve()):delete this.queues[e]};if(!this.queues[e]){let r=n().finally(o);return this.queues[e]=[r,null],r}this.queues[e][1]&&this.queues[e][1].reject(new $n("Queued async function is outdated"));let s=wx();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};var Ex={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},ku=(t,e)=>{let n=t[Ex[e]];return n&&n.length>0?n.map(o=>o.code):(C.warn(`No assistant set in profile for conversation event "${e}"`),[])};var bs=class{constructor(e){this.options=e;this.socket=null;this.maxReconnectAttempts=5;this.reconnectInterval=25e3;this.cleanupCallbacks=[];var n,o;this.socket,this.eventListeners=new Map,this.url=e.url,this.maxReconnectAttempts=(n=e.maxReconnectAttempts)!=null?n:this.maxReconnectAttempts,this.reconnectInterval=(o=e.reconnectInterval)!=null?o:this.reconnectInterval,this.shouldReconnect=e.shouldReconnect}connect(){let e=()=>this.cleanup();window.addEventListener("beforeunload",e),this.cleanupCallbacks.push(()=>window.removeEventListener("beforeunload",e)),this.reconnect()}setupListeners(){this.socket&&(this.socket.onmessage=e=>{var n;try{let o=F(JSON.parse(e.data));o.event&&this.eventListeners.has(o.event)&&((n=this.eventListeners.get(o.event))==null||n.forEach(s=>s(o.data)))}catch(o){console.error("Error parsing WebSocket message:",o)}},this.socket.onclose=e=>{console.log("WebSocket connection closed:",e),setTimeout(()=>{this.reconnect()},this.reconnectInterval)},this.socket.onerror=e=>{console.error("WebSocket error:",e)})}reconnect(){var e,n;if(this.maxReconnectAttempts<=0){console.error("Max reconnect attempts reached, closing WebSocket connection."),(e=this.socket)==null||e.close();return}if(!this.shouldReconnect()){console.error("Should not reconnect, closing WebSocket connection."),(n=this.socket)==null||n.close();return}this.socket&&(this.socket.onmessage=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.close()),this.socket=new WebSocket(this.url),this.setupListeners(),this.maxReconnectAttempts--}send(e,n){if(!this.socket){console.error("WebSocket connection is not open.");return}this.socket.send(JSON.stringify({event:e,data:n}))}on(e,n){this.eventListeners.has(e)||this.eventListeners.set(e,[]);let o=this.eventListeners.get(e);o&&!o.includes(n)&&o.push(n)}close(){var e;(e=this.socket)==null||e.close()}cleanup(){this.close(),this.cleanupCallbacks.forEach(e=>e()),this.cleanupCallbacks=[]}};import{jsx as B,jsxs as kx}from"react/jsx-runtime";var Ru=wu("showTabHint",!0),Qt=class Qt{constructor({deepdeskUrl:e,version:n=Qt.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:l,websocketClient:d=bs}){this.inputMediator=null;this.eventListeners={};this.unmountHandlers=[];this.disposeHandlers=[];this.inlineSuggestions=null;this.aboveSuggestions=null;this.floatingMenu=null;this.widgetElement=null;this.widgetRoot=null;this.dynamicThunkObject={};this.queues=new Ss;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let a=e.replace(/\/api$/,"");this.deepdeskApi=new Xe(a,{token:s,fetch:r}),this.version=n,this.instanceId=Qt.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[uu({broadcast:(p,y,g)=>{this.broadcastEvents.send(p,y,g)},emit:(p,y)=>this.emit(p,y),handleAfterSendMessage:p=>this.handleAfterSendMessage(p),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:p=>this.logSendMessage(p),onUpdateShowTabHint:p=>Ru.update(p),sendEvent:(p,y)=>this.deepdeskApi.sendEvent(p,y)})]};this.store=cu(c),this.broadcastEvents=new Jc({debug:!0,deepdeskUrl:a,eventMap:Ca(this.store),createCustomChannel:l}),this.disposeHandlers.push(()=>{this.broadcastEvents.cleanup()}),this.ws=new d({url:`${a}/api/v2/me/realtime`.replace("https","wss"),reconnectInterval:25e3,shouldReconnect:()=>v(this,null,function*(){var p;return(p=q(this.state))!=null?p:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(An(Ru.value())),this.store.dispatch(no({locale:o,adminUrl:a,productName:i}));let m=[];this.ws.on("assistants::user_notification",p=>{if(!p.conversationId)return;let y=()=>{this.conversationId()===p.conversationId&&this.store.dispatch(Xd(p))};this.hasConversation()?y():m.push(y)}),this.ws.on("assistants::response_chunk",p=>{if(!p.conversationId)return;let y=()=>{this.conversationId()===p.conversationId&&this.store.dispatch(Gd(p))};this.hasConversation()?y():m.push(y)});let u=this.whenConversationLoaded(()=>{var p;this.broadcastEvents.setExternalId((p=this.state.conversation.current)==null?void 0:p.externalId),m.forEach(y=>y()),m.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),m.length=0,u()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=Ye(this.state)[this.state.input.selectedSuggestionIndex])!=null?e:null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}externalId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.externalId}shouldAbort(){return this.state.conversation.isSupported===!1?(C.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(C.warn("Profile has not been loaded (yet)"),!0):(C.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(q(this.state))e();else{let n=this.subscribe(q,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(wt(null)),this.store.dispatch(Pe()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Pe())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(As({externalId:e,options:n}))).payload})}createConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(oo(x(f({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return v(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(so({externalId:e,options:n}))).payload})}upsertConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(Ms(x(f({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(Ns(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(ro(e))).payload})}resetConversation(){this.store.dispatch(W()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(no(e))}setVisitorInfo(e){this.store.dispatch(pa(e))}setCustomData(e){this.store.dispatch(ma(e))}setAgentInfo(e,n){return v(this,null,function*(){yield this.store.dispatch(ln(f(f({},e),n)))})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(Fs(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch(Hs())).payload})}refresh(){return v(this,null,function*(){if(this.shouldAbort())return Promise.resolve();let e=[];return e.push(this.refreshTextSuggestions()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})})}syncInputMediator(){this.inputMediator&&this.store.dispatch(co({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()}))}notifyExternalSuggestion(e){this.store.dispatch(pe(e))}evaluateAssistant(e,n){return v(this,null,function*(){var m;let c=n||{},{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i,expectFormat:l}=c,d=P(c,["input","transcript","showCuesInWidget","includeMetadata","expectFormat"]);Object.assign(o,d);let a=yield this.store.dispatch(he({assistantCode:e,expectFormat:l||"json-schema:cues",transcript:s,includeMetadata:i,input:o,skipState:!r}));if(a.error)throw new Error(`Assistant evaluation failed: ${(m=a.payload)!=null?m:a.error.message}`);return a.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){yield this.loadProfileConfig();let o=this.state.profile.data;if(!o){C.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=ku(o,e);yield Promise.all(s.map(r=>this.queues.push(r,()=>v(this,null,function*(){if(r===o.summarizerAssistantNew)return this.getSummary(f({includeMetadata:!0},n));yield this.evaluateAssistant(r,f({includeMetadata:!0},n))})).catch(i=>{if(i instanceof $n){C.warn(`Queued assistant "${r}" was outdated and dropped`);return}throw i})))})}getSummary(){return v(this,arguments,function*(e={}){var o;if(!this.hasConversation())return C.warn("No conversation to create summary for."),null;(o=this.state.profile.data)!=null&&o.summarizerAssistantNew||C.warn("No profile loaded yet, or no summarizer assistant set in profile");let n=yield this.store.dispatch(De(e));return n.error?(C.error("Error evaluating summary assistant",n.error),null):n.payload.output})}handleKeyDown(e){let{overlayCollapsed:n,openOverlayWhenTyping:o}=this.state.ui,{textSuggestions:s,selectedSuggestionIndex:r,selection:i}=this.state.input,{inlineSuggestions:l,showTextSuggestions:d}=this.settings,a=l?"below":"above",c=s.length>0;if(this.store.dispatch(ea(Ds(e))),!be(this.state)||e.key!=="Tab"&&!d)return;let m=()=>{n||!c||i&&(e.shiftKey||(this.store.dispatch(oa()),e.preventDefault()))},u=()=>{n||!c||l&&r<=0||i&&(e.shiftKey||(this.store.dispatch(sa()),e.preventDefault()))};switch(e.key){case"ArrowUp":a==="below"?u():m();break;case"ArrowDown":{a==="below"?m():u();break}case"Escape":{n||(this.store.dispatch(lo(-1)),this.store.dispatch(je({collapse:!0})),this.store.dispatch(Xl(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let p=It(this.state);if(!p)return;this.store.dispatch(An(!1)),this.store.dispatch(pe({text:p.text,suggestion:p,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(this.settings.inlineSuggestions||this.state.input.selectedSuggestionIndex===-1)return;let p=It(this.state);if(!p)return;this.store.dispatch(pe({text:p.text,suggestion:p,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(this.settings.inlineSuggestions||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let p=It(this.state);if(!p)return;this.store.dispatch(pe({text:p.text,suggestion:p,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(je({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(ze([]))}handlingTimeStart(){this.state.handlingTime.startTime||(C.info("Start handling time"),this.store.dispatch(tu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(C.info("Stop handling time"),this.store.dispatch(fs()))}logSendMessage(e){let n=mu(this.state,{version:this.version});n&&(e&&(Object.assign(n,{text:e}),Object.assign(n,{lenTextTotal:e.length})),this.deepdeskApi.sendEvent("Send Message",{conversationId:this.conversationId(),data:n}),this.emit("send-message-event",n))}logHandlingTime(){let e=pu(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(nu()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(tt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(ia()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){C.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),C.error(r)}})}on(e,n){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n),()=>{this.off(e,n)}}off(e,n){if(!e&&!n){this.eventListeners={};return}let o;this.eventListeners[e]&&(o=this.eventListeners[e].indexOf(n),o>-1&&this.eventListeners[e].splice(o,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}setPlatformVariables(e){this.store.dispatch(ga(e))}whenConversationLoaded(e){let n=r=>{var i;return(i=r.conversation.current)==null?void 0:i.id},o=()=>this.loadProfileConfig().then(()=>e());return n(this.state)&&o(),this.subscribe(n,r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=xs(n,o);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),[r,i]}createInlineContainer(e,n){var l;let o=document.createElement("div");o.style.position="absolute",o.style.top="0px",o.style.left="0px",o.style.height="0px",o.style.width="0px";let s=document.createElement("div");s.style.display="none",s.style.position="absolute",s.style.height="0px",s.style.width="0px",s.style.backgroundColor="red",o.appendChild(s);let r=(l=e.ownerDocument.defaultView)==null?void 0:l.frameElement,i=r?r.ownerDocument.defaultView:null;if(r&&(i===window||(i==null?void 0:i.parent)===window)){let[d,a]=xs(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});d.dataset.testid=n,d.style.zIndex="2",d.appendChild(o),this.unmountHandlers.push(()=>{a()})}else document.body.appendChild(o);return s}createContainer(e,n=document.body){let o=window.getComputedStyle(n),s=document.createElement("div");return dt(s),s.dataset.testid=e,s.style.color=o.color,s.style.fontSize=o.fontSize,s.style.fontFamily=o.fontFamily,s.style.fontVariant=o.fontVariant,s.setAttribute("translate","no"),n.appendChild(s),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,n),C.info(`Stored analytics for ${this.conversationId()}`)}catch(e){}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=window.sessionStorage.getItem(e);if(!n)return;let o=JSON.parse(n);o.text.trim()===this.state.input.text.trim()?(C.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(ra(o.metrics))):C.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch(e){}}mount(e,n={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!di(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let u=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:l}=u,d=P(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),a={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),dt(e),this.inputMediator=l||(pt(e)?new qt(e):new $t(e)),this.inputMediator.on("change",({plainText:p,rawHTML:y})=>{this.store.dispatch(co({text:p,html:y}))}),this.inputMediator.on("keyup",p=>{this.store.dispatch(ta(Ds(p)))}),this.inputMediator.on("keydown",p=>{this.handleKeyDown(p)}),this.inputMediator.on("paste",({pastedText:p,selectionText:y})=>{this.store.dispatch(na({text:p,selectionText:y}))}),this.inputMediator.on("cut",({selectionText:p})=>{this.store.dispatch(Yi(p))});let c;this.inputMediator.on("selection",p=>{clearTimeout(c),p===null?c=setTimeout(()=>{p!==null&&this.store.dispatch(po(p))},500):this.store.dispatch(po(p))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var p;(p=this.inputMediator)==null||p.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(Fo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Fo(!0))}),this.renderSuggestions(e,a),this.subscribe(sn("inlineSuggestions"),()=>{this.renderSuggestions(e,a)});let m=this.renderOverlays(n);this.unmountHandlers.push(()=>{m.unmount()}),this.store.dispatch(co({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()})),this.store.dispatch(po(this.inputMediator.getSelection())),this.store.dispatch(Fo(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions()}),this.isMounted=!0}subscribe(e,n){let o=e(this.store.getState());return this.store.subscribe(()=>{let s=e(this.store.getState());s!==o&&(o=s,n(o))})}unmount(){var e,n,o,s;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.floatingMenu)==null||o.unmount(),this.unmountHandlers.forEach(r=>r()),this.unmountHandlers=[],(s=this.inputMediator)==null||s.dispose(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.aboveSuggestions=this.renderAboveSuggestions(e,n)}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=St(s);r.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(rd,{})})}));let i=l=>{l?(s.style.display="block",s.style.top=`${l.top}px`,s.style.left=`${l.left}px`):s.style.display="none"};return this.inputMediator.on("caretposition",i),{unmount:()=>{var l;(l=this.inputMediator)==null||l.off("caretposition",i),r.unmount(),s.remove()}}}renderAboveSuggestions(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r}=n,i=s&&li(e,s)||void 0,[l,d]=this.overlayContainerFactory("deepdesk-tab-completion",i||e,{appendTo:r,closestScrollElement:i,mirrorOverflow:!0,onRemove:()=>this.unmount()},o==null?void 0:o.rootNode),[a,c]=this.overlayContainerFactory("deepdesk-suggestions-overlay",i||e,{appendTo:r},o==null?void 0:o.suggestionsRootNode),m=St(l);m.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Ud,{inputElement:e})})}));let u=St(a);return u.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(fd,{onLogIn:()=>this.loginViaPopup().catch(p=>C.warn(p.message))})})})),{unmount(){m.unmount(),u.unmount(),d(),c()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,l=s&&li(e,s)||void 0,[d,a]=this.overlayContainerFactory("floating-menu",l||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=St(d);return c.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(ql,{onLogIn:()=>this.loginViaPopup().catch(m=>C.warn(m.message))})})})),{unmount(){c.unmount(),a()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=St(o);return s.render(B($e,{store:this.store,customStyles:n,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Ul,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&C.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:o,showImages:s,isEmbedded:r}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r}),this.widgetRoot=St(e),this.widgetRoot.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Vc,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>C.warn(i.message))})})}))}unmountWidget(){var e,n;(n=(e=this.widgetRoot)==null?void 0:e.unmount)==null||n.call(e),this.widgetRoot=null,this.widgetElement=null}renderKnowledgeAssistantWidget(e,n,o={}){let{customStyles:s,initialQuestion:r}=o,i=St(n);return i.render(B($e,{store:this.store,customStyles:s,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(Qr,{children:kx(as,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:o.isLegacyKnowledgeAssist?Dn:_n,children:[B(tn,{children:B(ds,{title:o.title,emptyState:o.emptyState})}),B(Zr,{children:B(ls,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=gi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){gu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(()=>v(this,null,function*(){yield this.store.dispatch(wn());let e=st(this.state);e&&this.store.dispatch(no({showSearch:e.search,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:!!e.summarizerAssistantNew,showKnowledgeSearch:!!e.knowledgeAssistantNew||!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions}))})),this.loadProfileConfigPromise)}loginViaPopup(e){return v(this,null,function*(){return new Promise((n,o)=>{let s=new MessageChannel,r=s.port1,i=this.settings.adminUrl,l=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);l.searchParams.append("redirect","/sdk/popup/close.html");let d=!1,a=()=>{c&&!c.closed&&c.close(),window.removeEventListener("message",m),clearInterval(u)};r.onmessage=p=>v(this,null,function*(){var y,g;if((y=p.data)!=null&&y.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((g=p.data)==null?void 0:g.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(cn),d=!0,s.port1.close(),n()}catch(h){console.error(h),o(h)}finally{d=!0,a()}});let c=window.open(l.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");c===null&&o(new Error("Popup blocked by browser"));let m=p=>v(this,null,function*(){var y;if(p.origin===l.origin)switch((y=p.data)==null?void 0:y.type){case"deepdesk-popup-loaded":{try{let g=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(g,l.origin,[s.port2])}catch(g){C.error("Error posting message to popup",g),o(g)}break}case"deepdesk-popup-error":{a(),p.data.message==="Timeout"&&C.warn("Popup timed out. Check if the account's platform url is configured correctly."),o(new Error(p.data.message));break}}});window.addEventListener("message",m);let u=setInterval(()=>{c&&!c.closed||(a(),d||o(new Error("Popup closed by user")))},200);this.disposeHandlers.push(a)})})}translateMessages(e){return this.deepdeskApi.translateMessages(e)}refreshTextSuggestions(){return v(this,null,function*(){this.isMounted&&(yield this.store.dispatch(Oo()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=En(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(ge());break;case"pinned-messages":case"sticky-messages":break;default:eo.includes(o)||this.store.dispatch(fe(o))}})}catch(o){this.handleError(o)}})}};Qt.version="18.1.2-beta.5",Qt.count=0;var Cs=Qt;function Rx(t){return v(this,null,function*(){var s,r,i;let n=yield((s=t.fetch)!=null?s:window.fetch)(t.url),o=yield n.blob();return new File([o],t.name,{type:(i=(r=t.mimeType)!=null?r:n.headers.get("Content-Type"))!=null?i:"image/jpeg"})})}function Ix(t,e){return v(this,null,function*(){let n=yield Rx(e),o=new Event("change",{bubbles:!0,cancelable:!0});try{Object.defineProperty(t,"files",{configurable:!0,get:()=>[n]}),t.dispatchEvent(o)}finally{Object.hasOwn(t,"files")&&delete t.files}})}function Px(t,e,n){return v(this,null,function*(){yield new Xe(t).authenticateWithKey(e,n)})}function Lx(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function Ax(o,s){return v(this,arguments,function*(t,e,n={}){var m,u;let{value:r}=t,{start:i,end:l}=(m=n.replace)!=null?m:{start:0,end:r.length},d=`${r.slice(0,i)}${e}${r.slice(l)}`,a=(u=n.selectionAfter)!=null?u:{start:i+e.length,end:i+e.length},c=()=>{if(n.setValue)return n.setValue(d);t.value=d};return Promise.resolve(c()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})})}function Mx(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?yt(t,n.replace.start,n.replace.end):jn(t),i,l=()=>{if(n.setRange)return n.setRange(r.cloneRange());r.deleteContents(),i=document.createElement("span"),r.insertNode(i),n.insertBRs!==!1?e.split(`
11
11
  `).reverse().forEach((d,a)=>{a>0&&r.insertNode(document.createElement("br")),r.insertNode(document.createTextNode(d))}):r.insertNode(document.createTextNode(e))};return Promise.resolve(l()).then(()=>{try{if(n.selectionAfter!==!1){t.focus();let d=n.selectionAfter?yt(t,n.selectionAfter.start,n.selectionAfter.end):(r.collapse(!1),r),a=window.getSelection();a==null||a.removeAllRanges(),a==null||a.addRange(d)}if(!i)return;i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"nearest"})}finally{i&&i.remove()}})})}function Nx(t){let e=document.createElement("template");return e.innerHTML=t.replace(/(\[([^\]]+)])\(([^)]+)\)/g,'<a href="$3" target="_blank" rel="noopener noreferrer">$2</a>'),e.content}function Ox(t){let e=document.createDocumentFragment();return t.split(`
12
12
  `).forEach((n,o)=>{o>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=n.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(n.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(n.slice(r)))}),e}function Iu(t,e){let n=t.parentElement;if(!n){console.warn("No insert point found");return}let{display:o}=window.getComputedStyle(n);o.includes("block")||o==="table-cell"?n==null||n.insertBefore(e,t.nextSibling):Iu(n,e)}function Dx(s,r){return v(this,arguments,function*(t,e,{isBlock:n,isHTML:o}={}){let i;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let l=()=>{var u;let d=(u=t.ownerDocument.defaultView)!=null?u:window,a=d.getSelection();if((!a||a.rangeCount===0)&&(t.focus(),a=d.getSelection()),!a||a.rangeCount===0)return;let c=a.getRangeAt(0);if(!c)return;i=document.createElement("span"),c.insertNode(i);let m=o?Nx(e):Ox(e);n?Iu(c.startContainer,m):(c.insertNode(m),c.collapse(!1))};return Promise.resolve(l()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!i)try{i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"nearest"})}finally{i&&i.remove()}})})}export{O as Card,$t as ContentEditableInput,Xe as DeepdeskAPI,Cs as DeepdeskSDK,Jt as HTTPClient,qe as InputMediator,on as InputType,ks as KeyboardHint,Gu as Label,to as Locale,Ie as Section,tn as SectionList,Ze as Sources,A as Suggestion,te as SuggestionList,qt as TextAreaInput,Tt as ToggleButton,Ix as attachFile,Px as authenticateWithKey,jn as createFullRange,xs as createOverlayContainer,yt as createRangeFromOffsets,Rn as escapeHTML,Lx as formatTextMarkup,ms as getRangeOffsets,gs as getRangeText,Dx as insertCKEditor,wo as isHTML,di as isSupportedInputElement,Mx as updateContentEditable,Ax as updateTextArea,lt as useClickOutsideRoot,S as useStyles,gi as waitForElementVisibilityChange};