@deepdesk/deepdesk-sdk 19.6.2-beta.14 → 19.6.2-beta.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,13 +1,13 @@
1
- var Qi=Object.defineProperty,Op=Object.defineProperties;var Dp=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)=>Op(t,Dp(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 Kp,{createContext as Up,useContext as Xs,useEffect as Wp,useState as zp}from"react";import _p,{useContext as Fp}from"react";import Hp from"classnames";var pn=_p.createContext({});function C(t,e){let r=Fp(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]:Hp(d,l,n?`${t}__${a}`:!1)})},{})}var Zi={root:"dd-4s9wq"};import{jsx as oo,jsxs as Bp}from"react/jsx-runtime";var so=()=>Bp("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=Up(Qs),Vp=({title:t,src:e})=>{let n=Xs(ro),[o,s]=zp(!1);return Wp(()=>{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,{})})},jp=({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})},qp=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 Kp.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=Vp;io.Content=jp;io.Title=qp;var F=io;import $p from"classnames";var ea={root:"dd-llBx9"};import{jsx as Xp}from"react/jsx-runtime";var Gp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Qp=o=>{var s=o,{className:t,keyCode:e}=s,n=D(s,["className","keyCode"]);let r=C("KeyboardHint",ea);return Xp("span",h({"data-key":Gp[e],className:$p(t,r.root)},n))},Js=Qp;import Jp from"classnames";var ta={root:"dd-e6HXZ"};import{jsx as eg}from"react/jsx-runtime";var Zp=o=>{var s=o,{className:t,children:e}=s,n=D(s,["className","children"]);let r=C("Label",ta);return eg("span",b(h({},n),{className:Jp(t,r.root),children:e}))},Yp=Zp;var na={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Zs,jsxs as ng}from"react/jsx-runtime";var tg=s=>{var r=s,{title:t,children:e,type:n}=r,o=D(r,["title","children","type"]);let i=C("Section",na);return ng("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=tg;import lg from"classnames";import{useRef as dg}from"react";import{createContext as og,useCallback as sg,useContext as rg,useEffect as ig}from"react";import{jsx as ag}from"react/jsx-runtime";var oa=og(null),sa=({scrollContainerRef:t,children:e})=>{let n=sg(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 ag(oa.Provider,{value:n,children:e})},ao=t=>{let e=rg(oa);ig(()=>{let n=t.current;n&&e(n)},[])};var ra={root:"dd-uoTXh"};import{jsx as ia}from"react/jsx-runtime";var cg=({className:t,children:e})=>{let n=C("SectionList",ra),o=dg(null);return ia(sa,{scrollContainerRef:o,children:ia("div",{ref:o,className:lg(n.root,t),children:e})})},gn=cg;import mn from"classnames";import ug,{createContext as pg,useCallback as gg,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=pg(Ys),mg=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 fg(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 hg=({children:t})=>{let e=lt(Qe);return fe("div",{className:e.buttonsContainer,children:t})},yg=({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})]})},vg=({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})})},Sg=({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})},xg=({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=ug.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=gg(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=xg;Xe.Actions=mg;Xe.ActionButton=Sg;Xe.DropdownButton=yg;Xe.DropdownItem=vg;Xe.ButtonsContainer=hg;Xe.Button=fg;var M=Xe;import bg from"classnames";var la={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as wg}from"react/jsx-runtime";var Cg=({withDivider:t,children:e})=>{let n=C("SuggestionList",la);return wg("div",{"data-testid":"suggestions-overlay-list",className:bg(n.root,{[n.isWithDivider]:t}),children:e})},te=Cg;import Tg from"classnames";var da={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as er}from"react/jsx-runtime";var Eg=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=C("ToggleButton",da);return er("button",{type:"button",className:Tg(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=Eg;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 Ff,Fragment as Hf,useContext as Kr,useEffect as Bf,useRef as sd,useState as nt}from"react";import{useDispatch as Kf,useSelector as Uf}from"react-redux";import{createAsyncThunk as hn,createSlice as kg}from"@reduxjs/toolkit";var uo=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(uo||{});var Pg={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=kg({name:"auth",initialState:Pg,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 Fg,createSelector as Pa,createSlice as Hg}from"@reduxjs/toolkit";import{diffChars as Bg}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 Rg(t){return Math.max(...t.map(e=>e.length))}function Ig(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<Rg(o);s++){let r=Ig(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 Ag=2;function Ca(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=ba(t,Ag);return n&&n.text!==e?n:t[0]}import{createAction as Mg,createAsyncThunk as _t,createSlice as Ng}from"@reduxjs/toolkit";var Lg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},R=Lg;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=Mg("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)))}),Og=[fo.rejected,ho.rejected,yo.rejected,ir.rejected].map(t=>t==null?void 0:t.toString());function Dg(t){return Og.includes(t.type)}var _g=Ng({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(Dg,(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=_g.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=Fg("input/applyImageSuggestion"),Ra=Hg({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=Bg(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)},Kg=t=>t.input.mixedSuggestion,Ug=t=>t.input.pinnedSuggestions,Wg=t=>t.input.textSuggestions,vn=t=>t.input.selectedSuggestionIndex,ut=Pa([Wg,Ug],(t,e)=>[...t,...e]),Ht=Pa([ut,Kg,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 qg,createSelector as $g,createSlice as Gg}from"@reduxjs/toolkit";import{createAsyncThunk as Co,createSlice as zg}from"@reduxjs/toolkit";function Ka(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var Vg={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:""}},jg=[["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=jg.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=zg({name:"info",initialState:Vg,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,Qg=$g([cr,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),Ya=t=>e=>Qg(e,t),mt=qg("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=Gg({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",Xg="UserLoggedOut",Fe="ApplySuggestion",pr="ApplyImageSuggestion",Jg="ShowCommandPalette",Eo="ShowNicknameDialog",ko="ReduxAction",Zg="RemovePinnedSuggestion",Yg=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}))},[Zg]:e=>{t.dispatch(pt(e))},[Jg]: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())},[Xg]:()=>{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=Yg;import{useDispatch as tm}from"react-redux";import{createAsyncThunk as em}from"@reduxjs/toolkit";function gr(t){return em("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=tm();return(e,n)=>S(null,null,function*(){yield t(gr({name:e,data:n}))})}import{useRef as nm,useState as mr}from"react";import{useDispatch as om}from"react-redux";function Cn(t,e){let n=nm(t);n.current=t;let[o,s]=mr(void 0),[r,i]=mr(void 0),[a,d]=mr("idle"),l=om();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 sm}from"react";import{jsx as rm}from"react/jsx-runtime";var sl=ol.createContext(null),He=({broadcastEvents:t,children:e})=>{let n=ol.useMemo(()=>t,[]);return rm(sl.Provider,{value:n,children:e})},ie=()=>{let t=sm(sl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as vm,useContext as Sm}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:pm,o=e&&e.serializer?e.serializer:cm,s=e&&e.strategy?e.strategy:am;return s(t,{cache:n,serializer:o})}function im(t){return t==null||typeof t=="number"||typeof t=="boolean"}function il(t,e,n,o){var s=im(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 am(t,e){var n=t.length===1?il:al;return hr(t,this,n,e.cache.create(),e.serializer)}function lm(t,e){return hr(t,this,al,e.cache.create(),e.serializer)}function dm(t,e){return hr(t,this,il,e.cache.create(),e.serializer)}var cm=function(){return JSON.stringify(arguments)},um=(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})(),pm={create:function(){return new um}},Io={variadic:lm,monadic:dm};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 gm(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 mm(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(!mm(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,Bp=Object.defineProperties;var Kp=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,y=(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)=>Bp(t,Kp(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 $=(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 qp,{createContext as jp,useContext as Zs,useEffect as Gp,useState as $p}from"react";import Up,{useContext as Wp}from"react";import zp from"classnames";var gn=Up.createContext({});function C(t,e){let r=Wp(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(y({},i),{[a]:zp(d,l,n?`${t}__${a}`:!1)})},{})}var oa={root:"dd-4s9wq"};import{jsx as io,jsxs as Vp}from"react/jsx-runtime";var ao=()=>Vp("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=jp(Js),Qp=({title:t,src:e})=>{let n=Zs(lo),[o,s]=$p(!1);return Gp(()=>{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,{})})},Xp=({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})},Jp=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 qp.createElement(t,y({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=Qp;co.Content=Xp;co.Title=Jp;var F=co;import Zp from"classnames";var ra={root:"dd-llBx9"};import{jsx as tg}from"react/jsx-runtime";var Yp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},eg=o=>{var s=o,{className:t,keyCode:e}=s,n=D(s,["className","keyCode"]);let r=C("KeyboardHint",ra);return tg("span",y({"data-key":Yp[e],className:Zp(t,r.root)},n))},Ys=eg;import ng from"classnames";var ia={root:"dd-e6HXZ"};import{jsx as rg}from"react/jsx-runtime";var og=o=>{var s=o,{className:t,children:e}=s,n=D(s,["className","children"]);let r=C("Label",ia);return rg("span",b(y({},n),{className:ng(t,r.root),children:e}))},sg=og;var aa={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as er,jsxs as ag}from"react/jsx-runtime";var ig=s=>{var r=s,{title:t,children:e,type:n}=r,o=D(r,["title","children","type"]);let i=C("Section",aa);return ag("section",b(y({},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=ig;import gg from"classnames";import{useRef as mg}from"react";import{createContext as lg,useCallback as dg,useContext as cg,useEffect as ug}from"react";import{jsx as pg}from"react/jsx-runtime";var la=lg(null),da=({scrollContainerRef:t,children:e})=>{let n=dg(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 pg(la.Provider,{value:n,children:e})},uo=t=>{let e=cg(la);ug(()=>{let n=t.current;n&&e(n)},[])};var ca={root:"dd-uoTXh"};import{jsx as ua}from"react/jsx-runtime";var fg=({className:t,children:e})=>{let n=C("SectionList",ca),o=mg(null);return ua(da,{scrollContainerRef:o,children:ua("div",{ref:o,className:gg(n.root,t),children:e})})},mn=fg;import fn from"classnames";import hg,{createContext as yg,useCallback as vg,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=yg(tr),Sg=o=>{var s=o,{fixed:t,children:e}=s,n=D(s,["fixed","children"]);let r=ct(Xe);return he("div",b(y({},n),{className:fn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function xg(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(y({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 bg=({children:t})=>{let e=ct(Xe);return he("div",{className:e.buttonsContainer,children:t})},Cg=({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})]})},wg=({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})})},Tg=({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})},Eg=({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=hg.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=vg(g=>{g.preventDefault(),n&&n(g)},[n]);return he(s,b(y({},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=Eg;Je.Actions=Sg;Je.ActionButton=Tg;Je.DropdownButton=Cg;Je.DropdownItem=wg;Je.ButtonsContainer=bg;Je.Button=xg;var M=Je;import kg from"classnames";var ga={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Ig}from"react/jsx-runtime";var Pg=({withDivider:t,children:e})=>{let n=C("SuggestionList",ga);return Ig("div",{"data-testid":"suggestions-overlay-list",className:kg(n.root,{[n.isWithDivider]:t}),children:e})},te=Pg;import Rg from"classnames";var ma={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as nr}from"react/jsx-runtime";var Ag=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=C("ToggleButton",ma);return nr("button",{type:"button",className:Rg(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=Ag;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=(h=>(h.SEARCH="search",h.TEMPLATE="template",h.ELASTIC_SEARCH="search-autocomplete",h.GPT="gpt",h.TRIE="trie",h.TRIE_WITH_TYPOS="trie-with-typos",h.SEMANTIC="semantic",h.TEXT_RECOMMENDATION="text_recommendation",h.URL_RECOMMENDATION="url_recommendation",h.LINK_RECOMMENDATION="link_recommendation",h.PERSONAL_COLLECTION="personal-collection",h.PERSONAL_COLLECTION_SEARCH="personal-collection-search",h.SEARCH_OVERLAY="search-overlay",h.SEARCH_PREVIEW="search-preview",h.SEARCH_URL="search-url",h.STYLE="style",h))(_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 zf,Fragment as Vf,useContext as zr,useEffect as qf,useRef as cd,useState as st}from"react";import{useDispatch as jf,useSelector as Gf}from"react-redux";import{createAsyncThunk as yn,createSlice as Lg}from"@reduxjs/toolkit";var mo=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(mo||{});var Mg={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=Lg({name:"auth",initialState:Mg,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 Ug,createSelector as Ma,createSlice as Wg}from"@reduxjs/toolkit";import{diffChars as zg}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 Ng(t){return Math.max(...t.map(e=>e.length))}function Og(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return b(y({},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<Ng(o);s++){let r=Og(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 Dg=2;function Pa(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=ka(t,Dg);return n&&n.text!==e?n:t[0]}import{createAction as Aa,createAsyncThunk as Ft,createSlice as Fg}from"@reduxjs/toolkit";var _g={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},I=_g;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){I.warn("No current conversation to update messages");return}return n.postMessages(o,t.map(s=>y({},s)))}),Hg=[So.rejected,xo.rejected,bo.rejected,lr.rejected].map(t=>t==null?void 0:t.toString());function Bg(t){return Hg.includes(t.type)}var Kg=Fg({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(Bg,(e,n)=>{var o;throw I.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),La=Kg.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=Ug("input/applyImageSuggestion"),Na=Wg({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=zg(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(y({},t.metrics),{numCharsCut:n.numCharsCut+o.length,cuts:[...n.cuts,o]})},registerPaste(t,e){let{metrics:n}=t,{text:o,selectionText:s}=e.payload,r=n.numCharsDeleted+(s!=null&&s.length?s.length:0),i=s!=null&&s.length?[...n.deletions,s]:n.deletions;t.metrics=b(y({},t.metrics),{numCharsDeleted:r,deletions:i,numCharsPasted:n.numCharsPasted+o.length,numPaste:n.numPaste+1,pastes:[...n.pastes,o]})},selectNextTextSuggestion(t){let e=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},selectPreviousTextSuggestion(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},selectTextSuggestionByIndex(t,e){t.selectedSuggestionIndex=e.payload},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.mixedSuggestion=null;return}let n=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)},Vg=t=>t.input.mixedSuggestion,qg=t=>t.input.pinnedSuggestions,jg=t=>t.input.textSuggestions,Sn=t=>t.input.selectedSuggestionIndex,pt=Ma([jg,qg],(t,e)=>[...t,...e]),Bt=Ma([pt,Vg,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 Xg,createSelector as Jg,createSlice as Zg}from"@reduxjs/toolkit";import{createAsyncThunk as ko,createSlice as Gg}from"@reduxjs/toolkit";function qa(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var $g={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:""}},Qg=[["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=Qg.reduce((l,[c,g])=>!o[g]&&c in t?b(y({},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=y(y({},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=Gg({name:"info",initialState:$g,reducers:{setVisitorInfo(t,e){t.visitorInfo=y(y({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload},setShowNicknameDialog(t,e){t.showNicknameDialog=e.payload}},extraReducers:t=>{t.addCase(xn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=y(y({},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?(I.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,Yg=Jg([pr,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),sl=t=>e=>Yg(e,t),ft=Xg("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(y(y({},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=Zg({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",I.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",em="UserLoggedOut",He="ApplySuggestion",mr="ApplyImageSuggestion",tm="ShowCommandPalette",Io="ShowNicknameDialog",Ro="ReduxAction",nm="RemovePinnedSuggestion",om=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(y({},e),{isBroadcasted:!0}))},[Ro]:e=>{e.isBroadcasted||t.dispatch(b(y({},e),{isBroadcasted:!0}))},[nm]:e=>{t.dispatch(gt(e))},[tm]: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())},[em]:()=>{t.dispatch(Fe())},[mr]:e=>{t.dispatch(Co({suggestion:e.suggestion}))},[He]:e=>{t.dispatch(de(b(y({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),al=om;import{useDispatch as rm}from"react-redux";import{createAsyncThunk as sm}from"@reduxjs/toolkit";function fr(t){return sm("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(y({conversationId:o},s),{data:e.data}))})(t)}function j(){let t=rm();return(e,n)=>S(null,null,function*(){yield t(fr({name:e,data:n}))})}import{useRef as im,useState as hr}from"react";import{useDispatch as am}from"react-redux";function Tn(t,e){let n=im(t);n.current=t;let[o,s]=hr(void 0),[r,i]=hr(void 0),[a,d]=hr("idle"),l=am();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 lm}from"react";import{jsx as dm}from"react/jsx-runtime";var dl=ll.createContext(null),Be=({broadcastEvents:t,children:e})=>{let n=ll.useMemo(()=>t,[]);return dm(dl.Provider,{value:n,children:e})},ae=()=>{let t=lm(dl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as Cm,useContext as wm}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:hm,o=e&&e.serializer?e.serializer:mm,s=e&&e.strategy?e.strategy:um;return s(t,{cache:n,serializer:o})}function cm(t){return t==null||typeof t=="number"||typeof t=="boolean"}function ul(t,e,n,o){var s=cm(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 um(t,e){var n=t.length===1?ul:pl;return vr(t,this,n,e.cache.create(),e.serializer)}function pm(t,e){return vr(t,this,pl,e.cache.create(),e.serializer)}function gm(t,e){return vr(t,this,ul,e.cache.create(),e.serializer)}var mm=function(){return JSON.stringify(arguments)},fm=(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})(),hm={create:function(){return new fm}},Mo={variadic:pm,monadic:gm};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 ne;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(ne||(ne={}));function ym(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 vm(t){return typeof t=="function"}function On(t,e,n,o,s,r,i){if(t.length===1&&Sr(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(Sr(c)){a.push({type:ne.literal,value:c.value});continue}if(gl(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 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"?ne.literal:ne.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:ne.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:ne.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:ne.literal,value:n.getNumberFormat(e,p).format(u)});continue}if(Ln(c)){var f=c.children,m=c.value,h=s[m];if(!vm(h))throw new fl(m,"function",i);var v=On(f,e,n,o,s,r),x=h(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(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
- `,ft.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 xr(c.value,u,Object.keys(c.options),i);a.push.apply(a,Mn(w.value,e,n,o,s,u-(c.offset||0)));continue}}return gm(a)}function fm(t,e){return e?de(de(de({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=de(de({},t[o]),e[o]||{}),n},{})):t}function hm(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=fm(t[o],e[o]),n},de({},t)):t}function br(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function ym(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:Ro(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,Po([void 0],n,!1)))},{cache:br(t.number),strategy:Io.variadic}),getDateTimeFormat:Ro(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,Po([void 0],n,!1)))},{cache:br(t.dateTime),strategy:Io.variadic}),getPluralRules:Ro(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,Po([void 0],n,!1)))},{cache:br(t.pluralRules),strategy:Io.variadic})}}var Cr=(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!==ne.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 Mn(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=rl(i,["formatters"]);this.ast=t.__parse(e,de(de({},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=hm(t.formats,o),this.formatters=s&&s.formatters||ym(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=dl,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 xm(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var bm="dummy",wr=vm(null);function A(t){var o;let e=Sm(wr);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=xm(n,s);return i?new Cr(i).format(r):(e!==bm&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as fl,createAsyncThunk as Er,createSlice as wm}from"@reduxjs/toolkit";import{Marked as Cm}from"marked";var Oo=(t,e)=>{let n=[],o=new Cm,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var Tr=new Map;function pl(t){var e;return t&&(e=Tr.get(t))!=null?e:null}function gl(t){if(!t)return()=>{};let e,n=new Promise(o=>{e=o});return Tr.set(t,n),o=>{Tr.delete(t),e(o)}}function kr(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 ml={cues:[],threads:{},pending:[],widgetAssistantSessionId:null,assistantThreads:{},activeAssistantCode:null,nextLocalThreadId:1},hl=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var yl=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},vl=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},Sl=t=>t.assistants.activeAssistantCode;var Do=fl("assistants/callToAction"),Nn=Er("assistants/evaluateKnowledgeAssistant",(t,e)=>S(null,null,function*(){var f,m,y,v,x,w,T,k,E,I,B,Z,se,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:yn(a))!=null?T:void 0;if(!d&&a){let _=pl(a);_&&(d=(k=yield _)!=null?k:void 0)}let l=!d&&a?gl(a):null;if(!n){let _=(E=s.assistants.assistantThreads[t.assistantCode])==null?void 0:E.threadId;_?n=_:(n=s.assistants.nextLocalThreadId,e.dispatch(Ir({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(_){throw l==null||l(void 0),_}let g=(B=(I=e.getState().conversation.current)==null?void 0:I.externalId)!=null?B:null;if(a&&i&&a!==g)throw l==null||l(void 0),new Error("Conversation changed before interact completed");if(c.sessionId?(e.dispatch(Rr(c.sessionId)),wa(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=(Z=xl(c,t.assistantCode)[0])!=null?Z:{response:"",sources:[]};return t.onNewThreadId&&t.onNewThreadId(n),{threadId:n,question:t.input,evaluationId:c.evaluationId,answer:{answer:(se=ye(p.response,r!=null?r:{}))!=null?se:"",sources:(N=p.sources)!=null?N:[]},externalConversationId:a,currentExternalIdAtRequest:i}})),PT=fl("assistants/extractedTextSuggestions");function xl(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:""})]}var bl=Er("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:yn(s);r&&(yield n.resetAssistantThread({assistantCode:t.assistantCode,sessionId:r}))})),ce=Er("assistants/evaluate",(t,e)=>S(null,null,function*(){var x,w,T,k,E;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},threadId:i,attachments:a}=t,d=e.getState(),{platformVariables:l}=d.info,c=(w=(x=d.conversation.current)==null?void 0:x.externalId)!=null?w:null,g=(k=(T=t.externalConversationId)!=null?T:c)!=null?k: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 I=yield o.conversationQuery();u=Array.isArray(I)?I:void 0}else Array.isArray(s)&&(u=s);if(t.includeMetadata&&d.conversation.current&&((E=t.externalConversationId)!=null?E:c)===c){let{metadata:B}=d.conversation.current;Object.assign(r,{metadata:B})}let p=kr({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 y=xl(f,t.assistantCode).map(I=>b(h({},I),{name:ye(I.name,l),response:ye(I.response,l)||""})),v=[];return y.forEach(I=>{if(!I.response)return;let B=Oo(I.response,"reply");B.length!==0&&v.push(...B.map(Z=>({text:Z,type:"text",source:"assistant",assistantCode:I.code,sourceLabel:I.name})))}),v.length>0&&e.dispatch(Bt(v)),b(h({},f),{output:y,externalConversationId:g,currentExternalIdAtRequest:c})}));function Cl(t){return t!=null&&t.length?t.map(e=>e.response).filter(Boolean).join(`
4
- `):""}var wl=wm({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:RT,removeThreadById:Tl,receiveChunk:El,userNotification:kl,setActiveAssistantCode:Pr,setWidgetAssistantSessionId:Rr,registerAssistantThreadId:Ir,resetAssistantThread:Pl}=wl.actions,Rl=wl.reducer;import{createSlice as Tm}from"@reduxjs/toolkit";import{useSelector as Em}from"react-redux";var km={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=Tm({name:"settings",initialState:km,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=>Em(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 Nm}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:()=>Pm,nlNL:()=>Rm});var Pm={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Rm={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 Mm}from"react-redux";import{createContext as Im,useContext as Am}from"react";import{jsx as Lm}from"react/jsx-runtime";var _l=Im(null),Fl=({handler:t,children:e})=>Lm(_l.Provider,{value:t!=null?t:null,children:e}),Hl=()=>Am(_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=Mm(zt(t));return e?n?{mode:"custom-handler",open:()=>n(t)}:o?{mode:"passwordless-link",href:o}:{mode:"disabled"}:{mode:"disabled"}}import{useSelector as Om}from"react-redux";import{jsx as et,jsxs as _m}from"react/jsx-runtime";var Dm=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o})=>{let s=C("FeedbackThumbs",Ol),r=Om(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]=Nm(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 _m("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=Dm;import Sf from"dompurify";import{marked as xf}from"marked";import{Fragment as Yl,useMemo as bf,useRef as Cf,useState as wf}from"react";import{useState as nf}from"react";import{FloatingFocusManager as Fm,FloatingPortal as Hm,autoUpdate as Bm,flip as Km,offset as Um,safePolygon as Wm,shift as zm,useClick as Vm,useDismiss as jm,useFloating as qm,useHover as $m,useInteractions as Gm,useMergeRefs as Kl,useRole as Qm}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 Xm({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=qm({placement:e,open:d,onOpenChange:l,whileElementsMounted:Bm,middleware:[Um(5),Km({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),zm({padding:10})]}),g=c.context,u=Vm(g,{enabled:s==null}),p=jm(g),f=Qm(g),m=$m(g,{enabled:o!=null?o:!1,handleClose:Wm()}),y=Gm([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=Xm(h({modal:e},n));return tt(Ul.Provider,{value:r,children:t})};function Jm(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 Zm=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(Hm,{children:tt(Fm,{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 Ym(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=Jm;yt.Content=Zm;yt.Button=Ym;var V=yt;var Nr={};G(Nr,{enUS:()=>ef,nlNL:()=>tf});var ef={showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}],showLess:[{type:0,value:"Show less"}]},tf={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,of=({sources:t,onClick:e,sourceTestId:n="assistant-source"})=>{let o=A(Nr),s=C("AssistantSources",zl),[r,i]=nf(!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=of;import Jl from"classnames";import{createRef as ff,useCallback as Dr,useMemo as hf,useRef as yf,useState as vf}from"react";import{useState as sf,useLayoutEffect as rf}from"react";var af=["bottom","height","left","right","top","width"],lf=(t={},e={})=>af.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();lf(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 df(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]=sf(null);return rf(()=>{if(!t.current)return;let o=df(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as uf,useLayoutEffect as pf,useState as gf}from"react";import{createPortal as mf}from"react-dom";import{useEffect as cf}from"react";function vt(t){cf(()=>{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]=gf(null),s=uf(pn);return pf(()=>{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?mf(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]=vf(t),o=Dr(()=>n(!0),[]),s=Dr(()=>n(!1),[]),r=Dr(()=>n(a=>!a),[]),i=yf(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=ff(),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=hf(()=>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 Tf(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 Ef(t){return t.replace(/\r\n/g,`
5
- `)}var kf=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s,sources:r,onSourceClick:i})=>{let a=C("Markdown",Zl),d=Cf(null),[l,c]=wf(null),g=bf(()=>{let v=xf.parse(Ef(t));return Sf.sanitize(v.toString()).replaceAll("</code>",`${Tf(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=kf;import{useRef as If}from"react";var ed={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as Rf}from"react/jsx-runtime";var Pf=({width:t})=>{let e=C("LoadingProgressBar",ed);return Rf("div",{className:e.loadingBar,style:{width:t}})},jo=Pf;import{jsx as $t,jsxs as Af}from"react/jsx-runtime";var qo=({title:t})=>{let e=If(null);return ao(e),$t(M,{ref:e,children:$t(F,{children:Af(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:()=>Lf,nlNL:()=>Mf});var Lf={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"}]},Mf={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 Df}from"react";var td={error:"dd-CoAuB"};var Br={};G(Br,{enUS:()=>Nf,nlNL:()=>Of});var Nf={errorPrefix:[{type:0,value:"Error:"}]},Of={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as nd,jsxs as _f}from"react/jsx-runtime";var od=({message:t})=>{let e=Df(null),n=C("WidgetCardError",td),o=A(Br);return ao(e),nd(M,{ref:e,children:nd(F,{children:_f(F.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as W,jsxs as Ke}from"react/jsx-runtime";var Wf=3,zf=({sources:t,onClick:e})=>{let n=A(bt),o=C("WidgetKnowledgeAssistant",$o),[s,r]=nt(!1),i=s?t:t.slice(0,Wf);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})})]})},Vf=({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})]})})}),jf=({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(zf,{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=Ff(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=Kf(),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 Bf(()=>{!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=Uf(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(Hf,{children:[W(Oe,{type:"knowledge",title:t,"data-testid":"knowledge",children:Ke(te,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&W(Vf,h({},e)),a.map((y,v)=>W(jf,{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 Zf from"react";function Zo(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}var id="queueMicrotask error",qf=1e3,$f=8e3;function Gf(t){return Zo(t)&&t.name==="TypeError"&&typeof t.message=="string"&&/queueMicrotask/.test(t.message)}function Qf(){try{return typeof window=="undefined"?"no-window":typeof window.queueMicrotask}catch(t){return"inaccessible"}}function Xf(){try{return typeof globalThis.queueMicrotask}catch(t){return"inaccessible"}}function Jf(t){return{message:String(t.message).slice(0,qf),stack:typeof t.stack=="string"?t.stack.slice(0,$f):null,typeofQueueMicrotask:typeof queueMicrotask,typeofWindowQueueMicrotask:Qf(),typeofGlobalThisQueueMicrotask:Xf()}}function ad(t,e){try{if(!Gf(t))return!1;let n=e(Jf(t));return Promise.resolve(n).catch(()=>{}),!0}catch(n){return!1}}var Yo=class extends Zf.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 Uy}from"react";import{useSelector as md}from"react-redux";import Wr from"classnames";import{useCallback as pd,useEffect as ah,useMemo as lh,useState as zr}from"react";import{useDispatch as dh,useSelector as ch}from"react-redux";import{useEffect as Yf,useRef as eh}from"react";var ld={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as dd}from"react/jsx-runtime";var th=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=eh(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 Yf(()=>{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=th;import nh from"classnames";var cd={root:"dd-ranhW"};import{jsx as sh}from"react/jsx-runtime";var oh=o=>{var s=o,{className:t,value:e}=s,n=D(s,["className","value"]);let r=C("TextInput",cd);return sh("input",h({className:nh(t,r.root),type:"text",value:e},n))},Dn=oh;var Ur={};G(Ur,{enUS:()=>rh,nlNL:()=>ih});var rh={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"}]},ih={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 uh=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},ph=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=A(Ur),i=C("LoginTokenDialog",ud),a=ch(ga),d=dh(),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=uh(T.target.elements.token.value);if(!k){m(r("verifyCodeError",{login:w}));return}d(fn({token:k}))}),[n]),w=lh(()=>T=>ae("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:v,children:T},"back-button"),[]);return ah(()=>{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=ph;import{jsx as mh}from"react/jsx-runtime";var gh=()=>{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 mh(gd,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},fd=gh;import My from"lodash.debounce";import{Fragment as Ny,useCallback as ac,useEffect as lc,useMemo as Oy,useState as oi}from"react";import{useDispatch as Dy,useSelector as wt}from"react-redux";import{createAsyncThunk as fh,createSlice as hh}from"@reduxjs/toolkit";var yh={data:null,fetchState:"idle"},hd=t=>t.contentTypes.data,_n=fh("contentTypes/getContentTypes",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),vh=hh({name:"contentTypes",initialState:yh,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=vh.reducer;import{createAction as Sh,createAsyncThunk as xh,createSelector as Sd,createSlice as bh}from"@reduxjs/toolkit";var Ch={data:null,fetchState:"idle",generation:0,inFlightRequestId:null},vd=t=>{t.data=null,t.fetchState="idle",t.generation+=1,t.inFlightRequestId=null},xd=[],me=t=>t.profile.data,wh=t=>t.profile.data?t.profile.data.uiConfig.widget.types:xd,Hn=Sd([wh],t=>t.filter(e=>e.isActive)),Xt=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||xd},bd=t=>e=>Hn(e).find(n=>n.type===t),Cd=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,wd=Sd([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=Sh("profile/clear"),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})),Th=bh({name:"profile",initialState:Ch,reducers:{},extraReducers:t=>{t.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)}}),Td=Th.reducer;import{useEffect as Wd,useState as Xh,useRef as Jh,useCallback as Zh}from"react";import{useState as Ph}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:()=>Eh,nlNL:()=>kh});var Eh={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"}]},kh={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 Ih}from"react/jsx-runtime";var Rh=({src:t,title:e})=>{let n=C("CommandPalette",ue),[o,s]=Ph("loading"),r=A(Ue);return Ih("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})]})},Ed=Rh;import Ah from"react";import Lh from"classnames";import{jsx as qr,jsxs as kd}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 Ah.Children.count(t)===0?null:kd("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&kd("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:Lh(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import ns from"classnames";import{Interweave as Ld}from"interweave";import{useEffect as Kh,useMemo as Md,useState as Nd}from"react";var Mh=/[.*+?^${}()|[\]\\]/g,Nh=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Oh(t){return t.replace(Mh,"\\$&")}function Dh(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function _h(t){return t.search(Nh)}function Pd(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Oh(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Rd(t){return t.replace(lo,'<mark data-type="placeholder">$1</mark>')}function Kn(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function Fh(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=Dh(e.toLowerCase(),t.toLowerCase()),s=Kn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=_h(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(ca).length>3||e.length>30?Fh(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Kn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Hh=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function ts(t){return Hh.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 Bh}from"react/jsx-runtime";var Id=Xr.createContext(void 0);function Jt(){let t=Xr.useContext(Id);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ad=({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 Bh(Id.Provider,{value:i,children:t})};import{jsx as We,jsxs as os}from"react/jsx-runtime";var Uh=3,Wh=90,Od=({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=Uh}=f,u=D(f,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var se;let m=A(Ue),[y,v]=Nd(!1),{selected:x,onChangeOpen:w}=Jt(),[T,k]=Nd(!1),E=C("CommandPalette",ue);function I(N){s(N),t&&w(!1)}let B=Md(()=>typeof a!="string"?a:ts(a)?Qr(a).trim():a,[a]),Z=Md(()=>typeof n!="string"?n:ts(n)?Qr(n).trim():n,[n]);return Kh(()=>{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(Ld,{tagName:"p",allowList:[],content:B,className:ns(E.listItemDescription,c==null?void 0:c.description,e?E.lineClamp:E.truncate)}):a]})})),Z&&Z.length>Wh&&We(V.Content,{className:E.listItemTooltip,disableFocusManager:!0,children:We(Ld,{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 Dd,jsxs as zh}from"react/jsx-runtime";var _d=()=>zh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Dd("title",{id:"angleLeftTitle",children:"AngleLeft"}),Dd("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 Fd,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:[Fd(_d,{}),s("back")]}),e&&Fd("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as jh}from"react";import{jsx as Hd,jsxs as Vh}from"react/jsx-runtime";var Zt=()=>Vh("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Hd("path",{d:"M0 0h24v24H0z",fill:"none"}),Hd("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 qh({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 Bd=jh(qh);import Kd from"classnames";import{jsx as Gh,jsxs as Qh}from"react/jsx-runtime";var $h=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=D(r,["onClick","shortKeys","children"]);let i=C("CommandPalette",ue);return Qh("button",b(h({type:"button"},o),{onClick:t,className:Kd(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>Gh("span",{className:Kd(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Ud=$h;import{jsx as zd,jsxs as ey}from"react/jsx-runtime";var Yh="[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]=Xh(),y=Jh(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(Yh)||[]),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=Zh(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 Wd(()=>{w()},[u,o,d,g,...p]),Wd(()=>{f&&I(f)},[f]),zd(Gt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:g,onBack:x,onClose:v,onKeyDown:se,children:ey(Ad,{selected:f,setSelected:m,isOpen:g,onChangeOpen:a,page:o,children:[o===n&&zd(Bd,{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=Ed;Ct.ListItem=Jr;Ct.ListItemActions=Od;Ct.Button=Ud;var Q=Ct;import{useEffect as ty}from"react";function Vd(t,e){ty(()=>{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 Gd,useRef as cy}from"react";import{useSelector as uy,useDispatch as py}from"react-redux";import{createAsyncThunk as ny,createSelector as oy,createSlice as sy}from"@reduxjs/toolkit";var jd={data:null,fetchState:"idle"},ry=t=>{var e;return(e=t.entities.data)!=null?e:null},ss=oy([ry,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=ny("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)})),iy=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),ay=sy({name:"entities",initialState:jd,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=iy(e.data?[...e.data,...n.payload]:n.payload)}).addCase(z,()=>jd)}}),qd=ay.reducer;var ti={};G(ti,{enUS:()=>ly,nlNL:()=>dy});var ly={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},dy={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var $d={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as ni,jsxs as my}from"react/jsx-runtime";var gy=({onCopy:t})=>{let e=cy(null),n=C("EntitiesList",$d),o=uy(ss),{setSelected:s}=Jt(),r=A(ti),i=py();return Gd(()=>{i(Se())},[]),Gd(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),my("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")})]})},Qd=gy;import{jsx as Xd}from"react/jsx-runtime";var rs=t=>Xd("svg",b(h({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:Xd("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:()=>fy,nlNL:()=>hy});var fy={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"}]},hy={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 yy}from"react-redux";var Wn={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as zn,jsxs as Sy}from"react/jsx-runtime";var vy=({suggestion:t,source:e,context:n})=>{let o=A(Un),s=yy(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:Sy(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=vy;var Vn={};G(Vn,{enUS:()=>xy,nlNL:()=>by});var xy={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?"}]},by={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 ky}from"react";import{useDispatch as Py,useSelector as Ry}from"react-redux";import{createAction as Ty,createAsyncThunk as ec,createSlice as Ey}from"@reduxjs/toolkit";var Cy=["{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}"],wy=new RegExp(Cy.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function Jd(t,e){let n=t.split(wy),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 Zd(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var tc={suggestions:[],fetchState:"idle"},Yd={default:tc},nc=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},as=t=>t.textSuggestions,oc=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},ls=Ty("textSuggestions/refresh"),xe=ec("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(oc(a)):l;e.dispatch(Ze(p.slice(0,r)))}return l})),jn=ec("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(oc(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"?Jd(u.text,t):u.text}))),l=Zd(l,i),e.dispatch(Ze(l)),l})),sc=Ey({name:"textSuggestions",initialState:Yd,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]||tc;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,()=>Yd)}}),{setTextSuggestions:HA}=sc.actions,rc=sc.reducer;import{jsx as ds,jsxs as Ay}from"react/jsx-runtime";var Iy=({types:t,commands:e,onClick:n})=>{let o=Py(),s=A(Vn),r=Ry(as);return ky(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(xe(i))})},[]),Ay("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)})]})},ic=Iy;import{jsx as Ie,jsxs as ri}from"react/jsx-runtime";var _y=200,Fy=5,Hy=4,si=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?Hy:Fy),By=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Ky=()=>{var Ee,H,oe;let t=Dy(),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=Oy(()=>{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&&By(n("entitiesClipboard"),r)}].filter(O=>O.shouldShow).filter(()=>!l),Z=ac(My((O,j)=>{t(mt({query:O,type:j,tags:["search-overlay"],size:l?50:20}))},_y),[l]),se=ac((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 lc(()=>{r?Z(r,l):t(To())},[r,l]),lc(()=>{g&&t(_n())},[g]),Vd(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(ic,{types:k,commands:B,onClick:se}),r.length>0&&ri(Ny,{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(Qd,{onCopy:N})})]})},dc=Ky;import{jsx as cc,jsxs as zy}from"react/jsx-runtime";var Wy=()=>{let t=P("showSearch"),e=P("isEmbedded");return zy(Uy,{children:[t&&cc(dc,{}),e&&cc(fd,{})]})},uc=Wy;import $y from"classnames";import{useSelector as Gy}from"react-redux";import{jsx as ii}from"react/jsx-runtime";var pc=({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 ym(a)}function Sm(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 xm(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=Sm(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 bm(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!==ne.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=xm(t.formats,o),this.formatters=s&&s.formatters||bm(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 Tm(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var Em="dummy",Er=Cm(null);function A(t){var o;let e=wm(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=Tm(n,s);return i?new Tr(i).format(r):(e!==Em&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as xl,createAsyncThunk as Ir,createSlice as Pm}from"@reduxjs/toolkit";import{Marked as km}from"marked";var Fo=(t,e)=>{let n=[],o=new km,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:[],assistantDisplayGeneration:0,pendingEvaluationGenerations:{},pendingEvaluationAssistantCodes:{},evaluationIdDisplayGeneration:{}};function Im(t,e){t.suppressedEvaluationIds.includes(e)||t.suppressedEvaluationIds.push(e)}function Sl(t,e,n){if(!e)return!1;if(bl(t,e))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?(Im(t,e),!0):(t.evaluationIdDisplayGeneration[e]=o,!1)}function Rm(t){let e=[...t.suppressedEvaluationIds];for(let n of t.cues)n.evaluationId&&!e.includes(n.evaluationId)&&e.push(n.evaluationId);return e}function bl(t,e){return!!(e&&t.suppressedEvaluationIds.includes(e))}var Cl=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var wl=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Tl=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},El=t=>t.assistants.activeAssistantCode;var Ho=xl("assistants/callToAction"),Dn=Ir("assistants/evaluateKnowledgeAssistant",(t,e)=>S(null,null,function*(){var f,m,h,v,x,w,T,k,E,R,B,Z,se,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=(h=t.externalConversationId)!=null?h: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 _=yl(a);_&&(d=(k=yield _)!=null?k:void 0)}let l=!d&&a?vl(a):null;if(!n){let _=(E=s.assistants.assistantThreads[t.assistantCode])==null?void 0:E.threadId;_?n=_:(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(_){throw l==null||l(void 0),_}let g=(B=(R=e.getState().conversation.current)==null?void 0:R.externalId)!=null?B: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=(Z=kl(c,t.assistantCode)[0])!=null?Z:{response:"",sources:[]};return t.onNewThreadId&&t.onNewThreadId(n),{threadId:n,question:t.input,evaluationId:c.evaluationId,answer:{answer:(se=ve(p.response,r!=null?r:{}))!=null?se:"",sources:(N=p.sources)!=null?N:[]},externalConversationId:a,currentExternalIdAtRequest:i}})),NT=xl("assistants/extractedTextSuggestions");function kl(t,e){var n,o;return Array.isArray(t.output)?t.output:typeof t.output=="string"?[{code:e,name:e,response:t.output}]:[b(y({code:e,name:e},t.output&&typeof t.output=="object"?t.output:{}),{response:(o=(n=t.output)==null?void 0:n.response)!=null?o:""})]}var Pl=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 x,w,T,k,E;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},threadId:i,attachments:a}=t,d=e.getState(),{platformVariables:l}=d.info,c=(w=(x=d.conversation.current)==null?void 0:x.externalId)!=null?w:null,g=(k=(T=t.externalConversationId)!=null?T:c)!=null?k: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 R=yield o.conversationQuery();u=Array.isArray(R)?R:void 0}else Array.isArray(s)&&(u=s);if(t.includeMetadata&&d.conversation.current&&((E=t.externalConversationId)!=null?E:c)===c){let{metadata:B}=d.conversation.current;Object.assign(r,{metadata:B})}let p=Rr({attachments:a,transcript:u}),f=yield n.evaluateAssistant(t.assistantCode,y({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 h=kl(f,t.assistantCode).map(R=>b(y({},R),{name:ve(R.name,l),response:ve(R.response,l)||""})),v=[];return h.forEach(R=>{if(!R.response)return;let B=Fo(R.response,"reply");B.length!==0&&v.push(...B.map(Z=>({text:Z,type:"text",source:"assistant",assistantCode:R.code,sourceLabel:R.name})))}),v.length>0&&e.dispatch(Kt(v)),b(y({},f),{output:h,externalConversationId:g,currentExternalIdAtRequest:c})}));function Il(t){return t!=null&&t.length?t.map(e=>e.response).filter(Boolean).join(`
4
+ `):""}var Rl=Pm({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(y({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)&&I.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;I.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 h=e.suppressedEvaluationIds.indexOf(i);h!==-1&&e.suppressedEvaluationIds.splice(h,1)}if(delete e.pendingEvaluationGenerations[n.meta.requestId],delete e.pendingEvaluationAssistantCodes[n.meta.requestId],!a){let h=e.pending.indexOf(o);h!==-1&&e.pending.splice(h,1)}if(n.meta.arg.skipState||a)return;let{evaluationId:d,output:l,externalConversationId:c,currentExternalIdAtRequest:g}=r;if(bl(e,d)||c&&g&&c!==g)return;let u=n.meta.arg.silent?l.filter(h=>h.code!==n.meta.arg.assistantCode):l,p=u.map(h=>h.code),f=e.cues.filter(h=>!p.includes(h.code)),m=u.map(h=>y(b(y({},h),{evaluationId:d}),c?{externalConversationId:c}:{}));e.cues=[...f,...m]}).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(y({},Pr),{suppressedEvaluationIds:Rm(e),assistantDisplayGeneration:e.assistantDisplayGeneration+1,pendingEvaluationGenerations:y({},e.pendingEvaluationGenerations),pendingEvaluationAssistantCodes:y({},e.pendingEvaluationAssistantCodes),evaluationIdDisplayGeneration:y({},e.evaluationIdDisplayGeneration)}))}}),{removeCueByCode:Bo,resetCues:OT,removeThreadById:Al,receiveChunk:Ll,userNotification:Ml,setActiveAssistantCode:Ar,setWidgetAssistantSessionId:Lr,registerAssistantThreadId:Mr,resetAssistantThread:Nl}=Rl.actions,Ol=Rl.reducer;import{createSlice as Am}from"@reduxjs/toolkit";import{useSelector as Lm}from"react-redux";var Mm={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},Dl=Am({name:"settings",initialState:Mm,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}=Dl.actions,yt=t=>e=>e.settings[t],P=t=>Lm(yt(t)),_l=Dl.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 Bm}from"react";import{jsx as Fl}from"react/jsx-runtime";var Ko=t=>Fl("svg",b(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Fl("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 Hl}from"react/jsx-runtime";var Bl=t=>Hl("svg",b(y({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:"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={};$(Or,{enUS:()=>Nm,nlNL:()=>Om});var Nm={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Om={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Kl={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};var Ul=({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=Ul(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=Ul(t,e?`${e}\u2026`:"",t.data),o=encodeURIComponent(n).length}return n};import{useSelector as Hm}from"react-redux";import{createContext as Dm,useContext as _m}from"react";import{jsx as Fm}from"react/jsx-runtime";var Wl=Dm(null),zl=({handler:t,children:e})=>Fm(Wl.Provider,{value:t!=null?t:null,children:e}),Vl=()=>_m(Wl);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=P("enableFeedbackForm"),n=Vl(),o=Hm(Vt(t));return e?n?{mode:"custom-handler",open:()=>n(t)}:o?{mode:"passwordless-link",href:o}:{mode:"disabled"}:{mode:"disabled"}}import{useSelector as Km}from"react-redux";import{jsx as nt,jsxs as Wm}from"react/jsx-runtime";var Um=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o})=>{let s=C("FeedbackThumbs",Kl),r=Km(ge),i=Uo({conversationId:r,evaluationId:n,type:o,assistantCode:t,contentType:"assistantOutput",content:e}),a=Wo(i),d=A(Or),l=j(),[c,g]=Bm(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 Wm("div",{className:s.thumbs,children:[nt(M.Button,{title:d("thumbsUp"),onClick:p,icon:nt(Bl,{}),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=Um;import Ef from"dompurify";import{marked as kf}from"marked";import{Fragment as rd,useMemo as Pf,useRef as If,useState as Rf}from"react";import{useState as df}from"react";import{FloatingFocusManager as zm,FloatingPortal as Vm,autoUpdate as qm,flip as jm,offset as Gm,safePolygon as $m,shift as Qm,useClick as Xm,useDismiss as Jm,useFloating as Zm,useHover as Ym,useInteractions as ef,useMergeRefs as jl,useRole as tf}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 ql}from"react/jsx-runtime";function nf({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=Zm({placement:e,open:d,onOpenChange:l,whileElementsMounted:qm,middleware:[Gm(5),jm({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Qm({padding:10})]}),g=c.context,u=Xm(g,{enabled:s==null}),p=Jm(g),f=tf(g),m=Ym(g,{enabled:o!=null?o:!1,handleClose:$m()}),h=ef([u,p,f,m]);return Ie.useMemo(()=>b(y(y({open:d,setOpen:l},h),c),{modal:n,tooltip:o}),[d,l,h,c,n,o])}var Gl=Ie.createContext(null),Dr=()=>{let t=Ie.useContext(Gl);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=nf(y({modal:e},n));return ot(Gl.Provider,{value:r,children:t})};function of(o){var s=o,{as:t,children:e}=s,n=D(s,["as","children"]);let r=Dr(),i=t||"button",a=e.ref,d=jl([r.refs.setReference,a]);return ot(i,b(y(y({ref:d},i==="button"||t===void 0||t==="button"?{type:"button"}:{}),r.getReferenceProps(n)),{children:e}))}var sf=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=jl([a.refs.setFloating,o]);return i.open?ot(Vm,{children:ot(zm,{context:i,modal:a.modal,disabled:(c=n.disableFocusManager)!=null?c:a.tooltip,children:ot("div",b(y({ref:d,style:y(b(y({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function rf(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(y({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function $l({trigger:t,children:e,placement:n="top"}){return ql(vt,{tooltip:!0,placement:n,children:[ql(vt.Content,{className:qo.tooltip,children:[e,ot("div",{className:qo.arrow})]}),ot(vt.Trigger,{className:qo.tooltipTrigger,children:t})]})}vt.Trigger=of;vt.Content=sf;vt.Button=rf;var V=vt;var _r={};$(_r,{enUS:()=>af,nlNL:()=>lf});var af={showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}],showLess:[{type:0,value:"Show less"}]},lf={showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}],showLess:[{type:0,value:"Toon minder"}]};var Ql={sources:"dd-cNsGl",source:"dd-LoJ6U",tooltip:"dd-7ZGu9",linkContent:"dd-O2IoN",showMoreSources:"dd-ev8Yr"};import{jsx as qt,jsxs as Jl}from"react/jsx-runtime";var Xl=3,cf=({sources:t,onClick:e,sourceTestId:n="assistant-source"})=>{let o=A(_r),s=C("AssistantSources",Ql),[r,i]=df(!1),a=t.filter(c=>!!c.url),d=r?a:a.slice(0,Xl),l=a.length>Xl;return d.length===0?null:Jl("ul",{className:s.sources,children:[d.map(c=>qt("li",{className:s.source,"data-testid":n,children:Jl(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})})})]})},Zl=cf;import od from"classnames";import{createRef as bf,useCallback as Hr,useMemo as Cf,useRef as wf,useState as Tf}from"react";import{useState as uf,useLayoutEffect as pf}from"react";var gf=["bottom","height","left","right","top","width"],mf=(t={},e={})=>gf.some(n=>t[n]!==e[n]),Ke=new Map,Yl,ed=()=>{let t=[],e=[];Ke.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();mf(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))}),Yl=window.requestAnimationFrame(ed)};function ff(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&&ed()},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(Yl)}}}}function Fr(t){let[e,n]=uf(null);return pf(()=>{if(!t.current)return;let o=ff(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as yf,useLayoutEffect as vf,useState as Sf}from"react";import{createPortal as xf}from"react-dom";import{useEffect as hf}from"react";function St(t){hf(()=>{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 td={root:"dd-r-dgo"};var nd=({children:t,parentNode:e})=>{let[n,o]=Sf(null),s=yf(gn);return vf(()=>{let r=document.createElement("div");return xt(r),r.classList.add(td.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?xf(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]=Tf(t),o=Hr(()=>n(!0),[]),s=Hr(()=>n(!1),[]),r=Hr(()=>n(a=>!a),[]),i=wf(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=bf(),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=Cf(()=>i(g,u,0),[g,u]);return Br(nd,{parentNode:a,children:Br("div",b(y({className:od(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:od(t,Re.root),children:r})}))})};var sd={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 Af(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 Lf(t){return t.replace(/\r\n/g,`
5
+ `)}var Mf=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s,sources:r,onSourceClick:i})=>{let a=C("Markdown",sd),d=If(null),[l,c]=Rf(null),g=Pf(()=>{let v=kf.parse(Lf(t));return Ef.sanitize(v.toString()).replaceAll("</code>",`${Af(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)))},h=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(rd,{children:[l&&(o||s)&&Go(jt,{triggerRef:{current:l},className:a.popover,parentNode:l,children:[Go("div",{className:a.options,ref:h,children:[o&&(l==null?void 0:l.tagName)==="CODE"&&Gt("button",{type:"button",className:a.option,onClick:p,children:n}),s&&Go(rd,{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(Zl,{sources:r,onClick:i})]})},bt=Mf;import{useRef as Df}from"react";var id={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as Of}from"react/jsx-runtime";var Nf=({width:t})=>{let e=C("LoadingProgressBar",id);return Of("div",{className:e.loadingBar,style:{width:t}})},$o=Nf;import{jsx as $t,jsxs as _f}from"react/jsx-runtime";var Qo=({title:t})=>{let e=Df(null);return uo(e),$t(M,{ref:e,children:$t(F,{children:_f(F.Content,{children:[$t(F.Title,{children:t}),$t($o,{width:"60%"}),$t($o,{width:"90%"}),$t($o,{width:"50%"})]})})})};var Ct={};$(Ct,{enUS:()=>Ff,nlNL:()=>Hf});var Ff={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"}]},Hf={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 Uf}from"react";var ad={error:"dd-CoAuB"};var Wr={};$(Wr,{enUS:()=>Bf,nlNL:()=>Kf});var Bf={errorPrefix:[{type:0,value:"Error:"}]},Kf={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as ld,jsxs as Wf}from"react/jsx-runtime";var dd=({message:t})=>{let e=Uf(null),n=C("WidgetCardError",ad),o=A(Wr);return uo(e),ld(M,{ref:e,children:ld(F,{children:Wf(F.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as W,jsxs as Ue}from"react/jsx-runtime";var $f=3,Qf=({sources:t,onClick:e})=>{let n=A(Ct),o=C("WidgetKnowledgeAssistant",Xo),[s,r]=st(!1),i=s?t:t.slice(0,$f);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})})]})},Xf=({title:t,description:e})=>W(M,{"data-testid":"knowledge-assist-empty-state",children:W(F,{children:Ue(F.Content,{children:[W(F.Title,{children:t}),W(bt,{content:e})]})})}),Jf=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=A(Ct),a=zr(Jo);return Ue(M,{"data-testid":"knowledge-assist-answer",ref:t,children:[W(F,{children:Ue(F.Content,{children:[W(F.Title,{children:e.question}),W(bt,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),W(Qf,{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=zf(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=H=>{i&&i(H),r===void 0&&d(H)},g=A(Ct),[u,p]=st(!1),[f,m]=st(!1),[h,v]=st(null),[x,w]=st(!!n),[T,k]=st(null),E=jf(),R=j(),B=Tn(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;R("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(Al(l)),t&&E(Nl({assistantCode:t})),c(null),t&&R("Assistant thread reset",{threadId:l!=null?l:void 0,assistantCode:t})},se=Tn(Pl,{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:h,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 qf(()=>{!n||!_.isEnabled||N(n).finally(()=>{o==null||o()})},[n,t,_.isEnabled,o]),W(Jo.Provider,{value:_,children:s})},Yo=()=>{let t=A(Ct),e=C("WidgetKnowledgeAssistant",Xo),n=zr(Jo),o=cd(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=A(Ct),o=j(),s=C("WidgetKnowledgeAssistant",Xo),r=cd(null),i=zr(Jo),a=(m=Gf(wl((f=i.threadId)!=null?f:-1)))!=null?m:[],d=P("hasKeyboardInput"),l=ae(),c=(h,v)=>{Pe(h),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:h,copiedText:h,evaluationId:v.evaluationId})},g=(h,v)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:v.evaluationId,assistantCode:i.assistantCode,source:h})},u=h=>{h.preventDefault(),i.onReset()},p=(h,v)=>{l.send(He,{text:h,suggestion:{source:"assistant",sourceText:h}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:v.evaluationId,assistantOutput:v.answer.answer,usedText:h})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Ue(Vf,{children:[W(De,{type:"knowledge",title:t,"data-testid":"knowledge",children:Ue(te,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&W(Xf,y({},e)),a.map((h,v)=>W(Jf,{innerRef:v===a.length-1?r:void 0,item:h,hasKeyboardInput:d,onCopy:x=>c(x,h),onUse:x=>p(x,h),onSourceClick:x=>g(x,h)},`${h.question}_${h.answer}_${v}`)),i.pendingInput&&W(Qo,{title:i.pendingInput}),i.errorMessage&&W(dd,{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 sh from"react";function ts(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}var pd="queueMicrotask error",Zf=1e3,Yf=8e3;function eh(t){return ts(t)&&t.name==="TypeError"&&typeof t.message=="string"&&/queueMicrotask/.test(t.message)}function th(){try{return typeof window=="undefined"?"no-window":typeof window.queueMicrotask}catch(t){return"inaccessible"}}function nh(){try{return typeof globalThis.queueMicrotask}catch(t){return"inaccessible"}}function oh(t){return{message:String(t.message).slice(0,Zf),stack:typeof t.stack=="string"?t.stack.slice(0,Yf):null,typeofQueueMicrotask:typeof queueMicrotask,typeofWindowQueueMicrotask:th(),typeofGlobalThisQueueMicrotask:nh()}}function gd(t,e){try{if(!eh(t))return!1;let n=e(oh(t));return Promise.resolve(n).catch(()=>{}),!0}catch(n){return!1}}var ns=class extends sh.Component{constructor(){super(...arguments);this.state={error:null,caught:!1,rethrow:!1}}static getDerivedStateFromError(n){return{error:n,caught:!0}}componentDidCatch(n){gd(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 Gy}from"react";import{useSelector as xd}from"react-redux";import qr from"classnames";import{useCallback as vd,useEffect as gh,useMemo as mh,useState as jr}from"react";import{useDispatch as fh,useSelector as hh}from"react-redux";import{useEffect as rh,useRef as ih}from"react";var md={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as fd}from"react/jsx-runtime";var ah=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=ih(null),l=C("Dialog",md),c=u=>{if(u.key==="Escape"){u.preventDefault(),u.stopPropagation(),s();return}r&&r(u)},g=u=>{u.target===d.current&&t&&o()};return rh(()=>{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?fd("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:g,children:fd("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},Qt=ah;import lh from"classnames";var hd={root:"dd-ranhW"};import{jsx as ch}from"react/jsx-runtime";var dh=o=>{var s=o,{className:t,value:e}=s,n=D(s,["className","value"]);let r=C("TextInput",hd);return ch("input",y({className:lh(t,r.root),type:"text",value:e},n))},Fn=dh;var Vr={};$(Vr,{enUS:()=>uh,nlNL:()=>ph});var uh={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"}]},ph={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 yd={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 yh=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},vh=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=A(Vr),i=C("LoginTokenDialog",yd),a=hh(va),d=fh(),l=P("productName"),[c,g]=jr(t||""),[u,p]=jr(0),[f,m]=jr(""),h=vd(T=>S(null,null,function*(){T.preventDefault(),d(ba({email:c})),p(1)}),[n,c]),v=()=>{m(""),p(0)},x=vd(T=>S(null,null,function*(){T.preventDefault();let k=yh(T.target.elements.token.value);if(!k){m(r("verifyCodeError",{login:w}));return}d(hn({token:k}))}),[n]),w=mh(()=>T=>le("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:v,children:T},"back-button"),[]);return gh(()=>{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:h,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")})]})]})]})})},Sd=vh;import{jsx as xh}from"react/jsx-runtime";var Sh=()=>{let t=xd(Sa),e=xd(Ut),n=P("adminUrl"),o=ae(),s=()=>o.send(zt,!1),r=()=>{o.send(zt,!1),o.send(wn)};return xh(Sd,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},bd=Sh;import Hy from"lodash.debounce";import{Fragment as By,useCallback as pc,useEffect as gc,useMemo as Ky,useState as li}from"react";import{useDispatch as Uy,useSelector as Tt}from"react-redux";import{createAsyncThunk as bh,createSlice as Ch}from"@reduxjs/toolkit";var wh={data:null,fetchState:"idle"},Cd=t=>t.contentTypes.data,Hn=bh("contentTypes/getContentTypes",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),Th=Ch({name:"contentTypes",initialState:wh,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})}}),wd=Th.reducer;import{createAction as Ed,createAsyncThunk as Eh,createSelector as kd,createSlice as kh}from"@reduxjs/toolkit";var Ph={data:null,fetchState:"idle",generation:0,inFlightRequestId:null,widgetTypesOverride:null},Td=t=>{t.data=null,t.fetchState="idle",t.generation+=1,t.inFlightRequestId=null,t.widgetTypesOverride=null},Pd=[],fe=t=>t.profile.data,Ih=t=>{var e;return(e=t.profile.widgetTypesOverride)!=null?e:t.profile.data?t.profile.data.uiConfig.widget.types:Pd},Kn=kd([Ih],t=>t.filter(e=>e.isActive)),Jt=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||Pd},Id=t=>e=>Kn(e).find(n=>n.type===t),Rd=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Ad=kd([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=Ed("profile/clear"),Rh=Ed("profile/setWidgetTypesOverride"),Bn=Eh("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})),Ah=kh({name:"profile",initialState:Ph,reducers:{},extraReducers:t=>{t.addCase(Rh,(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,Td).addCase(Gr,Td)}}),Ld=Ah.reducer;import{useEffect as Qd,useState as ny,useRef as oy,useCallback as sy}from"react";import{useState as Nh}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={};$(We,{enUS:()=>Lh,nlNL:()=>Mh});var Lh={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"}]},Mh={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 Dh}from"react/jsx-runtime";var Oh=({src:t,title:e})=>{let n=C("CommandPalette",pe),[o,s]=Nh("loading"),r=A(We);return Dh("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})]})},Md=Oh;import _h from"react";import Fh from"classnames";import{jsx as Qr,jsxs as Nd}from"react/jsx-runtime";function Xr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=A(We),i=C("CommandPalette",pe);return _h.Children.count(t)===0?null:Nd("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Nd("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:Fh(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import rs from"classnames";import{Interweave as Hd}from"interweave";import{useEffect as jh,useMemo as Bd,useState as Kd}from"react";var Hh=/[.*+?^${}()|[\]\\]/g,Bh=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Kh(t){return t.replace(Hh,"\\$&")}function Uh(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Wh(t){return t.search(Bh)}function Od(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Kh(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Dd(t){return t.replace(po,'<mark data-type="placeholder">$1</mark>')}function Wn(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function zh(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=Uh(e.toLowerCase(),t.toLowerCase()),s=Wn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Wh(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(fa).length>3||e.length>30?zh(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Wn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Vh=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function ss(t){return Vh.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 _d=Yr.createContext(void 0);function Zt(){let t=Yr.useContext(_d);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Fd=({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(_d.Provider,{value:i,children:t})};import{jsx as ze,jsxs as is}from"react/jsx-runtime";var Gh=3,$h=90,Ud=({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=Gh}=f,u=D(f,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var se;let m=A(We),[h,v]=Kd(!1),{selected:x,onChangeOpen:w}=Zt(),[T,k]=Kd(!1),E=C("CommandPalette",pe);function R(N){s(N),t&&w(!1)}let B=Bd(()=>typeof a!="string"?a:ss(a)?Zr(a).trim():a,[a]),Z=Bd(()=>typeof n!="string"?n:ss(n)?Zr(n).trim():n,[n]);return jh(()=>{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(y({className:E.listItemAction,"aria-disabled":(se=u.disabled)!=null?se:!1,onClick:R,"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,B&&typeof B=="string"?ze(Hd,{tagName:"p",allowList:[],content:B,className:rs(E.listItemDescription,c==null?void 0:c.description,e?E.lineClamp:E.truncate)}):a]})})),Z&&Z.length>$h&&ze(V.Content,{className:E.listItemTooltip,disableFocusManager:!0,children:ze(Hd,{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&&is("div",{className:E.sources,children:[ze("span",{className:E.sourcesTitle,children:m("sources")}),d.slice(0,h?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)),!h&&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 Wd,jsxs as Qh}from"react/jsx-runtime";var zd=()=>Qh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Wd("title",{id:"angleLeftTitle",children:"AngleLeft"}),Wd("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 Vd,jsxs as ti}from"react/jsx-runtime";function ni({children:t,title:e,id:n,onDismiss:o}){let s=A(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:[Vd(zd,{}),s("back")]}),e&&Vd("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Jh}from"react";import{jsx as qd,jsxs as Xh}from"react/jsx-runtime";var Yt=()=>Xh("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[qd("path",{d:"M0 0h24v24H0z",fill:"none"}),qd("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 Zh({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 jd=Jh(Zh);import Gd from"classnames";import{jsx as ey,jsxs as ty}from"react/jsx-runtime";var Yh=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=D(r,["onClick","shortKeys","children"]);let i=C("CommandPalette",pe);return ty("button",b(y({type:"button"},o),{onClick:t,className:Gd(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>ey("span",{className:Gd(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},$d=Yh;import{jsx as Xd,jsxs as iy}from"react/jsx-runtime";var ry="[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]=ny(),h=oy(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=h.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(ry)||[]),k=N=>document.querySelector(`[data-item-id=${N}]`),E=N=>{let _=k(N);_&&m(_.dataset.itemId)},R=N=>{let _=k(N);_&&_.scrollIntoView({behavior:"smooth"})},B=()=>{if(!f)return;let N=T(),_=k(f);if(!_)return;let ke=N.indexOf(_),H=N[ke+1];H!=null&&H.dataset.itemId?E(H.dataset.itemId):w()},Z=()=>{if(!f)return;let N=T(),_=k(f);if(!_)return;let ke=N.indexOf(_),H=N[ke-1];H!=null&&H.dataset.itemId?E(H.dataset.itemId):E(N[N.length-1].dataset.itemId)},se=sy(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 Qd(()=>{w()},[u,o,d,g,...p]),Qd(()=>{f&&R(f)},[f]),Xd(Qt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:g,onBack:x,onClose:v,onKeyDown:se,children:iy(Fd,{selected:f,setSelected:m,isOpen:g,onChangeOpen:a,page:o,children:[o===n&&Xd(jd,{ref:h,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:d,types:l,typePlaceholder:e}),c]})})}wt.Page=ni;wt.List=Xr;wt.Image=Md;wt.ListItem=ei;wt.ListItemActions=Ud;wt.Button=$d;var Q=wt;import{useEffect as ay}from"react";function Jd(t,e){ay(()=>{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 ec,useRef as hy}from"react";import{useSelector as yy,useDispatch as vy}from"react-redux";import{createAsyncThunk as ly,createSelector as dy,createSlice as cy}from"@reduxjs/toolkit";var si={data:null,fetchState:"idle"},uy=t=>{var e;return(e=t.entities.data)!=null?e:null},as=dy([uy,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=ly("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)})),py=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),gy=cy({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=py(e.data?[...e.data,...n.payload]:n.payload)}).addCase(z,()=>si).addCase(ie,()=>si)}}),Zd=gy.reducer;var ri={};$(ri,{enUS:()=>my,nlNL:()=>fy});var my={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},fy={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Yd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as ii,jsxs as xy}from"react/jsx-runtime";var Sy=({onCopy:t})=>{let e=hy(null),n=C("EntitiesList",Yd),o=yy(as),{setSelected:s}=Zt(),r=A(ri),i=vy();return ec(()=>{i(xe())},[]),ec(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),xy("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&ii(Q.List,{children:o.map((a,d)=>ii(Q.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")})]})},tc=Sy;import{jsx as nc}from"react/jsx-runtime";var ls=t=>nc("svg",b(y({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:nc("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={};$(zn,{enUS:()=>by,nlNL:()=>Cy});var by={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"}]},Cy={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 wy}from"react-redux";var Vn={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as qn,jsxs as Ey}from"react/jsx-runtime";var Ty=({suggestion:t,source:e,context:n})=>{let o=A(zn),s=wy(ge),r=j(),i=P("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:Ey(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=Ty;var jn={};$(jn,{enUS:()=>ky,nlNL:()=>Py});var ky={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?"}]},Py={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 My}from"react";import{useDispatch as Ny,useSelector as Oy}from"react-redux";import{createAction as Ay,createAsyncThunk as rc,createSlice as Ly}from"@reduxjs/toolkit";var Iy=["{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}"],Ry=new RegExp(Iy.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function oc(t,e){let n=t.split(Ry),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 sc(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var ic={suggestions:[],fetchState:"idle"},ai={default:ic},ac=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},cs=t=>t.textSuggestions,lc=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},us=Ay("textSuggestions/refresh"),be=rc("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=>y(b(y({},p),{text:ve(p.text,s)}),p.title?{title:ve(p.title,s)}:{}))),t==="default"){let p=i?l.filter(lc(a)):l;e.dispatch(et(p.slice(0,r)))}return l})),Gn=rc("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(y({},bn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(lc(t))),r&&(l=l.map(u=>b(y({},u),{text:ve(u.text,r)}))),a&&(l=l.map(u=>b(y({},u),{text:u.source!=="trie-with-typos"?oc(u.text,t):u.text}))),l=sc(l,i),e.dispatch(et(l)),l})),dc=Ly({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]||ic;return b(y({},e),{[o]:b(y({},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:VA}=dc.actions,cc=dc.reducer;import{jsx as ps,jsxs as _y}from"react/jsx-runtime";var Dy=({types:t,commands:e,onClick:n})=>{let o=Ny(),s=A(jn),r=Oy(cs);return My(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(be(i))})},[]),_y("div",{children:[e.length>0&&ps(Q.List,{heading:s("commands"),children:e.map((i,a)=>ps(Q.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return ps(Q.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>ps(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)})]})},uc=Dy;import{jsx as Ae,jsxs as ci}from"react/jsx-runtime";var Wy=200,zy=5,Vy=4,di=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?Vy:zy),qy=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),jy=()=>{var ke,H,oe;let t=Uy(),e=ae(),n=A(jn),[o,s]=li(!1),[r,i]=li(""),a=Tt(nl),d=Tt(fe),[l,c]=li(),g=Tt(Y),u=P("showSearch"),p=P("enableSuggestionFeedback"),f=P("showEntitiesCommand"),m=P("showImageSearch"),h=P("searchTriggerKey"),v=Tt(Cd),x=Tt(pr),w=Tt(ol),T=Tt(tl),k=((oe=(H=(ke=d==null?void 0:d.uiConfig)==null?void 0:ke.search)==null?void 0:H.initialTypes)==null?void 0:oe.filter(({isActive:O})=>O))||[],E=j(),R=Ky(()=>{let O=re=>di(x.filter(G=>G.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(G=>G.value.toLowerCase()===re.type)).filter(re=>!!re),Mt=q.filter(re=>!Oe.find(G=>G.value===re.value));return[...Oe,...Mt]},[v,k,m,l]),B=[{label:n("entitiesClipboard"),onClick:()=>t(Wt("entities")),shouldShow:f&&qy(n("entitiesClipboard"),r)}].filter(O=>O.shouldShow).filter(()=>!l),Z=pc(Hy((O,q)=>{t(ft({query:O,type:q,tags:["search-overlay"],size:l?50:20}))},Wy),[l]),se=pc((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 _(O){return q=>{o?window.confirm(n("warning"))&&(O(q),s(!1)):O(q)}}return gc(()=>{r?Z(r,l):t(Po())},[r,l]),gc(()=>{g&&t(Hn())},[g]),Jd(h,()=>{t(Se(!0)),E("open search",{via:"ctrl+k"})}),!u||!d?null:ci(Q,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:_(O=>t(Se(O))),onChangeType:O=>c(O),onChangePage:_(O=>t(Wt(O))),selectedType:l,search:r,page:a,isOpen:T,types:R,updateDeps:[x],children:[ci(Q.Page,{id:"search",children:[r.length===0&&Ae(uc,{types:k,commands:B,onClick:se}),r.length>0&&ci(By,{children:[B.length>0&&Ae(Q.List,{heading:n("commands"),children:B.map((O,q)=>Ae(Q.ListItem,{closeOnSelect:!1,onClick:O.onClick,id:`commands-${q}`,children:O.label},O.label))}),R.map(({value:O,label:q,list:Oe,lineClamp:Mt,listOrientation:re})=>Ae(Q.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(G=>Ae(Q.ListItem,{id:`${O}-${G.id}`,closeOnSelect:!1,lineClamp:Mt,onClick:()=>se(G.text,G),description:O!=="IMAGE"?G.title&&G.text:void 0,tooltip:G.text,extra:p&&Ae(Q.ListItemActions,{children:Ae(ds,{context:r,source:"search",suggestion:G})}),children:O==="IMAGE"?Ae(Q.Image,{title:G.title||G.text,src:G.image}):G.title||G.text},`${G.id}-${G.text}`))},O))]})]}),Ae(Q.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:_(()=>{t(Wt("search"))}),children:Ae(tc,{onCopy:N})})]})},mc=jy;import{jsx as fc,jsxs as Qy}from"react/jsx-runtime";var $y=()=>{let t=P("showSearch"),e=P("isEmbedded");return Qy(Gy,{children:[t&&fc(mc,{}),e&&fc(bd,{})]})},hc=$y;import Yy from"classnames";import{useSelector as ev}from"react-redux";import{jsx as ui}from"react/jsx-runtime";var yc=({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
6
  c-17.9,17.9-27.3,40.1-27.3,65.7C163.4,163,163.4,233,163.4,233z M465.5,267.9V477c0,9.4-3.4,17.9-10.2,24.7
7
7
  c-6.8,6.8-15.4,10.2-24.7,10.2h-349c-9.4,0-17.9-3.4-24.7-10.2c-6.8-6.8-10.2-15.4-10.2-24.7V267.9c0-9.4,3.4-17.9,10.2-24.7
8
8
  c6.8-6.8,15.4-10.2,24.7-10.2h11.9v-70c0-44.4,16.2-82.8,47.8-115.2S212.1,0,256.4,0s82.8,16.2,115.2,47.8
9
- c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as gc}from"react/jsx-runtime";var Vy={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},mc=({className:t,color:e})=>gc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:gc("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:Vy[e||"pink"]})});var fc={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:()=>jy,nlNL:()=>qy});var jy={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},qy={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Qy}from"react-redux";import{jsx as li,jsxs as hc}from"react/jsx-runtime";var yc=({onLogIn:t})=>{let e=A(ai),n=P("floatingMenu"),o=P("productName"),s=Qy(),r=Gy(Y),i=C("FloatingMenu",fc);if(r===null||n===!1)return null;let a=()=>{r===!0?s(ve(!0)):t()};return hc("button",{type:"button",className:$y(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[li("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),hc("div",{className:i.icon,children:[li(mc,{className:i.logo,color:"pink"}),r===!1&&li(pc,{className:i.lock})]})]})};import{useEffect as Sv,useRef as xv}from"react";import{useDispatch as bv,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 Xy}from"@reduxjs/toolkit";var Jy={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},cs=({ui:t})=>t.overlayCollapsed,vc=Xy({name:"ui",initialState:Jy,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:Sc,setOverlayCollapsedUserOverwrite:xc}=vc.actions,bc=vc.reducer;var Cc={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as ps}from"react/jsx-runtime";var Zy=({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})}),Yy=({matches:t,selectedIndex:e})=>{let n=C("StyleSuggestionList",Cc);return ps(te,{children:t.map((o,s)=>ps(Zy,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},gs=Yy;import{useMemo as mv}from"react";import{Interweave as Pc}from"interweave";import{useEffect as rv,useMemo as iv,useRef as av,useState as lv}from"react";import{useDispatch as dv,useSelector as Rc}from"react-redux";import{useEffect as ev}from"react";function wc(t,e,n){ev(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Tc={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 Ec,jsxs as tv}from"react/jsx-runtime";var kc=({title:t})=>tv("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Ec("title",{id:"closeTitle",children:t}),Ec("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:()=>nv,nlNL:()=>ov});var nv={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},ov={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as ze,jsxs as Ic}from"react/jsx-runtime";var cv=["search","personal-collection-search","search-autocomplete"];function uv(t,e,n,o={}){var r;let s="";return cv.includes(e)?s=Pd(Gr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=Gr(t,n,o),o.placeholders===!0&&(s=Rd(s)),s}var pv=()=>{},gv=({selected:t,suggestion:e})=>{let n=A(di),o=P("inlineSuggestions"),s=Rc(ct),[r,i]=lv(!1),a=P("enableSuggestionFeedback"),d=Rc(y=>y.input.text),l=dv(),c=C("TextSuggestion",Tc),g=av(null),u=e.source==="assistant",p=a&&!u;rv(()=>{let y=setTimeout(()=>{l(Aa({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(y)}},[e]),wc(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=iv(()=>uv(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:Ic("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:pv,children:e.source==="assistant"?Ic("div",{className:c.assistantContainer,children:[ze(Pc,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),ze("span",{className:c.assistantBadge,children:n("assistant")})]}):ze(Pc,{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(kc,{title:n("close")})})})]})},Ac=gv;import{jsx as hv}from"react/jsx-runtime";var fv=({suggestions:t,selectedIndex:e,reverse:n})=>mv(()=>{let s=t.map((r,i)=>hv(Ac,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ms=fv;var Lc={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as yv,createSlice as vv}from"@reduxjs/toolkit";var fs={list:{keywordMatches:[]},fetchState:"idle"},hs=t=>t.styleSuggestions.list,Tt=yv("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})})),Mc=vv({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:Nc}=Mc.actions,Oc=Mc.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 wv}from"react/jsx-runtime";var Cv=()=>{var y;let t=xv(null),e=C("InlineSuggestionsOverlay",Lc),n=Et(Ae),o=bv(),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}))})}),Sv(()=>{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:wv("div",{ref:t,className:e.paper,children:[f&&vs(gs,{matches:p,selectedIndex:-1}),m&&vs(te,{children:vs(ms,{suggestions:d,selectedIndex:l})})]})})},Dc=Cv;import kv,{useState as ui,useEffect as Pv}from"react";var _c={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 Rv}from"react-redux";var ci={};G(ci,{enUS:()=>Tv,nlNL:()=>Ev});var Tv={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."}]},Ev={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 Iv,jsx as be,jsxs as Ss}from"react/jsx-runtime";var Fc=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=ui(""),[i,a]=ui(!1),[d,l]=ui(!1),c=C("Nickname",_c),g=kv.useRef(null),u=Rv(v=>v.info.showNicknameDialog),p=A(ci),f=P("adminUrl");Pv(()=>{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(Iv,{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 Av}from"react-redux";import{jsx as xs}from"react/jsx-runtime";var Lv=({children:t})=>{let n=P("locale").replace("-","");return xs(wr.Provider,{value:n,children:t})},Mv=({store:t,customStyles:e={},children:n})=>xs(Av,{store:t,children:xs(Lv,{children:xs(pn.Provider,{value:e,children:n})})}),Ve=Mv;import hi from"classnames";import{useEffect as Vv,useRef as jv,useState as qv}from"react";import{useDispatch as $v,useSelector as je}from"react-redux";import{useState as Nv}from"react";function Hc(t,e){let[n,o]=Nv(()=>{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 Bc=()=>/Mac/i.test(navigator.platform);import _v from"classnames";import{Fragment as Fv,useCallback as gi,useMemo as Uc}from"react";var pi={};G(pi,{enUS:()=>Ov,nlNL:()=>Dv});var Ov={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"}]}]},Dv={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 Kc={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as bs,jsxs as Wc}from"react/jsx-runtime";var mi=(t,e,n)=>o=>bs("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Hv=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=A(pi),i=ie(),a=C("Login",Kc),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=Uc(()=>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}=Uc(()=>({min:mi(a,600,g),hour:mi(a,3600,g),day:mi(a,3600*12,g)}),[]);return Wc("div",{className:_v(t,a.root),children:[r("loginPlease",{login:c?f:p,productName:d}),o&&Wc(Fv,{children:[bs("br",{}),r("snooze",{min:m,hour:y,day:v})]})]})},Cs=Hv;import{useDispatch as Bv}from"react-redux";var zc={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as Vc,jsxs as Uv}from"react/jsx-runtime";var Kv=({title:t})=>{let e=C("SearchTrigger",zc),n=Bv(),o=q();return Uv("button",{type:"button",className:e.root,onClick:()=>{n(ve(!0)),o("open search",{via:"autocomplete-overlay"})},children:[Vc(Zt,{}),Vc("span",{className:e.text,children:t})]})},jc=Kv;var fi={};G(fi,{enUS:()=>Wv,nlNL:()=>zv});var Wv={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"}]},zv={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 qc={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 Gv=({onLogIn:t})=>{var j;let e=C("SuggestionsOverlay",qc),n=A(fi),o=je(Ae),s=je(Ia),r=$v(),i=jv(null),a=P("searchTriggerKey"),d=P("productName"),l=je(cs),c=je(Y),g=je(fa),u=je(Ft),[p,f]=qv(null),m=P("showSearch"),y=P("showTextSuggestions"),v=P("adminUrl"),x=P("isEmbedded"),w=P("suggestionsPlacement"),[T,k]=Hc("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(xc(!E))},O=Ne=>{let Lt=Date.now()+Ne*1e3;k(Lt),R.info(`Snooze until: ${new Date(Lt)}`),r(ot({collapse:!0}))};return Vv(()=>{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(Bc()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>f(null),children:X(jc,{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"})})]})]})},$c=Gv;import wi from"classnames";import{Interweave as NS}from"interweave";import{useCallback as OS,useEffect as DS,useMemo as gu,useRef as _S}from"react";import{connect as FS}from"react-redux";import{useEffect as Qv,useRef as Xv,useState as Jv}from"react";function ws(t){return t.contentEditable==="true"}function Zv(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 Gc(t){let{selectionStart:e,selectionEnd:n}=ws(t)?Zv(t):t;return[e,n]}function Qc(t){let[,e]=Jv(),n=Xv(null);return n.current=Gc(t),Qv(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=Gc(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 Xc(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 Yv}from"react";var eS=["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(eS.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),Yv(o,{children:yi(i,e,n+1)})]}return[...t,...e]}function kt(t){return t.tagName.toLowerCase()==="textarea"}var Jc={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 aS from"classnames";import{Matcher as lS}from"interweave";import{useEffect as dS,useMemo as cS}from"react";import{useEffect as tS,useRef as nS,useState as oS}from"react";function Zc(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=nS(null),[n,o]=oS(!1);return tS(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=Zc((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]=Zc(()=>{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 Yc(t){return t!=null}import sS from"classnames";import{forwardRef as rS,useRef as iS}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 eu}from"react/jsx-runtime";var Ps=rS((s,o)=>{var r=s,{className:t,children:e}=r,n=D(r,["className","children"]);let i=iS(null),a=C("TabCompletion",qe);return eu("div",b(h({ref:ks([i,o]),className:sS(t,a.popoverContentContainer)},n),{children:eu("div",{className:a.popoverContent,children:e})}))});import{jsx as $n,jsxs as gS}from"react/jsx-runtime";var uS=t=>e=>{let n=Fr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},pS=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=C("TabCompletion",qe),i=zo(),a=cS(()=>uS(t.getBoundingClientRect()),[t]),[d,l]=Ts(t);return dS(()=>{l?i.open():i.close()},[l]),gS("span",{children:[$n("mark",{ref:ks([d,i.triggerRef]),className:aS(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 lS{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(Yc);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(pS,{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 mS}from"interweave";import fS from"classnames";import{jsx as tu}from"react/jsx-runtime";var hS=({inputElement:t,children:e})=>{let n=C("TabCompletion",qe),[o,s]=Ts(t);return tu("mark",{ref:o,className:fS(n.matchPlaceholder,{[n.hover]:s}),children:e})},Is=class extends mS{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 tu(hS,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Ci from"classnames";import{Matcher as kS}from"interweave";import{createRef as PS,forwardRef as RS,useCallback as IS,useEffect as cu,useRef as uu,useState as pu}from"react";import{useDispatch as AS,useSelector as bi}from"react-redux";function nu(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 ou}from"react/jsx-runtime";var su=()=>ou("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:ou("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 yS,useEffect as iu,useMemo as vS,useState as au}from"react";import{useDispatch as SS,useSelector as lu}from"react-redux";import xS from"lodash.debounce";var ru={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 bS=3,CS=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),wS=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=bS})=>{let r=C("LinkSearch",ru),[i,a]=au(""),d=SS(),l=lu(nc("url")),c=lu(Ya("URL")),g=vS(()=>c.map(CS),[c]),[u,p]=au(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=yS(xS(w=>{d(mt({query:w,type:"URL",tags:["link-search"]}))},300),[]);return iu(()=>{i&&x(i)},[i]),iu(()=>()=>{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})]})},du=wS;var xi={};G(xi,{enUS:()=>TS,nlNL:()=>ES});var TS={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"}]},ES={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 LS=RS((t,e)=>{let n=C("TabCompletion",qe);return Ce("mark",{ref:e,className:Ci(n.matchSelection)},"selection-start")}),MS=({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=uu(null),u=uu(null),[p,f]=pu(null),m=AS(),y=zo(document.activeElement===o),[v]=pu(()=>document.createRange());y.triggerRef.current=v,cu(()=>()=>v.detach(),[]),cu(()=>{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=IS(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(su,{}),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=nu(d,T);window.open(k,"_blank")},children:Ce("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&Ce(du,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:x,onDismiss:()=>{f(null),y.close()}})]})})]},"selection-end")},Ms=class extends kS{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=PS(),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(LS,{ref:this.startRef}):Ce(MS,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as HS}from"react-redux";import{jsx as en,jsxs as US}from"react/jsx-runtime";var BS=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=C("TabCompletion",Jc),c=P("insertLink"),g=P("addToPersonalCollection"),u=P("showMidSentenceSuggestions"),p=P("inlineSuggestions"),f=Qc(a),m=_S(null),y=HS(Y);DS(()=>{kt(a)&&f&&Xc(a,f)},[f]);let v=OS(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=gu(()=>{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=gu(()=>{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:US("div",{ref:T=>{T!=null&&T.parentElement&&(m.current=T==null?void 0:T.parentElement)},className:l.root,style:w,children:[en(NS,{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")},KS=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}},mu=FS(KS)(BS);import{Fragment as Ax,useEffect as sn,useState as qu}from"react";import{useDispatch as Mi,useSelector as J}from"react-redux";import{createAsyncThunk as fu,createSlice as WS}from"@reduxjs/toolkit";var zS={token:null,interval:null},Ti=fu("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Ei=fu("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Ti()),setInterval(()=>o(Ti()),n)}),hu=WS({name:"passwordlessToken",initialState:zS,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:yu}=hu.actions,vu=hu.reducer;import{createSelector as VS}from"@reduxjs/toolkit";function jS(t){return"buttonText"in t&&"eventName"in t}function Su(t){if(t)return jS(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function qS(t){return t==null?void 0:t.map(e=>Su(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 $S(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}=$S(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 GS(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var xu=VS([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=Su(i.callToAction),d=qS(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:GS(i.code),label:i.code,name:i.name,description:i.name}})}));import{useEffect as QS,useState as XS}from"react";import wu from"classnames";import{jsx as bu}from"react/jsx-runtime";var tn=()=>bu("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:bu("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 Cu={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 Tu}from"react/jsx-runtime";var JS=({entities:t})=>{let e=C("EntitiesWidgetList",Cu),[n,o]=XS(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 QS(()=>{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)=>Tu("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[nn("span",{className:e.entityText,children:a.text}),Tu("span",{className:e.iconWrapper,children:[nn("span",{className:wu(e.icon),children:nn(tn,{})}),nn("span",{className:wu(e.icon,n===d&&e.iconClicked),children:nn(tn,{})})]})]},a.text))})},Eu=JS;import{jsx as ku}from"react/jsx-runtime";var Pu=()=>ku("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:ku("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 ox}from"react";import{useDispatch as sx,useSelector as rx}from"react-redux";var Ru={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Iu={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as YS}from"react/jsx-runtime";var ZS=({size:t=12})=>{let e=C("LoadingSpinner",Iu);return YS("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Au=ZS;import{jsx as Lu}from"react/jsx-runtime";var Mu=()=>Lu("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Lu("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 Nu,jsxs as ex}from"react/jsx-runtime";var Ou=t=>ex("svg",b(h({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[Nu("title",{id:"checkTitle",children:"Check"}),Nu("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:()=>tx,nlNL:()=>nx});var tx={error:[{type:0,value:"Something went wrong"}]},nx={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as $e,jsxs as Du}from"react/jsx-runtime";var ix=3e3,ax=({assistantOptions:t})=>{let e=C("OnDemandAssistants",Ru),n=A(Pi),o=ox(),s=sx(),r=Cn(ce),i=rx(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(),ix)});return i.length===0?null:Du("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&&Du(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(Au,{}),r.state==="done"&&$e(Ou,{"data-testid":"trigger-done"}),r.state==="error"&&$e(Wl,{trigger:$e(Mu,{}),children:n("error")})]})},_u=ax;import{useDispatch as hx,useSelector as yx}from"react-redux";import{useEffect as Fu,useRef as cx,useState as ux}from"react";var Qn={};G(Qn,{enUS:()=>lx,nlNL:()=>dx});var lx={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"}]},dx={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 px=500,gx=100,mx=({content:t,onChange:e,onCopy:n})=>{let o=cx(null),s=C("WidgetCue",Ri);return Fu(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,gx),px);r.style.setProperty("height",`${i}px`)},[t]),we("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},fx=({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]=ux(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 Fu(()=>{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(mx,{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"})]})]})},Hu=fx;import{Fragment as Sx,jsx as Ii}from"react/jsx-runtime";var vx=({cues:t})=>{let e=hx(),n=ie(),o=A(Qn),s=q(),r=yx(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(Sx,{children:g.map(u=>u.isLoading?Ii(qo,{title:u.rule.label.startsWith("__")?o(u.rule.label):u.title},u.rule.id):Ii(Hu,{cue:u,onCallToAction:d,onRemove:i,onCopy:a,onUse:l,onSourceClick:c},u.evaluationId))})},Bu=vx;import{Fragment as xx,useEffect as bx}from"react";var Ku={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 Cx(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Uu=({data:t,schema:e})=>{let n=C("WidgetCustomData",Ku),o=s=>{ke(s)};return bx(()=>{R.info("Custom data",t,e)},[t]),Ge("dl",{className:n.root,children:e.map(s=>{let r=Cx(t,s.path);return Ai(xx,{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 Tx}from"react";var wx=/(https?:\/\/[^\s]+)/,Wu=t=>t.split(" ").find(e=>wx.test(e));import{jsx as on,jsxs as Ds}from"react/jsx-runtime";var Ex=({suggestion:t,lines:e,onUse:n})=>{var g;let o=t.text||t.url||t.message,s=Wu(o),r=A(Un),i=P("showImages"),a=P("fallbackImage"),d=P("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=Tx(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")})]})]})},zu=Ex;import{Fragment as Px,jsx as Vu}from"react/jsx-runtime";var kx=({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 Vu(Px,{children:e.map(s=>Vu(zu,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},ju=kx;var Xn={};G(Xn,{enUS:()=>Rx,nlNL:()=>Ix});var Rx={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"}]},Ix={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 $u=(t,e)=>{let n=J(Y);sn(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Lx=({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")},Mx=()=>{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 $u(()=>{if(s)return e(Ei()),()=>{e(yu())}},[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(Pu,{}),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})})]})},Nx=({title:t,content:e})=>{let n=A(Xn),[o,s]=qu(!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},Ox=()=>{let t=Mi(),e=J(Hn),n=J(Cd),o=J(xu),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]),$u(()=>{e.forEach(({type:l})=>{l==="entities"?t(Se()):co.includes(l)||t(xe(l))})},[t,d,a]),sn(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&R.warn("Received cues, but cues are not configured in widget.")},[e,o]),L(Ax,{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(Eu,{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(Bu,{cues:o})})},l);case"custom-data-banner":return s&&f&&s[f]&&L(Nx,{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(Uu,{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(ju,{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})},Dx=({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(bd("knowledge-assist")),u=J(wd),p=J(Sl),f=J(vl),m=(T=u.find(k=>k.code===p))!=null?T:u[0],[y,v]=qu(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(Lx,{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(Mx,{}),L(Ox,{}),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(_u,{assistantOptions:n})]})]},m==null?void 0:m.code)})})},Gu=Dx;function Yn(t){let e=new Range;return e.selectNodeContents(t),e}function Qu(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&&_s(c)&&c.previousSibling&&(d+=`
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 Xu=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(Xu||{}),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(Xu).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 Ju(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!Ju(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!Ju(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&&Qu(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 _x=["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 Zu(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",_x.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 Zu(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 Yu(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 Fx(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=Yu(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=Fx(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)}},ep=Fi;function Hx(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),{[Hx(n)]:U(t[n])}),{}):t}function Bx(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),{[Bx(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 tp(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 tp(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 tp(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 np;(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={}))})(np||(np={}));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 zx,configureStore as Vx}from"@reduxjs/toolkit";import{createSlice as Kx}from"@reduxjs/toolkit";var op={startTime:null,stopTime:null},sp=t=>t.handlingTime,rp=Kx({name:"handlingTime",initialState:op,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,()=>op)}}),{handlingTimeStart:ip,handlingTimeStop:zs,handlingTimeReset:ap}=rp.actions,lp=rp.reducer;var dp=(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 cp=(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 Ux(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var up=(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 Ux(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 pp=Tt.fulfilled.toString();function Wx(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 gp=t=>e=>n=>o=>{var l;if(o.type!==pp){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=Wx(s,i);o.type===pp&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var jx=zx({assistants:Rl,auth:Sa,conversation:ka,contentTypes:yd,passwordlessToken:vu,entities:qd,handlingTime:lp,info:Qa,input:Ba,settings:Al,profile:Td,search:tl,styleSuggestions:Oc,ui:bc,textSuggestions:rc});function mp(t){return Vx({reducer:jx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(dp()).concat(up({debounce:200})).concat(cp({debounce:500})).concat(gp(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function fp(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 qx=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},$x=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:qx(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:f,end:m}:{start:0,end:m}})),r&&e.dispatch(Ze([]));break}case Nc.toString():{let{keyword:f,suggestion:m,eventMetrics:y}=o.payload,{text:v,selection:x}=s.input,w=fp(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},hp=$x;import{createSelector as Gx}from"@reduxjs/toolkit";function Bi(t){return t.toISOString().replace("T"," ").replace("Z","")}var Qx=(t,e)=>e.version,yp=Gx([Kt,pe,sp,Qx],(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 vp(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 Xx(){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=Xx();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 Jx={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Sp=(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[Jx[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 Zx(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 xp(t){var n,o;return((o=(n=t.widgetInteractiveAssistants)==null?void 0:n.length)!=null?o:0)>0&&Zx(t)?!0:!!t.knowledgeAssistantNew||!!t.knowledgeAssistant}function Yx(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Wi(t){return Yx(t)&&(kt(t)||ws(t))}var Cp,Le=new Map,eb=["bottom","height","left","right","top","width"],bp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:eb.some(n=>t[n]!==e[n]);function wp(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,...wp(e)]:[]}function Tp(t,e){return!t||!e?null:b(h({},t),{top:t.top+e.top,left:t.left+e.left})}var js=!1,Ep=()=>{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();bp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Tp,e.rect):e.rect;bp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Le.size===0){js=!1;return}Cp=window.requestAnimationFrame(Ep)};function zi(t,e){let n=wp(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(Tp,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&&Ep()},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(Cp),js=!1)}}}}var kp,Me=new Map,Pp=()=>{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&&(kp=window.requestAnimationFrame(Pp))};function Rp(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&&Pp()},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(kp)}}}}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 Ip(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=Ip(qs(s)-qs(r)-qs(i)),l=Ip(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=Rp(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 tb(t){return t.offsetParent!==null}function Ap(t){if(!tb(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=Ap(t);e({isVisible:o});let s=setInterval(()=>{let r=Ap(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Lp=(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 nb}from"react/jsx-runtime";var Mp=Lp("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:[hp({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=>Mp.update(f),sendEvent:(f,m)=>this.deepdeskApi.sendEvent(f,m)})]};this.store=mp(c),this.broadcastEvents=new ep({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(Mp.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=Sp(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(Sc(!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(ip()))}handlingTimeStop(){this.state.handlingTime.startTime&&(R.info("Stop handling time"),this.store.dispatch(zs()))}logSendMessage(e){let n=vp(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=yp(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(ap()))}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(Fc,{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(Dc,{})})}));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(mu,{inputElement:e})})}));let p=at(c);return p.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K($c,{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(yc,{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(uc,{})})})),{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(Gu,{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:nb(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:xp(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.14",un.count=0;var Gs=un;function ob(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 sb(t,e){return S(this,null,function*(){let n=yield ob(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 rb(t,e,n){return S(this,null,function*(){yield new it(t).authenticateWithKey(e,n)})}function ib(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function ab(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 lb(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?It(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 db(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 cb(t){let e=document.createDocumentFragment();return t.split(`
13
- `).forEach((n,o)=>{o>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=n.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(n.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(n.slice(r)))}),e}function Np(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):Np(n,e)}function ub(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?db(e):cb(e);n?Np(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{F as Card,rn as ContentEditableInput,it as DeepdeskAPI,Gs as DeepdeskSDK,dn as HTTPClient,rt as InputMediator,Ot as InputType,Js as KeyboardHint,Yp as Label,uo as Locale,Oe as Section,gn as SectionList,De as Sources,M as Suggestion,te as SuggestionList,an as TextAreaInput,Nt as ToggleButton,sb as attachFile,rb as authenticateWithKey,Yn as createFullRange,$s as createOverlayContainer,It as createRangeFromOffsets,Kn as escapeHTML,ib as formatTextMarkup,Hs as getRangeOffsets,Bs as getRangeText,ub as insertCKEditor,ts as isHTML,Wi as isSupportedInputElement,gr as logEvent,lb as updateContentEditable,ab as updateTextArea,vt as useClickOutsideRoot,C as useStyles,$i as waitForElementVisibilityChange};
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 vc}from"react/jsx-runtime";var Xy={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Sc=({className:t,color:e})=>vc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:vc("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:Xy[e||"pink"]})});var xc={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var pi={};$(pi,{enUS:()=>Jy,nlNL:()=>Zy});var Jy={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Zy={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as tv}from"react-redux";import{jsx as gi,jsxs as bc}from"react/jsx-runtime";var Cc=({onLogIn:t})=>{let e=A(pi),n=P("floatingMenu"),o=P("productName"),s=tv(),r=ev(Y),i=C("FloatingMenu",xc);if(r===null||n===!1)return null;let a=()=>{r===!0?s(Se(!0)):t()};return bc("button",{type:"button",className:Yy(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[gi("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),bc("div",{className:i.icon,children:[gi(Sc,{className:i.logo,color:"pink"}),r===!1&&gi(yc,{className:i.lock})]})]})};import{useEffect as Ev,useRef as kv}from"react";import{useDispatch as Pv,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 nv}from"@reduxjs/toolkit";var ov={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},gs=({ui:t})=>t.overlayCollapsed,wc=nv({name:"ui",initialState:ov,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:Tc,setOverlayCollapsedUserOverwrite:Ec}=wc.actions,kc=wc.reducer;var Pc={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as fs}from"react/jsx-runtime";var sv=({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})}),rv=({matches:t,selectedIndex:e})=>{let n=C("StyleSuggestionList",Pc);return fs(te,{children:t.map((o,s)=>fs(sv,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},hs=rv;import{useMemo as xv}from"react";import{Interweave as Mc}from"interweave";import{useEffect as uv,useMemo as pv,useRef as gv,useState as mv}from"react";import{useDispatch as fv,useSelector as Nc}from"react-redux";import{useEffect as iv}from"react";function Ic(t,e,n){iv(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Rc={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 Ac,jsxs as av}from"react/jsx-runtime";var Lc=({title:t})=>av("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Ac("title",{id:"closeTitle",children:t}),Ac("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={};$(mi,{enUS:()=>lv,nlNL:()=>dv});var lv={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},dv={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as Ve,jsxs as Oc}from"react/jsx-runtime";var hv=["search","personal-collection-search","search-autocomplete"];function yv(t,e,n,o={}){var r;let s="";return hv.includes(e)?s=Od(Jr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=Jr(t,n,o),o.placeholders===!0&&(s=Dd(s)),s}var vv=()=>{},Sv=({selected:t,suggestion:e})=>{let n=A(mi),o=P("inlineSuggestions"),s=Nc(ut),[r,i]=mv(!1),a=P("enableSuggestionFeedback"),d=Nc(h=>h.input.text),l=fv(),c=C("TextSuggestion",Rc),g=gv(null),u=e.source==="assistant",p=a&&!u;uv(()=>{let h=setTimeout(()=>{l(Da({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(h)}},[e]),Ic(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=pv(()=>yv(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:Oc("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:vv,children:e.source==="assistant"?Oc("div",{className:c.assistantContainer,children:[Ve(Mc,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),Ve("span",{className:c.assistantBadge,children:n("assistant")})]}):Ve(Mc,{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(Lc,{title:n("close")})})})]})},Dc=Sv;import{jsx as Cv}from"react/jsx-runtime";var bv=({suggestions:t,selectedIndex:e,reverse:n})=>xv(()=>{let s=t.map((r,i)=>Cv(Dc,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ys=bv;var _c={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as wv,createSlice as Tv}from"@reduxjs/toolkit";var Qn={list:{keywordMatches:[]},fetchState:"idle"},vs=t=>t.styleSuggestions.list,Et=wv("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})})),Fc=Tv({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:Hc}=Fc.actions,Bc=Fc.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 Rv}from"react/jsx-runtime";var Iv=()=>{var h;let t=kv(null),e=C("InlineSuggestionsOverlay",_c),n=kt(Le),o=Pv(),s=kt(Y),r=kt(Ht),i=kt(gs),a=P("showTextSuggestions"),d=kt(pt),l=kt(Sn),c=P("showStyleSuggestions"),g=P("showStyleSuggestionList"),u=kt(vs),p=c&&g?Ss((h=u.keywordMatches)!=null?h:[]):[],f=p.length>0,m=a&&d.length>0;return St(()=>{setTimeout(()=>{o(rt({collapse:!0,skipWhenInputFocus:!0}))})}),Ev(()=>{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:Rv("div",{ref:t,className:e.paper,children:[f&&xs(hs,{matches:p,selectedIndex:-1}),m&&xs(te,{children:xs(ys,{suggestions:d,selectedIndex:l})})]})})},Kc=Iv;import Mv,{useState as hi,useEffect as Nv}from"react";var Uc={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 Ov}from"react-redux";var fi={};$(fi,{enUS:()=>Av,nlNL:()=>Lv});var Av={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."}]},Lv={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 Dv,jsx as Ce,jsxs as bs}from"react/jsx-runtime";var Wc=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=hi(""),[i,a]=hi(!1),[d,l]=hi(!1),c=C("Nickname",Uc),g=Mv.useRef(null),u=Ov(v=>v.info.showNicknameDialog),p=A(fi),f=P("adminUrl");Nv(()=>{o&&a(!0)},[o]);let m=()=>{if(!g.current)return;s.trim()?g.current.setCustomValidity(""):g.current.setCustomValidity(p("nicknameDialogError")),g.current.reportValidity()},h=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:h,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(Dv,{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 _v}from"react-redux";import{jsx as Cs}from"react/jsx-runtime";var Fv=({children:t})=>{let n=P("locale").replace("-","");return Cs(Er.Provider,{value:n,children:t})},Hv=({store:t,customStyles:e={},children:n})=>Cs(_v,{store:t,children:Cs(Fv,{children:Cs(gn.Provider,{value:e,children:n})})}),qe=Hv;import bi from"classnames";import{useEffect as Xv,useRef as Jv,useState as Zv}from"react";import{useDispatch as Yv,useSelector as je}from"react-redux";import{useState as Bv}from"react";function zc(t,e){let[n,o]=Bv(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return I.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){I.error(i)}}]}var Vc=()=>/Mac/i.test(navigator.platform);import Wv from"classnames";import{Fragment as zv,useCallback as vi,useMemo as jc}from"react";var yi={};$(yi,{enUS:()=>Kv,nlNL:()=>Uv});var Kv={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"}]}]},Uv={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 qc={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as ws,jsxs as Gc}from"react/jsx-runtime";var Si=(t,e,n)=>o=>ws("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Vv=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=A(yi),i=ae(),a=C("Login",qc),d=P("productName"),l=P("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=jc(()=>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:h,day:v}=jc(()=>({min:Si(a,600,g),hour:Si(a,3600,g),day:Si(a,3600*12,g)}),[]);return Gc("div",{className:Wv(t,a.root),children:[r("loginPlease",{login:c?f:p,productName:d}),o&&Gc(zv,{children:[ws("br",{}),r("snooze",{min:m,hour:h,day:v})]})]})},Ts=Vv;import{useDispatch as qv}from"react-redux";var $c={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as Qc,jsxs as Gv}from"react/jsx-runtime";var jv=({title:t})=>{let e=C("SearchTrigger",$c),n=qv(),o=j();return Gv("button",{type:"button",className:e.root,onClick:()=>{n(Se(!0)),o("open search",{via:"autocomplete-overlay"})},children:[Qc(Yt,{}),Qc("span",{className:e.text,children:t})]})},Xc=jv;var xi={};$(xi,{enUS:()=>$v,nlNL:()=>Qv});var $v={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"}]},Qv={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 Jc={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 it}from"react/jsx-runtime";var eS=({onLogIn:t})=>{var q;let e=C("SuggestionsOverlay",Jc),n=A(xi),o=je(Le),s=je(Oa),r=Yv(),i=Jv(null),a=P("searchTriggerKey"),d=P("productName"),l=je(gs),c=je(Y),g=je(xa),u=je(Ht),[p,f]=Zv(null),m=P("showSearch"),h=P("showTextSuggestions"),v=P("adminUrl"),x=P("isEmbedded"),w=P("suggestionsPlacement"),[T,k]=zc("dd-snooze-until-ms",0),E=l||T>Date.now(),R=je(pt),B=je(Sn),Z=P("showStyleSuggestions"),se=P("showStyleSuggestionList"),N=je(vs),_=Z&&se?Ss((q=N.keywordMatches)!=null?q:[]):[],ke=_.length>0,H=R.filter(Oe=>Oe.source!=="gpt").length,oe=()=>{E&&k(0),r(Ec(!E))},O=Oe=>{let Mt=Date.now()+Oe*1e3;k(Mt),I.info(`Snooze until: ${new Date(Mt)}`),r(rt({collapse:!0}))};return Xv(()=>{H===0&&f(null)},[R,H]),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:[X("div",{style:{flex:1}}),X("div",{className:e.triggersRight,children:X(Ot,{className:e.toggleButton,title:n("collapse"),onClick:oe,isCollapsed:!1})})]}),X("div",{className:e.toggleButtonWrapper,children:X(Ot,{className:e.toggleButton,title:n("open",{productName:d}),onClick:oe,isCollapsed:!0})}),it("div",{className:e.collapsible,children:[g&&it("div",{className:e.loginError,children:[X("span",{className:e.loginErrorMessage,children:g}),X("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(ho()),"aria-label":n("dismissError"),children:n("dismiss")})]}),X(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:[X("div",{style:{flex:1},children:m&&X("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(Vc()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>f(null),children:X(Xc,{title:n("search")})})}),it("div",{className:e.triggersRight,onFocus:()=>{},children:[X("div",{className:bi(!p&&e.hintsHidden,e.hints),children:p}),X(Ot,{className:e.toggleButton,title:n("collapse"),onClick:oe,isCollapsed:!1})]})]}),X("div",{className:e.toggleButtonWrapper,children:X(Ot,{className:e.toggleButton,title:n("open",{productName:d}),onClick:oe,isCollapsed:!0})}),(ke||H>0&&h)&&it("div",{className:e.collapsible,onFocus:()=>{},children:[ke&&X(hs,{matches:_,selectedIndex:-1}),H>0&&h&&X(te,{children:X(ys,{suggestions:R,selectedIndex:B,reverse:w==="above"})})]})]})},Zc=eS;import Ii from"classnames";import{Interweave as BS}from"interweave";import{useCallback as KS,useEffect as US,useMemo as vu,useRef as WS}from"react";import{connect as zS}from"react-redux";import{useEffect as tS,useRef as nS,useState as oS}from"react";function Es(t){return t.contentEditable==="true"}function sS(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 Yc(t){let{selectionStart:e,selectionEnd:n}=Es(t)?sS(t):t;return[e,n]}function eu(t){let[,e]=oS(),n=nS(null);return n.current=Yc(t),tS(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=Yc(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 tu(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 rS}from"react";var iS=["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(iS.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),rS(o,{children:Ci(i,e,n+1)})]}return[...t,...e]}function Pt(t){return t.tagName.toLowerCase()==="textarea"}var nu={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 gS from"classnames";import{Matcher as mS}from"interweave";import{useEffect as fS,useMemo as hS}from"react";import{useEffect as aS,useRef as lS,useState as dS}from"react";function ou(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=lS(null),[n,o]=dS(!1);return aS(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=ou((g,u)=>{let p=e.current;if(!p)return;let f=g/r,m=u/r,h=p.getBoundingClientRect(),v=f>h.x&&f<h.x+h.width&&m>h.y&&m<h.y+h.height;v&&!s?(s=!0,o(!0)):!v&&s&&(s=!1,o(!1))},({clientX:g,clientY:u})=>[g,u]),[d,l]=ou(()=>{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 su(t){return t!=null}import cS from"classnames";import{forwardRef as uS,useRef as pS}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 ru}from"react/jsx-runtime";var Rs=uS((s,o)=>{var r=s,{className:t,children:e}=r,n=D(r,["className","children"]);let i=pS(null),a=C("TabCompletion",Ge);return ru("div",b(y({ref:Is([i,o]),className:cS(t,a.popoverContentContainer)},n),{children:ru("div",{className:a.popoverContent,children:e})}))});import{jsx as Xn,jsxs as SS}from"react/jsx-runtime";var yS=t=>e=>{let n=Kr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},vS=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=C("TabCompletion",Ge),i=jo(),a=hS(()=>yS(t.getBoundingClientRect()),[t]),[d,l]=ks(t);return fS(()=>{l?i.open():i.close()},[l]),SS("span",{children:[Xn("mark",{ref:Is([d,i.triggerRef]),className:gS(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 mS{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(y({},s),{keywordRegex:new RegExp(`\\b${Ps(s.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),n}match(n){let o=this.preparedKeywordMatches.map(r=>{if(this.usedKeywordMatches.has(r))return null;let i=n.match(r.keywordRegex);if(!i)return null;let a=n.charAt(i.index-1),d=n.charAt(i.index+r.keyword.length);return a==="{"&&d==="}"?null:{index:i.index,length:i[0].length,match:i[0],matchString:i[0],suggestion:r.suggestion,preparedKeywordMatch:r,valid:!0}}).filter(su);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(vS,{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 xS}from"interweave";import bS from"classnames";import{jsx as iu}from"react/jsx-runtime";var CS=({inputElement:t,children:e})=>{let n=C("TabCompletion",Ge),[o,s]=ks(t);return iu("mark",{ref:o,className:bS(n.matchPlaceholder,{[n.hover]:s}),children:e})},Ls=class extends xS{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 iu(CS,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Pi from"classnames";import{Matcher as MS}from"interweave";import{createRef as NS,forwardRef as OS,useCallback as DS,useEffect as fu,useRef as hu,useState as yu}from"react";import{useDispatch as _S,useSelector as ki}from"react-redux";function au(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 lu}from"react/jsx-runtime";var du=()=>lu("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:lu("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 wS,useEffect as uu,useMemo as TS,useState as pu}from"react";import{useDispatch as ES,useSelector as gu}from"react-redux";import kS from"lodash.debounce";var cu={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 PS=3,IS=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),RS=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=PS})=>{let r=C("LinkSearch",cu),[i,a]=pu(""),d=ES(),l=gu(ac("url")),c=gu(sl("URL")),g=TS(()=>c.map(IS),[c]),[u,p]=pu(g.length-1),f=P("fallbackImage"),m=w=>{let T=w.target;a(T.value)},h=(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=wS(kS(w=>{d(ft({query:w,type:"URL",tags:["link-search"]}))},300),[]);return uu(()=>{i&&x(i)},[i]),uu(()=>()=>{d(Po())},[]),Ti("div",{className:r.root,children:[It(te,{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(F,{children:[It(F.Image,{src:Ms(w,"small",f||void 0),title:w.title||w.text}),Ti(F.Content,{className:r.content,cropText:!0,children:[It(F.Title,{children:w.title||wi(w.text)}),w.title&&wi(w.text)]}),It(M.Actions,{children:It(M.ActionButton,{label:o,onClick:k=>h(k,w.text)})})]})},w.text))}),It(Fn,{value:i,onChange:m,autoFocus:!0,placeholder:n,onKeyUp:v})]})},mu=RS;var Ei={};$(Ei,{enUS:()=>AS,nlNL:()=>LS});var AS={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"}]},LS={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 FS=OS((t,e)=>{let n=C("TabCompletion",Ge);return we("mark",{ref:e,className:Pi(n.matchSelection)},"selection-start")}),HS=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=A(Ei),i=C("TabCompletion",Ge),a=P("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=hu(null),u=hu(null),[p,f]=yu(null),m=_S(),h=jo(document.activeElement===o),[v]=yu(()=>document.createRange());h.triggerRef.current=v,fu(()=>()=>v.detach(),[]),fu(()=>{let w=t.current,T=g.current;!w||!T||(v.setStart(w,0),v.setEnd(T,0))},[t.current,g.current]),St(()=>{h.close()});let x=DS(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":h.opened?"true":"false",children:s}),h.opened&&we(jt,{className:i.popoverRoot,triggerRef:h.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(du,{}),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=au(d,T);window.open(k,"_blank")},children:we("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&we(mu,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:x,onDismiss:()=>{f(null),h.close()}})]})})]},"selection-end")},Os=class extends MS{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=NS(),this.foundIndex=0,n}match(n){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,s]=this.props.selection;if(o===s)return null;let r=this.foundIndex===0?o:s,i=r>=this.charCount&&r<=this.charCount+n.length?{index:r-this.charCount,length:0,match:"",valid:!0}:null;i&&this.foundIndex++;let a=this.foundIndex===1;return i&&a?this.charCount+=r-this.charCount:this.charCount+=n.length,i?y({isStart:a},i):null}replaceWith(n,o){return o.isStart?we(FS,{ref:this.startRef}):we(HS,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as VS}from"react-redux";import{jsx as tn,jsxs as GS}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",nu),c=P("insertLink"),g=P("addToPersonalCollection"),u=P("showMidSentenceSuggestions"),p=P("inlineSuggestions"),f=eu(a),m=WS(null),h=VS(Y);US(()=>{Pt(a)&&f&&tu(a,f)},[f]);let v=KS(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=vu(()=>{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=vu(()=>{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||!h?null:GS("div",{ref:T=>{T!=null&&T.parentElement&&(m.current=T==null?void 0:T.parentElement)},className:l.root,style:w,children:[tn(BS,{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")},jS=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:h}=o;return{showTabHint:u,showStyleSuggestions:h,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}},Su=zS(jS)(qS);import{Fragment as _x,useEffect as rn,useState as Ju}from"react";import{useDispatch as Fi,useSelector as J}from"react-redux";import{createAsyncThunk as xu,createSlice as $S}from"@reduxjs/toolkit";var QS={token:null,interval:null},Ri=xu("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Ai=xu("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Ri()),setInterval(()=>o(Ri()),n)}),bu=$S({name:"passwordlessToken",initialState:QS,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:Cu}=bu.actions,wu=bu.reducer;import{createSelector as XS}from"@reduxjs/toolkit";function JS(t){return"buttonText"in t&&"eventName"in t}function Tu(t){if(t)return JS(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function ZS(t){return t==null?void 0:t.map(e=>Tu(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 YS(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}=YS(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 ex(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var Eu=XS([Cl,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=Tu(i.callToAction),d=ZS(i.callToActions);return b(y(y(y(y({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:ex(i.code),label:i.code,name:i.name,description:i.name}})}));import{useEffect as tx,useState as nx}from"react";import Iu from"classnames";import{jsx as ku}from"react/jsx-runtime";var nn=()=>ku("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:ku("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 Pu={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 Ru}from"react/jsx-runtime";var ox=({entities:t})=>{let e=C("EntitiesWidgetList",Pu),[n,o]=nx(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 tx(()=>{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)=>Ru("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[on("span",{className:e.entityText,children:a.text}),Ru("span",{className:e.iconWrapper,children:[on("span",{className:Iu(e.icon),children:on(nn,{})}),on("span",{className:Iu(e.icon,n===d&&e.iconClicked),children:on(nn,{})})]})]},a.text))})},Au=ox;import{jsx as Lu}from"react/jsx-runtime";var Mu=()=>Lu("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Lu("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 dx}from"react";import{useDispatch as cx,useSelector as ux}from"react-redux";var Nu={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Ou={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as rx}from"react/jsx-runtime";var sx=({size:t=12})=>{let e=C("LoadingSpinner",Ou);return rx("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Du=sx;import{jsx as _u}from"react/jsx-runtime";var Fu=()=>_u("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:_u("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 Hu,jsxs as ix}from"react/jsx-runtime";var Bu=t=>ix("svg",b(y({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[Hu("title",{id:"checkTitle",children:"Check"}),Hu("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={};$(Mi,{enUS:()=>ax,nlNL:()=>lx});var ax={error:[{type:0,value:"Something went wrong"}]},lx={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as $e,jsxs as Ku}from"react/jsx-runtime";var px=3e3,gx=({assistantOptions:t})=>{let e=C("OnDemandAssistants",Nu),n=A(Mi),o=dx(),s=cx(),r=Tn(ue),i=ux(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 h=f.dynamicThunkObject.conversationQuery;if(h){let v=yield h();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(y(b(y({},t),{assistantCode:u,silent:p}),f.length>0?{attachments:f}:{})),o.current=setTimeout(()=>r.reset(),px)});return i.length===0?null:Ku("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&&Ku(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(Du,{}),r.state==="done"&&$e(Bu,{"data-testid":"trigger-done"}),r.state==="error"&&$e($l,{trigger:$e(Fu,{}),children:n("error")})]})},Uu=gx;import{useDispatch as Cx,useSelector as wx}from"react-redux";import{useEffect as Wu,useRef as hx,useState as yx}from"react";var Zn={};$(Zn,{enUS:()=>mx,nlNL:()=>fx});var mx={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"}]},fx={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 vx=500,Sx=100,xx=({content:t,onChange:e,onCopy:n})=>{let o=hx(null),s=C("WidgetCue",Ni);return Wu(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,Sx),vx);r.style.setProperty("height",`${i}px`)},[t]),Te("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},bx=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s,onSourceClick:r})=>{var h;let i=C("WidgetCue",Ni),a=A(Zn),d=j(),l=P("hasKeyboardInput"),[c,g]=yx(t.text),u=v=>{let x=v?b(y({},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 Wu(()=>{d("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),_s(M,{"data-testid":"cue",children:[Te(F,{children:_s(F.Content,{children:[t.title&&Te(F.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(xx,{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}),(h=t.callToActions)==null?void 0:h.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"})]})]})},zu=bx;import{Fragment as Ex,jsx as Oi}from"react/jsx-runtime";var Tx=({cues:t})=>{let e=Cx(),n=ae(),o=A(Zn),s=j(),r=wx(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(Ex,{children:g.map(u=>u.isLoading?Oi(Qo,{title:u.rule.label.startsWith("__")?o(u.rule.label):u.title},u.rule.id):Oi(zu,{cue:u,onCallToAction:d,onRemove:i,onCopy:a,onUse:l,onSourceClick:c},u.evaluationId))})},Vu=Tx;import{Fragment as kx,useEffect as Px}from"react";var qu={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 Ix(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var ju=({data:t,schema:e})=>{let n=C("WidgetCustomData",qu),o=s=>{Pe(s)};return Px(()=>{I.info("Custom data",t,e)},[t]),Qe("dl",{className:n.root,children:e.map(s=>{let r=Ix(t,s.path);return Di(kx,{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 Ax}from"react";var Rx=/(https?:\/\/[^\s]+)/,Gu=t=>t.split(" ").find(e=>Rx.test(e));import{jsx as sn,jsxs as Fs}from"react/jsx-runtime";var Lx=({suggestion:t,lines:e,onUse:n})=>{var g;let o=t.text||t.url||t.message,s=Gu(o),r=A(zn),i=P("showImages"),a=P("fallbackImage"),d=P("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=Ax(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return Fs(M,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[Fs(F,{children:[i&&t.image&&sn(F.Image,{src:Ms(t,"small",a||void 0),title:t.title}),Fs(F.Content,{children:[t.title&&sn(F.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(F.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")})]})]})},$u=Lx;import{Fragment as Nx,jsx as Qu}from"react/jsx-runtime";var Mx=({lines:t,suggestions:e})=>{let n=ae(),o=(s,r)=>{n.send(He,{text:s,suggestion:b(y({},r),{source:r.source,sourceText:r.text})})};return Qu(Nx,{children:e.map(s=>Qu($u,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},Xu=Mx;var Yn={};$(Yn,{enUS:()=>Ox,nlNL:()=>Dx});var Ox={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"}]},Dx={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 Zu=(t,e)=>{let n=J(Y);rn(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Fx=({onLogIn:t})=>{let e=C("Widget",Rt),n=P("isEmbedded"),o=P("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")},Hx=()=>{let t=A(Yn),e=Fi(),n=C("Widget",Rt),o=P("showSearch"),s=P("isEmbedded"),r=J(Vt("/admin/")),i=ae(),a=P("productName"),d=j();return Zu(()=>{if(s)return e(Ai()),()=>{e(Cu())}},[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(Mu,{}),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})})]})},Bx=({title:t,content:e})=>{let n=A(Yn),[o,s]=Ju(!0);return o?L(De,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:L(te,{withDivider:!0,children:eo(M,{children:[L(F,{children:L(F.Content,{children:L(bt,{content:e})})}),L(M.ButtonsContainer,{children:L(M.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},Kx=()=>{let t=Fi(),e=J(Kn),n=J(Rd),o=J(Eu),s=J(Ga),r=J(as),i=J(cs),a=J(fe),d=J(ge);return rn(()=>{s&&!n&&I.warn("Custom data provided, but no schema.")},[s,n]),Zu(()=>{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")&&I.warn("Received cues, but cues are not configured in widget.")},[e,o]),L(_x,{children:e.map(({type:l,title:c,amount:g,lines:u,schema:p,property:f})=>{var m,h;switch(l){case"entities":return r&&r.length>0&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(Au,{entities:r})},l);case"cues":return o&&o.length>0&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(Vu,{cues:o})})},l);case"custom-data-banner":return s&&f&&s[f]&&L(Bx,{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(te,{withDivider:!0,children:L(ju,{data:s,schema:p})})},l);default:return((h=(m=i[l])==null?void 0:m.suggestions)==null?void 0:h.length)>0&&L(De,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(Xu,{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})},Ux=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"},openAdminFeedback:o})=>{var T;let s=A(Yn),r=C("Widget",Rt),i=Fi(),a=J(Ht),d=J(Y),l=J(vo),c=J(fe),g=J(Id("knowledge-assist")),u=J(Ad),p=J(El),f=J(Tl),m=(T=u.find(k=>k.code===p))!=null?T:u[0],[h,v]=Ju(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(Fx,{onLogIn:t}):d===null?L(_i,{text:s("waiting")}):!l||!c?L(_i,{text:s("waitingForConversation")}):L(zl,{handler:o,children:L(Bi,{children:eo(Zo,{initialQuestion:h,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(Hx,{}),L(Kx,{}),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(Uu,{assistantOptions:n})]})]},m==null?void 0:m.code)})})},Yu=Ux;function no(t){let e=new Range;return e.selectNodeContents(t),e}function ep(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 h=p&&m===o,v=f&&m===r;if(h&&(a=l),v&&(d=l),d!==void 0||((!h||!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+=`
10
+ `;break}!g&&!i&&a===1&&Hs(c)&&c.previousSibling&&(d+=`
11
+ `);let f=u?o:0,m=p?Math.min(r,c.childNodes.length):c.childNodes.length;for(let h=f;h<m&&(l(c.childNodes[h]),a!==2);h++);break}default:break}p&&(a=2)}return l(t),d}var tp=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(tp||{}),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(tp).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 np(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!np(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!np(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&&ep(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 Wx=["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 op(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",Wx.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 op(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 sp(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 zx(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=sp(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(),I.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=zx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(I.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;I.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(y({},s),{channel:this.externalId}))}cleanup(e=!1){var n,o;(n=this.channel)==null||n.close(),this.channel=void 0,e&&((o=this.defaultChannel)==null||o.close(),this.defaultChannel=void 0)}},rp=Wi;function Vx(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(y({},e),{[Vx(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(y({},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 ip(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:(I.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=R=>R instanceof TypeError,retryOnResponse:m=R=>R.status>=500,version:h=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(y({credentials:"include"},v),{headers:y({Accept:"application/json","Content-Type":"application/json"},v.headers)});!d&&this.csrfToken&&(x.headers=b(y({},x.headers),{"X-CSRFToken":this.csrfToken})),typeof h=="string"&&(x.headers=b(y({},x.headers),{"X-Deepdesk-API-Version":h}));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(R=>S(this,null,function*(){return m(R)&&!r.isAborted&&w>0?(yield oo(u),k()):R.status===401&&p===!0&&T===!1?(T=!0,yield this.refreshToken(),k()):R})).catch(R=>S(this,null,function*(){if(f(R)&&!r.isAborted&&w>0)return yield oo(u),k();throw R}))});k().then(R=>S(this,null,function*(){let B=yield ip(R);if(delete this.latestRequestByUrl[i],R.status>=500){s(new Ws("Server Error",B));return}if(R.status===401){s(new Ee("Unauthorized",B));return}if(R.status===403){s(new Ee("Forbidden",B));return}if(R.status===404){s(new Ee("Not Found",B));return}if(R.status>=400){s(new Ee("Bad Request",B));return}l&&zi.set(i,B),o(B)})).catch(R=>{s(R)})})}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,y({method:"POST",body:JSON.stringify(n)},o))}postWithStatus(e,n,o){return this.requestWithStatus(e,y({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,h=D(k,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]),v=b(y({credentials:"include"},h),{headers:y({Accept:"application/json","Content-Type":"application/json"},h.headers)});this.csrfToken&&(v.headers=b(y({},v.headers),{"X-CSRFToken":this.csrfToken})),typeof m=="string"&&(v.headers=b(y({},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 R=yield ip(E);if(delete this.latestRequestByUrl[i],E.status>=500){s(new Ws("Server Error",R));return}if(E.status===401){s(new Ee("Unauthorized",R));return}if(E.status===403){s(new Ee("Forbidden",R));return}if(E.status===404){s(new Ee("Not Found",R));return}if(E.status>=400){s(new Ee("Bad Request",R));return}o({status:E.status,data:R})})).catch(E=>{delete this.latestRequestByUrl[i],s(E)})})}patch(e,n,o){return this.request(e,y({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,y({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,y({method:"DELETE"},n))}};var ap;(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={}))})(ap||(ap={}));function zs(t){return b(y({},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(),I.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",b(y({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(),I.info(`Upserting conversation for session ${e.externalId} and agent ${e.agentId}`);let{status:n,data:o}=yield this.client.postWithStatus("/api/v2/conversations",b(y({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(),I.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 I.info(`Successfully retrieved conversation ${i.id} for session ${e}`),zs(i)})}isConversationSupported(o){return S(this,arguments,function*(e,n={}){I.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(y({},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(y({},d),{[l]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,l)=>(s[l]&&(d[l]=s[l]),d),{});return this.client.post("/api/v2/events",ee(b(y(y({},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 I.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(y({},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(y({},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 y({source:g.source,text:g.text},(u=g.attachments)!=null&&u.length?{attachments:g.attachments.map(r)}:{})}),a=yield this.client.post(s,y({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&&I.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 Qx,configureStore as Xx}from"@reduxjs/toolkit";import{createSlice as jx}from"@reduxjs/toolkit";var lp={startTime:null,stopTime:null},dp=t=>t.handlingTime,cp=jx({name:"handlingTime",initialState:lp,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,()=>lp)}}),{handlingTimeStart:up,handlingTimeStop:qs,handlingTimeReset:pp}=cp.actions,gp=cp.reducer;var mp=(t={})=>{let e=y({onAuthError:_t(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var fp=(t={})=>{let e,n=!0,o=y({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 Gx(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var hp=(t={})=>{let e=y({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 Gx(p,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let h=ut(d);h===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(h))},u?0:e.debounce)),a}};var yp=Et.fulfilled.toString();function $x(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 vp=t=>e=>n=>o=>{var l;if(o.type!==yp){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=$x(s,i);o.type===yp&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var Jx=Qx({assistants:Ol,auth:Ta,conversation:La,contentTypes:wd,passwordlessToken:wu,entities:Zd,handlingTime:gp,info:el,input:Va,settings:_l,profile:Ld,search:il,styleSuggestions:Bc,ui:kc,textSuggestions:cc});function Sp(t){return Xx({reducer:Jx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(mp()).concat(hp({debounce:200})).concat(fp({debounce:500})).concat(vp(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function xp(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 Zx=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},Yx=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(y({},o.meta.arg),{cue:f}));break}case de.toString():{let{start:f,end:m}=s.input.selection;t.emit("select-suggestion",b(y({type:Zx(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:f,end:m}:{start:0,end:m}})),r&&e.dispatch(et([]));break}case Hc.toString():{let{keyword:f,suggestion:m,eventMetrics:h}=o.payload,{text:v,selection:x}=s.input,w=xp(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:h});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:h}=o.payload,v=o.meta.arg.assistantCode;if(t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:f,assistantCode:v,assistantOutput:Il(m),externalConversationId:h,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},bp=Yx;import{createSelector as eb}from"@reduxjs/toolkit";function Vi(t){return t.toISOString().replace("T"," ").replace("Z","")}var tb=(t,e)=>e.version,Cp=eb([Ut,ge,dp,tb],(t,e,n,o)=>{if(!e)return I.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(I.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 wp(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 nb(){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=nb();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 ob={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Tp=(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 I.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[ob[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 I.warn(`No assistant set in profile for conversation event "${e}"`),[]};function sb(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 Ep(t){var n,o;return((o=(n=t.widgetInteractiveAssistants)==null?void 0:n.length)!=null?o:0)>0&&sb(t)?!0:!!t.knowledgeAssistantNew||!!t.knowledgeAssistant}function rb(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Gi(t){return rb(t)&&(Pt(t)||Es(t))}var Pp,Me=new Map,ib=["bottom","height","left","right","top","width"],kp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:ib.some(n=>t[n]!==e[n]);function Ip(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,...Ip(e)]:[]}function Rp(t,e){return!t||!e?null:b(y({},t),{top:t.top+e.top,left:t.left+e.left})}var Gs=!1,Ap=()=>{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();kp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Rp,e.rect):e.rect;kp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Me.size===0){Gs=!1;return}Pp=window.requestAnimationFrame(Ap)};function $i(t,e){let n=Ip(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(Rp,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&&Ap()},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(Pp),Gs=!1)}}}}var Lp,Ne=new Map,Mp=()=>{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&&(Lp=window.requestAnimationFrame(Mp))};function Np(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&&Mp()},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(Lp)}}}}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 Op(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=Op($s(s)-$s(r)-$s(i)),l=Op($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=Np(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),h=un(f.borderBottomWidth),v=p.top+m-u.top,x=u.top+u.height+-(p.top+p.height-h);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 ab(t){return t.offsetParent!==null}function Dp(t){if(!ab(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=Dp(t);e({isVisible:o});let s=setInterval(()=>{let r=Dp(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var _p=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){I.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as K,jsxs as lb}from"react/jsx-runtime";var Fp=_p("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:[bp({broadcast:(f,m,h)=>{this.broadcastEvents.send(f,m,h)},emit:(f,m)=>this.emit(f,m),handleAfterSendMessage:f=>this.handleAfterSendMessage(f),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:f=>this.logSendMessage(f),onUpdateShowTabHint:f=>Fp.update(f),sendEvent:(f,m)=>this.deepdeskApi.sendEvent(f,m)})]};this.store=Sp(c),this.broadcastEvents=new rp({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(Fp.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(Ml(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(Ll(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?(I.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(I.warn("Profile has not been loaded (yet)"),!0):(I.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(y({},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(y({},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(y(y({},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){I.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Tp(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 h,v;let m=yield this.store.dispatch(ue(y(b(y({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: ${(h=m.payload)!=null?h: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 I.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(Tc(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let h=Bt(this.state);if(!h)return;this.store.dispatch($n(!1)),this.store.dispatch(de({text:h.text,suggestion:h,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(g||this.state.input.selectedSuggestionIndex===-1)return;let h=Bt(this.state);if(!h)return;this.store.dispatch(de({text:h.text,suggestion:h,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(g||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let h=Bt(this.state);if(!h)return;this.store.dispatch(de({text:h.text,suggestion:h,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||(I.info("Start handling time"),this.store.dispatch(up()))}handlingTimeStop(){this.state.handlingTime.startTime&&(I.info("Stop handling time"),this.store.dispatch(qs()))}logSendMessage(e){let n=wp(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=Cp(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(pp()))}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){I.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),I.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),I.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()?(I.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Wa(o.metrics))):I.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(Wc,{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){I.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(Kc,{})})}));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(Su,{inputElement:e})})}));let p=dt(c);return p.render(K(qe,{store:this.store,customStyles:s,children:K(Be,{broadcastEvents:this.broadcastEvents,children:K(Zc,{onLogIn:()=>this.loginViaPopup().catch(f=>I.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(Cc,{onLogIn:()=>this.loginViaPopup().catch(g=>I.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(hc,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&I.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){I.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(pd,{data:c}),children:K(Yu,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,openAdminFeedback:d,onLogIn:()=>this.loginViaPopup(l).catch(c=>I.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:lb(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)&&I.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:Ep(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(h){console.error(h),o(h)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");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){I.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){I.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.";I.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.";I.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.16",pn.count=0;var Xs=pn;function db(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 cb(t,e){return S(this,null,function*(){let n=yield db(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 ub(t,e,n){return S(this,null,function*(){yield new lt(t).authenticateWithKey(e,n)})}function pb(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function gb(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 mb(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(`
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?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 fb(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 hb(t){let e=document.createDocumentFragment();return t.split(`
13
+ `).forEach((n,o)=>{o>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=n.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(n.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(n.slice(r)))}),e}function Hp(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):Hp(n,e)}function yb(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?fb(e):hb(e);n?Hp(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{F as Card,an as ContentEditableInput,lt as DeepdeskAPI,Xs as DeepdeskSDK,cn as HTTPClient,at as InputMediator,Dt as InputType,Ys as KeyboardHint,sg as Label,mo as Locale,De as Section,mn as SectionList,_e as Sources,M as Suggestion,te as SuggestionList,ln as TextAreaInput,Ot as ToggleButton,cb as attachFile,ub as authenticateWithKey,no as createFullRange,Qs as createOverlayContainer,At as createRangeFromOffsets,Wn as escapeHTML,pb as formatTextMarkup,Ks as getRangeOffsets,Us as getRangeText,yb as insertCKEditor,ss as isHTML,Gi as isSupportedInputElement,fr as logEvent,mb as updateContentEditable,gb as updateTextArea,St as useClickOutsideRoot,C as useStyles,Zi as waitForElementVisibilityChange};