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

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 Qi=Object.defineProperty,Dp=Object.defineProperties;var _p=Object.getOwnPropertyDescriptors;var no=Object.getOwnPropertySymbols;var Xi=Object.prototype.hasOwnProperty,Ji=Object.prototype.propertyIsEnumerable;var Gi=(t,e,n)=>e in t?Qi(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,h=(t,e)=>{for(var n in e||(e={}))Xi.call(e,n)&&Gi(t,n,e[n]);if(no)for(var n of no(e))Ji.call(e,n)&&Gi(t,n,e[n]);return t},b=(t,e)=>Dp(t,_p(e));var D=(t,e)=>{var n={};for(var o in t)Xi.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&no)for(var o of no(t))e.indexOf(o)<0&&Ji.call(t,o)&&(n[o]=t[o]);return n};var G=(t,e)=>{for(var n in e)Qi(t,n,{get:e[n],enumerable:!0})};var S=(t,e,n)=>new Promise((o,s)=>{var r=d=>{try{a(n.next(d))}catch(l){s(l)}},i=d=>{try{a(n.throw(d))}catch(l){s(l)}},a=d=>d.done?o(d.value):Promise.resolve(d.value).then(r,i);a((n=n.apply(t,e)).next())});import Yi from"classnames";import Up,{createContext as Wp,useContext as Xs,useEffect as zp,useState as Vp}from"react";import Fp,{useContext as Hp}from"react";import Bp from"classnames";var pn=Fp.createContext({});function C(t,e){let r=Hp(pn),{debug:n}=r,s=D(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return b(h({},i),{[a]:Bp(d,l,n?`${t}__${a}`:!1)})},{})}var Zi={root:"dd-4s9wq"};import{jsx as oo,jsxs as Kp}from"react/jsx-runtime";var so=()=>Kp("svg",{className:Zi.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[oo("defs",{children:oo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),oo("title",{children:"Failed loading image"}),oo("path",{className:"cls-1",d:"M15 130.896V16.994c0-1.097.898-1.994 2.007-1.994h150.986A2 2 0 0 1 170 16.994v69.147L133.015 51 87.26 120.377l-35.863-17.758L15 130.896zM2 0C.895 0 0 .887 0 2v166c0 1.105.887 2 2 2h181c1.105 0 2-.887 2-2V2c0-1.105-.887-2-2-2H2zm49 72c11.046 0 20-9.178 20-20.5S62.046 31 51 31s-20 9.178-20 20.5S39.954 72 51 72z",fillRule:"evenodd"})]});var Qs={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as Mt}from"react/jsx-runtime";var ro=Wp(Qs),jp=({title:t,src:e})=>{let n=Xs(ro),[o,s]=Vp(!1);return zp(()=>{s(!1)},[e]),Mt("div",{className:n.imageWrapper,children:e&&!o?Mt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Mt(so,{})})},qp=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=Xs(ro);return Mt("div",{className:Yi(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},$p=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=D(i,["as","cropText","className","children"]);let a=Xs(ro);return Up.createElement(t,h({className:Yi(a.title,n,{[a.contentIsCropped]:e})},s),o)},io=({children:t})=>{let e=C("Card",Qs);return Mt("div",{className:e.root,children:Mt(ro.Provider,{value:e,children:t})})};io.Image=jp;io.Content=qp;io.Title=$p;var F=io;import Gp from"classnames";var ea={root:"dd-llBx9"};import{jsx as Jp}from"react/jsx-runtime";var Qp={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Xp=o=>{var s=o,{className:t,keyCode:e}=s,n=D(s,["className","keyCode"]);let r=C("KeyboardHint",ea);return Jp("span",h({"data-key":Qp[e],className:Gp(t,r.root)},n))},Js=Xp;import Zp from"classnames";var ta={root:"dd-e6HXZ"};import{jsx as tg}from"react/jsx-runtime";var Yp=o=>{var s=o,{className:t,children:e}=s,n=D(s,["className","children"]);let r=C("Label",ta);return tg("span",b(h({},n),{className:Zp(t,r.root),children:e}))},eg=Yp;var na={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Zs,jsxs as og}from"react/jsx-runtime";var ng=s=>{var r=s,{title:t,children:e,type:n}=r,o=D(r,["title","children","type"]);let i=C("Section",na);return og("section",b(h({},o),{className:i.root,"data-section-type":n,children:[t&&Zs("div",{className:i.subTitleContainer,children:Zs("span",{className:i.subtitle,children:t})}),Zs("div",{className:i.suggestions,children:e})]}))},Oe=ng;import dg from"classnames";import{useRef as cg}from"react";import{createContext as sg,useCallback as rg,useContext as ig,useEffect as ag}from"react";import{jsx as lg}from"react/jsx-runtime";var oa=sg(null),sa=({scrollContainerRef:t,children:e})=>{let n=rg(o=>{let s=t.current;if(!s||s.scrollHeight<=s.clientHeight)return;let{top:r}=s.getBoundingClientRect(),{top:i}=o.getBoundingClientRect(),a=s.scrollTop+(i-r);typeof s.scrollTo=="function"?s.scrollTo({top:a}):s.scrollTop=a},[]);return lg(oa.Provider,{value:n,children:e})},ao=t=>{let e=ig(oa);ag(()=>{let n=t.current;n&&e(n)},[])};var ra={root:"dd-uoTXh"};import{jsx as ia}from"react/jsx-runtime";var ug=({className:t,children:e})=>{let n=C("SectionList",ra),o=cg(null);return ia(sa,{scrollContainerRef:o,children:ia("div",{ref:o,className:dg(n.root,t),children:e})})},gn=ug;import mn from"classnames";import pg,{createContext as gg,useCallback as mg,useContext as lt}from"react";var Ys={root:"dd-1g-A9",fadein:"dd-McXxq",isClickable:"dd-CTG8E",isSelected:"dd-yhg27",actions:"dd-Nlm6p",actionsIsFixed:"dd-OK-kw",actionButton:"dd-zbXsQ",dropdownList:"dd-AvwWP",dropdownButton:"dd-piaJi",dropdownItem:"dd-qgkTO",dropdownItemButton:"dd-sTE2D",actionButtonIsPrimary:"dd-mhkWS",actionButtonIsDisabled:"dd-0eKLQ",labels:"dd-QKJu6",label:"dd-aMplE",buttonsContainer:"dd-uRYN4",button:"dd-9UE-x",buttonPrimary:"dd-aYDCB",buttonSecondary:"dd--cpPL",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as fe,jsxs as aa}from"react/jsx-runtime";var Qe=gg(Ys),fg=o=>{var s=o,{fixed:t,children:e}=s,n=D(s,["fixed","children"]);let r=lt(Qe);return fe("div",b(h({},n),{className:mn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function hg(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=D(l,["as","className","icon","title","children","disabled","variant"]);let c=lt(Qe);return aa(t||"button",b(h({type:"button",className:mn(c.button,{[c.buttonWithIcon]:n,[c.buttonDisabled]:r,[c.buttonPrimary]:i==="primary",[c.buttonSecondary]:i==="secondary"},e),title:o,"aria-label":o},a),{children:[n&&fe("span",{className:c.icon,children:n}),s]}))}var yg=({children:t})=>{let e=lt(Qe);return fe("div",{className:e.buttonsContainer,children:t})},vg=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=lt(Qe);return aa("div",{className:mn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,fe("ul",{className:r.dropdownList,children:s})]})},Sg=({index:t,label:e,onClick:n})=>{let o=lt(Qe);return fe("li",{className:o.dropdownItem,children:fe("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},xg=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=lt(Qe);return fe("button",{type:"button",className:mn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:(i=>i.stopPropagation()),disabled:n,"aria-hidden":n,children:s})},bg=({labels:t})=>{let e=lt(Qe);return fe("div",{className:e.labels,children:t.map(n=>fe("span",{className:e.label,children:n},n))})},Xe=pg.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=D(d,["className","selected","onClick","children","as"]);let l=C("Suggestion",Ys),c=mg(g=>{g.preventDefault(),n&&n(g)},[n]);return fe(s,b(h({},r),{ref:i,className:mn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:fe(Qe.Provider,{value:l,children:o})}))});Xe.Labels=bg;Xe.Actions=fg;Xe.ActionButton=xg;Xe.DropdownButton=vg;Xe.DropdownItem=Sg;Xe.ButtonsContainer=yg;Xe.Button=hg;var M=Xe;import Cg from"classnames";var la={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Tg}from"react/jsx-runtime";var wg=({withDivider:t,children:e})=>{let n=C("SuggestionList",la);return Tg("div",{"data-testid":"suggestions-overlay-list",className:Cg(n.root,{[n.isWithDivider]:t}),children:e})},te=wg;import Eg from"classnames";var da={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as er}from"react/jsx-runtime";var kg=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=C("ToggleButton",da);return er("button",{type:"button",className:Eg(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:er("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:er("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},Nt=kg;var ca=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,lo=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var ua=/x-deepdesk-(([a-z0-9\-_])+-version)/,co=["cues","custom-data","custom-data-banner","knowledge-assist"],pa=Intl.DateTimeFormat().resolvedOptions().timeZone,De=(y=>(y.SEARCH="search",y.TEMPLATE="template",y.ELASTIC_SEARCH="search-autocomplete",y.GPT="gpt",y.TRIE="trie",y.TRIE_WITH_TYPOS="trie-with-typos",y.SEMANTIC="semantic",y.TEXT_RECOMMENDATION="text_recommendation",y.URL_RECOMMENDATION="url_recommendation",y.LINK_RECOMMENDATION="link_recommendation",y.PERSONAL_COLLECTION="personal-collection",y.PERSONAL_COLLECTION_SEARCH="personal-collection-search",y.SEARCH_OVERLAY="search-overlay",y.SEARCH_PREVIEW="search-preview",y.SEARCH_URL="search-url",y.STYLE="style",y))(De||{}),Ot=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(Ot||{});import{createContext as Hf,Fragment as Bf,useContext as Kr,useEffect as Kf,useRef as sd,useState as nt}from"react";import{useDispatch as Uf,useSelector as Wf}from"react-redux";import{createAsyncThunk as hn,createSlice as Pg}from"@reduxjs/toolkit";var uo=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(uo||{});var Rg={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Y=t=>t.auth.isLoggedIn;var ga=t=>t.auth.verifyFetchState,ma=t=>t.auth.showLoginOverlay,fa=t=>t.auth.loginError,_e=hn("auth/validate",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),ha=hn("auth/requestLogin",(n,o)=>S(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),tr=hn("auth/loginWithPassword",(o,s)=>S(null,[o,s],function*({username:t,password:e},n){let{deepdeskAPI:r}=n.extra;return r.loginWithPassword(t,e)})),po=hn("auth/logout",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;yield n.logout()})),fn=hn("auth/verifyLoginToken",(n,o)=>S(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),ya=Pg({name:"auth",initialState:Rg,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload},setLoginError(t,e){t.loginError=e.payload},clearLoginError(t){t.loginError=null}},extraReducers:t=>{t.addCase(_e.pending,e=>{e.loginFetchState="loading"}),t.addCase(_e.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(_e.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(tr.pending,e=>{e.loginFetchState="loading",e.loginError=null}),t.addCase(tr.fulfilled,e=>{e.isLoggedIn=!0,e.loginFetchState="done",e.loginError=null,e.showLoginOverlay=!1}),t.addCase(tr.rejected,(e,n)=>{e.loginFetchState="error",e.isLoggedIn=!1,e.loginError=n.error.message==="Bad Request"?"Invalid credentials":"Login failed"}),t.addCase(po.fulfilled,e=>{e.isLoggedIn=!1,e.loginFetchState="idle",e.loginError=null}),t.addCase(po.rejected,e=>{e.isLoggedIn=!1,e.loginFetchState="error"}),t.addCase(fn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(fn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(fn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Dt,setShowLoginOverlay:va,setLoginError:nr,clearLoginError:go}=ya.actions,Sa=ya.reducer;import{createAction as Hg,createSelector as Pa,createSlice as Bg}from"@reduxjs/toolkit";import{diffChars as Kg}from"diff";function xa(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Je(t,e,n=10){let o=typeof t,s=typeof e;if(n===0)throw new Error("Max depth deepEqual, possible circular references?");return o!==s?!1:t==null||o==="string"||o==="number"||o==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>Je(r,e[i],n-1)):xa(t)&&xa(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Je(t[i],e[i],n-1)):!1}function Ig(t){return Math.max(...t.map(e=>e.length))}function Ag(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return b(h({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function ba(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Ig(o);s++){let r=Ag(o.map(a=>a[s]),e),i=o.filter(a=>!r.includes(a[s]));if(i.length>=e)o=i;else return{text:o[0].slice(0,s).join("").replace(/ (\?| |!|\.|,|\n)/g,"$1").trimEnd(),source:"mixed"}}}var Lg=2;function Ca(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=ba(t,Lg);return n&&n.text!==e?n:t[0]}import{createAction as Ng,createAsyncThunk as _t,createSlice as Og}from"@reduxjs/toolkit";var Mg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},R=Mg;var or="deepdesk.widgetAssistantSession";function yn(t){if(!t||typeof sessionStorage=="undefined")return null;try{return sessionStorage.getItem(`${or}:${t}`)}catch(e){return null}}function wa(t,e){if(!(!t||typeof sessionStorage=="undefined"))try{sessionStorage.setItem(`${or}:${t}`,e)}catch(n){}}function Ta(t){if(!(!t||typeof sessionStorage=="undefined"))try{sessionStorage.removeItem(`${or}:${t}`)}catch(e){return}}var Ea={current:null,isSupported:null},z=Ng("resetConversation"),mo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},pe=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},Ft=t=>t.conversation.isSupported,sr=_t("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),fo=_t("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),ho=_t("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),yo=_t("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=pe(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),rr=_t("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.upsertConversation(t)}),ir=_t("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=pe(e.getState());if(!o){R.warn("No current conversation to update messages");return}return n.postMessages(o,t.map(s=>h({},s)))}),Dg=[fo.rejected,ho.rejected,yo.rejected,ir.rejected].map(t=>t==null?void 0:t.toString());function _g(t){return Dg.includes(t.type)}var Fg=Og({name:"conversation",initialState:Ea,reducers:{},extraReducers:t=>{t.addCase(sr.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(fo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(ho.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(rr.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(yo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(z,e=>{var n,o;return Ta((o=(n=e.current)==null?void 0:n.externalId)!=null?o:void 0),Ea}).addMatcher(_g,(e,n)=>{var o;throw R.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),ka=Fg.reducer;var dt={text:"",html:null,suggestionTextStart:0,selection:{start:0,end:0},beforeInputChange:null,mixedSuggestion:null,textSuggestions:[],pinnedSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function ar(t){let{key:e,shiftKey:n,ctrlKey:o,metaKey:s,altKey:r}=t;return{key:e,shiftKey:n,ctrlKey:o,metaKey:s,altKey:r}}var vo=Hg("input/applyImageSuggestion"),Ra=Bg({name:"input",initialState:dt,reducers:{setInput(t,e){var i,a;let{beforeInputChange:n}=t,{text:o,html:s,suggestionTextStart:r}=e.payload;if(t.text=o,t.html=s!=null?s:null,t.suggestionTextStart=o===""?0:Math.max(0,r!=null?r:0),o==="")t.metrics=dt.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:d,shiftKey:l,ctrlKey:c,metaKey:g,altKey:u}=n.keyDown;switch(d){case"Enter":l&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:p}=t,f=Kg(n.text,p);n.text.length-p.length>1&&t.metrics.deletions.push(...f.filter(m=>m.removed).map(m=>m.value)),t.metrics.numCharsDeleted+=n.text.length-p.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(c||g)break;default:if(!c&&!g&&!u){t.metrics.numCharsTyped+=1;let p=((i=n.selection)==null?void 0:i.start)!==void 0&&((a=n.selection)==null?void 0:a.end)!==void 0?n.text.substring(n.selection.start,n.selection.end):null;p&&p.length>0&&(t.metrics.numCharsDeleted+=p.length,t.metrics.deletions.push(p))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(Je(t.selection,e.payload)||(t.selection=e.payload))},commitSuggestion(t,e){let n=e.payload,{text:o,suggestion:{source:s,abVariant:r,abTestName:i,trainingJobs:a,sourceText:d,searchTerm:l,assistantCode:c,text:g},eventMetrics:{inputType:u},replace:p}=n,f=s==="search"||s==="personal-collection-search",m=o.slice(t.text.substring(0,t.selection.start).length);(f||p==="selection")&&(m=o),n.suggestion.source==="search-overlay"&&(m=g),t.metrics.textSuggestions.push({text:m,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:u,sourceText:d,trainingJobs:a||[],searchTerm:f?t.text:l}),t.textSuggestions=[],t.selectedSuggestionIndex=-1},offeredTextSuggestion(t,e){let{text:n,suggestion:{source:o}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===n)||t.metrics.offeredTextSuggestions.push({text:n,source:o})},registerKeyDown(t,e){let{key:n}=e.payload;["Control","Meta","Shift","Alt"].includes(n)||(t.beforeInputChange={text:t.text,selection:t.selection,keyDown:e.payload})},registerKeyUp(t,e){},registerCut(t,e){let{metrics:n}=t,o=e.payload;t.metrics=b(h({},t.metrics),{numCharsCut:n.numCharsCut+o.length,cuts:[...n.cuts,o]})},registerPaste(t,e){let{metrics:n}=t,{text:o,selectionText:s}=e.payload,r=n.numCharsDeleted+(s!=null&&s.length?s.length:0),i=s!=null&&s.length?[...n.deletions,s]:n.deletions;t.metrics=b(h({},t.metrics),{numCharsDeleted:r,deletions:i,numCharsPasted:n.numCharsPasted+o.length,numPaste:n.numPaste+1,pastes:[...n.pastes,o]})},selectNextTextSuggestion(t){let e=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},selectPreviousTextSuggestion(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},selectTextSuggestionByIndex(t,e){t.selectedSuggestionIndex=e.payload},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.mixedSuggestion=null;return}let n=ct({input:t}),o=Ca(e.payload,n);t.mixedSuggestion=o!=null&&o.text.includes(n)?o:null},setPinnedSuggestions(t,e){t.pinnedSuggestions=e.payload},removePinnedSuggestions(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(o=>o.source!==e.payload.source||e.payload.assistantCode&&o.assistantCode!==e.payload.assistantCode?!0:e.payload.text?o.text!==e.payload.text:!1);let n=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex>n-1&&(t.selectedSuggestionIndex=-1)},setMetrics(t,{payload:e}){t.metrics=e},resetMetrics(t){t.metrics=dt.metrics}},extraReducers:t=>{t.addCase(z,e=>{e.mixedSuggestion=dt.mixedSuggestion,e.textSuggestions=dt.textSuggestions,e.selectedSuggestionIndex=dt.selectedSuggestionIndex,e.metrics=dt.metrics})}}),ct=t=>{let{text:e,selection:n,suggestionTextStart:o}=t.input;return e.slice(o,n.end)},Ug=t=>t.input.mixedSuggestion,Wg=t=>t.input.pinnedSuggestions,zg=t=>t.input.textSuggestions,vn=t=>t.input.selectedSuggestionIndex,ut=Pa([zg,Wg],(t,e)=>[...t,...e]),Ht=Pa([ut,Ug,vn],(t,e,n)=>n>-1?t[n]:e),Ia=t=>t.input.selection,{commitSuggestion:le,offeredTextSuggestion:Aa,registerCut:La,registerKeyDown:Ma,registerKeyUp:Na,registerPaste:Oa,selectNextTextSuggestion:Da,selectPreviousTextSuggestion:_a,selectTextSuggestionByIndex:So,setInput:xo,setMetrics:Fa,setPinnedSuggestions:Bt,removePinnedSuggestions:pt,setSelection:bo,setTextSuggestions:Ze,resetMetrics:Ha,sendMessage:gt}=Ra.actions,Ba=Ra.reducer;import{createAsyncThunk as $g,createSelector as Gg,createSlice as Qg}from"@reduxjs/toolkit";import{createAsyncThunk as Co,createSlice as Vg}from"@reduxjs/toolkit";function Ka(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var jg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Kt=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},Ua=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},Wa=t=>{var e;return(e=t.info.customData)!=null?e:null},xn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&Ka(t.visitorTimeZone)?t.visitorTimeZone:pa,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},qg=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],za=Co("info/setAgentNickname",(n,o)=>S(null,[n,o],function*({agentNickname:t},e){var i;let{deepdeskAPI:s}=e.extra,r=yield s.patchMe({nickname:t});return{agentNickname:(i=r==null?void 0:r.nickname)!=null?i:t}})),Sn=Co("info/setAgentInfo",(t,e)=>S(null,null,function*(){var r,i,a;let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=[];if(t.agentId&&t.skipSync!==!0&&s.push(n.postIdentity({externalId:t.agentId})),t.skipSync!==!0){let d=qg.reduce((l,[c,g])=>!o[g]&&c in t?b(h({},l),{[g]:t[c]}):l,{});Object.keys(d).length>0&&s.push(n.patchMe(d).then(l=>o=l))}return s.length>0&&(yield Promise.all(s)),{agentId:t.agentId,agentName:t.agentName,agentNickname:(r=o.nickname)!=null?r:t.agentNickname,agentEmail:(i=o.email)!=null?i:t.agentEmail,agentDefaultLocale:(a=o.defaultLocale)!=null?a:t.agentDefaultLocale,agentTimeZone:t.agentTimeZone}})),lr=Co("info/setAgentSettings",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=h(h({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),dr=Co("info/getAgentSettings",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),Va=Vg({name:"info",initialState:jg,reducers:{setVisitorInfo(t,e){t.visitorInfo=h(h({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload},setShowNicknameDialog(t,e){t.showNicknameDialog=e.payload}},extraReducers:t=>{t.addCase(Sn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=h(h({},e.agentInfo),n.meta.arg)}).addCase(Sn.rejected,e=>{e.fetchState="error"}).addCase(Sn.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(lr.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(dr.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(z,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:ja,setCustomData:qa,setPlatformVariables:$a,setShowNicknameDialog:Ga}=Va.actions,Qa=Va.reducer;function ye(t,e){return e?t==null?(R.warn("replaceVars called with non-string text; upstream contract violation",{keys:Object.keys(e)}),t):Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var wo={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Xa=t=>t.search.isOpen,Ja=t=>t.search.page,cr=t=>t.search.list,Za=t=>t.search.aggregates,Xg=Gg([cr,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),Ya=t=>e=>Xg(e,t),mt=$g("search/getAll",(t,e)=>S(null,null,function*(){var d;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(d=o.conversation.current)==null?void 0:d.profileCode,{platformVariables:r}=o.info;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:i,aggregates:a}=yield n.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:xn(o)});return{results:i.map(l=>b(h(h({},l),l.title&&r?{title:ye(l.title,r)}:{}),{text:ye(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),el=Qg({name:"search",initialState:wo,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=wo.fetchState,t.list=wo.list}},extraReducers:t=>{t.addCase(mt.pending,e=>{e.fetchState="loading"}).addCase(mt.rejected,(e,n)=>{e.fetchState="error",R.error(n.error)}).addCase(mt.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(z,()=>wo)}}),{resetSearch:To,setIsOpen:ve,setPage:Ut}=el.actions,tl=el.reducer;var ur="SetOutputs",Wt="ShowLoginOverlay",bn="UserLoggedIn",Jg="UserLoggedOut",Fe="ApplySuggestion",pr="ApplyImageSuggestion",Zg="ShowCommandPalette",Eo="ShowNicknameDialog",ko="ReduxAction",Yg="RemovePinnedSuggestion",em=t=>({[ur]:e=>{var s,r;let n=(s=t.getState().conversation.current)==null?void 0:s.externalId,o=(r=e==null?void 0:e.payload)==null?void 0:r.externalConversationId;o&&o!==n||t.dispatch(b(h({},e),{isBroadcasted:!0}))},[ko]:e=>{e.isBroadcasted||t.dispatch(b(h({},e),{isBroadcasted:!0}))},[Yg]:e=>{t.dispatch(pt(e))},[Zg]:e=>{t.dispatch(ve(e.isOpen)),e.page&&t.dispatch(Ut(e.page))},[Eo]:e=>{t.dispatch(Ga(e.showNicknameDialog))},[Wt]:e=>{t.dispatch(va(e))},[bn]:()=>{t.dispatch(_e())},[Jg]:()=>{t.dispatch(_e())},[pr]:e=>{t.dispatch(vo({suggestion:e.suggestion}))},[Fe]:e=>{t.dispatch(le(b(h({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),nl=em;import{useDispatch as nm}from"react-redux";import{createAsyncThunk as tm}from"@reduxjs/toolkit";function gr(t){return tm("analytics/logEvent",(e,n)=>{var r,i,a;let o=(i=(r=n.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(a=n.getState())==null?void 0:a.info.agentInfo;return n.extra.deepdeskAPI.sendEvent(e.name,b(h({conversationId:o},s),{data:e.data}))})(t)}function q(){let t=nm();return(e,n)=>S(null,null,function*(){yield t(gr({name:e,data:n}))})}import{useRef as om,useState as mr}from"react";import{useDispatch as sm}from"react-redux";function Cn(t,e){let n=om(t);n.current=t;let[o,s]=mr(void 0),[r,i]=mr(void 0),[a,d]=mr("idle"),l=sm();return{error:r,state:a,data:o,call:u=>S(null,null,function*(){d("loading"),yield l(n.current(u)).unwrap().then(p=>{s(p),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(p))}).catch(p=>{i(p),d("error"),e!=null&&e.onError&&(e==null||e.onError(p))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import ol,{useContext as rm}from"react";import{jsx as im}from"react/jsx-runtime";var sl=ol.createContext(null),He=({broadcastEvents:t,children:e})=>{let n=ol.useMemo(()=>t,[]);return im(sl.Provider,{value:n,children:e})},ie=()=>{let t=rm(sl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as Sm,useContext as xm}from"react";var fr=function(t,e){return fr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,o){n.__proto__=o}||function(n,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(n[s]=o[s])},fr(t,e)};function wn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");fr(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var de=function(){return de=Object.assign||function(e){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},de.apply(this,arguments)};function rl(t,e){var n={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,o=Object.getOwnPropertySymbols(t);s<o.length;s++)e.indexOf(o[s])<0&&Object.prototype.propertyIsEnumerable.call(t,o[s])&&(n[o[s]]=t[o[s]]);return n}function Po(t,e,n){if(n||arguments.length===2)for(var o=0,s=e.length,r;o<s;o++)(r||!(o in e))&&(r||(r=Array.prototype.slice.call(e,0,o)),r[o]=e[o]);return t.concat(r||Array.prototype.slice.call(e))}function Ro(t,e){var n=e&&e.cache?e.cache:gm,o=e&&e.serializer?e.serializer:um,s=e&&e.strategy?e.strategy:lm;return s(t,{cache:n,serializer:o})}function am(t){return t==null||typeof t=="number"||typeof t=="boolean"}function il(t,e,n,o){var s=am(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function al(t,e,n){var o=Array.prototype.slice.call(arguments,3),s=n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.apply(this,o),e.set(s,r)),r}function hr(t,e,n,o,s){return n.bind(e,t,o,s)}function lm(t,e){var n=t.length===1?il:al;return hr(t,this,n,e.cache.create(),e.serializer)}function dm(t,e){return hr(t,this,al,e.cache.create(),e.serializer)}function cm(t,e){return hr(t,this,il,e.cache.create(),e.serializer)}var um=function(){return JSON.stringify(arguments)},pm=(function(){function t(){this.cache=Object.create(null)}return t.prototype.get=function(e){return this.cache[e]},t.prototype.set=function(e,n){this.cache[e]=n},t})(),gm={create:function(){return new pm}},Io={variadic:dm,monadic:cm};var Ao;(function(t){t[t.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",t[t.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",t[t.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",t[t.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",t[t.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",t[t.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",t[t.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",t[t.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",t[t.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",t[t.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",t[t.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",t[t.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",t[t.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",t[t.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",t[t.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",t[t.INVALID_TAG=23]="INVALID_TAG",t[t.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",t[t.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",t[t.UNCLOSED_TAG=27]="UNCLOSED_TAG"})(Ao||(Ao={}));var Lo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ge;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(ge||(ge={}));var Mo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Mo||(Mo={}));function yr(t){return t.type===ge.literal}function vr(t){return t.type===ge.argument}function Tn(t){return t.type===ge.number}function En(t){return t.type===ge.date}function kn(t){return t.type===ge.time}function Pn(t){return t.type===ge.select}function Rn(t){return t.type===ge.plural}function ll(t){return t.type===ge.pound}function In(t){return t.type===ge.tag}function No(t){return!!(t&&typeof t=="object"&&t.type===Mo.number)}function An(t){return!!(t&&typeof t=="object"&&t.type===Mo.dateTime)}function Sr(t){t.forEach(function(e){if(delete e.location,Pn(e)||Rn(e))for(var n in e.options)delete e.options[n].location,Sr(e.options[n].value);else Tn(e)&&No(e.style)||(En(e)||kn(e))&&An(e.style)?delete e.style.location:In(e)&&Sr(e.children)})}function dl(t,e){e===void 0&&(e={}),e=de({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new Lo(t,e).parse();if(n.err){var o=SyntaxError(Ao[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||Sr(n.val),n.val}var ft;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(ft||(ft={}));var Ln=(function(t){wn(e,t);function e(n,o,s){var r=t.call(this,n)||this;return r.code=o,r.originalMessage=s,r}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e})(Error);var xr=(function(t){wn(e,t);function e(n,o,s,r){return t.call(this,'Invalid values for "'.concat(n,'": "').concat(o,'". Options are "').concat(Object.keys(s).join('", "'),'"'),ft.INVALID_VALUE,r)||this}return e})(Ln);var cl=(function(t){wn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),ft.INVALID_VALUE,s)||this}return e})(Ln);var ul=(function(t){wn(e,t);function e(n,o){return t.call(this,'The intl string context variable "'.concat(n,'" was not provided to the string "').concat(o,'"'),ft.MISSING_VALUE,o)||this}return e})(Ln);var ne;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(ne||(ne={}));function mm(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==ne.literal||n.type!==ne.literal?e.push(n):o.value+=n.value,e},[])}function fm(t){return typeof t=="function"}function Mn(t,e,n,o,s,r,i){if(t.length===1&&yr(t[0]))return[{type:ne.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(yr(c)){a.push({type:ne.literal,value:c.value});continue}if(ll(c)){typeof r=="number"&&a.push({type:ne.literal,value:n.getNumberFormat(e).format(r)});continue}var g=c.value;if(!(s&&g in s))throw new ul(g,i);var u=s[g];if(vr(c)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?ne.literal:ne.object,value:u});continue}if(En(c)){var p=typeof c.style=="string"?o.date[c.style]:An(c.style)?c.style.parsedOptions:void 0;a.push({type:ne.literal,value:n.getDateTimeFormat(e,p).format(u)});continue}if(kn(c)){var p=typeof c.style=="string"?o.time[c.style]:An(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:ne.literal,value:n.getDateTimeFormat(e,p).format(u)});continue}if(Tn(c)){var p=typeof c.style=="string"?o.number[c.style]:No(c.style)?c.style.parsedOptions:void 0;p&&p.scale&&(u=u*(p.scale||1)),a.push({type:ne.literal,value:n.getNumberFormat(e,p).format(u)});continue}if(In(c)){var f=c.children,m=c.value,y=s[m];if(!fm(y))throw new cl(m,"function",i);var v=Mn(f,e,n,o,s,r),x=y(v.map(function(k){return k.value}));Array.isArray(x)||(x=[x]),a.push.apply(a,x.map(function(k){return{type:typeof k=="string"?ne.literal:ne.object,value:k}}))}if(Pn(c)){var w=c.options[u]||c.options.other;if(!w)throw new xr(c.value,u,Object.keys(c.options),i);a.push.apply(a,Mn(w.value,e,n,o,s));continue}if(Rn(c)){var w=c.options["=".concat(u)];if(!w){if(!Intl.PluralRules)throw new Ln(`Intl.PluralRules is not available in this environment.
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
+ `,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 mm(a)}function hm(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 ym(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=hm(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 vm(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=ym(t.formats,o),this.formatters=s&&s.formatters||vm(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 bm(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var Cm="dummy",wr=Sm(null);function A(t){var o;let e=xm(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=bm(n,s);return i?new Cr(i).format(r):(e!==Cm&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as fl,createAsyncThunk as Er,createSlice as Tm}from"@reduxjs/toolkit";import{Marked as wm}from"marked";var Oo=(t,e)=>{let n=[],o=new wm,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}})),RT=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=Tm({name:"assistants",initialState:ml,reducers:{resetCues(t){t.cues=[]},setActiveAssistantCode(t,e){t.activeAssistantCode=e.payload},setWidgetAssistantSessionId(t,e){t.widgetAssistantSessionId=e.payload},registerAssistantThreadId(t,e){let{assistantCode:n,threadId:o}=e.payload;t.assistantThreads[n]={threadId:o},o>=t.nextLocalThreadId&&(t.nextLocalThreadId=o+1)},resetAssistantThread(t,e){let n=t.assistantThreads[e.payload.assistantCode];n&&(delete t.threads[n.threadId],delete t.assistantThreads[e.payload.assistantCode])},removeCueByCode(t,e){t.cues=t.cues.filter(n=>n.code!==e.payload.code)},removeThreadById(t,e){delete t.threads[e.payload]},receiveChunk(t,e){let{code:n,name:o,payload:s,evaluationId:r}=e.payload,i=t.cues.findIndex(a=>a.code===n);i!==-1?t.cues[i].response+=s.text:t.cues.push({code:n,name:o,evaluationId:r,response:s.text})},userNotification(t,e){let n=t.cues.find(c=>c.code===e.payload.code),o=t.cues.filter(c=>c.code!==e.payload.code),{code:s,name:r,evaluationId:i,payload:a}=e.payload,{callToAction:d}=a,l=a.sources!==void 0?a.sources.filter(c=>!!c.url):n==null?void 0:n.sources;t.cues=[...o,b(h({code:s,name:r,evaluationId:i,response:a.message,editable:a.editableMessage},l!=null&&l.length?{sources:l}:{}),{callToAction:d&&{label:d.displayName,event:d.onClickEvent,value:d.eventPayload}})]}},extraReducers:t=>{t.addCase(ce.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&R.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(ce.rejected,(e,n)=>{var s;R.warn((s=n.error)==null?void 0:s.message);let o=e.pending.indexOf(n.meta.arg.assistantCode);o!==-1&&e.pending.splice(o,1)}).addCase(ce.fulfilled,(e,n)=>{let o=e.pending.indexOf(n.meta.arg.assistantCode);if(o!==-1&&e.pending.splice(o,1),n.meta.arg.skipState)return;let{evaluationId:s,output:r,externalConversationId:i,currentExternalIdAtRequest:a}=n.payload;if(i&&a&&i!==a)return;let d=n.meta.arg.silent?r.filter(u=>u.code!==n.meta.arg.assistantCode):r,l=d.map(u=>u.code),c=e.cues.filter(u=>!l.includes(u.code)),g=d.map(u=>h(b(h({},u),{evaluationId:s}),i?{externalConversationId:i}:{}));e.cues=[...c,...g]}).addCase(Nn.fulfilled,(e,n)=>{let a=n.payload,{threadId:o,externalConversationId:s,currentExternalIdAtRequest:r}=a,i=D(a,["threadId","externalConversationId","currentExternalIdAtRequest"]);s&&r&&s!==r||(e.threads[o]=[...e.threads[o]||[],i])}).addCase(z,()=>ml)}}),{removeCueByCode:_o,resetCues:IT,removeThreadById:Tl,receiveChunk:El,userNotification:kl,setActiveAssistantCode:Pr,setWidgetAssistantSessionId:Rr,registerAssistantThreadId:Ir,resetAssistantThread:Pl}=wl.actions,Rl=wl.reducer;import{createSlice as Em}from"@reduxjs/toolkit";import{useSelector as km}from"react-redux";var Pm={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,signInViaPopup:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showStyleSuggestionList:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,addToPersonalCollection:!1,inlineSuggestions:!1,autoSelectSuggestion:!1,suggestionsPlacement:"above",floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Ar={showSearch:!1,showImageSearch:!1,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,recommendTextSuggestions:!0},Il=Em({name:"settings",initialState:Pm,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}},extraReducers:t=>{t.addCase(z,e=>{Object.assign(e,Ar)})}}),{set:On}=Il.actions,ht=t=>e=>e.settings[t],P=t=>km(ht(t)),Al=Il.reducer;function ke(t){let e=document.createElement("textarea");e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),e.remove()}import Ko from"classnames";import{useState as Om}from"react";import{jsx as Ll}from"react/jsx-runtime";var Fo=t=>Ll("svg",b(h({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ll("path",{fillRule:"evenodd",d:"M6.57086468,14.9173453 C6.38997052,14.9711236 6.19835748,15 6,15 L4,15 C2.8954305,15 2,14.1045695 2,13 L2,4 C2,2.8954305 2.8954305,2 4,2 L6,2 C6.68685475,2 7.29284112,2.34623869 7.65294381,2.87370078 C7.95642355,2.67736738 8.29504785,2.51351337 8.66312366,2.3818197 C9.50544052,2.08044754 10.3408482,1.9879107 10.9989281,1.99971266 C11.0150698,2.00005426 13.3487605,2.00015005 18,2 C20.7551411,2 22,6.05643086 22,12 C22,13.6824804 20.8695981,15 19,15 L15.9269768,15 C15.9359266,15.0245465 15.9451954,15.0497804 15.9547911,15.0757271 C16.007193,15.2174219 16.2391583,15.8256341 16.2970775,15.9810953 C16.4872151,16.4914441 16.6259612,16.9026411 16.7382242,17.3098712 C16.9079007,17.9253665 17,18.4798886 17,19 C17,20.4720069 16.091867,21.3862822 14.748281,21.777514 C14.1422801,21.9539723 13.6147967,22.0000922 13.0076976,22.0000008 L12.5204954,22 L12.2202699,21.6261158 C11.2556275,20.4248034 7.64562469,16.4822788 6.57086468,14.9173453 Z M8,13 C8,13.2401953 8.04443154,13.4528921 8.14171093,13.6800176 C8.40663864,14.2985643 11.914268,18.1371493 13.4599624,19.9848695 C13.7113931,19.9660111 13.9483736,19.9273712 14.1891338,19.8572655 C14.7621788,19.6904035 15,19.4509737 15,19 C15,18.6834183 14.9359344,18.2976852 14.8101464,17.8413935 C14.7161494,17.500423 14.5944107,17.1396301 14.4229225,16.6793379 C14.3689242,16.5344009 14.1358033,15.923159 14.0789589,15.7694517 C13.9489218,15.4178313 13.8632547,15.1589343 13.8046536,14.9236885 C13.5555377,13.9236468 13.8054549,13 15,13 L19,13 C19.6912225,13 20,12.6401099 20,12 C20,7.20925475 19.015127,4 18,4 C15.9322103,4 15.9322103,4 10.9655994,3.99940813 C10.5253746,3.99154158 9.91062406,4.05963657 9.33687634,4.2649175 C8.45196659,4.58152894 8,5.09776992 8,6 L8,13 Z M4,4 L4,13 L6,13 L6,4 L4,4 Z"})}));import{jsx as Ml}from"react/jsx-runtime";var Nl=t=>Ml("svg",b(h({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ml("path",{fillRule:"evenodd",d:"M7.65336736,21.1256786 C7.2933164,21.6534897 6.68712411,22 6,22 L4,22 C2.8954305,22 2,21.1045695 2,20 L2,11 C2,9.8954305 2.8954305,9 4,9 L6,9 C6.198171,9 6.38961023,9.02882212 6.57035446,9.08250314 C7.6444817,7.51807482 11.2554748,3.57449216 12.2202699,2.37298955 L12.5204954,1.99910538 L13,1.99910538 C13.6147967,1.99901314 14.1422801,2.04513312 14.748281,2.22159137 C16.091867,2.61282321 17,3.52709845 17,4.99910538 C17,5.51921677 16.9079007,6.07373891 16.7382242,6.68923415 C16.6259612,7.09646424 16.4872151,7.50766133 16.2970775,8.01801005 C16.2391583,8.17347129 16.007193,8.78168345 15.9547911,8.92337824 C15.9451954,8.94932503 15.9359266,8.9745589 15.9269768,8.99910538 L19,8.99910538 C20.8695981,8.99910538 22,10.316625 22,11.9991054 C22,17.9426745 20.7551411,21.9991054 18,21.9991054 L11.0344006,21.9985135 C10.3408482,22.0111947 9.50544052,21.9186578 8.66312366,21.6172857 C8.29521907,21.4856533 7.9567386,21.3218904 7.65336736,21.1256786 Z M8,17.9991054 C8,18.9013355 8.45196659,19.4175764 9.33687634,19.7341879 C9.91062406,19.9394688 10.5253746,20.0075638 10.963066,19.9997143 C10.9703499,19.9995545 10.9703499,19.9995545 11,19.9991054 L18,19.9991054 C19.015127,19.9991054 20,16.7898506 20,11.9991054 C20,11.3589955 19.6912225,10.9991054 19,10.9991054 L15,10.9991054 C13.8054549,10.9991054 13.5555377,10.0754586 13.8046536,9.07541689 C13.8632547,8.84017106 13.9489218,8.5812741 14.0789589,8.22965366 C14.1358033,8.07594642 14.3689242,7.46470447 14.4229225,7.31976744 C14.5944107,6.85947528 14.7161494,6.4986824 14.8101464,6.1577119 C14.9359344,5.70142019 15,5.31568707 15,4.99910538 C15,4.54813166 14.7621788,4.30870189 14.1891338,4.1418399 C13.9483736,4.07173418 13.7113931,4.0330943 13.4599624,4.01423587 C11.914268,5.86195611 8.40663864,9.70054105 8.14171093,10.3190878 C8.04443154,10.5462133 8,10.7589101 8,10.9991054 L8,17.9991054 Z M4,11 L4,20 L6,20 L6,11 L4,11 Z"})}));function Ye(t,e){var s;let n=t.cloneNode(!0);n.style.top=`${t.offsetTop}px`,n.style.left=`${t.offsetLeft}px`,n.style.position="absolute",e.split(" ").forEach(r=>{n.classList.add(r)}),n.addEventListener("animationend",()=>n.remove()),(s=t.parentElement)==null||s.appendChild(n)}var Lr={};G(Lr,{enUS:()=>Rm,nlNL:()=>Im});var Rm={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Im={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Ol={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};var Dl=({conversationId:t,evaluationId:e,type:n,assistantCode:o,contentType:s},r,i)=>{let a=new URLSearchParams;return t!=null&&a.set("conversationId",String(t)),e&&a.set("evaluationId",e),a.set("type",n),o&&a.set("assistantCode",o),a.set(s,r),i!==void 0&&a.set("data",i),`/admin/feedback?${a.toString()}`},Ho=t=>{let e=t.content,n=Dl(t,e,t.data),o=encodeURIComponent(n).length;for(;o>3e3&&e.length>0;){let s=Math.max(0,Math.floor(e.length*3e3/o)-1);e=t.content.slice(0,s),n=Dl(t,e?`${e}\u2026`:"",t.data),o=encodeURIComponent(n).length}return n};import{useSelector as Nm}from"react-redux";import{createContext as Am,useContext as Lm}from"react";import{jsx as Mm}from"react/jsx-runtime";var _l=Am(null),Fl=({handler:t,children:e})=>Mm(_l.Provider,{value:t!=null?t:null,children:e}),Hl=()=>Lm(_l);var zt=t=>e=>{let{passwordlessToken:{token:n},settings:{isEmbedded:o,adminUrl:s}}=e,r=s||window.location.origin;return o&&!n?null:o&&n?`${r}/apis/admin/session/passwordless/login/?token=${n}&redirect=${encodeURIComponent(t)}`:`${r}${t}`};function Bo(t){let e=P("enableFeedbackForm"),n=Hl(),o=Nm(zt(t));return e?n?{mode:"custom-handler",open:()=>n(t)}:o?{mode:"passwordless-link",href:o}:{mode:"disabled"}:{mode:"disabled"}}import{useSelector as Dm}from"react-redux";import{jsx as et,jsxs as Fm}from"react/jsx-runtime";var _m=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o})=>{let s=C("FeedbackThumbs",Ol),r=Dm(pe),i=Ho({conversationId:r,evaluationId:n,type:o,assistantCode:t,contentType:"assistantOutput",content:e}),a=Bo(i),d=A(Lr),l=q(),[c,g]=Om(null),u=m=>{l("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:m})},p=m=>{m.stopPropagation(),Ye(m.target,s.fadeup),g("up"),u("up")},f=m=>S(null,null,function*(){m.stopPropagation(),Ye(m.target,s.fadedown),g("down"),u("down"),a.mode==="custom-handler"&&(yield a.open())});return Fm("div",{className:s.thumbs,children:[et(M.Button,{title:d("thumbsUp"),onClick:p,icon:et(Nl,{}),className:Ko(s.thumbsUp,c==="up"&&s.selected),disabled:!!c}),a.mode==="custom-handler"?et(M.Button,{title:d("thumbsDown"),onClick:f,icon:et(Fo,{}),className:Ko(s.thumbsDown,c==="down"&&s.selected),disabled:!!c}):a.mode==="passwordless-link"?et(M.Button,{as:"a",title:d("thumbsDown"),href:a.href,target:"_blank",rel:"noreferrer",onClick:f,icon:et(Fo,{}),className:Ko(s.thumbsDown,c==="down"&&s.selected),disabled:!!c}):et(M.Button,{title:d("thumbsDown"),onClick:f,icon:et(Fo,{}),className:Ko(s.thumbsDown,c==="down"&&s.selected),disabled:!!c})]})},Uo=_m;import xf from"dompurify";import{marked as bf}from"marked";import{Fragment as Yl,useMemo as Cf,useRef as wf,useState as Tf}from"react";import{useState as of}from"react";import{FloatingFocusManager as Hm,FloatingPortal as Bm,autoUpdate as Km,flip as Um,offset as Wm,safePolygon as zm,shift as Vm,useClick as jm,useDismiss as qm,useFloating as $m,useHover as Gm,useInteractions as Qm,useMergeRefs as Kl,useRole as Xm}from"@floating-ui/react";import*as Pe from"react";var Wo={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as tt,jsxs as Bl}from"react/jsx-runtime";function Jm({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Pe.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=$m({placement:e,open:d,onOpenChange:l,whileElementsMounted:Km,middleware:[Wm(5),Um({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),Vm({padding:10})]}),g=c.context,u=jm(g,{enabled:s==null}),p=qm(g),f=Xm(g),m=Gm(g,{enabled:o!=null?o:!1,handleClose:zm()}),y=Qm([u,p,f,m]);return Pe.useMemo(()=>b(h(h({open:d,setOpen:l},y),c),{modal:n,tooltip:o}),[d,l,y,c,n,o])}var Ul=Pe.createContext(null),Mr=()=>{let t=Pe.useContext(Ul);if(t==null)throw new Error("Popover components must be wrapped in <Popover />");return t},yt=o=>{var s=o,{children:t,modal:e=!1}=s,n=D(s,["children","modal"]);let r=Jm(h({modal:e},n));return tt(Ul.Provider,{value:r,children:t})};function Zm(o){var s=o,{as:t,children:e}=s,n=D(s,["as","children"]);let r=Mr(),i=t||"button",a=e.ref,d=Kl([r.refs.setReference,a]);return tt(i,b(h(h({ref:d},i==="button"||t===void 0||t==="button"?{type:"button"}:{}),r.getReferenceProps(n)),{children:e}))}var Ym=Pe.forwardRef(function(s,o){var r=s,{style:e}=r,n=D(r,["style"]);var c;let l=Mr(),{context:i}=l,a=D(l,["context"]),d=Kl([a.refs.setFloating,o]);return i.open?tt(Bm,{children:tt(Hm,{context:i,modal:a.modal,disabled:(c=n.disableFocusManager)!=null?c:a.tooltip,children:tt("div",b(h({ref:d,style:h(b(h({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function ef(s){var r=s,{as:t,children:e,onClick:n}=r,o=D(r,["as","children","onClick"]);let{setOpen:i}=Mr();return tt(t||"button",b(h({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function Wl({trigger:t,children:e,placement:n="top"}){return Bl(yt,{tooltip:!0,placement:n,children:[Bl(yt.Content,{className:Wo.tooltip,children:[e,tt("div",{className:Wo.arrow})]}),tt(yt.Trigger,{className:Wo.tooltipTrigger,children:t})]})}yt.Trigger=Zm;yt.Content=Ym;yt.Button=ef;var V=yt;var Nr={};G(Nr,{enUS:()=>tf,nlNL:()=>nf});var tf={showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}],showLess:[{type:0,value:"Show less"}]},nf={showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}],showLess:[{type:0,value:"Toon minder"}]};var zl={sources:"dd-cNsGl",source:"dd-LoJ6U",tooltip:"dd-7ZGu9",linkContent:"dd-O2IoN",showMoreSources:"dd-ev8Yr"};import{jsx as Vt,jsxs as jl}from"react/jsx-runtime";var Vl=3,sf=({sources:t,onClick:e,sourceTestId:n="assistant-source"})=>{let o=A(Nr),s=C("AssistantSources",zl),[r,i]=of(!1),a=t.filter(c=>!!c.url),d=r?a:a.slice(0,Vl),l=a.length>Vl;return d.length===0?null:jl("ul",{className:s.sources,children:[d.map(c=>Vt("li",{className:s.source,"data-testid":n,children:jl(V,{tooltip:!0,placement:"top-start",children:[Vt(V.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:c.url,onClick:g=>{g.stopPropagation(),e==null||e(c)},children:Vt("span",{className:s.linkContent,children:c.name})}),c.url&&Vt(V.Content,{className:s.tooltip,children:decodeURIComponent(c.url)})]})},c.name)),l&&Vt("li",{className:s.source,children:Vt("button",{type:"button",className:s.showMoreSources,onClick:()=>i(c=>!c),children:r?o("showLess"):o("showMore",{amount:a.length-d.length})})})]})},ql=sf;import Jl from"classnames";import{createRef as hf,useCallback as Dr,useMemo as yf,useRef as vf,useState as Sf}from"react";import{useState as rf,useLayoutEffect as af}from"react";var lf=["bottom","height","left","right","top","width"],df=(t={},e={})=>lf.some(n=>t[n]!==e[n]),Be=new Map,$l,Gl=()=>{let t=[],e=[];Be.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();df(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{Be.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),$l=window.requestAnimationFrame(Gl)};function cf(t,e){return{observe(){let n=Be.size===0;if(Be.has(t)){let o=Be.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else Be.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&Gl()},unobserve(){let n=Be.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Be.delete(t),Be.size||cancelAnimationFrame($l)}}}}function Or(t){let[e,n]=rf(null);return af(()=>{if(!t.current)return;let o=cf(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as pf,useLayoutEffect as gf,useState as mf}from"react";import{createPortal as ff}from"react-dom";import{useEffect as uf}from"react";function vt(t){uf(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function St(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var Ql={root:"dd-r-dgo"};var Xl=({children:t,parentNode:e})=>{let[n,o]=mf(null),s=pf(pn);return gf(()=>{let r=document.createElement("div");return St(r),r.classList.add(Ql.root),s!=null&&s.portalRootNode&&r.classList.add(s==null?void 0:s.portalRootNode),(e||document.body).appendChild(r),o(r),()=>{r.isConnected&&r.remove()}},[]),n?ff(t,n):null};var Re={ref:"dd-iz-KP",root:"dd-vEMon",positionAbove:"dd-mUCxM",positionBelow:"dd-7oZI7",positionLeft:"dd-BiWvD",positionRight:"dd-JIWea",alignStart:"dd-5ivu6",alignCenter:"dd-rnVkP",alignEnd:"dd-gZBp4"};import{jsx as _r}from"react/jsx-runtime";var zo=(t=!1)=>{let[e,n]=Sf(t),o=Dr(()=>n(!0),[]),s=Dr(()=>n(!1),[]),r=Dr(()=>n(a=>!a),[]),i=vf(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function Fr(t,e=null,n=0){if(!t)return{display:"none"};let o=e?t.top-e.top<0||t.top<e.top-n?e.top-n:t.top+t.height>e.top+e.height+n?e.top+e.height+n-t.height:t.top:t.top,s=e?t.left<e.left-n?e.left-n:t.left+t.width>e.left+e.width+n?e.left+e.width+n-t.width:t.left:t.left;return{top:o,left:s,height:t.height,width:t.width}}var jt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=hf(),position:o="above",align:s="center",children:r,toStyle:i=Fr,parentNode:a}=c,d=D(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let g=Or(e),u=Or(n),p=yf(()=>i(g,u,0),[g,u]);return _r(Xl,{parentNode:a,children:_r("div",b(h({className:Jl(Re.ref,{[Re.positionAbove]:o==="above",[Re.positionBelow]:o==="below",[Re.positionLeft]:o==="left",[Re.positionRight]:o==="right",[Re.alignStart]:s==="start",[Re.alignCenter]:s==="center",[Re.alignEnd]:s==="end"}),style:p},d),{role:"dialog",children:_r("div",{className:Jl(t,Re.root),children:r})}))})};var Zl={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",arrow:"dd-cv33T",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{jsx as qt,jsxs as Vo}from"react/jsx-runtime";function Ef(t){return`<button type="button" data-copy-icon class=${t}><svg version="1.1" x="0px" y="0px" viewBox="0 0 115.77 122.88" width="10px" height="10px" fill="black"><g><path d="M89.62,13.96v7.73h12.19h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02v0.02 v73.27v0.01h-0.02c-0.01,3.84-1.57,7.33-4.1,9.86c-2.51,2.5-5.98,4.06-9.82,4.07v0.02h-0.02h-61.7H40.1v-0.02 c-3.84-0.01-7.34-1.57-9.86-4.1c-2.5-2.51-4.06-5.98-4.07-9.82h-0.02v-0.02V92.51H13.96h-0.01v-0.02c-3.84-0.01-7.34-1.57-9.86-4.1 c-2.5-2.51-4.06-5.98-4.07-9.82H0v-0.02V13.96v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07V0h0.02h61.7 h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02V13.96L89.62,13.96z M79.04,21.69v-7.73v-0.02h0.02 c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v64.59v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h12.19V35.65 v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02 h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02 v0.02c0.91,0,1.75-0.39,2.37-1.01c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z"/></g></svg></button>`}function Hr(t){var n,o;let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(s=>s.remove()),(o=(n=e.textContent)==null?void 0:n.trim())!=null?o:""}function kf(t){return t.replace(/\r\n/g,`
5
+ `)}var Pf=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s,sources:r,onSourceClick:i})=>{let a=C("Markdown",Zl),d=wf(null),[l,c]=Tf(null),g=Cf(()=>{let v=bf.parse(kf(t));return xf.sanitize(v.toString()).replaceAll("</code>",`${Ef(a.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),u=v=>{var T;let x=v.target,w=!!((T=d.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(x.tagName)){c(null);return}l||w&&x.tagName!=="CODE"||!w&&x!==d.current||(x.addEventListener("mouseleave",()=>c(null),{once:!0}),c(x))},p=()=>{if(!l)return;c(null);let v=l.querySelector("button");v&&(Ye(v,a.fadeup),o==null||o(Hr(l)))},f=v=>{let x=v.target,w=x instanceof HTMLElement?x:null;if(x instanceof Element?x.closest("a"):null){v.stopPropagation();return}w&&"copyIcon"in w.dataset&&(Ye(w,a.fadeup),o==null||o(Hr(w.parentElement)))},m=()=>{!l||!s||(c(null),s(Hr(l)))},y=v=>{if(v===null)return;let x=v.getBoundingClientRect();x.left<0?v.style.transform=`translateX(${-x.left+2}px)`:x.right>window.innerWidth&&(v.style.transform=`translateX(${window.innerWidth-x.right-2}px)`)};return Vo(Yl,{children:[l&&(o||s)&&Vo(jt,{triggerRef:{current:l},className:a.popover,parentNode:l,children:[Vo("div",{className:a.options,ref:y,children:[o&&(l==null?void 0:l.tagName)==="CODE"&&qt("button",{type:"button",className:a.option,onClick:p,children:n}),s&&Vo(Yl,{children:[qt("div",{className:a.divider}),qt("button",{type:"button",className:a.option,onClick:m,children:e})]})]}),qt("div",{className:a.arrow})]}),qt("div",{ref:d,"data-testid":"widget-markdown-content",className:a.root,dangerouslySetInnerHTML:{__html:g},onMouseOver:u,onClick:f}),r&&r.length>0&&qt(ql,{sources:r,onClick:i})]})},xt=Pf;import{useRef as Af}from"react";var ed={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as If}from"react/jsx-runtime";var Rf=({width:t})=>{let e=C("LoadingProgressBar",ed);return If("div",{className:e.loadingBar,style:{width:t}})},jo=Rf;import{jsx as $t,jsxs as Lf}from"react/jsx-runtime";var qo=({title:t})=>{let e=Af(null);return ao(e),$t(M,{ref:e,children:$t(F,{children:Lf(F.Content,{children:[$t(F.Title,{children:t}),$t(jo,{width:"60%"}),$t(jo,{width:"90%"}),$t(jo,{width:"50%"})]})})})};var bt={};G(bt,{enUS:()=>Mf,nlNL:()=>Nf});var Mf={inputPlaceholder:[{type:0,value:"What is your question?"}],useCue:[{type:0,value:"Add to message"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Submit"}],resetLabel:[{type:0,value:"Reset"}],resetError:[{type:0,value:"The conversation could not be reset. Please try again."}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},Nf={inputPlaceholder:[{type:0,value:"Wat is je vraag?"}],useCue:[{type:0,value:"Voeg toe aan bericht"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Verzend"}],resetLabel:[{type:0,value:"Gesprek wissen"}],resetError:[{type:0,value:"Het gesprek kon niet worden gewist. Probeer het opnieuw."}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};var $o={form:"dd-pleCH",formInput:"dd-pGJMY",formSubmit:"dd--gkRg",actionButton:"dd-I2NEH",resetContainer:"dd-qKIDX",sources:"dd-xf9c6",source:"dd-a-vyX",tooltip:"dd-EsgcZ",linkContent:"dd-gARDA",showMoreSources:"dd-uDGi-"};import{useRef as _f}from"react";var td={error:"dd-CoAuB"};var Br={};G(Br,{enUS:()=>Of,nlNL:()=>Df});var Of={errorPrefix:[{type:0,value:"Error:"}]},Df={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as nd,jsxs as Ff}from"react/jsx-runtime";var od=({message:t})=>{let e=_f(null),n=C("WidgetCardError",td),o=A(Br);return ao(e),nd(M,{ref:e,children:nd(F,{children:Ff(F.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as W,jsxs as Ke}from"react/jsx-runtime";var zf=3,Vf=({sources:t,onClick:e})=>{let n=A(bt),o=C("WidgetKnowledgeAssistant",$o),[s,r]=nt(!1),i=s?t:t.slice(0,zf);return i.length===0?null:Ke("ul",{className:o.sources,children:[i.map(a=>W("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Ke(V,{tooltip:!0,placement:"top-start",children:[W(V.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:a.url,onClick:d=>{d.stopPropagation(),e(a)},children:W("span",{className:o.linkContent,children:a.name})}),a.url&&W(V.Content,{className:o.tooltip,children:decodeURIComponent(a.url)})]})},a.name)),i<t&&W("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},jf=({title:t,description:e})=>W(M,{"data-testid":"knowledge-assist-empty-state",children:W(F,{children:Ke(F.Content,{children:[W(F.Title,{children:t}),W(xt,{content:e})]})})}),qf=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=A(bt),a=Kr(Go);return Ke(M,{"data-testid":"knowledge-assist-answer",ref:t,children:[W(F,{children:Ke(F.Content,{children:[W(F.Title,{children:e.question}),W(xt,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),W(Vf,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Ke(M.ButtonsContainer,{children:[W("div",{}),W(Uo,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer})]})]})},Go=Hf(null),Qo=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,onInitialQuestionConsumed:o,children:s,threadId:r,onThreadIdChange:i})=>{let[a,d]=nt(null),l=r!==void 0?r:a,c=H=>{i&&i(H),r===void 0&&d(H)},g=A(bt),[u,p]=nt(!1),[f,m]=nt(!1),[y,v]=nt(null),[x,w]=nt(!!n),[T,k]=nt(null),E=Uf(),I=q(),B=Cn(H=>{if(!t)throw new Error("No knowledge assistant was defined");return v(null),e({assistantCode:t,input:H,threadId:l,onNewThreadId(oe){c(oe)}})},{onSuccess(H){var oe;I("Assistant response displayed",{evaluationId:H.evaluationId,assistantCode:t,assistantOutput:H.answer.answer,input:H.question,sources:(oe=H.answer.sources)!=null?oe:[]}),w(!1)},onError(H){var oe;v((oe=H.message)!=null?oe:"Unknown error")}}),Z=()=>{l&&E(Tl(l)),t&&E(Pl({assistantCode:t})),c(null),t&&I("Assistant thread reset",{threadId:l!=null?l:void 0,assistantCode:t})},se=Cn(bl,{onSuccess(){Z()},onError(){v(g("resetError"))}}),N=H=>S(null,null,function*(){p(!0),k(H),yield B.call(H),p(!1),k(null)}),_={isEnabled:!!t,assistantCode:t,isSubmitting:u,isResetting:f,threadId:l,pendingInput:T,errorMessage:y,onSubmit:N,onReset(){return S(this,null,function*(){if(!f){if(v(null),!t){Z();return}m(!0),yield se.call({assistantCode:t}),m(!1)}})}};return Kf(()=>{!n||!_.isEnabled||N(n).finally(()=>{o==null||o()})},[n,t,_.isEnabled,o]),W(Go.Provider,{value:_,children:s})},Xo=()=>{let t=A(bt),e=C("WidgetKnowledgeAssistant",$o),n=Kr(Go),o=sd(null),[s,r]=nt(""),i=d=>{r(d.target.value)},a=d=>{d.preventDefault(),n.onSubmit(s).then(()=>{var l;o.current&&((l=o.current)==null||l.focus(),r(""))})};return n.isEnabled?Ke("form",{className:e.form,onSubmit:a,children:[W("input",{ref:o,className:e.formInput,placeholder:t("inputPlaceholder"),type:"text",disabled:n.isSubmitting||n.isResetting,value:s,onChange:i}),W("button",{type:"submit",disabled:n.isSubmitting||n.isResetting||s==="",className:e.formSubmit,children:t("submitLabel")})]}):null},Jo=({title:t,emptyState:e})=>{var f,m;let n=A(bt),o=q(),s=C("WidgetKnowledgeAssistant",$o),r=sd(null),i=Kr(Go),a=(m=Wf(yl((f=i.threadId)!=null?f:-1)))!=null?m:[],d=P("hasKeyboardInput"),l=ie(),c=(y,v)=>{ke(y),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:y,copiedText:y,evaluationId:v.evaluationId})},g=(y,v)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:v.evaluationId,assistantCode:i.assistantCode,source:y})},u=y=>{y.preventDefault(),i.onReset()},p=(y,v)=>{l.send(Fe,{text:y,suggestion:{source:"assistant",sourceText:y}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:v.evaluationId,assistantOutput:v.answer.answer,usedText:y})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Ke(Bf,{children:[W(Oe,{type:"knowledge",title:t,"data-testid":"knowledge",children:Ke(te,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&W(jf,h({},e)),a.map((y,v)=>W(qf,{innerRef:v===a.length-1?r:void 0,item:y,hasKeyboardInput:d,onCopy:x=>c(x,y),onUse:x=>p(x,y),onSourceClick:x=>g(x,y)},`${y.question}_${y.answer}_${v}`)),i.pendingInput&&W(qo,{title:i.pendingInput}),i.errorMessage&&W(od,{message:i.errorMessage})]})}),a.length>0&&W("div",{className:s.resetContainer,children:W(M.Button,{disabled:i.threadId===null||i.isSubmitting||i.isResetting,onClick:u,children:n("resetLabel")})})]})};import{createRoot as at}from"react-dom/client";import Yf from"react";function Zo(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}var id="queueMicrotask error",$f=1e3,Gf=8e3;function Qf(t){return Zo(t)&&t.name==="TypeError"&&typeof t.message=="string"&&/queueMicrotask/.test(t.message)}function Xf(){try{return typeof window=="undefined"?"no-window":typeof window.queueMicrotask}catch(t){return"inaccessible"}}function Jf(){try{return typeof globalThis.queueMicrotask}catch(t){return"inaccessible"}}function Zf(t){return{message:String(t.message).slice(0,$f),stack:typeof t.stack=="string"?t.stack.slice(0,Gf):null,typeofQueueMicrotask:typeof queueMicrotask,typeofWindowQueueMicrotask:Xf(),typeofGlobalThisQueueMicrotask:Jf()}}function ad(t,e){try{if(!Qf(t))return!1;let n=e(Zf(t));return Promise.resolve(n).catch(()=>{}),!0}catch(n){return!1}}var Yo=class extends Yf.Component{constructor(){super(...arguments);this.state={error:null,caught:!1,rethrow:!1}}static getDerivedStateFromError(n){return{error:n,caught:!0}}componentDidCatch(n){ad(n,this.props.report),this.setState({rethrow:!0})}render(){if(this.state.rethrow)throw this.state.error;return this.state.caught?null:this.props.children}};import{Fragment as Wy}from"react";import{useSelector as md}from"react-redux";import Wr from"classnames";import{useCallback as pd,useEffect as lh,useMemo as dh,useState as zr}from"react";import{useDispatch as ch,useSelector as uh}from"react-redux";import{useEffect as eh,useRef as th}from"react";var ld={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as dd}from"react/jsx-runtime";var nh=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=th(null),l=C("Dialog",ld),c=u=>{if(u.key==="Escape"){u.preventDefault(),u.stopPropagation(),s();return}r&&r(u)},g=u=>{u.target===d.current&&t&&o()};return eh(()=>{var u,p;!d.current||!t||!e||(p=(u=d.current)==null?void 0:u.querySelector("input, textarea"))==null||p.focus()},[t,e,d]),t?dd("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:g,children:dd("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},Gt=nh;import oh from"classnames";var cd={root:"dd-ranhW"};import{jsx as rh}from"react/jsx-runtime";var sh=o=>{var s=o,{className:t,value:e}=s,n=D(s,["className","value"]);let r=C("TextInput",cd);return rh("input",h({className:oh(t,r.root),type:"text",value:e},n))},Dn=sh;var Ur={};G(Ur,{enUS:()=>ih,nlNL:()=>ah});var ih={back:[{type:0,value:"Back"}],promptTitle:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Paste the code from your email"}],verifyCodeBody:[{type:0,value:"Copy the code from the email you just received and paste it here."}],verifyCodeInputPlaceholder:[{type:0,value:"Paste link or code here"}],verifyCodeSubmitLabel:[{type:0,value:"Sign in"}],verifyCodeError:[{type:0,value:"Sign in failed. The code is probably no longer valid. Please "},{type:8,value:"login",children:[{type:0,value:"request new code"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Have a code sent to your email"}],requestCodeBody:[{type:0,value:"Enter your email and request a code. If you are an existing "},{type:1,value:"productName"},{type:0,value:" user you will receive an email with a code. If you are a new user you will receive an email asking to request access to "},{type:1,value:"productName"},{type:0,value:" first."}],requestCodeInputPlaceholder:[{type:0,value:"Enter your email"}],requestCodeSubmitLabel:[{type:0,value:"Request code"}]},ah={back:[{type:0,value:"Terug"}],promptTitle:[{type:0,value:"Login bij "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Plak de code uit je email"}],verifyCodeBody:[{type:0,value:"Kopieer de code uit de email en plak deze hier."}],verifyCodeInputPlaceholder:[{type:0,value:"Plak hier de code"}],verifyCodeSubmitLabel:[{type:0,value:"Inloggen"}],verifyCodeError:[{type:0,value:"Inloggen is niet gelukt. De code is waarschijnlijk niet meer geldig. "},{type:8,value:"login",children:[{type:0,value:"Vraag een nieuwe code aan"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Verstuur een login code naar je email"}],requestCodeBody:[{type:0,value:"Voer je e-mailadres in en krijg een login code. Als je een bestaande "},{type:1,value:"productName"},{type:0,value:" gebruiker bent krijg je een email met een code. Als je een nieuwe gebruiker bent wordt er een email verstuurd met een toegangsverzoek voor "},{type:1,value:"productName"},{type:0,value:"."}],requestCodeInputPlaceholder:[{type:0,value:"Typ hier je e-mailadres"}],requestCodeSubmitLabel:[{type:0,value:"Code aanvragen"}]};var ud={root:"dd-lWxnE",anchorButton:"dd-TZ4in",errorMessage:"dd-fIsPg",title:"dd-pGhJx",subtitle:"dd-f5l29",text:"dd-iamoD",input:"dd-uhQZ3",actions:"dd-lubvx",button:"dd-CJsNI",primaryButton:"dd-MWBfl"};import{jsx as ae,jsxs as es}from"react/jsx-runtime";var ph=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},gh=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=A(Ur),i=C("LoginTokenDialog",ud),a=uh(ga),d=ch(),l=P("productName"),[c,g]=zr(t||""),[u,p]=zr(0),[f,m]=zr(""),y=pd(T=>S(null,null,function*(){T.preventDefault(),d(ha({email:c})),p(1)}),[n,c]),v=()=>{m(""),p(0)},x=pd(T=>S(null,null,function*(){T.preventDefault();let k=ph(T.target.elements.token.value);if(!k){m(r("verifyCodeError",{login:w}));return}d(fn({token:k}))}),[n]),w=dh(()=>T=>ae("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:v,children:T},"back-button"),[]);return lh(()=>{a==="error"&&m(r("verifyCodeError",{login:w})),a==="done"&&o()},[a]),ae(Gt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:es("div",{className:i.root,children:[ae("h1",{className:i.title,children:r("promptTitle",{productName:l})}),u===0&&es("form",{onSubmit:y,children:[ae("h2",{className:i.subtitle,children:r("requestCodeTitle")}),ae("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),ae(Dn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:T=>g(T.target.value)}),ae("div",{className:i.actions,children:ae("button",{type:"submit",className:Wr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&es("form",{onSubmit:x,children:[ae("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),ae("p",{className:i.text,children:r("verifyCodeBody")}),ae(Dn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&ae("div",{className:i.errorMessage,children:f}),es("div",{className:i.actions,children:[ae("button",{type:"button",className:Wr(i.button),onClick:v,children:r("back")}),ae("button",{type:"submit",className:Wr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},gd=gh;import{jsx as fh}from"react/jsx-runtime";var mh=()=>{let t=md(ma),e=md(Kt),n=P("adminUrl"),o=ie(),s=()=>o.send(Wt,!1),r=()=>{o.send(Wt,!1),o.send(bn)};return fh(gd,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},fd=mh;import Ny from"lodash.debounce";import{Fragment as Oy,useCallback as lc,useEffect as dc,useMemo as Dy,useState as oi}from"react";import{useDispatch as _y,useSelector as wt}from"react-redux";import{createAsyncThunk as hh,createSlice as yh}from"@reduxjs/toolkit";var vh={data:null,fetchState:"idle"},hd=t=>t.contentTypes.data,_n=hh("contentTypes/getContentTypes",(t,e)=>S(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),Sh=yh({name:"contentTypes",initialState:vh,reducers:{},extraReducers:t=>{t.addCase(_n.pending,e=>{e.fetchState="loading"}).addCase(_n.rejected,e=>{e.fetchState="error"}).addCase(_n.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),yd=Sh.reducer;import{createAction as Sd,createAsyncThunk as xh,createSelector as xd,createSlice as bh}from"@reduxjs/toolkit";var Ch={data:null,fetchState:"idle",generation:0,inFlightRequestId:null,widgetTypesOverride:null},vd=t=>{t.data=null,t.fetchState="idle",t.generation+=1,t.inFlightRequestId=null,t.widgetTypesOverride=null},bd=[],me=t=>t.profile.data,wh=t=>{var e;return(e=t.profile.widgetTypesOverride)!=null?e:t.profile.data?t.profile.data.uiConfig.widget.types:bd},Hn=xd([wh],t=>t.filter(e=>e.isActive)),Xt=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||bd},Cd=t=>e=>Hn(e).find(n=>n.type===t),wd=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Td=xd([me],t=>{var o;let e=(o=t==null?void 0:t.widgetInteractiveAssistants)!=null?o:[];if(e.length>0)return[...e].sort((s,r)=>s.order-r.order||s.code.localeCompare(r.code));let n=t==null?void 0:t.knowledgeAssistantNew;return n?[{code:n,name:n,displayName:null,order:0}]:[]});var Qt="stale-profile-request",Vr=Sd("profile/clear"),Th=Sd("profile/setWidgetTypesOverride"),Fn=xh("profile/getProfile",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=e.getState(),s=o.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=s.profileCode,i=s.id,a=o.profile.generation,d=()=>{let g=e.getState(),u=g.conversation.current;return!u||u.id!==i||u.profileCode!==r||g.profile.generation!==a},l=e.getState().profile.data;if((l==null?void 0:l.code)===r)return d()?e.rejectWithValue(Qt):l;let c;try{c=yield n.getProfile(r)}catch(g){if(d())return e.rejectWithValue(Qt);throw g}if(d())return e.rejectWithValue(Qt);if(c.code!==r)throw new Error(`Profile response code "${c.code}" does not match requested "${r}"`);return c})),Eh=bh({name:"profile",initialState:Ch,reducers:{},extraReducers:t=>{t.addCase(Th,(e,n)=>{e.widgetTypesOverride=n.payload}).addCase(Fn.pending,(e,n)=>{e.fetchState="loading",e.inFlightRequestId=n.meta.requestId}).addCase(Fn.rejected,(e,n)=>{if(n.payload===Qt){if(n.meta.requestId!==e.inFlightRequestId)return;e.inFlightRequestId=null,e.fetchState="idle";return}n.meta.requestId===e.inFlightRequestId&&(e.fetchState="error",e.inFlightRequestId=null)}).addCase(Fn.fulfilled,(e,n)=>{n.meta.requestId===e.inFlightRequestId&&(e.fetchState="done",e.data=n.payload,e.inFlightRequestId=null)}).addCase(z,vd).addCase(Vr,vd)}}),Ed=Eh.reducer;import{useEffect as zd,useState as Jh,useRef as Zh,useCallback as Yh}from"react";import{useState as Rh}from"react";import jr from"classnames";var ue={root:"dd-U2SX4",list:"dd-cYTlj",listWrapper:"dd-GLQFR",listHorizontal:"dd-x-knl",page:"dd-1F4vk",search:"dd-nvbxc",pageNav:"dd-sRUuT",pageTitle:"dd-t-MKS",pageBackButton:"dd-cjptm",listHeader:"dd-Fg666",listHeading:"dd-w-xhJ",listMoreButton:"dd--mKep",listItem:"dd-wpvuA",listItemContent:"dd-V-mKo",listItemText:"dd-ukCHL",listItemDescription:"dd-sSyu4",listItemActions:"dd-xelho",listItemTooltip:"dd-SWFsE",listItemTooltipContent:"dd-I7J9N",truncate:"dd-IlopJ",lineClamp:"dd-Twaca",listItemTitle:"dd-lMGHq",listItemAction:"dd-xPLAs",listItemSelected:"dd-jFX0Y",sources:"dd-pZx4v",sourcesTitle:"dd-phYVd",source:"dd-DaR6h",sourceShowMore:"dd-M1-8j",icon:"dd-m6yxD",searchIcon:"dd-0AU-O",searchInputWrapper:"dd-DUFcE",searchInput:"dd-ukrlD",select:"dd--Tifv",selectType:"dd-IkZb2",selectWrapper:"dd-J14mx",image:"dd-RQgsB",imageSrc:"dd-jxh8F",imageSrcHidden:"dd-e20Jk",imageSrcStatus:"dd-j50Tt",imageTitle:"dd-qCjfW",actions:"dd-3mfWc",actionsWrapper:"dd-TjDyI",actionsBar:"dd-LiA35",actionButton:"dd-4wk0u",hasShortKeys:"dd-XilV-",actionShortcut:"dd-s4Mla",actionShortcutFixKerning:"dd-lyh5e"};var Ue={};G(Ue,{enUS:()=>kh,nlNL:()=>Ph});var kh={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}],sources:[{type:0,value:"Sources"}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},Ph={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}],sources:[{type:0,value:"Bronnen"}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};import{jsx as Bn,jsxs as Ah}from"react/jsx-runtime";var Ih=({src:t,title:e})=>{let n=C("CommandPalette",ue),[o,s]=Rh("loading"),r=A(Ue);return Ah("div",{className:n.image,children:[Bn("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:jr(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&Bn("span",{className:jr(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&Bn("span",{className:jr(n.imageSrc,n.imageSrcStatus),children:Bn(so,{})}),e&&Bn("span",{className:n.imageTitle,children:e})]})},kd=Ih;import Lh from"react";import Mh from"classnames";import{jsx as qr,jsxs as Pd}from"react/jsx-runtime";function $r({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=A(Ue),i=C("CommandPalette",ue);return Lh.Children.count(t)===0?null:Pd("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Pd("div",{className:i.listHeader,children:[e&&qr("h4",{className:i.listHeading,children:e}),o&&s&&qr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),qr("div",{className:Mh(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import ns from"classnames";import{Interweave as Md}from"interweave";import{useEffect as Uh,useMemo as Nd,useState as Od}from"react";var Nh=/[.*+?^${}()|[\]\\]/g,Oh=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Dh(t){return t.replace(Nh,"\\$&")}function _h(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Fh(t){return t.search(Oh)}function Rd(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Dh(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Id(t){return t.replace(lo,'<mark data-type="placeholder">$1</mark>')}function Kn(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function Hh(t,e){return t.split("").map((i,a)=>({char:i,index:a})).filter(({char:i,index:a})=>/\s/.test(i)&&a<=e).map(({index:i})=>i).reverse()[0]}function Gr(t,e,n={}){if(e){let o=_h(e.toLowerCase(),t.toLowerCase()),s=Kn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Fh(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(ca).length>3||e.length>30?Hh(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Kn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Bh=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function ts(t){return Bh.test(t)}function Qr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import Xr from"react";import{jsx as Kh}from"react/jsx-runtime";var Ad=Xr.createContext(void 0);function Jt(){let t=Xr.useContext(Ad);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ld=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=Xr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return Kh(Ad.Provider,{value:i,children:t})};import{jsx as We,jsxs as os}from"react/jsx-runtime";var Wh=3,zh=90,Dd=({children:t})=>{let e=C("CommandPalette",ue);return We("div",{className:e.listItemActions,children:t})};function Jr(p){var f=p,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:g=Wh}=f,u=D(f,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var se;let m=A(Ue),[y,v]=Od(!1),{selected:x,onChangeOpen:w}=Jt(),[T,k]=Od(!1),E=C("CommandPalette",ue);function I(N){s(N),t&&w(!1)}let B=Nd(()=>typeof a!="string"?a:ts(a)?Qr(a).trim():a,[a]),Z=Nd(()=>typeof n!="string"?n:ts(n)?Qr(n).trim():n,[n]);return Uh(()=>{k(x===l)},[x]),os("div",{className:ns(E.listItem,l===x&&E.listItemSelected),children:[os(V,{placement:"right-start",tooltip:!0,onOpenChange:k,open:T,children:[We(V.Trigger,b(h({className:E.listItemAction,"aria-disabled":(se=u.disabled)!=null?se:!1,onClick:I,"data-command-palette-item":!0,"data-item-id":l},u),{children:os("div",{className:E.listItemContent,children:[typeof o=="string"?We("p",{className:ns(E.listItemText,E.truncate,c==null?void 0:c.title),children:o}):o,B&&typeof B=="string"?We(Md,{tagName:"p",allowList:[],content:B,className:ns(E.listItemDescription,c==null?void 0:c.description,e?E.lineClamp:E.truncate)}):a]})})),Z&&Z.length>zh&&We(V.Content,{className:E.listItemTooltip,disableFocusManager:!0,children:We(Md,{className:E.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:Z.replace(/\n/g,"<br />")})})]}),l===x&&r,d&&d.length>0&&os("div",{className:E.sources,children:[We("span",{className:E.sourcesTitle,children:m("sources")}),d.slice(0,y?d.length:g).map(N=>We("a",{className:E.source,href:N.url,target:"_blank",title:N.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(N),children:N.name},N.url)),!y&&d.length>g&&We("button",{className:ns(E.source,E.sourceShowMore),type:"button",onClick:()=>v(!0),children:m("showMore",{amount:d.length-g})})]})]})}import{jsx as _d,jsxs as Vh}from"react/jsx-runtime";var Fd=()=>Vh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[_d("title",{id:"angleLeftTitle",children:"AngleLeft"}),_d("path",{d:"M192 448c-8.188 0-16.38-3.125-22.62-9.375l-160-160c-12.5-12.5-12.5-32.75 0-45.25l160-160c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l137.4 137.4c12.5 12.5 12.5 32.75 0 45.25C208.4 444.9 200.2 448 192 448z"})]});import{jsx as Hd,jsxs as Zr}from"react/jsx-runtime";function Yr({children:t,title:e,id:n,onDismiss:o}){let s=A(Ue),r=C("CommandPalette",ue),{page:i}=Jt();return i!==n?null:Zr("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&Zr("div",{className:r.pageNav,children:[Zr("button",{className:r.pageBackButton,type:"button",onClick:o,children:[Hd(Fd,{}),s("back")]}),e&&Hd("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as qh}from"react";import{jsx as Bd,jsxs as jh}from"react/jsx-runtime";var Zt=()=>jh("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Bd("path",{d:"M0 0h24v24H0z",fill:"none"}),Bd("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})]});import{jsx as Yt,jsxs as ei}from"react/jsx-runtime";function $h({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=C("CommandPalette",ue);return ei("div",{className:d.search,children:[Yt("div",{className:d.searchIcon,children:Yt(Zt,{})}),ei("div",{className:d.searchInputWrapper,children:[Yt("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:l=>{t(l.currentTarget.value)},onFocus:l=>{l.currentTarget.select()},className:d.searchInput,placeholder:n,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&Yt("div",{className:d.selectWrapper,children:ei("select",{"data-testid":"command-palette-type-select",className:d.select,onChange:l=>e(l.target.value===o?void 0:l.target.value),value:i||o,children:[o&&Yt("option",{children:o}),s.map(l=>Yt("option",{value:l.value,children:l.label},l.value))]})})]})]})}var Kd=qh($h);import Ud from"classnames";import{jsx as Qh,jsxs as Xh}from"react/jsx-runtime";var Gh=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=D(r,["onClick","shortKeys","children"]);let i=C("CommandPalette",ue);return Xh("button",b(h({type:"button"},o),{onClick:t,className:Ud(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>Qh("span",{className:Ud(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Wd=Gh;import{jsx as Vd,jsxs as ty}from"react/jsx-runtime";var ey="[data-command-palette-item]";function Ct({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:n="search",page:o,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:d,types:l,children:c,isOpen:g,search:u,updateDeps:p=[]}){let[f,m]=Jh(),y=Zh(null),v=()=>{s&&s(n),i(void 0),r(""),a(!1)},x=()=>{var N;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(N=y.current)==null||N.focus();return}if(u.length>0){r("");return}a(!1)},w=()=>{let N=T();N.length!==0&&m(N[0].dataset.itemId)},T=()=>Array.from(document.querySelectorAll(ey)||[]),k=N=>document.querySelector(`[data-item-id=${N}]`),E=N=>{let _=k(N);_&&m(_.dataset.itemId)},I=N=>{let _=k(N);_&&_.scrollIntoView({behavior:"smooth"})},B=()=>{if(!f)return;let N=T(),_=k(f);if(!_)return;let Ee=N.indexOf(_),H=N[Ee+1];H!=null&&H.dataset.itemId?E(H.dataset.itemId):w()},Z=()=>{if(!f)return;let N=T(),_=k(f);if(!_)return;let Ee=N.indexOf(_),H=N[Ee-1];H!=null&&H.dataset.itemId?E(H.dataset.itemId):E(N[N.length-1].dataset.itemId)},se=Yh(N=>{switch(N.key){case"ArrowDown":{N.preventDefault(),B();break}case"ArrowUp":{N.preventDefault(),Z();break}case"Enter":{if(f){let _=k(f);_==null||_.click()}break}}},[f]);return zd(()=>{w()},[u,o,d,g,...p]),zd(()=>{f&&I(f)},[f]),Vd(Gt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:g,onBack:x,onClose:v,onKeyDown:se,children:ty(Ld,{selected:f,setSelected:m,isOpen:g,onChangeOpen:a,page:o,children:[o===n&&Vd(Kd,{ref:y,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:d,types:l,typePlaceholder:e}),c]})})}Ct.Page=Yr;Ct.List=$r;Ct.Image=kd;Ct.ListItem=Jr;Ct.ListItemActions=Dd;Ct.Button=Wd;var Q=Ct;import{useEffect as ny}from"react";function jd(t,e){ny(()=>{let n=o=>{var s;((s=navigator==null?void 0:navigator.platform)!=null&&s.toLowerCase().includes("mac")?o.metaKey:o.ctrlKey)&&o.key===t&&(o.preventDefault(),o.stopPropagation(),e())};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}},[])}import{useEffect as Qd,useRef as uy}from"react";import{useSelector as py,useDispatch as gy}from"react-redux";import{createAsyncThunk as oy,createSelector as sy,createSlice as ry}from"@reduxjs/toolkit";var qd={data:null,fetchState:"idle"},iy=t=>{var e;return(e=t.entities.data)!=null?e:null},ss=sy([iy,Kt,Ua],(t,e,n)=>{var a;let o=[],{visitorName:s}=n!=null?n:{},{agentName:r,agentNickname:i}=e!=null?e:{};return r&&r!==s&&o.push(r),i&&i!==s&&o.push(i),(a=t==null?void 0:t.filter(d=>!o.includes(d.text)))!=null?a:null}),Se=oy("entities/getEntities",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra;if(!o.conversationQuery)return Promise.resolve([]);let s=o.conversationQuery,r=yield s();return r.length===0?Promise.resolve([]):n.getEntities(r)})),ay=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),ly=ry({name:"entities",initialState:qd,reducers:{},extraReducers:t=>{t.addCase(Se.pending,e=>{e.fetchState="loading"}).addCase(Se.rejected,e=>{e.fetchState="error"}).addCase(Se.fulfilled,(e,n)=>{e.fetchState="done",e.data=ay(e.data?[...e.data,...n.payload]:n.payload)}).addCase(z,()=>qd)}}),$d=ly.reducer;var ti={};G(ti,{enUS:()=>dy,nlNL:()=>cy});var dy={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},cy={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Gd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as ni,jsxs as fy}from"react/jsx-runtime";var my=({onCopy:t})=>{let e=uy(null),n=C("EntitiesList",Gd),o=py(ss),{setSelected:s}=Jt(),r=A(ti),i=gy();return Qd(()=>{i(Se())},[]),Qd(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),fy("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&ni(Q.List,{children:o.map((a,d)=>ni(Q.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&ni("p",{className:n.empty,children:r("noResults")})]})},Xd=my;import{jsx as Jd}from"react/jsx-runtime";var rs=t=>Jd("svg",b(h({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:Jd("path",{fill:"currentColor",d:"M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"})}));var Un={};G(Un,{enUS:()=>hy,nlNL:()=>yy});var hy={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Add"}],sendSuggestion:[{type:0,value:"Send"}],suggestionSent:[{type:0,value:"Sent"}],sendingError:[{type:0,value:"Sending failed"}],tryAgain:[{type:0,value:"Try again"}],editSuggestion:[{type:0,value:"Edit"}],visitUrl:[{type:0,value:"Visit"}],giveFeedback:[{type:0,value:"Give feedback"}],answer:[{type:0,value:"Answer"}]},yy={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Gebruik"}],sendSuggestion:[{type:0,value:"Verzenden"}],suggestionSent:[{type:0,value:"Verzonden"}],sendingError:[{type:0,value:"Verzenden mislukt"}],tryAgain:[{type:0,value:"Probeer opnieuw"}],editSuggestion:[{type:0,value:"Bewerken"}],visitUrl:[{type:0,value:"Bekijk"}],giveFeedback:[{type:0,value:"Geef feedback"}],answer:[{type:0,value:"Antwoord"}]};import{useSelector as vy}from"react-redux";var Wn={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as zn,jsxs as xy}from"react/jsx-runtime";var Sy=({suggestion:t,source:e,context:n})=>{let o=A(Un),s=vy(pe),r=q(),i=P("enableSuggestionFeedback"),a=Ho({conversationId:s,type:e,contentType:"text",content:t.text,data:n?JSON.stringify({context:n}):void 0}),d=Bo(a),l=()=>S(null,null,function*(){r("suggestion feedback",{text:t.text,source:e,context:n}),d.mode==="custom-handler"&&(yield d.open())});return!i||d.mode==="disabled"?null:xy(V,{placement:"top-end",children:[zn(V.Trigger,{className:Wn.trigger,children:zn(rs,{"data-testid":"feedback-dropdown-trigger"})}),zn(V.Content,{className:Wn.content,children:d.mode==="custom-handler"?zn(V.Button,{className:Wn.item,onClick:l,children:o("giveFeedback")}):zn(V.Button,{className:Wn.item,as:"a",onClick:l,target:"_blank",rel:"noreferrer noopener",href:d.href,children:o("giveFeedback")})})]})},is=Sy;var Vn={};G(Vn,{enUS:()=>by,nlNL:()=>Cy});var by={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"URL suggestions"}],personalSuggestions:[{type:0,value:"Personal suggestions"}],pinnedMessages:[{type:0,value:"Pinned messages"}],imageSuggestions:[{type:0,value:"Images"}],typePlaceholder:[{type:0,value:"All types"}],navigation:[{type:0,value:"Navigation"}],entitiesClipboard:[{type:0,value:"Conversation clipper"}],entitiesTitle:[{type:0,value:"Copy to your clipboard"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Commands"}],use:[{type:0,value:"Use"}],preview:[{type:0,value:"Preview"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},Cy={personalCollectionLink:[{type:0,value:"Ga naar persoonlijke collectie"}],searchPlaceholder:[{type:0,value:"Begin met typen om te zoeken..."}],personalSuggestions:[{type:0,value:"Persoonlijke suggesties"}],urlSuggestions:[{type:0,value:"URL suggesties"}],imageSuggestions:[{type:0,value:"Afbeeldingen"}],navigation:[{type:0,value:"Navigatie"}],typePlaceholder:[{type:0,value:"Alle types"}],pinnedMessages:[{type:0,value:"Actueel"}],entitiesClipboard:[{type:0,value:"Klembord"}],entitiesTitle:[{type:0,value:"Kopieer naar klembord"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Acties"}],use:[{type:0,value:"Gebruik"}],preview:[{type:0,value:"Bewerk"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};import{useEffect as Py}from"react";import{useDispatch as Ry,useSelector as Iy}from"react-redux";import{createAction as Ey,createAsyncThunk as tc,createSlice as ky}from"@reduxjs/toolkit";var wy=["{amount}"," {amount}","{date}","{email}","{iban}","{name}","{postal_code}","{street}","{tarif}","{usage}","{3_digits}","{4_digits}","{5_digits}","{6_digits}","{7_digits}","{8_digits}","{9_digits}","{10_digits}"],Ty=new RegExp(wy.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function Zd(t,e){let n=t.split(Ty),o=0,s=[];for(let r=0;r<n.length;r++){let i=n[r];if(s.push(i),r===n.length-1)break;if(e.indexOf(i)===-1)return t;let a=n[r+1],d=r===n.length-2;o+=i.length;let l=o;if(d){let g=a.charAt(0),u=0;do l=g?e.indexOf(g,l+1):-1,u+=1;while(l!==-1&&a.indexOf(e.slice(l))!==0);if(l===-1&&u>2)return t}else l=a&&a!==""?e.indexOf(a,o):-1;let c=l===-1?e.slice(o):e.slice(o,l);s.push(c),o=l}return s.join("")}function Yd(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var nc={suggestions:[],fetchState:"idle"},ec={default:nc},oc=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},as=t=>t.textSuggestions,sc=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},ls=Ey("textSuggestions/refresh"),xe=tc("textSuggestions/recommendations",(t,e)=>S(null,null,function*(){var c,g,u;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=ct(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((g=o.profile.data)!=null&&g.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let p=(u=o.profile.data)==null?void 0:u.code;if(!p)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(p)}else l=yield n.getTextSuggestions(d,xn(o),t);if(s&&(l=l.map(p=>h(b(h({},p),{text:ye(p.text,s)}),p.title?{title:ye(p.title,s)}:{}))),t==="default"){let p=i?l.filter(sc(a)):l;e.dispatch(Ze(p.slice(0,r)))}return l})),jn=tc("textSuggestions/autocompletions",(t,e)=>S(null,null,function*(){var c,g;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(c=o.conversation.current)==null?void 0:c.id,{platformVariables:r}=o.info,{textSuggestionsCount:i,deanonymize:a,inlineSuggestions:d}=o.settings;if(!((g=o.profile.data)!=null&&g.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,b(h({},xn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(sc(t))),r&&(l=l.map(u=>b(h({},u),{text:ye(u.text,r)}))),a&&(l=l.map(u=>b(h({},u),{text:u.source!=="trie-with-typos"?Zd(u.text,t):u.text}))),l=Yd(l,i),e.dispatch(Ze(l)),l})),rc=ky({name:"textSuggestions",initialState:ec,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:n}=e.payload;t[n].fetchState="done",t[n].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}}},extraReducers:t=>{t.addCase(xe.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||nc;return b(h({},e),{[o]:b(h({},s),{fetchState:"loading"})})}).addCase(xe.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(xe.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(jn.pending,e=>{e.default.fetchState="loading"}).addCase(jn.rejected,e=>{e.default.fetchState="error"}).addCase(jn.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(z,()=>ec)}}),{setTextSuggestions:BA}=rc.actions,ic=rc.reducer;import{jsx as ds,jsxs as Ly}from"react/jsx-runtime";var Ay=({types:t,commands:e,onClick:n})=>{let o=Ry(),s=A(Vn),r=Iy(as);return Py(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(xe(i))})},[]),Ly("div",{children:[e.length>0&&ds(Q.List,{heading:s("commands"),children:e.map((i,a)=>ds(Q.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return ds(Q.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>ds(Q.ListItem,{id:`${i}-${c}`,closeOnSelect:!1,description:l.title&&l.text,onClick:()=>n(l.text,l),"data-testid":"search-overlay-suggestion",children:l.title||l.text},`${l.id}-${l.text}`))},i)})]})},ac=Ay;import{jsx as Ie,jsxs as ri}from"react/jsx-runtime";var Fy=200,Hy=5,By=4,si=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?By:Hy),Ky=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Uy=()=>{var Ee,H,oe;let t=_y(),e=ie(),n=A(Vn),[o,s]=oi(!1),[r,i]=oi(""),a=wt(Ja),d=wt(me),[l,c]=oi(),g=wt(Y),u=P("showSearch"),p=P("enableSuggestionFeedback"),f=P("showEntitiesCommand"),m=P("showImageSearch"),y=P("searchTriggerKey"),v=wt(hd),x=wt(cr),w=wt(Za),T=wt(Xa),k=((oe=(H=(Ee=d==null?void 0:d.uiConfig)==null?void 0:Ee.search)==null?void 0:H.initialTypes)==null?void 0:oe.filter(({isActive:O})=>O))||[],E=q(),I=Dy(()=>{let O=re=>si(x.filter($=>$.type===re.toUpperCase()),re,l),j=(v==null?void 0:v.map(re=>({value:re.code.toUpperCase(),label:`${re.name}s`,list:O(re.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(j.push({value:"PERSONAL",label:n("personalSuggestions"),list:O("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:O("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:O("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),m&&j.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:O("IMAGE"),listOrientation:"horizontal"}),k.length===0)return j;let Ne=k.map(re=>j.find($=>$.value.toLowerCase()===re.type)).filter(re=>!!re),Lt=j.filter(re=>!Ne.find($=>$.value===re.value));return[...Ne,...Lt]},[v,k,m,l]),B=[{label:n("entitiesClipboard"),onClick:()=>t(Ut("entities")),shouldShow:f&&Ky(n("entitiesClipboard"),r)}].filter(O=>O.shouldShow).filter(()=>!l),Z=lc(Ny((O,j)=>{t(mt({query:O,type:j,tags:["search-overlay"],size:l?50:20}))},Fy),[l]),se=lc((O,j)=>{j.type==="IMAGE"?e.send(pr,{suggestion:j}):e.send(Fe,{text:O,suggestion:j}),t(ve(!1))},[t]),N=O=>{ke(O.text),E("entity copied",{entity:O,type:"copy"}),t(ve(!1))};function _(O){return j=>{o?window.confirm(n("warning"))&&(O(j),s(!1)):O(j)}}return dc(()=>{r?Z(r,l):t(To())},[r,l]),dc(()=>{g&&t(_n())},[g]),jd(y,()=>{t(ve(!0)),E("open search",{via:"ctrl+k"})}),!u||!d?null:ri(Q,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:_(O=>t(ve(O))),onChangeType:O=>c(O),onChangePage:_(O=>t(Ut(O))),selectedType:l,search:r,page:a,isOpen:T,types:I,updateDeps:[x],children:[ri(Q.Page,{id:"search",children:[r.length===0&&Ie(ac,{types:k,commands:B,onClick:se}),r.length>0&&ri(Oy,{children:[B.length>0&&Ie(Q.List,{heading:n("commands"),children:B.map((O,j)=>Ie(Q.ListItem,{closeOnSelect:!1,onClick:O.onClick,id:`commands-${j}`,children:O.label},O.label))}),I.map(({value:O,label:j,list:Ne,lineClamp:Lt,listOrientation:re})=>Ie(Q.List,{heading:j,orientation:re==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(O),hasMore:!l&&w[O.toLowerCase()]>si(Ne,O,l).length,children:si(Ne,O,l).map($=>Ie(Q.ListItem,{id:`${O}-${$.id}`,closeOnSelect:!1,lineClamp:Lt,onClick:()=>se($.text,$),description:O!=="IMAGE"?$.title&&$.text:void 0,tooltip:$.text,extra:p&&Ie(Q.ListItemActions,{children:Ie(is,{context:r,source:"search",suggestion:$})}),children:O==="IMAGE"?Ie(Q.Image,{title:$.title||$.text,src:$.image}):$.title||$.text},`${$.id}-${$.text}`))},O))]})]}),Ie(Q.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:_(()=>{t(Ut("search"))}),children:Ie(Xd,{onCopy:N})})]})},cc=Uy;import{jsx as uc,jsxs as Vy}from"react/jsx-runtime";var zy=()=>{let t=P("showSearch"),e=P("isEmbedded");return Vy(Wy,{children:[t&&uc(cc,{}),e&&uc(fd,{})]})},pc=zy;import Gy from"classnames";import{useSelector as Qy}from"react-redux";import{jsx as ii}from"react/jsx-runtime";var gc=({className:t})=>ii("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 512 512",xmlSpace:"preserve",className:t,children:ii("g",{children:ii("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
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+=`
9
+ c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as mc}from"react/jsx-runtime";var jy={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},fc=({className:t,color:e})=>mc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:mc("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:jy[e||"pink"]})});var hc={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var ai={};G(ai,{enUS:()=>qy,nlNL:()=>$y});var qy={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},$y={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Xy}from"react-redux";import{jsx as li,jsxs as yc}from"react/jsx-runtime";var vc=({onLogIn:t})=>{let e=A(ai),n=P("floatingMenu"),o=P("productName"),s=Xy(),r=Qy(Y),i=C("FloatingMenu",hc);if(r===null||n===!1)return null;let a=()=>{r===!0?s(ve(!0)):t()};return yc("button",{type:"button",className:Gy(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[li("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),yc("div",{className:i.icon,children:[li(fc,{className:i.logo,color:"pink"}),r===!1&&li(gc,{className:i.lock})]})]})};import{useEffect as xv,useRef as bv}from"react";import{useDispatch as Cv,useSelector as Et}from"react-redux";function Ae(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.end<t.input.suggestionTextStart||r.start!==r.end?!1:r.end>=s.length?!0:e?n&&new RegExp(n).test(s.substring(r.end))||o&&new RegExp(o).test(s.substring(0,r.end))?!0:n===!1&&o===!1:!1}import{createSlice as Jy}from"@reduxjs/toolkit";var Zy={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},cs=({ui:t})=>t.overlayCollapsed,Sc=Jy({name:"ui",initialState:Zy,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputFocus(t,e){t.overlayCollapsedUserOverwrite!==!0&&(e.payload===!0&&(t.overlayCollapsed=!1),t.inputHasFocus=e.payload)},setOverlayCollapsed(t,e){e.payload.collapse===!1&&(t.openOverlayWhenTyping=!1),!(e.payload.skipWhenInputFocus&&t.inputHasFocus)&&(t.overlayCollapsed=e.payload.collapse)},setOpenOverlayWhenTyping(t,e){t.openOverlayWhenTyping=e.payload},setOverlayCollapsedUserOverwrite(t,e){t.overlayCollapsedUserOverwrite=e.payload,t.overlayCollapsed=e.payload}}}),{setShowTabHint:qn,setInputFocus:us,setOverlayCollapsed:ot,setOpenOverlayWhenTyping:xc,setOverlayCollapsedUserOverwrite:bc}=Sc.actions,Cc=Sc.reducer;var wc={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as ps}from"react/jsx-runtime";var Yy=({match:t,selected:e,styles:n})=>ps(M,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:ps("span",{className:n.styleSuggestion,children:t.suggestion})}),ev=({matches:t,selectedIndex:e})=>{let n=C("StyleSuggestionList",wc);return ps(te,{children:t.map((o,s)=>ps(Yy,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},gs=ev;import{useMemo as fv}from"react";import{Interweave as Rc}from"interweave";import{useEffect as iv,useMemo as av,useRef as lv,useState as dv}from"react";import{useDispatch as cv,useSelector as Ic}from"react-redux";import{useEffect as tv}from"react";function Tc(t,e,n){tv(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Ec={root:"dd-1MBCO",actions:"dd--x4cy",closeIconContainer:"dd-1z5NR",closeIcon:"dd-8qMF-",badge:"dd-4Fpkz",formattedText:"dd-EzvTB",assistantContainer:"dd-j6o8F",formattedTextTruncated:"dd-fv169",assistantBadge:"dd-VD57E"};import{jsx as kc,jsxs as nv}from"react/jsx-runtime";var Pc=({title:t})=>nv("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[kc("title",{id:"closeTitle",children:t}),kc("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})]});var di={};G(di,{enUS:()=>ov,nlNL:()=>sv});var ov={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},sv={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as ze,jsxs as Ac}from"react/jsx-runtime";var uv=["search","personal-collection-search","search-autocomplete"];function pv(t,e,n,o={}){var r;let s="";return uv.includes(e)?s=Rd(Gr(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=Gr(t,n,o),o.placeholders===!0&&(s=Id(s)),s}var gv=()=>{},mv=({selected:t,suggestion:e})=>{let n=A(di),o=P("inlineSuggestions"),s=Ic(ct),[r,i]=dv(!1),a=P("enableSuggestionFeedback"),d=Ic(y=>y.input.text),l=cv(),c=C("TextSuggestion",Ec),g=lv(null),u=e.source==="assistant",p=a&&!u;iv(()=>{let y=setTimeout(()=>{l(Aa({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(y)}},[e]),Tc(g,"click",()=>{l(le({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let f=()=>{l(pt({source:e.source,text:e.text,assistantCode:e.assistantCode}))},m=av(()=>pv(e.text,e.source,s,{stripAgentPart:o,placeholders:!0,searchKeywords:e.searchKeywords}),[o,e.text,e.source,s,e.searchKeywords]);return e.source==="gpt"&&!o?null:Ac("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[ze(M,{ref:g,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:gv,children:e.source==="assistant"?Ac("div",{className:c.assistantContainer,children:[ze(Rc,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:m}),ze("span",{className:c.assistantBadge,children:n("assistant")})]}):ze(Rc,{containerTagName:"div",tagName:"span",className:c.formattedText,content:m})}),p&&r&&ze("div",{className:c.actions,children:ze(is,{source:"overlay",context:d,suggestion:e})}),u&&r&&ze("div",{className:c.closeIconContainer,children:ze("button",{type:"button",className:c.closeIcon,onClick:f,title:n("close"),children:ze(Pc,{title:n("close")})})})]})},Lc=mv;import{jsx as yv}from"react/jsx-runtime";var hv=({suggestions:t,selectedIndex:e,reverse:n})=>fv(()=>{let s=t.map((r,i)=>yv(Lc,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),ms=hv;var Mc={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as vv,createSlice as Sv}from"@reduxjs/toolkit";var fs={list:{keywordMatches:[]},fetchState:"idle"},hs=t=>t.styleSuggestions.list,Tt=vv("styleSuggestions/getAll",(n,o)=>S(null,[n,o],function*({text:t},e){var d;let{deepdeskAPI:s}=e.extra,r=e.getState(),{showStyleSuggestions:i}=r.settings,a=(d=r.conversation.current)==null?void 0:d.profileCode;if(!i)return fs.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),Nc=Sv({name:"styleSuggestions",initialState:fs,reducers:{commitStyleSuggestion(t,e){let{keyword:n,suggestion:o}=e.payload;t.list.keywordMatches=t.list.keywordMatches.filter(s=>s.keyword.toLowerCase()!==n.toLowerCase()||s.suggestion!==o)}},extraReducers:t=>{t.addCase(Tt.pending,e=>{e.fetchState="loading"}).addCase(Tt.rejected,e=>{e.fetchState="error"}).addCase(Tt.fulfilled,(e,n)=>{e.fetchState="done",Je(e.list,n.payload)||(e.list=n.payload)}).addCase(gt,e=>{e.list=fs.list}).addCase(z,()=>fs)}}),{commitStyleSuggestion:Oc}=Nc.actions,Dc=Nc.reducer;var ys=t=>{let e=new Set;return t.filter(({keyword:n,suggestion:o})=>{let s=JSON.stringify([n.toLowerCase(),o]);return e.has(s)?!1:(e.add(s),!0)})};import{jsx as vs,jsxs as Tv}from"react/jsx-runtime";var wv=()=>{var y;let t=bv(null),e=C("InlineSuggestionsOverlay",Mc),n=Et(Ae),o=Cv(),s=Et(Y),r=Et(Ft),i=Et(cs),a=P("showTextSuggestions"),d=Et(ut),l=Et(vn),c=P("showStyleSuggestions"),g=P("showStyleSuggestionList"),u=Et(hs),p=c&&g?ys((y=u.keywordMatches)!=null?y:[]):[],f=p.length>0,m=a&&d.length>0;return vt(()=>{setTimeout(()=>{o(ot({collapse:!0,skipWhenInputFocus:!0}))})}),xv(()=>{let v=t.current;if(!v||!v.parentElement)return;v.parentElement.style.left="0px";let x=v.getBoundingClientRect();v.parentElement.style.left=`${Math.min(window.innerWidth-4-x.right,0)}px`}),i||s!==!0||r===!1||!n&&!f||!m&&!f?null:vs("div",{className:e.root,"data-variant":"inline",children:Tv("div",{ref:t,className:e.paper,children:[f&&vs(gs,{matches:p,selectedIndex:-1}),m&&vs(te,{children:vs(ms,{suggestions:d,selectedIndex:l})})]})})},_c=wv;import Pv,{useState as ui,useEffect as Rv}from"react";var Fc={root:"dd-7zvcP",dialogContent:"dd-4C0lK",continueButton:"dd-YUPQW",buttonContinueWrapper:"dd-IKpYs",nicknameInput:"dd-rxhGp",titleWrapper:"dd-nw3nD",title:"dd-5iof5",closeButtonWrapper:"dd-UUAzA",closeButton:"dd-7rjP5",buttonsWrapper:"dd-5e9Xb",errorMessage:"dd--5VgX",errorLink:"dd-u461n"};import{useSelector as Iv}from"react-redux";var ci={};G(ci,{enUS:()=>Ev,nlNL:()=>kv});var Ev={title:[{type:0,value:"Enter your nickname"}],close:[{type:0,value:"Close"}],nicknameDialogTitle:[{type:0,value:"Please enter the name you'd like customers to see during chat conversations. This nickname will be used across your Deepdesk environment."}],nicknameDialogInputPlaceholder:[{type:0,value:"Enter your nickname"}],nicknameDialogContinueButton:[{type:0,value:"Continue"}],nicknameDialogError:[{type:0,value:"Nickname cannot be empty or spaces only"}],nicknameDialogEmojiError:[{type:0,value:"You cannot use emojis in this field."}],nicknameDialogSaveError:[{type:0,value:"We couldn't save your details just now. Please try again, or update it at "},{type:1,value:"account"},{type:0,value:".deepdesk.com/admin/user-settings"}],nicknameDialogSaveErrorWithoutLink:[{type:0,value:"We couldn\u2019t save your details just now. Please try again later, or update them in My Deepdesk \u2192 Settings."}]},kv={title:[{type:0,value:"Voer je bijnaam in"}],close:[{type:0,value:"Sluiten"}],nicknameDialogTitle:[{type:0,value:"Voer de naam in die je wilt dat klanten zien tijdens chatgesprekken. Deze bijnaam wordt gebruikt in je Deepdesk-omgeving."}],nicknameDialogInputPlaceholder:[{type:0,value:"Voer je bijnaam in"}],nicknameDialogContinueButton:[{type:0,value:"Doorgaan"}],nicknameDialogError:[{type:0,value:"Bijnaam mag niet leeg of alleen spaties zijn"}],nicknameDialogEmojiError:[{type:0,value:"Je kunt geen emoji's gebruiken in dit veld."}],nicknameDialogSaveError:[{type:0,value:"We konden je gegevens nu niet opslaan. Probeer het opnieuw of werk het bij op "},{type:1,value:"account"},{type:0,value:".deepdesk.com/admin/user-settings"}],nicknameDialogSaveErrorWithoutLink:[{type:0,value:"We konden je gegevens nu niet opslaan. Probeer het opnieuw later, of werk ze bij in My Deepdesk \u2192 Instellingen."}]};import{Fragment as Av,jsx as be,jsxs as Ss}from"react/jsx-runtime";var Hc=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=ui(""),[i,a]=ui(!1),[d,l]=ui(!1),c=C("Nickname",Fc),g=Pv.useRef(null),u=Iv(v=>v.info.showNicknameDialog),p=A(ci),f=P("adminUrl");Rv(()=>{o&&a(!0)},[o]);let m=()=>{if(!g.current)return;s.trim()?g.current.setCustomValidity(""):g.current.setCustomValidity(p("nicknameDialogError")),g.current.reportValidity()},y=v=>{v.preventDefault();let x=s.trim(),w=v.currentTarget.querySelector("#nickname-input");if(!x){w.setCustomValidity(p("nicknameDialogError")),w.reportValidity();return}w.setCustomValidity(""),e(x)};return Ss(Gt,{isOpen:u,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[be("div",{className:c.titleWrapper,children:be("h1",{className:c.title,children:p("title")})}),Ss("form",{className:c.dialogContent,onSubmit:y,children:[be("p",{children:p("nicknameDialogTitle")}),i&&o&&be("div",{className:c.errorMessage,children:f?(()=>{let v=p("nicknameDialogSaveError",{account:f}),x=`${f}.deepdesk.com/admin/user-settings`,w=v.indexOf(x);if(w!==-1){let T=v.substring(0,w),k=v.substring(w+x.length);return Ss(Av,{children:[T,be("a",{href:x,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:x}),k]})}return v})():p("nicknameDialogSaveErrorWithoutLink")}),be("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:p("nicknameDialogInputPlaceholder"),value:s,onChange:v=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(v.target.value)),r(v.target.value)},onBlur:m,ref:g}),d&&be("div",{className:c.errorMessage,role:"alert",children:p("nicknameDialogEmojiError")}),Ss("div",{className:c.buttonsWrapper,children:[o?be("div",{className:c.closeButtonWrapper,children:be("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:p("close")})}):null,be("div",{className:c.buttonContinueWrapper,children:be("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:p("nicknameDialogContinueButton")})})]})]})]})};import{Provider as Lv}from"react-redux";import{jsx as xs}from"react/jsx-runtime";var Mv=({children:t})=>{let n=P("locale").replace("-","");return xs(wr.Provider,{value:n,children:t})},Nv=({store:t,customStyles:e={},children:n})=>xs(Lv,{store:t,children:xs(Mv,{children:xs(pn.Provider,{value:e,children:n})})}),Ve=Nv;import hi from"classnames";import{useEffect as jv,useRef as qv,useState as $v}from"react";import{useDispatch as Gv,useSelector as je}from"react-redux";import{useState as Ov}from"react";function Bc(t,e){let[n,o]=Ov(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return R.error(r),e}});return[n,r=>{try{let i=r instanceof Function?r(n):r;o(i),typeof window!="undefined"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){R.error(i)}}]}var Kc=()=>/Mac/i.test(navigator.platform);import Fv from"classnames";import{Fragment as Hv,useCallback as gi,useMemo as Wc}from"react";var pi={};G(pi,{enUS:()=>Dv,nlNL:()=>_v});var Dv={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Sign in"}]},{type:0,value:" to enable "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze for "},{type:8,value:"min",children:[{type:0,value:"10 minutes"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 hour"}]},{type:0,value:" or "},{type:8,value:"day",children:[{type:0,value:"1 day"}]}]},_v={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Log in"}]},{type:0,value:" bij "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze voor "},{type:8,value:"min",children:[{type:0,value:"10 minuten"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 uur"}]},{type:0,value:" of "},{type:8,value:"day",children:[{type:0,value:"1 dag"}]}]};var Uc={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as bs,jsxs as zc}from"react/jsx-runtime";var mi=(t,e,n)=>o=>bs("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Bv=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=A(pi),i=ie(),a=C("Login",Uc),d=P("productName"),l=P("signInViaPopup"),c=n&&!l,g=gi(x=>{x.preventDefault(),o&&o(Number.parseInt(x.target.value,10))},[]),u=gi(x=>{x.preventDefault(),i.send(Wt,!0)},[e]),p=Wc(()=>x=>bs("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:x},"login"),[e]),f=gi(x=>bs("button",{type:"button",className:a.anchorButton,onClick:u,children:x},"prompt"),[u]),{min:m,hour:y,day:v}=Wc(()=>({min:mi(a,600,g),hour:mi(a,3600,g),day:mi(a,3600*12,g)}),[]);return zc("div",{className:Fv(t,a.root),children:[r("loginPlease",{login:c?f:p,productName:d}),o&&zc(Hv,{children:[bs("br",{}),r("snooze",{min:m,hour:y,day:v})]})]})},Cs=Bv;import{useDispatch as Kv}from"react-redux";var Vc={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as jc,jsxs as Wv}from"react/jsx-runtime";var Uv=({title:t})=>{let e=C("SearchTrigger",Vc),n=Kv(),o=q();return Wv("button",{type:"button",className:e.root,onClick:()=>{n(ve(!0)),o("open search",{via:"autocomplete-overlay"})},children:[jc(Zt,{}),jc("span",{className:e.text,children:t})]})},qc=Uv;var fi={};G(fi,{enUS:()=>zv,nlNL:()=>Vv});var zv={arrowHint:[{type:0,value:"Tip: use arrow keys to navigate suggestions"}],searchHintWindows:[{type:0,value:"Press CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],searchHintMac:[{type:0,value:"Press CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Close"}],search:[{type:0,value:"Search"}],dismiss:[{type:0,value:"Dismiss"}],dismissError:[{type:0,value:"Dismiss error"}]},Vv={arrowHint:[{type:0,value:"Tip: Selecteer suggesties met pijltoetsen"}],searchHintWindows:[{type:0,value:"Druk CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],searchHintMac:[{type:0,value:"Druk CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Sluiten"}],search:[{type:0,value:"Zoeken"}],dismiss:[{type:0,value:"Sluiten"}],dismissError:[{type:0,value:"Foutmelding sluiten"}]};var $c={root:"dd-oa7Vc",isInline:"dd-bwk31",toggleButton:"dd-MSB8Z",toggleButtonWrapper:"dd-ZkCzT",toggleButtonWrapperHidden:"dd-Sq66c",isCollapsed:"dd-vkrPk",collapsible:"dd-CWQJe",hints:"dd-IOoo3",hintsHidden:"dd-psVuT",triggers:"dd-toIoo",triggersRight:"dd-mc4l2",loginError:"dd-KCXeb",loginErrorMessage:"dd-Bv-BG",loginErrorDismiss:"dd-iSCjU"};import{jsx as X,jsxs as st}from"react/jsx-runtime";var Qv=({onLogIn:t})=>{var j;let e=C("SuggestionsOverlay",$c),n=A(fi),o=je(Ae),s=je(Ia),r=Gv(),i=qv(null),a=P("searchTriggerKey"),d=P("productName"),l=je(cs),c=je(Y),g=je(fa),u=je(Ft),[p,f]=$v(null),m=P("showSearch"),y=P("showTextSuggestions"),v=P("adminUrl"),x=P("isEmbedded"),w=P("suggestionsPlacement"),[T,k]=Bc("dd-snooze-until-ms",0),E=l||T>Date.now(),I=je(ut),B=je(vn),Z=P("showStyleSuggestions"),se=P("showStyleSuggestionList"),N=je(hs),_=Z&&se?ys((j=N.keywordMatches)!=null?j:[]):[],Ee=_.length>0,H=I.filter(Ne=>Ne.source!=="gpt").length,oe=()=>{E&&k(0),r(bc(!E))},O=Ne=>{let Lt=Date.now()+Ne*1e3;k(Lt),R.info(`Snooze until: ${new Date(Lt)}`),r(ot({collapse:!0}))};return jv(()=>{H===0&&f(null)},[I,H]),vt(()=>{r(ot({collapse:!0,skipWhenInputFocus:!0}))}),c===null||u===!1?null:c===!1?st("div",{ref:i,className:hi(e.root,{[e.isCollapsed]:E}),children:[!E&&st("div",{className:e.triggers,children:[X("div",{style:{flex:1}}),X("div",{className:e.triggersRight,children:X(Nt,{className:e.toggleButton,title:n("collapse"),onClick:oe,isCollapsed:!1})})]}),X("div",{className:e.toggleButtonWrapper,children:X(Nt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:oe,isCollapsed:!0})}),st("div",{className:e.collapsible,children:[g&&st("div",{className:e.loginError,children:[X("span",{className:e.loginErrorMessage,children:g}),X("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(go()),"aria-label":n("dismissError"),children:n("dismiss")})]}),X(Cs,{loginUrl:v,isEmbedded:x,onLogIn:t,onSnooze:O})]})]}):!s||!o&&!Ee?null:st("div",{ref:i,className:hi(e.root,{[e.isCollapsed]:E}),children:[!E&&st("div",{className:e.triggers,children:[X("div",{style:{flex:1},children:m&&X("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(Kc()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>f(null),children:X(qc,{title:n("search")})})}),st("div",{className:e.triggersRight,onFocus:()=>{},children:[X("div",{className:hi(!p&&e.hintsHidden,e.hints),children:p}),X(Nt,{className:e.toggleButton,title:n("collapse"),onClick:oe,isCollapsed:!1})]})]}),X("div",{className:e.toggleButtonWrapper,children:X(Nt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:oe,isCollapsed:!0})}),(Ee||H>0&&y)&&st("div",{className:e.collapsible,onFocus:()=>{},children:[Ee&&X(gs,{matches:_,selectedIndex:-1}),H>0&&y&&X(te,{children:X(ms,{suggestions:I,selectedIndex:B,reverse:w==="above"})})]})]})},Gc=Qv;import wi from"classnames";import{Interweave as OS}from"interweave";import{useCallback as DS,useEffect as _S,useMemo as mu,useRef as FS}from"react";import{connect as HS}from"react-redux";import{useEffect as Xv,useRef as Jv,useState as Zv}from"react";function ws(t){return t.contentEditable==="true"}function Yv(t){let e=0,n=0,o=window.getSelection();if(o.rangeCount!==0){let s=o.getRangeAt(0),r=s.cloneRange();r.selectNodeContents(t),r.setEnd(s.endContainer,s.endOffset),n=r.toString().length,r.selectNodeContents(t),r.setEnd(s.startContainer,s.startOffset),e=r.toString().length}return{selectionStart:e,selectionEnd:n}}function Qc(t){let{selectionStart:e,selectionEnd:n}=ws(t)?Yv(t):t;return[e,n]}function Xc(t){let[,e]=Zv(),n=Jv(null);return n.current=Qc(t),Xv(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=Qc(t);(!i||s!==i[0]||r!==i[1])&&(n.current=i,e({}))};return t.addEventListener("keyup",o),t.addEventListener("click",o),t.addEventListener("focus",o),document.addEventListener("selectionchange",o),()=>{t.removeEventListener("keyup",o),t.removeEventListener("click",o),t.removeEventListener("focus",o),document.removeEventListener("selectionchange",o)}},[t]),n.current}function Jc(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(lo);if(!i||i.length===0)return;let a=0;i.find(d=>{let l=o.indexOf(d,a);return s>l&&r<l+d.length?(n.selectionStart=l,n.selectionEnd=l+d.length,!0):(a=l+d.length,!1)})}import{cloneElement as eS}from"react";var tS=["div","span","mark","strong","b","i","u","em"];function yi(t,e,n=0){var r;let o=t[t.length-1],s=typeof o=="object"&&o!==null?(r=o.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,o];if(tS.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),eS(o,{children:yi(i,e,n+1)})]}return[...t,...e]}function kt(t){return t.tagName.toLowerCase()==="textarea"}var Zc={root:"dd-7-cgW",container:"dd-PsRQ8",agentText:"dd-qnW-V",tabText:"dd-cUHUr",hint:"dd-v7fSg",matchSelection:"dd-8cr8y",focus:"dd-3tr9l",resetIndent:"dd-TvQfZ",matchKeyword:"dd-oJkRD",matchPlaceholder:"dd-QvNoo",hover:"dd--wi0R",hintText:"dd-7gQQh",popover:"dd-xbRu-",popoverRoot:"dd-rA2x8",popoverContentContainer:"dd-JHICl",popoverContent:"dd--mfkC",selectionOptions:"dd-p52wn",selectionOptionsIsHidden:"dd-sSTDp",selectionOptionsButton:"dd-Q6kRY",caret:"dd-jIhc8",popoverSuggestionsRoot:"dd-iFDbL",suggestionsOverlayInputStyles:"dd-zzENA"};import lS from"classnames";import{Matcher as dS}from"interweave";import{useEffect as cS,useMemo as uS}from"react";import{useEffect as nS,useRef as oS,useState as sS}from"react";function Yc(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function Ts(t){let e=oS(null),[n,o]=sS(!1);return nS(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=Yc((g,u)=>{let p=e.current;if(!p)return;let f=g/r,m=u/r,y=p.getBoundingClientRect(),v=f>y.x&&f<y.x+y.width&&m>y.y&&m<y.y+y.height;v&&!s?(s=!0,o(!0)):!v&&s&&(s=!1,o(!1))},({clientX:g,clientY:u})=>[g,u]),[d,l]=Yc(()=>{s=!1,o(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",d),()=>{a(),l(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",d)}},[e]),[e,n]}function Es(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function ks(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function eu(t){return t!=null}import rS from"classnames";import{forwardRef as iS,useRef as aS}from"react";var qe={root:"dd-7-cgW",container:"dd-PsRQ8",agentText:"dd-qnW-V",tabText:"dd-cUHUr",hint:"dd-v7fSg",matchSelection:"dd-8cr8y",focus:"dd-3tr9l",resetIndent:"dd-TvQfZ",matchKeyword:"dd-oJkRD",matchPlaceholder:"dd-QvNoo",hover:"dd--wi0R",hintText:"dd-7gQQh",popover:"dd-xbRu-",popoverRoot:"dd-rA2x8",popoverContentContainer:"dd-JHICl",popoverContent:"dd--mfkC",selectionOptions:"dd-p52wn",selectionOptionsIsHidden:"dd-sSTDp",selectionOptionsButton:"dd-Q6kRY",caret:"dd-jIhc8",popoverSuggestionsRoot:"dd-iFDbL",suggestionsOverlayInputStyles:"dd-zzENA"};import{jsx as tu}from"react/jsx-runtime";var Ps=iS((s,o)=>{var r=s,{className:t,children:e}=r,n=D(r,["className","children"]);let i=aS(null),a=C("TabCompletion",qe);return tu("div",b(h({ref:ks([i,o]),className:rS(t,a.popoverContentContainer)},n),{children:tu("div",{className:a.popoverContent,children:e})}))});import{jsx as $n,jsxs as mS}from"react/jsx-runtime";var pS=t=>e=>{let n=Fr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},gS=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=C("TabCompletion",qe),i=zo(),a=uS(()=>pS(t.getBoundingClientRect()),[t]),[d,l]=Ts(t);return cS(()=>{l?i.open():i.close()},[l]),mS("span",{children:[$n("mark",{ref:ks([d,i.triggerRef]),className:lS(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&$n(jt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:$n(Ps,{style:n,children:$n("div",{className:r.hintText,children:s})})})]})},Rs=class extends dS{constructor(){super(...arguments);this.keywordMatches=[];this.preparedKeywordMatches=[];this.usedKeywordMatches=new Set}onBeforeParse(n,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(s=>b(h({},s),{keywordRegex:new RegExp(`\\b${Es(s.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),n}match(n){let o=this.preparedKeywordMatches.map(r=>{if(this.usedKeywordMatches.has(r))return null;let i=n.match(r.keywordRegex);if(!i)return null;let a=n.charAt(i.index-1),d=n.charAt(i.index+r.keyword.length);return a==="{"&&d==="}"?null:{index:i.index,length:i[0].length,match:i[0],matchString:i[0],suggestion:r.suggestion,preparedKeywordMatch:r,valid:!0}}).filter(eu);if(o.length===0)return null;let s=o.reduce((r,i)=>i.index<r.index?i:r);return this.usedKeywordMatches.add(s.preparedKeywordMatch),s}replaceWith(n,o){return $n(gS,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:n},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{Matcher as fS}from"interweave";import hS from"classnames";import{jsx as nu}from"react/jsx-runtime";var yS=({inputElement:t,children:e})=>{let n=C("TabCompletion",qe),[o,s]=Ts(t);return nu("mark",{ref:o,className:hS(n.matchPlaceholder,{[n.hover]:s}),children:e})},Is=class extends fS{match(e){let n=e.match(/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\}(?!\}))/);return n?{index:n.index,length:n[0].length,match:n[0],matchString:n[0],valid:!0}:null}replaceWith(e,n){return nu(yS,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import Ci from"classnames";import{Matcher as PS}from"interweave";import{createRef as RS,forwardRef as IS,useCallback as AS,useEffect as uu,useRef as pu,useState as gu}from"react";import{useDispatch as LS,useSelector as bi}from"react-redux";function ou(t,e){let n=new URL(t),o=n.searchParams.get("redirect");if(o){let s=new URL(o,n.origin);return e.forEach((r,i)=>{s.searchParams.set(i,r)}),n.searchParams.set("redirect",`${s.pathname}${s.search}${s.hash}`),n.toString()}return e.forEach((s,r)=>{n.searchParams.set(r,s)}),n.toString()}import{jsx as su}from"react/jsx-runtime";var ru=()=>su("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:su("path",{fill:"currentColor",d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"})});import{useCallback as vS,useEffect as au,useMemo as SS,useState as lu}from"react";import{useDispatch as xS,useSelector as du}from"react-redux";import bS from"lodash.debounce";var iu={root:"dd-ky-Bv",content:"dd-kV5e1"};function As(t,e,n){var s;let o=((s=t.imageSizes)==null?void 0:s[e])||t.image||n;if(!o)return null;try{return new URL(o).toString()}catch(r){return null}}function vi(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Pt,jsxs as Si}from"react/jsx-runtime";var CS=3,wS=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),TS=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=CS})=>{let r=C("LinkSearch",iu),[i,a]=lu(""),d=xS(),l=du(oc("url")),c=du(Ya("URL")),g=SS(()=>c.map(wS),[c]),[u,p]=lu(g.length-1),f=P("fallbackImage"),m=w=>{let T=w.target;a(T.value)},y=(w,T)=>{w.stopPropagation(),w.preventDefault(),window.open(T,"_blank")},v=w=>{var E;let T=u-1<0?g.length-1:u-1,k=u+1===g.length?0:u+1;w.code==="Escape"&&(a(""),e()),w.code==="ArrowUp"&&p(T),w.code==="ArrowDown"&&p(k),w.code==="Enter"&&t(((E=g[u])==null?void 0:E.text)||i)},x=vS(bS(w=>{d(mt({query:w,type:"URL",tags:["link-search"]}))},300),[]);return au(()=>{i&&x(i)},[i]),au(()=>()=>{d(To())},[]),Si("div",{className:r.root,children:[Pt(te,{withDivider:!0,children:(i?g:l).slice(0,s).map((w,T)=>Pt(M,{selected:u===T,onClick:()=>t(w.text),"data-testid":"linksearch-suggestion",children:Si(F,{children:[Pt(F.Image,{src:As(w,"small",f||void 0),title:w.title||w.text}),Si(F.Content,{className:r.content,cropText:!0,children:[Pt(F.Title,{children:w.title||vi(w.text)}),w.title&&vi(w.text)]}),Pt(M.Actions,{children:Pt(M.ActionButton,{label:o,onClick:k=>y(k,w.text)})})]})},w.text))}),Pt(Dn,{value:i,onChange:m,autoFocus:!0,placeholder:n,onKeyUp:v})]})},cu=TS;var xi={};G(xi,{enUS:()=>ES,nlNL:()=>kS});var ES={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}],addToPersonalCollection:[{type:0,value:"Add to Personal Collection"}]},kS={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}],addToPersonalCollection:[{type:0,value:"Toevoegen aan Personal Collection"}]};import{jsx as Ce,jsxs as Ls}from"react/jsx-runtime";var MS=IS((t,e)=>{let n=C("TabCompletion",qe);return Ce("mark",{ref:e,className:Ci(n.matchSelection)},"selection-start")}),NS=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=A(xi),i=C("TabCompletion",qe),a=P("addToPersonalCollection"),d=bi(zt("/admin/personal-collection/new")),l=bi(w=>{var T;return(T=w.conversation.current)==null?void 0:T.profileCode}),c=bi(pe)!==null,g=pu(null),u=pu(null),[p,f]=gu(null),m=LS(),y=zo(document.activeElement===o),[v]=gu(()=>document.createRange());y.triggerRef.current=v,uu(()=>()=>v.detach(),[]),uu(()=>{let w=t.current,T=g.current;!w||!T||(v.setStart(w,0),v.setEnd(T,0))},[t.current,g.current]),vt(()=>{y.close()});let x=AS(w=>{let T=v.toString(),k=/^http(s?):\/\//.test(w)?w:`https://${w}`,E=`[${T}](${k})`;m(le({text:E,suggestion:{text:E,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return Ls("span",{children:[Ce("mark",{ref:g,className:Ci(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":y.opened?"true":"false",children:s}),y.opened&&Ce(jt,{className:i.popoverRoot,triggerRef:y.triggerRef,boundaryRef:e,position:"above",align:"start",children:Ls(Ps,{style:n,ref:u,children:[Ls("div",{className:Ci(i.selectionOptions,{[i.selectionOptionsIsHidden]:p!==null}),children:[Ls("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>f("insertLink"),children:[Ce(ru,{}),Ce("span",{children:"\xA0"}),Ce("span",{children:r("insertLink")})]}),a&&d&&Ce("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let w=v.toString(),T=new URLSearchParams({text:w});c&&l&&T.set("profile",l);let k=ou(d,T);window.open(k,"_blank")},children:Ce("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&Ce(cu,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:x,onDismiss:()=>{f(null),y.close()}})]})})]},"selection-end")},Ms=class extends PS{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=RS(),this.foundIndex=0,n}match(n){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,s]=this.props.selection;if(o===s)return null;let r=this.foundIndex===0?o:s,i=r>=this.charCount&&r<=this.charCount+n.length?{index:r-this.charCount,length:0,match:"",valid:!0}:null;i&&this.foundIndex++;let a=this.foundIndex===1;return i&&a?this.charCount+=r-this.charCount:this.charCount+=n.length,i?h({isStart:a},i):null}replaceWith(n,o){return o.isStart?Ce(MS,{ref:this.startRef}):Ce(NS,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as BS}from"react-redux";import{jsx as en,jsxs as WS}from"react/jsx-runtime";var KS=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=C("TabCompletion",Zc),c=P("insertLink"),g=P("addToPersonalCollection"),u=P("showMidSentenceSuggestions"),p=P("inlineSuggestions"),f=Xc(a),m=FS(null),y=BS(Y);_S(()=>{kt(a)&&f&&Jc(a,f)},[f]);let v=DS(T=>{if(!s||!n)return T;let k=[en("span",{className:l.resetIndent,children:"\u200B"},"u200B"),en("span",{"data-testid":"tab-completion",className:wi(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&k.push(en("span",{className:wi(l.hint,l.resetIndent),children:en(Js,{keyCode:"tab"},"tabHint")},"tabHint")),yi(T,k)},[s,n,o]),x=mu(()=>{let T=[];return(c||g)&&T.push(new Ms("selection")),T.push(new Is("placeholders")),r&&T.push(new Rs("keywords")),T},[p,c,g,r]),w=mu(()=>{let T=window.getComputedStyle(a);return{"--dd-color":T.color,"--dd-font-size":T.fontSize,"--dd-font-family":T.fontFamily,"--dd-font-variant":T.fontVariant}},[]);return!t||!y?null:WS("div",{ref:T=>{T!=null&&T.parentElement&&(m.current=T==null?void 0:T.parentElement)},className:l.root,style:w,children:[en(OS,{tagName:"span",containerTagName:"div",className:wi(l.container,l.agentText),disableLineBreaks:kt(a),content:e||"\u200B",onAfterParse:v,matchers:x,selection:f,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!u}),en("br",{})]},"tab-completion")},US=t=>{var v,x,w;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=Ht({input:e}),a=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",l=(v=e.html)!=null?v:Kn(e.text),c=e.text.slice(e.suggestionTextStart,e.selection.end),g=a.indexOf(c)===0?a.slice(c.length):"",{showTabHint:u}=n,{isSupported:p}=r,{showTabCompletion:f,visible:m,showStyleSuggestions:y}=o;return{showTabHint:u,showStyleSuggestions:y,showTabCompletion:f&&Ae(t),content:l,tabText:g,source:d,keywordMatches:(w=(x=s.list)==null?void 0:x.keywordMatches)!=null?w:[],enabled:m&&p!==!1}},fu=HS(US)(KS);import{Fragment as Lx,useEffect as sn,useState as $u}from"react";import{useDispatch as Mi,useSelector as J}from"react-redux";import{createAsyncThunk as hu,createSlice as zS}from"@reduxjs/toolkit";var VS={token:null,interval:null},Ti=hu("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>S(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Ei=hu("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Ti()),setInterval(()=>o(Ti()),n)}),yu=zS({name:"passwordlessToken",initialState:VS,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Ti.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Ei.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:vu}=yu.actions,Su=yu.reducer;import{createSelector as jS}from"@reduxjs/toolkit";function qS(t){return"buttonText"in t&&"eventName"in t}function xu(t){if(t)return qS(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function $S(t){return t==null?void 0:t.map(e=>xu(e))}function Ns(t){return typeof t!="string"?void 0:t.trim().toLowerCase()||void 0}function Gn(t,e){let n=Ns(e);n&&t.add(n)}function GS(t){var o,s,r;let e=new Set,n=new Set;if(!Array.isArray(t))return{codes:e,names:n};for(let i of t){if(!i||typeof i!="object")continue;let a=i,d=typeof a.assistant=="object"?a.assistant:void 0;((r=(s=(o=a.isSilent)!=null?o:a.is_silent)!=null?s:d==null?void 0:d.isSilent)!=null?r:d!=null&&d.is_silent)&&(Gn(e,typeof a.assistant=="string"?a.assistant:d==null?void 0:d.code),Gn(n,a.assistantName),Gn(n,a.assistant_name),Gn(n,a.displayName),Gn(n,a.display_name))}return{codes:e,names:n}}function ki(t,e){var r,i,a;let{codes:n,names:o}=GS(e);if(n.size===0&&o.size===0)return!1;let s=(i=Ns(t.code))!=null?i:Ns((r=t.rule)==null?void 0:r.label);return s?n.has(s):[t.name,t.title,(a=t.rule)==null?void 0:a.name].some(d=>{let l=Ns(d);return l!==void 0&&(o.has(l)||n.has(l))})}function QS(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var bu=jS([hl,mo,Xt],(t,e,n)=>(e?t.filter(i=>!i.externalConversationId||i.externalConversationId===e):t).filter(i=>!ki(i,n)).map(i=>{var l;let a=xu(i.callToAction),d=$S(i.callToActions);return b(h(h(h(h({text:i.response,title:i.name},a?{callToAction:a}:{}),d!=null&&d.length?{callToActions:d}:{}),i.message!==void 0?{message:i.message}:{}),(l=i.sources)!=null&&l.length?{sources:i.sources}:{}),{editable:i.editable,isLoading:i.isLoading,evaluationId:i.evaluationId,rule:{id:QS(i.code),label:i.code,name:i.name,description:i.name}})}));import{useEffect as XS,useState as JS}from"react";import Tu from"classnames";import{jsx as Cu}from"react/jsx-runtime";var tn=()=>Cu("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Cu("path",{d:"M502.6 70.63l-61.25-61.25C435.4 3.371 427.2 0 418.7 0H255.1c-35.35 0-64 28.66-64 64l.0195 256C192 355.4 220.7 384 256 384h192c35.2 0 64-28.8 64-64V93.25C512 84.77 508.6 76.63 502.6 70.63zM464 320c0 8.836-7.164 16-16 16H255.1c-8.838 0-16-7.164-16-16L239.1 64.13c0-8.836 7.164-16 16-16h128L384 96c0 17.67 14.33 32 32 32h47.1V320zM272 448c0 8.836-7.164 16-16 16H63.1c-8.838 0-16-7.164-16-16L47.98 192.1c0-8.836 7.164-16 16-16H160V128H63.99c-35.35 0-64 28.65-64 64l.0098 256C.002 483.3 28.66 512 64 512h192c35.2 0 64-28.8 64-64v-32h-47.1L272 448z"})});var wu={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as nn,jsxs as Eu}from"react/jsx-runtime";var ZS=({entities:t})=>{let e=C("EntitiesWidgetList",wu),[n,o]=JS(void 0),s=q(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),ke(a.text),s("entity copied",{entity:a,type:"copy"}))};return XS(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:nn("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>Eu("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[nn("span",{className:e.entityText,children:a.text}),Eu("span",{className:e.iconWrapper,children:[nn("span",{className:Tu(e.icon),children:nn(tn,{})}),nn("span",{className:Tu(e.icon,n===d&&e.iconClicked),children:nn(tn,{})})]})]},a.text))})},ku=ZS;import{jsx as Pu}from"react/jsx-runtime";var Ru=()=>Pu("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Pu("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useRef as sx}from"react";import{useDispatch as rx,useSelector as ix}from"react-redux";var Iu={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Au={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as ex}from"react/jsx-runtime";var YS=({size:t=12})=>{let e=C("LoadingSpinner",Au);return ex("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Lu=YS;import{jsx as Mu}from"react/jsx-runtime";var Nu=()=>Mu("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Mu("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});import{jsx as Ou,jsxs as tx}from"react/jsx-runtime";var Du=t=>tx("svg",b(h({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[Ou("title",{id:"checkTitle",children:"Check"}),Ou("path",{fill:"#666",d:"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"})]}));var Pi={};G(Pi,{enUS:()=>nx,nlNL:()=>ox});var nx={error:[{type:0,value:"Something went wrong"}]},ox={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as $e,jsxs as _u}from"react/jsx-runtime";var ax=3e3,lx=({assistantOptions:t})=>{let e=C("OnDemandAssistants",Iu),n=A(Pi),o=sx(),s=rx(),r=Cn(ce),i=ix(Xt),a=q(),d=i.filter(u=>u.isPinned),l=i.filter(u=>!u.isPinned),c=()=>S(null,null,function*(){return t.attachments&&t.attachments.length>0?t.attachments:s(((u,p,f)=>S(null,null,function*(){let m;if(t.transcript==="in-memory-transcript"){let y=f.dynamicThunkObject.conversationQuery;if(y){let v=yield y();m=Array.isArray(v)?v:void 0}}else Array.isArray(t.transcript)&&(m=t.transcript);return kr({transcript:m})})))}),g=(u,p=!1)=>S(null,null,function*(){clearTimeout(o.current);let f=yield c();a("trigger on demand assistant",{assistantCode:u}),yield r.call(h(b(h({},t),{assistantCode:u,silent:p}),f.length>0?{attachments:f}:{})),o.current=setTimeout(()=>r.reset(),ax)});return i.length===0?null:_u("div",{className:e.root,children:[d.map(({assistant:u,assistantName:p,displayName:f,isSilent:m})=>$e("button",{type:"button",className:e.button,disabled:r.state==="loading",onClick:()=>g(u,m),children:f||p},u)),l.length>0&&_u(V,{placement:"top-end",children:[$e(V.Trigger,{className:e.trigger,disabled:r.state==="loading",children:$e(rs,{"data-testid":"trigger"})}),$e(V.Content,{className:e.nav,"data-testid":"popover",children:l.map(({assistant:u,assistantName:p,displayName:f,isSilent:m})=>$e(V.Button,{className:e.item,disabled:r.state==="loading",onClick:()=>g(u,m),children:f||p},u))})]}),r.state==="loading"&&$e(Lu,{}),r.state==="done"&&$e(Du,{"data-testid":"trigger-done"}),r.state==="error"&&$e(Wl,{trigger:$e(Nu,{}),children:n("error")})]})},Fu=lx;import{useDispatch as yx,useSelector as vx}from"react-redux";import{useEffect as Hu,useRef as ux,useState as px}from"react";var Qn={};G(Qn,{enUS:()=>dx,nlNL:()=>cx});var dx={useCue:[{type:0,value:"Add to message"}],__summarizerAssistant__:[{type:0,value:"Summary"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},cx={useCue:[{type:0,value:"Voeg toe aan bericht"}],__summarizerAssistant__:[{type:0,value:"Samenvatting"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Ri={title:"dd-YBHrC",fadeup:"dd-cRM0K",fadedown:"dd-7D4Pq",selected:"dd-bueui",actions:"dd-9Iqn9",ctaMessage:"dd-ge8nB",thumbsUp:"dd-6QwVx",thumbsDown:"dd-d3E8l",form:"dd-sPNU2",formInput:"dd-F3E4I",formSubmit:"dd-vw5S0",actionButton:"dd-cCWyJ",editableCue:"dd-nWSD-",inputSpace:"dd-DGYB1"};import{jsx as we,jsxs as Os}from"react/jsx-runtime";var gx=500,mx=100,fx=({content:t,onChange:e,onCopy:n})=>{let o=ux(null),s=C("WidgetCue",Ri);return Hu(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,mx),gx);r.style.setProperty("height",`${i}px`)},[t]),we("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},hx=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s,onSourceClick:r})=>{var y;let i=C("WidgetCue",Ri),a=A(Qn),d=q(),l=P("hasKeyboardInput"),[c,g]=px(t.text),u=v=>{let x=v?b(h({},t),{callToAction:v}):t;e&&e(c,x),n(t)},p=(v,x)=>{o&&o(v,t),x&&Ye(x,i.fadeup)},f=v=>{s&&s(v,t)},m=v=>{v.preventDefault(),v.stopPropagation(),n(t)};return Hu(()=>{d("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),Os(M,{"data-testid":"cue",children:[we(F,{children:Os(F.Content,{children:[t.title&&we(F.Title,{className:i.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?a(t.rule.label):t.title}),t.message&&we("p",{className:i.ctaMessage,children:t.message}),t.editable?we(fx,{content:c,onCopy:()=>{let v=document.getSelection();v&&p(v.toString())},onChange:v=>{var x;return g((x=v.target.value)!=null?x:"")}}):we(xt,{content:t.text,sources:t.sources,onSourceClick:v=>r==null?void 0:r(v,t),useLabel:a("useCue"),copyLabel:a("copyCue"),onCopy:p,onUse:l?f:void 0})]})}),Os(M.ButtonsContainer,{children:[Os("div",{className:i.actions,children:[we(M.Button,{onClick:v=>{var x;return p((x=Oo(c,"reply")[0])!=null?x:c,v.target)},variant:"primary",children:a("copyCue")}),t.callToAction&&we(M.Button,{onClick:()=>u(),variant:"primary",children:t.callToAction.label}),(y=t.callToActions)==null?void 0:y.map((v,x)=>we(M.Button,{onClick:()=>u(v),variant:"primary",children:v.label},`${v.event}-${v.label}-${x}`)),we(M.Button,{onClick:m,variant:"secondary",children:a("removeCue")})]}),we(Uo,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackType:"assistant"})]})]})},Bu=hx;import{Fragment as xx,jsx as Ii}from"react/jsx-runtime";var Sx=({cues:t})=>{let e=yx(),n=ie(),o=A(Qn),s=q(),r=vx(Xt),i=u=>{e(_o({code:u.rule.label})),s("Assistant response closed",{evaluationId:u.evaluationId,assistantCode:u.rule.label,assistantOutput:u.text})},a=(u,p)=>{ke(u),s("Assistant response copied",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,copiedText:u})},d=(u,p)=>{var f;p.callToAction&&(e(Do(p)),s("Assistant call to action",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,eventName:p.callToAction.event,value:(f=p.callToAction.value)!=null?f:u}))},l=(u,p)=>{var f;n.send(Fe,{text:u,suggestion:{source:"assistant",assistantCode:(f=p.rule)==null?void 0:f.label,sourceText:u}}),s("Assistant response used",{evaluationId:p.evaluationId,assistantCode:p.rule.label,assistantOutput:p.text,usedText:u})},c=(u,p)=>{s("Assistant source clicked",{evaluationId:p.evaluationId,assistantCode:p.rule.label,source:u})},g=t.filter(u=>!ki(u,r));return Ii(xx,{children:g.map(u=>u.isLoading?Ii(qo,{title:u.rule.label.startsWith("__")?o(u.rule.label):u.title},u.rule.id):Ii(Bu,{cue:u,onCallToAction:d,onRemove:i,onCopy:a,onUse:l,onSourceClick:c},u.evaluationId))})},Ku=Sx;import{Fragment as bx,useEffect as Cx}from"react";var Uu={root:"dd-cvTAY",label:"dd-QWQxD",value:"dd-WSUHF",copyButton:"dd-67o9H",copyButtonText:"dd-oos-l",isTrue:"dd--1g2O",isFalse:"dd-sz2ir"};import{jsx as Ge,jsxs as Ai}from"react/jsx-runtime";function wx(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Wu=({data:t,schema:e})=>{let n=C("WidgetCustomData",Uu),o=s=>{ke(s)};return Cx(()=>{R.info("Custom data",t,e)},[t]),Ge("dl",{className:n.root,children:e.map(s=>{let r=wx(t,s.path);return Ai(bx,{children:[Ge("dt",{className:n.label,children:s.label}),Ge("dd",{className:n.value,children:s.type==="boolean"&&r?Ge("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?Ge("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?Ai("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[Ge("span",{className:n.copyButtonText,children:r.join(", ")}),Ge(tn,{})]}):typeof r=="string"||typeof r=="number"?Ai("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[Ge("span",{className:n.copyButtonText,children:r}),Ge(tn,{})]}):"-"})]},s.label)})})};import{useCallback as Ex}from"react";var Tx=/(https?:\/\/[^\s]+)/,zu=t=>t.split(" ").find(e=>Tx.test(e));import{jsx as on,jsxs as Ds}from"react/jsx-runtime";var kx=({suggestion:t,lines:e,onUse:n})=>{var g;let o=t.text||t.url||t.message,s=zu(o),r=A(Un),i=P("showImages"),a=P("fallbackImage"),d=P("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=Ex(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return Ds(M,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[Ds(F,{children:[i&&t.image&&on(F.Image,{src:As(t,"small",a||void 0),title:t.title}),Ds(F.Content,{children:[t.title&&on(F.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&on(M.Labels,{labels:t.searchKeywords}),on(F.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),Ds(M.Actions,{children:[s&&on(M.ActionButton,{onClick:c,label:r("visitUrl")}),d&&on(M.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},Vu=kx;import{Fragment as Rx,jsx as ju}from"react/jsx-runtime";var Px=({lines:t,suggestions:e})=>{let n=ie(),o=(s,r)=>{n.send(Fe,{text:s,suggestion:b(h({},r),{source:r.source,sourceText:r.text})})};return ju(Rx,{children:e.map(s=>ju(Vu,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},qu=Px;var Xn={};G(Xn,{enUS:()=>Ix,nlNL:()=>Ax});var Ix={waiting:[{type:0,value:"Loading\u2026"}],waitingForConversation:[{type:0,value:"Waiting for conversation\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"My "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}],close:[{type:0,value:"Close"}]},Ax={waiting:[{type:0,value:"Laden\u2026"}],waitingForConversation:[{type:0,value:"Wachten op gesprek\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}],close:[{type:0,value:"Sluiten"}]};var Rt={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",footer:"dd-tvofr",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",footerShortcut:"dd-dH7XJ",link:"dd-DRo0x",interactiveAssistantTabs:"dd-eSP1-",interactiveAssistantTab:"dd-CwcHD",interactiveAssistantTabActive:"dd-GzRs-"};import{jsx as L,jsxs as Jn}from"react/jsx-runtime";var Gu=(t,e)=>{let n=J(Y);sn(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},Mx=({onLogIn:t})=>{let e=C("Widget",Rt),n=P("isEmbedded"),o=P("adminUrl");return L("div",{className:e.loginText,children:L("div",{children:L(Cs,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},Li=({text:t})=>{let e=C("Widget",Rt);return L("div",{className:e.stateText,children:L("div",{children:L("p",{children:t})})},"notification")},Nx=()=>{let t=A(Xn),e=Mi(),n=C("Widget",Rt),o=P("showSearch"),s=P("isEmbedded"),r=J(zt("/admin/")),i=ie(),a=P("productName"),d=q();return Gu(()=>{if(s)return e(Ei()),()=>{e(vu())}},[e,s]),!o&&!r?null:Jn("div",{className:n.shortcutList,children:[o&&L(M.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:L(Zt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&L(M.Button,{as:"a",target:"_blank",icon:L(Ru,{}),href:r,"data-testid":"shortcut-studio-login","aria-label":t("linkStudioLogin",{productName:a}),className:n.shortcut,rel:"noreferrer",onClick:()=>{d("open my deepdesk",{via:"widget-shortcut"})},children:t("linkStudioLogin",{productName:a})})]})},Ox=({title:t,content:e})=>{let n=A(Xn),[o,s]=$u(!0);return o?L(Oe,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:L(te,{withDivider:!0,children:Jn(M,{children:[L(F,{children:L(F.Content,{children:L(xt,{content:e})})}),L(M.ButtonsContainer,{children:L(M.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},Dx=()=>{let t=Mi(),e=J(Hn),n=J(wd),o=J(bu),s=J(Wa),r=J(ss),i=J(as),a=J(me),d=J(pe);return sn(()=>{s&&!n&&R.warn("Custom data provided, but no schema.")},[s,n]),Gu(()=>{e.forEach(({type:l})=>{l==="entities"?t(Se()):co.includes(l)||t(xe(l))})},[t,d,a,e]),sn(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&R.warn("Received cues, but cues are not configured in widget.")},[e,o]),L(Lx,{children:e.map(({type:l,title:c,amount:g,lines:u,schema:p,property:f})=>{var m,y;switch(l){case"entities":return r&&r.length>0&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(ku,{entities:r})},l);case"cues":return o&&o.length>0&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(Ku,{cues:o})})},l);case"custom-data-banner":return s&&f&&s[f]&&L(Ox,{title:c,content:String(s[f])},l);case"custom-data":return s&&p&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(Wu,{data:s,schema:p})})},l);default:return((y=(m=i[l])==null?void 0:m.suggestions)==null?void 0:y.length)>0&&L(Oe,{type:l,title:c,"data-testid":`type-${l}`,children:L(te,{withDivider:!0,children:L(qu,{lines:u,contentType:l,suggestions:i[l].suggestions.slice(0,g)||[]})})},l)}})})},Ni=({children:t})=>{let e=C("Widget",Rt);return L("div",{className:e.footer,children:t})},Oi=({children:t})=>{let e=C("Widget",Rt);return L("div",{className:e.root,"data-testid":"widget",children:t})},_x=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"},openAdminFeedback:o})=>{var T;let s=A(Xn),r=C("Widget",Rt),i=Mi(),a=J(Ft),d=J(Y),l=J(mo),c=J(me),g=J(Cd("knowledge-assist")),u=J(Td),p=J(Sl),f=J(vl),m=(T=u.find(k=>k.code===p))!=null?T:u[0],[y,v]=$u(e.initialQuestion);sn(()=>{v(e.initialQuestion)},[l,e.initialQuestion]),sn(()=>{if(!l)return;let k=yn(l);k&&i(Rr(k))},[i,l]),sn(()=>{if(u.length===0)return;let k=u.some(E=>E.code===p);(!p||!k)&&i(Pr(u[0].code))},[u,p,i]);let x=!!g&&u.length>0&&!!m,w=(m==null?void 0:m.displayName)||(m==null?void 0:m.name)||(g==null?void 0:g.title)||"Knowledge Assistant";return a===!1?L(Li,{text:s("notSupported")}):d===!1?L(Mx,{onLogIn:t}):d===null?L(Li,{text:s("waiting")}):!l||!c?L(Li,{text:s("waitingForConversation")}):L(Fl,{handler:o,children:L(Oi,{children:Jn(Qo,{initialQuestion:y,onInitialQuestionConsumed:()=>v(void 0),assistantCode:m==null?void 0:m.code,threadId:f,onThreadIdChange:k=>{m!=null&&m.code&&k!=null&&i(Ir({assistantCode:m.code,threadId:k}))},evaluateKnowledgeAssistFn:Nn,children:[Jn(gn,{children:[L(Nx,{}),L(Dx,{}),x&&L(Jo,{title:w,emptyState:e.emptyState})]}),Jn(Ni,{children:[x&&u.length>1&&L("div",{className:r.interactiveAssistantTabs,"data-testid":"widget-interactive-assistant-tabs",children:u.map(k=>{let E=k.code===(m==null?void 0:m.code);return L("button",{type:"button","aria-pressed":E,className:E?r.interactiveAssistantTabActive:r.interactiveAssistantTab,onClick:()=>i(Pr(k.code)),children:k.displayName||k.name},k.code)})}),x&&L(Xo,{}),L(Fu,{assistantOptions:n})]})]},m==null?void 0:m.code)})})},Qu=_x;function Yn(t){let e=new Range;return e.selectNodeContents(t),e}function Xu(t,e,n){try{return It(t,e,n),!0}catch(o){return!1}}function _s(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Fs(t){return"tagName"in t&&t.tagName==="BR"}var Zn=/[\u200B-\u200D\uFEFF]/g;function It(t,e,n){let o=new Range;if(t.firstChild===null&&e===0&&n===0)return o.selectNodeContents(t),o;let s=0,r=!1;function i(d,l){let c=-1,g=/[\u200B-\u200D\uFEFF]/;if(!g.test(d))return l;for(let u=0;u<=d.length;u++)if(g.test(d[u])||c++,c===l)return u;throw new Error("Offset out of range")}function a(d){switch(d.nodeType){case Node.TEXT_NODE:{let l=d.textContent,c=l.replace(Zn,""),g=s+c.length,u=e>=s&&e<=g,p=n>=s&&n<=g;if(u){let f=i(l,e-s);f===0&&!p?o.setStartBefore(d):o.setStart(d,f)}p&&(o.setEnd(d,i(l,n-s)),r=!0),s=g;break}case Node.ELEMENT_NODE:{if(Fs(d)&&(s===e&&o.setStartBefore(d),s++,s===n)){o.setEndAfter(d),r=!0;return}for(let c=0;c<d.childNodes.length&&(a(d.childNodes[c]),!r);c++);let l=d.lastChild;_s(d)&&l&&!_s(l)&&!Fs(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}function Hs(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:n,startOffset:o,endContainer:s,endOffset:r,collapsed:i}=e,a,d,l=0;function c(g){let u=g===t,p=g===n,f=g===s;switch(g.nodeType){case Node.TEXT_NODE:{let m=g.textContent;p&&(a=l+m.substring(0,o).replace(Zn,"").length),f&&(d=l+m.substring(0,r).replace(Zn,"").length),l+=m.replace(Zn,"").length;break}case Node.ELEMENT_NODE:{if(Fs(g)&&g.nextSibling){l++;break}!u&&_s(g)&&g.previousSibling&&l++;for(let m=0;m<g.childNodes.length;m++){let y=p&&m===o,v=f&&m===r;if(y&&(a=l),v&&(d=l),d!==void 0||((!y||!i)&&c(g.childNodes[m]),f&&m===r-1&&(d=l),d!==void 0))break}f&&(d=l);break}default:break}}if(c(t),d===void 0)throw new Error("Could not determine start and end");return{start:a!=null?a:d,end:d}}function Bs(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:n,startOffset:o,endContainer:s,endOffset:r,collapsed:i}=e,a=0,d="";function l(c){let g=c===t,u=c===n,p=c===s;switch(u&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let f=u?o:0,m=p?r:void 0;d+=c.textContent.replace(Zn,"").substring(f,m);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&Fs(c)&&c.nextSibling){d+=`
10
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};
11
+ `);let f=u?o:0,m=p?Math.min(r,c.childNodes.length):c.childNodes.length;for(let y=f;y<m&&(l(c.childNodes[y]),a!==2);y++);break}default:break}p&&(a=2)}return l(t),d}var Ju=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(Ju||{}),rt=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedSuggestionTextStart=0;this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedSuggestionTextStart=this.getSuggestionTextStart(),this.cachedHTML=this.getHTML(),this.cachedSelection=this.getSelection(),this.listen()}addEventListener(e,n){let o=s=>{n(s)};this.element.addEventListener(e,o),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,o)})}removeEventListener(e,n){this.element.removeEventListener(e,n)}handleInteraction(){let e=this.getText(),n=this.getHTML(),o=this.getSelection(),s=this.getSuggestionTextStart(),r=this.cachedCaretPosition===null;if(!this.isActive)return;e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit");let i=e!==this.cachedText,a=n!==null&&n!==this.cachedHTML,d=s!==this.cachedSuggestionTextStart;if((i||a||d)&&(i?(this.cachedText=e,this.cachedHTML=n):a&&(this.cachedHTML=n),this.cachedSuggestionTextStart=s,r=!0,this.emit("change",{plainText:e,rawHTML:n,suggestionTextStart:s})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,r=!0,this.emit("selection",o)),!r)return;let l=this.getCaretPosition();Je(l,this.cachedCaretPosition)||(this.cachedCaretPosition=l,this.emit("caretposition",l))}handleClick(){this.handleInteraction()}handleFocus(){let e=!this.isFocused;this.isFocused=!0,e&&this.emit("focus"),this.handleInteraction()}handleBlur(){this.isPossibleClearInputAction=!1;let e=this.isFocused;this.isFocused=!1,e&&this.emit("blur")}handleKeyDown(e){let{key:n,ctrlKey:o,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(Ju).includes(n)||n.toLowerCase()==="z"&&(o||s),this.emit("keydown",e)}handleKeyUp(e){this.handleInteraction(),this.emit("keyup",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var o,s;let n=((o=e.clipboardData)==null?void 0:o.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:n,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.handleInteraction()),this.addEventListener("change",()=>this.handleInteraction()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",n=>this.handlePaste(n)),this.addEventListener("click",()=>this.handleInteraction()),document.activeElement===this.element&&(this.isFocused=!0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()})}getSuggestionTextStart(){return 0}focus(){this.element.focus()}emit(e,...n){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(o=>{o(...n)})}on(e,n){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n))}off(e,n){if(!this.eventListeners[e])return;let o=this.eventListeners[e].indexOf(n);o!==-1&&this.eventListeners[e].splice(o,1)}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.handleInteraction()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};function Zu(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var rn=class extends rt{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Bs(this.element,n)}getHTML(){return this.element.innerHTML||""}getRange(){let n=this.getRootNode();if(n.activeElement!==this.element)return null;let o="getSelection"in n?n.getSelection():window.getSelection();if(!o)return null;let s=o.rangeCount>0?o.getRangeAt(0):null;if(!s)return null;let r=this.element.ownerDocument.createRange();return r.setStart(s==null?void 0:s.startContainer,s==null?void 0:s.startOffset),r.setEnd(s==null?void 0:s.endContainer,s==null?void 0:s.endOffset),!r||!this.element.contains(r.startContainer)||!this.element.contains(r.endContainer)?null:r}getCaretPosition(){let n=this.getRange();if(!n||!n.collapsed||!("getBoundingClientRect"in n))return null;let o=n.getBoundingClientRect();return!Zu(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!Zu(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return Hs(this.element,n);let o=this.lastKnownSelection;if(o&&Xu(this.element,o.start,o.end))return o;let s=Yn(this.element);return s.collapse(!1),Hs(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Bs(this.element,It(this.element,n,o))}listen(){super.listen();let n=new MutationObserver(r=>{var i,a;r.length===2&&r[0].addedNodes.length===1&&((i=r[0].addedNodes[0])==null?void 0:i.textContent)==="\u2060"&&((a=r[1].removedNodes[0])==null?void 0:a.textContent)==="\u2060"||setTimeout(()=>{this.handleInteraction()},0)});n.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),this.disposeHandlers.push(()=>n.disconnect());let o=this.element.isContentEditable,s=new MutationObserver(()=>{this.element.isContentEditable!==o&&(o=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>s.disconnect())}};var Fx=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize"];function Yu(t,e){let n="mozInnerScreenX"in window,o=document.createElement("div");o.id="input-textarea-caret-position-mirror-div";let s=o.style,r=window.getComputedStyle(t),i=t.ownerDocument.body;s.whiteSpace="pre-wrap",s.wordWrap="break-word",s.position="absolute",s.visibility="hidden",Fx.forEach(c=>{s[c]=r[c]}),n?t.scrollHeight>Number.parseInt(r.height)&&(s.overflowY="scroll"):s.overflow="hidden",o.textContent=t.value.substring(0,e);let a=document.createElement("span");a.textContent=t.value.substring(e)||".",o.appendChild(a),i.appendChild(o);let d=t.getBoundingClientRect(),l={top:d.top-t.scrollTop+a.offsetTop+Number.parseInt(r.borderTopWidth)+a.offsetHeight,left:d.left-t.scrollLeft+a.offsetLeft+Number.parseInt(r.borderLeftWidth)};return i.removeChild(o),l}var an=class extends rt{constructor(){super(...arguments);this.lastKnownSelection=null}getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:n,selectionEnd:o}=this.element;return{start:n,end:o}}getSelectedText(){let n=this.getSelection();return n?this.getText().slice(n.start,n.end):""}getCaretPosition(){return Yu(this.element,this.element.selectionEnd)}listen(){super.listen();let n=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var r;return(r=n==null?void 0:n.get)==null?void 0:r.call(this.element)},set:r=>{var i;(i=n==null?void 0:n.set)==null||i.call(this.element,r),this.handleInteraction()}}),this.addEventListener("scroll",()=>{this.emit("caretposition",this.getCaretPosition())});let o=this.element.disabled,s=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>s.disconnect())}};function ep(t,e,n){let o=`deepdesk-iframe-${t}`,s=document.getElementById(o);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(n).forEach(([a,d])=>{i.searchParams.append(a,d)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=o,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}function Hx(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var Di=class{constructor(e){this.name=e;this.disposeHandlers=[];this.broadcastChannel=new BroadcastChannel(e)}onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},_i=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=ep(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var n;(n=this.iframe.contentWindow)==null||n.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(n=>n()),(e=this.iframe)==null||e.remove()}},Fi=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.externalId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setExternalId(e){this.externalId!==e&&(this.cleanup(),R.info("Set externalId",e),this.externalId=e,this.channel=this.createChannel(e))}createChannel(e){let n=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new _i(e,this.deepdeskUrl,{debug:!0}):new Di(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=Hx(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(R.info("Received broadcast event",this.externalId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return n.onMessage(o),n}send(e,n,o){var i,a;R.info("Broadcast event",{externalId:this.externalId,name:e,payload:n});let s={type:"event",name:e,payload:n};o!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,n));let r=this.externalId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage(b(h({},s),{channel:this.externalId}))}cleanup(e=!1){var n,o;(n=this.channel)==null||n.close(),this.channel=void 0,e&&((o=this.defaultChannel)==null||o.close(),this.defaultChannel=void 0)}},tp=Fi;function Bx(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function U(t){return Array.isArray(t)?t.map(U):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(h({},e),{[Bx(n)]:U(t[n])}),{}):t}function Kx(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function ee(t){return Array.isArray(t)?t.map(ee):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(h({},e),{[Kx(n)]:ee(t[n])}),{}):t}var ln=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var eo=t=>new Promise(e=>{setTimeout(e,t)});var Te=class extends ln{constructor(){super(...arguments);this.name="ClientError"}},Ks=class extends ln{constructor(){super(...arguments);this.name="ServerError"}},Hi=new Map;function np(t){return S(this,null,function*(){if(t.status===204)return t.text().catch(()=>{}),null;let e=t.headers.get("content-type");if(e!=null&&e.includes("application/json"))return t.json();let n=yield t.text();return n===""?null:(R.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var dn=class{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};this.refreshingToken=null;this.lastFailedRefreshAt=null;this.failedRefreshCooldown=1e4;var o;this.fetch=(o=n.fetch)!=null?o:window.fetch.bind(window)}patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,d=n.method===void 0||n.method.toLowerCase()==="get",E=n,{useCache:l=!1,abortLatest:c=!1,attempts:g=1,retryDelay:u=500,refreshTokenOn401:p=!0,retryOnError:f=I=>I instanceof TypeError,retryOnResponse:m=I=>I.status>=500,version:y=null}=E,v=D(E,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(Hi.has(i)){o(Hi.get(i));return}}let x=b(h({credentials:"include"},v),{headers:h({Accept:"application/json","Content-Type":"application/json"},v.headers)});!d&&this.csrfToken&&(x.headers=b(h({},x.headers),{"X-CSRFToken":this.csrfToken})),typeof y=="string"&&(x.headers=b(h({},x.headers),{"X-Deepdesk-API-Version":y}));let w=g,T=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&c&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let k=()=>S(this,null,function*(){return w--,a(i,x).then(I=>S(this,null,function*(){return m(I)&&!r.isAborted&&w>0?(yield eo(u),k()):I.status===401&&p===!0&&T===!1?(T=!0,yield this.refreshToken(),k()):I})).catch(I=>S(this,null,function*(){if(f(I)&&!r.isAborted&&w>0)return yield eo(u),k();throw I}))});k().then(I=>S(this,null,function*(){let B=yield np(I);if(delete this.latestRequestByUrl[i],I.status>=500){s(new Ks("Server Error",B));return}if(I.status===401){s(new Te("Unauthorized",B));return}if(I.status===403){s(new Te("Forbidden",B));return}if(I.status===404){s(new Te("Not Found",B));return}if(I.status>=400){s(new Te("Bad Request",B));return}l&&Hi.set(i,B),o(B)})).catch(I=>{s(I)})})}validateToken(){return S(this,null,function*(){let e,n,o;try{({has_valid_access_token:e,is_logged_in:n,has_valid_refresh_token:o}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1}))}catch(s){return!1}if(!e){if(!o)return!1;try{yield this.refreshToken();let{is_logged_in:s}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1});return s}catch(s){return!1}}return n})}refreshToken(){let e=Date.now();return this.lastFailedRefreshAt&&e-this.lastFailedRefreshAt<this.failedRefreshCooldown?Promise.reject(new Te("Unauthorized","Failed to refresh token")):this.refreshingToken?this.refreshingToken:(this.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).catch(n=>{throw(n==null?void 0:n.message)==="Unauthorized"&&(this.lastFailedRefreshAt=Date.now()),n}).finally(()=>{this.refreshingToken=null}),this.refreshingToken)}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,h({method:"POST",body:JSON.stringify(n)},o))}postWithStatus(e,n,o){return this.requestWithStatus(e,h({method:"POST",body:JSON.stringify(n)},o))}requestWithStatus(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,k=n,{useCache:d=!1,abortLatest:l=!1,attempts:c=1,retryDelay:g=500,refreshTokenOn401:u=!0,retryOnError:p=E=>E instanceof TypeError,retryOnResponse:f=E=>E.status>=500,version:m=null}=k,y=D(k,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]),v=b(h({credentials:"include"},y),{headers:h({Accept:"application/json","Content-Type":"application/json"},y.headers)});this.csrfToken&&(v.headers=b(h({},v.headers),{"X-CSRFToken":this.csrfToken})),typeof m=="string"&&(v.headers=b(h({},v.headers),{"X-Deepdesk-API-Version":m}));let x=c,w=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let T=()=>S(this,null,function*(){return x--,a(i,v).then(E=>S(this,null,function*(){return f(E)&&!r.isAborted&&x>0?(yield eo(g),T()):E.status===401&&u===!0&&w===!1?(w=!0,yield this.refreshToken(),T()):E})).catch(E=>S(this,null,function*(){if(p(E)&&!r.isAborted&&x>0)return yield eo(g),T();throw E}))});T().then(E=>S(this,null,function*(){let I=yield np(E);if(delete this.latestRequestByUrl[i],E.status>=500){s(new Ks("Server Error",I));return}if(E.status===401){s(new Te("Unauthorized",I));return}if(E.status===403){s(new Te("Forbidden",I));return}if(E.status===404){s(new Te("Not Found",I));return}if(E.status>=400){s(new Te("Bad Request",I));return}o({status:E.status,data:I})})).catch(E=>{delete this.latestRequestByUrl[i],s(E)})})}patch(e,n,o){return this.request(e,h({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,h({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,h({method:"DELETE"},n))}};var op;(e=>{let t;(a=>(a.SUCCESS="success",a.FAILURE="failure",a.CONDITIONS_NOT_MET="conditions_not_met",a.MAX_RECURSION_LEVEL="max_recursion_level",a.NO_ACCESS_TO_ASSISTANT="no_access_to_assistant"))(t=e.EvaluationStatus||(e.EvaluationStatus={}))})(op||(op={}));function Us(t){return b(h({},U(t)),{metadata:t.metadata})}var At=class At{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new dn(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>S(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return S(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(At.exchangeTokenPromise||(At.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),At.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return S(this,null,function*(){var o;yield this.preflight(),R.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",b(h({chat_start_time:new Date().toISOString()},ee(e)),{metadata:(o=e.metadata)!=null?o:{}}));return Us(n)})}upsertConversation(e){return S(this,null,function*(){var c;yield this.preflight(),R.info(`Upserting conversation for session ${e.externalId} and agent ${e.agentId}`);let{status:n,data:o}=yield this.client.postWithStatus("/api/v2/conversations",b(h({chat_start_time:new Date().toISOString()},ee(e)),{metadata:(c=e.metadata)!=null?c:{}}),{version:"v2"}),s=Us(o);if(n===201)return s;let{agentId:r,agentName:i,agentEmail:a,agentNickname:d,metadata:l}=e;return this.updateConversation(s.id,{agentId:r,agentEmail:a,agentName:i,agentNickname:d,metadata:l})})}getMe(){return S(this,null,function*(){yield this.preflight();let e=yield this.client.get("/apis/admin/session/me/");return U(e)})}postIdentity(e){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",ee(e))})}patchMe(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",ee(e));return U(n)})}getProfile(e){return S(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return U(n)})}getKnowledgeAssistant(e){return S(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return U(n)})}getContentTypes(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return U(e)})}getAccount(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return U(e)})}getPlatformConfig(e){return S(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return U(o)})}checkUserExists(e){return S(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return S(this,arguments,function*(e,n={}){yield this.preflight(),R.info(`Getting conversation for session ${e}`);let{attempts:s=1,retryDelay:r=1e3}=n,i=yield this.client.get(`/api/v2/conversations/by_external_id/${e}`,{attempts:s,retryDelay:r,retryOnResponse:a=>a.status===404||a.status>=500,version:"v2"});return R.info(`Successfully retrieved conversation ${i.id} for session ${e}`),Us(i)})}isConversationSupported(o){return S(this,arguments,function*(e,n={}){R.info(`Check if conversation for session ${e} is supported`);let{attempts:s=1,retryDelay:r=1e3}=n;return(yield this.client.get(`/api/v2/conversations/by_external_id/${e}/has_active_profile`,{attempts:s,retryDelay:r,retryOnResponse:a=>a.status===404||a.status>=500})).has_active_profile})}updateConversation(e,n){return S(this,null,function*(){var r;yield this.preflight();let o=ee(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return Us(s)})}postMessages(e,n){return S(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>b(h({},ee(o)),{metadata:o.metadata})))})}sendEvent(e,n){return S(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=D(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>b(h({},d),{[l]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,l)=>(s[l]&&(d[l]=s[l]),d),{});return this.client.post("/api/v2/events",ee(b(h(h({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return S(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return S(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return S(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw R.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",ee(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return S(this,arguments,function*(e,n={},o){if(yield this.preflight(),o==="sticky-messages")throw new Error("Use getPinnedMessages instead");return(yield this.client.post(`/api/v2/conversations/${e}/recommend/${o}`,ee(n),{abortLatest:!0})).map(i=>b(h({},U(i)),{text:i.text||i.url||i.message,source:o,type:o})).filter((i,a,d)=>a===d.findIndex(l=>l.text===i.text))})}isLoggedIn(){return S(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return S(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,ee(n),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))})}syncPersonalCollection(e){return S(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/personal-collection/sync`,{},{version:"v2"})})}getPinnedMessages(e){return S(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return U(n).map(o=>b(h({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return S(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",ee(e),{abortLatest:!0,version:"v2"});return U(n)})}search(e){return S(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,ee(e));return U(n)})}loginWithPassword(e,n){return S(this,null,function*(){yield this.preflight();let o=yield this.client.post("/apis/admin/session/login/",{username:e,password:n},{refreshTokenOn401:!1});return U(o)})}logout(){return S(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/logout/",{},{refreshTokenOn401:!1})})}requestLoginByEmail(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return U(n)})}requestPasswordlessToken(){return S(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return U(e.token)})}getCsrfToken(){return S(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return S(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return U(n)})}evaluateAssistant(e,n){return S(this,null,function*(){var d,l,c;yield this.preflight();let o=new URLSearchParams;n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let s=n!=null&&n.threadId?`/api/v2/assistants/${e}/threads/${n==null?void 0:n.threadId}/evaluate?${o.toString()}`:`/api/v2/assistants/${e}/evaluate?${o.toString()}`,r=g=>ee(g),i=(d=n==null?void 0:n.transcript)==null?void 0:d.map(g=>{var u;return h({source:g.source,text:g.text},(u=g.attachments)!=null&&u.length?{attachments:g.attachments.map(r)}:{})}),a=yield this.client.post(s,h({input:(l=n==null?void 0:n.input)!=null?l:{},conversation:i},(c=n==null?void 0:n.attachments)!=null&&c.length?{attachments:n.attachments.map(r)}:{}));return U(a)})}interactWithAssistant(e){return S(this,null,function*(){yield this.preflight();let n=new URLSearchParams;e.sessionId&&n.append("session_id",e.sessionId),e.externalConversationId&&n.append("external_conversation_id",e.externalConversationId);let o=`/api/v2/assistants/${e.assistantCode}/interact?${n.toString()}`,s=yield this.client.post(o,{message:e.message});return U(s)})}resetAssistantThread(e){return S(this,null,function*(){yield this.preflight();let n=encodeURIComponent(e.assistantCode),o=encodeURIComponent(e.sessionId);yield this.client.delete(`/api/v2/assistants/${n}/sessions/${o}/thread`)})}createAssistantThread(e){return S(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return U(o)})}postMessageToAssistantThread(e){return S(this,null,function*(){yield this.preflight();let{assistantCode:n,threadId:o,message:s}=e,r=yield this.client.post(`/apis/admin/assistants/${n}/threads/${o}/messages/`,{content:s,role:"user"});return U(r)})}translateMessages(e){return S(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",ee(e));return U(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(ua);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&R.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};At.exchangeTokenPromise=null;var it=At;var Ws=class{constructor(e){this.options=e;this.socket=null;this.maxReconnectAttempts=5;this.reconnectInterval=25e3;this.cleanupCallbacks=[];var n,o;this.socket,this.eventListeners=new Map,this.url=e.url,this.maxReconnectAttempts=(n=e.maxReconnectAttempts)!=null?n:this.maxReconnectAttempts,this.reconnectInterval=(o=e.reconnectInterval)!=null?o:this.reconnectInterval,this.shouldReconnect=e.shouldReconnect}connect(){let e=()=>this.cleanup();window.addEventListener("beforeunload",e),this.cleanupCallbacks.push(()=>window.removeEventListener("beforeunload",e)),this.reconnect()}setupListeners(){this.socket&&(this.socket.onmessage=e=>{var n;try{let o=U(JSON.parse(e.data));o.event&&this.eventListeners.has(o.event)&&((n=this.eventListeners.get(o.event))==null||n.forEach(s=>s(o.data)))}catch(o){console.error("Error parsing WebSocket message:",o)}},this.socket.onclose=e=>{console.log("WebSocket connection closed:",e),setTimeout(()=>{this.reconnect()},this.reconnectInterval)},this.socket.onerror=e=>{console.error("WebSocket error:",e)})}reconnect(){var e,n;if(this.maxReconnectAttempts<=0){console.error("Max reconnect attempts reached, closing WebSocket connection."),(e=this.socket)==null||e.close();return}if(!this.shouldReconnect()){console.error("Should not reconnect, closing WebSocket connection."),(n=this.socket)==null||n.close();return}this.socket&&(this.socket.onmessage=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.close()),this.socket=new WebSocket(this.url),this.setupListeners(),this.maxReconnectAttempts--}send(e,n){if(!this.socket){console.error("WebSocket connection is not open.");return}this.socket.send(JSON.stringify({event:e,data:n}))}on(e,n){this.eventListeners.has(e)||this.eventListeners.set(e,[]);let o=this.eventListeners.get(e);o&&!o.includes(n)&&o.push(n)}close(){var e;(e=this.socket)==null||e.close()}cleanup(){this.close(),this.cleanupCallbacks.forEach(e=>e()),this.cleanupCallbacks=[]}};import{combineReducers as Vx,configureStore as jx}from"@reduxjs/toolkit";import{createSlice as Ux}from"@reduxjs/toolkit";var sp={startTime:null,stopTime:null},rp=t=>t.handlingTime,ip=Ux({name:"handlingTime",initialState:sp,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(z,()=>sp)}}),{handlingTimeStart:ap,handlingTimeStop:zs,handlingTimeReset:lp}=ip.actions,dp=ip.reducer;var cp=(t={})=>{let e=h({onAuthError:Dt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var up=(t={})=>{let e,n=!0,o=h({getStyleSuggestions:Tt,debounce:500},t);return s=>r=>i=>{var p;let a=s.getState().input.text,d=r(i),l=s.getState();if(l.auth.isLoggedIn!==!0)return d;let{showStyleSuggestions:c}=l.settings;if(!((p=l.conversation.current)==null?void 0:p.id)||!c)return d;let{text:u}=l.input;return u===a&&!n||(clearTimeout(e),u==="")||(e=setTimeout(()=>{n=!1,s.dispatch(o.getStyleSuggestions({text:u}))},t.debounce)),d}};function Wx(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var pp=(t={})=>{let e=h({getTextSuggestions:xe,getAutocompleteSuggestions:jn,debounce:200,check:Ae},t),n;return o=>s=>r=>{var m;let{input:i}=o.getState(),a=s(r),d=o.getState();if(d.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:l,showTabCompletion:c}=d.settings,g=(m=d.conversation.current)==null?void 0:m.id,u=r.type===ls.toString();if(!g||!l&&!c)return a;let{input:p}=d;return Wx(p,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let y=ct(d);y===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(y))},u?0:e.debounce)),a}};var gp=Tt.fulfilled.toString();function zx(t,e){let n=new Set([...e.keywordMatches.map(s=>s.keyword)]),o=[];return n.forEach(s=>{let r=t.keywordMatches.filter(d=>d.keyword===s),i=e.keywordMatches.filter(d=>d.keyword===s),a=i.length-r.length;a<=0||o.push(...i.slice(0,a))}),o}var mp=t=>e=>n=>o=>{var l;if(o.type!==gp){n(o);return}let s=e.getState().styleSuggestions.list;n(o);let r=e.getState(),i=r.styleSuggestions.list,a=(l=r.conversation)==null?void 0:l.current;if(s===i)return;let d=zx(s,i);o.type===gp&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var qx=Vx({assistants:Rl,auth:Sa,conversation:ka,contentTypes:yd,passwordlessToken:Su,entities:$d,handlingTime:dp,info:Qa,input:Ba,settings:Al,profile:Ed,search:tl,styleSuggestions:Dc,ui:Cc,textSuggestions:ic});function fp(t){return jx({reducer:qx,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(cp()).concat(pp({debounce:200})).concat(up({debounce:500})).concat(mp(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function hp(t,e,n){if(e==="")return null;let o=new RegExp(`\\b${Es(e)}\\b`,"gi"),s,r=null;for(;(s=o.exec(t))!==null&&!(s.index>n);)r={start:s.index,end:s.index+s[0].length};return r}var $x=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},Gx=t=>e=>n=>o=>{var d,l,c,g,u,p;let s=e.getState(),r=ht("inlineSuggestions")(s),i=ht("autoSelectSuggestion")(s)||r;switch(o.type){case Dt.toString():{!o.payload&&t.emit("logout",void 0);break}case po.fulfilled.toString():{t.emit("logout",void 0);break}case Se.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(d=s.conversation.current)==null?void 0:d.id,data:{entities:o.payload}});break;case gt.toString():t.logSendMessage(o.payload);break;case Do.toString():t.emit("call-to-action",{cue:o.payload});break;case ce.fulfilled.toString():if(!o.isBroadcasted){let{externalConversationId:f,currentExternalIdAtRequest:m}=(l=o.payload)!=null?l:{};(!f||!m||f===m)&&t.broadcast(ur,o,!1)}break;case ce.rejected.toString():break;default:break}let a=n(o);switch(o.type){case gt.toString():t.handleAfterSendMessage(o.payload);break;case qn.toString():t.onUpdateShowTabHint(o.payload);break;case zs.toString():t.logHandlingTime();break;case Bt.toString():t.broadcast(ko,o);break;case pt.toString():t.broadcast(ko,o);break;case _o.toString():e.dispatch(pt({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let f=s.assistants.cues.find(m=>m.code===o.meta.arg.data.assistantCode);t.emit("event",b(h({},o.meta.arg),{cue:f}));break}case le.toString():{let{start:f,end:m}=s.input.selection;t.emit("select-suggestion",b(h({type:$x(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:f,end:m}:{start:0,end:m}})),r&&e.dispatch(Ze([]));break}case Oc.toString():{let{keyword:f,suggestion:m,eventMetrics:y}=o.payload,{text:v,selection:x}=s.input,w=hp(v,f,(c=x==null?void 0:x.end)!=null?c:v.length);if(!w)break;t.emit("select-suggestion",{text:m,type:"style",replace:w,suggestion:{text:m,source:"style"},eventMetrics:y});break}case vo.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(g=s.conversation.current)==null?void 0:g.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case Ze.toString():{i&&o.payload.length>0&&e.dispatch(So(0));break}case ce.fulfilled.toString():{let{evaluationId:f,output:m,externalConversationId:y}=o.payload,v=o.meta.arg.assistantCode;if(t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:f,assistantCode:v,assistantOutput:Cl(m),externalConversationId:y,evaluationStatus:"success"}}),!o.meta.arg.skipState){let x=e.getState().assistants.cues;t.emit("cues",x)}break}case ce.rejected.toString():{let f=o.meta.arg.assistantCode,m=(p=o.meta.arg.externalConversationId)!=null?p:(u=e.getState().conversation.current)==null?void 0:u.externalId;t.emit("event",{name:"Assistant evaluation completed",data:{evaluationId:"",assistantCode:f,assistantOutput:"",externalConversationId:m,evaluationStatus:"failed"}});break}default:break}return a},yp=Gx;import{createSelector as Qx}from"@reduxjs/toolkit";function Bi(t){return t.toISOString().replace("T"," ").replace("Z","")}var Xx=(t,e)=>e.version,vp=Qx([Kt,pe,rp,Xx],(t,e,n,o)=>{if(!e)return R.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(R.warn("No startTime and stopTime for handling time metrics"),null):{conversationId:e,clientVersion:o,agentId:t==null?void 0:t.agentId,agentName:t==null?void 0:t.agentName,agentEmail:t==null?void 0:t.agentEmail,timeStart:Bi(s),timeStop:Bi(r)}});function Sp(t,e){let{text:n,metrics:{numPaste:o,pastes:s,textSuggestions:r}}=t.input,i=n.length;return{source:"agent",clientVersion:e.version,pastes:s,lenTextTotal:i,numPastes:o,suggestions:r}}var to=class extends Error{};function Jx(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Vs=class{constructor(){this.queues={}}push(e,n){let o=()=>{let r=this.queues[e][1];r?(this.queues[e]=[r.promise,null],r.resolve()):delete this.queues[e]};if(!this.queues[e]){let r=n().finally(o);return this.queues[e]=[r,null],r}this.queues[e][1]&&this.queues[e][1].reject(new to("Queued async function is outdated"));let s=Jx();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function Ki(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return Ki(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?Ki(s,e):null}function Ui(t,e){return Ki(t,e)}var Zx={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},xp=(t,e)=>{var s,r,i;if(!((i=(r=(s=t.uiConfig)==null?void 0:s.widget)==null?void 0:r.types.find(a=>a.type==="cues"))==null?void 0:i.isActive))return R.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[Zx[e]];if(o&&o.length>0){let a=o.map(d=>d.code);return t.summarizerAssistantNew&&e!=="ended"&&(a=a.filter(d=>d!==t.summarizerAssistantNew)),a}return R.warn(`No assistant set in profile for conversation event "${e}"`),[]};function Yx(t){var e,n,o,s;return(s=(o=(n=(e=t.uiConfig)==null?void 0:e.widget)==null?void 0:n.types)==null?void 0:o.some(r=>r.type==="knowledge-assist"&&r.isActive))!=null?s:!1}function bp(t){var n,o;return((o=(n=t.widgetInteractiveAssistants)==null?void 0:n.length)!=null?o:0)>0&&Yx(t)?!0:!!t.knowledgeAssistantNew||!!t.knowledgeAssistant}function eb(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Wi(t){return eb(t)&&(kt(t)||ws(t))}var wp,Le=new Map,tb=["bottom","height","left","right","top","width"],Cp=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:tb.some(n=>t[n]!==e[n]);function Tp(t){var n,o,s;if(t.ownerDocument===document)return[];let e=(s=(o=(n=t.ownerDocument)==null?void 0:n.defaultView)==null?void 0:o.frameElement)!=null?s:null;return e?[e,...Tp(e)]:[]}function Ep(t,e){return!t||!e?null:b(h({},t),{top:t.top+e.top,left:t.left+e.left})}var js=!1,kp=()=>{js=!0;let t=[];if(Le.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),Le.delete(n);return}let o=n.getBoundingClientRect();Cp(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Ep,e.rect):e.rect;Cp(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),Le.size===0){js=!1;return}wp=window.requestAnimationFrame(kp)};function zi(t,e){let n=Tp(t),o=[],s=n.map((r,i)=>zi(r,a=>{o[i]=a;let d=Le.get(t);if(!d)return;let l=o.reduce(Ep,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),Le.has(t)){let i=Le.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else Le.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!js&&kp()},unobserve(){s.forEach(i=>i.unobserve());let r=Le.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||Le.delete(t),Le.size||(cancelAnimationFrame(wp),js=!1)}}}}var Pp,Me=new Map,Rp=()=>{Me.forEach((t,e)=>{if(!e.isConnected){Me.delete(e);return}let{clientHeight:n,scrollHeight:o}=e,s=o>n;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),Me.size!==0&&(Pp=window.requestAnimationFrame(Rp))};function Ip(t,e){return{observe(){let n=Me.size===0;Me.has(t)?Me.get(t).callbacks.push(e):Me.set(t,{visible:void 0,callbacks:[e]}),n&&Rp()},unobserve(){let n=Me.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Me.delete(t),Me.size||cancelAnimationFrame(Pp)}}}}var Vi=["borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderStyle","boxSizing","color","overflowWrap","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontWeight","fontKerning","lineHeight","letterSpacing","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","textIndent","whiteSpace","wordBreak","wordSpacing","wordWrap"];function ji(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function cn(t){return Number.parseFloat(t)}function qs(t){return Math.round(t*1e6)}function Ap(t){return t/1e6}function qi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=cn(t.width),r=cn(t.borderLeftWidth),i=cn(t.borderRightWidth),a=cn(t.paddingRight),d=Ap(qs(s)-qs(r)-qs(i)),l=Ap(qs(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function $s(t,e={}){var c,g;let n=e.overlayContainer||document.createElement("div");n.style.display="none",n.style.position=(c=e.position)!=null?c:"fixed",n.style.pointerEvents="none",n.style.borderColor="transparent",St(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};ji(o,n,Vi),qi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=Ip(t,()=>{ji(o,n,Vi),qi(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=zi(t,u=>{if(u===null){e.onRemove&&e.onRemove(),n.remove();return}if(!d&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),d=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),d=!1},200),u.height===0&&u.width===0){if(s===!0)return;e.onHide&&e.onHide(),n.style.display="none",s=!0;return}if(ji(o,n,Vi),qi(o,t,n),r(),e.placement==="below"&&n.classList.add("below"),n.style.top=`${u.top}px`,n.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),f=window.getComputedStyle(e.closestScrollElement),m=cn(f.borderTopWidth),y=cn(f.borderBottomWidth),v=p.top+m-u.top,x=u.top+u.height+-(p.top+p.height-y);n.style.clipPath=`inset(${v}px 0px ${x}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(g=t.parentElement)==null||g.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function nb(t){return t.offsetParent!==null}function Lp(t){if(!nb(t))return!1;let e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}function $i(t,e,n=100){let o=Lp(t);e({isVisible:o});let s=setInterval(()=>{let r=Lp(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Mp=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){R.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as K,jsxs as ob}from"react/jsx-runtime";var Np=Mp("showTabHint",!0),un=class un{constructor({deepdeskUrl:e,version:n=un.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:a,websocketClient:d=Ws}){this.inputMediator=null;this.eventListeners={};this.unmountHandlers=[];this.disposeHandlers=[];this.inlineSuggestions=null;this.aboveSuggestions=null;this.belowSuggestions=null;this.floatingMenu=null;this.widgetElement=null;this.widgetRoot=null;this.nicknameDialogUnsubscribe=null;this.nicknameDialogFailed=!1;this.dynamicThunkObject={};this.queues=new Vs;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;this.loadProfileConfigPromiseKey=null;this.personalCollectionSyncPendingKey=null;this.personalCollectionSyncDrainPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new it(l,{token:s,fetch:r}),this.version=n,this.instanceId=un.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[yp({broadcast:(f,m,y)=>{this.broadcastEvents.send(f,m,y)},emit:(f,m)=>this.emit(f,m),handleAfterSendMessage:f=>this.handleAfterSendMessage(f),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:f=>this.logSendMessage(f),onUpdateShowTabHint:f=>Np.update(f),sendEvent:(f,m)=>this.deepdeskApi.sendEvent(f,m)})]};this.store=fp(c),this.broadcastEvents=new tp({debug:!0,deepdeskUrl:l,eventMap:nl(this.store),createCustomChannel:a}),this.disposeHandlers.push(()=>{this.broadcastEvents.cleanup()}),this.ws=new d({url:`${l}/api/v2/me/realtime`.replace("https","wss"),reconnectInterval:25e3,shouldReconnect:()=>S(this,null,function*(){var f;return(f=Y(this.state))!=null?f:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(qn(Np.value())),this.store.dispatch(On({locale:o,adminUrl:l,productName:i}));let g=[],u=f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(kl(f))};this.hasConversation()?m():g.push(m)};this.ws.on("assistants::direct_response",u),this.ws.on("assistants::user_notification",u),this.ws.on("assistants::response_chunk",f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(El(f))};this.hasConversation()?m():g.push(m)}),this.ws.on("assistants::suggest_as_reply",f=>{if(!f.conversationId)return;let m=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Bt([{text:f.payload.message,type:"text",source:"assistant",assistantCode:f.code,sourceLabel:f.name}]))};this.hasConversation()?m():g.push(m)});let p=this.whenConversationLoaded(()=>{var f;this.broadcastEvents.setExternalId((f=this.state.conversation.current)==null?void 0:f.externalId),g.forEach(m=>m()),g.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),g.length=0,p()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=ut(this.state)[this.state.input.selectedSuggestionIndex])!=null?e:null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}externalId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.externalId}shouldAbort(){return this.state.conversation.isSupported===!1?(R.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(R.warn("Profile has not been loaded (yet)"),!0):(R.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(Y(this.state))e();else{let n=this.subscribe(Y,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(Dt(null)),this.store.dispatch(_e()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return S(this,null,function*(){return(yield this.store.dispatch(_e())).payload})}isConversationSupported(e,n){return S(this,null,function*(){return(yield this.store.dispatch(sr({externalId:e,options:n}))).payload})}createConversation(e){return S(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(fo(b(h({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return S(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(ho({externalId:e,options:n}))).payload})}upsertConversation(e){return S(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(rr(b(h({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return S(this,null,function*(){yield this.store.dispatch(ir(e))})}updateConversation(e){return S(this,null,function*(){return(yield this.store.dispatch(yo(e))).payload})}resetConversation(){this.store.dispatch(z()),this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(On(e))}setVisitorInfo(e){this.store.dispatch(ja(e))}setCustomData(e){this.store.dispatch(qa(e))}setAgentInfo(e,n){return S(this,null,function*(){var s;yield this.store.dispatch(Sn(h(h({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(Eo,{showNicknameDialog:!0})})}setAgentSettings(e){return S(this,null,function*(){yield this.store.dispatch(lr(e))})}getAgentSettings(){return S(this,null,function*(){return(yield this.store.dispatch(dr())).payload})}getMe(){return S(this,null,function*(){return this.deepdeskApi.getMe()})}refresh(){return S(this,null,function*(){if(this.shouldAbort())return Promise.resolve();let e=[];return e.push(this.refreshTextSuggestions()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})})}syncInputMediator(){this.inputMediator&&this.store.dispatch(xo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()}))}notifyExternalSuggestion(e){this.store.dispatch(le(e))}evaluateAssistant(e,n){return S(this,null,function*(){var c;let{input:o={},attachments:s=[],transcript:r,showCuesInWidget:i=!0,includeMetadata:a,externalConversationId:d}=n||{},l=yield this.store.dispatch(ce({assistantCode:e,attachments:s,transcript:r,includeMetadata:a,input:o,externalConversationId:d,skipState:!i}));if(l.error)throw new Error(`Assistant evaluation failed: ${(c=l.payload)!=null?c:l.error.message}`);return l.payload.output})}evaluateConversationAssistant(e,n){return S(this,null,function*(){var c,g,p;yield this.loadProfileConfig();let o=this.state.profile.data;if(!o&&((c=this.state.conversation.current)!=null&&c.profileCode)&&(yield this.loadProfileConfig(),o=this.state.profile.data),!o){R.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=xp(o,e),r=(g=n==null?void 0:n.showCuesInWidget)!=null?g:!0,u=n!=null?n:{},{showCuesInWidget:i}=u,a=D(u,["showCuesInWidget"]),d=(p=n==null?void 0:n.externalConversationId)!=null?p:this.hasConversation()?this.externalId():"",l=yield Promise.all(s.map(f=>this.queues.push(f,()=>S(this,null,function*(){var y,v;let m=yield this.store.dispatch(ce(h(b(h({assistantCode:f,includeMetadata:!0},a),{skipState:!r}),n!=null&&n.attachments&&(n==null?void 0:n.attachments.length)>0?{attachments:n==null?void 0:n.attachments}:{})));if(m.error)throw new Error(`Assistant evaluation failed: ${(y=m.payload)!=null?y:m.error.message}`);return{assistantCode:f,evaluationId:m.payload.evaluationId,output:m.payload.output,externalConversationId:(v=m.payload.externalConversationId)!=null?v:d}})).catch(m=>{if(m instanceof to)return R.warn(`Queued assistant "${f}" was outdated and dropped`),null;throw m})));if(!r)return l.filter(f=>f!==null)})}handleKeyDown(e){let{overlayCollapsed:n,openOverlayWhenTyping:o}=this.state.ui,{textSuggestions:s,selectedSuggestionIndex:r,selection:i}=this.state.input,{inlineSuggestions:a,autoSelectSuggestion:d,showTextSuggestions:l,suggestionsPlacement:c}=this.settings,g=a||d,u=c==="inline"||c==="below"?"below":"above",p=s.length>0;if(this.store.dispatch(Ma(ar(e))),!Ae(this.state)||e.key!=="Tab"&&!l)return;let f=()=>{n||!p||i&&(e.shiftKey||(this.store.dispatch(Da()),e.preventDefault()))},m=()=>{n||!p||g&&r<=0||i&&(e.shiftKey||(this.store.dispatch(_a()),e.preventDefault()))};switch(e.key){case"ArrowUp":u==="below"?m():f();break;case"ArrowDown":{u==="below"?f():m();break}case"Escape":{n||(this.store.dispatch(So(-1)),this.store.dispatch(ot({collapse:!0})),this.store.dispatch(xc(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let y=Ht(this.state);if(!y)return;this.store.dispatch(qn(!1)),this.store.dispatch(le({text:y.text,suggestion:y,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(g||this.state.input.selectedSuggestionIndex===-1)return;let y=Ht(this.state);if(!y)return;this.store.dispatch(le({text:y.text,suggestion:y,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(g||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let y=Ht(this.state);if(!y)return;this.store.dispatch(le({text:y.text,suggestion:y,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(ot({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ze([]))}handlingTimeStart(){this.state.handlingTime.startTime||(R.info("Start handling time"),this.store.dispatch(ap()))}handlingTimeStop(){this.state.handlingTime.startTime&&(R.info("Stop handling time"),this.store.dispatch(zs()))}logSendMessage(e){let n=Sp(this.state,{version:this.version});n&&(e&&(Object.assign(n,{text:e}),Object.assign(n,{lenTextTotal:e.length})),this.deepdeskApi.sendEvent("Send Message",{conversationId:this.conversationId(),data:n}),this.emit("send-message-event",n))}logHandlingTime(){let e=vp(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(lp()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(gt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(Ha()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){R.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),R.error(r)}})}on(e,n){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n),()=>{this.off(e,n)}}off(e,n){if(!e&&!n){this.eventListeners={};return}let o;this.eventListeners[e]&&(o=this.eventListeners[e].indexOf(n),o>-1&&this.eventListeners[e].splice(o,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}setPlatformVariables(e){this.store.dispatch($a(e))}whenConversationLoaded(e){let n=()=>this.getConversationLoadedKey(),o=()=>{let r=n();r&&this.loadProfileConfig().then(()=>{if(n()!==r)return;let i=this.state.conversation.current,a=me(this.state);!(i!=null&&i.id)||i.profileCode&&(a==null?void 0:a.code)!==i.profileCode||e()})};return n()&&o(),this.subscribe(r=>this.getConversationProfileKey(r.conversation.current),r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=$s(n,o);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),[r,i]}createInlineContainer(e,n){var a;let o=document.createElement("div");o.style.position="absolute",o.style.top="0px",o.style.left="0px",o.style.height="0px",o.style.width="0px";let s=document.createElement("div");s.style.display="none",s.style.position="absolute",s.style.height="0px",s.style.width="0px",s.style.backgroundColor="red",o.appendChild(s);let r=(a=e.ownerDocument.defaultView)==null?void 0:a.frameElement,i=r?r.ownerDocument.defaultView:null;if(r&&(i===window||(i==null?void 0:i.parent)===window)){let[d,l]=$s(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});d.dataset.testid=n,d.style.zIndex="2",d.appendChild(o),this.unmountHandlers.push(()=>{l()})}else document.body.appendChild(o);return s}createContainer(e,n=document.body){let o=window.getComputedStyle(n),s=document.createElement("div");return St(s),s.dataset.testid=e,s.style.color=o.color,s.style.fontSize=o.fontSize,s.style.fontFamily=o.fontFamily,s.style.fontVariant=o.fontVariant,s.setAttribute("translate","no"),n.appendChild(s),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,n),R.info(`Stored analytics for ${this.conversationId()}`)}catch(e){}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=window.sessionStorage.getItem(e);if(!n)return;let o=JSON.parse(n);o.text.trim()===this.state.input.text.trim()?(R.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Fa(o.metrics))):R.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch(e){}}mount(e,n={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!Wi(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let u=n,{customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i,inputMediator:a}=u,d=D(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),St(e),this.inputMediator=a||(kt(e)?new an(e):new rn(e)),this.inputMediator.on("change",({plainText:p,rawHTML:f,suggestionTextStart:m})=>{this.store.dispatch(xo({text:p,html:f,suggestionTextStart:m}))}),this.inputMediator.on("keyup",p=>{this.store.dispatch(Na(ar(p)))}),this.inputMediator.on("keydown",p=>{this.handleKeyDown(p)}),this.inputMediator.on("paste",({pastedText:p,selectionText:f})=>{this.store.dispatch(Oa({text:p,selectionText:f}))}),this.inputMediator.on("cut",({selectionText:p})=>{this.store.dispatch(La(p))});let c;this.inputMediator.on("selection",p=>{clearTimeout(c),p===null?c=setTimeout(()=>{p!==null&&this.store.dispatch(bo(p))},500):this.store.dispatch(bo(p))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var p;(p=this.inputMediator)==null||p.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(us(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(us(!0))}),this.renderSuggestions(e,l),this.subscribe(ht("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(ht("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let g=this.renderOverlays(n);this.unmountHandlers.push(()=>{g.unmount()}),this.store.dispatch(xo({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()})),this.store.dispatch(bo(this.inputMediator.getSelection())),this.store.dispatch(us(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions(),this.promptForNickname()}),this.isMounted=!0}promptForNickname(e){if(this.nicknameDialogUnsubscribe||this.nicknameDialogFailed)return;let n=this.createContainer("nickname-dialog",document.body);document.body.appendChild(n);let o=at(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(K(Ve,{store:this.store,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Hc,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>S(this,null,function*(){try{yield this.store.dispatch(za({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(Eo,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){R.error("Error setting agent nickname",d),r("error"),this.nicknameDialogFailed=!0}})})})}))};i(),this.nicknameDialogUnsubscribe=()=>{o.unmount(),n.remove(),this.nicknameDialogUnsubscribe=null}}subscribe(e,n){let o=e(this.store.getState());return this.store.subscribe(()=>{let s=e(this.store.getState());s!==o&&(o=s,n(o))})}unmount(){var e,n,o,s,r;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.belowSuggestions)==null||o.unmount(),(s=this.floatingMenu)==null||s.unmount(),this.unmountHandlers.forEach(i=>i()),this.unmountHandlers=[],(r=this.inputMediator)==null||r.dispose(),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r,i;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),(i=this.belowSuggestions)==null||i.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions||this.settings.suggestionsPlacement==="inline"?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.settings.suggestionsPlacement==="below"?this.belowSuggestions=this.renderAboveOrBelowSuggestions(e,n,"below"):this.aboveSuggestions=this.renderAboveOrBelowSuggestions(e,n,"above")}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=at(s);r.render(K(Ve,{store:this.store,customStyles:o,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(_c,{})})}));let i=a=>{a?(s.style.display="block",s.style.top=`${a.top}px`,s.style.left=`${a.left}px`):s.style.display="none"};return this.inputMediator.on("caretposition",i),{unmount:()=>{var a;(a=this.inputMediator)==null||a.off("caretposition",i),r.unmount(),s.remove()}}}renderAboveOrBelowSuggestions(e,n,o){let{customStyles:s,closestScrollSelector:r,appendOverlayTo:i}=n,a=r&&Ui(e,r)||void 0,[d,l]=this.overlayContainerFactory("deepdesk-tab-completion",a||e,{appendTo:i,closestScrollElement:a,mirrorOverflow:!0,onRemove:()=>this.unmount()},s==null?void 0:s.rootNode),[c,g]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),u=at(d);u.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(fu,{inputElement:e})})}));let p=at(c);return p.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Gc,{onLogIn:()=>this.loginViaPopup().catch(f=>R.warn(f.message))})})})),{unmount(){u.unmount(),p.unmount(),l(),g()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&Ui(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=at(d);return c.render(K(Ve,{store:this.store,customStyles:o,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(vc,{onLogIn:()=>this.loginViaPopup().catch(g=>R.warn(g.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=at(o);return s.render(K(Ve,{store:this.store,customStyles:n,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(pc,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&R.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:o,showImages:s,isEmbedded:r,signInViaPopup:i,ssoUrl:a,openAdminFeedback:d}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r,signInViaPopup:i});let l;if(a)try{l={url:new URL(a,this.settings.adminUrl).toString()}}catch(c){R.warn(`Invalid ssoUrl '${a}' passed to renderWidget`)}this.widgetRoot=at(e),this.widgetRoot.render(K(Ve,{store:this.store,customStyles:o,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Yo,{report:c=>this.deepdeskApi.sendEvent(id,{data:c}),children:K(Qu,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,openAdminFeedback:d,onLogIn:()=>this.loginViaPopup(l).catch(c=>R.warn(c.message))})})})}))}unmountWidget(){var e,n;(n=(e=this.widgetRoot)==null?void 0:e.unmount)==null||n.call(e),this.widgetRoot=null,this.widgetElement=null}renderKnowledgeAssistantWidget(e,n,o={}){let{customStyles:s,initialQuestion:r}=o,i=at(n);return i.render(K(Ve,{store:this.store,customStyles:s,children:K(He,{broadcastEvents:this.broadcastEvents,children:K(Oi,{children:ob(Qo,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:Nn,children:[K(gn,{children:K(Jo,{title:o.title,emptyState:o.emptyState})}),K(Ni,{children:K(Xo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=$i(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Zo(e)&&e.message==="Unauthorized"&&this.login()}getConversationProfileKey(e){var n;if(e!=null&&e.id)return`${e.id}:${(n=e.profileCode)!=null?n:""}`}getProfileLoadKey(){var n;let e=this.state.conversation.current;return e!=null&&e.profileCode&&(n=this.getConversationProfileKey(e))!=null?n:null}isCurrentProfileLoadKey(e){return this.getProfileLoadKey()===e}getConversationLoadedKey(){return this.getConversationProfileKey(this.state.conversation.current)}resetProfileDerivedSettings(){this.store.dispatch(Vr()),this.store.dispatch(On(Ar))}syncPersonalCollectionForConversation(e){this.personalCollectionSyncPendingKey=e,this.ensurePersonalCollectionSyncDrain()}ensurePersonalCollectionSyncDrain(){return this.personalCollectionSyncDrainPromise?this.personalCollectionSyncDrainPromise:(this.personalCollectionSyncDrainPromise=this.drainPersonalCollectionSync().finally(()=>{this.personalCollectionSyncDrainPromise=null,this.personalCollectionSyncPendingKey&&this.ensurePersonalCollectionSyncDrain()}),this.personalCollectionSyncDrainPromise)}drainPersonalCollectionSync(){return S(this,null,function*(){for(;this.personalCollectionSyncPendingKey;){let e=this.personalCollectionSyncPendingKey;if(this.personalCollectionSyncPendingKey=null,!this.isCurrentProfileLoadKey(e))continue;let n=this.state.conversation.current,o=n==null?void 0:n.id;if(!(!o||!n.profileCode))try{yield this.deepdeskApi.syncPersonalCollection(o)}catch(s){this.isCurrentProfileLoadKey(e)&&R.warn("Failed to sync personal collection for profile",s)}}})}loadProfileConfig(e=!0){let n=this.getProfileLoadKey();if(!n)return this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.resetProfileDerivedSettings(),Promise.resolve();let o=this.state.conversation.current,s=me(this.state);if(s&&s.code!==(o==null?void 0:o.profileCode)&&(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null,this.resetProfileDerivedSettings()),this.loadProfileConfigPromise&&this.loadProfileConfigPromiseKey===n)return this.loadProfileConfigPromise;this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=n;let r=Promise.resolve().then(()=>S(this,null,function*(){try{yield this.store.dispatch(Fn()).unwrap()}catch(d){if(d===Qt)return this.loadProfileConfigPromise===r&&(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null),e&&this.isCurrentProfileLoadKey(n)&&!me(this.state)?this.loadProfileConfig(!1):void 0;throw d}if(!this.isCurrentProfileLoadKey(n))return;let i=me(this.state),a=this.state.conversation.current;!i||i.code!==(a==null?void 0:a.profileCode)||(this.store.dispatch(On({showSearch:i.search,showImageSearch:i.imageSearch,showEntitiesCommand:i.entitiesCommand,showSummaryCommand:!!i.summarizerAssistantNew,showKnowledgeSearch:bp(i),recommendTextSuggestions:i.recommendTextSuggestions})),this.syncPersonalCollectionForConversation(n))})).finally(()=>{this.loadProfileConfigPromise===r&&(me(this.state)||(this.loadProfileConfigPromise=null,this.loadProfileConfigPromiseKey=null))});return this.loadProfileConfigPromise=r,r}loginViaPopup(e){return S(this,null,function*(){return new Promise((n,o)=>{this.store.dispatch(go());let s=new MessageChannel,r=s.port1,i=this.settings.adminUrl,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let d=!1,l=()=>{c&&!c.closed&&c.close(),window.removeEventListener("message",g),clearInterval(u)};r.onmessage=p=>S(this,null,function*(){var f,m;if((f=p.data)!=null&&f.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((m=p.data)==null?void 0:m.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(bn),d=!0,s.port1.close(),n()}catch(y){console.error(y),o(y)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");if(c===null){o(new Error("Popup blocked by browser"));return}let g=p=>S(this,null,function*(){var f;if(!(p.origin!==a.origin||p.source!==c))switch((f=p.data)==null?void 0:f.type){case"deepdesk-popup-request-origin":{try{let m=JSON.stringify({type:"deepdesk-popup-parent-origin"});c.postMessage(m,a.origin)}catch(m){R.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-loaded":{try{let m=JSON.stringify({type:"deepdesk-popup-create-channel"});c.postMessage(m,a.origin,[s.port2])}catch(m){R.error("Error posting message to popup",m),o(m)}break}case"deepdesk-popup-error":{if(l(),p.data.message==="Platform account url mismatch"){let m="Please contact your administrator: The page that opened the popup is not a trusted origin.";R.warn(m),this.store.dispatch(nr(m)),o(new Error(m));return}if(p.data.message==="Timeout"){let m="Please contact your administrator: Popup timed out. Check if the account's platform.url or account.url is configured correctly.";R.warn(m),this.store.dispatch(nr(m)),o(new Error(m));return}o(new Error(p.data.message));break}}});window.addEventListener("message",g);let u=setInterval(()=>{c&&!c.closed||(l(),d||o(new Error("Popup closed by user")))},200);this.disposeHandlers.push(l)})})}translateMessages(e){return this.deepdeskApi.translateMessages(e)}refreshTextSuggestions(){return S(this,null,function*(){this.isMounted&&(yield this.store.dispatch(ls()))})}refreshWidgetSuggestions(){return S(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=Hn(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(Se());break;case"pinned-messages":case"sticky-messages":break;default:co.includes(o)||this.store.dispatch(xe(o))}})}catch(o){this.handleError(o)}})}};un.version="19.6.2-beta.15",un.count=0;var Gs=un;function sb(t){return S(this,null,function*(){var s,r,i;let n=yield((s=t.fetch)!=null?s:window.fetch)(t.url),o=yield n.blob();return new File([o],t.name,{type:(i=(r=t.mimeType)!=null?r:n.headers.get("Content-Type"))!=null?i:"image/jpeg"})})}function rb(t,e){return S(this,null,function*(){let n=yield sb(e),o=new Event("change",{bubbles:!0,cancelable:!0});try{Object.defineProperty(t,"files",{configurable:!0,get:()=>[n]}),t.dispatchEvent(o)}finally{Object.hasOwn(t,"files")&&delete t.files}})}function ib(t,e,n){return S(this,null,function*(){yield new it(t).authenticateWithKey(e,n)})}function ab(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function lb(o,s){return S(this,arguments,function*(t,e,n={}){var g,u;let{value:r}=t,{start:i,end:a}=(g=n.replace)!=null?g:{start:0,end:r.length},d=`${r.slice(0,i)}${e}${r.slice(a)}`,l=(u=n.selectionAfter)!=null?u:{start:i+e.length,end:i+e.length},c=()=>{if(n.setValue)return n.setValue(d);t.value=d};return Promise.resolve(c()).then(()=>{t.selectionStart=l.start,t.selectionEnd=l.end,t.blur(),t.focus()})})}function db(o,s){return S(this,arguments,function*(t,e,n={}){let r=n.replace?It(t,n.replace.start,n.replace.end):Yn(t),i,a=()=>{if(n.setRange)return n.setRange(r.cloneRange());r.deleteContents(),i=document.createElement("span"),r.insertNode(i),n.insertBRs!==!1?e.split(`
12
+ `).reverse().forEach((d,l)=>{l>0&&r.insertNode(document.createElement("br")),r.insertNode(document.createTextNode(d))}):r.insertNode(document.createTextNode(e))};return Promise.resolve(a()).then(()=>{try{if(n.selectionAfter!==!1){t.focus();let d=n.selectionAfter?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 cb(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 ub(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 Op(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):Op(n,e)}function pb(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?cb(e):ub(e);n?Op(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,eg 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,rb as attachFile,ib as authenticateWithKey,Yn as createFullRange,$s as createOverlayContainer,It as createRangeFromOffsets,Kn as escapeHTML,ab as formatTextMarkup,Hs as getRangeOffsets,Bs as getRangeText,pb as insertCKEditor,ts as isHTML,Wi as isSupportedInputElement,gr as logEvent,db as updateContentEditable,lb as updateTextArea,vt as useClickOutsideRoot,C as useStyles,$i as waitForElementVisibilityChange};