@deepdesk/deepdesk-sdk 19.6.2-beta.15 → 19.6.2-beta.17
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 +10 -9
- package/dist/index.d.mts +128 -1
- package/dist/index.d.ts +128 -1
- package/dist/index.esm.js +10 -9
- package/dist/index.iife.js +37 -36
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
var Qi=Object.defineProperty,Dp=Object.defineProperties;var _p=Object.getOwnPropertyDescriptors;var no=Object.getOwnPropertySymbols;var Xi=Object.prototype.hasOwnProperty,Ji=Object.prototype.propertyIsEnumerable;var Gi=(t,e,n)=>e in t?Qi(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,h=(t,e)=>{for(var n in e||(e={}))Xi.call(e,n)&&Gi(t,n,e[n]);if(no)for(var n of no(e))Ji.call(e,n)&&Gi(t,n,e[n]);return t},b=(t,e)=>Dp(t,_p(e));var D=(t,e)=>{var n={};for(var o in t)Xi.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&no)for(var o of no(t))e.indexOf(o)<0&&Ji.call(t,o)&&(n[o]=t[o]);return n};var G=(t,e)=>{for(var n in e)Qi(t,n,{get:e[n],enumerable:!0})};var S=(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 Yi from"classnames";import Up,{createContext as Wp,useContext as Xs,useEffect as zp,useState as Vp}from"react";import Fp,{useContext as Hp}from"react";import Bp from"classnames";var pn=Fp.createContext({});function C(t,e){let r=Hp(pn),{debug:n}=r,s=D(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return b(h({},i),{[a]:Bp(d,l,n?`${t}__${a}`:!1)})},{})}var Zi={root:"dd-4s9wq"};import{jsx as oo,jsxs as Kp}from"react/jsx-runtime";var so=()=>Kp("svg",{className:Zi.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[oo("defs",{children:oo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),oo("title",{children:"Failed loading image"}),oo("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 Qs={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as Mt}from"react/jsx-runtime";var ro=Wp(Qs),jp=({title:t,src:e})=>{let n=Xs(ro),[o,s]=Vp(!1);return zp(()=>{s(!1)},[e]),Mt("div",{className:n.imageWrapper,children:e&&!o?Mt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Mt(so,{})})},qp=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=Xs(ro);return Mt("div",{className:Yi(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},$p=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=D(i,["as","cropText","className","children"]);let a=Xs(ro);return Up.createElement(t,h({className:Yi(a.title,n,{[a.contentIsCropped]:e})},s),o)},io=({children:t})=>{let e=C("Card",Qs);return Mt("div",{className:e.root,children:Mt(ro.Provider,{value:e,children:t})})};io.Image=jp;io.Content=qp;io.Title=$p;var F=io;import Gp from"classnames";var ea={root:"dd-llBx9"};import{jsx as Jp}from"react/jsx-runtime";var Qp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Xp=o=>{var s=o,{className:t,keyCode:e}=s,n=D(s,["className","keyCode"]);let r=C("KeyboardHint",ea);return Jp("span",h({"data-key":Qp[e],className:Gp(t,r.root)},n))},Js=Xp;import Zp from"classnames";var ta={root:"dd-e6HXZ"};import{jsx as tg}from"react/jsx-runtime";var Yp=o=>{var s=o,{className:t,children:e}=s,n=D(s,["className","children"]);let r=C("Label",ta);return tg("span",b(h({},n),{className:Zp(t,r.root),children:e}))},eg=Yp;var na={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Zs,jsxs as og}from"react/jsx-runtime";var ng=s=>{var r=s,{title:t,children:e,type:n}=r,o=D(r,["title","children","type"]);let i=C("Section",na);return og("section",b(h({},o),{className:i.root,"data-section-type":n,children:[t&&Zs("div",{className:i.subTitleContainer,children:Zs("span",{className:i.subtitle,children:t})}),Zs("div",{className:i.suggestions,children:e})]}))},Oe=ng;import dg from"classnames";import{useRef as cg}from"react";import{createContext as sg,useCallback as rg,useContext as ig,useEffect as ag}from"react";import{jsx as lg}from"react/jsx-runtime";var oa=sg(null),sa=({scrollContainerRef:t,children:e})=>{let n=rg(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 lg(oa.Provider,{value:n,children:e})},ao=t=>{let e=ig(oa);ag(()=>{let n=t.current;n&&e(n)},[])};var ra={root:"dd-uoTXh"};import{jsx as ia}from"react/jsx-runtime";var ug=({className:t,children:e})=>{let n=C("SectionList",ra),o=cg(null);return ia(sa,{scrollContainerRef:o,children:ia("div",{ref:o,className:dg(n.root,t),children:e})})},gn=ug;import mn from"classnames";import pg,{createContext as gg,useCallback as mg,useContext as lt}from"react";var Ys={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 fe,jsxs as aa}from"react/jsx-runtime";var Qe=gg(Ys),fg=o=>{var s=o,{fixed:t,children:e}=s,n=D(s,["fixed","children"]);let r=lt(Qe);return fe("div",b(h({},n),{className:mn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function hg(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=D(l,["as","className","icon","title","children","disabled","variant"]);let c=lt(Qe);return aa(t||"button",b(h({type:"button",className:mn(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&&fe("span",{className:c.icon,children:n}),s]}))}var yg=({children:t})=>{let e=lt(Qe);return fe("div",{className:e.buttonsContainer,children:t})},vg=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=lt(Qe);return aa("div",{className:mn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,fe("ul",{className:r.dropdownList,children:s})]})},Sg=({index:t,label:e,onClick:n})=>{let o=lt(Qe);return fe("li",{className:o.dropdownItem,children:fe("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},xg=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=lt(Qe);return fe("button",{type:"button",className:mn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:(i=>i.stopPropagation()),disabled:n,"aria-hidden":n,children:s})},bg=({labels:t})=>{let e=lt(Qe);return fe("div",{className:e.labels,children:t.map(n=>fe("span",{className:e.label,children:n},n))})},Xe=pg.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=D(d,["className","selected","onClick","children","as"]);let l=C("Suggestion",Ys),c=mg(g=>{g.preventDefault(),n&&n(g)},[n]);return fe(s,b(h({},r),{ref:i,className:mn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:fe(Qe.Provider,{value:l,children:o})}))});Xe.Labels=bg;Xe.Actions=fg;Xe.ActionButton=xg;Xe.DropdownButton=vg;Xe.DropdownItem=Sg;Xe.ButtonsContainer=yg;Xe.Button=hg;var M=Xe;import Cg from"classnames";var la={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Tg}from"react/jsx-runtime";var wg=({withDivider:t,children:e})=>{let n=C("SuggestionList",la);return Tg("div",{"data-testid":"suggestions-overlay-list",className:Cg(n.root,{[n.isWithDivider]:t}),children:e})},te=wg;import Eg from"classnames";var da={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as er}from"react/jsx-runtime";var kg=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=C("ToggleButton",da);return er("button",{type:"button",className:Eg(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:er("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:er("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},Nt=kg;var ca=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,lo=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var ua=/x-deepdesk-(([a-z0-9\-_])+-version)/,co=["cues","custom-data","custom-data-banner","knowledge-assist"],pa=Intl.DateTimeFormat().resolvedOptions().timeZone,De=(y=>(y.SEARCH="search",y.TEMPLATE="template",y.ELASTIC_SEARCH="search-autocomplete",y.GPT="gpt",y.TRIE="trie",y.TRIE_WITH_TYPOS="trie-with-typos",y.SEMANTIC="semantic",y.TEXT_RECOMMENDATION="text_recommendation",y.URL_RECOMMENDATION="url_recommendation",y.LINK_RECOMMENDATION="link_recommendation",y.PERSONAL_COLLECTION="personal-collection",y.PERSONAL_COLLECTION_SEARCH="personal-collection-search",y.SEARCH_OVERLAY="search-overlay",y.SEARCH_PREVIEW="search-preview",y.SEARCH_URL="search-url",y.STYLE="style",y))(De||{}),Ot=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(Ot||{});import{createContext as Hf,Fragment as Bf,useContext as Kr,useEffect as Kf,useRef as sd,useState as nt}from"react";import{useDispatch as Uf,useSelector as Wf}from"react-redux";import{createAsyncThunk as hn,createSlice as Pg}from"@reduxjs/toolkit";var uo=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(uo||{});var Rg={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Y=t=>t.auth.isLoggedIn;var ga=t=>t.auth.verifyFetchState,ma=t=>t.auth.showLoginOverlay,fa=t=>t.auth.loginError,_e=hn("auth/validate",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),ha=hn("auth/requestLogin",(n,o)=>S(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),tr=hn("auth/loginWithPassword",(o,s)=>S(null,[o,s],function*({username:t,password:e},n){let{deepdeskAPI:r}=n.extra;return r.loginWithPassword(t,e)})),po=hn("auth/logout",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;yield n.logout()})),fn=hn("auth/verifyLoginToken",(n,o)=>S(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),ya=Pg({name:"auth",initialState:Rg,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(_e.pending,e=>{e.loginFetchState="loading"}),t.addCase(_e.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(_e.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(tr.pending,e=>{e.loginFetchState="loading",e.loginError=null}),t.addCase(tr.fulfilled,e=>{e.isLoggedIn=!0,e.loginFetchState="done",e.loginError=null,e.showLoginOverlay=!1}),t.addCase(tr.rejected,(e,n)=>{e.loginFetchState="error",e.isLoggedIn=!1,e.loginError=n.error.message==="Bad Request"?"Invalid credentials":"Login failed"}),t.addCase(po.fulfilled,e=>{e.isLoggedIn=!1,e.loginFetchState="idle",e.loginError=null}),t.addCase(po.rejected,e=>{e.isLoggedIn=!1,e.loginFetchState="error"}),t.addCase(fn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(fn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(fn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Dt,setShowLoginOverlay:va,setLoginError:nr,clearLoginError:go}=ya.actions,Sa=ya.reducer;import{createAction as Hg,createSelector as Pa,createSlice as Bg}from"@reduxjs/toolkit";import{diffChars as Kg}from"diff";function xa(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Je(t,e,n=10){let o=typeof t,s=typeof e;if(n===0)throw new Error("Max depth deepEqual, possible circular references?");return o!==s?!1:t==null||o==="string"||o==="number"||o==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>Je(r,e[i],n-1)):xa(t)&&xa(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Je(t[i],e[i],n-1)):!1}function Ig(t){return Math.max(...t.map(e=>e.length))}function Ag(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return b(h({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function ba(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Ig(o);s++){let r=Ag(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 Lg=2;function Ca(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=ba(t,Lg);return n&&n.text!==e?n:t[0]}import{createAction as Ng,createAsyncThunk as _t,createSlice as Og}from"@reduxjs/toolkit";var Mg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},R=Mg;var or="deepdesk.widgetAssistantSession";function yn(t){if(!t||typeof sessionStorage=="undefined")return null;try{return sessionStorage.getItem(`${or}:${t}`)}catch(e){return null}}function wa(t,e){if(!(!t||typeof sessionStorage=="undefined"))try{sessionStorage.setItem(`${or}:${t}`,e)}catch(n){}}function Ta(t){if(!(!t||typeof sessionStorage=="undefined"))try{sessionStorage.removeItem(`${or}:${t}`)}catch(e){return}}var Ea={current:null,isSupported:null},z=Ng("resetConversation"),mo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},pe=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},Ft=t=>t.conversation.isSupported,sr=_t("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),fo=_t("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),ho=_t("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),yo=_t("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=pe(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),rr=_t("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.upsertConversation(t)}),ir=_t("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=pe(e.getState());if(!o){R.warn("No current conversation to update messages");return}return n.postMessages(o,t.map(s=>h({},s)))}),Dg=[fo.rejected,ho.rejected,yo.rejected,ir.rejected].map(t=>t==null?void 0:t.toString());function _g(t){return Dg.includes(t.type)}var Fg=Og({name:"conversation",initialState:Ea,reducers:{},extraReducers:t=>{t.addCase(sr.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(fo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(ho.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(rr.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(yo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(z,e=>{var n,o;return Ta((o=(n=e.current)==null?void 0:n.externalId)!=null?o:void 0),Ea}).addMatcher(_g,(e,n)=>{var o;throw R.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),ka=Fg.reducer;var dt={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 ar(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 vo=Hg("input/applyImageSuggestion"),Ra=Bg({name:"input",initialState:dt,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=dt.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:d,shiftKey:l,ctrlKey:c,metaKey:g,altKey:u}=n.keyDown;switch(d){case"Enter":l&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:p}=t,f=Kg(n.text,p);n.text.length-p.length>1&&t.metrics.deletions.push(...f.filter(m=>m.removed).map(m=>m.value)),t.metrics.numCharsDeleted+=n.text.length-p.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(c||g)break;default:if(!c&&!g&&!u){t.metrics.numCharsTyped+=1;let p=((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;p&&p.length>0&&(t.metrics.numCharsDeleted+=p.length,t.metrics.deletions.push(p))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(Je(t.selection,e.payload)||(t.selection=e.payload))},commitSuggestion(t,e){let n=e.payload,{text:o,suggestion:{source:s,abVariant:r,abTestName:i,trainingJobs:a,sourceText:d,searchTerm:l,assistantCode:c,text:g},eventMetrics:{inputType:u},replace:p}=n,f=s==="search"||s==="personal-collection-search",m=o.slice(t.text.substring(0,t.selection.start).length);(f||p==="selection")&&(m=o),n.suggestion.source==="search-overlay"&&(m=g),t.metrics.textSuggestions.push({text:m,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:u,sourceText:d,trainingJobs:a||[],searchTerm:f?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=b(h({},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=b(h({},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=ct({input:t}),o=Ca(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=dt.metrics}},extraReducers:t=>{t.addCase(z,e=>{e.mixedSuggestion=dt.mixedSuggestion,e.textSuggestions=dt.textSuggestions,e.selectedSuggestionIndex=dt.selectedSuggestionIndex,e.metrics=dt.metrics})}}),ct=t=>{let{text:e,selection:n,suggestionTextStart:o}=t.input;return e.slice(o,n.end)},Ug=t=>t.input.mixedSuggestion,Wg=t=>t.input.pinnedSuggestions,zg=t=>t.input.textSuggestions,vn=t=>t.input.selectedSuggestionIndex,ut=Pa([zg,Wg],(t,e)=>[...t,...e]),Ht=Pa([ut,Ug,vn],(t,e,n)=>n>-1?t[n]:e),Ia=t=>t.input.selection,{commitSuggestion:le,offeredTextSuggestion:Aa,registerCut:La,registerKeyDown:Ma,registerKeyUp:Na,registerPaste:Oa,selectNextTextSuggestion:Da,selectPreviousTextSuggestion:_a,selectTextSuggestionByIndex:So,setInput:xo,setMetrics:Fa,setPinnedSuggestions:Bt,removePinnedSuggestions:pt,setSelection:bo,setTextSuggestions:Ze,resetMetrics:Ha,sendMessage:gt}=Ra.actions,Ba=Ra.reducer;import{createAsyncThunk as $g,createSelector as Gg,createSlice as Qg}from"@reduxjs/toolkit";import{createAsyncThunk as Co,createSlice as Vg}from"@reduxjs/toolkit";function Ka(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var jg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Kt=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},Ua=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},Wa=t=>{var e;return(e=t.info.customData)!=null?e:null},xn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&Ka(t.visitorTimeZone)?t.visitorTimeZone:pa,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},qg=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],za=Co("info/setAgentNickname",(n,o)=>S(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}})),Sn=Co("info/setAgentInfo",(t,e)=>S(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=qg.reduce((l,[c,g])=>!o[g]&&c in t?b(h({},l),{[g]: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}})),lr=Co("info/setAgentSettings",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=h(h({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),dr=Co("info/getAgentSettings",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),Va=Vg({name:"info",initialState:jg,reducers:{setVisitorInfo(t,e){t.visitorInfo=h(h({},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(Sn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=h(h({},e.agentInfo),n.meta.arg)}).addCase(Sn.rejected,e=>{e.fetchState="error"}).addCase(Sn.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(lr.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(dr.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(z,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:ja,setCustomData:qa,setPlatformVariables:$a,setShowNicknameDialog:Ga}=Va.actions,Qa=Va.reducer;function ye(t,e){return e?t==null?(R.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 wo={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Xa=t=>t.search.isOpen,Ja=t=>t.search.page,cr=t=>t.search.list,Za=t=>t.search.aggregates,Xg=Gg([cr,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),Ya=t=>e=>Xg(e,t),mt=$g("search/getAll",(t,e)=>S(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:xn(o)});return{results:i.map(l=>b(h(h({},l),l.title&&r?{title:ye(l.title,r)}:{}),{text:ye(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),el=Qg({name:"search",initialState:wo,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=wo.fetchState,t.list=wo.list}},extraReducers:t=>{t.addCase(mt.pending,e=>{e.fetchState="loading"}).addCase(mt.rejected,(e,n)=>{e.fetchState="error",R.error(n.error)}).addCase(mt.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(z,()=>wo)}}),{resetSearch:To,setIsOpen:ve,setPage:Ut}=el.actions,tl=el.reducer;var ur="SetOutputs",Wt="ShowLoginOverlay",bn="UserLoggedIn",Jg="UserLoggedOut",Fe="ApplySuggestion",pr="ApplyImageSuggestion",Zg="ShowCommandPalette",Eo="ShowNicknameDialog",ko="ReduxAction",Yg="RemovePinnedSuggestion",em=t=>({[ur]: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(b(h({},e),{isBroadcasted:!0}))},[ko]:e=>{e.isBroadcasted||t.dispatch(b(h({},e),{isBroadcasted:!0}))},[Yg]:e=>{t.dispatch(pt(e))},[Zg]:e=>{t.dispatch(ve(e.isOpen)),e.page&&t.dispatch(Ut(e.page))},[Eo]:e=>{t.dispatch(Ga(e.showNicknameDialog))},[Wt]:e=>{t.dispatch(va(e))},[bn]:()=>{t.dispatch(_e())},[Jg]:()=>{t.dispatch(_e())},[pr]:e=>{t.dispatch(vo({suggestion:e.suggestion}))},[Fe]:e=>{t.dispatch(le(b(h({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),nl=em;import{useDispatch as nm}from"react-redux";import{createAsyncThunk as tm}from"@reduxjs/toolkit";function gr(t){return tm("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,b(h({conversationId:o},s),{data:e.data}))})(t)}function q(){let t=nm();return(e,n)=>S(null,null,function*(){yield t(gr({name:e,data:n}))})}import{useRef as om,useState as mr}from"react";import{useDispatch as sm}from"react-redux";function Cn(t,e){let n=om(t);n.current=t;let[o,s]=mr(void 0),[r,i]=mr(void 0),[a,d]=mr("idle"),l=sm();return{error:r,state:a,data:o,call:u=>S(null,null,function*(){d("loading"),yield l(n.current(u)).unwrap().then(p=>{s(p),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(p))}).catch(p=>{i(p),d("error"),e!=null&&e.onError&&(e==null||e.onError(p))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import ol,{useContext as rm}from"react";import{jsx as im}from"react/jsx-runtime";var sl=ol.createContext(null),He=({broadcastEvents:t,children:e})=>{let n=ol.useMemo(()=>t,[]);return im(sl.Provider,{value:n,children:e})},ie=()=>{let t=rm(sl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as Sm,useContext as xm}from"react";var fr=function(t,e){return fr=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])},fr(t,e)};function wn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");fr(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var de=function(){return de=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},de.apply(this,arguments)};function rl(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 Po(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 Ro(t,e){var n=e&&e.cache?e.cache:gm,o=e&&e.serializer?e.serializer:um,s=e&&e.strategy?e.strategy:lm;return s(t,{cache:n,serializer:o})}function am(t){return t==null||typeof t=="number"||typeof t=="boolean"}function il(t,e,n,o){var s=am(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function al(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 hr(t,e,n,o,s){return n.bind(e,t,o,s)}function lm(t,e){var n=t.length===1?il:al;return hr(t,this,n,e.cache.create(),e.serializer)}function dm(t,e){return hr(t,this,al,e.cache.create(),e.serializer)}function cm(t,e){return hr(t,this,il,e.cache.create(),e.serializer)}var um=function(){return JSON.stringify(arguments)},pm=(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})(),gm={create:function(){return new pm}},Io={variadic:dm,monadic:cm};var Ao;(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"})(Ao||(Ao={}));var Lo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ge;(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"})(ge||(ge={}));var Mo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Mo||(Mo={}));function yr(t){return t.type===ge.literal}function vr(t){return t.type===ge.argument}function Tn(t){return t.type===ge.number}function En(t){return t.type===ge.date}function kn(t){return t.type===ge.time}function Pn(t){return t.type===ge.select}function Rn(t){return t.type===ge.plural}function ll(t){return t.type===ge.pound}function In(t){return t.type===ge.tag}function No(t){return!!(t&&typeof t=="object"&&t.type===Mo.number)}function An(t){return!!(t&&typeof t=="object"&&t.type===Mo.dateTime)}function Sr(t){t.forEach(function(e){if(delete e.location,Pn(e)||Rn(e))for(var n in e.options)delete e.options[n].location,Sr(e.options[n].value);else Tn(e)&&No(e.style)||(En(e)||kn(e))&&An(e.style)?delete e.style.location:In(e)&&Sr(e.children)})}function dl(t,e){e===void 0&&(e={}),e=de({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new Lo(t,e).parse();if(n.err){var o=SyntaxError(Ao[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||Sr(n.val),n.val}var ft;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(ft||(ft={}));var Ln=(function(t){wn(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 xr=(function(t){wn(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('", "'),'"'),ft.INVALID_VALUE,r)||this}return e})(Ln);var cl=(function(t){wn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),ft.INVALID_VALUE,s)||this}return e})(Ln);var ul=(function(t){wn(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,'"'),ft.MISSING_VALUE,o)||this}return e})(Ln);var ne;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(ne||(ne={}));function mm(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==ne.literal||n.type!==ne.literal?e.push(n):o.value+=n.value,e},[])}function fm(t){return typeof t=="function"}function Mn(t,e,n,o,s,r,i){if(t.length===1&&yr(t[0]))return[{type:ne.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(yr(c)){a.push({type:ne.literal,value:c.value});continue}if(ll(c)){typeof r=="number"&&a.push({type:ne.literal,value:n.getNumberFormat(e).format(r)});continue}var g=c.value;if(!(s&&g in s))throw new ul(g,i);var u=s[g];if(vr(c)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?ne.literal:ne.object,value:u});continue}if(En(c)){var p=typeof c.style=="string"?o.date[c.style]:An(c.style)?c.style.parsedOptions:void 0;a.push({type:ne.literal,value:n.getDateTimeFormat(e,p).format(u)});continue}if(kn(c)){var p=typeof c.style=="string"?o.time[c.style]:An(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:ne.literal,value:n.getDateTimeFormat(e,p).format(u)});continue}if(Tn(c)){var p=typeof c.style=="string"?o.number[c.style]:No(c.style)?c.style.parsedOptions:void 0;p&&p.scale&&(u=u*(p.scale||1)),a.push({type:ne.literal,value:n.getNumberFormat(e,p).format(u)});continue}if(In(c)){var f=c.children,m=c.value,y=s[m];if(!fm(y))throw new cl(m,"function",i);var v=Mn(f,e,n,o,s,r),x=y(v.map(function(k){return k.value}));Array.isArray(x)||(x=[x]),a.push.apply(a,x.map(function(k){return{type:typeof k=="string"?ne.literal:ne.object,value:k}}))}if(Pn(c)){var w=c.options[u]||c.options.other;if(!w)throw new xr(c.value,u,Object.keys(c.options),i);a.push.apply(a,Mn(w.value,e,n,o,s));continue}if(Rn(c)){var w=c.options["=".concat(u)];if(!w){if(!Intl.PluralRules)throw new Ln(`Intl.PluralRules is not available in this environment.
|
|
1
|
+
var ea=Object.defineProperty,Kp=Object.defineProperties;var Up=Object.getOwnPropertyDescriptors;var ro=Object.getOwnPropertySymbols;var ta=Object.prototype.hasOwnProperty,na=Object.prototype.propertyIsEnumerable;var Yi=(t,e,n)=>e in t?ea(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,h=(t,e)=>{for(var n in e||(e={}))ta.call(e,n)&&Yi(t,n,e[n]);if(ro)for(var n of ro(e))na.call(e,n)&&Yi(t,n,e[n]);return t},b=(t,e)=>Kp(t,Up(e));var D=(t,e)=>{var n={};for(var o in t)ta.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&ro)for(var o of ro(t))e.indexOf(o)<0&&na.call(t,o)&&(n[o]=t[o]);return n};var Q=(t,e)=>{for(var n in e)ea(t,n,{get:e[n],enumerable:!0})};var S=(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 sa from"classnames";import jp,{createContext as Gp,useContext as Zs,useEffect as $p,useState as Qp}from"react";import Wp,{useContext as zp}from"react";import Vp from"classnames";var gn=Wp.createContext({});function C(t,e){let r=zp(gn),{debug:n}=r,s=D(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return b(h({},i),{[a]:Vp(d,l,n?`${t}__${a}`:!1)})},{})}var oa={root:"dd-4s9wq"};import{jsx as io,jsxs as qp}from"react/jsx-runtime";var ao=()=>qp("svg",{className:oa.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[io("defs",{children:io("style",{children:".cls-1 { fill: #b3b3b3; }"})}),io("title",{children:"Failed loading image"}),io("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 Js={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as Nt}from"react/jsx-runtime";var lo=Gp(Js),Xp=({title:t,src:e})=>{let n=Zs(lo),[o,s]=Qp(!1);return $p(()=>{s(!1)},[e]),Nt("div",{className:n.imageWrapper,children:e&&!o?Nt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Nt(ao,{})})},Jp=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=Zs(lo);return Nt("div",{className:sa(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},Zp=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=D(i,["as","cropText","className","children"]);let a=Zs(lo);return jp.createElement(t,h({className:sa(a.title,n,{[a.contentIsCropped]:e})},s),o)},co=({children:t})=>{let e=C("Card",Js);return Nt("div",{className:e.root,children:Nt(lo.Provider,{value:e,children:t})})};co.Image=Xp;co.Content=Jp;co.Title=Zp;var H=co;import Yp from"classnames";var ra={root:"dd-llBx9"};import{jsx as ng}from"react/jsx-runtime";var eg={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},tg=o=>{var s=o,{className:t,keyCode:e}=s,n=D(s,["className","keyCode"]);let r=C("KeyboardHint",ra);return ng("span",h({"data-key":eg[e],className:Yp(t,r.root)},n))},Ys=tg;import og from"classnames";var ia={root:"dd-e6HXZ"};import{jsx as ig}from"react/jsx-runtime";var sg=o=>{var s=o,{className:t,children:e}=s,n=D(s,["className","children"]);let r=C("Label",ia);return ig("span",b(h({},n),{className:og(t,r.root),children:e}))},rg=sg;var aa={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as er,jsxs as lg}from"react/jsx-runtime";var ag=s=>{var r=s,{title:t,children:e,type:n}=r,o=D(r,["title","children","type"]);let i=C("Section",aa);return lg("section",b(h({},o),{className:i.root,"data-section-type":n,children:[t&&er("div",{className:i.subTitleContainer,children:er("span",{className:i.subtitle,children:t})}),er("div",{className:i.suggestions,children:e})]}))},De=ag;import mg from"classnames";import{useRef as fg}from"react";import{createContext as dg,useCallback as cg,useContext as ug,useEffect as pg}from"react";import{jsx as gg}from"react/jsx-runtime";var la=dg(null),da=({scrollContainerRef:t,children:e})=>{let n=cg(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 gg(la.Provider,{value:n,children:e})},uo=t=>{let e=ug(la);pg(()=>{let n=t.current;n&&e(n)},[])};var ca={root:"dd-uoTXh"};import{jsx as ua}from"react/jsx-runtime";var hg=({className:t,children:e})=>{let n=C("SectionList",ca),o=fg(null);return ua(da,{scrollContainerRef:o,children:ua("div",{ref:o,className:mg(n.root,t),children:e})})},mn=hg;import fn from"classnames";import yg,{createContext as vg,useCallback as Sg,useContext as ct}from"react";var tr={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 he,jsxs as pa}from"react/jsx-runtime";var Xe=vg(tr),xg=o=>{var s=o,{fixed:t,children:e}=s,n=D(s,["fixed","children"]);let r=ct(Xe);return he("div",b(h({},n),{className:fn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function bg(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=D(l,["as","className","icon","title","children","disabled","variant"]);let c=ct(Xe);return pa(t||"button",b(h({type:"button",className:fn(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&&he("span",{className:c.icon,children:n}),s]}))}var Cg=({children:t})=>{let e=ct(Xe);return he("div",{className:e.buttonsContainer,children:t})},wg=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=ct(Xe);return pa("div",{className:fn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,he("ul",{className:r.dropdownList,children:s})]})},Tg=({index:t,label:e,onClick:n})=>{let o=ct(Xe);return he("li",{className:o.dropdownItem,children:he("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},Eg=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=ct(Xe);return he("button",{type:"button",className:fn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:(i=>i.stopPropagation()),disabled:n,"aria-hidden":n,children:s})},kg=({labels:t})=>{let e=ct(Xe);return he("div",{className:e.labels,children:t.map(n=>he("span",{className:e.label,children:n},n))})},Je=yg.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=D(d,["className","selected","onClick","children","as"]);let l=C("Suggestion",tr),c=Sg(g=>{g.preventDefault(),n&&n(g)},[n]);return he(s,b(h({},r),{ref:i,className:fn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:he(Xe.Provider,{value:l,children:o})}))});Je.Labels=kg;Je.Actions=xg;Je.ActionButton=Eg;Je.DropdownButton=wg;Je.DropdownItem=Tg;Je.ButtonsContainer=Cg;Je.Button=bg;var M=Je;import Pg from"classnames";var ga={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Rg}from"react/jsx-runtime";var Ig=({withDivider:t,children:e})=>{let n=C("SuggestionList",ga);return Rg("div",{"data-testid":"suggestions-overlay-list",className:Pg(n.root,{[n.isWithDivider]:t}),children:e})},ne=Ig;import Ag from"classnames";var ma={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as nr}from"react/jsx-runtime";var Lg=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=C("ToggleButton",ma);return nr("button",{type:"button",className:Ag(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:nr("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:nr("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},Ot=Lg;var fa=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,po=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var ha=/x-deepdesk-(([a-z0-9\-_])+-version)/,go=["cues","custom-data","custom-data-banner","knowledge-assist"],ya=Intl.DateTimeFormat().resolvedOptions().timeZone,_e=(y=>(y.SEARCH="search",y.TEMPLATE="template",y.ELASTIC_SEARCH="search-autocomplete",y.GPT="gpt",y.TRIE="trie",y.TRIE_WITH_TYPOS="trie-with-typos",y.SEMANTIC="semantic",y.TEXT_RECOMMENDATION="text_recommendation",y.URL_RECOMMENDATION="url_recommendation",y.LINK_RECOMMENDATION="link_recommendation",y.PERSONAL_COLLECTION="personal-collection",y.PERSONAL_COLLECTION_SEARCH="personal-collection-search",y.SEARCH_OVERLAY="search-overlay",y.SEARCH_PREVIEW="search-preview",y.SEARCH_URL="search-url",y.STYLE="style",y))(_e||{}),Dt=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(Dt||{});import{createContext as Gf,Fragment as $f,useContext as zr,useEffect as Qf,useRef as ud,useState as st}from"react";import{useDispatch as Xf,useSelector as Jf}from"react-redux";import{createAsyncThunk as yn,createSlice as Mg}from"@reduxjs/toolkit";var mo=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(mo||{});var Ng={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Y=t=>t.auth.isLoggedIn;var va=t=>t.auth.verifyFetchState,Sa=t=>t.auth.showLoginOverlay,xa=t=>t.auth.loginError,Fe=yn("auth/validate",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),ba=yn("auth/requestLogin",(n,o)=>S(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),or=yn("auth/loginWithPassword",(o,s)=>S(null,[o,s],function*({username:t,password:e},n){let{deepdeskAPI:r}=n.extra;return r.loginWithPassword(t,e)})),fo=yn("auth/logout",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;yield n.logout()})),hn=yn("auth/verifyLoginToken",(n,o)=>S(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),Ca=Mg({name:"auth",initialState:Ng,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(Fe.pending,e=>{e.loginFetchState="loading"}),t.addCase(Fe.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Fe.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(or.pending,e=>{e.loginFetchState="loading",e.loginError=null}),t.addCase(or.fulfilled,e=>{e.isLoggedIn=!0,e.loginFetchState="done",e.loginError=null,e.showLoginOverlay=!1}),t.addCase(or.rejected,(e,n)=>{e.loginFetchState="error",e.isLoggedIn=!1,e.loginError=n.error.message==="Bad Request"?"Invalid credentials":"Login failed"}),t.addCase(fo.fulfilled,e=>{e.isLoggedIn=!1,e.loginFetchState="idle",e.loginError=null}),t.addCase(fo.rejected,e=>{e.isLoggedIn=!1,e.loginFetchState="error"}),t.addCase(hn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(hn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(hn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:_t,setShowLoginOverlay:wa,setLoginError:sr,clearLoginError:ho}=Ca.actions,Ta=Ca.reducer;import{createAction as Wg,createSelector as Ma,createSlice as zg}from"@reduxjs/toolkit";import{diffChars as Vg}from"diff";function Ea(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Ze(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)=>Ze(r,e[i],n-1)):Ea(t)&&Ea(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Ze(t[i],e[i],n-1)):!1}function Og(t){return Math.max(...t.map(e=>e.length))}function Dg(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return b(h({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function ka(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Og(o);s++){let r=Dg(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 _g=2;function Pa(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=ka(t,_g);return n&&n.text!==e?n:t[0]}import{createAction as Aa,createAsyncThunk as Ft,createSlice as Hg}from"@reduxjs/toolkit";var Fg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},P=Fg;var rr="deepdesk.widgetAssistantSession";function vn(t){if(!t||typeof sessionStorage=="undefined")return null;try{return sessionStorage.getItem(`${rr}:${t}`)}catch(e){return null}}function Ia(t,e){if(!(!t||typeof sessionStorage=="undefined"))try{sessionStorage.setItem(`${rr}:${t}`,e)}catch(n){}}function yo(t){if(!(!t||typeof sessionStorage=="undefined"))try{sessionStorage.removeItem(`${rr}:${t}`)}catch(e){return}}var Ra={current:null,isSupported:null},z=Aa("resetConversation"),ie=Aa("conversation/clearDisplayedAnswers"),vo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},ge=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},Ht=t=>t.conversation.isSupported,ir=Ft("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),So=Ft("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),xo=Ft("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),bo=Ft("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=ge(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),ar=Ft("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.upsertConversation(t)}),lr=Ft("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=ge(e.getState());if(!o){P.warn("No current conversation to update messages");return}return n.postMessages(o,t.map(s=>h({},s)))}),Bg=[So.rejected,xo.rejected,bo.rejected,lr.rejected].map(t=>t==null?void 0:t.toString());function Kg(t){return Bg.includes(t.type)}var Ug=Hg({name:"conversation",initialState:Ra,reducers:{},extraReducers:t=>{t.addCase(ir.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(So.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(xo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(ar.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(bo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(z,e=>{var n,o;return yo((o=(n=e.current)==null?void 0:n.externalId)!=null?o:void 0),Ra}).addMatcher(Kg,(e,n)=>{var o;throw P.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),La=Ug.reducer;var Ye={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 dr(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 Co=Wg("input/applyImageSuggestion"),Na=zg({name:"input",initialState:Ye,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=Ye.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:d,shiftKey:l,ctrlKey:c,metaKey:g,altKey:u}=n.keyDown;switch(d){case"Enter":l&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:p}=t,f=Vg(n.text,p);n.text.length-p.length>1&&t.metrics.deletions.push(...f.filter(m=>m.removed).map(m=>m.value)),t.metrics.numCharsDeleted+=n.text.length-p.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(c||g)break;default:if(!c&&!g&&!u){t.metrics.numCharsTyped+=1;let p=((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;p&&p.length>0&&(t.metrics.numCharsDeleted+=p.length,t.metrics.deletions.push(p))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(Ze(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:g},eventMetrics:{inputType:u},replace:p}=n,f=s==="search"||s==="personal-collection-search",m=o.slice(t.text.substring(0,t.selection.start).length);(f||p==="selection")&&(m=o),n.suggestion.source==="search-overlay"&&(m=g),t.metrics.textSuggestions.push({text:m,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:u,sourceText:d,trainingJobs:a||[],searchTerm:f?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=b(h({},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=b(h({},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=ut({input:t}),o=Pa(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=Ye.metrics}},extraReducers:t=>{let e=o=>{o.mixedSuggestion=Ye.mixedSuggestion,o.textSuggestions=Ye.textSuggestions,o.selectedSuggestionIndex=Ye.selectedSuggestionIndex,o.metrics=Ye.metrics},n=o=>{e(o),o.pinnedSuggestions=Ye.pinnedSuggestions};t.addCase(z,e).addCase(ie,n)}}),ut=t=>{let{text:e,selection:n,suggestionTextStart:o}=t.input;return e.slice(o,n.end)},qg=t=>t.input.mixedSuggestion,jg=t=>t.input.pinnedSuggestions,Gg=t=>t.input.textSuggestions,Sn=t=>t.input.selectedSuggestionIndex,pt=Ma([Gg,jg],(t,e)=>[...t,...e]),Bt=Ma([pt,qg,Sn],(t,e,n)=>n>-1?t[n]:e),Oa=t=>t.input.selection,{commitSuggestion:de,offeredTextSuggestion:Da,registerCut:_a,registerKeyDown:Fa,registerKeyUp:Ha,registerPaste:Ba,selectNextTextSuggestion:Ka,selectPreviousTextSuggestion:Ua,selectTextSuggestionByIndex:wo,setInput:To,setMetrics:Wa,setPinnedSuggestions:Kt,removePinnedSuggestions:gt,setSelection:Eo,setTextSuggestions:et,resetMetrics:za,sendMessage:mt}=Na.actions,Va=Na.reducer;import{createAsyncThunk as Jg,createSelector as Zg,createSlice as Yg}from"@reduxjs/toolkit";import{createAsyncThunk as ko,createSlice as $g}from"@reduxjs/toolkit";function qa(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var Qg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Ut=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},ja=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},Ga=t=>{var e;return(e=t.info.customData)!=null?e:null},bn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&qa(t.visitorTimeZone)?t.visitorTimeZone:ya,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},Xg=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],$a=ko("info/setAgentNickname",(n,o)=>S(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}})),xn=ko("info/setAgentInfo",(t,e)=>S(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=Xg.reduce((l,[c,g])=>!o[g]&&c in t?b(h({},l),{[g]: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}})),cr=ko("info/setAgentSettings",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=h(h({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),ur=ko("info/getAgentSettings",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),Qa=$g({name:"info",initialState:Qg,reducers:{setVisitorInfo(t,e){t.visitorInfo=h(h({},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(xn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=h(h({},e.agentInfo),n.meta.arg)}).addCase(xn.rejected,e=>{e.fetchState="error"}).addCase(xn.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(cr.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(ur.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(z,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Xa,setCustomData:Ja,setPlatformVariables:Za,setShowNicknameDialog:Ya}=Qa.actions,el=Qa.reducer;function ve(t,e){return e?t==null?(P.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 Cn={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},tl=t=>t.search.isOpen,nl=t=>t.search.page,pr=t=>t.search.list,ol=t=>t.search.aggregates,em=Zg([pr,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),sl=t=>e=>em(e,t),ft=Jg("search/getAll",(t,e)=>S(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:bn(o)});return{results:i.map(l=>b(h(h({},l),l.title&&r?{title:ve(l.title,r)}:{}),{text:ve(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),rl=Yg({name:"search",initialState:Cn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=Cn.fetchState,t.list=Cn.list}},extraReducers:t=>{t.addCase(ft.pending,e=>{e.fetchState="loading"}).addCase(ft.rejected,(e,n)=>{e.fetchState="error",P.error(n.error)}).addCase(ft.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(z,()=>Cn).addCase(ie,()=>Cn)}}),{resetSearch:Po,setIsOpen:Se,setPage:Wt}=rl.actions,il=rl.reducer;var gr="SetOutputs",zt="ShowLoginOverlay",wn="UserLoggedIn",tm="UserLoggedOut",He="ApplySuggestion",mr="ApplyImageSuggestion",nm="ShowCommandPalette",Io="ShowNicknameDialog",Ro="ReduxAction",om="RemovePinnedSuggestion",sm=t=>({[gr]: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(b(h({},e),{isBroadcasted:!0}))},[Ro]:e=>{e.isBroadcasted||t.dispatch(b(h({},e),{isBroadcasted:!0}))},[om]:e=>{t.dispatch(gt(e))},[nm]:e=>{t.dispatch(Se(e.isOpen)),e.page&&t.dispatch(Wt(e.page))},[Io]:e=>{t.dispatch(Ya(e.showNicknameDialog))},[zt]:e=>{t.dispatch(wa(e))},[wn]:()=>{t.dispatch(Fe())},[tm]:()=>{t.dispatch(Fe())},[mr]:e=>{t.dispatch(Co({suggestion:e.suggestion}))},[He]:e=>{t.dispatch(de(b(h({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),al=sm;import{useDispatch as im}from"react-redux";import{createAsyncThunk as rm}from"@reduxjs/toolkit";function fr(t){return rm("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,b(h({conversationId:o},s),{data:e.data}))})(t)}function j(){let t=im();return(e,n)=>S(null,null,function*(){yield t(fr({name:e,data:n}))})}import{useRef as am,useState as hr}from"react";import{useDispatch as lm}from"react-redux";function Tn(t,e){let n=am(t);n.current=t;let[o,s]=hr(void 0),[r,i]=hr(void 0),[a,d]=hr("idle"),l=lm();return{error:r,state:a,data:o,call:u=>S(null,null,function*(){d("loading"),yield l(n.current(u)).unwrap().then(p=>{s(p),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(p))}).catch(p=>{i(p),d("error"),e!=null&&e.onError&&(e==null||e.onError(p))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import ll,{useContext as dm}from"react";import{jsx as cm}from"react/jsx-runtime";var dl=ll.createContext(null),Be=({broadcastEvents:t,children:e})=>{let n=ll.useMemo(()=>t,[]);return cm(dl.Provider,{value:n,children:e})},ae=()=>{let t=dm(dl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as wm,useContext as Tm}from"react";var yr=function(t,e){return yr=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])},yr(t,e)};function En(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");yr(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var ce=function(){return ce=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},ce.apply(this,arguments)};function cl(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 Ao(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 Lo(t,e){var n=e&&e.cache?e.cache:ym,o=e&&e.serializer?e.serializer:fm,s=e&&e.strategy?e.strategy:pm;return s(t,{cache:n,serializer:o})}function um(t){return t==null||typeof t=="number"||typeof t=="boolean"}function ul(t,e,n,o){var s=um(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function pl(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 vr(t,e,n,o,s){return n.bind(e,t,o,s)}function pm(t,e){var n=t.length===1?ul:pl;return vr(t,this,n,e.cache.create(),e.serializer)}function gm(t,e){return vr(t,this,pl,e.cache.create(),e.serializer)}function mm(t,e){return vr(t,this,ul,e.cache.create(),e.serializer)}var fm=function(){return JSON.stringify(arguments)},hm=(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})(),ym={create:function(){return new hm}},Mo={variadic:gm,monadic:mm};var No;(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"})(No||(No={}));var Oo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var me;(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"})(me||(me={}));var Do;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Do||(Do={}));function Sr(t){return t.type===me.literal}function xr(t){return t.type===me.argument}function kn(t){return t.type===me.number}function Pn(t){return t.type===me.date}function In(t){return t.type===me.time}function Rn(t){return t.type===me.select}function An(t){return t.type===me.plural}function gl(t){return t.type===me.pound}function Ln(t){return t.type===me.tag}function _o(t){return!!(t&&typeof t=="object"&&t.type===Do.number)}function Mn(t){return!!(t&&typeof t=="object"&&t.type===Do.dateTime)}function br(t){t.forEach(function(e){if(delete e.location,Rn(e)||An(e))for(var n in e.options)delete e.options[n].location,br(e.options[n].value);else kn(e)&&_o(e.style)||(Pn(e)||In(e))&&Mn(e.style)?delete e.style.location:Ln(e)&&br(e.children)})}function ml(t,e){e===void 0&&(e={}),e=ce({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new Oo(t,e).parse();if(n.err){var o=SyntaxError(No[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||br(n.val),n.val}var ht;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(ht||(ht={}));var Nn=(function(t){En(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 Cr=(function(t){En(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('", "'),'"'),ht.INVALID_VALUE,r)||this}return e})(Nn);var fl=(function(t){En(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),ht.INVALID_VALUE,s)||this}return e})(Nn);var hl=(function(t){En(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,'"'),ht.MISSING_VALUE,o)||this}return e})(Nn);var oe;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(oe||(oe={}));function vm(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==oe.literal||n.type!==oe.literal?e.push(n):o.value+=n.value,e},[])}function Sm(t){return typeof t=="function"}function On(t,e,n,o,s,r,i){if(t.length===1&&Sr(t[0]))return[{type:oe.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(Sr(c)){a.push({type:oe.literal,value:c.value});continue}if(gl(c)){typeof r=="number"&&a.push({type:oe.literal,value:n.getNumberFormat(e).format(r)});continue}var g=c.value;if(!(s&&g in s))throw new hl(g,i);var u=s[g];if(xr(c)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?oe.literal:oe.object,value:u});continue}if(Pn(c)){var p=typeof c.style=="string"?o.date[c.style]:Mn(c.style)?c.style.parsedOptions:void 0;a.push({type:oe.literal,value:n.getDateTimeFormat(e,p).format(u)});continue}if(In(c)){var p=typeof c.style=="string"?o.time[c.style]:Mn(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:oe.literal,value:n.getDateTimeFormat(e,p).format(u)});continue}if(kn(c)){var p=typeof c.style=="string"?o.number[c.style]:_o(c.style)?c.style.parsedOptions:void 0;p&&p.scale&&(u=u*(p.scale||1)),a.push({type:oe.literal,value:n.getNumberFormat(e,p).format(u)});continue}if(Ln(c)){var f=c.children,m=c.value,y=s[m];if(!Sm(y))throw new fl(m,"function",i);var v=On(f,e,n,o,s,r),x=y(v.map(function(k){return k.value}));Array.isArray(x)||(x=[x]),a.push.apply(a,x.map(function(k){return{type:typeof k=="string"?oe.literal:oe.object,value:k}}))}if(Rn(c)){var w=c.options[u]||c.options.other;if(!w)throw new Cr(c.value,u,Object.keys(c.options),i);a.push.apply(a,On(w.value,e,n,o,s));continue}if(An(c)){var w=c.options["=".concat(u)];if(!w){if(!Intl.PluralRules)throw new Nn(`Intl.PluralRules is not available in this environment.
|
|
2
2
|
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
3
|
-
`,
|
|
4
|
-
`):""}var wl=Tm({name:"assistants",initialState:ml,reducers:{resetCues(t){t.cues=[]},setActiveAssistantCode(t,e){t.activeAssistantCode=e.payload},setWidgetAssistantSessionId(t,e){t.widgetAssistantSessionId=e.payload},registerAssistantThreadId(t,e){let{assistantCode:n,threadId:o}=e.payload;t.assistantThreads[n]={threadId:o},o>=t.nextLocalThreadId&&(t.nextLocalThreadId=o+1)},resetAssistantThread(t,e){let n=t.assistantThreads[e.payload.assistantCode];n&&(delete t.threads[n.threadId],delete t.assistantThreads[e.payload.assistantCode])},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.find(c=>c.code===e.payload.code),o=t.cues.filter(c=>c.code!==e.payload.code),{code:s,name:r,evaluationId:i,payload:a}=e.payload,{callToAction:d}=a,l=a.sources!==void 0?a.sources.filter(c=>!!c.url):n==null?void 0:n.sources;t.cues=[...o,b(h({code:s,name:r,evaluationId:i,response:a.message,editable:a.editableMessage},l!=null&&l.length?{sources:l}:{}),{callToAction:d&&{label:d.displayName,event:d.onClickEvent,value:d.eventPayload}})]}},extraReducers:t=>{t.addCase(ce.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&R.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(ce.rejected,(e,n)=>{var s;R.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(ce.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=n.meta.arg.silent?r.filter(u=>u.code!==n.meta.arg.assistantCode):r,l=d.map(u=>u.code),c=e.cues.filter(u=>!l.includes(u.code)),g=d.map(u=>h(b(h({},u),{evaluationId:s}),i?{externalConversationId:i}:{}));e.cues=[...c,...g]}).addCase(Nn.fulfilled,(e,n)=>{let a=n.payload,{threadId:o,externalConversationId:s,currentExternalIdAtRequest:r}=a,i=D(a,["threadId","externalConversationId","currentExternalIdAtRequest"]);s&&r&&s!==r||(e.threads[o]=[...e.threads[o]||[],i])}).addCase(z,()=>ml)}}),{removeCueByCode:_o,resetCues:IT,removeThreadById:Tl,receiveChunk:El,userNotification:kl,setActiveAssistantCode:Pr,setWidgetAssistantSessionId:Rr,registerAssistantThreadId:Ir,resetAssistantThread:Pl}=wl.actions,Rl=wl.reducer;import{createSlice as Em}from"@reduxjs/toolkit";import{useSelector as km}from"react-redux";var Pm={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,signInViaPopup:!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},Ar={showSearch:!1,showImageSearch:!1,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,recommendTextSuggestions:!0},Il=Em({name:"settings",initialState:Pm,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}},extraReducers:t=>{t.addCase(z,e=>{Object.assign(e,Ar)})}}),{set:On}=Il.actions,ht=t=>e=>e.settings[t],P=t=>km(ht(t)),Al=Il.reducer;function ke(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 Ko from"classnames";import{useState as Om}from"react";import{jsx as Ll}from"react/jsx-runtime";var Fo=t=>Ll("svg",b(h({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ll("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 Ml}from"react/jsx-runtime";var Nl=t=>Ml("svg",b(h({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ml("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 Ye(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={};G(Lr,{enUS:()=>Rm,nlNL:()=>Im});var Rm={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Im={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"};var Dl=({conversationId:t,evaluationId:e,type:n,assistantCode:o,contentType:s},r,i)=>{let a=new URLSearchParams;return t!=null&&a.set("conversationId",String(t)),e&&a.set("evaluationId",e),a.set("type",n),o&&a.set("assistantCode",o),a.set(s,r),i!==void 0&&a.set("data",i),`/admin/feedback?${a.toString()}`},Ho=t=>{let e=t.content,n=Dl(t,e,t.data),o=encodeURIComponent(n).length;for(;o>3e3&&e.length>0;){let s=Math.max(0,Math.floor(e.length*3e3/o)-1);e=t.content.slice(0,s),n=Dl(t,e?`${e}\u2026`:"",t.data),o=encodeURIComponent(n).length}return n};import{useSelector as Nm}from"react-redux";import{createContext as Am,useContext as Lm}from"react";import{jsx as Mm}from"react/jsx-runtime";var _l=Am(null),Fl=({handler:t,children:e})=>Mm(_l.Provider,{value:t!=null?t:null,children:e}),Hl=()=>Lm(_l);var zt=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}`};function Bo(t){let e=P("enableFeedbackForm"),n=Hl(),o=Nm(zt(t));return e?n?{mode:"custom-handler",open:()=>n(t)}:o?{mode:"passwordless-link",href:o}:{mode:"disabled"}:{mode:"disabled"}}import{useSelector as Dm}from"react-redux";import{jsx as et,jsxs as Fm}from"react/jsx-runtime";var _m=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o})=>{let s=C("FeedbackThumbs",Ol),r=Dm(pe),i=Ho({conversationId:r,evaluationId:n,type:o,assistantCode:t,contentType:"assistantOutput",content:e}),a=Bo(i),d=A(Lr),l=q(),[c,g]=Om(null),u=m=>{l("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:m})},p=m=>{m.stopPropagation(),Ye(m.target,s.fadeup),g("up"),u("up")},f=m=>S(null,null,function*(){m.stopPropagation(),Ye(m.target,s.fadedown),g("down"),u("down"),a.mode==="custom-handler"&&(yield a.open())});return Fm("div",{className:s.thumbs,children:[et(M.Button,{title:d("thumbsUp"),onClick:p,icon:et(Nl,{}),className:Ko(s.thumbsUp,c==="up"&&s.selected),disabled:!!c}),a.mode==="custom-handler"?et(M.Button,{title:d("thumbsDown"),onClick:f,icon:et(Fo,{}),className:Ko(s.thumbsDown,c==="down"&&s.selected),disabled:!!c}):a.mode==="passwordless-link"?et(M.Button,{as:"a",title:d("thumbsDown"),href:a.href,target:"_blank",rel:"noreferrer",onClick:f,icon:et(Fo,{}),className:Ko(s.thumbsDown,c==="down"&&s.selected),disabled:!!c}):et(M.Button,{title:d("thumbsDown"),onClick:f,icon:et(Fo,{}),className:Ko(s.thumbsDown,c==="down"&&s.selected),disabled:!!c})]})},Uo=_m;import xf from"dompurify";import{marked as bf}from"marked";import{Fragment as Yl,useMemo as Cf,useRef as wf,useState as Tf}from"react";import{useState as of}from"react";import{FloatingFocusManager as Hm,FloatingPortal as Bm,autoUpdate as Km,flip as Um,offset as Wm,safePolygon as zm,shift as Vm,useClick as jm,useDismiss as qm,useFloating as $m,useHover as Gm,useInteractions as Qm,useMergeRefs as Kl,useRole as Xm}from"@floating-ui/react";import*as Pe from"react";var Wo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as tt,jsxs as Bl}from"react/jsx-runtime";function Jm({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Pe.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=$m({placement:e,open:d,onOpenChange:l,whileElementsMounted:Km,middleware:[Wm(5),Um({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Vm({padding:10})]}),g=c.context,u=jm(g,{enabled:s==null}),p=qm(g),f=Xm(g),m=Gm(g,{enabled:o!=null?o:!1,handleClose:zm()}),y=Qm([u,p,f,m]);return Pe.useMemo(()=>b(h(h({open:d,setOpen:l},y),c),{modal:n,tooltip:o}),[d,l,y,c,n,o])}var Ul=Pe.createContext(null),Mr=()=>{let t=Pe.useContext(Ul);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=D(s,["children","modal"]);let r=Jm(h({modal:e},n));return tt(Ul.Provider,{value:r,children:t})};function Zm(o){var s=o,{as:t,children:e}=s,n=D(s,["as","children"]);let r=Mr(),i=t||"button",a=e.ref,d=Kl([r.refs.setReference,a]);return tt(i,b(h(h({ref:d},i==="button"||t===void 0||t==="button"?{type:"button"}:{}),r.getReferenceProps(n)),{children:e}))}var Ym=Pe.forwardRef(function(s,o){var r=s,{style:e}=r,n=D(r,["style"]);var c;let l=Mr(),{context:i}=l,a=D(l,["context"]),d=Kl([a.refs.setFloating,o]);return i.open?tt(Bm,{children:tt(Hm,{context:i,modal:a.modal,disabled:(c=n.disableFocusManager)!=null?c:a.tooltip,children:tt("div",b(h({ref:d,style:h(b(h({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function ef(s){var r=s,{as:t,children:e,onClick:n}=r,o=D(r,["as","children","onClick"]);let{setOpen:i}=Mr();return tt(t||"button",b(h({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function Wl({trigger:t,children:e,placement:n="top"}){return Bl(yt,{tooltip:!0,placement:n,children:[Bl(yt.Content,{className:Wo.tooltip,children:[e,tt("div",{className:Wo.arrow})]}),tt(yt.Trigger,{className:Wo.tooltipTrigger,children:t})]})}yt.Trigger=Zm;yt.Content=Ym;yt.Button=ef;var V=yt;var Nr={};G(Nr,{enUS:()=>tf,nlNL:()=>nf});var tf={showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}],showLess:[{type:0,value:"Show less"}]},nf={showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}],showLess:[{type:0,value:"Toon minder"}]};var zl={sources:"dd-cNsGl",source:"dd-LoJ6U",tooltip:"dd-7ZGu9",linkContent:"dd-O2IoN",showMoreSources:"dd-ev8Yr"};import{jsx as Vt,jsxs as jl}from"react/jsx-runtime";var Vl=3,sf=({sources:t,onClick:e,sourceTestId:n="assistant-source"})=>{let o=A(Nr),s=C("AssistantSources",zl),[r,i]=of(!1),a=t.filter(c=>!!c.url),d=r?a:a.slice(0,Vl),l=a.length>Vl;return d.length===0?null:jl("ul",{className:s.sources,children:[d.map(c=>Vt("li",{className:s.source,"data-testid":n,children:jl(V,{tooltip:!0,placement:"top-start",children:[Vt(V.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:c.url,onClick:g=>{g.stopPropagation(),e==null||e(c)},children:Vt("span",{className:s.linkContent,children:c.name})}),c.url&&Vt(V.Content,{className:s.tooltip,children:decodeURIComponent(c.url)})]})},c.name)),l&&Vt("li",{className:s.source,children:Vt("button",{type:"button",className:s.showMoreSources,onClick:()=>i(c=>!c),children:r?o("showLess"):o("showMore",{amount:a.length-d.length})})})]})},ql=sf;import Jl from"classnames";import{createRef as hf,useCallback as Dr,useMemo as yf,useRef as vf,useState as Sf}from"react";import{useState as rf,useLayoutEffect as af}from"react";var lf=["bottom","height","left","right","top","width"],df=(t={},e={})=>lf.some(n=>t[n]!==e[n]),Be=new Map,$l,Gl=()=>{let t=[],e=[];Be.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();df(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{Be.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),$l=window.requestAnimationFrame(Gl)};function cf(t,e){return{observe(){let n=Be.size===0;if(Be.has(t)){let o=Be.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else Be.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&Gl()},unobserve(){let n=Be.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Be.delete(t),Be.size||cancelAnimationFrame($l)}}}}function Or(t){let[e,n]=rf(null);return af(()=>{if(!t.current)return;let o=cf(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as pf,useLayoutEffect as gf,useState as mf}from"react";import{createPortal as ff}from"react-dom";import{useEffect as uf}from"react";function vt(t){uf(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function St(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var Ql={root:"dd-r-dgo"};var Xl=({children:t,parentNode:e})=>{let[n,o]=mf(null),s=pf(pn);return gf(()=>{let r=document.createElement("div");return St(r),r.classList.add(Ql.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?ff(t,n):null};var Re={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 _r}from"react/jsx-runtime";var zo=(t=!1)=>{let[e,n]=Sf(t),o=Dr(()=>n(!0),[]),s=Dr(()=>n(!1),[]),r=Dr(()=>n(a=>!a),[]),i=vf(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function Fr(t,e=null,n=0){if(!t)return{display:"none"};let o=e?t.top-e.top<0||t.top<e.top-n?e.top-n:t.top+t.height>e.top+e.height+n?e.top+e.height+n-t.height:t.top:t.top,s=e?t.left<e.left-n?e.left-n:t.left+t.width>e.left+e.width+n?e.left+e.width+n-t.width:t.left:t.left;return{top:o,left:s,height:t.height,width:t.width}}var jt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=hf(),position:o="above",align:s="center",children:r,toStyle:i=Fr,parentNode:a}=c,d=D(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let g=Or(e),u=Or(n),p=yf(()=>i(g,u,0),[g,u]);return _r(Xl,{parentNode:a,children:_r("div",b(h({className:Jl(Re.ref,{[Re.positionAbove]:o==="above",[Re.positionBelow]:o==="below",[Re.positionLeft]:o==="left",[Re.positionRight]:o==="right",[Re.alignStart]:s==="start",[Re.alignCenter]:s==="center",[Re.alignEnd]:s==="end"}),style:p},d),{role:"dialog",children:_r("div",{className:Jl(t,Re.root),children:r})}))})};var Zl={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",arrow:"dd-cv33T",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{jsx as qt,jsxs as Vo}from"react/jsx-runtime";function Ef(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 Hr(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 kf(t){return t.replace(/\r\n/g,`
|
|
5
|
-
`)}var Pf=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s,sources:r,onSourceClick:i})=>{let a=C("Markdown",Zl),d=wf(null),[l,c]=Tf(null),g=Cf(()=>{let v=bf.parse(kf(t));return xf.sanitize(v.toString()).replaceAll("</code>",`${Ef(a.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),u=v=>{var T;let x=v.target,w=!!((T=d.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(x.tagName)){c(null);return}l||w&&x.tagName!=="CODE"||!w&&x!==d.current||(x.addEventListener("mouseleave",()=>c(null),{once:!0}),c(x))},p=()=>{if(!l)return;c(null);let v=l.querySelector("button");v&&(Ye(v,a.fadeup),o==null||o(Hr(l)))},f=v=>{let x=v.target,w=x instanceof HTMLElement?x:null;if(x instanceof Element?x.closest("a"):null){v.stopPropagation();return}w&&"copyIcon"in w.dataset&&(Ye(w,a.fadeup),o==null||o(Hr(w.parentElement)))},m=()=>{!l||!s||(c(null),s(Hr(l)))},y=v=>{if(v===null)return;let x=v.getBoundingClientRect();x.left<0?v.style.transform=`translateX(${-x.left+2}px)`:x.right>window.innerWidth&&(v.style.transform=`translateX(${window.innerWidth-x.right-2}px)`)};return Vo(Yl,{children:[l&&(o||s)&&Vo(jt,{triggerRef:{current:l},className:a.popover,parentNode:l,children:[Vo("div",{className:a.options,ref:y,children:[o&&(l==null?void 0:l.tagName)==="CODE"&&qt("button",{type:"button",className:a.option,onClick:p,children:n}),s&&Vo(Yl,{children:[qt("div",{className:a.divider}),qt("button",{type:"button",className:a.option,onClick:m,children:e})]})]}),qt("div",{className:a.arrow})]}),qt("div",{ref:d,"data-testid":"widget-markdown-content",className:a.root,dangerouslySetInnerHTML:{__html:g},onMouseOver:u,onClick:f}),r&&r.length>0&&qt(ql,{sources:r,onClick:i})]})},xt=Pf;import{useRef as Af}from"react";var ed={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as If}from"react/jsx-runtime";var Rf=({width:t})=>{let e=C("LoadingProgressBar",ed);return If("div",{className:e.loadingBar,style:{width:t}})},jo=Rf;import{jsx as $t,jsxs as Lf}from"react/jsx-runtime";var qo=({title:t})=>{let e=Af(null);return ao(e),$t(M,{ref:e,children:$t(F,{children:Lf(F.Content,{children:[$t(F.Title,{children:t}),$t(jo,{width:"60%"}),$t(jo,{width:"90%"}),$t(jo,{width:"50%"})]})})})};var bt={};G(bt,{enUS:()=>Mf,nlNL:()=>Nf});var Mf={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"}],resetError:[{type:0,value:"The conversation could not be reset. Please try again."}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},Nf={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"}],resetError:[{type:0,value:"Het gesprek kon niet worden gewist. Probeer het opnieuw."}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};var $o={form:"dd-pleCH",formInput:"dd-pGJMY",formSubmit:"dd--gkRg",actionButton:"dd-I2NEH",resetContainer:"dd-qKIDX",sources:"dd-xf9c6",source:"dd-a-vyX",tooltip:"dd-EsgcZ",linkContent:"dd-gARDA",showMoreSources:"dd-uDGi-"};import{useRef as _f}from"react";var td={error:"dd-CoAuB"};var Br={};G(Br,{enUS:()=>Of,nlNL:()=>Df});var Of={errorPrefix:[{type:0,value:"Error:"}]},Df={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as nd,jsxs as Ff}from"react/jsx-runtime";var od=({message:t})=>{let e=_f(null),n=C("WidgetCardError",td),o=A(Br);return ao(e),nd(M,{ref:e,children:nd(F,{children:Ff(F.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as W,jsxs as Ke}from"react/jsx-runtime";var zf=3,Vf=({sources:t,onClick:e})=>{let n=A(bt),o=C("WidgetKnowledgeAssistant",$o),[s,r]=nt(!1),i=s?t:t.slice(0,zf);return i.length===0?null:Ke("ul",{className:o.sources,children:[i.map(a=>W("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Ke(V,{tooltip:!0,placement:"top-start",children:[W(V.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:a.url,onClick:d=>{d.stopPropagation(),e(a)},children:W("span",{className:o.linkContent,children:a.name})}),a.url&&W(V.Content,{className:o.tooltip,children:decodeURIComponent(a.url)})]})},a.name)),i<t&&W("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},jf=({title:t,description:e})=>W(M,{"data-testid":"knowledge-assist-empty-state",children:W(F,{children:Ke(F.Content,{children:[W(F.Title,{children:t}),W(xt,{content:e})]})})}),qf=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=A(bt),a=Kr(Go);return Ke(M,{"data-testid":"knowledge-assist-answer",ref:t,children:[W(F,{children:Ke(F.Content,{children:[W(F.Title,{children:e.question}),W(xt,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),W(Vf,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Ke(M.ButtonsContainer,{children:[W("div",{}),W(Uo,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer})]})]})},Go=Hf(null),Qo=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,onInitialQuestionConsumed:o,children:s,threadId:r,onThreadIdChange:i})=>{let[a,d]=nt(null),l=r!==void 0?r:a,c=H=>{i&&i(H),r===void 0&&d(H)},g=A(bt),[u,p]=nt(!1),[f,m]=nt(!1),[y,v]=nt(null),[x,w]=nt(!!n),[T,k]=nt(null),E=Uf(),I=q(),B=Cn(H=>{if(!t)throw new Error("No knowledge assistant was defined");return v(null),e({assistantCode:t,input:H,threadId:l,onNewThreadId(oe){c(oe)}})},{onSuccess(H){var oe;I("Assistant response displayed",{evaluationId:H.evaluationId,assistantCode:t,assistantOutput:H.answer.answer,input:H.question,sources:(oe=H.answer.sources)!=null?oe:[]}),w(!1)},onError(H){var oe;v((oe=H.message)!=null?oe:"Unknown error")}}),Z=()=>{l&&E(Tl(l)),t&&E(Pl({assistantCode:t})),c(null),t&&I("Assistant thread reset",{threadId:l!=null?l:void 0,assistantCode:t})},se=Cn(bl,{onSuccess(){Z()},onError(){v(g("resetError"))}}),N=H=>S(null,null,function*(){p(!0),k(H),yield B.call(H),p(!1),k(null)}),_={isEnabled:!!t,assistantCode:t,isSubmitting:u,isResetting:f,threadId:l,pendingInput:T,errorMessage:y,onSubmit:N,onReset(){return S(this,null,function*(){if(!f){if(v(null),!t){Z();return}m(!0),yield se.call({assistantCode:t}),m(!1)}})}};return Kf(()=>{!n||!_.isEnabled||N(n).finally(()=>{o==null||o()})},[n,t,_.isEnabled,o]),W(Go.Provider,{value:_,children:s})},Xo=()=>{let t=A(bt),e=C("WidgetKnowledgeAssistant",$o),n=Kr(Go),o=sd(null),[s,r]=nt(""),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?Ke("form",{className:e.form,onSubmit:a,children:[W("input",{ref:o,className:e.formInput,placeholder:t("inputPlaceholder"),type:"text",disabled:n.isSubmitting||n.isResetting,value:s,onChange:i}),W("button",{type:"submit",disabled:n.isSubmitting||n.isResetting||s==="",className:e.formSubmit,children:t("submitLabel")})]}):null},Jo=({title:t,emptyState:e})=>{var f,m;let n=A(bt),o=q(),s=C("WidgetKnowledgeAssistant",$o),r=sd(null),i=Kr(Go),a=(m=Wf(yl((f=i.threadId)!=null?f:-1)))!=null?m:[],d=P("hasKeyboardInput"),l=ie(),c=(y,v)=>{ke(y),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:y,copiedText:y,evaluationId:v.evaluationId})},g=(y,v)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:v.evaluationId,assistantCode:i.assistantCode,source:y})},u=y=>{y.preventDefault(),i.onReset()},p=(y,v)=>{l.send(Fe,{text:y,suggestion:{source:"assistant",sourceText:y}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:v.evaluationId,assistantOutput:v.answer.answer,usedText:y})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Ke(Bf,{children:[W(Oe,{type:"knowledge",title:t,"data-testid":"knowledge",children:Ke(te,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&W(jf,h({},e)),a.map((y,v)=>W(qf,{innerRef:v===a.length-1?r:void 0,item:y,hasKeyboardInput:d,onCopy:x=>c(x,y),onUse:x=>p(x,y),onSourceClick:x=>g(x,y)},`${y.question}_${y.answer}_${v}`)),i.pendingInput&&W(qo,{title:i.pendingInput}),i.errorMessage&&W(od,{message:i.errorMessage})]})}),a.length>0&&W("div",{className:s.resetContainer,children:W(M.Button,{disabled:i.threadId===null||i.isSubmitting||i.isResetting,onClick:u,children:n("resetLabel")})})]})};import{createRoot as at}from"react-dom/client";import Yf from"react";function Zo(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}var id="queueMicrotask error",$f=1e3,Gf=8e3;function Qf(t){return Zo(t)&&t.name==="TypeError"&&typeof t.message=="string"&&/queueMicrotask/.test(t.message)}function Xf(){try{return typeof window=="undefined"?"no-window":typeof window.queueMicrotask}catch(t){return"inaccessible"}}function Jf(){try{return typeof globalThis.queueMicrotask}catch(t){return"inaccessible"}}function Zf(t){return{message:String(t.message).slice(0,$f),stack:typeof t.stack=="string"?t.stack.slice(0,Gf):null,typeofQueueMicrotask:typeof queueMicrotask,typeofWindowQueueMicrotask:Xf(),typeofGlobalThisQueueMicrotask:Jf()}}function ad(t,e){try{if(!Qf(t))return!1;let n=e(Zf(t));return Promise.resolve(n).catch(()=>{}),!0}catch(n){return!1}}var Yo=class extends Yf.Component{constructor(){super(...arguments);this.state={error:null,caught:!1,rethrow:!1}}static getDerivedStateFromError(n){return{error:n,caught:!0}}componentDidCatch(n){ad(n,this.props.report),this.setState({rethrow:!0})}render(){if(this.state.rethrow)throw this.state.error;return this.state.caught?null:this.props.children}};import{Fragment as Wy}from"react";import{useSelector as md}from"react-redux";import Wr from"classnames";import{useCallback as pd,useEffect as lh,useMemo as dh,useState as zr}from"react";import{useDispatch as ch,useSelector as uh}from"react-redux";import{useEffect as eh,useRef as th}from"react";var ld={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as dd}from"react/jsx-runtime";var nh=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=th(null),l=C("Dialog",ld),c=u=>{if(u.key==="Escape"){u.preventDefault(),u.stopPropagation(),s();return}r&&r(u)},g=u=>{u.target===d.current&&t&&o()};return eh(()=>{var u,p;!d.current||!t||!e||(p=(u=d.current)==null?void 0:u.querySelector("input, textarea"))==null||p.focus()},[t,e,d]),t?dd("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:g,children:dd("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},Gt=nh;import oh from"classnames";var cd={root:"dd-ranhW"};import{jsx as rh}from"react/jsx-runtime";var sh=o=>{var s=o,{className:t,value:e}=s,n=D(s,["className","value"]);let r=C("TextInput",cd);return rh("input",h({className:oh(t,r.root),type:"text",value:e},n))},Dn=sh;var Ur={};G(Ur,{enUS:()=>ih,nlNL:()=>ah});var ih={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"}]},ah={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 ud={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 ae,jsxs as es}from"react/jsx-runtime";var ph=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},gh=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=A(Ur),i=C("LoginTokenDialog",ud),a=uh(ga),d=ch(),l=P("productName"),[c,g]=zr(t||""),[u,p]=zr(0),[f,m]=zr(""),y=pd(T=>S(null,null,function*(){T.preventDefault(),d(ha({email:c})),p(1)}),[n,c]),v=()=>{m(""),p(0)},x=pd(T=>S(null,null,function*(){T.preventDefault();let k=ph(T.target.elements.token.value);if(!k){m(r("verifyCodeError",{login:w}));return}d(fn({token:k}))}),[n]),w=dh(()=>T=>ae("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:v,children:T},"back-button"),[]);return lh(()=>{a==="error"&&m(r("verifyCodeError",{login:w})),a==="done"&&o()},[a]),ae(Gt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:es("div",{className:i.root,children:[ae("h1",{className:i.title,children:r("promptTitle",{productName:l})}),u===0&&es("form",{onSubmit:y,children:[ae("h2",{className:i.subtitle,children:r("requestCodeTitle")}),ae("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),ae(Dn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:T=>g(T.target.value)}),ae("div",{className:i.actions,children:ae("button",{type:"submit",className:Wr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&es("form",{onSubmit:x,children:[ae("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),ae("p",{className:i.text,children:r("verifyCodeBody")}),ae(Dn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&ae("div",{className:i.errorMessage,children:f}),es("div",{className:i.actions,children:[ae("button",{type:"button",className:Wr(i.button),onClick:v,children:r("back")}),ae("button",{type:"submit",className:Wr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},gd=gh;import{jsx as fh}from"react/jsx-runtime";var mh=()=>{let t=md(ma),e=md(Kt),n=P("adminUrl"),o=ie(),s=()=>o.send(Wt,!1),r=()=>{o.send(Wt,!1),o.send(bn)};return fh(gd,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},fd=mh;import Ny from"lodash.debounce";import{Fragment as Oy,useCallback as lc,useEffect as dc,useMemo as Dy,useState as oi}from"react";import{useDispatch as _y,useSelector as wt}from"react-redux";import{createAsyncThunk as hh,createSlice as yh}from"@reduxjs/toolkit";var vh={data:null,fetchState:"idle"},hd=t=>t.contentTypes.data,_n=hh("contentTypes/getContentTypes",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),Sh=yh({name:"contentTypes",initialState:vh,reducers:{},extraReducers:t=>{t.addCase(_n.pending,e=>{e.fetchState="loading"}).addCase(_n.rejected,e=>{e.fetchState="error"}).addCase(_n.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),yd=Sh.reducer;import{createAction as Sd,createAsyncThunk as xh,createSelector as xd,createSlice as bh}from"@reduxjs/toolkit";var Ch={data:null,fetchState:"idle",generation:0,inFlightRequestId:null,widgetTypesOverride:null},vd=t=>{t.data=null,t.fetchState="idle",t.generation+=1,t.inFlightRequestId=null,t.widgetTypesOverride=null},bd=[],me=t=>t.profile.data,wh=t=>{var e;return(e=t.profile.widgetTypesOverride)!=null?e:t.profile.data?t.profile.data.uiConfig.widget.types:bd},Hn=xd([wh],t=>t.filter(e=>e.isActive)),Xt=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||bd},Cd=t=>e=>Hn(e).find(n=>n.type===t),wd=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Td=xd([me],t=>{var o;let e=(o=t==null?void 0:t.widgetInteractiveAssistants)!=null?o:[];if(e.length>0)return[...e].sort((s,r)=>s.order-r.order||s.code.localeCompare(r.code));let n=t==null?void 0:t.knowledgeAssistantNew;return n?[{code:n,name:n,displayName:null,order:0}]:[]});var Qt="stale-profile-request",Vr=Sd("profile/clear"),Th=Sd("profile/setWidgetTypesOverride"),Fn=xh("profile/getProfile",(t,e)=>S(null,null,function*(){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");let r=s.profileCode,i=s.id,a=o.profile.generation,d=()=>{let g=e.getState(),u=g.conversation.current;return!u||u.id!==i||u.profileCode!==r||g.profile.generation!==a},l=e.getState().profile.data;if((l==null?void 0:l.code)===r)return d()?e.rejectWithValue(Qt):l;let c;try{c=yield n.getProfile(r)}catch(g){if(d())return e.rejectWithValue(Qt);throw g}if(d())return e.rejectWithValue(Qt);if(c.code!==r)throw new Error(`Profile response code "${c.code}" does not match requested "${r}"`);return c})),Eh=bh({name:"profile",initialState:Ch,reducers:{},extraReducers:t=>{t.addCase(Th,(e,n)=>{e.widgetTypesOverride=n.payload}).addCase(Fn.pending,(e,n)=>{e.fetchState="loading",e.inFlightRequestId=n.meta.requestId}).addCase(Fn.rejected,(e,n)=>{if(n.payload===Qt){if(n.meta.requestId!==e.inFlightRequestId)return;e.inFlightRequestId=null,e.fetchState="idle";return}n.meta.requestId===e.inFlightRequestId&&(e.fetchState="error",e.inFlightRequestId=null)}).addCase(Fn.fulfilled,(e,n)=>{n.meta.requestId===e.inFlightRequestId&&(e.fetchState="done",e.data=n.payload,e.inFlightRequestId=null)}).addCase(z,vd).addCase(Vr,vd)}}),Ed=Eh.reducer;import{useEffect as zd,useState as Jh,useRef as Zh,useCallback as Yh}from"react";import{useState as Rh}from"react";import jr from"classnames";var ue={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 Ue={};G(Ue,{enUS:()=>kh,nlNL:()=>Ph});var kh={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"}]},Ph={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 Bn,jsxs as Ah}from"react/jsx-runtime";var Ih=({src:t,title:e})=>{let n=C("CommandPalette",ue),[o,s]=Rh("loading"),r=A(Ue);return Ah("div",{className:n.image,children:[Bn("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:jr(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&Bn("span",{className:jr(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&Bn("span",{className:jr(n.imageSrc,n.imageSrcStatus),children:Bn(so,{})}),e&&Bn("span",{className:n.imageTitle,children:e})]})},kd=Ih;import Lh from"react";import Mh from"classnames";import{jsx as qr,jsxs as Pd}from"react/jsx-runtime";function $r({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=A(Ue),i=C("CommandPalette",ue);return Lh.Children.count(t)===0?null:Pd("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Pd("div",{className:i.listHeader,children:[e&&qr("h4",{className:i.listHeading,children:e}),o&&s&&qr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),qr("div",{className:Mh(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import ns from"classnames";import{Interweave as Md}from"interweave";import{useEffect as Uh,useMemo as Nd,useState as Od}from"react";var Nh=/[.*+?^${}()|[\]\\]/g,Oh=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Dh(t){return t.replace(Nh,"\\$&")}function _h(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Fh(t){return t.search(Oh)}function Rd(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Dh(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Id(t){return t.replace(lo,'<mark data-type="placeholder">$1</mark>')}function Kn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Hh(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 Gr(t,e,n={}){if(e){let o=_h(e.toLowerCase(),t.toLowerCase()),s=Kn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Fh(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(ca).length>3||e.length>30?Hh(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Kn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Bh=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function ts(t){return Bh.test(t)}function Qr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import Xr from"react";import{jsx as Kh}from"react/jsx-runtime";var Ad=Xr.createContext(void 0);function Jt(){let t=Xr.useContext(Ad);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ld=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=Xr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return Kh(Ad.Provider,{value:i,children:t})};import{jsx as We,jsxs as os}from"react/jsx-runtime";var Wh=3,zh=90,Dd=({children:t})=>{let e=C("CommandPalette",ue);return We("div",{className:e.listItemActions,children:t})};function Jr(p){var f=p,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:g=Wh}=f,u=D(f,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var se;let m=A(Ue),[y,v]=Od(!1),{selected:x,onChangeOpen:w}=Jt(),[T,k]=Od(!1),E=C("CommandPalette",ue);function I(N){s(N),t&&w(!1)}let B=Nd(()=>typeof a!="string"?a:ts(a)?Qr(a).trim():a,[a]),Z=Nd(()=>typeof n!="string"?n:ts(n)?Qr(n).trim():n,[n]);return Uh(()=>{k(x===l)},[x]),os("div",{className:ns(E.listItem,l===x&&E.listItemSelected),children:[os(V,{placement:"right-start",tooltip:!0,onOpenChange:k,open:T,children:[We(V.Trigger,b(h({className:E.listItemAction,"aria-disabled":(se=u.disabled)!=null?se:!1,onClick:I,"data-command-palette-item":!0,"data-item-id":l},u),{children:os("div",{className:E.listItemContent,children:[typeof o=="string"?We("p",{className:ns(E.listItemText,E.truncate,c==null?void 0:c.title),children:o}):o,B&&typeof B=="string"?We(Md,{tagName:"p",allowList:[],content:B,className:ns(E.listItemDescription,c==null?void 0:c.description,e?E.lineClamp:E.truncate)}):a]})})),Z&&Z.length>zh&&We(V.Content,{className:E.listItemTooltip,disableFocusManager:!0,children:We(Md,{className:E.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:Z.replace(/\n/g,"<br />")})})]}),l===x&&r,d&&d.length>0&&os("div",{className:E.sources,children:[We("span",{className:E.sourcesTitle,children:m("sources")}),d.slice(0,y?d.length:g).map(N=>We("a",{className:E.source,href:N.url,target:"_blank",title:N.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(N),children:N.name},N.url)),!y&&d.length>g&&We("button",{className:ns(E.source,E.sourceShowMore),type:"button",onClick:()=>v(!0),children:m("showMore",{amount:d.length-g})})]})]})}import{jsx as _d,jsxs as Vh}from"react/jsx-runtime";var Fd=()=>Vh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[_d("title",{id:"angleLeftTitle",children:"AngleLeft"}),_d("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 Hd,jsxs as Zr}from"react/jsx-runtime";function Yr({children:t,title:e,id:n,onDismiss:o}){let s=A(Ue),r=C("CommandPalette",ue),{page:i}=Jt();return i!==n?null:Zr("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&Zr("div",{className:r.pageNav,children:[Zr("button",{className:r.pageBackButton,type:"button",onClick:o,children:[Hd(Fd,{}),s("back")]}),e&&Hd("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as qh}from"react";import{jsx as Bd,jsxs as jh}from"react/jsx-runtime";var Zt=()=>jh("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Bd("path",{d:"M0 0h24v24H0z",fill:"none"}),Bd("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 Yt,jsxs as ei}from"react/jsx-runtime";function $h({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=C("CommandPalette",ue);return ei("div",{className:d.search,children:[Yt("div",{className:d.searchIcon,children:Yt(Zt,{})}),ei("div",{className:d.searchInputWrapper,children:[Yt("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&&Yt("div",{className:d.selectWrapper,children:ei("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&&Yt("option",{children:o}),s.map(l=>Yt("option",{value:l.value,children:l.label},l.value))]})})]})]})}var Kd=qh($h);import Ud from"classnames";import{jsx as Qh,jsxs as Xh}from"react/jsx-runtime";var Gh=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=D(r,["onClick","shortKeys","children"]);let i=C("CommandPalette",ue);return Xh("button",b(h({type:"button"},o),{onClick:t,className:Ud(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>Qh("span",{className:Ud(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Wd=Gh;import{jsx as Vd,jsxs as ty}from"react/jsx-runtime";var ey="[data-command-palette-item]";function Ct({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:g,search:u,updateDeps:p=[]}){let[f,m]=Jh(),y=Zh(null),v=()=>{s&&s(n),i(void 0),r(""),a(!1)},x=()=>{var N;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(N=y.current)==null||N.focus();return}if(u.length>0){r("");return}a(!1)},w=()=>{let N=T();N.length!==0&&m(N[0].dataset.itemId)},T=()=>Array.from(document.querySelectorAll(ey)||[]),k=N=>document.querySelector(`[data-item-id=${N}]`),E=N=>{let _=k(N);_&&m(_.dataset.itemId)},I=N=>{let _=k(N);_&&_.scrollIntoView({behavior:"smooth"})},B=()=>{if(!f)return;let N=T(),_=k(f);if(!_)return;let Ee=N.indexOf(_),H=N[Ee+1];H!=null&&H.dataset.itemId?E(H.dataset.itemId):w()},Z=()=>{if(!f)return;let N=T(),_=k(f);if(!_)return;let Ee=N.indexOf(_),H=N[Ee-1];H!=null&&H.dataset.itemId?E(H.dataset.itemId):E(N[N.length-1].dataset.itemId)},se=Yh(N=>{switch(N.key){case"ArrowDown":{N.preventDefault(),B();break}case"ArrowUp":{N.preventDefault(),Z();break}case"Enter":{if(f){let _=k(f);_==null||_.click()}break}}},[f]);return zd(()=>{w()},[u,o,d,g,...p]),zd(()=>{f&&I(f)},[f]),Vd(Gt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:g,onBack:x,onClose:v,onKeyDown:se,children:ty(Ld,{selected:f,setSelected:m,isOpen:g,onChangeOpen:a,page:o,children:[o===n&&Vd(Kd,{ref:y,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:d,types:l,typePlaceholder:e}),c]})})}Ct.Page=Yr;Ct.List=$r;Ct.Image=kd;Ct.ListItem=Jr;Ct.ListItemActions=Dd;Ct.Button=Wd;var Q=Ct;import{useEffect as ny}from"react";function jd(t,e){ny(()=>{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 Qd,useRef as uy}from"react";import{useSelector as py,useDispatch as gy}from"react-redux";import{createAsyncThunk as oy,createSelector as sy,createSlice as ry}from"@reduxjs/toolkit";var qd={data:null,fetchState:"idle"},iy=t=>{var e;return(e=t.entities.data)!=null?e:null},ss=sy([iy,Kt,Ua],(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}),Se=oy("entities/getEntities",(t,e)=>S(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)})),ay=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),ly=ry({name:"entities",initialState:qd,reducers:{},extraReducers:t=>{t.addCase(Se.pending,e=>{e.fetchState="loading"}).addCase(Se.rejected,e=>{e.fetchState="error"}).addCase(Se.fulfilled,(e,n)=>{e.fetchState="done",e.data=ay(e.data?[...e.data,...n.payload]:n.payload)}).addCase(z,()=>qd)}}),$d=ly.reducer;var ti={};G(ti,{enUS:()=>dy,nlNL:()=>cy});var dy={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},cy={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Gd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as ni,jsxs as fy}from"react/jsx-runtime";var my=({onCopy:t})=>{let e=uy(null),n=C("EntitiesList",Gd),o=py(ss),{setSelected:s}=Jt(),r=A(ti),i=gy();return Qd(()=>{i(Se())},[]),Qd(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),fy("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&ni(Q.List,{children:o.map((a,d)=>ni(Q.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&ni("p",{className:n.empty,children:r("noResults")})]})},Xd=my;import{jsx as Jd}from"react/jsx-runtime";var rs=t=>Jd("svg",b(h({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:Jd("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 Un={};G(Un,{enUS:()=>hy,nlNL:()=>yy});var hy={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"}]},yy={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 vy}from"react-redux";var Wn={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as zn,jsxs as xy}from"react/jsx-runtime";var Sy=({suggestion:t,source:e,context:n})=>{let o=A(Un),s=vy(pe),r=q(),i=P("enableSuggestionFeedback"),a=Ho({conversationId:s,type:e,contentType:"text",content:t.text,data:n?JSON.stringify({context:n}):void 0}),d=Bo(a),l=()=>S(null,null,function*(){r("suggestion feedback",{text:t.text,source:e,context:n}),d.mode==="custom-handler"&&(yield d.open())});return!i||d.mode==="disabled"?null:xy(V,{placement:"top-end",children:[zn(V.Trigger,{className:Wn.trigger,children:zn(rs,{"data-testid":"feedback-dropdown-trigger"})}),zn(V.Content,{className:Wn.content,children:d.mode==="custom-handler"?zn(V.Button,{className:Wn.item,onClick:l,children:o("giveFeedback")}):zn(V.Button,{className:Wn.item,as:"a",onClick:l,target:"_blank",rel:"noreferrer noopener",href:d.href,children:o("giveFeedback")})})]})},is=Sy;var Vn={};G(Vn,{enUS:()=>by,nlNL:()=>Cy});var by={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?"}]},Cy={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 Py}from"react";import{useDispatch as Ry,useSelector as Iy}from"react-redux";import{createAction as Ey,createAsyncThunk as tc,createSlice as ky}from"@reduxjs/toolkit";var wy=["{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}"],Ty=new RegExp(wy.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function Zd(t,e){let n=t.split(Ty),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 g=a.charAt(0),u=0;do l=g?e.indexOf(g,l+1):-1,u+=1;while(l!==-1&&a.indexOf(e.slice(l))!==0);if(l===-1&&u>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 Yd(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var nc={suggestions:[],fetchState:"idle"},ec={default:nc},oc=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},as=t=>t.textSuggestions,sc=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},ls=Ey("textSuggestions/refresh"),xe=tc("textSuggestions/recommendations",(t,e)=>S(null,null,function*(){var c,g,u;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=ct(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((g=o.profile.data)!=null&&g.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let p=(u=o.profile.data)==null?void 0:u.code;if(!p)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(p)}else l=yield n.getTextSuggestions(d,xn(o),t);if(s&&(l=l.map(p=>h(b(h({},p),{text:ye(p.text,s)}),p.title?{title:ye(p.title,s)}:{}))),t==="default"){let p=i?l.filter(sc(a)):l;e.dispatch(Ze(p.slice(0,r)))}return l})),jn=tc("textSuggestions/autocompletions",(t,e)=>S(null,null,function*(){var c,g;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(!((g=o.profile.data)!=null&&g.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,b(h({},xn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(sc(t))),r&&(l=l.map(u=>b(h({},u),{text:ye(u.text,r)}))),a&&(l=l.map(u=>b(h({},u),{text:u.source!=="trie-with-typos"?Zd(u.text,t):u.text}))),l=Yd(l,i),e.dispatch(Ze(l)),l})),rc=ky({name:"textSuggestions",initialState:ec,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(xe.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||nc;return b(h({},e),{[o]:b(h({},s),{fetchState:"loading"})})}).addCase(xe.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(xe.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(jn.pending,e=>{e.default.fetchState="loading"}).addCase(jn.rejected,e=>{e.default.fetchState="error"}).addCase(jn.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(z,()=>ec)}}),{setTextSuggestions:BA}=rc.actions,ic=rc.reducer;import{jsx as ds,jsxs as Ly}from"react/jsx-runtime";var Ay=({types:t,commands:e,onClick:n})=>{let o=Ry(),s=A(Vn),r=Iy(as);return Py(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(xe(i))})},[]),Ly("div",{children:[e.length>0&&ds(Q.List,{heading:s("commands"),children:e.map((i,a)=>ds(Q.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return ds(Q.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>ds(Q.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)})]})},ac=Ay;import{jsx as Ie,jsxs as ri}from"react/jsx-runtime";var Fy=200,Hy=5,By=4,si=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?By:Hy),Ky=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Uy=()=>{var Ee,H,oe;let t=_y(),e=ie(),n=A(Vn),[o,s]=oi(!1),[r,i]=oi(""),a=wt(Ja),d=wt(me),[l,c]=oi(),g=wt(Y),u=P("showSearch"),p=P("enableSuggestionFeedback"),f=P("showEntitiesCommand"),m=P("showImageSearch"),y=P("searchTriggerKey"),v=wt(hd),x=wt(cr),w=wt(Za),T=wt(Xa),k=((oe=(H=(Ee=d==null?void 0:d.uiConfig)==null?void 0:Ee.search)==null?void 0:H.initialTypes)==null?void 0:oe.filter(({isActive:O})=>O))||[],E=q(),I=Dy(()=>{let O=re=>si(x.filter($=>$.type===re.toUpperCase()),re,l),j=(v==null?void 0:v.map(re=>({value:re.code.toUpperCase(),label:`${re.name}s`,list:O(re.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(j.push({value:"PERSONAL",label:n("personalSuggestions"),list:O("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:O("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:O("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),m&&j.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:O("IMAGE"),listOrientation:"horizontal"}),k.length===0)return j;let Ne=k.map(re=>j.find($=>$.value.toLowerCase()===re.type)).filter(re=>!!re),Lt=j.filter(re=>!Ne.find($=>$.value===re.value));return[...Ne,...Lt]},[v,k,m,l]),B=[{label:n("entitiesClipboard"),onClick:()=>t(Ut("entities")),shouldShow:f&&Ky(n("entitiesClipboard"),r)}].filter(O=>O.shouldShow).filter(()=>!l),Z=lc(Ny((O,j)=>{t(mt({query:O,type:j,tags:["search-overlay"],size:l?50:20}))},Fy),[l]),se=lc((O,j)=>{j.type==="IMAGE"?e.send(pr,{suggestion:j}):e.send(Fe,{text:O,suggestion:j}),t(ve(!1))},[t]),N=O=>{ke(O.text),E("entity copied",{entity:O,type:"copy"}),t(ve(!1))};function _(O){return j=>{o?window.confirm(n("warning"))&&(O(j),s(!1)):O(j)}}return dc(()=>{r?Z(r,l):t(To())},[r,l]),dc(()=>{g&&t(_n())},[g]),jd(y,()=>{t(ve(!0)),E("open search",{via:"ctrl+k"})}),!u||!d?null:ri(Q,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:_(O=>t(ve(O))),onChangeType:O=>c(O),onChangePage:_(O=>t(Ut(O))),selectedType:l,search:r,page:a,isOpen:T,types:I,updateDeps:[x],children:[ri(Q.Page,{id:"search",children:[r.length===0&&Ie(ac,{types:k,commands:B,onClick:se}),r.length>0&&ri(Oy,{children:[B.length>0&&Ie(Q.List,{heading:n("commands"),children:B.map((O,j)=>Ie(Q.ListItem,{closeOnSelect:!1,onClick:O.onClick,id:`commands-${j}`,children:O.label},O.label))}),I.map(({value:O,label:j,list:Ne,lineClamp:Lt,listOrientation:re})=>Ie(Q.List,{heading:j,orientation:re==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(O),hasMore:!l&&w[O.toLowerCase()]>si(Ne,O,l).length,children:si(Ne,O,l).map($=>Ie(Q.ListItem,{id:`${O}-${$.id}`,closeOnSelect:!1,lineClamp:Lt,onClick:()=>se($.text,$),description:O!=="IMAGE"?$.title&&$.text:void 0,tooltip:$.text,extra:p&&Ie(Q.ListItemActions,{children:Ie(is,{context:r,source:"search",suggestion:$})}),children:O==="IMAGE"?Ie(Q.Image,{title:$.title||$.text,src:$.image}):$.title||$.text},`${$.id}-${$.text}`))},O))]})]}),Ie(Q.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:_(()=>{t(Ut("search"))}),children:Ie(Xd,{onCopy:N})})]})},cc=Uy;import{jsx as uc,jsxs as Vy}from"react/jsx-runtime";var zy=()=>{let t=P("showSearch"),e=P("isEmbedded");return Vy(Wy,{children:[t&&uc(cc,{}),e&&uc(fd,{})]})},pc=zy;import Gy from"classnames";import{useSelector as Qy}from"react-redux";import{jsx as ii}from"react/jsx-runtime";var gc=({className:t})=>ii("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:ii("g",{children:ii("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
|
+
`,ht.MISSING_INTL_API,i);var T=n.getPluralRules(e,{type:c.pluralType}).select(u-(c.offset||0));w=c.options[T]||c.options.other}if(!w)throw new Cr(c.value,u,Object.keys(c.options),i);a.push.apply(a,On(w.value,e,n,o,s,u-(c.offset||0)));continue}}return vm(a)}function xm(t,e){return e?ce(ce(ce({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=ce(ce({},t[o]),e[o]||{}),n},{})):t}function bm(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=xm(t[o],e[o]),n},ce({},t)):t}function wr(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function Cm(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:Lo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,Ao([void 0],n,!1)))},{cache:wr(t.number),strategy:Mo.variadic}),getDateTimeFormat:Lo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,Ao([void 0],n,!1)))},{cache:wr(t.dateTime),strategy:Mo.variadic}),getPluralRules:Lo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,Ao([void 0],n,!1)))},{cache:wr(t.pluralRules),strategy:Mo.variadic})}}var Tr=(function(){function t(e,n,o,s){n===void 0&&(n=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(l){var c=r.formatToParts(l);if(c.length===1)return c[0].value;var g=c.reduce(function(u,p){return!u.length||p.type!==oe.literal||typeof u[u.length-1]!="string"?u.push(p.value):u[u.length-1]+=p.value,u},[]);return g.length<=1?g[0]||"":g},this.formatToParts=function(l){return On(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=cl(i,["formatters"]);this.ast=t.__parse(e,ce(ce({},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=bm(t.formats,o),this.formatters=s&&s.formatters||Cm(this.formatterCache)}return Object.defineProperty(t,"defaultLocale",{get:function(){return t.memoizedDefaultLocale||(t.memoizedDefaultLocale=new Intl.NumberFormat().resolvedOptions().locale),t.memoizedDefaultLocale},enumerable:!1,configurable:!0}),t.memoizedDefaultLocale=null,t.resolveLocale=function(e){if(typeof Intl.Locale!="undefined"){var n=Intl.NumberFormat.supportedLocalesOf(e);return n.length>0?new Intl.Locale(n[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=ml,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 Em(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var km="dummy",Er=wm(null);function R(t){var o;let e=Tm(Er);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=Em(n,s);return i?new Tr(i).format(r):(e!==km&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as xl,createAsyncThunk as Ir,createSlice as Im}from"@reduxjs/toolkit";import{Marked as Pm}from"marked";var Fo=(t,e)=>{let n=[],o=new Pm,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var kr=new Map;function yl(t){var e;return t&&(e=kr.get(t))!=null?e:null}function vl(t){if(!t)return()=>{};let e,n=new Promise(o=>{e=o});return kr.set(t,n),o=>{kr.delete(t),e(o)}}function Rr(t){return Array.isArray(t.attachments)&&t.attachments.length>0?t.attachments:Array.isArray(t.transcript)?t.transcript.flatMap(e=>{var n;return(n=e==null?void 0:e.attachments)!=null?n:[]}):[]}var Pr={cues:[],threads:{},pending:[],widgetAssistantSessionId:null,assistantThreads:{},activeAssistantCode:null,nextLocalThreadId:1,suppressedEvaluationIds:[],suppressedSilentParentKeys:[],assistantDisplayGeneration:0,pendingEvaluationGenerations:{},pendingEvaluationAssistantCodes:{},evaluationIdDisplayGeneration:{}};function Rm(t,e){t.suppressedEvaluationIds.includes(e)||t.suppressedEvaluationIds.push(e)}function bl(t,e){return`${t}
|
|
4
|
+
${e}`}function Am(t,e,n){let o=bl(e,n);t.suppressedSilentParentKeys.includes(o)||t.suppressedSilentParentKeys.push(o)}function Lm(t,e,n){return e?t.suppressedSilentParentKeys.includes(bl(e,n)):!1}function Sl(t,e,n){if(!e)return!1;if(Cl(t,e)||Lm(t,e,n))return!0;let o=t.assistantDisplayGeneration,s=t.evaluationIdDisplayGeneration[e];if(s!==void 0)return s!==o;let r=Object.entries(t.pendingEvaluationAssistantCodes).filter(([,d])=>d===n).map(([d])=>t.pendingEvaluationGenerations[d]).filter(d=>d!==void 0),i=r.some(d=>d<o),a=r.some(d=>d===o);return i&&a?!0:i&&!a?(Rm(t,e),!0):(t.evaluationIdDisplayGeneration[e]=o,!1)}function Mm(t){let e=[...t.suppressedEvaluationIds];for(let n of t.cues)n.evaluationId&&!e.includes(n.evaluationId)&&e.push(n.evaluationId);return e}function Cl(t,e){return!!(e&&t.suppressedEvaluationIds.includes(e))}var wl=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var Tl=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},El=t=>{var n,o;let e=t.assistants.activeAssistantCode;return e&&(o=(n=t.assistants.assistantThreads[e])==null?void 0:n.threadId)!=null?o:null},kl=t=>t.assistants.activeAssistantCode;var Ho=xl("assistants/callToAction"),Dn=Ir("assistants/evaluateKnowledgeAssistant",(t,e)=>S(null,null,function*(){var f,m,y,v,x,w,T,k,E,A,_,G,te,N;let{threadId:n}=t,{deepdeskAPI:o}=e.extra,s=e.getState(),{platformVariables:r}=s.info,i=(m=(f=s.conversation.current)==null?void 0:f.externalId)!=null?m:null,a=(v=(y=t.externalConversationId)!=null?y:i)!=null?v:void 0;if((x=t.attachments)!=null&&x.length)throw new Error("Attachments are not supported for widget assistant interact; use evaluateAssistant instead.");let d=(T=(w=s.assistants.widgetAssistantSessionId)!=null?w:vn(a))!=null?T:void 0;if(!d&&a){let F=yl(a);F&&(d=(k=yield F)!=null?k:void 0)}let l=!d&&a?vl(a):null;if(!n){let F=(E=s.assistants.assistantThreads[t.assistantCode])==null?void 0:E.threadId;F?n=F:(n=s.assistants.nextLocalThreadId,e.dispatch(Mr({assistantCode:t.assistantCode,threadId:n})))}if(n==null)throw new Error("Failed to resolve thread id for widget assistant interact");let c;try{c=yield o.interactWithAssistant({assistantCode:t.assistantCode,message:t.input,sessionId:d,externalConversationId:a})}catch(F){throw l==null||l(void 0),F}let g=(_=(A=e.getState().conversation.current)==null?void 0:A.externalId)!=null?_:null;if(a&&i&&a!==g)throw l==null||l(void 0),new Error("Conversation changed before interact completed");if(c.sessionId?(e.dispatch(Lr(c.sessionId)),Ia(a,c.sessionId),l==null||l(c.sessionId)):l==null||l(d),c.evaluationStatus!=="success")throw new Error(`Assistant ${t.assistantCode} evaluation failed: ${c.evaluationStatus}`);let p=(G=Pl(c,t.assistantCode)[0])!=null?G:{response:"",sources:[]};return t.onNewThreadId&&t.onNewThreadId(n),{threadId:n,question:t.input,evaluationId:c.evaluationId,answer:{answer:(te=ve(p.response,r!=null?r:{}))!=null?te:"",sources:(N=p.sources)!=null?N:[]},externalConversationId:a,currentExternalIdAtRequest:i}})),FT=xl("assistants/extractedTextSuggestions");function Pl(t,e){var n,o;return Array.isArray(t.output)?t.output:typeof t.output=="string"?[{code:e,name:e,response:t.output}]:[b(h({code:e,name:e},t.output&&typeof t.output=="object"?t.output:{}),{response:(o=(n=t.output)==null?void 0:n.response)!=null?o:""})]}function Nm(t){var e,n,o;return!!((e=t.response)!=null&&e.trim()||t.message||t.callToAction||(n=t.callToActions)!=null&&n.length||(o=t.sources)!=null&&o.length)}var Il=Ir("assistants/resetKnowledgeAssistantThread",(t,e)=>S(null,null,function*(){var i,a,d;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(a=(i=o.conversation.current)==null?void 0:i.externalId)!=null?a:void 0,r=(d=o.assistants.widgetAssistantSessionId)!=null?d:vn(s);r&&(yield n.resetAssistantThread({assistantCode:t.assistantCode,sessionId:r}))})),ue=Ir("assistants/evaluate",(t,e)=>S(null,null,function*(){var w,T,k,E,A;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},threadId:i,attachments:a}=t,d=e.getState(),{platformVariables:l}=d.info,c=(T=(w=d.conversation.current)==null?void 0:w.externalId)!=null?T:null,g=(E=(k=t.externalConversationId)!=null?k:c)!=null?E:void 0,u;if(s==="in-memory-transcript"){if(!o.conversationQuery)throw new Error("Can't include in-memory-transcript, setConversationQuery is not defined");let _=yield o.conversationQuery();u=Array.isArray(_)?_:void 0}else Array.isArray(s)&&(u=s);if(t.includeMetadata&&d.conversation.current&&((A=t.externalConversationId)!=null?A:c)===c){let{metadata:G}=d.conversation.current;Object.assign(r,{metadata:G})}let p=Rr({attachments:a,transcript:u}),f=yield n.evaluateAssistant(t.assistantCode,h({input:r,transcript:u,externalConversationId:g,threadId:i},p.length>0?{attachments:p}:{}));if(f.evaluationStatus!=="success")return e.rejectWithValue(`Assistant ${t.assistantCode} evaluation failed: ${f.evaluationStatus}`);let m=!!(f.isSilent||t.silent),y=Pl(f,t.assistantCode);!m&&!y.some(Nm)&&P.warn(`Assistant ${t.assistantCode} returned empty output`);let v=y.map(_=>b(h({},_),{name:ve(_.name,l),response:ve(_.response,l)||""})),x=[];return v.forEach(_=>{if(!_.response)return;let G=Fo(_.response,"reply");G.length!==0&&x.push(...G.map(te=>({text:te,type:"text",source:"assistant",assistantCode:_.code,sourceLabel:_.name})))}),x.length>0&&e.dispatch(Kt(x)),b(h({},f),{output:v,isSilent:m,externalConversationId:g,currentExternalIdAtRequest:c})}));function Rl(t){return t!=null&&t.length?t.map(e=>e.response).filter(Boolean).join(`
|
|
5
|
+
`):""}var Al=Im({name:"assistants",initialState:Pr,reducers:{resetCues(t){t.cues=[]},setActiveAssistantCode(t,e){t.activeAssistantCode=e.payload},setWidgetAssistantSessionId(t,e){t.widgetAssistantSessionId=e.payload},registerAssistantThreadId(t,e){let{assistantCode:n,threadId:o}=e.payload;t.assistantThreads[n]={threadId:o},o>=t.nextLocalThreadId&&(t.nextLocalThreadId=o+1)},resetAssistantThread(t,e){let n=t.assistantThreads[e.payload.assistantCode];n&&(delete t.threads[n.threadId],delete t.assistantThreads[e.payload.assistantCode])},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;if(Sl(t,r,n))return;let 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{code:n,name:o,evaluationId:s,payload:r}=e.payload;if(Sl(t,s,n))return;let i=t.cues.find(c=>c.code===e.payload.code),a=t.cues.filter(c=>c.code!==e.payload.code),{callToAction:d}=r,l=r.sources!==void 0?r.sources.filter(c=>!!c.url):i==null?void 0:i.sources;t.cues=[...a,b(h({code:n,name:o,evaluationId:s,response:r.message,editable:r.editableMessage},l!=null&&l.length?{sources:l}:{}),{callToAction:d&&{label:d.displayName,event:d.onClickEvent,value:d.eventPayload}})]}},extraReducers:t=>{t.addCase(ue.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&P.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode),e.pendingEvaluationGenerations[n.meta.requestId]=e.assistantDisplayGeneration,e.pendingEvaluationAssistantCodes[n.meta.requestId]=n.meta.arg.assistantCode}).addCase(ue.rejected,(e,n)=>{var r;P.warn((r=n.error)==null?void 0:r.message);let o=e.pendingEvaluationGenerations[n.meta.requestId];if(delete e.pendingEvaluationGenerations[n.meta.requestId],delete e.pendingEvaluationAssistantCodes[n.meta.requestId],o!==void 0&&o!==e.assistantDisplayGeneration)return;let s=e.pending.indexOf(n.meta.arg.assistantCode);s!==-1&&e.pending.splice(s,1)}).addCase(ue.fulfilled,(e,n)=>{let o=n.meta.arg.assistantCode,s=e.pendingEvaluationGenerations[n.meta.requestId],r=n.payload,i=r==null?void 0:r.evaluationId;i&&s!==void 0&&(e.evaluationIdDisplayGeneration[i]=s);let a=s!==void 0&&s!==e.assistantDisplayGeneration;if(!a&&i){let x=e.suppressedEvaluationIds.indexOf(i);x!==-1&&e.suppressedEvaluationIds.splice(x,1)}delete e.pendingEvaluationGenerations[n.meta.requestId],delete e.pendingEvaluationAssistantCodes[n.meta.requestId];let d=!!(r!=null&&r.isSilent)||!!n.meta.arg.silent;if(!a&&i&&d&&Am(e,i,o),!a){let x=e.pending.indexOf(o);x!==-1&&e.pending.splice(x,1)}if(n.meta.arg.skipState||a)return;let{evaluationId:l,output:c,isSilent:g,externalConversationId:u,currentExternalIdAtRequest:p}=r;if(Cl(e,l)||u&&p&&u!==p)return;let f=g||n.meta.arg.silent?c.filter(x=>x.code!==n.meta.arg.assistantCode):c,m=f.map(x=>x.code),y=e.cues.filter(x=>!m.includes(x.code)&&!((g||n.meta.arg.silent)&&x.code===o&&x.evaluationId===l)),v=f.map(x=>h(b(h({},x),{evaluationId:l}),u?{externalConversationId:u}:{}));e.cues=[...y,...v]}).addCase(Dn.fulfilled,(e,n)=>{let a=n.payload,{threadId:o,externalConversationId:s,currentExternalIdAtRequest:r}=a,i=D(a,["threadId","externalConversationId","currentExternalIdAtRequest"]);s&&r&&s!==r||(e.threads[o]=[...e.threads[o]||[],i])}).addCase(z,()=>Pr).addCase(ie,e=>b(h({},Pr),{suppressedEvaluationIds:Mm(e),suppressedSilentParentKeys:[...e.suppressedSilentParentKeys],assistantDisplayGeneration:e.assistantDisplayGeneration+1,pendingEvaluationGenerations:h({},e.pendingEvaluationGenerations),pendingEvaluationAssistantCodes:h({},e.pendingEvaluationAssistantCodes),evaluationIdDisplayGeneration:h({},e.evaluationIdDisplayGeneration)}))}}),{removeCueByCode:Bo,resetCues:HT,removeThreadById:Ll,receiveChunk:Ml,userNotification:Nl,setActiveAssistantCode:Ar,setWidgetAssistantSessionId:Lr,registerAssistantThreadId:Mr,resetAssistantThread:Ol}=Al.actions,Dl=Al.reducer;import{createSlice as Om}from"@reduxjs/toolkit";import{useSelector as Dm}from"react-redux";var _m={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,signInViaPopup:!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},Nr={showSearch:!1,showImageSearch:!1,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,recommendTextSuggestions:!0},_l=Om({name:"settings",initialState:_m,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}},extraReducers:t=>{t.addCase(z,e=>{Object.assign(e,Nr)})}}),{set:_n}=_l.actions,yt=t=>e=>e.settings[t],I=t=>Dm(yt(t)),Fl=_l.reducer;function Pe(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 zo from"classnames";import{useState as zm}from"react";import{jsx as Hl}from"react/jsx-runtime";var Ko=t=>Hl("svg",b(h({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Hl("path",{fillRule:"evenodd",d:"M6.57086468,14.9173453 C6.38997052,14.9711236 6.19835748,15 6,15 L4,15 C2.8954305,15 2,14.1045695 2,13 L2,4 C2,2.8954305 2.8954305,2 4,2 L6,2 C6.68685475,2 7.29284112,2.34623869 7.65294381,2.87370078 C7.95642355,2.67736738 8.29504785,2.51351337 8.66312366,2.3818197 C9.50544052,2.08044754 10.3408482,1.9879107 10.9989281,1.99971266 C11.0150698,2.00005426 13.3487605,2.00015005 18,2 C20.7551411,2 22,6.05643086 22,12 C22,13.6824804 20.8695981,15 19,15 L15.9269768,15 C15.9359266,15.0245465 15.9451954,15.0497804 15.9547911,15.0757271 C16.007193,15.2174219 16.2391583,15.8256341 16.2970775,15.9810953 C16.4872151,16.4914441 16.6259612,16.9026411 16.7382242,17.3098712 C16.9079007,17.9253665 17,18.4798886 17,19 C17,20.4720069 16.091867,21.3862822 14.748281,21.777514 C14.1422801,21.9539723 13.6147967,22.0000922 13.0076976,22.0000008 L12.5204954,22 L12.2202699,21.6261158 C11.2556275,20.4248034 7.64562469,16.4822788 6.57086468,14.9173453 Z M8,13 C8,13.2401953 8.04443154,13.4528921 8.14171093,13.6800176 C8.40663864,14.2985643 11.914268,18.1371493 13.4599624,19.9848695 C13.7113931,19.9660111 13.9483736,19.9273712 14.1891338,19.8572655 C14.7621788,19.6904035 15,19.4509737 15,19 C15,18.6834183 14.9359344,18.2976852 14.8101464,17.8413935 C14.7161494,17.500423 14.5944107,17.1396301 14.4229225,16.6793379 C14.3689242,16.5344009 14.1358033,15.923159 14.0789589,15.7694517 C13.9489218,15.4178313 13.8632547,15.1589343 13.8046536,14.9236885 C13.5555377,13.9236468 13.8054549,13 15,13 L19,13 C19.6912225,13 20,12.6401099 20,12 C20,7.20925475 19.015127,4 18,4 C15.9322103,4 15.9322103,4 10.9655994,3.99940813 C10.5253746,3.99154158 9.91062406,4.05963657 9.33687634,4.2649175 C8.45196659,4.58152894 8,5.09776992 8,6 L8,13 Z M4,4 L4,13 L6,13 L6,4 L4,4 Z"})}));import{jsx as Bl}from"react/jsx-runtime";var Kl=t=>Bl("svg",b(h({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Bl("path",{fillRule:"evenodd",d:"M7.65336736,21.1256786 C7.2933164,21.6534897 6.68712411,22 6,22 L4,22 C2.8954305,22 2,21.1045695 2,20 L2,11 C2,9.8954305 2.8954305,9 4,9 L6,9 C6.198171,9 6.38961023,9.02882212 6.57035446,9.08250314 C7.6444817,7.51807482 11.2554748,3.57449216 12.2202699,2.37298955 L12.5204954,1.99910538 L13,1.99910538 C13.6147967,1.99901314 14.1422801,2.04513312 14.748281,2.22159137 C16.091867,2.61282321 17,3.52709845 17,4.99910538 C17,5.51921677 16.9079007,6.07373891 16.7382242,6.68923415 C16.6259612,7.09646424 16.4872151,7.50766133 16.2970775,8.01801005 C16.2391583,8.17347129 16.007193,8.78168345 15.9547911,8.92337824 C15.9451954,8.94932503 15.9359266,8.9745589 15.9269768,8.99910538 L19,8.99910538 C20.8695981,8.99910538 22,10.316625 22,11.9991054 C22,17.9426745 20.7551411,21.9991054 18,21.9991054 L11.0344006,21.9985135 C10.3408482,22.0111947 9.50544052,21.9186578 8.66312366,21.6172857 C8.29521907,21.4856533 7.9567386,21.3218904 7.65336736,21.1256786 Z M8,17.9991054 C8,18.9013355 8.45196659,19.4175764 9.33687634,19.7341879 C9.91062406,19.9394688 10.5253746,20.0075638 10.963066,19.9997143 C10.9703499,19.9995545 10.9703499,19.9995545 11,19.9991054 L18,19.9991054 C19.015127,19.9991054 20,16.7898506 20,11.9991054 C20,11.3589955 19.6912225,10.9991054 19,10.9991054 L15,10.9991054 C13.8054549,10.9991054 13.5555377,10.0754586 13.8046536,9.07541689 C13.8632547,8.84017106 13.9489218,8.5812741 14.0789589,8.22965366 C14.1358033,8.07594642 14.3689242,7.46470447 14.4229225,7.31976744 C14.5944107,6.85947528 14.7161494,6.4986824 14.8101464,6.1577119 C14.9359344,5.70142019 15,5.31568707 15,4.99910538 C15,4.54813166 14.7621788,4.30870189 14.1891338,4.1418399 C13.9483736,4.07173418 13.7113931,4.0330943 13.4599624,4.01423587 C11.914268,5.86195611 8.40663864,9.70054105 8.14171093,10.3190878 C8.04443154,10.5462133 8,10.7589101 8,10.9991054 L8,17.9991054 Z M4,11 L4,20 L6,20 L6,11 L4,11 Z"})}));function tt(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 Or={};Q(Or,{enUS:()=>Fm,nlNL:()=>Hm});var Fm={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Hm={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Ul={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};var Wl=({conversationId:t,evaluationId:e,type:n,assistantCode:o,contentType:s},r,i)=>{let a=new URLSearchParams;return t!=null&&a.set("conversationId",String(t)),e&&a.set("evaluationId",e),a.set("type",n),o&&a.set("assistantCode",o),a.set(s,r),i!==void 0&&a.set("data",i),`/admin/feedback?${a.toString()}`},Uo=t=>{let e=t.content,n=Wl(t,e,t.data),o=encodeURIComponent(n).length;for(;o>3e3&&e.length>0;){let s=Math.max(0,Math.floor(e.length*3e3/o)-1);e=t.content.slice(0,s),n=Wl(t,e?`${e}\u2026`:"",t.data),o=encodeURIComponent(n).length}return n};import{useSelector as Wm}from"react-redux";import{createContext as Bm,useContext as Km}from"react";import{jsx as Um}from"react/jsx-runtime";var zl=Bm(null),Vl=({handler:t,children:e})=>Um(zl.Provider,{value:t!=null?t:null,children:e}),ql=()=>Km(zl);var Vt=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}`};function Wo(t){let e=I("enableFeedbackForm"),n=ql(),o=Wm(Vt(t));return e?n?{mode:"custom-handler",open:()=>n(t)}:o?{mode:"passwordless-link",href:o}:{mode:"disabled"}:{mode:"disabled"}}import{useSelector as Vm}from"react-redux";import{jsx as nt,jsxs as jm}from"react/jsx-runtime";var qm=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o})=>{let s=C("FeedbackThumbs",Ul),r=Vm(ge),i=Uo({conversationId:r,evaluationId:n,type:o,assistantCode:t,contentType:"assistantOutput",content:e}),a=Wo(i),d=R(Or),l=j(),[c,g]=zm(null),u=m=>{l("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:m})},p=m=>{m.stopPropagation(),tt(m.target,s.fadeup),g("up"),u("up")},f=m=>S(null,null,function*(){m.stopPropagation(),tt(m.target,s.fadedown),g("down"),u("down"),a.mode==="custom-handler"&&(yield a.open())});return jm("div",{className:s.thumbs,children:[nt(M.Button,{title:d("thumbsUp"),onClick:p,icon:nt(Kl,{}),className:zo(s.thumbsUp,c==="up"&&s.selected),disabled:!!c}),a.mode==="custom-handler"?nt(M.Button,{title:d("thumbsDown"),onClick:f,icon:nt(Ko,{}),className:zo(s.thumbsDown,c==="down"&&s.selected),disabled:!!c}):a.mode==="passwordless-link"?nt(M.Button,{as:"a",title:d("thumbsDown"),href:a.href,target:"_blank",rel:"noreferrer",onClick:f,icon:nt(Ko,{}),className:zo(s.thumbsDown,c==="down"&&s.selected),disabled:!!c}):nt(M.Button,{title:d("thumbsDown"),onClick:f,icon:nt(Ko,{}),className:zo(s.thumbsDown,c==="down"&&s.selected),disabled:!!c})]})},Vo=qm;import Rf from"dompurify";import{marked as Af}from"marked";import{Fragment as id,useMemo as Lf,useRef as Mf,useState as Nf}from"react";import{useState as gf}from"react";import{FloatingFocusManager as Gm,FloatingPortal as $m,autoUpdate as Qm,flip as Xm,offset as Jm,safePolygon as Zm,shift as Ym,useClick as ef,useDismiss as tf,useFloating as nf,useHover as of,useInteractions as sf,useMergeRefs as Gl,useRole as rf}from"@floating-ui/react";import*as Ie from"react";var qo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as ot,jsxs as jl}from"react/jsx-runtime";function af({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Ie.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=nf({placement:e,open:d,onOpenChange:l,whileElementsMounted:Qm,middleware:[Jm(5),Xm({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Ym({padding:10})]}),g=c.context,u=ef(g,{enabled:s==null}),p=tf(g),f=rf(g),m=of(g,{enabled:o!=null?o:!1,handleClose:Zm()}),y=sf([u,p,f,m]);return Ie.useMemo(()=>b(h(h({open:d,setOpen:l},y),c),{modal:n,tooltip:o}),[d,l,y,c,n,o])}var $l=Ie.createContext(null),Dr=()=>{let t=Ie.useContext($l);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=D(s,["children","modal"]);let r=af(h({modal:e},n));return ot($l.Provider,{value:r,children:t})};function lf(o){var s=o,{as:t,children:e}=s,n=D(s,["as","children"]);let r=Dr(),i=t||"button",a=e.ref,d=Gl([r.refs.setReference,a]);return ot(i,b(h(h({ref:d},i==="button"||t===void 0||t==="button"?{type:"button"}:{}),r.getReferenceProps(n)),{children:e}))}var df=Ie.forwardRef(function(s,o){var r=s,{style:e}=r,n=D(r,["style"]);var c;let l=Dr(),{context:i}=l,a=D(l,["context"]),d=Gl([a.refs.setFloating,o]);return i.open?ot($m,{children:ot(Gm,{context:i,modal:a.modal,disabled:(c=n.disableFocusManager)!=null?c:a.tooltip,children:ot("div",b(h({ref:d,style:h(b(h({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function cf(s){var r=s,{as:t,children:e,onClick:n}=r,o=D(r,["as","children","onClick"]);let{setOpen:i}=Dr();return ot(t||"button",b(h({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function Ql({trigger:t,children:e,placement:n="top"}){return jl(vt,{tooltip:!0,placement:n,children:[jl(vt.Content,{className:qo.tooltip,children:[e,ot("div",{className:qo.arrow})]}),ot(vt.Trigger,{className:qo.tooltipTrigger,children:t})]})}vt.Trigger=lf;vt.Content=df;vt.Button=cf;var V=vt;var _r={};Q(_r,{enUS:()=>uf,nlNL:()=>pf});var uf={showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}],showLess:[{type:0,value:"Show less"}]},pf={showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}],showLess:[{type:0,value:"Toon minder"}]};var Xl={sources:"dd-cNsGl",source:"dd-LoJ6U",tooltip:"dd-7ZGu9",linkContent:"dd-O2IoN",showMoreSources:"dd-ev8Yr"};import{jsx as qt,jsxs as Zl}from"react/jsx-runtime";var Jl=3,mf=({sources:t,onClick:e,sourceTestId:n="assistant-source"})=>{let o=R(_r),s=C("AssistantSources",Xl),[r,i]=gf(!1),a=t.filter(c=>!!c.url),d=r?a:a.slice(0,Jl),l=a.length>Jl;return d.length===0?null:Zl("ul",{className:s.sources,children:[d.map(c=>qt("li",{className:s.source,"data-testid":n,children:Zl(V,{tooltip:!0,placement:"top-start",children:[qt(V.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:c.url,onClick:g=>{g.stopPropagation(),e==null||e(c)},children:qt("span",{className:s.linkContent,children:c.name})}),c.url&&qt(V.Content,{className:s.tooltip,children:decodeURIComponent(c.url)})]})},c.name)),l&&qt("li",{className:s.source,children:qt("button",{type:"button",className:s.showMoreSources,onClick:()=>i(c=>!c),children:r?o("showLess"):o("showMore",{amount:a.length-d.length})})})]})},Yl=mf;import sd from"classnames";import{createRef as Ef,useCallback as Hr,useMemo as kf,useRef as Pf,useState as If}from"react";import{useState as ff,useLayoutEffect as hf}from"react";var yf=["bottom","height","left","right","top","width"],vf=(t={},e={})=>yf.some(n=>t[n]!==e[n]),Ke=new Map,ed,td=()=>{let t=[],e=[];Ke.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();vf(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{Ke.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),ed=window.requestAnimationFrame(td)};function Sf(t,e){return{observe(){let n=Ke.size===0;if(Ke.has(t)){let o=Ke.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else Ke.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&td()},unobserve(){let n=Ke.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Ke.delete(t),Ke.size||cancelAnimationFrame(ed)}}}}function Fr(t){let[e,n]=ff(null);return hf(()=>{if(!t.current)return;let o=Sf(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as bf,useLayoutEffect as Cf,useState as wf}from"react";import{createPortal as Tf}from"react-dom";import{useEffect as xf}from"react";function St(t){xf(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function xt(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var nd={root:"dd-r-dgo"};var od=({children:t,parentNode:e})=>{let[n,o]=wf(null),s=bf(gn);return Cf(()=>{let r=document.createElement("div");return xt(r),r.classList.add(nd.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?Tf(t,n):null};var Re={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 Br}from"react/jsx-runtime";var jo=(t=!1)=>{let[e,n]=If(t),o=Hr(()=>n(!0),[]),s=Hr(()=>n(!1),[]),r=Hr(()=>n(a=>!a),[]),i=Pf(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function Kr(t,e=null,n=0){if(!t)return{display:"none"};let o=e?t.top-e.top<0||t.top<e.top-n?e.top-n:t.top+t.height>e.top+e.height+n?e.top+e.height+n-t.height:t.top:t.top,s=e?t.left<e.left-n?e.left-n:t.left+t.width>e.left+e.width+n?e.left+e.width+n-t.width:t.left:t.left;return{top:o,left:s,height:t.height,width:t.width}}var jt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=Ef(),position:o="above",align:s="center",children:r,toStyle:i=Kr,parentNode:a}=c,d=D(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let g=Fr(e),u=Fr(n),p=kf(()=>i(g,u,0),[g,u]);return Br(od,{parentNode:a,children:Br("div",b(h({className:sd(Re.ref,{[Re.positionAbove]:o==="above",[Re.positionBelow]:o==="below",[Re.positionLeft]:o==="left",[Re.positionRight]:o==="right",[Re.alignStart]:s==="start",[Re.alignCenter]:s==="center",[Re.alignEnd]:s==="end"}),style:p},d),{role:"dialog",children:Br("div",{className:sd(t,Re.root),children:r})}))})};var rd={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{jsx as Gt,jsxs as Go}from"react/jsx-runtime";function Of(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 Ur(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 Df(t){return t.replace(/\r\n/g,`
|
|
6
|
+
`)}var _f=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s,sources:r,onSourceClick:i})=>{let a=C("Markdown",rd),d=Mf(null),[l,c]=Nf(null),g=Lf(()=>{let v=Af.parse(Df(t));return Rf.sanitize(v.toString()).replaceAll("</code>",`${Of(a.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),u=v=>{var T;let x=v.target,w=!!((T=d.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(x.tagName)){c(null);return}l||w&&x.tagName!=="CODE"||!w&&x!==d.current||(x.addEventListener("mouseleave",()=>c(null),{once:!0}),c(x))},p=()=>{if(!l)return;c(null);let v=l.querySelector("button");v&&(tt(v,a.fadeup),o==null||o(Ur(l)))},f=v=>{let x=v.target,w=x instanceof HTMLElement?x:null;if(x instanceof Element?x.closest("a"):null){v.stopPropagation();return}w&&"copyIcon"in w.dataset&&(tt(w,a.fadeup),o==null||o(Ur(w.parentElement)))},m=()=>{!l||!s||(c(null),s(Ur(l)))},y=v=>{if(v===null)return;let x=v.getBoundingClientRect();x.left<0?v.style.transform=`translateX(${-x.left+2}px)`:x.right>window.innerWidth&&(v.style.transform=`translateX(${window.innerWidth-x.right-2}px)`)};return Go(id,{children:[l&&(o||s)&&Go(jt,{triggerRef:{current:l},className:a.popover,parentNode:l,children:[Go("div",{className:a.options,ref:y,children:[o&&(l==null?void 0:l.tagName)==="CODE"&&Gt("button",{type:"button",className:a.option,onClick:p,children:n}),s&&Go(id,{children:[Gt("div",{className:a.divider}),Gt("button",{type:"button",className:a.option,onClick:m,children:e})]})]}),Gt("div",{className:a.arrow})]}),Gt("div",{ref:d,"data-testid":"widget-markdown-content",className:a.root,dangerouslySetInnerHTML:{__html:g},onMouseOver:u,onClick:f}),r&&r.length>0&&Gt(Yl,{sources:r,onClick:i})]})},bt=_f;import{useRef as Bf}from"react";var ad={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as Hf}from"react/jsx-runtime";var Ff=({width:t})=>{let e=C("LoadingProgressBar",ad);return Hf("div",{className:e.loadingBar,style:{width:t}})},$o=Ff;import{jsx as $t,jsxs as Kf}from"react/jsx-runtime";var Qo=({title:t})=>{let e=Bf(null);return uo(e),$t(M,{ref:e,children:$t(H,{children:Kf(H.Content,{children:[$t(H.Title,{children:t}),$t($o,{width:"60%"}),$t($o,{width:"90%"}),$t($o,{width:"50%"})]})})})};var Ct={};Q(Ct,{enUS:()=>Uf,nlNL:()=>Wf});var Uf={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"}],resetError:[{type:0,value:"The conversation could not be reset. Please try again."}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},Wf={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"}],resetError:[{type:0,value:"Het gesprek kon niet worden gewist. Probeer het opnieuw."}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};var Xo={form:"dd-pleCH",formInput:"dd-pGJMY",formSubmit:"dd--gkRg",actionButton:"dd-I2NEH",resetContainer:"dd-qKIDX",sources:"dd-xf9c6",source:"dd-a-vyX",tooltip:"dd-EsgcZ",linkContent:"dd-gARDA",showMoreSources:"dd-uDGi-"};import{useRef as qf}from"react";var ld={error:"dd-CoAuB"};var Wr={};Q(Wr,{enUS:()=>zf,nlNL:()=>Vf});var zf={errorPrefix:[{type:0,value:"Error:"}]},Vf={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as dd,jsxs as jf}from"react/jsx-runtime";var cd=({message:t})=>{let e=qf(null),n=C("WidgetCardError",ld),o=R(Wr);return uo(e),dd(M,{ref:e,children:dd(H,{children:jf(H.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as W,jsxs as Ue}from"react/jsx-runtime";var Zf=3,Yf=({sources:t,onClick:e})=>{let n=R(Ct),o=C("WidgetKnowledgeAssistant",Xo),[s,r]=st(!1),i=s?t:t.slice(0,Zf);return i.length===0?null:Ue("ul",{className:o.sources,children:[i.map(a=>W("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Ue(V,{tooltip:!0,placement:"top-start",children:[W(V.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:a.url,onClick:d=>{d.stopPropagation(),e(a)},children:W("span",{className:o.linkContent,children:a.name})}),a.url&&W(V.Content,{className:o.tooltip,children:decodeURIComponent(a.url)})]})},a.name)),i<t&&W("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},eh=({title:t,description:e})=>W(M,{"data-testid":"knowledge-assist-empty-state",children:W(H,{children:Ue(H.Content,{children:[W(H.Title,{children:t}),W(bt,{content:e})]})})}),th=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=R(Ct),a=zr(Jo);return Ue(M,{"data-testid":"knowledge-assist-answer",ref:t,children:[W(H,{children:Ue(H.Content,{children:[W(H.Title,{children:e.question}),W(bt,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),W(Yf,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Ue(M.ButtonsContainer,{children:[W("div",{}),W(Vo,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer})]})]})},Jo=Gf(null),Zo=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,onInitialQuestionConsumed:o,children:s,threadId:r,onThreadIdChange:i})=>{let[a,d]=st(null),l=r!==void 0?r:a,c=B=>{i&&i(B),r===void 0&&d(B)},g=R(Ct),[u,p]=st(!1),[f,m]=st(!1),[y,v]=st(null),[x,w]=st(!!n),[T,k]=st(null),E=Xf(),A=j(),_=Tn(B=>{if(!t)throw new Error("No knowledge assistant was defined");return v(null),e({assistantCode:t,input:B,threadId:l,onNewThreadId(se){c(se)}})},{onSuccess(B){var se;A("Assistant response displayed",{evaluationId:B.evaluationId,assistantCode:t,assistantOutput:B.answer.answer,input:B.question,sources:(se=B.answer.sources)!=null?se:[]}),w(!1)},onError(B){var se;v((se=B.message)!=null?se:"Unknown error")}}),G=()=>{l&&E(Ll(l)),t&&E(Ol({assistantCode:t})),c(null),t&&A("Assistant thread reset",{threadId:l!=null?l:void 0,assistantCode:t})},te=Tn(Il,{onSuccess(){G()},onError(){v(g("resetError"))}}),N=B=>S(null,null,function*(){p(!0),k(B),yield _.call(B),p(!1),k(null)}),F={isEnabled:!!t,assistantCode:t,isSubmitting:u,isResetting:f,threadId:l,pendingInput:T,errorMessage:y,onSubmit:N,onReset(){return S(this,null,function*(){if(!f){if(v(null),!t){G();return}m(!0),yield te.call({assistantCode:t}),m(!1)}})}};return Qf(()=>{!n||!F.isEnabled||N(n).finally(()=>{o==null||o()})},[n,t,F.isEnabled,o]),W(Jo.Provider,{value:F,children:s})},Yo=()=>{let t=R(Ct),e=C("WidgetKnowledgeAssistant",Xo),n=zr(Jo),o=ud(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?Ue("form",{className:e.form,onSubmit:a,children:[W("input",{ref:o,className:e.formInput,placeholder:t("inputPlaceholder"),type:"text",disabled:n.isSubmitting||n.isResetting,value:s,onChange:i}),W("button",{type:"submit",disabled:n.isSubmitting||n.isResetting||s==="",className:e.formSubmit,children:t("submitLabel")})]}):null},es=({title:t,emptyState:e})=>{var f,m;let n=R(Ct),o=j(),s=C("WidgetKnowledgeAssistant",Xo),r=ud(null),i=zr(Jo),a=(m=Jf(Tl((f=i.threadId)!=null?f:-1)))!=null?m:[],d=I("hasKeyboardInput"),l=ae(),c=(y,v)=>{Pe(y),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:y,copiedText:y,evaluationId:v.evaluationId})},g=(y,v)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:v.evaluationId,assistantCode:i.assistantCode,source:y})},u=y=>{y.preventDefault(),i.onReset()},p=(y,v)=>{l.send(He,{text:y,suggestion:{source:"assistant",sourceText:y}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:v.evaluationId,assistantOutput:v.answer.answer,usedText:y})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Ue($f,{children:[W(De,{type:"knowledge",title:t,"data-testid":"knowledge",children:Ue(ne,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&W(eh,h({},e)),a.map((y,v)=>W(th,{innerRef:v===a.length-1?r:void 0,item:y,hasKeyboardInput:d,onCopy:x=>c(x,y),onUse:x=>p(x,y),onSourceClick:x=>g(x,y)},`${y.question}_${y.answer}_${v}`)),i.pendingInput&&W(Qo,{title:i.pendingInput}),i.errorMessage&&W(cd,{message:i.errorMessage})]})}),a.length>0&&W("div",{className:s.resetContainer,children:W(M.Button,{disabled:i.threadId===null||i.isSubmitting||i.isResetting,onClick:u,children:n("resetLabel")})})]})};import{createRoot as dt}from"react-dom/client";import lh from"react";function ts(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}var gd="queueMicrotask error",nh=1e3,oh=8e3;function sh(t){return ts(t)&&t.name==="TypeError"&&typeof t.message=="string"&&/queueMicrotask/.test(t.message)}function rh(){try{return typeof window=="undefined"?"no-window":typeof window.queueMicrotask}catch(t){return"inaccessible"}}function ih(){try{return typeof globalThis.queueMicrotask}catch(t){return"inaccessible"}}function ah(t){return{message:String(t.message).slice(0,nh),stack:typeof t.stack=="string"?t.stack.slice(0,oh):null,typeofQueueMicrotask:typeof queueMicrotask,typeofWindowQueueMicrotask:rh(),typeofGlobalThisQueueMicrotask:ih()}}function md(t,e){try{if(!sh(t))return!1;let n=e(ah(t));return Promise.resolve(n).catch(()=>{}),!0}catch(n){return!1}}var ns=class extends lh.Component{constructor(){super(...arguments);this.state={error:null,caught:!1,rethrow:!1}}static getDerivedStateFromError(n){return{error:n,caught:!0}}componentDidCatch(n){md(n,this.props.report),this.setState({rethrow:!0})}render(){if(this.state.rethrow)throw this.state.error;return this.state.caught?null:this.props.children}};import{Fragment as Jy}from"react";import{useSelector as bd}from"react-redux";import qr from"classnames";import{useCallback as Sd,useEffect as yh,useMemo as vh,useState as jr}from"react";import{useDispatch as Sh,useSelector as xh}from"react-redux";import{useEffect as dh,useRef as ch}from"react";var fd={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as hd}from"react/jsx-runtime";var uh=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=ch(null),l=C("Dialog",fd),c=u=>{if(u.key==="Escape"){u.preventDefault(),u.stopPropagation(),s();return}r&&r(u)},g=u=>{u.target===d.current&&t&&o()};return dh(()=>{var u,p;!d.current||!t||!e||(p=(u=d.current)==null?void 0:u.querySelector("input, textarea"))==null||p.focus()},[t,e,d]),t?hd("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:g,children:hd("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},Qt=uh;import ph from"classnames";var yd={root:"dd-ranhW"};import{jsx as mh}from"react/jsx-runtime";var gh=o=>{var s=o,{className:t,value:e}=s,n=D(s,["className","value"]);let r=C("TextInput",yd);return mh("input",h({className:ph(t,r.root),type:"text",value:e},n))},Fn=gh;var Vr={};Q(Vr,{enUS:()=>fh,nlNL:()=>hh});var fh={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"}]},hh={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 vd={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 le,jsxs as os}from"react/jsx-runtime";var bh=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},Ch=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=R(Vr),i=C("LoginTokenDialog",vd),a=xh(va),d=Sh(),l=I("productName"),[c,g]=jr(t||""),[u,p]=jr(0),[f,m]=jr(""),y=Sd(T=>S(null,null,function*(){T.preventDefault(),d(ba({email:c})),p(1)}),[n,c]),v=()=>{m(""),p(0)},x=Sd(T=>S(null,null,function*(){T.preventDefault();let k=bh(T.target.elements.token.value);if(!k){m(r("verifyCodeError",{login:w}));return}d(hn({token:k}))}),[n]),w=vh(()=>T=>le("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:v,children:T},"back-button"),[]);return yh(()=>{a==="error"&&m(r("verifyCodeError",{login:w})),a==="done"&&o()},[a]),le(Qt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:os("div",{className:i.root,children:[le("h1",{className:i.title,children:r("promptTitle",{productName:l})}),u===0&&os("form",{onSubmit:y,children:[le("h2",{className:i.subtitle,children:r("requestCodeTitle")}),le("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),le(Fn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:T=>g(T.target.value)}),le("div",{className:i.actions,children:le("button",{type:"submit",className:qr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&os("form",{onSubmit:x,children:[le("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),le("p",{className:i.text,children:r("verifyCodeBody")}),le(Fn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&le("div",{className:i.errorMessage,children:f}),os("div",{className:i.actions,children:[le("button",{type:"button",className:qr(i.button),onClick:v,children:r("back")}),le("button",{type:"submit",className:qr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},xd=Ch;import{jsx as Th}from"react/jsx-runtime";var wh=()=>{let t=bd(Sa),e=bd(Ut),n=I("adminUrl"),o=ae(),s=()=>o.send(zt,!1),r=()=>{o.send(zt,!1),o.send(wn)};return Th(xd,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},Cd=wh;import Wy from"lodash.debounce";import{Fragment as zy,useCallback as gc,useEffect as mc,useMemo as Vy,useState as li}from"react";import{useDispatch as qy,useSelector as Tt}from"react-redux";import{createAsyncThunk as Eh,createSlice as kh}from"@reduxjs/toolkit";var Ph={data:null,fetchState:"idle"},wd=t=>t.contentTypes.data,Hn=Eh("contentTypes/getContentTypes",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),Ih=kh({name:"contentTypes",initialState:Ph,reducers:{},extraReducers:t=>{t.addCase(Hn.pending,e=>{e.fetchState="loading"}).addCase(Hn.rejected,e=>{e.fetchState="error"}).addCase(Hn.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Td=Ih.reducer;import{createAction as kd,createAsyncThunk as Rh,createSelector as Pd,createSlice as Ah}from"@reduxjs/toolkit";var Lh={data:null,fetchState:"idle",generation:0,inFlightRequestId:null,widgetTypesOverride:null},Ed=t=>{t.data=null,t.fetchState="idle",t.generation+=1,t.inFlightRequestId=null,t.widgetTypesOverride=null},Id=[],fe=t=>t.profile.data,Mh=t=>{var e;return(e=t.profile.widgetTypesOverride)!=null?e:t.profile.data?t.profile.data.uiConfig.widget.types:Id},Kn=Pd([Mh],t=>t.filter(e=>e.isActive)),Jt=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||Id},Rd=t=>e=>Kn(e).find(n=>n.type===t),Ad=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Ld=Pd([fe],t=>{var o;let e=(o=t==null?void 0:t.widgetInteractiveAssistants)!=null?o:[];if(e.length>0)return[...e].sort((s,r)=>s.order-r.order||s.code.localeCompare(r.code));let n=t==null?void 0:t.knowledgeAssistantNew;return n?[{code:n,name:n,displayName:null,order:0}]:[]});var Xt="stale-profile-request",Gr=kd("profile/clear"),Nh=kd("profile/setWidgetTypesOverride"),Bn=Rh("profile/getProfile",(t,e)=>S(null,null,function*(){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");let r=s.profileCode,i=s.id,a=o.profile.generation,d=()=>{let g=e.getState(),u=g.conversation.current;return!u||u.id!==i||u.profileCode!==r||g.profile.generation!==a},l=e.getState().profile.data;if((l==null?void 0:l.code)===r)return d()?e.rejectWithValue(Xt):l;let c;try{c=yield n.getProfile(r)}catch(g){if(d())return e.rejectWithValue(Xt);throw g}if(d())return e.rejectWithValue(Xt);if(c.code!==r)throw new Error(`Profile response code "${c.code}" does not match requested "${r}"`);return c})),Oh=Ah({name:"profile",initialState:Lh,reducers:{},extraReducers:t=>{t.addCase(Nh,(e,n)=>{e.widgetTypesOverride=n.payload}).addCase(Bn.pending,(e,n)=>{e.fetchState="loading",e.inFlightRequestId=n.meta.requestId}).addCase(Bn.rejected,(e,n)=>{if(n.payload===Xt){if(n.meta.requestId!==e.inFlightRequestId)return;e.inFlightRequestId=null,e.fetchState="idle";return}n.meta.requestId===e.inFlightRequestId&&(e.fetchState="error",e.inFlightRequestId=null)}).addCase(Bn.fulfilled,(e,n)=>{n.meta.requestId===e.inFlightRequestId&&(e.fetchState="done",e.data=n.payload,e.inFlightRequestId=null)}).addCase(z,Ed).addCase(Gr,Ed)}}),Md=Oh.reducer;import{useEffect as Xd,useState as iy,useRef as ay,useCallback as ly}from"react";import{useState as Fh}from"react";import $r from"classnames";var pe={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 We={};Q(We,{enUS:()=>Dh,nlNL:()=>_h});var Dh={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"}]},_h={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 Un,jsxs as Bh}from"react/jsx-runtime";var Hh=({src:t,title:e})=>{let n=C("CommandPalette",pe),[o,s]=Fh("loading"),r=R(We);return Bh("div",{className:n.image,children:[Un("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:$r(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&Un("span",{className:$r(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&Un("span",{className:$r(n.imageSrc,n.imageSrcStatus),children:Un(ao,{})}),e&&Un("span",{className:n.imageTitle,children:e})]})},Nd=Hh;import Kh from"react";import Uh from"classnames";import{jsx as Qr,jsxs as Od}from"react/jsx-runtime";function Xr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=R(We),i=C("CommandPalette",pe);return Kh.Children.count(t)===0?null:Od("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Od("div",{className:i.listHeader,children:[e&&Qr("h4",{className:i.listHeading,children:e}),o&&s&&Qr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Qr("div",{className:Uh(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import rs from"classnames";import{Interweave as Bd}from"interweave";import{useEffect as Xh,useMemo as Kd,useState as Ud}from"react";var Wh=/[.*+?^${}()|[\]\\]/g,zh=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Vh(t){return t.replace(Wh,"\\$&")}function qh(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function jh(t){return t.search(zh)}function Dd(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Vh(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function _d(t){return t.replace(po,'<mark data-type="placeholder">$1</mark>')}function Wn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Gh(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 Jr(t,e,n={}){if(e){let o=qh(e.toLowerCase(),t.toLowerCase()),s=Wn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=jh(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(fa).length>3||e.length>30?Gh(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Wn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var $h=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function ss(t){return $h.test(t)}function Zr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import Yr from"react";import{jsx as Qh}from"react/jsx-runtime";var Fd=Yr.createContext(void 0);function Zt(){let t=Yr.useContext(Fd);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Hd=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=Yr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return Qh(Fd.Provider,{value:i,children:t})};import{jsx as ze,jsxs as is}from"react/jsx-runtime";var Jh=3,Zh=90,Wd=({children:t})=>{let e=C("CommandPalette",pe);return ze("div",{className:e.listItemActions,children:t})};function ei(p){var f=p,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:g=Jh}=f,u=D(f,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var te;let m=R(We),[y,v]=Ud(!1),{selected:x,onChangeOpen:w}=Zt(),[T,k]=Ud(!1),E=C("CommandPalette",pe);function A(N){s(N),t&&w(!1)}let _=Kd(()=>typeof a!="string"?a:ss(a)?Zr(a).trim():a,[a]),G=Kd(()=>typeof n!="string"?n:ss(n)?Zr(n).trim():n,[n]);return Xh(()=>{k(x===l)},[x]),is("div",{className:rs(E.listItem,l===x&&E.listItemSelected),children:[is(V,{placement:"right-start",tooltip:!0,onOpenChange:k,open:T,children:[ze(V.Trigger,b(h({className:E.listItemAction,"aria-disabled":(te=u.disabled)!=null?te:!1,onClick:A,"data-command-palette-item":!0,"data-item-id":l},u),{children:is("div",{className:E.listItemContent,children:[typeof o=="string"?ze("p",{className:rs(E.listItemText,E.truncate,c==null?void 0:c.title),children:o}):o,_&&typeof _=="string"?ze(Bd,{tagName:"p",allowList:[],content:_,className:rs(E.listItemDescription,c==null?void 0:c.description,e?E.lineClamp:E.truncate)}):a]})})),G&&G.length>Zh&&ze(V.Content,{className:E.listItemTooltip,disableFocusManager:!0,children:ze(Bd,{className:E.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:G.replace(/\n/g,"<br />")})})]}),l===x&&r,d&&d.length>0&&is("div",{className:E.sources,children:[ze("span",{className:E.sourcesTitle,children:m("sources")}),d.slice(0,y?d.length:g).map(N=>ze("a",{className:E.source,href:N.url,target:"_blank",title:N.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(N),children:N.name},N.url)),!y&&d.length>g&&ze("button",{className:rs(E.source,E.sourceShowMore),type:"button",onClick:()=>v(!0),children:m("showMore",{amount:d.length-g})})]})]})}import{jsx as zd,jsxs as Yh}from"react/jsx-runtime";var Vd=()=>Yh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[zd("title",{id:"angleLeftTitle",children:"AngleLeft"}),zd("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 qd,jsxs as ti}from"react/jsx-runtime";function ni({children:t,title:e,id:n,onDismiss:o}){let s=R(We),r=C("CommandPalette",pe),{page:i}=Zt();return i!==n?null:ti("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&ti("div",{className:r.pageNav,children:[ti("button",{className:r.pageBackButton,type:"button",onClick:o,children:[qd(Vd,{}),s("back")]}),e&&qd("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as ty}from"react";import{jsx as jd,jsxs as ey}from"react/jsx-runtime";var Yt=()=>ey("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[jd("path",{d:"M0 0h24v24H0z",fill:"none"}),jd("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 en,jsxs as oi}from"react/jsx-runtime";function ny({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=C("CommandPalette",pe);return oi("div",{className:d.search,children:[en("div",{className:d.searchIcon,children:en(Yt,{})}),oi("div",{className:d.searchInputWrapper,children:[en("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&&en("div",{className:d.selectWrapper,children:oi("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&&en("option",{children:o}),s.map(l=>en("option",{value:l.value,children:l.label},l.value))]})})]})]})}var Gd=ty(ny);import $d from"classnames";import{jsx as sy,jsxs as ry}from"react/jsx-runtime";var oy=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=D(r,["onClick","shortKeys","children"]);let i=C("CommandPalette",pe);return ry("button",b(h({type:"button"},o),{onClick:t,className:$d(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>sy("span",{className:$d(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Qd=oy;import{jsx as Jd,jsxs as cy}from"react/jsx-runtime";var dy="[data-command-palette-item]";function wt({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:g,search:u,updateDeps:p=[]}){let[f,m]=iy(),y=ay(null),v=()=>{s&&s(n),i(void 0),r(""),a(!1)},x=()=>{var N;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(N=y.current)==null||N.focus();return}if(u.length>0){r("");return}a(!1)},w=()=>{let N=T();N.length!==0&&m(N[0].dataset.itemId)},T=()=>Array.from(document.querySelectorAll(dy)||[]),k=N=>document.querySelector(`[data-item-id=${N}]`),E=N=>{let F=k(N);F&&m(F.dataset.itemId)},A=N=>{let F=k(N);F&&F.scrollIntoView({behavior:"smooth"})},_=()=>{if(!f)return;let N=T(),F=k(f);if(!F)return;let ke=N.indexOf(F),B=N[ke+1];B!=null&&B.dataset.itemId?E(B.dataset.itemId):w()},G=()=>{if(!f)return;let N=T(),F=k(f);if(!F)return;let ke=N.indexOf(F),B=N[ke-1];B!=null&&B.dataset.itemId?E(B.dataset.itemId):E(N[N.length-1].dataset.itemId)},te=ly(N=>{switch(N.key){case"ArrowDown":{N.preventDefault(),_();break}case"ArrowUp":{N.preventDefault(),G();break}case"Enter":{if(f){let F=k(f);F==null||F.click()}break}}},[f]);return Xd(()=>{w()},[u,o,d,g,...p]),Xd(()=>{f&&A(f)},[f]),Jd(Qt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:g,onBack:x,onClose:v,onKeyDown:te,children:cy(Hd,{selected:f,setSelected:m,isOpen:g,onChangeOpen:a,page:o,children:[o===n&&Jd(Gd,{ref:y,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:d,types:l,typePlaceholder:e}),c]})})}wt.Page=ni;wt.List=Xr;wt.Image=Nd;wt.ListItem=ei;wt.ListItemActions=Wd;wt.Button=Qd;var X=wt;import{useEffect as uy}from"react";function Zd(t,e){uy(()=>{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 tc,useRef as xy}from"react";import{useSelector as by,useDispatch as Cy}from"react-redux";import{createAsyncThunk as py,createSelector as gy,createSlice as my}from"@reduxjs/toolkit";var si={data:null,fetchState:"idle"},fy=t=>{var e;return(e=t.entities.data)!=null?e:null},as=gy([fy,Ut,ja],(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}),xe=py("entities/getEntities",(t,e)=>S(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)})),hy=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),yy=my({name:"entities",initialState:si,reducers:{},extraReducers:t=>{t.addCase(xe.pending,e=>{e.fetchState="loading"}).addCase(xe.rejected,e=>{e.fetchState="error"}).addCase(xe.fulfilled,(e,n)=>{e.fetchState="done",e.data=hy(e.data?[...e.data,...n.payload]:n.payload)}).addCase(z,()=>si).addCase(ie,()=>si)}}),Yd=yy.reducer;var ri={};Q(ri,{enUS:()=>vy,nlNL:()=>Sy});var vy={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Sy={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var ec={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as ii,jsxs as Ty}from"react/jsx-runtime";var wy=({onCopy:t})=>{let e=xy(null),n=C("EntitiesList",ec),o=by(as),{setSelected:s}=Zt(),r=R(ri),i=Cy();return tc(()=>{i(xe())},[]),tc(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),Ty("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&ii(X.List,{children:o.map((a,d)=>ii(X.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&ii("p",{className:n.empty,children:r("noResults")})]})},nc=wy;import{jsx as oc}from"react/jsx-runtime";var ls=t=>oc("svg",b(h({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:oc("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 zn={};Q(zn,{enUS:()=>Ey,nlNL:()=>ky});var Ey={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"}]},ky={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 Py}from"react-redux";var Vn={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as qn,jsxs as Ry}from"react/jsx-runtime";var Iy=({suggestion:t,source:e,context:n})=>{let o=R(zn),s=Py(ge),r=j(),i=I("enableSuggestionFeedback"),a=Uo({conversationId:s,type:e,contentType:"text",content:t.text,data:n?JSON.stringify({context:n}):void 0}),d=Wo(a),l=()=>S(null,null,function*(){r("suggestion feedback",{text:t.text,source:e,context:n}),d.mode==="custom-handler"&&(yield d.open())});return!i||d.mode==="disabled"?null:Ry(V,{placement:"top-end",children:[qn(V.Trigger,{className:Vn.trigger,children:qn(ls,{"data-testid":"feedback-dropdown-trigger"})}),qn(V.Content,{className:Vn.content,children:d.mode==="custom-handler"?qn(V.Button,{className:Vn.item,onClick:l,children:o("giveFeedback")}):qn(V.Button,{className:Vn.item,as:"a",onClick:l,target:"_blank",rel:"noreferrer noopener",href:d.href,children:o("giveFeedback")})})]})},ds=Iy;var jn={};Q(jn,{enUS:()=>Ay,nlNL:()=>Ly});var Ay={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?"}]},Ly={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 _y}from"react";import{useDispatch as Fy,useSelector as Hy}from"react-redux";import{createAction as Oy,createAsyncThunk as ic,createSlice as Dy}from"@reduxjs/toolkit";var My=["{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}"],Ny=new RegExp(My.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function sc(t,e){let n=t.split(Ny),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 g=a.charAt(0),u=0;do l=g?e.indexOf(g,l+1):-1,u+=1;while(l!==-1&&a.indexOf(e.slice(l))!==0);if(l===-1&&u>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 rc(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var ac={suggestions:[],fetchState:"idle"},ai={default:ac},lc=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},cs=t=>t.textSuggestions,dc=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},us=Oy("textSuggestions/refresh"),be=ic("textSuggestions/recommendations",(t,e)=>S(null,null,function*(){var c,g,u;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=ut(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((g=o.profile.data)!=null&&g.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let p=(u=o.profile.data)==null?void 0:u.code;if(!p)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(p)}else l=yield n.getTextSuggestions(d,bn(o),t);if(s&&(l=l.map(p=>h(b(h({},p),{text:ve(p.text,s)}),p.title?{title:ve(p.title,s)}:{}))),t==="default"){let p=i?l.filter(dc(a)):l;e.dispatch(et(p.slice(0,r)))}return l})),Gn=ic("textSuggestions/autocompletions",(t,e)=>S(null,null,function*(){var c,g;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(!((g=o.profile.data)!=null&&g.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,b(h({},bn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(dc(t))),r&&(l=l.map(u=>b(h({},u),{text:ve(u.text,r)}))),a&&(l=l.map(u=>b(h({},u),{text:u.source!=="trie-with-typos"?sc(u.text,t):u.text}))),l=rc(l,i),e.dispatch(et(l)),l})),cc=Dy({name:"textSuggestions",initialState:ai,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(be.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||ac;return b(h({},e),{[o]:b(h({},s),{fetchState:"loading"})})}).addCase(be.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(be.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(Gn.pending,e=>{e.default.fetchState="loading"}).addCase(Gn.rejected,e=>{e.default.fetchState="error"}).addCase(Gn.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(z,()=>ai).addCase(ie,()=>ai)}}),{setTextSuggestions:$A}=cc.actions,uc=cc.reducer;import{jsx as ps,jsxs as Ky}from"react/jsx-runtime";var By=({types:t,commands:e,onClick:n})=>{let o=Fy(),s=R(jn),r=Hy(cs);return _y(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(be(i))})},[]),Ky("div",{children:[e.length>0&&ps(X.List,{heading:s("commands"),children:e.map((i,a)=>ps(X.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return ps(X.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>ps(X.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)})]})},pc=By;import{jsx as Ae,jsxs as ci}from"react/jsx-runtime";var jy=200,Gy=5,$y=4,di=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?$y:Gy),Qy=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Xy=()=>{var ke,B,se;let t=qy(),e=ae(),n=R(jn),[o,s]=li(!1),[r,i]=li(""),a=Tt(nl),d=Tt(fe),[l,c]=li(),g=Tt(Y),u=I("showSearch"),p=I("enableSuggestionFeedback"),f=I("showEntitiesCommand"),m=I("showImageSearch"),y=I("searchTriggerKey"),v=Tt(wd),x=Tt(pr),w=Tt(ol),T=Tt(tl),k=((se=(B=(ke=d==null?void 0:d.uiConfig)==null?void 0:ke.search)==null?void 0:B.initialTypes)==null?void 0:se.filter(({isActive:O})=>O))||[],E=j(),A=Vy(()=>{let O=re=>di(x.filter($=>$.type===re.toUpperCase()),re,l),q=(v==null?void 0:v.map(re=>({value:re.code.toUpperCase(),label:`${re.name}s`,list:O(re.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(q.push({value:"PERSONAL",label:n("personalSuggestions"),list:O("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:O("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:O("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),m&&q.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:O("IMAGE"),listOrientation:"horizontal"}),k.length===0)return q;let Oe=k.map(re=>q.find($=>$.value.toLowerCase()===re.type)).filter(re=>!!re),Mt=q.filter(re=>!Oe.find($=>$.value===re.value));return[...Oe,...Mt]},[v,k,m,l]),_=[{label:n("entitiesClipboard"),onClick:()=>t(Wt("entities")),shouldShow:f&&Qy(n("entitiesClipboard"),r)}].filter(O=>O.shouldShow).filter(()=>!l),G=gc(Wy((O,q)=>{t(ft({query:O,type:q,tags:["search-overlay"],size:l?50:20}))},jy),[l]),te=gc((O,q)=>{q.type==="IMAGE"?e.send(mr,{suggestion:q}):e.send(He,{text:O,suggestion:q}),t(Se(!1))},[t]),N=O=>{Pe(O.text),E("entity copied",{entity:O,type:"copy"}),t(Se(!1))};function F(O){return q=>{o?window.confirm(n("warning"))&&(O(q),s(!1)):O(q)}}return mc(()=>{r?G(r,l):t(Po())},[r,l]),mc(()=>{g&&t(Hn())},[g]),Zd(y,()=>{t(Se(!0)),E("open search",{via:"ctrl+k"})}),!u||!d?null:ci(X,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:F(O=>t(Se(O))),onChangeType:O=>c(O),onChangePage:F(O=>t(Wt(O))),selectedType:l,search:r,page:a,isOpen:T,types:A,updateDeps:[x],children:[ci(X.Page,{id:"search",children:[r.length===0&&Ae(pc,{types:k,commands:_,onClick:te}),r.length>0&&ci(zy,{children:[_.length>0&&Ae(X.List,{heading:n("commands"),children:_.map((O,q)=>Ae(X.ListItem,{closeOnSelect:!1,onClick:O.onClick,id:`commands-${q}`,children:O.label},O.label))}),A.map(({value:O,label:q,list:Oe,lineClamp:Mt,listOrientation:re})=>Ae(X.List,{heading:q,orientation:re==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(O),hasMore:!l&&w[O.toLowerCase()]>di(Oe,O,l).length,children:di(Oe,O,l).map($=>Ae(X.ListItem,{id:`${O}-${$.id}`,closeOnSelect:!1,lineClamp:Mt,onClick:()=>te($.text,$),description:O!=="IMAGE"?$.title&&$.text:void 0,tooltip:$.text,extra:p&&Ae(X.ListItemActions,{children:Ae(ds,{context:r,source:"search",suggestion:$})}),children:O==="IMAGE"?Ae(X.Image,{title:$.title||$.text,src:$.image}):$.title||$.text},`${$.id}-${$.text}`))},O))]})]}),Ae(X.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:F(()=>{t(Wt("search"))}),children:Ae(nc,{onCopy:N})})]})},fc=Xy;import{jsx as hc,jsxs as Yy}from"react/jsx-runtime";var Zy=()=>{let t=I("showSearch"),e=I("isEmbedded");return Yy(Jy,{children:[t&&hc(fc,{}),e&&hc(Cd,{})]})},yc=Zy;import ov from"classnames";import{useSelector as sv}from"react-redux";import{jsx as ui}from"react/jsx-runtime";var vc=({className:t})=>ui("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:ui("g",{children:ui("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
7
|
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
8
|
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
9
|
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 mc}from"react/jsx-runtime";var jy={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},fc=({className:t,color:e})=>mc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:mc("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:jy[e||"pink"]})});var hc={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var ai={};G(ai,{enUS:()=>qy,nlNL:()=>$y});var qy={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},$y={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Xy}from"react-redux";import{jsx as li,jsxs as yc}from"react/jsx-runtime";var vc=({onLogIn:t})=>{let e=A(ai),n=P("floatingMenu"),o=P("productName"),s=Xy(),r=Qy(Y),i=C("FloatingMenu",hc);if(r===null||n===!1)return null;let a=()=>{r===!0?s(ve(!0)):t()};return yc("button",{type:"button",className:Gy(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[li("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),yc("div",{className:i.icon,children:[li(fc,{className:i.logo,color:"pink"}),r===!1&&li(gc,{className:i.lock})]})]})};import{useEffect as xv,useRef as bv}from"react";import{useDispatch as Cv,useSelector as Et}from"react-redux";function Ae(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 Jy}from"@reduxjs/toolkit";var Zy={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},cs=({ui:t})=>t.overlayCollapsed,Sc=Jy({name:"ui",initialState:Zy,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:qn,setInputFocus:us,setOverlayCollapsed:ot,setOpenOverlayWhenTyping:xc,setOverlayCollapsedUserOverwrite:bc}=Sc.actions,Cc=Sc.reducer;var wc={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as ps}from"react/jsx-runtime";var Yy=({match:t,selected:e,styles:n})=>ps(M,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:ps("span",{className:n.styleSuggestion,children:t.suggestion})}),ev=({matches:t,selectedIndex:e})=>{let n=C("StyleSuggestionList",wc);return ps(te,{children:t.map((o,s)=>ps(Yy,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},gs=ev;import{useMemo as fv}from"react";import{Interweave as Rc}from"interweave";import{useEffect as iv,useMemo as av,useRef as lv,useState as dv}from"react";import{useDispatch as cv,useSelector as Ic}from"react-redux";import{useEffect as tv}from"react";function Tc(t,e,n){tv(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Ec={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 kc,jsxs as nv}from"react/jsx-runtime";var Pc=({title:t})=>nv("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[kc("title",{id:"closeTitle",children:t}),kc("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 di={};G(di,{enUS:()=>ov,nlNL:()=>sv});var ov={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},sv={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as ze,jsxs as Ac}from"react/jsx-runtime";var uv=["search","personal-collection-search","search-autocomplete"];function pv(t,e,n,o={}){var r;let s="";return uv.includes(e)?s=Rd(Gr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=Gr(t,n,o),o.placeholders===!0&&(s=Id(s)),s}var gv=()=>{},mv=({selected:t,suggestion:e})=>{let n=A(di),o=P("inlineSuggestions"),s=Ic(ct),[r,i]=dv(!1),a=P("enableSuggestionFeedback"),d=Ic(y=>y.input.text),l=cv(),c=C("TextSuggestion",Ec),g=lv(null),u=e.source==="assistant",p=a&&!u;iv(()=>{let y=setTimeout(()=>{l(Aa({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(y)}},[e]),Tc(g,"click",()=>{l(le({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let f=()=>{l(pt({source:e.source,text:e.text,assistantCode:e.assistantCode}))},m=av(()=>pv(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:Ac("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[ze(M,{ref:g,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:gv,children:e.source==="assistant"?Ac("div",{className:c.assistantContainer,children:[ze(Rc,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),ze("span",{className:c.assistantBadge,children:n("assistant")})]}):ze(Rc,{containerTagName:"div",tagName:"span",className:c.formattedText,content:m})}),p&&r&&ze("div",{className:c.actions,children:ze(is,{source:"overlay",context:d,suggestion:e})}),u&&r&&ze("div",{className:c.closeIconContainer,children:ze("button",{type:"button",className:c.closeIcon,onClick:f,title:n("close"),children:ze(Pc,{title:n("close")})})})]})},Lc=mv;import{jsx as yv}from"react/jsx-runtime";var hv=({suggestions:t,selectedIndex:e,reverse:n})=>fv(()=>{let s=t.map((r,i)=>yv(Lc,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ms=hv;var Mc={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as vv,createSlice as Sv}from"@reduxjs/toolkit";var fs={list:{keywordMatches:[]},fetchState:"idle"},hs=t=>t.styleSuggestions.list,Tt=vv("styleSuggestions/getAll",(n,o)=>S(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 fs.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),Nc=Sv({name:"styleSuggestions",initialState:fs,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(Tt.pending,e=>{e.fetchState="loading"}).addCase(Tt.rejected,e=>{e.fetchState="error"}).addCase(Tt.fulfilled,(e,n)=>{e.fetchState="done",Je(e.list,n.payload)||(e.list=n.payload)}).addCase(gt,e=>{e.list=fs.list}).addCase(z,()=>fs)}}),{commitStyleSuggestion:Oc}=Nc.actions,Dc=Nc.reducer;var ys=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 vs,jsxs as Tv}from"react/jsx-runtime";var wv=()=>{var y;let t=bv(null),e=C("InlineSuggestionsOverlay",Mc),n=Et(Ae),o=Cv(),s=Et(Y),r=Et(Ft),i=Et(cs),a=P("showTextSuggestions"),d=Et(ut),l=Et(vn),c=P("showStyleSuggestions"),g=P("showStyleSuggestionList"),u=Et(hs),p=c&&g?ys((y=u.keywordMatches)!=null?y:[]):[],f=p.length>0,m=a&&d.length>0;return vt(()=>{setTimeout(()=>{o(ot({collapse:!0,skipWhenInputFocus:!0}))})}),xv(()=>{let v=t.current;if(!v||!v.parentElement)return;v.parentElement.style.left="0px";let x=v.getBoundingClientRect();v.parentElement.style.left=`${Math.min(window.innerWidth-4-x.right,0)}px`}),i||s!==!0||r===!1||!n&&!f||!m&&!f?null:vs("div",{className:e.root,"data-variant":"inline",children:Tv("div",{ref:t,className:e.paper,children:[f&&vs(gs,{matches:p,selectedIndex:-1}),m&&vs(te,{children:vs(ms,{suggestions:d,selectedIndex:l})})]})})},_c=wv;import Pv,{useState as ui,useEffect as Rv}from"react";var Fc={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 Iv}from"react-redux";var ci={};G(ci,{enUS:()=>Ev,nlNL:()=>kv});var Ev={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."}]},kv={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 Av,jsx as be,jsxs as Ss}from"react/jsx-runtime";var Hc=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=ui(""),[i,a]=ui(!1),[d,l]=ui(!1),c=C("Nickname",Fc),g=Pv.useRef(null),u=Iv(v=>v.info.showNicknameDialog),p=A(ci),f=P("adminUrl");Rv(()=>{o&&a(!0)},[o]);let m=()=>{if(!g.current)return;s.trim()?g.current.setCustomValidity(""):g.current.setCustomValidity(p("nicknameDialogError")),g.current.reportValidity()},y=v=>{v.preventDefault();let x=s.trim(),w=v.currentTarget.querySelector("#nickname-input");if(!x){w.setCustomValidity(p("nicknameDialogError")),w.reportValidity();return}w.setCustomValidity(""),e(x)};return Ss(Gt,{isOpen:u,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[be("div",{className:c.titleWrapper,children:be("h1",{className:c.title,children:p("title")})}),Ss("form",{className:c.dialogContent,onSubmit:y,children:[be("p",{children:p("nicknameDialogTitle")}),i&&o&&be("div",{className:c.errorMessage,children:f?(()=>{let v=p("nicknameDialogSaveError",{account:f}),x=`${f}.deepdesk.com/admin/user-settings`,w=v.indexOf(x);if(w!==-1){let T=v.substring(0,w),k=v.substring(w+x.length);return Ss(Av,{children:[T,be("a",{href:x,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:x}),k]})}return v})():p("nicknameDialogSaveErrorWithoutLink")}),be("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:p("nicknameDialogInputPlaceholder"),value:s,onChange:v=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(v.target.value)),r(v.target.value)},onBlur:m,ref:g}),d&&be("div",{className:c.errorMessage,role:"alert",children:p("nicknameDialogEmojiError")}),Ss("div",{className:c.buttonsWrapper,children:[o?be("div",{className:c.closeButtonWrapper,children:be("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:p("close")})}):null,be("div",{className:c.buttonContinueWrapper,children:be("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:p("nicknameDialogContinueButton")})})]})]})]})};import{Provider as Lv}from"react-redux";import{jsx as xs}from"react/jsx-runtime";var Mv=({children:t})=>{let n=P("locale").replace("-","");return xs(wr.Provider,{value:n,children:t})},Nv=({store:t,customStyles:e={},children:n})=>xs(Lv,{store:t,children:xs(Mv,{children:xs(pn.Provider,{value:e,children:n})})}),Ve=Nv;import hi from"classnames";import{useEffect as jv,useRef as qv,useState as $v}from"react";import{useDispatch as Gv,useSelector as je}from"react-redux";import{useState as Ov}from"react";function Bc(t,e){let[n,o]=Ov(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return R.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){R.error(i)}}]}var Kc=()=>/Mac/i.test(navigator.platform);import Fv from"classnames";import{Fragment as Hv,useCallback as gi,useMemo as Wc}from"react";var pi={};G(pi,{enUS:()=>Dv,nlNL:()=>_v});var Dv={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"}]}]},_v={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 Uc={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as bs,jsxs as zc}from"react/jsx-runtime";var mi=(t,e,n)=>o=>bs("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Bv=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=A(pi),i=ie(),a=C("Login",Uc),d=P("productName"),l=P("signInViaPopup"),c=n&&!l,g=gi(x=>{x.preventDefault(),o&&o(Number.parseInt(x.target.value,10))},[]),u=gi(x=>{x.preventDefault(),i.send(Wt,!0)},[e]),p=Wc(()=>x=>bs("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:x},"login"),[e]),f=gi(x=>bs("button",{type:"button",className:a.anchorButton,onClick:u,children:x},"prompt"),[u]),{min:m,hour:y,day:v}=Wc(()=>({min:mi(a,600,g),hour:mi(a,3600,g),day:mi(a,3600*12,g)}),[]);return zc("div",{className:Fv(t,a.root),children:[r("loginPlease",{login:c?f:p,productName:d}),o&&zc(Hv,{children:[bs("br",{}),r("snooze",{min:m,hour:y,day:v})]})]})},Cs=Bv;import{useDispatch as Kv}from"react-redux";var Vc={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as jc,jsxs as Wv}from"react/jsx-runtime";var Uv=({title:t})=>{let e=C("SearchTrigger",Vc),n=Kv(),o=q();return Wv("button",{type:"button",className:e.root,onClick:()=>{n(ve(!0)),o("open search",{via:"autocomplete-overlay"})},children:[jc(Zt,{}),jc("span",{className:e.text,children:t})]})},qc=Uv;var fi={};G(fi,{enUS:()=>zv,nlNL:()=>Vv});var zv={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"}]},Vv={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 $c={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 X,jsxs as st}from"react/jsx-runtime";var Qv=({onLogIn:t})=>{var j;let e=C("SuggestionsOverlay",$c),n=A(fi),o=je(Ae),s=je(Ia),r=Gv(),i=qv(null),a=P("searchTriggerKey"),d=P("productName"),l=je(cs),c=je(Y),g=je(fa),u=je(Ft),[p,f]=$v(null),m=P("showSearch"),y=P("showTextSuggestions"),v=P("adminUrl"),x=P("isEmbedded"),w=P("suggestionsPlacement"),[T,k]=Bc("dd-snooze-until-ms",0),E=l||T>Date.now(),I=je(ut),B=je(vn),Z=P("showStyleSuggestions"),se=P("showStyleSuggestionList"),N=je(hs),_=Z&&se?ys((j=N.keywordMatches)!=null?j:[]):[],Ee=_.length>0,H=I.filter(Ne=>Ne.source!=="gpt").length,oe=()=>{E&&k(0),r(bc(!E))},O=Ne=>{let Lt=Date.now()+Ne*1e3;k(Lt),R.info(`Snooze until: ${new Date(Lt)}`),r(ot({collapse:!0}))};return jv(()=>{H===0&&f(null)},[I,H]),vt(()=>{r(ot({collapse:!0,skipWhenInputFocus:!0}))}),c===null||u===!1?null:c===!1?st("div",{ref:i,className:hi(e.root,{[e.isCollapsed]:E}),children:[!E&&st("div",{className:e.triggers,children:[X("div",{style:{flex:1}}),X("div",{className:e.triggersRight,children:X(Nt,{className:e.toggleButton,title:n("collapse"),onClick:oe,isCollapsed:!1})})]}),X("div",{className:e.toggleButtonWrapper,children:X(Nt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:oe,isCollapsed:!0})}),st("div",{className:e.collapsible,children:[g&&st("div",{className:e.loginError,children:[X("span",{className:e.loginErrorMessage,children:g}),X("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(go()),"aria-label":n("dismissError"),children:n("dismiss")})]}),X(Cs,{loginUrl:v,isEmbedded:x,onLogIn:t,onSnooze:O})]})]}):!s||!o&&!Ee?null:st("div",{ref:i,className:hi(e.root,{[e.isCollapsed]:E}),children:[!E&&st("div",{className:e.triggers,children:[X("div",{style:{flex:1},children:m&&X("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(Kc()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>f(null),children:X(qc,{title:n("search")})})}),st("div",{className:e.triggersRight,onFocus:()=>{},children:[X("div",{className:hi(!p&&e.hintsHidden,e.hints),children:p}),X(Nt,{className:e.toggleButton,title:n("collapse"),onClick:oe,isCollapsed:!1})]})]}),X("div",{className:e.toggleButtonWrapper,children:X(Nt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:oe,isCollapsed:!0})}),(Ee||H>0&&y)&&st("div",{className:e.collapsible,onFocus:()=>{},children:[Ee&&X(gs,{matches:_,selectedIndex:-1}),H>0&&y&&X(te,{children:X(ms,{suggestions:I,selectedIndex:B,reverse:w==="above"})})]})]})},Gc=Qv;import wi from"classnames";import{Interweave as OS}from"interweave";import{useCallback as DS,useEffect as _S,useMemo as mu,useRef as FS}from"react";import{connect as HS}from"react-redux";import{useEffect as Xv,useRef as Jv,useState as Zv}from"react";function ws(t){return t.contentEditable==="true"}function Yv(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 Qc(t){let{selectionStart:e,selectionEnd:n}=ws(t)?Yv(t):t;return[e,n]}function Xc(t){let[,e]=Zv(),n=Jv(null);return n.current=Qc(t),Xv(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=Qc(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 Jc(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(lo);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 eS}from"react";var tS=["div","span","mark","strong","b","i","u","em"];function yi(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(tS.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),eS(o,{children:yi(i,e,n+1)})]}return[...t,...e]}function kt(t){return t.tagName.toLowerCase()==="textarea"}var Zc={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 lS from"classnames";import{Matcher as dS}from"interweave";import{useEffect as cS,useMemo as uS}from"react";import{useEffect as nS,useRef as oS,useState as sS}from"react";function Yc(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function Ts(t){let e=oS(null),[n,o]=sS(!1);return nS(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=Yc((g,u)=>{let p=e.current;if(!p)return;let f=g/r,m=u/r,y=p.getBoundingClientRect(),v=f>y.x&&f<y.x+y.width&&m>y.y&&m<y.y+y.height;v&&!s?(s=!0,o(!0)):!v&&s&&(s=!1,o(!1))},({clientX:g,clientY:u})=>[g,u]),[d,l]=Yc(()=>{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 Es(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function ks(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function eu(t){return t!=null}import rS from"classnames";import{forwardRef as iS,useRef as aS}from"react";var qe={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 tu}from"react/jsx-runtime";var Ps=iS((s,o)=>{var r=s,{className:t,children:e}=r,n=D(r,["className","children"]);let i=aS(null),a=C("TabCompletion",qe);return tu("div",b(h({ref:ks([i,o]),className:rS(t,a.popoverContentContainer)},n),{children:tu("div",{className:a.popoverContent,children:e})}))});import{jsx as $n,jsxs as mS}from"react/jsx-runtime";var pS=t=>e=>{let n=Fr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},gS=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=C("TabCompletion",qe),i=zo(),a=uS(()=>pS(t.getBoundingClientRect()),[t]),[d,l]=Ts(t);return cS(()=>{l?i.open():i.close()},[l]),mS("span",{children:[$n("mark",{ref:ks([d,i.triggerRef]),className:lS(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&$n(jt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:$n(Ps,{style:n,children:$n("div",{className:r.hintText,children:s})})})]})},Rs=class extends dS{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=>b(h({},s),{keywordRegex:new RegExp(`\\b${Es(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(eu);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 $n(gS,{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 fS}from"interweave";import hS from"classnames";import{jsx as nu}from"react/jsx-runtime";var yS=({inputElement:t,children:e})=>{let n=C("TabCompletion",qe),[o,s]=Ts(t);return nu("mark",{ref:o,className:hS(n.matchPlaceholder,{[n.hover]:s}),children:e})},Is=class extends fS{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 nu(yS,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Ci from"classnames";import{Matcher as PS}from"interweave";import{createRef as RS,forwardRef as IS,useCallback as AS,useEffect as uu,useRef as pu,useState as gu}from"react";import{useDispatch as LS,useSelector as bi}from"react-redux";function ou(t,e){let n=new URL(t),o=n.searchParams.get("redirect");if(o){let s=new URL(o,n.origin);return e.forEach((r,i)=>{s.searchParams.set(i,r)}),n.searchParams.set("redirect",`${s.pathname}${s.search}${s.hash}`),n.toString()}return e.forEach((s,r)=>{n.searchParams.set(r,s)}),n.toString()}import{jsx as su}from"react/jsx-runtime";var ru=()=>su("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:su("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 vS,useEffect as au,useMemo as SS,useState as lu}from"react";import{useDispatch as xS,useSelector as du}from"react-redux";import bS from"lodash.debounce";var iu={root:"dd-ky-Bv",content:"dd-kV5e1"};function As(t,e,n){var s;let o=((s=t.imageSizes)==null?void 0:s[e])||t.image||n;if(!o)return null;try{return new URL(o).toString()}catch(r){return null}}function vi(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Pt,jsxs as Si}from"react/jsx-runtime";var CS=3,wS=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),TS=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=CS})=>{let r=C("LinkSearch",iu),[i,a]=lu(""),d=xS(),l=du(oc("url")),c=du(Ya("URL")),g=SS(()=>c.map(wS),[c]),[u,p]=lu(g.length-1),f=P("fallbackImage"),m=w=>{let T=w.target;a(T.value)},y=(w,T)=>{w.stopPropagation(),w.preventDefault(),window.open(T,"_blank")},v=w=>{var E;let T=u-1<0?g.length-1:u-1,k=u+1===g.length?0:u+1;w.code==="Escape"&&(a(""),e()),w.code==="ArrowUp"&&p(T),w.code==="ArrowDown"&&p(k),w.code==="Enter"&&t(((E=g[u])==null?void 0:E.text)||i)},x=vS(bS(w=>{d(mt({query:w,type:"URL",tags:["link-search"]}))},300),[]);return au(()=>{i&&x(i)},[i]),au(()=>()=>{d(To())},[]),Si("div",{className:r.root,children:[Pt(te,{withDivider:!0,children:(i?g:l).slice(0,s).map((w,T)=>Pt(M,{selected:u===T,onClick:()=>t(w.text),"data-testid":"linksearch-suggestion",children:Si(F,{children:[Pt(F.Image,{src:As(w,"small",f||void 0),title:w.title||w.text}),Si(F.Content,{className:r.content,cropText:!0,children:[Pt(F.Title,{children:w.title||vi(w.text)}),w.title&&vi(w.text)]}),Pt(M.Actions,{children:Pt(M.ActionButton,{label:o,onClick:k=>y(k,w.text)})})]})},w.text))}),Pt(Dn,{value:i,onChange:m,autoFocus:!0,placeholder:n,onKeyUp:v})]})},cu=TS;var xi={};G(xi,{enUS:()=>ES,nlNL:()=>kS});var ES={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"}]},kS={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 Ce,jsxs as Ls}from"react/jsx-runtime";var MS=IS((t,e)=>{let n=C("TabCompletion",qe);return Ce("mark",{ref:e,className:Ci(n.matchSelection)},"selection-start")}),NS=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=A(xi),i=C("TabCompletion",qe),a=P("addToPersonalCollection"),d=bi(zt("/admin/personal-collection/new")),l=bi(w=>{var T;return(T=w.conversation.current)==null?void 0:T.profileCode}),c=bi(pe)!==null,g=pu(null),u=pu(null),[p,f]=gu(null),m=LS(),y=zo(document.activeElement===o),[v]=gu(()=>document.createRange());y.triggerRef.current=v,uu(()=>()=>v.detach(),[]),uu(()=>{let w=t.current,T=g.current;!w||!T||(v.setStart(w,0),v.setEnd(T,0))},[t.current,g.current]),vt(()=>{y.close()});let x=AS(w=>{let T=v.toString(),k=/^http(s?):\/\//.test(w)?w:`https://${w}`,E=`[${T}](${k})`;m(le({text:E,suggestion:{text:E,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return Ls("span",{children:[Ce("mark",{ref:g,className:Ci(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":y.opened?"true":"false",children:s}),y.opened&&Ce(jt,{className:i.popoverRoot,triggerRef:y.triggerRef,boundaryRef:e,position:"above",align:"start",children:Ls(Ps,{style:n,ref:u,children:[Ls("div",{className:Ci(i.selectionOptions,{[i.selectionOptionsIsHidden]:p!==null}),children:[Ls("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>f("insertLink"),children:[Ce(ru,{}),Ce("span",{children:"\xA0"}),Ce("span",{children:r("insertLink")})]}),a&&d&&Ce("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let w=v.toString(),T=new URLSearchParams({text:w});c&&l&&T.set("profile",l);let k=ou(d,T);window.open(k,"_blank")},children:Ce("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&Ce(cu,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:x,onDismiss:()=>{f(null),y.close()}})]})})]},"selection-end")},Ms=class extends PS{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=RS(),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?h({isStart:a},i):null}replaceWith(n,o){return o.isStart?Ce(MS,{ref:this.startRef}):Ce(NS,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as BS}from"react-redux";import{jsx as en,jsxs as WS}from"react/jsx-runtime";var KS=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=C("TabCompletion",Zc),c=P("insertLink"),g=P("addToPersonalCollection"),u=P("showMidSentenceSuggestions"),p=P("inlineSuggestions"),f=Xc(a),m=FS(null),y=BS(Y);_S(()=>{kt(a)&&f&&Jc(a,f)},[f]);let v=DS(T=>{if(!s||!n)return T;let k=[en("span",{className:l.resetIndent,children:"\u200B"},"u200B"),en("span",{"data-testid":"tab-completion",className:wi(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&k.push(en("span",{className:wi(l.hint,l.resetIndent),children:en(Js,{keyCode:"tab"},"tabHint")},"tabHint")),yi(T,k)},[s,n,o]),x=mu(()=>{let T=[];return(c||g)&&T.push(new Ms("selection")),T.push(new Is("placeholders")),r&&T.push(new Rs("keywords")),T},[p,c,g,r]),w=mu(()=>{let T=window.getComputedStyle(a);return{"--dd-color":T.color,"--dd-font-size":T.fontSize,"--dd-font-family":T.fontFamily,"--dd-font-variant":T.fontVariant}},[]);return!t||!y?null:WS("div",{ref:T=>{T!=null&&T.parentElement&&(m.current=T==null?void 0:T.parentElement)},className:l.root,style:w,children:[en(OS,{tagName:"span",containerTagName:"div",className:wi(l.container,l.agentText),disableLineBreaks:kt(a),content:e||"\u200B",onAfterParse:v,matchers:x,selection:f,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!u}),en("br",{})]},"tab-completion")},US=t=>{var v,x,w;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=Ht({input:e}),a=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",l=(v=e.html)!=null?v:Kn(e.text),c=e.text.slice(e.suggestionTextStart,e.selection.end),g=a.indexOf(c)===0?a.slice(c.length):"",{showTabHint:u}=n,{isSupported:p}=r,{showTabCompletion:f,visible:m,showStyleSuggestions:y}=o;return{showTabHint:u,showStyleSuggestions:y,showTabCompletion:f&&Ae(t),content:l,tabText:g,source:d,keywordMatches:(w=(x=s.list)==null?void 0:x.keywordMatches)!=null?w:[],enabled:m&&p!==!1}},fu=HS(US)(KS);import{Fragment as Lx,useEffect as sn,useState as $u}from"react";import{useDispatch as Mi,useSelector as J}from"react-redux";import{createAsyncThunk as hu,createSlice as zS}from"@reduxjs/toolkit";var VS={token:null,interval:null},Ti=hu("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Ei=hu("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Ti()),setInterval(()=>o(Ti()),n)}),yu=zS({name:"passwordlessToken",initialState:VS,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Ti.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Ei.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:vu}=yu.actions,Su=yu.reducer;import{createSelector as jS}from"@reduxjs/toolkit";function qS(t){return"buttonText"in t&&"eventName"in t}function xu(t){if(t)return qS(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function $S(t){return t==null?void 0:t.map(e=>xu(e))}function Ns(t){return typeof t!="string"?void 0:t.trim().toLowerCase()||void 0}function Gn(t,e){let n=Ns(e);n&&t.add(n)}function GS(t){var o,s,r;let e=new Set,n=new Set;if(!Array.isArray(t))return{codes:e,names:n};for(let i of t){if(!i||typeof i!="object")continue;let a=i,d=typeof a.assistant=="object"?a.assistant:void 0;((r=(s=(o=a.isSilent)!=null?o:a.is_silent)!=null?s:d==null?void 0:d.isSilent)!=null?r:d!=null&&d.is_silent)&&(Gn(e,typeof a.assistant=="string"?a.assistant:d==null?void 0:d.code),Gn(n,a.assistantName),Gn(n,a.assistant_name),Gn(n,a.displayName),Gn(n,a.display_name))}return{codes:e,names:n}}function ki(t,e){var r,i,a;let{codes:n,names:o}=GS(e);if(n.size===0&&o.size===0)return!1;let s=(i=Ns(t.code))!=null?i:Ns((r=t.rule)==null?void 0:r.label);return s?n.has(s):[t.name,t.title,(a=t.rule)==null?void 0:a.name].some(d=>{let l=Ns(d);return l!==void 0&&(o.has(l)||n.has(l))})}function QS(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var bu=jS([hl,mo,Xt],(t,e,n)=>(e?t.filter(i=>!i.externalConversationId||i.externalConversationId===e):t).filter(i=>!ki(i,n)).map(i=>{var l;let a=xu(i.callToAction),d=$S(i.callToActions);return b(h(h(h(h({text:i.response,title:i.name},a?{callToAction:a}:{}),d!=null&&d.length?{callToActions:d}:{}),i.message!==void 0?{message:i.message}:{}),(l=i.sources)!=null&&l.length?{sources:i.sources}:{}),{editable:i.editable,isLoading:i.isLoading,evaluationId:i.evaluationId,rule:{id:QS(i.code),label:i.code,name:i.name,description:i.name}})}));import{useEffect as XS,useState as JS}from"react";import Tu from"classnames";import{jsx as Cu}from"react/jsx-runtime";var tn=()=>Cu("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Cu("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 wu={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as nn,jsxs as Eu}from"react/jsx-runtime";var ZS=({entities:t})=>{let e=C("EntitiesWidgetList",wu),[n,o]=JS(void 0),s=q(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),ke(a.text),s("entity copied",{entity:a,type:"copy"}))};return XS(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:nn("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>Eu("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[nn("span",{className:e.entityText,children:a.text}),Eu("span",{className:e.iconWrapper,children:[nn("span",{className:Tu(e.icon),children:nn(tn,{})}),nn("span",{className:Tu(e.icon,n===d&&e.iconClicked),children:nn(tn,{})})]})]},a.text))})},ku=ZS;import{jsx as Pu}from"react/jsx-runtime";var Ru=()=>Pu("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Pu("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 sx}from"react";import{useDispatch as rx,useSelector as ix}from"react-redux";var Iu={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Au={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as ex}from"react/jsx-runtime";var YS=({size:t=12})=>{let e=C("LoadingSpinner",Au);return ex("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Lu=YS;import{jsx as Mu}from"react/jsx-runtime";var Nu=()=>Mu("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Mu("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 Ou,jsxs as tx}from"react/jsx-runtime";var Du=t=>tx("svg",b(h({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[Ou("title",{id:"checkTitle",children:"Check"}),Ou("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 Pi={};G(Pi,{enUS:()=>nx,nlNL:()=>ox});var nx={error:[{type:0,value:"Something went wrong"}]},ox={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as $e,jsxs as _u}from"react/jsx-runtime";var ax=3e3,lx=({assistantOptions:t})=>{let e=C("OnDemandAssistants",Iu),n=A(Pi),o=sx(),s=rx(),r=Cn(ce),i=ix(Xt),a=q(),d=i.filter(u=>u.isPinned),l=i.filter(u=>!u.isPinned),c=()=>S(null,null,function*(){return t.attachments&&t.attachments.length>0?t.attachments:s(((u,p,f)=>S(null,null,function*(){let m;if(t.transcript==="in-memory-transcript"){let y=f.dynamicThunkObject.conversationQuery;if(y){let v=yield y();m=Array.isArray(v)?v:void 0}}else Array.isArray(t.transcript)&&(m=t.transcript);return kr({transcript:m})})))}),g=(u,p=!1)=>S(null,null,function*(){clearTimeout(o.current);let f=yield c();a("trigger on demand assistant",{assistantCode:u}),yield r.call(h(b(h({},t),{assistantCode:u,silent:p}),f.length>0?{attachments:f}:{})),o.current=setTimeout(()=>r.reset(),ax)});return i.length===0?null:_u("div",{className:e.root,children:[d.map(({assistant:u,assistantName:p,displayName:f,isSilent:m})=>$e("button",{type:"button",className:e.button,disabled:r.state==="loading",onClick:()=>g(u,m),children:f||p},u)),l.length>0&&_u(V,{placement:"top-end",children:[$e(V.Trigger,{className:e.trigger,disabled:r.state==="loading",children:$e(rs,{"data-testid":"trigger"})}),$e(V.Content,{className:e.nav,"data-testid":"popover",children:l.map(({assistant:u,assistantName:p,displayName:f,isSilent:m})=>$e(V.Button,{className:e.item,disabled:r.state==="loading",onClick:()=>g(u,m),children:f||p},u))})]}),r.state==="loading"&&$e(Lu,{}),r.state==="done"&&$e(Du,{"data-testid":"trigger-done"}),r.state==="error"&&$e(Wl,{trigger:$e(Nu,{}),children:n("error")})]})},Fu=lx;import{useDispatch as yx,useSelector as vx}from"react-redux";import{useEffect as Hu,useRef as ux,useState as px}from"react";var Qn={};G(Qn,{enUS:()=>dx,nlNL:()=>cx});var dx={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"}]},cx={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"}]};var Ri={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 we,jsxs as Os}from"react/jsx-runtime";var gx=500,mx=100,fx=({content:t,onChange:e,onCopy:n})=>{let o=ux(null),s=C("WidgetCue",Ri);return Hu(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,mx),gx);r.style.setProperty("height",`${i}px`)},[t]),we("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},hx=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s,onSourceClick:r})=>{var y;let i=C("WidgetCue",Ri),a=A(Qn),d=q(),l=P("hasKeyboardInput"),[c,g]=px(t.text),u=v=>{let x=v?b(h({},t),{callToAction:v}):t;e&&e(c,x),n(t)},p=(v,x)=>{o&&o(v,t),x&&Ye(x,i.fadeup)},f=v=>{s&&s(v,t)},m=v=>{v.preventDefault(),v.stopPropagation(),n(t)};return Hu(()=>{d("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),Os(M,{"data-testid":"cue",children:[we(F,{children:Os(F.Content,{children:[t.title&&we(F.Title,{className:i.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?a(t.rule.label):t.title}),t.message&&we("p",{className:i.ctaMessage,children:t.message}),t.editable?we(fx,{content:c,onCopy:()=>{let v=document.getSelection();v&&p(v.toString())},onChange:v=>{var x;return g((x=v.target.value)!=null?x:"")}}):we(xt,{content:t.text,sources:t.sources,onSourceClick:v=>r==null?void 0:r(v,t),useLabel:a("useCue"),copyLabel:a("copyCue"),onCopy:p,onUse:l?f:void 0})]})}),Os(M.ButtonsContainer,{children:[Os("div",{className:i.actions,children:[we(M.Button,{onClick:v=>{var x;return p((x=Oo(c,"reply")[0])!=null?x:c,v.target)},variant:"primary",children:a("copyCue")}),t.callToAction&&we(M.Button,{onClick:()=>u(),variant:"primary",children:t.callToAction.label}),(y=t.callToActions)==null?void 0:y.map((v,x)=>we(M.Button,{onClick:()=>u(v),variant:"primary",children:v.label},`${v.event}-${v.label}-${x}`)),we(M.Button,{onClick:m,variant:"secondary",children:a("removeCue")})]}),we(Uo,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackType:"assistant"})]})]})},Bu=hx;import{Fragment as xx,jsx as Ii}from"react/jsx-runtime";var Sx=({cues:t})=>{let e=yx(),n=ie(),o=A(Qn),s=q(),r=vx(Xt),i=u=>{e(_o({code:u.rule.label})),s("Assistant response closed",{evaluationId:u.evaluationId,assistantCode:u.rule.label,assistantOutput:u.text})},a=(u,p)=>{ke(u),s("Assistant response copied",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,copiedText:u})},d=(u,p)=>{var f;p.callToAction&&(e(Do(p)),s("Assistant call to action",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,eventName:p.callToAction.event,value:(f=p.callToAction.value)!=null?f:u}))},l=(u,p)=>{var f;n.send(Fe,{text:u,suggestion:{source:"assistant",assistantCode:(f=p.rule)==null?void 0:f.label,sourceText:u}}),s("Assistant response used",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,usedText:u})},c=(u,p)=>{s("Assistant source clicked",{evaluationId:p.evaluationId,assistantCode:p.rule.label,source:u})},g=t.filter(u=>!ki(u,r));return Ii(xx,{children:g.map(u=>u.isLoading?Ii(qo,{title:u.rule.label.startsWith("__")?o(u.rule.label):u.title},u.rule.id):Ii(Bu,{cue:u,onCallToAction:d,onRemove:i,onCopy:a,onUse:l,onSourceClick:c},u.evaluationId))})},Ku=Sx;import{Fragment as bx,useEffect as Cx}from"react";var Uu={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 Ge,jsxs as Ai}from"react/jsx-runtime";function wx(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Wu=({data:t,schema:e})=>{let n=C("WidgetCustomData",Uu),o=s=>{ke(s)};return Cx(()=>{R.info("Custom data",t,e)},[t]),Ge("dl",{className:n.root,children:e.map(s=>{let r=wx(t,s.path);return Ai(bx,{children:[Ge("dt",{className:n.label,children:s.label}),Ge("dd",{className:n.value,children:s.type==="boolean"&&r?Ge("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?Ge("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?Ai("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[Ge("span",{className:n.copyButtonText,children:r.join(", ")}),Ge(tn,{})]}):typeof r=="string"||typeof r=="number"?Ai("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[Ge("span",{className:n.copyButtonText,children:r}),Ge(tn,{})]}):"-"})]},s.label)})})};import{useCallback as Ex}from"react";var Tx=/(https?:\/\/[^\s]+)/,zu=t=>t.split(" ").find(e=>Tx.test(e));import{jsx as on,jsxs as Ds}from"react/jsx-runtime";var kx=({suggestion:t,lines:e,onUse:n})=>{var g;let o=t.text||t.url||t.message,s=zu(o),r=A(Un),i=P("showImages"),a=P("fallbackImage"),d=P("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=Ex(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return Ds(M,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[Ds(F,{children:[i&&t.image&&on(F.Image,{src:As(t,"small",a||void 0),title:t.title}),Ds(F.Content,{children:[t.title&&on(F.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&on(M.Labels,{labels:t.searchKeywords}),on(F.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),Ds(M.Actions,{children:[s&&on(M.ActionButton,{onClick:c,label:r("visitUrl")}),d&&on(M.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},Vu=kx;import{Fragment as Rx,jsx as ju}from"react/jsx-runtime";var Px=({lines:t,suggestions:e})=>{let n=ie(),o=(s,r)=>{n.send(Fe,{text:s,suggestion:b(h({},r),{source:r.source,sourceText:r.text})})};return ju(Rx,{children:e.map(s=>ju(Vu,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},qu=Px;var Xn={};G(Xn,{enUS:()=>Ix,nlNL:()=>Ax});var Ix={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"}]},Ax={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 Rt={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",footer:"dd-tvofr",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",footerShortcut:"dd-dH7XJ",link:"dd-DRo0x",interactiveAssistantTabs:"dd-eSP1-",interactiveAssistantTab:"dd-CwcHD",interactiveAssistantTabActive:"dd-GzRs-"};import{jsx as L,jsxs as Jn}from"react/jsx-runtime";var Gu=(t,e)=>{let n=J(Y);sn(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Mx=({onLogIn:t})=>{let e=C("Widget",Rt),n=P("isEmbedded"),o=P("adminUrl");return L("div",{className:e.loginText,children:L("div",{children:L(Cs,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},Li=({text:t})=>{let e=C("Widget",Rt);return L("div",{className:e.stateText,children:L("div",{children:L("p",{children:t})})},"notification")},Nx=()=>{let t=A(Xn),e=Mi(),n=C("Widget",Rt),o=P("showSearch"),s=P("isEmbedded"),r=J(zt("/admin/")),i=ie(),a=P("productName"),d=q();return Gu(()=>{if(s)return e(Ei()),()=>{e(vu())}},[e,s]),!o&&!r?null:Jn("div",{className:n.shortcutList,children:[o&&L(M.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:L(Zt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&L(M.Button,{as:"a",target:"_blank",icon:L(Ru,{}),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})})]})},Ox=({title:t,content:e})=>{let n=A(Xn),[o,s]=$u(!0);return o?L(Oe,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:L(te,{withDivider:!0,children:Jn(M,{children:[L(F,{children:L(F.Content,{children:L(xt,{content:e})})}),L(M.ButtonsContainer,{children:L(M.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},Dx=()=>{let t=Mi(),e=J(Hn),n=J(wd),o=J(bu),s=J(Wa),r=J(ss),i=J(as),a=J(me),d=J(pe);return sn(()=>{s&&!n&&R.warn("Custom data provided, but no schema.")},[s,n]),Gu(()=>{e.forEach(({type:l})=>{l==="entities"?t(Se()):co.includes(l)||t(xe(l))})},[t,d,a,e]),sn(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&R.warn("Received cues, but cues are not configured in widget.")},[e,o]),L(Lx,{children:e.map(({type:l,title:c,amount:g,lines:u,schema:p,property:f})=>{var m,y;switch(l){case"entities":return r&&r.length>0&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(ku,{entities:r})},l);case"cues":return o&&o.length>0&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(Ku,{cues:o})})},l);case"custom-data-banner":return s&&f&&s[f]&&L(Ox,{title:c,content:String(s[f])},l);case"custom-data":return s&&p&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(Wu,{data:s,schema:p})})},l);default:return((y=(m=i[l])==null?void 0:m.suggestions)==null?void 0:y.length)>0&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(qu,{lines:u,contentType:l,suggestions:i[l].suggestions.slice(0,g)||[]})})},l)}})})},Ni=({children:t})=>{let e=C("Widget",Rt);return L("div",{className:e.footer,children:t})},Oi=({children:t})=>{let e=C("Widget",Rt);return L("div",{className:e.root,"data-testid":"widget",children:t})},_x=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"},openAdminFeedback:o})=>{var T;let s=A(Xn),r=C("Widget",Rt),i=Mi(),a=J(Ft),d=J(Y),l=J(mo),c=J(me),g=J(Cd("knowledge-assist")),u=J(Td),p=J(Sl),f=J(vl),m=(T=u.find(k=>k.code===p))!=null?T:u[0],[y,v]=$u(e.initialQuestion);sn(()=>{v(e.initialQuestion)},[l,e.initialQuestion]),sn(()=>{if(!l)return;let k=yn(l);k&&i(Rr(k))},[i,l]),sn(()=>{if(u.length===0)return;let k=u.some(E=>E.code===p);(!p||!k)&&i(Pr(u[0].code))},[u,p,i]);let x=!!g&&u.length>0&&!!m,w=(m==null?void 0:m.displayName)||(m==null?void 0:m.name)||(g==null?void 0:g.title)||"Knowledge Assistant";return a===!1?L(Li,{text:s("notSupported")}):d===!1?L(Mx,{onLogIn:t}):d===null?L(Li,{text:s("waiting")}):!l||!c?L(Li,{text:s("waitingForConversation")}):L(Fl,{handler:o,children:L(Oi,{children:Jn(Qo,{initialQuestion:y,onInitialQuestionConsumed:()=>v(void 0),assistantCode:m==null?void 0:m.code,threadId:f,onThreadIdChange:k=>{m!=null&&m.code&&k!=null&&i(Ir({assistantCode:m.code,threadId:k}))},evaluateKnowledgeAssistFn:Nn,children:[Jn(gn,{children:[L(Nx,{}),L(Dx,{}),x&&L(Jo,{title:w,emptyState:e.emptyState})]}),Jn(Ni,{children:[x&&u.length>1&&L("div",{className:r.interactiveAssistantTabs,"data-testid":"widget-interactive-assistant-tabs",children:u.map(k=>{let E=k.code===(m==null?void 0:m.code);return L("button",{type:"button","aria-pressed":E,className:E?r.interactiveAssistantTabActive:r.interactiveAssistantTab,onClick:()=>i(Pr(k.code)),children:k.displayName||k.name},k.code)})}),x&&L(Xo,{}),L(Fu,{assistantOptions:n})]})]},m==null?void 0:m.code)})})},Qu=_x;function Yn(t){let e=new Range;return e.selectNodeContents(t),e}function Xu(t,e,n){try{return It(t,e,n),!0}catch(o){return!1}}function _s(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Fs(t){return"tagName"in t&&t.tagName==="BR"}var Zn=/[\u200B-\u200D\uFEFF]/g;function It(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,g=/[\u200B-\u200D\uFEFF]/;if(!g.test(d))return l;for(let u=0;u<=d.length;u++)if(g.test(d[u])||c++,c===l)return u;throw new Error("Offset out of range")}function a(d){switch(d.nodeType){case Node.TEXT_NODE:{let l=d.textContent,c=l.replace(Zn,""),g=s+c.length,u=e>=s&&e<=g,p=n>=s&&n<=g;if(u){let f=i(l,e-s);f===0&&!p?o.setStartBefore(d):o.setStart(d,f)}p&&(o.setEnd(d,i(l,n-s)),r=!0),s=g;break}case Node.ELEMENT_NODE:{if(Fs(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;_s(d)&&l&&!_s(l)&&!Fs(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function Hs(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(g){let u=g===t,p=g===n,f=g===s;switch(g.nodeType){case Node.TEXT_NODE:{let m=g.textContent;p&&(a=l+m.substring(0,o).replace(Zn,"").length),f&&(d=l+m.substring(0,r).replace(Zn,"").length),l+=m.replace(Zn,"").length;break}case Node.ELEMENT_NODE:{if(Fs(g)&&g.nextSibling){l++;break}!u&&_s(g)&&g.previousSibling&&l++;for(let m=0;m<g.childNodes.length;m++){let y=p&&m===o,v=f&&m===r;if(y&&(a=l),v&&(d=l),d!==void 0||((!y||!i)&&c(g.childNodes[m]),f&&m===r-1&&(d=l),d!==void 0))break}f&&(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 Bs(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 g=c===t,u=c===n,p=c===s;switch(u&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let f=u?o:0,m=p?r:void 0;d+=c.textContent.replace(Zn,"").substring(f,m);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&Fs(c)&&c.nextSibling){d+=`
|
|
10
|
-
`;break}!g&&!i&&a===1&&
|
|
11
|
-
`);let f=u?o:0,m=p?Math.min(r,c.childNodes.length):c.childNodes.length;for(let y=f;y<m&&(l(c.childNodes[y]),a!==2);y++);break}default:break}p&&(a=2)}return l(t),d}var Ju=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(Ju||{}),rt=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();Je(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(Ju).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 Zu(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var rn=class extends rt{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Bs(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!Zu(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!Zu(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return Hs(this.element,n);let o=this.lastKnownSelection;if(o&&Xu(this.element,o.start,o.end))return o;let s=Yn(this.element);return s.collapse(!1),Hs(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Bs(this.element,It(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 Fx=["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 Yu(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",Fx.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 an=class extends rt{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 Yu(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 ep(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 Hx(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()}},_i=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=ep(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()}},Fi=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(),R.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 _i(e,this.deepdeskUrl,{debug:!0}):new Di(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=Hx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(R.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;R.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(b(h({},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)}},tp=Fi;function Bx(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function U(t){return Array.isArray(t)?t.map(U):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(h({},e),{[Bx(n)]:U(t[n])}),{}):t}function Kx(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function ee(t){return Array.isArray(t)?t.map(ee):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(h({},e),{[Kx(n)]:ee(t[n])}),{}):t}var ln=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var eo=t=>new Promise(e=>{setTimeout(e,t)});var Te=class extends ln{constructor(){super(...arguments);this.name="ClientError"}},Ks=class extends ln{constructor(){super(...arguments);this.name="ServerError"}},Hi=new Map;function np(t){return S(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:(R.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var dn=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",E=n,{useCache:l=!1,abortLatest:c=!1,attempts:g=1,retryDelay:u=500,refreshTokenOn401:p=!0,retryOnError:f=I=>I instanceof TypeError,retryOnResponse:m=I=>I.status>=500,version:y=null}=E,v=D(E,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(Hi.has(i)){o(Hi.get(i));return}}let x=b(h({credentials:"include"},v),{headers:h({Accept:"application/json","Content-Type":"application/json"},v.headers)});!d&&this.csrfToken&&(x.headers=b(h({},x.headers),{"X-CSRFToken":this.csrfToken})),typeof y=="string"&&(x.headers=b(h({},x.headers),{"X-Deepdesk-API-Version":y}));let w=g,T=!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 k=()=>S(this,null,function*(){return w--,a(i,x).then(I=>S(this,null,function*(){return m(I)&&!r.isAborted&&w>0?(yield eo(u),k()):I.status===401&&p===!0&&T===!1?(T=!0,yield this.refreshToken(),k()):I})).catch(I=>S(this,null,function*(){if(f(I)&&!r.isAborted&&w>0)return yield eo(u),k();throw I}))});k().then(I=>S(this,null,function*(){let B=yield np(I);if(delete this.latestRequestByUrl[i],I.status>=500){s(new Ks("Server Error",B));return}if(I.status===401){s(new Te("Unauthorized",B));return}if(I.status===403){s(new Te("Forbidden",B));return}if(I.status===404){s(new Te("Not Found",B));return}if(I.status>=400){s(new Te("Bad Request",B));return}l&&Hi.set(i,B),o(B)})).catch(I=>{s(I)})})}validateToken(){return S(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 Te("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,h({method:"POST",body:JSON.stringify(n)},o))}postWithStatus(e,n,o){return this.requestWithStatus(e,h({method:"POST",body:JSON.stringify(n)},o))}requestWithStatus(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,k=n,{useCache:d=!1,abortLatest:l=!1,attempts:c=1,retryDelay:g=500,refreshTokenOn401:u=!0,retryOnError:p=E=>E instanceof TypeError,retryOnResponse:f=E=>E.status>=500,version:m=null}=k,y=D(k,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]),v=b(h({credentials:"include"},y),{headers:h({Accept:"application/json","Content-Type":"application/json"},y.headers)});this.csrfToken&&(v.headers=b(h({},v.headers),{"X-CSRFToken":this.csrfToken})),typeof m=="string"&&(v.headers=b(h({},v.headers),{"X-Deepdesk-API-Version":m}));let x=c,w=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let T=()=>S(this,null,function*(){return x--,a(i,v).then(E=>S(this,null,function*(){return f(E)&&!r.isAborted&&x>0?(yield eo(g),T()):E.status===401&&u===!0&&w===!1?(w=!0,yield this.refreshToken(),T()):E})).catch(E=>S(this,null,function*(){if(p(E)&&!r.isAborted&&x>0)return yield eo(g),T();throw E}))});T().then(E=>S(this,null,function*(){let I=yield np(E);if(delete this.latestRequestByUrl[i],E.status>=500){s(new Ks("Server Error",I));return}if(E.status===401){s(new Te("Unauthorized",I));return}if(E.status===403){s(new Te("Forbidden",I));return}if(E.status===404){s(new Te("Not Found",I));return}if(E.status>=400){s(new Te("Bad Request",I));return}o({status:E.status,data:I})})).catch(E=>{delete this.latestRequestByUrl[i],s(E)})})}patch(e,n,o){return this.request(e,h({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,h({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,h({method:"DELETE"},n))}};var op;(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={}))})(op||(op={}));function Us(t){return b(h({},U(t)),{metadata:t.metadata})}var At=class At{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new dn(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>S(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return S(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(At.exchangeTokenPromise||(At.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),At.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return S(this,null,function*(){var o;yield this.preflight(),R.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",b(h({chat_start_time:new Date().toISOString()},ee(e)),{metadata:(o=e.metadata)!=null?o:{}}));return Us(n)})}upsertConversation(e){return S(this,null,function*(){var c;yield this.preflight(),R.info(`Upserting conversation for session ${e.externalId} and agent ${e.agentId}`);let{status:n,data:o}=yield this.client.postWithStatus("/api/v2/conversations",b(h({chat_start_time:new Date().toISOString()},ee(e)),{metadata:(c=e.metadata)!=null?c:{}}),{version:"v2"}),s=Us(o);if(n===201)return s;let{agentId:r,agentName:i,agentEmail:a,agentNickname:d,metadata:l}=e;return this.updateConversation(s.id,{agentId:r,agentEmail:a,agentName:i,agentNickname:d,metadata:l})})}getMe(){return S(this,null,function*(){yield this.preflight();let e=yield this.client.get("/apis/admin/session/me/");return U(e)})}postIdentity(e){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",ee(e))})}patchMe(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",ee(e));return U(n)})}getProfile(e){return S(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return U(n)})}getKnowledgeAssistant(e){return S(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return U(n)})}getContentTypes(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return U(e)})}getAccount(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return U(e)})}getPlatformConfig(e){return S(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return U(o)})}checkUserExists(e){return S(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return S(this,arguments,function*(e,n={}){yield this.preflight(),R.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 R.info(`Successfully retrieved conversation ${i.id} for session ${e}`),Us(i)})}isConversationSupported(o){return S(this,arguments,function*(e,n={}){R.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 S(this,null,function*(){var r;yield this.preflight();let o=ee(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return Us(s)})}postMessages(e,n){return S(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>b(h({},ee(o)),{metadata:o.metadata})))})}sendEvent(e,n){return S(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=D(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>b(h({},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",ee(b(h(h({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return S(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return S(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return S(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw R.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",ee(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return S(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}`,ee(n),{abortLatest:!0})).map(i=>b(h({},U(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 S(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return S(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,ee(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))})}syncPersonalCollection(e){return S(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/personal-collection/sync`,{},{version:"v2"})})}getPinnedMessages(e){return S(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return U(n).map(o=>b(h({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return S(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",ee(e),{abortLatest:!0,version:"v2"});return U(n)})}search(e){return S(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,ee(e));return U(n)})}loginWithPassword(e,n){return S(this,null,function*(){yield this.preflight();let o=yield this.client.post("/apis/admin/session/login/",{username:e,password:n},{refreshTokenOn401:!1});return U(o)})}logout(){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/logout/",{},{refreshTokenOn401:!1})})}requestLoginByEmail(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return U(n)})}requestPasswordlessToken(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return U(e.token)})}getCsrfToken(){return S(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return S(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return U(n)})}evaluateAssistant(e,n){return S(this,null,function*(){var d,l,c;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=g=>ee(g),i=(d=n==null?void 0:n.transcript)==null?void 0:d.map(g=>{var u;return h({source:g.source,text:g.text},(u=g.attachments)!=null&&u.length?{attachments:g.attachments.map(r)}:{})}),a=yield this.client.post(s,h({input:(l=n==null?void 0:n.input)!=null?l:{},conversation:i},(c=n==null?void 0:n.attachments)!=null&&c.length?{attachments:n.attachments.map(r)}:{}));return U(a)})}interactWithAssistant(e){return S(this,null,function*(){yield this.preflight();let n=new URLSearchParams;e.sessionId&&n.append("session_id",e.sessionId),e.externalConversationId&&n.append("external_conversation_id",e.externalConversationId);let o=`/api/v2/assistants/${e.assistantCode}/interact?${n.toString()}`,s=yield this.client.post(o,{message:e.message});return U(s)})}resetAssistantThread(e){return S(this,null,function*(){yield this.preflight();let n=encodeURIComponent(e.assistantCode),o=encodeURIComponent(e.sessionId);yield this.client.delete(`/api/v2/assistants/${n}/sessions/${o}/thread`)})}createAssistantThread(e){return S(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return U(o)})}postMessageToAssistantThread(e){return S(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 U(r)})}translateMessages(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",ee(e));return U(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(ua);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&R.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};At.exchangeTokenPromise=null;var it=At;var Ws=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=U(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 Vx,configureStore as jx}from"@reduxjs/toolkit";import{createSlice as Ux}from"@reduxjs/toolkit";var sp={startTime:null,stopTime:null},rp=t=>t.handlingTime,ip=Ux({name:"handlingTime",initialState:sp,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(z,()=>sp)}}),{handlingTimeStart:ap,handlingTimeStop:zs,handlingTimeReset:lp}=ip.actions,dp=ip.reducer;var cp=(t={})=>{let e=h({onAuthError:Dt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var up=(t={})=>{let e,n=!0,o=h({getStyleSuggestions:Tt,debounce:500},t);return s=>r=>i=>{var p;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(!((p=l.conversation.current)==null?void 0:p.id)||!c)return d;let{text:u}=l.input;return u===a&&!n||(clearTimeout(e),u==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:u}))},t.debounce)),d}};function Wx(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var pp=(t={})=>{let e=h({getTextSuggestions:xe,getAutocompleteSuggestions:jn,debounce:200,check:Ae},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,g=(m=d.conversation.current)==null?void 0:m.id,u=r.type===ls.toString();if(!g||!l&&!c)return a;let{input:p}=d;return Wx(p,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let y=ct(d);y===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(y))},u?0:e.debounce)),a}};var gp=Tt.fulfilled.toString();function zx(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 mp=t=>e=>n=>o=>{var l;if(o.type!==gp){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=zx(s,i);o.type===gp&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var qx=Vx({assistants:Rl,auth:Sa,conversation:ka,contentTypes:yd,passwordlessToken:Su,entities:$d,handlingTime:dp,info:Qa,input:Ba,settings:Al,profile:Ed,search:tl,styleSuggestions:Dc,ui:Cc,textSuggestions:ic});function fp(t){return jx({reducer:qx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(cp()).concat(pp({debounce:200})).concat(up({debounce:500})).concat(mp(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function hp(t,e,n){if(e==="")return null;let o=new RegExp(`\\b${Es(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 $x=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},Gx=t=>e=>n=>o=>{var d,l,c,g,u,p;let s=e.getState(),r=ht("inlineSuggestions")(s),i=ht("autoSelectSuggestion")(s)||r;switch(o.type){case Dt.toString():{!o.payload&&t.emit("logout",void 0);break}case po.fulfilled.toString():{t.emit("logout",void 0);break}case Se.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 gt.toString():t.logSendMessage(o.payload);break;case Do.toString():t.emit("call-to-action",{cue:o.payload});break;case ce.fulfilled.toString():if(!o.isBroadcasted){let{externalConversationId:f,currentExternalIdAtRequest:m}=(l=o.payload)!=null?l:{};(!f||!m||f===m)&&t.broadcast(ur,o,!1)}break;case ce.rejected.toString():break;default:break}let a=n(o);switch(o.type){case gt.toString():t.handleAfterSendMessage(o.payload);break;case qn.toString():t.onUpdateShowTabHint(o.payload);break;case zs.toString():t.logHandlingTime();break;case Bt.toString():t.broadcast(ko,o);break;case pt.toString():t.broadcast(ko,o);break;case _o.toString():e.dispatch(pt({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let f=s.assistants.cues.find(m=>m.code===o.meta.arg.data.assistantCode);t.emit("event",b(h({},o.meta.arg),{cue:f}));break}case le.toString():{let{start:f,end:m}=s.input.selection;t.emit("select-suggestion",b(h({type:$x(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:f,end:m}:{start:0,end:m}})),r&&e.dispatch(Ze([]));break}case Oc.toString():{let{keyword:f,suggestion:m,eventMetrics:y}=o.payload,{text:v,selection:x}=s.input,w=hp(v,f,(c=x==null?void 0:x.end)!=null?c:v.length);if(!w)break;t.emit("select-suggestion",{text:m,type:"style",replace:w,suggestion:{text:m,source:"style"},eventMetrics:y});break}case vo.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(g=s.conversation.current)==null?void 0:g.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case Ze.toString():{i&&o.payload.length>0&&e.dispatch(So(0));break}case ce.fulfilled.toString():{let{evaluationId:f,output:m,externalConversationId:y}=o.payload,v=o.meta.arg.assistantCode;if(t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:f,assistantCode:v,assistantOutput:Cl(m),externalConversationId:y,evaluationStatus:"success"}}),!o.meta.arg.skipState){let x=e.getState().assistants.cues;t.emit("cues",x)}break}case ce.rejected.toString():{let f=o.meta.arg.assistantCode,m=(p=o.meta.arg.externalConversationId)!=null?p:(u=e.getState().conversation.current)==null?void 0:u.externalId;t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:"",assistantCode:f,assistantOutput:"",externalConversationId:m,evaluationStatus:"failed"}});break}default:break}return a},yp=Gx;import{createSelector as Qx}from"@reduxjs/toolkit";function Bi(t){return t.toISOString().replace("T"," ").replace("Z","")}var Xx=(t,e)=>e.version,vp=Qx([Kt,pe,rp,Xx],(t,e,n,o)=>{if(!e)return R.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(R.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:Bi(s),timeStop:Bi(r)}});function Sp(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 to=class extends Error{};function Jx(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Vs=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 to("Queued async function is outdated"));let s=Jx();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function Ki(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return Ki(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?Ki(s,e):null}function Ui(t,e){return Ki(t,e)}var Zx={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},xp=(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 R.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[Zx[e]];if(o&&o.length>0){let a=o.map(d=>d.code);return t.summarizerAssistantNew&&e!=="ended"&&(a=a.filter(d=>d!==t.summarizerAssistantNew)),a}return R.warn(`No assistant set in profile for conversation event "${e}"`),[]};function Yx(t){var e,n,o,s;return(s=(o=(n=(e=t.uiConfig)==null?void 0:e.widget)==null?void 0:n.types)==null?void 0:o.some(r=>r.type==="knowledge-assist"&&r.isActive))!=null?s:!1}function bp(t){var n,o;return((o=(n=t.widgetInteractiveAssistants)==null?void 0:n.length)!=null?o:0)>0&&Yx(t)?!0:!!t.knowledgeAssistantNew||!!t.knowledgeAssistant}function eb(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Wi(t){return eb(t)&&(kt(t)||ws(t))}var wp,Le=new Map,tb=["bottom","height","left","right","top","width"],Cp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:tb.some(n=>t[n]!==e[n]);function Tp(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,...Tp(e)]:[]}function Ep(t,e){return!t||!e?null:b(h({},t),{top:t.top+e.top,left:t.left+e.left})}var js=!1,kp=()=>{js=!0;let t=[];if(Le.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),Le.delete(n);return}let o=n.getBoundingClientRect();Cp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Ep,e.rect):e.rect;Cp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Le.size===0){js=!1;return}wp=window.requestAnimationFrame(kp)};function zi(t,e){let n=Tp(t),o=[],s=n.map((r,i)=>zi(r,a=>{o[i]=a;let d=Le.get(t);if(!d)return;let l=o.reduce(Ep,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),Le.has(t)){let i=Le.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else Le.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!js&&kp()},unobserve(){s.forEach(i=>i.unobserve());let r=Le.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||Le.delete(t),Le.size||(cancelAnimationFrame(wp),js=!1)}}}}var Pp,Me=new Map,Rp=()=>{Me.forEach((t,e)=>{if(!e.isConnected){Me.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)))}),Me.size!==0&&(Pp=window.requestAnimationFrame(Rp))};function Ip(t,e){return{observe(){let n=Me.size===0;Me.has(t)?Me.get(t).callbacks.push(e):Me.set(t,{visible:void 0,callbacks:[e]}),n&&Rp()},unobserve(){let n=Me.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Me.delete(t),Me.size||cancelAnimationFrame(Pp)}}}}var Vi=["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 ji(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function cn(t){return Number.parseFloat(t)}function qs(t){return Math.round(t*1e6)}function Ap(t){return t/1e6}function qi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=cn(t.width),r=cn(t.borderLeftWidth),i=cn(t.borderRightWidth),a=cn(t.paddingRight),d=Ap(qs(s)-qs(r)-qs(i)),l=Ap(qs(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function $s(t,e={}){var c,g;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",St(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};ji(o,n,Vi),qi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Ip(t,()=>{ji(o,n,Vi),qi(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=zi(t,u=>{if(u===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),u.height===0&&u.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(ji(o,n,Vi),qi(o,t,n),r(),e.placement==="below"&&n.classList.add("below"),n.style.top=`${u.top}px`,n.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),f=window.getComputedStyle(e.closestScrollElement),m=cn(f.borderTopWidth),y=cn(f.borderBottomWidth),v=p.top+m-u.top,x=u.top+u.height+-(p.top+p.height-y);n.style.clipPath=`inset(${v}px 0px ${x}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(g=t.parentElement)==null||g.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function nb(t){return t.offsetParent!==null}function Lp(t){if(!nb(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 $i(t,e,n=100){let o=Lp(t);e({isVisible:o});let s=setInterval(()=>{let r=Lp(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Mp=(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){R.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as K,jsxs as ob}from"react/jsx-runtime";var Np=Mp("showTabHint",!0),un=class un{constructor({deepdeskUrl:e,version:n=un.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:a,websocketClient:d=Ws}){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 Vs;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;this.loadProfileConfigPromiseKey=null;this.personalCollectionSyncPendingKey=null;this.personalCollectionSyncDrainPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new it(l,{token:s,fetch:r}),this.version=n,this.instanceId=un.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[yp({broadcast:(f,m,y)=>{this.broadcastEvents.send(f,m,y)},emit:(f,m)=>this.emit(f,m),handleAfterSendMessage:f=>this.handleAfterSendMessage(f),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:f=>this.logSendMessage(f),onUpdateShowTabHint:f=>Np.update(f),sendEvent:(f,m)=>this.deepdeskApi.sendEvent(f,m)})]};this.store=fp(c),this.broadcastEvents=new tp({debug:!0,deepdeskUrl:l,eventMap:nl(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:()=>S(this,null,function*(){var f;return(f=Y(this.state))!=null?f:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(qn(Np.value())),this.store.dispatch(On({locale:o,adminUrl:l,productName:i}));let g=[],u=f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(kl(f))};this.hasConversation()?m():g.push(m)};this.ws.on("assistants::direct_response",u),this.ws.on("assistants::user_notification",u),this.ws.on("assistants::response_chunk",f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(El(f))};this.hasConversation()?m():g.push(m)}),this.ws.on("assistants::suggest_as_reply",f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Bt([{text:f.payload.message,type:"text",source:"assistant",assistantCode:f.code,sourceLabel:f.name}]))};this.hasConversation()?m():g.push(m)});let p=this.whenConversationLoaded(()=>{var f;this.broadcastEvents.setExternalId((f=this.state.conversation.current)==null?void 0:f.externalId),g.forEach(m=>m()),g.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),g.length=0,p()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=ut(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?(R.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(R.warn("Profile has not been loaded (yet)"),!0):(R.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(Y(this.state))e();else{let n=this.subscribe(Y,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(Dt(null)),this.store.dispatch(_e()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return S(this,null,function*(){return(yield this.store.dispatch(_e())).payload})}isConversationSupported(e,n){return S(this,null,function*(){return(yield this.store.dispatch(sr({externalId:e,options:n}))).payload})}createConversation(e){return S(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(fo(b(h({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return S(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(ho({externalId:e,options:n}))).payload})}upsertConversation(e){return S(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(rr(b(h({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return S(this,null,function*(){yield this.store.dispatch(ir(e))})}updateConversation(e){return S(this,null,function*(){return(yield this.store.dispatch(yo(e))).payload})}resetConversation(){this.store.dispatch(z()),this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(On(e))}setVisitorInfo(e){this.store.dispatch(ja(e))}setCustomData(e){this.store.dispatch(qa(e))}setAgentInfo(e,n){return S(this,null,function*(){var s;yield this.store.dispatch(Sn(h(h({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(Eo,{showNicknameDialog:!0})})}setAgentSettings(e){return S(this,null,function*(){yield this.store.dispatch(lr(e))})}getAgentSettings(){return S(this,null,function*(){return(yield this.store.dispatch(dr())).payload})}getMe(){return S(this,null,function*(){return this.deepdeskApi.getMe()})}refresh(){return S(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(xo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()}))}notifyExternalSuggestion(e){this.store.dispatch(le(e))}evaluateAssistant(e,n){return S(this,null,function*(){var c;let{input:o={},attachments:s=[],transcript:r,showCuesInWidget:i=!0,includeMetadata:a,externalConversationId:d}=n||{},l=yield this.store.dispatch(ce({assistantCode:e,attachments:s,transcript:r,includeMetadata:a,input:o,externalConversationId:d,skipState:!i}));if(l.error)throw new Error(`Assistant evaluation failed: ${(c=l.payload)!=null?c:l.error.message}`);return l.payload.output})}evaluateConversationAssistant(e,n){return S(this,null,function*(){var c,g,p;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){R.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=xp(o,e),r=(g=n==null?void 0:n.showCuesInWidget)!=null?g:!0,u=n!=null?n:{},{showCuesInWidget:i}=u,a=D(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,()=>S(this,null,function*(){var y,v;let m=yield this.store.dispatch(ce(h(b(h({assistantCode:f,includeMetadata:!0},a),{skipState:!r}),n!=null&&n.attachments&&(n==null?void 0:n.attachments.length)>0?{attachments:n==null?void 0:n.attachments}:{})));if(m.error)throw new Error(`Assistant evaluation failed: ${(y=m.payload)!=null?y:m.error.message}`);return{assistantCode:f,evaluationId:m.payload.evaluationId,output:m.payload.output,externalConversationId:(v=m.payload.externalConversationId)!=null?v:d}})).catch(m=>{if(m instanceof to)return R.warn(`Queued assistant "${f}" was outdated and dropped`),null;throw m})));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,g=a||d,u=c==="inline"||c==="below"?"below":"above",p=s.length>0;if(this.store.dispatch(Ma(ar(e))),!Ae(this.state)||e.key!=="Tab"&&!l)return;let f=()=>{n||!p||i&&(e.shiftKey||(this.store.dispatch(Da()),e.preventDefault()))},m=()=>{n||!p||g&&r<=0||i&&(e.shiftKey||(this.store.dispatch(_a()),e.preventDefault()))};switch(e.key){case"ArrowUp":u==="below"?m():f();break;case"ArrowDown":{u==="below"?f():m();break}case"Escape":{n||(this.store.dispatch(So(-1)),this.store.dispatch(ot({collapse:!0})),this.store.dispatch(xc(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let y=Ht(this.state);if(!y)return;this.store.dispatch(qn(!1)),this.store.dispatch(le({text:y.text,suggestion:y,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(g||this.state.input.selectedSuggestionIndex===-1)return;let y=Ht(this.state);if(!y)return;this.store.dispatch(le({text:y.text,suggestion:y,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(g||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let y=Ht(this.state);if(!y)return;this.store.dispatch(le({text:y.text,suggestion:y,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(ot({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ze([]))}handlingTimeStart(){this.state.handlingTime.startTime||(R.info("Start handling time"),this.store.dispatch(ap()))}handlingTimeStop(){this.state.handlingTime.startTime&&(R.info("Stop handling time"),this.store.dispatch(zs()))}logSendMessage(e){let n=Sp(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=vp(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(lp()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(gt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(Ha()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){R.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),R.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($a(e))}whenConversationLoaded(e){let n=()=>this.getConversationLoadedKey(),o=()=>{let r=n();r&&this.loadProfileConfig().then(()=>{if(n()!==r)return;let i=this.state.conversation.current,a=me(this.state);!(i!=null&&i.id)||i.profileCode&&(a==null?void 0:a.code)!==i.profileCode||e()})};return n()&&o(),this.subscribe(r=>this.getConversationProfileKey(r.conversation.current),r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=$s(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]=$s(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 St(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),R.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()?(R.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Fa(o.metrics))):R.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(!Wi(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let u=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:a}=u,d=D(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),St(e),this.inputMediator=a||(kt(e)?new an(e):new rn(e)),this.inputMediator.on("change",({plainText:p,rawHTML:f,suggestionTextStart:m})=>{this.store.dispatch(xo({text:p,html:f,suggestionTextStart:m}))}),this.inputMediator.on("keyup",p=>{this.store.dispatch(Na(ar(p)))}),this.inputMediator.on("keydown",p=>{this.handleKeyDown(p)}),this.inputMediator.on("paste",({pastedText:p,selectionText:f})=>{this.store.dispatch(Oa({text:p,selectionText:f}))}),this.inputMediator.on("cut",({selectionText:p})=>{this.store.dispatch(La(p))});let c;this.inputMediator.on("selection",p=>{clearTimeout(c),p===null?c=setTimeout(()=>{p!==null&&this.store.dispatch(bo(p))},500):this.store.dispatch(bo(p))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var p;(p=this.inputMediator)==null||p.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(us(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(us(!0))}),this.renderSuggestions(e,l),this.subscribe(ht("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(ht("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let g=this.renderOverlays(n);this.unmountHandlers.push(()=>{g.unmount()}),this.store.dispatch(xo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()})),this.store.dispatch(bo(this.inputMediator.getSelection())),this.store.dispatch(us(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=at(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(K(Ve,{store:this.store,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Hc,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>S(this,null,function*(){try{yield this.store.dispatch(za({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(Eo,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){R.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=at(s);r.render(K(Ve,{store:this.store,customStyles:o,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(_c,{})})}));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&&Ui(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,g]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),u=at(d);u.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(fu,{inputElement:e})})}));let p=at(c);return p.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Gc,{onLogIn:()=>this.loginViaPopup().catch(f=>R.warn(f.message))})})})),{unmount(){u.unmount(),p.unmount(),l(),g()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&Ui(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=at(d);return c.render(K(Ve,{store:this.store,customStyles:o,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(vc,{onLogIn:()=>this.loginViaPopup().catch(g=>R.warn(g.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=at(o);return s.render(K(Ve,{store:this.store,customStyles:n,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(pc,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&R.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,signInViaPopup:i,ssoUrl:a,openAdminFeedback:d}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r,signInViaPopup:i});let l;if(a)try{l={url:new URL(a,this.settings.adminUrl).toString()}}catch(c){R.warn(`Invalid ssoUrl '${a}' passed to renderWidget`)}this.widgetRoot=at(e),this.widgetRoot.render(K(Ve,{store:this.store,customStyles:o,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Yo,{report:c=>this.deepdeskApi.sendEvent(id,{data:c}),children:K(Qu,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,openAdminFeedback:d,onLogIn:()=>this.loginViaPopup(l).catch(c=>R.warn(c.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=at(n);return i.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Oi,{children:ob(Qo,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:Nn,children:[K(gn,{children:K(Jo,{title:o.title,emptyState:o.emptyState})}),K(Ni,{children:K(Xo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=$i(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Zo(e)&&e.message==="Unauthorized"&&this.login()}getConversationProfileKey(e){var n;if(e!=null&&e.id)return`${e.id}:${(n=e.profileCode)!=null?n:""}`}getProfileLoadKey(){var n;let e=this.state.conversation.current;return e!=null&&e.profileCode&&(n=this.getConversationProfileKey(e))!=null?n:null}isCurrentProfileLoadKey(e){return this.getProfileLoadKey()===e}getConversationLoadedKey(){return this.getConversationProfileKey(this.state.conversation.current)}resetProfileDerivedSettings(){this.store.dispatch(Vr()),this.store.dispatch(On(Ar))}syncPersonalCollectionForConversation(e){this.personalCollectionSyncPendingKey=e,this.ensurePersonalCollectionSyncDrain()}ensurePersonalCollectionSyncDrain(){return this.personalCollectionSyncDrainPromise?this.personalCollectionSyncDrainPromise:(this.personalCollectionSyncDrainPromise=this.drainPersonalCollectionSync().finally(()=>{this.personalCollectionSyncDrainPromise=null,this.personalCollectionSyncPendingKey&&this.ensurePersonalCollectionSyncDrain()}),this.personalCollectionSyncDrainPromise)}drainPersonalCollectionSync(){return S(this,null,function*(){for(;this.personalCollectionSyncPendingKey;){let e=this.personalCollectionSyncPendingKey;if(this.personalCollectionSyncPendingKey=null,!this.isCurrentProfileLoadKey(e))continue;let n=this.state.conversation.current,o=n==null?void 0:n.id;if(!(!o||!n.profileCode))try{yield this.deepdeskApi.syncPersonalCollection(o)}catch(s){this.isCurrentProfileLoadKey(e)&&R.warn("Failed to sync personal collection for profile",s)}}})}loadProfileConfig(e=!0){let n=this.getProfileLoadKey();if(!n)return this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.resetProfileDerivedSettings(),Promise.resolve();let o=this.state.conversation.current,s=me(this.state);if(s&&s.code!==(o==null?void 0:o.profileCode)&&(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.resetProfileDerivedSettings()),this.loadProfileConfigPromise&&this.loadProfileConfigPromiseKey===n)return this.loadProfileConfigPromise;this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=n;let r=Promise.resolve().then(()=>S(this,null,function*(){try{yield this.store.dispatch(Fn()).unwrap()}catch(d){if(d===Qt)return this.loadProfileConfigPromise===r&&(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null),e&&this.isCurrentProfileLoadKey(n)&&!me(this.state)?this.loadProfileConfig(!1):void 0;throw d}if(!this.isCurrentProfileLoadKey(n))return;let i=me(this.state),a=this.state.conversation.current;!i||i.code!==(a==null?void 0:a.profileCode)||(this.store.dispatch(On({showSearch:i.search,showImageSearch:i.imageSearch,showEntitiesCommand:i.entitiesCommand,showSummaryCommand:!!i.summarizerAssistantNew,showKnowledgeSearch:bp(i),recommendTextSuggestions:i.recommendTextSuggestions})),this.syncPersonalCollectionForConversation(n))})).finally(()=>{this.loadProfileConfigPromise===r&&(me(this.state)||(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null))});return this.loadProfileConfigPromise=r,r}loginViaPopup(e){return S(this,null,function*(){return new Promise((n,o)=>{this.store.dispatch(go());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",g),clearInterval(u)};r.onmessage=p=>S(this,null,function*(){var f,m;if((f=p.data)!=null&&f.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((m=p.data)==null?void 0:m.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(bn),d=!0,s.port1.close(),n()}catch(y){console.error(y),o(y)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");if(c===null){o(new Error("Popup blocked by browser"));return}let g=p=>S(this,null,function*(){var f;if(!(p.origin!==a.origin||p.source!==c))switch((f=p.data)==null?void 0:f.type){case"deepdesk-popup-request-origin":{try{let m=JSON.stringify({type:"deepdesk-popup-parent-origin"});c.postMessage(m,a.origin)}catch(m){R.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.postMessage(m,a.origin,[s.port2])}catch(m){R.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-error":{if(l(),p.data.message==="Platform account url mismatch"){let m="Please contact your administrator: The page that opened the popup is not a trusted origin.";R.warn(m),this.store.dispatch(nr(m)),o(new Error(m));return}if(p.data.message==="Timeout"){let m="Please contact your administrator: Popup timed out. Check if the account's platform.url or account.url is configured correctly.";R.warn(m),this.store.dispatch(nr(m)),o(new Error(m));return}o(new Error(p.data.message));break}}});window.addEventListener("message",g);let u=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 S(this,null,function*(){this.isMounted&&(yield this.store.dispatch(ls()))})}refreshWidgetSuggestions(){return S(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=Hn(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(Se());break;case"pinned-messages":case"sticky-messages":break;default:co.includes(o)||this.store.dispatch(xe(o))}})}catch(o){this.handleError(o)}})}};un.version="19.6.2-beta.15",un.count=0;var Gs=un;function sb(t){return S(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 rb(t,e){return S(this,null,function*(){let n=yield sb(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 ib(t,e,n){return S(this,null,function*(){yield new it(t).authenticateWithKey(e,n)})}function ab(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function lb(o,s){return S(this,arguments,function*(t,e,n={}){var g,u;let{value:r}=t,{start:i,end:a}=(g=n.replace)!=null?g:{start:0,end:r.length},d=`${r.slice(0,i)}${e}${r.slice(a)}`,l=(u=n.selectionAfter)!=null?u:{start:i+e.length,end:i+e.length},c=()=>{if(n.setValue)return n.setValue(d);t.value=d};return Promise.resolve(c()).then(()=>{t.selectionStart=l.start,t.selectionEnd=l.end,t.blur(),t.focus()})})}function db(o,s){return S(this,arguments,function*(t,e,n={}){let r=n.replace?It(t,n.replace.start,n.replace.end):Yn(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
|
-
`).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?
|
|
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
|
|
10
|
+
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 Sc}from"react/jsx-runtime";var ev={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},xc=({className:t,color:e})=>Sc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Sc("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:ev[e||"pink"]})});var bc={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var pi={};Q(pi,{enUS:()=>tv,nlNL:()=>nv});var tv={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},nv={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as rv}from"react-redux";import{jsx as gi,jsxs as Cc}from"react/jsx-runtime";var wc=({onLogIn:t})=>{let e=R(pi),n=I("floatingMenu"),o=I("productName"),s=rv(),r=sv(Y),i=C("FloatingMenu",bc);if(r===null||n===!1)return null;let a=()=>{r===!0?s(Se(!0)):t()};return Cc("button",{type:"button",className:ov(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[gi("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),Cc("div",{className:i.icon,children:[gi(xc,{className:i.logo,color:"pink"}),r===!1&&gi(vc,{className:i.lock})]})]})};import{useEffect as Rv,useRef as Av}from"react";import{useDispatch as Lv,useSelector as kt}from"react-redux";function Le(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 iv}from"@reduxjs/toolkit";var av={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},gs=({ui:t})=>t.overlayCollapsed,Tc=iv({name:"ui",initialState:av,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:$n,setInputFocus:ms,setOverlayCollapsed:rt,setOpenOverlayWhenTyping:Ec,setOverlayCollapsedUserOverwrite:kc}=Tc.actions,Pc=Tc.reducer;var Ic={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as fs}from"react/jsx-runtime";var lv=({match:t,selected:e,styles:n})=>fs(M,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:fs("span",{className:n.styleSuggestion,children:t.suggestion})}),dv=({matches:t,selectedIndex:e})=>{let n=C("StyleSuggestionList",Ic);return fs(ne,{children:t.map((o,s)=>fs(lv,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},hs=dv;import{useMemo as Tv}from"react";import{Interweave as Nc}from"interweave";import{useEffect as fv,useMemo as hv,useRef as yv,useState as vv}from"react";import{useDispatch as Sv,useSelector as Oc}from"react-redux";import{useEffect as cv}from"react";function Rc(t,e,n){cv(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Ac={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 Lc,jsxs as uv}from"react/jsx-runtime";var Mc=({title:t})=>uv("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Lc("title",{id:"closeTitle",children:t}),Lc("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 mi={};Q(mi,{enUS:()=>pv,nlNL:()=>gv});var pv={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},gv={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as Ve,jsxs as Dc}from"react/jsx-runtime";var xv=["search","personal-collection-search","search-autocomplete"];function bv(t,e,n,o={}){var r;let s="";return xv.includes(e)?s=Dd(Jr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=Jr(t,n,o),o.placeholders===!0&&(s=_d(s)),s}var Cv=()=>{},wv=({selected:t,suggestion:e})=>{let n=R(mi),o=I("inlineSuggestions"),s=Oc(ut),[r,i]=vv(!1),a=I("enableSuggestionFeedback"),d=Oc(y=>y.input.text),l=Sv(),c=C("TextSuggestion",Ac),g=yv(null),u=e.source==="assistant",p=a&&!u;fv(()=>{let y=setTimeout(()=>{l(Da({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(y)}},[e]),Rc(g,"click",()=>{l(de({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let f=()=>{l(gt({source:e.source,text:e.text,assistantCode:e.assistantCode}))},m=hv(()=>bv(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:Dc("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[Ve(M,{ref:g,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:Cv,children:e.source==="assistant"?Dc("div",{className:c.assistantContainer,children:[Ve(Nc,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),Ve("span",{className:c.assistantBadge,children:n("assistant")})]}):Ve(Nc,{containerTagName:"div",tagName:"span",className:c.formattedText,content:m})}),p&&r&&Ve("div",{className:c.actions,children:Ve(ds,{source:"overlay",context:d,suggestion:e})}),u&&r&&Ve("div",{className:c.closeIconContainer,children:Ve("button",{type:"button",className:c.closeIcon,onClick:f,title:n("close"),children:Ve(Mc,{title:n("close")})})})]})},_c=wv;import{jsx as kv}from"react/jsx-runtime";var Ev=({suggestions:t,selectedIndex:e,reverse:n})=>Tv(()=>{let s=t.map((r,i)=>kv(_c,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ys=Ev;var Fc={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as Pv,createSlice as Iv}from"@reduxjs/toolkit";var Qn={list:{keywordMatches:[]},fetchState:"idle"},vs=t=>t.styleSuggestions.list,Et=Pv("styleSuggestions/getAll",(n,o)=>S(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 Qn.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),Hc=Iv({name:"styleSuggestions",initialState:Qn,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(Et.pending,e=>{e.fetchState="loading"}).addCase(Et.rejected,e=>{e.fetchState="error"}).addCase(Et.fulfilled,(e,n)=>{e.fetchState="done",Ze(e.list,n.payload)||(e.list=n.payload)}).addCase(mt,e=>{e.list=Qn.list}).addCase(z,()=>Qn).addCase(ie,()=>Qn)}}),{commitStyleSuggestion:Bc}=Hc.actions,Kc=Hc.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 xs,jsxs as Nv}from"react/jsx-runtime";var Mv=()=>{var y;let t=Av(null),e=C("InlineSuggestionsOverlay",Fc),n=kt(Le),o=Lv(),s=kt(Y),r=kt(Ht),i=kt(gs),a=I("showTextSuggestions"),d=kt(pt),l=kt(Sn),c=I("showStyleSuggestions"),g=I("showStyleSuggestionList"),u=kt(vs),p=c&&g?Ss((y=u.keywordMatches)!=null?y:[]):[],f=p.length>0,m=a&&d.length>0;return St(()=>{setTimeout(()=>{o(rt({collapse:!0,skipWhenInputFocus:!0}))})}),Rv(()=>{let v=t.current;if(!v||!v.parentElement)return;v.parentElement.style.left="0px";let x=v.getBoundingClientRect();v.parentElement.style.left=`${Math.min(window.innerWidth-4-x.right,0)}px`}),i||s!==!0||r===!1||!n&&!f||!m&&!f?null:xs("div",{className:e.root,"data-variant":"inline",children:Nv("div",{ref:t,className:e.paper,children:[f&&xs(hs,{matches:p,selectedIndex:-1}),m&&xs(ne,{children:xs(ys,{suggestions:d,selectedIndex:l})})]})})},Uc=Mv;import _v,{useState as hi,useEffect as Fv}from"react";var Wc={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 Hv}from"react-redux";var fi={};Q(fi,{enUS:()=>Ov,nlNL:()=>Dv});var Ov={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."}]},Dv={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 Bv,jsx as Ce,jsxs as bs}from"react/jsx-runtime";var zc=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=hi(""),[i,a]=hi(!1),[d,l]=hi(!1),c=C("Nickname",Wc),g=_v.useRef(null),u=Hv(v=>v.info.showNicknameDialog),p=R(fi),f=I("adminUrl");Fv(()=>{o&&a(!0)},[o]);let m=()=>{if(!g.current)return;s.trim()?g.current.setCustomValidity(""):g.current.setCustomValidity(p("nicknameDialogError")),g.current.reportValidity()},y=v=>{v.preventDefault();let x=s.trim(),w=v.currentTarget.querySelector("#nickname-input");if(!x){w.setCustomValidity(p("nicknameDialogError")),w.reportValidity();return}w.setCustomValidity(""),e(x)};return bs(Qt,{isOpen:u,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[Ce("div",{className:c.titleWrapper,children:Ce("h1",{className:c.title,children:p("title")})}),bs("form",{className:c.dialogContent,onSubmit:y,children:[Ce("p",{children:p("nicknameDialogTitle")}),i&&o&&Ce("div",{className:c.errorMessage,children:f?(()=>{let v=p("nicknameDialogSaveError",{account:f}),x=`${f}.deepdesk.com/admin/user-settings`,w=v.indexOf(x);if(w!==-1){let T=v.substring(0,w),k=v.substring(w+x.length);return bs(Bv,{children:[T,Ce("a",{href:x,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:x}),k]})}return v})():p("nicknameDialogSaveErrorWithoutLink")}),Ce("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:p("nicknameDialogInputPlaceholder"),value:s,onChange:v=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(v.target.value)),r(v.target.value)},onBlur:m,ref:g}),d&&Ce("div",{className:c.errorMessage,role:"alert",children:p("nicknameDialogEmojiError")}),bs("div",{className:c.buttonsWrapper,children:[o?Ce("div",{className:c.closeButtonWrapper,children:Ce("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:p("close")})}):null,Ce("div",{className:c.buttonContinueWrapper,children:Ce("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:p("nicknameDialogContinueButton")})})]})]})]})};import{Provider as Kv}from"react-redux";import{jsx as Cs}from"react/jsx-runtime";var Uv=({children:t})=>{let n=I("locale").replace("-","");return Cs(Er.Provider,{value:n,children:t})},Wv=({store:t,customStyles:e={},children:n})=>Cs(Kv,{store:t,children:Cs(Uv,{children:Cs(gn.Provider,{value:e,children:n})})}),qe=Wv;import bi from"classnames";import{useEffect as eS,useRef as tS,useState as nS}from"react";import{useDispatch as oS,useSelector as je}from"react-redux";import{useState as zv}from"react";function Vc(t,e){let[n,o]=zv(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return P.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){P.error(i)}}]}var qc=()=>/Mac/i.test(navigator.platform);import jv from"classnames";import{Fragment as Gv,useCallback as vi,useMemo as Gc}from"react";var yi={};Q(yi,{enUS:()=>Vv,nlNL:()=>qv});var Vv={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"}]}]},qv={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 jc={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as ws,jsxs as $c}from"react/jsx-runtime";var Si=(t,e,n)=>o=>ws("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),$v=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=R(yi),i=ae(),a=C("Login",jc),d=I("productName"),l=I("signInViaPopup"),c=n&&!l,g=vi(x=>{x.preventDefault(),o&&o(Number.parseInt(x.target.value,10))},[]),u=vi(x=>{x.preventDefault(),i.send(zt,!0)},[e]),p=Gc(()=>x=>ws("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:x},"login"),[e]),f=vi(x=>ws("button",{type:"button",className:a.anchorButton,onClick:u,children:x},"prompt"),[u]),{min:m,hour:y,day:v}=Gc(()=>({min:Si(a,600,g),hour:Si(a,3600,g),day:Si(a,3600*12,g)}),[]);return $c("div",{className:jv(t,a.root),children:[r("loginPlease",{login:c?f:p,productName:d}),o&&$c(Gv,{children:[ws("br",{}),r("snooze",{min:m,hour:y,day:v})]})]})},Ts=$v;import{useDispatch as Qv}from"react-redux";var Qc={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as Xc,jsxs as Jv}from"react/jsx-runtime";var Xv=({title:t})=>{let e=C("SearchTrigger",Qc),n=Qv(),o=j();return Jv("button",{type:"button",className:e.root,onClick:()=>{n(Se(!0)),o("open search",{via:"autocomplete-overlay"})},children:[Xc(Yt,{}),Xc("span",{className:e.text,children:t})]})},Jc=Xv;var xi={};Q(xi,{enUS:()=>Zv,nlNL:()=>Yv});var Zv={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"}]},Yv={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 Zc={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 J,jsxs as it}from"react/jsx-runtime";var sS=({onLogIn:t})=>{var q;let e=C("SuggestionsOverlay",Zc),n=R(xi),o=je(Le),s=je(Oa),r=oS(),i=tS(null),a=I("searchTriggerKey"),d=I("productName"),l=je(gs),c=je(Y),g=je(xa),u=je(Ht),[p,f]=nS(null),m=I("showSearch"),y=I("showTextSuggestions"),v=I("adminUrl"),x=I("isEmbedded"),w=I("suggestionsPlacement"),[T,k]=Vc("dd-snooze-until-ms",0),E=l||T>Date.now(),A=je(pt),_=je(Sn),G=I("showStyleSuggestions"),te=I("showStyleSuggestionList"),N=je(vs),F=G&&te?Ss((q=N.keywordMatches)!=null?q:[]):[],ke=F.length>0,B=A.filter(Oe=>Oe.source!=="gpt").length,se=()=>{E&&k(0),r(kc(!E))},O=Oe=>{let Mt=Date.now()+Oe*1e3;k(Mt),P.info(`Snooze until: ${new Date(Mt)}`),r(rt({collapse:!0}))};return eS(()=>{B===0&&f(null)},[A,B]),St(()=>{r(rt({collapse:!0,skipWhenInputFocus:!0}))}),c===null||u===!1?null:c===!1?it("div",{ref:i,className:bi(e.root,{[e.isCollapsed]:E}),children:[!E&&it("div",{className:e.triggers,children:[J("div",{style:{flex:1}}),J("div",{className:e.triggersRight,children:J(Ot,{className:e.toggleButton,title:n("collapse"),onClick:se,isCollapsed:!1})})]}),J("div",{className:e.toggleButtonWrapper,children:J(Ot,{className:e.toggleButton,title:n("open",{productName:d}),onClick:se,isCollapsed:!0})}),it("div",{className:e.collapsible,children:[g&&it("div",{className:e.loginError,children:[J("span",{className:e.loginErrorMessage,children:g}),J("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(ho()),"aria-label":n("dismissError"),children:n("dismiss")})]}),J(Ts,{loginUrl:v,isEmbedded:x,onLogIn:t,onSnooze:O})]})]}):!s||!o&&!ke?null:it("div",{ref:i,className:bi(e.root,{[e.isCollapsed]:E}),children:[!E&&it("div",{className:e.triggers,children:[J("div",{style:{flex:1},children:m&&J("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(qc()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>f(null),children:J(Jc,{title:n("search")})})}),it("div",{className:e.triggersRight,onFocus:()=>{},children:[J("div",{className:bi(!p&&e.hintsHidden,e.hints),children:p}),J(Ot,{className:e.toggleButton,title:n("collapse"),onClick:se,isCollapsed:!1})]})]}),J("div",{className:e.toggleButtonWrapper,children:J(Ot,{className:e.toggleButton,title:n("open",{productName:d}),onClick:se,isCollapsed:!0})}),(ke||B>0&&y)&&it("div",{className:e.collapsible,onFocus:()=>{},children:[ke&&J(hs,{matches:F,selectedIndex:-1}),B>0&&y&&J(ne,{children:J(ys,{suggestions:A,selectedIndex:_,reverse:w==="above"})})]})]})},Yc=sS;import Ii from"classnames";import{Interweave as zS}from"interweave";import{useCallback as VS,useEffect as qS,useMemo as Su,useRef as jS}from"react";import{connect as GS}from"react-redux";import{useEffect as rS,useRef as iS,useState as aS}from"react";function Es(t){return t.contentEditable==="true"}function lS(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 eu(t){let{selectionStart:e,selectionEnd:n}=Es(t)?lS(t):t;return[e,n]}function tu(t){let[,e]=aS(),n=iS(null);return n.current=eu(t),rS(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=eu(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 nu(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(po);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 dS}from"react";var cS=["div","span","mark","strong","b","i","u","em"];function Ci(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(cS.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),dS(o,{children:Ci(i,e,n+1)})]}return[...t,...e]}function Pt(t){return t.tagName.toLowerCase()==="textarea"}var ou={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 yS from"classnames";import{Matcher as vS}from"interweave";import{useEffect as SS,useMemo as xS}from"react";import{useEffect as uS,useRef as pS,useState as gS}from"react";function su(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function ks(t){let e=pS(null),[n,o]=gS(!1);return uS(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=su((g,u)=>{let p=e.current;if(!p)return;let f=g/r,m=u/r,y=p.getBoundingClientRect(),v=f>y.x&&f<y.x+y.width&&m>y.y&&m<y.y+y.height;v&&!s?(s=!0,o(!0)):!v&&s&&(s=!1,o(!1))},({clientX:g,clientY:u})=>[g,u]),[d,l]=su(()=>{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 Is(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function ru(t){return t!=null}import mS from"classnames";import{forwardRef as fS,useRef as hS}from"react";var Ge={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 iu}from"react/jsx-runtime";var Rs=fS((s,o)=>{var r=s,{className:t,children:e}=r,n=D(r,["className","children"]);let i=hS(null),a=C("TabCompletion",Ge);return iu("div",b(h({ref:Is([i,o]),className:mS(t,a.popoverContentContainer)},n),{children:iu("div",{className:a.popoverContent,children:e})}))});import{jsx as Xn,jsxs as wS}from"react/jsx-runtime";var bS=t=>e=>{let n=Kr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},CS=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=C("TabCompletion",Ge),i=jo(),a=xS(()=>bS(t.getBoundingClientRect()),[t]),[d,l]=ks(t);return SS(()=>{l?i.open():i.close()},[l]),wS("span",{children:[Xn("mark",{ref:Is([d,i.triggerRef]),className:yS(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Xn(jt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:Xn(Rs,{style:n,children:Xn("div",{className:r.hintText,children:s})})})]})},As=class extends vS{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=>b(h({},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(ru);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 Xn(CS,{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 TS}from"interweave";import ES from"classnames";import{jsx as au}from"react/jsx-runtime";var kS=({inputElement:t,children:e})=>{let n=C("TabCompletion",Ge),[o,s]=ks(t);return au("mark",{ref:o,className:ES(n.matchPlaceholder,{[n.hover]:s}),children:e})},Ls=class extends TS{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 au(kS,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Pi from"classnames";import{Matcher as _S}from"interweave";import{createRef as FS,forwardRef as HS,useCallback as BS,useEffect as hu,useRef as yu,useState as vu}from"react";import{useDispatch as KS,useSelector as ki}from"react-redux";function lu(t,e){let n=new URL(t),o=n.searchParams.get("redirect");if(o){let s=new URL(o,n.origin);return e.forEach((r,i)=>{s.searchParams.set(i,r)}),n.searchParams.set("redirect",`${s.pathname}${s.search}${s.hash}`),n.toString()}return e.forEach((s,r)=>{n.searchParams.set(r,s)}),n.toString()}import{jsx as du}from"react/jsx-runtime";var cu=()=>du("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:du("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 PS,useEffect as pu,useMemo as IS,useState as gu}from"react";import{useDispatch as RS,useSelector as mu}from"react-redux";import AS from"lodash.debounce";var uu={root:"dd-ky-Bv",content:"dd-kV5e1"};function Ms(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 wi(t){return t.replace("https://www.","").replace("https://","")}import{jsx as It,jsxs as Ti}from"react/jsx-runtime";var LS=3,MS=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),NS=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=LS})=>{let r=C("LinkSearch",uu),[i,a]=gu(""),d=RS(),l=mu(lc("url")),c=mu(sl("URL")),g=IS(()=>c.map(MS),[c]),[u,p]=gu(g.length-1),f=I("fallbackImage"),m=w=>{let T=w.target;a(T.value)},y=(w,T)=>{w.stopPropagation(),w.preventDefault(),window.open(T,"_blank")},v=w=>{var E;let T=u-1<0?g.length-1:u-1,k=u+1===g.length?0:u+1;w.code==="Escape"&&(a(""),e()),w.code==="ArrowUp"&&p(T),w.code==="ArrowDown"&&p(k),w.code==="Enter"&&t(((E=g[u])==null?void 0:E.text)||i)},x=PS(AS(w=>{d(ft({query:w,type:"URL",tags:["link-search"]}))},300),[]);return pu(()=>{i&&x(i)},[i]),pu(()=>()=>{d(Po())},[]),Ti("div",{className:r.root,children:[It(ne,{withDivider:!0,children:(i?g:l).slice(0,s).map((w,T)=>It(M,{selected:u===T,onClick:()=>t(w.text),"data-testid":"linksearch-suggestion",children:Ti(H,{children:[It(H.Image,{src:Ms(w,"small",f||void 0),title:w.title||w.text}),Ti(H.Content,{className:r.content,cropText:!0,children:[It(H.Title,{children:w.title||wi(w.text)}),w.title&&wi(w.text)]}),It(M.Actions,{children:It(M.ActionButton,{label:o,onClick:k=>y(k,w.text)})})]})},w.text))}),It(Fn,{value:i,onChange:m,autoFocus:!0,placeholder:n,onKeyUp:v})]})},fu=NS;var Ei={};Q(Ei,{enUS:()=>OS,nlNL:()=>DS});var OS={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"}]},DS={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 we,jsxs as Ns}from"react/jsx-runtime";var US=HS((t,e)=>{let n=C("TabCompletion",Ge);return we("mark",{ref:e,className:Pi(n.matchSelection)},"selection-start")}),WS=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=R(Ei),i=C("TabCompletion",Ge),a=I("addToPersonalCollection"),d=ki(Vt("/admin/personal-collection/new")),l=ki(w=>{var T;return(T=w.conversation.current)==null?void 0:T.profileCode}),c=ki(ge)!==null,g=yu(null),u=yu(null),[p,f]=vu(null),m=KS(),y=jo(document.activeElement===o),[v]=vu(()=>document.createRange());y.triggerRef.current=v,hu(()=>()=>v.detach(),[]),hu(()=>{let w=t.current,T=g.current;!w||!T||(v.setStart(w,0),v.setEnd(T,0))},[t.current,g.current]),St(()=>{y.close()});let x=BS(w=>{let T=v.toString(),k=/^http(s?):\/\//.test(w)?w:`https://${w}`,E=`[${T}](${k})`;m(de({text:E,suggestion:{text:E,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return Ns("span",{children:[we("mark",{ref:g,className:Pi(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":y.opened?"true":"false",children:s}),y.opened&&we(jt,{className:i.popoverRoot,triggerRef:y.triggerRef,boundaryRef:e,position:"above",align:"start",children:Ns(Rs,{style:n,ref:u,children:[Ns("div",{className:Pi(i.selectionOptions,{[i.selectionOptionsIsHidden]:p!==null}),children:[Ns("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>f("insertLink"),children:[we(cu,{}),we("span",{children:"\xA0"}),we("span",{children:r("insertLink")})]}),a&&d&&we("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let w=v.toString(),T=new URLSearchParams({text:w});c&&l&&T.set("profile",l);let k=lu(d,T);window.open(k,"_blank")},children:we("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&we(fu,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:x,onDismiss:()=>{f(null),y.close()}})]})})]},"selection-end")},Os=class extends _S{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=FS(),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?h({isStart:a},i):null}replaceWith(n,o){return o.isStart?we(US,{ref:this.startRef}):we(WS,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as $S}from"react-redux";import{jsx as tn,jsxs as JS}from"react/jsx-runtime";var QS=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=C("TabCompletion",ou),c=I("insertLink"),g=I("addToPersonalCollection"),u=I("showMidSentenceSuggestions"),p=I("inlineSuggestions"),f=tu(a),m=jS(null),y=$S(Y);qS(()=>{Pt(a)&&f&&nu(a,f)},[f]);let v=VS(T=>{if(!s||!n)return T;let k=[tn("span",{className:l.resetIndent,children:"\u200B"},"u200B"),tn("span",{"data-testid":"tab-completion",className:Ii(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&k.push(tn("span",{className:Ii(l.hint,l.resetIndent),children:tn(Ys,{keyCode:"tab"},"tabHint")},"tabHint")),Ci(T,k)},[s,n,o]),x=Su(()=>{let T=[];return(c||g)&&T.push(new Os("selection")),T.push(new Ls("placeholders")),r&&T.push(new As("keywords")),T},[p,c,g,r]),w=Su(()=>{let T=window.getComputedStyle(a);return{"--dd-color":T.color,"--dd-font-size":T.fontSize,"--dd-font-family":T.fontFamily,"--dd-font-variant":T.fontVariant}},[]);return!t||!y?null:JS("div",{ref:T=>{T!=null&&T.parentElement&&(m.current=T==null?void 0:T.parentElement)},className:l.root,style:w,children:[tn(zS,{tagName:"span",containerTagName:"div",className:Ii(l.container,l.agentText),disableLineBreaks:Pt(a),content:e||"\u200B",onAfterParse:v,matchers:x,selection:f,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!u}),tn("br",{})]},"tab-completion")},XS=t=>{var v,x,w;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=Bt({input:e}),a=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",l=(v=e.html)!=null?v:Wn(e.text),c=e.text.slice(e.suggestionTextStart,e.selection.end),g=a.indexOf(c)===0?a.slice(c.length):"",{showTabHint:u}=n,{isSupported:p}=r,{showTabCompletion:f,visible:m,showStyleSuggestions:y}=o;return{showTabHint:u,showStyleSuggestions:y,showTabCompletion:f&&Le(t),content:l,tabText:g,source:d,keywordMatches:(w=(x=s.list)==null?void 0:x.keywordMatches)!=null?w:[],enabled:m&&p!==!1}},xu=GS(XS)(QS);import{Fragment as Kx,useEffect as rn,useState as Zu}from"react";import{useDispatch as Fi,useSelector as Z}from"react-redux";import{createAsyncThunk as bu,createSlice as ZS}from"@reduxjs/toolkit";var YS={token:null,interval:null},Ri=bu("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Ai=bu("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Ri()),setInterval(()=>o(Ri()),n)}),Cu=ZS({name:"passwordlessToken",initialState:YS,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Ri.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Ai.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:wu}=Cu.actions,Tu=Cu.reducer;import{createSelector as ex}from"@reduxjs/toolkit";function tx(t){return"buttonText"in t&&"eventName"in t}function Eu(t){if(t)return tx(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function nx(t){return t==null?void 0:t.map(e=>Eu(e))}function Ds(t){return typeof t!="string"?void 0:t.trim().toLowerCase()||void 0}function Jn(t,e){let n=Ds(e);n&&t.add(n)}function ox(t){var o,s,r;let e=new Set,n=new Set;if(!Array.isArray(t))return{codes:e,names:n};for(let i of t){if(!i||typeof i!="object")continue;let a=i,d=typeof a.assistant=="object"?a.assistant:void 0;((r=(s=(o=a.isSilent)!=null?o:a.is_silent)!=null?s:d==null?void 0:d.isSilent)!=null?r:d!=null&&d.is_silent)&&(Jn(e,typeof a.assistant=="string"?a.assistant:d==null?void 0:d.code),Jn(n,a.assistantName),Jn(n,a.assistant_name),Jn(n,a.displayName),Jn(n,a.display_name))}return{codes:e,names:n}}function Li(t,e){var r,i,a;let{codes:n,names:o}=ox(e);if(n.size===0&&o.size===0)return!1;let s=(i=Ds(t.code))!=null?i:Ds((r=t.rule)==null?void 0:r.label);return s?n.has(s):[t.name,t.title,(a=t.rule)==null?void 0:a.name].some(d=>{let l=Ds(d);return l!==void 0&&(o.has(l)||n.has(l))})}function sx(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var ku=ex([wl,vo,Jt],(t,e,n)=>(e?t.filter(i=>!i.externalConversationId||i.externalConversationId===e):t).filter(i=>!Li(i,n)).map(i=>{var l;let a=Eu(i.callToAction),d=nx(i.callToActions);return b(h(h(h(h({text:i.response,title:i.name},a?{callToAction:a}:{}),d!=null&&d.length?{callToActions:d}:{}),i.message!==void 0?{message:i.message}:{}),(l=i.sources)!=null&&l.length?{sources:i.sources}:{}),{editable:i.editable,isLoading:i.isLoading,evaluationId:i.evaluationId,rule:{id:sx(i.code),label:i.code,name:i.name,description:i.name}})}));import{useEffect as rx,useState as ix}from"react";import Ru from"classnames";import{jsx as Pu}from"react/jsx-runtime";var nn=()=>Pu("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Pu("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 Iu={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as on,jsxs as Au}from"react/jsx-runtime";var ax=({entities:t})=>{let e=C("EntitiesWidgetList",Iu),[n,o]=ix(void 0),s=j(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),Pe(a.text),s("entity copied",{entity:a,type:"copy"}))};return rx(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:on("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>Au("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[on("span",{className:e.entityText,children:a.text}),Au("span",{className:e.iconWrapper,children:[on("span",{className:Ru(e.icon),children:on(nn,{})}),on("span",{className:Ru(e.icon,n===d&&e.iconClicked),children:on(nn,{})})]})]},a.text))})},Lu=ax;import{jsx as Mu}from"react/jsx-runtime";var Nu=()=>Mu("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Mu("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 gx}from"react";import{useDispatch as mx,useSelector as fx}from"react-redux";var Ou={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Du={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as dx}from"react/jsx-runtime";var lx=({size:t=12})=>{let e=C("LoadingSpinner",Du);return dx("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},_u=lx;import{jsx as Fu}from"react/jsx-runtime";var Hu=()=>Fu("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Fu("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 Bu,jsxs as cx}from"react/jsx-runtime";var Ku=t=>cx("svg",b(h({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[Bu("title",{id:"checkTitle",children:"Check"}),Bu("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 Mi={};Q(Mi,{enUS:()=>ux,nlNL:()=>px});var ux={error:[{type:0,value:"Something went wrong"}]},px={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as $e,jsxs as Uu}from"react/jsx-runtime";var hx=3e3,yx=({assistantOptions:t})=>{let e=C("OnDemandAssistants",Ou),n=R(Mi),o=gx(),s=mx(),r=Tn(ue),i=fx(Jt),a=j(),d=i.filter(u=>u.isPinned),l=i.filter(u=>!u.isPinned),c=()=>S(null,null,function*(){return t.attachments&&t.attachments.length>0?t.attachments:s(((u,p,f)=>S(null,null,function*(){let m;if(t.transcript==="in-memory-transcript"){let y=f.dynamicThunkObject.conversationQuery;if(y){let v=yield y();m=Array.isArray(v)?v:void 0}}else Array.isArray(t.transcript)&&(m=t.transcript);return Rr({transcript:m})})))}),g=(u,p=!1)=>S(null,null,function*(){clearTimeout(o.current);let f=yield c();a("trigger on demand assistant",{assistantCode:u}),yield r.call(h(b(h({},t),{assistantCode:u,silent:p}),f.length>0?{attachments:f}:{})),o.current=setTimeout(()=>r.reset(),hx)});return i.length===0?null:Uu("div",{className:e.root,children:[d.map(({assistant:u,assistantName:p,displayName:f,isSilent:m})=>$e("button",{type:"button",className:e.button,disabled:r.state==="loading",onClick:()=>g(u,m),children:f||p},u)),l.length>0&&Uu(V,{placement:"top-end",children:[$e(V.Trigger,{className:e.trigger,disabled:r.state==="loading",children:$e(ls,{"data-testid":"trigger"})}),$e(V.Content,{className:e.nav,"data-testid":"popover",children:l.map(({assistant:u,assistantName:p,displayName:f,isSilent:m})=>$e(V.Button,{className:e.item,disabled:r.state==="loading",onClick:()=>g(u,m),children:f||p},u))})]}),r.state==="loading"&&$e(_u,{}),r.state==="done"&&$e(Ku,{"data-testid":"trigger-done"}),r.state==="error"&&$e(Ql,{trigger:$e(Hu,{}),children:n("error")})]})},Wu=yx;import{useDispatch as kx,useSelector as Px}from"react-redux";import{useEffect as zu,useRef as xx,useState as bx}from"react";var Zn={};Q(Zn,{enUS:()=>vx,nlNL:()=>Sx});var vx={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"}]},Sx={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"}]};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 Te,jsxs as _s}from"react/jsx-runtime";var Cx=500,wx=100,Tx=({content:t,onChange:e,onCopy:n})=>{let o=xx(null),s=C("WidgetCue",Ni);return zu(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,wx),Cx);r.style.setProperty("height",`${i}px`)},[t]),Te("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},Ex=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s,onSourceClick:r})=>{var y;let i=C("WidgetCue",Ni),a=R(Zn),d=j(),l=I("hasKeyboardInput"),[c,g]=bx(t.text),u=v=>{let x=v?b(h({},t),{callToAction:v}):t;e&&e(c,x),n(t)},p=(v,x)=>{o&&o(v,t),x&&tt(x,i.fadeup)},f=v=>{s&&s(v,t)},m=v=>{v.preventDefault(),v.stopPropagation(),n(t)};return zu(()=>{d("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),_s(M,{"data-testid":"cue",children:[Te(H,{children:_s(H.Content,{children:[t.title&&Te(H.Title,{className:i.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?a(t.rule.label):t.title}),t.message&&Te("p",{className:i.ctaMessage,children:t.message}),t.editable?Te(Tx,{content:c,onCopy:()=>{let v=document.getSelection();v&&p(v.toString())},onChange:v=>{var x;return g((x=v.target.value)!=null?x:"")}}):Te(bt,{content:t.text,sources:t.sources,onSourceClick:v=>r==null?void 0:r(v,t),useLabel:a("useCue"),copyLabel:a("copyCue"),onCopy:p,onUse:l?f:void 0})]})}),_s(M.ButtonsContainer,{children:[_s("div",{className:i.actions,children:[Te(M.Button,{onClick:v=>{var x;return p((x=Fo(c,"reply")[0])!=null?x:c,v.target)},variant:"primary",children:a("copyCue")}),t.callToAction&&Te(M.Button,{onClick:()=>u(),variant:"primary",children:t.callToAction.label}),(y=t.callToActions)==null?void 0:y.map((v,x)=>Te(M.Button,{onClick:()=>u(v),variant:"primary",children:v.label},`${v.event}-${v.label}-${x}`)),Te(M.Button,{onClick:m,variant:"secondary",children:a("removeCue")})]}),Te(Vo,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackType:"assistant"})]})]})},Vu=Ex;import{Fragment as Rx,jsx as Oi}from"react/jsx-runtime";var Ix=({cues:t})=>{let e=kx(),n=ae(),o=R(Zn),s=j(),r=Px(Jt),i=u=>{e(Bo({code:u.rule.label})),s("Assistant response closed",{evaluationId:u.evaluationId,assistantCode:u.rule.label,assistantOutput:u.text})},a=(u,p)=>{Pe(u),s("Assistant response copied",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,copiedText:u})},d=(u,p)=>{var f;p.callToAction&&(e(Ho(p)),s("Assistant call to action",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,eventName:p.callToAction.event,value:(f=p.callToAction.value)!=null?f:u}))},l=(u,p)=>{var f;n.send(He,{text:u,suggestion:{source:"assistant",assistantCode:(f=p.rule)==null?void 0:f.label,sourceText:u}}),s("Assistant response used",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,usedText:u})},c=(u,p)=>{s("Assistant source clicked",{evaluationId:p.evaluationId,assistantCode:p.rule.label,source:u})},g=t.filter(u=>!Li(u,r));return Oi(Rx,{children:g.map(u=>u.isLoading?Oi(Qo,{title:u.rule.label.startsWith("__")?o(u.rule.label):u.title},u.rule.id):Oi(Vu,{cue:u,onCallToAction:d,onRemove:i,onCopy:a,onUse:l,onSourceClick:c},u.evaluationId))})},qu=Ix;import{Fragment as Ax,useEffect as Lx}from"react";var ju={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 Qe,jsxs as Di}from"react/jsx-runtime";function Mx(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Gu=({data:t,schema:e})=>{let n=C("WidgetCustomData",ju),o=s=>{Pe(s)};return Lx(()=>{P.info("Custom data",t,e)},[t]),Qe("dl",{className:n.root,children:e.map(s=>{let r=Mx(t,s.path);return Di(Ax,{children:[Qe("dt",{className:n.label,children:s.label}),Qe("dd",{className:n.value,children:s.type==="boolean"&&r?Qe("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?Qe("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?Di("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[Qe("span",{className:n.copyButtonText,children:r.join(", ")}),Qe(nn,{})]}):typeof r=="string"||typeof r=="number"?Di("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[Qe("span",{className:n.copyButtonText,children:r}),Qe(nn,{})]}):"-"})]},s.label)})})};import{useCallback as Ox}from"react";var Nx=/(https?:\/\/[^\s]+)/,$u=t=>t.split(" ").find(e=>Nx.test(e));import{jsx as sn,jsxs as Fs}from"react/jsx-runtime";var Dx=({suggestion:t,lines:e,onUse:n})=>{var g;let o=t.text||t.url||t.message,s=$u(o),r=R(zn),i=I("showImages"),a=I("fallbackImage"),d=I("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=Ox(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return Fs(M,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[Fs(H,{children:[i&&t.image&&sn(H.Image,{src:Ms(t,"small",a||void 0),title:t.title}),Fs(H.Content,{children:[t.title&&sn(H.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&sn(M.Labels,{labels:t.searchKeywords}),sn(H.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),Fs(M.Actions,{children:[s&&sn(M.ActionButton,{onClick:c,label:r("visitUrl")}),d&&sn(M.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},Qu=Dx;import{Fragment as Fx,jsx as Xu}from"react/jsx-runtime";var _x=({lines:t,suggestions:e})=>{let n=ae(),o=(s,r)=>{n.send(He,{text:s,suggestion:b(h({},r),{source:r.source,sourceText:r.text})})};return Xu(Fx,{children:e.map(s=>Xu(Qu,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},Ju=_x;var Yn={};Q(Yn,{enUS:()=>Hx,nlNL:()=>Bx});var Hx={waiting:[{type:0,value:"Loading\u2026"}],waitingForConversation:[{type:0,value:"Waiting for conversation\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"My "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}],close:[{type:0,value:"Close"}]},Bx={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 Rt={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",footer:"dd-tvofr",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",footerShortcut:"dd-dH7XJ",link:"dd-DRo0x",interactiveAssistantTabs:"dd-eSP1-",interactiveAssistantTab:"dd-CwcHD",interactiveAssistantTabActive:"dd-GzRs-"};import{jsx as L,jsxs as eo}from"react/jsx-runtime";var Yu=(t,e)=>{let n=Z(Y);rn(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Ux=({onLogIn:t})=>{let e=C("Widget",Rt),n=I("isEmbedded"),o=I("adminUrl");return L("div",{className:e.loginText,children:L("div",{children:L(Ts,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},_i=({text:t})=>{let e=C("Widget",Rt);return L("div",{className:e.stateText,children:L("div",{children:L("p",{children:t})})},"notification")},Wx=()=>{let t=R(Yn),e=Fi(),n=C("Widget",Rt),o=I("showSearch"),s=I("isEmbedded"),r=Z(Vt("/admin/")),i=ae(),a=I("productName"),d=j();return Yu(()=>{if(s)return e(Ai()),()=>{e(wu())}},[e,s]),!o&&!r?null:eo("div",{className:n.shortcutList,children:[o&&L(M.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:L(Yt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&L(M.Button,{as:"a",target:"_blank",icon:L(Nu,{}),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})})]})},zx=({title:t,content:e})=>{let n=R(Yn),[o,s]=Zu(!0);return o?L(De,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:L(ne,{withDivider:!0,children:eo(M,{children:[L(H,{children:L(H.Content,{children:L(bt,{content:e})})}),L(M.ButtonsContainer,{children:L(M.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},Vx=()=>{let t=Fi(),e=Z(Kn),n=Z(Ad),o=Z(ku),s=Z(Ga),r=Z(as),i=Z(cs),a=Z(fe),d=Z(ge);return rn(()=>{s&&!n&&P.warn("Custom data provided, but no schema.")},[s,n]),Yu(()=>{e.forEach(({type:l})=>{l==="entities"?t(xe()):go.includes(l)||t(be(l))})},[t,d,a,e]),rn(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&P.warn("Received cues, but cues are not configured in widget.")},[e,o]),L(Kx,{children:e.map(({type:l,title:c,amount:g,lines:u,schema:p,property:f})=>{var m,y;switch(l){case"entities":return r&&r.length>0&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(Lu,{entities:r})},l);case"cues":return o&&o.length>0&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(ne,{withDivider:!0,children:L(qu,{cues:o})})},l);case"custom-data-banner":return s&&f&&s[f]&&L(zx,{title:c,content:String(s[f])},l);case"custom-data":return s&&p&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(ne,{withDivider:!0,children:L(Gu,{data:s,schema:p})})},l);default:return((y=(m=i[l])==null?void 0:m.suggestions)==null?void 0:y.length)>0&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(ne,{withDivider:!0,children:L(Ju,{lines:u,contentType:l,suggestions:i[l].suggestions.slice(0,g)||[]})})},l)}})})},Hi=({children:t})=>{let e=C("Widget",Rt);return L("div",{className:e.footer,children:t})},Bi=({children:t})=>{let e=C("Widget",Rt);return L("div",{className:e.root,"data-testid":"widget",children:t})},qx=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"},openAdminFeedback:o})=>{var T;let s=R(Yn),r=C("Widget",Rt),i=Fi(),a=Z(Ht),d=Z(Y),l=Z(vo),c=Z(fe),g=Z(Rd("knowledge-assist")),u=Z(Ld),p=Z(kl),f=Z(El),m=(T=u.find(k=>k.code===p))!=null?T:u[0],[y,v]=Zu(e.initialQuestion);rn(()=>{v(e.initialQuestion)},[l,e.initialQuestion]),rn(()=>{if(!l)return;let k=vn(l);k&&i(Lr(k))},[i,l]),rn(()=>{if(u.length===0)return;let k=u.some(E=>E.code===p);(!p||!k)&&i(Ar(u[0].code))},[u,p,i]);let x=!!g&&u.length>0&&!!m,w=(m==null?void 0:m.displayName)||(m==null?void 0:m.name)||(g==null?void 0:g.title)||"Knowledge Assistant";return a===!1?L(_i,{text:s("notSupported")}):d===!1?L(Ux,{onLogIn:t}):d===null?L(_i,{text:s("waiting")}):!l||!c?L(_i,{text:s("waitingForConversation")}):L(Vl,{handler:o,children:L(Bi,{children:eo(Zo,{initialQuestion:y,onInitialQuestionConsumed:()=>v(void 0),assistantCode:m==null?void 0:m.code,threadId:f,onThreadIdChange:k=>{m!=null&&m.code&&k!=null&&i(Mr({assistantCode:m.code,threadId:k}))},evaluateKnowledgeAssistFn:Dn,children:[eo(mn,{children:[L(Wx,{}),L(Vx,{}),x&&L(es,{title:w,emptyState:e.emptyState})]}),eo(Hi,{children:[x&&u.length>1&&L("div",{className:r.interactiveAssistantTabs,"data-testid":"widget-interactive-assistant-tabs",children:u.map(k=>{let E=k.code===(m==null?void 0:m.code);return L("button",{type:"button","aria-pressed":E,className:E?r.interactiveAssistantTabActive:r.interactiveAssistantTab,onClick:()=>i(Ar(k.code)),children:k.displayName||k.name},k.code)})}),x&&L(Yo,{}),L(Wu,{assistantOptions:n})]})]},m==null?void 0:m.code)})})},ep=qx;function no(t){let e=new Range;return e.selectNodeContents(t),e}function tp(t,e,n){try{return At(t,e,n),!0}catch(o){return!1}}function Hs(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Bs(t){return"tagName"in t&&t.tagName==="BR"}var to=/[\u200B-\u200D\uFEFF]/g;function At(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,g=/[\u200B-\u200D\uFEFF]/;if(!g.test(d))return l;for(let u=0;u<=d.length;u++)if(g.test(d[u])||c++,c===l)return u;throw new Error("Offset out of range")}function a(d){switch(d.nodeType){case Node.TEXT_NODE:{let l=d.textContent,c=l.replace(to,""),g=s+c.length,u=e>=s&&e<=g,p=n>=s&&n<=g;if(u){let f=i(l,e-s);f===0&&!p?o.setStartBefore(d):o.setStart(d,f)}p&&(o.setEnd(d,i(l,n-s)),r=!0),s=g;break}case Node.ELEMENT_NODE:{if(Bs(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;Hs(d)&&l&&!Hs(l)&&!Bs(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function Ks(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(g){let u=g===t,p=g===n,f=g===s;switch(g.nodeType){case Node.TEXT_NODE:{let m=g.textContent;p&&(a=l+m.substring(0,o).replace(to,"").length),f&&(d=l+m.substring(0,r).replace(to,"").length),l+=m.replace(to,"").length;break}case Node.ELEMENT_NODE:{if(Bs(g)&&g.nextSibling){l++;break}!u&&Hs(g)&&g.previousSibling&&l++;for(let m=0;m<g.childNodes.length;m++){let y=p&&m===o,v=f&&m===r;if(y&&(a=l),v&&(d=l),d!==void 0||((!y||!i)&&c(g.childNodes[m]),f&&m===r-1&&(d=l),d!==void 0))break}f&&(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 Us(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 g=c===t,u=c===n,p=c===s;switch(u&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let f=u?o:0,m=p?r:void 0;d+=c.textContent.replace(to,"").substring(f,m);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&Bs(c)&&c.nextSibling){d+=`
|
|
11
|
+
`;break}!g&&!i&&a===1&&Hs(c)&&c.previousSibling&&(d+=`
|
|
12
|
+
`);let f=u?o:0,m=p?Math.min(r,c.childNodes.length):c.childNodes.length;for(let y=f;y<m&&(l(c.childNodes[y]),a!==2);y++);break}default:break}p&&(a=2)}return l(t),d}var np=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(np||{}),at=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();Ze(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(np).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 op(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var an=class extends at{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Us(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!op(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!op(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return Ks(this.element,n);let o=this.lastKnownSelection;if(o&&tp(this.element,o.start,o.end))return o;let s=no(this.element);return s.collapse(!1),Ks(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Us(this.element,At(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 jx=["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 sp(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",jx.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 ln=class extends at{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 sp(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 rp(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 Gx(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var Ki=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()}},Ui=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=rp(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()}},Wi=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(),P.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 Ui(e,this.deepdeskUrl,{debug:!0}):new Ki(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=Gx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(P.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;P.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(b(h({},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)}},ip=Wi;function $x(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function U(t){return Array.isArray(t)?t.map(U):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(h({},e),{[$x(n)]:U(t[n])}),{}):t}function Qx(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function ee(t){return Array.isArray(t)?t.map(ee):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(h({},e),{[Qx(n)]:ee(t[n])}),{}):t}var dn=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var oo=t=>new Promise(e=>{setTimeout(e,t)});var Ee=class extends dn{constructor(){super(...arguments);this.name="ClientError"}},Ws=class extends dn{constructor(){super(...arguments);this.name="ServerError"}},zi=new Map;function ap(t){return S(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:(P.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var cn=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",E=n,{useCache:l=!1,abortLatest:c=!1,attempts:g=1,retryDelay:u=500,refreshTokenOn401:p=!0,retryOnError:f=A=>A instanceof TypeError,retryOnResponse:m=A=>A.status>=500,version:y=null}=E,v=D(E,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(zi.has(i)){o(zi.get(i));return}}let x=b(h({credentials:"include"},v),{headers:h({Accept:"application/json","Content-Type":"application/json"},v.headers)});!d&&this.csrfToken&&(x.headers=b(h({},x.headers),{"X-CSRFToken":this.csrfToken})),typeof y=="string"&&(x.headers=b(h({},x.headers),{"X-Deepdesk-API-Version":y}));let w=g,T=!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 k=()=>S(this,null,function*(){return w--,a(i,x).then(A=>S(this,null,function*(){return m(A)&&!r.isAborted&&w>0?(yield oo(u),k()):A.status===401&&p===!0&&T===!1?(T=!0,yield this.refreshToken(),k()):A})).catch(A=>S(this,null,function*(){if(f(A)&&!r.isAborted&&w>0)return yield oo(u),k();throw A}))});k().then(A=>S(this,null,function*(){let _=yield ap(A);if(delete this.latestRequestByUrl[i],A.status>=500){s(new Ws("Server Error",_));return}if(A.status===401){s(new Ee("Unauthorized",_));return}if(A.status===403){s(new Ee("Forbidden",_));return}if(A.status===404){s(new Ee("Not Found",_));return}if(A.status>=400){s(new Ee("Bad Request",_));return}l&&zi.set(i,_),o(_)})).catch(A=>{s(A)})})}validateToken(){return S(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 Ee("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,h({method:"POST",body:JSON.stringify(n)},o))}postWithStatus(e,n,o){return this.requestWithStatus(e,h({method:"POST",body:JSON.stringify(n)},o))}requestWithStatus(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,k=n,{useCache:d=!1,abortLatest:l=!1,attempts:c=1,retryDelay:g=500,refreshTokenOn401:u=!0,retryOnError:p=E=>E instanceof TypeError,retryOnResponse:f=E=>E.status>=500,version:m=null}=k,y=D(k,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]),v=b(h({credentials:"include"},y),{headers:h({Accept:"application/json","Content-Type":"application/json"},y.headers)});this.csrfToken&&(v.headers=b(h({},v.headers),{"X-CSRFToken":this.csrfToken})),typeof m=="string"&&(v.headers=b(h({},v.headers),{"X-Deepdesk-API-Version":m}));let x=c,w=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let T=()=>S(this,null,function*(){return x--,a(i,v).then(E=>S(this,null,function*(){return f(E)&&!r.isAborted&&x>0?(yield oo(g),T()):E.status===401&&u===!0&&w===!1?(w=!0,yield this.refreshToken(),T()):E})).catch(E=>S(this,null,function*(){if(p(E)&&!r.isAborted&&x>0)return yield oo(g),T();throw E}))});T().then(E=>S(this,null,function*(){let A=yield ap(E);if(delete this.latestRequestByUrl[i],E.status>=500){s(new Ws("Server Error",A));return}if(E.status===401){s(new Ee("Unauthorized",A));return}if(E.status===403){s(new Ee("Forbidden",A));return}if(E.status===404){s(new Ee("Not Found",A));return}if(E.status>=400){s(new Ee("Bad Request",A));return}o({status:E.status,data:A})})).catch(E=>{delete this.latestRequestByUrl[i],s(E)})})}patch(e,n,o){return this.request(e,h({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,h({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,h({method:"DELETE"},n))}};var lp;(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={}))})(lp||(lp={}));function zs(t){return b(h({},U(t)),{metadata:t.metadata})}var Lt=class Lt{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new cn(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>S(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return S(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(Lt.exchangeTokenPromise||(Lt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),Lt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return S(this,null,function*(){var o;yield this.preflight(),P.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",b(h({chat_start_time:new Date().toISOString()},ee(e)),{metadata:(o=e.metadata)!=null?o:{}}));return zs(n)})}upsertConversation(e){return S(this,null,function*(){var c;yield this.preflight(),P.info(`Upserting conversation for session ${e.externalId} and agent ${e.agentId}`);let{status:n,data:o}=yield this.client.postWithStatus("/api/v2/conversations",b(h({chat_start_time:new Date().toISOString()},ee(e)),{metadata:(c=e.metadata)!=null?c:{}}),{version:"v2"}),s=zs(o);if(n===201)return s;let{agentId:r,agentName:i,agentEmail:a,agentNickname:d,metadata:l}=e;return this.updateConversation(s.id,{agentId:r,agentEmail:a,agentName:i,agentNickname:d,metadata:l})})}getMe(){return S(this,null,function*(){yield this.preflight();let e=yield this.client.get("/apis/admin/session/me/");return U(e)})}postIdentity(e){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",ee(e))})}patchMe(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",ee(e));return U(n)})}getProfile(e){return S(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return U(n)})}getKnowledgeAssistant(e){return S(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return U(n)})}getContentTypes(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return U(e)})}getAccount(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return U(e)})}getPlatformConfig(e){return S(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return U(o)})}checkUserExists(e){return S(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return S(this,arguments,function*(e,n={}){yield this.preflight(),P.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 P.info(`Successfully retrieved conversation ${i.id} for session ${e}`),zs(i)})}isConversationSupported(o){return S(this,arguments,function*(e,n={}){P.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 S(this,null,function*(){var r;yield this.preflight();let o=ee(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return zs(s)})}postMessages(e,n){return S(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>b(h({},ee(o)),{metadata:o.metadata})))})}sendEvent(e,n){return S(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=D(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>b(h({},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",ee(b(h(h({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return S(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return S(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return S(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw P.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",ee(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return S(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}`,ee(n),{abortLatest:!0})).map(i=>b(h({},U(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 S(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return S(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,ee(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))})}syncPersonalCollection(e){return S(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/personal-collection/sync`,{},{version:"v2"})})}getPinnedMessages(e){return S(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return U(n).map(o=>b(h({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return S(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",ee(e),{abortLatest:!0,version:"v2"});return U(n)})}search(e){return S(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,ee(e));return U(n)})}loginWithPassword(e,n){return S(this,null,function*(){yield this.preflight();let o=yield this.client.post("/apis/admin/session/login/",{username:e,password:n},{refreshTokenOn401:!1});return U(o)})}logout(){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/logout/",{},{refreshTokenOn401:!1})})}requestLoginByEmail(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return U(n)})}requestPasswordlessToken(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return U(e.token)})}getCsrfToken(){return S(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return S(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return U(n)})}evaluateAssistant(e,n){return S(this,null,function*(){var d,l,c;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=g=>ee(g),i=(d=n==null?void 0:n.transcript)==null?void 0:d.map(g=>{var u;return h({source:g.source,text:g.text},(u=g.attachments)!=null&&u.length?{attachments:g.attachments.map(r)}:{})}),a=yield this.client.post(s,h({input:(l=n==null?void 0:n.input)!=null?l:{},conversation:i},(c=n==null?void 0:n.attachments)!=null&&c.length?{attachments:n.attachments.map(r)}:{}));return U(a)})}interactWithAssistant(e){return S(this,null,function*(){yield this.preflight();let n=new URLSearchParams;e.sessionId&&n.append("session_id",e.sessionId),e.externalConversationId&&n.append("external_conversation_id",e.externalConversationId);let o=`/api/v2/assistants/${e.assistantCode}/interact?${n.toString()}`,s=yield this.client.post(o,{message:e.message});return U(s)})}resetAssistantThread(e){return S(this,null,function*(){yield this.preflight();let n=encodeURIComponent(e.assistantCode),o=encodeURIComponent(e.sessionId);yield this.client.delete(`/api/v2/assistants/${n}/sessions/${o}/thread`)})}createAssistantThread(e){return S(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return U(o)})}postMessageToAssistantThread(e){return S(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 U(r)})}translateMessages(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",ee(e));return U(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(ha);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&P.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};Lt.exchangeTokenPromise=null;var lt=Lt;var Vs=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=U(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 Yx,configureStore as eb}from"@reduxjs/toolkit";import{createSlice as Xx}from"@reduxjs/toolkit";var dp={startTime:null,stopTime:null},cp=t=>t.handlingTime,up=Xx({name:"handlingTime",initialState:dp,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(z,()=>dp)}}),{handlingTimeStart:pp,handlingTimeStop:qs,handlingTimeReset:gp}=up.actions,mp=up.reducer;var fp=(t={})=>{let e=h({onAuthError:_t(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var hp=(t={})=>{let e,n=!0,o=h({getStyleSuggestions:Et,debounce:500},t);return s=>r=>i=>{var p;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(!((p=l.conversation.current)==null?void 0:p.id)||!c)return d;let{text:u}=l.input;return u===a&&!n||(clearTimeout(e),u==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:u}))},t.debounce)),d}};function Jx(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var yp=(t={})=>{let e=h({getTextSuggestions:be,getAutocompleteSuggestions:Gn,debounce:200,check:Le},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,g=(m=d.conversation.current)==null?void 0:m.id,u=r.type===us.toString();if(!g||!l&&!c)return a;let{input:p}=d;return Jx(p,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let y=ut(d);y===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(y))},u?0:e.debounce)),a}};var vp=Et.fulfilled.toString();function Zx(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 Sp=t=>e=>n=>o=>{var l;if(o.type!==vp){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=Zx(s,i);o.type===vp&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var tb=Yx({assistants:Dl,auth:Ta,conversation:La,contentTypes:Td,passwordlessToken:Tu,entities:Yd,handlingTime:mp,info:el,input:Va,settings:Fl,profile:Md,search:il,styleSuggestions:Kc,ui:Pc,textSuggestions:uc});function xp(t){return eb({reducer:tb,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(fp()).concat(yp({debounce:200})).concat(hp({debounce:500})).concat(Sp(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function bp(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 nb=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},ob=t=>e=>n=>o=>{var d,l,c,g,u,p;let s=e.getState(),r=yt("inlineSuggestions")(s),i=yt("autoSelectSuggestion")(s)||r;switch(o.type){case _t.toString():{!o.payload&&t.emit("logout",void 0);break}case fo.fulfilled.toString():{t.emit("logout",void 0);break}case xe.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 mt.toString():t.logSendMessage(o.payload);break;case Ho.toString():t.emit("call-to-action",{cue:o.payload});break;case ue.fulfilled.toString():if(!o.isBroadcasted){let{externalConversationId:f,currentExternalIdAtRequest:m}=(l=o.payload)!=null?l:{};(!f||!m||f===m)&&t.broadcast(gr,o,!1)}break;case ue.rejected.toString():break;default:break}let a=n(o);switch(o.type){case mt.toString():t.handleAfterSendMessage(o.payload);break;case $n.toString():t.onUpdateShowTabHint(o.payload);break;case qs.toString():t.logHandlingTime();break;case Kt.toString():t.broadcast(Ro,o);break;case gt.toString():t.broadcast(Ro,o);break;case Bo.toString():e.dispatch(gt({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let f=s.assistants.cues.find(m=>m.code===o.meta.arg.data.assistantCode);t.emit("event",b(h({},o.meta.arg),{cue:f}));break}case de.toString():{let{start:f,end:m}=s.input.selection;t.emit("select-suggestion",b(h({type:nb(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:f,end:m}:{start:0,end:m}})),r&&e.dispatch(et([]));break}case Bc.toString():{let{keyword:f,suggestion:m,eventMetrics:y}=o.payload,{text:v,selection:x}=s.input,w=bp(v,f,(c=x==null?void 0:x.end)!=null?c:v.length);if(!w)break;t.emit("select-suggestion",{text:m,type:"style",replace:w,suggestion:{text:m,source:"style"},eventMetrics:y});break}case Co.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(g=s.conversation.current)==null?void 0:g.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case et.toString():{i&&o.payload.length>0&&e.dispatch(wo(0));break}case ue.fulfilled.toString():{let{evaluationId:f,output:m,externalConversationId:y}=o.payload,v=o.meta.arg.assistantCode;if(t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:f,assistantCode:v,assistantOutput:Rl(m),externalConversationId:y,evaluationStatus:"success"}}),!o.meta.arg.skipState){let x=e.getState().assistants.cues;t.emit("cues",x)}break}case ue.rejected.toString():{let f=o.meta.arg.assistantCode,m=(p=o.meta.arg.externalConversationId)!=null?p:(u=e.getState().conversation.current)==null?void 0:u.externalId;t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:"",assistantCode:f,assistantOutput:"",externalConversationId:m,evaluationStatus:"failed"}});break}default:break}return a},Cp=ob;import{createSelector as sb}from"@reduxjs/toolkit";function Vi(t){return t.toISOString().replace("T"," ").replace("Z","")}var rb=(t,e)=>e.version,wp=sb([Ut,ge,cp,rb],(t,e,n,o)=>{if(!e)return P.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(P.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:Vi(s),timeStop:Vi(r)}});function Tp(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 so=class extends Error{};function ib(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var js=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 so("Queued async function is outdated"));let s=ib();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function qi(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return qi(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?qi(s,e):null}function ji(t,e){return qi(t,e)}var ab={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Ep=(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 P.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[ab[e]];if(o&&o.length>0){let a=o.map(d=>d.code);return t.summarizerAssistantNew&&e!=="ended"&&(a=a.filter(d=>d!==t.summarizerAssistantNew)),a}return P.warn(`No assistant set in profile for conversation event "${e}"`),[]};function lb(t){var e,n,o,s;return(s=(o=(n=(e=t.uiConfig)==null?void 0:e.widget)==null?void 0:n.types)==null?void 0:o.some(r=>r.type==="knowledge-assist"&&r.isActive))!=null?s:!1}function kp(t){var n,o;return((o=(n=t.widgetInteractiveAssistants)==null?void 0:n.length)!=null?o:0)>0&&lb(t)?!0:!!t.knowledgeAssistantNew||!!t.knowledgeAssistant}function db(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Gi(t){return db(t)&&(Pt(t)||Es(t))}var Ip,Me=new Map,cb=["bottom","height","left","right","top","width"],Pp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:cb.some(n=>t[n]!==e[n]);function Rp(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,...Rp(e)]:[]}function Ap(t,e){return!t||!e?null:b(h({},t),{top:t.top+e.top,left:t.left+e.left})}var Gs=!1,Lp=()=>{Gs=!0;let t=[];if(Me.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),Me.delete(n);return}let o=n.getBoundingClientRect();Pp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Ap,e.rect):e.rect;Pp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Me.size===0){Gs=!1;return}Ip=window.requestAnimationFrame(Lp)};function $i(t,e){let n=Rp(t),o=[],s=n.map((r,i)=>$i(r,a=>{o[i]=a;let d=Me.get(t);if(!d)return;let l=o.reduce(Ap,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),Me.has(t)){let i=Me.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else Me.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!Gs&&Lp()},unobserve(){s.forEach(i=>i.unobserve());let r=Me.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||Me.delete(t),Me.size||(cancelAnimationFrame(Ip),Gs=!1)}}}}var Mp,Ne=new Map,Np=()=>{Ne.forEach((t,e)=>{if(!e.isConnected){Ne.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)))}),Ne.size!==0&&(Mp=window.requestAnimationFrame(Np))};function Op(t,e){return{observe(){let n=Ne.size===0;Ne.has(t)?Ne.get(t).callbacks.push(e):Ne.set(t,{visible:void 0,callbacks:[e]}),n&&Np()},unobserve(){let n=Ne.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Ne.delete(t),Ne.size||cancelAnimationFrame(Mp)}}}}var Qi=["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 Xi(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function un(t){return Number.parseFloat(t)}function $s(t){return Math.round(t*1e6)}function Dp(t){return t/1e6}function Ji(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=un(t.width),r=un(t.borderLeftWidth),i=un(t.borderRightWidth),a=un(t.paddingRight),d=Dp($s(s)-$s(r)-$s(i)),l=Dp($s(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function Qs(t,e={}){var c,g;let n=e.overlayContainer||document.createElement("div");n.style.display="none",n.style.position=(c=e.position)!=null?c:"fixed",n.style.pointerEvents="none",n.style.borderColor="transparent",xt(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};Xi(o,n,Qi),Ji(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Op(t,()=>{Xi(o,n,Qi),Ji(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=$i(t,u=>{if(u===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),u.height===0&&u.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(Xi(o,n,Qi),Ji(o,t,n),r(),e.placement==="below"&&n.classList.add("below"),n.style.top=`${u.top}px`,n.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),f=window.getComputedStyle(e.closestScrollElement),m=un(f.borderTopWidth),y=un(f.borderBottomWidth),v=p.top+m-u.top,x=u.top+u.height+-(p.top+p.height-y);n.style.clipPath=`inset(${v}px 0px ${x}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(g=t.parentElement)==null||g.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function ub(t){return t.offsetParent!==null}function _p(t){if(!ub(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 Zi(t,e,n=100){let o=_p(t);e({isVisible:o});let s=setInterval(()=>{let r=_p(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Fp=(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){P.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as K,jsxs as pb}from"react/jsx-runtime";var Hp=Fp("showTabHint",!0),pn=class pn{constructor({deepdeskUrl:e,version:n=pn.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:a,websocketClient:d=Vs}){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 js;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;this.loadProfileConfigPromiseKey=null;this.personalCollectionSyncPendingKey=null;this.personalCollectionSyncDrainPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new lt(l,{token:s,fetch:r}),this.version=n,this.instanceId=pn.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Cp({broadcast:(f,m,y)=>{this.broadcastEvents.send(f,m,y)},emit:(f,m)=>this.emit(f,m),handleAfterSendMessage:f=>this.handleAfterSendMessage(f),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:f=>this.logSendMessage(f),onUpdateShowTabHint:f=>Hp.update(f),sendEvent:(f,m)=>this.deepdeskApi.sendEvent(f,m)})]};this.store=xp(c),this.broadcastEvents=new ip({debug:!0,deepdeskUrl:l,eventMap:al(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:()=>S(this,null,function*(){var f;return(f=Y(this.state))!=null?f:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch($n(Hp.value())),this.store.dispatch(_n({locale:o,adminUrl:l,productName:i}));let g=[],u=f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Nl(f))};this.hasConversation()?m():g.push(m)};this.ws.on("assistants::direct_response",u),this.ws.on("assistants::user_notification",u),this.ws.on("assistants::response_chunk",f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Ml(f))};this.hasConversation()?m():g.push(m)}),this.ws.on("assistants::suggest_as_reply",f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Kt([{text:f.payload.message,type:"text",source:"assistant",assistantCode:f.code,sourceLabel:f.name}]))};this.hasConversation()?m():g.push(m)});let p=this.whenConversationLoaded(()=>{var f;this.broadcastEvents.setExternalId((f=this.state.conversation.current)==null?void 0:f.externalId),g.forEach(m=>m()),g.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),g.length=0,p()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=pt(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?(P.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(P.warn("Profile has not been loaded (yet)"),!0):(P.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(Y(this.state))e();else{let n=this.subscribe(Y,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(_t(null)),this.store.dispatch(Fe()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return S(this,null,function*(){return(yield this.store.dispatch(Fe())).payload})}isConversationSupported(e,n){return S(this,null,function*(){return(yield this.store.dispatch(ir({externalId:e,options:n}))).payload})}createConversation(e){return S(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(So(b(h({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return S(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(xo({externalId:e,options:n}))).payload})}upsertConversation(e){return S(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(ar(b(h({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return S(this,null,function*(){yield this.store.dispatch(lr(e))})}updateConversation(e){return S(this,null,function*(){return(yield this.store.dispatch(bo(e))).payload})}resetConversation(){this.store.dispatch(z()),this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.dynamicThunkObject.conversationQuery=null}clearDisplayedAnswers(){var n;let e=this.store.getState().conversation.current;e&&(yo((n=e.externalId)!=null?n:void 0),this.store.dispatch(ie()))}reloadConversationContext(s){return S(this,arguments,function*({conversation:e,visitorInfo:n,clearDisplayedUi:o=!1}){let r=yield this.upsertConversation(e);if(!(r!=null&&r.id))throw new Error("Failed to upsert conversation");o&&this.clearDisplayedAnswers(),n&&this.setVisitorInfo(n)})}publishConversationTranscript(e){return S(this,null,function*(){if(!this.store.getState().conversation.current)return;let o=e.map(s=>({source:s.source,text:s.text}));this.setConversationQuery(()=>Promise.resolve(o)),e.length>0&&(yield this.postMessages(e))})}configure(e){this.store.dispatch(_n(e))}setVisitorInfo(e){this.store.dispatch(Xa(e))}setCustomData(e){this.store.dispatch(Ja(e))}setAgentInfo(e,n){return S(this,null,function*(){var s;yield this.store.dispatch(xn(h(h({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(Io,{showNicknameDialog:!0})})}setAgentSettings(e){return S(this,null,function*(){yield this.store.dispatch(cr(e))})}getAgentSettings(){return S(this,null,function*(){return(yield this.store.dispatch(ur())).payload})}getMe(){return S(this,null,function*(){return this.deepdeskApi.getMe()})}refresh(){return S(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(To({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()}))}notifyExternalSuggestion(e){this.store.dispatch(de(e))}evaluateAssistant(e,n){return S(this,null,function*(){var c;let{input:o={},attachments:s=[],transcript:r,showCuesInWidget:i=!0,includeMetadata:a,externalConversationId:d}=n||{},l=yield this.store.dispatch(ue({assistantCode:e,attachments:s,transcript:r,includeMetadata:a,input:o,externalConversationId:d,skipState:!i}));if(l.error)throw new Error(`Assistant evaluation failed: ${(c=l.payload)!=null?c:l.error.message}`);return l.payload.output})}evaluateConversationAssistant(e,n){return S(this,null,function*(){var c,g,p;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){P.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Ep(o,e),r=(g=n==null?void 0:n.showCuesInWidget)!=null?g:!0,u=n!=null?n:{},{showCuesInWidget:i}=u,a=D(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,()=>S(this,null,function*(){var y,v;let m=yield this.store.dispatch(ue(h(b(h({assistantCode:f,includeMetadata:!0},a),{skipState:!r}),n!=null&&n.attachments&&(n==null?void 0:n.attachments.length)>0?{attachments:n==null?void 0:n.attachments}:{})));if(m.error)throw new Error(`Assistant evaluation failed: ${(y=m.payload)!=null?y:m.error.message}`);return{assistantCode:f,evaluationId:m.payload.evaluationId,output:m.payload.output,externalConversationId:(v=m.payload.externalConversationId)!=null?v:d}})).catch(m=>{if(m instanceof so)return P.warn(`Queued assistant "${f}" was outdated and dropped`),null;throw m})));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,g=a||d,u=c==="inline"||c==="below"?"below":"above",p=s.length>0;if(this.store.dispatch(Fa(dr(e))),!Le(this.state)||e.key!=="Tab"&&!l)return;let f=()=>{n||!p||i&&(e.shiftKey||(this.store.dispatch(Ka()),e.preventDefault()))},m=()=>{n||!p||g&&r<=0||i&&(e.shiftKey||(this.store.dispatch(Ua()),e.preventDefault()))};switch(e.key){case"ArrowUp":u==="below"?m():f();break;case"ArrowDown":{u==="below"?f():m();break}case"Escape":{n||(this.store.dispatch(wo(-1)),this.store.dispatch(rt({collapse:!0})),this.store.dispatch(Ec(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let y=Bt(this.state);if(!y)return;this.store.dispatch($n(!1)),this.store.dispatch(de({text:y.text,suggestion:y,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(g||this.state.input.selectedSuggestionIndex===-1)return;let y=Bt(this.state);if(!y)return;this.store.dispatch(de({text:y.text,suggestion:y,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(g||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let y=Bt(this.state);if(!y)return;this.store.dispatch(de({text:y.text,suggestion:y,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(rt({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(et([]))}handlingTimeStart(){this.state.handlingTime.startTime||(P.info("Start handling time"),this.store.dispatch(pp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(P.info("Stop handling time"),this.store.dispatch(qs()))}logSendMessage(e){let n=Tp(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=wp(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(gp()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(mt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(za()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){P.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),P.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(Za(e))}whenConversationLoaded(e){let n=()=>this.getConversationLoadedKey(),o=()=>{let r=n();r&&this.loadProfileConfig().then(()=>{if(n()!==r)return;let i=this.state.conversation.current,a=fe(this.state);!(i!=null&&i.id)||i.profileCode&&(a==null?void 0:a.code)!==i.profileCode||e()})};return n()&&o(),this.subscribe(r=>this.getConversationProfileKey(r.conversation.current),r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=Qs(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]=Qs(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});d.dataset.testid=n,d.style.zIndex="2",d.appendChild(o),this.unmountHandlers.push(()=>{l()})}else document.body.appendChild(o);return s}createContainer(e,n=document.body){let o=window.getComputedStyle(n),s=document.createElement("div");return xt(s),s.dataset.testid=e,s.style.color=o.color,s.style.fontSize=o.fontSize,s.style.fontFamily=o.fontFamily,s.style.fontVariant=o.fontVariant,s.setAttribute("translate","no"),n.appendChild(s),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,n),P.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()?(P.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Wa(o.metrics))):P.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch(e){}}mount(e,n={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!Gi(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let u=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:a}=u,d=D(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),xt(e),this.inputMediator=a||(Pt(e)?new ln(e):new an(e)),this.inputMediator.on("change",({plainText:p,rawHTML:f,suggestionTextStart:m})=>{this.store.dispatch(To({text:p,html:f,suggestionTextStart:m}))}),this.inputMediator.on("keyup",p=>{this.store.dispatch(Ha(dr(p)))}),this.inputMediator.on("keydown",p=>{this.handleKeyDown(p)}),this.inputMediator.on("paste",({pastedText:p,selectionText:f})=>{this.store.dispatch(Ba({text:p,selectionText:f}))}),this.inputMediator.on("cut",({selectionText:p})=>{this.store.dispatch(_a(p))});let c;this.inputMediator.on("selection",p=>{clearTimeout(c),p===null?c=setTimeout(()=>{p!==null&&this.store.dispatch(Eo(p))},500):this.store.dispatch(Eo(p))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var p;(p=this.inputMediator)==null||p.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(ms(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(ms(!0))}),this.renderSuggestions(e,l),this.subscribe(yt("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(yt("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let g=this.renderOverlays(n);this.unmountHandlers.push(()=>{g.unmount()}),this.store.dispatch(To({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()})),this.store.dispatch(Eo(this.inputMediator.getSelection())),this.store.dispatch(ms(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=dt(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(K(qe,{store:this.store,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(zc,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>S(this,null,function*(){try{yield this.store.dispatch($a({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(Io,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){P.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=dt(s);r.render(K(qe,{store:this.store,customStyles:o,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(Uc,{})})}));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&&ji(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,g]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),u=dt(d);u.render(K(qe,{store:this.store,customStyles:s,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(xu,{inputElement:e})})}));let p=dt(c);return p.render(K(qe,{store:this.store,customStyles:s,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(Yc,{onLogIn:()=>this.loginViaPopup().catch(f=>P.warn(f.message))})})})),{unmount(){u.unmount(),p.unmount(),l(),g()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&ji(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=dt(d);return c.render(K(qe,{store:this.store,customStyles:o,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(wc,{onLogIn:()=>this.loginViaPopup().catch(g=>P.warn(g.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=dt(o);return s.render(K(qe,{store:this.store,customStyles:n,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(yc,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&P.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,signInViaPopup:i,ssoUrl:a,openAdminFeedback:d}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r,signInViaPopup:i});let l;if(a)try{l={url:new URL(a,this.settings.adminUrl).toString()}}catch(c){P.warn(`Invalid ssoUrl '${a}' passed to renderWidget`)}this.widgetRoot=dt(e),this.widgetRoot.render(K(qe,{store:this.store,customStyles:o,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(ns,{report:c=>this.deepdeskApi.sendEvent(gd,{data:c}),children:K(ep,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,openAdminFeedback:d,onLogIn:()=>this.loginViaPopup(l).catch(c=>P.warn(c.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=dt(n);return i.render(K(qe,{store:this.store,customStyles:s,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(Bi,{children:pb(Zo,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:Dn,children:[K(mn,{children:K(es,{title:o.title,emptyState:o.emptyState})}),K(Hi,{children:K(Yo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=Zi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){ts(e)&&e.message==="Unauthorized"&&this.login()}getConversationProfileKey(e){var n;if(e!=null&&e.id)return`${e.id}:${(n=e.profileCode)!=null?n:""}`}getProfileLoadKey(){var n;let e=this.state.conversation.current;return e!=null&&e.profileCode&&(n=this.getConversationProfileKey(e))!=null?n:null}isCurrentProfileLoadKey(e){return this.getProfileLoadKey()===e}getConversationLoadedKey(){return this.getConversationProfileKey(this.state.conversation.current)}resetProfileDerivedSettings(){this.store.dispatch(Gr()),this.store.dispatch(_n(Nr))}syncPersonalCollectionForConversation(e){this.personalCollectionSyncPendingKey=e,this.ensurePersonalCollectionSyncDrain()}ensurePersonalCollectionSyncDrain(){return this.personalCollectionSyncDrainPromise?this.personalCollectionSyncDrainPromise:(this.personalCollectionSyncDrainPromise=this.drainPersonalCollectionSync().finally(()=>{this.personalCollectionSyncDrainPromise=null,this.personalCollectionSyncPendingKey&&this.ensurePersonalCollectionSyncDrain()}),this.personalCollectionSyncDrainPromise)}drainPersonalCollectionSync(){return S(this,null,function*(){for(;this.personalCollectionSyncPendingKey;){let e=this.personalCollectionSyncPendingKey;if(this.personalCollectionSyncPendingKey=null,!this.isCurrentProfileLoadKey(e))continue;let n=this.state.conversation.current,o=n==null?void 0:n.id;if(!(!o||!n.profileCode))try{yield this.deepdeskApi.syncPersonalCollection(o)}catch(s){this.isCurrentProfileLoadKey(e)&&P.warn("Failed to sync personal collection for profile",s)}}})}loadProfileConfig(e=!0){let n=this.getProfileLoadKey();if(!n)return this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.resetProfileDerivedSettings(),Promise.resolve();let o=this.state.conversation.current,s=fe(this.state);if(s&&s.code!==(o==null?void 0:o.profileCode)&&(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.resetProfileDerivedSettings()),this.loadProfileConfigPromise&&this.loadProfileConfigPromiseKey===n)return this.loadProfileConfigPromise;this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=n;let r=Promise.resolve().then(()=>S(this,null,function*(){try{yield this.store.dispatch(Bn()).unwrap()}catch(d){if(d===Xt)return this.loadProfileConfigPromise===r&&(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null),e&&this.isCurrentProfileLoadKey(n)&&!fe(this.state)?this.loadProfileConfig(!1):void 0;throw d}if(!this.isCurrentProfileLoadKey(n))return;let i=fe(this.state),a=this.state.conversation.current;!i||i.code!==(a==null?void 0:a.profileCode)||(this.store.dispatch(_n({showSearch:i.search,showImageSearch:i.imageSearch,showEntitiesCommand:i.entitiesCommand,showSummaryCommand:!!i.summarizerAssistantNew,showKnowledgeSearch:kp(i),recommendTextSuggestions:i.recommendTextSuggestions})),this.syncPersonalCollectionForConversation(n))})).finally(()=>{this.loadProfileConfigPromise===r&&(fe(this.state)||(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null))});return this.loadProfileConfigPromise=r,r}loginViaPopup(e){return S(this,null,function*(){return new Promise((n,o)=>{this.store.dispatch(ho());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",g),clearInterval(u)};r.onmessage=p=>S(this,null,function*(){var f,m;if((f=p.data)!=null&&f.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((m=p.data)==null?void 0:m.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(wn),d=!0,s.port1.close(),n()}catch(y){console.error(y),o(y)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");if(c===null){o(new Error("Popup blocked by browser"));return}let g=p=>S(this,null,function*(){var f;if(!(p.origin!==a.origin||p.source!==c))switch((f=p.data)==null?void 0:f.type){case"deepdesk-popup-request-origin":{try{let m=JSON.stringify({type:"deepdesk-popup-parent-origin"});c.postMessage(m,a.origin)}catch(m){P.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.postMessage(m,a.origin,[s.port2])}catch(m){P.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-error":{if(l(),p.data.message==="Platform account url mismatch"){let m="Please contact your administrator: The page that opened the popup is not a trusted origin.";P.warn(m),this.store.dispatch(sr(m)),o(new Error(m));return}if(p.data.message==="Timeout"){let m="Please contact your administrator: Popup timed out. Check if the account's platform.url or account.url is configured correctly.";P.warn(m),this.store.dispatch(sr(m)),o(new Error(m));return}o(new Error(p.data.message));break}}});window.addEventListener("message",g);let u=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 S(this,null,function*(){this.isMounted&&(yield this.store.dispatch(us()))})}refreshWidgetSuggestions(){return S(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=Kn(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(xe());break;case"pinned-messages":case"sticky-messages":break;default:go.includes(o)||this.store.dispatch(be(o))}})}catch(o){this.handleError(o)}})}};pn.version="19.6.2-beta.17",pn.count=0;var Xs=pn;function gb(t){return S(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 mb(t,e){return S(this,null,function*(){let n=yield gb(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 fb(t,e,n){return S(this,null,function*(){yield new lt(t).authenticateWithKey(e,n)})}function hb(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function yb(o,s){return S(this,arguments,function*(t,e,n={}){var g,u;let{value:r}=t,{start:i,end:a}=(g=n.replace)!=null?g:{start:0,end:r.length},d=`${r.slice(0,i)}${e}${r.slice(a)}`,l=(u=n.selectionAfter)!=null?u:{start:i+e.length,end:i+e.length},c=()=>{if(n.setValue)return n.setValue(d);t.value=d};return Promise.resolve(c()).then(()=>{t.selectionStart=l.start,t.selectionEnd=l.end,t.blur(),t.focus()})})}function vb(o,s){return S(this,arguments,function*(t,e,n={}){let r=n.replace?At(t,n.replace.start,n.replace.end):no(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(`
|
|
13
|
+
`).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?At(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 Sb(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 xb(t){let e=document.createDocumentFragment();return t.split(`
|
|
14
|
+
`).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 Bp(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):Bp(n,e)}function bb(s,r){return S(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 u;let d=(u=t.ownerDocument.defaultView)!=null?u: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 g=o?Sb(e):xb(e);n?Bp(c.startContainer,g):(c.insertNode(g),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{H as Card,an as ContentEditableInput,lt as DeepdeskAPI,Xs as DeepdeskSDK,cn as HTTPClient,at as InputMediator,Dt as InputType,Ys as KeyboardHint,rg as Label,mo as Locale,De as Section,mn as SectionList,_e as Sources,M as Suggestion,ne as SuggestionList,ln as TextAreaInput,Ot as ToggleButton,mb as attachFile,fb as authenticateWithKey,no as createFullRange,Qs as createOverlayContainer,At as createRangeFromOffsets,Wn as escapeHTML,hb as formatTextMarkup,Ks as getRangeOffsets,Us as getRangeText,bb as insertCKEditor,ss as isHTML,Gi as isSupportedInputElement,fr as logEvent,vb as updateContentEditable,yb as updateTextArea,St as useClickOutsideRoot,C as useStyles,Zi as waitForElementVisibilityChange};
|