@deepdesk/deepdesk-sdk 18.1.1 → 18.1.2-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,12 +1,12 @@
1
- var Ei=Object.defineProperty,Vp=Object.defineProperties;var jp=Object.getOwnPropertyDescriptors;var Qn=Object.getOwnPropertySymbols;var ki=Object.prototype.hasOwnProperty,Ri=Object.prototype.propertyIsEnumerable;var Ti=(t,e,n)=>e in t?Ei(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,g=(t,e)=>{for(var n in e||(e={}))ki.call(e,n)&&Ti(t,n,e[n]);if(Qn)for(var n of Qn(e))Ri.call(e,n)&&Ti(t,n,e[n]);return t},x=(t,e)=>Vp(t,jp(e));var L=(t,e)=>{var n={};for(var o in t)ki.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&Qn)for(var o of Qn(t))e.indexOf(o)<0&&Ri.call(t,o)&&(n[o]=t[o]);return n};var G=(t,e)=>{for(var n in e)Ei(t,n,{get:e[n],enumerable:!0})};var v=(t,e,n)=>new Promise((o,s)=>{var r=d=>{try{a(n.next(d))}catch(l){s(l)}},i=d=>{try{a(n.throw(d))}catch(l){s(l)}},a=d=>d.done?o(d.value):Promise.resolve(d.value).then(r,i);a((n=n.apply(t,e)).next())});import Pi from"classnames";import Jp,{createContext as Qp,useContext as As,useEffect as Zp,useState as Yp}from"react";import $p,{useContext as qp}from"react";import Gp from"classnames";var an=$p.createContext({});function S(t,e){let r=qp(an),{debug:n}=r,s=L(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return x(g({},i),{[a]:Gp(d,l,n?`${t}__${a}`:!1)})},{})}var Ii={root:"dd-4s9wq"};import{jsx as Zn,jsxs as Xp}from"react/jsx-runtime";var Yn=()=>Xp("svg",{className:Ii.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Zn("defs",{children:Zn("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Zn("title",{children:"Failed loading image"}),Zn("path",{className:"cls-1",d:"M15 130.896V16.994c0-1.097.898-1.994 2.007-1.994h150.986A2 2 0 0 1 170 16.994v69.147L133.015 51 87.26 120.377l-35.863-17.758L15 130.896zM2 0C.895 0 0 .887 0 2v166c0 1.105.887 2 2 2h181c1.105 0 2-.887 2-2V2c0-1.105-.887-2-2-2H2zm49 72c11.046 0 20-9.178 20-20.5S62.046 31 51 31s-20 9.178-20 20.5S39.954 72 51 72z",fillRule:"evenodd"})]});var Ls={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as Lt}from"react/jsx-runtime";var eo=Qp(Ls),eu=({title:t,src:e})=>{let n=As(eo),[o,s]=Yp(!1);return Zp(()=>{s(!1)},[e]),Lt("div",{className:n.imageWrapper,children:e&&!o?Lt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Lt(Yn,{})})},tu=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=As(eo);return Lt("div",{className:Pi(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},nu=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=L(i,["as","cropText","className","children"]);let a=As(eo);return Jp.createElement(t,g({className:Pi(a.title,n,{[a.contentIsCropped]:e})},s),o)},to=({children:t})=>{let e=S("Card",Ls);return Lt("div",{className:e.root,children:Lt(eo.Provider,{value:e,children:t})})};to.Image=eu;to.Content=tu;to.Title=nu;var D=to;import ou from"classnames";var Li={root:"dd-llBx9"};import{jsx as iu}from"react/jsx-runtime";var su={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},ru=o=>{var s=o,{className:t,keyCode:e}=s,n=L(s,["className","keyCode"]);let r=S("KeyboardHint",Li);return iu("span",g({"data-key":su[e],className:ou(t,r.root)},n))},Ms=ru;import au from"classnames";var Ai={root:"dd-e6HXZ"};import{jsx as cu}from"react/jsx-runtime";var lu=o=>{var s=o,{className:t,children:e}=s,n=L(s,["className","children"]);let r=S("Label",Ai);return cu("span",x(g({},n),{className:au(t,r.root),children:e}))},du=lu;var Mi={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Ns,jsxs as uu}from"react/jsx-runtime";var pu=s=>{var r=s,{title:t,children:e,type:n}=r,o=L(r,["title","children","type"]);let i=S("Section",Mi);return uu("section",x(g({},o),{className:i.root,"data-section-type":n,children:[t&&Ns("div",{className:i.subTitleContainer,children:Ns("span",{className:i.subtitle,children:t})}),Ns("div",{className:i.suggestions,children:e})]}))},Le=pu;import vu from"classnames";import{useRef as xu}from"react";import{createContext as mu,useCallback as gu,useContext as fu,useEffect as hu}from"react";import{jsx as yu}from"react/jsx-runtime";var Ni=mu(null),Oi=({scrollContainerRef:t,children:e})=>{let n=gu(o=>{let s=t.current;if(!s||s.scrollHeight<=s.clientHeight)return;let{top:r}=s.getBoundingClientRect(),{top:i}=o.getBoundingClientRect();"scrollTo"in s?s.scrollTo({top:i-r}):s.scrollTop=i-r},[]);return yu(Ni.Provider,{value:n,children:e})},no=t=>{let e=fu(Ni);hu(()=>{let n=t.current;n&&e(n)},[])};var Di={root:"dd-uoTXh"};import{jsx as _i}from"react/jsx-runtime";var Su=({className:t,children:e})=>{let n=S("SectionList",Di),o=xu(null);return _i(Oi,{scrollContainerRef:o,children:_i("div",{ref:o,className:vu(n.root,t),children:e})})},ln=Su;import dn from"classnames";import bu,{createContext as Cu,useCallback as wu,useContext as ot}from"react";var Os={root:"dd-1g-A9",fadein:"dd-McXxq",isClickable:"dd-CTG8E",isSelected:"dd-yhg27",actions:"dd-Nlm6p",actionsIsFixed:"dd-OK-kw",actionButton:"dd-zbXsQ",dropdownList:"dd-AvwWP",dropdownButton:"dd-piaJi",dropdownItem:"dd-qgkTO",dropdownItemButton:"dd-sTE2D",actionButtonIsPrimary:"dd-mhkWS",actionButtonIsDisabled:"dd-0eKLQ",labels:"dd-QKJu6",label:"dd-aMplE",buttonsContainer:"dd-uRYN4",button:"dd-9UE-x",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as ge,jsxs as Fi}from"react/jsx-runtime";var We=Cu(Os),Tu=o=>{var s=o,{fixed:t,children:e}=s,n=L(s,["fixed","children"]);let r=ot(We);return ge("div",x(g({},n),{className:dn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function Eu(a){var d=a,{as:t,className:e,icon:n,title:o,children:s,disabled:r}=d,i=L(d,["as","className","icon","title","children","disabled"]);let l=ot(We);return Fi(t||"button",x(g({type:"button",className:dn(l.button,{[l.buttonWithIcon]:n,[l.buttonDisabled]:r},e),title:o,"aria-label":o},i),{children:[n&&ge("span",{className:l.icon,children:n}),s]}))}var ku=({children:t})=>{let e=ot(We);return ge("div",{className:e.buttonsContainer,children:t})},Ru=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=ot(We);return Fi("div",{className:dn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,ge("ul",{className:r.dropdownList,children:s})]})},Iu=({index:t,label:e,onClick:n})=>{let o=ot(We);return ge("li",{className:o.dropdownItem,children:ge("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},Pu=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=ot(We);return ge("button",{type:"button",className:dn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:i=>i.stopPropagation(),disabled:n,"aria-hidden":n,children:s})},Lu=({labels:t})=>{let e=ot(We);return ge("div",{className:e.labels,children:t.map(n=>ge("span",{className:e.label,children:n},n))})},Ve=bu.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=L(d,["className","selected","onClick","children","as"]);let l=S("Suggestion",Os),c=wu(m=>{m.preventDefault(),n&&n(m)},[n]);return ge(s,x(g({},r),{ref:i,className:dn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:ge(We.Provider,{value:l,children:o})}))});Ve.Labels=Lu;Ve.Actions=Tu;Ve.ActionButton=Pu;Ve.DropdownButton=Ru;Ve.DropdownItem=Iu;Ve.ButtonsContainer=ku;Ve.Button=Eu;var A=Ve;import Au from"classnames";var Hi={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Nu}from"react/jsx-runtime";var Mu=({withDivider:t,children:e})=>{let n=S("SuggestionList",Hi);return Nu("div",{"data-testid":"suggestions-overlay-list",className:Au(n.root,{[n.isWithDivider]:t}),children:e})},te=Mu;import Ou from"classnames";var Bi={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as Ds}from"react/jsx-runtime";var Du=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=S("ToggleButton",Bi);return Ds("button",{type:"button",className:Ou(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:Ds("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Ds("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},At=Du;var Ki=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,oo=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Ui=/x-deepdesk-(([a-z0-9\-_])+-version)/,so=["cues","custom-data","custom-data-banner","knowledge-assist"],zi=Intl.DateTimeFormat().resolvedOptions().timeZone,st=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(st||{}),cn=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(cn||{});import{createRoot as Pt}from"react-dom/client";import{Fragment as Th}from"react";import{createSlice as _u}from"@reduxjs/toolkit";import{useSelector as Fu}from"react-redux";var ro=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(ro||{});var Hu={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,inlineSuggestions:!1,floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Wi=_u({name:"settings",initialState:Hu,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}}}),{set:io}=Wi.actions,pn=t=>e=>e.settings[t],E=t=>Fu(pn(t)),Vi=Wi.reducer;import{useSelector as $a}from"react-redux";import{createAsyncThunk as _s,createSlice as Bu}from"@reduxjs/toolkit";var Ku={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},X=t=>t.auth.isLoggedIn;var ji=t=>t.auth.verifyFetchState,$i=t=>t.auth.showLoginOverlay,Ae=_s("auth/validate",(t,e)=>v(void 0,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),qi=_s("auth/requestLogin",(n,o)=>v(void 0,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),un=_s("auth/verifyLoginToken",(n,o)=>v(void 0,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),Gi=Bu({name:"auth",initialState:Ku,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Ae.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ae.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Ae.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(un.pending,e=>{e.verifyFetchState="loading"}),t.addCase(un.rejected,e=>{e.verifyFetchState="error"}),t.addCase(un.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Mt,setShowLoginOverlay:Xi}=Gi.actions,Ji=Gi.reducer;import{createAction as Ks,createSelector as oa,createSlice as Ju}from"@reduxjs/toolkit";import{diffChars as Qu}from"diff";function Qi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function je(t,e,n=10){let o=typeof t,s=typeof e;if(n===0)throw new Error("Max depth deepEqual, possible circular references?");return o!==s?!1:t==null||o==="string"||o==="number"||o==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>je(r,e[i],n-1)):Qi(t)&&Qi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>je(t[i],e[i],n-1)):!1}function Uu(t){return Math.max(...t.map(e=>e.length))}function zu(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return x(g({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function Zi(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Uu(o);s++){let r=zu(o.map(a=>a[s]),e),i=o.filter(a=>!r.includes(a[s]));if(i.length>=e)o=i;else return{text:o[0].slice(0,s).join("").replace(/ (\?| |!|\.|,|\n)/g,"$1").trimEnd(),source:"mixed"}}}var Wu=2;function Yi(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=Zi(t,Wu);return n&&n.text!==e?n:t[0]}import{createAction as ju,createAsyncThunk as Nt,createSlice as $u}from"@reduxjs/toolkit";var Vu={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},w=Vu;var ea={current:null,isSupported:null},V=ju("resetConversation"),ta=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},xe=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},Ot=t=>t.conversation.isSupported,Fs=Nt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),ao=Nt("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),lo=Nt("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),co=Nt("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=xe(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),Hs=Nt("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId).catch(()=>null).then(o=>{if(!o)return n.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:a,metadata:d}=t;return n.updateConversation(o.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,metadata:d})})}),Bs=Nt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=xe(e.getState());if(!o)throw new Error("No current conversation to update messages");return n.postMessages(o,t.map(s=>g({},s)))}),qu=[ao.rejected,lo.rejected,co.rejected,Bs.rejected].map(t=>t==null?void 0:t.toString());function Gu(t){return qu.includes(t.type)}var Xu=$u({name:"conversation",initialState:ea,reducers:{},extraReducers:t=>{t.addCase(Fs.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(ao.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(lo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(Hs.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(co.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(V,()=>ea).addMatcher(Gu,(e,n)=>{var o;throw w.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),na=Xu.reducer;var rt={text:"",html:null,selection:{start:0,end:0},beforeInputChange:null,mixedSuggestion:null,textSuggestions:[],pinnedSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function Us(t){let{key:e,shiftKey:n,ctrlKey:o,metaKey:s,altKey:r}=t;return{key:e,shiftKey:n,ctrlKey:o,metaKey:s,altKey:r}}var po=Ks("input/replaceText"),uo=Ks("input/applyImageSuggestion"),Me=Ks("input/sendEvent"),sa=Ju({name:"input",initialState:rt,reducers:{setInput(t,e){var r,i;let{beforeInputChange:n}=t,{text:o,html:s}=e.payload;if(t.text=o,t.html=s!=null?s:null,o==="")t.metrics=rt.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:a,shiftKey:d,ctrlKey:l,metaKey:c,altKey:m}=n.keyDown;switch(a){case"Enter":d&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:p}=t,u=Qu(n.text,p);n.text.length-p.length>1&&t.metrics.deletions.push(...u.filter(y=>y.removed).map(y=>y.value)),t.metrics.numCharsDeleted+=n.text.length-p.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(l||c)break;default:if(!l&&!c&&!m){t.metrics.numCharsTyped+=1;let p=((r=n.selection)==null?void 0:r.start)!==void 0&&((i=n.selection)==null?void 0:i.end)!==void 0?n.text.substring(n.selection.start,n.selection.end):null;p&&p.length>0&&(t.metrics.numCharsDeleted+=p.length,t.metrics.deletions.push(p))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(je(t.selection,e.payload)||(t.selection=e.payload))},commitSuggestion(t,e){let n=e.payload,{text:o,suggestion:{source:s,abVariant:r,abTestName:i,trainingJobs:a,sourceText:d,searchTerm:l,assistantCode:c,text:m},eventMetrics:{inputType:p},replace:u}=n,y=s==="search"||s==="personal-collection-search",f=o.slice(t.text.substring(0,t.selection.start).length);(y||u==="selection")&&(f=o),n.suggestion.source==="search-overlay"&&(f=m),t.metrics.textSuggestions.push({text:f,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:p,sourceText:d,trainingJobs:a||[],searchTerm:y?t.text:l}),t.textSuggestions=[],t.selectedSuggestionIndex=-1},offeredTextSuggestion(t,e){let{text:n,suggestion:{source:o}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===n)||t.metrics.offeredTextSuggestions.push({text:n,source:o})},registerKeyDown(t,e){let{key:n}=e.payload;["Control","Meta","Shift","Alt"].includes(n)||(t.beforeInputChange={text:t.text,selection:t.selection,keyDown:e.payload})},registerKeyUp(t,e){},registerCut(t,e){let{metrics:n}=t,o=e.payload;t.metrics=x(g({},t.metrics),{numCharsCut:n.numCharsCut+o.length,cuts:[...n.cuts,o]})},registerPaste(t,e){let{metrics:n}=t,{text:o,selectionText:s}=e.payload,r=n.numCharsDeleted+(s!=null&&s.length?s.length:0),i=s!=null&&s.length?[...n.deletions,s]:n.deletions;t.metrics=x(g({},t.metrics),{numCharsDeleted:r,deletions:i,numCharsPasted:n.numCharsPasted+o.length,numPaste:n.numPaste+1,pastes:[...n.pastes,o]})},selectNextTextSuggestion(t){let e=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},selectPreviousTextSuggestion(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},selectTextSuggestionByIndex(t,e){t.selectedSuggestionIndex=e.payload},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.mixedSuggestion=null;return}let n=t.text.substring(0,t.selection.end),o=Yi(e.payload,n);t.mixedSuggestion=o!=null&&o.text.includes(n)?o:null},setPinnedSuggestions(t,e){t.pinnedSuggestions=e.payload},removePinnedSuggestions(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(o=>o.source!==e.payload.source||e.payload.assistantCode&&o.assistantCode!==e.payload.assistantCode?!0:e.payload.text?o.text!==e.payload.text:!1);let n=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex>n-1&&(t.selectedSuggestionIndex=-1)},setMetrics(t,{payload:e}){t.metrics=e},resetMetrics(t){t.metrics=rt.metrics}},extraReducers:t=>{t.addCase(V,e=>{e.mixedSuggestion=rt.mixedSuggestion,e.textSuggestions=rt.textSuggestions,e.selectedSuggestionIndex=rt.selectedSuggestionIndex,e.metrics=rt.metrics})}}),Dt=t=>t.input.text.substring(0,t.input.selection.end),Zu=t=>t.input.mixedSuggestion,Yu=t=>t.input.pinnedSuggestions,em=t=>t.input.textSuggestions,mn=t=>t.input.selectedSuggestionIndex,it=oa([em,Yu],(t,e)=>[...t,...e]),_t=oa([it,Zu,mn],(t,e,n)=>n>-1?t[n]:e),ra=t=>t.input.selection,{commitSuggestion:fe,offeredTextSuggestion:ia,registerCut:aa,registerKeyDown:la,registerKeyUp:da,registerPaste:ca,selectNextTextSuggestion:pa,selectPreviousTextSuggestion:ua,selectTextSuggestionByIndex:mo,setInput:go,setMetrics:ma,setPinnedSuggestions:fo,removePinnedSuggestions:at,setSelection:ho,setTextSuggestions:$e,resetMetrics:ga,sendMessage:lt}=sa.actions,fa=sa.reducer;import{createAsyncThunk as sm,createSelector as rm,createSlice as im}from"@reduxjs/toolkit";import{createAsyncThunk as zs,createSlice as tm}from"@reduxjs/toolkit";function ha(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var nm={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle"},Ft=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},ya=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},va=t=>{var e;return(e=t.info.customData)!=null?e:null},fn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&ha(t.visitorTimeZone)?t.visitorTimeZone:zi,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},om=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],gn=zs("info/setAgentInfo",(t,e)=>v(void 0,null,function*(){var r,i,a;let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=[];if(t.agentId&&t.skipSync!==!0&&s.push(n.postIdentity({externalId:t.agentId})),t.skipSync!==!0){let d=om.reduce((l,[c,m])=>!o[m]&&c in t?x(g({},l),{[m]:t[c]}):l,{});Object.keys(d).length>0&&s.push(n.patchMe(d).then(l=>o=l))}return s.length>0&&(yield Promise.all(s)),{agentId:t.agentId,agentName:t.agentName,agentNickname:(r=o.nickname)!=null?r:t.agentNickname,agentEmail:(i=o.email)!=null?i:t.agentEmail,agentDefaultLocale:(a=o.defaultLocale)!=null?a:t.agentDefaultLocale,agentTimeZone:t.agentTimeZone}})),Ws=zs("info/setAgentSettings",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=g(g({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),Vs=zs("info/getAgentSettings",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),xa=tm({name:"info",initialState:nm,reducers:{setVisitorInfo(t,e){t.visitorInfo=g(g({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload}},extraReducers:t=>{t.addCase(gn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=g(g({},e.agentInfo),n.meta.arg)}).addCase(gn.rejected,e=>{e.fetchState="error"}).addCase(gn.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(Ws.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(Vs.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(V,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Sa,setCustomData:ba,setPlatformVariables:Ca}=xa.actions,wa=xa.reducer;function ne(t,e){return e?Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var yo={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Ta=t=>t.search.isOpen,Ea=t=>t.search.page,js=t=>t.search.list,ka=t=>t.search.aggregates,am=rm([js,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),Ra=t=>e=>am(e,t),dt=sm("search/getAll",(t,e)=>v(void 0,null,function*(){var d;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(d=o.conversation.current)==null?void 0:d.profileCode,{platformVariables:r}=o.info;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:i,aggregates:a}=yield n.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:fn(o)});return{results:i.map(l=>x(g(g({},l),l.title&&r?{title:ne(l.title,r)}:{}),{text:ne(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),Ia=im({name:"search",initialState:yo,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=yo.fetchState,t.list=yo.list}},extraReducers:t=>{t.addCase(dt.pending,e=>{e.fetchState="loading"}).addCase(dt.rejected,(e,n)=>{e.fetchState="error",w.error(n.error)}).addCase(dt.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(V,()=>yo)}}),{resetSearch:vo,setIsOpen:de,setPage:Ne}=Ia.actions,Pa=Ia.reducer;var $s="SetOutputs",Ht="ShowLoginOverlay",hn="UserLoggedIn",lm="UserLoggedOut",Se="ApplySuggestion",qs="ApplyImageSuggestion",dm="ShowCommandPalette",yn="ReduxAction",cm="RemovePinnedSuggestion",pm=t=>({[$s]:e=>{t.dispatch(x(g({},e),{isBroadcasted:!0}))},[yn]:e=>{e.isBroadcasted||t.dispatch(x(g({},e),{isBroadcasted:!0}))},[cm]:e=>{t.dispatch(at(e))},[dm]:e=>{t.dispatch(de(e.isOpen)),e.page&&t.dispatch(Ne(e.page))},[Ht]:e=>{t.dispatch(Xi(e))},[hn]:()=>{t.dispatch(Ae())},[lm]:()=>{t.dispatch(Ae())},[qs]:e=>{t.dispatch(uo({suggestion:e.suggestion}))},[Se]:e=>{t.dispatch(fe(x(g({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),La=pm;import Aa,{useContext as um}from"react";import{jsx as mm}from"react/jsx-runtime";var Ma=Aa.createContext(null),qe=({broadcastEvents:t,children:e})=>{let n=Aa.useMemo(()=>t,[]);return mm(Ma.Provider,{value:n,children:e})},oe=()=>{let t=um(Ma);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import sr from"classnames";import{useCallback as Va,useEffect as Hm,useMemo as Bm,useState as rr}from"react";import{useDispatch as Km,useSelector as Um}from"react-redux";import{createContext as km,useContext as Rm}from"react";var Gs=function(t,e){return Gs=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,o){n.__proto__=o}||function(n,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(n[s]=o[s])},Gs(t,e)};function vn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Gs(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var ie=function(){return ie=Object.assign||function(e){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ie.apply(this,arguments)};function Na(t,e){var n={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,o=Object.getOwnPropertySymbols(t);s<o.length;s++)e.indexOf(o[s])<0&&Object.prototype.propertyIsEnumerable.call(t,o[s])&&(n[o[s]]=t[o[s]]);return n}function xo(t,e,n){if(n||arguments.length===2)for(var o=0,s=e.length,r;o<s;o++)(r||!(o in e))&&(r||(r=Array.prototype.slice.call(e,0,o)),r[o]=e[o]);return t.concat(r||Array.prototype.slice.call(e))}function So(t,e){var n=e&&e.cache?e.cache:Sm,o=e&&e.serializer?e.serializer:vm,s=e&&e.strategy?e.strategy:fm;return s(t,{cache:n,serializer:o})}function gm(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Oa(t,e,n,o){var s=gm(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function Da(t,e,n){var o=Array.prototype.slice.call(arguments,3),s=n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.apply(this,o),e.set(s,r)),r}function Xs(t,e,n,o,s){return n.bind(e,t,o,s)}function fm(t,e){var n=t.length===1?Oa:Da;return Xs(t,this,n,e.cache.create(),e.serializer)}function hm(t,e){return Xs(t,this,Da,e.cache.create(),e.serializer)}function ym(t,e){return Xs(t,this,Oa,e.cache.create(),e.serializer)}var vm=function(){return JSON.stringify(arguments)},xm=function(){function t(){this.cache=Object.create(null)}return t.prototype.get=function(e){return this.cache[e]},t.prototype.set=function(e,n){this.cache[e]=n},t}(),Sm={create:function(){return new xm}},bo={variadic:hm,monadic:ym};var Co;(function(t){t[t.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",t[t.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",t[t.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",t[t.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",t[t.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",t[t.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",t[t.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",t[t.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",t[t.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",t[t.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",t[t.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",t[t.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",t[t.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",t[t.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",t[t.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",t[t.INVALID_TAG=23]="INVALID_TAG",t[t.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",t[t.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",t[t.UNCLOSED_TAG=27]="UNCLOSED_TAG"})(Co||(Co={}));var wo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ce;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(ce||(ce={}));var To;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(To||(To={}));function Js(t){return t.type===ce.literal}function Qs(t){return t.type===ce.argument}function xn(t){return t.type===ce.number}function Sn(t){return t.type===ce.date}function bn(t){return t.type===ce.time}function Cn(t){return t.type===ce.select}function wn(t){return t.type===ce.plural}function _a(t){return t.type===ce.pound}function Tn(t){return t.type===ce.tag}function Eo(t){return!!(t&&typeof t=="object"&&t.type===To.number)}function En(t){return!!(t&&typeof t=="object"&&t.type===To.dateTime)}function Zs(t){t.forEach(function(e){if(delete e.location,Cn(e)||wn(e))for(var n in e.options)delete e.options[n].location,Zs(e.options[n].value);else xn(e)&&Eo(e.style)||(Sn(e)||bn(e))&&En(e.style)?delete e.style.location:Tn(e)&&Zs(e.children)})}function Fa(t,e){e===void 0&&(e={}),e=ie({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new wo(t,e).parse();if(n.err){var o=SyntaxError(Co[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||Zs(n.val),n.val}var ct;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(ct||(ct={}));var kn=function(t){vn(e,t);function e(n,o,s){var r=t.call(this,n)||this;return r.code=o,r.originalMessage=s,r}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error);var Ys=function(t){vn(e,t);function e(n,o,s,r){return t.call(this,'Invalid values for "'.concat(n,'": "').concat(o,'". Options are "').concat(Object.keys(s).join('", "'),'"'),ct.INVALID_VALUE,r)||this}return e}(kn);var Ha=function(t){vn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),ct.INVALID_VALUE,s)||this}return e}(kn);var Ba=function(t){vn(e,t);function e(n,o){return t.call(this,'The intl string context variable "'.concat(n,'" was not provided to the string "').concat(o,'"'),ct.MISSING_VALUE,o)||this}return e}(kn);var Z;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(Z||(Z={}));function bm(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==Z.literal||n.type!==Z.literal?e.push(n):o.value+=n.value,e},[])}function Cm(t){return typeof t=="function"}function Rn(t,e,n,o,s,r,i){if(t.length===1&&Js(t[0]))return[{type:Z.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(Js(c)){a.push({type:Z.literal,value:c.value});continue}if(_a(c)){typeof r=="number"&&a.push({type:Z.literal,value:n.getNumberFormat(e).format(r)});continue}var m=c.value;if(!(s&&m in s))throw new Ba(m,i);var p=s[m];if(Qs(c)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),a.push({type:typeof p=="string"?Z.literal:Z.object,value:p});continue}if(Sn(c)){var u=typeof c.style=="string"?o.date[c.style]:En(c.style)?c.style.parsedOptions:void 0;a.push({type:Z.literal,value:n.getDateTimeFormat(e,u).format(p)});continue}if(bn(c)){var u=typeof c.style=="string"?o.time[c.style]:En(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:Z.literal,value:n.getDateTimeFormat(e,u).format(p)});continue}if(xn(c)){var u=typeof c.style=="string"?o.number[c.style]:Eo(c.style)?c.style.parsedOptions:void 0;u&&u.scale&&(p=p*(u.scale||1)),a.push({type:Z.literal,value:n.getNumberFormat(e,u).format(p)});continue}if(Tn(c)){var y=c.children,f=c.value,h=s[f];if(!Cm(h))throw new Ha(f,"function",i);var C=Rn(y,e,n,o,s,r),T=h(C.map(function(N){return N.value}));Array.isArray(T)||(T=[T]),a.push.apply(a,T.map(function(N){return{type:typeof N=="string"?Z.literal:Z.object,value:N}}))}if(Cn(c)){var b=c.options[p]||c.options.other;if(!b)throw new Ys(c.value,p,Object.keys(c.options),i);a.push.apply(a,Rn(b.value,e,n,o,s));continue}if(wn(c)){var b=c.options["=".concat(p)];if(!b){if(!Intl.PluralRules)throw new kn(`Intl.PluralRules is not available in this environment.
1
+ var yi=Object.defineProperty,Pp=Object.defineProperties;var Lp=Object.getOwnPropertyDescriptors;var qn=Object.getOwnPropertySymbols;var vi=Object.prototype.hasOwnProperty,xi=Object.prototype.propertyIsEnumerable;var hi=(t,e,n)=>e in t?yi(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,f=(t,e)=>{for(var n in e||(e={}))vi.call(e,n)&&hi(t,n,e[n]);if(qn)for(var n of qn(e))xi.call(e,n)&&hi(t,n,e[n]);return t},x=(t,e)=>Pp(t,Lp(e));var P=(t,e)=>{var n={};for(var o in t)vi.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&qn)for(var o of qn(t))e.indexOf(o)<0&&xi.call(t,o)&&(n[o]=t[o]);return n};var Z=(t,e)=>{for(var n in e)yi(t,n,{get:e[n],enumerable:!0})};var v=(t,e,n)=>new Promise((o,s)=>{var r=d=>{try{l(n.next(d))}catch(a){s(a)}},i=d=>{try{l(n.throw(d))}catch(a){s(a)}},l=d=>d.done?o(d.value):Promise.resolve(d.value).then(r,i);l((n=n.apply(t,e)).next())});import bi from"classnames";import Dp,{createContext as _p,useContext as Es,useEffect as Fp,useState as Hp}from"react";import Ap,{useContext as Mp}from"react";import Np from"classnames";var en=Ap.createContext({});function S(t,e){let r=Mp(en),{debug:n}=r,s=P(r,["debug"])[t];return Object.entries(e).reduce((i,[l,d])=>{let a=s==null?void 0:s[l];return x(f({},i),{[l]:Np(d,a,n?`${t}__${l}`:!1)})},{})}var Si={root:"dd-4s9wq"};import{jsx as Gn,jsxs as Op}from"react/jsx-runtime";var Xn=()=>Op("svg",{className:Si.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Gn("defs",{children:Gn("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Gn("title",{children:"Failed loading image"}),Gn("path",{className:"cls-1",d:"M15 130.896V16.994c0-1.097.898-1.994 2.007-1.994h150.986A2 2 0 0 1 170 16.994v69.147L133.015 51 87.26 120.377l-35.863-17.758L15 130.896zM2 0C.895 0 0 .887 0 2v166c0 1.105.887 2 2 2h181c1.105 0 2-.887 2-2V2c0-1.105-.887-2-2-2H2zm49 72c11.046 0 20-9.178 20-20.5S62.046 31 51 31s-20 9.178-20 20.5S39.954 72 51 72z",fillRule:"evenodd"})]});var ws={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as Ct}from"react/jsx-runtime";var Jn=_p(ws),Bp=({title:t,src:e})=>{let n=Es(Jn),[o,s]=Hp(!1);return Fp(()=>{s(!1)},[e]),Ct("div",{className:n.imageWrapper,children:e&&!o?Ct("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Ct(Xn,{})})},Kp=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=Es(Jn);return Ct("div",{className:bi(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},Up=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=P(i,["as","cropText","className","children"]);let l=Es(Jn);return Dp.createElement(t,f({className:bi(l.title,n,{[l.contentIsCropped]:e})},s),o)},Zn=({children:t})=>{let e=S("Card",ws);return Ct("div",{className:e.root,children:Ct(Jn.Provider,{value:e,children:t})})};Zn.Image=Bp;Zn.Content=Kp;Zn.Title=Up;var O=Zn;import zp from"classnames";var Ci={root:"dd-llBx9"};import{jsx as jp}from"react/jsx-runtime";var Wp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Vp=o=>{var s=o,{className:t,keyCode:e}=s,n=P(s,["className","keyCode"]);let r=S("KeyboardHint",Ci);return jp("span",f({"data-key":Wp[e],className:zp(t,r.root)},n))},ks=Vp;import $p from"classnames";var Ti={root:"dd-e6HXZ"};import{jsx as Xp}from"react/jsx-runtime";var qp=o=>{var s=o,{className:t,children:e}=s,n=P(s,["className","children"]);let r=S("Label",Ti);return Xp("span",x(f({},n),{className:$p(t,r.root),children:e}))},Gp=qp;var wi={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Rs,jsxs as Zp}from"react/jsx-runtime";var Jp=s=>{var r=s,{title:t,children:e,type:n}=r,o=P(r,["title","children","type"]);let i=S("Section",wi);return Zp("section",x(f({},o),{className:i.root,"data-section-type":n,children:[t&&Rs("div",{className:i.subTitleContainer,children:Rs("span",{className:i.subtitle,children:t})}),Rs("div",{className:i.suggestions,children:e})]}))},Ie=Jp;import ou from"classnames";import{useRef as su}from"react";import{createContext as Qp,useCallback as Yp,useContext as eu,useEffect as tu}from"react";import{jsx as nu}from"react/jsx-runtime";var Ei=Qp(null),ki=({scrollContainerRef:t,children:e})=>{let n=Yp(o=>{let s=t.current;if(!s||s.scrollHeight<=s.clientHeight)return;let{top:r}=s.getBoundingClientRect(),{top:i}=o.getBoundingClientRect();"scrollTo"in s?s.scrollTo({top:i-r}):s.scrollTop=i-r},[]);return nu(Ei.Provider,{value:n,children:e})},Qn=t=>{let e=eu(Ei);tu(()=>{let n=t.current;n&&e(n)},[])};var Ri={root:"dd-uoTXh"};import{jsx as Ii}from"react/jsx-runtime";var ru=({className:t,children:e})=>{let n=S("SectionList",Ri),o=su(null);return Ii(ki,{scrollContainerRef:o,children:Ii("div",{ref:o,className:ou(n.root,t),children:e})})},tn=ru;import nn from"classnames";import iu,{createContext as au,useCallback as lu,useContext as Je}from"react";var Is={root:"dd-1g-A9",fadein:"dd-McXxq",isClickable:"dd-CTG8E",isSelected:"dd-yhg27",actions:"dd-Nlm6p",actionsIsFixed:"dd-OK-kw",actionButton:"dd-zbXsQ",dropdownList:"dd-AvwWP",dropdownButton:"dd-piaJi",dropdownItem:"dd-qgkTO",dropdownItemButton:"dd-sTE2D",actionButtonIsPrimary:"dd-mhkWS",actionButtonIsDisabled:"dd-0eKLQ",labels:"dd-QKJu6",label:"dd-aMplE",buttonsContainer:"dd-uRYN4",button:"dd-9UE-x",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as ce,jsxs as Pi}from"react/jsx-runtime";var He=au(Is),du=o=>{var s=o,{fixed:t,children:e}=s,n=P(s,["fixed","children"]);let r=Je(He);return ce("div",x(f({},n),{className:nn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function cu(l){var d=l,{as:t,className:e,icon:n,title:o,children:s,disabled:r}=d,i=P(d,["as","className","icon","title","children","disabled"]);let a=Je(He);return Pi(t||"button",x(f({type:"button",className:nn(a.button,{[a.buttonWithIcon]:n,[a.buttonDisabled]:r},e),title:o,"aria-label":o},i),{children:[n&&ce("span",{className:a.icon,children:n}),s]}))}var pu=({children:t})=>{let e=Je(He);return ce("div",{className:e.buttonsContainer,children:t})},uu=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=Je(He);return Pi("div",{className:nn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,ce("ul",{className:r.dropdownList,children:s})]})},mu=({index:t,label:e,onClick:n})=>{let o=Je(He);return ce("li",{className:o.dropdownItem,children:ce("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},gu=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=Je(He);return ce("button",{type:"button",className:nn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:i=>i.stopPropagation(),disabled:n,"aria-hidden":n,children:s})},fu=({labels:t})=>{let e=Je(He);return ce("div",{className:e.labels,children:t.map(n=>ce("span",{className:e.label,children:n},n))})},Be=iu.forwardRef((l,i)=>{var d=l,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=P(d,["className","selected","onClick","children","as"]);let a=S("Suggestion",Is),c=lu(m=>{m.preventDefault(),n&&n(m)},[n]);return ce(s,x(f({},r),{ref:i,className:nn(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!n}),onClick:c,children:ce(He.Provider,{value:a,children:o})}))});Be.Labels=fu;Be.Actions=du;Be.ActionButton=gu;Be.DropdownButton=uu;Be.DropdownItem=mu;Be.ButtonsContainer=pu;Be.Button=cu;var A=Be;import hu from"classnames";var Li={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as vu}from"react/jsx-runtime";var yu=({withDivider:t,children:e})=>{let n=S("SuggestionList",Li);return vu("div",{"data-testid":"suggestions-overlay-list",className:hu(n.root,{[n.isWithDivider]:t}),children:e})},te=yu;import xu from"classnames";var Ai={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as Ps}from"react/jsx-runtime";var Su=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=S("ToggleButton",Ai);return Ps("button",{type:"button",className:xu(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:Ps("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Ps("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},Tt=Su;var Mi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,Yn=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Ni=/x-deepdesk-(([a-z0-9\-_])+-version)/,eo=["cues","custom-data","custom-data-banner","knowledge-assist"],Oi=Intl.DateTimeFormat().resolvedOptions().timeZone,Ze=(g=>(g.SEARCH="search",g.TEMPLATE="template",g.ELASTIC_SEARCH="search-autocomplete",g.GPT="gpt",g.TRIE="trie",g.TRIE_WITH_TYPOS="trie-with-typos",g.SEMANTIC="semantic",g.TEXT_RECOMMENDATION="text_recommendation",g.URL_RECOMMENDATION="url_recommendation",g.LINK_RECOMMENDATION="link_recommendation",g.PERSONAL_COLLECTION="personal-collection",g.PERSONAL_COLLECTION_SEARCH="personal-collection-search",g.SEARCH_OVERLAY="search-overlay",g.SEARCH_PREVIEW="search-preview",g.SEARCH_URL="search-url",g))(Ze||{}),on=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(on||{});import{createRoot as St}from"react-dom/client";import{Fragment as wf}from"react";import{createSlice as bu}from"@reduxjs/toolkit";import{useSelector as Cu}from"react-redux";var to=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(to||{});var Tu={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,inlineSuggestions:!1,floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Di=bu({name:"settings",initialState:Tu,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}}}),{set:no}=Di.actions,sn=t=>e=>e.settings[t],T=t=>Cu(sn(t)),_i=Di.reducer;import{useSelector as Ha}from"react-redux";import{createAsyncThunk as Ls,createSlice as wu}from"@reduxjs/toolkit";var Eu={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},q=t=>t.auth.isLoggedIn;var Fi=t=>t.auth.verifyFetchState,Hi=t=>t.auth.showLoginOverlay,Pe=Ls("auth/validate",(t,e)=>v(void 0,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),Bi=Ls("auth/requestLogin",(n,o)=>v(void 0,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),rn=Ls("auth/verifyLoginToken",(n,o)=>v(void 0,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),Ki=wu({name:"auth",initialState:Eu,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Pe.pending,e=>{e.loginFetchState="loading"}),t.addCase(Pe.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Pe.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(rn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(rn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(rn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:wt,setShowLoginOverlay:Ui}=Ki.actions,zi=Ki.reducer;import{createAction as Os,createSelector as Xi,createSlice as Du}from"@reduxjs/toolkit";import{diffChars as _u}from"diff";function Wi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Ke(t,e,n=10){let o=typeof t,s=typeof e;if(n===0)throw new Error("Max depth deepEqual, possible circular references?");return o!==s?!1:t==null||o==="string"||o==="number"||o==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>Ke(r,e[i],n-1)):Wi(t)&&Wi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Ke(t[i],e[i],n-1)):!1}function ku(t){return Math.max(...t.map(e=>e.length))}function Ru(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return x(f({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function Vi(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<ku(o);s++){let r=Ru(o.map(l=>l[s]),e),i=o.filter(l=>!r.includes(l[s]));if(i.length>=e)o=i;else return{text:o[0].slice(0,s).join("").replace(/ (\?| |!|\.|,|\n)/g,"$1").trimEnd(),source:"mixed"}}}var Iu=2;function ji(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=Vi(t,Iu);return n&&n.text!==e?n:t[0]}import{createAction as Lu,createAsyncThunk as Et,createSlice as Au}from"@reduxjs/toolkit";var Pu={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},C=Pu;var $i={current:null,isSupported:null},W=Lu("resetConversation"),qi=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},ye=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},kt=t=>t.conversation.isSupported,As=Et("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),oo=Et("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),so=Et("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),ro=Et("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=ye(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),Ms=Et("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId).catch(()=>null).then(o=>{if(!o)return n.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:l,metadata:d}=t;return n.updateConversation(o.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:l,metadata:d})})}),Ns=Et("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=ye(e.getState());if(!o)throw new Error("No current conversation to update messages");return n.postMessages(o,t.map(s=>f({},s)))}),Mu=[oo.rejected,so.rejected,ro.rejected,Ns.rejected].map(t=>t==null?void 0:t.toString());function Nu(t){return Mu.includes(t.type)}var Ou=Au({name:"conversation",initialState:$i,reducers:{},extraReducers:t=>{t.addCase(As.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(oo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(so.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(Ms.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(ro.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(W,()=>$i).addMatcher(Nu,(e,n)=>{var o;throw C.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),Gi=Ou.reducer;var Qe={text:"",html:null,selection:{start:0,end:0},beforeInputChange:null,mixedSuggestion:null,textSuggestions:[],pinnedSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function Ds(t){let{key:e,shiftKey:n,ctrlKey:o,metaKey:s,altKey:r}=t;return{key:e,shiftKey:n,ctrlKey:o,metaKey:s,altKey:r}}var io=Os("input/replaceText"),ao=Os("input/applyImageSuggestion"),Ue=Os("input/sendEvent"),Ji=Du({name:"input",initialState:Qe,reducers:{setInput(t,e){var r,i;let{beforeInputChange:n}=t,{text:o,html:s}=e.payload;if(t.text=o,t.html=s!=null?s:null,o==="")t.metrics=Qe.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:l,shiftKey:d,ctrlKey:a,metaKey:c,altKey:m}=n.keyDown;switch(l){case"Enter":d&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:p}=t,u=_u(n.text,p);n.text.length-p.length>1&&t.metrics.deletions.push(...u.filter(y=>y.removed).map(y=>y.value)),t.metrics.numCharsDeleted+=n.text.length-p.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(a||c)break;default:if(!a&&!c&&!m){t.metrics.numCharsTyped+=1;let p=((r=n.selection)==null?void 0:r.start)!==void 0&&((i=n.selection)==null?void 0:i.end)!==void 0?n.text.substring(n.selection.start,n.selection.end):null;p&&p.length>0&&(t.metrics.numCharsDeleted+=p.length,t.metrics.deletions.push(p))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(Ke(t.selection,e.payload)||(t.selection=e.payload))},commitSuggestion(t,e){let n=e.payload,{text:o,suggestion:{source:s,abVariant:r,abTestName:i,trainingJobs:l,sourceText:d,searchTerm:a,assistantCode:c,text:m},eventMetrics:{inputType:p},replace:u}=n,y=s==="search"||s==="personal-collection-search",g=o.slice(t.text.substring(0,t.selection.start).length);(y||u==="selection")&&(g=o),n.suggestion.source==="search-overlay"&&(g=m),t.metrics.textSuggestions.push({text:g,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:p,sourceText:d,trainingJobs:l||[],searchTerm:y?t.text:a}),t.textSuggestions=[],t.selectedSuggestionIndex=-1},offeredTextSuggestion(t,e){let{text:n,suggestion:{source:o}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===n)||t.metrics.offeredTextSuggestions.push({text:n,source:o})},registerKeyDown(t,e){let{key:n}=e.payload;["Control","Meta","Shift","Alt"].includes(n)||(t.beforeInputChange={text:t.text,selection:t.selection,keyDown:e.payload})},registerKeyUp(t,e){},registerCut(t,e){let{metrics:n}=t,o=e.payload;t.metrics=x(f({},t.metrics),{numCharsCut:n.numCharsCut+o.length,cuts:[...n.cuts,o]})},registerPaste(t,e){let{metrics:n}=t,{text:o,selectionText:s}=e.payload,r=n.numCharsDeleted+(s!=null&&s.length?s.length:0),i=s!=null&&s.length?[...n.deletions,s]:n.deletions;t.metrics=x(f({},t.metrics),{numCharsDeleted:r,deletions:i,numCharsPasted:n.numCharsPasted+o.length,numPaste:n.numPaste+1,pastes:[...n.pastes,o]})},selectNextTextSuggestion(t){let e=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},selectPreviousTextSuggestion(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},selectTextSuggestionByIndex(t,e){t.selectedSuggestionIndex=e.payload},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.mixedSuggestion=null;return}let n=t.text.substring(0,t.selection.end),o=ji(e.payload,n);t.mixedSuggestion=o!=null&&o.text.includes(n)?o:null},setPinnedSuggestions(t,e){t.pinnedSuggestions=e.payload},removePinnedSuggestions(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(o=>o.source!==e.payload.source||e.payload.assistantCode&&o.assistantCode!==e.payload.assistantCode?!0:e.payload.text?o.text!==e.payload.text:!1);let n=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex>n-1&&(t.selectedSuggestionIndex=-1)},setMetrics(t,{payload:e}){t.metrics=e},resetMetrics(t){t.metrics=Qe.metrics}},extraReducers:t=>{t.addCase(W,e=>{e.mixedSuggestion=Qe.mixedSuggestion,e.textSuggestions=Qe.textSuggestions,e.selectedSuggestionIndex=Qe.selectedSuggestionIndex,e.metrics=Qe.metrics})}}),Rt=t=>t.input.text.substring(0,t.input.selection.end),Fu=t=>t.input.mixedSuggestion,Hu=t=>t.input.pinnedSuggestions,Bu=t=>t.input.textSuggestions,an=t=>t.input.selectedSuggestionIndex,Ye=Xi([Bu,Hu],(t,e)=>[...t,...e]),It=Xi([Ye,Fu,an],(t,e,n)=>n>-1?t[n]:e),Zi=t=>t.input.selection,{commitSuggestion:ue,offeredTextSuggestion:Qi,registerCut:Yi,registerKeyDown:ea,registerKeyUp:ta,registerPaste:na,selectNextTextSuggestion:oa,selectPreviousTextSuggestion:sa,selectTextSuggestionByIndex:lo,setInput:co,setMetrics:ra,setPinnedSuggestions:po,removePinnedSuggestions:et,setSelection:uo,setTextSuggestions:ze,resetMetrics:ia,sendMessage:tt}=Ji.actions,aa=Ji.reducer;import{createAsyncThunk as Wu,createSelector as Vu,createSlice as ju}from"@reduxjs/toolkit";import{createAsyncThunk as _s,createSlice as Ku}from"@reduxjs/toolkit";function la(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var Uu={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle"},Pt=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},da=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},ca=t=>{var e;return(e=t.info.customData)!=null?e:null},dn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&la(t.visitorTimeZone)?t.visitorTimeZone:Oi,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},zu=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],ln=_s("info/setAgentInfo",(t,e)=>v(void 0,null,function*(){var r,i,l;let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=[];if(t.agentId&&t.skipSync!==!0&&s.push(n.postIdentity({externalId:t.agentId})),t.skipSync!==!0){let d=zu.reduce((a,[c,m])=>!o[m]&&c in t?x(f({},a),{[m]:t[c]}):a,{});Object.keys(d).length>0&&s.push(n.patchMe(d).then(a=>o=a))}return s.length>0&&(yield Promise.all(s)),{agentId:t.agentId,agentName:t.agentName,agentNickname:(r=o.nickname)!=null?r:t.agentNickname,agentEmail:(i=o.email)!=null?i:t.agentEmail,agentDefaultLocale:(l=o.defaultLocale)!=null?l:t.agentDefaultLocale,agentTimeZone:t.agentTimeZone}})),Fs=_s("info/setAgentSettings",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=f(f({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),Hs=_s("info/getAgentSettings",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),pa=Ku({name:"info",initialState:Uu,reducers:{setVisitorInfo(t,e){t.visitorInfo=f(f({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload}},extraReducers:t=>{t.addCase(ln.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=f(f({},e.agentInfo),n.meta.arg)}).addCase(ln.rejected,e=>{e.fetchState="error"}).addCase(ln.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(Fs.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(Hs.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(W,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:ua,setCustomData:ma,setPlatformVariables:ga}=pa.actions,fa=pa.reducer;function ne(t,e){return e?Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var mo={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},ha=t=>t.search.isOpen,ya=t=>t.search.page,Bs=t=>t.search.list,va=t=>t.search.aggregates,$u=Vu([Bs,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),xa=t=>e=>$u(e,t),nt=Wu("search/getAll",(t,e)=>v(void 0,null,function*(){var d;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(d=o.conversation.current)==null?void 0:d.profileCode,{platformVariables:r}=o.info;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:i,aggregates:l}=yield n.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:dn(o)});return{results:i.map(a=>x(f(f({},a),a.title&&r?{title:ne(a.title,r)}:{}),{text:ne(a.text,r!=null?r:{}),source:`search-${a.type.toLowerCase()}`,searchTerm:t.query})),aggregates:l}})),Sa=ju({name:"search",initialState:mo,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=mo.fetchState,t.list=mo.list}},extraReducers:t=>{t.addCase(nt.pending,e=>{e.fetchState="loading"}).addCase(nt.rejected,(e,n)=>{e.fetchState="error",C.error(n.error)}).addCase(nt.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(W,()=>mo)}}),{resetSearch:go,setIsOpen:me,setPage:Lt}=Sa.actions,ba=Sa.reducer;var Ks="SetOutputs",At="ShowLoginOverlay",cn="UserLoggedIn",qu="UserLoggedOut",Le="ApplySuggestion",Us="ApplyImageSuggestion",Gu="ShowCommandPalette",pn="ReduxAction",Xu="RemovePinnedSuggestion",Ju=t=>({[Ks]:e=>{t.dispatch(x(f({},e),{isBroadcasted:!0}))},[pn]:e=>{e.isBroadcasted||t.dispatch(x(f({},e),{isBroadcasted:!0}))},[Xu]:e=>{t.dispatch(et(e))},[Gu]:e=>{t.dispatch(me(e.isOpen)),e.page&&t.dispatch(Lt(e.page))},[At]:e=>{t.dispatch(Ui(e))},[cn]:()=>{t.dispatch(Pe())},[qu]:()=>{t.dispatch(Pe())},[Us]:e=>{t.dispatch(ao({suggestion:e.suggestion}))},[Le]:e=>{t.dispatch(ue(x(f({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),Ca=Ju;import Ta,{useContext as Zu}from"react";import{jsx as Qu}from"react/jsx-runtime";var wa=Ta.createContext(null),We=({broadcastEvents:t,children:e})=>{let n=Ta.useMemo(()=>t,[]);return Qu(wa.Provider,{value:n,children:e})},oe=()=>{let t=Zu(wa);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import Qs from"classnames";import{useCallback as _a,useEffect as Tm,useMemo as wm,useState as Ys}from"react";import{useDispatch as Em,useSelector as km}from"react-redux";import{createContext as pm,useContext as um}from"react";var zs=function(t,e){return zs=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,o){n.__proto__=o}||function(n,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(n[s]=o[s])},zs(t,e)};function un(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");zs(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var re=function(){return re=Object.assign||function(e){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},re.apply(this,arguments)};function Ea(t,e){var n={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,o=Object.getOwnPropertySymbols(t);s<o.length;s++)e.indexOf(o[s])<0&&Object.prototype.propertyIsEnumerable.call(t,o[s])&&(n[o[s]]=t[o[s]]);return n}function fo(t,e,n){if(n||arguments.length===2)for(var o=0,s=e.length,r;o<s;o++)(r||!(o in e))&&(r||(r=Array.prototype.slice.call(e,0,o)),r[o]=e[o]);return t.concat(r||Array.prototype.slice.call(e))}function ho(t,e){var n=e&&e.cache?e.cache:rm,o=e&&e.serializer?e.serializer:om,s=e&&e.strategy?e.strategy:em;return s(t,{cache:n,serializer:o})}function Yu(t){return t==null||typeof t=="number"||typeof t=="boolean"}function ka(t,e,n,o){var s=Yu(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function Ra(t,e,n){var o=Array.prototype.slice.call(arguments,3),s=n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.apply(this,o),e.set(s,r)),r}function Ws(t,e,n,o,s){return n.bind(e,t,o,s)}function em(t,e){var n=t.length===1?ka:Ra;return Ws(t,this,n,e.cache.create(),e.serializer)}function tm(t,e){return Ws(t,this,Ra,e.cache.create(),e.serializer)}function nm(t,e){return Ws(t,this,ka,e.cache.create(),e.serializer)}var om=function(){return JSON.stringify(arguments)},sm=function(){function t(){this.cache=Object.create(null)}return t.prototype.get=function(e){return this.cache[e]},t.prototype.set=function(e,n){this.cache[e]=n},t}(),rm={create:function(){return new sm}},yo={variadic:tm,monadic:nm};var vo;(function(t){t[t.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",t[t.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",t[t.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",t[t.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",t[t.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",t[t.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",t[t.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",t[t.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",t[t.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",t[t.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",t[t.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",t[t.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",t[t.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",t[t.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",t[t.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",t[t.INVALID_TAG=23]="INVALID_TAG",t[t.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",t[t.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",t[t.UNCLOSED_TAG=27]="UNCLOSED_TAG"})(vo||(vo={}));var xo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var le;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(le||(le={}));var So;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(So||(So={}));function Vs(t){return t.type===le.literal}function js(t){return t.type===le.argument}function mn(t){return t.type===le.number}function gn(t){return t.type===le.date}function fn(t){return t.type===le.time}function hn(t){return t.type===le.select}function yn(t){return t.type===le.plural}function Ia(t){return t.type===le.pound}function vn(t){return t.type===le.tag}function bo(t){return!!(t&&typeof t=="object"&&t.type===So.number)}function xn(t){return!!(t&&typeof t=="object"&&t.type===So.dateTime)}function $s(t){t.forEach(function(e){if(delete e.location,hn(e)||yn(e))for(var n in e.options)delete e.options[n].location,$s(e.options[n].value);else mn(e)&&bo(e.style)||(gn(e)||fn(e))&&xn(e.style)?delete e.style.location:vn(e)&&$s(e.children)})}function Pa(t,e){e===void 0&&(e={}),e=re({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new xo(t,e).parse();if(n.err){var o=SyntaxError(vo[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||$s(n.val),n.val}var ot;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(ot||(ot={}));var Sn=function(t){un(e,t);function e(n,o,s){var r=t.call(this,n)||this;return r.code=o,r.originalMessage=s,r}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error);var qs=function(t){un(e,t);function e(n,o,s,r){return t.call(this,'Invalid values for "'.concat(n,'": "').concat(o,'". Options are "').concat(Object.keys(s).join('", "'),'"'),ot.INVALID_VALUE,r)||this}return e}(Sn);var La=function(t){un(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),ot.INVALID_VALUE,s)||this}return e}(Sn);var Aa=function(t){un(e,t);function e(n,o){return t.call(this,'The intl string context variable "'.concat(n,'" was not provided to the string "').concat(o,'"'),ot.MISSING_VALUE,o)||this}return e}(Sn);var Q;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(Q||(Q={}));function im(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==Q.literal||n.type!==Q.literal?e.push(n):o.value+=n.value,e},[])}function am(t){return typeof t=="function"}function bn(t,e,n,o,s,r,i){if(t.length===1&&Vs(t[0]))return[{type:Q.literal,value:t[0].value}];for(var l=[],d=0,a=t;d<a.length;d++){var c=a[d];if(Vs(c)){l.push({type:Q.literal,value:c.value});continue}if(Ia(c)){typeof r=="number"&&l.push({type:Q.literal,value:n.getNumberFormat(e).format(r)});continue}var m=c.value;if(!(s&&m in s))throw new Aa(m,i);var p=s[m];if(js(c)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),l.push({type:typeof p=="string"?Q.literal:Q.object,value:p});continue}if(gn(c)){var u=typeof c.style=="string"?o.date[c.style]:xn(c.style)?c.style.parsedOptions:void 0;l.push({type:Q.literal,value:n.getDateTimeFormat(e,u).format(p)});continue}if(fn(c)){var u=typeof c.style=="string"?o.time[c.style]:xn(c.style)?c.style.parsedOptions:o.time.medium;l.push({type:Q.literal,value:n.getDateTimeFormat(e,u).format(p)});continue}if(mn(c)){var u=typeof c.style=="string"?o.number[c.style]:bo(c.style)?c.style.parsedOptions:void 0;u&&u.scale&&(p=p*(u.scale||1)),l.push({type:Q.literal,value:n.getNumberFormat(e,u).format(p)});continue}if(vn(c)){var y=c.children,g=c.value,h=s[g];if(!am(h))throw new La(g,"function",i);var w=bn(y,e,n,o,s,r),E=h(w.map(function(N){return N.value}));Array.isArray(E)||(E=[E]),l.push.apply(l,E.map(function(N){return{type:typeof N=="string"?Q.literal:Q.object,value:N}}))}if(hn(c)){var b=c.options[p]||c.options.other;if(!b)throw new qs(c.value,p,Object.keys(c.options),i);l.push.apply(l,bn(b.value,e,n,o,s));continue}if(yn(c)){var b=c.options["=".concat(p)];if(!b){if(!Intl.PluralRules)throw new Sn(`Intl.PluralRules is not available in this environment.
2
2
  Try polyfilling it using "@formatjs/intl-pluralrules"
3
- `,ct.MISSING_INTL_API,i);var k=n.getPluralRules(e,{type:c.pluralType}).select(p-(c.offset||0));b=c.options[k]||c.options.other}if(!b)throw new Ys(c.value,p,Object.keys(c.options),i);a.push.apply(a,Rn(b.value,e,n,o,s,p-(c.offset||0)));continue}}return bm(a)}function wm(t,e){return e?ie(ie(ie({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=ie(ie({},t[o]),e[o]||{}),n},{})):t}function Tm(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=wm(t[o],e[o]),n},ie({},t)):t}function er(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function Em(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:So(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,xo([void 0],n,!1)))},{cache:er(t.number),strategy:bo.variadic}),getDateTimeFormat:So(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,xo([void 0],n,!1)))},{cache:er(t.dateTime),strategy:bo.variadic}),getPluralRules:So(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,xo([void 0],n,!1)))},{cache:er(t.pluralRules),strategy:bo.variadic})}}var tr=function(){function t(e,n,o,s){n===void 0&&(n=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(l){var c=r.formatToParts(l);if(c.length===1)return c[0].value;var m=c.reduce(function(p,u){return!p.length||u.type!==Z.literal||typeof p[p.length-1]!="string"?p.push(u.value):p[p.length-1]+=u.value,p},[]);return m.length<=1?m[0]||"":m},this.formatToParts=function(l){return Rn(r.ast,r.locales,r.formatters,r.formats,l,void 0,r.message)},this.resolvedOptions=function(){var l;return{locale:((l=r.resolvedLocale)===null||l===void 0?void 0:l.toString())||Intl.NumberFormat.supportedLocalesOf(r.locales)[0]}},this.getAst=function(){return r.ast},this.locales=n,this.resolvedLocale=t.resolveLocale(n),typeof e=="string"){if(this.message=e,!t.__parse)throw new TypeError("IntlMessageFormat.__parse must be set to process `message` of type `string`");var i=s||{},a=i.formatters,d=Na(i,["formatters"]);this.ast=t.__parse(e,ie(ie({},d),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=Tm(t.formats,o),this.formatters=s&&s.formatters||Em(this.formatterCache)}return Object.defineProperty(t,"defaultLocale",{get:function(){return t.memoizedDefaultLocale||(t.memoizedDefaultLocale=new Intl.NumberFormat().resolvedOptions().locale),t.memoizedDefaultLocale},enumerable:!1,configurable:!0}),t.memoizedDefaultLocale=null,t.resolveLocale=function(e){if(typeof Intl.Locale!="undefined"){var n=Intl.NumberFormat.supportedLocalesOf(e);return n.length>0?new Intl.Locale(n[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=Fa,t.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},t}();function Im(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var Pm="dummy",nr=km(null);function R(t){var o;let e=Rm(nr);if(!e)throw new Error("useTranslator() may be used only in the context of a <LocaleContext> component.");let n=(o=t[e])!=null?o:{};return(s,r)=>{let i=Im(n,s);return i?new tr(i).format(r):(e!==Pm&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{useEffect as Lm,useRef as Am}from"react";var Ka={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as Ua}from"react/jsx-runtime";var Mm=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=Am(null),l=S("Dialog",Ka),c=p=>{if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s();return}r&&r(p)},m=p=>{p.target===d.current&&t&&o()};return Lm(()=>{var p,u;!d.current||!t||!e||(u=(p=d.current)==null?void 0:p.querySelector("input, textarea"))==null||u.focus()},[t,e,d]),t?Ua("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:m,children:Ua("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},ko=Mm;import Nm from"classnames";var za={root:"dd-ranhW"};import{jsx as Dm}from"react/jsx-runtime";var Om=o=>{var s=o,{className:t,value:e}=s,n=L(s,["className","value"]);let r=S("TextInput",za);return Dm("input",g({className:Nm(t,r.root),type:"text",value:e},n))},In=Om;var or={};G(or,{enUS:()=>_m,nlNL:()=>Fm});var _m={back:[{type:0,value:"Back"}],promptTitle:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Paste the code from your email"}],verifyCodeBody:[{type:0,value:"Copy the code from the email you just received and paste it here."}],verifyCodeInputPlaceholder:[{type:0,value:"Paste link or code here"}],verifyCodeSubmitLabel:[{type:0,value:"Sign in"}],verifyCodeError:[{type:0,value:"Sign in failed. The code is probably no longer valid. Please "},{type:8,value:"login",children:[{type:0,value:"request new code"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Have a code sent to your email"}],requestCodeBody:[{type:0,value:"Enter your email and request a code. If you are an existing "},{type:1,value:"productName"},{type:0,value:" user you will receive an email with a code. If you are a new user you will receive an email asking to request access to "},{type:1,value:"productName"},{type:0,value:" first."}],requestCodeInputPlaceholder:[{type:0,value:"Enter your email"}],requestCodeSubmitLabel:[{type:0,value:"Request code"}]},Fm={back:[{type:0,value:"Terug"}],promptTitle:[{type:0,value:"Login bij "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Plak de code uit je email"}],verifyCodeBody:[{type:0,value:"Kopieer de code uit de email en plak deze hier."}],verifyCodeInputPlaceholder:[{type:0,value:"Plak hier de code"}],verifyCodeSubmitLabel:[{type:0,value:"Inloggen"}],verifyCodeError:[{type:0,value:"Inloggen is niet gelukt. De code is waarschijnlijk niet meer geldig. "},{type:8,value:"login",children:[{type:0,value:"Vraag een nieuwe code aan"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Verstuur een login code naar je email"}],requestCodeBody:[{type:0,value:"Voer je e-mailadres in en krijg een login code. Als je een bestaande "},{type:1,value:"productName"},{type:0,value:" gebruiker bent krijg je een email met een code. Als je een nieuwe gebruiker bent wordt er een email verstuurd met een toegangsverzoek voor "},{type:1,value:"productName"},{type:0,value:"."}],requestCodeInputPlaceholder:[{type:0,value:"Typ hier je e-mailadres"}],requestCodeSubmitLabel:[{type:0,value:"Code aanvragen"}]};var Wa={root:"dd-lWxnE",anchorButton:"dd-TZ4in",errorMessage:"dd-fIsPg",title:"dd-pGhJx",subtitle:"dd-f5l29",text:"dd-iamoD",input:"dd-uhQZ3",actions:"dd-lubvx",button:"dd-CJsNI",primaryButton:"dd-MWBfl"};import{jsx as se,jsxs as Ro}from"react/jsx-runtime";var zm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},Wm=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=R(or),i=S("LoginTokenDialog",Wa),a=Um(ji),d=Km(),l=E("productName"),[c,m]=rr(t||""),[p,u]=rr(0),[y,f]=rr(""),h=Va(k=>v(void 0,null,function*(){k.preventDefault(),d(qi({email:c})),u(1)}),[n,c]),C=()=>{f(""),u(0)},T=Va(k=>v(void 0,null,function*(){k.preventDefault();let N=zm(k.target.elements.token.value);if(!N){f(r("verifyCodeError",{login:b}));return}d(un({token:N}))}),[n]),b=Bm(()=>k=>se("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:C,children:k},"back-button"),[]);return Hm(()=>{a==="error"&&f(r("verifyCodeError",{login:b})),a==="done"&&o()},[a]),se(ko,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:Ro("div",{className:i.root,children:[se("h1",{className:i.title,children:r("promptTitle",{productName:l})}),p===0&&Ro("form",{onSubmit:h,children:[se("h2",{className:i.subtitle,children:r("requestCodeTitle")}),se("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),se(In,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:k=>m(k.target.value)}),se("div",{className:i.actions,children:se("button",{type:"submit",className:sr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),p===1&&Ro("form",{onSubmit:T,children:[se("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),se("p",{className:i.text,children:r("verifyCodeBody")}),se(In,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),y&&se("div",{className:i.errorMessage,children:y}),Ro("div",{className:i.actions,children:[se("button",{type:"button",className:sr(i.button),onClick:C,children:r("back")}),se("button",{type:"submit",className:sr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},ja=Wm;import{jsx as jm}from"react/jsx-runtime";var Vm=()=>{let t=$a($i),e=$a(Ft),n=E("adminUrl"),o=oe(),s=()=>o.send(Ht,!1),r=()=>{o.send(Ht,!1),o.send(hn)};return jm(ja,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},qa=Vm;import fh from"lodash.debounce";import{Fragment as hh,useCallback as fd,useEffect as hd,useMemo as yh,useState as qo}from"react";import{useDispatch as vh,useSelector as Be}from"react-redux";import{createAction as Ja,createAsyncThunk as Io,createSlice as qm}from"@reduxjs/toolkit";import{Marked as $m}from"marked";var Ga=(t,e)=>{let n=[],o=new $m,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var Pn="__summarizerAssistant__",Xa={cues:[],threads:{},pending:[]},Qa=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var Ln=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Po=Ja("assistants/callToAction"),Oe=Io("assistants/evaluateSummaryAssistant",(t,e)=>v(void 0,null,function*(){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(g({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 w.warn("Unexpected summary output",r),new Error("Unexpected summary output");return{output:r.payload.output,evaluationId:r.payload.evaluationId}})),Gm=1,pt=Io("assistants/evaluateKnowledgeAssistantLegacy",(t,e)=>v(void 0,null,function*(){var u,y,f,h;let{threadId:n}=t,{onNewThreadId:o,input:s}=t,{deepdeskAPI:r}=e.extra,i=e.getState(),{platformVariables:a}=i.info;n||(n=Gm++,o&&o(n));let d=(u=Ln(n)(i))!=null?u:[],l=yield r.getKnowledgeAssistant(t.assistantCode),c=(y=i.conversation.current)==null?void 0:y.externalId,m=(h=(f=i.info)==null?void 0:f.agentInfo)==null?void 0:h.agentId;if(!l)throw new Error("KnowledgeAssistant is not found");let p=yield r.knowledgeAssist({customerInstruction:l.customerInstruction,doNotKnowAnswer:l.doNotKnowAnswer,question:s},d,l.code,{agentId:m,conversationId:c});return a&&(p.answer=ne(p.answer,a)),{threadId:n,question:s,answer:p,evaluationId:"??"}})),ut=Io("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 a=yield e.dispatch(he(x(g({expectFormat:"json-schema:knowledge-assist",skipState:!0},t),{input:{},threadId:n})));if(a.error)throw new Error(a.error.message);let d=a.payload.output;return{threadId:n,question:t.input,evaluationId:a.payload.evaluationId,answer:{answer:ne(d.response,i!=null?i:{}),sources:d.sources}}})),Yw=Ja("assistants/extractedTextSuggestions"),he=Io("assistants/evaluate",(t,e)=>v(void 0,null,function*(){var u;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},expectFormat:i,threadId:a}=t,d=e.getState(),{platformVariables:l}=d.info,c=(u=d.conversation.current)==null?void 0:u.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 p=yield n.evaluateAssistant(t.assistantCode,{expectFormat:i,input:r,transcript:m,externalConversationId:c,threadId:a});if(p.evaluationStatus!=="success")throw new Error(`Assistant ${t.assistantCode} evaluation failed: ${p.evaluationStatus}`);switch(i){case"text":return{evaluationId:p.evaluationId,output:ne(p.output,l)};case"json-schema:cues":{if(!Array.isArray(p.output))return x(g({},p),{output:[]});let y=p.output.map(h=>x(g({},h),{name:ne(h.name,l),response:ne(h.response,l)})),f=[];return y.forEach(h=>{let C=Ga(h.response,"reply");f.push(...C.map(T=>({text:T,type:"text",source:"assistant",assistantCode:h.code,sourceLabel:h.name})))}),f.length>0&&e.dispatch(fo(f)),x(g({},p),{output:y})}case"json-schema:knowledge-assist":{let y=p.output;if(p.output==="")throw new Error("No output from assistant");return{output:y,evaluationId:p.evaluationId,answer:ne(y.response,l)}}default:return p}})),Za=qm({name:"assistants",initialState:Xa,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(a=>a.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:a}=i;t.cues=[...n,{code:o,name:s,evaluationId:r,response:i.message,editable:i.editableMessage,callToAction:a&&{label:a.displayName,event:a.onClickEvent,value:a.eventPayload}}]}},extraReducers:t=>{t.addCase(he.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&w.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(he.rejected,(e,n)=>{var s;w.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(l=>l.code),a=e.cues.filter(l=>!i.includes(l.code)),d=r.map(l=>x(g({},l),{evaluationId:s}));e.cues=[...a,...d];break}}}).addCase(ut.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=L(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(pt.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=L(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(Oe.pending,e=>{let n={code:Pn,name:"Summary",response:"",isLoading:!0,evaluationId:""},o=e.cues.filter(s=>s.code!==Pn);e.cues=[...o,n]}).addCase(Oe.rejected,e=>{let n=e.cues.filter(o=>o.code!==Pn);e.cues=n}).addCase(Oe.fulfilled,(e,n)=>{let o={code:Pn,name:"Summary",response:n.payload.output,specialType:"summary",evaluationId:n.payload.evaluationId},s=e.cues.filter(r=>r.code!==Pn);e.cues=[...s,o]}).addCase(V,()=>Xa)}}),{removeCueByCode:Lo,resetCues:eT,removeThreadById:Bt,receiveChunk:Ya,userNotification:el}=Za.actions,tl=Za.reducer;import{createAsyncThunk as Xm,createSlice as Jm}from"@reduxjs/toolkit";var Qm={data:null,fetchState:"idle"},nl=t=>t.contentTypes.data,An=Xm("contentTypes/getContentTypes",(t,e)=>v(void 0,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),Zm=Jm({name:"contentTypes",initialState:Qm,reducers:{},extraReducers:t=>{t.addCase(An.pending,e=>{e.fetchState="loading"}).addCase(An.rejected,e=>{e.fetchState="error"}).addCase(An.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),ol=Zm.reducer;import{createAsyncThunk as Ym,createSelector as eg,createSlice as tg}from"@reduxjs/toolkit";var ng={data:null,fetchState:"idle"},og=[],mt=t=>t.profile.data,sg=t=>t.profile.data?t.profile.data.uiConfig.widget.types:og,Nn=eg([sg],t=>t.filter(e=>e.isActive)),sl=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.summarizerAssistantNew)!=null?n:null},rl=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||[]},il=t=>e=>Nn(e).find(n=>n.type===t),al=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Ao=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistantNew)!=null?n:null},Mo=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistant)!=null?n:null},Mn=Ym("profile/getProfile",(t,e)=>v(void 0,null,function*(){var r;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=o.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=o.profile.data)==null?void 0:r.code)===s.profileCode?o.profile.data:n.getProfile(s.profileCode)})),rg=tg({name:"profile",initialState:ng,reducers:{},extraReducers:t=>{t.addCase(Mn.pending,e=>{e.fetchState="loading"}).addCase(Mn.rejected,e=>{e.fetchState="error"}).addCase(Mn.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),ll=rg.reducer;function be(t){let e=document.createElement("textarea");e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),e.remove()}import{useEffect as Ll,useState as Gg,useRef as Xg,useCallback as Jg}from"react";import{useState as lg}from"react";import ir from"classnames";var ae={root:"dd-U2SX4",list:"dd-cYTlj",listWrapper:"dd-GLQFR",listHorizontal:"dd-x-knl",page:"dd-1F4vk",search:"dd-nvbxc",pageNav:"dd-sRUuT",pageTitle:"dd-t-MKS",pageBackButton:"dd-cjptm",listHeader:"dd-Fg666",listHeading:"dd-w-xhJ",listMoreButton:"dd--mKep",listItem:"dd-wpvuA",listItemContent:"dd-V-mKo",listItemText:"dd-ukCHL",listItemDescription:"dd-sSyu4",listItemActions:"dd-xelho",listItemTooltip:"dd-SWFsE",listItemTooltipContent:"dd-I7J9N",truncate:"dd-IlopJ",lineClamp:"dd-Twaca",listItemTitle:"dd-lMGHq",listItemAction:"dd-xPLAs",listItemSelected:"dd-jFX0Y",sources:"dd-pZx4v",sourcesTitle:"dd-phYVd",source:"dd-DaR6h",sourceShowMore:"dd-M1-8j",icon:"dd-m6yxD",searchIcon:"dd-0AU-O",searchInputWrapper:"dd-DUFcE",searchInput:"dd-ukrlD",select:"dd--Tifv",selectType:"dd-IkZb2",selectWrapper:"dd-J14mx",image:"dd-RQgsB",imageSrc:"dd-jxh8F",imageSrcHidden:"dd-e20Jk",imageSrcStatus:"dd-j50Tt",imageTitle:"dd-qCjfW",actions:"dd-3mfWc",actionsWrapper:"dd-TjDyI",actionsBar:"dd-LiA35",actionButton:"dd-4wk0u",hasShortKeys:"dd-XilV-",actionShortcut:"dd-s4Mla",actionShortcutFixKerning:"dd-lyh5e"};var De={};G(De,{enUS:()=>ig,nlNL:()=>ag});var ig={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}],sources:[{type:0,value:"Sources"}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},ag={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}],sources:[{type:0,value:"Bronnen"}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};import{jsx as On,jsxs as cg}from"react/jsx-runtime";var dg=({src:t,title:e})=>{let n=S("CommandPalette",ae),[o,s]=lg("loading"),r=R(De);return cg("div",{className:n.image,children:[On("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:ir(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&On("span",{className:ir(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&On("span",{className:ir(n.imageSrc,n.imageSrcStatus),children:On(Yn,{})}),e&&On("span",{className:n.imageTitle,children:e})]})},dl=dg;import pg from"react";import ug from"classnames";import{jsx as ar,jsxs as cl}from"react/jsx-runtime";function lr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=R(De),i=S("CommandPalette",ae);return pg.Children.count(t)===0?null:cl("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&cl("div",{className:i.listHeader,children:[e&&ar("h4",{className:i.listHeading,children:e}),o&&s&&ar("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),ar("div",{className:ug(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import Do from"classnames";import{Interweave as xl}from"interweave";import{useEffect as Hg,useMemo as Sl,useState as bl}from"react";var mg=/[.*+?^${}()|[\]\\]/g,gg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function fg(t){return t.replace(mg,"\\$&")}function hg(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function yg(t){return t.search(gg)}function pl(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${fg(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function ul(t){return t.replace(oo,'<mark data-type="placeholder">$1</mark>')}function Dn(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function vg(t,e){return t.split("").map((i,a)=>({char:i,index:a})).filter(({char:i,index:a})=>/\s/.test(i)&&a<=e).map(({index:i})=>i).reverse()[0]}function dr(t,e,n={}){if(e){let o=hg(e.toLowerCase(),t.toLowerCase()),s=Dn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=yg(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(Ki).length>3||e.length>30?vg(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Dn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var xg=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function No(t){return xg.test(t)}function cr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import pr from"react";import{jsx as Sg}from"react/jsx-runtime";var ml=pr.createContext(void 0);function Ge(){let t=pr.useContext(ml);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var gl=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=pr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return Sg(ml.Provider,{value:i,children:t})};import*as Ce from"react";import{useFloating as bg,autoUpdate as Cg,useClick as wg,useDismiss as Tg,useRole as Eg,useInteractions as kg,useMergeRefs as hl,FloatingPortal as Rg,FloatingFocusManager as Ig,useHover as Pg,offset as Lg,flip as Ag,shift as Mg,safePolygon as Ng}from"@floating-ui/react";var Oo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as Xe,jsxs as fl}from"react/jsx-runtime";function Og({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Ce.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=bg({placement:e,open:d,onOpenChange:l,whileElementsMounted:Cg,middleware:[Lg(5),Ag({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Mg({padding:10})]}),m=c.context,p=wg(m,{enabled:s==null}),u=Tg(m),y=Eg(m),f=Pg(m,{enabled:o!=null?o:!1,handleClose:Ng()}),h=kg([p,u,y,f]);return Ce.useMemo(()=>x(g(g({open:d,setOpen:l},h),c),{modal:n}),[d,l,h,c,n])}var yl=Ce.createContext(null),ur=()=>{let t=Ce.useContext(yl);if(t==null)throw new Error("Popover components must be wrapped in <Popover />");return t},gt=o=>{var s=o,{children:t,modal:e=!1}=s,n=L(s,["children","modal"]);let r=Og(g({modal:e},n));return Xe(yl.Provider,{value:r,children:t})};function Dg(o){var s=o,{as:t,children:e}=s,n=L(s,["as","children"]);let r=ur(),i=t||"button",a=e.ref,d=hl([r.refs.setReference,a]);return Xe(i,x(g({ref:d,type:"button"},r.getReferenceProps(n)),{children:e}))}var _g=Ce.forwardRef(function(s,o){var r=s,{style:e}=r,n=L(r,["style"]);let l=ur(),{context:i}=l,a=L(l,["context"]),d=hl([a.refs.setFloating,o]);return i.open?Xe(Rg,{children:Xe(Ig,{context:i,modal:a.modal,disabled:n.disableFocusManager,children:Xe("div",x(g({ref:d,style:g(x(g({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function Fg(s){var r=s,{as:t,children:e,onClick:n}=r,o=L(r,["as","children","onClick"]);let{setOpen:i}=ur();return Xe(t||"button",x(g({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function vl({trigger:t,children:e,placement:n="top"}){return fl(gt,{tooltip:!0,placement:n,children:[fl(gt.Content,{className:Oo.tooltip,children:[e,Xe("div",{className:Oo.arrow})]}),Xe(gt.Trigger,{className:Oo.tooltipTrigger,children:t})]})}gt.Trigger=Dg;gt.Content=_g;gt.Button=Fg;var q=gt;import{jsx as _e,jsxs as _o}from"react/jsx-runtime";var Bg=3,Kg=90,Cl=({children:t})=>{let e=S("CommandPalette",ae);return _e("div",{className:e.listItemActions,children:t})};function mr(u){var y=u,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:m=Bg}=y,p=L(y,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var re;let f=R(De),[h,C]=bl(!1),{selected:T,onChangeOpen:b}=Ge(),[k,N]=bl(!1),O=S("CommandPalette",ae);function _(M){s(M),t&&b(!1)}let z=Sl(()=>typeof a!="string"?a:No(a)?cr(a).trim():a,[a]),Pe=Sl(()=>typeof n!="string"?n:No(n)?cr(n).trim():n,[n]);return Hg(()=>{N(T===l)},[T]),_o("div",{className:Do(O.listItem,l===T&&O.listItemSelected),children:[_o(q,{placement:"right-start",tooltip:!0,onOpenChange:N,open:k,children:[_e(q.Trigger,x(g({className:O.listItemAction,"aria-disabled":(re=p.disabled)!=null?re:!1,onClick:_,"data-command-palette-item":!0,"data-item-id":l},p),{children:_o("div",{className:O.listItemContent,children:[typeof o=="string"?_e("p",{className:Do(O.listItemText,O.truncate,c==null?void 0:c.title),children:o}):o,z&&typeof z=="string"?_e(xl,{tagName:"p",allowList:[],content:z,className:Do(O.listItemDescription,c==null?void 0:c.description,e?O.lineClamp:O.truncate)}):a]})})),Pe&&Pe.length>Kg&&_e(q.Content,{className:O.listItemTooltip,disableFocusManager:!0,children:_e(xl,{className:O.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:Pe.replace(/\n/g,"<br />")})})]}),l===T&&r,d&&d.length>0&&_o("div",{className:O.sources,children:[_e("span",{className:O.sourcesTitle,children:f("sources")}),d.slice(0,h?d.length:m).map(M=>_e("a",{className:O.source,href:M.url,target:"_blank",title:M.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(M),children:M.name},M.url)),!h&&d.length>m&&_e("button",{className:Do(O.source,O.sourceShowMore),type:"button",onClick:()=>C(!0),children:f("showMore",{amount:d.length-m})})]})]})}import{jsx as wl,jsxs as Ug}from"react/jsx-runtime";var Tl=()=>Ug("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[wl("title",{id:"angleLeftTitle",children:"AngleLeft"}),wl("path",{d:"M192 448c-8.188 0-16.38-3.125-22.62-9.375l-160-160c-12.5-12.5-12.5-32.75 0-45.25l160-160c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l137.4 137.4c12.5 12.5 12.5 32.75 0 45.25C208.4 444.9 200.2 448 192 448z"})]});import{jsx as El,jsxs as gr}from"react/jsx-runtime";function fr({children:t,title:e,id:n,onDismiss:o}){let s=R(De),r=S("CommandPalette",ae),{page:i}=Ge();return i!==n?null:gr("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&gr("div",{className:r.pageNav,children:[gr("button",{className:r.pageBackButton,type:"button",onClick:o,children:[El(Tl,{}),s("back")]}),e&&El("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Wg}from"react";import{jsx as kl,jsxs as zg}from"react/jsx-runtime";var Kt=()=>zg("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[kl("path",{d:"M0 0h24v24H0z",fill:"none"}),kl("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})]});import{jsx as Ut,jsxs as hr}from"react/jsx-runtime";function Vg({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=S("CommandPalette",ae);return hr("div",{className:d.search,children:[Ut("div",{className:d.searchIcon,children:Ut(Kt,{})}),hr("div",{className:d.searchInputWrapper,children:[Ut("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:l=>{t(l.currentTarget.value)},onFocus:l=>{l.currentTarget.select()},className:d.searchInput,placeholder:n,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&Ut("div",{className:d.selectWrapper,children:hr("select",{"data-testid":"command-palette-type-select",className:d.select,onChange:l=>e(l.target.value===o?void 0:l.target.value),value:i||o,children:[o&&Ut("option",{children:o}),s.map(l=>Ut("option",{value:l.value,children:l.label},l.value))]})})]})]})}var Rl=Wg(Vg);import Il from"classnames";import{jsx as $g,jsxs as qg}from"react/jsx-runtime";var jg=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=L(r,["onClick","shortKeys","children"]);let i=S("CommandPalette",ae);return qg("button",x(g({type:"button"},o),{onClick:t,className:Il(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>$g("span",{className:Il(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Pl=jg;import{jsx as Al,jsxs as Zg}from"react/jsx-runtime";var Qg="[data-command-palette-item]";function ft({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:n="search",page:o,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:d,types:l,children:c,isOpen:m,search:p,updateDeps:u=[]}){let[y,f]=Gg(),h=Xg(null),C=()=>{s&&s(n),i(void 0),r(""),a(!1)},T=()=>{var M;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(M=h.current)==null||M.focus();return}if(p.length>0){r("");return}a(!1)},b=()=>{let M=k();M.length!==0&&f(M[0].dataset.itemId)},k=()=>Array.from(document.querySelectorAll(Qg)||[]),N=M=>document.querySelector(`[data-item-id=${M}]`),O=M=>{let $=N(M);$&&f($.dataset.itemId)},_=M=>{let $=N(M);$&&$.scrollIntoView({behavior:"smooth"})},z=()=>{if(!y)return;let M=k(),$=N(y);if(!$)return;let tt=M.indexOf($),me=M[tt+1];me!=null&&me.dataset.itemId?O(me.dataset.itemId):b()},Pe=()=>{if(!y)return;let M=k(),$=N(y);if(!$)return;let tt=M.indexOf($),me=M[tt-1];me!=null&&me.dataset.itemId?O(me.dataset.itemId):O(M[M.length-1].dataset.itemId)},re=Jg(M=>{switch(M.key){case"ArrowDown":{M.preventDefault(),z();break}case"ArrowUp":{M.preventDefault(),Pe();break}case"Enter":{if(y){let $=N(y);$==null||$.click()}break}}},[y]);return Ll(()=>{b()},[p,o,d,m,...u]),Ll(()=>{y&&_(y)},[y]),Al(ko,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:m,onBack:T,onClose:C,onKeyDown:re,children:Zg(gl,{selected:y,setSelected:f,isOpen:m,onChangeOpen:a,page:o,children:[o===n&&Al(Rl,{ref:h,onChange:r,onChangeType:i,placeholder:t,value:p,selectedType:d,types:l,typePlaceholder:e}),c]})})}ft.Page=fr;ft.List=lr;ft.Image=dl;ft.ListItem=mr;ft.ListItemActions=Cl;ft.Button=Pl;var K=ft;import{useEffect as Yg}from"react";function Ml(t,e){Yg(()=>{let n=o=>{var s;((s=navigator==null?void 0:navigator.platform)!=null&&s.toLowerCase().includes("mac")?o.metaKey:o.ctrlKey)&&o.key===t&&(o.preventDefault(),o.stopPropagation(),e())};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}},[])}import{useEffect as _l,useRef as df}from"react";import{useSelector as cf,useDispatch as pf}from"react-redux";import{createAsyncThunk as ef,createSelector as tf,createSlice as nf}from"@reduxjs/toolkit";var Nl={data:null,fetchState:"idle"},of=t=>{var e;return(e=t.entities.data)!=null?e:null},Fo=tf([of,Ft,ya],(t,e,n)=>{var a;let o=[],{visitorName:s}=n!=null?n:{},{agentName:r,agentNickname:i}=e!=null?e:{};return r&&r!==s&&o.push(r),i&&i!==s&&o.push(i),(a=t==null?void 0:t.filter(d=>!o.includes(d.text)))!=null?a:null}),ye=ef("entities/getEntities",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra;if(!o.conversationQuery)return Promise.resolve([]);let s=o.conversationQuery,r=yield s();return r.length===0?Promise.resolve([]):n.getEntities(r)})),sf=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),rf=nf({name:"entities",initialState:Nl,reducers:{},extraReducers:t=>{t.addCase(ye.pending,e=>{e.fetchState="loading"}).addCase(ye.rejected,e=>{e.fetchState="error"}).addCase(ye.fulfilled,(e,n)=>{e.fetchState="done",e.data=sf(e.data?[...e.data,...n.payload]:n.payload)}).addCase(V,()=>Nl)}}),Ol=rf.reducer;var yr={};G(yr,{enUS:()=>af,nlNL:()=>lf});var af={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},lf={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Dl={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as vr,jsxs as mf}from"react/jsx-runtime";var uf=({onCopy:t})=>{let e=df(null),n=S("EntitiesList",Dl),o=cf(Fo),{setSelected:s}=Ge(),r=R(yr),i=pf();return _l(()=>{i(ye())},[]),_l(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),mf("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&vr(K.List,{children:o.map((a,d)=>vr(K.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&vr("p",{className:n.empty,children:r("noResults")})]})},Fl=uf;import Gf,{useEffect as ed,useRef as Xf}from"react";import{useSelector as Jf}from"react-redux";import{useRef as gf,useState as xr}from"react";import{useDispatch as ff}from"react-redux";function ht(t,e){let n=gf(t);n.current=t;let[o,s]=xr(void 0),[r,i]=xr(void 0),[a,d]=xr("idle"),l=ff();return{error:r,state:a,data:o,call:p=>v(this,null,function*(){d("loading"),yield l(n.current(p)).unwrap().then(u=>{s(u),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(u))}).catch(u=>{i(u),d("error"),e!=null&&e.onError&&(e==null||e.onError(u))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import Cr from"classnames";import{useState as Sf}from"react";import{jsx as Hl}from"react/jsx-runtime";var Sr=t=>Hl("svg",x(g({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Hl("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 Bl}from"react/jsx-runtime";var Kl=t=>Bl("svg",x(g({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Bl("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 zt(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 br={};G(br,{enUS:()=>hf,nlNL:()=>yf});var hf={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},yf={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useDispatch as xf}from"react-redux";import{createAsyncThunk as vf}from"@reduxjs/toolkit";function Ul(t){return vf("analytics/logEvent",(e,n)=>{var r,i,a;let o=(i=(r=n.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(a=n.getState())==null?void 0:a.info.agentInfo;return n.extra.deepdeskAPI.sendEvent(e.name,x(g({conversationId:o},s),{data:e.data}))})(t)}function j(){let t=xf();return(e,n)=>v(this,null,function*(){yield t(Ul({name:e,data:n}))})}var zl={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as Wl}from"react-redux";var Wt=t=>e=>{let{passwordlessToken:{token:n},settings:{isEmbedded:o,adminUrl:s}}=e,r=s||window.location.origin;return o&&!n?null:o&&n?`${r}/apis/admin/session/passwordless/login/?token=${n}&redirect=${encodeURIComponent(t)}`:`${r}${t}`};import{jsx as Vt,jsxs as Cf}from"react/jsx-runtime";var bf=({eventName:t,eventData:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=S("FeedbackThumbs",zl),i=E("enableFeedbackForm"),a=Wl(xe),d=Wl(Wt(`/admin/feedback?conversationId=${a}&evaluationId=${n}&type=${o}&text=${s}&data=${JSON.stringify(e)}`)),l=R(br),c=j(),[m,p]=Sf(null),u=f=>{f.stopPropagation(),zt(f.target,r.fadeup),p("up"),c(t,x(g({},e),{evaluationId:n,rating:"up"}))},y=f=>{f.stopPropagation(),zt(f.target,r.fadedown),p("down"),c(t,x(g({},e),{evaluationId:n,rating:"down"}))};return Cf("div",{className:r.thumbs,children:[Vt(A.Button,{title:l("thumbsUp"),onClick:u,icon:Vt(Kl,{}),className:Cr(r.thumbsUp,m==="up"&&r.selected),disabled:!!m}),i&&d?Vt(A.Button,{as:"a",title:l("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:y,icon:Vt(Sr,{}),className:Cr(r.thumbsDown,m==="down"&&r.selected),disabled:!!m}):Vt(A.Button,{title:l("thumbsDown"),onClick:y,icon:Vt(Sr,{}),className:Cr(r.thumbsDown,m==="down"&&r.selected),disabled:!!m})]})},yt=bf;import{jsx as Vl,jsxs as wf}from"react/jsx-runtime";var jl=()=>wf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[Vl("title",{id:"paperPlaneTitle",children:"PaperPlane"}),Vl("path",{d:"M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z"})]});var wr={};G(wr,{enUS:()=>Tf,nlNL:()=>Ef});var Tf={use:[{type:0,value:"Use"}],loading:[{type:0,value:"Loading..."}],error:[{type:0,value:"Something went wrong, please try again later."}],anotherQuestion:[{type:0,value:"Send a message..."}],reset:[{type:0,value:"Reset conversation"}]},Ef={use:[{type:0,value:"Gebruik"}],loading:[{type:0,value:"Laden..."}],error:[{type:0,value:"Er ging iets mis, probeer het later opnieuw."}],anotherQuestion:[{type:0,value:"Stuur een bericht..."}],reset:[{type:0,value:"Reset gesprek"}]};var $l={root:"dd-fxP4c",title:"dd-vDbMh",empty:"dd-sB0lz",status:"dd--oZ1C",form:"dd-t0hnD",input:"dd-i1v3W",submit:"dd-oo2Oa",question:"dd-WvK17",answer:"dd-HAHcU",alignRight:"dd-oxrX3",listItemFeedback:"dd-POUal"};import Kf from"dompurify";import{Fragment as Yl,useMemo as Uf,useRef as zf,useState as Wf}from"react";import Ql from"classnames";import{createRef as _f,useCallback as Er,useMemo as Ff,useRef as Hf,useState as Bf}from"react";import{useState as kf,useLayoutEffect as Rf}from"react";var If=["bottom","height","left","right","top","width"],Pf=(t={},e={})=>If.some(n=>t[n]!==e[n]),Fe=new Map,ql,Gl=()=>{let t=[],e=[];Fe.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();Pf(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{Fe.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),ql=window.requestAnimationFrame(Gl)};function Lf(t,e){return{observe(){let n=Fe.size===0;if(Fe.has(t)){let o=Fe.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else Fe.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&Gl()},unobserve(){let n=Fe.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Fe.delete(t),Fe.size||cancelAnimationFrame(ql)}}}}function Tr(t){let[e,n]=kf(null);return Rf(()=>{if(!t.current)return;let o=Lf(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Mf,useLayoutEffect as Nf,useState as Of}from"react";import{createPortal as Df}from"react-dom";import{useEffect as Af}from"react";function vt(t){Af(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function xt(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var Xl={root:"dd-r-dgo"};var Jl=({children:t,parentNode:e})=>{let[n,o]=Of(null),s=Mf(an);return Nf(()=>{let r=document.createElement("div");return xt(r),r.classList.add(Xl.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?Df(t,n):null};var we={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 kr}from"react/jsx-runtime";var Ho=(t=!1)=>{let[e,n]=Bf(t),o=Er(()=>n(!0),[]),s=Er(()=>n(!1),[]),r=Er(()=>n(a=>!a),[]),i=Hf(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function Rr(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 jt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=_f(),position:o="above",align:s="center",children:r,toStyle:i=Rr,parentNode:a}=c,d=L(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let m=Tr(e),p=Tr(n),u=Ff(()=>i(m,p,0),[m,p]);return kr(Jl,{parentNode:a,children:kr("div",x(g({className:Ql(we.ref,{[we.positionAbove]:o==="above",[we.positionBelow]:o==="below",[we.positionLeft]:o==="left",[we.positionRight]:o==="right",[we.alignStart]:s==="start",[we.alignCenter]:s==="center",[we.alignEnd]:s==="end"}),style:u},d),{role:"dialog",children:kr("div",{className:Ql(t,we.root),children:r})}))})};var Zl={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 Vf}from"marked";import{jsx as _n,jsxs as Bo}from"react/jsx-runtime";function jf(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 Ir(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 $f(t){return t.replace(/\r\n/g,`
4
- `)}var qf=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=S("Markdown",Zl),i=zf(null),[a,d]=Wf(null),l=Uf(()=>{let f=Vf.parse($f(t));return Kf.sanitize(f.toString()).replaceAll("</code>",`${jf(r.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),c=f=>{var T;let h=f.target,C=!!((T=i.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(h.tagName)){d(null);return}a||C&&h.tagName!=="CODE"||!C&&h!==i.current||(h.addEventListener("mouseleave",()=>d(null),{once:!0}),d(h))},m=()=>{if(!a)return;d(null);let f=a.querySelector("button");f&&(zt(f,r.fadeup),o==null||o(Ir(a)))},p=f=>{let h=f.target;if(h.tagName==="A"){f.stopPropagation();return}"copyIcon"in h.dataset&&(zt(h,r.fadeup),o==null||o(Ir(h.parentElement)))},u=()=>{!a||!s||(d(null),s(Ir(a)))},y=f=>{if(f===null)return;let h=f.getBoundingClientRect();h.left<0?f.style.transform=`translateX(${-h.left+2}px)`:h.right>window.innerWidth&&(f.style.transform=`translateX(${window.innerWidth-h.right-2}px)`)};return Bo(Yl,{children:[a&&(o||s)&&Bo(jt,{triggerRef:{current:a},className:r.popover,parentNode:a,children:[Bo("div",{className:r.options,ref:y,children:[o&&_n("button",{type:"button",className:r.option,onClick:m,children:n}),s&&Bo(Yl,{children:[_n("div",{className:r.divider}),_n("button",{type:"button",className:r.option,onClick:u,children:e})]})]}),_n("div",{className:r.arrow})]}),_n("div",{ref:i,"data-testid":"widget-markdown-content",className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:c,onClick:p})]})},He=qf;import{jsx as pe,jsxs as td}from"react/jsx-runtime";var Qf=({threadId:t,onEvaluate:e,onUse:n,onResetQuestion:o,question:s})=>{var h;let[r,i]=Gf.useState(""),{setSelected:a}=Ge(),d=Xf(null),l=S("KnowledgeSearchStyles",$l),c=R(wr),m=j(),p=(h=Jf(Ln(t!=null?t:-1)))!=null?h:[],u=ht(e,{onSuccess(C){m("knowledge assist question answered",{question:r||s||"",sources:C.answer.sources,answer:C.answer.answer,isFollowUpQuestion:p.length>=1,isAutoInitiated:!r&&!!s}),a(`knowledge-assist-${p.length}`),i("")}}),y=C=>v(void 0,null,function*(){C.preventDefault(),C.stopPropagation(),r!==""&&u.call(r)}),f=(C,T)=>{m("knowledge assist source viewed",{question:T,sourceViewed:C.url||C.name})};return ed(()=>{var C;s&&u.state==="idle"?u.call(s):(C=d.current)==null||C.focus()},[d,u.state]),ed(()=>{d.current&&d.current.scrollIntoView({behavior:"smooth"})},[d,p]),td("div",{className:l.root,children:[p.length>0&&pe("div",{className:l.alignRight,children:pe(K.Button,{onClick:o,children:c("reset")})}),p.map(({question:C,answer:T,evaluationId:b},k)=>pe(K.List,{children:pe(K.ListItem,{id:`knowledge-assist-${k}`,"data-testid":"knowledge-search-answer",description:pe(He,{content:T.answer}),closeOnSelect:!0,onClick:()=>n(T.answer),onSourceClick:N=>f(N,C),sources:T.sources,styles:{title:l.question,description:l.answer},extra:pe("div",{className:l.listItemFeedback,children:pe(yt,{evaluationId:b,feedbackText:T.answer,feedbackType:"knowledge-assist-answer",eventName:"knowledge assist feedback",eventData:g({question:C,isAgent:s!==C,isFollowUpQuestion:p.length>1},T)})}),children:C})},`${T.answer}_${k}`)),u.state==="loading"&&pe("p",{className:l.status,children:c("loading")}),u.state==="error"&&pe("p",{className:l.status,children:c("error")}),td("form",{className:l.form,onSubmit:y,children:[pe("input",{ref:d,placeholder:c("anotherQuestion"),className:l.input,type:"text",value:r,onFocus:()=>{a(void 0)},onChange:C=>{a(void 0),i(C.target.value)}}),pe("button",{type:"submit",className:l.submit,disabled:u.state==="loading",children:pe(jl,{})})]})]})},nd=Qf;import{jsx as od}from"react/jsx-runtime";var Ko=t=>od("svg",x(g({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:od("path",{fill:"currentColor",d:"M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"})}));var Fn={};G(Fn,{enUS:()=>Zf,nlNL:()=>Yf});var Zf={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Add"}],sendSuggestion:[{type:0,value:"Send"}],suggestionSent:[{type:0,value:"Sent"}],sendingError:[{type:0,value:"Sending failed"}],tryAgain:[{type:0,value:"Try again"}],editSuggestion:[{type:0,value:"Edit"}],visitUrl:[{type:0,value:"Visit"}],giveFeedback:[{type:0,value:"Give feedback"}],answer:[{type:0,value:"Answer"}]},Yf={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Gebruik"}],sendSuggestion:[{type:0,value:"Verzenden"}],suggestionSent:[{type:0,value:"Verzonden"}],sendingError:[{type:0,value:"Verzenden mislukt"}],tryAgain:[{type:0,value:"Probeer opnieuw"}],editSuggestion:[{type:0,value:"Bewerken"}],visitUrl:[{type:0,value:"Bekijk"}],giveFeedback:[{type:0,value:"Geef feedback"}],answer:[{type:0,value:"Antwoord"}]};import{useSelector as sd}from"react-redux";import{useDispatch as eh}from"react-redux";var Uo={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as zo,jsxs as nh}from"react/jsx-runtime";var th=({suggestion:t,source:e,context:n})=>{let o=R(Fn),s=sd(xe),r=eh(),i=E("enableSuggestionFeedback"),a=`${t.text}`,d=sd(Wt(`/admin/feedback?conversationId=${s}&type=${e}&text=${a}&data=${JSON.stringify({context:n})}`)),l=()=>{r(Me({name:"suggestion feedback",data:{text:t.text,source:e,context:n},options:{includeConversationData:!0}}))};return!i||!d?null:nh(q,{placement:"top-end",children:[zo(q.Trigger,{className:Uo.trigger,children:zo(Ko,{"data-testid":"feedback-dropdown-trigger"})}),zo(q.Content,{className:Uo.content,children:zo(q.Button,{className:Uo.item,as:"a",onClick:l,target:"_blank",href:d,children:o("giveFeedback")})})]})},Wo=th;var Hn={};G(Hn,{enUS:()=>oh,nlNL:()=>sh});var oh={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"URL suggestions"}],personalSuggestions:[{type:0,value:"Personal suggestions"}],pinnedMessages:[{type:0,value:"Pinned messages"}],imageSuggestions:[{type:0,value:"Images"}],typePlaceholder:[{type:0,value:"All types"}],navigation:[{type:0,value:"Navigation"}],entitiesClipboard:[{type:0,value:"Conversation clipper"}],entitiesTitle:[{type:0,value:"Copy to your clipboard"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Commands"}],use:[{type:0,value:"Use"}],preview:[{type:0,value:"Preview"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},sh={personalCollectionLink:[{type:0,value:"Ga naar persoonlijke collectie"}],searchPlaceholder:[{type:0,value:"Begin met typen om te zoeken..."}],personalSuggestions:[{type:0,value:"Persoonlijke suggesties"}],urlSuggestions:[{type:0,value:"URL suggesties"}],imageSuggestions:[{type:0,value:"Afbeeldingen"}],navigation:[{type:0,value:"Navigatie"}],typePlaceholder:[{type:0,value:"Alle types"}],pinnedMessages:[{type:0,value:"Actueel"}],entitiesClipboard:[{type:0,value:"Klembord"}],entitiesTitle:[{type:0,value:"Kopieer naar klembord"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Acties"}],use:[{type:0,value:"Gebruik"}],preview:[{type:0,value:"Bewerk"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};import{useEffect as dh}from"react";import{useDispatch as ch,useSelector as ph}from"react-redux";import{createAction as ah,createAsyncThunk as ld,createSlice as lh}from"@reduxjs/toolkit";var rh=["{amount}"," {amount}","{date}","{email}","{iban}","{name}","{postal_code}","{street}","{tarif}","{usage}","{3_digits}","{4_digits}","{5_digits}","{6_digits}","{7_digits}","{8_digits}","{9_digits}","{10_digits}"],ih=new RegExp(rh.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function rd(t,e){let n=t.split(ih),o=0,s=[];for(let r=0;r<n.length;r++){let i=n[r];if(s.push(i),r===n.length-1)break;if(e.indexOf(i)===-1)return t;let a=n[r+1],d=r===n.length-2;o+=i.length;let l=o;if(d){let m=a.charAt(0),p=0;do l=m?e.indexOf(m,l+1):-1,p+=1;while(l!==-1&&a.indexOf(e.slice(l))!==0);if(l===-1&&p>2)return t}else l=a&&a!==""?e.indexOf(a,o):-1;let c=l===-1?e.slice(o):e.slice(o,l);s.push(c),o=l}return s.join("")}function id(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var dd={suggestions:[],fetchState:"idle"},ad={default:dd},cd=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},Vo=t=>t.textSuggestions,pd=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},jo=ah("textSuggestions/refresh"),ve=ld("textSuggestions/recommendations",(t,e)=>v(void 0,null,function*(){var c,m,p;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=Dt(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((m=o.profile.data)!=null&&m.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let u=(p=o.profile.data)==null?void 0:p.code;if(!u)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(u)}else l=yield n.getTextSuggestions(d,fn(o),t);if(s&&(l=l.map(u=>g(x(g({},u),{text:ne(u.text,s)}),u.title?{title:ne(u.title,s)}:{}))),t==="default"){let u=i?l.filter(pd(a)):l;e.dispatch($e(u.slice(0,r)))}return l})),Bn=ld("textSuggestions/autocompletions",(t,e)=>v(void 0,null,function*(){var c,m;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(c=o.conversation.current)==null?void 0:c.id,{platformVariables:r}=o.info,{textSuggestionsCount:i,deanonymize:a,inlineSuggestions:d}=o.settings;if(!((m=o.profile.data)!=null&&m.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,x(g({},fn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(pd(t))),r&&(l=l.map(p=>x(g({},p),{text:ne(p.text,r)}))),a&&(l=l.map(p=>x(g({},p),{text:p.source!=="trie-with-typos"?rd(p.text,t):p.text}))),l=id(l,i),e.dispatch($e(l)),l})),ud=lh({name:"textSuggestions",initialState:ad,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:n}=e.payload;t[n].fetchState="done",t[n].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}}},extraReducers:t=>{t.addCase(ve.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||dd;return x(g({},e),{[o]:x(g({},s),{fetchState:"loading"})})}).addCase(ve.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(ve.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(Bn.pending,e=>{e.default.fetchState="loading"}).addCase(Bn.rejected,e=>{e.default.fetchState="error"}).addCase(Bn.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(V,()=>ad)}}),{setTextSuggestions:nI}=ud.actions,md=ud.reducer;import{jsx as $o,jsxs as mh}from"react/jsx-runtime";var uh=({types:t,commands:e,onClick:n})=>{let o=ch(),s=R(Hn),r=ph(Vo);return dh(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(ve(i))})},[]),mh("div",{children:[e.length>0&&$o(K.List,{heading:s("commands"),children:e.map((i,a)=>$o(K.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return $o(K.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>$o(K.ListItem,{id:`${i}-${c}`,closeOnSelect:!1,description:l.title&&l.text,onClick:()=>n(l.text,l),"data-testid":"search-overlay-suggestion",children:l.title||l.text},`${l.id}-${l.text}`))},i)})]})},gd=uh;import{jsx as ue,jsxs as Lr}from"react/jsx-runtime";var xh=200,Sh=5,bh=4,Pr=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?bh:Sh),Ch=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),wh=()=>{var bi,Ci,wi;let t=vh(),e=oe(),n=R(Hn),[o,s]=qo(!1),[r,i]=qo(""),[a,d]=qo(null),l=Be(Ea),c=Be(mt),[m,p]=qo(),u=Be(X),y=E("showSearch"),f=E("enableSuggestionFeedback"),h=E("showEntitiesCommand"),C=E("showKnowledgeSearch"),T=E("showImageSearch"),b=E("searchTriggerKey"),k=Be(Ao),N=Be(Mo),O=Be(nl),_=Be(js),z=Be(ka),Pe=Be(Ta),re=((wi=(Ci=(bi=c==null?void 0:c.uiConfig)==null?void 0:bi.search)==null?void 0:Ci.initialTypes)==null?void 0:wi.filter(({isActive:I})=>I))||[],M=j(),$=yh(()=>{let I=ee=>Pr(_.filter(W=>W.type===ee.toUpperCase()),ee,m),U=(O==null?void 0:O.map(ee=>({value:ee.code.toUpperCase(),label:`${ee.name}s`,list:I(ee.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(U.push({value:"PERSONAL",label:n("personalSuggestions"),list:I("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:I("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:I("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),T&&U.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:I("IMAGE"),listOrientation:"horizontal"}),re.length===0)return U;let nt=re.map(ee=>U.find(W=>W.value.toLowerCase()===ee.type)).filter(ee=>!!ee),Ps=U.filter(ee=>!nt.find(W=>W.value===ee.value));return[...nt,...Ps]},[O,re,T,m]),tt=[{label:n("entitiesClipboard"),onClick:()=>t(Ne("entities")),shouldShow:h&&Ch(n("entitiesClipboard"),r)},{label:r?`${n("knowledgeAssist")}: ${r}`:n("knowledgeAssist"),onClick:()=>{t(Ne("knowledgeAssist")),M("open knowledge assistant",{via:"search-command"})},shouldShow:C}].filter(I=>I.shouldShow).filter(()=>!m),me=fd(fh((I,U)=>{t(dt({query:I,type:U,tags:["search-overlay"],size:m?50:20}))},xh),[m]),Si=fd((I,U)=>{switch(U.type){case"IMAGE":e.send(qs,{suggestion:U});break;default:e.send(Se,{text:I,suggestion:U})}t(de(!1))},[t]),Up=I=>{be(I.text),t(Me({name:"entity copied",data:{entity:I,type:"copy"}})),t(de(!1))},zp=I=>{e.send(Se,{text:I,suggestion:{source:"knowledge-assist",text:I}}),t(Me({name:"answer used",data:{originalText:I},options:{includeConversationData:!0}})),i(""),a&&t(Bt(a)),t(Ne("search")),t(de(!1))},Wp=I=>{let U={input:I,threadId:a,onNewThreadId:nt=>d(nt)};if(N)return pt(g({assistantCode:N},U));if(k)return ut(g({assistantCode:k},U))};function Jn(I){return U=>{o?window.confirm(n("warning"))&&(I(U),s(!1)):I(U)}}return hd(()=>{r?me(r,m):t(vo())},[r,m]),hd(()=>{u&&t(An())},[u]),Ml(b,()=>{t(de(!0)),M("open search",{via:"ctrl+k"})}),!y||!c?null:Lr(K,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:Jn(I=>t(de(I))),onChangeType:I=>p(I),onChangePage:Jn(I=>t(Ne(I))),selectedType:m,search:r,page:l,isOpen:Pe,types:$,updateDeps:[_],children:[Lr(K.Page,{id:"search",children:[r.length===0&&ue(gd,{types:re,commands:tt,onClick:Si}),r.length>0&&Lr(hh,{children:[tt.length>0&&ue(K.List,{heading:n("commands"),children:tt.map((I,U)=>ue(K.ListItem,{closeOnSelect:!1,onClick:I.onClick,id:`commands-${U}`,children:I.label},I.label))}),$.map(({value:I,label:U,list:nt,lineClamp:Ps,listOrientation:ee})=>ue(K.List,{heading:U,orientation:ee==="horizontal"?"horizontal":"vertical",onShowAll:()=>p(I),hasMore:!m&&z[I.toLowerCase()]>Pr(nt,I,m).length,children:Pr(nt,I,m).map(W=>ue(K.ListItem,{id:`${I}-${W.id}`,closeOnSelect:!1,lineClamp:Ps,onClick:()=>Si(W.text,W),description:I!=="IMAGE"?W.title&&W.text:void 0,tooltip:W.text,extra:f&&ue(K.ListItemActions,{children:ue(Wo,{context:r,source:"search",suggestion:W})}),children:I==="IMAGE"?ue(K.Image,{title:W.title||W.text,src:W.image}):W.title||W.text},`${W.id}-${W.text}`))},I))]})]}),ue(K.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:Jn(()=>{t(Ne("search"))}),children:ue(Fl,{onCopy:Up})}),(k!=null?k:N)&&ue(K.Page,{id:"knowledgeAssist",title:n("knowledgeAssist"),onDismiss:Jn(()=>{a&&t(Bt(a)),t(Ne("search"))}),children:ue(nd,{threadId:a,onEvaluate:Wp,question:r,onUse:zp,onResetQuestion:()=>{a&&t(Bt(a)),i(""),d(null)}})})]})},yd=wh;import{jsx as vd,jsxs as kh}from"react/jsx-runtime";var Eh=()=>{let t=E("showSearch"),e=E("isEmbedded");return kh(Th,{children:[t&&vd(yd,{}),e&&vd(qa,{})]})},xd=Eh;import Lh from"classnames";import{useSelector as Ah}from"react-redux";import{jsx as Ar}from"react/jsx-runtime";var Sd=({className:t})=>Ar("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 512 512",xmlSpace:"preserve",className:t,children:Ar("g",{children:Ar("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
3
+ `,ot.MISSING_INTL_API,i);var R=n.getPluralRules(e,{type:c.pluralType}).select(p-(c.offset||0));b=c.options[R]||c.options.other}if(!b)throw new qs(c.value,p,Object.keys(c.options),i);l.push.apply(l,bn(b.value,e,n,o,s,p-(c.offset||0)));continue}}return im(l)}function lm(t,e){return e?re(re(re({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=re(re({},t[o]),e[o]||{}),n},{})):t}function dm(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=lm(t[o],e[o]),n},re({},t)):t}function Gs(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function cm(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:ho(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,fo([void 0],n,!1)))},{cache:Gs(t.number),strategy:yo.variadic}),getDateTimeFormat:ho(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,fo([void 0],n,!1)))},{cache:Gs(t.dateTime),strategy:yo.variadic}),getPluralRules:ho(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,fo([void 0],n,!1)))},{cache:Gs(t.pluralRules),strategy:yo.variadic})}}var Xs=function(){function t(e,n,o,s){n===void 0&&(n=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(a){var c=r.formatToParts(a);if(c.length===1)return c[0].value;var m=c.reduce(function(p,u){return!p.length||u.type!==Q.literal||typeof p[p.length-1]!="string"?p.push(u.value):p[p.length-1]+=u.value,p},[]);return m.length<=1?m[0]||"":m},this.formatToParts=function(a){return bn(r.ast,r.locales,r.formatters,r.formats,a,void 0,r.message)},this.resolvedOptions=function(){var a;return{locale:((a=r.resolvedLocale)===null||a===void 0?void 0:a.toString())||Intl.NumberFormat.supportedLocalesOf(r.locales)[0]}},this.getAst=function(){return r.ast},this.locales=n,this.resolvedLocale=t.resolveLocale(n),typeof e=="string"){if(this.message=e,!t.__parse)throw new TypeError("IntlMessageFormat.__parse must be set to process `message` of type `string`");var i=s||{},l=i.formatters,d=Ea(i,["formatters"]);this.ast=t.__parse(e,re(re({},d),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=dm(t.formats,o),this.formatters=s&&s.formatters||cm(this.formatterCache)}return Object.defineProperty(t,"defaultLocale",{get:function(){return t.memoizedDefaultLocale||(t.memoizedDefaultLocale=new Intl.NumberFormat().resolvedOptions().locale),t.memoizedDefaultLocale},enumerable:!1,configurable:!0}),t.memoizedDefaultLocale=null,t.resolveLocale=function(e){if(typeof Intl.Locale!="undefined"){var n=Intl.NumberFormat.supportedLocalesOf(e);return n.length>0?new Intl.Locale(n[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=Pa,t.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},t}();function mm(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var gm="dummy",Js=pm(null);function k(t){var o;let e=um(Js);if(!e)throw new Error("useTranslator() may be used only in the context of a <LocaleContext> component.");let n=(o=t[e])!=null?o:{};return(s,r)=>{let i=mm(n,s);return i?new Xs(i).format(r):(e!==gm&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{useEffect as fm,useRef as hm}from"react";var Ma={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as Na}from"react/jsx-runtime";var ym=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:l})=>{let d=hm(null),a=S("Dialog",Ma),c=p=>{if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s();return}r&&r(p)},m=p=>{p.target===d.current&&t&&o()};return fm(()=>{var p,u;!d.current||!t||!e||(u=(p=d.current)==null?void 0:p.querySelector("input, textarea"))==null||u.focus()},[t,e,d]),t?Na("div",{role:"dialog","data-testid":"dialog",className:a.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:m,children:Na("div",{"data-testid":"dialog-content",className:a.content,"aria-label":l,children:n})}):null},Co=ym;import vm from"classnames";var Oa={root:"dd-ranhW"};import{jsx as Sm}from"react/jsx-runtime";var xm=o=>{var s=o,{className:t,value:e}=s,n=P(s,["className","value"]);let r=S("TextInput",Oa);return Sm("input",f({className:vm(t,r.root),type:"text",value:e},n))},Cn=xm;var Zs={};Z(Zs,{enUS:()=>bm,nlNL:()=>Cm});var bm={back:[{type:0,value:"Back"}],promptTitle:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Paste the code from your email"}],verifyCodeBody:[{type:0,value:"Copy the code from the email you just received and paste it here."}],verifyCodeInputPlaceholder:[{type:0,value:"Paste link or code here"}],verifyCodeSubmitLabel:[{type:0,value:"Sign in"}],verifyCodeError:[{type:0,value:"Sign in failed. The code is probably no longer valid. Please "},{type:8,value:"login",children:[{type:0,value:"request new code"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Have a code sent to your email"}],requestCodeBody:[{type:0,value:"Enter your email and request a code. If you are an existing "},{type:1,value:"productName"},{type:0,value:" user you will receive an email with a code. If you are a new user you will receive an email asking to request access to "},{type:1,value:"productName"},{type:0,value:" first."}],requestCodeInputPlaceholder:[{type:0,value:"Enter your email"}],requestCodeSubmitLabel:[{type:0,value:"Request code"}]},Cm={back:[{type:0,value:"Terug"}],promptTitle:[{type:0,value:"Login bij "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Plak de code uit je email"}],verifyCodeBody:[{type:0,value:"Kopieer de code uit de email en plak deze hier."}],verifyCodeInputPlaceholder:[{type:0,value:"Plak hier de code"}],verifyCodeSubmitLabel:[{type:0,value:"Inloggen"}],verifyCodeError:[{type:0,value:"Inloggen is niet gelukt. De code is waarschijnlijk niet meer geldig. "},{type:8,value:"login",children:[{type:0,value:"Vraag een nieuwe code aan"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Verstuur een login code naar je email"}],requestCodeBody:[{type:0,value:"Voer je e-mailadres in en krijg een login code. Als je een bestaande "},{type:1,value:"productName"},{type:0,value:" gebruiker bent krijg je een email met een code. Als je een nieuwe gebruiker bent wordt er een email verstuurd met een toegangsverzoek voor "},{type:1,value:"productName"},{type:0,value:"."}],requestCodeInputPlaceholder:[{type:0,value:"Typ hier je e-mailadres"}],requestCodeSubmitLabel:[{type:0,value:"Code aanvragen"}]};var Da={root:"dd-lWxnE",anchorButton:"dd-TZ4in",errorMessage:"dd-fIsPg",title:"dd-pGhJx",subtitle:"dd-f5l29",text:"dd-iamoD",input:"dd-uhQZ3",actions:"dd-lubvx",button:"dd-CJsNI",primaryButton:"dd-MWBfl"};import{jsx as se,jsxs as To}from"react/jsx-runtime";var Rm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},Im=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=k(Zs),i=S("LoginTokenDialog",Da),l=km(Fi),d=Em(),a=T("productName"),[c,m]=Ys(t||""),[p,u]=Ys(0),[y,g]=Ys(""),h=_a(R=>v(void 0,null,function*(){R.preventDefault(),d(Bi({email:c})),u(1)}),[n,c]),w=()=>{g(""),u(0)},E=_a(R=>v(void 0,null,function*(){R.preventDefault();let N=Rm(R.target.elements.token.value);if(!N){g(r("verifyCodeError",{login:b}));return}d(rn({token:N}))}),[n]),b=wm(()=>R=>se("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:w,children:R},"back-button"),[]);return Tm(()=>{l==="error"&&g(r("verifyCodeError",{login:b})),l==="done"&&o()},[l]),se(Co,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:a}),overlayAriaLabel:r("promptTitle",{productName:a}),onClose:s,onBack:s,children:To("div",{className:i.root,children:[se("h1",{className:i.title,children:r("promptTitle",{productName:a})}),p===0&&To("form",{onSubmit:h,children:[se("h2",{className:i.subtitle,children:r("requestCodeTitle")}),se("p",{className:i.text,children:r("requestCodeBody",{productName:a})}),se(Cn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:R=>m(R.target.value)}),se("div",{className:i.actions,children:se("button",{type:"submit",className:Qs(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),p===1&&To("form",{onSubmit:E,children:[se("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),se("p",{className:i.text,children:r("verifyCodeBody")}),se(Cn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(l)}),y&&se("div",{className:i.errorMessage,children:y}),To("div",{className:i.actions,children:[se("button",{type:"button",className:Qs(i.button),onClick:w,children:r("back")}),se("button",{type:"submit",className:Qs(i.button,i.primaryButton),disabled:["loading","done"].includes(l),children:r("verifyCodeSubmitLabel")})]})]})]})})},Fa=Im;import{jsx as Lm}from"react/jsx-runtime";var Pm=()=>{let t=Ha(Hi),e=Ha(Pt),n=T("adminUrl"),o=oe(),s=()=>o.send(At,!1),r=()=>{o.send(At,!1),o.send(cn)};return Lm(Fa,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},Ba=Pm;import ff from"lodash.debounce";import{Fragment as hf,useCallback as Fl,useEffect as Hl,useMemo as yf,useState as mr}from"react";import{useDispatch as vf,useSelector as at}from"react-redux";import{createAsyncThunk as Am,createSlice as Mm}from"@reduxjs/toolkit";var Nm={data:null,fetchState:"idle"},Ka=t=>t.contentTypes.data,Tn=Am("contentTypes/getContentTypes",(t,e)=>v(void 0,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),Om=Mm({name:"contentTypes",initialState:Nm,reducers:{},extraReducers:t=>{t.addCase(Tn.pending,e=>{e.fetchState="loading"}).addCase(Tn.rejected,e=>{e.fetchState="error"}).addCase(Tn.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Ua=Om.reducer;import{createAsyncThunk as Dm,createSelector as _m,createSlice as Fm}from"@reduxjs/toolkit";var Hm={data:null,fetchState:"idle"},Bm=[],st=t=>t.profile.data,Km=t=>t.profile.data?t.profile.data.uiConfig.widget.types:Bm,En=_m([Km],t=>t.filter(e=>e.isActive)),za=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.summarizerAssistantNew)!=null?n:null},Wa=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||[]},Va=t=>e=>En(e).find(n=>n.type===t),ja=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,$a=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistantNew)!=null?n:null},qa=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistant)!=null?n:null},wn=Dm("profile/getProfile",(t,e)=>v(void 0,null,function*(){var r;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=o.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=o.profile.data)==null?void 0:r.code)===s.profileCode?o.profile.data:n.getProfile(s.profileCode)})),Um=Fm({name:"profile",initialState:Hm,reducers:{},extraReducers:t=>{t.addCase(wn.pending,e=>{e.fetchState="loading"}).addCase(wn.rejected,e=>{e.fetchState="error"}).addCase(wn.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Ga=Um.reducer;function ve(t){let e=document.createElement("textarea");e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),e.remove()}import{useEffect as hl,useState as Lg,useRef as Ag,useCallback as Mg}from"react";import{useState as Vm}from"react";import er from"classnames";var ie={root:"dd-U2SX4",list:"dd-cYTlj",listWrapper:"dd-GLQFR",listHorizontal:"dd-x-knl",page:"dd-1F4vk",search:"dd-nvbxc",pageNav:"dd-sRUuT",pageTitle:"dd-t-MKS",pageBackButton:"dd-cjptm",listHeader:"dd-Fg666",listHeading:"dd-w-xhJ",listMoreButton:"dd--mKep",listItem:"dd-wpvuA",listItemContent:"dd-V-mKo",listItemText:"dd-ukCHL",listItemDescription:"dd-sSyu4",listItemActions:"dd-xelho",listItemTooltip:"dd-SWFsE",listItemTooltipContent:"dd-I7J9N",truncate:"dd-IlopJ",lineClamp:"dd-Twaca",listItemTitle:"dd-lMGHq",listItemAction:"dd-xPLAs",listItemSelected:"dd-jFX0Y",sources:"dd-pZx4v",sourcesTitle:"dd-phYVd",source:"dd-DaR6h",sourceShowMore:"dd-M1-8j",icon:"dd-m6yxD",searchIcon:"dd-0AU-O",searchInputWrapper:"dd-DUFcE",searchInput:"dd-ukrlD",select:"dd--Tifv",selectType:"dd-IkZb2",selectWrapper:"dd-J14mx",image:"dd-RQgsB",imageSrc:"dd-jxh8F",imageSrcHidden:"dd-e20Jk",imageSrcStatus:"dd-j50Tt",imageTitle:"dd-qCjfW",actions:"dd-3mfWc",actionsWrapper:"dd-TjDyI",actionsBar:"dd-LiA35",actionButton:"dd-4wk0u",hasShortKeys:"dd-XilV-",actionShortcut:"dd-s4Mla",actionShortcutFixKerning:"dd-lyh5e"};var Ae={};Z(Ae,{enUS:()=>zm,nlNL:()=>Wm});var zm={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}],sources:[{type:0,value:"Sources"}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},Wm={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}],sources:[{type:0,value:"Bronnen"}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};import{jsx as kn,jsxs as $m}from"react/jsx-runtime";var jm=({src:t,title:e})=>{let n=S("CommandPalette",ie),[o,s]=Vm("loading"),r=k(Ae);return $m("div",{className:n.image,children:[kn("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:er(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&kn("span",{className:er(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&kn("span",{className:er(n.imageSrc,n.imageSrcStatus),children:kn(Xn,{})}),e&&kn("span",{className:n.imageTitle,children:e})]})},Xa=jm;import qm from"react";import Gm from"classnames";import{jsx as tr,jsxs as Ja}from"react/jsx-runtime";function nr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=k(Ae),i=S("CommandPalette",ie);return qm.Children.count(t)===0?null:Ja("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Ja("div",{className:i.listHeader,children:[e&&tr("h4",{className:i.listHeading,children:e}),o&&s&&tr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),tr("div",{className:Gm(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import ko from"classnames";import{Interweave as rl}from"interweave";import{useEffect as Sg,useMemo as il,useState as al}from"react";var Xm=/[.*+?^${}()|[\]\\]/g,Jm=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Zm(t){return t.replace(Xm,"\\$&")}function Qm(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Ym(t){return t.search(Jm)}function Za(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Zm(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Qa(t){return t.replace(Yn,'<mark data-type="placeholder">$1</mark>')}function Rn(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function eg(t,e){return t.split("").map((i,l)=>({char:i,index:l})).filter(({char:i,index:l})=>/\s/.test(i)&&l<=e).map(({index:i})=>i).reverse()[0]}function or(t,e,n={}){if(e){let o=Qm(e.toLowerCase(),t.toLowerCase()),s=Rn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),a=Ym(d);return`<span style="opacity: 0.5">${d.substring(a+1)}</span>${s}`}let i=e.split(Mi).length>3||e.length>30?eg(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Rn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var tg=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function wo(t){return tg.test(t)}function sr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import rr from"react";import{jsx as ng}from"react/jsx-runtime";var Ya=rr.createContext(void 0);function Mt(){let t=rr.useContext(Ya);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var el=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=rr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return ng(Ya.Provider,{value:i,children:t})};import*as xe from"react";import{useFloating as og,autoUpdate as sg,useClick as rg,useDismiss as ig,useRole as ag,useInteractions as lg,useMergeRefs as nl,FloatingPortal as dg,FloatingFocusManager as cg,useHover as pg,offset as ug,flip as mg,shift as gg,safePolygon as fg}from"@floating-ui/react";var Eo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as Ve,jsxs as tl}from"react/jsx-runtime";function hg({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,l]=xe.useState(t),d=s!=null?s:i,a=r!=null?r:l,c=og({placement:e,open:d,onOpenChange:a,whileElementsMounted:sg,middleware:[ug(5),mg({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),gg({padding:10})]}),m=c.context,p=rg(m,{enabled:s==null}),u=ig(m),y=ag(m),g=pg(m,{enabled:o!=null?o:!1,handleClose:fg()}),h=lg([p,u,y,g]);return xe.useMemo(()=>x(f(f({open:d,setOpen:a},h),c),{modal:n}),[d,a,h,c,n])}var ol=xe.createContext(null),ir=()=>{let t=xe.useContext(ol);if(t==null)throw new Error("Popover components must be wrapped in <Popover />");return t},rt=o=>{var s=o,{children:t,modal:e=!1}=s,n=P(s,["children","modal"]);let r=hg(f({modal:e},n));return Ve(ol.Provider,{value:r,children:t})};function yg(o){var s=o,{as:t,children:e}=s,n=P(s,["as","children"]);let r=ir(),i=t||"button",l=e.ref,d=nl([r.refs.setReference,l]);return Ve(i,x(f({ref:d,type:"button"},r.getReferenceProps(n)),{children:e}))}var vg=xe.forwardRef(function(s,o){var r=s,{style:e}=r,n=P(r,["style"]);let a=ir(),{context:i}=a,l=P(a,["context"]),d=nl([l.refs.setFloating,o]);return i.open?Ve(dg,{children:Ve(cg,{context:i,modal:l.modal,disabled:n.disableFocusManager,children:Ve("div",x(f({ref:d,style:f(x(f({},l.floatingStyles),{zIndex:1e7}),e)},l.getFloatingProps(n)),{children:n.children}))})}):null});function xg(s){var r=s,{as:t,children:e,onClick:n}=r,o=P(r,["as","children","onClick"]);let{setOpen:i}=ir();return Ve(t||"button",x(f({type:"button",onClick:a=>{n(a),i(!1),a.stopPropagation()}},o),{children:e}))}function sl({trigger:t,children:e,placement:n="top"}){return tl(rt,{tooltip:!0,placement:n,children:[tl(rt.Content,{className:Eo.tooltip,children:[e,Ve("div",{className:Eo.arrow})]}),Ve(rt.Trigger,{className:Eo.tooltipTrigger,children:t})]})}rt.Trigger=yg;rt.Content=vg;rt.Button=xg;var j=rt;import{jsx as Me,jsxs as Ro}from"react/jsx-runtime";var bg=3,Cg=90,ll=({children:t})=>{let e=S("CommandPalette",ie);return Me("div",{className:e.listItemActions,children:t})};function ar(u){var y=u,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:l,sources:d,id:a,styles:c,defaultSourcesAmount:m=bg}=y,p=P(y,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var de;let g=k(Ae),[h,w]=al(!1),{selected:E,onChangeOpen:b}=Mt(),[R,N]=al(!1),D=S("CommandPalette",ie);function _(M){s(M),t&&b(!1)}let K=il(()=>typeof l!="string"?l:wo(l)?sr(l).trim():l,[l]),Re=il(()=>typeof n!="string"?n:wo(n)?sr(n).trim():n,[n]);return Sg(()=>{N(E===a)},[E]),Ro("div",{className:ko(D.listItem,a===E&&D.listItemSelected),children:[Ro(j,{placement:"right-start",tooltip:!0,onOpenChange:N,open:R,children:[Me(j.Trigger,x(f({className:D.listItemAction,"aria-disabled":(de=p.disabled)!=null?de:!1,onClick:_,"data-command-palette-item":!0,"data-item-id":a},p),{children:Ro("div",{className:D.listItemContent,children:[typeof o=="string"?Me("p",{className:ko(D.listItemText,D.truncate,c==null?void 0:c.title),children:o}):o,K&&typeof K=="string"?Me(rl,{tagName:"p",allowList:[],content:K,className:ko(D.listItemDescription,c==null?void 0:c.description,e?D.lineClamp:D.truncate)}):l]})})),Re&&Re.length>Cg&&Me(j.Content,{className:D.listItemTooltip,disableFocusManager:!0,children:Me(rl,{className:D.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:Re.replace(/\n/g,"<br />")})})]}),a===E&&r,d&&d.length>0&&Ro("div",{className:D.sources,children:[Me("span",{className:D.sourcesTitle,children:g("sources")}),d.slice(0,h?d.length:m).map(M=>Me("a",{className:D.source,href:M.url,target:"_blank",title:M.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(M),children:M.name},M.url)),!h&&d.length>m&&Me("button",{className:ko(D.source,D.sourceShowMore),type:"button",onClick:()=>w(!0),children:g("showMore",{amount:d.length-m})})]})]})}import{jsx as dl,jsxs as Tg}from"react/jsx-runtime";var cl=()=>Tg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[dl("title",{id:"angleLeftTitle",children:"AngleLeft"}),dl("path",{d:"M192 448c-8.188 0-16.38-3.125-22.62-9.375l-160-160c-12.5-12.5-12.5-32.75 0-45.25l160-160c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l137.4 137.4c12.5 12.5 12.5 32.75 0 45.25C208.4 444.9 200.2 448 192 448z"})]});import{jsx as pl,jsxs as lr}from"react/jsx-runtime";function dr({children:t,title:e,id:n,onDismiss:o}){let s=k(Ae),r=S("CommandPalette",ie),{page:i}=Mt();return i!==n?null:lr("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&lr("div",{className:r.pageNav,children:[lr("button",{className:r.pageBackButton,type:"button",onClick:o,children:[pl(cl,{}),s("back")]}),e&&pl("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Eg}from"react";import{jsx as ul,jsxs as wg}from"react/jsx-runtime";var Nt=()=>wg("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[ul("path",{d:"M0 0h24v24H0z",fill:"none"}),ul("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})]});import{jsx as Ot,jsxs as cr}from"react/jsx-runtime";function kg({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},l){let d=S("CommandPalette",ie);return cr("div",{className:d.search,children:[Ot("div",{className:d.searchIcon,children:Ot(Nt,{})}),cr("div",{className:d.searchInputWrapper,children:[Ot("input",{ref:l,spellCheck:!1,autoComplete:"off",onChange:a=>{t(a.currentTarget.value)},onFocus:a=>{a.currentTarget.select()},className:d.searchInput,placeholder:n,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&Ot("div",{className:d.selectWrapper,children:cr("select",{"data-testid":"command-palette-type-select",className:d.select,onChange:a=>e(a.target.value===o?void 0:a.target.value),value:i||o,children:[o&&Ot("option",{children:o}),s.map(a=>Ot("option",{value:a.value,children:a.label},a.value))]})})]})]})}var ml=Eg(kg);import gl from"classnames";import{jsx as Ig,jsxs as Pg}from"react/jsx-runtime";var Rg=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=P(r,["onClick","shortKeys","children"]);let i=S("CommandPalette",ie);return Pg("button",x(f({type:"button"},o),{onClick:t,className:gl(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(l=>Ig("span",{className:gl(i.actionShortcut,l===8629&&i.actionShortcutFixKerning),children:typeof l=="number"?String.fromCharCode(l):l},l))]}))},fl=Rg;import{jsx as yl,jsxs as Og}from"react/jsx-runtime";var Ng="[data-command-palette-item]";function it({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:n="search",page:o,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:l,selectedType:d,types:a,children:c,isOpen:m,search:p,updateDeps:u=[]}){let[y,g]=Lg(),h=Ag(null),w=()=>{s&&s(n),i(void 0),r(""),l(!1)},E=()=>{var M;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(M=h.current)==null||M.focus();return}if(p.length>0){r("");return}l(!1)},b=()=>{let M=R();M.length!==0&&g(M[0].dataset.itemId)},R=()=>Array.from(document.querySelectorAll(Ng)||[]),N=M=>document.querySelector(`[data-item-id=${M}]`),D=M=>{let z=N(M);z&&g(z.dataset.itemId)},_=M=>{let z=N(M);z&&z.scrollIntoView({behavior:"smooth"})},K=()=>{if(!y)return;let M=R(),z=N(y);if(!z)return;let bt=M.indexOf(z),ae=M[bt+1];ae!=null&&ae.dataset.itemId?D(ae.dataset.itemId):b()},Re=()=>{if(!y)return;let M=R(),z=N(y);if(!z)return;let bt=M.indexOf(z),ae=M[bt-1];ae!=null&&ae.dataset.itemId?D(ae.dataset.itemId):D(M[M.length-1].dataset.itemId)},de=Mg(M=>{switch(M.key){case"ArrowDown":{M.preventDefault(),K();break}case"ArrowUp":{M.preventDefault(),Re();break}case"Enter":{if(y){let z=N(y);z==null||z.click()}break}}},[y]);return hl(()=>{b()},[p,o,d,m,...u]),hl(()=>{y&&_(y)},[y]),yl(Co,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:m,onBack:E,onClose:w,onKeyDown:de,children:Og(el,{selected:y,setSelected:g,isOpen:m,onChangeOpen:l,page:o,children:[o===n&&yl(ml,{ref:h,onChange:r,onChangeType:i,placeholder:t,value:p,selectedType:d,types:a,typePlaceholder:e}),c]})})}it.Page=dr;it.List=nr;it.Image=Xa;it.ListItem=ar;it.ListItemActions=ll;it.Button=fl;var $=it;import{useEffect as Dg}from"react";function vl(t,e){Dg(()=>{let n=o=>{var s;((s=navigator==null?void 0:navigator.platform)!=null&&s.toLowerCase().includes("mac")?o.metaKey:o.ctrlKey)&&o.key===t&&(o.preventDefault(),o.stopPropagation(),e())};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}},[])}import{useEffect as Cl,useRef as Vg}from"react";import{useSelector as jg,useDispatch as $g}from"react-redux";import{createAsyncThunk as _g,createSelector as Fg,createSlice as Hg}from"@reduxjs/toolkit";var xl={data:null,fetchState:"idle"},Bg=t=>{var e;return(e=t.entities.data)!=null?e:null},Io=Fg([Bg,Pt,da],(t,e,n)=>{var l;let o=[],{visitorName:s}=n!=null?n:{},{agentName:r,agentNickname:i}=e!=null?e:{};return r&&r!==s&&o.push(r),i&&i!==s&&o.push(i),(l=t==null?void 0:t.filter(d=>!o.includes(d.text)))!=null?l:null}),ge=_g("entities/getEntities",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra;if(!o.conversationQuery)return Promise.resolve([]);let s=o.conversationQuery,r=yield s();return r.length===0?Promise.resolve([]):n.getEntities(r)})),Kg=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),Ug=Hg({name:"entities",initialState:xl,reducers:{},extraReducers:t=>{t.addCase(ge.pending,e=>{e.fetchState="loading"}).addCase(ge.rejected,e=>{e.fetchState="error"}).addCase(ge.fulfilled,(e,n)=>{e.fetchState="done",e.data=Kg(e.data?[...e.data,...n.payload]:n.payload)}).addCase(W,()=>xl)}}),Sl=Ug.reducer;var pr={};Z(pr,{enUS:()=>zg,nlNL:()=>Wg});var zg={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Wg={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var bl={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as ur,jsxs as Gg}from"react/jsx-runtime";var qg=({onCopy:t})=>{let e=Vg(null),n=S("EntitiesList",bl),o=jg(Io),{setSelected:s}=Mt(),r=k(pr),i=$g();return Cl(()=>{i(ge())},[]),Cl(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),Gg("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&ur($.List,{children:o.map((l,d)=>ur($.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(l),children:l.text},l.text))},"entities"),o&&o.length===0&&ur("p",{className:n.empty,children:r("noResults")})]})},Tl=qg;import{jsx as wl}from"react/jsx-runtime";var Po=t=>wl("svg",x(f({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:wl("path",{fill:"currentColor",d:"M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"})}));var In={};Z(In,{enUS:()=>Xg,nlNL:()=>Jg});var Xg={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Add"}],sendSuggestion:[{type:0,value:"Send"}],suggestionSent:[{type:0,value:"Sent"}],sendingError:[{type:0,value:"Sending failed"}],tryAgain:[{type:0,value:"Try again"}],editSuggestion:[{type:0,value:"Edit"}],visitUrl:[{type:0,value:"Visit"}],giveFeedback:[{type:0,value:"Give feedback"}],answer:[{type:0,value:"Answer"}]},Jg={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Gebruik"}],sendSuggestion:[{type:0,value:"Verzenden"}],suggestionSent:[{type:0,value:"Verzonden"}],sendingError:[{type:0,value:"Verzenden mislukt"}],tryAgain:[{type:0,value:"Probeer opnieuw"}],editSuggestion:[{type:0,value:"Bewerken"}],visitUrl:[{type:0,value:"Bekijk"}],giveFeedback:[{type:0,value:"Geef feedback"}],answer:[{type:0,value:"Antwoord"}]};var Dt=t=>e=>{let{passwordlessToken:{token:n},settings:{isEmbedded:o,adminUrl:s}}=e,r=s||window.location.origin;return o&&!n?null:o&&n?`${r}/apis/admin/session/passwordless/login/?token=${n}&redirect=${encodeURIComponent(t)}`:`${r}${t}`};import{useSelector as El}from"react-redux";import{useDispatch as Zg}from"react-redux";var Lo={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as Ao,jsxs as Yg}from"react/jsx-runtime";var Qg=({suggestion:t,source:e,context:n})=>{let o=k(In),s=El(ye),r=Zg(),i=T("enableSuggestionFeedback"),l=`${t.text}`,d=El(Dt(`/admin/feedback?conversationId=${s}&type=${e}&text=${l}&data=${JSON.stringify({context:n})}`)),a=()=>{r(Ue({name:"suggestion feedback",data:{text:t.text,source:e,context:n},options:{includeConversationData:!0}}))};return!i||!d?null:Yg(j,{placement:"top-end",children:[Ao(j.Trigger,{className:Lo.trigger,children:Ao(Po,{"data-testid":"feedback-dropdown-trigger"})}),Ao(j.Content,{className:Lo.content,children:Ao(j.Button,{className:Lo.item,as:"a",onClick:a,target:"_blank",href:d,children:o("giveFeedback")})})]})},Mo=Qg;var Pn={};Z(Pn,{enUS:()=>ef,nlNL:()=>tf});var ef={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"URL suggestions"}],personalSuggestions:[{type:0,value:"Personal suggestions"}],pinnedMessages:[{type:0,value:"Pinned messages"}],imageSuggestions:[{type:0,value:"Images"}],typePlaceholder:[{type:0,value:"All types"}],navigation:[{type:0,value:"Navigation"}],entitiesClipboard:[{type:0,value:"Conversation clipper"}],entitiesTitle:[{type:0,value:"Copy to your clipboard"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Commands"}],use:[{type:0,value:"Use"}],preview:[{type:0,value:"Preview"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},tf={personalCollectionLink:[{type:0,value:"Ga naar persoonlijke collectie"}],searchPlaceholder:[{type:0,value:"Begin met typen om te zoeken..."}],personalSuggestions:[{type:0,value:"Persoonlijke suggesties"}],urlSuggestions:[{type:0,value:"URL suggesties"}],imageSuggestions:[{type:0,value:"Afbeeldingen"}],navigation:[{type:0,value:"Navigatie"}],typePlaceholder:[{type:0,value:"Alle types"}],pinnedMessages:[{type:0,value:"Actueel"}],entitiesClipboard:[{type:0,value:"Klembord"}],entitiesTitle:[{type:0,value:"Kopieer naar klembord"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Acties"}],use:[{type:0,value:"Gebruik"}],preview:[{type:0,value:"Bewerk"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};import{useEffect as af}from"react";import{useDispatch as lf,useSelector as df}from"react-redux";import{createAction as sf,createAsyncThunk as Pl,createSlice as rf}from"@reduxjs/toolkit";var nf=["{amount}"," {amount}","{date}","{email}","{iban}","{name}","{postal_code}","{street}","{tarif}","{usage}","{3_digits}","{4_digits}","{5_digits}","{6_digits}","{7_digits}","{8_digits}","{9_digits}","{10_digits}"],of=new RegExp(nf.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function kl(t,e){let n=t.split(of),o=0,s=[];for(let r=0;r<n.length;r++){let i=n[r];if(s.push(i),r===n.length-1)break;if(e.indexOf(i)===-1)return t;let l=n[r+1],d=r===n.length-2;o+=i.length;let a=o;if(d){let m=l.charAt(0),p=0;do a=m?e.indexOf(m,a+1):-1,p+=1;while(a!==-1&&l.indexOf(e.slice(a))!==0);if(a===-1&&p>2)return t}else a=l&&l!==""?e.indexOf(l,o):-1;let c=a===-1?e.slice(o):e.slice(o,a);s.push(c),o=a}return s.join("")}function Rl(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var Ll={suggestions:[],fetchState:"idle"},Il={default:Ll},Al=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},No=t=>t.textSuggestions,Ml=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},Oo=sf("textSuggestions/refresh"),fe=Pl("textSuggestions/recommendations",(t,e)=>v(void 0,null,function*(){var c,m,p;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,l=Rt(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((m=o.profile.data)!=null&&m.recommendationEngine))return[];let a=[];if(t==="sticky-messages"){let u=(p=o.profile.data)==null?void 0:p.code;if(!u)throw new Error("No current profile to fetch pinned messages");a=yield n.getPinnedMessages(u)}else a=yield n.getTextSuggestions(d,dn(o),t);if(s&&(a=a.map(u=>f(x(f({},u),{text:ne(u.text,s)}),u.title?{title:ne(u.title,s)}:{}))),t==="default"){let u=i?a.filter(Ml(l)):a;e.dispatch(ze(u.slice(0,r)))}return a})),Ln=Pl("textSuggestions/autocompletions",(t,e)=>v(void 0,null,function*(){var c,m;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(c=o.conversation.current)==null?void 0:c.id,{platformVariables:r}=o.info,{textSuggestionsCount:i,deanonymize:l,inlineSuggestions:d}=o.settings;if(!((m=o.profile.data)!=null&&m.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let a=yield n.getAutocompleteSuggestions(s,x(f({},dn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(a=a.filter(Ml(t))),r&&(a=a.map(p=>x(f({},p),{text:ne(p.text,r)}))),l&&(a=a.map(p=>x(f({},p),{text:p.source!=="trie-with-typos"?kl(p.text,t):p.text}))),a=Rl(a,i),e.dispatch(ze(a)),a})),Nl=rf({name:"textSuggestions",initialState:Il,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:n}=e.payload;t[n].fetchState="done",t[n].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}}},extraReducers:t=>{t.addCase(fe.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||Ll;return x(f({},e),{[o]:x(f({},s),{fetchState:"loading"})})}).addCase(fe.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(fe.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(Ln.pending,e=>{e.default.fetchState="loading"}).addCase(Ln.rejected,e=>{e.default.fetchState="error"}).addCase(Ln.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(W,()=>Il)}}),{setTextSuggestions:hE}=Nl.actions,Ol=Nl.reducer;import{jsx as Do,jsxs as pf}from"react/jsx-runtime";var cf=({types:t,commands:e,onClick:n})=>{let o=lf(),s=k(Pn),r=df(No);return af(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(fe(i))})},[]),pf("div",{children:[e.length>0&&Do($.List,{heading:s("commands"),children:e.map((i,l)=>Do($.ListItem,{id:`command-${l}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:l})=>{var d;return Do($.List,{heading:l,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((a,c)=>Do($.ListItem,{id:`${i}-${c}`,closeOnSelect:!1,description:a.title&&a.text,onClick:()=>n(a.text,a),"data-testid":"search-overlay-suggestion",children:a.title||a.text},`${a.id}-${a.text}`))},i)})]})},Dl=cf;import{useDispatch as mf}from"react-redux";import{createAsyncThunk as uf}from"@reduxjs/toolkit";function _l(t){return uf("analytics/logEvent",(e,n)=>{var r,i,l;let o=(i=(r=n.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(l=n.getState())==null?void 0:l.info.agentInfo;return n.extra.deepdeskAPI.sendEvent(e.name,x(f({conversationId:o},s),{data:e.data}))})(t)}function G(){let t=mf();return(e,n)=>v(this,null,function*(){yield t(_l({name:e,data:n}))})}import{jsx as Se,jsxs as fr}from"react/jsx-runtime";var xf=200,Sf=5,bf=4,gr=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?bf:Sf),Cf=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Tf=()=>{var bt,ae,fi;let t=vf(),e=oe(),n=k(Pn),[o,s]=mr(!1),[r,i]=mr(""),l=at(ya),d=at(st),[a,c]=mr(),m=at(q),p=T("showSearch"),u=T("enableSuggestionFeedback"),y=T("showEntitiesCommand"),g=T("showImageSearch"),h=T("searchTriggerKey"),w=at(Ka),E=at(Bs),b=at(va),R=at(ha),N=((fi=(ae=(bt=d==null?void 0:d.uiConfig)==null?void 0:bt.search)==null?void 0:ae.initialTypes)==null?void 0:fi.filter(({isActive:L})=>L))||[],D=G(),_=yf(()=>{let L=ee=>gr(E.filter(U=>U.type===ee.toUpperCase()),ee,a),V=(w==null?void 0:w.map(ee=>({value:ee.code.toUpperCase(),label:`${ee.name}s`,list:L(ee.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(V.push({value:"PERSONAL",label:n("personalSuggestions"),list:L("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:L("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:L("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),g&&V.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:L("IMAGE"),listOrientation:"horizontal"}),N.length===0)return V;let Yt=N.map(ee=>V.find(U=>U.value.toLowerCase()===ee.type)).filter(ee=>!!ee),Ts=V.filter(ee=>!Yt.find(U=>U.value===ee.value));return[...Yt,...Ts]},[w,N,g,a]),K=[{label:n("entitiesClipboard"),onClick:()=>t(Lt("entities")),shouldShow:y&&Cf(n("entitiesClipboard"),r)}].filter(L=>L.shouldShow).filter(()=>!a),Re=Fl(ff((L,V)=>{t(nt({query:L,type:V,tags:["search-overlay"],size:a?50:20}))},xf),[a]),de=Fl((L,V)=>{switch(V.type){case"IMAGE":e.send(Us,{suggestion:V});break;default:e.send(Le,{text:L,suggestion:V})}t(me(!1))},[t]),M=L=>{ve(L.text),t(Ue({name:"entity copied",data:{entity:L,type:"copy"}})),t(me(!1))};function z(L){return V=>{o?window.confirm(n("warning"))&&(L(V),s(!1)):L(V)}}return Hl(()=>{r?Re(r,a):t(go())},[r,a]),Hl(()=>{m&&t(Tn())},[m]),vl(h,()=>{t(me(!0)),D("open search",{via:"ctrl+k"})}),!p||!d?null:fr($,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:z(L=>t(me(L))),onChangeType:L=>c(L),onChangePage:z(L=>t(Lt(L))),selectedType:a,search:r,page:l,isOpen:R,types:_,updateDeps:[E],children:[fr($.Page,{id:"search",children:[r.length===0&&Se(Dl,{types:N,commands:K,onClick:de}),r.length>0&&fr(hf,{children:[K.length>0&&Se($.List,{heading:n("commands"),children:K.map((L,V)=>Se($.ListItem,{closeOnSelect:!1,onClick:L.onClick,id:`commands-${V}`,children:L.label},L.label))}),_.map(({value:L,label:V,list:Yt,lineClamp:Ts,listOrientation:ee})=>Se($.List,{heading:V,orientation:ee==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(L),hasMore:!a&&b[L.toLowerCase()]>gr(Yt,L,a).length,children:gr(Yt,L,a).map(U=>Se($.ListItem,{id:`${L}-${U.id}`,closeOnSelect:!1,lineClamp:Ts,onClick:()=>de(U.text,U),description:L!=="IMAGE"?U.title&&U.text:void 0,tooltip:U.text,extra:u&&Se($.ListItemActions,{children:Se(Mo,{context:r,source:"search",suggestion:U})}),children:L==="IMAGE"?Se($.Image,{title:U.title||U.text,src:U.image}):U.title||U.text},`${U.id}-${U.text}`))},L))]})]}),Se($.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:z(()=>{t(Lt("search"))}),children:Se(Tl,{onCopy:M})})]})},Bl=Tf;import{jsx as Kl,jsxs as kf}from"react/jsx-runtime";var Ef=()=>{let t=T("showSearch"),e=T("isEmbedded");return kf(wf,{children:[t&&Kl(Bl,{}),e&&Kl(Ba,{})]})},Ul=Ef;import Lf from"classnames";import{useSelector as Af}from"react-redux";import{jsx as hr}from"react/jsx-runtime";var zl=({className:t})=>hr("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 512 512",xmlSpace:"preserve",className:t,children:hr("g",{children:hr("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
5
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
6
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
7
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
8
- 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 bd}from"react/jsx-runtime";var Rh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Cd=({className:t,color:e})=>bd("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:bd("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:Rh[e||"pink"]})});var wd={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var Mr={};G(Mr,{enUS:()=>Ih,nlNL:()=>Ph});var Ih={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Ph={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Mh}from"react-redux";import{jsx as Nr,jsxs as Td}from"react/jsx-runtime";var Ed=({onLogIn:t})=>{let e=R(Mr),n=E("floatingMenu"),o=E("productName"),s=Mh(),r=Ah(X),i=S("FloatingMenu",wd);if(r===null||n===!1)return null;let a=()=>{r===!0?s(de(!0)):t()};return Td("button",{type:"button",className:Lh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Nr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),Td("div",{className:i.icon,children:[Nr(Cd,{className:i.logo,color:"pink"}),r===!1&&Nr(Sd,{className:i.lock})]})]})};import{useEffect as ey,useRef as ty}from"react";import{useDispatch as ny,useSelector as $t}from"react-redux";function Te(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 Nh}from"@reduxjs/toolkit";var Oh={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},Go=({ui:t})=>t.overlayCollapsed,kd=Nh({name:"ui",initialState:Oh,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:Kn,setInputFocus:Xo,setOverlayCollapsed:Je,setOpenOverlayWhenTyping:Rd,setOverlayCollapsedUserOverwrite:Id}=kd.actions,Pd=kd.reducer;import{useMemo as Qh}from"react";import{Interweave as Kh}from"interweave";import{useEffect as Uh,useMemo as zh,useRef as Wh,useState as Vh}from"react";import{useDispatch as jh,useSelector as Od}from"react-redux";import{useEffect as Dh}from"react";function Ld(t,e,n){Dh(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Ad={root:"dd-1MBCO",actions:"dd--x4cy",closeIconContainer:"dd-1z5NR",closeIcon:"dd-8qMF-",badge:"dd-4Fpkz",formattedText:"dd-EzvTB"};import{jsx as Md,jsxs as _h}from"react/jsx-runtime";var Nd=({title:t})=>_h("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Md("title",{id:"closeTitle",children:t}),Md("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 Or={};G(Or,{enUS:()=>Fh,nlNL:()=>Hh});var Fh={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Hh={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as St,jsxs as Jh}from"react/jsx-runtime";var $h=["search","personal-collection-search","search-autocomplete"];function qh(t,e,n,o={}){var r;let s="";return $h.includes(e)?s=pl(dr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=dr(t,n,o),o.placeholders===!0&&(s=ul(s)),s}var Gh=()=>{},Xh=({selected:t,suggestion:e})=>{let n=R(Or),o=E("inlineSuggestions"),s=Od(Dt),[r,i]=Vh(!1),a=E("enableSuggestionFeedback"),d=Od(h=>h.input.text),l=jh(),c=S("TextSuggestion",Ad),m=Wh(null),p=e.source==="assistant",u=a&&!p;Uh(()=>{let h=setTimeout(()=>{l(ia({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(h)}},[e]),Ld(m,"click",()=>{l(fe({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let y=()=>{l(at({source:e.source,text:e.text,assistantCode:e.assistantCode}))},f=zh(()=>qh(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:Jh("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[St(A,{ref:m,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:Gh,children:St(Kh,{attributes:e.source==="assistant"?{"data-label":n("assistant")}:void 0,containerTagName:"div",noWrap:!1,tagName:"span",className:c.formattedText,content:f})}),u&&r&&St("div",{className:c.actions,children:St(Wo,{source:"overlay",context:d,suggestion:e})}),p&&r&&St("div",{className:c.closeIconContainer,children:St("button",{type:"button",className:c.closeIcon,onClick:y,title:n("close"),children:St(Nd,{title:n("close")})})})]})},Dd=Xh;import{jsx as Yh}from"react/jsx-runtime";var Zh=({suggestions:t,selectedIndex:e,reverse:n})=>Qh(()=>{let s=t.map((r,i)=>Yh(Dd,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),Jo=Zh;var _d={root:"dd-PfvRI",paper:"dd-HYlyY"};import{jsx as Qo}from"react/jsx-runtime";var oy=()=>{let t=ty(null),e=S("InlineSuggestionsOverlay",_d),n=$t(Te),o=ny(),s=$t(X),r=$t(Ot),i=$t(Go),a=E("showTextSuggestions"),d=$t(it),l=$t(mn);return vt(()=>{setTimeout(()=>{o(Je({collapse:!0,skipWhenInputFocus:!0}))})}),ey(()=>{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||!a||d.length===0||s!==!0||r===!1?null:Qo("div",{className:e.root,"data-variant":"inline",children:Qo("div",{ref:t,className:e.paper,children:Qo(te,{children:Qo(Jo,{suggestions:d,selectedIndex:l})})})})},Fd=oy;import{Provider as sy}from"react-redux";import{jsx as Zo}from"react/jsx-runtime";var ry=({children:t})=>{let n=E("locale").replace("-","");return Zo(nr.Provider,{value:n,children:t})},iy=({store:t,customStyles:e={},children:n})=>Zo(sy,{store:t,children:Zo(ry,{children:Zo(an.Provider,{value:e,children:n})})}),Qe=iy;import Br from"classnames";import{useEffect as vy,useRef as xy,useState as Sy}from"react";import{useDispatch as by,useSelector as bt}from"react-redux";import{useState as ay}from"react";function Hd(t,e){let[n,o]=ay(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return w.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){w.error(i)}}]}var Bd=()=>/Mac/i.test(navigator.platform);import cy from"classnames";import{Fragment as py,useCallback as _r,useMemo as Ud}from"react";var Dr={};G(Dr,{enUS:()=>ly,nlNL:()=>dy});var ly={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"}]}]},dy={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 Kd={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as Yo,jsxs as zd}from"react/jsx-runtime";var Fr=(t,e,n)=>o=>Yo("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),uy=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=R(Dr),i=oe(),a=S("Login",Kd),d=E("productName"),l=_r(h=>{h.preventDefault(),o&&o(Number.parseInt(h.target.value,10))},[]),c=_r(h=>{h.preventDefault(),i.send(Ht,!0)},[e]),m=Ud(()=>h=>Yo("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),p=_r(h=>Yo("button",{type:"button",className:a.anchorButton,onClick:c,children:h},"prompt"),[c]),{min:u,hour:y,day:f}=Ud(()=>({min:Fr(a,60*10,l),hour:Fr(a,60*60,l),day:Fr(a,60*60*12,l)}),[]);return zd("div",{className:cy(t,a.root),children:[r("loginPlease",{login:n?p:m,productName:d}),o&&zd(py,{children:[Yo("br",{}),r("snooze",{min:u,hour:y,day:f})]})]})},es=uy;import{useDispatch as my}from"react-redux";var Wd={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as Vd,jsxs as fy}from"react/jsx-runtime";var gy=({title:t})=>{let e=S("SearchTrigger",Wd),n=my(),o=j();return fy("button",{type:"button",className:e.root,onClick:()=>{n(de(!0)),o("open search",{via:"autocomplete-overlay"})},children:[Vd(Kt,{}),Vd("span",{className:e.text,children:t})]})},jd=gy;var Hr={};G(Hr,{enUS:()=>hy,nlNL:()=>yy});var hy={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"}]},yy={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 $d={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 J,jsxs as Un}from"react/jsx-runtime";var Cy=({onLogIn:t})=>{let e=S("SuggestionsOverlay",$d),n=R(Hr),o=bt(Te),s=bt(ra),r=by(),i=xy(null),a=E("searchTriggerKey"),d=E("productName"),l=bt(Go),c=bt(X),m=bt(Ot),[p,u]=Sy(null),y=E("showSearch"),f=E("showTextSuggestions"),h=E("adminUrl"),C=E("isEmbedded"),[T,b]=Hd("dd-snooze-until-ms",0),k=l||T>Date.now(),N=bt(it),O=bt(mn),_=N.filter(re=>re.source!=="gpt").length,z=()=>{k&&b(0),r(Id(!k))},Pe=re=>{let M=Date.now()+re*1e3;b(M),w.info(`Snooze until: ${new Date(M)}`),r(Je({collapse:!0}))};return vy(()=>{_===0&&u(null)},[N,_]),vt(()=>{r(Je({collapse:!0,skipWhenInputFocus:!0}))}),c===null||m===!1?null:c===!1?Un("div",{ref:i,className:Br(e.root,{[e.isCollapsed]:k}),children:[!k&&Un("div",{className:e.triggers,children:[J("div",{style:{flex:1}}),J("div",{className:e.triggersRight,children:J(At,{className:e.toggleButton,title:n("collapse"),onClick:z,isCollapsed:!1})})]}),J("div",{className:e.toggleButtonWrapper,children:J(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:z,isCollapsed:!0})}),J("div",{className:e.collapsible,children:J(es,{loginUrl:h,isEmbedded:C,onLogIn:t,onSnooze:Pe})})]}):!s||!o?null:Un("div",{ref:i,className:Br(e.root,{[e.isCollapsed]:k}),children:[!k&&Un("div",{className:e.triggers,children:[J("div",{style:{flex:1},children:y&&J("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>u(n(Bd()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>u(null),children:J(jd,{title:n("search")})})}),Un("div",{className:e.triggersRight,onFocus:()=>{},children:[J("div",{className:Br(!p&&e.hintsHidden,e.hints),children:p}),J(At,{className:e.toggleButton,title:n("collapse"),onClick:z,isCollapsed:!1})]})]}),J("div",{className:e.toggleButtonWrapper,children:J(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:z,isCollapsed:!0})}),_>0&&f&&J("div",{className:e.collapsible,onFocus:()=>{},children:J(te,{children:J(Jo,{suggestions:N,selectedIndex:O,reverse:!0})})})]})},qd=Cy;import $r from"classnames";import{Interweave as av}from"interweave";import{useCallback as lv,useEffect as dv,useMemo as mc,useRef as cv}from"react";import{connect as pv}from"react-redux";import{useEffect as wy,useRef as Ty,useState as Ey}from"react";function ts(t){return t.contentEditable==="true"}function ky(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 Gd(t){let{selectionStart:e,selectionEnd:n}=ts(t)?ky(t):t;return[e,n]}function Xd(t){let[,e]=Ey(),n=Ty(null);return n.current=Gd(t),wy(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=Gd(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 Jd(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(oo);if(!i||i.length===0)return;let a=0;i.find(d=>{let l=o.indexOf(d,a);return s>l&&r<l+d.length?(n.selectionStart=l,n.selectionEnd=l+d.length,!0):(a=l+d.length,!1)})}import{cloneElement as Ry}from"react";var Iy=["div","span","mark","strong","b","i","u","em"];function Kr(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(Iy.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),Ry(o,{children:Kr(i,e,n+1)})]}return[...t,...e]}function Ct(t){return t.tagName.toLowerCase()==="textarea"}var Qd={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 Dy from"classnames";import{Matcher as _y}from"interweave";import{useEffect as Fy,useMemo as Hy}from"react";import{useEffect as Py,useRef as Ly,useState as Ay}from"react";function Zd(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function ns(t){let e=Ly(null),[n,o]=Ay(!1);return Py(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=Zd((m,p)=>{let u=e.current;if(!u)return;let y=m/r,f=p/r,h=u.getBoundingClientRect(),C=y>h.x&&y<h.x+h.width&&f>h.y&&f<h.y+h.height;C&&!s?(s=!0,o(!0)):!C&&s&&(s=!1,o(!1))},({clientX:m,clientY:p})=>[m,p]),[d,l]=Zd(()=>{s=!1,o(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",d),()=>{a(),l(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",d)}},[e]),[e,n]}function Yd(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function os(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function ec(t){return t!=null}import My from"classnames";import{forwardRef as Ny,useRef as Oy}from"react";var Ke={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 tc}from"react/jsx-runtime";var ss=Ny((s,o)=>{var r=s,{className:t,children:e}=r,n=L(r,["className","children"]);let i=Oy(null),a=S("TabCompletion",Ke);return tc("div",x(g({ref:os([i,o]),className:My(t,a.popoverContentContainer)},n),{children:tc("div",{className:a.popoverContent,children:e})}))});import{jsx as zn,jsxs as Uy}from"react/jsx-runtime";var By=t=>e=>{let n=Rr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},Ky=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=S("TabCompletion",Ke),i=Ho(),a=Hy(()=>By(t.getBoundingClientRect()),[t]),[d,l]=ns(t);return Fy(()=>{l?i.open():i.close()},[l]),Uy("span",{children:[zn("mark",{ref:os([d,i.triggerRef]),className:Dy(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&zn(jt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:zn(ss,{style:n,children:zn("div",{className:r.hintText,children:s})})})]})},rs=class extends _y{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(g({},s),{keywordRegex:new RegExp(`\\b${Yd(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 a=n.charAt(i.index-1),d=n.charAt(i.index+r.keyword.length);return a==="{"&&d==="}"?null:{index:i.index,length:i[0].length,match:i[0],matchString:i[0],suggestion:r.suggestion,preparedKeywordMatch:r,valid:!0}}).filter(ec);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 zn(Ky,{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 zy}from"interweave";import Wy from"classnames";import{jsx as nc}from"react/jsx-runtime";var Vy=({inputElement:t,children:e})=>{let n=S("TabCompletion",Ke),[o,s]=ns(t);return nc("mark",{ref:o,className:Wy(n.matchPlaceholder,{[n.hover]:s}),children:e})},is=class extends zy{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 nc(Vy,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import jr from"classnames";import{Matcher as ev}from"interweave";import{createRef as tv,forwardRef as nv,useCallback as ov,useEffect as cc,useRef as pc,useState as uc}from"react";import{useDispatch as sv}from"react-redux";import{jsx as oc}from"react/jsx-runtime";var sc=()=>oc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:oc("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 jy,useEffect as ic,useMemo as $y,useState as ac}from"react";import{useDispatch as qy,useSelector as lc}from"react-redux";import Gy from"lodash.debounce";var rc={root:"dd-ky-Bv",content:"dd-kV5e1"};function as(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 Ur(t){return t.replace("https://www.","").replace("https://","")}import{jsx as wt,jsxs as zr}from"react/jsx-runtime";var Xy=3,Jy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Qy=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=Xy})=>{let r=S("LinkSearch",rc),[i,a]=ac(""),d=qy(),l=lc(cd("url")),c=lc(Ra("URL")),m=$y(()=>c.map(Jy),[c]),[p,u]=ac(m.length-1),y=E("fallbackImage"),f=b=>{let k=b.target;a(k.value)},h=(b,k)=>{b.stopPropagation(),b.preventDefault(),window.open(k,"_blank")},C=b=>{var O;let k=p-1<0?m.length-1:p-1,N=p+1===m.length?0:p+1;b.code==="Escape"&&(a(""),e()),b.code==="ArrowUp"&&u(k),b.code==="ArrowDown"&&u(N),b.code==="Enter"&&t(((O=m[p])==null?void 0:O.text)||i)},T=jy(Gy(b=>{d(dt({query:b,type:"URL",tags:["link-search"]}))},300),[]);return ic(()=>{i&&T(i)},[i]),ic(()=>()=>{d(vo())},[]),zr("div",{className:r.root,children:[wt(te,{withDivider:!0,children:(i?m:l).slice(0,s).map((b,k)=>wt(A,{selected:p===k,onClick:()=>t(b.text),"data-testid":"linksearch-suggestion",children:zr(D,{children:[wt(D.Image,{src:as(b,"small",y||void 0),title:b.title||b.text}),zr(D.Content,{className:r.content,cropText:!0,children:[wt(D.Title,{children:b.title||Ur(b.text)}),b.title&&Ur(b.text)]}),wt(A.Actions,{children:wt(A.ActionButton,{label:o,onClick:N=>h(N,b.text)})})]})},b.text))}),wt(In,{value:i,onChange:f,autoFocus:!0,placeholder:n,onKeyUp:C})]})},dc=Qy;var Wr={};G(Wr,{enUS:()=>Zy,nlNL:()=>Yy});var Zy={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Yy={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as Ee,jsxs as Vr}from"react/jsx-runtime";var rv=nv((t,e)=>{let n=S("TabCompletion",Ke);return Ee("mark",{ref:e,className:jr(n.matchSelection)},"selection-start")}),iv=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=R(Wr),i=S("TabCompletion",Ke),a=pc(null),d=pc(null),[l,c]=uc(null),m=sv(),p=Ho(document.activeElement===o),[u]=uc(()=>document.createRange());p.triggerRef.current=u,cc(()=>()=>u.detach(),[]),cc(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),vt(()=>{p.close()});let y=ov(f=>{let h=u.toString(),C=/^http(s?):\/\//.test(f)?f:`https://${f}`;m(po({text:`[${h}](${C})`,replace:"selection"}))},[]);return Vr("span",{children:[Ee("mark",{ref:a,className:jr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":p.opened?"true":"false",children:s}),p.opened&&Ee(jt,{className:i.popoverRoot,triggerRef:p.triggerRef,boundaryRef:e,position:"above",align:"start",children:Vr(ss,{style:n,ref:d,children:[Ee("div",{className:jr(i.selectionOptions,{[i.selectionOptionsIsHidden]:l!==null}),children:Vr("button",{type:"button",tabIndex:l===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>c("insertLink"),children:[Ee(sc,{}),Ee("span",{children:"\xA0"}),Ee("span",{children:r("insertLink")})]})}),l==="insertLink"&&Ee(dc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:y,onDismiss:()=>{c(null),p.close()}})]})})]},"selection-end")},ls=class extends ev{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=tv(),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 a=this.foundIndex===1;return i&&a?this.charCount+=r-this.charCount:this.charCount+=n.length,i?g({isStart:a},i):null}replaceWith(n,o){return o.isStart?Ee(rv,{ref:this.startRef}):Ee(iv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as uv}from"react-redux";import{jsx as qt,jsxs as fv}from"react/jsx-runtime";var mv=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=S("TabCompletion",Qd),c=E("insertLink"),m=E("showMidSentenceSuggestions"),p=E("inlineSuggestions"),u=Xd(a),y=cv(null),f=uv(X);dv(()=>{Ct(a)&&u&&Jd(a,u)},[u]);let h=lv(b=>{if(!s||!n)return b;let k=[qt("span",{className:l.resetIndent,children:"\u200B"},"u200B"),qt("span",{"data-testid":"tab-completion",className:$r(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&k.push(qt("span",{className:$r(l.hint,l.resetIndent),children:qt(Ms,{keyCode:"tab"},"tabHint")},"tabHint")),Kr(b,k)},[s,n,o]),C=mc(()=>{let b=[];return c&&b.push(new ls("selection")),b.push(new is("placeholders")),r&&b.push(new rs("keywords")),b},[p,c,r]),T=mc(()=>{let b=window.getComputedStyle(a);return{"--dd-color":b.color,"--dd-font-size":b.fontSize,"--dd-font-family":b.fontFamily,"--dd-font-variant":b.fontVariant}},[]);return!t||!f?null:fv("div",{ref:b=>{b!=null&&b.parentElement&&(y.current=b==null?void 0:b.parentElement)},className:l.root,style:T,children:[qt(av,{tagName:"span",containerTagName:"div",className:$r(l.container,l.agentText),disableLineBreaks:Ct(a),content:e||"\u200B",onAfterParse:h,matchers:C,selection:u,keywordMatches:i,inputElement:a,inputStyle:T,boundaryRef:y,inlineSuggestionsOnlyAtEnd:!m}),qt("br",{})]},"tab-completion")},gv=t=>{var h,C,T;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=_t({input:e}),a=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",l=(h=e.html)!=null?h:Dn(e.text),c=a.indexOf(e.text)===0?a.slice(e.text.length):"",{showTabHint:m}=n,{isSupported:p}=r,{showTabCompletion:u,visible:y,showStyleSuggestions:f}=o;return{showTabHint:m,showStyleSuggestions:f,showTabCompletion:u&&Te(t),content:l,tabText:c,source:d,keywordMatches:(T=(C=s.list)==null?void 0:C.keywordMatches)!=null?T:[],enabled:y&&p!==!1}},gc=pv(gv)(mv);import{Fragment as vx,useEffect as ti,useState as xx}from"react";import{useDispatch as ep,useSelector as Q}from"react-redux";import{createAsyncThunk as fc,createSlice as hv}from"@reduxjs/toolkit";var yv={token:null,interval:null},qr=fc("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(void 0,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Gr=fc("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(qr()),setInterval(()=>o(qr()),n)}),hc=hv({name:"passwordlessToken",initialState:yv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(qr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Gr.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:yc}=hc.actions,vc=hc.reducer;import{createSelector as vv}from"@reduxjs/toolkit";function xv(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var xc=vv([Qa],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:xv(n.code),label:n.code,name:n.name,description:n.name}})));import{useEffect as Sv,useState as bv}from"react";import{useDispatch as Cv}from"react-redux";import Cc from"classnames";import{jsx as Sc}from"react/jsx-runtime";var Wn=()=>Sc("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Sc("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 bc={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as Gt,jsxs as wc}from"react/jsx-runtime";var wv=({entities:t})=>{let e=S("EntitiesWidgetList",bc),[n,o]=bv(void 0),s=Cv(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),be(a.text),s(Me({name:"entity copied",data:{entity:a,type:"copy"}})))};return Sv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:Gt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>wc("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Gt("span",{className:e.entityText,children:a.text}),wc("span",{className:e.iconWrapper,children:[Gt("span",{className:Cc(e.icon),children:Gt(Wn,{})}),Gt("span",{className:Cc(e.icon,n===d&&e.iconClicked),children:Gt(Wn,{})})]})]},a.text))})},Tc=wv;import{jsx as Ec}from"react/jsx-runtime";var kc=()=>Ec("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ec("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 Pv}from"react";import{useSelector as Oc}from"react-redux";var Rc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Ic={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as Ev}from"react/jsx-runtime";var Tv=({size:t=12})=>{let e=S("LoadingSpinner",Ic);return Ev("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Pc=Tv;import{jsx as Lc}from"react/jsx-runtime";var Ac=()=>Lc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Lc("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 Mc,jsxs as kv}from"react/jsx-runtime";var Nc=t=>kv("svg",x(g({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[Mc("title",{id:"checkTitle",children:"Check"}),Mc("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 Xr={};G(Xr,{enUS:()=>Rv,nlNL:()=>Iv});var Rv={error:[{type:0,value:"Something went wrong"}]},Iv={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as Ue,jsxs as Dc}from"react/jsx-runtime";var Lv=3e3,Av=({assistantOptions:t})=>{let e=S("OnDemandAssistants",Rc),n=R(Xr),o=Pv(),s=ht(he),r=ht(Oe),i=Oc(sl),a=Oc(rl),d=j(),l=a.filter(p=>p.isPinned),c=a.filter(p=>!p.isPinned),m=p=>v(void 0,null,function*(){clearTimeout(o.current),d("trigger on demand assistant",{assistantCode:p}),p===i?yield r.call({transcript:t.transcript}):yield s.call(x(g({},t),{assistantCode:p})),o.current=setTimeout(()=>s.reset(),Lv)});return a.length===0?null:Dc("div",{className:e.root,children:[l.map(({assistant:p,assistantName:u,displayName:y})=>Ue("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>m(p),children:y||u},p)),c.length>0&&Dc(q,{placement:"top-end",children:[Ue(q.Trigger,{className:e.trigger,disabled:s.state==="loading",children:Ue(Ko,{"data-testid":"trigger"})}),Ue(q.Content,{className:e.nav,"data-testid":"popover",children:c.map(({assistant:p,assistantName:u,displayName:y})=>Ue(q.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>m(p),children:y||u},p))})]}),s.state==="loading"&&Ue(Pc,{}),s.state==="done"&&Ue(Nc,{"data-testid":"trigger-done"}),s.state==="error"&&Ue(vl,{trigger:Ue(Ac,{}),children:n("error")})]})},_c=Av;import{useDispatch as Vv}from"react-redux";import{useRef as Ov}from"react";var Fc={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as Nv}from"react/jsx-runtime";var Mv=({width:t})=>{let e=S("LoadingProgressBar",Fc);return Nv("div",{className:e.loadingBar,style:{width:t}})},ds=Mv;import{jsx as Xt,jsxs as Dv}from"react/jsx-runtime";var cs=({title:t})=>{let e=Ov(null);return no(e),Xt(A,{ref:e,children:Xt(D,{children:Dv(D.Content,{children:[Xt(D.Title,{children:t}),Xt(ds,{width:"60%"}),Xt(ds,{width:"90%"}),Xt(ds,{width:"50%"})]})})})};var Vn={};G(Vn,{enUS:()=>_v,nlNL:()=>Fv});var _v={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"}]},Fv={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 Hc,useRef as Hv,useState as Bv}from"react";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 ke,jsxs as ps}from"react/jsx-runtime";var Kv=500,Uv=100,zv=({content:t,onChange:e,onCopy:n})=>{let o=Hv(null),s=S("WidgetCue",Jr);return Hc(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,Uv),Kv);r.style.setProperty("height",`${i}px`)},[t]),ke("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},Wv=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s})=>{var f;let r=S("WidgetCue",Jr),i=R(Vn),a=j(),d=E("hasKeyboardInput"),[l,c]=Bv(t.text),m=()=>{e&&e(l,t),n(t)},p=h=>{o&&o(h,t)},u=h=>{s&&s(h,t)},y=h=>{h.preventDefault(),h.stopPropagation(),n(t)};return Hc(()=>{a("Assistant response displayed",{evaluationId:t.evaluationId,name:t.rule.name,description:t.rule.description,group:t.rule.label,cueText:t.text})},[]),ps(A,{"data-testid":"cue",children:[ke(D,{children:ps(D.Content,{children:[t.title&&ke(D.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?ke(zv,{content:l,onCopy:()=>{let h=document.getSelection();h&&p(h.toString())},onChange:h=>{var C;return c((C=h.target.value)!=null?C:"")}}):ke(He,{content:t.text,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:p,onUse:d?u:void 0})]})}),ps(A.ButtonsContainer,{children:[ps("div",{className:r.actions,children:[(t.specialType==="summary"||t.editable)&&ke(A.Button,{onClick:()=>p(l),children:i("copyCue")}),t.callToAction&&ke(A.Button,{onClick:m,children:t.callToAction.label}),ke(A.Button,{onClick:y,children:i("removeCue")})]}),t.specialType==="summary"?ke(yt,{eventName:"summary feedback",evaluationId:t.evaluationId,feedbackText:(f=t.text)!=null?f:"",feedbackType:"summary",eventData:{summary:t.text}}):ke(yt,{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"})]})]})},Bc=Wv;import{Fragment as $v,jsx as Qr}from"react/jsx-runtime";var jv=({cues:t})=>{let e=Vv(),n=oe(),o=R(Vn),s=j(),r=l=>{e(Lo({code:l.rule.label})),s("Assistant response closed",{evaluationId:l.evaluationId,name:l.rule.name,group:l.rule.label,description:l.rule.description,cueText:l.text})},i=(l,c)=>{switch(be(l),c.specialType){case"summary":s("summary copied to clipboard",{originalText:c.text,finalText:l,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:l,originalText:c.text})}},a=(l,c)=>{var m;c.callToAction&&(e(Po(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:l,originalText:c.text}))},d=(l,c)=>{var m;n.send(Se,{text:l,suggestion:{source:"assistant",assistantCode:(m=c.rule)==null?void 0:m.label,sourceText:l}}),s("Assistant response used",{evaluationId:c.evaluationId,name:c.rule.name,group:c.rule.label,description:c.rule.description,usedText:l,originalText:c.text})};return Qr($v,{children:t.map(l=>l.isLoading?Qr(cs,{title:l.rule.label.startsWith("__")?o(l.rule.label):l.title},l.rule.id):Qr(Bc,{cue:l,onCallToAction:a,onRemove:r,onCopy:i,onUse:d},l.rule.id))})},Kc=jv;import{Fragment as qv,useEffect as Gv}from"react";var Uc={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 Tt,jsxs as zc}from"react/jsx-runtime";function Xv(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Wc=({data:t,schema:e})=>{let n=S("WidgetCustomData",Uc),o=s=>{be(s)};return Gv(()=>{w.info("Custom data",t,e)},[t]),Tt("dl",{className:n.root,children:e.map(s=>{let r=Xv(t,s.path);return zc(qv,{children:[Tt("dt",{className:n.label,children:s.label}),Tt("dd",{className:n.value,children:s.type==="boolean"&&r?Tt("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?Tt("span",{className:n.isFalse,children:s.falseValue}):typeof r=="string"||typeof r=="number"?zc("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[Tt("span",{className:n.copyButtonText,children:r}),Tt(Wn,{})]}):"-"})]},s.label)})})};import{createContext as nx,Fragment as ox,useContext as qc,useEffect as sx,useRef as Gc,useState as Et}from"react";import{useDispatch as rx,useSelector as ix}from"react-redux";var Jt={};G(Jt,{enUS:()=>Jv,nlNL:()=>Qv});var Jv={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"}]},Qv={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 us={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 ex}from"react";var Vc={error:"dd-CoAuB"};var Zr={};G(Zr,{enUS:()=>Zv,nlNL:()=>Yv});var Zv={errorPrefix:[{type:0,value:"Error:"}]},Yv={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as jc,jsxs as tx}from"react/jsx-runtime";var $c=({message:t})=>{let e=ex(null),n=S("WidgetCardError",Vc),o=R(Zr);return no(e),jc(A,{ref:e,children:jc(D,{children:tx(D.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as H,jsxs as ze}from"react/jsx-runtime";var ax=3,lx=({sources:t,onClick:e})=>{let n=R(Jt),o=S("WidgetKnowledgeAssistant",us),[s,r]=Et(!1),i=s?t:t.slice(0,ax);return i.length===0?null:ze("ul",{className:o.sources,children:[i.map(a=>H("li",{className:o.source,"data-testid":"knowledge-assist-source",children:ze(q,{tooltip:!0,placement:"top-start",children:[H(q.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:a.url,onClick:d=>{d.stopPropagation(),e(a)},children:H("span",{className:o.linkContent,children:a.name})}),a.url&&H(q.Content,{className:o.tooltip,children:decodeURIComponent(a.url)})]})},a.name)),i<t&&H("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},dx=({title:t,description:e})=>H(A,{"data-testid":"knowledge-assist-empty-state",children:H(D,{children:ze(D.Content,{children:[H(D.Title,{children:t}),H(He,{content:e})]})})}),cx=({innerRef:t,item:e,index:n,hasKeyboardInput:o,onCopy:s,onUse:r,onSourceClick:i})=>{var d;let a=R(Jt);return ze(A,{"data-testid":"knowledge-assist-answer",ref:t,children:[H(D,{children:ze(D.Content,{children:[H(D.Title,{children:e.question}),H(He,{content:e.answer.answer,useLabel:a("useCue"),copyLabel:a("copyCue"),onCopy:s,onUse:o?r:void 0}),H(lx,{sources:(d=e.answer.sources)!=null?d:[],onClick:l=>i(l,e.question)})]})}),ze(A.ButtonsContainer,{children:[H("div",{}),H(yt,{evaluationId:e.evaluationId,eventName:"knowledge assist feedback",eventData:{question:e.question,isFollowUpQuestion:n>0,isAgent:!0,answer:e.answer.answer},feedbackText:e.answer.answer,feedbackType:"assistant"})]})]})},Yr=nx(null),ms=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,children:o})=>{let[s,r]=Et(null),[i,a]=Et(!1),[d,l]=Et(null),[c,m]=Et(!!n),[p,u]=Et(null),y=rx(),f=j(),h=ht(b=>{if(!t)throw new Error("No knowledge assistant was defined");return l(null),e({assistantCode:t,input:b,threadId:s,onNewThreadId(k){r(k)}})},{onSuccess(b){var k;f("knowledge assist question answered",{question:b.question,answer:b.answer.answer,sources:(k=b.answer.sources)!=null?k:[],isFollowUpQuestion:b.threadId===s,isAutoInitiated:c}),m(!1)},onError(b){var k;l((k=b.message)!=null?k:"Unknown error")}}),C=b=>v(void 0,null,function*(){a(!0),u(b),yield h.call(b),a(!1),u(null)}),T={isEnabled:!!t,isSubmitting:i,threadId:s,pendingInput:p,errorMessage:d,onSubmit:C,onReset(){s&&y(Bt(s)),l(null),r(null)}};return sx(()=>{n&&T.isEnabled&&C(n)},[n]),H(Yr.Provider,{value:T,children:o})},gs=()=>{let t=R(Jt),e=S("WidgetKnowledgeAssistant",us),n=qc(Yr),o=Gc(null),[s,r]=Et(""),i=d=>{r(d.target.value)},a=d=>{d.preventDefault(),n.onSubmit(s).then(()=>{var l;o.current&&((l=o.current)==null||l.focus(),r(""))})};return n.isEnabled?ze("form",{className:e.form,onSubmit:a,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},fs=({title:t,emptyState:e})=>{var y,f;let n=R(Jt),o=j(),s=S("WidgetKnowledgeAssistant",us),r=Gc(null),i=qc(Yr),a=(f=ix(Ln((y=i.threadId)!=null?y:-1)))!=null?f:[],d=E("hasKeyboardInput"),l=oe(),c=(h,C)=>{be(h),o("Assistant response copied",{name:"Knowledge Assistant",group:"knowlegde-assist",description:"",copiedText:h,originalText:h,evaluationId:C.evaluationId})},m=(h,C)=>{o("knowledge assist source viewed",{question:C,sourceViewed:h.url||h.name})},p=h=>{var C;h.preventDefault(),i.onReset(),o("knowledge assist reset",{threadId:(C=i.threadId)!=null?C:void 0})},u=(h,C)=>{l.send(Se,{text:h,suggestion:{source:"assistant",sourceText:h}}),o("Assistant response used",{name:"Knowledge Assistant",group:"knowlegde-assist",description:"",usedText:h,originalText:h,evaluationId:C.evaluationId})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:ze(ox,{children:[H(Le,{type:"knowledge",title:t,"data-testid":"knowledge",children:ze(te,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&H(dx,g({},e)),a.map((h,C)=>H(cx,{innerRef:C===a.length-1?r:void 0,item:h,index:C,hasKeyboardInput:d,onCopy:T=>c(T,h),onUse:T=>u(T,h),onSourceClick:m},`${h.question}_${h.answer}_${C}`)),i.pendingInput&&H(cs,{title:i.pendingInput}),i.errorMessage&&H($c,{message:i.errorMessage})]})}),a.length>0&&H("div",{className:s.resetContainer,children:H(A.Button,{disabled:i.threadId===null||i.isSubmitting,onClick:p,children:n("resetLabel")})})]})};import{useCallback as ux}from"react";var px=/(https?:\/\/[^\s]+)/,Jc=t=>t.split(" ").find(e=>px.test(e));import{jsx as Qt,jsxs as hs}from"react/jsx-runtime";var mx=({suggestion:t,lines:e,onUse:n})=>{var m;let o=t.text||t.url||t.message,s=Jc(o),r=R(Fn),i=E("showImages"),a=E("fallbackImage"),d=E("hasKeyboardInput"),l=p=>{p.preventDefault(),p.stopPropagation(),d&&n(o)},c=ux(p=>{window.open(s,"_blank"),p.stopPropagation(),p.preventDefault()},[s]);return hs(A,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[hs(D,{children:[i&&t.image&&Qt(D.Image,{src:as(t,"small",a||void 0),title:t.title}),hs(D.Content,{children:[t.title&&Qt(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((m=t.searchKeywords)==null?void 0:m.length)>0&&Qt(A.Labels,{labels:t.searchKeywords}),Qt(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),hs(A.Actions,{children:[s&&Qt(A.ActionButton,{onClick:c,label:r("visitUrl")}),d&&Qt(A.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},Qc=mx;import{Fragment as fx,jsx as Zc}from"react/jsx-runtime";var gx=({lines:t,suggestions:e})=>{let n=oe(),o=(s,r)=>{n.send(Se,{text:s,suggestion:x(g({},r),{source:r.source,sourceText:r.text})})};return Zc(fx,{children:e.map(s=>Zc(Qc,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},Yc=gx;var jn={};G(jn,{enUS:()=>hx,nlNL:()=>yx});var hx={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"}]},yx={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 Zt={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 P,jsxs as $n}from"react/jsx-runtime";var tp=(t,e)=>{let n=Q(X);ti(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Sx=({onLogIn:t})=>{let e=S("Widget",Zt),n=E("isEmbedded"),o=E("adminUrl");return P("div",{className:e.loginText,children:P("div",{children:P(es,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},ei=({text:t})=>{let e=S("Widget",Zt);return P("div",{className:e.stateText,children:P("div",{children:P("p",{children:t})})},"notification")},bx=()=>{let t=R(jn),e=ep(),n=S("Widget",Zt),o=E("showSearch"),s=E("isEmbedded"),r=Q(Wt("/admin/")),i=oe(),a=E("productName"),d=j();return tp(()=>{if(s)return e(Gr()),()=>{e(yc())}},[e,s]),!o&&!r?null:$n("div",{className:n.shortcutList,children:[o&&P(A.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:P(Kt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&P(A.Button,{as:"a",target:"_blank",icon:P(kc,{}),href:r,"data-testid":"shortcut-studio-login","aria-label":t("linkStudioLogin",{productName:a}),className:n.shortcut,rel:"noreferrer",onClick:()=>{d("open my deepdesk",{via:"widget-shortcut"})},children:t("linkStudioLogin",{productName:a})})]})},Cx=({title:t,content:e})=>{let n=R(jn),[o,s]=xx(!0);return o?P(Le,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:P(te,{withDivider:!0,children:$n(A,{children:[P(D,{children:P(D.Content,{children:P(He,{content:e})})}),P(A.ButtonsContainer,{children:P(A.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},wx=()=>{let t=ep(),e=Q(Nn),n=Q(al),o=Q(xc),s=Q(va),r=Q(Fo),i=Q(Vo),a=Q(mt),d=Q(xe);return ti(()=>{!!s&&!n&&w.warn("Custom data provided, but no schema.")},[s,n]),tp(()=>{e.forEach(({type:l})=>{l==="entities"?t(ye()):so.includes(l)||t(ve(l))})},[t,d,a]),ti(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&w.warn("Received cues, but cues are not configured in widget.")},[e,o]),P(vx,{children:e.map(({type:l,title:c,amount:m,lines:p,schema:u,property:y})=>{var f,h;switch(l){case"entities":return r&&r.length>0&&P(Le,{type:l,title:c,"data-testid":`type-${l}`,children:P(Tc,{entities:r})},l);case"cues":return o&&o.length>0&&P(Le,{type:l,title:c,"data-testid":`type-${l}`,children:P(te,{withDivider:!0,children:P(Kc,{cues:o})})},l);case"custom-data-banner":return s&&y&&s[y]&&P(Cx,{title:c,content:String(s[y])},l);case"custom-data":return s&&u&&P(Le,{type:l,title:c,"data-testid":`type-${l}`,children:P(te,{withDivider:!0,children:P(Wc,{data:s,schema:u})})},l);default:return((h=(f=i[l])==null?void 0:f.suggestions)==null?void 0:h.length)>0&&P(Le,{type:l,title:c,"data-testid":`type-${l}`,children:P(te,{withDivider:!0,children:P(Yc,{lines:p,contentType:l,suggestions:i[l].suggestions.slice(0,m)||[]})})},l)}})})},ni=({children:t})=>{let e=S("Widget",Zt);return P("div",{className:e.footer,children:t})},oi=({children:t})=>{let e=S("Widget",Zt);return P("div",{className:e.root,"data-testid":"widget",children:t})},Tx=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript",expectFormat:"json-schema:cues"}})=>{let o=R(jn),s=Q(Ot),r=Q(X),i=Q(ta),a=Q(mt),d=Q(il("knowledge-assist")),l=Q(Ao),c=Q(Mo);return s===!1?P(ei,{text:o("notSupported")}):r===!1?P(Sx,{onLogIn:t}):r===null?P(ei,{text:o("waiting")}):!i||!a?P(ei,{text:o("waitingForConversation")}):P(oi,{children:$n(ms,{initialQuestion:e.initialQuestion,assistantCode:l!=null?l:c,evaluateKnowledgeAssistFn:c?pt:ut,children:[$n(ln,{children:[P(bx,{}),P(wx,{}),d&&P(fs,{title:d.title,emptyState:e.emptyState})]}),$n(ni,{children:[d&&P(gs,{}),P(_c,{assistantOptions:n})]})]})})},np=Tx;function Gn(t){let e=new Range;return e.selectNodeContents(t),e}function op(t,e,n){try{return kt(t,e,n),!0}catch(o){return!1}}function ys(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function vs(t){return"tagName"in t&&t.tagName==="BR"}var qn=/[\u200B-\u200D\uFEFF]/g;function kt(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,l){let c=-1,m=/[\u200B-\u200D\uFEFF]/;if(!m.test(d))return l;for(let p=0;p<=d.length;p++)if(m.test(d[p])||c++,c===l)return p;throw new Error("Offset out of range")}function a(d){switch(d.nodeType){case Node.TEXT_NODE:{let l=d.textContent,c=l.replace(qn,""),m=s+c.length,p=e>=s&&e<=m,u=n>=s&&n<=m;if(p){let y=i(l,e-s);y===0&&!u?o.setStartBefore(d):o.setStart(d,y)}u&&(o.setEnd(d,i(l,n-s)),r=!0),s=m;break}case Node.ELEMENT_NODE:{if(vs(d)&&(s===e&&o.setStartBefore(d),s++,s===n)){o.setEndAfter(d),r=!0;return}for(let c=0;c<d.childNodes.length&&(a(d.childNodes[c]),!r);c++);let l=d.lastChild;ys(d)&&l&&!ys(l)&&!vs(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function xs(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,a,d,l=0;function c(m){let p=m===t,u=m===n,y=m===s;switch(m.nodeType){case Node.TEXT_NODE:{let f=m.textContent;u&&(a=l+f.substring(0,o).replace(qn,"").length),y&&(d=l+f.substring(0,r).replace(qn,"").length),l+=f.replace(qn,"").length;break}case Node.ELEMENT_NODE:{if(vs(m)&&m.nextSibling){l++;break}!p&&ys(m)&&m.previousSibling&&l++;for(let f=0;f<m.childNodes.length;f++){let h=u&&f===o,C=y&&f===r;if(h&&(a=l),C&&(d=l),d!==void 0||((!h||!i)&&c(m.childNodes[f]),y&&f===r-1&&(d=l),d!==void 0))break}y&&(d=l);break}default:break}}if(c(t),d===void 0)throw new Error("Could not determine start and end");return{start:a!=null?a:d,end:d}}function Ss(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,a=0,d="";function l(c){let m=c===t,p=c===n,u=c===s;switch(p&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let y=p?o:0,f=u?r:void 0;d+=c.textContent.replace(qn,"").substring(y,f);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&vs(c)&&c.nextSibling){d+=`
9
- `;break}!m&&!i&&a===1&&ys(c)&&c.previousSibling&&(d+=`
10
- `);let y=p?o:0,f=u?Math.min(r,c.childNodes.length):c.childNodes.length;for(let h=y;h<f&&(l(c.childNodes[h]),a!==2);h++);break}default:break}u&&(a=2)}return l(t),d}var sp=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(sp||{}),Ze=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();je(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(sp).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 rp(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Yt=class extends Ze{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Ss(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!rp(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!rp(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return xs(this.element,n);let o=this.lastKnownSelection;if(o&&op(this.element,o.start,o.end))return o;let s=Gn(this.element);return s.collapse(!1),xs(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Ss(this.element,kt(this.element,n,o))}listen(){super.listen();let n=new MutationObserver(r=>{var i,a;r.length===2&&r[0].addedNodes.length===1&&((i=r[0].addedNodes[0])==null?void 0:i.textContent)==="\u2060"&&((a=r[1].removedNodes[0])==null?void 0:a.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 Ex=["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 ip(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",Ex.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 a=document.createElement("span");a.textContent=t.value.substring(e)||".",o.appendChild(a),i.appendChild(o);let d=t.getBoundingClientRect(),l={top:d.top-t.scrollTop+a.offsetTop+Number.parseInt(r.borderTopWidth)+a.offsetHeight,left:d.left-t.scrollLeft+a.offsetLeft+Number.parseInt(r.borderLeftWidth)};return i.removeChild(o),l}var en=class extends Ze{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 ip(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 ap(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(([a,d])=>{i.searchParams.append(a,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 kx(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var si=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()}},ri=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=ap(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()}},ii=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(),w.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 ri(e,this.deepdeskUrl,{debug:!0}):new si(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=kx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(w.info("Received broadcast event",this.externalId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return n.onMessage(o),n}send(e,n,o){var i,a;w.info("Broadcast event",{externalId:this.externalId,name:e,payload:n});let s={type:"event",name:e,payload:n};o!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,n));let r=this.externalId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage(x(g({},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)}},lp=ii;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(g({},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(g({},e),{[Ix(n)]:Y(t[n])}),{}):t}var tn=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var ai=t=>new Promise(e=>{setTimeout(e,t)});var nn=class extends tn{constructor(){super(...arguments);this.name="ClientError"}},di=class extends tn{constructor(){super(...arguments);this.name="ServerError"}},li=new Map;function Px(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:(w.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var Ye=class Ye{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}`,a=this.fetch,d=n.method===void 0||n.method.toLowerCase()==="get",O=n,{useCache:l=!1,abortLatest:c=!1,attempts:m=1,retryDelay:p=500,refreshTokenOn401:u=!0,retryOnError:y=_=>_ instanceof TypeError,retryOnResponse:f=_=>_.status>=500,version:h=null}=O,C=L(O,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(li.has(i)){o(li.get(i));return}}let T=x(g({credentials:"include"},C),{headers:g({Accept:"application/json","Content-Type":"application/json"},C.headers)});!d&&this.csrfToken&&(T.headers=x(g({},T.headers),{"X-CSRFToken":this.csrfToken})),typeof h=="string"&&(T.headers=x(g({},T.headers),{"X-Deepdesk-API-Version":h}));let b=m,k=!1;if(!a)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--,a(i,T).then(_=>v(this,null,function*(){return f(_)&&!r.isAborted&&b>0?(yield ai(p),N()):_.status===401&&u===!0&&k===!1?(k=!0,yield this.refreshToken(),N()):_})).catch(_=>v(this,null,function*(){if(y(_)&&!r.isAborted&&b>0)return yield ai(p),N();throw _}))});N().then(_=>v(this,null,function*(){let z=yield Px(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new di("Server Error",z));return}if(_.status===401){s(new nn("Unauthorized",z));return}if(_.status===403){s(new nn("Forbidden",z));return}if(_.status===404){s(new nn("Not Found",z));return}if(_.status>=400){s(new nn("Bad Request",z));return}l&&li.set(i,z),o(z)})).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 Ye.refreshingToken||(Ye.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{Ye.refreshingToken=null},1e3*60)})),Ye.refreshingToken}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,g({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,g({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,g({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,g({method:"DELETE"},n))}};Ye.refreshingToken=null;var on=Ye;var dp;(e=>{let t;(a=>(a.SUCCESS="success",a.FAILURE="failure",a.CONDITIONS_NOT_MET="conditions_not_met",a.MAX_RECURSION_LEVEL="max_recursion_level",a.NO_ACCESS_TO_ASSISTANT="no_access_to_assistant"))(t=e.EvaluationStatus||(e.EvaluationStatus={}))})(dp||(dp={}));function ci(t){return x(g({},F(t)),{metadata:t.metadata})}var Rt=class Rt{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new on(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?(Rt.exchangeTokenPromise||(Rt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),Rt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),w.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",x(g({chat_start_time:new Date().toISOString()},Y(e)),{metadata:(o=e.metadata)!=null?o:{}}));return ci(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(),w.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:a=>a.status===404||a.status>=500,version:"v2"});return w.info(`Successfully retrieved conversation ${i.id} for session ${e}`),ci(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){w.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:a=>a.status===404||a.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 ci(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(g({},Y(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=L(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>x(g({},d),{[l]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,l)=>(s[l]&&(d[l]=s[l]),d),{});return this.client.post("/api/v2/events",Y(x(g(g({},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 w.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(g({},F(i)),{text:i.text||i.url||i.message,source:o,type:o})).filter((i,a,d)=>a===d.findIndex(l=>l.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(a=>a.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(g({},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,a){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(l=>({question:l.question,answer:l.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 a;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:(a=n==null?void 0:n.input)!=null?a:{},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(Ui);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&w.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};Rt.exchangeTokenPromise=null;var et=Rt;import{combineReducers as _x,configureStore as Fx}from"@reduxjs/toolkit";import{createSlice as Lx}from"@reduxjs/toolkit";var cp={startTime:null,stopTime:null},pp=t=>t.handlingTime,up=Lx({name:"handlingTime",initialState:cp,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(V,()=>cp)}}),{handlingTimeStart:mp,handlingTimeStop:bs,handlingTimeReset:gp}=up.actions,fp=up.reducer;var hp=(t={})=>{let e=g({onAuthError:Mt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};import{createAsyncThunk as Ax,createSlice as Mx}from"@reduxjs/toolkit";var Cs={list:{keywordMatches:[]},fetchState:"idle"};var It=Ax("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,a=(d=r.conversation.current)==null?void 0:d.profileCode;if(!i)return Cs.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),Nx=Mx({name:"styleSuggestions",initialState:Cs,reducers:{},extraReducers:t=>{t.addCase(It.pending,e=>{e.fetchState="loading"}).addCase(It.rejected,e=>{e.fetchState="error"}).addCase(It.fulfilled,(e,n)=>{e.fetchState="done",je(e.list,n.payload)||(e.list=n.payload)}).addCase(lt,e=>{e.list=Cs.list}).addCase(V,()=>Cs)}}),yp=Nx.reducer;var vp=(t={})=>{let e,n=!0,o=g({getStyleSuggestions:It,debounce:500},t);return s=>r=>i=>{var u;let a=s.getState().input.text,d=r(i),l=s.getState();if(l.auth.isLoggedIn!==!0)return d;let{showStyleSuggestions:c}=l.settings;if(!((u=l.conversation.current)==null?void 0:u.id)||!c)return d;let{text:p}=l.input;return p===a&&!n||(clearTimeout(e),p==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:p}))},t.debounce)),d}};function Ox(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var xp=(t={})=>{let e=g({getTextSuggestions:ve,getAutocompleteSuggestions:Bn,debounce:200,check:Te},t),n;return o=>s=>r=>{var f;let{input:i}=o.getState(),a=s(r),d=o.getState();if(d.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:l,showTabCompletion:c}=d.settings,m=(f=d.conversation.current)==null?void 0:f.id,p=r.type===jo.toString();if(!m||!l&&!c)return a;let{input:u}=d;return Ox(u,i)&&!p||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let h=Dt(d);h===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(h))},p?0:e.debounce)),a}};var Sp=It.fulfilled.toString();function Dx(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),a=i.length-r.length;a<=0||o.push(...i.slice(0,a))}),o}var bp=t=>e=>n=>o=>{var l;if(o.type!==Sp){n(o);return}let s=e.getState().styleSuggestions.list;n(o);let r=e.getState(),i=r.styleSuggestions.list,a=(l=r.conversation)==null?void 0:l.current;if(s===i)return;let d=Dx(s,i);o.type===Sp&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var Hx=_x({assistants:tl,auth:Ji,conversation:na,contentTypes:ol,passwordlessToken:vc,entities:Ol,handlingTime:fp,info:wa,input:fa,settings:Vi,profile:ll,search:Pa,styleSuggestions:yp,ui:Pd,textSuggestions:md});function Cp(t){return Fx({reducer:Hx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(hp()).concat(xp({debounce:200})).concat(vp({debounce:500})).concat(bp(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}var Bx=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},Kx=t=>e=>n=>o=>{var a,d,l,c,m,p,u;let s=e.getState(),r=pn("inlineSuggestions")(s);switch(o.type){case Mt.toString():{!o.payload&&t.emit("logout",void 0);break}case ye.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(a=s.conversation.current)==null?void 0:a.id,data:{entities:o.payload}});break;case Me.toString():t.sendEvent(o.payload.name,{conversationId:((d=o.payload.options)==null?void 0:d.includeConversationData)&&((l=s.conversation.current)==null?void 0:l.id),data:o.payload.data});break;case lt.toString():t.logSendMessage(o.payload);break;case Po.toString():t.emit("call-to-action",{cue:o.payload});break;case he.fulfilled.toString():o.isBroadcasted||t.broadcast($s,o,!1);break;default:break}let i=n(o);switch(o.type){case lt.toString():t.handleAfterSendMessage(o.payload);break;case Kn.toString():t.onUpdateShowTabHint(o.payload);break;case bs.toString():t.logHandlingTime();break;case fo.toString():t.broadcast(yn,o);break;case at.toString():t.broadcast(yn,o);break;case Lo.toString():e.dispatch(at({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{t.emit("event",o.meta.arg);break}case po.toString():{let{start:y,end:f}=s.input.selection;t.emit("replace",x(g({},o.payload),{replace:o.payload.replace==="selection"?{start:y,end:f}:{start:0,end:f}}));break}case fe.toString():{let{start:y,end:f}=s.input.selection;t.emit("select-suggestion",x(g({type:Bx(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:y,end:f}:{start:0,end:f}})),r&&e.dispatch($e([]));break}case uo.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 $e.toString():{r&&o.payload.length>0&&e.dispatch(mo(0));break}case Oe.fulfilled.toString():{if(o.isBroadcasted)break;t.broadcast(yn,o,!1),t.sendEvent("conversation summarized",{conversationId:(m=s.conversation.current)==null?void 0:m.id,data:{summary:o.payload.output,assistant:(u=(p=e.getState().profile.data)==null?void 0:p.summarizerAssistantNew)!=null?u:void 0}}),t.emit("summary-generated",{summary:o.payload.output});break}default:break}return i},wp=Kx;import{createSelector as Ux}from"@reduxjs/toolkit";function pi(t){return t.toISOString().replace("T"," ").replace("Z","")}var zx=(t,e)=>e.version,Tp=Ux([Ft,xe,pp,zx],(t,e,n,o)=>{if(!e)return w.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(w.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:pi(s),timeStop:pi(r)}});function Ep(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 ui(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return ui(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ui(s,e):null}function mi(t,e){return ui(t,e)}function kp(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function Wx(t){return typeof t=="object"&&t!==null&&"tagName"in t}function gi(t){return Wx(t)&&(Ct(t)||ts(t))}var Ip,Re=new Map,Vx=["bottom","height","left","right","top","width"],Rp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:Vx.some(n=>t[n]!==e[n]);function Pp(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,...Pp(e)]:[]}function Lp(t,e){return!t||!e?null:x(g({},t),{top:t.top+e.top,left:t.left+e.left})}var ws=!1,Ap=()=>{ws=!0;let t=[];if(Re.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),Re.delete(n);return}let o=n.getBoundingClientRect();Rp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Lp,e.rect):e.rect;Rp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Re.size===0){ws=!1;return}Ip=window.requestAnimationFrame(Ap)};function fi(t,e){let n=Pp(t),o=[],s=n.map((r,i)=>fi(r,a=>{o[i]=a;let d=Re.get(t);if(!d)return;let l=o.reduce(Lp,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),Re.has(t)){let i=Re.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else Re.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!ws&&Ap()},unobserve(){s.forEach(i=>i.unobserve());let r=Re.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||Re.delete(t),Re.size||(cancelAnimationFrame(Ip),ws=!1)}}}}var Mp,Ie=new Map,Np=()=>{Ie.forEach((t,e)=>{if(!e.isConnected){Ie.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)))}),Ie.size!==0&&(Mp=window.requestAnimationFrame(Np))};function Op(t,e){return{observe(){let n=Ie.size===0;Ie.has(t)?Ie.get(t).callbacks.push(e):Ie.set(t,{visible:void 0,callbacks:[e]}),n&&Np()},unobserve(){let n=Ie.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Ie.delete(t),Ie.size||cancelAnimationFrame(Mp)}}}}var hi=["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 yi(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function sn(t){return Number.parseFloat(t)}function Ts(t){return Math.round(t*1e6)}function Dp(t){return t/1e6}function vi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=sn(t.width),r=sn(t.borderLeftWidth),i=sn(t.borderRightWidth),a=sn(t.paddingRight),d=Dp(Ts(s)-Ts(r)-Ts(i)),l=Dp(Ts(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function Es(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",xt(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};yi(o,n,hi),vi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Op(t,()=>{yi(o,n,hi),vi(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=fi(t,p=>{if(p===null){e.onRemove&&e.onRemove(),n.remove();return}if(!d&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),d=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),d=!1},200),p.height===0&&p.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(yi(o,n,hi),vi(o,t,n),r(),n.style.top=`${p.top}px`,n.style.left=`${p.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let u=e.closestScrollElement.getBoundingClientRect(),y=window.getComputedStyle(e.closestScrollElement),f=sn(y.borderTopWidth),h=sn(y.borderBottomWidth),C=u.top+f-p.top,T=p.top+p.height+-(u.top+u.height-h);n.style.clipPath=`inset(${C}px 0px ${T}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),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}var _p=(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){w.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function jx(t){return t.offsetParent!==null}function Fp(t){if(!jx(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 xi(t,e,n=100){let o=Fp(t);e({isVisible:o});let s=setInterval(()=>{let r=Fp(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Xn=class extends Error{};function $x(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var ks=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 Xn("Queued async function is outdated"));let s=$x();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};var qx={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Hp=(t,e)=>{let n=t[qx[e]];return n&&n.length>0?n.map(o=>o.code):(w.warn(`No assistant set in profile for conversation event "${e}"`),[])};var Rs=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 Gx}from"react/jsx-runtime";var Bp=_p("showTabHint",!0),rn=class rn{constructor({deepdeskUrl:e,version:n=rn.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:a,websocketClient:d=Rs}){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 ks;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new et(l,{token:s,fetch:r}),this.version=n,this.instanceId=rn.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[wp({broadcast:(u,y,f)=>{this.broadcastEvents.send(u,y,f)},emit:(u,y)=>this.emit(u,y),handleAfterSendMessage:u=>this.handleAfterSendMessage(u),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:u=>this.logSendMessage(u),onUpdateShowTabHint:u=>Bp.update(u),sendEvent:(u,y)=>this.deepdeskApi.sendEvent(u,y)})]};this.store=Cp(c),this.broadcastEvents=new lp({debug:!0,deepdeskUrl:l,eventMap:La(this.store),createCustomChannel:a}),this.disposeHandlers.push(()=>{this.broadcastEvents.cleanup()}),this.ws=new d({url:`${l}/api/v2/me/realtime`.replace("https","wss"),reconnectInterval:25e3,shouldReconnect:()=>v(this,null,function*(){var u;return(u=X(this.state))!=null?u:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(Kn(Bp.value())),this.store.dispatch(io({locale:o,adminUrl:l,productName:i}));let m=[];this.ws.on("assistants::user_notification",u=>{if(!u.conversationId)return;let y=()=>{this.conversationId()===u.conversationId&&this.store.dispatch(el(u))};this.hasConversation()?y():m.push(y)}),this.ws.on("assistants::response_chunk",u=>{if(!u.conversationId)return;let y=()=>{this.conversationId()===u.conversationId&&this.store.dispatch(Ya(u))};this.hasConversation()?y():m.push(y)});let p=this.whenConversationLoaded(()=>{var u;this.broadcastEvents.setExternalId((u=this.state.conversation.current)==null?void 0:u.externalId),m.forEach(y=>y()),m.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),m.length=0,p()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=it(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?(w.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(w.warn("Profile has not been loaded (yet)"),!0):(w.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(X(this.state))e();else{let n=this.subscribe(X,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(Mt(null)),this.store.dispatch(Ae()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Ae())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(Fs({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(ao(x(g({},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(lo({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(Hs(x(g({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(Bs(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(co(e))).payload})}resetConversation(){this.store.dispatch(V()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(io(e))}setVisitorInfo(e){this.store.dispatch(Sa(e))}setCustomData(e){this.store.dispatch(ba(e))}setAgentInfo(e,n){return v(this,null,function*(){yield this.store.dispatch(gn(g(g({},e),n)))})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(Ws(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch(Vs())).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(go({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()}))}notifyExternalSuggestion(e){this.store.dispatch(fe(e))}evaluateAssistant(e,n){return v(this,null,function*(){let c=n||{},{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i,expectFormat:a}=c,d=L(c,["input","transcript","showCuesInWidget","includeMetadata","expectFormat"]);Object.assign(o,d);let l=yield this.store.dispatch(he({assistantCode:e,expectFormat:a||"json-schema:cues",transcript:s,includeMetadata:i,input:o,skipState:!r}));if(l.error)throw new Error(l.error.message);return l.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){yield this.loadProfileConfig();let o=this.state.profile.data;if(!o){w.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Hp(o,e);yield Promise.all(s.map(r=>this.queues.push(r,()=>v(this,null,function*(){if(r===o.summarizerAssistantNew)return this.getSummary(g({includeMetadata:!0},n));yield this.evaluateAssistant(r,g({includeMetadata:!0},n))})).catch(i=>{if(i instanceof Xn){w.warn(`Queued assistant "${r}" was outdated and dropped`);return}throw i})))})}getSummary(){return v(this,arguments,function*(e={}){var o;if(!this.hasConversation())return w.warn("No conversation to create summary for."),null;(o=this.state.profile.data)!=null&&o.summarizerAssistantNew||w.warn("No profile loaded yet, or no summarizer assistant set in profile");let n=yield this.store.dispatch(Oe(e));if(n.error)throw new Error(n.error.message);return n.payload.output})}handleKeyDown(e){let{overlayCollapsed:n,openOverlayWhenTyping:o}=this.state.ui,{textSuggestions:s,selectedSuggestionIndex:r,selection:i}=this.state.input,{inlineSuggestions:a,showTextSuggestions:d}=this.settings,l=a?"below":"above",c=s.length>0;if(this.store.dispatch(la(Us(e))),!Te(this.state)||e.key!=="Tab"&&!d)return;let m=()=>{n||!c||i&&(e.shiftKey||(this.store.dispatch(pa()),e.preventDefault()))},p=()=>{n||!c||a&&r<=0||i&&(e.shiftKey||(this.store.dispatch(ua()),e.preventDefault()))};switch(e.key){case"ArrowUp":l==="below"?p():m();break;case"ArrowDown":{l==="below"?m():p();break}case"Escape":{n||(this.store.dispatch(mo(-1)),this.store.dispatch(Je({collapse:!0})),this.store.dispatch(Rd(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let u=_t(this.state);if(!u)return;this.store.dispatch(Kn(!1)),this.store.dispatch(fe({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(this.settings.inlineSuggestions||this.state.input.selectedSuggestionIndex===-1)return;let u=_t(this.state);if(!u)return;this.store.dispatch(fe({text:u.text,suggestion:u,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(this.settings.inlineSuggestions||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let u=_t(this.state);if(!u)return;this.store.dispatch(fe({text:u.text,suggestion:u,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($e([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(mp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(bs()))}logSendMessage(e){let n=Ep(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=Tp(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(gp()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(lt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(ga()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){w.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),w.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(Ca(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]=Es(n,o);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),[r,i]}createInlineContainer(e,n){var a;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=(a=e.ownerDocument.defaultView)==null?void 0:a.frameElement,i=r?r.ownerDocument.defaultView:null;if(r&&(i===window||(i==null?void 0:i.parent)===window)){let[d,l]=Es(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});d.dataset.testid=n,d.style.zIndex="2",d.appendChild(o),this.unmountHandlers.push(()=>{l()})}else document.body.appendChild(o);return s}createContainer(e,n=document.body){let o=window.getComputedStyle(n),s=document.createElement("div");return xt(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),w.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()?(w.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(ma(o.metrics))):w.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(!gi(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let p=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:a}=p,d=L(p,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),xt(e),this.inputMediator=a||(Ct(e)?new en(e):new Yt(e)),this.inputMediator.on("change",({plainText:u,rawHTML:y})=>{this.store.dispatch(go({text:u,html:y}))}),this.inputMediator.on("keyup",u=>{this.store.dispatch(da(Us(u)))}),this.inputMediator.on("keydown",u=>{this.handleKeyDown(u)}),this.inputMediator.on("paste",({pastedText:u,selectionText:y})=>{this.store.dispatch(ca({text:u,selectionText:y}))}),this.inputMediator.on("cut",({selectionText:u})=>{this.store.dispatch(aa(u))});let c;this.inputMediator.on("selection",u=>{clearTimeout(c),u===null?c=setTimeout(()=>{u!==null&&this.store.dispatch(ho(u))},500):this.store.dispatch(ho(u))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var u;(u=this.inputMediator)==null||u.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(Xo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Xo(!0))}),this.renderSuggestions(e,l),this.subscribe(pn("inlineSuggestions"),()=>{this.renderSuggestions(e,l)});let m=this.renderOverlays(n);this.unmountHandlers.push(()=>{m.unmount()}),this.store.dispatch(go({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()})),this.store.dispatch(ho(this.inputMediator.getSelection())),this.store.dispatch(Xo(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=Pt(s);r.render(B(Qe,{store:this.store,customStyles:o,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Fd,{})})}));let i=a=>{a?(s.style.display="block",s.style.top=`${a.top}px`,s.style.left=`${a.left}px`):s.style.display="none"};return this.inputMediator.on("caretposition",i),{unmount:()=>{var a;(a=this.inputMediator)==null||a.off("caretposition",i),r.unmount(),s.remove()}}}renderAboveSuggestions(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r}=n,i=s&&mi(e,s)||void 0,[a,d]=this.overlayContainerFactory("deepdesk-tab-completion",i||e,{appendTo:r,closestScrollElement:i,mirrorOverflow:!0,onRemove:()=>this.unmount()},o==null?void 0:o.rootNode),[l,c]=this.overlayContainerFactory("deepdesk-suggestions-overlay",i||e,{appendTo:r},o==null?void 0:o.suggestionsRootNode),m=Pt(a);m.render(B(Qe,{store:this.store,customStyles:o,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(gc,{inputElement:e})})}));let p=Pt(l);return p.render(B(Qe,{store:this.store,customStyles:o,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(qd,{onLogIn:()=>this.loginViaPopup().catch(u=>w.warn(u.message))})})})),{unmount(){m.unmount(),p.unmount(),d(),c()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&mi(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=Pt(d);return c.render(B(Qe,{store:this.store,customStyles:o,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Ed,{onLogIn:()=>this.loginViaPopup().catch(m=>w.warn(m.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=Pt(o);return s.render(B(Qe,{store:this.store,customStyles:n,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(xd,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&w.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=Pt(e),this.widgetRoot.render(B(Qe,{store:this.store,customStyles:o,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(np,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>w.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=Pt(n);return i.render(B(Qe,{store:this.store,customStyles:s,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(oi,{children:Gx(ms,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:o.isLegacyKnowledgeAssist?pt:ut,children:[B(ln,{children:B(fs,{title:o.title,emptyState:o.emptyState})}),B(ni,{children:B(gs,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=xi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){kp(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(Mn());let e=mt(this.state);e&&this.store.dispatch(io({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,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let d=!1,l=()=>{c&&!c.closed&&c.close(),window.removeEventListener("message",m),clearInterval(p)};r.onmessage=u=>v(this,null,function*(){var y,f;if((y=u.data)!=null&&y.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((f=u.data)==null?void 0:f.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(hn),d=!0,s.port1.close(),n()}catch(h){console.error(h),o(h)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");c===null&&o(new Error("Popup blocked by browser"));let m=u=>v(this,null,function*(){var y;if(u.origin===a.origin)switch((y=u.data)==null?void 0:y.type){case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(f,a.origin,[s.port2])}catch(f){w.error("Error posting message to popup",f),o(f)}break}case"deepdesk-popup-error":{l(),u.data.message==="Timeout"&&w.warn("Popup timed out. Check if the account's platform url is configured correctly."),o(new Error(u.data.message));break}}});window.addEventListener("message",m);let p=setInterval(()=>{c&&!c.closed||(l(),d||o(new Error("Popup closed by user")))},200);this.disposeHandlers.push(l)})})}translateMessages(e){return this.deepdeskApi.translateMessages(e)}refreshTextSuggestions(){return v(this,null,function*(){this.isMounted&&(yield this.store.dispatch(jo()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=Nn(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(ye());break;case"pinned-messages":case"sticky-messages":break;default:so.includes(o)||this.store.dispatch(ve(o))}})}catch(o){this.handleError(o)}})}};rn.version="18.1.1",rn.count=0;var Is=rn;function Xx(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 Jx(t,e){return v(this,null,function*(){let n=yield Xx(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 Qx(t,e,n){return v(this,null,function*(){yield new et(t).authenticateWithKey(e,n)})}function Zx(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function Yx(o,s){return v(this,arguments,function*(t,e,n={}){var m,p;let{value:r}=t,{start:i,end:a}=(m=n.replace)!=null?m:{start:0,end:r.length},d=`${r.slice(0,i)}${e}${r.slice(a)}`,l=(p=n.selectionAfter)!=null?p:{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=l.start,t.selectionEnd=l.end,t.blur(),t.focus()})})}function eS(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?kt(t,n.replace.start,n.replace.end):Gn(t),i,a=()=>{if(n.setRange)return n.setRange(r.cloneRange());r.deleteContents(),i=document.createElement("span"),r.insertNode(i),n.insertBRs!==!1?e.split(`
11
- `).reverse().forEach((d,l)=>{l>0&&r.insertNode(document.createElement("br")),r.insertNode(document.createTextNode(d))}):r.insertNode(document.createTextNode(e))};return Promise.resolve(a()).then(()=>{try{if(n.selectionAfter!==!1){t.focus();let d=n.selectionAfter?kt(t,n.selectionAfter.start,n.selectionAfter.end):(r.collapse(!1),r),l=window.getSelection();l==null||l.removeAllRanges(),l==null||l.addRange(d)}if(!i)return;i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"nearest"})}finally{i&&i.remove()}})})}function tS(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 nS(t){let e=document.createDocumentFragment();return t.split(`
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 Kp(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):Kp(n,e)}function oS(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 a=()=>{var p;let d=(p=t.ownerDocument.defaultView)!=null?p:window,l=d.getSelection();if((!l||l.rangeCount===0)&&(t.focus(),l=d.getSelection()),!l||l.rangeCount===0)return;let c=l.getRangeAt(0);if(!c)return;i=document.createElement("span"),c.insertNode(i);let m=o?tS(e):nS(e);n?Kp(c.startContainer,m):(c.insertNode(m),c.collapse(!1))};return Promise.resolve(a()).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{D as Card,Yt as ContentEditableInput,et as DeepdeskAPI,Is as DeepdeskSDK,on as HTTPClient,Ze as InputMediator,cn as InputType,Ms as KeyboardHint,du as Label,ro as Locale,Le as Section,ln as SectionList,st as Sources,A as Suggestion,te as SuggestionList,en as TextAreaInput,At as ToggleButton,Jx as attachFile,Qx as authenticateWithKey,Gn as createFullRange,Es as createOverlayContainer,kt as createRangeFromOffsets,Dn as escapeHTML,Zx as formatTextMarkup,xs as getRangeOffsets,Ss as getRangeText,oS as insertCKEditor,No as isHTML,gi as isSupportedInputElement,eS as updateContentEditable,Yx as updateTextArea,vt as useClickOutsideRoot,S as useStyles,xi as waitForElementVisibilityChange};
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),p=e.source==="assistant",u=l&&!p;zf(()=>{let h=setTimeout(()=>{a(Qi({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(h)}},[e]),Ql(m,"click",()=>{a(ue({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})}),u&&r&&ct("div",{className:c.actions,children:ct(Mo,{source:"overlay",context:d,suggestion:e})}),p&&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 pt}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 ph from"classnames";import{Fragment as uh,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]),p=br(h=>Uo("button",{type:"button",className:l.anchorButton,onClick:c,children:h},"prompt"),[c]),{min:u,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:ph(t,l.root),children:[r("loginPlease",{login:n?p:m,productName:d}),o&&cd(uh,{children:[Uo("br",{}),r("snooze",{min:u,hour:y,day:g})]})]})},zo=mh;import{useDispatch as gh}from"react-redux";var pd={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as ud,jsxs as hh}from"react/jsx-runtime";var fh=({title:t})=>{let e=S("SearchTrigger",pd),n=gh(),o=G();return hh("button",{type:"button",className:e.root,onClick:()=>{n(me(!0)),o("open search",{via:"autocomplete-overlay"})},children:[ud(Nt,{}),ud("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=pt(be),s=pt(Zi),r=Ch(),i=Sh(null),l=T("searchTriggerKey"),d=T("productName"),a=pt(_o),c=pt(q),m=pt(kt),[p,u]=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=pt(Ye),D=pt(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&&u(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:()=>u(n(ad()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>u(null),children:X(md,{title:n("search")})})}),Mn("div",{className:e.triggersRight,onFocus:()=>{},children:[X("div",{className:wr(!p&&e.hintsHidden,e.hints),children:p}),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 ut(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,p)=>{let u=e.current;if(!u)return;let y=m/r,g=p/r,h=u.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:p})=>[m,p]),[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),p=kr(n),u=Wh(()=>i(m,p,0),[m,p]);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:u},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}),py=({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]),[p,u]=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=p-1<0?m.length-1:p-1,N=p+1===m.length?0:p+1;b.code==="Escape"&&(l(""),e()),b.code==="ArrowUp"&&u(R),b.code==="ArrowDown"&&u(N),b.code==="Enter"&&t(((D=m[p])==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:p===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=py;var Mr={};Z(Mr,{enUS:()=>uy,nlNL:()=>my});var uy={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(),p=$o(document.activeElement===o),[u]=Bd(()=>document.createRange());p.triggerRef.current=u,Fd(()=>()=>u.detach(),[]),Fd(()=>{let g=t.current,h=l.current;!g||!h||(u.setStart(g,0),u.setEnd(h,0))},[t.current,l.current]),lt(()=>{p.close()});let y=yy(g=>{let h=u.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":p.opened?"true":"false",children:s}),p.opened&&Te(Ft,{className:i.popoverRoot,triggerRef:p.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),p.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"),p=T("inlineSuggestions"),u=yd(l),y=wy(null),g=ky(q);Ty(()=>{ut(l)&&u&&vd(l,u)},[u]);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},[p,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:ut(l),content:e||"\u200B",onAfterParse:h,matchers:w,selection:u,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:p}=r,{showTabCompletion:u,visible:y,showStyleSuggestions:g}=o;return{showTabHint:m,showStyleSuggestions:g,showTabCompletion:u&&be(t),content:a,tabText:c,source:d,keywordMatches:(E=(w=s.list)==null?void 0:w.keywordMatches)!=null?E:[],enabled:y&&p!==!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*(){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}})),My=1,Dn=Qo("assistants/evaluateKnowledgeAssistantLegacy",(t,e)=>v(void 0,null,function*(){var u,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=(u=_r(n)(i))!=null?u:[],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 p=yield r.knowledgeAssist({customerInstruction:a.customerInstruction,doNotKnowAnswer:a.doNotKnowAnswer,question:s},d,a.code,{agentId:m,conversationId:c});return l&&(p.answer=ne(p.answer,l)),{threadId:n,question:s,answer:p,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 u;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},expectFormat:i,threadId:l}=t,d=e.getState(),{platformVariables:a}=d.info,c=(u=d.conversation.current)==null?void 0:u.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 p=yield n.evaluateAssistant(t.assistantCode,{expectFormat:i,input:r,transcript:m,externalConversationId:c,threadId:l});if(p.evaluationStatus!=="success")throw new Error(`Assistant ${t.assistantCode} evaluation failed: ${p.evaluationStatus}`);switch(i){case"text":return{evaluationId:p.evaluationId,output:ne(p.output,a)};case"json-schema:cues":{if(!Array.isArray(p.output))return x(f({},p),{output:[]});let y=p.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(po(g)),x(f({},p),{output:y})}case"json-schema:knowledge-assist":{let y=p.output;if(p.output==="")throw new Error("No output from assistant");return{output:y,evaluationId:p.evaluationId,answer:ne(y.response,a)}}default:return p}})),$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:p=>v(this,null,function*(){d("loading"),yield a(n.current(p)).unwrap().then(u=>{s(u),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(u))}).catch(u=>{i(u),d("error"),e!=null&&e.onError&&(e==null||e.onError(u))})}),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})},pc=Wy;import{jsx as uc}from"react/jsx-runtime";var mc=()=>uc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:uc("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(p=>p.isPinned),c=l.filter(p=>!p.isPinned),m=p=>v(void 0,null,function*(){clearTimeout(o.current),d("trigger on demand assistant",{assistantCode:p}),p===i?yield r.call({transcript:t.transcript}):yield s.call(x(f({},t),{assistantCode:p})),o.current=setTimeout(()=>s.reset(),Xy)});return l.length===0?null:yc("div",{className:e.root,children:[a.map(({assistant:p,assistantName:u,displayName:y})=>_e("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>m(p),children:y||u},p)),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:p,assistantName:u,displayName:y})=>_e(j.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>m(p),children:y||u},p))})]}),s.state==="loading"&&_e(pc,{}),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,p]=rv(null),u=g=>{g.stopPropagation(),Ut(g.target,r.fadeup),p("up"),c(t,x(f({},e),{evaluationId:n,rating:"up"}))},y=g=>{g.stopPropagation(),Ut(g.target,r.fadedown),p("down"),c(t,x(f({},e),{evaluationId:n,rating:"down"}))};return av("div",{className:r.thumbs,children:[zt(A.Button,{title:a("thumbsUp"),onClick:u,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 pv}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 uv}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
+ `)}var fv=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=S("Markdown",Ec),i=cv(null),[l,d]=pv(null),a=dv(()=>{let g=uv.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)))},p=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)))},u=()=>{!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:u,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:p})]})},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)},p=h=>{o&&o(h,t)},u=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&&p(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:p,onUse:d?u:void 0})]})}),ss(A.ButtonsContainer,{children:[ss("div",{className:r.actions,children:[(t.specialType==="summary"||t.editable)&&we(A.Button,{onClick:()=>p(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.rule.id))})},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),[p,u]=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),u(b),yield h.call(b),l(!1),u(null)}),E={isEnabled:!!t,assistantCode:t,isSubmitting:i,threadId:s,pendingInput:p,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})},p=h=>{h.preventDefault(),i.onReset()},u=(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=>u(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:p,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=p=>{p.preventDefault(),p.stopPropagation(),d&&n(o)},c=Vv(p=>{window.open(s,"_blank"),p.stopPropagation(),p.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:p,schema:u,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&&u&&I(Ie,{type:a,title:c,"data-testid":`type-${a}`,children:I(te,{withDivider:!0,children:I(Mc,{data:s,schema:u})})},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:p,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 ps(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function us(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 p=0;p<=d.length;p++)if(m.test(d[p])||c++,c===a)return p;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,p=e>=s&&e<=m,u=n>=s&&n<=m;if(p){let y=i(a,e-s);y===0&&!u?o.setStartBefore(d):o.setStart(d,y)}u&&(o.setEnd(d,i(a,n-s)),r=!0),s=m;break}case Node.ELEMENT_NODE:{if(us(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;ps(d)&&a&&!ps(a)&&!us(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 p=m===t,u=m===n,y=m===s;switch(m.nodeType){case Node.TEXT_NODE:{let g=m.textContent;u&&(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(us(m)&&m.nextSibling){a++;break}!p&&ps(m)&&m.previousSibling&&a++;for(let g=0;g<m.childNodes.length;g++){let h=u&&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,p=c===n,u=c===s;switch(p&&(l=1),c.nodeType){case Node.TEXT_NODE:{if(l!==1)return;let y=p?o:0,g=u?r:void 0;d+=c.textContent.replace(Vn,"").substring(y,g);break}case Node.ELEMENT_NODE:{if(!i&&l===1&&us(c)&&c.nextSibling){d+=`
9
+ `;break}!m&&!i&&l===1&&ps(c)&&c.previousSibling&&(d+=`
10
+ `);let y=p?o:0,g=u?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}u&&(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:p=500,refreshTokenOn401:u=!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(p),N()):_.status===401&&u===!0&&R===!1?(R=!0,yield this.refreshToken(),N()):_})).catch(_=>v(this,null,function*(){if(y(_)&&!r.isAborted&&b>0)return yield ni(p),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,ep=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:tp,handlingTimeStop:fs,handlingTimeReset:np}=ep.actions,op=ep.reducer;var sp=(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})})),px=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)}}),rp=px.reducer;var ip=(t={})=>{let e,n=!0,o=f({getStyleSuggestions:xt,debounce:500},t);return s=>r=>i=>{var u;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(!((u=a.conversation.current)==null?void 0:u.id)||!c)return d;let{text:p}=a.input;return p===l&&!n||(clearTimeout(e),p==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:p}))},t.debounce)),d}};function ux(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var ap=(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,p=r.type===Oo.toString();if(!m||!a&&!c)return l;let{input:u}=d;return ux(u,i)&&!p||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let h=Rt(d);h===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(h))},p?0:e.debounce)),l}};var lp=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 dp=t=>e=>n=>o=>{var a;if(o.type!==lp){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===lp&&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:op,info:fa,input:aa,settings:_i,profile:Ga,search:ba,styleSuggestions:rp,ui:Zl,textSuggestions:Ol});function cp(t){return fx({reducer:hx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(sp()).concat(ap({debounce:200})).concat(ip({debounce:500})).concat(dp(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,p,u;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 po.toString():t.broadcast(pn,o);break;case et.toString():t.broadcast(pn,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 ue.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(pn,o,!1),t.sendEvent("conversation summarized",{conversationId:(m=s.conversation.current)==null?void 0:m.id,data:{summary:o.payload.output,assistant:(u=(p=e.getState().profile.data)==null?void 0:p.summarizerAssistantNew)!=null?u:void 0}}),t.emit("summary-generated",{summary:o.payload.output});break}default:break}return i},pp=vx;import{createSelector as xx}from"@reduxjs/toolkit";function ii(t){return t.toISOString().replace("T"," ").replace("Z","")}var Sx=(t,e)=>e.version,up=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 mp(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 gp(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)&&(ut(t)||Wo(t))}var hp,Ee=new Map,Cx=["bottom","height","left","right","top","width"],fp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:Cx.some(n=>t[n]!==e[n]);function yp(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,...yp(e)]:[]}function vp(t,e){return!t||!e?null:x(f({},t),{top:t.top+e.top,left:t.left+e.left})}var ys=!1,xp=()=>{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();fp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(vp,e.rect):e.rect;fp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Ee.size===0){ys=!1;return}hp=window.requestAnimationFrame(xp)};function ci(t,e){let n=yp(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(vp,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&&xp()},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(hp),ys=!1)}}}}var Sp,ke=new Map,bp=()=>{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&&(Sp=window.requestAnimationFrame(bp))};function Cp(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&&bp()},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(Sp)}}}}var pi=["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 ui(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 Tp(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=Tp(vs(s)-vs(r)-vs(i)),a=Tp(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};ui(o,n,pi),mi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Cp(t,()=>{ui(o,n,pi),mi(o,t,n),r(),setTimeout(r,0)}),l,d=!0,a=ci(t,p=>{if(p===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),p.height===0&&p.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(ui(o,n,pi),mi(o,t,n),r(),n.style.top=`${p.top}px`,n.style.left=`${p.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let u=e.closestScrollElement.getBoundingClientRect(),y=window.getComputedStyle(e.closestScrollElement),g=Zt(y.borderTopWidth),h=Zt(y.borderBottomWidth),w=u.top+g-p.top,E=p.top+p.height+-(u.top+u.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 wp=(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 Ep(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=Ep(t);e({isVisible:o});let s=setInterval(()=>{let r=Ep(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"},kp=(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 Rp=wp("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:[pp({broadcast:(u,y,g)=>{this.broadcastEvents.send(u,y,g)},emit:(u,y)=>this.emit(u,y),handleAfterSendMessage:u=>this.handleAfterSendMessage(u),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:u=>this.logSendMessage(u),onUpdateShowTabHint:u=>Rp.update(u),sendEvent:(u,y)=>this.deepdeskApi.sendEvent(u,y)})]};this.store=cp(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 u;return(u=q(this.state))!=null?u:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(An(Rp.value())),this.store.dispatch(no({locale:o,adminUrl:a,productName:i}));let m=[];this.ws.on("assistants::user_notification",u=>{if(!u.conversationId)return;let y=()=>{this.conversationId()===u.conversationId&&this.store.dispatch(Xd(u))};this.hasConversation()?y():m.push(y)}),this.ws.on("assistants::response_chunk",u=>{if(!u.conversationId)return;let y=()=>{this.conversationId()===u.conversationId&&this.store.dispatch(Gd(u))};this.hasConversation()?y():m.push(y)});let p=this.whenConversationLoaded(()=>{var u;this.broadcastEvents.setExternalId((u=this.state.conversation.current)==null?void 0:u.externalId),m.forEach(y=>y()),m.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),m.length=0,p()})}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(ua(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(ue(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=kp(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));if(n.error)throw new Error(n.error.message);return 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()))},p=()=>{n||!c||l&&r<=0||i&&(e.shiftKey||(this.store.dispatch(sa()),e.preventDefault()))};switch(e.key){case"ArrowUp":a==="below"?p():m();break;case"ArrowDown":{a==="below"?m():p();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 u=It(this.state);if(!u)return;this.store.dispatch(An(!1)),this.store.dispatch(ue({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(this.settings.inlineSuggestions||this.state.input.selectedSuggestionIndex===-1)return;let u=It(this.state);if(!u)return;this.store.dispatch(ue({text:u.text,suggestion:u,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(this.settings.inlineSuggestions||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let u=It(this.state);if(!u)return;this.store.dispatch(ue({text:u.text,suggestion:u,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(tp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(C.info("Stop handling time"),this.store.dispatch(fs()))}logSendMessage(e){let n=mp(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=up(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(np()))}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 p=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:l}=p,d=P(p,["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||(ut(e)?new qt(e):new $t(e)),this.inputMediator.on("change",({plainText:u,rawHTML:y})=>{this.store.dispatch(co({text:u,html:y}))}),this.inputMediator.on("keyup",u=>{this.store.dispatch(ta(Ds(u)))}),this.inputMediator.on("keydown",u=>{this.handleKeyDown(u)}),this.inputMediator.on("paste",({pastedText:u,selectionText:y})=>{this.store.dispatch(na({text:u,selectionText:y}))}),this.inputMediator.on("cut",({selectionText:u})=>{this.store.dispatch(Yi(u))});let c;this.inputMediator.on("selection",u=>{clearTimeout(c),u===null?c=setTimeout(()=>{u!==null&&this.store.dispatch(uo(u))},500):this.store.dispatch(uo(u))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var u;(u=this.inputMediator)==null||u.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(uo(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 p=St(a);return p.render(B($e,{store:this.store,customStyles:o,children:B(We,{broadcastEvents:this.broadcastEvents,children:B(fd,{onLogIn:()=>this.loginViaPopup().catch(u=>C.warn(u.message))})})})),{unmount(){m.unmount(),p.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){gp(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(p)};r.onmessage=u=>v(this,null,function*(){var y,g;if((y=u.data)!=null&&y.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((g=u.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=u=>v(this,null,function*(){var y;if(u.origin===l.origin)switch((y=u.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(),u.data.message==="Timeout"&&C.warn("Popup timed out. Check if the account's platform url is configured correctly."),o(new Error(u.data.message));break}}});window.addEventListener("message",m);let p=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.0",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,p;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=(p=n.selectionAfter)!=null?p:{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
+ `).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
+ `).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 Ip(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):Ip(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 p;let d=(p=t.ownerDocument.defaultView)!=null?p: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?Ip(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,Gp 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};