@deepdesk/deepdesk-sdk 19.3.2-beta.1 → 19.3.2-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +7 -7
- package/dist/index.esm.js +7 -7
- package/dist/index.iife.js +26 -26
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
var ki=Object.defineProperty,ju=Object.defineProperties;var $u=Object.getOwnPropertyDescriptors;var jn=Object.getOwnPropertySymbols;var Ri=Object.prototype.hasOwnProperty,Pi=Object.prototype.propertyIsEnumerable;var Ei=(t,e,n)=>e in t?ki(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,y=(t,e)=>{for(var n in e||(e={}))Ri.call(e,n)&&Ei(t,n,e[n]);if(jn)for(var n of jn(e))Pi.call(e,n)&&Ei(t,n,e[n]);return t},x=(t,e)=>ju(t,$u(e));var N=(t,e)=>{var n={};for(var o in t)Ri.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&jn)for(var o of jn(t))e.indexOf(o)<0&&Pi.call(t,o)&&(n[o]=t[o]);return n};var J=(t,e)=>{for(var n in e)ki(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 Li from"classnames";import Qu,{createContext as Zu,useContext as Os,useEffect as Yu,useState as ep}from"react";import Gu,{useContext as qu}from"react";import Xu from"classnames";var an=Gu.createContext({});function b(t,e){let r=qu(an),{debug:n}=r,s=N(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return x(y({},i),{[a]:Xu(d,l,n?`${t}__${a}`:!1)})},{})}var Ii={root:"dd-4s9wq"};import{jsx as $n,jsxs as Ju}from"react/jsx-runtime";var Gn=()=>Ju("svg",{className:Ii.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[$n("defs",{children:$n("style",{children:".cls-1 { fill: #b3b3b3; }"})}),$n("title",{children:"Failed loading image"}),$n("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 Ns={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 qn=Zu(Ns),tp=({title:t,src:e})=>{let n=Os(qn),[o,s]=ep(!1);return Yu(()=>{s(!1)},[e]),Lt("div",{className:n.imageWrapper,children:e&&!o?Lt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Lt(Gn,{})})},np=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=Os(qn);return Lt("div",{className:Li(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},op=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=N(i,["as","cropText","className","children"]);let a=Os(qn);return Qu.createElement(t,y({className:Li(a.title,n,{[a.contentIsCropped]:e})},s),o)},Xn=({children:t})=>{let e=b("Card",Ns);return Lt("div",{className:e.root,children:Lt(qn.Provider,{value:e,children:t})})};Xn.Image=tp;Xn.Content=np;Xn.Title=op;var D=Xn;import sp from"classnames";var Ai={root:"dd-llBx9"};import{jsx as ap}from"react/jsx-runtime";var rp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},ip=o=>{var s=o,{className:t,keyCode:e}=s,n=N(s,["className","keyCode"]);let r=b("KeyboardHint",Ai);return ap("span",y({"data-key":rp[e],className:sp(t,r.root)},n))},Ds=ip;import lp from"classnames";var Mi={root:"dd-e6HXZ"};import{jsx as up}from"react/jsx-runtime";var dp=o=>{var s=o,{className:t,children:e}=s,n=N(s,["className","children"]);let r=b("Label",Mi);return up("span",x(y({},n),{className:lp(t,r.root),children:e}))},cp=dp;var Ni={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as _s,jsxs as gp}from"react/jsx-runtime";var pp=s=>{var r=s,{title:t,children:e,type:n}=r,o=N(r,["title","children","type"]);let i=b("Section",Ni);return gp("section",x(y({},o),{className:i.root,"data-section-type":n,children:[t&&_s("div",{className:i.subTitleContainer,children:_s("span",{className:i.subtitle,children:t})}),_s("div",{className:i.suggestions,children:e})]}))},Ae=pp;import Sp from"classnames";import{useRef as xp}from"react";import{createContext as mp,useCallback as fp,useContext as hp,useEffect as yp}from"react";import{jsx as vp}from"react/jsx-runtime";var Oi=mp(null),Di=({scrollContainerRef:t,children:e})=>{let n=fp(o=>{let s=t.current;if(!s||s.scrollHeight<=s.clientHeight)return;let{top:r}=s.getBoundingClientRect(),{top:i}=o.getBoundingClientRect(),a=s.scrollTop+(i-r);typeof s.scrollTo=="function"?s.scrollTo({top:a}):s.scrollTop=a},[]);return vp(Oi.Provider,{value:n,children:e})},Jn=t=>{let e=hp(Oi);yp(()=>{let n=t.current;n&&e(n)},[])};var _i={root:"dd-uoTXh"};import{jsx as Fi}from"react/jsx-runtime";var bp=({className:t,children:e})=>{let n=b("SectionList",_i),o=xp(null);return Fi(Di,{scrollContainerRef:o,children:Fi("div",{ref:o,className:Sp(n.root,t),children:e})})},ln=bp;import dn from"classnames";import Cp,{createContext as Tp,useCallback as wp,useContext as rt}from"react";var Fs={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",buttonPrimary:"dd-aYDCB",buttonSecondary:"dd--cpPL",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as ce,jsxs as Hi}from"react/jsx-runtime";var $e=Tp(Fs),Ep=o=>{var s=o,{fixed:t,children:e}=s,n=N(s,["fixed","children"]);let r=rt($e);return ce("div",x(y({},n),{className:dn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function kp(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=N(l,["as","className","icon","title","children","disabled","variant"]);let c=rt($e);return Hi(t||"button",x(y({type:"button",className:dn(c.button,{[c.buttonWithIcon]:n,[c.buttonDisabled]:r,[c.buttonPrimary]:i==="primary",[c.buttonSecondary]:i==="secondary"},e),title:o,"aria-label":o},a),{children:[n&&ce("span",{className:c.icon,children:n}),s]}))}var Rp=({children:t})=>{let e=rt($e);return ce("div",{className:e.buttonsContainer,children:t})},Pp=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=rt($e);return Hi("div",{className:dn(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})]})},Ip=({index:t,label:e,onClick:n})=>{let o=rt($e);return ce("li",{className:o.dropdownItem,children:ce("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},Lp=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=rt($e);return ce("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})},Ap=({labels:t})=>{let e=rt($e);return ce("div",{className:e.labels,children:t.map(n=>ce("span",{className:e.label,children:n},n))})},Ge=Cp.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=N(d,["className","selected","onClick","children","as"]);let l=b("Suggestion",Fs),c=wp(u=>{u.preventDefault(),n&&n(u)},[n]);return ce(s,x(y({},r),{ref:i,className:dn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:ce($e.Provider,{value:l,children:o})}))});Ge.Labels=Ap;Ge.Actions=Ep;Ge.ActionButton=Lp;Ge.DropdownButton=Pp;Ge.DropdownItem=Ip;Ge.ButtonsContainer=Rp;Ge.Button=kp;var A=Ge;import Mp from"classnames";var Bi={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Op}from"react/jsx-runtime";var Np=({withDivider:t,children:e})=>{let n=b("SuggestionList",Bi);return Op("div",{"data-testid":"suggestions-overlay-list",className:Mp(n.root,{[n.isWithDivider]:t}),children:e})},Z=Np;import Dp from"classnames";var Ui={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as Hs}from"react/jsx-runtime";var _p=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=b("ToggleButton",Ui);return Hs("button",{type:"button",className:Dp(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:Hs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Hs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},At=_p;var Ki=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,Qn=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Wi=/x-deepdesk-(([a-z0-9\-_])+-version)/,Zn=["cues","custom-data","custom-data-banner","knowledge-assist"],zi=Intl.DateTimeFormat().resolvedOptions().timeZone,Me=(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.STYLE="style",g))(Me||{}),Mt=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(Mt||{});import{createContext as Bm,Fragment as Um,useContext as yr,useEffect as Km,useRef as xl,useState as vt}from"react";import{useDispatch as Wm,useSelector as zm}from"react-redux";import{createAsyncThunk as un,createSlice as Fp}from"@reduxjs/toolkit";var Yn=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(Yn||{});var Hp={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Q=t=>t.auth.isLoggedIn;var Vi=t=>t.auth.verifyFetchState,ji=t=>t.auth.showLoginOverlay,$i=t=>t.auth.loginError,Ne=un("auth/validate",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),Gi=un("auth/requestLogin",(n,o)=>v(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),Bs=un("auth/loginWithPassword",(o,s)=>v(null,[o,s],function*({username:t,password:e},n){let{deepdeskAPI:r}=n.extra;return r.loginWithPassword(t,e)})),eo=un("auth/logout",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;yield n.logout()})),cn=un("auth/verifyLoginToken",(n,o)=>v(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),qi=Fp({name:"auth",initialState:Hp,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload},setLoginError(t,e){t.loginError=e.payload},clearLoginError(t){t.loginError=null}},extraReducers:t=>{t.addCase(Ne.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ne.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Ne.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(Bs.pending,e=>{e.loginFetchState="loading",e.loginError=null}),t.addCase(Bs.fulfilled,e=>{e.isLoggedIn=!0,e.loginFetchState="done",e.loginError=null,e.showLoginOverlay=!1}),t.addCase(Bs.rejected,(e,n)=>{e.loginFetchState="error",e.isLoggedIn=!1,e.loginError=n.error.message==="Bad Request"?"Invalid credentials":"Login failed"}),t.addCase(eo.fulfilled,e=>{e.isLoggedIn=!1,e.loginFetchState="idle",e.loginError=null}),t.addCase(eo.rejected,e=>{e.isLoggedIn=!1,e.loginFetchState="error"}),t.addCase(cn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(cn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(cn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Nt,setShowLoginOverlay:Xi,setLoginError:Us,clearLoginError:to}=qi.actions,Ji=qi.reducer;import{createAction as qp,createSelector as na,createSlice as Xp}from"@reduxjs/toolkit";import{diffChars as Jp}from"diff";function Qi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function qe(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)=>qe(r,e[i],n-1)):Qi(t)&&Qi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>qe(t[i],e[i],n-1)):!1}function Bp(t){return Math.max(...t.map(e=>e.length))}function Up(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return x(y({},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<Bp(o);s++){let r=Up(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 Kp=2;function Yi(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=Zi(t,Kp);return n&&n.text!==e?n:t[0]}import{createAction as zp,createAsyncThunk as Ot,createSlice as Vp}from"@reduxjs/toolkit";var Wp={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},k=Wp;var ea={current:null,isSupported:null},j=zp("resetConversation"),no=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},Dt=t=>t.conversation.isSupported,Ks=Ot("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),oo=Ot("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),so=Ot("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),ro=Ot("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)}),Ws=Ot("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})})}),zs=Ot("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=>y({},s)))}),jp=[oo.rejected,so.rejected,ro.rejected,zs.rejected].map(t=>t==null?void 0:t.toString());function $p(t){return jp.includes(t.type)}var Gp=Vp({name:"conversation",initialState:ea,reducers:{},extraReducers:t=>{t.addCase(Ks.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(Ws.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(j,()=>ea).addMatcher($p,(e,n)=>{var o;throw k.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),ta=Gp.reducer;var it={text:"",html:null,suggestionTextStart:0,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 Vs(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=qp("input/applyImageSuggestion"),oa=Xp({name:"input",initialState:it,reducers:{setInput(t,e){var i,a;let{beforeInputChange:n}=t,{text:o,html:s,suggestionTextStart:r}=e.payload;if(t.text=o,t.html=s!=null?s:null,t.suggestionTextStart=o===""?0:Math.max(0,r!=null?r:0),o==="")t.metrics=it.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:d,shiftKey:l,ctrlKey:c,metaKey:u,altKey:p}=n.keyDown;switch(d){case"Enter":l&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:f}=t,h=Jp(n.text,f);n.text.length-f.length>1&&t.metrics.deletions.push(...h.filter(m=>m.removed).map(m=>m.value)),t.metrics.numCharsDeleted+=n.text.length-f.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(c||u)break;default:if(!c&&!u&&!p){t.metrics.numCharsTyped+=1;let f=((i=n.selection)==null?void 0:i.start)!==void 0&&((a=n.selection)==null?void 0:a.end)!==void 0?n.text.substring(n.selection.start,n.selection.end):null;f&&f.length>0&&(t.metrics.numCharsDeleted+=f.length,t.metrics.deletions.push(f))}}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&&(qe(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:u},eventMetrics:{inputType:p},replace:f}=n,h=s==="search"||s==="personal-collection-search",m=o.slice(t.text.substring(0,t.selection.start).length);(h||f==="selection")&&(m=o),n.suggestion.source==="search-overlay"&&(m=u),t.metrics.textSuggestions.push({text:m,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:p,sourceText:d,trainingJobs:a||[],searchTerm:h?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(y({},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(y({},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=at({input:t}),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=it.metrics}},extraReducers:t=>{t.addCase(j,e=>{e.mixedSuggestion=it.mixedSuggestion,e.textSuggestions=it.textSuggestions,e.selectedSuggestionIndex=it.selectedSuggestionIndex,e.metrics=it.metrics})}}),at=t=>{let{text:e,selection:n,suggestionTextStart:o}=t.input;return e.slice(o,n.end)},Qp=t=>t.input.mixedSuggestion,Zp=t=>t.input.pinnedSuggestions,Yp=t=>t.input.textSuggestions,pn=t=>t.input.selectedSuggestionIndex,lt=na([Yp,Zp],(t,e)=>[...t,...e]),_t=na([lt,Qp,pn],(t,e,n)=>n>-1?t[n]:e),sa=t=>t.input.selection,{commitSuggestion:ie,offeredTextSuggestion:ra,registerCut:ia,registerKeyDown:aa,registerKeyUp:la,registerPaste:da,selectNextTextSuggestion:ca,selectPreviousTextSuggestion:ua,selectTextSuggestionByIndex:ao,setInput:lo,setMetrics:pa,setPinnedSuggestions:Ft,removePinnedSuggestions:dt,setSelection:co,setTextSuggestions:Xe,resetMetrics:ga,sendMessage:ct}=oa.actions,ma=oa.reducer;import{createAsyncThunk as og,createSelector as sg,createSlice as rg}from"@reduxjs/toolkit";import{createAsyncThunk as uo,createSlice as eg}from"@reduxjs/toolkit";function fa(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var tg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Ht=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},ha=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},ya=t=>{var e;return(e=t.info.customData)!=null?e:null},mn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&fa(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:""}},ng=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],va=uo("info/setAgentNickname",(n,o)=>v(null,[n,o],function*({agentNickname:t},e){var i;let{deepdeskAPI:s}=e.extra,r=yield s.patchMe({nickname:t});return{agentNickname:(i=r==null?void 0:r.nickname)!=null?i:t}})),gn=uo("info/setAgentInfo",(t,e)=>v(null,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=ng.reduce((l,[c,u])=>!o[u]&&c in t?x(y({},l),{[u]: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}})),js=uo("info/setAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=y(y({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),$s=uo("info/getAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),Sa=eg({name:"info",initialState:tg,reducers:{setVisitorInfo(t,e){t.visitorInfo=y(y({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload},setShowNicknameDialog(t,e){t.showNicknameDialog=e.payload}},extraReducers:t=>{t.addCase(gn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=y(y({},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(js.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase($s.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(j,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:xa,setCustomData:ba,setPlatformVariables:Ca,setShowNicknameDialog:Ta}=Sa.actions,wa=Sa.reducer;function pe(t,e){return e?t==null?(k.warn("replaceVars called with non-string text; upstream contract violation",{keys:Object.keys(e)}),t):Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var po={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Ea=t=>t.search.isOpen,ka=t=>t.search.page,Gs=t=>t.search.list,Ra=t=>t.search.aggregates,ig=sg([Gs,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),Pa=t=>e=>ig(e,t),ut=og("search/getAll",(t,e)=>v(null,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:mn(o)});return{results:i.map(l=>x(y(y({},l),l.title&&r?{title:pe(l.title,r)}:{}),{text:pe(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),Ia=rg({name:"search",initialState:po,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=po.fetchState,t.list=po.list}},extraReducers:t=>{t.addCase(ut.pending,e=>{e.fetchState="loading"}).addCase(ut.rejected,(e,n)=>{e.fetchState="error",k.error(n.error)}).addCase(ut.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(j,()=>po)}}),{resetSearch:go,setIsOpen:ge,setPage:Bt}=Ia.actions,La=Ia.reducer;var qs="SetOutputs",Ut="ShowLoginOverlay",fn="UserLoggedIn",ag="UserLoggedOut",Oe="ApplySuggestion",Xs="ApplyImageSuggestion",lg="ShowCommandPalette",mo="ShowNicknameDialog",fo="ReduxAction",dg="RemovePinnedSuggestion",cg=t=>({[qs]:e=>{var s,r;let n=(s=t.getState().conversation.current)==null?void 0:s.externalId,o=(r=e==null?void 0:e.payload)==null?void 0:r.externalConversationId;o&&o!==n||t.dispatch(x(y({},e),{isBroadcasted:!0}))},[fo]:e=>{e.isBroadcasted||t.dispatch(x(y({},e),{isBroadcasted:!0}))},[dg]:e=>{t.dispatch(dt(e))},[lg]:e=>{t.dispatch(ge(e.isOpen)),e.page&&t.dispatch(Bt(e.page))},[mo]:e=>{t.dispatch(Ta(e.showNicknameDialog))},[Ut]:e=>{t.dispatch(Xi(e))},[fn]:()=>{t.dispatch(Ne())},[ag]:()=>{t.dispatch(Ne())},[Xs]:e=>{t.dispatch(io({suggestion:e.suggestion}))},[Oe]:e=>{t.dispatch(ie(x(y({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),Aa=cg;import{useDispatch as pg}from"react-redux";import{createAsyncThunk as ug}from"@reduxjs/toolkit";function Js(t){return ug("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(y({conversationId:o},s),{data:e.data}))})(t)}function W(){let t=pg();return(e,n)=>v(null,null,function*(){yield t(Js({name:e,data:n}))})}import{useRef as gg,useState as Qs}from"react";import{useDispatch as mg}from"react-redux";function ho(t,e){let n=gg(t);n.current=t;let[o,s]=Qs(void 0),[r,i]=Qs(void 0),[a,d]=Qs("idle"),l=mg();return{error:r,state:a,data:o,call:p=>v(null,null,function*(){d("loading"),yield l(n.current(p)).unwrap().then(f=>{s(f),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(f))}).catch(f=>{i(f),d("error"),e!=null&&e.onError&&(e==null||e.onError(f))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import Ma,{useContext as fg}from"react";import{jsx as hg}from"react/jsx-runtime";var Na=Ma.createContext(null),De=({broadcastEvents:t,children:e})=>{let n=Ma.useMemo(()=>t,[]);return hg(Na.Provider,{value:n,children:e})},oe=()=>{let t=fg(Na);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as Ig,useContext as Lg}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 hn(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 ae=function(){return ae=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},ae.apply(this,arguments)};function Oa(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 yo(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 vo(t,e){var n=e&&e.cache?e.cache:Tg,o=e&&e.serializer?e.serializer:bg,s=e&&e.strategy?e.strategy:vg;return s(t,{cache:n,serializer:o})}function yg(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Da(t,e,n,o){var s=yg(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function _a(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 Ys(t,e,n,o,s){return n.bind(e,t,o,s)}function vg(t,e){var n=t.length===1?Da:_a;return Ys(t,this,n,e.cache.create(),e.serializer)}function Sg(t,e){return Ys(t,this,_a,e.cache.create(),e.serializer)}function xg(t,e){return Ys(t,this,Da,e.cache.create(),e.serializer)}var bg=function(){return JSON.stringify(arguments)},Cg=(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})(),Tg={create:function(){return new Cg}},So={variadic:Sg,monadic:xg};var xo;(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"})(xo||(xo={}));var bo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var de;(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"})(de||(de={}));var Co;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Co||(Co={}));function er(t){return t.type===de.literal}function tr(t){return t.type===de.argument}function yn(t){return t.type===de.number}function vn(t){return t.type===de.date}function Sn(t){return t.type===de.time}function xn(t){return t.type===de.select}function bn(t){return t.type===de.plural}function Fa(t){return t.type===de.pound}function Cn(t){return t.type===de.tag}function To(t){return!!(t&&typeof t=="object"&&t.type===Co.number)}function Tn(t){return!!(t&&typeof t=="object"&&t.type===Co.dateTime)}function nr(t){t.forEach(function(e){if(delete e.location,xn(e)||bn(e))for(var n in e.options)delete e.options[n].location,nr(e.options[n].value);else yn(e)&&To(e.style)||(vn(e)||Sn(e))&&Tn(e.style)?delete e.style.location:Cn(e)&&nr(e.children)})}function Ha(t,e){e===void 0&&(e={}),e=ae({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new bo(t,e).parse();if(n.err){var o=SyntaxError(xo[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||nr(n.val),n.val}var pt;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(pt||(pt={}));var wn=(function(t){hn(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 or=(function(t){hn(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('", "'),'"'),pt.INVALID_VALUE,r)||this}return e})(wn);var Ba=(function(t){hn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),pt.INVALID_VALUE,s)||this}return e})(wn);var Ua=(function(t){hn(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,'"'),pt.MISSING_VALUE,o)||this}return e})(wn);var Y;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(Y||(Y={}));function wg(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==Y.literal||n.type!==Y.literal?e.push(n):o.value+=n.value,e},[])}function Eg(t){return typeof t=="function"}function En(t,e,n,o,s,r,i){if(t.length===1&&er(t[0]))return[{type:Y.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(er(c)){a.push({type:Y.literal,value:c.value});continue}if(Fa(c)){typeof r=="number"&&a.push({type:Y.literal,value:n.getNumberFormat(e).format(r)});continue}var u=c.value;if(!(s&&u in s))throw new Ua(u,i);var p=s[u];if(tr(c)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),a.push({type:typeof p=="string"?Y.literal:Y.object,value:p});continue}if(vn(c)){var f=typeof c.style=="string"?o.date[c.style]:Tn(c.style)?c.style.parsedOptions:void 0;a.push({type:Y.literal,value:n.getDateTimeFormat(e,f).format(p)});continue}if(Sn(c)){var f=typeof c.style=="string"?o.time[c.style]:Tn(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:Y.literal,value:n.getDateTimeFormat(e,f).format(p)});continue}if(yn(c)){var f=typeof c.style=="string"?o.number[c.style]:To(c.style)?c.style.parsedOptions:void 0;f&&f.scale&&(p=p*(f.scale||1)),a.push({type:Y.literal,value:n.getNumberFormat(e,f).format(p)});continue}if(Cn(c)){var h=c.children,m=c.value,g=s[m];if(!Eg(g))throw new Ba(m,"function",i);var S=En(h,e,n,o,s,r),T=g(S.map(function(P){return P.value}));Array.isArray(T)||(T=[T]),a.push.apply(a,T.map(function(P){return{type:typeof P=="string"?Y.literal:Y.object,value:P}}))}if(xn(c)){var C=c.options[p]||c.options.other;if(!C)throw new or(c.value,p,Object.keys(c.options),i);a.push.apply(a,En(C.value,e,n,o,s));continue}if(bn(c)){var C=c.options["=".concat(p)];if(!C){if(!Intl.PluralRules)throw new wn(`Intl.PluralRules is not available in this environment.
|
|
1
|
+
var ki=Object.defineProperty,ju=Object.defineProperties;var $u=Object.getOwnPropertyDescriptors;var jn=Object.getOwnPropertySymbols;var Ri=Object.prototype.hasOwnProperty,Pi=Object.prototype.propertyIsEnumerable;var Ei=(t,e,n)=>e in t?ki(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,y=(t,e)=>{for(var n in e||(e={}))Ri.call(e,n)&&Ei(t,n,e[n]);if(jn)for(var n of jn(e))Pi.call(e,n)&&Ei(t,n,e[n]);return t},x=(t,e)=>ju(t,$u(e));var N=(t,e)=>{var n={};for(var o in t)Ri.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&jn)for(var o of jn(t))e.indexOf(o)<0&&Pi.call(t,o)&&(n[o]=t[o]);return n};var J=(t,e)=>{for(var n in e)ki(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 Li from"classnames";import Qu,{createContext as Zu,useContext as Os,useEffect as Yu,useState as ep}from"react";import Gu,{useContext as qu}from"react";import Xu from"classnames";var an=Gu.createContext({});function b(t,e){let r=qu(an),{debug:n}=r,s=N(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return x(y({},i),{[a]:Xu(d,l,n?`${t}__${a}`:!1)})},{})}var Ii={root:"dd-4s9wq"};import{jsx as $n,jsxs as Ju}from"react/jsx-runtime";var Gn=()=>Ju("svg",{className:Ii.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[$n("defs",{children:$n("style",{children:".cls-1 { fill: #b3b3b3; }"})}),$n("title",{children:"Failed loading image"}),$n("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 Ns={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 qn=Zu(Ns),tp=({title:t,src:e})=>{let n=Os(qn),[o,s]=ep(!1);return Yu(()=>{s(!1)},[e]),Lt("div",{className:n.imageWrapper,children:e&&!o?Lt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Lt(Gn,{})})},np=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=Os(qn);return Lt("div",{className:Li(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},op=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=N(i,["as","cropText","className","children"]);let a=Os(qn);return Qu.createElement(t,y({className:Li(a.title,n,{[a.contentIsCropped]:e})},s),o)},Xn=({children:t})=>{let e=b("Card",Ns);return Lt("div",{className:e.root,children:Lt(qn.Provider,{value:e,children:t})})};Xn.Image=tp;Xn.Content=np;Xn.Title=op;var D=Xn;import sp from"classnames";var Ai={root:"dd-llBx9"};import{jsx as ap}from"react/jsx-runtime";var rp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},ip=o=>{var s=o,{className:t,keyCode:e}=s,n=N(s,["className","keyCode"]);let r=b("KeyboardHint",Ai);return ap("span",y({"data-key":rp[e],className:sp(t,r.root)},n))},Ds=ip;import lp from"classnames";var Mi={root:"dd-e6HXZ"};import{jsx as up}from"react/jsx-runtime";var dp=o=>{var s=o,{className:t,children:e}=s,n=N(s,["className","children"]);let r=b("Label",Mi);return up("span",x(y({},n),{className:lp(t,r.root),children:e}))},cp=dp;var Ni={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as _s,jsxs as gp}from"react/jsx-runtime";var pp=s=>{var r=s,{title:t,children:e,type:n}=r,o=N(r,["title","children","type"]);let i=b("Section",Ni);return gp("section",x(y({},o),{className:i.root,"data-section-type":n,children:[t&&_s("div",{className:i.subTitleContainer,children:_s("span",{className:i.subtitle,children:t})}),_s("div",{className:i.suggestions,children:e})]}))},Ae=pp;import Sp from"classnames";import{useRef as xp}from"react";import{createContext as mp,useCallback as fp,useContext as hp,useEffect as yp}from"react";import{jsx as vp}from"react/jsx-runtime";var Oi=mp(null),Di=({scrollContainerRef:t,children:e})=>{let n=fp(o=>{let s=t.current;if(!s||s.scrollHeight<=s.clientHeight)return;let{top:r}=s.getBoundingClientRect(),{top:i}=o.getBoundingClientRect(),a=s.scrollTop+(i-r);typeof s.scrollTo=="function"?s.scrollTo({top:a}):s.scrollTop=a},[]);return vp(Oi.Provider,{value:n,children:e})},Jn=t=>{let e=hp(Oi);yp(()=>{let n=t.current;n&&e(n)},[])};var _i={root:"dd-uoTXh"};import{jsx as Fi}from"react/jsx-runtime";var bp=({className:t,children:e})=>{let n=b("SectionList",_i),o=xp(null);return Fi(Di,{scrollContainerRef:o,children:Fi("div",{ref:o,className:Sp(n.root,t),children:e})})},ln=bp;import dn from"classnames";import Cp,{createContext as Tp,useCallback as wp,useContext as it}from"react";var Fs={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",buttonPrimary:"dd-aYDCB",buttonSecondary:"dd--cpPL",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as ce,jsxs as Hi}from"react/jsx-runtime";var $e=Tp(Fs),Ep=o=>{var s=o,{fixed:t,children:e}=s,n=N(s,["fixed","children"]);let r=it($e);return ce("div",x(y({},n),{className:dn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function kp(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=N(l,["as","className","icon","title","children","disabled","variant"]);let c=it($e);return Hi(t||"button",x(y({type:"button",className:dn(c.button,{[c.buttonWithIcon]:n,[c.buttonDisabled]:r,[c.buttonPrimary]:i==="primary",[c.buttonSecondary]:i==="secondary"},e),title:o,"aria-label":o},a),{children:[n&&ce("span",{className:c.icon,children:n}),s]}))}var Rp=({children:t})=>{let e=it($e);return ce("div",{className:e.buttonsContainer,children:t})},Pp=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=it($e);return Hi("div",{className:dn(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})]})},Ip=({index:t,label:e,onClick:n})=>{let o=it($e);return ce("li",{className:o.dropdownItem,children:ce("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},Lp=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=it($e);return ce("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})},Ap=({labels:t})=>{let e=it($e);return ce("div",{className:e.labels,children:t.map(n=>ce("span",{className:e.label,children:n},n))})},Ge=Cp.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=N(d,["className","selected","onClick","children","as"]);let l=b("Suggestion",Fs),c=wp(u=>{u.preventDefault(),n&&n(u)},[n]);return ce(s,x(y({},r),{ref:i,className:dn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:ce($e.Provider,{value:l,children:o})}))});Ge.Labels=Ap;Ge.Actions=Ep;Ge.ActionButton=Lp;Ge.DropdownButton=Pp;Ge.DropdownItem=Ip;Ge.ButtonsContainer=Rp;Ge.Button=kp;var A=Ge;import Mp from"classnames";var Bi={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Op}from"react/jsx-runtime";var Np=({withDivider:t,children:e})=>{let n=b("SuggestionList",Bi);return Op("div",{"data-testid":"suggestions-overlay-list",className:Mp(n.root,{[n.isWithDivider]:t}),children:e})},Z=Np;import Dp from"classnames";var Ui={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as Hs}from"react/jsx-runtime";var _p=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=b("ToggleButton",Ui);return Hs("button",{type:"button",className:Dp(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:Hs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Hs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},At=_p;var Ki=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,Qn=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Wi=/x-deepdesk-(([a-z0-9\-_])+-version)/,Zn=["cues","custom-data","custom-data-banner","knowledge-assist"],zi=Intl.DateTimeFormat().resolvedOptions().timeZone,Me=(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.STYLE="style",g))(Me||{}),Mt=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(Mt||{});import{createContext as Bm,Fragment as Um,useContext as yr,useEffect as Km,useRef as xl,useState as St}from"react";import{useDispatch as Wm,useSelector as zm}from"react-redux";import{createAsyncThunk as un,createSlice as Fp}from"@reduxjs/toolkit";var Yn=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(Yn||{});var Hp={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Q=t=>t.auth.isLoggedIn;var Vi=t=>t.auth.verifyFetchState,ji=t=>t.auth.showLoginOverlay,$i=t=>t.auth.loginError,Ne=un("auth/validate",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),Gi=un("auth/requestLogin",(n,o)=>v(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),Bs=un("auth/loginWithPassword",(o,s)=>v(null,[o,s],function*({username:t,password:e},n){let{deepdeskAPI:r}=n.extra;return r.loginWithPassword(t,e)})),eo=un("auth/logout",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;yield n.logout()})),cn=un("auth/verifyLoginToken",(n,o)=>v(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),qi=Fp({name:"auth",initialState:Hp,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload},setLoginError(t,e){t.loginError=e.payload},clearLoginError(t){t.loginError=null}},extraReducers:t=>{t.addCase(Ne.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ne.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Ne.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(Bs.pending,e=>{e.loginFetchState="loading",e.loginError=null}),t.addCase(Bs.fulfilled,e=>{e.isLoggedIn=!0,e.loginFetchState="done",e.loginError=null,e.showLoginOverlay=!1}),t.addCase(Bs.rejected,(e,n)=>{e.loginFetchState="error",e.isLoggedIn=!1,e.loginError=n.error.message==="Bad Request"?"Invalid credentials":"Login failed"}),t.addCase(eo.fulfilled,e=>{e.isLoggedIn=!1,e.loginFetchState="idle",e.loginError=null}),t.addCase(eo.rejected,e=>{e.isLoggedIn=!1,e.loginFetchState="error"}),t.addCase(cn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(cn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(cn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Nt,setShowLoginOverlay:Xi,setLoginError:Us,clearLoginError:to}=qi.actions,Ji=qi.reducer;import{createAction as qp,createSelector as na,createSlice as Xp}from"@reduxjs/toolkit";import{diffChars as Jp}from"diff";function Qi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function qe(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)=>qe(r,e[i],n-1)):Qi(t)&&Qi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>qe(t[i],e[i],n-1)):!1}function Bp(t){return Math.max(...t.map(e=>e.length))}function Up(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return x(y({},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<Bp(o);s++){let r=Up(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 Kp=2;function Yi(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=Zi(t,Kp);return n&&n.text!==e?n:t[0]}import{createAction as zp,createAsyncThunk as Ot,createSlice as Vp}from"@reduxjs/toolkit";var Wp={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},k=Wp;var ea={current:null,isSupported:null},j=zp("resetConversation"),no=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},Dt=t=>t.conversation.isSupported,Ks=Ot("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),oo=Ot("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),so=Ot("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),ro=Ot("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)}),Ws=Ot("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})})}),zs=Ot("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=>y({},s)))}),jp=[oo.rejected,so.rejected,ro.rejected,zs.rejected].map(t=>t==null?void 0:t.toString());function $p(t){return jp.includes(t.type)}var Gp=Vp({name:"conversation",initialState:ea,reducers:{},extraReducers:t=>{t.addCase(Ks.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(Ws.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(j,()=>ea).addMatcher($p,(e,n)=>{var o;throw k.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),ta=Gp.reducer;var at={text:"",html:null,suggestionTextStart:0,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 Vs(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=qp("input/applyImageSuggestion"),oa=Xp({name:"input",initialState:at,reducers:{setInput(t,e){var i,a;let{beforeInputChange:n}=t,{text:o,html:s,suggestionTextStart:r}=e.payload;if(t.text=o,t.html=s!=null?s:null,t.suggestionTextStart=o===""?0:Math.max(0,r!=null?r:0),o==="")t.metrics=at.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:d,shiftKey:l,ctrlKey:c,metaKey:u,altKey:p}=n.keyDown;switch(d){case"Enter":l&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:f}=t,h=Jp(n.text,f);n.text.length-f.length>1&&t.metrics.deletions.push(...h.filter(m=>m.removed).map(m=>m.value)),t.metrics.numCharsDeleted+=n.text.length-f.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(c||u)break;default:if(!c&&!u&&!p){t.metrics.numCharsTyped+=1;let f=((i=n.selection)==null?void 0:i.start)!==void 0&&((a=n.selection)==null?void 0:a.end)!==void 0?n.text.substring(n.selection.start,n.selection.end):null;f&&f.length>0&&(t.metrics.numCharsDeleted+=f.length,t.metrics.deletions.push(f))}}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&&(qe(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:u},eventMetrics:{inputType:p},replace:f}=n,h=s==="search"||s==="personal-collection-search",m=o.slice(t.text.substring(0,t.selection.start).length);(h||f==="selection")&&(m=o),n.suggestion.source==="search-overlay"&&(m=u),t.metrics.textSuggestions.push({text:m,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:p,sourceText:d,trainingJobs:a||[],searchTerm:h?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(y({},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(y({},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=lt({input:t}),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=at.metrics}},extraReducers:t=>{t.addCase(j,e=>{e.mixedSuggestion=at.mixedSuggestion,e.textSuggestions=at.textSuggestions,e.selectedSuggestionIndex=at.selectedSuggestionIndex,e.metrics=at.metrics})}}),lt=t=>{let{text:e,selection:n,suggestionTextStart:o}=t.input;return e.slice(o,n.end)},Qp=t=>t.input.mixedSuggestion,Zp=t=>t.input.pinnedSuggestions,Yp=t=>t.input.textSuggestions,pn=t=>t.input.selectedSuggestionIndex,dt=na([Yp,Zp],(t,e)=>[...t,...e]),_t=na([dt,Qp,pn],(t,e,n)=>n>-1?t[n]:e),sa=t=>t.input.selection,{commitSuggestion:ie,offeredTextSuggestion:ra,registerCut:ia,registerKeyDown:aa,registerKeyUp:la,registerPaste:da,selectNextTextSuggestion:ca,selectPreviousTextSuggestion:ua,selectTextSuggestionByIndex:ao,setInput:lo,setMetrics:pa,setPinnedSuggestions:Ft,removePinnedSuggestions:ct,setSelection:co,setTextSuggestions:Xe,resetMetrics:ga,sendMessage:ut}=oa.actions,ma=oa.reducer;import{createAsyncThunk as og,createSelector as sg,createSlice as rg}from"@reduxjs/toolkit";import{createAsyncThunk as uo,createSlice as eg}from"@reduxjs/toolkit";function fa(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var tg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Ht=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},ha=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},ya=t=>{var e;return(e=t.info.customData)!=null?e:null},mn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&fa(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:""}},ng=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],va=uo("info/setAgentNickname",(n,o)=>v(null,[n,o],function*({agentNickname:t},e){var i;let{deepdeskAPI:s}=e.extra,r=yield s.patchMe({nickname:t});return{agentNickname:(i=r==null?void 0:r.nickname)!=null?i:t}})),gn=uo("info/setAgentInfo",(t,e)=>v(null,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=ng.reduce((l,[c,u])=>!o[u]&&c in t?x(y({},l),{[u]: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}})),js=uo("info/setAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=y(y({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),$s=uo("info/getAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),Sa=eg({name:"info",initialState:tg,reducers:{setVisitorInfo(t,e){t.visitorInfo=y(y({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload},setShowNicknameDialog(t,e){t.showNicknameDialog=e.payload}},extraReducers:t=>{t.addCase(gn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=y(y({},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(js.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase($s.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(j,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:xa,setCustomData:ba,setPlatformVariables:Ca,setShowNicknameDialog:Ta}=Sa.actions,wa=Sa.reducer;function pe(t,e){return e?t==null?(k.warn("replaceVars called with non-string text; upstream contract violation",{keys:Object.keys(e)}),t):Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var po={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Ea=t=>t.search.isOpen,ka=t=>t.search.page,Gs=t=>t.search.list,Ra=t=>t.search.aggregates,ig=sg([Gs,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),Pa=t=>e=>ig(e,t),pt=og("search/getAll",(t,e)=>v(null,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:mn(o)});return{results:i.map(l=>x(y(y({},l),l.title&&r?{title:pe(l.title,r)}:{}),{text:pe(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),Ia=rg({name:"search",initialState:po,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=po.fetchState,t.list=po.list}},extraReducers:t=>{t.addCase(pt.pending,e=>{e.fetchState="loading"}).addCase(pt.rejected,(e,n)=>{e.fetchState="error",k.error(n.error)}).addCase(pt.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(j,()=>po)}}),{resetSearch:go,setIsOpen:ge,setPage:Bt}=Ia.actions,La=Ia.reducer;var qs="SetOutputs",Ut="ShowLoginOverlay",fn="UserLoggedIn",ag="UserLoggedOut",Oe="ApplySuggestion",Xs="ApplyImageSuggestion",lg="ShowCommandPalette",mo="ShowNicknameDialog",fo="ReduxAction",dg="RemovePinnedSuggestion",cg=t=>({[qs]:e=>{var s,r;let n=(s=t.getState().conversation.current)==null?void 0:s.externalId,o=(r=e==null?void 0:e.payload)==null?void 0:r.externalConversationId;o&&o!==n||t.dispatch(x(y({},e),{isBroadcasted:!0}))},[fo]:e=>{e.isBroadcasted||t.dispatch(x(y({},e),{isBroadcasted:!0}))},[dg]:e=>{t.dispatch(ct(e))},[lg]:e=>{t.dispatch(ge(e.isOpen)),e.page&&t.dispatch(Bt(e.page))},[mo]:e=>{t.dispatch(Ta(e.showNicknameDialog))},[Ut]:e=>{t.dispatch(Xi(e))},[fn]:()=>{t.dispatch(Ne())},[ag]:()=>{t.dispatch(Ne())},[Xs]:e=>{t.dispatch(io({suggestion:e.suggestion}))},[Oe]:e=>{t.dispatch(ie(x(y({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),Aa=cg;import{useDispatch as pg}from"react-redux";import{createAsyncThunk as ug}from"@reduxjs/toolkit";function Js(t){return ug("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(y({conversationId:o},s),{data:e.data}))})(t)}function W(){let t=pg();return(e,n)=>v(null,null,function*(){yield t(Js({name:e,data:n}))})}import{useRef as gg,useState as Qs}from"react";import{useDispatch as mg}from"react-redux";function ho(t,e){let n=gg(t);n.current=t;let[o,s]=Qs(void 0),[r,i]=Qs(void 0),[a,d]=Qs("idle"),l=mg();return{error:r,state:a,data:o,call:p=>v(null,null,function*(){d("loading"),yield l(n.current(p)).unwrap().then(f=>{s(f),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(f))}).catch(f=>{i(f),d("error"),e!=null&&e.onError&&(e==null||e.onError(f))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import Ma,{useContext as fg}from"react";import{jsx as hg}from"react/jsx-runtime";var Na=Ma.createContext(null),De=({broadcastEvents:t,children:e})=>{let n=Ma.useMemo(()=>t,[]);return hg(Na.Provider,{value:n,children:e})},oe=()=>{let t=fg(Na);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as Ig,useContext as Lg}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 hn(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 ae=function(){return ae=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},ae.apply(this,arguments)};function Oa(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 yo(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 vo(t,e){var n=e&&e.cache?e.cache:Tg,o=e&&e.serializer?e.serializer:bg,s=e&&e.strategy?e.strategy:vg;return s(t,{cache:n,serializer:o})}function yg(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Da(t,e,n,o){var s=yg(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function _a(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 Ys(t,e,n,o,s){return n.bind(e,t,o,s)}function vg(t,e){var n=t.length===1?Da:_a;return Ys(t,this,n,e.cache.create(),e.serializer)}function Sg(t,e){return Ys(t,this,_a,e.cache.create(),e.serializer)}function xg(t,e){return Ys(t,this,Da,e.cache.create(),e.serializer)}var bg=function(){return JSON.stringify(arguments)},Cg=(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})(),Tg={create:function(){return new Cg}},So={variadic:Sg,monadic:xg};var xo;(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"})(xo||(xo={}));var bo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var de;(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"})(de||(de={}));var Co;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Co||(Co={}));function er(t){return t.type===de.literal}function tr(t){return t.type===de.argument}function yn(t){return t.type===de.number}function vn(t){return t.type===de.date}function Sn(t){return t.type===de.time}function xn(t){return t.type===de.select}function bn(t){return t.type===de.plural}function Fa(t){return t.type===de.pound}function Cn(t){return t.type===de.tag}function To(t){return!!(t&&typeof t=="object"&&t.type===Co.number)}function Tn(t){return!!(t&&typeof t=="object"&&t.type===Co.dateTime)}function nr(t){t.forEach(function(e){if(delete e.location,xn(e)||bn(e))for(var n in e.options)delete e.options[n].location,nr(e.options[n].value);else yn(e)&&To(e.style)||(vn(e)||Sn(e))&&Tn(e.style)?delete e.style.location:Cn(e)&&nr(e.children)})}function Ha(t,e){e===void 0&&(e={}),e=ae({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new bo(t,e).parse();if(n.err){var o=SyntaxError(xo[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||nr(n.val),n.val}var gt;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(gt||(gt={}));var wn=(function(t){hn(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 or=(function(t){hn(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('", "'),'"'),gt.INVALID_VALUE,r)||this}return e})(wn);var Ba=(function(t){hn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),gt.INVALID_VALUE,s)||this}return e})(wn);var Ua=(function(t){hn(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,'"'),gt.MISSING_VALUE,o)||this}return e})(wn);var Y;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(Y||(Y={}));function wg(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==Y.literal||n.type!==Y.literal?e.push(n):o.value+=n.value,e},[])}function Eg(t){return typeof t=="function"}function En(t,e,n,o,s,r,i){if(t.length===1&&er(t[0]))return[{type:Y.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(er(c)){a.push({type:Y.literal,value:c.value});continue}if(Fa(c)){typeof r=="number"&&a.push({type:Y.literal,value:n.getNumberFormat(e).format(r)});continue}var u=c.value;if(!(s&&u in s))throw new Ua(u,i);var p=s[u];if(tr(c)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),a.push({type:typeof p=="string"?Y.literal:Y.object,value:p});continue}if(vn(c)){var f=typeof c.style=="string"?o.date[c.style]:Tn(c.style)?c.style.parsedOptions:void 0;a.push({type:Y.literal,value:n.getDateTimeFormat(e,f).format(p)});continue}if(Sn(c)){var f=typeof c.style=="string"?o.time[c.style]:Tn(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:Y.literal,value:n.getDateTimeFormat(e,f).format(p)});continue}if(yn(c)){var f=typeof c.style=="string"?o.number[c.style]:To(c.style)?c.style.parsedOptions:void 0;f&&f.scale&&(p=p*(f.scale||1)),a.push({type:Y.literal,value:n.getNumberFormat(e,f).format(p)});continue}if(Cn(c)){var h=c.children,m=c.value,g=s[m];if(!Eg(g))throw new Ba(m,"function",i);var S=En(h,e,n,o,s,r),T=g(S.map(function(P){return P.value}));Array.isArray(T)||(T=[T]),a.push.apply(a,T.map(function(P){return{type:typeof P=="string"?Y.literal:Y.object,value:P}}))}if(xn(c)){var C=c.options[p]||c.options.other;if(!C)throw new or(c.value,p,Object.keys(c.options),i);a.push.apply(a,En(C.value,e,n,o,s));continue}if(bn(c)){var C=c.options["=".concat(p)];if(!C){if(!Intl.PluralRules)throw new wn(`Intl.PluralRules is not available in this environment.
|
|
2
2
|
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
3
|
-
`,
|
|
4
|
-
`):""}var Ga=Og({name:"assistants",initialState:Ka,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(se.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&k.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(se.rejected,(e,n)=>{var s;k.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(se.fulfilled,(e,n)=>{let o=e.pending.indexOf(n.meta.arg.assistantCode);if(o!==-1&&e.pending.splice(o,1),n.meta.arg.skipState)return;let{evaluationId:s,output:r,externalConversationId:i,currentExternalIdAtRequest:a}=n.payload;if(i&&a&&i!==a)return;let d=r.map(u=>u.code),l=e.cues.filter(u=>!d.includes(u.code)),c=r.map(u=>y(x(y({},u),{evaluationId:s}),i?{externalConversationId:i}:{}));e.cues=[...l,...c]}).addCase(kn.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=N(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(j,()=>Ka)}}),{removeCueByCode:ko,resetCues:vT,removeThreadById:qa,receiveChunk:Xa,userNotification:Ja}=Ga.actions,Qa=Ga.reducer;import{createSlice as _g}from"@reduxjs/toolkit";import{useSelector as Fg}from"react-redux";var Hg={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showStyleSuggestionList:!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,addToPersonalCollection:!1,inlineSuggestions:!1,autoSelectSuggestion:!1,suggestionsPlacement:"above",floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Za=_g({name:"settings",initialState:Hg,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}}}),{set:Ro}=Za.actions,gt=t=>e=>e.settings[t],E=t=>Fg(gt(t)),Ya=Za.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 dr from"classnames";import{useState as Kg}from"react";import{jsx as el}from"react/jsx-runtime";var ar=t=>el("svg",x(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:el("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 tl}from"react/jsx-runtime";var nl=t=>tl("svg",x(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:tl("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 Je(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 lr={};J(lr,{enUS:()=>Bg,nlNL:()=>Ug});var Bg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Ug={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var ol={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as sl}from"react-redux";var Qe=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 Kt,jsxs as zg}from"react/jsx-runtime";var Wg=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=b("FeedbackThumbs",ol),i=E("enableFeedbackForm"),a=sl(xe),d=sl(Qe(`/admin/feedback?conversationId=${a}&evaluationId=${n}&type=${o}&text=${s}&assistantCode=${t}&assistantOutput=${e}`)),l=R(lr),c=W(),[u,p]=Kg(null),f=g=>{c("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:g})},h=g=>{g.stopPropagation(),Je(g.target,r.fadeup),p("up"),f("up")},m=g=>{g.stopPropagation(),Je(g.target,r.fadedown),p("down"),f("down")};return zg("div",{className:r.thumbs,children:[Kt(A.Button,{title:l("thumbsUp"),onClick:h,icon:Kt(nl,{}),className:dr(r.thumbsUp,u==="up"&&r.selected),disabled:!!u}),i&&d?Kt(A.Button,{as:"a",title:l("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:m,icon:Kt(ar,{}),className:dr(r.thumbsDown,u==="down"&&r.selected),disabled:!!u}):Kt(A.Button,{title:l("thumbsDown"),onClick:m,icon:Kt(ar,{}),className:dr(r.thumbsDown,u==="down"&&r.selected),disabled:!!u})]})},Po=Wg;import sm from"dompurify";import{Fragment as ul,useMemo as rm,useRef as im,useState as am}from"react";import dl from"classnames";import{createRef as em,useCallback as ur,useMemo as tm,useRef as nm,useState as om}from"react";import{useState as Vg,useLayoutEffect as jg}from"react";var $g=["bottom","height","left","right","top","width"],Gg=(t={},e={})=>$g.some(n=>t[n]!==e[n]),_e=new Map,rl,il=()=>{let t=[],e=[];_e.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();Gg(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{_e.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),rl=window.requestAnimationFrame(il)};function qg(t,e){return{observe(){let n=_e.size===0;if(_e.has(t)){let o=_e.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else _e.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&il()},unobserve(){let n=_e.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||_e.delete(t),_e.size||cancelAnimationFrame(rl)}}}}function cr(t){let[e,n]=Vg(null);return jg(()=>{if(!t.current)return;let o=qg(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Jg,useLayoutEffect as Qg,useState as Zg}from"react";import{createPortal as Yg}from"react-dom";import{useEffect as Xg}from"react";function mt(t){Xg(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function ft(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var al={root:"dd-r-dgo"};var ll=({children:t,parentNode:e})=>{let[n,o]=Zg(null),s=Jg(an);return Qg(()=>{let r=document.createElement("div");return ft(r),r.classList.add(al.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?Yg(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 pr}from"react/jsx-runtime";var Io=(t=!1)=>{let[e,n]=om(t),o=ur(()=>n(!0),[]),s=ur(()=>n(!1),[]),r=ur(()=>n(a=>!a),[]),i=nm(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function gr(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 Wt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=em(),position:o="above",align:s="center",children:r,toStyle:i=gr,parentNode:a}=c,d=N(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let u=cr(e),p=cr(n),f=tm(()=>i(u,p,0),[u,p]);return pr(ll,{parentNode:a,children:pr("div",x(y({className:dl(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:f},d),{role:"dialog",children:pr("div",{className:dl(t,Ce.root),children:r})}))})};var cl={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 lm}from"marked";import{jsx as Rn,jsxs as Lo}from"react/jsx-runtime";function dm(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 mr(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 cm(t){return t.replace(/\r\n/g,`
|
|
5
|
-
`)}var um=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=b("Markdown",cl),i=im(null),[a,d]=am(null),l=rm(()=>{let m=lm.parse(cm(t));return sm.sanitize(m.toString()).replaceAll("</code>",`${dm(r.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),c=m=>{var T;let g=m.target,S=!!((T=i.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(g.tagName)){d(null);return}a||S&&g.tagName!=="CODE"||!S&&g!==i.current||(g.addEventListener("mouseleave",()=>d(null),{once:!0}),d(g))},u=()=>{if(!a)return;d(null);let m=a.querySelector("button");m&&(Je(m,r.fadeup),o==null||o(mr(a)))},p=m=>{let g=m.target,S=g instanceof HTMLElement?g:null;if(g instanceof Element?g.closest("a"):null){m.stopPropagation();return}S&&"copyIcon"in S.dataset&&(Je(S,r.fadeup),o==null||o(mr(S.parentElement)))},f=()=>{!a||!s||(d(null),s(mr(a)))},h=m=>{if(m===null)return;let g=m.getBoundingClientRect();g.left<0?m.style.transform=`translateX(${-g.left+2}px)`:g.right>window.innerWidth&&(m.style.transform=`translateX(${window.innerWidth-g.right-2}px)`)};return Lo(ul,{children:[a&&(o||s)&&Lo(Wt,{triggerRef:{current:a},className:r.popover,parentNode:a,children:[Lo("div",{className:r.options,ref:h,children:[o&&(a==null?void 0:a.tagName)==="CODE"&&Rn("button",{type:"button",className:r.option,onClick:u,children:n}),s&&Lo(ul,{children:[Rn("div",{className:r.divider}),Rn("button",{type:"button",className:r.option,onClick:f,children:e})]})]}),Rn("div",{className:r.arrow})]}),Rn("div",{ref:i,"data-testid":"widget-markdown-content",className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:c,onClick:p})]})},ht=um;import{useRef as mm}from"react";var pl={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as gm}from"react/jsx-runtime";var pm=({width:t})=>{let e=b("LoadingProgressBar",pl);return gm("div",{className:e.loadingBar,style:{width:t}})},Ao=pm;import{jsx as zt,jsxs as fm}from"react/jsx-runtime";var Mo=({title:t})=>{let e=mm(null);return Jn(e),zt(A,{ref:e,children:zt(D,{children:fm(D.Content,{children:[zt(D.Title,{children:t}),zt(Ao,{width:"60%"}),zt(Ao,{width:"90%"}),zt(Ao,{width:"50%"})]})})})};var Vt={};J(Vt,{enUS:()=>hm,nlNL:()=>ym});var hm={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"}]},ym={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 No={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*as Te from"react";import{useFloating as vm,autoUpdate as Sm,useClick as xm,useDismiss as bm,useRole as Cm,useInteractions as Tm,useMergeRefs as ml,FloatingPortal as wm,FloatingFocusManager as Em,useHover as km,offset as Rm,flip as Pm,shift as Im,safePolygon as Lm}from"@floating-ui/react";var Oo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as Ze,jsxs as gl}from"react/jsx-runtime";function Am({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Te.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=vm({placement:e,open:d,onOpenChange:l,whileElementsMounted:Sm,middleware:[Rm(5),Pm({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Im({padding:10})]}),u=c.context,p=xm(u,{enabled:s==null}),f=bm(u),h=Cm(u),m=km(u,{enabled:o!=null?o:!1,handleClose:Lm()}),g=Tm([p,f,h,m]);return Te.useMemo(()=>x(y(y({open:d,setOpen:l},g),c),{modal:n}),[d,l,g,c,n])}var fl=Te.createContext(null),fr=()=>{let t=Te.useContext(fl);if(t==null)throw new Error("Popover components must be wrapped in <Popover />");return t},yt=o=>{var s=o,{children:t,modal:e=!1}=s,n=N(s,["children","modal"]);let r=Am(y({modal:e},n));return Ze(fl.Provider,{value:r,children:t})};function Mm(o){var s=o,{as:t,children:e}=s,n=N(s,["as","children"]);let r=fr(),i=t||"button",a=e.ref,d=ml([r.refs.setReference,a]);return Ze(i,x(y({ref:d,type:"button"},r.getReferenceProps(n)),{children:e}))}var Nm=Te.forwardRef(function(s,o){var r=s,{style:e}=r,n=N(r,["style"]);let l=fr(),{context:i}=l,a=N(l,["context"]),d=ml([a.refs.setFloating,o]);return i.open?Ze(wm,{children:Ze(Em,{context:i,modal:a.modal,disabled:n.disableFocusManager,children:Ze("div",x(y({ref:d,style:y(x(y({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function Om(s){var r=s,{as:t,children:e,onClick:n}=r,o=N(r,["as","children","onClick"]);let{setOpen:i}=fr();return Ze(t||"button",x(y({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function hl({trigger:t,children:e,placement:n="top"}){return gl(yt,{tooltip:!0,placement:n,children:[gl(yt.Content,{className:Oo.tooltip,children:[e,Ze("div",{className:Oo.arrow})]}),Ze(yt.Trigger,{className:Oo.tooltipTrigger,children:t})]})}yt.Trigger=Mm;yt.Content=Nm;yt.Button=Om;var $=yt;import{useRef as Fm}from"react";var yl={error:"dd-CoAuB"};var hr={};J(hr,{enUS:()=>Dm,nlNL:()=>_m});var Dm={errorPrefix:[{type:0,value:"Error:"}]},_m={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as vl,jsxs as Hm}from"react/jsx-runtime";var Sl=({message:t})=>{let e=Fm(null),n=b("WidgetCardError",yl),o=R(hr);return Jn(e),vl(A,{ref:e,children:vl(D,{children:Hm(D.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as H,jsxs as Fe}from"react/jsx-runtime";var Vm=3,jm=({sources:t,onClick:e})=>{let n=R(Vt),o=b("WidgetKnowledgeAssistant",No),[s,r]=vt(!1),i=s?t:t.slice(0,Vm);return i.length===0?null:Fe("ul",{className:o.sources,children:[i.map(a=>H("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Fe($,{tooltip:!0,placement:"top-start",children:[H($.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($.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})})]})},$m=({title:t,description:e})=>H(A,{"data-testid":"knowledge-assist-empty-state",children:H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:t}),H(ht,{content:e})]})})}),Gm=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=R(Vt),a=yr(Do);return Fe(A,{"data-testid":"knowledge-assist-answer",ref:t,children:[H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:e.question}),H(ht,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),H(jm,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Fe(A.ButtonsContainer,{children:[H("div",{}),H(Po,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer,feedbackText:e.answer.answer})]})]})},Do=Bm(null),_o=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,children:o})=>{let[s,r]=vt(null),[i,a]=vt(!1),[d,l]=vt(null),[c,u]=vt(!!n),[p,f]=vt(null),h=Wm(),m=W(),g=ho(C=>{if(!t)throw new Error("No knowledge assistant was defined");return l(null),e({assistantCode:t,input:C,threadId:s,onNewThreadId(w){r(w)}})},{onSuccess(C){var w;m("Assistant response displayed",{evaluationId:C.evaluationId,assistantCode:t,assistantOutput:C.answer.answer,input:C.question,sources:(w=C.answer.sources)!=null?w:[]}),u(!1)},onError(C){var w;l((w=C.message)!=null?w:"Unknown error")}}),S=C=>v(null,null,function*(){a(!0),f(C),yield g.call(C),a(!1),f(null)}),T={isEnabled:!!t,assistantCode:t,isSubmitting:i,threadId:s,pendingInput:p,errorMessage:d,onSubmit:S,onReset(){s&&h(qa(s)),l(null),r(null),t&&m("Assistant thread reset",{threadId:s!=null?s:void 0,assistantCode:t})}};return Km(()=>{n&&T.isEnabled&&S(n)},[n]),H(Do.Provider,{value:T,children:o})},Fo=()=>{let t=R(Vt),e=b("WidgetKnowledgeAssistant",No),n=yr(Do),o=xl(null),[s,r]=vt(""),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?Fe("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},Ho=({title:t,emptyState:e})=>{var h,m;let n=R(Vt),o=W(),s=b("WidgetKnowledgeAssistant",No),r=xl(null),i=yr(Do),a=(m=zm(ja((h=i.threadId)!=null?h:-1)))!=null?m:[],d=E("hasKeyboardInput"),l=oe(),c=(g,S)=>{be(g),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:g,copiedText:g,evaluationId:S.evaluationId})},u=(g,S)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:S.evaluationId,assistantCode:i.assistantCode,source:g})},p=g=>{g.preventDefault(),i.onReset()},f=(g,S)=>{l.send(Oe,{text:g,suggestion:{source:"assistant",sourceText:g}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:S.evaluationId,assistantOutput:S.answer.answer,usedText:g})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Fe(Um,{children:[H(Ae,{type:"knowledge",title:t,"data-testid":"knowledge",children:Fe(Z,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&H($m,y({},e)),a.map((g,S)=>H(Gm,{innerRef:S===a.length-1?r:void 0,item:g,hasKeyboardInput:d,onCopy:T=>c(T,g),onUse:T=>f(T,g),onSourceClick:T=>u(T,g)},`${g.question}_${g.answer}_${S}`)),i.pendingInput&&H(Mo,{title:i.pendingInput}),i.errorMessage&&H(Sl,{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{createRoot as ot}from"react-dom/client";import{Fragment as Fh}from"react";import{useSelector as Pl}from"react-redux";import Sr from"classnames";import{useCallback as kl,useEffect as nf,useMemo as of,useState as xr}from"react";import{useDispatch as sf,useSelector as rf}from"react-redux";import{useEffect as qm,useRef as Xm}from"react";var Cl={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as Tl}from"react/jsx-runtime";var Jm=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=Xm(null),l=b("Dialog",Cl),c=p=>{if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s();return}r&&r(p)},u=p=>{p.target===d.current&&t&&o()};return qm(()=>{var p,f;!d.current||!t||!e||(f=(p=d.current)==null?void 0:p.querySelector("input, textarea"))==null||f.focus()},[t,e,d]),t?Tl("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:u,children:Tl("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},jt=Jm;import Qm from"classnames";var wl={root:"dd-ranhW"};import{jsx as Ym}from"react/jsx-runtime";var Zm=o=>{var s=o,{className:t,value:e}=s,n=N(s,["className","value"]);let r=b("TextInput",wl);return Ym("input",y({className:Qm(t,r.root),type:"text",value:e},n))},Pn=Zm;var vr={};J(vr,{enUS:()=>ef,nlNL:()=>tf});var ef={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"}]},tf={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 El={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 re,jsxs as Bo}from"react/jsx-runtime";var af=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},lf=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=R(vr),i=b("LoginTokenDialog",El),a=rf(Vi),d=sf(),l=E("productName"),[c,u]=xr(t||""),[p,f]=xr(0),[h,m]=xr(""),g=kl(w=>v(null,null,function*(){w.preventDefault(),d(Gi({email:c})),f(1)}),[n,c]),S=()=>{m(""),f(0)},T=kl(w=>v(null,null,function*(){w.preventDefault();let P=af(w.target.elements.token.value);if(!P){m(r("verifyCodeError",{login:C}));return}d(cn({token:P}))}),[n]),C=of(()=>w=>re("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:S,children:w},"back-button"),[]);return nf(()=>{a==="error"&&m(r("verifyCodeError",{login:C})),a==="done"&&o()},[a]),re(jt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:Bo("div",{className:i.root,children:[re("h1",{className:i.title,children:r("promptTitle",{productName:l})}),p===0&&Bo("form",{onSubmit:g,children:[re("h2",{className:i.subtitle,children:r("requestCodeTitle")}),re("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),re(Pn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:w=>u(w.target.value)}),re("div",{className:i.actions,children:re("button",{type:"submit",className:Sr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),p===1&&Bo("form",{onSubmit:T,children:[re("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),re("p",{className:i.text,children:r("verifyCodeBody")}),re(Pn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),h&&re("div",{className:i.errorMessage,children:h}),Bo("div",{className:i.actions,children:[re("button",{type:"button",className:Sr(i.button),onClick:S,children:r("back")}),re("button",{type:"submit",className:Sr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Rl=lf;import{jsx as cf}from"react/jsx-runtime";var df=()=>{let t=Pl(ji),e=Pl(Ht),n=E("adminUrl"),o=oe(),s=()=>o.send(Ut,!1),r=()=>{o.send(Ut,!1),o.send(fn)};return cf(Rl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},Il=df;import Ph from"lodash.debounce";import{Fragment as Ih,useCallback as xd,useEffect as bd,useMemo as Lh,useState as Nr}from"react";import{useDispatch as Ah,useSelector as bt}from"react-redux";import{createAsyncThunk as uf,createSlice as pf}from"@reduxjs/toolkit";var gf={data:null,fetchState:"idle"},Ll=t=>t.contentTypes.data,In=uf("contentTypes/getContentTypes",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),mf=pf({name:"contentTypes",initialState:gf,reducers:{},extraReducers:t=>{t.addCase(In.pending,e=>{e.fetchState="loading"}).addCase(In.rejected,e=>{e.fetchState="error"}).addCase(In.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Al=mf.reducer;import{createAsyncThunk as ff,createSelector as hf,createSlice as yf}from"@reduxjs/toolkit";var vf={data:null,fetchState:"idle"},Sf=[],St=t=>t.profile.data,xf=t=>t.profile.data?t.profile.data.uiConfig.widget.types:Sf,An=hf([xf],t=>t.filter(e=>e.isActive)),Ml=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||[]},Nl=t=>e=>An(e).find(n=>n.type===t),Ol=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Dl=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistantNew)!=null?n:null},Ln=ff("profile/getProfile",(t,e)=>v(null,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)})),bf=yf({name:"profile",initialState:vf,reducers:{},extraReducers:t=>{t.addCase(Ln.pending,e=>{e.fetchState="loading"}).addCase(Ln.rejected,e=>{e.fetchState="error"}).addCase(Ln.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),_l=bf.reducer;import{useEffect as ed,useState as Gf,useRef as qf,useCallback as Xf}from"react";import{useState as wf}from"react";import br from"classnames";var le={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 He={};J(He,{enUS:()=>Cf,nlNL:()=>Tf});var Cf={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"}]},Tf={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 Mn,jsxs as kf}from"react/jsx-runtime";var Ef=({src:t,title:e})=>{let n=b("CommandPalette",le),[o,s]=wf("loading"),r=R(He);return kf("div",{className:n.image,children:[Mn("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:br(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&Mn("span",{className:br(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&Mn("span",{className:br(n.imageSrc,n.imageSrcStatus),children:Mn(Gn,{})}),e&&Mn("span",{className:n.imageTitle,children:e})]})},Fl=Ef;import Rf from"react";import Pf from"classnames";import{jsx as Cr,jsxs as Hl}from"react/jsx-runtime";function Tr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=R(He),i=b("CommandPalette",le);return Rf.Children.count(t)===0?null:Hl("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Hl("div",{className:i.listHeader,children:[e&&Cr("h4",{className:i.listHeading,children:e}),o&&s&&Cr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Cr("div",{className:Pf(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import Ko from"classnames";import{Interweave as zl}from"interweave";import{useEffect as Ff,useMemo as Vl,useState as jl}from"react";var If=/[.*+?^${}()|[\]\\]/g,Lf=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Af(t){return t.replace(If,"\\$&")}function Mf(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Nf(t){return t.search(Lf)}function Bl(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Af(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Ul(t){return t.replace(Qn,'<mark data-type="placeholder">$1</mark>')}function Nn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Of(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 wr(t,e,n={}){if(e){let o=Mf(e.toLowerCase(),t.toLowerCase()),s=Nn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Nf(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(Ki).length>3||e.length>30?Of(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Nn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Df=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Uo(t){return Df.test(t)}function Er(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import kr from"react";import{jsx as _f}from"react/jsx-runtime";var Kl=kr.createContext(void 0);function $t(){let t=kr.useContext(Kl);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Wl=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=kr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return _f(Kl.Provider,{value:i,children:t})};import{jsx as Be,jsxs as Wo}from"react/jsx-runtime";var Hf=3,Bf=90,$l=({children:t})=>{let e=b("CommandPalette",le);return Be("div",{className:e.listItemActions,children:t})};function Rr(f){var h=f,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:u=Hf}=h,p=N(h,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var Ie;let m=R(He),[g,S]=jl(!1),{selected:T,onChangeOpen:C}=$t(),[w,P]=jl(!1),L=b("CommandPalette",le);function _(O){s(O),t&&C(!1)}let V=Vl(()=>typeof a!="string"?a:Uo(a)?Er(a).trim():a,[a]),Pe=Vl(()=>typeof n!="string"?n:Uo(n)?Er(n).trim():n,[n]);return Ff(()=>{P(T===l)},[T]),Wo("div",{className:Ko(L.listItem,l===T&&L.listItemSelected),children:[Wo($,{placement:"right-start",tooltip:!0,onOpenChange:P,open:w,children:[Be($.Trigger,x(y({className:L.listItemAction,"aria-disabled":(Ie=p.disabled)!=null?Ie:!1,onClick:_,"data-command-palette-item":!0,"data-item-id":l},p),{children:Wo("div",{className:L.listItemContent,children:[typeof o=="string"?Be("p",{className:Ko(L.listItemText,L.truncate,c==null?void 0:c.title),children:o}):o,V&&typeof V=="string"?Be(zl,{tagName:"p",allowList:[],content:V,className:Ko(L.listItemDescription,c==null?void 0:c.description,e?L.lineClamp:L.truncate)}):a]})})),Pe&&Pe.length>Bf&&Be($.Content,{className:L.listItemTooltip,disableFocusManager:!0,children:Be(zl,{className:L.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&&Wo("div",{className:L.sources,children:[Be("span",{className:L.sourcesTitle,children:m("sources")}),d.slice(0,g?d.length:u).map(O=>Be("a",{className:L.source,href:O.url,target:"_blank",title:O.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(O),children:O.name},O.url)),!g&&d.length>u&&Be("button",{className:Ko(L.source,L.sourceShowMore),type:"button",onClick:()=>S(!0),children:m("showMore",{amount:d.length-u})})]})]})}import{jsx as Gl,jsxs as Uf}from"react/jsx-runtime";var ql=()=>Uf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Gl("title",{id:"angleLeftTitle",children:"AngleLeft"}),Gl("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 Xl,jsxs as Pr}from"react/jsx-runtime";function Ir({children:t,title:e,id:n,onDismiss:o}){let s=R(He),r=b("CommandPalette",le),{page:i}=$t();return i!==n?null:Pr("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&Pr("div",{className:r.pageNav,children:[Pr("button",{className:r.pageBackButton,type:"button",onClick:o,children:[Xl(ql,{}),s("back")]}),e&&Xl("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Wf}from"react";import{jsx as Jl,jsxs as Kf}from"react/jsx-runtime";var Gt=()=>Kf("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Jl("path",{d:"M0 0h24v24H0z",fill:"none"}),Jl("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 qt,jsxs as Lr}from"react/jsx-runtime";function zf({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=b("CommandPalette",le);return Lr("div",{className:d.search,children:[qt("div",{className:d.searchIcon,children:qt(Gt,{})}),Lr("div",{className:d.searchInputWrapper,children:[qt("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&&qt("div",{className:d.selectWrapper,children:Lr("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&&qt("option",{children:o}),s.map(l=>qt("option",{value:l.value,children:l.label},l.value))]})})]})]})}var Ql=Wf(zf);import Zl from"classnames";import{jsx as jf,jsxs as $f}from"react/jsx-runtime";var Vf=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=N(r,["onClick","shortKeys","children"]);let i=b("CommandPalette",le);return $f("button",x(y({type:"button"},o),{onClick:t,className:Zl(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>jf("span",{className:Zl(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Yl=Vf;import{jsx as td,jsxs as Qf}from"react/jsx-runtime";var Jf="[data-command-palette-item]";function xt({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:u,search:p,updateDeps:f=[]}){let[h,m]=Gf(),g=qf(null),S=()=>{s&&s(n),i(void 0),r(""),a(!1)},T=()=>{var O;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(O=g.current)==null||O.focus();return}if(p.length>0){r("");return}a(!1)},C=()=>{let O=w();O.length!==0&&m(O[0].dataset.itemId)},w=()=>Array.from(document.querySelectorAll(Jf)||[]),P=O=>document.querySelector(`[data-item-id=${O}]`),L=O=>{let U=P(O);U&&m(U.dataset.itemId)},_=O=>{let U=P(O);U&&U.scrollIntoView({behavior:"smooth"})},V=()=>{if(!h)return;let O=w(),U=P(h);if(!U)return;let Se=O.indexOf(U),X=O[Se+1];X!=null&&X.dataset.itemId?L(X.dataset.itemId):C()},Pe=()=>{if(!h)return;let O=w(),U=P(h);if(!U)return;let Se=O.indexOf(U),X=O[Se-1];X!=null&&X.dataset.itemId?L(X.dataset.itemId):L(O[O.length-1].dataset.itemId)},Ie=Xf(O=>{switch(O.key){case"ArrowDown":{O.preventDefault(),V();break}case"ArrowUp":{O.preventDefault(),Pe();break}case"Enter":{if(h){let U=P(h);U==null||U.click()}break}}},[h]);return ed(()=>{C()},[p,o,d,u,...f]),ed(()=>{h&&_(h)},[h]),td(jt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:u,onBack:T,onClose:S,onKeyDown:Ie,children:Qf(Wl,{selected:h,setSelected:m,isOpen:u,onChangeOpen:a,page:o,children:[o===n&&td(Ql,{ref:g,onChange:r,onChangeType:i,placeholder:t,value:p,selectedType:d,types:l,typePlaceholder:e}),c]})})}xt.Page=Ir;xt.List=Tr;xt.Image=Fl;xt.ListItem=Rr;xt.ListItemActions=$l;xt.Button=Yl;var G=xt;import{useEffect as Zf}from"react";function nd(t,e){Zf(()=>{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 id,useRef as ah}from"react";import{useSelector as lh,useDispatch as dh}from"react-redux";import{createAsyncThunk as Yf,createSelector as eh,createSlice as th}from"@reduxjs/toolkit";var od={data:null,fetchState:"idle"},nh=t=>{var e;return(e=t.entities.data)!=null?e:null},zo=eh([nh,Ht,ha],(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}),me=Yf("entities/getEntities",(t,e)=>v(null,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)})),oh=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),sh=th({name:"entities",initialState:od,reducers:{},extraReducers:t=>{t.addCase(me.pending,e=>{e.fetchState="loading"}).addCase(me.rejected,e=>{e.fetchState="error"}).addCase(me.fulfilled,(e,n)=>{e.fetchState="done",e.data=oh(e.data?[...e.data,...n.payload]:n.payload)}).addCase(j,()=>od)}}),sd=sh.reducer;var Ar={};J(Ar,{enUS:()=>rh,nlNL:()=>ih});var rh={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},ih={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var rd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as Mr,jsxs as uh}from"react/jsx-runtime";var ch=({onCopy:t})=>{let e=ah(null),n=b("EntitiesList",rd),o=lh(zo),{setSelected:s}=$t(),r=R(Ar),i=dh();return id(()=>{i(me())},[]),id(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),uh("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&Mr(G.List,{children:o.map((a,d)=>Mr(G.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&Mr("p",{className:n.empty,children:r("noResults")})]})},ad=ch;import{jsx as ld}from"react/jsx-runtime";var Vo=t=>ld("svg",x(y({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:ld("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 On={};J(On,{enUS:()=>ph,nlNL:()=>gh});var ph={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"}]},gh={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 dd}from"react-redux";var jo={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as $o,jsxs as fh}from"react/jsx-runtime";var mh=({suggestion:t,source:e,context:n})=>{let o=R(On),s=dd(xe),r=W(),i=E("enableSuggestionFeedback"),a=`${t.text}`,d=dd(Qe(`/admin/feedback?conversationId=${s}&type=${e}&text=${a}&data=${JSON.stringify({context:n})}`)),l=()=>{r("suggestion feedback",{text:t.text,source:e,context:n})};return!i||!d?null:fh($,{placement:"top-end",children:[$o($.Trigger,{className:jo.trigger,children:$o(Vo,{"data-testid":"feedback-dropdown-trigger"})}),$o($.Content,{className:jo.content,children:$o($.Button,{className:jo.item,as:"a",onClick:l,target:"_blank",href:d,children:o("giveFeedback")})})]})},Go=mh;var Dn={};J(Dn,{enUS:()=>hh,nlNL:()=>yh});var hh={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?"}]},yh={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 Ch}from"react";import{useDispatch as Th,useSelector as wh}from"react-redux";import{createAction as xh,createAsyncThunk as gd,createSlice as bh}from"@reduxjs/toolkit";var vh=["{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}"],Sh=new RegExp(vh.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function cd(t,e){let n=t.split(Sh),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 u=a.charAt(0),p=0;do l=u?e.indexOf(u,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 ud(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var md={suggestions:[],fetchState:"idle"},pd={default:md},fd=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},qo=t=>t.textSuggestions,hd=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},Xo=xh("textSuggestions/refresh"),fe=gd("textSuggestions/recommendations",(t,e)=>v(null,null,function*(){var c,u,p;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=at(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((u=o.profile.data)!=null&&u.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let f=(p=o.profile.data)==null?void 0:p.code;if(!f)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(f)}else l=yield n.getTextSuggestions(d,mn(o),t);if(s&&(l=l.map(f=>y(x(y({},f),{text:pe(f.text,s)}),f.title?{title:pe(f.title,s)}:{}))),t==="default"){let f=i?l.filter(hd(a)):l;e.dispatch(Xe(f.slice(0,r)))}return l})),_n=gd("textSuggestions/autocompletions",(t,e)=>v(null,null,function*(){var c,u;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(!((u=o.profile.data)!=null&&u.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,x(y({},mn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(hd(t))),r&&(l=l.map(p=>x(y({},p),{text:pe(p.text,r)}))),a&&(l=l.map(p=>x(y({},p),{text:p.source!=="trie-with-typos"?cd(p.text,t):p.text}))),l=ud(l,i),e.dispatch(Xe(l)),l})),yd=bh({name:"textSuggestions",initialState:pd,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]||md;return x(y({},e),{[o]:x(y({},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(_n.pending,e=>{e.default.fetchState="loading"}).addCase(_n.rejected,e=>{e.default.fetchState="error"}).addCase(_n.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(j,()=>pd)}}),{setTextSuggestions:GP}=yd.actions,vd=yd.reducer;import{jsx as Jo,jsxs as kh}from"react/jsx-runtime";var Eh=({types:t,commands:e,onClick:n})=>{let o=Th(),s=R(Dn),r=wh(qo);return Ch(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(fe(i))})},[]),kh("div",{children:[e.length>0&&Jo(G.List,{heading:s("commands"),children:e.map((i,a)=>Jo(G.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return Jo(G.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>Jo(G.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)})]})},Sd=Eh;import{jsx as we,jsxs as Dr}from"react/jsx-runtime";var Mh=200,Nh=5,Oh=4,Or=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?Oh:Nh),Dh=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),_h=()=>{var Se,X,st;let t=Ah(),e=oe(),n=R(Dn),[o,s]=Nr(!1),[r,i]=Nr(""),a=bt(ka),d=bt(St),[l,c]=Nr(),u=bt(Q),p=E("showSearch"),f=E("enableSuggestionFeedback"),h=E("showEntitiesCommand"),m=E("showImageSearch"),g=E("searchTriggerKey"),S=bt(Ll),T=bt(Gs),C=bt(Ra),w=bt(Ea),P=((st=(X=(Se=d==null?void 0:d.uiConfig)==null?void 0:Se.search)==null?void 0:X.initialTypes)==null?void 0:st.filter(({isActive:M})=>M))||[],L=W(),_=Lh(()=>{let M=ne=>Or(T.filter(z=>z.type===ne.toUpperCase()),ne,l),K=(S==null?void 0:S.map(ne=>({value:ne.code.toUpperCase(),label:`${ne.name}s`,list:M(ne.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(K.push({value:"PERSONAL",label:n("personalSuggestions"),list:M("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:M("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:M("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),m&&K.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:M("IMAGE"),listOrientation:"horizontal"}),P.length===0)return K;let Le=P.map(ne=>K.find(z=>z.value.toLowerCase()===ne.type)).filter(ne=>!!ne),It=K.filter(ne=>!Le.find(z=>z.value===ne.value));return[...Le,...It]},[S,P,m,l]),V=[{label:n("entitiesClipboard"),onClick:()=>t(Bt("entities")),shouldShow:h&&Dh(n("entitiesClipboard"),r)}].filter(M=>M.shouldShow).filter(()=>!l),Pe=xd(Ph((M,K)=>{t(ut({query:M,type:K,tags:["search-overlay"],size:l?50:20}))},Mh),[l]),Ie=xd((M,K)=>{K.type==="IMAGE"?e.send(Xs,{suggestion:K}):e.send(Oe,{text:M,suggestion:K}),t(ge(!1))},[t]),O=M=>{be(M.text),L("entity copied",{entity:M,type:"copy"}),t(ge(!1))};function U(M){return K=>{o?window.confirm(n("warning"))&&(M(K),s(!1)):M(K)}}return bd(()=>{r?Pe(r,l):t(go())},[r,l]),bd(()=>{u&&t(In())},[u]),nd(g,()=>{t(ge(!0)),L("open search",{via:"ctrl+k"})}),!p||!d?null:Dr(G,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:U(M=>t(ge(M))),onChangeType:M=>c(M),onChangePage:U(M=>t(Bt(M))),selectedType:l,search:r,page:a,isOpen:w,types:_,updateDeps:[T],children:[Dr(G.Page,{id:"search",children:[r.length===0&&we(Sd,{types:P,commands:V,onClick:Ie}),r.length>0&&Dr(Ih,{children:[V.length>0&&we(G.List,{heading:n("commands"),children:V.map((M,K)=>we(G.ListItem,{closeOnSelect:!1,onClick:M.onClick,id:`commands-${K}`,children:M.label},M.label))}),_.map(({value:M,label:K,list:Le,lineClamp:It,listOrientation:ne})=>we(G.List,{heading:K,orientation:ne==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(M),hasMore:!l&&C[M.toLowerCase()]>Or(Le,M,l).length,children:Or(Le,M,l).map(z=>we(G.ListItem,{id:`${M}-${z.id}`,closeOnSelect:!1,lineClamp:It,onClick:()=>Ie(z.text,z),description:M!=="IMAGE"?z.title&&z.text:void 0,tooltip:z.text,extra:f&&we(G.ListItemActions,{children:we(Go,{context:r,source:"search",suggestion:z})}),children:M==="IMAGE"?we(G.Image,{title:z.title||z.text,src:z.image}):z.title||z.text},`${z.id}-${z.text}`))},M))]})]}),we(G.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:U(()=>{t(Bt("search"))}),children:we(ad,{onCopy:O})})]})},Cd=_h;import{jsx as Td,jsxs as Bh}from"react/jsx-runtime";var Hh=()=>{let t=E("showSearch"),e=E("isEmbedded");return Bh(Fh,{children:[t&&Td(Cd,{}),e&&Td(Il,{})]})},wd=Hh;import zh from"classnames";import{useSelector as Vh}from"react-redux";import{jsx as _r}from"react/jsx-runtime";var Ed=({className:t})=>_r("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:_r("g",{children:_r("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
|
+
`,gt.MISSING_INTL_API,i);var w=n.getPluralRules(e,{type:c.pluralType}).select(p-(c.offset||0));C=c.options[w]||c.options.other}if(!C)throw new or(c.value,p,Object.keys(c.options),i);a.push.apply(a,En(C.value,e,n,o,s,p-(c.offset||0)));continue}}return wg(a)}function kg(t,e){return e?ae(ae(ae({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=ae(ae({},t[o]),e[o]||{}),n},{})):t}function Rg(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=kg(t[o],e[o]),n},ae({},t)):t}function sr(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function Pg(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:vo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,yo([void 0],n,!1)))},{cache:sr(t.number),strategy:So.variadic}),getDateTimeFormat:vo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,yo([void 0],n,!1)))},{cache:sr(t.dateTime),strategy:So.variadic}),getPluralRules:vo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,yo([void 0],n,!1)))},{cache:sr(t.pluralRules),strategy:So.variadic})}}var rr=(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 u=c.reduce(function(p,f){return!p.length||f.type!==Y.literal||typeof p[p.length-1]!="string"?p.push(f.value):p[p.length-1]+=f.value,p},[]);return u.length<=1?u[0]||"":u},this.formatToParts=function(l){return En(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=Oa(i,["formatters"]);this.ast=t.__parse(e,ae(ae({},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=Rg(t.formats,o),this.formatters=s&&s.formatters||Pg(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=Ha,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 Ag(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var Mg="dummy",ir=Ig(null);function R(t){var o;let e=Lg(ir);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=Ag(n,s);return i?new rr(i).format(r):(e!==Mg&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as Wa,createAsyncThunk as za,createSlice as Og}from"@reduxjs/toolkit";import{Marked as Ng}from"marked";var wo=(t,e)=>{let n=[],o=new Ng,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var Ka={cues:[],threads:{},pending:[]},Va=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var ja=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Eo=Wa("assistants/callToAction"),kn=za("assistants/evaluateKnowledgeAssistant",(t,e)=>v(null,null,function*(){var l,c,u;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(se(x(y({skipState:!0},t),{input:{},threadId:n})));if(a.error)throw new Error(a.error.message);let d=(l=a.payload.output[0])!=null?l:{response:"",sources:[]};return{threadId:n,question:t.input,evaluationId:a.payload.evaluationId,answer:{answer:(c=pe(d.response,i!=null?i:{}))!=null?c:"",sources:(u=d.sources)!=null?u:[]}}})),yT=Wa("assistants/extractedTextSuggestions");function Dg(t,e){var n,o;return Array.isArray(t.output)?t.output:typeof t.output=="string"?[{code:e,name:e,response:t.output}]:[x(y({code:e,name:e},t.output&&typeof t.output=="object"?t.output:{}),{response:(o=(n=t.output)==null?void 0:n.response)!=null?o:""})]}var se=za("assistants/evaluate",(t,e)=>v(null,null,function*(){var g,S,T,C,w;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},threadId:i}=t,a=e.getState(),{platformVariables:d}=a.info,l=(S=(g=a.conversation.current)==null?void 0:g.externalId)!=null?S:null,c=(C=(T=t.externalConversationId)!=null?T:l)!=null?C:void 0,u;if(s==="in-memory-transcript"){if(!o.conversationQuery)throw new Error("Can't include in-memory-transcript, setConversationQuery is not defined");u=yield o.conversationQuery()}else Array.isArray(s)&&(u=s);if(t.includeMetadata&&a.conversation.current&&((w=t.externalConversationId)!=null?w:l)===l){let{metadata:L}=a.conversation.current;Object.assign(r,{metadata:L})}let p=yield n.evaluateAssistant(t.assistantCode,{input:r,transcript:u,externalConversationId:c,threadId:i});if(p.evaluationStatus!=="success")return e.rejectWithValue(`Assistant ${t.assistantCode} evaluation failed: ${p.evaluationStatus}`);let h=Dg(p,t.assistantCode).map(P=>x(y({},P),{name:pe(P.name,d),response:pe(P.response,d)||""})),m=[];return h.forEach(P=>{if(!P.response)return;let L=wo(P.response,"reply");L.length!==0&&m.push(...L.map(_=>({text:_,type:"text",source:"assistant",assistantCode:P.code,sourceLabel:P.name})))}),m.length>0&&e.dispatch(Ft(m)),x(y({},p),{output:h,externalConversationId:c,currentExternalIdAtRequest:l})}));function $a(t){return t!=null&&t.length?t.map(e=>e.response).filter(Boolean).join(`
|
|
4
|
+
`):""}var Ga=Og({name:"assistants",initialState:Ka,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(se.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&k.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(se.rejected,(e,n)=>{var s;k.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(se.fulfilled,(e,n)=>{let o=e.pending.indexOf(n.meta.arg.assistantCode);if(o!==-1&&e.pending.splice(o,1),n.meta.arg.skipState)return;let{evaluationId:s,output:r,externalConversationId:i,currentExternalIdAtRequest:a}=n.payload;if(i&&a&&i!==a)return;let d=r.map(u=>u.code),l=e.cues.filter(u=>!d.includes(u.code)),c=r.map(u=>y(x(y({},u),{evaluationId:s}),i?{externalConversationId:i}:{}));e.cues=[...l,...c]}).addCase(kn.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=N(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(j,()=>Ka)}}),{removeCueByCode:ko,resetCues:vT,removeThreadById:qa,receiveChunk:Xa,userNotification:Ja}=Ga.actions,Qa=Ga.reducer;import{createSlice as _g}from"@reduxjs/toolkit";import{useSelector as Fg}from"react-redux";var Hg={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showStyleSuggestionList:!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,addToPersonalCollection:!1,inlineSuggestions:!1,autoSelectSuggestion:!1,suggestionsPlacement:"above",floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Za=_g({name:"settings",initialState:Hg,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}}}),{set:Ro}=Za.actions,mt=t=>e=>e.settings[t],E=t=>Fg(mt(t)),Ya=Za.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 dr from"classnames";import{useState as Kg}from"react";import{jsx as el}from"react/jsx-runtime";var ar=t=>el("svg",x(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:el("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 tl}from"react/jsx-runtime";var nl=t=>tl("svg",x(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:tl("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 Je(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 lr={};J(lr,{enUS:()=>Bg,nlNL:()=>Ug});var Bg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Ug={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var ol={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as sl}from"react-redux";var Qe=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 Kt,jsxs as zg}from"react/jsx-runtime";var Wg=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=b("FeedbackThumbs",ol),i=E("enableFeedbackForm"),a=sl(xe),d=sl(Qe(`/admin/feedback?conversationId=${a}&evaluationId=${n}&type=${o}&text=${s}&assistantCode=${t}&assistantOutput=${e}`)),l=R(lr),c=W(),[u,p]=Kg(null),f=g=>{c("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:g})},h=g=>{g.stopPropagation(),Je(g.target,r.fadeup),p("up"),f("up")},m=g=>{g.stopPropagation(),Je(g.target,r.fadedown),p("down"),f("down")};return zg("div",{className:r.thumbs,children:[Kt(A.Button,{title:l("thumbsUp"),onClick:h,icon:Kt(nl,{}),className:dr(r.thumbsUp,u==="up"&&r.selected),disabled:!!u}),i&&d?Kt(A.Button,{as:"a",title:l("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:m,icon:Kt(ar,{}),className:dr(r.thumbsDown,u==="down"&&r.selected),disabled:!!u}):Kt(A.Button,{title:l("thumbsDown"),onClick:m,icon:Kt(ar,{}),className:dr(r.thumbsDown,u==="down"&&r.selected),disabled:!!u})]})},Po=Wg;import sm from"dompurify";import{Fragment as ul,useMemo as rm,useRef as im,useState as am}from"react";import dl from"classnames";import{createRef as em,useCallback as ur,useMemo as tm,useRef as nm,useState as om}from"react";import{useState as Vg,useLayoutEffect as jg}from"react";var $g=["bottom","height","left","right","top","width"],Gg=(t={},e={})=>$g.some(n=>t[n]!==e[n]),_e=new Map,rl,il=()=>{let t=[],e=[];_e.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();Gg(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{_e.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),rl=window.requestAnimationFrame(il)};function qg(t,e){return{observe(){let n=_e.size===0;if(_e.has(t)){let o=_e.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else _e.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&il()},unobserve(){let n=_e.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||_e.delete(t),_e.size||cancelAnimationFrame(rl)}}}}function cr(t){let[e,n]=Vg(null);return jg(()=>{if(!t.current)return;let o=qg(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Jg,useLayoutEffect as Qg,useState as Zg}from"react";import{createPortal as Yg}from"react-dom";import{useEffect as Xg}from"react";function ft(t){Xg(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function ht(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var al={root:"dd-r-dgo"};var ll=({children:t,parentNode:e})=>{let[n,o]=Zg(null),s=Jg(an);return Qg(()=>{let r=document.createElement("div");return ht(r),r.classList.add(al.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?Yg(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 pr}from"react/jsx-runtime";var Io=(t=!1)=>{let[e,n]=om(t),o=ur(()=>n(!0),[]),s=ur(()=>n(!1),[]),r=ur(()=>n(a=>!a),[]),i=nm(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function gr(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 Wt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=em(),position:o="above",align:s="center",children:r,toStyle:i=gr,parentNode:a}=c,d=N(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let u=cr(e),p=cr(n),f=tm(()=>i(u,p,0),[u,p]);return pr(ll,{parentNode:a,children:pr("div",x(y({className:dl(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:f},d),{role:"dialog",children:pr("div",{className:dl(t,Ce.root),children:r})}))})};var cl={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 lm}from"marked";import{jsx as Rn,jsxs as Lo}from"react/jsx-runtime";function dm(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 mr(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 cm(t){return t.replace(/\r\n/g,`
|
|
5
|
+
`)}var um=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=b("Markdown",cl),i=im(null),[a,d]=am(null),l=rm(()=>{let m=lm.parse(cm(t));return sm.sanitize(m.toString()).replaceAll("</code>",`${dm(r.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),c=m=>{var T;let g=m.target,S=!!((T=i.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(g.tagName)){d(null);return}a||S&&g.tagName!=="CODE"||!S&&g!==i.current||(g.addEventListener("mouseleave",()=>d(null),{once:!0}),d(g))},u=()=>{if(!a)return;d(null);let m=a.querySelector("button");m&&(Je(m,r.fadeup),o==null||o(mr(a)))},p=m=>{let g=m.target,S=g instanceof HTMLElement?g:null;if(g instanceof Element?g.closest("a"):null){m.stopPropagation();return}S&&"copyIcon"in S.dataset&&(Je(S,r.fadeup),o==null||o(mr(S.parentElement)))},f=()=>{!a||!s||(d(null),s(mr(a)))},h=m=>{if(m===null)return;let g=m.getBoundingClientRect();g.left<0?m.style.transform=`translateX(${-g.left+2}px)`:g.right>window.innerWidth&&(m.style.transform=`translateX(${window.innerWidth-g.right-2}px)`)};return Lo(ul,{children:[a&&(o||s)&&Lo(Wt,{triggerRef:{current:a},className:r.popover,parentNode:a,children:[Lo("div",{className:r.options,ref:h,children:[o&&(a==null?void 0:a.tagName)==="CODE"&&Rn("button",{type:"button",className:r.option,onClick:u,children:n}),s&&Lo(ul,{children:[Rn("div",{className:r.divider}),Rn("button",{type:"button",className:r.option,onClick:f,children:e})]})]}),Rn("div",{className:r.arrow})]}),Rn("div",{ref:i,"data-testid":"widget-markdown-content",className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:c,onClick:p})]})},yt=um;import{useRef as mm}from"react";var pl={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as gm}from"react/jsx-runtime";var pm=({width:t})=>{let e=b("LoadingProgressBar",pl);return gm("div",{className:e.loadingBar,style:{width:t}})},Ao=pm;import{jsx as zt,jsxs as fm}from"react/jsx-runtime";var Mo=({title:t})=>{let e=mm(null);return Jn(e),zt(A,{ref:e,children:zt(D,{children:fm(D.Content,{children:[zt(D.Title,{children:t}),zt(Ao,{width:"60%"}),zt(Ao,{width:"90%"}),zt(Ao,{width:"50%"})]})})})};var Vt={};J(Vt,{enUS:()=>hm,nlNL:()=>ym});var hm={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"}]},ym={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 No={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*as Te from"react";import{useFloating as vm,autoUpdate as Sm,useClick as xm,useDismiss as bm,useRole as Cm,useInteractions as Tm,useMergeRefs as ml,FloatingPortal as wm,FloatingFocusManager as Em,useHover as km,offset as Rm,flip as Pm,shift as Im,safePolygon as Lm}from"@floating-ui/react";var Oo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as Ze,jsxs as gl}from"react/jsx-runtime";function Am({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Te.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=vm({placement:e,open:d,onOpenChange:l,whileElementsMounted:Sm,middleware:[Rm(5),Pm({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Im({padding:10})]}),u=c.context,p=xm(u,{enabled:s==null}),f=bm(u),h=Cm(u),m=km(u,{enabled:o!=null?o:!1,handleClose:Lm()}),g=Tm([p,f,h,m]);return Te.useMemo(()=>x(y(y({open:d,setOpen:l},g),c),{modal:n}),[d,l,g,c,n])}var fl=Te.createContext(null),fr=()=>{let t=Te.useContext(fl);if(t==null)throw new Error("Popover components must be wrapped in <Popover />");return t},vt=o=>{var s=o,{children:t,modal:e=!1}=s,n=N(s,["children","modal"]);let r=Am(y({modal:e},n));return Ze(fl.Provider,{value:r,children:t})};function Mm(o){var s=o,{as:t,children:e}=s,n=N(s,["as","children"]);let r=fr(),i=t||"button",a=e.ref,d=ml([r.refs.setReference,a]);return Ze(i,x(y({ref:d,type:"button"},r.getReferenceProps(n)),{children:e}))}var Nm=Te.forwardRef(function(s,o){var r=s,{style:e}=r,n=N(r,["style"]);let l=fr(),{context:i}=l,a=N(l,["context"]),d=ml([a.refs.setFloating,o]);return i.open?Ze(wm,{children:Ze(Em,{context:i,modal:a.modal,disabled:n.disableFocusManager,children:Ze("div",x(y({ref:d,style:y(x(y({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function Om(s){var r=s,{as:t,children:e,onClick:n}=r,o=N(r,["as","children","onClick"]);let{setOpen:i}=fr();return Ze(t||"button",x(y({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function hl({trigger:t,children:e,placement:n="top"}){return gl(vt,{tooltip:!0,placement:n,children:[gl(vt.Content,{className:Oo.tooltip,children:[e,Ze("div",{className:Oo.arrow})]}),Ze(vt.Trigger,{className:Oo.tooltipTrigger,children:t})]})}vt.Trigger=Mm;vt.Content=Nm;vt.Button=Om;var $=vt;import{useRef as Fm}from"react";var yl={error:"dd-CoAuB"};var hr={};J(hr,{enUS:()=>Dm,nlNL:()=>_m});var Dm={errorPrefix:[{type:0,value:"Error:"}]},_m={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as vl,jsxs as Hm}from"react/jsx-runtime";var Sl=({message:t})=>{let e=Fm(null),n=b("WidgetCardError",yl),o=R(hr);return Jn(e),vl(A,{ref:e,children:vl(D,{children:Hm(D.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as H,jsxs as Fe}from"react/jsx-runtime";var Vm=3,jm=({sources:t,onClick:e})=>{let n=R(Vt),o=b("WidgetKnowledgeAssistant",No),[s,r]=St(!1),i=s?t:t.slice(0,Vm);return i.length===0?null:Fe("ul",{className:o.sources,children:[i.map(a=>H("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Fe($,{tooltip:!0,placement:"top-start",children:[H($.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($.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})})]})},$m=({title:t,description:e})=>H(A,{"data-testid":"knowledge-assist-empty-state",children:H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:t}),H(yt,{content:e})]})})}),Gm=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=R(Vt),a=yr(Do);return Fe(A,{"data-testid":"knowledge-assist-answer",ref:t,children:[H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:e.question}),H(yt,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),H(jm,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Fe(A.ButtonsContainer,{children:[H("div",{}),H(Po,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer,feedbackText:e.answer.answer})]})]})},Do=Bm(null),_o=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,children:o})=>{let[s,r]=St(null),[i,a]=St(!1),[d,l]=St(null),[c,u]=St(!!n),[p,f]=St(null),h=Wm(),m=W(),g=ho(C=>{if(!t)throw new Error("No knowledge assistant was defined");return l(null),e({assistantCode:t,input:C,threadId:s,onNewThreadId(w){r(w)}})},{onSuccess(C){var w;m("Assistant response displayed",{evaluationId:C.evaluationId,assistantCode:t,assistantOutput:C.answer.answer,input:C.question,sources:(w=C.answer.sources)!=null?w:[]}),u(!1)},onError(C){var w;l((w=C.message)!=null?w:"Unknown error")}}),S=C=>v(null,null,function*(){a(!0),f(C),yield g.call(C),a(!1),f(null)}),T={isEnabled:!!t,assistantCode:t,isSubmitting:i,threadId:s,pendingInput:p,errorMessage:d,onSubmit:S,onReset(){s&&h(qa(s)),l(null),r(null),t&&m("Assistant thread reset",{threadId:s!=null?s:void 0,assistantCode:t})}};return Km(()=>{n&&T.isEnabled&&S(n)},[n]),H(Do.Provider,{value:T,children:o})},Fo=()=>{let t=R(Vt),e=b("WidgetKnowledgeAssistant",No),n=yr(Do),o=xl(null),[s,r]=St(""),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?Fe("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},Ho=({title:t,emptyState:e})=>{var h,m;let n=R(Vt),o=W(),s=b("WidgetKnowledgeAssistant",No),r=xl(null),i=yr(Do),a=(m=zm(ja((h=i.threadId)!=null?h:-1)))!=null?m:[],d=E("hasKeyboardInput"),l=oe(),c=(g,S)=>{be(g),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:g,copiedText:g,evaluationId:S.evaluationId})},u=(g,S)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:S.evaluationId,assistantCode:i.assistantCode,source:g})},p=g=>{g.preventDefault(),i.onReset()},f=(g,S)=>{l.send(Oe,{text:g,suggestion:{source:"assistant",sourceText:g}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:S.evaluationId,assistantOutput:S.answer.answer,usedText:g})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Fe(Um,{children:[H(Ae,{type:"knowledge",title:t,"data-testid":"knowledge",children:Fe(Z,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&H($m,y({},e)),a.map((g,S)=>H(Gm,{innerRef:S===a.length-1?r:void 0,item:g,hasKeyboardInput:d,onCopy:T=>c(T,g),onUse:T=>f(T,g),onSourceClick:T=>u(T,g)},`${g.question}_${g.answer}_${S}`)),i.pendingInput&&H(Mo,{title:i.pendingInput}),i.errorMessage&&H(Sl,{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{createRoot as st}from"react-dom/client";import{Fragment as Fh}from"react";import{useSelector as Pl}from"react-redux";import Sr from"classnames";import{useCallback as kl,useEffect as nf,useMemo as of,useState as xr}from"react";import{useDispatch as sf,useSelector as rf}from"react-redux";import{useEffect as qm,useRef as Xm}from"react";var Cl={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as Tl}from"react/jsx-runtime";var Jm=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=Xm(null),l=b("Dialog",Cl),c=p=>{if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s();return}r&&r(p)},u=p=>{p.target===d.current&&t&&o()};return qm(()=>{var p,f;!d.current||!t||!e||(f=(p=d.current)==null?void 0:p.querySelector("input, textarea"))==null||f.focus()},[t,e,d]),t?Tl("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:u,children:Tl("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},jt=Jm;import Qm from"classnames";var wl={root:"dd-ranhW"};import{jsx as Ym}from"react/jsx-runtime";var Zm=o=>{var s=o,{className:t,value:e}=s,n=N(s,["className","value"]);let r=b("TextInput",wl);return Ym("input",y({className:Qm(t,r.root),type:"text",value:e},n))},Pn=Zm;var vr={};J(vr,{enUS:()=>ef,nlNL:()=>tf});var ef={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"}]},tf={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 El={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 re,jsxs as Bo}from"react/jsx-runtime";var af=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},lf=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=R(vr),i=b("LoginTokenDialog",El),a=rf(Vi),d=sf(),l=E("productName"),[c,u]=xr(t||""),[p,f]=xr(0),[h,m]=xr(""),g=kl(w=>v(null,null,function*(){w.preventDefault(),d(Gi({email:c})),f(1)}),[n,c]),S=()=>{m(""),f(0)},T=kl(w=>v(null,null,function*(){w.preventDefault();let P=af(w.target.elements.token.value);if(!P){m(r("verifyCodeError",{login:C}));return}d(cn({token:P}))}),[n]),C=of(()=>w=>re("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:S,children:w},"back-button"),[]);return nf(()=>{a==="error"&&m(r("verifyCodeError",{login:C})),a==="done"&&o()},[a]),re(jt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:Bo("div",{className:i.root,children:[re("h1",{className:i.title,children:r("promptTitle",{productName:l})}),p===0&&Bo("form",{onSubmit:g,children:[re("h2",{className:i.subtitle,children:r("requestCodeTitle")}),re("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),re(Pn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:w=>u(w.target.value)}),re("div",{className:i.actions,children:re("button",{type:"submit",className:Sr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),p===1&&Bo("form",{onSubmit:T,children:[re("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),re("p",{className:i.text,children:r("verifyCodeBody")}),re(Pn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),h&&re("div",{className:i.errorMessage,children:h}),Bo("div",{className:i.actions,children:[re("button",{type:"button",className:Sr(i.button),onClick:S,children:r("back")}),re("button",{type:"submit",className:Sr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Rl=lf;import{jsx as cf}from"react/jsx-runtime";var df=()=>{let t=Pl(ji),e=Pl(Ht),n=E("adminUrl"),o=oe(),s=()=>o.send(Ut,!1),r=()=>{o.send(Ut,!1),o.send(fn)};return cf(Rl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},Il=df;import Ph from"lodash.debounce";import{Fragment as Ih,useCallback as xd,useEffect as bd,useMemo as Lh,useState as Nr}from"react";import{useDispatch as Ah,useSelector as bt}from"react-redux";import{createAsyncThunk as uf,createSlice as pf}from"@reduxjs/toolkit";var gf={data:null,fetchState:"idle"},Ll=t=>t.contentTypes.data,In=uf("contentTypes/getContentTypes",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),mf=pf({name:"contentTypes",initialState:gf,reducers:{},extraReducers:t=>{t.addCase(In.pending,e=>{e.fetchState="loading"}).addCase(In.rejected,e=>{e.fetchState="error"}).addCase(In.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Al=mf.reducer;import{createAsyncThunk as ff,createSelector as hf,createSlice as yf}from"@reduxjs/toolkit";var vf={data:null,fetchState:"idle"},Sf=[],Ye=t=>t.profile.data,xf=t=>t.profile.data?t.profile.data.uiConfig.widget.types:Sf,An=hf([xf],t=>t.filter(e=>e.isActive)),Ml=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||[]},Nl=t=>e=>An(e).find(n=>n.type===t),Ol=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Dl=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistantNew)!=null?n:null},Ln=ff("profile/getProfile",(t,e)=>v(null,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)})),bf=yf({name:"profile",initialState:vf,reducers:{},extraReducers:t=>{t.addCase(Ln.pending,e=>{e.fetchState="loading"}).addCase(Ln.rejected,e=>{e.fetchState="error"}).addCase(Ln.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),_l=bf.reducer;import{useEffect as ed,useState as Gf,useRef as qf,useCallback as Xf}from"react";import{useState as wf}from"react";import br from"classnames";var le={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 He={};J(He,{enUS:()=>Cf,nlNL:()=>Tf});var Cf={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"}]},Tf={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 Mn,jsxs as kf}from"react/jsx-runtime";var Ef=({src:t,title:e})=>{let n=b("CommandPalette",le),[o,s]=wf("loading"),r=R(He);return kf("div",{className:n.image,children:[Mn("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:br(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&Mn("span",{className:br(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&Mn("span",{className:br(n.imageSrc,n.imageSrcStatus),children:Mn(Gn,{})}),e&&Mn("span",{className:n.imageTitle,children:e})]})},Fl=Ef;import Rf from"react";import Pf from"classnames";import{jsx as Cr,jsxs as Hl}from"react/jsx-runtime";function Tr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=R(He),i=b("CommandPalette",le);return Rf.Children.count(t)===0?null:Hl("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Hl("div",{className:i.listHeader,children:[e&&Cr("h4",{className:i.listHeading,children:e}),o&&s&&Cr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Cr("div",{className:Pf(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import Ko from"classnames";import{Interweave as zl}from"interweave";import{useEffect as Ff,useMemo as Vl,useState as jl}from"react";var If=/[.*+?^${}()|[\]\\]/g,Lf=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Af(t){return t.replace(If,"\\$&")}function Mf(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Nf(t){return t.search(Lf)}function Bl(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Af(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Ul(t){return t.replace(Qn,'<mark data-type="placeholder">$1</mark>')}function Nn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Of(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 wr(t,e,n={}){if(e){let o=Mf(e.toLowerCase(),t.toLowerCase()),s=Nn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Nf(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(Ki).length>3||e.length>30?Of(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Nn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Df=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Uo(t){return Df.test(t)}function Er(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import kr from"react";import{jsx as _f}from"react/jsx-runtime";var Kl=kr.createContext(void 0);function $t(){let t=kr.useContext(Kl);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Wl=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=kr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return _f(Kl.Provider,{value:i,children:t})};import{jsx as Be,jsxs as Wo}from"react/jsx-runtime";var Hf=3,Bf=90,$l=({children:t})=>{let e=b("CommandPalette",le);return Be("div",{className:e.listItemActions,children:t})};function Rr(f){var h=f,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:u=Hf}=h,p=N(h,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var Ie;let m=R(He),[g,S]=jl(!1),{selected:T,onChangeOpen:C}=$t(),[w,P]=jl(!1),L=b("CommandPalette",le);function _(O){s(O),t&&C(!1)}let V=Vl(()=>typeof a!="string"?a:Uo(a)?Er(a).trim():a,[a]),Pe=Vl(()=>typeof n!="string"?n:Uo(n)?Er(n).trim():n,[n]);return Ff(()=>{P(T===l)},[T]),Wo("div",{className:Ko(L.listItem,l===T&&L.listItemSelected),children:[Wo($,{placement:"right-start",tooltip:!0,onOpenChange:P,open:w,children:[Be($.Trigger,x(y({className:L.listItemAction,"aria-disabled":(Ie=p.disabled)!=null?Ie:!1,onClick:_,"data-command-palette-item":!0,"data-item-id":l},p),{children:Wo("div",{className:L.listItemContent,children:[typeof o=="string"?Be("p",{className:Ko(L.listItemText,L.truncate,c==null?void 0:c.title),children:o}):o,V&&typeof V=="string"?Be(zl,{tagName:"p",allowList:[],content:V,className:Ko(L.listItemDescription,c==null?void 0:c.description,e?L.lineClamp:L.truncate)}):a]})})),Pe&&Pe.length>Bf&&Be($.Content,{className:L.listItemTooltip,disableFocusManager:!0,children:Be(zl,{className:L.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&&Wo("div",{className:L.sources,children:[Be("span",{className:L.sourcesTitle,children:m("sources")}),d.slice(0,g?d.length:u).map(O=>Be("a",{className:L.source,href:O.url,target:"_blank",title:O.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(O),children:O.name},O.url)),!g&&d.length>u&&Be("button",{className:Ko(L.source,L.sourceShowMore),type:"button",onClick:()=>S(!0),children:m("showMore",{amount:d.length-u})})]})]})}import{jsx as Gl,jsxs as Uf}from"react/jsx-runtime";var ql=()=>Uf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Gl("title",{id:"angleLeftTitle",children:"AngleLeft"}),Gl("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 Xl,jsxs as Pr}from"react/jsx-runtime";function Ir({children:t,title:e,id:n,onDismiss:o}){let s=R(He),r=b("CommandPalette",le),{page:i}=$t();return i!==n?null:Pr("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&Pr("div",{className:r.pageNav,children:[Pr("button",{className:r.pageBackButton,type:"button",onClick:o,children:[Xl(ql,{}),s("back")]}),e&&Xl("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Wf}from"react";import{jsx as Jl,jsxs as Kf}from"react/jsx-runtime";var Gt=()=>Kf("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Jl("path",{d:"M0 0h24v24H0z",fill:"none"}),Jl("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 qt,jsxs as Lr}from"react/jsx-runtime";function zf({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=b("CommandPalette",le);return Lr("div",{className:d.search,children:[qt("div",{className:d.searchIcon,children:qt(Gt,{})}),Lr("div",{className:d.searchInputWrapper,children:[qt("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&&qt("div",{className:d.selectWrapper,children:Lr("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&&qt("option",{children:o}),s.map(l=>qt("option",{value:l.value,children:l.label},l.value))]})})]})]})}var Ql=Wf(zf);import Zl from"classnames";import{jsx as jf,jsxs as $f}from"react/jsx-runtime";var Vf=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=N(r,["onClick","shortKeys","children"]);let i=b("CommandPalette",le);return $f("button",x(y({type:"button"},o),{onClick:t,className:Zl(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>jf("span",{className:Zl(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Yl=Vf;import{jsx as td,jsxs as Qf}from"react/jsx-runtime";var Jf="[data-command-palette-item]";function xt({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:u,search:p,updateDeps:f=[]}){let[h,m]=Gf(),g=qf(null),S=()=>{s&&s(n),i(void 0),r(""),a(!1)},T=()=>{var O;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(O=g.current)==null||O.focus();return}if(p.length>0){r("");return}a(!1)},C=()=>{let O=w();O.length!==0&&m(O[0].dataset.itemId)},w=()=>Array.from(document.querySelectorAll(Jf)||[]),P=O=>document.querySelector(`[data-item-id=${O}]`),L=O=>{let U=P(O);U&&m(U.dataset.itemId)},_=O=>{let U=P(O);U&&U.scrollIntoView({behavior:"smooth"})},V=()=>{if(!h)return;let O=w(),U=P(h);if(!U)return;let Se=O.indexOf(U),X=O[Se+1];X!=null&&X.dataset.itemId?L(X.dataset.itemId):C()},Pe=()=>{if(!h)return;let O=w(),U=P(h);if(!U)return;let Se=O.indexOf(U),X=O[Se-1];X!=null&&X.dataset.itemId?L(X.dataset.itemId):L(O[O.length-1].dataset.itemId)},Ie=Xf(O=>{switch(O.key){case"ArrowDown":{O.preventDefault(),V();break}case"ArrowUp":{O.preventDefault(),Pe();break}case"Enter":{if(h){let U=P(h);U==null||U.click()}break}}},[h]);return ed(()=>{C()},[p,o,d,u,...f]),ed(()=>{h&&_(h)},[h]),td(jt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:u,onBack:T,onClose:S,onKeyDown:Ie,children:Qf(Wl,{selected:h,setSelected:m,isOpen:u,onChangeOpen:a,page:o,children:[o===n&&td(Ql,{ref:g,onChange:r,onChangeType:i,placeholder:t,value:p,selectedType:d,types:l,typePlaceholder:e}),c]})})}xt.Page=Ir;xt.List=Tr;xt.Image=Fl;xt.ListItem=Rr;xt.ListItemActions=$l;xt.Button=Yl;var G=xt;import{useEffect as Zf}from"react";function nd(t,e){Zf(()=>{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 id,useRef as ah}from"react";import{useSelector as lh,useDispatch as dh}from"react-redux";import{createAsyncThunk as Yf,createSelector as eh,createSlice as th}from"@reduxjs/toolkit";var od={data:null,fetchState:"idle"},nh=t=>{var e;return(e=t.entities.data)!=null?e:null},zo=eh([nh,Ht,ha],(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}),me=Yf("entities/getEntities",(t,e)=>v(null,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)})),oh=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),sh=th({name:"entities",initialState:od,reducers:{},extraReducers:t=>{t.addCase(me.pending,e=>{e.fetchState="loading"}).addCase(me.rejected,e=>{e.fetchState="error"}).addCase(me.fulfilled,(e,n)=>{e.fetchState="done",e.data=oh(e.data?[...e.data,...n.payload]:n.payload)}).addCase(j,()=>od)}}),sd=sh.reducer;var Ar={};J(Ar,{enUS:()=>rh,nlNL:()=>ih});var rh={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},ih={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var rd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as Mr,jsxs as uh}from"react/jsx-runtime";var ch=({onCopy:t})=>{let e=ah(null),n=b("EntitiesList",rd),o=lh(zo),{setSelected:s}=$t(),r=R(Ar),i=dh();return id(()=>{i(me())},[]),id(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),uh("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&Mr(G.List,{children:o.map((a,d)=>Mr(G.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&Mr("p",{className:n.empty,children:r("noResults")})]})},ad=ch;import{jsx as ld}from"react/jsx-runtime";var Vo=t=>ld("svg",x(y({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:ld("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 On={};J(On,{enUS:()=>ph,nlNL:()=>gh});var ph={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"}]},gh={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 dd}from"react-redux";var jo={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as $o,jsxs as fh}from"react/jsx-runtime";var mh=({suggestion:t,source:e,context:n})=>{let o=R(On),s=dd(xe),r=W(),i=E("enableSuggestionFeedback"),a=`${t.text}`,d=dd(Qe(`/admin/feedback?conversationId=${s}&type=${e}&text=${a}&data=${JSON.stringify({context:n})}`)),l=()=>{r("suggestion feedback",{text:t.text,source:e,context:n})};return!i||!d?null:fh($,{placement:"top-end",children:[$o($.Trigger,{className:jo.trigger,children:$o(Vo,{"data-testid":"feedback-dropdown-trigger"})}),$o($.Content,{className:jo.content,children:$o($.Button,{className:jo.item,as:"a",onClick:l,target:"_blank",href:d,children:o("giveFeedback")})})]})},Go=mh;var Dn={};J(Dn,{enUS:()=>hh,nlNL:()=>yh});var hh={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?"}]},yh={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 Ch}from"react";import{useDispatch as Th,useSelector as wh}from"react-redux";import{createAction as xh,createAsyncThunk as gd,createSlice as bh}from"@reduxjs/toolkit";var vh=["{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}"],Sh=new RegExp(vh.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function cd(t,e){let n=t.split(Sh),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 u=a.charAt(0),p=0;do l=u?e.indexOf(u,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 ud(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var md={suggestions:[],fetchState:"idle"},pd={default:md},fd=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},qo=t=>t.textSuggestions,hd=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},Xo=xh("textSuggestions/refresh"),fe=gd("textSuggestions/recommendations",(t,e)=>v(null,null,function*(){var c,u,p;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=lt(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((u=o.profile.data)!=null&&u.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let f=(p=o.profile.data)==null?void 0:p.code;if(!f)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(f)}else l=yield n.getTextSuggestions(d,mn(o),t);if(s&&(l=l.map(f=>y(x(y({},f),{text:pe(f.text,s)}),f.title?{title:pe(f.title,s)}:{}))),t==="default"){let f=i?l.filter(hd(a)):l;e.dispatch(Xe(f.slice(0,r)))}return l})),_n=gd("textSuggestions/autocompletions",(t,e)=>v(null,null,function*(){var c,u;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(!((u=o.profile.data)!=null&&u.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,x(y({},mn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(hd(t))),r&&(l=l.map(p=>x(y({},p),{text:pe(p.text,r)}))),a&&(l=l.map(p=>x(y({},p),{text:p.source!=="trie-with-typos"?cd(p.text,t):p.text}))),l=ud(l,i),e.dispatch(Xe(l)),l})),yd=bh({name:"textSuggestions",initialState:pd,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]||md;return x(y({},e),{[o]:x(y({},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(_n.pending,e=>{e.default.fetchState="loading"}).addCase(_n.rejected,e=>{e.default.fetchState="error"}).addCase(_n.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(j,()=>pd)}}),{setTextSuggestions:GP}=yd.actions,vd=yd.reducer;import{jsx as Jo,jsxs as kh}from"react/jsx-runtime";var Eh=({types:t,commands:e,onClick:n})=>{let o=Th(),s=R(Dn),r=wh(qo);return Ch(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(fe(i))})},[]),kh("div",{children:[e.length>0&&Jo(G.List,{heading:s("commands"),children:e.map((i,a)=>Jo(G.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return Jo(G.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>Jo(G.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)})]})},Sd=Eh;import{jsx as we,jsxs as Dr}from"react/jsx-runtime";var Mh=200,Nh=5,Oh=4,Or=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?Oh:Nh),Dh=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),_h=()=>{var Se,X,rt;let t=Ah(),e=oe(),n=R(Dn),[o,s]=Nr(!1),[r,i]=Nr(""),a=bt(ka),d=bt(Ye),[l,c]=Nr(),u=bt(Q),p=E("showSearch"),f=E("enableSuggestionFeedback"),h=E("showEntitiesCommand"),m=E("showImageSearch"),g=E("searchTriggerKey"),S=bt(Ll),T=bt(Gs),C=bt(Ra),w=bt(Ea),P=((rt=(X=(Se=d==null?void 0:d.uiConfig)==null?void 0:Se.search)==null?void 0:X.initialTypes)==null?void 0:rt.filter(({isActive:M})=>M))||[],L=W(),_=Lh(()=>{let M=ne=>Or(T.filter(z=>z.type===ne.toUpperCase()),ne,l),K=(S==null?void 0:S.map(ne=>({value:ne.code.toUpperCase(),label:`${ne.name}s`,list:M(ne.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(K.push({value:"PERSONAL",label:n("personalSuggestions"),list:M("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:M("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:M("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),m&&K.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:M("IMAGE"),listOrientation:"horizontal"}),P.length===0)return K;let Le=P.map(ne=>K.find(z=>z.value.toLowerCase()===ne.type)).filter(ne=>!!ne),It=K.filter(ne=>!Le.find(z=>z.value===ne.value));return[...Le,...It]},[S,P,m,l]),V=[{label:n("entitiesClipboard"),onClick:()=>t(Bt("entities")),shouldShow:h&&Dh(n("entitiesClipboard"),r)}].filter(M=>M.shouldShow).filter(()=>!l),Pe=xd(Ph((M,K)=>{t(pt({query:M,type:K,tags:["search-overlay"],size:l?50:20}))},Mh),[l]),Ie=xd((M,K)=>{K.type==="IMAGE"?e.send(Xs,{suggestion:K}):e.send(Oe,{text:M,suggestion:K}),t(ge(!1))},[t]),O=M=>{be(M.text),L("entity copied",{entity:M,type:"copy"}),t(ge(!1))};function U(M){return K=>{o?window.confirm(n("warning"))&&(M(K),s(!1)):M(K)}}return bd(()=>{r?Pe(r,l):t(go())},[r,l]),bd(()=>{u&&t(In())},[u]),nd(g,()=>{t(ge(!0)),L("open search",{via:"ctrl+k"})}),!p||!d?null:Dr(G,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:U(M=>t(ge(M))),onChangeType:M=>c(M),onChangePage:U(M=>t(Bt(M))),selectedType:l,search:r,page:a,isOpen:w,types:_,updateDeps:[T],children:[Dr(G.Page,{id:"search",children:[r.length===0&&we(Sd,{types:P,commands:V,onClick:Ie}),r.length>0&&Dr(Ih,{children:[V.length>0&&we(G.List,{heading:n("commands"),children:V.map((M,K)=>we(G.ListItem,{closeOnSelect:!1,onClick:M.onClick,id:`commands-${K}`,children:M.label},M.label))}),_.map(({value:M,label:K,list:Le,lineClamp:It,listOrientation:ne})=>we(G.List,{heading:K,orientation:ne==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(M),hasMore:!l&&C[M.toLowerCase()]>Or(Le,M,l).length,children:Or(Le,M,l).map(z=>we(G.ListItem,{id:`${M}-${z.id}`,closeOnSelect:!1,lineClamp:It,onClick:()=>Ie(z.text,z),description:M!=="IMAGE"?z.title&&z.text:void 0,tooltip:z.text,extra:f&&we(G.ListItemActions,{children:we(Go,{context:r,source:"search",suggestion:z})}),children:M==="IMAGE"?we(G.Image,{title:z.title||z.text,src:z.image}):z.title||z.text},`${z.id}-${z.text}`))},M))]})]}),we(G.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:U(()=>{t(Bt("search"))}),children:we(ad,{onCopy:O})})]})},Cd=_h;import{jsx as Td,jsxs as Bh}from"react/jsx-runtime";var Hh=()=>{let t=E("showSearch"),e=E("isEmbedded");return Bh(Fh,{children:[t&&Td(Cd,{}),e&&Td(Il,{})]})},wd=Hh;import zh from"classnames";import{useSelector as Vh}from"react-redux";import{jsx as _r}from"react/jsx-runtime";var Ed=({className:t})=>_r("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:_r("g",{children:_r("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
|
|
6
6
|
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
|
|
7
7
|
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
|
|
8
8
|
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
|
|
9
|
-
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 kd}from"react/jsx-runtime";var Uh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Rd=({className:t,color:e})=>kd("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:kd("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:Uh[e||"pink"]})});var Pd={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var Fr={};J(Fr,{enUS:()=>Kh,nlNL:()=>Wh});var Kh={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Wh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as jh}from"react-redux";import{jsx as Hr,jsxs as Id}from"react/jsx-runtime";var Ld=({onLogIn:t})=>{let e=R(Fr),n=E("floatingMenu"),o=E("productName"),s=jh(),r=Vh(Q),i=b("FloatingMenu",Pd);if(r===null||n===!1)return null;let a=()=>{r===!0?s(ge(!0)):t()};return Id("button",{type:"button",className:zh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Hr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),Id("div",{className:i.icon,children:[Hr(Rd,{className:i.logo,color:"pink"}),r===!1&&Hr(Ed,{className:i.lock})]})]})};import{useEffect as fy,useRef as hy}from"react";import{useDispatch as yy,useSelector as Tt}from"react-redux";function Ee(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.end<t.input.suggestionTextStart||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 $h}from"@reduxjs/toolkit";var Gh={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},Qo=({ui:t})=>t.overlayCollapsed,Ad=$h({name:"ui",initialState:Gh,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:Fn,setInputFocus:Zo,setOverlayCollapsed:Ye,setOpenOverlayWhenTyping:Md,setOverlayCollapsedUserOverwrite:Nd}=Ad.actions,Od=Ad.reducer;var Dd={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as Yo}from"react/jsx-runtime";var qh=({match:t,selected:e,styles:n})=>Yo(A,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:Yo("span",{className:n.styleSuggestion,children:t.suggestion})}),Xh=({matches:t,selectedIndex:e})=>{let n=b("StyleSuggestionList",Dd);return Yo(Z,{children:t.map((o,s)=>Yo(qh,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},es=Xh;import{useMemo as cy}from"react";import{Interweave as Ud}from"interweave";import{useEffect as ty,useMemo as ny,useRef as oy,useState as sy}from"react";import{useDispatch as ry,useSelector as Kd}from"react-redux";import{useEffect as Jh}from"react";function _d(t,e,n){Jh(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Fd={root:"dd-1MBCO",actions:"dd--x4cy",closeIconContainer:"dd-1z5NR",closeIcon:"dd-8qMF-",badge:"dd-4Fpkz",formattedText:"dd-EzvTB",assistantContainer:"dd-j6o8F",formattedTextTruncated:"dd-fv169",assistantBadge:"dd-VD57E"};import{jsx as Hd,jsxs as Qh}from"react/jsx-runtime";var Bd=({title:t})=>Qh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Hd("title",{id:"closeTitle",children:t}),Hd("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 Br={};J(Br,{enUS:()=>Zh,nlNL:()=>Yh});var Zh={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Yh={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as Ue,jsxs as Wd}from"react/jsx-runtime";var iy=["search","personal-collection-search","search-autocomplete"];function ay(t,e,n,o={}){var r;let s="";return iy.includes(e)?s=Bl(wr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=wr(t,n,o),o.placeholders===!0&&(s=Ul(s)),s}var ly=()=>{},dy=({selected:t,suggestion:e})=>{let n=R(Br),o=E("inlineSuggestions"),s=Kd(at),[r,i]=sy(!1),a=E("enableSuggestionFeedback"),d=Kd(g=>g.input.text),l=ry(),c=b("TextSuggestion",Fd),u=oy(null),p=e.source==="assistant",f=a&&!p;ty(()=>{let g=setTimeout(()=>{l(ra({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(g)}},[e]),_d(u,"click",()=>{l(ie({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let h=()=>{l(dt({source:e.source,text:e.text,assistantCode:e.assistantCode}))},m=ny(()=>ay(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:Wd("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[Ue(A,{ref:u,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:ly,children:e.source==="assistant"?Wd("div",{className:c.assistantContainer,children:[Ue(Ud,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),Ue("span",{className:c.assistantBadge,children:n("assistant")})]}):Ue(Ud,{containerTagName:"div",tagName:"span",className:c.formattedText,content:m})}),f&&r&&Ue("div",{className:c.actions,children:Ue(Go,{source:"overlay",context:d,suggestion:e})}),p&&r&&Ue("div",{className:c.closeIconContainer,children:Ue("button",{type:"button",className:c.closeIcon,onClick:h,title:n("close"),children:Ue(Bd,{title:n("close")})})})]})},zd=dy;import{jsx as py}from"react/jsx-runtime";var uy=({suggestions:t,selectedIndex:e,reverse:n})=>cy(()=>{let s=t.map((r,i)=>py(zd,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ts=uy;var Vd={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as gy,createSlice as my}from"@reduxjs/toolkit";var ns={list:{keywordMatches:[]},fetchState:"idle"},os=t=>t.styleSuggestions.list,Ct=gy("styleSuggestions/getAll",(n,o)=>v(null,[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 ns.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),jd=my({name:"styleSuggestions",initialState:ns,reducers:{commitStyleSuggestion(t,e){let{keyword:n,suggestion:o}=e.payload;t.list.keywordMatches=t.list.keywordMatches.filter(s=>s.keyword.toLowerCase()!==n.toLowerCase()||s.suggestion!==o)}},extraReducers:t=>{t.addCase(Ct.pending,e=>{e.fetchState="loading"}).addCase(Ct.rejected,e=>{e.fetchState="error"}).addCase(Ct.fulfilled,(e,n)=>{e.fetchState="done",qe(e.list,n.payload)||(e.list=n.payload)}).addCase(ct,e=>{e.list=ns.list}).addCase(j,()=>ns)}}),{commitStyleSuggestion:$d}=jd.actions,Gd=jd.reducer;var ss=t=>{let e=new Set;return t.filter(({keyword:n,suggestion:o})=>{let s=JSON.stringify([n.toLowerCase(),o]);return e.has(s)?!1:(e.add(s),!0)})};import{jsx as rs,jsxs as Sy}from"react/jsx-runtime";var vy=()=>{var g;let t=hy(null),e=b("InlineSuggestionsOverlay",Vd),n=Tt(Ee),o=yy(),s=Tt(Q),r=Tt(Dt),i=Tt(Qo),a=E("showTextSuggestions"),d=Tt(lt),l=Tt(pn),c=E("showStyleSuggestions"),u=E("showStyleSuggestionList"),p=Tt(os),f=c&&u?ss((g=p.keywordMatches)!=null?g:[]):[],h=f.length>0,m=a&&d.length>0;return mt(()=>{setTimeout(()=>{o(Ye({collapse:!0,skipWhenInputFocus:!0}))})}),fy(()=>{let S=t.current;if(!S||!S.parentElement)return;S.parentElement.style.left="0px";let T=S.getBoundingClientRect();S.parentElement.style.left=`${Math.min(window.innerWidth-4-T.right,0)}px`}),i||s!==!0||r===!1||!n&&!h||!m&&!h?null:rs("div",{className:e.root,"data-variant":"inline",children:Sy("div",{ref:t,className:e.paper,children:[h&&rs(es,{matches:f,selectedIndex:-1}),m&&rs(Z,{children:rs(ts,{suggestions:d,selectedIndex:l})})]})})},qd=vy;import Cy,{useState as Kr,useEffect as Ty}from"react";var Xd={root:"dd-7zvcP",dialogContent:"dd-4C0lK",continueButton:"dd-YUPQW",buttonContinueWrapper:"dd-IKpYs",nicknameInput:"dd-rxhGp",titleWrapper:"dd-nw3nD",title:"dd-5iof5",closeButtonWrapper:"dd-UUAzA",closeButton:"dd-7rjP5",buttonsWrapper:"dd-5e9Xb",errorMessage:"dd--5VgX",errorLink:"dd-u461n"};import{useSelector as wy}from"react-redux";var Ur={};J(Ur,{enUS:()=>xy,nlNL:()=>by});var xy={title:[{type:0,value:"Enter your nickname"}],close:[{type:0,value:"Close"}],nicknameDialogTitle:[{type:0,value:"Please enter the name you'd like customers to see during chat conversations. This nickname will be used across your Deepdesk environment."}],nicknameDialogInputPlaceholder:[{type:0,value:"Enter your nickname"}],nicknameDialogContinueButton:[{type:0,value:"Continue"}],nicknameDialogError:[{type:0,value:"Nickname cannot be empty or spaces only"}],nicknameDialogEmojiError:[{type:0,value:"You cannot use emojis in this field."}],nicknameDialogSaveError:[{type:0,value:"We couldn't save your details just now. Please try again, or update it at "},{type:1,value:"account"},{type:0,value:".deepdesk.com/admin/user-settings"}],nicknameDialogSaveErrorWithoutLink:[{type:0,value:"We couldn\u2019t save your details just now. Please try again later, or update them in My Deepdesk \u2192 Settings."}]},by={title:[{type:0,value:"Voer je bijnaam in"}],close:[{type:0,value:"Sluiten"}],nicknameDialogTitle:[{type:0,value:"Voer de naam in die je wilt dat klanten zien tijdens chatgesprekken. Deze bijnaam wordt gebruikt in je Deepdesk-omgeving."}],nicknameDialogInputPlaceholder:[{type:0,value:"Voer je bijnaam in"}],nicknameDialogContinueButton:[{type:0,value:"Doorgaan"}],nicknameDialogError:[{type:0,value:"Bijnaam mag niet leeg of alleen spaties zijn"}],nicknameDialogEmojiError:[{type:0,value:"Je kunt geen emoji's gebruiken in dit veld."}],nicknameDialogSaveError:[{type:0,value:"We konden je gegevens nu niet opslaan. Probeer het opnieuw of werk het bij op "},{type:1,value:"account"},{type:0,value:".deepdesk.com/admin/user-settings"}],nicknameDialogSaveErrorWithoutLink:[{type:0,value:"We konden je gegevens nu niet opslaan. Probeer het opnieuw later, of werk ze bij in My Deepdesk \u2192 Instellingen."}]};import{Fragment as Ey,jsx as he,jsxs as is}from"react/jsx-runtime";var Jd=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=Kr(""),[i,a]=Kr(!1),[d,l]=Kr(!1),c=b("Nickname",Xd),u=Cy.useRef(null),p=wy(S=>S.info.showNicknameDialog),f=R(Ur),h=E("adminUrl");Ty(()=>{o&&a(!0)},[o]);let m=()=>{if(!u.current)return;s.trim()?u.current.setCustomValidity(""):u.current.setCustomValidity(f("nicknameDialogError")),u.current.reportValidity()},g=S=>{S.preventDefault();let T=s.trim(),C=S.currentTarget.querySelector("#nickname-input");if(!T){C.setCustomValidity(f("nicknameDialogError")),C.reportValidity();return}C.setCustomValidity(""),e(T)};return is(jt,{isOpen:p,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[he("div",{className:c.titleWrapper,children:he("h1",{className:c.title,children:f("title")})}),is("form",{className:c.dialogContent,onSubmit:g,children:[he("p",{children:f("nicknameDialogTitle")}),i&&o&&he("div",{className:c.errorMessage,children:h?(()=>{let S=f("nicknameDialogSaveError",{account:h}),T=`${h}.deepdesk.com/admin/user-settings`,C=S.indexOf(T);if(C!==-1){let w=S.substring(0,C),P=S.substring(C+T.length);return is(Ey,{children:[w,he("a",{href:T,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:T}),P]})}return S})():f("nicknameDialogSaveErrorWithoutLink")}),he("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:f("nicknameDialogInputPlaceholder"),value:s,onChange:S=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(S.target.value)),r(S.target.value)},onBlur:m,ref:u}),d&&he("div",{className:c.errorMessage,role:"alert",children:f("nicknameDialogEmojiError")}),is("div",{className:c.buttonsWrapper,children:[o?he("div",{className:c.closeButtonWrapper,children:he("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:f("close")})}):null,he("div",{className:c.buttonContinueWrapper,children:he("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:f("nicknameDialogContinueButton")})})]})]})]})};import{Provider as ky}from"react-redux";import{jsx as as}from"react/jsx-runtime";var Ry=({children:t})=>{let n=E("locale").replace("-","");return as(ir.Provider,{value:n,children:t})},Py=({store:t,customStyles:e={},children:n})=>as(ky,{store:t,children:as(Ry,{children:as(an.Provider,{value:e,children:n})})}),Ke=Py;import $r from"classnames";import{useEffect as Uy,useRef as Ky,useState as Wy}from"react";import{useDispatch as zy,useSelector as We}from"react-redux";import{useState as Iy}from"react";function Qd(t,e){let[n,o]=Iy(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return k.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){k.error(i)}}]}var Zd=()=>/Mac/i.test(navigator.platform);import My from"classnames";import{Fragment as Ny,useCallback as zr,useMemo as ec}from"react";var Wr={};J(Wr,{enUS:()=>Ly,nlNL:()=>Ay});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"}]}]},Ay={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 Yd={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as ls,jsxs as tc}from"react/jsx-runtime";var Vr=(t,e,n)=>o=>ls("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Oy=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=R(Wr),i=oe(),a=b("Login",Yd),d=E("productName"),l=zr(g=>{g.preventDefault(),o&&o(Number.parseInt(g.target.value,10))},[]),c=zr(g=>{g.preventDefault(),i.send(Ut,!0)},[e]),u=ec(()=>g=>ls("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:g},"login"),[e]),p=zr(g=>ls("button",{type:"button",className:a.anchorButton,onClick:c,children:g},"prompt"),[c]),{min:f,hour:h,day:m}=ec(()=>({min:Vr(a,600,l),hour:Vr(a,3600,l),day:Vr(a,3600*12,l)}),[]);return tc("div",{className:My(t,a.root),children:[r("loginPlease",{login:n?p:u,productName:d}),o&&tc(Ny,{children:[ls("br",{}),r("snooze",{min:f,hour:h,day:m})]})]})},ds=Oy;import{useDispatch as Dy}from"react-redux";var nc={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as oc,jsxs as Fy}from"react/jsx-runtime";var _y=({title:t})=>{let e=b("SearchTrigger",nc),n=Dy(),o=W();return Fy("button",{type:"button",className:e.root,onClick:()=>{n(ge(!0)),o("open search",{via:"autocomplete-overlay"})},children:[oc(Gt,{}),oc("span",{className:e.text,children:t})]})},sc=_y;var jr={};J(jr,{enUS:()=>Hy,nlNL:()=>By});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"}],dismiss:[{type:0,value:"Dismiss"}],dismissError:[{type:0,value:"Dismiss error"}]},By={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"}],dismiss:[{type:0,value:"Sluiten"}],dismissError:[{type:0,value:"Foutmelding sluiten"}]};var rc={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",loginError:"dd-KCXeb",loginErrorMessage:"dd-Bv-BG",loginErrorDismiss:"dd-iSCjU"};import{jsx as q,jsxs as et}from"react/jsx-runtime";var Vy=({onLogIn:t})=>{var K;let e=b("SuggestionsOverlay",rc),n=R(jr),o=We(Ee),s=We(sa),r=zy(),i=Ky(null),a=E("searchTriggerKey"),d=E("productName"),l=We(Qo),c=We(Q),u=We($i),p=We(Dt),[f,h]=Wy(null),m=E("showSearch"),g=E("showTextSuggestions"),S=E("adminUrl"),T=E("isEmbedded"),C=E("suggestionsPlacement"),[w,P]=Qd("dd-snooze-until-ms",0),L=l||w>Date.now(),_=We(lt),V=We(pn),Pe=E("showStyleSuggestions"),Ie=E("showStyleSuggestionList"),O=We(os),U=Pe&&Ie?ss((K=O.keywordMatches)!=null?K:[]):[],Se=U.length>0,X=_.filter(Le=>Le.source!=="gpt").length,st=()=>{L&&P(0),r(Nd(!L))},M=Le=>{let It=Date.now()+Le*1e3;P(It),k.info(`Snooze until: ${new Date(It)}`),r(Ye({collapse:!0}))};return Uy(()=>{X===0&&h(null)},[_,X]),mt(()=>{r(Ye({collapse:!0,skipWhenInputFocus:!0}))}),c===null||p===!1?null:c===!1?et("div",{ref:i,className:$r(e.root,{[e.isCollapsed]:L}),children:[!L&&et("div",{className:e.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:e.triggersRight,children:q(At,{className:e.toggleButton,title:n("collapse"),onClick:st,isCollapsed:!1})})]}),q("div",{className:e.toggleButtonWrapper,children:q(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:st,isCollapsed:!0})}),et("div",{className:e.collapsible,children:[u&&et("div",{className:e.loginError,children:[q("span",{className:e.loginErrorMessage,children:u}),q("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(to()),"aria-label":n("dismissError"),children:n("dismiss")})]}),q(ds,{loginUrl:S,isEmbedded:T,onLogIn:t,onSnooze:M})]})]}):!s||!o&&!Se?null:et("div",{ref:i,className:$r(e.root,{[e.isCollapsed]:L}),children:[!L&&et("div",{className:e.triggers,children:[q("div",{style:{flex:1},children:m&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>h(n(Zd()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>h(null),children:q(sc,{title:n("search")})})}),et("div",{className:e.triggersRight,onFocus:()=>{},children:[q("div",{className:$r(!f&&e.hintsHidden,e.hints),children:f}),q(At,{className:e.toggleButton,title:n("collapse"),onClick:st,isCollapsed:!1})]})]}),q("div",{className:e.toggleButtonWrapper,children:q(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:st,isCollapsed:!0})}),(Se||X>0&&g)&&et("div",{className:e.collapsible,onFocus:()=>{},children:[Se&&q(es,{matches:U,selectedIndex:-1}),X>0&&g&&q(Z,{children:q(ts,{suggestions:_,selectedIndex:V,reverse:C==="above"})})]})]})},ic=Vy;import Zr from"classnames";import{Interweave as Lv}from"interweave";import{useCallback as Av,useEffect as Mv,useMemo as Ec,useRef as Nv}from"react";import{connect as Ov}from"react-redux";import{useEffect as jy,useRef as $y,useState as Gy}from"react";function cs(t){return t.contentEditable==="true"}function qy(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 ac(t){let{selectionStart:e,selectionEnd:n}=cs(t)?qy(t):t;return[e,n]}function lc(t){let[,e]=Gy(),n=$y(null);return n.current=ac(t),jy(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=ac(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 dc(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(Qn);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 Xy}from"react";var Jy=["div","span","mark","strong","b","i","u","em"];function Gr(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(Jy.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),Xy(o,{children:Gr(i,e,n+1)})]}return[...t,...e]}function wt(t){return t.tagName.toLowerCase()==="textarea"}var cc={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 ov from"classnames";import{Matcher as sv}from"interweave";import{useEffect as rv,useMemo as iv}from"react";import{useEffect as Qy,useRef as Zy,useState as Yy}from"react";function uc(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function us(t){let e=Zy(null),[n,o]=Yy(!1);return Qy(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=uc((u,p)=>{let f=e.current;if(!f)return;let h=u/r,m=p/r,g=f.getBoundingClientRect(),S=h>g.x&&h<g.x+g.width&&m>g.y&&m<g.y+g.height;S&&!s?(s=!0,o(!0)):!S&&s&&(s=!1,o(!1))},({clientX:u,clientY:p})=>[u,p]),[d,l]=uc(()=>{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 ps(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function gs(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function pc(t){return t!=null}import ev from"classnames";import{forwardRef as tv,useRef as nv}from"react";var ze={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 gc}from"react/jsx-runtime";var ms=tv((s,o)=>{var r=s,{className:t,children:e}=r,n=N(r,["className","children"]);let i=nv(null),a=b("TabCompletion",ze);return gc("div",x(y({ref:gs([i,o]),className:ev(t,a.popoverContentContainer)},n),{children:gc("div",{className:a.popoverContent,children:e})}))});import{jsx as Hn,jsxs as dv}from"react/jsx-runtime";var av=t=>e=>{let n=gr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},lv=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=b("TabCompletion",ze),i=Io(),a=iv(()=>av(t.getBoundingClientRect()),[t]),[d,l]=us(t);return rv(()=>{l?i.open():i.close()},[l]),dv("span",{children:[Hn("mark",{ref:gs([d,i.triggerRef]),className:ov(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Hn(Wt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:Hn(ms,{style:n,children:Hn("div",{className:r.hintText,children:s})})})]})},fs=class extends sv{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(y({},s),{keywordRegex:new RegExp(`\\b${ps(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(pc);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 Hn(lv,{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 cv}from"interweave";import uv from"classnames";import{jsx as mc}from"react/jsx-runtime";var pv=({inputElement:t,children:e})=>{let n=b("TabCompletion",ze),[o,s]=us(t);return mc("mark",{ref:o,className:uv(n.matchPlaceholder,{[n.hover]:s}),children:e})},hs=class extends cv{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 mc(pv,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Qr from"classnames";import{Matcher as Cv}from"interweave";import{createRef as Tv,forwardRef as wv,useCallback as Ev,useEffect as Cc,useRef as Tc,useState as wc}from"react";import{useDispatch as kv,useSelector as Rv}from"react-redux";import{jsx as fc}from"react/jsx-runtime";var hc=()=>fc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:fc("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 gv,useEffect as vc,useMemo as mv,useState as Sc}from"react";import{useDispatch as fv,useSelector as xc}from"react-redux";import hv from"lodash.debounce";var yc={root:"dd-ky-Bv",content:"dd-kV5e1"};function ys(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 qr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Et,jsxs as Xr}from"react/jsx-runtime";var yv=3,vv=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Sv=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=yv})=>{let r=b("LinkSearch",yc),[i,a]=Sc(""),d=fv(),l=xc(fd("url")),c=xc(Pa("URL")),u=mv(()=>c.map(vv),[c]),[p,f]=Sc(u.length-1),h=E("fallbackImage"),m=C=>{let w=C.target;a(w.value)},g=(C,w)=>{C.stopPropagation(),C.preventDefault(),window.open(w,"_blank")},S=C=>{var L;let w=p-1<0?u.length-1:p-1,P=p+1===u.length?0:p+1;C.code==="Escape"&&(a(""),e()),C.code==="ArrowUp"&&f(w),C.code==="ArrowDown"&&f(P),C.code==="Enter"&&t(((L=u[p])==null?void 0:L.text)||i)},T=gv(hv(C=>{d(ut({query:C,type:"URL",tags:["link-search"]}))},300),[]);return vc(()=>{i&&T(i)},[i]),vc(()=>()=>{d(go())},[]),Xr("div",{className:r.root,children:[Et(Z,{withDivider:!0,children:(i?u:l).slice(0,s).map((C,w)=>Et(A,{selected:p===w,onClick:()=>t(C.text),"data-testid":"linksearch-suggestion",children:Xr(D,{children:[Et(D.Image,{src:ys(C,"small",h||void 0),title:C.title||C.text}),Xr(D.Content,{className:r.content,cropText:!0,children:[Et(D.Title,{children:C.title||qr(C.text)}),C.title&&qr(C.text)]}),Et(A.Actions,{children:Et(A.ActionButton,{label:o,onClick:P=>g(P,C.text)})})]})},C.text))}),Et(Pn,{value:i,onChange:m,autoFocus:!0,placeholder:n,onKeyUp:S})]})},bc=Sv;var Jr={};J(Jr,{enUS:()=>xv,nlNL:()=>bv});var xv={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}],addToPersonalCollection:[{type:0,value:"Add to Personal Collection"}]},bv={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}],addToPersonalCollection:[{type:0,value:"Toevoegen aan Personal Collection"}]};import{jsx as ye,jsxs as vs}from"react/jsx-runtime";var Pv=wv((t,e)=>{let n=b("TabCompletion",ze);return ye("mark",{ref:e,className:Qr(n.matchSelection)},"selection-start")}),Iv=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=R(Jr),i=b("TabCompletion",ze),a=E("addToPersonalCollection"),d=Rv(Qe("/admin/personal-collection/new")),l=Tc(null),c=Tc(null),[u,p]=wc(null),f=kv(),h=Io(document.activeElement===o),[m]=wc(()=>document.createRange());h.triggerRef.current=m,Cc(()=>()=>m.detach(),[]),Cc(()=>{let S=t.current,T=l.current;!S||!T||(m.setStart(S,0),m.setEnd(T,0))},[t.current,l.current]),mt(()=>{h.close()});let g=Ev(S=>{let T=m.toString(),C=/^http(s?):\/\//.test(S)?S:`https://${S}`,w=`[${T}](${C})`;f(ie({text:w,suggestion:{text:w,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return vs("span",{children:[ye("mark",{ref:l,className:Qr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":h.opened?"true":"false",children:s}),h.opened&&ye(Wt,{className:i.popoverRoot,triggerRef:h.triggerRef,boundaryRef:e,position:"above",align:"start",children:vs(ms,{style:n,ref:c,children:[vs("div",{className:Qr(i.selectionOptions,{[i.selectionOptionsIsHidden]:u!==null}),children:[vs("button",{type:"button",tabIndex:u===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ye(hc,{}),ye("span",{children:"\xA0"}),ye("span",{children:r("insertLink")})]}),a&&d&&ye("button",{type:"button",tabIndex:u===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let S=m.toString(),T=`${d}?text=${encodeURIComponent(S)}`;window.open(T,"_blank")},children:ye("span",{children:r("addToPersonalCollection")})})]}),u==="insertLink"&&ye(bc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:g,onDismiss:()=>{p(null),h.close()}})]})})]},"selection-end")},Ss=class extends Cv{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?y({isStart:a},i):null}replaceWith(n,o){return o.isStart?ye(Pv,{ref:this.startRef}):ye(Iv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as Dv}from"react-redux";import{jsx as Xt,jsxs as Hv}from"react/jsx-runtime";var _v=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=b("TabCompletion",cc),c=E("insertLink"),u=E("addToPersonalCollection"),p=E("showMidSentenceSuggestions"),f=E("inlineSuggestions"),h=lc(a),m=Nv(null),g=Dv(Q);Mv(()=>{wt(a)&&h&&dc(a,h)},[h]);let S=Av(w=>{if(!s||!n)return w;let P=[Xt("span",{className:l.resetIndent,children:"\u200B"},"u200B"),Xt("span",{"data-testid":"tab-completion",className:Zr(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&P.push(Xt("span",{className:Zr(l.hint,l.resetIndent),children:Xt(Ds,{keyCode:"tab"},"tabHint")},"tabHint")),Gr(w,P)},[s,n,o]),T=Ec(()=>{let w=[];return(c||u)&&w.push(new Ss("selection")),w.push(new hs("placeholders")),r&&w.push(new fs("keywords")),w},[f,c,u,r]),C=Ec(()=>{let w=window.getComputedStyle(a);return{"--dd-color":w.color,"--dd-font-size":w.fontSize,"--dd-font-family":w.fontFamily,"--dd-font-variant":w.fontVariant}},[]);return!t||!g?null:Hv("div",{ref:w=>{w!=null&&w.parentElement&&(m.current=w==null?void 0:w.parentElement)},className:l.root,style:C,children:[Xt(Lv,{tagName:"span",containerTagName:"div",className:Zr(l.container,l.agentText),disableLineBreaks:wt(a),content:e||"\u200B",onAfterParse:S,matchers:T,selection:h,keywordMatches:i,inputElement:a,inputStyle:C,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!p}),Xt("br",{})]},"tab-completion")},Fv=t=>{var S,T,C;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=(S=e.html)!=null?S:Nn(e.text),c=e.text.slice(e.suggestionTextStart,e.selection.end),u=a.indexOf(c)===0?a.slice(c.length):"",{showTabHint:p}=n,{isSupported:f}=r,{showTabCompletion:h,visible:m,showStyleSuggestions:g}=o;return{showTabHint:p,showStyleSuggestions:g,showTabCompletion:h&&Ee(t),content:l,tabText:u,source:d,keywordMatches:(C=(T=s.list)==null?void 0:T.keywordMatches)!=null?C:[],enabled:m&&f!==!1}},kc=Ov(Fv)(_v);import{Fragment as wS,useEffect as ii,useState as ES}from"react";import{useDispatch as su,useSelector as ee}from"react-redux";import{createAsyncThunk as Rc,createSlice as Bv}from"@reduxjs/toolkit";var Uv={token:null,interval:null},Yr=Rc("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),ei=Rc("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Yr()),setInterval(()=>o(Yr()),n)}),Pc=Bv({name:"passwordlessToken",initialState:Uv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Yr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(ei.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:Ic}=Pc.actions,Lc=Pc.reducer;import{createSelector as Kv}from"@reduxjs/toolkit";function Wv(t){return"buttonText"in t&&"eventName"in t}function Ac(t){if(t)return Wv(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function zv(t){return t==null?void 0:t.map(e=>Ac(e))}function Vv(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var Mc=Kv([Va,no],(t,e)=>(e?t.filter(s=>!s.externalConversationId||s.externalConversationId===e):t).map(s=>{let r=Ac(s.callToAction),i=zv(s.callToActions);return x(y(y(y({text:s.response,title:s.name},r?{callToAction:r}:{}),i!=null&&i.length?{callToActions:i}:{}),s.message!==void 0?{message:s.message}:{}),{editable:s.editable,isLoading:s.isLoading,evaluationId:s.evaluationId,rule:{id:Vv(s.code),label:s.code,name:s.name,description:s.name}})}));import{useEffect as jv,useState as $v}from"react";import Dc from"classnames";import{jsx as Nc}from"react/jsx-runtime";var Jt=()=>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 Qt,jsxs as _c}from"react/jsx-runtime";var Gv=({entities:t})=>{let e=b("EntitiesWidgetList",Oc),[n,o]=$v(void 0),s=W(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),be(a.text),s("entity copied",{entity:a,type:"copy"}))};return jv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:Qt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>_c("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Qt("span",{className:e.entityText,children:a.text}),_c("span",{className:e.iconWrapper,children:[Qt("span",{className:Dc(e.icon),children:Qt(Jt,{})}),Qt("span",{className:Dc(e.icon,n===d&&e.iconClicked),children:Qt(Jt,{})})]})]},a.text))})},Fc=Gv;import{jsx as Hc}from"react/jsx-runtime";var Bc=()=>Hc("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Hc("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 Yv}from"react";import{useSelector as eS}from"react-redux";var Uc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Kc={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as Xv}from"react/jsx-runtime";var qv=({size:t=12})=>{let e=b("LoadingSpinner",Kc);return Xv("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Wc=qv;import{jsx as zc}from"react/jsx-runtime";var Vc=()=>zc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:zc("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 jc,jsxs as Jv}from"react/jsx-runtime";var $c=t=>Jv("svg",x(y({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[jc("title",{id:"checkTitle",children:"Check"}),jc("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 ti={};J(ti,{enUS:()=>Qv,nlNL:()=>Zv});var Qv={error:[{type:0,value:"Something went wrong"}]},Zv={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as Ve,jsxs as Gc}from"react/jsx-runtime";var tS=3e3,nS=({assistantOptions:t})=>{let e=b("OnDemandAssistants",Uc),n=R(ti),o=Yv(),s=ho(se),r=eS(Ml),i=W(),a=r.filter(c=>c.isPinned),d=r.filter(c=>!c.isPinned),l=c=>v(null,null,function*(){clearTimeout(o.current),i("trigger on demand assistant",{assistantCode:c}),yield s.call(x(y({},t),{assistantCode:c})),o.current=setTimeout(()=>s.reset(),tS)});return r.length===0?null:Gc("div",{className:e.root,children:[a.map(({assistant:c,assistantName:u,displayName:p})=>Ve("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>l(c),children:p||u},c)),d.length>0&&Gc($,{placement:"top-end",children:[Ve($.Trigger,{className:e.trigger,disabled:s.state==="loading",children:Ve(Vo,{"data-testid":"trigger"})}),Ve($.Content,{className:e.nav,"data-testid":"popover",children:d.map(({assistant:c,assistantName:u,displayName:p})=>Ve($.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>l(c),children:p||u},c))})]}),s.state==="loading"&&Ve(Wc,{}),s.state==="done"&&Ve($c,{"data-testid":"trigger-done"}),s.state==="error"&&Ve(hl,{trigger:Ve(Vc,{}),children:n("error")})]})},qc=nS;import{useDispatch as uS}from"react-redux";var Bn={};J(Bn,{enUS:()=>oS,nlNL:()=>sS});var oS={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"}]},sS={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 Xc,useRef as rS,useState as iS}from"react";var ni={title:"dd-YBHrC",fadeup:"dd-cRM0K",fadedown:"dd-7D4Pq",selected:"dd-bueui",actions:"dd-9Iqn9",ctaMessage:"dd-ge8nB",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 ve,jsxs as xs}from"react/jsx-runtime";var aS=500,lS=100,dS=({content:t,onChange:e,onCopy:n})=>{let o=rS(null),s=b("WidgetCue",ni);return Xc(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,lS),aS);r.style.setProperty("height",`${i}px`)},[t]),ve("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},cS=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s})=>{var m;let r=b("WidgetCue",ni),i=R(Bn),a=W(),d=E("hasKeyboardInput"),[l,c]=iS(t.text),u=g=>{let S=g?x(y({},t),{callToAction:g}):t;e&&e(l,S),n(t)},p=(g,S)=>{o&&o(g,t),S&&Je(S,r.fadeup)},f=g=>{s&&s(g,t)},h=g=>{g.preventDefault(),g.stopPropagation(),n(t)};return Xc(()=>{a("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),xs(A,{"data-testid":"cue",children:[ve(D,{children:xs(D.Content,{children:[t.title&&ve(D.Title,{className:r.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?i(t.rule.label):t.title}),t.message&&ve("p",{className:r.ctaMessage,children:t.message}),t.editable?ve(dS,{content:l,onCopy:()=>{let g=document.getSelection();g&&p(g.toString())},onChange:g=>{var S;return c((S=g.target.value)!=null?S:"")}}):ve(ht,{content:t.text,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:p,onUse:d?f:void 0})]})}),xs(A.ButtonsContainer,{children:[xs("div",{className:r.actions,children:[ve(A.Button,{onClick:g=>{var S;return p((S=wo(l,"reply")[0])!=null?S:l,g.target)},variant:"primary",children:i("copyCue")}),t.callToAction&&ve(A.Button,{onClick:()=>u(),variant:"primary",children:t.callToAction.label}),(m=t.callToActions)==null?void 0:m.map((g,S)=>ve(A.Button,{onClick:()=>u(g),variant:"primary",children:g.label},`${g.event}-${g.label}-${S}`)),ve(A.Button,{onClick:h,variant:"secondary",children:i("removeCue")})]}),ve(Po,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackText:t.text,feedbackType:"assistant"})]})]})},Jc=cS;import{Fragment as gS,jsx as oi}from"react/jsx-runtime";var pS=({cues:t})=>{let e=uS(),n=oe(),o=R(Bn),s=W(),r=l=>{e(ko({code:l.rule.label})),s("Assistant response closed",{evaluationId:l.evaluationId,assistantCode:l.rule.label,assistantOutput:l.text})},i=(l,c)=>{be(l),s("Assistant response copied",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,copiedText:l})},a=(l,c)=>{var u;c.callToAction&&(e(Eo(c)),s("Assistant call to action",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,eventName:c.callToAction.event,value:(u=c.callToAction.value)!=null?u:l}))},d=(l,c)=>{var u;n.send(Oe,{text:l,suggestion:{source:"assistant",assistantCode:(u=c.rule)==null?void 0:u.label,sourceText:l}}),s("Assistant response used",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,usedText:l})};return oi(gS,{children:t.map(l=>l.isLoading?oi(Mo,{title:l.rule.label.startsWith("__")?o(l.rule.label):l.title},l.rule.id):oi(Jc,{cue:l,onCallToAction:a,onRemove:r,onCopy:i,onUse:d},l.evaluationId))})},Qc=pS;import{Fragment as mS,useEffect as fS}from"react";var Zc={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 je,jsxs as si}from"react/jsx-runtime";function hS(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Yc=({data:t,schema:e})=>{let n=b("WidgetCustomData",Zc),o=s=>{be(s)};return fS(()=>{k.info("Custom data",t,e)},[t]),je("dl",{className:n.root,children:e.map(s=>{let r=hS(t,s.path);return si(mS,{children:[je("dt",{className:n.label,children:s.label}),je("dd",{className:n.value,children:s.type==="boolean"&&r?je("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?je("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?si("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r.join(", ")}),je(Jt,{})]}):typeof r=="string"||typeof r=="number"?si("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r}),je(Jt,{})]}):"-"})]},s.label)})})};import{useCallback as vS}from"react";var yS=/(https?:\/\/[^\s]+)/,eu=t=>t.split(" ").find(e=>yS.test(e));import{jsx as Zt,jsxs as bs}from"react/jsx-runtime";var SS=({suggestion:t,lines:e,onUse:n})=>{var u;let o=t.text||t.url||t.message,s=eu(o),r=R(On),i=E("showImages"),a=E("fallbackImage"),d=E("hasKeyboardInput"),l=p=>{p.preventDefault(),p.stopPropagation(),d&&n(o)},c=vS(p=>{window.open(s,"_blank"),p.stopPropagation(),p.preventDefault()},[s]);return bs(A,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[bs(D,{children:[i&&t.image&&Zt(D.Image,{src:ys(t,"small",a||void 0),title:t.title}),bs(D.Content,{children:[t.title&&Zt(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((u=t.searchKeywords)==null?void 0:u.length)>0&&Zt(A.Labels,{labels:t.searchKeywords}),Zt(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),bs(A.Actions,{children:[s&&Zt(A.ActionButton,{onClick:c,label:r("visitUrl")}),d&&Zt(A.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},tu=SS;import{Fragment as bS,jsx as nu}from"react/jsx-runtime";var xS=({lines:t,suggestions:e})=>{let n=oe(),o=(s,r)=>{n.send(Oe,{text:s,suggestion:x(y({},r),{source:r.source,sourceText:r.text})})};return nu(bS,{children:e.map(s=>nu(tu,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},ou=xS;var Un={};J(Un,{enUS:()=>CS,nlNL:()=>TS});var CS={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"}]},TS={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 Yt={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 Kn}from"react/jsx-runtime";var ru=(t,e)=>{let n=ee(Q);ii(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},kS=({onLogIn:t})=>{let e=b("Widget",Yt),n=E("isEmbedded"),o=E("adminUrl");return I("div",{className:e.loginText,children:I("div",{children:I(ds,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},ri=({text:t})=>{let e=b("Widget",Yt);return I("div",{className:e.stateText,children:I("div",{children:I("p",{children:t})})},"notification")},RS=()=>{let t=R(Un),e=su(),n=b("Widget",Yt),o=E("showSearch"),s=E("isEmbedded"),r=ee(Qe("/admin/")),i=oe(),a=E("productName"),d=W();return ru(()=>{if(s)return e(ei()),()=>{e(Ic())}},[e,s]),!o&&!r?null:Kn("div",{className:n.shortcutList,children:[o&&I(A.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:I(Gt,{}),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(Bc,{}),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})})]})},PS=({title:t,content:e})=>{let n=R(Un),[o,s]=ES(!0);return o?I(Ae,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:I(Z,{withDivider:!0,children:Kn(A,{children:[I(D,{children:I(D.Content,{children:I(ht,{content:e})})}),I(A.ButtonsContainer,{children:I(A.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},IS=()=>{let t=su(),e=ee(An),n=ee(Ol),o=ee(Mc),s=ee(ya),r=ee(zo),i=ee(qo),a=ee(St),d=ee(xe);return ii(()=>{s&&!n&&k.warn("Custom data provided, but no schema.")},[s,n]),ru(()=>{e.forEach(({type:l})=>{l==="entities"?t(me()):Zn.includes(l)||t(fe(l))})},[t,d,a]),ii(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&k.warn("Received cues, but cues are not configured in widget.")},[e,o]),I(wS,{children:e.map(({type:l,title:c,amount:u,lines:p,schema:f,property:h})=>{var m,g;switch(l){case"entities":return r&&r.length>0&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Fc,{entities:r})},l);case"cues":return o&&o.length>0&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Z,{withDivider:!0,children:I(Qc,{cues:o})})},l);case"custom-data-banner":return s&&h&&s[h]&&I(PS,{title:c,content:String(s[h])},l);case"custom-data":return s&&f&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Z,{withDivider:!0,children:I(Yc,{data:s,schema:f})})},l);default:return((g=(m=i[l])==null?void 0:m.suggestions)==null?void 0:g.length)>0&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Z,{withDivider:!0,children:I(ou,{lines:p,contentType:l,suggestions:i[l].suggestions.slice(0,u)||[]})})},l)}})})},ai=({children:t})=>{let e=b("Widget",Yt);return I("div",{className:e.footer,children:t})},li=({children:t})=>{let e=b("Widget",Yt);return I("div",{className:e.root,"data-testid":"widget",children:t})},LS=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"}})=>{let o=R(Un),s=ee(Dt),r=ee(Q),i=ee(no),a=ee(St),d=ee(Nl("knowledge-assist")),l=ee(Dl);return s===!1?I(ri,{text:o("notSupported")}):r===!1?I(kS,{onLogIn:t}):r===null?I(ri,{text:o("waiting")}):!i||!a?I(ri,{text:o("waitingForConversation")}):I(li,{children:Kn(_o,{initialQuestion:e.initialQuestion,assistantCode:l!=null?l:void 0,evaluateKnowledgeAssistFn:kn,children:[Kn(ln,{children:[I(RS,{}),I(IS,{}),d&&I(Ho,{title:d.title,emptyState:e.emptyState})]}),Kn(ai,{children:[d&&I(Fo,{}),I(qc,{assistantOptions:n})]})]})})},iu=LS;function zn(t){let e=new Range;return e.selectNodeContents(t),e}function au(t,e,n){try{return kt(t,e,n),!0}catch(o){return!1}}function Cs(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Ts(t){return"tagName"in t&&t.tagName==="BR"}var Wn=/[\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,u=/[\u200B-\u200D\uFEFF]/;if(!u.test(d))return l;for(let p=0;p<=d.length;p++)if(u.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(Wn,""),u=s+c.length,p=e>=s&&e<=u,f=n>=s&&n<=u;if(p){let h=i(l,e-s);h===0&&!f?o.setStartBefore(d):o.setStart(d,h)}f&&(o.setEnd(d,i(l,n-s)),r=!0),s=u;break}case Node.ELEMENT_NODE:{if(Ts(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;Cs(d)&&l&&!Cs(l)&&!Ts(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function ws(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(u){let p=u===t,f=u===n,h=u===s;switch(u.nodeType){case Node.TEXT_NODE:{let m=u.textContent;f&&(a=l+m.substring(0,o).replace(Wn,"").length),h&&(d=l+m.substring(0,r).replace(Wn,"").length),l+=m.replace(Wn,"").length;break}case Node.ELEMENT_NODE:{if(Ts(u)&&u.nextSibling){l++;break}!p&&Cs(u)&&u.previousSibling&&l++;for(let m=0;m<u.childNodes.length;m++){let g=f&&m===o,S=h&&m===r;if(g&&(a=l),S&&(d=l),d!==void 0||((!g||!i)&&c(u.childNodes[m]),h&&m===r-1&&(d=l),d!==void 0))break}h&&(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 Es(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 u=c===t,p=c===n,f=c===s;switch(p&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let h=p?o:0,m=f?r:void 0;d+=c.textContent.replace(Wn,"").substring(h,m);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&Ts(c)&&c.nextSibling){d+=`
|
|
9
|
+
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 kd}from"react/jsx-runtime";var Uh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Rd=({className:t,color:e})=>kd("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:kd("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:Uh[e||"pink"]})});var Pd={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var Fr={};J(Fr,{enUS:()=>Kh,nlNL:()=>Wh});var Kh={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Wh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as jh}from"react-redux";import{jsx as Hr,jsxs as Id}from"react/jsx-runtime";var Ld=({onLogIn:t})=>{let e=R(Fr),n=E("floatingMenu"),o=E("productName"),s=jh(),r=Vh(Q),i=b("FloatingMenu",Pd);if(r===null||n===!1)return null;let a=()=>{r===!0?s(ge(!0)):t()};return Id("button",{type:"button",className:zh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Hr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),Id("div",{className:i.icon,children:[Hr(Rd,{className:i.logo,color:"pink"}),r===!1&&Hr(Ed,{className:i.lock})]})]})};import{useEffect as fy,useRef as hy}from"react";import{useDispatch as yy,useSelector as Tt}from"react-redux";function Ee(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.end<t.input.suggestionTextStart||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 $h}from"@reduxjs/toolkit";var Gh={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},Qo=({ui:t})=>t.overlayCollapsed,Ad=$h({name:"ui",initialState:Gh,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:Fn,setInputFocus:Zo,setOverlayCollapsed:et,setOpenOverlayWhenTyping:Md,setOverlayCollapsedUserOverwrite:Nd}=Ad.actions,Od=Ad.reducer;var Dd={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as Yo}from"react/jsx-runtime";var qh=({match:t,selected:e,styles:n})=>Yo(A,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:Yo("span",{className:n.styleSuggestion,children:t.suggestion})}),Xh=({matches:t,selectedIndex:e})=>{let n=b("StyleSuggestionList",Dd);return Yo(Z,{children:t.map((o,s)=>Yo(qh,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},es=Xh;import{useMemo as cy}from"react";import{Interweave as Ud}from"interweave";import{useEffect as ty,useMemo as ny,useRef as oy,useState as sy}from"react";import{useDispatch as ry,useSelector as Kd}from"react-redux";import{useEffect as Jh}from"react";function _d(t,e,n){Jh(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Fd={root:"dd-1MBCO",actions:"dd--x4cy",closeIconContainer:"dd-1z5NR",closeIcon:"dd-8qMF-",badge:"dd-4Fpkz",formattedText:"dd-EzvTB",assistantContainer:"dd-j6o8F",formattedTextTruncated:"dd-fv169",assistantBadge:"dd-VD57E"};import{jsx as Hd,jsxs as Qh}from"react/jsx-runtime";var Bd=({title:t})=>Qh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Hd("title",{id:"closeTitle",children:t}),Hd("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 Br={};J(Br,{enUS:()=>Zh,nlNL:()=>Yh});var Zh={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Yh={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as Ue,jsxs as Wd}from"react/jsx-runtime";var iy=["search","personal-collection-search","search-autocomplete"];function ay(t,e,n,o={}){var r;let s="";return iy.includes(e)?s=Bl(wr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=wr(t,n,o),o.placeholders===!0&&(s=Ul(s)),s}var ly=()=>{},dy=({selected:t,suggestion:e})=>{let n=R(Br),o=E("inlineSuggestions"),s=Kd(lt),[r,i]=sy(!1),a=E("enableSuggestionFeedback"),d=Kd(g=>g.input.text),l=ry(),c=b("TextSuggestion",Fd),u=oy(null),p=e.source==="assistant",f=a&&!p;ty(()=>{let g=setTimeout(()=>{l(ra({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(g)}},[e]),_d(u,"click",()=>{l(ie({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let h=()=>{l(ct({source:e.source,text:e.text,assistantCode:e.assistantCode}))},m=ny(()=>ay(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:Wd("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[Ue(A,{ref:u,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:ly,children:e.source==="assistant"?Wd("div",{className:c.assistantContainer,children:[Ue(Ud,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),Ue("span",{className:c.assistantBadge,children:n("assistant")})]}):Ue(Ud,{containerTagName:"div",tagName:"span",className:c.formattedText,content:m})}),f&&r&&Ue("div",{className:c.actions,children:Ue(Go,{source:"overlay",context:d,suggestion:e})}),p&&r&&Ue("div",{className:c.closeIconContainer,children:Ue("button",{type:"button",className:c.closeIcon,onClick:h,title:n("close"),children:Ue(Bd,{title:n("close")})})})]})},zd=dy;import{jsx as py}from"react/jsx-runtime";var uy=({suggestions:t,selectedIndex:e,reverse:n})=>cy(()=>{let s=t.map((r,i)=>py(zd,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ts=uy;var Vd={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as gy,createSlice as my}from"@reduxjs/toolkit";var ns={list:{keywordMatches:[]},fetchState:"idle"},os=t=>t.styleSuggestions.list,Ct=gy("styleSuggestions/getAll",(n,o)=>v(null,[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 ns.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),jd=my({name:"styleSuggestions",initialState:ns,reducers:{commitStyleSuggestion(t,e){let{keyword:n,suggestion:o}=e.payload;t.list.keywordMatches=t.list.keywordMatches.filter(s=>s.keyword.toLowerCase()!==n.toLowerCase()||s.suggestion!==o)}},extraReducers:t=>{t.addCase(Ct.pending,e=>{e.fetchState="loading"}).addCase(Ct.rejected,e=>{e.fetchState="error"}).addCase(Ct.fulfilled,(e,n)=>{e.fetchState="done",qe(e.list,n.payload)||(e.list=n.payload)}).addCase(ut,e=>{e.list=ns.list}).addCase(j,()=>ns)}}),{commitStyleSuggestion:$d}=jd.actions,Gd=jd.reducer;var ss=t=>{let e=new Set;return t.filter(({keyword:n,suggestion:o})=>{let s=JSON.stringify([n.toLowerCase(),o]);return e.has(s)?!1:(e.add(s),!0)})};import{jsx as rs,jsxs as Sy}from"react/jsx-runtime";var vy=()=>{var g;let t=hy(null),e=b("InlineSuggestionsOverlay",Vd),n=Tt(Ee),o=yy(),s=Tt(Q),r=Tt(Dt),i=Tt(Qo),a=E("showTextSuggestions"),d=Tt(dt),l=Tt(pn),c=E("showStyleSuggestions"),u=E("showStyleSuggestionList"),p=Tt(os),f=c&&u?ss((g=p.keywordMatches)!=null?g:[]):[],h=f.length>0,m=a&&d.length>0;return ft(()=>{setTimeout(()=>{o(et({collapse:!0,skipWhenInputFocus:!0}))})}),fy(()=>{let S=t.current;if(!S||!S.parentElement)return;S.parentElement.style.left="0px";let T=S.getBoundingClientRect();S.parentElement.style.left=`${Math.min(window.innerWidth-4-T.right,0)}px`}),i||s!==!0||r===!1||!n&&!h||!m&&!h?null:rs("div",{className:e.root,"data-variant":"inline",children:Sy("div",{ref:t,className:e.paper,children:[h&&rs(es,{matches:f,selectedIndex:-1}),m&&rs(Z,{children:rs(ts,{suggestions:d,selectedIndex:l})})]})})},qd=vy;import Cy,{useState as Kr,useEffect as Ty}from"react";var Xd={root:"dd-7zvcP",dialogContent:"dd-4C0lK",continueButton:"dd-YUPQW",buttonContinueWrapper:"dd-IKpYs",nicknameInput:"dd-rxhGp",titleWrapper:"dd-nw3nD",title:"dd-5iof5",closeButtonWrapper:"dd-UUAzA",closeButton:"dd-7rjP5",buttonsWrapper:"dd-5e9Xb",errorMessage:"dd--5VgX",errorLink:"dd-u461n"};import{useSelector as wy}from"react-redux";var Ur={};J(Ur,{enUS:()=>xy,nlNL:()=>by});var xy={title:[{type:0,value:"Enter your nickname"}],close:[{type:0,value:"Close"}],nicknameDialogTitle:[{type:0,value:"Please enter the name you'd like customers to see during chat conversations. This nickname will be used across your Deepdesk environment."}],nicknameDialogInputPlaceholder:[{type:0,value:"Enter your nickname"}],nicknameDialogContinueButton:[{type:0,value:"Continue"}],nicknameDialogError:[{type:0,value:"Nickname cannot be empty or spaces only"}],nicknameDialogEmojiError:[{type:0,value:"You cannot use emojis in this field."}],nicknameDialogSaveError:[{type:0,value:"We couldn't save your details just now. Please try again, or update it at "},{type:1,value:"account"},{type:0,value:".deepdesk.com/admin/user-settings"}],nicknameDialogSaveErrorWithoutLink:[{type:0,value:"We couldn\u2019t save your details just now. Please try again later, or update them in My Deepdesk \u2192 Settings."}]},by={title:[{type:0,value:"Voer je bijnaam in"}],close:[{type:0,value:"Sluiten"}],nicknameDialogTitle:[{type:0,value:"Voer de naam in die je wilt dat klanten zien tijdens chatgesprekken. Deze bijnaam wordt gebruikt in je Deepdesk-omgeving."}],nicknameDialogInputPlaceholder:[{type:0,value:"Voer je bijnaam in"}],nicknameDialogContinueButton:[{type:0,value:"Doorgaan"}],nicknameDialogError:[{type:0,value:"Bijnaam mag niet leeg of alleen spaties zijn"}],nicknameDialogEmojiError:[{type:0,value:"Je kunt geen emoji's gebruiken in dit veld."}],nicknameDialogSaveError:[{type:0,value:"We konden je gegevens nu niet opslaan. Probeer het opnieuw of werk het bij op "},{type:1,value:"account"},{type:0,value:".deepdesk.com/admin/user-settings"}],nicknameDialogSaveErrorWithoutLink:[{type:0,value:"We konden je gegevens nu niet opslaan. Probeer het opnieuw later, of werk ze bij in My Deepdesk \u2192 Instellingen."}]};import{Fragment as Ey,jsx as he,jsxs as is}from"react/jsx-runtime";var Jd=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=Kr(""),[i,a]=Kr(!1),[d,l]=Kr(!1),c=b("Nickname",Xd),u=Cy.useRef(null),p=wy(S=>S.info.showNicknameDialog),f=R(Ur),h=E("adminUrl");Ty(()=>{o&&a(!0)},[o]);let m=()=>{if(!u.current)return;s.trim()?u.current.setCustomValidity(""):u.current.setCustomValidity(f("nicknameDialogError")),u.current.reportValidity()},g=S=>{S.preventDefault();let T=s.trim(),C=S.currentTarget.querySelector("#nickname-input");if(!T){C.setCustomValidity(f("nicknameDialogError")),C.reportValidity();return}C.setCustomValidity(""),e(T)};return is(jt,{isOpen:p,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[he("div",{className:c.titleWrapper,children:he("h1",{className:c.title,children:f("title")})}),is("form",{className:c.dialogContent,onSubmit:g,children:[he("p",{children:f("nicknameDialogTitle")}),i&&o&&he("div",{className:c.errorMessage,children:h?(()=>{let S=f("nicknameDialogSaveError",{account:h}),T=`${h}.deepdesk.com/admin/user-settings`,C=S.indexOf(T);if(C!==-1){let w=S.substring(0,C),P=S.substring(C+T.length);return is(Ey,{children:[w,he("a",{href:T,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:T}),P]})}return S})():f("nicknameDialogSaveErrorWithoutLink")}),he("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:f("nicknameDialogInputPlaceholder"),value:s,onChange:S=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(S.target.value)),r(S.target.value)},onBlur:m,ref:u}),d&&he("div",{className:c.errorMessage,role:"alert",children:f("nicknameDialogEmojiError")}),is("div",{className:c.buttonsWrapper,children:[o?he("div",{className:c.closeButtonWrapper,children:he("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:f("close")})}):null,he("div",{className:c.buttonContinueWrapper,children:he("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:f("nicknameDialogContinueButton")})})]})]})]})};import{Provider as ky}from"react-redux";import{jsx as as}from"react/jsx-runtime";var Ry=({children:t})=>{let n=E("locale").replace("-","");return as(ir.Provider,{value:n,children:t})},Py=({store:t,customStyles:e={},children:n})=>as(ky,{store:t,children:as(Ry,{children:as(an.Provider,{value:e,children:n})})}),Ke=Py;import $r from"classnames";import{useEffect as Uy,useRef as Ky,useState as Wy}from"react";import{useDispatch as zy,useSelector as We}from"react-redux";import{useState as Iy}from"react";function Qd(t,e){let[n,o]=Iy(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return k.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){k.error(i)}}]}var Zd=()=>/Mac/i.test(navigator.platform);import My from"classnames";import{Fragment as Ny,useCallback as zr,useMemo as ec}from"react";var Wr={};J(Wr,{enUS:()=>Ly,nlNL:()=>Ay});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"}]}]},Ay={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 Yd={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as ls,jsxs as tc}from"react/jsx-runtime";var Vr=(t,e,n)=>o=>ls("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Oy=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=R(Wr),i=oe(),a=b("Login",Yd),d=E("productName"),l=zr(g=>{g.preventDefault(),o&&o(Number.parseInt(g.target.value,10))},[]),c=zr(g=>{g.preventDefault(),i.send(Ut,!0)},[e]),u=ec(()=>g=>ls("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:g},"login"),[e]),p=zr(g=>ls("button",{type:"button",className:a.anchorButton,onClick:c,children:g},"prompt"),[c]),{min:f,hour:h,day:m}=ec(()=>({min:Vr(a,600,l),hour:Vr(a,3600,l),day:Vr(a,3600*12,l)}),[]);return tc("div",{className:My(t,a.root),children:[r("loginPlease",{login:n?p:u,productName:d}),o&&tc(Ny,{children:[ls("br",{}),r("snooze",{min:f,hour:h,day:m})]})]})},ds=Oy;import{useDispatch as Dy}from"react-redux";var nc={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as oc,jsxs as Fy}from"react/jsx-runtime";var _y=({title:t})=>{let e=b("SearchTrigger",nc),n=Dy(),o=W();return Fy("button",{type:"button",className:e.root,onClick:()=>{n(ge(!0)),o("open search",{via:"autocomplete-overlay"})},children:[oc(Gt,{}),oc("span",{className:e.text,children:t})]})},sc=_y;var jr={};J(jr,{enUS:()=>Hy,nlNL:()=>By});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"}],dismiss:[{type:0,value:"Dismiss"}],dismissError:[{type:0,value:"Dismiss error"}]},By={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"}],dismiss:[{type:0,value:"Sluiten"}],dismissError:[{type:0,value:"Foutmelding sluiten"}]};var rc={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",loginError:"dd-KCXeb",loginErrorMessage:"dd-Bv-BG",loginErrorDismiss:"dd-iSCjU"};import{jsx as q,jsxs as tt}from"react/jsx-runtime";var Vy=({onLogIn:t})=>{var K;let e=b("SuggestionsOverlay",rc),n=R(jr),o=We(Ee),s=We(sa),r=zy(),i=Ky(null),a=E("searchTriggerKey"),d=E("productName"),l=We(Qo),c=We(Q),u=We($i),p=We(Dt),[f,h]=Wy(null),m=E("showSearch"),g=E("showTextSuggestions"),S=E("adminUrl"),T=E("isEmbedded"),C=E("suggestionsPlacement"),[w,P]=Qd("dd-snooze-until-ms",0),L=l||w>Date.now(),_=We(dt),V=We(pn),Pe=E("showStyleSuggestions"),Ie=E("showStyleSuggestionList"),O=We(os),U=Pe&&Ie?ss((K=O.keywordMatches)!=null?K:[]):[],Se=U.length>0,X=_.filter(Le=>Le.source!=="gpt").length,rt=()=>{L&&P(0),r(Nd(!L))},M=Le=>{let It=Date.now()+Le*1e3;P(It),k.info(`Snooze until: ${new Date(It)}`),r(et({collapse:!0}))};return Uy(()=>{X===0&&h(null)},[_,X]),ft(()=>{r(et({collapse:!0,skipWhenInputFocus:!0}))}),c===null||p===!1?null:c===!1?tt("div",{ref:i,className:$r(e.root,{[e.isCollapsed]:L}),children:[!L&&tt("div",{className:e.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:e.triggersRight,children:q(At,{className:e.toggleButton,title:n("collapse"),onClick:rt,isCollapsed:!1})})]}),q("div",{className:e.toggleButtonWrapper,children:q(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:rt,isCollapsed:!0})}),tt("div",{className:e.collapsible,children:[u&&tt("div",{className:e.loginError,children:[q("span",{className:e.loginErrorMessage,children:u}),q("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(to()),"aria-label":n("dismissError"),children:n("dismiss")})]}),q(ds,{loginUrl:S,isEmbedded:T,onLogIn:t,onSnooze:M})]})]}):!s||!o&&!Se?null:tt("div",{ref:i,className:$r(e.root,{[e.isCollapsed]:L}),children:[!L&&tt("div",{className:e.triggers,children:[q("div",{style:{flex:1},children:m&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>h(n(Zd()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>h(null),children:q(sc,{title:n("search")})})}),tt("div",{className:e.triggersRight,onFocus:()=>{},children:[q("div",{className:$r(!f&&e.hintsHidden,e.hints),children:f}),q(At,{className:e.toggleButton,title:n("collapse"),onClick:rt,isCollapsed:!1})]})]}),q("div",{className:e.toggleButtonWrapper,children:q(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:rt,isCollapsed:!0})}),(Se||X>0&&g)&&tt("div",{className:e.collapsible,onFocus:()=>{},children:[Se&&q(es,{matches:U,selectedIndex:-1}),X>0&&g&&q(Z,{children:q(ts,{suggestions:_,selectedIndex:V,reverse:C==="above"})})]})]})},ic=Vy;import Zr from"classnames";import{Interweave as Lv}from"interweave";import{useCallback as Av,useEffect as Mv,useMemo as Ec,useRef as Nv}from"react";import{connect as Ov}from"react-redux";import{useEffect as jy,useRef as $y,useState as Gy}from"react";function cs(t){return t.contentEditable==="true"}function qy(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 ac(t){let{selectionStart:e,selectionEnd:n}=cs(t)?qy(t):t;return[e,n]}function lc(t){let[,e]=Gy(),n=$y(null);return n.current=ac(t),jy(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=ac(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 dc(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(Qn);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 Xy}from"react";var Jy=["div","span","mark","strong","b","i","u","em"];function Gr(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(Jy.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),Xy(o,{children:Gr(i,e,n+1)})]}return[...t,...e]}function wt(t){return t.tagName.toLowerCase()==="textarea"}var cc={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 ov from"classnames";import{Matcher as sv}from"interweave";import{useEffect as rv,useMemo as iv}from"react";import{useEffect as Qy,useRef as Zy,useState as Yy}from"react";function uc(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function us(t){let e=Zy(null),[n,o]=Yy(!1);return Qy(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=uc((u,p)=>{let f=e.current;if(!f)return;let h=u/r,m=p/r,g=f.getBoundingClientRect(),S=h>g.x&&h<g.x+g.width&&m>g.y&&m<g.y+g.height;S&&!s?(s=!0,o(!0)):!S&&s&&(s=!1,o(!1))},({clientX:u,clientY:p})=>[u,p]),[d,l]=uc(()=>{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 ps(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function gs(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function pc(t){return t!=null}import ev from"classnames";import{forwardRef as tv,useRef as nv}from"react";var ze={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 gc}from"react/jsx-runtime";var ms=tv((s,o)=>{var r=s,{className:t,children:e}=r,n=N(r,["className","children"]);let i=nv(null),a=b("TabCompletion",ze);return gc("div",x(y({ref:gs([i,o]),className:ev(t,a.popoverContentContainer)},n),{children:gc("div",{className:a.popoverContent,children:e})}))});import{jsx as Hn,jsxs as dv}from"react/jsx-runtime";var av=t=>e=>{let n=gr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},lv=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=b("TabCompletion",ze),i=Io(),a=iv(()=>av(t.getBoundingClientRect()),[t]),[d,l]=us(t);return rv(()=>{l?i.open():i.close()},[l]),dv("span",{children:[Hn("mark",{ref:gs([d,i.triggerRef]),className:ov(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Hn(Wt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:Hn(ms,{style:n,children:Hn("div",{className:r.hintText,children:s})})})]})},fs=class extends sv{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(y({},s),{keywordRegex:new RegExp(`\\b${ps(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(pc);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 Hn(lv,{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 cv}from"interweave";import uv from"classnames";import{jsx as mc}from"react/jsx-runtime";var pv=({inputElement:t,children:e})=>{let n=b("TabCompletion",ze),[o,s]=us(t);return mc("mark",{ref:o,className:uv(n.matchPlaceholder,{[n.hover]:s}),children:e})},hs=class extends cv{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 mc(pv,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Qr from"classnames";import{Matcher as Cv}from"interweave";import{createRef as Tv,forwardRef as wv,useCallback as Ev,useEffect as Cc,useRef as Tc,useState as wc}from"react";import{useDispatch as kv,useSelector as Rv}from"react-redux";import{jsx as fc}from"react/jsx-runtime";var hc=()=>fc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:fc("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 gv,useEffect as vc,useMemo as mv,useState as Sc}from"react";import{useDispatch as fv,useSelector as xc}from"react-redux";import hv from"lodash.debounce";var yc={root:"dd-ky-Bv",content:"dd-kV5e1"};function ys(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 qr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Et,jsxs as Xr}from"react/jsx-runtime";var yv=3,vv=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Sv=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=yv})=>{let r=b("LinkSearch",yc),[i,a]=Sc(""),d=fv(),l=xc(fd("url")),c=xc(Pa("URL")),u=mv(()=>c.map(vv),[c]),[p,f]=Sc(u.length-1),h=E("fallbackImage"),m=C=>{let w=C.target;a(w.value)},g=(C,w)=>{C.stopPropagation(),C.preventDefault(),window.open(w,"_blank")},S=C=>{var L;let w=p-1<0?u.length-1:p-1,P=p+1===u.length?0:p+1;C.code==="Escape"&&(a(""),e()),C.code==="ArrowUp"&&f(w),C.code==="ArrowDown"&&f(P),C.code==="Enter"&&t(((L=u[p])==null?void 0:L.text)||i)},T=gv(hv(C=>{d(pt({query:C,type:"URL",tags:["link-search"]}))},300),[]);return vc(()=>{i&&T(i)},[i]),vc(()=>()=>{d(go())},[]),Xr("div",{className:r.root,children:[Et(Z,{withDivider:!0,children:(i?u:l).slice(0,s).map((C,w)=>Et(A,{selected:p===w,onClick:()=>t(C.text),"data-testid":"linksearch-suggestion",children:Xr(D,{children:[Et(D.Image,{src:ys(C,"small",h||void 0),title:C.title||C.text}),Xr(D.Content,{className:r.content,cropText:!0,children:[Et(D.Title,{children:C.title||qr(C.text)}),C.title&&qr(C.text)]}),Et(A.Actions,{children:Et(A.ActionButton,{label:o,onClick:P=>g(P,C.text)})})]})},C.text))}),Et(Pn,{value:i,onChange:m,autoFocus:!0,placeholder:n,onKeyUp:S})]})},bc=Sv;var Jr={};J(Jr,{enUS:()=>xv,nlNL:()=>bv});var xv={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}],addToPersonalCollection:[{type:0,value:"Add to Personal Collection"}]},bv={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}],addToPersonalCollection:[{type:0,value:"Toevoegen aan Personal Collection"}]};import{jsx as ye,jsxs as vs}from"react/jsx-runtime";var Pv=wv((t,e)=>{let n=b("TabCompletion",ze);return ye("mark",{ref:e,className:Qr(n.matchSelection)},"selection-start")}),Iv=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=R(Jr),i=b("TabCompletion",ze),a=E("addToPersonalCollection"),d=Rv(Qe("/admin/personal-collection/new")),l=Tc(null),c=Tc(null),[u,p]=wc(null),f=kv(),h=Io(document.activeElement===o),[m]=wc(()=>document.createRange());h.triggerRef.current=m,Cc(()=>()=>m.detach(),[]),Cc(()=>{let S=t.current,T=l.current;!S||!T||(m.setStart(S,0),m.setEnd(T,0))},[t.current,l.current]),ft(()=>{h.close()});let g=Ev(S=>{let T=m.toString(),C=/^http(s?):\/\//.test(S)?S:`https://${S}`,w=`[${T}](${C})`;f(ie({text:w,suggestion:{text:w,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return vs("span",{children:[ye("mark",{ref:l,className:Qr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":h.opened?"true":"false",children:s}),h.opened&&ye(Wt,{className:i.popoverRoot,triggerRef:h.triggerRef,boundaryRef:e,position:"above",align:"start",children:vs(ms,{style:n,ref:c,children:[vs("div",{className:Qr(i.selectionOptions,{[i.selectionOptionsIsHidden]:u!==null}),children:[vs("button",{type:"button",tabIndex:u===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ye(hc,{}),ye("span",{children:"\xA0"}),ye("span",{children:r("insertLink")})]}),a&&d&&ye("button",{type:"button",tabIndex:u===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let S=m.toString(),T=`${d}?text=${encodeURIComponent(S)}`;window.open(T,"_blank")},children:ye("span",{children:r("addToPersonalCollection")})})]}),u==="insertLink"&&ye(bc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:g,onDismiss:()=>{p(null),h.close()}})]})})]},"selection-end")},Ss=class extends Cv{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?y({isStart:a},i):null}replaceWith(n,o){return o.isStart?ye(Pv,{ref:this.startRef}):ye(Iv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as Dv}from"react-redux";import{jsx as Xt,jsxs as Hv}from"react/jsx-runtime";var _v=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=b("TabCompletion",cc),c=E("insertLink"),u=E("addToPersonalCollection"),p=E("showMidSentenceSuggestions"),f=E("inlineSuggestions"),h=lc(a),m=Nv(null),g=Dv(Q);Mv(()=>{wt(a)&&h&&dc(a,h)},[h]);let S=Av(w=>{if(!s||!n)return w;let P=[Xt("span",{className:l.resetIndent,children:"\u200B"},"u200B"),Xt("span",{"data-testid":"tab-completion",className:Zr(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&P.push(Xt("span",{className:Zr(l.hint,l.resetIndent),children:Xt(Ds,{keyCode:"tab"},"tabHint")},"tabHint")),Gr(w,P)},[s,n,o]),T=Ec(()=>{let w=[];return(c||u)&&w.push(new Ss("selection")),w.push(new hs("placeholders")),r&&w.push(new fs("keywords")),w},[f,c,u,r]),C=Ec(()=>{let w=window.getComputedStyle(a);return{"--dd-color":w.color,"--dd-font-size":w.fontSize,"--dd-font-family":w.fontFamily,"--dd-font-variant":w.fontVariant}},[]);return!t||!g?null:Hv("div",{ref:w=>{w!=null&&w.parentElement&&(m.current=w==null?void 0:w.parentElement)},className:l.root,style:C,children:[Xt(Lv,{tagName:"span",containerTagName:"div",className:Zr(l.container,l.agentText),disableLineBreaks:wt(a),content:e||"\u200B",onAfterParse:S,matchers:T,selection:h,keywordMatches:i,inputElement:a,inputStyle:C,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!p}),Xt("br",{})]},"tab-completion")},Fv=t=>{var S,T,C;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=(S=e.html)!=null?S:Nn(e.text),c=e.text.slice(e.suggestionTextStart,e.selection.end),u=a.indexOf(c)===0?a.slice(c.length):"",{showTabHint:p}=n,{isSupported:f}=r,{showTabCompletion:h,visible:m,showStyleSuggestions:g}=o;return{showTabHint:p,showStyleSuggestions:g,showTabCompletion:h&&Ee(t),content:l,tabText:u,source:d,keywordMatches:(C=(T=s.list)==null?void 0:T.keywordMatches)!=null?C:[],enabled:m&&f!==!1}},kc=Ov(Fv)(_v);import{Fragment as wS,useEffect as ii,useState as ES}from"react";import{useDispatch as su,useSelector as ee}from"react-redux";import{createAsyncThunk as Rc,createSlice as Bv}from"@reduxjs/toolkit";var Uv={token:null,interval:null},Yr=Rc("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),ei=Rc("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Yr()),setInterval(()=>o(Yr()),n)}),Pc=Bv({name:"passwordlessToken",initialState:Uv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Yr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(ei.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:Ic}=Pc.actions,Lc=Pc.reducer;import{createSelector as Kv}from"@reduxjs/toolkit";function Wv(t){return"buttonText"in t&&"eventName"in t}function Ac(t){if(t)return Wv(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function zv(t){return t==null?void 0:t.map(e=>Ac(e))}function Vv(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var Mc=Kv([Va,no],(t,e)=>(e?t.filter(s=>!s.externalConversationId||s.externalConversationId===e):t).map(s=>{let r=Ac(s.callToAction),i=zv(s.callToActions);return x(y(y(y({text:s.response,title:s.name},r?{callToAction:r}:{}),i!=null&&i.length?{callToActions:i}:{}),s.message!==void 0?{message:s.message}:{}),{editable:s.editable,isLoading:s.isLoading,evaluationId:s.evaluationId,rule:{id:Vv(s.code),label:s.code,name:s.name,description:s.name}})}));import{useEffect as jv,useState as $v}from"react";import Dc from"classnames";import{jsx as Nc}from"react/jsx-runtime";var Jt=()=>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 Qt,jsxs as _c}from"react/jsx-runtime";var Gv=({entities:t})=>{let e=b("EntitiesWidgetList",Oc),[n,o]=$v(void 0),s=W(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),be(a.text),s("entity copied",{entity:a,type:"copy"}))};return jv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:Qt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>_c("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Qt("span",{className:e.entityText,children:a.text}),_c("span",{className:e.iconWrapper,children:[Qt("span",{className:Dc(e.icon),children:Qt(Jt,{})}),Qt("span",{className:Dc(e.icon,n===d&&e.iconClicked),children:Qt(Jt,{})})]})]},a.text))})},Fc=Gv;import{jsx as Hc}from"react/jsx-runtime";var Bc=()=>Hc("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Hc("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 Yv}from"react";import{useSelector as eS}from"react-redux";var Uc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Kc={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as Xv}from"react/jsx-runtime";var qv=({size:t=12})=>{let e=b("LoadingSpinner",Kc);return Xv("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Wc=qv;import{jsx as zc}from"react/jsx-runtime";var Vc=()=>zc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:zc("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 jc,jsxs as Jv}from"react/jsx-runtime";var $c=t=>Jv("svg",x(y({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[jc("title",{id:"checkTitle",children:"Check"}),jc("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 ti={};J(ti,{enUS:()=>Qv,nlNL:()=>Zv});var Qv={error:[{type:0,value:"Something went wrong"}]},Zv={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as Ve,jsxs as Gc}from"react/jsx-runtime";var tS=3e3,nS=({assistantOptions:t})=>{let e=b("OnDemandAssistants",Uc),n=R(ti),o=Yv(),s=ho(se),r=eS(Ml),i=W(),a=r.filter(c=>c.isPinned),d=r.filter(c=>!c.isPinned),l=c=>v(null,null,function*(){clearTimeout(o.current),i("trigger on demand assistant",{assistantCode:c}),yield s.call(x(y({},t),{assistantCode:c})),o.current=setTimeout(()=>s.reset(),tS)});return r.length===0?null:Gc("div",{className:e.root,children:[a.map(({assistant:c,assistantName:u,displayName:p})=>Ve("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>l(c),children:p||u},c)),d.length>0&&Gc($,{placement:"top-end",children:[Ve($.Trigger,{className:e.trigger,disabled:s.state==="loading",children:Ve(Vo,{"data-testid":"trigger"})}),Ve($.Content,{className:e.nav,"data-testid":"popover",children:d.map(({assistant:c,assistantName:u,displayName:p})=>Ve($.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>l(c),children:p||u},c))})]}),s.state==="loading"&&Ve(Wc,{}),s.state==="done"&&Ve($c,{"data-testid":"trigger-done"}),s.state==="error"&&Ve(hl,{trigger:Ve(Vc,{}),children:n("error")})]})},qc=nS;import{useDispatch as uS}from"react-redux";var Bn={};J(Bn,{enUS:()=>oS,nlNL:()=>sS});var oS={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"}]},sS={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 Xc,useRef as rS,useState as iS}from"react";var ni={title:"dd-YBHrC",fadeup:"dd-cRM0K",fadedown:"dd-7D4Pq",selected:"dd-bueui",actions:"dd-9Iqn9",ctaMessage:"dd-ge8nB",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 ve,jsxs as xs}from"react/jsx-runtime";var aS=500,lS=100,dS=({content:t,onChange:e,onCopy:n})=>{let o=rS(null),s=b("WidgetCue",ni);return Xc(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,lS),aS);r.style.setProperty("height",`${i}px`)},[t]),ve("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},cS=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s})=>{var m;let r=b("WidgetCue",ni),i=R(Bn),a=W(),d=E("hasKeyboardInput"),[l,c]=iS(t.text),u=g=>{let S=g?x(y({},t),{callToAction:g}):t;e&&e(l,S),n(t)},p=(g,S)=>{o&&o(g,t),S&&Je(S,r.fadeup)},f=g=>{s&&s(g,t)},h=g=>{g.preventDefault(),g.stopPropagation(),n(t)};return Xc(()=>{a("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),xs(A,{"data-testid":"cue",children:[ve(D,{children:xs(D.Content,{children:[t.title&&ve(D.Title,{className:r.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?i(t.rule.label):t.title}),t.message&&ve("p",{className:r.ctaMessage,children:t.message}),t.editable?ve(dS,{content:l,onCopy:()=>{let g=document.getSelection();g&&p(g.toString())},onChange:g=>{var S;return c((S=g.target.value)!=null?S:"")}}):ve(yt,{content:t.text,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:p,onUse:d?f:void 0})]})}),xs(A.ButtonsContainer,{children:[xs("div",{className:r.actions,children:[ve(A.Button,{onClick:g=>{var S;return p((S=wo(l,"reply")[0])!=null?S:l,g.target)},variant:"primary",children:i("copyCue")}),t.callToAction&&ve(A.Button,{onClick:()=>u(),variant:"primary",children:t.callToAction.label}),(m=t.callToActions)==null?void 0:m.map((g,S)=>ve(A.Button,{onClick:()=>u(g),variant:"primary",children:g.label},`${g.event}-${g.label}-${S}`)),ve(A.Button,{onClick:h,variant:"secondary",children:i("removeCue")})]}),ve(Po,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackText:t.text,feedbackType:"assistant"})]})]})},Jc=cS;import{Fragment as gS,jsx as oi}from"react/jsx-runtime";var pS=({cues:t})=>{let e=uS(),n=oe(),o=R(Bn),s=W(),r=l=>{e(ko({code:l.rule.label})),s("Assistant response closed",{evaluationId:l.evaluationId,assistantCode:l.rule.label,assistantOutput:l.text})},i=(l,c)=>{be(l),s("Assistant response copied",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,copiedText:l})},a=(l,c)=>{var u;c.callToAction&&(e(Eo(c)),s("Assistant call to action",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,eventName:c.callToAction.event,value:(u=c.callToAction.value)!=null?u:l}))},d=(l,c)=>{var u;n.send(Oe,{text:l,suggestion:{source:"assistant",assistantCode:(u=c.rule)==null?void 0:u.label,sourceText:l}}),s("Assistant response used",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,usedText:l})};return oi(gS,{children:t.map(l=>l.isLoading?oi(Mo,{title:l.rule.label.startsWith("__")?o(l.rule.label):l.title},l.rule.id):oi(Jc,{cue:l,onCallToAction:a,onRemove:r,onCopy:i,onUse:d},l.evaluationId))})},Qc=pS;import{Fragment as mS,useEffect as fS}from"react";var Zc={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 je,jsxs as si}from"react/jsx-runtime";function hS(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Yc=({data:t,schema:e})=>{let n=b("WidgetCustomData",Zc),o=s=>{be(s)};return fS(()=>{k.info("Custom data",t,e)},[t]),je("dl",{className:n.root,children:e.map(s=>{let r=hS(t,s.path);return si(mS,{children:[je("dt",{className:n.label,children:s.label}),je("dd",{className:n.value,children:s.type==="boolean"&&r?je("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?je("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?si("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r.join(", ")}),je(Jt,{})]}):typeof r=="string"||typeof r=="number"?si("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r}),je(Jt,{})]}):"-"})]},s.label)})})};import{useCallback as vS}from"react";var yS=/(https?:\/\/[^\s]+)/,eu=t=>t.split(" ").find(e=>yS.test(e));import{jsx as Zt,jsxs as bs}from"react/jsx-runtime";var SS=({suggestion:t,lines:e,onUse:n})=>{var u;let o=t.text||t.url||t.message,s=eu(o),r=R(On),i=E("showImages"),a=E("fallbackImage"),d=E("hasKeyboardInput"),l=p=>{p.preventDefault(),p.stopPropagation(),d&&n(o)},c=vS(p=>{window.open(s,"_blank"),p.stopPropagation(),p.preventDefault()},[s]);return bs(A,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[bs(D,{children:[i&&t.image&&Zt(D.Image,{src:ys(t,"small",a||void 0),title:t.title}),bs(D.Content,{children:[t.title&&Zt(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((u=t.searchKeywords)==null?void 0:u.length)>0&&Zt(A.Labels,{labels:t.searchKeywords}),Zt(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),bs(A.Actions,{children:[s&&Zt(A.ActionButton,{onClick:c,label:r("visitUrl")}),d&&Zt(A.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},tu=SS;import{Fragment as bS,jsx as nu}from"react/jsx-runtime";var xS=({lines:t,suggestions:e})=>{let n=oe(),o=(s,r)=>{n.send(Oe,{text:s,suggestion:x(y({},r),{source:r.source,sourceText:r.text})})};return nu(bS,{children:e.map(s=>nu(tu,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},ou=xS;var Un={};J(Un,{enUS:()=>CS,nlNL:()=>TS});var CS={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"}]},TS={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 Yt={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 Kn}from"react/jsx-runtime";var ru=(t,e)=>{let n=ee(Q);ii(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},kS=({onLogIn:t})=>{let e=b("Widget",Yt),n=E("isEmbedded"),o=E("adminUrl");return I("div",{className:e.loginText,children:I("div",{children:I(ds,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},ri=({text:t})=>{let e=b("Widget",Yt);return I("div",{className:e.stateText,children:I("div",{children:I("p",{children:t})})},"notification")},RS=()=>{let t=R(Un),e=su(),n=b("Widget",Yt),o=E("showSearch"),s=E("isEmbedded"),r=ee(Qe("/admin/")),i=oe(),a=E("productName"),d=W();return ru(()=>{if(s)return e(ei()),()=>{e(Ic())}},[e,s]),!o&&!r?null:Kn("div",{className:n.shortcutList,children:[o&&I(A.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:I(Gt,{}),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(Bc,{}),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})})]})},PS=({title:t,content:e})=>{let n=R(Un),[o,s]=ES(!0);return o?I(Ae,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:I(Z,{withDivider:!0,children:Kn(A,{children:[I(D,{children:I(D.Content,{children:I(yt,{content:e})})}),I(A.ButtonsContainer,{children:I(A.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},IS=()=>{let t=su(),e=ee(An),n=ee(Ol),o=ee(Mc),s=ee(ya),r=ee(zo),i=ee(qo),a=ee(Ye),d=ee(xe);return ii(()=>{s&&!n&&k.warn("Custom data provided, but no schema.")},[s,n]),ru(()=>{e.forEach(({type:l})=>{l==="entities"?t(me()):Zn.includes(l)||t(fe(l))})},[t,d,a]),ii(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&k.warn("Received cues, but cues are not configured in widget.")},[e,o]),I(wS,{children:e.map(({type:l,title:c,amount:u,lines:p,schema:f,property:h})=>{var m,g;switch(l){case"entities":return r&&r.length>0&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Fc,{entities:r})},l);case"cues":return o&&o.length>0&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Z,{withDivider:!0,children:I(Qc,{cues:o})})},l);case"custom-data-banner":return s&&h&&s[h]&&I(PS,{title:c,content:String(s[h])},l);case"custom-data":return s&&f&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Z,{withDivider:!0,children:I(Yc,{data:s,schema:f})})},l);default:return((g=(m=i[l])==null?void 0:m.suggestions)==null?void 0:g.length)>0&&I(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:I(Z,{withDivider:!0,children:I(ou,{lines:p,contentType:l,suggestions:i[l].suggestions.slice(0,u)||[]})})},l)}})})},ai=({children:t})=>{let e=b("Widget",Yt);return I("div",{className:e.footer,children:t})},li=({children:t})=>{let e=b("Widget",Yt);return I("div",{className:e.root,"data-testid":"widget",children:t})},LS=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"}})=>{let o=R(Un),s=ee(Dt),r=ee(Q),i=ee(no),a=ee(Ye),d=ee(Nl("knowledge-assist")),l=ee(Dl);return s===!1?I(ri,{text:o("notSupported")}):r===!1?I(kS,{onLogIn:t}):r===null?I(ri,{text:o("waiting")}):!i||!a?I(ri,{text:o("waitingForConversation")}):I(li,{children:Kn(_o,{initialQuestion:e.initialQuestion,assistantCode:l!=null?l:void 0,evaluateKnowledgeAssistFn:kn,children:[Kn(ln,{children:[I(RS,{}),I(IS,{}),d&&I(Ho,{title:d.title,emptyState:e.emptyState})]}),Kn(ai,{children:[d&&I(Fo,{}),I(qc,{assistantOptions:n})]})]})})},iu=LS;function zn(t){let e=new Range;return e.selectNodeContents(t),e}function au(t,e,n){try{return kt(t,e,n),!0}catch(o){return!1}}function Cs(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Ts(t){return"tagName"in t&&t.tagName==="BR"}var Wn=/[\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,u=/[\u200B-\u200D\uFEFF]/;if(!u.test(d))return l;for(let p=0;p<=d.length;p++)if(u.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(Wn,""),u=s+c.length,p=e>=s&&e<=u,f=n>=s&&n<=u;if(p){let h=i(l,e-s);h===0&&!f?o.setStartBefore(d):o.setStart(d,h)}f&&(o.setEnd(d,i(l,n-s)),r=!0),s=u;break}case Node.ELEMENT_NODE:{if(Ts(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;Cs(d)&&l&&!Cs(l)&&!Ts(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function ws(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(u){let p=u===t,f=u===n,h=u===s;switch(u.nodeType){case Node.TEXT_NODE:{let m=u.textContent;f&&(a=l+m.substring(0,o).replace(Wn,"").length),h&&(d=l+m.substring(0,r).replace(Wn,"").length),l+=m.replace(Wn,"").length;break}case Node.ELEMENT_NODE:{if(Ts(u)&&u.nextSibling){l++;break}!p&&Cs(u)&&u.previousSibling&&l++;for(let m=0;m<u.childNodes.length;m++){let g=f&&m===o,S=h&&m===r;if(g&&(a=l),S&&(d=l),d!==void 0||((!g||!i)&&c(u.childNodes[m]),h&&m===r-1&&(d=l),d!==void 0))break}h&&(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 Es(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 u=c===t,p=c===n,f=c===s;switch(p&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let h=p?o:0,m=f?r:void 0;d+=c.textContent.replace(Wn,"").substring(h,m);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&Ts(c)&&c.nextSibling){d+=`
|
|
10
10
|
`;break}!u&&!i&&a===1&&Cs(c)&&c.previousSibling&&(d+=`
|
|
11
|
-
`);let h=p?o:0,m=f?Math.min(r,c.childNodes.length):c.childNodes.length;for(let g=h;g<m&&(l(c.childNodes[g]),a!==2);g++);break}default:break}f&&(a=2)}return l(t),d}var lu=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(lu||{}),tt=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedSuggestionTextStart=0;this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedSuggestionTextStart=this.getSuggestionTextStart(),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.getSuggestionTextStart(),r=this.cachedCaretPosition===null;if(!this.isActive)return;e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit");let i=e!==this.cachedText,a=n!==null&&n!==this.cachedHTML,d=s!==this.cachedSuggestionTextStart;if((i||a||d)&&(i?(this.cachedText=e,this.cachedHTML=n):a&&(this.cachedHTML=n),this.cachedSuggestionTextStart=s,r=!0,this.emit("change",{plainText:e,rawHTML:n,suggestionTextStart:s})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,r=!0,this.emit("selection",o)),!r)return;let l=this.getCaretPosition();qe(l,this.cachedCaretPosition)||(this.cachedCaretPosition=l,this.emit("caretposition",l))}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(lu).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()})}getSuggestionTextStart(){return 0}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 du(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var en=class extends tt{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Es(this.element,n)}getHTML(){return this.element.innerHTML||""}getRange(){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=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!du(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!du(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return ws(this.element,n);let o=this.lastKnownSelection;if(o&&au(this.element,o.start,o.end))return o;let s=zn(this.element);return s.collapse(!1),ws(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Es(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 AS=["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 cu(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",AS.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 tn=class extends tt{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 cu(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 uu(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 MS(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var di=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()}},ci=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=uu(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()}},ui=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(),k.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 ci(e,this.deepdeskUrl,{debug:!0}):new di(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=MS(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(k.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;k.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(y({},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)}},pu=ui;function NS(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function B(t){return Array.isArray(t)?t.map(B):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(y({},e),{[NS(n)]:B(t[n])}),{}):t}function OS(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function te(t){return Array.isArray(t)?t.map(te):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(y({},e),{[OS(n)]:te(t[n])}),{}):t}var nn=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var pi=t=>new Promise(e=>{setTimeout(e,t)});var Rt=class extends nn{constructor(){super(...arguments);this.name="ClientError"}},mi=class extends nn{constructor(){super(...arguments);this.name="ServerError"}},gi=new Map;function DS(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:(k.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var on=class{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};this.refreshingToken=null;this.lastFailedRefreshAt=null;this.failedRefreshCooldown=1e4;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",L=n,{useCache:l=!1,abortLatest:c=!1,attempts:u=1,retryDelay:p=500,refreshTokenOn401:f=!0,retryOnError:h=_=>_ instanceof TypeError,retryOnResponse:m=_=>_.status>=500,version:g=null}=L,S=N(L,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(gi.has(i)){o(gi.get(i));return}}let T=x(y({credentials:"include"},S),{headers:y({Accept:"application/json","Content-Type":"application/json"},S.headers)});!d&&this.csrfToken&&(T.headers=x(y({},T.headers),{"X-CSRFToken":this.csrfToken})),typeof g=="string"&&(T.headers=x(y({},T.headers),{"X-Deepdesk-API-Version":g}));let C=u,w=!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 P=()=>v(this,null,function*(){return C--,a(i,T).then(_=>v(this,null,function*(){return m(_)&&!r.isAborted&&C>0?(yield pi(p),P()):_.status===401&&f===!0&&w===!1?(w=!0,yield this.refreshToken(),P()):_})).catch(_=>v(this,null,function*(){if(h(_)&&!r.isAborted&&C>0)return yield pi(p),P();throw _}))});P().then(_=>v(this,null,function*(){let V=yield DS(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new mi("Server Error",V));return}if(_.status===401){s(new Rt("Unauthorized",V));return}if(_.status===403){s(new Rt("Forbidden",V));return}if(_.status===404){s(new Rt("Not Found",V));return}if(_.status>=400){s(new Rt("Bad Request",V));return}l&&gi.set(i,V),o(V)})).catch(_=>{s(_)})})}validateToken(){return v(this,null,function*(){let e,n,o;try{({has_valid_access_token:e,is_logged_in:n,has_valid_refresh_token:o}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1}))}catch(s){return!1}if(!e){if(!o)return!1;try{yield this.refreshToken();let{is_logged_in:s}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1});return s}catch(s){return!1}}return n})}refreshToken(){let e=Date.now();return this.lastFailedRefreshAt&&e-this.lastFailedRefreshAt<this.failedRefreshCooldown?Promise.reject(new Rt("Unauthorized","Failed to refresh token")):this.refreshingToken?this.refreshingToken:(this.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).catch(n=>{throw(n==null?void 0:n.message)==="Unauthorized"&&(this.lastFailedRefreshAt=Date.now()),n}).finally(()=>{this.refreshingToken=null}),this.refreshingToken)}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,y({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,y({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,y({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,y({method:"DELETE"},n))}};var gu;(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={}))})(gu||(gu={}));function fi(t){return x(y({},B(t)),{metadata:t.metadata})}var Pt=class Pt{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?(Pt.exchangeTokenPromise||(Pt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),Pt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),k.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",x(y({chat_start_time:new Date().toISOString()},te(e)),{metadata:(o=e.metadata)!=null?o:{}}));return fi(n)})}getMe(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/me/");return B(e)})}postIdentity(e){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",te(e))})}patchMe(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",te(e));return B(n)})}getProfile(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return B(n)})}getKnowledgeAssistant(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return B(n)})}getContentTypes(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return B(e)})}getAccount(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return B(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 B(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(),k.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 k.info(`Successfully retrieved conversation ${i.id} for session ${e}`),fi(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){k.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=te(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return fi(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(y({},te(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=N(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>x(y({},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",te(x(y(y({},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 k.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/",te(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}`,te(n),{abortLatest:!0})).map(i=>x(y({},B(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`,te(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 B(n).map(o=>x(y({},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",te(e),{abortLatest:!0,version:"v2"});return B(n)})}search(e){return v(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,te(e));return B(n)})}loginWithPassword(e,n){return v(this,null,function*(){yield this.preflight();let o=yield this.client.post("/apis/admin/session/login/",{username:e,password:n},{refreshTokenOn401:!1});return B(o)})}logout(){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/logout/",{},{refreshTokenOn401:!1})})}requestLoginByEmail(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return B(n)})}requestPasswordlessToken(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return B(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 B(n)})}evaluateAssistant(e,n){return v(this,null,function*(){var i;yield this.preflight();let o=new URLSearchParams;n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let s=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()}`,r=yield this.client.post(s,{input:(i=n==null?void 0:n.input)!=null?i:{},conversation:n==null?void 0:n.transcript});return B(r)})}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 B(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 B(r)})}translateMessages(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",te(e));return B(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(Wi);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&k.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};Pt.exchangeTokenPromise=null;var nt=Pt;var ks=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=B(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{combineReducers as BS,configureStore as US}from"@reduxjs/toolkit";import{createSlice as _S}from"@reduxjs/toolkit";var mu={startTime:null,stopTime:null},fu=t=>t.handlingTime,hu=_S({name:"handlingTime",initialState:mu,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(j,()=>mu)}}),{handlingTimeStart:yu,handlingTimeStop:Rs,handlingTimeReset:vu}=hu.actions,Su=hu.reducer;var xu=(t={})=>{let e=y({onAuthError:Nt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var bu=(t={})=>{let e,n=!0,o=y({getStyleSuggestions:Ct,debounce:500},t);return s=>r=>i=>{var f;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(!((f=l.conversation.current)==null?void 0:f.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 FS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var Cu=(t={})=>{let e=y({getTextSuggestions:fe,getAutocompleteSuggestions:_n,debounce:200,check:Ee},t),n;return o=>s=>r=>{var m;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,u=(m=d.conversation.current)==null?void 0:m.id,p=r.type===Xo.toString();if(!u||!l&&!c)return a;let{input:f}=d;return FS(f,i)&&!p||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let g=at(d);g===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(g))},p?0:e.debounce)),a}};var Tu=Ct.fulfilled.toString();function HS(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 wu=t=>e=>n=>o=>{var l;if(o.type!==Tu){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=HS(s,i);o.type===Tu&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var KS=BS({assistants:Qa,auth:Ji,conversation:ta,contentTypes:Al,passwordlessToken:Lc,entities:sd,handlingTime:Su,info:wa,input:ma,settings:Ya,profile:_l,search:La,styleSuggestions:Gd,ui:Od,textSuggestions:vd});function Eu(t){return US({reducer:KS,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(xu()).concat(Cu({debounce:200})).concat(bu({debounce:500})).concat(wu(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function ku(t,e,n){if(e==="")return null;let o=new RegExp(`\\b${ps(e)}\\b`,"gi"),s,r=null;for(;(s=o.exec(t))!==null&&!(s.index>n);)r={start:s.index,end:s.index+s[0].length};return r}var WS=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},zS=t=>e=>n=>o=>{var d,l,c,u,p,f;let s=e.getState(),r=gt("inlineSuggestions")(s),i=gt("autoSelectSuggestion")(s)||r;switch(o.type){case Nt.toString():{!o.payload&&t.emit("logout",void 0);break}case eo.fulfilled.toString():{t.emit("logout",void 0);break}case me.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(d=s.conversation.current)==null?void 0:d.id,data:{entities:o.payload}});break;case ct.toString():t.logSendMessage(o.payload);break;case Eo.toString():t.emit("call-to-action",{cue:o.payload});break;case se.fulfilled.toString():if(!o.isBroadcasted){let{externalConversationId:h,currentExternalIdAtRequest:m}=(l=o.payload)!=null?l:{};(!h||!m||h===m)&&t.broadcast(qs,o,!1)}break;case se.rejected.toString():break;default:break}let a=n(o);switch(o.type){case ct.toString():t.handleAfterSendMessage(o.payload);break;case Fn.toString():t.onUpdateShowTabHint(o.payload);break;case Rs.toString():t.logHandlingTime();break;case Ft.toString():t.broadcast(fo,o);break;case dt.toString():t.broadcast(fo,o);break;case ko.toString():e.dispatch(dt({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let h=s.assistants.cues.find(m=>m.code===o.meta.arg.data.assistantCode);t.emit("event",x(y({},o.meta.arg),{cue:h}));break}case ie.toString():{let{start:h,end:m}=s.input.selection;t.emit("select-suggestion",x(y({type:WS(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:h,end:m}:{start:0,end:m}})),r&&e.dispatch(Xe([]));break}case $d.toString():{let{keyword:h,suggestion:m,eventMetrics:g}=o.payload,{text:S,selection:T}=s.input,C=ku(S,h,(c=T==null?void 0:T.end)!=null?c:S.length);if(!C)break;t.emit("select-suggestion",{text:m,type:"style",replace:C,suggestion:{text:m,source:"style"},eventMetrics:g});break}case io.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(u=s.conversation.current)==null?void 0:u.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case Xe.toString():{i&&o.payload.length>0&&e.dispatch(ao(0));break}case se.fulfilled.toString():{let{evaluationId:h,output:m,externalConversationId:g}=o.payload,S=o.meta.arg.assistantCode;if(t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:h,assistantCode:S,assistantOutput:$a(m),externalConversationId:g,evaluationStatus:"success"}}),!o.meta.arg.skipState){let T=e.getState().assistants.cues;t.emit("cues",T)}break}case se.rejected.toString():{let h=o.meta.arg.assistantCode,m=(f=o.meta.arg.externalConversationId)!=null?f:(p=e.getState().conversation.current)==null?void 0:p.externalId;t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:"",assistantCode:h,assistantOutput:"",externalConversationId:m,evaluationStatus:"failed"}});break}default:break}return a},Ru=zS;import{createSelector as VS}from"@reduxjs/toolkit";function hi(t){return t.toISOString().replace("T"," ").replace("Z","")}var jS=(t,e)=>e.version,Pu=VS([Ht,xe,fu,jS],(t,e,n,o)=>{if(!e)return k.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(k.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:hi(s),timeStop:hi(r)}});function Iu(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}}var Vn=class extends Error{};function $S(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Ps=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 Vn("Queued async function is outdated"));let s=$S();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function yi(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return yi(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?yi(s,e):null}function vi(t,e){return yi(t,e)}var GS={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Lu=(t,e)=>{var s,r,i;if(!((i=(r=(s=t.uiConfig)==null?void 0:s.widget)==null?void 0:r.types.find(a=>a.type==="cues"))==null?void 0:i.isActive))return k.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[GS[e]];return o&&o.length>0?o.map(a=>a.code):(k.warn(`No assistant set in profile for conversation event "${e}"`),[])};function Au(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function qS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Si(t){return qS(t)&&(wt(t)||cs(t))}var Nu,ke=new Map,XS=["bottom","height","left","right","top","width"],Mu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:XS.some(n=>t[n]!==e[n]);function Ou(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,...Ou(e)]:[]}function Du(t,e){return!t||!e?null:x(y({},t),{top:t.top+e.top,left:t.left+e.left})}var Is=!1,_u=()=>{Is=!0;let t=[];if(ke.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),ke.delete(n);return}let o=n.getBoundingClientRect();Mu(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Du,e.rect):e.rect;Mu(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),ke.size===0){Is=!1;return}Nu=window.requestAnimationFrame(_u)};function xi(t,e){let n=Ou(t),o=[],s=n.map((r,i)=>xi(r,a=>{o[i]=a;let d=ke.get(t);if(!d)return;let l=o.reduce(Du,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),ke.has(t)){let i=ke.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else ke.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!Is&&_u()},unobserve(){s.forEach(i=>i.unobserve());let r=ke.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||ke.delete(t),ke.size||(cancelAnimationFrame(Nu),Is=!1)}}}}var Fu,Re=new Map,Hu=()=>{Re.forEach((t,e)=>{if(!e.isConnected){Re.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)))}),Re.size!==0&&(Fu=window.requestAnimationFrame(Hu))};function Bu(t,e){return{observe(){let n=Re.size===0;Re.has(t)?Re.get(t).callbacks.push(e):Re.set(t,{visible:void 0,callbacks:[e]}),n&&Hu()},unobserve(){let n=Re.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Re.delete(t),Re.size||cancelAnimationFrame(Fu)}}}}var bi=["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 Ci(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function sn(t){return Number.parseFloat(t)}function Ls(t){return Math.round(t*1e6)}function Uu(t){return t/1e6}function Ti(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=Uu(Ls(s)-Ls(r)-Ls(i)),l=Uu(Ls(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function As(t,e={}){var c,u;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",ft(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};Ci(o,n,bi),Ti(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Bu(t,()=>{Ci(o,n,bi),Ti(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=xi(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(Ci(o,n,bi),Ti(o,t,n),r(),e.placement==="below"&&n.classList.add("below"),n.style.top=`${p.top}px`,n.style.left=`${p.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let f=e.closestScrollElement.getBoundingClientRect(),h=window.getComputedStyle(e.closestScrollElement),m=sn(h.borderTopWidth),g=sn(h.borderBottomWidth),S=f.top+m-p.top,T=p.top+p.height+-(f.top+f.height-g);n.style.clipPath=`inset(${S}px 0px ${T}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(u=t.parentElement)==null||u.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function JS(t){return t.offsetParent!==null}function Ku(t){if(!JS(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 wi(t,e,n=100){let o=Ku(t);e({isVisible:o});let s=setInterval(()=>{let r=Ku(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Wu=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){k.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as F,jsxs as QS}from"react/jsx-runtime";var zu=Wu("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=ks}){this.inputMediator=null;this.eventListeners={};this.unmountHandlers=[];this.disposeHandlers=[];this.inlineSuggestions=null;this.aboveSuggestions=null;this.belowSuggestions=null;this.floatingMenu=null;this.widgetElement=null;this.widgetRoot=null;this.nicknameDialogUnsubscribe=null;this.nicknameDialogFailed=!1;this.dynamicThunkObject={};this.queues=new Ps;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new nt(l,{token:s,fetch:r}),this.version=n,this.instanceId=rn.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Ru({broadcast:(h,m,g)=>{this.broadcastEvents.send(h,m,g)},emit:(h,m)=>this.emit(h,m),handleAfterSendMessage:h=>this.handleAfterSendMessage(h),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:h=>this.logSendMessage(h),onUpdateShowTabHint:h=>zu.update(h),sendEvent:(h,m)=>this.deepdeskApi.sendEvent(h,m)})]};this.store=Eu(c),this.broadcastEvents=new pu({debug:!0,deepdeskUrl:l,eventMap:Aa(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 h;return(h=Q(this.state))!=null?h:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(Fn(zu.value())),this.store.dispatch(Ro({locale:o,adminUrl:l,productName:i}));let u=[],p=h=>{if(!h.conversationId)return;let m=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Ja(h))};this.hasConversation()?m():u.push(m)};this.ws.on("assistants::direct_response",p),this.ws.on("assistants::user_notification",p),this.ws.on("assistants::response_chunk",h=>{if(!h.conversationId)return;let m=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Xa(h))};this.hasConversation()?m():u.push(m)}),this.ws.on("assistants::suggest_as_reply",h=>{if(!h.conversationId)return;let m=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Ft([{text:h.payload.message,type:"text",source:"assistant",assistantCode:h.code,sourceLabel:h.name}]))};this.hasConversation()?m():u.push(m)});let f=this.whenConversationLoaded(()=>{var h;this.broadcastEvents.setExternalId((h=this.state.conversation.current)==null?void 0:h.externalId),u.forEach(m=>m()),u.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),u.length=0,f()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=lt(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?(k.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(k.warn("Profile has not been loaded (yet)"),!0):(k.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(Nt(null)),this.store.dispatch(Ne()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Ne())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(Ks({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(y({},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(Ws(x(y({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(zs(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(ro(e))).payload})}resetConversation(){this.store.dispatch(j()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(Ro(e))}setVisitorInfo(e){this.store.dispatch(xa(e))}setCustomData(e){this.store.dispatch(ba(e))}setAgentInfo(e,n){return v(this,null,function*(){var s;yield this.store.dispatch(gn(y(y({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(mo,{showNicknameDialog:!0})})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(js(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch($s())).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(lo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()}))}notifyExternalSuggestion(e){this.store.dispatch(ie(e))}evaluateAssistant(e,n){return v(this,null,function*(){var l;let{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i,externalConversationId:a}=n||{},d=yield this.store.dispatch(se({assistantCode:e,transcript:s,includeMetadata:i,input:o,externalConversationId:a,skipState:!r}));if(d.error)throw new Error(`Assistant evaluation failed: ${(l=d.payload)!=null?l:d.error.message}`);return d.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){var c,p;yield this.loadProfileConfig();let o=this.state.profile.data;if(!o){k.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Lu(o,e),r=(c=n==null?void 0:n.showCuesInWidget)!=null?c:!0,u=n!=null?n:{},{showCuesInWidget:i}=u,a=N(u,["showCuesInWidget"]),d=(p=n==null?void 0:n.externalConversationId)!=null?p:this.hasConversation()?this.externalId():"",l=yield Promise.all(s.map(f=>this.queues.push(f,()=>v(this,null,function*(){var m,g;let h=yield this.store.dispatch(se(x(y({assistantCode:f,includeMetadata:!0},a),{skipState:!r})));if(h.error)throw new Error(`Assistant evaluation failed: ${(m=h.payload)!=null?m:h.error.message}`);return{assistantCode:f,evaluationId:h.payload.evaluationId,output:h.payload.output,externalConversationId:(g=h.payload.externalConversationId)!=null?g:d}})).catch(h=>{if(h instanceof Vn)return k.warn(`Queued assistant "${f}" was outdated and dropped`),null;throw h})));if(!r)return l.filter(f=>f!==null)})}handleKeyDown(e){let{overlayCollapsed:n,openOverlayWhenTyping:o}=this.state.ui,{textSuggestions:s,selectedSuggestionIndex:r,selection:i}=this.state.input,{inlineSuggestions:a,autoSelectSuggestion:d,showTextSuggestions:l,suggestionsPlacement:c}=this.settings,u=a||d,p=c==="inline"||c==="below"?"below":"above",f=s.length>0;if(this.store.dispatch(aa(Vs(e))),!Ee(this.state)||e.key!=="Tab"&&!l)return;let h=()=>{n||!f||i&&(e.shiftKey||(this.store.dispatch(ca()),e.preventDefault()))},m=()=>{n||!f||u&&r<=0||i&&(e.shiftKey||(this.store.dispatch(ua()),e.preventDefault()))};switch(e.key){case"ArrowUp":p==="below"?m():h();break;case"ArrowDown":{p==="below"?h():m();break}case"Escape":{n||(this.store.dispatch(ao(-1)),this.store.dispatch(Ye({collapse:!0})),this.store.dispatch(Md(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let g=_t(this.state);if(!g)return;this.store.dispatch(Fn(!1)),this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(u||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(u||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(Ye({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Xe([]))}handlingTimeStart(){this.state.handlingTime.startTime||(k.info("Start handling time"),this.store.dispatch(yu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(k.info("Stop handling time"),this.store.dispatch(Rs()))}logSendMessage(e){let n=Iu(this.state,{version:this.version});n&&(e&&(Object.assign(n,{text:e}),Object.assign(n,{lenTextTotal:e.length})),this.deepdeskApi.sendEvent("Send Message",{conversationId:this.conversationId(),data:n}),this.emit("send-message-event",n))}logHandlingTime(){let e=Pu(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(vu()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(ct((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){k.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),k.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]=As(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]=As(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 ft(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),k.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()?(k.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(pa(o.metrics))):k.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(!Si(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=N(p,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),ft(e),this.inputMediator=a||(wt(e)?new tn(e):new en(e)),this.inputMediator.on("change",({plainText:f,rawHTML:h,suggestionTextStart:m})=>{this.store.dispatch(lo({text:f,html:h,suggestionTextStart:m}))}),this.inputMediator.on("keyup",f=>{this.store.dispatch(la(Vs(f)))}),this.inputMediator.on("keydown",f=>{this.handleKeyDown(f)}),this.inputMediator.on("paste",({pastedText:f,selectionText:h})=>{this.store.dispatch(da({text:f,selectionText:h}))}),this.inputMediator.on("cut",({selectionText:f})=>{this.store.dispatch(ia(f))});let c;this.inputMediator.on("selection",f=>{clearTimeout(c),f===null?c=setTimeout(()=>{f!==null&&this.store.dispatch(co(f))},500):this.store.dispatch(co(f))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var f;(f=this.inputMediator)==null||f.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(Zo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Zo(!0))}),this.renderSuggestions(e,l),this.subscribe(gt("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(gt("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let u=this.renderOverlays(n);this.unmountHandlers.push(()=>{u.unmount()}),this.store.dispatch(lo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()})),this.store.dispatch(co(this.inputMediator.getSelection())),this.store.dispatch(Zo(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions(),this.promptForNickname()}),this.isMounted=!0}promptForNickname(e){if(this.nicknameDialogUnsubscribe||this.nicknameDialogFailed)return;let n=this.createContainer("nickname-dialog",document.body);document.body.appendChild(n);let o=ot(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(F(Ke,{store:this.store,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Jd,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>v(this,null,function*(){try{yield this.store.dispatch(va({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(mo,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){k.error("Error setting agent nickname",d),r("error"),this.nicknameDialogFailed=!0}})})})}))};i(),this.nicknameDialogUnsubscribe=()=>{o.unmount(),n.remove(),this.nicknameDialogUnsubscribe=null}}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,r;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.belowSuggestions)==null||o.unmount(),(s=this.floatingMenu)==null||s.unmount(),this.unmountHandlers.forEach(i=>i()),this.unmountHandlers=[],(r=this.inputMediator)==null||r.dispose(),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r,i;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),(i=this.belowSuggestions)==null||i.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions||this.settings.suggestionsPlacement==="inline"?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.settings.suggestionsPlacement==="below"?this.belowSuggestions=this.renderAboveOrBelowSuggestions(e,n,"below"):this.aboveSuggestions=this.renderAboveOrBelowSuggestions(e,n,"above")}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=ot(s);r.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(qd,{})})}));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()}}}renderAboveOrBelowSuggestions(e,n,o){let{customStyles:s,closestScrollSelector:r,appendOverlayTo:i}=n,a=r&&vi(e,r)||void 0,[d,l]=this.overlayContainerFactory("deepdesk-tab-completion",a||e,{appendTo:i,closestScrollElement:a,mirrorOverflow:!0,onRemove:()=>this.unmount()},s==null?void 0:s.rootNode),[c,u]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),p=ot(d);p.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(kc,{inputElement:e})})}));let f=ot(c);return f.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(ic,{onLogIn:()=>this.loginViaPopup().catch(h=>k.warn(h.message))})})})),{unmount(){p.unmount(),f.unmount(),l(),u()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&vi(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=ot(d);return c.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Ld,{onLogIn:()=>this.loginViaPopup().catch(u=>k.warn(u.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=ot(o);return s.render(F(Ke,{store:this.store,customStyles:n,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(wd,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&k.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=ot(e),this.widgetRoot.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(iu,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>k.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=ot(n);return i.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(li,{children:QS(_o,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:kn,children:[F(ln,{children:F(Ho,{title:o.title,emptyState:o.emptyState})}),F(ai,{children:F(Fo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=wi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Au(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(Ln());let e=St(this.state);e&&this.store.dispatch(Ro({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)=>{this.store.dispatch(to());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",u),clearInterval(p)};r.onmessage=f=>v(this,null,function*(){var h,m;if((h=f.data)!=null&&h.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((m=f.data)==null?void 0:m.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(fn),d=!0,s.port1.close(),n()}catch(g){console.error(g),o(g)}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 u=f=>v(this,null,function*(){var h;if(f.origin===a.origin)switch((h=f.data)==null?void 0:h.type){case"deepdesk-popup-request-origin":{try{let m=JSON.stringify({type:"deepdesk-popup-parent-origin"});c==null||c.postMessage(m,a.origin)}catch(m){k.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-loaded":{try{let m=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(m,a.origin,[s.port2])}catch(m){k.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-error":{if(l(),f.data.message==="Platform account url mismatch"){let m=`Please contact your administrator: The platform account url (${f.data.targetOrigin}) is misconfigured as it differs from the origin of the page that opened the popup (${f.data.openerOrigin}).`;k.warn(m),this.store.dispatch(Us(m)),o(new Error(m))}if(f.data.message==="Timeout"){let m="Please contact your administrator: Popup timed out. Check if the account's platform url is configured correctly.";k.warn(m),this.store.dispatch(Us(m)),o(new Error(m))}o(new Error(f.data.message));break}}});window.addEventListener("message",u);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(Xo()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=An(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(me());break;case"pinned-messages":case"sticky-messages":break;default:Zn.includes(o)||this.store.dispatch(fe(o))}})}catch(o){this.handleError(o)}})}};rn.version="19.3.2-beta.1",rn.count=0;var Ms=rn;function ZS(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 YS(t,e){return v(this,null,function*(){let n=yield ZS(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 ex(t,e,n){return v(this,null,function*(){yield new nt(t).authenticateWithKey(e,n)})}function tx(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function nx(o,s){return v(this,arguments,function*(t,e,n={}){var u,p;let{value:r}=t,{start:i,end:a}=(u=n.replace)!=null?u:{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 ox(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?kt(t,n.replace.start,n.replace.end):zn(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
|
+
`);let h=p?o:0,m=f?Math.min(r,c.childNodes.length):c.childNodes.length;for(let g=h;g<m&&(l(c.childNodes[g]),a!==2);g++);break}default:break}f&&(a=2)}return l(t),d}var lu=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(lu||{}),nt=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedSuggestionTextStart=0;this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedSuggestionTextStart=this.getSuggestionTextStart(),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.getSuggestionTextStart(),r=this.cachedCaretPosition===null;if(!this.isActive)return;e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit");let i=e!==this.cachedText,a=n!==null&&n!==this.cachedHTML,d=s!==this.cachedSuggestionTextStart;if((i||a||d)&&(i?(this.cachedText=e,this.cachedHTML=n):a&&(this.cachedHTML=n),this.cachedSuggestionTextStart=s,r=!0,this.emit("change",{plainText:e,rawHTML:n,suggestionTextStart:s})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,r=!0,this.emit("selection",o)),!r)return;let l=this.getCaretPosition();qe(l,this.cachedCaretPosition)||(this.cachedCaretPosition=l,this.emit("caretposition",l))}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(lu).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()})}getSuggestionTextStart(){return 0}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 du(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var en=class extends nt{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Es(this.element,n)}getHTML(){return this.element.innerHTML||""}getRange(){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=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!du(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!du(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return ws(this.element,n);let o=this.lastKnownSelection;if(o&&au(this.element,o.start,o.end))return o;let s=zn(this.element);return s.collapse(!1),ws(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Es(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 AS=["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 cu(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",AS.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 tn=class extends nt{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 cu(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 uu(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 MS(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var di=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()}},ci=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=uu(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()}},ui=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(),k.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 ci(e,this.deepdeskUrl,{debug:!0}):new di(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=MS(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(k.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;k.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(y({},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)}},pu=ui;function NS(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function B(t){return Array.isArray(t)?t.map(B):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(y({},e),{[NS(n)]:B(t[n])}),{}):t}function OS(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function te(t){return Array.isArray(t)?t.map(te):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>x(y({},e),{[OS(n)]:te(t[n])}),{}):t}var nn=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var pi=t=>new Promise(e=>{setTimeout(e,t)});var Rt=class extends nn{constructor(){super(...arguments);this.name="ClientError"}},mi=class extends nn{constructor(){super(...arguments);this.name="ServerError"}},gi=new Map;function DS(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:(k.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var on=class{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};this.refreshingToken=null;this.lastFailedRefreshAt=null;this.failedRefreshCooldown=1e4;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",L=n,{useCache:l=!1,abortLatest:c=!1,attempts:u=1,retryDelay:p=500,refreshTokenOn401:f=!0,retryOnError:h=_=>_ instanceof TypeError,retryOnResponse:m=_=>_.status>=500,version:g=null}=L,S=N(L,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(gi.has(i)){o(gi.get(i));return}}let T=x(y({credentials:"include"},S),{headers:y({Accept:"application/json","Content-Type":"application/json"},S.headers)});!d&&this.csrfToken&&(T.headers=x(y({},T.headers),{"X-CSRFToken":this.csrfToken})),typeof g=="string"&&(T.headers=x(y({},T.headers),{"X-Deepdesk-API-Version":g}));let C=u,w=!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 P=()=>v(this,null,function*(){return C--,a(i,T).then(_=>v(this,null,function*(){return m(_)&&!r.isAborted&&C>0?(yield pi(p),P()):_.status===401&&f===!0&&w===!1?(w=!0,yield this.refreshToken(),P()):_})).catch(_=>v(this,null,function*(){if(h(_)&&!r.isAborted&&C>0)return yield pi(p),P();throw _}))});P().then(_=>v(this,null,function*(){let V=yield DS(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new mi("Server Error",V));return}if(_.status===401){s(new Rt("Unauthorized",V));return}if(_.status===403){s(new Rt("Forbidden",V));return}if(_.status===404){s(new Rt("Not Found",V));return}if(_.status>=400){s(new Rt("Bad Request",V));return}l&&gi.set(i,V),o(V)})).catch(_=>{s(_)})})}validateToken(){return v(this,null,function*(){let e,n,o;try{({has_valid_access_token:e,is_logged_in:n,has_valid_refresh_token:o}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1}))}catch(s){return!1}if(!e){if(!o)return!1;try{yield this.refreshToken();let{is_logged_in:s}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1});return s}catch(s){return!1}}return n})}refreshToken(){let e=Date.now();return this.lastFailedRefreshAt&&e-this.lastFailedRefreshAt<this.failedRefreshCooldown?Promise.reject(new Rt("Unauthorized","Failed to refresh token")):this.refreshingToken?this.refreshingToken:(this.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).catch(n=>{throw(n==null?void 0:n.message)==="Unauthorized"&&(this.lastFailedRefreshAt=Date.now()),n}).finally(()=>{this.refreshingToken=null}),this.refreshingToken)}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,y({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,y({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,y({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,y({method:"DELETE"},n))}};var gu;(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={}))})(gu||(gu={}));function fi(t){return x(y({},B(t)),{metadata:t.metadata})}var Pt=class Pt{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?(Pt.exchangeTokenPromise||(Pt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),Pt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),k.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",x(y({chat_start_time:new Date().toISOString()},te(e)),{metadata:(o=e.metadata)!=null?o:{}}));return fi(n)})}getMe(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/me/");return B(e)})}postIdentity(e){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",te(e))})}patchMe(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",te(e));return B(n)})}getProfile(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return B(n)})}getKnowledgeAssistant(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return B(n)})}getContentTypes(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return B(e)})}getAccount(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return B(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 B(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(),k.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 k.info(`Successfully retrieved conversation ${i.id} for session ${e}`),fi(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){k.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=te(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return fi(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(y({},te(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=N(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>x(y({},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",te(x(y(y({},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 k.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/",te(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}`,te(n),{abortLatest:!0})).map(i=>x(y({},B(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`,te(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 B(n).map(o=>x(y({},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",te(e),{abortLatest:!0,version:"v2"});return B(n)})}search(e){return v(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,te(e));return B(n)})}loginWithPassword(e,n){return v(this,null,function*(){yield this.preflight();let o=yield this.client.post("/apis/admin/session/login/",{username:e,password:n},{refreshTokenOn401:!1});return B(o)})}logout(){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/logout/",{},{refreshTokenOn401:!1})})}requestLoginByEmail(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return B(n)})}requestPasswordlessToken(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return B(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 B(n)})}evaluateAssistant(e,n){return v(this,null,function*(){var i;yield this.preflight();let o=new URLSearchParams;n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let s=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()}`,r=yield this.client.post(s,{input:(i=n==null?void 0:n.input)!=null?i:{},conversation:n==null?void 0:n.transcript});return B(r)})}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 B(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 B(r)})}translateMessages(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",te(e));return B(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(Wi);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&k.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};Pt.exchangeTokenPromise=null;var ot=Pt;var ks=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=B(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{combineReducers as BS,configureStore as US}from"@reduxjs/toolkit";import{createSlice as _S}from"@reduxjs/toolkit";var mu={startTime:null,stopTime:null},fu=t=>t.handlingTime,hu=_S({name:"handlingTime",initialState:mu,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(j,()=>mu)}}),{handlingTimeStart:yu,handlingTimeStop:Rs,handlingTimeReset:vu}=hu.actions,Su=hu.reducer;var xu=(t={})=>{let e=y({onAuthError:Nt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var bu=(t={})=>{let e,n=!0,o=y({getStyleSuggestions:Ct,debounce:500},t);return s=>r=>i=>{var f;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(!((f=l.conversation.current)==null?void 0:f.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 FS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var Cu=(t={})=>{let e=y({getTextSuggestions:fe,getAutocompleteSuggestions:_n,debounce:200,check:Ee},t),n;return o=>s=>r=>{var m;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,u=(m=d.conversation.current)==null?void 0:m.id,p=r.type===Xo.toString();if(!u||!l&&!c)return a;let{input:f}=d;return FS(f,i)&&!p||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let g=lt(d);g===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(g))},p?0:e.debounce)),a}};var Tu=Ct.fulfilled.toString();function HS(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 wu=t=>e=>n=>o=>{var l;if(o.type!==Tu){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=HS(s,i);o.type===Tu&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var KS=BS({assistants:Qa,auth:Ji,conversation:ta,contentTypes:Al,passwordlessToken:Lc,entities:sd,handlingTime:Su,info:wa,input:ma,settings:Ya,profile:_l,search:La,styleSuggestions:Gd,ui:Od,textSuggestions:vd});function Eu(t){return US({reducer:KS,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(xu()).concat(Cu({debounce:200})).concat(bu({debounce:500})).concat(wu(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function ku(t,e,n){if(e==="")return null;let o=new RegExp(`\\b${ps(e)}\\b`,"gi"),s,r=null;for(;(s=o.exec(t))!==null&&!(s.index>n);)r={start:s.index,end:s.index+s[0].length};return r}var WS=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},zS=t=>e=>n=>o=>{var d,l,c,u,p,f;let s=e.getState(),r=mt("inlineSuggestions")(s),i=mt("autoSelectSuggestion")(s)||r;switch(o.type){case Nt.toString():{!o.payload&&t.emit("logout",void 0);break}case eo.fulfilled.toString():{t.emit("logout",void 0);break}case me.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(d=s.conversation.current)==null?void 0:d.id,data:{entities:o.payload}});break;case ut.toString():t.logSendMessage(o.payload);break;case Eo.toString():t.emit("call-to-action",{cue:o.payload});break;case se.fulfilled.toString():if(!o.isBroadcasted){let{externalConversationId:h,currentExternalIdAtRequest:m}=(l=o.payload)!=null?l:{};(!h||!m||h===m)&&t.broadcast(qs,o,!1)}break;case se.rejected.toString():break;default:break}let a=n(o);switch(o.type){case ut.toString():t.handleAfterSendMessage(o.payload);break;case Fn.toString():t.onUpdateShowTabHint(o.payload);break;case Rs.toString():t.logHandlingTime();break;case Ft.toString():t.broadcast(fo,o);break;case ct.toString():t.broadcast(fo,o);break;case ko.toString():e.dispatch(ct({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let h=s.assistants.cues.find(m=>m.code===o.meta.arg.data.assistantCode);t.emit("event",x(y({},o.meta.arg),{cue:h}));break}case ie.toString():{let{start:h,end:m}=s.input.selection;t.emit("select-suggestion",x(y({type:WS(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:h,end:m}:{start:0,end:m}})),r&&e.dispatch(Xe([]));break}case $d.toString():{let{keyword:h,suggestion:m,eventMetrics:g}=o.payload,{text:S,selection:T}=s.input,C=ku(S,h,(c=T==null?void 0:T.end)!=null?c:S.length);if(!C)break;t.emit("select-suggestion",{text:m,type:"style",replace:C,suggestion:{text:m,source:"style"},eventMetrics:g});break}case io.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(u=s.conversation.current)==null?void 0:u.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case Xe.toString():{i&&o.payload.length>0&&e.dispatch(ao(0));break}case se.fulfilled.toString():{let{evaluationId:h,output:m,externalConversationId:g}=o.payload,S=o.meta.arg.assistantCode;if(t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:h,assistantCode:S,assistantOutput:$a(m),externalConversationId:g,evaluationStatus:"success"}}),!o.meta.arg.skipState){let T=e.getState().assistants.cues;t.emit("cues",T)}break}case se.rejected.toString():{let h=o.meta.arg.assistantCode,m=(f=o.meta.arg.externalConversationId)!=null?f:(p=e.getState().conversation.current)==null?void 0:p.externalId;t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:"",assistantCode:h,assistantOutput:"",externalConversationId:m,evaluationStatus:"failed"}});break}default:break}return a},Ru=zS;import{createSelector as VS}from"@reduxjs/toolkit";function hi(t){return t.toISOString().replace("T"," ").replace("Z","")}var jS=(t,e)=>e.version,Pu=VS([Ht,xe,fu,jS],(t,e,n,o)=>{if(!e)return k.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(k.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:hi(s),timeStop:hi(r)}});function Iu(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}}var Vn=class extends Error{};function $S(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Ps=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 Vn("Queued async function is outdated"));let s=$S();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function yi(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return yi(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?yi(s,e):null}function vi(t,e){return yi(t,e)}var GS={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Lu=(t,e)=>{var s,r,i;if(!((i=(r=(s=t.uiConfig)==null?void 0:s.widget)==null?void 0:r.types.find(a=>a.type==="cues"))==null?void 0:i.isActive))return k.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[GS[e]];return o&&o.length>0?o.map(a=>a.code):(k.warn(`No assistant set in profile for conversation event "${e}"`),[])};function Au(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function qS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Si(t){return qS(t)&&(wt(t)||cs(t))}var Nu,ke=new Map,XS=["bottom","height","left","right","top","width"],Mu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:XS.some(n=>t[n]!==e[n]);function Ou(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,...Ou(e)]:[]}function Du(t,e){return!t||!e?null:x(y({},t),{top:t.top+e.top,left:t.left+e.left})}var Is=!1,_u=()=>{Is=!0;let t=[];if(ke.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),ke.delete(n);return}let o=n.getBoundingClientRect();Mu(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Du,e.rect):e.rect;Mu(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),ke.size===0){Is=!1;return}Nu=window.requestAnimationFrame(_u)};function xi(t,e){let n=Ou(t),o=[],s=n.map((r,i)=>xi(r,a=>{o[i]=a;let d=ke.get(t);if(!d)return;let l=o.reduce(Du,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),ke.has(t)){let i=ke.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else ke.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!Is&&_u()},unobserve(){s.forEach(i=>i.unobserve());let r=ke.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||ke.delete(t),ke.size||(cancelAnimationFrame(Nu),Is=!1)}}}}var Fu,Re=new Map,Hu=()=>{Re.forEach((t,e)=>{if(!e.isConnected){Re.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)))}),Re.size!==0&&(Fu=window.requestAnimationFrame(Hu))};function Bu(t,e){return{observe(){let n=Re.size===0;Re.has(t)?Re.get(t).callbacks.push(e):Re.set(t,{visible:void 0,callbacks:[e]}),n&&Hu()},unobserve(){let n=Re.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Re.delete(t),Re.size||cancelAnimationFrame(Fu)}}}}var bi=["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 Ci(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function sn(t){return Number.parseFloat(t)}function Ls(t){return Math.round(t*1e6)}function Uu(t){return t/1e6}function Ti(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=Uu(Ls(s)-Ls(r)-Ls(i)),l=Uu(Ls(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function As(t,e={}){var c,u;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",ht(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};Ci(o,n,bi),Ti(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Bu(t,()=>{Ci(o,n,bi),Ti(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=xi(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(Ci(o,n,bi),Ti(o,t,n),r(),e.placement==="below"&&n.classList.add("below"),n.style.top=`${p.top}px`,n.style.left=`${p.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let f=e.closestScrollElement.getBoundingClientRect(),h=window.getComputedStyle(e.closestScrollElement),m=sn(h.borderTopWidth),g=sn(h.borderBottomWidth),S=f.top+m-p.top,T=p.top+p.height+-(f.top+f.height-g);n.style.clipPath=`inset(${S}px 0px ${T}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(u=t.parentElement)==null||u.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function JS(t){return t.offsetParent!==null}function Ku(t){if(!JS(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 wi(t,e,n=100){let o=Ku(t);e({isVisible:o});let s=setInterval(()=>{let r=Ku(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Wu=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){k.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as F,jsxs as QS}from"react/jsx-runtime";var zu=Wu("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=ks}){this.inputMediator=null;this.eventListeners={};this.unmountHandlers=[];this.disposeHandlers=[];this.inlineSuggestions=null;this.aboveSuggestions=null;this.belowSuggestions=null;this.floatingMenu=null;this.widgetElement=null;this.widgetRoot=null;this.nicknameDialogUnsubscribe=null;this.nicknameDialogFailed=!1;this.dynamicThunkObject={};this.queues=new Ps;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new ot(l,{token:s,fetch:r}),this.version=n,this.instanceId=rn.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Ru({broadcast:(h,m,g)=>{this.broadcastEvents.send(h,m,g)},emit:(h,m)=>this.emit(h,m),handleAfterSendMessage:h=>this.handleAfterSendMessage(h),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:h=>this.logSendMessage(h),onUpdateShowTabHint:h=>zu.update(h),sendEvent:(h,m)=>this.deepdeskApi.sendEvent(h,m)})]};this.store=Eu(c),this.broadcastEvents=new pu({debug:!0,deepdeskUrl:l,eventMap:Aa(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 h;return(h=Q(this.state))!=null?h:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(Fn(zu.value())),this.store.dispatch(Ro({locale:o,adminUrl:l,productName:i}));let u=[],p=h=>{if(!h.conversationId)return;let m=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Ja(h))};this.hasConversation()?m():u.push(m)};this.ws.on("assistants::direct_response",p),this.ws.on("assistants::user_notification",p),this.ws.on("assistants::response_chunk",h=>{if(!h.conversationId)return;let m=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Xa(h))};this.hasConversation()?m():u.push(m)}),this.ws.on("assistants::suggest_as_reply",h=>{if(!h.conversationId)return;let m=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Ft([{text:h.payload.message,type:"text",source:"assistant",assistantCode:h.code,sourceLabel:h.name}]))};this.hasConversation()?m():u.push(m)});let f=this.whenConversationLoaded(()=>{var h;this.broadcastEvents.setExternalId((h=this.state.conversation.current)==null?void 0:h.externalId),u.forEach(m=>m()),u.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),u.length=0,f()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=dt(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?(k.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(k.warn("Profile has not been loaded (yet)"),!0):(k.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(Nt(null)),this.store.dispatch(Ne()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Ne())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(Ks({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(y({},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(Ws(x(y({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(zs(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(ro(e))).payload})}resetConversation(){this.store.dispatch(j()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(Ro(e))}setVisitorInfo(e){this.store.dispatch(xa(e))}setCustomData(e){this.store.dispatch(ba(e))}setAgentInfo(e,n){return v(this,null,function*(){var s;yield this.store.dispatch(gn(y(y({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(mo,{showNicknameDialog:!0})})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(js(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch($s())).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(lo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()}))}notifyExternalSuggestion(e){this.store.dispatch(ie(e))}evaluateAssistant(e,n){return v(this,null,function*(){var l;let{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i,externalConversationId:a}=n||{},d=yield this.store.dispatch(se({assistantCode:e,transcript:s,includeMetadata:i,input:o,externalConversationId:a,skipState:!r}));if(d.error)throw new Error(`Assistant evaluation failed: ${(l=d.payload)!=null?l:d.error.message}`);return d.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){var c,u,f;yield this.loadProfileConfig();let o=this.state.profile.data;if(!o&&((c=this.state.conversation.current)!=null&&c.profileCode)&&(yield this.loadProfileConfig(),o=this.state.profile.data),!o){k.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Lu(o,e),r=(u=n==null?void 0:n.showCuesInWidget)!=null?u:!0,p=n!=null?n:{},{showCuesInWidget:i}=p,a=N(p,["showCuesInWidget"]),d=(f=n==null?void 0:n.externalConversationId)!=null?f:this.hasConversation()?this.externalId():"",l=yield Promise.all(s.map(h=>this.queues.push(h,()=>v(this,null,function*(){var g,S;let m=yield this.store.dispatch(se(x(y({assistantCode:h,includeMetadata:!0},a),{skipState:!r})));if(m.error)throw new Error(`Assistant evaluation failed: ${(g=m.payload)!=null?g:m.error.message}`);return{assistantCode:h,evaluationId:m.payload.evaluationId,output:m.payload.output,externalConversationId:(S=m.payload.externalConversationId)!=null?S:d}})).catch(m=>{if(m instanceof Vn)return k.warn(`Queued assistant "${h}" was outdated and dropped`),null;throw m})));if(!r)return l.filter(h=>h!==null)})}handleKeyDown(e){let{overlayCollapsed:n,openOverlayWhenTyping:o}=this.state.ui,{textSuggestions:s,selectedSuggestionIndex:r,selection:i}=this.state.input,{inlineSuggestions:a,autoSelectSuggestion:d,showTextSuggestions:l,suggestionsPlacement:c}=this.settings,u=a||d,p=c==="inline"||c==="below"?"below":"above",f=s.length>0;if(this.store.dispatch(aa(Vs(e))),!Ee(this.state)||e.key!=="Tab"&&!l)return;let h=()=>{n||!f||i&&(e.shiftKey||(this.store.dispatch(ca()),e.preventDefault()))},m=()=>{n||!f||u&&r<=0||i&&(e.shiftKey||(this.store.dispatch(ua()),e.preventDefault()))};switch(e.key){case"ArrowUp":p==="below"?m():h();break;case"ArrowDown":{p==="below"?h():m();break}case"Escape":{n||(this.store.dispatch(ao(-1)),this.store.dispatch(et({collapse:!0})),this.store.dispatch(Md(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let g=_t(this.state);if(!g)return;this.store.dispatch(Fn(!1)),this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(u||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(u||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(et({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Xe([]))}handlingTimeStart(){this.state.handlingTime.startTime||(k.info("Start handling time"),this.store.dispatch(yu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(k.info("Stop handling time"),this.store.dispatch(Rs()))}logSendMessage(e){let n=Iu(this.state,{version:this.version});n&&(e&&(Object.assign(n,{text:e}),Object.assign(n,{lenTextTotal:e.length})),this.deepdeskApi.sendEvent("Send Message",{conversationId:this.conversationId(),data:n}),this.emit("send-message-event",n))}logHandlingTime(){let e=Pu(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(vu()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(ut((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){k.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),k.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]=As(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]=As(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 ht(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),k.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()?(k.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(pa(o.metrics))):k.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(!Si(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=N(p,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),ht(e),this.inputMediator=a||(wt(e)?new tn(e):new en(e)),this.inputMediator.on("change",({plainText:f,rawHTML:h,suggestionTextStart:m})=>{this.store.dispatch(lo({text:f,html:h,suggestionTextStart:m}))}),this.inputMediator.on("keyup",f=>{this.store.dispatch(la(Vs(f)))}),this.inputMediator.on("keydown",f=>{this.handleKeyDown(f)}),this.inputMediator.on("paste",({pastedText:f,selectionText:h})=>{this.store.dispatch(da({text:f,selectionText:h}))}),this.inputMediator.on("cut",({selectionText:f})=>{this.store.dispatch(ia(f))});let c;this.inputMediator.on("selection",f=>{clearTimeout(c),f===null?c=setTimeout(()=>{f!==null&&this.store.dispatch(co(f))},500):this.store.dispatch(co(f))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var f;(f=this.inputMediator)==null||f.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(Zo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Zo(!0))}),this.renderSuggestions(e,l),this.subscribe(mt("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(mt("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let u=this.renderOverlays(n);this.unmountHandlers.push(()=>{u.unmount()}),this.store.dispatch(lo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()})),this.store.dispatch(co(this.inputMediator.getSelection())),this.store.dispatch(Zo(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions(),this.promptForNickname()}),this.isMounted=!0}promptForNickname(e){if(this.nicknameDialogUnsubscribe||this.nicknameDialogFailed)return;let n=this.createContainer("nickname-dialog",document.body);document.body.appendChild(n);let o=st(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(F(Ke,{store:this.store,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Jd,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>v(this,null,function*(){try{yield this.store.dispatch(va({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(mo,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){k.error("Error setting agent nickname",d),r("error"),this.nicknameDialogFailed=!0}})})})}))};i(),this.nicknameDialogUnsubscribe=()=>{o.unmount(),n.remove(),this.nicknameDialogUnsubscribe=null}}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,r;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.belowSuggestions)==null||o.unmount(),(s=this.floatingMenu)==null||s.unmount(),this.unmountHandlers.forEach(i=>i()),this.unmountHandlers=[],(r=this.inputMediator)==null||r.dispose(),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r,i;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),(i=this.belowSuggestions)==null||i.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions||this.settings.suggestionsPlacement==="inline"?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.settings.suggestionsPlacement==="below"?this.belowSuggestions=this.renderAboveOrBelowSuggestions(e,n,"below"):this.aboveSuggestions=this.renderAboveOrBelowSuggestions(e,n,"above")}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=st(s);r.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(qd,{})})}));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()}}}renderAboveOrBelowSuggestions(e,n,o){let{customStyles:s,closestScrollSelector:r,appendOverlayTo:i}=n,a=r&&vi(e,r)||void 0,[d,l]=this.overlayContainerFactory("deepdesk-tab-completion",a||e,{appendTo:i,closestScrollElement:a,mirrorOverflow:!0,onRemove:()=>this.unmount()},s==null?void 0:s.rootNode),[c,u]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),p=st(d);p.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(kc,{inputElement:e})})}));let f=st(c);return f.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(ic,{onLogIn:()=>this.loginViaPopup().catch(h=>k.warn(h.message))})})})),{unmount(){p.unmount(),f.unmount(),l(),u()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&vi(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=st(d);return c.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Ld,{onLogIn:()=>this.loginViaPopup().catch(u=>k.warn(u.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=st(o);return s.render(F(Ke,{store:this.store,customStyles:n,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(wd,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&k.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(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(iu,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>k.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(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(li,{children:QS(_o,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:kn,children:[F(ln,{children:F(Ho,{title:o.title,emptyState:o.emptyState})}),F(ai,{children:F(Fo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=wi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Au(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfig(){var e;return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(e=this.state.conversation.current)!=null&&e.profileCode?(this.loadProfileConfigPromise=Promise.resolve().then(()=>v(this,null,function*(){yield this.store.dispatch(Ln()).unwrap();let n=Ye(this.state);n&&this.store.dispatch(Ro({showSearch:n.search,showImageSearch:n.imageSearch,showEntitiesCommand:n.entitiesCommand,showSummaryCommand:!!n.summarizerAssistantNew,showKnowledgeSearch:!!n.knowledgeAssistantNew||!!n.knowledgeAssistant,recommendTextSuggestions:n.recommendTextSuggestions}))})).finally(()=>{Ye(this.state)||(this.loadProfileConfigPromise=null)}),this.loadProfileConfigPromise):Promise.resolve()}loginViaPopup(e){return v(this,null,function*(){return new Promise((n,o)=>{this.store.dispatch(to());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",u),clearInterval(p)};r.onmessage=f=>v(this,null,function*(){var h,m;if((h=f.data)!=null&&h.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((m=f.data)==null?void 0:m.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(fn),d=!0,s.port1.close(),n()}catch(g){console.error(g),o(g)}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 u=f=>v(this,null,function*(){var h;if(f.origin===a.origin)switch((h=f.data)==null?void 0:h.type){case"deepdesk-popup-request-origin":{try{let m=JSON.stringify({type:"deepdesk-popup-parent-origin"});c==null||c.postMessage(m,a.origin)}catch(m){k.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-loaded":{try{let m=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(m,a.origin,[s.port2])}catch(m){k.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-error":{if(l(),f.data.message==="Platform account url mismatch"){let m=`Please contact your administrator: The platform account url (${f.data.targetOrigin}) is misconfigured as it differs from the origin of the page that opened the popup (${f.data.openerOrigin}).`;k.warn(m),this.store.dispatch(Us(m)),o(new Error(m))}if(f.data.message==="Timeout"){let m="Please contact your administrator: Popup timed out. Check if the account's platform url is configured correctly.";k.warn(m),this.store.dispatch(Us(m)),o(new Error(m))}o(new Error(f.data.message));break}}});window.addEventListener("message",u);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(Xo()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=An(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(me());break;case"pinned-messages":case"sticky-messages":break;default:Zn.includes(o)||this.store.dispatch(fe(o))}})}catch(o){this.handleError(o)}})}};rn.version="19.3.2-beta.2",rn.count=0;var Ms=rn;function ZS(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 YS(t,e){return v(this,null,function*(){let n=yield ZS(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 ex(t,e,n){return v(this,null,function*(){yield new ot(t).authenticateWithKey(e,n)})}function tx(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function nx(o,s){return v(this,arguments,function*(t,e,n={}){var u,p;let{value:r}=t,{start:i,end:a}=(u=n.replace)!=null?u:{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 ox(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?kt(t,n.replace.start,n.replace.end):zn(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(`
|
|
12
12
|
`).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 sx(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 rx(t){let e=document.createDocumentFragment();return t.split(`
|
|
13
|
-
`).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 Vu(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):Vu(n,e)}function ix(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 u=o?sx(e):rx(e);n?Vu(c.startContainer,u):(c.insertNode(u),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,en as ContentEditableInput,
|
|
13
|
+
`).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 Vu(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):Vu(n,e)}function ix(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 u=o?sx(e):rx(e);n?Vu(c.startContainer,u):(c.insertNode(u),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,en as ContentEditableInput,ot as DeepdeskAPI,Ms as DeepdeskSDK,on as HTTPClient,nt as InputMediator,Mt as InputType,Ds as KeyboardHint,cp as Label,Yn as Locale,Ae as Section,ln as SectionList,Me as Sources,A as Suggestion,Z as SuggestionList,tn as TextAreaInput,At as ToggleButton,YS as attachFile,ex as authenticateWithKey,zn as createFullRange,As as createOverlayContainer,kt as createRangeFromOffsets,Nn as escapeHTML,tx as formatTextMarkup,ws as getRangeOffsets,Es as getRangeText,ix as insertCKEditor,Uo as isHTML,Si as isSupportedInputElement,Js as logEvent,ox as updateContentEditable,nx as updateTextArea,ft as useClickOutsideRoot,b as useStyles,wi as waitForElementVisibilityChange};
|